/* =============================================================================
   EMservisas — premium dizainas
   1. Tokens          6. Hero
   2. Reset / base    7. Sekcijos ir komponentai
   3. Tipografija     8. Kontaktai / poraštė
   4. Mygtukai        9. Animacijos
   5. Antraštė       10. Responsive
   ========================================================================== */

/* 1. TOKENS ================================================================ */
:root{
	--ink:        #0B0D10;
	--ink-2:      #101418;
	--ink-3:      #161B21;
	--steel:      #1D242C;
	--bone:       #F4F5F7;
	--bone-2:     #EAECEF;
	--white:      #FFFFFF;

	--flame:      #FF5B14;
	--flame-2:    #FFB020;
	--ember:      #E23E00;

	--txt-dark:   #0B0D10;
	--txt-dark-m: #5A646F;
	--txt-light:  #E9ECF0;
	--txt-light-m:#9AA5B1;
	--txt-strong: #FFFFFF;   /* ryškiausias tekstas; atskirtas nuo --white, nes tas yra kortelių fonas */

	/* Kanalų tokenai (R,G,B be alfa) — leidžia permatomus sluoksnius kurti iš
	   temos spalvų. Tema keičia tik šias reikšmes, o ne 50 vietų faile. */
	--ink-rgb:     11,13,16;    /* pagrindinis paviršius */
	--veil-rgb:    255,255,255; /* sluoksnis ANT pagrindinio paviršiaus (linijos, stiklas) */
	--counter-rgb: 11,13,16;    /* sluoksnis ANT alternatyvaus paviršiaus */
	--shadow-rgb:  0,0,0;
	--accent-rgb:  255,91,20;
	--accent2-rgb: 255,176,32;
	--shine-rgb:   255,255,255; /* blyksnis, perbėgantis per mygtuką */
	--on-accent:   #140702;     /* tekstas ant akcentinio gradiento */
	--ok:          #3ddc84;     /* „šiandien priimame" indikatorius */
	--ok-rgb:      61,220,132;

	--line-dark:  rgba(var(--veil-rgb),.09);
	--line-light: rgba(var(--counter-rgb),.10);

	--grad-flame: linear-gradient(100deg, var(--flame-2), var(--flame) 45%, var(--ember));

	--r-sm: 10px;
	--r:    16px;
	--r-lg: 24px;
	--r-xl: 32px;

	--shell:  1200px;
	--gut:    clamp(20px, 5vw, 48px);
	--sect-y: clamp(72px, 9vw, 132px);

	--f-body: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
	--f-head: 'Space Grotesk', 'Inter', system-ui, sans-serif;

	--ease: cubic-bezier(.22,.68,0,1);
	--shadow-lg: 0 30px 70px -30px rgba(var(--shadow-rgb),.55);
	--shadow-md: 0 18px 40px -22px rgba(var(--shadow-rgb),.45);
}

/* 2. RESET / BASE ========================================================== */
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; scroll-padding-top:96px; }
body{
	margin:0;
	background:var(--ink);
	color:var(--txt-light);
	font-family:var(--f-body);
	font-size:clamp(15px, .35vw + 14.2px, 17px);
	line-height:1.65;
	-webkit-font-smoothing:antialiased;
	overflow-x:hidden;
}
img,svg,iframe{ max-width:100%; display:block; }
/* Autoriaus `display` taisyklės nugali naršyklės [hidden] — be šios eilutės
   paslėptas peržiūros langas liktų ekrane (permatomas) ir gaudytų paspaudimus. */
[hidden]{ display:none !important; }
a{ color:inherit; text-decoration:none; }
ul,ol{ margin:0; padding:0; list-style:none; }
p{ margin:0 0 1em; }
h1,h2,h3,h4{ font-family:var(--f-head); font-weight:700; line-height:1.1; letter-spacing:-.02em; margin:0 0 .5em; }
:focus-visible{ outline:2px solid var(--flame-2); outline-offset:3px; border-radius:4px; }

.shell{ width:100%; max-width:var(--shell); margin-inline:auto; padding-inline:var(--gut); }

.skip-link{
	position:absolute; left:-9999px; top:0; z-index:200;
	background:var(--flame); color:var(--on-accent); padding:12px 20px; border-radius:0 0 var(--r-sm) 0; font-weight:600;
}
.skip-link:focus{ left:0; }

.ico{ width:24px; height:24px; flex:none; }
.ico--sm{ width:18px; height:18px; }
.ico--xs{ width:14px; height:14px; }

/* 3. TIPOGRAFIJA =========================================================== */
.eyebrow{
	display:inline-flex; align-items:center; gap:10px;
	font-size:12px; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
	color:var(--txt-light-m); margin:0 0 20px;
}
.eyebrow--dark{ color:var(--txt-dark-m); }
.eyebrow .dot{
	width:7px; height:7px; border-radius:50%; background:var(--flame);
	box-shadow:0 0 0 4px rgba(var(--accent-rgb),.18);
}
.grad{
	background:var(--grad-flame);
	-webkit-background-clip:text; background-clip:text; color:transparent;
	display:inline-block;
}
.section__title{ font-size:clamp(28px, 3.4vw, 50px); max-width:20ch; }
.section__lead{ color:var(--txt-light-m); font-size:clamp(16px,1.1vw,18px); max-width:62ch; }
.section--light .section__lead{ color:var(--txt-dark-m); }
.section__head{ margin-bottom:clamp(36px,5vw,64px); }
.section__head--center{ text-align:center; }
.section__head--center .section__title,
.section__head--center .section__lead{ margin-inline:auto; }

/* 4. MYGTUKAI ============================================================== */
.btn{
	--bg:transparent; --fg:var(--txt-light); --bd:transparent;
	position:relative; display:inline-flex; align-items:center; justify-content:center; gap:10px;
	padding:13px 22px; border-radius:999px; border:1px solid var(--bd);
	background:var(--bg); color:var(--fg);
	font-family:var(--f-head); font-weight:600; font-size:15px; letter-spacing:-.01em;
	cursor:pointer; overflow:hidden; white-space:nowrap;
	transition:transform .35s var(--ease), box-shadow .35s var(--ease), background .3s, color .3s, border-color .3s;
}
.btn:hover{ transform:translateY(-2px); }
.btn--sm{ padding:10px 18px; font-size:14px; }
.btn--lg{ padding:16px 30px; font-size:16px; }
.btn--block{ width:100%; }

.btn--primary{ --bg:var(--grad-flame); --fg:var(--on-accent); box-shadow:0 12px 30px -12px rgba(var(--accent-rgb),.7); }
.btn--primary:hover{ box-shadow:0 18px 40px -14px rgba(var(--accent-rgb),.85); }
.btn--primary::after{
	content:''; position:absolute; inset:0; background:linear-gradient(120deg,transparent 30%,rgba(var(--shine-rgb),.55),transparent 70%);
	transform:translateX(-120%); transition:transform .7s var(--ease);
}
.btn--primary:hover::after{ transform:translateX(120%); }

.btn--outline{ --bd:rgba(var(--veil-rgb),.22); --fg:var(--txt-light); }
.btn--outline:hover{ --bd:rgba(var(--veil-rgb),.5); background:rgba(var(--veil-rgb),.05); }
.btn--ghost{ --bd:rgba(var(--veil-rgb),.2); --fg:var(--txt-light); }
.btn--ghost:hover{ background:rgba(var(--veil-rgb),.07); }
.btn--dark{ --bg:var(--ink); --fg:var(--txt-light); }
.btn--dark:hover{ --bg:var(--ink-3); }

/* 5. ANTRAŠTĖ ============================================================== */
.site-header{
	position:fixed; inset:0 0 auto 0; z-index:100;
	transition:background .4s var(--ease), backdrop-filter .4s, border-color .4s, padding .4s var(--ease);
	border-bottom:1px solid transparent;
	padding-block:14px;
}
.site-header.is-stuck{
	background:rgba(var(--ink-rgb),.82);
	backdrop-filter:blur(14px) saturate(140%);
	border-bottom-color:var(--line-dark);
	padding-block:8px;
}
.site-header__inner{ display:flex; align-items:center; gap:clamp(16px,3vw,40px); }
.site-header__progress{
	position:absolute; left:0; bottom:-1px; height:2px; width:0;
	background:var(--grad-flame); transition:width .1s linear;
}

.logo{ display:inline-flex; align-items:center; gap:12px; flex:none; }
.logo__mark{ width:40px; height:40px; display:block; transition:transform .5s var(--ease); }
.logo:hover .logo__mark{ transform:rotate(-8deg) scale(1.06); }
.logo__text{ font-family:var(--f-head); font-weight:600; font-size:19px; letter-spacing:-.02em; line-height:1.1; }
.logo__text strong{ font-weight:700; }
.logo__text em{
	display:block; font-style:normal; font-size:10px; font-weight:500;
	letter-spacing:.13em; text-transform:uppercase; color:var(--txt-light-m); margin-top:2px;
}

.nav{ margin-left:auto; }
.nav__list{ display:flex; align-items:center; gap:clamp(4px,1.4vw,10px); }
.nav__link{
	position:relative; display:block; padding:9px 11px; border-radius:999px;
	font-size:14px; font-weight:500; color:var(--txt-light-m); white-space:nowrap;
	transition:color .25s, background .25s;
}
.nav__link:hover,.nav__link.is-active{ color:var(--txt-strong); background:rgba(var(--veil-rgb),.07); }
.nav__cta{ display:none; }

.site-header__actions{ display:flex; align-items:center; gap:12px; margin-left:auto; }
.nav + .site-header__actions{ margin-left:0; }
.phone-link{
	display:inline-flex; align-items:center; gap:8px; font-weight:600; font-size:14.5px;
	padding:9px 4px; color:var(--txt-light); transition:color .25s;
}
.phone-link:hover{ color:var(--flame-2); }
.phone-link .ico{ color:var(--flame); }
.phone-link span{ white-space:nowrap; }

.burger{
	display:none; width:44px; height:44px; border:1px solid var(--line-dark); border-radius:12px;
	background:rgba(var(--veil-rgb),.04); cursor:pointer; padding:0;
	flex-direction:column; align-items:center; justify-content:center; gap:5px;
}
.burger span{ display:block; width:18px; height:2px; background:var(--txt-light); border-radius:2px; transition:transform .35s var(--ease), opacity .2s; }
.burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

/* 6. HERO ================================================================== */
.hero{ position:relative; padding:clamp(140px,17vw,210px) 0 clamp(70px,9vw,110px); overflow:hidden; }
.hero__bg{ position:absolute; inset:0; z-index:0; pointer-events:none; }
.hero__glow{ position:absolute; border-radius:50%; filter:blur(90px); opacity:.5; }
.hero__glow--a{
	width:min(60vw,720px); aspect-ratio:1; right:-14%; top:-22%;
	background:radial-gradient(circle, rgba(var(--accent-rgb),.55), transparent 68%);
	animation:float-a 16s var(--ease) infinite alternate;
}
.hero__glow--b{
	width:min(46vw,520px); aspect-ratio:1; left:-16%; bottom:-24%;
	background:radial-gradient(circle, rgba(var(--accent2-rgb),.3), transparent 70%);
	animation:float-b 20s var(--ease) infinite alternate;
}
.hero__grid{
	position:absolute; inset:0;
	background-image:linear-gradient(var(--line-dark) 1px,transparent 1px),linear-gradient(90deg,var(--line-dark) 1px,transparent 1px);
	background-size:64px 64px;
	mask-image:radial-gradient(ellipse 80% 60% at 50% 30%, #000 25%, transparent 78%);
	-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 30%, #000 25%, transparent 78%);
	opacity:.7;
}
.sparks{ position:absolute; inset:0; }
.sparks i{
	position:absolute; width:3px; height:3px; border-radius:50%; background:var(--flame-2);
	left:calc(4% + (var(--i) * 5.4%)); bottom:-10px; opacity:0;
	box-shadow:0 0 8px 1px rgba(var(--accent2-rgb),.9);
	animation:spark 9s linear infinite;
	animation-delay:calc(var(--i) * -.62s);
}

.hero__inner{ position:relative; z-index:1; display:grid; grid-template-columns:1.35fr .85fr; gap:clamp(32px,5vw,72px); align-items:center; }
.hero__title{ font-size:clamp(38px,6.2vw,80px); letter-spacing:-.035em; margin-bottom:24px; }
.hero__lead{ font-size:clamp(16px,1.3vw,19.5px); color:var(--txt-light-m); max-width:56ch; margin-bottom:34px; }
.hero__actions{ display:flex; flex-wrap:wrap; gap:14px; margin-bottom:34px; }
.hero__chips{ display:flex; flex-wrap:wrap; gap:10px 26px; font-size:14px; color:var(--txt-light-m); }
.hero__chips li{ display:inline-flex; align-items:center; gap:8px; }
.hero__chips .ico{ color:var(--flame); }

.hero__card{
	position:relative; padding:30px; border-radius:var(--r-lg);
	background:linear-gradient(160deg, rgba(var(--veil-rgb),.09), rgba(var(--veil-rgb),.03));
	border:1px solid var(--line-dark); backdrop-filter:blur(10px);
	box-shadow:var(--shadow-lg);
}
.hero__card::before{
	content:''; position:absolute; inset:-1px; border-radius:inherit; padding:1px;
	background:linear-gradient(140deg, rgba(var(--accent2-rgb),.55), transparent 45%);
	-webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite:xor; mask-composite:exclude; pointer-events:none;
}
.hero__card-top{ display:inline-flex; align-items:center; gap:9px; font-size:12px; letter-spacing:.13em; text-transform:uppercase; color:var(--flame-2); font-weight:600; margin-bottom:16px; }
.pulse{ width:8px; height:8px; border-radius:50%; background:var(--ok); box-shadow:0 0 0 0 rgba(var(--ok-rgb),.6); animation:pulse 2.2s infinite; }
.hero__card-title{ font-size:24px; margin-bottom:10px; }
.hero__card p{ color:var(--txt-light-m); font-size:15px; }
.hero__card-list{ margin:20px 0 24px; display:grid; gap:10px; font-size:14.5px; }
.hero__card-list li{ display:flex; align-items:center; gap:10px; }
.hero__card-list .ico{ color:var(--flame); }
.hero__card-note{ margin:14px 0 0; text-align:center; font-size:13.5px; }
.hero__card-note a{ color:var(--flame-2); font-weight:600; }

.scroll-cue{ position:absolute; left:50%; bottom:26px; transform:translateX(-50%); width:26px; height:42px; border:1px solid var(--line-dark); border-radius:14px; display:grid; place-items:start center; padding-top:8px; z-index:1; }
.scroll-cue span{ width:3px; height:7px; border-radius:2px; background:var(--flame); animation:cue 1.8s var(--ease) infinite; }

/* 7. SEKCIJOS IR KOMPONENTAI =============================================== */
.section{ position:relative; padding-block:var(--sect-y); }
.section--dark{ background:var(--ink); }
.section--light{ background:var(--bone); color:var(--txt-dark); }
.section--light h2,.section--light h3{ color:var(--txt-dark); }

/* Ticker */
.ticker{ overflow:hidden; border-block:1px solid var(--line-dark); background:var(--ink-2); padding:16px 0; }
.ticker__track{ display:flex; align-items:center; gap:26px; width:max-content; animation:marquee 38s linear infinite; }
.ticker span{ font-family:var(--f-head); font-size:clamp(14px,1.4vw,17px); font-weight:600; text-transform:uppercase; letter-spacing:.06em; color:var(--txt-light-m); white-space:nowrap; }
.ticker i{ color:var(--flame); font-style:normal; }

/* Stats */
.stats{ background:var(--ink-2); padding-block:clamp(40px,5vw,64px); border-bottom:1px solid var(--line-dark); }
.stats__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(20px,3vw,40px); }
.stat b{ display:block; font-family:var(--f-head); font-size:clamp(34px,4.4vw,56px); line-height:1; background:var(--grad-flame); -webkit-background-clip:text; background-clip:text; color:transparent; margin-bottom:8px; }
.stat > span{ display:block; font-size:14px; color:var(--txt-light-m); }

/* Cards */
.cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(16px,2vw,26px); }
.card{
	position:relative; padding:32px 28px 28px; border-radius:var(--r-lg);
	background:var(--white); border:1px solid var(--line-light);
	box-shadow:var(--shadow-md); overflow:hidden;
	transition:transform .5s var(--ease), box-shadow .5s var(--ease);
}
.card:hover{ transform:translateY(-6px); box-shadow:0 30px 60px -28px rgba(var(--shadow-rgb),.55); }
.card__glow{
	position:absolute; width:280px; height:280px; border-radius:50%; pointer-events:none;
	background:radial-gradient(circle, rgba(var(--accent-rgb),.16), transparent 65%);
	left:var(--mx,50%); top:var(--my,0); transform:translate(-50%,-50%);
	opacity:0; transition:opacity .4s;
}
.card:hover .card__glow{ opacity:1; }
.card__icon{
	display:grid; place-items:center; width:54px; height:54px; border-radius:16px; margin-bottom:20px;
	background:var(--grad-flame); color:var(--on-accent);
	box-shadow:0 12px 26px -14px rgba(var(--accent-rgb),.9);
}
.card__title{ font-size:21px; margin-bottom:10px; color:var(--txt-dark); }
.card__lead{ color:var(--txt-dark-m); font-size:15px; }
.card__list{ display:grid; gap:8px; margin:18px 0 22px; font-size:14px; color:var(--txt-dark); }
.card__list li{ display:flex; align-items:center; gap:9px; }
.card__list .ico{ color:var(--flame); }
.card__link{ display:inline-flex; align-items:center; gap:7px; font-family:var(--f-head); font-weight:600; font-size:14px; color:var(--ember); }
.card__link .ico{ transition:transform .35s var(--ease); }
.card:hover .card__link .ico{ transform:translateX(4px); }

/* Split (DPF) */
.split__grid{ display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(32px,5vw,70px); align-items:center; }
.split__subtitle{ font-size:18px; margin:34px 0 16px; }
.check-list{ display:grid; gap:12px; margin-bottom:32px; }
.check-list li{ display:flex; gap:12px; align-items:flex-start; font-size:15.5px; color:var(--txt-light-m); }
.check-list .ico{ color:var(--flame); margin-top:3px; }

.split__visual{ margin:0; }
.filter-viz{
	position:relative; padding:34px; border-radius:var(--r-xl);
	background:linear-gradient(150deg,var(--ink-3),var(--ink-2));
	border:1px solid var(--line-dark); box-shadow:var(--shadow-lg); overflow:hidden;
}
.filter-viz__body{ display:grid; grid-template-columns:repeat(7,1fr); gap:8px; height:210px; align-items:end; position:relative; z-index:1; }
.filter-viz__cell{
	display:block; border-radius:6px 6px 3px 3px;
	background:linear-gradient(180deg, rgba(var(--accent-rgb),.85), rgba(var(--accent2-rgb),.25));
	height:calc(38% + var(--i) * 9%);
	animation:breathe 4s var(--ease) infinite alternate;
	animation-delay:calc(var(--i) * .18s);
}
.filter-viz__flow{
	position:absolute; inset:0; z-index:0;
	background:repeating-linear-gradient(115deg, transparent 0 14px, rgba(var(--veil-rgb),.045) 14px 28px);
	animation:flow 7s linear infinite;
}
.filter-viz__caption{ position:relative; z-index:1; margin-top:22px; font-size:13px; color:var(--txt-light-m); text-align:center; }
.filter-viz__caption b{ color:var(--flame-2); }

/* Buyback */
.buyback{ display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(28px,4vw,56px); align-items:start; }
.buyback__steps{ display:grid; gap:18px; margin:32px 0; }
.buyback__step{ display:flex; gap:16px; align-items:flex-start; }
.buyback__num{
	flex:none; width:34px; height:34px; border-radius:50%; display:grid; place-items:center;
	background:var(--ink); color:var(--flame-2); font-family:var(--f-head); font-weight:700; font-size:14px;
}
.buyback__step b{ display:block; font-family:var(--f-head); font-size:16px; color:var(--txt-dark); }
.buyback__step p{ margin:2px 0 0; font-size:14.5px; color:var(--txt-dark-m); }
.buyback__actions{ display:flex; flex-wrap:wrap; gap:12px; }

.buyback__panel{
	padding:32px 28px; border-radius:var(--r-lg); background:var(--white);
	border:1px solid var(--line-light); box-shadow:var(--shadow-md);
}
.buyback__panel h3{ font-size:18px; color:var(--txt-dark); margin-bottom:18px; }
.pill-list{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:22px; }
.pill-list li{
	padding:8px 14px; border-radius:999px; font-size:13.5px; font-weight:500;
	background:var(--bone-2); color:var(--txt-dark); border:1px solid var(--line-light);
}
.buyback__note{ display:flex; gap:11px; align-items:flex-start; margin:0; font-size:13.5px; color:var(--txt-dark-m); }
.buyback__note .ico{ color:var(--flame); margin-top:2px; }

/* Chips grid */
.chips-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.chip-card{
	display:flex; align-items:center; gap:12px; padding:18px 20px; border-radius:var(--r);
	background:var(--ink-2); border:1px solid var(--line-dark); font-size:14.5px; font-weight:500;
	transition:transform .4s var(--ease), border-color .3s, background .3s;
}
.chip-card:hover{ transform:translateY(-4px); border-color:rgba(var(--accent-rgb),.45); background:var(--ink-3); }
.chip-card .ico{ color:var(--flame); }

/* Steps */
.steps{ display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(18px,2.4vw,30px); counter-reset:s; }
.step{ position:relative; padding-top:28px; border-top:2px solid var(--line-light); }
.step::before{ content:''; position:absolute; top:-2px; left:0; width:36px; height:2px; background:var(--grad-flame); }
.step__num{ font-family:var(--f-head); font-size:13px; font-weight:700; letter-spacing:.14em; color:var(--ember); display:block; margin-bottom:12px; }
.step__title{ font-size:18.5px; margin-bottom:8px; }
.step p{ font-size:14.5px; color:var(--txt-dark-m); margin:0; }

/* Benefits */
.benefits{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(16px,2vw,26px); }
.benefit{
	padding:28px 26px; border-radius:var(--r-lg);
	background:linear-gradient(160deg, rgba(var(--veil-rgb),.055), rgba(var(--veil-rgb),.02));
	border:1px solid var(--line-dark);
	transition:transform .45s var(--ease), border-color .35s;
}
.benefit:hover{ transform:translateY(-5px); border-color:rgba(var(--accent2-rgb),.35); }
.benefit__icon{ display:grid; place-items:center; width:42px; height:42px; border-radius:12px; background:rgba(var(--accent-rgb),.14); color:var(--flame-2); margin-bottom:16px; }
.benefit h3{ font-size:18px; margin-bottom:8px; }
.benefit p{ font-size:14.5px; color:var(--txt-light-m); margin:0; }

/* Quotes */
.quotes{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(16px,2vw,26px); }
.quote{
	margin:0; padding:30px 28px; border-radius:var(--r-lg); background:var(--white);
	border:1px solid var(--line-light); box-shadow:var(--shadow-md);
}
.quote__stars{ color:var(--flame); letter-spacing:3px; margin-bottom:14px; font-size:15px; }
.quote blockquote{ margin:0 0 20px; font-size:16px; color:var(--txt-dark); line-height:1.6; }
.quote figcaption b{ display:block; font-family:var(--f-head); font-size:15px; color:var(--txt-dark); }
.quote figcaption span{ font-size:13px; color:var(--txt-dark-m); }

/* Atsiliepimų antraštė ir reitingo ženklas */
.reviews-head{
	display:flex; flex-wrap:wrap; align-items:center; gap:clamp(24px,4vw,56px);
	margin-bottom:clamp(28px,3vw,40px);
}
.reviews-intro{ flex:1 1 340px; }
.reviews-intro .section__title{ margin-bottom:.35em; }
.reviews-intro .section__lead{ margin:0; }

.rating-badge{
	display:flex; align-items:center; gap:18px; flex:none;
	padding:22px 30px; border-radius:var(--r-lg);
	background:var(--white); border:1px solid var(--line-light); box-shadow:var(--shadow-md);
}
.rating-badge__score{
	font-family:var(--f-head); font-size:clamp(42px,4.5vw,58px); font-weight:700; line-height:1;
	background:var(--grad-flame); -webkit-background-clip:text; background-clip:text; color:transparent;
}
.rating-badge__meta{ display:grid; gap:5px; }
.rating-badge__stars{ display:flex; gap:2px; font-size:17px; color:var(--line-light); line-height:1; }
.rating-badge__stars i{ font-style:normal; }
.rating-badge__stars i.on{ color:var(--flame); }
.rating-badge__meta a{
	font-size:13.5px; color:var(--txt-dark-m); text-decoration:underline; text-underline-offset:3px;
	transition:color .25s;
}
.rating-badge__meta a:hover{ color:var(--ember); }

/* Filtro mygtukai */
.reviews-filter{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:clamp(22px,2.5vw,32px); }
.chip-btn{
	display:inline-flex; align-items:center; gap:9px; cursor:pointer;
	padding:10px 18px; border-radius:999px;
	border:1px solid var(--line-light); background:var(--white); color:var(--txt-dark);
	font-family:var(--f-head); font-weight:600; font-size:14px; letter-spacing:.01em;
	transition:background .3s, color .3s, border-color .3s, transform .3s var(--ease);
}
.chip-btn:hover{ transform:translateY(-2px); border-color:rgba(var(--accent-rgb),.45); }
.chip-btn span{
	display:inline-grid; place-items:center; min-width:22px; height:22px; padding:0 6px;
	border-radius:999px; background:var(--bone-2); color:var(--txt-dark-m); font-size:12px;
	transition:background .3s, color .3s;
}
.chip-btn.is-active{ background:var(--ink); color:var(--txt-light); border-color:var(--ink); }
.chip-btn.is-active span{ background:rgba(var(--veil-rgb),.14); color:var(--flame-2); }

/* Tamsiose sekcijose tie patys mygtukai turi apsiversti — kitaip aktyvusis
   (fonas --ink) susilieja su pačia sekcija. */
.section--dark .chip-btn{
	background:rgba(var(--veil-rgb),.05); color:var(--txt-light); border-color:var(--line-dark);
}
.section--dark .chip-btn span{ background:rgba(var(--veil-rgb),.12); color:var(--txt-light-m); }
.section--dark .chip-btn:hover{ background:rgba(var(--veil-rgb),.1); border-color:rgba(var(--accent-rgb),.5); }
.section--dark .chip-btn.is-active{ background:var(--grad-flame); color:var(--on-accent); border-color:transparent; }
.section--dark .chip-btn.is-active span{ background:rgba(var(--shadow-rgb),.2); color:var(--on-accent); }

.quote[hidden]{ display:none; }
.reviews-empty{ padding:34px; text-align:center; color:var(--txt-dark-m); }

/* Galerija / atlikti darbai ------------------------------------------------ */
.demo-badge{
	display:inline-block; margin-left:8px; padding:4px 12px; border-radius:999px;
	font-size:12px; font-weight:600; letter-spacing:.04em; vertical-align:middle;
	color:var(--flame-2); background:rgba(var(--accent-rgb),.12); border:1px dashed rgba(var(--accent-rgb),.4);
}

.gallery-filter{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:clamp(22px,2.5vw,32px); }

/* Du atskiri tinkleliai: pirma palyginimai „prieš / po", po jų pavienės nuotraukos.
   Sumaišius juos viename tinklelyje atsiranda skylių, nes elementai skirtingo pločio.
   Abu naudoja auto-fill, tad prisitaiko be atskirų lūžio taškų. */
.gallery{ display:grid; gap:clamp(16px,2vw,26px); }
.gallery--compare{ grid-template-columns:repeat(auto-fit, minmax(min(100%, 440px), 1fr)); }
.gallery--single{ grid-template-columns:repeat(auto-fit, minmax(min(100%, 250px), 1fr)); }
.gallery--compare + .gallery--single{ margin-top:clamp(16px,2vw,26px); }
.gallery[hidden]{ display:none; }
.gallery-empty{ padding:34px; text-align:center; color:var(--txt-light-m); }

.work{
	margin:0; overflow:hidden; border-radius:var(--r-lg);
	background:linear-gradient(160deg, rgba(var(--veil-rgb),.055), rgba(var(--veil-rgb),.02));
	border:1px solid var(--line-dark);
	transition:transform .45s var(--ease), border-color .35s;
}
.work{ display:flex; flex-direction:column; }
.work:hover{ transform:translateY(-5px); border-color:rgba(var(--accent2-rgb),.35); }
.work[hidden]{ display:none; }

.work__cap{ padding:20px 22px 22px; }
.work__cap h3{ font-size:17.5px; margin-bottom:6px; }
.work__cap p{ margin:0; font-size:14px; color:var(--txt-light-m); }

/* Viena nuotrauka */
.work__shot{
	position:relative; display:block; width:100%; padding:0; border:0; cursor:zoom-in;
	background:none; overflow:hidden;
}
/* height:auto būtina — be jos HTML atributas height="…" nugali aspect-ratio
   ir nuotrauka ištįsta (buvo 350×900 vietoj 350×263). */
.work__shot img{
	width:100%; height:auto; aspect-ratio:1/1; object-fit:cover;
	max-height:420px;   /* apsauga: viena nuotrauka netampa per visą ekraną */
	transition:transform .6s var(--ease);
}
.work__shot:hover img{ transform:scale(1.04); }
.work__zoom{
	position:absolute; right:12px; bottom:12px; display:grid; place-items:center;
	width:36px; height:36px; border-radius:50%; color:var(--on-accent); background:var(--grad-flame);
	opacity:0; transform:translateY(6px); transition:opacity .3s, transform .3s var(--ease);
}
.work__shot:hover .work__zoom,.work__shot:focus-visible .work__zoom{ opacity:1; transform:none; }

/* Tempiamas palyginimas */
.compare{
	position:relative; aspect-ratio:16/10; overflow:hidden; touch-action:pan-y;
	cursor:ew-resize; user-select:none; -webkit-user-select:none;
}
.compare__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; pointer-events:none; }
.compare__img--before{ clip-path:inset(0 calc(100% - var(--pos,50%)) 0 0); }
.compare__label{
	position:absolute; top:14px; padding:6px 14px; border-radius:999px; pointer-events:none;
	font-family:var(--f-head); font-size:11.5px; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
	background:rgba(var(--ink-rgb),.72); color:var(--txt-light); backdrop-filter:blur(6px);
}
.compare__label--l{ left:14px; }
.compare__label--r{ right:14px; background:var(--grad-flame); color:var(--on-accent); }

.compare__handle{
	position:absolute; top:0; bottom:0; left:var(--pos,50%); width:44px; margin-left:-22px;
	padding:0; border:0; background:none; cursor:ew-resize; display:grid; place-items:center;
}
.compare__handle::before{
	content:''; position:absolute; top:0; bottom:0; left:50%; width:2px; margin-left:-1px;
	background:rgba(var(--veil-rgb),.9); box-shadow:0 0 14px rgba(var(--shadow-rgb),.5);
}
.compare__handle i{
	position:relative; display:grid; place-items:center; width:44px; height:44px; border-radius:50%;
	background:var(--grad-flame); box-shadow:0 6px 20px -6px rgba(var(--shadow-rgb),.7);
	transition:transform .3s var(--ease);
}
.compare__handle i::before,.compare__handle i::after{
	content:''; position:absolute; width:0; height:0;
	border-top:5px solid transparent; border-bottom:5px solid transparent;
}
.compare__handle i::before{ border-right:7px solid var(--on-accent); left:9px; }
.compare__handle i::after{ border-left:7px solid var(--on-accent); right:9px; }
.compare__handle:hover i,.compare__handle:focus-visible i{ transform:scale(1.12); }
.compare.is-dragging{ cursor:grabbing; }
.compare.is-dragging .compare__handle i{ transform:scale(1.12); }

/* Peržiūros langas */
.lightbox{
	position:fixed; inset:0; z-index:150; display:grid; place-items:center;
	background:rgba(var(--shadow-rgb),.92); backdrop-filter:blur(8px);
	padding:clamp(16px,4vw,48px); opacity:0; transition:opacity .3s var(--ease);
}
.lightbox.is-open{ opacity:1; }
.lightbox__figure{ margin:0; max-width:min(1100px,92vw); text-align:center; }
.lightbox__figure img{
	max-width:100%; max-height:78vh; width:auto; height:auto; margin-inline:auto;
	border-radius:var(--r); box-shadow:var(--shadow-lg);
}
.lightbox__figure figcaption{ margin-top:16px; color:#E9ECF0; font-size:15px; }
.lightbox__close,.lightbox__nav{
	position:absolute; display:grid; place-items:center; cursor:pointer;
	border:1px solid rgba(255,255,255,.22); background:rgba(255,255,255,.08); color:#fff;
	border-radius:50%; transition:background .25s, transform .25s var(--ease);
}
.lightbox__close:hover,.lightbox__nav:hover{ background:rgba(255,255,255,.2); transform:scale(1.06); }
.lightbox__close{ top:20px; right:20px; width:46px; height:46px; font-size:26px; line-height:1; }
.lightbox__nav{ top:50%; margin-top:-26px; width:52px; height:52px; font-size:32px; line-height:1; }
.lightbox__nav--prev{ left:16px; }
.lightbox__nav--next{ right:16px; }

/* FAQ */
.faq-shell{ max-width:900px; }
.faq{ display:grid; gap:12px; }
.faq__item{
	border:1px solid var(--line-dark); border-radius:var(--r);
	background:var(--ink-2); overflow:hidden; transition:border-color .3s, background .3s;
}
.faq__item[open]{ border-color:rgba(var(--accent2-rgb),.32); background:var(--ink-3); }
.faq__item summary{
	display:flex; align-items:center; justify-content:space-between; gap:20px;
	padding:20px 24px; cursor:pointer; list-style:none;
	font-family:var(--f-head); font-weight:600; font-size:clamp(15.5px,1.2vw,17.5px);
}
.faq__item summary::-webkit-details-marker{ display:none; }
.faq__item summary i{
	position:relative; flex:none; width:26px; height:26px; border-radius:50%;
	border:1px solid var(--line-dark); transition:transform .4s var(--ease), background .3s, border-color .3s;
}
.faq__item summary i::before,.faq__item summary i::after{
	content:''; position:absolute; inset:50% 7px auto 7px; height:2px; background:currentColor; border-radius:2px; transform:translateY(-50%);
}
.faq__item summary i::after{ transform:translateY(-50%) rotate(90deg); transition:transform .4s var(--ease); }
.faq__item[open] summary i{ background:var(--grad-flame); border-color:transparent; color:var(--on-accent); transform:rotate(180deg); }
.faq__item[open] summary i::after{ transform:translateY(-50%) rotate(0); }
.faq__answer{ padding:0 24px 22px; }
.faq__answer p{ margin:0; color:var(--txt-light-m); font-size:15.5px; max-width:72ch; }

/* 8. KONTAKTAI / PORAŠTĖ =================================================== */
.contact{ display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(24px,3vw,44px); align-items:stretch; }
.contact__info{ display:grid; gap:14px; align-content:start; }
.contact__row{
	display:flex; gap:16px; align-items:flex-start; padding:20px 22px; border-radius:var(--r);
	background:var(--white); border:1px solid var(--line-light); transition:transform .35s var(--ease), border-color .3s;
}
a.contact__row:hover{ transform:translateX(4px); border-color:rgba(var(--accent-rgb),.4); }
.contact__ico{ flex:none; display:grid; place-items:center; width:42px; height:42px; border-radius:12px; background:var(--ink); color:var(--flame-2); }
.contact__row b{ display:block; font-family:var(--f-head); font-size:13px; text-transform:uppercase; letter-spacing:.1em; color:var(--txt-dark-m); margin-bottom:3px; }
.contact__row em{ display:block; font-style:normal; font-size:16px; font-weight:500; color:var(--txt-dark); }
.contact__legal{ font-size:13px; color:var(--txt-dark-m); padding:4px 4px 0; }
.contact__map{ border-radius:var(--r-lg); overflow:hidden; border:1px solid var(--line-light); box-shadow:var(--shadow-md); min-height:420px; }
.contact__map iframe{ width:100%; height:100%; min-height:420px; border:0; filter:grayscale(.35) contrast(1.05); }

.site-footer{ background:var(--ink-2); border-top:1px solid var(--line-dark); padding-block:clamp(48px,6vw,80px) 32px; }
.footer-cta{
	display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:28px;
	padding:clamp(28px,4vw,48px); border-radius:var(--r-xl); margin-bottom:clamp(40px,5vw,68px);
	background:linear-gradient(135deg, rgba(var(--accent-rgb),.16), rgba(var(--accent2-rgb),.05));
	border:1px solid rgba(var(--accent2-rgb),.24);
}
.footer-cta h2{ font-size:clamp(24px,2.6vw,34px); margin-bottom:8px; }
.footer-cta p{ margin:0; color:var(--txt-light-m); max-width:56ch; font-size:15.5px; }
.footer-cta__actions{ display:flex; flex-wrap:wrap; gap:12px; }

.footer-grid{ display:grid; grid-template-columns:1.6fr 1fr 1.2fr 1fr; gap:clamp(24px,3vw,44px); padding-bottom:40px; border-bottom:1px solid var(--line-dark); }
.logo--footer{ margin-bottom:18px; }
.footer-about{ font-size:14.5px; color:var(--txt-light-m); max-width:42ch; margin:0; }
.footer-col__title{ font-size:13px; text-transform:uppercase; letter-spacing:.13em; color:var(--txt-light-m); margin-bottom:18px; }
.footer-list{ display:grid; gap:11px; font-size:14.5px; }
.footer-list a{ color:var(--txt-light); transition:color .25s; }
.footer-list a:hover{ color:var(--flame-2); }
.footer-list--contacts li{ display:flex; gap:10px; align-items:flex-start; }
.footer-list--contacts .ico{ color:var(--flame); margin-top:3px; }
.footer-hours li{ display:flex; justify-content:space-between; gap:14px; }
.footer-hours span{ color:var(--txt-light-m); }
.footer-hours b{ font-weight:600; white-space:nowrap; }

.footer-bottom{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:14px; padding-top:26px; font-size:13.5px; color:var(--txt-light-m); }
.footer-bottom p{ margin:0; }
.footer-legal{ display:flex; gap:22px; }
.footer-legal a:hover{ color:var(--flame-2); }
.footer-credit{ color:var(--txt-light-m); }
.footer-credit a{ color:var(--flame-2); font-weight:600; }
.footer-credit a:hover{ color:var(--txt-strong); }

/* Mobilioji juosta */
.mobile-bar{
	position:fixed; left:0; right:0; bottom:0; z-index:90; display:none; gap:1px;
	background:var(--line-dark); border-top:1px solid var(--line-dark);
	transform:translateY(110%); transition:transform .45s var(--ease);
	padding-bottom:env(safe-area-inset-bottom);
}
.mobile-bar.is-visible{ transform:translateY(0); }
.mobile-bar__btn{
	flex:1; display:flex; align-items:center; justify-content:center; gap:8px;
	padding:15px 10px; background:var(--ink-2); font-family:var(--f-head); font-weight:600; font-size:14.5px;
}
.mobile-bar__btn--call{ background:var(--grad-flame); color:var(--on-accent); }

/* 9. ANIMACIJOS ============================================================ */
[data-reveal]{ opacity:0; transform:translateY(26px); }
.js-ready [data-reveal]{ transition:opacity .8s var(--ease), transform .8s var(--ease); transition-delay:calc(var(--d,0) * 70ms); }
[data-reveal].is-in{ opacity:1; transform:none; }
.no-js [data-reveal]{ opacity:1; transform:none; }

@keyframes float-a{ from{ transform:translate(0,0) scale(1); } to{ transform:translate(-6%,7%) scale(1.12); } }
@keyframes float-b{ from{ transform:translate(0,0) scale(1); } to{ transform:translate(8%,-6%) scale(1.1); } }
@keyframes spark{
	0%{ opacity:0; transform:translateY(0) scale(.6); }
	12%{ opacity:1; }
	100%{ opacity:0; transform:translateY(-90vh) translateX(calc(var(--i) * 2px - 18px)) scale(.2); }
}
@keyframes pulse{
	0%{ box-shadow:0 0 0 0 rgba(var(--ok-rgb),.55); }
	70%{ box-shadow:0 0 0 9px rgba(var(--ok-rgb),0); }
	100%{ box-shadow:0 0 0 0 rgba(var(--ok-rgb),0); }
}
@keyframes cue{ 0%{ transform:translateY(0); opacity:1; } 70%{ transform:translateY(14px); opacity:0; } 100%{ opacity:0; } }
@keyframes marquee{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
@keyframes breathe{ from{ filter:brightness(.75); } to{ filter:brightness(1.25); } }
@keyframes flow{ from{ background-position:0 0; } to{ background-position:200px 0; } }

@media (prefers-reduced-motion: reduce){
	html{ scroll-behavior:auto; }
	*,*::before,*::after{ animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; }
	[data-reveal]{ opacity:1 !important; transform:none !important; }
}

/* 10. RESPONSIVE =========================================================== */
@media (max-width:1240px){
	.phone-link span{ display:none; }
	.site-header__inner{ gap:16px; }
}

@media (max-width:1080px){
	.hero__inner{ grid-template-columns:1fr; }
	.hero__card{ max-width:520px; }
	.cards,.benefits,.quotes{ grid-template-columns:repeat(2,1fr); }
	.steps{ grid-template-columns:repeat(2,1fr); }
	.chips-grid{ grid-template-columns:repeat(3,1fr); }
	.footer-grid{ grid-template-columns:repeat(2,1fr); }
}

@media (max-width:900px){
	.nav{
		position:fixed; inset:0; margin:0; z-index:-1;
		background:rgba(var(--ink-rgb),.97); backdrop-filter:blur(18px);
		display:flex; flex-direction:column; align-items:center; justify-content:center;
		opacity:0; visibility:hidden; transition:opacity .35s var(--ease), visibility .35s;
	}
	.nav.is-open{ opacity:1; visibility:visible; z-index:99; }
	.nav__list{ flex-direction:column; gap:6px; text-align:center; }
	.nav__link{ font-size:22px; font-family:var(--f-head); padding:12px 22px; }
	.nav__cta{ display:inline-flex; margin-top:26px; }
	.logo{ position:relative; z-index:101; }
	.burger{ display:flex; }
	.site-header__actions{ margin-left:auto; z-index:101; }
	.phone-link span{ display:none; }
	.split__grid,.buyback,.contact{ grid-template-columns:1fr; }
	.stats__grid{ grid-template-columns:repeat(2,1fr); }
	.mobile-bar{ display:flex; }
	body{ padding-bottom:0; }
}

@media (max-width:620px){
	html{ scroll-padding-top:80px; }
	.cards,.benefits,.quotes,.steps{ grid-template-columns:1fr; }

	.compare{ aspect-ratio:4/3; }
	.lightbox__nav{ width:44px; height:44px; font-size:26px; margin-top:-22px; }
	.lightbox__nav--prev{ left:8px; }
	.lightbox__nav--next{ right:8px; }
	.chips-grid{ grid-template-columns:repeat(2,1fr); }
	.footer-grid{ grid-template-columns:1fr; }
	.logo__text em{ display:none; }
	.site-header__actions .btn{ display:none; }   /* CTA jau yra apatinėje juostoje */
	.site-header__actions{ gap:8px; }
	.btn--lg{ padding:14px 22px; font-size:15px; }
	.hero__actions .btn{ flex:1 1 100%; }
	.footer-cta__actions .btn{ flex:1 1 100%; }
	.contact__map,.contact__map iframe{ min-height:300px; }
	.section__title{ max-width:none; }
}

/* 11. TEISINIAI PUSLAPIAI (privatumo politika) ============================= */
.legal__hero{ position:relative; padding:clamp(130px,15vw,180px) 0 clamp(40px,5vw,64px); overflow:hidden; }
.legal__hero-bg{ position:absolute; inset:0; pointer-events:none; }
.legal__hero-bg .hero__glow--a{ right:-20%; top:-40%; opacity:.35; }
.legal__hero h1{ font-size:clamp(32px,5vw,58px); margin:0 0 12px; }
.legal__meta{ color:var(--txt-light-m); font-size:14.5px; margin:0; }
.crumbs{ display:flex; align-items:center; gap:10px; font-size:13.5px; color:var(--txt-light-m); margin-bottom:22px; }
.crumbs a{ color:var(--flame-2); }
.crumbs a:hover{ text-decoration:underline; }

.legal__grid{ display:grid; grid-template-columns:270px 1fr; gap:clamp(28px,4vw,64px); align-items:start; }

.legal__toc{ position:sticky; top:110px; padding:26px 24px; border-radius:var(--r-lg); background:var(--white); border:1px solid var(--line-light); box-shadow:var(--shadow-md); }
.legal__toc h2{ font-size:13px; text-transform:uppercase; letter-spacing:.12em; color:var(--txt-dark-m); margin-bottom:16px; }
.legal__toc ol{ counter-reset:toc; display:grid; gap:9px; }
.legal__toc li{ counter-increment:toc; font-size:14px; }
.legal__toc a{ color:var(--txt-dark); transition:color .25s; }
.legal__toc a::before{ content:counter(toc) '. '; color:var(--flame); font-weight:600; }
.legal__toc a:hover{ color:var(--ember); }

.legal__content{ max-width:76ch; color:var(--txt-dark); }
.legal__content h2{ font-size:clamp(20px,2vw,26px); margin:44px 0 14px; scroll-margin-top:110px; }
.legal__content h2:first-child{ margin-top:0; }
.legal__content p{ color:var(--txt-dark-m); font-size:15.5px; }
.legal__content a{ color:var(--ember); text-decoration:underline; text-underline-offset:3px; }
.legal__list{ display:grid; gap:10px; margin:0 0 18px; padding-left:0; }
.legal__list li{ position:relative; padding-left:26px; font-size:15.5px; color:var(--txt-dark-m); }
.legal__list li::before{ content:''; position:absolute; left:6px; top:10px; width:7px; height:7px; border-radius:50%; background:var(--grad-flame); }
.legal__list b{ color:var(--txt-dark); }
.legal__note{ padding:16px 20px; border-radius:var(--r); background:rgba(var(--accent-rgb),.08); border:1px solid rgba(var(--accent-rgb),.25); font-size:14.5px; }

@media (max-width:900px){
	.legal__grid{ grid-template-columns:1fr; }
	.legal__toc{ position:static; }
}

/* 12. FONO NUOTRAUKOS ======================================================
   LAIKINAS SPRENDIMAS. Nuotraukos kraunamos tiesiai iš Unsplash CDN
   (Unsplash licencija: nemokamas komercinis naudojimas, atribucija neprivaloma,
   tiesioginis linkinimas iš images.unsplash.com yra jų pačių rekomenduojamas
   būdas). Gavus tikras serviso nuotraukas šias reikia pakeisti savomis —
   išorinis šaltinis lėtina puslapį ir yra priklausomybė nuo svetimo serverio.

   Perdangos kuriamos iš --ink-rgb, todėl temą pakeitus (įskaitant šviesią
   „patina") fonas prisitaiko pats — perrašinėti nereikia.
   ========================================================================= */

/* Hero — katalizatoriai ir išmetimo dalys */
.hero__bg{
	background-image:
		linear-gradient(100deg,
			rgba(var(--ink-rgb),.96) 0%,
			rgba(var(--ink-rgb),.88) 32%,
			rgba(var(--ink-rgb),.40) 68%,
			rgba(var(--ink-rgb),.18) 100%),
		linear-gradient(to bottom,
			rgba(var(--ink-rgb),.30) 0%,
			rgba(var(--ink-rgb),.10) 45%,
			var(--ink) 98%),
		url('https://images.unsplash.com/photo-1759419281419-b04552b2691a?auto=format&fit=crop&w=1920&q=62');
	background-size: cover, cover, cover;
	background-position: center, center, 65% center;
	background-repeat: no-repeat;
}

/* DPF sekcija — išmetimo vamzdis */
#dpf::before{
	content:''; position:absolute; inset:0; z-index:0; pointer-events:none;
	background-image:
		linear-gradient(100deg,
			var(--ink) 0%,
			rgba(var(--ink-rgb),.93) 36%,
			rgba(var(--ink-rgb),.55) 72%,
			rgba(var(--ink-rgb),.32) 100%),
		url('https://images.unsplash.com/photo-1556783151-c6d5e7d296bb?auto=format&fit=crop&w=1600&q=62');
	background-size: cover, cover;
	background-position: center, 70% center;
	background-repeat: no-repeat;
}
#dpf > .shell{ position:relative; z-index:1; }

/* Siauruose ekranuose tekstas užima visą plotį — perdanga turi būti tiršta,
   kitaip nuotrauka prasimuša po raidėmis. */
@media (max-width:900px){
	.hero__bg{
		background-image:
			linear-gradient(to bottom,
				rgba(var(--ink-rgb),.93) 0%,
				rgba(var(--ink-rgb),.9) 55%,
				var(--ink) 97%),
			url('https://images.unsplash.com/photo-1759419281419-b04552b2691a?auto=format&fit=crop&w=1100&q=60');
		background-size: cover, cover;
		background-position: center, center;
	}
	#dpf::before{
		background-image:
			linear-gradient(to bottom,
				rgba(var(--ink-rgb),.95) 0%,
				rgba(var(--ink-rgb),.92) 60%,
				var(--ink) 98%),
			url('https://images.unsplash.com/photo-1556783151-c6d5e7d296bb?auto=format&fit=crop&w=1000&q=60');
		background-size: cover, cover;
		background-position: center, center;
	}
}

/* 13. SLAPUKŲ JUOSTA (PrivacyWire) =========================================
   Modulio bazinis CSS išjungtas jo nustatymuose (jis krovė šviesų foną ir
   nugalėdavo temą). Kartu teko perimti ir jo mechaniką: panelės laikomos už
   ekrano, o parodomos body klasėmis show-banner / show-options / show-message,
   kurias uždeda modulio JavaScript.
   ========================================================================= */
.privacywire{
	position:fixed; z-index:140;
	right:clamp(12px,2vw,26px);
	bottom:-250%; opacity:0;            /* paslėpta būsena */
	width:min(430px, calc(100vw - 24px));
	background:rgba(var(--ink-rgb),.97);
	backdrop-filter:blur(18px) saturate(140%);
	border:1px solid var(--line-dark);
	border-radius:var(--r-lg);
	box-shadow:var(--shadow-lg);
	color:var(--txt-light);
	padding:24px 24px 20px;
	transition:bottom .4s var(--ease), opacity .35s var(--ease);
}
.show-banner  .privacywire-banner,
.show-message .privacywire-message,
.show-options .privacywire-options{ bottom:clamp(12px,2vw,26px); opacity:1; }

.privacywire-header{
	font-family:var(--f-head); font-weight:700; font-size:17px; line-height:1.25;
	color:var(--txt-light); margin:0 0 10px;
}
.privacywire-text{ font-size:14px; line-height:1.6; color:var(--txt-light-m); margin:0 0 16px; }
.privacywire-text ul{ display:grid; gap:9px; margin:6px 0 0; }
.privacywire-text label{ display:flex; align-items:center; gap:10px; cursor:pointer; color:var(--txt-light); }
.privacywire-text input[type="checkbox"]{ accent-color:var(--flame); width:17px; height:17px; flex:none; }
.privacywire-text input:disabled{ opacity:.55; }

.privacywire-buttons{ display:flex; flex-wrap:wrap; gap:9px; }
.privacywire-buttons button{
	flex:1 1 auto; min-width:118px;
	display:inline-flex; align-items:center; justify-content:center;
	padding:11px 18px; border-radius:999px; cursor:pointer;
	font-family:var(--f-head); font-weight:600; font-size:14px; line-height:1;
	border:1px solid rgba(var(--veil-rgb),.26);
	background:rgba(var(--veil-rgb),.08);
	color:var(--txt-light);
	transition:transform .3s var(--ease), background .25s, border-color .25s, box-shadow .3s;
}
.privacywire-buttons button:hover{
	transform:translateY(-2px);
	background:rgba(var(--veil-rgb),.16);
	border-color:rgba(var(--veil-rgb),.42);
}
.privacywire-buttons button.allow-all,
.privacywire-buttons button.save{
	background:var(--grad-flame); color:var(--on-accent); border-color:transparent;
	box-shadow:0 12px 28px -14px rgba(var(--accent-rgb),.85);
}
.privacywire-buttons button.allow-all:hover,
.privacywire-buttons button.save:hover{ box-shadow:0 16px 34px -14px rgba(var(--accent-rgb),.95); }

.privacywire-page-links{ display:flex; flex-wrap:wrap; gap:16px; margin-top:14px; font-size:13px; }
.privacywire-page-link{ color:var(--flame-2); text-decoration:underline; text-underline-offset:3px; }
.privacywire-page-link:hover{ color:var(--txt-strong); }

/* Ruošinys, kurį JavaScript klonuoja — pats niekada nerodomas.
   Taip pat slepiamas originalus elementas, kai jo vietoje jau parodytas prašymas. */
.privacywire-ask-consent-blueprint,
[data-ask-consent-rendered="1"]{ display:none; }

/* Prašymas vietoj užblokuoto įterpinio (žemėlapio kontaktuose) */
.privacywire-ask-consent{
	display:grid; place-content:center; justify-items:center; gap:16px;
	min-height:320px; height:100%; padding:30px; text-align:center;
	background:rgba(var(--counter-rgb),.05);
}
.privacywire-consent-message{ font-size:14.5px; line-height:1.6; color:var(--txt-dark-m); max-width:38ch; margin:0; }
.privacywire-consent-button{
	padding:12px 24px; border-radius:999px; border:0; cursor:pointer;
	background:var(--grad-flame); color:var(--on-accent);
	font-family:var(--f-head); font-weight:600; font-size:14px;
	box-shadow:0 12px 28px -14px rgba(var(--accent-rgb),.85);
	transition:transform .3s var(--ease);
}
.privacywire-consent-button:hover{ transform:translateY(-2px); }

@media (max-width:620px){
	.privacywire{ left:12px; right:12px; width:auto; padding:20px 20px 18px; }
	.show-banner .privacywire-banner,
	.show-message .privacywire-message,
	.show-options .privacywire-options{ bottom:12px; }
	.privacywire-buttons button{ flex:1 1 100%; }
	/* Kol juosta matoma, apatinė skambinimo juosta nuleidžiama, kad nesidengtų */
	.show-banner .mobile-bar,
	.show-options .mobile-bar{ transform:translateY(110%); }
}

/* 14. KLAIDOS PUSLAPIS ===================================================== */
.error-page{ min-height:62vh; display:grid; place-items:center; }
.error-page__inner{ text-align:center; max-width:640px; }
.error-page .eyebrow{ justify-content:center; }
.error-page .section__title{ max-width:none; margin-bottom:.4em; }
.error-page .section__lead{ margin-inline:auto; }
.error-page__actions{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin:28px 0 34px; }
.error-page__links{
	display:flex; flex-wrap:wrap; gap:10px 22px; justify-content:center;
	padding-top:24px; border-top:1px solid var(--line-dark); font-size:14.5px;
}
.error-page__links a{ color:var(--txt-light-m); transition:color .25s; }
.error-page__links a:hover{ color:var(--flame-2); }

/* 15. GRĮŽIMAS Į VIRŠŲ ======================================================
   Dešinėje apačioje. Toje pačioje vietoje pasirodo ir slapukų sutikimo juosta,
   todėl kol ji atidaryta, mygtukas slepiamas (žr. taisyklę žemiau). Juosta
   rodoma tik iki pirmo sutikimo, tad po jo kampas lieka laisvas.
   ========================================================================= */
.to-top{
	position:fixed; right:clamp(12px,2vw,26px); bottom:clamp(12px,2vw,26px); z-index:95;
	display:grid; place-items:center; width:48px; height:48px;
	border-radius:50%; cursor:pointer;
	border:1px solid var(--line-dark);
	background:rgba(var(--ink-rgb),.88);
	backdrop-filter:blur(12px) saturate(140%);
	color:var(--txt-light);
	box-shadow:0 10px 30px -14px rgba(var(--shadow-rgb),.8);

	/* Paslėpta būsena — mygtukas atsiranda tik paslinkus žemyn */
	opacity:0; visibility:hidden; transform:translateY(12px);
	transition:opacity .35s var(--ease), transform .35s var(--ease),
	           visibility .35s, background .25s, border-color .25s, color .25s;
}
.to-top.is-visible{ opacity:1; visibility:visible; transform:none; }
.to-top:hover{
	background:var(--grad-flame); color:var(--on-accent); border-color:transparent;
	transform:translateY(-3px);
}
.to-top svg{ width:20px; height:20px; }

/* Kol atidaryta slapukų juosta ar jos nustatymai — mygtuko nerodome.
   Klasę ant <body> uždeda ir nuima pats PrivacyWire. */
body.has-privacywire-window-opened .to-top{
	opacity:0; visibility:hidden; transform:translateY(12px); pointer-events:none;
}

@media (max-width:900px){
	/* Kad neužliptų ant apatinės skambinimo juostos, kai ji matoma */
	.to-top{ bottom:calc(12px + 56px + env(safe-area-inset-bottom)); }
}

@media (prefers-reduced-motion: reduce){
	.to-top{ transition:opacity .2s, visibility .2s; transform:none; }
	.to-top.is-visible{ transform:none; }
	.to-top:hover{ transform:none; }
}
