:root{--green:#173c2d;--deep:#0d2119;--cream:#f5efe3;--paper:#fbf8f1;--ink:#18231e;--gold:#c8a56a;--line:rgba(23,60,45,.18);--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}.site-header{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:18px 5vw;background:rgba(251,248,241,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.08em;font-size:.82rem}.brand:first-letter{font-size:1.35rem}nav{display:flex;gap:26px;align-items:center;font-size:.86rem;font-weight:600}nav a:hover{text-decoration:underline;text-underline-offset:5px}.nav-cta{background:var(--green);color:var(--cream);padding:10px 17px;border-radius:999px}.hero{padding:0 3vw 3vw}.hero-image{min-height:650px;display:flex;align-items:flex-end;padding:7vw;border-radius:0 0 28px 28px;color:#fff;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(8,25,18,.9),rgba(8,25,18,.25) 65%),linear-gradient(135deg,#365b47,#173c2d 55%,#10281e)}.hero-image:after{content:"CHEESY MONKEY";position:absolute;right:-50px;top:45px;font-family:"Playfair Display",serif;font-size:clamp(4rem,12vw,10rem);opacity:.055;transform:rotate(90deg)}.hero-image>div{max-width:720px;position:relative;z-index:1}.eyebrow,.kicker{font-size:.72rem;letter-spacing:.18em;font-weight:700;text-transform:uppercase}.hero h1,h2{font-family:"Playfair Display",Georgia,serif;line-height:1.02;margin:18px 0}.hero h1{font-size:clamp(3.2rem,7vw,6.5rem);letter-spacing:-.04em}em{color:var(--gold);font-style:normal}.hero p{font-size:1.15rem;max-width:570px;color:#f2eee6}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:30px}.button{display:inline-block;border-radius:999px;padding:14px 23px;font-weight:700;font-size:.9rem}.light{background:var(--cream);color:var(--green)}.darkbtn{background:var(--green);color:var(--cream)}.text-link{font-weight:600}.section{padding:100px 7vw}.intro,.events,.gallery{max-width:var(--max);margin:auto}.intro-grid,.events,.dates-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.intro h2,.heading h2,.events h2,.dates h2,.contact h2{font-size:clamp(3rem,6vw,5.7rem);letter-spacing:-.04em}.intro h2 span{color:#8b978e}.copy{font-size:1.08rem;max-width:540px}.dark{background:var(--green);color:var(--cream)}.gold{color:#d5bf91}.heading{max-width:650px;margin-bottom:45px}.heading h2{margin-top:12px}.heading p{color:#d8ddd7;max-width:560px}.pizza-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.pizza-grid article{background:#f4eee3;color:var(--ink);border-radius:18px;overflow:hidden}.card-image{height:300px}.card-copy{padding:22px 23px 26px}.card-copy h3{font-family:"Playfair Display",serif;font-size:1.55rem;margin:0 0 6px}.card-copy p{margin:0;color:#59645e}.placeholder{position:relative;background-color:#263e32;background-image:radial-gradient(circle at 20% 20%,rgba(200,165,106,.22),transparent 26%),radial-gradient(circle at 80% 70%,rgba(255,255,255,.08),transparent 30%);display:flex;align-items:center;justify-content:center}.placeholder span{border:1px solid rgba(255,255,255,.35);padding:8px 12px;color:rgba(255,255,255,.7);font-size:.65rem;letter-spacing:.15em;font-weight:700}.events>div:first-child{max-width:570px}.events p{font-size:1.05rem}.event-photo{min-height:560px;border-radius:22px;overflow:hidden}.gallery-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-template-rows:240px 240px;gap:14px}.gallery-grid>div{border-radius:16px;overflow:hidden}.tall{grid-row:span 2}.wide{grid-column:span 2}.dates{padding-top:90px;padding-bottom:90px}.date-list{border-top:1px solid rgba(245,239,227,.25)}.date-item{display:grid;grid-template-columns:90px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid rgba(245,239,227,.25)}.date-item>span{font-weight:700;color:var(--gold);letter-spacing:.08em}.date-item strong{display:block;font-family:"Playfair Display",serif;font-size:1.35rem}.date-item small{display:block;color:#cbd3cc;margin-top:3px}.contact{max-width:900px;margin:auto;text-align:center}.contact h2{margin-bottom:25px}.contact p{font-size:1.15rem;max-width:650px;margin:0 auto 30px}.social{display:flex;justify-content:center;gap:20px;margin:25px 0;font-weight:700}.contact small{color:#78827d;font-size:.72rem}footer{background:var(--deep);color:#bfc8c2;padding:30px 6vw;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.75rem}footer strong{color:var(--cream);letter-spacing:.08em}@media(max-width:800px){nav a:not(.nav-cta){display:none}.hero-image{min-height:620px;padding:10vw 7vw}.hero h1{font-size:clamp(3rem,14vw,5rem)}.section{padding:75px 7vw}.intro-grid,.events,.dates-grid{grid-template-columns:1fr;gap:45px}.pizza-grid{grid-template-columns:1fr}.card-image{height:270px}.event-photo{min-height:420px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:220px 220px 220px}.tall{grid-row:auto}.wide{grid-column:span 2}footer{flex-direction:column}}

/* Contact action row */
.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 8px}.outlinebtn{border:1px solid currentColor;background:transparent;color:inherit}.outlinebtn:hover{background:rgba(0,0,0,.06)}


/* Logo test deployment */
.brand img { width: 42px; height: 42px; object-fit: cover; border-radius: 50%; display: block; }
footer strong { display: inline-flex; align-items: center; gap: 10px; }
footer strong img { width: 34px; height: 34px; object-fit: cover; border-radius: 50%; vertical-align: middle; }
