:root{font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:#291d29;background:#f7f2e9;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #e17b59;outline-offset:3px}button:disabled{cursor:default}.app{min-height:100vh;display:grid;grid-template-columns:260px minmax(0,1fr)}
.sidebar{background:#1b1721;color:#f4ebdf;min-height:100vh;padding:34px 24px 29px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{color:inherit;text-decoration:none;display:flex;align-items:center;gap:10px;font-size:19px;font-weight:900;letter-spacing:.07em}.brand-symbol{font-size:33px;color:#ed805f;line-height:1}.brand small{display:block;font-size:9px;letter-spacing:.23em;font-weight:700;color:#c9a99e;margin-top:2px}.side-edition{margin-top:69px}.side-edition span,.side-bottom small{font-size:9px;letter-spacing:.2em;color:#be9e9b;font-weight:800}.side-edition b{display:block;font-family:Georgia,"Yu Mincho",serif;font-size:24px;font-weight:500;line-height:1.4;margin-top:17px}.side-edition p{font-size:11px;line-height:2;color:#9e929e}.side-nav{margin-top:64px;display:flex;flex-direction:column;gap:7px}.nav-button{border:0;background:transparent;color:#978f9d;width:100%;height:49px;border-radius:7px;text-align:left;padding:0 14px;font-size:12px;font-weight:700;display:flex;align-items:center;gap:16px}.nav-button span{font-size:9px;color:#a07573}.nav-button i{margin-left:auto;font-style:normal;font-size:15px;opacity:0}.nav-button:hover,.nav-button.is-active{background:#302631;color:#fff2df}.nav-button.is-active i{opacity:1;color:#e58d71}.side-bottom{margin-top:auto}.side-line{display:block;width:31px;height:2px;background:#e67e62}.side-bottom p{font-family:Georgia,"Yu Mincho",serif;font-size:19px;line-height:1.6;color:#e8d9cb;margin:24px 0 37px}
.main-shell{min-width:0}.topbar{height:70px;padding:0 clamp(24px,4.2vw,72px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e4d9cf;background:#faf5ed}.mobile-brand{display:none}.topbar-label{font-size:10px;letter-spacing:.14em;color:#8b7b7b;font-weight:700}.topbar-label b{color:#d0816e;margin:0 8px}.topbar-right{display:flex;align-items:center;gap:9px;color:#775e66;font-size:10px;font-weight:800;letter-spacing:.07em}.live-marker{background:#e47e63;width:7px;height:7px;border-radius:50%;box-shadow:0 0 0 4px #f4e0d4}.topbar-right button{margin-left:19px;width:38px;height:32px;border:1px solid #ded0cb;border-radius:8px;background:#fff8ef;color:#a26775;font-size:18px;line-height:1}.topbar-right button span{font:700 10px sans-serif;vertical-align:middle}.view{max-width:1400px;margin:auto;padding:52px clamp(24px,4.2vw,72px) 78px}.view[hidden]{display:none!important}.eyebrow{color:#bc715f;font-size:10px;letter-spacing:.19em;font-weight:900;margin:0 0 18px;display:flex;align-items:center;gap:10px}.sun-dot{width:8px;height:8px;background:#e98264;border-radius:50%;box-shadow:0 0 0 4px #f8e2d2}.page-lead{display:grid;grid-template-columns:1fr auto;align-items:end;margin-bottom:32px}.page-lead .eyebrow{grid-column:1/-1}.page-lead h1,.view-intro h1{font-family:Georgia,"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;font-size:clamp(39px,4.4vw,72px);letter-spacing:-.08em;line-height:1.28;margin:0}.page-lead h1 em{font-style:normal;color:#c36b5e}.page-lead>p:last-child{color:#8d7d7d;font-size:12px;line-height:2;margin:0 0 7px}.hero{height:clamp(390px,42vw,560px);position:relative;overflow:hidden;border-radius:12px;background:#634448;color:#fff8e9;isolation:isolate;box-shadow:0 24px 40px #6c49412a}.hero-photo{position:absolute;inset:0;background:url('assets/tide-garden.jpg') center 57%/cover no-repeat;z-index:-2;transition:transform 1.2s ease}.hero:hover .hero-photo{transform:scale(1.035)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,15,29,.78),rgba(30,18,27,.12) 67%),linear-gradient(0deg,rgba(15,13,20,.58),transparent 60%);z-index:-1}.hero-top{position:absolute;top:28px;left:32px;right:32px;display:flex;justify-content:space-between;font-size:10px;font-weight:800;letter-spacing:.18em}.hero-copy{position:absolute;left:clamp(28px,4vw,62px);bottom:clamp(32px,4.5vw,68px)}.hero-copy p{font-family:Georgia,"Yu Mincho",serif;font-size:14px;letter-spacing:.12em}.hero-copy h2{font-family:Georgia,"Yu Mincho",serif;font-size:clamp(54px,7vw,110px);font-weight:500;line-height:1.13;letter-spacing:-.1em;margin:12px 0}.hero-meta{display:flex;gap:12px;font-size:11px;color:#e8cfbf;margin:16px 0 27px}.primary-button{background:#e78261;color:#251c25;border:0;border-radius:7px;padding:0 21px;min-height:45px;font-weight:900;font-size:12px;display:inline-flex;align-items:center;gap:28px;justify-content:space-between}.primary-button:hover{background:#f4a181;transform:translateY(-2px)}.hero-edge{position:absolute;right:26px;bottom:27px;writing-mode:vertical-rl;font-size:10px;letter-spacing:.2em;font-weight:800}.hero-edge span{margin-top:18px;color:#e78b70}.preview-section,.today-section{margin-top:68px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:23px}.section-number{color:#bb756b;letter-spacing:.16em;font-size:10px;font-weight:900}.section-heading h2{font-family:Georgia,"Yu Mincho",serif;font-weight:500;font-size:31px;letter-spacing:-.06em;margin:8px 0 0}.text-link{border:0;background:transparent;color:#8b5e5c;font-size:11px;font-weight:900;padding:8px 0}.text-link span{font-size:17px;margin-left:8px}.text-link:hover{text-decoration:underline}
.film-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.film-card{min-width:0;cursor:pointer}.film-art{height:clamp(230px,24vw,340px);position:relative;border-radius:8px;overflow:hidden;background:#1b1721}.film-art img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.film-card:hover .film-art img{transform:scale(1.055)}.film-art:after{content:"";position:absolute;inset:38% 0 0;background:linear-gradient(transparent,rgba(16,12,20,.76));pointer-events:none}.film-art .film-numeral{position:absolute;top:16px;left:16px;color:#fff;font:700 11px Georgia,serif;z-index:1}.film-art .film-mark{position:absolute;bottom:15px;left:17px;color:#fff;font-family:Georgia,"Yu Mincho",serif;font-size:clamp(23px,2.15vw,34px);letter-spacing:-.08em;z-index:1}.save-card{position:absolute;top:12px;right:12px;z-index:2;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;border:1px solid #ffffff91;background:#1d17247a;color:#fff;font-size:19px}.save-card.is-saved{color:#f6a284;background:#fff7ed}.film-card-copy{display:flex;justify-content:space-between;align-items:start;gap:12px;padding:13px 2px}.film-card-copy b{font-size:13px}.film-card-copy small{display:block;color:#988984;font-size:10px;margin-top:5px}.film-card-copy>span{font-size:16px;color:#b27a66}.comet-art img{width:110%;max-width:none;margin-left:-7%}.today-section{margin-bottom:15px}.screening-list{display:flex;flex-direction:column;border-top:1px solid #d8c8c0}.screening-row{display:grid;grid-template-columns:90px 76px 1fr auto;align-items:center;gap:17px;border-bottom:1px solid #ddd0c7;padding:16px 5px}.screening-time{font:500 28px Georgia,serif;letter-spacing:-.05em}.screening-poster{width:62px;height:69px;border-radius:3px;overflow:hidden}.screening-poster img{width:100%;height:100%;object-fit:cover}.screening-info b{font-family:Georgia,"Yu Mincho",serif;font-size:18px;font-weight:600}.screening-info small{display:block;color:#998b88;font-size:10px;margin-top:8px}.screening-row button{background:none;border:1px solid #dcc9c2;border-radius:50%;width:35px;height:35px;color:#9b645f}.screening-row button:hover{background:#e78261;color:#261923}
.view-intro{margin-bottom:34px}.view-intro h1{font-size:clamp(43px,4.5vw,69px)}.title-star{font-family:Arial,sans-serif;font-size:25px;color:#e38462;vertical-align:top;margin-left:16px}.view-intro>p:last-child{font-size:12px;color:#8b7c79;line-height:1.8}.film-tools{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:40px 0 25px}.search-label{width:min(335px,40%);display:flex;align-items:center;border-bottom:1px solid #baaaa3;color:#966e68;padding:7px 3px;gap:9px}.search-label span{font-size:25px;line-height:1}.search-label input{border:0;background:transparent;outline:none;min-width:0;width:100%;font-size:12px;color:#342835}.filters{display:flex;gap:7px;flex-wrap:wrap}.filter{border:1px solid #dfd0ca;border-radius:20px;padding:9px 15px;background:transparent;color:#8f7e7b;font-size:10px;font-weight:800}.filter.is-active{background:#2c202b;border-color:#2c202b;color:#fff6e8}.film-grid.expanded .film-art{height:clamp(280px,30vw,440px)}.empty-state{color:#8f7c7d;text-align:center;padding:60px 0}.schedule-heading{display:flex;justify-content:space-between;border-top:1px solid #d8c8c0;padding-top:19px;margin-top:45px;font-size:11px;font-weight:800;color:#9b6e6b}.day-tabs{display:flex;gap:8px;margin:26px 0 33px}.day-tab{height:104px;min-width:110px;border:1px solid #d9c9bf;border-radius:8px;background:#fbf6ed;color:#9b8580;display:flex;flex-direction:column;align-items:start;justify-content:center;padding:17px 20px}.day-tab span{font-size:9px;letter-spacing:.13em;font-weight:900}.day-tab b{font:500 35px Georgia,serif;line-height:1.1;color:#443642}.day-tab small{font-size:9px}.day-tab.is-active{background:#2b202b;border-color:#2b202b;color:#d9b5a3}.day-tab.is-active b{color:#fff5e7}.schedule-note{font-size:10px;color:#9e8f8a;margin-top:23px}.saved-empty{border:1px solid #ddcdc5;border-radius:10px;padding:70px 20px;text-align:center}.saved-empty>span{font-size:58px;color:#d58773}.saved-empty h2{font-family:Georgia,"Yu Mincho",serif;font-size:28px;font-weight:500}.saved-empty p{font-size:12px;color:#92837f;margin-bottom:26px}.footer{border-top:1px solid #dfd1c6;padding:25px clamp(24px,4.2vw,72px);display:flex;justify-content:space-between;color:#a08d85;font-size:9px;letter-spacing:.13em;font-weight:800}.mobile-nav{display:none}
.film-dialog{border:0;padding:0;border-radius:12px;background:#f8f2e9;color:#2d222d;width:min(1050px,94vw);max-height:min(92vh,950px);box-shadow:0 35px 100px #0008}.film-dialog::backdrop{background:#15111ad9;backdrop-filter:blur(9px)}.detail-shell{display:grid;grid-template-columns:42% 58%;position:relative;min-height:650px}.dialog-close{position:absolute;right:18px;top:18px;z-index:3;width:37px;height:37px;border:1px solid #e5d6cb;border-radius:50%;background:#fff9ed;color:#5b4a57;font-size:26px;line-height:1}.detail-poster{position:relative;overflow:hidden;background:#28202a}.detail-poster img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.detail-poster:after{content:"";position:absolute;inset:70% 0 0;background:linear-gradient(transparent,#1d1525b5)}.detail-poster span{position:absolute;left:25px;bottom:25px;color:#fff;z-index:1;font-size:10px;font-weight:900;letter-spacing:.17em}.detail-content{padding:55px clamp(25px,4vw,56px) 40px;overflow-y:auto;max-height:92vh}.detail-content h2{font-family:Georgia,"Yu Mincho",serif;font-size:clamp(35px,4vw,56px);font-weight:500;letter-spacing:-.08em;margin:3px 0}.detail-english{font-size:10px;letter-spacing:.2em;color:#ba8075;margin:0 0 18px}.detail-tags{display:flex;gap:6px}.detail-tags span{border:1px solid #e2d3c8;border-radius:20px;padding:5px 9px;color:#806e6f;font-size:10px}.detail-synopsis{font-size:12px;line-height:2.05;color:#6f6267;margin:27px 0}.storyboard{border-top:1px solid #ddcdc4;padding-top:18px}.storyboard-heading{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.15em;font-weight:900;color:#a8736c;margin-bottom:12px}.storyboard-visual{height:148px;position:relative;overflow:hidden;border-radius:5px;background:#2a1e2a}.storyboard-visual img{width:120%;height:130%;object-fit:cover;position:absolute;inset:0;transition:object-position .4s,transform .4s,filter .4s}.storyboard-visual span{position:absolute;right:13px;bottom:6px;color:#fff9;font:italic 47px Georgia,serif}.scrub-label{display:flex;justify-content:space-between;font-size:11px;font-weight:800;margin:15px 0 7px}.scrub-label span{color:#b67a68}.storyboard input{width:100%;accent-color:#dc8064;cursor:pointer}.scrub-ends{display:flex;justify-content:space-between;font-size:9px;color:#a49894;letter-spacing:.12em}.storyboard-note{font-size:9px;color:#9b8d88;line-height:1.6}.detail-actions{display:flex;gap:8px;margin-top:20px}.outline-button{border:1px solid #d5bcb3;background:transparent;color:#8e605c;border-radius:7px;padding:0 17px;font-size:11px;font-weight:800}.outline-button.is-saved{background:#f4d9ca;color:#783c40}.detail-actions .primary-button{flex:1}
.detail-poster img.comet-crop{width:110%;left:-7%;max-width:none}.storyboard-visual img.comet-crop{width:130%;left:-10%;max-width:none}
@media(max-width:1020px){.app{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding:28px 15px}.topbar{padding:0 26px}.view{padding-left:26px;padding-right:26px}.page-lead{grid-template-columns:1fr}.page-lead>p:last-child{margin-top:18px}.hero{height:440px}}
@media(max-width:760px){.app{display:block}.sidebar{display:none}.topbar{height:66px;padding:0 20px}.mobile-brand{display:flex;align-items:center;gap:6px;font-size:17px;font-weight:900;color:#2b1e2c;text-decoration:none;letter-spacing:.06em}.mobile-brand span{color:#e77b5c;font-size:28px}.mobile-brand small{font-size:10px;letter-spacing:0;margin-left:4px}.topbar-label{display:none}.topbar-right{font-size:0}.topbar-right .live-marker{display:none}.topbar-right button{margin-left:0}.view{padding:34px 18px 100px}.page-lead h1{font-size:44px}.page-lead>p:last-child{font-size:11px;margin-top:18px}.hero{height:490px}.film-art{height:280px}.film-grid{gap:12px}.film-card-copy b{font-size:11px}.film-card-copy small{font-size:9px}.film-art .film-mark{font-size:25px}.mobile-nav{height:66px;position:fixed;bottom:0;left:0;right:0;background:#1f1822;z-index:5;display:grid;grid-template-columns:repeat(4,1fr);padding-bottom:env(safe-area-inset-bottom)}.mobile-nav button{border:0;background:transparent;color:#a99aa8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:9px;font-weight:800}.mobile-nav button span{font-size:21px;line-height:1.2}.mobile-nav button.is-active{color:#f2aa8f}.footer{padding:20px 18px 86px}.footer span:nth-child(2){display:none}}
@media(max-width:520px){.eyebrow{font-size:9px;margin-bottom:15px}.page-lead h1{font-size:clamp(38px,11vw,49px)}.hero{height:485px;border-radius:8px}.hero-photo{background-position:center 49%}.hero-shade{background:linear-gradient(0deg,rgba(22,14,25,.82),transparent 62%)}.hero-top{top:19px;left:18px;right:18px;font-size:9px}.hero-copy{left:22px;right:20px;bottom:27px}.hero-copy p{font-size:11px}.hero-copy h2{font-size:67px}.hero-edge{display:none}.preview-section,.today-section{margin-top:52px}.section-heading h2{font-size:26px}.film-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.film-grid .film-card:last-child:nth-child(odd){grid-column:1/-1}.film-grid .film-card:last-child:nth-child(odd) .film-art{height:235px}.film-grid .film-card:last-child:nth-child(odd) .film-art img{object-position:center 58%}.film-art{height:240px}.film-art .film-mark{font-size:23px}.film-grid.expanded .film-art{height:245px}.film-tools{display:block;margin:27px 0 20px}.search-label{width:100%}.filters{margin-top:18px}.filter{padding:8px 10px}.view-intro h1{font-size:45px}.schedule-heading{font-size:10px;gap:15px}.day-tab{height:91px;min-width:0;flex:1;padding:12px}.screening-row{grid-template-columns:55px 52px 1fr 30px;gap:8px;padding:14px 0}.screening-time{font-size:20px}.screening-poster{width:48px;height:60px}.screening-info b{font-size:14px}.screening-info small{font-size:9px}.screening-row button{width:30px;height:30px}.footer span:last-child{display:none}.film-dialog{width:100vw;height:100dvh;max-height:100dvh;border-radius:0}.detail-shell{display:block}.detail-poster{height:43vh}.detail-poster img{position:absolute}.detail-content{max-height:none;padding:29px 23px 75px}.dialog-close{top:15px;right:15px}.detail-content h2{font-size:41px}.storyboard-visual{height:160px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
