.iflh-hero{--iflh-ink:#2a071f;--iflh-muted:#6f675f;--iflh-gold:#c9a65d;--iflh-coral:#e05a47;--iflh-fade:900ms;--iflh-zoom:.07;max-width:1540px;min-height:min(720px,calc(100svh - 76px));margin:auto;padding:clamp(38px,5vw,72px) clamp(24px,6vw,96px);display:grid;grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr);align-items:center;gap:clamp(38px,6vw,92px);overflow:visible;color:var(--iflh-ink);background:linear-gradient(120deg,#fbf7ef 0 64%,#f7efe6 100%);box-sizing:border-box}.iflh-hero *{box-sizing:border-box}.iflh-copy{max-width:590px}.iflh-eyebrow{margin:0 0 25px;color:var(--iflh-coral);font:600 10px/1.4 Manrope,Arial,sans-serif;letter-spacing:.22em;text-transform:uppercase}.iflh-copy h1{max-width:9.5ch;margin:0;color:var(--iflh-ink);font:400 clamp(62px,6.2vw,94px)/.91 "Cormorant Garamond",Georgia,serif;letter-spacing:-.055em}.iflh-intro{max-width:38ch;margin:28px 0 0;color:var(--iflh-muted);font:400 clamp(18px,1.55vw,23px)/1.55 "Cormorant Garamond",Georgia,serif}.iflh-controls{margin-top:clamp(30px,5vh,54px)}.iflh-controls button{min-width:158px;min-height:48px;padding:0 16px;border:1px solid rgba(42,7,31,.28);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:9px;color:var(--iflh-ink);background:transparent;cursor:pointer;font:600 10px/1 Manrope,Arial,sans-serif;letter-spacing:.11em;text-transform:uppercase}.iflh-controls button:hover,.iflh-controls button:focus-visible{border-color:var(--iflh-ink);color:#fff;background:var(--iflh-ink);outline:none}.iflh-theatre{position:relative;width:min(100%,760px);justify-self:center}.iflh-halo{position:absolute;inset:9% -5% -5%;border-radius:38%;background:radial-gradient(ellipse,rgba(224,90,71,.17),rgba(241,199,79,.10) 42%,transparent 72%);filter:blur(42px)}.iflh-arch{position:relative;width:100%;min-width:0;aspect-ratio:5/4;margin:auto}.iflh-backplate{position:absolute;inset:-2.5%;z-index:0;border-radius:48% 48% 24px 24px/38% 38% 24px 24px;background:linear-gradient(145deg,#3c0b30,#160211 62%);box-shadow:0 28px 70px rgba(42,7,31,.18);transform:scale(1.025)}.iflh-window{position:absolute;inset:0;z-index:1;overflow:hidden;border-radius:48% 48% 20px 20px/38% 38% 20px 20px;background:#160211;clip-path:inset(0 round 48% 48% 20px 20px/38% 38% 20px 20px)}.iflh-depth{position:absolute;inset:-4%;background:radial-gradient(circle at 52% 44%,#551745,#160211 72%);transform:scale(1.05)}.iflh-slide{position:absolute;inset:0;margin:0;display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity var(--iflh-fade) ease-in-out}.iflh-slide::before{content:"";position:absolute;inset:-8%;background-image:linear-gradient(rgba(25,2,19,.30),rgba(25,2,19,.60)),var(--iflh-image);background-position:var(--iflh-x) var(--iflh-y);background-size:cover;filter:blur(27px) saturate(1.04);opacity:.78;transform:scale(1.12);transition:transform 3.5s cubic-bezier(.2,.65,.35,1),filter var(--iflh-fade) ease}.iflh-slide::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 40%,rgba(18,2,14,.18) 73%,rgba(18,2,14,.48))}.iflh-slide.is-active{z-index:2;opacity:1;pointer-events:auto}.iflh-slide.is-active::before{transform:scale(1.24)}.iflh-slide img{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:contain;object-position:var(--iflh-x) var(--iflh-y);transform-origin:var(--iflh-x) var(--iflh-y);filter:saturate(1.07) drop-shadow(0 20px 28px rgba(0,0,0,.26));transform:scale(1.08);-webkit-mask-image:radial-gradient(ellipse 83% 88% at 50% 50%,#000 58%,rgba(0,0,0,.94) 74%,transparent 100%);mask-image:radial-gradient(ellipse 83% 88% at 50% 50%,#000 58%,rgba(0,0,0,.94) 74%,transparent 100%)}.iflh-slide.is-active img{animation:iflh-breathe 3.5s cubic-bezier(.2,.65,.35,1) both}.iflh-glass{position:absolute;inset:0;z-index:8;pointer-events:none;background:linear-gradient(118deg,rgba(255,255,255,.11),transparent 24%,transparent 70%,rgba(255,255,255,.04));mix-blend-mode:screen;animation:iflh-light 3.5s ease-in-out infinite}.iflh-frame{position:absolute;inset:0;z-index:14;border:2px solid var(--iflh-gold);border-radius:48% 48% 20px 20px/38% 38% 20px 20px;pointer-events:none;box-shadow:inset 0 0 0 7px rgba(255,255,255,.035),inset 0 0 0 8px rgba(66,15,53,.55),0 28px 70px rgba(42,7,31,.14)}.iflh-frame::after{content:"";position:absolute;inset:10px;border:1px solid rgba(255,239,184,.27);border-radius:inherit}.iflh-hero[data-hero-running=false] .iflh-slide img,.iflh-hero[data-hero-running=false] .iflh-glass{animation-play-state:paused}.iflh-hero[data-hero-running=false] .iflh-slide::before{transition:none}@keyframes iflh-breathe{from{transform:scale(1.08)}to{transform:scale(calc(1.08 + var(--iflh-zoom)))}}@keyframes iflh-light{0%,100%{opacity:.48;filter:brightness(.94)}50%{opacity:.82;filter:brightness(1.13)}}@media(max-width:940px){.iflh-hero{min-height:auto;padding:54px 34px;grid-template-columns:minmax(260px,.72fr) minmax(390px,1.15fr);gap:34px}.iflh-copy h1{font-size:clamp(58px,8.4vw,78px)}}@media(max-width:640px){.iflh-hero{min-height:0;padding:38px 20px 48px;display:flex;flex-direction:column;align-items:stretch;gap:26px}.iflh-copy h1{max-width:10ch;font-size:clamp(54px,15.2vw,70px)}.iflh-intro{margin-top:19px;font-size:17px}.iflh-controls{margin-top:22px}.iflh-controls button{min-width:44px;min-height:44px}.iflh-controls button span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.iflh-theatre,.iflh-arch{width:100%}.iflh-arch{aspect-ratio:5/4}}@media(prefers-reduced-motion:reduce){.iflh-slide{transition:opacity var(--iflh-fade) ease-in-out}.iflh-slide img{transform:scale(1.08)!important}.iflh-slide.is-active img,.iflh-glass{animation:none!important}.iflh-glass{opacity:.58;filter:none}.iflh-slide::before{transition:none}}
.iflh-stage{width:100%;container:iflh-stage/inline-size}
@container iflh-stage (max-width:940px){.iflh-hero{min-height:auto;padding:54px 34px;grid-template-columns:minmax(260px,.72fr) minmax(390px,1.15fr);gap:34px}.iflh-copy h1{font-size:clamp(58px,8.4vw,78px)}}
@container iflh-stage (max-width:640px){.iflh-hero{min-height:0;padding:38px 20px 48px;display:flex;flex-direction:column;align-items:stretch;gap:26px}.iflh-copy h1{max-width:10ch;font-size:clamp(54px,15.2vw,70px)}.iflh-intro{margin-top:19px;font-size:17px}.iflh-controls{margin-top:22px}.iflh-controls button{min-width:44px;min-height:44px}.iflh-controls button span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.iflh-theatre,.iflh-arch{width:100%}.iflh-arch{aspect-ratio:5/4}}

/* Keep the fixed arch present in the first mobile viewport without changing its 5:4 geometry. */
@media(max-width:640px){.iflh-hero{padding:26px 20px 40px;gap:16px}.iflh-copy{position:relative}.iflh-eyebrow{margin-bottom:14px;padding-right:58px}.iflh-copy h1{font-size:clamp(46px,13.2vw,58px);line-height:.88}.iflh-intro{max-width:34ch;margin-top:15px;font-size:16.5px;line-height:1.42}.iflh-controls{position:absolute;top:-8px;right:0;margin:0}.iflh-controls button{padding:0}.iflh-theatre{margin-top:0}}
@container iflh-stage (max-width:640px){.iflh-hero{padding:26px 20px 40px;gap:16px}.iflh-copy{position:relative}.iflh-eyebrow{margin-bottom:14px;padding-right:58px}.iflh-copy h1{font-size:clamp(46px,13.2vw,58px);line-height:.88}.iflh-intro{max-width:34ch;margin-top:15px;font-size:16.5px;line-height:1.42}.iflh-controls{position:absolute;top:-8px;right:0;margin:0}.iflh-controls button{padding:0}.iflh-theatre{margin-top:0}}

/* The Home hero is ambient presentation, not a player. */
.iflh-controls{display:none!important}
@media(max-width:640px){.iflh-eyebrow{padding-right:0}.iflh-theatre{order:-1}}
@container iflh-stage (max-width:640px){.iflh-eyebrow{padding-right:0}.iflh-theatre{order:-1}}
