/* ExploraTory — foaia de stil comuna. Generata in dist/ de tools/build.py */
:root{
  --cream:#FAF8F2; --paper:#fff;
  --olive:#5C6B2A; --olive-l:#EEF2E3; --forest:#2D4A1A; --forest-l:#E8EDE0;
  --gold:#F5A623; --ink:#2D3A1E; --muted:#6B7A58;
  --r:16px; --sh:0 4px 20px rgba(45,58,30,.08); --sh2:0 10px 40px rgba(45,58,30,.16);
  --lv-samanta:#5C8C3C; --lv-mugur:#4A7A2A; --lv-floare:#C44878;
  --lv-stea:#8B5CC8;   --lv-soare:#E09A00;  --lv-curcubeu:#2A7AAA;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;
     scrollbar-gutter:stable;overflow-y:scroll}
body{font-family:'Nunito',system-ui,sans-serif;background:var(--cream);color:var(--ink);
     line-height:1.65;overflow-x:hidden;text-size-adjust:100%;-webkit-text-size-adjust:100%}
h1,h2,h3,h4{font-family:'Baloo 2',system-ui,sans-serif;line-height:1.15;font-weight:800}
/* ---------- scara tipografica (un singur loc) ---------- */
h1{font-size:30px}
h2{font-size:25px}
h3{font-size:18px}
h4{font-size:16px}
.lead{font-size:16.5px;line-height:1.75}
.det,.sub-mic{font-size:14.5px}
@media(min-width:820px){
  h1{font-size:36px}
  h2{font-size:28px}
  h3{font-size:19px}
  .lead{font-size:17.5px}
}
/* imaginea cu Tory: aceeasi dimensiune peste tot */
.sec-head img,.parent-head>img,.hero-en img{width:230px;max-width:56vw;margin:0 auto}

img{display:block;max-width:100%;height:auto}
button,input,select,textarea{font:inherit;color:inherit}
a{color:var(--olive)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* ---------- antet ---------- */
header{position:sticky;top:0;z-index:200;background:var(--paper);border-bottom:2px solid var(--olive-l)}
.hdr{max-width:1120px;margin:0 auto;display:flex;align-items:center;gap:12px;
     justify-content:space-between;height:66px;padding:0 20px}
.hdr .logo{height:48px;width:auto}
nav{display:flex;align-items:center;gap:2px;flex-wrap:wrap;justify-content:flex-end}
nav a{font-family:'Baloo 2',sans-serif;font-weight:700;font-size:14px;text-decoration:none;
      color:var(--muted);padding:7px 12px;border-radius:30px}
nav a:hover{background:var(--olive-l);color:var(--olive)}
nav a.kid{background:var(--gold);color:#4A3000;display:inline-flex;align-items:center;gap:7px}
.navico{height:22px;width:auto}
nav a.kid:hover{background:#e09000;color:#fff}
nav a.kid:hover{background:#e09000;color:#fff}

/* ---------- eroul ---------- */
.hero{background:var(--paper);padding:40px 20px 32px;text-align:center}
.hero img{width:100%;max-width:760px;margin:0 auto}
.hero .btn img{height:22px;width:auto}
.hero p{margin:18px auto 0;max-width:52ch;color:var(--muted);font-size:17px}
.cta-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:26px}
.btn{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:16px;text-decoration:none;
     padding:14px 26px;border-radius:50px;border:none;cursor:pointer;display:inline-flex;
     align-items:center;gap:9px;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-2px);box-shadow:var(--sh2)}
.btn-primary{background:var(--gold);color:#4A3000;font-size:19px;padding:17px 34px}
.btn-ghost{background:var(--paper);color:var(--forest);border:2px solid var(--olive-l)}

/* ---------- sectiuni ---------- */
.sec{padding:56px 20px}
.sec-alt{background:var(--paper)}
.wrap{max-width:1120px;margin:0 auto}
.sec-head{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-bottom:28px}

.sec-head h2{color:var(--forest)}
.sec-head .lead{color:var(--muted);max-width:56ch;margin-top:6px}

/* ---------- carduri de nivel ---------- */
.levels,.levels-grid,.plevels{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:660px){.levels,.levels-grid,.plevels{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.levels,.levels-grid,.plevels{grid-template-columns:repeat(3,1fr)}}
.lv{background:var(--paper);border-radius:var(--r);box-shadow:var(--sh);overflow:hidden;
    display:flex;flex-direction:column;border-top:5px solid var(--c)}
.lv-top{display:flex;align-items:center;gap:14px;padding:18px 18px 10px}
.lv-top img{width:64px;height:64px;object-fit:contain;flex-shrink:0}
.lv-name{font-family:'Baloo 2',sans-serif;font-size:22px;font-weight:800;color:var(--c)}
.lv-age{font-size:13px;color:var(--muted);font-weight:700}
.lv-body{padding:0 18px 12px;flex:1}
.lv-body p{font-size:14px;color:var(--muted)}
.tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}
.tag{font-family:'Baloo 2',sans-serif;font-size:11px;font-weight:700;padding:3px 10px;
     border-radius:20px;background:var(--cp);color:var(--c)}
.lv-foot{padding:14px 18px;border-top:1px solid #F0EFE9;display:flex;flex-direction:column;gap:8px}
.lv-foot a{font-family:'Baloo 2',sans-serif;font-weight:700;font-size:14px;text-decoration:none;
  padding:10px;border-radius:30px;text-align:center;display:block}
.lv-read{background:var(--c);color:#fff}
.lv-pdf{background:var(--paper);color:var(--c);border:2px solid var(--c)}
.count{font-size:12px;color:var(--muted);font-weight:700}

/* ---------- despre / misiune / contact ---------- */
.about{display:flex;gap:40px;flex-wrap:wrap;align-items:flex-start}
.about img{width:200px;max-width:44vw;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center top;
           border-radius:20px;border:4px solid #fff;box-shadow:var(--sh2)}
.about-txt{flex:1;min-width:280px}
.about-txt h2{color:var(--olive);margin-bottom:14px}
.about-txt p{font-size:15px;color:var(--muted);margin-bottom:12px;max-width:66ch}
blockquote{background:var(--paper);border-left:4px solid var(--olive);padding:14px 18px;
  margin:18px 0;font-style:italic;color:var(--olive);font-weight:700;border-radius:0 var(--r) var(--r) 0}
.mission{background:var(--forest);color:#fff;border-radius:var(--r);padding:26px;margin-top:24px}
.mission h3{margin-bottom:10px}
.mission p{color:rgba(255,255,255,.92);font-size:15px;max-width:66ch}
.mission p+p{margin-top:10px}
.mission a{color:var(--gold);text-decoration:underline;text-underline-offset:3px;
           font-weight:700}
.mission a:hover{color:#fff}
.badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.badge{background:var(--paper);border-radius:30px;padding:6px 14px;font-family:'Baloo 2',sans-serif;
  font-weight:700;font-size:13px;color:var(--forest);box-shadow:var(--sh)}
.form{max-width:620px;margin:0 auto;background:var(--cream);border-radius:20px;padding:28px;box-shadow:var(--sh)}
.fg{margin-bottom:16px}
.fg label{display:block;font-family:'Baloo 2',sans-serif;font-weight:700;font-size:14px;
  color:var(--forest);margin-bottom:5px}
.fg input,.fg textarea,.fg select{width:100%;padding:11px 14px;border:2px solid var(--olive-l);
  border-radius:10px;font-family:inherit;font-size:15px;background:#fff}
.fg input:focus,.fg textarea:focus,.fg select:focus{border-color:var(--olive);outline:none}
.fg textarea{min-height:110px;resize:vertical}

/* ---------- subsol ---------- */
footer{background:var(--ink);color:rgba(255,255,255,.72);padding:44px 20px 22px;margin-top:20px}
.ft{max-width:1120px;margin:0 auto;display:flex;flex-wrap:wrap;gap:36px;justify-content:space-between}
.ft h4{font-size:14px;color:#fff;margin-bottom:8px}
.ft a{display:block;font-size:14px;color:rgba(255,255,255,.55);text-decoration:none;margin-bottom:4px}
.ft a:hover{color:var(--gold)}
.ft-bot{max-width:1120px;margin:22px auto 0;border-top:1px solid rgba(255,255,255,.12);
  padding-top:16px;font-size:13px;opacity:.45}

@media(max-width:760px){
  .hdr{height:auto;padding:8px 12px;flex-wrap:wrap;gap:8px}
  .hdr .logo{height:38px}
  nav{width:100%;justify-content:center;gap:4px;flex-wrap:wrap;row-gap:6px}
  nav a{font-size:13px;padding:7px 11px;white-space:nowrap}
  .hero{padding:22px 14px}
  .hero p{font-size:15.5px}
  .btn-primary{font-size:17px;padding:15px 26px}
  .sec{padding:38px 16px}
  
  .about img{width:150px;height:190px}
}

/* rand de alegere — acelasi vizual ca meniul din Lumea lui Tory */
.choices{display:flex;flex-direction:column;gap:13px;max-width:560px;margin:0 auto}
@media(min-width:900px){
  .choices{flex-direction:row;align-items:stretch;max-width:1120px;gap:18px}
  .choices .choice{flex:1;flex-direction:column;align-items:flex-start;text-align:left;
                   padding:22px 22px 20px}
  .choices .choice .ico{font-size:44px;width:auto;margin-bottom:6px}
  .choices .choice .choice-img{width:88px;margin-bottom:4px}
  .choices .choice .choice-txt{flex:1}
  .choices .choice .go{align-self:flex-end;margin-top:10px}
}
.choice{display:flex;align-items:center;gap:15px;background:var(--paper);border-radius:22px;
        padding:17px 18px;box-shadow:var(--sh);text-align:left;border-left:7px solid var(--sc);
        text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}
.choice:hover{transform:translateY(-2px);box-shadow:var(--sh2)}
.choice .ico{font-size:36px;line-height:1;flex-shrink:0;width:46px;text-align:center}
.choice-img{width:64px;height:auto;flex-shrink:0}
.choice-txt{flex:1;min-width:0}
.choice h3{font-family:'Baloo 2',sans-serif;color:var(--sc);font-weight:800}
.choice p{font-size:13.5px;color:var(--muted);margin-top:2px}
.choice .go{font-size:22px;color:var(--sc);flex-shrink:0}

/* antetul paginii pentru parinti */
.parent-head{display:flex;gap:28px;align-items:flex-start;flex-wrap:wrap}
.parent-head>img{flex-shrink:0}
.parent-head>div{flex:1;min-width:280px}
@media(max-width:760px){
  .parent-head{gap:14px}

}

/* carduri de nivel — acelasi vizual ca pe pagina Metoda olandeza */
.plevel{background:var(--paper);border-radius:var(--r);padding:22px 24px;box-shadow:var(--sh);
        display:flex;gap:18px;align-items:flex-start;border-left:5px solid var(--c)}
@media(min-width:660px){.plevel{flex-direction:column;gap:12px}}
.plevel>img{width:56px;height:56px;object-fit:contain;flex-shrink:0}
.plevel-body{flex:1;min-width:0}
.plevel-body h3{font-family:'Baloo 2',sans-serif;font-weight:800;
                color:var(--c);margin-bottom:2px}
.plevel-age{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;
            margin-bottom:9px;color:var(--muted)}
.plevel-body>p{font-size:14.5px;color:var(--muted);line-height:1.7;max-width:64ch}
.plevel-body .det{font-size:14px;color:var(--muted);line-height:1.7;margin-top:8px}
.plevel-body .det strong{color:var(--ink)}
.plevel-acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.plevel-acts a{font-family:'Baloo 2',sans-serif;font-weight:700;font-size:14px;
               text-decoration:none;padding:10px 18px;border-radius:30px}
.plevel-acts .go1{background:var(--c);color:#fff}
.plevel-acts .go2{background:var(--paper);color:var(--c);box-shadow:inset 0 0 0 2px var(--c)}
@media(max-width:600px){.plevel{padding:18px;gap:14px}.plevel>img{width:46px;height:46px}}

/* sectiunea „Inspirat din metoda olandeza AVI" — carduri care se intorc */
.avi-grid{margin-bottom:30px;display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px;
          max-width:1000px;margin:0 auto}
.avi-card{background:none;border:none;padding:0;cursor:pointer;text-align:left;
          perspective:1200px;font:inherit;color:inherit}
.avi-inner{display:grid;transform-style:preserve-3d;transition:transform .55s ease;
           height:100%}
.avi-card.on .avi-inner{transform:rotateY(180deg)}
.avi-face{grid-area:1/1;-webkit-backface-visibility:hidden;backface-visibility:hidden;
          border-radius:var(--r);padding:20px 22px 18px;display:flex;flex-direction:column;
          gap:7px;border-left:5px solid var(--olive);background:var(--paper);
          box-shadow:var(--sh)}
.avi-back{transform:rotateY(180deg);background:var(--forest);border-left-color:var(--gold)}
.avi-h{font-family:'Baloo 2',sans-serif;font-weight:800;font-size:18px;color:var(--olive)}
.avi-back .avi-h{color:var(--gold)}
.avi-p{font-size:14.5px;color:var(--muted);line-height:1.7}
.avi-back .avi-p{color:rgba(255,255,255,.92)}
.avi-p strong{color:var(--ink)}
.avi-back .avi-p strong{color:#fff}
.avi-hint{margin-top:auto;padding-top:10px;font-family:'Baloo 2',sans-serif;font-weight:700;
          font-size:12px;color:var(--olive);opacity:.65}
.avi-back .avi-hint{color:var(--gold);opacity:.8}
.avi-card:hover .avi-hint{opacity:1}
@media (prefers-reduced-motion:reduce){
  .avi-inner{transition:none}
}

/* ghidul practic de pe pagina parintilor.
   Aceleasi carduri ca pe pagina Metoda olandeza (fata cardurilor care se
   intorc), doar ca nu se intorc: alb, colt rotunjit, bara verde in stanga. */
.ghid{display:grid;grid-template-columns:1fr;gap:16px;margin:30px 0 6px}
@media(min-width:900px){.ghid{grid-template-columns:repeat(2,1fr)}}
/* Aceleasi carduri ca pe pagina Metoda olandeza (fata cardurilor care se
   intorc), doar ca nu se intorc. Imaginea sta deasupra, centrata, iar textul
   incepe de la aceeasi margine in toate cele patru cutii. */
.ghid-card{display:flex;flex-direction:column;
           background:var(--paper);border-radius:var(--r);box-shadow:var(--sh);
           border-left:5px solid var(--olive);padding:20px 22px 18px}
.ghid-card h3{font-family:'Baloo 2',sans-serif;font-weight:800;color:var(--olive);
              margin-bottom:10px}
.ghid-card p{font-size:14.5px;color:var(--muted);line-height:1.7;margin-bottom:10px}
.ghid-card strong{color:var(--ink)}
.zece{background:var(--cream);border-radius:14px;padding:14px 16px;margin:12px 0}
.zece>div{display:grid;grid-template-columns:56px 1fr;gap:4px 12px;padding:9px 0;
          border-bottom:1px solid rgba(0,0,0,.06)}
.zece>div:last-child{border-bottom:none}
.zece b{font-family:'Baloo 2',sans-serif;font-size:15px;color:var(--olive);grid-row:span 2}
.zece span{font-family:'Baloo 2',sans-serif;font-weight:700;font-size:14.5px;color:var(--ink)}
.zece em{font-style:normal;font-size:13px;color:var(--muted);line-height:1.6}
