/* Wish Build, wishbuild.lt.
   Kryptis (Robertas 2026-10-26 iš lentos išrinko Vipp, Henrybuilt, Snøhetta): nuotraukos veda, baltas fonas,
   rašalo juoda, viena tamsaus ąžuolo juosta objektams (Vipp), didelis grotesk sakinys kairėje (Snøhetta),
   ramus serifinis teiginys ant nuotraukos (Henrybuilt), objektų pavadinimai pasvirusiu serifu ant nuotraukų (Vipp).
   Albert Sans visam tekstui, Newsreader tik teiginiui ir objektų pavadinimams. Kampai beveik statūs, nuotraukos
   be apvalinimo, kortelių ir šešėlių nėra: hierarchiją daro dydis, oras ir plonos linijos.
   Valdymas (valdymas.html) kol kas naudoja seną site.css.

   2026-10-27 (Tomo laiškas „daugiau vientisumo“): šiltas balkšvas fonas visame puslapyje, tamsus tekstas ir VIENA
   akcentinė spalva, tamsiai žalia (--akcentas), mygtukams, pasirinkimams, nuorodoms ir ženklui. Ąžuolo juosta
   objektams išimta. Kortelės ir nuotraukos vienodų proporcijų (koliažo poslinkiai išimti).

   2026-10-28 (Tomas telefonu Robertui: „labiau patiko, kaip buvo prieš tai, per daug baltumo“, „kitos spalvos logotipas,
   išryškinti“): spalvota juosta objektams ir interjerams grąžinta. Pirma ruda #6E4C34 (Robertas: „biski mid“), tada iš
   5 variantų lentos Robertas „gal 4“: tamsiai mėlyna #243240 juostai, mygtukams ir pasirinkimams, ženklas ir poraštės
   „Wish Build“ ąžuolo #A86F3C (--zenklo-spalva). Fonas liko šiltas balkšvas.

   2026-11-04 (Tomas telefonu Robertui: „tamsiai žalia, kaip demo atrodė“): mėlyna pakeista pirmojo demo (09-23)
   samanų žalia #24372C (juosta, eiga, poraštė, mygtukai), ženklas ir poraštės „Wish Build“ demo žalvario #A87D3F.
   Išdėstymas nekeistas. Mėlyna versija: git 1418955e. */

:root {
  --fonas: #F6F3EE;
  --fonas-2: #ECE7DF;
  --rasalas: #1C1A17;
  --tekstas: #3A3732;
  --blankus: #6B665E;
  --linija: #E0D9CE;
  --linija-tamsi: #C6BDB0;
  --akcentas: #24372C;
  --akcentas-2: #3E5A49;
  --akcentas-sviesus: #F4F2EE;
  --klaida: #9B2C1F;
  --pilka-zodis: #57534B;
  /* objektų juosta (objektai, interjerai, SEO puslapių objekto blokas); vardas „azuolas“ istorinis, spalva dabar tamsiai žalia */
  --azuolas: #24372C;
  --azuolas-tekstas: #F1EEE7;
  --azuolas-blankus: #AFBFB3;
  /* ženklas ir didelis poraštės „Wish Build“: žalvario spalva (pirmasis demo), kad išsiskirtų */
  --zenklo-spalva: #A87D3F;

  /* senų pavadinimų sinonimai privatumo ir 404 puslapiams */
  --anglis: var(--rasalas);
  --samana: var(--rasalas);

  --sans: 'Albert Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --serif: 'Newsreader', Georgia, 'Times New Roman', serif;
  --plotis: 1320px;
  --r: 2px;
  color-scheme: light;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--fonas);
  color: var(--tekstas);
  font-family: var(--sans);
  font-size: 17px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
h1, h2, h3 { font-family: var(--sans); color: var(--rasalas); font-weight: 400; margin: 0; letter-spacing: -0.02em; line-height: 1.1; text-wrap: balance; }
h3 { font-weight: 500; letter-spacing: -0.01em; }
p { margin: 0 0 1em; }
p:last-child { margin-bottom: 0; }
a { color: inherit; }
img { max-width: 100%; display: block; }
button { font: inherit; color: inherit; }
[hidden] { display: none !important; }
:focus-visible { outline: 2px solid var(--akcentas); outline-offset: 3px; }

.vidus {
  width: 100%;
  max-width: var(--plotis);
  margin: 0 auto;
  padding-left: max(40px, env(safe-area-inset-left, 0px));
  padding-right: max(40px, env(safe-area-inset-right, 0px));
}

/* ---------- mygtukai ---------- */

.mygt {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 22px;
  border: 1px solid var(--akcentas);
  border-radius: var(--r);
  background: var(--akcentas);
  color: var(--akcentas-sviesus);
  font-size: 15.5px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  cursor: pointer;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.mygt:hover { background: var(--akcentas-2); border-color: var(--akcentas-2); }
.mygt-tuscias { background: transparent; color: var(--akcentas); border-color: var(--akcentas); }
.mygt-tuscias:hover { background: var(--akcentas); color: var(--akcentas-sviesus); border-color: var(--akcentas); }
.mygt-sviesus { background: var(--fonas); color: var(--akcentas); border-color: var(--fonas); }
.mygt-sviesus:hover { background: #fff; border-color: #fff; }
.mygt-mazas { padding: 10px 16px; font-size: 14.5px; }
.mygt-didelis { width: 100%; padding: 17px 22px; font-size: 16.5px; }
.mygt:disabled { opacity: .6; cursor: progress; }

.nuoroda-mygt {
  background: none;
  border: 0;
  padding: 0 0 2px;
  border-bottom: 1px solid currentColor;
  cursor: pointer;
  font-size: 15px;
  font-weight: 500;
}

/* ---------- antraštė ---------- */

.virsus {
  transition: transform .45s cubic-bezier(.2, .7, .2, 1);
  position: sticky;
  top: env(safe-area-inset-top, 0px);
  z-index: 40;
  background: rgba(246, 243, 238, .95);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--linija);
}
.virsus-vidus { display: flex; align-items: center; gap: 32px; height: 72px; }
.zenklas { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; color: var(--rasalas); }
.zenklas-marke { flex: none; color: var(--zenklo-spalva); margin-top: -3px; }
.zenklas-tekstas { font-size: 19px; font-weight: 600; letter-spacing: -0.015em; line-height: 1; color: var(--rasalas); }
.meniu { display: flex; gap: 28px; margin-left: 24px; font-size: 15px; }
.meniu a { text-decoration: none; color: var(--tekstas); }
.meniu a:hover { color: var(--akcentas); text-decoration: underline; text-underline-offset: 6px; }
.virsus-veiksmai { margin-left: auto; display: flex; align-items: center; gap: 20px; }
.virsus-tel { text-decoration: none; font-size: 15px; font-weight: 500; color: var(--akcentas); font-variant-numeric: tabular-nums; white-space: nowrap; }
.tel-mygt { margin-left: auto; text-decoration: none; font-size: 15px; font-weight: 500; color: var(--rasalas); white-space: nowrap; }
.meniu-mygt {
  display: none;
  margin-left: auto;
  background: transparent;
  border: 1px solid var(--akcentas);
  color: var(--akcentas);
  border-radius: var(--r);
  padding: 9px 14px;
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
}
.meniu-mob {
  position: fixed;
  inset: 0;
  z-index: 60;
  background: var(--fonas);
  padding: env(safe-area-inset-top, 0px) max(20px, env(safe-area-inset-right, 0px)) 32px max(20px, env(safe-area-inset-left, 0px));
  display: flex;
  flex-direction: column;
  overflow-y: auto;
}
.meniu-mob-virsus { display: flex; justify-content: space-between; align-items: center; height: 64px; margin-bottom: 18px; }
.meniu-uzdaryti { background: none; border: 1px solid var(--linija-tamsi); border-radius: var(--r); padding: 9px 14px; font-size: 15px; font-weight: 500; cursor: pointer; }
.meniu-mob > a { text-decoration: none; color: var(--rasalas); font-size: 30px; letter-spacing: -0.02em; padding: 14px 0; border-bottom: 1px solid var(--linija); }
.meniu-mob > a.meniu-mob-tel { font-size: 20px; border-bottom: 0; margin-top: 18px; font-weight: 500; }

/* ---------- pirmas ekranas ----------
   Tekstas kairėje, dešinėje stačia „po“ nuotrauka visu aukščiu (šaltinis portretinis, todėl nieko nenukerpama).
   Ant jos kampo mažesnė „prieš“ nuotrauka su baltu rėmeliu (koliažas); paspaudus jos apsikeičia, slenkant mažoji
   juda greičiau (gyvas puslapis). Atsidarius didžioji lėtai nusileidžia, mažoji įplaukia iš apačios. */

.hero { padding-top: 40px; }
.hero-tinklas {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
  gap: 72px;
  align-items: center;
  min-height: calc(100svh - 72px - 40px);
  padding-bottom: 40px;
}
.hero h1 { font-size: clamp(46px, 5.7vw, 90px); line-height: 1.04; letter-spacing: -0.035em; max-width: 10.5em; }
.hero-tekstas p { font-size: 18.5px; color: var(--tekstas); max-width: 27em; margin: 28px 0 0; }
.hero-veiksmai { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 32px; }

.hero-foto { position: relative; margin: 0; }
.hero-didele {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  max-height: min(calc(100svh - 72px - 96px), 760px);
  min-height: 440px;
  padding: 0;
  border: 0;
  border-radius: 24px;
  overflow: hidden;
  background: var(--fonas-2);
  cursor: pointer;
}
.hero-didele img, .hero-mazoji img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: opacity .6s ease; }
.hero-didele img { object-position: center 30%; }
.hero-didele::after { content: ''; position: absolute; inset: auto 0 0 0; height: 34%; background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, .45)); pointer-events: none; }
.hero-foto[data-rodyti="po"] .hero-didele .hero-pries, .hero-foto[data-rodyti="pries"] .hero-didele .hero-po { opacity: 0; }
.hero-foto[data-rodyti="po"] .hero-mazoji .hero-po, .hero-foto[data-rodyti="pries"] .hero-mazoji .hero-pries { opacity: 0; }

.hero-mazoji {
  position: absolute;
  z-index: 2;
  left: -96px;
  bottom: 64px;
  width: 34%;
  aspect-ratio: 4 / 5;
  padding: 0;
  border: 7px solid var(--fonas);
  border-radius: 18px;
  overflow: hidden;
  background: var(--fonas);
  box-shadow: 0 22px 50px rgba(20, 18, 16, .2);
  cursor: pointer;
  translate: 0 var(--paralaksas, 0px);
  transition: scale .4s cubic-bezier(.2, .7, .2, 1);
}
.hero-mazoji:hover { scale: 1.03; }
.hero-mazoji img { border-radius: 11px; }
.hero-mazoji-zyme { position: absolute; z-index: 1; left: 10px; bottom: 10px; padding: 5px 11px; border-radius: 20px; background: rgba(246, 243, 238, .95); color: var(--akcentas); font-size: 13px; font-weight: 500; }
.hero-parasas { position: absolute; z-index: 1; right: 24px; bottom: 22px; left: 40%; text-align: right; color: #fff; display: flex; flex-direction: column; gap: 2px; pointer-events: none; }
.hero-parasas i { font-family: var(--serif); font-size: clamp(22px, 2vw, 30px); line-height: 1.15; }
.hero-parasas span { font-size: 14px; opacity: .85; }

html.anim .hero-didele img { animation: nusileidzia 2.8s cubic-bezier(.2, .7, .2, 1) both; }
html.anim .hero-mazoji { animation: iplaukia 1.1s cubic-bezier(.2, .7, .2, 1) .55s both; }
@keyframes nusileidzia { from { scale: 1.06; } to { scale: 1; } }
@keyframes iplaukia { from { opacity: 0; transform: translateY(48px); } to { opacity: 1; transform: none; } }

/* ---------- sekcijos ---------- */

.sekcija { padding: 128px 0; }
.sekcijos-galva { max-width: 52rem; margin-bottom: 56px; }
.sekcijos-galva h2, .uzklausa-tekstas h2, .eiga-tinklas h2 { font-size: clamp(34px, 3.8vw, 56px); letter-spacing: -0.03em; margin-bottom: 14px; }
.sekcijos-galva p { font-size: 18px; color: var(--blankus); margin: 0; }

/* paslaugos */
.paslaugos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.paslauga { text-decoration: none; color: inherit; }
.paslauga { display: flex; flex-direction: column; }
.paslauga-foto { position: relative; display: block; aspect-ratio: 4 / 5; overflow: hidden; background: var(--fonas-2); }
.paslauga-zyme { position: absolute; left: 14px; bottom: 14px; padding: 5px 11px; border-radius: 20px; background: rgba(246, 243, 238, .94); color: var(--akcentas); font-size: 13px; font-weight: 500; line-height: 1.3; }
.paslauga-foto img { width: 100%; height: 100%; object-fit: cover; transition: transform 1s cubic-bezier(.2, .7, .2, 1); }
.paslauga:hover .paslauga-foto img { transform: scale(1.03); }
.paslauga:hover .paslauga-pav { color: var(--akcentas); }
.paslauga-pav { display: block; margin-top: 18px; font-size: 20px; font-weight: 500; letter-spacing: -0.01em; color: var(--rasalas); line-height: 1.25; }
.paslauga-p { display: block; margin-top: 6px; font-size: 15.5px; color: var(--blankus); }
.paveldas {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px 48px;
  align-items: center;
  margin-top: 72px;
  padding-top: 32px;
  border-top: 1px solid var(--linija);
}
.paveldas h3 { font-size: 24px; margin-bottom: 6px; }
.paveldas p { color: var(--blankus); max-width: 44em; margin: 0; }

/* teiginys ant nuotraukos (Henrybuilt) */
.teiginys {
  position: relative;
  min-height: clamp(460px, 74vh, 760px);
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--akcentas);
  color: #fff;
}
.teiginys-fonas { position: absolute; inset: -10% 0; width: 100%; height: 120%; object-fit: cover; will-change: transform; }
.teiginys::after { content: ''; position: absolute; inset: 0; background: rgba(15, 24, 19, .55); }
.teiginys-vidus { position: relative; z-index: 1; text-align: center; padding-block: 96px; }
.teiginys-tekstas { font-family: var(--serif); font-weight: 400; font-size: clamp(30px, 3.7vw, 54px); line-height: 1.18; letter-spacing: -0.01em; max-width: 20em; margin: 0 auto 22px; text-wrap: balance; }
.teiginys-kas { font-size: 15px; opacity: .8; margin: 0; }

/* objektai spalvotoje juostoje (Vipp; 2026-10-28 grąžinta, nuo 11-04 tamsiai žalia) */
.sekcija-azuolas { background: var(--azuolas); color: var(--azuolas-tekstas); padding: 120px 0; }
.sekcija-azuolas :focus-visible { outline-color: var(--azuolas-tekstas); }
.darbai-antraste { font-family: var(--serif); font-weight: 400; color: var(--azuolas-tekstas); text-align: center; font-size: clamp(36px, 4.2vw, 60px); letter-spacing: -0.015em; margin-bottom: 64px; }
.sekcija-darbai .objekto-vieta { color: var(--azuolas-blankus); }
.sekcija-darbai .objekto-p { color: var(--azuolas-tekstas); }
.sekcija-darbai .objekto-visos { color: var(--azuolas-tekstas); }
.sekcija-darbai .interjerai-blokas h3 { color: var(--azuolas-tekstas); }
.sekcija-darbai .objekto-foto, .sekcija-darbai .interjero-kadras { background: rgba(255, 255, 255, .06); }
.objektai {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 64px 28px;
  max-width: var(--plotis);
  margin: 0 auto;
  padding-left: max(40px, env(safe-area-inset-left, 0px));
  padding-right: max(40px, env(safe-area-inset-right, 0px));
}
.objektas { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; }
/* 7 objektai (2026-11-02): plačiame ekrane 4 stulpeliai, kad paskutinėje eilėje neliktų vienos kortelės (3 + 3 + 1) */
@media (min-width: 1181px) {
  .objektai:has(> .objektas:nth-child(7)) { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 56px 24px; }
}
.objekto-langas { width: 100%; }
.objekto-foto { position: relative; display: block; width: 100%; aspect-ratio: 4 / 5; padding: 0; border: 0; background: var(--fonas-2); overflow: hidden; cursor: pointer; }
.objekto-foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: opacity .45s ease; }
.objekto-foto .kadras-pries { opacity: 0; }
.objektas[data-rodyti="pries"] .kadras-pries { opacity: 1; }
.objektas[data-rodyti="pries"] .kadras-po { opacity: 0; }
.objekto-foto::after { content: ''; position: absolute; inset: auto 0 0 0; height: 45%; background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, .55)); }
.objekto-foto-pav { position: absolute; z-index: 1; left: 18px; right: 18px; bottom: 16px; text-align: left; color: #fff; font-family: var(--serif); font-size: 25px; line-height: 1.15; }
.objekto-langas { position: relative; }
.objekto-langas .jungiklis { position: absolute; z-index: 2; top: 12px; right: 12px; display: inline-flex; padding: 3px; gap: 2px; border-radius: 20px; background: rgba(246, 243, 238, .94); }
.objektas .jungiklis-mygt { padding: 5px 11px; font-size: 13px; font-weight: 500; border: 0; border-radius: 16px; background: transparent; color: var(--pilka-zodis); cursor: pointer; }
.objektas .jungiklis-mygt[aria-pressed="true"] { background: var(--akcentas); color: var(--akcentas-sviesus); }
.objekto-langas .jungiklis-vienas { padding: 5px 12px; font-size: 13px; font-weight: 500; color: var(--akcentas); }
.objekto-vieta { font-size: 14.5px; color: var(--blankus); margin: 16px 0 0; }
.objekto-p { font-size: 15.5px; color: var(--tekstas); margin: 4px 0 14px; }
.objekto-visos { margin-top: auto; color: var(--akcentas); font-size: 14.5px; }
.interjerai-blokas { margin-top: 88px; }
.interjerai-blokas h3 { font-size: 20px; margin-bottom: 18px; }
.interjerai { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.interjero-kadras { position: relative; display: block; padding: 0; border: 0; aspect-ratio: 4 / 3; overflow: hidden; cursor: pointer; background: var(--fonas-2); }
.interjero-kadras img { width: 100%; height: 100%; object-fit: cover; transition: transform 1s cubic-bezier(.2, .7, .2, 1); }
.interjero-kadras:hover img { transform: scale(1.03); }
.mini-zyme { display: none; }

/* ---------- skaičiuoklė ----------
   Be rėmelių: klausimai plonomis linijomis atskirtomis eilutėmis (Snøhetta sąrašas), atsakymai dideliais žodžiais,
   pasirinktas juodas, kiti pilki. Šone tikras objektas ir didelė plona suma (Apple / Henrybuilt). */

.pavyzdine-juosta { font-size: 14.5px; color: var(--blankus); margin-top: 10px !important; }
.samata-tinklas { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: 80px; align-items: start; }
.samata-forma { min-width: 0; border-bottom: 1px solid var(--linija); }

.klausimas { border: 0; margin: 0; padding: 22px 0 24px; border-top: 1px solid var(--linija); min-width: 0; }
.klausimas legend { float: left; width: 100%; padding: 0; margin: 0 0 12px; font-size: 14px; color: var(--blankus); }
.klausimas legend + * { clear: both; }
.klausimo-uzuomina { margin: 12px 0 0; font-size: 14.5px; color: var(--blankus); }

.zodziai { display: flex; flex-wrap: wrap; gap: 8px 28px; }
.zodis { position: relative; cursor: pointer; }
.zodis input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.zodis span {
  display: inline-block;
  font-size: clamp(21px, 1.88vw, 27px);
  letter-spacing: -0.025em;
  line-height: 1.25;
  color: var(--pilka-zodis);
  padding-bottom: 3px;
  border-bottom: 1.5px solid transparent;
  transition: color .15s ease, border-color .15s ease;
}
.zodis:hover span { color: var(--akcentas); border-bottom-color: var(--linija-tamsi); }
.zodis input:checked + span { color: var(--akcentas); border-bottom: 2px solid var(--akcentas); font-weight: 500; }
.zodis input:focus-visible + span { outline: 2px solid var(--rasalas); outline-offset: 4px; }

.paketai { display: flex; flex-direction: column; }
.paketas { position: relative; cursor: pointer; }
.paketas input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.paketas-vidus { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 24px; align-items: baseline; padding: 10px 0; }
.paketas-pav { font-size: clamp(21px, 1.88vw, 27px); letter-spacing: -0.025em; line-height: 1.25; color: var(--pilka-zodis); transition: color .15s ease; }
.paketas-kaina { font-size: 16px; color: var(--pilka-zodis); font-variant-numeric: tabular-nums; white-space: nowrap; transition: color .15s ease; }
.paketas-aprasas { grid-column: 1 / -1; display: none; font-size: 14.5px; color: var(--blankus); }
.paketas:hover .paketas-pav { color: var(--akcentas); }
.paketas input:checked + .paketas-vidus .paketas-pav, .paketas input:checked + .paketas-vidus .paketas-kaina { color: var(--akcentas); font-weight: 500; }
.paketas input:checked + .paketas-vidus .paketas-aprasas { display: block; }
.paketas input:focus-visible + .paketas-vidus { outline: 2px solid var(--rasalas); outline-offset: 4px; }

.klausimas-plotas { padding-bottom: 32px; }
.plotas-didelis { display: inline-flex; align-items: baseline; gap: 10px; }
.plotas-didelis input {
  width: 3.4ch;
  border: 0;
  border-bottom: 1px solid var(--linija-tamsi);
  border-radius: 0;
  background: transparent;
  padding: 0 0 2px;
  font: inherit;
  font-size: clamp(52px, 5.2vw, 76px);
  font-weight: 300;
  letter-spacing: -0.045em;
  line-height: 1;
  color: var(--rasalas);
  font-variant-numeric: tabular-nums;
  -moz-appearance: textfield;
  appearance: textfield;
}
.plotas-didelis input::-webkit-outer-spin-button, .plotas-didelis input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.plotas-didelis input:focus { outline: none; border-bottom-color: var(--rasalas); }
.plotas-didelis span { font-size: 24px; color: var(--blankus); }
#plotas-slankiklis { display: block; width: 100%; margin: 22px 0 0; height: 22px; background: transparent; -webkit-appearance: none; appearance: none; cursor: pointer; }
#plotas-slankiklis::-webkit-slider-runnable-track { height: 2px; background: var(--linija-tamsi); }
#plotas-slankiklis::-webkit-slider-thumb { -webkit-appearance: none; width: 20px; height: 20px; margin-top: -9px; border-radius: 50%; background: var(--akcentas); border: 3px solid var(--fonas); box-shadow: 0 0 0 1px var(--akcentas); }
#plotas-slankiklis::-moz-range-track { height: 2px; background: var(--linija-tamsi); }
#plotas-slankiklis::-moz-range-progress { height: 2px; background: var(--akcentas); }
#plotas-slankiklis::-moz-range-thumb { width: 14px; height: 14px; border-radius: 50%; background: var(--akcentas); border: 3px solid var(--fonas); box-shadow: 0 0 0 1px var(--akcentas); }
#plotas-slankiklis:focus-visible { outline: 2px solid var(--rasalas); outline-offset: 4px; }

.islankstoma { border-top: 1px solid var(--linija); }
.islankstoma summary { list-style: none; cursor: pointer; display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 22px 30px 22px 0; position: relative; }
.islankstoma summary::-webkit-details-marker { display: none; }
.islankstoma summary::after { content: ''; position: absolute; right: 6px; top: 50%; width: 9px; height: 9px; border-right: 1.5px solid var(--rasalas); border-bottom: 1.5px solid var(--rasalas); transform: translateY(-70%) rotate(45deg); transition: transform .2s ease; }
.islankstoma[open] summary::after { transform: translateY(-30%) rotate(225deg); }
.islankstoma-pav { font-size: clamp(20px, 1.7vw, 24px); letter-spacing: -0.02em; color: var(--rasalas); }
.islankstoma-kiek { font-size: 14px; color: var(--blankus); }
.islankstoma[open] { padding-bottom: 18px; }
.grupes-pastaba { font-size: 14.5px; color: var(--blankus); margin: 0 0 8px; }

.priedai { display: flex; flex-direction: column; }
.priedas { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 18px; align-items: center; padding: 12px 0; border-top: 1px solid var(--linija); }
.priedas-pav { font-size: 16px; color: var(--rasalas); }
.priedas-kaina { font-size: 14px; color: var(--blankus); font-variant-numeric: tabular-nums; }
.priedas-valdiklis { display: flex; justify-content: flex-end; }
.zingsniuotojas { display: inline-flex; align-items: center; border: 1px solid var(--linija-tamsi); border-radius: 20px; overflow: hidden; }
.zingsniuotojas button { width: 38px; height: 38px; border: 0; background: transparent; font-size: 18px; cursor: pointer; color: var(--rasalas); line-height: 1; }
.zingsniuotojas button:hover { background: var(--fonas-2); }
.zingsniuotojas input { width: 40px; height: 38px; border: 0; background: transparent; text-align: center; font: inherit; font-size: 16px; color: var(--rasalas); -moz-appearance: textfield; appearance: textfield; }
.zingsniuotojas input::-webkit-outer-spin-button, .zingsniuotojas input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.zingsniuotojas input:focus { outline: none; background: var(--fonas-2); }
.plotas-skaicius { display: inline-flex; align-items: baseline; gap: 6px; border-bottom: 1px solid var(--linija-tamsi); }
.plotas-skaicius input { width: 64px; border: 0; background: transparent; padding: 6px 0; font: inherit; font-size: 18px; color: var(--rasalas); text-align: right; font-variant-numeric: tabular-nums; -moz-appearance: textfield; appearance: textfield; }
.plotas-skaicius input::-webkit-outer-spin-button, .plotas-skaicius input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.plotas-skaicius input:focus { outline: none; }
.plotas-skaicius span { color: var(--blankus); font-size: 14px; }
.perjungiklis { display: inline-flex; align-items: center; cursor: pointer; }
.perjungiklis input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.perjungiklis-rutulys { width: 44px; height: 26px; border-radius: 13px; background: #D9D6CF; position: relative; transition: background .18s ease; flex: none; }
.perjungiklis-rutulys::after { content: ''; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; transition: transform .18s ease; }
.perjungiklis input:checked + .perjungiklis-rutulys { background: var(--akcentas); }
.perjungiklis input:checked + .perjungiklis-rutulys::after { transform: translateX(18px); }
.perjungiklis input:focus-visible + .perjungiklis-rutulys { outline: 2px solid var(--rasalas); outline-offset: 2px; }
.sprendimai { display: flex; flex-direction: column; }
.sprendimas { display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: center; padding: 11px 0; border-top: 1px solid var(--linija); cursor: pointer; }
.sprendimas input { width: 19px; height: 19px; accent-color: var(--akcentas); margin: 0; flex: none; }
.sprendimas-pav { font-size: 16px; color: var(--rasalas); }
.sprendimas-efektas { font-size: 13.5px; color: var(--blankus); }
.sprendimas-efektas:empty { display: none; }
.sprendimas.netaikoma { opacity: .5; cursor: default; }

/* lapas: tikras objektas ir suma */
.samata-lapas { position: sticky; top: 96px; min-width: 0; }
.lapas-foto { margin: 0 0 22px; }
.lapas-foto img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; background: var(--fonas-2); }
.lapas-foto figcaption { margin-top: 10px; font-family: var(--serif); font-style: italic; font-size: 16px; color: var(--tekstas); }
.lapas-virsus { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding-top: 18px; border-top: 2px solid var(--akcentas); }
.lapas-pav { font-size: 14px; color: var(--akcentas); font-weight: 600; }
.lapas-data { font-size: 14px; color: var(--blankus); }
.lapas-suma { display: flex; flex-direction: column; gap: 2px; margin-top: 14px; }
.lapas-suma-nuo { font-size: clamp(46px, 4.6vw, 64px); font-weight: 300; letter-spacing: -0.045em; line-height: 1; color: var(--rasalas); font-variant-numeric: tabular-nums; }
.lapas-suma-iki { font-size: 17px; color: var(--blankus); margin-top: 8px; }
.lapas-suma-iki b { color: var(--rasalas); font-weight: 500; font-variant-numeric: tabular-nums; }
.lapas-suma-pvm { font-size: 14px; color: var(--blankus); margin-left: 4px; }
.lapas-be-pvm { margin: 4px 0 0; font-size: 15px; color: var(--tekstas); font-variant-numeric: tabular-nums; }
.lapas-trukme { margin: 18px 0 0; padding-top: 16px; border-top: 1px solid var(--linija); font-size: 16px; color: var(--rasalas); }
.lapas-neieina { margin: 6px 0 0; color: var(--blankus); font-size: 14.5px; }
.lapas-neieina:empty { display: none; }
.lapas-apziuros { margin-top: 16px; padding: 12px 14px; background: var(--fonas-2); font-size: 14.5px; color: var(--tekstas); }
.lapas-apziuros-pav { display: block; font-weight: 600; color: var(--rasalas); margin-bottom: 4px; }
.lapas-apziuros ul { margin: 0; padding-left: 18px; }
.lapas-veiksmai { margin-top: 24px; }
.lapas-veiksmai .mygt { width: 100%; padding-block: 16px; }
.lapas-pastaba { font-size: 13.5px; color: var(--blankus); margin: 10px 0 0; }
.lapas-suma-nuo.gavo { animation: pulsas .45s ease; }
@keyframes pulsas { 0% { color: var(--azuolas); } 100% { color: var(--rasalas); } }
.lapas-isami { margin-top: 18px; border-top: 1px solid var(--linija); }
.lapas-isami > summary { list-style: none; cursor: pointer; padding: 16px 24px 4px 0; position: relative; font-weight: 500; font-size: 15px; color: var(--rasalas); }
.lapas-isami > summary::-webkit-details-marker { display: none; }
.lapas-isami > summary::after { content: ''; position: absolute; right: 4px; top: 50%; width: 8px; height: 8px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: translateY(-30%) rotate(45deg); transition: transform .2s ease; }
.lapas-isami[open] > summary::after { transform: translateY(0) rotate(225deg); }
.lapas-blokas { margin-top: 22px; }
.lapas-blokas h3 { font-size: 15px; font-weight: 600; margin-bottom: 8px; }
.lapas-sudetis { list-style: none; margin: 0; padding: 0; font-size: 14.5px; }
.lapas-sudetis li { padding: 9px 0; border-bottom: 1px solid var(--linija); }
.lapas-sudetis li:last-child { border-bottom: 0; }
.lapas-sudetis li > b { display: block; font-weight: 600; color: var(--rasalas); }
.lapas-sudetis .detale { display: block; font-size: 13px; color: var(--blankus); margin-top: 2px; line-height: 1.45; }
.lapas-sudetis .detale b { font-weight: 600; color: var(--tekstas); }
.lapas-salygos { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 18px; }
.lapas-salygos ul { margin: 0; padding-left: 16px; font-size: 13.5px; color: var(--tekstas); line-height: 1.45; }
.lapas-salygos li { margin: 3px 0; }
.lapas-salygos small { color: var(--blankus); }
.lapas-salygos > p { grid-column: 1 / -1; }
.trukme-taisykle { list-style: none; margin: 0; padding: 0; font-size: 14px; }
.trukme-taisykle li { display: grid; grid-template-columns: 1fr auto; gap: 0 12px; padding: 7px 0; border-bottom: 1px solid var(--linija); }
.trukme-taisykle li:last-child { border-bottom: 0; }
.trukme-taisykle span { color: var(--rasalas); }
.trukme-taisykle b { font-weight: 500; color: var(--rasalas); font-variant-numeric: tabular-nums; white-space: nowrap; text-align: right; }
.trukme-taisykle small { grid-column: 1 / -1; font-size: 12.5px; color: var(--blankus); line-height: 1.4; }
.etapai, .mokejimai { list-style: none; margin: 0; padding: 0; }
.etapas { padding: 7px 0; }
.etapas-eile { display: flex; justify-content: space-between; gap: 12px; font-size: 14.5px; }
.etapas-eile b { font-weight: 500; color: var(--rasalas); }
.etapas-eile span { color: var(--blankus); font-variant-numeric: tabular-nums; white-space: nowrap; }
.etapas-juosta { height: 3px; background: var(--linija-tamsi); margin-top: 6px; overflow: hidden; }
.etapas-uzpildas { height: 100%; background: var(--akcentas); width: 0; transition: width .6s cubic-bezier(.2, .7, .2, 1); }
.mokejimas { display: flex; justify-content: space-between; gap: 12px; padding: 7px 0; border-bottom: 1px solid var(--linija); font-size: 14.5px; }
.mokejimas:last-child { border-bottom: 0; }
.mokejimas b { font-weight: 500; color: var(--rasalas); font-variant-numeric: tabular-nums; }
.lapas-pageidavimai { margin: 0; padding-left: 18px; font-size: 14px; }

/* ---------- kaip dirbame (Snøhetta sąrašas) ---------- */

.sekcija-eiga { border-top: 1px solid var(--linija); }
.eiga-tinklas { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 48px; align-items: start; }
.zingsniai { list-style: none; margin: 0; padding: 0; }
.zingsniai li { display: grid; grid-template-columns: 48px minmax(0, 15rem) minmax(0, 1fr); gap: 8px 24px; align-items: baseline; padding: 24px 0; border-top: 1px solid var(--linija); }
.zingsniai li:last-child { border-bottom: 1px solid var(--linija); }
.zingsnio-nr { font-size: 15px; color: var(--akcentas); font-weight: 600; font-variant-numeric: tabular-nums; }
.zingsniai h3 { font-size: 22px; }
.zingsniai p { color: var(--blankus); margin: 0; }

/* ---------- užklausa ----------
   Kairėje nuotrauka iki krašto, dešinėje forma be langelių: tik plona linija po kiekvienu lauku. */

.uzklausa-sekcija { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); border-top: 1px solid var(--linija); }
.uzklausa-foto { position: relative; margin: 0; min-height: 640px; overflow: hidden; background: var(--fonas-2); }
.uzklausa-foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.uzklausa-foto::after { content: ''; position: absolute; inset: auto 0 0 0; height: 30%; background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, .45)); }
.uzklausa-foto figcaption { position: absolute; z-index: 1; left: max(40px, env(safe-area-inset-left, 0px)); bottom: 28px; color: #fff; font-family: var(--serif); font-size: 24px; }
.uzklausa-turinys { min-width: 0; max-width: 680px; padding: 120px max(40px, env(safe-area-inset-right, 0px)) 120px 80px; }
.uzklausa-tekstas h2 { font-size: clamp(34px, 3.8vw, 56px); letter-spacing: -0.03em; margin-bottom: 14px; }
.uzklausa-tekstas p { font-size: 18px; color: var(--blankus); margin: 0; }
.uzklausa-tekstas a { color: var(--akcentas); text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; white-space: nowrap; }
.uzklausa-samata { margin-top: 28px; padding: 14px 16px; background: var(--fonas-2); font-size: 14.5px; color: var(--tekstas); }
.uzklausa-samata-pav { display: block; font-weight: 600; color: var(--rasalas); }
.uzklausa-samata-tekstas { display: block; margin: 4px 0 8px; }

.uzklausa-forma { display: grid; gap: 28px; margin-top: 48px; min-width: 0; }
.medus { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.dvi-grupes { display: grid; grid-template-columns: 1fr 1fr; gap: 28px 32px; }
.laukas { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.laukas > span { font-size: 13.5px; color: var(--blankus); }
.laukas small { color: var(--blankus); }
.laukas input, .laukas select, .laukas textarea {
  width: 100%;
  padding: 8px 0 10px;
  border: 0;
  border-bottom: 1px solid var(--linija-tamsi);
  border-radius: 0;
  background: transparent;
  font: inherit;
  font-size: 18px;
  color: var(--rasalas);
}
.laukas select {
  -webkit-appearance: none;
  appearance: none;
  padding-right: 24px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23171716' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 2px center;
  cursor: pointer;
}
.laukas textarea { resize: vertical; min-height: 64px; line-height: 1.5; }
.laukas input::placeholder, .laukas textarea::placeholder { color: var(--pilka-zodis); }
.laukas input:focus, .laukas select:focus, .laukas textarea:focus { outline: none; border-bottom-color: var(--akcentas); box-shadow: 0 1px 0 var(--akcentas); }
.laukas.klaida input { border-bottom-color: var(--klaida); box-shadow: 0 1px 0 var(--klaida); }

.ikelimas { position: relative; display: flex; align-items: center; gap: 14px; padding: 12px 0 14px; border-bottom: 1px solid var(--linija-tamsi); cursor: pointer; color: var(--rasalas); }
.ikelimas input { position: absolute; inset: 0; opacity: 0; width: 100%; height: 100%; cursor: pointer; }
.ikelimas-zenklas { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border: 1px solid var(--akcentas); color: var(--akcentas); border-radius: 50%; font-size: 20px; line-height: 1; flex: none; transition: background .15s ease, color .15s ease; }
.ikelimas-tekstas { font-size: 18px; }
.ikelimas small { margin-left: auto; font-size: 13.5px; color: var(--blankus); }
.ikelimas:hover .ikelimas-zenklas, .ikelimas.velkama .ikelimas-zenklas { background: var(--akcentas); color: var(--akcentas-sviesus); }
.ikelimas.pilna { display: none; }
.perziuros { display: grid; grid-template-columns: repeat(6, 1fr); gap: 8px; margin-top: 12px; }
.perziuros:empty { display: none; }
.perziura { position: relative; aspect-ratio: 1; overflow: hidden; background: var(--linija); }
.perziura img { width: 100%; height: 100%; object-fit: cover; }
.perziura button { position: absolute; top: 4px; right: 4px; width: 24px; height: 24px; border: 0; border-radius: 50%; background: rgba(0, 0, 0, .65); color: #fff; font-size: 15px; line-height: 1; cursor: pointer; }

.sutikimas { font-size: 14.5px; color: var(--tekstas); }
.sutikimas label { display: flex; gap: 10px; align-items: flex-start; cursor: pointer; }
.sutikimas input { margin-top: 3px; accent-color: var(--akcentas); width: 17px; height: 17px; flex: none; }
.sutikimas a { color: var(--rasalas); }
.uzklausa-forma .mygt-didelis { justify-self: start; width: auto; min-width: 260px; padding: 17px 32px; }
.forma-klaida { color: var(--klaida); font-size: 15px; margin: 0; }
.forma-klaida a { color: var(--klaida); font-weight: 600; }
.uzklausa-gauta { margin-top: 40px; background: var(--akcentas); color: #E9E7E2; padding: 36px; }
.uzklausa-gauta h3 { color: #fff; font-size: 30px; font-weight: 400; letter-spacing: -0.02em; margin-bottom: 8px; }
.uzklausa-gauta .kodas { display: block; font-size: 15px; color: #B9B6AF; margin-bottom: 18px; font-variant-numeric: tabular-nums; }
.uzklausa-gauta p { color: #E9E7E2; font-size: 16px; }
.uzklausa-gauta p.gauta-suvestine { background: rgba(255, 255, 255, .08); color: #E9E7E2; padding: 14px 16px; font-size: 14.5px; }
.uzklausa-gauta p.gauta-suvestine b { color: #fff; }
.uzklausa-gauta .mygt { margin-top: 12px; }
#uzklausa-gauta { scroll-margin-top: 96px; }

/* ---------- kontaktai ir poraštė ---------- */

.sekcija-kontaktai { padding: 88px 0; }
.kontaktai { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 32px 40px; margin: 0; }
.kontaktai div { border-top: 1px solid var(--linija); padding-top: 16px; min-width: 0; }
.kontaktai dt { font-size: 13.5px; color: var(--blankus); margin-bottom: 6px; }
.kontaktai dd { margin: 0; font-size: 17px; color: var(--rasalas); overflow-wrap: anywhere; }
.kontaktai dd a { text-decoration: none; }
.kontaktai dd a:hover { text-decoration: underline; text-underline-offset: 4px; }
.kontaktai dd span { display: block; font-size: 14.5px; color: var(--blankus); margin-top: 4px; }

.poraste { border-top: 1px solid var(--linija); padding: 128px 0 calc(28px + env(safe-area-inset-bottom, 0px)); font-size: 14px; color: var(--blankus); }
.poraste-virsus { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: 48px; align-items: end; padding-bottom: 72px; }
.poraste-sakinys { font-size: clamp(34px, 3.8vw, 56px); letter-spacing: -0.03em; line-height: 1.1; color: var(--rasalas); margin: 0; max-width: 14em; text-wrap: balance; }
.poraste-kontaktai { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.poraste-kontaktai a { color: var(--rasalas); text-decoration: none; font-size: 18px; }
.poraste-kontaktai a:hover { text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 1px; }
.poraste-kontaktai .poraste-tel { color: var(--akcentas); font-size: clamp(28px, 2.6vw, 38px); font-weight: 300; letter-spacing: -0.03em; font-variant-numeric: tabular-nums; }
.poraste .kontaktai { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.poraste-zenklas { font-size: clamp(64px, 20vw, 290px); font-weight: 500; letter-spacing: -0.06em; line-height: .8; color: var(--zenklo-spalva); margin: 112px 0 28px -0.04em; white-space: nowrap; }
.poraste-vidus { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; padding-top: 22px; border-top: 1px solid var(--linija); }
.poraste-nuoroda { color: var(--blankus); margin-left: 8px; }
.poraste-nuoroda:hover { color: var(--rasalas); }
.kreditas { font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--blankus); text-decoration: none; }
.kreditas:hover { color: var(--rasalas); }

/* ---------- judesys ---------- */

body.virsus-paslepta .virsus { transform: translateY(-101%); }
.atsiranda { clip-path: inset(12% 0 0 0 round 18px); opacity: 0; transform: translateY(28px); }
.atsiranda.matoma {
  clip-path: inset(0 0 0 0 round 18px);
  opacity: 1;
  transform: none;
  transition: clip-path 1.2s cubic-bezier(.2, .7, .2, 1) var(--velavimas, 0s), opacity .9s ease var(--velavimas, 0s), transform 1.2s cubic-bezier(.2, .7, .2, 1) var(--velavimas, 0s);
}

/* ---------- peržiūros langas ---------- */

.galerija { width: 100vw; height: 100dvh; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; background: #111110; color: #fff; overflow: hidden; }
.galerija[open] { display: grid; grid-template-rows: auto minmax(0, 1fr); }
.galerija::backdrop { background: rgba(17, 17, 16, .6); }
.gal-virsus { display: flex; align-items: center; gap: 16px; padding: 14px max(18px, env(safe-area-inset-right, 0px)) 14px max(18px, env(safe-area-inset-left, 0px)); }
.gal-pav { font-family: var(--serif); font-style: italic; font-size: 20px; flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gal-skaicius { font-size: 14px; color: rgba(255, 255, 255, .7); font-variant-numeric: tabular-nums; }
.gal-uzdaryti, .gal-rodykle { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .1); color: #fff; cursor: pointer; }
.gal-uzdaryti:hover, .gal-rodykle:hover { background: rgba(255, 255, 255, .2); }
.gal-figura { margin: 0; display: grid; grid-template-rows: minmax(0, 1fr) auto; min-height: 0; padding: 0 80px 18px; }
.gal-img { width: 100%; height: 100%; min-height: 0; object-fit: contain; }
html.anim .gal-img.gavo { animation: galAtsiranda .35s ease both; }
@keyframes galAtsiranda { from { opacity: 0; } to { opacity: 1; } }
.gal-parasas { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; padding-top: 12px; max-width: 760px; margin: 0 auto; font-size: 15px; color: rgba(255, 255, 255, .85); }
.kadro-zyme { display: inline-block; font-size: 12.5px; font-weight: 600; padding: 3px 8px; background: rgba(255, 255, 255, .14); color: #fff; }
.kadro-zyme.zyme-po { background: var(--fonas); color: var(--akcentas); }
.gal-data { color: rgba(255, 255, 255, .7); font-size: 14px; }
.gal-aprasas { flex-basis: 100%; }
.gal-rodykle { position: absolute; top: 50%; transform: translateY(-50%); }
.gal-atgal { left: max(18px, env(safe-area-inset-left, 0px)); }
.gal-pirmyn { right: max(18px, env(safe-area-inset-right, 0px)); }

/* ---------- juostos telefone ---------- */

.mob-juosta {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 50;
  display: none;
  gap: 10px;
  padding: 10px max(16px, env(safe-area-inset-right, 0px)) calc(10px + env(safe-area-inset-bottom, 0px)) max(16px, env(safe-area-inset-left, 0px));
  background: rgba(246, 243, 238, .96);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-top: 1px solid var(--linija);
}
.mob-juosta .mygt { flex: 1; padding: 13px 14px; }
.samata-mob {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 52;
  display: none;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px max(16px, env(safe-area-inset-right, 0px)) calc(10px + env(safe-area-inset-bottom, 0px)) max(16px, env(safe-area-inset-left, 0px));
  background: var(--akcentas);
  color: #fff;
}
.samata-mob-tekstas { display: flex; flex-direction: column; line-height: 1.2; min-width: 0; }
.samata-mob-tekstas span { font-size: 12.5px; color: rgba(255, 255, 255, .7); }
.samata-mob-tekstas b { font-size: 23px; font-weight: 300; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; white-space: nowrap; }
.samata-mob .mygt { flex: none; padding: 11px 16px; }
body.samata-juosta-rodoma .mob-juosta { display: none !important; }

/* ---------- pritaikymas ---------- */

@media (max-width: 1120px) {
  .meniu, .virsus-tel { display: none; }
}
@media (max-width: 980px) {
  .samata-tinklas { grid-template-columns: 1fr; gap: 48px; }
  .samata-lapas { position: static; max-width: 560px; }
  .uzklausa-sekcija { grid-template-columns: 1fr; }
  .uzklausa-foto { min-height: 0; aspect-ratio: 4 / 3; }
  .uzklausa-turinys { max-width: 720px; padding: 72px max(40px, env(safe-area-inset-right, 0px)) 88px max(40px, env(safe-area-inset-left, 0px)); }
  .eiga-tinklas { grid-template-columns: 1fr; gap: 24px; }
  .objektai { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; gap: 16px; }
  .objektai::-webkit-scrollbar { display: none; }
  .objektas { flex: 0 0 min(76vw, 380px); scroll-snap-align: start; }
  .interjerai { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; gap: 16px; margin-right: calc(-1 * max(40px, env(safe-area-inset-right, 0px))); padding-right: max(40px, env(safe-area-inset-right, 0px)); }
  .interjerai::-webkit-scrollbar { display: none; }
  .interjero-kadras { flex: 0 0 min(76vw, 380px); scroll-snap-align: start; }
}
@media (max-width: 760px) {
  body { padding-bottom: 76px; font-size: 16.5px; }
  .vidus, .objektai { padding-left: max(16px, env(safe-area-inset-left, 0px)); padding-right: max(16px, env(safe-area-inset-right, 0px)); }
  .objektai { scroll-padding-left: 16px; }
  .virsus-vidus { height: 62px; }
  .virsus-veiksmai { display: none; }
  .meniu-mygt { display: inline-flex; }
  .mob-juosta { display: flex; }
  .samata-mob.rodoma { display: flex; }
  .hero { padding-top: 32px; }
  .hero-tinklas { grid-template-columns: 1fr; gap: 32px; min-height: 0; padding-bottom: 56px; }
  .hero h1 { font-size: 44px; line-height: 1.08; letter-spacing: -0.03em; }
  .hero-tekstas p { font-size: 16.5px; margin-top: 18px; }
  .hero-veiksmai { margin-top: 22px; }
  .hero-veiksmai .mygt-tuscias { display: none; }
  .hero-didele { height: auto; min-height: 0; aspect-ratio: 4 / 5; border-radius: 18px; }
  .hero-mazoji { left: 12px; bottom: -32px; width: 36%; border-width: 5px; border-radius: 14px; }
  .hero-mazoji img { border-radius: 9px; }
  .hero-parasas { right: 16px; bottom: 16px; left: 44%; }
  .hero-parasas i { font-size: 20px; }
  .sekcija { padding: 80px 0; }
  .sekcijos-galva { margin-bottom: 32px; }
  .sekcijos-galva h2, .uzklausa-tekstas h2, .eiga-tinklas h2 { font-size: 34px; line-height: 1.12; }
  .paslaugos { grid-template-columns: 1fr; gap: 36px; }
  .paslauga-foto { aspect-ratio: 4 / 3; }
  .paveldas { grid-template-columns: 1fr; margin-top: 48px; }
  .paveldas .mygt { justify-self: start; }
  .teiginys { min-height: 440px; }
  .teiginys-tekstas { font-size: 28px; }
  .objektas { flex-basis: 78vw; }
  .sekcija-azuolas { padding: 72px 0; }
  .darbai-antraste { font-size: 36px; margin-bottom: 36px; }
  .interjerai-blokas { margin-top: 56px; }
  .klausimas { padding: 22px 0 24px; }
  .zodziai { gap: 6px 22px; }
  .zodis span, .paketas-pav { font-size: 22px; }
  .lapas-salygos { grid-template-columns: 1fr; }
  .zingsniai li { grid-template-columns: 32px minmax(0, 1fr); padding: 18px 0; }
  .zingsniai p { grid-column: 2; }
  .zingsniai h3 { font-size: 20px; }
  .dvi-grupes { grid-template-columns: 1fr; }
  .perziuros { grid-template-columns: repeat(3, 1fr); }
  .uzklausa-turinys { padding: 56px 16px 72px; }
  .uzklausa-foto figcaption { left: 16px; bottom: 16px; font-size: 20px; }
  .uzklausa-forma { margin-top: 36px; gap: 24px; }
  .uzklausa-forma .mygt-didelis { width: 100%; }
  .uzklausa-gauta { padding: 26px 20px; }
  .sekcija-kontaktai { padding: 56px 0; }
  .poraste { padding-top: 80px; }
  .poraste-virsus { grid-template-columns: 1fr; gap: 24px; padding-bottom: 48px; }
  .poraste .kontaktai { grid-template-columns: 1fr; gap: 20px; }
  .poraste-zenklas { margin-top: 64px; margin-bottom: 20px; }
  .gal-figura { padding: 0 0 14px; }
  .gal-rodykle { top: auto; bottom: 14px; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

/* ---------- nuotraukų forma: apvalūs kampai, vienodos proporcijos ----------
   2026-10-26 buvo koliažas su poslinkiais (Robertas „A,B“); 2026-10-27 Tomas: suvienodinti kortelių aukščius ir nuotraukų
   proporcijas, kad svetainė perteiktų tvarką. Apvalūs kampai liko, poslinkiai ir skirtingi dydžiai išimti. */

.paslauga-foto, .objekto-foto, .interjero-kadras, .perziura { border-radius: 18px; }
.uzklausa-foto { margin: 24px 0 24px 24px; border-radius: 24px; }
.teiginys { margin: 0 max(40px, env(safe-area-inset-left, 0px)) 40px; border-radius: 24px; }
.paslaugos, .objektai { align-items: stretch; }

@media (max-width: 980px) {
  .hero-tinklas { grid-template-columns: 1fr; gap: 40px; min-height: 0; }
  .hero-foto { width: 100%; max-width: 620px; margin-left: auto; }
  .hero-mazoji { left: -24px; }
  .uzklausa-foto { margin: 24px 24px 0; }
}
@media (max-width: 760px) {
  .paslauga-pav { font-size: 18px; }
  .teiginys { margin-left: 16px; margin-right: 16px; border-radius: 18px; }
  .hero-mazoji { left: 12px; }
  .teiginys { margin-bottom: 16px; }
  .uzklausa-foto { margin: 16px 16px 0; }
  .interjerai { margin-right: -16px; padding-right: 16px; }
}

/* ---------- paslaugų (SEO) puslapiai: paslaugos/*.html, generuoja tools/paslaugu_puslapiai.py ---------- */

.ps-hero { padding: 40px 0 24px; }
.ps-hero-tinklas { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 72px; align-items: center; min-height: calc(100svh - 72px - 64px); }
.ps-hero-be-foto .ps-hero-tinklas { grid-template-columns: minmax(0, 1fr); min-height: 0; padding: 72px 0 40px; }
.ps-kelias { display: flex; gap: 10px; font-size: 14px; color: var(--blankus); margin: 0 0 24px; }
.ps-kelias a { color: var(--blankus); text-decoration: none; }
.ps-kelias a:hover { color: var(--rasalas); text-decoration: underline; text-underline-offset: 4px; }
.ps-hero h1 { font-size: clamp(42px, 5vw, 78px); line-height: 1.05; letter-spacing: -0.035em; max-width: 12em; }
.ps-ivadas { font-size: 18.5px; color: var(--tekstas); max-width: 32em; margin: 26px 0 0; }
.ps-foto { position: relative; margin: 0; }
.ps-foto img { width: 100%; height: min(calc(100svh - 72px - 120px), 760px); min-height: 440px; object-fit: cover; border-radius: 24px; background: var(--fonas-2); }
.ps-foto::after { content: ''; position: absolute; inset: auto 0 0 0; height: 32%; border-radius: 0 0 24px 24px; background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, .45)); pointer-events: none; }
.ps-foto figcaption { position: absolute; z-index: 1; right: 24px; bottom: 22px; left: 30%; text-align: right; color: #fff; display: flex; flex-direction: column; gap: 2px; }
.ps-foto figcaption i { font-family: var(--serif); font-size: clamp(22px, 2vw, 28px); line-height: 1.15; }
.ps-foto figcaption span { font-size: 14px; opacity: .85; }

.ps-darbai { list-style: none; margin: 0; padding: 0; }
.ps-darbai li { display: grid; grid-template-columns: minmax(0, 15rem) minmax(0, 1fr); gap: 8px 32px; align-items: baseline; padding: 24px 0; border-top: 1px solid var(--linija); }
.ps-darbai li:last-child { border-bottom: 1px solid var(--linija); }
.ps-darbai h3 { font-size: 21px; }
.ps-darbai p { color: var(--blankus); margin: 0; }

.ps-objektas-galva { max-width: 44rem; margin-bottom: 48px; }
.ps-objektas-galva h2 { font-family: var(--serif); color: var(--azuolas-tekstas); font-size: clamp(32px, 3.6vw, 50px); letter-spacing: -0.015em; margin-bottom: 14px; }
.ps-objektas-galva p { color: var(--azuolas-tekstas); font-size: 17px; margin: 0 0 18px; }
.ps-objektas-galva .nuoroda-mygt { color: var(--azuolas-tekstas); }
.ps-objektas-foto { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 20px; align-items: start; }
.ps-objektas-foto figure { margin: 0; }
.ps-objektas-foto figure:nth-child(2) { margin-top: 72px; }
.ps-objektas-foto figure:nth-child(3) { margin-top: 24px; }
.ps-objektas-foto img { width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 18px; }
.ps-objektas-foto figure:nth-child(1) img { aspect-ratio: 3 / 4; }
.ps-objektas-foto figure:nth-child(2) img { aspect-ratio: 1 / 1; }
.ps-objektas-foto figcaption { margin-top: 10px; font-size: 14.5px; color: var(--azuolas-blankus); }

.ps-kaina { padding-bottom: 64px; }
.ps-kaina-blokas { background: var(--fonas-2); border-radius: 24px; padding: 56px; max-width: 900px; }
.ps-kaina-blokas h2 { font-size: clamp(28px, 3vw, 42px); letter-spacing: -0.03em; margin-bottom: 14px; }
.ps-kaina-blokas p { font-size: 17.5px; color: var(--tekstas); max-width: 40em; margin: 0 0 26px; }

.ps-duk-sarasas details { border-top: 1px solid var(--linija); }
.ps-duk-sarasas details:last-child { border-bottom: 1px solid var(--linija); }
.ps-duk-sarasas summary { list-style: none; cursor: pointer; position: relative; padding: 22px 36px 22px 0; font-size: clamp(18px, 1.6vw, 22px); letter-spacing: -0.015em; color: var(--rasalas); }
.ps-duk-sarasas summary::-webkit-details-marker { display: none; }
.ps-duk-sarasas summary::after { content: ''; position: absolute; right: 6px; top: 50%; width: 9px; height: 9px; border-right: 1.5px solid var(--rasalas); border-bottom: 1.5px solid var(--rasalas); transform: translateY(-70%) rotate(45deg); transition: transform .2s ease; }
.ps-duk-sarasas details[open] summary::after { transform: translateY(-30%) rotate(225deg); }
.ps-duk-sarasas details p { margin: 0 0 24px; color: var(--tekstas); max-width: 44em; }

.ps-kitos { border-top: 1px solid var(--linija); }
.ps-kitos h2 { font-size: 15px; font-weight: 500; color: var(--blankus); letter-spacing: 0; margin-bottom: 18px; }
.ps-kitos-sarasas { display: flex; flex-direction: column; }
.ps-kitos-sarasas a { font-size: clamp(26px, 3.2vw, 46px); letter-spacing: -0.03em; line-height: 1.2; color: var(--rasalas); text-decoration: none; padding: 10px 0; border-bottom: 1px solid var(--linija); transition: color .2s ease; }
.ps-kitos-sarasas a:hover { color: var(--azuolas); }

.poraste-paslaugos { display: flex; flex-wrap: wrap; gap: 10px 28px; padding: 28px 0 0; margin-top: 8px; }
.poraste-paslaugos a { color: var(--rasalas); text-decoration: none; font-size: 15.5px; }
.poraste-paslaugos a:hover { text-decoration: underline; text-underline-offset: 5px; }

@media (max-width: 980px) {
  .ps-hero-tinklas { grid-template-columns: 1fr; gap: 36px; min-height: 0; }
  .ps-foto img { height: auto; min-height: 0; aspect-ratio: 4 / 5; }
  .ps-objektas-foto { grid-template-columns: 1fr 1fr; }
  .ps-objektas-foto figure:nth-child(3) { display: none; }
}
@media (max-width: 760px) {
  .ps-hero { padding-top: 28px; }
  .ps-hero h1 { font-size: 38px; line-height: 1.1; }
  .ps-ivadas { font-size: 16.5px; margin-top: 18px; }
  .ps-hero .hero-veiksmai .mygt-tuscias { display: none; }
  .ps-foto img, .ps-foto::after { border-radius: 18px; }
  .ps-darbai li { grid-template-columns: 1fr; padding: 18px 0; }
  .ps-darbai h3 { font-size: 19px; }
  .ps-objektas-foto { gap: 12px; }
  .ps-objektas-foto figure:nth-child(2) { margin-top: 40px; }
  .ps-kaina-blokas { padding: 32px 22px; border-radius: 18px; }
  .ps-hero-be-foto .ps-hero-tinklas { padding: 24px 0 8px; }
}
.ps-sudetis-stulpeliai { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 40px; }
.ps-sudetis-stulpeliai h3 { font-size: 18px; margin-bottom: 10px; }
.ps-sudetis-stulpeliai ul { margin: 0; padding: 0; list-style: none; }
.ps-sudetis-stulpeliai li { padding: 10px 0; border-top: 1px solid var(--linija); color: var(--tekstas); font-size: 16px; }
.ps-pastaba { grid-column: 1 / -1; color: var(--blankus); font-size: 15px; margin: 0; }
@media (max-width: 760px) { .ps-sudetis-stulpeliai { grid-template-columns: 1fr; } }


/* ---------- 2026-11-02: daugiau spalvos (Tomas 10-28: „per daug baltumo“, Robertas: „a little bit more color“) ----------
   Ta pati paletė, jokių naujų spalvų: „Kaip dirbame“ ir poraštė tos pačios spalvos kaip objektų juosta (nuo 11-04 žalia), didelis „Wish Build“ ženklo spalvos.
   Puslapio ritmas: šviesu, nuotrauka, ŽALIA (objektai), šviesu (sąmata), ŽALIA (eiga), šviesu (užklausa), ŽALIA (poraštė). */
.sekcija-eiga { background: var(--azuolas); color: var(--azuolas-tekstas); border-top: 0; }
.sekcija-eiga h2, .sekcija-eiga .zingsniai h3 { color: var(--azuolas-tekstas); }
.sekcija-eiga .zingsniai p { color: var(--azuolas-blankus); }
.sekcija-eiga .zingsniai li { border-top-color: rgba(241, 238, 231, .16); }
.sekcija-eiga .zingsniai li:last-child { border-bottom-color: rgba(241, 238, 231, .16); }
.sekcija-eiga .zingsnio-nr { display: inline-grid; place-items: center; width: 34px; height: 34px; border: 1.5px solid var(--zenklo-spalva); border-radius: 50%; color: var(--azuolas-tekstas); font-size: 14.5px; line-height: 1; }
.sekcija-eiga :focus-visible { outline-color: var(--azuolas-tekstas); }

.poraste { background: var(--azuolas); color: var(--azuolas-blankus); border-top: 0; }
.poraste-sakinys, .poraste-kontaktai a, .poraste-kontaktai .poraste-tel, .poraste .kontaktai dd { color: var(--azuolas-tekstas); }
.poraste .kontaktai dt, .poraste .kontaktai dd span, .poraste-nuoroda, .poraste .kreditas { color: var(--azuolas-blankus); }
.poraste-nuoroda:hover, .poraste .kreditas:hover { color: var(--azuolas-tekstas); }
.poraste .kontaktai div, .poraste-vidus { border-top-color: rgba(241, 238, 231, .16); }
.poraste-paslaugos a { color: var(--azuolas-tekstas); }
.poraste :focus-visible { outline-color: var(--azuolas-tekstas); }
@media (max-width: 760px) { .sekcija-eiga .zingsnio-nr { width: 30px; height: 30px; font-size: 13.5px; } }
/* telefone vieta po lipnia juosta perkelta iš body į poraštę: kitaip tarp tamsios poraštės ir juostos lieka šviesi juostelė */
@media (max-width: 760px) {
  body { padding-bottom: 0; }
  .poraste { padding-bottom: calc(104px + env(safe-area-inset-bottom, 0px)); }
}
