@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=DM+Sans:wght@400;500;600&display=swap');
/* Shared MANOHRA design system based on the user-selected layout A. */
body{--body-size:clamp(17px,1.3vw,19px);--section-size:clamp(44px,4.1vw,60px);--sub-size:clamp(24px,2.2vw,30px);--section-space:clamp(72px,8.3vw,132px);font-family:'DM Sans','Noto Sans Thai',Arial,sans-serif;font-size:var(--body-size);line-height:1.75;color:#eeeae2}
body h2{font-family:'Cormorant Garamond','Noto Serif Thai',Georgia,serif;font-weight:500;font-size:var(--section-size);line-height:1.07;letter-spacing:-.018em}
html[lang=th] body h2{font-family:'Noto Serif Thai',serif;font-weight:500;line-height:1.45;letter-spacing:-.025em}
body .wrap{width:88%;max-width:1400px}
body header{height:84px;min-height:84px;padding:8px 4%;gap:clamp(24px,3vw,48px);flex-wrap:nowrap;border-bottom:1px solid #282723;background:#080808}
body header .wordmark{width:104px}
body nav,html[lang=th] body nav{display:flex;flex-basis:auto;order:initial;justify-content:flex-end;align-items:center;gap:clamp(20px,2.2vw,36px);padding:0}
body nav a,html[lang=th] body nav a{font-family:'DM Sans','Noto Sans Thai',sans-serif;font-size:clamp(14px,1.1vw,16px);font-weight:500;line-height:1.5;letter-spacing:.025em;padding:10px 0;white-space:nowrap;text-transform:none}
html[lang=th] body nav a{letter-spacing:0}
body .language{gap:10px;font-size:14px;font-weight:600}
body .language span{font-size:14px;color:#837e74}
body .language a{padding:8px 0}
body .language a[aria-current]{color:var(--white);border-bottom:1px solid var(--gold)}
body .menu-toggle{display:none}
.nav-production{position:relative;display:flex;align-items:center;gap:5px}
.submenu-toggle{display:flex;align-items:center;justify-content:center;width:25px;height:36px;padding:0;background:none;border:0;color:var(--white);font-size:18px}
.production-submenu{position:absolute;top:calc(100% + 12px);left:-22px;min-width:245px;background:#151514;border:1px solid #454039;padding:12px 22px;box-shadow:0 15px 35px #0006}
body nav .production-submenu a{display:block;font-size:16px;font-weight:400;padding:12px 0}
body .hero{height:calc(100svh - 84px);min-height:600px;width:100%;isolation:isolate;background:#070707}
body .hero-image{inset:0;display:block}
body .hero-image img{width:100%;height:100%;object-fit:cover;object-position:50% 0;animation:breathe 18s ease-in-out infinite alternate}
body .hero-image:after{background:linear-gradient(0deg,rgba(0,0,0,.68),transparent 68%),linear-gradient(90deg,rgba(0,0,0,.42),transparent 65%)}
body .hero-copy{left:6%;right:auto;bottom:12%;width:min(38%,510px);padding:0;text-align:left}
body .hero h1.hero-logo,html[lang=th] body .hero h1.hero-logo{width:min(100%,430px);margin:0;font-size:0;line-height:0;padding:0}
body .hero-line{font-size:clamp(18px,1.65vw,24px);font-weight:400;line-height:1.55;letter-spacing:0;color:#f2efe8;max-width:450px;margin:25px 0 30px;text-wrap:balance}
body .hero-credit{right:4%;bottom:24px;color:#cbc6ba;font-size:13px;line-height:1.5;letter-spacing:0;max-width:40%;text-align:right}
body .hero-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
body .button{font-family:'DM Sans','Noto Sans Thai',sans-serif;font-size:14px;font-weight:500;line-height:1.6;padding:15px 22px;letter-spacing:.015em;gap:28px;background:#eeeae2;border-color:#eeeae2;color:#080808}
body .button:hover{background:#fff;border-color:#fff}
body .button.secondary{background:transparent;color:#eeeae2;border-color:#817b70}
body .button.secondary:hover{background:#eeeae2;color:#080808}
.hero-scroll{display:inline-block;margin-top:22px;color:#d2ccbf;font-size:24px;line-height:1}
body[data-hero-layout=lower] .hero-copy{left:50%;transform:translateX(-50%);bottom:8%;width:min(60%,700px);text-align:center}
body[data-hero-layout=lower] .hero h1.hero-logo,html[lang=th] body[data-hero-layout=lower] .hero h1.hero-logo{width:min(100%,340px);margin:0 auto}
body[data-hero-layout=lower] .hero-line{margin:20px auto 25px;max-width:670px;font-size:clamp(18px,1.45vw,22px)}
body[data-hero-layout=lower] .hero-actions{justify-content:center}
body[data-hero-layout=lower] .hero-scroll{margin-top:20px}
body[data-hero-layout=lower] .hero-image:after{background:linear-gradient(0deg,rgba(0,0,0,.75),transparent 68%)}
body .eyebrow{font-family:'DM Sans','Noto Sans Thai',sans-serif;font-size:13px;line-height:1.7;font-weight:500;color:#b5b0a6;letter-spacing:.13em;margin-bottom:28px}
html[lang=th] body .eyebrow{font-size:14px;letter-spacing:.04em}
body .intro{padding-top:var(--section-space);padding-bottom:var(--section-space)}
body .split{gap:9%;grid-template-columns:1.1fr 1fr}
body .split h2{font-size:var(--section-size)}
body .lead{font-family:'DM Sans','Noto Sans Thai',sans-serif;font-size:clamp(19px,1.75vw,25px);font-weight:400;line-height:1.75;color:#d4cfc4}
body .creator-inline{font-size:16px;line-height:1.8;padding:8px 0 16px;color:#aba69d}
body .featured{grid-template-columns:1.45fr 1fr;gap:7%;align-items:center;padding-bottom:var(--section-space)}
body .feature-copy p:not(.eyebrow){font-size:var(--body-size);line-height:1.8;color:#bdb8ae;margin-top:28px}
body figcaption{font-size:13px;line-height:1.7;padding-top:14px;color:#b5b0a6}
body figcaption span{font-size:13px;color:#9d988f;margin-top:3px}
body .wide-photo{margin-bottom:var(--section-space);background:#080808}
body .wide-photo img{width:100%;max-height:none;height:clamp(570px,52vw,850px);object-fit:cover;object-position:50% 20%}
body .wide-photo>div{left:6%;bottom:7%;padding:28px 30px 28px 0;background:linear-gradient(90deg,#0009,transparent);max-width:650px}
body .wide-photo h2{font-size:clamp(48px,4.9vw,72px);margin-bottom:28px}
body .home-archive{padding-bottom:var(--section-space)}
body .section-top{align-items:end;gap:40px;margin-bottom:48px}
body .section-top h2{max-width:720px}
body .text-link{font-size:15px;line-height:1.6;white-space:nowrap;border-bottom:1px solid #8c7c57;padding-bottom:7px}
body .photo-pair{grid-template-columns:1.15fr 1fr;gap:5%}
body .photo-pair figure:nth-child(2){margin-top:100px}
body .record{padding:60px 0 var(--section-space)}
body .record h2{font-size:var(--section-size)}
body .record p:not(.eyebrow){font-size:var(--body-size);line-height:1.85;color:#c9c3b7}
body .archive-download{padding:58px 0;gap:45px;margin-bottom:65px;align-items:center;flex-direction:row}
body .archive-download h2{font-size:var(--section-size);margin-bottom:25px}
body .archive-download p{font-size:var(--body-size);line-height:1.8;color:#bdb8ae;max-width:660px}
body .archive-download .eyebrow{font-size:13px;color:#b5b0a6;margin-bottom:20px}
body footer{padding:60px 0 30px}
body .footer-top{gap:12%;padding-bottom:50px}
body .footer-top p{font-size:16px;line-height:1.8;color:#bdb8ae;margin-top:25px}
body .footer-bottom{font-size:13px;line-height:1.7;letter-spacing:0;color:#b5b0a6}
body footer .wordmark{width:190px}
@media(max-width:1240px){
 body header,html[lang=th] body header{height:80px;min-height:80px;flex-wrap:nowrap;padding:8px 6%;gap:24px}
 body header .wordmark{width:96px}
 body .menu-toggle{display:flex;align-items:center;gap:12px;margin-left:auto;font-family:'DM Sans','Noto Sans Thai',sans-serif;font-size:16px;color:#eeeae2;padding:10px 0;background:none;border:0}
 .hamburger{display:flex;flex-direction:column;gap:6px;width:22px}
 .hamburger i{width:22px;height:1px;background:currentColor;display:block}
 body nav,html[lang=th] body nav{display:none;position:absolute;left:0;right:0;top:80px;flex-direction:column;align-items:stretch;gap:0;background:#101010;border-bottom:1px solid #49443b;padding:20px 6%;max-height:calc(100dvh - 80px);overflow:auto}
 body header.menu-open nav{display:flex}
 body nav a,html[lang=th] body nav a{font-size:18px;padding:12px 0}
 .nav-production{flex-wrap:wrap;gap:12px}
 .submenu-toggle{height:40px;width:35px}
 .production-submenu{position:static;flex-basis:100%;min-width:0;width:100%;background:#1b1a18;box-shadow:none;padding:8px 18px;margin:0 0 10px}
 body nav .production-submenu a{font-size:17px}
 body .hero,html[lang=th] body .hero{height:calc(100svh - 80px)}
 body .hero-copy{width:min(46%,470px)}
 body .archive-download{flex-direction:column;align-items:start;gap:28px}
}
@media(max-width:900px){
 body .hero-copy{width:48%;bottom:12%}
 body .hero h1.hero-logo,html[lang=th] body .hero h1.hero-logo{width:min(100%,350px)}
 body .hero-image img{object-position:50% 0}
 body .hero-line{font-size:19px;max-width:370px}
 body .featured{gap:6%;grid-template-columns:1fr 1fr}
 body .feature-copy h2{font-size:40px}
 body .section-top{flex-direction:column;align-items:start;gap:25px}
 body .footer-bottom{flex-wrap:wrap;gap:15px}
}
@media(max-width:650px){
 body{--body-size:clamp(16px,4.25vw,17px);--section-size:clamp(30px,8.6vw,38px);--sub-size:clamp(20px,5.5vw,24px);--section-space:64px}
 body header{gap:22px}
 body .language{gap:9px;font-size:14px}
 body .hero,html[lang=th] body .hero{min-height:610px}
 body .hero-image{inset:0}
 body .hero-image img{object-position:50% 0}
 body .hero-image:after{background:linear-gradient(0deg,#000c,transparent 72%)}
 body .hero-copy{width:84%;left:8%;bottom:11%;text-align:left;padding:0}
 body .hero h1.hero-logo,html[lang=th] body .hero h1.hero-logo{width:min(76%,280px);margin:0}
 body .hero-line{font-size:18px;line-height:1.65;max-width:330px;margin:22px 0 25px;text-wrap:pretty}
 body .hero-credit{font-size:13px;right:8%;left:8%;bottom:17px;max-width:none;text-align:left}
 body .hero-scroll{position:absolute;right:0;bottom:8px;margin:0;font-size:25px}
 body[data-hero-layout=lower] .hero-copy{width:84%;bottom:11%;left:50%;text-align:center}
 body[data-hero-layout=lower] .hero h1.hero-logo,html[lang=th] body[data-hero-layout=lower] .hero h1.hero-logo{width:min(74%,240px);margin:auto}
 body[data-hero-layout=lower] .hero-line{font-size:18px;max-width:330px;margin:20px auto 25px}
 body[data-hero-layout=lower] .hero-scroll{display:none}
 body .button{font-size:14px;padding:14px 19px;gap:25px}
 body .eyebrow,html[lang=th] body .eyebrow{font-size:13px;letter-spacing:.07em;margin-bottom:23px}
 body .split{grid-template-columns:1fr;gap:30px}
 body .lead{font-size:18px;line-height:1.85}
 body .creator-inline{font-size:15px}
 body .featured{grid-template-columns:1fr;gap:34px}
 body .feature-copy h2{font-size:var(--section-size)}
 body .feature-copy p:not(.eyebrow){font-size:var(--body-size);margin-top:24px}
 body .wide-photo img{height:auto;object-fit:contain}
 body .wide-photo>div{position:static;max-width:none;padding:36px 6% 0;background:none}
 body .wide-photo h2{font-size:var(--section-size);margin-bottom:28px}
 body .section-top{gap:26px;margin-bottom:35px}
 body .photo-pair{grid-template-columns:1fr;gap:35px}
 body .photo-pair figure:nth-child(2){margin-top:0}
 body .record{padding-top:40px}
 body .archive-download{padding:40px 0;gap:28px;flex-direction:column;align-items:start}
 body .archive-download h2{font-size:var(--section-size)}
 body .footer-top{grid-template-columns:1fr;gap:15px;padding-bottom:35px}
 body .footer-top p{font-size:16px}
 body .footer-bottom{font-size:13px;gap:16px}
}
@media(max-height:700px) and (min-width:651px){body .hero-copy{bottom:10%}body .hero h1.hero-logo,html[lang=th] body .hero h1.hero-logo{width:min(100%,330px)}body .hero-line{font-size:19px;margin:16px 0 20px}body[data-hero-layout=lower] .hero h1.hero-logo,html[lang=th] body[data-hero-layout=lower] .hero h1.hero-logo{width:260px}}
/* The second proposal forms a low editorial band, opening the central puppet composition. */
@media(min-width:901px){
 body[data-hero-layout=lower] .hero-copy{left:6%;right:6%;bottom:7%;width:auto;max-width:1250px;transform:none;display:grid;grid-template-columns:280px minmax(0,1fr);column-gap:54px;text-align:left;align-items:end}
 body[data-hero-layout=lower] .hero h1.hero-logo,html[lang=th] body[data-hero-layout=lower] .hero h1.hero-logo{grid-column:1;grid-row:1/3;width:280px;margin:0}
 body[data-hero-layout=lower] .hero-line{grid-column:2;margin:0 0 22px;max-width:560px;font-size:clamp(19px,1.45vw,23px);line-height:1.55}
 body[data-hero-layout=lower] .hero-actions{grid-column:2;justify-content:flex-start}
 body[data-hero-layout=lower] .hero-scroll{display:none}
}
body .trailer-dialog{padding:clamp(18px,4vw,55px);background:#080808;color:#eeeae2;max-width:none;max-height:none;width:100vw;height:100dvh;margin:0;border:0}
body .trailer-dialog[open]{display:flex;flex-direction:column;justify-content:center;gap:20px}
.trailer-bar{display:flex;justify-content:space-between;align-items:center;gap:25px;width:100%;max-width:1280px;margin:0 auto}
body .trailer-bar h2{font-family:'DM Sans','Noto Sans Thai',sans-serif;font-size:clamp(18px,1.7vw,24px);font-weight:400;line-height:1.5;letter-spacing:0}
.trailer-bar button{border:1px solid #7c766a;background:none;color:#eeeae2;padding:10px 18px;min-height:44px;font-size:15px;flex-shrink:0}
.trailer-player{width:min(100%,1280px);aspect-ratio:16/9;max-height:calc(100dvh - 190px);margin:0 auto;background:#111}
.trailer-player iframe{width:100%;height:100%;border:0;display:block}
.trailer-fallback{font-size:15px;text-align:center;color:#cfc6b5;text-decoration:underline;text-underline-offset:5px}
@media(max-width:650px){.trailer-bar{align-items:start;gap:15px}body .trailer-bar h2{font-size:18px}.trailer-bar button{padding:8px 12px;font-size:14px}.trailer-player{max-height:none}}
body .hero-actions .button.secondary{background:rgba(8,8,8,.65);border-color:#c9c2b5;color:#eeeae2}
body .hero-actions .button.secondary:hover{background:#eeeae2;color:#080808}
body .trailer-player{width:min(100%,1280px,calc((100dvh - 190px)*1.7778))}
/* Editorial pages use the same readable hierarchy without repeating the Home hero. */
body h1{font-family:'Cormorant Garamond','Noto Serif Thai',Georgia,serif;font-weight:500;line-height:1.08;letter-spacing:-.018em}
html[lang=th] body h1{font-family:'Noto Serif Thai',serif;font-weight:500;line-height:1.4;letter-spacing:-.025em}
body .page-heading{padding:clamp(60px,6.5vw,105px) 0 55px}
body .page-heading h1{font-size:clamp(52px,5.6vw,84px);margin-bottom:32px;max-width:1100px}
body .page-heading .lead{font-size:clamp(19px,1.7vw,24px);max-width:860px;line-height:1.8}
body .page-photo{margin-bottom:65px}
body .page-photo img{max-height:850px;object-fit:contain;background:#050505}
body .editorial{max-width:1100px;margin:0 auto 85px}
body .editorial article{padding:44px 0;grid-template-columns:60px 1fr;gap:34px}
body .editorial h2{font-size:clamp(32px,3vw,44px);margin-bottom:24px}
body .editorial p{font-family:'DM Sans','Noto Sans Thai',sans-serif;font-size:var(--body-size);line-height:1.85;color:#c7c1b5}
body .index{font-size:14px}
body blockquote{max-width:1100px;padding:36px 55px;margin:0 auto 90px}
body blockquote p{font-family:'Cormorant Garamond','Noto Serif Thai',serif;font-weight:500;font-size:clamp(34px,3.7vw,54px);line-height:1.35}
html[lang=th] body blockquote p{font-family:'Noto Serif Thai',serif;line-height:1.7}
body cite{font-size:14px;line-height:1.8}
body .story-parts{max-width:940px}
body .story-parts article{padding:45px 0}
body .story-parts h2{font-size:clamp(36px,3.6vw,52px);margin-bottom:27px}
body .story-parts p:not(.eyebrow){font-size:var(--body-size);line-height:1.95;color:#c7c1b5}
body .muted{font-size:14px;line-height:1.8;color:#b5b0a6}
body .story-parts+.muted{max-width:940px}
.production-credits{display:flex;align-items:center;justify-content:space-between;gap:40px;border-top:1px solid var(--line);padding:48px 0 58px}
.production-credits h2{font-size:clamp(36px,3.7vw,52px)}
.production-credits .eyebrow{margin-bottom:18px}
body .media-section{padding:55px 0 70px;gap:8%;align-items:center}
body .media-section p{font-size:var(--body-size);line-height:1.85;color:#c7c1b5}
body .media-section .eyebrow{font-size:13px;color:#b5b0a6}
body [data-media-region]{margin-bottom:90px}
body .filters{gap:12px;margin-bottom:35px}
body .filters button{font-size:15px;line-height:1.6;padding:11px 22px;border-color:#777064;color:#d7d0c3}
body .filters button[aria-pressed=true]{background:#eeeae2;border-color:#eeeae2;color:#080808}
body .gallery-grid{gap:38px 28px}
body .gallery-grid figcaption{font-size:14px;padding-top:14px;color:#c7c1b5}
body .gallery-open{overflow:visible}
body .gallery-open .zoom{font-size:22px;padding:4px 13px}
body .lightbox-bar{font-size:15px;line-height:1.7}
body .lightbox-bar button{font-size:15px;padding:10px 18px;min-height:44px}
body .lightbox-stage button{font-size:30px;min-height:44px;min-width:44px}
body .lightbox-bottom{font-size:14px;line-height:1.7}
body .lightbox-bottom a{font-size:14px}
body .events article{grid-template-columns:1fr 2fr;padding:55px 0;gap:8%}
body .events h2{font-size:clamp(38px,3.7vw,54px);margin-bottom:25px}
body .events h3{font-size:clamp(24px,2.2vw,30px);line-height:1.6;margin-bottom:12px}
body .events p:not(.eyebrow){font-size:var(--body-size);line-height:1.8;color:#c7c1b5}
body .callout{padding:55px 0 90px}
body .callout p{font-size:var(--body-size);line-height:1.8;color:#c7c1b5;margin:25px 0;max-width:860px}
body .creator-credit{padding:20px 0 45px;margin-bottom:40px}
body .creator-credit h2{font-size:clamp(42px,4.5vw,66px);margin-bottom:22px;overflow-wrap:anywhere}
body .creator-credit p:last-child{font-size:19px;color:#d8c6a4}
body .credit-section{padding:30px 0 55px}
body .credit-section h2{font-size:clamp(34px,3.4vw,48px);margin-bottom:28px}
body .credits-list>div{grid-template-columns:1fr 1fr;padding:20px 0;gap:7%}
body .credits-list dt{font-family:'Noto Sans Thai','DM Sans',sans-serif;font-size:17px;line-height:1.85}
body .credits-list dd{font-size:16px;line-height:1.85;color:#c0b9ad}
body .ensembles p{font-size:clamp(22px,2.1vw,28px);line-height:2}
body details{padding:25px 0}
body summary{font-size:clamp(20px,1.8vw,25px);line-height:1.7;color:#d8c6a4}
body .supporters{font-size:17px;line-height:1.85;color:#c7c1b5}
body .contact-grid{gap:8%;padding-bottom:90px}
body .contact-grid h2{font-size:clamp(27px,2.8vw,38px);line-height:1.5;margin-bottom:25px}
body .contact-grid p{font-size:var(--body-size);line-height:1.9;color:#c7c1b5}
body label{font-size:16px;line-height:1.8;color:#d4cbbb}
body input,body select,body textarea{font-family:'DM Sans','Noto Sans Thai',sans-serif;font-size:17px;line-height:1.7;padding:13px 15px}
body .form-note{font-size:14px!important;line-height:1.9}
body #enquiry-result{margin-top:35px}
body .draft-actions{gap:14px}
@media(max-width:1000px){body .gallery-grid{grid-template-columns:1fr 1fr}body .events article{grid-template-columns:1fr 2fr}}
@media(max-width:650px){
 body .page-heading{padding:48px 0 28px}
 body .page-heading h1,html[lang=th] body .page-heading h1{font-size:clamp(40px,10.6vw,50px);line-height:1.25;margin-bottom:24px}
 html[lang=th] body .page-heading h1{line-height:1.5;font-size:clamp(36px,9.6vw,43px)}
 body .page-heading .lead{font-size:18px;line-height:1.9}
 body .page-photo{margin-bottom:38px}
 body .editorial{margin-bottom:48px}
 body .editorial article{padding:30px 0;grid-template-columns:26px 1fr;gap:17px}
 body .editorial h2{font-size:clamp(28px,7.6vw,34px);line-height:1.3;margin-bottom:21px}
 html[lang=th] body .editorial h2{line-height:1.6}
 body .editorial p{font-size:var(--body-size);line-height:1.95}
 body blockquote{padding:20px 25px;margin-bottom:60px}
 body blockquote p{font-size:32px;line-height:1.45}
 body .story-parts article{padding:32px 0}
 body .story-parts h2{font-size:clamp(30px,8.5vw,38px)}
 body .story-parts p:not(.eyebrow){font-size:17px}
 .production-credits{flex-direction:column;align-items:start;gap:25px;padding:35px 0 40px}
 .production-credits h2{font-size:34px}
 body .media-section{grid-template-columns:1fr;gap:32px;padding:35px 0 40px}
 body [data-media-region]{margin-bottom:65px}
 body .filters{gap:8px}
 body .filters button{font-size:14px;padding:10px 15px}
 body .gallery-grid{grid-template-columns:1fr;gap:30px}
 body .gallery-grid figcaption{font-size:14px}
 body .lightbox-bar{gap:10px;font-size:14px}
 body .lightbox-bar button{font-size:14px;padding:8px 10px}
 body .lightbox-stage img{width:100%}
 body .lightbox-stage button{font-size:27px;padding:8px}
 body .lightbox-bottom{font-size:13px}
 body .lightbox-bottom a{font-size:14px}
 body .events article{grid-template-columns:1fr;gap:17px;padding:36px 0}
 body .events h2{font-size:34px;line-height:1.25}
 html[lang=th] body .events h2{line-height:1.6}
 body .events h3{font-size:22px;line-height:1.65}
 body .callout{padding:36px 0 65px}
 body .creator-credit h2{font-size:clamp(34px,9.5vw,42px)}
 body .creator-credit p:last-child{font-size:17px}
 body .credit-section h2{font-size:32px}
 body .credits-list>div{grid-template-columns:1fr;gap:7px}
 body .credits-list dt{font-size:17px}
 body .credits-list dd{font-size:16px}
 body .supporters{columns:1;font-size:16px}
 body .contact-grid{grid-template-columns:1fr;gap:45px;padding-bottom:65px}
 body .contact-grid h2{font-size:28px}
 body .contact-grid p{font-size:17px}
 body .draft-actions .button{font-size:14px}
}
.submenu-toggle{min-width:44px;min-height:44px}
body .filters button,body summary{min-height:44px}
body .lightbox-stage img{flex:1;min-width:0;width:0;object-fit:contain}
body .lightbox-stage button{flex:0 0 48px}
@media(max-width:650px){body .lightbox-stage img{width:100%}}
/* Lead with the supplied image, preserving its complete composition. */
body .opening-visual{position:relative;background:#030303;margin:0}
body .opening-visual img{height:clamp(300px,58svh,650px);width:100%;object-fit:contain}
body .opening-visual figcaption{position:absolute;right:4%;bottom:10px;padding:4px 8px;background:#080808c9;font-size:12px}
body .page-opening .page-heading{padding:42px 0 30px}
body .page-opening .page-heading h1{font-size:clamp(42px,4.5vw,66px);max-width:1200px;margin-bottom:22px}
body .page-opening .page-heading .eyebrow{margin-bottom:18px}
body .page-opening .page-heading .lead{max-width:1050px;font-size:clamp(18px,1.5vw,22px)}
body .opening-actions{margin-bottom:60px}
body .creator-opening{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:8%;align-items:center;padding:55px 0 80px}
body .creator-opening figure img{max-height:660px;object-fit:contain}
body .creator-opening h1{font-size:clamp(45px,4.9vw,74px);margin-bottom:25px;overflow-wrap:anywhere}
body .creator-opening p:not(.eyebrow){color:#c7c1b5}
body .creator-opening .lead{color:#d8c6a4;font-size:20px}
body .creator-opening figure{max-width:481px}
body .credits-list dt{font-family:'DM Sans','Noto Sans Thai',sans-serif}
body .trailer-bar{max-width:1600px}
body .trailer-player{width:min(100%,1600px,calc((100dvh - 165px)*1.7778));max-height:calc(100dvh - 165px)}
@media(max-width:650px){
 body .opening-visual img{height:clamp(230px,40svh,380px)}
 body .opening-visual figcaption{left:6%;right:auto;font-size:10px;max-width:88%}
 body .page-opening .page-heading{padding:30px 0 20px}
 body .page-opening .page-heading h1{font-size:clamp(36px,9.7vw,45px)}
 html[lang=th] body .page-opening .page-heading h1{line-height:1.5}
 body .page-opening .page-heading .lead{font-size:17px}
 body .opening-actions{margin-bottom:40px}
 body .creator-opening{grid-template-columns:1fr;gap:35px;padding:25px 0 60px}
 body .creator-opening figure{width:80%;max-width:330px;margin:auto}
 body .creator-opening figure img{max-height:430px}
 body .creator-opening h1{font-size:clamp(40px,10.5vw,55px)}
 body .creator-opening .lead{font-size:18px}
}
body .opening-visual .opening-actions{position:absolute;left:6%;bottom:42px;max-width:88%;margin:0}
body .opening-visual .button{box-shadow:0 3px 18px #0006}
body .opening-visual .button.secondary{background:#080808d9}
@media(max-width:650px){body .opening-visual .opening-actions{bottom:35px;gap:9px}body .opening-visual .button{font-size:13px;padding:10px 13px;gap:15px}}
