/* Two moving highlights per letter, using DUO's actual vector contours. */
.hero{isolation:isolate}
.hero .duo-hero-imprint{inset:0;overflow:hidden;mask:none;-webkit-mask:none;background:none;z-index:0}
.hero-laser-wordmark{position:absolute;left:50%;top:54%;width:112%;max-width:none;height:auto;transform:translate(-50%,-50%);overflow:visible;pointer-events:none}
.hero-laser-fill{fill:none}
.hero-laser-trails{fill:none;stroke:#ffe18b;stroke-width:230;stroke-linecap:butt;stroke-linejoin:round;filter:drop-shadow(0 0 220px #e8be4c88)}
.hero-laser-segment{stroke-dasharray:.85 49.15;stroke-dashoffset:var(--tail);animation:hero-laser-travel 16s linear infinite;animation-delay:var(--laser-phase)}
@keyframes hero-laser-travel{from{stroke-dashoffset:var(--tail)}to{stroke-dashoffset:calc(var(--tail) - 100px)}}
.hero .duo-hero-light{z-index:0;background:none}.hero .duo-hero-light:after{display:none}
.hero__layout{z-index:1;align-items:center;padding-bottom:88px}
.hero__copy{isolation:isolate}
.hero__copy:before{content:'';position:absolute;inset:-36px -44px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse,#111210 40%,#111210ed 64%,#11121000 77%);filter:blur(14px)}
.hero .hero__logo{align-self:center;align-items:center;justify-content:center;height:auto;min-height:0;overflow:visible}
.hero .duo-signature{display:grid;place-items:center;max-width:420px;aspect-ratio:1;margin:0;overflow:visible;isolation:isolate}
.hero .duo-signature__echo{inset:-12%;background:radial-gradient(ellipse,#111210 35%,#111210ed 56%,transparent 73%);filter:blur(18px);z-index:-1}
.hero .duo-signature__plate{position:relative;inset:auto;display:grid;place-items:center;width:100%;aspect-ratio:1;overflow:visible;rotate:0deg;transform:none}
.hero .duo-signature__plate>img{display:block;width:90%;height:auto;max-height:none;max-width:none;object-fit:contain;margin:0;filter:drop-shadow(0 16px 24px #0009);transform:none}
.hero .duo-signature__label{bottom:-4px;left:12px;right:110px}
.hero .duo-signature__seal{bottom:-8px;right:10px}
.hero[data-motion-visible=false] .hero-laser-segment,body[data-page-hidden=true] .hero-laser-segment,body[data-motion=paused] .hero-laser-segment,html[data-intro=playing] .hero-laser-segment{animation-play-state:paused}
@media(max-width:960px){.hero .duo-signature{max-width:340px}.hero-laser-wordmark{width:132%}}
@media(max-width:700px){
 .hero__layout{padding-bottom:66px}.hero-laser-wordmark{width:215%;top:58%}
 .hero .duo-signature{max-width:280px}.hero__copy:before{inset:-24px -18px;filter:blur(10px)}
 .hero-laser-trails{stroke-width:300;opacity:.65}
}
@media(prefers-reduced-motion:reduce){.hero-laser-segment{animation:none;opacity:.09!important}}

@media(min-width:1441px){.hero .duo-signature{max-width:480px}.hero__layout{padding-bottom:90px}}

/* Center the complete hero within the desktop viewport. */
@media(min-width:961px){
 .hero .hero__layout{min-height:100svh;padding-block:112px;align-items:center;align-content:center;margin-inline:auto}
 .hero-laser-wordmark{top:50%}
}
/* Compensate for the compact desktop scale, retaining one visible screen. */
@media(min-width:961px) and (hover:hover) and (pointer:fine){
 .hero .hero__layout{min-height:125svh}
}

/* A bright leading tip followed by a soft golden tail. */
.hero-laser-trails{stroke:#ffcf29;filter:drop-shadow(0 0 260px #ffcc0040)}
@media(prefers-reduced-motion:reduce){}

/* A quiet continuous contour keeps the brand legible between light passes. */
.hero-laser-guide{fill:none;stroke:#d8bd65;stroke-width:155;opacity:.11;filter:none}

/* One smaller ray travels around the O counter. */
.hero-laser-letter--inner .hero-laser-segment{stroke-dasharray:.85 99.15;animation-duration:12s}

/* Closing mark shares the hero's continuous contour and travelling tails. */
.closing .closing__mark--laser{opacity:.65;height:auto;overflow:visible}
.closing .closing__mark--laser .hero-laser-trails{stroke-width:10;filter:drop-shadow(0 0 14px #ffcc0040)}
.closing .closing__mark--laser .hero-laser-guide{stroke-width:8}
.closing[data-motion-visible=false] .hero-laser-segment{animation-play-state:paused}

/* Quiet monochrome thumbnail ribbons frame the hero without covering its copy. */
.hero-thumb-band{position:absolute;left:0;right:0;height:clamp(64px,8svh,92px);z-index:0;overflow:hidden;pointer-events:none;filter:grayscale(1);opacity:.045;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.hero-thumb-band--top{top:100px}.hero-thumb-band--bottom{bottom:20px}
.hero-thumb-band__track{display:flex;width:max-content;height:100%;animation:hero-thumbs-drift 180s linear infinite}
.hero-thumb-band--bottom .hero-thumb-band__track{animation-direction:reverse;animation-duration:205s}
.hero-thumb-band__group{display:flex;align-items:stretch;gap:14px;padding-right:14px;flex-shrink:0;height:100%}
.hero-thumb-band img{width:auto;max-width:none;height:100%;aspect-ratio:16/9;object-fit:cover;flex:none;border-radius:6px}
@keyframes hero-thumbs-drift{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.hero[data-motion-visible='false'] .hero-thumb-band__track,body[data-page-hidden='true'] .hero-thumb-band__track,body[data-motion='paused'] .hero-thumb-band__track,html[data-intro='playing'] .hero-thumb-band__track{animation-play-state:paused}
@media(max-width:960px){.hero-thumb-band--top{top:87px}.hero-thumb-band--bottom{bottom:8px}.hero-thumb-band{height:60px;opacity:.035}}
@media(prefers-reduced-motion:reduce){.hero-thumb-band__track{animation:none}}

/* Original current DUO vector, including the complete U shoulder. */
.hero-laser-wordmark .hero-laser-trails{stroke-width:21;filter:drop-shadow(0 0 24px #ffcc0040)}
.hero-laser-wordmark .hero-laser-guide{stroke-width:14}
@media(max-width:700px){.hero-laser-wordmark .hero-laser-trails{stroke-width:27}}
