@font-face{font-family:AALMDisplay;src:url('../fonts/aalm-display-regular.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:AALMDisplay;src:url('../fonts/aalm-display-semibold.woff') format('woff');font-style:normal;font-weight:600 800;font-display:swap}
@font-face{font-family:AALMSans;src:url('../fonts/aalm-sans-regular.woff') format('woff');font-style:normal;font-weight:400 600;font-display:swap}
@font-face{font-family:AALMSans;src:url('../fonts/aalm-sans-bold.woff') format('woff');font-style:normal;font-weight:700 900;font-display:swap}

:root{--font-display:AALMDisplay,"Segoe UI Variable Display","Segoe UI",sans-serif;--font-body:AALMSans,"Segoe UI Variable Text","Segoe UI",sans-serif;--accent-gold:#c89236;--accent-blue:#0866bd;--accent-marine:#06437f}
body,input,select,textarea,button{font-family:var(--font-body)}
h1,h2,h3,h4,h5,h6,.stock-cards strong,.stats b{font-family:var(--font-display);font-weight:600;letter-spacing:-.022em}
.top nav,.btn,.eyebrow,.pill,.detail-tabs,.quick,.support-contact summary b{font-family:var(--font-body);letter-spacing:.005em}
.hero-copy{isolation:isolate}
.hero h1{min-height:3.2em;display:block;position:relative;margin-bottom:14px;transform-origin:left center;will-change:transform,opacity,filter,clip-path;color:var(--deep);text-wrap:balance}
.hero h1 .message-accent{position:relative;display:inline;color:var(--message-accent,var(--accent-gold));text-shadow:0 8px 25px color-mix(in srgb,var(--message-accent) 18%,transparent)}
.hero h1 .message-accent:after{content:"";position:absolute;left:0;right:0;bottom:-.04em;height:.08em;border-radius:99px;background:linear-gradient(90deg,transparent,var(--message-accent),transparent);transform-origin:left;animation:accentDraw .42s .16s both}
.hero h1.accent-gold{--message-accent:var(--accent-gold)}
.hero h1.accent-blue{--message-accent:var(--accent-blue)}
.hero h1.accent-marine{--message-accent:var(--accent-marine)}
.hero h1.message-enter{animation-duration:.48s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.2,.72,.25,1)}
.hero h1.message-leave{opacity:0!important;transform:translateY(-9px) scale(.992)!important;filter:blur(5px)!important;transition:opacity .28s,transform .28s,filter .28s}
.message-style-rise{animation-name:msgRise}
.message-style-split{animation-name:msgSplit}
.message-style-focus{animation-name:msgFocus}
.message-style-wipe{animation-name:msgWipe}
.message-style-track{animation-name:msgTrack}
.message-style-scale{animation-name:msgScale}
.message-style-slide-left{animation-name:msgSlideLeft}
.message-style-line-reveal{animation-name:msgLineReveal}
.message-style-tilt{animation-name:msgTilt}
.message-style-clip-up{animation-name:msgClipUp}
.message-style-glow{animation-name:msgGlow}
.message-style-slide-right{animation-name:msgSlideRight}
.message-style-depth{animation-name:msgDepth}
.message-style-gold-sweep{animation-name:msgGoldSweep}
.message-style-soft-focus{animation-name:msgSoftFocus}
.message-style-precision{animation-name:msgPrecision}
.message-style-wave{animation-name:msgWave}
.message-style-resolve{animation-name:msgResolve}
@keyframes msgRise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes msgSplit{from{opacity:0;clip-path:inset(48% 0 48% 0);letter-spacing:.02em}to{opacity:1;clip-path:inset(0);letter-spacing:-.035em}}
@keyframes msgFocus{from{opacity:.1;filter:blur(12px);transform:scale(1.025)}to{opacity:1;filter:none;transform:none}}
@keyframes msgWipe{from{opacity:.35;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0)}}
@keyframes msgTrack{from{opacity:0;letter-spacing:.08em}to{opacity:1;letter-spacing:-.035em}}
@keyframes msgScale{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}
@keyframes msgSlideLeft{from{opacity:0;transform:translateX(34px)}to{opacity:1;transform:none}}
@keyframes msgLineReveal{from{opacity:0;clip-path:inset(0 0 100% 0)}to{opacity:1;clip-path:inset(0)}}
@keyframes msgTilt{from{opacity:0;transform:rotateX(-14deg) translateY(12px)}to{opacity:1;transform:none}}
@keyframes msgClipUp{from{opacity:0;clip-path:inset(100% 0 0 0);transform:translateY(12px)}to{opacity:1;clip-path:inset(0);transform:none}}
@keyframes msgGlow{from{opacity:0;text-shadow:0 0 32px #0b66bd}to{opacity:1;text-shadow:none}}
@keyframes msgSlideRight{from{opacity:0;transform:translateX(-32px)}to{opacity:1;transform:none}}
@keyframes msgDepth{from{opacity:0;transform:perspective(400px) translateZ(-55px)}to{opacity:1;transform:perspective(400px) translateZ(0)}}
@keyframes msgGoldSweep{from{opacity:.1;color:#c89236;clip-path:inset(0 100% 0 0)}to{opacity:1;color:var(--deep);clip-path:inset(0)}}
@keyframes msgSoftFocus{from{opacity:0;filter:blur(7px) saturate(.4)}to{opacity:1;filter:none}}
@keyframes msgPrecision{from{opacity:0;transform:translateY(-13px);letter-spacing:.035em}to{opacity:1;transform:none;letter-spacing:-.035em}}
@keyframes msgWave{from{opacity:0;transform:translateY(10px) skewX(-3deg)}to{opacity:1;transform:none}}
@keyframes msgResolve{0%{opacity:0;filter:blur(9px);transform:translateX(-12px)}65%{opacity:1;filter:blur(0);transform:translateX(3px)}100%{transform:none}}
@keyframes accentDraw{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:.85}}

.blueprint{opacity:.18;transition:opacity .35s,transform .48s;animation-duration:1.2s;animation-fill-mode:both}
.blueprint[data-graphic="line-sweep"]{animation-name:graphicSweep}
.blueprint[data-graphic="chain-trace"]{animation-name:graphicTrace}
.blueprint[data-graphic="grid-drift"]{animation-name:graphicGrid}
.blueprint[data-graphic="arc-draw"]{animation-name:graphicArc}
.blueprint[data-graphic="technical-pulse"]{animation-name:graphicPulse}
.blueprint[data-graphic="rope-wave"]{animation-name:graphicWave}
@keyframes graphicSweep{from{opacity:.03;transform:translateX(-18px)}to{opacity:.12;transform:none}}
@keyframes graphicTrace{from{opacity:.03;filter:blur(3px)}to{opacity:.12;filter:none}}
@keyframes graphicGrid{from{background-position:0 0}to{background-position:32px 16px}}
@keyframes graphicArc{from{opacity:.02;transform:scale(.94) rotate(-1deg)}to{opacity:.12;transform:none}}
@keyframes graphicPulse{0%{opacity:.03}55%{opacity:.15}100%{opacity:.12}}
@keyframes graphicWave{from{opacity:.03;transform:translateY(9px) skewX(-2deg)}to{opacity:.12;transform:none}}

.detail-hero-copy{position:relative;isolation:isolate;overflow:hidden;border-radius:0 24px 24px 0}
.detail-hero-copy.has-technical-background:before{content:"";position:absolute;z-index:-1;inset:-16%;background:var(--technical-bg) center/contain no-repeat;opacity:.11;mix-blend-mode:multiply;filter:saturate(.75);pointer-events:none}
.detail-hero-copy.has-technical-background:after{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,#fffef9e8,#f6f9fce5 74%,transparent)}

.support-orbit{display:grid;place-items:center;isolation:isolate}
.support-orbit .headphones,.support-orbit .anchor{position:absolute;inset:0;display:grid;place-items:center}
.support-orbit .headphones .icon{inset:auto;width:44px;height:44px}
.support-orbit .anchor .icon{position:static;width:19px;height:26px;filter:drop-shadow(0 0 5px #e2b25b)}
.whatsapp-float,.legacy-support-button{display:none!important}

@media(max-width:980px){.hero h1{min-height:3.45em}.detail-hero-copy.has-technical-background:before{inset:-7%;background-size:84% auto}}
@media(max-width:640px){.hero h1{min-height:3.7em;font-size:clamp(31px,10vw,42px)}.hero h1 .message-accent:after{height:.06em}.blueprint{opacity:.1}.detail-hero-copy.has-technical-background:before{inset:-3%;background-position:70% center;background-size:90% auto;opacity:.09}}
@media(prefers-reduced-motion:reduce){.hero h1.message-enter{animation:msgReduced .25s both!important}.hero h1.message-leave{filter:none!important;transform:none!important}.hero h1 .message-accent:after,.blueprint,.support-orbit:before,.support-orbit:after{animation:none!important}@keyframes msgReduced{from{opacity:0}to{opacity:1}}}
