/* ============================================================
   Liepkiemis - dizaino sistema
   Tipografija: Newsreader (display) + Archivo (tekstas, UI)
   ============================================================ */

@font-face{
  font-family:'Newsreader';
  src:url('../fonts/newsreader-var.woff2') format('woff2-variations');
  font-weight:300 700; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'Archivo';
  src:url('../fonts/archivo-var.woff2') format('woff2-variations');
  font-weight:400 700; font-style:normal; font-display:swap;
}

:root{
  /* --- spalvos --- */
  --klaida:     hsl(0 62% 36%);
  --paper:      hsl(128 16% 98.2%);
  --paper-2:    hsl(128 14% 95.5%);
  --card:       #fff;
  --ink:        hsl(145 14% 13%);
  --ink-2:      hsl(140 9% 34%);
  --ink-3:      hsl(140 8% 42%);
  --hair:       hsl(145 14% 13% / .11);
  --hair-2:     hsl(145 14% 13% / .06);
  --brand:      #39B54A;            /* logotipo žalia - tik ženklui ir grafikai */
  --accent:     hsl(128 52% 33%);   /* #2A8436 - tekstui, nuorodoms, mygtukams */
  --accent-2:   hsl(128 55% 25%);   /* #1D6326 - hover */
  --accent-tint:hsl(128 52% 33% / .10);

  --d-bg:       hsl(150 18% 10%);
  --d-bg-2:     hsl(150 15% 15%);
  --d-text:     hsl(130 14% 93%);
  --d-text-2:   hsl(135 10% 70%);
  --d-hair:     hsl(0 0% 100% / .12);
  --d-accent:   hsl(128 48% 64%);

  /* --- tarpai --- */
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px;
  --s6:32px; --s7:48px; --s8:64px; --s9:96px; --s10:128px;

  --r:8px; --r-lg:16px;
  --page:1160px;
  --gut:clamp(20px, 5vw, 48px);

  --sh-sm:0 1px 2px hsl(150 25% 12% / .05), 0 1px 3px hsl(150 25% 12% / .07);
  --sh-md:0 2px 4px hsl(150 25% 12% / .05), 0 6px 12px hsl(150 25% 12% / .08);
  --sh-lg:0 4px 6px hsl(150 25% 12% / .04), 0 14px 26px hsl(150 25% 12% / .10);

  --e-out:cubic-bezier(.23,1,.32,1);
  --e-io:cubic-bezier(.77,0,.175,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:'Archivo',ui-sans-serif,system-ui,'Segoe UI',sans-serif;
  font-size:1rem; line-height:1.65; font-synthesis-weight:none;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
::selection{background:var(--accent-tint); color:var(--accent-2)}
img{max-width:100%; height:auto; display:block}
a{color:inherit}
h1,h2,h3,h4{margin:0; font-family:'Newsreader',Georgia,serif; font-weight:500; text-wrap:balance}
p{margin:0}
:where(p,li){text-wrap:pretty}

/* --- fokusas --- */
:focus-visible{
  outline:none;
  box-shadow:0 0 0 2px var(--paper), 0 0 0 4px var(--accent);
  border-radius:4px;
}
.on-dark :focus-visible{box-shadow:0 0 0 2px var(--d-bg), 0 0 0 4px var(--d-accent)}

.skip{
  position:absolute; left:var(--s4); top:var(--s4); z-index:200;
  transform:translateY(-200%); background:var(--ink); color:var(--paper);
  padding:10px 16px; border-radius:var(--r); text-decoration:none; font-size:.875rem; font-weight:600;
  transition:transform 180ms var(--e-out);
}
.skip:focus{transform:translateY(0)}

/* --- tinklelis --- */
.wrap{max-width:var(--page); margin-inline:auto; padding-inline:var(--gut)}
.section{padding-block:clamp(64px,9vw,120px)}
.prose{max-width:62ch}
.lead{font-size:1.125rem; line-height:1.6; color:var(--ink-2); max-width:58ch}

.label{
  font-size:.75rem; font-weight:600; letter-spacing:.09em; text-transform:uppercase;
  color:var(--ink-3);
}
.hair{border:0; border-top:1px solid var(--hair); margin:0}

h1{font-size:clamp(2.3rem,1.35rem+3.5vw,4rem); line-height:1.05; letter-spacing:-.028em}
h2{font-size:clamp(1.75rem,1.2rem+1.8vw,2.6rem); line-height:1.12; letter-spacing:-.022em}
h3{font-size:1.375rem; line-height:1.25; letter-spacing:-.014em}
.num{font-variant-numeric:tabular-nums}

/* --- mygtukai --- */
.btn{
  display:inline-flex; align-items:center; gap:10px; justify-content:center;
  min-height:48px; padding:0 22px; border-radius:var(--r); border:0;
  font:inherit; font-size:.9375rem; font-weight:600; letter-spacing:-.005em;
  text-decoration:none; cursor:pointer; user-select:none;
  transition:transform 160ms var(--e-out), background-color 180ms ease, box-shadow 180ms ease, color 180ms ease;
}
.btn:active{transform:scale(.975)}
.btn--primary{background:var(--accent); color:#fff; box-shadow:var(--sh-sm)}
.btn--ghost{background:transparent; color:var(--ink); box-shadow:inset 0 0 0 1px var(--hair)}
.btn--dark{background:var(--d-text); color:var(--d-bg)}
@media (hover:hover) and (pointer:fine){
  .btn--primary:hover{background:var(--accent-2); box-shadow:var(--sh-md)}
  .btn--ghost:hover{background:var(--paper-2); box-shadow:inset 0 0 0 1px hsl(145 14% 13% / .2)}
  .btn--dark:hover{background:#fff}
}
.btn svg{flex:none}

/* Nuorodos redaguojamame tekste gauna tą patį stilių kaip .tlink,
   nes turinio valdymo sistema klasių nepriskiria. */
.tlink,
.rrow li a,
.faq__a a{
  color:var(--accent); text-decoration:underline; text-underline-offset:3px;
  text-decoration-color:hsl(128 52% 33% / .42); text-decoration-thickness:1px;
  transition:text-decoration-color 160ms ease, color 160ms ease;
}
@media (hover:hover){.tlink:hover,.rrow li a:hover,.faq__a a:hover{color:var(--accent-2); text-decoration-color:currentColor}}

/* ============================ juosta + antraštė ============================ */
.season{
  background:var(--ink); color:var(--d-text);
  font-size:.8125rem; line-height:1.4;
}
.season__in{
  display:flex; flex-wrap:wrap; align-items:center; gap:6px 14px;
  padding-block:9px; min-height:40px;
}
.season b{font-weight:600; color:#fff}
.season a{
  color:var(--d-accent); text-decoration:underline; text-underline-offset:3px;
  text-decoration-color:hsl(128 48% 64% / .45);
}
@media (hover:hover){.season a:hover{text-decoration-color:currentColor}}
.dot{width:6px; height:6px; border-radius:50%; background:var(--d-accent); flex:none}

.hdr{
  position:sticky; top:0; z-index:100;
  background:hsl(128 16% 98.2% / .84);
  backdrop-filter:blur(14px) saturate(180%); -webkit-backdrop-filter:blur(14px) saturate(180%);
  box-shadow:inset 0 -1px 0 transparent;
  transition:box-shadow 220ms ease, background-color 220ms ease;
}
.hdr[data-stuck="1"]{box-shadow:inset 0 -1px 0 var(--hair), 0 6px 20px hsl(150 25% 12% / .05)}
@media (prefers-reduced-transparency:reduce){.hdr{background:var(--paper); backdrop-filter:none}}
.hdr__in{display:flex; align-items:center; gap:var(--s5); min-height:78px}

.brand{display:flex; flex-direction:column; align-items:flex-start; gap:3px;
  text-decoration:none; margin-right:auto; padding-block:4px}
.brand__logo{width:63px; height:54px; color:var(--brand)}
.brand__s{font-size:.6875rem; letter-spacing:.09em; text-transform:uppercase; color:var(--ink-3); line-height:1}
@media (max-width:420px){.brand__logo{width:52px; height:45px}}

.nav{display:flex; align-items:center; gap:2px}
.nav a{
  padding:8px 12px; border-radius:6px; font-size:.9375rem; text-decoration:none; color:var(--ink-2);
  transition:color 160ms ease, background-color 160ms ease;
}
@media (hover:hover) and (pointer:fine){.nav a:hover{color:var(--ink); background:var(--paper-2)}}
@media (max-width:1000px){.nav{display:none}}
.hdr .btn{min-height:42px; padding:0 16px; font-size:.875rem}
.hdr__call{display:none}
@media (max-width:620px){
  .hdr__write{display:none}
  .hdr__call{display:inline-flex; padding:0 14px}
}

/* ============================ hero ============================ */
.hero{padding-block:clamp(48px,7vw,88px) clamp(40px,5vw,64px)}
.hero__grid{
  display:grid; gap:clamp(32px,4vw,64px);
  grid-template-columns:minmax(0,1.45fr) minmax(280px,.85fr);
  align-items:start;
}
@media (max-width:900px){.hero__grid{grid-template-columns:1fr}}
.hero .label{margin-bottom:var(--s4)}
.hero h1{margin-bottom:var(--s5); max-width:16ch}
.hero .lead{margin-bottom:var(--s6)}
.hero__cta{display:flex; flex-wrap:wrap; gap:var(--s3)}

.facts{
  background:var(--card); border-radius:var(--r-lg);
  box-shadow:0 0 0 1px var(--hair-2), var(--sh-md);
  padding:var(--s5) var(--s5) var(--s3);
}
.facts h2{font-size:.75rem; font-family:'Archivo',sans-serif; font-weight:600;
  letter-spacing:.09em; text-transform:uppercase; color:var(--ink-3); margin-bottom:var(--s4)}
.facts dl{margin:0; display:grid; gap:0}
.facts div{display:flex; gap:var(--s4); justify-content:space-between; align-items:baseline;
  padding-block:11px; border-top:1px solid var(--hair-2)}
.facts div:first-of-type{border-top:0; padding-top:0}
.facts dt{font-size:.875rem; color:var(--ink-3); flex:none}
.facts dd{margin:0; font-size:.9375rem; font-weight:500; text-align:right; font-variant-numeric:tabular-nums}
.facts dd a{text-decoration:none; display:inline-block; padding-block:4px; margin-block:-4px}
@media (hover:hover){.facts dd a:hover{color:var(--accent)}}

/* dokumentinė juosta */
.strip{display:grid; grid-template-columns:repeat(3,1fr); gap:var(--s4); margin-top:clamp(40px,5vw,64px)}
@media (max-width:760px){.strip{grid-template-columns:1fr 1fr} .strip figure:last-child{display:none}}
.strip figure{margin:0}
.strip img{
  width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:var(--r);
  box-shadow:inset 0 0 0 1px hsl(145 14% 13% / .08);
  filter:saturate(.9);
}
.strip figcaption{font-size:.8125rem; color:var(--ink-3); margin-top:10px}

/* ============================ ugdymo linija ============================ */
.linija-sec{background:var(--paper-2); border-block:1px solid var(--hair-2)}
.linija-head{display:grid; gap:var(--s5) var(--s7); grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:end; margin-bottom:clamp(32px,4vw,48px)}
@media (max-width:820px){.linija-head{grid-template-columns:1fr; align-items:start}}

.chart{--namew:212px; position:relative}
@media (max-width:760px){.chart{--namew:104px}}

.chart__axis{
  display:grid; grid-template-columns:repeat(14,1fr); margin-left:var(--namew);
  border-bottom:1px solid var(--hair); padding-bottom:6px; margin-bottom:var(--s4);
}
.chart__axis span{font-size:.75rem; color:var(--ink-3); font-variant-numeric:tabular-nums; text-align:center}
@media (max-width:760px){.chart__axis span{font-size:.6875rem}}

.chart__rows{display:grid; gap:6px; position:relative; z-index:1}
.row{display:grid; grid-template-columns:var(--namew) 1fr; align-items:center; gap:var(--s3)}
.row__name{
  font-size:.9375rem; font-weight:500; text-decoration:none; color:var(--ink-2);
  padding-block:4px; transition:color 200ms ease;
  overflow-wrap:anywhere;
}
@media (max-width:760px){.row__name{font-size:.8125rem; line-height:1.3}}
.row__track{display:block}
.bar{
  /* Juostos padėtis ir plotis - procentais nuo 14 metų tarpsnio (10-23 m.).
     Reikšmės --a ir --b ateina per style atributą, todėl CSP turi leisti
     'unsafe-inline' stiliams - kitaip visos juostos išsitempia per visą plotį. */
  margin-inline-start:calc((var(--a) - 10) * 100% / 14);
  width:calc((var(--b) - var(--a) + 1) * 100% / 14);
  min-height:38px; display:flex; align-items:center; padding-inline:12px;
  border-radius:6px; background:var(--card);
  box-shadow:inset 0 0 0 1px var(--hair);
  font-size:.8125rem; color:var(--ink-3); font-variant-numeric:tabular-nums;
  transition:background-color 220ms ease, box-shadow 220ms ease, color 220ms ease, opacity 220ms ease;
}
.bar i{font-style:normal; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
@media (max-width:900px){
  .bar{min-height:34px; padding-inline:0; justify-content:center}
  .bar i{display:none}
}
.row.is-on .bar{background:var(--accent); color:#fff; box-shadow:inset 0 0 0 1px var(--accent), var(--sh-sm)}
.row.is-on .row__name{color:var(--ink)}
.row.is-off .bar{background:transparent; box-shadow:inset 0 0 0 1px var(--hair-2)}
.row.is-off .row__name{color:var(--ink-3)}
@media (hover:hover) and (pointer:fine){
  .row__name:hover{color:var(--accent)}
}

.chart__plot{position:relative; -webkit-user-select:none; user-select:none}
@media (hover:hover) and (pointer:fine){
  .chart__axis, .row__track{cursor:pointer}
}
/* Blankus žymeklis po pele: parodo, kad grafikas paspaudžiamas */
.chart__ghost{
  position:absolute; top:-24px; bottom:-4px; width:2px; background:var(--ink-3);
  left:calc(var(--namew) + (var(--hov, 10) - 10 + .5) / 14 * (100% - var(--namew)));
  transform:translateX(-1px); pointer-events:none; z-index:2; border-radius:2px;
  opacity:0; transition:opacity 150ms ease;
}
.chart__ghost::before{
  content:attr(data-age); position:absolute; top:-11px; left:50%; transform:translateX(-50%);
  background:var(--paper); color:var(--ink-2); box-shadow:inset 0 0 0 1px var(--hair), var(--sh-sm);
  font-size:.6875rem; font-weight:600; padding:3px 8px; border-radius:99px;
  white-space:nowrap; font-variant-numeric:tabular-nums;
}
.chart.is-hov .chart__ghost{opacity:.7}
.chart__marker{
  position:absolute; top:-24px; bottom:-4px; width:2px; background:var(--ink);
  left:calc(var(--namew) + (var(--age) - 10 + .5) / 14 * (100% - var(--namew)));
  transform:translateX(-1px); pointer-events:none; z-index:2; border-radius:2px;
  transition:left 260ms var(--e-out);
}
.chart__marker::before{
  content:attr(data-age); position:absolute; top:-11px; left:50%; transform:translateX(-50%);
  background:var(--ink); color:var(--paper); font-size:.6875rem; font-weight:600;
  padding:3px 8px; border-radius:99px; white-space:nowrap; font-variant-numeric:tabular-nums;
}

.chart__control{margin-top:var(--s6); margin-left:var(--namew)}
input[type=range]{
  -webkit-appearance:none; appearance:none; width:100%; background:transparent; margin:0;
  height:28px; cursor:grab;
}
input[type=range]:active{cursor:grabbing}
input[type=range]::-webkit-slider-runnable-track{height:4px; border-radius:99px; background:var(--hair)}
input[type=range]::-moz-range-track{height:4px; border-radius:99px; background:var(--hair)}
input[type=range]::-webkit-slider-thumb{
  -webkit-appearance:none; width:26px; height:26px; margin-top:-11px; border-radius:50%;
  background:var(--ink); border:3px solid var(--paper-2); box-shadow:var(--sh-md);
  transition:transform 160ms var(--e-out);
}
input[type=range]::-moz-range-thumb{
  width:26px; height:26px; border-radius:50%; border:3px solid var(--paper-2);
  background:var(--ink); box-shadow:var(--sh-md);
}
input[type=range]:active::-webkit-slider-thumb{transform:scale(.94)}

.chart__hint{margin-top:var(--s2); font-size:.8125rem; color:var(--ink-3)}
.chart__out{margin-top:var(--s4); font-size:.9375rem; color:var(--ink-2); min-height:1.65em}
.chart__out b{color:var(--ink); font-weight:600}

/* ============================ programos ============================ */
.prog-head{display:flex; flex-wrap:wrap; gap:var(--s4) var(--s7); align-items:end; justify-content:space-between; margin-bottom:clamp(32px,4vw,56px)}

.feature{
  display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:0;
  background:var(--card); border-radius:var(--r-lg); overflow:hidden;
  box-shadow:0 0 0 1px var(--hair-2), var(--sh-sm);
  margin-bottom:var(--s5);
}
@media (max-width:820px){.feature{grid-template-columns:1fr}}
.feature--flip .feature__media{order:2}
@media (max-width:820px){.feature--flip .feature__media{order:0}}
.feature__media{position:relative; min-height:100%}
.feature__media img{width:100%; height:100%; min-height:220px; object-fit:cover; filter:saturate(.88)}
.feature__body{padding:clamp(24px,3.2vw,40px)}
.feature h3{margin-bottom:var(--s3)}
.feature p{color:var(--ink-2); margin-bottom:var(--s5); max-width:52ch}

.meta{display:flex; flex-wrap:wrap; gap:6px; margin-bottom:var(--s4)}
.chip{
  font-size:.75rem; font-weight:500; padding:4px 10px; border-radius:99px;
  background:var(--paper-2); color:var(--ink-2); font-variant-numeric:tabular-nums;
  box-shadow:inset 0 0 0 1px var(--hair-2);
}
.chip--price{background:var(--accent-tint); color:var(--accent-2); box-shadow:inset 0 0 0 1px hsl(128 52% 33% / .2)}
.contact-line{font-size:.875rem; color:var(--ink-3); margin-top:var(--s4)}
.contact-line a{text-decoration:none; color:var(--ink-2); font-weight:500}
@media (hover:hover){.contact-line a:hover{color:var(--accent)}}

.cards{display:grid; grid-template-columns:1fr; gap:var(--s5)}
@media (min-width:600px){.cards{grid-template-columns:repeat(2,1fr)}}
.card{
  background:var(--card); border-radius:var(--r-lg); overflow:hidden;
  box-shadow:0 0 0 1px var(--hair-2), var(--sh-sm);
  display:flex; flex-direction:column;
}
.card img{width:100%; aspect-ratio:16/10; object-fit:cover; filter:saturate(.88)}
.card__b{padding:var(--s5); display:flex; flex-direction:column; flex:1}
.card h3{font-size:1.1875rem; margin-bottom:10px}
.card p{font-size:.9375rem; color:var(--ink-2); margin-bottom:var(--s4)}
.card .meta{margin-top:auto; margin-bottom:0}
.note{
  display:flex; gap:9px; align-items:flex-start; margin-top:var(--s4);
  font-size:.8125rem; line-height:1.5; color:var(--ink-2);
  background:var(--paper-2); border-radius:var(--r); padding:10px 12px;
}
.note svg{flex:none; margin-top:2px; color:var(--ink-3)}

/* ============================ komanda (tamsi) ============================ */
.dark{background:var(--d-bg); color:var(--d-text); position:relative; overflow:hidden}
.dark h2,.dark h3{color:#fff}
.dark .lead{color:var(--d-text-2)}
.dark .label{color:var(--d-text-2)}
.dark__mark{
  position:absolute; right:-90px; top:-50px; width:420px; height:250px;
  color:#fff; opacity:.05; pointer-events:none;
}
@media (max-width:820px){.dark__mark{width:280px; height:166px; right:-70px}}

.team{display:grid; grid-template-columns:1fr; gap:var(--s6) var(--s6); margin-top:clamp(36px,4.5vw,56px)}
@media (min-width:560px){.team{grid-template-columns:repeat(2,1fr)}}
@media (min-width:940px){.team{grid-template-columns:repeat(3,1fr)}}
.person img{
  width:96px; height:96px; border-radius:50%; object-fit:cover; margin-bottom:var(--s4);
  box-shadow:inset 0 0 0 1px hsl(0 0% 100% / .14), 0 0 0 1px hsl(0 0% 100% / .1);
  filter:saturate(.85);
}
.person h3{font-size:1.1875rem; margin-bottom:3px}
.person .role{font-size:.8125rem; color:var(--d-accent); font-weight:500; margin-bottom:10px}
.person p{font-size:.9375rem; line-height:1.6; color:var(--d-text-2); max-width:38ch}

/* ============================ skaidrumas ============================ */
.disclose{display:grid; grid-template-columns:1fr; gap:var(--s5); margin-top:clamp(32px,4vw,48px)}
@media (min-width:700px){.disclose{grid-template-columns:repeat(2,1fr)}}
.disc{background:var(--card); border-radius:var(--r-lg); padding:var(--s5);
  box-shadow:0 0 0 1px var(--hair-2), var(--sh-sm)}
.disc h3{font-size:1.125rem; margin-bottom:10px}
.disc p{font-size:.9375rem; color:var(--ink-2)}
.disc__ico{
  width:34px; height:34px; border-radius:9px; background:var(--accent-tint); color:var(--accent);
  display:grid; place-items:center; margin-bottom:var(--s4);
}
.doc{
  display:inline-flex; align-items:center; gap:10px; margin-top:var(--s4);
  font-size:.875rem; font-weight:500; text-decoration:none; color:var(--ink);
  padding:10px 14px; border-radius:var(--r); background:var(--paper-2);
  box-shadow:inset 0 0 0 1px var(--hair-2);
  transition:background-color 180ms ease, box-shadow 180ms ease;
}
@media (hover:hover){.doc:hover{background:var(--card); box-shadow:inset 0 0 0 1px var(--hair), var(--sh-sm)}}

/* ============================ atsiliepimai ============================ */
.quotes{display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:var(--s6) var(--s7); margin-top:clamp(32px,4vw,48px)}
.q{position:relative; padding-left:34px}
.q::before{
  content:"„"; position:absolute; left:-2px; top:.34em;
  font-family:'Newsreader',serif; font-size:3.25rem; line-height:1; color:var(--accent); opacity:.3;
}
.q blockquote{margin:0; font-family:'Newsreader',serif; font-size:1.25rem; line-height:1.45; letter-spacing:-.012em}
.q figcaption{margin-top:var(--s4); font-size:.8125rem; color:var(--ink-3)}
/* antros citatos sumazinimas pasalintas - klientas pastebejo nenuoseiklu srifta */

/* ============================ tėvams ============================ */
.rows{margin-top:clamp(32px,4vw,48px)}
.rrow{display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:var(--s4) var(--s7);
  padding-block:var(--s6); border-top:1px solid var(--hair)}
.rrow:last-child{border-bottom:1px solid var(--hair)}
@media (max-width:760px){.rrow{grid-template-columns:1fr; gap:var(--s3)}}
.rrow h3{font-size:1.25rem}
.rrow p{color:var(--ink-2); max-width:56ch}
.rrow ul{margin:var(--s3) 0 0; padding:0; list-style:none; display:grid; gap:8px}
.rrow li{position:relative; padding-left:20px; font-size:.9375rem; color:var(--ink-2)}
.rrow li::before{content:""; position:absolute; left:2px; top:.66em; width:6px; height:6px;
  border-radius:50%; background:var(--accent); opacity:.7}

/* ============================ DUK ============================ */
.faq{margin-top:clamp(28px,3.5vw,40px); max-width:820px}
.faq details{border-top:1px solid var(--hair)}
.faq details:last-of-type{border-bottom:1px solid var(--hair)}
.faq summary{
  list-style:none; cursor:pointer; padding-block:var(--s5); padding-right:40px; position:relative;
  font-size:1.0625rem; font-weight:500; color:var(--ink); transition:color 160ms ease;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:""; position:absolute; right:8px; top:50%; width:11px; height:11px;
  border-right:1.5px solid var(--ink-3); border-bottom:1.5px solid var(--ink-3);
  transform:translateY(-70%) rotate(45deg);
  transition:transform 220ms var(--e-out), border-color 160ms ease;
}
.faq details[open] summary::after{transform:translateY(-25%) rotate(-135deg); border-color:var(--accent)}
@media (hover:hover) and (pointer:fine){.faq summary:hover{color:var(--accent)}}
.faq__a{padding-bottom:var(--s5); color:var(--ink-2); max-width:62ch}
.faq__a p + p{margin-top:var(--s3)}

/* ============================ parama + kontaktai ============================ */
.support{
  background:var(--card); border-radius:var(--r-lg); padding:clamp(24px,3.5vw,44px);
  box-shadow:0 0 0 1px var(--hair-2), var(--sh-md);
  display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,.75fr); gap:var(--s6);
  align-items:center;
}
@media (max-width:820px){.support{grid-template-columns:1fr}}
.reqs{display:grid; gap:0}
.reqs div{display:flex; justify-content:space-between; gap:var(--s4); padding-block:9px;
  border-top:1px solid var(--hair-2); font-size:.875rem}
.reqs div:first-child{border-top:0}
.reqs dt{color:var(--ink-3)}
.reqs dd{margin:0; font-weight:500; font-variant-numeric:tabular-nums; text-align:right}

.contact{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(32px,5vw,72px)}
@media (max-width:820px){.contact{grid-template-columns:1fr}}
.cblock{margin-bottom:var(--s6)}
.cblock .label{margin-bottom:8px}
.caddr{font-family:'Newsreader',serif; font-size:1.5rem; line-height:1.3; letter-spacing:-.015em}
.clist{display:grid; gap:2px; margin-top:var(--s2)}
.clist a{font-size:1.0625rem; text-decoration:none; font-weight:500; display:inline-block; padding-block:5px; justify-self:start}
@media (hover:hover){.clist a:hover{color:var(--accent)}}
.people-contacts{display:grid; gap:var(--s3); margin-top:var(--s4)}
.pc{display:flex; justify-content:space-between; gap:var(--s4); align-items:baseline;
  padding-block:10px; border-top:1px solid var(--hair-2); font-size:.9375rem}
.pc span{color:var(--ink-3); font-size:.875rem}
.pc a{text-decoration:none; font-weight:500; font-variant-numeric:tabular-nums; display:inline-block; padding-block:5px; white-space:nowrap}
@media (hover:hover){.pc a:hover{color:var(--accent)}}

form{display:grid; gap:var(--s4)}
.field{display:grid; gap:6px}
.field label{font-size:.875rem; font-weight:500; color:var(--ink-2)}
.field input,.field textarea{
  font:inherit; font-size:1rem; padding:12px 14px; border-radius:var(--r);
  border:1px solid var(--hair); background:var(--card); color:var(--ink);
  transition:border-color 160ms ease, box-shadow 160ms ease;
  min-height:48px; width:100%;
}
.field textarea{min-height:120px; resize:vertical; line-height:1.55}
.field input:focus-visible,.field textarea:focus-visible{
  outline:none; border-color:var(--accent);
  box-shadow:0 0 0 3px var(--accent-tint);
}
.consent{display:flex; gap:11px; align-items:flex-start; font-size:.8125rem; color:var(--ink-3); line-height:1.5}
.consent input{width:20px; height:20px; margin:1px 0 0; accent-color:var(--accent); flex:none}
.ftr__bot a{display:inline-block; padding-block:4px}
.formnote{
  font-size:.8125rem; color:var(--ink-2); background:var(--paper-2); border-radius:var(--r);
  padding:12px 14px; display:flex; gap:9px; align-items:flex-start;
}
.formnote svg{flex:none; margin-top:1px; color:var(--ink-3)}

/* ============================ poraštė ============================ */
.ftr{background:var(--d-bg); color:var(--d-text-2); padding-block:var(--s8) var(--s6); font-size:.875rem}
.ftr__top{display:grid; grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,1fr)); gap:var(--s6);
  padding-bottom:var(--s6); border-bottom:1px solid var(--d-hair)}
@media (max-width:760px){.ftr__top{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.ftr__top{grid-template-columns:1fr}}
.ftr h3{font-size:.75rem; font-family:'Archivo',sans-serif; font-weight:600; letter-spacing:.09em;
  text-transform:uppercase; color:var(--d-text-2); margin-bottom:var(--s4); color:hsl(135 10% 58%)}
.ftr ul{list-style:none; margin:0; padding:0; display:grid; gap:4px}
.ftr li a{display:inline-block; padding-block:5px}
.ftr a{color:var(--d-text); text-decoration:none}
@media (hover:hover){.ftr a:hover{color:#fff; text-decoration:underline; text-underline-offset:3px}}
.ftr__brand{margin-bottom:var(--s4)}
.ftr__logo{width:68px; height:58px; color:#fff; display:block}
.ftr__bot{display:flex; flex-wrap:wrap; gap:var(--s3) var(--s5); justify-content:space-between;
  padding-top:var(--s5); font-size:.8125rem; color:hsl(135 10% 55%)}
.ftr__bot a{color:hsl(135 10% 65%)}

/* ============================ slapukai ============================ */
.cookie{
  position:fixed; left:var(--s4); right:var(--s4); bottom:var(--s4); z-index:150;
  max-width:520px; margin-inline:auto;
  background:var(--card); border-radius:var(--r-lg); padding:var(--s5);
  box-shadow:0 0 0 1px var(--hair-2), var(--sh-lg);
  display:grid; gap:var(--s4);
  transition:opacity 220ms var(--e-out), transform 220ms var(--e-out);
}
@starting-style{.cookie{opacity:0; transform:translateY(12px) scale(.97)}}
.cookie[hidden]{display:none}
.cookie h2{font-size:1.0625rem; font-family:'Newsreader',serif}
.cookie p{font-size:.875rem; color:var(--ink-2)}
.cookie__btns{display:flex; flex-wrap:wrap; gap:var(--s2)}
.cookie .btn{min-height:42px; font-size:.875rem; flex:1 1 auto}

/* ============================ animacija ============================ */
.rv{opacity:0; transform:translateY(10px)}
.rv.is-in{opacity:1; transform:none; transition:opacity 520ms var(--e-out), transform 520ms var(--e-out)}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important; transition-duration:.01ms !important}
  .rv{opacity:1; transform:none}
  .chart__marker{transition:none}
}
.vh{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden;
  clip:rect(0 0 0 0); white-space:nowrap; border:0}

/* --- formos patikra ir spąstai robotams --- */
.honey{position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden}
.field__err{margin:6px 0 0; font-size:.8125rem; color:var(--klaida)}
.field input[aria-invalid="true"],
.field textarea[aria-invalid="true"]{border-color:var(--klaida); box-shadow:0 0 0 3px hsl(0 60% 40% / .12)}

/* ============================ tekstiniai puslapiai ============================ */
/* Privatumo, slapukų ir kiti ilgo teksto puslapiai. Matuoklis - apie 68 ženklai
   eilutėje: tiek akis perbėga be pastangų. */
.tekstas{max-width:none}
.tekstas h1{max-width:22ch; margin-top:var(--s3)}
.tekstas .label{margin-bottom:var(--s4)}
.tekstas .lead{max-width:60ch; margin-top:var(--s4)}

.tekstas__b{max-width:68ch; margin-top:var(--s8)}
.tekstas__b > * + *{margin-top:var(--s4)}
.tekstas__b p{color:var(--ink-2); line-height:1.7}
.tekstas__b strong{color:var(--ink); font-weight:600}

.tekstas__b h2{
  font-size:1.5rem; margin-top:var(--s8); padding-top:var(--s5);
  border-top:1px solid var(--hair-2);
}
.tekstas__b h2:first-child{margin-top:0; padding-top:0; border-top:0}
.tekstas__b h3{font-size:1.125rem; margin-top:var(--s6)}
.tekstas__b h2 + p, .tekstas__b h3 + p{margin-top:var(--s3)}

.tekstas__b ul, .tekstas__b ol{margin-top:var(--s4); padding-left:0; display:grid; gap:10px}
.tekstas__b ul{list-style:none}
.tekstas__b ul li{position:relative; padding-left:20px; color:var(--ink-2)}
.tekstas__b ul li::before{
  content:""; position:absolute; left:2px; top:.66em; width:6px; height:6px;
  border-radius:99px; background:var(--accent);
}
.tekstas__b ol{padding-left:20px}
.tekstas__b ol li{color:var(--ink-2); padding-left:4px}

.tekstas__b table{
  width:100%; border-collapse:collapse; margin-top:var(--s5);
  font-size:.9375rem; text-align:left;
}
.tekstas__b thead th{
  font-family:'Archivo',sans-serif; font-size:.75rem; font-weight:600;
  letter-spacing:.09em; text-transform:uppercase; color:var(--ink-3);
  padding:0 var(--s4) var(--s3) 0; border-bottom:1px solid var(--hair);
}
.tekstas__b tbody td{
  padding:var(--s3) var(--s4) var(--s3) 0;
  border-bottom:1px solid var(--hair-2); color:var(--ink-2); vertical-align:top;
}
.tekstas__b tbody td:first-child{color:var(--ink); font-weight:500}
.tekstas__b code{
  font-family:ui-monospace,'SFMono-Regular',Menlo,monospace; font-size:.875em;
  background:var(--paper-2); padding:2px 6px; border-radius:4px; color:var(--ink);
}
.tekstas__b > .wide{max-width:none; overflow-x:auto}


/* Nuorodos redaguojamame tekste gauna tą patį stilių kaip .tlink,
   nes turinio valdymo sistema klasių nepriskiria. */
.rrow li a, .rrow p a, .faq__a a, .vak__b p a, .tekstas__b p a, .tekstas__b li a{
  color:var(--accent); text-decoration:underline; text-underline-offset:3px;
  text-decoration-thickness:1px; text-decoration-color:color-mix(in srgb, var(--accent) 42%, transparent);
  transition:text-decoration-color 160ms ease, color 160ms ease;
}
@media (hover:hover){
  .rrow li a:hover, .rrow p a:hover, .faq__a a:hover,
  .vak__b p a:hover, .tekstas__b p a:hover, .tekstas__b li a:hover{
    color:var(--accent-2); text-decoration-color:currentColor;
  }
}

/* Slenkama lentelė - su klaviatūros fokusu, kad būtų prieinama. */
.lentele{overflow-x:auto; margin-top:var(--s5)}
.lentele:focus-visible{outline:2px solid var(--accent); outline-offset:3px; border-radius:var(--r)}
.lentele table{margin-top:0}

/* ---------------------------------------------------------------
   Mobilus meniu
   --------------------------------------------------------------- */
.burger{
  display:none; width:44px; height:44px; flex:0 0 auto;
  align-items:center; justify-content:center; gap:5px; flex-direction:column;
  background:transparent; border:1px solid var(--hair); border-radius:8px;
  cursor:pointer; padding:0; margin-left:8px;
}
.burger__b{display:block; width:18px; height:2px; background:var(--ink-2); border-radius:2px;
  transition:transform 180ms ease, opacity 180ms ease}
.burger.is-on .burger__b:first-child{transform:translateY(3.5px) rotate(45deg)}
.burger.is-on .burger__b:last-child{transform:translateY(-3.5px) rotate(-45deg)}
@media (max-width:1000px){.burger{display:flex}}

.mnav{border-top:1px solid var(--hair); background:var(--paper)}
.mnav__in{display:grid; gap:2px; padding-block:var(--s4)}
.mnav a{
  padding:12px 4px; border-radius:6px; text-decoration:none;
  color:var(--ink-2); font-size:1rem; min-height:44px; display:flex; align-items:center;
}
.mnav a:not(.mnav__cta){border-bottom:1px solid var(--hair-2)}
.mnav a.mnav__cta{margin-top:var(--s4); justify-content:center; color:#fff; border-bottom:0}
@media (min-width:1001px){.mnav{display:none}}

/* ---------------------------------------------------------------
   Kontaktų skilties tipografija suvienodinta.
   Anksčiau adresas buvo serifinis 1.5rem, telefonas 1.0625rem -
   viename stulpelyje skirtingi šriftai atrodė kaip klaida.
   --------------------------------------------------------------- */
.caddr{font-family:inherit; font-size:1.0625rem; font-weight:500; line-height:1.5; letter-spacing:normal}
.cnote{font-size:.9375rem; color:var(--ink-2); margin-top:6px; max-width:46ch}
.reqs--inline{margin-top:var(--s3)}
.reqs--inline dt{font-size:.875rem; color:var(--ink-3)}
.reqs--inline dd{font-size:.9375rem; font-weight:500}

/* ---------------------------------------------------------------
   Slenkama nuotraukų galerija
   --------------------------------------------------------------- */
.gallery{margin-top:clamp(32px,4vw,48px)}
.gallery__track{
  display:grid; grid-auto-flow:column; grid-auto-columns:min(78vw,340px);
  gap:var(--s5); overflow-x:auto; padding-bottom:var(--s4);
  scroll-snap-type:x mandatory; scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
}
.gallery__track > figure{scroll-snap-align:start; margin:0}
.gallery__track img{
  width:100%; height:auto; aspect-ratio:4/3; object-fit:cover;
  border-radius:10px; background:var(--paper-2);
}
.gallery__track figcaption{margin-top:var(--s3); font-size:.8125rem; color:var(--ink-3)}
.gallery__track:focus-visible{outline:2px solid var(--accent); outline-offset:4px}
.gallery__hint{margin-top:var(--s3); font-size:.8125rem; color:var(--ink-3)}
@media (min-width:1001px){.gallery__hint{display:none}}
