/* ═══════════════════════════════════════════════════════════════════════════
   MIESTO SPAUDA — spaudos lakšto dizaino sistema
   Popierius, rašalas, apipjovimo žymės. Gylis kuriamas tik šešėliais.
   Spalvas ir šriftus galima keisti admin skiltyje „Dizainas" (theme_tokens).
   ═══════════════════════════════════════════════════════════════════════════ */

:root{
  --bg:#FBFAF7;
  --soft:#F4F2ED;
  --soft2:#EDEAE3;
  --txt:#101217;
  --ink-70:#4A4F5A;
  --muted:#787E8B;

  /* Procesinės spalvos. Magenta dirba, cyan ir geltona — tik registracijai. */
  --c:#EC008C;
  --m:#EC008C;
  --cyan:#00AEEF;
  --y:#FFD400;
  --k:#101217;

  --wrap:1200px;
  --r:22px;
  --r-sm:12px;

  /* Trys sluoksniai: kontaktinis, vidutinis, ambientinis. */
  --sh:0 1px 2px rgba(16,18,23,.04), 0 4px 10px -3px rgba(16,18,23,.05), 0 18px 40px -14px rgba(16,18,23,.10);
  --sh-h:0 2px 4px rgba(16,18,23,.05), 0 10px 22px -6px rgba(16,18,23,.08), 0 34px 70px -20px rgba(16,18,23,.16);
  --sh-in:inset 0 1px 0 rgba(255,255,255,.9);
  --sh-sm:0 1px 2px rgba(16,18,23,.05), 0 6px 16px -6px rgba(16,18,23,.12);

  --ease:cubic-bezier(.32,.72,0,1);
  --ff:'Instrument Sans', system-ui, -apple-system, sans-serif;
  --fh:'Bricolage Grotesque', 'Instrument Sans', system-ui, sans-serif;
}

*{box-sizing:border-box}
[hidden]{display:none!important}   /* privaloma: .drawer turi display:flex, kuris kitaip perrašo hidden */
html{-webkit-text-size-adjust:100%; scroll-behavior:smooth}
body{
  margin:0; background:var(--bg); color:var(--txt);
  font:400 16.5px/1.6 var(--ff); letter-spacing:-.005em;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%; display:block}
h1,h2,h3{font-family:var(--fh); margin:0; letter-spacing:-.035em; line-height:1.02; font-weight:700}
p{margin:0}
a{color:inherit}
button{font-family:inherit}
:focus-visible{outline:2px solid var(--c); outline-offset:3px; border-radius:4px}
.wrap{max-width:var(--wrap); margin:0 auto; padding:0 28px}

/* ── Mygtukai ──────────────────────────────────────────────────────────── */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  background:var(--txt); color:#fff; border:0; border-radius:999px;
  padding:12px 22px; font:600 14.5px var(--ff); text-decoration:none; cursor:pointer;
  transition:transform .25s var(--ease), box-shadow .25s var(--ease);
  box-shadow:0 1px 2px rgba(16,18,23,.1), 0 8px 20px -8px rgba(16,18,23,.4);
}
.btn:hover{transform:translateY(-1px); box-shadow:0 2px 4px rgba(16,18,23,.12), 0 14px 28px -10px rgba(16,18,23,.5)}
.btn:active{transform:scale(.985)}
.btn-lg{padding:14px 26px; font-size:15.5px}
.btn-sm{padding:9px 17px; font-size:14px}
.btn-block{width:100%}
.btn-ghost{background:#fff; color:var(--txt); box-shadow:var(--sh-sm)}
.btn-ghost:hover{box-shadow:0 2px 4px rgba(16,18,23,.06), 0 12px 26px -8px rgba(16,18,23,.2)}

/* ── Navigacija: plaukianti piliulė ────────────────────────────────────── */
.nav{position:sticky; top:14px; z-index:40; padding:14px 0 0}
.nav-in{
  display:flex; align-items:center; gap:24px; position:relative;
  background:rgba(251,250,247,.86); backdrop-filter:blur(16px) saturate(1.5);
  -webkit-backdrop-filter:blur(16px) saturate(1.5);
  border-radius:999px; padding:9px 12px 9px 20px;
  box-shadow:0 1px 2px rgba(16,18,23,.04), 0 8px 20px -8px rgba(16,18,23,.14),
             0 24px 48px -28px rgba(16,18,23,.5);
  transition:box-shadow .35s var(--ease), background .35s var(--ease);
}
.nav.sticky .nav-in{
  background:rgba(251,250,247,.94);
  box-shadow:0 1px 2px rgba(16,18,23,.05), 0 12px 28px -10px rgba(16,18,23,.2),
             0 30px 60px -30px rgba(16,18,23,.6);
}
.brand{display:flex; align-items:center; text-decoration:none; flex:none}
.brand img{height:32px; width:auto}
.nav-links{display:flex; gap:2px; margin-left:auto; align-items:center}
.nav-links a{
  text-decoration:none; font-size:14.5px; color:var(--ink-70); padding:8px 13px;
  border-radius:999px; white-space:nowrap;
  transition:background .25s var(--ease), color .25s var(--ease);
}
.nav-links a:hover{background:var(--soft); color:var(--txt)}
.nav-tel{font-weight:600; color:var(--txt)!important}
.nav-act{display:flex; gap:6px; align-items:center; flex:none}
.iconbtn{
  width:40px; height:40px; border:0; border-radius:50%; background:var(--soft);
  display:grid; place-items:center; cursor:pointer; position:relative; color:var(--txt);
  transition:background .25s var(--ease), transform .25s var(--ease), box-shadow .25s var(--ease);
}
.iconbtn:hover{background:#fff; box-shadow:var(--sh-sm); transform:translateY(-1px)}
.iconbtn:active{transform:scale(.94)}
.iconbtn svg{width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round}
.iconbtn .badge{
  position:absolute; top:-2px; right:-2px; min-width:19px; height:19px; padding:0 5px;
  background:var(--c); color:#fff; border-radius:999px; font:700 11px/19px var(--ff); text-align:center;
  box-shadow:0 2px 6px -1px rgba(236,0,140,.5);
}
.burger{display:none; width:40px; height:40px; border:0; border-radius:50%; background:var(--soft); cursor:pointer; position:relative}
.burger span{
  position:absolute; left:12px; width:16px; height:1.6px; background:var(--txt); border-radius:2px;
  transition:transform .35s var(--ease), opacity .2s var(--ease);
}
.burger span:nth-child(1){top:15px}
.burger span:nth-child(2){top:19.5px}
.burger span:nth-child(3){top:24px}
body.menu-open .burger span:nth-child(1){transform:translateY(4.5px) rotate(45deg)}
body.menu-open .burger span:nth-child(2){opacity:0}
body.menu-open .burger span:nth-child(3){transform:translateY(-4.5px) rotate(-45deg)}

/* ── Sekcijos ──────────────────────────────────────────────────────────── */
section{padding:72px 0}
/* Akcentinės sekcijos gauna daugiau oro, kitos — mažiau. Tarpas = svarba. */
.calc,.numbers{padding:84px 0}
.tops{padding:64px 0 56px}
.revs{padding:64px 0}
.sec-head{max-width:64ch; margin-bottom:34px}
.row-head{display:flex; justify-content:space-between; align-items:flex-end; gap:24px; max-width:none}
.label{display:inline-flex; align-items:center; gap:9px; font-size:13.5px; color:var(--c); font-weight:600; margin-bottom:10px}
.label::before{content:''; width:22px; height:1px; background:var(--c); flex:none}
h2{font-size:clamp(27px,2.9vw,38px); font-weight:700; letter-spacing:-.035em}
.sec-sub{margin-top:10px; color:var(--ink-70); font-size:17.5px; line-height:1.55; max-width:60ch}

/* ── Hero ──────────────────────────────────────────────────────────────── */
.hero{padding:48px 0 64px}
.hero-in{display:grid; grid-template-columns:1.05fr .95fr; gap:48px; align-items:center}
.eyebrow{display:inline-flex; align-items:center; gap:4px; font-size:13.5px; color:var(--muted); margin-bottom:18px}
.eyebrow > span{margin-left:6px}
.dot{width:6px; height:6px; border-radius:50%; display:inline-block}
.dot.c{background:var(--cyan)} .dot.m{background:var(--m)}
.dot.y{background:var(--y)}    .dot.k{background:var(--txt)}
.hero-txt h1{font-size:clamp(38px,4.4vw,64px); font-weight:800; line-height:1.02; letter-spacing:-.04em; max-width:15ch}
.hero-txt > p{margin:18px 0 24px; font-size:17.5px; color:var(--ink-70); max-width:52ch; line-height:1.55}
.hero-cta{display:flex; gap:10px; flex-wrap:wrap}
.hero-cta .btn-lg{padding:15px 28px; font-size:16px}
.trust{list-style:none; margin:22px 0 0; padding:0; display:grid; gap:10px; font-size:14.5px; color:var(--ink-70)}

/* Apipjovimo žymės — vienintelis drąsus elementas puslapyje */
.hero-art{position:relative; padding:22px}
.hero-art::before,.hero-art::after{
  content:''; position:absolute; width:26px; height:26px; pointer-events:none;
  border:1px solid var(--txt); opacity:.26;
}
.hero-art::before{top:0; left:0; border-right:0; border-bottom:0}
.hero-art::after{bottom:0; right:0; border-left:0; border-top:0}
.ha{margin:0; border-radius:var(--r); overflow:hidden; box-shadow:var(--sh)}
.ha img{width:100%; height:100%; object-fit:cover}
.ha1{aspect-ratio:4/3.2}
.ha2{position:absolute; width:47%; right:0; bottom:6%; aspect-ratio:4/3; box-shadow:var(--sh-h); z-index:2}
.ha3{position:absolute; width:34%; left:4%; bottom:-6%; aspect-ratio:1/1; box-shadow:var(--sh-h); z-index:2}
.ha-badge{
  position:absolute; top:12%; left:-14px; z-index:3; background:var(--y); color:var(--txt);
  border-radius:14px; padding:11px 16px;
  box-shadow:0 2px 6px rgba(16,18,23,.1), 0 16px 32px -12px rgba(16,18,23,.4);
}
.ha-badge b{display:block; font-family:var(--fh); font-size:22px; font-weight:800; letter-spacing:-.04em; line-height:1}
.ha-badge span{display:block; font-size:12px; margin-top:2px}

/* ── Kortelės ──────────────────────────────────────────────────────────── */
.cat-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:14px}
.cat{
  background:#fff; border-radius:var(--r); padding:22px 22px 20px;
  box-shadow:var(--sh), var(--sh-in); display:flex; flex-direction:column;
  transition:transform .35s var(--ease), box-shadow .35s var(--ease);
}
.cat:hover{transform:translateY(-4px); box-shadow:var(--sh-h), var(--sh-in)}
.cat-ico{
  width:38px; height:38px; border-radius:11px; background:var(--soft);
  display:grid; place-items:center; font-size:18px; margin-bottom:14px;
  box-shadow:inset 0 0 0 1px rgba(16,18,23,.04);
}
.cat h3{font-size:18.5px; margin-bottom:6px; letter-spacing:-.03em}
.cat > p{color:var(--ink-70); font-size:14px; margin-bottom:14px}
.cat-links{list-style:none; margin:0 0 16px; padding:0; display:grid; gap:2px}
.cat-links a{
  display:flex; justify-content:space-between; align-items:center; background:var(--bg);
  padding:9px 13px; font-size:14.5px; text-decoration:none; border-radius:9px;
  transition:background .22s var(--ease), padding-left .22s var(--ease), box-shadow .22s var(--ease);
}
.cat-links a::after{
  content:''; width:6px; height:6px; flex:none;
  border-right:1.5px solid var(--muted); border-top:1.5px solid var(--muted); transform:rotate(45deg);
}
.cat-links a:hover{background:#fff; padding-left:18px; box-shadow:var(--sh-sm)}
.cat-from{margin-top:auto; font-size:13.5px; color:var(--muted)}
.cat-from b{font-family:var(--fh); color:var(--txt); font-size:17px; letter-spacing:-.03em}
.cat-help{background:var(--soft); box-shadow:none}
.cat-help:hover{box-shadow:var(--sh)}
.cat-help .btn{align-self:flex-start; margin-top:auto}

/* ── Skaičiuoklė ───────────────────────────────────────────────────────── */
/* Svarbiausia puslapio vieta: kitas fonas, didesnė antraštė, didesnė kaina. */
.calc{background:var(--soft)}
.calc .sec-head h2{font-size:clamp(30px,3.3vw,42px)}
.calc .sec-head{margin-bottom:28px}
.calc-box{display:grid; grid-template-columns:1.15fr .85fr; gap:26px; align-items:start}
.calc-form{background:#fff; border-radius:var(--r); padding:24px; box-shadow:var(--sh), var(--sh-in)}
.fld{display:block; margin-bottom:18px}
.fld > span{display:block; font-size:13.5px; font-weight:600; color:var(--ink-70); margin-bottom:9px}
.calc-form .fld:last-child{margin-bottom:0}
select, input[type=text], input[type=email], input[type=tel], input[type=url], input[type=number], textarea, input:not([type]){
  width:100%; padding:13px 15px; border:0; border-radius:12px;
  font:400 15.5px var(--ff); background:var(--bg); color:var(--txt); appearance:none;
  box-shadow:inset 0 1px 2px rgba(16,18,23,.06);
  transition:box-shadow .25s var(--ease), background .25s var(--ease);
}
select:hover, input:hover, textarea:hover{background:#fff; box-shadow:inset 0 1px 2px rgba(16,18,23,.05), var(--sh-sm)}
select:focus, input:focus, textarea:focus{outline:2px solid var(--c); outline-offset:-1px; background:#fff}
textarea{resize:vertical; line-height:1.55}
select{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23787E8B' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 15px center; background-size:11px; padding-right:38px;
}
.qty-in{margin-top:9px}
.chips{display:flex; gap:8px; flex-wrap:wrap}
.chips.two{display:grid; grid-template-columns:1fr 1fr}
.chip{
  border:0; background:var(--bg); border-radius:999px; padding:10px 17px;
  font:500 14.5px var(--ff); cursor:pointer; color:var(--ink-70);
  box-shadow:inset 0 0 0 1px rgba(16,18,23,.05);
  transition:transform .22s var(--ease), box-shadow .22s var(--ease), color .22s var(--ease), background .22s var(--ease);
}
.chip:hover{background:#fff; color:var(--txt); box-shadow:var(--sh-sm)}
.chip.on{background:var(--txt); color:#fff; font-weight:600; box-shadow:0 2px 6px -1px rgba(16,18,23,.3)}
.chip:active{transform:scale(.97)}
.calc-out{position:sticky; top:100px}
.price-card{
  background:var(--txt); color:#fff; border-radius:var(--r); padding:28px;
  box-shadow:0 2px 6px rgba(16,18,23,.12), 0 20px 44px -14px rgba(16,18,23,.34);
}
.po-label{font-size:13.5px; color:#9AA0AC}
.price{font-family:var(--fh); font-size:56px; font-weight:800; letter-spacing:-.045em; line-height:1; margin:8px 0 18px}
.po-row{display:flex; justify-content:space-between; padding:10px 0; font-size:14.5px; color:#9AA0AC;
        box-shadow:inset 0 1px 0 rgba(255,255,255,.07)}
.po-row b{color:#fff; font-weight:600}
.save{margin:18px 0 4px; background:rgba(236,0,140,.16); color:#FF9AD2; border-radius:10px; padding:10px 14px; font-size:13.5px}
.price-card .btn{background:#fff; color:var(--txt); margin-top:16px}
.price-card .btn-ghost{background:transparent; color:#fff; box-shadow:inset 0 0 0 1px rgba(255,255,255,.2); margin-top:10px}
.price-card .btn-ghost:hover{background:rgba(255,255,255,.08); box-shadow:inset 0 0 0 1px rgba(255,255,255,.4)}
.po-note{margin-top:18px; font-size:12.5px; color:var(--muted); line-height:1.5}

/* ── Populiariausi produktai ───────────────────────────────────────────── */
.arrows{display:flex; gap:8px}
.arr{
  width:40px; height:40px; border:0; border-radius:50%; background:#fff; cursor:pointer;
  font-size:19px; color:var(--txt); box-shadow:var(--sh-sm);
  transition:transform .25s var(--ease), box-shadow .25s var(--ease);
}
.arr:hover{transform:translateY(-1px); box-shadow:var(--sh)}
.arr:active{transform:scale(.94)}
.rail{
  display:flex; gap:18px; overflow-x:auto; scroll-snap-type:x mandatory;
  padding:6px 28px 20px; margin:0 auto; max-width:var(--wrap); scrollbar-width:none;
}
.rail::-webkit-scrollbar{display:none}
.prod{
  flex:0 0 272px; scroll-snap-align:start; background:#fff; border-radius:var(--r); padding:20px;
  box-shadow:var(--sh), var(--sh-in); display:flex; flex-direction:column;
  transition:transform .35s var(--ease), box-shadow .35s var(--ease);
}
.prod:hover{transform:translateY(-4px); box-shadow:var(--sh-h), var(--sh-in)}
.tag{display:inline-block; font-size:12.5px; color:var(--muted); margin-bottom:10px}
.prod h3{font-size:18px; letter-spacing:-.03em; margin-bottom:8px}
.prod .spec{font-size:13.5px; color:var(--ink-70); margin-bottom:16px; min-height:38px}
.prod .pr{font-family:var(--fh); font-weight:800; font-size:24px; letter-spacing:-.04em; margin-bottom:16px}
.prod .pr small{display:block; font-family:var(--ff); font-weight:400; font-size:12.5px; color:var(--muted); letter-spacing:0; margin-top:4px}
.prod .btn{align-self:flex-start}
.prod-more{display:block; margin-top:14px; font-size:13.5px; color:var(--muted); text-decoration:none}
.prod-more:hover{color:var(--c)}

/* ── Procesas ──────────────────────────────────────────────────────────── */
.stepgrid{list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:14px}
.stepgrid li{background:#fff; border-radius:var(--r); padding:22px; box-shadow:var(--sh), var(--sh-in)}
.stepgrid b{
  display:grid; place-items:center; width:30px; height:30px; border-radius:50%;
  background:var(--txt); color:#fff; font-family:var(--fh); font-size:14px; margin-bottom:12px;
}
.stepgrid h3{font-size:17px; margin-bottom:8px; letter-spacing:-.03em}
.stepgrid p{font-size:14.5px; color:var(--ink-70)}

/* ── Darbai ────────────────────────────────────────────────────────────── */
.filters{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:18px}
.wgrid{display:grid; grid-template-columns:repeat(4,1fr); gap:10px}
.work{
  margin:0; position:relative; border-radius:var(--r-sm); overflow:hidden; aspect-ratio:1/1;
  box-shadow:var(--sh-sm); transition:transform .4s var(--ease), box-shadow .4s var(--ease);
}
.work.wide{grid-column:span 2; aspect-ratio:2/1}
.work img{width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease)}
.work:hover{transform:translateY(-3px); box-shadow:var(--sh-h)}
.work:hover img{transform:scale(1.04)}
.work figcaption{
  position:absolute; left:0; right:0; bottom:0; padding:26px 16px 14px; color:#fff; font-size:13.5px;
  background:linear-gradient(to top, rgba(16,18,23,.72), transparent);
}

/* ── Skaičiai ──────────────────────────────────────────────────────────── */
.numbers{background:var(--txt); color:#fff}
.ngrid{display:grid; grid-template-columns:repeat(4,1fr); gap:24px}
.ngrid b{display:block; font-family:var(--fh); font-size:clamp(34px,4.4vw,58px); font-weight:800; letter-spacing:-.045em; line-height:1}
.ngrid span{display:block; margin-top:10px; color:#9AA0AC; font-size:14.5px; max-width:22ch}
.nnote{margin-top:26px; text-align:center; color:#5C6270; font-size:13px}

/* ── Atsiliepimai ──────────────────────────────────────────────────────── */
.revgrid{display:grid; grid-template-columns:repeat(3,1fr); gap:14px}
.revgrid blockquote{margin:0; background:#fff; border-radius:var(--r); padding:24px; box-shadow:var(--sh), var(--sh-in)}
.revgrid blockquote p{font-size:16.5px; line-height:1.6}
.revgrid cite{display:block; margin-top:18px; font-style:normal; font-size:13.5px; color:var(--muted)}

/* ── DUK ───────────────────────────────────────────────────────────────── */
.acc{display:grid; gap:6px; max-width:860px}
.acc details{background:#fff; border-radius:var(--r-sm); padding:15px 20px; box-shadow:var(--sh-sm); transition:box-shadow .3s var(--ease)}
.acc details[open]{box-shadow:var(--sh)}
.acc summary{
  font-weight:600; font-size:16px; cursor:pointer; list-style:none;
  display:flex; justify-content:space-between; align-items:center; gap:16px;
}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{
  content:''; width:8px; height:8px; flex:none;
  border-right:1.6px solid var(--muted); border-bottom:1.6px solid var(--muted);
  transform:rotate(45deg) translate(-2px,-2px); transition:transform .3s var(--ease);
}
.acc details[open] summary::after{transform:rotate(-135deg) translate(-3px,-3px)}
.acc p{margin-top:14px; color:var(--ink-70); font-size:15.5px; line-height:1.6}
.acc a{color:var(--c)}

/* ── Kontaktai ─────────────────────────────────────────────────────────── */
.cgrid{display:grid; grid-template-columns:1fr 1fr; gap:20px; align-items:start}
.cinfo ul{list-style:none; margin:0 0 16px; padding:0; display:grid; gap:2px}
.cinfo li{
  display:grid; grid-template-columns:118px 1fr; gap:14px; align-items:baseline;
  background:#fff; border-radius:var(--r-sm); padding:13px 18px; box-shadow:var(--sh-sm);
}
.cinfo li > span:first-child{font-size:13px; color:var(--muted)}
.cinfo a{text-decoration:none; font-weight:500}
.cinfo a:hover{color:var(--c)}
.map{border-radius:var(--r); overflow:hidden; box-shadow:var(--sh); height:220px}
.map iframe{width:100%; height:100%; border:0; display:block}
.cform{background:#fff; border-radius:var(--r); padding:26px; box-shadow:var(--sh), var(--sh-in)}
.cform h3{font-size:20px; margin-bottom:18px; letter-spacing:-.03em}
.cform .row{display:grid; grid-template-columns:1fr 1fr; gap:14px}
.file{display:block; margin:18px 0; position:relative}
.file input[type=file]{position:absolute; opacity:0; width:0; height:0}
.file-face{
  display:block; background:var(--bg); border-radius:12px; padding:16px; text-align:center;
  font-size:14.5px; cursor:pointer; color:var(--ink-70);
  box-shadow:inset 0 0 0 1px rgba(16,18,23,.06);
  transition:background .25s var(--ease), box-shadow .25s var(--ease);
}
.file-face:hover{background:#fff; box-shadow:var(--sh-sm)}
.file-face i{display:block; font-style:normal; font-size:12.5px; color:var(--muted); margin-top:4px}
.file em{display:block; margin-top:8px; font-style:normal; font-size:13px; color:var(--muted)}

/* ── Poraštė ───────────────────────────────────────────────────────────── */
.foot{padding:40px 0 48px; box-shadow:inset 0 1px 0 rgba(16,18,23,.06)}
.foot-in{display:grid; grid-template-columns:1.4fr 1fr; gap:40px; align-items:start}
.foot-logo{height:30px; width:auto; margin-bottom:16px}
.foot p{color:var(--muted); font-size:14px; line-height:1.6}
.foot-nav{display:grid; gap:10px; justify-items:start}
.foot-nav a{text-decoration:none; font-size:14.5px; color:var(--ink-70)}
.foot-nav a:hover{color:var(--c)}
.foot small{grid-column:1/-1; color:var(--muted); font-size:12.5px; padding-top:20px; box-shadow:inset 0 1px 0 rgba(16,18,23,.06)}

/* ── Krepšelis ─────────────────────────────────────────────────────────── */
/* Būtina: „display" taisyklė nustelbia HTML „hidden" atributą, todėl elementai,
   kuriems nustatytas display, turi turėti aiškų [hidden] atvejį. */
[hidden]{display:none!important}
.scrim{position:fixed; inset:0; background:rgba(16,18,23,.4); backdrop-filter:blur(3px); z-index:60}
.drawer{
  position:fixed; top:0; right:0; bottom:0; width:min(420px,100%); background:var(--bg); z-index:61;
  display:flex; flex-direction:column; box-shadow:-30px 0 80px -30px rgba(16,18,23,.5);
}
.drawer > header{display:flex; align-items:center; padding:22px 24px}
.drawer h3{font-size:20px; letter-spacing:-.03em}
.drawer .x{margin-left:auto; width:34px; height:34px; border:0; border-radius:50%; background:var(--soft); font-size:19px; cursor:pointer}
.drawer-body{flex:1; overflow-y:auto; padding:0 24px}
.drawer-body .empty{color:var(--muted); font-size:14.5px; text-align:center; padding:50px 0}
.citem{background:#fff; border-radius:var(--r-sm); padding:16px; margin-bottom:10px; box-shadow:var(--sh-sm)}
.citem-top{display:flex; align-items:flex-start; gap:10px}
.citem-top b{font-size:15px; line-height:1.35}
.citem-top .x{margin-left:auto; background:none; border:0; font-size:19px; line-height:1; cursor:pointer; color:var(--muted); width:auto; height:auto}
.citem .spec{color:var(--muted); font-size:13px; margin:6px 0 10px}
.citem-bot{display:flex; justify-content:space-between; align-items:baseline; font-size:14px}
.citem-bot b{font-family:var(--fh); font-size:17px; letter-spacing:-.03em}
.drawer-foot{padding:20px 24px 26px; box-shadow:inset 0 1px 0 rgba(16,18,23,.07)}
.drawer-foot .sum{display:flex; justify-content:space-between; align-items:baseline; margin-bottom:14px}
.drawer-foot .sum b{font-family:var(--fh); font-size:24px; letter-spacing:-.04em}
.drawer-note{background:var(--soft); border-radius:12px; padding:14px; font-size:13.5px; color:var(--ink-70); margin-top:12px; line-height:1.5}
.drawer-note a{color:var(--c)}
body.no-scroll{overflow:hidden}

/* ── Produkto puslapis ─────────────────────────────────────────────────── */
.pwrap{max-width:var(--wrap); margin:0 auto; padding:0 28px}
.crumb{font-size:13.5px; color:var(--muted); padding:26px 0 0}
.crumb a{color:var(--muted); text-decoration:none}
.crumb a:hover{color:var(--txt)}
.phead{display:grid; grid-template-columns:1.1fr .9fr; gap:44px; align-items:center; padding:22px 0 44px}
.phead h1{font-size:clamp(30px,3.6vw,46px); font-weight:800; line-height:1.04; margin:8px 0 16px; letter-spacing:-.038em}
.phead .lead{color:var(--ink-70); font-size:17px; margin:0 0 22px; max-width:52ch; line-height:1.55}
.phead img{border-radius:var(--r); width:100%; height:330px; object-fit:cover; box-shadow:var(--sh)}
.pbul{list-style:none; margin:0 0 24px; padding:0; display:grid; gap:7px; font-size:15px; color:var(--ink-70)}
.pbul li::before{content:''; display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--c); margin-right:11px; vertical-align:middle}
.pcta{display:flex; gap:12px; flex-wrap:wrap}
.psec{padding:44px 0; box-shadow:inset 0 1px 0 rgba(16,18,23,.06)}
.psec h2{font-size:26px; margin-bottom:6px}
.psec .sub{color:var(--ink-70); margin:0 0 20px; font-size:15.5px}
.ptab{width:100%; border-collapse:collapse; background:#fff; border-radius:var(--r); overflow:hidden; box-shadow:var(--sh), var(--sh-in)}
.ptab th{text-align:left; font:600 12.5px var(--ff); color:var(--muted); padding:13px 20px; background:var(--bg)}
.ptab td{padding:13px 20px; font-size:15.5px; box-shadow:inset 0 1px 0 rgba(16,18,23,.055)}
.ptab tbody tr:hover td{background:var(--bg)}
.ptab .pg{font-family:var(--fh); font-weight:700; font-size:17px; letter-spacing:-.03em}
.ptab .pu{color:var(--ink-70); font-variant-numeric:tabular-nums}
.opts{display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:16px}
.opt{background:#fff; border-radius:var(--r-sm); padding:18px; box-shadow:var(--sh-sm)}
.opt h3{font-size:15px; margin-bottom:12px}
.opt ul{margin:0; padding-left:18px; color:var(--ink-70); font-size:14.5px; display:grid; gap:6px}
.pfaq details{background:#fff; border-radius:var(--r-sm); padding:18px 22px; margin-bottom:8px; box-shadow:var(--sh-sm)}
.pfaq summary{font-weight:600; cursor:pointer; font-size:15.5px}
.pfaq p{margin-top:12px; color:var(--ink-70)}
.pmore{display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:14px}
.pmore a{
  background:#fff; border-radius:var(--r-sm); padding:17px; text-decoration:none; color:var(--txt);
  font-weight:600; font-size:15px; box-shadow:var(--sh-sm);
  transition:transform .3s var(--ease), box-shadow .3s var(--ease);
}
.pmore a:hover{transform:translateY(-3px); box-shadow:var(--sh)}
.pmore span{display:block; font-weight:400; font-size:13px; color:var(--muted); margin-top:4px}
.psec.calc{background:transparent}

/* ── Atsiradimo animacija ──────────────────────────────────────────────── */
.reveal{opacity:0; transform:translateY(18px); transition:opacity .7s var(--ease), transform .7s var(--ease)}
.reveal.in{opacity:1; transform:none}

/* ── Adaptyvumas ───────────────────────────────────────────────────────── */
@media (max-width:1080px){
  .cat-grid{grid-template-columns:repeat(2,1fr)}
  .stepgrid{grid-template-columns:repeat(2,1fr)}
  .wgrid{grid-template-columns:repeat(2,1fr)}
  .revgrid{grid-template-columns:1fr}
}
@media (max-width:900px){
  section{padding:48px 0}
  .calc,.numbers{padding:56px 0}
  .tops,.revs{padding:44px 0}
  .sec-head{margin-bottom:24px}
  .wrap,.pwrap{padding:0 20px}
  .hero{padding:56px 0 72px}
  .hero-in,.calc-box,.cgrid,.phead,.foot-in{grid-template-columns:1fr; gap:40px}
  .calc-out{position:static}
  .ngrid{grid-template-columns:repeat(2,1fr); gap:32px}
  .phead img{height:260px}
  .nav-links{
    display:none; position:absolute; top:62px; left:0; right:0; flex-direction:column; gap:4px;
    background:rgba(251,250,247,.97); backdrop-filter:blur(16px); border-radius:22px; padding:16px;
    box-shadow:var(--sh-h);
  }
  body.menu-open .nav-links{display:flex}
  .nav-links a{padding:12px 16px; font-size:16px}
  .burger{display:block}
  .cinfo li{grid-template-columns:1fr; gap:4px}
  .cform .row{grid-template-columns:1fr}
}
@media (max-width:560px){
  .cat-grid,.stepgrid{grid-template-columns:1fr}
  .wgrid{grid-template-columns:1fr}
  .work.wide{grid-column:span 1; aspect-ratio:1/1}
  .ngrid{grid-template-columns:1fr}
  .ha2,.ha3{position:static; width:100%; margin-top:12px}
  .ha-badge{left:auto; right:14px; top:14px}
  .price{font-size:42px}
}
@media (prefers-reduced-motion:reduce){
  *{transition-duration:.01ms!important; animation-duration:.01ms!important; scroll-behavior:auto}
  .reveal{opacity:1; transform:none}
}
