/* Final responsive and accessibility layer. Keep after premium.css. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scrollbar-gutter:stable}
main,section,.container,.section-heading>*,.footer-columns>*,.contact-path,.film-notes>div{min-width:0}
h1,h2,h3{overflow-wrap:break-word;text-wrap:balance}
p,address,.text-link,.phone-link,.footer-columns a{overflow-wrap:break-word}
.hero .hero-content{position:relative;z-index:1}
.button,.text-link,.phone-link,.filter,.back-to-top{min-height:44px}
.text-link{align-items:center}
.gallery-filters{flex-wrap:wrap;overflow:visible;gap:8px 28px}
.filter{white-space:normal;text-align:left}
.social-links a,.footer-intro .social-links a{width:44px;height:44px;flex-shrink:0}
.footer-columns h2{font-size:15px}
.footer-columns a,.footer-columns address,.footer-columns p,.footer-hours,.footer-hours dt,.footer-columns>div>.footer-action{font-size:14px}
.footer-columns p,.footer-hours dt{color:#bcae9b}
.footer-columns nav{gap:1px}
.footer-columns nav a,.footer-columns>div>a{min-height:44px;display:flex;align-items:center}
.footer-columns>div>a{margin-top:7px}
.footer-intro>div>p,.premium-footer .footer-bottom,.premium-footer .back-to-top{font-size:12px}
.premium-footer .back-to-top{padding-right:0}
.review-card figcaption strong,.reviews-summary>div{font-size:14px}
.review-card figcaption>div>span,.reviews-source{font-size:12px;color:#6d6255}
.film-notes p,.people-roles p,.story-timeline p{font-size:15px}
.film-notes .text-link,.instagram-bottom .text-link,.map-toolbar .text-link{font-size:14px}
.leaflet-bar a,.leaflet-bar a:hover{width:44px;height:44px;line-height:44px}
.leaflet-container .leaflet-popup-close-button{width:32px;height:32px;line-height:32px}
.lightbox-prev,.lightbox-next{width:44px;height:44px}
.lightbox-bottom{flex-wrap:wrap}
.lightbox-bottom>div{min-width:0;flex:1 1 220px}
.lightbox-bottom h2{line-height:1.45}
.lightbox-image{height:min(64svh,740px)}
:focus-visible{outline:3px solid #d58700;outline-offset:5px}
.business-action:focus-visible{outline-offset:4px}
@media(max-width:1200px){
 .header-inner{gap:14px}.nav{gap:16px}.nav a{font-size:13px}.header-contact{font-size:13px}
 .footer-columns{column-gap:28px}
}
@media(max-width:1000px){
 html{scroll-padding-top:98px}
 .nav{max-height:calc(100svh - 82px);overflow-y:auto;overscroll-behavior:contain}
 .nav a{font-size:17px}
 .about{column-gap:30px}
 .story-main,.people-layout{column-gap:32px}
 .film-layout{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}
 .footer-columns{column-gap:48px}
}
@media(min-width:701px) and (max-width:820px){
 .about{grid-template-columns:1fr;gap:40px}.about-copy p{max-width:650px}
 .about-visual{max-width:620px;width:100%;justify-self:center;padding-left:30px}
 .about .photo-frame{height:450px}
 .people-layout{grid-template-columns:1fr;gap:42px}.people-portrait{height:520px;max-width:600px;width:100%;justify-self:center}
 .people-copy h2{max-width:600px}.people-copy>p{max-width:650px}
 .story-main{grid-template-columns:1fr;gap:42px}.story-photo{max-width:430px;justify-self:center}
 .story-copy p{max-width:650px}.story-timeline{gap:25px}
 .film-layout{grid-template-columns:1fr;gap:36px}.film-link{aspect-ratio:1.55}
 .film-notes{grid-template-columns:1fr 1fr}.film-notes>.text-link{grid-column:1/-1}
}
@media(max-width:700px){
 html{scroll-padding-top:92px}
 .container{width:calc(100% - 40px)}
 .nav{max-height:calc(100svh - 76px)}
 .hero{min-height:660px;height:auto}
 .hero-content{padding-top:48px;padding-bottom:115px}
 .hero h1{font-size:clamp(36px,10.8vw,62px);line-height:1.14;letter-spacing:-.045em;text-wrap:initial}
 .hero p{font-size:16px;line-height:1.8;max-width:440px}
 .hero-actions .button{font-size:15px;min-height:60px;padding:16px 20px;gap:14px}
 .hero-signature{font-size:9px;letter-spacing:.8px;flex-wrap:wrap}
 .hero-bottom{padding-right:0;font-size:10px;gap:16px;flex-wrap:wrap}
 .hero-location{font-size:10px}
 .about{grid-template-columns:1fr;gap:36px}
 .about-copy p,.section-heading>p,.universe-note,.visit-copy>p,.visit address{font-size:16px}
 .about .photo-frame{height:410px}
 .universe-grid{grid-template-columns:1fr}
 .universe-card{min-height:690px}
 .universe-content{padding:130px 24px 28px}
 .card-overline{left:24px;right:24px;max-width:max-content;line-height:1.6}
 .universe-note{padding-inline:0}
 .film-layout{grid-template-columns:1fr}
 .film-notes{gap:24px}
 .film-notes h3{font-size:19px}
 .instagram-bottom p,.map-address,.opening-hours,.factory-address{font-size:14px}
 .visit{grid-template-columns:1fr}.visit-image{height:390px}
 .visit-copy h2{font-size:clamp(32px,8vw,42px)}
 .opening-hours{grid-template-columns:minmax(0,1fr) auto;gap:8px 16px}
 .opening-hours>span:nth-child(3){margin-top:0}
 .map-address>span{align-items:flex-start}
 .map-loading{padding:22px}.map-loading .text-link{font-size:14px;gap:10px}
 .map-loading p{font-size:14px}
 .map-toolbar h2{font-size:30px}
 .contact-path p{margin-inline:0}
 .closing>.container>p{font-size:16px;max-width:520px}
 .contact-path .phone-link{min-height:44px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;font-size:14px}
 .footer-columns{column-gap:30px}
 .footer-intro .social-links{margin-left:0}
 .premium-footer .footer-bottom{font-size:12px}
}
@media(max-width:480px){
 .project-grid{grid-template-columns:1fr;gap:32px}
 .project-image{aspect-ratio:1.08}
 .project-meta h3{font-size:18px}.project-meta span{font-size:12px}.project-meta>.icon{width:22px;height:22px}
 .gallery-filters{gap:8px 20px}.filter{font-size:14px}
 .process-grid{grid-template-columns:1fr;gap:28px}
 .process-step h3{font-size:20px}.process-step p{font-size:16px}
 .film-notes{grid-template-columns:1fr;gap:24px}
 .film-link{aspect-ratio:1.1}.film-caption{left:20px;right:20px;bottom:22px}.film-caption strong{font-size:20px}.film-action{font-size:14px}
 .footer-columns{grid-template-columns:1fr;gap:30px}
 .footer-columns>div+div{border-top:1px solid #9d7d543d;padding-top:26px}
 .footer-columns h2{font-size:16px;margin-bottom:12px}
 .footer-columns nav{grid-template-columns:1fr 1fr;gap:5px 20px}
 .footer-columns a,.footer-columns address,.footer-columns p,.footer-hours,.footer-hours dt,.footer-columns>div>.footer-action{font-size:14px}
 .footer-columns p br{display:none}
 .story-timeline li{grid-template-columns:68px minmax(0,1fr);gap:16px}
 .story-photo-caption{font-size:10px;letter-spacing:.4px}
 .people-copy h2{font-size:32px}
 .reviews-summary{gap:16px}.reviews-summary>div{font-size:13px}
 .reviews-section h2{font-size:30px}
 .business-action.button{padding:17px 16px;gap:10px}
 .action-text strong{font-size:17px}
}
@media(max-width:360px){
 .header .brand{width:182px}.header-inner{gap:8px}
 .hero .eyebrow{font-size:9px;letter-spacing:1px;gap:8px}
 .hero .hero-actions .button{font-size:14px;padding-inline:16px}
 .hero-signature{font-size:8px;gap:8px}
 .hero-bottom{font-size:9px;gap:12px}.hero-location{font-size:9px}
 .universe-content{padding-inline:19px}
 .business-action.button{padding:15px 12px;gap:8px;grid-template-columns:20px minmax(0,1fr) 18px}
 .action-text strong{font-size:16px}
 .contact-path{padding-inline:19px}
 .closing h2{font-size:37px}
 .opening-hours{grid-template-columns:1fr;gap:4px}.opening-hours>span:nth-child(3){margin-top:9px}
 .footer-columns nav{grid-template-columns:1fr}
}
@media(max-height:600px) and (min-width:701px){
 .hero{height:auto;max-height:none;min-height:650px}.hero-content{padding-block:60px 120px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
