/* SnapProfile v15.9 — Luxe + tablet/mobile + header/navigation hardening. */
html.menu-open,body.menu-open{overflow:hidden!important;overscroll-behavior:none}
.site-mobile-menu-backdrop-v159{position:fixed;inset:0;z-index:110;border:0;padding:0;margin:0;background:rgba(2,6,23,.48);backdrop-filter:blur(3px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}
.site-mobile-menu-backdrop-v159.is-open{opacity:1;visibility:visible;pointer-events:auto}
.site-mobile-menu-v14{z-index:120;max-width:100vw;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom));transition:transform .26s cubic-bezier(.22,.8,.25,1),opacity .2s ease,visibility .2s ease;pointer-events:none}
.site-mobile-menu-v14.is-open{pointer-events:auto}
.site-mobile-menu-head-v14{position:sticky;top:calc(-1 * max(24px,env(safe-area-inset-top)));z-index:2;background:var(--card-bg);padding-top:max(12px,env(safe-area-inset-top))}
.site-mobile-menu-v14>a,.site-mobile-menu-head-v14 button,.site-mobile-locales-v14 a,.site-menu-toggle-v14{min-width:44px;min-height:44px}
.site-menu-toggle-v14{position:relative;isolation:isolate;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.site-menu-toggle-v14 span{transform-origin:center;transition:transform .22s ease,opacity .16s ease,width .22s ease}
.site-menu-toggle-v14[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.site-menu-toggle-v14[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.site-menu-toggle-v14:focus-visible,.site-mobile-menu-v14 a:focus-visible,.site-mobile-menu-head-v14 button:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 46%,transparent);outline-offset:3px}

/* Luxe direction: the navigation chrome is genuinely viewport-wide, while content keeps a premium readable max width. */
body[data-template-key$="-luxe"] .site-header-v14,
body[data-template-key$="-luxe"].shell-framed .site-header-v14,
body[data-template-key$="-luxe"].header-style-floating .site-header-v14{width:100%;max-width:none;margin:0;border-radius:0;inset-inline:0;overflow:visible}
body[data-template-key$="-luxe"] .site-header-shell-v14{width:min(1480px,calc(100% - clamp(40px,5vw,88px)))}
body[data-template-key$="-luxe"] .site-main-nav-v14{min-height:clamp(84px,7vw,104px);grid-template-columns:minmax(220px,1fr) minmax(360px,1.4fr) minmax(220px,1fr)}
body[data-template-key$="-luxe"] .site-brand-logo-v14{width:56px;height:56px;flex-basis:56px;border-radius:50%;background:rgba(255,255,255,.07);border-color:color-mix(in srgb,var(--brand) 45%,transparent)}
body[data-template-key$="-luxe"] .site-brand-copy-v14 strong{letter-spacing:.02em}
body[data-template-key$="-luxe"] .site-desktop-nav-v14{gap:clamp(18px,2vw,34px)}
body[data-template-key$="-luxe"] .site-desktop-nav-v14 a{font-weight:600;letter-spacing:.025em}
body[data-template-key$="-luxe"].header-behavior-overlay .site-header-v14{background:linear-gradient(180deg,rgba(5,5,5,.78),rgba(5,5,5,.3) 56%,transparent)}
body[data-template-key$="-luxe"].header-behavior-overlay .site-brand-copy-v14 small{color:rgba(255,255,255,.68)}
body[data-template-key$="-luxe"] .site-nav-cta-v14{border:1px solid color-mix(in srgb,var(--brand) 70%,transparent);box-shadow:0 12px 34px rgba(0,0,0,.16)}
body[data-template-key$="-luxe"] .site-hero-v14{min-height:min(900px,92svh)}
body[data-template-key$="-luxe"] .site-hero-grid-v14{width:min(1480px,calc(100% - clamp(40px,5vw,88px)));padding-block:clamp(120px,12vw,180px)}
body[data-template-key$="-luxe"] .site-hero-copy-v14 h1{font-size:clamp(3rem,6.2vw,6.7rem);max-width:12ch;line-height:1.02}
body[data-template-key$="-luxe"] .site-hero-card-v14{border-radius:8px;box-shadow:0 36px 100px rgba(0,0,0,.32)}

/* Tablet contract — navigation switches once, at 1024px, for every template. */
@media(max-width:1024px){
 html{scroll-padding-top:82px}
 .site-header-shell-v14{width:min(100% - max(32px,var(--ds-gutter-tablet,32px)),var(--ds-container-max,1180px))}
 .site-main-nav-v14,.header-style-double-row .site-main-nav-v14,.header-style-centered .site-main-nav-v14,.header-style-split-brand .site-main-nav-v14,.header-style-overlay-center .site-main-nav-v14,.header-style-asymmetric .site-main-nav-v14,.header-style-side-rail .site-main-nav-v14{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto;gap:12px;min-height:72px;padding-block:8px}
 .site-desktop-nav-v14{display:none!important}
 .site-menu-toggle-v14{display:flex!important;flex:0 0 44px}
 .site-nav-actions-v14{display:flex!important;align-items:center;justify-content:flex-end;gap:8px;min-width:0}
 .site-nav-cta-v14{display:none}
 .site-locale-switch-v14{display:none}
 .site-contact-strip-v14{display:none}
 .site-brand-v14{min-width:0;max-width:100%}
 .site-brand-copy-v14{min-width:0}.site-brand-copy-v14 strong{max-width:min(46vw,360px)}
 .header-style-logo-focus .site-brand-logo-v14{width:48px;height:48px;flex-basis:48px}
 /* Never remove navigation access in a mobile header preset. */
 .mobile-header-logo-cta .site-menu-toggle-v14,.mobile-header-logo-only .site-menu-toggle-v14{display:flex!important}
 .mobile-header-logo-cta .site-nav-actions-v14{display:flex!important}
 .mobile-header-logo-cta .site-nav-cta-v14{display:inline-flex;min-height:40px;padding:8px 12px;font-size:.78rem}
 .mobile-header-logo-only .site-brand-copy-v14{display:none}.mobile-header-logo-only .site-nav-actions-v14{display:flex!important}.mobile-header-logo-only .site-main-nav-v14{grid-template-columns:minmax(0,1fr) auto;justify-items:stretch}.mobile-header-logo-only .site-brand-v14{justify-self:start}
 .mobile-header-centered .site-main-nav-v14{grid-template-columns:52px minmax(0,1fr) 52px}.mobile-header-centered .site-brand-v14{grid-column:2;justify-self:center}.mobile-header-centered .site-nav-actions-v14{grid-column:3;justify-self:end}.mobile-header-centered .site-brand-copy-v14{display:none}
 .mobile-header-floating-pill .site-header-v14{width:calc(100% - 24px);margin:12px;border-radius:999px}.mobile-header-floating-pill .site-main-nav-v14{min-height:60px;padding-inline:12px}
 .mobile-header-transparent .site-header-v14{position:absolute!important;inset:0 0 auto!important;background:linear-gradient(180deg,rgba(2,6,23,.62),transparent)!important;border:0!important;color:#fff}.mobile-header-transparent .site-brand-copy-v14 strong{color:#fff}.mobile-header-transparent .site-menu-toggle-v14{background:rgba(8,15,25,.38);border-color:rgba(255,255,255,.28)}.mobile-header-transparent .site-menu-toggle-v14 span{background:#fff}
 body[data-template-key$="-luxe"] .site-header-shell-v14{width:min(100% - 32px,1180px)}
 body[data-template-key$="-luxe"] .site-main-nav-v14{grid-template-columns:minmax(0,1fr) auto;min-height:78px}
 body[data-template-key$="-luxe"] .site-hero-grid-v14{width:min(100% - 40px,980px);padding-block:clamp(118px,15vw,160px) clamp(70px,10vw,100px)}
 body[data-template-key$="-luxe"] .site-hero-copy-v14 h1{font-size:clamp(3rem,8vw,5.4rem)}
 .site-mobile-menu-v14{width:min(420px,92vw);height:100dvh;background:var(--card-bg);color:var(--custom-body,#475569)}
 .site-mobile-menu-v14 .site-mobile-menu-head-v14 strong,.site-mobile-menu-v14>a{color:var(--brand-2)}
 .mobile-menu-fullscreen .site-mobile-menu-v14{inset:0;width:100vw;max-width:none;height:100dvh;border-radius:0;transform:translateY(-12px) scale(.99);opacity:0}
 .mobile-menu-fullscreen .site-mobile-menu-v14.is-open{transform:none;opacity:1}
 .mobile-menu-drawer-start .site-mobile-menu-v14{inset:0 auto 0 0;transform:translateX(-105%)}.mobile-menu-drawer-start .site-mobile-menu-v14.is-open{transform:none}
 .mobile-menu-drawer-end .site-mobile-menu-v14{inset:0 0 0 auto;transform:translateX(105%)}.mobile-menu-drawer-end .site-mobile-menu-v14.is-open{transform:none}
 .mobile-menu-bottom-sheet .site-mobile-menu-v14{inset:auto 10px max(10px,env(safe-area-inset-bottom));width:auto;height:auto;max-height:min(82dvh,720px);border-radius:26px;transform:translateY(calc(100% + 32px));opacity:1}.mobile-menu-bottom-sheet .site-mobile-menu-v14.is-open{transform:none}
 .mobile-menu-dropdown .site-mobile-menu-v14{position:fixed;inset:calc(78px + env(safe-area-inset-top)) 16px auto;width:auto;height:auto;max-height:calc(100dvh - 100px);border-radius:20px;transform:translateY(-12px) scale(.98);transform-origin:top;opacity:0;box-shadow:0 26px 80px rgba(15,23,42,.22)}.mobile-menu-dropdown .site-mobile-menu-v14.is-open{transform:none;opacity:1}
 [dir="rtl"] .mobile-menu-dropdown .site-mobile-menu-v14{inset:calc(78px + env(safe-area-inset-top)) 16px auto}
}

@media(max-width:760px){
 .site-header-shell-v14{width:min(100% - max(24px,var(--ds-gutter-mobile,20px)),720px)}
 .site-main-nav-v14,.header-style-double-row .site-main-nav-v14,.header-style-centered .site-main-nav-v14,.header-style-split-brand .site-main-nav-v14,.header-style-overlay-center .site-main-nav-v14,.header-style-asymmetric .site-main-nav-v14,.header-style-side-rail .site-main-nav-v14{min-height:66px;padding-block:7px}
 .site-brand-logo-v14{width:42px;height:42px;flex-basis:42px;border-radius:12px}
 .site-brand-copy-v14 strong{max-width:46vw;font-size:.9rem}.site-brand-copy-v14 small{display:none}
 .mobile-header-logo-cta .site-nav-cta-v14{display:none}
 .site-mobile-menu-v14{width:min(390px,94vw);padding-inline:20px}
 body[data-template-key$="-luxe"] .site-header-shell-v14{width:min(100% - 24px,720px)}
 body[data-template-key$="-luxe"] .site-brand-logo-v14{width:46px;height:46px;flex-basis:46px}
 body[data-template-key$="-luxe"] .site-hero-v14{min-height:auto}
 body[data-template-key$="-luxe"] .site-hero-grid-v14{width:min(100% - 28px,720px);grid-template-columns:1fr;padding-block:110px 64px;gap:30px}
 body[data-template-key$="-luxe"] .site-hero-copy-v14 h1{font-size:clamp(2.65rem,13vw,4.35rem);max-width:11ch}
 body[data-template-key$="-luxe"] .site-hero-media-v14{order:0;max-width:none}
 body[data-template-key$="-luxe"] .site-hero-card-v14{aspect-ratio:4/5;max-height:72svh}
 .site-hero-carousel-v14{min-height:max(620px,88svh)}
 .site-carousel-shell-v14{padding-top:max(104px,calc(84px + env(safe-area-inset-top)))}
 .section-v3 :is(img,video,iframe){max-width:100%}
 .section-v3 :is(.service-item-v11,.conversion-card,.catalog-card,.team-card,.certificate-card,.before-after-card){min-width:0}
}

@media(max-width:430px){
 html{scroll-padding-top:74px}
 .site-header-shell-v14{width:calc(100% - 20px)}
 .site-main-nav-v14{min-height:62px;gap:6px}
 .site-brand-v14{gap:8px}.site-brand-logo-v14{width:40px;height:40px;flex-basis:40px}.site-brand-copy-v14 strong{max-width:45vw;font-size:.86rem}
 .site-menu-toggle-v14{width:42px;height:42px;flex-basis:42px;border-radius:12px}
 .mobile-header-floating-pill .site-header-v14{width:calc(100% - 16px);margin:8px}.mobile-header-floating-pill .site-main-nav-v14{min-height:56px;padding-inline:8px}
 .site-mobile-menu-v14{width:min(100%,94vw);padding-inline:18px}
 .site-mobile-menu-v14>a{padding:12px 8px}
 .mobile-menu-dropdown .site-mobile-menu-v14{inset:70px 10px auto}
 body[data-template-key$="-luxe"] .site-header-shell-v14{width:calc(100% - 20px)}
 body[data-template-key$="-luxe"] .site-hero-grid-v14{width:calc(100% - 22px);padding-top:100px}
 body[data-template-key$="-luxe"] .site-hero-copy-v14 h1{font-size:clamp(2.4rem,13.5vw,3.75rem)}
 .site-proof-strip-v14{grid-template-columns:1fr!important}
 .partners-v3,.mobile-services-grid-2 .section-services .service-collection-v11,.mobile-team-grid-2 .team-v3,.mobile-offers-grid-2 .conversion-grid{grid-template-columns:1fr!important}
}

@media(max-width:360px){
 .site-header-shell-v14{width:calc(100% - 16px)}
 .site-brand-copy-v14 strong{max-width:42vw}
 .site-brand-logo-v14{width:38px;height:38px;flex-basis:38px}
 .site-menu-toggle-v14{width:40px;height:40px;min-width:40px;min-height:40px;flex-basis:40px}
 body[data-template-key$="-luxe"] .site-hero-grid-v14{width:calc(100% - 18px)}
 .site-hero-actions-v14 .btn{padding-inline:14px}
}

@media(max-width:320px){
 .site-brand-copy-v14 strong{max-width:38vw;font-size:.8rem}
 .site-mobile-menu-v14{width:100vw;max-width:none}
 .mobile-header-centered .site-main-nav-v14{grid-template-columns:42px minmax(0,1fr) 42px}
 .section-shell,.site-engine-v14 .section-shell{width:calc(100% - 16px)}
}

@media(prefers-reduced-motion:reduce){.site-mobile-menu-backdrop-v159,.site-menu-toggle-v14 span,.site-mobile-menu-v14{transition:none!important}}
