:root{--ink:#090908;--paper:#f4f0e8;--muted:#c8c1b7;--line:rgba(244,240,232,.23)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ink);color:var(--paper);font-family:Georgia,'Times New Roman',serif;margin:0}a{color:inherit;text-decoration:none}.hero{isolation:isolate;min-height:min(54rem,100vh);overflow:hidden;position:relative}.hero-photo,.hero-shade{inset:0;position:absolute}.hero-photo{background:url('horsebox-wedding-evening.png') center/cover no-repeat;z-index:-2}.hero-shade{background:linear-gradient(90deg,rgba(5,5,5,.96) 0%,rgba(5,5,5,.84) 27%,rgba(5,5,5,.32) 59%,rgba(5,5,5,.13) 100%),linear-gradient(0deg,rgba(5,5,5,.62),transparent 35%);z-index:-1}.site-header,footer{align-items:center;display:flex;font-family:Arial,sans-serif;justify-content:space-between;letter-spacing:.14em;padding:1.4rem clamp(1.5rem,4vw,4rem);position:relative;text-transform:uppercase;z-index:2}.wordmark{font-size:.86rem;font-weight:800;letter-spacing:.17em;line-height:1.18}.wordmark small{display:block;font-size:.62rem;letter-spacing:.24em;margin-top:.3rem}.site-header nav,footer nav{display:flex;gap:2.15rem}.site-header nav a,footer nav a{font-size:.67rem;font-weight:700}.site-header nav a:first-child{border-bottom:1px solid var(--paper);padding-bottom:.35rem}.nav-book{border:1px solid var(--paper);font-size:.68rem;font-weight:800;padding:.85rem 1.25rem}.nav-book span,.button span{font-size:1.2em;margin-left:.7rem}.hero-content{max-width:31rem;padding:clamp(3rem,8vh,6rem) clamp(1.5rem,5vw,5rem) 4rem;position:relative}.hero-logo{display:block;margin-bottom:1.7rem;width:clamp(13rem,20vw,20rem)}h1,h2{font-weight:900;letter-spacing:-.045em;line-height:.94;margin:0}.hero h1{font-size:clamp(2.6rem,4.2vw,4.45rem);max-width:28rem}.hero-lead{font-size:clamp(1.05rem,1.4vw,1.35rem);line-height:1.32;margin:1.4rem 0 1.55rem;max-width:22rem}.button{background:var(--paper);color:var(--ink);display:inline-block;font-family:Arial,sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.18em;padding:1.05rem 1.45rem;text-transform:uppercase}.hero-contact{display:grid;gap:.55rem;margin-top:1.7rem}.hero-contact a{font-size:.94rem}.hero-contact a:before{color:var(--paper);content:'✦';font-size:.75rem;margin-right:.85rem}.menu-section,.events,.contact{padding:clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,5rem)}.menu-section{text-align:center}.kicker{font-family:Arial,sans-serif;font-size:.7rem;font-weight:800;letter-spacing:.24em;margin:0 0 1rem;text-transform:uppercase}.menu-section h2,.events h2,.contact h2{font-size:clamp(2.3rem,4.5vw,4.4rem)}.section-intro{color:var(--muted);font-size:1.12rem;margin:1rem auto 3.1rem}.pizza-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(5,minmax(0,1fr));margin:0 auto;max-width:82rem}.pizza-card{margin:0}.pizza-card img{aspect-ratio:1;border-radius:50%;display:block;object-fit:cover;width:100%}.pizza-card h3{font-size:1rem;font-weight:400;line-height:1.2;margin:1rem auto 0;max-width:11rem}.pizza-card h3 span{margin-right:.25rem}.events{border-top:1px solid var(--line);max-width:80rem}.events h2{max-width:44rem}.events-copy{font-size:1.2rem;line-height:1.35;max-width:42rem}.event-list{columns:2;font-size:1.12rem;line-height:1.68;list-style:none;margin:1.7rem 0 2rem;padding:0}.event-list li:before{content:'✓';font-family:Arial,sans-serif;font-weight:800;margin-right:1.3rem}.pizza-strip{display:grid;grid-template-columns:repeat(3,1fr)}.pizza-strip img{aspect-ratio:2/1;display:block;object-fit:cover;width:100%}.contact{border-bottom:1px solid var(--line);display:grid;gap:3rem;grid-template-columns:1.1fr 1fr}.contact h2{margin-bottom:1.6rem}.contact a{display:block;font-size:1.1rem;margin:.6rem 0}.contact a:before{content:'✦';font-size:.75rem;margin-right:.85rem}.contact-note{align-self:end;border-left:1px solid var(--line);padding-left:clamp(2rem,6vw,6rem)}.contact-note p:last-child{color:var(--muted);font-size:1.08rem;line-height:1.4;max-width:20rem}footer{padding-bottom:2rem;padding-top:2rem}@media(max-width:760px){.hero{min-height:48rem}.hero-photo{background-position:60% center}.hero-shade{background:linear-gradient(90deg,rgba(5,5,5,.96) 0%,rgba(5,5,5,.76) 64%,rgba(5,5,5,.3) 100%),linear-gradient(0deg,rgba(5,5,5,.75),transparent 45%)}.site-header{padding:1.25rem 1.3rem}.site-header nav{display:none}.nav-book{font-size:.58rem;padding:.7rem .8rem}.hero-content{padding:2.8rem 1.5rem}.hero-logo{width:14rem}.hero h1{font-size:2.65rem}.pizza-grid{grid-template-columns:repeat(2,1fr);max-width:30rem}.pizza-card:last-child{grid-column:1 / span 2;justify-self:center;width:calc(50% - .625rem)}.pizza-card h3{font-size:1.05rem}.event-list{columns:1}.contact{grid-template-columns:1fr}.contact-note{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:2rem}footer{align-items:flex-start;gap:2rem;flex-direction:column}footer nav{flex-wrap:wrap;gap:1rem 1.6rem}.pizza-strip img{aspect-ratio:1/1}.hero-lead{font-size:1.12rem}}

/* Hero refinement: give the new heading room and move the horsebox clear of it. */
.hero-photo{transform:translateX(15vw);mask-image:linear-gradient(to right,transparent,#000 18%)}
.hero-content{max-width:43rem}
.hero h1{max-width:33rem;margin-bottom:1.55rem}
@media(max-width:760px){.hero-photo{background-position:35% center;transform:translateX(10vw)}.hero-content{max-width:35rem}}

/* Desktop refinement: the photograph remains the hero backdrop at every width. */
.site-header{justify-content:center}
.hero-photo{background-position:center center;transform:none;mask-image:none;-webkit-mask-image:none}
.hero-content{padding-top:clamp(2.5rem,6vh,4.5rem)}
.hero-logo{width:clamp(15.5rem,24vw,24rem)}
.section-intro{line-height:1.45;max-width:48rem}
.events{padding-bottom:clamp(5rem,9vw,8rem)}
@media(max-width:760px){.site-header{display:none}.hero-photo{background-position:52% center;transform:none}.hero-logo{width:15rem}}

