/* Approved lifestyle type: photographic banners only, not products/forms/orders. */
@font-face{font-family:Lobster;src:url('assets/fonts/Lobster-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
body[class] main .ge-banner-title{--ge-banner-size:clamp(60px,7.2vw,140px);--ge-banner-fit-scale:1;display:block;max-width:none;width:100%;margin:0;color:#fff;font-size:var(--ge-banner-size);font-weight:400;line-height:1.16;letter-spacing:normal;text-transform:none;text-wrap:initial;text-shadow:none}
body[class].drawer-open main .ge-banner-title{--ge-banner-size:clamp(44px,8.6cqw,94px)}
body[class] main .ge-banner-title::after{display:none}
body[class] main .ge-banner-title,body[class] main .ge-banner-title *{transition:none!important}
body[class] main .ge-banner-title .ge-banner-line{display:block;width:max-content;max-width:none;white-space:nowrap;letter-spacing:normal;background:none}
body[class] main .ge-banner-title .ge-banner-intro{font-family:Manrope,sans-serif;font-size:calc(var(--ge-banner-size) * .535 * var(--ge-banner-fit-scale));font-weight:570;line-height:1.18;margin-bottom:-.08em;color:#fff;-webkit-text-fill-color:#fff;background:none;letter-spacing:-.025em}
body[class] main .ge-banner-title .ge-banner-emphasis{font-family:Lobster,cursive;font-size:calc(var(--ge-banner-size) * var(--ge-banner-fit-scale));font-weight:400;font-synthesis:none;line-height:1.16;margin-top:-.22em;color:transparent;-webkit-text-fill-color:transparent}
body[class] main .ge-banner-title .ge-banner-emphasis strong{display:inline-block;padding:.02em .04em .12em 0;font:inherit;font-synthesis:none;background:linear-gradient(100deg,#206aff 0%,#5160ff 52%,#7a45ff 100%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
body[class] main .ge-banner-copy{width:100%;max-width:none;min-width:0}
body[class] main .ge-banner-copy .ge-banner-lead{display:block;max-width:none;margin:8px 0 0;color:#e9eef5;font:400 clamp(.94rem,1.05cqw,1.08rem)/1.5 Manrope,sans-serif;text-transform:none;letter-spacing:normal;text-wrap:initial}
body[class] main .ge-banner-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:clamp(82px,6.4cqw,112px)}
body[class] main .ge-banner-copy .ge-banner-button{position:relative;flex:0 0 auto;min-width:244px;width:auto;min-height:52px;padding:0 26px;font:750 .95rem/1.25 Manrope,sans-serif;letter-spacing:-.01em;text-transform:none;border-radius:9px}
body[class] main .ge-banner-button:not(.button-primary){font-weight:800}
body[class] main .ge-banner-button:not(.button-primary){isolation:isolate;border:2px solid transparent;background:linear-gradient(#262a30,#262a30) padding-box,linear-gradient(100deg,#206aff,#7a45ff) border-box;box-shadow:none}
body[class] main .ge-banner-button:not(.button-primary) span:not([aria-hidden]){background:linear-gradient(100deg,color-mix(in srgb,#206aff 70%,white),color-mix(in srgb,#7a45ff 70%,white));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
/* Preserve approved photographs, focal points and continuous bridges. */
.home-page .hero{overflow:clip}
.home-page .hero-slide .hero-shell{align-items:flex-start;padding-top:clamp(158px,11cqw,220px);padding-bottom:50px}
.home-page .hero-slide .hero-copy{width:100%;max-width:none}
.home-page .hero-slide .hero-copy>.ge-banner-button{margin-top:clamp(82px,6.4cqw,112px)}
.solutions-page-v3 .solutions-hero-content{padding-top:50px;padding-bottom:58px;align-items:center}
.solutions-page-v3 .solutions-hero-v3,.solutions-page-v3 .solutions-hero-content{min-height:max(var(--solutions-hero-height),520px)}
/* The decorative questionnaire glow overlaps the photo by 180px. Feather its
   upper edge across the ENTIRE width, not only the right side of the photo. */
body.solutions-page-v3 main .solution-orientator-section::before{mask-image:linear-gradient(180deg,transparent 0px,#000 220px);-webkit-mask-image:linear-gradient(180deg,transparent 0px,#000 220px)}
.montadores-page .pro-hero-inner{padding-top:64px;padding-bottom:90px;min-height:570px;align-items:center}
body[class] main .pro-hero-copy>.eyebrow{margin-bottom:15px}
body[class] main .page-hero-copy{max-width:none;width:100%}
body[class] main .page-hero-inner{align-items:center;padding-block:70px 90px;min-height:620px}
body.home-page main .institutional-copy{left:calc((100% - var(--shell))/2);width:var(--shell);max-width:none}
.home-page .institutional-copy .journey-steps{margin-top:38px}
/* Catalogue exception. All 12 photos inspected: specific products are on the
   left, the all-products showcase is on the right. Keep their free side clear. */
body.catalog-v2 main .catalog-hero-v2.shop-dynamic-hero{height:320px;min-height:320px;max-height:320px;padding:28px 0 52px}
body.catalog-v2 main .catalog-hero-v2.shop-dynamic-hero .catalog-hero-grid{height:240px;min-height:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;gap:16px 4%;align-content:center;align-items:start}
body.catalog-v2 main .shop-dynamic-hero .shop-hero-copy,body.catalog-v2 main .shop-dynamic-hero .catalog-proof{grid-column:1;width:100%;max-width:none;min-width:0}
body.catalog-v2 main .shop-dynamic-hero[data-copy-side="right"] .shop-hero-copy,body.catalog-v2 main .shop-dynamic-hero[data-copy-side="right"] .catalog-proof{grid-column:2}
body.catalog-v2 main .shop-dynamic-hero[data-copy-side="right"] .shop-hero-copy{text-align:right}
body.catalog-v2 main .shop-dynamic-hero[data-copy-side="right"] .catalog-proof{justify-self:end}
body.catalog-v2 main .catalog-hero-v2.shop-dynamic-hero .ge-catalog-title{display:block;width:100%;max-width:none;margin:0;font:400 clamp(30px,4.4cqw,72px)/1.16 Lobster,cursive;letter-spacing:normal;text-transform:none;white-space:nowrap;text-wrap:initial;text-shadow:none;font-synthesis:none}
body.catalog-v2 main .shop-dynamic-hero .ge-catalog-title::after{display:none}
body.catalog-v2 main .shop-dynamic-hero .ge-catalog-title strong{display:inline-block;padding:.02em .04em .12em 0;font:inherit;background:linear-gradient(100deg,#206aff 0%,#5160ff 52%,#7a45ff 100%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
body.catalog-v2 main .shop-dynamic-hero .shop-hero-copy>p[data-category-intro]{width:100%;max-width:none;margin:0;color:#e9eef5;font:400 .98rem/1.48 Manrope,sans-serif;white-space:nowrap;text-align:left}
body.catalog-v2 main .shop-dynamic-hero[data-copy-side="right"] .shop-hero-copy>p[data-category-intro]{text-align:right}
body.catalog-v2 main .shop-dynamic-hero .catalog-proof{width:max-content;max-width:100%}
body.catalog-v2 main .shop-dynamic-hero .shop-hero-media img{object-position:center}
/* Preserve detail on the product side; contrast is concentrated behind copy. */
body.catalog-v2 main .shop-dynamic-hero .shop-hero-shade{background:linear-gradient(90deg,rgba(8,18,27,.7),rgba(8,18,27,.28) 43%,transparent 72%),linear-gradient(0deg,rgba(8,18,27,.25),transparent 60%)}
body.catalog-v2 main .shop-dynamic-hero[data-copy-side="right"] .shop-hero-shade{background:linear-gradient(270deg,rgba(8,18,27,.7),rgba(8,18,27,.28) 43%,transparent 72%),linear-gradient(0deg,rgba(8,18,27,.25),transparent 60%)}
body[class] main .category-hero .category-hero-grid{grid-template-columns:minmax(0,1fr)}
body[class] main .category-hero .category-hero-copy{width:100%;max-width:none}
body[class] main .category-hero{height:auto;min-height:620px}
body[class] main .category-hero .category-hero-proof{margin-top:24px}
@container site-content (min-width:1101px){body[class] main .ge-banner-copy .ge-banner-lead{white-space:nowrap}}
@container site-content (max-width:1100px){
 body[class] main .ge-banner-title{--ge-banner-size:clamp(62px,8.6vw,94px)}
 .home-page .hero-slide .hero-shell{padding-top:156px}
 .home-page .institutional-copy{left:calc((100% - var(--shell))/2);width:var(--shell)}
}
@container site-content (max-width:700px){
 body[class] main .ge-banner-title{--ge-banner-size:clamp(44px,11.6vw,72px)}
 body[class] main .ge-banner-actions{flex-direction:column;align-items:flex-start;gap:12px;margin-top:48px}
 body[class] main .ge-banner-copy .ge-banner-button{width:min(100%,324px);min-width:0;min-height:52px}
 .home-page .hero-slide .hero-shell{padding-top:136px}
 .home-page .hero-slide .hero-copy>.ge-banner-button{margin-top:48px}
 .solutions-page-v3 .solutions-hero-content{padding-top:42px;padding-bottom:44px}
 .solutions-page-v3 .solutions-hero-v3,.solutions-page-v3 .solutions-hero-content{min-height:480px}
 .montadores-page .pro-hero-inner{min-height:510px;padding-block:44px 75px}
 body[class] main .page-hero-inner{min-height:600px;padding-block:50px 70px}
 /* Small screens retain the whole scene above a quiet text area, instead of
    cropping away the product or putting the title over it. Same size per category. */
 body.catalog-v2 main .catalog-hero-v2.shop-dynamic-hero{height:320px;min-height:320px;max-height:320px;padding:18px 0 44px}
 body.catalog-v2 main .catalog-hero-v2.shop-dynamic-hero .catalog-hero-grid{height:258px;grid-template-columns:minmax(0,1fr);gap:10px;align-content:end}
 body.catalog-v2 main .shop-dynamic-hero .shop-hero-copy,body.catalog-v2 main .shop-dynamic-hero .catalog-proof,body.catalog-v2 main .shop-dynamic-hero[data-copy-side="right"] .shop-hero-copy,body.catalog-v2 main .shop-dynamic-hero[data-copy-side="right"] .catalog-proof{grid-column:1}
 body.catalog-v2 main .shop-dynamic-hero[data-copy-side="right"] .shop-hero-copy{text-align:right}
 body.catalog-v2 main .shop-dynamic-hero[data-copy-side="right"] .catalog-proof{justify-self:end}
 body.catalog-v2 main .catalog-hero-v2.shop-dynamic-hero .ge-catalog-title{font-size:clamp(28px,8cqw,48px)}
 body.catalog-v2 main .shop-dynamic-hero .shop-hero-copy>p[data-category-intro]{white-space:normal;min-height:1.5em}
 body.catalog-v2 main .shop-dynamic-hero .shop-hero-media{bottom:auto;height:178px}
 body.catalog-v2 main .shop-dynamic-hero .shop-hero-media img{object-position:center;filter:saturate(.9) contrast(1.04) brightness(.85)}
 body.catalog-v2 main .shop-dynamic-hero .shop-hero-shade,body.catalog-v2 main .shop-dynamic-hero[data-copy-side="right"] .shop-hero-shade{background:linear-gradient(180deg,rgba(8,18,27,.12) 0px,rgba(8,18,27,.08) 105px,rgba(8,18,27,.95) 178px,#08121b 210px)}
}
/* Keep the approved subtitle rhythm: changing alignment must not lift titles. */
@media(max-width:640px){body.catalog-v2 main .shop-dynamic-hero .shop-hero-copy>p[data-category-intro]{font-size:.83rem;line-height:1.4}}
