/* MOVIEMALL's own visual language: a warm, editorial film journal. */
.site-page{
  color-scheme:light;
  --bg:#f1ede4;--panel:#fbf8f0;--panel-2:#e7e0d3;--ink:#18312e;--muted:#5d6e68;
  --line:#18312e1c;--line-strong:#18312e35;--accent:#ad6545;--accent-ink:#fffaf2;--violet:#71617b;
  background:var(--bg);color:var(--ink)
}
.site-page .site-header{height:78px;padding-inline:clamp(22px,6vw,96px);gap:42px;border-color:#18312e20;background:#f5f0e7ed;box-shadow:0 8px 24px #263a3210;backdrop-filter:blur(18px)}
.site-page .brand{gap:10px;color:#18312e;font:700 14px/1 var(--display);letter-spacing:.105em}
.site-page .brand-light{color:#ad6545;font-weight:500}
.site-page .brand-mark{width:32px;height:32px;border:1px solid #18312e;border-radius:3px;background:#18312e;color:#f2eadd;font:500 17px Georgia,serif;box-shadow:3px 3px 0 #ad654533}
.site-page .main-nav{gap:30px}
.site-page .nav-link{position:relative;color:#64736d;font-size:11px}
.site-page .nav-link:hover,.site-page .nav-link.is-active{color:#18312e}
.site-page .nav-link.is-active:after{content:"";position:absolute;right:0;bottom:-11px;left:0;height:1px;background:#ad6545}
.site-page .search-box{height:38px;border-color:#18312e29;border-radius:2px;background:#fffdf7;color:#52655e}
.site-page .search-box input{color:#18312e;font-size:11px}
.site-page .search-box input::placeholder{color:#7b8881}
.site-page .admin-shortcut{color:#52655e;font-size:10px}
.site-page .avatar{border-color:#18312e;background:#c28a66;color:#fff8ef}
.site-page .hero{min-height:468px;padding:64px clamp(26px,9vw,145px) 76px;border-color:#18312e1a;background:#e8e1d5}
.site-page .hero:after{background:linear-gradient(90deg,#e8e1d5 0,#e8e1d5 40%,#e8e1d500 73%);}
.site-page .hero-texture{inset:0 0 0 auto;width:47%;overflow:hidden;clip-path:ellipse(89% 100% at 91% 50%);background:radial-gradient(ellipse at 74% 31%,#617b6d 0,transparent 25%),linear-gradient(145deg,#264944,#17332f 70%,#102723)}
.site-page .hero-ghost{right:6%;top:50%;color:#efe3ca20;font:500 clamp(170px,27vw,350px)/.8 Georgia,serif;letter-spacing:-.13em}
.site-page .hero-orbit{right:6%;border-color:#eadfca24}
.site-page .orbit-two{right:calc(6% + 55px);border-color:#eadfca20}
.site-page .hero-copy{width:min(560px,60%);color:#18312e}
.site-page .eyebrow{color:#9c573c;font-size:9px;letter-spacing:.19em}
.site-page .eyebrow-muted{color:#8a725f}
.site-page .live-dot{background:#ad6545;box-shadow:0 0 0 4px #ad65451c}
.site-page .hero h1{margin:21px 0 15px;color:#18312e;font:500 clamp(43px,6.2vw,76px)/1.02 Georgia,'Times New Roman',serif;letter-spacing:-.055em}
.site-page .hero-meta{color:#52655e;font-size:11px}
.site-page .meta-sep{background:#ad6545}
.site-page .meta-badge{border-color:#18312e43;border-radius:2px;color:#18312e}
.site-page .hero-description{max-width:440px;color:#52655e;font-size:13px;line-height:1.8}
.site-page .hero-buttons{gap:10px;margin-top:24px}
.site-page .button{min-height:42px;border-radius:2px;font-size:11px}
.site-page .button-primary{background:#ad6545;color:#fffaf2;box-shadow:3px 3px 0 #18312e24}
.site-page .button-glass{border-color:#18312e55;background:#ffffff4a;color:#18312e}
.site-page .button-glass:hover{background:#fffdf2}
.site-page .hero-footnote{color:#6e7c74;font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.site-page .hero-index{right:clamp(26px,7vw,105px);color:#e7dcc8;font-size:9px;letter-spacing:.12em}
.site-page .hero-index span:first-child{color:#d6a37b}
.site-page .hero-index i{background:#e7dcc87a}
.site-page .browse-wrap,.site-page .list-wrap{padding:59px clamp(22px,7vw,106px) 31px}
.site-page .browse-heading{margin-bottom:28px}
.site-page .browse-heading h2,.site-page .list-heading h2{color:#18312e;font:500 32px/1.15 Georgia,'Times New Roman',serif;letter-spacing:-.035em}
.site-page .filter-pills{gap:3px;padding:4px;border-color:#18312e24;border-radius:2px;background:#fffaf4}
.site-page .filter-pill{height:33px;padding-inline:15px;border-radius:1px;color:#63736d;font-size:10px}
.site-page .filter-pill:hover{color:#18312e}
.site-page .filter-pill.is-selected{background:#18312e;color:#f5efe3}
.site-page .results-label{margin-bottom:15px;color:#718078;font-size:10px;letter-spacing:.02em}
.site-page .results-rule{background:#18312e22}
.site-page .catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 19px}
.site-page .catalog-card{padding-bottom:5px}
.site-page .poster{aspect-ratio:.73;border:1px solid #18312e2b;border-radius:2px;background:var(--poster-bg);box-shadow:4px 5px 0 #18312e13;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.site-page .poster:before{background:radial-gradient(ellipse at 72% 22%,#fff5,transparent 29%),linear-gradient(165deg,transparent 25%,#111d1933 58%,#111d19ed 100%)}
.site-page .poster:after{top:5px;right:9px;color:#f7ecda32;font:500 clamp(54px,8vw,100px)/1 Georgia,serif;letter-spacing:-.1em}
.site-page .poster-violet{--poster-bg:radial-gradient(ellipse at 68% 26%,#a897a4 0,transparent 32%),linear-gradient(143deg,#6a5966,#343b3a 60%,#1d302c)}
.site-page .poster-ember{--poster-bg:radial-gradient(ellipse at 68% 26%,#d39a72 0,transparent 30%),linear-gradient(143deg,#a76e50,#514039 57%,#23332f)}
.site-page .poster-ocean{--poster-bg:radial-gradient(ellipse at 68% 26%,#96b1ad 0,transparent 32%),linear-gradient(143deg,#547d7c,#35484a 58%,#1d302f)}
.site-page .poster-moss{--poster-bg:radial-gradient(ellipse at 68% 26%,#a8b08c 0,transparent 30%),linear-gradient(143deg,#78846b,#445247 58%,#23312d)}
.site-page .poster-rose{--poster-bg:radial-gradient(ellipse at 68% 26%,#d09a94 0,transparent 31%),linear-gradient(143deg,#96646a,#56444c 58%,#2b3030)}
.site-page .poster-gold{--poster-bg:radial-gradient(ellipse at 68% 26%,#dfc17d 0,transparent 29%),linear-gradient(143deg,#a58a58,#5a5746 58%,#29332e)}
.site-page .catalog-card:hover .poster{transform:translate(-2px,-4px);border-color:#ad6545;box-shadow:6px 8px 0 #ad654523}
.site-page .poster-type{color:#f0c99f;font-size:8px;letter-spacing:.16em}
.site-page .poster-info strong{font:500 clamp(14px,1.45vw,18px)/1.13 Georgia,'Times New Roman',serif;letter-spacing:-.02em}
.site-page .card-title-row{gap:8px;margin-top:11px}
.site-page .card-title-row strong{color:#18312e;font-size:11px;font-weight:700}
.site-page .card-year{color:#79847d;font-size:9px}
.site-page .card-subtitle{color:#69776f;font-size:9px}
.site-page .empty-state{border-color:#18312e3d;border-radius:2px;color:#65746e}
.site-page .empty-state h3{color:#18312e;font:500 19px Georgia,serif}
.site-page .empty-icon{color:#ad6545}
.site-page .list-wrap{margin-top:32px;padding-top:37px;padding-bottom:63px;border-top:1px solid #18312e20;background:#e8e1d5}
.site-page .list-heading h2{font-size:28px}
.site-page .list-heading>p{color:#69776f;font-size:10px}
.site-page .site-footer{grid-template-columns:auto minmax(220px,1fr) auto;gap:28px;padding:27px clamp(22px,7vw,106px);border-color:#ffffff20;background:#18312e;color:#d5ddd2}
.site-page .footer-brand{color:#f3ede1;font-size:12px}
.site-page .footer-brand .brand-mark{border-color:#d6af83;background:#d6af83;color:#18312e;box-shadow:none}
.site-page .footer-brand .brand-light{color:#d6af83}
.site-page .site-footer p{color:#c0cbc1;font-size:9px}
.site-page .site-footer>div{color:#c0cbc1;font-size:9px}
.site-page .site-footer>div a{color:#e3bb91}
.site-page .watch-dialog{border-color:#d8c8ad;background:#f2ede3;box-shadow:0 26px 90px #101c19aa}
.site-page .watch-dialog-head{border-color:#18312e1a}
.site-page .modal-brand{color:#18312e}
.site-page .watch-dialog .brand-mark{border-color:#18312e;background:#18312e;color:#f2eadd;box-shadow:none}
.site-page .watch-dialog .icon-button{border-color:#18312e32;background:#fffaf2;color:#18312e}
.site-page .modal-content h2{color:#18312e;font:500 28px Georgia,'Times New Roman',serif}
.site-page .modal-content .hero-meta,.site-page .modal-description{color:#52655e}
.site-page .watch-dialog .button-glass{border-color:#18312e50;background:transparent;color:#18312e}
.site-page .text-link{color:#9b573d}
.site-page .toast{border-color:#18312e;background:#18312e;color:#f5efe3}
@media(max-width:1000px){.site-page .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.site-page .hero{min-height:440px}}
@media(max-width:720px){
  .site-page .site-header{height:67px;padding-inline:16px;gap:14px}
  .site-page .main-nav{gap:13px}
  .site-page .nav-link{font-size:10px}
  .site-page .search-box{height:33px;min-width:116px}
  .site-page .hero{min-height:455px;padding:53px 22px 64px}
  .site-page .hero-texture{width:62%;opacity:.46;clip-path:ellipse(88% 100% at 100% 50%)}
  .site-page .hero:after{background:linear-gradient(90deg,#e8e1d5 0,#e8e1d5e8 42%,#e8e1d580 100%)}
  .site-page .hero-copy{width:min(500px,94%)}
  .site-page .hero h1{font-size:clamp(42px,10vw,63px)}
  .site-page .hero-description{max-width:360px;font-size:12px}
  .site-page .browse-wrap,.site-page .list-wrap{padding:42px 18px 23px}
  .site-page .browse-heading{align-items:flex-start;flex-direction:column;gap:16px}
  .site-page .browse-heading h2,.site-page .list-heading h2{font-size:27px}
  .site-page .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 13px}
  .site-page .poster-info{right:10px;bottom:11px;left:10px}
  .site-page .poster-info strong{font-size:14px}
  .site-page .card-title-row strong{font-size:10px}
  .site-page .site-footer{grid-template-columns:1fr;gap:13px;padding:23px 18px}
}
@media(max-width:390px){.site-page .main-nav{gap:9px}.site-page .nav-link{font-size:9px}.site-page .admin-shortcut{display:none}.site-page .search-box{min-width:96px}.site-page .hero{min-height:430px}}

/* UHD / 4K displays: scale the interface while keeping a readable content width. */
@media(min-width:2000px){
  .site-page .site-header{height:96px;padding-inline:max(6vw,120px);gap:58px}
  .site-page .brand{font-size:18px;gap:13px}
  .site-page .brand-mark{width:42px;height:42px;font-size:22px}
  .site-page .main-nav{gap:38px}
  .site-page .nav-link{font-size:14px}
  .site-page .search-box{height:46px;min-width:260px;padding-inline:14px}
  .site-page .search-box input,.site-page .admin-shortcut{font-size:13px}
  .site-page .avatar{width:40px;height:40px;font-size:15px}
  .site-page .hero{min-height:680px;padding:100px max(9vw,180px) 112px}
  .site-page .hero-copy{width:min(850px,58%)}
  .site-page .hero h1{font-size:clamp(78px,4.2vw,116px)}
  .site-page .eyebrow{font-size:12px}
  .site-page .hero-meta{font-size:15px}
  .site-page .hero-description{max-width:650px;font-size:18px}
  .site-page .button{min-height:54px;padding-inline:23px;font-size:14px}
  .site-page .hero-footnote{font-size:11px}
  .site-page .hero-index{font-size:12px}
  .site-page .browse-wrap,.site-page .list-wrap{max-width:3400px;margin-inline:auto;padding:88px 88px 42px}
  .site-page .browse-heading{margin-bottom:40px}
  .site-page .browse-heading h2,.site-page .list-heading h2{font-size:44px}
  .site-page .filter-pill{height:42px;padding-inline:20px;font-size:13px}
  .site-page .results-label{margin-bottom:21px;font-size:13px}
  .site-page .catalog-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:38px 24px}
  .site-page .poster{border-width:2px;box-shadow:6px 7px 0 #18312e13}
  .site-page .poster-info{right:17px;bottom:18px;left:17px}
  .site-page .poster-info strong{font-size:clamp(18px,1vw,25px)}
  .site-page .poster-type{font-size:10px}
  .site-page .card-title-row{margin-top:14px}
  .site-page .card-title-row strong{font-size:14px}
  .site-page .card-year,.site-page .card-subtitle{font-size:12px}
  .site-page .list-wrap{margin-top:48px;padding-top:52px;padding-bottom:88px}
  .site-page .list-heading>p{font-size:12px}
  .site-page .site-footer{padding:38px max(calc((100vw - 3224px)/2),max(6vw,88px));gap:42px}
  .site-page .site-footer p,.site-page .site-footer>div{font-size:12px}
}
@media(min-width:3200px){
  .site-page .site-header{height:108px}
  .site-page .hero{min-height:800px}
  .site-page .hero h1{font-size:clamp(112px,4vw,150px)}
  .site-page .hero-description{font-size:20px}
  .site-page .catalog-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:42px 26px}
}

/* Owner sign-in for the shared catalog. */
.admin-login{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:#0d0b0af2;backdrop-filter:blur(15px)}
.admin-login[hidden]{display:none}
.admin-login-card{width:min(440px,100%);display:grid;gap:16px;padding:38px;border:1px solid #d6b8783b;border-radius:13px;background:linear-gradient(145deg,#191411,#100e0c);box-shadow:0 28px 90px #000b}
.admin-login-card .brand{margin-bottom:10px}
.admin-login-card .eyebrow{margin:0}
.admin-login-card h1{margin:0;color:#f4eadb;font:500 34px/1.1 Georgia,'Times New Roman',serif}
.login-copy{margin:0;color:#b7ab99;font-size:12px;line-height:1.7}
.admin-login-card .field{display:grid;gap:8px;color:#ded1be;font-size:11px}
.admin-login-card input{height:44px;padding:0 12px;border:1px solid #f4e6d23a;border-radius:6px;background:#0d0b0a;color:#fff7eb}
.admin-login-card .button{width:100%;min-height:44px}
.admin-login-card .text-link{justify-self:center;color:#d6b878;font-size:11px}
.login-message{min-height:18px;margin:0;color:#c9ae7a;font-size:10px;line-height:1.55}
@media(min-width:2000px){.admin-login-card{width:min(560px,100%);gap:20px;padding:48px}.admin-login-card h1{font-size:44px}.login-copy{font-size:15px}.admin-login-card .field{font-size:13px}.admin-login-card input{height:54px;font-size:15px}.login-message{font-size:12px}}
