/*
Theme Name: Monka Stories
Theme URI: https://monkastory.sk
Author: Peter
Description: Atlas príbehov pre vnútorné dieťa — MonKaStory. Mapy príbehov, systém 1–5, materiály na stiahnutie s prípravou na registráciu a predaj.
Version: 2.0
License: GNU General Public License v2 or later
Text Domain: monka
*/
:root{
  --paper:#FAF6EF;--ink:#251D2E;--ink-soft:#574C63;
  --hmla:#8BA7C4;--vietor:#C96B3A;--vtacik:#7A9E6B;--tulko:#5B7DB1;--svetielko:#c9a820;
  --r:18px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Nunito',sans-serif;background:var(--paper);color:var(--ink);line-height:1.65}
h1,h2,h3,h4{font-family:'Fraunces',serif}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.btn{display:inline-block;border:none;cursor:pointer;font-family:'Nunito',sans-serif;font-weight:800;font-size:.95rem;padding:12px 24px;border-radius:999px;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(37,29,46,.2)}
.btn-dark{background:var(--ink);color:var(--paper)}
.btn-ghost{background:transparent;color:var(--ink);border:2px solid var(--ink)}
.btn-accent{background:var(--tulko);color:#fff}

nav.site-nav{position:sticky;top:0;z-index:50;background:rgba(250,246,239,.93);backdrop-filter:blur(8px);border-bottom:1px solid rgba(37,29,46,.08)}
.nav-i{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:14px 24px}
.logo{font-family:'Fraunces',serif;font-weight:500;font-size:1.3rem;display:flex;align-items:center;gap:10px;font-style:italic}
.forest-dots{display:flex;gap:4px}
.forest-dots span{width:8px;height:8px;border-radius:50%;display:block}
.nav-links{display:flex;gap:24px;list-style:none;align-items:center}
.nav-links a{font-weight:700;font-size:.9rem;color:var(--ink-soft);transition:color .2s}
.nav-links a:hover{color:var(--ink)}
@media(max-width:760px){.nav-links li.hm{display:none}}

/* ===== ROZBAĽOVACIE MENU ATLAS ===== */
.has-drop{position:relative}
.has-drop>a{cursor:pointer}
.drop{position:absolute;top:calc(100% + 16px);left:50%;transform:translateX(-50%) translateY(8px);background:#fff;border-radius:16px;box-shadow:0 18px 50px rgba(37,29,46,.18);padding:14px;width:520px;max-width:90vw;opacity:0;visibility:hidden;transition:opacity .2s,transform .2s;display:grid;grid-template-columns:1fr 1fr;gap:4px;z-index:60}
.has-drop:hover .drop,.has-drop:focus-within .drop{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.drop::before{content:"";position:absolute;top:-7px;left:50%;transform:translateX(-50%) rotate(45deg);width:14px;height:14px;background:#fff}
.drop-head{grid-column:1/-1;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);padding:8px 10px 4px}
.drop a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;text-decoration:none;color:var(--ink);font-weight:700;font-size:.9rem;transition:background .15s}
.drop a:hover{background:var(--paper)}
.drop .dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.drop-soon{display:flex;align-items:center;gap:10px;padding:9px 10px;color:var(--ink-soft);opacity:.6;font-weight:600;font-size:.9rem}
.drop-soon .tag{margin-left:auto;font-size:.68rem;background:rgba(37,29,46,.08);padding:2px 8px;border-radius:999px}
@media(max-width:760px){.drop{grid-template-columns:1fr;width:280px}}

/* ===== DOLNÁ NAVIGÁCIA MÁP ===== */
.map-pager{max-width:900px;margin:20px auto 0;padding:30px 24px 0;border-top:1px solid rgba(37,29,46,.1);display:flex;align-items:stretch;justify-content:space-between;gap:14px}
.map-pager a{text-decoration:none;transition:transform .15s}
.pager-side{display:flex;flex-direction:column;gap:2px;padding:12px 18px;border-radius:12px;background:#fff;box-shadow:0 3px 12px rgba(37,29,46,.06);flex:1;max-width:38%}
.pager-side:hover{transform:translateY(-2px)}
.pager-side.next{text-align:right;align-items:flex-end}
.pager-dir{font-size:.74rem;font-weight:800;color:var(--tulko);text-transform:uppercase;letter-spacing:.05em}
.pager-name{font-family:'Fraunces',serif;font-style:italic;font-size:1.05rem;color:var(--ink)}
.pager-all{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:999px;background:var(--ink);color:var(--paper);font-weight:800;font-size:.9rem;white-space:nowrap;align-self:center}
.pager-all:hover{transform:translateY(-2px)}
.pager-all-ico{font-size:1.1rem}
@media(max-width:640px){
  .map-pager{flex-wrap:wrap}
  .pager-all{order:-1;width:100%}
  .pager-side{max-width:none}
}

.hero{max-width:1100px;margin:0 auto;padding:80px 24px 60px;display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:center}
@media(max-width:840px){.hero{grid-template-columns:1fr;padding-top:50px}}
.eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:18px}
.hero h1{font-size:clamp(2.3rem,5vw,3.8rem);font-weight:300;line-height:1.1;margin-bottom:10px}
.hero h1 em{font-style:italic;font-weight:300}
.hero h1 strong{font-weight:700}
.hero-sub{font-size:1.1rem;color:var(--ink-soft);max-width:48ch;margin:18px 0 30px;line-height:1.7}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap}
.hero-award{display:inline-flex;align-items:center;gap:8px;margin-top:20px;background:rgba(91,125,177,.1);border:1px solid rgba(91,125,177,.25);border-radius:999px;padding:7px 16px;font-size:.82rem;font-weight:700;color:var(--tulko)}
.forest-art{position:relative;height:360px;display:flex;align-items:flex-end;justify-content:center}
.tree{position:relative;display:flex;flex-direction:column;align-items:center}
.tree-trunk{width:12px;border-radius:4px;background:rgba(37,29,46,.15)}
.tree-crown{border-radius:50% 50% 40% 40%;margin-bottom:-4px;transition:transform .3s}
.tree:hover .tree-crown{transform:scale(1.05) translateY(-4px)}
@media(max-width:840px){.forest-art{height:240px}}
.forest-line{height:3px;background:linear-gradient(to right,var(--hmla),var(--vietor),var(--vtacik),var(--tulko),var(--svetielko))}

section.blk{padding:72px 24px}
.wrap{max-width:1100px;margin:0 auto}
.wrap-narrow{max-width:900px;margin:0 auto;padding:0 24px}
.sec-head{margin-bottom:44px}
.sec-head h2{font-size:clamp(1.8rem,3.2vw,2.5rem);font-weight:300;margin-bottom:12px;font-style:italic}
.sec-head h2 strong{font-weight:700;font-style:normal}
.sec-head p{color:var(--ink-soft);max-width:58ch;font-size:1.05rem}

/* ===== ATLAS GRID ===== */
.atlas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px}
.atlas-card{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:0 4px 14px rgba(37,29,46,.07);transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}
.atlas-card.ready{cursor:pointer}
.atlas-card.ready:hover{transform:translateY(-6px);box-shadow:0 16px 36px rgba(37,29,46,.14)}
.atlas-card.soon{opacity:.72}
.atlas-cover{position:relative;aspect-ratio:3/4;background:linear-gradient(155deg,var(--hmla),var(--tulko));overflow:hidden}
.atlas-cover img{width:100%;height:100%;object-fit:cover}
.atlas-cover-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;opacity:.6}
.atlas-badge{position:absolute;top:12px;left:12px;font-size:.7rem;font-weight:800;letter-spacing:.08em;padding:5px 12px;border-radius:999px;color:#fff}
.atlas-badge.kniha{background:var(--vtacik)}
.atlas-badge.pracuje{background:rgba(37,29,46,.55)}
.atlas-body{padding:18px 20px 22px}
.atlas-body h3{font-size:1.2rem;font-weight:600;font-style:italic;margin-bottom:4px}
.atlas-body p{font-size:.88rem;color:var(--ink-soft);margin-bottom:10px}
.atlas-cta{font-size:.85rem;font-weight:800;color:var(--tulko)}

/* ===== KROKY 1–5 ===== */
.kroky-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px}
.krok{background:var(--paper);border-radius:14px;padding:24px 20px;position:relative}
.krok-num{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--tulko);color:#fff;font-weight:800;font-family:'Fraunces',serif;margin-bottom:12px}
.krok h4{font-size:1.1rem;font-weight:600;margin-bottom:6px}
.krok p{font-size:.88rem;color:var(--ink-soft)}

/* ===== O AUTORKE / NEWSLETTER ===== */
.about-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:56px;align-items:start}
@media(max-width:840px){.about-grid{grid-template-columns:1fr}}
.portrait{aspect-ratio:3/4;border-radius:var(--r);background:linear-gradient(155deg,var(--hmla),var(--tulko));display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Fraunces',serif;font-style:italic;overflow:hidden}
.portrait img{width:100%;height:100%;object-fit:cover}
.about-text h2{font-size:clamp(1.7rem,3vw,2.3rem);font-weight:300;font-style:italic;margin-bottom:16px}
.about-text p{color:var(--ink-soft);margin-bottom:14px;max-width:52ch}
.about-text .sig{font-family:'Fraunces',serif;font-style:italic;font-size:1.4rem;margin-top:8px;color:var(--tulko)}
.fpu-badge{display:inline-flex;align-items:center;gap:8px;margin-top:20px;border:1px solid rgba(37,29,46,.18);border-radius:10px;padding:10px 16px;font-size:.82rem;font-weight:700;color:var(--ink-soft)}
.nl-box{max-width:600px;margin:0 auto;text-align:center}
.nl-box h2{font-size:clamp(1.6rem,2.8vw,2.2rem);font-weight:300;font-style:italic;margin-bottom:10px}
.nl-box p{color:var(--ink-soft);margin-bottom:26px}
.nl-form{display:flex;gap:10px;justify-content:center}
.nl-form input{flex:1;max-width:300px;padding:12px 18px;border-radius:999px;border:2px solid rgba(37,29,46,.15);font-family:'Nunito',sans-serif;font-size:.98rem}
@media(max-width:520px){.nl-form{flex-direction:column;align-items:center}}

/* ===== STRÁNKA MAPY ===== */
.mapa-single{padding-bottom:70px}
.back-link{padding-top:26px}
.back-link a{font-weight:800;color:var(--tulko)}
.mat-hero{max-width:1100px;margin:0 auto;padding:40px 24px 20px;text-align:center}
.mat-hero h1{font-size:clamp(2rem,4vw,3rem);font-weight:300;font-style:italic;margin-bottom:12px}
.mat-hero h1 strong{font-weight:700;font-style:normal}
.mapa-podnadpis{color:var(--ink-soft);max-width:60ch;margin:0 auto;font-size:1.1rem;font-style:italic}
.free-badge{display:inline-block;background:rgba(122,158,107,.15);color:var(--vtacik);border-radius:999px;padding:6px 18px;font-size:.85rem;font-weight:800;margin-bottom:18px}
.mapa-cover-wrap{max-width:420px;margin:26px auto 10px;padding:0 24px}
.mapa-cover-img{width:100%;border-radius:var(--r);box-shadow:0 18px 44px rgba(37,29,46,.2)}
.mapa-intro{max-width:760px;margin:24px auto;padding:0 24px;color:var(--ink-soft);font-size:1.05rem;line-height:1.75}
.mapa-intro p{margin-bottom:14px}
.mapa-single .forest-line{margin:30px 0}

.mat-section{max-width:900px;margin:0 auto;padding:30px 24px}
.mat-section h2{font-size:1.5rem;font-weight:700;margin-bottom:16px}
.mat-subgroup{font-size:1.05rem;font-weight:700;color:var(--tulko);margin:18px 0 10px;font-family:'Nunito',sans-serif}
.dl-list{display:flex;flex-direction:column;gap:10px}
.dl-card{display:flex;align-items:center;gap:16px;background:#fff;border-radius:14px;padding:16px 20px;box-shadow:0 3px 12px rgba(37,29,46,.06);transition:transform .15s,box-shadow .15s}
.dl-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(37,29,46,.1)}
.dl-card .ico{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0;color:#fff;background:var(--tulko);overflow:hidden}
.dl-card .ico-img{padding:0}
.dl-card .ico-img img{width:100%;height:100%;object-fit:cover;border-radius:12px}
.dl-card .info{flex:1;min-width:0}
.dl-card .info b{display:block;font-size:1rem}
.dl-card .info span{font-size:.86rem;color:var(--ink-soft)}
.dl-card .info span p{margin:0}
.dl-card .info span img{margin:8px 0;border-radius:8px;max-width:260px}
.dl-card .dl-btn{background:var(--tulko);color:#fff;border-radius:999px;padding:9px 20px;font-size:.85rem;font-weight:800;flex-shrink:0;white-space:nowrap}
.dl-card .dl-btn:hover{opacity:.88}
.dl-card .dl-btn.lock{background:rgba(37,29,46,.5)}
.dl-card.soon{opacity:.65}
.dl-card .soon-tag{background:rgba(201,167,32,.15);color:#8a7315;border-radius:999px;padding:9px 20px;font-size:.85rem;font-weight:800;flex-shrink:0;white-space:nowrap}
@media(max-width:600px){.dl-card{flex-wrap:wrap}.dl-card .dl-btn,.dl-card .soon-tag{width:100%;text-align:center}}

.page-content{max-width:800px;margin:0 auto;padding:60px 24px}
.page-content h1{font-weight:300;font-style:italic;font-size:2.2rem;margin-bottom:20px}

footer.site-footer{background:var(--ink);color:rgba(250,246,239,.6);padding:36px 24px;font-size:.87rem}
.foot-i{max-width:1100px;margin:0 auto;display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px}
footer.site-footer a{color:rgba(250,246,239,.9);font-weight:700}

/* ===== TERAKOTA — ŽIVÁ AKCENTOVÁ FARBA ===== */
:root{--terra:#C96B3A;--terra-dark:#a04f28}
a:hover,.nav-links a:hover{color:var(--terra)}
.btn-accent{background:var(--terra);color:#fff !important}
.btn-accent:hover{background:var(--terra-dark);color:#fff !important}
.btn-dark{color:#fff !important}
.btn-dark:hover{background:var(--terra);color:#fff !important}
input:focus,textarea:focus,select:focus{outline:none !important;border-color:var(--terra) !important;box-shadow:0 0 0 3px rgba(201,107,58,.18) !important}
.pager-all:hover{background:var(--terra)}
.pager-dir{color:var(--terra)}
.drop a:hover{background:rgba(201,107,58,.08)}
.atlas-cta{color:var(--terra)}
.back-link a{color:var(--terra)}

/* ===== BRÁNY (5 vstupov) ===== */
.gates{max-width:900px;margin:26px auto 0;padding:0 24px;display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
@media(max-width:760px){.gates{grid-template-columns:repeat(3,1fr)}}
@media(max-width:500px){.gates{grid-template-columns:repeat(2,1fr)}}
.gate{background:#fff;border-radius:14px;padding:18px 10px 14px;text-align:center;box-shadow:0 4px 14px rgba(37,29,46,.07);border:3px solid transparent;transition:transform .18s,border-color .18s;display:block}
.gate:hover{transform:translateY(-4px);border-color:var(--terra)}
.gate-ico{width:44px;height:44px;border-radius:50%;margin:0 auto 8px;display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Fraunces',serif;font-weight:700;font-size:1.15rem;background:var(--gcolor)}
.gate b{font-family:'Fraunces',serif;font-size:.98rem;display:block;color:var(--ink)}
.gate-sub{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft)}

/* ===== PUTOVANIE (zvislá cesta) ===== */
.journey{max-width:820px;margin:0 auto;padding:36px 24px 10px;position:relative}
.journey::before{content:"";position:absolute;left:47px;top:60px;bottom:60px;width:3px;background:linear-gradient(to bottom,#8BA7C4,#C96B3A,#7A9E6B,#5B7DB1,#c9a820);opacity:.35}
@media(max-width:560px){.journey::before{left:41px}}
.pilier{position:relative;padding-left:76px;margin-bottom:34px;scroll-margin-top:90px}
@media(max-width:560px){.pilier{padding-left:62px}}
.pilier-dot{position:absolute;left:24px;top:8px;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Fraunces',serif;font-weight:700;font-size:1.2rem;background:var(--pcolor);box-shadow:0 6px 16px rgba(37,29,46,.2);z-index:2}
@media(max-width:560px){.pilier-dot{left:18px;width:42px;height:42px}}
.pilier-card{background:#fff;border-radius:16px;padding:24px 26px;box-shadow:0 4px 16px rgba(37,29,46,.07);border-top:4px solid var(--pcolor);transition:box-shadow .2s}
.pilier:target .pilier-card{box-shadow:0 0 0 3px var(--terra),0 10px 30px rgba(37,29,46,.14)}
.pilier-sub{font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--pcolor)}
.pilier-head h2{font-size:1.5rem;font-weight:700;margin:2px 0 12px}
.pilier-content{color:var(--ink-soft)}
.pilier-content p{margin-bottom:12px}
.pilier-content em{font-family:'Fraunces',serif;color:var(--ink)}
.pilier-content img{border-radius:12px;margin:10px 0}
.pilier-content audio,.pilier-content video{width:100%;margin:10px 0;border-radius:10px}
.pilier-empty{color:rgba(37,29,46,.35);font-style:italic;font-size:.92rem}
.pilier .dl-list{margin-top:14px}

/* ===== ROZKLIKÁVAČKY (natívne Accordion / Details bloky) ===== */
.pilier-content details,.mapa-intro details,
.pilier-content .wp-block-accordion-item,.mapa-intro .wp-block-accordion-item{
  background:var(--paper);border:1px solid rgba(37,29,46,.1);border-radius:12px;margin:10px 0;overflow:hidden}
.pilier-content summary,.mapa-intro summary{cursor:pointer;padding:13px 16px;font-weight:800;list-style:none;transition:background .15s,color .15s}
.pilier-content summary:hover,.mapa-intro summary:hover{background:rgba(201,107,58,.08);color:var(--terra)}
.pilier-content summary::-webkit-details-marker,.mapa-intro summary::-webkit-details-marker{display:none}
.pilier-content summary::before,.mapa-intro summary::before{content:"› ";color:var(--terra);font-weight:800}
.pilier-content details[open]>summary::before,.mapa-intro details[open]>summary::before{content:"⌄ "}
.pilier-content details>*:not(summary),.mapa-intro details>*:not(summary){padding:0 16px}
.pilier-content details>*:last-child,.mapa-intro details>*:last-child{padding-bottom:14px}
.wp-block-accordion-heading button{font-family:'Nunito',sans-serif;font-weight:800;color:var(--ink)}
.wp-block-accordion-heading button:hover{color:var(--terra)}

/* ===== VYKROČ ĎALEJ CTA ===== */
.stopa-cta{background:var(--ink);color:#fff;border-radius:20px;max-width:820px;margin:20px auto 0;padding:44px 34px;text-align:center;position:relative;overflow:hidden}
.stopa-cta::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%, rgba(201,107,58,.22), transparent 55%)}
.stopa-cta>*{position:relative}
.stopa-cta h2{font-weight:300;font-style:italic;font-size:1.7rem;margin-bottom:8px;color:#fff}
.stopa-cta h2 strong{font-weight:700;font-style:normal}
.stopa-cta p{color:rgba(255,255,255,.75);max-width:48ch;margin:0 auto 20px}
.cta-form-wrap{max-width:460px;margin:0 auto}
.cta-form-wrap input[type=text],.cta-form-wrap input[type=email]{width:100%;padding:13px 18px;border-radius:999px;border:none;font-family:'Nunito',sans-serif;font-size:.95rem;margin-bottom:10px}
.cta-form-wrap button[type=submit]{background:var(--terra) !important;color:#fff !important;border:none;border-radius:999px;padding:13px 30px;font-weight:800;font-size:.95rem;cursor:pointer;transition:transform .15s}
.cta-form-wrap button[type=submit]:hover{transform:translateY(-2px);background:var(--terra-dark) !important;color:#fff !important}
.cta-note{font-size:.78rem;color:rgba(255,255,255,.5);margin-top:12px}
.footer-verse{max-width:820px;margin:36px auto 20px;padding:0 24px;text-align:center;font-family:'Fraunces',serif;font-style:italic;color:var(--ink-soft)}

/* ===== MINIATÚRKY MÁP V MENU ===== */
.drop-thumb{width:34px;height:34px;border-radius:8px;overflow:hidden;flex-shrink:0;display:block}
.drop-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.drop a,.drop-soon{align-items:center}
.drop a:hover .drop-thumb{outline:2px solid var(--terra)}

/* ===== WPForms v bloku Vykroč ďalej (tmavé pozadie) ===== */
.cta-form-wrap .wpforms-container{margin:0 !important}
.cta-form-wrap .wpforms-field{padding:6px 0 !important}
.cta-form-wrap .wpforms-field-label{display:none !important}
.cta-form-wrap input[type=text],
.cta-form-wrap input[type=email]{
  width:100% !important;padding:13px 18px !important;border-radius:999px !important;
  border:2px solid transparent !important;font-family:'Nunito',sans-serif !important;
  font-size:.95rem !important;background:#fff !important;color:var(--ink) !important;
}
.cta-form-wrap input[type=text]:focus,
.cta-form-wrap input[type=email]:focus{
  outline:none !important;border-color:var(--terra) !important;
  box-shadow:0 0 0 3px rgba(201,107,58,.3) !important;
}
.cta-form-wrap input::placeholder{color:var(--ink-soft)}
.cta-form-wrap .wpforms-submit,
.cta-form-wrap button[type=submit]{
  background:var(--terra) !important;color:#fff !important;border:none !important;
  border-radius:999px !important;padding:13px 32px !important;font-weight:800 !important;
  font-size:.95rem !important;cursor:pointer;transition:transform .15s,background .15s;
  font-family:'Nunito',sans-serif !important;margin-top:6px;
}
.cta-form-wrap .wpforms-submit:hover{background:var(--terra-dark) !important;color:#fff !important;transform:translateY(-2px)}
.cta-form-wrap .wpforms-confirmation-container-full{
  background:rgba(232,200,74,.15) !important;border:1px solid rgba(232,200,74,.4) !important;
  color:#E8C84A !important;border-radius:12px !important;font-weight:700;
}
.cta-form-wrap .wpforms-error{color:#ffb3a0 !important;font-size:.8rem !important}

/* ===== DROPDOWN — 2 STĹPCE (Hotové | Pripravujeme) ===== */
.drop.drop-2col{display:flex;gap:18px;width:560px;grid-template-columns:none}
.drop-col{flex:1.15;display:flex;flex-direction:column;gap:2px}
.drop-col-soon{flex:1;border-left:1px solid rgba(37,29,46,.1);padding-left:16px}
.drop-col .drop-head{padding:6px 10px 6px}
.drop-col-soon .drop-soon{padding:6px 10px;font-size:.85rem;opacity:.65}
.drop-col-soon .drop-soon .dot{width:8px;height:8px}
@media(max-width:760px){
  .drop.drop-2col{flex-direction:column;width:300px}
  .drop-col-soon{border-left:none;border-top:1px solid rgba(37,29,46,.1);padding-left:0;padding-top:10px}
}

/* ===== MEGAMENU ŠTÝL (širší panel, položky s popiskom) ===== */
.drop.drop-2col{width:640px;padding:22px 24px;gap:26px}
.drop-col .drop-head{font-family:'Fraunces',serif;font-style:italic;font-size:.95rem;font-weight:600;letter-spacing:0;text-transform:none;color:var(--terra);border-bottom:1px solid rgba(37,29,46,.08);padding:0 10px 8px;margin-bottom:6px}
.drop-txt{display:flex;flex-direction:column;line-height:1.35;min-width:0}
.drop-txt b{font-weight:800;font-size:.92rem}
.drop-txt small{font-size:.76rem;color:var(--ink-soft);font-weight:600}
.drop.drop-2col a{padding:9px 10px;align-items:center}
.drop-thumb{width:38px;height:38px}
.drop-col-soon .soon-note{font-size:.74rem;color:var(--ink-soft);opacity:.7;padding:8px 10px 0;font-style:italic}
@media(max-width:760px){.drop.drop-2col{width:320px;padding:16px}}

/* ===== FIX: mostík cez medzeru medzi odkazom a menu (menu nevypadáva) ===== */
.has-drop::after{content:"";position:absolute;left:-30px;right:-30px;top:100%;height:20px}
.drop::after{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}
/* jemné oneskorenie zatvárania — odpustí krátke vybočenie myši */
.has-drop .drop{transition:opacity .18s ease .12s,transform .18s ease .12s,visibility 0s linear .3s}
.has-drop:hover .drop,.has-drop:focus-within .drop{transition:opacity .18s ease,transform .18s ease,visibility 0s}

/* ===== PIESKOVÁ ATMOSFÉRA MAPY (podľa ilustrácií Malej cesty) ===== */
:root{--gold:#B99253;--gold-soft:rgba(185,146,83,.32);--gold-line:#C9A860;--sand1:#F8F2E6;--sand2:#F3EBDA;--sand-card:#FCF7EC}
.mapa-single{background:linear-gradient(180deg,var(--sand1),var(--sand2))}
.mapa-single .forest-line{background:linear-gradient(90deg,transparent,var(--gold-line),transparent);height:2px;opacity:.75}

/* úvodná ilustrácia = štart cesty */
.mapa-single .mapa-intro{max-width:960px}
.mapa-single .mapa-intro img{border-radius:18px;box-shadow:0 16px 46px rgba(120,90,40,.18);margin:0 auto 18px;display:block}
.mapa-single .mapa-intro p{max-width:680px;margin-left:auto;margin-right:auto;text-align:center}

/* brány = aktívne tlačidlá v štýle ilustrácie */
.gates .gate{background:var(--sand-card);border:1px solid var(--gold-soft);box-shadow:0 3px 10px rgba(120,90,40,.08)}
.gates .gate b{letter-spacing:.04em}
.gates .gate .gate-sub{color:#A08147}
.gates .gate:hover{border-color:var(--gold);box-shadow:0 10px 26px rgba(150,110,50,.24),0 0 0 1px var(--gold);transform:translateY(-4px)}
.gates .gate:hover b{color:#8a6b33}

/* putovanie = zlatá niť */
.mapa-single .journey::before{background:linear-gradient(to bottom,#E2CC97,var(--gold),#E2CC97);opacity:.65;width:2px}
.mapa-single .pilier-card{background:rgba(253,249,240,.78);border:1px solid rgba(185,146,83,.22);border-top:4px solid var(--pcolor);box-shadow:0 4px 16px rgba(120,90,40,.08)}
.mapa-single .pilier-content img{box-shadow:0 10px 30px rgba(120,90,40,.15)}
.mapa-single .dl-card{background:var(--sand-card)}
.mapa-single .pilier-content details,.mapa-single .mapa-intro details{background:var(--sand-card);border-color:rgba(185,146,83,.25)}

/* ===== ZBALITEĽNÉ PILIERE ===== */
.pilier-head{cursor:pointer;position:relative;padding-right:34px;user-select:none}
.pilier-head::after{content:"›";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--gold,#B99253);font-weight:700;transition:transform .25s}
.pilier.open .pilier-head::after{transform:translateY(-50%) rotate(90deg)}
.pilier-head:hover::after{color:var(--terra)}
.pilier-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
.pilier-body-in{overflow:hidden}
.pilier.open .pilier-body{grid-template-rows:1fr}
.pilier-head h2{margin-bottom:0}
.pilier.open .pilier-head h2{margin-bottom:12px}

/* ===== BRÁNY V ŠTÝLE ILUSTRÁCIE (zlatý pergamen, žiadne farby) ===== */
.gates.gates-art{max-width:1000px;gap:10px;margin-top:-6px}
.gates-art .gate{background:transparent;border:none;box-shadow:none;padding:10px 8px 14px;display:flex;flex-direction:column;align-items:center;gap:7px}
.gates-art .gate b{font-family:'Fraunces',serif;font-weight:600;font-size:1.02rem;color:#7a5f2e;letter-spacing:.02em}
.gates-art .gate-desc{font-size:.78rem;color:#8b7a5c;line-height:1.45;text-align:center;max-width:20ch;font-weight:600}
.gates-art .gate-pill{margin-top:auto;display:inline-block;background:linear-gradient(180deg,#FDFAF2,#F4ECDA);border:1px solid rgba(185,146,83,.55);border-radius:999px;padding:8px 20px;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#7a5f2e;box-shadow:0 2px 6px rgba(120,90,40,.12),inset 0 1px 0 #fff;transition:.18s}
.gates-art .gate:hover{transform:translateY(-3px);border:none;box-shadow:none}
.gates-art .gate:hover .gate-pill{border-color:var(--gold);box-shadow:0 6px 18px rgba(150,110,50,.3),0 0 0 1px var(--gold),inset 0 1px 0 #fff;color:#5c4620;background:linear-gradient(180deg,#FFFDF6,#F1E6CC)}
.gates-art .gate:hover b{color:#5c4620}
.gates-caption{max-width:880px;margin:16px auto 0;padding:0 24px;text-align:center;font-family:'Fraunces',serif;font-style:italic;color:#8b7a5c;font-size:.95rem}
@media(max-width:760px){.gates.gates-art{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.gates.gates-art{grid-template-columns:1fr 1fr}.gates-art .gate-desc{display:none}}

/* zlatá jednota pilierov na mape (emócie ostávajú v Atlase) */
.mapa-single .pilier-dot{background:linear-gradient(160deg,#D9BE85,#B99253) !important;color:#fff;box-shadow:0 6px 16px rgba(150,110,50,.3)}
.mapa-single .pilier-card{border-top-color:rgba(185,146,83,.55)}
.mapa-single .pilier-sub{color:#a08147}

/* ===== ÚVODNÁ ILUSTRÁCIA DOSADNE NA BRÁNY (bez bielej karty) ===== */
.mapa-single .mapa-intro{
  max-width:1000px;margin:0 auto;padding:0 24px;background:none;border:none;box-shadow:none
}
.mapa-single .mapa-intro img{
  border-radius:16px 16px 0 0;   /* dole rovné — napojí sa na brány */
  box-shadow:0 -2px 0 rgba(185,146,83,.15);
  margin:0 auto;display:block;width:100%;
  -webkit-mask-image:linear-gradient(to bottom,#000 82%,transparent 100%);
          mask-image:linear-gradient(to bottom,#000 82%,transparent 100%);
}
/* brány tesne pod obrázok, spoločné pieskové lôžko */
.mapa-single .gates.gates-art{
  margin-top:-26px;position:relative;z-index:2;
  padding-top:6px;
}
/* jemné pieskové lôžko pod obrázkom + bránami, nech pôsobia ako jeden celok */
.intro-gates-bed{
  background:linear-gradient(180deg,#F3EAD7,#F6EFE0);
  border-radius:0 0 18px 18px;
  max-width:1000px;margin:0 auto;
  box-shadow:0 10px 30px rgba(150,110,50,.10);
}

/* ===== HAMBURGER (mobil) ===== */
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;order:3}
.nav-toggle span{width:24px;height:2px;background:var(--ink);border-radius:2px;transition:.25s}
.nav-toggle.on span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.on span:nth-child(2){opacity:0}
.nav-toggle.on span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:760px){
  .nav-toggle{display:flex}
  .nav-links{position:absolute;top:100%;left:0;right:0;background:var(--paper);flex-direction:column;align-items:stretch;gap:0;padding:0;max-height:0;overflow:hidden;transition:max-height .3s ease;box-shadow:0 12px 30px rgba(37,29,46,.12);border-top:1px solid rgba(37,29,46,.08)}
  .nav-links.open{max-height:80vh;overflow:auto}
  .nav-links>li{border-bottom:1px solid rgba(37,29,46,.06)}
  .nav-links>li.hm{display:block}
  .nav-links>li>a{display:block;padding:15px 24px}
  .nav-links .btn{margin:14px 24px;text-align:center}
  /* dropdown máp v hamburgeri: zobraz ako zoznam, nie hover panel */
  .has-drop .drop{position:static;transform:none;opacity:1;visibility:visible;box-shadow:none;width:auto;display:block;padding:0 24px 12px;background:transparent}
  .has-drop .drop::before{display:none}
  .drop.drop-2col{flex-direction:column;width:auto;gap:8px}
  .drop-col-soon{border-left:none;padding-left:0}
}

/* ===== STRÁNKA VYKROČ ĎALEJ ===== */
.vykroc-page{background:linear-gradient(180deg,#F8F2E6,#F3EBDA);min-height:70vh;padding-bottom:60px}
.vykroc-hero{max-width:760px;margin:0 auto;padding:52px 24px 10px;text-align:center}
.vykroc-badge{display:inline-block;background:rgba(201,168,32,.16);color:#8a7315;border-radius:999px;padding:6px 18px;font-size:.8rem;font-weight:800;margin-bottom:16px;text-transform:uppercase;letter-spacing:.08em}
.vykroc-hero h1{font-size:clamp(2.2rem,5vw,3.2rem);font-weight:300;font-style:italic;margin-bottom:14px}
.vykroc-lead{color:var(--ink-soft);font-size:1.12rem;max-width:52ch;margin:0 auto}
.vykroc-lead strong{color:var(--ink);font-style:italic;font-family:'Fraunces',serif}
.vykroc-page .forest-line{background:linear-gradient(90deg,transparent,var(--gold-line),transparent);height:2px;opacity:.75;margin:30px 0}
.vykroc-body{max-width:900px;margin:0 auto;padding:0 24px}
.vykroc-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:40px}
@media(max-width:700px){.vykroc-cols{grid-template-columns:1fr}}
.vcard{background:rgba(253,249,240,.8);border:1px solid rgba(185,146,83,.25);border-radius:16px;padding:26px 22px;text-align:center;box-shadow:0 4px 16px rgba(120,90,40,.07)}
.vcard .vico{font-size:2rem;display:block;margin-bottom:12px}
.vcard h3{font-size:1.15rem;font-weight:600;margin-bottom:8px;color:#7a5f2e}
.vcard p{font-size:.92rem;color:var(--ink-soft)}
.vykroc-back{text-align:center;margin-top:30px}
.vykroc-back a{font-weight:800;color:var(--terra)}

/* ===== HERO S MAPOU-PORTÁLOM ===== */
.hero-atlas{max-width:1100px;margin:0 auto;padding:56px 24px 30px;text-align:center}
.hero-atlas-in{max-width:720px;margin:0 auto 30px}
.hero-atlas .eyebrow{margin-bottom:14px}
.hero-atlas h1{font-size:clamp(2.1rem,4.6vw,3.2rem);font-weight:300;font-style:italic;line-height:1.12;margin-bottom:14px}
.hero-atlas .hero-sub{color:var(--ink-soft);font-size:1.08rem;max-width:56ch;margin:0 auto}
.map-portal{display:block;position:relative;max-width:1000px;margin:0 auto;border-radius:18px;overflow:hidden;cursor:pointer;box-shadow:0 14px 44px rgba(120,90,40,.16);transition:transform .25s,box-shadow .25s;background:linear-gradient(180deg,#F3EAD7,#F6EFE0)}
.map-portal img{width:100%;display:block;transition:filter .3s,transform .4s}
.map-portal-ph{aspect-ratio:3/2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;font-size:2rem;color:var(--ink-soft)}
.map-portal-ph span{font-size:.9rem;font-weight:600}
.map-portal-cta{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);background:linear-gradient(180deg,#FDFAF2,#F1E6CC);border:1px solid var(--gold,#B99253);color:#7a5f2e;font-weight:800;letter-spacing:.1em;font-size:.82rem;padding:12px 28px;border-radius:999px;box-shadow:0 6px 18px rgba(150,110,50,.25),inset 0 1px 0 #fff;transition:.2s;white-space:nowrap}
.map-portal:hover{transform:translateY(-4px);box-shadow:0 22px 60px rgba(120,90,40,.24)}
.map-portal:hover img{filter:brightness(1.04) saturate(1.05);transform:scale(1.015)}
.map-portal:hover .map-portal-cta{background:linear-gradient(180deg,#FFFDF6,#EBD9B0);box-shadow:0 10px 26px rgba(150,110,50,.35),0 0 0 1px var(--gold),inset 0 1px 0 #fff;color:#5c4620}

/* ===== O ATLASE (text + audio) ===== */
#o-atlase{background:linear-gradient(180deg,#F8F2E6,#F6EFE0)}
.oatlase-audio{text-align:center;margin:0 auto 26px;max-width:520px;background:#fff;border:1px solid rgba(185,146,83,.25);border-radius:16px;padding:20px 24px;box-shadow:0 4px 16px rgba(120,90,40,.07)}
.audio-label{font-weight:800;color:#7a5f2e;margin-bottom:12px;font-size:.95rem}
.oatlase-audio audio{width:100%}
.oatlase-text{color:var(--ink-soft);font-size:1.06rem;line-height:1.8}
.oatlase-text p{margin-bottom:14px}
.oatlase-text em{font-family:'Fraunces',serif;color:var(--ink)}

/* fotka autorky */
.portrait img{width:100%;height:100%;object-fit:cover;display:block}

/* ===== FPU badge len na Mape smútku ===== */
.fpu-mapa{max-width:760px;margin:24px auto 0;padding:14px 24px;text-align:center;font-size:.9rem;font-weight:700;color:#7a5f2e;background:rgba(185,146,83,.1);border:1px solid rgba(185,146,83,.3);border-radius:12px}

/* ===== Tlačidlo "Vyber si mapu" v sekcii O atlase ===== */
.oatlase-cta{text-align:center;margin-top:30px}
.btn-vyber{display:inline-block;background:var(--ink);color:#fff !important;font-weight:800;font-size:.98rem;letter-spacing:.03em;padding:15px 38px;border-radius:999px;text-decoration:none;box-shadow:0 6px 20px rgba(37,29,46,.18);transition:transform .18s,background .18s,box-shadow .18s}
.btn-vyber:hover{background:var(--terra,#C96B3A);color:#fff !important;transform:translateY(-3px);box-shadow:0 12px 30px rgba(201,107,58,.32)}

/* ===== Pre koho blok ===== */
.prekoho-blk{background:linear-gradient(180deg,#F6EFE0,#F3EBDA)}
.prekoho-blk h2{font-family:'Fraunces',serif;font-weight:300;font-style:italic;font-size:clamp(1.6rem,2.8vw,2.2rem);margin-bottom:16px}
.prekoho-text{color:var(--ink-soft);font-size:1.12rem;line-height:1.75;max-width:56ch;margin:0 auto}
.prekoho-text strong{color:var(--ink)}

/* ===== Rezervovanie miesta pre obrázky (layout neskáče pri načítaní) ===== */
.mapa-cover-wrap{min-height:1px}
.mapa-cover-img{aspect-ratio:3/4;object-fit:cover;background:linear-gradient(180deg,#F3EAD7,#F6EFE0)}
.atlas-cover{aspect-ratio:3/4}
.map-portal img{aspect-ratio:3/2;object-fit:cover}
.mapa-single .mapa-intro img,.pilier-content img{background:linear-gradient(180deg,#F3EAD7,#F6EFE0)}

/* ===== PREPÍNAČ JAZYKOV SK | PL ===== */
.lang-switch ul{list-style:none;display:flex;gap:0;margin:0;padding:0;align-items:center}
.lang-switch li{margin:0}
.lang-switch a{display:inline-block;padding:6px 10px;font-weight:800;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);text-decoration:none;border-radius:8px;transition:.15s}
.lang-switch a:hover{color:var(--terra)}
.lang-switch .current-lang a,.lang-switch .current_lang a{color:var(--terra);background:rgba(201,107,58,.1)}
.lang-switch li+li{border-left:1px solid rgba(37,29,46,.15)}
@media(max-width:760px){
  .lang-switch{border-top:1px solid rgba(37,29,46,.06);padding:8px 24px}
  .lang-switch ul{gap:8px}
}
