:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#17243b;background:#f0f4f8}*{box-sizing:border-box}body{margin:0}.wrap{max-width:940px;margin:auto;padding:20px}.brand{display:flex;align-items:center;gap:14px;margin:10px 0 25px}.brand small{display:block;color:#5d6980}.mark{color:#fff;background:#14528d;padding:12px;font-weight:900;border-radius:8px}.hero{background:linear-gradient(130deg,#0f477b,#174d76 60%,#27677d);color:#fff;border-radius:18px;padding:30px;margin-bottom:20px}.hero h1{font-size:clamp(32px,6vw,48px);margin:10px 0}.eyebrow{letter-spacing:2px;font-weight:800;font-size:12px}.facts{display:grid;gap:9px;margin-top:22px}.card{background:white;border-radius:18px;padding:clamp(20px,4vw,36px);margin:20px 0;box-shadow:0 8px 35px #13345d12}.card h1,.card h2{margin-top:0}.muted,small{color:#61718a}.fine{font-size:12px;line-height:1.5}form label:not(.radio){display:block;font-weight:650;margin:17px 0 7px}input,select,textarea{display:block;width:100%;padding:12px;margin-top:6px;border-radius:8px;border:1px solid #b9c7d7;background:#fff;color:#152a41;font:inherit}input:focus,select:focus,textarea:focus{outline:2px solid #227ac2}fieldset{border:1px solid #d6dfeb;border-radius:10px;margin:18px 0;padding:16px}legend{font-weight:700}.radio{display:inline-flex;align-items:center;margin-right:24px;gap:7px}.radio input{width:auto;margin:0}span{color:#ad3443}.amount{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#edf4fa;padding:18px;border-radius:10px;margin:20px 0}.amount small{display:block}.amount>strong{font-size:27px;color:#135281}button,.button{display:inline-block;background:#145c9a;color:#fff;border:0;padding:13px 18px;border-radius:8px;font:inherit;font-weight:750;cursor:pointer;text-decoration:none}form>button{width:100%}.secondary{background:#e9eff5;color:#163c5a}.small{padding:8px 12px}.inline{margin:3px}.alert{padding:13px;background:#fff0ef;color:#8b2929;border-radius:8px}.notice{padding:15px;background:#eaf3fa;border-radius:9px}.success{color:#17633c;font-weight:800}.light{background:#f0f5fa;padding:18px;border-radius:9px}.narrow{max-width:500px;margin:auto}.split{display:flex;justify-content:space-between;align-items:start;gap:10px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.stats>div{padding:16px;border-radius:9px;background:#eaf2f8}.stats strong{display:block;font-size:27px}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{padding:10px;border-bottom:1px solid #ddd;text-align:left;vertical-align:top}td small{overflow-wrap:anywhere}.pay{min-width:180px}.pay input,.pay select{padding:7px;margin:4px 0}.guest{background:#f4f7fa;border-radius:10px;padding:15px;margin:12px 0}.flyer{text-align:center;border:6px double #14528d}.flyer h1{font-size:clamp(38px,8vw,70px);color:#14528d;margin:15px}.flyer h2{color:#174d76}.flyer .eyebrow{color:#174d76}.flyer .qr{width:min(250px,80%);image-rendering:pixelated}.flyer .place{font-size:22px}.flyer small{overflow-wrap:anywhere}.printcontrols{text-align:center}footer{text-align:center;color:#66768a;font-size:12px;margin:30px 0}footer a{color:#275b93}@media(max-width:600px){.stats{grid-template-columns:repeat(2,1fr)}.wrap{padding:12px}.hero{padding:22px}}@media print{body{background:white}.brand,footer,.printcontrols{display:none}.card{box-shadow:none;margin:0}.wrap{max-width:none}.flyer{min-height:95vh;display:flex;flex-direction:column;align-items:center;justify-content:center}}

/* Holiday flyer — print-ready, intentionally rendered using HTML/CSS so its QR stays live. */
.flyer-festive{position:relative;overflow:hidden;margin:20px auto;width:min(100%,780px);min-height:960px;padding:30px 48px 32px;text-align:center;background:radial-gradient(circle at 50% 12%,#a41c28 0%,#750812 48%,#330207 100%);color:#fff;border:12px solid #111;outline:4px solid #b81725;outline-offset:-18px;box-shadow:0 12px 45px #18000042}
.flyer-festive:before{content:"";position:absolute;inset:18px;border:2px solid #ffffffa0;pointer-events:none}
.flyer-festive .flyer-snow{letter-spacing:6px;color:#fff2e5;font-size:24px}.flyer-festive .bottom{position:absolute;bottom:15px;left:0;width:100%;font-size:16px}
.festive-branch{font-size:21px;letter-spacing:3px;font-weight:900;margin-top:28px}.festive-branch span{font-size:12px;color:#ffe5e7;letter-spacing:2px;font-weight:750}
.festive-ribbon{display:inline-block;margin:20px 0 6px;background:#fff;color:#97121b;padding:8px 28px;font-size:12px;letter-spacing:4px;font-weight:900;transform:rotate(-2deg)}
.festive-icon{font-size:26px;letter-spacing:16px;margin:8px 0;color:#fff}
.flyer-festive h1{font-family:Georgia,serif;font-weight:900;line-height:1.05;letter-spacing:2px;font-size:clamp(40px,8vw,76px);margin:12px 0 14px;text-shadow:3px 5px 0 #200103}.flyer-festive h1 em{font-style:normal;font-size:.72em}
.festive-lead{font-family:Georgia,serif;font-style:italic;font-size:20px;margin:0 0 25px}
.festive-event{display:grid;gap:8px;border-top:2px solid #fff;border-bottom:2px solid #fff;padding:18px 8px}.festive-event b{font-size:19px;letter-spacing:1.5px}.festive-event strong{font-size:28px}.festive-event span{color:#fff;font-size:17px;font-weight:800;letter-spacing:1px}
.festive-bottom{display:grid;grid-template-columns:1fr 190px;align-items:center;gap:28px;margin:25px 0 10px;text-align:left}.festive-price{display:grid;gap:14px}.festive-price strong{font-size:15px;letter-spacing:1.5px;display:flex;justify-content:space-between;gap:12px}.festive-price span{color:#fff;white-space:nowrap;font-size:17px}.festive-sub{font-size:12px;color:#fff2f2}.festive-deadline{padding:13px 8px;background:#fff;color:#8e0713;font-weight:1000;text-align:center;letter-spacing:1px;font-size:17px}.festive-scan{background:#fff;color:#111;border-radius:4px;text-align:center;padding:9px}.festive-scan img{display:block;width:100%;height:auto;image-rendering:pixelated}.festive-scan b{display:block;margin-top:6px;font-size:12px;letter-spacing:1px}.festive-url{font-weight:800;letter-spacing:2px;padding:8px}.dupeform{min-width:175px}.dupeform input,.dupeform select{padding:7px;margin:5px 0}
@media(max-width:650px){.flyer-festive{padding:22px 26px;min-height:0}.festive-bottom{grid-template-columns:1fr;gap:14px;text-align:center}.festive-scan{max-width:200px;margin:auto}.flyer-festive .bottom{position:static;margin-top:8px}.festive-price strong{font-size:14px}}
@media print{@page{size:letter portrait;margin:0}.wrap{padding:0;margin:0}.flyer-festive{width:8.5in;height:11in;min-height:0;margin:0;border-width:9px;padding:25px 42px;box-shadow:none;print-color-adjust:exact;-webkit-print-color-adjust:exact;page-break-inside:avoid}.flyer-festive .bottom{position:absolute}.flyer-festive h1{font-size:67px}.festive-bottom{grid-template-columns:1fr 190px}.festive-scan{width:190px}body{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
