/* Visual polish, loaded last: one type family, rounded shapes, motion. */
:root{--r-xs:6px;--r-sm:10px;--r-md:14px;--r-lg:18px;--r-xl:24px;--shadow-soft:0 1px 2px #16283a0a,0 8px 24px #16283a0f;--shadow-lift:0 2px 6px #16283a12,0 18px 40px #16283a1f;--ease-out:cubic-bezier(.23,1,.32,1)}

/* ---------- Type: Inter everywhere, no typewriter labels ---------- */
body{font-family:Inter,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;font-variant-numeric:proportional-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.anatomy-caption,.channel-grid h3,.cinema-kicker,.corner-label,.specimen-caption,.direction-index,.eyebrow,.kind,.film-detail-label,.hero-visual figcaption span,.number,.photo-label,.quality-points article>span,.scroll-cue,.stage-top,.story-tabs b{font-family:Inter,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;font-weight:600;letter-spacing:.06em}
.model-callouts text,.anatomy-fallback text{font-family:Inter,system-ui,Arial,sans-serif;font-weight:600;letter-spacing:.04em}
.eyebrow{font-size:12px;letter-spacing:.1em}
.kind,.card-copy .kind{letter-spacing:.07em;font-weight:600}
h1,h2,h3{font-feature-settings:'ss01';text-wrap:balance}
h1{font-weight:620;letter-spacing:-.035em}
h2{font-weight:600;letter-spacing:-.03em}
h3{font-weight:600;letter-spacing:-.015em}
p,li,dd,dt{text-wrap:pretty}
.hero-facts b,.direction-link b,.story-tabs b,.cinema-panel .eyebrow,[data-count]{font-variant-numeric:lining-nums proportional-nums;font-feature-settings:'ss01'}
.hero-facts b{font-weight:600;letter-spacing:-.04em}
.cinema-panel .eyebrow{letter-spacing:.08em;text-transform:uppercase}
.specs dd,.card-spec b,.cinema-facts dd{font-weight:550}

/* ---------- Rounded shapes ---------- */
.button,.save,.selection-open,.nav-toggle,.header-phone,.load-more,.photo-switch button,.dialog-actions .button,.product-bar .button,.cinema-next{border-radius:var(--r-sm)}
input,select,textarea{border-radius:var(--r-sm)}
.tabs a{border-radius:999px}
.selection-open span{border-radius:999px}
.product-card{border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-soft);border-color:#e3e8ed}
.product-card .save{border-radius:var(--r-sm)}
.product-photo{border-bottom-color:#e8edf1}
.photo-label,.corner-label,.specimen-caption,.number,.cinema-kicker{border-radius:var(--r-xs)}
.specimen{border-radius:var(--r-xl);border-color:#e1e7ec}
.photo-switch button{overflow:hidden}
.direction-image,.decor-image{border-radius:var(--r-md);overflow:hidden}
.decor-image{border-color:#e3e8ed}
.hero-visual{border-radius:var(--r-xl);overflow:hidden}
.application-panel{border-radius:var(--r-xl);overflow:hidden}
.application-panel figure,.application-panel figure img{border-radius:0}
.use-col,.maker-grid article,.family,.channel-grid>div,.company-details{border-radius:var(--r-lg)}
.use-col,.maker-grid article{box-shadow:var(--shadow-soft);border-color:#e3e8ed}
.marketing-cta{border-radius:var(--r-xl)}
.map-shell,.map-shell iframe{border-radius:var(--r-lg);overflow:hidden}
.pattern-filter button{border-radius:999px}
dialog{border-radius:var(--r-xl);border:0;box-shadow:0 30px 80px #0b182640}
dialog::backdrop{background:#0f1a2580;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.selection-row img{border-radius:var(--r-xs)}
#status{border-radius:var(--r-md)}
.main-nav{border-radius:0 0 var(--r-lg) var(--r-lg)}
.price-note,.technical-note{border-radius:0}
.footer-logo{border-radius:0}

/* Construction block: a rounded dark card instead of a full-bleed band */
.compact-cinema{margin:48px 4.45vw 0;border-radius:var(--r-xl);overflow:hidden;box-shadow:0 30px 70px #0b182633}
.compact-cinema .cinema-pin{border-radius:inherit}
.compact-cinema .story-tabs,.compact-cinema.cinema .story-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 10px}
.compact-cinema .story-tabs a{border-radius:0;transition:color 200ms var(--ease-out),border-color 200ms var(--ease-out)}
.model-callouts rect{rx:5px;ry:5px}

/* ---------- Wall preview: every panel shows its whole photo ---------- */
.wall-room{background:linear-gradient(180deg,#eef1f4,#e3e8ec);border-radius:var(--r-xl);padding:clamp(18px,3vw,40px);display:flex;justify-content:center}
.wall,.wall.is-single{display:flex;align-items:stretch;justify-content:center;width:100%;max-width:calc(min(560px,58svh) * var(--sum));height:auto;margin:0 auto;background:none;box-shadow:0 24px 50px #1a2a3a24;border-radius:var(--r-sm);overflow:hidden;grid-template-columns:none}
.wall-panel{flex:calc(var(--ratio) * 100) 1 0;aspect-ratio:var(--ratio);min-width:0;position:relative;overflow:hidden}
.wall-panel img{width:100%;height:100%;object-fit:fill}
.wall-floor{display:none}

/* ---------- Motion (only when the visitor allows it) ---------- */
.button,.save,.selection-open,.nav-toggle,.header-phone,.tabs a,.pattern-filter button,.cinema-next{transition:transform 160ms var(--ease-out),background-color 200ms var(--ease-out),border-color 200ms var(--ease-out),color 200ms var(--ease-out),box-shadow 200ms var(--ease-out)}
.button:active,.save:active,.selection-open:active,.nav-toggle:active,.header-phone:active,.tabs a:active,.pattern-filter button:active,.cinema-next:active,.decor-tile:active{transform:scale(.97)}
.product-card{transition:transform 260ms var(--ease-out),box-shadow 260ms var(--ease-out)}
.product-photo img,.product-photo .decor-fill img{transition:transform 500ms var(--ease-out)}
@media(hover:hover) and (pointer:fine){
  .product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift)}
  .product-card:hover .product-photo>img,.product-card:hover .decor-fill img{transform:scale(1.04)}
  .button:hover{box-shadow:0 8px 20px #0a5c8a2e}
  .button.ghost:hover{box-shadow:none;border-color:#93a7ba}
  .use-col,.maker-grid article{transition:transform 260ms var(--ease-out),box-shadow 260ms var(--ease-out)}
  .use-col:hover,.maker-grid article:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift)}
}
@media(prefers-reduced-motion:no-preference){
  @keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
  @keyframes settle{from{opacity:0;transform:scale(1.05)}to{opacity:1;transform:none}}
  .marketing-hero .hero-copy>*{animation:rise 700ms var(--ease-out) both}
  .marketing-hero .hero-copy>:nth-child(2){animation-delay:70ms}
  .marketing-hero .hero-copy>:nth-child(3){animation-delay:140ms}
  .marketing-hero .hero-copy>:nth-child(4){animation-delay:210ms}
  .marketing-hero .hero-copy>:nth-child(5){animation-delay:280ms}
  .hero-visual img,.hero-image{animation:settle 1100ms var(--ease-out) both}
  .catalog-heading>*,.product-layout>*{animation:rise 600ms var(--ease-out) both}
  .catalog-heading>:nth-child(2),.product-layout>:nth-child(2){animation-delay:90ms}
  html.motion .reveal{opacity:0;transform:translateY(22px)}
  html.motion .reveal.in{opacity:1;transform:none;transition:opacity 600ms var(--ease-out),transform 700ms var(--ease-out);transition-delay:calc(var(--d,0) * 70ms)}
  html.motion .wall-panel.reveal{transform:translateY(14px) scale(.98)}
  html.motion .wall-panel.reveal.in{transform:none}
}

/* ---------- Mobile ---------- */
@media(max-width:700px){
  .eyebrow{font-size:11px}
  .product-card{border-radius:var(--r-md)}
  .specimen{border-radius:var(--r-lg)}
  .compact-cinema{margin:28px 12px 0;border-radius:var(--r-lg)}
  .compact-cinema .story-tabs,.compact-cinema.cinema .story-tabs{gap:0 8px}
  .wall-room{margin:0 -8px;padding:16px;border-radius:var(--r-lg)}
  .wall,.wall.is-single{max-width:calc(min(420px,52svh) * var(--sum-mobile))}
  .wall-panel.is-edge{display:none}
  .wall.is-single{max-width:calc(min(420px,56svh) * var(--sum))}
  .hero-visual,.application-panel,.marketing-cta{border-radius:var(--r-lg)}
}
.marketing-hero .hero-lead{font-size:clamp(19px,1.6vw,24px);line-height:1.4;font-weight:550;color:var(--ink);letter-spacing:-.015em;margin-top:22px;max-width:520px}
.marketing-hero .hero-lead+p{margin-top:12px}
.name-size{display:block;margin-top:4px;font-size:.62em;font-weight:500;letter-spacing:0;color:var(--muted)}
.card-copy h3 .name-size{font-size:12px;margin-top:5px}
.spec-detail h1 .name-size{font-size:clamp(15px,1.3vw,19px);margin-top:10px}
@media(max-width:700px){.marketing-hero .hero-lead{font-size:18px;margin-top:16px}.spec-detail h1 .name-size{font-size:15px}}
.name-size{white-space:nowrap}
@media(max-width:700px){.card-copy h3 .name-size{font-size:11px;letter-spacing:-.01em}}
@media(max-width:360px){.card-copy h3 .name-size{font-size:10px}}

/* Decor strip: horizontal only; tiles fade in without moving inside the scroller */
.decor-strip .decor-track{overflow-y:hidden;overscroll-behavior-y:auto;touch-action:pan-x pan-y}
html.motion .decor-track .reveal{transform:none}

/* Even cards: same panel shape, two lines for the name and the caption */
.product-card .product-photo.has-decor .swatch,.product-card[data-group=thermal] .product-photo.has-decor .swatch{aspect-ratio:.5;width:auto;height:66%;max-width:none;background-color:#e8ecf0}
.product-card .product-photo.has-decor .swatch img{object-fit:cover;width:100%;height:100%}
.card-copy h3{min-height:0;display:flex;flex-direction:column}
.card-copy h3 .name-main{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:2.6em;line-height:1.3}
.card-copy .card-caption{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:3em;line-height:1.5}
@media(max-width:700px){.product-card .product-photo.has-decor .swatch,.product-card[data-group=thermal] .product-photo.has-decor .swatch{height:62%}.card-copy h3 .name-main{line-height:1.35;min-height:2.7em}}
.card-copy h3 .name-size{min-height:1.3em}
.card-copy .card-caption:empty,.card-copy h3 .name-size:empty{visibility:hidden}
.card-spec b,.card-spec span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:700px){.card-copy .kind{min-height:2.9em;line-height:1.45;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}}
.card-copy h3{min-height:calc(2.6em + 20px)}
.card-copy h3 .name-main{min-height:0}
@media(max-width:700px){.card-copy h3{min-height:calc(2.7em + 18px)}}

/* Room try-on */
.room-try{padding-top:48px}
.room-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.room-tabs button{min-height:40px;padding:8px 16px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:13px;transition:background-color 200ms var(--ease-out),border-color 200ms var(--ease-out),color 200ms var(--ease-out),transform 160ms var(--ease-out)}
.room-tabs button[aria-selected=true]{background:var(--blue);border-color:var(--blue);color:#fff}
.room-tabs button:active{transform:scale(.97)}
.room-try .room-note{margin-top:12px;color:var(--muted);font-size:13px}
.room{position:relative;margin:0;border-radius:var(--r-xl);overflow:hidden;background:#e9edf0;box-shadow:0 24px 60px #16283a1f}
.room.is-scene{aspect-ratio:1672/941}
.room.is-example img{width:100%;height:auto;display:block}
.room-photo,.room-light{position:absolute;inset:0;width:100%;height:100%;display:block}
.room-light{mix-blend-mode:multiply;pointer-events:none}
.js-rooms .room.is-scene .room-surface,.js-rooms .room.is-scene .room-light{opacity:0;transition:opacity 240ms var(--ease-out)}
.js-rooms .room.is-scene.ready .room-surface,.js-rooms .room.is-scene.ready .room-light{opacity:1}
@media(prefers-reduced-motion:reduce){.js-rooms .room.is-scene .room-surface,.js-rooms .room.is-scene .room-light{transition:none}}
.room-surface{position:absolute;inset:0;overflow:hidden;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.room-plane{position:absolute;display:flex;justify-content:center;overflow:hidden}
.room-plane.is-strips{justify-content:flex-start}
.room-col{flex:none;height:100%;background-size:auto 100%;background-repeat:no-repeat;box-shadow:inset 1px 0 0 #00000026,inset -1px 0 0 #ffffff1f}
.room-col.is-whole{background-size:100% 100%;background-repeat:no-repeat}
.room-plane.is-lining{background-image:linear-gradient(90deg,#00000040 0 1.4%,#ffffff33 1.4% 3%,transparent 3%)}
.room-plane.is-ground{display:block;left:0;top:0;width:calc(var(--tiles-x) * 100px);height:calc(var(--tiles-y) * 100px);transform-origin:0 0;background-size:100px 100px;overflow:visible}
.room-plane.is-ground::after{content:'';position:absolute;inset:0;background-image:linear-gradient(90deg,#00000045 0 2px,transparent 2px),linear-gradient(0deg,#00000045 0 2px,transparent 2px);background-size:100px 100px}
@media(hover:hover) and (pointer:fine){.room-tabs button:hover{border-color:#9fb3c8}}
@media(max-width:700px){.room-try{padding-top:32px}.room-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -20px 12px;padding:0 20px 4px}.room-tabs::-webkit-scrollbar{display:none}.room-tabs button{flex:none;font-size:12px;min-height:38px;padding:8px 13px}.room{border-radius:var(--r-lg);margin:0 -8px}}

/* Home hero, 21.10.2026: the picture fills the first screen, the text sits over it */
.marketing-hero{position:relative;display:flex;align-items:flex-end;min-height:max(560px,calc(100svh - 86px));overflow:hidden;background:#1b232a;color:#fff}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 50%}
.hero-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#0d151ce6 0%,#0d151cb3 34%,#0d151c40 66%,#0d151c00 100%),linear-gradient(0deg,#0d151c99 0%,#0d151c00 42%)}
.marketing-hero .hero-copy{position:relative;z-index:1;width:100%;max-width:1600px;margin:0 auto;padding:72px 4.45vw 76px}
.marketing-hero .hero-copy h1{color:#fff;font-size:clamp(48px,5.6vw,92px);line-height:1.02;max-width:11ch}
.marketing-hero .eyebrow{color:#bcd0ff}
.marketing-hero .hero-lead{color:#fff;max-width:560px}
.marketing-hero .hero-copy>p:not(.hero-lead){color:#d7dee5;max-width:470px}
.marketing-hero .text-link{color:#fff;border-bottom-color:#ffffff80}
.marketing-hero .hero-facts{color:#cbd5dd}
.marketing-hero .hero-facts b{color:#fff}
.hero-note{position:absolute;z-index:1;right:4.45vw;bottom:22px;font-size:11px;letter-spacing:.02em;color:#ffffffb8}
@media(max-width:700px){
  .marketing-hero{min-height:max(520px,calc(100svh - 73px))}
  .hero-image{object-position:58% 50%}
  .hero-shade{background:linear-gradient(0deg,#0d151cf2 0%,#0d151cc4 42%,#0d151c55 72%,#0d151c1a 100%)}
  .marketing-hero .hero-copy{padding:40px 20px 44px}
  .marketing-hero .hero-copy h1{font-size:44px;max-width:none}
  .marketing-hero .hero-copy>p:not(.hero-lead){font-size:14px;line-height:1.7}
  .hero-note{top:14px;bottom:auto;right:16px;font-size:10px}
}
@media(max-width:360px){.marketing-hero .hero-copy h1{font-size:38px}}

/* Phone layout, 21.10.2026: less fixed chrome, swipe rows instead of tall card columns */
@media(max-width:700px){
  header{transition:transform 260ms var(--ease-out)}
  .chrome-hidden header{transform:translateY(-100%)}
  .product-nav{transition:top 260ms var(--ease-out)}
  .chrome-hidden body[data-page=product] .product-nav{top:0}
  body[data-page=product].price-visible .product-bar{transform:translateY(110%);visibility:hidden;transition:transform 250ms var(--ease-out),visibility 0s 250ms}
  body[data-page=product]:not(.price-visible) .product-bar{transition:transform 250ms var(--ease-out)}
  .companions .product-grid,.variants .product-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:44%;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;margin-right:-20px;padding-right:20px;padding-bottom:4px;scrollbar-width:none}
  .companions .product-grid::-webkit-scrollbar,.variants .product-grid::-webkit-scrollbar{display:none}
  .companions .product-grid>*,.variants .product-grid>*{scroll-snap-align:start}
}
@media(max-width:700px) and (prefers-reduced-motion:reduce){header,.product-nav,body[data-page=product] .product-bar{transition:none}}

/* 26.10.2026 — studio samples, wall layout, try-on page, legal footer */
.product-photo.has-sample{background:radial-gradient(120% 90% at 50% 18%,#ffffff 0,#eef2f5 55%,#e2e8ed 100%)}
.product-photo.has-sample img{object-fit:contain;padding:7% 8% 6%;filter:drop-shadow(0 14px 14px #1b2b3b26)}
.specimen:has(img[src*="assets/samples/"]){background:radial-gradient(110% 80% at 50% 20%,#fff 0,#eef2f5 55%,#e1e7ec 100%)}
.specimen>img[src*="assets/samples/"]{padding:5%;filter:drop-shadow(0 22px 20px #1b2b3b2e)}
.photo-switch img[src*="assets/samples/"]{background:#eef2f5}

.wall{position:relative}
.wall-panel.is-repeat,.wall-panel.is-cover{background-repeat:repeat-y;background-size:100% auto}
.wall-panel.is-cover{background-size:cover;background-position:center}
.wall-panel+.wall-panel{box-shadow:inset 1px 0 0 #0000002b,inset 2px 0 0 #ffffff26}
.wall-light{position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,#ffffff24 0,transparent 38%,transparent 70%,#00000014 100%),linear-gradient(180deg,#ffffff14,transparent 30%,#0000000f)}
.wall-actions{display:flex;justify-content:center;margin-top:20px}

.tryon{padding-top:40px}
.tryon-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:40px;align-items:end;margin-bottom:28px}
.tryon-head h1{font-size:clamp(34px,3.6vw,54px)}
.tryon-head p{color:var(--muted);font-size:14px;line-height:1.75}
.tryon-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);gap:28px;align-items:start}
.tryon-view{position:sticky;top:calc(var(--head,86px) + 12px);min-width:0}
.tryon-room{min-height:120px}
.tryon-room.is-scene{aspect-ratio:1672/941}
.tryon-loading{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:13px}
.tryon.is-ready .tryon-loading{display:none}
.room-col.is-repeat{background-size:100% auto;background-repeat:repeat-y}
.room-col.is-stripes{background-repeat:no-repeat}
.tryon-caption{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg)}
.tryon-caption b{display:block;font-size:17px;font-weight:600;letter-spacing:-.01em}
.tryon-caption small{display:block;color:var(--muted);font-size:12px;margin-top:3px}
.tryon-caption .kind{margin-bottom:4px}
.tryon-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.tryon-actions .button{min-height:44px;padding:10px 16px;border-radius:var(--r-sm);white-space:nowrap;flex:none}
.tryon-actions .button[aria-pressed=true]{background:#e4ebfa;color:#244b9a;border-color:#b7c8ef}
.tryon-picker{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);padding:16px;min-width:0}
.tryon-groups{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.tryon-groups button{min-height:40px;padding:8px 13px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:13px;color:var(--ink)}
.tryon-groups button[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.tryon-search{display:block;min-width:0;margin-bottom:12px}
.tryon-search input{width:100%;min-height:44px;border-radius:var(--r-sm)}
.tryon-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:10px;max-height:min(62vh,640px);overflow:auto;padding:2px;overscroll-behavior:contain}
.tryon-swatch{display:flex;flex-direction:column;gap:6px;padding:0;background:none;text-align:left;color:var(--ink);font-size:11px;line-height:1.3;min-width:0}
.tryon-swatch img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--r-sm);border:1px solid #dde4ea;background:#eef2f5}
.tryon-swatch span{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.tryon-swatch[aria-selected=true] img{outline:3px solid var(--blue);outline-offset:1px}
.tryon-empty{color:var(--muted);font-size:13px;grid-column:1/-1}
.tryon-noscript{margin-top:16px}
.tryon-list{columns:3;font-size:13px;line-height:1.9}
@media(max-width:900px){
  .tryon-head{grid-template-columns:1fr;gap:12px;margin-bottom:18px}
  .tryon-layout{grid-template-columns:1fr;gap:14px}
  .tryon-view{position:static}
  .tryon-stick{position:sticky;top:73px;z-index:12;background:var(--paper);margin:0 -20px;padding:8px 20px 10px;box-shadow:0 10px 20px -18px #0b1c2c80;transition:top 260ms var(--ease-out)}
  .chrome-hidden .tryon-stick{top:0}
  .tryon-caption small{display:none}
  .tryon-view .room{border-radius:var(--r-lg)}
  .tryon-rooms{margin-bottom:8px}
  .tryon-caption{margin-top:8px;padding:10px 12px;flex-wrap:wrap}
  .tryon-caption b{font-size:15px}
  .tryon-actions .button{min-height:40px;padding:8px 12px;font-size:13px}
  .tryon-swatches{max-height:none;overflow:visible;grid-template-columns:repeat(auto-fill,minmax(76px,1fr))}
  .tryon-list{columns:1}
}
.footer-bottom .footer-legal{display:flex;gap:18px;flex-wrap:wrap}
.footer-bottom .footer-legal a{text-decoration:underline;text-underline-offset:3px}
/* finger-sized targets for the small text links (WCAG 2.2: at least 24 px) */
@media (pointer:coarse){.footer-bottom .footer-legal a{display:inline-block;padding:10px 0;margin-top:0}.breadcrumb a{display:inline-block;padding:8px 0;margin:-8px 0}}
.map-shell{display:grid}
.map-consent{display:grid;place-items:center;align-content:center;gap:16px;min-height:360px;padding:24px;text-align:center;background:linear-gradient(180deg,#eef2f5,#e3e9ee);border-radius:var(--r-lg)}
.map-consent p{max-width:380px;color:var(--muted);font-size:13px;line-height:1.7}
.legal-page{max-width:880px;padding-top:48px;padding-bottom:72px}
.legal-page h1{font-size:clamp(32px,3.4vw,48px);margin-bottom:16px}
.legal-intro{color:var(--muted);font-size:15px;line-height:1.75;margin-bottom:28px}
.legal-section{border-top:1px solid var(--line);padding:24px 0}
.legal-section h2{font-size:21px;margin-bottom:12px}
.legal-section p,.legal-section li{font-size:15px;line-height:1.8;color:#2c3a46}
.legal-section p+p{margin-top:10px}
.legal-section ul{margin:10px 0;padding-left:20px}
.legal-section a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.legal-requisites>div{display:grid;grid-template-columns:220px minmax(0,1fr);gap:16px;padding:10px 0;border-bottom:1px solid #e9eef2;font-size:14px}
.legal-requisites dt{color:var(--muted)}.legal-requisites dd{margin:0;overflow-wrap:anywhere}
.legal-edition{color:var(--muted);font-size:13px;margin-top:12px}
@media(max-width:700px){.legal-page{padding-top:28px}.legal-requisites>div{grid-template-columns:1fr;gap:2px}.legal-section h2{font-size:19px}.legal-section p,.legal-section li{font-size:14px}}
@media(max-width:700px){.product-photo.has-sample img{padding:5% 3% 3%}}
.product-photo.has-gpt{background:#eef2f5}
.product-photo.has-gpt img{object-fit:cover}
.specimen:has(img[src*="assets/gpt/"]){background:#eef2f5}
.specimen>img[src*="assets/gpt/"]{object-fit:contain}
