/* Homepage typography and application path refinement. */
.hero-copy{width:100%;max-width:620px}
.hero-copy h1{max-width:18ch;margin:.7rem 0 1.05rem;font-size:clamp(2.35rem,3.5vw,3.15rem);line-height:1.06;letter-spacing:-.045em}
.hero-copy .intro{max-width:48ch;font-size:clamp(.94rem,1.15vw,1.08rem);line-height:1.7}
.hero-promise{max-width:none;margin:1.05rem 0 1.25rem;padding:0;border:0;font:600 .72rem/1.5 'DM Mono',monospace;letter-spacing:.045em;text-transform:uppercase;color:#fff;text-shadow:0 1px 10px #28123880}
.hero .cta{display:inline-flex;align-items:center;gap:.65rem;min-height:48px;padding:.88rem 1.2rem;border-radius:999px;font-size:.78rem;font-weight:800;letter-spacing:.045em;text-transform:uppercase;transition:transform .2s ease,box-shadow .2s ease}
.hero .cta:hover{transform:translateY(-2px);box-shadow:0 16px 34px #32215d77}
.about-photo,.art-founder img{filter:none!important}
.academy-video-label{display:flex;align-items:center;gap:.75rem;margin:1.25rem 0 .7rem;color:#c9fa42;font:600 .78rem/1.4 'DM Mono',monospace;letter-spacing:.12em;text-transform:uppercase}
.academy-video-label:after{content:'ESBMODEL · CASTING';color:rgba(255,255,255,.58);font-size:.62rem;letter-spacing:.1em}
.academy-page .academy-video{display:block;width:100%;height:auto;max-height:76vh;aspect-ratio:auto;object-fit:contain;background:#10120f;filter:none;border:1px solid rgba(255,255,255,.18);border-radius:16px;box-shadow:0 22px 54px rgba(20,15,28,.28)}
@media(max-width:600px){.academy-video-label{font-size:.7rem}.academy-video-label:after{font-size:.54rem}.academy-page .academy-video{max-height:70vh;border-radius:12px}}
@media(max-width:900px){.hero-copy{width:min(100%,640px);margin-inline:auto}.hero-copy h1{max-width:15ch;font-size:clamp(2.35rem,6.2vw,3.3rem)}.hero-copy .intro{font-size:.98rem}}
@media(max-width:560px){.hero{padding-top:9.5rem}.hero-copy h1{max-width:13ch;font-size:clamp(2.2rem,9vw,2.85rem);line-height:1.04}.hero-copy .intro{font-size:.94rem;line-height:1.65}.hero-promise{font-size:.64rem;letter-spacing:.025em;margin:.9rem 0 1.05rem}.hero .cta{width:100%;justify-content:center;min-height:50px}.hero-sculpture{height:450px}}
.brand-logo{perspective:700px;transform-style:preserve-3d;transition:transform .24s ease,filter .24s ease}
.brand-logo:hover{transform:translateY(-1px)}
.esb-logo{overflow:visible;filter:drop-shadow(0 1px 0 rgba(238,244,239,.9)) drop-shadow(0 3px 0 rgba(104,116,112,.78)) drop-shadow(0 7px 9px rgba(17,31,35,.25))}
.esb-logo .logo-disc{stroke:rgba(235,244,239,.92);stroke-width:1.35px;paint-order:stroke fill}
.esb-logo .logo-cut{stroke-width:2.7px;stroke-linecap:round;filter:drop-shadow(0 1px 0 rgba(132,143,139,.82))}
.esb-logo .logo-accent{stroke-width:4.2px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 3px rgba(197,255,37,.48))}
.esb-logo .logo-esb{stroke:rgba(255,255,255,.78);stroke-width:.65px;paint-order:stroke fill;letter-spacing:.015em}
.esb-logo .logo-model{stroke:rgba(255,255,255,.8);stroke-width:.45px;paint-order:stroke fill;letter-spacing:.22em}
.landmark-note{display:grid;gap:.45rem;margin:1.1rem 0;padding:.9rem 1rem;border-left:2px solid #c5ff25;background:rgba(255,255,255,.055);font-size:.82rem;line-height:1.55}
.landmark-note b{color:#c5ff25;font:600 .62rem/1.5 'DM Mono',monospace;letter-spacing:.09em}
.landmark-note span{color:inherit}
