:root{font-family:Inter,Arial,sans-serif;color:#242722;background:#f7f5f0;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}.site-header{background:#161c1a;color:#faf8f0;border-bottom:1px solid #3a4139}.head-inner{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{font-size:22px;letter-spacing:-1px;font-weight:800;display:inline-flex;align-items:center;gap:8px}.brand-accent{color:#dfb66e}.brand-mark{background:#d6a65d;color:#17221c;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;font-size:12px;letter-spacing:-1px}.brand-mark span{color:#fff}.head-inner nav{display:flex;align-items:center;gap:30px;font-size:13px;color:#e4e5dc}.button{border:0;display:inline-flex;gap:25px;align-items:center;justify-content:center;border-radius:4px;padding:16px 20px;font-size:13px;font-weight:700}.button.primary{background:#d7ad6a;color:#1d261d}.button.primary:hover{background:#e6bf80}.button.outline{background:transparent;color:inherit;border:1px solid currentColor}.button.small{padding:10px 15px}.hero{background:#19231e;color:#f8f7f0;position:relative;overflow:hidden;min-height:490px}.hero-glow{position:absolute;right:0;top:0;height:100%;width:55%;background:radial-gradient(ellipse at 70% 50%,#59654488,transparent 65%),linear-gradient(135deg,transparent,#39433355)}.hero-content{position:relative;padding:74px 0 75px}.eyebrow{color:#aa8653;font-size:10px;letter-spacing:2px;font-weight:800;margin:0 0 18px}.hero .eyebrow{color:#d5b781}.hero .eyebrow span{display:inline-block;width:25px;height:1px;background:#d5b781;vertical-align:middle;margin-right:10px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:400}h1{font-size:clamp(48px,6vw,78px);line-height:1.06;letter-spacing:-2px;margin:0 0 22px}h1 em{color:#d9ba87;font-weight:400}.hero-copy{color:#c5cbc0;line-height:1.6;max-width:410px;font-size:15px;margin-bottom:26px}.hero-note{display:flex;align-items:center;gap:12px;color:#acb5aa;font-size:11px;margin-top:36px}.avatars{display:flex}.avatars i{display:grid;place-items:center;width:27px;height:27px;border:2px solid #19231e;background:#7e906f;color:white;border-radius:50%;font-style:normal;margin-left:-6px}.avatars i:first-child{margin-left:0;background:#bb9a72}.avatars i:last-child{background:#bcad87}.film-decoration{position:absolute;right:15%;top:60px;width:225px;height:330px;background:#334638;border:1px solid #9fa97a30;transform:rotate(7deg);padding:25px;color:#d5d4af;box-shadow:0 20px 40px #0005;display:flex;flex-direction:column;justify-content:space-between}.film-decoration:before{content:'';position:absolute;inset:13px;border:1px solid #a6b69340}.film-decoration span,.film-decoration small{font-size:9px;letter-spacing:2px;z-index:1}.film-decoration strong{font:38px/1 Georgia,serif;z-index:1}.setup{padding:75px 0}.section-intro{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:28px}.section-intro h2,.ending h2{font-size:37px;line-height:1.1;letter-spacing:-.7px;margin:0}.section-intro>p{max-width:330px;color:#777a73;font-size:13px;line-height:1.6;margin:0}.setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{background:#fff;border:1px solid #e4e4dc;border-radius:6px;padding:28px;min-width:0}.panel-heading{display:flex;gap:13px;align-items:flex-start;margin-bottom:25px}.step{background:#eef0e7;color:#647462;font-size:10px;padding:9px;border-radius:50%;font-weight:700}.panel h3{font-size:15px;margin:0 0 6px}.panel-heading p,.hint{color:#8a8e84;font-size:12px;line-height:1.5;margin:0}.input-wrap{border:1px solid #dcded5;display:flex;align-items:center;gap:10px;padding:0 13px;background:#fff;border-radius:4px}.input-wrap span{font-size:21px;color:#899181}.input-wrap input{border:0;outline:0;width:100%;padding:13px 0;background:transparent;font-size:13px;color:#243126}.panel label{font-size:12px;font-weight:700}.optional{font-size:9px;color:#a4a79f;letter-spacing:1px;margin-left:6px}.label-row{display:flex;align-items:center;justify-content:space-between;margin:20px 0 9px}select{width:100%;padding:13px;border:1px solid #dcded5;border-radius:4px;background:white;color:#4e584d;margin-top:9px;font-size:13px}.movie-chips,.providers{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.chip,.provider{border:1px solid #e0e3d9;background:#f6f7f2;color:#3d5141;border-radius:25px;padding:8px 11px;font-size:11px}.chip{display:flex;gap:8px;align-items:center}.chip button{border:0;background:none;color:#637665;font-size:17px;line-height:1;padding:0}.provider[aria-pressed=true]{background:#e3ecdf;border-color:#8ca78c;color:#284c36}.providers{max-height:172px;overflow:auto;align-content:flex-start}.hint{margin-top:20px}.search-results{display:grid;gap:4px}.search-result{width:100%;text-align:left;border:0;border-bottom:1px solid #eceee7;padding:10px;background:white;color:#253326;font-size:13px}.search-result:hover{background:#f5f6f0}.types{margin-top:16px;color:#6d776b;font-size:12px}.types summary{cursor:pointer}.type-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.type-grid label{font-size:11px;font-weight:400}.recommend-bar{background:#e8ede3;padding:24px 28px;display:flex;justify-content:space-between;align-items:center;margin-top:18px}.recommend-bar strong{font-family:Georgia,serif;font-weight:400;font-size:19px}.recommend-bar p{font-size:12px;color:#74806f;margin:6px 0 0}.discover{background:#f0f1eb;padding:75px 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid #e0e3d9;display:flex;flex-direction:column}.poster{width:100%;aspect-ratio:2/2.2;object-fit:cover;object-position:top;background:linear-gradient(140deg,#667969,#293f34)}.poster-fallback{aspect-ratio:2/2.2;display:grid;place-items:center;color:#bdcbbd;background:linear-gradient(140deg,#667969,#293f34);font:28px Georgia}.card-body{padding:19px;display:flex;flex-direction:column;flex:1}.card-meta,.watch-label{color:#85917f;font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:700}.card h3{font:23px/1.12 Georgia,serif;margin:10px 0}.card p{font-size:12px;line-height:1.55;color:#73796e}.card .why{color:#506d56;background:#f1f5ee;padding:10px;margin-top:auto}.availability{font-size:11px;color:#687562;line-height:1.5}.card-actions{display:flex;gap:8px;align-items:center;margin-top:12px}.card-actions button{padding:8px;background:#f5f6f1;border:1px solid #dfe3d9;border-radius:4px}.card-actions button[aria-pressed=true]{background:#cfe3ca;border-color:#749473}.card-actions a{margin-left:auto;font-weight:700;font-size:11px;color:#4a6d50}.feedback-note{margin-top:25px;display:flex;gap:12px;align-items:center;color:#61745f;font-size:12px}.feedback-note span{font-size:22px}.feedback-note p{margin:0}.status{color:#778275;font-size:13px;margin:0 0 20px}.notice{background:#fff2dc;color:#694c26;padding:13px;margin-bottom:18px;font-size:13px;line-height:1.5}.ending{padding:65px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.ending p:not(.eyebrow){font-size:13px;color:#858b7f;margin:12px 0 0}.ending button{color:#3a523f}footer{background:#17221d;color:#f2f2e9;padding:40px 0}.foot{display:flex;justify-content:space-between;gap:25px}.foot p{font-size:11px;color:#a9b1a5;line-height:1.5}.attribution{max-width:380px}.attribution p{margin:0 0 4px}dialog{border:0;border-radius:6px;padding:30px;max-width:460px;width:calc(100% - 32px);color:#28332a}dialog::backdrop{background:#101a14aa}.dialog-head{display:flex;justify-content:space-between}.dialog-head h2{font-size:29px;margin-bottom:5px}dialog>p{font-size:13px;color:#778075;line-height:1.5}.icon-btn{border:0;background:transparent;font-size:25px}.auth-actions{display:grid;gap:10px;margin-top:22px}.auth{background:#fff;border:1px solid #d9ddd4;color:#2a372c}.auth:disabled,.button:disabled{opacity:.5;cursor:not-allowed}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:760px){.head-inner nav a{display:none}.hero{min-height:auto}.film-decoration{display:none}.hero-content{padding:64px 0}.section-intro,.ending{align-items:start;flex-direction:column}.setup-grid,.cards{grid-template-columns:1fr}.recommend-bar{align-items:start;gap:20px;flex-direction:column}.foot{flex-direction:column}.section-intro h2,.ending h2{font-size:30px}.poster,.poster-fallback{aspect-ratio:3/2}.wrap{width:min(100% - 32px,1160px)}}

/* The supplied square image is framed around its centered wordmark. */
.site-header,footer{background:#101c29}
.site-header{border-bottom-color:#293747}
.brand-logo{display:block;width:224px;height:70px;object-fit:cover;object-position:center}
.brand-logo-footer{width:202px;height:64px;margin-left:-14px}
@media(max-width:760px){.brand-logo{width:196px;height:64px}.brand-logo-footer{width:196px}}

:root{font-family:'Inter',Arial,sans-serif}
h1,h2,h3,h4,h5,h6,.card h3,.film-decoration strong,.recommend-bar strong{font-family:'Outfit',Arial,sans-serif}
.head-inner{height:auto;min-height:76px;gap:12px;flex-wrap:wrap}
.head-inner nav{margin-left:auto}
.zoom-controls{display:flex;align-items:center;gap:3px;color:#eef3f7;font-size:12px}
.zoom-label{font-weight:600;margin-right:4px}
.zoom-controls button{min-width:36px;min-height:36px;padding:5px 7px;border:1px solid #788897;border-radius:4px;background:#1e3040;color:#fff;font:600 13px 'Inter',Arial,sans-serif}
.zoom-controls button:disabled{opacity:.45;cursor:not-allowed}
.zoom-controls button:focus-visible{outline:3px solid #f2c878;outline-offset:2px}
.zip-field{margin-top:20px;max-width:340px}
.zip-field input{display:block;width:100%;margin-top:8px;padding:11px 12px;border:1px solid #cbd2c8;border-radius:4px;background:#fff;color:#243126;font:inherit}
.zip-help,.zip-status{font-size:11px;line-height:1.5;color:#5f6c60;margin:7px 0 0}
.zip-status:empty{display:none}
.theater-badge{display:block;margin-top:9px;font-size:11px;font-weight:700;color:#375b45}
.showtimes-link{display:inline-block;margin-top:10px;font-size:12px;font-weight:700;color:#315c4c;text-decoration:underline}
@media(max-width:760px){.head-inner{padding:4px 0 8px}.head-inner nav{gap:8px}.zoom-controls{margin-left:auto}.zoom-label{display:none}.brand-logo{width:178px;height:60px}.brand-logo-footer{width:196px;height:64px}}
@media(max-width:480px){.head-inner{gap:4px 8px}.head-inner .brand-logo{width:158px;height:56px}.head-inner nav{margin-left:auto}.zoom-controls{margin-left:auto}.zoom-controls button{min-width:34px;min-height:34px}}
.zoom-large .film-decoration{display:none}
.zoom-large .section-intro,.zoom-large .ending{align-items:start;flex-direction:column}
.zoom-large .setup-grid,.zoom-large .cards{grid-template-columns:1fr}
.zoom-large .recommend-bar{align-items:start;gap:20px;flex-direction:column}
.zoom-large .head-inner nav a{display:none}
.brand{max-width:100%;min-width:0}
.brand-logo{max-width:100%}
.zoom-large .foot{flex-direction:column}
.zoom-large .brand-logo-footer{margin-left:0}

/* Genre choices and a dedicated viewing-options section. */
.genre-fieldset,.viewing-types{border:0;padding:0;margin:0;min-width:0}
.genre-fieldset legend,.viewing-types legend{font-size:12px;font-weight:700;color:#242722}
.genre-help{font-size:12px;line-height:1.5;color:#6f786e;margin:9px 0 14px}
.genre-options{display:flex;flex-wrap:wrap;gap:9px}
.genre-option{position:relative;display:inline-flex;align-items:center;gap:7px;padding:9px 11px;border:1px solid #dce2d8;border-radius:5px;background:#f8faf6;color:#3d5141;cursor:pointer}
.genre-option:has(input:checked){background:#e3ecdf;border-color:#80a086;color:#284c36}
.genre-option input,.type-grid input{accent-color:#477451;margin:0}
.genre-option:has(input:focus-visible){outline:3px solid #c19852;outline-offset:2px}
.viewing-panel{margin-top:18px}
.viewing-panel .label-row{margin-top:0}
.viewing-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.viewing-types .type-grid{gap:13px 16px}
.viewing-types .type-grid label{display:inline-flex;align-items:center;gap:6px;line-height:1.4}
@media(max-width:760px){.viewing-grid{grid-template-columns:1fr;gap:24px}}
.zoom-large .viewing-grid{grid-template-columns:1fr;gap:24px}

/* Saved-movie ratings can be changed or cleared in the watched list. */
.movie-chips .chip{max-width:100%;flex-wrap:wrap;gap:6px;font-size:13px}
.movie-chips .chip>span{overflow-wrap:anywhere}
.chip-ratings{display:flex;align-items:center;gap:3px}
.chip .chip-rating{display:grid;place-items:center;min-width:40px;min-height:40px;font-size:16px;line-height:1;padding:5px;border:1px solid transparent;border-radius:4px}
.chip .chip-rating[aria-pressed=true]{background:#d6e9d2;border-color:#749473}
.chip .remove-watched{display:grid;place-items:center;min-width:40px;min-height:40px;font-size:20px;padding:2px 3px}
.chip button:focus-visible,.card-actions button:focus-visible{outline:3px solid #bd8f45;outline-offset:2px}
.card .rating-hint{font-size:11px;font-weight:600;color:#4c6852;margin:12px 0 0}
.rating-hint+.card-actions{margin-top:8px}

/* A cinema-inspired welcome with a dark backdrop behind the text. */
.hero{display:flex;align-items:center;min-height:550px;border-bottom:1px solid #29313e;background-color:#07101f;background-image:linear-gradient(90deg,rgba(5,11,24,.96) 0%,rgba(6,13,28,.88) 33%,rgba(7,14,28,.3) 65%,rgba(7,14,28,.13) 100%),linear-gradient(0deg,rgba(5,10,20,.55),transparent 38%),url('/cinema-hero.png');background-size:cover;background-position:center;color:#fffaf1}
.hero-content{z-index:1;padding:94px 0 96px}
.hero .eyebrow{color:#ebc995;letter-spacing:2.2px}
.hero .eyebrow span{width:30px;height:2px;background:#ec6f61}
.hero h1{font-size:clamp(50px,6vw,78px);line-height:1.04;letter-spacing:-.035em;font-weight:600;overflow-wrap:break-word}
.hero h1 em{color:#f5c77b;font-style:normal;font-weight:500}
.hero-copy{color:#e2e8ee;font-size:16px;line-height:1.7;max-width:420px}
.hero .button.primary{background:#f2bf73;color:#18212a;border-radius:5px;box-shadow:0 8px 24px #0004}
.hero .button.primary:hover{background:#ffcf89}
.hero .button.primary:focus-visible{outline:3px solid #fff;outline-offset:4px}
.hero-note{color:#d0d5dc;font-size:12px;line-height:1.5;margin-top:35px}
.hero-note-mark{display:grid;place-items:center;width:27px;height:27px;flex:0 0 27px;border:1px solid #ebbd77;border-radius:50%;color:#f4c983;font-size:9px;padding-left:2px}
@media(max-width:760px){.hero{min-height:0;background-position:70% center;background-image:linear-gradient(90deg,rgba(5,11,24,.96),rgba(6,13,28,.75) 68%,rgba(6,13,28,.55)),linear-gradient(0deg,rgba(5,10,20,.7),transparent 50%),url('/cinema-hero.png')}.hero-content{padding:80px 0}.hero h1{font-size:clamp(44px,11vw,64px)}.hero-copy{font-size:15px}}
.zoom-large .hero{background-position:70% center;background-image:linear-gradient(90deg,rgba(5,11,24,.98),rgba(6,13,28,.95) 55%,rgba(6,13,28,.45)),linear-gradient(0deg,rgba(5,10,20,.7),transparent 50%),url('/cinema-hero.png')}
.zoom-large .hero-content{padding:64px 0}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}

/* A watchlist stays available even after the current recommendations change. */
.saved-panel{background:#fff;border:1px solid #dfe3d9;border-radius:6px;padding:24px 28px;margin-bottom:24px}
.saved-heading h3{font-size:20px;margin:0 0 5px;color:#263729}
.saved-heading h3 span{font-size:14px;color:#6c7b6a;font-weight:500}
.saved-heading p,.saved-empty{font-size:12px;line-height:1.5;color:#6f786e;margin:0}
.saved-movies{max-height:360px;overflow:auto;margin-top:15px}
.saved-row{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid #edf0e8;padding:10px 0}
.saved-details{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;min-width:0;font-size:13px;color:#2d3d30}
.saved-details strong{overflow-wrap:anywhere}
.saved-year{font-size:11px;color:#798376}
.saved-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:12px}
.saved-actions a{font-weight:700;color:#315c4c;text-decoration:underline}
.remove-saved{border:1px solid #cbd5c8;border-radius:4px;background:#fff;color:#3e5843;padding:8px 10px;font-size:12px;font-weight:600}
.saved-status{font-size:12px;color:#506d56;line-height:1.5;margin:10px 0 0}
.saved-status:empty{display:none}
.results-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}
.results-bar .status{margin:0}
.save-all{background:#fff;border:1px solid #b9c6b6;color:#31533b;padding:12px 15px;white-space:nowrap}
.save-movie{width:100%;margin-top:13px;padding:11px;border:1px solid #c7d5c5;border-radius:4px;background:#fff;color:#355b40;font-weight:700;font-size:12px}
.save-movie[aria-pressed=true]{background:#e3f0df;border-color:#92ae91}
.save-all:focus-visible,.save-movie:focus-visible,.remove-saved:focus-visible{outline:3px solid #bd8f45;outline-offset:2px}
@media(max-width:760px){.saved-panel{padding:20px}.saved-row,.results-bar{align-items:flex-start;flex-direction:column}.saved-actions{width:100%}.results-bar .save-all{white-space:normal}}
.zoom-large .saved-row,.zoom-large .results-bar{align-items:flex-start;flex-direction:column}
.section-intro>div,.ending>div{min-width:0;max-width:100%}
.section-intro h2,.ending h2{overflow-wrap:anywhere}

/* Bring the shortlist closer and add a little movie-night character. */
.setup{padding-bottom:22px}
.discover{padding-top:28px}
.recommend-bar{gap:24px;background:#fbefdd;border:1px solid #e9d6ba;border-radius:6px;padding:20px 28px}
.recommend-copy{display:flex;align-items:center;gap:18px;min-width:0}
.recommend-copy>div{min-width:0}
.recommend-popcorn{display:block;width:96px;height:96px;flex:0 0 96px;object-fit:contain;filter:drop-shadow(0 5px 5px #8c5c3526)}
.recommend-bar strong{font-size:22px;font-weight:600;color:#27382d}
.recommend-bar p{color:#617062}
.result-tools{display:flex;align-items:center;justify-content:flex-end;gap:16px;flex-wrap:wrap}
.saved-link{font-size:12px;font-weight:700;color:#315c4c;text-decoration:underline}
.saved-link:focus-visible{outline:3px solid #bd8f45;outline-offset:3px}
.save-feedback{margin:-8px 0 16px}
.saved-panel{margin:30px 0 0;scroll-margin-top:20px}
@media(max-width:760px){.recommend-bar{padding:18px}.recommend-copy{gap:12px}.recommend-popcorn{width:72px;height:72px;flex-basis:72px}.result-tools{justify-content:flex-start}}
.zoom-large .recommend-bar{padding:18px}
.zoom-large .recommend-popcorn{width:56px;height:56px;flex-basis:56px}
@media(max-width:480px){.zoom-large .recommend-copy{align-items:flex-start;flex-direction:column;gap:8px}}

/* Five-star ratings remain keyboard accessible and wrap at larger zoom levels. */
.star-control{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;max-width:100%}
.star-rating{display:flex;align-items:center;flex-wrap:wrap;max-width:100%}
.chip .star-button,.card .star-button{display:grid;place-items:center;min-width:32px;min-height:40px;padding:0 2px;border:1px solid transparent;border-radius:5px;background:transparent;color:#65776a;font-size:24px;line-height:1}
.chip .star-button.is-filled,.card .star-button.is-filled{color:#986411}
.chip .star-button[aria-pressed=true],.card .star-button[aria-pressed=true]{background:#f9e9c3;border-color:#c39b55}
.star-button:focus-visible{outline:3px solid #bd8f45;outline-offset:2px}
.star-value{font-size:11px;line-height:1.35;color:#526656}
.card .star-control{margin-top:5px}
.card .card-actions{margin-top:8px}
