/* v152 — warm architectural homepage, scoped below the existing header. */
main{--sr-ivory:#fbfaf7;--sr-warm:#f4efe7;--sr-ink:#2e2924;--sr-muted:#71685e;--sr-gold:#bd8d4f;--sr-line:#e3d9cb;background:var(--sr-ivory);color:var(--sr-ink);overflow:hidden}
main .shell{width:min(calc(100% - 64px),1320px);margin-inline:auto}

/* Architectural hero: one calm image, readable editorial copy. */
main .hero{padding:22px 0 0!important;background:var(--sr-ivory)!important}
main .shell-sculpt{width:min(calc(100% - 64px),1320px)!important;max-width:none!important}
main .hero-sculpt-stage{position:relative!important;display:block!important;height:650px!important;min-height:650px!important;overflow:hidden!important;border:0!important;border-radius:0!important;background:#eee7dd!important;box-shadow:none!important}
main .hero-sculpt-image{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;background-size:cover!important;background-position:center!important;opacity:1!important;filter:saturate(.82) brightness(1.08)!important;z-index:1!important}
main .hero-sculpt-wash{position:absolute!important;inset:0!important;display:block!important;background:linear-gradient(90deg,rgba(255,254,251,.98) 0%,rgba(255,254,251,.92) 29%,rgba(255,254,251,.45) 49%,rgba(255,254,251,.03) 72%)!important;z-index:2!important}
main .hero-sculpt-ribbon,main .hero-sculpt-orbit{display:none!important}
main .hero-sculpt-copy{position:absolute!important;inset:0 auto 0 0!important;display:flex!important;width:48%!important;max-width:610px!important;flex-direction:column!important;justify-content:center!important;padding:48px 0 150px 54px!important;color:var(--sr-ink)!important;text-align:left!important;transform:none!important;background:transparent!important;z-index:3!important}
main .hero-sculpt-copy:before{content:"SAUNA ROOM";display:block;margin-bottom:22px;color:var(--sr-gold);font:600 .68rem/1.2 Arial,sans-serif;letter-spacing:.25em}
main .hero-sculpt-copy h1{max-width:570px!important;margin:0 0 20px!important;color:var(--sr-ink)!important;font-size:clamp(2.9rem,4.6vw,5rem)!important;line-height:.98!important;letter-spacing:-.045em!important;text-shadow:none!important}
main .hero-sculpt-copy p{max-width:410px!important;margin:0!important;color:#5d554d!important;font-size:1rem!important;line-height:1.65!important;text-shadow:none!important}
main .hero-sculpt-actions{display:flex!important;flex-wrap:wrap!important;gap:11px!important;margin-top:28px!important}
main .hero-sculpt-actions a{min-height:46px!important;padding:0 24px!important;border-radius:0!important;font:600 .72rem/46px Arial,sans-serif!important;letter-spacing:.08em!important;text-decoration:none!important;box-shadow:none!important}
main .hero-sculpt-primary{border:1px solid var(--sr-gold)!important;background:var(--sr-gold)!important;color:#fff!important}
main .hero-sculpt-secondary{border:1px solid #cbb797!important;background:rgba(255,255,255,.65)!important;color:#493e31!important}
main .hero-sculpt-story{position:absolute!important;right:28px!important;bottom:28px!important;left:auto!important;top:auto!important;width:min(310px,33%)!important;min-height:0!important;padding:18px 20px!important;border:1px solid rgba(255,255,255,.78)!important;border-radius:0!important;background:rgba(255,253,248,.88)!important;backdrop-filter:blur(12px)!important;color:var(--sr-ink)!important;box-shadow:0 12px 36px rgba(66,49,28,.08)!important;z-index:4!important}
main .hero-sculpt-story h2{margin:0 0 6px!important;color:var(--sr-ink)!important;font-size:1.15rem!important;line-height:1.2!important;text-shadow:none!important}
main .hero-sculpt-story p{margin:0!important;color:var(--sr-muted)!important;font-size:.77rem!important;line-height:1.5!important;text-shadow:none!important}
main .hero-sculpt-specs{position:absolute!important;left:54px!important;bottom:30px!important;right:auto!important;top:auto!important;display:flex!important;gap:0!important;width:calc(48% - 84px)!important;padding-top:15px!important;border-top:1px solid rgba(173,142,98,.38)!important;background:transparent!important;z-index:4!important}
main .hero-sculpt-specs div{display:block!important;flex:1!important;width:auto!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0 13px!important;border:0!important;border-left:1px solid var(--sr-line)!important;border-radius:0!important;background:transparent!important;color:#6d604f!important;box-shadow:none!important}
main .hero-sculpt-specs div:first-child{padding-left:0!important;border-left:0!important}
main .hero-sculpt-specs strong{font:600 .65rem/1.35 Arial,sans-serif!important;letter-spacing:.035em!important;color:#6d604f!important}

/* Latest products: quiet catalogue cards. */
main .latest-products{padding:70px 0 62px!important;background:#fff!important}
main .latest-products-shell{width:min(calc(100% - 64px),1320px)!important}
main .latest-products-head{align-items:end!important;margin-bottom:24px!important;padding:0 0 17px!important;border-bottom:1px solid var(--sr-line)!important}
main .latest-products-head h2{margin:0!important;color:var(--sr-ink)!important;font-size:clamp(2rem,3vw,3.15rem)!important;line-height:1!important;letter-spacing:-.035em!important}
main .latest-products-all{color:#715536!important;font:600 .7rem/1.4 Arial,sans-serif!important;letter-spacing:.07em!important;text-transform:uppercase!important}
main .latest-products-track{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;transform:none!important}
main .latest-product{width:auto!important;min-width:0!important;border:1px solid #e5ddd2!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important}
main .latest-product-image{aspect-ratio:1/1.06!important;min-height:0!important;border-radius:0!important;background:#f2eee8!important;overflow:hidden!important}
main .latest-product-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;opacity:1!important;filter:none!important;transition:transform .55s ease!important}
main .latest-product:hover .latest-product-image img{transform:scale(1.025)!important}
main .latest-product-info{padding:15px 15px 17px!important;background:#fff!important}
main .latest-product-info h3{min-height:2.35em!important;margin:0 0 11px!important;color:var(--sr-ink)!important;font-size:.94rem!important;line-height:1.25!important}
main .latest-product-info h3 a{color:inherit!important}
main .latest-product-bottom{gap:8px!important;padding-top:11px!important;border-top:1px solid #eee7dd!important;color:#8d6435!important;font-size:.72rem!important}
main .latest-product-bottom a{color:#765332!important}
main .latest-products-dots{display:none!important}

/* Slim partner invitation, like the reference's architectural strip. */
main .pro-cta-section{padding:0!important;background:#fff!important}
main .pro-cta-shell{width:100%!important;max-width:none!important}
main .pro-cta{min-height:210px!important;padding:48px max(32px,calc((100vw - 1320px)/2))!important;border:0!important;border-radius:0!important;background:linear-gradient(90deg,rgba(248,244,237,.98),rgba(248,244,237,.87)),linear-gradient(135deg,#f4eee4,#e9dfd0)!important;box-shadow:none!important;color:var(--sr-ink)!important}
main .pro-cta:before{display:block!important;content:""!important;position:absolute!important;inset:0 0 0 58%!important;background:linear-gradient(90deg,rgba(244,238,228,.7),rgba(220,202,177,.25))!important;opacity:1!important}
main .pro-cta:after{display:none!important}
main .pro-cta h2{position:relative!important;max-width:760px!important;margin:0!important;color:var(--sr-ink)!important;font-size:clamp(2rem,3.6vw,3.65rem)!important;line-height:1.04!important;z-index:1!important}
main .pro-cta-action{position:relative!important;border-bottom:1px solid var(--sr-gold)!important;color:#765331!important;font:600 .71rem/1.5 Arial,sans-serif!important;letter-spacing:.07em!important;text-transform:uppercase!important;z-index:1!important}

/* Craft story: large image plus smaller detail tiles. */
main .atelier-banner-section{padding:76px 0!important;background:var(--sr-ivory)!important}
main .atelier-banner-shell{width:min(calc(100% - 64px),1320px)!important}
main .atelier-banner{position:relative!important;display:grid!important;grid-template-columns:42% 58%!important;min-height:660px!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important}
main .atelier-banner-media{position:relative!important;inset:auto!important;grid-column:2!important;grid-row:1!important;width:auto!important;height:100%!important;min-height:660px!important;background-size:cover!important;background-position:center!important;opacity:1!important;filter:none!important;z-index:1!important}
main .atelier-banner-overlay{display:none!important}
main .atelier-banner-inner{position:relative!important;grid-column:1!important;grid-row:1!important;display:flex!important;min-height:660px!important;flex-direction:column!important;padding:0!important;background:#fff!important;z-index:2!important}
main .atelier-banner-copy{display:flex!important;min-height:390px!important;flex-direction:column!important;justify-content:center!important;padding:48px 48px 28px!important;background:#fff!important;color:var(--sr-ink)!important;overflow:visible!important}
main .atelier-banner-copy:before{content:"SAUNA ROOM";margin-bottom:17px;color:var(--sr-gold);font:600 .64rem/1.2 Arial,sans-serif;letter-spacing:.22em}
main .atelier-banner-copy h2{margin:0 0 16px!important;color:var(--sr-ink)!important;font-size:clamp(2.15rem,3vw,3.35rem)!important;line-height:1.04!important;text-shadow:none!important;overflow:visible!important}
main .atelier-banner-copy p{margin:0!important;color:var(--sr-muted)!important;font-size:.91rem!important;line-height:1.67!important;text-shadow:none!important}
main .atelier-banner-link{align-self:flex-start!important;margin-top:20px!important;padding-bottom:4px!important;border-bottom:1px solid var(--sr-gold)!important;color:#71502e!important;font:600 .69rem/1.4 Arial,sans-serif!important;letter-spacing:.06em!important;text-decoration:none!important;text-transform:uppercase!important}
main .atelier-banner-aside{position:relative!important;padding:0 48px 52px!important}
main .atelier-banner-cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
main .atelier-banner-card{position:relative!important;display:flex!important;min-height:95px!important;align-items:end!important;padding:13px!important;border:0!important;border-radius:0!important;background-color:#ded4c5!important;background-size:cover!important;background-position:center!important;box-shadow:none!important;overflow:hidden!important;color:#fff!important}
main .atelier-banner-card:after{content:"";position:absolute;inset:28% 0 0;background:linear-gradient(transparent,rgba(22,17,11,.72));z-index:0}
main .atelier-banner-card strong{position:relative;z-index:1;color:#fff!important;font:600 .67rem/1.3 Arial,sans-serif!important;text-shadow:0 1px 5px rgba(0,0,0,.55)!important}
main .atelier-banner-footer{position:absolute!important;right:48px!important;bottom:20px!important;left:48px!important;padding-top:11px!important;border-top:1px solid var(--sr-line)!important;color:#7a6c5d!important;font-size:.68rem!important;z-index:3!important}

/* Every published banner and every published image remain visible. */
main .home-extra-banners{padding:76px 0!important;background:var(--sr-warm)!important}
main .home-extra-banners-shell{width:min(calc(100% - 64px),1320px)!important;display:grid!important;gap:46px!important}
main .home-extra-banner{position:relative!important;display:block!important;min-height:0!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important;color:var(--sr-ink)!important}
main .home-extra-banner-media,main .home-extra-banner-overlay{display:none!important}
main .home-extra-banner-layout{display:grid!important;grid-template-columns:36% 64%!important;min-height:520px!important;gap:0!important;background:#fff!important;overflow:visible!important}
main .home-extra-banner:nth-child(even) .home-extra-banner-layout{grid-template-columns:64% 36%!important}
main .home-extra-banner-layout .home-extra-banner-content{grid-column:1!important;grid-row:1!important;display:flex!important;min-height:520px!important;max-width:none!important;justify-content:center!important;padding:48px 38px!important;background:#fff!important;overflow:visible!important}
main .home-extra-banner:nth-child(even) .home-extra-banner-layout .home-extra-banner-content{grid-column:2!important}
main .home-extra-banner-content:before{content:"SAUNA ROOM";display:block;margin-bottom:16px;color:var(--sr-gold);font:600 .62rem/1.2 Arial,sans-serif;letter-spacing:.21em}
main .home-extra-banner h2{margin:0 0 17px!important;color:var(--sr-ink)!important;font-size:clamp(2rem,2.75vw,3.15rem)!important;line-height:1.06!important;letter-spacing:-.035em!important;text-shadow:none!important;overflow:visible!important}
main .home-extra-banner-text{max-width:37rem!important;color:var(--sr-muted)!important;font-size:.91rem!important;line-height:1.66!important;text-shadow:none!important}
main .home-extra-banner-button{min-height:auto!important;margin-top:22px!important;padding:0 0 4px!important;border:0!important;border-bottom:1px solid var(--sr-gold)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#71502e!important;font:600 .69rem/1.4 Arial,sans-serif!important;letter-spacing:.06em!important;text-transform:uppercase!important}
main .home-extra-banner-gallery{grid-column:2!important;grid-row:1!important;display:grid!important;grid-template-columns:1.45fr 1fr!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;gap:7px!important;align-self:stretch!important;padding:0!important;min-height:520px!important;background:var(--sr-warm)!important}
main .home-extra-banner:nth-child(even) .home-extra-banner-gallery{grid-column:1!important}
main .home-extra-banner-gallery-item,main .home-extra-banner-gallery-item.is-main{grid-column:auto!important;grid-row:auto!important;display:block!important;min-height:0!important;border:0!important;border-radius:0!important;background:#ded4c5!important;box-shadow:none!important;overflow:hidden!important}
main .home-extra-banner-gallery-item.is-main{grid-row:1/-1!important}
main .home-extra-banner-gallery-item:first-child:nth-last-child(1){grid-column:1/-1!important;grid-row:1/-1!important}
main .home-extra-banner-gallery-item:first-child:nth-last-child(2){grid-row:1/-1!important}
main .home-extra-banner-gallery-item img{display:block!important;width:100%!important;height:100%!important;min-height:210px!important;object-fit:cover!important;opacity:1!important;filter:none!important}

@media(max-width:1100px){
  main .hero-sculpt-stage{display:grid!important;height:auto!important;min-height:0!important;grid-template-columns:44% 56%!important;background:#fff!important;overflow:visible!important}
  main .hero-sculpt-image{position:relative!important;inset:auto!important;grid-column:2!important;grid-row:1!important;min-height:590px!important}
  main .hero-sculpt-wash{display:none!important}
  main .hero-sculpt-copy{position:relative!important;inset:auto!important;grid-column:1!important;grid-row:1!important;width:100%!important;max-width:none!important;justify-content:flex-start!important;padding:52px 34px 190px!important;background:#fff!important}
  main .hero-sculpt-copy h1{font-size:clamp(2.55rem,5vw,4rem)!important}
  main .hero-sculpt-story{right:24px!important;bottom:24px!important;width:min(300px,46%)!important}
  main .hero-sculpt-specs{left:34px!important;bottom:35px!important;width:calc(44% - 68px)!important;flex-direction:column!important;gap:8px!important}
  main .hero-sculpt-specs div,main .hero-sculpt-specs div:first-child{padding:0!important;border:0!important}
  main .latest-products-track{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  main .atelier-banner{grid-template-columns:48% 52%!important}
  main .home-extra-banner-layout,main .home-extra-banner:nth-child(even) .home-extra-banner-layout{grid-template-columns:42% 58%!important}
  main .home-extra-banner:nth-child(even) .home-extra-banner-layout{grid-template-columns:58% 42%!important}
  main .home-extra-banner-layout .home-extra-banner-content{padding:38px 30px!important}
}

@media(max-width:720px){
  main .shell,main .shell-sculpt,main .latest-products-shell,main .atelier-banner-shell,main .home-extra-banners-shell{width:calc(100% - 24px)!important}
  main .hero{padding-top:10px!important}
  main .hero-sculpt-stage{display:flex!important;height:auto!important;min-height:0!important;flex-direction:column!important;background:#fff!important;overflow:hidden!important}
  main .hero-sculpt-image{position:relative!important;order:1!important;inset:auto!important;width:100%!important;height:255px!important;background-position:center!important}
  main .hero-sculpt-wash{display:none!important}
  main .hero-sculpt-copy{position:relative!important;order:2!important;inset:auto!important;width:100%!important;max-width:none!important;padding:29px 22px!important;background:#fff!important}
  main .hero-sculpt-copy:before{margin-bottom:13px}
  main .hero-sculpt-copy h1{font-size:clamp(2.15rem,10.5vw,3.15rem)!important}
  main .hero-sculpt-copy p{font-size:.9rem!important}
  main .hero-sculpt-story{position:relative!important;order:3!important;right:auto!important;bottom:auto!important;width:auto!important;margin:0 22px 18px!important;background:var(--sr-warm)!important;box-shadow:none!important}
  main .hero-sculpt-specs{position:relative!important;order:4!important;left:auto!important;bottom:auto!important;width:auto!important;margin:0 22px 24px!important;flex-wrap:wrap!important}
  main .latest-products{padding:44px 0 40px!important}
  main .latest-products-head{align-items:flex-start!important;gap:10px!important}
  main .latest-products-track{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  main .latest-product-info{padding:11px!important}
  main .latest-product-info h3{font-size:.84rem!important}
  main .latest-product-bottom{align-items:flex-start!important;flex-direction:column!important;font-size:.67rem!important}
  main .pro-cta{min-height:0!important;align-items:flex-start!important;flex-direction:column!important;gap:15px!important;padding:34px 22px!important}
  main .atelier-banner-section{padding:42px 0!important}
  main .atelier-banner{display:flex!important;min-height:0!important;flex-direction:column!important}
  main .atelier-banner-media{order:1!important;width:100%!important;min-height:260px!important;height:260px!important}
  main .atelier-banner-inner{order:2!important;min-height:0!important}
  main .atelier-banner-copy{min-height:0!important;padding:30px 22px 24px!important}
  main .atelier-banner-aside{padding:0 22px 50px!important}
  main .atelier-banner-footer{right:22px!important;left:22px!important}
  main .home-extra-banners{padding:44px 0!important}
  main .home-extra-banners-shell{gap:22px!important}
  main .home-extra-banner-layout,main .home-extra-banner:nth-child(even) .home-extra-banner-layout{display:flex!important;min-height:0!important;flex-direction:column!important}
  main .home-extra-banner-gallery,main .home-extra-banner:nth-child(even) .home-extra-banner-gallery{order:1!important;display:grid!important;width:100%!important;min-height:255px!important;grid-template-columns:1.25fr 1fr!important}
  main .home-extra-banner-layout .home-extra-banner-content,main .home-extra-banner:nth-child(even) .home-extra-banner-layout .home-extra-banner-content{order:2!important;min-height:0!important;padding:30px 22px 34px!important}
  main .home-extra-banner h2{font-size:clamp(2rem,9vw,2.8rem)!important}
  main .home-extra-banner-gallery-item img{min-height:124px!important}
}

/* v155 — final proportional homepage banner layout.
   One coherent rule set replaces the earlier emergency height overrides. */
@media(min-width:901px){
  main .home-extra-banners-shell{
    width:min(calc(100% - 48px),1320px)!important;
    max-width:1320px!important;
    margin-inline:auto!important;
    gap:30px!important;
  }
  main .home-extra-banner,
  main #home-juniper-luxury.home-extra-banner,
  main #home-juniper-products.home-extra-banner{
    width:100%!important;
    height:auto!important;
    min-height:430px!important;
    max-height:none!important;
    margin:0!important;
    overflow:hidden!important;
  }
  main .home-extra-banner-layout,
  main .home-extra-banner:nth-child(even) .home-extra-banner-layout,
  main #home-juniper-luxury .home-extra-banner-layout,
  main #home-juniper-products .home-extra-banner-layout{
    display:grid!important;
    grid-template-columns:minmax(310px,38%) minmax(0,62%)!important;
    width:100%!important;
    height:430px!important;
    min-height:430px!important;
    max-height:430px!important;
    gap:0!important;
    overflow:hidden!important;
  }
  main .home-extra-banner:nth-child(even) .home-extra-banner-layout{
    grid-template-columns:minmax(0,62%) minmax(310px,38%)!important;
  }
  main .home-extra-banner-layout .home-extra-banner-content,
  main #home-juniper-luxury .home-extra-banner-content,
  main #home-juniper-products .home-extra-banner-content{
    grid-column:1!important;
    grid-row:1!important;
    width:100%!important;
    height:430px!important;
    min-height:430px!important;
    max-height:430px!important;
    justify-content:center!important;
    padding:42px 40px!important;
    overflow:hidden!important;
  }
  main .home-extra-banner:nth-child(even) .home-extra-banner-content{
    grid-column:2!important;
  }
  main .home-extra-banner h2,
  main #home-juniper-luxury h2,
  main #home-juniper-products h2{
    max-width:14ch!important;
    margin:0 0 16px!important;
    font-size:clamp(2rem,3.15vw,3.35rem)!important;
    line-height:1.02!important;
    overflow-wrap:normal!important;
  }
  main .home-extra-banner-text,
  main #home-juniper-luxury .home-extra-banner-text,
  main #home-juniper-products .home-extra-banner-text{
    max-width:34rem!important;
    font-size:.91rem!important;
    line-height:1.58!important;
  }
  main .home-extra-banner-gallery,
  main #home-juniper-luxury .home-extra-banner-gallery,
  main #home-juniper-products .home-extra-banner-gallery{
    grid-column:2!important;
    grid-row:1!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,minmax(0,1fr))!important;
    width:100%!important;
    height:430px!important;
    min-height:430px!important;
    max-height:430px!important;
    gap:6px!important;
    padding:0!important;
    overflow:hidden!important;
  }
  main .home-extra-banner:nth-child(even) .home-extra-banner-gallery{
    grid-column:1!important;
  }
  main .home-extra-banner-gallery-item,
  main .home-extra-banner-gallery-item.is-main,
  main #home-juniper-luxury .home-extra-banner-gallery-item,
  main #home-juniper-products .home-extra-banner-gallery-item{
    grid-column:auto!important;
    grid-row:auto!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    border-radius:0!important;
    overflow:hidden!important;
  }
  main .home-extra-banner-gallery-item.is-main:first-child{
    grid-column:span 2!important;
  }
  main .home-extra-banner-gallery-item img,
  main #home-juniper-luxury .home-extra-banner-gallery-item img,
  main #home-juniper-products .home-extra-banner-gallery-item img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    object-fit:cover!important;
    object-position:center!important;
  }
}

@media(min-width:721px) and (max-width:900px){
  main .home-extra-banners-shell{width:calc(100% - 32px)!important}
  main .home-extra-banner-layout,
  main .home-extra-banner:nth-child(even) .home-extra-banner-layout,
  main #home-juniper-luxury .home-extra-banner-layout,
  main #home-juniper-products .home-extra-banner-layout{
    display:flex!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    flex-direction:column!important;
  }
  main .home-extra-banner-gallery,
  main #home-juniper-luxury .home-extra-banner-gallery,
  main #home-juniper-products .home-extra-banner-gallery{
    order:1!important;
    width:100%!important;
    height:360px!important;
    min-height:360px!important;
    max-height:360px!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,minmax(0,1fr))!important;
    gap:5px!important;
    padding:0!important;
    overflow:hidden!important;
  }
  main .home-extra-banner-layout .home-extra-banner-content,
  main #home-juniper-luxury .home-extra-banner-content,
  main #home-juniper-products .home-extra-banner-content{
    order:2!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:34px 32px 38px!important;
  }
}

/* v154 compact gallery fix: keep every image visible without stretching sections. */
@media(min-width:721px){
  main .home-extra-banners-shell{gap:28px!important}
  main .home-extra-banner-layout,
  main .home-extra-banner:nth-child(even) .home-extra-banner-layout{
    grid-template-columns:32% 68%!important;
    height:520px!important;
    min-height:520px!important;
    max-height:520px!important;
    overflow:hidden!important;
  }
  main .home-extra-banner:nth-child(even) .home-extra-banner-layout{
    grid-template-columns:68% 32%!important;
  }
  main .home-extra-banner-layout .home-extra-banner-content{
    height:520px!important;
    min-height:520px!important;
    max-height:520px!important;
    justify-content:center!important;
    padding:34px 32px!important;
    overflow:auto!important;
  }
  main .home-extra-banner-gallery{
    height:520px!important;
    min-height:520px!important;
    max-height:520px!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:unset!important;
    overflow:hidden!important;
  }
  main .home-extra-banner-gallery-item,
  main .home-extra-banner-gallery-item.is-main{
    grid-column:auto!important;
    grid-row:auto!important;
    height:auto!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  main .home-extra-banner-gallery-item.is-main:first-child{
    grid-column:span 2!important;
    grid-row:span 1!important;
  }
  main .home-extra-banner-gallery-item img{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    object-fit:cover!important;
  }
}

@media(max-width:720px){
  main .home-extra-banner-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:none!important;
    grid-auto-rows:150px!important;
  }
  main .home-extra-banner-gallery-item,
  main .home-extra-banner-gallery-item.is-main{
    grid-column:auto!important;
    grid-row:auto!important;
    min-height:0!important;
  }
  main .home-extra-banner-gallery-item:first-child:nth-last-child(1){grid-column:1/-1!important}
}

/* v153 visibility fix: content height follows every published text and image. */
main{overflow:visible!important}
main .home-extra-banner{height:auto!important;max-height:none!important;overflow:visible!important}
main .home-extra-banner-layout{
  height:auto!important;
  max-height:none!important;
  align-items:stretch!important;
  overflow:visible!important;
}
main .home-extra-banner-layout .home-extra-banner-content{
  position:relative!important;
  inset:auto!important;
  height:auto!important;
  max-height:none!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  white-space:normal!important;
  overflow:visible!important;
}
main .home-extra-banner h2,
main .home-extra-banner-text{
  width:100%!important;
  max-height:none!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:anywhere!important;
}
main .home-extra-banner-gallery{
  height:auto!important;
  max-height:none!important;
  grid-template-rows:none!important;
  grid-auto-rows:minmax(180px,1fr)!important;
  overflow:visible!important;
}
main .home-extra-banner-gallery-item,
main .home-extra-banner-gallery-item.is-main{
  height:auto!important;
  max-height:none!important;
}
main .home-extra-banner-gallery-item img{
  min-height:180px!important;
}

@media(max-width:720px){
  main .home-extra-banner{overflow:hidden!important}
  main .home-extra-banner-gallery{
    height:auto!important;
    max-height:none!important;
    grid-auto-rows:minmax(124px,auto)!important;
  }
  main .home-extra-banner-gallery-item img{
    height:100%!important;
    min-height:124px!important;
  }
}

/* v156 — authoritative final rules (must remain last in this file). */
@media(min-width:901px){
  main .home-extra-banners-shell{width:min(calc(100% - 48px),1320px)!important;max-width:1320px!important;margin-inline:auto!important;gap:30px!important}
  main .home-extra-banner,
  main #home-juniper-luxury.home-extra-banner,
  main #home-juniper-products.home-extra-banner{width:100%!important;height:430px!important;min-height:430px!important;max-height:430px!important;margin:0!important;overflow:hidden!important}
  main .home-extra-banner-layout,
  main .home-extra-banner:nth-child(even) .home-extra-banner-layout,
  main #home-juniper-luxury .home-extra-banner-layout,
  main #home-juniper-products .home-extra-banner-layout{display:grid!important;grid-template-columns:minmax(310px,38%) minmax(0,62%)!important;width:100%!important;height:430px!important;min-height:430px!important;max-height:430px!important;gap:0!important;overflow:hidden!important}
  main .home-extra-banner:nth-child(even) .home-extra-banner-layout{grid-template-columns:minmax(0,62%) minmax(310px,38%)!important}
  main .home-extra-banner-layout .home-extra-banner-content,
  main #home-juniper-luxury .home-extra-banner-content,
  main #home-juniper-products .home-extra-banner-content{grid-column:1!important;grid-row:1!important;width:100%!important;height:430px!important;min-height:430px!important;max-height:430px!important;justify-content:center!important;padding:42px 40px!important;overflow:hidden!important}
  main .home-extra-banner:nth-child(even) .home-extra-banner-content{grid-column:2!important}
  main .home-extra-banner h2,
  main #home-juniper-luxury h2,
  main #home-juniper-products h2{max-width:14ch!important;margin:0 0 16px!important;font-size:clamp(2rem,3.15vw,3.35rem)!important;line-height:1.02!important;overflow-wrap:normal!important}
  main .home-extra-banner-text,
  main #home-juniper-luxury .home-extra-banner-text,
  main #home-juniper-products .home-extra-banner-text{max-width:34rem!important;font-size:.91rem!important;line-height:1.58!important;overflow-wrap:normal!important}
  main .home-extra-banner-gallery,
  main #home-juniper-luxury .home-extra-banner-gallery,
  main #home-juniper-products .home-extra-banner-gallery{grid-column:2!important;grid-row:1!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;grid-auto-rows:unset!important;width:100%!important;height:430px!important;min-height:430px!important;max-height:430px!important;gap:6px!important;padding:0!important;overflow:hidden!important}
  main .home-extra-banner:nth-child(even) .home-extra-banner-gallery{grid-column:1!important}
  main .home-extra-banner-gallery-item,
  main .home-extra-banner-gallery-item.is-main{grid-column:auto!important;grid-row:auto!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;border-radius:0!important;overflow:hidden!important}
  main .home-extra-banner-gallery-item.is-main:first-child{grid-column:span 2!important}
  main .home-extra-banner-gallery-item img{display:block!important;width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important;object-position:center!important}
}

@media(min-width:721px) and (max-width:900px){
  main .home-extra-banners-shell{width:calc(100% - 32px)!important}
  main .home-extra-banner-layout,
  main .home-extra-banner:nth-child(even) .home-extra-banner-layout,
  main #home-juniper-luxury .home-extra-banner-layout,
  main #home-juniper-products .home-extra-banner-layout{display:flex!important;height:auto!important;min-height:0!important;max-height:none!important;flex-direction:column!important;overflow:hidden!important}
  main .home-extra-banner-gallery,
  main #home-juniper-luxury .home-extra-banner-gallery,
  main #home-juniper-products .home-extra-banner-gallery{order:1!important;width:100%!important;height:360px!important;min-height:360px!important;max-height:360px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;grid-auto-rows:unset!important;gap:5px!important;padding:0!important;overflow:hidden!important}
  main .home-extra-banner-layout .home-extra-banner-content,
  main #home-juniper-luxury .home-extra-banner-content,
  main #home-juniper-products .home-extra-banner-content{order:2!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;padding:34px 32px 38px!important;overflow:visible!important}
  main .home-extra-banner-gallery-item,
  main .home-extra-banner-gallery-item.is-main{grid-column:auto!important;grid-row:auto!important;height:auto!important;min-height:0!important;overflow:hidden!important}
  main .home-extra-banner-gallery-item.is-main:first-child{grid-column:span 2!important}
  main .home-extra-banner-gallery-item img{width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important}
}
