/* Melt in Palanga – temos stiliai (pradinis puslapis S1–S8 + vidiniai puslapiai) */

:root {
	--ivory: #FBF8F4; --paper: #FFFFFF; --sand: #FFF1E6; --ink: #111111; --muted: #5F5A55; --line: #EADFD5;
	--sea: #B5481B; --brass: #F58232; --brass-2: #B5481B; --brass-l: #FFB070; --sun-red: #F04137; --sun-yellow: #FFD232;
	--display: "Antonio", "Arial Narrow", sans-serif; --sans: "Montserrat", system-ui, sans-serif;
	--ease: cubic-bezier(.16, 1, .3, 1); --facade: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='36' viewBox='0 0 72 36'%3E%3Cpath d='M.5 0v36M36.5 0v36M48.5 0v36M60.5 0v36M0 0l18 18L36 0' fill='none' stroke='%23fff' stroke-opacity='.055'/%3E%3C/svg%3E"); --wrap: 1480px;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--ivory); color: var(--ink); font: 400 1.0625rem/1.65 var(--sans); -webkit-font-smoothing: antialiased; }
img { display: block; max-width: 100%; }
a { color: inherit; }
.sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
.wrap { width: min(100% - 64px, var(--wrap)); margin-inline: auto; }
.i { flex: none; width: 1.15em; height: 1.15em; fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: square; stroke-linejoin: miter; }
.label { font: 500 .68rem/1 var(--sans); letter-spacing: .2em; text-transform: uppercase; }

/* Mygtukai */
.btn { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: .8rem; height: 48px; padding: 0 1.6rem; overflow: hidden; isolation: isolate; border: 1px solid currentColor; background: transparent; font: 500 .78rem/1 var(--sans); letter-spacing: .2em; text-transform: uppercase; text-decoration: none; cursor: pointer; transition: color .45s var(--ease), border-color .45s; }
.btn::before { content: ""; position: absolute; inset: 0; z-index: -1; background: currentColor; transform: scaleX(0); transform-origin: right; transition: transform .6s var(--ease); }
.btn:hover::before { transform: scaleX(1); transform-origin: left; }
.btn .i { transition: transform .45s var(--ease); }
.btn:hover .i { transform: translateX(4px); }
.btn--light { color: #fff; }
.btn--light::before { background: #fff; }
.btn--light:hover { color: var(--ink); }
.btn--brass { border-color: var(--brass-2); background: var(--brass-2); color: #fff; }
.btn--brass::before { background: var(--ink); }
.btn--brass:hover { border-color: var(--ink); }
.link { display: inline-flex; align-items: center; gap: .7rem; padding-bottom: .35rem; border-bottom: 1px solid var(--brass); font: 500 .78rem/1 var(--sans); letter-spacing: .2em; text-decoration: none; text-transform: uppercase; }
.link .i { transition: transform .45s var(--ease); }
.link:hover .i { transform: translateX(5px); }

/* ============ S1: antraštė ============ */
.hdr { position: absolute; top: 0; right: 0; left: 0; z-index: 60; color: #fff; }
.hdr__in { display: flex; align-items: center; gap: 2.25rem; height: 96px; border-bottom: 1px solid rgba(255, 255, 255, .2); }
.logo { display: block; flex: none; }
.logo img { width: auto; height: 64px; filter: brightness(0) invert(1); }
.nav { margin-inline: auto; }
.menu { display: flex; gap: .4rem; margin: 0; padding: 0; list-style: none; }
.menu > li { position: relative; }
.menu > li > a { position: relative; display: flex; align-items: center; gap: .35rem; height: 96px; padding: 0 .9rem; font: 500 .8rem/1 var(--sans); letter-spacing: .18em; text-decoration: none; text-transform: uppercase; }
.menu > li > a::after { content: ""; position: absolute; right: .9rem; bottom: 34px; left: .9rem; height: 1px; background: currentColor; transform: scaleX(0); transform-origin: right; transition: transform .6s var(--ease); }
.menu > li > a:hover::after, .menu > li.current > a::after { transform: scaleX(1); transform-origin: left; }
.i--chev { width: 12px; height: 12px; transition: transform .35s var(--ease); }
.nav__phone { display: none; }
.hdr__phone { display: inline-flex; align-items: center; gap: .55rem; font: 500 .9rem/1 var(--sans); letter-spacing: .04em; text-decoration: none; }
.hdr__phone .i { width: 17px; height: 17px; }
.nav-toggle { display: none; }

@media (min-width: 1025px) {
	.sub-menu { position: absolute; top: 100%; left: 50%; width: 700px; padding: 1.75rem; background: var(--paper); color: var(--ink); box-shadow: 0 40px 80px -30px rgba(17, 17, 17, .35); opacity: 0; visibility: hidden; transform: translate(-50%, 14px); transition: opacity .3s, transform .55s var(--ease), visibility .3s; }
	.menu-item-has-children:hover > .sub-menu, .menu-item-has-children:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
	.menu-item-has-children:hover .i--chev { transform: rotate(180deg); }
}
.sub-menu__head { display: flex; align-items: baseline; justify-content: space-between; margin: 0 0 1.25rem; padding-bottom: 1rem; border-bottom: 1px solid var(--line); }
.sub-menu__head b { font: 400 1.7rem/1 var(--display); }
.sub-menu__head a { color: var(--brass-2); text-decoration: none; }
.sub-menu ul { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem 1rem; margin: 0; padding: 0; list-style: none; }
.sub-menu ul a { display: grid; gap: .5rem; text-decoration: none; }
.sub-menu .ph { overflow: hidden; aspect-ratio: 4 / 3; }
.sub-menu .ph--blank { display: grid; place-items: center; background: var(--sand); color: var(--brass-2); }
.sub-menu .ph--blank .i { width: 34px; height: 34px; stroke-width: 1; }
.sub-menu img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease); }
.sub-menu ul a:hover img { transform: scale(1.06); }
.sub-menu strong { font: 400 1.2rem/1.1 var(--display); }
.sub-menu small { color: var(--muted); font: 500 .66rem/1 var(--sans); letter-spacing: .16em; text-transform: uppercase; }

/* ============ S1: hero su dviem nuotraukomis ============ */
.hero { position: relative; display: grid; align-items: end; min-height: clamp(480px, 66vh, 690px); overflow: hidden; isolation: isolate; color: #fff; }
.hero__media { position: absolute; inset: 0; z-index: -3; overflow: hidden; background: var(--ink); }
.slide { position: absolute; inset: 0; margin: 0; opacity: 0; transition: opacity 1.8s ease; }
.slide.is-active { opacity: 1; }
.slide img { width: 100%; height: 100%; object-fit: cover; }
.slide.is-active img { animation: kenburns 9s ease-out both; }
.slide--1 img { object-position: 50% 62%; }
.slide--2 img { object-position: 50% 45%; }
.hero::before { content: ""; position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, rgba(17, 17, 17, .66) 0%, rgba(17, 17, 17, .4) 36%, rgba(17, 17, 17, 0) 64%), linear-gradient(180deg, rgba(17, 17, 17, .55) 0%, rgba(17, 17, 17, .08) 30%, rgba(17, 17, 17, .05) 55%, rgba(17, 17, 17, .4) 100%); }
.hero__in { position: relative; padding: 150px 0 122px; }
.kick { display: flex; align-items: center; gap: 1rem; margin: 0 0 1.25rem; animation: rise 1s var(--ease) .2s both; }
.kick .ln { width: 48px; height: 1px; background: var(--brass); transform-origin: left; animation: line 1.2s var(--ease) .3s both; }
.h1 { margin: 0 0 1.1rem; font: 400 clamp(2.8rem, 5.6vw, 5.4rem)/.98 var(--display); letter-spacing: .005em; text-shadow: 0 2px 30px rgba(17, 17, 17, .25); }
.h1 .ln { display: block; overflow: hidden; margin-bottom: -.12em; padding-bottom: .16em; }
.h1 .u { display: inline-block; animation: up 1.3s var(--ease) var(--d, 0s) both; }
.h1 .lt { font-weight: 300; }
.lead { max-width: 44ch; margin: 0 0 1.75rem; color: rgba(255, 255, 255, .9); font-size: 1.12rem; animation: rise 1s var(--ease) .6s both; }
.facts { display: flex; flex-wrap: wrap; margin: 0; padding: 0; list-style: none; animation: rise 1s var(--ease) .75s both; }
.facts li { display: flex; align-items: center; gap: .6rem; padding: 0 1.4rem; border-left: 1px solid rgba(255, 255, 255, .35); font: 500 .88rem/1.3 var(--sans); }
.facts li:first-child { padding-left: 0; border-left: 0; }
.facts .i { width: 20px; height: 20px; color: var(--brass-l); }

/* Nuotraukų perjungimas */
.slides-nav { position: absolute; right: 0; bottom: 122px; display: grid; justify-items: end; gap: .8rem; animation: rise 1s var(--ease) 1s both; }
.slides-nav__dots { display: flex; gap: 1.1rem; }
.dot { display: grid; gap: .45rem; width: 64px; padding: 0; border: 0; background: none; color: rgba(255, 255, 255, .65); text-align: left; cursor: pointer; }
.dot.is-active { color: #fff; }
.dot__n { font: 500 .72rem/1 var(--sans); letter-spacing: .16em; }
.dot__bar { position: relative; height: 1px; overflow: hidden; background: rgba(255, 255, 255, .35); }
.dot__bar i { position: absolute; inset: 0; background: #fff; transform: scaleX(0); transform-origin: left; }
.dot.is-active .dot__bar i { animation: progress var(--slide, 7s) linear both; }
.dot.is-done .dot__bar i { transform: scaleX(1); }
.slides-cap { max-width: 260px; margin: 0; color: rgba(255, 255, 255, .85); font: 400 .9rem/1.4 var(--sans); text-align: right; text-shadow: 0 1px 12px rgba(17, 17, 17, .4); transition: opacity .5s; }

/* Bangos */
.waves { position: absolute; right: 0; bottom: -1px; left: 0; z-index: -1; height: 120px; }
.waves svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.waves path { animation: drift var(--s, 18s) linear infinite; }
.waves .w1 { --s: 26s; fill: rgba(251, 248, 244, .28); }
.waves .w2 { --s: 18s; fill: rgba(251, 248, 244, .5); animation-direction: reverse; }
.waves .w3 { --s: 13s; fill: var(--ivory); }

/* Rezervacijos juosta */
.booking__toggle { display: none; }
.booking { position: sticky; top: 0; z-index: 50; margin-top: -76px; transition: background-color .4s, box-shadow .4s; }
.booking__form { display: grid; grid-template-columns: 1fr 1fr .8fr auto; align-items: stretch; padding: .6rem; border: 1px solid rgba(255, 255, 255, .7); background: rgba(255, 253, 249, .84); box-shadow: 0 30px 60px -30px rgba(17, 17, 17, .45); backdrop-filter: blur(18px) saturate(1.2); animation: rise 1.1s var(--ease) .9s both; transition: padding .4s var(--ease); }
.f { display: grid; gap: .45rem; padding: .85rem 1.4rem; border-right: 1px solid var(--line); cursor: pointer; }
.f__l { display: flex; align-items: center; gap: .5rem; color: var(--muted); }
.f__l .i { width: 15px; height: 15px; color: var(--brass); }
.f input, .f select { width: 100%; min-height: 30px; padding: 0 0 .2rem; border: 0; border-bottom: 1px solid transparent; background: transparent; color: var(--ink); font: 400 1.4rem/1.1 var(--display); transition: border-color .3s; }
.f input:focus, .f select:focus { outline: none; border-bottom-color: var(--brass); }
.btn--go { flex-direction: column; gap: .45rem; height: auto; min-width: 230px; }
.btn--go__t { display: inline-flex; align-items: center; gap: .8rem; }
.btn--go__p { opacity: .85; font: 400 .72rem/1 var(--sans); letter-spacing: .08em; text-transform: none; }
.booking.is-stuck { background: rgba(251, 248, 244, .95); box-shadow: 0 10px 30px -18px rgba(17, 17, 17, .4); backdrop-filter: blur(14px); }
.booking.is-stuck .booking__form { padding: .35rem 0; border-color: transparent; background: transparent; box-shadow: none; backdrop-filter: none; }
.booking.is-stuck .f { padding-block: .55rem; }
.booking.is-stuck .f input, .booking.is-stuck .f select { font-size: 1.2rem; }

/* ============ Bendri sekcijų elementai ============ */
.sec { padding-block: clamp(3.5rem, 6vw, 5.5rem) clamp(2.75rem, 4.5vw, 4rem); }
.eyebrow { display: flex; align-items: center; gap: .9rem; margin: 0 0 1.4rem; color: var(--muted); }
.eyebrow .num { color: var(--brass-2); font: 400 1rem/1 var(--display); letter-spacing: .04em; }
.eyebrow::after { content: ""; width: 48px; height: 1px; background: var(--brass); }
.h2 { margin: 0 0 1.5rem; font: 400 clamp(2.2rem, 4vw, 3.6rem)/1.02 var(--display); letter-spacing: .005em; }
.h2 .lt { display: block; color: var(--sea); font-weight: 300; }
.body { max-width: 52ch; margin: 0 0 2rem; color: var(--muted); }
.js [data-reveal] { opacity: 0; transform: translateY(28px); transition: opacity 1s var(--ease) var(--d, 0s), transform 1.2s var(--ease) var(--d, 0s); }
.js [data-reveal].is-in { opacity: 1; transform: none; }
.js [data-wipe]::after { content: ""; position: absolute; inset: 0; z-index: 1; background: var(--sand); transform-origin: 50% 0; transition: transform .9s var(--ease) var(--d, 0s); pointer-events: none; }
.js [data-wipe].is-in::after { transform: scaleY(0); }
.js [data-wipe] img { transform: scale(1.06); transition: transform 1.4s var(--ease) var(--d, 0s); }
.js [data-wipe].is-in img { transform: none; }
:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
:is(.hdr, .hero, .pdark, .ft-a, .lb, .ct-map, .cta-band) :focus-visible { outline-color: #fff; }
.hdr .sub-menu :focus-visible { outline-color: var(--ink); }
html { scroll-padding-top: 96px; }
.js :is(.ra-top, .pg-head, .aa-hero) [data-reveal] { opacity: 1; transform: none; animation: rise .8s var(--ease) var(--d, 0s) both; }
.js :is(.mosaic, .aa-hero) [data-wipe]::after { display: none; }
.js :is(.mosaic, .aa-hero) [data-wipe] img { transform: none; }
.prow__img, .ap-int figure, .aa-hero__img { position: relative; }

/* Specifikacijos su piktogramomis */
.spec { display: grid; grid-template-columns: 1fr 1fr; margin: 0 0 2.25rem; padding: 0; border-top: 1px solid var(--line); list-style: none; }
.spec li { display: flex; align-items: center; gap: .9rem; padding: 1rem 0; border-bottom: 1px solid var(--line); font-size: .98rem; }
.spec li:nth-child(odd) { padding-right: 1rem; }
.spec .ic { display: grid; flex: none; place-items: center; width: 44px; height: 44px; border: 1px solid var(--line); color: var(--brass-2); }
.spec .ic .i { width: 22px; height: 22px; }
.spec small { display: block; color: var(--muted); font-size: .8rem; }

/* ============ S2: Apie Melt (patvirtinta – koliažas) ============ */
.ab-a__grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: clamp(3rem, 7vw, 7rem); align-items: center; }
.collage { position: relative; height: clamp(480px, 66vh, 640px); }
.collage figure { position: absolute; margin: 0; overflow: hidden; }
.collage img { width: 100%; height: 100%; object-fit: cover; }
.collage .c1 { top: 0; right: 0; width: 64%; height: 80%; }
.collage .c2 { bottom: 0; left: 0; width: 33%; height: 44%; }
.collage .c3 { top: 10%; left: 0; width: 33%; height: 36%; }
.collage__frame { position: absolute; top: 22px; right: -22px; width: 64%; height: 80%; border: 1px solid var(--brass); pointer-events: none; }
.collage__tag { position: absolute; right: 0; bottom: 4%; display: flex; align-items: center; gap: .7rem; margin: 0; padding: 1rem 1.25rem; background: var(--paper); box-shadow: 0 24px 50px -26px rgba(17, 17, 17, .4); }
.collage__tag .i { width: 26px; height: 26px; color: var(--sea); }
.collage__tag b { display: block; font: 400 1.15rem/1.15 var(--display); }
.collage__tag small { color: var(--muted); font-size: .78rem; }
.collage .px { transform: translateY(var(--py, 0)); transition: transform .2s linear; }

/* ============ S3: Kambariai (patvirtinta – sąrašas su peržiūra) ============ */
.rooms { border-top: 1px solid var(--line); }
.sec-head { display: grid; grid-template-columns: 1.1fr 1fr; gap: 2rem 4rem; align-items: end; margin-bottom: clamp(2rem, 4vw, 3.25rem); }
.sec-head .h2 { margin: 0; }
.sec-head__side { display: grid; justify-items: start; gap: 1.5rem; }
.sec-head__side .body { margin: 0; }
.rspec { display: flex; flex-wrap: wrap; gap: .4rem 1.2rem; margin: 0; padding: 0; color: var(--muted); font-size: .9rem; list-style: none; }
.rspec li { display: inline-flex; align-items: center; gap: .45rem; }
.rspec .i { width: 18px; height: 18px; color: var(--brass-2); }
.price { display: grid; justify-items: end; line-height: 1; }
.price small { color: var(--muted); font: 500 .62rem/1 var(--sans); letter-spacing: .2em; text-transform: uppercase; }
.price b { margin-top: .35rem; font: 400 1.9rem/1 var(--display); }
.price b span { font-size: .55em; color: var(--muted); }
.rlist { display: grid; grid-template-columns: 1fr 1.15fr; gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.rlist__view { position: sticky; top: 110px; aspect-ratio: 4 / 5; max-height: 76vh; margin: 0; overflow: hidden; background: var(--sand); }
.rlist__view > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transform: scale(1.06); transition: opacity .8s ease, transform 1.4s var(--ease); }
.rlist__view > img.is-active { opacity: 1; transform: none; }
.rlist__view figcaption { position: absolute; left: 0; bottom: 0; z-index: 2; padding: .8rem 1rem; background: var(--ivory); font: 400 1rem/1 var(--display); letter-spacing: .06em; }
.rows { margin: 0; padding: 0; border-top: 1px solid var(--line); list-style: none; }
.row { position: relative; display: grid; grid-template-columns: 1fr auto; gap: .5rem 1.25rem; align-items: center; padding: 1.6rem 0; border-bottom: 1px solid var(--line); text-decoration: none; transition: padding .5s var(--ease); }
.row::before { content: ""; position: absolute; bottom: -1px; left: 0; width: 100%; height: 1px; background: var(--brass); transform: scaleX(0); transform-origin: left; transition: transform .7s var(--ease); }
.row:hover, .row.is-active { padding-left: .75rem; }
.row:hover::before, .row.is-active::before { transform: scaleX(1); }
.row__n { color: var(--brass-2); font: 400 1rem/1 var(--display); letter-spacing: .06em; }
.row__t { margin: 0 0 .5rem; font: 400 clamp(1.7rem, 2.6vw, 2.4rem)/1 var(--display); transition: color .3s; }
.row.is-active .row__t { color: var(--sea); }
.row__thumb { display: none; }

/* ============ S4: Daugiau nei nakvynė (patvirtinta – tamsi juosta) ============ */
.perk-note { display: flex; align-items: center; gap: .8rem; margin: 2.25rem 0 0; font-size: .95rem; }
.perk-note .i { width: 22px; height: 22px; }
.pdark { position: relative; background: var(--ink); color: var(--ivory); }
.pdark .eyebrow { color: rgba(251, 248, 244, .7); }
.pdark .eyebrow .num { color: var(--brass-l); }
.pdark .h2 .lt { color: var(--brass-l); }
.pdark .body { color: rgba(251, 248, 244, .72); }
.pdark .perk-note { color: rgba(251, 248, 244, .7); }
.pdark .perk-note .i { color: var(--brass-l); }
.pdark .link { color: var(--ivory); }
.pcols { display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat(4, auto); column-gap: 4rem; border-top: 1px solid rgba(255, 255, 255, .14); }
.pcol { position: relative; display: grid; grid-template-rows: subgrid; grid-row: span 4; align-content: start; gap: 1rem; padding: 2.25rem 0 0; text-decoration: none; }

.pcol + .pcol::before { content: ""; position: absolute; top: 0; bottom: 0; left: -2rem; width: 1px; background: rgba(255, 255, 255, .14); }
.pcol__fig { display: flex; align-items: baseline; gap: 1rem; margin: 0; color: var(--brass-l); font: 300 clamp(4rem, 7vw, 6.5rem)/.85 var(--display); }
.pcol__fig s { color: rgba(251, 248, 244, .55); font: 400 .95rem/1 var(--sans); white-space: nowrap; }
.pcol__ph { position: relative; margin: .5rem 0 0; overflow: hidden; aspect-ratio: 16 / 10; }
.pcol__ph img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.85); transition: transform 1.2s var(--ease), filter .6s; }
.pcol:hover .pcol__ph img { transform: scale(1.05); filter: none; }
.pcol__t { margin: 0; font: 400 1.4rem/1.1 var(--display); }
.pcol__d { margin: 0; color: rgba(251, 248, 244, .7); font-size: .95rem; }
.pwaves { position: relative; height: 60px; background: transparent; }
.pwaves svg { position: absolute; top: -2px; bottom: -2px; left: 0; width: 100%; height: calc(100% + 4px); }
.pwaves path { fill: var(--ivory); animation: drift 15s linear infinite; }
.pwaves--top { transform: scaleY(-1); margin-bottom: -1px; }

/* ============ S5: Vieta (patvirtinta – iliustruota schema) ============ */
.dist { margin: 0 0 2rem; padding: 0; border-top: 1px solid var(--line); list-style: none; }
.dist li { display: grid; grid-template-columns: 44px 1fr auto; gap: 1rem; align-items: center; padding: .95rem 0; border-bottom: 1px solid var(--line); }
.dist .ic { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--line); color: var(--brass-2); }
.dist .ic .i { width: 22px; height: 22px; }
.dist b { display: block; font-weight: 500; }
.dist small { color: var(--muted); font-size: .82rem; }
.dist em { color: var(--ink); font: 400 1.5rem/1 var(--display); font-style: normal; white-space: nowrap; }
.addr { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.5rem; }
.addr__line { display: flex; align-items: center; gap: .7rem; margin: 0; font: 400 1.35rem/1.1 var(--display); }
.addr__line .i { width: 24px; height: 24px; color: var(--brass-2); }
.btn--ink { color: var(--ink); }
.btn--ink::before { background: var(--ink); }
.btn--ink:hover { color: #fff; }
.loc-a { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(2.5rem, 6vw, 6rem); align-items: center; }
.imap { position: relative; margin: 0; background: var(--paper); border: 1px solid var(--line); }
.imap svg { display: block; width: 100%; height: auto; }
.imap .sea { fill: #DCE6E4; }
.imap .sand { fill: #EFE4CF; }
.imap .park { fill: #E3EBDD; }
.imap .street { stroke: #E6DDCF; stroke-width: 10; fill: none; }
.imap .main { stroke: #D9CDB8; stroke-width: 16; fill: none; }
.imap .pier { stroke: var(--ink); stroke-width: 2; fill: none; }
.imap .post { stroke: var(--ink); stroke-width: 1.2; }
.imap .wv { fill: none; stroke: #9DB6BB; stroke-width: 1.2; animation: bob 5s ease-in-out infinite; }
.imap .wv:nth-of-type(2n) { animation-delay: -2.5s; }
.imap .route { fill: none; stroke: var(--brass); stroke-width: 3; stroke-dasharray: 2 9; stroke-linecap: round; animation: march 1.2s linear infinite; }
.imap .lbl { fill: var(--muted); font: 500 11px/1 var(--sans); letter-spacing: .14em; text-transform: uppercase; }
.imap .lbl--sea { fill: #5E7F86; font-size: 12px; letter-spacing: .3em; }
.imap .lbl--big { fill: var(--ink); font: 400 22px/1 var(--display); letter-spacing: .02em; text-transform: none; }
.imap .lbl--route { fill: var(--brass-2); font: 400 18px/1 var(--display); letter-spacing: .02em; text-transform: none; }
.imap .pin-pulse { fill: var(--brass); opacity: .35; transform-origin: center; transform-box: fill-box; animation: pulse 2.2s ease-out infinite; }
.imap .pin { fill: var(--ink); }
.imap .pin-dot { fill: var(--brass-l); }
.imap .wheel { fill: none; stroke: var(--sea); stroke-width: 1.6; transform-origin: center; transform-box: fill-box; animation: spin 40s linear infinite; }
.imap .north { fill: none; stroke: var(--ink); stroke-width: 1.2; }

/* ============ S6: Atsiliepimai (patvirtinta – slenkanti juosta) ============ */
.reviews { border-top: 1px solid var(--line); }
.score { display: grid; grid-template-columns: auto 1fr; gap: .25rem 1.1rem; align-items: center; text-decoration: none; }
.score__n { grid-row: span 2; display: grid; place-items: center; min-width: 84px; height: 84px; padding: 0 .6rem; color: #fff; font: 400 2.6rem/1 var(--display); }
.score--booking .score__n { background: #003B95; }
.score--expedia .score__n { background: #FDDB32; color: #191E3B; }
.score b { font: 400 1.35rem/1 var(--display); }
.score small { color: var(--muted); font-size: .85rem; }
.score small em { display: block; font-style: normal; }
.rv-note { margin: 2rem 0 0; color: var(--muted); font-size: .85rem; }
.who { display: flex; align-items: center; gap: .9rem; }
.who__av { display: grid; place-items: center; width: 44px; height: 44px; background: var(--sand); color: var(--brass-2); font: 400 1.2rem/1 var(--display); }
.who b { display: block; font-weight: 500; }
.who small { color: var(--muted); font-size: .82rem; }
.rcardq { display: grid; gap: 1.25rem; margin: 0; padding: 2rem; background: var(--paper); border: 1px solid var(--line); transition: border-color .4s, transform .5s var(--ease); }
.rcardq:hover { border-color: var(--brass); transform: translateY(-4px); }
.rcardq blockquote { margin: 0; color: var(--ink); font-size: 1.02rem; line-height: 1.7; }
.stars { display: flex; gap: 3px; color: var(--brass); }
.stars .i { width: 16px; height: 16px; fill: currentColor; stroke: none; }
.rv-c__head { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: clamp(2rem, 4vw, 3rem); }
.rv-c__head .h2 { margin: 0; }
.rv-c__scores { display: flex; flex-wrap: wrap; gap: 1.5rem 2.5rem; }
.marquee { position: relative; overflow: hidden; -webkit-mask: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.marquee__track { display: flex; gap: 1.5rem; width: max-content; animation: marq 55s linear infinite; }
.marquee:hover .marquee__track { animation-play-state: paused; }
.marquee .rcardq { width: 460px; }

/* ============ S7: DUK + rezervacija (patvirtinta – akordeonas + kortelė) ============ */
.faq { border-top: 1px solid var(--line); }
.acc { margin: 0; border-top: 1px solid var(--line); }
.acc details { border-bottom: 1px solid var(--line); }
.acc summary { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; padding: 1.35rem 0; cursor: pointer; list-style: none; font: 400 clamp(1.25rem, 1.8vw, 1.55rem)/1.2 var(--display); transition: color .3s; }
.acc summary::-webkit-details-marker { display: none; }
.acc summary:hover { color: var(--sea); }
.acc .pm { position: relative; flex: none; width: 34px; height: 34px; border: 1px solid var(--line); transition: background-color .3s, border-color .3s; }
.acc .pm::before, .acc .pm::after { content: ""; position: absolute; top: 50%; left: 50%; width: 12px; height: 1.5px; background: var(--ink); transform: translate(-50%, -50%); transition: transform .4s var(--ease), background-color .3s; }
.acc .pm::after { transform: translate(-50%, -50%) rotate(90deg); }
.acc details[open] .pm { border-color: var(--ink); background: var(--ink); }
.acc details[open] .pm::before, .acc details[open] .pm::after { background: #fff; }
.acc details[open] .pm::after { transform: translate(-50%, -50%) rotate(0deg); }
.acc .ans { max-width: 68ch; padding: 0 3.5rem 1.5rem 0; color: var(--muted); animation: rise .5s var(--ease) both; }
.acc .ans p { margin: 0; }
.cta-btns { display: flex; flex-wrap: wrap; gap: .75rem; }
.cta-contacts { display: grid; gap: .6rem; margin: 1.75rem 0 0; padding: 0; list-style: none; }
.cta-contacts a { display: inline-flex; align-items: center; gap: .6rem; text-decoration: none; }
.cta-contacts .i { width: 18px; height: 18px; }
.faq-a { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(2.5rem, 6vw, 6rem); align-items: start; }
.cta-card { position: sticky; top: 110px; padding: clamp(2rem, 3.5vw, 3rem); background: var(--ink); color: var(--ivory); }
.cta-card .eyebrow { color: rgba(251, 248, 244, .7); }
.cta-card .eyebrow .num { color: var(--brass-l); }
.cta-card .h2 .lt { color: var(--brass-l); }
.cta-card .body { color: rgba(251, 248, 244, .72); }
.cta-card .btn--light:hover { color: var(--ink); }
.cta-card .cta-contacts .i { color: var(--brass-l); }

/* ============ S8: Poraštė (patvirtinta) ============ */
.ft-list { display: grid; gap: .7rem; margin: 0; padding: 0; list-style: none; }
.ft-list a { position: relative; text-decoration: none; transition: color .3s; }
.ft-list a:hover { color: var(--brass-l); }
.ft-h { margin: 0 0 1.4rem; font: 500 .68rem/1 var(--sans); letter-spacing: .2em; text-transform: uppercase; }
.ft-contacts li { display: flex; align-items: flex-start; gap: .7rem; }
.ft-contacts .i { width: 18px; height: 18px; margin-top: .2em; }
.ft-social { display: flex; gap: .5rem; margin: 0; padding: 0; list-style: none; }
.ft-social a { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid currentColor; opacity: .75; transition: opacity .3s, background-color .3s, color .3s; }
.ft-social a:hover { opacity: 1; }
.ft-social .i { width: 18px; height: 18px; }
.ft-bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem 2rem; padding-block: 1.5rem; font-size: .82rem; }
.ft-bottom ul { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; margin: 0; padding: 0; list-style: none; }
.ft-bottom a { text-decoration: none; }

/* S8 · A – tamsi, stulpeliai + didelis žodženklis */
.ft-a { position: relative; overflow: hidden; background: var(--ink); color: rgba(251, 248, 244, .8); }
.ft-a__wv { position: relative; height: 60px; transform: scaleY(-1); margin-bottom: -1px; }
.ft-a__wv svg { position: absolute; top: -2px; bottom: -2px; left: 0; width: 100%; height: calc(100% + 4px); }
.ft-a__wv path { fill: var(--ivory); animation: drift 15s linear infinite; }
.ft-a .ft-h { color: var(--brass-l); }
.ft-a__grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 3rem; padding: clamp(3rem, 6vw, 4.5rem) 0 3rem; }
.ft-a__brand img { width: auto; height: 74px; filter: brightness(0) invert(1); }
.ft-a__brand p { max-width: 30ch; margin: 1.5rem 0; }
.ft-a .ft-contacts a, .ft-a .ft-contacts span { color: #fff; }
.ft-a .ft-contacts .i { color: var(--brass-l); }
.ft-a .ft-list a { color: rgba(251, 248, 244, .85); }
.ft-a .ft-social a { color: #fff; }
.ft-a .ft-social a:hover { background: #fff; color: var(--ink); }
.ft-a__word { position: absolute; right: 2%; bottom: -.16em; z-index: 0; margin: 0; color: rgba(251, 248, 244, .05); font: 400 clamp(8rem, 22vw, 22rem)/.8 var(--display); letter-spacing: -.02em; pointer-events: none; user-select: none; }
.ft-a__grid, .ft-a .ft-bottom { position: relative; z-index: 1; }
.ft-a .ft-bottom { border-top: 1px solid rgba(255, 255, 255, .12); color: rgba(251, 248, 244, .6); }

@keyframes bob { 50% { transform: translateX(8px); } }
@keyframes march { to { stroke-dashoffset: -22; } }
@keyframes pulse { 0% { transform: scale(.6); opacity: .5; } 100% { transform: scale(2.4); opacity: 0; } }
@keyframes spin { to { transform: rotate(360deg); } }
@keyframes marq { to { transform: translateX(calc(-50% - .75rem)); } }

@media (max-width: 1024px) {
	.sec-head { grid-template-columns: 1fr; }
	.rlist { grid-template-columns: 1fr; }
	.rlist__view { display: none; }
	.row { grid-template-columns: 96px 1fr; }
	.row__n { display: none; }
	.row__thumb { display: block; width: 96px; height: 120px; object-fit: cover; grid-row: span 2; }
	.row .price { grid-column: 2; justify-items: start; }
	.pcols { grid-template-columns: 1fr; }
	.pcols { grid-template-rows: none; }
	.pcol { grid-template-rows: none; grid-row: auto; padding: 2rem 0; }
	.pcol + .pcol::before { top: 0; right: 0; bottom: auto; left: 0; width: auto; height: 1px; }
	.loc-a, .faq-a { grid-template-columns: 1fr; }
	.cta-card { position: static; }
	.marquee .rcardq { width: 82vw; }
	.ft-a__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) { .ft-a__grid { grid-template-columns: 1fr; } }



@keyframes up { from { transform: translateY(110%); } }
@keyframes rise { from { opacity: 0; transform: translateY(20px); } }
@keyframes line { from { transform: scaleX(0); } }
@keyframes kenburns { from { transform: scale(1.12) translateY(1.5%); } }
@keyframes drift { to { transform: translateX(-1440px); } }
@keyframes progress { from { transform: scaleX(0); } to { transform: scaleX(1); } }

/* ============ Planšetė / telefonas ============ */
@media (max-width: 1180px) { .hdr__phone span { display: none; } }
@media (max-width: 1024px) {
	.hdr__phone, .hdr__cta { display: none; }
	.logo img { height: 52px; }
	.nav-toggle { display: inline-grid; place-items: center; width: 44px; height: 44px; margin-left: auto; padding: 0; border: 0; background: none; color: inherit; cursor: pointer; }
	.nav-toggle .i { width: 26px; height: 26px; }
	.nav-toggle .i--close, .nav-toggle[aria-expanded="true"] .i--menu { display: none; }
	.nav-toggle[aria-expanded="true"] .i--close { display: block; }
	.nav { position: fixed; inset: 0; z-index: -1; margin: 0; padding: 120px 24px 2rem; overflow: auto; background: var(--ink); opacity: 0; visibility: hidden; transition: opacity .4s, visibility .4s; }
	.nav.is-open { opacity: 1; visibility: visible; }
	.menu { flex-direction: column; gap: 0; }
	.menu > li > a { justify-content: space-between; height: auto; padding: 1rem 0; border-bottom: 1px solid rgba(255, 255, 255, .14); font: 400 2.1rem/1.1 var(--display); letter-spacing: 0; text-transform: none; }
	.menu > li > a::after { display: none; }
	.sub-menu { display: none; padding: 1rem 0; }
	.is-open > .sub-menu { display: block; }
	.is-open .i--chev { transform: rotate(180deg); }
	.sub-menu__head { display: block; margin: 0 0 .75rem; padding: 0 0 .75rem; border-color: rgba(255, 255, 255, .15); }
	.sub-menu__head b { display: none; }
	.sub-menu__head a { color: var(--brass-l); }
	.sub-menu ul { grid-template-columns: 1fr 1fr; }
	.sub-menu small { color: rgba(255, 255, 255, .6); }
	.nav__phone { display: flex; align-items: center; gap: .6rem; margin-top: 2rem; font: 500 1rem/1 var(--sans); text-decoration: none; }
	.ab-a__grid { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
	.hero { min-height: 600px; }
	.hero__in { padding: 130px 0 110px; }
	.slides-nav { display: none; }
	.facts li { width: 50%; padding: .35rem 0; border-left: 0; }
	.js .booking { position: fixed; top: auto; right: 0; bottom: 0; left: 0; margin: 0; padding: .7rem 0 calc(.7rem + env(safe-area-inset-bottom)); border-top: 1px solid var(--line); background: rgba(251, 248, 244, .97); }
	.js .booking__toggle { display: flex; align-items: center; justify-content: center; gap: .7rem; width: 100%; height: 54px; border: 0; background: var(--brass-2); color: #fff; font: 500 .8rem/1 var(--sans); letter-spacing: .2em; text-transform: uppercase; cursor: pointer; }
	.js .booking.is-open .booking__toggle { height: 40px; background: transparent; color: var(--ink); }
	.js .booking:not(.is-open) .booking__form { display: none; }
	.booking__form { grid-template-columns: 1fr 1fr; margin-top: .5rem; padding: 0; border: 1px solid var(--line); box-shadow: none; animation: none; backdrop-filter: none; }
	.f { border-bottom: 1px solid var(--line); padding: .8rem 1rem; }
	.f:nth-of-type(2) { border-right: 0; }
	.f--s, .btn--go { grid-column: 1 / -1; }
	.f--s { border-right: 0; }
	.btn--go { height: auto; min-height: 54px; padding-block: .7rem; }
	.js body { padding-bottom: 80px; }
	.collage { height: 460px; }
}
@media (max-width: 560px) {
	.wrap { width: calc(100% - 32px); }
	.facts li { width: 100%; }
	.spec { grid-template-columns: 1fr; }
	.spec li:nth-child(odd) { padding-right: 0; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
	.js [data-reveal], .js [data-wipe] img { opacity: 1; transform: none; clip-path: none; }
	.js [data-wipe]::after { display: none; }
}

/* ============ WordPress papildymai ============ */
body { position: relative; }
.skip:focus { position: fixed !important; top: 1rem; left: 1rem; z-index: 999; width: auto; height: auto; padding: .7rem 1rem; clip: auto; background: var(--ink); color: #fff; }
.menu > li.current-menu-item > a::after,
.menu > li.current_page_item > a::after,
.menu > li.current-menu-ancestor > a::after { transform: scaleX(1); transform-origin: left; }
.booking { top: var(--wp-admin--admin-bar--height, 0px); }
.hdr--solid { position: relative; background: var(--ink); }
.booking--flat { margin-top: 0; padding-top: 1rem; }
.booking--flat .booking__form { border-color: var(--line); box-shadow: none; animation: none; }
.rooms__more { margin: 2.5rem 0 0; }
.rlist__blank { position: absolute; inset: 0; background: var(--sand); opacity: 0; transition: opacity .8s ease; }
.rlist__blank.is-active { opacity: 1; }
.btn--block { width: 100%; }

/* Vidinių puslapių antraštė ir turinys */
.wrap--narrow { --wrap: 820px; }
.page-head { padding: clamp(3rem, 6vw, 5rem) 0 clamp(2rem, 4vw, 3rem); border-bottom: 1px solid var(--line); }
.page-head .h2 { margin: 0 0 1rem; }
.page-head .body { margin: 0; }
.page-head .cta-btns { margin-top: 2rem; }
.entry { font-size: 1.05rem; }
.entry > :first-child { margin-top: 0; }
.entry h2, .entry h3 { margin: 1.8em 0 .6em; font-family: var(--display); font-weight: 400; line-height: 1.1; }
.entry h2 { font-size: 2.1rem; }
.entry h3 { font-size: 1.55rem; }
.entry a { color: var(--sea); }
.entry img { height: auto; }
.entry ul, .entry ol { padding-left: 1.2em; }
.entry figure { margin: 1.75rem 0; }
.entry__img { width: 100%; margin-bottom: 2rem; }

/* Kambario puslapis (A: galerija + rezervacijos kortelė) */
.crumbs { display: flex; flex-wrap: wrap; gap: .6rem; margin: 0; padding: 0; color: var(--muted); list-style: none; }
.crumbs li + li::before { content: "/"; margin-right: .6rem; opacity: .5; }
.crumbs a { text-decoration: none; transition: color .3s; }
.crumbs a:hover { color: var(--brass-2); }
.r-h1 { margin: 0; font: 400 clamp(2.6rem, 5.2vw, 4.8rem)/.98 var(--display); letter-spacing: .005em; }
.r-h1 .lt { display: block; color: var(--sea); font-weight: 300; }
.r-lead { max-width: 58ch; margin: 0 0 3.25rem; font-size: 1.15rem; line-height: 1.6; }
.r-label { display: flex; align-items: center; gap: .9rem; margin: 0 0 1.25rem; color: var(--muted); }
.r-label::after { content: ""; width: 48px; height: 1px; background: var(--brass); }
.r-block { margin-bottom: 3.25rem; }
.r-block:last-child { margin-bottom: 0; }
.ra-top { padding-block: 2rem 2.25rem; }
.ra-top .crumbs { margin-bottom: 2.5rem; }
.ra-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; }
.ra-head .eyebrow { margin-bottom: 1.1rem; }
.ra-price .price b { font-size: 2.8rem; }
.mosaic { display: grid; grid-template-columns: repeat(var(--n, 4), minmax(0, 1fr)); gap: 8px; }
.mosaic figure { position: relative; aspect-ratio: 3 / 4; max-height: 74vh; margin: 0; overflow: hidden; background: var(--sand); }
.mosaic a { display: block; height: 100%; cursor: zoom-in; }
.mosaic img { width: 100%; height: 100%; object-fit: cover; }
.mosaic figure:hover img { transform: scale(1.04); transition: transform 1.2s var(--ease); }
.mosaic__all { position: absolute; right: 1rem; bottom: 1rem; display: inline-flex; align-items: center; gap: .6rem; height: 42px; padding: 0 1.1rem; border: 0; background: var(--ivory); color: var(--ink); font: 500 .68rem/1 var(--sans); letter-spacing: .18em; text-transform: uppercase; cursor: pointer; transition: background .3s, color .3s; }
.mosaic__all:hover { background: var(--ink); color: #fff; }
.mosaic__all .i { width: 16px; height: 16px; }
.ra-body { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: clamp(2.5rem, 5vw, 5.5rem); align-items: start; padding-block: clamp(2.5rem, 4vw, 3.5rem) clamp(3.5rem, 6vw, 5.5rem); }
.facts4 { display: grid; grid-auto-columns: minmax(0, 1fr); grid-auto-flow: column; margin: 0 0 2.5rem; padding: 0; border-block: 1px solid var(--line); list-style: none; }
.facts4 li { display: grid; align-content: start; gap: .5rem; padding: 1.4rem 1.25rem; border-left: 1px solid var(--line); }
.facts4 li:first-child { padding-left: 0; border-left: 0; }
.facts4 .i { width: 22px; height: 22px; color: var(--brass-2); }
.facts4 b { font: 400 2rem/1 var(--display); }
.facts4 b.sm { font-size: 1.3rem; line-height: 1.15; }
.facts4 small { color: var(--muted); font-size: .8rem; }
.why { display: grid; grid-auto-columns: minmax(0, 1fr); grid-auto-flow: column; gap: 1px; margin: 0; padding: 0; border: 1px solid var(--line); background: var(--line); list-style: none; }
.why li { display: grid; align-content: space-between; gap: 1.75rem; min-height: 160px; padding: 1.5rem; background: var(--ivory); font: 400 1.45rem/1.15 var(--display); }
.why span { color: var(--brass-2); font-size: 1rem; letter-spacing: .06em; }
.amen { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 2rem; margin: 0; padding: 0; list-style: none; }
.amen li { display: flex; align-items: center; gap: .9rem; padding: 1rem 0; border-bottom: 1px solid var(--line); line-height: 1.35; }
.amen .i { width: 22px; height: 22px; color: var(--brass-2); }
.amen small { display: block; color: var(--muted); font-size: .78rem; }
.rules { margin: 0; padding: 0; list-style: none; }
.rules li { display: flex; justify-content: space-between; gap: 1.5rem; padding: .9rem 0; border-bottom: 1px solid var(--line); }
.rules span { color: var(--muted); }
.rules b { font-weight: 500; text-align: right; }
.rules--2 { display: grid; grid-template-columns: 1fr 1fr; column-gap: 2.5rem; }
.rules--2 li:nth-child(-n+2) { border-top: 1px solid var(--line); }
.bcard { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + 24px); padding: 2rem; border: 1px solid var(--line); background: var(--paper); box-shadow: 0 40px 80px -50px rgba(17, 17, 17, .45); }
.bcard::before { content: ""; position: absolute; top: -1px; right: -1px; left: -1px; height: 3px; background: var(--brass); }
.bcard__p { display: flex; align-items: baseline; gap: .6rem; margin: 0 0 .4rem; }
.bcard__p small { color: var(--muted); }
.bcard__p b { font: 400 3.2rem/1 var(--display); }
.bcard__p span { color: var(--muted); }
.bcard__note { margin: 0 0 1.5rem; color: var(--muted); font-size: .85rem; }
.bcard__form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-bottom: 1rem; border: 1px solid var(--line); }
.bcard__form .f { min-width: 0; padding: .9rem 1.1rem; border-right: 0; border-bottom: 1px solid var(--line); }
.bcard__form .f:first-of-type { border-right: 1px solid var(--line); }
.bcard__form .f--w { grid-column: 1 / -1; border-bottom: 0; }
.bcard__form .f input, .bcard__form .f select { font-size: 1.2rem; }
.bcard__form .btn { grid-column: 1 / -1; height: 58px; }
.bcard__help { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin: 1.5rem 0 0; padding-top: 1.25rem; border-top: 1px solid var(--line); color: var(--muted); font-size: .88rem; }
.bcard__help a { display: inline-flex; align-items: center; gap: .5rem; color: var(--ink); font-weight: 500; text-decoration: none; }
.bcard__help .i { color: var(--brass-2); }
.others { padding-block: clamp(3.5rem, 6vw, 5.5rem); border-top: 1px solid var(--line); }
.others .sec-head { margin-bottom: 2.25rem; }
.ocards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; margin: 0; padding: 0; list-style: none; }
.ocard { display: block; text-decoration: none; }
.ocard figure { aspect-ratio: 4 / 5; margin: 0 0 1.1rem; overflow: hidden; background: var(--sand); }
.ocard img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease); }
.ocard:hover img { transform: scale(1.05); }
.ocard__blank { display: grid; place-items: center; height: 100%; color: var(--brass-2); }
.ocard__blank .i { width: 40px; height: 40px; stroke-width: 1; }
.ocard__n { color: var(--brass-2); font: 400 .95rem/1 var(--display); letter-spacing: .06em; }
.ocard h3 { margin: .5rem 0 .7rem; font: 400 1.7rem/1.05 var(--display); transition: color .3s; }
.ocard:hover h3 { color: var(--sea); }
.ocard__m { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-top: .8rem; border-top: 1px solid var(--line); color: var(--muted); font-size: .85rem; }
.ocard__m b { color: var(--ink); font: 400 1.35rem/1 var(--display); white-space: nowrap; }
.lb { width: 100vw; max-width: none; height: 100vh; max-height: none; margin: 0; padding: 0; border: 0; background: rgba(17, 17, 17, .96); color: #fff; }
.lb::backdrop { background: transparent; }
.lb[open] { display: grid; place-items: center; animation: rise .5s var(--ease) both; }
.lb img { max-width: calc(100vw - 180px); max-height: calc(100vh - 140px); object-fit: contain; }
.lb__n { position: absolute; bottom: 1.5rem; left: 50%; margin: 0; font: 400 1.1rem/1 var(--display); letter-spacing: .08em; transform: translateX(-50%); }
.lb__close, .lb__nav { position: absolute; display: grid; place-items: center; width: 56px; height: 56px; border: 1px solid rgba(255, 255, 255, .35); background: none; color: #fff; cursor: pointer; transition: background .3s, color .3s; }
.lb__close:hover, .lb__nav:hover { background: #fff; color: var(--ink); }
.lb__close { top: 1.5rem; right: 1.5rem; }
.lb__nav { top: 50%; transform: translateY(-50%); }
.lb__nav--prev { left: 1.5rem; }
.lb__nav--prev .i { transform: scaleX(-1); }
.lb__nav--next { right: 1.5rem; }

/* Naujienos */
.pgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)); gap: 2.5rem 1.75rem; }
.pcard { display: grid; align-content: start; gap: .75rem; text-decoration: none; }
.pcard__ph { display: block; overflow: hidden; aspect-ratio: 16 / 10; background: var(--sand); }
.pcard__ph img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease); }
.pcard:hover .pcard__ph img { transform: scale(1.04); }
.pcard__date { color: var(--brass-2); }
.pcard__t { margin: 0; font: 400 1.6rem/1.1 var(--display); }
.pcard__x { margin: 0; color: var(--muted); }
.pcard__more { justify-self: start; margin-top: .4rem; }
.pcard:hover .pcard__t { color: var(--sea); }
.pcard__t { transition: color .3s; }
.post-h1 { font-size: clamp(2.3rem, 4.2vw, 3.9rem); }
.post-hero { margin: clamp(2rem, 4vw, 3rem) auto 0; }
.post-hero img { width: 100%; height: auto; max-height: 70vh; aspect-ratio: 21 / 9; object-fit: cover; }
.pagination .nav-links { display: flex; justify-content: center; gap: .5rem; margin-top: 3rem; }
.page-numbers { padding: .6rem .95rem; border: 1px solid var(--line); text-decoration: none; }
.page-numbers.current { border-color: var(--ink); background: var(--ink); color: #fff; }

/* Elementor puslapiai – Elementor valdo patys */
.is-elementor #content > .elementor { margin: 0; }

@media (max-width: 1180px) {
	.ra-body { grid-template-columns: minmax(0, 1fr) 360px; }
	.amen { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 1024px) {
	.ra-body { grid-template-columns: 1fr; }
	.bcard { position: static; }
	.mosaic { grid-template-columns: 1fr 1fr; }
	.mosaic--1 { grid-template-columns: 1fr; }
	.ocards { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 700px) {
	.ra-head { flex-direction: column; align-items: flex-start; }
	.ra-price .price { justify-items: start; }
	.facts4 { grid-auto-flow: row; grid-template-columns: 1fr 1fr; }
	.facts4 li:nth-child(odd) { padding-left: 0; border-left: 0; }
	.facts4 li:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
	.why { grid-auto-flow: row; }
	.why li { min-height: 0; }
	.amen, .rules--2 { grid-template-columns: 1fr; }
	.rules--2 li:nth-child(2) { border-top: 0; }
	.ocards { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; }
	.ocards li { flex: 0 0 78%; scroll-snap-align: start; }
	.lb img { max-width: 100vw; }
	.lb__nav { top: auto; bottom: 1rem; transform: none; }
}

/* ============ Vidiniai puslapiai ============ */
.pg-head { padding-block: 2rem clamp(2.5rem, 4vw, 3.5rem); }
.pg-head .crumbs { margin-bottom: 2.5rem; }
.pg-head .eyebrow { margin-bottom: 1.1rem; }
.pg-head__grid { display: grid; grid-template-columns: 1.15fr 1fr; gap: 1.5rem 4rem; align-items: end; }
.pg-head__side { display: grid; gap: 1.25rem; }
.pg-head--line { border-bottom: 1px solid var(--line); }
.pg-head .r-lead { margin: 0; }
.pg-note { display: flex; align-items: center; gap: .7rem; margin: 0; padding-top: 1.1rem; border-top: 1px solid var(--line); color: var(--muted); font-size: .92rem; }
.pg-note .i { width: 20px; height: 20px; color: var(--brass-2); }
.btns { display: flex; flex-wrap: wrap; align-items: center; gap: 1.5rem; }
.cta-band { position: relative; background: var(--ink); color: var(--ivory); }
.cta-band__in { display: grid; grid-template-columns: 1.2fr 1fr; gap: 2rem 4rem; align-items: end; padding-block: clamp(3rem, 5vw, 4.5rem) clamp(3.5rem, 6vw, 5rem); }
.cta-band .h2 { margin: 0; }
.cta-band .h2 .lt { color: var(--brass-l); }
.cta-band__side { display: grid; justify-items: start; gap: 1.5rem; }
.cta-band__side p { margin: 0; color: rgba(251, 248, 244, .75); }
.cta-band .btn--light { color: var(--ivory); }
.cta-band__note { font-size: .85rem; }
main:has(> :is(.cta-band, .ct-map, .terrace):last-child) + .ft-a .ft-a__wv { display: none; }

/* Apie mus */
.aa-hero { display: grid; grid-template-columns: 1fr 1.05fr; gap: clamp(2.5rem, 6vw, 6rem); align-items: center; padding-block: 2rem clamp(3.5rem, 6vw, 5rem); }
.aa-hero .crumbs { margin-bottom: 3rem; }
.aa-hero .eyebrow { margin-bottom: 1.25rem; }
.aa-hero .r-h1 { margin-bottom: 1.75rem; font-size: clamp(2.5rem, 4.3vw, 4.1rem); }
.aa-hero .r-lead { margin-bottom: 2.5rem; }
.aa-hero__media { position: relative; padding: 0 0 4rem 4rem; }
.aa-hero__media::before { content: ""; position: absolute; top: 3rem; right: 3rem; bottom: 1.5rem; left: 1.5rem; border: 1px solid var(--brass); }
.aa-hero__img { position: relative; aspect-ratio: 4 / 4.4; margin: 0; overflow: hidden; background: var(--sand); }
.aa-hero__img img { width: 100%; height: 100%; object-fit: cover; }
.aa-hero__img2 { position: absolute; bottom: 0; left: 0; width: 42%; aspect-ratio: 3 / 4; margin: 0; overflow: hidden; border: 8px solid var(--ivory); background: var(--sand); }
.aa-hero__img2 img { width: 100%; height: 100%; object-fit: cover; }
.stats4 { display: grid; grid-auto-columns: minmax(0, 1fr); grid-auto-flow: column; margin: 0; padding: 0; border-block: 1px solid var(--line); list-style: none; }
.stats4 li { padding: 2.25rem 1.75rem 2rem; border-left: 1px solid var(--line); }
.stats4 li:first-child { padding-left: 0; border-left: 0; }
.stats4 b { display: flex; align-items: baseline; gap: .3rem; margin-bottom: .8rem; font: 300 clamp(3rem, 5.4vw, 5rem)/.9 var(--display); }
.stats4 b small { color: var(--sea); font-size: .42em; font-weight: 400; }
.stats4 li > span { display: block; max-width: 20ch; color: var(--muted); font-size: .92rem; line-height: 1.4; }
.aa-spec__grid { display: grid; grid-template-columns: 1fr 1.4fr; gap: clamp(2.5rem, 6vw, 6rem); align-items: start; }
.aa-spec__grid > div:first-child { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + 6rem); padding-top: 3rem; }
.aa-spec__grid .entry { margin-bottom: 2rem; }
.ap-int { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding-bottom: 3.5rem; }
.ap-int figure { aspect-ratio: 4 / 4.4; margin: 0; overflow: hidden; background: var(--sand); }
.ap-int figure:nth-child(even) { transform: translateY(3.5rem); }
.ap-int img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease); }
.ap-int figure:hover img { transform: scale(1.04); }
.aa-perks { border-block: 1px solid var(--line); background: var(--paper); }
.pgroups { display: grid; grid-auto-columns: minmax(0, 1fr); grid-auto-flow: column; gap: clamp(2rem, 4vw, 3.5rem); }
.pgroups h3 { display: flex; align-items: center; gap: .9rem; margin: 0 0 .5rem; color: var(--brass-2); font: 500 .68rem/1 var(--sans); letter-spacing: .2em; text-transform: uppercase; }
.pgroups h3::after { content: ""; flex: 1; height: 1px; background: var(--line); }
.plist { margin: 0; padding: 0; list-style: none; }
.plist li { display: flex; align-items: center; gap: .9rem; padding: .95rem 0; border-bottom: 1px solid var(--line); line-height: 1.35; }
.plist .i { width: 22px; height: 22px; color: var(--brass-2); }
.plist small { display: block; color: var(--muted); font-size: .78rem; }
.near { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; margin: 0; padding: 0; list-style: none; }
.near figure { aspect-ratio: 4 / 3; margin: 0 0 1.1rem; overflow: hidden; background: var(--sand); }
.near img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease); }
.near li:hover img { transform: scale(1.05); }
.near h3 { margin: 0 0 .4rem; font: 400 1.7rem/1.05 var(--display); }
.near p { margin: 0; color: var(--muted); font-size: .95rem; }

/* Pramogos */
.prows { padding-bottom: clamp(3.5rem, 6vw, 5.5rem); }
.prow { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(2.5rem, 6vw, 6.5rem); align-items: center; padding-block: clamp(2.5rem, 5vw, 4.5rem); border-top: 1px solid var(--line); }
.prow:nth-child(even) .prow__media { order: 2; }
.prow__media { position: relative; padding: 0 3.5rem 3.5rem 0; }
.prow:nth-child(even) .prow__media { padding: 0 0 3.5rem 3.5rem; }
.prow__img { aspect-ratio: 5 / 4; margin: 0; overflow: hidden; background: var(--sand); }
.prow__img img, .prow__img2 img { width: 100%; height: 100%; object-fit: cover; }
.prow__img2 { position: absolute; right: 0; bottom: 0; width: 38%; aspect-ratio: 1; margin: 0; overflow: hidden; border: 8px solid var(--ivory); background: var(--sand); }
.prow:nth-child(even) .prow__img2 { right: auto; left: 0; }
.prow__fig { display: flex; align-items: baseline; gap: 1rem; margin: 0 0 1rem; color: var(--brass-2); font: 300 clamp(4rem, 7vw, 6.5rem)/.85 var(--display); }
.prow__fig s { color: var(--muted); font: 400 .95rem/1 var(--sans); white-space: nowrap; }
.prow__t { margin: 0 0 1.25rem; font: 400 clamp(1.9rem, 3vw, 2.6rem)/1.05 var(--display); }
.prow__d { max-width: 52ch; margin-bottom: 1.75rem; color: var(--muted); }
.prow__d p { margin: 0 0 1rem; }
.pcontacts { margin: 0 0 1.75rem; padding: 0; border-top: 1px solid var(--line); list-style: none; }
.pcontacts li { display: flex; align-items: center; gap: .8rem; padding: .75rem 0; border-bottom: 1px solid var(--line); font-size: .95rem; }
.pcontacts .i { width: 18px; height: 18px; color: var(--brass-2); }
.pcontacts a { text-decoration: none; }
.pcontacts a:hover { color: var(--brass-2); }

/* Kontaktai */
.ct-grid { display: grid; grid-template-columns: 1fr 1.05fr; gap: clamp(2.5rem, 6vw, 6rem); align-items: start; padding-bottom: clamp(3.5rem, 6vw, 5.5rem); }
.ct-list { margin: 0 0 2.75rem; padding: 0; border-top: 1px solid var(--ink); list-style: none; }
.ct-list li { display: flex; gap: 1.25rem; padding: 1.5rem 0; border-bottom: 1px solid var(--line); }
.ct-list .ic { display: grid; flex: none; place-items: center; width: 52px; height: 52px; border: 1px solid var(--line); color: var(--brass-2); }
.ct-list .ic .i { width: 22px; height: 22px; }
.ct-list small { display: block; margin-bottom: .55rem; color: var(--muted); }
.ct-list a { font: 400 clamp(1.5rem, 2.4vw, 2rem)/1.1 var(--display); text-decoration: none; transition: color .3s; }
.ct-list a:hover { color: var(--brass-2); }
.ct-list em { display: block; margin-top: .45rem; color: var(--muted); font-size: .8rem; font-style: normal; }
.ct-form { position: relative; display: grid; gap: 1rem; padding: clamp(1.75rem, 3vw, 2.5rem); border: 1px solid var(--line); background: var(--paper); box-shadow: 0 40px 80px -50px rgba(17, 17, 17, .45); scroll-margin-top: 2rem; }
.ct-form::before { content: ""; position: absolute; top: -1px; right: -1px; left: -1px; height: 3px; background: var(--brass); }
.ct-form__t { margin: 0 0 .5rem; font: 400 2.2rem/1 var(--display); }
.ct-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.ct-f { display: grid; gap: .5rem; }
.ct-f .label { color: var(--muted); }
.ct-f input, .ct-f textarea { width: 100%; padding: .85rem 1rem; border: 1px solid var(--line); border-radius: 0; background: var(--ivory); color: var(--ink); font: 400 1rem/1.4 var(--sans); transition: border-color .3s, background .3s; }
.ct-f input:focus, .ct-f textarea:focus { outline: none; border-color: var(--brass); background: #fff; }
.ct-f textarea { resize: vertical; }
.ct-check { display: flex; align-items: flex-start; gap: .7rem; color: var(--muted); font-size: .85rem; line-height: 1.5; cursor: pointer; }
.ct-check input { flex: none; width: 18px; height: 18px; margin: .1rem 0 0; accent-color: var(--brass-2); }
.ct-check a { color: var(--ink); }
.ct-form .btn { justify-self: start; height: 56px; margin-top: .5rem; }
.ct-hp { position: absolute !important; left: -9999px; }
.ct-msg { display: flex; align-items: center; gap: .7rem; margin: 0; padding: .9rem 1rem; border: 1px solid #d9a3a3; background: #fbefef; font-size: .92rem; }
.ct-msg--ok { border-color: #a9cdb6; background: #eef7f1; }
.ct-msg .i { color: #2f7a4a; }
.ct-map { position: relative; display: grid; place-items: center; min-height: 480px; overflow: hidden; isolation: isolate; background: var(--ink); color: #fff; text-align: center; }
.ct-map__bg { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; }
.ct-map::after { content: ""; position: absolute; inset: 0; z-index: -1; background: rgba(17, 17, 17, .6); }
.ct-map__in { display: grid; justify-items: center; gap: 1.25rem; padding: 2rem; }
.ct-map__pin { display: flex; align-items: center; gap: .7rem; margin: 0; font: 400 clamp(1.8rem, 3.4vw, 2.8rem)/1.05 var(--display); }
.ct-map__pin .i { width: 30px; height: 30px; color: var(--brass-l); }
.ct-map small { color: rgba(255, 255, 255, .7); font-size: .78rem; }
.ct-map iframe { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; border: 0; }

/* Turinys iš blokų redaktoriaus */
.pg-body { padding-top: clamp(2.5rem, 4vw, 3.5rem); }
.entry { color: var(--ink); line-height: 1.75; }
.entry p { margin: 0 0 1.1em; }
.entry h2 { margin: 2em 0 .6em; font-size: clamp(1.9rem, 3vw, 2.5rem); }
.entry h3 { margin: 1.8em 0 .6em; font-size: 1.45rem; letter-spacing: .01em; }
.entry > h2:first-child, .entry > h3:first-child { margin-top: 0; }
.entry ul, .entry ol { margin: 0 0 1.4em; padding-left: 0; list-style: none; }
.entry ol { counter-reset: li; }
.entry li { position: relative; padding: .55rem 0 .55rem 1.75rem; border-bottom: 1px solid var(--line); }
.entry ul > li::before { content: ""; position: absolute; top: 1.2rem; left: .2rem; width: 8px; height: 1px; background: var(--brass); }
.entry ol > li { counter-increment: li; }
.entry ol > li::before { content: counter(li, decimal-leading-zero); position: absolute; top: .6rem; left: 0; color: var(--brass-2); font: 400 .95rem/1.6 var(--display); }
.entry a { color: var(--sea); text-underline-offset: .2em; }
.entry .alignwide { max-width: none; margin-inline: calc((min(100vw - 80px, 1480px) - 100%) / -2); }
.pg-layout .entry > * { max-width: 760px; }
.pg-layout .entry > .alignwide, .pg-layout .entry > .alignfull { max-width: none; margin-inline: 0; }
.pg-layout--toc { display: grid; grid-template-columns: 280px minmax(0, 760px); gap: 2rem clamp(3rem, 7vw, 7rem); align-items: start; }
.toc { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + 2rem); max-height: calc(100vh - 4rem); overflow: auto; }
.toc .r-label { margin-bottom: 1rem; }
.toc ol { margin: 0; padding: 0; border-top: 1px solid var(--line); list-style: none; }
.toc a { display: block; padding: .65rem 0; border-bottom: 1px solid var(--line); color: var(--muted); font-size: .86rem; line-height: 1.4; text-decoration: none; transition: color .3s, padding .4s var(--ease); }
.toc a:hover, .toc a.is-active { padding-left: .6rem; color: var(--ink); }
.toc a.is-active { box-shadow: inset 2px 0 0 var(--brass); }
.entry h2[id] { scroll-margin-top: 2rem; }
.entry .doc-meta { color: var(--muted); font-size: .9rem; line-height: 1.6; }
.entry .wp-block-media-text { grid-template-columns: 52% 1fr; gap: 0; margin-block: 0 clamp(3rem, 5vw, 4.5rem); }
.entry .wp-block-media-text.has-media-on-the-right { grid-template-columns: 1fr 52%; }
.entry .wp-block-media-text__media img { width: 100%; height: auto; aspect-ratio: 5 / 4; object-fit: cover; }
.entry .wp-block-media-text__content { padding: 0 0 0 clamp(2rem, 6vw, 6rem); }
.entry .has-media-on-the-right .wp-block-media-text__content { padding: 0 clamp(2rem, 6vw, 6rem) 0 0; }
.entry .wp-block-media-text__content h2 { margin-top: 0; }
.entry .wp-block-buttons { margin: 2rem 0; }
.entry .wp-block-button__link { display: inline-flex; align-items: center; height: 52px; padding: 0 1.75rem; border-radius: 0; background: var(--brass-2); color: #fff; font: 500 .78rem/1 var(--sans); letter-spacing: .18em; text-decoration: none; text-transform: uppercase; transition: background .3s; }
.entry .wp-block-button__link:hover { background: var(--ink); }

@media (max-width: 1024px) {
	.pg-layout--toc { grid-template-columns: 1fr; }
	.toc { display: none; }
	.pg-head__grid, .aa-hero, .aa-spec__grid, .cta-band__in, .prow, .ct-grid { grid-template-columns: 1fr; }
	.aa-spec__grid > div:first-child { position: static; padding-top: 0; }
	.prow:nth-child(even) .prow__media { order: 0; }
	.pgroups { grid-auto-flow: row; grid-template-columns: 1fr 1fr; }
	.near { grid-template-columns: 1fr 1fr; }
	.stats4 { grid-auto-flow: row; grid-template-columns: 1fr 1fr; }
	.stats4 li:nth-child(3) { padding-left: 0; border-left: 0; }
	.stats4 li:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
}
@media (max-width: 781px) {
	.entry .wp-block-media-text, .entry .wp-block-media-text.has-media-on-the-right { grid-template-columns: 100%; }
	.entry .wp-block-media-text__content, .entry .has-media-on-the-right .wp-block-media-text__content { padding: 1.5rem 0 0; }
}
@media (max-width: 700px) {
	.pgroups, .near, .ct-row { grid-template-columns: 1fr; }
	.ap-int { gap: 8px; padding-bottom: 2rem; }
	.ap-int figure:nth-child(even) { transform: translateY(2rem); }
	.aa-hero__media, .prow__media, .prow:nth-child(even) .prow__media { padding: 0 0 2.5rem 2.5rem; }
	.prow__img2, .prow:nth-child(even) .prow__img2 { right: auto; left: 0; }
	.ct-list a { font-size: 1.45rem; }
}

/* ============ Rezervacijos formos: kalendorius ir svečių mygtukai ============ */
.f { position: relative; }
.f__native { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; opacity: 0; pointer-events: none; }
.f__show { display: grid; justify-items: start; gap: .2rem; width: 100%; min-height: 30px; padding: 0; border: 0; background: none; color: var(--ink); text-align: left; cursor: pointer; }
.f__show b { font: 400 1.4rem/1.1 var(--display); white-space: nowrap; }
.f__show small { color: var(--muted); font: 400 .74rem/1 var(--sans); }
.f__show:focus-visible { outline: 2px solid var(--ink); outline-offset: 4px; }
.booking.is-stuck .f__show b { font-size: 1.2rem; }
.booking.is-stuck .f__show small { display: none; }
.bcard__form .f__show b { font-size: 1.2rem; }
.step { display: inline-flex; align-items: center; gap: .9rem; }
.step__b { display: grid; place-items: center; width: 34px; height: 34px; padding: 0; border: 1px solid var(--line); background: var(--paper); color: var(--ink); font: 400 1.15rem/1 var(--sans); cursor: pointer; transition: background .25s, color .25s, border-color .25s; }
.step__b:hover:not(:disabled) { border-color: var(--ink); background: var(--ink); color: #fff; }
.step__b:disabled { opacity: .35; cursor: default; }
.step__v { min-width: 1.4ch; font: 400 1.4rem/1 var(--display); text-align: center; }
.booking.is-stuck .step__b { width: 30px; height: 30px; }
.dp { position: fixed; z-index: 300; width: 660px; max-width: calc(100vw - 32px); padding: 1.25rem 1.5rem 1rem; border: 1px solid var(--line); background: var(--paper); color: var(--ink); box-shadow: 0 40px 80px -30px rgba(17, 17, 17, .45); }
.dp::before { content: ""; position: absolute; top: -1px; right: -1px; left: -1px; height: 3px; background: var(--brass); }
.dp[hidden] { display: none; }
.dp__head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.1rem; }
.dp__sum { margin: 0; font: 400 1.15rem/1.2 var(--display); letter-spacing: .02em; text-align: center; }
.dp__nav { display: grid; flex: none; place-items: center; width: 40px; height: 40px; padding: 0; border: 1px solid var(--line); background: none; color: var(--ink); cursor: pointer; transition: background .25s, color .25s; }
.dp__nav:hover:not(:disabled) { background: var(--ink); color: #fff; }
.dp__nav:first-child .i { transform: scaleX(-1); }
.dp__nav:disabled { opacity: .3; cursor: default; }
.dp__months { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.dp__t { margin: 0 0 .7rem; color: var(--brass-2); font: 500 .7rem/1 var(--sans); letter-spacing: .2em; text-transform: uppercase; }
.dp__g { display: grid; grid-template-columns: repeat(7, 1fr); row-gap: 2px; }
.dp__w { padding: .35rem 0; color: var(--muted); font: 500 .66rem/1 var(--sans); letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.dp__d { height: 38px; padding: 0; border: 0; background: none; color: var(--ink); font: 400 1.05rem/1 var(--display); cursor: pointer; transition: background .2s, color .2s; }
.dp__d:hover:not(:disabled) { background: var(--sand); }
.dp__d.is-today { box-shadow: inset 0 -2px 0 var(--brass); }
.dp__d.is-in, .dp__d.is-hover { background: var(--sand); }
.dp__d.is-start, .dp__d.is-end { background: var(--ink); color: #fff; }
.dp__d:disabled { color: rgba(17, 17, 17, .25); cursor: default; }
.dp__d:focus-visible { outline: 2px solid var(--brass-2); outline-offset: -2px; }
.dp__foot { display: flex; justify-content: flex-end; margin-top: .8rem; padding-top: .8rem; border-top: 1px solid var(--line); }
.dp__x { padding: .4rem 0; border: 0; border-bottom: 1px solid var(--brass); background: none; color: var(--ink); font: 500 .7rem/1 var(--sans); letter-spacing: .18em; text-transform: uppercase; cursor: pointer; }
.dp--sheet { top: auto !important; right: 0; bottom: 0; left: 0 !important; width: 100%; max-width: none; max-height: 86vh; overflow: auto; padding: 1.1rem 1rem 1rem; }
.dp--sheet .dp__months { grid-template-columns: 1fr; gap: 1.5rem; }

/* ============ Maitinimas: terasos nuoma ============ */
.terrace { position: relative; background: var(--ink); color: var(--ivory); }
.terrace__in { display: grid; grid-template-columns: 1fr 1.05fr; gap: clamp(2.5rem, 6vw, 6rem); align-items: start; padding-block: clamp(3rem, 5vw, 4.5rem) clamp(3.5rem, 6vw, 5.5rem); }
.terrace .eyebrow { color: rgba(251, 248, 244, .7); }
.terrace .eyebrow .num { color: var(--brass-l); }
.terrace .h2 .lt { color: var(--brass-l); }
.terrace .body { max-width: 50ch; color: rgba(251, 248, 244, .78); }
.tfeat { display: grid; grid-template-columns: 1fr 1fr; margin: 2.25rem 0 0; padding: 0; border-top: 1px solid rgba(251, 248, 244, .16); border-left: 1px solid rgba(251, 248, 244, .16); list-style: none; }
.tfeat li { display: grid; align-content: start; gap: 1.1rem; padding: 1.5rem; border-right: 1px solid rgba(251, 248, 244, .16); border-bottom: 1px solid rgba(251, 248, 244, .16); }
.tfeat .i { width: 30px; height: 30px; color: var(--brass-l); stroke-width: 1.2; }
.tfeat b { display: block; color: #fff; font: 400 1.5rem/1.1 var(--display); }
.tfeat small { display: block; margin-top: .35rem; color: rgba(251, 248, 244, .62); font-size: .84rem; line-height: 1.45; }
.terrace__img { aspect-ratio: 4 / 3; margin: 0; overflow: hidden; background: rgba(251, 248, 244, .08); }
.terrace__img img { width: 100%; height: 100%; object-fit: cover; }
.tprice { position: relative; margin: -4rem 0 0 2.5rem; padding: 1.75rem; background: var(--paper); color: var(--ink); box-shadow: 0 40px 80px -40px rgba(0, 0, 0, .55); }
.tprice::before { content: ""; position: absolute; top: 0; right: 0; left: 0; height: 3px; background: var(--brass); }
.tprice ul { margin: 0 0 1rem; padding: 0; border-top: 1px solid var(--line); list-style: none; }
.tprice li { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; padding: .95rem 0; border-bottom: 1px solid var(--line); }
.tprice li span { color: var(--muted); }
.tprice li b { font: 400 2.1rem/1 var(--display); white-space: nowrap; }
.tprice__note { margin: 0 0 1.4rem; color: var(--muted); font-size: .9rem; line-height: 1.55; }
.tprice .btns { gap: .7rem; }
.tprice .btn--light { color: var(--ink); }
.tprice .btn--light::before { background: var(--ink); }
.tprice .btn--light:hover { color: #fff; }
@media (max-width: 1024px) {
	.terrace__in { grid-template-columns: 1fr; }
	.tprice { margin: -2.5rem 1rem 0; }
}
@media (max-width: 560px) {
	.tfeat { grid-template-columns: 1fr; }
	.tprice { margin: 1rem 0 0; }
}

/* ============ Fasado raštas tamsiose sekcijose ============ */
.pdark, .hamen, .cta-band, .terrace, .ft-a { background-image: var(--facade); background-position: center top; }

/* ============ Pradinis: patogumai ============ */
.hamen { position: relative; background-color: var(--ink); color: var(--ivory); }
.hamen__in { padding-block: clamp(2.5rem, 4vw, 3.5rem) clamp(3rem, 5vw, 4.5rem); }
.hamen .eyebrow { color: rgba(251, 248, 244, .7); }
.hamen .eyebrow .num { color: var(--brass-l); }
.hamen .h2 .lt { color: var(--brass-l); }
.hamen .link { color: var(--ivory); }
.hamen__grid { display: grid; grid-template-columns: repeat(4, 1fr); margin: clamp(2rem, 3.5vw, 3rem) 0 0; padding: 0; border-top: 1px solid rgba(251, 248, 244, .16); border-left: 1px solid rgba(251, 248, 244, .16); list-style: none; }
.hamen__grid li { display: grid; align-content: start; gap: .55rem; min-height: 168px; padding: 1.6rem 1.5rem; border-right: 1px solid rgba(251, 248, 244, .16); border-bottom: 1px solid rgba(251, 248, 244, .16); background: rgba(17, 17, 17, .55); transition: background .4s; }
.hamen__grid li:hover { background: rgba(251, 248, 244, .06); }
.hamen__grid .i { width: 32px; height: 32px; margin-bottom: .6rem; color: var(--brass-l); stroke-width: 1.2; }
.hamen__grid b { color: #fff; font: 400 1.35rem/1.15 var(--display); letter-spacing: .01em; }
.hamen__grid small { color: rgba(251, 248, 244, .62); font-size: .84rem; line-height: 1.45; }
@media (max-width: 1024px) { .hamen__grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 760px) { .hamen__grid { grid-template-columns: 1fr 1fr; } .hamen__grid li { min-height: 0; padding: 1.25rem 1rem; } .hamen__grid b { font-size: 1.15rem; } }

/* ============ Maitinimas: didelė nuotrauka ============ */
.mt-hero { position: relative; margin-block: 0 clamp(3rem, 6vw, 5.5rem); overflow: hidden; background: var(--sand); }
.mt-hero img { display: block; width: 100%; height: auto; aspect-ratio: 21 / 9; object-fit: cover; object-position: 50% 45%; }
.mt-hero figcaption { position: absolute; bottom: 0; left: 0; display: flex; align-items: center; gap: .6rem; max-width: calc(100% - 2rem); padding: .95rem 1.3rem; background: var(--paper); color: var(--ink); font-size: .86rem; }
.mt-hero figcaption .i { flex: none; width: 18px; height: 18px; color: var(--brass-2); }
@media (max-width: 760px) { .mt-hero img { aspect-ratio: 4 / 3; } .mt-hero figcaption { position: static; max-width: none; } }

/* ============ Poraštė: naujienlaiškis ============ */
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
.ft-a__nl { position: relative; z-index: 1; }
.nl { display: grid; grid-template-columns: 1fr 1.15fr; gap: 1.5rem 4rem; align-items: center; padding: clamp(2.5rem, 5vw, 3.5rem) 0; border-bottom: 1px solid rgba(251, 248, 244, .14); }
.nl__t { margin: 0 0 .5rem; color: #fff; font: 400 clamp(1.8rem, 3vw, 2.4rem)/1.05 var(--display); }
.nl__d { margin: 0; color: rgba(251, 248, 244, .7); }
.nl__form { margin: 0; }
.nl__hp { position: absolute; left: -9999px; }
.nl__row { display: flex; margin: 0; border: 1px solid rgba(251, 248, 244, .35); transition: border-color .3s; }
.nl__row:focus-within { border-color: var(--brass-l); }
.nl__row input { flex: 1; min-width: 0; height: 56px; padding: 0 1.25rem; border: 0; background: transparent; color: #fff; font: 400 1rem var(--sans); }
.nl__row input::placeholder { color: rgba(251, 248, 244, .55); }
.nl__row input:focus { outline: none; }
.nl__row .btn { flex: none; height: 56px; border: 0; }
.nl__consent { display: flex; align-items: flex-start; gap: .7rem; margin: .9rem 0 0; color: rgba(251, 248, 244, .7); font-size: .84rem; line-height: 1.45; }
.nl__consent input { flex: none; width: 18px; height: 18px; margin: .1rem 0 0; accent-color: var(--brass); }
.nl__consent a { color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.nl__msg { margin: .9rem 0 0; padding: .7rem 1rem; font-size: .9rem; }
.nl__msg--ok { background: rgba(169, 205, 182, .14); color: #cfe6d7; }
.nl__msg--err { background: rgba(217, 163, 163, .16); color: #f2c9c9; }
/* Brevo įskiepio forma (melt.lt) – tas pats vaizdas. */
.nl__form--sib form { max-width: none !important; margin: 0 !important; color: inherit !important; font-family: var(--sans) !important; }
.nl__form--sib .melt-nl-head { display: none !important; }
.nl__form--sib .sib_signup_box_inside_1 { gap: .9rem 0 !important; }
.nl__form--sib input[type=email] { height: 56px !important; border: 1px solid rgba(251, 248, 244, .35) !important; border-radius: 0 !important; font-family: var(--sans) !important; }
.nl__form--sib input[type=submit] { height: 56px !important; border: 0 !important; border-radius: 0 !important; background: var(--brass-2) !important; color: #fff !important; font: 500 .78rem/1 var(--sans) !important; letter-spacing: .2em !important; text-transform: uppercase !important; cursor: pointer; }
.nl__form--sib .melt-nl-consent label { font-family: var(--sans) !important; font-size: .84rem !important; }
@media (max-width: 760px) {
	.nl { grid-template-columns: 1fr; }
	.nl__row { flex-wrap: wrap; border: 0; gap: .6rem; }
	.nl__row input { flex-basis: 100%; border: 1px solid rgba(251, 248, 244, .35); }
	.nl__row .btn { width: 100%; }
}

/* ============ Konversija: įvertinimas, nauda, mobili juosta ============ */
.hero__rate { display: inline-flex; align-items: center; gap: .75rem; margin: 1.4rem 0 0; color: rgba(255, 255, 255, .85); font-size: .86rem; animation: rise 1s var(--ease) .85s both; }
.hero__rate b { display: grid; place-items: center; min-width: 46px; height: 38px; padding: 0 .5rem; background: rgba(255, 255, 255, .14); color: #fff; font: 400 1.35rem/1 var(--display); backdrop-filter: blur(6px); }
.benefits { display: grid; gap: .9rem; margin: 1.5rem 0 1.75rem; padding: 0; list-style: none; }
.benefits li { display: flex; align-items: flex-start; gap: .75rem; }
.benefits .i { flex: none; width: 20px; height: 20px; margin-top: .1rem; color: var(--brass-l); }
.benefits b { display: block; font-weight: 500; }
.benefits small { display: block; margin-top: .15rem; color: rgba(251, 248, 244, .62); font-size: .84rem; line-height: 1.45; }
.benefits--light { margin: 1.25rem 0 0; padding-top: 1.25rem; border-top: 1px solid var(--line); }
.benefits--light .i { color: var(--brass-2); }
.benefits--light small { color: var(--muted); }
.bcard { scroll-margin-top: 90px; }
.mcta { display: none; }
@media (max-width: 900px) {
	.mcta { position: fixed; right: 0; bottom: 0; left: 0; z-index: 60; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .7rem 16px calc(.7rem + env(safe-area-inset-bottom)); border-top: 1px solid var(--line); background: rgba(251, 248, 244, .97); backdrop-filter: blur(12px); }
	.mcta__p { margin: 0; color: var(--muted); font-size: .8rem; }
	.mcta__p b { color: var(--ink); font: 400 1.6rem/1 var(--display); }
	.mcta .btn { flex: 1; max-width: 220px; height: 50px; }
	body:has(.mcta) { padding-bottom: 76px; }
}

/* ============ Hero: pauzės mygtukas ============ */
.slides-pause { position: relative; display: grid; place-items: center; width: 34px; height: 34px; margin-left: .5rem; padding: 0; border: 1px solid rgba(255, 255, 255, .45); background: none; color: #fff; cursor: pointer; transition: background .3s; }
.slides-pause:hover { background: rgba(255, 255, 255, .14); }
.slides-pause span { width: 10px; height: 12px; border-right: 3px solid currentColor; border-left: 3px solid currentColor; }
.slides-pause[aria-pressed="true"] span { width: 0; height: 0; border-top: 6px solid transparent; border-right: 0; border-bottom: 6px solid transparent; border-left: 10px solid currentColor; }
.is-paused .dot__bar i { animation-play-state: paused !important; }

/* ============ Įrašų nuotraukos tekste, pradinio „Patarimai“ ============ */
.entry .wp-block-image { margin: 2.25rem 0; }
.entry .wp-block-image img { display: block; width: 100%; height: auto; max-height: 560px; object-fit: cover; }
.entry .wp-block-image figcaption { margin-top: .7rem; color: var(--muted); font-size: .85rem; }
.others--home { border-top: 1px solid var(--line); }
.others .pgrid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); }

/* ============ Slapukų juosta ============ */
.consent { position: fixed; right: 16px; bottom: 16px; z-index: 400; display: grid; gap: 1rem; max-width: 420px; padding: 1.25rem 1.4rem; border: 1px solid var(--line); background: var(--paper); box-shadow: 0 30px 60px -30px rgba(17, 17, 17, .45); font-size: .88rem; line-height: 1.5; }
.consent[hidden] { display: none; }
.consent p { margin: 0; }
.consent a { color: inherit; text-underline-offset: .2em; }
.consent__btns { display: flex; flex-wrap: wrap; gap: .6rem; }
.consent .btn { height: 44px; padding: 0 1.2rem; }
.btn--ink { border-color: var(--ink); color: var(--ink); }
@media (max-width: 900px) { .consent { right: 8px; bottom: 84px; left: 8px; max-width: none; } }

/* ============ Langas prieš išeinant ============ */
.exit { width: min(100% - 32px, 820px); max-height: calc(100vh - 32px); padding: 0; border: 0; background: var(--paper); color: var(--ink); box-shadow: 0 50px 100px -40px rgba(0, 0, 0, .6); }
.exit::backdrop { background: rgba(17, 17, 17, .62); backdrop-filter: blur(4px); }
.exit[open] { animation: rise .5s var(--ease) both; }
.exit__in { display: grid; grid-template-columns: .9fr 1.1fr; }
.exit__img { margin: 0; background: var(--sand); }
.exit__img img { width: 100%; height: 100%; object-fit: cover; }
.exit__txt { position: relative; padding: clamp(1.75rem, 4vw, 2.75rem); }
.exit__x { position: absolute; top: .75rem; right: .75rem; display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border: 0; background: none; color: var(--ink); cursor: pointer; }
.exit__x .i { width: 20px; height: 20px; }
.exit .h2 { font-size: clamp(2rem, 4vw, 2.8rem); }
.exit__d { margin: .9rem 0 0; color: var(--muted); }
.exit .benefits--light { margin-top: 1.25rem; }
.exit__btns { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.5rem; margin-top: 1.5rem; }
@media (max-width: 700px) { .exit__in { grid-template-columns: 1fr; } .exit__img { height: 150px; } }

/* ============ Kambarių vedlys ir palyginimas ============ */
.guide { padding-top: 0; }
.guide__ask { margin-bottom: clamp(2.5rem, 5vw, 4rem); padding: 1.75rem; border: 1px solid var(--line); background: var(--paper); }
.chips { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: .9rem; }
.chip { min-height: 44px; padding: 0 1.1rem; border: 1px solid var(--line); background: transparent; color: var(--ink); font: 500 .84rem/1 var(--sans); cursor: pointer; transition: background .25s, color .25s, border-color .25s; }
.chip:hover { border-color: var(--ink); }
.chip[aria-pressed="true"] { border-color: var(--ink); background: var(--ink); color: #fff; }
.guide__res { min-height: 1.4em; margin: .9rem 0 0; color: var(--muted); font-size: .9rem; }
.rows > li { transition: opacity .35s; }
.rows > li.is-dim { opacity: .3; }
.cmp { overflow-x: auto; border: 1px solid var(--line); background: var(--paper); }
.cmp:focus-visible { outline: 2px solid var(--brass-2); }
.cmp table { width: 100%; min-width: 760px; border-collapse: collapse; font-size: .92rem; }
.cmp th, .cmp td { padding: .95rem 1rem; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; transition: background .3s, opacity .3s; }
.cmp thead th { font: 400 1.2rem/1.15 var(--display); }
.cmp thead a { color: var(--ink); text-decoration: none; }
.cmp thead a:hover { color: var(--brass-2); }
.cmp tbody th { position: sticky; left: 0; z-index: 1; background: var(--paper); color: var(--muted); font-weight: 500; white-space: nowrap; }
.cmp tbody tr:last-child td, .cmp tbody tr:last-child th { border-bottom: 0; font-weight: 600; }
.cmp .is-fit { background: rgba(245, 130, 50, .1); }
.cmp .is-dim { opacity: .35; }
.cmp__y { color: var(--brass-2); font-weight: 600; }
.cmp__n { color: var(--muted); }

/* ============ Atsiliepimo puslapis ============ */
.rv-ask { max-width: 820px; padding-bottom: clamp(4rem, 8vw, 7rem); }
.rv-ask__btns { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 2rem; }
.rv-ask__note { margin-top: 2rem; color: var(--muted); }
.rv-ask__note a { color: inherit; }
.guide-ask-wrap { margin-top: clamp(2rem, 4vw, 3rem); }
.guide-ask-wrap .guide__ask { margin-bottom: 0; }

/* ============ Įrašas: šoninė juosta ============ */
.pg-layout--side { display: grid; grid-template-columns: minmax(0, 760px) 340px; gap: 2rem clamp(3rem, 6vw, 6rem); justify-content: space-between; align-items: start; }
.post-side { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + 1.5rem); display: grid; gap: 1.25rem; }
.side-box { padding: 1.5rem; border: 1px solid var(--line); background: var(--paper); }
.post-side .toc { position: static; max-height: none; overflow: visible; }
.side-book { background: var(--ink) var(--facade); color: var(--ivory); border-color: var(--ink); }
.side-book .eyebrow { color: rgba(251, 248, 244, .7); }
.side-book__t { margin: .4rem 0 0; color: #fff; font: 400 1.7rem/1.1 var(--display); }
.side-book__p { margin: .8rem 0 0; color: rgba(251, 248, 244, .7); font-size: .85rem; }
.side-book__p b { color: var(--brass-l); font: 400 2rem/1 var(--display); }
.side-book .benefits { margin: 1.1rem 0 1.25rem; gap: .75rem; font-size: .9rem; }
.side-book .btn { width: 100%; }
.side-book__links { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .5rem 1rem; margin: 1rem 0 0; font-size: .85rem; }
.side-book__links a { display: inline-flex; align-items: center; gap: .4rem; color: rgba(251, 248, 244, .85); text-decoration: none; }
.side-book__links a:hover { color: #fff; }
.side-book__links .i { width: 16px; height: 16px; color: var(--brass-l); }
@media (max-width: 1100px) {
	.pg-layout--side { grid-template-columns: 1fr; }
	.post-side { position: static; max-width: 760px; }
	.post-side .toc { display: none; }
}
/* Įrašas: tekstas per visą konteinerio plotį iki šoninės juostos. */
.single-post .pg-layout--side { grid-template-columns: minmax(0, 1fr) 380px; gap: 2rem clamp(2.5rem, 5vw, 5rem); }
.single-post .pg-layout--side .entry > * { max-width: none; }
.single-post .pg-layout--side .entry { font-size: 1.125rem; line-height: 1.8; }
/* Antraštės šone tik nuoroda – dešiniame krašte. */
@media (min-width: 1025px) { .sec-head__side:not(:has(.body)) { justify-items: end; } .sec-head > .link { justify-self: end; } }

/* ============ Brendo spalvos: oranžiniai mygtukai, saulės blyksniai tamsiose sekcijose ============ */
.btn--brass { border-color: var(--brass); background: var(--brass); color: var(--ink); }
.btn--brass::before { background: var(--ink); }
.btn--brass:hover { border-color: var(--ink); color: #fff; }
.pdark, .hamen, .cta-band, .terrace, .ft-a, .side-book {
	background-image: radial-gradient(70% 90% at 100% 0%, rgba(240, 65, 55, .2), transparent 60%), radial-gradient(60% 80% at 0% 100%, rgba(255, 210, 50, .1), transparent 60%), var(--facade);
}

/* ============ Rezervacijos juosta – ryški ============ */
.booking .wrap { position: relative; }
.booking__tag { position: absolute; top: -30px; left: 0; margin: 0; padding: .5rem .85rem; background: var(--brass); color: var(--ink); font-weight: 600; }
.booking.is-stuck .booking__tag { display: none; }
.booking__form { grid-template-columns: 1fr 1fr .72fr .72fr auto; border: 0; background: var(--ink) radial-gradient(60% 120% at 100% 0%, rgba(240, 65, 55, .22), transparent 60%); box-shadow: 0 34px 70px -28px rgba(0, 0, 0, .6); backdrop-filter: none; }
.booking .f { border-right-color: rgba(255, 255, 255, .14); }
.booking .f__l { color: rgba(251, 248, 244, .7); }
.booking .f__l .i { color: var(--brass); }
.booking .f__show b, .booking .step__v { color: #fff; }
.booking .f__show small { color: rgba(251, 248, 244, .6); }
.booking .f__show:focus-visible { outline-color: var(--brass); }
.booking .step__b { border-color: rgba(255, 255, 255, .3); background: transparent; color: #fff; }
.booking .step__b:hover:not(:disabled) { border-color: var(--brass); background: var(--brass); color: var(--ink); }
.booking .btn--go { min-width: 240px; }
.booking.is-stuck { background: var(--ink); box-shadow: 0 12px 30px -14px rgba(0, 0, 0, .55); }
.booking.is-stuck .booking__form { background: transparent; box-shadow: none; }
.f-ages { display: flex; flex-wrap: wrap; grid-column: 1 / -1; gap: .75rem 1.25rem; padding: .8rem 1.4rem; border-top: 1px solid rgba(255, 255, 255, .14); }
.f-ages[hidden] { display: none; }
.f-age { display: grid; gap: .35rem; }
.f-age .label { color: rgba(251, 248, 244, .7); }
.f-age select { min-width: 96px; height: 40px; padding: 0 .6rem; border: 1px solid rgba(255, 255, 255, .3); background: transparent; color: #fff; font: 400 1.1rem/1 var(--display); }
.f-age option { color: var(--ink); }
.bcard .f-ages { padding: .9rem 1.1rem; border-top: 0; border-bottom: 1px solid var(--line); }
.bcard .f-age .label { color: var(--muted); }
.bcard .f-age select { border-color: var(--line); color: var(--ink); }
.bcard__form .f:nth-of-type(3) { border-right: 1px solid var(--line); }
@media (max-width: 1180px) { .booking__form { grid-template-columns: 1fr 1fr .8fr .8fr; } .booking .btn--go { grid-column: 1 / -1; } }
@media (max-width: 900px) {
	.booking__tag { display: none; }
	.js .booking { background: var(--ink); border-top-color: var(--ink); }
	.js .booking__toggle { background: var(--brass); color: var(--ink); }
	.js .booking.is-open .booking__toggle { color: #fff; }
	.booking__form { grid-template-columns: 1fr 1fr; }
	.booking__form .f--s { grid-column: auto; }
	.booking .f { border-bottom-color: rgba(255, 255, 255, .14); }
}

/* ============ Savarankiškas įsiregistravimas ============ */
.sci { border-bottom: 1px solid var(--line); background: var(--paper); }
.sci__head { display: grid; grid-template-columns: 1.2fr .8fr; gap: 2rem 4rem; align-items: end; margin-bottom: clamp(2rem, 4vw, 3rem); }
.sci__head .h2 { margin: 0; }
.sci__badge { justify-self: end; display: grid; gap: .4rem; padding: 1.4rem 1.6rem; background: var(--ink) radial-gradient(80% 120% at 100% 0%, rgba(240, 65, 55, .3), transparent 60%); color: #fff; }
.sci__badge b { color: var(--brass); font: 400 2.2rem/1 var(--display); }
.sci__badge span { color: rgba(251, 248, 244, .78); font-size: .9rem; }
.sci__steps { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; padding: 0; border-top: 1px solid var(--line); list-style: none; }
.sci__steps li { display: grid; align-content: start; gap: .6rem; padding: 1.75rem 1.75rem 1.5rem 0; border-right: 1px solid var(--line); }
.sci__steps li + li { padding-left: 1.75rem; }
.sci__steps li:last-child { border-right: 0; }
.sci__n { color: var(--brass); font: 400 2.8rem/1 var(--display); }
.sci__steps b { font: 400 1.5rem/1.15 var(--display); }
.sci__steps span:not(.sci__n) { color: var(--muted); }
.sci__more { margin: 1.5rem 0 0; }
@media (max-width: 900px) {
	.sci__head, .sci__steps { grid-template-columns: 1fr; }
	.sci__badge { justify-self: start; }
	.sci__steps li, .sci__steps li + li { padding: 1.25rem 0; border-right: 0; border-bottom: 1px solid var(--line); }
}

/* ============ Pasiūlymai ============ */
.offers { display: grid; gap: 1.25rem; margin-block: clamp(2.5rem, 5vw, 4rem); }
.offcard { display: grid; grid-template-columns: 190px 1fr auto; gap: 1.5rem 2.5rem; align-items: center; padding: 1.5rem; overflow: hidden; border: 1px solid var(--line); background: var(--sand) radial-gradient(50% 120% at 100% 0%, rgba(245, 130, 50, .18), transparent 70%); }
.offcard__img img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
.offer__chip { display: inline-block; margin: 0 0 .9rem; padding: .5rem .85rem; background: rgba(245, 130, 50, .18); color: var(--brass-2); }
.offcard__t { margin: 0; font: 400 clamp(1.9rem, 3vw, 2.6rem)/1.05 var(--display); }
.offcard__t a { color: var(--ink); text-decoration: none; }
.offcard__t span { color: var(--brass-2); }
.offcard__d { margin: .7rem 0 0; }
.offer__gift { display: flex; align-items: center; gap: .55rem; margin: .7rem 0 0; color: var(--brass-2); }
.offer__gift .i { flex: none; width: 18px; height: 18px; }
.offcard__note { margin: .7rem 0 0; color: var(--muted); font-size: .86rem; }
@media (max-width: 900px) { .offcard { grid-template-columns: 1fr; } .offcard__img img { aspect-ratio: 16 / 9; } }

.offer { padding-block: clamp(2rem, 4vw, 3rem) clamp(3rem, 6vw, 5rem); }
.offer__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.offer__img { margin: 1.25rem 0 1.75rem; }
.offer__img img { display: block; width: 100%; max-height: 560px; object-fit: cover; }
.offer__t { margin: 0 0 .7rem; }
.offer__price { display: flex; flex-wrap: wrap; align-items: baseline; gap: .4rem 1rem; margin: 1.5rem 0 0; padding: 1.1rem 1.4rem; background: var(--ink) radial-gradient(70% 120% at 100% 0%, rgba(240, 65, 55, .3), transparent 60%); color: #fff; }
.offer__price span { font: 400 1.5rem/1 var(--display); }
.offer__price b { color: var(--brass); font: 400 2.8rem/1 var(--display); }
.offer__price small { flex-basis: 100%; color: rgba(251, 248, 244, .72); }
.offer__side { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + 1.5rem); display: grid; gap: 1.25rem; scroll-margin-top: 90px; }
.offer__terms { margin: 0; padding: 1.1rem 1.25rem 1.1rem 2.2rem; border-left: 3px solid var(--brass); background: var(--sand); line-height: 1.7; }
.offer__h { margin: .4rem 0 0; font: 400 1.7rem/1.1 var(--display); }
.ocal { display: grid; gap: 1.25rem; }
.ocal__t { margin: 0 0 .6rem; color: var(--brass-2); font: 500 .72rem/1 var(--sans); letter-spacing: .2em; text-transform: uppercase; }
.ocal__g { display: grid; grid-template-columns: repeat(7, 1fr); gap: 6px; }
.ocal__w { padding: .3rem 0; color: var(--muted); font-size: .75rem; text-align: center; }
.ocal__d { height: 46px; padding: 0; border: 1px solid var(--line); background: var(--paper); color: var(--ink); font: 400 1.15rem/1 var(--display); cursor: pointer; transition: border-color .2s, background .2s; }
.ocal__d:hover:not(:disabled) { border-color: var(--ink); }
.ocal__d:disabled { border-color: transparent; background: transparent; color: rgba(17, 17, 17, .25); cursor: default; }
.ocal__d.is-in, .ocal__d.is-in:disabled { border-color: transparent; background: rgba(245, 130, 50, .28); color: var(--ink); }
.ocal__d.is-start { border-color: var(--brass); background: var(--brass); color: var(--ink); }
.ocal__d:focus-visible { outline: 2px solid var(--brass-2); outline-offset: 1px; }
.ocal__sum { margin: 0; padding: .95rem 1.15rem; background: var(--sand); font-size: .92rem; line-height: 1.6; }
.ocal__sum.is-err { background: rgba(240, 65, 55, .12); }
.offer__form { display: grid; gap: .9rem; }
.offer__form p { margin: 0; }
.offer__form label { display: block; margin-bottom: .35rem; color: var(--muted); font-size: .86rem; }
.offer__form input[type="text"], .offer__form input[type="email"], .offer__form input[type="tel"], .offer__form textarea { width: 100%; padding: .8rem 1rem; border: 1px solid var(--line); background: var(--paper); color: var(--ink); font: inherit; }
.offer__form input:focus, .offer__form textarea:focus { outline: 2px solid var(--brass); outline-offset: 0; }
.offer__form .nl__consent { color: var(--muted); }
.offer__form .nl__consent label { display: inline; margin: 0; }
.offer__form .btn { justify-self: start; }
.offer__note { color: var(--muted); font-size: .85rem; }
.offer__msg { margin: 0; padding: .95rem 1.15rem; font-size: .92rem; }
.offer__msg--ok { background: rgba(80, 160, 110, .14); }
.offer__msg--err { background: rgba(240, 65, 55, .12); }
@media (max-width: 1024px) { .offer__grid { grid-template-columns: 1fr; } .offer__side { position: static; } }
