/* Existing HOYA identity, with a focused model selector and a brand-led opening. */
.brand-symbol img{display:block;width:1em;height:1em}
.model-hero.gallery-hero{min-height:925px!important}
.model-showcase .showcase-frame{height:450px}
.model-navigation{position:relative;margin-top:27px;width:100%}
.model-navigation-heading{font-size:7px;letter-spacing:1.5px;line-height:1.5;color:var(--cocoa);margin-bottom:13px}
.model-thumbnails{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.model-thumb{position:relative;min-width:0;padding:0;display:flex;flex-direction:column;gap:9px;align-items:stretch;text-align:left;color:var(--cocoa);outline-offset:4px;transition:color .4s}
.model-thumb-preview{display:block;position:relative;height:57px;border-radius:3px;overflow:hidden;background:#eee7e0;opacity:.72;filter:saturate(.75);transform:scale(.96);transform-origin:center bottom;transition:opacity .45s,filter .45s,transform .55s var(--ease-out),box-shadow .45s}
.model-thumb-image{width:100%;height:100%;object-fit:cover;display:block}
.model-thumb-mark{position:absolute;left:50%;top:50%;width:25px;height:25px;transform:translate(-50%,-50%);filter:brightness(0) invert(1)}
.model-thumb-preview[data-theme="seedance"] .model-thumb-image{filter:brightness(.7)}
.model-thumb-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);height:32px;max-width:55%;object-fit:contain}
.model-thumb-preview[data-theme="deepseek"]{background:#edf2fb}
.model-thumb-preview[data-theme="qwen"]{background:#eeedfa}
.model-thumb-preview[data-theme="kimi"]{background:#eef0e7}
.model-thumb-name{font:10px/1.5 Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.model-thumb:after{content:"";height:1px;background:var(--mocha);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease-out);margin-top:0}
.model-thumb.is-selected{color:var(--tea)}
.model-thumb.is-selected:after{transform:scaleX(1)}
.model-thumb.is-selected .model-thumb-preview,.model-thumb:hover .model-thumb-preview,.model-thumb:focus-visible .model-thumb-preview{opacity:1;filter:none;transform:scale(1);box-shadow:0 4px 12px #4a3b2e0a}
.model-thumb:focus-visible{outline:2px solid var(--cocoa)}
.model-navigation.is-changing .model-thumb.is-selected .model-thumb-preview{animation:thumb-reveal .55s var(--ease-out)}
.marquee-brand{transition:color .5s}
.marquee-brand.is-highlighted{color:var(--tea)}
.provider-strip{border-top:0}
@keyframes thumb-reveal{from{opacity:.65;transform:translateY(4px)}to{opacity:1;transform:none}}

/* Eight brand rays converge, the HOYA wordmark opens, then joins the header. */
.brand-intro{color:var(--tea);font-family:Arial,sans-serif}
.brand-intro-backdrop{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 44%,var(--apricot) 0,var(--cloud) 68%);clip-path:circle(150% at 50% 44%)}
.brand-lockup{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);font-size:clamp(44px,10vw,144px);white-space:nowrap;z-index:3}
.brand-flight{display:flex;align-items:center;gap:.33em;transform-origin:center;will-change:transform}
.brand-star{display:block;flex:none;width:1.55em;height:1.55em;transform-origin:center;filter:drop-shadow(0 0 13px #7a6a5e1c)}
.brand-star-art{display:block;width:100%;height:100%;overflow:visible}
.brand-wordmark{font-size:1em;font-weight:600;letter-spacing:.12em;line-height:1;display:flex;position:relative}
.brand-wordmark>span{display:block}
.brand-wordmark:after{content:"HOYA";position:absolute;inset:0;white-space:nowrap;background:linear-gradient(110deg,transparent 30%,var(--cocoa) 49%,transparent 65%);background-size:280% 100%;background-position:180% 0;color:transparent;background-clip:text;-webkit-background-clip:text;pointer-events:none;opacity:0}
.brand-wordmark sup{font:400 .09em/1 Arial;letter-spacing:0;position:absolute;right:-.45em;top:.18em}
.brand-intro-tagline{position:absolute;top:calc(44% + 120px);left:5%;right:5%;text-align:center;font:italic 23px/1.7 Georgia,var(--serif);letter-spacing:.8px;margin:0;color:var(--cocoa)}
.brand-intro-kicker{position:absolute;top:8vh;left:6vw;font-size:8px;line-height:1.6;letter-spacing:3px;color:#a99b85}
.brand-intro-baseline{position:absolute;left:6vw;right:6vw;bottom:8vh;display:flex;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:2px;color:var(--cocoa)}
.brand-intro-rule{position:absolute;left:6vw;right:6vw;bottom:6vh;height:1px;background:linear-gradient(90deg,#93836a,#e7d4ad,#93836a);transform-origin:left}
.brand-light-rays{position:absolute;left:50%;top:44%;width:0;height:0;z-index:1}
.brand-light-rays>i{display:block;position:absolute;left:0;top:0;width:82vmax;height:1px;background:linear-gradient(90deg,transparent,var(--khaki) 18%,#c9b9a833 60%,transparent);transform-origin:0 50%;transform:rotate(var(--ray-angle)) scaleX(0);filter:drop-shadow(0 0 7px #c9b9a844);opacity:0}
.brand-echo{position:absolute;left:50%;top:44%;width:min(650px,80vw);aspect-ratio:1;transform:translate(-50%,-50%);color:var(--wheat);opacity:0;filter:blur(.3px);z-index:1}
.brand-intro:after{content:"";position:absolute;left:0;right:0;top:0;height:20vh;transform:translateY(-30vh) skewY(-12deg);background:linear-gradient(transparent,#ffffff80,transparent);opacity:0;pointer-events:none;z-index:2}
.intro-skip{position:fixed;right:6vw;top:7.8vh;z-index:151;font-size:9px;color:var(--cocoa);letter-spacing:.3px;gap:14px;align-items:center;padding:8px 0;border-bottom:1px solid var(--wheat);pointer-events:auto}
.intro-skip:not([hidden]){display:flex}
.intro-skip[hidden]{display:none!important}
.intro-skip:focus-visible{outline:2px solid var(--cocoa)}
.intro-running .brand-intro-backdrop{animation:brand-aperture 4.2s var(--ease-out) both}
.intro-running .brand-star{animation:brand-star-lock 4.2s var(--ease-out) both}
.intro-running .brand-star path{stroke-dasharray:1;stroke-dashoffset:1;animation:brand-star-draw 1.3s var(--ease-out) .15s both}
.intro-running .brand-star path:nth-child(2){animation-delay:.23s}
.intro-running .brand-star path:nth-child(3){animation-delay:.31s}
.intro-running .brand-star path:nth-child(4){animation-delay:.39s}
.intro-running .brand-wordmark>span{animation:brand-letter 4.2s var(--ease-out) both;animation-delay:calc(var(--letter-index)*.065s)}
.intro-running .brand-wordmark sup{animation:brand-register 4.2s ease both}
.intro-running .brand-wordmark:after{animation:brand-wordmark-glint 4.2s ease both}
.intro-running .brand-flight{animation:brand-handoff 4.2s var(--ease-out) both}
.intro-running .header .brand{animation:brand-header-return 4.2s linear both}
.intro-running .brand-intro-tagline{animation:brand-tagline 4.2s var(--ease-out) both}
.intro-running .brand-intro-kicker,.intro-running .brand-intro-baseline,.intro-running .intro-skip{animation:brand-caption 4.2s ease both}
.intro-running .brand-intro-rule{animation:brand-rule 4.2s var(--ease-out) both}
.intro-running .brand-light-rays>i{animation:brand-rays 4.2s var(--ease-out) both;animation-delay:calc(var(--ray-index)*.025s)}
.intro-running .brand-echo{animation:brand-echo 4.2s var(--ease-out) both}
.intro-running .brand-intro:after{animation:brand-sweep 4.2s ease both}
.intro-running .model-hero .title-word{animation:brand-page-enter 1.2s var(--ease-out) 2.55s both}
.intro-running .model-hero .title-mask:nth-child(2) .title-word{animation-delay:2.7s}
.intro-running .model-hero .hero-enter,.intro-running .model-hero .hero-actions{animation:brand-page-enter 1.1s var(--ease-out) 2.7s both}
.intro-running .model-showcase{animation:brand-page-enter 1.35s var(--ease-out) 2.6s both}

@keyframes brand-star-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes brand-star-lock{0%{opacity:0;transform:translateX(2.02em) scale(.25) rotate(-90deg)}12%{opacity:1}29%{transform:translateX(2.02em) scale(1.3) rotate(90deg)}48%,100%{opacity:1;transform:none;filter:drop-shadow(0 0 0 transparent)}}
@keyframes brand-letter{0%,29%{opacity:0;transform:translateY(.45em) rotateX(-45deg);filter:blur(7px);clip-path:inset(0 100% 0 0)}50%,100%{opacity:1;transform:none;filter:blur(0);clip-path:inset(0 0 0 0)}}
@keyframes brand-register{0%,43%{opacity:0}51%,100%{opacity:1}}
@keyframes brand-wordmark-glint{0%,44%{opacity:0;background-position:180% 0}49%{opacity:.9}65%{opacity:.9;background-position:-100% 0}72%,100%{opacity:0;background-position:-100% 0}}
@keyframes brand-handoff{0%,65%{transform:none;color:var(--tea);opacity:1}88%{transform:translate(var(--brand-flight-x,0px),var(--brand-flight-y,-36vh)) scale(var(--brand-flight-scale,.3));color:var(--tea);opacity:1}93%,100%{transform:translate(var(--brand-flight-x,0px),var(--brand-flight-y,-36vh)) scale(var(--brand-flight-scale,.3));color:var(--tea);opacity:0}}
@keyframes brand-header-return{0%,91%{opacity:0}100%{opacity:1}}
@keyframes brand-aperture{0%,64%{clip-path:circle(150% at 50% 44%)}95%,100%{clip-path:circle(0% at 50% 44%)}}
@keyframes brand-tagline{0%,38%{opacity:0;transform:translateY(15px);filter:blur(3px)}53%,65%{opacity:1;transform:none;filter:blur(0)}80%,100%{opacity:0;transform:translateY(-10px)}}
@keyframes brand-caption{0%{opacity:0}18%,60%{opacity:1}78%,100%{opacity:0}}
@keyframes brand-rule{0%{opacity:0;transform:scaleX(0)}16%{opacity:.65}64%{opacity:.65;transform:scaleX(1)}80%,100%{opacity:0;transform:scaleX(1)}}
@keyframes brand-rays{0%{opacity:0;transform:rotate(var(--ray-angle)) scaleX(.95)}13%{opacity:.55}31%,100%{opacity:0;transform:rotate(var(--ray-angle)) scaleX(.025)}}
@keyframes brand-echo{0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(-45deg)}25%{opacity:.04}57%{opacity:.025;transform:translate(-50%,-50%) scale(1) rotate(0)}78%,100%{opacity:0;transform:translate(-50%,-50%) scale(1.4) rotate(22deg)}}
@keyframes brand-sweep{0%,41%{opacity:0;transform:translateY(-20vh) skewY(-12deg)}50%{opacity:1}66%,100%{opacity:0;transform:translateY(110vh) skewY(-12deg)}}
@keyframes brand-page-enter{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}

@media(min-width:1600px){.model-hero.gallery-hero{min-height:1010px!important}.model-showcase .showcase-frame{height:510px}.model-thumb-preview{height:64px}}
@media(max-width:1100px){.model-hero.gallery-hero{min-height:900px!important}.model-showcase .showcase-frame{height:425px}.model-thumbnails{gap:8px}.model-thumb-preview{height:48px}.model-thumb-name{font-size:8px}.model-thumb-logo{height:27px}.model-thumb-mark{width:22px;height:22px}.brand-intro-tagline{font-size:21px;top:calc(44% + 100px)}}
@media(max-width:800px){.model-hero.gallery-hero{min-height:0!important}.model-showcase .showcase-frame{height:440px}.model-thumb-preview{height:65px}.model-thumb-name{font-size:10px}.model-navigation{margin-top:25px}.brand-intro-kicker{font-size:7px;letter-spacing:2px}.brand-intro-tagline{font-size:19px;top:calc(44% + 87px)}}
@media(max-width:540px){.model-showcase .showcase-frame{height:350px}.model-thumbnails{gap:7px}.model-thumb-preview{height:45px}.model-thumb-name{font-size:8px;letter-spacing:-.25px}.model-thumb-logo{height:24px;max-width:66%}.model-thumb-mark{width:20px;height:20px}.model-navigation-heading{font-size:6px;letter-spacing:1px;margin-bottom:12px}.model-navigation{margin-top:24px}.model-thumb{gap:7px}.brand-lockup{font-size:clamp(44px,11vw,62px)}.brand-intro-tagline{font-size:16px;letter-spacing:.3px;top:calc(44% + 69px);left:8%;right:8%}.brand-intro-kicker{top:6vh;left:24px;right:24px;max-width:58%;font-size:6px;letter-spacing:1.4px}.intro-skip{top:5.5vh;right:24px;font-size:8px}.brand-intro-baseline{left:24px;right:24px;bottom:8vh;font-size:6px;letter-spacing:.7px;gap:12px}.brand-intro-rule{left:24px;right:24px;bottom:6vh}}
.motion-off .intro-skip{display:none!important}
.motion-off .model-thumb-preview,.motion-off .model-thumb:after{transition:none;animation:none!important}
@media(prefers-reduced-motion:reduce){.intro-skip{display:none!important}.model-thumb-preview,.model-thumb:after{transition:none;animation:none!important}}
