/* Home hero: video behind the lacquer band, wordmark write-on. */
.identity.hero-video{min-height:clamp(380px,66vh,720px);display:flex;flex-direction:column;align-items:center;justify-content:center;isolation:isolate}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:0;transition:opacity 1.2s ease}
.hero-bg.ready{opacity:1}
.hero-shade{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 60% 42% at 50% 50%,#08090a99 0,#08090a4d 60%,#08090a99 100%)}
.identity.hero-video:before{opacity:.35}
.identity.hero-video:before,.identity.hero-video:after{z-index:-1}
.identity.hero-video .eyebrow{position:relative;text-shadow:0 1px 3px #000;order:2;margin:18px 0 0}
@media(min-width:701px){.identity.hero-video .eyebrow{font-size:12px;letter-spacing:.3em}}
.wordmark-live{width:min(1100px,90%);height:auto;display:block;margin:0 auto;overflow:visible;filter:drop-shadow(0 3px 1px #000)}
.wordmark-live .wm-fill{fill-opacity:0;transition:fill-opacity 1s ease}
.wordmark-live.filled .wm-fill{fill-opacity:1}
.wordmark-live .wm-trace{fill:none;stroke:url(#pianoGold);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:opacity 1.2s ease}
.wordmark-live.filled .wm-trace{opacity:0}
.wordmark-live.glow{animation:wm-glow 2.4s ease-out forwards}
@keyframes wm-glow{0%{filter:drop-shadow(0 3px 1px #000) drop-shadow(0 0 0 #fff0bd00)}35%{filter:drop-shadow(0 3px 1px #000) drop-shadow(0 0 22px #f3d48dcc)}100%{filter:drop-shadow(0 3px 1px #000) drop-shadow(0 0 9px #ae7b3080)}}
@media(max-width:700px){.identity.hero-video{min-height:0;aspect-ratio:16/12;justify-content:center;padding-top:15%;padding-bottom:3%}.identity.hero-video .eyebrow{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.hero-bg{transition:none}.wordmark-live .wm-fill{fill-opacity:1;transition:none}.wordmark-live .wm-trace{display:none}.wordmark-live.glow{animation:none}}
/* Neon sign mode (hero-neon.js): pen write-on, ignition, steady glow with a halo on the black. */
.neon-halo{position:absolute;left:50%;top:50%;width:min(1100px,92%);height:70%;transform:translate(-50%,-48%);z-index:-1;pointer-events:none;opacity:0;transition:opacity 1.6s ease;background:radial-gradient(ellipse 50% 46% at 50% 52%,#c2954740 0,#ae7b301f 45%,#ae7b3000 72%)}
.neon-halo.on{opacity:1}
.wordmark-live.neon{position:relative;filter:drop-shadow(0 0 1px #fff0bd) drop-shadow(0 0 5px #f3d48dcc)}
.wordmark-live.neon-writing .wm-fill{fill:#f4f1ea!important}
.wordmark-live.neon-writing{filter:drop-shadow(0 0 1.5px #ffffff) drop-shadow(0 0 7px #f4f1eab3) drop-shadow(0 0 18px #e9e4d866)}
.wordmark-live.neon-dim{opacity:.18}
.wordmark-live.neon-dim .wm-fill{fill:#f4f1ea!important}
.wordmark-live.neon-c1 .wm-fill{fill:#e8743b!important}
.wordmark-live.neon-c1{filter:drop-shadow(0 0 1.5px #ffd2b5) drop-shadow(0 0 8px #e8743bd9) drop-shadow(0 0 24px #e8743b80)}
.wordmark-live.neon-c2 .wm-fill{fill:#ffc970!important}
.wordmark-live.neon-c2{filter:drop-shadow(0 0 1.5px #fff1d6) drop-shadow(0 0 8px #ffc970d9) drop-shadow(0 0 24px #ffc97080)}
.wordmark-live.neon-on{filter:drop-shadow(0 2px 1px #000c) drop-shadow(0 0 1.5px #fff6d8) drop-shadow(0 0 6px #f3d48de6) drop-shadow(0 0 18px #d8ad60b3) drop-shadow(0 0 44px #ae7b3080);animation:neon-hum 5s ease-in-out infinite}
@keyframes neon-hum{0%,100%{opacity:1}50%{opacity:.94}}
@media(prefers-reduced-motion:reduce){.wordmark-live.neon-on{animation:none}.neon-halo{transition:none}}
/* Eyebrow fades in while the wordmark is being written (hero.js adds eb-wait, then eb-in). */
.identity.hero-video.eb-wait .eyebrow{opacity:0;transform:translateY(6px);transition:opacity 1.6s ease,transform 1.6s ease}
.identity.hero-video.eb-wait.eb-in .eyebrow{opacity:1;transform:none}
/* Eyebrow gold shine: a slow glint sweeps across the letters, once on arrival, then about every 12 s. */
.identity.hero-video .eyebrow{background:linear-gradient(100deg,#c9b48a 0%,#d6c5a3 38%,#fff0bd 47%,#f3d48d 50%,#d6c5a3 62%,#c9b48a 100%);background-size:300% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 1px 2px #000)}
.identity.hero-video.eb-in .eyebrow{animation:eb-shine 12s cubic-bezier(.45,.05,.35,1) .4s infinite}
@keyframes eb-shine{0%{background-position:100% 0}28%{background-position:0% 0}100%{background-position:0% 0}}
@media(prefers-reduced-motion:reduce){.identity.hero-video .eyebrow{animation:none;background:none;color:#d6c5a3}}
/* F2 (run-0004): focus ring on light sections uses the darker link gold (was 2.26:1 on ivory). */
.light a:focus-visible,.light button:focus-visible,.light input:focus-visible,.light select:focus-visible,.light textarea:focus-visible,.light summary:focus-visible{outline-color:#79602d}
/* F3 (run-0004): taller tap area for small inline links, without moving the layout. */
.crumb a,a[href^="tel:"],a[href^="mailto:"]{padding-top:15px;padding-bottom:15px}
