/* ==========================================================================
   re-forma.lt · dizaino kryptis „Lapas“ · assets/css/style.css
   Pamatų stilius (savininkas: F-CSS). Šaltinis: _brief/dizaino-kryptis.md
   Tik tokenai (§3.1), bazė, maketo primityvai (§5.0), VISI §5 komponentai,
   §6 efektų pradinės / galutinės būsenos, RM blokas, spauda.
   Puslapių išdėstymas – assets/css/pages/*.css (ne čia).
   Mobile-first; lūžiai: 640 sm · 760 md · 1000 lg · 1100 xl · 1280 · 1440.
   ==========================================================================

   TURINYS
   00  SUTARTYS / CONTRACTS (CSS ↔ main.js)
   01  Tokenai :root (§3.1, pažodžiui)
   02  Bazė, reset, fokusas
   03  Tipografija (§4.3)
   04  Maketo primityvai: container, section, grid, stack (§5.0)
   05  Mock juosta (§5.1)
   06  Antraštė desktop + mega meniu (§5.2)
   07  Antraštė mobiliajame + off-canvas (§5.3)
   08  Mygtukai (§5.4)
   09  Nuorodos (§5.5)
   10  Eyebrow, etiketės, žymos, duomenys (§5.6)
   11  Sekcijos antraštė (§5.7)
   12  Vaizdų rėmai, kadravimo žymės, rūkas, matmuo (§5.8)
   13  Spaudas rf-titleblock (§5.9)
   14  Projekto kortelė – visi variantai (§5.10)
   15  Filtrų juosta, skaitiklis, rodinio jungiklis (§5.11)
   16  Žiniaraštis rf-ledger (§5.12)
   17  Hero + Zoom Slider (§5.13)
   18  Rinktiniai rf-featured (§5.14)
   19  Galerija rf-masonry (§5.15)
   20  Skaičiai rf-stats (§5.16)
   21  Veiklos kryptys rf-direction (§5.17)
   22  Darbo eiga rf-process (§5.18)
   23  Klientų siena rf-clients (§5.19)
   24  Bėganti eilutė rf-marquee (§5.20)
   25  Koliažas rf-cascade + legenda (§5.21)
   26  Juosta rf-band (§5.22)
   27  Lightbox (§5.23)
   28  DUK rf-faq (§5.24)
   29  Žurnalo kortelės rf-post (§5.25)
   30  Turinys rf-toc + tekstas rf-prose (§5.26)
   31  Formos rf-form (§5.27)
   32  Žemėlapis rf-map (§5.28)
   33  CTA juosta rf-cta (§5.29)
   34  Poraštė rf-footer + Footer Reveal (§5.30)
   35  Kelio nuorodos (§5.31)
   36  „Rodyti daugiau“ (§5.32)
   37  Slapukų juosta (§5.33)
   38  „Žiūrėti“ žymeklis (§5.34)
   39  Vizija → įgyvendinimas rf-compare (§5.35)
   40  Ikonos (§5.36)
   41  Efektų būsenos data-* (§6)
   42  Tonas data-tone="gyvenamasis"
   43  Pagalbinės klasės (papildomos, ne §5)
   44  Keyframes
   45  prefers-reduced-motion (§6 5 taisyklė)
   46  forced-colors
   47  Spauda (print)

   --------------------------------------------------------------------------
   00  SUTARTYS / CONTRACTS
   Kur specifikacija nenurodo būsenos klasės / pagalbinio markup, pasirinkta
   pažodinė reikšmė. main.js (F-JS) turi laikytis šių susitarimų; integratorius
   suderina. Spec klasės (is-open, is-active, is-current, is-receding,
   is-scrolled, is-hidden, is-stuck, is-tilting, aria-*) naudojamos kaip spec.
   --------------------------------------------------------------------------
   C1  JS vartai: main.js PIRMA eilute daro
         document.documentElement.classList.add('rf-js')
       Visos pradinės (paslėptos) data-reveal / data-draw / data-split /
       data-clip-expand būsenos galioja tik po `html.rf-js`. Be JS viskas matoma.
   C2  Vienkartinis įėjimas: JS prideda `.is-in` elementui su [data-reveal],
       [data-draw] arba [data-split] (niekada nenuima). Tipai: up|fade|mask|
       scale|draw (numatytasis up, taip pat kai reikšmė tuščia).
       Uždelsimas: JS rašo inline `--rf-reveal-delay: <ms>ms`
       (data-reveal-delay + n × data-reveal-stagger). CSS papildomai supranta
       dažnas data-reveal-delay reikšmes (40…600 ms), jei JS kintamojo nerašo.
   C3  data-split markup (JS, po document.fonts.ready):
         <h1 data-split="words" aria-label="Pilnas tekstas">
           <span class="rf-split__word" aria-hidden="true">
             <span class="rf-split__inner" style="--rf-i:0">Žodis</span></span> …
       Eilutėms: .rf-split__line > .rf-split__inner. Tarpai tarp žodžių –
       paprasti tekstiniai tarpai tarp .rf-split__word. Pakopos 55 ms × --rf-i.
   C4  SVG linijų piešimas: kelias ([data-draw] viduje arba pats su data-draw)
       animuojamas TIK jei turi atributą pathLength="1" (markup arba JS).
       Uždelsimas – `--rf-draw-delay` (JS: data-draw-delay + i × data-draw-stagger).
       Galutinės būsenos (.is-in) taisyklės – BE [pathLength="1"]: Chromium
       neperskaičiuoja SVG camelCase atributo selektoriaus pasikeitus protėvio
       klasei; JS inline stroke-dashoffset nerašo.
   C5  .rf-dim[data-draw]: linija piešiama nuo centro (scaleX), brūkšneliai ir
       reikšmė atsiranda po jos – viskas CSS, JS tik prideda .is-in.
       .rf-stats__chain[data-draw]: linija iš kairės 1600 ms + brūkšneliai
       (clip-path). Mobiliajame (< 760) grandinė piešiama ant kiekvieno .rf-stat
       per `.rf-stats__chain.is-in ~ .rf-stats__list` – JS nieko papildomo.
   C6  Antraštė: `.rf-header.is-scrolled`, `.rf-header.is-hidden` (spec).
       Lipnūs [data-sticky="below-header|below-filter"] elementai, kai JS
       (IO sentinel) prideda `.is-stuck`, paslėpus antraštę pakyla
       translateY(-header-h) (CSS per :has(.rf-header.is-hidden)). top nekinta.
       Off-canvas NETURI būti .rf-header palikuonis (antraštė turi transform ir
       backdrop-filter → fixed vaikai sugestų).
   C7  Perdangos (mega, off-canvas, lightbox, slapukų juosta, jos nustatymai,
       žiniaraščio peržiūra NE – žr. C13) rodomos/slepiamos TIK `hidden`
       atributu. Įėjimo animacija – CSS keyframes (klasės nereikia).
       Neprivaloma išėjimo animacija: JS prideda `.is-closing`, po 250 ms
       uždeda `hidden` ir nuima klasę. Slinkimo užraktas – CSS per :has()
       (atviras off-canvas / lightbox); JS gali papildomai uždėti html.is-locked.
       Mock juosta atviros perdangos metu nuleidžiama po ja (tik maketas);
       slapukų juosta (z 90) tuo metu nuleidžiama po perdanga (z 79).
   C8  [data-rf-include] vietos yra `display:contents` – lipni antraštė veikia,
       nesvarbu, ar JS pakeičia vietą (outerHTML), ar užpildo (innerHTML).
   C9  Mega: nuoroda tik naviguoja; `.rf-nav__toggle[aria-expanded="true"]`
       pasuka rodyklę; `.rf-nav__item--mega.is-open` neprivaloma (tik stilius).
   C10 Ikonos: RFX.icon(name) → <svg class="rf-icon rf-icon--{name}"
       viewBox="0 0 24 24" aria-hidden="true" focusable="false">…</svg>.
       Užpildytoms (soc. tinklų) – papildoma klasė `rf-icon--fill`.
       .rf-iconbtn hover poslinkis 3 px pagal ikonos klasę (--arrow-left/right/
       up-right, --chevron-down) arba mygtuko modifikatorių --prev/--next.
   C11 Mygtuko rodyklė: .rf-btn (ne --sm) piešia 16 px rodyklę CSS ::after.
       Jei mygtuke yra .rf-icon – CSS rodyklės nėra, juda ta ikona.
       .rf-btn--noarrow išjungia; .rf-btn--sm.rf-btn--arrow įjungia.
   C12 Kortelės: `.rf-card__frame.is-tilting` (spec) išjungia CSS vaizdo zoom;
       JS rašo inline transform rėmui ir img. Gylio filtras: `article.rf-card
       .is-receding` + `inert` → CSS 450 ms (mob. 300 ms, be blur); FLIP – inline.
   C13 Žiniaraščio peržiūra: JS kuria vieną
         <div class="rf-ledger__preview" aria-hidden="true"><img …></div>
       (body gale), juda inline transform: translate3d(); matoma su `.is-active`.
   C14 Šūsnis: JS rašo `.rf-stack__sheet` inline `--rf-recede` (0…1) pagal
       slinkimą; `.is-receding` = 1 (atsarginis, su CSS perėjimu).
   C15 Zoom slider: skaidrės `.is-current` (spec), perėjimo metu išeinanti
       `.is-leaving`, įeinanti `.is-entering` (CSS keyframes = visa §5.13
       choreografija, 1850 ms; JS po 1850 ms nuima klases). Atgal – slankikliui
       `.is-back`. Pauzė – `.rf-zoomslider.is-paused`. Spaudas [data-zs-info]:
       `.is-leaving` (0–600 ms), tada JS pakeičia tekstus ir uždeda
       `.is-entering` (reikšmės įvažiuoja 150 ms + 40 ms pakopos).
       Valdikliai spaudo .rf-titleblock__controls viduje:
         <span class="rf-zoomslider__count">01 / 03</span>
         <button class="rf-iconbtn rf-iconbtn--prev" data-zs-prev>…
         <button class="rf-iconbtn" data-zs-pause aria-pressed="false">…
         <button class="rf-iconbtn rf-iconbtn--next" data-zs-next>…
         <span class="rf-zoomslider__progress"><span></span></span>
       Progresas: JS perjungia `.is-running` ant .rf-zoomslider__progress
       (nuima → reflow → uždeda); CSS užpildo per var(--rf-autoplay);
       JS gali eiti į kitą skaidrę per `animationend` ant jo vidinio span.
       NUKRYPIMAS: d4 šešėlis piešiamas `.rf-zoomslider__slide::after` (sinchronine
       ta pačia animacija), nes __card turi overflow:hidden (kitaip 112 % __par ir
       kontra-zoom išlįstų iš kortelės), o vaiko šešėlis būtų nukirptas.
   C16 Marquee: statinis režimas CSS per (hover:none) ir RM; JS nustatytas –
       `.rf-marquee.is-static`. JS kopijos žymimos `data-rf-clone`
       (statiniame režime paslepiamos). Elementai – `.rf-marquee__track > *`.
   C17 Žymeklis: JS kuria <div class="rf-cursor" aria-hidden="true">
       <span class="rf-cursor__disk">Žiūrėti</span></div>; translate3d rašo
       .rf-cursor, `.is-active` išskleidžia diską (scale 0→1, 250 ms).
   C18 Lightbox markup (JS):
         <div class="rf-lightbox" role="dialog" aria-modal="true" aria-label="…" hidden>
           <p class="rf-lightbox__count rf-label">3 / 8</p>
           <figure class="rf-lightbox__figure"><img class="rf-lightbox__img" …>
             <figcaption class="rf-lightbox__cap">Pav. 3 – … · Vizualizacija</figcaption></figure>
           <button class="rf-iconbtn rf-lightbox__prev" aria-label="Ankstesnis vaizdas">…
           <button class="rf-iconbtn rf-lightbox__next" aria-label="Kitas vaizdas">…
           <button class="rf-iconbtn rf-lightbox__close" aria-label="Uždaryti">…</div>
   C19 Footer Reveal: JS uždeda `.rf-footer.is-reveal` (≥1000, be RM, aukštis
       < 90 % lango) ir `.rf-footer-spacer` inline height; kitaip nieko.
   C20 Slapukai: juosta ir `.rf-cookie__settings` – `hidden`; jungikliai
       <label class="rf-switch"><span>Statistika</span>
         <input type="checkbox" role="switch"></label>.
       JS gali rašyti html inline `--rf-cookie-h` (px) kol juosta matoma –
       poraštės apačia gauna tiek papildomo tarpo.
   C21 Forma: klaidos tekstas <p class="rf-field__error" id="…"> lauko gale;
       klaida – `aria-invalid="true"` ant lauko (nebūtina `.rf-field.is-invalid`).
       Būsena: netuščias .rf-form__status = --rf-wash juosta; `.is-error` – klaida.
   C22 Palyginimas: `.rf-compare` inline `--rf-pos` (0%…100%, numat. 50%);
       .rf-compare__stage > img.rf-compare__img--before + img.rf-compare__img--after
       + .rf-compare__tag--before/--after (rf-tag) + .rf-compare__handle
       (vidurinė linija) > button.rf-iconbtn.rf-compare__knob[role=slider].
   C23 Žemėlapis: .rf-map > .rf-map__canvas (SVG schema + .rf-map__pin >
       .rf-map__stamp + .rf-map__coords; 14 px žymeklis = .rf-map__pin::before;
       JS įdėjus iframe – `.is-live`), .rf-map__consent (mygtukas + .rf-map__note),
       .rf-map__link. Inline stilių JS nerašo.
   C24 TOC: aktyvi nuoroda `a.is-active` (arba aria-current="true");
       numeriai 01–0N – CSS skaitikliai (markup be numerių).
   C25 Spaudo šešėlis pagal variantą: --hero d3, --contact d1, kiti d0;
       `.rf-titleblock--float` = d3 (projekto antraštė A, juostos kortelė).
       2 stulpelių dl – konteinerio užklausa (spaudas ≥ 560 px pločio) --project
       ir --compact variantams; hero mob. (< 1000) = --compact išdėstymas.
       Spaudas yra `container-type:inline-size` → plotį turi gauti iš tėvo
       (grid/block stulpelio), ne shrink-to-fit (absolute be width, inline-block).
   C26 data-haze: CSS supranta 0.1 · 0.15 · 0.2 · 0.24 · 0.3 · 0.35 · 0.4 ·
       0.45 · 0.5 · 0.6 · 0.62; kitaip inline `--rf-haze-o` (JS rašo visada).
       Rėme (.rf-frame) rūkas piešiamas .rf-frame__crop::before (tik ant vaizdo,
       ne ant parašo) – todėl --marks ir --haze suderinami. Kitur – elemento ::before.
   C27 data-parallax-bg: fono vaizdas yra vaikas `.rf-bgmedia` (img arba div);
       JS rašo jo transform. data-mouse-layer – puslapio CSS pozicionuoja.
   C28 .rf-frame__cap mat rėme rodoma paspartu apatinėje juostoje (po vaizdu,
       12 px), --bare rėme – 12 px po rėmu.
   C29 .rf-card--all ramybėje --rf-paper, hover/fokusas --rf-mat (pažodžiui
       §5.10 „fonas --rf-paper → --rf-mat“); tankesnis štrichavimas – ::after.
   C30 H1 CLS: .rf-display min-height 2 eilutės ≥ 760; < 760 – auto
       (4 eil. rezervas nustumtų hero sceną žemiau 360 px, §5.13).
   C31 Tinklelis: papildomai `.rf-col-t-{1…8}` (planšetė 760–999); be jų
       planšetėje visi vaikai per visą plotį. `.rf-col-start-*` tik ≥ 1000.
   C32 Antraštės telefonas: < 1280 – 44 px ikonos mygtukas (tekstas lieka
       pasiekiamas), ≥ 1280 – tekstas (§5.2); niekada nepaslepiamas.
   C33 Darbo eiga --row markup: ol.rf-process__steps > li.rf-process__step >
       .rf-process__nr (rf-label) + .rf-process__icon (svg[data-draw]) + h3 + p.
   C34 Klientų tinklelis: ul.rf-clients__grid > li.rf-clients__cell (> img);
       laukiantys – `.rf-clients__cell--pending` su <span class="rf-label
       rf-clients__note">tikslinama</span>; partneriai – ul.rf-clients__grid
       .rf-clients__grid--partners.
   C35 Papildomos (ne §5) pagalbinės: .rf-h1 .rf-h3 .rf-h4 .rf-quote
       .rf-lead--voice .rf-prose--sans .rf-cardgrid .rf-cities .rf-rule
       .rf-arcs .rf-hatch .rf-nowrap – žr. 43 skyrių.
   C36 data-scroll-scale="0.94,1": CSS pradinis scale(.94) (po html.rf-js), kad
       iki pirmo JS kadro nebūtų šuolio; RM – transform:none (!important).
   C37 Kortelės pavadinimo / žurnalo pavadinimo pabraukimas piešiamas per
       background-size (inline h3), todėl .rf-card__label ir .rf-post__link
       turi likti block (ne flex/grid) – kitaip h3 taptų blokiniu.
   --- Integratorius (F-INT) ---
   C38 Generatorių pagalbinės klasės turi stilius: .rf-card__tags (span – žymų
       eilė; p – --featured žyma po meta), .rf-card--all .rf-card__body (štrichavimas
       tik ::before/::after, atskiro __hatch nėra), a.rf-frame__link (lightbox
       trigeris), .rf-titleblock__social, .rf-band__cap (juostos parašas kortelės
       apačioje), .rf-toc--desk (nav, ≥ 1000) / .rf-toc--mob (details, < 1000),
       .rf-faq > h2 + .rf-faq__list (≥ 1000: 4 + 8 stulp.).
   C39 data-scroll-scale: JS pabaigoje rašo inline transform:none (ne tuščią) –
       kitaip vėl galiotų C36 pradinis scale(.94).
   C40 Žurnalo viršeliai (RFX.post) – --ar 16/9 (natūralus 1300×732 failas su
       įrašytais užrašais; 3:2 juos nukirptų).
   C41 .rf-viewtoggle < 480 px – tik ikonos (tekstas lieka ekrano skaitytuvams).
   C42 Lipnūs elementai ([data-sticky], .rf-filterbar, .rf-toc) turi būti tiesioginiai
       aukšto konteinerio (section/main/stulpelio) vaikai – ne apgaubti ankštu div.
   ========================================================================== */


/* ==========================================================================
   01  TOKENAI (§3.1 – pažodžiui)
   ========================================================================== */
:root{
  /* ---------- Spalvos ---------- */
  --rf-paper:#F4F0E8;      /* puslapio drobė (popierius) */
  --rf-mat:#FCFAF6;        /* paspartu, kortelės, spaudas, meniu, formos laukai */
  --rf-sand:#EAE3D7;       /* antrinės sekcijos („kalkė“), poraštė */
  --rf-sand-2:#E3DACB;     /* gilesnis smėlis: tik fonai ir rūkas, NE tekstui su --rf-lead */
  --rf-line:#D8CFC1;       /* dekoratyvios plaukinės linijos (ne UI ribos) */
  --rf-line-ui:#857D72;    /* UI ribos: laukai, mygtukų kontūrai, matmenys (≥3:1) */
  --rf-ink:#15202B;        /* tušas: antraštės, tekstas, pagrindinis mygtukas, logotipas */
  --rf-graphite:#45515D;   /* pagrindinis pastraipų tekstas */
  --rf-lead:#59656F;       /* meta, etiketės, eyebrow, kelio nuorodos */
  --rf-mist:#AEB8C0;       /* antrinis tekstas tik ant --rf-ink (mock juosta) */
  --rf-signal:#82C51F;     /* paveldo žalia: TIK ženklai (stakta, aktyvus filtras, progresas, mygtuko užpildas) */
  --rf-moss:#3A6410;       /* žalias TEKSTAS: nuorodų hover, „+“ skaičiuose */
  --rf-wash:#E6EDD6;       /* žalsvas fonas: eilutės hover, sėkmės pranešimas */
  --rf-tint:#D2E3AC;       /* ženklo sektorius, dekoras */
  --rf-tint-dark:#35502A;  /* ženklo sektorius tamsioje versijoje */
  --rf-error:#A3321F;      /* formų klaidos */
  --rf-haze:rgba(244,240,232,.24);         /* oro perspektyva: tolimas sluoksnis */
  --rf-haze-strong:rgba(244,240,232,.62);  /* stiprus rūkas: nustumtas lapas, planų fonas */
  --rf-header-bg:rgba(244,240,232,.95);    /* lipnios juostos (antraštė, filtrai, submeniu) + blur; ≥ .95, kad --rf-lead būtų ≥ 4,5:1 net virš juodo (3.2) */
  --rf-page-bg:var(--rf-paper);            /* puslapio fonas (html + .rf-main); keičia tik data-color-change */

  /* ---------- Šriftai ---------- */
  --rf-font-display:"Archivo","Archivo Fallback","Helvetica Neue",Arial,sans-serif;   /* „Forma“: antraštės */
  --rf-font-text:"Archivo","Archivo Fallback","Helvetica Neue",Arial,sans-serif;      /* tekstas ir UI */
  --rf-font-data:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,monospace; /* „Matas“: duomenys, etiketės */
  --rf-font-voice:"Newsreader",Georgia,"Times New Roman",serif;    /* „Balsas“: citatos, straipsnių tekstas */
  --rf-stretch-display:112%;  /* Archivo wdth antraštėms (mobiliajame 100 %) */
  --rf-stretch-text:100%;

  /* ---------- Tipografinė skalė (min 390 px → max 1440 px) ---------- */
  --rf-fs-display:clamp(2.125rem, 1.1rem + 4.2vw, 4.5rem);   /* 34 → 72  Pradžios H1 */
  --rf-fs-h1:clamp(2.125rem, 1.4rem + 3vw, 4rem);            /* 34 → 64  vidinių puslapių H1 */
  --rf-fs-h2:clamp(1.75rem, 1.2rem + 2.2vw, 3.25rem);        /* 28 → 52 */
  --rf-fs-h3:clamp(1.25rem, 1.1rem + .6vw, 1.5rem);          /* 20 → 24 */
  --rf-fs-h4:1.125rem;                                       /* 18 */
  --rf-fs-lead:clamp(1.125rem, 1rem + .5vw, 1.4375rem);      /* 18 → 23 */
  --rf-fs-body:clamp(1rem, .96rem + .15vw, 1.0625rem);       /* 16 → 17 */
  --rf-fs-small:.875rem;                                     /* 14: meta, kelio nuorodos */
  --rf-fs-micro:.75rem;                                      /* 12: MINIMUMAS – etiketės, žymos, skaitliukai, eyebrow */
  --rf-fs-stat:clamp(3.5rem, 2rem + 6vw, 8rem);              /* 56 → 128 skaičiai */
  --rf-fs-quote:clamp(1.625rem, 1.2rem + 1.8vw, 2.5rem);     /* 26 → 40 Newsreader kursyvas */
  --rf-fs-article:clamp(1.125rem, 1.05rem + .3vw, 1.1875rem);/* 18 → 19 Newsreader straipsniai */
  --rf-fs-biglink:clamp(2.5rem, 1.5rem + 4vw, 5.5rem);       /* 40 → 88 „Darbų galerija →“ */
  --rf-lh-display:1.04; --rf-lh-head:1.12; --rf-lh-body:1.65; --rf-lh-article:1.7; --rf-lh-data:1.4;
  --rf-track-display:-.018em; --rf-track-head:-.012em; --rf-track-data:.08em;
  --rf-wght-display:300; --rf-wght-head:400; --rf-wght-ui:500; --rf-wght-stat:300; /* kraunamas diapazonas wght 300–600 (4.1) */

  /* ---------- Tarpai (8 pt pagrindas) ---------- */
  --rf-s-1:4px; --rf-s-2:8px; --rf-s-3:12px; --rf-s-4:16px; --rf-s-5:24px; --rf-s-6:32px;
  --rf-s-7:48px; --rf-s-8:64px; --rf-s-9:96px; --rf-s-10:128px; --rf-s-11:160px;
  --rf-section-y:clamp(80px, 9vw + 40px, 160px);  /* sekcijos viršus/apačia */
  --rf-head-gap:clamp(40px, 4vw + 16px, 80px);    /* tarp sekcijos antraštės ir turinio */
  --rf-gutter:clamp(16px, 3vw + 4px, 64px);        /* šoninė paraštė: 16 px ties 390, 47 px ties 1440 */
  --rf-gap:clamp(16px, 2vw, 32px);                 /* tinklelio tarpas */
  --rf-mat-pad:clamp(8px, .9vw, 14px);             /* paspartu storis */

  /* ---------- Kampai ---------- */
  --rf-r-0:0;          /* VISI rėmai, vaizdai, kortelės, mygtukai, laukai, žymos */
  --rf-r-round:999px;  /* tik apvalūs ikonų mygtukai (44 px), „Žiūrėti“ diskas, taškai */

  /* ---------- Gylis (šilti šešėliai; ne daugiau 3 lygių viename ekrane) ---------- */
  --rf-d0:none;                                                                         /* lapas ant stalo */
  --rf-d1:0 1px 1px rgba(43,35,25,.05), 0 12px 24px -14px rgba(43,35,25,.26);           /* pakabinta */
  --rf-d2:0 2px 4px rgba(43,35,25,.05), 0 38px 64px -28px rgba(43,35,25,.38);           /* pakelta (hover) */
  --rf-d3:0 22px 44px -24px rgba(43,35,25,.26), 0 70px 120px -52px rgba(43,35,25,.48);  /* iškelta (spaudas ant scenos, šūsnis) */
  --rf-d4:0 40px 90px -30px rgba(43,35,25,.35);                                         /* plaukianti scenos kortelė perėjimo metu */
  --rf-bevel:inset 0 0 0 1px rgba(43,35,25,.07), inset 0 1px 3px rgba(43,35,25,.12);   /* paspartu pjūvis */

  /* ---------- Judesys ---------- */
  --rf-e-out:cubic-bezier(.25,1,.5,1);    /* easeOutQuart – įėjimai, hover (Salient Animation Easing) */
  --rf-e-draw:cubic-bezier(.65,0,.35,1);  /* linijos, kaukės, šūsnis */
  --rf-e-zoom:cubic-bezier(.05,.2,.1,1);  /* vaizdo priartinimas (Salient Image hover) */
  --rf-e-slide:cubic-bezier(.4,0,.2,1);   /* Zoom Slider choreografija */
  --rf-t-1:180ms;   /* spalvos, rodyklės */
  --rf-t-2:350ms;   /* kadravimo žymės, eilutės, meniu */
  --rf-t-3:650ms;   /* vaizdo zoom, rėmo pakilimas */
  --rf-t-4:900ms;   /* įėjimai (Salient Column/Image Animation Timing = 900) */
  --rf-t-5:1400ms;  /* linijų piešimas */
  --rf-t-slide:1850ms; --rf-autoplay:6500ms; --rf-stagger:80ms;

  /* ---------- Sluoksniai ---------- */
  --rf-z-base:0; --rf-z-raised:2; --rf-z-sticky:20; --rf-z-header:40; --rf-z-cursor:60;
  --rf-z-overlay:80; --rf-z-cookie:90; --rf-z-mockbar:100;

  /* ---------- Pločiai ---------- */
  --rf-w-page:1440px;     /* dizaino kadras */
  --rf-w-content:1360px;  /* .rf-container turinio plotis */
  --rf-w-band:1300px;     /* Clip Path juostos maks. plotis = 2000 px failas × 0,65 */
  --rf-w-narrow:880px;    /* tekstų blokai, forma */
  --rf-w-text:42rem;      /* pastraipų eilutė (~72 ženklai) */
  --rf-w-article:43rem;   /* straipsnio tekstas (~66 ženklai Newsreader 19 px) */
  --rf-header-h:76px; --rf-filter-h:60px; --rf-mockbar-h:36px;
}
@media (max-width:759px){
  :root{ --rf-header-h:64px; --rf-stretch-display:100%; --rf-filter-h:56px; }
}
@font-face{ font-family:"Archivo Fallback"; src:local("Arial"); size-adjust:104%; ascent-override:92%; } /* CLS (4.1) */
html{ background:var(--rf-page-bg); color:var(--rf-graphite); font-family:var(--rf-font-text);
      font-size:100%; font-stretch:var(--rf-stretch-text); -webkit-text-size-adjust:100%;
      transition:background-color 900ms var(--rf-e-out); }
body{ font-size:var(--rf-fs-body); line-height:var(--rf-lh-body); }   /* body BE fono – Footer Reveal (5.30) */
.rf-main{ position:relative; z-index:1; background:var(--rf-page-bg); transition:background-color 900ms var(--rf-e-out); }

/* Papildomi (ne spec) vidiniai kintamieji – tik komponentų patogumui */
:root{
  --rf-header-offset:var(--rf-header-h);   /* lipnių juostų viršus */
  --rf-dim-bg:var(--rf-page-bg);           /* matmens reikšmės fonas (keičiamas sekcijose) */
  --rf-ico-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='square'%3E%3Cpath d='M4 12h15.5M13.5 6l6 6-6 6'/%3E%3C/svg%3E");
  --rf-ico-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='square'%3E%3Cpath d='M6.5 9.5 12 15l5.5-5.5'/%3E%3C/svg%3E");
  --rf-ico-check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='square'%3E%3Cpath d='M5.5 12.5 10 17l8.5-9.5'/%3E%3C/svg%3E");
  --rf-ico-phone:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linejoin='round'%3E%3Cpath d='M5 3.8h3.6l1.7 4.4-2.2 1.4a11.5 11.5 0 0 0 6.3 6.3l1.4-2.2 4.4 1.7v3.6a1.2 1.2 0 0 1-1.2 1.2A16.2 16.2 0 0 1 3.8 5 1.2 1.2 0 0 1 5 3.8Z'/%3E%3C/svg%3E");
  --rf-ico-plus:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='square'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E");
}


/* ==========================================================================
   02  BAZĖ, RESET, FOKUSAS
   ========================================================================== */
*,*::before,*::after{ box-sizing:border-box; }
html{ -moz-text-size-adjust:100%; text-size-adjust:100%; text-rendering:optimizeLegibility;
      -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
      font-kerning:normal; font-optical-sizing:auto; -webkit-tap-highlight-color:transparent; }
body{ margin:0; min-height:100vh; min-height:100svh; overflow-wrap:break-word; }
main,article,aside,figure,figcaption,footer,header,nav,section{ display:block; }
h1,h2,h3,h4,h5,h6,p,blockquote,figure,dl,dd,pre{ margin:0; }
:where(ul[class],ol[class]){ list-style:none; margin:0; padding:0; }   /* 0 specifiškumas – .rf-container ir kt. nugali */
img,svg,video,canvas,picture{ display:block; max-width:100%; }
img,video{ height:auto; }
img{ font-style:italic; color:var(--rf-lead); }           /* alt tekstas, jei failo nėra */
iframe{ border:0; display:block; max-width:100%; }
table{ border-collapse:collapse; }
hr{ border:0; height:1px; margin:0; background:var(--rf-line); }
b,strong{ font-weight:600; }
small{ font-size:var(--rf-fs-small); }
sup,sub{ line-height:0; }

a{ color:inherit; text-decoration-thickness:1px; text-underline-offset:.22em; text-decoration-color:var(--rf-moss); }
a[class]{ text-decoration:none; }
@media (hover:hover){ a:not([class]):hover{ color:var(--rf-moss); } }

button,input,select,textarea{ font:inherit; color:inherit; letter-spacing:inherit; margin:0; }
button{ background:none; border:0; padding:0; border-radius:0; cursor:pointer; text-align:inherit; }
button:disabled{ cursor:default; }
input,select,textarea{ border-radius:0; }
summary{ cursor:pointer; }

::selection{ background:var(--rf-tint); color:var(--rf-ink); }

/* Fokusas (3.2 taisyklė 3): 2 px tušas + 3 px tarpas; ant tamsaus – popierius */
:focus{ outline:none; }
:focus-visible{ outline:2px solid var(--rf-ink); outline-offset:3px; }
.rf-main:focus{ outline:none; }

/* Inkarų tarpai (§6 globalios elgsenos) */
[id]{ scroll-margin-top:calc(var(--rf-header-h) + var(--rf-filter-h) + 16px); }

/* Include vietos neturi dėžutės – lipni antraštė lieka body lygmenyje (C8) */
[data-rf-include]{ display:contents; }

[hidden]{ display:none; }


/* ==========================================================================
   03  TIPOGRAFIJA (§4)
   ========================================================================== */
h1,h2,h3,h4,h5,h6{
  font-family:var(--rf-font-display); font-weight:var(--rf-wght-head); color:var(--rf-ink);
  line-height:var(--rf-lh-head); letter-spacing:var(--rf-track-head);
  font-stretch:var(--rf-stretch-display); hyphens:manual; text-wrap:balance;
}
h1{ font-size:var(--rf-fs-h1); font-weight:var(--rf-wght-display); line-height:var(--rf-lh-display); letter-spacing:var(--rf-track-display); }
h2{ font-size:var(--rf-fs-h2); }
h3{ font-size:var(--rf-fs-h3); line-height:1.25; }
h4{ font-size:var(--rf-fs-h4); line-height:1.3; font-stretch:var(--rf-stretch-text); letter-spacing:0; }
h5,h6{ font-size:var(--rf-fs-body); line-height:1.4; font-stretch:var(--rf-stretch-text); letter-spacing:0; }
p{ text-wrap:pretty; }

.rf-display{
  font-family:var(--rf-font-display); font-weight:var(--rf-wght-display); font-size:var(--rf-fs-display);
  line-height:var(--rf-lh-display); letter-spacing:var(--rf-track-display); font-stretch:var(--rf-stretch-display);
  color:var(--rf-ink); text-wrap:balance; hyphens:manual;
}
@media (min-width:760px){ .rf-display{ min-height:calc(2em * var(--rf-lh-display)); } } /* CLS (C30) */
.rf-h1{ font-size:var(--rf-fs-h1); font-weight:var(--rf-wght-display); line-height:var(--rf-lh-display); letter-spacing:var(--rf-track-display); font-stretch:var(--rf-stretch-display); color:var(--rf-ink); text-wrap:balance; }
.rf-h2{ font-family:var(--rf-font-display); font-size:var(--rf-fs-h2); font-weight:var(--rf-wght-head); line-height:var(--rf-lh-head); letter-spacing:var(--rf-track-head); font-stretch:var(--rf-stretch-display); color:var(--rf-ink); text-wrap:balance; }
.rf-h3{ font-family:var(--rf-font-display); font-size:var(--rf-fs-h3); font-weight:var(--rf-wght-head); line-height:1.25; letter-spacing:var(--rf-track-head); font-stretch:var(--rf-stretch-display); color:var(--rf-ink); }
.rf-h4{ font-size:var(--rf-fs-h4); font-weight:var(--rf-wght-head); line-height:1.3; font-stretch:var(--rf-stretch-text); letter-spacing:0; color:var(--rf-ink); }

.rf-lead{ font-size:var(--rf-fs-lead); line-height:1.5; color:var(--rf-graphite); max-width:var(--rf-w-text); text-wrap:pretty; }
.rf-lead--voice{ font-family:var(--rf-font-voice); font-style:italic; font-weight:300; font-size:calc(var(--rf-fs-lead) * 1.1); line-height:1.45; color:var(--rf-ink); }
.rf-quote{ font-family:var(--rf-font-voice); font-style:italic; font-weight:300; font-size:var(--rf-fs-quote); line-height:1.28; color:var(--rf-ink); text-wrap:pretty; }
.u{ text-transform:none; }
.rf-nowrap{ white-space:nowrap; }


/* ==========================================================================
   04  MAKETO PRIMITYVAI (§5.0)
   ========================================================================== */
.rf-container{
  width:100%; max-width:calc(var(--rf-w-content) + 2 * var(--rf-gutter));
  padding-inline:var(--rf-gutter); margin-inline:auto;
}
.rf-section{ position:relative; padding-block:var(--rf-section-y); }
.rf-section--paper{ background:transparent; }                 /* rodo .rf-main --rf-page-bg (data-color-change) */
.rf-section--sand{ background:var(--rf-sand); --rf-dim-bg:var(--rf-sand); }
.rf-section--mat{ background:var(--rf-mat); --rf-dim-bg:var(--rf-mat); }
.rf-section--tight{ padding-block:calc(var(--rf-section-y) / 2); }
.rf-section--flush{ padding-block:0; }

/* Tinklelis 4 / 8 / 12 (C31) */
.rf-grid{ display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:var(--rf-gap); }
.rf-grid > *{ grid-column-start:auto; grid-column-end:span 4; min-width:0; }
.rf-col-m-1{ grid-column-end:span 1; } .rf-col-m-2{ grid-column-end:span 2; }
.rf-col-m-3{ grid-column-end:span 3; } .rf-col-m-4{ grid-column-end:span 4; }
.rf-grid > .rf-col-m-1{ grid-column-end:span 1; } .rf-grid > .rf-col-m-2{ grid-column-end:span 2; }
.rf-grid > .rf-col-m-3{ grid-column-end:span 3; } .rf-grid > .rf-col-m-4{ grid-column-end:span 4; }
@media (min-width:760px){
  .rf-grid{ grid-template-columns:repeat(8, minmax(0,1fr)); }
  .rf-grid > *,
  .rf-grid > [class*="rf-col-m-"]{ grid-column-end:span 8; }
  .rf-grid > .rf-col-t-1{ grid-column-end:span 1; } .rf-grid > .rf-col-t-2{ grid-column-end:span 2; }
  .rf-grid > .rf-col-t-3{ grid-column-end:span 3; } .rf-grid > .rf-col-t-4{ grid-column-end:span 4; }
  .rf-grid > .rf-col-t-5{ grid-column-end:span 5; } .rf-grid > .rf-col-t-6{ grid-column-end:span 6; }
  .rf-grid > .rf-col-t-7{ grid-column-end:span 7; } .rf-grid > .rf-col-t-8{ grid-column-end:span 8; }
}
@media (min-width:1000px){
  .rf-grid{ grid-template-columns:repeat(12, minmax(0,1fr)); }
  .rf-grid > *,
  .rf-grid > [class*="rf-col-m-"],
  .rf-grid > [class*="rf-col-t-"]{ grid-column-end:span 12; }
  .rf-grid > .rf-col-1{ grid-column-end:span 1; }   .rf-grid > .rf-col-2{ grid-column-end:span 2; }
  .rf-grid > .rf-col-3{ grid-column-end:span 3; }   .rf-grid > .rf-col-4{ grid-column-end:span 4; }
  .rf-grid > .rf-col-5{ grid-column-end:span 5; }   .rf-grid > .rf-col-6{ grid-column-end:span 6; }
  .rf-grid > .rf-col-7{ grid-column-end:span 7; }   .rf-grid > .rf-col-8{ grid-column-end:span 8; }
  .rf-grid > .rf-col-9{ grid-column-end:span 9; }   .rf-grid > .rf-col-10{ grid-column-end:span 10; }
  .rf-grid > .rf-col-11{ grid-column-end:span 11; } .rf-grid > .rf-col-12{ grid-column-end:span 12; }
  .rf-col-start-1{ grid-column-start:1; }   .rf-col-start-2{ grid-column-start:2; }
  .rf-col-start-3{ grid-column-start:3; }   .rf-col-start-4{ grid-column-start:4; }
  .rf-col-start-5{ grid-column-start:5; }   .rf-col-start-6{ grid-column-start:6; }
  .rf-col-start-7{ grid-column-start:7; }   .rf-col-start-8{ grid-column-start:8; }
  .rf-col-start-9{ grid-column-start:9; }   .rf-col-start-10{ grid-column-start:10; }
  .rf-col-start-11{ grid-column-start:11; } .rf-col-start-12{ grid-column-start:12; }
}

.rf-stack-y > * + *{ margin-top:var(--rf-s-5); }

.rf-visually-hidden{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden;
  clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; border:0;
}
.rf-skip{
  position:absolute; left:var(--rf-s-4); top:var(--rf-s-2); z-index:calc(var(--rf-z-mockbar) + 1);
  padding:12px 18px; background:var(--rf-ink); color:var(--rf-paper);
  font:var(--rf-wght-ui) 15px/1.2 var(--rf-font-text); text-decoration:none;
  transform:translateY(-200%); opacity:0;
}
.rf-skip:focus,.rf-skip:focus-visible{ transform:none; opacity:1; outline:2px solid var(--rf-paper); outline-offset:-5px; }


/* ==========================================================================
   05  MOCK JUOSTA (§5.1 – tik maketas)
   ========================================================================== */
.rf-mockbar{
  position:relative; z-index:var(--rf-z-mockbar);
  display:flex; align-items:center; gap:20px; height:var(--rf-mockbar-h);
  padding-inline:var(--rf-gutter); background:var(--rf-ink); color:var(--rf-mist);
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); line-height:1; letter-spacing:.02em;
  white-space:nowrap; overflow-x:auto; overflow-y:hidden; scrollbar-width:none; -webkit-overflow-scrolling:touch;
}
.rf-mockbar::-webkit-scrollbar{ display:none; }
.rf-mockbar__tag{ flex:none; color:var(--rf-paper); font-weight:500; text-transform:uppercase; letter-spacing:var(--rf-track-data); }
.rf-mockbar a{
  position:relative; flex:none; display:inline-flex; align-items:center; height:100%;
  color:var(--rf-mist); text-decoration:none; transition:color var(--rf-t-1) linear;
}
.rf-mockbar a::after{
  content:""; position:absolute; left:0; right:0; bottom:7px; height:2px; background:var(--rf-signal);
  transform:scaleX(0); transform-origin:left center; transition:transform var(--rf-t-2) var(--rf-e-out);
}
.rf-mockbar a[aria-current="page"]{ color:var(--rf-paper); }
.rf-mockbar a[aria-current="page"]::after{ transform:none; }
@media (hover:hover){ .rf-mockbar a:hover{ color:var(--rf-paper); } }
.rf-mockbar a:focus-visible{ outline:2px solid var(--rf-paper); outline-offset:-2px; color:var(--rf-paper); }
.rf-mockbar > :last-child{ margin-right:var(--rf-gutter); }
/* Atviros perdangos metu mock juosta po jomis (C7) */
body:has(.rf-offcanvas:not([hidden]), .rf-lightbox:not([hidden])) .rf-mockbar{ z-index:0; }


/* ==========================================================================
   06  ANTRAŠTĖ (desktop ≥ 1100) + MEGA MENIU (§5.2)
   ========================================================================== */
.rf-header{
  position:sticky; top:0; z-index:var(--rf-z-header);
  height:var(--rf-header-h);
  background-color:var(--rf-page-bg);                   /* ramybėje nepermatomas (Footer Reveal) */
  border-bottom:1px solid transparent;
  transition:background-color var(--rf-t-2) var(--rf-e-out), border-color var(--rf-t-2) var(--rf-e-out),
             transform var(--rf-t-2) var(--rf-e-out);
}
.rf-header.is-scrolled{
  background-color:var(--rf-header-bg);
  -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px);
  border-bottom-color:var(--rf-line);
}
.rf-header.is-hidden{ transform:translateY(-100%); }
.rf-header.is-hidden:focus-within,
.rf-header.is-hidden:has(.rf-mega:not([hidden])){ transform:none; }

.rf-header__bar{ position:relative; display:flex; align-items:center; gap:clamp(6px, 2vw, 12px); height:100%; }
.rf-header__logo{ display:inline-flex; align-items:center; min-height:44px; margin-right:auto; flex:none; }
.rf-header__logo img{ width:120px; height:auto; }

/* Telefonas: < 1280 – apvalus ikonos mygtukas (C32) */
.rf-header__tel{
  position:relative; flex:none; display:inline-block; width:44px; height:44px;
  border:1px solid var(--rf-line-ui); border-radius:var(--rf-r-round); color:var(--rf-ink);
  font-size:15px; line-height:44px; white-space:nowrap; overflow:hidden; text-indent:64px;
  text-decoration:none; transition:border-color var(--rf-t-1) linear, color var(--rf-t-1) linear;
}
.rf-header__tel::before{
  content:""; position:absolute; inset:0; margin:auto; width:20px; height:20px;
  background:currentColor; -webkit-mask:var(--rf-ico-phone) center / 20px 20px no-repeat; mask:var(--rf-ico-phone) center / 20px 20px no-repeat;
}
.rf-header__tel .rf-icon{ display:none; }
@media (hover:hover){ .rf-header__tel:hover{ border-color:var(--rf-ink); } }

.rf-header__bar > .rf-btn{ display:none; }
@media (min-width:380px){ .rf-header__bar > .rf-btn{ display:inline-flex; } }

.rf-header__menu{
  flex:none; display:inline-flex; align-items:center; gap:10px; min-height:44px; padding:0 2px 0 6px;
  font-weight:var(--rf-wght-ui); font-size:15px; color:var(--rf-ink);
}
.rf-header__menu::after{
  content:""; width:22px; height:8px; border-top:1.5px solid currentColor; border-bottom:1.5px solid currentColor;
  transition:transform var(--rf-t-2) var(--rf-e-out);
}
@media (hover:hover){ .rf-header__menu:hover::after{ transform:scaleX(.8); } }

.rf-nav{ display:none; }

@media (min-width:1100px){
  .rf-header__logo img{ width:148px; }
  .rf-header__logo{ margin-right:0; }
  .rf-header__bar{ gap:20px; }
  .rf-nav{ display:block; margin-left:auto; }
  .rf-header__menu{ display:none; }
}
@media (min-width:1280px){
  .rf-header__tel{
    width:auto; height:auto; border:0; border-radius:0; overflow:visible; text-indent:0;
    font-size:var(--rf-fs-small); line-height:1.4; color:var(--rf-lead); padding-block:4px;
  }
  .rf-header__tel::before{ content:none; }
  @media (hover:hover){ .rf-header__tel:hover{ color:var(--rf-moss); } }
}

.rf-nav__list{ display:flex; align-items:center; gap:4px 28px; }
.rf-nav__item--mega{ display:flex; align-items:center; }
.rf-nav__link{
  position:relative; display:inline-flex; align-items:center; min-height:44px;
  font-size:15px; font-weight:var(--rf-wght-ui); color:var(--rf-ink); text-decoration:none;
}
.rf-nav__link::after{                                  /* aktyvus puslapis – 2 px linija apačioje */
  content:""; position:absolute; left:0; right:0; bottom:6px; height:2px; background:var(--rf-ink);
  transform:scaleX(0); transform-origin:left center; transition:transform var(--rf-t-2) var(--rf-e-out);
}
.rf-nav__link[aria-current="page"]::after{ transform:none; }

/* Text Reveal [K 7.8]: tekstas skaidrus (vietai ir prieinamumui), matomos dvi ::before/::after kopijos */
.rf-nav__text{ position:relative; display:inline-block; overflow:hidden; line-height:1.4; padding-block:.12em; vertical-align:top; }
.rf-nav__text[data-text]{ color:transparent; }
.rf-nav__text[data-text]::before,
.rf-nav__text[data-text]::after{
  content:attr(data-text); position:absolute; left:0; top:.12em; white-space:nowrap; color:var(--rf-ink);
  transition:transform var(--rf-t-2) var(--rf-e-out);
}
.rf-nav__text[data-text]::after{ color:var(--rf-moss); transform:translateY(1.64em); }
@media (hover:hover){
  .rf-nav__link:hover .rf-nav__text::before{ transform:translateY(-1.64em); }
  .rf-nav__link:hover .rf-nav__text::after{ transform:translateY(0); }
}
.rf-nav__link:focus-visible .rf-nav__text::before{ transform:translateY(-1.64em); }
.rf-nav__link:focus-visible .rf-nav__text::after{ transform:translateY(0); }

.rf-nav__toggle{
  display:inline-grid; place-items:center; width:44px; height:44px; margin-left:-8px; margin-right:-12px;
  color:var(--rf-ink);
}
.rf-nav__toggle .rf-icon{ width:16px; height:16px; transition:transform var(--rf-t-2) var(--rf-e-out); }
.rf-nav__toggle[aria-expanded="true"] .rf-icon{ transform:rotate(180deg); }
@media (hover:hover){ .rf-nav__toggle:hover{ color:var(--rf-moss); } }

/* Mega meniu lapas: visu konteinerio pločiu, nusileidžia 8 px + fade 300 ms */
.rf-mega{
  position:absolute; top:100%; left:var(--rf-gutter); right:var(--rf-gutter); z-index:1;
  display:grid; grid-template-columns:repeat(12, minmax(0,1fr)); gap:0 var(--rf-gap);
  padding:32px 32px 28px; background:var(--rf-mat); box-shadow:var(--rf-d2); --rf-dim-bg:var(--rf-mat);
  animation:rf-drop-in 300ms var(--rf-e-out) both;
}
.rf-mega::before{ content:""; position:absolute; left:0; right:0; bottom:100%; height:calc((var(--rf-header-h) - 44px) / 2); } /* pelės tiltas: tik tarpas po 44 px nuorodomis */
.rf-mega.is-closing{ animation:rf-drop-out 220ms var(--rf-e-out) both; }
.rf-mega__col{ grid-column:span 4; display:flex; flex-direction:column; min-width:0; }
.rf-mega__group{
  margin-bottom:10px; font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); line-height:var(--rf-lh-data);
  letter-spacing:var(--rf-track-data); text-transform:uppercase; color:var(--rf-lead);
}
.rf-mega__col ul{ list-style:none; margin:0; padding:0; }
.rf-mega__col li a{
  display:flex; justify-content:space-between; align-items:baseline; gap:12px; min-height:40px; padding:9px 0;
  border-bottom:1px solid var(--rf-line); font-size:15px; line-height:1.4; color:var(--rf-ink); text-decoration:none;
  transition:color var(--rf-t-1) linear;
}
@media (hover:hover){ .rf-mega__col li a:hover{ color:var(--rf-moss); } }
.rf-mega__col > .rf-link--arrow{ margin-top:auto; padding-top:18px; align-self:flex-start; }
.rf-mega__feature{ grid-column:span 4; display:block; color:inherit; text-decoration:none; min-width:0; }
.rf-mega__feature .rf-frame{ max-width:none; }
.rf-mega__feature .rf-titleblock{ margin-top:-24px; margin-left:24px; position:relative; box-shadow:var(--rf-d1); }
.rf-mega__feature .rf-card__label{ margin-top:14px; }


/* ==========================================================================
   07  ANTRAŠTĖ MOBILIAJAME + OFF-CANVAS (§5.3)
   ========================================================================== */
.rf-offcanvas{
  position:fixed; inset:0; z-index:var(--rf-z-overlay);
  display:flex; flex-direction:column; background:var(--rf-paper); color:var(--rf-ink);
  overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch;
  animation:rf-fade-in 320ms var(--rf-e-out) both;       /* Fullscreen Cover Fade [K 7.11] */
}
.rf-offcanvas.is-closing{ animation:rf-fade-out 220ms var(--rf-e-out) both; }
html:has(.rf-offcanvas:not([hidden])),
html.is-locked{ overflow:hidden; }
.rf-offcanvas__bar{ flex:none; display:flex; align-items:center; justify-content:space-between; gap:16px; height:var(--rf-header-h); }
.rf-offcanvas__bar img{ width:120px; height:auto; }
.rf-offcanvas__nav{ flex:1 0 auto; padding-top:8px; padding-bottom:24px; }
.rf-offcanvas__nav ol,.rf-offcanvas__nav ul{ list-style:none; margin:0; padding:0; }
.rf-offcanvas__nav > ol > li{ padding:18px 0 16px; border-top:1px solid var(--rf-line); }
.rf-offcanvas__nav > ol > li:last-child{ border-bottom:1px solid var(--rf-line); }
.rf-offcanvas__nav > ol > li > a{
  display:block; font-family:var(--rf-font-display); font-size:2rem; line-height:1.1; font-weight:var(--rf-wght-head);
  font-stretch:100%; letter-spacing:var(--rf-track-head); color:var(--rf-ink); text-decoration:none;
  transition:color var(--rf-t-1) linear;
}
.rf-offcanvas__nav > ol > li > a[aria-current="page"]{ text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:.16em; text-decoration-color:var(--rf-signal); }
@media (hover:hover){ .rf-offcanvas__nav > ol > li > a:hover{ color:var(--rf-moss); } }
.rf-offcanvas__nav .rf-label{ display:block; margin-top:6px; }
.rf-offcanvas__sub{ margin-top:10px; }
.rf-offcanvas__sub > summary{
  display:inline-flex; align-items:center; gap:10px; min-height:44px; list-style:none;
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); letter-spacing:var(--rf-track-data); text-transform:uppercase; color:var(--rf-ink);
}
.rf-offcanvas__sub > summary::-webkit-details-marker{ display:none; }
.rf-offcanvas__sub > summary::after{
  content:""; width:16px; height:16px; background:currentColor;
  -webkit-mask:var(--rf-ico-plus) center / 16px no-repeat; mask:var(--rf-ico-plus) center / 16px no-repeat;
  transition:transform var(--rf-t-2) var(--rf-e-out);
}
.rf-offcanvas__sub[open] > summary::after{ transform:rotate(45deg); }
.rf-offcanvas__sub ul{ padding:2px 0 6px; }
.rf-offcanvas__sub li a{
  display:flex; justify-content:space-between; align-items:baseline; gap:12px; min-height:44px; padding:11px 0;
  border-bottom:1px solid var(--rf-line); font-size:17px; line-height:1.3; color:var(--rf-ink); text-decoration:none;
}
.rf-offcanvas__sub[open] ul{ animation:rf-fade-up 420ms var(--rf-e-out) both; }
.rf-offcanvas__contact{ flex:none; display:flex; flex-direction:column; align-items:flex-start; gap:6px; padding-top:8px; padding-bottom:32px; }
.rf-offcanvas__contact > a{
  font-family:var(--rf-font-display); font-size:1.375rem; line-height:1.3; font-stretch:100%;
  color:var(--rf-ink); text-decoration:none; padding-block:4px;
}
.rf-offcanvas__social{ display:flex; flex-wrap:wrap; gap:4px 20px; margin-top:12px; font-size:15px; color:var(--rf-graphite); }
.rf-offcanvas__social a{ display:inline-flex; align-items:center; min-height:44px; color:var(--rf-ink); text-decoration:none; }
@media (hover:hover){ .rf-offcanvas__contact a:hover{ color:var(--rf-moss); } }
/* Punktai įeina pakopomis (60 ms, fade-up 16 px) */
.rf-offcanvas__nav > ol > li,
.rf-offcanvas__contact{ animation:rf-fade-up 560ms var(--rf-e-out) both; animation-delay:calc(90ms + var(--rf-oc-i, 0) * 60ms); }
.rf-offcanvas__nav > ol > li:nth-child(2){ --rf-oc-i:1; }
.rf-offcanvas__nav > ol > li:nth-child(3){ --rf-oc-i:2; }
.rf-offcanvas__nav > ol > li:nth-child(4){ --rf-oc-i:3; }
.rf-offcanvas__nav > ol > li:nth-child(5){ --rf-oc-i:4; }
.rf-offcanvas__contact{ --rf-oc-i:5; }


/* ==========================================================================
   08  MYGTUKAI (§5.4)
   ========================================================================== */
.rf-btn{
  position:relative; isolation:isolate; overflow:hidden;
  display:inline-flex; align-items:center; justify-content:center; gap:12px;
  min-height:48px; padding:0 22px; border:1px solid transparent; border-radius:var(--rf-r-0);
  font-family:var(--rf-font-text); font-size:15px; font-weight:var(--rf-wght-ui); line-height:1.2; font-stretch:100%; letter-spacing:0;
  text-decoration:none; white-space:nowrap; cursor:pointer; user-select:none; -webkit-user-select:none;
  transition:color var(--rf-t-1) linear 60ms, border-color var(--rf-t-1) linear, transform 140ms var(--rf-e-out), opacity var(--rf-t-1) linear;
}
.rf-btn::before{                                        /* žalias žymeklio užpildas iš kairės */
  content:""; position:absolute; inset:-1px; z-index:-1; background:var(--rf-signal);
  transform:scaleX(0); transform-origin:left center; transition:transform 550ms var(--rf-e-out);
}
.rf-btn::after{                                         /* 16 px rodyklė (C11) */
  content:""; flex:none; width:16px; height:16px; background:currentColor;
  -webkit-mask:var(--rf-ico-arrow) center / 16px 16px no-repeat; mask:var(--rf-ico-arrow) center / 16px 16px no-repeat;
  transition:transform var(--rf-t-1) var(--rf-e-out);
}
.rf-btn:has(.rf-icon)::after,
.rf-btn--noarrow::after,
.rf-btn--sm:not(.rf-btn--arrow)::after{ content:none; }
.rf-btn .rf-icon{ width:16px; height:16px; transition:transform var(--rf-t-1) var(--rf-e-out); }
.rf-btn--primary{ background:var(--rf-ink); color:var(--rf-paper); }
.rf-btn--secondary{ background:transparent; color:var(--rf-ink); border-color:var(--rf-ink); }
@media (hover:hover){
  .rf-btn:hover::before{ transform:scaleX(1); }
  .rf-btn--primary:hover{ color:var(--rf-ink); }
  .rf-btn:hover::after,.rf-btn:hover .rf-icon{ transform:translateX(4px); }
}
.rf-btn:focus-visible::before{ transform:scaleX(1); }
.rf-btn--primary:focus-visible{ color:var(--rf-ink); }
.rf-btn:focus-visible::after,.rf-btn:focus-visible .rf-icon{ transform:translateX(4px); }
.rf-btn:active{ transform:scale(.98); }
.rf-btn:disabled,.rf-btn[aria-disabled="true"]{ opacity:.4; pointer-events:none; }
.rf-btn--sm{ min-height:40px; padding:0 16px; font-size:14px; gap:10px; }
@media (max-width:759.98px){ .rf-btn--block{ display:flex; width:100%; } }

.rf-iconbtn{
  display:inline-grid; place-items:center; flex:none; width:44px; height:44px; padding:0;
  border:1px solid var(--rf-line-ui); border-radius:var(--rf-r-round); background:transparent; color:var(--rf-ink);
  transition:border-color var(--rf-t-1) linear, background-color var(--rf-t-1) linear, color var(--rf-t-1) linear;
}
.rf-iconbtn .rf-icon{ width:20px; height:20px; transition:transform var(--rf-t-1) var(--rf-e-out); }
.rf-iconbtn:disabled,.rf-iconbtn[aria-disabled="true"]{ opacity:.4; pointer-events:none; }
.rf-iconbtn:active{ background-color:var(--rf-wash); }
@media (hover:hover){
  .rf-iconbtn:hover{ border-color:var(--rf-ink); }
  .rf-iconbtn:hover .rf-icon--arrow-left,.rf-iconbtn--prev:hover .rf-icon{ transform:translateX(-3px); }
  .rf-iconbtn:hover .rf-icon--arrow-right,.rf-iconbtn--next:hover .rf-icon{ transform:translateX(3px); }
  .rf-iconbtn:hover .rf-icon--arrow-up-right{ transform:translate(2px,-2px); }
  .rf-iconbtn:hover .rf-icon--chevron-down{ transform:translateY(3px); }
}
.rf-iconbtn:focus-visible{ border-color:var(--rf-ink); }


/* ==========================================================================
   09  NUORODOS (§5.5)
   ========================================================================== */
.rf-link{
  display:inline; padding-block:4px; color:var(--rf-ink); text-decoration:none; cursor:pointer;
  background-image:linear-gradient(currentColor, currentColor); background-repeat:no-repeat;
  background-position:0 calc(100% - 3px); background-size:100% 1px;
  transition:color var(--rf-t-1) linear;
}
button.rf-link{ font:inherit; padding:4px 0; line-height:inherit; }
@media (hover:hover){ .rf-link:hover{ color:var(--rf-moss); animation:rf-underline-redraw 600ms var(--rf-e-draw); } }
.rf-link:focus-visible{ color:var(--rf-moss); }

.rf-link--arrow{
  position:relative; display:inline-flex; align-items:center; min-height:24px; padding:4px 52px 4px 0;
  font-weight:var(--rf-wght-ui); background-image:none;
}
.rf-link--arrow::before{                                /* linija-rodyklė 24 → 40 px (scaleX .6 → 1) */
  content:""; position:absolute; right:0; top:50%; width:40px; height:1px; margin-top:-.5px; background:currentColor;
  transform:scaleX(.6); transform-origin:left center; transition:transform var(--rf-t-2) var(--rf-e-out);
}
.rf-link--arrow::after{                                 /* rodyklės galvutė */
  content:""; position:absolute; right:17px; top:50%; width:7px; height:7px; margin-top:-3.5px;
  border-top:1px solid currentColor; border-right:1px solid currentColor;
  transform:rotate(45deg); transition:transform var(--rf-t-2) var(--rf-e-out);
}
@media (hover:hover){
  .rf-link--arrow:hover{ animation:none; }
  .rf-link--arrow:hover::before{ transform:scaleX(1); }
  .rf-link--arrow:hover::after{ transform:translateX(16px) rotate(45deg); }
}
.rf-link--arrow:focus-visible::before{ transform:scaleX(1); }
.rf-link--arrow:focus-visible::after{ transform:translateX(16px) rotate(45deg); }
.rf-link--arrow .rf-count{ margin-left:6px; }

.rf-biglink{
  position:relative; display:inline-flex; align-items:center; gap:.28em; padding-bottom:.1em;
  font-family:var(--rf-font-display); font-size:var(--rf-fs-biglink); font-weight:var(--rf-wght-display);
  line-height:1; letter-spacing:var(--rf-track-display); font-stretch:112%; color:var(--rf-ink); text-decoration:none;
}
.rf-biglink::after{                                     /* žalia 3 px linija po žodžiu */
  content:""; position:absolute; left:0; right:calc(.56em + .28em); bottom:0; height:3px; background:var(--rf-signal);
  transform:scaleX(0); transform-origin:left center; transition:transform 700ms var(--rf-e-draw);
}
.rf-biglink:not(:has(.rf-icon))::after{ right:0; }
.rf-biglink .rf-icon{ width:.56em; height:.56em; stroke-width:.9; transition:transform var(--rf-t-2) var(--rf-e-out); }
@media (hover:hover){
  .rf-biglink:hover::after{ transform:scaleX(1); }
  .rf-biglink:hover .rf-icon{ transform:translateX(.14em); }
}
.rf-biglink:focus-visible::after{ transform:scaleX(1); }
.rf-biglink:focus-visible .rf-icon{ transform:translateX(.14em); }

/* Nuorodos tekste */
.rf-prose a,
.rf-lead a:not([class]),
.rf-faq__a a{
  color:var(--rf-ink); text-decoration:underline; text-decoration-thickness:1px;
  text-underline-offset:.2em; text-decoration-color:var(--rf-moss); transition:color var(--rf-t-1) linear;
}
@media (hover:hover){ .rf-prose a:hover,.rf-lead a:not([class]):hover,.rf-faq__a a:hover{ color:var(--rf-moss); } }


/* ==========================================================================
   10  EYEBROW, ETIKETĖS, ŽYMOS, DUOMENYS (§5.6)
   ========================================================================== */
.rf-eyebrow{
  display:flex; flex-wrap:wrap; align-items:center;
  margin:0; font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); font-weight:400; line-height:var(--rf-lh-data);
  letter-spacing:var(--rf-track-data); text-transform:uppercase; color:var(--rf-lead); font-stretch:100%;
}
h2.rf-eyebrow,h3.rf-eyebrow{ font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); font-weight:400; line-height:var(--rf-lh-data); letter-spacing:var(--rf-track-data); color:var(--rf-lead); text-wrap:wrap; }
.rf-eyebrow__nr{ display:inline-flex; align-items:center; color:var(--rf-ink); }
.rf-eyebrow__nr::after{ content:""; width:24px; height:1px; margin:0 12px; background:var(--rf-line-ui); }

.rf-label{
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); font-weight:400; line-height:var(--rf-lh-data);
  letter-spacing:var(--rf-track-data); text-transform:uppercase; color:var(--rf-lead); font-stretch:100%;
  font-variant-numeric:tabular-nums;
}
.rf-label b,.rf-label strong{ color:var(--rf-ink); font-weight:500; }
.rf-value{
  margin:0; font-family:var(--rf-font-text); font-size:15px; line-height:var(--rf-lh-data); font-weight:400;
  color:var(--rf-ink); font-variant-numeric:tabular-nums; font-stretch:100%;
}
.rf-value a{ color:var(--rf-ink); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:.2em; text-decoration-color:var(--rf-moss); }
@media (hover:hover){ .rf-value a:hover{ color:var(--rf-moss); } }
.rf-count{
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); font-weight:400; line-height:1;
  letter-spacing:.02em; color:var(--rf-lead); font-variant-numeric:tabular-nums; vertical-align:baseline;
}
.rf-tag{
  display:inline-flex; align-items:center; gap:7px; flex:none; padding:3px 8px;
  border:1px solid var(--rf-line-ui); border-radius:var(--rf-r-0); background:transparent;
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); font-weight:400; line-height:var(--rf-lh-data);
  letter-spacing:var(--rf-track-data); text-transform:uppercase; color:var(--rf-graphite); white-space:nowrap;
}
.rf-tag::before{ content:""; flex:none; width:8px; height:8px; background:var(--rf-lead); }
.rf-tag--photo::before{ background:var(--rf-signal); }
.rf-tag--render::before{ background:var(--rf-lead); }
.rf-tag--plan::before{ background:transparent; box-shadow:inset 0 0 0 1px var(--rf-ink); }
.rf-tag--vision::before{ background:repeating-linear-gradient(-45deg, var(--rf-ink) 0 1px, transparent 1px 3px); box-shadow:inset 0 0 0 1px var(--rf-ink); }
.rf-tag--archive::before{ background:var(--rf-sand-2); box-shadow:inset 0 0 0 1px var(--rf-line-ui); }
.rf-tag--stock{ border-style:dashed; }
.rf-tag--stock::before{ content:none; }


/* ==========================================================================
   11  SEKCIJOS ANTRAŠTĖ (§5.7)
   ========================================================================== */
.rf-sechead{ display:grid; gap:14px; margin-bottom:var(--rf-head-gap); }
.rf-sechead__aside{ display:flex; flex-direction:column; align-items:flex-start; gap:18px; margin-top:6px; }
@media (min-width:1000px){
  .rf-sechead{ grid-template-columns:repeat(12, minmax(0,1fr)); column-gap:var(--rf-gap); row-gap:18px; align-items:end; }
  .rf-sechead > *{ grid-column:1 / span 7; }
  .rf-sechead > .rf-sechead__aside{ grid-column:9 / span 4; grid-row:1 / span 2; align-self:end; margin-top:0; }
}


/* ==========================================================================
   12  VAIZDŲ RĖMAI (paspartu), KADRAVIMO ŽYMĖS, RŪKAS, MATMUO (§5.8)
       transform savininkai: .rf-frame (pakilimas/tilt) · __crop (jokio) ·
       __par (scroll parallax) · __img (hover zoom / pelės poslinkis)
   ========================================================================== */
.rf-frame{ position:relative; isolation:isolate; display:block; width:100%; margin:0; }
.rf-frame__crop{
  position:relative; overflow:hidden; aspect-ratio:var(--ar, auto);
  background:var(--rf-sand);                          /* plokštė, kol vaizdo nėra (§9 atsarginis) */
}
.rf-frame__crop:has(> .rf-frame__par){ aspect-ratio:var(--ar, 4 / 3); }
.rf-frame__par{ position:absolute; inset:-6% 0; }      /* aukštis 112 %; transform rašo data-img-parallax */
.rf-frame__crop > img,
.rf-frame__par > img,
.rf-frame__img{
  display:block; width:100%; height:100%; object-fit:cover; object-position:50% 50%;
  transform-origin:50% 50%; transition:transform 900ms var(--rf-e-zoom), filter var(--rf-t-3) var(--rf-e-out);
}
/* Šešėlio sluoksnis: kitas lygis iš anksto nupieštas, keičiamas tik opacity (§6/1) */
.rf-frame::after{
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  box-shadow:var(--rf-d2); opacity:0; transition:opacity var(--rf-t-3) var(--rf-e-out);
}
.rf-frame[data-tilt]::after,.rf-card--featured .rf-card__frame::after{ box-shadow:var(--rf-d3); }
@media (hover:hover){
  a:hover .rf-frame::after,button:hover .rf-frame::after,
  a.rf-frame:hover::after,.rf-frame[data-lightbox]:hover::after,[data-lightbox]:hover > .rf-frame::after{ opacity:1; }
  a:hover .rf-frame__img,
  a:hover .rf-frame__crop > img{ transform:scale(1.05); }
}
a:focus-visible .rf-frame::after,.rf-frame[data-lightbox]:focus-visible::after{ opacity:1; }
a:focus-visible .rf-frame__img,a:focus-visible .rf-frame__crop > img{ transform:scale(1.05); }

/* Paspartu (numatytasis portfolio) */
.rf-frame--mat{ background:var(--rf-mat); padding:var(--rf-mat-pad); box-shadow:var(--rf-d1); --rf-dim-bg:var(--rf-mat); }
.rf-frame--mat .rf-frame__crop::after,
.rf-frame--plan .rf-frame__crop::after{
  content:""; position:absolute; inset:0; z-index:1; pointer-events:none; box-shadow:var(--rf-bevel);
}
.rf-frame--bare{ background:transparent; padding:0; box-shadow:none; }

/* Planas: contain, paspartu fonas, 24 px vidinis tarpas, multiply */
.rf-frame--plan{ background:var(--rf-mat); padding:var(--rf-mat-pad); box-shadow:var(--rf-d1); }
.rf-frame--plan .rf-frame__crop{ background:var(--rf-mat); padding:24px; }
.rf-frame--plan .rf-frame__crop > img,
.rf-frame--plan .rf-frame__img{ object-fit:contain; mix-blend-mode:multiply; }
.rf-frame[data-mono] .rf-frame__img,
.rf-frame[data-mono] .rf-frame__crop > img{ filter:grayscale(1) contrast(1.05); }

/* Kadravimo žymės: 4 L kampai 10 px, 6 px už rėmo; hover – ~3 px į išorę + tušas */
.rf-frame--marks::before{
  content:""; position:absolute; inset:-6px; z-index:2; pointer-events:none; color:var(--rf-line-ui);
  background:
    linear-gradient(currentColor,currentColor) left top / 10px 1px no-repeat,
    linear-gradient(currentColor,currentColor) left top / 1px 10px no-repeat,
    linear-gradient(currentColor,currentColor) right top / 10px 1px no-repeat,
    linear-gradient(currentColor,currentColor) right top / 1px 10px no-repeat,
    linear-gradient(currentColor,currentColor) left bottom / 10px 1px no-repeat,
    linear-gradient(currentColor,currentColor) left bottom / 1px 10px no-repeat,
    linear-gradient(currentColor,currentColor) right bottom / 10px 1px no-repeat,
    linear-gradient(currentColor,currentColor) right bottom / 1px 10px no-repeat;
  transition:transform var(--rf-t-2) var(--rf-e-out), color var(--rf-t-2) linear;
}
@media (hover:hover){
  a:hover .rf-frame--marks::before,.rf-frame--marks:is(a,[data-lightbox]):hover::before{ transform:scale(1.014, 1.018); color:var(--rf-ink); }
}
a:focus-visible .rf-frame--marks::before{ transform:scale(1.014, 1.018); color:var(--rf-ink); }

/* Rūkas (oro perspektyva): ::before --rf-paper, opacity = data-haze (C26) */
:where([data-haze]){ position:relative; }
.rf-frame--haze::before,[data-haze]::before{
  content:""; position:absolute; inset:0; z-index:3; pointer-events:none;
  background:var(--rf-paper); opacity:var(--rf-haze-o, .24);
}
/* Rėme rūkas dengia tik vaizdą (__crop::before): parašas ir žyma lieka kontrastingi,
   o --marks (rėmo ::before) su rūku suderinami (C26) */
.rf-frame:is(.rf-frame--haze,[data-haze])::before{ content:none; }
.rf-frame:is(.rf-frame--haze,[data-haze]) > .rf-frame__crop::before{
  content:""; position:absolute; inset:0; z-index:2; pointer-events:none;
  background:var(--rf-paper); opacity:var(--rf-haze-o, .24);
}
[data-haze="0.1"]{ --rf-haze-o:.1; }   [data-haze="0.15"]{ --rf-haze-o:.15; } [data-haze="0.2"]{ --rf-haze-o:.2; }
[data-haze="0.24"]{ --rf-haze-o:.24; } [data-haze="0.3"]{ --rf-haze-o:.3; }   [data-haze="0.35"]{ --rf-haze-o:.35; }
[data-haze="0.4"]{ --rf-haze-o:.4; }   [data-haze="0.45"]{ --rf-haze-o:.45; } [data-haze="0.5"]{ --rf-haze-o:.5; }
[data-haze="0.6"]{ --rf-haze-o:.6; }   [data-haze="0.62"]{ --rf-haze-o:.62; } [data-haze="0"]{ --rf-haze-o:0; }

/* Archyvas: pilka → spalva hover/fokuso metu */
.rf-frame--archive .rf-frame__img,
.rf-frame--archive .rf-frame__crop > img{ filter:grayscale(1) contrast(1.06); }
@media (hover:hover){
  a:hover .rf-frame--archive .rf-frame__img,
  a:hover .rf-frame--archive .rf-frame__crop > img{ filter:none; }
}
a:focus-visible .rf-frame--archive .rf-frame__img,
a:focus-visible .rf-frame--archive .rf-frame__crop > img{ filter:none; }

/* Parašas „Pav. {n} – {subject}“ (C28) */
.rf-frame__cap{
  display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; padding-top:12px;
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); line-height:var(--rf-lh-data);
  letter-spacing:.02em; color:var(--rf-lead);
}
.rf-frame--mat > .rf-frame__cap,.rf-frame--plan > .rf-frame__cap{ padding-bottom:2px; }
/* Lightbox trigeris RFX.frame({lightbox}) – a.rf-frame__link > figure (C18) */
.rf-frame__link{ display:block; color:inherit; text-decoration:none; }
.rf-frame__link:focus-visible{ outline-offset:6px; }

/* Matmens linija */
.rf-dim{
  position:relative; display:flex; align-items:center; justify-content:center; min-height:16px;
  color:var(--rf-line-ui); pointer-events:none;
}
.rf-dim__line{ position:absolute; left:0; right:0; top:50%; height:1px; margin-top:-.5px; background:currentColor; transform-origin:50% 50%; }
.rf-dim::before,.rf-dim::after{                         /* 45° brūkšneliai galuose (7 px) */
  content:""; position:absolute; top:50%; width:1px; height:11px; margin-top:-5.5px; background:currentColor;
  transform:rotate(45deg);
}
.rf-dim::before{ left:0; } .rf-dim::after{ right:0; }
.rf-dim__val{
  position:relative; padding:0 12px; background:var(--rf-dim-bg);
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); line-height:var(--rf-lh-data); letter-spacing:.02em;
  color:var(--rf-graphite); font-variant-numeric:tabular-nums;
  max-width:calc(100% - 28px); text-align:center; text-wrap:balance;   /* siaurame lape laužiasi, niekada neišlenda */
}


/* ==========================================================================
   13  SPAUDAS rf-titleblock (§5.9)
   ========================================================================== */
.rf-titleblock{
  position:relative; container:rf-tb / inline-size;
  background:var(--rf-mat); color:var(--rf-ink); box-shadow:var(--rf-d0); --rf-dim-bg:var(--rf-mat);
  --rf-tb-pad:clamp(16px, 1.6vw, 24px);
}
.rf-titleblock__head{
  display:flex; justify-content:space-between; align-items:center; gap:12px;
  padding:14px var(--rf-tb-pad) 13px; border-bottom:1px solid var(--rf-line);
}
.rf-titleblock__head b{ display:inline-block; }
.rf-titleblock__title{
  padding:16px var(--rf-tb-pad) 17px; border-bottom:1px solid var(--rf-line);
  font-family:var(--rf-font-display); font-size:clamp(1.25rem, 1.12rem + .45vw, 1.5rem); line-height:1.22; font-weight:var(--rf-wght-head);
  letter-spacing:var(--rf-track-head); color:var(--rf-ink); text-wrap:balance;
}
h2.rf-titleblock__title,h3.rf-titleblock__title{ font-stretch:var(--rf-stretch-text); }
.rf-titleblock__rows{ margin:0; padding:4px var(--rf-tb-pad); }
.rf-titleblock__rows > div{
  display:grid; grid-template-columns:96px minmax(0,1fr); gap:12px; align-items:baseline;
  padding:9px 0 10px; border-bottom:1px solid var(--rf-line);
}
.rf-titleblock__rows > div:last-child{ border-bottom:0; }
.rf-titleblock__rows dt{ margin:0; }
.rf-titleblock__rows dd{ margin:0; min-width:0; }
.rf-titleblock__action{
  display:flex; justify-content:space-between; align-items:center; gap:16px; min-height:56px;
  padding:14px var(--rf-tb-pad); border-top:1px solid var(--rf-line);
  font-size:15px; font-weight:var(--rf-wght-ui); color:var(--rf-ink); text-decoration:none;
  transition:color var(--rf-t-1) linear;
}
.rf-titleblock__action .rf-icon{ width:20px; height:20px; transition:transform var(--rf-t-1) var(--rf-e-out); }
.rf-titleblock__action:not(:has(.rf-icon))::after{
  content:""; width:18px; height:18px; flex:none; background:currentColor;
  -webkit-mask:var(--rf-ico-arrow) center / 18px no-repeat; mask:var(--rf-ico-arrow) center / 18px no-repeat;
  transition:transform var(--rf-t-1) var(--rf-e-out);
}
@media (hover:hover){
  .rf-titleblock__action:hover{ color:var(--rf-moss); }
  .rf-titleblock__action:hover .rf-icon,.rf-titleblock__action:hover::after{ transform:translateX(4px); }
}
.rf-titleblock__action:focus-visible{ outline-offset:-3px; }
.rf-titleblock__controls{
  display:flex; flex-wrap:wrap; align-items:center; gap:8px;
  padding:14px var(--rf-tb-pad) 18px; border-top:1px solid var(--rf-line);
}
.rf-titleblock__controls > :first-child{ margin-right:auto; }
/* Juostos kortelė ir kt. turinys spaude */
.rf-titleblock > :is(h2,h3,.rf-h2,.rf-eyebrow,.rf-lead,.rf-link,.rf-btn,p:not([class]),ul:not([class])):not(.rf-titleblock__title){
  margin-inline:var(--rf-tb-pad);
}
.rf-titleblock > :is(.rf-eyebrow,h2,h3,.rf-h2):not(.rf-titleblock__title):first-child{ margin-top:var(--rf-tb-pad); }
.rf-titleblock > * + :is(p:not([class]),ul:not([class]),.rf-lead,.rf-link,.rf-btn,h2:not(.rf-titleblock__title),h3:not(.rf-titleblock__title)){ margin-top:14px; }
.rf-titleblock > :is(p:not([class]),.rf-lead,.rf-link,ul:not([class]),.rf-btn):last-child{ margin-bottom:var(--rf-tb-pad); }

/* Variantai */
.rf-titleblock--hero,.rf-titleblock--float{ box-shadow:var(--rf-d3); }
.rf-titleblock--contact{ box-shadow:var(--rf-d1); }
.rf-titleblock--contact > .rf-label{ display:block; padding:14px var(--rf-tb-pad) 0; border-top:1px solid var(--rf-line); }
.rf-titleblock__social{ list-style:none; margin:0; padding:4px var(--rf-tb-pad) 12px; display:flex; flex-wrap:wrap; gap:0 20px; }
.rf-titleblock__social a{ display:inline-flex; align-items:center; min-height:44px; font-size:15px; color:var(--rf-ink); text-decoration:none; transition:color var(--rf-t-1) linear; }
@media (hover:hover){ .rf-titleblock__social a:hover{ color:var(--rf-moss); } }
.rf-titleblock--category .rf-titleblock__rows > div{ grid-template-columns:minmax(96px, 40%) minmax(0,1fr); }
/* 2 stulpelių dl (C25): --project ir --compact, kai spaudas ≥ 560 px */
@container rf-tb (min-width:560px){
  .rf-titleblock--project .rf-titleblock__rows,
  .rf-titleblock--compact .rf-titleblock__rows{ display:grid; grid-template-columns:1fr 1fr; column-gap:28px; }
  .rf-titleblock--project .rf-titleblock__rows > div:nth-last-child(2):nth-child(odd),
  .rf-titleblock--compact .rf-titleblock__rows > div:nth-last-child(2):nth-child(odd){ border-bottom:0; }
}
/* Kompaktiškas (mobile): etiketė virš reikšmės, 2 stulpeliai */
.rf-titleblock--compact .rf-titleblock__rows{ display:grid; grid-template-columns:1fr 1fr; column-gap:20px; }
.rf-titleblock--compact .rf-titleblock__rows > div{ grid-template-columns:1fr; gap:2px; padding:10px 0; }
.rf-titleblock--compact .rf-titleblock__rows > div:nth-last-child(2):nth-child(odd){ border-bottom:0; }
@media (max-width:999.98px){
  .rf-titleblock--hero{ box-shadow:var(--rf-d1); }
  .rf-titleblock--hero .rf-titleblock__rows{ display:grid; grid-template-columns:1fr 1fr; column-gap:20px; }
  .rf-titleblock--hero .rf-titleblock__rows > div{ grid-template-columns:1fr; gap:2px; padding:10px 0; }
  .rf-titleblock--hero .rf-titleblock__rows > div:nth-last-child(2):nth-child(odd){ border-bottom:0; }
}


/* ==========================================================================
   14  PROJEKTO KORTELĖ – VISI VARIANTAI (§5.10)
   ========================================================================== */
.rf-card{ position:relative; min-width:0; }
.rf-card__link{ display:block; color:inherit; text-decoration:none; }
.rf-card__link:focus-visible{ outline-offset:8px; }
.rf-card__frame{ transition:transform var(--rf-t-3) var(--rf-e-out); }
.rf-card__label{ margin-top:18px; padding-top:14px; border-top:1px solid var(--rf-line); }
.rf-card__top{ display:flex; justify-content:space-between; align-items:center; gap:12px; min-height:26px; margin-bottom:10px; }
.rf-card__nr{ white-space:nowrap; }
.rf-card__title{
  display:inline; font-family:var(--rf-font-text); font-size:var(--rf-fs-h4); line-height:1.3; font-weight:var(--rf-wght-head);
  font-stretch:var(--rf-stretch-text); letter-spacing:0; color:var(--rf-ink); text-wrap:pretty;
  background-image:linear-gradient(var(--rf-ink), var(--rf-ink)); background-repeat:no-repeat;
  background-position:0 100%; background-size:0 1px; transition:background-size 600ms var(--rf-e-draw);
}
.rf-card__meta{ margin-top:6px; font-size:var(--rf-fs-small); line-height:1.45; color:var(--rf-lead); }
.rf-card__meta + .rf-tag,.rf-card__label > .rf-tag:last-child{ margin-top:10px; }
.rf-card__tags{ display:inline-flex; flex-wrap:wrap; align-items:center; gap:6px; }
p.rf-card__tags{ display:flex; margin-top:12px; }                    /* --featured: žyma po meta */
.rf-card__pending{ margin-left:auto; }
@media (hover:hover){
  .rf-card__link:hover .rf-card__frame{ transform:translateY(-6px); }
  .rf-card__link:hover .rf-card__title{ background-size:100% 1px; }
}
.rf-card__link:focus-visible .rf-card__frame{ transform:translateY(-6px); }
.rf-card__link:focus-visible .rf-card__title{ background-size:100% 1px; }
.rf-card__frame.is-tilting .rf-frame__img,
.rf-card__frame.is-tilting .rf-frame__crop > img{ transition:transform 250ms var(--rf-e-out); }

/* --wide: 2 stulpeliai, 3:2 */
@media (min-width:640px){ .rf-card--wide{ grid-column:span 2; } }
/* --featured: tilt rėmas (JS), be žymių; etiketė po rėmu nejuda */
@media (hover:hover) and (pointer:fine) and (min-width:1000px){
  .rf-card--featured .rf-card__link:hover .rf-card__frame[data-tilt]{ transform:translateY(-6px) scale(1.012); }
}
/* --archive: pilka → spalva; žyma šalia technikos */
.rf-card--archive .rf-card__top{ justify-content:flex-start; flex-wrap:wrap; }
.rf-card--archive .rf-card__top > .rf-card__nr{ margin-right:auto; }
/* --mini: 3:2, pavadinimas 16 px, meta be Nr. */
.rf-card--mini .rf-card__label{ margin-top:14px; padding-top:12px; }
.rf-card--mini .rf-card__title{ font-size:1rem; line-height:1.35; }
.rf-card--mini .rf-card__top{ margin-bottom:6px; min-height:0; }
.rf-card--mini .rf-card__meta{ font-size:var(--rf-fs-small); }
/* --all: plytelė „Visi 68 projektai“ (C29) */
.rf-card--all{
  position:relative; isolation:isolate; display:flex; flex-direction:column; gap:14px; min-width:0;
  padding:calc(72px + 28px) 28px 28px; background:var(--rf-paper); color:var(--rf-ink);
  --rf-dim-bg:var(--rf-paper); transition:background-color var(--rf-t-2) var(--rf-e-out);
}
.rf-card--all::before,
.rf-card--all::after{
  content:""; position:absolute; left:0; right:0; top:0; height:72px; z-index:-1; pointer-events:none;
  background:repeating-linear-gradient(-45deg, var(--rf-line) 0 1px, transparent 1px 10px);
  border-bottom:1px solid var(--rf-line);
}
.rf-card--all::after{
  background:repeating-linear-gradient(45deg, var(--rf-line-ui) 0 1px, transparent 1px 10px);
  opacity:0; transition:opacity var(--rf-t-2) var(--rf-e-out);
}
.rf-card--all :is(h2,h3){ font-size:clamp(1.5rem, 1.25rem + 1vw, 2.125rem); line-height:1.1; font-weight:var(--rf-wght-head); font-stretch:var(--rf-stretch-display); }
.rf-card--all ul{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:4px 8px; font-size:var(--rf-fs-small); line-height:1.5; color:var(--rf-graphite); }
.rf-card--all li{ white-space:nowrap; }
.rf-card--all li:not(:last-child)::after{ content:"·"; margin-left:8px; color:var(--rf-lead); }
.rf-card--all li a{ color:var(--rf-graphite); text-decoration:none; transition:color var(--rf-t-1) linear; }
@media (hover:hover){ .rf-card--all li a:hover{ color:var(--rf-moss); } }
.rf-card--all .rf-dim{ margin-block:8px 4px; }
.rf-card--all > .rf-card__link{ display:flex; flex-direction:column; gap:14px; color:inherit; text-decoration:none; }
.rf-card--all > .rf-card__link:focus-visible{ outline-offset:10px; }
@media (hover:hover){ .rf-card--all:hover{ background-color:var(--rf-mat); --rf-dim-bg:var(--rf-mat); } .rf-card--all:hover::after{ opacity:1; } }
.rf-card--all:focus-within{ background-color:var(--rf-mat); --rf-dim-bg:var(--rf-mat); }
.rf-card--all:focus-within::after{ opacity:1; }
.rf-card--all .rf-link--arrow{ align-self:flex-start; margin-top:4px; }
.rf-card--all .rf-card__body{ display:flex; flex-direction:column; align-items:flex-start; gap:14px; min-width:0; }
.rf-card--all .rf-card__body > .rf-dim{ align-self:stretch; }
.rf-card--all .rf-card__title{ display:block; background:none; }
.rf-card--all .rf-card__title > a{ color:inherit; text-decoration:none; }
/* --row: žiniaraščio eilutė – žr. 16 */


/* ==========================================================================
   15  FILTRŲ JUOSTA + SKAITIKLIS + RODINIO JUNGIKLIS (§5.11)
   ========================================================================== */
.rf-filterbar{
  position:sticky; top:var(--rf-header-offset); z-index:var(--rf-z-sticky);
  background-color:var(--rf-header-bg); -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px);
  border-bottom:1px solid var(--rf-line); --rf-dim-bg:var(--rf-paper);
  transition:transform var(--rf-t-2) var(--rf-e-out);
}
.rf-filterbar__inner{ display:flex; flex-wrap:wrap; align-items:flex-end; column-gap:24px; }
.rf-filters{
  flex:1 1 100%; min-width:0; display:flex; align-items:flex-end;
  overflow-x:auto; overflow-y:hidden; scrollbar-width:none; overscroll-behavior-x:contain;
  scroll-snap-type:x proximity; scroll-padding-inline:var(--rf-gutter);
  margin-inline:calc(-1 * var(--rf-gutter)); padding-inline:var(--rf-gutter); padding-block:6px 0;
  -webkit-mask-image:linear-gradient(to right, #000 calc(100% - 56px), transparent);
          mask-image:linear-gradient(to right, #000 calc(100% - 56px), transparent);
}
.rf-filters::-webkit-scrollbar{ display:none; }
.rf-filters__group{ position:relative; display:flex; align-items:flex-end; flex:none; }
.rf-filters__caption{ display:none; }
.rf-filters__sep{ flex:none; align-self:center; width:1px; height:22px; margin:0 8px; background:var(--rf-line); }
.rf-chip{
  position:relative; flex:none; display:inline-flex; align-items:center; gap:4px; height:44px; padding:0 10px;
  font-family:var(--rf-font-text); font-size:15px; font-weight:var(--rf-wght-ui); line-height:1; color:var(--rf-ink);
  white-space:nowrap; text-decoration:none; background:none; scroll-snap-align:start;
  transition:color var(--rf-t-1) linear;
}
.rf-chip::before{                                       /* 8 px žalias kvadratas – tik aktyviam */
  content:""; flex:none; width:8px; height:8px; margin-right:4px; background:var(--rf-signal); display:none;
}
.rf-chip::after{                                        /* pabraukimas: hover 35 %, aktyvus 100 % */
  content:""; position:absolute; left:10px; right:10px; bottom:0; height:2px; background:var(--rf-ink);
  transform:scaleX(0); transform-origin:left center; transition:transform var(--rf-t-2) var(--rf-e-out);
}
.rf-chip[aria-current="page"],.rf-chip[aria-current="true"],.rf-chip.is-active,.rf-chip[aria-pressed="true"]{ color:var(--rf-ink); }
.rf-chip[aria-current="page"]::before,.rf-chip[aria-current="true"]::before,.rf-chip.is-active::before,.rf-chip[aria-pressed="true"]::before{ display:block; }
.rf-chip[aria-current="page"]::after,.rf-chip[aria-current="true"]::after,.rf-chip.is-active::after,.rf-chip[aria-pressed="true"]::after{ transform:scaleX(1); }
@media (hover:hover){ .rf-chip:not([aria-current]):not(.is-active):hover::after{ transform:scaleX(.35); } }
.rf-chip:focus-visible{ outline-offset:-4px; }
span.rf-chip{ cursor:default; }
.rf-filterbar__tools{
  flex:1 1 100%; display:flex; align-items:center; justify-content:space-between; gap:16px;
  min-height:48px; border-top:1px solid var(--rf-line);
}
.rf-counter{
  margin:0; font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); line-height:var(--rf-lh-data);
  letter-spacing:var(--rf-track-data); text-transform:uppercase; color:var(--rf-lead); font-variant-numeric:tabular-nums; white-space:nowrap;
}
.rf-counter b{ color:var(--rf-ink); font-weight:500; }
.rf-viewtoggle{ display:inline-flex; flex:none; border:1px solid var(--rf-line-ui); }
.rf-viewtoggle button{
  display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:0 10px;
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); letter-spacing:var(--rf-track-data); text-transform:uppercase;
  color:var(--rf-graphite); background:transparent; transition:background-color var(--rf-t-1) linear, color var(--rf-t-1) linear;
}
.rf-viewtoggle button + button{ border-left:1px solid var(--rf-line-ui); }
.rf-viewtoggle button .rf-icon{ width:16px; height:16px; }
.rf-viewtoggle button[aria-pressed="true"]{ background:var(--rf-ink); color:var(--rf-paper); }
@media (hover:hover){ .rf-viewtoggle button[aria-pressed="false"]:hover{ background:var(--rf-mat); color:var(--rf-ink); } }
.rf-viewtoggle button:focus-visible{ outline-offset:2px; }
@media (max-width:479.98px){
  .rf-viewtoggle button{ width:44px; padding:0; justify-content:center; }
  .rf-viewtoggle button > span{ position:absolute; width:1px; height:1px; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
}
@media (min-width:760px){
  .rf-viewtoggle button{ padding:0 14px; }
  .rf-filters{ padding-block:4px 0; }
  .rf-filterbar__tools{ min-height:52px; }
}
@media (min-width:1100px){
  /* desktop: grupių antraštės kaip matmens linija virš grupės */
  .rf-filters{ flex:1 1 auto; margin-inline:0; padding-inline:0; padding-block:0; -webkit-mask-image:none; mask-image:none; scroll-snap-type:none; }
  .rf-filters__group{ padding-top:16px; }
  .rf-filters__caption{
    position:absolute; left:10px; right:10px; top:0; display:flex; align-items:center; gap:10px; height:16px;
    font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); line-height:1; letter-spacing:.02em; color:var(--rf-lead);
    white-space:nowrap;
  }
  .rf-filters__caption::before,.rf-filters__caption::after{
    content:""; flex:1 1 0; min-width:12px; height:11px;
    background:
      linear-gradient(var(--rf-line-ui), var(--rf-line-ui)) center / 100% 1px no-repeat,
      linear-gradient(-45deg, transparent calc(50% - .6px), var(--rf-line-ui) calc(50% - .6px) calc(50% + .6px), transparent calc(50% + .6px)) var(--rf-tick-x, left) center / 11px 11px no-repeat;
  }
  .rf-filters__caption::after{ --rf-tick-x:right; }
  .rf-filters__sep{ align-self:flex-end; margin-bottom:11px; }
  .rf-filterbar__tools{ flex:0 0 auto; margin-left:auto; border-top:0; min-height:44px; margin-bottom:0; align-self:flex-end; }
  .rf-filterbar__inner{ padding-bottom:0; }
}
/* Lipni + antraštė paslėpta → pakyla (C6) */
:root:has(.rf-header.is-hidden) :is([data-sticky="below-header"],[data-sticky="below-filter"]).is-stuck{
  transform:translateY(calc(-1 * var(--rf-header-h)));
}


/* ==========================================================================
   16  ŽINIARAŠTIS rf-ledger (§5.12)
   ========================================================================== */
.rf-ledger{ width:100%; border-collapse:collapse; font-size:15px; line-height:1.4; color:var(--rf-ink); }
.rf-ledger thead th{
  padding:0 12px 12px; text-align:left; vertical-align:bottom; border-bottom:1px solid var(--rf-ink);
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); font-weight:400; line-height:var(--rf-lh-data);
  letter-spacing:var(--rf-track-data); text-transform:uppercase; color:var(--rf-lead); white-space:nowrap;
}
.rf-ledger__row{ height:60px; border-bottom:1px solid var(--rf-line); transition:background-color var(--rf-t-2) var(--rf-e-out); }
.rf-ledger__row > *{
  padding:10px 12px; text-align:left; vertical-align:middle; font-weight:400;
  transition:transform var(--rf-t-2) var(--rf-e-out), color var(--rf-t-1) linear;
}
.rf-ledger__row > th{ font-family:var(--rf-font-text); font-size:16px; font-stretch:100%; color:var(--rf-ink); }
.rf-ledger__row th a{ display:block; padding-block:8px; margin-block:-8px; color:inherit; text-decoration:none; transition:color var(--rf-t-1) linear; }
.rf-ledger__row th a:focus-visible{ outline-offset:4px; }
.rf-ledger__nr,.rf-ledger__row > td:nth-child(5){
  font-family:var(--rf-font-data); font-size:13px; letter-spacing:.02em; color:var(--rf-lead); font-variant-numeric:tabular-nums; white-space:nowrap;
}
.rf-ledger__row > td:nth-child(5){ color:var(--rf-ink); }
.rf-ledger__nr{ position:relative; width:64px; }
.rf-ledger__nr::before{                                 /* 3 px žalia juosta kairėje (kompensuoja +8 px) */
  content:""; position:absolute; left:0; top:0; bottom:0; width:3px; background:var(--rf-signal);
  transform:scaleY(0); transform-origin:50% 50%; transition:transform var(--rf-t-2) var(--rf-e-out);
}
.rf-ledger__row > td:last-child{ width:48px; text-align:right; color:var(--rf-ink); font-size:18px; }
.rf-ledger__row:is(:focus-within,.is-active){ background-color:var(--rf-mat); }
.rf-ledger__row:is(:focus-within,.is-active) > :not(:last-child){ transform:translateX(8px); }
.rf-ledger__row:is(:focus-within,.is-active) .rf-ledger__nr::before{ transform:translateX(-8px) scaleY(1); }
@media (hover:hover){
  .rf-ledger__row:hover{ background-color:var(--rf-mat); }
  .rf-ledger__row:hover > :not(:last-child){ transform:translateX(8px); }
  .rf-ledger__row:hover > td:last-child{ transform:translateX(4px); color:var(--rf-moss); }
  .rf-ledger__row:hover th a{ color:var(--rf-ink); }
  .rf-ledger__row:hover .rf-ledger__nr::before{ transform:translateX(-8px) scaleY(1); }
}
/* Mobiliajame (< 760): sąrašas – Nr. + pavadinimas, po juo „Kategorija · Metai“ (14 px) */
@media (max-width:759.98px){
  .rf-ledger,.rf-ledger tbody{ display:block; }
  .rf-ledger thead{ display:none; }
  .rf-ledger__row{
    display:grid; grid-template-columns:40px auto minmax(0,1fr) 20px; grid-template-rows:auto auto;
    column-gap:0; row-gap:4px; height:auto; padding:14px 0; align-items:baseline;
  }
  .rf-ledger__row > *{ padding:0; }
  .rf-ledger__nr{ grid-column:1; grid-row:1; width:auto; font-size:12px; }
  .rf-ledger__row > th{ grid-column:2 / span 2; grid-row:1; font-size:16px; line-height:1.35; padding-right:8px; }
  .rf-ledger__row th a{ padding-block:4px; margin-block:-4px; }
  .rf-ledger__row > td:nth-child(3),
  .rf-ledger__row > td:nth-child(5){ grid-row:2; font-family:var(--rf-font-text); font-size:var(--rf-fs-small); letter-spacing:0; color:var(--rf-lead); white-space:nowrap; }
  .rf-ledger__row > td:nth-child(3){ grid-column:2; }
  .rf-ledger__row > td:nth-child(5){ grid-column:3; }
  .rf-ledger__row > td:nth-child(5)::before{ content:"·"; content:"·" / ""; margin:0 6px; }
  .rf-ledger__row > td:nth-child(4),
  .rf-ledger__row > td:nth-child(6){ display:none; }
  .rf-ledger__row > td:last-child{ grid-column:4; grid-row:1 / span 2; align-self:center; width:auto; font-size:16px; }
}
/* Peržiūra šalia žymeklio (C13) – tik (hover:hover) (pointer:fine) ≥ 1000 */
.rf-ledger__preview{
  position:fixed; left:0; top:0; z-index:var(--rf-z-cursor); width:300px; pointer-events:none;
  padding:var(--rf-mat-pad); background:var(--rf-mat); box-shadow:var(--rf-d3);
  opacity:0; transition:opacity var(--rf-t-2) var(--rf-e-out);
}
.rf-ledger__preview img{ display:block; width:100%; aspect-ratio:4 / 3; height:auto; object-fit:cover; background:var(--rf-sand); }
.rf-ledger__preview.is-active{ opacity:1; }
@media (hover:none),(pointer:coarse),(max-width:999.98px){ .rf-ledger__preview{ display:none; } }


/* ==========================================================================
   17  HERO + ZOOM SLIDER (§5.13)
   ========================================================================== */
.rf-hero{ position:relative; display:flex; flex-direction:column; padding-top:clamp(20px, 3.4vw, 56px); padding-bottom:clamp(48px, 6vw, 96px); }
.rf-hero__head{ display:contents; }
.rf-hero__head > *{ padding-inline:var(--rf-gutter); }
.rf-hero__head > .rf-eyebrow{ order:1; margin-bottom:14px; }
.rf-hero__head > h1,.rf-hero__head > .rf-display{ order:2; }
.rf-hero__stagewrap{ order:3; margin-top:clamp(20px, 3vw, 40px); }
.rf-hero__aside{ order:4; margin-top:28px; display:flex; flex-direction:column; gap:22px; }
.rf-hero__down{ order:5; }
.rf-hero__cta{ display:flex; flex-wrap:wrap; align-items:center; gap:14px 24px; }
@media (max-width:639.98px){ .rf-hero__cta .rf-btn{ width:100%; } }
.rf-hero__down{
  display:inline-flex; align-items:center; gap:12px; align-self:flex-start; min-height:44px; margin-top:28px;
  margin-left:max(var(--rf-gutter), calc((100% - var(--rf-w-content)) / 2)); text-decoration:none;
  transition:color var(--rf-t-1) linear;
}
.rf-hero__down::before{ content:""; width:1px; height:40px; background:var(--rf-line-ui); transform-origin:50% 0; transition:transform var(--rf-t-2) var(--rf-e-out); }
@media (hover:hover){ .rf-hero__down:hover{ color:var(--rf-ink); } .rf-hero__down:hover::before{ transform:scaleY(1.3); } }
.rf-hero__stagewrap > .rf-dim{ margin-bottom:14px; }
@media (min-width:1000px){
  .rf-hero{ display:block; }
  .rf-hero__head{
    display:grid; grid-template-columns:repeat(12, minmax(0,1fr)); column-gap:var(--rf-gap); row-gap:18px; align-items:end;
    width:100%; max-width:calc(var(--rf-w-content) + 2 * var(--rf-gutter)); margin-inline:auto; padding-inline:var(--rf-gutter);
  }
  .rf-hero__head > *{ padding-inline:0; }
  .rf-hero__head > .rf-eyebrow{ grid-column:1 / span 7; grid-row:1; margin-bottom:0; }
  .rf-hero__head > h1,.rf-hero__head > .rf-display{ grid-column:1 / span 8; grid-row:2; }   /* 7 stulp. + 1 oro stulpelis (2 eil. ties 1440) */
  .rf-hero__aside{ grid-column:9 / span 4; grid-row:1 / span 2; align-self:end; margin-top:0; gap:26px; padding-bottom:.3em; }
  .rf-hero__stagewrap{ margin-top:clamp(32px, 3.4vw, 56px); }
  .rf-hero__stagewrap > .rf-dim{ width:calc((100% - 11 * var(--rf-gap)) / 12 * 9 + 8 * var(--rf-gap)); max-width:1040px; }
}

.rf-zoomslider{ position:relative; display:grid; grid-template-columns:minmax(0,1fr); --rf-zs-dir:1; }
.rf-zoomslider.is-back{ --rf-zs-dir:-1; }
.rf-zoomslider:focus-visible{ outline-offset:6px; }
.rf-zoomslider__stage{
  position:relative; isolation:isolate; overflow:hidden; aspect-ratio:4 / 3;
  background:var(--rf-sand); touch-action:pan-y;
}
.rf-zoomslider__slide{ position:absolute; inset:0; margin:0; z-index:1; visibility:hidden; }
.rf-zoomslider__slide.is-current{ visibility:visible; z-index:2; }
.rf-zoomslider__slide.is-leaving,
.rf-zoomslider__slide.is-entering{ visibility:visible; z-index:3; }
.rf-zoomslider__slide.is-entering{ z-index:4; }
.rf-zoomslider__slide::after{                           /* d4 šešėlis plaukiančiai kortelei (C15) */
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; box-shadow:var(--rf-d4); opacity:0;
}
.rf-zoomslider__card{ position:absolute; inset:0; overflow:hidden; background:var(--rf-sand-2); transform-origin:50% 50%; }
.rf-zoomslider__par{ position:absolute; inset:-6% 0; }
.rf-zoomslider__img{ display:block; width:100%; height:100%; object-fit:cover; transform-origin:50% 50%; }
/* Choreografija (0–1850 ms): išeinanti */
.rf-zoomslider__slide.is-leaving .rf-zoomslider__card{
  animation:rf-zs-shrink 600ms var(--rf-e-slide) both, rf-zs-out 850ms var(--rf-e-slide) 450ms both;
}
.rf-zoomslider__slide.is-leaving::after{
  animation:rf-zs-shrink 600ms var(--rf-e-slide) both, rf-zs-out 850ms var(--rf-e-slide) 450ms both, rf-fade-in 600ms var(--rf-e-slide) both;
}
.rf-zoomslider__slide.is-leaving .rf-zoomslider__img{ animation:rf-zs-counter-in 600ms var(--rf-e-slide) both; }
/* įeinanti */
.rf-zoomslider__slide.is-entering .rf-zoomslider__card{
  animation:rf-zs-in 850ms var(--rf-e-slide) 450ms both, rf-zs-grow 600ms var(--rf-e-slide) 1250ms both;
}
.rf-zoomslider__slide.is-entering::after{
  animation:rf-zs-in 850ms var(--rf-e-slide) 450ms both, rf-zs-grow 600ms var(--rf-e-slide) 1250ms both, rf-fade-out 600ms var(--rf-e-slide) 1250ms both;
}
.rf-zoomslider__slide.is-entering .rf-zoomslider__img{ animation:rf-zs-counter-out 600ms var(--rf-e-slide) 1250ms both; }
/* Spaudo reikšmės: išnyksta aukštyn per kaukę, naujos įvažiuoja iš apačios (40 ms pakopos) */
[data-zs-info].is-leaving :is(.rf-titleblock__title,.rf-value,.rf-titleblock__head b){ animation:rf-mask-out-up 600ms var(--rf-e-slide) both; }
[data-zs-info].is-entering :is(.rf-titleblock__title,.rf-value,.rf-titleblock__head b){
  animation:rf-mask-in-up 600ms var(--rf-e-slide) both; animation-delay:calc(150ms + var(--rf-zi, 0) * 40ms);
}
[data-zs-info] .rf-titleblock__title{ --rf-zi:0; }
[data-zs-info] .rf-titleblock__rows > div:nth-child(1) .rf-value{ --rf-zi:1; }
[data-zs-info] .rf-titleblock__rows > div:nth-child(2) .rf-value{ --rf-zi:2; }
[data-zs-info] .rf-titleblock__rows > div:nth-child(3) .rf-value{ --rf-zi:3; }
[data-zs-info] .rf-titleblock__rows > div:nth-child(4) .rf-value{ --rf-zi:4; }
[data-zs-info] .rf-titleblock__rows > div:nth-child(5) .rf-value{ --rf-zi:5; }
[data-zs-info] .rf-titleblock__rows > div:nth-child(6) .rf-value{ --rf-zi:6; }
/* Valdikliai */
.rf-zoomslider__count{
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); line-height:1; letter-spacing:.06em;
  color:var(--rf-ink); font-variant-numeric:tabular-nums; margin-right:auto;
}
.rf-zoomslider__progress{ position:relative; display:block; flex:1 1 100%; order:10; height:2px; margin-top:8px; background:var(--rf-line); overflow:hidden; }
.rf-zoomslider__progress > span{ position:absolute; inset:0; background:var(--rf-signal); transform:scaleX(0); transform-origin:left center; }
.rf-zoomslider__progress.is-running > span{ animation:rf-progress var(--rf-autoplay) linear forwards; }
.rf-zoomslider.is-paused .rf-zoomslider__progress > span,
.rf-zoomslider:focus-within .rf-zoomslider__progress > span{ animation-play-state:paused; }
@media (hover:hover){ .rf-zoomslider:hover .rf-zoomslider__progress > span{ animation-play-state:paused; } }
[data-zs-pause][aria-pressed="true"]{ border-color:var(--rf-ink); }
/* „Toliau“ miniatiūra (tik ≥ 1280) */
.rf-zoomslider__next{ display:none; }
@media (min-width:1000px){
  .rf-zoomslider{ grid-template-columns:repeat(12, minmax(0,1fr)); column-gap:var(--rf-gap); align-items:start; }
  .rf-zoomslider__stage{ grid-column:1 / span 9; grid-row:1; aspect-ratio:16 / 9; width:100%; max-width:1040px; }
  .rf-zoomslider > .rf-titleblock{ grid-column:10 / span 3; grid-row:1; margin-top:clamp(28px, 3.4vw, 56px); margin-left:-72px; z-index:5; }
}
@media (min-width:1280px){
  .rf-zoomslider__next{
    grid-column:1 / span 9; grid-row:2; justify-self:end; display:inline-flex; align-items:flex-end; gap:16px;
    margin-top:16px; padding:0; text-align:right; color:var(--rf-lead);
  }
  .rf-zoomslider__next img{
    width:160px; height:107px; object-fit:cover; padding:6px; background:var(--rf-mat); box-shadow:var(--rf-d1);
    transition:transform var(--rf-t-3) var(--rf-e-out);
  }
  .rf-zoomslider__next .rf-label{ padding-bottom:4px; transition:color var(--rf-t-1) linear; }
  @media (hover:hover){
    .rf-zoomslider__next:hover img{ transform:translateY(-4px); }
    .rf-zoomslider__next:hover .rf-label{ color:var(--rf-ink); }
  }
}


/* ==========================================================================
   18  RINKTINIAI SU 3D PARALLAX HOVER rf-featured (§5.14)
       Visada stulpeliais (column-major); < 760 – 1 stulpelis stulpelių tvarka
   ========================================================================== */
.rf-featured{ display:grid; grid-template-columns:minmax(0,1fr); gap:48px; align-items:start; }
.rf-featured__col{ display:grid; grid-template-columns:minmax(0,1fr); gap:48px; align-content:start; min-width:0; }
@media (min-width:760px){
  .rf-featured{ grid-template-columns:repeat(3, minmax(0,1fr)); column-gap:var(--rf-gap); }
  .rf-featured .rf-card--featured .rf-card__title{ font-size:1rem; }
  .rf-featured__col{ gap:40px; }
}
@media (min-width:1000px){
  .rf-featured{ column-gap:clamp(24px, 3vw, 48px); }
  .rf-featured__col{ gap:64px; }
  .rf-featured__col--2{ margin-top:120px; }
  .rf-featured__col--3{ margin-top:48px; }
  .rf-featured .rf-card--featured .rf-card__title{ font-size:var(--rf-fs-h4); }
}


/* ==========================================================================
   19  PROJEKTO GALERIJA (masonry) rf-masonry (§5.15)
   ========================================================================== */
.rf-masonry{ columns:1; column-gap:var(--rf-gap); }
.rf-masonry > *{ display:block; break-inside:avoid; margin:0 0 24px; }
.rf-masonry > * > .rf-frame,.rf-masonry > .rf-frame{ margin-inline:auto; }
.rf-masonry a{ color:inherit; text-decoration:none; }
.rf-masonry a > .rf-frame,.rf-masonry .rf-frame:is(a,[data-lightbox]){ transition:transform var(--rf-t-3) var(--rf-e-zoom); }
.rf-masonry .rf-frame__img,.rf-masonry .rf-frame__crop > img{ transition:transform var(--rf-t-3) var(--rf-e-zoom), filter var(--rf-t-3) var(--rf-e-out); }
@media (hover:hover){                                   /* Zoom In Crop: vidus 1,08, rėmas ,98 */
  .rf-masonry a:hover > .rf-frame,.rf-masonry .rf-frame:is(a,[data-lightbox]):hover{ transform:scale(.98); }
  .rf-masonry a:hover .rf-frame__img,.rf-masonry a:hover .rf-frame__crop > img,
  .rf-masonry [data-lightbox]:hover .rf-frame__img{ transform:scale(1.08); }
}
.rf-masonry a:focus-visible > .rf-frame{ transform:scale(.98); }
.rf-masonry a:focus-visible .rf-frame__img{ transform:scale(1.08); }
[data-lightbox]{ cursor:zoom-in; }
@media (min-width:760px){ .rf-masonry{ columns:2; } }
@media (min-width:1100px){ .rf-masonry{ columns:3; } }


/* ==========================================================================
   20  SKAIČIAI – MATMENŲ GRANDINĖ rf-stats (§5.16)
   ========================================================================== */
.rf-stats__chain{ position:relative; height:0; margin:0; color:var(--rf-line-ui); }   /* < 760: nulinio aukščio IO taikinys (C5) */
.rf-stats__list{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); column-gap:0; row-gap:36px; margin:0; }
.rf-stat{ position:relative; display:flex; flex-direction:column-reverse; justify-content:flex-end; gap:10px; min-width:0; padding-right:var(--rf-gap); }
.rf-stat > dt{ margin:0; }
.rf-stat > dd{ margin:0; }
.rf-stat__num{
  font-family:var(--rf-font-display); font-size:var(--rf-fs-stat); font-weight:var(--rf-wght-stat); line-height:.95;
  font-stretch:112%; letter-spacing:-.03em; color:var(--rf-ink); font-variant-numeric:tabular-nums lining-nums; white-space:nowrap;
}
.rf-stat__sfx{ display:inline-block; margin-left:.04em; font-size:.42em; line-height:1; vertical-align:top; color:var(--rf-moss); position:relative; top:.08em; }
.rf-stats__note{ margin-top:clamp(32px, 4vw, 56px); max-width:none; }
/* Mobilioji grandinė per kiekvieną eilutę (C5) */
.rf-stat{ padding-top:26px; }
.rf-stat::before{
  content:""; position:absolute; left:0; right:0; top:7px; height:1px; background:var(--rf-line-ui);
  transform-origin:left center;
}
.rf-stat::after{
  content:""; position:absolute; left:-5.5px; right:-5.5px; top:0; height:15px; pointer-events:none;
  background:
    linear-gradient(-45deg, transparent calc(50% - .6px), var(--rf-line-ui) calc(50% - .6px) calc(50% + .6px), transparent calc(50% + .6px)) left center / 11px 11px no-repeat,
    linear-gradient(-45deg, transparent calc(50% - .6px), var(--rf-line-ui) calc(50% - .6px) calc(50% + .6px), transparent calc(50% + .6px)) right center / 11px 11px no-repeat;
}
@media (min-width:760px){
  .rf-stats__list{ grid-template-columns:repeat(var(--rf-stats-n, 4), minmax(0,1fr)); }
  .rf-stats__list:has(> .rf-stat:nth-child(5)){ --rf-stats-n:5; }
  .rf-stats__list:not(:has(> .rf-stat:nth-child(4))){ --rf-stats-n:3; }
  .rf-stat{ padding-top:0; }
  .rf-stat::before,.rf-stat::after{ content:none; }
  .rf-stats__chain{ height:15px; margin-bottom:clamp(24px, 2.6vw, 40px); }
  .rf-stats__chain::before{
    content:""; position:absolute; left:0; right:0; top:7px; height:1px; background:currentColor; transform-origin:left center;
  }
  .rf-stats__chain::after{                              /* brūkšneliai segmentų ribose (4 → 5 brūkšneliai) */
    content:""; position:absolute; inset:0 -6px; pointer-events:none;
    --t:linear-gradient(-45deg, transparent calc(50% - .6px), var(--rf-line-ui) calc(50% - .6px) calc(50% + .6px), transparent calc(50% + .6px));
    background:var(--t) 0% 50% / 11px 11px no-repeat, var(--t) 25% 50% / 11px 11px no-repeat,
               var(--t) 50% 50% / 11px 11px no-repeat, var(--t) 75% 50% / 11px 11px no-repeat, var(--t) 100% 50% / 11px 11px no-repeat;
  }
  .rf-stats__chain:has(~ .rf-stats__list > .rf-stat:nth-child(5))::after{
    background:var(--t) 0% 50% / 11px 11px no-repeat, var(--t) 20% 50% / 11px 11px no-repeat, var(--t) 40% 50% / 11px 11px no-repeat,
               var(--t) 60% 50% / 11px 11px no-repeat, var(--t) 80% 50% / 11px 11px no-repeat, var(--t) 100% 50% / 11px 11px no-repeat;
  }
}


/* ==========================================================================
   21  VEIKLOS KRYPTYS rf-direction (§5.17)
       transform: įėjimas – __wrap; hover pakilimas – .rf-direction; pelė – img
   ========================================================================== */
.rf-direction__wrap{ height:100%; }
.rf-direction{
  position:relative; isolation:isolate; height:100%; display:flex; flex-direction:column;
  padding:clamp(20px, 2.4vw, 32px); background:var(--rf-mat); box-shadow:var(--rf-d1); --rf-dim-bg:var(--rf-mat);
  transition:transform var(--rf-t-3) var(--rf-e-out);
}
.rf-direction::after{
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  box-shadow:var(--rf-d2); opacity:0; transition:opacity var(--rf-t-3) var(--rf-e-out);
}
.rf-direction > .rf-frame{ margin-bottom:24px; max-width:420px; box-shadow:none; }
.rf-direction > .rf-frame.rf-frame--mat{ padding:0; }
.rf-direction__title{ margin-bottom:12px; font-size:var(--rf-fs-h3); line-height:1.2; }
.rf-direction > p{ color:var(--rf-graphite); max-width:var(--rf-w-text); }
.rf-direction__cats{ list-style:none; margin:20px 0 0; padding:18px 0 0; border-top:1px solid var(--rf-line); display:flex; flex-wrap:wrap; gap:6px 18px; }
.rf-direction__cats li{ display:inline-flex; align-items:baseline; gap:6px; }
.rf-frame[data-hover-parallax] .rf-frame__img,
.rf-frame[data-hover-parallax] .rf-frame__crop > img{ transition:transform var(--rf-t-3) var(--rf-e-out); }
@media (hover:hover){
  .rf-direction:hover{ transform:translateY(-6px); }
  .rf-direction:hover::after{ opacity:1; }
  .rf-direction:hover .rf-frame__img,.rf-direction:hover .rf-frame__crop > img{ transform:scale(1.04); }
}
.rf-direction:focus-within{ transform:translateY(-6px); }
.rf-direction:focus-within::after{ opacity:1; }


/* ==========================================================================
   22  DARBO EIGA rf-process (§5.18)
   ========================================================================== */
/* --stack: „Brėžinių rinkinys“ – prisegtų lapų šūsnis (desktop ≥ 1000, be RM) */
.rf-stack{ display:grid; gap:var(--rf-s-5); counter-reset:rf-stack; }
.rf-stack__sheet{
  position:relative; display:grid; gap:24px; align-items:center;
  padding:clamp(20px, 3vw, 48px); background:var(--rf-mat); box-shadow:var(--rf-d1); --rf-dim-bg:var(--rf-mat);
  transform-origin:50% 0;
}
.rf-stack__sheet::after{                                /* rūkas nustumtam lapui 0 → .45 */
  content:""; position:absolute; inset:0; pointer-events:none; background:var(--rf-paper);
  opacity:calc(.45 * var(--rf-recede, 0));
}
.rf-stack__sheet.is-receding{ --rf-recede:1; }
.rf-stack__text{ display:flex; flex-direction:column; gap:12px; max-width:34rem; }
.rf-stack__text h3{ font-size:clamp(1.5rem, 1.2rem + 1.2vw, 2.25rem); line-height:1.12; }
.rf-stack__text p:not(.rf-label){ color:var(--rf-graphite); }
.rf-stack__sheet > .rf-frame{ max-width:560px; justify-self:center; }
@media (min-width:1000px) and (prefers-reduced-motion:no-preference){
  .rf-process--stack .rf-stack{ gap:14vh; padding-bottom:4vh; }
  .rf-stack__sheet{
    position:sticky; top:calc(var(--rf-header-h) + 24px + var(--rf-n, 0) * 14px);
    height:min(72vh, 640px); grid-template-columns:5fr 7fr; column-gap:clamp(32px, 4vw, 72px);
    box-shadow:var(--rf-d3); overflow:hidden;
    transform:scale(calc(1 - .06 * var(--rf-recede, 0)));
    transition:transform var(--rf-t-2) linear;
  }
  .rf-stack__sheet:nth-child(2){ --rf-n:1; } .rf-stack__sheet:nth-child(3){ --rf-n:2; }
  .rf-stack__sheet:nth-child(4){ --rf-n:3; } .rf-stack__sheet:nth-child(5){ --rf-n:4; }
  .rf-stack__sheet > .rf-frame{ max-height:100%; }
  .rf-stack__sheet .rf-frame__crop{ max-height:calc(min(72vh, 640px) - 2 * clamp(20px, 3vw, 48px) - 48px); }
}
@media (min-width:760px) and (max-width:999.98px){
  .rf-stack__sheet{ grid-template-columns:5fr 7fr; column-gap:32px; }
}

/* --row: 4 stulpeliai ant bendros matmenų linijos (Apie) (C33) */
.rf-process__steps{ position:relative; display:grid; gap:36px; padding-left:28px; counter-reset:rf-step; }
.rf-process__steps::before{                             /* vertikali linija kairėje (mobile) */
  content:""; position:absolute; left:4px; top:6px; bottom:6px; width:1px; background:var(--rf-line-ui); transform-origin:50% 0;
}
.rf-process__step{ position:relative; display:flex; flex-direction:column; gap:12px; min-width:0; }
.rf-process__step::before{                              /* brūkšnelis ant linijos */
  content:""; position:absolute; left:-28px; top:2px; width:9px; height:9px;
  background:linear-gradient(-45deg, transparent calc(50% - .6px), var(--rf-line-ui) calc(50% - .6px) calc(50% + .6px), transparent calc(50% + .6px));
}
.rf-process__nr{ color:var(--rf-ink); }
.rf-process__icon{ width:40px; height:40px; color:var(--rf-ink); }
.rf-process__icon .rf-icon,.rf-process__icon svg{ width:40px; height:40px; stroke-width:1.1; }
.rf-process__step h3{ font-size:var(--rf-fs-h3); line-height:1.2; }
.rf-process__step p{ color:var(--rf-graphite); }
@media (min-width:1000px){
  .rf-process__steps{ grid-template-columns:repeat(4, minmax(0,1fr)); column-gap:var(--rf-gap); padding-left:0; padding-top:30px; }
  .rf-process__steps::before{ left:0; right:0; top:7px; bottom:auto; width:auto; height:1px; transform-origin:0 50%; }
  .rf-process__step::before{ left:-5px; top:-28px; width:11px; height:11px; }
}


/* ==========================================================================
   23  KLIENTŲ SIENA rf-clients (§5.19) (C34)
   ========================================================================== */
.rf-clients__grid{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); padding:1px 0 0 1px; }
.rf-clients__grid > li,.rf-clients__cell{
  position:relative; display:grid; place-items:center; height:120px; padding:12px;
  border:1px solid var(--rf-line); margin:-1px 0 0 -1px;             /* bendri kraštai, be kabančių linijų */
}
.rf-clients__grid img{
  width:auto; height:auto; max-width:60%; max-height:44px; object-fit:contain;
  opacity:.62; transition:opacity var(--rf-t-2) var(--rf-e-out), transform var(--rf-t-3) var(--rf-e-out);
}
.rf-clients__grid > li::before,.rf-clients__cell::before{   /* kadravimo žymės hover metu */
  content:""; position:absolute; inset:8px; pointer-events:none; color:var(--rf-ink); opacity:0;
  background:
    linear-gradient(currentColor,currentColor) left top / 10px 1px no-repeat, linear-gradient(currentColor,currentColor) left top / 1px 10px no-repeat,
    linear-gradient(currentColor,currentColor) right top / 10px 1px no-repeat, linear-gradient(currentColor,currentColor) right top / 1px 10px no-repeat,
    linear-gradient(currentColor,currentColor) left bottom / 10px 1px no-repeat, linear-gradient(currentColor,currentColor) left bottom / 1px 10px no-repeat,
    linear-gradient(currentColor,currentColor) right bottom / 10px 1px no-repeat, linear-gradient(currentColor,currentColor) right bottom / 1px 10px no-repeat;
  transition:opacity var(--rf-t-2) var(--rf-e-out);
}
@media (hover:hover){
  .rf-clients__grid > li:hover img,.rf-clients__cell:hover img{ opacity:1; transform:scale(1.04); }
  .rf-clients__grid > li:hover::before,.rf-clients__cell:hover::before{ opacity:1; }
}
.rf-clients__grid > li:focus-within img{ opacity:1; transform:scale(1.04); }
.rf-clients__grid > li:focus-within::before{ opacity:1; }
.rf-clients__cell--pending img{ opacity:.4; }
.rf-clients__note{ position:absolute; left:10px; top:8px; }
.rf-clients__grid--partners > li,.rf-clients__grid--partners .rf-clients__cell{ height:88px; }
.rf-clients__grid--partners img{ max-height:32px; }
@media (min-width:760px){ .rf-clients__grid{ grid-template-columns:repeat(4, minmax(0,1fr)); } }
@media (min-width:1000px){ .rf-clients__grid{ grid-template-columns:repeat(6, minmax(0,1fr)); } }


/* ==========================================================================
   24  BĖGANTI EILUTĖ rf-marquee (§5.20) (C16)
   ========================================================================== */
.rf-marquee{
  position:relative; overflow:hidden; padding-top:60px;
  -webkit-mask-image:linear-gradient(#000, #000), linear-gradient(to right, transparent, #000 9%, #000 91%, transparent);
  -webkit-mask-size:100% 60px, 100% 100%; -webkit-mask-position:top, center; -webkit-mask-repeat:no-repeat;
          mask-image:linear-gradient(#000, #000), linear-gradient(to right, transparent, #000 9%, #000 91%, transparent);
          mask-size:100% 60px, 100% 100%; mask-position:top, center; mask-repeat:no-repeat;
}
.rf-marquee__pause{ position:absolute; top:6px; right:6px; z-index:2; background:var(--rf-page-bg); }
.rf-marquee__track{ display:flex; flex-wrap:nowrap; width:max-content; align-items:center; }
.rf-marquee__track > *{ flex:none; display:grid; place-items:center; height:80px; min-width:160px; padding:0 clamp(24px, 3vw, 44px); list-style:none; }
.rf-marquee__track ul,.rf-marquee__track ol{ display:contents; }
.rf-marquee__track li{ flex:none; display:grid; place-items:center; height:80px; min-width:160px; padding:0 clamp(24px, 3vw, 44px); }
.rf-marquee__track img{ width:auto; height:auto; max-width:150px; max-height:40px; object-fit:contain; opacity:.72; }
.rf-marquee.is-static,
.rf-marquee.is-static .rf-marquee__track{ -webkit-mask-image:none; mask-image:none; }
.rf-marquee.is-static{ padding-top:0; }
.rf-marquee.is-static .rf-marquee__track{ flex-wrap:wrap; width:auto; justify-content:flex-start; transform:none; }
.rf-marquee.is-static .rf-marquee__pause,
.rf-marquee.is-static [data-rf-clone]{ display:none; }
@media (hover:none){
  .rf-marquee{ padding-top:0; -webkit-mask-image:none; mask-image:none; }
  .rf-marquee__pause,.rf-marquee [data-rf-clone]{ display:none; }
  .rf-marquee__track{ flex-wrap:wrap; width:auto; transform:none; }
  .rf-marquee__track > *,.rf-marquee__track li{ min-width:0; width:50%; height:72px; padding:0 12px; }
}
@media (hover:none) and (min-width:640px){ .rf-marquee__track > *,.rf-marquee__track li{ width:33.333%; } }
@media (hover:none) and (min-width:1000px){ .rf-marquee__track > *,.rf-marquee__track li{ width:20%; } }


/* ==========================================================================
   25  KOLIAŽAS (Cascading Images) rf-cascade + legenda (§5.21)
       transform: .rf-cascade__layer = data-parallax (be pasukimo)
   ========================================================================== */
.rf-cascade{ position:relative; aspect-ratio:1.1 / 1; }
.rf-cascade__layer{ position:absolute; margin:0; }
.rf-cascade__layer--rear{ top:0; left:0; width:80%; z-index:1; }
.rf-cascade__layer--mid{ left:0; bottom:0; width:58%; z-index:2; box-shadow:var(--rf-d2); }
.rf-cascade__layer--front{ right:0; top:40%; width:70%; z-index:3; box-shadow:var(--rf-d3); }
.rf-cascade__layer--rear.rf-frame--mat,.rf-cascade__layer--rear.rf-frame--plan{ box-shadow:var(--rf-d1); }
@media (min-width:1000px){
  .rf-cascade{ aspect-ratio:auto; height:clamp(520px, 43vw, 640px); }
  .rf-cascade__layer--rear{ width:60%; }
  .rf-cascade__layer--mid{ width:46%; }
  .rf-cascade__layer--front{ width:50%; top:24%; }
}
.rf-legend{ list-style:none; margin:0; padding:0; display:grid; gap:0; counter-reset:none; }
.rf-legend li{
  display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 12px; padding:11px 0;
  border-top:1px solid var(--rf-line); font-size:15px; line-height:1.45; color:var(--rf-graphite);
}
.rf-legend li:last-child{ border-bottom:1px solid var(--rf-line); }
.rf-legend .rf-label{ flex:none; min-width:3.6em; color:var(--rf-ink); }
.rf-legend .rf-tag{ margin-left:auto; }


/* ==========================================================================
   26  „RĖMAS TAMPA SIENA“ JUOSTA rf-band (§5.22)
       __media: clip-path (data-clip-expand) · __img: transform (data-scroll-scale)
   ========================================================================== */
.rf-band{ position:relative; }
.rf-band__media{
  position:relative; overflow:hidden; width:min(100%, var(--band-w, var(--rf-w-band))); margin-inline:auto;
  background:var(--rf-sand);
}
.rf-band__img{ display:block; width:100%; height:auto; transform-origin:50% 50%; }
.rf-band__media > .rf-frame__cap,.rf-band__cap{ padding-inline:var(--rf-gutter); }
.rf-band__content{ position:relative; z-index:2; margin-top:-48px; }
.rf-band__card{ position:relative; box-shadow:var(--rf-d3); margin-inline:var(--rf-s-4); }
.rf-band__card > .rf-band__cap{ margin:0; padding:12px var(--rf-tb-pad) 14px; border-top:1px solid var(--rf-line); }
@media (min-width:760px){ .rf-band__card{ margin-inline:0; max-width:34rem; } }
@media (min-width:1000px){
  .rf-band__content{ margin-top:-120px; }
  .rf-band__card{ width:calc((100% - 11 * var(--rf-gap)) / 12 * 5 + 4 * var(--rf-gap)); max-width:none; min-width:420px; }
}
html.rf-js [data-clip-expand] .rf-band__media{ clip-path:inset(4% 5%); }            /* < 1000: JS 4% 5% */
@media (min-width:1000px){ html.rf-js [data-clip-expand] .rf-band__media{ clip-path:inset(8% 12%); } }


/* ==========================================================================
   27  LIGHTBOX (§5.23) (C18)
   ========================================================================== */
.rf-lightbox{
  position:fixed; inset:0; z-index:var(--rf-z-overlay);
  display:grid; place-items:center; padding:64px 16px 88px;
  background:rgba(244,240,232,.96); color:var(--rf-ink); overscroll-behavior:contain;
  animation:rf-fade-in 350ms var(--rf-e-out) both;
}
.rf-lightbox.is-closing{ animation:rf-fade-out 220ms var(--rf-e-out) both; }
html:has(.rf-lightbox:not([hidden])){ overflow:hidden; }
.rf-lightbox__figure{
  margin:0; max-width:100%; padding:var(--rf-mat-pad); background:var(--rf-mat); box-shadow:var(--rf-d2);
  animation:rf-lb-in 350ms var(--rf-e-out) both;
}
.rf-lightbox__img{
  display:block; width:auto; height:auto;                /* niekada didesnis už natūralų dydį */
  max-width:calc(100vw - 32px - 2 * var(--rf-mat-pad)); max-height:min(82vh, calc(100vh - 200px)); margin-inline:auto;
  touch-action:pan-y pinch-zoom; background:var(--rf-sand);
}
.rf-lightbox__cap{
  padding-top:10px; font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); line-height:var(--rf-lh-data);
  letter-spacing:.02em; color:var(--rf-lead); max-width:60ch;
}
.rf-lightbox__count{ position:absolute; left:var(--rf-gutter); top:24px; color:var(--rf-ink); }
.rf-lightbox__close{ position:absolute; right:var(--rf-gutter); top:12px; background:var(--rf-mat); }
.rf-lightbox__prev,.rf-lightbox__next{ position:absolute; bottom:24px; background:var(--rf-mat); }
.rf-lightbox__prev{ left:calc(50% - 56px); } .rf-lightbox__next{ right:calc(50% - 56px); }
@media (min-width:760px){
  .rf-lightbox{ padding:72px 96px; }
  .rf-lightbox__img{ max-width:min(calc(92vw - 2 * var(--rf-mat-pad)), calc(100vw - 208px - 2 * var(--rf-mat-pad))); }
  .rf-lightbox__prev,.rf-lightbox__next{ top:50%; bottom:auto; margin-top:-22px; }
  .rf-lightbox__prev{ left:var(--rf-gutter); } .rf-lightbox__next{ right:var(--rf-gutter); }
}


/* ==========================================================================
   28  DUK AKORDEONAS rf-faq (§5.24)
   ========================================================================== */
.rf-faq__item{ border-bottom:1px solid var(--rf-line); }
.rf-faq__item:first-of-type{ border-top:1px solid var(--rf-line); }
.rf-faq__q{ display:flex; justify-content:space-between; align-items:flex-start; gap:24px; padding:20px 0; list-style:none; }
.rf-faq__q::-webkit-details-marker{ display:none; }
.rf-faq__q::marker{ content:""; }
.rf-faq__q > :is(h2,h3,h4,span:not(.rf-faq__icon)){
  margin:0; font-family:var(--rf-font-text); font-size:1.25rem; line-height:1.35; font-weight:var(--rf-wght-head);
  font-stretch:var(--rf-stretch-text); letter-spacing:0; color:var(--rf-ink); text-wrap:pretty;
  transition:color var(--rf-t-1) linear;
}
.rf-faq__icon{ position:relative; flex:none; width:22px; height:22px; margin-top:.2em; transition:transform var(--rf-t-2) var(--rf-e-out); }
.rf-faq__icon::before,.rf-faq__icon::after{
  content:""; position:absolute; left:3px; right:3px; top:50%; height:1.5px; margin-top:-.75px; background:var(--rf-ink);
}
.rf-faq__icon::after{ transform:rotate(90deg); }
.rf-faq__item[open] .rf-faq__icon{ transform:rotate(45deg); }
.rf-faq__q:focus-visible{ outline-offset:4px; }
@media (hover:hover){ .rf-faq__q:hover > :is(h2,h3,h4){ color:var(--rf-moss); } }
.rf-faq__a{ max-width:var(--rf-w-text); padding:0 44px 26px 0; color:var(--rf-graphite); }
.rf-faq__a > * + *{ margin-top:.8em; }
.rf-faq__item[open] .rf-faq__a{ animation:rf-fade-up 420ms var(--rf-e-out) both; }
.rf-faq > h2{ margin-bottom:var(--rf-s-6); }
@media (min-width:1000px){                              /* 7.3/8: H2 4 stulp. + klausimai 8 stulp. */
  .rf-faq:has(> h2){ display:grid; grid-template-columns:repeat(12, minmax(0,1fr)); column-gap:var(--rf-gap); align-items:start; }
  .rf-faq > h2{ grid-column:1 / span 4; margin-bottom:0; font-size:calc(var(--rf-fs-h2) * .75); }
  .rf-faq > .rf-faq__list{ grid-column:5 / span 8; max-width:var(--rf-w-narrow); }
}


/* ==========================================================================
   29  ŽURNALO KORTELĖS rf-post (§5.25)
   ========================================================================== */
.rf-post{ position:relative; min-width:0; }
.rf-post__link{ display:block; color:inherit; text-decoration:none; }
.rf-post__link:focus-visible{ outline-offset:8px; }
.rf-post .rf-frame{ margin-bottom:18px; }
.rf-post__meta{ margin-bottom:10px; }
.rf-post__title{
  display:inline; font-family:var(--rf-font-text); font-size:clamp(1.125rem, 1.02rem + .35vw, 1.3125rem); line-height:1.3;
  font-weight:var(--rf-wght-head); font-stretch:var(--rf-stretch-text); letter-spacing:0; color:var(--rf-ink); text-wrap:pretty;
  background-image:linear-gradient(var(--rf-ink), var(--rf-ink)); background-repeat:no-repeat;
  background-position:0 100%; background-size:0 1px; transition:background-size 600ms var(--rf-e-draw);
}
.rf-post__excerpt{
  margin-top:12px; font-size:15px; line-height:1.55; color:var(--rf-graphite);
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; line-clamp:3; overflow:hidden;
}
@media (hover:hover){ .rf-post__link:hover .rf-post__title{ background-size:100% 1px; } }
.rf-post__link:focus-visible .rf-post__title{ background-size:100% 1px; }
/* --featured: horizontalus 7/5 */
@media (min-width:1000px){
  .rf-post--featured .rf-post__link{ display:grid; grid-template-columns:repeat(12, minmax(0,1fr)); column-gap:var(--rf-gap); align-items:center; }
  .rf-post--featured .rf-frame{ grid-column:1 / span 7; grid-row:1 / span 4; margin-bottom:0; }
  .rf-post--featured .rf-post__link > :not(.rf-frame){ grid-column:8 / span 5; padding-left:clamp(0px, 1.5vw, 24px); }
}
.rf-post--featured .rf-post__title{
  display:block; font-family:var(--rf-font-display); font-size:var(--rf-fs-h2); line-height:var(--rf-lh-head); letter-spacing:var(--rf-track-head);
  font-stretch:var(--rf-stretch-display); text-wrap:balance; background:none;
  text-decoration-line:underline; text-decoration-thickness:2px; text-underline-offset:.14em; text-decoration-color:transparent;
  transition:text-decoration-color var(--rf-t-2) var(--rf-e-out);
}
@media (hover:hover){ .rf-post--featured .rf-post__link:hover .rf-post__title{ text-decoration-color:var(--rf-ink); } }
.rf-post--featured .rf-post__link:focus-visible .rf-post__title{ text-decoration-color:var(--rf-ink); }
.rf-post--featured .rf-post__excerpt{ font-size:var(--rf-fs-body); -webkit-line-clamp:5; line-clamp:5; margin-top:18px; }


/* ==========================================================================
   30  STRAIPSNIS: TURINYS rf-toc + TEKSTAS rf-prose (§5.26) (C24)
   ========================================================================== */
.rf-toc{ counter-reset:rf-toc; }
.rf-toc > .rf-label,.rf-toc__title{ display:block; margin-bottom:12px; }
.rf-toc ol,.rf-toc ul{ list-style:none; margin:0; padding:0; }
.rf-toc li{ counter-increment:rf-toc; }
.rf-toc li a{
  position:relative; display:grid; grid-template-columns:30px minmax(0,1fr); gap:6px; align-items:baseline;
  min-height:44px; padding:10px 0; border-top:1px solid var(--rf-line);
  font-size:15px; line-height:1.4; color:var(--rf-graphite); text-decoration:none; transition:color var(--rf-t-1) linear;
}
.rf-toc li a::before{
  content:counter(rf-toc, decimal-leading-zero); font-family:var(--rf-font-data); font-size:var(--rf-fs-micro);
  letter-spacing:.04em; color:var(--rf-lead); font-variant-numeric:tabular-nums;
}
.rf-toc li a::after{                                    /* 8 px žalias kvadratas aktyviam */
  content:""; position:absolute; left:-16px; top:calc(10px + .45em); width:8px; height:8px; background:var(--rf-signal);
  transform:scale(0); transition:transform var(--rf-t-2) var(--rf-e-out);
}
.rf-toc a.is-active,.rf-toc a[aria-current="true"],.rf-toc a[aria-current="location"]{ color:var(--rf-ink); }
.rf-toc a.is-active::after,.rf-toc a[aria-current="true"]::after,.rf-toc a[aria-current="location"]::after{ transform:scale(1); }
.rf-toc a.is-active::before{ color:var(--rf-ink); }
@media (hover:hover){ .rf-toc li a:hover{ color:var(--rf-moss); } }
details.rf-toc{ border-top:1px solid var(--rf-ink); border-bottom:1px solid var(--rf-line); }
details.rf-toc > summary{
  display:flex; justify-content:space-between; align-items:center; min-height:48px; list-style:none;
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); letter-spacing:var(--rf-track-data); text-transform:uppercase; color:var(--rf-ink);
}
details.rf-toc > summary::-webkit-details-marker{ display:none; }
details.rf-toc > summary::after{
  content:""; width:18px; height:18px; background:currentColor;
  -webkit-mask:var(--rf-ico-chevron) center / 18px no-repeat; mask:var(--rf-ico-chevron) center / 18px no-repeat;
  transition:transform var(--rf-t-2) var(--rf-e-out);
}
details.rf-toc[open] > summary::after{ transform:rotate(180deg); }
details.rf-toc li a::after{ content:none; }
/* RFX.toc(): desktop nav.rf-toc--desk (≥ 1000), mobile details.rf-toc--mob (< 1000) */
@media (max-width:999.98px){ .rf-toc--desk{ display:none; } }
@media (min-width:1000px){ .rf-toc--mob{ display:none; } }
@media (min-width:1000px){
  .rf-toc:not(details){ position:sticky; top:calc(var(--rf-header-offset) + 24px); }
}

.rf-prose{
  max-width:var(--rf-w-article); font-family:var(--rf-font-voice); font-size:var(--rf-fs-article);
  line-height:var(--rf-lh-article); color:var(--rf-graphite); counter-reset:rf-h2; font-optical-sizing:auto;
}
.rf-prose > * + *{ margin-top:1.05em; }
.rf-prose h2{
  position:relative; margin-top:2.1em; counter-increment:rf-h2;
  font-family:var(--rf-font-display); font-size:calc(var(--rf-fs-h2) * .75); line-height:1.15; font-weight:var(--rf-wght-head);
  letter-spacing:var(--rf-track-head); font-stretch:var(--rf-stretch-display); color:var(--rf-ink);
}
.rf-prose h2::before{
  content:counter(rf-h2, decimal-leading-zero); display:block; margin-bottom:10px;
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); line-height:1; letter-spacing:.06em; color:var(--rf-lead); font-weight:400;
}
.rf-prose h2.rf-noindex::before{ content:none; }
.rf-prose h3{ margin-top:1.7em; font-family:var(--rf-font-display); font-size:1.25rem; line-height:1.3; font-weight:var(--rf-wght-head); font-stretch:var(--rf-stretch-text); letter-spacing:0; }
.rf-prose h2 + *,.rf-prose h3 + *{ margin-top:.6em; }
.rf-prose strong,.rf-prose b{ color:var(--rf-ink); }
.rf-prose :is(h2,h3,h4) :is(strong,b){ font-weight:inherit; }
.rf-prose ul,.rf-prose ol{ padding:0; list-style:none; }
.rf-prose li{ position:relative; padding-left:1.4em; }
.rf-prose li + li{ margin-top:.45em; }
.rf-prose ul > li::before{ content:""; position:absolute; left:.2em; top:.72em; width:6px; height:6px; background:var(--rf-ink); }
.rf-prose ol{ counter-reset:rf-ol; }
.rf-prose ol > li{ counter-increment:rf-ol; padding-left:2em; }
.rf-prose ol > li::before{
  content:counter(rf-ol, decimal-leading-zero); position:absolute; left:0; top:.35em;
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); line-height:1.4; color:var(--rf-lead);
}
.rf-prose blockquote{ margin-block:1.6em; padding-left:1.1em; border-left:1px solid var(--rf-line-ui); font-style:italic; font-weight:300; font-size:1.15em; line-height:1.5; color:var(--rf-ink); }
.rf-prose img{ max-width:100%; height:auto; }
.rf-prose figure{ margin-block:2em; }
.rf-prose > .rf-frame{ margin-block:2em; }
.rf-prose hr{ margin-block:2.2em; }
.rf-prose table{
  display:block; max-width:100%; overflow-x:auto; border-collapse:collapse;
  font-family:var(--rf-font-text); font-size:15px; line-height:1.45; color:var(--rf-ink); -webkit-overflow-scrolling:touch;
}
.rf-prose th{
  padding:0 20px 10px 0; text-align:left; vertical-align:bottom; border-bottom:1px solid var(--rf-ink);
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); font-weight:400; letter-spacing:var(--rf-track-data); text-transform:uppercase; color:var(--rf-lead); white-space:nowrap;
}
.rf-prose td{ padding:10px 20px 10px 0; border-bottom:1px solid var(--rf-line); vertical-align:top; min-width:10ch; }
@media (min-width:1000px){
  .rf-prose h2::before{ position:absolute; right:100%; top:.55em; margin:0 28px 0 0; }
}
.rf-prose--sans{ font-family:var(--rf-font-text); font-size:var(--rf-fs-body); line-height:var(--rf-lh-body); max-width:var(--rf-w-text); }
.rf-prose--sans h2::before{ content:none; }


/* ==========================================================================
   31  FORMOS (CF7 analogas) rf-form (§5.27) (C21)
   ========================================================================== */
.rf-form{ display:grid; gap:24px; }
.rf-form__row{ display:grid; gap:24px; }
@media (min-width:640px){ .rf-form__row{ grid-template-columns:repeat(2, minmax(0,1fr)); } }
.rf-field{ position:relative; display:flex; flex-direction:column; gap:8px; min-width:0; }
.rf-field > label{
  position:relative; align-self:flex-start; font-family:var(--rf-font-text); font-size:var(--rf-fs-small);
  font-weight:var(--rf-wght-ui); line-height:1.3; color:var(--rf-ink);
}
.rf-field > label::before{                              /* fokusas: 8 px žalias kvadratas prieš etiketę */
  content:""; position:absolute; left:-16px; top:50%; width:8px; height:8px; margin-top:-4px; background:var(--rf-signal);
  transform:scale(0); transition:transform var(--rf-t-1) var(--rf-e-out);
}
.rf-field:focus-within > label::before{ transform:scale(1); }
.rf-field :is(input,select,textarea){
  width:100%; min-height:48px; padding:12px 14px; border:0; border-bottom:1px solid var(--rf-line-ui); border-radius:var(--rf-r-0);
  background:var(--rf-mat); color:var(--rf-ink); font-family:var(--rf-font-text); font-size:16px; line-height:1.4;
  -webkit-appearance:none; appearance:none; transition:border-color var(--rf-t-1) linear;
}
.rf-field :is(input,select,textarea)::placeholder{ color:var(--rf-lead); opacity:1; }
.rf-field :is(input,select,textarea):focus{ outline:none; border-bottom-color:var(--rf-ink); box-shadow:inset 0 -1px 0 var(--rf-ink); }
.rf-field :is(input,select,textarea)[aria-invalid="true"],
.rf-field.is-invalid :is(input,select,textarea){ border-bottom-color:var(--rf-error); box-shadow:inset 0 -1px 0 var(--rf-error); }
.rf-field textarea{ min-height:148px; resize:vertical; }
.rf-field select{
  padding-right:44px; cursor:pointer;
  background-image:var(--rf-ico-chevron); background-repeat:no-repeat; background-position:right 14px center; background-size:18px;
}
.rf-field input[type="number"]{ -moz-appearance:textfield; }
.rf-field input[type="number"]::-webkit-inner-spin-button,
.rf-field input[type="number"]::-webkit-outer-spin-button{ -webkit-appearance:none; margin:0; }
.rf-field--suffix input{ padding-right:52px; }
.rf-field__suffix{
  position:absolute; right:14px; top:calc(var(--rf-fs-small) * 1.3 + 8px); height:48px; display:flex; align-items:center; pointer-events:none;
  font-family:var(--rf-font-data); font-size:var(--rf-fs-micro); color:var(--rf-lead); text-transform:none;
}
.rf-field__error{ margin:0; font-size:var(--rf-fs-small); line-height:1.4; color:var(--rf-error); }
.rf-field--suffix .rf-field__error{ order:10; }
/* Žymimasis langelis ir radijas – kvadratiniai 20 px */
.rf-check{ display:grid; grid-template-columns:20px minmax(0,1fr); column-gap:12px; row-gap:6px; align-items:start; font-size:var(--rf-fs-small); line-height:1.5; color:var(--rf-graphite); }
.rf-check input,
.rf-form input[type="checkbox"]:not([role="switch"]),.rf-form input[type="radio"]{
  -webkit-appearance:none; appearance:none; display:grid; place-content:center; flex:none;
  width:20px; height:20px; margin:1px 0 0; border:1px solid var(--rf-line-ui); border-radius:var(--rf-r-0); background:var(--rf-mat);
  cursor:pointer; transition:background-color var(--rf-t-1) linear, border-color var(--rf-t-1) linear;
}
.rf-check input::before,
.rf-form input[type="checkbox"]:not([role="switch"])::before{
  content:""; width:14px; height:14px; background:var(--rf-paper);
  -webkit-mask:var(--rf-ico-check) center / 14px no-repeat; mask:var(--rf-ico-check) center / 14px no-repeat;
  transform:scale(0); transition:transform var(--rf-t-1) var(--rf-e-out);
}
.rf-form input[type="radio"]::before{ content:""; width:8px; height:8px; background:var(--rf-paper); transform:scale(0); transition:transform var(--rf-t-1) var(--rf-e-out); }
.rf-check input:checked,.rf-form input[type="checkbox"]:not([role="switch"]):checked,.rf-form input[type="radio"]:checked{ background:var(--rf-ink); border-color:var(--rf-ink); }
.rf-check input:checked::before,
.rf-form input[type="checkbox"]:not([role="switch"]):checked::before,.rf-form input[type="radio"]:checked::before{ transform:scale(1); }
.rf-check input:focus-visible,.rf-form input[type="checkbox"]:focus-visible,.rf-form input[type="radio"]:focus-visible{ outline:2px solid var(--rf-ink); outline-offset:3px; }
.rf-check input[aria-invalid="true"]{ border-color:var(--rf-error); box-shadow:0 0 0 1px var(--rf-error); }
.rf-check label{ cursor:pointer; }
.rf-check .rf-field__error{ grid-column:2; }
.rf-check a{ color:var(--rf-ink); text-decoration:underline; text-decoration-color:var(--rf-moss); text-underline-offset:.2em; }
.rf-form > .rf-btn,.rf-form > button[type="submit"]{ justify-self:start; }
.rf-form__status:empty{ display:none; }
.rf-form__status{
  margin:0; padding:14px 18px; background:var(--rf-wash); color:var(--rf-ink); font-size:15px; line-height:1.5;
  border-left:3px solid var(--rf-signal); animation:rf-fade-up 420ms var(--rf-e-out) both;
}
.rf-form__status.is-error{ background:transparent; color:var(--rf-error); border-left-color:var(--rf-error); }


/* ==========================================================================
   32  ŽEMĖLAPIS rf-map (§5.28) (C23)
   ========================================================================== */
.rf-map{ display:grid; gap:18px; }
.rf-map__canvas{
  position:relative; overflow:hidden; aspect-ratio:4 / 3; background:var(--rf-paper);
  border:1px solid var(--rf-line); color:var(--rf-line-ui); --rf-dim-bg:var(--rf-paper);
}
.rf-map__canvas > svg{ width:100%; height:100%; }
.rf-map__canvas iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; filter:grayscale(1) contrast(.95); animation:rf-fade-in 450ms var(--rf-e-out) both; }
.rf-map__pin{
  position:absolute; left:50%; top:50%; transform:translate(-50%, 16px); display:grid; gap:2px; padding:8px 12px;
  background:var(--rf-mat); box-shadow:var(--rf-d1); color:var(--rf-ink); white-space:nowrap; text-align:center;
}
.rf-map__pin::before{                                  /* žalias 14 px žymeklis scenos centre (virš spaudo) */
  content:""; position:absolute; left:50%; bottom:calc(100% + 9px); width:14px; height:14px; margin-left:-7px; background:var(--rf-signal);
}
.rf-map__stamp{ font-size:15px; font-weight:var(--rf-wght-ui); line-height:1.3; }
.rf-map__consent{ display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px; }
.rf-map__note{ margin:0; font-size:var(--rf-fs-small); line-height:1.45; color:var(--rf-lead); max-width:44ch; }
.rf-map__link{ justify-self:start; }
@media (min-width:760px){ .rf-map__canvas{ aspect-ratio:16 / 7; } }


/* ==========================================================================
   33  CTA JUOSTA rf-cta (§5.29)
   ========================================================================== */
.rf-cta{ position:relative; z-index:1; background:var(--rf-sand); --rf-dim-bg:var(--rf-sand); box-shadow:var(--rf-d3); overflow:hidden; }
.rf-cta__left{ position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:clamp(32px, 4vw, 56px); }
.rf-cta__left > .rf-biglink{ position:relative; z-index:2; }
.rf-cta__left > .rf-frame{ position:relative; z-index:1; max-width:520px; }
.rf-cta__arcs,.rf-arcs{ pointer-events:none; overflow:visible; color:var(--rf-line); }
.rf-cta__arcs{ position:absolute; z-index:0; right:0; bottom:-8%; width:min(420px, 72%); height:auto; }
.rf-cta--journal .rf-cta__arcs{ bottom:auto; top:50%; margin-top:-90px; width:180px; }
@media (max-width:759.98px){ .rf-cta--journal .rf-cta__arcs{ display:none; } }   /* siaurame ekrane kirstų rodyklę */
.rf-cta__arcs :is(path,circle,line),.rf-arcs :is(path,circle,line){ fill:none; stroke:var(--rf-line); stroke-width:1; vector-effect:non-scaling-stroke; }
.rf-cta__arcs :is(path,circle,line):last-of-type,.rf-arcs :is(path,circle,line):last-of-type{ stroke:var(--rf-line-ui); }
.rf-cta__right{ display:flex; flex-direction:column; align-items:flex-start; gap:20px; }
.rf-cta__right > .rf-lead{ margin-top:-4px; }
.rf-cta__rows{ align-self:stretch; margin:8px 0; }
.rf-cta__rows > div{ display:grid; grid-template-columns:1fr; gap:4px; padding:12px 0; border-top:1px solid var(--rf-line); }
.rf-cta__rows > div:last-child{ border-bottom:1px solid var(--rf-line); }
.rf-cta__rows dt{ margin:0; }
.rf-cta__rows dd{
  margin:0; font-family:var(--rf-font-text); font-size:clamp(1.125rem, 1rem + .6vw, 1.5rem); line-height:1.3; color:var(--rf-ink);
  font-variant-numeric:tabular-nums; overflow-wrap:anywhere;
}
.rf-cta__rows dd a{ color:inherit; text-decoration:none; display:inline-block; padding-block:2px; transition:color var(--rf-t-1) linear; }
@media (hover:hover){ .rf-cta__rows dd a:hover{ color:var(--rf-moss); } }
@media (min-width:640px){ .rf-cta__rows > div{ grid-template-columns:120px minmax(0,1fr); align-items:baseline; gap:16px; } }
@media (max-width:999.98px){ .rf-cta .rf-grid{ row-gap:clamp(56px, 10vw, 80px); } }
.rf-cta--journal .rf-cta__right{ justify-content:flex-end; align-self:end; }


/* ==========================================================================
   34  PORAŠTĖ rf-footer + FOOTER REVEAL (§5.30) (C19)
   ========================================================================== */
.rf-footer{
  position:relative; background:var(--rf-paper); color:var(--rf-graphite); border-top:1px solid var(--rf-line);
  padding-top:clamp(56px, 6vw, 96px); padding-bottom:calc(28px + var(--rf-cookie-h, 0px));
  font-size:15px; line-height:1.6;
}
.rf-footer.is-reveal{ position:fixed; left:0; right:0; bottom:0; z-index:0; }
.rf-footer-spacer{ display:block; height:0; pointer-events:none; }
.rf-footer__grid{ display:grid; grid-template-columns:minmax(0,1fr); gap:40px var(--rf-gap); }
.rf-footer__grid > * > .rf-label:first-child,
.rf-footer__grid > * > img + .rf-label{ margin-bottom:14px; }
.rf-footer__grid > :first-child img{ width:200px; height:auto; margin-bottom:18px; }
.rf-footer__grid > :first-child .rf-label{ max-width:26ch; }
.rf-footer ul{ list-style:none; margin:0; padding:0; display:grid; gap:2px; }
.rf-footer a{ color:var(--rf-ink); text-decoration:none; transition:color var(--rf-t-1) linear; }
.rf-footer__grid a{ display:inline-block; padding-block:2px; }
@media (hover:hover){ .rf-footer a:hover,.rf-footer button:hover{ color:var(--rf-moss); } }
.rf-footer__bottom{
  display:flex; flex-wrap:wrap; align-items:center; gap:4px 24px; margin-top:clamp(48px, 5vw, 72px); padding-top:16px;
  font-size:var(--rf-fs-small); line-height:1.5; color:var(--rf-lead);
  background:linear-gradient(var(--rf-line-ui), var(--rf-line-ui)) center top / calc(100% - 2 * var(--rf-gutter)) 1px no-repeat;
}
.rf-footer__bottom p{ margin:0 auto 0 0; }
.rf-footer__bottom a,.rf-footer__bottom button{ display:inline-flex; align-items:center; min-height:32px; color:var(--rf-lead); font-size:var(--rf-fs-small); }
.rf-footer__bottom .rf-link{ background-size:100% 1px; }
@media (min-width:640px){ .rf-footer__grid{ grid-template-columns:repeat(2, minmax(0,1fr)); } }
@media (min-width:1000px){ .rf-footer__grid{ grid-template-columns:1.5fr 1fr 1fr 1fr; } }


/* ==========================================================================
   35  KELIO NUORODOS rf-breadcrumbs (§5.31)
   ========================================================================== */
.rf-breadcrumbs ol{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; align-items:center; font-size:var(--rf-fs-small); line-height:1.4; color:var(--rf-lead); }
.rf-breadcrumbs li{ display:inline-flex; align-items:center; min-width:0; }
.rf-breadcrumbs li + li::before{ content:"/"; content:"/" / ""; margin:0 8px; color:var(--rf-line-ui); }
.rf-breadcrumbs a{ display:inline-flex; align-items:center; min-height:24px; color:var(--rf-lead); text-decoration:none; transition:color var(--rf-t-1) linear; }
@media (hover:hover){ .rf-breadcrumbs a:hover{ color:var(--rf-moss); } }
.rf-breadcrumbs [aria-current="page"]{ color:var(--rf-ink); }
@media (max-width:759.98px){
  .rf-breadcrumbs li[aria-current="page"]{ display:block; max-width:28ch; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
}


/* ==========================================================================
   36  „RODYTI DAUGIAU“ rf-loadmore (§5.32)
   ========================================================================== */
.rf-loadmore{ display:flex; flex-direction:column; align-items:center; gap:16px; margin-top:clamp(40px, 5vw, 72px); text-align:center; }
.rf-loadmore[hidden]{ display:none; }


/* ==========================================================================
   37  SLAPUKŲ JUOSTA rf-cookie (§5.33) (C20)
   ========================================================================== */
.rf-cookie{
  position:fixed; left:16px; right:16px; bottom:16px; z-index:var(--rf-z-cookie);
  padding:20px; background:var(--rf-mat); box-shadow:var(--rf-d2); color:var(--rf-graphite);
  font-size:var(--rf-fs-small); line-height:1.55; max-height:calc(100vh - 32px); overflow-y:auto;
  animation:rf-fade-up 450ms var(--rf-e-out) 300ms both;
}
.rf-cookie.is-closing{ animation:rf-fade-out 220ms var(--rf-e-out) both; }
html.is-locked .rf-cookie,
html:has(.rf-offcanvas:not([hidden]), .rf-lightbox:not([hidden])) .rf-cookie{ z-index:calc(var(--rf-z-overlay) - 1); } /* perdangos virš juostos */
.rf-cookie > p{ margin:0; }
.rf-cookie__actions{ display:flex; flex-wrap:wrap; align-items:center; gap:10px 18px; margin-top:16px; }
.rf-cookie__settings{ display:grid; gap:0; margin-top:14px; border-top:1px solid var(--rf-line); }
.rf-switch{
  display:flex; justify-content:space-between; align-items:center; gap:16px; min-height:48px;
  border-bottom:1px solid var(--rf-line); font-size:15px; color:var(--rf-ink); cursor:pointer;
}
.rf-switch input{
  -webkit-appearance:none; appearance:none; position:relative; flex:none; width:44px; height:24px; margin:0;
  border:1px solid var(--rf-line-ui); border-radius:var(--rf-r-0); background:var(--rf-paper); cursor:pointer;
  transition:background-color var(--rf-t-1) linear, border-color var(--rf-t-1) linear;
}
.rf-switch input::before{
  content:""; position:absolute; left:3px; top:3px; width:16px; height:16px; background:var(--rf-line-ui);
  transition:transform var(--rf-t-2) var(--rf-e-out), background-color var(--rf-t-1) linear;
}
.rf-switch input:checked{ background:var(--rf-ink); border-color:var(--rf-ink); }
.rf-switch input:checked::before{ transform:translateX(20px); background:var(--rf-signal); }
.rf-switch input:disabled{ opacity:.5; cursor:default; }
.rf-switch input:focus-visible{ outline:2px solid var(--rf-ink); outline-offset:3px; }
@media (min-width:640px){ .rf-cookie{ left:24px; right:auto; bottom:24px; max-width:440px; padding:24px; } }


/* ==========================================================================
   38  „ŽIŪRĖTI“ ŽYMEKLIS rf-cursor (§5.34) (C17)
   ========================================================================== */
.rf-cursor{ position:fixed; left:0; top:0; z-index:var(--rf-z-cursor); width:0; height:0; pointer-events:none; }
.rf-cursor__disk{
  position:absolute; left:-42px; top:-42px; width:84px; height:84px; border-radius:var(--rf-r-round);
  display:grid; place-items:center; padding:8px; text-align:center;
  background:var(--rf-ink); color:var(--rf-paper); font-family:var(--rf-font-text); font-size:13px; line-height:1.1; font-weight:var(--rf-wght-ui);
  transform:scale(0); transition:transform 250ms var(--rf-e-out);
}
.rf-cursor.is-active .rf-cursor__disk{ transform:scale(1); }
@media (hover:none),(pointer:coarse),(max-width:999.98px){ .rf-cursor{ display:none; } }


/* ==========================================================================
   39  VIZIJA → ĮGYVENDINIMAS rf-compare (§5.35) (C22)
   ========================================================================== */
.rf-compare{ --rf-pos:50%; position:relative; padding:var(--rf-mat-pad); background:var(--rf-mat); box-shadow:var(--rf-d1); user-select:none; -webkit-user-select:none; }
.rf-compare__stage{ position:relative; overflow:hidden; aspect-ratio:var(--ar, 3 / 2); background:var(--rf-sand); touch-action:pan-y; }
.rf-compare__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; pointer-events:none; }
.rf-compare__img--after{ clip-path:inset(0 0 0 var(--rf-pos)); }
.rf-compare__tag{ position:absolute; top:12px; z-index:2; background:var(--rf-mat); border-color:var(--rf-mat); }
.rf-compare__tag--before{ left:12px; } .rf-compare__tag--after{ right:12px; }
.rf-compare__handle{ position:absolute; inset:0; z-index:3; pointer-events:none; transform:translateX(var(--rf-pos)); }
.rf-compare__handle::before{ content:""; position:absolute; left:-.5px; top:0; bottom:0; width:1px; background:var(--rf-mat); box-shadow:0 0 0 .5px rgba(21,32,43,.25); }
.rf-compare__knob{
  position:absolute; left:-22px; top:50%; margin-top:-22px; pointer-events:auto; cursor:ew-resize; touch-action:none;
  background:var(--rf-mat); border-color:var(--rf-mat); box-shadow:var(--rf-d1);
}
.rf-compare__knob:focus-visible{ outline-color:var(--rf-ink); }
.rf-compare__cap{ padding-top:12px; }


/* ==========================================================================
   40  IKONOS (§5.36) (C10)
   ========================================================================== */
.rf-icon{
  display:inline-block; flex:none; width:24px; height:24px; vertical-align:middle; overflow:visible;
  fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:square; stroke-linejoin:miter;
}
.rf-icon--fill{ fill:currentColor; stroke:none; }
.rf-icon--sm{ width:16px; height:16px; }
.rf-icon--lg{ width:32px; height:32px; }


/* ==========================================================================
   41  EFEKTŲ BŪSENOS data-* (§6) – JS tik perjungia klases / kintamuosius
   ========================================================================== */
/* --- data-reveal (C2) --- */
html.rf-js [data-reveal]{
  transition-property:opacity, transform; transition-duration:var(--rf-t-4); transition-timing-function:var(--rf-e-out);
  transition-delay:var(--rf-reveal-delay, 0ms);
}
html.rf-js [data-reveal]:not(.is-in){ opacity:0; transform:translate3d(0, 26px, 0); }
html.rf-js [data-reveal="fade"]{ transition-property:opacity; transition-duration:700ms; }
html.rf-js [data-reveal="fade"]:not(.is-in){ transform:none; }
html.rf-js [data-reveal="scale"]:not(.is-in){ transform:scale(.96); }
html.rf-js [data-reveal="mask"]{ transition-property:clip-path; transition-duration:1200ms; transition-timing-function:var(--rf-e-draw); }
html.rf-js [data-reveal="mask"]:not(.is-in){ opacity:1; transform:none; clip-path:inset(100% 0 0 0); }
html.rf-js [data-reveal="mask"].is-in{ clip-path:inset(0 0 0 0); }
html.rf-js [data-reveal="draw"]{ transition-property:transform; transition-duration:var(--rf-t-5); transition-timing-function:var(--rf-e-draw); transform-origin:left center; }
html.rf-js [data-reveal="draw"]:not(.is-in){ opacity:1; transform:scaleX(0); }
html.rf-js [data-reveal].is-in{ opacity:1; transform:none; }
@media (max-width:999.98px){
  html.rf-js [data-reveal]:not([data-reveal="fade"]):not([data-reveal="mask"]):not([data-reveal="draw"]):not([data-reveal="scale"]){ transition-duration:700ms; }
  html.rf-js [data-reveal]:not([data-reveal="fade"]):not([data-reveal="mask"]):not([data-reveal="draw"]):not([data-reveal="scale"]):not(.is-in){ transform:translate3d(0, 16px, 0); }
}
[data-reveal-delay="40"]{ --rf-reveal-delay:40ms; }   [data-reveal-delay="60"]{ --rf-reveal-delay:60ms; }
[data-reveal-delay="80"]{ --rf-reveal-delay:80ms; }   [data-reveal-delay="100"]{ --rf-reveal-delay:100ms; }
[data-reveal-delay="120"]{ --rf-reveal-delay:120ms; } [data-reveal-delay="150"]{ --rf-reveal-delay:150ms; }
[data-reveal-delay="160"]{ --rf-reveal-delay:160ms; } [data-reveal-delay="200"]{ --rf-reveal-delay:200ms; }
[data-reveal-delay="240"]{ --rf-reveal-delay:240ms; } [data-reveal-delay="250"]{ --rf-reveal-delay:250ms; }
[data-reveal-delay="300"]{ --rf-reveal-delay:300ms; } [data-reveal-delay="320"]{ --rf-reveal-delay:320ms; }
[data-reveal-delay="360"]{ --rf-reveal-delay:360ms; } [data-reveal-delay="400"]{ --rf-reveal-delay:400ms; }
[data-reveal-delay="450"]{ --rf-reveal-delay:450ms; } [data-reveal-delay="480"]{ --rf-reveal-delay:480ms; }
[data-reveal-delay="500"]{ --rf-reveal-delay:500ms; } [data-reveal-delay="600"]{ --rf-reveal-delay:600ms; }

/* --- data-split (C3) --- */
.rf-split__word,.rf-split__line{
  display:inline-block; overflow:hidden; vertical-align:top;
  padding:.14em 0 .16em; margin:-.14em 0 -.16em;            /* diakritikams (Ž, Ū) ir nosinėms (ą, ų) */
}
.rf-split__line{ display:block; }
.rf-split__inner{ display:inline-block; transform-origin:0 100%; }
html.rf-js [data-split] .rf-split__inner{
  transition:transform 1000ms var(--rf-e-out); transition-delay:calc(var(--rf-reveal-delay, 0ms) + var(--rf-i, 0) * 55ms);
}
html.rf-js [data-split]:not(.is-in) .rf-split__inner{ transform:translate3d(0, 105%, 0); }

/* --- data-draw (C4, C5) --- */
html.rf-js [data-draw] :is(path,line,polyline,polygon,circle,ellipse,rect)[pathLength="1"],
html.rf-js :is(path,line,polyline,polygon,circle,ellipse,rect)[data-draw][pathLength="1"],
html.rf-js [data-reveal="draw"] :is(path,line,polyline,circle)[pathLength="1"]{
  stroke-dasharray:1; stroke-dashoffset:1;
  transition:stroke-dashoffset var(--rf-t-5) var(--rf-e-draw) var(--rf-draw-delay, 0ms);
}
/* .is-in taisyklės SĄMONINGAI be [pathLength="1"]: Chromium neperskaičiuoja SVG camelCase atributo
   selektoriaus pasikeitus protėvio klasei (C4). Kontūrams be pathLength dashoffset:0 nieko nekeičia. */
html.rf-js [data-draw].is-in :is(path,line,polyline,polygon,circle,ellipse,rect),
html.rf-js :is(path,line,polyline,polygon,circle,ellipse,rect)[data-draw].is-in,
html.rf-js [data-reveal="draw"].is-in :is(path,line,polyline,circle){ stroke-dashoffset:0; }
[data-draw] [pathLength="1"]:nth-of-type(2){ --rf-draw-delay:120ms; }
[data-draw] [pathLength="1"]:nth-of-type(3){ --rf-draw-delay:240ms; }
[data-draw] [pathLength="1"]:nth-of-type(4){ --rf-draw-delay:360ms; }
[data-draw] [pathLength="1"]:nth-of-type(5){ --rf-draw-delay:480ms; }
/* matmuo: linija nuo centro, tada brūkšneliai ir reikšmė */
html.rf-js .rf-dim[data-draw] .rf-dim__line{ transform:scaleX(0); transition:transform var(--rf-t-5) var(--rf-e-draw) var(--rf-reveal-delay, 0ms); }
html.rf-js .rf-dim[data-draw]::before,
html.rf-js .rf-dim[data-draw]::after,
html.rf-js .rf-dim[data-draw] .rf-dim__val{ opacity:0; transition:opacity 500ms var(--rf-e-out) calc(var(--rf-reveal-delay, 0ms) + 900ms); }
html.rf-js .rf-dim[data-draw] .rf-dim__val{ transition-delay:calc(var(--rf-reveal-delay, 0ms) + 1020ms); }
html.rf-js .rf-dim[data-draw].is-in .rf-dim__line{ transform:none; }
html.rf-js .rf-dim[data-draw].is-in::before,
html.rf-js .rf-dim[data-draw].is-in::after,
html.rf-js .rf-dim[data-draw].is-in .rf-dim__val{ opacity:1; }
/* 1 px linija (.rf-rule[data-draw]) */
html.rf-js .rf-rule[data-draw]{ transform:scaleX(0); transform-origin:left center; transition:transform var(--rf-t-5) var(--rf-e-draw) var(--rf-reveal-delay, 0ms); }
html.rf-js .rf-rule[data-draw].is-in{ transform:none; }
/* skaičių grandinė */
html.rf-js .rf-stats__chain[data-draw]::before{ transform:scaleX(0); transition:transform 1600ms var(--rf-e-out); }
html.rf-js .rf-stats__chain[data-draw]::after{ clip-path:inset(0 100% 0 0); transition:clip-path 1600ms var(--rf-e-out); }
html.rf-js .rf-stats__chain[data-draw].is-in::before{ transform:none; }
html.rf-js .rf-stats__chain[data-draw].is-in::after{ clip-path:inset(0 -8px 0 -8px); }
html.rf-js .rf-stats__chain[data-draw]:not(.is-in) ~ .rf-stats__list .rf-stat::before{ transform:scaleX(0); }
html.rf-js .rf-stats__chain[data-draw]:not(.is-in) ~ .rf-stats__list .rf-stat::after{ opacity:0; }
html.rf-js .rf-stats__chain[data-draw] ~ .rf-stats__list .rf-stat::before{ transition:transform 1600ms var(--rf-e-out); }
html.rf-js .rf-stats__chain[data-draw] ~ .rf-stats__list .rf-stat::after{ transition:opacity 500ms var(--rf-e-out) 600ms; }
html.rf-js .rf-stats__chain[data-draw] ~ .rf-stats__list .rf-stat:nth-child(even)::before{ transition-delay:260ms; }
/* darbo eigos linija (--row) */
html.rf-js .rf-process__steps[data-draw]::before{ transition:transform var(--rf-t-5) var(--rf-e-draw); }
html.rf-js .rf-process__steps[data-draw].is-in::before{ transform:none; }
@media (max-width:999.98px){ html.rf-js .rf-process__steps[data-draw]:not(.is-in)::before{ transform:scaleY(0); } }
@media (min-width:1000px){ html.rf-js .rf-process__steps[data-draw]:not(.is-in)::before{ transform:scaleX(0); } }

/* --- data-counter: skaitmenys nešokinėja --- */
[data-counter]{ font-variant-numeric:tabular-nums; }

/* --- data-sticky (C6) --- */
[data-sticky]{ position:sticky; z-index:var(--rf-z-sticky); transition:transform var(--rf-t-2) var(--rf-e-out); }
[data-sticky="top"]{ top:0; }
[data-sticky="below-header"]{ top:var(--rf-header-offset); }
[data-sticky="below-filter"]{ top:calc(var(--rf-header-offset) + var(--rf-filter-h)); }
.rf-filterbar[data-sticky]{ z-index:var(--rf-z-sticky); }
@media (max-width:999.98px){ [data-sticky][data-sticky-mobile="0"]{ position:relative; top:auto; } }

/* --- data-scroll-scale: pradinė būsena iki pirmo JS kadro (0.94 → 1; niekada > 1) --- */
html.rf-js [data-scroll-scale^="0.94"]{ transform:scale(.94); transform-origin:50% 50%; }

/* --- data-img-parallax: sluoksnio vieta (JS rašo transform) --- */
[data-img-parallax]{ transform-origin:50% 50%; }

/* --- data-parallax-bg (C27) --- */
[data-parallax-bg]{ position:relative; overflow:hidden; }
[data-parallax-bg] > .rf-bgmedia{ position:absolute; left:0; right:0; top:-8%; bottom:-8%; z-index:0; }
[data-parallax-bg="medium"] > .rf-bgmedia{ top:-14%; bottom:-14%; }
.rf-bgmedia > img,img.rf-bgmedia{ width:100%; height:100%; object-fit:cover; }
@media (max-width:999.98px){ [data-parallax-bg] > .rf-bgmedia{ top:0; bottom:0; } }

/* --- data-mouse-scene (sluoksnius pozicionuoja puslapis) --- */
:where([data-mouse-scene]){ position:relative; }

/* --- data-tilt: perėjimai (JS rašo vienoje eilutėje) --- */
[data-tilt]{ transition:transform 600ms var(--rf-e-out); }
[data-tilt].is-tilting{ transition:transform 250ms var(--rf-e-out); }
[data-tilt].is-tilting::after{ opacity:1; }

/* --- data-depth-filter: atsitraukimas (C12) --- */
html .rf-card.is-receding,
html.rf-js [data-reveal].rf-card.is-receding{
  opacity:.28; filter:blur(1.5px) saturate(.4); transform:scale(.955); pointer-events:none;
  transition:opacity 450ms var(--rf-e-out), filter 450ms var(--rf-e-out), transform 450ms var(--rf-e-out);
}
.rf-card.is-receding::after{ content:""; position:absolute; inset:0; height:auto; z-index:3; background:var(--rf-paper); opacity:.25; pointer-events:none; }
@media (max-width:999.98px){
  html .rf-card.is-receding,
  html.rf-js [data-reveal].rf-card.is-receding{ filter:saturate(.4); transition-duration:300ms; }
}

/* --- data-color-change: pati sekcija be fono --- */
[data-color-change]{ background:transparent; }


/* ==========================================================================
   42  TONAS data-tone="gyvenamasis" (Namai, Butai, Gerbūvis, Žurnalas)
   ========================================================================== */
[data-tone="gyvenamasis"] .rf-frame--marks::before{ content:none; }
[data-tone="gyvenamasis"] .rf-sechead .rf-eyebrow__nr,
[data-tone="gyvenamasis"] .rf-eyebrow__nr{ display:none; }


/* ==========================================================================
   43  PAGALBINĖS KLASĖS (C35 – papildomos, ne §5)
   ========================================================================== */
/* kortelių tinklelis 1 / 2 / 3 */
.rf-cardgrid{ display:grid; grid-template-columns:minmax(0,1fr); gap:calc(var(--rf-gap) * 2) var(--rf-gap); }
@media (min-width:640px){ .rf-cardgrid{ grid-template-columns:repeat(2, minmax(0,1fr)); } }
@media (min-width:1100px){ .rf-cardgrid{ grid-template-columns:repeat(3, minmax(0,1fr)); } }
/* Swedbank miestų tinklelis (Geist Mono 14, vardininku) */
.rf-cities{
  list-style:none; margin:0; padding:0; columns:2; column-gap:var(--rf-gap);
  font-family:var(--rf-font-data); font-size:var(--rf-fs-small); line-height:1.9; color:var(--rf-ink);
}
.rf-cities li{ break-inside:avoid; }
@media (min-width:640px){ .rf-cities{ columns:3; } }
@media (min-width:1000px){ .rf-cities{ columns:5; } }
/* 1 px linija */
.rf-rule{ display:block; height:1px; border:0; background:var(--rf-line-ui); }
/* štrichavimas 45° kas 10 px */
.rf-hatch{ background:repeating-linear-gradient(-45deg, var(--rf-line) 0 1px, transparent 1px 10px); }


/* ==========================================================================
   44  KEYFRAMES
   ========================================================================== */
@keyframes rf-fade-in{ from{ opacity:0; } to{ opacity:1; } }
@keyframes rf-fade-out{ from{ opacity:1; } to{ opacity:0; } }
@keyframes rf-fade-up{ from{ opacity:0; transform:translate3d(0, 16px, 0); } to{ opacity:1; transform:none; } }
@keyframes rf-drop-in{ from{ opacity:0; transform:translate3d(0, -8px, 0); } to{ opacity:1; transform:none; } }
@keyframes rf-drop-out{ from{ opacity:1; transform:none; } to{ opacity:0; transform:translate3d(0, -8px, 0); } }
@keyframes rf-lb-in{ from{ opacity:0; transform:scale(.98); } to{ opacity:1; transform:none; } }
@keyframes rf-underline-redraw{
  0%{ background-size:100% 1px; background-position:100% calc(100% - 3px); }
  45%{ background-size:0 1px; background-position:100% calc(100% - 3px); }
  55%{ background-size:0 1px; background-position:0 calc(100% - 3px); }
  100%{ background-size:100% 1px; background-position:0 calc(100% - 3px); }
}
@keyframes rf-progress{ from{ transform:scaleX(0); } to{ transform:scaleX(1); } }
/* Zoom slider (§5.13) – individualios savybės scale / translate */
@keyframes rf-zs-shrink{ from{ scale:1; } to{ scale:.62; } }
@keyframes rf-zs-grow{ from{ scale:.62; } to{ scale:1; } }
@keyframes rf-zs-out{ from{ translate:0 0; } to{ translate:0 calc(var(--rf-zs-dir, 1) * -104%); } }
@keyframes rf-zs-in{ from{ translate:0 calc(var(--rf-zs-dir, 1) * 104%); } to{ translate:0 0; } }
@keyframes rf-zs-counter-in{ from{ scale:1; } to{ scale:1.2; } }
@keyframes rf-zs-counter-out{ from{ scale:1.2; } to{ scale:1; } }
/* kaukės: tekstas išvažiuoja aukštyn / įvažiuoja iš apačios (clip-path lokaliose koordinatėse) */
@keyframes rf-mask-out-up{ from{ transform:none; clip-path:inset(0 0 0 0); } to{ transform:translateY(-100%); clip-path:inset(100% 0 0 0); } }
@keyframes rf-mask-in-up{ from{ transform:translateY(100%); clip-path:inset(0 0 100% 0); } to{ transform:none; clip-path:inset(0 0 0 0); } }


/* ==========================================================================
   45  prefers-reduced-motion (§6 5 taisyklė) – galutinės būsenos
   ========================================================================== */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{ animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; transition-delay:0s!important; scroll-behavior:auto!important; }
  html.rf-js [data-reveal],
  html.rf-js [data-reveal]:not(.is-in){ opacity:1!important; transform:none!important; clip-path:none!important; }
  html.rf-js [data-split] .rf-split__inner{ transform:none!important; }
  html.rf-js [data-draw] [pathLength="1"],html.rf-js [data-draw][pathLength="1"],
  html.rf-js [data-reveal="draw"] [pathLength="1"]{ stroke-dashoffset:0!important; }
  html.rf-js .rf-dim[data-draw] .rf-dim__line,html.rf-js .rf-rule[data-draw],
  html.rf-js .rf-stats__chain[data-draw]::before,html.rf-js .rf-process__steps[data-draw]::before,
  html.rf-js .rf-stats__chain[data-draw] ~ .rf-stats__list .rf-stat::before{ transform:none!important; }
  html.rf-js .rf-dim[data-draw]::before,html.rf-js .rf-dim[data-draw]::after,html.rf-js .rf-dim[data-draw] .rf-dim__val,
  html.rf-js .rf-stats__chain[data-draw] ~ .rf-stats__list .rf-stat::after{ opacity:1!important; }
  html.rf-js .rf-stats__chain[data-draw]::after{ clip-path:none!important; }
  html.rf-js [data-clip-expand] .rf-band__media{ clip-path:none!important; }
  [data-parallax],[data-img-parallax],[data-mouse-layer],[data-scroll-scale],[data-parallax-bg] > .rf-bgmedia{ transform:none!important; }
  [data-parallax-bg] > .rf-bgmedia{ top:0!important; bottom:0!important; }
  .rf-zoomslider__progress{ display:none!important; }
  .rf-marquee{ padding-top:0!important; -webkit-mask-image:none!important; mask-image:none!important; }
  .rf-marquee__pause,.rf-marquee [data-rf-clone]{ display:none!important; }
  .rf-marquee__track{ flex-wrap:wrap!important; width:auto!important; transform:none!important; }
  .rf-cursor,.rf-ledger__preview{ display:none!important; }
  .rf-card.is-receding{ filter:none!important; transform:none!important; }
}


/* ==========================================================================
   46  forced-colors (Windows didelis kontrastas)
   ========================================================================== */
@media (forced-colors:active){
  .rf-nav__text[data-text]{ color:CanvasText; }
  .rf-nav__text[data-text]::before,.rf-nav__text[data-text]::after{ content:none; }
  .rf-btn::before{ content:none; }
  .rf-btn,.rf-iconbtn,.rf-tag,.rf-chip[aria-current="page"]{ border:1px solid ButtonText; }
  .rf-header__tel::before,.rf-btn::after{ background:ButtonText; }
}


/* ==========================================================================
   47  SPAUDA (print)
   ========================================================================== */
@media print{
  html,html .rf-main,html .rf-section--sand,html .rf-cta{ background:#fff; box-shadow:none; }
  body{ font-size:11pt; }
  html :is(.rf-mockbar,.rf-skip,.rf-header,.rf-offcanvas,.rf-cookie,.rf-cursor,.rf-ledger__preview,.rf-lightbox,
    .rf-footer-spacer,.rf-filterbar,.rf-marquee__pause,.rf-zoomslider__next,.rf-titleblock__controls,
    .rf-cta__arcs,.rf-loadmore,.rf-map__consent),
  html .rf-cta__left > .rf-frame{ display:none; }
  html .rf-footer,html .rf-footer.is-reveal{ position:static; }
  html.rf-js :is([data-reveal],[data-reveal]:not(.is-in)),
  html.rf-js [data-split]:not(.is-in) .rf-split__inner{ opacity:1; transform:none; clip-path:none; }
  html.rf-js [data-clip-expand] .rf-band__media{ clip-path:none; }
  html :is(.rf-frame,.rf-titleblock,.rf-card,.rf-post,.rf-faq__item,.rf-stat){ break-inside:avoid; }
  html :is(.rf-frame--mat,.rf-titleblock--hero,.rf-titleblock--float,.rf-band__card,.rf-direction){ box-shadow:none; }
  html .rf-process--stack .rf-stack__sheet{ position:static; height:auto; transform:none; box-shadow:none; }
  html .rf-prose a[href^="http"]::after{ content:" (" attr(href) ")"; font-size:9pt; color:#555; }
}


/* Paskutinė: [hidden] visada nugali komponentų display (C7) */
[class*="rf-"][hidden]{ display:none; }
