@font-face{font-family:Marquee;src:url('assets/marquee.woff2') format('woff2'),url('assets/marquee.woff') format('woff');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#fdfdfb;color:#191919;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid #777;outline-offset:6px}a:hover{text-decoration:underline;text-underline-offset:5px}.page{max-width:1600px;margin:auto}header{margin:0 5%;height:105px;border-bottom:1px solid #202020;display:flex;align-items:center;justify-content:space-between;gap:30px}.wordmark{font-weight:900;font-size:25px;letter-spacing:-1.2px;line-height:1}.wordmark span{display:block;font-size:10px;letter-spacing:3px;margin-top:8px}nav{display:flex;gap:32px;font-size:14px}.place,.eyebrow,.label,.section-top>span{font-family:Arial,sans-serif;font-size:12px;letter-spacing:1.5px;font-weight:600}.hero{margin:0 5%;position:relative;padding-top:58px;display:grid;grid-template-columns:1fr 22%;min-height:540px}.hero-copy{padding-top:15px;z-index:1}.eyebrow{margin:0 0 28px}h1{font-family:Marquee,Impact,sans-serif;font-weight:normal;font-size:clamp(70px,11.1vw,174px);line-height:1.13;letter-spacing:-.015em;margin:25px 0 42px}.hero-bottom{display:flex;align-items:center;justify-content:space-between;max-width:650px;gap:24px}.hero-bottom p{font-size:32px;line-height:1.13;letter-spacing:-1px;margin:0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:48px;background:#1a1a1a;color:#fff;padding:17px 22px;font-size:14px;min-width:195px}.button:hover{background:#404040;text-decoration:none}.button span{font-size:22px}.sign{height:380px;position:relative;overflow:hidden}.sign img{position:absolute;height:550px;width:550px;max-width:none;top:-52px;left:50%;transform:translateX(-50%)}.hero-foot{grid-column:1/-1;border-top:1px solid #aaa;display:flex;justify-content:space-between;padding:21px 0;margin-top:42px;font-size:11px;letter-spacing:1.5px}.billboard{padding:64px 5% 76px;border-top:1px solid #222}.section-top{display:flex;justify-content:space-between}.section-top .eyebrow{margin-bottom:50px}.festival{display:grid;grid-template-columns:1fr 43%;gap:8%;align-items:center}.festival-copy>.eyebrow{margin-bottom:18px}h2{font-size:clamp(45px,6vw,86px);line-height:.98;letter-spacing:-.06em;margin:0;font-weight:900}.period{color:#777}.intro{font-size:24px;line-height:1.35;letter-spacing:-.5px;margin:26px 0 38px}.opening{border-top:1px solid #b8b8b8;padding-top:23px;max-width:390px}.opening h3{font-size:20px;letter-spacing:-.5px;margin:12px 0 8px}.opening p{color:#555;margin:0 0 28px}.text-link{font-size:14px;border-bottom:1px solid #222;padding-bottom:5px}.poster{display:block;border:1px solid #d5d5d5;box-shadow:9px 9px 0 #e9e9e7;transform:rotate(1deg)}.poster img{display:block;width:100%;height:auto;filter:grayscale(1)}.program-header{display:flex;justify-content:space-between;align-items:baseline;margin-top:80px;gap:20px;padding-bottom:17px;border-bottom:2px solid #191919}.program-header h3{font-family:Marquee,Impact,sans-serif;font-weight:normal;font-size:27px;margin:0}.program-header p{font-size:14px;margin:0}.program details{border-bottom:1px solid #ccc}.program summary{display:grid;grid-template-columns:135px 1fr 24px;align-items:center;gap:20px;cursor:pointer;padding:22px 0;list-style:none}.program summary::-webkit-details-marker{display:none}.program summary:hover{background:#f0f0ee}.date{display:flex;align-items:center;gap:16px;font-size:36px;font-weight:700;letter-spacing:-1px}.date small{font-size:11px;letter-spacing:.7px;max-width:38px;line-height:1.5}.movie{font-size:23px;line-height:1.25;letter-spacing:-.5px}.movie span{font-size:13px;color:#666;display:block;letter-spacing:0;margin-top:6px}.plus{font-size:27px;font-weight:300}details[open] .plus{transform:rotate(45deg)}.detail{margin-left:155px;padding:0 40px 25px 0;max-width:780px;color:#555;font-size:15px}.detail p{margin-bottom:0}.program-foot{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-top:20px}.program-foot p{font-size:12px;color:#666;line-height:1.8}.visit{background:#191919;color:#fff;padding:68px 5%;display:grid;grid-template-columns:1.4fr 1fr;gap:10%}.visit h2{font-size:clamp(35px,4.3vw,62px);line-height:1.08;letter-spacing:-.045em}.visit p:not(.eyebrow){font-size:16px;line-height:1.65;color:#bdbdbd;margin:26px 0}.light{border:1px solid #888;background:transparent}.contact{border-left:1px solid #555;padding-left:40px}.contact h3{font-size:36px;font-weight:400;letter-spacing:-1px;margin:45px 0 0}footer{display:flex;align-items:center;justify-content:space-between;padding:35px 5%;gap:20px}footer p{font-size:11px;letter-spacing:1px}footer>a:last-child{font-size:13px}.skip{position:absolute;top:-100px}.skip:focus{top:8px;left:8px;z-index:10;background:white;padding:12px}@media(min-width:1600px){h1{font-size:174px}}@media(max-width:850px){.place{display:none}.hero{grid-template-columns:1fr 20%;min-height:450px}h1{font-size:11.3vw}.sign{height:300px}.sign img{width:440px;height:440px;top:-40px}.hero-bottom p{font-size:26px}.hero-bottom{max-width:470px}.festival{gap:6%;grid-template-columns:1fr 44%}.intro{font-size:20px}.program-header{align-items:flex-start;flex-direction:column;gap:8px}.visit{gap:5%}.contact{padding-left:25px}}@media(max-width:560px){header{height:90px;gap:12px}.wordmark{font-size:20px}.wordmark span{font-size:8px;letter-spacing:2px}nav{gap:15px;font-size:12px}.hero{padding-top:30px;grid-template-columns:1fr;min-height:0}.hero-copy{padding-top:0}.hero .eyebrow{font-size:10px;margin-bottom:16px}h1{font-size:14vw;margin:10px 0 30px}.hero-bottom{align-items:center;padding-bottom:26px}.hero-bottom p{font-size:27px}.button{padding:13px 16px;gap:28px;min-width:165px}.sign{display:none}.hero-foot{font-size:9px;gap:16px;margin-top:0;padding:17px 0}.hero-foot span:first-child{max-width:215px}.billboard{padding-top:37px;padding-bottom:42px}.section-top .eyebrow{margin-bottom:34px}.section-top>span,.eyebrow{font-size:10px}.festival{grid-template-columns:1fr;gap:35px}.festival h2{font-size:67px}.intro{font-size:22px}.poster{width:85%;margin:0 auto}.program-header{margin-top:52px}.program-header h3{font-size:22px}.program summary{grid-template-columns:80px 1fr 17px;gap:12px;padding:18px 0}.date{font-size:29px;gap:8px}.date small{font-size:9px}.movie{font-size:18px}.movie span{font-size:12px}.detail{margin-left:92px;font-size:14px;padding-right:10px}.program-foot{align-items:flex-start;flex-direction:column;gap:5px}.visit{grid-template-columns:1fr;padding-top:42px;padding-bottom:42px;gap:40px}.visit h2{font-size:40px}.contact{border-left:0;border-top:1px solid #555;padding:30px 0 0}.contact h3{margin-top:20px;font-size:31px}footer{flex-wrap:wrap;padding-top:26px;padding-bottom:26px}footer p{font-size:9px}footer>a:last-child{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Keep the longer marquee title beside the original logo. */
h1{font-size:clamp(52px,8.7vw,136px)}@media(min-width:1600px){h1{font-size:136px}}@media(max-width:850px){h1{font-size:8.7vw}}@media(max-width:560px){h1{font-size:11.2vw}}

/* Display the supplied square logo in full, including its transparent margins. */
.sign{height:400px;overflow:visible}
.sign img{position:absolute;inset:0 0 auto auto;width:400px;height:400px;max-width:none;object-fit:contain;transform:none}
@media(max-width:850px){.sign{height:330px}.sign img{width:330px;height:330px}}
@media(max-width:560px){.sign{display:flex;justify-content:center;height:auto;padding:0 0 20px}.sign img{position:static;width:100%;height:auto;max-width:300px;object-fit:contain}}
