/* Slēptuve 1942 — shared design system
   Display: Bevan (wood type slab). UI: Oswald. Body: Barlow. Accents: Special Elite. */

:root{
  --paper:#efe8d7;
  --paper-2:#e5dbc4;
  --paper-3:#f7f2e6;
  --ink:#1a1712;
  --ink-2:#4a4237;
  --ink-3:#6d6455;
  --olive:#4e5340;
  --olive-d:#232619;
  --night:#14150f;
  --night-2:#1d1f16;
  --yellow:#f5df1b;
  --yellow-d:#d8c30a;
  --blood:#8e2b1e;
  --rule:rgba(26,23,18,.2);
  --rule-2:rgba(239,232,215,.2);
  --maxw:1220px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--paper);
  color:var(--ink);
  font-family:'Barlow',system-ui,sans-serif;
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{display:block;max-width:100%}
a{color:inherit}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 26px}
.wrap-n{max-width:1500px;margin:0 auto;padding:0 26px}

/* paper grain */
.paper{position:relative;background:var(--paper)}
.paper::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.055;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='170' height='170'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='3'/%3E%3C/filter%3E%3Crect width='170' height='170' filter='url(%23n)'/%3E%3C/svg%3E");
}
.paper > *{position:relative;z-index:1}

/* ---------- type ---------- */
.disp,h1,h2,h3.disp{
  font-family:'Bevan',Georgia,serif;
  font-weight:400;
  text-transform:uppercase;
  line-height:1.06;
  letter-spacing:.005em;
}
h1{font-size:clamp(34px,5.6vw,72px)}
h2{font-size:clamp(26px,3.8vw,48px)}
.ui{font-family:'Oswald',Impact,sans-serif;text-transform:uppercase;letter-spacing:.1em;font-weight:500}
.type{font-family:'Special Elite',monospace}
.eyebrow{
  font-family:'Oswald',sans-serif;font-weight:500;font-size:12px;
  letter-spacing:.34em;text-transform:uppercase;color:var(--blood);
}
.lede{font-size:19.5px;color:var(--ink-2)}

/* ---------- buttons ---------- */
.btn{
  display:inline-block;text-decoration:none;
  font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;
  letter-spacing:.11em;font-size:15px;padding:15px 30px;
  border:2px solid var(--ink);transition:.16s;cursor:pointer;
}
.btn-y{background:var(--yellow);border-color:var(--ink);color:var(--ink)}
.btn-y:hover{background:var(--ink);color:var(--yellow)}
.btn-o{background:transparent;color:var(--ink)}
.btn-o:hover{background:var(--ink);color:var(--paper)}
.btn-lt{border-color:var(--paper);color:var(--paper)}
.btn-lt:hover{background:var(--paper);color:var(--ink)}
.btn-sm{padding:11px 20px;font-size:13px;border-width:2px}

/* ---------- section furniture ---------- */
.sec{padding:86px 0}
.sec-dark{background:var(--night);color:var(--paper)}
.sec-olive{background:var(--olive-d);color:var(--paper)}
.sec-head{text-align:center;margin-bottom:52px}
.sec-head .eyebrow{display:block;margin-bottom:14px}
.sec-dark .eyebrow,.sec-olive .eyebrow{color:var(--yellow)}
.sec-head h2{display:inline-block;position:relative;padding:0 6px}
.sec-head p{max-width:64ch;margin:18px auto 0;color:var(--ink-2)}
.sec-dark .sec-head p,.sec-olive .sec-head p{color:rgba(239,232,215,.72)}
.dbl-rule{height:0;border-top:3px solid var(--ink);border-bottom:1px solid var(--ink);width:74px;margin:18px auto 0}
.sec-dark .dbl-rule,.sec-olive .dbl-rule{border-color:var(--yellow)}

/* stamp */
.stamp{
  display:inline-block;border:3px solid var(--blood);color:var(--blood);
  font-family:'Oswald',sans-serif;font-weight:600;font-size:14px;
  letter-spacing:.2em;text-transform:uppercase;padding:7px 14px;
  transform:rotate(-8deg);opacity:.9;
}

/* tape */
.tape{
  position:absolute;width:112px;height:26px;background:rgba(199,178,124,.62);
  border:1px solid rgba(26,23,18,.18);
}

/* ---------- header ---------- */
.hdr{position:sticky;top:0;z-index:90;background:var(--night);color:var(--paper);border-bottom:3px solid var(--yellow)}
.hdr-in{display:flex;align-items:center;gap:26px;height:74px}
.logo{font-family:'Bevan',serif;font-size:22px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;text-decoration:none}
.logo b{color:var(--yellow);font-weight:400}
.nav{margin-left:auto;display:flex;gap:24px;font-family:'Oswald',sans-serif;font-weight:500;font-size:13.5px;letter-spacing:.14em;text-transform:uppercase}
.nav a{text-decoration:none;padding:5px 0;border-bottom:2px solid transparent;color:rgba(239,232,215,.88)}
.nav a:hover{border-color:var(--yellow);color:#fff}
.hdr-call{text-align:right;line-height:1.2;text-decoration:none}
.hdr-call span{display:block;font-family:'Oswald',sans-serif;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:rgba(239,232,215,.6)}
.hdr-call b{font-family:'Bevan',serif;font-size:19px;color:var(--yellow);font-weight:400;letter-spacing:.02em}
.burger{display:none;margin-left:auto;background:none;border:2px solid var(--paper);color:var(--paper);padding:8px 12px;font-family:'Oswald';letter-spacing:.18em;font-size:12px;cursor:pointer}

/* ---------- yellow ticker ---------- */
.band{background:var(--yellow);color:var(--ink);overflow:hidden;border-bottom:3px solid var(--ink)}
.band-in{display:flex;gap:44px;white-space:nowrap;padding:11px 0;animation:band 38s linear infinite;
  font-family:'Oswald',sans-serif;font-weight:500;font-size:12.5px;letter-spacing:.22em;text-transform:uppercase}
@keyframes band{to{transform:translateX(-50%)}}

/* ---------- cards / grids ---------- */
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:30px}

.feat{text-align:center}
.feat .ic{width:46px;height:46px;margin:0 auto 16px;color:var(--blood)}
.sec-dark .feat .ic{color:var(--yellow)}
.feat h3{font-family:'Oswald',sans-serif;font-weight:600;font-size:16px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:10px}
.feat p{font-size:15.5px;color:var(--ink-2)}
.sec-dark .feat p{color:rgba(239,232,215,.7)}

/* event card */
.ev{display:block;text-decoration:none;background:var(--paper-3);border:2px solid var(--ink);overflow:hidden;transition:.2s}
.ev:hover{transform:translateY(-4px);box-shadow:7px 9px 0 rgba(26,23,18,.18)}
.ev figure{position:relative;aspect-ratio:4/3;overflow:hidden;border-bottom:2px solid var(--ink)}
.ev img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.3,1)}
.ev:hover img{transform:scale(1.05)}
.ev .body{padding:18px 18px 20px}
.ev h3{font-family:'Oswald',sans-serif;font-weight:600;font-size:16px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px}
.ev p{font-size:14.5px;color:var(--ink-3)}
.ev .more{display:inline-block;margin-top:12px;font-family:'Oswald';font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--blood);border-bottom:2px solid var(--yellow)}

/* price */
.prices{display:grid;grid-template-columns:repeat(3,1fr);border:3px solid var(--ink);background:var(--paper-3)}
.pcell{padding:34px 22px;text-align:center;border-right:3px solid var(--ink)}
.pcell:last-child{border-right:none}
.pcell .age{font-family:'Oswald';font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3)}
.pcell .eur{font-family:'Bevan',serif;font-size:clamp(38px,5vw,60px);line-height:1.1;margin:6px 0 2px}
.pcell .who{font-family:'Oswald';font-weight:600;font-size:15px;letter-spacing:.12em;text-transform:uppercase}

/* steps */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:3px solid var(--ink)}
.step{padding:30px 22px;border-right:3px solid var(--ink)}
.step:last-child{border-right:none}
.step .n{font-family:'Bevan',serif;font-size:40px;line-height:1;color:var(--blood);margin-bottom:12px}
.step h3{font-family:'Oswald';font-weight:600;font-size:15px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}
.step p{font-size:15px;color:var(--ink-2)}

/* facts list */
.facts{list-style:none}
.facts li{display:grid;grid-template-columns:128px 1fr;gap:20px;padding:17px 0;border-bottom:1px solid var(--rule)}
.facts li:first-child{border-top:1px solid var(--rule)}
.facts b{font-family:'Oswald';font-weight:600;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--blood);padding-top:4px}
.sec-dark .facts li,.sec-olive .facts li{border-color:var(--rule-2)}
.sec-dark .facts b,.sec-olive .facts b{color:var(--yellow)}

/* downloads */
.dl{display:flex;align-items:center;gap:14px;padding:16px 18px;border:2px solid var(--ink);background:var(--paper-3);color:var(--ink);text-decoration:none;transition:.16s}
.dl:hover{background:var(--yellow)}
.dl .ic{width:24px;height:24px;flex:none;color:var(--blood)}
.dl span{font-family:'Oswald';font-weight:500;font-size:13.5px;letter-spacing:.08em;text-transform:uppercase;line-height:1.35}
.dl small{display:block;font-family:'Barlow';text-transform:none;letter-spacing:0;font-size:13px;color:var(--ink-3)}

/* location card */
.loc{border:3px solid var(--ink);background:var(--paper-3);padding:0;overflow:hidden}
.loc figure{aspect-ratio:16/9;overflow:hidden;border-bottom:3px solid var(--ink)}
.loc figure img{width:100%;height:100%;object-fit:cover}
.loc .body{padding:26px 24px 28px}
.loc .tag{display:inline-block;font-family:'Oswald';font-size:11px;letter-spacing:.2em;text-transform:uppercase;background:var(--ink);color:var(--yellow);padding:4px 10px;margin-bottom:13px}
.loc h3{font-family:'Bevan',serif;font-size:21px;text-transform:uppercase;margin-bottom:10px;line-height:1.15}
.loc .type{font-size:14px;line-height:1.95;color:var(--ink-2)}

/* footer */
.foot{background:var(--night);color:rgba(239,232,215,.62);padding:34px 0;border-top:3px solid var(--yellow)}
.foot-in{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;font-size:14px}
.foot a{color:rgba(239,232,215,.8)}

/* ---------- responsive ---------- */
@media(max-width:1000px){
  .nav{display:none}
  .burger{display:block}
  .nav.open{display:flex;position:absolute;top:74px;left:0;right:0;flex-direction:column;gap:14px;background:var(--night);border-bottom:3px solid var(--yellow);padding:20px 26px}
  .g4{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr 1fr}
  .step:nth-child(2){border-right:none}
  .step:nth-child(1),.step:nth-child(2){border-bottom:3px solid var(--ink)}
  .sec{padding:60px 0}
}
@media(max-width:700px){
  .g4,.g3,.g2{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .step{border-right:none;border-bottom:3px solid var(--ink)}
  .step:last-child{border-bottom:none}
  .prices{grid-template-columns:1fr}
  .pcell{border-right:none;border-bottom:3px solid var(--ink)}
  .pcell:last-child{border-bottom:none}
  .facts li{grid-template-columns:1fr;gap:4px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* guard: light-background cards inside dark sections must keep dark text */
.sec-dark .dl,.sec-olive .dl,.sec-dark .ev,.sec-olive .ev,.sec-dark .loc,.sec-olive .loc,
.sec-dark .prices,.sec-olive .prices{color:var(--ink)}
.sec-dark .dl span,.sec-olive .dl span,.sec-dark .ev h3,.sec-olive .ev h3{color:var(--ink)}

/* active nav item */
.nav a.on{border-color:var(--yellow);color:#fff}

/* ---------- komponenti, ko lieto visi trīs izkārtojumi ---------- */
.specs{display:flex;margin:22px 0;border-top:2px solid currentColor;border-bottom:2px solid currentColor}
.specs div{flex:1;padding:13px 4px;text-align:center;border-right:1px solid rgba(128,128,128,.35)}
.specs div:last-child{border-right:none}
.specs b{display:block;font-family:'Bevan',serif;font-size:19px;line-height:1.2}
.specs span{font-family:'Oswald';font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;opacity:.65}

.rv{opacity:0;transform:translateY(22px);transition:opacity .75s cubic-bezier(.2,.7,.3,1),transform .75s cubic-bezier(.2,.7,.3,1)}
.rv.in{opacity:1;transform:none}

/* gaišie konteineri vienmēr ar tumšu tekstu, lai nekas nepazūd */
.folder,.panel,.tabs,.reg,.pbanner .card,.loc,.prices,.dl,.ev,.hero-photo .cap{color:var(--ink)}
.folder h1,.folder h2,.folder h3,.panel h1,.panel h2,.panel h3,.tabs h3,.pbanner .card h1{color:var(--ink)}
.hero-photo .cap{color:var(--paper)}
.folder .hero-stats div b,.folder .hero-stats div span{color:var(--ink)}
.folder .hero-stats div span{opacity:.62}

/* lightbox */
.lb{position:fixed;inset:0;z-index:200;background:rgba(10,11,8,.94);display:none;align-items:center;justify-content:center;padding:34px}
.lb.on{display:flex}
.lb img{max-width:92vw;max-height:88vh;border:3px solid var(--paper)}
.lb button{position:absolute;top:22px;right:26px;background:none;border:2px solid var(--paper);color:var(--paper);
  font-family:'Oswald';letter-spacing:.16em;padding:8px 14px;cursor:pointer}

@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}}

/* ---------- tumšo sekciju teksta krāsas (night / olive) ---------- */
.night,.olive{color:var(--paper)}
.night .feat p,.olive .feat p,.boxd .feat p{color:rgba(239,232,215,.74)}
.night .feat .ic,.olive .feat .ic,.boxd .feat .ic{color:var(--yellow)}
.night .feat h3,.olive .feat h3{color:var(--paper)}
.night .facts b,.olive .facts b,.boxd .facts b{color:var(--yellow)}
.night .facts li,.olive .facts li,.boxd .facts li{border-color:var(--rule-2)}
.night .facts span,.olive .facts span,.boxd .facts span{color:rgba(239,232,215,.82)}
.night .eyebrow,.olive .eyebrow,.boxd .eyebrow{color:var(--yellow)}
.night .lede,.olive .lede{color:rgba(239,232,215,.82)}
.night .type,.olive .type{color:rgba(239,232,215,.8)}
.night .specs,.olive .specs{border-color:rgba(239,232,215,.3)}
.night .specs div,.olive .specs div{border-right-color:rgba(239,232,215,.18)}

/* gaišie konteineri tumšajās sekcijās paliek tumši */
.night .panel,.olive .panel,.night .loc,.olive .loc,.night .prices,.olive .prices,
.night .dl,.olive .dl,.night .tabs,.olive .tabs,.night .reg,.olive .reg,.night .folder,.olive .folder{color:var(--ink)}
.night .panel .eyebrow,.olive .panel .eyebrow{color:var(--blood)}
.night .panel .facts b,.olive .panel .facts b{color:var(--blood)}
.night .panel .facts li,.olive .panel .facts li{border-color:var(--rule)}
.night .panel .facts span,.olive .panel .facts span{color:var(--ink-2)}
.night .dl span,.olive .dl span{color:var(--ink)}
.night .dl .ic,.olive .dl .ic{color:var(--blood)}
.night .loc .type,.olive .loc .type{color:var(--ink-2)}
.night .loc h3,.olive .loc h3{color:var(--ink)}
.night .prices .pcell .age,.olive .prices .pcell .age{color:var(--ink-3)}
