@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap');
@font-face{font-family:Fifties;src:url('../fonts/fifties-movies.ttf') format('truetype');font-display:swap}:root{--cream:#fff0d2;--paper:#fff8e9;--orange:#e98b35;--rust:#b93625;--brown:#54291f;--ink:#30251f;--gold:#f4bd59}*{box-sizing:border-box}body{font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--paper)}a{color:inherit}.site-nav{background:var(--paper);padding:14px 0;position:relative;z-index:5;border-bottom:1px solid #ead8bb}.navbar-brand img{width:170px;max-height:58px;object-fit:contain}.nav-link{font-weight:700;margin:0 9px}.btn{border-radius:5px;font-weight:700;padding:12px 20px}.btn-rust{background:var(--rust);color:white;border:1px solid var(--rust)}.btn-rust:hover{background:#8e291e;color:white}.btn-cream{background:var(--cream);color:var(--brown);margin-top:16px}.hero{background:var(--orange);padding:22px;position:relative;overflow:hidden}.hero-paper{min-height:570px;background:radial-gradient(ellipse at center,#f2a64d 0,#d96e32 65%,#ae3327 100%);position:relative;isolation:isolate}.hero-paper:before{content:"";position:absolute;inset:-30%;z-index:-1;background:repeating-conic-gradient(from -8deg at 50% 50%,#fff2d01c 0deg 10deg,transparent 10deg 20deg)}.hero-content{padding:92px 8% 100px;position:relative;color:#fff0d2}.eyebrow{font-size:.75rem;letter-spacing:.18em;font-weight:800;color:#9b432b}.hero .eyebrow{color:#ffebc5}.hero h1{font:clamp(3.5rem,9vw,7.5rem)/.9 Fifties,Impact,sans-serif;letter-spacing:.015em;margin:24px 0;color:#fff0d2;max-width:850px}.hero h1 em{font-style:normal;color:#ffe1a2}.hero p{font-size:clamp(1rem,2vw,1.35rem);max-width:520px}.hero-stamp{position:absolute;right:12%;bottom:60px;border:2px solid #ffebc5;border-radius:50%;width:118px;height:118px;display:grid;place-content:center;text-align:center;font:2rem Fifties;transform:rotate(12deg);color:#ffebc5}.hero-stamp small{font:700 .55rem 'DM Sans';letter-spacing:.15em}.hero-tape{background:#f7bc61;color:#7d3323;text-align:center;padding:12px;font-weight:800;letter-spacing:.18em;font-size:.8rem}.section{padding-top:88px;padding-bottom:88px}.section-cream{background:#f6e4c5}.section-heading h2{font:clamp(2.4rem,5vw,4.4rem)/.98 Fifties,sans-serif;color:var(--brown);margin:12px 0}.section-heading p{color:#766258}.info-card{height:100%;padding:28px;background:#fff8e9;border:1px solid #e9d5b7;box-shadow:6px 6px 0 #e7c99e;display:flex;flex-direction:column;gap:8px}.info-card i{font-size:1.4rem;color:var(--rust)}.info-card small{color:#846d5d}.info-card strong{font-size:1.3rem}.location strong{font-size:1.05rem}.topic-row{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}.topic-row span{border:1px solid #d9b88b;border-radius:40px;padding:13px 20px;font-weight:700}.topic-row i{color:var(--rust);margin-right:7px}.module-card{background:#fff8e9;border:1px solid #e4cda9;padding:34px;height:100%;box-shadow:8px 8px 0 #e7c99e}.module-orange{background:#f1b85f}.module-icon{width:56px;height:56px;border-radius:50%;background:var(--rust);color:white;display:grid;place-items:center;font-size:1.35rem;margin-bottom:24px}.module-card h3,.merch-copy h3{font:2.5rem Fifties;color:var(--brown)}.module-card p{max-width:390px;color:#6f5a4c;min-height:52px}.merch-image{width:100%;max-height:620px;object-fit:contain;mix-blend-mode:multiply}.merch-copy{max-width:450px}.pill{display:inline-block;background:#f4c36e;color:#753321;padding:7px 14px;border-radius:30px;font-size:.72rem;font-weight:800;letter-spacing:.1em}.merch-copy h3{font-size:3.4rem;margin:18px 0}.merch-copy ul{padding-left:20px;line-height:1.9}.price-line{display:flex;justify-content:space-between;border-bottom:1px dashed #c6a783;padding:12px 0}.section-rust{background:linear-gradient(130deg,#a92f24,#c94b2c);color:#fff1d7}.section-rust h2{font:clamp(2.7rem,5vw,4.8rem)/.95 Fifties;margin:20px 0}.section-rust .eyebrow{color:#ffd48d}.registration-note{margin:35px 0;display:flex;flex-direction:column}.registration-note b{font:3rem Fifties}.registration-note small{letter-spacing:.1em;text-transform:uppercase}.certificate-link{display:inline-block;color:#ffdda3;text-decoration:none;border-bottom:1px solid #ffdda3;padding-bottom:5px}.certificate-link i{margin-right:8px}.form-paper{background:#fff8e9;color:var(--ink);padding:clamp(24px,4vw,42px);box-shadow:9px 9px 0 #76291f}.form-paper h3{font:2.1rem Fifties;margin-bottom:25px}.form-paper label{display:block;font-size:.83rem;font-weight:800;margin:15px 0 7px}.form-paper input,.form-paper textarea,.form-paper select{width:100%;border:1px solid #d9c6a8;background:#fffdf7;padding:12px 14px;border-radius:3px;outline-color:var(--orange)}.form-hint{display:block;text-align:center;margin-top:12px;color:#87786b}.site-footer{background:#f4bd67;padding:26px 0;color:#733324}.site-footer img{width:145px;max-height:50px;object-fit:contain}.site-footer a{font-weight:700;text-decoration:none;margin:0 9px}.order-wrap{padding-top:65px;padding-bottom:90px;min-height:75vh}.order-wrap .form-paper{box-shadow:8px 8px 0 #e3c28f;border:1px solid #e7d4b5}.order-success{margin-top:25px;background:#f4e6cc;padding:26px;border-left:5px solid #31804d}.order-success h3{font:2rem Fifties;margin:12px 0}.order-success h4{font-weight:800}.order-success small{display:block;margin-top:12px;color:#6d5b4c}
/* Admin */.admin-body{background:#f5eee2;min-height:100vh}.admin-side{position:fixed;inset:0 auto 0 0;width:245px;background:#382b26;color:#f9e9ce;padding:25px 18px;display:flex;flex-direction:column;z-index:10}.admin-brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:800;margin-bottom:42px}.admin-brand img{width:54px;height:46px;object-fit:contain;background:white;border-radius:5px}.admin-brand small{display:block;font-size:.6rem;letter-spacing:.15em;color:#eab86b}.admin-side nav{display:grid;gap:7px}.admin-side nav a,.side-logout{padding:12px 14px;text-decoration:none;border-radius:5px;color:#e9d9c2;font-weight:600}.admin-side nav a i,.side-logout i{width:24px}.admin-side nav a.active,.admin-side nav a:hover{background:#b63b29;color:white}.side-logout{margin-top:auto}.admin-main{margin-left:245px;padding:35px;max-width:1600px}.admin-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.admin-top small{color:#8b7564}.admin-top h1{font:2.5rem Fifties;color:#54291f;margin:4px 0}.admin-user{font-weight:700}.stat-card,.panel{background:#fffaf0;border:1px solid #ead9bf;padding:22px;border-radius:7px;box-shadow:0 3px 12px #6040200b}.stat-card small{display:block;color:#897567}.stat-card strong{display:block;font-size:2rem;color:#a83b29}.panel{margin-bottom:22px}.table{--bs-table-bg:transparent;font-size:.9rem}.table thead th{background:#f2e4cd;color:#694333;white-space:nowrap}.table td{vertical-align:middle}.admin-form{background:#fffaf0;padding:25px;border:1px solid #ead9bf;border-radius:7px}.admin-form label{font-weight:700;font-size:.85rem;margin:12px 0 6px}.admin-form input,.admin-form textarea,.admin-form select{width:100%;padding:10px;border:1px solid #ddcbb1;background:#fffdf8}.login-wrap{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle,#e9a34b,#a93527)}.login-card{width:min(420px,92vw);background:#fff8e9;padding:38px;box-shadow:10px 10px 0 #6f291f}.login-card img{width:145px;display:block;margin:0 auto 20px}.login-card h1{text-align:center;font:2.4rem Fifties;color:#54291f}.login-card label{display:block;font-weight:700;margin:15px 0 6px}.login-card input{width:100%;padding:12px;border:1px solid #d9c6a8}.report-head{text-align:center;border-bottom:2px solid #333;padding-bottom:15px;margin-bottom:20px}.report-head img{width:100px}.print-only{display:none}@media(max-width:767px){.hero{padding:10px}.hero-content{padding:65px 25px 100px}.hero-stamp{width:80px;height:80px;right:8%;bottom:18px;font-size:1.4rem}.section{padding-top:60px;padding-bottom:60px}.site-footer .container{flex-direction:column;text-align:center}.admin-side{position:static;width:100%;padding:12px;display:block}.admin-brand{margin:0 0 10px}.admin-side nav{display:flex;overflow:auto}.admin-side nav a{white-space:nowrap;font-size:.8rem}.side-logout{display:block;margin-top:8px}.admin-main{margin:0;padding:18px}.admin-top{align-items:flex-start;gap:12px;flex-direction:column}.admin-top h1{font-size:2rem}}
@media print{.admin-side,.admin-top,.no-print,.alert{display:none!important}.admin-main{margin:0;padding:0;max-width:none}.print-only{display:block}.panel{box-shadow:none;border:0}.table{font-size:10pt}.table th,.table td{padding:5px}}
