@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--red:#641e29;--ink:#28221e;--paper:#f8f5ee;--gold:#bba16c}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}a{color:inherit;text-underline-offset:5px}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #c18c36;outline-offset:5px}.top{background:var(--red);color:white;text-align:center;padding:8px 20px;font-size:13px;letter-spacing:.12em}header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 5%;border-bottom:1px solid #ded6c8}.brand{text-decoration:none;line-height:1.05;font-family:'Libre Caslon Display',Georgia,serif;font-size:31px}.brand small{display:block;font:11px 'DM Sans',sans-serif;letter-spacing:.25em;margin-top:10px}nav{display:flex;align-items:center;gap:26px}nav a{text-decoration:none;font-size:14px}nav a[aria-current=page]{border-bottom:1px solid var(--red)}.btn{display:inline-flex;justify-content:center;align-items:center;background:var(--red);color:white;padding:13px 24px;text-decoration:none;border:1px solid var(--red);font-size:14px;font-weight:600;cursor:pointer}.btn.light{background:var(--paper);color:var(--red);border-color:var(--paper)}.btn.outline{background:transparent;color:inherit;border-color:currentColor}.actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:25px}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.2em;font-weight:600;color:var(--red);margin:0 0 20px}h1,h2,h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:1.03;margin:0 0 24px}h1{font-size:clamp(54px,6.7vw,96px)}h2{font-size:clamp(38px,4.3vw,60px)}h3{font-size:32px}p{max-width:660px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:630px}.hero-copy{padding:75px 10% 65px}.hero-copy>p:not(.eyebrow){max-width:450px;color:#61574f}.hero-photo{position:relative;min-height:480px;background:#392e29}.hero-photo img{width:100%;height:100%;position:absolute;object-fit:cover}.photo-label{position:absolute;bottom:24px;left:25px;color:white;background:#281d18c9;padding:6px 12px;font-size:12px;letter-spacing:.08em}.strip{padding:24px 5%;display:flex;justify-content:space-around;gap:20px;background:#eae3d6;font-size:13px;text-transform:uppercase;letter-spacing:.12em}.section{padding:85px 7%;max-width:1500px;margin:auto}.intro{display:grid;grid-template-columns:1fr 1fr;gap:60px}.muted{color:#6d6259}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:35px}.card{border-top:1px solid #bcad96;padding:30px 0}.num{color:var(--red);font-size:13px;letter-spacing:.15em;margin-bottom:28px;display:block}.card a{font-size:14px;font-weight:600}.band{background:var(--red);color:var(--paper);padding:65px 7%;display:flex;align-items:center;justify-content:space-between;gap:40px}.band h2{margin:0}.band .eyebrow{color:#d8bd86}.page-head{max-width:1000px;padding:70px 7% 30px}.page-head h1{font-size:76px}.two{display:grid;grid-template-columns:1.25fr 1fr;gap:70px}.booking{padding:35px;background:#eae3d6;border-top:4px solid var(--red);align-self:start;scroll-margin-top:25px}.booking h3{font-size:38px}.booking p{font-size:15px}.room{display:grid;grid-template-columns:60px 1fr;gap:15px;border-bottom:1px solid #d9cebe;padding:24px 0}.room h3{margin:0 0 9px}.room p{margin:0}.details{margin-top:35px}details{padding:19px 0;border-bottom:1px solid #d9cebe}summary{cursor:pointer;font-weight:600}.event{display:grid;grid-template-columns:130px 1fr;gap:25px;padding:32px 0;border-top:1px solid #bcae96}.event h3{margin-bottom:12px}.event .day{color:var(--red);font-weight:600;text-transform:uppercase;font-size:14px;letter-spacing:.1em}.event p{margin:5px 0}footer{background:#27221e;color:#eee6d8;padding:55px 7% 24px}.footgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}.footgrid h3{font-size:30px}.footgrid p,.footgrid a{font-size:14px}.fine{font-size:12px!important;color:#b9ae9d;border-top:1px solid #584b3e;margin-top:35px;padding-top:22px;max-width:none}.menu-toggle{display:none}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:white;z-index:5;padding:10px}@media(max-width:900px){header{flex-wrap:wrap;padding:20px 6%}.menu-toggle{display:block;background:none;border:1px solid #bcae96;padding:8px 13px}nav{display:none;width:100%;flex-wrap:wrap;padding-top:15px;gap:20px}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:55px 7%}.hero-photo{min-height:420px}.intro,.two{grid-template-columns:1fr;gap:30px}.section{padding:55px 7%}.strip{flex-wrap:wrap;font-size:11px}.cards{grid-template-columns:1fr}.card{padding:25px 0}.num{margin-bottom:15px}.band{align-items:start;flex-direction:column}.footgrid{grid-template-columns:1fr}.page-head h1{font-size:58px}.event{grid-template-columns:1fr;gap:10px}}
.brand{display:flex;align-items:center;gap:15px;font-size:25px}.brand img{width:85px;height:85px;object-fit:contain}.dish{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid #ded6c8}.dish dd{margin:0;white-space:nowrap}.menu-section .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.full-menu{display:block;max-width:800px;width:100%;height:auto;margin:40px auto 0}.featured-event{grid-template-columns:minmax(200px,350px) 1fr;align-items:center;gap:50px}.event-poster{width:100%;height:auto;display:block}@media(max-width:900px){.brand{font-size:21px;gap:10px}.brand img{width:64px;height:64px}.brand small{font-size:9px;letter-spacing:.13em}.menu-section .cards,.featured-event{grid-template-columns:1fr}.event-poster{max-width:350px}}/* Room-led heritage design */
.stay-hero{position:relative;min-height:630px;display:flex;align-items:center;background:#292721;color:white;isolation:isolate}.hero-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 39%;z-index:-2}.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#131412e8,#13141288 52%,#13141216)}.stay-hero-copy{padding:70px 7%;width:850px;max-width:100%}.stay-hero-copy .eyebrow{color:#f0d6a1}.stay-hero h1{font-size:clamp(55px,6.8vw,98px);line-height:1.01}.stay-hero-copy>p:not(.eyebrow){max-width:530px;font-size:19px;color:#f1e9dd}.hero-footnote{position:absolute;right:4%;bottom:22px;font-size:13px;letter-spacing:.1em}.stay-strip{background:#eee8db;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 7%;border-bottom:1px solid #d8ccb7}.stay-strip div{display:flex;flex-direction:column}.stay-strip strong{font-size:15px;font-weight:600}.stay-strip span{font-size:13px;color:#6c5c4d}.stay-strip a{color:var(--red);font-size:15px;font-weight:600;text-decoration:none;border-left:1px solid #cabb9f;padding-left:30px}.stay-feature{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center}.stay-feature img{width:100%;height:490px;object-fit:cover}.text-link{font-weight:600;font-size:15px;display:inline-block;color:var(--red);text-underline-offset:7px}.rooms-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;align-items:center;padding:64px 7%}.rooms-intro h1{font-size:clamp(48px,5.5vw,78px)}.rooms-intro figure{margin:0}.rooms-intro img{display:block;width:100%;height:370px;object-fit:cover}.rooms-intro figcaption{font-size:13px;color:#736658;margin-top:10px}.rooms-intro .actions{align-items:center}.section-heading{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:35px}.section-heading p{max-width:450px}.room-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.room-option{background:#fffdf9;border:1px solid #ded3c1;padding:29px;display:flex;flex-direction:column}.room-top{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:22px}.room-top .eyebrow{white-space:nowrap;margin:0}.room-type{font-size:12px;color:#655746;border:1px solid #d9cdb9;padding:2px 8px;text-align:center}.room-option h3{font-size:35px}.room-option>p{font-size:16px;color:#6c6054}.room-option dl{font-size:14px;margin:auto 0 25px}.room-option dl>div{border-bottom:1px solid #e5dccf;padding:10px 0;display:flex;justify-content:space-between;gap:20px}.room-option dd{margin:0;text-align:right}.room-option dt{color:#796b5b}.room-help{background:var(--red);color:var(--paper);border-color:var(--red)}.room-help .eyebrow{color:#e4c793}.room-help>p{color:#f0e4d8}.room-help .btn{margin-top:auto;align-self:start}.booking-banner{background:#272822;color:#f8f0e0;display:grid;grid-template-columns:1.4fr 1fr;gap:65px;padding:65px 7%;scroll-margin-top:0}.booking-banner .eyebrow{color:#d7b67d}.booking-banner p{color:#d9d3c6}.booking-call{border-left:1px solid #81725b;padding-left:45px;align-self:center}.booking-call>span{font-size:14px}.booking-call>a{font-family:Georgia,serif;font-size:clamp(25px,3.1vw,45px);display:block;text-decoration:none;margin-top:15px;color:#f3d396}.booking-call p{font-size:14px}.stay-faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.stay-faq summary{padding-right:10px;min-height:28px}.stay-faq details p{font-size:16px}.food-scene,.music-scene{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center;padding-top:30px;padding-bottom:20px}.food-scene img,.music-scene img{width:100%;height:430px;object-fit:cover}.music-scene img{object-position:center 37%}.mobile-booking{display:none}.btn{min-height:48px}.menu-toggle{min-height:44px}h1,h2,h3{text-wrap:balance}html{scroll-behavior:smooth;scroll-padding-top:30px}header{padding:16px 4%;gap:18px}nav{gap:21px}.brand small{font-size:10px}.top{font-size:12px;padding:7px}.btn:hover{filter:brightness(1.12)}.video-wrap{max-width:650px}.video-wrap video{display:block;width:100%;max-height:640px;background:#25221d}.video-wrap figcaption{font-size:14px;color:#6c6054}
@media(min-width:901px) and (max-width:1200px){header{flex-wrap:wrap}nav{justify-content:space-between;width:100%}.room-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){body{padding-bottom:65px}header{padding:12px 5%}.brand img{width:56px;height:56px}.brand{font-size:20px}.stay-hero{min-height:620px}.stay-hero-copy{padding:65px 7% 85px}.stay-hero h1{font-size:64px}.hero-shade{background:linear-gradient(90deg,#151713db,#15171373)}.hero-background{object-position:61% center}.hero-footnote{left:7%;right:auto}.stay-strip{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:23px 7%}.stay-strip a{padding-left:0;border:0}.stay-feature,.rooms-intro,.stay-faq,.food-scene,.music-scene{grid-template-columns:1fr;gap:30px}.stay-feature img{height:300px}.rooms-intro{padding:45px 7%}.rooms-intro h1{font-size:55px}.rooms-intro img{height:270px}.section-heading{display:block}.room-options{grid-template-columns:1fr}.room-option{padding:26px}.booking-banner{grid-template-columns:1fr;gap:30px;padding:50px 7%}.booking-call{border-left:0;border-top:1px solid #81725b;padding:25px 0 0}.booking-call>a{font-size:35px}.food-scene img,.music-scene img{height:360px}.mobile-booking{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1.3fr 1fr;background:var(--red);z-index:20;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -2px 12px #0002}.mobile-booking a{padding:16px 10px;color:white;text-align:center;text-decoration:none;font-size:14px;font-weight:600}.mobile-booking a+a{border-left:1px solid #a66d76;background:#faf7f0;color:var(--red)}}
@media(max-width:380px){.brand span{font-size:17px}.brand small{letter-spacing:.03em}.stay-hero h1{font-size:53px}.stay-strip{grid-template-columns:1fr}.rooms-intro h1{font-size:47px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.karaoke-calendar{align-items:start}.karaoke-years{display:grid;grid-template-columns:1fr 1.35fr;gap:28px;margin-top:28px}.karaoke-years h4{font:400 24px/1.1 'Libre Caslon Display',Georgia,serif;margin:0 0 12px}.karaoke-dates{list-style:none;margin:0;padding:0;border-top:1px solid #c9bda9}.karaoke-dates li{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid #ded6c8;font-size:14px}.karaoke-dates strong{color:var(--red);font-size:12px;text-align:right}.karaoke-dates .new-year-date{background:#eee5d3;padding:12px 10px;border-left:3px solid var(--gold)}@media(max-width:900px){.karaoke-years{grid-template-columns:1fr}.karaoke-dates li{align-items:flex-start;flex-direction:column;gap:2px}.karaoke-dates strong{text-align:left}}

.offer-section{margin-top:70px;padding-top:55px;border-top:1px solid #bcae96}.offer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:28px}.offer-grid img{width:100%;height:auto;display:block}@media(max-width:900px){.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.offer-grid{grid-template-columns:1fr}}

/* Distinctive pub details and live booking */
.courtyard-callout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;background:#eee8db;max-width:none}.courtyard-callout h2,.courtyard-callout p{margin-top:0}.reviews{padding-top:65px;padding-bottom:65px}.resos-widget-shell{position:relative;overflow:hidden}.resos-widget-shell .resos-booking-widget{width:100%;margin-top:12px}.resos-powered{text-align:center;opacity:.65;font-size:12px;margin-top:10px}.resos-powered a{text-underline-offset:3px}.resos-widget-shell .muted{margin-top:22px;font-size:13px}.room-option h3{overflow-wrap:anywhere}
@media(max-width:900px){.courtyard-callout{grid-template-columns:1fr;gap:20px}.resos-widget-shell{padding:28px}.stay-strip{grid-template-columns:1fr 1fr}.page-head h1{font-size:clamp(48px,14vw,58px)}}
@media(max-width:520px){.stay-strip{grid-template-columns:1fr}.courtyard-callout{padding-top:48px;padding-bottom:48px}}

/* Red Horse rewards wheel */
.spin-open{overflow:hidden}.spin-launcher{position:fixed;right:18px;bottom:18px;z-index:35;border:0;background:#f4d79a;color:#40121a;padding:13px 19px;font-weight:700;box-shadow:0 7px 26px #0004;cursor:pointer}.spin-overlay{position:fixed;inset:0;z-index:50;background:#17110edb;padding:24px;overflow:auto}.spin-overlay[hidden]{display:none}.spin-dialog{position:relative;max-width:980px;min-height:570px;margin:4vh auto;background:var(--paper);display:grid;grid-template-columns:1fr 1fr;box-shadow:0 20px 70px #0007}.spin-copy{padding:55px}.spin-copy h2{font-size:clamp(43px,5vw,64px)}.spin-close{position:absolute;right:15px;top:12px;z-index:2;border:0;background:transparent;color:var(--ink);font-size:35px;line-height:1;cursor:pointer}.spin-form{display:grid;gap:14px;margin-top:25px}.spin-form label:not(.spin-consent):not(.spin-trap){display:grid;gap:5px;font-size:14px;font-weight:600}.spin-form input[type=text],.spin-form input[type=email],.spin-form input:not([type]){width:100%;border:1px solid #bcae96;background:#fffdf9;padding:12px;font:inherit}.spin-consent{display:grid;grid-template-columns:20px 1fr;gap:9px;font-size:13px;line-height:1.45}.spin-consent input{margin-top:4px}.spin-trap{position:absolute!important;left:-9999px!important}.spin-small{font-size:12px;line-height:1.45;color:#6d6259}.wheel-stage{background:var(--red);color:white;padding:55px 35px;display:grid;place-items:center;align-content:center;overflow:hidden}.prize-wheel{position:relative;width:min(350px,74vw);aspect-ratio:1;border-radius:50%;border:10px solid #f3dfb2;background:conic-gradient(#f4d79a 0 72deg,#933546 72deg 144deg,#e9c986 144deg 216deg,#7b2938 216deg 288deg,#f7e8c7 288deg 360deg);box-shadow:0 10px 35px #27060d80;transition:transform 3.2s cubic-bezier(.12,.67,.08,1)}.prize-wheel:after{content:"RED\A HORSE";white-space:pre;position:absolute;inset:37%;border-radius:50%;display:grid;place-items:center;text-align:center;background:#f8f5ee;color:var(--red);font:700 13px/1.1 Georgia,serif;border:4px solid #f3dfb2}.prize-wheel span{position:absolute;left:48%;top:4%;font-weight:800;color:#40121a;transform-origin:50% 165px}.prize-wheel span:nth-child(2){transform:rotate(72deg)}.prize-wheel span:nth-child(3){transform:rotate(144deg)}.prize-wheel span:nth-child(4){transform:rotate(216deg)}.prize-wheel span:nth-child(5){transform:rotate(288deg)}.wheel-pointer{font-size:27px;color:#f4d79a;line-height:1;margin-bottom:-7px;z-index:1}.wheel-key{width:100%;font-size:12px;line-height:1.4;margin:22px 0 0;padding-left:22px;columns:2;column-gap:24px}.wheel-key li{margin:0 0 7px;break-inside:avoid}.wheel-key strong{color:#f4d79a;margin-right:4px}.spin-result h3{font-size:38px}.spin-code{display:inline-block;font-size:24px;letter-spacing:.13em;border:2px dashed var(--red);padding:9px 14px;color:var(--red);background:#fff}.spin-result[hidden]{display:none}
@media(max-width:900px){.spin-launcher{bottom:78px}.spin-dialog{grid-template-columns:1fr;margin:0 auto}.spin-copy{padding:42px 28px 32px}.wheel-stage{padding:35px 22px}.wheel-key{columns:1}.prize-wheel span{transform-origin:50% 132px}.prize-wheel span:nth-child(2){transform:rotate(72deg)}.prize-wheel span:nth-child(3){transform:rotate(144deg)}.prize-wheel span:nth-child(4){transform:rotate(216deg)}.prize-wheel span:nth-child(5){transform:rotate(288deg)}}

/* Interactive wheel upgrade */
.spin-launcher span{display:inline-block;margin-right:5px;animation:spin-star 2.4s ease-in-out infinite}.spin-dialog{grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);overflow:hidden}.spin-copy{display:flex;flex-direction:column;justify-content:center}.spin-copy>[hidden]{display:none}.spin-copy h2{margin-bottom:16px}.spin-form .btn{margin-top:4px}.wheel-stage{position:relative;isolation:isolate;background:radial-gradient(circle at 50% 43%,#8c3041,#641e29 58%,#3f1119);min-height:570px}.wheel-stage:before{content:"";position:absolute;inset:18px;border:1px solid #d9b66c66;pointer-events:none}.wheel-lights{position:absolute;width:390px;max-width:88%;aspect-ratio:1;border-radius:50%;background:repeating-conic-gradient(#f7d991 0 5deg,transparent 5deg 14.4deg);filter:drop-shadow(0 0 6px #f8d77d);opacity:.7}.wheel-shell{position:relative;display:grid;place-items:center}.prize-wheel{width:min(370px,74vw);border-width:13px;transition:transform 3.35s cubic-bezier(.09,.68,.07,1);transform:rotate(-4deg)}.prize-wheel span{left:50%;top:50%;width:78px;text-align:center;font-size:13px;line-height:1.1;color:#351017;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-132px) rotate(var(--counter));transform-origin:center}.prize-wheel span:nth-child(n){transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-132px) rotate(var(--counter))}.prize-wheel:after{display:none}.wheel-button{position:absolute;width:104px;aspect-ratio:1;border-radius:50%;border:6px double #6e4a1d;background:linear-gradient(145deg,#fff2c8,#c99e4c);color:#4a1a21;font:700 17px Georgia,serif;text-transform:uppercase;letter-spacing:.09em;box-shadow:0 5px 18px #26050c99;cursor:pointer;z-index:3}.wheel-button:disabled{cursor:not-allowed;filter:grayscale(.45);opacity:.85}.wheel-stage.is-ready .wheel-button{animation:spin-pulse 1.15s ease-in-out infinite}.wheel-stage.is-ready .wheel-lights,.wheel-stage.is-spinning .wheel-lights{animation:lights-turn 3s linear infinite}.wheel-stage.is-spinning .wheel-button{animation:none}.wheel-stage.has-winner .wheel-button{background:linear-gradient(145deg,#fff6d8,#e6bb63)}.wheel-prompt{font-size:13px;text-transform:uppercase;letter-spacing:.12em;margin:22px 0 0;color:#f2dca9}.spin-steps{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}.spin-steps span{border:1px solid #c9bda9;padding:7px 10px;font-size:12px;color:#796c5b}.spin-steps .done{background:#e6dfd1}.spin-steps .active{background:var(--red);color:white;border-color:var(--red)}.email-status{font-size:14px;padding:10px 12px;margin-top:18px}.email-status.sent{background:#e4f0e4;color:#214b2b}.email-status.pending{background:#eee5d3;color:#5f4d29}.confetti{position:absolute;left:var(--x);top:-25px;width:9px;height:17px;z-index:6;animation:confetti-fall 3.5s var(--delay) ease-in forwards}.spin-result .btn{margin-top:10px}
@keyframes spin-star{50%{transform:rotate(18deg) scale(1.15)}}@keyframes spin-pulse{50%{transform:scale(1.08);box-shadow:0 5px 28px #f8db82cc}}@keyframes lights-turn{to{transform:rotate(360deg)}}@keyframes confetti-fall{to{transform:translateY(var(--fall)) rotate(620deg);opacity:0}}
@media(max-width:900px){.spin-dialog{grid-template-columns:1fr}.wheel-stage{min-height:530px}.wheel-lights{width:330px}.prize-wheel{width:min(315px,76vw)}.prize-wheel span:nth-child(n){transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-108px) rotate(var(--counter))}.wheel-button{width:90px}.spin-overlay{padding:10px}.spin-copy{min-height:430px}.spin-close{color:var(--ink)}}
@media(prefers-reduced-motion:reduce){.spin-launcher span,.wheel-stage.is-ready .wheel-button,.wheel-stage.is-ready .wheel-lights,.wheel-stage.is-spinning .wheel-lights{animation:none}.prize-wheel{transition-duration:.01ms}.confetti{display:none}}
.spin-form-status{min-height:1.4em;margin:0;color:#641e29;font-size:14px}
.hotel-booking-widget{align-self:center;min-width:0}.hotel-booking-widget iframe{display:block;width:100%;max-width:460px;background:#fff;border:0}.hotel-booking-widget .btn{margin-top:15px}.hotel-booking-widget p{font-size:13px;color:#d9d3c6}.hotel-booking-widget p a{color:#f3d396}
.hotel-booking-widget h3{font-size:38px;margin-bottom:18px}.hotel-booking-widget .eyebrow{color:#d7b67d}.booking-points{list-style:none;padding:0;margin:0 0 20px}.booking-points li{padding:9px 0;border-bottom:1px solid #81725b;color:#f2eadc}.booking-points li:before{content:"✓";color:#f3d396;margin-right:10px;font-weight:700}

/* Conversion, live hours and editorial refinements */
.top{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap}.top-status{border-left:1px solid #ffffff66;padding-left:16px;font-weight:700}.hero-menu-link{display:inline-block;margin-top:22px;color:#fff;font-weight:600;text-underline-offset:7px}.hours-status{background:#fffdf9;border-left:4px solid var(--red);padding:12px 15px;font-weight:700;color:var(--red)}.sunday-hero{display:grid;grid-template-columns:1.1fr .9fr;min-height:600px;background:#2d201c;color:#fff}.sunday-hero-copy{padding:80px 8%;display:flex;flex-direction:column;justify-content:center}.sunday-hero-copy .eyebrow{color:#efd49e}.sunday-hero-copy p:not(.eyebrow){font-size:18px;color:#eee4d8}.sunday-hero img{width:100%;height:100%;object-fit:cover}.promise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:34px}.promise{border-top:1px solid #bcae96;padding-top:24px}.promise h3{font-size:29px}.service-note{background:#eee8db;padding:26px;border-left:4px solid var(--red)}.service-note p{margin:0}.decision-strip{display:grid;grid-template-columns:1fr auto;gap:35px;align-items:center;background:var(--red);color:#fff;padding:42px 7%}.decision-strip h2{font-size:clamp(35px,4vw,54px);margin-bottom:10px}.decision-strip p{margin:0;color:#f0dfd7}.decision-strip .actions{margin:0}
@media(max-width:900px){.top-status{width:100%;border-left:0;border-top:1px solid #ffffff4d;padding:5px 0 0}.sunday-hero{grid-template-columns:1fr}.sunday-hero-copy{padding:58px 7%}.sunday-hero img{height:340px}.promise-grid{grid-template-columns:1fr}.decision-strip{grid-template-columns:1fr}.decision-strip .actions{margin-top:5px}}
@media(max-width:520px){.top{font-size:10px;line-height:1.45}.top-status{font-size:11px}.mobile-booking a{min-height:52px;display:grid;place-items:center}.spin-launcher{right:10px}}

/* Room photography */
.room-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.room-gallery{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 26px}.room-gallery img{display:block;width:100%;height:145px;object-fit:cover;background:#e6dfd3;cursor:zoom-in}.room-gallery .room-gallery-main{grid-column:1/-1;height:auto;aspect-ratio:16/9}.room-option:nth-child(4) .room-gallery-main{object-position:center 42%}.room-gallery img:focus-visible{outline:4px solid #c18c36;outline-offset:2px}.room-lightbox{position:fixed;inset:0;z-index:70;background:#17110eed;display:grid;place-items:center;padding:28px}.room-lightbox[hidden]{display:none}.room-lightbox-dialog{position:relative;max-width:min(1100px,96vw);max-height:92vh;background:#17110e;padding:0}.room-lightbox img{display:block;max-width:100%;max-height:86vh;width:auto;height:auto}.room-lightbox-close{position:absolute;right:10px;top:10px;width:46px;height:46px;border:0;background:var(--paper);color:var(--ink);font-size:32px;line-height:1;cursor:pointer;box-shadow:0 3px 14px #0006}.room-lightbox-caption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:13px 18px;background:#17110ed9;color:#fff;font-size:14px;max-width:none}
@media(max-width:900px){.room-options{grid-template-columns:1fr}.room-gallery img{height:125px}.room-gallery .room-gallery-main{height:auto}.room-lightbox{padding:12px}}

/* £1,000 Quiz League */
.quiz-page{--quiz-gold:#e2bd68}.quiz-hero{min-height:670px;display:grid;grid-template-columns:1.25fr .75fr;background:radial-gradient(circle at 13% 20%,#913648,#641e29 48%,#3b1018);color:#fff;overflow:hidden}.quiz-hero-copy{padding:88px 7%;display:flex;flex-direction:column;justify-content:center}.quiz-hero .eyebrow,.quiz-prizes .eyebrow,.quiz-final-cta .eyebrow{color:#f1d58f}.quiz-hero h1{font-size:clamp(64px,8vw,118px);line-height:.9;letter-spacing:-.035em}.quiz-hero h1 span{color:var(--quiz-gold)}.quiz-lead{font-size:20px;max-width:610px;color:#f4e9e1}.quiz-gold{background:var(--quiz-gold);color:#40121a;border-color:var(--quiz-gold)}.quiz-prize-panel{border-left:1px solid #ffffff38;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:50px;background:linear-gradient(145deg,#ffffff0b,#0002)}.quiz-prize-panel img{filter:sepia(.25);margin-bottom:25px}.quiz-prize-panel p{margin:0;text-transform:uppercase;letter-spacing:.17em;font-size:12px}.quiz-prize-panel strong{font:400 clamp(72px,9vw,132px)/1 'Libre Caslon Display',Georgia,serif;color:var(--quiz-gold)}.quiz-prize-panel small{font-size:15px}.quiz-countdown{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center;padding:32px 7%;background:#231d1a;color:#fff}.quiz-countdown h2{font-size:30px;margin:0}.quiz-countdown .eyebrow{color:#d8bd86;margin-bottom:8px}.countdown-grid{display:grid;grid-template-columns:repeat(4,88px);gap:10px}.countdown-grid span{display:grid;text-align:center;border:1px solid #7a6c60;padding:8px 5px;text-transform:uppercase;font-size:10px;letter-spacing:.12em}.countdown-grid strong{font:400 31px Georgia,serif;color:#f1d58f;line-height:1.1}.countdown-message{font-weight:700;color:#f1d58f;min-width:330px}.quiz-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding-top:60px;padding-bottom:60px}.quiz-fact{padding:12px 35px;border-left:1px solid #c9bba5}.quiz-fact:first-child{border-left:0;padding-left:0}.quiz-fact span{display:block;color:var(--red);font-size:12px;letter-spacing:.15em}.quiz-fact strong{display:block;font:400 34px Georgia,serif;margin:10px 0}.quiz-fact p{margin:0;color:#6b5d52}.price-cards{display:grid;grid-template-columns:1fr 1fr;gap:25px}.price-card{border:1px solid #cdbfa9;padding:38px;background:#fffdf8}.price-card.featured{background:var(--red);color:#fff;border-color:var(--red)}.price-card.featured .eyebrow{color:#f1d58f}.price-card h3{font-size:55px}.price-card h3 small{display:block;font:500 14px 'DM Sans',sans-serif;margin-top:10px}.price-card>a{display:inline-block;margin-top:18px;font-weight:700}.season-examples{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#ffffff3b;margin:22px 0}.season-examples span{display:flex;justify-content:space-between;background:#702634;padding:10px 12px;font-size:13px}.quiz-prizes{display:grid;grid-template-columns:1fr 1fr;background:#28211d;color:#fff}.quiz-prizes>div{padding:70px 8%}.quiz-prizes>div+div{background:var(--red)}.quiz-prizes h2{font-size:45px;margin-bottom:12px}.quiz-prizes strong{font:400 clamp(55px,6vw,86px) Georgia,serif;color:#f1d58f}.quiz-workings{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.quiz-workings ol{list-style:none;padding:0;margin:0}.quiz-workings li{display:grid;grid-template-columns:50px 1fr;gap:18px;border-top:1px solid #c9bba5;padding:22px 0}.quiz-workings li>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--red);color:#fff}.quiz-workings li strong{font-size:18px}.quiz-workings li p{margin:5px 0 0;color:#6b5d52}.quiz-register-section{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px;background:#eae3d6;max-width:none}.quiz-register-intro{position:sticky;top:25px;align-self:start}.registration-trust{display:grid;gap:4px;margin-top:35px;border-top:1px solid #c6b79e;padding-top:25px}.registration-trust span{font-size:14px;margin-bottom:14px;color:#67594e}.quiz-register-form{background:#fffdf9;border-top:5px solid var(--red);padding:38px}.form-grid,.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.quiz-register-form label:not(.choice):not(.quiz-trap),.admin-form-grid label,.admin-toolbar label,.results-controls label{display:grid;gap:6px;font-size:14px;font-weight:600}.quiz-register-form input:not([type=radio]):not([type=checkbox]),.quiz-register-form select,.quiz-register-form textarea,.admin-main input,.admin-main select,.admin-main textarea{width:100%;border:1px solid #bcae96;background:#fff;padding:12px;font:inherit;color:var(--ink)}.form-wide,.admin-wide{grid-column:1/-1}.quiz-register-form fieldset{border:0;border-top:1px solid #d6cab7;padding:22px 0 5px;margin:20px 0}.quiz-register-form legend{font-weight:700;padding:0 12px 0 0}.choice{display:grid;grid-template-columns:22px 1fr;gap:10px;padding:10px 0;font-size:14px}.choice input{margin-top:4px}.choice span strong{display:block}.choice.consent{border-top:1px solid #d6cab7;margin-top:18px;padding-top:20px}.quiz-trap{position:absolute;left:-9999px}.amount-box{display:grid;background:#28211d;color:#fff;padding:20px;margin:25px 0}.amount-box span{text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:#d9c18e}.amount-box strong{font:400 32px Georgia,serif;color:#fff}.amount-box small{color:#e4d8c7}.form-privacy{font-size:12px;color:#6d6259}.quiz-form-status{min-height:24px;font-weight:600;color:#2a5b38}.quiz-form-status.error{color:#8c2132}.registration-success{padding:20px}.registration-success h3{font-size:45px}.leaderboard-shell{background:#fffdf9;border:1px solid #d6cab7}.leaderboard-empty{padding:35px;margin:0;color:#6d6259}.leaderboard-table-wrap{overflow-x:auto}.leaderboard-shell table{border-collapse:collapse;width:100%}.leaderboard-shell th,.leaderboard-shell td{padding:17px 20px;border-bottom:1px solid #e1d8c9;text-align:left}.leaderboard-shell thead{background:#28211d;color:#fff}.leaderboard-shell tbody tr:first-child{background:#f2e3bd}.rules-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}.rules-list details{padding:22px 0}.rules-list summary{font:400 25px Georgia,serif}.rules-list p{color:#66594e}.quiz-faq{background:#eee8db;max-width:none}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.quiz-final-cta{text-align:center;padding:75px 7%;background:var(--red);color:#fff}.quiz-final-cta h2{font-size:clamp(46px,6vw,78px)}.quiz-mobile-cta{grid-template-columns:1fr 1fr}.quiz-mobile-cta a:first-child{background:#e2bd68;color:#40121a}.quiz-mobile-cta a:last-child{background:#faf7f0;color:var(--red)}

/* Owner-only league dashboard */
.quiz-admin-page{background:#f1ede5}.admin-header{background:#fffdf9}.admin-main{padding:45px 5%;max-width:1500px;margin:auto}.admin-auth{max-width:680px;background:#fff;padding:50px;border-top:5px solid var(--red)}.admin-title{display:flex;align-items:end;justify-content:space-between;gap:30px}.admin-title h1{font-size:65px}.admin-actions{display:flex;gap:10px}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:25px 0}.admin-stats article{background:#fff;padding:22px;border-top:3px solid var(--red)}.admin-stats span{display:block;font-size:13px;color:#6c6054}.admin-stats strong{display:block;font:400 35px Georgia,serif}.admin-tabs{display:flex;gap:2px;border-bottom:1px solid #cbbfaa;margin:28px 0}.admin-tabs button{border:0;background:transparent;padding:14px 18px;cursor:pointer}.admin-tabs button.active{background:var(--red);color:#fff}.admin-toolbar,.results-controls{display:flex;align-items:end;gap:18px;margin-bottom:22px}.admin-toolbar label{min-width:240px}.registration-list{display:grid;gap:18px}.registration-admin-card{background:#fff;padding:27px;border:1px solid #d8cdbd}.registration-card-head{display:flex;justify-content:space-between;gap:20px;margin-bottom:20px}.registration-card-head h2{font-size:35px;margin:7px 0}.registration-card-head p{margin:0;color:#74675b;font-size:13px}.registration-card-head>strong{font:400 34px Georgia,serif;color:var(--red)}.admin-badge{display:inline-block;text-transform:uppercase;letter-spacing:.09em;font-size:10px;padding:4px 8px;background:#eee4d1}.admin-badge.confirmed{background:#dcebdc;color:#24522e}.admin-badge.cancelled{background:#eadcdc;color:#6d2730}.admin-email-line,.admin-note{font-size:13px;color:#695d52}.admin-card-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:18px}.admin-card-actions .btn{min-height:42px;padding:9px 14px}.admin-card-actions button:disabled{opacity:.45}.admin-status{font-size:13px;font-weight:700;color:var(--red)}.admin-empty{background:#fff;padding:30px}.result-row{display:grid;grid-template-columns:1fr 140px 150px 70px;gap:18px;align-items:center;background:#fff;border-bottom:1px solid #ded4c5;padding:14px 18px}.result-row label{display:flex;align-items:center;gap:7px;font-size:13px}.result-row input[type=checkbox]{width:auto}.result-row input[type=number]{padding:7px}.audit-list article{display:flex;justify-content:space-between;background:#fff;border-bottom:1px solid #ddd1c0;padding:16px}.audit-list span{color:#74675b;font-size:13px}

@media(max-width:900px){.quiz-hero{grid-template-columns:1fr}.quiz-hero-copy{padding:65px 7%}.quiz-prize-panel{border-left:0;border-top:1px solid #ffffff38;padding:45px 7%}.quiz-prize-panel img{width:150px;height:150px}.quiz-countdown{grid-template-columns:1fr}.countdown-grid{grid-template-columns:repeat(4,1fr)}.quiz-facts,.price-cards,.quiz-prizes,.quiz-workings,.quiz-register-section,.rules-section,.faq-grid{grid-template-columns:1fr}.quiz-fact,.quiz-fact:first-child{border-left:0;border-top:1px solid #c9bba5;padding:24px 0}.quiz-prizes>div{padding:55px 7%}.quiz-workings,.rules-section{gap:30px}.quiz-register-intro{position:static}.quiz-register-form{padding:25px}.form-grid,.admin-form-grid{grid-template-columns:1fr}.form-wide,.admin-wide{grid-column:auto}.admin-title{align-items:start;flex-direction:column}.admin-stats{grid-template-columns:1fr 1fr}.admin-toolbar{align-items:stretch;flex-direction:column}.admin-toolbar label{min-width:0;width:100%}.result-row{grid-template-columns:1fr 1fr}.result-row>strong{grid-column:1/-1}}
@media(max-width:520px){.quiz-hero h1{font-size:59px}.quiz-hero-copy{padding-top:55px}.quiz-countdown{gap:20px}.countdown-grid{gap:4px}.countdown-grid span{padding:7px 2px;letter-spacing:.05em}.countdown-grid strong{font-size:25px}.season-examples{grid-template-columns:1fr}.quiz-register-section{padding-left:4%;padding-right:4%}.quiz-register-form{padding:22px 18px}.admin-main{padding:30px 4%}.admin-stats{grid-template-columns:1fr}.admin-actions{flex-direction:column;width:100%}.admin-actions .btn{width:100%}.admin-tabs{overflow-x:auto}.registration-admin-card{padding:18px}.registration-card-head{display:block}.admin-card-actions{align-items:stretch;flex-direction:column}.result-row{grid-template-columns:1fr}.result-row>strong{grid-column:auto}}
.home-quiz-promo{display:grid;grid-template-columns:1.2fr .8fr;background:radial-gradient(circle at 15% 20%,#913648,#641e29 55%,#3b1018);color:#fff;padding:72px 7%;gap:50px;align-items:center}.home-quiz-promo .eyebrow{color:#f1d58f}.home-quiz-promo h2,.home-quiz-promo h1{font-size:clamp(52px,6.5vw,88px)}.home-quiz-promo>div>p:not(.eyebrow){font-size:18px;color:#f2e4dd}.home-quiz-promo aside{text-align:center;border:1px solid #ffffff45;padding:45px 25px;display:grid}.home-quiz-promo aside span,.home-quiz-promo aside small{text-transform:uppercase;letter-spacing:.13em;font-size:11px}.home-quiz-promo aside strong{font:400 clamp(68px,8vw,110px) Georgia,serif;color:#e2bd68}.whats-on-quiz{margin:0}.whats-on-quiz h1{margin-bottom:24px}@media(max-width:900px){.home-quiz-promo{grid-template-columns:1fr;padding:55px 7%}}
.result-row{grid-template-columns:minmax(0,1fr) minmax(120px,150px) minmax(100px,120px) minmax(120px,140px)}.result-row label{font-size:14px}.admin-card-actions .btn.danger{color:#8e2430;border-color:#8e2430}.admin-card-actions .btn.danger:hover{background:#8e2430;color:#fff}@media(max-width:900px){.result-row{grid-template-columns:1fr 1fr}}@media(max-width:520px){.result-row{grid-template-columns:1fr}
}
.result-row label{display:grid;gap:4px}.result-row label.result-attendance{display:flex}.result-row input[type=number]{width:100%;min-width:0;padding:7px}
.result-row strong small{display:block;margin-top:4px;font:400 13px/1.4 "DM Sans",sans-serif;color:#6c6054}

/* Search-led event detail pages */
.event-detail-hero{display:grid;grid-template-columns:1.15fr .85fr;min-height:620px;background:#2d201c;color:#fff}.event-detail-hero>div{padding:78px 8%;display:flex;flex-direction:column;justify-content:center}.event-detail-hero .eyebrow{color:#efd49e}.event-detail-hero>div>p:not(.eyebrow){font-size:18px;color:#eee4d8}.event-detail-hero img{width:100%;height:100%;max-height:720px;object-fit:cover;object-position:center 32%}.event-detail-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.alt-section{background:#eee8db;max-width:none}.event-date-list{list-style:none;margin:0;padding:0;border-top:1px solid #bcae96}.event-date-list li{scroll-margin-top:30px;border-bottom:1px solid #cfc3b2;padding:19px 0}.event-date-list time{display:flex;justify-content:space-between;gap:25px}.event-date-list strong{font:400 23px/1.25 'Libre Caslon Display',Georgia,serif}.event-date-list span{color:var(--red);font-size:13px;font-weight:700;text-align:right}.raymor-dates strong{font-size:29px}
@media(max-width:900px){.event-detail-hero,.event-detail-grid{grid-template-columns:1fr}.event-detail-hero>div{padding:58px 7%}.event-detail-hero img{height:420px}.event-detail-grid{gap:30px}.event-date-list time{flex-direction:column;gap:3px}.event-date-list span{text-align:left}}
.halloween-hero{display:grid;grid-template-columns:minmax(240px,.65fr) 1.35fr;background:#251b20;color:#fff;min-height:520px}.halloween-hero>div:last-child{padding:70px 8%;display:flex;flex-direction:column;justify-content:center}.halloween-hero .eyebrow{color:#f2ba7a}.halloween-hero h1{font-size:clamp(44px,5.5vw,78px)}.halloween-hero p:not(.eyebrow){font-size:18px;color:#f1e5dc;max-width:650px}.halloween-date{background:#5b202d;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px 20px;gap:5px}.halloween-date span{font-size:21px;line-height:1.4}.halloween-date strong{font:400 clamp(130px,16vw,260px)/.95 'Libre Caslon Display',Georgia,serif;color:#f3b36b}.halloween-drinks{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.halloween-price{border-left:4px solid #bd5b2c;padding-left:20px;line-height:1.9;color:var(--red)}.halloween-menu{list-style:none;padding:0;margin:0;border-top:1px solid #bcae96}.halloween-menu li{display:flex;gap:22px;align-items:baseline;padding:19px 0;border-bottom:1px solid #cfc3b2;font:400 25px/1.3 'Libre Caslon Display',Georgia,serif}.halloween-menu span{font:700 13px/1.4 Arial,sans-serif;color:#9a3d2b}.halloween-listing{background:#f4e8dc;border-left:5px solid #aa4e25}.halloween-listing .day{color:#68222b}
@media(max-width:900px){.halloween-hero,.halloween-drinks{grid-template-columns:1fr}.halloween-date{min-height:250px}.halloween-date strong{font-size:140px}.halloween-hero>div:last-child{padding:50px 7%}.halloween-drinks{gap:28px}}

/* Keep the full fireside photograph visible at every screen size. */
.fireside-welcome{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:55px;align-items:center}.fireside-welcome figure{margin:0}.fireside-welcome img{display:block;width:100%;height:auto}.fireside-welcome h2{font-size:clamp(38px,4.3vw,60px)}
@media(max-width:900px){.fireside-welcome{grid-template-columns:minmax(0,1fr);gap:30px}}
