:root{--ink:#171916;--paper:#f7f5f0;--forest:#33483a;--sand:#d8cdbd;--line:rgba(23,25,22,.16);--white:#fff;--shell:min(1320px,calc(100vw - 48px))}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}body.nav-is-open{overflow:hidden}a{color:inherit;text-underline-offset:.18em}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.05;letter-spacing:-.035em}h1{font-size:clamp(3rem,7vw,7.7rem);font-weight:500}h2{font-size:clamp(2.2rem,4vw,4.8rem);font-weight:500}h3{font-size:clamp(1.6rem,2.5vw,2.6rem);font-weight:500}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.site-header{position:sticky;top:0;z-index:100;background:rgba(247,245,240,.92);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.site-header__inner{width:var(--shell);min-height:82px;margin:auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px}.site-brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none}.site-brand__mark{display:grid;place-items:center;width:44px;height:44px;color:#fff;background:var(--ink);font-weight:700}.site-brand__name{font-weight:600}.custom-logo{max-height:52px;width:auto}.primary-navigation{justify-self:center}.primary-navigation__list,.primary-navigation ul{display:flex;gap:28px;margin:0;padding:0;list-style:none}.primary-navigation a{text-decoration:none;font-size:.93rem}.nav-toggle{display:none}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:0 22px;color:#fff;background:var(--ink);border:1px solid var(--ink);text-decoration:none;font-size:.92rem;font-weight:600}.button--small{min-height:44px;padding-inline:18px}.button--light{color:var(--ink);background:#fff;border-color:#fff}.button--ghost-light{color:#fff;background:transparent;border-color:rgba(255,255,255,.75)}.hero{position:relative;min-height:calc(100svh - 82px);display:flex;align-items:flex-end;overflow:hidden;color:#fff;background:#2c312d}.hero__media{position:absolute;inset:0;background:linear-gradient(110deg,rgba(24,29,25,.2),rgba(24,29,25,.05)),radial-gradient(circle at 72% 28%,rgba(255,255,255,.16),transparent 30%),linear-gradient(145deg,#445449 0%,#8a7c69 48%,#272d29 100%)}.hero__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(12,15,13,.82),rgba(12,15,13,.08) 70%)}.hero__content{position:relative;z-index:2;width:var(--shell);margin:auto;padding:110px 0 76px}.hero h1{max-width:1100px;margin-bottom:26px}.hero__lead{max-width:660px;margin-bottom:36px;font-size:clamp(1.1rem,1.7vw,1.45rem);color:rgba(255,255,255,.84)}.hero__actions{display:flex;flex-wrap:wrap;gap:12px}.eyebrow{margin-bottom:18px;font-size:.72rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.section{width:var(--shell);margin:auto;padding:clamp(90px,11vw,170px) 0}.section--soft,.section--dark{width:100%;padding-left:max(24px,calc((100vw - 1320px)/2));padding-right:max(24px,calc((100vw - 1320px)/2))}.section--soft{background:#ece8df}.section--dark{color:#fff;background:var(--ink)}.intro{display:grid;grid-template-columns:1.5fr .7fr;gap:70px;align-items:end}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:64px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.choice-card{min-height:420px;display:flex;flex-direction:column;padding:clamp(28px,4vw,58px);border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none}.choice-card span{margin-bottom:auto}.choice-card p{max-width:500px;color:rgba(23,25,22,.72)}.choice-card strong{margin-top:28px}.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}.facts>div{min-height:210px;display:flex;flex-direction:column;justify-content:space-between;padding:28px;background:var(--paper)}.facts strong{font-size:clamp(2.6rem,5vw,5.2rem);font-weight:500;letter-spacing:-.05em}.content-shell{width:var(--shell);min-height:60vh;margin:auto;padding:110px 0 150px}.content-shell--narrow{max-width:900px}.archive-header{max-width:900px;margin-bottom:72px}.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 24px}.post-card a{display:block;text-decoration:none}.post-card__image,.post-card__placeholder{width:100%;aspect-ratio:4/3;margin-bottom:22px;object-fit:cover;background:linear-gradient(145deg,#9a8c78,#3d4a40)}.post-card h2{font-size:1.7rem}.entry-hero-image{width:100%;margin:48px 0}.entry-content{font-size:1.08rem}.site-footer{padding:80px max(24px,calc((100vw - 1320px)/2)) 28px;color:rgba(255,255,255,.76);background:#101210}.site-footer a{color:#fff}.site-footer__grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:60px}.site-footer__bottom{margin-top:70px;padding-top:24px;border-top:1px solid rgba(255,255,255,.14);font-size:.82rem}@media(max-width:1050px){.site-header__inner{grid-template-columns:1fr auto}.site-header__cta{display:none}.nav-toggle{display:inline-flex;min-height:44px;padding:0 16px;background:transparent;border:1px solid var(--line)}.primary-navigation{position:fixed;inset:82px 0 0;display:none;padding:38px 24px;background:var(--paper)}.primary-navigation.is-open{display:block}.primary-navigation__list,.primary-navigation ul{flex-direction:column;gap:18px}.primary-navigation a{font-size:clamp(1.7rem,5vw,3rem)}.intro{grid-template-columns:1fr}.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){:root{--shell:calc(100vw - 32px)}.site-brand__name{display:none}.hero{min-height:calc(100svh - 70px)}.hero__content{padding-bottom:38px}.hero__actions .button{width:100%}.choice-grid,.facts,.post-grid,.site-footer__grid{grid-template-columns:1fr}.choice-card{min-height:320px}.facts>div{min-height:150px}.content-shell{padding-top:72px}}
.site-brand{flex-direction:column;align-items:flex-start;gap:0;line-height:1;text-decoration:none}.site-brand__word{font-size:1.35rem;font-weight:700;letter-spacing:.16em}.site-brand__descriptor{margin-top:6px;font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(23,25,22,.65)}
.hero--photo{background-image:var(--hero-image);background-size:cover;background-position:center}.hero--photo .hero__overlay{background:linear-gradient(90deg,rgba(21,27,23,.72) 0%,rgba(21,27,23,.34) 48%,rgba(21,27,23,.08) 75%),linear-gradient(to top,rgba(14,18,15,.44),transparent 55%)}
.choice-grid--images{gap:20px;border:0}.choice-card--image{position:relative;overflow:hidden;min-height:620px;color:#fff;background-image:var(--card-image);background-size:cover;background-position:center;border:0}.choice-card--image>div{position:relative;z-index:2;margin-top:auto}.choice-card__shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(12,15,13,.78),rgba(12,15,13,.02) 68%)}.choice-card--image p{color:rgba(255,255,255,.82)}
.featured-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;margin-top:64px}.featured{grid-column:span 6;background:#f7f5f0}.featured--large{grid-column:span 12}.featured img{width:100%;aspect-ratio:16/10;object-fit:cover}.featured--large img{aspect-ratio:16/8}.featured__body{padding:26px 0 34px}.featured__body h3{margin-bottom:12px}.featured__body a,.text-link{font-weight:600}.featured--text{min-height:360px;display:flex;align-items:flex-end;border-top:1px solid var(--hd-line)}
.expertise__grid,.process__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:64px;background:var(--hd-line);border:1px solid var(--hd-line)}.expertise__grid>div,.process__grid>div{padding:30px;background:var(--hd-paper)}.expertise__grid span,.process__grid b{font-size:.72rem;letter-spacing:.14em}.expertise__grid h3,.process__grid h3{margin-top:80px;font-size:1.5rem}
.split-cta,.final-cta{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.split-cta>div{max-width:850px}.split-cta p:not(.eyebrow),.final-cta p{max-width:620px;color:rgba(255,255,255,.72)}
.realization-feature{display:grid;grid-template-columns:1.6fr .8fr;gap:50px;align-items:end;margin-top:60px}.realization-feature img{width:100%;aspect-ratio:16/10;object-fit:cover}.realization-feature h3{font-size:2.4rem}
.knowledge__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:60px}.knowledge__grid a{min-height:310px;padding:30px;border:1px solid var(--hd-line);text-decoration:none}.knowledge__grid span{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em}.knowledge__grid h3{margin-top:90px;font-size:1.6rem}
.commerce__inner{display:flex;justify-content:space-between;gap:50px;align-items:end;padding:70px;background:#e8e4db}.commerce__inner>div:first-child{max-width:800px}.commerce__inner>div:last-child{display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.about-hd{display:grid;grid-template-columns:.8fr 1.4fr;gap:70px;align-items:center}.about-hd img{width:100%;aspect-ratio:4/3;object-fit:cover}
.final-cta{display:block;text-align:center}.final-cta h2,.final-cta p{max-width:900px;margin-left:auto;margin-right:auto}.final-cta .button{margin-top:30px}
@media(max-width:900px){.featured,.featured--large{grid-column:span 12}.expertise__grid,.process__grid{grid-template-columns:repeat(2,1fr)}.realization-feature,.about-hd{grid-template-columns:1fr}.knowledge__grid{grid-template-columns:1fr}.commerce__inner,.split-cta{flex-direction:column;align-items:flex-start}.choice-card--image{min-height:500px}}
@media(max-width:620px){.expertise__grid,.process__grid{grid-template-columns:1fr}.choice-card--image{min-height:420px}.featured-grid{gap:10px}.commerce__inner{padding:36px 24px}.site-brand__descriptor{display:none}}

/* Dřevěné sauny 0.3 — wide editorial product system */
:root{--shell:min(1480px,calc(100vw - 7vw));--text-inset:clamp(28px,6vw,104px);--section-space:clamp(88px,9vw,150px)}
.section{padding:var(--section-space) 0}.section--wide{width:min(1680px,100%);padding-left:clamp(18px,2.6vw,48px);padding-right:clamp(18px,2.6vw,48px)}
.section__heading--inset{padding-left:clamp(0px,3vw,52px);max-width:1050px}.category-panels{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,32px);margin-top:clamp(48px,6vw,88px)}
.category-panel{position:relative;min-height:clamp(520px,62vw,780px);overflow:hidden;color:#fff;text-decoration:none}.category-panel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1)}.category-panel:hover img{transform:scale(1.035)}.category-panel__shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(13,17,14,.82),rgba(13,17,14,.05) 62%)}.category-panel__content{position:absolute;inset:auto 0 0;padding:clamp(30px,4vw,64px);z-index:2}.category-panel__content>span{font-size:.72rem;letter-spacing:.15em}.category-panel__content h3{margin:18px 0 14px;font-size:clamp(2.5rem,4.3vw,5.2rem)}.category-panel__content p{max-width:520px;color:rgba(255,255,255,.8)}.category-panel__content strong{display:inline-block;margin-top:20px}
.product-story{width:100%;display:grid;grid-template-columns:minmax(360px,42%) minmax(0,58%);min-height:clamp(590px,74vh,860px);background:#f2efe8}.product-story--reverse{grid-template-columns:minmax(0,58%) minmax(360px,42%);background:#fff}.product-story__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(56px,7vw,128px) var(--text-inset)}.product-story__copy h2{font-size:clamp(3.4rem,7vw,7.8rem);margin-bottom:26px}.product-story__lead{max-width:560px;font-size:clamp(1.05rem,1.3vw,1.35rem);color:rgba(23,25,22,.72)}.product-story__media{position:relative;overflow:hidden;min-height:100%}.product-story__media img{width:100%;height:112%;object-fit:cover;position:absolute;inset:-6% 0 0;will-change:transform}.product-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:32px 0 28px;font-size:.78rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase}.product-meta i{width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.45}.text-link{position:relative;display:inline-block;width:max-content;text-decoration:none;font-weight:650}.text-link:after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:1px;background:currentColor;transform-origin:right;transform:scaleX(.25);transition:transform .35s ease}.text-link:hover:after{transform-origin:left;transform:scaleX(1)}
.product-feature{position:relative;min-height:clamp(560px,68vh,820px);display:flex;align-items:flex-end;color:#fff;background-image:var(--feature-image);background-size:cover;background-position:center}.product-feature__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,18,15,.75),rgba(14,18,15,.1) 70%),linear-gradient(to top,rgba(14,18,15,.42),transparent 60%)}.product-feature__copy{position:relative;z-index:2;width:min(720px,90%);padding:clamp(56px,8vw,130px)}.product-feature__copy h2{font-size:clamp(3.5rem,7vw,7rem)}.product-feature__copy>p:not(.eyebrow):not(.product-meta){font-size:clamp(1.05rem,1.3vw,1.35rem);color:rgba(255,255,255,.82)}.product-meta--light{color:rgba(255,255,255,.88)}.text-link--light{color:#fff}
.product-band{width:min(1600px,calc(100vw - 4vw));margin:clamp(70px,10vw,160px) auto;display:grid;grid-template-columns:1.25fr .75fr;background:#e8e4db}.product-band__media{min-height:570px;overflow:hidden}.product-band__media img{width:100%;height:100%;object-fit:cover}.product-band__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(48px,6vw,96px)}.product-band__copy h2{font-size:clamp(3rem,6vw,6rem)}
.expertise__grid,.process__grid{gap:0}.expertise__grid>div,.process__grid>div{padding:clamp(28px,3vw,48px)}.split-cta{padding-top:clamp(80px,9vw,140px);padding-bottom:clamp(80px,9vw,140px)}.realization-feature{grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr);gap:clamp(40px,6vw,100px)}.realization-feature>div{padding-right:clamp(0px,3vw,50px)}.commerce__inner{padding:clamp(48px,7vw,100px)}.about-hd{gap:clamp(50px,8vw,120px)}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:980px){.product-story,.product-story--reverse{grid-template-columns:1fr;min-height:auto}.product-story--reverse .product-story__media{order:2}.product-story__media{min-height:62vw}.product-story__copy{padding:72px 8vw}.product-band{grid-template-columns:1fr}.product-band__media{min-height:60vw}.category-panel{min-height:560px}}
@media(max-width:720px){:root{--shell:calc(100vw - 32px)}.category-panels{grid-template-columns:1fr}.category-panel{min-height:520px}.product-story__media{min-height:78vw}.product-story__copy{padding:58px 24px}.product-story__copy h2{font-size:3.2rem}.product-feature{min-height:650px}.product-feature__copy{padding:48px 24px}.product-band{width:calc(100vw - 24px);margin:72px auto}.product-band__media{min-height:78vw}.product-band__copy{padding:48px 24px}.product-meta{font-size:.7rem;gap:9px}.realization-feature{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.category-panel img,.text-link:after{transition:none}.product-story__media img{transform:none!important}}


/* Dřevěné sauny 0.4 — balanced category system and product spacing */
.hd-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.55fr);gap:clamp(48px,8vw,140px);align-items:end;padding:0 clamp(0px,3vw,52px)}
.hd-intro h2{max-width:980px;margin-bottom:0}
.hd-intro>p:last-child{max-width:520px;margin-bottom:.4rem;font-size:clamp(1rem,1.25vw,1.2rem);color:rgba(23,25,22,.68)}
.category-showcase{padding-top:clamp(36px,4vw,70px)}
.category-showcase__heading{max-width:900px;margin:0 auto clamp(44px,5vw,76px);text-align:center}
.category-showcase__heading h2{font-size:clamp(2.2rem,4vw,4.8rem)}
.category-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,3fr) minmax(0,2fr);gap:clamp(16px,1.7vw,28px);align-items:stretch}
.category-tile{min-width:0;display:grid;grid-template-rows:clamp(360px,36vw,610px) 190px;color:inherit;text-decoration:none}
.category-tile__image{display:block;overflow:hidden;background:#e5e0d6}
.category-tile__image img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1),filter .4s ease}
.category-tile:hover .category-tile__image img{transform:scale(1.025);filter:saturate(1.03)}
.category-tile__body{display:flex;flex-direction:column;align-items:center;text-align:center;padding:30px 12px 12px}
.category-tile__body strong{font-size:clamp(1.1rem,1.55vw,1.55rem);font-weight:570;letter-spacing:-.02em}
.category-tile__body small{max-width:270px;min-height:3.2em;margin-top:10px;color:rgba(23,25,22,.62);font-size:.94rem;line-height:1.55}
.category-tile__body em{position:relative;margin-top:auto;padding-bottom:4px;font-size:.86rem;font-style:normal;font-weight:650}
.category-tile__body em:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(.32);transition:transform .3s ease}
.category-tile:hover .category-tile__body em:after{transform:scaleX(1)}
.product-story+.product-story,.product-story+.product-feature,.product-feature+.product-story{margin-top:clamp(42px,5vw,86px)}
.product-band{margin-top:clamp(80px,9vw,150px);margin-bottom:clamp(90px,10vw,170px)}
@media(max-width:980px){.hd-intro{grid-template-columns:1fr}.category-grid{grid-template-columns:1fr 1fr}.category-tile--saunas{grid-column:1/-1}.category-tile{grid-template-rows:520px 180px}.category-tile--saunas{grid-template-rows:620px 180px}}
@media(max-width:720px){.hd-intro{padding:0}.category-grid{grid-template-columns:1fr;gap:28px}.category-tile,.category-tile--saunas{grid-column:auto;grid-template-rows:min(92vw,520px) 164px}.category-showcase__heading{text-align:left}.category-tile__body{padding-top:24px}.product-story+.product-story,.product-story+.product-feature,.product-feature+.product-story{margin-top:28px}}
@media(prefers-reduced-motion:reduce){.category-tile__image img,.category-tile__body em:after{transition:none}}


/* Dřevěné sauny 0.5 — complete homepage system */
:root{
  --hd-bg:#f3f0e9;
  --hd-paper:#faf8f3;
  --hd-ink:#171916;
  --hd-green:#2c3e36;
  --hd-muted:rgba(23,25,22,.64);
  --hd-gap:clamp(18px,1.7vw,30px);
  --hd-shell:min(1480px,calc(100vw - 7vw));
}

/* Homepage: vstup do společného průvodce výběrem. */
.home-selection-guide{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);
  gap:8vw;
  align-items:end;
  padding:clamp(72px,8vw,126px) max(6vw,calc((100vw - 1340px)/2));
  background:#243c32;
  color:#fff;
}
.home-selection-guide__copy{max-width:780px}
.home-selection-guide .eyebrow{color:#c1cec7}
.home-selection-guide h2{max-width:760px;margin:18px 0 25px;font-size:clamp(3rem,5.6vw,5.7rem);font-weight:500;letter-spacing:-.065em;line-height:.92}
.home-selection-guide__copy>p:not(.eyebrow){max-width:660px;margin:0 0 30px;color:#cbd4cf;font-size:1.05rem;line-height:1.65}
.home-selection-guide__steps{display:grid;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.18);list-style:none}
.home-selection-guide__steps li{display:grid;grid-template-columns:42px 1fr;gap:8px 16px;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.18)}
.home-selection-guide__steps span{grid-row:1/3;color:#aebdb5;font-size:.7rem;letter-spacing:.12em}
.home-selection-guide__steps strong{font-size:1rem}
.home-selection-guide__steps small{color:#c5cfca;font-size:.86rem;line-height:1.5}
@media(max-width:900px){.home-selection-guide{grid-template-columns:1fr;gap:56px}}
@media(max-width:640px){
  .home-selection-guide{grid-template-columns:1fr;gap:42px;padding:68px 22px}
  .home-selection-guide h2{font-size:clamp(2.85rem,13vw,4rem)}
}

/* 0.40.41 — compact, aligned material explorer for Fiberglass External. */
@media (min-width: 1101px) {
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer {
    padding-top: clamp(56px, 4.8vw, 80px);
    padding-bottom: clamp(56px, 4.8vw, 80px);
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__header {
    width: min(100%, 1280px);
    margin: 0 auto 32px;
    grid-template-columns: minmax(0, 1.38fr) minmax(340px, 0.62fr);
    gap: clamp(48px, 6vw, 100px);
    align-items: end;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__header h2 {
    max-width: 820px;
    font-size: clamp(3.15rem, 4vw, 4.4rem);
    line-height: 0.94;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__header > p {
    max-width: 430px;
    padding-bottom: 0.15em;
    font-size: 0.96rem;
    line-height: 1.55;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__layout {
    width: min(100%, 1280px);
    margin-inline: auto;
    grid-template-columns: minmax(0, 0.92fr) minmax(500px, 1.08fr);
    align-items: stretch;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview {
    height: 460px;
    min-height: 0;
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__controls {
    height: 460px;
    min-height: 0;
    grid-template-rows: 58px minmax(0, 1fr);
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__image-wrap {
    height: auto;
    min-height: 0;
    padding: 20px 28px;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview:not([data-material-kind="cladding"]) .tub-material-explorer__image {
    width: 230px !important;
    height: 230px !important;
    max-width: 230px !important;
    max-height: 230px !important;
    aspect-ratio: 1;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__tabs button {
    min-height: 58px;
    padding: 0 22px;
    font-size: 0.86rem;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__options {
    padding: 12px;
    gap: 10px;
    grid-auto-rows: minmax(64px, 1fr);
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__choice {
    min-height: 0;
    padding: 8px 10px;
    grid-template-columns: 46px minmax(0, 1fr);
    column-gap: 10px;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__choice[data-material-kind="liner"] img {
    width: 46px;
    height: 46px;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__choice strong {
    font-size: 0.8rem;
    line-height: 1.2;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__choice small {
    margin-top: 3px;
    font-size: 0.64rem;
    line-height: 1.25;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview-copy {
    min-height: 0;
    padding: 16px 20px 18px;
    gap: 12px;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview-copy h3 {
    font-size: clamp(1.3rem, 1.7vw, 1.55rem);
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview-copy p {
    font-size: 0.78rem;
    line-height: 1.45;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__note {
    width: min(100%, 1280px);
    margin-inline: auto;
  }
}

/* 0.48.0 — kompaktní jazykový přepínač a bezpečný mezistupeň pro tablet. */
.menu-item-language{
  padding-left:18px;
  border-left:1px solid var(--line);
}
.menu-item-language a{
  font-weight:700;
  letter-spacing:.08em;
}
@media(max-width:1100px) and (min-width:761px){
  .site-header__inner{gap:16px}
  .primary-navigation__list,.primary-navigation ul{gap:14px}
  .primary-navigation a{font-size:.82rem}
  .menu-item-language{padding-left:10px}
  .site-header__cta{padding-inline:14px}
}
@media(max-width:980px) and (min-width:761px){
  .site-header__inner{grid-template-columns:auto 1fr}
  .site-header__cta{display:none}
  .primary-navigation{justify-self:end}
}
@media(max-width:760px){
  .menu-item-language{padding-left:0;border-left:0}
}

@media (min-width: 721px) and (max-width: 1100px) {
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__controls {
    height: auto;
    min-height: 0;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__image-wrap {
    height: 320px;
    min-height: 320px;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview:not([data-material-kind="cladding"]) .tub-material-explorer__image {
    width: 220px !important;
    height: 220px !important;
    max-width: 220px !important;
    max-height: 220px !important;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview-copy {
    min-height: 0;
  }
}

@media (max-width: 720px) {
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview:not([data-material-kind="cladding"]) .tub-material-explorer__image {
    width: min(66%, 240px) !important;
    height: auto !important;
    max-width: 240px !important;
    max-height: 240px !important;
  }
}

/* 0.44.0 — Poradna: rozhodovací centrum, archiv a čitelné články */
.advice-hub,.advice-detail{--advice-paper:#f2efe7;--advice-soft:#e7e2d7;--advice-ink:#171916;--advice-green:#273a31;--advice-line:rgba(23,25,22,.15);background:var(--advice-paper);color:var(--advice-ink)}
.advice-shell{width:min(1480px,calc(100vw - 7vw));margin-inline:auto}
.advice-hub .sauna-hub-breadcrumbs,.advice-detail .sauna-hub-breadcrumbs{padding-top:26px;padding-bottom:26px}
.advice-hub .advice-hero{padding-top:clamp(34px,4vw,62px);padding-bottom:clamp(58px,6vw,92px)}
.advice-hub .advice-hero__grid{grid-template-columns:minmax(0,.98fr) minmax(520px,1.02fr);gap:clamp(46px,5vw,82px);align-items:center}
.advice-hero .sauna-hub-hero__copy h1{max-width:760px;margin-bottom:24px;font-size:clamp(3.8rem,4.85vw,6rem);line-height:.95}
.advice-hero .catalog-hero-media{height:clamp(560px,60svh,690px);min-height:0;grid-template-rows:minmax(0,1fr) 128px;align-self:center}
.advice-hub .advice-hero__facts{margin-top:32px;background:rgba(255,255,255,.24)}
.advice-hub .advice-hero__facts li{min-height:76px;padding:14px 17px}
.advice-topic-nav{position:sticky;z-index:24;top:82px;border-top:1px solid var(--advice-line);border-bottom:1px solid var(--advice-line);background:rgba(248,246,240,.96);backdrop-filter:blur(14px)}
.advice-topic-nav__inner{width:min(1480px,calc(100vw - 7vw));display:flex;gap:30px;margin:auto;overflow-x:auto;scrollbar-width:none}
.advice-topic-nav__inner::-webkit-scrollbar{display:none}
.advice-topic-nav a{position:relative;flex:0 0 auto;padding:22px 0;color:rgba(23,25,22,.68);font-size:.88rem;font-weight:620;text-decoration:none;white-space:nowrap}
.advice-topic-nav a:after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--advice-green);transform:scaleX(0);transition:transform .25s ease}
.advice-topic-nav a:hover,.advice-topic-nav a.is-active{color:var(--advice-ink)}
.advice-topic-nav a.is-active:after,.advice-topic-nav a:hover:after{transform:scaleX(1)}
.advice-start,.advice-listing,.advice-related{padding-top:clamp(70px,7vw,112px);padding-bottom:clamp(70px,7vw,112px)}
.advice-section-heading{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(300px,.52fr);gap:clamp(34px,5vw,82px);align-items:end;margin-bottom:clamp(38px,4vw,60px)}
.advice-section-heading h2{max-width:820px;margin-bottom:0;font-size:clamp(2.8rem,4.25vw,5rem);line-height:.98}
.advice-section-heading>p{max-width:460px;margin:0 0 .35rem;color:rgba(23,25,22,.67);font-size:1rem;line-height:1.6}
.advice-section-heading>a{align-self:end;justify-self:end;margin-bottom:.5rem}
.advice-start__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2vw,30px)}
.advice-feature{min-width:0;display:flex;flex-direction:column;background:#faf8f3;border:1px solid var(--advice-line)}
.advice-feature__media{display:block;min-height:0;aspect-ratio:16/10;overflow:hidden;background:#d7d1c5}
.advice-feature__media img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.advice-feature:hover .advice-feature__media img{transform:scale(1.025)}
.advice-feature__body{display:flex;flex:1;flex-direction:column;padding:clamp(23px,2.1vw,34px)}
.advice-feature__body>span{display:block;margin-bottom:16px;color:rgba(23,25,22,.48);font-size:.7rem;font-weight:700;letter-spacing:.14em}
.advice-feature__body h3{margin:0 0 17px;font-size:clamp(1.65rem,1.85vw,2.25rem);line-height:1.06}
.advice-feature__body h3 a,.advice-feature__body>a{color:inherit;text-decoration:none}
.advice-feature__body p{max-width:650px;margin:0 0 22px;color:rgba(23,25,22,.66);line-height:1.55}
.advice-feature__body>a{display:inline-block;align-self:flex-start;margin-top:auto;font-size:.88rem;font-weight:700;border-bottom:1px solid currentColor}
.advice-listing{padding-top:clamp(70px,7vw,110px);border-top:1px solid var(--advice-line)}
.advice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(54px,5vw,76px) clamp(20px,2.2vw,34px)}
.advice-card{min-width:0;display:flex;flex-direction:column}
.advice-card__image{display:block;aspect-ratio:16/10;overflow:hidden;background:#d8d3c8}
.advice-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1),filter .3s ease}
.advice-card:hover .advice-card__image img{transform:scale(1.03);filter:saturate(1.04)}
.advice-card__body{display:flex;flex:1;flex-direction:column;padding-top:21px}
.advice-card__meta{display:flex;justify-content:space-between;gap:14px;margin-bottom:14px;color:rgba(23,25,22,.52);font-size:.68rem;font-weight:680;letter-spacing:.07em;text-transform:uppercase}
.advice-card__meta a{color:var(--advice-green);text-decoration:none}
.advice-card h2{margin:0;font-size:clamp(1.55rem,1.8vw,2rem);line-height:1.08}
.advice-card h2 a{color:inherit;text-decoration:none}
.advice-card__body>p{display:-webkit-box;min-height:0;margin:15px 0 22px;overflow:hidden;color:rgba(23,25,22,.65);font-size:.93rem;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.advice-card__link{display:inline-block;align-self:flex-start;margin-top:auto;color:inherit;font-size:.85rem;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor}
.advice-pagination{margin-top:clamp(58px,6vw,86px);padding-top:24px;border-top:1px solid var(--advice-line)}
.advice-pagination .nav-links{display:flex;align-items:center;justify-content:center;gap:8px}
.advice-pagination a,.advice-pagination span{display:grid;min-width:44px;height:44px;padding:0 12px;place-items:center;color:inherit;text-decoration:none;border:1px solid var(--advice-line)}
.advice-pagination .current{color:#fff;background:var(--advice-green)}
.advice-empty{max-width:780px;padding:clamp(42px,6vw,90px);background:#faf8f3;border:1px solid var(--advice-line)}
.advice-empty h2{font-size:clamp(2.3rem,4vw,4.4rem)}
.advice-empty .button{margin-top:20px}
.advice-conversion,.advice-inline-cta{color:#fff;background:var(--advice-green)}
.advice-conversion__inner,.advice-inline-cta__inner{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.45fr);gap:clamp(48px,7vw,110px);align-items:center;padding-top:clamp(72px,7vw,110px);padding-bottom:clamp(72px,7vw,110px)}
.advice-conversion h2,.advice-inline-cta h2{max-width:820px;margin-bottom:24px;font-size:clamp(2.9rem,4.4vw,5rem);line-height:.98}
.advice-conversion p,.advice-inline-cta p{max-width:720px;color:rgba(255,255,255,.72)}
.advice-conversion__inner>div:last-child{display:flex;flex-direction:column;align-items:stretch;gap:12px}
.button--outline-light{color:#fff!important;background:transparent!important;border:1px solid rgba(255,255,255,.42)!important}
.advice-conversion__link{margin-top:14px;color:#fff;text-align:center;text-decoration:none}

/* Detail článku */
.advice-detail-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr);gap:clamp(48px,7vw,120px);align-items:center;padding-top:clamp(40px,5vw,80px);padding-bottom:clamp(70px,8vw,130px)}
.advice-detail-hero__copy{padding-left:clamp(0px,3vw,48px)}
.advice-detail-hero__topic{display:inline-block;margin-bottom:28px;color:var(--advice-green);font-size:.74rem;font-weight:750;letter-spacing:.14em;text-decoration:none;text-transform:uppercase}
.advice-detail-hero h1{max-width:760px;font-size:clamp(3.7rem,5.6vw,7rem);line-height:.93}
.advice-detail-hero__lead{max-width:690px;margin-top:28px;color:rgba(23,25,22,.67);font-size:clamp(1.05rem,1.35vw,1.3rem)}
.advice-detail-hero__meta{display:flex;flex-wrap:wrap;gap:14px 28px;margin-top:34px;color:rgba(23,25,22,.56);font-size:.76rem;font-weight:650;text-transform:uppercase;letter-spacing:.06em}
.advice-detail-hero__media{min-height:clamp(520px,58vw,780px);overflow:hidden;background:#d8d3c8}
.advice-detail-hero__media img{width:100%;height:100%;object-fit:cover}
.advice-status-note{display:flex;gap:24px;margin-bottom:0;padding:22px 28px;background:#e4dac7;border:1px solid rgba(91,67,38,.18)}
.advice-status-note strong{flex:0 0 auto}
.advice-status-note span{color:rgba(23,25,22,.7)}
.advice-detail__layout{display:grid;grid-template-columns:minmax(220px,.32fr) minmax(0,.9fr) minmax(0,.25fr);gap:clamp(40px,6vw,100px);padding-top:clamp(74px,8vw,130px);padding-bottom:clamp(80px,9vw,150px)}
.advice-toc{grid-column:1}
.advice-toc__inner{position:sticky;top:105px;padding-top:18px;border-top:2px solid var(--advice-green)}
.advice-toc__inner>strong{font-size:.75rem;letter-spacing:.13em;text-transform:uppercase}
.advice-toc ol{display:grid;gap:11px;margin:22px 0 30px;padding:0;list-style:none;counter-reset:advice-toc}
.advice-toc li{counter-increment:advice-toc}
.advice-toc li a{display:grid;grid-template-columns:24px 1fr;gap:8px;color:rgba(23,25,22,.67);font-size:.84rem;line-height:1.35;text-decoration:none}
.advice-toc li a:before{content:counter(advice-toc,decimal-leading-zero);color:rgba(23,25,22,.38);font-size:.66rem;font-weight:700}
.advice-toc li a:hover{color:var(--advice-ink)}
.advice-toc__back{display:inline-block;color:inherit;font-size:.8rem;font-weight:650;text-decoration:none}
.advice-entry{grid-column:2;min-width:0}
.advice-health-note{margin-bottom:46px;padding:24px 28px;background:#e3e8e1;border-left:3px solid var(--advice-green)}
.advice-health-note strong{font-size:.8rem;letter-spacing:.09em;text-transform:uppercase}
.advice-health-note p{margin:8px 0 0;color:rgba(23,25,22,.7);font-size:.92rem}
.advice-entry-content{font-size:clamp(1.03rem,1.15vw,1.17rem);line-height:1.78}
.advice-entry-content>*:first-child{margin-top:0}
.advice-entry-content p{margin:0 0 1.45em;color:rgba(23,25,22,.78)}
.advice-entry-content h2,.advice-entry-content h3{scroll-margin-top:115px;color:var(--advice-ink)}
.advice-entry-content h2{margin:2.15em 0 .72em;font-size:clamp(2.25rem,3.8vw,4.2rem);line-height:1}
.advice-entry-content h3{margin:1.9em 0 .65em;font-size:clamp(1.5rem,2.2vw,2.35rem);line-height:1.08}
.advice-entry-content h4{margin:1.7em 0 .6em;font-size:1.25rem}
.advice-entry-content a{color:#244e3c;text-decoration-thickness:1px;text-underline-offset:3px}
.advice-entry-content ul,.advice-entry-content ol{display:grid;gap:.65em;margin:1.3em 0 1.7em;padding-left:1.4em;color:rgba(23,25,22,.78)}
.advice-entry-content blockquote{margin:2.2em 0;padding:28px clamp(26px,4vw,48px);background:#e7e2d7;border-left:3px solid var(--advice-green)}
.advice-entry-content blockquote p:last-child{margin-bottom:0}
.advice-entry-content img{max-width:100%;height:auto}
.advice-entry-content figure{max-width:100%;margin:2.2em 0}
.advice-entry-content figcaption{margin-top:10px;color:rgba(23,25,22,.53);font-size:.78rem;text-align:center}
.advice-entry-content table{width:100%;min-width:620px;border-collapse:collapse;background:#faf8f3}
.advice-entry-content th,.advice-entry-content td{padding:15px 18px;text-align:left;border:1px solid var(--advice-line);vertical-align:top}
.advice-entry-content th{background:var(--advice-green);color:#fff}
.advice-entry-content .wp-block-table,.advice-entry-content .ds-blog-table-wrap{max-width:100%;overflow-x:auto}
.advice-entry-content iframe{max-width:100%}
.advice-entry-content .ds-blog-heater-guide{max-width:none;padding:0}
.advice-entry-content .ds-blog-heater-guide h1{display:none}
.advice-entry-content .ds-blog-heater-guide h2{font-size:clamp(2.25rem,3.8vw,4.2rem)}
.advice-entry-content .ds-blog-heater-guide p{font-size:inherit}
.advice-entry__footer{display:flex;flex-wrap:wrap;gap:16px 30px;margin-top:70px;padding-top:20px;color:rgba(23,25,22,.54);font-size:.75rem;border-top:1px solid var(--advice-line)}
.advice-inline-cta__inner{grid-template-columns:minmax(0,1fr) auto;align-items:center}
.advice-inline-cta h2{font-size:clamp(2.8rem,4.7vw,5.4rem)}
.advice-related{background:var(--advice-paper)}

@media(max-width:1120px){
  .advice-hub .advice-hero__grid{grid-template-columns:1fr;gap:42px}.advice-hero .catalog-hero-media{height:620px}
  .advice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .advice-detail-hero{grid-template-columns:1fr}.advice-detail-hero__copy{padding:0}.advice-detail-hero__media{min-height:min(75vw,720px)}
  .advice-detail__layout{grid-template-columns:220px minmax(0,1fr);gap:50px}.advice-entry{grid-column:2}
  .advice-start__grid{grid-template-columns:1fr 1fr}.advice-feature:last-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.advice-feature:last-child .advice-feature__media{height:100%;aspect-ratio:auto}
}
@media(max-width:760px){
  .advice-shell,.advice-topic-nav__inner{width:calc(100vw - 32px)}
  .advice-topic-nav{top:72px}
  .advice-hub .advice-hero{padding-top:26px;padding-bottom:54px}.advice-hero .sauna-hub-hero__copy h1{font-size:clamp(3.1rem,13.5vw,4.35rem)}.advice-hero .catalog-hero-media{height:auto;min-height:0}
  .advice-hub .advice-hero__facts{display:grid;grid-template-columns:1fr 1fr}
  .advice-topic-nav__inner{gap:24px}.advice-topic-nav a{padding:18px 0}
  .advice-start,.advice-listing,.advice-related{padding-top:64px;padding-bottom:64px}.advice-section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:34px}.advice-section-heading h2{font-size:clamp(2.5rem,10.8vw,3.65rem)}.advice-section-heading>a{justify-self:start}
  .advice-start__grid,.advice-grid{grid-template-columns:1fr}.advice-feature:last-child{grid-column:auto;display:flex}.advice-feature:last-child .advice-feature__media,.advice-feature__media{height:auto;min-height:0;aspect-ratio:16/10}.advice-feature__body h3{font-size:1.85rem}
  .advice-card__body>p{min-height:0}.advice-card h2{font-size:1.7rem}
  .advice-conversion__inner,.advice-inline-cta__inner{grid-template-columns:1fr;align-items:start}.advice-conversion h2,.advice-inline-cta h2{font-size:clamp(2.8rem,12vw,4.5rem)}
  .advice-detail-hero{gap:38px;padding-top:34px}.advice-detail-hero h1{font-size:clamp(3.1rem,14vw,5rem)}.advice-detail-hero__media{min-height:92vw}
  .advice-status-note{flex-direction:column;gap:8px;padding:20px}
  .advice-detail__layout{grid-template-columns:1fr;padding-top:62px}.advice-toc,.advice-entry{grid-column:1}.advice-toc__inner{position:static}.advice-toc ol{grid-template-columns:1fr 1fr}.advice-entry-content h2{font-size:clamp(2.2rem,10vw,3.35rem)}
  .advice-inline-cta__inner{gap:30px}.advice-related{padding-top:84px}
}
@media(max-width:480px){.advice-toc ol{grid-template-columns:1fr}.advice-card__meta{align-items:flex-start;flex-direction:column;gap:6px}.advice-hero__facts{grid-template-columns:1fr}.advice-entry-content{font-size:1rem}.advice-entry-content table{min-width:560px}}
@media(prefers-reduced-motion:reduce){.advice-feature__media img,.advice-card__image img,.advice-topic-nav a:after{transition:none}}

/* 0.43.0 — designová mapa, archiv a případové studie realizací */
.realizations-page,.realization-detail{--realization-forest:#263b31;--realization-moss:#6f806f;--realization-paper:#f5f2eb;--realization-line:rgba(23,25,22,.16);background:var(--realization-paper)}
.realizations-shell{width:min(1460px,calc(100vw - 7vw));margin-inline:auto}
.realizations-hero{position:relative;min-height:clamp(720px,86svh,960px);display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;color:#fff;background:#2c382f var(--realizations-hero) center/cover no-repeat}
.realizations-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,14,11,.86) 0%,rgba(9,14,11,.56) 42%,rgba(9,14,11,.08) 76%),linear-gradient(0deg,rgba(9,14,11,.78),transparent 53%)}
.realizations-hero__content{position:relative;z-index:1;padding:clamp(100px,12vw,190px) 0 clamp(65px,7vw,105px)}
.realizations-hero h1{max-width:1050px;margin:0 0 28px;font-size:clamp(4rem,7.6vw,8.4rem);line-height:.91}
.realizations-hero__lead{max-width:720px;margin:0 0 34px;color:rgba(255,255,255,.82);font-size:clamp(1.05rem,1.35vw,1.34rem)}
.realizations-hero__stats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.3)}
.realizations-hero__stats>div{display:flex;align-items:baseline;gap:18px;min-height:120px;padding:28px 36px;border-right:1px solid rgba(255,255,255,.22)}
.realizations-hero__stats>div:first-child{padding-left:0}.realizations-hero__stats>div:last-child{border-right:0}
.realizations-hero__stats strong{font-size:clamp(2.5rem,4vw,4.6rem);font-weight:500;line-height:1;letter-spacing:-.06em}.realizations-hero__stats span{max-width:150px;color:rgba(255,255,255,.72);font-size:.8rem;line-height:1.45}
.realizations-intro{padding:clamp(100px,12vw,190px) 0}
.realizations-intro__grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.45fr);gap:clamp(60px,10vw,170px);align-items:end}
.realizations-intro h2{max-width:970px;margin:0;font-size:clamp(3.2rem,5.9vw,6.7rem);line-height:.95}
.realizations-intro__grid>p{max-width:500px;margin:0;color:var(--hd-muted);font-size:1.08rem}
.realizations-map-section{padding:clamp(86px,10vw,150px) 0;background:#e9e5dc}
.realizations-map-section__header,.realizations-selected__header{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.5fr);gap:clamp(50px,9vw,145px);align-items:end}
.realizations-map-section__header h2,.realizations-selected__header h2,.realization-gallery h2,.realization-facts h2,.realization-related h2{max-width:950px;margin:0;font-size:clamp(3rem,5.2vw,6rem);line-height:.95}
.realizations-map-section__header>p,.realizations-selected__header>p{max-width:480px;margin:0;color:rgba(23,25,22,.66)}
.realizations-filters{display:grid;grid-template-columns:minmax(420px,1fr) minmax(190px,.28fr) minmax(170px,.24fr) auto;gap:10px;align-items:end;margin-top:clamp(46px,6vw,78px);padding:14px;background:rgba(255,255,255,.58);border:1px solid var(--realization-line)}
.realizations-filters__types{display:flex;min-width:0;gap:2px}.realizations-filters button,.realizations-filters select{min-height:48px;border:1px solid transparent;background:transparent;color:var(--hd-ink);font:inherit;font-size:.82rem;font-weight:650;cursor:pointer}.realizations-filters__types button{flex:1;padding:0 12px}.realizations-filters__types button:hover,.realizations-filters__types button.is-active{color:#fff;background:var(--realization-forest)}
.realizations-filters button:focus-visible,.realizations-filters select:focus-visible,.realization-gallery__item:focus-visible,.realization-lightbox button:focus-visible{outline:3px solid #a9823d;outline-offset:3px}
.realizations-filters label{display:grid;gap:5px;color:rgba(23,25,22,.58);font-size:.64rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.realizations-filters select{width:100%;padding:0 38px 0 12px;border-color:var(--realization-line);background:#f7f4ed}.realizations-filters__reset{padding-inline:14px!important;text-decoration:underline;text-underline-offset:4px}
.realizations-map-meta{display:flex;justify-content:space-between;align-items:center;margin:20px 0 12px;color:rgba(23,25,22,.58);font-size:.78rem}.realizations-map-meta p{margin:0}.realizations-map-meta strong{color:var(--hd-ink);font-size:1rem}
.realizations-map-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,390px);min-height:690px;background:var(--realization-forest)}
.realizations-map{z-index:0;min-height:690px;background:#dcd8cf;outline-offset:4px}.realizations-map:focus-visible{outline:3px solid #a9823d}
.realizations-map .leaflet-control-zoom{margin:0 18px 18px 0;border:0;box-shadow:none}.realizations-map .leaflet-control-zoom a{display:grid;place-items:center;width:46px;height:46px;color:var(--realization-forest);background:rgba(250,248,243,.94);border:0;border-bottom:1px solid var(--realization-line);font:400 24px/1 sans-serif}.realizations-map .leaflet-control-zoom a:hover{background:#fff}.realizations-map .leaflet-control-zoom a:first-child,.realizations-map .leaflet-control-zoom a:last-child{border-radius:0}
.realizations-map-attribution{margin:0 0 12px 12px;padding:5px 8px;color:rgba(23,25,22,.56);background:rgba(250,248,243,.82);font-size:10px;line-height:1}.realizations-country-label{background:transparent;border:0}.realizations-country-label span{display:block;color:rgba(44,62,54,.35);font-size:9px;font-weight:750;letter-spacing:.14em;text-align:center;white-space:nowrap}
.realizations-marker-wrap,.realizations-cluster-wrap{background:transparent;border:0}.realizations-marker{position:relative;display:block;width:30px;height:30px;border:6px solid #fff;border-radius:50% 50% 50% 3px;background:var(--realization-forest);box-shadow:0 8px 22px rgba(21,27,23,.25);transform:rotate(-45deg);transition:transform .2s ease,box-shadow .2s ease}.realizations-marker i{position:absolute;inset:7px;border-radius:50%;background:#fff}.realizations-marker--hot-tub{background:#9b7045}.realizations-marker--wellness{background:#6e7863}.realizations-marker-wrap:hover .realizations-marker,.realizations-marker-wrap.is-selected .realizations-marker{box-shadow:0 8px 25px rgba(21,27,23,.42);transform:rotate(-45deg) scale(1.18)}.realizations-marker-wrap:focus-visible .realizations-marker{outline:3px solid #a9823d;outline-offset:3px}
.realizations-cluster{display:grid;place-items:center;width:48px;height:48px;color:#fff;background:var(--realization-forest);border:6px solid rgba(255,255,255,.86);border-radius:50%;box-shadow:0 8px 22px rgba(21,27,23,.25);font-size:.8rem;font-weight:750}
.realizations-map-card{display:flex;min-width:0;color:#fff;background:var(--realization-forest)}.realizations-map-card__empty{align-self:flex-end;padding:clamp(35px,4vw,58px)}.realizations-map-card__index{display:inline-grid;place-items:center;width:72px;height:72px;margin-bottom:90px;border:1px solid rgba(255,255,255,.35);border-radius:50%;font-size:.65rem;letter-spacing:.13em}.realizations-map-card h3{margin:0 0 18px;font-size:clamp(2rem,2.7vw,3.1rem)}.realizations-map-card p{color:rgba(255,255,255,.66)}.realizations-map-card__content{display:grid;width:100%;grid-template-rows:290px 1fr}.realizations-map-card__content>img{width:100%;height:100%;object-fit:cover}.realizations-map-card__content>div{display:flex;flex-direction:column;padding:32px}.realizations-map-card__content .eyebrow{color:rgba(255,255,255,.58)}.realizations-map-card__content .text-link{margin-top:auto;color:#fff}.realizations-map-noscript{padding:18px;background:#fff4cb}
.realizations-selected{padding:clamp(105px,12vw,185px) 0}.realizations-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(60px,7vw,112px) clamp(22px,2.3vw,38px);margin-top:clamp(60px,8vw,115px)}.realizations-card--lead{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(340px,.5fr);gap:clamp(40px,6vw,95px);align-items:end}.realizations-card__media{display:block;overflow:hidden;background:#ddd6ca}.realizations-card__media img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.realizations-card--lead .realizations-card__media img{aspect-ratio:16/9}.realizations-card:hover .realizations-card__media img{transform:scale(1.02)}.realizations-card__body{padding-top:25px}.realizations-card--lead .realizations-card__body{padding:0 0 8px}.realizations-card__meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:20px;color:rgba(23,25,22,.56);font-size:.67rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.realizations-card__meta span+span:before{content:"·";margin-right:18px}.realizations-card h3{margin:0 0 14px;font-size:clamp(2rem,3.4vw,4rem)}.realizations-card h3 a{text-decoration:none}.realizations-card__body>p:not(.realizations-card__meta){max-width:620px;color:var(--hd-muted)}.realizations-card .text-link{margin-top:12px}
.realizations-method{padding:clamp(100px,11vw,170px) 0;color:#fff;background:#18221d}.realizations-method header{max-width:960px}.realizations-method h2{font-size:clamp(3.3rem,6vw,6.7rem)}.realizations-method__grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(55px,7vw,100px);border-top:1px solid rgba(255,255,255,.2);border-left:1px solid rgba(255,255,255,.2)}.realizations-method__grid article{min-height:360px;display:flex;flex-direction:column;padding:30px;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.realizations-method__grid span{font-size:.68rem;letter-spacing:.14em;color:rgba(255,255,255,.5)}.realizations-method__grid h3{margin:auto 0 18px;font-size:1.55rem}.realizations-method__grid p{margin:0;color:rgba(255,255,255,.62);font-size:.93rem}
.realizations-cta,.realization-next-step{padding:clamp(90px,10vw,150px) 0;color:#fff;background:#315044}.realizations-cta__inner,.realization-next-step__inner{display:flex;align-items:flex-end;justify-content:space-between;gap:60px}.realizations-cta__inner>div,.realization-next-step__inner>div{max-width:970px}.realizations-cta h2,.realization-next-step h2{margin-bottom:24px;font-size:clamp(3.2rem,5.8vw,6.5rem)}.realizations-cta p,.realization-next-step p{max-width:650px;color:rgba(255,255,255,.72)}

/* Detail realizace */
.realization-detail-hero{position:relative;min-height:clamp(720px,88svh,980px);display:flex;align-items:flex-end;overflow:hidden;color:#fff;background:#27332b}.realization-detail-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.realization-detail-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,13,10,.82),rgba(8,13,10,.25) 70%),linear-gradient(0deg,rgba(8,13,10,.82),transparent 62%)}.realization-detail-hero__content{position:relative;z-index:1;padding:120px 0 76px}.realization-detail-hero__back{display:inline-block;margin-bottom:clamp(90px,18vh,210px);text-decoration:none}.realization-detail-hero h1{max-width:1120px;margin:0 0 28px;font-size:clamp(3.8rem,7.5vw,8.1rem);line-height:.93}.realization-detail-hero__meta{display:flex;flex-wrap:wrap;gap:12px 28px;margin:0;color:rgba(255,255,255,.75);font-size:.77rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.realization-detail-hero__meta span+span:before{content:"·";margin-right:28px}
.realization-detail-intro{padding:clamp(100px,12vw,185px) 0}.realization-detail-intro__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.48fr);gap:clamp(65px,10vw,170px);align-items:start}.realization-detail-intro h2{margin:0;font-size:clamp(3rem,5vw,5.8rem);line-height:.98}.realization-detail-intro__content{color:var(--hd-muted);font-size:1.08rem}.realization-detail-intro__content>*:last-child{margin-bottom:0}
.realization-story{padding:clamp(85px,9vw,145px) 0;background:#e8e4db}.realization-story__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--realization-line);border-left:1px solid var(--realization-line)}.realization-story article{min-height:410px;padding:clamp(32px,4vw,60px);border-right:1px solid var(--realization-line);border-bottom:1px solid var(--realization-line)}.realization-story article>span{font-size:.68rem;font-weight:700;letter-spacing:.14em}.realization-story h2{margin:clamp(85px,9vw,140px) 0 24px;font-size:clamp(2.3rem,4vw,4.4rem)}.realization-story p{max-width:610px;color:var(--hd-muted)}
.realization-facts{display:grid;grid-template-columns:minmax(310px,.65fr) minmax(0,1fr);gap:clamp(70px,9vw,150px);padding:clamp(100px,11vw,175px) 0}.realization-facts dl{margin:0;border-top:1px solid var(--realization-line)}.realization-facts dl div{display:grid;grid-template-columns:minmax(130px,.4fr) 1fr;gap:25px;padding:22px 0;border-bottom:1px solid var(--realization-line)}.realization-facts dt{color:rgba(23,25,22,.54);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.realization-facts dd{margin:0;font-weight:650}
.realization-gallery{padding:clamp(100px,11vw,175px) 0}.realization-gallery header{max-width:970px;margin-bottom:clamp(52px,7vw,105px)}.realization-gallery__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--hd-gap)}.realization-gallery__item{position:relative;overflow:hidden;padding:0;border:0;background:#ddd6ca;cursor:zoom-in}.realization-gallery__item--lead{grid-column:1/-1}.realization-gallery__item img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.realization-gallery__item--lead img{aspect-ratio:16/9}.realization-gallery__item:hover img{transform:scale(1.018)}.realization-gallery__item span{position:absolute;right:18px;bottom:18px;padding:8px 11px;color:#fff;background:rgba(15,19,16,.78);font-size:.67rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.realization-lightbox{width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:clamp(28px,4vw,62px);color:#fff;background:rgba(12,16,13,.97);border:0}.realization-lightbox::backdrop{background:rgba(12,16,13,.97)}.realization-lightbox[open]{display:grid;grid-template-columns:64px minmax(0,1fr) 64px;align-items:center}.realization-lightbox figure{display:grid;place-items:center;gap:16px;min-width:0;margin:0}.realization-lightbox figure img{max-width:100%;max-height:82vh;object-fit:contain}.realization-lightbox figcaption{color:rgba(255,255,255,.65);font-size:.82rem}.realization-lightbox button{display:grid;place-items:center;width:48px;height:48px;color:#fff;background:transparent;border:1px solid rgba(255,255,255,.35);font-size:1.3rem;cursor:pointer}.realization-lightbox>[data-gallery-close]{position:absolute;top:24px;right:24px}.realization-lightbox__next{grid-column:3}.realization-lightbox figure{grid-column:2;grid-row:1}.realization-lightbox__prev{grid-column:1;grid-row:1}
.realization-quote{padding:clamp(90px,11vw,170px) 0;background:#e6e1d6}.realization-quote blockquote{max-width:1120px;margin:0 auto;text-align:center}.realization-quote blockquote p{margin:0;font-size:clamp(2.5rem,4.8vw,5.4rem);line-height:1.08;letter-spacing:-.04em}.realization-quote cite{display:block;margin-top:32px;color:var(--hd-muted);font-size:.78rem;font-style:normal;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.realization-related{padding:clamp(100px,11vw,175px) 0}.realization-related header{max-width:970px;margin-bottom:clamp(50px,7vw,95px)}.realization-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--hd-gap)}.realization-related article a{text-decoration:none}.realization-related img{width:100%;aspect-ratio:4/3;object-fit:cover}.realization-related article p{margin:20px 0 7px;color:var(--hd-muted);font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.realization-related h3{margin-bottom:18px;font-size:clamp(1.55rem,2.2vw,2.35rem)}.realization-related article span{font-size:.85rem;font-weight:650}

@media(max-width:1100px){.realizations-filters{grid-template-columns:1fr 1fr}.realizations-filters__types{grid-column:1/-1}.realizations-map-layout{grid-template-columns:minmax(0,1fr) 330px}.realizations-method__grid{grid-template-columns:repeat(2,1fr)}.realizations-card--lead{grid-template-columns:1.3fr .7fr}.realization-detail-intro__grid,.realization-facts{grid-template-columns:1fr;gap:45px}}
@media(max-width:800px){.realizations-shell{width:calc(100vw - 32px)}.realizations-hero{min-height:720px}.realizations-hero__stats{grid-template-columns:1fr}.realizations-hero__stats>div{min-height:74px;padding:14px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.2)}.realizations-hero__stats>div:last-child{border-bottom:0}.realizations-hero__stats strong{min-width:72px;font-size:2.6rem}.realizations-intro__grid,.realizations-map-section__header,.realizations-selected__header{grid-template-columns:1fr;gap:30px}.realizations-filters{grid-template-columns:1fr}.realizations-filters__types{grid-column:auto;display:grid;grid-template-columns:repeat(2,1fr)}.realizations-map-meta{align-items:flex-start;gap:18px}.realizations-map-meta p:last-child{text-align:right}.realizations-map-layout{grid-template-columns:1fr;min-height:0}.realizations-map{min-height:520px}.realizations-map-card{min-height:330px}.realizations-map-card__content{grid-template-columns:42% 58%;grid-template-rows:1fr;min-height:330px}.realizations-map-card__empty{padding:34px}.realizations-map-card__index{margin-bottom:50px}.realizations-grid{grid-template-columns:1fr}.realizations-card--lead{grid-column:auto;display:block}.realizations-card--lead .realizations-card__body{padding-top:25px}.realizations-card--lead .realizations-card__media img{aspect-ratio:4/3}.realizations-method__grid{grid-template-columns:1fr 1fr}.realizations-cta__inner,.realization-next-step__inner{align-items:flex-start;flex-direction:column}.realization-story__grid{grid-template-columns:1fr}.realization-gallery__grid,.realization-related__grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.realizations-hero h1{font-size:3.55rem}.realizations-hero__content{padding-top:90px}.realizations-filters__types{grid-template-columns:1fr}.realizations-map-meta{display:block}.realizations-map-meta p:last-child{margin-top:5px;text-align:left}.realizations-map{min-height:430px}.realizations-map-card{min-height:0}.realizations-map-card__content{grid-template-columns:1fr;grid-template-rows:220px auto;min-height:0}.realizations-map-card__content>div{min-height:310px}.realizations-intro h2,.realizations-map-section__header h2,.realizations-selected__header h2,.realizations-method h2,.realizations-cta h2,.realization-next-step h2{font-size:3rem}.realizations-method__grid{grid-template-columns:1fr}.realizations-method__grid article{min-height:280px}.realization-detail-hero{min-height:690px}.realization-detail-hero__back{margin-bottom:100px}.realization-detail-hero h1{font-size:3.5rem}.realization-detail-hero__meta span+span:before{margin-right:12px}.realization-detail-hero__meta{gap:8px 12px}.realization-story article{min-height:340px;padding:30px 24px}.realization-story h2{margin-top:70px}.realization-facts dl div{grid-template-columns:1fr;gap:7px}.realization-gallery__grid,.realization-related__grid{grid-template-columns:1fr}.realization-gallery__item--lead{grid-column:auto}.realization-gallery__item--lead img{aspect-ratio:4/3}.realization-lightbox{padding:80px 14px 22px}.realization-lightbox[open]{grid-template-columns:48px minmax(0,1fr) 48px}.realization-lightbox button{width:40px;height:40px}.realization-lightbox>[data-gallery-close]{top:18px;right:18px}}
@media(prefers-reduced-motion:reduce){.realizations-card__media img,.realization-gallery__item img,.realizations-marker{transition:none}}
.site-brand{display:grid;gap:1px;text-decoration:none;line-height:1}
.site-brand__wordmark{font-size:1.28rem;font-weight:760;letter-spacing:.12em}
.site-brand__descriptor{font-size:.62rem;letter-spacing:.13em;text-transform:uppercase;color:rgba(23,25,22,.58)}
.hero--hd{position:relative;min-height:calc(100svh - 82px);display:flex;align-items:flex-end;color:#fff;background-image:var(--hero-image);background-size:cover;background-position:center 46%;overflow:hidden}
.hero--hd .hero__overlay{background:linear-gradient(90deg,rgba(8,13,10,.82) 0%,rgba(8,13,10,.48) 37%,rgba(8,13,10,.05) 70%),linear-gradient(to top,rgba(8,13,10,.45),transparent 58%)}
.hero--hd .hero__content{padding:clamp(80px,10vw,150px) 0 clamp(70px,8vw,120px)}
.hero--hd h1{max-width:980px;font-size:clamp(3.5rem,6.7vw,7.3rem);line-height:.99}
.hero--hd .hero__lead{max-width:680px}
.brand-intro{padding:clamp(100px,12vw,190px) max(24px,calc((100vw - 1480px)/2))}
.brand-intro__inner{display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1fr);gap:clamp(70px,11vw,180px);align-items:end}
.brand-intro__copy{max-width:520px;margin:70px 0 0;color:var(--hd-muted);font-size:clamp(1rem,1.2vw,1.16rem)}
.brand-intro h2{max-width:760px;margin:0;font-size:clamp(3rem,5.1vw,6.3rem)}
.category-showcase{padding:clamp(90px,10vw,160px) max(24px,calc((100vw - 1480px)/2));background:var(--hd-paper)}
.category-showcase__heading{max-width:930px;margin:0 auto clamp(60px,7vw,105px);text-align:center}
.category-showcase__heading h2{font-size:clamp(2.8rem,4.7vw,5.8rem)}
.category-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,3fr) minmax(0,2fr);gap:var(--hd-gap)}
.category-tile{display:grid;grid-template-rows:clamp(390px,37vw,620px) 178px;min-width:0;text-decoration:none;color:inherit}
.category-tile__image{display:block;overflow:hidden;background:#ddd6ca}
.category-tile__image img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.category-tile:hover img{transform:scale(1.025)}
.category-tile__body{display:flex;flex-direction:column;align-items:center;text-align:center;padding:27px 10px 8px}
.category-tile__body strong{font-size:clamp(1.05rem,1.4vw,1.45rem);font-weight:600}
.category-tile__body small{max-width:250px;min-height:3em;margin-top:8px;color:var(--hd-muted);font-size:.9rem;line-height:1.5}
.category-tile__body em{position:relative;margin-top:auto;padding-bottom:4px;font-size:.84rem;font-style:normal;font-weight:650}
.category-tile__body em:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(.32);transition:transform .3s ease}
.category-tile:hover em:after{transform:scaleX(1)}
.product-stage{display:grid;grid-template-columns:minmax(360px,41%) minmax(0,59%);min-height:clamp(610px,80vh,900px);margin-top:clamp(38px,4vw,70px);background:#f0ede6}
.product-stage--reverse{grid-template-columns:minmax(0,59%) minmax(360px,41%);background:#fff}
.product-stage__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(60px,7vw,126px) clamp(36px,6.5vw,112px)}
.product-stage__copy h2{font-size:clamp(3.7rem,7vw,7.9rem);margin-bottom:25px}
.product-stage__lead{max-width:570px;font-size:clamp(1.05rem,1.32vw,1.34rem);color:var(--hd-muted)}
.product-stage__media{position:relative;overflow:hidden;min-height:100%}
.product-stage__media img{position:absolute;inset:-5% 0 0;width:100%;height:110%;object-fit:cover}
.product-stage--elite{margin-bottom:clamp(100px,10vw,170px)}
.detail-strip{width:var(--hd-shell);margin:clamp(90px,10vw,170px) auto;display:grid;grid-template-columns:minmax(0,1.22fr) minmax(330px,.78fr);gap:clamp(55px,8vw,130px);align-items:center}
.detail-strip__media img{width:100%;aspect-ratio:4/3;object-fit:cover}
.detail-strip__copy{padding-right:clamp(0px,3vw,55px)}
.detail-strip__copy h2{font-size:clamp(2.8rem,5vw,5.8rem)}
.detail-strip__copy p{max-width:530px;color:var(--hd-muted);font-size:1.08rem}
.product-feature{margin-top:clamp(42px,5vw,88px)}
.expertise-section,.realizations-section,.process-section,.tools-section{padding:clamp(100px,11vw,180px) max(24px,calc((100vw - 1480px)/2))}
.expertise-section{background:#e8e4db}
.expertise-section__heading,.realizations-section__heading,.process-section__heading,.tools-section__heading{max-width:940px;margin-bottom:clamp(55px,7vw,105px)}
.expertise-section__heading h2,.realizations-section__heading h2,.process-section__heading h2,.tools-section__heading h2{font-size:clamp(2.8rem,5vw,5.8rem)}
.expertise-grid,.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(23,25,22,.16);border-left:1px solid rgba(23,25,22,.16)}
.expertise-grid article,.process-grid article{min-height:300px;padding:clamp(28px,3vw,48px);border-right:1px solid rgba(23,25,22,.16);border-bottom:1px solid rgba(23,25,22,.16)}
.expertise-grid span,.process-grid b{font-size:.72rem;letter-spacing:.13em}
.expertise-grid h3,.process-grid h3{margin-top:100px;font-size:1.55rem}
.expertise-grid p,.process-grid p{color:var(--hd-muted)}
.realizations-section{background:var(--hd-paper)}
.realization-grid{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:repeat(2,minmax(300px,1fr));gap:var(--hd-gap)}
.realization-card{position:relative;overflow:hidden;color:#fff;text-decoration:none;min-height:360px}
.realization-card--large{grid-row:1/3;min-height:760px}
.realization-card img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.realization-card:hover img{transform:scale(1.025)}
.realization-card:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(9,13,11,.72),transparent 60%)}
.realization-card span{position:absolute;z-index:2;left:clamp(24px,3vw,48px);right:clamp(24px,3vw,48px);bottom:clamp(24px,3vw,44px);display:grid;gap:4px}
.realization-card strong{font-size:clamp(1.35rem,2.1vw,2.2rem);font-weight:570}
.realization-card small{color:rgba(255,255,255,.78)}
.realizations-section__cta{margin-top:38px;text-align:right}
.process-section{background:#f0ede6}
.tools-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--hd-gap)}
.tools-grid a{display:flex;flex-direction:column;min-height:330px;padding:32px;border:1px solid rgba(23,25,22,.17);text-decoration:none;color:inherit;transition:background .25s ease}
.tools-grid a:hover{background:#fff}
.tools-grid span{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em}
.tools-grid h3{margin-top:auto;font-size:1.75rem}
.tools-grid p{color:var(--hd-muted)}
.commerce-section{display:grid;grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr);background:#e8e4db}
.commerce-section__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(65px,8vw,135px)}
.commerce-section__copy h2{font-size:clamp(3rem,5.5vw,6.2rem)}
.commerce-section__copy p{max-width:580px;color:var(--hd-muted);font-size:1.08rem}
.commerce-section__links{display:flex;align-items:center;gap:26px;margin-top:28px}
.commerce-section__media img{width:100%;height:100%;min-height:650px;object-fit:cover}
.final-cta{padding:clamp(120px,14vw,220px) 24px;background:var(--hd-green);color:#fff;text-align:center}
.final-cta__inner{max-width:1050px;margin:0 auto}
.final-cta h2{font-size:clamp(3rem,6vw,7rem)}
.final-cta p{font-size:1.2rem;color:rgba(255,255,255,.76)}
.final-cta .button{margin-top:34px}
@media(max-width:980px){
  .brand-intro__inner{grid-template-columns:1fr}
  .brand-intro__copy{margin-top:35px}
  .category-grid{grid-template-columns:1fr 1fr}
  .category-tile--saunas{grid-column:1/-1}
  .category-tile,.category-tile--saunas{grid-template-rows:520px 170px}
  .product-stage,.product-stage--reverse{grid-template-columns:1fr;min-height:auto}
  .product-stage--reverse .product-stage__media{order:2}
  .product-stage__media{min-height:65vw}
  .detail-strip{grid-template-columns:1fr}
  .expertise-grid,.process-grid{grid-template-columns:repeat(2,1fr)}
  .realization-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .realization-card--large{grid-row:auto;grid-column:1/-1;min-height:620px}
  .commerce-section{grid-template-columns:1fr}
  .commerce-section__media img{min-height:60vw}
}
@media(max-width:720px){
  .site-brand__descriptor{display:block}
  .hero--hd{min-height:calc(100svh - 70px);background-position:58% center}
  .hero--hd h1{font-size:clamp(3rem,13vw,4.8rem)}
  .brand-intro,.category-showcase,.expertise-section,.realizations-section,.process-section,.tools-section{padding-left:16px;padding-right:16px}
  .brand-intro{padding-top:92px;padding-bottom:92px}
  .brand-intro h2{font-size:clamp(2.8rem,12vw,4.5rem)}
  .category-showcase__heading{text-align:left}
  .category-grid{grid-template-columns:1fr;gap:28px}
  .category-tile,.category-tile--saunas{grid-column:auto;grid-template-rows:min(98vw,520px) 160px}
  .product-stage{margin-top:24px}
  .product-stage__copy{padding:56px 24px}
  .product-stage__copy h2{font-size:3.2rem}
  .product-stage__media{min-height:82vw}
  .detail-strip{width:calc(100vw - 32px);margin:80px auto}
  .product-feature{min-height:650px}
  .expertise-grid,.process-grid,.tools-grid{grid-template-columns:1fr}
  .expertise-grid article,.process-grid article{min-height:250px}
  .expertise-grid h3,.process-grid h3{margin-top:65px}
  .realization-grid{grid-template-columns:1fr}
  .realization-card,.realization-card--large{grid-column:auto;min-height:480px}
  .commerce-section__copy{padding:60px 24px}
  .commerce-section__links{align-items:flex-start;flex-direction:column}
}

@media(prefers-reduced-motion:reduce){
  .category-tile img,.realization-card img,.tools-grid a{transition:none}
}


/* Dřevěné sauny 0.8 — premium sauna archive */
.catalog-archive{background:var(--hd-paper,#faf8f3)}
.catalog-hero{padding:clamp(105px,12vw,190px) max(24px,calc((100vw - 1480px)/2)) clamp(70px,8vw,120px);background:var(--hd-bg,#f3f0e9)}
.catalog-hero__inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:clamp(60px,9vw,150px);align-items:end}
.catalog-hero__copy h1{max-width:980px;margin:14px 0 28px;font-size:clamp(4rem,7.8vw,9rem);line-height:.93;letter-spacing:-.055em}
.catalog-hero__copy>p:last-child{max-width:760px;color:var(--hd-muted,rgba(23,25,22,.64));font-size:clamp(1.05rem,1.35vw,1.32rem);line-height:1.55}
.catalog-hero__meta{display:grid;border-top:1px solid rgba(23,25,22,.18)}
.catalog-hero__meta span{padding:17px 0;border-bottom:1px solid rgba(23,25,22,.18);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}
.catalog-filter{position:sticky;top:0;z-index:20;background:rgba(250,248,243,.93);backdrop-filter:blur(16px);border-bottom:1px solid rgba(23,25,22,.11)}
.admin-bar .catalog-filter{top:32px}
.catalog-filter__inner{display:flex;gap:28px;align-items:center;overflow-x:auto;padding:18px max(24px,calc((100vw - 1480px)/2));scrollbar-width:none}
.catalog-filter__inner::-webkit-scrollbar{display:none}
.catalog-filter a{position:relative;flex:0 0 auto;color:inherit;text-decoration:none;font-size:.9rem}
.catalog-filter a:after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:1px;background:currentColor;transform:scaleX(0);transition:.25s}
.catalog-filter a:hover:after,.catalog-filter a.is-active:after{transform:scaleX(1)}
.catalog-grid-section{padding:clamp(100px,11vw,180px) max(24px,calc((100vw - 1480px)/2))}
.catalog-grid-section__heading{display:grid;grid-template-columns:.55fr 1.45fr;gap:clamp(30px,8vw,130px);align-items:start;margin-bottom:clamp(60px,7vw,105px)}
.catalog-grid-section__heading h2{max-width:870px;margin:0;font-size:clamp(2.9rem,5.2vw,6.2rem);line-height:1}
.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(70px,8vw,125px) clamp(24px,3vw,52px)}
.catalog-card{min-width:0}
.catalog-card__media{position:relative;display:block;overflow:hidden;aspect-ratio:4/3;background:linear-gradient(135deg,#b5ad9d,#455348)}
.catalog-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.catalog-card:hover .catalog-card__media img{transform:scale(1.025)}
.catalog-card__placeholder{display:grid;place-items:center;width:100%;height:100%;color:rgba(255,255,255,.72)}
.catalog-card__placeholder span{font-size:1rem;letter-spacing:.18em}
.catalog-card__badge{position:absolute;left:18px;top:18px;padding:9px 12px;background:rgba(250,248,243,.94);color:#171916;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}
.catalog-card__body{padding-top:24px}
.catalog-card__topline{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.catalog-card__topline .eyebrow{margin-top:7px}
.catalog-card__price{text-align:right}
.catalog-card__price strong{display:block;font-size:1rem;font-weight:650}
.catalog-card__price small{display:block;margin-top:2px;color:var(--hd-muted,rgba(23,25,22,.64));font-size:.78rem}
.catalog-card h2{margin:18px 0 14px;font-size:clamp(2rem,3vw,3.5rem);line-height:1}
.catalog-card h2 a{color:inherit;text-decoration:none}
.catalog-card__description{max-width:650px;margin:0;color:var(--hd-muted,rgba(23,25,22,.64));font-size:1rem;line-height:1.58}
.catalog-card__technical{margin:24px 0 18px;padding-top:17px;border-top:1px solid rgba(23,25,22,.14);font-size:.75rem;font-weight:620;letter-spacing:.07em;text-transform:uppercase}
.catalog-card .text-link{display:inline-block;margin-top:6px}
.catalog-empty{padding:70px;background:#eee9df;text-align:center}
.catalog-empty h2{font-size:clamp(2rem,4vw,4rem)}
.catalog-empty p{max-width:650px;margin:0 auto 28px;color:var(--hd-muted)}
.catalog-advisor{padding:clamp(100px,12vw,190px) max(24px,calc((100vw - 1480px)/2));background:var(--hd-green,#2c3e36);color:#fff}
.catalog-advisor__inner{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(70px,10vw,160px);align-items:end}
.catalog-advisor h2{max-width:870px;margin:12px 0 0;font-size:clamp(3rem,5.8vw,7rem);line-height:.98}
.catalog-advisor__inner>div:last-child p{max-width:600px;color:rgba(255,255,255,.72);font-size:1.1rem;line-height:1.6}
.catalog-advisor .button{margin-top:28px}
.navigation.pagination{margin-top:90px}
.nav-links{display:flex;justify-content:center;gap:12px}
.nav-links .page-numbers{display:grid;place-items:center;min-width:42px;height:42px;padding:0 12px;border:1px solid rgba(23,25,22,.16);color:inherit;text-decoration:none}
.nav-links .current{background:#171916;color:#fff}
@media(max-width:980px){
  .catalog-hero__inner,.catalog-advisor__inner{grid-template-columns:1fr}
  .catalog-hero__meta{max-width:560px}
  .catalog-grid-section__heading{grid-template-columns:1fr}
}
@media(max-width:760px){
  .catalog-hero{padding-left:16px;padding-right:16px}
  .catalog-hero__copy h1{font-size:clamp(3.6rem,16vw,5.8rem)}
  .catalog-grid-section{padding-left:16px;padding-right:16px}
  .catalog-grid{grid-template-columns:1fr;gap:80px}
  .catalog-card__topline{display:grid}
  .catalog-card__price{text-align:left}
  .catalog-advisor{padding-left:16px;padding-right:16px}
  .admin-bar .catalog-filter{top:46px}
}

/* Dřevěné sauny 0.9 — adaptive catalog grids */
.catalog-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.catalog-grid--3{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(65px,6vw,105px) clamp(22px,2.2vw,38px)}
.catalog-grid--3 .catalog-card__media{aspect-ratio:4/3}
.catalog-grid--3 .catalog-card h2{font-size:clamp(1.8rem,2.25vw,2.8rem)}
.catalog-grid--3 .catalog-card__description{font-size:.94rem}
.catalog-grid--3 .catalog-card__technical{font-size:.68rem;line-height:1.55}
.catalog-grid--3 .catalog-card__topline{display:grid;grid-template-columns:1fr;gap:8px}
.catalog-grid--3 .catalog-card__price{text-align:left}
.catalog-grid--3 .catalog-card__price strong{font-size:.93rem}
.catalog-grid--3 .catalog-card__price small{font-size:.74rem}
@media(max-width:1100px){
  .catalog-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .catalog-grid--2,.catalog-grid--3{grid-template-columns:1fr}
}


/* Dřevěné sauny 0.10 — premium product detail */
.product-detail{background:var(--hd-paper,#faf8f3)}
.product-hero{display:grid;grid-template-columns:minmax(380px,43%) minmax(0,57%);min-height:calc(100svh - 82px);background:#f0ede6}
.product-hero__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(75px,8vw,140px) clamp(36px,6vw,110px)}
.product-hero__copy h1{margin:12px 0 28px;font-size:clamp(4.4rem,7.7vw,9rem);line-height:.92;letter-spacing:-.06em}
.product-hero__lead{max-width:640px;color:var(--hd-muted);font-size:clamp(1.08rem,1.35vw,1.34rem);line-height:1.55}
.product-hero__technical{margin:24px 0 0;padding-top:18px;border-top:1px solid rgba(23,25,22,.16);font-size:.76rem;font-weight:620;letter-spacing:.08em;text-transform:uppercase}
.product-hero__media{position:relative;overflow:hidden;min-height:720px;background:linear-gradient(135deg,#b7afa1,#48564b)}
.product-hero__media img{width:100%;height:100%;object-fit:cover}
.product-hero__placeholder{display:grid;place-items:center;width:100%;height:100%;color:rgba(255,255,255,.72)}
.product-hero__placeholder span{letter-spacing:.2em}
.product-price{margin-top:34px}
.product-price>strong{display:block;font-size:clamp(1.4rem,2vw,2rem)}
.product-price>small{display:block;margin-top:5px;color:var(--hd-muted)}
.product-vat-trigger{margin-top:14px;padding:0;border:0;border-bottom:1px solid currentColor;background:none;font:inherit;font-size:.82rem;cursor:pointer}
.product-vat-note{max-width:620px;margin-top:16px;padding:20px 22px;background:#e8e4db}
.product-vat-note strong{display:block;margin-bottom:7px}
.product-vat-note p{margin:0 0 8px;color:var(--hd-muted);font-size:.9rem}
.product-vat-note small{color:var(--hd-muted);font-size:.75rem}
.product-hero__actions{display:flex;align-items:center;gap:28px;margin-top:40px}
.product-value-strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(23,25,22,.15);border-bottom:1px solid rgba(23,25,22,.15)}
.product-value-strip>div{min-height:250px;padding:38px clamp(28px,4vw,62px);border-right:1px solid rgba(23,25,22,.15)}
.product-value-strip>div:last-child{border-right:0}
.product-value-strip span{font-size:.7rem;letter-spacing:.14em}
.product-value-strip strong{display:block;margin-top:72px;font-size:1.45rem}
.product-value-strip p{color:var(--hd-muted)}
.product-editorial{display:grid;grid-template-columns:.45fr 1.55fr;gap:clamp(60px,10vw,170px);padding:clamp(110px,12vw,190px) max(24px,calc((100vw - 1480px)/2))}
.product-editorial__content{max-width:900px;font-size:clamp(1.15rem,1.45vw,1.45rem);line-height:1.65}
.product-editorial__content h2{font-size:clamp(2.8rem,5vw,5.8rem);line-height:1}
.product-editorial__content img{max-width:100%;height:auto}
.product-variants{padding:clamp(110px,12vw,190px) max(24px,calc((100vw - 1480px)/2));background:#e8e4db}
.product-variants__heading{max-width:960px;margin-bottom:clamp(55px,7vw,100px)}
.product-variants__heading h2{font-size:clamp(3rem,5.5vw,6.6rem);line-height:.98}
.product-variants__heading>p:last-child{max-width:670px;color:var(--hd-muted);font-size:1.08rem}
.product-variant-tabs{display:flex;gap:10px;overflow-x:auto;margin-bottom:30px;scrollbar-width:none}
.product-variant-tabs::-webkit-scrollbar{display:none}
.product-variant-tabs button{flex:0 0 auto;padding:14px 22px;border:1px solid rgba(23,25,22,.2);background:transparent;font:inherit;cursor:pointer}
.product-variant-tabs button[aria-selected=true]{background:#171916;color:#fff}
.product-variant-panel{display:none;grid-template-columns:minmax(0,1.1fr) minmax(400px,.9fr);background:var(--hd-paper)}
.product-variant-panel.is-active{display:grid}
.product-variant-panel__media{min-height:760px}
.product-variant-panel__media img{width:100%;height:100%;object-fit:cover}
.product-variant-panel__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(50px,6vw,100px)}
.product-variant-panel__copy h3{margin:12px 0 20px;font-size:clamp(3rem,5vw,6rem);line-height:.95}
.product-variant-panel__lead{color:var(--hd-muted);font-size:1.08rem;line-height:1.55}
.product-variant-panel__price{margin:26px 0}
.product-variant-panel__price strong{display:block;font-size:1.25rem}
.product-variant-panel__price small{display:block;color:var(--hd-muted)}
.product-specs{margin:20px 0 32px;border-top:1px solid rgba(23,25,22,.15)}
.product-specs>div{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px;padding:13px 0;border-bottom:1px solid rgba(23,25,22,.15)}
.product-specs dt{font-size:.73rem;text-transform:uppercase;letter-spacing:.08em}
.product-specs dd{margin:0;text-align:right}
.product-equipment{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-bottom:32px}
.product-equipment h4{font-size:.95rem}
.product-equipment ul{margin:0;padding-left:18px;color:var(--hd-muted)}
.product-equipment li{margin:6px 0}
.product-gallery{padding:clamp(110px,12vw,190px) max(24px,calc((100vw - 1480px)/2))}
.product-gallery__heading{max-width:850px;margin-bottom:clamp(60px,7vw,100px)}
.product-gallery__heading h2{font-size:clamp(3rem,5vw,6rem)}
.product-gallery__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--hd-gap)}
.product-gallery figure{margin:0;overflow:hidden}
.product-gallery img{width:100%;height:100%;min-height:420px;object-fit:cover}
.product-gallery__large{grid-column:1/-1}
.product-gallery__large img{min-height:700px}
.product-process{padding:clamp(110px,12vw,190px) max(24px,calc((100vw - 1480px)/2));background:#f0ede6}
.product-process__heading{max-width:900px;margin-bottom:clamp(55px,7vw,100px)}
.product-process__heading h2{font-size:clamp(3rem,5vw,6rem)}
.product-process__grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(23,25,22,.16);border-left:1px solid rgba(23,25,22,.16)}
.product-process__grid article{min-height:300px;padding:35px;border-right:1px solid rgba(23,25,22,.16);border-bottom:1px solid rgba(23,25,22,.16)}
.product-process__grid span{font-size:.7rem;letter-spacing:.14em}
.product-process__grid h3{margin-top:100px;font-size:1.45rem}
.product-process__grid p{color:var(--hd-muted)}
.product-final-cta{padding:clamp(125px,14vw,220px) 24px;background:var(--hd-green);color:#fff;text-align:center}
.product-final-cta__inner{max-width:1050px;margin:auto}
.product-final-cta h2{font-size:clamp(3rem,6vw,7rem)}
.product-final-cta p{color:rgba(255,255,255,.72);font-size:1.15rem}
.product-final-cta .button{margin-top:30px}
@media(max-width:1050px){
  .product-hero{grid-template-columns:1fr}
  .product-hero__media{min-height:70vw}
  .product-value-strip{grid-template-columns:1fr}
  .product-value-strip>div{border-right:0;border-bottom:1px solid rgba(23,25,22,.15)}
  .product-editorial{grid-template-columns:1fr}
  .product-variant-panel{grid-template-columns:1fr}
  .product-variant-panel__media{min-height:65vw}
  .product-process__grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:720px){
  .product-hero__copy{padding:70px 22px}
  .product-hero__copy h1{font-size:clamp(4rem,18vw,6rem)}
  .product-hero__media{min-height:90vw}
  .product-hero__actions{align-items:flex-start;flex-direction:column}
  .product-value-strip>div{padding:32px 22px}
  .product-value-strip strong{margin-top:50px}
  .product-editorial,.product-variants,.product-gallery,.product-process{padding-left:16px;padding-right:16px}
  .product-variant-panel__copy{padding:45px 22px}
  .product-equipment{grid-template-columns:1fr}
  .product-gallery__grid{grid-template-columns:1fr}
  .product-gallery__large{grid-column:auto}
  .product-gallery img,.product-gallery__large img{min-height:110vw}
  .product-process__grid{grid-template-columns:1fr}
}


/* Dřevěné sauny 0.11 — unified optimized image profiles */
.product-hero{
  width:min(1600px,100%);
  min-height:0;
  margin:0 auto;
  grid-template-columns:minmax(390px,44%) minmax(0,56%);
}
.product-hero__copy{min-height:720px}
.product-hero__media{
  min-height:0;
  aspect-ratio:4/3;
  align-self:center;
}
.product-hero__media picture{display:block;width:100%;height:100%}
.product-hero__media img{display:block;width:100%;height:100%;object-fit:cover}
.catalog-card__media picture{display:block;width:100%;height:100%}
.catalog-card__media picture img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:1050px){
  .product-hero{width:100%;grid-template-columns:1fr}
  .product-hero__copy{min-height:auto}
  .product-hero__media{aspect-ratio:4/3;min-height:0}
}
@media(max-width:720px){
  .product-hero__media{aspect-ratio:4/5}
}


/* Dřevěné sauny 0.12 — editorial product gallery */
.product-visual-story{padding:clamp(110px,12vw,190px) max(24px,calc((100vw - 1480px)/2));background:var(--hd-paper)}
.product-visual-story__intro{display:grid;grid-template-columns:.45fr 1.55fr;gap:clamp(50px,9vw,150px);margin-bottom:clamp(65px,8vw,115px)}
.product-visual-story__intro h2{max-width:930px;margin:0;font-size:clamp(3.2rem,5.7vw,6.8rem);line-height:.98}
.product-visual-story__grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:clamp(18px,2.2vw,34px)}
.product-visual-story__item{margin:0}
.product-visual-story__item--wide{grid-column:1/-1}
.product-visual-story__item--large{grid-column:span 6}
.product-visual-story__item--small{grid-column:span 4}
.product-lightbox-trigger{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;overflow:hidden}
.product-visual-story__item--wide .product-lightbox-trigger{aspect-ratio:16/8}
.product-visual-story__item--large .product-lightbox-trigger{aspect-ratio:5/4}
.product-visual-story__item--small .product-lightbox-trigger{aspect-ratio:4/5}
.product-lightbox-trigger img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.product-lightbox-trigger:hover img{transform:scale(1.018)}
.product-visual-story figcaption{padding:18px 0 8px}
.product-visual-story figcaption strong{display:block;font-size:1rem}
.product-visual-story figcaption p{max-width:560px;margin:7px 0 0;color:var(--hd-muted);line-height:1.55}
.product-lightbox{width:min(1500px,94vw);max-width:none;padding:0;border:0;background:#111;color:#fff}
.product-lightbox::backdrop{background:rgba(0,0,0,.88)}
.product-lightbox img{display:block;width:100%;max-height:90vh;object-fit:contain}
.product-lightbox__close{position:absolute;top:16px;right:16px;z-index:2;width:44px;height:44px;border:0;background:rgba(255,255,255,.92);font-size:28px;line-height:1;cursor:pointer}
@media(max-width:900px){
  .product-visual-story__intro{grid-template-columns:1fr}
  .product-visual-story__item--wide,.product-visual-story__item--large,.product-visual-story__item--small{grid-column:span 5}
  .product-visual-story__item--wide:first-child{grid-column:1/-1}
}
@media(max-width:680px){
  .product-visual-story{padding-left:16px;padding-right:16px}
  .product-visual-story__grid{display:block}
  .product-visual-story__item{margin-bottom:20px}
  .product-visual-story__item--wide .product-lightbox-trigger,
  .product-visual-story__item--large .product-lightbox-trigger,
  .product-visual-story__item--small .product-lightbox-trigger{aspect-ratio:4/5}
}


/* Dřevěné sauny 0.13 — horizontal editorial gallery + changing atmosphere */
:root{--product-page-bg:#faf8f3}
.product-detail{
  background:var(--product-page-bg);
  transition:background-color 950ms cubic-bezier(.22,.61,.36,1);
}
.product-detail>section{
  position:relative;
  background:transparent!important;
}
.product-detail[data-page-theme="dark"] .product-gallery-strip,
.product-detail[data-page-theme="dark"] .product-final-cta{color:#fff}

.product-visual-story{display:none!important}

.product-gallery-strip{
  overflow:hidden;
  padding:clamp(95px,10vw,155px) 0 clamp(80px,8vw,130px);
  color:#fff;
  transition:color 650ms ease;
}
.product-gallery-strip__header{
  display:flex;
  justify-content:space-between;
  gap:50px;
  align-items:flex-end;
  width:min(1480px,calc(100% - 48px));
  margin:0 auto clamp(48px,6vw,85px);
}
.product-gallery-strip__header>div:first-child{max-width:920px}
.product-gallery-strip__header h2{
  margin:12px 0 0;
  font-size:clamp(3.1rem,5.6vw,6.8rem);
  line-height:.96;
}
.product-gallery-strip__controls{
  display:flex;
  align-items:center;
  gap:14px;
  flex:0 0 auto;
}
.product-gallery-strip__arrow{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border:1px solid rgba(255,255,255,.4);
  background:transparent;
  color:inherit;
  font-size:20px;
  cursor:pointer;
  transition:background-color .25s ease,color .25s ease,opacity .25s ease;
}
.product-gallery-strip__arrow:hover{background:#fff;color:#171916}
.product-gallery-strip__arrow:disabled{opacity:.3;cursor:default}
.product-gallery-strip__counter{
  min-width:68px;
  text-align:center;
  font-size:.82rem;
  letter-spacing:.08em;
}
.product-gallery-strip__viewport{overflow:hidden}
.product-gallery-strip__track{
  display:flex;
  align-items:stretch;
  gap:clamp(18px,2vw,30px);
  overflow-x:auto;
  padding-block:0;
  padding-inline-start:var(--gallery-pad-start,max(24px,calc((100vw - 1480px)/2)));
  padding-inline-end:var(--gallery-pad-end,max(24px,calc((100vw - 1480px)/2)));
  scroll-snap-type:x mandatory;
  scroll-padding-inline-start:var(--gallery-pad-start,max(24px,calc((100vw - 1480px)/2)));
  scroll-padding-inline-end:var(--gallery-pad-end,max(24px,calc((100vw - 1480px)/2)));
  scrollbar-width:none;
  cursor:grab;
  overscroll-behavior-inline:contain;
}
.product-gallery-strip__track::-webkit-scrollbar{display:none}
.product-gallery-strip__track.is-dragging{
  cursor:grabbing;
  scroll-snap-type:none;
  user-select:none;
}
.product-gallery-strip__item{
  flex:0 0 auto;
  margin:0;
  scroll-snap-align:center;
}
.product-gallery-strip__item--wide{width:min(900px,76vw)}
.product-gallery-strip__item--landscape{width:min(760px,66vw)}
.product-gallery-strip__item--portrait{width:min(430px,40vw)}
.product-gallery-strip__item .product-lightbox-trigger{
  width:100%;
  height:clamp(460px,58vh,620px);
  border:0;
  background:#282a27;
  padding:0;
  cursor:zoom-in;
  overflow:hidden;
}
.product-gallery-strip__item img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .7s cubic-bezier(.2,.7,.2,1),opacity .35s ease;
}
.product-gallery-strip__item:hover img{transform:scale(1.015)}
.product-gallery-strip figcaption{max-width:620px;padding-top:18px}
.product-gallery-strip figcaption strong{display:block;font-size:1rem}
.product-gallery-strip figcaption p{
  margin:7px 0 0;
  color:rgba(255,255,255,.66);
  line-height:1.55;
}
.product-gallery-strip__hint{
  width:min(1480px,calc(100% - 48px));
  margin:28px auto 0;
  color:rgba(255,255,255,.55);
  font-size:.78rem;
}

.product-lightbox{
  width:100vw;
  height:100vh;
  max-width:none;
  max-height:none;
  padding:0;
  border:0;
  background:#0d0e0c;
  color:#fff;
}
.product-lightbox::backdrop{background:#0d0e0c}
.product-lightbox img{
  display:block;
  width:100%;
  height:100%;
  padding:5vh 7vw;
  object-fit:contain;
}
.product-lightbox__close,
.product-lightbox__nav{
  position:fixed;
  z-index:3;
  display:grid;
  place-items:center;
  width:50px;
  height:50px;
  border:1px solid rgba(255,255,255,.4);
  background:rgba(13,14,12,.55);
  color:#fff;
  cursor:pointer;
  backdrop-filter:blur(10px);
}
.product-lightbox__close{top:24px;right:24px;font-size:30px}
.product-lightbox__nav{top:50%;transform:translateY(-50%);font-size:22px}
.product-lightbox__nav--prev{left:24px}
.product-lightbox__nav--next{right:24px}

@media(max-width:800px){
  .product-gallery-strip__header{
    align-items:flex-start;
    flex-direction:column;
    width:calc(100% - 32px);
  }
  .product-gallery-strip__track{
    padding-block:0;
    padding-inline-start:var(--gallery-pad-start,16px);
    padding-inline-end:var(--gallery-pad-end,16px);
    scroll-padding-inline-start:var(--gallery-pad-start,16px);
    scroll-padding-inline-end:var(--gallery-pad-end,16px);
  }
  .product-gallery-strip__item--wide,
  .product-gallery-strip__item--landscape,
  .product-gallery-strip__item--portrait{width:86vw}
  .product-gallery-strip__item .product-lightbox-trigger{height:68svh}
  .product-gallery-strip__hint{width:calc(100% - 32px)}
}
@media(prefers-reduced-motion:reduce){
  .product-detail{transition:none}
  .product-gallery-strip__item img{transition:none}
}


/* Dřevěné sauny 0.13.2 — stable backgrounds and natural scrolling */
.product-detail>section{background-color:transparent}
.product-hero{background-color:#f0ede6!important}
.product-gallery-strip{background-color:#171916!important;color:#fff}
.product-value-strip,
.product-editorial{background-color:#faf8f3!important}
.product-variants{background-color:#e8e4db!important}
.product-process{background-color:#f0ede6!important}
.product-final-cta{background-color:#2c3e36!important;color:#fff}
.product-final-cta .eyebrow,
.product-final-cta h2{color:#fff}
.product-final-cta p{color:rgba(255,255,255,.72)}
.product-gallery-strip__track{touch-action:pan-x pan-y}
.product-gallery-strip__hint{color:rgba(255,255,255,.7)}


/* Dřevěné sauny 0.14 — editable product editorial blocks */
.product-content-block{color:#171916}
.product-content-block--paper{background:#faf8f3!important}
.product-content-block--mist{background:#e8e4db!important}
.product-content-block--forest{background:#2c3e36!important;color:#fff}
.product-content-block--charcoal{background:#171916!important;color:#fff}
.product-content-block__inner{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);
  gap:clamp(60px,9vw,150px);
  align-items:center;
  width:min(1480px,calc(100% - 48px));
  min-height:clamp(700px,82vh,920px);
  margin:0 auto;
  padding:clamp(95px,11vw,175px) 0;
}
.product-content-block--image-right .product-content-block__media{order:2}
.product-content-block--image-right .product-content-block__copy{order:1}
.product-content-block--image-wide .product-content-block__inner{
  grid-template-columns:1fr;
  gap:clamp(50px,6vw,85px);
}
.product-content-block--image-wide .product-content-block__media{
  order:1;
  aspect-ratio:16/8;
}
.product-content-block--image-wide .product-content-block__copy{
  order:2;
  display:grid;
  grid-template-columns:.45fr 1.55fr;
  column-gap:clamp(45px,9vw,145px);
}
.product-content-block--image-wide .product-content-block__copy .eyebrow{grid-column:1}
.product-content-block--image-wide .product-content-block__copy h2,
.product-content-block--image-wide .product-content-block__copy .product-content-block__text{grid-column:2}
.product-content-block--text-only .product-content-block__inner{
  display:block;
  min-height:auto;
  max-width:1180px;
}
.product-content-block--text-only .product-content-block__copy{
  max-width:920px;
  margin-left:auto;
}
.product-content-block__media{
  margin:0;
  aspect-ratio:4/5;
  overflow:hidden;
  background:rgba(90,95,87,.18);
}
.product-content-block__media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.product-content-block__copy h2{
  max-width:760px;
  margin:14px 0 30px;
  font-size:clamp(3.2rem,5.2vw,6.4rem);
  line-height:.97;
  letter-spacing:-.045em;
}
.product-content-block__text{
  max-width:690px;
  color:rgba(23,25,22,.66);
  font-size:clamp(1.02rem,1.22vw,1.22rem);
  line-height:1.65;
}
.product-content-block__text p{margin:0 0 1.35em}
.product-content-block--forest .product-content-block__text,
.product-content-block--charcoal .product-content-block__text{
  color:rgba(255,255,255,.7);
}
.product-content-block--forest .eyebrow,
.product-content-block--charcoal .eyebrow{color:rgba(255,255,255,.72)}
@media(max-width:980px){
  .product-content-block__inner{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .product-content-block--image-right .product-content-block__media,
  .product-content-block--image-right .product-content-block__copy{order:initial}
  .product-content-block__media{aspect-ratio:4/3}
  .product-content-block--image-wide .product-content-block__copy{
    display:block;
  }
}

@media(max-width:680px){
  .product-content-block__inner{
    width:calc(100% - 32px);
    padding:85px 0;
    gap:48px;
  }
  .product-content-block__media,
  .product-content-block--image-wide .product-content-block__media{aspect-ratio:4/5}
  .product-content-block__copy h2{font-size:clamp(3rem,14vw,4.6rem)}
}

.homepage-newsletter{background:#2c3e36!important;color:#fff}.homepage-newsletter__inner,.footer-newsletter__inner{width:min(1480px,calc(100% - 48px));margin:0 auto}.homepage-newsletter__inner{padding:clamp(110px,13vw,210px) 0}.newsletter-form{display:grid;gap:clamp(45px,7vw,110px)}.newsletter-form--homepage{grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);align-items:end}.newsletter-form__copy h2{max-width:900px;margin:14px 0 28px;font-size:clamp(3.3rem,5.7vw,6.8rem);line-height:.96;letter-spacing:-.05em}.newsletter-form__copy>p:last-child{max-width:670px;color:rgba(255,255,255,.7);font-size:clamp(1.05rem,1.25vw,1.25rem);line-height:1.6}.newsletter-form__row{display:grid;grid-template-columns:1fr auto;border-bottom:1px solid rgba(255,255,255,.5)}.newsletter-form__row input,.newsletter-form__row button{min-height:64px;border:0;background:transparent;color:inherit;font:inherit}.newsletter-form__row input{width:100%;padding:0 18px 0 0}.newsletter-form__row input::placeholder{color:rgba(255,255,255,.62)}.newsletter-form__row button{padding-left:28px;font-weight:650}.newsletter-form__row input:disabled,.newsletter-form__row button:disabled{opacity:1;cursor:not-allowed}.newsletter-form__note,.newsletter-form__privacy{margin:14px 0 0;color:rgba(255,255,255,.54);font-size:.78rem;line-height:1.5}.footer-newsletter{background:#171916;color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}.footer-newsletter__inner{padding:clamp(72px,8vw,120px) 0}.newsletter-form--footer{grid-template-columns:minmax(0,1fr) minmax(420px,.8fr);align-items:end}.newsletter-form--footer .newsletter-form__copy h2{font-size:clamp(2.4rem,3.8vw,4.8rem)}@media(max-width:900px){.newsletter-form--homepage,.newsletter-form--footer{grid-template-columns:1fr}}@media(max-width:680px){.homepage-newsletter__inner,.footer-newsletter__inner{width:calc(100% - 32px)}.newsletter-form__row{grid-template-columns:1fr}.newsletter-form__row button{padding-left:0;text-align:left}}

/* Dřevěné sauny 0.15.1 — compact realizations and single global newsletter */
.homepage-newsletter{display:none!important}
.realizations-section{
  padding-top:clamp(72px,7vw,112px)!important;
  padding-bottom:clamp(72px,7vw,112px)!important;
}
.realizations-section__heading{
  margin-bottom:clamp(38px,4.5vw,66px)!important;
}
.realization-grid{
  grid-template-rows:repeat(2,minmax(220px,1fr));
}
.realization-card{
  min-height:270px;
}
.realization-card--large{
  min-height:560px;
}
.realizations-section__cta{
  margin-top:26px;
}
@media(max-width:1050px){
  .realization-card--large{min-height:500px}
}
@media(max-width:720px){
  .realizations-section{padding-top:70px!important;padding-bottom:70px!important}
  .realization-card,.realization-card--large{min-height:390px}
}

/* Dřevěné sauny 0.16 — Homepage 2.0: stronger hierarchy, shorter rhythm */
.homepage-v2{background:#faf8f3}
.homepage-v2 .home-hero{min-height:min(900px,calc(100svh - 82px))}
.home-intro-compact{padding:clamp(82px,8vw,128px) max(24px,calc((100vw - 1320px)/2));background:#f0ede6}
.home-intro-compact__inner{display:grid;grid-template-columns:.42fr 1.08fr .72fr;gap:clamp(35px,6vw,95px);align-items:start}
.home-intro-compact h2{margin:0;font-size:clamp(2.8rem,4.8vw,5.6rem);line-height:.98}
.home-intro-compact__inner>p:last-child{max-width:480px;margin:6px 0 0;color:var(--hd-muted);font-size:1.04rem;line-height:1.65}
.home-categories{padding:clamp(80px,8vw,125px) max(24px,calc((100vw - 1320px)/2));background:#faf8f3}
.home-section-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:end;max-width:1320px;margin:0 auto clamp(44px,5vw,72px)}
.home-section-heading>div{max-width:850px}
.home-section-heading h2{max-width:900px;margin:10px 0 0;font-size:clamp(2.8rem,4.8vw,5.6rem);line-height:.98}
.home-section-heading--center{display:block;max-width:900px;text-align:center}
.category-grid--compact{max-width:1320px;margin:0 auto}
.category-grid--compact .category-tile{grid-template-rows:clamp(300px,27vw,440px) minmax(150px,auto)}
.category-grid--compact .category-tile__body{padding-top:22px}
.category-grid--compact .category-tile__body>*{flex-shrink:0;max-width:100%;overflow-wrap:break-word}
/* Longer editable descriptions must grow the card instead of overlapping its link. */
.category-grid--compact .category-tile__body em{padding-top:18px}
.category-grid--compact .category-tile__body small{min-height:2.6em}
.home-cube-stage{padding:clamp(70px,7vw,105px) 24px;background:#e8e4db;transition:background-color .8s ease}
.home-cube-stage__inner{display:grid;grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr);min-height:min(760px,78svh);max-width:1480px;margin:0 auto;background:#f0ede6}
.home-cube-stage__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(55px,6vw,95px)}
.home-cube-stage__copy h2{margin:12px 0 25px;font-size:clamp(4.2rem,7vw,8rem);line-height:.9}
.home-cube-stage__lead{max-width:540px;color:var(--hd-muted);font-size:clamp(1.05rem,1.25vw,1.26rem);line-height:1.6}
.home-cube-stage__variants{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}
.home-cube-stage__variants span{padding:9px 13px;border:1px solid rgba(23,25,22,.18);font-size:.76rem;letter-spacing:.05em;text-transform:uppercase}
.home-cube-stage__media{display:block;overflow:hidden;min-height:100%}
.home-cube-stage__media img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.home-cube-stage__media:hover img{transform:scale(1.02)}
.home-sauna-collection{padding:clamp(85px,8vw,130px) max(24px,calc((100vw - 1320px)/2));background:#faf8f3}
.home-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,1.7vw,26px);max-width:1320px;margin:0 auto}
.home-product-card{display:grid;grid-template-rows:clamp(260px,24vw,380px) auto;text-decoration:none;color:inherit}
.home-product-card__media{display:block;overflow:hidden;background:#ddd7cb}
.home-product-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.home-product-card:hover img{transform:scale(1.02)}
.home-product-card__body{display:grid;gap:9px;padding:19px 2px 0}
.home-product-card__body strong{font-size:clamp(1.2rem,1.6vw,1.65rem);font-weight:590}
.home-product-card__body small{color:var(--hd-muted);line-height:1.5}
.home-product-card__body em{padding-top:10px;border-top:1px solid rgba(23,25,22,.14);font-size:.7rem;font-style:normal;font-weight:650;letter-spacing:.08em;text-transform:uppercase}
.home-hot-tubs{--hot-tub-bg:#e7dfd1;padding:clamp(90px,9vw,145px) 24px;background:var(--hot-tub-bg);transition:background-color .8s cubic-bezier(.22,.61,.36,1)}
.home-hot-tubs[data-active-tone="stone"]{--hot-tub-bg:#d9d8d2}
.home-hot-tubs[data-active-tone="forest"]{--hot-tub-bg:#2c3e36;color:#fff}
.home-hot-tubs__inner{max-width:1480px;margin:0 auto}
.home-hot-tubs__header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:45px;align-items:end;margin-bottom:45px}
.home-hot-tubs__header>div{max-width:940px}
.home-hot-tubs__header h2{margin:12px 0 0;font-size:clamp(3rem,5vw,6rem);line-height:.97}
.home-hot-tubs[data-active-tone="forest"] .eyebrow,.home-hot-tubs[data-active-tone="forest"] .text-link{color:#fff}
.home-hot-tubs__tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.home-hot-tubs__tabs button{padding:12px 17px;border:1px solid rgba(23,25,22,.2);background:transparent;color:inherit;font:inherit;cursor:pointer}
.home-hot-tubs__tabs button[aria-selected="true"]{background:#171916;color:#fff;border-color:#171916}
.home-hot-tubs[data-active-tone="forest"] .home-hot-tubs__tabs button{border-color:rgba(255,255,255,.3)}
.home-hot-tubs[data-active-tone="forest"] .home-hot-tubs__tabs button[aria-selected="true"]{background:#fff;color:#171916;border-color:#fff}
.home-hot-tub-panel{display:none;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);min-height:600px;background:rgba(255,255,255,.34)}
.home-hot-tub-panel.is-active{display:grid;animation:homePanelFade .45s ease both}
@keyframes homePanelFade{from{opacity:.25;transform:translateY(8px)}to{opacity:1;transform:none}}
.home-hot-tub-panel__media{display:block;overflow:hidden}
.home-hot-tub-panel__media img{width:100%;height:100%;object-fit:cover}
.home-hot-tub-panel__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(45px,5vw,80px)}
.home-hot-tub-panel__copy h3{margin:10px 0 20px;font-size:clamp(3rem,5vw,5.9rem);line-height:.92}
.home-hot-tub-panel__copy>p:not(.eyebrow):not(.product-meta){max-width:540px;color:var(--hd-muted);font-size:1.06rem;line-height:1.65}
.home-hot-tubs[data-active-tone="forest"] .home-hot-tub-panel{background:rgba(0,0,0,.16)}
.home-hot-tubs[data-active-tone="forest"] .home-hot-tub-panel__copy>p{color:rgba(255,255,255,.72)}
.home-cooling{padding:clamp(70px,7vw,110px) 24px;background:#171916;color:#fff}
.home-cooling__inner{display:grid;grid-template-columns:minmax(350px,.76fr) minmax(0,1.24fr);max-width:1320px;min-height:520px;margin:0 auto}
.home-cooling__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(45px,5vw,80px);background:#2c3e36}
.home-cooling__copy h2{margin:10px 0 22px;font-size:clamp(2.8rem,4.6vw,5.4rem);line-height:.97}
.home-cooling__copy>p:not(.eyebrow){max-width:520px;color:rgba(255,255,255,.7);line-height:1.65}
.home-cooling__media{overflow:hidden}
.home-cooling__media img{width:100%;height:100%;object-fit:cover}
.home-realizations{padding:clamp(82px,8vw,125px) max(24px,calc((100vw - 1320px)/2));background:#faf8f3}
.home-realizations__header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:end;max-width:1320px;margin:0 auto 48px}
.home-realizations__header h2{max-width:780px;margin:10px 0 0;font-size:clamp(3rem,4.8vw,5.7rem);line-height:.97}
.home-realizations__grid{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:repeat(2,220px);gap:22px;max-width:1320px;margin:0 auto}
.home-realization-card{position:relative;overflow:hidden;color:#fff;text-decoration:none}
.home-realization-card--large{grid-row:1/3}
.home-realization-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.home-realization-card:hover img{transform:scale(1.02)}
.home-realization-card:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(8,12,10,.7),transparent 62%)}
.home-realization-card span{position:absolute;z-index:2;left:24px;right:24px;bottom:22px;display:grid;gap:3px}
.home-realization-card strong{font-size:clamp(1.2rem,1.7vw,1.8rem)}
.home-realization-card small{color:rgba(255,255,255,.78)}
.home-proof{padding:clamp(80px,8vw,120px) max(24px,calc((100vw - 1320px)/2));background:#e8e4db}
.home-proof__heading{display:grid;grid-template-columns:.35fr 1fr;gap:clamp(45px,8vw,130px);align-items:start;max-width:1320px;margin:0 auto 52px}
.home-proof__heading h2{max-width:900px;margin:0;font-size:clamp(2.8rem,4.8vw,5.6rem);line-height:.98}
.home-proof__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:1320px;margin:0 auto;border-top:1px solid rgba(23,25,22,.16);border-left:1px solid rgba(23,25,22,.16)}
.home-proof__grid article{min-height:235px;padding:28px;border-right:1px solid rgba(23,25,22,.16);border-bottom:1px solid rgba(23,25,22,.16)}
.home-proof__grid span{font-size:.7rem;letter-spacing:.12em}
.home-proof__grid h3{margin:68px 0 10px;font-size:1.35rem}
.home-proof__grid p{color:var(--hd-muted);font-size:.92rem;line-height:1.55}
.home-process-compact{padding:clamp(78px,7vw,110px) max(24px,calc((100vw - 1320px)/2));background:#f0ede6}
.home-process-compact__heading{display:grid;grid-template-columns:.35fr 1fr;gap:clamp(45px,8vw,130px);max-width:1320px;margin:0 auto 48px}
.home-process-compact__heading h2{max-width:800px;margin:0;font-size:clamp(2.8rem,4.6vw,5.4rem);line-height:.98}
.home-process-compact__steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;max-width:1320px;margin:0 auto;background:rgba(23,25,22,.15)}
.home-process-compact__steps article{min-height:190px;padding:26px;background:#f0ede6}
.home-process-compact__steps b{font-size:.7rem;letter-spacing:.12em}
.home-process-compact__steps strong{display:block;margin:52px 0 8px;font-size:1.25rem}
.home-process-compact__steps p{margin:0;color:var(--hd-muted);font-size:.92rem}
.final-cta--compact{padding-top:clamp(95px,10vw,145px);padding-bottom:clamp(95px,10vw,145px)}
.final-cta--compact h2{font-size:clamp(3rem,5.3vw,6.3rem)}
@media(max-width:1050px){
  .home-intro-compact__inner{grid-template-columns:1fr 1.3fr}.home-intro-compact__inner>p:last-child{grid-column:2}
  .home-cube-stage__inner,.home-hot-tub-panel,.home-cooling__inner{grid-template-columns:1fr}.home-cube-stage__media{min-height:58vw}.home-hot-tub-panel__media{min-height:58vw}.home-cooling__media{min-height:55vw}
  .home-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-proof__grid,.home-process-compact__steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .homepage-v2 .home-hero{min-height:calc(100svh - 70px)}
  .home-intro-compact,.home-categories,.home-sauna-collection,.home-realizations,.home-proof,.home-process-compact{padding-left:16px;padding-right:16px}
  .home-intro-compact__inner,.home-section-heading,.home-hot-tubs__header,.home-realizations__header,.home-proof__heading,.home-process-compact__heading{display:block}
  .home-intro-compact__inner>p:last-child{margin-top:24px}
  .category-grid--compact .category-tile{grid-template-rows:min(85vw,430px) minmax(142px,auto)}
  .home-cube-stage,.home-hot-tubs,.home-cooling{padding-left:16px;padding-right:16px}
  .home-cube-stage__inner{min-height:auto}.home-cube-stage__copy{padding:52px 24px}.home-cube-stage__media{min-height:78vw}
  .home-product-grid{grid-template-columns:1fr}.home-product-card{grid-template-rows:min(82vw,430px) auto}
  .home-hot-tubs__header .text-link,.home-realizations__header .text-link{display:inline-block;margin-top:20px}
  .home-hot-tub-panel__copy{padding:50px 24px}.home-hot-tub-panel__media{min-height:78vw}
  .home-cooling__copy{padding:48px 24px}.home-cooling__media{min-height:78vw}
  .home-realizations__grid{grid-template-columns:1fr;grid-template-rows:none}.home-realization-card,.home-realization-card--large{grid-row:auto;min-height:380px}
  .home-proof__heading h2,.home-process-compact__heading h2{margin-top:18px}
  .home-proof__grid,.home-process-compact__steps{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.home-hot-tubs,.home-hot-tub-panel,.home-cube-stage__media img,.home-product-card img,.home-realization-card img{transition:none;animation:none}}


/* Dřevěné sauny 0.16.1 — homepage refinement */

/* Cleaner intro block */
.home-intro-v2{
  background:#f1eee7;
}
.home-intro-v2__inner{
  width:min(1180px,calc(100% - 48px));
  margin:0 auto;
  padding:clamp(90px,10vw,150px) 0;
  text-align:center;
}
.home-intro-v2__inner h2{
  max-width:980px;
  margin:16px auto 24px;
  font-size:clamp(3rem,5.3vw,6.2rem);
  line-height:.98;
  letter-spacing:-.05em;
}
.home-intro-v2__inner>p:last-child{
  max-width:720px;
  margin:0 auto;
  color:rgba(23,25,22,.64);
  font-size:clamp(1.02rem,1.25vw,1.22rem);
  line-height:1.65;
}

/* Hot tub tabs: fixed image height and consistent frame */
.home-hot-tubs-v2__panel,
.home-hot-tubs,
.hot-tubs-showcase{
  min-height:auto;
}
.home-hot-tubs-v2__media,
.home-hot-tubs__media,
.hot-tubs-showcase__media{
  height:clamp(520px,58vw,720px)!important;
  min-height:0!important;
  overflow:hidden!important;
}
.home-hot-tubs-v2__media img,
.home-hot-tubs__media img,
.hot-tubs-showcase__media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}
.home-hot-tubs-v2__panel,
.home-hot-tubs__panel,
.hot-tubs-showcase__panel{
  align-items:stretch!important;
}
.home-hot-tubs-v2__copy,
.home-hot-tubs__copy,
.hot-tubs-showcase__copy{
  min-height:100%!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}

/* Wide cold plunge block without black outer frame */
.home-cold-v2{
  background:#2c3e36;
  color:#fff;
  padding:0;
}
.home-cold-v2__inner{
  display:grid;
  grid-template-columns:minmax(360px,.72fr) minmax(0,1.28fr);
  width:min(1480px,calc(100% - 48px));
  margin:0 auto;
  min-height:620px;
}
.home-cold-v2__copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(55px,6vw,95px);
  background:#2c3e36;
}
.home-cold-v2__copy h2{
  max-width:580px;
  margin:16px 0 30px;
  font-size:clamp(3rem,5vw,5.8rem);
  line-height:.98;
  letter-spacing:-.05em;
}
.home-cold-v2__copy .eyebrow{
  color:rgba(255,255,255,.72);
}
.home-cold-v2__copy a{
  color:#fff;
  text-decoration:none;
  font-weight:650;
}
.home-cold-v2__media{
  min-height:620px;
  overflow:hidden;
}
.home-cold-v2__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
@media(max-width:900px){
  .home-cold-v2__inner{
    grid-template-columns:1fr;
    width:100%;
  }
  .home-cold-v2__media{
    min-height:480px;
  }
  .home-hot-tubs-v2__media,
  .home-hot-tubs__media,
  .hot-tubs-showcase__media{
    height:560px!important;
  }
}
@media(max-width:680px){
  .home-intro-v2__inner{
    width:calc(100% - 32px);
    padding:78px 0;
  }
  .home-cold-v2__copy{
    padding:72px 24px;
  }
  .home-cold-v2__media{
    min-height:390px;
  }
  .home-hot-tubs-v2__media,
  .home-hot-tubs__media,
  .hot-tubs-showcase__media{
    height:470px!important;
  }
}


/* Dřevěné sauny 0.17 — compact OotV-inspired product overviews */

.home-flagship-full{
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
}
.home-flagship-full>div,
.home-flagship-full .home-cube-v2__inner,
.home-flagship-full .home-flagship__inner{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
.home-flagship-full .home-cube-v2__panel,
.home-flagship-full .home-flagship__panel{
  border-radius:0!important;
}

.home-model-overview{
  background:#f8f6f1;
  color:#171916;
  border-top:1px solid rgba(23,25,22,.12);
}
.home-model-overview--tubs{
  background:#ece8df;
}
.home-model-overview__inner{
  width:min(1480px,calc(100% - 48px));
  margin:0 auto;
  padding:clamp(86px,9vw,145px) 0 clamp(70px,8vw,120px);
}
.home-model-overview__header{
  display:grid;
  grid-template-columns:.55fr 1.45fr;
  gap:clamp(45px,8vw,130px);
  align-items:start;
  margin-bottom:clamp(46px,5vw,75px);
}
.home-model-overview__header h2{
  max-width:950px;
  margin:0;
  font-size:clamp(2.8rem,4.7vw,5.6rem);
  line-height:.98;
  letter-spacing:-.05em;
}
.home-model-overview__tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:36px;
}
.home-model-overview__tabs button{
  border:1px solid rgba(23,25,22,.18);
  background:transparent;
  color:inherit;
  padding:13px 18px;
  font:inherit;
  cursor:pointer;
}
.home-model-overview__tabs button.is-active{
  background:#171916;
  color:#fff;
  border-color:#171916;
}
.home-model-overview__panel{
  display:grid;
  grid-template-columns:1.15fr .72fr .72fr;
  column-gap:clamp(40px,6vw,95px);
  row-gap:60px;
  min-height:390px;
}
.home-model-overview__panel[hidden]{display:none!important}
.home-model-overview__intro h3{
  margin:0 0 25px;
  font-size:clamp(2.2rem,3.2vw,4rem);
  line-height:1;
  letter-spacing:-.04em;
}
.home-model-overview__intro p{
  max-width:620px;
  margin:0 0 20px;
  font-size:clamp(1.02rem,1.2vw,1.18rem);
  line-height:1.55;
  color:rgba(23,25,22,.76);
}
.home-model-overview__specs{
  display:grid;
  align-content:start;
  gap:17px;
  margin:0;
}
.home-model-overview__specs div{
  padding-bottom:13px;
  border-bottom:1px solid rgba(23,25,22,.12);
}
.home-model-overview__specs dt{
  margin-bottom:3px;
  font-size:.77rem;
  color:rgba(23,25,22,.58);
}
.home-model-overview__specs dd{
  margin:0;
  font-weight:650;
  line-height:1.35;
}
.home-model-overview__footer{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:30px;
  align-items:center;
  padding-top:38px;
  border-top:1px solid rgba(23,25,22,.14);
}
.home-model-overview__footer .button-outline{
  justify-self:start;
  padding:14px 20px;
  border:1px solid rgba(23,25,22,.25);
  color:inherit;
  text-decoration:none;
}
.home-model-overview__browse{
  display:flex;
  align-items:center;
  gap:12px;
}
.home-model-overview__browse span{
  margin-right:16px;
  font-size:.88rem;
}
.home-model-overview__browse button{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:1px solid rgba(23,25,22,.25);
  border-radius:50%;
  background:transparent;
  cursor:pointer;
}
.home-model-overview__thumb{
  justify-self:end;
  color:inherit;
  text-decoration:none;
  font-weight:600;
  font-size:.9rem;
}

@media(max-width:1050px){
  .home-model-overview__panel{
    grid-template-columns:1fr 1fr;
  }
  .home-model-overview__intro{
    grid-column:1/-1;
  }
}
@media(max-width:760px){
  .home-model-overview__inner{
    width:calc(100% - 32px);
    padding:78px 0;
  }
  .home-model-overview__header{
    grid-template-columns:1fr;
    gap:16px;
  }
  .home-model-overview__panel{
    grid-template-columns:1fr;
    row-gap:35px;
  }
  .home-model-overview__footer{
    grid-template-columns:1fr;
    justify-items:start;
  }
  .home-model-overview__thumb{
    justify-self:start;
  }
}


/* Dřevěné sauny 0.17.2 — active model preview */
.home-model-overview__preview{
  justify-self:end;
  display:grid;
  grid-template-columns:112px minmax(90px,auto);
  gap:16px;
  align-items:center;
  color:inherit;
  text-decoration:none;
  font-weight:600;
  font-size:.9rem;
}
.home-model-overview__preview img{
  display:block;
  width:112px;
  height:76px;
  object-fit:cover;
  background:#dedad1;
}
.home-model-overview__preview span{
  max-width:155px;
  line-height:1.35;
}
.home-model-overview__preview:hover span{
  text-decoration:underline;
  text-underline-offset:4px;
}
@media(max-width:760px){
  .home-model-overview__preview{
    justify-self:start;
    grid-template-columns:96px auto;
  }
  .home-model-overview__preview img{
    width:96px;
    height:68px;
  }
}


/* Dřevěné sauny 0.18 — sjednocení CUBE, hover bloků a dynamické modely */
.home-cube-stage{
  padding-left:0!important;
  padding-right:0!important;
  background:#ded8cd!important;
}
.home-cube-stage__inner{
  max-width:none!important;
  width:100%!important;
  background:#ded8cd!important;
}
.home-cube-stage__copy{background:#ded8cd!important}
.home-cube-stage__media{background:#ded8cd!important}
.home-model-overview__placeholder{
  display:block;width:112px;height:76px;background:linear-gradient(135deg,#d8d3c9,#a4a99f);
}
.home-model-overview__archive{
  display:inline-block;margin-top:34px;color:inherit;text-decoration:none;font-weight:650;
}
.home-proof__grid article,
.home-process-compact__steps article{
  transition:background-color .28s ease,color .28s ease,transform .28s ease;
}
@media(hover:hover) and (pointer:fine){
  .home-proof__grid article:hover,
  .home-process-compact__steps article:hover{
    background:#2c3e36;color:#fff;transform:translateY(-3px);
  }
  .home-proof__grid article:hover p,
  .home-process-compact__steps article:hover p{
    color:rgba(255,255,255,.72);
  }
}
.newsletter-form__status{
  min-height:1.4em;margin:12px 0 0;font-size:.82rem;color:rgba(255,255,255,.72);
}
.newsletter-form__row input:focus{
  outline:2px solid rgba(255,255,255,.75);outline-offset:4px;
}


/* Dřevěné sauny 0.18.2 — kontrastní přehled koupacích sudů */
.home-model-overview--hot_tubs{
  background:#2c3e36;
  color:#f5f1e9;
  border-top-color:rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.10);
}
.home-model-overview--hot_tubs .home-model-overview__inner{
  padding-top:clamp(92px,9vw,150px);
  padding-bottom:clamp(82px,8vw,130px);
}
.home-model-overview--hot_tubs .eyebrow{
  color:rgba(245,241,233,.64);
}
.home-model-overview--hot_tubs .home-model-overview__header h2,
.home-model-overview--hot_tubs .home-model-overview__intro h3,
.home-model-overview--hot_tubs .home-model-overview__specs dd,
.home-model-overview--hot_tubs .home-model-overview__footer,
.home-model-overview--hot_tubs .home-model-overview__archive{
  color:#f5f1e9;
}
.home-model-overview--hot_tubs .home-model-overview__intro p{
  color:rgba(245,241,233,.72);
}
.home-model-overview--hot_tubs .home-model-overview__specs div,
.home-model-overview--hot_tubs .home-model-overview__footer{
  border-color:rgba(255,255,255,.14);
}
.home-model-overview--hot_tubs .home-model-overview__specs dt{
  color:rgba(245,241,233,.54);
}
.home-model-overview--hot_tubs .home-model-overview__tabs button{
  color:#f5f1e9;
  border-color:rgba(255,255,255,.26);
  background:transparent;
}
.home-model-overview--hot_tubs .home-model-overview__tabs button:hover{
  border-color:rgba(255,255,255,.55);
  background:rgba(255,255,255,.05);
}
.home-model-overview--hot_tubs .home-model-overview__tabs button.is-active{
  background:#f0eadf;
  color:#1d2924;
  border-color:#f0eadf;
}
.home-model-overview--hot_tubs .button-outline{
  color:#f5f1e9;
  border-color:rgba(255,255,255,.34);
}
.home-model-overview--hot_tubs .button-outline:hover{
  background:#f0eadf;
  color:#1d2924;
  border-color:#f0eadf;
}
.home-model-overview--hot_tubs .home-model-overview__browse button{
  color:#f5f1e9;
  border-color:rgba(255,255,255,.3);
}
.home-model-overview--hot_tubs .home-model-overview__browse button:hover{
  background:#f0eadf;
  color:#1d2924;
  border-color:#f0eadf;
}
.home-model-overview--hot_tubs .home-model-overview__preview{
  grid-template-columns:180px minmax(110px,auto);
  gap:22px;
  color:#f5f1e9;
}
.home-model-overview--hot_tubs .home-model-overview__preview img,
.home-model-overview--hot_tubs .home-model-overview__placeholder{
  width:180px;
  height:118px;
  object-fit:cover;
  background:linear-gradient(135deg,#53675d,#203129);
}
.home-model-overview--hot_tubs .home-model-overview__preview span{
  max-width:175px;
  font-size:.95rem;
}
.home-model-overview--hot_tubs .home-model-overview__archive{
  text-decoration-color:rgba(255,255,255,.28);
}
.home-model-overview--hot_tubs .home-model-overview__archive:hover{
  text-decoration:underline;
  text-underline-offset:5px;
}
@media(max-width:760px){
  .home-model-overview--hot_tubs .home-model-overview__preview{
    grid-template-columns:128px auto;
  }
  .home-model-overview--hot_tubs .home-model-overview__preview img,
  .home-model-overview--hot_tubs .home-model-overview__placeholder{
    width:128px;
    height:86px;
  }
}


/* Dřevěné sauny 0.18.3 — kratší přechod mezi přehledy a čistší spodní navigace */
.home-model-overview--saunas .home-model-overview__inner{
  padding-bottom:clamp(48px,5vw,76px);
}
.home-model-overview--hot_tubs .home-model-overview__inner{
  padding-top:clamp(68px,7vw,108px);
}
.home-model-overview__footer{
  margin-bottom:0;
}
.home-model-overview__preview{
  min-width:0;
}
.home-model-overview__preview span{
  font-weight:650;
}
.home-model-overview__archive{
  display:none!important;
}
@media(max-width:760px){
  .home-model-overview--saunas .home-model-overview__inner{
    padding-bottom:54px;
  }
  .home-model-overview--hot_tubs .home-model-overview__inner{
    padding-top:62px;
  }
}


/* Dřevěné sauny 0.18.4 — sjednocený interaktivní systém tlačítek */

/* Společný plynulý pohyb bez změny rozměrů prvků */
.home-model-overview__tabs button,
.home-model-overview .button-outline,
.home-model-overview__browse button,
.home-model-overview__preview,
.home-hero .button,
.final-cta .button{
  transition:
    background-color .26s ease,
    color .26s ease,
    border-color .26s ease,
    transform .26s ease,
    box-shadow .26s ease;
}

/* Světlý přehled saun — opačné provedení proti zelenému bloku sudů */
@media(hover:hover) and (pointer:fine){
  .home-model-overview--saunas .home-model-overview__tabs button:hover{
    background:#2c3e36;
    color:#f5f1e9;
    border-color:#2c3e36;
  }

  .home-model-overview--saunas .home-model-overview__tabs button.is-active:hover{
    background:#3a5045;
    color:#fff;
    border-color:#3a5045;
  }

  .home-model-overview--saunas .button-outline:hover{
    background:#2c3e36;
    color:#f5f1e9;
    border-color:#2c3e36;
    transform:translateY(-2px);
  }

  .home-model-overview--saunas .home-model-overview__browse button:hover{
    background:#2c3e36;
    color:#f5f1e9;
    border-color:#2c3e36;
    transform:translateY(-2px);
  }

  .home-model-overview--saunas .home-model-overview__preview:hover{
    color:#2c3e36;
    transform:translateY(-2px);
  }

  .home-model-overview--saunas .home-model-overview__preview:hover img,
  .home-model-overview--saunas .home-model-overview__preview:hover .home-model-overview__placeholder{
    box-shadow:0 12px 30px rgba(44,62,54,.18);
  }
}

/* Hero — záměna světlého a tmavého provedení */
@media(hover:hover) and (pointer:fine){
  .home-hero .button:hover{
    transform:translateY(-3px);
  }

  .home-hero .button--light:hover{
    background:#2c3e36;
    color:#fff;
    border-color:#2c3e36;
    box-shadow:0 14px 36px rgba(0,0,0,.20);
  }

  .home-hero .button--ghost-light:hover{
    background:#f5f1e9;
    color:#1d2924;
    border-color:#f5f1e9;
    box-shadow:0 14px 36px rgba(0,0,0,.16);
  }
}

/* Závěrečné CTA „Navrhnout řešení“ */
@media(hover:hover) and (pointer:fine){
  .final-cta .button--light:hover{
    background:#f5f1e9;
    color:#1d2924;
    border-color:#f5f1e9;
    transform:translateY(-3px);
    box-shadow:0 16px 38px rgba(0,0,0,.18);
  }
}

/* Viditelný focus pro klávesnici */
.home-model-overview__tabs button:focus-visible,
.home-model-overview .button-outline:focus-visible,
.home-model-overview__browse button:focus-visible,
.home-model-overview__preview:focus-visible,
.home-hero .button:focus-visible,
.final-cta .button:focus-visible{
  outline:2px solid currentColor;
  outline-offset:4px;
}


/* Dřevěné sauny 0.18.5 — hero hover a závěrečné CTA */
.home-hero .button,
.home-hero .button--light,
.home-hero .button--ghost-light{
  background:transparent!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.72)!important;
  box-shadow:none!important;
}
@media(hover:hover) and (pointer:fine){
  .home-hero .button:hover,
  .home-hero .button--light:hover,
  .home-hero .button--ghost-light:hover{
    background:#fff!important;
    color:#1d2924!important;
    border-color:#fff!important;
    transform:translateY(-3px);
    box-shadow:0 14px 36px rgba(0,0,0,.18)!important;
  }
}
.final-cta{
  background:#2c3e36!important;
  color:#f5f1e9!important;
}
.final-cta::before,
.final-cta::after{
  opacity:0!important;
}
.final-cta .eyebrow,
.final-cta p{
  color:rgba(245,241,233,.72)!important;
}
.final-cta h2,
.final-cta h3{
  color:#f5f1e9!important;
}
.final-cta .button,
.final-cta .button--light{
  background:transparent!important;
  color:#f5f1e9!important;
  border-color:rgba(245,241,233,.75)!important;
}
@media(hover:hover) and (pointer:fine){
  .final-cta .button:hover,
  .final-cta .button--light:hover{
    background:#f5f1e9!important;
    color:#1d2924!important;
    border-color:#f5f1e9!important;
    transform:translateY(-3px);
    box-shadow:0 16px 38px rgba(0,0,0,.22)!important;
  }
}


/* Dřevěné sauny 0.19 — editovatelný hero slider */
.home-hero{
  position:relative;
  overflow:hidden;
}
.home-hero-slider{
  position:absolute;
  inset:0;
  z-index:0;
}
.home-hero-slider__slides,
.home-hero-slider__slide{
  position:absolute;
  inset:0;
}
.home-hero-slider__slide{
  opacity:0;
  visibility:hidden;
  transition:opacity 1.1s ease,visibility 1.1s ease;
}
.home-hero-slider__slide.is-active{
  opacity:1;
  visibility:visible;
}
.home-hero-slider__slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.home-hero-slider::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(0,0,0,.42) 0%,rgba(0,0,0,.04) 32%,rgba(0,0,0,.32) 100%);
  pointer-events:none;
}
.home-hero>.container,
.home-hero__content{
  position:relative;
  z-index:2;
}
.home-hero-slider__controls{
  position:absolute;
  z-index:3;
  right:max(24px,calc((100vw - 1440px)/2));
  bottom:34px;
  display:flex;
  align-items:center;
  gap:12px;
  color:#fff;
}
.home-hero-slider__label{
  margin-right:12px;
  color:#fff;
  text-decoration:none;
  font-size:.92rem;
  text-shadow:0 1px 15px rgba(0,0,0,.35);
}
.home-hero-slider__controls button{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.42);
  border-radius:50%;
  background:rgba(0,0,0,.08);
  color:#fff;
  cursor:pointer;
  backdrop-filter:blur(8px);
  transition:background-color .25s ease,color .25s ease,border-color .25s ease,transform .25s ease;
}
@media(hover:hover) and (pointer:fine){
  .home-hero-slider__controls button:hover{
    background:#fff;
    color:#1d2924;
    border-color:#fff;
    transform:translateY(-2px);
  }
  .home-hero-slider__label:hover{
    text-decoration:underline;
    text-underline-offset:5px;
  }
}
.home-hero-slider__controls button:focus-visible,
.home-hero-slider__label:focus-visible{
  outline:2px solid #fff;
  outline-offset:4px;
}
@media(prefers-reduced-motion:reduce){
  .home-hero-slider__slide{
    transition:none;
  }
}
@media(max-width:760px){
  .home-hero-slider__controls{
    right:20px;
    bottom:22px;
  }
  .home-hero-slider__label{
    max-width:160px;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
  }
}


/* Dřevěné sauny 0.20 — globální akční lišta */
.promotion-bar{
  position:relative;
  z-index:1001;
  width:100%;
  font-size:.82rem;
  line-height:1.35;
}
.promotion-bar--dark{
  background:#111713;
  color:#f7f3eb;
}
.promotion-bar--green{
  background:#2c3e36;
  color:#f7f3eb;
}
.promotion-bar--light{
  background:#e8e4db;
  color:#171b18;
}
.promotion-bar__inner{
  width:min(100% - 40px,1360px);
  min-height:38px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:20px;
}
.promotion-bar__inner p{
  margin:0;
  text-align:center;
}
.promotion-bar__inner a{
  margin-left:12px;
  color:inherit;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
}
.promotion-bar__close{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  font-size:1.2rem;
  cursor:pointer;
  opacity:.72;
}
@media(hover:hover) and (pointer:fine){
  .promotion-bar__inner a:hover{
    text-decoration:underline;
    text-underline-offset:4px;
  }
  .promotion-bar__close:hover{
    opacity:1;
    transform:scale(1.08);
  }
}
.promotion-bar__inner a:focus-visible,
.promotion-bar__close:focus-visible{
  outline:2px solid currentColor;
  outline-offset:3px;
}
.promotion-bar[hidden]{
  display:none!important;
}
@media(max-width:760px){
  .promotion-bar{
    font-size:.76rem;
  }
  .promotion-bar__inner{
    width:min(100% - 24px,1360px);
    min-height:44px;
    gap:8px;
  }
  .promotion-bar__inner p{
    text-align:left;
  }
  .promotion-bar__inner a{
    display:inline-block;
    margin-left:6px;
  }
}


/* Dřevěné sauny 0.20.1 — prémiovější globální akční lišta */
.promotion-bar{
  font-size:.86rem;
  letter-spacing:.005em;
}
.promotion-bar--green{
  background:#2c3e36;
  color:#f7f3eb;
}
.promotion-bar__inner{
  width:min(100% - 48px,1380px);
  min-height:44px;
  grid-template-columns:1fr 40px;
}
.promotion-bar__inner p{
  font-weight:500;
}
.promotion-bar__inner a{
  margin-left:16px;
  font-weight:700;
  padding-bottom:1px;
  border-bottom:1px solid rgba(247,243,235,.38);
  transition:border-color .22s ease,opacity .22s ease;
}
.promotion-bar__close{
  justify-self:end;
  width:34px;
  height:34px;
  font-size:1.25rem;
  opacity:.82;
  transition:opacity .22s ease,background-color .22s ease,transform .22s ease;
}
@media(hover:hover) and (pointer:fine){
  .promotion-bar__inner a:hover{
    text-decoration:none;
    border-bottom-color:currentColor;
    opacity:.9;
  }
  .promotion-bar__close:hover{
    opacity:1;
    background:rgba(255,255,255,.08);
    transform:none;
  }
}
@media(max-width:760px){
  .promotion-bar{
    font-size:.78rem;
  }
  .promotion-bar__inner{
    width:min(100% - 24px,1380px);
    min-height:48px;
    grid-template-columns:1fr 34px;
  }
  .promotion-bar__inner p{
    line-height:1.42;
  }
  .promotion-bar__inner a{
    margin-left:8px;
  }
}

/* Dřevěné sauny 0.20.2 — zpožděné vyjetí akční lišty */
.promotion-bar{
  overflow:hidden;
  max-height:70px;
  opacity:1;
  transform:translateY(0);
  transition:max-height .52s cubic-bezier(.22,.7,.18,1),opacity .38s ease,transform .52s cubic-bezier(.22,.7,.18,1);
  will-change:max-height,opacity,transform;
}
.promotion-bar--pending{
  max-height:0;
  opacity:0;
  transform:translateY(-100%);
  pointer-events:none;
}
.promotion-bar--visible{
  max-height:70px;
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
}
@media(prefers-reduced-motion:reduce){.promotion-bar{transition:none}}


/* =========================================================
   Dřevěné sauny 0.21.0 — komplexní mobilní optimalizace
   ========================================================= */
.mobile-site-menu{display:none}

@media(max-width:760px){
  :root{--mobile-gutter:28px}
  html,body{overflow-x:hidden}
}

/* Match the desktop navigation cutoff; tablet must not lose both menus. */
@media(max-width:1050px){
  body.mobile-menu-open{overflow:hidden;touch-action:none}

  .site-header{min-height:82px}
  .site-header__inner{
    min-height:82px;
    padding:0 var(--mobile-gutter,28px);
    display:flex;
    align-items:center;
    justify-content:space-between;
  }
  .site-brand{gap:7px}
  .site-brand__wordmark{font-size:1.72rem;letter-spacing:.16em;line-height:1}
  .site-brand__descriptor{font-size:.7rem;letter-spacing:.18em;line-height:1.2}
  .primary-navigation,.site-header__cta{display:none!important}

  .mobile-menu-toggle{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-width:94px;
    min-height:46px;
    padding:0 16px;
    border:1px solid rgba(23,27,24,.18);
    background:transparent;
    color:#171b18;
    font:inherit;
    font-size:.94rem;
    cursor:pointer;
  }
  .mobile-menu-toggle__icon{
    width:18px;height:12px;position:relative;display:block
  }
  .mobile-menu-toggle__icon i{
    position:absolute;left:0;width:18px;height:1px;background:currentColor
  }
  .mobile-menu-toggle__icon i:first-child{top:2px}
  .mobile-menu-toggle__icon i:last-child{bottom:2px}

  .mobile-site-menu{
    position:fixed;
    inset:0;
    z-index:99999;
    display:grid;
    grid-template-rows:auto 1fr auto;
    background:#f7f4ee;
    color:#171b18;
    padding:max(24px,env(safe-area-inset-top)) var(--mobile-gutter,28px) max(28px,env(safe-area-inset-bottom));
    opacity:0;
    transform:translateY(-16px);
    pointer-events:none;
    transition:opacity .28s ease,transform .32s cubic-bezier(.22,.7,.18,1);
  }
  .mobile-site-menu[hidden]{display:none!important}
  .mobile-site-menu.is-open{opacity:1;transform:translateY(0);pointer-events:auto}
  .mobile-site-menu__top{
    display:flex;align-items:flex-start;justify-content:space-between;gap:20px;
    padding-bottom:24px;border-bottom:1px solid rgba(23,27,24,.12)
  }
  .mobile-site-menu__brand{display:grid;gap:7px}
  .mobile-site-menu__brand strong{font-size:1.65rem;letter-spacing:.16em}
  .mobile-site-menu__brand span{font-size:.72rem;letter-spacing:.18em;color:#77746f}
  .mobile-site-menu__close{
    width:46px;height:46px;display:grid;place-items:center;
    border:1px solid rgba(23,27,24,.18);background:transparent;
    font-size:1.8rem;line-height:1;cursor:pointer
  }
  .mobile-site-menu__nav{padding:34px 0 24px}
  .mobile-site-menu__nav ul{display:grid;gap:0;margin:0;padding:0;list-style:none}
  .mobile-site-menu__nav li{border-bottom:1px solid rgba(23,27,24,.12)}
  .mobile-site-menu__nav a{
    min-height:64px;display:flex;align-items:center;justify-content:space-between;
    color:#171b18;text-decoration:none;font-size:clamp(1.55rem,7vw,2rem);line-height:1.1
  }
  .mobile-site-menu__nav a::after{content:"→";font-size:1.1rem}
  .mobile-site-menu__footer{padding-top:24px}
  .mobile-site-menu__support{
    min-height:48px;display:flex;align-items:center;justify-content:space-between;
    gap:16px;margin-top:16px;padding:8px 0;color:#2c3e36;text-decoration:underline;
    text-underline-offset:4px;font-weight:600
  }
  .mobile-site-menu__support:focus-visible{outline:2px solid #2c3e36;outline-offset:4px}
  .mobile-site-menu__cta{
    min-height:58px;display:flex;align-items:center;justify-content:center;
    background:#2c3e36;color:#f7f3eb;text-decoration:none;font-weight:700
  }
  .mobile-site-menu .menu-item-language{padding-left:0;border-left:0}
}

@media(max-width:760px){
  .home-hero{min-height:calc(100svh - 82px);max-height:none}
  .home-hero__content,.home-hero>.container{
    min-height:calc(100svh - 82px);
    padding:72px var(--mobile-gutter) 116px;
    display:flex;flex-direction:column;justify-content:center
  }
  .home-hero h1,.home-hero__title{
    max-width:100%;margin:0;
    font-size:clamp(3.05rem,13vw,4rem)!important;
    line-height:.94!important;letter-spacing:-.055em;text-wrap:balance
  }
  .home-hero__eyebrow,.home-hero .eyebrow{
    margin-bottom:24px;font-size:.72rem;letter-spacing:.22em
  }
  .home-hero__lead,.home-hero__content>p{
    max-width:31rem;margin-top:28px;
    font-size:1.1rem!important;line-height:1.55!important
  }
  .home-hero__actions{
    display:grid!important;grid-template-columns:1fr;width:100%;
    gap:12px!important;margin-top:32px!important
  }
  .home-hero__actions a,.home-hero__actions .button{
    width:100%;min-height:56px;display:flex;align-items:center;justify-content:center
  }
  .home-hero-slider__controls{
    left:var(--mobile-gutter);right:var(--mobile-gutter);bottom:28px;justify-content:flex-end
  }
  .home-hero-slider__label{margin-right:auto;max-width:150px}

  .intro-section h2,.categories-section h2,.model-overview h2,.tub-overview h2,
  .section-heading h2,main h2{
    font-size:clamp(2.65rem,10.5vw,3.55rem)!important;
    line-height:1!important;letter-spacing:-.045em;text-wrap:balance
  }
  .intro-section p,.section-intro,.section-lead{
    font-size:1.1rem!important;line-height:1.58!important
  }

  .intro-section,.categories-section,.model-overview,.tub-overview,
  .realizations-section,.expertise-section,.process-section,.final-cta{
    padding-top:88px!important;padding-bottom:88px!important
  }
  .intro-section{padding-top:104px!important;padding-bottom:104px!important}

  .categories-grid,.offer-grid{
    display:grid!important;grid-template-columns:1fr!important;gap:64px!important
  }
  .category-card img,.offer-card img{
    width:100%;aspect-ratio:4/3;object-fit:cover
  }
  .category-card__content,.offer-card__content{padding-top:24px!important}
  .category-card h3,.offer-card h3{font-size:1.55rem!important}
  .category-card p,.offer-card p{font-size:1rem!important;line-height:1.5!important}

  .cube-feature,.flagship-section{padding-top:92px!important;padding-bottom:0!important}
  .cube-feature__content,.flagship-section__content{
    padding-left:var(--mobile-gutter)!important;padding-right:var(--mobile-gutter)!important
  }
  .cube-feature h2,.flagship-section h2{
    font-size:clamp(3.9rem,17vw,5.6rem)!important
  }
  .cube-feature__image,.flagship-section__image{margin-top:56px!important}
  .cube-feature__image img,.flagship-section__image img{
    width:100%;min-height:420px;object-fit:cover
  }

  .model-overview__tabs,.tub-overview__tabs,.model-tabs{
    display:flex!important;flex-wrap:wrap!important;gap:10px!important
  }
  .model-overview__tabs button,.tub-overview__tabs button,.model-tabs button{
    min-height:54px;padding:0 18px!important;font-size:1rem!important
  }
  .model-overview__content,.tub-overview__content{padding-top:46px!important}
  .model-overview__title,.tub-overview__title{
    font-size:clamp(2.7rem,12vw,4rem)!important;line-height:1!important
  }
  .model-overview__description,.tub-overview__description{
    font-size:1.08rem!important;line-height:1.6!important
  }
  .model-overview__specs,.tub-overview__specs{margin-top:34px!important}
  .model-overview__specs li,.tub-overview__specs li{padding:20px 0!important}
  .model-overview__footer,.tub-overview__footer{
    display:grid!important;gap:28px!important;margin-top:38px!important
  }
  .model-overview__controls,.tub-overview__controls{justify-content:flex-start!important}
  .model-overview__all,.tub-overview__all{margin-top:44px!important}

  .container,.section-inner,.content-wrap{max-width:100%}
  img{max-width:100%;height:auto}

  .promotion-bar__inner{gap:6px}
  .promotion-bar__inner p{padding:8px 0}
  .promotion-bar__inner a{white-space:nowrap}
}

@media(max-width:390px){
  :root{--mobile-gutter:22px}
  .home-hero h1,.home-hero__title{
    font-size:clamp(2.75rem,13.5vw,3.45rem)!important
  }
  .intro-section h2,.categories-section h2,.model-overview h2,.tub-overview h2,
  .section-heading h2,main h2{
    font-size:clamp(2.35rem,10.5vw,3rem)!important
  }
  .mobile-menu-toggle{min-width:84px;padding:0 12px}
}


/* Dřevěné sauny 0.21.1 — oprava mobilního menu a hero */
@media(max-width:760px){
  .mobile-menu-toggle{
    color:#171b18!important;
    -webkit-appearance:none;
    appearance:none;
  }

  .home-hero__content,
  .home-hero>.container,
  .hero--hd .hero__content{
    width:100%;
    max-width:100%;
    min-height:calc(100svh - 82px);
    padding:64px var(--mobile-gutter) 126px!important;
  }

  .home-hero h1,
  .home-hero__title,
  .hero--hd h1{
    width:100%;
    max-width:340px!important;
    font-size:clamp(2.8rem,11.7vw,3.25rem)!important;
    line-height:.98!important;
    letter-spacing:-.05em!important;
    overflow-wrap:normal;
    word-break:normal;
    text-wrap:wrap;
  }

  .home-hero__lead,
  .home-hero__content>p,
  .hero--hd .hero__lead{
    max-width:330px;
    font-size:1.03rem!important;
    line-height:1.5!important;
  }

  .home-hero-slider__controls{
    bottom:30px;
  }
}

@media(max-width:390px){
  .home-hero h1,
  .home-hero__title,
  .hero--hd h1{
    max-width:310px!important;
    font-size:clamp(2.55rem,11.5vw,2.95rem)!important;
  }
}


/* Dřevěné sauny 0.21.2 — Safari fullscreen menu layer */
@media(max-width:1050px){
  .mobile-site-menu{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    min-height:100svh!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    box-sizing:border-box;
    background:#f7f4ee!important;
    color:#171b18!important;
    isolation:isolate;
    contain:layout paint;
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }

  .mobile-site-menu::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:-1;
    background:#f7f4ee;
    pointer-events:none;
  }

  .mobile-site-menu__nav,
  .mobile-site-menu__footer,
  .mobile-site-menu__top{
    position:relative;
    z-index:1;
  }

  .mobile-site-menu__nav ul,
  .mobile-site-menu__nav li,
  .mobile-site-menu__nav a{
    background:transparent!important;
  }

  .mobile-site-menu__close{
    color:#171b18!important;
    -webkit-tap-highlight-color:transparent;
  }

  .mobile-site-menu__close:focus:not(:focus-visible){
    outline:none;
  }
}


/* Dřevěné sauny 0.21.3 — desktopová oprava mobilního tlačítka */
.mobile-menu-toggle{
  display:none;
}

@media(max-width:760px){
  .mobile-menu-toggle{
    display:inline-flex!important;
  }
}


/* Dřevěné sauny 0.21.4 — spolehlivé vrstvení hero slideru */
.home-hero-slider__slides{
  position:absolute;
  inset:0;
  isolation:isolate;
  overflow:hidden;
}

.home-hero-slider__slide{
  display:block;
  z-index:0;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .9s ease;
  will-change:opacity;
}

.home-hero-slider__slide.is-active{
  z-index:2;
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.home-hero-slider__slide.is-leaving{
  z-index:1;
  opacity:0;
  visibility:visible;
  pointer-events:none;
}

.home-hero-slider__controls{
  z-index:10;
  pointer-events:auto;
}

.home-hero-slider__controls button,
.home-hero-slider__label{
  position:relative;
  z-index:11;
}

@media(prefers-reduced-motion:reduce){
  .home-hero-slider__slide{
    transition:none!important;
  }
}


/* Dřevěné sauny 0.21.5 — samostatný hero slider */
.home-hero-slider__slide{
  opacity:0!important;
  visibility:hidden!important;
  z-index:0!important;
  pointer-events:none!important;
}
.home-hero-slider__slide.is-active{
  opacity:1!important;
  visibility:visible!important;
  z-index:2!important;
  pointer-events:auto!important;
}
.home-hero-slider__controls,
.home-hero-slider__controls *{
  pointer-events:auto!important;
}


/* =========================================================
   Dřevěné sauny 0.22.0 — definitivní hero slider
   ========================================================= */
.home-hero-slider{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  overflow:hidden!important;
}
.home-hero-slider__slides{
  position:absolute!important;
  inset:0!important;
  isolation:isolate!important;
  overflow:hidden!important;
}
.home-hero-slider__slide{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  opacity:0!important;
  visibility:hidden!important;
  z-index:0!important;
  pointer-events:none!important;
  transition:opacity .9s ease!important;
}
.home-hero-slider__slide.is-active{
  opacity:1!important;
  visibility:visible!important;
  z-index:2!important;
  pointer-events:auto!important;
}
.home-hero-slider__slide img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
}
.home-hero-slider::after{
  z-index:3!important;
  pointer-events:none!important;
}
.hero--hd .hero__overlay{
  z-index:4!important;
  pointer-events:none!important;
}
.hero--hd .hero__content{
  position:relative!important;
  z-index:5!important;
}
.home-hero-slider__controls{
  position:absolute!important;
  z-index:6!important;
  pointer-events:auto!important;
}
.home-hero-slider__controls button,
.home-hero-slider__label{
  position:relative!important;
  z-index:7!important;
  pointer-events:auto!important;
}
@media(prefers-reduced-motion:reduce){
  .home-hero-slider__slide{transition:none!important}
}


/* =========================================================
   Dřevěné sauny 0.23.0 — nový robustní hero carousel
   Ruční ovládání funguje nativně přes radio + label.
   ========================================================= */
.hd-hero-carousel{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  isolation:isolate;
}

.hd-hero-carousel__state{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
}

.hd-hero-carousel__slides,
.hd-hero-carousel__slide{
  position:absolute;
  inset:0;
}

.hd-hero-carousel__slide{
  z-index:0;
  opacity:0;
  visibility:hidden;
  transition:opacity .9s ease,visibility .9s ease;
}

.hd-hero-carousel__slide img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.hd-hero-carousel::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  background:
    linear-gradient(90deg,rgba(8,13,10,.80) 0%,rgba(8,13,10,.44) 39%,rgba(8,13,10,.06) 72%),
    linear-gradient(to top,rgba(8,13,10,.42),transparent 58%);
  pointer-events:none;
}

.hd-hero-carousel__controls{
  position:absolute;
  z-index:12;
  right:max(24px,calc((100vw - 1440px)/2));
  bottom:34px;
  display:none;
  align-items:center;
  gap:12px;
  color:#fff;
}

.hd-hero-carousel__label{
  margin-right:12px;
  color:#fff;
  text-decoration:none;
  font-size:.92rem;
  text-shadow:0 1px 15px rgba(0,0,0,.35);
}

.hd-hero-carousel__arrow{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.42);
  border-radius:50%;
  background:rgba(0,0,0,.08);
  color:#fff;
  cursor:pointer;
  user-select:none;
  -webkit-user-select:none;
  backdrop-filter:blur(8px);
  transition:background-color .25s ease,color .25s ease,border-color .25s ease,transform .25s ease;
}

@media(hover:hover) and (pointer:fine){
  .hd-hero-carousel__arrow:hover{
    background:#fff;
    color:#1d2924;
    border-color:#fff;
    transform:translateY(-2px);
  }
  .hd-hero-carousel__label:hover{
    text-decoration:underline;
    text-underline-offset:5px;
  }
}

@media(max-width:760px){
  .hd-hero-carousel__controls{
    left:var(--mobile-gutter,28px);
    right:var(--mobile-gutter,28px);
    bottom:30px;
    justify-content:flex-end;
  }

  .hd-hero-carousel__label{
    margin-right:auto;
    max-width:150px;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
  }

  .hd-hero-carousel::after{
    background:
      linear-gradient(90deg,rgba(8,13,10,.72),rgba(8,13,10,.15)),
      linear-gradient(to top,rgba(8,13,10,.58),transparent 65%);
  }
}

@media(prefers-reduced-motion:reduce){
  .hd-hero-carousel__slide{
    transition:none;
  }
}


/* =========================================================
   Dřevěné sauny 0.23.2 — definitivní oprava klikání hero carouselu
   Příčina: overlay a hero content zachytávaly kliknutí nad šipkami.
   ========================================================= */

.hero--hd{
  isolation:isolate;
}

/* Obrazová vrstva nesmí vytvořit uzavřený stacking context. */
.hd-hero-carousel{
  z-index:auto!important;
  isolation:auto!important;
  pointer-events:none;
}

/* Obrázky nejsou klikací; odkazy a ovládání mají vlastní vrstvu. */
.hd-hero-carousel__slides,
.hd-hero-carousel__slide,
.hd-hero-carousel__slide img{
  pointer-events:none;
}

/* Stínování je čistě vizuální a nikdy nesmí zachytit kliknutí. */
.hd-hero-carousel::after,
.hero--hd .hero__overlay{
  pointer-events:none!important;
}

/* Jednoznačné pořadí všech vrstev hero. */
.hd-hero-carousel__slides{
  z-index:0;
}

.hd-hero-carousel::after{
  z-index:1;
}

.hero--hd .hero__overlay{
  z-index:2;
}

.hero--hd .hero__content{
  z-index:3;
  pointer-events:none;
}

/* Interaktivní prvky obsahu musí zůstat klikatelné. */
.hero--hd .hero__content a,
.hero--hd .hero__content button,
.hero--hd .hero__content input,
.hero--hd .hero__content select,
.hero--hd .hero__content textarea{
  pointer-events:auto;
}

/* Ovládání slideru je vždy nejvýše. */
.hd-hero-carousel__controls{
  z-index:20!important;
  pointer-events:auto!important;
}

.hd-hero-carousel__label,
.hd-hero-carousel__arrow{
  position:relative;
  z-index:21;
  pointer-events:auto!important;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}

/* Safari potřebuje u labelu explicitní klikací box. */
.hd-hero-carousel__arrow{
  display:grid!important;
  cursor:pointer!important;
}



/* =========================================================
   Dřevěné sauny 0.24.0 — mobilní sekce pod hero
   ========================================================= */
@media(max-width:760px){

  /* Úvod značky */
  .home-intro-v2{
    background:#f1eee7;
  }

  .home-intro-v2__inner{
    width:100%;
    padding:78px var(--mobile-gutter,28px) 82px!important;
    text-align:left;
  }

  .home-intro-v2__inner .eyebrow{
    margin-bottom:18px;
    font-size:.7rem;
    line-height:1.2;
    letter-spacing:.2em;
  }

  .home-intro-v2__inner h2{
    max-width:360px;
    margin:0 0 24px;
    font-size:clamp(2.55rem,10.2vw,3.25rem)!important;
    line-height:1!important;
    letter-spacing:-.045em;
    text-wrap:balance;
  }

  .home-intro-v2__inner>p:last-child{
    max-width:340px;
    margin:0;
    font-size:1.04rem!important;
    line-height:1.58!important;
    color:rgba(23,25,22,.68);
  }

  /* Nadpis nabídky */
  .home-categories{
    padding:82px var(--mobile-gutter,28px) 88px!important;
  }

  .home-section-heading--center{
    max-width:100%;
    margin:0 0 46px!important;
    text-align:left;
  }

  .home-section-heading--center .eyebrow{
    margin-bottom:18px;
    font-size:.7rem;
    line-height:1.2;
    letter-spacing:.2em;
  }

  .home-section-heading--center h2{
    max-width:360px;
    margin:0;
    font-size:clamp(2.6rem,10.4vw,3.3rem)!important;
    line-height:1!important;
    letter-spacing:-.045em;
    text-wrap:balance;
  }

  /* Kategorie */
  .category-grid--compact{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:48px!important;
  }

  .category-grid--compact .category-tile,
  .category-grid--compact .category-tile--saunas{
    display:grid;
    grid-template-rows:auto auto!important;
    min-height:0;
  }

  .category-grid--compact .category-tile__image{
    aspect-ratio:5/4;
    min-height:0;
  }

  .category-grid--compact .category-tile__image img{
    width:100%;
    height:100%;
    object-fit:cover;
  }

  .category-grid--compact .category-tile__body{
    min-height:142px;
    padding:22px 4px 0!important;
    align-items:flex-start;
    text-align:left;
  }

  .category-grid--compact .category-tile__body strong{
    font-size:1.45rem!important;
    line-height:1.15;
  }

  .category-grid--compact .category-tile__body small{
    max-width:320px;
    min-height:0!important;
    margin-top:10px;
    font-size:.98rem!important;
    line-height:1.5!important;
  }

  .category-grid--compact .category-tile__body em{
    margin-top:22px;
    padding-top:0;
    font-size:.9rem;
  }

  /* Plynulejší přechod do CUBE */
  .home-categories + .home-cube-stage{
    margin-top:0;
  }

  .home-cube-stage{
    padding-top:76px!important;
  }
}

@media(max-width:390px){
  .home-intro-v2__inner{
    padding:68px var(--mobile-gutter,22px) 72px!important;
  }

  .home-categories{
    padding:72px var(--mobile-gutter,22px) 78px!important;
  }

  .home-intro-v2__inner h2,
  .home-section-heading--center h2{
    font-size:clamp(2.35rem,10vw,2.85rem)!important;
  }

  .category-grid--compact{
    gap:42px!important;
  }
}


/* =========================================================
   Dřevěné sauny 0.25.0 — finální kompaktní mobilní rytmus
   ========================================================= */
@media(max-width:760px){
  .home-section-heading--center h2,
  .home-intro-v2__inner h2,
  .home-model-overview h2,
  .home-tub-overview h2,
  .model-overview h2,
  .tub-overview h2{
    font-size:clamp(2.35rem,9.4vw,3.05rem)!important;
    line-height:1.02!important;
    letter-spacing:-.042em!important;
  }

  .home-categories{padding-bottom:64px!important}
  .category-grid--compact{gap:38px!important}
  .category-grid--compact .category-tile__image{aspect-ratio:16/11!important}
  .category-grid--compact .category-tile__body{
    min-height:126px!important;
    padding-top:18px!important;
  }
  .category-grid--compact .category-tile__body small{margin-top:8px!important}
  .category-grid--compact .category-tile__body em{margin-top:18px!important}
  .category-grid--compact .category-tile:last-child .category-tile__body{
    min-height:112px!important;
  }

  .home-cube-stage,
  .cube-feature,
  .flagship-section{
    padding-top:64px!important;
    padding-bottom:0!important;
  }

  .home-cube-stage__inner,
  .cube-feature__content,
  .flagship-section__content{
    padding-left:var(--mobile-gutter,28px)!important;
    padding-right:var(--mobile-gutter,28px)!important;
  }

  .home-cube-stage .eyebrow,
  .cube-feature .eyebrow,
  .flagship-section .eyebrow{
    margin-bottom:16px!important;
  }

  .home-cube-stage h2,
  .cube-feature h2,
  .flagship-section h2{
    margin-bottom:20px!important;
    font-size:clamp(3.3rem,14vw,4.5rem)!important;
    line-height:.98!important;
  }

  .home-cube-stage__lead,
  .cube-feature__lead,
  .flagship-section__lead{
    max-width:340px!important;
    margin-bottom:28px!important;
    font-size:1.02rem!important;
    line-height:1.55!important;
  }

  .home-cube-stage__meta,
  .cube-feature__meta,
  .flagship-section__meta{
    margin-bottom:24px!important;
    font-size:.74rem!important;
    line-height:1.45!important;
    letter-spacing:.12em!important;
  }

  .home-cube-stage__variants,
  .cube-feature__variants,
  .flagship-section__variants{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:10px!important;
    overflow-x:auto!important;
    margin:0 calc(var(--mobile-gutter,28px) * -1) 24px!important;
    padding:0 var(--mobile-gutter,28px) 4px!important;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
  }

  .home-cube-stage__variants::-webkit-scrollbar,
  .cube-feature__variants::-webkit-scrollbar,
  .flagship-section__variants::-webkit-scrollbar{display:none}

  .home-cube-stage__variants span,
  .home-cube-stage__variants a,
  .cube-feature__variants span,
  .cube-feature__variants a,
  .flagship-section__variants span,
  .flagship-section__variants a{
    flex:0 0 auto!important;
    min-width:max-content!important;
    min-height:48px!important;
    padding:0 16px!important;
    display:flex!important;
    align-items:center!important;
    scroll-snap-align:start;
  }

  .home-cube-stage__cta,
  .cube-feature__cta,
  .flagship-section__cta{
    margin-top:8px!important;
    margin-bottom:38px!important;
  }

  .home-cube-stage__image,
  .cube-feature__image,
  .flagship-section__image{margin-top:0!important}

  .home-cube-stage__image img,
  .cube-feature__image img,
  .flagship-section__image img{
    width:100%;
    min-height:0!important;
    aspect-ratio:4/3!important;
    object-fit:cover!important;
  }

  .home-cube-stage::after,
  .cube-feature::after,
  .flagship-section::after{display:none!important}

  .home-cube-stage + .home-model-overview,
  .cube-feature + .home-model-overview,
  .flagship-section + .home-model-overview{margin-top:0!important}

  .home-model-overview,
  .home-tub-overview,
  .model-overview,
  .tub-overview{
    padding-top:76px!important;
    padding-bottom:76px!important;
  }

  .home-model-overview .eyebrow,
  .home-tub-overview .eyebrow,
  .model-overview .eyebrow,
  .tub-overview .eyebrow{margin-bottom:18px!important}

  .home-model-overview h2,
  .home-tub-overview h2,
  .model-overview h2,
  .tub-overview h2{
    max-width:360px!important;
    margin-bottom:34px!important;
  }

  .home-model-overview__tabs,
  .home-tub-overview__tabs,
  .model-overview__tabs,
  .tub-overview__tabs,
  .model-tabs{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:10px!important;
    overflow-x:auto!important;
    margin-right:calc(var(--mobile-gutter,28px) * -1)!important;
    padding:0 var(--mobile-gutter,28px) 4px 0!important;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
  }

  .home-model-overview__tabs::-webkit-scrollbar,
  .home-tub-overview__tabs::-webkit-scrollbar,
  .model-overview__tabs::-webkit-scrollbar,
  .tub-overview__tabs::-webkit-scrollbar,
  .model-tabs::-webkit-scrollbar{display:none}

  .home-model-overview__tabs button,
  .home-tub-overview__tabs button,
  .model-overview__tabs button,
  .tub-overview__tabs button,
  .model-tabs button{
    flex:0 0 auto!important;
    min-width:max-content!important;
    min-height:50px!important;
    padding:0 16px!important;
    scroll-snap-align:start;
  }

  .home-model-overview__content,
  .home-tub-overview__content,
  .model-overview__content,
  .tub-overview__content{padding-top:34px!important}

  .home-model-overview__title,
  .home-tub-overview__title,
  .model-overview__title,
  .tub-overview__title{
    margin-bottom:20px!important;
    font-size:clamp(2.45rem,10.5vw,3.35rem)!important;
  }

  .home-model-overview__description,
  .home-tub-overview__description,
  .model-overview__description,
  .tub-overview__description{margin-bottom:28px!important}

  .home-model-overview__specs,
  .home-tub-overview__specs,
  .model-overview__specs,
  .tub-overview__specs{margin-top:24px!important}

  .home-model-overview__specs li,
  .home-tub-overview__specs li,
  .model-overview__specs li,
  .tub-overview__specs li{padding:16px 0!important}

  .home-model-overview__footer,
  .home-tub-overview__footer,
  .model-overview__footer,
  .tub-overview__footer{
    margin-top:30px!important;
    gap:22px!important;
  }

  .home-model-overview__all,
  .home-tub-overview__all,
  .model-overview__all,
  .tub-overview__all{margin-top:32px!important}
}

@media(max-width:390px){
  .category-grid--compact{gap:34px!important}

  .home-cube-stage__variants,
  .cube-feature__variants,
  .flagship-section__variants{
    margin-left:calc(var(--mobile-gutter,22px) * -1)!important;
    margin-right:calc(var(--mobile-gutter,22px) * -1)!important;
    padding-left:var(--mobile-gutter,22px)!important;
    padding-right:var(--mobile-gutter,22px)!important;
  }

  .home-model-overview,
  .home-tub-overview,
  .model-overview,
  .tub-overview{
    padding-top:66px!important;
    padding-bottom:66px!important;
  }
}


/* =========================================================
   Dřevěné sauny 0.25.1 — přesný mobilní spacing a tab polish
   ========================================================= */
@media(max-width:760px){

  /* CUBE: zrušení výšek převzatých ze starší desktopové komponenty */
  .home-cube-stage{
    padding:0!important;
  }

  .home-cube-stage__inner{
    display:block!important;
    width:100%!important;
    min-height:0!important;
    height:auto!important;
  }

  .home-cube-stage__copy{
    padding:64px var(--mobile-gutter,28px) 38px!important;
  }

  .home-cube-stage__variants{
    margin-bottom:22px!important;
  }

  .home-cube-stage__copy > .text-link{
    display:inline-flex;
    margin-top:4px!important;
  }

  .home-cube-stage__media{
    display:block!important;
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    aspect-ratio:4/3!important;
    overflow:hidden;
  }

  .home-cube-stage__media img{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    object-fit:cover!important;
  }

  /* Přehledy: žádné umělé minimální výšky */
  .home-model-overview__inner{
    width:calc(100% - 56px)!important;
    padding-top:72px!important;
    padding-bottom:56px!important;
  }

  .home-model-overview__header{
    margin-bottom:30px!important;
  }

  .home-model-overview__tabs{
    position:relative;
    margin-bottom:30px!important;
    padding-right:48px!important;
    scroll-padding-inline:0 48px;
    overscroll-behavior-x:contain;
  }

  .home-model-overview__tabs button{
    font-size:1rem!important;
    min-height:50px!important;
  }

  .home-model-overview__panels,
  .home-model-overview__panel{
    min-height:0!important;
    height:auto!important;
  }

  .home-model-overview__panel{
    row-gap:26px!important;
  }

  .home-model-overview__intro h3{
    margin-bottom:18px!important;
  }

  .home-model-overview__intro p{
    margin-bottom:0!important;
  }

  .home-model-overview__specs{
    gap:0!important;
  }

  .home-model-overview__footer{
    min-height:0!important;
    padding-top:26px!important;
    padding-bottom:0!important;
    margin-top:4px!important;
    gap:24px!important;
  }

  .home-model-overview__preview{
    margin:0!important;
    padding:0!important;
  }

  /* Méně prostoru mezi koncem saun a zelenou sekcí */
  .home-model-overview--saunas .home-model-overview__inner{
    padding-bottom:48px!important;
  }

  .home-model-overview--hot_tubs .home-model-overview__inner{
    padding-top:68px!important;
    padding-bottom:64px!important;
  }

  /* Jemný náznak horizontálního pokračování */
  .home-model-overview__tabs{
    -webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 34px),transparent 100%);
    mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 34px),transparent 100%);
  }

  /* Aktivní položka nesmí být vizuálně oříznuta */
  .home-model-overview__tabs button.is-active{
    scroll-margin-inline-start:0;
  }
}

@media(max-width:390px){
  .home-cube-stage__copy{
    padding:58px var(--mobile-gutter,22px) 34px!important;
  }

  .home-model-overview__inner{
    width:calc(100% - 44px)!important;
    padding-top:64px!important;
    padding-bottom:48px!important;
  }

  .home-model-overview--hot_tubs .home-model-overview__inner{
    padding-top:60px!important;
    padding-bottom:56px!important;
  }
}


/* =========================================================
   Dřevěné sauny 0.25.2 — jasné rozlišení variant a přepínačů
   ========================================================= */
@media(max-width:760px){

  /* CUBE varianty jsou pouze informace, ne tlačítka */
  .home-cube-stage__variants{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px 0!important;
    overflow:visible!important;
    margin:0 0 24px!important;
    padding:0!important;
    scroll-snap-type:none!important;
  }

  .home-cube-stage__variants span,
  .home-cube-stage__variants a{
    min-height:0!important;
    min-width:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    font-size:.76rem!important;
    line-height:1.3!important;
    font-weight:700!important;
    letter-spacing:.11em!important;
    pointer-events:none;
  }

  .home-cube-stage__variants span:not(:last-child)::after,
  .home-cube-stage__variants a:not(:last-child)::after{
    content:"·";
    display:inline-block;
    margin:0 10px;
    color:rgba(23,25,22,.45);
  }

  /* Přehled modelů: všech pět tlačítek viditelných bez scrollu */
  .home-model-overview__tabs{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:8px!important;
    overflow:visible!important;
    margin:0 0 28px!important;
    padding:0!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }

  .home-model-overview__tabs button{
    min-width:0!important;
    min-height:46px!important;
    padding:8px 7px!important;
    font-size:.83rem!important;
    line-height:1.12!important;
    white-space:normal!important;
    text-align:center!important;
  }

  /* Rozložení 3 + 2 pro sauny */
  .home-model-overview--saunas .home-model-overview__tabs button:nth-child(1),
  .home-model-overview--saunas .home-model-overview__tabs button:nth-child(2),
  .home-model-overview--saunas .home-model-overview__tabs button:nth-child(3){
    grid-column:span 2;
  }

  .home-model-overview--saunas .home-model-overview__tabs button:nth-child(4){
    grid-column:2 / span 2;
  }

  .home-model-overview--saunas .home-model-overview__tabs button:nth-child(5){
    grid-column:4 / span 2;
  }

  /* Tři koupací sudy v jednom řádku */
  .home-model-overview--hot_tubs .home-model-overview__tabs{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  .home-model-overview--hot_tubs .home-model-overview__tabs button{
    grid-column:auto!important;
    font-size:.79rem!important;
  }

  /* Aktivní tlačítko musí jasně působit jako zvolená možnost */
  .home-model-overview__tabs button.is-active{
    background:#171b18!important;
    color:#f7f4ee!important;
    border-color:#171b18!important;
  }

  .home-model-overview--hot_tubs .home-model-overview__tabs button.is-active{
    background:#f1eee7!important;
    color:#23362e!important;
    border-color:#f1eee7!important;
  }

  /* Modelový detail bez velké prázdné mezery */
  .home-model-overview__panel{
    display:block!important;
    min-height:0!important;
    height:auto!important;
  }

  .home-model-overview__intro{
    margin:0 0 24px!important;
  }

  .home-model-overview__intro h3{
    margin:0 0 14px!important;
  }

  .home-model-overview__intro p{
    margin:0!important;
  }

  .home-model-overview__specs{
    display:block!important;
    margin:0!important;
    padding:0!important;
  }

  .home-model-overview__specs > *{
    margin-top:0!important;
  }

  .home-model-overview__specs li{
    padding:13px 0!important;
  }

  .home-model-overview__specs li:first-child{
    padding-top:0!important;
  }

  .home-model-overview__footer{
    margin-top:24px!important;
    padding-top:20px!important;
  }
}

@media(max-width:390px){
  .home-model-overview__tabs{
    gap:7px!important;
  }

  .home-model-overview__tabs button{
    min-height:44px!important;
    padding:7px 5px!important;
    font-size:.76rem!important;
  }

  .home-model-overview--hot_tubs .home-model-overview__tabs button{
    font-size:.72rem!important;
  }

  .home-cube-stage__variants span,
  .home-cube-stage__variants a{
    font-size:.7rem!important;
  }

  .home-cube-stage__variants span:not(:last-child)::after,
  .home-cube-stage__variants a:not(:last-child)::after{
    margin:0 7px;
  }
}


/* =========================================================
   Dřevěné sauny 0.25.3 — přehled variant řady CUBE
   ========================================================= */
@media(max-width:760px){

  .home-cube-stage__variants{
    counter-reset:cube-variant;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:0!important;
    width:100%!important;
    margin:4px 0 28px!important;
    padding:0!important;
    overflow:visible!important;
    border-top:1px solid rgba(23,25,22,.18);
    border-bottom:1px solid rgba(23,25,22,.18);
  }

  .home-cube-stage__variants span,
  .home-cube-stage__variants a{
    counter-increment:cube-variant;
    position:relative;
    display:grid!important;
    grid-template-columns:auto 1fr;
    align-items:center!important;
    gap:10px!important;
    min-width:0!important;
    min-height:58px!important;
    padding:14px 12px!important;
    margin:0!important;
    border:0!important;
    background:transparent!important;
    color:#171b18!important;
    font-size:.82rem!important;
    line-height:1.15!important;
    font-weight:700!important;
    letter-spacing:.08em!important;
    text-decoration:none!important;
    pointer-events:none!important;
  }

  .home-cube-stage__variants span::before,
  .home-cube-stage__variants a::before{
    content:"0" counter(cube-variant);
    color:rgba(23,25,22,.42);
    font-size:.66rem;
    line-height:1;
    font-weight:700;
    letter-spacing:.08em;
  }

  .home-cube-stage__variants span::after,
  .home-cube-stage__variants a::after{
    display:none!important;
    content:none!important;
  }

  .home-cube-stage__variants span:nth-child(odd),
  .home-cube-stage__variants a:nth-child(odd){
    border-right:1px solid rgba(23,25,22,.14)!important;
  }

  .home-cube-stage__variants span:nth-child(-n+2),
  .home-cube-stage__variants a:nth-child(-n+2){
    border-bottom:1px solid rgba(23,25,22,.14)!important;
  }

  .home-cube-stage__variants + .text-link{
    margin-top:0!important;
  }
}

@media(max-width:390px){
  .home-cube-stage__variants span,
  .home-cube-stage__variants a{
    min-height:54px!important;
    padding:12px 10px!important;
    gap:8px!important;
    font-size:.76rem!important;
    letter-spacing:.06em!important;
  }

  .home-cube-stage__variants span::before,
  .home-cube-stage__variants a::before{
    font-size:.62rem;
  }
}


/* Dřevěné sauny 0.25.4 — finální kompaktnost variant CUBE */
@media(max-width:760px){
  .home-cube-stage__meta{
    margin-bottom:16px!important;
  }

  .home-cube-stage__variants{
    margin-top:0!important;
    margin-bottom:24px!important;
  }

  .home-cube-stage__variants span,
  .home-cube-stage__variants a{
    min-height:52px!important;
    padding-top:11px!important;
    padding-bottom:11px!important;
  }
}

@media(max-width:390px){
  .home-cube-stage__meta{
    margin-bottom:14px!important;
  }

  .home-cube-stage__variants span,
  .home-cube-stage__variants a{
    min-height:50px!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
}


/* =========================================================
   Dřevěné sauny 0.26.0 — mobilní carousel realizací
   ========================================================= */
.home-realizations__mobile-footer{
  display:none;
}

@media(max-width:760px){
  .home-realizations{
    padding-top:76px!important;
    padding-bottom:76px!important;
    overflow:hidden;
  }

  .home-realizations__inner{
    width:100%!important;
    max-width:none!important;
    padding-left:var(--mobile-gutter,28px)!important;
    padding-right:0!important;
  }

  .home-realizations__header{
    padding-right:var(--mobile-gutter,28px)!important;
    margin-bottom:44px!important;
  }

  .home-realizations__header h2{
    max-width:350px!important;
    margin-bottom:0!important;
    font-size:clamp(2.45rem,9.6vw,3.1rem)!important;
    line-height:1.02!important;
    letter-spacing:-.045em!important;
  }

  .home-realizations__header > .text-link{
    display:none!important;
  }

  .home-realizations__grid{
    display:flex!important;
    grid-template-columns:none!important;
    gap:14px!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory;
    scroll-padding-left:0;
    padding-right:14vw!important;
    padding-bottom:6px!important;
    margin:0!important;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
  }

  .home-realizations__grid::-webkit-scrollbar{
    display:none;
  }

  .home-realizations__card{
    flex:0 0 82vw!important;
    width:82vw!important;
    max-width:560px!important;
    min-width:0!important;
    scroll-snap-align:start;
    scroll-snap-stop:always;
    aspect-ratio:4/5!important;
    min-height:0!important;
    overflow:hidden;
  }

  .home-realizations__card img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }

  .home-realizations__card-content{
    padding:24px 20px!important;
  }

  .home-realizations__card h3{
    margin-bottom:8px!important;
    font-size:1.45rem!important;
    line-height:1.15!important;
  }

  .home-realizations__card p{
    font-size:.98rem!important;
    line-height:1.45!important;
  }

  .home-realizations__mobile-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:30px var(--mobile-gutter,28px) 0 0;
  }

  .home-realizations__counter{
    display:flex;
    align-items:center;
    gap:7px;
    color:rgba(23,25,22,.58);
    font-size:.78rem;
    font-weight:700;
    letter-spacing:.12em;
  }

  .home-realizations__counter [data-realizations-current]{
    color:#171b18;
  }

  .home-realizations__mobile-footer .text-link{
    margin:0!important;
    white-space:nowrap;
  }

  /* Plynulejší přechod do odborné sekce */
  .home-realizations + .home-expertise,
  .home-realizations + .expertise-section{
    margin-top:0!important;
  }

  .home-expertise,
  .expertise-section{
    padding-top:76px!important;
  }

  .home-expertise h2,
  .expertise-section h2{
    max-width:360px!important;
    font-size:clamp(2.45rem,9.6vw,3.1rem)!important;
    line-height:1.02!important;
    letter-spacing:-.045em!important;
  }
}

@media(max-width:390px){
  .home-realizations{
    padding-top:68px!important;
    padding-bottom:68px!important;
  }

  .home-realizations__inner{
    padding-left:var(--mobile-gutter,22px)!important;
  }

  .home-realizations__header{
    padding-right:var(--mobile-gutter,22px)!important;
    margin-bottom:38px!important;
  }

  .home-realizations__grid{
    padding-right:16vw!important;
  }

  .home-realizations__card{
    flex-basis:84vw!important;
    width:84vw!important;
  }

  .home-realizations__mobile-footer{
    padding-right:var(--mobile-gutter,22px)!important;
  }
}


/* =========================================================
   Dřevěné sauny 0.26.1 — oprava skutečných selektorů carouselu realizací
   ========================================================= */
@media(max-width:760px){
  .home-realizations__grid{
    display:flex!important;
    grid-template-columns:none!important;
    grid-template-rows:none!important;
    gap:14px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory;
    scroll-padding-left:0;
    padding-right:14vw!important;
    padding-bottom:6px!important;
    margin:0!important;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
  }

  .home-realizations__grid::-webkit-scrollbar{
    display:none;
  }

  .home-realization-card,
  .home-realization-card--large{
    flex:0 0 82vw!important;
    width:82vw!important;
    max-width:560px!important;
    min-width:82vw!important;
    min-height:0!important;
    height:auto!important;
    grid-row:auto!important;
    scroll-snap-align:start;
    scroll-snap-stop:always;
    aspect-ratio:4/5!important;
    overflow:hidden!important;
  }

  .home-realization-card img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }

  .home-realization-card span{
    left:20px!important;
    right:20px!important;
    bottom:20px!important;
    gap:7px!important;
  }

  .home-realization-card strong{
    font-size:1.42rem!important;
    line-height:1.14!important;
  }

  .home-realization-card small{
    font-size:.98rem!important;
    line-height:1.45!important;
  }
}

@media(max-width:390px){
  .home-realizations__grid{
    padding-right:16vw!important;
  }

  .home-realization-card,
  .home-realization-card--large{
    flex-basis:84vw!important;
    width:84vw!important;
    min-width:84vw!important;
  }
}


/* =========================================================
   Dřevěné sauny 0.27.0 — mobilní odborná sekce 2 × 2
   ========================================================= */
@media(max-width:760px){

  .home-expertise,
  .expertise-section{
    padding-top:72px!important;
    padding-bottom:72px!important;
  }

  .home-expertise__inner,
  .expertise-section__inner{
    width:calc(100% - 56px)!important;
    max-width:none!important;
    margin:0 auto!important;
  }

  .home-expertise__header,
  .expertise-section__header{
    margin-bottom:38px!important;
  }

  .home-expertise__header .eyebrow,
  .expertise-section__header .eyebrow{
    margin-bottom:18px!important;
    font-size:.7rem!important;
    letter-spacing:.2em!important;
  }

  .home-expertise h2,
  .expertise-section h2{
    max-width:360px!important;
    margin:0!important;
    font-size:clamp(2.3rem,9.2vw,2.95rem)!important;
    line-height:1.02!important;
    letter-spacing:-.043em!important;
    text-wrap:balance;
  }

  .home-expertise__grid,
  .expertise-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:0!important;
    border-top:1px solid rgba(23,25,22,.18);
    border-left:1px solid rgba(23,25,22,.18);
  }

  .home-expertise__item,
  .expertise-card{
    min-height:0!important;
    height:auto!important;
    padding:22px 18px 24px!important;
    border:0!important;
    border-right:1px solid rgba(23,25,22,.18)!important;
    border-bottom:1px solid rgba(23,25,22,.18)!important;
    background:transparent!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
  }

  .home-expertise__item .number,
  .home-expertise__item > span:first-child,
  .expertise-card .number,
  .expertise-card > span:first-child{
    margin:0 0 28px!important;
    font-size:.68rem!important;
    line-height:1!important;
    letter-spacing:.14em!important;
    color:rgba(23,25,22,.56)!important;
  }

  .home-expertise__item h3,
  .expertise-card h3{
    margin:0 0 10px!important;
    font-size:1.22rem!important;
    line-height:1.15!important;
    letter-spacing:-.025em!important;
  }

  .home-expertise__item p,
  .expertise-card p{
    margin:0!important;
    font-size:.93rem!important;
    line-height:1.5!important;
    color:rgba(23,25,22,.64)!important;
  }

  /* Zkrácení návaznosti na další sekci */
  .home-expertise + .home-process,
  .expertise-section + .process-section{
    margin-top:0!important;
  }

  .home-process,
  .process-section{
    padding-top:72px!important;
  }
}

@media(max-width:390px){

  .home-expertise,
  .expertise-section{
    padding-top:64px!important;
    padding-bottom:64px!important;
  }

  .home-expertise__inner,
  .expertise-section__inner{
    width:calc(100% - 44px)!important;
  }

  .home-expertise__header,
  .expertise-section__header{
    margin-bottom:32px!important;
  }

  .home-expertise h2,
  .expertise-section h2{
    font-size:clamp(2.15rem,9vw,2.65rem)!important;
  }

  .home-expertise__item,
  .expertise-card{
    padding:20px 14px 22px!important;
  }

  .home-expertise__item .number,
  .home-expertise__item > span:first-child,
  .expertise-card .number,
  .expertise-card > span:first-child{
    margin-bottom:22px!important;
  }

  .home-expertise__item h3,
  .expertise-card h3{
    font-size:1.08rem!important;
  }

  .home-expertise__item p,
  .expertise-card p{
    font-size:.86rem!important;
  }
}


/* =========================================================
   Dřevěné sauny 0.27.1 — skutečná mobilní mřížka sekce home-proof
   ========================================================= */
@media(max-width:760px){
  .home-proof{
    padding:72px 0!important;
  }

  .home-proof__heading,
  .home-proof__grid{
    width:calc(100% - 56px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .home-proof__heading{
    margin-bottom:36px!important;
  }

  .home-proof__heading .eyebrow{
    margin-bottom:18px!important;
    font-size:.7rem!important;
    line-height:1.2!important;
    letter-spacing:.2em!important;
  }

  .home-proof__heading h2{
    max-width:360px!important;
    margin:0!important;
    font-size:clamp(2.3rem,9.2vw,2.95rem)!important;
    line-height:1.02!important;
    letter-spacing:-.043em!important;
    text-wrap:balance;
  }

  .home-proof__grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:0!important;
    border-top:1px solid rgba(23,25,22,.18);
    border-left:1px solid rgba(23,25,22,.18);
  }

  .home-proof__grid article{
    min-height:0!important;
    height:auto!important;
    padding:22px 18px 24px!important;
    border:0!important;
    border-right:1px solid rgba(23,25,22,.18)!important;
    border-bottom:1px solid rgba(23,25,22,.18)!important;
    background:transparent!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
  }

  .home-proof__grid article > span{
    margin:0 0 26px!important;
    font-size:.68rem!important;
    line-height:1!important;
    letter-spacing:.14em!important;
    color:rgba(23,25,22,.54)!important;
  }

  .home-proof__grid article h3{
    margin:0 0 10px!important;
    font-size:1.18rem!important;
    line-height:1.15!important;
    letter-spacing:-.025em!important;
  }

  .home-proof__grid article p{
    margin:0!important;
    font-size:.9rem!important;
    line-height:1.48!important;
    color:rgba(23,25,22,.64)!important;
  }

  .home-proof + .home-process-compact{
    margin-top:0!important;
  }

  .home-process-compact{
    padding-top:70px!important;
  }
}

@media(max-width:390px){
  .home-proof{
    padding:64px 0!important;
  }

  .home-proof__heading,
  .home-proof__grid{
    width:calc(100% - 44px)!important;
  }

  .home-proof__heading{
    margin-bottom:30px!important;
  }

  .home-proof__heading h2{
    font-size:clamp(2.1rem,8.9vw,2.6rem)!important;
  }

  .home-proof__grid article{
    padding:18px 13px 20px!important;
  }

  .home-proof__grid article > span{
    margin-bottom:20px!important;
  }

  .home-proof__grid article h3{
    font-size:1.02rem!important;
  }

  .home-proof__grid article p{
    font-size:.82rem!important;
    line-height:1.45!important;
  }
}


/* =========================================================
   Dřevěné sauny 0.28.0 — mobilní proces spolupráce 2 × 2
   ========================================================= */
@media(max-width:760px){
  .home-process-compact{
    padding:70px 0 72px!important;
  }

  .home-process-compact__heading,
  .home-process-compact__steps{
    width:calc(100% - 56px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .home-process-compact__heading{
    margin-bottom:34px!important;
  }

  .home-process-compact__heading .eyebrow{
    margin-bottom:18px!important;
    font-size:.7rem!important;
    line-height:1.2!important;
    letter-spacing:.2em!important;
  }

  .home-process-compact__heading h2{
    max-width:360px!important;
    margin:0!important;
    font-size:clamp(2.3rem,9.2vw,2.95rem)!important;
    line-height:1.02!important;
    letter-spacing:-.043em!important;
    text-wrap:balance;
  }

  .home-process-compact__steps{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:0!important;
    border-top:1px solid rgba(23,25,22,.18);
    border-left:1px solid rgba(23,25,22,.18);
  }

  .home-process-compact__steps article{
    min-height:0!important;
    height:auto!important;
    padding:22px 18px 24px!important;
    margin:0!important;
    border:0!important;
    border-right:1px solid rgba(23,25,22,.18)!important;
    border-bottom:1px solid rgba(23,25,22,.18)!important;
    background:transparent!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
  }

  .home-process-compact__steps article b{
    margin:0 0 26px!important;
    font-size:.68rem!important;
    line-height:1!important;
    font-weight:600!important;
    letter-spacing:.14em!important;
    color:rgba(23,25,22,.54)!important;
  }

  .home-process-compact__steps article strong{
    display:block!important;
    margin:0 0 10px!important;
    font-size:1.18rem!important;
    line-height:1.15!important;
    font-weight:650!important;
    letter-spacing:-.025em!important;
  }

  .home-process-compact__steps article p{
    margin:0!important;
    font-size:.9rem!important;
    line-height:1.48!important;
    color:rgba(23,25,22,.64)!important;
  }

  .home-process-compact + .final-cta{
    margin-top:0!important;
  }
}

@media(max-width:390px){
  .home-process-compact{
    padding:62px 0 64px!important;
  }

  .home-process-compact__heading,
  .home-process-compact__steps{
    width:calc(100% - 44px)!important;
  }

  .home-process-compact__heading{
    margin-bottom:30px!important;
  }

  .home-process-compact__heading h2{
    font-size:clamp(2.1rem,8.9vw,2.6rem)!important;
  }

  .home-process-compact__steps article{
    padding:18px 13px 20px!important;
  }

  .home-process-compact__steps article b{
    margin-bottom:20px!important;
  }

  .home-process-compact__steps article strong{
    font-size:1.02rem!important;
  }

  .home-process-compact__steps article p{
    font-size:.82rem!important;
    line-height:1.45!important;
  }
}


/* =========================================================
   Dřevěné sauny 0.28.1 — proces spolupráce vizuálně sjednocený s home-proof
   ========================================================= */
@media(max-width:760px){
  .home-process-compact{
    background:#e9e5dc!important;
  }

  .home-process-compact__steps{
    background:transparent!important;
    border-top:1px solid rgba(23,25,22,.18)!important;
    border-left:1px solid rgba(23,25,22,.18)!important;
  }

  .home-process-compact__steps article{
    background:transparent!important;
    border-right:1px solid rgba(23,25,22,.18)!important;
    border-bottom:1px solid rgba(23,25,22,.18)!important;
    padding:22px 18px 24px!important;
  }

  .home-process-compact__steps article b{
    margin:0 0 26px!important;
    font-size:.68rem!important;
    line-height:1!important;
    font-weight:600!important;
    letter-spacing:.14em!important;
    color:rgba(23,25,22,.54)!important;
  }

  .home-process-compact__steps article strong{
    margin:0 0 10px!important;
    font-size:1.18rem!important;
    line-height:1.15!important;
    font-weight:650!important;
    letter-spacing:-.025em!important;
    color:#171b18!important;
  }

  .home-process-compact__steps article p{
    margin:0!important;
    font-size:.9rem!important;
    line-height:1.48!important;
    color:rgba(23,25,22,.64)!important;
  }
}

@media(max-width:390px){
  .home-process-compact__steps article{
    padding:18px 13px 20px!important;
  }

  .home-process-compact__steps article b{
    margin-bottom:20px!important;
  }

  .home-process-compact__steps article strong{
    font-size:1.02rem!important;
  }

  .home-process-compact__steps article p{
    font-size:.82rem!important;
    line-height:1.45!important;
  }
}


/* =========================================================
   Dřevěné sauny 0.29.0 — newsletter a kompletní footer
   ========================================================= */
.site-footer__brand-name{
  display:block;
  margin-bottom:16px;
  color:#fff;
  font-size:1.05rem;
}

.site-footer__brand p{
  max-width:430px;
  margin:0 0 24px;
}

.site-footer__label{
  margin:0 0 18px;
  color:rgba(255,255,255,.46);
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.17em;
  text-transform:uppercase;
}

.site-footer__menu{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}

.site-footer__menu li{
  margin:0;
}

.site-footer__menu a,
.site-footer__contact a,
.site-footer__social-link{
  text-decoration:none;
}

.site-footer__contact{
  display:grid;
  gap:12px;
}

.site-footer__company{
  margin:28px 0 0;
  color:rgba(255,255,255,.66);
  font-size:.88rem;
  font-style:normal;
  line-height:1.6;
}

.site-footer__company span{
  color:rgba(255,255,255,.56);
}

.site-footer__company a[x-apple-data-detectors]{
  color:inherit!important;
  text-decoration:none!important;
}

.site-footer__social-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-weight:650;
}

.site-footer__meta{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:40px;
  margin-top:68px;
  padding-top:24px;
  border-top:1px solid rgba(255,255,255,.14);
  color:rgba(255,255,255,.48);
  font-size:.78rem;
}

.site-footer__meta p{
  margin:0;
}

.site-footer__legal{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px 22px;
}

.site-footer__bottom{
  display:flex;
  justify-content:space-between;
  gap:24px;
  margin-top:24px!important;
}

.newsletter-form__row button{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

@media(max-width:760px){
  .footer-newsletter{
    border-bottom:1px solid rgba(255,255,255,.11)!important;
  }

  .footer-newsletter__inner{
    width:100%!important;
    padding:70px var(--mobile-gutter,28px) 64px!important;
  }

  .newsletter-form--footer{
    display:block!important;
  }

  .newsletter-form--footer .newsletter-form__copy h2{
    max-width:340px!important;
    margin:0 0 24px!important;
    font-size:clamp(2.45rem,9.6vw,3.15rem)!important;
    line-height:1.02!important;
    letter-spacing:-.045em!important;
  }

  .newsletter-form--footer .newsletter-form__copy > p:last-child{
    max-width:350px!important;
    margin:0!important;
    font-size:1rem!important;
    line-height:1.55!important;
    color:rgba(255,255,255,.66)!important;
  }

  .newsletter-form--footer .newsletter-form__form{
    margin-top:36px!important;
  }

  .newsletter-form--footer .newsletter-form__row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    border:0!important;
  }

  .newsletter-form--footer .newsletter-form__row input{
    min-height:56px!important;
    width:100%!important;
    padding:0 16px!important;
    border:1px solid rgba(255,255,255,.32)!important;
    border-radius:0!important;
    background:rgba(255,255,255,.035)!important;
    color:#fff!important;
    font-size:1rem!important;
  }

  .newsletter-form--footer .newsletter-form__row input::placeholder{
    color:rgba(255,255,255,.54)!important;
  }

  .newsletter-form--footer .newsletter-form__row input:focus{
    outline:2px solid rgba(255,255,255,.86)!important;
    outline-offset:2px!important;
    border-color:transparent!important;
  }

  .newsletter-form--footer .newsletter-form__row button{
    min-height:56px!important;
    width:100%!important;
    padding:0 17px!important;
    border:1px solid #f1eee7!important;
    background:#f1eee7!important;
    color:#171916!important;
    font-size:.95rem!important;
    font-weight:700!important;
    text-align:left!important;
  }

  .newsletter-form--footer .newsletter-form__privacy{
    max-width:360px!important;
    margin:15px 0 0!important;
    font-size:.7rem!important;
    line-height:1.5!important;
    color:rgba(255,255,255,.42)!important;
  }

  .newsletter-form--footer .newsletter-form__status{
    margin-top:12px!important;
    font-size:.76rem!important;
  }

  .site-footer{
    padding:58px var(--mobile-gutter,28px) calc(30px + env(safe-area-inset-bottom))!important;
  }

  .site-footer__grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:40px 22px!important;
  }

  .site-footer__brand{
    grid-column:1 / -1;
    padding-bottom:34px;
    border-bottom:1px solid rgba(255,255,255,.12);
  }

  .site-footer__brand-name{
    margin-bottom:12px;
    font-size:1.02rem;
  }

  .site-footer__brand p{
    max-width:350px;
    margin-bottom:20px;
    font-size:.94rem;
    line-height:1.55;
    color:rgba(255,255,255,.58);
  }

  .site-footer__label{
    margin-bottom:16px;
    font-size:.64rem;
  }

  .site-footer__menu{
    gap:11px;
  }

  .site-footer__menu a,
  .site-footer__contact a{
    font-size:.9rem;
    line-height:1.35;
  }

  .site-footer__contact{
    gap:13px;
  }

  .site-footer__contact a{
    overflow-wrap:anywhere;
  }

  .site-footer__company{
    margin-top:24px;
    font-size:.76rem;
    line-height:1.55;
  }

  .site-footer__meta{
    display:block!important;
    margin-top:42px!important;
    padding-top:22px!important;
    font-size:.7rem!important;
    line-height:1.55!important;
  }

  .site-footer__meta p{
    max-width:350px;
  }

  .site-footer__legal{
    justify-content:flex-start!important;
    gap:9px 18px!important;
    margin-top:18px;
  }

  .site-footer__bottom{
    display:grid!important;
    gap:5px!important;
    margin-top:26px!important;
    padding-top:20px!important;
    font-size:.68rem!important;
    color:rgba(255,255,255,.4);
  }
}

@media(max-width:390px){
  .footer-newsletter__inner{
    padding:62px var(--mobile-gutter,22px) 58px!important;
  }

  .newsletter-form--footer .newsletter-form__copy h2{
    font-size:clamp(2.25rem,9.3vw,2.8rem)!important;
  }

  .site-footer{
    padding-left:var(--mobile-gutter,22px)!important;
    padding-right:var(--mobile-gutter,22px)!important;
  }

  .site-footer__grid{
    gap:36px 18px!important;
  }

  .site-footer__menu a,
  .site-footer__contact a{
    font-size:.84rem;
  }
}


/* =========================================================
   Dřevěné sauny 0.29.1 — kompaktnější konec newsletteru
   ========================================================= */
@media(max-width:760px){
  .footer-newsletter__inner{
    padding-bottom:26px!important;
  }

  .newsletter-form--footer .newsletter-form__status:empty{
    display:none!important;
    min-height:0!important;
    margin:0!important;
  }
}

@media(max-width:390px){
  .footer-newsletter__inner{
    padding-bottom:24px!important;
  }
}


/* =========================================================
   Dřevěné sauny 0.30.0 — finalizace horní části desktopové homepage
   Mobilní a tabletové rozložení zůstává beze změny.
   ========================================================= */
@media(min-width:1051px){

  /* Úvod pod hero: stejná typografie, kompaktnější vertikální rytmus. */
  .home-intro-v2__inner{
    padding-top:clamp(78px,8.7vw,132px)!important;
    padding-bottom:clamp(78px,8.7vw,132px)!important;
  }

  /* Kategorie využijí větší část široké obrazovky. */
  .home-categories{
    padding-top:clamp(72px,7vw,108px)!important;
    padding-right:max(24px,calc((100vw - 1480px)/2))!important;
    padding-bottom:clamp(58px,5.5vw,82px)!important;
    padding-left:max(24px,calc((100vw - 1480px)/2))!important;
  }

  .home-categories .home-section-heading{
    max-width:1040px!important;
    margin-bottom:clamp(36px,3.8vw,56px)!important;
  }

  .category-grid--compact{
    max-width:1480px!important;
  }

  .category-grid--compact .category-tile{
    grid-template-rows:clamp(330px,29vw,470px) minmax(142px,auto)!important;
  }

  .category-grid--compact .category-tile__body{
    padding-top:20px!important;
  }

  .category-grid--compact .category-tile__body strong{
    font-size:clamp(1.16rem,1.45vw,1.58rem)!important;
  }

  .category-grid--compact .category-tile__body small{
    max-width:290px!important;
    margin-top:8px!important;
    font-size:.96rem!important;
    line-height:1.5!important;
  }

  .category-grid--compact .category-tile__body em{
    font-size:.87rem!important;
  }

  /* Vizuální kruhy se nemění, ale hit-area šipek je větší. */
  .hd-hero-carousel__arrow::before{
    content:"";
    position:absolute;
    inset:-6px;
    border-radius:50%;
  }
}


/* =========================================================
   Dřevěné sauny 0.31.0 — desktop: CUBE + přehled saun
   Změny se aktivují pouze od šířky 1051 px.
   ========================================================= */
@media(min-width:1051px){

  /* ---------------------------------------------------------
     Vlajková řada CUBE
     Varianty jsou informační matice, nikoliv tlačítka.
     --------------------------------------------------------- */
  .home-cube-stage{
    padding-top:clamp(62px,6.2vw,92px)!important;
    padding-bottom:clamp(62px,6.2vw,92px)!important;
  }

  .home-cube-stage__copy{
    padding:clamp(52px,5.2vw,82px)!important;
  }

  .home-cube-stage__lead{
    max-width:590px!important;
    font-size:clamp(1.12rem,1.35vw,1.38rem)!important;
    line-height:1.58!important;
  }

  .home-cube-stage .product-meta{
    margin-top:30px!important;
    margin-bottom:22px!important;
    color:rgba(23,25,22,.82)!important;
    font-size:.82rem!important;
    line-height:1.5!important;
    letter-spacing:.1em!important;
  }

  .home-cube-stage__variants{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:0!important;
    width:min(100%,500px)!important;
    margin:0 0 28px!important;
    border-top:1px solid rgba(23,25,22,.2)!important;
    border-bottom:1px solid rgba(23,25,22,.2)!important;
  }

  .home-cube-stage__variants span{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    min-height:68px!important;
    padding:16px 20px 16px 58px!important;
    border:0!important;
    background:transparent!important;
    font-size:.92rem!important;
    font-weight:700!important;
    line-height:1.2!important;
    letter-spacing:.09em!important;
    text-transform:uppercase!important;
    pointer-events:none!important;
  }

  .home-cube-stage__variants span:nth-child(odd){
    border-right:1px solid rgba(23,25,22,.2)!important;
  }

  .home-cube-stage__variants span:nth-child(-n+2){
    border-bottom:1px solid rgba(23,25,22,.2)!important;
  }

  .home-cube-stage__variants span::before{
    position:absolute;
    left:20px;
    top:50%;
    transform:translateY(-50%);
    color:rgba(23,25,22,.45);
    font-size:.78rem;
    font-weight:650;
    letter-spacing:.1em;
  }

  .home-cube-stage__variants span:nth-child(1)::before{content:"01"}
  .home-cube-stage__variants span:nth-child(2)::before{content:"02"}
  .home-cube-stage__variants span:nth-child(3)::before{content:"03"}
  .home-cube-stage__variants span:nth-child(4)::before{content:"04"}

  .home-cube-stage__copy > .text-link{
    display:inline-flex!important;
    align-items:center!important;
    width:max-content!important;
    min-height:44px!important;
    padding:8px 0!important;
    font-size:1.05rem!important;
    font-weight:700!important;
  }

  /* ---------------------------------------------------------
     Přehled saun
     Větší ovládání, kompaktnější tabulka a silnější CTA.
     --------------------------------------------------------- */
  .home-model-overview--saunas .home-model-overview__inner{
    padding-top:clamp(74px,7.6vw,118px)!important;
    padding-bottom:clamp(44px,4.6vw,68px)!important;
  }

  .home-model-overview--saunas .home-model-overview__header{
    margin-bottom:clamp(38px,4vw,58px)!important;
  }

  .home-model-overview--saunas .home-model-overview__tabs{
    gap:10px!important;
    margin-bottom:32px!important;
  }

  .home-model-overview--saunas .home-model-overview__tabs button{
    min-height:48px!important;
    padding:13px 20px!important;
    font-size:.94rem!important;
    line-height:1.15!important;
  }

  .home-model-overview--saunas .home-model-overview__panel{
    column-gap:clamp(38px,5vw,78px)!important;
    row-gap:42px!important;
    min-height:340px!important;
  }

  .home-model-overview--saunas .home-model-overview__intro h3{
    margin-bottom:20px!important;
  }

  .home-model-overview--saunas .home-model-overview__intro p{
    max-width:650px!important;
    font-size:clamp(1.06rem,1.25vw,1.24rem)!important;
    line-height:1.52!important;
  }

  .home-model-overview--saunas .home-model-overview__specs{
    gap:10px!important;
  }

  .home-model-overview--saunas .home-model-overview__specs div{
    padding-bottom:10px!important;
  }

  .home-model-overview--saunas .home-model-overview__specs dt{
    margin-bottom:4px!important;
    font-size:.82rem!important;
    line-height:1.25!important;
  }

  .home-model-overview--saunas .home-model-overview__specs dd{
    font-size:1.06rem!important;
    line-height:1.28!important;
  }

  .home-model-overview--saunas .home-model-overview__footer{
    gap:34px!important;
    padding-top:30px!important;
  }

  .home-model-overview--saunas .home-model-overview__footer .button-outline{
    display:inline-flex!important;
    align-items:center!important;
    min-height:50px!important;
    padding:14px 23px!important;
    border-color:rgba(23,25,22,.34)!important;
    font-size:.94rem!important;
    font-weight:650!important;
  }

  .home-model-overview--saunas .home-model-overview__browse{
    gap:14px!important;
  }

  .home-model-overview--saunas .home-model-overview__browse span{
    margin-right:14px!important;
    font-size:.94rem!important;
    font-weight:550!important;
  }

  .home-model-overview--saunas .home-model-overview__browse button{
    position:relative!important;
    width:46px!important;
    height:46px!important;
  }

  .home-model-overview--saunas .home-model-overview__browse button::before{
    content:"";
    position:absolute;
    inset:-7px;
    border-radius:50%;
  }

  .home-model-overview--saunas .home-model-overview__preview{
    grid-template-columns:126px minmax(110px,auto)!important;
    gap:18px!important;
    min-height:96px!important;
    padding:10px 12px!important;
    font-size:.96rem!important;
    border:1px solid transparent;
  }

  .home-model-overview--saunas .home-model-overview__preview img{
    width:126px!important;
    height:84px!important;
  }

  .home-model-overview--saunas .home-model-overview__preview span{
    max-width:180px!important;
  }
}

@media(min-width:1051px) and (hover:hover) and (pointer:fine){
  .home-cube-stage__copy > .text-link:hover{
    color:#2c3e36;
  }

  .home-model-overview--saunas .home-model-overview__preview:hover{
    border-color:rgba(44,62,54,.18);
    background:rgba(44,62,54,.035);
  }
}

/* =========================================================
   Dřevěné sauny 0.32.0 — katalog saun
   ========================================================= */
.sauna-catalog{background:#f7f5ef;color:#171916}
.sauna-catalog-shell{width:min(1480px,calc(100% - 48px));margin-inline:auto}
.sauna-catalog-hero{padding:clamp(110px,12vw,190px) 0 clamp(80px,9vw,135px);background:#e8e4db}
.sauna-catalog-hero__grid{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(360px,.68fr);gap:clamp(70px,9vw,150px);align-items:end}
.sauna-catalog-hero__title h1{max-width:1000px;margin:16px 0 0;font-size:clamp(4.2rem,7.1vw,8.4rem);line-height:.94;letter-spacing:-.055em}
.sauna-catalog-hero__intro>p{max-width:620px;margin:0 0 42px;color:rgba(23,25,22,.66);font-size:clamp(1.05rem,1.32vw,1.28rem);line-height:1.6}
.sauna-catalog-hero__facts{margin:0;border-top:1px solid rgba(23,25,22,.18)}
.sauna-catalog-hero__facts div{display:grid;grid-template-columns:115px 1fr;gap:22px;padding:17px 0;border-bottom:1px solid rgba(23,25,22,.18)}
.sauna-catalog-hero__facts dt{color:rgba(23,25,22,.5);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.sauna-catalog-hero__facts dd{margin:0;font-size:.94rem;font-weight:620}

.sauna-catalog-index{position:sticky;top:0;z-index:18;background:rgba(247,245,239,.94);border-bottom:1px solid rgba(23,25,22,.12);backdrop-filter:blur(18px)}
.admin-bar .sauna-catalog-index{top:32px}
.sauna-catalog-index__inner{display:flex;align-items:center;gap:42px;min-height:68px}
.sauna-catalog-index__inner>span{flex:0 0 auto;color:rgba(23,25,22,.52);font-size:.72rem;font-weight:650;letter-spacing:.13em;text-transform:uppercase}
.sauna-catalog-index__links{display:flex;align-items:center;gap:28px;overflow-x:auto;scrollbar-width:none}
.sauna-catalog-index__links::-webkit-scrollbar{display:none}
.sauna-catalog-index__links a{position:relative;flex:0 0 auto;padding:24px 0;color:inherit;text-decoration:none;font-size:.92rem}
.sauna-catalog-index__links a:after{content:"";position:absolute;left:0;right:0;bottom:18px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.sauna-catalog-index__links a:hover:after,.sauna-catalog-index__links a:focus-visible:after{transform:scaleX(1)}

.sauna-catalog-models{padding:clamp(105px,11vw,175px) 0 clamp(120px,12vw,190px)}
.sauna-catalog-models__head{display:grid;grid-template-columns:.42fr 1.08fr .72fr;gap:clamp(34px,6vw,96px);align-items:start;margin-bottom:clamp(70px,8vw,120px)}
.sauna-catalog-models__head h2{max-width:760px;margin:0;font-size:clamp(3.2rem,5.2vw,6.2rem);line-height:.98;letter-spacing:-.045em}
.sauna-catalog-models__head>p:last-child{max-width:500px;margin:6px 0 0;color:rgba(23,25,22,.62);font-size:1.02rem;line-height:1.62}

.sauna-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(72px,7vw,112px) clamp(22px,2.4vw,38px)}
.catalog-card--editorial{display:flex;min-width:0;flex-direction:column;scroll-margin-top:110px}
.catalog-card--editorial.catalog-card--featured{grid-column:span 2}
.catalog-card--editorial .catalog-card__media{aspect-ratio:4/5;background:#d7d1c5}
.catalog-card--editorial.catalog-card--featured .catalog-card__media{aspect-ratio:16/9}
.catalog-card--editorial .catalog-card__body{display:flex;flex:1;flex-direction:column;padding-top:26px}
.catalog-card--editorial.catalog-card--featured .catalog-card__body{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.78fr);gap:clamp(34px,5vw,78px);align-items:start}
.catalog-card--editorial .catalog-card__identity h2{margin:12px 0 14px;font-size:clamp(2.25rem,3.5vw,4rem);line-height:.98;letter-spacing:-.04em}
.catalog-card--editorial.catalog-card--featured .catalog-card__identity h2{font-size:clamp(3.1rem,5vw,6.3rem)}
.catalog-card--editorial .catalog-card__description{max-width:620px;color:rgba(23,25,22,.62);font-size:1rem;line-height:1.6}
.catalog-card--editorial .catalog-card__specs{display:grid;margin:28px 0 0;border-top:1px solid rgba(23,25,22,.15)}
.catalog-card--editorial .catalog-card__specs div{padding:14px 0;border-bottom:1px solid rgba(23,25,22,.15)}
.catalog-card--editorial .catalog-card__specs dt{margin-bottom:4px;color:rgba(23,25,22,.48);font-size:.72rem;letter-spacing:.05em;text-transform:uppercase}
.catalog-card--editorial .catalog-card__specs dd{margin:0;font-size:.95rem;font-weight:650;line-height:1.35}
.catalog-card--editorial.catalog-card--featured .catalog-card__specs{margin-top:6px}
.catalog-card__cta{display:inline-flex;align-items:center;gap:11px;width:max-content;margin-top:28px;padding-bottom:7px;border-bottom:1px solid currentColor;color:inherit;text-decoration:none;font-weight:650}
.catalog-card__cta span{transition:transform .25s ease}
.catalog-card__cta:hover span{transform:translateX(4px)}

/* Dvě aktuální modelové řady mají v katalogu stejnou vizuální váhu. */
.sauna-catalog-grid--balanced{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(28px,4vw,64px)}
.sauna-catalog-grid--balanced .catalog-card--editorial.catalog-card--featured{grid-column:auto}
.sauna-catalog-grid--balanced .catalog-card--editorial .catalog-card__media,
.sauna-catalog-grid--balanced .catalog-card--editorial.catalog-card--featured .catalog-card__media{aspect-ratio:16/10}
.sauna-catalog-grid--balanced .catalog-card--editorial.catalog-card--featured .catalog-card__body{display:flex;gap:0}
.sauna-catalog-grid--balanced .catalog-card--editorial.catalog-card--featured .catalog-card__identity h2,
.sauna-catalog-grid--balanced .catalog-card--editorial .catalog-card__identity h2{font-size:clamp(2.8rem,4vw,4.8rem)}
.sauna-catalog-grid--balanced .catalog-card--editorial.catalog-card--featured .catalog-card__specs{margin-top:28px}
.sauna-catalog-grid--balanced .catalog-card--barrel .catalog-card__media{background:#fff}
.sauna-catalog-grid--balanced .catalog-card--barrel .catalog-card__media img{object-fit:contain;padding:clamp(14px,2vw,30px)}

.catalog-card__placeholder--barrel{align-content:center;gap:13px;padding:34px;color:#fff;background:radial-gradient(circle at 50% 43%,rgba(255,255,255,.12),transparent 36%),linear-gradient(145deg,#4b5c52,#213027);text-align:center}
.catalog-card__barrel-mark{position:relative;display:block;width:min(54%,285px);aspect-ratio:1.24;border:2px solid rgba(255,255,255,.68);border-radius:50%;box-shadow:inset 0 0 0 14px rgba(255,255,255,.05)}
.catalog-card__barrel-mark:before{content:"";position:absolute;inset:12% 18%;border:2px solid rgba(255,255,255,.55);border-radius:50%}
.catalog-card__barrel-mark:after{content:"";position:absolute;left:50%;bottom:11%;width:24%;height:46%;border:2px solid rgba(255,255,255,.64);transform:translateX(-50%)}
.catalog-card__placeholder--barrel strong{font-size:1.25rem;font-weight:620;letter-spacing:-.015em}
.catalog-card__placeholder--barrel small{color:rgba(255,255,255,.65);font-size:.78rem;letter-spacing:.02em}

.sauna-choice-guide{padding:clamp(105px,11vw,175px) 0;background:#e8e4db}
.sauna-choice-guide__head{display:grid;grid-template-columns:.42fr 1.8fr;gap:clamp(34px,6vw,96px);align-items:start;margin-bottom:clamp(65px,7vw,105px)}
.sauna-choice-guide__head h2{max-width:920px;margin:0;font-size:clamp(3.2rem,5.4vw,6.5rem);line-height:.98;letter-spacing:-.045em}
.sauna-choice-guide__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(23,25,22,.17);border-left:1px solid rgba(23,25,22,.17)}
.sauna-choice-guide__grid article{min-height:360px;padding:32px clamp(24px,3vw,48px) 38px;border-right:1px solid rgba(23,25,22,.17);border-bottom:1px solid rgba(23,25,22,.17)}
.sauna-choice-guide__grid span{display:block;margin-bottom:clamp(80px,9vw,145px);color:rgba(23,25,22,.46);font-size:.78rem;letter-spacing:.12em}
.sauna-choice-guide__grid h3{margin:0 0 18px;font-size:clamp(1.6rem,2.2vw,2.65rem);line-height:1.05}
.sauna-choice-guide__grid p{max-width:390px;margin:0;color:rgba(23,25,22,.62);font-size:1rem;line-height:1.58}
.sauna-catalog-advisor .sauna-catalog-shell{width:min(1480px,calc(100% - 48px));margin-inline:auto}

@media (max-width:1100px){
  .sauna-catalog-hero__grid{grid-template-columns:1fr;gap:60px}
  .sauna-catalog-hero__intro{max-width:720px}
  .sauna-catalog-models__head{grid-template-columns:1fr 1.5fr}
  .sauna-catalog-models__head>p:last-child{grid-column:2}
  .sauna-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .catalog-card--editorial.catalog-card--featured{grid-column:1/-1}
  .sauna-choice-guide__head{grid-template-columns:1fr}
}

@media (max-width:820px){
  .sauna-catalog-grid--balanced{grid-template-columns:1fr}
  .sauna-catalog-grid--balanced .catalog-card--editorial .catalog-card__media,
  .sauna-catalog-grid--balanced .catalog-card--editorial.catalog-card--featured .catalog-card__media{aspect-ratio:4/3}
}

@media (max-width:782px){
  .admin-bar .sauna-catalog-index{top:46px}
}

@media (max-width:720px){
  .sauna-catalog-shell,.sauna-catalog-advisor .sauna-catalog-shell{width:min(100% - 32px,1480px)}
  .sauna-catalog-hero{padding:92px 0 78px}
  .sauna-catalog-hero__title h1{font-size:clamp(3.35rem,15vw,5.25rem)}
  .sauna-catalog-hero__intro>p{font-size:1rem}
  .sauna-catalog-hero__facts div{grid-template-columns:92px 1fr;gap:16px}
  .sauna-catalog-index__inner{gap:22px}
  .sauna-catalog-index__inner>span{display:none}
  .sauna-catalog-index__links{gap:22px}
  .sauna-catalog-index__links a{padding:20px 0}
  .sauna-catalog-models{padding:88px 0 110px}
  .sauna-catalog-models__head{display:block;margin-bottom:64px}
  .sauna-catalog-models__head h2{margin-top:18px;font-size:clamp(3rem,13vw,4.75rem)}
  .sauna-catalog-models__head>p:last-child{margin-top:28px}
  .sauna-catalog-grid{grid-template-columns:1fr;gap:76px}
  .catalog-card--editorial.catalog-card--featured{grid-column:auto}
  .catalog-card--editorial .catalog-card__media,.catalog-card--editorial.catalog-card--featured .catalog-card__media{aspect-ratio:4/3}
  .catalog-card--editorial.catalog-card--featured .catalog-card__body{display:flex;gap:0}
  .catalog-card--editorial.catalog-card--featured .catalog-card__identity h2{font-size:clamp(2.8rem,12vw,4.4rem)}
  .catalog-card--editorial .catalog-card__identity h2{font-size:clamp(2.5rem,10vw,3.7rem)}
  .catalog-card--editorial .catalog-card__specs{margin-top:26px}
  .sauna-choice-guide{padding:88px 0}
  .sauna-choice-guide__head h2{font-size:clamp(3rem,13vw,4.8rem)}
  .sauna-choice-guide__grid{grid-template-columns:1fr}
  .sauna-choice-guide__grid article{min-height:auto;padding:28px 28px 34px}
  .sauna-choice-guide__grid span{margin-bottom:70px}
}


/* =========================================================
   Dřevěné sauny 0.32.1 — mobile density pass katalogu saun
   ========================================================= */
@media(max-width:760px){
  /* Kompaktnější globální hlavička, bez ztráty čitelnosti. */
  .promotion-bar{
    font-size:.73rem;
  }
  .promotion-bar__inner{
    min-height:42px;
    width:min(100% - 20px,1380px);
    grid-template-columns:minmax(0,1fr) 30px;
  }
  .promotion-bar__inner p{
    padding:5px 0;
    line-height:1.35;
  }
  .promotion-bar__close{
    width:30px;
    height:30px;
  }
  .site-header,
  .site-header__inner{
    min-height:72px;
  }
  .site-header__inner{
    padding-inline:var(--mobile-gutter,24px);
  }
  .site-brand__wordmark{
    font-size:1.48rem;
    letter-spacing:.15em;
  }
  .site-brand__descriptor{
    font-size:.62rem;
    letter-spacing:.16em;
  }
  .mobile-menu-toggle{
    min-width:82px;
    min-height:42px;
    padding-inline:12px;
    gap:8px;
    font-size:.88rem;
  }

  /* Úvod katalogu: stále výrazný, ale o celou obrazovku kratší. */
  .sauna-catalog-hero{
    padding:64px 0 58px;
  }
  .sauna-catalog-hero__grid{
    gap:38px;
  }
  .sauna-catalog-hero__title .eyebrow{
    margin-bottom:18px;
  }
  .sauna-catalog-hero__title h1{
    max-width:11ch;
    margin-top:0;
    font-size:clamp(3rem,12.2vw,3.9rem)!important;
    line-height:.96;
    letter-spacing:-.052em;
  }
  .sauna-catalog-hero__intro>p{
    margin-bottom:26px;
    font-size:.98rem;
    line-height:1.55;
  }
  .sauna-catalog-hero__facts div{
    grid-template-columns:82px minmax(0,1fr);
    gap:14px;
    padding:13px 0;
  }
  .sauna-catalog-hero__facts dt{
    font-size:.68rem;
  }
  .sauna-catalog-hero__facts dd{
    font-size:.88rem;
    line-height:1.38;
  }

  /* Navigace modelů se ukáže jen při více řadách; samotná už je nižší. */
  .sauna-catalog-index__inner{
    min-height:54px;
  }
  .sauna-catalog-index__links{
    gap:18px;
  }
  .sauna-catalog-index__links a{
    padding:16px 0;
    font-size:.84rem;
  }
  .sauna-catalog-index__links a:after{
    bottom:11px;
  }

  /* Přehled modelů: kratší úvod a kompaktnější produktové karty. */
  .sauna-catalog-models{
    padding:70px 0 82px;
  }
  .sauna-catalog-models__head{
    margin-bottom:42px;
  }
  .sauna-catalog-models__head h2{
    max-width:10.5ch;
    margin-top:14px;
    font-size:clamp(2.75rem,11.4vw,3.7rem)!important;
    line-height:.98;
  }
  .sauna-catalog-models__head>p:last-child{
    margin-top:22px;
    font-size:.98rem;
    line-height:1.55;
  }
  .sauna-catalog-grid{
    gap:58px;
  }
  .catalog-card--editorial .catalog-card__media,
  .catalog-card--editorial.catalog-card--featured .catalog-card__media{
    aspect-ratio:4/3;
  }
  .catalog-card--editorial .catalog-card__body{
    padding-top:21px;
  }
  .catalog-card--editorial .eyebrow{
    margin-bottom:12px;
  }
  .catalog-card--editorial.catalog-card--featured .catalog-card__identity h2,
  .catalog-card--editorial .catalog-card__identity h2{
    margin:8px 0 12px;
    font-size:clamp(2.55rem,10.8vw,3.55rem)!important;
  }
  .catalog-card--editorial .catalog-card__description{
    font-size:.98rem;
    line-height:1.55;
  }
  .catalog-card--editorial .catalog-card__specs,
  .catalog-card--editorial.catalog-card--featured .catalog-card__specs{
    margin-top:22px;
  }
  .catalog-card--editorial .catalog-card__specs div{
    display:grid;
    grid-template-columns:34% minmax(0,1fr);
    gap:14px;
    align-items:start;
    padding:13px 0;
  }
  .catalog-card--editorial .catalog-card__specs dt{
    margin:1px 0 0;
    font-size:.68rem;
  }
  .catalog-card--editorial .catalog-card__specs dd{
    font-size:.9rem;
    line-height:1.38;
  }
  .catalog-card__cta{
    margin-top:22px;
  }

  /* Rozhodovací tabulka: výška se řídí obsahem, nikoli obrazovkou. */
  .sauna-choice-guide{
    padding:72px 0 76px;
  }
  .sauna-choice-guide__head{
    margin-bottom:40px;
  }
  .sauna-choice-guide__head h2{
    max-width:11ch;
    font-size:clamp(2.75rem,11.4vw,3.7rem)!important;
    line-height:.98;
  }
  .sauna-choice-guide__grid article{
    min-height:0;
    padding:25px 26px 29px;
  }
  .sauna-choice-guide__grid span{
    margin-bottom:28px;
    font-size:.7rem;
  }
  .sauna-choice-guide__grid h3{
    margin-bottom:12px;
    font-size:1.65rem;
  }
  .sauna-choice-guide__grid p{
    font-size:.96rem;
    line-height:1.53;
  }

  /* Závěrečná poradenská výzva bez nadbytečné prázdné výšky. */
  .sauna-catalog-advisor.catalog-advisor{
    padding:74px 0 78px;
  }
  .sauna-catalog-advisor .catalog-advisor__inner{
    gap:34px;
  }
  .sauna-catalog-advisor h2{
    max-width:9.5ch;
    margin-top:10px;
    font-size:clamp(2.85rem,11.8vw,3.9rem)!important;
    line-height:.98;
  }
  .sauna-catalog-advisor .catalog-advisor__inner>div:last-child p{
    font-size:1rem;
    line-height:1.55;
  }
  .sauna-catalog-advisor .button{
    min-height:50px;
    margin-top:22px;
    padding-inline:20px;
  }
}

@media(max-width:390px){
  .sauna-catalog-hero__title h1,
  .sauna-catalog-models__head h2,
  .sauna-choice-guide__head h2,
  .sauna-catalog-advisor h2{
    font-size:clamp(2.55rem,11.6vw,3.15rem)!important;
  }
  .catalog-card--editorial.catalog-card--featured .catalog-card__identity h2,
  .catalog-card--editorial .catalog-card__identity h2{
    font-size:clamp(2.35rem,10.5vw,3rem)!important;
  }
}

/* =========================================================
   Dřevěné sauny 0.32.2 — finální kompaktní mobilní rytmus katalogu
   ========================================================= */
@media(max-width:760px){
  /* Úvod katalogu: menší typografická dominance a kratší nástup. */
  .sauna-catalog-hero{
    padding:52px 0 48px;
  }
  .sauna-catalog-hero__grid{
    gap:30px;
  }
  .sauna-catalog-hero__title .eyebrow{
    margin-bottom:14px;
  }
  .sauna-catalog-hero__title h1{
    max-width:12.2ch;
    font-size:clamp(2.78rem,10.8vw,3.48rem)!important;
    line-height:.97;
  }
  .sauna-catalog-hero__intro>p{
    margin-bottom:22px;
    font-size:.95rem;
    line-height:1.5;
  }
  .sauna-catalog-hero__facts div{
    padding:11px 0;
  }

  /* Přehled modelů: menší mezery mezi úvodem, kartou a další sekcí. */
  .sauna-catalog-models{
    padding:56px 0 58px;
  }
  .sauna-catalog-models__head{
    margin-bottom:32px;
  }
  .sauna-catalog-models__head h2{
    max-width:11.8ch;
    margin-top:12px;
    font-size:clamp(2.52rem,10.35vw,3.35rem)!important;
    line-height:.99;
  }
  .sauna-catalog-models__head>p:last-child{
    margin-top:18px;
    font-size:.94rem;
    line-height:1.5;
  }
  .sauna-catalog-grid{
    gap:44px;
  }
  .catalog-card--editorial .catalog-card__body{
    padding-top:18px;
  }
  .catalog-card--editorial.catalog-card--featured .catalog-card__identity h2,
  .catalog-card--editorial .catalog-card__identity h2{
    margin:7px 0 10px;
    font-size:clamp(2.28rem,9.55vw,3.15rem)!important;
  }
  .catalog-card--editorial .catalog-card__description{
    font-size:.94rem;
    line-height:1.5;
  }
  .catalog-card--editorial .catalog-card__specs,
  .catalog-card--editorial.catalog-card--featured .catalog-card__specs{
    margin-top:18px;
  }
  .catalog-card--editorial .catalog-card__specs div{
    padding:11px 0;
  }
  .catalog-card__cta{
    margin-top:18px;
  }

  /* Rozhodovací karty: obsahově vysoké, ne viewportově vysoké. */
  .sauna-choice-guide{
    padding:58px 0 62px;
  }
  .sauna-choice-guide__head{
    margin-bottom:30px;
  }
  .sauna-choice-guide__head h2{
    max-width:11.8ch;
    font-size:clamp(2.5rem,10.35vw,3.35rem)!important;
    line-height:.99;
  }
  .sauna-choice-guide__grid article{
    min-height:0!important;
    padding:20px 22px 23px;
  }
  .sauna-choice-guide__grid span{
    margin-bottom:20px;
    font-size:.67rem;
  }
  .sauna-choice-guide__grid h3{
    margin-bottom:10px;
    font-size:1.48rem;
  }
  .sauna-choice-guide__grid p{
    font-size:.92rem;
    line-height:1.48;
  }

  /* Poradenská výzva: přirozené tři řádky a kratší blok. */
  .sauna-catalog-advisor.catalog-advisor{
    padding:60px 0 64px;
  }
  .sauna-catalog-advisor .catalog-advisor__inner{
    gap:26px;
  }
  .sauna-catalog-advisor h2{
    max-width:11.2ch;
    font-size:clamp(2.55rem,10.4vw,3.42rem)!important;
    line-height:.98;
  }
  .sauna-catalog-advisor .catalog-advisor__inner>div:last-child p{
    font-size:.96rem;
    line-height:1.5;
  }
  .sauna-catalog-advisor .button{
    margin-top:18px;
  }
}

@media(max-width:390px){
  .sauna-catalog-hero__title h1,
  .sauna-catalog-models__head h2,
  .sauna-choice-guide__head h2,
  .sauna-catalog-advisor h2{
    font-size:clamp(2.42rem,10.7vw,2.98rem)!important;
  }
  .catalog-card--editorial.catalog-card--featured .catalog-card__identity h2,
  .catalog-card--editorial .catalog-card__identity h2{
    font-size:clamp(2.18rem,9.7vw,2.78rem)!important;
  }
}

/* Dřevěné sauny 0.33 — Acryl Deluxe product detail and configurator */
.tub-detail{
  --tub-shell:min(1480px,calc(100vw - 7vw));
  --tub-paper:#faf8f3;
  --tub-soft:#ece8df;
  --tub-panel:#f3f0e9;
  --tub-green:#2c3e36;
  --tub-ink:#171916;
  --tub-muted:rgba(23,25,22,.64);
  --tub-line:rgba(23,25,22,.15);
  overflow:clip;
  background:var(--tub-paper);
}
.tub-detail button,.tub-detail input,.tub-detail textarea{font:inherit}
.tub-detail button{cursor:pointer}
.tub-detail button:disabled{cursor:not-allowed;opacity:.38}
.tub-hero{
  width:100%;
  display:grid;
  grid-template-columns:minmax(370px,.8fr) minmax(0,1.2fr);
  grid-template-rows:clamp(720px,72svh,820px) auto;
  color:var(--tub-ink);
  background:var(--tub-soft);
}
.tub-hero__copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(62px,6vw,104px) clamp(38px,6vw,110px) clamp(52px,5vw,86px) max(3.5vw,calc((100vw - 1480px)/2));
}
.tub-hero__copy h1{
  max-width:7.8ch;
  margin-bottom:28px;
  font-size:clamp(4.7rem,8.3vw,9.6rem);
  line-height:.88;
  letter-spacing:-.065em;
}
.tub-hero__lead{max-width:590px;margin-bottom:20px;font-size:clamp(1.05rem,1.28vw,1.3rem);line-height:1.55;color:var(--tub-muted)}
.tub-hero__technical{max-width:590px;margin-bottom:0;padding-top:18px;border-top:1px solid var(--tub-line);font-size:.86rem;font-weight:650;letter-spacing:.02em}
.tub-hero__price{display:grid;gap:2px;margin-top:clamp(38px,5vw,72px)}
.tub-hero__price span{font-size:.7rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--tub-muted)}
.tub-hero__price strong{font-size:clamp(1.75rem,2.4vw,2.65rem);font-weight:580;letter-spacing:-.04em}
.tub-hero__price small{font-size:.88rem;color:var(--tub-muted)}
.tub-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 26px;margin-top:30px}
.tub-detail .text-link{appearance:none;padding:0;border:0;background:none;color:inherit;font-weight:650;text-decoration:none}
.tub-hero__media{position:relative;min-width:0;overflow:hidden;background:#8a887f}
.tub-hero__media:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(10,14,12,.34),transparent 40%);pointer-events:none}
.tub-hero__media img{width:100%;height:100%;min-height:0;object-fit:cover}
.tub-hero__media-label{position:absolute;z-index:2;right:clamp(24px,3.5vw,58px);bottom:clamp(26px,3.5vw,54px);display:grid;justify-items:end;color:#fff;text-shadow:0 1px 18px rgba(0,0,0,.35)}
.tub-hero__media-label span{font-size:.66rem;font-weight:750;letter-spacing:.18em}
.tub-hero__media-label strong{font-size:clamp(1.25rem,1.8vw,2rem);font-weight:540}
.tub-hero__facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;background:var(--tub-paper);border-top:1px solid var(--tub-line);border-bottom:1px solid var(--tub-line)}
.tub-hero__facts span{font-size:.68rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase;color:var(--tub-muted)}
.tub-hero__facts strong{align-self:end;font-size:clamp(1.25rem,1.8vw,1.85rem);font-weight:550;letter-spacing:-.03em}

.tub-intro{width:var(--tub-shell);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.58fr);gap:clamp(58px,8vw,132px);align-items:end;margin:auto;padding:clamp(84px,8.5vw,132px) 0 clamp(68px,6.8vw,104px)}
.tub-intro__heading h2{max-width:900px;margin:0;font-size:clamp(3.15rem,5.9vw,7.2rem);line-height:.94}
.tub-intro__copy{max-width:570px;padding-bottom:7px;color:var(--tub-muted);font-size:1.05rem}
.tub-intro__copy p:last-child{margin-bottom:0}
.tub-benefits{width:var(--tub-shell);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 auto clamp(82px,8.5vw,135px);border-top:1px solid var(--tub-line);border-left:1px solid var(--tub-line)}
.tub-benefits article{min-height:270px;display:flex;flex-direction:column;padding:clamp(28px,3.2vw,48px);border-right:1px solid var(--tub-line);border-bottom:1px solid var(--tub-line)}
.tub-benefits span{font-size:.68rem;font-weight:750;letter-spacing:.14em}
.tub-benefits h3{margin-top:auto;margin-bottom:14px;font-size:clamp(1.55rem,2.2vw,2.35rem)}
.tub-benefits p{max-width:410px;margin-bottom:0;color:var(--tub-muted)}

.tub-gallery{padding:clamp(100px,10vw,170px) max(3.5vw,calc((100vw - 1480px)/2));color:#fff;background:var(--tub-ink)}
.tub-gallery__header{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.5fr);gap:80px;align-items:end;margin-bottom:clamp(55px,6vw,95px)}
.tub-gallery__header h2{max-width:850px;margin-bottom:0;font-size:clamp(3rem,5.4vw,6.4rem)}
.tub-gallery__header>p{max-width:500px;margin-bottom:4px;color:rgba(255,255,255,.65);font-size:1.05rem}
.tub-gallery__grid{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:repeat(2,minmax(300px,42vw));gap:clamp(16px,1.7vw,28px)}
.tub-gallery__grid figure{margin:0;overflow:hidden;background:#30332f}
.tub-gallery__grid figure:first-child{grid-row:1/3}
.tub-gallery__grid img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.tub-gallery__grid figure:hover img{transform:scale(1.02)}

.tub-configurator{position:relative;padding:clamp(100px,11vw,180px) max(3.5vw,calc((100vw - 1480px)/2));background:var(--tub-panel);scroll-margin-top:90px}
.tub-configurator__header{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.55fr);gap:80px;align-items:end;margin-bottom:clamp(55px,6vw,92px)}
.tub-configurator__header h2{max-width:900px;margin-bottom:0;font-size:clamp(3.2rem,5.8vw,6.8rem)}
.tub-configurator__header>p{max-width:520px;margin-bottom:5px;color:var(--tub-muted);font-size:1.05rem}
.tub-configurator__success{display:flex;gap:16px;align-items:center;margin:-34px 0 42px;padding:18px 22px;color:#fff;background:var(--tub-green)}
.tub-configurator__success span{color:rgba(255,255,255,.72)}
.tub-config-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.tub-packages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:32px}
.tub-package{min-height:172px;display:flex;flex-direction:column;align-items:flex-start;padding:24px;border:1px solid var(--tub-line);background:rgba(255,255,255,.3);color:inherit;text-align:left;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.tub-package:hover{background:#fff;transform:translateY(-2px)}
.tub-package.is-active{border-color:var(--tub-green);background:var(--tub-green);color:#fff}
.tub-package span{font-size:.65rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase;opacity:.65}
.tub-package strong{margin-top:18px;font-size:1.14rem;font-weight:650}
.tub-package small{margin-top:7px;line-height:1.42;opacity:.66}
.tub-phase-nav{position:sticky;top:82px;z-index:12;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin:0 0 24px;border:1px solid var(--tub-line);background:rgba(243,240,233,.92);backdrop-filter:blur(14px)}
.tub-phase-nav button{min-height:76px;display:flex;align-items:center;gap:11px;padding:15px 17px;border:0;border-right:1px solid var(--tub-line);background:transparent;color:inherit;text-align:left}
.tub-phase-nav button:last-child{border-right:0}
.tub-phase-nav button span{font-size:.62rem;font-weight:750;letter-spacing:.1em;color:var(--tub-muted)}
.tub-phase-nav button strong{font-size:.82rem;font-weight:650}
.tub-phase-nav button.is-active{color:#fff;background:var(--tub-green)}
.tub-phase-nav button.is-active span{color:rgba(255,255,255,.62)}
.tub-config-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,390px);gap:clamp(22px,3vw,48px);align-items:start}
.tub-config-panels{min-width:0}
.tub-config-panel{padding:clamp(30px,4vw,58px);border:1px solid var(--tub-line);background:var(--tub-paper)}
.tub-config-panel[hidden]{display:none!important}
.tub-config-panel>header{display:grid;gap:9px;margin-bottom:38px;padding-bottom:28px;border-bottom:1px solid var(--tub-line)}
.tub-config-panel>header span{font-size:.68rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--tub-muted)}
.tub-config-panel>header h3{margin:0;font-size:clamp(2rem,3.1vw,3.7rem)}
.tub-option-group{min-width:0;margin:0;padding:0 0 clamp(42px,5vw,70px);border:0}
.tub-option-group+ .tub-option-group{padding-top:clamp(36px,4vw,56px);border-top:1px solid var(--tub-line)}
.tub-option-group legend{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr);gap:16px;margin-bottom:24px;padding:0}
.tub-option-group legend>span{font-size:.66rem;font-weight:750;letter-spacing:.12em;color:var(--tub-muted)}
.tub-option-group legend div{display:grid;gap:6px}
.tub-option-group legend strong{font-size:1.2rem;font-weight:680}
.tub-option-group legend small{max-width:750px;color:var(--tub-muted);font-size:.9rem;line-height:1.5}
.sauna-option-group__automatic{display:grid;grid-template-columns:minmax(150px,.34fr) minmax(0,1fr);gap:18px;margin:16px 0 0;padding:16px 18px;border:1px solid var(--tub-line);background:#f1eee7;color:var(--tub-muted);font-size:.82rem;line-height:1.5}
.sauna-option-group__automatic strong{color:var(--tub-ink);font-size:.9rem}
.sauna-option-group__automatic span{display:block}
.sauna-option-group__automatic b{display:inline-block;margin-left:6px;color:var(--tub-ink);font-size:.78rem}
@media (max-width:640px){
  .sauna-option-group__automatic{grid-template-columns:1fr;gap:6px}
  .sauna-option-group__automatic b{margin-left:0}
}
.tub-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.tub-option-grid--dense{grid-template-columns:repeat(3,minmax(0,1fr))}
.tub-option{position:relative;min-height:136px;display:grid;grid-template-columns:46px minmax(0,1fr) 24px;gap:15px;align-items:center;padding:19px;border:1px solid var(--tub-line);background:#fff;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.tub-option:hover{border-color:rgba(44,62,54,.55);transform:translateY(-1px)}
.tub-option.is-selected{border-color:var(--tub-green);box-shadow:inset 0 0 0 1px var(--tub-green)}
.tub-option input{position:absolute;opacity:0;pointer-events:none}
.tub-option__swatch,.tub-option__icon{width:46px;height:46px;border:1px solid rgba(23,25,22,.12);border-radius:50%;background:var(--swatch,#e5e1d7)}
.tub-option__swatch{box-shadow:inset 0 0 0 4px rgba(255,255,255,.45)}
.tub-option__icon{position:relative;border-radius:0;background:#f1eee7}
.tub-option__icon:before,.tub-option__icon:after{content:"";position:absolute;background:rgba(44,62,54,.65)}
.tub-option__icon:before{left:10px;right:10px;top:15px;height:1px;box-shadow:0 8px 0 rgba(44,62,54,.65)}
.tub-option__icon:after{top:10px;bottom:10px;left:22px;width:1px;opacity:.45}
.tub-option__content{min-width:0;display:grid;align-content:center;gap:4px}
.tub-option__content em{width:max-content;max-width:100%;padding:3px 7px;color:#fff;background:var(--tub-green);font-size:.58rem;font-style:normal;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.tub-option__content strong{font-size:.94rem;font-weight:670;line-height:1.3}
.tub-option__content small{color:var(--tub-muted);font-size:.78rem;line-height:1.38}
.tub-option__content b{margin-top:4px;font-size:.66rem;font-weight:680;color:var(--tub-green)}
.tub-option__check{width:22px;height:22px;display:grid;place-items:center;border:1px solid var(--tub-line);border-radius:50%;color:transparent;font-size:.72rem}
.tub-option.is-selected .tub-option__check{border-color:var(--tub-green);color:#fff;background:var(--tub-green)}
.tub-phase-actions{display:flex;justify-content:space-between;gap:14px;padding-top:26px;border-top:1px solid var(--tub-line)}
.button-outline{min-height:52px;padding:0 22px;border:1px solid var(--tub-ink);background:transparent;color:var(--tub-ink);font-weight:650}
.tub-config-summary{position:sticky;top:182px;max-height:calc(100svh - 205px);overflow:auto;border:1px solid var(--tub-line);background:var(--tub-ink);color:#fff}
.tub-config-summary__head{display:grid;gap:5px;padding:25px 27px;border-bottom:1px solid rgba(255,255,255,.14)}
.tub-config-summary__head span,.tub-config-summary__price>span{font-size:.62rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.52)}
.tub-config-summary__head strong{font-size:1.15rem;font-weight:580}
.tub-config-summary__price{display:grid;gap:3px;padding:27px;border-bottom:1px solid rgba(255,255,255,.14)}
.tub-config-summary__price strong{font-size:clamp(1.55rem,2.1vw,2.25rem);font-weight:550;letter-spacing:-.035em}
.tub-config-summary__price small{color:rgba(255,255,255,.55)}
.tub-config-summary__price em{margin-top:10px;padding:8px 10px;color:#f4e6b3;background:rgba(231,193,68,.13);font-size:.76rem;font-style:normal;line-height:1.4}
.tub-config-summary__progress{display:grid;gap:9px;padding:18px 27px;border-bottom:1px solid rgba(255,255,255,.14);font-size:.75rem;color:rgba(255,255,255,.68)}
.tub-config-summary__progress i{height:2px;background:rgba(255,255,255,.16);overflow:hidden}
.tub-config-summary__progress i b{display:block;width:16.67%;height:100%;background:#fff;transition:width .25s ease}
.tub-config-summary__list{margin:0;padding:10px 27px 16px}
.tub-config-summary__list div{display:grid;grid-template-columns:minmax(95px,.42fr) minmax(0,.58fr);gap:16px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.tub-config-summary__list dt{font-size:.69rem;color:rgba(255,255,255,.48)}
.tub-config-summary__list dd{margin:0;font-size:.74rem;line-height:1.4;text-align:right}
.tub-config-summary__edit{margin:6px 27px 18px;color:#fff!important}
.tub-config-summary>p{margin:0;padding:19px 27px;color:rgba(255,255,255,.5);border-top:1px solid rgba(255,255,255,.14);font-size:.7rem;line-height:1.45}
.tub-contact-panel{display:grid;grid-template-columns:minmax(280px,.66fr) minmax(0,1.34fr);gap:clamp(55px,8vw,115px);margin-top:30px;padding:clamp(32px,5vw,72px);color:#fff;background:var(--tub-green);scroll-margin-top:180px}
.tub-contact-panel[hidden]{display:none!important}
.tub-contact-panel__intro h3{max-width:520px;font-size:clamp(2.25rem,4vw,4.7rem)}
.tub-contact-panel__intro p:last-child{max-width:490px;color:rgba(255,255,255,.68)}
.tub-contact-panel__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.tub-contact-panel__fields label{display:grid;gap:8px;font-size:.75rem;font-weight:650;letter-spacing:.02em}
.tub-contact-panel__fields input,.tub-contact-panel__fields textarea{width:100%;min-height:52px;padding:13px 14px;color:#fff;border:1px solid rgba(255,255,255,.26);border-radius:0;background:rgba(255,255,255,.06);outline:none;resize:vertical}
.tub-contact-panel__fields input:focus,.tub-contact-panel__fields textarea:focus{border-color:#fff;background:rgba(255,255,255,.1)}
.tub-contact-panel__fields ::placeholder{color:rgba(255,255,255,.42)}
.tub-contact-panel__wide{grid-column:1/-1}
.tub-contact-panel__consent{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:10px!important;font-weight:400!important;color:rgba(255,255,255,.72)}
.tub-contact-panel__consent input{width:18px!important;min-height:18px!important;margin-top:2px;padding:0!important;accent-color:#fff}
.tub-contact-panel__submit{display:flex;align-items:center;gap:18px;margin-top:5px}
.tub-contact-panel__submit small{color:rgba(255,255,255,.58)}
.tub-contact-panel .button{color:var(--tub-ink);background:#fff;border-color:#fff}
.tub-mobile-summary{display:none}

.tub-specs{padding:clamp(105px,11vw,180px) max(3.5vw,calc((100vw - 1480px)/2));background:var(--tub-paper)}
.tub-specs>header{max-width:920px;margin-bottom:clamp(50px,6vw,90px)}
.tub-specs>header h2{max-width:900px;font-size:clamp(3rem,5.6vw,6.5rem)}
.tub-specs__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--tub-line);border-left:1px solid var(--tub-line)}
.tub-specs dl{margin:0}
.tub-specs dl+dl{border-left:1px solid var(--tub-line)}
.tub-specs dl div{display:grid;grid-template-columns:.45fr .55fr;gap:25px;min-height:108px;align-items:center;padding:25px clamp(22px,3vw,42px);border-right:1px solid var(--tub-line);border-bottom:1px solid var(--tub-line)}
.tub-specs dt{font-size:.68rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--tub-muted)}
.tub-specs dd{margin:0;font-size:1.05rem;font-weight:600}
.tub-final-cta{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.5fr);gap:clamp(65px,10vw,170px);align-items:end;padding:clamp(105px,12vw,190px) max(3.5vw,calc((100vw - 1480px)/2));color:#fff;background:var(--tub-green)}
.tub-final-cta h2{max-width:920px;margin-bottom:0;font-size:clamp(3.2rem,5.8vw,6.9rem)}
.tub-final-cta>div:last-child p{max-width:480px;color:rgba(255,255,255,.67);font-size:1.06rem}
.tub-final-cta .button{margin-top:22px}

@media(max-width:1180px){
  .tub-hero{grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr)}
  .tub-packages{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tub-phase-nav{overflow-x:auto;grid-template-columns:repeat(6,minmax(150px,1fr));scrollbar-width:none}
  .tub-phase-nav::-webkit-scrollbar{display:none}
  .tub-option-grid--dense{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tub-config-layout{grid-template-columns:minmax(0,1fr) 330px}
}
@media(max-width:960px){
  .tub-hero{grid-template-columns:1fr;grid-template-rows:auto minmax(520px,68vw) auto}
  .tub-hero__copy{padding:88px max(24px,5vw) 64px}
  .tub-hero__copy h1{max-width:9ch;font-size:clamp(4.2rem,12vw,7rem)}
  .tub-hero__media img{min-height:0}
  .tub-intro,.tub-gallery__header,.tub-configurator__header,.tub-final-cta{grid-template-columns:1fr;gap:35px}
  .tub-intro__copy{max-width:690px}
  .tub-benefits{grid-template-columns:1fr}
  .tub-benefits article{min-height:230px}
  .tub-gallery__grid{grid-template-columns:1fr 1fr;grid-template-rows:58vw 42vw}
  .tub-gallery__grid figure:first-child{grid-column:1/-1;grid-row:auto}
  .tub-config-layout{grid-template-columns:1fr}
  .tub-config-summary{position:relative;top:auto;max-height:none}
  .tub-contact-panel{grid-template-columns:1fr}
  .tub-final-cta>div:last-child{max-width:650px}
}

/* Sauna Square — stejné rozvržení jako Sudová sauna, vlastní jsou pouze produktové podklady. */
.square-sauna-detail .sauna-option-row[data-option-id="sauna-only"] .sauna-option__icon{background-image:url("../images/products/sauna-square/layout-front-sauna.webp")}
.square-sauna-detail .sauna-option-row[data-option-id="sauna-terrace"] .sauna-option__icon{background-image:url("../images/products/sauna-square/layout-front-terrace.webp")}
.square-sauna-detail .sauna-option-row[data-option-id="sauna-dressing"] .sauna-option__icon{background-image:url("../images/products/sauna-square/layout-front-dressing.webp")}
.square-sauna-detail .sauna-option-row[data-option-id="sauna-dressing-terrace"] .sauna-option__icon{background-image:url("../images/products/sauna-square/layout-front-dressing-terrace.webp")}
.square-sauna-detail .sauna-option-row[data-option-id="sauna-side"] .sauna-option__icon{background-image:url("../images/products/sauna-square/layout-side-sauna.webp")}
.square-sauna-detail .sauna-option-row[data-option-id="sauna-dressing-side"] .sauna-option__icon{background-image:url("../images/products/sauna-square/layout-side-dressing.webp")}
.square-sauna-detail .sauna-option-row[data-option-id="wood-spruce"] .sauna-option__icon{background-image:url("../images/products/sauna-square/product-spruce.webp")}
.square-sauna-detail .sauna-option-row[data-option-id="wood-thermo"] .sauna-option__icon{background-image:url("../images/products/sauna-square/product-thermowood.webp")}
.sauna-catalog-grid--balanced .catalog-card--square .catalog-card__media{background:#f7f7f5}
.sauna-catalog-grid--balanced .catalog-card--square .catalog-card__media img{object-fit:contain;padding:clamp(14px,2vw,30px)}

/* Sauna Iglú — modelové půdorysy a materiály. */
.igloo-sauna-layouts__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--tub-line);border-left:1px solid var(--tub-line)}
.igloo-sauna-layouts__grid article{display:block;min-height:440px;padding:0;border-right:1px solid var(--tub-line);border-bottom:1px solid var(--tub-line);background:rgba(255,255,255,.36)}
.igloo-sauna-layouts__grid .barrel-sauna-layouts__media img{padding:20px;mix-blend-mode:multiply}
.igloo-sauna-layouts__grid h3{font-size:1.3rem}
.igloo-sauna-layouts__grid p{margin:0;color:var(--tub-muted);line-height:1.6}
.igloo-sauna-detail .barrel-sauna-size-guide__lengths>div{grid-template-columns:repeat(9,minmax(62px,1fr))}
.igloo-sauna-construction .barrel-sauna-construction__media img{object-fit:cover;padding:0}

/* Sauna Mini: kompaktní typový produkt s vlastní informační hierarchií. */
.mini-sauna-detail>section.mini-sauna-delivery-choice{background:#f3f0e9!important}
.mini-sauna-hero .barrel-sauna-hero__copy{padding-top:clamp(70px,6.5vw,105px);padding-bottom:clamp(60px,5.5vw,90px)}
.mini-sauna-hero .barrel-sauna-hero__copy h1{max-width:none;font-size:clamp(4.2rem,7.2vw,8rem)}
.mini-sauna-hero .barrel-sauna-hero__media{min-height:620px}
.mini-sauna-hero .barrel-sauna-hero__media>img{object-position:center 45%}
.mini-sauna-intro,.mini-sauna-construction,.mini-sauna-heating,.mini-sauna-process,.mini-sauna-resources,.mini-sauna-faq,.mini-sauna-delivery-choice{padding-top:clamp(78px,6.2vw,112px);padding-bottom:clamp(78px,6.2vw,112px)}
.mini-sauna-intro .barrel-sauna-benefits article{min-height:220px}
.mini-sauna-intro .barrel-sauna-benefits h3{margin-top:46px}
.mini-sauna-gallery .product-gallery-strip__item .product-lightbox-trigger{height:clamp(390px,48vh,520px)}
.mini-sauna-construction .barrel-sauna-construction__media{aspect-ratio:1.08;background:#fff}
.mini-sauna-construction .barrel-sauna-construction__media img{padding:clamp(26px,4vw,58px)}
.mini-sauna-construction .barrel-sauna-construction__copy h2,.mini-sauna-delivery-choice h2{max-width:920px;margin:12px 0 0;font-size:clamp(3rem,5vw,5.8rem);line-height:.98;letter-spacing:-.045em}
.mini-sauna-delivery-choice{padding-left:max(3.5vw,calc((100vw - 1480px)/2));padding-right:max(3.5vw,calc((100vw - 1480px)/2))}
.mini-sauna-delivery-choice__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--tub-line);border-left:1px solid var(--tub-line)}
.mini-sauna-delivery-choice__grid article{display:flex;flex-direction:column;min-height:510px;padding:clamp(28px,3vw,44px);border-right:1px solid var(--tub-line);border-bottom:1px solid var(--tub-line);background:rgba(255,255,255,.34)}
.mini-sauna-delivery-choice__grid article>span{color:var(--tub-green);font-size:.68rem;font-weight:760;letter-spacing:.12em}
.mini-sauna-delivery-choice__grid article>small{margin-top:52px;color:var(--tub-muted);font-size:.64rem;font-weight:760;letter-spacing:.1em;text-transform:uppercase}
.mini-sauna-delivery-choice__grid h3{margin:10px 0 15px;font-size:clamp(1.8rem,2.8vw,3rem);letter-spacing:-.035em}
.mini-sauna-delivery-choice__grid p{max-width:630px;margin:0;color:var(--tub-muted);line-height:1.66}
.mini-sauna-delivery-choice__grid ul{display:grid;gap:10px;margin:28px 0 0;padding:25px 0 0;border-top:1px solid var(--tub-line);list-style:none;color:#3f4641}
.mini-sauna-delivery-choice__grid li{position:relative;padding-left:20px;line-height:1.5}
.mini-sauna-delivery-choice__grid li::before{content:"";position:absolute;left:0;top:.58em;width:7px;height:7px;border-radius:50%;background:var(--tub-green)}
.mini-sauna-delivery-choice__grid a{width:max-content;margin-top:auto;padding-top:30px;font-weight:730;text-decoration:none;border-bottom:1px solid currentColor}
.mini-sauna-heating .barrel-sauna-heating__grid article{min-height:270px}
.mini-sauna-heating .barrel-sauna-heating__grid h3{margin-top:58px}
.mini-sauna-process .barrel-sauna-process__steps li{min-height:190px}
.mini-sauna-resources .barrel-sauna-resources__grid>a{min-height:310px}
.mini-sauna-detail .sauna-phase-nav{grid-template-columns:repeat(3,minmax(0,1fr))}
.mini-sauna-detail .sauna-option-group[data-sauna-group="delivery-mode"] .tub-option-grid,.mini-sauna-detail .sauna-option-group[data-sauna-group="electric-heater"] .tub-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.mini-sauna-detail .sauna-option-group[data-sauna-group^="lighting-"] .tub-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

@media(max-width:960px){
  .mini-sauna-hero .barrel-sauna-hero__media{min-height:68vw}
  .mini-sauna-delivery-choice__grid{grid-template-columns:1fr}
  .mini-sauna-delivery-choice__grid article{min-height:460px}
  .mini-sauna-detail .sauna-phase-nav{grid-template-columns:repeat(3,150px)}
}
@media(max-width:620px){
  .mini-sauna-hero .barrel-sauna-hero__copy h1{font-size:3.65rem}
  .mini-sauna-hero .barrel-sauna-hero__media{min-height:92vw}
  .mini-sauna-intro,.mini-sauna-construction,.mini-sauna-heating,.mini-sauna-process,.mini-sauna-resources,.mini-sauna-faq,.mini-sauna-delivery-choice{padding-top:68px;padding-bottom:68px}
  .mini-sauna-delivery-choice{padding-left:16px;padding-right:16px}
  .mini-sauna-construction .barrel-sauna-construction__copy h2,.mini-sauna-delivery-choice h2{font-size:2.7rem}
  .mini-sauna-delivery-choice__grid article{min-height:0;padding:25px}
  .mini-sauna-delivery-choice__grid article>small{margin-top:38px}
  .mini-sauna-gallery .product-gallery-strip__item .product-lightbox-trigger{height:62svh}
  .mini-sauna-detail .sauna-option-group[data-sauna-group="delivery-mode"] .tub-option-grid,.mini-sauna-detail .sauna-option-group[data-sauna-group="electric-heater"] .tub-option-grid,.mini-sauna-detail .sauna-option-group[data-sauna-group^="lighting-"] .tub-option-grid{grid-template-columns:1fr}
}
.igloo-sauna-detail .sauna-option-group[data-sauna-group="layout-type"] .sauna-option__icon{background-color:#fff;background-size:contain;background-repeat:no-repeat;background-position:center}
.igloo-sauna-detail .sauna-option-row[data-option-id="sauna-only"] .sauna-option__icon{background-image:url("../images/products/sauna-iglu/layout-s.webp")}
.igloo-sauna-detail .sauna-option-row[data-option-id="sauna-terrace"] .sauna-option__icon{background-image:url("../images/products/sauna-iglu/layout-t.webp")}
.igloo-sauna-detail .sauna-option-row[data-option-id="sauna-dressing"] .sauna-option__icon{background-image:url("../images/products/sauna-iglu/layout-d.webp")}
.igloo-sauna-detail .sauna-option-row[data-option-id="sauna-dressing-terrace"] .sauna-option__icon{background-image:url("../images/products/sauna-iglu/layout-dt.webp")}
.igloo-sauna-detail .sauna-option-row[data-option-id="wood-spruce"] .sauna-option__icon{background-image:url("../images/products/sauna-iglu/material-spruce.webp")}
.igloo-sauna-detail .sauna-option-row[data-option-id="wood-thermo"] .sauna-option__icon{background-image:url("../images/products/sauna-iglu/material-thermowood.webp")}
.igloo-sauna-detail .sauna-option-row[data-option-id="door-glass"] .sauna-option__icon{background-image:url("../images/products/sauna-iglu/realization-mikulovice.webp");background-position:28% 72%}
@media(max-width:1180px){.igloo-sauna-detail .barrel-sauna-size-guide__lengths>div{grid-template-columns:repeat(5,minmax(62px,1fr))}}
@media(max-width:960px){.igloo-sauna-layouts__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.igloo-sauna-layouts__grid{grid-template-columns:1fr}.igloo-sauna-layouts__grid article{min-height:0;padding:0}.igloo-sauna-detail .barrel-sauna-size-guide__lengths>div{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){
  .tub-detail{--tub-shell:calc(100vw - 32px)}
  .tub-hero{grid-template-rows:auto 112vw auto}
  .tub-hero__copy{padding:66px 16px 50px}
  .tub-hero__copy .eyebrow{margin-bottom:14px}
  .tub-hero__copy h1{max-width:8ch;margin-bottom:21px;font-size:clamp(3.7rem,18vw,5.2rem);line-height:.88}
  .tub-hero__lead{font-size:.99rem;line-height:1.5}
  .tub-hero__technical{font-size:.79rem}
  .tub-hero__price{margin-top:32px}
  .tub-hero__price strong{font-size:1.75rem}
  .tub-hero__actions{display:grid;align-items:stretch}
  .tub-hero__actions .button{width:100%}
  .tub-hero__media-label{right:20px;bottom:20px}
  .tub-hero__facts{grid-template-columns:1fr}
  .tub-hero__facts div{min-height:auto;grid-template-columns:.44fr .56fr;align-items:center;padding:17px 16px;border-right:0;border-bottom:1px solid var(--tub-line)}
  .tub-hero__facts div:last-child{border-bottom:0}
  .tub-hero__facts strong{align-self:center;font-size:1rem;text-align:right}
  .tub-intro{gap:28px;padding:78px 0 62px}
  .tub-intro__heading h2{font-size:clamp(2.75rem,12.3vw,4rem)}
  .tub-intro__copy{font-size:.96rem}
  .tub-benefits{margin-bottom:78px}
  .tub-benefits article{min-height:210px;padding:24px}
  .tub-benefits h3{font-size:1.65rem}
  .tub-gallery{padding:78px 16px}
  .tub-gallery__header{gap:22px;margin-bottom:38px}
  .tub-gallery__header h2{font-size:clamp(2.75rem,12vw,4rem)}
  .tub-gallery__header>p{font-size:.96rem}
  .tub-gallery__grid{display:flex;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;scrollbar-width:none}
  .tub-gallery__grid::-webkit-scrollbar{display:none}
  .tub-gallery__grid figure,.tub-gallery__grid figure:first-child{flex:0 0 86vw;height:112vw;max-height:590px;scroll-snap-align:start}
  .tub-configurator{padding:78px 16px 115px;scroll-margin-top:70px}
  .tub-configurator__header{gap:20px;margin-bottom:38px}
  .tub-configurator__header h2{font-size:clamp(2.8rem,12.1vw,4.1rem)}
  .tub-configurator__header>p{font-size:.95rem}
  .tub-configurator__success{display:grid;margin:-10px 0 28px;padding:16px}
  .tub-packages{display:flex;overflow-x:auto;gap:10px;margin-right:-16px;padding-right:16px;scroll-snap-type:x mandatory;scrollbar-width:none}
  .tub-packages::-webkit-scrollbar{display:none}
  .tub-package{flex:0 0 78vw;min-height:150px;padding:20px;scroll-snap-align:start}
  .tub-phase-nav{top:70px;margin:0 -16px 16px;border-left:0;border-right:0;grid-template-columns:repeat(6,142px)}
  .tub-phase-nav button{min-height:63px;padding:11px 14px}
  .tub-phase-nav button strong{font-size:.76rem}
  .tub-config-panel{padding:24px 16px 20px}
  .tub-config-panel>header{margin-bottom:30px;padding-bottom:22px}
  .tub-config-panel>header h3{font-size:2.28rem}
  .tub-option-group{padding-bottom:40px}
  .tub-option-group+ .tub-option-group{padding-top:32px}
  .tub-option-group legend{grid-template-columns:32px minmax(0,1fr);gap:10px;margin-bottom:18px}
  .tub-option-group legend strong{font-size:1.08rem}
  .tub-option-grid,.tub-option-grid--dense{grid-template-columns:1fr;gap:8px}
  .tub-option{min-height:100px;grid-template-columns:38px minmax(0,1fr) 22px;gap:10px;padding:13px 14px}
  .tub-option__swatch,.tub-option__icon{width:38px;height:38px}
  .tub-option__icon:after{left:18px}
  .tub-option__content strong{font-size:.9rem}
  .tub-option__content small{font-size:.74rem}
  .tub-phase-actions{gap:8px}
  .tub-phase-actions .button,.tub-phase-actions .button-outline{min-height:50px;padding-inline:15px;font-size:.84rem}
  .tub-config-summary{display:none;position:fixed;z-index:190;inset:auto 0 0;max-height:78svh;overflow:auto;border:0;border-top:1px solid rgba(255,255,255,.18);box-shadow:0 -25px 80px rgba(0,0,0,.28)}
  .tub-config-summary.is-mobile-open{display:block}
  .tub-config-summary__edit{margin-bottom:92px}
  .tub-contact-panel{gap:32px;margin:20px 0 0;padding:34px 20px 105px;scroll-margin-top:140px}
  .tub-contact-panel__intro h3{font-size:2.65rem}
  .tub-contact-panel__fields{grid-template-columns:1fr}
  .tub-contact-panel__wide{grid-column:auto}
  .tub-contact-panel__submit{display:grid}
  .tub-mobile-summary{position:fixed;z-index:200;right:0;bottom:0;left:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid rgba(23,25,22,.14);background:rgba(250,248,243,.95);backdrop-filter:blur(16px);box-shadow:0 -12px 40px rgba(0,0,0,.09)}
  .tub-mobile-summary>button:first-child{display:grid;justify-items:start;padding:0;border:0;background:transparent;color:inherit;text-align:left}
  .tub-mobile-summary>button:first-child span{font-size:.62rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--tub-muted)}
  .tub-mobile-summary>button:first-child del{margin-top:2px;color:var(--tub-muted);font-size:.68rem;line-height:1.15;text-decoration-thickness:1px}
  .tub-mobile-summary>button:first-child del[hidden]{display:none!important}
  .tub-mobile-summary>button:first-child strong{font-size:1.02rem;line-height:1.2}
  .tub-mobile-summary .button{min-height:47px;padding-inline:18px}
  .tub-specs{padding:78px 16px}
  .tub-specs>header{margin-bottom:38px}
  .tub-specs>header h2{font-size:clamp(2.75rem,12vw,4rem)}
  .tub-specs__grid{grid-template-columns:1fr}
  .tub-specs dl+dl{border-left:0}
  .tub-specs dl div{grid-template-columns:.42fr .58fr;min-height:84px;padding:18px 16px}
  .tub-specs dd{font-size:.92rem}
  .tub-final-cta{gap:26px;padding:82px 16px}
  .tub-final-cta h2{font-size:clamp(2.8rem,12.2vw,4.1rem)}
  .tub-final-cta>div:last-child p{font-size:.96rem}
}
@media(max-width:390px){
  .tub-hero__copy h1{font-size:3.55rem}
  .tub-intro__heading h2,.tub-gallery__header h2,.tub-configurator__header h2,.tub-specs>header h2,.tub-final-cta h2{font-size:2.7rem}
  .tub-package{flex-basis:84vw}
  .tub-config-panel>header h3{font-size:2.05rem}
}

/* Serverově počítaná cena koupacích sudů */
.tub-packages--single{grid-template-columns:repeat(2,minmax(0,1fr));max-width:980px}
.tub-package--popular{position:relative;background:#fff}
.tub-package--popular:after{content:'Doporučený výchozí bod';position:absolute;top:18px;right:18px;font-size:.58rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--tub-green)}
.tub-package--popular.is-active:after{color:rgba(255,255,255,.72)}
.tub-config-summary__price,.tub-mobile-summary{transition:opacity .18s ease}
.tub-config-summary__price.is-loading,.tub-mobile-summary.is-loading{opacity:.55;pointer-events:none}
@media(max-width:760px){.tub-packages--single{max-width:none}.tub-package--popular:after{position:static;order:-1;margin-bottom:12px}.tub-package--popular span{margin-top:0}}

/* Acryl Deluxe configurator 0.35.0 */
.tub-phase-nav{grid-template-columns:repeat(7,minmax(0,1fr))}
.tub-phase-nav button{position:relative}
.tub-phase-nav button.is-complete:not(.is-active):after{content:'✓';position:absolute;right:10px;top:10px;width:18px;height:18px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--tub-green);font-size:.6rem}
.tub-package b{margin-top:auto;padding-top:18px;font-size:1rem;font-weight:720;color:var(--tub-green)}
.tub-package.is-active b{color:#fff}
.tub-option-group[hidden],.tub-option-row[hidden]{display:none!important}
.tub-option-group.has-error{animation:tubGroupError .6s ease}
@keyframes tubGroupError{0%,100%{box-shadow:none}35%{box-shadow:0 0 0 3px rgba(150,54,42,.18)}}
.tub-option-row{display:grid;min-width:0}
.tub-option-row .tub-option{height:100%}
.tub-option-quantity{display:grid;grid-template-columns:1fr 38px 54px 38px;align-items:center;gap:0;margin-top:-1px;border:1px solid var(--tub-line);background:#f5f2eb}
.tub-option-quantity[hidden]{display:none!important}
.tub-option-quantity>span{padding:0 16px;color:var(--tub-muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.tub-option-quantity button{height:42px;border:0;border-left:1px solid var(--tub-line);background:transparent;font-size:1.1rem}
.tub-option-quantity input{width:54px;height:42px;padding:0;border:0;border-left:1px solid var(--tub-line);background:#fff;text-align:center;font-weight:700;-moz-appearance:textfield}
.tub-option-quantity input::-webkit-inner-spin-button,.tub-option-quantity input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.tub-config-error{margin:0 0 18px;padding:14px 18px;border-left:4px solid #9b4337;background:#fff2ef;color:#6d2d25;font-weight:650}
.tub-config-error[hidden]{display:none}
.tub-rule-advisories{display:grid;gap:10px;margin:0 0 22px}
.tub-rule-advisories[hidden]{display:none!important}
.tub-rule-advisory{display:grid;grid-template-columns:minmax(150px,.3fr) minmax(180px,.42fr) minmax(0,1fr);gap:20px;align-items:start;padding:18px 22px;border:1px solid rgba(44,62,54,.22);background:#f7f5ef;color:var(--tub-ink)}
.tub-rule-advisory--warning{border-color:rgba(155,67,55,.28);background:#fff5f1}
.tub-rule-advisory>span{padding-top:3px;color:var(--tub-green);font-size:.61rem;font-weight:760;letter-spacing:.14em;text-transform:uppercase}
.tub-rule-advisory--warning>span{color:#8d3d31}
.tub-rule-advisory>strong{font-size:.94rem;line-height:1.35}
.tub-rule-advisory>p{margin:0;color:var(--tub-muted);font-size:.84rem;line-height:1.55}
@media(max-width:760px){.tub-rule-advisory{grid-template-columns:1fr;gap:7px;padding:16px 17px}.tub-rule-advisory>span{padding-top:0}}

.tub-layout-builder>header{display:grid;grid-template-columns:42px minmax(0,1fr);gap:16px;margin-bottom:30px;padding-bottom:24px;border-bottom:1px solid var(--tub-line)}
.tub-layout-builder>header>span{font-size:.66rem;font-weight:750;letter-spacing:.12em;color:var(--tub-muted)}
.tub-layout-builder>header div{display:grid;gap:6px}.tub-layout-builder>header strong{font-size:1.2rem}.tub-layout-builder>header small{max-width:760px;color:var(--tub-muted);line-height:1.5}
.tub-layout-builder__grid{display:grid;grid-template-columns:minmax(330px,.8fr) minmax(320px,1fr);gap:clamp(28px,4vw,64px);align-items:center}
.tub-layout-clock{position:relative;width:min(100%,470px);aspect-ratio:1;margin:auto;border:1px solid var(--tub-line);border-radius:50%;background:radial-gradient(circle at center,#f9f7f1 0 42%,transparent 42.3%),conic-gradient(from -15deg,rgba(44,62,54,.035),rgba(44,62,54,0) 8%,rgba(44,62,54,.035) 16%)}
.tub-layout-clock:before{content:'';position:absolute;inset:15%;border:1px dashed rgba(44,62,54,.2);border-radius:50%}
.tub-layout-clock__tub{position:absolute;inset:27%;z-index:1;display:grid;place-items:center;align-content:center;border-radius:50%;color:#fff;background:var(--tub-green);text-align:center;box-shadow:0 18px 50px rgba(44,62,54,.2)}
.tub-layout-clock__tub span{font-size:.56rem;letter-spacing:.18em}.tub-layout-clock__tub strong{font-size:1.35rem;line-height:1.05}
.tub-layout-clock__orientation{position:absolute;z-index:3;left:50%;padding:3px 8px;border-radius:999px;background:var(--tub-paper);color:var(--tub-muted);font-size:.58rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;transform:translateX(-50%)}
.tub-layout-clock__orientation--rear{top:6%}.tub-layout-clock__orientation--entry{bottom:6%}
.tub-layout-clock>button{--angle:calc((var(--hour) - 3) * 30deg);position:absolute;z-index:2;left:50%;top:50%;width:42px;height:42px;display:grid;place-items:center;transform:translate(-50%,-50%) rotate(var(--angle)) translateX(205px) rotate(calc(-1 * var(--angle)));border:1px solid var(--tub-line);border-radius:50%;background:var(--tub-paper);color:var(--tub-ink);font-size:.72rem;font-weight:700;transition:.2s ease}
.tub-layout-clock>button:hover,.tub-layout-clock>button.is-active-hour{border-color:var(--tub-green);box-shadow:0 0 0 3px rgba(44,62,54,.1)}
.tub-layout-clock>button i{width:7px;height:7px;margin-left:1px;border-radius:50%;background:var(--marker-color)}
.tub-layout-clock>button span+ i{margin-left:-3px}
.tub-layout-items{display:grid;gap:9px}
.tub-layout-item{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:14px;align-items:center;min-height:86px;padding:16px 18px;border:1px solid var(--tub-line);background:#fff;color:inherit;text-align:left;transition:.2s ease}
.tub-layout-item:hover,.tub-layout-item.is-active{border-color:var(--tub-green);box-shadow:inset 0 0 0 1px var(--tub-green)}
.tub-layout-item>i{width:10px;height:10px;border-radius:50%;background:var(--item-color)}
.tub-layout-item>span{display:grid;gap:4px}.tub-layout-item strong{font-size:.94rem}.tub-layout-item small{color:var(--tub-muted);font-size:.76rem}.tub-layout-item>b{font-size:.9rem}
.tub-layout-builder__note{margin:24px 0 0;padding:14px 17px;color:var(--tub-muted);background:#f2eee6;font-size:.82rem}

@media(max-width:1180px){.tub-phase-nav{grid-template-columns:repeat(7,minmax(150px,1fr))}.tub-layout-builder__grid{grid-template-columns:1fr}.tub-layout-clock{max-width:430px}}
@media(max-width:720px){
  .tub-phase-nav{grid-template-columns:repeat(7,142px)}
  .tub-package b{padding-top:14px}
  .tub-option-quantity{grid-template-columns:1fr 40px 54px 40px}
  .tub-layout-builder>header{grid-template-columns:32px minmax(0,1fr);gap:10px}
  .tub-layout-builder__grid{gap:28px}
  .tub-layout-clock{width:calc(100vw - 66px);max-width:390px}
  .tub-layout-clock>button{width:36px;height:36px;transform:translate(-50%,-50%) rotate(var(--angle)) translateX(calc((100vw - 66px)/2 - 18px)) rotate(calc(-1 * var(--angle)))}
  .tub-layout-clock__tub strong{font-size:1.05rem}
  .tub-layout-item{min-height:78px;padding:14px}
}

/* Configurator refinements 0.35.1 */
.tub-configurator{padding-top:clamp(82px,9vw,145px)}
.tub-configurator__header{margin-bottom:clamp(42px,4.8vw,70px)}
.tub-package__action{display:block!important;margin-top:13px!important;padding-top:12px;border-top:1px solid currentColor;font-size:.72rem!important;font-weight:750!important;letter-spacing:0!important;text-transform:none!important;opacity:.78!important}
.tub-package:hover .tub-package__action{opacity:1!important}
.tub-config-toast{position:sticky;z-index:16;top:166px;margin:0 0 18px;padding:14px 18px;border-left:4px solid var(--tub-green);background:#fff;box-shadow:0 12px 35px rgba(19,29,24,.12);font-size:.86rem;font-weight:650;transform:translateY(-8px);opacity:0;transition:.2s ease}
.tub-config-toast.is-visible{transform:none;opacity:1}
.tub-phase-nav button.is-complete:not(.is-active):after{animation:tubCheckIn .2s ease both}@keyframes tubCheckIn{from{transform:scale(.55);opacity:0}to{transform:scale(1);opacity:1}}
.tub-config-summary__list{padding:0}
.tub-config-summary__section{border-bottom:1px solid rgba(255,255,255,.12)}
.tub-config-summary__section>summary{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:14px 27px;cursor:pointer;list-style:none}
.tub-config-summary__section>summary::-webkit-details-marker{display:none}
.tub-config-summary__section>summary span{font-size:.62rem;color:rgba(255,255,255,.42)}
.tub-config-summary__section>summary strong{font-size:.78rem;font-weight:650}
.tub-config-summary__section>summary i{min-width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.1);font-size:.62rem;font-style:normal;color:rgba(255,255,255,.72)}
.tub-config-summary__section[open]>summary{background:rgba(255,255,255,.055)}
.tub-config-summary__section dl{margin:0;padding:0 27px 10px}
.tub-config-summary__section dl div{display:grid;grid-template-columns:minmax(110px,.46fr) minmax(0,.54fr);gap:14px;padding:10px 0;border-top:1px solid rgba(255,255,255,.08)}
.tub-config-summary__section dt{font-size:.72rem;line-height:1.35;color:rgba(255,255,255,.58)}
.tub-config-summary__section dd{margin:0;font-size:.78rem;line-height:1.42;text-align:right;color:rgba(255,255,255,.9)}
.tub-option.is-selected [data-tub-option-price-label]{font-size:.68rem}
.tub-config-summary>p{font-size:.73rem;line-height:1.55}
@media(max-width:760px){.tub-configurator{padding-top:66px}.tub-config-toast{top:132px;margin-left:0;margin-right:0}.tub-config-summary__section>summary{padding:14px 20px}.tub-config-summary__section dl{padding-left:20px;padding-right:20px}.tub-config-summary__section dl div{grid-template-columns:1fr;gap:4px}.tub-config-summary__section dd{text-align:left}}


/* Dřevěné sauny 0.35.3 — validace rozmístění technických prvků */
.tub-layout-clock button.is-unavailable{cursor:not-allowed;opacity:.3}
.tub-layout-clock button.is-unavailable:hover{transform:none}
.tub-layout-item.is-locked{cursor:default;background:rgba(44,62,54,.045)}
.tub-layout-item.is-locked small{font-weight:650;color:var(--tub-green)}

/* Dřevěné sauny 0.35.4 — akční cena a rychlé rozmístění */
.tub-hero__price>em{width:max-content;margin-bottom:7px;padding:5px 8px;color:#fff;background:var(--tub-green);font-size:.62rem;font-style:normal;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.tub-hero__price>del{width:max-content;margin:5px 0 0;color:var(--tub-muted);font-size:1rem;text-decoration-thickness:1px}
.tub-hero__price.is-discounted strong{color:var(--tub-green)}
.tub-package__discount{display:block;margin-top:13px;color:inherit;font-size:.72rem;font-style:normal;line-height:1.4;opacity:.72}
.tub-package__discount del{margin-left:3px}
.tub-package.is-active .tub-package__discount{color:#fff;opacity:.8}
.tub-config-summary__discount-badge{width:max-content;margin-bottom:7px;padding:5px 7px;color:var(--tub-ink);background:#f0d98b;font-size:.58rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.tub-config-summary__price>del{width:max-content;margin-top:6px;color:rgba(255,255,255,.5);font-size:.86rem;text-decoration-thickness:1px}
.tub-config-summary__price>i{margin-top:8px;color:#f4e6b3;font-size:.72rem;font-style:normal;line-height:1.45}
.tub-config-summary__price.is-discounted>strong{color:#fff}
.tub-layout-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 30px}
.tub-layout-shortcut{min-height:142px;display:flex;flex-direction:column;align-items:flex-start;padding:20px;border:1px solid var(--tub-line);background:#fff;color:inherit;text-align:left;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.tub-layout-shortcut:hover{border-color:var(--tub-green);transform:translateY(-1px)}
.tub-layout-shortcut.is-active{border-color:var(--tub-green);box-shadow:inset 0 0 0 1px var(--tub-green)}
.tub-layout-shortcut>span{font-size:.61rem;font-weight:780;letter-spacing:.12em;text-transform:uppercase;color:var(--tub-muted)}
.tub-layout-shortcut>strong{margin-top:18px;font-size:1rem}
.tub-layout-shortcut>small{margin-top:7px;color:var(--tub-muted);font-size:.78rem;line-height:1.45}
.tub-layout-shortcut--recommended{color:#fff;background:var(--tub-green);border-color:var(--tub-green)}
.tub-layout-shortcut--recommended>span,.tub-layout-shortcut--recommended>small{color:rgba(255,255,255,.68)}
.tub-layout-shortcut--recommended:hover{box-shadow:0 10px 28px rgba(44,62,54,.16)}
.tub-layout-expert-note{display:grid;gap:8px;margin-bottom:28px;padding:22px;border:1px solid var(--tub-green);background:rgba(44,62,54,.055)}
.tub-layout-expert-note strong{font-size:1.05rem}
.tub-layout-expert-note span{max-width:680px;color:var(--tub-muted);font-size:.86rem;line-height:1.55}
.tub-layout-expert-note .text-link{width:max-content;margin-top:4px}
.tub-layout-builder__grid[hidden],.tub-layout-expert-note[hidden],.tub-config-summary__discount-badge[hidden],.tub-config-summary__price>del[hidden],.tub-config-summary__price>i[hidden]{display:none!important}
@media(max-width:720px){
  .tub-layout-shortcuts{grid-template-columns:1fr}
  .tub-layout-shortcut{min-height:126px;padding:17px}
  .tub-layout-shortcut>strong{margin-top:14px}
  .tub-config-summary__price>i{font-size:.76rem}
}

/* Dřevěné sauny 0.35.8 – rozšířené údaje zákazníka v interní nabídce */
.tub-delivery-badge{width:max-content;margin-top:10px;padding:6px 9px;background:var(--tub-green);color:#fff;font-size:.62rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase}
.tub-hero__price>i{margin-top:4px;color:var(--tub-muted);font-size:.78rem;font-style:normal}
.tub-package__delivery{display:block;margin-top:7px;font-size:.7rem;font-style:normal;opacity:.68}
.tub-config-summary__delivery{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;padding:18px 27px;border-bottom:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.035)}
.tub-config-summary__delivery>b{grid-column:1/-1;width:max-content;margin-bottom:4px;padding:4px 7px;background:#e7c144;color:#1d211e;font-size:.58rem;letter-spacing:.09em;text-transform:uppercase}
.tub-config-summary__delivery>span{color:rgba(255,255,255,.72);font-size:.76rem}
.tub-config-summary__delivery>strong{color:#fff;font-size:.82rem;text-align:right}
.tub-config-summary__delivery>small{grid-column:1/-1;color:rgba(255,255,255,.5);font-size:.68rem;line-height:1.45}
.tub-config-summary__delivery.is-included>strong{color:#f4e6b3}
.tub-internal-quote{grid-column:1/-1;margin-top:18px;border:1px solid rgba(255,255,255,.2);background:rgba(0,0,0,.1)}
.tub-internal-quote__toggle{width:100%;display:grid;grid-template-columns:1fr auto;gap:4px 20px;padding:20px 22px;border:0;color:#fff;background:transparent;text-align:left;cursor:pointer}
.tub-internal-quote__toggle span{grid-column:1/-1;color:rgba(255,255,255,.55);font-size:.62rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.tub-internal-quote__toggle strong{font-size:1rem}
.tub-internal-quote__toggle i{font-size:.76rem;font-style:normal;color:rgba(255,255,255,.7)}
.tub-internal-quote__unlock,.tub-internal-quote__editor{padding:22px;border-top:1px solid rgba(255,255,255,.18)}
.tub-internal-quote__unlock[hidden],.tub-internal-quote__editor[hidden]{display:none!important}
.tub-internal-quote__unlock{display:grid;grid-template-columns:minmax(200px,360px) auto;align-items:end;gap:12px}
.tub-internal-quote__unlock label,.tub-internal-quote__grid label{display:grid;gap:7px;color:#fff;font-size:.72rem;font-weight:650}
.tub-internal-quote__unlock input,.tub-internal-quote__grid input,.tub-internal-quote__grid textarea,.tub-internal-quote__grid select{width:100%;min-height:48px;padding:11px 13px;border:1px solid rgba(255,255,255,.28);border-radius:0;background:rgba(255,255,255,.07);color:#fff;outline:none}
.tub-internal-quote__grid select option{color:#1d211e;background:#fff}
.tub-internal-quote__grid textarea{min-height:92px;resize:vertical}
.tub-internal-quote__grid input::placeholder,.tub-internal-quote__grid textarea::placeholder{color:rgba(255,255,255,.38)}
.tub-internal-quote__unlock p{grid-column:1/-1;margin:0;color:#f4e6b3;font-size:.76rem}
.tub-internal-quote__editor>header{max-width:780px;margin-bottom:20px}
.tub-internal-quote__editor>header span{color:rgba(255,255,255,.52);font-size:.62rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.tub-internal-quote__editor>header h4{margin:5px 0 7px;font-size:1.35rem}
.tub-internal-quote__editor>header p{margin:0;color:rgba(255,255,255,.64)}
.tub-internal-quote__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tub-internal-quote__grid label{position:relative}
.tub-internal-quote__grid label>span{position:absolute;right:12px;bottom:15px;color:rgba(255,255,255,.55);font-weight:400}
.tub-internal-quote__wide{grid-column:1/-1}
.tub-internal-quote__actions{display:flex;align-items:center;gap:16px;margin-top:18px}
.tub-internal-quote__actions small{color:rgba(255,255,255,.58)}
.tub-internal-quote .button-outline{color:#fff;border-color:rgba(255,255,255,.65)}
.tub-mobile-summary>button:first-child small{margin-top:1px;color:var(--tub-muted);font-size:.58rem;line-height:1.15}
@media(max-width:700px){
  .tub-config-summary__delivery{padding:16px 20px}
  .tub-internal-quote__toggle{grid-template-columns:1fr;padding:18px}
  .tub-internal-quote__unlock{grid-template-columns:1fr;padding:18px}
  .tub-internal-quote__editor{padding:18px}
  .tub-internal-quote__grid{grid-template-columns:1fr}
  .tub-internal-quote__wide{grid-column:auto}
  .tub-internal-quote__actions{display:grid}
}


/* Dřevěné sauny 0.35.9 – grafická kapacita Acryl Deluxe */
.tub-hero__facts-card{display:grid;gap:8px;min-height:138px;padding:32px max(3.5vw,calc((100vw - 1480px)/6));border-right:1px solid var(--tub-line)}
.tub-hero__facts-card:last-child{border-right:0}
.tub-hero__facts-card small{margin:0;color:var(--tub-muted);font-size:.9rem;line-height:1.45}
.tub-hero__facts-card--capacity{gap:16px}
.tub-capacity-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tub-capacity-mini{display:grid;gap:8px;padding:14px 14px 12px;border:1px solid rgba(23,25,22,.12);background:rgba(255,255,255,.58);transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}
.tub-capacity-mini.is-active{border-color:#2c3e36;box-shadow:0 0 0 1px rgba(44,62,54,.18) inset;transform:translateY(-1px)}
.tub-capacity-mini strong{align-self:auto;font-size:1rem;letter-spacing:-.02em}
.tub-capacity-mini small{font-size:.84rem}
.tub-capacity-mini__plan,.tub-capacity-card__plan,.tub-size-guide__plan{--plan-size:90px;--seat-radius:35px;position:relative;width:var(--plan-size);height:var(--plan-size);margin:0;border:1px dashed rgba(23,25,22,.18);border-radius:50%;background:radial-gradient(circle at center, rgba(44,62,54,.12) 0 32%, transparent 33% 100%)}
.tub-capacity-card__plan{--plan-size:154px;--seat-radius:58px;margin:8px auto 4px}
.tub-size-guide__plan{--plan-size:92px;--seat-radius:36px;flex:0 0 auto}
.tub-capacity-mini__plan i,.tub-capacity-card__plan i,.tub-size-guide__plan i{position:absolute;top:50%;left:50%;width:13px;height:13px;border-radius:50%;background:#2c3e36;transform:translate(-50%,-50%) rotate(calc(var(--index) * 1deg)) translateY(calc(var(--radius) * -1))}
.tub-capacity-card__plan i{width:14px;height:14px}
.tub-capacity-mini__plan--4 i:nth-child(1),.tub-capacity-card__plan--4 i:nth-child(1),.tub-size-guide__plan--4 i:nth-child(1){--index:0;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--4 i:nth-child(2),.tub-capacity-card__plan--4 i:nth-child(2),.tub-size-guide__plan--4 i:nth-child(2){--index:90;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--4 i:nth-child(3),.tub-capacity-card__plan--4 i:nth-child(3),.tub-size-guide__plan--4 i:nth-child(3){--index:180;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--4 i:nth-child(4),.tub-capacity-card__plan--4 i:nth-child(4),.tub-size-guide__plan--4 i:nth-child(4){--index:270;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--6 i:nth-child(1),.tub-capacity-card__plan--6 i:nth-child(1),.tub-size-guide__plan--6 i:nth-child(1){--index:0;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--6 i:nth-child(2),.tub-capacity-card__plan--6 i:nth-child(2),.tub-size-guide__plan--6 i:nth-child(2){--index:60;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--6 i:nth-child(3),.tub-capacity-card__plan--6 i:nth-child(3),.tub-size-guide__plan--6 i:nth-child(3){--index:120;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--6 i:nth-child(4),.tub-capacity-card__plan--6 i:nth-child(4),.tub-size-guide__plan--6 i:nth-child(4){--index:180;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--6 i:nth-child(5),.tub-capacity-card__plan--6 i:nth-child(5),.tub-size-guide__plan--6 i:nth-child(5){--index:240;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--6 i:nth-child(6),.tub-capacity-card__plan--6 i:nth-child(6),.tub-size-guide__plan--6 i:nth-child(6){--index:300;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 i:nth-child(1),.tub-capacity-card__plan--8 i:nth-child(1),.tub-size-guide__plan--8 i:nth-child(1){--index:0;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 i:nth-child(2),.tub-capacity-card__plan--8 i:nth-child(2),.tub-size-guide__plan--8 i:nth-child(2){--index:45;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 i:nth-child(3),.tub-capacity-card__plan--8 i:nth-child(3),.tub-size-guide__plan--8 i:nth-child(3){--index:90;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 i:nth-child(4),.tub-capacity-card__plan--8 i:nth-child(4),.tub-size-guide__plan--8 i:nth-child(4){--index:135;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 i:nth-child(5),.tub-capacity-card__plan--8 i:nth-child(5),.tub-size-guide__plan--8 i:nth-child(5){--index:180;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 i:nth-child(6),.tub-capacity-card__plan--8 i:nth-child(6),.tub-size-guide__plan--8 i:nth-child(6){--index:225;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 i:nth-child(7),.tub-capacity-card__plan--8 i:nth-child(7),.tub-size-guide__plan--8 i:nth-child(7){--index:270;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 i:nth-child(8),.tub-capacity-card__plan--8 i:nth-child(8),.tub-size-guide__plan--8 i:nth-child(8){--index:315;--radius:var(--seat-radius)}
.tub-capacity{padding:0 max(3.5vw,calc((100vw - 1480px)/2)) clamp(68px,6.8vw,108px);background:var(--tub-paper)}
.tub-capacity__header{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(300px,.6fr);gap:clamp(34px,6vw,96px);align-items:end;margin-bottom:36px}
.tub-capacity__header h2{max-width:860px;margin:0;font-size:clamp(2.55rem,4.3vw,5rem);line-height:.96}
.tub-capacity__header p:last-child{margin-bottom:0;color:var(--tub-muted);font-size:1rem}
.tub-capacity__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.tub-capacity-card{display:grid;gap:20px;padding:28px;border:1px solid var(--tub-line);background:#fff;transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}
.tub-capacity-card.is-active{border-color:#2c3e36;box-shadow:0 18px 44px rgba(44,62,54,.08);transform:translateY(-2px)}
.tub-capacity-card__head{display:grid;gap:8px}
.tub-capacity-card__head span{font-size:.68rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase;color:var(--tub-muted)}
.tub-capacity-card__head strong{font-size:2rem;line-height:1;letter-spacing:-.04em}
.tub-capacity-card__head b{font-size:1.05rem;font-weight:650}
.tub-capacity-card dl{display:grid;gap:0;margin:0}
.tub-capacity-card dl div{display:grid;grid-template-columns:.42fr .58fr;gap:14px;padding:13px 0;border-top:1px solid rgba(23,25,22,.08)}
.tub-capacity-card dt{font-size:.72rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--tub-muted)}
.tub-capacity-card dd{margin:0;font-size:.98rem;font-weight:600}
.tub-size-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}
.tub-size-guide__card{display:flex;align-items:center;gap:16px;padding:14px 16px;border:1px solid rgba(23,25,22,.12);background:rgba(255,255,255,.58);transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}
.tub-size-guide__card.is-active{border-color:#2c3e36;box-shadow:0 0 0 1px rgba(44,62,54,.14) inset;transform:translateY(-1px)}
.tub-size-guide__body{display:grid;gap:4px}
.tub-size-guide__body strong{font-size:1rem;letter-spacing:-.02em}
.tub-size-guide__body span{font-size:.95rem;font-weight:600}
.tub-size-guide__body small{color:var(--tub-muted);font-size:.82rem;line-height:1.45}
@media (max-width: 1120px){
  .tub-capacity__header,.tub-capacity__grid{grid-template-columns:1fr}
}
@media (max-width: 900px){
  .tub-capacity-mini-grid,.tub-size-guide{grid-template-columns:1fr}
}
@media (max-width: 720px){
  .tub-hero__facts-card{min-height:auto;padding:17px 16px;border-right:0;border-bottom:1px solid var(--tub-line)}
  .tub-hero__facts-card:last-child{border-bottom:0}
  .tub-capacity{padding:0 16px 62px}
  .tub-capacity__header{gap:20px;margin-bottom:24px}
  .tub-capacity__header h2{font-size:clamp(2.45rem,11.5vw,3.7rem)}
  .tub-capacity-card{padding:20px}
  .tub-capacity-card__head strong{font-size:1.6rem}
  .tub-capacity-card dl div{grid-template-columns:1fr;gap:5px}
  .tub-size-guide__card{padding:12px;gap:12px}
  .tub-size-guide__plan{--plan-size:78px}
  .tub-capacity-card__plan{--plan-size:132px}
}


/* Dřevěné sauny 0.36.0 - FAQ Acryl Deluxe */
.tub-faq{padding:clamp(100px,10vw,165px) max(3.5vw,calc((100vw - 1480px)/2));background:#f3f0e9}
.tub-faq__header{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.58fr);gap:clamp(44px,8vw,130px);align-items:end;margin-bottom:clamp(45px,6vw,82px)}
.tub-faq__header h2{max-width:930px;margin:0;font-size:clamp(3rem,5.4vw,6.4rem);line-height:.95;letter-spacing:-.055em}
.tub-faq__header>div:last-child{display:grid;gap:22px;max-width:560px;color:var(--tub-muted)}
.tub-faq__header p{margin:0}
.tub-faq__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--tub-line);border-left:1px solid var(--tub-line)}
.tub-faq__item{border-right:1px solid var(--tub-line);border-bottom:1px solid var(--tub-line);background:rgba(255,255,255,.28)}
.tub-faq__item summary{display:grid;grid-template-columns:42px minmax(0,1fr) 30px;gap:16px;align-items:center;min-height:116px;padding:25px 28px;cursor:pointer;list-style:none}
.tub-faq__item summary::-webkit-details-marker{display:none}
.tub-faq__item summary span{font-size:.68rem;font-weight:750;letter-spacing:.14em;color:var(--tub-muted)}
.tub-faq__item summary strong{font-size:clamp(1.05rem,1.35vw,1.35rem);line-height:1.2;letter-spacing:-.025em}
.tub-faq__item summary i{position:relative;width:28px;height:28px;border:1px solid rgba(23,25,22,.18);border-radius:50%}
.tub-faq__item summary i::before,.tub-faq__item summary i::after{content:"";position:absolute;top:50%;left:50%;width:10px;height:1px;background:#171916;transform:translate(-50%,-50%);transition:transform .22s ease}
.tub-faq__item summary i::after{transform:translate(-50%,-50%) rotate(90deg)}
.tub-faq__item[open] summary i::after{transform:translate(-50%,-50%) rotate(0)}
.tub-faq__item>div{padding:0 70px 30px 86px;color:var(--tub-muted);font-size:.98rem;line-height:1.65}
.tub-faq__item>div p{margin:0}
.tub-faq__item[open]{background:#fff}
@media (max-width: 980px){
  .tub-faq__header,.tub-faq__grid{grid-template-columns:1fr}
  .tub-faq__header{gap:30px}
}
@media (max-width: 720px){
  .tub-faq{padding:76px 16px}
  .tub-faq__header{margin-bottom:34px}
  .tub-faq__header h2{font-size:clamp(2.65rem,11.8vw,4rem)}
  .tub-faq__item summary{grid-template-columns:30px minmax(0,1fr) 28px;gap:10px;min-height:94px;padding:20px 16px}
  .tub-faq__item summary strong{font-size:1rem}
  .tub-faq__item>div{padding:0 16px 24px 56px;font-size:.92rem}
}


/* Dřevěné sauny 0.36.3 — Acryl Deluxe hero aligned to Sauna Cube layout */
.tub-product-gallery{background:#171916!important;color:#fff}
.tub-product-gallery .product-gallery-strip__header>div:first-child{max-width:980px}
.tub-product-gallery__intro{max-width:720px;margin:24px 0 0;color:rgba(255,255,255,.64);font-size:1rem;line-height:1.58}
.tub-product-gallery .product-gallery-strip__track:focus-visible{outline:1px solid rgba(255,255,255,.65);outline-offset:8px}
.tub-product-gallery .product-gallery-strip__item .product-lightbox-trigger:focus-visible{outline:2px solid #fff;outline-offset:4px}
@media(max-width:800px){
  .tub-product-gallery__intro{margin-top:18px;font-size:.94rem}
  .tub-product-gallery .product-gallery-strip__controls{margin-top:10px}
}

/* Dřevěné sauny 0.36.4 — full-width Acryl hero and interactive diameter guide */
.tub-detail-hero{
  width:100%;
  max-width:none;
  margin:0;
  padding-inline:max(0px,calc((100vw - 1600px)/2));
  background:#f0ede6;
}
.tub-hero-facts{width:100%;background:var(--tub-paper)}
.tub-hero__facts-card--diameter b{font-weight:650;color:var(--tub-ink)}

.tub-capacity-mini{
  appearance:none;
  width:100%;
  font:inherit;
  color:inherit;
  text-align:left;
  cursor:pointer;
  border-radius:0;
}
.tub-capacity-mini,
.tub-capacity-mini .tub-capacity-mini__plan,
.tub-capacity-mini .tub-capacity-mini__plan i,
.tub-capacity-mini strong,
.tub-capacity-mini small{
  transition:color .22s ease,background-color .22s ease,border-color .22s ease,box-shadow .22s ease,transform .22s ease;
}
.tub-capacity-mini:hover,
.tub-capacity-mini:focus-visible,
.tub-capacity-mini.is-active{
  color:#fff;
  border-color:var(--tub-green);
  background:var(--tub-green);
  box-shadow:none;
  transform:translateY(-2px);
}
.tub-capacity-mini:focus-visible{outline:2px solid var(--tub-green);outline-offset:3px}
.tub-capacity-mini:hover small,
.tub-capacity-mini:focus-visible small,
.tub-capacity-mini.is-active small{color:rgba(255,255,255,.72)}
.tub-capacity-mini:hover .tub-capacity-mini__plan,
.tub-capacity-mini:focus-visible .tub-capacity-mini__plan,
.tub-capacity-mini.is-active .tub-capacity-mini__plan{
  border-color:rgba(255,255,255,.38);
  background:radial-gradient(circle at center,rgba(255,255,255,.22) 0 32%,transparent 33% 100%);
}
.tub-capacity-mini:hover .tub-capacity-mini__plan i,
.tub-capacity-mini:focus-visible .tub-capacity-mini__plan i,
.tub-capacity-mini.is-active .tub-capacity-mini__plan i{
  background:#fff;
  box-shadow:0 0 0 3px rgba(255,255,255,.14);
}

/* Editorial comparison: visually informative, not an interactive control. */
.tub-capacity__grid{gap:16px}
.tub-capacity-card{
  position:relative;
  grid-template-columns:minmax(0,1fr) 132px;
  grid-template-rows:auto auto;
  gap:18px 26px;
  overflow:hidden;
  padding:25px 27px 23px;
  cursor:default;
  border-color:rgba(23,25,22,.13);
  box-shadow:none;
  transform:none;
  transition:none;
}
.tub-capacity-card--six{background:linear-gradient(135deg,#fff 0%,#fff 72%,rgba(44,62,54,.045) 100%)}
.tub-capacity-card--eight{background:linear-gradient(135deg,#fff 0%,#fff 70%,rgba(216,205,189,.2) 100%)}
.tub-capacity-card::after{
  content:"";
  position:absolute;
  right:-76px;
  bottom:-92px;
  width:210px;
  height:210px;
  border:1px solid rgba(44,62,54,.07);
  border-radius:50%;
  pointer-events:none;
}
.tub-capacity-card__head{align-self:center;z-index:1}
.tub-capacity-card__head strong{font-size:1.78rem}
.tub-capacity-card__head b{font-size:.96rem}
.tub-capacity-card__plan{
  --plan-size:124px;
  --seat-radius:47px;
  position:relative;
  z-index:1;
  align-self:center;
  justify-self:end;
  margin:0;
  border:0;
  background:
    radial-gradient(circle at center,#f3f1eb 0 31%,transparent 32%),
    radial-gradient(circle at center,transparent 0 56%,rgba(44,62,54,.13) 57% 58%,transparent 59%),
    radial-gradient(circle at center,rgba(44,62,54,.045) 0 72%,transparent 73%);
  box-shadow:inset 0 0 0 1px rgba(44,62,54,.08);
}
.tub-capacity-card__plan::before{
  content:"";
  position:absolute;
  inset:12px;
  border:1px dashed rgba(44,62,54,.15);
  border-radius:50%;
}
.tub-capacity-card__plan i{
  z-index:3;
  width:11px;
  height:11px;
  background:var(--tub-green);
  box-shadow:0 0 0 4px rgba(44,62,54,.08);
}
.tub-capacity-card__center{
  position:absolute;
  z-index:2;
  top:50%;
  left:50%;
  display:grid;
  justify-items:center;
  line-height:1;
  transform:translate(-50%,-50%);
}
.tub-capacity-card__center b{font-size:1.28rem;font-weight:650;color:var(--tub-green)}
.tub-capacity-card__center small{margin-top:3px;font-size:.58rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--tub-muted)}
.tub-capacity-card dl{z-index:1;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(23,25,22,.08)}
.tub-capacity-card dl div{
  display:grid;
  grid-template-columns:1fr;
  gap:5px;
  padding:13px 18px 0 0;
  border-top:0;
  border-right:1px solid rgba(23,25,22,.08);
}
.tub-capacity-card dl div:last-child{padding-right:0;padding-left:18px;border-right:0}
.tub-capacity-card dl div:nth-child(2){padding-left:18px}
.tub-capacity-card dt{font-size:.64rem}
.tub-capacity-card dd{font-size:.88rem;line-height:1.42}

@media(max-width:1050px){
  .tub-detail-hero{padding-inline:0}
}
@media(max-width:780px){
  .tub-capacity-card{grid-template-columns:minmax(0,1fr) 104px;padding:21px 19px}
  .tub-capacity-card__plan{--plan-size:100px;--seat-radius:38px}
  .tub-capacity-card dl{grid-template-columns:1fr}
  .tub-capacity-card dl div,
  .tub-capacity-card dl div:nth-child(2),
  .tub-capacity-card dl div:last-child{padding:11px 0;border-right:0;border-top:1px solid rgba(23,25,22,.08)}
}


/* Dřevěné sauny 0.36.5 — reusable tub plan diagram for capacity + future jet overlays */
.tub-plan-diagram{
  position:relative;
  isolation:isolate;
}
.tub-plan-diagram__core{
  position:absolute;
  inset:50% auto auto 50%;
  width:31%;
  aspect-ratio:1;
  border-radius:50%;
  background:linear-gradient(180deg,#f5f4ef 0%,#e8e4db 100%);
  transform:translate(-50%,-50%);
  box-shadow:inset 0 0 0 1px rgba(44,62,54,.06);
  z-index:1;
}
.tub-plan-diagram__marker{position:absolute}
.tub-plan-diagram__legend{
  display:block;
  margin-top:10px;
  text-align:center;
  font-size:.7rem;
  font-weight:750;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--tub-muted);
}
.tub-plan-diagram__overlay{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:4;
}
.tub-plan-diagram__jet{
  --x:50%;
  --y:50%;
  position:absolute;
  left:var(--x);
  top:var(--y);
  width:10px;
  height:10px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 2px var(--tub-green),0 0 0 6px rgba(44,62,54,.12);
  transform:translate(-50%,-50%);
}
.tub-plan-diagram__jet::after{
  content:"";
  position:absolute;
  inset:50% auto auto 50%;
  width:18px;
  height:18px;
  border-radius:50%;
  border:1px dashed rgba(44,62,54,.16);
  transform:translate(-50%,-50%);
}
.tub-capacity-card__center b{font-size:1.38rem;font-weight:700;color:var(--tub-green)}
.tub-capacity-card__center small{display:none}
@media(max-width:780px){
  .tub-plan-diagram__legend{font-size:.64rem;letter-spacing:.1em}
}

/* Dřevěné sauny 0.36.6 — unified editorial diameter comparison */
.tub-capacity--comparison{
  padding-top:clamp(22px,2.4vw,38px);
}
.tub-capacity--comparison .tub-capacity__header{
  display:block;
  max-width:1040px;
  margin-bottom:clamp(34px,4.2vw,62px);
}
.tub-capacity--comparison .tub-capacity__header h2{
  max-width:980px;
  margin:0;
  font-size:clamp(2.8rem,4.65vw,5.35rem);
  line-height:.94;
  letter-spacing:-.055em;
}
.tub-capacity--comparison .tub-capacity__header>p:last-child{
  max-width:760px;
  margin:24px 0 0;
  color:var(--tub-muted);
  font-size:1rem;
  line-height:1.65;
}
.tub-capacity-comparison{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  overflow:hidden;
  border:1px solid rgba(23,25,22,.16);
  background:#fff;
}
.tub-capacity-comparison--single{
  grid-template-columns:minmax(0,1fr);
  max-width:920px;
}
.tub-capacity-comparison--single .tub-capacity-variant__top{
  grid-template-columns:minmax(0,1fr) minmax(220px,280px);
}
.tub-capacity-variant{
  position:relative;
  min-width:0;
  padding:clamp(30px,3vw,48px);
  background:linear-gradient(145deg,#fff 0%,#fff 72%,rgba(44,62,54,.035) 100%);
}
.tub-capacity-variant+.tub-capacity-variant{
  border-left:1px solid rgba(23,25,22,.14);
  background:linear-gradient(145deg,#fff 0%,#fff 70%,rgba(232,228,219,.42) 100%);
}
.tub-capacity-variant__top{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(190px,225px);
  gap:clamp(22px,3vw,46px);
  align-items:center;
}
.tub-capacity-variant__heading{
  align-self:start;
}
.tub-capacity-variant__heading span{
  display:block;
  margin-bottom:16px;
  color:var(--tub-muted);
  font-size:.66rem;
  font-weight:750;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.tub-capacity-variant__heading h3{
  margin:0;
  font-size:clamp(2.35rem,3vw,3.65rem);
  line-height:.95;
  letter-spacing:-.055em;
}
.tub-capacity-variant__heading p{
  margin:12px 0 0;
  font-size:1.08rem;
  font-weight:650;
}
.tub-capacity-variant__visual{
  display:grid;
  justify-items:center;
  gap:16px;
}
.tub-plan-diagram--comparison{
  --plan-size:clamp(168px,13vw,212px);
  --seat-radius:calc(var(--plan-size) * .355);
  position:relative;
  width:var(--plan-size);
  height:var(--plan-size);
  border-radius:50%;
  background:radial-gradient(circle at 50% 48%,rgba(44,62,54,.055) 0 68%,transparent 69%);
}
.tub-plan-diagram--comparison .tub-plan-diagram__outer-ring,
.tub-plan-diagram--comparison .tub-plan-diagram__inner-ring{
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}
.tub-plan-diagram--comparison .tub-plan-diagram__outer-ring{
  inset:3%;
  border:1px solid rgba(44,62,54,.15);
}
.tub-plan-diagram--comparison .tub-plan-diagram__inner-ring{
  inset:18%;
  border:1px dashed rgba(44,62,54,.22);
}
.tub-plan-diagram--comparison::before,
.tub-plan-diagram--comparison::after{
  content:"";
  position:absolute;
  z-index:0;
  background:rgba(44,62,54,.16);
}
.tub-plan-diagram--comparison::before{
  top:50%;
  left:-9%;
  width:118%;
  height:1px;
}
.tub-plan-diagram--comparison::after{
  top:-9%;
  left:50%;
  width:1px;
  height:118%;
}
.tub-plan-diagram--comparison .tub-plan-diagram__core{
  width:35%;
  background:linear-gradient(180deg,#f4f2ec 0%,#e4dfd4 100%);
  box-shadow:inset 0 0 0 1px rgba(44,62,54,.08),0 10px 28px rgba(44,62,54,.06);
}
.tub-plan-diagram--comparison.tub-plan-diagram--square{
  border-radius:18%;
  background:linear-gradient(145deg,rgba(44,62,54,.035),rgba(44,62,54,.075));
}
.tub-plan-diagram--comparison.tub-plan-diagram--square .tub-plan-diagram__outer-ring,
.tub-plan-diagram--comparison.tub-plan-diagram--square .tub-plan-diagram__inner-ring{
  border-radius:16%;
}
.tub-plan-diagram--comparison.tub-plan-diagram--square .tub-plan-diagram__core{
  border-radius:18%;
}
.tub-plan-diagram--comparison.tub-plan-diagram--oval{
  width:calc(var(--plan-size) * 1.55);
  border-radius:50%;
  background:radial-gradient(ellipse at 50% 48%,rgba(44,62,54,.055) 0 68%,transparent 69%);
}
.tub-plan-diagram--comparison.tub-plan-diagram--oval .tub-plan-diagram__outer-ring,
.tub-plan-diagram--comparison.tub-plan-diagram--oval .tub-plan-diagram__inner-ring,
.tub-plan-diagram--comparison.tub-plan-diagram--oval .tub-plan-diagram__core{
  border-radius:50%;
}
.tub-plan-diagram--comparison .tub-plan-diagram__marker{
  position:absolute;
  z-index:5;
  top:50%;
  left:50%;
  width:14px;
  height:14px;
  border:3px solid #fff;
  border-radius:50%;
  background:var(--tub-green);
  box-shadow:0 0 0 1px rgba(44,62,54,.18),0 6px 13px rgba(44,62,54,.16);
  transform:translate(-50%,-50%) rotate(calc(var(--index) * 1deg)) translateY(calc(var(--radius) * -1));
}
.tub-plan-diagram--comparison.tub-plan-diagram--4 .tub-plan-diagram__marker:nth-of-type(1){--index:0;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--4 .tub-plan-diagram__marker:nth-of-type(2){--index:90;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--4 .tub-plan-diagram__marker:nth-of-type(3){--index:180;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--4 .tub-plan-diagram__marker:nth-of-type(4){--index:270;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--6 .tub-plan-diagram__marker:nth-of-type(1){--index:0;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--6 .tub-plan-diagram__marker:nth-of-type(2){--index:60;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--6 .tub-plan-diagram__marker:nth-of-type(3){--index:120;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--6 .tub-plan-diagram__marker:nth-of-type(4){--index:180;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--6 .tub-plan-diagram__marker:nth-of-type(5){--index:240;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--6 .tub-plan-diagram__marker:nth-of-type(6){--index:300;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--8 .tub-plan-diagram__marker:nth-of-type(1){--index:0;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--8 .tub-plan-diagram__marker:nth-of-type(2){--index:45;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--8 .tub-plan-diagram__marker:nth-of-type(3){--index:90;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--8 .tub-plan-diagram__marker:nth-of-type(4){--index:135;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--8 .tub-plan-diagram__marker:nth-of-type(5){--index:180;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--8 .tub-plan-diagram__marker:nth-of-type(6){--index:225;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--8 .tub-plan-diagram__marker:nth-of-type(7){--index:270;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison.tub-plan-diagram--8 .tub-plan-diagram__marker:nth-of-type(8){--index:315;--radius:var(--seat-radius)}
.tub-plan-diagram--comparison .tub-capacity-card__center{
  z-index:6;
}
.tub-plan-diagram--comparison .tub-capacity-card__center b{
  font-size:1.5rem;
  color:var(--tub-green);
}
.tub-plan-diagram--comparison .tub-capacity-card__center small{
  display:block;
  margin-top:4px;
  color:var(--tub-muted);
  font-size:.57rem;
  font-weight:750;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.tub-capacity-variant__measurements{
  display:flex;
  justify-content:center;
  gap:18px;
  width:100%;
}
.tub-capacity-variant__measurements span{
  display:grid;
  gap:3px;
  min-width:0;
  color:var(--tub-muted);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.tub-capacity-variant__measurements span+span{
  padding-left:18px;
  border-left:1px solid rgba(23,25,22,.12);
}
.tub-capacity-variant__measurements strong{
  color:var(--tub-ink);
  font-size:.88rem;
  letter-spacing:0;
  text-transform:none;
  white-space:nowrap;
}
.tub-capacity-variant__specs{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:0;
  margin:clamp(24px,3vw,38px) 0 0;
  border-top:1px solid rgba(23,25,22,.11);
}
.tub-capacity-variant__specs div{
  display:grid;
  gap:8px;
  padding:20px 22px 0 0;
}
.tub-capacity-variant__specs div+div{
  padding-right:0;
  padding-left:22px;
  border-left:1px solid rgba(23,25,22,.11);
}
.tub-capacity-variant__specs dt{
  color:var(--tub-muted);
  font-size:.65rem;
  font-weight:750;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.tub-capacity-variant__specs dd{
  margin:0;
  font-size:1rem;
  font-weight:650;
  line-height:1.4;
}
@media(max-width:1050px){
  .tub-capacity-comparison{grid-template-columns:1fr}
  .tub-capacity-variant+.tub-capacity-variant{border-top:1px solid rgba(23,25,22,.14);border-left:0}
}
@media(max-width:700px){
  .tub-capacity--comparison{padding-top:10px}
  .tub-capacity--comparison .tub-capacity__header h2{font-size:clamp(2.55rem,11.5vw,3.8rem)}
  .tub-capacity--comparison .tub-capacity__header>p:last-child{margin-top:18px;font-size:.94rem}
  .tub-capacity-variant{padding:24px 20px}
  .tub-capacity-variant__top{grid-template-columns:1fr;gap:22px}
  .tub-capacity-comparison--single .tub-capacity-variant__top{grid-template-columns:1fr}
  .tub-capacity-variant__heading{text-align:left}
  .tub-capacity-variant__heading h3{font-size:2.35rem}
  .tub-plan-diagram--comparison{--plan-size:176px}
  .tub-capacity-variant__measurements{gap:12px}
  .tub-capacity-variant__measurements span+span{padding-left:12px}
  .tub-capacity-variant__specs{grid-template-columns:1fr}
  .tub-capacity-variant__specs div,.tub-capacity-variant__specs div+div{padding:15px 0 0;border-left:0}
  .tub-capacity-variant__specs div+div{margin-top:15px;border-top:1px solid rgba(23,25,22,.08)}
}

/* Dřevěné sauny 0.36.7 — real material samples and refined capacity block */
.tub-capacity--comparison{padding-top:0}
.tub-plan-diagram--comparison .tub-plan-diagram__outer-ring{border-color:rgba(44,62,54,.22)}
.tub-plan-diagram--comparison .tub-plan-diagram__inner-ring{border-color:rgba(44,62,54,.3)}
.tub-plan-diagram--comparison .tub-plan-diagram__marker{box-shadow:0 0 0 1px rgba(44,62,54,.3),0 7px 15px rgba(44,62,54,.2)}

.tub-option__image{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(23,25,22,.12);
  border-radius:50%;
  background:#f5f2eb;
}
.tub-option__image img{width:100%;height:100%;object-fit:cover;transition:transform .28s ease}
.tub-option__image--icon{background:linear-gradient(180deg,#f6f3ec 0%,#efe9dd 100%)}
.tub-option__image--icon img{object-fit:contain;padding:6px;transition:none;filter:drop-shadow(0 4px 8px rgba(44,62,54,.10))}
.tub-option__image--material{background:#f6f3ec}
.tub-option__image--material img{object-fit:contain;padding:2px;transition:none}
.tub-option:hover .tub-option__image img,.tub-option.is-selected .tub-option__image img{transform:scale(1.06)}
.tub-option:hover .tub-option__image--icon img,.tub-option.is-selected .tub-option__image--icon img,.tub-option:hover .tub-option__image--material img,.tub-option.is-selected .tub-option__image--material img{transform:none}
.tub-option:has(.tub-option__image){grid-template-columns:58px minmax(0,1fr) 24px}

.tub-material-explorer{
  padding:clamp(72px,7vw,112px) max(3.5vw,calc((100vw - 1480px)/2));
  background:#f3f0e9;
}
.tub-material-explorer__header{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(310px,.52fr);
  gap:clamp(40px,6vw,96px);
  align-items:end;
  margin-bottom:clamp(32px,4vw,54px);
}
.tub-material-explorer__header h2{
  max-width:930px;
  margin:0;
  font-size:clamp(3rem,5.1vw,6rem);
  line-height:.94;
  letter-spacing:-.055em;
}
.tub-material-explorer__header>p{
  max-width:520px;
  margin:0 0 6px;
  color:var(--tub-muted);
  font-size:1rem;
  line-height:1.65;
}
.tub-material-explorer__layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(520px,1fr);
  align-items:stretch;
  overflow:visible;
  background:transparent;
}
.tub-material-explorer__preview{
  min-width:0;
  display:block;
  margin:0;
  border:1px solid rgba(23,25,22,.16);
  background:#f8f6f0;
}
.tub-material-explorer__image-wrap{
  position:relative;
  aspect-ratio:auto;
  min-height:0;
  height:100%;
  max-height:none;
  display:grid;
  place-items:center;
  overflow:hidden;
  padding:clamp(24px,3.2vw,48px);
  background:radial-gradient(circle at center,rgba(44,62,54,.075),transparent 58%);
}
.tub-material-explorer__image-wrap img{
  width:min(72%,440px);
  height:auto;
  max-height:390px;
  object-fit:contain;
  filter:drop-shadow(0 20px 26px rgba(23,25,22,.12));
  transition:opacity .18s ease,transform .38s cubic-bezier(.2,.7,.2,1),filter .3s ease;
}
.tub-detail[data-tub-model="acryl-bath-deluxe"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img{
  width:min(86%,530px);
  max-height:470px;
}
.tub-material-explorer__image-wrap img.is-changing{opacity:.28;transform:scale(.975)}
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img{width:min(62%,360px);aspect-ratio:1;border-radius:50%;object-fit:cover;filter:drop-shadow(0 18px 24px rgba(23,25,22,.11))}
.tub-material-explorer[data-active-material-group="claddings"] .tub-material-explorer__image-wrap{padding:0;background:#242922}
.tub-material-explorer[data-active-material-group="claddings"] .tub-material-explorer__image-wrap img{
  width:100%;
  height:100%;
  max-height:none;
  object-fit:cover;
  filter:none;
}
.tub-material-explorer__image-wrap>span{
  position:absolute;
  top:20px;
  left:22px;
  padding:7px 10px;
  color:#fff;
  background:var(--tub-green);
  font-size:.62rem;
  font-weight:750;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.tub-material-explorer__preview-copy{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px 24px;
  align-items:end;
  padding:22px 26px 24px;
  border-top:1px solid rgba(23,25,22,.1);
  background:#fff;
}
.tub-material-explorer__preview-copy>span{
  grid-column:1/-1;
  color:var(--tub-muted);
  font-size:.62rem;
  font-weight:750;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.tub-material-explorer__preview-copy h3{margin:0;font-size:clamp(1.65rem,2.2vw,2.55rem);line-height:1}
.tub-material-explorer__preview-copy p{grid-column:1/2;max-width:620px;margin:3px 0 0;color:var(--tub-muted);font-size:.92rem;line-height:1.5}
.tub-material-explorer__traits{
  grid-column:1/2;
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:4px 0 0;
  padding:0;
  list-style:none;
}
.tub-material-explorer__traits li{
  padding:6px 9px;
  border:1px solid rgba(44,62,54,.18);
  background:#f5f7f4;
  color:var(--tub-green);
  font-size:.65rem;
  font-weight:720;
  letter-spacing:.025em;
}
.tub-material-explorer__cta{
  grid-column:2/3;
  grid-row:2/5;
  align-self:end;
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:13px 18px;
  white-space:nowrap;
}
.tub-material-explorer__controls{
  min-width:0;
  align-self:stretch;
  display:grid;
  grid-template-rows:auto auto;
  border:1px solid rgba(23,25,22,.16);
  border-left:0;
  background:#fff;
}
.tub-material-explorer__tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid rgba(23,25,22,.13)}
.tub-material-explorer__tabs--single{grid-template-columns:1fr}
.tub-material-explorer__tabs button{
  min-height:60px;
  padding:13px 18px;
  border:0;
  border-right:1px solid rgba(23,25,22,.13);
  background:#fff;
  color:var(--tub-muted);
  font-weight:680;
  text-align:left;
}
.tub-material-explorer__tabs button:last-child{border-right:0}
.tub-material-explorer__tabs button.is-active{color:#fff;background:var(--tub-green)}
.tub-material-explorer__options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-content:start;
  padding:14px;
  gap:8px;
}
.tub-material-explorer__options[hidden]{display:none!important}
.tub-material-choice{
  position:relative;
  min-width:0;
  min-height:86px;
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:12px;
  align-items:center;
  padding:11px;
  border:1px solid rgba(23,25,22,.12);
  background:#fff;
  color:inherit;
  text-align:left;
  transition:border-color .2s ease,background .2s ease,transform .2s ease;
}
.tub-material-choice:hover,.tub-material-choice:focus-visible{border-color:rgba(44,62,54,.7);transform:translateY(-1px)}
.tub-material-choice.is-active{border-color:var(--tub-green);box-shadow:inset 0 0 0 1px var(--tub-green);background:#f5f7f4}
.tub-material-choice.is-active::after{
  content:'✓';
  position:absolute;
  top:8px;
  right:8px;
  width:18px;
  height:18px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:var(--tub-green);
  font-size:.66rem;
  font-weight:800;
}
.tub-material-choice img{
  width:54px;
  height:54px;
  object-fit:cover;
  border:1px solid rgba(23,25,22,.1);
  border-radius:50%;
  background:#f4f1ea;
}
.tub-material-explorer__options[data-material-options="claddings"] .tub-material-choice img{border-radius:0}
.tub-material-choice span{min-width:0;display:grid;gap:3px;padding-right:13px}
.tub-material-choice strong{font-size:.84rem;line-height:1.24}
.tub-material-choice small{color:var(--tub-muted);font-size:.66rem;line-height:1.3}
.tub-material-explorer__note{max-width:920px;margin:14px 0 0;color:var(--tub-muted);font-size:.7rem;line-height:1.5}

@media(max-width:1100px){
  .tub-material-explorer__layout{grid-template-columns:1fr}
  .tub-material-explorer__preview{border-bottom:0}
  .tub-material-explorer__controls{border-left:1px solid rgba(23,25,22,.16)}
  .tub-material-explorer__image-wrap{max-height:none}
  .tub-material-explorer__preview-copy{grid-column:1}
}
@media(max-width:760px){
  .tub-material-explorer{padding:70px 16px}
  .tub-material-explorer__header{grid-template-columns:1fr;gap:22px;margin-bottom:30px}
  .tub-material-explorer__header h2{font-size:clamp(2.55rem,11.5vw,3.8rem)}
  .tub-material-explorer__layout{border-left:0;border-right:0}
  .tub-material-explorer__image-wrap{min-height:0;aspect-ratio:4/3;padding:22px}
  .tub-material-explorer__image-wrap img{width:min(74%,310px);height:auto;max-height:280px}
  .tub-detail[data-tub-model="acryl-bath-deluxe"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img{width:min(90%,370px);max-height:330px}
  .tub-material-explorer__image-wrap>span{top:16px;left:16px}
  .tub-material-explorer__preview-copy{grid-template-columns:1fr;padding:20px 18px 22px}
  .tub-material-explorer__preview-copy p,.tub-material-explorer__traits,.tub-material-explorer__cta{grid-column:1;grid-row:auto}
  .tub-material-explorer__cta{width:100%;margin-top:8px}
  .tub-material-explorer__tabs button{min-height:58px;padding:12px 13px;font-size:.78rem}
  .tub-material-explorer__options{grid-template-columns:1fr;padding:11px}
  .tub-material-choice{min-height:80px;grid-template-columns:52px minmax(0,1fr);padding:10px}
  .tub-material-choice img{width:52px;height:52px}
  .tub-option:has(.tub-option__image){grid-template-columns:46px minmax(0,1fr) 22px}
  .tub-option__image{width:46px;height:46px}
}


/* Dřevěné sauny 0.36.9 — compact capacity diagrams use the same visual system as the large comparison */
.tub-capacity-mini__plan{
  --plan-size:94px;
  --seat-radius:34px;
  overflow:visible;
  border:0;
  background:radial-gradient(circle at 50% 48%,rgba(44,62,54,.055) 0 68%,transparent 69%);
  box-shadow:none;
}
.tub-capacity-mini__plan .tub-plan-diagram__outer-ring,
.tub-capacity-mini__plan .tub-plan-diagram__inner-ring{
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}
.tub-capacity-mini__plan .tub-plan-diagram__outer-ring{
  inset:3%;
  border:1px solid rgba(44,62,54,.18);
}
.tub-capacity-mini__plan .tub-plan-diagram__inner-ring{
  inset:18%;
  border:1px dashed rgba(44,62,54,.25);
}
.tub-capacity-mini__plan::before,
.tub-capacity-mini__plan::after{
  content:"";
  position:absolute;
  z-index:0;
  background:rgba(44,62,54,.14);
  pointer-events:none;
}
.tub-capacity-mini__plan::before{
  top:50%;
  left:-7%;
  width:114%;
  height:1px;
}
.tub-capacity-mini__plan::after{
  top:-7%;
  left:50%;
  width:1px;
  height:114%;
}
.tub-capacity-mini__plan .tub-plan-diagram__core{
  width:35%;
  background:linear-gradient(180deg,#f4f2ec 0%,#e4dfd4 100%);
  box-shadow:inset 0 0 0 1px rgba(44,62,54,.08),0 7px 18px rgba(44,62,54,.06);
}
.tub-capacity-mini__plan .tub-capacity-card__center{
  z-index:6;
}
.tub-capacity-mini__plan .tub-capacity-card__center b{
  font-size:1rem;
  color:var(--tub-green);
}
.tub-capacity-mini__plan .tub-capacity-card__center small{
  display:block;
  margin-top:2px;
  color:var(--tub-muted);
  font-size:.42rem;
  font-weight:750;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.tub-capacity-mini__plan .tub-plan-diagram__marker{
  z-index:5;
  width:10px;
  height:10px;
  border:2px solid #fff;
  background:var(--tub-green);
  box-shadow:0 0 0 1px rgba(44,62,54,.22),0 4px 9px rgba(44,62,54,.14);
}
.tub-capacity-mini__plan--6 .tub-plan-diagram__marker:nth-of-type(1){--index:0;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--6 .tub-plan-diagram__marker:nth-of-type(2){--index:60;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--6 .tub-plan-diagram__marker:nth-of-type(3){--index:120;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--6 .tub-plan-diagram__marker:nth-of-type(4){--index:180;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--6 .tub-plan-diagram__marker:nth-of-type(5){--index:240;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--6 .tub-plan-diagram__marker:nth-of-type(6){--index:300;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 .tub-plan-diagram__marker:nth-of-type(1){--index:0;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 .tub-plan-diagram__marker:nth-of-type(2){--index:45;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 .tub-plan-diagram__marker:nth-of-type(3){--index:90;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 .tub-plan-diagram__marker:nth-of-type(4){--index:135;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 .tub-plan-diagram__marker:nth-of-type(5){--index:180;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 .tub-plan-diagram__marker:nth-of-type(6){--index:225;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 .tub-plan-diagram__marker:nth-of-type(7){--index:270;--radius:var(--seat-radius)}
.tub-capacity-mini__plan--8 .tub-plan-diagram__marker:nth-of-type(8){--index:315;--radius:var(--seat-radius)}
.tub-capacity-mini:hover .tub-capacity-mini__plan,
.tub-capacity-mini:focus-visible .tub-capacity-mini__plan,
.tub-capacity-mini.is-active .tub-capacity-mini__plan{
  border-color:transparent;
  background:radial-gradient(circle at 50% 48%,rgba(255,255,255,.09) 0 68%,transparent 69%);
}
.tub-capacity-mini:hover .tub-capacity-mini__plan .tub-plan-diagram__outer-ring,
.tub-capacity-mini:focus-visible .tub-capacity-mini__plan .tub-plan-diagram__outer-ring,
.tub-capacity-mini.is-active .tub-capacity-mini__plan .tub-plan-diagram__outer-ring{
  border-color:rgba(255,255,255,.35);
}
.tub-capacity-mini:hover .tub-capacity-mini__plan .tub-plan-diagram__inner-ring,
.tub-capacity-mini:focus-visible .tub-capacity-mini__plan .tub-plan-diagram__inner-ring,
.tub-capacity-mini.is-active .tub-capacity-mini__plan .tub-plan-diagram__inner-ring{
  border-color:rgba(255,255,255,.42);
}
.tub-capacity-mini:hover .tub-capacity-mini__plan::before,
.tub-capacity-mini:hover .tub-capacity-mini__plan::after,
.tub-capacity-mini:focus-visible .tub-capacity-mini__plan::before,
.tub-capacity-mini:focus-visible .tub-capacity-mini__plan::after,
.tub-capacity-mini.is-active .tub-capacity-mini__plan::before,
.tub-capacity-mini.is-active .tub-capacity-mini__plan::after{
  background:rgba(255,255,255,.28);
}
.tub-capacity-mini:hover .tub-capacity-mini__plan .tub-plan-diagram__core,
.tub-capacity-mini:focus-visible .tub-capacity-mini__plan .tub-plan-diagram__core,
.tub-capacity-mini.is-active .tub-capacity-mini__plan .tub-plan-diagram__core{
  background:linear-gradient(180deg,#f6f3eb 0%,#ded8cc 100%);
}
.tub-capacity-mini:hover .tub-capacity-mini__plan .tub-capacity-card__center b,
.tub-capacity-mini:focus-visible .tub-capacity-mini__plan .tub-capacity-card__center b,
.tub-capacity-mini.is-active .tub-capacity-mini__plan .tub-capacity-card__center b{
  color:var(--tub-green);
}
.tub-capacity-mini:hover .tub-capacity-mini__plan .tub-capacity-card__center small,
.tub-capacity-mini:focus-visible .tub-capacity-mini__plan .tub-capacity-card__center small,
.tub-capacity-mini.is-active .tub-capacity-mini__plan .tub-capacity-card__center small{
  color:rgba(44,62,54,.66);
}
.tub-capacity-mini:hover .tub-capacity-mini__plan .tub-plan-diagram__marker,
.tub-capacity-mini:focus-visible .tub-capacity-mini__plan .tub-plan-diagram__marker,
.tub-capacity-mini.is-active .tub-capacity-mini__plan .tub-plan-diagram__marker{
  border-color:rgba(255,255,255,.9);
  background:#fff;
  box-shadow:0 0 0 1px rgba(255,255,255,.3),0 5px 11px rgba(0,0,0,.12);
}
@media(max-width:780px){
  .tub-capacity-mini__plan{--plan-size:86px;--seat-radius:31px}
}


/* Dřevěné sauny 0.37.0 — final refinement of the compact capacity selector */
.tub-capacity-mini__plan{
  --plan-size:106px;
  --seat-radius:38px;
}
.tub-capacity-mini:hover>small,
.tub-capacity-mini:focus-visible>small,
.tub-capacity-mini.is-active>small{
  color:rgba(255,255,255,.88);
}
.tub-capacity-mini strong,
.tub-hero__facts-card--diameter strong,
.tub-hero__facts-card--diameter b{
  white-space:nowrap;
}
.tub-intro{
  padding-top:clamp(48px,5vw,76px);
}
@media(max-width:780px){
  .tub-capacity-mini__plan{--plan-size:96px;--seat-radius:35px}
}
@media(max-width:720px){
  .tub-intro{padding-top:58px}
}

/* Dřevěné sauny 0.38.0 — shared motion language for every product detail */
.hd-product-page{
  --hd-motion-fast:220ms;
  --hd-motion-medium:520ms;
  --hd-motion-slow:950ms;
  --hd-motion-ease:cubic-bezier(.22,.61,.36,1);
  background:var(--product-page-bg,#faf8f3);
}
.hd-product-page.is-motion-ready{
  transition:background-color var(--hd-motion-slow) var(--hd-motion-ease);
}
.hd-product-page>section{
  position:relative;
  background-color:transparent!important;
}
.hd-product-page [data-page-bg]{
  isolation:isolate;
}
.hd-product-page [data-page-bg]::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:transparent;
}

/* One interaction vocabulary: subtle lift, green accent, no decorative motion. */
.hd-product-page .button,
.hd-product-page .button-outline,
.hd-product-page .text-link,
.hd-product-page .product-gallery-strip__arrow,
.hd-product-page .tub-material-choice,
.hd-product-page .tub-capacity-mini{
  transition-property:color,background-color,border-color,box-shadow,transform,opacity;
  transition-duration:var(--hd-motion-fast);
  transition-timing-function:ease;
}
.hd-product-page .button:not(.button--light):not(.button--ghost-light):hover,
.hd-product-page .button:not(.button--light):not(.button--ghost-light):focus-visible{
  color:#fff;
  background:var(--forest,#2c3e36);
  border-color:var(--forest,#2c3e36);
  transform:translateY(-1px);
}
.hd-product-page .button--light:hover,
.hd-product-page .button--light:focus-visible{
  color:var(--ink,#171916);
  background:var(--sand,#e8e4db);
  border-color:var(--sand,#e8e4db);
  transform:translateY(-1px);
}
.hd-product-page .button--ghost-light:hover,
.hd-product-page .button--ghost-light:focus-visible{
  color:var(--ink,#171916);
  background:#fff;
  border-color:#fff;
  transform:translateY(-1px);
}
.hd-product-page[data-page-theme="light"] .text-link:hover,
.hd-product-page[data-page-theme="light"] .text-link:focus-visible{
  color:var(--forest,#2c3e36);
}
.hd-product-page .product-gallery-strip__item .product-lightbox-trigger{
  transition:transform var(--hd-motion-medium) var(--hd-motion-ease),box-shadow var(--hd-motion-medium) ease;
}
.hd-product-page .product-gallery-strip__item:hover .product-lightbox-trigger{
  transform:translateY(-2px);
}

/* Material explorer: the selected surface changes like a premium product sample, not a hard swap. */
.hd-product-page .tub-material-explorer__image-wrap img{
  transform-origin:50% 52%;
  transition:opacity 260ms ease,transform 420ms var(--hd-motion-ease),filter 300ms ease;
}
.hd-product-page .tub-material-explorer__image-wrap img.is-changing{
  opacity:.18;
  transform:scale(.965);
  filter:saturate(.72);
}
.hd-product-page .tub-material-choice:hover,
.hd-product-page .tub-material-choice:focus-visible{
  color:var(--tub-green,var(--forest,#2c3e36));
  border-color:var(--tub-green,var(--forest,#2c3e36));
  background:#f5f7f4;
  transform:translateY(-1px);
}

/* Capacity selector is deliberately more expressive because it changes real product dimensions. */
.hd-product-page .tub-capacity-mini:hover,
.hd-product-page .tub-capacity-mini:focus-visible,
.hd-product-page .tub-capacity-mini.is-active{
  color:#fff;
  background:var(--tub-green,var(--forest,#2c3e36));
  border-color:var(--tub-green,var(--forest,#2c3e36));
}

/* Reveal timing shared by sauna, tubs and future product templates. */
.hd-product-page .reveal{
  opacity:0;
  transform:translate3d(0,24px,0);
  transition:opacity 720ms ease,transform 820ms var(--hd-motion-ease);
  will-change:opacity,transform;
}
.hd-product-page .reveal.is-visible{
  opacity:1;
  transform:none;
  will-change:auto;
}

@media(prefers-reduced-motion:reduce){
  .hd-product-page,
  .hd-product-page.is-motion-ready{transition:none!important}
  .hd-product-page .reveal{opacity:1;transform:none;transition:none;will-change:auto}
  .hd-product-page .button,
  .hd-product-page .button-outline,
  .hd-product-page .text-link,
  .hd-product-page .product-gallery-strip__arrow,
  .hd-product-page .product-gallery-strip__item .product-lightbox-trigger,
  .hd-product-page .tub-material-choice,
  .hd-product-page .tub-capacity-mini,
  .hd-product-page .tub-material-explorer__image-wrap img{transition:none!important;transform:none!important}
}

/* Dřevěné sauny 0.39.0 — Quadro Deluxe product system */
.quadro-capacity-card{display:flex;align-items:center;gap:18px;min-height:126px;padding:14px 0}
.quadro-capacity-card>div:last-child{display:grid;gap:5px}
.quadro-capacity-card>div:last-child>strong{font-size:1.05rem;line-height:1.1}
.quadro-capacity-card>div:last-child>small{color:var(--tub-muted);font-size:.74rem;line-height:1.35}
.quadro-plan{position:relative;flex:0 0 auto;aspect-ratio:1;isolation:isolate}
.quadro-plan--mini{width:92px}
.quadro-plan--large{width:min(30vw,360px)}
.quadro-plan__shell{position:absolute;inset:8%;border:1px solid rgba(44,62,54,.3);border-radius:27%;background:linear-gradient(145deg,#f9f7f1,#e7e4db);box-shadow:inset 0 0 0 12px rgba(44,62,54,.045),inset 0 0 0 13px rgba(44,62,54,.12),0 20px 55px rgba(44,62,54,.10)}
.quadro-plan__shell::before{content:"";position:absolute;inset:25%;border:1px solid rgba(44,62,54,.18);border-radius:24%;background:#f2efe7;transform:rotate(45deg)}
.quadro-plan__shell::after{content:"";position:absolute;inset:42%;border-radius:20%;background:#e3dfd4;box-shadow:0 0 0 1px rgba(44,62,54,.12)}
.quadro-plan__seat{position:absolute;z-index:2;width:15%;aspect-ratio:1;border-radius:50%;background:var(--tub-green);box-shadow:0 6px 14px rgba(44,62,54,.24)}
.quadro-plan__seat--1{left:19%;top:17%}.quadro-plan__seat--2{right:19%;top:17%}.quadro-plan__seat--3{right:13%;top:47%}.quadro-plan__seat--4{right:26%;bottom:13%}.quadro-plan__seat--5{left:26%;bottom:13%}.quadro-plan__seat--6{left:13%;top:47%}
.quadro-plan__center{position:absolute;z-index:3;left:50%;top:50%;display:grid;place-items:center;transform:translate(-50%,-50%);text-align:center;color:var(--tub-green)}
.quadro-plan__center b{font-size:1.2rem;line-height:1}.quadro-plan__center small{margin-top:2px;font-size:.43rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.quadro-plan--large .quadro-plan__center b{font-size:2rem}.quadro-plan--large .quadro-plan__center small{font-size:.55rem}

.quadro-geometry{padding:clamp(95px,10vw,160px) max(3.5vw,calc((100vw - 1480px)/2));background:#f3f0e9}
.quadro-geometry__header{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.55fr);gap:clamp(45px,8vw,130px);align-items:end;margin-bottom:clamp(48px,6vw,82px)}
.quadro-geometry__header h2{max-width:920px;margin:0;font-size:clamp(3rem,5.5vw,6.4rem);line-height:.94;letter-spacing:-.055em}
.quadro-geometry__header>p{max-width:520px;margin:0;color:var(--tub-muted);line-height:1.65}
.quadro-geometry__grid{display:grid;grid-template-columns:minmax(420px,.95fr) minmax(380px,1.05fr);border:1px solid var(--tub-line);background:rgba(255,255,255,.32)}
.quadro-geometry__visual{position:relative;min-height:560px;display:grid;place-items:center;border-right:1px solid var(--tub-line);background:#f9f7f1}
.quadro-geometry__dimension{position:absolute;color:var(--tub-muted);font-size:.69rem;font-weight:760;letter-spacing:.12em;text-transform:uppercase}
.quadro-geometry__dimension--x{left:50%;bottom:40px;transform:translateX(-50%)}
.quadro-geometry__dimension--x::before{content:"";position:absolute;left:-110px;right:-110px;top:-14px;border-top:1px solid rgba(44,62,54,.24)}
.quadro-geometry__dimension--y{top:50%;left:38px;transform:translateY(-50%) rotate(-90deg)}
.quadro-geometry__dimension--y::before{content:"";position:absolute;left:-110px;right:-110px;top:-14px;border-top:1px solid rgba(44,62,54,.24)}
.quadro-geometry__specs{margin:0;display:grid;align-content:stretch}
.quadro-geometry__specs div{display:grid;grid-template-columns:.44fr .56fr;gap:24px;align-items:center;min-height:112px;padding:24px clamp(24px,3vw,44px);border-bottom:1px solid var(--tub-line)}
.quadro-geometry__specs div:last-child{border-bottom:0}
.quadro-geometry__specs dt{color:var(--tub-muted);font-size:.68rem;font-weight:760;letter-spacing:.12em;text-transform:uppercase}
.quadro-geometry__specs dd{margin:0;font-size:1.08rem;font-weight:650;line-height:1.35}

.tub-layout-clock--square{border-radius:4%;background:linear-gradient(rgba(44,62,54,.025),rgba(44,62,54,.025)),repeating-linear-gradient(0deg,transparent 0 46px,rgba(44,62,54,.04) 46px 47px),repeating-linear-gradient(90deg,transparent 0 46px,rgba(44,62,54,.04) 46px 47px)}
.tub-layout-clock--square:before{inset:10%;border-style:solid;border-color:rgba(44,62,54,.12);border-radius:6%}
.tub-layout-clock--square .tub-layout-clock__tub{inset:27%;border-radius:24%;overflow:hidden;background:linear-gradient(145deg,#475b51,#24372f)}
.tub-layout-clock--square .tub-layout-clock__tub::before{content:"";position:absolute;inset:13%;border:1px solid rgba(255,255,255,.22);border-radius:22%;transform:rotate(45deg)}
.tub-layout-clock--square .tub-layout-clock__tub i{position:absolute;inset:39%;border-radius:20%;background:rgba(255,255,255,.14)}
.tub-layout-clock--square .tub-layout-clock__tub span,.tub-layout-clock--square .tub-layout-clock__tub strong{position:relative;z-index:2}
.tub-layout-clock--square>button[data-tub-clock-hour="12"]{font-weight:850}
.tub-layout-clock--square>button[data-tub-clock-hour="3"],.tub-layout-clock--square>button[data-tub-clock-hour="6"],.tub-layout-clock--square>button[data-tub-clock-hour="9"]{border-color:rgba(44,62,54,.35)}
.tub-layout-clock--oval .tub-layout-clock__tub{inset:32% 20%;border-radius:50%;background:linear-gradient(145deg,#475b51,#24372f)}
.tub-layout-clock--oval .tub-layout-clock__tub::before{content:"";position:absolute;inset:12%;border:1px solid rgba(255,255,255,.22);border-radius:50%}
.tub-layout-clock--oval .tub-layout-clock__tub span,.tub-layout-clock--oval .tub-layout-clock__tub strong{position:relative;z-index:2}
.tub-layout-clock--oval>button[data-tub-clock-hour="3"],.tub-layout-clock--oval>button[data-tub-clock-hour="9"]{border-color:rgba(44,62,54,.35)}

@media(max-width:920px){
  .quadro-geometry__header,.quadro-geometry__grid{grid-template-columns:1fr}
  .quadro-geometry__header{gap:28px}
  .quadro-geometry__visual{min-height:470px;border-right:0;border-bottom:1px solid var(--tub-line)}
  .quadro-plan--large{width:min(62vw,330px)}
}
@media(max-width:720px){
  .quadro-capacity-card{gap:14px;min-height:112px}.quadro-plan--mini{width:78px}
  .quadro-geometry{padding:74px 16px}.quadro-geometry__header{margin-bottom:34px}.quadro-geometry__header h2{font-size:clamp(2.65rem,11.8vw,4rem)}
  .quadro-geometry__visual{min-height:390px}.quadro-plan--large{width:min(70vw,280px)}
  .quadro-geometry__dimension--x{bottom:24px}.quadro-geometry__dimension--x::before{left:-80px;right:-80px}
  .quadro-geometry__dimension--y{left:20px}.quadro-geometry__dimension--y::before{left:-80px;right:-80px}
  .quadro-geometry__specs div{grid-template-columns:.42fr .58fr;min-height:90px;padding:18px 16px}.quadro-geometry__specs dd{font-size:.94rem}
}


/* Dřevěné sauny 0.39.2 — sjednocené přepisování pozic a přeskočení rozmístění napříč koupacími sudy */
.tub-layout-item.is-unassigned{border-style:dashed;border-color:rgba(164,130,92,.58);background:#fbf8f1}
.tub-layout-item.is-unassigned>b{color:#a4825c}
.tub-layout-item.is-unassigned small::after{content:' · vyberte novou pozici';font-weight:700;color:#a4825c}
.tub-layout-clock>button:has(i + i){gap:2px;grid-auto-flow:column;grid-template-columns:repeat(2,7px);justify-content:center}
.tub-layout-expert-note{border-left:4px solid var(--tub-green)}


/* Dřevěné sauny 0.39.3 — společná dokumentace koupacích sudů */
.tub-manual-resource{margin:clamp(42px,5vw,72px) 0 0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(20px,3vw,42px);align-items:center;padding:clamp(24px,3vw,38px);border:1px solid var(--tub-line);background:rgba(255,255,255,.54)}
.tub-manual-resource__icon{width:78px;aspect-ratio:1;display:grid;place-items:center;position:relative;border:1px solid rgba(44,62,54,.18);background:#faf8f3;color:var(--tub-green)}
.tub-manual-resource__icon svg{width:31px;height:auto}.tub-manual-resource__icon small{position:absolute;right:7px;bottom:6px;font-size:.52rem;font-weight:850;letter-spacing:.12em}
.tub-manual-resource__copy{max-width:720px}.tub-manual-resource__copy .eyebrow{margin:0 0 7px}.tub-manual-resource__copy h3{margin:0;font-size:clamp(1.55rem,2.2vw,2.35rem);line-height:1.02;letter-spacing:-.035em}.tub-manual-resource__copy>p:not(.eyebrow){max-width:640px;margin:10px 0 8px;color:var(--tub-muted);line-height:1.55}.tub-manual-resource__copy>span{display:block;color:var(--tub-muted);font-size:.68rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.tub-manual-resource__action{white-space:nowrap;align-self:center;min-height:52px;padding:0 22px;background:var(--tub-ink);border-color:var(--tub-ink);color:#fff;text-decoration:none;font-size:.82rem;font-weight:700;letter-spacing:-.01em}.tub-manual-resource__action b{margin-left:10px;font-size:1.05em;font-weight:500;transition:transform var(--hd-motion-fast,180ms) ease}.tub-manual-resource__action:hover b,.tub-manual-resource__action:focus-visible b{transform:translateY(2px)}
.tub-config-manual{max-width:1480px;margin:20px auto 0;padding:0 2px;display:flex;align-items:center;justify-content:flex-end;gap:14px;color:var(--tub-muted);font-size:.72rem}
.tub-config-manual span{font-weight:650}.tub-config-manual a{position:relative;color:var(--tub-ink);font-weight:760;text-decoration:none}.tub-config-manual a::after{content:"";position:absolute;left:0;right:0;bottom:-3px;border-top:1px solid currentColor;transform:scaleX(.28);transform-origin:left;transition:transform .22s ease}.tub-config-manual a:hover::after,.tub-config-manual a:focus-visible::after{transform:scaleX(1)}.tub-config-manual a b{margin-left:4px}
@media(max-width:760px){.tub-manual-resource{grid-template-columns:58px minmax(0,1fr);gap:16px;padding:20px 16px}.tub-manual-resource__icon{width:58px}.tub-manual-resource__icon svg{width:25px}.tub-manual-resource__action{grid-column:1/-1;width:100%;justify-content:center}.tub-config-manual{justify-content:space-between;gap:10px;padding:0 16px;font-size:.68rem}.tub-config-manual span{display:none}}
@media(prefers-reduced-motion:reduce){.tub-config-manual a::after{transition:none}}

/* Sudová sauna 0.41.21 */
.barrel-sauna-detail{
  --tub-ink:#171916;
  --tub-paper:#faf8f3;
  --tub-line:rgba(23,25,22,.15);
  --tub-panel:#f3f0e9;
  --tub-green:#2c3e36;
  --tub-muted:#66706a;
  color:var(--tub-ink);
  background:var(--tub-paper);
}
.barrel-sauna-detail button,.barrel-sauna-detail input,.barrel-sauna-detail textarea{font:inherit}
.barrel-sauna-detail button{cursor:pointer}
.barrel-sauna-detail button:disabled{cursor:not-allowed;opacity:.38}
.barrel-sauna-detail .text-link{appearance:none;padding:0;border:0;background:none;color:inherit;font-weight:650;text-decoration:none}
.barrel-sauna-detail>section.barrel-sauna-hero{background:#eeeae1!important}
.barrel-sauna-detail>section.barrel-sauna-intro,.barrel-sauna-detail>section.barrel-sauna-materials,.barrel-sauna-detail>section.barrel-sauna-process,.barrel-sauna-detail>section.barrel-sauna-faq{background:#faf8f3!important}
.barrel-sauna-detail>section.product-gallery-strip{background:#171916!important;color:#fff!important}
.barrel-sauna-detail>section.barrel-sauna-layouts,.barrel-sauna-detail>section.barrel-sauna-construction,.barrel-sauna-detail>section.barrel-sauna-resources{background:#e8e4db!important}
.barrel-sauna-detail>section.barrel-sauna-size-guide{background:#f3f0e9!important}
.barrel-sauna-detail>section.barrel-sauna-heating{background:#2c3e36!important;color:#fff!important}
.barrel-sauna-detail>section.sauna-configurator{background:#f3f0e9!important}
.barrel-sauna-detail>section.barrel-sauna-delivery{background:#f0ede6!important}
.barrel-sauna-detail>section.tub-final-cta{background:#2c3e36!important;color:#fff!important}
.barrel-sauna-detail>section.product-gallery-strip .eyebrow,.barrel-sauna-detail>section.product-gallery-strip h2{color:#fff!important}
.barrel-sauna-detail>section.tub-final-cta .eyebrow,.barrel-sauna-detail>section.tub-final-cta h2{color:#fff!important}
.barrel-sauna-detail>section.tub-final-cta>div:last-child p{color:rgba(255,255,255,.72)!important}
.barrel-sauna-hero{display:grid;grid-template-columns:minmax(430px,.86fr) minmax(0,1.14fr);background:#eeeae1}
.barrel-sauna-hero__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(85px,9vw,150px) max(40px,7vw)}
.barrel-sauna-hero__copy h1{max-width:8ch;margin:12px 0 28px;font-size:clamp(4.4rem,8vw,9.2rem);line-height:.88;letter-spacing:-.055em}
.barrel-sauna-hero__lead{max-width:680px;margin:0;color:#303631;font-size:clamp(1.18rem,1.8vw,1.65rem);line-height:1.48}
.barrel-sauna-hero__technical{max-width:680px;margin:24px 0 0;padding-top:20px;border-top:1px solid var(--tub-line);color:var(--tub-muted);font-size:.79rem;font-weight:700;letter-spacing:.055em;text-transform:uppercase;line-height:1.7}
.barrel-sauna-hero__price{display:grid;gap:3px;margin:34px 0 0}
.barrel-sauna-hero__price>span{color:var(--tub-muted);font-size:.65rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.barrel-sauna-hero__price>strong{font-size:clamp(1.9rem,2.8vw,3.1rem);font-weight:580;letter-spacing:-.035em}
.barrel-sauna-hero__price>small{color:var(--tub-muted);font-size:.78rem}
.barrel-sauna-hero .product-hero__actions{margin-top:34px}
.barrel-sauna-hero__assurance{display:flex;flex-wrap:wrap;gap:9px 22px;margin:24px 0 0;padding:0;list-style:none;color:var(--tub-muted);font-size:.73rem}
.barrel-sauna-hero__assurance li{position:relative;padding-left:16px}
.barrel-sauna-hero__assurance li:before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--tub-green)}
.barrel-sauna-hero__media{position:relative;min-height:780px;overflow:hidden;background:#d8d1c3}
.barrel-sauna-hero__media>img{width:100%;height:100%;object-fit:cover}
.barrel-sauna-hero__media.has-product-render{padding:clamp(22px,3vw,56px);background:#fff}
.barrel-sauna-hero__media.has-product-render>img{object-fit:contain}
.barrel-sauna-hero__placeholder{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:14px;padding:40px;color:#fff;background:radial-gradient(circle at 50% 46%,rgba(255,255,255,.11),transparent 37%),linear-gradient(145deg,#4b5c52,#213027);text-align:center}
.barrel-sauna-hero__placeholder>span{position:relative;width:min(62%,470px);aspect-ratio:1.24;border:3px solid rgba(255,255,255,.68);border-radius:50%;box-shadow:inset 0 0 0 18px rgba(255,255,255,.055)}
.barrel-sauna-hero__placeholder>span:before{content:"";position:absolute;inset:12% 18%;border:2px solid rgba(255,255,255,.58);border-radius:50%}
.barrel-sauna-hero__placeholder>span:after{content:"";position:absolute;left:50%;bottom:11%;width:24%;height:46%;border:2px solid rgba(255,255,255,.66);transform:translateX(-50%)}
.barrel-sauna-hero__placeholder strong{font-size:1.45rem;font-weight:600}
.barrel-sauna-hero__placeholder small{color:rgba(255,255,255,.62)}
.barrel-sauna-hero__facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--tub-line);background:var(--tub-paper)}
.barrel-sauna-hero__facts>div{display:grid;gap:8px;min-height:128px;padding:29px max(24px,3.2vw);border-right:1px solid var(--tub-line)}
.barrel-sauna-hero__facts>div:last-child{border-right:0}
.barrel-sauna-hero__facts span{color:var(--tub-muted);font-size:.64rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.barrel-sauna-hero__facts strong{font-size:1.08rem;font-weight:620}
.barrel-sauna-intro,.barrel-sauna-size-guide,.barrel-sauna-materials,.barrel-sauna-heating,.barrel-sauna-construction,.barrel-sauna-process,.barrel-sauna-delivery,.barrel-sauna-resources,.barrel-sauna-faq{padding:clamp(95px,11vw,180px) max(3.5vw,calc((100vw - 1480px)/2))}
.barrel-sauna-intro{display:grid;grid-template-columns:minmax(0,.8fr) minmax(360px,.52fr);gap:clamp(50px,9vw,150px)}
.barrel-sauna-intro__heading h2,.barrel-sauna-layouts>header h2,.barrel-sauna-size-guide__header h2,.barrel-sauna-materials>header h2,.barrel-sauna-heating__header h2,.barrel-sauna-construction__copy h2,.barrel-sauna-process__header h2,.barrel-sauna-delivery__heading h2,.barrel-sauna-resources__header h2,.barrel-sauna-faq>header h2{max-width:1000px;margin:12px 0 0;font-size:clamp(3rem,5.5vw,6.5rem);line-height:.98;letter-spacing:-.045em}
.barrel-sauna-intro__copy{padding-top:40px;color:var(--tub-muted);font-size:1.04rem;line-height:1.75}
.barrel-sauna-intro__copy p{margin:0 0 22px}
.barrel-sauna-benefits{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:25px;border-top:1px solid var(--tub-line);border-left:1px solid var(--tub-line)}
.barrel-sauna-benefits article{min-height:250px;padding:34px;border-right:1px solid var(--tub-line);border-bottom:1px solid var(--tub-line)}
.barrel-sauna-benefits span,.barrel-sauna-delivery__steps span{color:var(--tub-green);font-size:.68rem;font-weight:760;letter-spacing:.12em}
.barrel-sauna-benefits h3,.barrel-sauna-delivery__steps h3{margin:60px 0 10px;font-size:1.35rem}
.barrel-sauna-benefits p,.barrel-sauna-delivery__steps p{margin:0;color:var(--tub-muted);line-height:1.62}
.barrel-sauna-layouts{padding:clamp(95px,10vw,165px) max(3.5vw,calc((100vw - 1480px)/2));background:#e8e4db}
.barrel-sauna-layouts>header{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.38fr);gap:70px;align-items:end;margin-bottom:65px}
.barrel-sauna-layouts>header .eyebrow,.barrel-sauna-layouts>header h2{grid-column:1}
.barrel-sauna-layouts>header>p:last-child{grid-column:2;grid-row:1/3;margin:0;color:var(--tub-muted);line-height:1.65}
.barrel-sauna-layouts__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--tub-line);border-left:1px solid var(--tub-line)}
.barrel-sauna-layouts__grid article{min-height:440px;border-right:1px solid var(--tub-line);border-bottom:1px solid var(--tub-line);background:rgba(255,255,255,.36)}
.barrel-sauna-layouts__media{position:relative;aspect-ratio:1.42;overflow:hidden;border-bottom:1px solid var(--tub-line);background:#fff}
.barrel-sauna-layouts__media img{display:block;width:100%;height:100%;object-fit:contain;padding:12px}
.barrel-sauna-layouts__media>span{position:absolute;left:18px;bottom:18px;width:48px;height:48px;display:grid;place-items:center;color:#fff;background:var(--tub-green);font-size:.72rem;font-weight:780;letter-spacing:.08em}
.barrel-sauna-layouts__copy{padding:27px 30px 32px}
.barrel-sauna-layouts__range{display:block;margin:0 0 12px;color:var(--tub-green);font-size:.62rem;font-weight:760;letter-spacing:.08em;line-height:1.45;text-transform:uppercase}
.barrel-sauna-layouts__grid h3{margin:0 0 12px;font-size:1.3rem}
.barrel-sauna-layouts__grid p{margin:0;color:var(--tub-muted);line-height:1.6}
.barrel-sauna-size-guide__header,.barrel-sauna-heating__header,.barrel-sauna-process__header{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.48fr);gap:clamp(45px,8vw,130px);align-items:end;margin-bottom:65px}
.barrel-sauna-size-guide__header>p,.barrel-sauna-heating__header>p,.barrel-sauna-process__header>p{margin:0;color:var(--tub-muted);line-height:1.7}
.barrel-sauna-size-guide__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--tub-line);border-left:1px solid var(--tub-line)}
.barrel-sauna-size-guide__grid article{min-height:280px;padding:34px;border-right:1px solid var(--tub-line);border-bottom:1px solid var(--tub-line);background:rgba(255,255,255,.36)}
.barrel-sauna-size-guide__grid span{color:var(--tub-green);font-size:clamp(1.8rem,2.7vw,3rem);font-weight:560;letter-spacing:-.035em}
.barrel-sauna-size-guide__grid h3{margin:62px 0 12px;font-size:1.35rem}
.barrel-sauna-size-guide__grid p{margin:0;color:var(--tub-muted);line-height:1.62}
.barrel-sauna-size-guide__lengths{display:grid;grid-template-columns:170px minmax(0,1fr);gap:20px 40px;align-items:center;margin-top:16px;padding:28px 34px;border:1px solid var(--tub-line);background:rgba(255,255,255,.28)}
.barrel-sauna-size-guide__lengths>span{color:var(--tub-muted);font-size:.68rem;font-weight:760;letter-spacing:.12em;text-transform:uppercase}
.barrel-sauna-size-guide__lengths>div{display:grid;grid-template-columns:repeat(9,minmax(62px,1fr));gap:6px}
.barrel-sauna-size-guide__lengths b{display:grid;place-items:center;min-height:48px;border:1px solid var(--tub-line);background:rgba(255,255,255,.4);font-size:.78rem}
.barrel-sauna-size-guide__note{margin:26px 0 0;color:var(--tub-muted);font-size:.9rem;line-height:1.6}
.barrel-sauna-size-guide__note a{color:var(--tub-ink);font-weight:700}
.barrel-sauna-materials>header{max-width:1080px;margin-bottom:70px}
.barrel-sauna-materials__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.barrel-sauna-materials__grid article{display:grid;grid-template-rows:auto 1fr;min-height:520px;border:1px solid var(--tub-line);background:#fff}
.barrel-sauna-materials__sample{min-height:0;aspect-ratio:1.75;margin:0;overflow:hidden;border-bottom:1px solid var(--tub-line);background:#fff}
.barrel-sauna-materials__sample img{display:block;width:100%;height:100%;object-fit:contain;padding:18px}
.barrel-sauna-materials__grid article>div{align-self:end;padding:32px 35px 36px}
.barrel-sauna-materials__grid .eyebrow{margin:0 0 10px;color:var(--tub-muted)}
.barrel-sauna-materials__grid h3{margin:0 0 12px;font-size:1.55rem}
.barrel-sauna-materials__grid p{margin:0;color:var(--tub-muted);line-height:1.65}
.barrel-sauna-materials__facts{margin:28px 0 0;border-top:1px solid var(--tub-line)}
.barrel-sauna-materials__facts>div{display:grid;grid-template-columns:108px minmax(0,1fr);gap:20px;padding:14px 0;border-bottom:1px solid var(--tub-line)}
.barrel-sauna-materials__facts dt{color:var(--tub-muted);font-size:.64rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}
.barrel-sauna-materials__facts dd{margin:0;font-size:.84rem;font-weight:620}
.barrel-sauna-lengths{display:grid;grid-template-columns:170px minmax(0,1fr);gap:20px 40px;align-items:start;margin-top:16px;padding:35px;border:1px solid var(--tub-line)}
.barrel-sauna-lengths>span{padding-top:10px;color:var(--tub-muted);font-size:.68rem;font-weight:760;letter-spacing:.12em;text-transform:uppercase}
.barrel-sauna-lengths>div{display:grid;grid-template-columns:repeat(9,minmax(62px,1fr));gap:6px}
.barrel-sauna-lengths b{display:grid;place-items:center;min-height:48px;border:1px solid var(--tub-line);font-size:.78rem}
.barrel-sauna-lengths p{grid-column:2;margin:0;color:var(--tub-muted);font-size:.84rem;line-height:1.55}
.barrel-sauna-heating{background:#2c3e36;color:#fff}
.barrel-sauna-heating__header>p{color:rgba(255,255,255,.68)}
.barrel-sauna-heating__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.18);border-left:1px solid rgba(255,255,255,.18)}
.barrel-sauna-heating__grid article{min-height:310px;padding:34px;border-right:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}
.barrel-sauna-heating__grid span{color:rgba(255,255,255,.5);font-size:.68rem;font-weight:760;letter-spacing:.12em}
.barrel-sauna-heating__grid h3{margin:80px 0 14px;color:#fff;font-size:1.45rem}
.barrel-sauna-heating__grid p{margin:0;color:rgba(255,255,255,.68);line-height:1.65}
.barrel-sauna-heating__note{margin:28px 0 0;color:rgba(255,255,255,.68)}
.barrel-sauna-heating__note a{color:#fff;font-weight:700}
.barrel-sauna-construction{display:grid;grid-template-columns:minmax(340px,.82fr) minmax(420px,1.18fr);gap:clamp(45px,8vw,130px);align-items:center;background:#e8e4db}
.barrel-sauna-construction__media{aspect-ratio:1;margin:0;overflow:hidden;background:#fff}
.barrel-sauna-construction__media img{display:block;width:100%;height:100%;object-fit:contain;padding:clamp(24px,4vw,65px)}
.barrel-sauna-construction__copy>p:not(.eyebrow){max-width:700px;margin:28px 0 36px;color:var(--tub-muted);font-size:1.03rem;line-height:1.72}
.barrel-sauna-construction__copy dl{margin:0;border-top:1px solid var(--tub-line)}
.barrel-sauna-construction__copy dl>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:25px;padding:19px 0;border-bottom:1px solid var(--tub-line)}
.barrel-sauna-construction__copy dt{color:var(--tub-muted);font-size:.66rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}
.barrel-sauna-construction__copy dd{margin:0;font-weight:620}
.barrel-sauna-construction__link{display:inline-flex;margin-top:30px;padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:700;text-align:left;text-decoration:underline;cursor:pointer}
.sauna-phase-nav{grid-template-columns:repeat(4,minmax(0,1fr))}
.barrel-sauna-detail .tub-phase-actions--first{justify-content:flex-end}
.sauna-option__icon{border-radius:50%;background:#f1eee7}
.sauna-option__icon:before{inset:10px;border:1px solid rgba(44,62,54,.3);border-radius:50%;box-shadow:none;background:transparent}
.sauna-option__icon:after{display:none}
.sauna-option-group[data-sauna-group="layout-type"] .tub-option,.sauna-option-group[data-sauna-group="frame-wood"] .tub-option{grid-template-columns:76px minmax(0,1fr) 24px}
.sauna-option-group[data-sauna-group="layout-type"] .sauna-option__icon,.sauna-option-group[data-sauna-group="frame-wood"] .sauna-option__icon{width:76px;height:56px;border-radius:0;background-color:#fff;background-repeat:no-repeat;background-position:center;background-size:contain}
.sauna-option-group[data-sauna-group="layout-type"] .sauna-option__icon:before,.sauna-option-group[data-sauna-group="frame-wood"] .sauna-option__icon:before{display:none}
.sauna-option-row[data-option-id="sauna-only"] .sauna-option__icon{background-image:url("../images/products/sudova-sauna/layout-s.webp")}
.sauna-option-row[data-option-id="sauna-terrace"] .sauna-option__icon{background-image:url("../images/products/sudova-sauna/layout-t.webp")}
.sauna-option-row[data-option-id="sauna-dressing"] .sauna-option__icon{background-image:url("../images/products/sudova-sauna/layout-d.webp")}
.sauna-option-row[data-option-id="sauna-dressing-terrace"] .sauna-option__icon{background-image:url("../images/products/sudova-sauna/layout-dt.webp")}
.sauna-option-row[data-option-id="wood-spruce"] .sauna-option__icon{background-image:url("../images/products/sudova-sauna/material-spruce.webp")}
.sauna-option-row[data-option-id="wood-thermo"] .sauna-option__icon{background-image:url("../images/products/sudova-sauna/material-thermowood.webp")}
.sauna-option-group[data-sauna-group="roof"] .tub-option,.sauna-option-group[data-sauna-group="bench"] .tub-option{grid-template-columns:96px minmax(0,1fr) 24px}
.sauna-option-group[data-sauna-group="roof"] .tub-option__swatch,.sauna-option-group[data-sauna-group="roof"] .sauna-option__icon,.sauna-option-group[data-sauna-group="bench"] .sauna-option__icon{width:96px;height:72px;border-radius:0;background-color:#eee;background-repeat:no-repeat;background-position:center;background-size:cover;box-shadow:none}
.sauna-option-group[data-sauna-group="roof"] .sauna-option__icon:before,.sauna-option-group[data-sauna-group="bench"] .sauna-option__icon:before,.sauna-option-group[data-sauna-group="door"] .sauna-option__icon:before,.sauna-option-group[data-sauna-group="partition-door"] .sauna-option__icon:before,.sauna-option-group[data-sauna-group="window"] .sauna-option__icon:before,.sauna-option-group[data-sauna-group="front-window"] .sauna-option__icon:before{display:none}
.sauna-option-group[data-sauna-group="door"] .tub-option,.sauna-option-group[data-sauna-group="partition-door"] .tub-option{grid-template-columns:104px minmax(0,1fr) 24px}
.sauna-option-group[data-sauna-group="door"] .sauna-option__icon,.sauna-option-group[data-sauna-group="partition-door"] .sauna-option__icon{width:104px;height:104px;border-radius:0;background-color:#eee;background-repeat:no-repeat;background-position:center;background-size:cover;box-shadow:none}
.sauna-option-group[data-sauna-group="window"] .tub-option,.sauna-option-group[data-sauna-group="front-window"] .tub-option{grid-template-columns:104px minmax(0,1fr) 24px}
.sauna-option-group[data-sauna-group="window"] .sauna-option__icon,.sauna-option-group[data-sauna-group="front-window"] .sauna-option__icon{width:104px;height:82px;border-radius:0;background-color:#f7f5f0;background-repeat:no-repeat;background-position:center;background-size:contain;box-shadow:none}
.sauna-option-group[data-sauna-group="front-window"] .tub-option-grid{grid-template-columns:1fr}
.sauna-option-row[data-option-id="roof-black"] .tub-option__swatch{background-image:url("../images/products/sudova-sauna/options/roof-black.webp")}
.sauna-option-row[data-option-id="roof-grey"] .tub-option__swatch{background-image:url("../images/products/sudova-sauna/options/roof-grey.webp")}
.sauna-option-row[data-option-id="roof-red"] .tub-option__swatch{background-image:url("../images/products/sudova-sauna/options/roof-red.webp")}
.sauna-option-row[data-option-id="roof-brown"] .tub-option__swatch{background-image:url("../images/products/sudova-sauna/options/roof-brown.webp")}
.sauna-option-row[data-option-id="roof-green"] .tub-option__swatch{background-image:url("../images/products/sudova-sauna/options/roof-green.webp")}
.sauna-option-row[data-option-id="roof-double"] .sauna-option__icon{background-image:url("../images/products/sudova-sauna/options/roof-double.webp")}
.sauna-option-row[data-option-id="bench-thermo-open"] .sauna-option__icon,.sauna-option-row[data-option-id="bench-alder-open"] .sauna-option__icon{background-image:url("../images/products/sudova-sauna/options/bench-open.webp")}
.sauna-option-row[data-option-id="bench-thermo-closed"] .sauna-option__icon,.sauna-option-row[data-option-id="bench-alder-closed"] .sauna-option__icon{background-image:url("../images/products/sudova-sauna/options/bench-closed.webp")}
.sauna-option-row[data-option-id="door-wood"] .sauna-option__icon{background-image:url("../images/products/sauna-options/door-wood.webp")}
.sauna-option-row[data-option-id="door-glass"] .sauna-option__icon{background-image:url("../images/products/sauna-options/door-glass.webp")}
.sauna-option-row[data-option-id="partition-door-wood"] .sauna-option__icon{background-image:url("../images/products/sauna-options/door-wood.webp")}
.sauna-option-row[data-option-id="partition-door-glass"] .sauna-option__icon{background-image:url("../images/products/sauna-options/door-glass.webp")}
.sauna-option-row[data-option-id="window-none"] .sauna-option__icon{background-image:url("../images/products/sauna-options/window-none.webp")}
.sauna-option-row[data-option-id="window-two-front"] .sauna-option__icon{background-image:url("../images/products/sauna-options/window-two-front.webp")}
.sauna-option-row[data-option-id="window-two-opening"] .sauna-option__icon{background-image:url("../images/products/sauna-options/window-two-opening.webp")}
.sauna-option-row[data-option-id="window-panorama-half"] .sauna-option__icon{background-image:url("../images/products/sauna-options/window-panorama-half.webp")}
.sauna-option-row[data-option-id="window-front-full"] .sauna-option__icon{background-image:url("../images/products/sauna-options/window-front-full.webp")}
.sauna-option-row[data-option-id="window-panorama-full"] .sauna-option__icon{background-image:url("../images/products/sauna-options/window-panorama-full.webp")}
.sauna-option-group[data-sauna-group="length"] .tub-option{grid-template-columns:minmax(0,1fr) 24px}
.sauna-option-group[data-sauna-group="length"] .sauna-option__icon{display:none}
.sauna-option-row[hidden],.sauna-option-group[hidden]{display:none!important}
.sauna-config-summary .tub-config-summary__list{padding:10px 27px 16px}
.sauna-config-summary__delivery-note{padding:0 27px 22px;border-top:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.62);font-size:.72rem;line-height:1.55}
.sauna-config-summary__delivery-note summary{padding:17px 0 6px;color:#fff;font-weight:700;cursor:pointer}
.barrel-sauna-process__steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;border-top:1px solid var(--tub-line);border-left:1px solid var(--tub-line);list-style:none}
.barrel-sauna-process__steps li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:24px;min-height:210px;padding:32px;border-right:1px solid var(--tub-line);border-bottom:1px solid var(--tub-line)}
.barrel-sauna-process__steps span{color:var(--tub-green);font-size:.68rem;font-weight:760;letter-spacing:.12em}
.barrel-sauna-process__steps h3{margin:0 0 12px;font-size:1.35rem}
.barrel-sauna-process__steps p{margin:0;color:var(--tub-muted);line-height:1.65}
.barrel-sauna-delivery{background:#f0ede6}
.barrel-sauna-delivery__heading{max-width:1100px;margin-bottom:70px}
.barrel-sauna-delivery__steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--tub-line);border-left:1px solid var(--tub-line)}
.barrel-sauna-delivery__steps article{min-height:285px;padding:32px;border-right:1px solid var(--tub-line);border-bottom:1px solid var(--tub-line)}
.barrel-sauna-resources__header{max-width:1120px;margin-bottom:65px}
.barrel-sauna-resources__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--tub-line);border-left:1px solid var(--tub-line)}
.barrel-sauna-resources__grid>a{display:flex;flex-direction:column;min-height:340px;padding:34px;border-right:1px solid var(--tub-line);border-bottom:1px solid var(--tub-line);text-decoration:none;background:rgba(255,255,255,.3);transition:background-color .2s ease,color .2s ease}
.barrel-sauna-resources__grid>a:hover,.barrel-sauna-resources__grid>a:focus-visible{color:#fff;background:var(--tub-green)}
.barrel-sauna-resources__grid span{font-size:.68rem;font-weight:760;letter-spacing:.12em;text-transform:uppercase}
.barrel-sauna-resources__grid h3{margin:72px 0 13px;font-size:1.45rem}
.barrel-sauna-resources__grid p{margin:0;color:var(--tub-muted);line-height:1.62}
.barrel-sauna-resources__grid strong{margin-top:auto;padding-top:32px;font-size:.84rem}
.barrel-sauna-resources__grid>a:hover p,.barrel-sauna-resources__grid>a:focus-visible p{color:rgba(255,255,255,.72)}
.barrel-sauna-faq{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(420px,.58fr);gap:clamp(55px,9vw,150px)}
.barrel-sauna-faq__list{border-top:1px solid var(--tub-line)}
.barrel-sauna-faq__list details{border-bottom:1px solid var(--tub-line)}
.barrel-sauna-faq__list summary{position:relative;padding:26px 45px 26px 0;font-size:1.02rem;font-weight:680;cursor:pointer;list-style:none}
.barrel-sauna-faq__list summary::-webkit-details-marker{display:none}
.barrel-sauna-faq__list summary:after{content:"+";position:absolute;right:0;top:22px;font-size:1.4rem;font-weight:400}
.barrel-sauna-faq__list details[open] summary:after{content:"−"}
.barrel-sauna-faq__list p{margin:0;padding:0 45px 27px 0;color:var(--tub-muted);line-height:1.7}
.barrel-sauna-detail .tub-final-cta{background:var(--tub-green)}

@media(min-width:721px){
  .barrel-sauna-detail .barrel-sauna-intro{padding-top:clamp(88px,5.5vw,112px);padding-bottom:clamp(58px,3.8vw,76px)}
  .barrel-sauna-detail .product-gallery-strip{padding-top:clamp(88px,5.5vw,112px);padding-bottom:clamp(68px,4.2vw,86px)}
  .barrel-sauna-detail .barrel-sauna-layouts{padding-top:clamp(88px,5.5vw,112px);padding-bottom:clamp(58px,3.8vw,76px)}
  .barrel-sauna-detail .barrel-sauna-size-guide{padding-top:clamp(88px,5.5vw,112px);padding-bottom:clamp(58px,3.8vw,76px)}
  .barrel-sauna-detail .barrel-sauna-materials{padding-top:clamp(88px,5.5vw,112px);padding-bottom:clamp(58px,3.8vw,76px)}
  .barrel-sauna-detail .barrel-sauna-heating{padding-top:clamp(88px,5.5vw,112px);padding-bottom:clamp(72px,4.6vw,94px)}
  .barrel-sauna-detail .barrel-sauna-construction{padding-top:clamp(72px,4.6vw,94px);padding-bottom:clamp(72px,4.6vw,94px)}
  .barrel-sauna-detail .tub-configurator{padding-top:clamp(88px,5.5vw,112px);padding-bottom:clamp(72px,4.6vw,94px)}
  .barrel-sauna-detail .barrel-sauna-process{padding-top:clamp(88px,5.5vw,112px);padding-bottom:clamp(58px,3.8vw,76px)}
  .barrel-sauna-detail .barrel-sauna-delivery{padding-top:clamp(88px,5.5vw,112px);padding-bottom:clamp(58px,3.8vw,76px)}
  .barrel-sauna-detail .barrel-sauna-resources{padding-top:clamp(88px,5.5vw,112px);padding-bottom:clamp(58px,3.8vw,76px)}
  .barrel-sauna-detail .barrel-sauna-faq{padding-top:clamp(88px,5.5vw,112px);padding-bottom:clamp(88px,5.5vw,112px)}
  .barrel-sauna-detail .tub-final-cta{padding-top:clamp(88px,5.5vw,112px);padding-bottom:clamp(88px,5.5vw,112px)}
}

@media(min-width:961px){
  .barrel-sauna-detail .tub-config-summary{top:174px;display:flex;flex-direction:column;max-height:calc(100svh - 194px);overflow:hidden}
  .barrel-sauna-detail .tub-config-summary__head{flex:0 0 auto;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);align-items:baseline;gap:10px;padding:14px 20px}
  .barrel-sauna-detail .tub-config-summary__head strong{min-width:0;font-size:.92rem;line-height:1.25;text-align:right}
  .barrel-sauna-detail .tub-config-summary__price{flex:0 0 auto;gap:2px;padding:15px 20px}
  .barrel-sauna-detail .tub-config-summary__price strong{font-size:clamp(1.45rem,1.8vw,1.85rem)}
  .barrel-sauna-detail .tub-config-summary__delivery{flex:0 0 auto;gap:3px 12px;padding:13px 20px}
  .barrel-sauna-detail .tub-config-summary__delivery>small{font-size:.64rem;line-height:1.35}
  .barrel-sauna-detail .tub-config-summary__progress{flex:0 0 auto;gap:7px;padding:12px 20px}
  .barrel-sauna-detail .tub-config-summary__list{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:8px 20px 12px}
  .barrel-sauna-detail .tub-config-summary__list div{padding:8px 0}
  .barrel-sauna-detail .tub-config-summary__edit{flex:0 0 auto;margin:8px 20px 12px}
  .barrel-sauna-detail .sauna-config-summary__delivery-note{flex:0 0 auto;padding:0 20px 14px}
}

@media(max-width:1180px){
  .barrel-sauna-hero{grid-template-columns:minmax(380px,.9fr) minmax(0,1.1fr)}
  .barrel-sauna-hero__media{min-height:680px}
  .barrel-sauna-layouts__grid,.barrel-sauna-delivery__steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .barrel-sauna-size-guide__lengths>div{grid-template-columns:repeat(5,minmax(62px,1fr))}
  .barrel-sauna-lengths>div{grid-template-columns:repeat(5,minmax(62px,1fr))}
  .sauna-phase-nav{grid-template-columns:repeat(4,minmax(150px,1fr))}
}
@media(max-width:960px){
  .barrel-sauna-hero{grid-template-columns:1fr}
  .barrel-sauna-hero__copy{padding:85px max(24px,5vw) 60px}
  .barrel-sauna-hero__copy h1{font-size:clamp(4.1rem,13vw,7rem)}
  .barrel-sauna-hero__media{min-height:65vw}
  .barrel-sauna-hero__facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .barrel-sauna-hero__facts>div:nth-child(2){border-right:0}
  .barrel-sauna-hero__facts>div:nth-child(-n+2){border-bottom:1px solid var(--tub-line)}
  .barrel-sauna-intro,.barrel-sauna-faq{grid-template-columns:1fr;gap:35px}
  .barrel-sauna-intro__copy{padding-top:0}
  .barrel-sauna-benefits{grid-template-columns:1fr}
  .barrel-sauna-benefits article{min-height:220px}
  .barrel-sauna-layouts>header{grid-template-columns:1fr;gap:22px}
  .barrel-sauna-layouts>header>p:last-child{grid-column:1;grid-row:auto}
  .barrel-sauna-size-guide__header,.barrel-sauna-heating__header,.barrel-sauna-process__header{grid-template-columns:1fr;gap:28px}
  .barrel-sauna-size-guide__grid,.barrel-sauna-heating__grid,.barrel-sauna-resources__grid{grid-template-columns:1fr}
  .barrel-sauna-size-guide__grid article,.barrel-sauna-heating__grid article,.barrel-sauna-resources__grid>a{min-height:240px}
  .barrel-sauna-materials__grid{grid-template-columns:1fr}
  .barrel-sauna-construction{grid-template-columns:1fr;gap:45px}
  .barrel-sauna-construction__media{max-width:680px}
  .barrel-sauna-lengths{grid-template-columns:1fr}
  .barrel-sauna-lengths p{grid-column:1}
  .sauna-phase-nav{grid-template-columns:repeat(4,142px)}
}
@media(max-width:620px){
  .barrel-sauna-hero__copy{padding:75px 16px 48px}
  .barrel-sauna-hero__copy h1{font-size:3.9rem}
  .barrel-sauna-hero__lead{font-size:1.08rem}
  .barrel-sauna-hero__media{min-height:88vw}
  .barrel-sauna-hero__facts>div{min-height:104px;padding:21px 16px}
  .barrel-sauna-hero__facts strong{font-size:.91rem}
  .barrel-sauna-intro,.barrel-sauna-size-guide,.barrel-sauna-materials,.barrel-sauna-heating,.barrel-sauna-construction,.barrel-sauna-process,.barrel-sauna-delivery,.barrel-sauna-resources,.barrel-sauna-faq,.barrel-sauna-layouts{padding:75px 16px}
  .barrel-sauna-intro__heading h2,.barrel-sauna-layouts>header h2,.barrel-sauna-size-guide__header h2,.barrel-sauna-materials>header h2,.barrel-sauna-heating__header h2,.barrel-sauna-construction__copy h2,.barrel-sauna-process__header h2,.barrel-sauna-delivery__heading h2,.barrel-sauna-resources__header h2,.barrel-sauna-faq>header h2{font-size:2.75rem}
  .barrel-sauna-layouts__grid,.barrel-sauna-delivery__steps{grid-template-columns:1fr}
  .barrel-sauna-layouts__grid article{min-height:0}
  .barrel-sauna-delivery__steps article{min-height:235px;padding:25px}
  .barrel-sauna-delivery__steps h3{margin-top:46px}
  .barrel-sauna-layouts__copy{padding:24px}
  .barrel-sauna-materials__grid article{min-height:0}
  .barrel-sauna-materials__sample{min-height:0}
  .barrel-sauna-materials__grid article>div{padding:25px}
  .barrel-sauna-construction__copy dl>div{grid-template-columns:1fr;gap:6px}
  .barrel-sauna-size-guide__lengths{grid-template-columns:1fr;padding:22px 16px}
  .barrel-sauna-size-guide__lengths>div{grid-template-columns:repeat(3,minmax(0,1fr))}
  .barrel-sauna-size-guide__grid article,.barrel-sauna-heating__grid article,.barrel-sauna-resources__grid>a{padding:25px}
  .barrel-sauna-size-guide__grid h3,.barrel-sauna-heating__grid h3,.barrel-sauna-resources__grid h3{margin-top:46px}
  .barrel-sauna-process__steps{grid-template-columns:1fr}
  .barrel-sauna-process__steps li{grid-template-columns:38px minmax(0,1fr);gap:16px;min-height:0;padding:25px}
  .sauna-option-group[data-sauna-group="layout-type"] .tub-option,.sauna-option-group[data-sauna-group="frame-wood"] .tub-option{grid-template-columns:58px minmax(0,1fr) 22px}
  .sauna-option-group[data-sauna-group="layout-type"] .sauna-option__icon,.sauna-option-group[data-sauna-group="frame-wood"] .sauna-option__icon{width:58px;height:44px}
  .sauna-option-group[data-sauna-group="roof"] .tub-option,.sauna-option-group[data-sauna-group="bench"] .tub-option{grid-template-columns:72px minmax(0,1fr) 22px}
  .sauna-option-group[data-sauna-group="roof"] .tub-option__swatch,.sauna-option-group[data-sauna-group="roof"] .sauna-option__icon,.sauna-option-group[data-sauna-group="bench"] .sauna-option__icon{width:72px;height:54px}
  .sauna-option-group[data-sauna-group="door"] .tub-option,.sauna-option-group[data-sauna-group="partition-door"] .tub-option{grid-template-columns:76px minmax(0,1fr) 22px}
  .sauna-option-group[data-sauna-group="door"] .sauna-option__icon,.sauna-option-group[data-sauna-group="partition-door"] .sauna-option__icon{width:76px;height:76px}
  .sauna-option-group[data-sauna-group="window"] .tub-option,.sauna-option-group[data-sauna-group="front-window"] .tub-option{grid-template-columns:76px minmax(0,1fr) 22px}
  .sauna-option-group[data-sauna-group="window"] .sauna-option__icon,.sauna-option-group[data-sauna-group="front-window"] .sauna-option__icon{width:76px;height:60px}
  .sauna-option-group[data-sauna-group="length"] .tub-option{grid-template-columns:minmax(0,1fr) 22px}
  .barrel-sauna-lengths{padding:22px 16px}
  .barrel-sauna-lengths>div{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sauna-config-summary .tub-config-summary__list{padding-left:20px;padding-right:20px}
}

/* 0.41.25 — Sudová sauna: výrobní limity dispozic a technická příprava. */
.sauna-option-group[data-sauna-group="length"] .sauna-option-row.is-unavailable .tub-option{
  cursor:not-allowed;
  opacity:.56;
  background:rgba(232,228,219,.45);
}
.sauna-option-group[data-sauna-group="length"] .sauna-option-row.is-unavailable [data-sauna-option-price]{display:none}
.sauna-option__unavailable{
  display:block;
  margin-top:4px;
  color:#8a4b40;
  font-size:.67rem;
  font-weight:720;
  line-height:1.35;
}
.sauna-option__unavailable[hidden]{display:none!important}
.sauna-length-technical{
  margin-top:14px;
  border:1px solid rgba(44,62,54,.2);
  background:#f5f2eb;
}
.sauna-length-technical[hidden]{display:none!important}
.sauna-length-technical header{
  display:grid;
  gap:5px;
  padding:18px 20px;
  border-bottom:1px solid var(--tub-line);
}
.sauna-length-technical header span{
  color:var(--tub-green);
  font-size:.61rem;
  font-weight:760;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.sauna-length-technical header strong{font-size:.96rem;font-weight:680}
.sauna-length-technical header b{font:inherit}
.sauna-length-technical dl{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin:0;
}
.sauna-length-technical dl>div{
  display:grid;
  gap:6px;
  min-width:0;
  padding:17px 20px;
  border-right:1px solid var(--tub-line);
}
.sauna-length-technical dl>div:last-child{border-right:0}
.sauna-length-technical dt{
  color:var(--tub-muted);
  font-size:.62rem;
  font-weight:720;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.sauna-length-technical dd{margin:0;font-size:.91rem;font-weight:680}
.sauna-length-technical>p{
  margin:0;
  padding:13px 20px;
  border-top:1px solid var(--tub-line);
  color:var(--tub-muted);
  font-size:.71rem;
  line-height:1.5;
}
@media(max-width:820px){
  .sauna-length-technical dl{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sauna-length-technical dl>div:nth-child(2){border-right:0}
  .sauna-length-technical dl>div:nth-child(-n+2){border-bottom:1px solid var(--tub-line)}
}
@media(max-width:480px){
  .sauna-length-technical header,.sauna-length-technical dl>div{padding:15px 14px}
  .sauna-length-technical>p{padding:12px 14px}
  .sauna-length-technical dt{font-size:.57rem}
  .sauna-length-technical dd{font-size:.83rem}
}

/* Dřevěné sauny 0.40.0 — společný technologický příběh Acryl Elite / External */
.tub-heater-story{padding:clamp(88px,9vw,150px) max(3.5vw,calc((100vw - 1480px)/2));background:#e8e4db}
.tub-heater-story__header{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.58fr);gap:clamp(42px,8vw,130px);align-items:end;margin-bottom:clamp(44px,5.5vw,78px)}
.tub-heater-story__header h2{max-width:930px;margin:0;font-size:clamp(3rem,5.5vw,6.25rem);line-height:.94;letter-spacing:-.055em}
.tub-heater-story__header>div:last-child p{max-width:570px;margin:0;color:var(--tub-muted);font-size:clamp(.96rem,1.15vw,1.08rem);line-height:1.72}
.tub-heater-story__feature{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);min-height:600px;border:1px solid rgba(44,62,54,.16);background:#f7f4ed}
.tub-heater-story__media{position:relative;min-height:600px;margin:0;overflow:hidden;background:#d8d2c6;border-right:1px solid rgba(44,62,54,.16)}
.tub-heater-story__media img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform var(--hd-motion-slow,700ms) cubic-bezier(.2,.7,.2,1)}
.tub-heater-story__feature:hover .tub-heater-story__media img{transform:scale(1.018)}
.tub-heater-story--acryl-elite .tub-heater-story__media img{object-position:center 67%}
.tub-heater-story--acryl-external .tub-heater-story__media img{object-position:center}
.tub-heater-story--fiberglass-external .tub-heater-story__media--cutout,
.tub-heater-story--quadro-external .tub-heater-story__media--cutout{background:#eee9df}
.tub-heater-story--fiberglass-external .tub-heater-story__media--cutout:after,
.tub-heater-story--quadro-external .tub-heater-story__media--cutout:after{content:"";position:absolute;left:13%;right:13%;bottom:8%;height:8%;border-radius:50%;background:rgba(27,31,29,.13);filter:blur(22px)}
.tub-heater-story--fiberglass-external .tub-heater-story__media--cutout img,
.tub-heater-story--quadro-external .tub-heater-story__media--cutout img{inset:5% 7% 4%;z-index:1;width:86%;height:91%;object-fit:contain;object-position:center}
.tub-heater-story__content{display:flex;flex-direction:column;justify-content:center;padding:clamp(34px,5vw,76px)}
.tub-heater-story__content h3{max-width:620px;margin:8px 0 22px;font-size:clamp(2.2rem,3.7vw,4.5rem);line-height:.98;letter-spacing:-.045em}
.tub-heater-story__content>p:not(.eyebrow){max-width:610px;margin:0;color:var(--tub-muted);line-height:1.7}
.tub-heater-story__metrics{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(34px,4vw,58px);border-top:1px solid rgba(44,62,54,.16);border-bottom:1px solid rgba(44,62,54,.16)}
.tub-heater-story__metrics div{padding:22px 16px 22px 0;border-right:1px solid rgba(44,62,54,.16)}
.tub-heater-story__metrics div+div{padding-left:18px}.tub-heater-story__metrics div:last-child{border-right:0}
.tub-heater-story__metrics strong{display:block;margin-bottom:7px;font-size:clamp(1rem,1.4vw,1.28rem);letter-spacing:-.025em}.tub-heater-story__metrics span{display:block;color:var(--tub-muted);font-size:.72rem;line-height:1.45}
.tub-heater-compare{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(24px,3vw,40px);border:1px solid rgba(44,62,54,.16);background:rgba(255,255,255,.28)}
.tub-heater-compare article{position:relative;min-height:245px;padding:clamp(24px,3vw,40px);border-right:1px solid rgba(44,62,54,.16)}.tub-heater-compare article:last-child{border-right:0}
.tub-heater-compare article.is-current{background:var(--tub-green);color:#fff}
.tub-heater-compare article.is-current:before{content:'TENTO MODEL';position:absolute;right:18px;top:18px;font-size:.56rem;font-weight:850;letter-spacing:.13em;color:rgba(255,255,255,.62)}
.tub-heater-compare span{display:block;margin-bottom:22px;color:var(--tub-muted);font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.tub-heater-compare article.is-current span{color:rgba(255,255,255,.66)}
.tub-heater-compare strong{display:block;max-width:260px;font-size:1.2rem;line-height:1.22}.tub-heater-compare b{display:block;margin:12px 0 20px;font-size:clamp(2rem,3vw,3.6rem);line-height:.95;letter-spacing:-.05em}.tub-heater-compare p{max-width:330px;margin:0;color:var(--tub-muted);font-size:.88rem;line-height:1.55}.tub-heater-compare article.is-current p{color:rgba(255,255,255,.72)}
.tub-heater-story__note{max-width:900px;margin:22px 0 0;color:var(--tub-muted);font-size:.72rem;line-height:1.55}
@media(max-width:980px){.tub-heater-story__header,.tub-heater-story__feature{grid-template-columns:1fr}.tub-heater-story__header{gap:26px}.tub-heater-story__media{min-height:520px;border-right:0;border-bottom:1px solid rgba(44,62,54,.16)}.tub-heater-compare{grid-template-columns:1fr}.tub-heater-compare article{min-height:0;border-right:0;border-bottom:1px solid rgba(44,62,54,.16)}.tub-heater-compare article:last-child{border-bottom:0}}
@media(max-width:720px){.tub-heater-story{padding:72px 16px}.tub-heater-story__header{margin-bottom:32px}.tub-heater-story__header h2{font-size:clamp(2.65rem,11.7vw,4rem)}.tub-heater-story__feature{min-height:0}.tub-heater-story__media{min-height:390px}.tub-heater-story__content{padding:30px 20px}.tub-heater-story__metrics{grid-template-columns:1fr;margin-top:30px}.tub-heater-story__metrics div,.tub-heater-story__metrics div+div{padding:15px 0;border-right:0;border-bottom:1px solid rgba(44,62,54,.13)}.tub-heater-story__metrics div:last-child{border-bottom:0}.tub-heater-compare article{padding:24px 20px}.tub-heater-compare article.is-current:before{top:15px;right:15px}}
@media(prefers-reduced-motion:reduce){.tub-heater-story__media img{transition:none}.tub-heater-story__feature:hover .tub-heater-story__media img{transform:none}}


/* Dřevěné sauny 0.40.2 — product detail vertical rhythm
 * Transparent data-page-bg sections previously stacked generous bottom + top
 * paddings. On large displays this created 250–350 px dead zones between
 * configurator, specs, FAQ and other editorial blocks. Keep the premium air,
 * but make every transition intentional and consistent.
 */
@media (min-width:721px){
  .hd-product-page{
    --hd-section-top:clamp(68px,4.4vw,88px);
    --hd-section-bottom:clamp(38px,2.7vw,52px);
    --hd-section-emphasis:clamp(80px,5.2vw,104px);
  }

  /* Intro keeps the compact top spacing below hero facts, but no longer
     contributes a second oversized gap before the heater story. */
  .hd-product-page .tub-intro{
    padding-bottom:var(--hd-section-bottom);
  }

  .hd-product-page .tub-heater-story{
    padding-top:var(--hd-section-emphasis);
    padding-bottom:var(--hd-section-bottom);
  }

  .hd-product-page .tub-capacity--comparison{
    padding-top:var(--hd-section-top);
    padding-bottom:var(--hd-section-bottom);
  }

  .hd-product-page .tub-material-explorer{
    padding-top:var(--hd-section-top);
    padding-bottom:var(--hd-section-bottom);
  }

  .hd-product-page .tub-product-gallery.product-gallery-strip{
    padding-top:var(--hd-section-emphasis);
    padding-bottom:var(--hd-section-bottom);
  }

  .hd-product-page .tub-configurator{
    padding-top:var(--hd-section-top);
    padding-bottom:var(--hd-section-bottom);
  }

  .hd-product-page .tub-specs{
    padding-top:var(--hd-section-top);
    padding-bottom:var(--hd-section-bottom);
  }

  .hd-product-page .tub-faq{
    padding-top:var(--hd-section-top);
    padding-bottom:var(--hd-section-bottom);
  }

  .hd-product-page .tub-final-cta{
    padding-top:var(--hd-section-emphasis);
    padding-bottom:var(--hd-section-emphasis);
  }
}

/* Dřevěné sauny 0.40.6 — Quadro External / Elite capacity diagrams */
.quadro-plan--8 .quadro-plan__seat--1{left:21%;top:13%}
.quadro-plan--8 .quadro-plan__seat--2{right:21%;top:13%}
.quadro-plan--8 .quadro-plan__seat--3{right:9%;top:36%}
.quadro-plan--8 .quadro-plan__seat--4{right:14%;bottom:22%}
.quadro-plan--8 .quadro-plan__seat--5{left:auto;right:34%;bottom:10%}
.quadro-plan--8 .quadro-plan__seat--6{left:34%;top:auto;bottom:10%}
.quadro-plan--8 .quadro-plan__seat--7{left:14%;bottom:22%}
.quadro-plan--8 .quadro-plan__seat--8{left:9%;top:36%}

/* Dřevěné sauny 0.40.8 — přehledný třístupňový výběr externích kamen */
.tub-option-group--stove-matrix{padding-bottom:clamp(46px,5vw,74px)}
.tub-stove-matrix{display:grid;gap:14px}
.tub-stove-matrix__dimension{display:grid;grid-template-columns:minmax(120px,150px) minmax(0,1fr);gap:18px;align-items:start;padding:18px 0;border-top:1px solid var(--tub-line)}
.tub-stove-matrix__dimension:first-child{border-top:0;padding-top:0}
.tub-stove-matrix__dimension>span{padding-top:14px;font-size:.7rem;font-weight:760;letter-spacing:.1em;text-transform:uppercase;color:var(--tub-muted)}
.tub-stove-matrix__choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}
.tub-stove-matrix__choices button{min-height:76px;padding:13px 15px;border:1px solid var(--tub-line);background:#fff;color:var(--tub-ink);text-align:left;display:grid;align-content:center;gap:5px;cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,opacity .18s ease}
.tub-stove-matrix__choices button:hover:not(:disabled){border-color:rgba(44,62,54,.48)}
.tub-stove-matrix__choices button.is-active{border-color:var(--tub-green);box-shadow:inset 0 0 0 1px var(--tub-green);background:#fbfcfa}
.tub-stove-matrix__choices button:disabled{opacity:.38;cursor:not-allowed}
.tub-stove-matrix__choices strong{font-size:.93rem;font-weight:690;line-height:1.25}
.tub-stove-matrix__choices small{min-height:1em;font-size:.66rem;font-weight:680;line-height:1.25;color:var(--tub-green)}
.tub-stove-matrix__selection{margin-top:5px;padding:20px 22px;border:1px solid rgba(44,62,54,.28);background:var(--tub-green);color:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:24px;row-gap:5px;align-items:center}
.tub-stove-matrix__selection>span{grid-column:1/-1;font-size:.62rem;font-weight:760;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.62)}
.tub-stove-matrix__selection>strong{font-size:1.02rem;font-weight:690;line-height:1.3}
.tub-stove-matrix__selection>small{grid-column:1/2;font-size:.78rem;line-height:1.4;color:rgba(255,255,255,.72)}
.tub-stove-matrix__selection>b{grid-column:2/3;grid-row:2/4;font-size:.82rem;font-weight:720;white-space:nowrap;color:#fff}
.tub-option__content b[data-price-kind="surcharge"],.tub-option__content b[data-price-kind="discount"],.tub-option__content b[data-price-kind="free"]{font-size:.69rem}

@media(max-width:720px){
  .tub-stove-matrix__dimension{grid-template-columns:1fr;gap:9px;padding:16px 0}
  .tub-stove-matrix__dimension>span{padding-top:0}
  .tub-stove-matrix__choices{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tub-stove-matrix__selection{grid-template-columns:1fr;padding:18px}
  .tub-stove-matrix__selection>b{grid-column:1;grid-row:auto;margin-top:4px}
}

/* Dřevěné sauny 0.40.17 — jeden ikonový systém pro všechny konfigurátory */
.tub-configurator .tub-option__image--icon{
  background:linear-gradient(180deg,#f7f4ed 0%,#efeade 100%);
  border-color:rgba(44,62,54,.14);
  overflow:hidden;
}
.tub-configurator .tub-option__image--icon img{
  padding:8px;
  opacity:.98;
  filter:none;
}
.tub-configurator .tub-option:hover .tub-option__image--icon img,
.tub-configurator .tub-option.is-selected .tub-option__image--icon img{
  opacity:1;
}

/* Delší wordmark „Dřevěné sauny“ potřebuje klidnější sazbu než krátký původní název. */
.site-brand__wordmark{letter-spacing:.035em;text-transform:none;white-space:nowrap}
.mobile-site-menu__brand strong{letter-spacing:.035em;text-transform:none}
@media(max-width:720px){.site-brand__wordmark{font-size:1.25rem;letter-spacing:.02em}}

/* Dřevěné sauny 0.40.25 — jeden renderer konfigurátoru + korekce čitelnosti a zarovnání */
.tub-detail .tub-configurator{isolation:isolate;background:#f3f0e9!important;color:#171916}
.tub-detail .tub-configurator__header,.tub-detail .tub-config-layout,.tub-detail .tub-packages,.tub-detail .tub-phase-nav{width:min(1480px,100%);margin-left:auto;margin-right:auto}
.tub-detail .tub-configurator__header h2,.tub-detail .tub-config-panel h3,.tub-detail .tub-option-group legend strong{color:#171916}
.tub-detail .tub-configurator__header>p,.tub-detail .tub-option-group legend small,.tub-detail .tub-option__content small{color:rgba(23,25,22,.66)}
.tub-detail .tub-option__content{min-width:0}.tub-detail .tub-option__content strong,.tub-detail .tub-option__content small,.tub-detail .tub-option__content b{overflow-wrap:anywhere}
.tub-detail .tub-phase-nav{overflow-x:auto;scrollbar-width:thin}.tub-detail .tub-phase-nav button{min-width:0}.tub-detail .tub-phase-nav button strong{white-space:normal;line-height:1.25}
.tub-detail .tub-config-panel{min-width:0;overflow:hidden}.tub-detail .tub-option-grid{min-width:0}.tub-detail .tub-option{min-width:0}
.tub-detail .tub-stove-matrix__dimension{min-width:0}.tub-detail .tub-stove-matrix__choices{min-width:0}
.tub-detail .tub-specs{background:#faf8f3!important;color:#171916}.tub-detail .tub-specs__grid{width:min(1480px,100%);margin-left:auto;margin-right:auto;align-items:stretch}
.tub-detail .tub-specs dl{min-width:0;margin:0}.tub-detail .tub-specs dl div{min-width:0;grid-template-columns:minmax(120px,.42fr) minmax(0,.58fr)}
.tub-detail .tub-specs dt,.tub-detail .tub-specs dd{min-width:0;overflow-wrap:anywhere}.tub-detail .tub-specs dd{line-height:1.42}
.tub-detail .tub-faq{background:#f3f0e9!important;color:#171916}.tub-detail .tub-faq__item summary strong{color:#171916}.tub-detail .tub-faq__item>div{color:rgba(23,25,22,.68)}
.tub-detail .tub-final-cta{position:relative;background:#2c3e36!important;color:#fff!important}.tub-detail .tub-final-cta h2,.tub-detail .tub-final-cta .eyebrow{color:#fff!important}.tub-detail .tub-final-cta>div:last-child p{color:rgba(255,255,255,.76)!important}
.tub-detail .tub-final-cta .button--light{background:#fff!important;color:#171916!important;border-color:#fff!important}
.tub-detail .tub-config-summary{min-width:0}.tub-detail .tub-config-summary__section dd{overflow-wrap:anywhere}
.tub-detail .tub-size-guide__body{min-width:0}.tub-detail .tub-size-guide__body small{overflow-wrap:anywhere}
@media(max-width:1180px){.tub-detail .tub-configurator__header,.tub-detail .tub-config-layout,.tub-detail .tub-packages,.tub-detail .tub-phase-nav{width:100%}}
@media(max-width:720px){.tub-detail .tub-specs dl div{grid-template-columns:1fr;gap:6px}.tub-detail .tub-specs dd{text-align:left}.tub-detail .tub-phase-nav button{min-width:142px}}

/* Dřevěné sauny 0.40.26 — unified hot-tub product visual system
 * One visual rhythm for all hot-tub product pages. The configurator keeps its
 * shared renderer; this block standardises the surrounding product story.
 */
.tub-detail.hd-product-page{
  --tub-page-shell:min(1480px,calc(100% - 48px));
  --tub-h1:clamp(4.15rem,5.1vw,5.65rem);
  --tub-h2-editorial:clamp(3.45rem,4.35vw,4.75rem);
  --tub-h2-standard:clamp(3rem,3.75vw,4.15rem);
  --tub-section-y:clamp(78px,6.2vw,108px);
  --tub-section-y-compact:clamp(58px,4.6vw,82px);
}

/* Hero: strict two-column layout, no editorial overlap into the image. */
.tub-detail .product-hero.tub-detail-hero{
  width:var(--tub-page-shell);
  max-width:none;
  min-height:0;
  margin:0 auto;
  padding:clamp(70px,5.8vw,104px) 0 clamp(58px,4.8vw,86px);
  grid-template-columns:minmax(0,40%) minmax(0,60%);
  align-items:stretch;
  gap:clamp(36px,4.2vw,72px);
  background:transparent!important;
}
.tub-detail .product-hero__copy{
  min-width:0;
  min-height:0;
  justify-content:center;
  padding:0;
}
.tub-detail .product-hero__copy .eyebrow{margin-bottom:14px}
.tub-detail .product-hero__copy h1{
  max-width:9ch;
  margin:0 0 24px;
  font-size:var(--tub-h1);
  line-height:.92;
  letter-spacing:-.057em;
  overflow-wrap:normal;
  word-break:normal;
}
.tub-detail .product-hero__lead{
  max-width:590px;
  font-size:clamp(1rem,1.08vw,1.14rem);
  line-height:1.58;
}
.tub-detail .product-hero__technical{
  max-width:590px;
  margin-top:22px;
  padding-top:17px;
  font-size:.72rem;
  line-height:1.55;
  letter-spacing:.09em;
}
.tub-detail .tub-hero__price{margin-top:clamp(30px,3.2vw,48px)}
.tub-detail .tub-hero__price strong{font-size:clamp(1.8rem,2.15vw,2.35rem)}
.tub-detail .product-hero__actions{margin-top:26px;gap:16px 24px}
.tub-detail .product-hero__media{
  align-self:stretch;
  min-height:clamp(500px,39vw,650px);
  aspect-ratio:auto;
  background:#d8d4ca;
}
.tub-detail .product-hero__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* Quick facts: the hero is followed by a simple, consistent four-metric strip. */
.tub-detail .tub-hero-facts{padding:0 0 var(--tub-section-y-compact);background:#faf8f3!important}
.tub-detail .tub-hero__facts.tub-hero__facts--quick{
  width:var(--tub-page-shell);
  margin:0 auto;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border:1px solid var(--tub-line);
  background:rgba(255,255,255,.34);
}
.tub-detail .tub-hero__facts--quick .tub-hero__facts-card{
  min-height:150px;
  padding:27px clamp(22px,2.2vw,34px);
  gap:10px;
  align-content:start;
  border-right:1px solid var(--tub-line);
}
.tub-detail .tub-hero__facts--quick .tub-hero__facts-card:last-child{border-right:0}
.tub-detail .tub-hero__facts--quick .tub-hero__facts-card span{font-size:.63rem;letter-spacing:.13em}
.tub-detail .tub-hero__facts--quick .tub-hero__facts-card strong{
  margin-top:18px;
  font-size:clamp(1.22rem,1.45vw,1.58rem);
  line-height:1.08;
  letter-spacing:-.035em;
}
.tub-detail .tub-hero__facts--quick .tub-hero__facts-card small{font-size:.79rem;line-height:1.45}

/* Editorial sections: large, but clearly secondary to the product H1. */
.tub-detail .tub-intro{
  width:var(--tub-page-shell);
  grid-template-columns:minmax(0,1.12fr) minmax(320px,.62fr);
  gap:clamp(56px,7vw,112px);
  align-items:end;
  padding:var(--tub-section-y) 0 var(--tub-section-y-compact);
}
.tub-detail .tub-intro__heading h2{
  max-width:820px;
  font-size:var(--tub-h2-editorial);
  line-height:.96;
  letter-spacing:-.052em;
}
.tub-detail .tub-intro__copy{max-width:560px;padding-bottom:2px;font-size:1rem;line-height:1.65}

.tub-detail .tub-heater-story,
.tub-detail .quadro-geometry,
.tub-detail .tub-capacity--comparison,
.tub-detail .tub-material-explorer{
  padding-top:var(--tub-section-y);
  padding-bottom:var(--tub-section-y-compact);
}
.tub-detail .tub-heater-story__header h2,
.tub-detail .quadro-geometry__header h2,
.tub-detail .tub-capacity__header h2,
.tub-detail .tub-material-explorer__header h2{
  font-size:var(--tub-h2-standard);
  line-height:.96;
  letter-spacing:-.05em;
}
.tub-detail .tub-capacity__header{margin-bottom:clamp(34px,4vw,54px)}
.tub-detail .tub-capacity__header h2{max-width:790px}
.tub-detail .tub-capacity-comparison{box-shadow:none}

/* Gallery: preserve horizontal browsing, but never hijack vertical page scrolling. */
.tub-detail .tub-product-gallery.product-gallery-strip{
  padding-top:var(--tub-section-y);
  padding-bottom:var(--tub-section-y-compact);
}
.tub-detail .tub-product-gallery .product-gallery-strip__header{
  width:var(--tub-page-shell);
  margin-bottom:clamp(40px,4.6vw,66px);
  align-items:flex-end;
}
.tub-detail .tub-product-gallery .product-gallery-strip__header>div:first-child{max-width:850px}
.tub-detail .tub-product-gallery .product-gallery-strip__header h2{
  max-width:850px;
  font-size:var(--tub-h2-standard);
  line-height:.96;
  letter-spacing:-.05em;
}
.tub-detail .tub-product-gallery__intro{max-width:650px;margin-top:18px;font-size:.95rem;line-height:1.6}
.tub-detail .product-gallery-strip__track{
  overscroll-behavior:auto;
  touch-action:pan-x pan-y;
}
.tub-detail .product-gallery-strip__item .product-lightbox-trigger{height:clamp(430px,52vh,570px)}
.tub-detail .product-gallery-strip__hint{width:var(--tub-page-shell);margin-top:22px}

/* Configurator entrance: clearer hierarchy and larger choice cards. */
.tub-detail .tub-configurator{padding-top:var(--tub-section-y);padding-bottom:var(--tub-section-y-compact)}
.tub-detail .tub-configurator__header{
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.52fr);
  gap:clamp(48px,7vw,110px);
  margin-bottom:clamp(38px,4vw,58px);
}
.tub-detail .tub-configurator__header h2{
  max-width:790px;
  font-size:var(--tub-h2-standard);
  line-height:.97;
  letter-spacing:-.05em;
}
.tub-detail .tub-packages--single{max-width:1120px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:34px}
.tub-detail .tub-packages--single .tub-package{min-height:205px;padding:30px 30px 26px}
.tub-detail .tub-packages--single .tub-package strong{margin-top:22px;font-size:1.25rem}
.tub-detail .tub-packages--single .tub-package small{font-size:.82rem;line-height:1.5}

/* Technical information: information has more visual weight than the heading. */
.tub-detail .tub-specs{padding-top:var(--tub-section-y);padding-bottom:var(--tub-section-y)}
.tub-detail .tub-specs>header{max-width:840px;margin-bottom:clamp(36px,4vw,56px)}
.tub-detail .tub-specs>header h2{
  max-width:820px;
  font-size:var(--tub-h2-standard);
  line-height:.97;
  letter-spacing:-.05em;
}
.tub-detail .tub-specs dl div{min-height:92px;padding-top:20px;padding-bottom:20px}

/* FAQ: same scale as the rest of the page instead of another H1-sized moment. */
.tub-detail .tub-faq{padding-top:var(--tub-section-y);padding-bottom:var(--tub-section-y)}
.tub-detail .tub-faq__header{margin-bottom:clamp(36px,4vw,58px)}
.tub-detail .tub-faq__header h2{
  max-width:800px;
  font-size:var(--tub-h2-standard);
  line-height:.97;
  letter-spacing:-.05em;
}
.tub-detail .tub-faq__item summary{min-height:102px}

/* Final CTA: compact conversion block before the darker newsletter/footer. */
.tub-detail .tub-final-cta{
  min-height:0;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.5fr);
  gap:clamp(52px,8vw,120px);
  padding:clamp(76px,6.4vw,108px) max(24px,calc((100vw - 1480px)/2));
  align-items:center;
  scroll-margin-top:110px;
}
.tub-detail .tub-final-cta h2{
  max-width:760px;
  font-size:clamp(3rem,3.8vw,4.25rem);
  line-height:.98;
  letter-spacing:-.05em;
}
.tub-detail .tub-final-cta>div:last-child p{max-width:470px;font-size:1rem;line-height:1.62}

@media(max-width:1100px){
  .tub-detail.hd-product-page{--tub-page-shell:min(100% - 40px,1080px)}
  .tub-detail .product-hero.tub-detail-hero{grid-template-columns:minmax(0,44%) minmax(0,56%);gap:34px}
  .tub-detail .product-hero__copy h1{font-size:clamp(3.7rem,6.6vw,5rem)}
  .tub-detail .tub-hero__facts.tub-hero__facts--quick{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card:nth-child(2){border-right:0}
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card:nth-child(-n+2){border-bottom:1px solid var(--tub-line)}
}

@media(max-width:900px){
  .tub-detail .product-hero.tub-detail-hero{grid-template-columns:1fr;padding-top:58px;gap:38px}
  .tub-detail .product-hero__copy h1{max-width:10ch;font-size:clamp(3.9rem,10vw,5.7rem)}
  .tub-detail .product-hero__media{min-height:0;aspect-ratio:4/3}
  .tub-detail .product-hero__media img{position:static}
  .tub-detail .tub-intro,
  .tub-detail .tub-configurator__header,
  .tub-detail .tub-faq__header,
  .tub-detail .tub-final-cta{grid-template-columns:1fr;gap:30px}
  .tub-detail .tub-intro__copy{max-width:700px}
  .tub-detail .tub-product-gallery .product-gallery-strip__header{align-items:flex-start}
}

@media(max-width:720px){
  .tub-detail.hd-product-page{
    --tub-page-shell:calc(100% - 32px);
    --tub-h1:clamp(3.25rem,15vw,4.45rem);
    --tub-h2-editorial:clamp(2.7rem,11.8vw,3.75rem);
    --tub-h2-standard:clamp(2.55rem,10.8vw,3.45rem);
    --tub-section-y:68px;
    --tub-section-y-compact:54px;
  }
  .tub-detail .product-hero.tub-detail-hero{width:var(--tub-page-shell);padding:50px 0 46px}
  .tub-detail .product-hero__copy h1{max-width:9ch;margin-bottom:20px;font-size:var(--tub-h1);line-height:.91}
  .tub-detail .product-hero__lead{font-size:.98rem}
  .tub-detail .product-hero__technical{font-size:.7rem}
  .tub-detail .product-hero__actions{display:flex;align-items:flex-start;flex-direction:column}
  .tub-detail .product-hero__media{aspect-ratio:4/5}
  .tub-detail .tub-hero-facts{padding-bottom:48px}
  .tub-detail .tub-hero__facts.tub-hero__facts--quick{grid-template-columns:1fr}
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card{min-height:0;padding:20px 18px;border-right:0;border-bottom:1px solid var(--tub-line)}
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card:last-child{border-bottom:0}
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card strong{margin-top:6px;font-size:1.18rem}
  .tub-detail .tub-intro{width:var(--tub-page-shell);padding-top:60px}
  .tub-detail .tub-product-gallery .product-gallery-strip__header{width:var(--tub-page-shell);gap:26px;margin-bottom:34px}
  .tub-detail .product-gallery-strip__item .product-lightbox-trigger{height:64svh}
  .tub-detail .product-gallery-strip__hint{width:var(--tub-page-shell)}
  .tub-detail .tub-packages--single{grid-template-columns:1fr;max-width:none}
  .tub-detail .tub-packages--single .tub-package{min-height:178px;padding:24px 22px}
  .tub-detail .tub-final-cta{padding:68px 16px}
  .tub-detail .tub-final-cta h2{font-size:var(--tub-h2-standard)}
}

/* Dřevěné sauny 0.40.27 — visual audit: stable section backgrounds + tighter desktop rhythm
 * The page-level atmospheric colour transition must never leak through a section
 * while the previous content is still visible. Product sections therefore own
 * their background explicitly. The second pass also removes stacked vertical
 * paddings that created oversized dead zones on 1440–1920 px desktop screens.
 */
.tub-detail.hd-product-page>section.tub-hero-facts,
.tub-detail.hd-product-page>section.tub-intro,
.tub-detail.hd-product-page>section.tub-capacity,
.tub-detail.hd-product-page>section.tub-specs{
  background:#faf8f3!important;
}
.tub-detail.hd-product-page>section.tub-heater-story,
.tub-detail.hd-product-page>section.tub-material-explorer{
  background:#e8e4db!important;
}

/* 0.40.38 — preview and selector remain one aligned component. */
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer{scroll-margin-top:110px}
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__layout{grid-template-columns:minmax(0,.94fr) minmax(540px,1.06fr)}
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview,
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__controls{min-height:510px}
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__image-wrap{height:100%;min-height:510px;padding:clamp(28px,3vw,48px)}
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img{width:min(54%,330px)!important;height:auto!important;max-height:330px!important}
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__controls{grid-template-rows:auto 1fr}
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__options{grid-auto-rows:minmax(88px,1fr)}
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview-copy{min-height:176px;padding:clamp(24px,2.2vw,34px)}

@media(max-width:1100px){
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__layout{grid-template-columns:1fr}
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__controls{min-height:0}
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__image-wrap{min-height:420px}
}
@media(max-width:760px){
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__image-wrap{min-height:0;height:auto}
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img{width:min(68%,270px)!important;max-height:270px!important}
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview-copy{min-height:0}
}

/* 0.40.40 — Sklolaminát External uses one centred, frameless material crop in
 * both the large preview and the selector cards. The source WebP files are
 * already square crops, so CSS must not introduce a second clipping circle. */
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap{
  display:grid;
  place-items:center;
  padding:clamp(36px,4vw,64px);
}
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img{
  display:block;
  width:clamp(250px,48%,330px)!important;
  height:auto!important;
  max-width:330px!important;
  max-height:330px!important;
  aspect-ratio:1;
  object-fit:cover!important;
  object-position:50% 50%!important;
  margin:auto!important;
  border:0!important;
  outline:0!important;
  border-radius:50%!important;
  clip-path:none!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
  transform:none!important;
}
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__options[data-material-options="liners"] .tub-material-choice img{
  display:block;
  width:54px!important;
  height:54px!important;
  min-width:54px!important;
  max-width:54px!important;
  max-height:54px!important;
  aspect-ratio:1;
  object-fit:cover!important;
  object-position:50% 50%!important;
  margin:0!important;
  border:0!important;
  outline:0!important;
  border-radius:50%!important;
  clip-path:none!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
  transform:none!important;
}
@media(max-width:760px){
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap{
    min-height:360px;
    padding:32px 20px;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img{
    width:min(72vw,280px)!important;
    max-width:280px!important;
    max-height:280px!important;
  }
}

.tub-detail.hd-product-page>section.tub-product-gallery{
  background:#171916!important;
}
.tub-detail.hd-product-page>section.tub-configurator,
.tub-detail.hd-product-page>section.tub-faq{
  background:#f3f0e9!important;
}
.tub-detail.hd-product-page>section.tub-final-cta{
  background:#2c3e36!important;
}

@media(min-width:901px){
  .tub-detail.hd-product-page{
    --tub-section-y:clamp(58px,4.15vw,76px);
    --tub-section-y-compact:clamp(34px,2.45vw,46px);
  }

  /* Hero → facts → editorial story should read as one opening sequence. */
  .tub-detail .tub-hero-facts{padding-bottom:clamp(20px,1.7vw,30px)}
  .tub-detail .tub-intro{
    padding-top:clamp(52px,3.8vw,68px);
    padding-bottom:clamp(26px,2vw,38px);
  }

  /* Prevent the intro/capacity pair from stacking two full section paddings. */
  .tub-detail .tub-intro + .tub-capacity--comparison{
    padding-top:clamp(34px,2.7vw,48px);
  }
  .tub-detail .tub-capacity--comparison{
    padding-bottom:clamp(48px,3.4vw,62px);
  }

  /* External/Elite add a heater story between intro and sizing. */
  .tub-detail .tub-intro + .tub-heater-story{
    padding-top:clamp(56px,4vw,72px);
  }
  .tub-detail .tub-heater-story + .tub-capacity--comparison{
    padding-top:clamp(50px,3.6vw,66px);
  }

  /* Gallery remains cinematic but no longer has a full-screen empty lead-in. */
  .tub-detail .tub-product-gallery.product-gallery-strip{
    padding-top:clamp(66px,4.8vw,84px);
    padding-bottom:clamp(48px,3.5vw,62px);
  }
  .tub-detail .tub-product-gallery .product-gallery-strip__header{
    margin-bottom:clamp(30px,3vw,46px);
  }
  .tub-detail .product-gallery-strip__item .product-lightbox-trigger{
    height:clamp(410px,48vh,540px);
  }

  /* Gallery → configurator is a clear change of mode, not another huge void. */
  .tub-detail .tub-configurator{
    padding-top:clamp(62px,4.5vw,80px);
    padding-bottom:clamp(42px,3vw,56px);
  }
  .tub-detail .tub-configurator__header{margin-bottom:clamp(30px,3vw,44px)}

  /* Editorial information below the configurator stays comfortably readable. */
  .tub-detail .tub-specs{
    padding-top:clamp(62px,4.5vw,80px);
    padding-bottom:clamp(54px,3.9vw,70px);
  }
  .tub-detail .tub-faq{
    padding-top:clamp(62px,4.5vw,80px);
    padding-bottom:clamp(58px,4.2vw,76px);
  }
  .tub-detail .tub-final-cta{
    padding-top:clamp(64px,4.7vw,84px);
    padding-bottom:clamp(64px,4.7vw,84px);
  }

  /* Keep the section headings premium without competing with the hero. */
  .tub-detail .tub-intro__heading h2{max-width:760px}
  .tub-detail .tub-capacity__header h2,
  .tub-detail .tub-product-gallery .product-gallery-strip__header h2,
  .tub-detail .tub-configurator__header h2,
  .tub-detail .tub-specs>header h2,
  .tub-detail .tub-faq__header h2{
    text-wrap:balance;
  }
}

/* Dřevěné sauny 0.40.28 — základní parametry jako skutečně zarovnaná tabulka
 * Každá dvojice parametrů sdílí jeden grid řádek. Výška se tedy řídí vyšší
 * buňkou a horizontální linky zůstávají přesně proti sobě i při zalomeném textu.
 */
.tub-detail .tub-specs__grid{
  display:block;
  width:min(1480px,100%);
  margin-left:auto;
  margin-right:auto;
  border-top:1px solid var(--tub-line);
  border-left:1px solid var(--tub-line);
}
.tub-detail .tub-specs__row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
}
.tub-detail .tub-specs__item{
  display:grid;
  grid-template-columns:minmax(128px,.40fr) minmax(0,.60fr);
  gap:clamp(20px,2.2vw,38px);
  align-items:center;
  min-width:0;
  min-height:104px;
  padding:24px clamp(24px,3vw,42px);
  border-right:1px solid var(--tub-line);
  border-bottom:1px solid var(--tub-line);
}
.tub-detail .tub-specs__label{
  min-width:0;
  color:var(--tub-muted);
  font-size:.68rem;
  font-weight:750;
  line-height:1.35;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.tub-detail .tub-specs__value{
  min-width:0;
  color:var(--tub-ink);
  font-size:1.03rem;
  font-weight:620;
  line-height:1.38;
  overflow-wrap:anywhere;
}
.tub-detail .tub-specs__item--empty{visibility:hidden}

@media(max-width:980px){
  .tub-detail .tub-specs__item{
    grid-template-columns:minmax(105px,.38fr) minmax(0,.62fr);
    gap:18px;
    padding:21px 20px;
  }
}
@media(max-width:720px){
  .tub-detail .tub-specs__row{grid-template-columns:1fr}
  .tub-detail .tub-specs__item{
    grid-template-columns:1fr;
    gap:7px;
    min-height:0;
    padding:18px 16px;
  }
  .tub-detail .tub-specs__value{font-size:.94rem}
  .tub-detail .tub-specs__item--empty{display:none}
}

/* Dřevěné sauny 0.40.32 — Sklolaminát External: oprava plnošířkového pozadí.
 * Sekce .tub-intro je současně obsahovým kontejnerem, proto její vlastní
 * background končil na hraně shellu. Stín rozšíří stejnou barvu do obou krajů
 * bez změny původního layoutu, typografie nebo rozestupů.
 */
.tub-detail[data-tub-model="fiberglass-external"] .tub-intro{
  box-shadow:0 0 0 100vmax #faf8f3;
  clip-path:inset(0 -100vmax);
}

/* Dřevěné sauny 0.40.33 — Sklolaminát External / etapa 01.
 * Zdrojové swatche už obsahují celý materiálový disk. Konfigurátor proto kolem
 * nich nesmí kreslit druhý prstenec ani přidávat vnitřní odsazení.
 */
.tub-detail[data-tub-model="fiberglass-external"] [data-tub-group="tub-color"] .tub-option__image--material{
  width:58px;
  height:58px;
  padding:0;
  overflow:hidden;
  border:0;
  border-radius:50%;
  background:transparent;
  box-shadow:0 4px 13px rgba(23,25,22,.10);
}
.tub-detail[data-tub-model="fiberglass-external"] [data-tub-group="tub-color"] .tub-option__image--material img{
  width:100%;
  height:100%;
  padding:0;
  border:0;
  border-radius:50%;
  object-fit:cover;
  transform:none;
}
.tub-detail[data-tub-model="fiberglass-external"] [data-tub-group="tub-color"] .tub-option-row,
.tub-detail[data-tub-model="fiberglass-external"] [data-tub-group="tub-color"] .tub-option{
  min-height:124px;
  height:100%;
}
.tub-detail[data-tub-model="fiberglass-external"] [data-tub-group="tub-color"] .tub-option-grid{
  align-items:stretch;
}
@media(max-width:720px){
  .tub-detail[data-tub-model="fiberglass-external"] [data-tub-group="tub-color"] .tub-option__image--material{
    width:46px;
    height:46px;
  }
}

/* 0.40.41 — Sklolaminát External: stabilní a vycentrovaný průvodce materiály. */
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__header,
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__layout,
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__note{
  width:min(1400px, calc(100% - 64px));
  margin-inline:auto;
}

.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__header{
  display:grid;
  grid-template-columns:minmax(0, 1.15fr) minmax(320px, 420px);
  align-items:end;
  gap:clamp(40px, 7vw, 112px);
}

.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__header h2{
  max-width:900px;
  margin:0;
  font-size:clamp(3.2rem, 4.6vw, 5.2rem);
  line-height:.94;
  letter-spacing:-.055em;
}

.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__header > p{
  max-width:420px;
  margin:0 0 .35rem;
}

.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__layout{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  grid-template-areas:
    "preview controls"
    "copy copy";
  align-items:stretch;
}

.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview{
  grid-area:preview;
  min-width:0;
  min-height:520px;
}

.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__image-wrap{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  min-height:520px;
  padding:48px;
  overflow:hidden;
}

.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview img{
  display:block;
  width:clamp(260px, 30vw, 350px);
  max-width:72%;
  aspect-ratio:1;
  margin:auto;
  object-fit:cover;
  object-position:center;
  border:0;
  border-radius:50%;
}

.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__controls{
  grid-area:controls;
  min-width:0;
  min-height:520px;
  border-left:0;
}

.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__tabs{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__options{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  grid-auto-rows:1fr;
  align-content:start;
  gap:12px;
}

.tub-detail[data-tub-model="fiberglass-external"] .tub-material-choice{
  min-width:0;
  min-height:112px;
  height:100%;
}

.tub-detail[data-tub-model="fiberglass-external"] .tub-material-choice img{
  flex:0 0 58px;
  width:58px;
  height:58px;
  aspect-ratio:1;
  object-fit:cover;
  object-position:center;
  border:0;
  border-radius:50%;
}

.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview-copy{
  grid-area:copy;
  min-width:0;
}

@media(max-width:1100px){
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__header,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__layout,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__note{
    width:min(860px, calc(100% - 40px));
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__header{
    grid-template-columns:1fr;
    align-items:start;
    gap:24px;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__layout{
    grid-template-columns:1fr;
    grid-template-areas:
      "preview"
      "controls"
      "copy";
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__controls,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__image-wrap{
    min-height:420px;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__controls{
    border-left:1px solid var(--line, #d8d6cf);
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview img{
    width:min(330px, 68vw);
    max-width:78%;
  }
}

@media(max-width:720px){
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__header,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__layout,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__note{
    width:calc(100% - 24px);
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__header h2{
    font-size:clamp(2.5rem, 13vw, 3.6rem);
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__image-wrap{
    min-height:340px;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__image-wrap{
    padding:32px 20px;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview img{
    width:min(240px, 70vw);
    max-width:82%;
  }

  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__options{
    grid-template-columns:1fr;
  }
}

.tub-detail .tub-hero__logistics-note{
  max-width:590px;
  margin:16px 0 0;
  padding:12px 14px;
  border-left:3px solid var(--tub-green);
  background:rgba(44,62,54,.055);
  color:var(--tub-muted);
  font-size:.78rem;
  line-height:1.52;
}
.tub-detail .tub-hero__logistics-note strong{
  color:var(--tub-ink);
  font-weight:700;
}
.tub-detail .tub-capacity__installation-note{
  max-width:1080px;
  margin:22px 0 0;
  padding:16px 18px;
  border:1px solid rgba(44,62,54,.14);
  background:rgba(44,62,54,.045);
  color:var(--tub-muted);
  font-size:.84rem;
  line-height:1.6;
  text-wrap:pretty;
}
.tub-detail .tub-capacity__installation-note strong{
  color:var(--tub-ink);
  font-weight:720;
}
.tub-detail .product-gallery-strip__disclaimer{
  width:var(--tub-page-shell);
  max-width:1480px;
  margin:10px auto 0;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.52);
  font-size:.71rem;
  line-height:1.55;
}
.tub-detail .tub-product-gallery.is-illustrative .product-gallery-strip__item figcaption strong::after{
  content:" · ilustrační podklad";
  color:rgba(255,255,255,.45);
  font-size:.72rem;
  font-weight:500;
}
@media(min-width:901px){
  .tub-detail .tub-capacity--comparison + .tub-heater-story{
    padding-top:clamp(52px,3.8vw,68px);
  }
}
@media(max-width:720px){
  .tub-detail .tub-hero__logistics-note{
    margin-top:14px;
    padding:11px 12px;
    font-size:.75rem;
  }
  .tub-detail .tub-capacity__installation-note{
    margin-top:18px;
    padding:14px;
    font-size:.79rem;
  }
  .tub-detail .product-gallery-strip__disclaimer{
    width:var(--tub-page-shell);
    margin-top:9px;
  }
}

/* Dřevěné sauny 0.40.45 — doprava podle PSČ a nezávazné dokončení konfigurace */

.tub-detail .tub-hero__shipping-note{
  max-width:500px;
  margin:11px 0 0;
  color:var(--tub-muted);
  font-size:.76rem;
  line-height:1.5;
}
.tub-detail .tub-hero__shipping-note strong{
  color:var(--tub-ink);
  font-weight:720;
}
.tub-shipping-control{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:end;
  margin-top:12px;
}
.tub-shipping-control label{
  display:grid;
  gap:6px;
  margin:0;
}
.tub-shipping-control label>span{
  font-size:.62rem;
  font-weight:760;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.tub-shipping-control input{
  width:100%;
  min-width:0;
  height:44px;
  padding:0 12px;
  border:1px solid rgba(29,33,30,.24);
  border-radius:0;
  background:#fff;
  color:var(--tub-ink);
  font:inherit;
  outline:none;
}
.tub-shipping-control input:focus{border-color:var(--tub-green)}
.tub-shipping-control button{min-height:44px;white-space:nowrap}
.tub-shipping-control [data-tub-shipping-result]{
  grid-column:1/-1;
  display:flex;
  flex-wrap:wrap;
  gap:5px 9px;
  min-height:1.1em;
  margin:0;
  color:var(--tub-muted);
  font-size:.72rem;
  line-height:1.45;
}
.tub-shipping-control [data-tub-shipping-result] strong{color:inherit}
.tub-shipping-control [data-tub-shipping-result].is-error{color:#9b332f}
.tub-shipping-control [data-tub-shipping-result].is-loading{opacity:.68}

.tub-config-summary__delivery.is-pending{background:rgba(255,255,255,.025)}
.tub-config-summary__delivery.is-calculated{background:rgba(255,255,255,.045)}
.tub-config-summary .tub-shipping-control{grid-template-columns:minmax(0,1fr) auto;margin-top:12px}
.tub-config-summary .tub-shipping-control label>span{color:rgba(255,255,255,.48)}
.tub-config-summary .tub-shipping-control input{
  height:40px;
  border-color:rgba(255,255,255,.18);
  background:rgba(255,255,255,.06);
  color:#fff;
}
.tub-config-summary .tub-shipping-control input::placeholder{color:rgba(255,255,255,.34)}
.tub-config-summary .tub-shipping-control .button-outline{
  min-height:40px;
  padding:0 11px;
  border-color:rgba(255,255,255,.35);
  color:#fff;
}
.tub-config-summary .tub-shipping-control [data-tub-shipping-result]{color:rgba(255,255,255,.57)}
.tub-config-summary .tub-shipping-control [data-tub-shipping-result] strong{color:#fff}
.tub-config-summary .tub-shipping-control [data-tub-shipping-result].is-error{color:#f0b3ad}

.tub-shipping-gate{
  align-self:start;
  padding:clamp(24px,3.2vw,42px);
  border:1px solid rgba(255,255,255,.2);
  background:rgba(0,0,0,.1);
}
.tub-shipping-gate[hidden],.tub-contact-panel__fields[hidden]{display:none!important}
.tub-shipping-gate .eyebrow{color:rgba(255,255,255,.58)}
.tub-shipping-gate h4{
  max-width:650px;
  margin:8px 0 12px;
  color:#fff;
  font-size:clamp(1.65rem,2.5vw,2.7rem);
  line-height:1.03;
  letter-spacing:-.045em;
}
.tub-shipping-gate>p{max-width:650px;margin:0;color:rgba(255,255,255,.68);line-height:1.55}
.tub-shipping-gate .tub-shipping-control{max-width:620px;margin-top:24px}
.tub-shipping-gate .tub-shipping-control label>span{color:rgba(255,255,255,.62)}
.tub-shipping-gate .tub-shipping-control input{
  border-color:rgba(255,255,255,.3);
  background:rgba(255,255,255,.08);
  color:#fff;
}
.tub-shipping-gate .tub-shipping-control input::placeholder{color:rgba(255,255,255,.4)}
.tub-shipping-gate .tub-shipping-control [data-tub-shipping-result]{color:rgba(255,255,255,.68)}
.tub-shipping-gate .tub-shipping-control [data-tub-shipping-result] strong{color:#fff}
.tub-shipping-gate .tub-shipping-control [data-tub-shipping-result].is-error{color:#ffd1cc}
.tub-shipping-gate__skip{
  display:inline-block;
  margin-top:18px;
  color:#fff!important;
  border-bottom-color:rgba(255,255,255,.45)!important;
}
.tub-shipping-gate>small{display:block;max-width:620px;margin-top:12px;color:rgba(255,255,255,.48);line-height:1.5}

@media(max-width:720px){
  .tub-shipping-control{grid-template-columns:1fr}
  .tub-shipping-control button{width:100%}
  .tub-shipping-control [data-tub-shipping-result]{grid-column:auto}
  .tub-config-summary .tub-shipping-control{grid-template-columns:1fr}
  .tub-shipping-gate{padding:24px 18px}
  .tub-shipping-gate h4{font-size:1.8rem}
}


/* =========================================================
   Dřevěné sauny 0.40.46 — master product mobile UX
   Referenční responsive vrstva pro koupací sudy. Desktopový
   vizuální systém zůstává zachován; mobil dostává vlastní rytmus,
   kompaktní konverzní lištu a skutečně mobilní komponenty.
   ========================================================= */

/* Vnější obklady: dřevo se posuzuje v ploše, ne v kruhovém výřezu. */
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer[data-active-material-group="claddings"] .tub-material-explorer__image-wrap{
  min-height:510px;
  padding:0!important;
  background:#242922;
}
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer[data-active-material-group="claddings"] .tub-material-explorer__preview img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  object-fit:cover!important;
  object-position:center!important;
  filter:none!important;
  transform:none!important;
}
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__options[data-material-options="claddings"] .tub-material-choice{
  grid-template-columns:72px minmax(0,1fr);
}
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__options[data-material-options="claddings"] .tub-material-choice img{
  width:72px!important;
  height:54px!important;
  min-width:72px!important;
  max-width:72px!important;
  max-height:54px!important;
  border-radius:0!important;
  object-fit:cover!important;
}

@media(max-width:720px){
  .tub-detail.hd-product-page{
    --tub-page-shell:calc(100% - 32px);
    --tub-h1:clamp(3.05rem,13vw,3.75rem);
    --tub-h2-editorial:clamp(2.28rem,9.8vw,2.95rem);
    --tub-h2-standard:clamp(2.18rem,9.2vw,2.75rem);
    --tub-section-y:56px;
    --tub-section-y-compact:42px;
  }

  /* Hero */
  .tub-detail .product-hero.tub-detail-hero{
    width:var(--tub-page-shell);
    padding:40px 0 38px;
    gap:30px;
  }
  .tub-detail .product-hero__copy h1{
    max-width:9ch;
    margin-bottom:18px;
    font-size:var(--tub-h1);
    line-height:.93;
    letter-spacing:-.052em;
  }
  .tub-detail .product-hero__lead{
    max-width:34rem;
    font-size:.94rem;
    line-height:1.52;
  }
  .tub-detail .product-hero__technical{
    margin-top:18px;
    padding-top:14px;
    font-size:.64rem;
    line-height:1.5;
  }
  .tub-detail .tub-hero__price{margin-top:26px}
  .tub-detail .tub-hero__price strong{font-size:1.75rem}
  .tub-detail .tub-hero__shipping-note{font-size:.72rem}
  .tub-detail .product-hero__actions{
    display:flex;
    align-items:flex-start;
    flex-direction:column;
    gap:14px;
    margin-top:22px;
  }
  .tub-detail .product-hero__actions .button{width:auto;min-height:48px}
  .tub-detail .tub-hero__logistics-note{
    margin-top:13px;
    padding:10px 11px;
    font-size:.71rem;
    line-height:1.48;
  }
  .tub-detail .product-hero__media{
    min-height:0;
    aspect-ratio:4/3;
  }
  .tub-detail .product-hero__media img{position:static;object-fit:cover}

  /* Hero facts: 2 × 2 místo čtyř dlouhých mobilních řádků. */
  .tub-detail .tub-hero-facts{padding-bottom:38px}
  .tub-detail .tub-hero__facts.tub-hero__facts--quick{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card{
    min-height:132px;
    padding:17px 15px;
    border-right:1px solid var(--tub-line);
    border-bottom:1px solid var(--tub-line);
  }
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card:nth-child(2n){border-right:0}
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card:nth-last-child(-n+2){border-bottom:0}
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card span{font-size:.57rem}
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card strong{
    margin-top:8px;
    font-size:1.08rem;
    line-height:1.08;
  }
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card small{
    font-size:.68rem;
    line-height:1.4;
  }

  /* Editorial story */
  .tub-detail .tub-intro{
    width:var(--tub-page-shell);
    gap:22px;
    padding:52px 0 40px;
  }
  .tub-detail .tub-intro__heading h2{font-size:var(--tub-h2-editorial)}
  .tub-detail .tub-intro__copy{font-size:.92rem;line-height:1.58}

  /* Capacity comparison */
  .tub-detail .tub-capacity--comparison{
    padding:46px 16px 44px;
  }
  .tub-detail .tub-capacity--comparison .tub-capacity__header{
    gap:16px;
    margin-bottom:26px;
  }
  .tub-detail .tub-capacity--comparison .tub-capacity__header h2{
    max-width:12ch;
    font-size:var(--tub-h2-standard);
  }
  .tub-detail .tub-capacity--comparison .tub-capacity__header>p:last-child{
    margin-top:12px;
    font-size:.88rem;
    line-height:1.55;
  }
  .tub-detail .tub-capacity-variant{
    padding:20px 18px;
  }
  .tub-detail .tub-capacity-variant__top{
    grid-template-columns:minmax(0,1fr) 132px;
    gap:16px;
    align-items:center;
  }
  .tub-detail .tub-capacity-variant__heading span{
    margin-bottom:9px;
    font-size:.57rem;
  }
  .tub-detail .tub-capacity-variant__heading h3{font-size:2rem}
  .tub-detail .tub-capacity-variant__heading p{margin-top:8px;font-size:.92rem}
  .tub-detail .tub-plan-diagram--comparison{--plan-size:126px}
  .tub-detail .tub-plan-diagram--comparison .tub-plan-diagram__marker{width:12px;height:12px;border-width:2px}
  .tub-detail .tub-plan-diagram--comparison .tub-capacity-card__center b{font-size:1.2rem}
  .tub-detail .tub-capacity-variant__measurements{gap:8px}
  .tub-detail .tub-capacity-variant__measurements span{font-size:.56rem}
  .tub-detail .tub-capacity-variant__measurements span+span{padding-left:8px}
  .tub-detail .tub-capacity-variant__measurements strong{font-size:.72rem}
  .tub-detail .tub-capacity-variant__specs{
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin-top:18px;
  }
  .tub-detail .tub-capacity-variant__specs div,
  .tub-detail .tub-capacity-variant__specs div+div{
    margin:0;
    padding:13px 10px 0 0;
    border-top:0;
    border-left:0;
  }
  .tub-detail .tub-capacity-variant__specs div+div{
    padding-right:0;
    padding-left:10px;
    border-left:1px solid rgba(23,25,22,.08);
  }
  .tub-detail .tub-capacity-variant__specs dt{font-size:.56rem}
  .tub-detail .tub-capacity-variant__specs dd{font-size:.84rem;line-height:1.35}
  .tub-detail .tub-capacity__installation-note{
    margin-top:16px;
    padding:12px 13px;
    font-size:.74rem;
    line-height:1.5;
  }

  /* Externí kamna / technologický příběh */
  .tub-detail .tub-heater-story{padding:54px 16px 46px}
  .tub-detail .tub-heater-story__header{gap:18px;margin-bottom:26px}
  .tub-detail .tub-heater-story__header h2{
    max-width:13ch;
    font-size:var(--tub-h2-standard);
    line-height:.98;
  }
  .tub-detail .tub-heater-story__header>div:last-child p{
    font-size:.9rem;
    line-height:1.58;
  }
  .tub-detail .tub-heater-story__feature{min-height:0}
  .tub-detail .tub-heater-story__media{min-height:285px}
  .tub-detail .tub-heater-story--fiberglass-external .tub-heater-story__media--cutout img,
  .tub-detail .tub-heater-story--quadro-external .tub-heater-story__media--cutout img{
    inset:4% 5%;
    width:90%;
    height:92%;
  }
  .tub-detail .tub-heater-story__content{padding:25px 18px}
  .tub-detail .tub-heater-story__content h3{font-size:2.05rem;margin-bottom:16px}
  .tub-detail .tub-heater-story__content>p:not(.eyebrow){font-size:.88rem;line-height:1.58}
  .tub-detail .tub-heater-story__metrics{margin-top:24px}
  .tub-detail .tub-heater-story__metrics div,
  .tub-detail .tub-heater-story__metrics div+div{padding:12px 0}
  .tub-detail .tub-heater-compare article{padding:19px 17px}
  .tub-detail .tub-heater-compare article.is-current:before{top:12px;right:12px;font-size:.5rem}
  .tub-detail .tub-heater-compare span{margin-bottom:14px;font-size:.56rem}
  .tub-detail .tub-heater-compare strong{font-size:1.05rem}
  .tub-detail .tub-heater-compare b{margin:9px 0 14px;font-size:2.25rem}
  .tub-detail .tub-heater-compare p{font-size:.8rem;line-height:1.48}
  .tub-detail .tub-heater-story__note{font-size:.68rem}

  /* Material explorer */
  .tub-detail .tub-material-explorer{padding:54px 16px 46px}
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__header,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__layout,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__note{
    width:100%;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__header{
    gap:18px;
    margin-bottom:24px;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__header h2,
  .tub-detail .tub-material-explorer__header h2{
    max-width:13ch;
    font-size:var(--tub-h2-standard);
    line-height:.98;
  }
  .tub-detail .tub-material-explorer__header>p{font-size:.88rem;line-height:1.55}
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__layout{
    grid-template-areas:"preview" "controls" "copy";
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__image-wrap{
    min-height:0;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap{
    min-height:228px;
    padding:25px 18px;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__preview img{
    width:178px!important;
    max-width:58vw!important;
    max-height:178px!important;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer[data-active-material-group="claddings"] .tub-material-explorer__preview,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer[data-active-material-group="claddings"] .tub-material-explorer__image-wrap{
    min-height:0;
    height:auto;
    aspect-ratio:16/10;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer[data-active-material-group="claddings"] .tub-material-explorer__preview img{
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    border-radius:0!important;
    object-fit:cover!important;
  }
  .tub-detail .tub-material-explorer__image-wrap>span{top:12px;left:12px;padding:6px 8px;font-size:.54rem}
  .tub-detail .tub-material-explorer__tabs button{min-height:48px;padding:9px 10px;font-size:.72rem}
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__controls{min-height:0}
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__options{
    grid-template-columns:1fr;
    gap:7px;
    padding:9px;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-choice{
    min-height:72px;
    height:auto;
    grid-template-columns:46px minmax(0,1fr);
    gap:10px;
    padding:9px 10px;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-choice img{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    max-width:46px!important;
    max-height:46px!important;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__options[data-material-options="claddings"] .tub-material-choice{
    grid-template-columns:64px minmax(0,1fr);
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__options[data-material-options="claddings"] .tub-material-choice img{
    width:64px!important;
    height:46px!important;
    min-width:64px!important;
    max-width:64px!important;
    max-height:46px!important;
    border-radius:0!important;
  }
  .tub-detail .tub-material-choice strong{font-size:.8rem}
  .tub-detail .tub-material-choice small{font-size:.62rem}
  .tub-detail .tub-material-explorer__preview-copy{padding:17px 15px 18px}
  .tub-detail .tub-material-explorer__preview-copy h3{font-size:1.5rem}
  .tub-detail .tub-material-explorer__preview-copy p{font-size:.84rem;line-height:1.48}
  .tub-detail .tub-material-explorer__traits{gap:5px}
  .tub-detail .tub-material-explorer__traits li{padding:5px 7px;font-size:.58rem}
  .tub-detail .tub-material-explorer__cta{min-height:46px;margin-top:6px}
  .tub-detail .tub-material-explorer__note{margin-top:10px;font-size:.65rem;line-height:1.45}

  /* Gallery: jedna dominantní fotografie, náznak další a vertikální scroll bez konfliktu. */
  .tub-detail .tub-product-gallery.product-gallery-strip{padding:54px 0 44px}
  .tub-detail .tub-product-gallery .product-gallery-strip__header{
    width:var(--tub-page-shell);
    gap:20px;
    margin-bottom:26px;
  }
  .tub-detail .tub-product-gallery .product-gallery-strip__header h2{
    max-width:12ch;
    font-size:var(--tub-h2-standard);
    line-height:.98;
  }
  .tub-detail .tub-product-gallery__intro{margin-top:14px;font-size:.86rem;line-height:1.52}
  .tub-detail .product-gallery-strip__controls{gap:10px}
  .tub-detail .product-gallery-strip__arrow{width:43px;height:43px}
  .tub-detail .product-gallery-strip__track{
    gap:12px;
    padding:0 16px;
    scroll-padding-inline:16px;
  }
  .tub-detail .product-gallery-strip__item--wide,
  .tub-detail .product-gallery-strip__item--landscape,
  .tub-detail .product-gallery-strip__item--portrait{width:87vw}
  .tub-detail .product-gallery-strip__item .product-lightbox-trigger{
    height:clamp(340px,52svh,450px);
  }
  .tub-detail .product-gallery-strip figcaption{padding-top:13px}
  .tub-detail .product-gallery-strip figcaption strong{font-size:.92rem}
  .tub-detail .product-gallery-strip figcaption p{font-size:.82rem;line-height:1.48}
  .tub-detail .product-gallery-strip__hint{margin-top:17px;font-size:.69rem}

  /* Configurator entrance and mobile stepper. */
  .tub-detail .tub-configurator{padding:54px 16px 88px}
  .tub-detail .tub-configurator__header{gap:16px;margin-bottom:27px}
  .tub-detail .tub-configurator__header h2{
    max-width:13ch;
    font-size:var(--tub-h2-standard);
    line-height:.98;
  }
  .tub-detail .tub-configurator__header>p{font-size:.88rem;line-height:1.55}
  .tub-detail .tub-packages--single{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    max-width:none;
    margin:0 0 22px!important;
    padding:0!important;
    overflow:visible!important;
  }
  .tub-detail .tub-packages--single .tub-package{
    flex:none!important;
    width:100%!important;
    min-height:0!important;
    padding:19px 17px!important;
  }
  .tub-detail .tub-packages--single .tub-package strong{margin-top:14px;font-size:1.08rem}
  .tub-detail .tub-packages--single .tub-package small{font-size:.76rem}
  .tub-detail .tub-phase-nav{
    display:flex!important;
    top:70px;
    gap:0;
    margin:0 -16px 14px;
    padding:0 16px;
    overflow-x:auto;
    border-left:0;
    border-right:0;
    scroll-snap-type:x proximity;
    scroll-padding-inline:16px;
    scrollbar-width:none;
  }
  .tub-detail .tub-phase-nav::-webkit-scrollbar{display:none}
  .tub-detail .tub-phase-nav button{
    flex:0 0 min(42vw,158px);
    min-width:132px;
    min-height:58px;
    padding:10px 12px;
    scroll-snap-align:center;
  }
  .tub-detail .tub-phase-nav button strong{font-size:.72rem}
  .tub-detail .tub-config-panel{padding:21px 15px 18px}
  .tub-detail .tub-config-panel>header{margin-bottom:25px;padding-bottom:19px}
  .tub-detail .tub-config-panel>header h3{font-size:2.05rem}
  .tub-detail .tub-option-group{padding-bottom:34px}
  .tub-detail .tub-option-group+.tub-option-group{padding-top:27px}
  .tub-detail .tub-option-group legend{margin-bottom:15px}
  .tub-detail .tub-option{min-height:92px;padding:12px 12px}
  .tub-detail .tub-phase-actions{padding-top:20px}

  /* Technické parametry */
  .tub-detail .tub-specs{padding:54px 16px 48px}
  .tub-detail .tub-specs>header{margin-bottom:27px}
  .tub-detail .tub-specs>header h2{
    max-width:13ch;
    font-size:var(--tub-h2-standard);
  }
  .tub-detail .tub-specs__item{
    grid-template-columns:minmax(106px,.40fr) minmax(0,.60fr);
    gap:14px;
    padding:15px 14px;
    min-height:74px;
  }
  .tub-detail .tub-specs__label{font-size:.58rem}
  .tub-detail .tub-specs__value{font-size:.86rem;line-height:1.35}

  /* FAQ + manuál */
  .tub-detail .tub-faq{padding:54px 16px 48px}
  .tub-detail .tub-faq__header{gap:18px;margin-bottom:26px}
  .tub-detail .tub-faq__header h2{
    max-width:13ch;
    font-size:var(--tub-h2-standard);
  }
  .tub-detail .tub-faq__header>div:last-child{font-size:.87rem;line-height:1.52}
  .tub-detail .tub-faq__item summary{
    grid-template-columns:27px minmax(0,1fr) 26px;
    gap:9px;
    min-height:80px;
    padding:17px 13px;
  }
  .tub-detail .tub-faq__item summary strong{font-size:.92rem;line-height:1.22}
  .tub-detail .tub-faq__item>div{padding:0 14px 20px 49px;font-size:.86rem;line-height:1.56}
  .tub-detail .tub-manual-resource{
    margin-top:28px;
    grid-template-columns:50px minmax(0,1fr);
    gap:13px;
    padding:16px 13px;
  }
  .tub-detail .tub-manual-resource__icon{width:50px}
  .tub-detail .tub-manual-resource__icon svg{width:22px}
  .tub-detail .tub-manual-resource__copy h3{font-size:1.38rem}
  .tub-detail .tub-manual-resource__copy>p:not(.eyebrow){margin:7px 0 6px;font-size:.82rem;line-height:1.48}
  .tub-detail .tub-manual-resource__copy>span{font-size:.58rem}
  .tub-detail .tub-manual-resource__action{min-height:46px}

  /* Final CTA */
  .tub-detail .tub-final-cta{
    gap:20px;
    padding:54px 16px 58px;
  }
  .tub-detail .tub-final-cta h2{
    max-width:13ch;
    font-size:var(--tub-h2-standard);
  }
  .tub-detail .tub-final-cta>div:last-child p{font-size:.88rem;line-height:1.55}

  /* Kompaktní konverzní lišta. Mimo konfigurátor vede k jeho začátku;
     uvnitř konfigurátoru posouvá jednotlivými kroky. */
  .tub-mobile-summary{
    gap:8px!important;
    min-height:66px;
    padding:7px 10px calc(7px + env(safe-area-inset-bottom))!important;
    transition:transform .24s ease,opacity .2s ease!important;
  }
  .tub-mobile-summary.is-hidden{
    transform:translateY(calc(100% + 12px));
    opacity:0;
    pointer-events:none;
  }
  .tub-mobile-summary>button:first-child{align-content:center;min-width:0}
  .tub-mobile-summary>button:first-child span{font-size:.54rem!important;line-height:1.1}
  .tub-mobile-summary>button:first-child del{display:none!important}
  .tub-mobile-summary>button:first-child strong{
    margin-top:2px;
    font-size:.98rem!important;
    line-height:1.08!important;
    white-space:nowrap;
  }
  .tub-mobile-summary>button:first-child small{
    margin-top:2px!important;
    font-size:.55rem!important;
    line-height:1.1!important;
  }
  .tub-mobile-summary .button{
    min-height:44px!important;
    padding-inline:14px!important;
    font-size:.82rem;
    white-space:nowrap;
  }

  /* Footer / newsletter: menší konec stránky; sticky bar se nad nimi skrývá z JS. */
  .footer-newsletter__inner{padding-top:54px!important}
  .newsletter-form--footer .newsletter-form__copy h2{font-size:2.35rem!important}
  .site-footer{padding-top:46px!important}
  .site-footer__grid{gap:32px 18px!important}
  .site-footer__meta{margin-top:34px!important}
}

@media(max-width:360px){
  .tub-detail .tub-hero__facts.tub-hero__facts--quick{grid-template-columns:1fr}
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card{min-height:0;border-right:0}
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card:nth-last-child(-n+2){border-bottom:1px solid var(--tub-line)}
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card:last-child{border-bottom:0}
  .tub-detail .tub-capacity-variant__top{grid-template-columns:1fr}
  .tub-detail .tub-plan-diagram--comparison{--plan-size:138px}
  .tub-detail .tub-specs__item{grid-template-columns:1fr;gap:5px}
  .tub-mobile-summary .button{padding-inline:11px!important;font-size:.76rem}
}

/* =========================================================
   Dřevěné sauny 0.40.47 — mobile full-page audit
   Poslední mobilní korekce masteru Sklolaminát External:
   čitelné rychlé parametry, rozměrové karty bez ořezu,
   stabilní náhled vzorku vložky a kompletní export/print.
   ========================================================= */
@media(max-width:720px){
  /* Rychlé parametry zůstávají kompaktní 2×2, ale klíčové hodnoty
     se nesmí lámat na tři řádky. */
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card strong{
    font-size:1rem;
    overflow-wrap:normal;
    word-break:normal;
  }
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card:nth-child(-n+3) strong{
    white-space:nowrap;
  }
  .tub-detail .tub-hero__facts--quick .tub-hero__facts-card:nth-child(4) strong{
    max-width:11ch;
    line-height:1.12;
  }

  /* Srovnání 1 800 / 2 000 mm: diagram již nesdílí úzký sloupec s textem.
     Měření tak mají celou šířku karty a nikdy se neoříznou. */
  .tub-detail .tub-capacity-variant__top{
    grid-template-columns:1fr;
    gap:14px;
  }
  .tub-detail .tub-capacity-variant__visual{
    width:100%;
    gap:12px;
  }
  .tub-detail .tub-plan-diagram--comparison{--plan-size:124px}
  .tub-detail .tub-capacity-variant__measurements{
    width:min(100%,320px);
    gap:0;
    margin-inline:auto;
  }
  .tub-detail .tub-capacity-variant__measurements span{
    flex:1 1 0;
    padding-inline:10px;
    text-align:center;
  }
  .tub-detail .tub-capacity-variant__measurements span+span{
    padding-left:10px;
  }
  .tub-detail .tub-capacity-variant__measurements strong{
    font-size:.74rem;
    white-space:nowrap;
  }

  /* Vložka je barevný/materialový vzorek na světlém poli. Tím se zabrání
     tmavému kruhu/pozadí při změně sekčního tématu nebo při exportu stránky. */
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__preview,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap{
    background:#f8f6f0!important;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap{
    min-height:220px;
    padding:24px 18px;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__preview img{
    width:min(58vw,210px)!important;
    max-width:210px!important;
    max-height:210px!important;
    background:transparent!important;
    box-shadow:none!important;
    filter:none!important;
  }
}

/* Full-page export a tisk nesmí zachytit sekce před aktivací IntersectionObserveru. */
@media print{
  .reveal,
  .hd-product-page .reveal{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
    will-change:auto!important;
  }
}

/* =========================================================
   Dřevěné sauny 0.40.48 — mobile capture and reading stability
   Mobilní produktová stránka nesmí skrývat obsah čekáním na scroll.
   Galerie zároveň ukazuje jeden čistý snímek bez přetékajícího titulku.
   ========================================================= */
@media(max-width:720px){
  .reveal,
  .hd-product-page .reveal{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
    will-change:auto!important;
  }

  .tub-detail .product-gallery-strip__track{
    scroll-padding-inline:16px;
  }
  .tub-detail .product-gallery-strip__item,
  .tub-detail .product-gallery-strip__item--wide,
  .tub-detail .product-gallery-strip__item--landscape,
  .tub-detail .product-gallery-strip__item--portrait{
    width:calc(100vw - 32px);
    max-width:calc(100vw - 32px);
    scroll-snap-align:start;
    overflow:hidden;
  }
  .tub-detail .product-gallery-strip figcaption{
    width:100%;
    max-width:100%;
    overflow:hidden;
  }
}

@media(max-width:430px){
  .tub-detail .tub-specs__item{
    grid-template-columns:1fr;
    gap:6px;
    min-height:0;
  }
  .tub-detail .tub-specs__label,
  .tub-detail .tub-specs__value{
    max-width:none;
  }
}

/* =========================================================
   Dřevěné sauny 0.40.51 — Hero a rozhodovací orientace master produktu
   ========================================================= */
.tub-detail .product-breadcrumb{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  align-items:center;
  margin:0 0 24px;
  color:var(--tub-muted);
  font-size:.7rem;
  font-weight:650;
  line-height:1.35;
}
.tub-detail .product-breadcrumb a{
  color:inherit;
  text-decoration-color:rgba(23,25,22,.28);
  text-decoration-thickness:1px;
}
.tub-detail .product-breadcrumb a:hover,
.tub-detail .product-breadcrumb a:focus-visible{
  color:var(--tub-ink);
  text-decoration-color:currentColor;
}
.tub-detail .product-breadcrumb span[aria-current="page"]{color:var(--tub-ink)}

.tub-detail .tub-hero__fit{
  max-width:590px;
  margin:16px 0 0;
  padding:11px 13px;
  border-left:3px solid var(--tub-green);
  background:rgba(44,62,54,.05);
  color:var(--tub-muted);
  font-size:.78rem;
  line-height:1.5;
}
.tub-detail .tub-hero__fit strong{color:var(--tub-ink);font-weight:720}
.tub-detail .tub-hero__fit + .tub-hero__price{margin-top:clamp(28px,3.4vw,46px)}

.tub-detail .tub-fit-guide{
  display:grid;
  grid-column:1 / -1;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:0;
  border:0;
  background:transparent;
}
.tub-detail .tub-fit-guide__label{
  grid-column:1 / -1;
  margin:0 0 2px;
  color:var(--tub-muted);
  font-size:.62rem;
  font-weight:760;
  letter-spacing:.15em;
  line-height:1.2;
  text-transform:uppercase;
}
.tub-detail .tub-fit-guide__item{
  display:grid;
  align-content:start;
  gap:0;
  margin:0;
  padding:20px 21px 19px;
  border:1px solid var(--tub-line);
  background:rgba(255,255,255,.34);
}
.tub-detail .tub-fit-guide__item--recommended{
  border-color:var(--tub-green);
  background:var(--tub-green);
}
.tub-detail .tub-fit-guide__top{
  display:flex;
  gap:14px;
  align-items:baseline;
  justify-content:space-between;
}
.tub-detail .tub-fit-guide__model{
  color:var(--tub-green);
  font-size:.66rem;
  font-weight:780;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.tub-detail .tub-fit-guide__top em{
  color:var(--tub-muted);
  font-size:.68rem;
  font-style:normal;
  font-weight:650;
  line-height:1.3;
  text-align:right;
}
.tub-detail .tub-fit-guide__item strong{
  margin-top:15px;
  color:var(--tub-ink);
  font-size:1.03rem;
  font-weight:650;
  line-height:1.3;
  letter-spacing:-.018em;
}
.tub-detail .tub-fit-guide__item>p{
  margin:7px 0 0;
  color:var(--tub-muted);
  font-size:.78rem;
  line-height:1.46;
}
.tub-detail .tub-fit-guide__item--recommended .tub-fit-guide__model,
.tub-detail .tub-fit-guide__item--recommended .tub-fit-guide__top em,
.tub-detail .tub-fit-guide__item--recommended strong{
  color:#fff;
}
.tub-detail .tub-fit-guide__item--recommended .tub-fit-guide__top em,
.tub-detail .tub-fit-guide__item--recommended>p{
  color:rgba(255,255,255,.72);
}
.tub-detail[data-tub-model="fiberglass-external"] .tub-intro{
  column-gap:clamp(56px,7vw,112px);
  row-gap:34px;
}
.tub-detail #velikosti{scroll-margin-top:110px}

@media(max-width:720px){
  .tub-detail .product-breadcrumb{margin-bottom:18px;font-size:.64rem}
  .tub-detail .tub-hero__fit{margin-top:14px;padding:10px 11px;font-size:.72rem}
  .tub-detail .tub-hero__fit + .tub-hero__price{margin-top:24px}
  .tub-detail .tub-fit-guide{grid-template-columns:1fr;gap:9px;margin-top:0}
  .tub-detail .tub-fit-guide__label{grid-column:auto}
  .tub-detail .tub-fit-guide__item{padding:18px 17px}
  .tub-detail .tub-fit-guide__top{gap:12px;align-items:flex-start}
  .tub-detail .tub-fit-guide__item strong{margin-top:13px;font-size:.96rem}
  .tub-detail .tub-fit-guide__item>p{font-size:.76rem}
  .tub-detail[data-tub-model="fiberglass-external"] .tub-intro{
    column-gap:0;
    row-gap:22px;
  }
  .tub-detail #velikosti{scroll-margin-top:82px}
}

/* =========================================================
   Dřevěné sauny 0.40.52 — opravy podle desktopového vizuálního QA
   ========================================================= */
.tub-detail .tub-hero__shipping-note strong{
  font-size:inherit;
  line-height:inherit;
  letter-spacing:0;
}
.tub-detail .tub-capacity__installation-note{
  width:100%;
  max-width:none;
}

@media(min-width:1051px){
  .tub-detail .tub-capacity-variant__visual{
    grid-template-rows:clamp(168px,13vw,212px) auto;
    align-items:center;
  }
  .tub-detail .tub-capacity-variant--six .tub-plan-diagram--comparison{
    --plan-size:clamp(151px,11.7vw,191px);
  }
}

@media(min-width:701px) and (max-width:1050px){
  .tub-detail .tub-capacity-variant--six .tub-plan-diagram--comparison{
    --plan-size:151px;
  }
}

@media(max-width:700px){
  .tub-detail .tub-capacity-variant--six .tub-plan-diagram--comparison{--plan-size:112px}
  .tub-detail .tub-capacity-variant--eight .tub-plan-diagram--comparison{--plan-size:124px}
}

/* =========================================================
   Dřevěné sauny 0.40.53 — mobilní vizuální QA produktu
   ========================================================= */
@media(max-width:720px){
  .tub-detail.hd-product-page{
    --tub-h2-editorial:clamp(2.12rem,8.7vw,2.55rem);
    --tub-h2-standard:clamp(2rem,8.2vw,2.4rem);
  }

  .tub-detail .tub-capacity--comparison .tub-capacity__header h2{
    max-width:15ch;
  }
  .tub-detail .tub-heater-story__header h2{
    max-width:15ch;
  }

  .tub-mobile-summary{
    grid-template-columns:minmax(0,1fr) minmax(148px,44vw);
    min-height:62px;
    padding:6px 10px calc(6px + env(safe-area-inset-bottom))!important;
  }
  .tub-mobile-summary>button:first-child strong{
    font-size:.94rem!important;
  }
  .tub-mobile-summary .button{
    min-height:42px!important;
    padding-inline:12px!important;
    font-size:.78rem;
  }
}

/* =========================================================
   Dřevěné sauny 0.40.56 — sekundární cesta na Deluxe a
   přesné zarovnání desktopového průvodce materiály
   ========================================================= */
.tub-detail .tub-fit-guide__link{
  width:max-content;
  max-width:100%;
  display:inline-flex;
  gap:7px;
  align-items:center;
  margin-top:15px;
  padding-bottom:3px;
  border-bottom:1px solid rgba(44,62,54,.35);
  color:var(--tub-green);
  font-size:.72rem;
  font-weight:720;
  line-height:1.35;
  text-decoration:none;
}

/* =========================================================
   Dřevěné sauny 0.40.59 — klidnější vstup do konfigurátoru
   a jednoznačná mobilní konverzní cesta
   ========================================================= */
.tub-detail .tub-phase-anchor{display:block;height:0;scroll-margin-top:96px}
.tub-detail .tub-package-choice-summary{display:none}
.tub-detail .tub-phase-actions--first{justify-content:flex-end}
.tub-detail .tub-package--popular:after{display:none}
.tub-detail .tub-config-form[data-tub-package-choice=""] .tub-package--popular,
.tub-detail .tub-config-form[data-tub-package-choice="popular"] .tub-package--popular{
  border-color:var(--tub-green);
  background:var(--tub-green);
  color:#fff;
}
.tub-detail .tub-config-form[data-tub-package-choice=""] .tub-package--popular:hover,
.tub-detail .tub-config-form[data-tub-package-choice="popular"] .tub-package--popular:hover{
  background:var(--tub-green);
}
.tub-detail .tub-config-form[data-tub-package-choice=""] .tub-package--popular b,
.tub-detail .tub-config-form[data-tub-package-choice="popular"] .tub-package--popular b{
  color:#fff;
}
.tub-detail .tub-config-form[data-tub-package-choice="custom"] .tub-package--popular{
  border-color:var(--tub-line);
  background:#fff;
  color:var(--tub-ink);
}
.tub-detail .tub-config-form[data-tub-package-choice="custom"] .tub-package--popular b{
  color:var(--tub-green);
}

@media(max-width:720px){
  .tub-detail .tub-configurator__header h2{
    max-width:none;
    font-size:clamp(2.45rem,10.2vw,3rem);
    line-height:1;
  }
  .tub-detail .tub-configurator__header>p{max-width:34rem}
  .tub-detail .tub-configurator.has-package-choice .tub-configurator__header,
  .tub-detail .tub-configurator.has-package-choice .tub-packages{
    display:none!important;
  }
  .tub-detail .tub-package-choice-summary:not([hidden]){
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:center;
    margin-bottom:12px;
    padding:10px 12px;
    border:1px solid var(--tub-line);
    background:rgba(255,255,255,.48);
    font-size:.72rem;
  }
  .tub-detail .tub-package-choice-summary span{color:var(--tub-muted)}
  .tub-detail .tub-package-choice-summary strong{color:var(--tub-ink)}
  .tub-detail .tub-package-choice-summary .text-link{color:var(--tub-green);font-size:.72rem}
  .tub-detail .tub-configurator .tub-size-guide{display:none}
  .tub-detail .tub-phase-actions--first{justify-content:flex-end}
}
.tub-detail .tub-fit-guide__link span{transition:transform .18s ease}
.tub-detail .tub-fit-guide__link:hover span,
.tub-detail .tub-fit-guide__link:focus-visible span{transform:translateX(3px)}

@media(min-width:1101px){
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__layout{
    --material-panel-height:520px;
    grid-template-rows:var(--material-panel-height) auto;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__preview,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__controls,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__image-wrap{
    height:var(--material-panel-height)!important;
    min-height:var(--material-panel-height)!important;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__controls{
    grid-template-rows:58px minmax(0,1fr);
    overflow:hidden;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__options{
    min-height:0;
    height:100%;
    grid-auto-rows:minmax(0,1fr);
    align-content:stretch;
    gap:10px;
    padding:12px;
  }
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-choice{
    min-height:0;
    height:auto;
  }
}

@media(max-width:720px){
  .tub-detail .tub-fit-guide__link{font-size:.7rem}
}

/* Dřevěné sauny 0.40.60 — stabilní souhrn konfigurace na desktopu */
.tub-config-summary__legal{
  margin:0;
  border-top:1px solid rgba(255,255,255,.14);
  color:rgba(255,255,255,.58);
}
.tub-config-summary__legal>summary{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:13px 27px;
  cursor:pointer;
  list-style:none;
  font-size:.69rem;
  font-weight:650;
}
.tub-config-summary__legal>summary::-webkit-details-marker{display:none}
.tub-config-summary__legal>summary::after{
  content:"+";
  color:rgba(255,255,255,.78);
  font-size:1rem;
  font-weight:400;
  line-height:1;
}
.tub-config-summary__legal[open]>summary::after{content:"−"}
.tub-config-summary__legal>p{
  margin:0;
  padding:0 27px 16px;
  color:rgba(255,255,255,.5);
  font-size:.7rem;
  line-height:1.5;
}
@media(min-width:961px){
  .tub-detail .tub-config-summary{
    display:flex;
    flex-direction:column;
    max-height:calc(100svh - 205px);
    overflow:hidden;
  }
  .tub-detail .tub-config-summary__head{
    flex:0 0 auto;
    grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);
    align-items:baseline;
    gap:10px;
    padding:14px 20px;
  }
  .tub-detail .tub-config-summary__head strong{
    min-width:0;
    font-size:.92rem;
    line-height:1.25;
    text-align:right;
  }
  .tub-detail .tub-config-summary__price{
    flex:0 0 auto;
    gap:2px;
    padding:15px 20px;
  }
  .tub-detail .tub-config-summary__price strong{font-size:clamp(1.45rem,1.8vw,1.85rem)}
  .tub-detail .tub-config-summary__price em{margin-top:7px;padding:7px 9px;font-size:.7rem}
  .tub-detail .tub-config-summary__price>i{margin-top:6px;font-size:.68rem}
  .tub-detail .tub-config-summary__delivery{
    flex:0 0 auto;
    gap:3px 12px;
    padding:13px 20px;
  }
  .tub-detail .tub-config-summary__delivery>small{font-size:.64rem;line-height:1.35}
  .tub-detail .tub-config-summary .tub-shipping-control{margin-top:9px}
  .tub-detail .tub-config-summary .tub-shipping-control input{height:36px}
  .tub-detail .tub-config-summary .tub-shipping-control .button-outline{min-height:36px}
  .tub-detail .tub-config-summary__progress{
    flex:0 0 auto;
    gap:7px;
    padding:12px 20px;
  }
  .tub-detail .tub-config-summary__list{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
  }
  .tub-detail .tub-config-summary__section>summary{padding:11px 20px}
  .tub-detail .tub-config-summary__section dl{padding:0 20px 8px}
  .tub-detail .tub-config-summary__section dl div{padding:8px 0}
  .tub-detail .tub-config-summary__edit{
    flex:0 0 auto;
    margin:8px 20px 12px;
  }
  .tub-detail .tub-config-summary__legal{flex:0 0 auto}
  .tub-detail .tub-config-summary__legal>summary{padding:11px 20px}
  .tub-detail .tub-config-summary__legal>p{padding:0 20px 14px}
}
@media(max-width:720px){
  .tub-config-summary__legal{padding-bottom:88px}
  .tub-config-summary__legal>summary{padding-inline:20px}
  .tub-config-summary__legal>p{padding-inline:20px}
  .tub-config-summary__edit{margin-bottom:18px}
}

/* 0.40.61: dvoustupňový výběr hydromasáže */
.tub-hydromassage-selector{
  display:none;
  gap:12px;
  margin:0 0 18px;
}
.tub-option-group--hydromassage.is-ready>.tub-hydromassage-selector{display:grid}
.tub-hydromassage-selector__step,
.tub-hydromassage-selector__choice{
  color:#6c6d68;
  font-size:11px;
  font-weight:800;
  letter-spacing:.15em;
  line-height:1.35;
  text-transform:uppercase;
}
.tub-hydromassage-selector__choice{margin-top:6px}
.tub-hydromassage-selector__types{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.tub-hydromassage-selector__types button{
  appearance:none;
  display:grid;
  align-content:center;
  gap:5px;
  min-height:84px;
  padding:15px 16px;
  border:1px solid #d8d8d3;
  border-radius:0;
  background:#fff;
  color:#111511;
  font:inherit;
  text-align:left;
  cursor:pointer;
  transition:border-color .18s ease,background-color .18s ease,color .18s ease;
}
.tub-hydromassage-selector__types button strong{font-size:15px;line-height:1.2}
.tub-hydromassage-selector__types button small{color:#70716d;font-size:12px;line-height:1.35}
.tub-hydromassage-selector__types button:hover{border-color:#294137}
.tub-hydromassage-selector__types button.is-active,
.tub-hydromassage-selector__types button[aria-pressed="true"]{
  border-color:#294137;
  background:#294137;
  color:#fff;
}
.tub-hydromassage-selector__types button.is-active small,
.tub-hydromassage-selector__types button[aria-pressed="true"] small{color:rgba(255,255,255,.72)}
.tub-hydromassage-selector__types button:focus-visible{outline:3px solid #c8a96b;outline-offset:2px}
.tub-hydromassage-selector__types button:disabled{opacity:.45;cursor:not-allowed}
.tub-option-group--hydromassage.is-ready[data-tub-hydro-active="none"]>.tub-option-grid{display:none}
.tub-option-group--hydromassage.is-ready[data-tub-hydro-active="none"]>.tub-hydromassage-selector{margin-bottom:0}
.tub-option-group--hydromassage.is-ready[data-tub-hydro-active="none"]>.tub-hydromassage-selector>[hidden]{display:none}
.tub-hydromassage-count{display:none}
.tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"])>.tub-option-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"]) .tub-option{
  min-height:112px;
  grid-template-columns:minmax(0,1fr) 22px;
  gap:8px;
  padding:14px;
  cursor:pointer;
}
.tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"]) .tub-option__image,
.tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"]) .tub-option__swatch,
.tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"]) .tub-option__icon{display:none}
.tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"]) .tub-option__content{gap:5px}
.tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"]) .tub-option__content>strong,
.tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"]) .tub-option__content>small{display:none}
.tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"]) .tub-hydromassage-count{
  display:block;
  color:#171916;
  font-size:.86rem;
  font-weight:680;
  line-height:1.15;
}
.tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"]) .tub-hydromassage-count span{
  font-size:1.35rem;
  letter-spacing:-.03em;
}
.tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"]) .tub-option__content em{
  padding:3px 6px;
  font-size:.52rem;
}
.tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"]) .tub-option__content>b{
  margin-top:1px;
  font-size:.66rem;
  line-height:1.25;
}
.tub-hydromassage-detail{
  display:grid;
  gap:5px;
  margin-top:12px;
  padding:15px 17px;
  border-left:3px solid #294137;
  background:#f1eee7;
}
.tub-hydromassage-detail[hidden]{display:none!important}
.tub-hydromassage-detail>span{
  color:#6c6d68;
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.tub-hydromassage-detail>strong{font-size:.92rem;line-height:1.3}
.tub-hydromassage-detail>p{margin:0;color:#6c6d68;font-size:.78rem;line-height:1.45}
@media(max-width:720px){
  .tub-hydromassage-selector{gap:10px;margin-bottom:15px}
  .tub-option-group--hydromassage.is-ready[data-tub-hydro-active="none"]{padding-bottom:18px}
  .tub-hydromassage-selector__types{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tub-hydromassage-selector__types button{min-height:76px;padding:12px}
  .tub-hydromassage-selector__types button strong{font-size:14px}
  .tub-hydromassage-selector__types button small{font-size:11px}
  .tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"])>.tub-option-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"]) .tub-option{
    min-height:112px;
    padding:12px;
  }
  .tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"]) .tub-hydromassage-count{font-size:.8rem}
  .tub-option-group--hydromassage.is-ready:not([data-tub-hydro-active="none"]) .tub-hydromassage-count span{font-size:1.25rem}
  .tub-hydromassage-detail{padding:14px 15px}
}

/* 0.40.65: sémantické skupiny a přirozené mobilní pořadí technických údajů */
.tub-detail .tub-specs__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  width:min(1480px,100%);
  margin:0 auto;
  border-top:1px solid var(--tub-line);
  border-left:1px solid var(--tub-line);
}
.tub-detail .tub-specs__group,
.tub-detail .tub-specs__list{display:contents}
.tub-detail .tub-specs__group h3{
  grid-row:1;
  margin:0;
  padding:17px clamp(24px,3vw,42px);
  border-right:1px solid var(--tub-line);
  border-bottom:1px solid var(--tub-line);
  background:#f3f0e9;
  color:var(--tub-green);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.14em;
  line-height:1.35;
  text-transform:uppercase;
}
.tub-detail .tub-specs__group--left h3,
.tub-detail .tub-specs__group--left .tub-specs__item{grid-column:1}
.tub-detail .tub-specs__group--right h3,
.tub-detail .tub-specs__group--right .tub-specs__item{grid-column:2}
.tub-detail .tub-specs__group .tub-specs__item{grid-row:var(--tub-spec-row)}
.tub-detail .tub-specs__list{margin:0}
.tub-detail .tub-specs__value{margin:0}
.tub-detail .tub-specs__note{
  display:grid;
  grid-template-columns:minmax(150px,.2fr) minmax(0,.8fr);
  gap:clamp(20px,3vw,46px);
  align-items:start;
  width:min(1480px,100%);
  margin:18px auto 0;
  padding:19px clamp(20px,3vw,34px);
  border-left:3px solid var(--tub-green);
  background:#f3f0e9;
}
.tub-detail .tub-specs__note strong{
  color:var(--tub-green);
  font-size:.65rem;
  font-weight:800;
  letter-spacing:.12em;
  line-height:1.4;
  text-transform:uppercase;
}
.tub-detail .tub-specs__note span{
  color:var(--tub-muted);
  font-size:.86rem;
  line-height:1.5;
}
@media(max-width:720px){
  .tub-detail .tub-specs>header h2{
    max-width:14ch;
    font-size:clamp(2.65rem,12.2vw,3.25rem);
  }
  .tub-detail .tub-specs__grid{display:block}
  .tub-detail .tub-specs__group{display:block}
  .tub-detail .tub-specs__list{display:block;margin:0}
  .tub-detail .tub-specs__group h3{
    display:block;
    margin:0;
    padding:14px 16px;
    border-right:1px solid var(--tub-line);
    border-bottom:1px solid var(--tub-line);
    font-size:.63rem;
  }
  .tub-detail .tub-specs__group--right h3{border-top:10px solid #faf8f3}
  .tub-detail .tub-specs__note{
    grid-template-columns:1fr;
    gap:7px;
    margin-top:12px;
    padding:16px;
  }
  .tub-detail .tub-specs__note span{font-size:.8rem}
}

/* 0.40.66: FAQ je kompaktní, klávesnicově zřetelné a bez nuceně otevřené odpovědi. */
.tub-detail .tub-faq__item summary:focus-visible{
  outline:2px solid var(--tub-green);
  outline-offset:-3px;
}
.tub-detail .tub-faq__item summary:hover i{
  border-color:rgba(23,25,22,.42);
}
@media(max-width:720px){
  .tub-detail .tub-faq__header h2{
    max-width:14ch;
    font-size:clamp(2.65rem,12.2vw,3.25rem);
  }
  .tub-detail .tub-faq__item summary strong{
    white-space:normal;
    overflow-wrap:anywhere;
  }
}
@media(prefers-reduced-motion:reduce){
  .tub-detail .tub-faq__item summary i::before,
  .tub-detail .tub-faq__item summary i::after{transition:none}
}

/* 0.40.67: poslední krok vede k poptávce podle skutečného stavu konfigurace. */
.tub-detail .tub-final-cta{align-items:center}
.tub-detail .tub-final-cta__content{max-width:510px}
.tub-detail .tub-final-cta__assurances{
  display:grid;
  gap:11px;
  margin:25px 0 0;
  padding:0;
  list-style:none;
}
.tub-detail .tub-final-cta__assurances li{
  position:relative;
  padding-left:25px;
  color:rgba(255,255,255,.82);
  font-size:.82rem;
  line-height:1.45;
}
.tub-detail .tub-final-cta__assurances li::before{
  content:"";
  position:absolute;
  top:.46em;
  left:1px;
  width:8px;
  height:8px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:50%;
  background:rgba(255,255,255,.12);
}
.tub-detail .tub-final-cta__actions{
  display:flex;
  flex-wrap:wrap;
  gap:17px 22px;
  align-items:center;
  margin-top:29px;
}
.tub-detail .tub-final-cta__actions .button{
  display:inline-flex;
  gap:18px;
  align-items:center;
  justify-content:center;
  margin-top:0;
  font:inherit;
  font-weight:700;
  cursor:pointer;
}
.tub-detail .tub-final-cta__consult{
  padding:9px 0;
  border-bottom:1px solid rgba(255,255,255,.42);
  color:#fff;
  font-size:.82rem;
  font-weight:650;
  text-decoration:none;
}
.tub-detail .tub-final-cta__consult:hover{border-bottom-color:#fff}
.tub-detail .tub-final-cta__actions .button:focus-visible,
.tub-detail .tub-final-cta__consult:focus-visible{
  outline:2px solid #fff;
  outline-offset:4px;
}

.tub-contact-panel__required{
  margin:0 0 2px;
  color:rgba(255,255,255,.66);
  font-size:.72rem;
  line-height:1.45;
}
.tub-contact-panel__fields>label:not(.tub-contact-panel__consent)>span{
  color:rgba(255,255,255,.72);
}
.tub-contact-panel__fields>label:not(.tub-contact-panel__consent)>small{
  color:rgba(255,255,255,.5);
  font-size:.66rem;
  font-weight:500;
}
.tub-contact-panel__consent a{
  color:#fff;
  text-underline-offset:3px;
}
.tub-contact-panel__fields input:focus-visible,
.tub-contact-panel__fields textarea:focus-visible{
  outline:2px solid #fff;
  outline-offset:2px;
}
.tub-contact-panel__submit .button[aria-busy="true"]{
  cursor:wait;
  opacity:.72;
}

@media(max-width:720px){
  .tub-detail .tub-final-cta h2{font-size:clamp(2.25rem,10vw,3.25rem)}
  .tub-detail .tub-final-cta__content{max-width:none}
  .tub-detail .tub-final-cta__assurances{margin-top:20px}
  .tub-detail .tub-final-cta__assurances li{font-size:.78rem}
  .tub-detail .tub-final-cta__actions{display:grid;gap:15px;margin-top:24px}
  .tub-detail .tub-final-cta__actions .button{width:100%;min-height:52px}
  .tub-detail .tub-final-cta__consult{width:max-content}
  .tub-contact-panel__required{font-size:.68rem}
}

/* 0.40.73 — Stejné skutečné výřezy vložek v materiálech i konfigurátoru.
 * Průhledné WebP soubory obsahují celý výrobek, proto je neřežeme do dalšího
 * CSS kruhu. Granite používá stejný společný prezentační režim. */
.tub-detail[data-tub-model] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img{
  object-fit:contain!important;
  border-radius:0!important;
  background:transparent!important;
  filter:drop-shadow(0 14px 20px rgba(23,25,22,.12))!important;
}
.tub-detail[data-tub-model] .tub-material-explorer__options[data-material-options="liners"] .tub-material-choice img{
  object-fit:contain!important;
  border-radius:0!important;
  background:transparent!important;
  filter:none!important;
}
.tub-detail[data-tub-model] [data-tub-group="tub-color"] .tub-option__image--material img{
  object-fit:contain;
  background:transparent;
}

/* 0.40.74 — Modelové rendery jsou skutečné transparentní výřezy, ne
 * kruhové vzorky. Stejný soubor se bez ořezu používá v materiálech i
 * konfigurátoru. Vyšší specificita ruší starší pravidla referenční
 * stránky Sklolaminát External. */
.tub-detail[data-tub-model] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img,
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img,
.tub-detail[data-tub-model="sklolaminat-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img{
  width:min(76%,460px)!important;
  height:auto!important;
  max-width:460px!important;
  max-height:430px!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:drop-shadow(0 14px 20px rgba(23,25,22,.12))!important;
}
.tub-detail[data-tub-model] .tub-material-explorer__options[data-material-options="liners"] .tub-material-choice img,
.tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer__options[data-material-options="liners"] .tub-material-choice img,
.tub-detail[data-tub-model="sklolaminat-external"] .tub-material-explorer__options[data-material-options="liners"] .tub-material-choice img{
  object-fit:contain!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
.tub-detail[data-tub-model] [data-tub-group="tub-color"] .tub-option__image--material,
.tub-detail[data-tub-model="fiberglass-external"] [data-tub-group="tub-color"] .tub-option__image--material,
.tub-detail[data-tub-model="sklolaminat-external"] [data-tub-group="tub-color"] .tub-option__image--material{
  overflow:visible!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.tub-detail[data-tub-model] [data-tub-group="tub-color"] .tub-option__image--material img,
.tub-detail[data-tub-model="fiberglass-external"] [data-tub-group="tub-color"] .tub-option__image--material img,
.tub-detail[data-tub-model="sklolaminat-external"] [data-tub-group="tub-color"] .tub-option__image--material img{
  width:100%!important;
  height:100%!important;
  padding:0!important;
  object-fit:contain!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
@media(max-width:720px){
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap,
  .tub-detail[data-tub-model="sklolaminat-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap{
    min-height:260px!important;
    padding:24px 16px!important;
  }
  .tub-detail[data-tub-model] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img,
  .tub-detail[data-tub-model="fiberglass-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img,
  .tub-detail[data-tub-model="sklolaminat-external"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img{
    width:min(82vw,340px)!important;
    max-width:88%!important;
    max-height:300px!important;
  }
}

/* 0.40.76 — Produktové fotografie vložek Vířivky Deluxe mají čisté bílé
 * pozadí. Sjednocené plátno zabraňuje viditelným obdélníkům a zachovává
 * skutečnou barevnost dodaných vzorků bez dalšího tónování. */
.tub-detail[data-tub-model="whirlpool-deluxe"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap{
  background:#fff;
}
.tub-detail[data-tub-model="whirlpool-deluxe"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img{
  width:min(88%,600px)!important;
  max-width:600px!important;
  max-height:470px!important;
  filter:none!important;
}
.tub-detail[data-tub-model="whirlpool-deluxe"] .tub-material-explorer__options[data-material-options="liners"] .tub-material-choice img,
.tub-detail[data-tub-model="whirlpool-deluxe"] [data-tub-group="tub-color"] .tub-option__image--material img{
  background:#fff!important;
}
@media(max-width:720px){
  .tub-detail[data-tub-model="whirlpool-deluxe"] .tub-material-explorer:not([data-active-material-group="claddings"]) .tub-material-explorer__image-wrap img{
    width:min(92%,420px)!important;
    max-width:92%!important;
    max-height:310px!important;
  }
}

/* 0.40.81 — Koupací vana Acryl Deluxe používá celé transparentní podklady
 * tří metalických vložek. Mramorové varianty Coffee a Grey jsou jednotné
 * povrchové výřezy; stejný zdroj i ořez platí v přehledu a konfigurátoru. */
.tub-detail[data-tub-model="acryl-bath-deluxe"] .tub-material-explorer[data-material-option^="color-marble-"] .tub-material-explorer__image-wrap img{
  width:min(70%,470px)!important;
  height:auto!important;
  aspect-ratio:1!important;
  object-fit:cover!important;
  object-position:50% 56%!important;
  border-radius:50%!important;
  clip-path:circle(43% at 50% 50%);
  filter:drop-shadow(0 14px 20px rgba(23,25,22,.12))!important;
  transform:scale(1.16);
}
.tub-detail[data-tub-model="acryl-bath-deluxe"] .tub-material-explorer__options[data-material-options="liners"] .tub-material-choice[data-material-option^="color-marble-"] img{
  object-fit:cover!important;
  object-position:50% 56%!important;
  border-radius:50%!important;
  clip-path:circle(43% at 50% 50%);
  transform:scale(1.16);
}
.tub-detail[data-tub-model="acryl-bath-deluxe"] [data-tub-group="tub-color"] [data-option-id^="color-marble-"] .tub-option__image--material{
  overflow:hidden!important;
  border-radius:50%!important;
  background:#f3f0e9!important;
}
.tub-detail[data-tub-model="acryl-bath-deluxe"] [data-tub-group="tub-color"] [data-option-id^="color-marble-"] .tub-option__image--material img{
  object-fit:cover!important;
  object-position:50% 56%!important;
  border-radius:50%!important;
  transform:scale(1.16);
}
@media(max-width:720px){
  .tub-detail[data-tub-model="acryl-bath-deluxe"] .tub-material-explorer[data-material-option^="color-marble-"] .tub-material-explorer__image-wrap img{
    width:min(90vw,370px)!important;
    max-height:350px!important;
  }
}

/* 0.40.85 — mobilní dokončení Koupací vany Acryl Deluxe.
 * Rozměr v úvodním štítku zůstává pohromadě a rychlé parametry mají na
 * úzké obrazovce dost místa pro plné názvy, hodnoty i vysvětlující text. */
@media(max-width:720px){
  .tub-detail[data-tub-model="acryl-bath-deluxe"] .product-hero__copy>.eyebrow{
    max-width:100%;
    font-size:.58rem;
    letter-spacing:.13em;
    line-height:1.55;
  }
  .tub-detail[data-tub-model="acryl-bath-deluxe"] .tub-hero__facts.tub-hero__facts--quick{
    grid-template-columns:1fr;
  }
  .tub-detail[data-tub-model="acryl-bath-deluxe"] .tub-hero__facts--quick .tub-hero__facts-card{
    grid-template-columns:minmax(96px,.34fr) minmax(0,.66fr);
    grid-template-rows:auto auto;
    column-gap:18px;
    row-gap:5px;
    min-height:0;
    padding:19px 18px;
    border-right:0;
    border-bottom:1px solid var(--tub-line);
  }
  .tub-detail[data-tub-model="acryl-bath-deluxe"] .tub-hero__facts--quick .tub-hero__facts-card:nth-last-child(-n+2){
    border-bottom:1px solid var(--tub-line);
  }
  .tub-detail[data-tub-model="acryl-bath-deluxe"] .tub-hero__facts--quick .tub-hero__facts-card:last-child{
    border-bottom:0;
  }
  .tub-detail[data-tub-model="acryl-bath-deluxe"] .tub-hero__facts--quick .tub-hero__facts-card span{
    grid-column:1;
    grid-row:1 / span 2;
    align-self:start;
    padding-top:3px;
    font-size:.59rem;
    line-height:1.4;
  }
  .tub-detail[data-tub-model="acryl-bath-deluxe"] .tub-hero__facts--quick .tub-hero__facts-card strong{
    grid-column:2;
    grid-row:1;
    max-width:none;
    margin:0;
    font-size:1.06rem;
    line-height:1.15;
    text-align:left;
    white-space:normal;
  }
  .tub-detail[data-tub-model="acryl-bath-deluxe"] .tub-hero__facts--quick .tub-hero__facts-card small{
    grid-column:2;
    grid-row:2;
    font-size:.72rem;
    line-height:1.45;
  }
}

/* 0.40.87 — kompaktní třísloupcový katalog koupacích sudů.
 * Cena od používá skutečný výpočet aktivního produktového ceníku. */
.catalog-archive--hot-tubs .catalog-grid--3{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(58px,5.4vw,88px) clamp(22px,2.2vw,36px);
}
.catalog-archive--hot-tubs .catalog-grid--3 > .catalog-card:last-child:nth-child(3n + 1){
  grid-column:2;
}
.catalog-archive--hot-tubs .catalog-card--editorial .catalog-card__media{
  aspect-ratio:4/3;
}
.catalog-archive--hot-tubs .catalog-card--editorial .catalog-card__body{
  padding-top:20px;
}
.catalog-archive--hot-tubs .catalog-card--editorial .catalog-card__identity h2{
  margin:9px 0 11px;
  font-size:clamp(1.72rem,2.05vw,2.55rem);
  line-height:1.02;
}
.catalog-archive--hot-tubs .catalog-card--editorial .catalog-card__description{
  display:-webkit-box;
  overflow:hidden;
  min-height:4.5em;
  font-size:.94rem;
  line-height:1.5;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
}
.catalog-archive--hot-tubs .catalog-card__starting-price{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:5px 8px;
  margin:19px 0 0;
}
.catalog-archive--hot-tubs .catalog-card__starting-price span{
  flex-basis:100%;
  color:rgba(23,25,22,.5);
  font-size:.68rem;
  font-weight:650;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.catalog-archive--hot-tubs .catalog-card__starting-price strong{
  font-size:1.35rem;
  font-weight:680;
  letter-spacing:-.025em;
}
.catalog-archive--hot-tubs .catalog-card__starting-price small{
  color:rgba(23,25,22,.68);
  font-size:.8rem;
  font-weight:550;
}
.catalog-archive--hot-tubs .catalog-card--editorial .catalog-card__specs{
  margin-top:19px;
}
.catalog-archive--hot-tubs .catalog-card--editorial .catalog-card__specs div{
  display:grid;
  grid-template-columns:minmax(72px,.72fr) minmax(0,1.28fr);
  gap:12px;
  align-items:start;
  padding:10px 0;
}
.catalog-archive--hot-tubs .catalog-card--editorial .catalog-card__specs dt{
  margin:1px 0 0;
  font-size:.65rem;
}
.catalog-archive--hot-tubs .catalog-card--editorial .catalog-card__specs dd{
  font-size:.86rem;
  line-height:1.35;
}
.catalog-archive--hot-tubs .catalog-card__cta{
  margin-top:20px;
  font-size:.92rem;
}
@media(max-width:1100px){
  .catalog-archive--hot-tubs .catalog-grid--3{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .catalog-archive--hot-tubs .catalog-grid--3 > .catalog-card:last-child:nth-child(3n + 1){
    grid-column:auto;
  }
  .catalog-archive--hot-tubs .catalog-card--editorial .catalog-card__identity h2{
    font-size:clamp(2rem,4vw,3rem);
  }
}
@media(max-width:720px){
  .catalog-archive--hot-tubs .catalog-grid--3{
    grid-template-columns:1fr;
    gap:48px;
  }
  .catalog-archive--hot-tubs .catalog-card--editorial .catalog-card__body{
    padding-top:18px;
  }
  .catalog-archive--hot-tubs .catalog-card--editorial .catalog-card__identity h2{
    font-size:clamp(2.28rem,9.55vw,3.15rem)!important;
  }
  .catalog-archive--hot-tubs .catalog-card--editorial .catalog-card__description{
    min-height:0;
    -webkit-line-clamp:initial;
  }
}

/* 0.40.89 — kompaktnější mobilní vstup do katalogu koupacích sudů. */
@media(max-width:760px){
  .catalog-archive--hot-tubs .catalog-hero{
    padding:64px 16px 48px;
  }
  .catalog-archive--hot-tubs .catalog-hero__inner{
    gap:42px;
  }
  .catalog-archive--hot-tubs .catalog-hero__copy h1{
    font-size:clamp(3.15rem,13.5vw,4.8rem);
  }
  .catalog-archive--hot-tubs .catalog-grid-section{
    padding:64px 16px 84px;
  }
  .catalog-archive--hot-tubs .catalog-grid-section__heading{
    gap:22px;
    margin-bottom:48px;
  }
  .catalog-archive--hot-tubs .catalog-grid-section__heading h2{
    font-size:clamp(2.5rem,10.8vw,3.25rem);
    line-height:.98;
  }
}

/* 0.41.4 — produktové fotografie schodů a čitelné materiálové varianty. */
.tub-configurator [data-tub-group="stairs"] .tub-option__image--stairs{
  width:84px;
  height:84px;
  padding:3px;
  border-radius:14px;
  background:linear-gradient(145deg,#f7f5ef 0%,#ebe6dc 100%);
}
.tub-configurator [data-tub-group="stairs"] .tub-option__image--stairs img{
  object-fit:contain;
  padding:0;
  transform:none;
}
.tub-configurator [data-tub-group="stairs"] .tub-option:has(.tub-option__image--stairs){
  min-height:112px;
  grid-template-columns:84px minmax(0,1fr) 24px;
  align-items:center;
}
.tub-configurator [data-tub-group="stairs"] .tub-option:hover .tub-option__image--stairs img,
.tub-configurator [data-tub-group="stairs"] .tub-option.is-selected .tub-option__image--stairs img{
  transform:none;
}
@media(max-width:760px){
  .tub-configurator [data-tub-group="stairs"] .tub-option__image--stairs{
    width:68px;
    height:68px;
  }
  .tub-configurator [data-tub-group="stairs"] .tub-option:has(.tub-option__image--stairs){
    min-height:96px;
    grid-template-columns:68px minmax(0,1fr) 22px;
  }
}

/* 0.41.5 — jednostránkový katalog s hlavní Vířivkou Deluxe. */
.catalog-archive--hot-tubs .catalog-grid--3 > .catalog-card:last-child:nth-child(3n + 1){
  grid-column:auto;
}
.catalog-archive--hot-tubs .catalog-grid--3 > .catalog-card--featured{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);
  overflow:hidden;
  border:1px solid rgba(23,25,22,.12);
  border-radius:2px;
  background:#ece8df;
}
.catalog-archive--hot-tubs .catalog-card--featured .catalog-card__media{
  min-height:clamp(430px,40vw,650px);
  aspect-ratio:auto;
  background:#d7d1c5;
}
.catalog-archive--hot-tubs .catalog-card--featured .catalog-card__media img{
  height:100%;
}
.catalog-archive--hot-tubs .catalog-card--featured .catalog-card__body{
  display:flex;
  justify-content:center;
  gap:0;
  padding:clamp(42px,5.2vw,78px);
}
.catalog-archive--hot-tubs .catalog-card--featured .catalog-card__identity h2{
  max-width:8ch;
  margin:12px 0 18px;
  font-size:clamp(3rem,4.8vw,5.8rem);
  line-height:.94;
}
.catalog-archive--hot-tubs .catalog-card--featured .catalog-card__description{
  display:block;
  overflow:visible;
  min-height:0;
  font-size:1rem;
  -webkit-line-clamp:initial;
}
.catalog-archive--hot-tubs .catalog-card--featured .catalog-card__specs{
  margin-top:26px;
}
.catalog-archive--hot-tubs .catalog-card--featured .catalog-card__cta{
  margin-top:28px;
}
@media(max-width:1100px){
  .catalog-archive--hot-tubs .catalog-grid--3 > .catalog-card--featured{
    grid-template-columns:minmax(0,1.05fr) minmax(330px,.95fr);
  }
  .catalog-archive--hot-tubs .catalog-card--featured .catalog-card__body{
    padding:clamp(34px,4.2vw,52px);
  }
}
@media(max-width:820px){
  .catalog-archive--hot-tubs .catalog-grid--3 > .catalog-card--featured{
    grid-template-columns:1fr;
  }
  .catalog-archive--hot-tubs .catalog-card--featured .catalog-card__media{
    min-height:0;
    aspect-ratio:4 / 3;
  }
}
@media(max-width:720px){
  .catalog-archive--hot-tubs .catalog-grid--3 > .catalog-card--featured{
    grid-column:auto;
  }
  .catalog-archive--hot-tubs .catalog-card--featured .catalog-card__body{
    padding:26px 22px 30px;
  }
  .catalog-archive--hot-tubs .catalog-card--featured .catalog-card__identity h2{
    max-width:none;
  }
}

/* 0.41.22 — Sudová sauna: společné obsahové bloky a porovnání produktů. */
.barrel-sauna-detail>section.barrel-sauna-material-explorer{background:#f3f0e9!important}
.barrel-sauna-detail .barrel-sauna-faq{display:block}
.barrel-sauna-detail .barrel-sauna-faq .tub-faq__header h2{max-width:930px;margin:0;font-size:clamp(3rem,5.4vw,6.4rem);line-height:.95;letter-spacing:-.055em}
.barrel-sauna-material-explorer .tub-material-explorer__image-wrap{min-height:430px}
.barrel-sauna-material-explorer .tub-material-explorer__image-wrap img{width:100%;height:100%;max-height:none;object-fit:cover;filter:none}

body.product-comparison-open{overflow:hidden}
.product-comparison-dialog{
  width:min(1180px,calc(100vw - 40px));
  max-width:none;
  max-height:min(92svh,980px);
  margin:auto;
  padding:0;
  overflow:hidden;
  border:0;
  color:#171916;
  background:transparent;
  box-shadow:0 30px 90px rgba(0,0,0,.3);
}
.product-comparison-dialog::backdrop{background:rgba(12,15,13,.76);backdrop-filter:blur(5px)}
.product-comparison-dialog__panel{position:relative;max-height:min(92svh,980px);overflow:auto;background:#f5f2eb;overscroll-behavior:contain}
.product-comparison-dialog__close{
  position:sticky;
  z-index:4;
  top:18px;
  float:right;
  width:44px;
  height:44px;
  margin:18px 18px -62px 0;
  border:1px solid rgba(23,25,22,.18);
  border-radius:50%;
  color:#171916;
  background:rgba(255,255,255,.92);
  font-size:1.65rem;
  line-height:1;
  cursor:pointer;
}
.product-comparison-dialog__close:hover,.product-comparison-dialog__close:focus-visible{color:#fff;background:#2c3e36;border-color:#2c3e36}
.product-comparison-dialog__header{padding:clamp(34px,4.5vw,64px) clamp(24px,5vw,72px) clamp(26px,3.8vw,48px);border-bottom:1px solid rgba(23,25,22,.13)}
.product-comparison-dialog__header .eyebrow{margin:0 0 12px;color:#2c3e36}
.product-comparison-dialog__header h2{max-width:890px;margin:0;font-size:clamp(2.5rem,4.8vw,5.4rem);line-height:.95;letter-spacing:-.055em}
.product-comparison-dialog__header>p:last-child{max-width:760px;margin:20px 0 0;color:#66706a;line-height:1.62}
.product-comparison-dialog__models{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(23,25,22,.13);border-bottom:1px solid rgba(23,25,22,.13)}
.product-comparison-model{display:grid;grid-template-columns:minmax(150px,.72fr) minmax(0,1fr);min-height:220px;background:#fff}
.product-comparison-model.is-current{box-shadow:inset 0 4px 0 #2c3e36}
.product-comparison-model figure{min-height:220px;margin:0;overflow:hidden;background:#ddd8ce}
.product-comparison-model figure img{width:100%;height:100%;object-fit:cover}
.product-comparison-model>div{align-self:center;padding:28px}
.product-comparison-model>div>span{display:block;margin-bottom:9px;color:#66706a;font-size:.62rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase}
.product-comparison-model h3{margin:0;font-size:clamp(1.6rem,2.35vw,2.65rem);line-height:1;letter-spacing:-.04em}
.product-comparison-model p{margin:13px 0 0;color:#66706a;font-size:.9rem;line-height:1.5}
.product-comparison-dialog__table{padding:0 clamp(24px,5vw,72px);background:#f5f2eb}
.product-comparison-dialog__row{display:grid;grid-template-columns:minmax(140px,.42fr) repeat(2,minmax(0,1fr));border-bottom:1px solid rgba(23,25,22,.12)}
.product-comparison-dialog__row>*{padding:18px 22px;border-left:1px solid rgba(23,25,22,.1);line-height:1.45}
.product-comparison-dialog__row>*:first-child{padding-left:0;border-left:0;color:#66706a;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase}
.product-comparison-dialog__row span{font-size:.92rem;font-weight:570}
.product-comparison-dialog__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:28px clamp(24px,5vw,72px) clamp(34px,4vw,56px)}
.product-comparison-dialog__actions .button,.product-comparison-dialog__actions .button-outline{display:flex;align-items:center;justify-content:center;min-height:54px;text-align:center;text-decoration:none}
.product-comparison-dialog__actions .button-outline:hover,.product-comparison-dialog__actions .button-outline:focus-visible{color:#fff;background:#2c3e36}

@media(max-width:880px){
  .product-comparison-model{grid-template-columns:1fr}
  .product-comparison-model figure{min-height:0;aspect-ratio:16/9}
  .product-comparison-model>div{padding:22px}
  .product-comparison-dialog__row{grid-template-columns:120px repeat(2,minmax(0,1fr))}
  .product-comparison-dialog__row>*{padding:16px 14px}
}
@media(max-width:720px){
  .barrel-sauna-detail .barrel-sauna-faq{padding:76px 16px}
  .barrel-sauna-detail .barrel-sauna-faq .tub-faq__header h2{font-size:clamp(2.65rem,11.8vw,4rem)}
  .barrel-sauna-material-explorer .tub-material-explorer__image-wrap{min-height:0}
  .product-comparison-dialog{width:100vw;max-height:100svh}
  .product-comparison-dialog__panel{max-height:100svh}
  .product-comparison-dialog__close{top:12px;margin:12px 12px -56px 0}
  .product-comparison-dialog__header{padding:72px 18px 28px}
  .product-comparison-dialog__header h2{font-size:clamp(2.25rem,10.8vw,3.4rem)}
  .product-comparison-dialog__models{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-comparison-model{display:block;min-height:0}
  .product-comparison-model figure{aspect-ratio:4/3}
  .product-comparison-model>div{padding:16px 14px 18px}
  .product-comparison-model h3{font-size:1.38rem}
  .product-comparison-model p{font-size:.78rem}
  .product-comparison-dialog__table{padding:0 18px}
  .product-comparison-dialog__row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-comparison-dialog__row>strong{grid-column:1/-1;padding:16px 0 8px;border-left:0}
  .product-comparison-dialog__row span{padding:10px 12px 16px;font-size:.82rem}
  .product-comparison-dialog__row span:nth-child(2){padding-left:0;border-left:0}
  .product-comparison-dialog__actions{padding:24px 18px 34px;grid-template-columns:1fr}
}

/* 0.41.23 — Sudová sauna: kompaktnější hero a galerie. */
@media(min-width:961px){
  .barrel-sauna-hero__copy{
    padding:clamp(56px,5vw,78px) max(40px,7vw);
  }
  .barrel-sauna-hero__copy h1{
    margin-bottom:20px;
    font-size:clamp(4.4rem,6.7vw,7.7rem);
  }
  .barrel-sauna-hero__technical{
    margin-top:18px;
    padding-top:14px;
  }
  .barrel-sauna-hero__price{margin-top:24px}
  .barrel-sauna-hero .product-hero__actions{margin-top:24px}
  .barrel-sauna-hero__assurance{margin-top:18px}
  .barrel-sauna-hero__media{min-height:680px}
  .barrel-sauna-hero__facts>div{
    min-height:108px;
    padding-block:23px;
  }

  .barrel-sauna-gallery.product-gallery-strip{
    padding-top:clamp(68px,5vw,86px);
    padding-bottom:clamp(52px,4vw,68px);
  }
  .barrel-sauna-gallery .product-gallery-strip__header{
    margin-bottom:clamp(30px,3vw,44px);
  }
  .barrel-sauna-gallery .product-gallery-strip__header h2{
    font-size:clamp(3.1rem,4.35vw,5.2rem);
  }
  .barrel-sauna-gallery .tub-product-gallery__intro{margin-top:16px}
  .barrel-sauna-gallery .product-gallery-strip__item .product-lightbox-trigger{
    height:clamp(400px,42svh,500px);
  }
  .barrel-sauna-gallery .product-gallery-strip figcaption{padding-top:14px}
  .barrel-sauna-gallery .product-gallery-strip__hint{margin-top:20px}
}

@media(max-width:960px){
  .barrel-sauna-hero__copy{padding:64px max(24px,5vw) 48px}
  .barrel-sauna-hero__copy h1{margin-bottom:20px}
  .barrel-sauna-hero__technical{margin-top:18px;padding-top:14px}
  .barrel-sauna-hero__price{margin-top:24px}
  .barrel-sauna-hero .product-hero__actions{margin-top:24px}
  .barrel-sauna-hero__assurance{margin-top:18px}
  .barrel-sauna-hero__media{min-height:56vw}
  .barrel-sauna-hero__facts>div{min-height:108px;padding-block:23px}

  .barrel-sauna-gallery.product-gallery-strip{padding:64px 0 52px}
  .barrel-sauna-gallery .product-gallery-strip__header{margin-bottom:30px}
  .barrel-sauna-gallery .tub-product-gallery__intro{margin-top:16px}
  .barrel-sauna-gallery .product-gallery-strip__item .product-lightbox-trigger{
    height:clamp(340px,52svh,470px);
  }
  .barrel-sauna-gallery .product-gallery-strip figcaption{padding-top:14px}
  .barrel-sauna-gallery .product-gallery-strip__hint{margin-top:20px}
}

@media(max-width:620px){
  .barrel-sauna-hero__copy{padding:56px 16px 40px}
  .barrel-sauna-hero__copy h1{font-size:3.6rem}
  .barrel-sauna-hero__media{min-height:74vw}
  .barrel-sauna-hero__facts>div{min-height:94px;padding-block:18px}

  .barrel-sauna-gallery.product-gallery-strip{padding:54px 0 44px}
  .barrel-sauna-gallery .product-gallery-strip__header{gap:22px;margin-bottom:26px}
  .barrel-sauna-gallery .product-gallery-strip__item .product-lightbox-trigger{
    height:clamp(320px,48svh,420px);
  }
  .barrel-sauna-gallery .product-gallery-strip__hint{margin-top:16px}
}

/* 0.41.29 — Square: sjednocený rytmus šablony po vizuální kontrole. */
@media(min-width:1181px){
  .square-sauna-detail .tub-config-layout{
    grid-template-columns:minmax(0,1fr) minmax(400px,430px);
  }
}

@media(min-width:721px){
  .square-sauna-detail .barrel-sauna-gallery .product-gallery-strip__item,
  .square-sauna-detail .barrel-sauna-gallery .product-gallery-strip__item--wide,
  .square-sauna-detail .barrel-sauna-gallery .product-gallery-strip__item--landscape,
  .square-sauna-detail .barrel-sauna-gallery .product-gallery-strip__item--portrait{
    width:min(430px,34vw);
  }
  .square-sauna-detail .barrel-sauna-gallery .product-gallery-strip__item--contain img{
    object-fit:contain;
    padding:18px;
    background:#fff;
  }
}

/* 0.41.31 — Square: modelové náhledy prosklení. */
.square-sauna-detail .sauna-option-row[data-option-id="window-none"] .sauna-option__icon{
  background-image:url("../images/products/sauna-square/options/glazing-none.webp");
}
.square-sauna-detail .sauna-option-row[data-option-id="window-two-front"] .sauna-option__icon,
.square-sauna-detail .sauna-option-row[data-option-id="window-two-opening"] .sauna-option__icon{
  background-image:url("../images/products/sauna-square/options/glazing-two-square.webp");
}
.square-sauna-detail .sauna-option-row[data-option-id="window-panorama-half"] .sauna-option__icon{
  background-image:url("../images/products/sauna-square/options/glazing-panorama-half.webp");
}
.square-sauna-detail .sauna-option-row[data-option-id="window-panorama-full"] .sauna-option__icon{
  background-image:url("../images/products/sauna-square/options/glazing-panorama-full.webp");
}
.square-sauna-detail .sauna-option-row[data-option-id="window-front-full"] .sauna-option__icon{
  background-image:url("../images/products/sauna-square/options/glazing-front-full.webp");
}

/* =========================================================
   Dřevěné sauny 0.41.37 — SEO a rozhodovací katalog saun
   ========================================================= */
.sauna-hub{
  --hub-ink:#171916;
  --hub-muted:rgba(23,25,22,.66);
  --hub-line:rgba(23,25,22,.15);
  --hub-paper:#f8f6f1;
  --hub-soft:#e8e4db;
  --hub-green:#263c32;
  overflow:clip;
  background:var(--hub-paper);
  color:var(--hub-ink);
}
.sauna-hub-shell{width:min(1480px,calc(100% - 48px));margin-inline:auto}
.sauna-hub [id]{scroll-margin-top:96px}
.sauna-hub-breadcrumbs{display:flex;align-items:center;gap:10px;padding-block:18px;color:var(--hub-muted);font-size:.78rem;letter-spacing:.03em}
.sauna-hub-breadcrumbs a{color:inherit;text-decoration:none}
.sauna-hub-breadcrumbs a:hover,.sauna-hub-breadcrumbs a:focus-visible{color:var(--hub-ink);text-decoration:underline;text-underline-offset:4px}

.sauna-hub-hero{padding:42px 0 64px;background:var(--hub-soft)}
.sauna-hub-hero__grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr);gap:clamp(46px,6vw,96px);align-items:center}
.sauna-hub-hero__copy{padding-block:20px}
.sauna-hub-hero__copy h1{max-width:870px;margin:15px 0 27px;font-size:clamp(3.8rem,6.15vw,7rem);line-height:.93;letter-spacing:-.058em}
.sauna-hub-hero__lead{max-width:730px;margin:0;color:var(--hub-muted);font-size:clamp(1.05rem,1.25vw,1.22rem);line-height:1.62}
.sauna-hub-hero__actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px 28px;margin-top:34px}
.sauna-hub .button{min-height:50px}
.sauna-hub-text-link,.sauna-hub-card-link{display:inline-flex;align-items:center;gap:9px;width:max-content;max-width:100%;padding-bottom:5px;border-bottom:1px solid currentColor;color:inherit;font-weight:680;text-decoration:none}
.sauna-hub-text-link span,.sauna-hub-card-link span{transition:transform .22s ease}
.sauna-hub-text-link:hover span,.sauna-hub-text-link:focus-visible span,.sauna-hub-card-link:hover span,.sauna-hub-card-link:focus-visible span{transform:translateX(4px)}
.sauna-hub-hero__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:40px 0 0;padding:0;border-top:1px solid var(--hub-line);border-left:1px solid var(--hub-line);list-style:none}
.sauna-hub-hero__facts li{display:flex;flex-direction:column;gap:5px;min-height:90px;padding:17px 20px;border-right:1px solid var(--hub-line);border-bottom:1px solid var(--hub-line)}
.sauna-hub-hero__facts strong{font-size:1.04rem;line-height:1.2}
.sauna-hub-hero__facts span{color:var(--hub-muted);font-size:.78rem;line-height:1.35}
.sauna-hub-hero__media{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(320px,1fr) 145px;gap:10px;min-height:530px}
.sauna-hub-hero__image{position:relative;min-width:0;margin:0;overflow:hidden;background:#cfc8bc}
.sauna-hub-hero__image--main{grid-column:1/-1}
.sauna-hub-hero__image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.sauna-hub-hero__image:hover img{transform:scale(1.025)}
.sauna-hub-hero__image figcaption{position:absolute;left:14px;bottom:13px;padding:7px 10px;background:rgba(23,25,22,.78);color:#fff;font-size:.68rem;letter-spacing:.04em;backdrop-filter:blur(8px)}

.sauna-hub-index{position:sticky;top:0;z-index:18;border-bottom:1px solid var(--hub-line);background:rgba(248,246,241,.94);backdrop-filter:blur(18px)}
.admin-bar .sauna-hub-index{top:32px}
.sauna-hub-index__inner{display:flex;align-items:center;gap:38px;min-height:62px}
.sauna-hub-index__inner>span{flex:0 0 auto;color:var(--hub-muted);font-size:.68rem;font-weight:720;letter-spacing:.12em;text-transform:uppercase}
.sauna-hub-index__links{display:flex;align-items:center;gap:27px;overflow-x:auto;scrollbar-width:none}
.sauna-hub-index__links::-webkit-scrollbar{display:none}
.sauna-hub-index__links a{position:relative;flex:0 0 auto;padding:21px 0;color:inherit;font-size:.88rem;text-decoration:none}
.sauna-hub-index__links a::after{content:"";position:absolute;right:0;bottom:15px;left:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.sauna-hub-index__links a:hover::after,.sauna-hub-index__links a:focus-visible::after{transform:scaleX(1)}

.sauna-hub-models,.sauna-hub-compare,.sauna-hub-guide{padding:clamp(82px,8.5vw,132px) 0}
.sauna-hub-section-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.55fr);gap:clamp(42px,7vw,110px);align-items:end;margin-bottom:clamp(44px,5vw,72px)}
.sauna-hub-section-head h2{max-width:960px;margin:12px 0 0;font-size:clamp(3rem,5.05vw,5.8rem);line-height:.96;letter-spacing:-.052em}
.sauna-hub-section-head>p{max-width:540px;margin:0;color:var(--hub-muted);font-size:1.02rem;line-height:1.62}
.sauna-hub-model-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.sauna-hub-model-card{display:flex;min-width:0;flex-direction:column;border:1px solid var(--hub-line);background:rgba(255,255,255,.52);transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}
.sauna-hub-model-card--featured{display:grid;grid-column:1/-1;grid-template-columns:minmax(0,1.1fr) minmax(410px,.9fr);min-height:520px;background:#fff}
.sauna-hub-model-card.is-recommended{border-color:var(--hub-green);box-shadow:0 0 0 2px var(--hub-green),0 24px 60px rgba(38,60,50,.12);transform:translateY(-3px)}
.sauna-hub-model-card__media{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#d8d2c6}
.sauna-hub-model-card--featured .sauna-hub-model-card__media{height:100%;aspect-ratio:auto}
.sauna-hub-model-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.sauna-hub-model-card__media:hover img,.sauna-hub-model-card__media:focus-visible img{transform:scale(1.025)}
.sauna-hub-model-card__media>span{position:absolute;left:16px;bottom:16px;padding:8px 10px;background:rgba(23,25,22,.8);color:#fff;font-size:.67rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;backdrop-filter:blur(8px)}
.sauna-hub-model-card__body{display:flex;flex:1;flex-direction:column;padding:27px 25px 25px}
.sauna-hub-model-card--featured .sauna-hub-model-card__body{padding:clamp(34px,4vw,60px)}
.sauna-hub-model-card__identity>.eyebrow{min-height:2.6em;margin:0 0 11px;font-size:.63rem;line-height:1.3}
.sauna-hub-model-card--featured .sauna-hub-model-card__identity>.eyebrow{min-height:0}
.sauna-hub-model-card__identity h3{margin:0 0 14px;font-size:clamp(2rem,2.8vw,3.5rem);line-height:.98;letter-spacing:-.045em}
.sauna-hub-model-card--featured .sauna-hub-model-card__identity h3{font-size:clamp(3rem,4.6vw,5.4rem)}
.sauna-hub-model-card__identity h3 a{color:inherit;text-decoration:none}
.sauna-hub-model-card__identity>p:last-child{margin:0;color:var(--hub-muted);font-size:.94rem;line-height:1.55}
.sauna-hub-model-card--featured .sauna-hub-model-card__identity>p:last-child{max-width:630px;font-size:1.03rem}
.sauna-hub-model-card__specs{display:grid;margin:24px 0 0;border-top:1px solid var(--hub-line)}
.sauna-hub-model-card__specs div{display:grid;grid-template-columns:82px minmax(0,1fr);gap:14px;padding:12px 0;border-bottom:1px solid var(--hub-line)}
.sauna-hub-model-card__specs dt{color:var(--hub-muted);font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.sauna-hub-model-card__specs dd{margin:0;font-size:.84rem;font-weight:630;line-height:1.4}
.sauna-hub-model-card__footer{display:flex;flex:1;flex-direction:column;align-items:flex-start;margin-top:24px}
.sauna-hub-model-card__footer>p{margin:0 0 22px;color:var(--hub-muted);font-size:.86rem;line-height:1.52}
.sauna-hub-card-link{margin-top:auto;font-size:.88rem;line-height:1.35}

.sauna-hub-selector{padding:clamp(76px,8vw,124px) 0;background:var(--hub-green);color:#fff}
.sauna-hub-selector__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.55fr);gap:clamp(50px,8vw,130px);align-items:stretch}
.sauna-hub-selector__question h2{max-width:900px;margin:12px 0 22px;font-size:clamp(3rem,5.1vw,5.8rem);line-height:.96;letter-spacing:-.052em}
.sauna-hub-selector__question>p{max-width:720px;margin:0;color:rgba(255,255,255,.66);font-size:1rem;line-height:1.6}
.sauna-hub-selector__choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:38px;border-top:1px solid rgba(255,255,255,.2);border-left:1px solid rgba(255,255,255,.2)}
.sauna-hub-selector__choices button{display:flex;min-height:108px;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:20px;border:0;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;text-align:left;transition:background .2s ease,color .2s ease}
.sauna-hub-selector__choices button:hover,.sauna-hub-selector__choices button:focus-visible{background:rgba(255,255,255,.08)}
.sauna-hub-selector__choices button[aria-pressed="true"]{background:#fff;color:var(--hub-green)}
.sauna-hub-selector__choices button:last-child:nth-child(odd){grid-column:1/-1}
.sauna-hub-selector__choices span{font-size:1rem;font-weight:680;line-height:1.25}
.sauna-hub-selector__choices small{color:inherit;font-size:.7rem;letter-spacing:.04em;opacity:.62}
.sauna-hub-selector__result{display:flex;flex-direction:column;justify-content:center;min-height:100%;padding:clamp(30px,4vw,54px);background:#f3efe6;color:var(--hub-ink)}
.sauna-hub-selector__result-label{margin-bottom:34px;color:var(--hub-muted);font-size:.66rem;font-weight:740;letter-spacing:.12em;text-transform:uppercase}
.sauna-hub-selector__result>strong{font-size:clamp(2.6rem,4.3vw,5rem);line-height:.95;letter-spacing:-.05em}
.sauna-hub-selector__result>p{margin:25px 0;color:var(--hub-muted);font-size:1rem;line-height:1.58}
.sauna-hub-selector__result .button{align-self:flex-start;margin-top:4px;background:var(--hub-green);color:#fff}
.sauna-hub-selector__result>small{display:block;margin-top:30px;padding-top:20px;border-top:1px solid var(--hub-line);color:var(--hub-muted);font-size:.74rem;line-height:1.5}

.sauna-hub-compare{background:#eeeae2}
.sauna-hub-compare__scroller{overflow-x:auto;border:1px solid var(--hub-line);background:rgba(255,255,255,.43);scrollbar-width:thin}
.sauna-hub-compare__table{width:100%;min-width:1120px;border-collapse:collapse;table-layout:fixed}
.sauna-hub-compare__table th,.sauna-hub-compare__table td{padding:20px 19px;border-right:1px solid var(--hub-line);border-bottom:1px solid var(--hub-line);text-align:left;vertical-align:top}
.sauna-hub-compare__table tr>*:last-child{border-right:0}
.sauna-hub-compare__table tbody tr:last-child>*{border-bottom:0}
.sauna-hub-compare__table thead th{padding-block:25px;background:rgba(255,255,255,.72)}
.sauna-hub-compare__table thead th:first-child{width:168px;color:var(--hub-muted);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}
.sauna-hub-compare__table thead span{display:block;margin-bottom:7px;color:var(--hub-muted);font-size:.61rem;letter-spacing:.08em;text-transform:uppercase}
.sauna-hub-compare__table thead strong{display:block;font-size:1.2rem;line-height:1.15}
.sauna-hub-compare__table tbody th{color:var(--hub-muted);font-size:.68rem;letter-spacing:.07em;text-transform:uppercase}
.sauna-hub-compare__table tbody td{font-size:.88rem;line-height:1.5}
.sauna-hub-compare__table tfoot th,.sauna-hub-compare__table tfoot td{border-top:1px solid var(--hub-line);border-bottom:0;background:var(--hub-green);color:#fff}
.sauna-hub-compare__table tfoot th{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}
.sauna-hub-compare__table tfoot a{color:inherit;font-size:.82rem;font-weight:670;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}

.sauna-hub-guide{background:var(--hub-paper)}
.sauna-hub-guide__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--hub-line);border-left:1px solid var(--hub-line)}
.sauna-hub-guide__grid article{display:flex;min-height:340px;flex-direction:column;padding:28px clamp(22px,2.7vw,40px) 32px;border-right:1px solid var(--hub-line);border-bottom:1px solid var(--hub-line)}
.sauna-hub-guide__grid article>span{margin-bottom:auto;color:var(--hub-muted);font-size:.68rem;letter-spacing:.1em}
.sauna-hub-guide__grid h3{margin:58px 0 14px;font-size:clamp(1.45rem,2vw,2.2rem);line-height:1.08;letter-spacing:-.035em}
.sauna-hub-guide__grid p{margin:0;color:var(--hub-muted);font-size:.9rem;line-height:1.56}
.sauna-hub-guide__links{display:flex;align-items:center;flex-wrap:wrap;gap:20px 34px;margin-top:28px;padding:23px 0;border-top:1px solid var(--hub-line);border-bottom:1px solid var(--hub-line)}
.sauna-hub-guide__links p{flex:1 1 360px;max-width:680px;margin:0 auto 0 0;color:var(--hub-muted);font-size:.88rem;line-height:1.5}
.sauna-hub-guide__links a{display:inline-flex;flex:0 0 auto;gap:8px;align-items:center;padding-bottom:4px;border-bottom:1px solid currentColor;color:inherit;font-size:.84rem;font-weight:680;text-decoration:none}
.sauna-hub-guide__links a span{transition:transform .2s ease}
.sauna-hub-guide__links a:hover span,.sauna-hub-guide__links a:focus-visible span{transform:translateX(4px)}

.sauna-hub-process{padding:clamp(82px,8.5vw,132px) 0;background:#d9d3c8}
.sauna-hub-process__grid{display:grid;grid-template-columns:minmax(340px,.7fr) minmax(0,1fr);gap:clamp(54px,9vw,145px)}
.sauna-hub-process__intro{position:sticky;top:105px;align-self:start}
.sauna-hub-process__intro h2{max-width:650px;margin:12px 0 24px;font-size:clamp(3rem,4.65vw,5.4rem);line-height:.96;letter-spacing:-.052em}
.sauna-hub-process__intro>p{max-width:600px;margin:0 0 27px;color:var(--hub-muted);font-size:1rem;line-height:1.62}
.sauna-hub-process__steps{margin:0;padding:0;border-top:1px solid var(--hub-line);list-style:none}
.sauna-hub-process__steps li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:22px;padding:28px 0;border-bottom:1px solid var(--hub-line)}
.sauna-hub-process__steps li>span{display:grid;width:36px;height:36px;place-items:center;border:1px solid rgba(23,25,22,.28);border-radius:50%;font-size:.72rem}
.sauna-hub-process__steps h3{margin:3px 0 11px;font-size:clamp(1.35rem,1.9vw,2rem);line-height:1.15;letter-spacing:-.03em}
.sauna-hub-process__steps p{max-width:690px;margin:0;color:var(--hub-muted);font-size:.94rem;line-height:1.58}

.sauna-hub-faq{padding:clamp(82px,8.5vw,132px) 0;background:var(--hub-paper)}
.sauna-hub-faq__grid{display:grid;grid-template-columns:minmax(330px,.62fr) minmax(0,1fr);gap:clamp(54px,9vw,145px)}
.sauna-hub-faq__head{align-self:start}
.sauna-hub-faq__head h2{max-width:650px;margin:12px 0 23px;font-size:clamp(3rem,4.65vw,5.4rem);line-height:.96;letter-spacing:-.052em}
.sauna-hub-faq__head>p{max-width:540px;margin:0 0 26px;color:var(--hub-muted);font-size:1rem;line-height:1.6}
.sauna-hub-faq__list{border-top:1px solid var(--hub-line)}
.sauna-hub-faq__list details{border-bottom:1px solid var(--hub-line);background:transparent}
.sauna-hub-faq__list summary{display:grid;grid-template-columns:38px minmax(0,1fr) 30px;gap:14px;align-items:center;min-height:90px;padding:19px 0;cursor:pointer;list-style:none}
.sauna-hub-faq__list summary::-webkit-details-marker{display:none}
.sauna-hub-faq__list summary>span{color:var(--hub-muted);font-size:.66rem;letter-spacing:.08em}
.sauna-hub-faq__list summary>strong{font-size:1.02rem;line-height:1.3}
.sauna-hub-faq__list summary i{position:relative;width:28px;height:28px;border:1px solid rgba(23,25,22,.23);border-radius:50%}
.sauna-hub-faq__list summary i::before,.sauna-hub-faq__list summary i::after{content:"";position:absolute;top:50%;left:50%;width:10px;height:1px;background:currentColor;transform:translate(-50%,-50%);transition:transform .2s ease}
.sauna-hub-faq__list summary i::after{transform:translate(-50%,-50%) rotate(90deg)}
.sauna-hub-faq__list details[open] summary i::after{transform:translate(-50%,-50%) rotate(0)}
.sauna-hub-faq__list details>div{padding:0 44px 25px 52px}
.sauna-hub-faq__list details>div p{max-width:780px;margin:0;color:var(--hub-muted);font-size:.94rem;line-height:1.65}

.sauna-hub-cta{padding:clamp(78px,8.5vw,128px) 0;background:var(--hub-green);color:#fff}
.sauna-hub-cta__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.55fr);gap:clamp(50px,10vw,165px);align-items:end}
.sauna-hub-cta h2{max-width:780px;margin:12px 0 0;font-size:clamp(3.4rem,5.8vw,6.7rem);line-height:.94;letter-spacing:-.055em}
.sauna-hub-cta__grid>div:last-child p{margin:0 0 27px;color:rgba(255,255,255,.68);font-size:1rem;line-height:1.62}
.sauna-hub-cta .button--light{background:#fff;color:var(--hub-green)}

.sauna-hub a:focus-visible,.sauna-hub button:focus-visible,.sauna-hub summary:focus-visible,.sauna-hub-compare__scroller:focus-visible{outline:2px solid currentColor;outline-offset:4px}

@media(max-width:1120px){
  .sauna-hub-hero__grid{grid-template-columns:1fr;gap:42px}
  .sauna-hub-hero__copy{max-width:980px}
  .sauna-hub-hero__media{min-height:560px}
  .sauna-hub-model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sauna-hub-model-card--featured{grid-column:1/-1}
  .sauna-hub-model-card:last-child:nth-child(even){grid-column:1/-1}
  .sauna-hub-guide__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sauna-hub-guide__grid article{min-height:300px}
}
@media(max-width:900px){
  .sauna-hub-section-head,.sauna-hub-selector__grid,.sauna-hub-process__grid,.sauna-hub-faq__grid,.sauna-hub-cta__grid{grid-template-columns:1fr}
  .sauna-hub-section-head{gap:24px}
  .sauna-hub-section-head>p{max-width:740px}
  .sauna-hub-model-card--featured{grid-template-columns:1fr;min-height:0}
  .sauna-hub-model-card--featured .sauna-hub-model-card__media{aspect-ratio:16/10}
  .sauna-hub-selector__grid{gap:36px}
  .sauna-hub-selector__result{min-height:360px}
  .sauna-hub-process__grid,.sauna-hub-faq__grid{gap:48px}
  .sauna-hub-process__intro{position:static}
  .sauna-hub-cta__grid{gap:32px}
  .sauna-hub-cta__grid>div:last-child{max-width:660px}
}
@media(max-width:782px){.admin-bar .sauna-hub-index{top:46px}}
@media(max-width:700px){
  .sauna-hub-shell{width:min(100% - 32px,1480px)}
  .sauna-hub-breadcrumbs{padding-block:13px;font-size:.72rem}
  .sauna-hub-hero{padding:31px 0 46px}
  .sauna-hub-hero__grid{gap:29px}
  .sauna-hub-hero__copy{padding:0}
  .sauna-hub-hero__copy h1{max-width:11ch;margin:11px 0 19px;font-size:clamp(3rem,13vw,4.25rem);line-height:.95}
  .sauna-hub-hero__lead{font-size:.97rem;line-height:1.55}
  .sauna-hub-hero__actions{align-items:flex-start;flex-direction:column;gap:18px;margin-top:25px}
  .sauna-hub-hero__facts{margin-top:29px}
  .sauna-hub-hero__facts li{min-height:78px;padding:13px 14px}
  .sauna-hub-hero__facts strong{font-size:.92rem}
  .sauna-hub-hero__facts span{font-size:.7rem}
  .sauna-hub-hero__media{display:block;min-height:0}
  .sauna-hub-hero__image--main{height:300px}
  .sauna-hub-hero__image:not(.sauna-hub-hero__image--main){display:none}
  .sauna-hub-index__inner{min-height:52px}
  .sauna-hub-index__inner>span{display:none}
  .sauna-hub-index__links{gap:20px}
  .sauna-hub-index__links a{padding:17px 0;font-size:.8rem}
  .sauna-hub-index__links a::after{bottom:11px}
  .sauna-hub-models,.sauna-hub-compare,.sauna-hub-guide,.sauna-hub-process,.sauna-hub-faq{padding:62px 0}
  .sauna-hub-section-head{margin-bottom:31px}
  .sauna-hub-section-head h2,.sauna-hub-selector__question h2,.sauna-hub-process__intro h2,.sauna-hub-faq__head h2{font-size:clamp(2.55rem,11.4vw,3.45rem);line-height:.98}
  .sauna-hub-section-head>p{font-size:.94rem;line-height:1.55}
  .sauna-hub-model-grid{grid-template-columns:1fr;gap:20px}
  .sauna-hub-model-card--featured,.sauna-hub-model-card:last-child:nth-child(even){grid-column:auto}
  .sauna-hub-model-card--featured .sauna-hub-model-card__media,.sauna-hub-model-card__media{aspect-ratio:4/3}
  .sauna-hub-model-card--featured .sauna-hub-model-card__body,.sauna-hub-model-card__body{padding:23px 20px 22px}
  .sauna-hub-model-card__identity>.eyebrow{min-height:0}
  .sauna-hub-model-card--featured .sauna-hub-model-card__identity h3,.sauna-hub-model-card__identity h3{font-size:2.55rem}
  .sauna-hub-selector{padding:62px 0}
  .sauna-hub-selector__question>p{font-size:.94rem;line-height:1.55}
  .sauna-hub-selector__choices{grid-template-columns:1fr;margin-top:27px}
  .sauna-hub-selector__choices button{min-height:82px;padding:16px}
  .sauna-hub-selector__result{min-height:0;padding:27px 22px}
  .sauna-hub-selector__result-label{margin-bottom:22px}
  .sauna-hub-selector__result>strong{font-size:2.85rem}
  .sauna-hub-compare__scroller{width:calc(100% + 16px)}
  .sauna-hub-compare__table{min-width:980px}
  .sauna-hub-compare__table th,.sauna-hub-compare__table td{padding:16px 14px}
  .sauna-hub-guide__grid{grid-template-columns:1fr}
  .sauna-hub-guide__grid article{min-height:0;padding:22px}
  .sauna-hub-guide__grid article>span{margin-bottom:37px}
  .sauna-hub-guide__grid h3{margin:0 0 10px;font-size:1.55rem}
  .sauna-hub-guide__links{align-items:flex-start;flex-direction:column;gap:16px;margin-top:22px}
  .sauna-hub-guide__links p{margin-bottom:3px}
  .sauna-hub-process__grid,.sauna-hub-faq__grid{gap:34px}
  .sauna-hub-process__steps li{grid-template-columns:42px minmax(0,1fr);gap:14px;padding:22px 0}
  .sauna-hub-process__steps li>span{width:32px;height:32px}
  .sauna-hub-process__steps h3{font-size:1.28rem}
  .sauna-hub-faq__list summary{grid-template-columns:30px minmax(0,1fr) 28px;gap:10px;min-height:80px;padding:15px 0}
  .sauna-hub-faq__list summary>strong{font-size:.94rem}
  .sauna-hub-faq__list details>div{padding:0 10px 21px 40px}
  .sauna-hub-faq__list details>div p{font-size:.9rem;line-height:1.58}
  .sauna-hub-cta{padding:64px 0}
  .sauna-hub-cta h2{font-size:clamp(3rem,12.7vw,4.1rem)}
}
@media(prefers-reduced-motion:reduce){
  .sauna-hub-hero__image img,.sauna-hub-model-card,.sauna-hub-model-card__media img,.sauna-hub-text-link span,.sauna-hub-card-link span,.sauna-hub-faq__list summary i::after{transition:none}
}

/* 0.41.39 — Sauna Mini: galerie realizace a plná struktura šablony Sudové sauny. */
.mini-sauna-detail .mini-sauna-intro,
.mini-sauna-detail .mini-sauna-size-guide,
.mini-sauna-detail .mini-sauna-construction,
.mini-sauna-detail .mini-sauna-delivery-choice,
.mini-sauna-detail .mini-sauna-heating,
.mini-sauna-detail .mini-sauna-process,
.mini-sauna-detail .mini-sauna-delivery,
.mini-sauna-detail .mini-sauna-resources,
.mini-sauna-detail .mini-sauna-faq{
  padding-top:clamp(78px,6.2vw,112px);
  padding-bottom:clamp(78px,6.2vw,112px);
}
.mini-sauna-detail .mini-sauna-gallery .product-gallery-strip__header{padding-top:0}
.mini-sauna-detail .mini-sauna-gallery [data-gallery-type="product-view"] .product-lightbox-trigger{background:#f6f6f3}
.mini-sauna-detail .mini-sauna-gallery [data-gallery-type="product-view"] img{object-fit:contain;padding:clamp(10px,1.6vw,24px)}
.mini-sauna-detail .mini-sauna-construction .barrel-sauna-construction__media img{padding:clamp(16px,2.4vw,34px)}
.mini-sauna-size-guide__fixed>div{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(min-width:961px){
  .mini-sauna-detail .mini-sauna-hero .barrel-sauna-hero__copy{
    padding:clamp(56px,5vw,78px) max(40px,7vw);
  }
  .mini-sauna-detail .mini-sauna-hero .barrel-sauna-hero__copy h1{
    max-width:8ch;
    margin-bottom:20px;
    font-size:clamp(4.4rem,6.7vw,7.7rem);
  }
  .mini-sauna-detail .mini-sauna-hero .barrel-sauna-hero__media{min-height:680px}
  .mini-sauna-detail .mini-sauna-gallery .product-gallery-strip__item .product-lightbox-trigger{
    height:clamp(400px,42svh,500px);
  }
}
@media(max-width:960px){
  .mini-sauna-detail .mini-sauna-hero .barrel-sauna-hero__media{min-height:56vw}
  .mini-sauna-detail .mini-sauna-gallery .product-gallery-strip__item .product-lightbox-trigger{
    height:clamp(340px,52svh,470px);
  }
}
@media(max-width:620px){
  .mini-sauna-detail .mini-sauna-intro,
  .mini-sauna-detail .mini-sauna-size-guide,
  .mini-sauna-detail .mini-sauna-construction,
  .mini-sauna-detail .mini-sauna-delivery-choice,
  .mini-sauna-detail .mini-sauna-heating,
  .mini-sauna-detail .mini-sauna-process,
  .mini-sauna-detail .mini-sauna-delivery,
  .mini-sauna-detail .mini-sauna-resources,
  .mini-sauna-detail .mini-sauna-faq{
    padding-top:68px;
    padding-bottom:68px;
  }
  .mini-sauna-detail .mini-sauna-hero .barrel-sauna-hero__copy h1{font-size:3.6rem}
  .mini-sauna-detail .mini-sauna-hero .barrel-sauna-hero__media{min-height:74vw}
  .mini-sauna-size-guide__fixed>div{grid-template-columns:1fr}
  .mini-sauna-detail .mini-sauna-gallery .product-gallery-strip__item .product-lightbox-trigger{
    height:clamp(320px,48svh,420px);
  }
}

/* 0.41.44 — Sauna Mini: rozhodovací a výpočtové vysvětlení výkonu kamen. */
.mini-sauna-heating .barrel-sauna-heating__grid article{display:flex;flex-direction:column;min-height:360px}
.mini-sauna-heating .barrel-sauna-heating__grid h3{margin-top:54px}
.mini-sauna-heating .barrel-sauna-heating__grid p strong{display:block;margin-bottom:10px;color:#fff;font-size:.82rem;line-height:1.55}
.mini-sauna-heating .barrel-sauna-heating__grid a{width:max-content;margin-top:auto;padding-top:28px;color:#fff;font-size:.88rem;font-weight:740;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.72)}
.mini-sauna-heating__sizing{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(42px,7vw,110px);margin-top:clamp(48px,5vw,78px);padding:clamp(30px,4vw,58px);border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.035)}
.mini-sauna-heating__sizing h3{max-width:700px;margin:13px 0 20px;color:#fff;font-size:clamp(1.9rem,3vw,3.3rem);line-height:1.05;letter-spacing:-.035em}
.mini-sauna-heating__sizing article>p:last-child{margin:0;color:rgba(255,255,255,.7);line-height:1.72}
.mini-sauna-heating__sizing dl{margin:0;border-top:1px solid rgba(255,255,255,.18)}
.mini-sauna-heating__sizing dl>div{display:grid;grid-template-columns:minmax(105px,.32fr) minmax(0,1fr);gap:24px;padding:21px 0;border-bottom:1px solid rgba(255,255,255,.18)}
.mini-sauna-heating__sizing dt{color:#fff;font-weight:750}
.mini-sauna-heating__sizing dd{margin:0;color:rgba(255,255,255,.68);line-height:1.58}
@media(max-width:960px){
  .mini-sauna-heating__sizing{grid-template-columns:1fr;gap:34px}
  .mini-sauna-heating .barrel-sauna-heating__grid article{min-height:300px}
}
@media(max-width:620px){
  .mini-sauna-heating__sizing{padding:25px 21px}
  .mini-sauna-heating__sizing dl>div{grid-template-columns:1fr;gap:8px}
  .mini-sauna-heating .barrel-sauna-heating__grid article{min-height:0}
  .mini-sauna-heating .barrel-sauna-heating__grid a{margin-top:28px}
}

/* 0.41.46 — Výška hero Sauny Mini se neřídí poměrem stran nahraného obrázku. */
.mini-sauna-detail .mini-sauna-hero .barrel-sauna-hero__media>img{
  position:absolute;
  inset:0;
  display:block;
}

/* 0.43.15 — sdílený editor katalogových hero sekcí pro současné i budoucí katalogy. */
.catalog-hero-media .sauna-hub-hero__image.is-contain{background:#d9d3c7}
.catalog-hero-media .sauna-hub-hero__image.is-contain img{object-fit:contain;padding:clamp(8px,1vw,14px);box-sizing:border-box;background:#d9d3c7}
.catalog-hero-media .sauna-hub-hero__image.is-contain:hover img{transform:none}
.tub-detail>section.barrel-sauna-hero{background:#eeeae1!important}
.tub-detail .barrel-sauna-hero__copy h1.is-long{max-width:11ch;font-size:clamp(3.45rem,5.25vw,5.9rem);line-height:.92}
.tub-detail .barrel-sauna-hero__price>em{width:max-content;margin-bottom:6px;padding:5px 8px;color:#fff;background:var(--tub-green);font-size:.62rem;font-style:normal;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.tub-detail .barrel-sauna-hero__price>del{width:max-content;margin:4px 0 1px;color:var(--tub-muted);font-size:.88rem;text-decoration-thickness:1px}
.tub-detail .barrel-sauna-hero__price.is-discounted>strong{color:var(--tub-green)}
.tub-detail .barrel-sauna-hero__shipping{margin-top:2px}
.tub-detail .barrel-sauna-hero .product-hero__actions{margin-top:24px}
.tub-detail .barrel-sauna-hero__media>img{position:static;inset:auto}
@media(max-width:620px){
  .tub-detail .barrel-sauna-hero__copy h1.is-long{font-size:3.05rem}
}

/* 0.42.0 — jednotné PDF nabídky a heslem chráněný firemní režim. */
.tub-configurator__success .button-outline{margin-left:auto;color:#fff;border-color:rgba(255,255,255,.7);white-space:nowrap}
.offer-tools{margin-top:30px;padding:0;color:#fff;background:var(--tub-green);border:0}
.offer-tools__summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 22px;padding:21px clamp(22px,3vw,40px);cursor:pointer;list-style:none}
.offer-tools__summary::-webkit-details-marker{display:none}
.offer-tools__summary>span{grid-column:1/-1;color:rgba(255,255,255,.5);font-size:.6rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.offer-tools__summary>strong{font-size:1rem}
.offer-tools__summary>i{color:rgba(255,255,255,.68);font-size:.76rem;font-style:normal}
.offer-tools__body{padding:clamp(26px,4vw,52px);border-top:1px solid rgba(255,255,255,.18)}
.offer-tools__heading{max-width:900px}
.offer-tools__heading>span{color:rgba(255,255,255,.55);font-size:.62rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.offer-tools__heading h4{margin:7px 0 10px;color:#fff;font-size:clamp(1.55rem,2.5vw,2.55rem);line-height:1.08;letter-spacing:-.025em}
.offer-tools__heading p{margin:0;color:rgba(255,255,255,.68);line-height:1.65}
.offer-tools__unlock,.offer-tools__editor{margin-top:24px;padding:24px 0 0;border-top:1px solid rgba(255,255,255,.18)}
.offer-tools__session{display:flex;justify-content:space-between;gap:18px;margin-top:24px;padding:15px 0;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.72)}
.offer-tools__session .text-link{color:#fff}
.offer-tools__success{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:20px;padding:18px 20px;background:rgba(255,255,255,.09)}
.offer-tools__success>div{display:grid;gap:3px}
.offer-tools__success span{color:rgba(255,255,255,.68);font-size:.78rem}
.offer-tools__success .button-outline{color:#fff;border-color:rgba(255,255,255,.68);white-space:nowrap}
.offer-tools__success-actions,.offer-tools__buttons{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.offer-tools__buttons{flex:none}
.offer-tools__buttons .button,.offer-tools__buttons .button-outline{min-height:48px;white-space:nowrap}
.offer-tools__buttons .button-outline{color:#fff;border-color:rgba(255,255,255,.68)}
.offer-tools__send{position:static!important;display:flex!important;align-items:flex-start;gap:11px!important;font-weight:500!important;color:rgba(255,255,255,.76)!important}
.offer-tools__send>input{width:18px!important;min-height:18px!important;margin:2px 0 0;padding:0!important;accent-color:#fff}
.offer-tools__send>span{position:static!important;color:inherit!important;font-weight:inherit!important}
.offer-tools input:disabled,.offer-tools button:disabled{cursor:not-allowed;opacity:.5}
@media(max-width:700px){
  .tub-configurator__success .button-outline{margin-left:0;width:max-content}
  .offer-tools__summary{padding:19px}
  .offer-tools__body{padding:28px 19px}
  .offer-tools__session,.offer-tools__success{display:grid}
  .offer-tools__buttons{display:grid;width:100%}
  .offer-tools__buttons .button,.offer-tools__buttons .button-outline{width:100%;white-space:normal}
  .offer-tools__success .button-outline{width:max-content}
}
.realizations-map-card__content.is-text-only{grid-template-rows:1fr}.realizations-map-card__content.is-text-only>[data-map-detail-image]{display:none}
@media(max-width:800px){.realizations-map-card__content.is-text-only{grid-template-columns:1fr;grid-template-rows:1fr}}

/* 0.43.4 — učesaný katalog realizací a oprava skrytého panelu mapy. */
.realizations-hero{
  min-height:clamp(650px,78svh,840px);
  background:var(--realization-forest);
}

/* 0.43.5 — rozlišení mapových realizací a referencí s fotografií. */
.realizations-map-legend{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px 22px;
  color:rgba(23,25,22,.68);
  font-size:.72rem;
  font-weight:650;
}
.realizations-map-legend>span{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.realizations-map-legend__marker{
  position:relative;
  display:inline-block;
  width:13px;
  height:13px;
  border:3px solid #fff;
  border-radius:50%;
  background:var(--realization-forest);
  box-shadow:0 0 0 1px rgba(38,59,49,.22);
}
.realizations-map-legend__marker--photo{
  width:16px;
  height:16px;
  border-width:4px;
  background:#a77b42;
  box-shadow:0 0 0 2px rgba(167,123,66,.28);
}
.realizations-marker--with-photo{
  width:34px;
  height:34px;
  border-width:6px;
  background:#a77b42;
  box-shadow:0 0 0 3px rgba(167,123,66,.34),0 10px 25px rgba(21,27,23,.35);
}
.realizations-marker--with-photo i{inset:6px;transform:rotate(45deg)}
.realizations-marker--with-photo i::before{
  content:"";
  position:absolute;
  inset:4px 3px 3px;
  border:1.5px solid var(--realization-forest);
  border-radius:1px;
}
.realizations-marker--with-photo i::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:3px;
  height:3px;
  border:1px solid var(--realization-forest);
  border-radius:50%;
  transform:translate(-50%,-34%);
}
.realizations-cluster--with-photo{position:relative;box-shadow:0 0 0 4px rgba(167,123,66,.48),0 8px 22px rgba(21,27,23,.25)}
.realizations-cluster--with-photo::after{
  content:"";
  position:absolute;
  right:-2px;
  top:-2px;
  width:11px;
  height:11px;
  border:3px solid #fff;
  border-radius:50%;
  background:#a77b42;
}
.realizations-map-card__status{
  align-self:flex-start;
  margin:0 0 15px!important;
  padding:7px 9px;
  border:1px solid rgba(255,255,255,.24);
  color:rgba(255,255,255,.7)!important;
  font-size:.6rem;
  font-weight:750;
  letter-spacing:.1em;
  line-height:1;
  text-transform:uppercase;
}
.realizations-map-card__status.has-photo{color:#fff!important;border-color:rgba(211,172,116,.62);background:rgba(167,123,66,.24)}
.realizations-card__media{position:relative}
.realizations-card__badge{
  position:absolute;
  z-index:2;
  top:15px;
  left:15px;
  padding:8px 10px;
  color:#fff;
  background:rgba(30,47,39,.88);
  font-size:.59rem;
  font-weight:750;
  letter-spacing:.09em;
  line-height:1;
  text-transform:uppercase;
}
@media(max-width:800px){
  .realizations-map-meta{align-items:center}
  .realizations-map-legend{justify-content:flex-end}
}
@media(max-width:560px){
  .realizations-map-legend{justify-content:flex-start;margin-top:12px;gap:9px 16px}
  .realizations-card__badge{top:11px;left:11px}
}
.realizations-hero__image{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.realizations-hero__shade{
  background:linear-gradient(90deg,rgba(9,14,11,.88) 0%,rgba(9,14,11,.58) 45%,rgba(9,14,11,.11) 78%),linear-gradient(0deg,rgba(9,14,11,.78),transparent 56%);
}
.realizations-breadcrumbs{
  display:flex;
  align-items:center;
  gap:9px;
  max-width:100%;
  margin:0 0 23px;
  color:rgba(255,255,255,.68);
  font-size:.72rem;
  font-weight:650;
  letter-spacing:.035em;
}
.realizations-breadcrumbs a{color:inherit;text-decoration:none}
.realizations-breadcrumbs a:hover{text-decoration:underline;text-underline-offset:4px}
.realizations-breadcrumbs span[aria-current="page"]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.realizations-hero__content{padding:clamp(90px,10vw,150px) 0 clamp(46px,5vw,70px)}
.realizations-hero h1{max-width:13ch;margin-bottom:24px;font-size:clamp(3.8rem,6.6vw,7.2rem);line-height:.92}
.realizations-hero__lead{max-width:790px;margin-bottom:30px;font-size:clamp(1rem,1.18vw,1.2rem);line-height:1.58}
.realizations-hero__stats>div{min-height:98px;padding-block:23px}
.realizations-hero__stats strong{font-size:clamp(2.35rem,3.5vw,3.8rem)}
.realizations-intro{padding:clamp(90px,9vw,140px) 0}
.realizations-intro h2{max-width:880px;font-size:clamp(3rem,4.7vw,5.35rem);line-height:.97}
.realizations-intro__grid>p{font-size:1rem;line-height:1.65}
.realizations-map-section{padding:clamp(82px,8vw,125px) 0}
.realizations-map-section__header h2,.realizations-selected__header h2{font-size:clamp(2.8rem,4.45vw,5.1rem);line-height:.97}
.realizations-map-section__header>p,.realizations-selected__header>p{line-height:1.65}
.realizations-map-section__countries{
  display:flex;
  flex-wrap:wrap;
  gap:9px 22px;
  margin:30px 0 0;
  padding:20px 0 0;
  border-top:1px solid var(--realization-line);
  list-style:none;
  color:rgba(23,25,22,.62);
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.realizations-map-section__countries li+li::before{content:"·";margin-right:22px;color:#9b7045}
.realizations-filters{margin-top:40px}
.realizations-map-layout{grid-template-columns:minmax(0,1fr) minmax(370px,420px);min-height:620px}
.realizations-map{min-height:620px}
.realizations-map-card [hidden]{display:none!important}
.realizations-map-card__empty{
  align-self:stretch;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  width:100%;
  padding:clamp(34px,3.5vw,50px);
}
.realizations-map-card__index{width:58px;height:58px;margin:0 0 auto;font-size:.58rem}
.realizations-map-card h3{max-width:9ch;font-size:clamp(2rem,2.35vw,2.65rem);line-height:1.02}
.realizations-map-card__empty p{max-width:29ch;line-height:1.6}
.realizations-map-card__content{grid-template-rows:250px 1fr}
.realizations-map-card__content>div{padding:30px}
.realizations-map-card__content h3{max-width:none}
.realizations-selected{padding:clamp(92px,9vw,140px) 0}
.realizations-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(54px,5.5vw,82px) clamp(20px,2vw,30px);margin-top:clamp(52px,6.5vw,86px)}
.realizations-card--lead{grid-column:1/-1;grid-template-columns:minmax(0,1.42fr) minmax(330px,.58fr);gap:clamp(38px,5vw,76px)}
.realizations-card__media:focus-visible{outline:3px solid #a9823d;outline-offset:4px}
.realizations-card__body{padding-top:18px;border-top:1px solid var(--realization-line)}
.realizations-card--lead .realizations-card__body{padding:24px 0 8px}
.realizations-card__meta{gap:7px 12px;margin-bottom:15px;font-size:.63rem;line-height:1.45}
.realizations-card__meta span+span:before{margin-right:12px}
.realizations-card h3{max-width:18ch;margin-bottom:12px;font-size:clamp(1.65rem,2vw,2.35rem);line-height:1.02}
.realizations-card--lead h3{max-width:14ch;font-size:clamp(2.5rem,3.4vw,3.75rem)}
.realizations-card__body>p:not(.realizations-card__meta){
  display:-webkit-box;
  overflow:hidden;
  margin-bottom:14px;
  font-size:.92rem;
  line-height:1.58;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
}
.realizations-card--lead .realizations-card__body>p:not(.realizations-card__meta){font-size:1rem;-webkit-line-clamp:4}
.realizations-card .text-link{font-size:.82rem}
.realizations-method{padding:clamp(90px,9vw,140px) 0}
.realizations-method h2{max-width:850px;font-size:clamp(3rem,4.8vw,5.45rem)}
.realizations-method__grid{margin-top:clamp(48px,5vw,72px)}
.realizations-method__grid article{min-height:300px}
.realizations-cta h2,.realization-next-step h2{font-size:clamp(3rem,4.8vw,5.4rem)}
.realization-detail-hero__back.realizations-breadcrumbs{display:flex;margin-bottom:clamp(74px,14vh,160px)}

@media(max-width:1200px){
  .realizations-map-layout{grid-template-columns:minmax(0,1fr) 350px}
  .realizations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .realizations-card--lead{grid-template-columns:1.25fr .75fr}
}
@media(max-width:800px){
  .realizations-hero{min-height:680px}
  .realizations-hero h1{max-width:12ch;font-size:clamp(3.25rem,10vw,4.4rem)}
  .realizations-hero__lead{max-width:620px}
  .realizations-intro{padding:78px 0}
  .realizations-map-section,.realizations-selected,.realizations-method{padding-block:78px}
  .realizations-map-section__countries{gap:8px 16px;margin-top:22px}
  .realizations-map-section__countries li+li::before{margin-right:16px}
  .realizations-map-layout{grid-template-columns:1fr}
  .realizations-map{min-height:500px}
  .realizations-map-card__empty{min-height:300px}
  .realizations-map-card__index{margin-bottom:48px}
  .realizations-grid{grid-template-columns:1fr;gap:52px}
  .realizations-card--lead{display:block}
  .realizations-card--lead .realizations-card__body{padding-top:18px}
  .realizations-card h3,.realizations-card--lead h3{max-width:20ch;font-size:clamp(2rem,6vw,3rem)}
  .realizations-method__grid article{min-height:270px}
}
@media(max-width:560px){
  .realizations-hero{min-height:720px}
  .realizations-hero__content{padding-top:80px}
  .realizations-hero h1{font-size:clamp(3rem,13.1vw,3.65rem)}
  .realizations-breadcrumbs{margin-bottom:18px;font-size:.68rem}
  .realizations-map-section__countries{display:none}
  .realizations-map{min-height:420px}
  .realizations-map-card__content{grid-template-rows:210px auto}
  .realizations-map-card__content>div{min-height:280px}
  .realizations-map-section__header h2,.realizations-selected__header h2,.realizations-method h2,.realizations-cta h2,.realization-next-step h2{font-size:clamp(2.65rem,11vw,3.15rem)}
  .realizations-card h3,.realizations-card--lead h3{font-size:2.25rem}
  .realization-detail-hero__back.realizations-breadcrumbs{margin-bottom:82px}
  .realization-detail-hero__back.realizations-breadcrumbs span[aria-current="page"]{display:none}
  .realization-detail-hero__back.realizations-breadcrumbs span[aria-current="page"]+*{display:none}
}

/* 0.43.6 — kompaktnější mobilní realizace a vyváženější rytmus stránky. */
.realizations-intro{padding:clamp(74px,7.4vw,112px) 0}
.realizations-map-section{padding:clamp(76px,7.4vw,112px) 0}
.realizations-selected{padding:clamp(82px,8vw,120px) 0}
.realizations-method{padding:clamp(80px,8vw,120px) 0}
.realizations-method__grid{margin-top:clamp(42px,4.5vw,62px)}
.realizations-method__grid article{min-height:260px}
.realizations-method__grid p{color:rgba(255,255,255,.7)}
.realizations-intro__grid>p,.realizations-map-section__header>p,.realizations-selected__header>p{color:rgba(23,25,22,.72)}

@media(max-width:800px){
  .realizations-intro,.realizations-map-section,.realizations-selected,.realizations-method{padding-block:70px}
  .realizations-grid{gap:46px}
  .realizations-method__grid article{min-height:235px}
}

@media(max-width:560px){
  .realizations-hero{min-height:0}
  .realizations-hero__content{padding:72px 0 46px}
  .realizations-hero h1{font-size:clamp(3rem,12vw,3.45rem)}
  .realizations-hero__lead{margin-bottom:26px;font-size:.98rem;line-height:1.55}
  .realizations-hero__stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .realizations-hero__stats>div{
    align-items:flex-start;
    flex-direction:column;
    gap:7px;
    min-width:0;
    min-height:112px;
    padding:18px 10px;
    border-right:1px solid rgba(255,255,255,.2);
    border-bottom:0;
  }
  .realizations-hero__stats>div:first-child{padding-left:0}
  .realizations-hero__stats>div:last-child{border-right:0}
  .realizations-hero__stats strong{min-width:0;font-size:clamp(2rem,9vw,2.55rem)}
  .realizations-hero__stats span{max-width:12ch;font-size:.65rem;line-height:1.35}

  .realizations-intro,.realizations-map-section,.realizations-selected,.realizations-method{padding-block:62px}
  .realizations-intro__grid,.realizations-map-section__header,.realizations-selected__header{gap:24px}
  .realizations-intro h2{font-size:clamp(2.55rem,10.4vw,3rem)}
  .realizations-map-section__header h2,.realizations-selected__header h2,.realizations-method h2,.realizations-cta h2,.realization-next-step h2{font-size:clamp(2.5rem,10vw,2.9rem)}

  .realizations-filters{gap:8px;margin-top:30px;padding:9px}
  .realizations-filters__types{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px}
  .realizations-filters__types [data-filter-type="all"]{grid-column:1/-1}
  .realizations-filters button,.realizations-filters select{min-height:50px}
  .realizations-filters__reset{min-height:42px!important}
  .realizations-map-meta{margin-top:17px}
  .realizations-map{min-height:400px}

  .realizations-map-card__empty{min-height:220px;padding:28px}
  .realizations-map-card__index{width:48px;height:48px;margin-bottom:30px}
  .realizations-map-card__content{
    grid-template-columns:120px minmax(0,1fr);
    grid-template-rows:1fr;
    min-height:210px;
  }
  .realizations-map-card__content.is-text-only{grid-template-columns:1fr;grid-template-rows:1fr}
  .realizations-map-card__content>img{min-height:210px}
  .realizations-map-card__content>div{min-height:0;padding:20px 18px}
  .realizations-map-card__content h3{margin-bottom:12px;font-size:1.55rem}
  .realizations-map-card__content [data-map-detail-summary]{display:none}
  .realizations-map-card__status{margin-bottom:11px!important;padding:6px 7px;font-size:.52rem}
  .realizations-map-card__content .eyebrow{margin-bottom:8px;font-size:.57rem}
  .realizations-map-card__content .text-link{font-size:.75rem}

  .realizations-grid{gap:40px;margin-top:42px}
  .realizations-card__body,.realizations-card--lead .realizations-card__body{padding-top:16px}
  .realizations-card h3,.realizations-card--lead h3{max-width:19ch;font-size:clamp(1.9rem,8.2vw,2.1rem)}
  .realizations-card__meta{margin-bottom:12px;font-size:.59rem}
  .realizations-card__badge{padding:7px 8px;font-size:.53rem}
  .realizations-card__body>p:not(.realizations-card__meta){margin-bottom:12px;font-size:.9rem;line-height:1.55}

  .realizations-method__grid{margin-top:36px}
  .realizations-method__grid article{min-height:0;padding:28px 24px}
  .realizations-method__grid h3{margin:42px 0 14px;font-size:1.45rem}
  .realizations-cta,.realization-next-step{padding-block:70px}
}

/* Scoped to the versioned sauna configurator; quantities keep the existing visual language. */
.sauna-configurator [hidden]{display:none!important}
.sauna-option-quantity{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border:1px solid var(--color-border,#d4d5cb);border-top:0;font-size:.82rem}
.sauna-option-quantity input{width:78px;min-height:44px;border:1px solid #aeb6ab;background:#fff;color:#171916;padding:8px;font:inherit}
.sauna-option-quantity input:focus-visible{outline:2px solid #355447;outline-offset:2px}
.sauna-configurator--modular .sauna-phase-nav{grid-template-columns:repeat(5,minmax(0,1fr))}
.sauna-configurator--modular .sauna-configurator__price-help{max-width:100ch;margin:0 0 24px;color:var(--color-muted,#697267);font-size:.85rem;line-height:1.6}
.sauna-configurator--modular .tub-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.sauna-configurator--modular .tub-option{grid-template-columns:minmax(0,1fr) 24px;gap:16px;padding:20px;min-height:110px}
.sauna-configurator--modular .sauna-option__icon{display:none}
.sauna-configurator--modular .tub-option--visual{grid-template-columns:clamp(72px,7.5vw,112px) minmax(0,1fr) 22px;gap:14px;align-items:center;padding:16px}
.sauna-configurator--modular .sauna-option__media{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;min-width:0;background:#f7f5f0;overflow:hidden}
.sauna-configurator--modular .sauna-option__media img{display:block;width:100%;height:100%;object-fit:contain}
.sauna-configurator--modular [data-sauna-group="wt-plpz"] .sauna-option__media img,.sauna-configurator--modular [data-sauna-group="wt-plps"] .sauna-option__media img,.sauna-configurator--modular [data-sauna-group="wt-plpm"] .sauna-option__media img{object-fit:cover}
@media(min-width:621px) and (max-width:1150px){.sauna-configurator--modular .tub-option--visual{grid-template-columns:76px minmax(0,1fr) 20px;gap:10px;padding:12px}.sauna-configurator--modular .tub-option--visual .tub-option__content strong{font-size:.84rem}}
@media(max-width:620px){.sauna-configurator--modular .tub-option--visual{grid-template-columns:88px minmax(0,1fr) 22px;gap:12px;padding:14px}}
.sauna-configurator--modular .tub-option__content{min-width:0}
.sauna-configurator--modular .tub-option__content strong{font-size:.94rem;line-height:1.45;word-break:normal;overflow-wrap:break-word}
.sauna-configurator--modular .tub-option__content small:empty{display:none}
.sauna-configurator--modular .tub-option-group{padding-bottom:32px}
.sauna-configurator--modular .tub-option-group+.tub-option-group{padding-top:20px}
.sauna-configurator--modular .tub-option-group legend{grid-template-columns:minmax(0,1fr);gap:0;margin-bottom:20px}
.sauna-configurator--modular .tub-option-group legend>span,.sauna-configurator--modular .tub-option-group legend small:empty{display:none}
.sauna-configurator--modular [data-sauna-group="wt-len"] .tub-option-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.sauna-configurator--modular [data-sauna-group="wt-len"] .tub-option{padding:16px 12px;gap:8px}
@media(max-width:1000px){.sauna-configurator--modular .sauna-phase-nav{display:flex;overflow-x:auto}.sauna-configurator--modular .sauna-phase-nav button{flex:0 0 175px}}
@media(max-width:620px){.sauna-configurator--modular .tub-option-grid{grid-template-columns:1fr}.sauna-configurator--modular .tub-option{min-height:88px;padding:16px}.sauna-configurator--modular [data-sauna-group="wt-len"] .tub-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sauna-option-group .tub-option__content strong{overflow-wrap:anywhere}
.sauna-phase-nav button{min-width:0}
@media(min-width:900px){.sauna-phase-nav strong{font-size:.78rem}}
