@font-face {
  font-family: 'DM Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/DMMono-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'DM Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/DMMono-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Schibsted Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/SchibstedGrotesk-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Schibsted Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/SchibstedGrotesk-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Schibsted Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/SchibstedGrotesk-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Schibsted Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/SchibstedGrotesk-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root {
  --ink: #ece7dd; --bg: #151412; --stone: #d8d1c5; --stone-ink: #1b1816; --brass: #c6a56c; --rule: rgba(236,231,221,.22);
  --sans: "Schibsted Grotesk", "Helvetica Neue", Arial, sans-serif; --mono: "DM Mono", ui-monospace, Menlo, monospace;
  --gut: clamp(18px, 3.2vw, 48px); --gap: clamp(70px, 9vw, 130px); color-scheme: dark;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--bg); color: var(--ink); font: 400 1.08rem/1.5 var(--sans); }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-underline-offset: .22em; text-decoration-color: var(--brass); text-decoration-thickness: 1px; }
h1, h2, p, ol, dl, dd, figure { margin: 0; padding: 0; }
h1, h2 { font-weight: 500; letter-spacing: -.028em; text-wrap: balance; }
h2 { font-size: clamp(2.2rem, 5.6vw, 5.4rem); line-height: 1.02; }
:focus-visible { outline: 2px solid var(--brass); outline-offset: 3px; }
.wrap { padding-inline: var(--gut); }
.skip { position: absolute; left: -999px; }
.skip:focus { left: 12px; top: 12px; z-index: 50; background: var(--bg); padding: 8px 12px; }
.btn { display: inline-block; padding: 14px 22px; background: var(--brass); color: #171411; text-decoration: none; font-weight: 500; }
.btn:hover { background: var(--ink); }
.more { display: inline-block; padding-block: 10px; }

.top { position: fixed; inset: 0 0 auto; z-index: 20; display: flex; align-items: center; gap: 24px; padding: 14px var(--gut); transition: background .2s; }
.top.solid { background: var(--bg); }
.logo img { width: 92px; }
.nav { display: flex; gap: 22px; margin-left: auto; font-size: .95rem; }
.nav a { text-decoration: none; }
.nav a:hover { text-decoration: underline; text-decoration-color: var(--brass); }
.cta { padding: 9px 16px; border: 1px solid var(--ink); text-decoration: none; font-size: .95rem; white-space: nowrap; background: rgba(21,20,18,.35); }
.cta:hover { background: var(--ink); color: var(--bg); }
.menu { display: none; margin-left: auto; min-height: 44px; padding: 0 2px; background: none; border: 0; color: inherit; font: inherit; text-decoration: underline; text-decoration-color: var(--brass); text-underline-offset: .22em; cursor: pointer; }

/* Linijos virsta tikra nuotrauka. Abu sluoksniai vienodo dydžio plokštėje, kad sutaptų. */
.wipe .stage { position: relative; overflow: hidden; background: #16171a; height: 100%; --W: max(100vw, 150svh); --x: .62; --y: .6; }
.wipe.pin { height: 240svh; }
.wipe.pin .stage { position: sticky; top: 0; height: 100svh; }
.plate { position: absolute; width: var(--W); height: calc(var(--W) / 1.5); left: calc((100vw - var(--W)) * var(--x)); top: calc((100svh - var(--W) / 1.5) * var(--y)); }
.plate img { width: 100%; height: 100%; object-fit: cover; }
.pv { position: absolute; inset: 0; clip-path: inset(0 calc(100% - var(--p, 50%)) 0 0); }
.edge { position: absolute; top: 0; bottom: 0; left: var(--p, 50%); width: 1px; background: var(--brass); }
.note { display: none; position: absolute; font: .84rem/1.25 var(--mono); color: var(--brass); white-space: nowrap; padding-left: 26px; }
.note::before { content: ""; position: absolute; left: 0; top: .6em; width: 20px; height: 1px; background: var(--brass); }
.n1 { right: 2.5%; top: 55%; background: #16171a; padding-right: 4px; }
.n2 { right: 2.5%; top: 66%; background: #16171a; padding-right: 4px; }
.n3 { left: 73%; top: 19%; background: #16171a; }
.n4 { left: 72%; top: 62%; background: #16171a; }

.hero .stage::after { content: ""; position: absolute; inset: 0 0 auto; height: 58%; background: linear-gradient(rgba(12,12,12,.88), rgba(12,12,12,.55) 45%, rgba(12,12,12,0)); pointer-events: none; }
.say { position: absolute; z-index: 2; left: var(--gut); right: var(--gut); top: clamp(80px, 10.5vh, 110px); opacity: var(--o, 1); }
.say h1 { font-size: clamp(2.3rem, 5.3vw, 5.6rem); line-height: 1.02; }
/* Brėžinio kampinis spaudas */
.block { position: absolute; z-index: 2; right: var(--gut); bottom: var(--gut); width: min(390px, 40vw); background: #16171a; border: 1px solid rgba(236,231,221,.5); opacity: var(--o, 1); }
.block dl div { display: grid; grid-template-columns: 90px 1fr; padding: 8px 12px; border-bottom: 1px solid rgba(236,231,221,.5); font-size: .95rem; line-height: 1.3; }
.block dt { font: .78rem/1.6 var(--mono); color: var(--brass); }
.block .btn { display: block; text-align: center; }
.room-say { top: auto; right: auto; bottom: var(--gut); width: min(520px, 44vw); opacity: 1; padding: 20px 22px; background: #16171a; border: 1px solid rgba(236,231,221,.5); }
.room-say h2 { font-size: clamp(1.9rem, 3vw, 3rem); margin-bottom: 10px; }

.tiles { padding-top: clamp(40px, 6vw, 90px); display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.tiles a { text-decoration: none; display: flex; flex-direction: column; }
.tiles img { width: 100%; aspect-ratio: 4/5; object-fit: cover; margin-bottom: 10px; }
.tiles b { font-weight: 500; font-size: clamp(1.2rem, 1.9vw, 1.8rem); line-height: 1.15; letter-spacing: -.015em; }
.tiles a:hover b { color: var(--brass); }

.inline .stage { --W: 100%; }
.inline .plate { left: 0; top: 0; height: 100%; }
.tiles img { transition: filter .25s; }
.tiles a:hover img { filter: brightness(1.08); }
.room { margin-top: var(--gap); }
.lead { font-size: clamp(1.4rem, 2.8vw, 2.6rem); line-height: 1.15; letter-spacing: -.015em; max-width: 26em; margin-bottom: 14px; }
.proj { margin-bottom: clamp(30px, 4vw, 50px); }
.case { padding-block: clamp(60px, 8vw, 120px); background: var(--stone); color: var(--stone-ink); }
.pair.first { display: grid; grid-template-columns: 8fr 4fr; gap: 24px; align-items: start; }
.pair.first figcaption { display: block; margin: 0; font-size: clamp(1.1rem, 1.6vw, 1.45rem); line-height: 1.3; }
.pair.first figcaption b { display: block; font-size: clamp(1.6rem, 3vw, 2.8rem); letter-spacing: -.02em; margin-bottom: 8px; }
.pair-frame { position: relative; overflow: hidden; background: #fff; box-shadow: 0 1px 0 rgba(0,0,0,.2); }
.pair-frame img { position: absolute; inset: 0; width: 100%; height: 100%; }
.pair-frame .d { object-fit: contain; }
.pair-frame .f { object-fit: cover; clip-path: inset(0 calc(100% - var(--c, 50%)) 0 0); }
.pair-frame i { position: absolute; top: 0; bottom: 0; left: var(--c, 50%); width: 2px; background: var(--brass); pointer-events: none; }
.pair-frame i::after { content: "↔"; position: absolute; top: 50%; left: -21px; width: 44px; height: 44px; margin-top: -22px; background: var(--brass); color: #171411; text-align: center; line-height: 44px; font-size: 1.1rem; }
.pair-frame input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: ew-resize; touch-action: pan-y; }
.pair figcaption { display: grid; grid-template-columns: 7fr 5fr; gap: 24px; margin-top: 12px; }
.pair figcaption b { font-weight: 500; font-size: 1.3rem; }
.case-two { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: clamp(40px, 6vw, 80px); }
.case-two figcaption { grid-template-columns: 1fr; gap: 2px; }

.people { padding-top: var(--gap); display: grid; grid-template-columns: repeat(12, 1fr); gap: 24px; align-items: end; }
.huge { grid-column: 1 / -1; font-size: clamp(2.3rem, 6vw, 6rem); line-height: 1.02; letter-spacing: -.028em; font-weight: 500; text-wrap: balance; }
.p-b { grid-column: 1 / span 8; }
.p-a { grid-column: 9 / -1; }
.p-b img { width: 100%; aspect-ratio: 3/2; object-fit: cover; object-position: center 40%; }
.p-a img { width: 100%; }
.people figcaption { font-size: .95rem; margin-top: 8px; }
.hotels { padding-top: var(--gap); display: grid; grid-template-columns: 4fr 4fr 3.2fr; gap: 12px; align-items: end; }
.hotels-text { grid-column: 1 / -1; display: grid; grid-template-columns: 7fr 5fr; gap: 24px; align-items: end; margin-bottom: clamp(20px, 3vw, 40px); }
.hotels-text .more { grid-column: 2; }
.hotels img { width: 100%; }
.h1 img, .h2 img { aspect-ratio: 697/770; object-fit: cover; }
.proj-h { padding-top: var(--gap); }
.proj-h h2 { margin-bottom: 10px; }
.proj-h + .band { padding-top: clamp(16px, 2vw, 28px); }
.h3 img { aspect-ratio: 563/770; object-fit: cover; }
.tbc-l { grid-column: 1 / -1; margin-top: 4px; }

.designers { padding-top: var(--gap); display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: end; }
.d-img { display: grid; grid-template-columns: 3fr 2fr; gap: 12px; align-items: end; }
.d-img img { width: 100%; }
.d-text h2 { font-size: clamp(1.1rem, 1.4vw, 1.3rem); letter-spacing: 0; line-height: 1.3; margin-bottom: 14px; color: var(--brass); }
.big { font-size: clamp(2rem, 4.2vw, 4rem); line-height: 1.04; letter-spacing: -.025em; margin-bottom: 18px; text-wrap: balance; }
.d-text p:not(.big) { max-width: 34em; }

.how { padding-top: var(--gap); display: grid; grid-template-columns: repeat(12, 1fr); gap: 0 24px; align-items: start; }
.how h2 { grid-column: 1 / -1; margin-bottom: clamp(30px, 4vw, 60px); }
.how ol { grid-column: 1 / span 7; list-style: none; }
.how li { padding: 18px 0 24px; border-top: 1px solid var(--rule); }
.how li b { display: block; font-weight: 500; font-size: clamp(1.4rem, 2.5vw, 2.3rem); line-height: 1.12; letter-spacing: -.015em; margin-bottom: 4px; }
.how-a { grid-column: 9 / -1; }
.how-cta { grid-column: 1 / span 7; justify-self: start; margin-top: 8px; }
.slim u { text-decoration-color: var(--brass); text-underline-offset: .22em; white-space: nowrap; }
.how figcaption { font-size: .95rem; margin-top: 8px; }

.facts { padding-top: clamp(50px, 6vw, 90px); }
.facts dl { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; border-top: 1px solid var(--stone-ink); padding-top: 18px; margin-bottom: 28px; }
.facts dt { font-size: .95rem; margin-bottom: 2px; opacity: .72; }
.facts dd { font-size: 1.15rem; line-height: 1.25; }
.facts .btn { background: var(--stone-ink); color: var(--stone); }
.tbc { display: inline-block; font: .84rem var(--mono); padding: 2px 6px; border: 1px dashed currentColor; color: var(--brass); }
.case .tbc, .end .tbc { color: #6d5526; }

.home { padding-top: var(--gap); }
.home-head { display: grid; grid-template-columns: 4fr 8fr; gap: 24px; align-items: end; margin-bottom: clamp(24px, 4vw, 44px); }
.home-head h2 { font-size: clamp(1.9rem, 4.6vw, 4.6rem); margin-bottom: 14px; }
.home-head p { max-width: 38em; }
.rail { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x proximity; padding-inline: var(--gut); padding-bottom: 14px; scrollbar-color: var(--brass) transparent; }
.rail a { flex: 0 0 clamp(230px, 23vw, 340px); scroll-snap-align: center; text-decoration: none; display: flex; flex-direction: column; }
.rail img { aspect-ratio: 1; object-fit: cover; width: 100%; margin-bottom: 10px; }
.rail b { font-weight: 500; font-size: 1.15rem; }
.rail span { font: .84rem var(--mono); }
.slim { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 24px; margin-top: 40px; }
.slim a { display: grid; grid-template-columns: 110px minmax(0,1fr); gap: 16px; align-items: center; text-decoration: none; border-top: 1px solid var(--rule); padding-top: 14px; }
.slim img { width: 110px; height: 110px; object-fit: cover; }
.slim b { display: block; font-weight: 500; font-size: 1.25rem; }
.slim a:hover b { color: var(--brass); }
.slim a > span { min-width: 0; }
@media (max-width: 420px) { .slim u { white-space: normal; } .slim a { grid-template-columns: 84px minmax(0,1fr); gap: 12px; } .slim img { width: 84px; height: 84px; } }

.end { margin-top: var(--gap); padding-block: clamp(60px, 8vw, 120px) 30px; background: var(--stone); color: var(--stone-ink); }
.end a { text-decoration-color: currentColor; }
.end h2 { font-size: clamp(2.6rem, 8.4vw, 8.6rem); line-height: .98; margin-bottom: clamp(36px, 5vw, 70px); max-width: 11em; }
.end-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.direct { display: flex; flex-direction: column; gap: 8px; align-items: flex-start; font-size: 1.15rem; }
.mail { font-size: clamp(1.4rem, 2.6vw, 2.4rem); overflow-wrap: anywhere; padding-block: 4px; }
.direct a { padding-block: 4px; }
.end .tbc { color: #6d5526; }
.soc { display: flex; gap: 18px; }
form { display: grid; gap: 4px; }
label { font-size: .95rem; margin-top: 12px; }
input, textarea, select { width: 100%; padding: 11px 0; background: transparent; color: inherit; border: 0; border-bottom: 1px solid var(--stone-ink); font: inherit; border-radius: 0; resize: vertical; }
input:focus, textarea:focus, select:focus { outline: 0; border-bottom-width: 2px; }
select { -webkit-appearance: none; appearance: none; background-color: transparent; color: inherit; padding-right: 26px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23332c22' stroke-width='1.6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 4px center; }
.end form { color-scheme: light; }
select option { color: #111; background: #fff; }
form button { justify-self: start; min-height: 50px; margin-top: 18px; padding: 0 38px; background: var(--stone-ink); color: var(--stone); border: 0; font: inherit; cursor: pointer; }
.note-f { font-size: .95rem; min-height: 1.4em; }
.foot-nav { display: flex; flex-wrap: wrap; gap: 8px 22px; margin-top: 56px; padding-top: 16px; border-top: 1px solid var(--stone-ink); }
.foot-nav a { padding-block: 6px; }
.alt { font-size: .95rem; margin-top: 8px; }
.foot { margin-top: 18px; font-size: .95rem; }
.stick { display: none; }

@media (max-width: 900px) {
  .menu { display: block; }
  .cta { display: none; }
  .nav { display: none; position: fixed; inset: 0; z-index: -1; padding: 84px var(--gut) 30px; flex-direction: column; gap: 2px; background: var(--bg); font-size: 2rem; line-height: 1.15; letter-spacing: -.02em; }
  .nav.open { display: flex; overflow-y: auto; overscroll-behavior: contain; }
  .nav a { padding: 8px 0; }
  .wipe .stage { --x: .74; --y: .5; }
  .room .stage { --x: .42; }
  .say h1 { font-size: clamp(2.3rem, 10.4vw, 4rem); }
  .block { left: var(--gut); right: var(--gut); bottom: var(--gut); width: auto; }
  .pair.first { grid-template-columns: 1fr; gap: 12px; }
  .p-b, .p-a { grid-column: 1 / -1; }
  .p-b img { aspect-ratio: 1; }
  .p-a { display: none; }
  .room-say { width: auto; right: var(--gut); top: auto; bottom: var(--gut); padding: 14px 16px; }
  .room-say h2 { font-size: 1.6rem; }
  .room-say p { font-size: .98rem; line-height: 1.35; }
  .hero .stage::after { height: 66%; }
  .tiles { grid-template-columns: 1fr 1fr; gap: 20px 10px; }
  .home-head, .case-two, .designers, .end-grid { grid-template-columns: 1fr; }
  .slim { grid-template-columns: minmax(0,1fr); }
  .pair .pair-frame { margin-inline: calc(-1 * var(--gut)); }
  .pair figcaption { grid-template-columns: 1fr; gap: 2px; }
  .hotels { grid-template-columns: 1fr 1fr; }
  .hotels-text { grid-template-columns: 1fr; gap: 10px; }
  .hotels-text .more { grid-column: 1; }
  .h1 { grid-column: 1 / -1; }
  .how ol, .how-a, .how-cta { grid-column: 1 / -1; }
  .how-cta { grid-row: 2; margin-bottom: 8px; }
  .how-a { grid-row: 3; }
  .how-a { margin-top: 20px; }
  .facts dl { grid-template-columns: 1fr 1fr; }
  .rail a { flex-basis: 72vw; }
  .end { padding-bottom: 80px; }
  .stick { display: block; position: fixed; right: 12px; bottom: 12px; z-index: 15; padding: 11px 16px; background: var(--brass); color: #171411; text-decoration: none; font-weight: 500; font-size: .98rem; opacity: 0; pointer-events: none; transition: opacity .25s; }
  .stick.on { opacity: 1; pointer-events: auto; }
}
/* Vidiniai puslapiai */
.nav a[aria-current="page"] { text-decoration: underline; text-decoration-color: var(--brass); }
.sub-hero { padding-top: 92px; display: grid; grid-template-columns: 6fr 6fr; gap: 24px; align-items: stretch; }
.sub-hero .sh-text { display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: 24px; padding-bottom: 8px; }
.sub-hero h1 { font-size: clamp(2.4rem, 5.2vw, 5.4rem); line-height: 1.02; }
.sub-hero p { font-size: clamp(1.1rem, 1.5vw, 1.35rem); line-height: 1.35; max-width: 30em; margin-top: auto; }
.sub-hero .wipe { max-height: calc(100svh - 110px); width: 100%; justify-self: end; }
.room-hero .block { width: min(430px, 44vw); }
.case-h { margin-bottom: 18px; }
.case .lead + .sheet { margin-top: clamp(30px, 4vw, 50px); }
.sheet { display: grid; grid-template-columns: 8fr 4fr; gap: 24px; align-items: start; }
.sheet + .sheet { margin-top: clamp(44px, 6vw, 90px); }
.sheet.flip { grid-template-columns: 4fr 8fr; }
.sheet.flip .pair-frame { order: 2; }
.pair.sheet figcaption { display: block; margin: 0; }
.pair.sheet figcaption b { display: block; font-size: clamp(1.6rem, 3vw, 2.8rem); letter-spacing: -.02em; margin-bottom: 10px; }
.sheet dt { font-size: .95rem; opacity: .72; margin-top: 10px; }
.sheet dd { font-size: 1.1rem; line-height: 1.3; }
.rows > div { display: grid; grid-template-columns: 4fr 8fr; gap: 24px; padding: 16px 0 18px; border-top: 1px solid var(--rule); }
.rows dt { font-weight: 500; font-size: clamp(1.25rem, 2.1vw, 1.9rem); line-height: 1.15; letter-spacing: -.015em; }
.rows dd { font-size: 1.1rem; }
.rows.small > div { grid-template-columns: 2fr 3fr; gap: 12px; padding: 9px 0; }
.rows.small dt { font-weight: 400; font-size: .98rem; letter-spacing: 0; opacity: .75; line-height: 1.4; }
.rows.small dd { font-size: .98rem; }
.roomlist, .change, .pick, .q, .prices, .range, .wall, .band, .sleep, .models, .why, .p-sheet, .p-more, .grp { padding-top: var(--gap); }
.rl-head { display: grid; grid-template-columns: 7fr 5fr; gap: 24px; align-items: end; margin-bottom: clamp(24px, 3vw, 44px); }
.change h2, .pick h2, .prices h2, .q h2, .grp h2, .p-sheet h2, .p-more h2 { margin-bottom: clamp(20px, 3vw, 40px); }
.after { margin-top: 20px; max-width: 46em; }
.after a { display: inline-block; padding-block: 10px; }
.wall { display: grid; grid-template-columns: repeat(12, 1fr); gap: 24px 12px; align-items: end; }
.wall img { width: 100%; }
.wall figcaption { font-size: .95rem; margin-top: 6px; }
.w-a { grid-column: 1 / span 5; }
.w-b { grid-column: 6 / span 3; }
.w-c { grid-column: 9 / -1; }
.w-d { grid-column: 1 / span 4; }
.w-e { grid-column: 5 / span 4; }
.w-f { grid-column: 9 / -1; }
.w-d img, .w-e img, .w-f img { aspect-ratio: 1; object-fit: cover; }
.sleep { display: grid; grid-template-columns: 5fr 7fr; gap: 24px; align-items: end; }
.sleep h2 { margin-bottom: 16px; }
.sleep p { max-width: 34em; }
.q { display: grid; grid-template-columns: 5fr 7fr; gap: 24px; }
details { border-top: 1px solid var(--rule); padding: 14px 0; }
summary { cursor: pointer; font-weight: 500; font-size: 1.2rem; min-height: 32px; }
details p { margin-top: 8px; max-width: 40em; }
.band { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.band img { width: 100%; aspect-ratio: 2/3; object-fit: cover; }
.range { display: grid; grid-template-columns: 4fr 8fr; gap: 24px; align-items: end; }
.range h2 { font-size: clamp(1.9rem, 4vw, 3.8rem); margin-bottom: 14px; }
.range-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.range-grid img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.grp-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px 12px; }
.grp-grid.three { grid-template-columns: repeat(3, 1fr); margin-top: 30px; }
.grp-grid a { text-decoration: none; display: flex; flex-direction: column; }
.grp-grid .wide { grid-column: 1 / -1; }
.grp-grid img { width: 100%; aspect-ratio: 1; object-fit: cover; margin-bottom: 10px; }
.grp-grid .wide img { aspect-ratio: 2/1; }
.grp-grid b { font-weight: 500; font-size: clamp(1.25rem, 2vw, 1.7rem); line-height: 1.15; letter-spacing: -.015em; }
.grp-grid a:hover b { color: var(--brass); }
.dim { font: .88rem var(--mono); }
.pr { font-weight: 500; }
.plain { padding-top: 110px; }
.plain h1 { font-size: clamp(2.6rem, 7vw, 7rem); line-height: 1; margin-bottom: 18px; }
.plain .lead { margin-bottom: 0; }
.p { padding-top: 84px; }
.crumb { font-size: .95rem; margin-bottom: 16px; }
.p-grid { display: grid; grid-template-columns: 7fr 5fr; gap: 32px; align-items: start; }
.shots { display: grid; gap: 10px; }
.shots img { width: 100%; }
.side { position: sticky; top: 84px; }
.side h1 { font-size: clamp(2rem, 3.6vw, 3.6rem); line-height: 1.04; margin-bottom: 6px; }
.code { font: .88rem var(--mono); margin-bottom: 18px; }
.p-price { font-size: 1.6rem; margin-bottom: 4px; }
.p-lead { margin-bottom: 18px; }
.side .rows { margin-top: 24px; border-bottom: 1px solid var(--rule); }
.side h2 { font-size: 1.3rem; letter-spacing: -.01em; margin: 24px 0 8px; }
.side ul { margin: 0; padding-left: 18px; }
.p-sheet img { background: #fff; padding: 2%; width: 100%; max-height: 70svh; object-fit: contain; }
.more-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.more-grid a { text-decoration: none; }
.more-grid img { width: 100%; aspect-ratio: 1; object-fit: cover; margin-bottom: 8px; }
.more-grid b { font-weight: 500; }
.scroll { overflow-x: auto; }
table { width: 100%; min-width: 560px; border-collapse: collapse; font-variant-numeric: tabular-nums; }
th { text-align: left; font-weight: 400; font-size: .95rem; padding: 0 12px 10px 0; color: var(--brass); }
td { border-top: 1px solid var(--rule); padding: 13px 12px 13px 0; }
.pick td:first-child { font-weight: 500; font-size: 1.2rem; }
.prices th:not(:first-child), .prices td:not(:first-child) { text-align: right; padding-right: 0; padding-left: 12px; white-space: nowrap; }
.prices { font-size: 1.05rem; }
.models article { display: grid; grid-template-columns: 5fr 7fr; gap: 24px; align-items: start; padding-block: clamp(28px, 4vw, 54px); border-top: 1px solid var(--rule); }
.models img { width: 100%; aspect-ratio: 4/3; object-fit: contain; background: #fff; }
.models h2 { font-size: clamp(1.9rem, 4vw, 3.8rem); }
.models .dim { display: block; margin: 4px 0 14px; color: var(--brass); }
.models ol { list-style: none; }
.models li { padding: 10px 0; border-top: 1px solid var(--rule); }
.models li b { display: block; font-weight: 500; }
.why { display: grid; grid-template-columns: 5fr 7fr; gap: 24px; align-items: start; }
.why img { width: 100%; }
.why h2 { font-size: clamp(1.5rem, 2.6vw, 2.4rem); margin: 28px 0 8px; }
.why h2:first-child { margin-top: 0; }
.why p { max-width: 38em; }

@media (max-width: 900px) {
  .sub-hero { padding-top: 76px; grid-template-columns: 1fr; }
  .sub-hero .sh-text { gap: 14px; }
  .sub-hero p { margin-top: 0; }
  .sub-hero .wipe { max-height: none; margin-inline: calc(-1 * var(--gut)); width: 100vw; }
  .room-hero .block { width: auto; }
  .sheet, .sheet.flip { grid-template-columns: 1fr; gap: 10px; }
  .sheet.flip .pair-frame { order: 0; }
  .rows > div { grid-template-columns: 1fr; gap: 2px; padding: 12px 0 14px; }
  .rows.small > div { grid-template-columns: 2fr 3fr; }
  .rl-head, .sleep, .q, .range, .p-grid, .why, .models article { grid-template-columns: 1fr; }
  .wall { gap: 18px 10px; }
  .w-a, .w-c { grid-column: 1 / -1; }
  .w-b { grid-column: 1 / span 6; }
  .w-d { grid-column: 7 / -1; }
  .w-e { grid-column: 1 / span 6; }
  .w-f { grid-column: 7 / -1; }
  .band { grid-template-columns: 1fr 1fr; }
  .band img:first-child { grid-column: 1 / -1; aspect-ratio: 4/5; }
  .range-grid { grid-template-columns: 1fr 1fr; }
  .grp-grid.three { grid-template-columns: 1fr; }
  .side { position: static; }
  .shots { margin-inline: calc(-1 * var(--gut)); }
  .more-grid { grid-template-columns: 1fr 1fr; }
  .more-grid a:nth-child(3) { display: none; }
}

@media (min-width: 1200px) and (min-aspect-ratio: 3/2) { .note { display: block; } }
@media (max-height: 560px) {
  .hero .say { top: 62px; }
  .say h1 { font-size: clamp(1.6rem, 4.6vw, 2.6rem); }
  .block dl { display: none; }
  .block { width: auto; left: auto; right: var(--gut); bottom: 12px; border: 0; }
  .room-say { top: auto; width: min(420px, 60vw); left: var(--gut); right: auto; bottom: 10px; padding: 10px 12px; }
  .room-say h2 { font-size: 1.3rem; margin-bottom: 4px; }
  .room-say p { font-size: .9rem; line-height: 1.3; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .wipe.pin { height: 100svh; }
  .top, .stick { transition: none; }
}

/* Pradžia: skyriai pagal objektų tipus */
.row3 { padding-top: 12px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.row3 img { width: 100%; aspect-ratio: 4/5; object-fit: cover; display: block; }
.home { margin-top: var(--gap); }
.case { margin-top: var(--gap); }
@media (max-width: 760px) {
  .row3 { grid-template-columns: 1fr 1fr; }
  .row3 img:first-child { grid-column: 1 / -1; aspect-ratio: 3/2; }
}

/* Išparduotuvė: kortelės su kaina */
.grp-grid.out > div { display: flex; flex-direction: column; gap: 4px; }
.grp-grid.out .pr { font-size: 1.15rem; margin-top: 4px; }
.grp-grid.out .more { margin-top: 8px; }

/* Katalogas su kainomis */
/* katalogas ir „More pieces“: kompiuteryje 4 / 3 stulpeliai, planšetėje 2, telefone 1; nuotraukos neištempiamos (Tadas 2026-11-10) */
#prices, #pieces { --kc: 4; max-width: 2000px; margin-inline: auto; }
.grp-grid.kat, #pieces .grp-grid { grid-template-columns: repeat(var(--kc), minmax(0, 1fr)); gap: 28px 14px; }
.grp-grid.kat { margin-top: 20px; }
#pieces .grp-grid .wide { grid-column: span 2; }
.grp-grid.kat b { font-size: clamp(1rem, 1.3vw, 1.2rem); }
.grp-grid.kat .d { font-size: .9rem; line-height: 1.35; opacity: .8; }
#pieces .grp-grid b { font-size: clamp(1.05rem, 1.4vw, 1.3rem); }
.kat-nav { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 10px; }
@media (max-width: 1439px) { #prices, #pieces { --kc: 3; } }
@media (max-width: 1023px) { #prices, #pieces { --kc: 2; } .grp-grid.kat, #pieces .grp-grid { gap: 22px 10px; } }
@media (max-width: 599px) { #prices, #pieces { --kc: 1; } #pieces .grp-grid .wide { grid-column: auto; } #pieces .grp-grid .wide img { aspect-ratio: 1; } }
.grp-grid.kat .fab { font-size: .8rem; line-height: 1.3; opacity: .7; }

/* Gulsčias telefonas: meniu telpa ir slenka */
@media (max-width: 900px) and (max-height: 420px) { .nav { padding-top: 64px; font-size: 1.45rem; } .nav a { padding: 5px 0; } }
