/* ECOYAR curriculum constructor /page/programma.html */
.epl { --g:#00753B; --ink:#1d1d1b; --mut:#5d625f; --cream:#f7f1e3; color:var(--ink); font-size:16px; line-height:1.55; max-width:920px; margin:0 auto 40px; }
.epl h2,.epl h3,.epl h4,.epl h5 { text-transform:none; letter-spacing:0; color:var(--ink); font-weight:800; line-height:1.2; }
.epl h2 { font-size:32px; margin:0 0 12px; }
.epl h3 { font-size:22px; margin:22px 0 10px; }
.epl h4 { font-size:18px; margin:18px 0 8px; }
.epl h5 { font-size:16px; margin:14px 0 6px; }
.epl p { margin:0 0 12px; }
.epl a { color:var(--g); }
.epl ul, .epl ol { margin:0 0 14px; padding-left:1.3em; }
.epl li { margin:0 0 6px; }
.epl-kicker { display:inline-block; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--g); border:1px solid var(--g); border-radius:999px; padding:3px 12px; margin-bottom:12px; }
.epl-hero { background:linear-gradient(135deg,#e7f4ea,#f7f1e3); border-radius:18px; padding:28px 30px; margin:0 0 22px; }
.epl-hero-photo {
  background-image: linear-gradient(100deg, rgba(247,241,227,.94) 0%, rgba(247,241,227,.72) 42%, rgba(247,241,227,.28) 100%),
    url("/phpshop/templates/unit/eco/eco-plan-school-hero.jpg?v=1");
  background-size: cover;
  background-position: 70% 40%;
  min-height: 280px;
}
.epl-hero-cta { display:flex; flex-wrap:wrap; gap:10px; margin:16px 0 0; }
.epl-form,.epl-mail { background:var(--cream); border-radius:16px; padding:20px 22px; margin:0 0 22px; }
.epl-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.epl-form label,.epl-mail-f label { display:grid; gap:4px; font-size:13px; font-weight:600; }
.epl-form input,.epl-form select,.epl-mail-f input,.epl-mail-f textarea { min-height:42px; border:1px solid #cfc8b8; border-radius:10px; padding:8px 10px; font:inherit; }
.epl-mail-f textarea { min-height:72px; resize:vertical; }
.epl-legend { font-weight:700; margin:14px 0 8px; }
.epl-tracks { display:flex; flex-wrap:wrap; gap:8px 16px; margin:0 0 14px; }
.epl-tracks label { font-weight:500; display:flex; align-items:center; gap:6px; }
.epl-btn { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:0 20px; border-radius:10px; border:2px solid var(--g); background:var(--g); color:#fff !important; font-weight:700; cursor:pointer; text-decoration:none !important; font:inherit; }
.epl-btn-o { background:transparent; color:var(--g) !important; }
.epl-hint,.epl-more { font-size:13px; color:var(--mut); }
.epl-tabs { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 14px; align-items:center; }
.epl-tab { min-height:42px; padding:0 16px; border-radius:10px; border:1px solid #cfc8b8; background:#fff; font:inherit; font-weight:700; cursor:pointer; }
.epl-tab.is-on { border-color:var(--g); background:#e7f4ea; color:var(--g); }
.epl-doc { background:#fff; border:1px solid #e4ddd0; border-radius:16px; padding:28px 30px; margin:0 0 22px; }
.epl-doc-full { font-size:15.5px; }
.epl-doc table { width:100%; border-collapse:collapse; table-layout:fixed; font-size:14px; margin:10px 0 18px; }
.epl-doc th,.epl-doc td { border:1px solid #ddd; padding:6px 8px; text-align:left; vertical-align:top; }
.epl-doc th { background:#f3eee4; }
.epl-doc .num { text-align:center; white-space:nowrap; }
.epl-plan col.c-n { width:7%; } .epl-plan col.c-t { width:55%; }
.epl-plan col.c-h, .epl-plan col.c-th, .epl-plan col.c-pr { width:12.6%; }
.epl-eq col.c-p { width:38%; } .epl-eq col.c-q { width:10%; } .epl-eq col.c-n { width:52%; }
.epl-eq-g td { background:#e7dcc5; font-weight:700; }
.epl-stamp { font-size:13px; color:#7a3d00; background:#fff4d6; border:1px solid #e6c56a; border-radius:8px; padding:10px 12px; margin:0 0 16px; }
.epl-cover { border-bottom:2px solid var(--g); padding-bottom:12px; margin-bottom:18px; }
.epl-cover .epl-kicker { margin-bottom:8px; }
.epl-theme { background:#faf8f3; border-radius:10px; padding:12px 14px; margin:0 0 12px; }
.epl-theme p { margin:0 0 8px; }
.epl-theme p:last-child { margin:0; }
.epl-eq-note { background:#e7f4ea; border-radius:10px; padding:12px 14px; }
.epl-umm { background:#faf8f3; border:1px solid #e4ddd0; border-radius:12px; padding:16px 18px; margin:0 0 16px; }
.epl-umm-cta { background:#e7f4ea; border:1px solid #b7d7c2; border-radius:12px; padding:16px 18px; margin:8px 0 0; }
.epl-want { margin:12px 0; }
.epl-want label { display:flex; align-items:flex-start; gap:8px; font-weight:600; }
.epl-agree { font-weight:400 !important; font-size:13px !important; }
.epl-agree input,.epl-want input { min-height:auto; width:auto; display:inline; margin-top:3px; }
.epl-msg { font-size:14px; }
.epl-msg.is-ok { color:var(--g); }
.epl-msg.is-err { color:#a31b1b; }
.epl-toc { columns:2; column-gap:24px; font-size:14px; margin:0 0 16px; }
.epl-toc li { break-inside:avoid; }
.epl-pages { font-size:18px; }
.epl-lock { background:#e7f4ea; border:1px solid #b7d7c2; border-radius:12px; padding:18px 20px; margin:18px 0 0; }
.epl-lock p:last-of-type { margin-bottom:0; }
.epl-doc[hidden] { display:none !important; }
html.epl-page .page-header h1 { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
@media (max-width:700px) {
  .epl-grid { grid-template-columns:1fr; }
  .epl-hero,.epl-doc { padding:18px; }
  .epl-toc { columns:1; }
}
.epl-widget { background: rgba(255,255,255,.08); border: 1px solid rgba(201,154,46,.5); border-radius: 14px; padding: 18px 18px 16px; color: #fff; }
.epl-widget b { display: block; font-size: 18px; font-weight: 800; margin: 0 0 8px; color: #fff; }
.epl-widget p { margin: 0 0 12px; color: rgba(255,255,255,.86); font-size: 14px; }
.epl-widget .epl-w-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0 0 12px; }
.epl-widget label { display: grid; gap: 3px; font-size: 12px; font-weight: 600; color: rgba(255,255,255,.9); }
.epl-widget select { min-height: 38px; border: 1px solid rgba(255,255,255,.25); border-radius: 8px; padding: 6px 8px; font: inherit; background: #fff; color: #1d1d1b; }
.epl-widget .epl-btn { background: #c99a2e; border-color: #c99a2e; color: #1d1d1b !important; width: 100%; }
.epl-widget-page {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 28px;
  align-items: center;
  background: linear-gradient(135deg, #e7f4ea 0%, #f7f1e3 100%);
  border: 1px solid rgba(0,117,59,.16);
  box-shadow: 0 10px 28px rgba(29,29,27,.08);
  color: #1d1d1b;
  padding: 28px 30px;
  margin: 0 0 56px;
}
.epl-widget-page .epl-kicker { margin-bottom: 10px; }
.epl-widget-page b { color: #1d1d1b; font-size: 28px; line-height: 1.15; margin: 0 0 12px; }
.epl-widget-page p { color: #5d625f; font-size: 15.5px; margin: 0 0 14px; }
.epl-widget-page label { color: #1d1d1b; }
.epl-widget-page select { border-color: #cfc8b8; }
.epl-widget-page .epl-btn { background: #00753B; border-color: #00753B; color: #fff !important; }
.epl-widget-page .epl-btn:hover { background: #005c2e; border-color: #005c2e; }
.epl-w-points { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.epl-w-points li { position: relative; padding-left: 22px; font-size: 14px; color: #1d1d1b; }
.epl-w-points li:before { content: ""; position: absolute; left: 0; top: .45em; width: 12px; height: 8px; border-left: 3px solid #00753B; border-bottom: 3px solid #00753B; transform: rotate(-45deg); }
@media (max-width: 700px) {
  .epl-widget .epl-w-grid { grid-template-columns: 1fr; }
  .epl-widget-page { grid-template-columns: 1fr; padding: 20px 18px; gap: 18px; margin-bottom: 36px; }
  .epl-widget-page b { font-size: 22px; }
}
@media print {
  html.epl-page header, html.epl-page nav, html.epl-page footer, html.epl-page .bar, html.epl-page .ecc-btn,
  html.epl-page .epl-form, html.epl-page .epl-mail, html.epl-page .epl-more, html.epl-page .epl-tabs { display:none !important; }
  .epl-doc { border:0; padding:0; }
  .epl-doc[hidden] { display:none !important; }
}
