/*
Theme Name: Drive-in Cinema Club - Volledig Beheerbaar V4
Theme URI: https://newsensemedia.nl
Author: New Sense Media
Description: One-page WordPress thema voor Drive-in Cinema Club. Volledig beheerbaar via Drive-in Club menu en Customizer, met verbeterde typografie en responsive filmkaarten.
Version: 4.5.12
Text Domain: drive-in-cinema-club
*/
@font-face{font-family:'Evogria';src:url('assets/brand/fonts/Evogria.otf') format('opentype');font-display:swap}
@font-face{font-family:'Brush Script DICC';src:url('assets/brand/fonts/Brush Script.ttf') format('truetype');font-display:swap}
@font-face{font-family:'Arial Narrow DICC';src:url('assets/brand/fonts/Arial Narrow.ttf') format('truetype');font-display:swap}
@font-face{font-family:'Arial Narrow DICC';src:url('assets/brand/fonts/Arial Narrow Bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{
  --pink:#e01873;--pink2:#ff4c95;--gold:#f1a21c;--cream:#fff7d7;--soft-cream:#f7edc1;--dark:#07030b;--line:#e01873;
  --font-display:'Evogria','Impact',sans-serif;--font-script:'Brush Script DICC','Brush Script MT',cursive;--font-body:'Arial Narrow DICC','Arial Narrow',Arial,sans-serif;--overlay:.72;--dicc-bg:none;
  --logo-max:320px;--hero-title-size:104px;--hero-script-size:86px;--menu-size:22px;--button-size:26px;
  --section-title-size:29px;--film-title-size:24px;--info-title-size:17px;--info-text-size:15px;--body-text-size:19px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;background:#05040a;color:var(--cream);font-family:var(--font-body);overflow-x:hidden;width:100%}.site-bg{min-height:100vh;background-image:linear-gradient(180deg,rgba(5,3,12,.40),rgba(15,4,12,.66) 48%,rgba(12,3,10,.86) 100%),linear-gradient(90deg,rgba(10,4,14,.68),rgba(6,4,15,.52)),var(--dicc-bg);background-size:cover;background-position:center top;background-attachment:fixed;overflow-x:clip}.container{width:min(100% - 72px,1720px);margin-inline:auto}
.site-header{display:flex;align-items:flex-start;justify-content:space-between;gap:52px;padding:22px 0 6px}.logo-link{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}.site-logo-img,.custom-logo{width:min(var(--logo-max),24vw);height:auto;max-height:200px;object-fit:contain;filter:drop-shadow(0 10px 20px rgba(0,0,0,.38))}.fallback-logo{font-family:var(--font-display);font-size:50px;line-height:.85;color:var(--cream);text-shadow:3px 3px 0 #000,-1px -1px 0 var(--pink);transform:rotate(-3deg);display:inline-block}.fallback-logo span{display:block;font-size:22px;letter-spacing:1px;text-align:center}
.nav-wrap{display:flex;align-items:flex-start;gap:34px;min-width:0;justify-content:space-between;flex:1;padding-top:2px;position:relative}.menu-toggle{display:none;appearance:none;border:0;background:transparent;padding:10px 0 10px 10px;margin-left:auto;cursor:pointer}.menu-toggle span{display:block;width:30px;height:3px;border-radius:99px;background:var(--cream);margin:0 0 6px}.menu-toggle span:last-child{margin-bottom:0}.main-nav{min-width:0}.main-nav ul{list-style:none;margin:8px 0 0;padding:0;display:flex;gap:56px;align-items:center;flex-wrap:wrap;justify-content:center}.main-nav a{color:var(--soft-cream);font-size:var(--menu-size);font-weight:400;text-transform:uppercase;text-decoration:none;letter-spacing:.01em;padding-bottom:10px;border-bottom:3px solid transparent;white-space:nowrap}.main-nav a:hover,.main-nav .current-menu-item>a{color:var(--pink2);border-bottom-color:var(--pink)}.ticket-top{display:inline-flex;align-items:center;gap:14px;border:4px solid var(--gold);border-bottom-color:var(--pink);border-left-color:var(--pink2);border-radius:20px;padding:15px 26px;background:rgba(20,9,7,.84);color:var(--cream);text-decoration:none;font-family:var(--font-display);font-size:clamp(24px,2vw,34px);line-height:1;text-transform:uppercase;box-shadow:0 0 18px rgba(255,156,36,.18);white-space:nowrap;min-width:306px;justify-content:center}.ticket-icon{display:inline-flex;align-items:center;justify-content:center}.ticket-icon-image{width:44px;height:auto;display:block}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,520px);gap:46px;align-items:center;min-height:470px;padding:0 0 24px}.hero.no-visual{grid-template-columns:1fr}.hero-copy{max-width:760px;padding-left:138px;padding-top:18px;min-width:0}.hero-title-image-wrap{max-width:620px;margin-bottom:8px}.hero-title-image{display:block;width:100%;height:auto;filter:drop-shadow(0 8px 16px rgba(0,0,0,.45))}.kicker{font-family:var(--font-display);font-size:clamp(72px,7.8vw,var(--hero-title-size));line-height:.84;text-transform:uppercase;letter-spacing:.03em;margin:0;color:#fff8d8;text-shadow:4px 4px 0 #050505,7px 7px 0 rgba(56,10,28,.95);transform:rotate(-2deg);transform-origin:left center;max-width:680px}.script{font-family:var(--font-script);font-style:normal;text-transform:none;display:block;color:#de1d72;font-size:clamp(78px,6vw,var(--hero-script-size));line-height:.72;text-shadow:2px 2px 0 #13050b;letter-spacing:-.045em;margin-top:14px;margin-left:-10px}.underline{width:min(700px,78vw);max-width:100%;height:18px;border-radius:999px;background:#db1874;transform:rotate(-2.8deg);margin:10px 0 18px -4px}.lead{font-size:clamp(18px,1.55vw,var(--body-text-size));font-weight:400;line-height:1.2;max-width:430px;margin:0 0 26px;color:#fff2cf;letter-spacing:-.01em;text-shadow:0 1px 1px rgba(0,0,0,.35)}.actions{display:none;gap:26px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:72px;padding:0 34px;border:4px solid var(--pink);border-radius:18px;text-decoration:none;font-size:var(--button-size);font-weight:400;text-transform:uppercase;background:rgba(18,7,13,.78);color:var(--cream);transition:.2s ease;white-space:nowrap;letter-spacing:0}.btn:hover{transform:translateY(-2px);box-shadow:0 0 20px rgba(224,24,115,.45)}.btn-primary{background:var(--pink);border-color:var(--pink);color:white}.hero-visual{justify-self:center;width:100%;max-width:520px}.hero-visual img{display:block;width:100%;height:auto;border:12px solid #05050b;box-shadow:0 22px 35px rgba(0,0,0,.65);object-fit:cover}.screen{width:100%;aspect-ratio:16/9;margin:0 auto;border:14px solid #05050b;background:linear-gradient(180deg,#8040b8,#150d2e 58%,#090913);box-shadow:0 22px 35px rgba(0,0,0,.65);position:relative;overflow:hidden}.screen:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 10%,rgba(255,255,255,.25) 0 1px,transparent 2px),linear-gradient(to top,rgba(255,196,115,.45),transparent 35%);background-size:90px 80px,100% 100%}.couple{position:absolute;left:34%;bottom:0;width:190px;height:150px;background:radial-gradient(circle at 32% 19%,#111 0 19px,transparent 20px),radial-gradient(circle at 70% 16%,#111 0 19px,transparent 20px),linear-gradient(90deg,transparent 0 18%,#111 19% 43%,transparent 44% 55%,#111 56% 80%,transparent 81%);opacity:.95}
.feature-bar{border:4px solid var(--line);border-radius:22px;background:rgba(16,4,13,.42);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:18px auto 28px;overflow:hidden;box-shadow:0 0 22px rgba(224,24,115,.18);backdrop-filter:blur(2px)}.feature{min-height:154px;padding:24px 22px 18px;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;border-right:2px solid rgba(255,249,216,.68)}.feature:last-child{border-right:0}.feature-ico{font-size:35px;color:var(--pink);line-height:1;margin-bottom:14px;min-height:56px;display:flex;align-items:center;justify-content:center}.feature-ico-image{max-width:48px;max-height:48px;width:auto;height:auto;display:block}.feature h3{font-family:var(--font-body);font-weight:700;font-size:var(--info-title-size);letter-spacing:.03em;line-height:1.05;margin:0 0 6px;text-transform:uppercase;color:var(--soft-cream);text-shadow:none}.feature p{margin:0;font-size:var(--info-text-size);font-weight:400;line-height:1.08;color:#fff3d7;max-width:30ch}.feature .tiny-btn{margin-top:12px;min-height:36px;padding:0 14px;border-width:2px;border-radius:9px;font-size:15px}
.films-panel{border:3px solid var(--line);border-radius:16px;background:rgba(18,1,17,.76);display:grid;grid-template-columns:280px minmax(0,1fr);gap:28px;align-items:start;padding:20px 22px;margin-bottom:35px}.films-intro h2,.content-section h2{font-family:var(--font-body);font-size:var(--section-title-size);font-weight:700;line-height:1.1;margin:0 0 20px;text-transform:uppercase;color:var(--cream);letter-spacing:.14em}.films-intro .btn{min-height:48px;font-size:calc(var(--button-size) - 3px);border-radius:10px;padding:0 18px;white-space:normal;text-align:center}.agenda-location-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:16px}.film-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;min-width:0}.film-card{position:relative;min-height:268px;border:1px solid rgba(255,255,255,.65);border-radius:8px;overflow:hidden;background-image:linear-gradient(180deg,rgba(10,7,14,.1),rgba(6,4,9,.84) 72%),linear-gradient(135deg,rgba(224,24,115,.28),rgba(16,73,128,.34)),var(--poster);background-color:#25192c;background-size:cover;background-position:center;box-shadow:inset 0 -120px 90px rgba(0,0,0,.78);display:flex;align-items:flex-end;padding:108px 18px 18px}.date-badge{position:absolute;top:10px;left:16px;width:76px;height:76px;border:3px solid var(--pink);border-radius:50%;background:#0b0710;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--font-display);box-shadow:0 0 11px rgba(224,24,115,.75);z-index:2}.date-badge span:first-child{font-size:15px}.date-badge strong{font-size:33px;line-height:.78}.date-badge span:last-child{font-size:15px}.film-info{position:relative;z-index:1;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end;min-width:0}.film-copy{min-width:0}.film-title-wrap{min-width:0}.film-info h3{font-family:var(--font-body);font-weight:600;font-size:var(--film-title-size);letter-spacing:.03em;line-height:1.08;margin:0;text-transform:uppercase;text-shadow:2px 2px 0 #000;overflow-wrap:anywhere}.film-info small{display:block;font-size:13px;font-weight:500;text-transform:uppercase;color:#ffd8a6;letter-spacing:.1em;margin-top:8px}.film-location-name{display:block;font-size:14px;font-weight:400;line-height:1.2;color:#fff3d7;margin-top:6px}.film-summary{margin:10px 0 0;font-size:14px;font-weight:400;line-height:1.45;color:#fff5df;max-width:34ch}.film-actions{display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex:0 0 auto}.mini-ticket{flex:0 0 auto;border:3px solid var(--pink);background:#180812;border-radius:8px;padding:10px 14px;font-size:16px;font-weight:600;line-height:1;text-transform:uppercase;color:var(--cream);text-decoration:none;white-space:nowrap;align-self:end;max-width:190px;overflow:hidden;text-overflow:ellipsis}.mini-ticket:hover{background:var(--pink)}.mini-location{background:rgba(255,255,255,.06);border-color:#ffd38b;color:#fff0c4;text-transform:none;align-self:flex-start;max-width:none;cursor:pointer}.mini-location:hover,.mini-location.is-active{background:rgba(255,211,139,.18)}.film-empty{margin:0;padding:18px 0;font-size:16px;line-height:1.5;color:#fff3d7}
.content-section{margin:0 auto 34px;border:3px solid var(--line);border-radius:16px;background:rgba(14,1,14,.67);padding:30px}.content-section h2{margin-bottom:12px}.content-section p{font-size:var(--body-text-size);font-weight:400;line-height:1.6;margin:0;max-width:920px;color:#fff6df}.site-footer{padding:28px 0 45px;text-align:center;color:rgba(255,249,216,.7)}.footer-copy a{color:var(--cream)}
@media(max-width:1300px){.container{width:min(100% - 42px,1380px)}.site-header{flex-wrap:wrap}.site-logo-img,.custom-logo{width:min(var(--logo-max),250px)}.nav-wrap{width:100%;justify-content:space-between}.main-nav ul{gap:22px}.ticket-top{font-size:29px;min-width:280px}.hero{grid-template-columns:1fr;padding-top:10px}.hero-copy{padding-left:92px;padding-top:0}.hero-visual{display:none}.feature-bar{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.feature{border-bottom:1px solid rgba(255,249,216,.22)}.films-panel{grid-template-columns:1fr}.film-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}
@media(max-width:980px){body.mobile-menu-open{overflow:hidden}.site-bg{background-attachment:scroll;background-position:center top}.container{width:min(100% - 28px,900px)}.site-header{align-items:center;gap:18px;padding:18px 0 6px}.site-logo-img,.custom-logo{max-height:110px;width:min(var(--logo-max),220px)}.nav-wrap{width:auto;flex:1 1 auto;justify-content:flex-end;align-items:center;gap:14px;padding-top:0}.menu-toggle{display:block;position:relative;z-index:30}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(10,5,12,.96);border:2px solid rgba(224,24,115,.8);border-radius:18px;padding:18px 18px 12px;box-shadow:0 18px 36px rgba(0,0,0,.45);z-index:25}.nav-wrap.is-open .main-nav{display:block}.main-nav ul{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin:0}.main-nav a{font-size:20px;padding-bottom:0;border-bottom:0}.ticket-top{font-size:20px;line-height:1;padding:14px 18px;min-width:0;width:auto;max-width:220px}.ticket-top span:first-child{display:block;transform:translateY(1px)}.ticket-icon-image{width:30px}.hero{min-height:0;padding-top:6px}.hero-copy{padding-left:0;padding-top:0}.hero-title-image-wrap{max-width:100%;margin-left:0}.kicker{font-size:clamp(48px,16vw,62px);max-width:100%}.script{font-size:clamp(42px,14vw,58px);margin-top:8px;margin-left:-2px}.underline{width:min(360px,86vw);height:16px;margin:4px 0 16px 4px}.lead{font-size:min(var(--body-text-size),21px);max-width:300px;line-height:1.18}.actions{display:flex;gap:14px}.btn{font-size:min(var(--button-size),20px);min-height:56px;white-space:normal;text-align:center;width:100%;max-width:300px}.feature-bar,.film-grid{grid-template-columns:1fr}.feature{border-right:0;border-bottom:1px solid rgba(255,249,216,.36)}.feature:last-child{border-bottom:0}.films-panel,.content-section{padding:22px}.agenda-location-links{gap:8px}.film-card{min-height:256px}.film-info{grid-template-columns:1fr}.film-actions{align-items:flex-start}.mini-ticket{display:inline-flex;margin-top:2px;justify-self:start;max-width:none}.film-info h3{font-size:min(var(--film-title-size),25px)}.film-summary{max-width:none}}
@media(max-width:720px){.container{width:min(100% - 28px,620px)}.site-header{align-items:flex-start}.nav-wrap{align-items:flex-start}.ticket-top{max-width:250px}.hero-copy{padding-left:0}.actions{gap:12px}}
