/* Quiet cinema, clear interaction. Shared interface layer, October 2026. */
:root{--sans:"trajan-pro-3","WS Fangzheng Yaoti",serif;--ui-font:"trajan-pro-3","WS Fangzheng Yaoti",serif}
body{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:17px;line-height:1.75}
h1,h2,h3,.nav-brand{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif}
body p:not(.eyebrow):not(.footer-brand):not(.footer-location):not(.brand-pre):not(.profession),body .lead,body .ws-lead{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:17px;line-height:1.75;letter-spacing:0;text-transform:none}
body .eyebrow{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:12px;letter-spacing:.16em;line-height:1.6}
body .text-link,body .outline-button,body .ws-primary{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:14px;line-height:1.5;letter-spacing:.035em;text-transform:none;min-height:48px}
.ws-primary{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:14px 24px;background:var(--ink);color:var(--paper);border:1px solid var(--ink)}
.site-header .desktop-nav{gap:26px;font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:14px;letter-spacing:0;text-transform:none}
.site-header .desktop-nav>a,.site-header .desktop-nav summary{display:flex;align-items:center;min-height:48px;padding:10px 2px;font-size:14px;line-height:1.4}
.site-header .desktop-nav .nav-contact{padding:10px 2px;background:transparent;color:inherit;font-family:inherit;font-size:14px;font-weight:400;letter-spacing:inherit}
.ws-films-menu{position:relative}.ws-films-menu summary{cursor:pointer;list-style:none;gap:10px}.ws-films-menu summary::-webkit-details-marker{display:none}
.ws-films-submenu{position:absolute;top:100%;left:-20px;width:285px;background:var(--paper);color:var(--ink);padding:12px;border:1px solid #ccc6bb;box-shadow:0 12px 25px #25221e12}
.ws-films-submenu a{display:flex;flex-direction:column;justify-content:center;min-height:48px;padding:10px 12px;line-height:1.5;font-size:15px}
.ws-films-submenu a:hover,.ws-films-submenu a:focus-visible{background:var(--stone)}.ws-nav-description{display:block;font-size:12px;color:#625d55;letter-spacing:0;margin-top:3px}
.ws-films-menu summary:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.menu-dialog nav{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif}.menu-dialog nav>a{min-height:44px;display:flex;align-items:center}
.menu-dialog .ws-films-menu summary{min-height:44px;display:flex;align-items:center;justify-content:space-between}
.menu-dialog .ws-films-submenu{position:static;background:transparent;color:inherit;border:0;border-left:1px solid #ffffff65;box-shadow:none;width:auto;margin:12px 0;padding:0 0 0 14px}
.menu-dialog .ws-films-submenu a{font-size:18px}.menu-dialog .ws-nav-description{color:#ddd8cd;font-size:13px}.menu-dialog .ws-films-submenu a:hover{background:#ffffff15}.menu-dialog .nav-contact{justify-content:center;color:var(--ink);margin-top:6px}
.menu-close{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:14px}.menu-bottom{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:13px;letter-spacing:.03em}
body .hero .brand-pre,body .hero .profession,body .hero .hero-top{display:none}
body .hero .hero-bottom{bottom:7%;z-index:3}
body .hero .hero-bottom p{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:20px;line-height:1.6;text-shadow:0 1px 8px #0009}
body .hero .hero-bottom .eyebrow{display:block;margin:16px 0 0}
body .hero .ws-hero-explore{margin-top:24px;background:var(--paper);border-color:var(--paper);color:var(--ink)}
body .hero .ws-hero-explore:hover{background:var(--stone)}
body .hero .scroll-cue{display:none}
body .hero:after{background:linear-gradient(180deg,#0002 0%,#0001 30%,#0008 100%)}
body .film-caption p,body .gallery-card .location{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:14px!important;line-height:1.6;letter-spacing:0}
body .gallery-card .category{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:12px;opacity:1;color:#625d55;letter-spacing:.04em}
body .categories{gap:10px;padding:20px 6vw;scroll-margin-top:86px}
body .categories a{display:flex;align-items:center;font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:14px;letter-spacing:0;min-height:44px;padding:10px 16px}
#films{scroll-margin-top:115px}
body .ws-portfolio-hero{min-height:340px;grid-template-columns:1.25fr .75fr}
body .ws-portfolio-hero .hero-copy{padding:45px 7vw}
body .ws-portfolio-hero h1{font-size:clamp(32px,3.5vw,52px);max-width:650px;margin-bottom:18px}
body .ws-portfolio-hero .lead{max-width:600px}
body .ws-portfolio-hero figure{min-height:340px;max-height:400px}
body .ws-portfolio-hero .text-link{margin-top:18px}
body .ws-content-expansion{padding:65px 7vw}
body .ws-content-expansion .ws-content-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:6vw}
body .ws-content-expansion h2{max-width:860px}
body .home-journal{padding-block:65px}
body .ws-press-quiet a{display:inline-flex;align-items:center;min-height:44px;font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:14px}
body .ws-press-quiet p{font-size:13px}
body .contact-layout{padding:65px 7vw;gap:7vw;grid-template-columns:.8fr 1.2fr;align-items:start}
.contact-layout h1{font-size:clamp(38px,4.7vw,64px);line-height:1.2;margin-bottom:24px}
body .ws-contact-help{font-size:15px!important;max-width:380px;margin:18px 0}
.ws-contact-image{margin-top:35px;aspect-ratio:16/9;max-width:440px;overflow:hidden}.ws-contact-image img{width:100%;height:100%;object-fit:cover}
body .enquiry-form{gap:18px;align-content:start}
body .enquiry-fields{gap:22px}
body .enquiry-form label{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:15px;letter-spacing:0;line-height:1.5}
body .enquiry-form input,body .enquiry-form select,body .enquiry-form textarea{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:16px;line-height:1.5;min-height:50px;padding:12px;border:1px solid #817a6d;background:#fffdf9;margin-top:8px}
body .enquiry-form textarea{min-height:150px}
body .enquiry-form .form-note{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:14px;line-height:1.6}
body .enquiry-form .field-error{font-family:"trajan-pro-3","WS Fangzheng Yaoti",serif;font-size:14px;line-height:1.5;color:#8b241c;margin-top:7px}
body .enquiry-form [aria-invalid=true]{border:2px solid #8b241c}
body .contact-layout .outline-button{margin-top:4px;min-width:180px}
.ws-phone-row{display:grid;grid-template-columns:105px 1fr;gap:10px}
.ws-phone-hint{margin-top:6px!important;font-size:13px!important;color:#625d55}
.ws-error-summary{border:2px solid #8b241c;padding:18px;color:#6f2019;background:#fffdf9}
.ws-error-summary p{font-size:16px!important;margin:0 0 10px}.ws-error-summary ul{padding-left:20px;margin:0}.ws-error-summary a{text-decoration:underline;min-height:32px;display:inline-block}
body .enquiry-form [hidden],body .ws-error-summary[hidden]{display:none}
body .enquiry-success{font-size:19px!important;color:var(--ink)}
body .enquiry-form [data-progress]:empty{display:none}
body .enquiry-form button:disabled{cursor:wait}
body a:focus-visible,body button:focus-visible,body summary:focus-visible{outline:2px solid currentColor;outline-offset:5px}
@media(min-width:901px){.site-header .menu-toggle{display:none}}
@media(max-width:1050px) and (min-width:901px){.site-header .desktop-nav{gap:16px}.site-header .nav-brand-label{font-size:13px}.site-header .desktop-nav .nav-contact{padding:12px 18px}}
@media(max-width:900px){.site-header .desktop-nav{display:none}.menu-dialog nav{font-size:26px;gap:12px;margin-top:30px}.menu-dialog{padding:25px 7vw}.menu-dialog .nav-contact{font-size:20px}.site-header .menu-toggle{display:flex}body .hero .hero-bottom{bottom:7%}body .hero .hero-bottom p{font-size:18px}}
@media(max-width:700px){body{font-size:16px}body p:not(.eyebrow):not(.footer-brand):not(.footer-location):not(.brand-pre):not(.profession),body .lead,body .ws-lead{font-size:16px}body .contact-layout{grid-template-columns:1fr;padding:38px 7vw;gap:30px}.contact-layout h1{font-size:38px;margin-bottom:14px}.contact-layout h1 br{display:none}.contact-layout h1 br:after{content:' '}.ws-contact-image{display:none}.contact-layout>div>.text-link{font-size:14px;min-height:44px}body .enquiry-fields{grid-template-columns:1fr;gap:20px}body .enquiry-form{grid-template-columns:1fr}body .enquiry-form .full{grid-column:1/-1}body .ws-portfolio-hero{display:block;min-height:0}body .ws-portfolio-hero .hero-copy{padding:35px 7vw}body .ws-portfolio-hero figure{display:none}body .ws-portfolio-hero h1{font-size:34px}body .ws-content-expansion .ws-content-columns{grid-template-columns:1fr;gap:24px}body .ws-content-expansion,body .home-journal{padding-block:48px}body .hero .hero-bottom{bottom:8%;left:7%;width:86%}body .hero .hero-bottom p{font-size:17px}.hero .ws-hero-explore{font-size:14px}body .ws-short-film-caption .ws-film-play{width:44px;height:44px;flex-basis:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
