/* Homepage film showcase, November 2026. */
.hero{height:clamp(460px,65svh,690px);min-height:460px;max-height:none}
.hero .hero-image.hero-still{width:100%;height:100%;object-fit:cover;object-position:50% 50%;transform:none;animation:none;background:none}
.hero .hero-shade{background:linear-gradient(90deg,rgba(22,22,23,.50),rgba(22,22,23,.13) 70%,rgba(22,22,23,.04))}
.hero .hero-content{margin-left:6.2%;padding:60px 0;max-width:890px;width:87.6%}
.hero h1{font-size:clamp(48px,5.6vw,84px);line-height:1.12;max-width:850px;margin-bottom:20px}
.hero .eyebrow{font-size:11px;letter-spacing:.16em;margin-bottom:18px}
.hero .hero-copy{font-size:15px;max-width:430px;margin-bottom:28px;color:#f7f0e6}
.hero-actions{display:flex;align-items:stretch;gap:16px;flex-wrap:wrap}
.hero-actions a{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:58px;padding:15px 25px;font-size:16px;line-height:1.4;letter-spacing:.01em;border-radius:5px;font-weight:500;transition:background .2s,color .2s}
.hero-film-button{background:#f3e7d0;color:#302b27;border:1px solid #f3e7d0}
.hero-film-button:hover{background:#fff8ec}
.hero-photo-button{background:rgba(20,20,20,.13);border:1px solid #f3e7d0;color:#fff8ec}
.hero-photo-button:hover{background:rgba(248,244,237,.15)}
.play-triangle{display:inline-block;width:0;height:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:12px solid currentColor;flex-shrink:0}
.hero .hero-bottom{display:none}
.motion-teaser{padding:40px 6.2% 55px!important;background:#F8F4ED!important;color:#6E5846!important;scroll-margin-top:90px}
.film-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 26px}
.film-section-heading .eyebrow{font-size:10px;letter-spacing:.18em;margin:0 0 9px;color:#806b59}
.film-section-heading h2{font:400 clamp(32px,3.6vw,52px)/1.15 'Playfair Display',Georgia,serif;letter-spacing:-.035em;margin:0;color:#594330}
.film-all-link{font-size:14px;border-bottom:1px solid currentColor;padding:8px 0;white-space:nowrap}
.motion-teaser .motion-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:none;gap:20px}
.film-card{min-width:0;display:block;color:#594330}
.film-thumbnail{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;border-radius:5px;background:#302b27}
.film-thumbnail img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .4s}
.film-card:hover .film-thumbnail img{transform:scale(1.04)}
.film-thumbnail:after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.12);pointer-events:none}
.film-play{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:64px;height:64px;border:2px solid white;border-radius:50%;color:white;background:rgba(20,20,20,.24)}
.film-play .play-triangle{margin-left:4px;border-top-width:10px;border-bottom-width:10px;border-left-width:15px}
.film-card h3{font:400 clamp(22px,2vw,30px)/1.3 'Playfair Display',Georgia,serif;margin:12px 0 0}
.hero-actions a:focus-visible,.film-card:focus-visible,.film-all-link:focus-visible{outline:3px solid #b99056;outline-offset:5px}
.film-dialog{width:min(1050px,94vw);max-width:94vw;max-height:92svh;padding:18px;background:#211f1d;border:1px solid #6e5846;border-radius:6px;color:#f8f4ed}
.film-dialog::backdrop{background:rgba(0,0,0,.83)}
.film-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}
.film-dialog h2{font:400 23px/1.3 'Playfair Display',Georgia,serif;margin:0}
.film-dialog-close{background:none;border:1px solid #aa9c8e;color:inherit;border-radius:50%;width:44px;height:44px;font-size:28px;line-height:1;cursor:pointer;flex-shrink:0}
.film-dialog video{display:block;width:100%;max-height:72svh;background:#111;object-fit:contain}
body.film-open{overflow:hidden}
@media(max-width:1000px){
 .site-header{backdrop-filter:none}
 .site-header .mobile-menu-trigger{position:static;width:42px;height:42px;margin-left:12px;flex-shrink:0;box-shadow:none}
 .site-header > .language-toggle{margin-left:auto}
 .site-header .mobile-nav-inner a{display:block!important}
}
@media(max-width:800px){
 .hero h1{max-width:620px;font-size:clamp(45px,7vw,65px)}
 .motion-teaser .motion-preview-grid{gap:14px}
 .film-play{width:50px;height:50px}
 .film-card h3{font-size:22px}
}
@media(max-width:600px){
 .hero{height:auto;min-height:500px;min-height:min(620px,calc(100svh - 66px))}
 .hero .hero-image.hero-still{object-position:66% 50%}
 .hero .hero-shade{background:linear-gradient(90deg,rgba(20,23,26,.52),rgba(20,23,26,.2)),linear-gradient(0deg,rgba(15,20,25,.35),transparent 80%)}
 .hero .hero-content{padding:48px 0;margin-left:7%;width:86%;max-width:none}
 .hero h1{font-size:clamp(40px,10.2vw,58px);max-width:440px;margin-bottom:17px}
 .hero .eyebrow{font-size:9px;letter-spacing:.1em;margin-bottom:17px}
 .hero .hero-copy{font-size:13px;line-height:1.6;max-width:340px;margin-bottom:25px}
 .hero-actions{display:grid;grid-template-columns:1fr;gap:11px;max-width:380px}
 .hero-actions a{min-height:53px;font-size:16px;padding:13px 18px}
 .motion-teaser{padding:30px 7% 40px!important}
 .film-section-heading{gap:12px;margin-bottom:22px;align-items:center}
 .film-section-heading h2{font-size:31px;max-width:240px}
 .film-section-heading .eyebrow{font-size:8px}
 .film-all-link{font-size:12px}
 .motion-teaser .motion-preview-grid{grid-template-columns:1fr;gap:27px}
 .film-play{width:60px;height:60px}
 .film-card h3{font-size:25px;margin-top:10px}
 .film-dialog{padding:12px}
}
@media(prefers-reduced-motion:reduce){.film-thumbnail img{transition:none}}
