/*
Theme Name: Chuck & Blade Christmas Group Bookings
Theme URI: https://chuckandbladeburgers.com/
Author: Chuck & Blade Burgers
Description: A simple Christmas group booking page with secure enquiry handling and location-based manager notifications.
Version: 1.6.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: cb-christmas
*/
:root{--black:#090909;--paper:#f4ead4;--cream:#fffaf0;--yellow:#ffc400;--red:#a51e22;--green:#1e603e}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--black);font-family:Arial,Helvetica,sans-serif;line-height:1.5}img{display:block;max-width:100%;height:auto}a{color:inherit}.wrap{width:min(1120px,calc(100% - 40px));margin:auto}
.site-header{background:var(--black);border-bottom:5px solid var(--yellow)}.header-row{min-height:125px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{width:150px}.home-link{display:inline-block;color:var(--black);background:var(--yellow);padding:13px 18px;text-decoration:none;text-transform:uppercase;font-weight:900;letter-spacing:.04em;border:2px solid var(--yellow)}.home-link:hover,.home-link:focus{background:#fff;outline:3px solid #fff;outline-offset:3px}
.intro{padding:70px 0}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.eyebrow{display:inline-block;background:var(--yellow);padding:6px 11px;font-size:.8rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}h1,h2,h3{font-family:Impact,'Arial Black',sans-serif;text-transform:uppercase;line-height:.95;margin:0}h1{font-size:clamp(3.4rem,7vw,6.2rem);margin:17px 0 22px}h1 span,h2 span{color:var(--red)}.lead{font-size:1.22rem}.facts{display:grid;gap:12px;margin-top:27px}.fact{background:var(--cream);border:2px solid var(--black);padding:17px 19px;box-shadow:5px 5px 0 var(--black)}.fact strong{display:block;text-transform:uppercase}.tray-photo{border:8px solid #fff;box-shadow:12px 12px 0 var(--yellow);aspect-ratio:1/1.08;object-fit:cover}
.menu{background:var(--black);color:#fff;padding:70px 0}.section-heading{text-align:center;margin-bottom:34px}.section-heading h2{font-size:clamp(3rem,6vw,5rem);margin:10px 0}.section-heading p{max-width:700px;margin:0 auto;font-size:1.1rem}.menu-image{width:min(860px,100%);margin:auto;border:3px solid var(--yellow)}
.booking{padding:78px 0}.booking-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:48px;align-items:start}.booking-copy h2{font-size:clamp(3rem,6vw,5rem);margin:14px 0 24px}.booking-copy p{font-size:1.12rem}.small-party{border-left:5px solid var(--red);padding:3px 0 3px 17px;margin-top:27px}.small-party a{color:#7c1317;font-weight:900}.form-card{background:var(--cream);border:3px solid var(--black);padding:36px;box-shadow:10px 10px 0 var(--yellow)}.form-title{font-size:2.4rem;margin-bottom:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}.field.full{grid-column:1/-1}label{display:block;font-size:.78rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;margin-bottom:7px}input,select{width:100%;min-height:52px;border:2px solid var(--black);background:#fff;padding:11px 13px;font:inherit;border-radius:0}input:focus,select:focus{outline:4px solid rgba(255,196,0,.55)}.required{color:var(--red)}.help{font-size:.84rem;color:#555;margin:6px 0 0}.honeypot{position:absolute!important;left:-9999px!important}.button{display:inline-block;border:2px solid var(--black);background:var(--yellow);color:var(--black);padding:17px 23px;font:inherit;font-weight:900;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;box-shadow:5px 5px 0 var(--black)}.button:hover,.button:focus{background:#fff;transform:translate(-1px,-1px)}.privacy{font-size:.8rem;color:#555;margin:17px 0 0}.notice{padding:16px;border:2px solid;margin-bottom:22px;font-weight:800}.notice.success{background:#dff3e6;border-color:var(--green)}.notice.error{background:#fde1df;border-color:var(--red)}
.site-footer{background:var(--black);color:#fff;padding:28px 0;text-align:center}.site-footer a{color:var(--yellow);font-weight:900}
@media(max-width:800px){.intro-grid,.booking-grid{grid-template-columns:1fr}.intro,.menu,.booking{padding:55px 0}.logo{width:120px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.form-card{padding:25px}.tray-photo{max-height:620px;width:100%;aspect-ratio:auto}.menu-image{width:100%}}
@media(max-width:480px){.wrap{width:min(100% - 26px,1120px)}.header-row{min-height:105px}.logo{width:96px}.home-link{font-size:.78rem;padding:11px 12px}h1{font-size:3.35rem}.form-title{font-size:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
