/* A continuous stage: light, follicle geometry and a quiet editorial voice. */
:root{--cinema-ink:#14281f;--cinema-ivory:#f1eee1;--cinema-muted:#b3bcab;--cinema-line:#c3c6ac33}
.doopi-header{transition:background .45s,color .45s,border-color .45s}
body:has(.cinematic-hero) .doopi-header:not(.hero-away){background:#14281f;color:var(--cinema-ivory);border-color:var(--cinema-line)}
body:has(.cinematic-hero) .doopi-header:not(.hero-away) .brand-switch a{color:#c1c7b8}
body:has(.cinematic-hero) .doopi-header:not(.hero-away) .brand-switch a[aria-current]{color:var(--cinema-ivory);border-color:#e5e6d3}
body:has(.cinematic-hero) .doopi-header:not(.hero-away) #motion-toggle,body:has(.cinematic-hero) .doopi-header:not(.hero-away) .menu-toggle{border-color:#c5ccbb55}
.cinematic-hero.doopi-hero{position:relative;isolation:isolate;display:block;width:100%;max-width:none;height:calc(100svh - 94px);min-height:760px;max-height:1000px;margin:0;padding:0;overflow:hidden;background:var(--cinema-ink);color:var(--cinema-ivory)}
.cinema-poster{position:absolute;inset:0;z-index:-2;opacity:.84;transition:opacity 1.4s}
.cinema-poster img{width:100%;height:100%;object-fit:cover;object-position:62% 52%}
.cinematic-hero.render-ready .cinema-poster{opacity:0;transition:opacity .18s}
.cinema-atmosphere{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 79% 37%,#56624d60,transparent 47%),radial-gradient(ellipse at 53% 103%,#72816223,transparent 46%),linear-gradient(90deg,#14281f 0%,#14281fd9 27%,#14281f00 58%);pointer-events:none}
.cinematic-hero.render-ready .cinema-atmosphere{background:radial-gradient(ellipse at 76% 38%,#5064494d,transparent 49%),radial-gradient(ellipse at 57% 103%,#76856230,transparent 49%),linear-gradient(100deg,#12261f 0%,#14281f 36%,#14271e00 73%)}
.cinema-world{position:absolute;inset:0 0 65px 36%;z-index:0;pointer-events:none}
.cinema-world::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#14281f,#14281f00 16%,#14281f00 96%,#14281f),linear-gradient(0deg,#14281f,#14281f00 13%,#14281f00 95%,#14281f);pointer-events:none}
#doopi-hero-canvas{display:block;position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1.4s;pointer-events:auto;touch-action:pan-y}
.render-ready #doopi-hero-canvas{opacity:1;transition:opacity .25s}
.cinema-orbit{position:absolute;left:15%;right:10%;height:12%;bottom:12%;border:1px solid #d3d9bd0a;border-radius:50%;transform:rotate(-9deg);opacity:.2;filter:blur(.2px)}
.cinema-orbit span{position:absolute;inset:18%;border:1px solid #d3d9bd11;border-radius:50%}
.cinema-orbit i{position:absolute;inset:-20%;background:radial-gradient(ellipse,#080f0cca,transparent 64%);z-index:-1}
.cinema-grain{pointer-events:none;position:absolute;inset:0;z-index:2;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' opacity='.6' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}
.cinema-topline{position:absolute;left:4.2vw;right:4.2vw;top:30px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.19em;color:#c5ccb68a;z-index:3}
.cinematic-hero .cinema-copy{position:relative;z-index:3;padding:0;margin-left:4.2vw;width:min(46%,650px);top:calc(50% - 65px);transform:translateY(-50%)}
.cinematic-hero .eyebrow{font-size:11px;letter-spacing:.11em;color:#c4ccb7;margin:0 0 27px;gap:13px}
.cinematic-hero .status-dot{background:#d2d5b8;width:4px;height:4px}
.cinematic-hero .status-dot::after{border-color:#c8d0b477;inset:-4px}
.cinematic-hero h1{font-size:clamp(48px,4.4vw,76px);line-height:1.52;letter-spacing:-.065em;font-weight:400;white-space:normal;text-shadow:0 3px 28px #13271a4a}
.cinematic-hero h1>span{display:block;white-space:nowrap}
.cinematic-hero h1 em{color:#d1d8b3}
.cinematic-hero .hero-description{font-size:15px;line-height:1.95;color:#c2cbbb;margin-top:25px}
.cinematic-hero .hero-cta{gap:24px;margin-top:35px;flex-wrap:wrap}
.cinematic-hero .hero-cta .solid{border-color:var(--cinema-ivory);background:var(--cinema-ivory);color:#233c2f;min-height:54px;padding:14px 22px;font-size:13px}
.cinematic-hero .hero-cta .solid:hover{background:#dce2c8;border-color:#dce2c8}
.cinematic-hero .hero-cta .text-link{font-size:12px;color:#edf0dc;border-color:#c3ceb267;padding-bottom:6px;gap:17px}
.cinematic-hero .hero-evidence{gap:13px;margin-top:41px;padding-top:21px;border-top:1px solid var(--cinema-line);width:318px;max-width:100%}
.cinematic-hero .hero-evidence-pair img{width:34px;height:52px;object-fit:contain;background:#243b2d;opacity:.9}
.cinematic-hero .hero-evidence small{color:#c4ccb4;font-size:8px;letter-spacing:.17em}
.cinematic-hero .hero-evidence strong{color:#edf0df;font-size:13px;letter-spacing:-.01em}
.cinematic-hero .hero-evidence>span>span{color:#b7c4ae;font-size:10px}
.cinematic-hero .hero-evidence b{font-size:15px;font-weight:400;margin-left:14px}
.cinema-poetry{position:absolute;right:6%;bottom:137px;z-index:3;display:flex;align-items:center;gap:20px;pointer-events:none}
.cinema-chapter-no{font:italic 54px/1.1 var(--serif);color:#e2e7ca70;letter-spacing:-.04em}
.cinema-chapter-en{font-size:8px;letter-spacing:.21em;color:#bec8ad}
.cinema-chapter-copy{font:400 19px/1.8 var(--serif);letter-spacing:-.045em;color:#dce2cb;margin-top:5px}
.cinema-controls{position:absolute;bottom:0;left:4.2vw;right:4.2vw;z-index:4;border-top:1px solid var(--cinema-line);display:grid;grid-template-columns:36% 64%;align-items:center}
.cinema-scroll{display:flex;align-items:center;gap:13px;font-size:10px;letter-spacing:.04em;color:#bdc8b1;max-width:265px;min-height:83px}
.cinema-scroll>span:last-child{margin-left:auto;color:#e9efdc;font-size:17px}
.cinema-scroll-line{width:27px;height:1px;background:#bbc8a8;position:relative;overflow:hidden}
.cinema-scroll-line::after{content:"";position:absolute;inset:0;background:#f3f6e1;transform:translateX(-100%);animation:cinema-scroll 3.5s ease infinite}
.cinematic-hero .scene-selector{display:grid;grid-template-columns:repeat(3,1fr);grid-column:auto;border:none;margin:0;gap:0;width:100%}
.cinematic-hero .scene{display:grid;grid-template-columns:24px 1fr;gap:7px 8px;padding:19px 25px 20px;min-height:90px;background:transparent;border:0;color:#a2b098;transition:color .4s,background .4s}
.cinematic-hero .scene:first-child{padding-left:25px}
.cinematic-hero .scene+.scene{border-left:1px solid var(--cinema-line)}
.cinematic-hero .scene:hover,.cinematic-hero .scene.active{color:#f1f2df;background:#c6d2b307}
.cinematic-hero .scene-number{font-size:9px;color:inherit;padding-top:2px;opacity:.75}
.cinematic-hero .scene-title{font-size:12px;line-height:1.55}
.cinematic-hero .scene-title small{display:block;font-size:7px;letter-spacing:.16em;margin-top:2px;opacity:.62}
.cinematic-hero .scene-track{height:1px;background:#a1b59038;margin:3px 0 0;grid-column:1/-1}
.cinematic-hero .scene-track i{background:#e3eacb}
.cinematic-hero a:focus-visible,.cinematic-hero button:focus-visible,.doopi-header:not(.hero-away) a:focus-visible,.doopi-header:not(.hero-away) button:focus-visible{outline-color:#e1e6ca;outline-offset:4px}
@keyframes cinema-scroll{50%,100%{transform:translateX(100%)}}
@media(min-width:1800px){.cinematic-hero .cinema-copy{margin-left:max(4.2vw,calc((100vw - 1660px)/2))}.cinema-world{right:3%}}
@media(max-width:1200px){.cinematic-hero.doopi-hero{min-height:710px}.cinematic-hero h1{font-size:clamp(42px,4.6vw,62px)}.cinematic-hero .hero-cta{gap:17px}.cinematic-hero .hero-description{font-size:14px}.cinematic-hero .scene{padding-inline:18px}.cinema-poetry{right:4.2%;bottom:132px}.cinema-chapter-copy{font-size:17px}.cinema-controls{grid-template-columns:33% 67%}.cinematic-hero .hero-evidence{margin-top:31px}}
@media(max-width:900px) and (min-width:761px){.cinematic-hero .cinema-copy{width:52%}.cinema-world{left:35%;right:-15%;bottom:95px}.cinema-poetry{bottom:145px;gap:13px}.cinema-chapter-copy{font-size:15px}.cinema-chapter-no{font-size:43px}.cinematic-hero .hero-description{font-size:13px}.cinematic-hero .hero-cta .solid{font-size:12px;padding:13px 17px}.cinematic-hero .hero-cta .text-link{font-size:11px}.cinematic-hero .hero-evidence{width:290px}.cinema-topline{font-size:8px}.cinematic-hero .scene{padding-inline:12px}}
@media(max-width:760px){
  .cinematic-hero.doopi-hero{height:calc(100svh - 97px - 66px);min-height:560px;max-height:920px}
  .cinema-topline{top:17px;left:6vw;right:6vw;font-size:7px;letter-spacing:.13em}.cinema-topline>span:last-child{display:none}
  .cinematic-hero .cinema-copy{top:0;transform:none;width:auto;height:100%;margin:0 6vw;padding:53px 0 0}
  .cinematic-hero .eyebrow{font-size:9px;margin-bottom:15px;letter-spacing:.09em}
  .cinematic-hero h1{font-size:clamp(30px,8.7vw,55px);line-height:1.48;letter-spacing:-.06em}
  .cinematic-hero .hero-description{font-size:12px;line-height:1.85;margin-top:14px;color:#c3ccb6}
  .cinematic-hero .hero-cta{position:absolute;left:0;top:auto;bottom:109px;gap:20px;flex-wrap:nowrap;margin:0;width:100%;justify-content:space-between}
  .cinematic-hero .hero-cta .solid{font-size:12px;min-height:48px;padding:12px 14px;gap:17px}
  .cinematic-hero .hero-cta .text-link{font-size:11px;gap:7px}
  .cinematic-hero .hero-evidence{position:absolute;top:auto;bottom:68px;left:0;padding:0;margin:0;width:auto;border:0;gap:11px}
  .cinematic-hero .hero-evidence-pair img{width:22px;height:34px}
  .cinematic-hero .hero-evidence>span:last-child{gap:0}.cinematic-hero .hero-evidence small{font-size:6px}.cinematic-hero .hero-evidence strong{font-size:10px}.cinematic-hero .hero-evidence>span>span{display:none}
  .cinema-world{inset:190px -7% 172px;z-index:0}
  .cinema-orbit{bottom:14%;left:21%;right:17%;opacity:.35}
  .cinema-atmosphere{background:linear-gradient(#14281f 0%,#14281f4d 42%,#14281f 88%)}
  .cinematic-hero.render-ready .cinema-atmosphere{background:radial-gradient(ellipse at 55% 53%,#5b715447,transparent 58%),linear-gradient(#14281f 0%,#14281f00 44%,#14281f 92%)}
  .cinema-poster img{object-position:center 55%}.cinema-poster{opacity:.75}
  .cinema-poetry{left:6vw;right:auto;bottom:183px;gap:9px}.cinema-chapter-no{font-size:25px}.cinema-chapter-en{font-size:6px;letter-spacing:.17em}.cinema-chapter-copy{font-size:12px;line-height:1.5;margin:1px 0 0}
  .cinema-controls{left:6vw;right:6vw;display:block}.cinema-scroll{display:none}
  .cinematic-hero .scene{min-height:63px;padding:12px 10px 10px;grid-template-columns:14px 1fr;gap:4px}.cinematic-hero .scene:first-child{padding-left:4px}.cinematic-hero .scene-number{font-size:7px}.cinematic-hero .scene-title{font-size:11px}.cinematic-hero .scene-title small{font-size:6px;letter-spacing:.12em;margin:1px 0 2px}.cinematic-hero .scene-track{margin-top:3px}
}
@media(max-width:359px){.cinematic-hero .hero-cta{gap:10px}.cinematic-hero .hero-cta .solid{font-size:11px;padding:12px 11px;gap:9px}.cinematic-hero .hero-cta .text-link{font-size:10px}.cinematic-hero h1{font-size:29px}.cinematic-hero .hero-description{font-size:11px}}
@media(min-width:761px) and (max-height:850px){.cinematic-hero.doopi-hero{min-height:620px}.cinematic-hero .cinema-copy{top:calc(50% - 43px)}.cinematic-hero h1{font-size:clamp(43px,4vw,65px)}.cinematic-hero .eyebrow{margin-bottom:19px}.cinematic-hero .hero-description{margin-top:17px}.cinematic-hero .hero-cta{margin-top:25px}.cinematic-hero .hero-evidence{margin-top:27px;padding-top:15px}.cinema-poetry{bottom:114px}.cinema-chapter-copy{font-size:16px}}
@media(prefers-reduced-motion:reduce){.cinema-scroll-line::after{animation:none}.cinematic-hero *{transition:none!important}.cinema-grain{display:none}}
