/* THE HORNS — VERSION 1 / PRIVATE HOMEPAGE PROTOTYPE */
:root{--navy:#101d2d;--navy-2:#19283b;--cream:#f5f0e5;--ivory:#fffaf2;--ink:#242526;--muted:#776d62;--gold:#d2b77b;--gold-dark:#a88349;--burgundy:#6c3446;--line:rgba(217,190,141,.22)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,a{font:inherit}a{color:inherit}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:normal}em{font-weight:normal}a:focus-visible,button:focus-visible{outline:2px solid #e8cc91;outline-offset:4px}.container{width:min(1240px,calc(100% - 88px));margin-inline:auto}.section-pad{padding:115px 0}.kicker,.eyebrow,.card-subtitle{font-weight:700;font-size:10px;letter-spacing:.23em;line-height:1.6}.kicker{color:var(--gold-dark)}.preview-strip{height:30px;display:flex;align-items:center;justify-content:center;gap:11px;background:#693546;color:#fdf2df;font-size:9px;letter-spacing:.23em;font-weight:700}.strip-star{color:var(--gold)}.strip-divider{opacity:.55}.skip-link{position:absolute;left:12px;top:-100px;z-index:1000;background:#fff;padding:10px}.skip-link:focus{top:8px}.site-header{background:var(--navy);color:var(--ivory);position:relative;z-index:10;border-bottom:1px solid rgba(215,186,126,.15)}.header-inner{height:99px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;white-space:nowrap;color:var(--gold)}.brand-mark{width:43px;height:42px;display:flex;align-items:center}.brand-mark svg{width:100%;height:100%}.brand-type{display:flex;flex-direction:column;gap:3px}.brand-type strong,.footer-brand-main{font:normal 28px/1 Georgia,serif;letter-spacing:.095em}.brand-type small{font-size:9px;letter-spacing:.19em;color:#d0c3aa}.brand-type small span{color:var(--gold)}.desktop-nav{display:flex;gap:28px;align-items:center}.desktop-nav a{text-decoration:none;color:#f3eade;font-size:12px;transition:color .2s}.desktop-nav a:hover{color:var(--gold)}.header-book{background:transparent;color:var(--gold);border:1px solid #a88e63;padding:14px 21px;font-size:11px;white-space:nowrap;letter-spacing:.06em}.header-book span{margin-left:13px}.header-book:hover{background:#d2b77b;color:var(--navy)}.menu-toggle{display:none;border:0;background:none;padding:8px}.menu-toggle span{height:2px;width:23px;background:var(--gold);display:block;margin:5px}.mobile-nav[hidden]{display:none}.mobile-nav{background:#182739;border-top:1px solid var(--line);padding:16px 26px 24px}.mobile-nav a,.mobile-nav button{display:block;width:100%;padding:13px 0;border:0;background:transparent;color:#f9ecda;text-decoration:none;font-size:14px;text-align:left}.mobile-nav button{color:var(--gold)}
/* HERO */
.hero{position:relative;background:var(--navy);color:var(--ivory);overflow:hidden}.hero-ornament{position:absolute;pointer-events:none;border:1px solid rgba(210,183,123,.08);width:650px;height:650px;border-radius:50%;top:-370px;left:-220px;box-shadow:0 0 0 110px rgba(210,183,123,.018),0 0 0 250px rgba(210,183,123,.012)}.hero-inner{display:grid;grid-template-columns:1.08fr .92fr;min-height:650px;gap:57px;align-items:center;padding-top:65px;padding-bottom:69px;position:relative}.hero-copy{padding-top:14px}.eyebrow{display:flex;align-items:center;gap:12px;color:var(--gold);margin-bottom:34px}.mini-line{height:1px;width:31px;background:var(--gold)}.hero h1{font-size:clamp(56px,5.8vw,89px);line-height:1.07;letter-spacing:-.05em;white-space:nowrap}.hero h1 em{color:var(--gold);font-style:italic}.hero-lead{max-width:490px;font:17px/1.85 Georgia,serif;color:#d7d0c5;margin:32px 0 29px}.hero-buttons{display:flex;gap:11px;align-items:center;flex-wrap:wrap}.btn{display:inline-flex;gap:24px;justify-content:center;align-items:center;text-decoration:none;border:1px solid transparent;min-height:50px;padding:0 25px;font-size:12px;letter-spacing:.055em;font-weight:700;transition:transform .2s,background-color .2s}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--gold);color:var(--navy)}.btn-gold:hover{background:#edd5a2}.btn-outline{background:transparent;border-color:#a58a61;color:#f5e9d7}.btn-outline:hover{background:rgba(210,183,123,.09)}.hero-highlights{margin-top:48px;display:flex;align-items:center;gap:15px;flex-wrap:wrap;color:#c4ac83;font-size:9px;font-weight:700;letter-spacing:.15em}.hero-highlights i{display:block;width:3px;height:3px;background:var(--gold);transform:rotate(45deg)}.hero-visual{position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-width:0}.hero-photo-frame{position:relative;border:1px solid #b69d70;padding:12px;height:min(31.8vw,498px);min-height:360px}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center 57%;filter:saturate(.79) brightness(.86)}.photo-note{position:absolute;bottom:23px;left:25px;right:25px;text-align:center;padding:12px 8px;background:rgba(15,28,43,.88);border:1px solid rgba(207,178,125,.45);color:#f4dbad;font-size:9px;letter-spacing:.115em;line-height:1.4}.photo-note span{font-size:16px;vertical-align:middle;margin-right:6px}.hero-visual figcaption{font:italic 16px Georgia,serif;letter-spacing:.07em;color:var(--gold);text-align:center;margin-top:20px}.hero-footer-border{position:absolute;bottom:0;height:5px;width:100%;background:linear-gradient(90deg,#432533,#9e7452,#d9c28e,#9e7452,#432533)}
/* INTRO */
.intro{background:#f7f3eb}.intro-grid{display:grid;grid-template-columns:1fr .82fr;gap:80px;align-items:center}.intro h2,.section-header h2,.story h2,.stay h2,.visit h2{font-size:clamp(43px,4.2vw,64px);line-height:1.17;letter-spacing:-.036em;margin-top:16px}.intro h2 em,.section-header h2 em,.story h2 em,.visit h2 em{font-style:italic;color:var(--burgundy)}.intro-right p{font:17px/1.9 Georgia,serif;color:#635b54;margin-bottom:29px}.text-link{font-size:12px;font-weight:700;text-decoration:none;color:#763f4f;border-bottom:1px solid #9f7e65;padding:0 0 8px;letter-spacing:.02em;white-space:nowrap}.text-link span{padding-left:14px}.text-link:hover{color:#a4813f}
/* MENUS */
.menus{background:#eae2d5}.section-header{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:40px}.section-header h2{max-width:780px}.section-header>p{font:15px/1.7 Georgia,serif;max-width:287px;color:#695e51;padding-bottom:8px}.menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.menu-card{background:var(--ivory);box-shadow:0 13px 32px rgba(43,34,24,.07);overflow:hidden}.menu-art{height:252px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 63% 27%,#6d5c55 0%,transparent 36%),linear-gradient(145deg,#172638,#445164 55%,#142333)}.menu-card-two .menu-art{background:radial-gradient(circle at 33% 75%,#9a6571 0%,transparent 47%),linear-gradient(140deg,#411e2c,#8d5062 51%,#38202f)}.menu-card-three .menu-art{background:radial-gradient(circle at 66% 30%,#867552 0%,transparent 49%),linear-gradient(140deg,#2e3230,#747463 58%,#292b2b)}.menu-art:after{content:"";position:absolute;inset:13px;border:1px solid rgba(255,247,217,.22)}.plate-art{width:142px;height:142px;border:1px solid rgba(249,233,205,.23);border-radius:50%;display:flex;align-items:center;justify-content:center;transform:rotate(-18deg);box-shadow:0 0 0 18px rgba(255,255,255,.018),inset 0 0 0 13px rgba(255,255,255,.018)}.plate-art span{width:90px;height:90px;border:1px solid rgba(255,248,231,.26);border-radius:50%;display:block}.placeholder-caption{position:absolute;bottom:30px;z-index:1;color:#f3dfb6;font-size:9px;letter-spacing:.125em;text-align:center}.menu-details{padding:31px 32px 36px}.card-subtitle{color:var(--gold-dark)}.menu-details h3{font-size:32px;line-height:1.15;color:#272830;margin:11px 0 16px}.menu-details p{font:15px/1.7 Georgia,serif;color:#675f55;min-height:77px}.menu-details .text-link{display:inline-block;margin-top:14px}.menu-disclaimer{font-size:11px;color:#847667;text-align:center;margin-top:24px}
/* STORY */
.story{background:#f7f3eb}.story-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:95px}.story-graphic{background:radial-gradient(circle at 52% 46%,#744252,#3b2632 60%,#192336);aspect-ratio:1.15;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;color:#d9bd85;overflow:hidden}.story-graphic:before{content:"";position:absolute;inset:19px;border:1px solid rgba(210,183,123,.55)}.story-lines{position:absolute;width:300px;height:300px;border:1px solid rgba(210,183,123,.21);transform:rotate(45deg)}.story-lines:before,.story-lines:after{content:"";position:absolute;inset:27px;border:1px solid rgba(210,183,123,.21)}.story-lines:after{inset:55px}.story-monogram{font:180px Georgia,serif;z-index:1;line-height:1}.story-small{font-size:10px;line-height:1.9;z-index:1;letter-spacing:.22em;text-align:center}.story-img-note{position:absolute;bottom:38px;font-size:9px;letter-spacing:.16em}.story-copy p{font:16px/1.9 Georgia,serif;color:#645c51;margin-top:20px}.story-copy .text-link{display:inline-block;margin-top:30px}
/* STAY */
.stay{background:var(--navy-2);color:var(--cream);position:relative;overflow:hidden}.stay:after{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(210,183,123,.07);border-radius:50%;right:-240px;top:-240px}.stay-grid{display:grid;grid-template-columns:1fr .78fr;gap:130px;align-items:center}.stay h2{color:var(--cream)}.stay h2 em{color:var(--gold);font-style:italic}.stay p{font:16px/1.85 Georgia,serif;color:#c9c8c4;max-width:550px;margin:25px 0}.soon-tag{display:inline-block;color:var(--gold);border:1px solid rgba(210,183,123,.49);padding:13px 17px;font-weight:700;font-size:10px;letter-spacing:.15em}.stay-art{height:350px;position:relative;border:1px solid rgba(210,183,123,.6);background:linear-gradient(160deg,rgba(214,178,122,.07),rgba(83,50,62,.18));overflow:hidden}.stay-art:before{content:"";position:absolute;inset:12px;border:1px solid rgba(210,183,123,.2)}.stay-arch{position:absolute;bottom:30px;width:220px;height:235px;border:5px solid #b99b72;left:50%;transform:translateX(-50%);border-radius:120px 120px 0 0;opacity:.47}.stay-door{position:absolute;width:82px;height:127px;border:3px solid #b99b72;bottom:30px;left:calc(50% - 41px);opacity:.78}.stay-roof{position:absolute;width:300px;border-top:3px solid #b99b72;left:calc(50% - 150px);bottom:272px;opacity:.55}.stay-window{position:absolute;width:35px;height:57px;border:2px solid #b99b72;top:105px;opacity:.38}.stay-window.one{left:56px}.stay-window.two{right:56px}.stay-window.three{left:56px;top:207px}.stay-window.four{right:56px;top:207px}
/* VISIT */
.visit{background:#f5f0e6}.visit-grid{display:grid;grid-template-columns:1fr .77fr;gap:100px;align-items:center}.visit p{font:17px/1.8 Georgia,serif;color:#6b645b;max-width:450px;margin-top:20px}.visit-card{background:#fffaf2;padding:39px 44px;border-top:4px solid var(--burgundy);box-shadow:0 12px 45px rgba(34,30,29,.07)}.visit-card .visit-label{margin:0 0 20px;color:#8b7049;font:700 10px Arial,sans-serif;letter-spacing:.18em}.visit-card .visit-address{font:25px/1.4 Georgia,serif;color:#252932;margin:0 0 25px}.visit-row{border-top:1px solid #e4d9cc;padding:14px 0;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:12px;color:#746f66}.visit-row strong{font-weight:600;color:#343333}.btn-dark{background:var(--navy);color:var(--cream);margin-top:17px;width:100%;white-space:nowrap}
/* FOOTER */
.footer{background:#0e1724;color:#d7caba;padding:58px 0 26px}.footer-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:45px;border-bottom:1px solid rgba(210,183,123,.19)}.footer-brand{display:flex;flex-direction:column;gap:11px;color:var(--gold)}.footer-brand-main{font-size:34px}.footer-brand-small{font-size:10px;letter-spacing:.18em}.footer-top p{font:italic 19px/1.7 Georgia,serif;color:#c9beb0}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:24px;font-size:10px;letter-spacing:.07em;color:#9f9a92}.footer-bottom a{color:var(--gold);text-decoration:none}
/* BOOKING MODAL */
.booking-dialog{border:1px solid #cdb488;width:min(475px,calc(100% - 30px));padding:51px 43px 44px;text-align:center;background:var(--ivory);color:var(--ink);box-shadow:0 28px 90px rgba(0,0,0,.5)}.booking-dialog::backdrop{background:rgba(6,12,19,.8)}.booking-dialog h2{font-size:43px;line-height:1.17;margin:15px 0}.booking-dialog h2 em{color:var(--burgundy)}.booking-dialog p{font:15px/1.75 Georgia,serif;color:#6d6058;margin-bottom:22px}.dialog-emblem{font-size:32px;color:var(--gold-dark)}.dialog-close{position:absolute;right:12px;top:11px;background:none;border:0;color:#685b53;font-size:30px}.dialog-done{width:100%}
@media(max-width:1100px){.container{width:min(100% - 58px,1240px)}.desktop-nav{gap:18px}.brand-type strong{font-size:24px}.hero-inner{gap:30px}.hero h1{font-size:clamp(47px,6vw,70px)}.hero-photo-frame{height:430px}.hero-highlights{gap:10px;font-size:8px}.story-grid,.stay-grid,.visit-grid{gap:50px}}
@media(max-width:880px){.header-inner{height:79px}.desktop-nav,.header-book{display:none}.menu-toggle{display:block}.hero-inner{grid-template-columns:1fr;gap:42px;min-height:0;padding-top:73px;padding-bottom:68px}.hero-copy{padding:0}.hero h1{font-size:clamp(54px,9vw,84px)}.hero-photo-frame{height:440px;min-height:0}.hero-visual{max-width:650px}.hero-highlights{margin-top:35px}.intro-grid,.story-grid,.stay-grid,.visit-grid{gap:37px}.intro-grid{grid-template-columns:1fr}.section-header{align-items:flex-start;flex-direction:column;gap:17px}.section-header>p{max-width:550px}.menu-grid{gap:12px}.menu-details{padding:25px 19px 30px}.menu-details h3{font-size:26px}.menu-art{height:190px}.plate-art{transform:scale(.75)}.story-grid,.stay-grid,.visit-grid{grid-template-columns:1fr}.story-graphic{max-width:620px;width:100%}.stay-art{max-width:500px;width:100%}.visit-card{max-width:590px}.section-pad{padding:83px 0}}
@media(max-width:600px){.container{width:calc(100% - 38px)}.preview-strip{height:36px;font-size:8px;letter-spacing:.09em;gap:6px;padding:0 7px;text-align:center}.header-inner{height:71px}.brand-mark{width:34px;height:35px}.brand{gap:8px}.brand-type strong{font-size:22px}.brand-type small{font-size:7px;letter-spacing:.12em}.hero-inner{padding-top:53px;padding-bottom:51px;gap:39px}.eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:26px}.mini-line{width:20px}.hero h1{font-size:clamp(49px,11.5vw,70px);white-space:normal;letter-spacing:-.055em}.hero-lead{font-size:15px;line-height:1.85;margin:24px 0}.hero-buttons{align-items:stretch}.hero-buttons .btn{flex:1 1 150px;gap:8px;padding:0 13px;font-size:11px}.hero-highlights{line-height:1.5;font-size:8px;gap:8px;max-width:370px}.hero-photo-frame{height:330px;padding:9px}.photo-note{bottom:19px;left:19px;right:19px;font-size:8px}.hero-visual figcaption{font-size:14px}.section-pad{padding:66px 0}.intro h2,.section-header h2,.story h2,.stay h2,.visit h2{font-size:44px}.intro-right p{font-size:16px}.menu-grid{grid-template-columns:1fr;gap:18px}.menu-art{height:225px}.menu-details{padding:27px 26px 33px}.menu-details p{min-height:0}.menu-details h3{font-size:30px}.section-header{margin-bottom:30px}.story-grid{gap:34px}.story-graphic{aspect-ratio:1.15}.story-monogram{font-size:130px}.story-lines{width:230px;height:230px}.stay-grid{gap:40px}.stay-art{height:280px}.stay-arch{transform:translateX(-50%) scale(.75);transform-origin:bottom center}.stay-window{top:70px}.stay-window.three,.stay-window.four{top:165px}.stay-roof{bottom:210px}.visit-card{padding:28px 25px}.footer{padding:45px 0 25px}.footer-top{display:block}.footer-top p{margin-top:25px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:12px}.booking-dialog{padding:45px 24px 31px}.booking-dialog h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.menu-coming-note{display:inline-block;margin-top:18px;font-size:10px;letter-spacing:.12em;color:#9a7656;font-weight:700}.drinks-strip{padding:64px 0;background:#663446;color:#fff6e9}.drinks-strip-inner{display:flex;justify-content:space-between;align-items:center;gap:64px}.drinks-strip .kicker{color:#e9c995}.drinks-strip h2{font:normal clamp(31px,3.1vw,47px)/1.15 Georgia,serif;margin-top:12px}.drinks-strip h2 em{color:#e7c68d}.drinks-strip p{font:16px/1.8 Georgia,serif;max-width:390px;color:#f0dcd9}@media(max-width:880px){.drinks-strip-inner{display:block}.drinks-strip p{margin-top:20px}}@media(max-width:600px){.drinks-strip{padding:50px 0}}


/* V3: inset editorial carousel.  No external slider libraries required. */
.hero-photo-frame{overflow:hidden}
.photo-carousel{position:relative;width:100%;height:100%;overflow:hidden;background:#101d2d;touch-action:pan-y;outline-offset:5px}
.carousel-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .85s ease,visibility .85s;pointer-events:none}
.carousel-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.carousel-slide img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.86) brightness(.87)}
.carousel-slide:nth-child(1) img{object-position:58% center}
.carousel-slide:nth-child(n+2) img{object-position:center 62%;filter:saturate(.91) brightness(.90)}
.slide-shade{position:absolute;inset:35% 0 0;background:linear-gradient(0deg,rgba(10,21,31,.93) 0%,rgba(10,21,31,.68) 33%,transparent 100%)}
.slide-caption{position:absolute;bottom:76px;left:34px;right:65px;color:#fff7eb;display:flex;flex-direction:column;gap:9px}
.slide-category{font-size:10px;letter-spacing:.22em;font-weight:700;color:#e5c88c}
.slide-caption strong{font:normal clamp(25px,2.5vw,37px)/1.1 Georgia,serif;letter-spacing:-.016em;text-wrap:balance}
.carousel-controls{position:absolute;z-index:4;bottom:22px;left:34px;right:26px;display:flex;justify-content:space-between;align-items:center}
.carousel-dots,.carousel-arrows{display:flex;gap:9px;align-items:center}
.carousel-dot{border:1px solid #f1dcc3;background:transparent;width:9px;height:9px;padding:0;border-radius:50%;opacity:.75}
.carousel-dot.is-active{background:#ebcb8d;border-color:#ebcb8d;width:22px;border-radius:5px;opacity:1}
.carousel-arrow{border:1px solid rgba(233,211,176,.75);background:rgba(10,27,39,.78);color:#fdf4e8;width:35px;height:35px;display:flex;align-items:center;justify-content:center;font:27px Georgia,serif;line-height:1;padding-bottom:5px;transition:background-color .2s}
.carousel-arrow:hover,.carousel-arrow:focus-visible{background:#9d7c4d;color:#fff}

.map-reveal{height:300px;margin-top:19px;background:#e6e2d6;border:1px solid #d5c9b6;overflow:hidden}
.map-direct-link{display:block;text-align:center;text-decoration:none;font-size:12px;color:#6b3c4a;padding:19px 6px 2px}
.map-embed{display:block;width:100%;height:100%;border:0}
@media(max-width:600px){.slide-caption{bottom:75px;left:19px;right:34px}.slide-caption strong{font-size:27px}.slide-category{font-size:9px}.carousel-controls{left:18px;right:18px;bottom:14px}.hero-photo-frame{height:365px}}
@media(prefers-reduced-motion:reduce){.carousel-slide{transition:none}}


/* V5: festive navigation and house terms */
.desktop-nav .nav-festive{border:1px solid rgba(210,183,123,.72);background:rgba(210,183,123,.11);color:#eed39a;padding:10px 13px;font-weight:700;letter-spacing:.025em;white-space:nowrap}
.desktop-nav .nav-festive:hover,.desktop-nav .nav-festive[aria-current=page]{background:var(--gold);color:var(--navy)}
.mobile-nav .nav-festive{color:#ebcc88;font-weight:700;border-bottom:1px solid rgba(210,183,123,.3);margin-bottom:5px}
.footer-bottom{flex-wrap:wrap}
.footer-bottom a:hover{text-decoration:underline}
.subhero{position:relative;overflow:hidden;background:var(--navy);color:var(--ivory);border-bottom:5px solid #b99a65}
.subhero-inner{padding:103px 0 111px;position:relative;z-index:1}
.subhero .kicker{color:#e2c48e}
.subhero h1{margin-top:18px;font-size:clamp(54px,6.5vw,94px);line-height:1.08;letter-spacing:-.044em}
.subhero h1 em{color:var(--gold);font-style:italic}
.subhero p{font:18px/1.8 Georgia,serif;color:#dfd2bd;max-width:650px;margin-top:27px}
.terms-hero:after{content:'✧';position:absolute;right:10%;top:3%;font:370px/1 Georgia,serif;color:rgba(213,184,131,.07)}
.terms-section{background:#f7f3eb}
.terms-layout{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:90px;align-items:start}
.terms-intro{position:sticky;top:25px}
.terms-intro h2{font-size:clamp(38px,3.9vw,61px);line-height:1.14;letter-spacing:-.035em;margin:14px 0 20px}
.terms-intro h2 em{font-style:italic;color:var(--burgundy)}
.terms-intro p{font:16px/1.8 Georgia,serif;color:#6a625b;margin-bottom:27px}
.terms-list{border-top:1px solid #d5c8b4}
.term-item{display:grid;grid-template-columns:43px minmax(0,1fr);gap:19px;padding:27px 0 30px;border-bottom:1px solid #d5c8b4}
.term-num{font:20px Georgia,serif;color:#a38552;padding-top:4px}
.term-item h2{font:normal 26px/1.2 Georgia,serif;color:#28313d;margin:0 0 10px}
.term-item p{font:15px/1.75 Arial,Helvetica,sans-serif;color:#514e49;max-width:680px}
.christmas-hero{min-height:690px;display:flex;align-items:center;text-align:center;background:radial-gradient(ellipse at 50% -15%,#553146 0,transparent 52%),linear-gradient(145deg,#16243a,#141e2f 56%,#3f2735);border-bottom-color:#cfb175}
.christmas-hero:before,.christmas-hero:after{content:'';position:absolute;width:530px;height:530px;border:1px solid rgba(224,187,120,.13);border-radius:50%;top:2%;left:-310px;box-shadow:0 0 0 65px rgba(223,184,121,.019)}
.christmas-hero:after{left:auto;right:-310px}
.christmas-inner{padding:110px 0}
.christmas-inner p{margin-left:auto;margin-right:auto;max-width:610px}
.christmas-decor{position:absolute;color:#d6b778;opacity:.22;font:54px Georgia,serif;letter-spacing:60px;top:75px;left:50%;transform:translateX(-50%);white-space:nowrap}
.festive-divider{margin:20px auto 0;width:240px;display:flex;align-items:center;gap:20px;justify-content:center;color:var(--gold)}
.festive-divider:before,.festive-divider:after{content:'';height:1px;flex:1;background:rgba(215,184,119,.5)}
.christmas-inner .soon-tag{display:table;margin:25px auto 26px}
.christmas-inner .festive-home{margin:0 auto}
.christmas-inner .festive-fineprint{font:11px/1.6 Arial,sans-serif;letter-spacing:.035em;opacity:.85;margin-top:23px}
@media(max-width:1100px){.desktop-nav{gap:12px}.desktop-nav a{font-size:11px}.desktop-nav .nav-festive{padding:9px 9px}.header-book{padding:13px 13px}.header-book span{margin-left:5px}}
@media(max-width:880px){.terms-layout{grid-template-columns:1fr;gap:42px}.terms-intro{position:static}.subhero-inner{padding:82px 0}}
@media(max-width:600px){.subhero h1{font-size:clamp(47px,13vw,66px)}.subhero p{font-size:16px}.terms-layout{gap:32px}.term-item{grid-template-columns:32px minmax(0,1fr);gap:12px;padding:23px 0}.term-item h2{font-size:23px}.term-item p{font-size:14px}.christmas-hero{min-height:620px}.christmas-decor{font-size:27px;letter-spacing:20px}.christmas-inner{padding:70px 0 90px}}

/* V6: fourth menu card, photo slot and a working children's-menu link */
.menu-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}
.menu-card{display:flex;flex-direction:column}
.menu-card-four .menu-art{background:radial-gradient(circle at 34% 26%,#7a5f62 0%,transparent 45%),linear-gradient(145deg,#262d3f,#655669 56%,#3a2735)}
.menu-details{flex:1;display:flex;flex-direction:column}
.menu-details p{min-height:0;flex:1}
.menu-card-four .menu-art .placeholder-caption{padding:0 10px}
.menu-card-four .menu-coming-note{margin-top:12px}
.menu-action{display:inline-flex;align-items:center;justify-content:space-between;align-self:flex-start;gap:19px;min-height:41px;padding:12px 16px;margin-top:18px;background:#17283b;color:#f5ddb0;text-transform:uppercase;font:bold 10px/1.25 Arial,Helvetica,sans-serif;letter-spacing:.10em;text-decoration:none;border:1px solid #17283b;transition:background .15s,color .15s}
.menu-action:hover,.menu-action:focus-visible{background:#7f4755;color:#fff;border-color:#7f4755}
.menu-action:focus-visible{outline:3px solid #af8750;outline-offset:3px}
@media(min-width:1101px){.menu-grid{gap:17px}.menu-art{height:212px}.menu-details{padding:25px 21px 31px}.menu-details h3{font-size:28px}.menu-details p{font-size:14px}.menu-card .placeholder-caption{font-size:8px}}
@media(max-width:1100px){.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.menu-art{height:240px}.menu-details h3{font-size:30px}.menu-details{padding:27px 25px 31px}}
@media(max-width:600px){.menu-grid{grid-template-columns:1fr;gap:18px}.menu-art{height:225px}.menu-details{padding:27px 26px 33px}.menu-details p{flex:none}}
.menu-page-hero{background:radial-gradient(circle at 79% 19%,rgba(145,109,102,.28),transparent 35%),linear-gradient(130deg,#152638 4%,#202e3e 66%,#51384b);min-height:440px}
.menu-page-hero:after{content:'';width:295px;height:295px;border:1px solid rgba(222,189,136,.18);border-radius:50%;position:absolute;right:11%;top:13%;box-shadow:0 0 0 30px rgba(222,189,136,.025),inset 0 0 0 28px rgba(222,189,136,.028);pointer-events:none}
.menu-preview-content{background:#f3ece1;text-align:center;padding:74px 16px 98px}
.menu-preview-content .soon-tag{margin:0 auto 22px;display:inline-block}
.menu-preview-content h2{color:#25313b;font-size:clamp(34px,4.3vw,56px)}
.menu-preview-content p{font:16px/1.8 Georgia,serif;color:#675c53;margin:18px auto 30px;max-width:540px}
@media(max-width:600px){.menu-page-hero{min-height:370px}.menu-page-hero:after{right:-120px;top:28px}.menu-preview-content{padding:58px 18px 75px}}


/* V7: easy-to-find terms in desktop Information dropdown and mobile menu. */
.desktop-nav .nav-dropdown{position:relative;flex:none;color:#f3eade;font-size:12px}
.desktop-nav .nav-dropdown summary{cursor:pointer;display:flex;align-items:center;gap:7px;list-style:none;padding:12px 3px;color:#f3eade;user-select:none;white-space:nowrap}
.desktop-nav .nav-dropdown summary::-webkit-details-marker{display:none}
.desktop-nav .nav-dropdown summary:hover,.desktop-nav .nav-dropdown[open] summary{color:var(--gold)}
.desktop-nav .nav-dropdown summary:focus-visible{outline:2px solid #e8cc91;outline-offset:4px}
.dropdown-chevron{font-size:18px;line-height:.5;transform:translateY(-2px);color:var(--gold)}
.nav-dropdown-panel{position:absolute;right:0;top:calc(100% + 7px);min-width:242px;background:#17283a;border:1px solid rgba(216,185,126,.5);box-shadow:0 17px 37px rgba(0,0,0,.27);padding:9px 0;z-index:99}
.desktop-nav .nav-dropdown-panel a{display:block;padding:13px 19px;line-height:1.4;color:#f7e9d5;font-size:12px;white-space:nowrap;text-decoration:none}
.desktop-nav .nav-dropdown-panel a:hover,.desktop-nav .nav-dropdown-panel a:focus-visible,.desktop-nav .nav-dropdown-panel a[aria-current="page"]{color:#192638;background:#e4c990}
.desktop-nav .nav-dropdown-panel .nav-terms-link{border-top:1px solid rgba(219,189,143,.24);margin-top:5px;padding-top:16px;font-weight:700;color:#f1d399}
.desktop-nav .nav-dropdown-panel .nav-terms-link:hover,.desktop-nav .nav-dropdown-panel .nav-terms-link:focus-visible,.desktop-nav .nav-dropdown-panel .nav-terms-link[aria-current="page"]{color:#17283a}
.mobile-nav .mobile-terms-link{border-top:1px solid rgba(210,183,123,.25);margin-top:6px;padding-top:19px;color:#edcc8c;font-weight:700}
.mobile-nav .mobile-terms-link[aria-current="page"]{text-decoration:underline;text-underline-offset:6px}
@media(max-width:1100px){.desktop-nav .nav-dropdown{font-size:11px}}


/* V9: Seasonal a-la-carte web menu, based on the signed-off A4 menu. */
.ala-dining{background:#eae2d5;padding:46px 0 85px}
.ala-dining-inner{max-width:1160px}
.ala-menu-bar{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:20px}
.ala-menu-title{font:700 11px/1.5 Arial,Helvetica,sans-serif;color:#705c49;letter-spacing:.19em}
.ala-pdf-link{min-height:45px;padding:12px 19px;white-space:nowrap;font-size:11px}
.al-sheet{--al-navy:#142436;--al-gold:#b99b72;background:#fff;color:var(--al-navy);padding:40px 44px 35px;box-shadow:0 18px 55px #1723391a;border-top:5px solid var(--al-navy);font-family:Georgia,'Times New Roman',serif}
.al-nibbles{text-align:center;padding-bottom:25px;border-bottom:1px solid #d8cbb8;margin-bottom:29px}
.al-section-title{font:400 32px/1.2 Georgia,serif;letter-spacing:.045em;text-align:center;margin:0 0 18px;color:var(--al-navy)}
.al-section-title::after{content:'';display:block;width:68px;height:1px;background:var(--al-gold);margin:8px auto 0}
.al-nibbles .al-section-title{font-size:27px;margin-bottom:11px}
.al-nibbles-line{font:15px/1.6 Arial,Helvetica,sans-serif;display:flex;justify-content:center;align-items:baseline;flex-wrap:wrap;gap:3px}
.al-nibbles-line .al-sep{padding:0 15px;color:var(--al-gold)}
.al-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}
.al-left-col,.al-right-col{min-width:0}
.al-dish{margin-bottom:23px}
.al-dish-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.al-dish-name{font:400 24px/1.14 Georgia,serif;letter-spacing:-.014em;flex:1}
.al-price{font:700 15px/1.4 Arial,Helvetica,sans-serif;white-space:nowrap}
.al-diet{font:700 10px/1.25 Arial,Helvetica,sans-serif;color:#a07852;letter-spacing:.025em;vertical-align:3px;white-space:nowrap}
.al-desc{font:14px/1.55 Arial,Helvetica,sans-serif;color:#535b5d;margin-top:6px}
.al-for-two{display:block;font:700 13px/1.5 Arial,Helvetica,sans-serif;color:#986c43;margin-top:5px}
.al-cam-row{display:flex;justify-content:space-between;align-items:baseline;margin-top:10px;gap:12px}
.al-cam-portion{font:21px/1 Georgia,serif}
.al-cam-serves{font:12px Arial,Helvetica,sans-serif;color:#926d43}
.al-sides{margin-top:47px}
.al-side-item{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin:0 0 15px}
.al-side-name{font:21px/1.2 Georgia,serif}
.al-mains-include{text-align:center;font:13px/1.55 Arial,Helvetica,sans-serif;color:#826342;margin:-3px 0 23px}
.al-endcap{text-align:center;margin-top:30px;border-top:1px solid #d8cbb8;padding-top:19px}
.al-dietkey{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;font:12px/1.5 Arial,Helvetica,sans-serif}
.al-policy{font:12px/1.6 Arial,Helvetica,sans-serif;color:#5b5d5d;margin-top:9px}
.ala-bottom-nav{text-align:center;margin-top:30px}
.ala-bottom-nav .text-link{color:#253144}
@media(max-width:950px){.al-columns{gap:28px}.al-dish-name{font-size:21px}.al-sheet{padding:33px 26px}}
@media(max-width:700px){.ala-dining{padding:25px 0 55px}.ala-menu-bar{flex-direction:column;align-items:flex-start;gap:12px}.ala-pdf-link{width:100%;justify-content:center}.al-sheet{padding:31px 20px 27px}.al-columns{display:block}.al-left-col{display:flex;flex-direction:column}.al-left-col>.al-sides{order:2}.al-right-col{margin-top:32px}.al-dish-name{font-size:21px}.al-price{font-size:14px}.al-dish{margin-bottom:20px}.al-section-title{font-size:29px}.al-nibbles-line{font-size:13px}.al-nibbles-line .al-sep{padding:0 4px}.al-desc{font-size:13px}.al-dietkey{gap:7px 16px}}


/* V10: the real scallop dish photograph selected for the first à la carte card. */
.menu-card-two .menu-art{background:#28303b}
.menu-card-two .menu-art .menu-photo-link{position:absolute;inset:0;display:block;z-index:0;overflow:hidden}
.menu-card-two .menu-art .menu-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 49%;transition:transform .25s ease}
.menu-card-two .menu-art .menu-photo-link:hover .menu-photo{transform:scale(1.025)}
.menu-card-two .menu-art::after{pointer-events:none;border-color:rgba(255,255,255,.38)}
.menu-card-two 

/* V11: Christmas menu, matching homepage festive tile and one-page downloadable PDF. */
.xmas-home-feature{background:linear-gradient(135deg,#15263a 0%,#25324a 100%);color:#fff7eb;padding:77px 0;border-top:4px solid #bd9d69;border-bottom:4px solid #bd9d69}
.xmas-home-grid{display:grid;grid-template-columns:minmax(230px,.6fr) minmax(0,1fr);gap:8%;align-items:center;max-width:1070px}
.xmas-home-art{display:block;max-width:310px;margin:0 auto;text-decoration:none;transition:transform .2s;box-shadow:0 20px 45px #0006}
.xmas-home-art img{width:100%;height:auto}
.xmas-home-art:hover{transform:translateY(-4px)}
.xmas-home-copy .kicker{color:#e6cb93}
.xmas-home-copy h2{font-size:clamp(41px,4.7vw,68px);line-height:1.12;letter-spacing:-.035em;margin:19px 0}
.xmas-home-copy h2 em{font-style:italic;color:#e8cb91}
.xmas-home-copy p{font:17px/1.8 Georgia,serif;max-width:510px;color:#e6dfd2;margin-bottom:31px}
.xmas-page-top{background:#14263a;color:#fff7ec;border-bottom:4px solid #bd9d69;text-align:center;padding:55px 0 50px}
.xmas-page-intro h1{font-size:clamp(42px,6vw,76px);line-height:1.15;margin:14px 0 18px}
.xmas-page-intro h1 em{color:#e3c58d;font-style:italic}
.xmas-page-intro p{font:17px/1.7 Georgia,serif;color:#eee0c8}
.xmas-page-body{background:#eee9e1;padding:45px 0 85px}
.xmas-page-body>.container{max-width:990px}
.xmas-page-actions{display:flex;gap:22px;align-items:center;justify-content:space-between;margin:0 auto 22px;max-width:850px}
.xmas-page-actions>span{font:700 11px/1.4 Arial,sans-serif;letter-spacing:.16em;color:#615448}
.xmas-poster{max-width:850px;margin:0 auto;text-align:center}
.xmas-poster>a{display:block;box-shadow:0 14px 42px #2c1e152c;border:1px solid #c8b99f;background:#fff}
.xmas-poster img{height:auto;width:100%}
.xmas-poster figcaption{font:13px/1.6 Arial,sans-serif;color:#645a4c;margin:14px 0 0}
.xmas-text-details{max-width:850px;margin:34px auto 0;background:#fff;border:1px solid #d2c2a6;box-shadow:0 9px 25px #1f252710}
.xmas-text-details>summary{cursor:pointer;padding:23px 25px;color:#16263a;font:700 15px/1.5 Arial,sans-serif;display:flex;align-items:center;justify-content:space-between;gap:12px}
.xmas-text-details>summary:hover{background:#f9f6f1}
.xmas-text-details>summary>span{color:#a48555;font-size:24px}
.xmas-text-content{padding:14px 32px 40px;border-top:1px solid #e9dfd0;display:grid;grid-template-columns:1fr 1fr;column-gap:38px;align-items:start}
.xmas-text-section h3{font-size:29px;color:#14263a;border-bottom:1px solid #bfa578;padding-bottom:10px;margin:23px 0 19px}
.xmas-dish{margin-bottom:18px}
.xmas-dish-header{display:flex;justify-content:space-between;gap:15px;color:#14263a;font:16px/1.4 Georgia,serif}
.xmas-dish-header strong{font-weight:bold}
.xmas-dish-header small{font-size:12px}
.xmas-dish-header>span{white-space:nowrap;font:700 13px/1.6 Arial,sans-serif}
.xmas-dish p{font:13px/1.5 Arial,sans-serif;color:#635d54;margin-top:5px}
.xmas-cam-prices{display:flex;flex-direction:column;gap:5px;font:13px/1.4 Arial,sans-serif;margin:9px 0 0 10px}
.xmas-cam-prices span{display:flex;justify-content:space-between;gap:12px}
.xmas-mains-note,.xmas-diet-key{grid-column:1/-1;font:italic 13px/1.6 Georgia,serif;color:#605245;text-align:center;padding:15px 12px}
.xmas-backlink{text-align:center;margin-top:30px}
@media(max-width:700px){.xmas-home-feature{padding:51px 0}.xmas-home-grid{grid-template-columns:1fr;gap:35px;text-align:center}.xmas-home-art{max-width:250px}.xmas-home-copy .btn{margin:auto}.xmas-home-copy p{margin-left:auto;margin-right:auto}.xmas-page-top{padding:39px 0}.xmas-page-body{padding:25px 0 55px}.xmas-page-actions{flex-direction:column;align-items:stretch;gap:14px;text-align:center}.xmas-page-actions .btn{justify-content:center}.xmas-text-content{display:block;padding:15px 20px 30px}.xmas-mains-note,.xmas-diet-key{padding:13px 0}.xmas-text-details>summary{padding:18px 16px}}

/* V14 — Contact details. Keep print files A4 but remove paper-size language from UI. */
.footer-contact{display:flex;flex-direction:column;justify-content:center;gap:8px;min-width:0}
.footer-contact span{font:700 10px Arial,sans-serif;letter-spacing:.17em;color:var(--gold)}
.footer-contact a{font:14px/1.5 Arial,sans-serif;color:#f2e6cd;text-decoration:underline;text-decoration-color:#9b8055;text-underline-offset:4px;overflow-wrap:anywhere}
.footer-contact a:hover,.visit-row-email a:hover{color:var(--gold)}
.visit-row-email{align-items:start;flex-wrap:wrap}
.visit-row-email a{color:#684254;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.contact-section{background:#f3ece1;padding:83px 0 105px}
.contact-container{max-width:880px;text-align:center}
.contact-container h2{font:normal clamp(38px,5vw,62px)/1.12 Georgia,serif;color:#25313b;margin:17px 0 22px}
.contact-container h2 em{color:var(--burgundy)}
.contact-container p{font:17px/1.8 Georgia,serif;color:#655c54;max-width:650px;margin:0 auto 20px}
.contact-email{display:inline-flex;align-items:center;justify-content:center;gap:14px;font:600 clamp(15px,2.5vw,25px)/1.35 Arial,sans-serif;color:#643746;text-decoration:none;overflow-wrap:anywhere;border:1px solid rgba(108,52,70,.35);background:#fffaf2;padding:22px 28px;margin:14px auto 30px;max-width:100%}
.contact-email:hover{background:#f5eadc}
.contact-container .contact-note{font:13px/1.7 Arial,sans-serif;color:#7a6b61;margin-bottom:32px}
@media(max-width:780px){.footer-contact{margin-top:24px}.contact-section{padding:65px 0 85px}}
@media(max-width:600px){.contact-email{padding:17px 12px;font-size:clamp(13px,4vw,18px);gap:6px}.contact-container p{font-size:15px}}

/* V15: New Chateaubriand image is a deep, glossy interior tabletop. */
.carousel-slide:nth-child(2) img{object-position:center 50%;filter:saturate(.98) brightness(1.02)}

/* Lunch tile photograph */
.menu-card-one .menu-art{background:#31251b}
.menu-card-one .menu-art .lunch-menu-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 57%}
.menu-card-one .menu-art::after{pointer-events:none;border-color:rgba(255,255,255,.38)}


/* V18: Sunday lunch card and full restaurant menu */
.menu-card-three .menu-art{background:#31302c}
.menu-card-three .menu-art .menu-photo-link{position:absolute;inset:0;z-index:0;display:block;overflow:hidden}
.menu-card-three .sunday-menu-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 53%;transition:transform .25s ease}
.menu-card-three .menu-photo-link:hover .sunday-menu-photo{transform:scale(1.025)}
.menu-card-three .menu-art::after{pointer-events:none}
.sunday-image-caption{position:absolute;right:9px;bottom:9px;padding:4px 7px;background:rgba(15,24,34,.78);color:#f8ead0;font:9px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.015em}
.sunday-dining{padding:52px 0 82px;background:#f3ece1}
.sunday-dining-inner{max-width:1050px}
.sunday-menu-sheet{position:relative;max-width:825px;margin:0 auto;border:2px solid #baa073;outline:1px solid #d8c4a5;outline-offset:-11px;background:#fffaf3;color:#142436;padding:55px 68px 38px;text-align:center;font-family:Georgia,'Times New Roman',serif;box-shadow:0 15px 45px #17233919}
.sunday-brand{display:flex;flex-direction:column;align-items:center;margin-bottom:27px}
.sunday-brand svg{width:54px;height:46px;color:#b89a6d}
.sunday-brand-name{font-size:38px;letter-spacing:.025em;line-height:1.1}
.sunday-brand-location{font:12px/2 Georgia,serif;letter-spacing:.28em;color:#b99b72}
.sunday-menu-title{font-size:35px;letter-spacing:.08em;margin:0 0 14px}
.sunday-tiers{display:flex;justify-content:center;flex-wrap:wrap;gap:0;color:#142436;font-size:18px;margin:0 0 32px}
.sunday-tiers span{padding:0 16px;border-right:1px solid #b9a487}
.sunday-tiers span:last-child{border-right:0}
.sunday-tiers strong{font-weight:normal}
.sunday-menu-section{border-top:1px solid #cfb790;padding-top:19px;margin-top:25px}
.sunday-menu-section-title{font-size:25px;line-height:1.15;letter-spacing:.075em;font-weight:normal;margin:0 0 22px;color:#142436}
.sunday-dish{margin:0 0 21px}
.sunday-dish h4,.sunday-roast-list h4{font-weight:bold;font-size:17px;line-height:1.32;margin:0 0 5px}
.sunday-dish p{font-size:14px;line-height:1.5;color:#615c57;margin:0}
.sunday-diet{font-size:.81em;font-weight:normal;white-space:nowrap}
.sunday-roast-list{margin:0 0 15px}
.sunday-roast-list h4{margin:0 0 6px}
.sunday-roast-note{max-width:640px;margin:0 auto 7px;font-size:13px;line-height:1.6;color:#645d57;font-style:italic}
.sunday-roast-note+.sunday-dish{margin-top:20px}
.sunday-sides{max-width:470px;margin:0 auto 2px;text-align:left;font-size:16px}
.sunday-sides>div{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin:0 0 7px}
.sunday-sides dt{flex:1}.sunday-sides dd{margin:0;text-align:right;white-space:nowrap}
.sunday-diet-key{border-top:1px solid #cfb790;margin:23px 0 0;padding:21px 0 0;font-size:12px;color:#625a53;line-height:1.6}
@media(max-width:700px){.sunday-dining{padding:28px 0 56px}.sunday-menu-sheet{padding:38px 24px 30px;outline-offset:-8px}.sunday-brand-name{font-size:31px}.sunday-menu-title{font-size:27px}.sunday-tiers{gap:6px 0;font-size:15px}.sunday-tiers span{padding:0 10px}.sunday-menu-section-title{font-size:21px}.sunday-dish h4,.sunday-roast-list h4{font-size:16px}.sunday-dish p{font-size:13px}.sunday-sides{font-size:14px}}
@media(max-width:420px){.sunday-tiers{display:grid;gap:3px}.sunday-tiers span{border:0}.sunday-menu-sheet{padding:33px 18px 28px}.sunday-sides{font-size:13px}.sunday-brand-name{font-size:29px}}

/* Sunday menu: align the heading and printable PDF action within the menu width */
.sunday-dining .ala-menu-bar{max-width:825px;margin:0 auto 20px}
.sunday-dining .ala-menu-title{flex:1}
.sunday-dining .ala-pdf-link{flex:0 0 auto;width:auto}
@media(max-width:700px){.sunday-dining .ala-pdf-link{width:100%}}

/* V19: approved Christmas baubles and genuine owner-supplied Sunday lunch imagery */
.xmas-home-copy p { color:#fffaf0; }
.xmas-home-copy .kicker { color:#f1d29c; }
.menu-card-three .sunday-menu-photo { object-position:center 56%; }
.carousel-slide:nth-child(3) img { object-position:center 55%; }

/* V21: owner's approved lunchtime menu, desktop two-column editorial layout and mobile reading order. */
.lunch-dining{padding:46px 0 78px;background:#f4eee5}
.lunch-dining-inner{max-width:1090px}
.lunch-dining .ala-menu-bar{max-width:940px;margin:0 auto 20px}
.lunch-dining .ala-menu-title{flex:1}
.lunch-dining .ala-pdf-link{flex:0 0 auto;width:auto}
.lunch-menu-sheet{background:#fffcf7;color:#142436;box-shadow:0 16px 48px rgba(17,29,45,.08);padding:52px clamp(26px,6vw,80px) 45px;border-top:3px solid #142436;outline:1px solid #e1d2bc;outline-offset:-13px}
.lunch-menu-sheet .sunday-brand{text-align:center}
.lunch-menu-title{font:normal 35px/1.2 Georgia,serif;text-align:center;letter-spacing:.08em;margin:13px 0 0}
.lunch-menu-tagline{font:italic 16px/1.6 Georgia,serif;color:#6a6258;text-align:center;margin:6px 0 31px}
.lunch-menu-columns{border-top:1px solid #d9c8ad;padding-top:31px;display:grid;grid-template-columns:1fr 1fr;gap:60px}
.lunch-column{min-width:0}
.lunch-section{margin:0 0 32px}
.lunch-section h3{font:normal 29px/1.23 Georgia,serif;color:#142436;text-align:center;margin:0 0 26px}
.lunch-section h3:after{content:"";display:block;width:82px;height:1px;background:#bda06e;margin:6px auto 0}
.lunch-dish{margin-bottom:21px}
.lunch-dish-top{display:flex;align-items:baseline;gap:12px;justify-content:space-between}
.lunch-dish h4{font:normal 19px/1.3 Georgia,serif;margin:0;color:#142436;min-width:0}
.lunch-diet{font:700 11px/1.4 Arial,sans-serif;color:#aa864c;white-space:nowrap}
.lunch-price{font:700 14px/1.3 Arial,sans-serif;white-space:nowrap;color:#142436}
.lunch-dish p,.lunch-section-note{font:14px/1.55 Arial,sans-serif;color:#64615d;margin:5px 0 0}
.lunch-section-note{text-align:center;margin:-14px 0 26px}
.lunch-camembert-wrap{margin-top:-19px}
.lunch-camembert{display:flex;gap:30px;flex-wrap:wrap;margin-top:10px;font:16px Georgia,serif}
.lunch-camembert span{display:inline-flex;gap:18px;align-items:baseline}.lunch-camembert strong{font:700 14px Arial,sans-serif}
.lunch-menu-foot{border-top:1px solid #d9c8ad;margin-top:24px;padding-top:20px;text-align:center;font:12px/1.65 Arial,sans-serif;color:#64615d}
.lunch-menu-foot p+p{margin-top:9px}
@media(max-width:700px){.lunch-dining{padding:28px 0 57px}.lunch-menu-sheet{padding:42px 26px 29px;outline-offset:-9px}.lunch-menu-columns{gap:30px}.lunch-section h3{font-size:24px}.lunch-dish h4{font-size:17px}.lunch-dish p,.lunch-section-note{font-size:13px}.lunch-dish-top{gap:8px}}
@media(max-width:590px){.lunch-dining .ala-menu-bar{display:flex;flex-direction:column;align-items:stretch}.lunch-dining .ala-pdf-link{width:100%;text-align:center}.lunch-menu-title{font-size:29px}.lunch-menu-columns{grid-template-columns:1fr;gap:3px}.lunch-menu-sheet{padding:33px 22px 29px}.lunch-section h3{font-size:26px;margin-bottom:22px}.lunch-dish h4{font-size:18px}.lunch-dish{margin-bottom:19px}.lunch-camembert-wrap{margin-top:-12px}.lunch-diet{font-size:10px}.lunch-menu-foot{margin-top:8px}}

/* V22: the fourth menu tile now features Festive Dining, not a menu placeholder. */
.menu-card-four .menu-art{background:#1d2d43}
.menu-card-four .menu-art .menu-photo-link{position:absolute;inset:0;display:block;z-index:0;overflow:hidden}
.menu-card-four .menu-art .festive-menu-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 50%;transition:transform .25s ease}
.menu-card-four .menu-art .menu-photo-link:hover .festive-menu-photo{transform:scale(1.025)}
.menu-card-four .menu-art::after{pointer-events:none;border-color:rgba(255,255,255,.38)}


/* V27: approved Sunday-roast photograph on the Sunday menu page. */
.sunday-feature-photo{width:min(100%,480px);margin:0 auto 32px;overflow:hidden;border:1px solid rgba(186,160,115,.55);background:#23170f;box-shadow:0 15px 42px rgba(17,29,45,.13)}
.sunday-feature-photo img{display:block;width:100%;height:auto}
@media(max-width:700px){.sunday-feature-photo{width:min(100%,430px);margin-bottom:23px}}
/* Preserve the centre of both plates when cropped inside wide carousel/menu cards. */
.carousel-slide:nth-child(3) img{object-position:center top}
.menu-card-three .sunday-menu-photo{object-position:center top}

/* V28: rare striploin beef visible on approved Sunday lunch photograph, three matching placements. */


/* V31: Pre-opening announcement, designed to sit naturally between hero and introduction. */
.launch-announcement{background:#e9dfd0;border-bottom:1px solid #d7c7ad}
.launch-announcement-inner{display:grid;grid-template-columns:minmax(180px,.42fr) minmax(0,1fr);gap:54px;align-items:center;padding:47px 0 51px}
.launch-announcement .launch-eyebrow{display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.18em;color:#825e3e;font-weight:700;line-height:1.7}
.launch-announcement .launch-eyebrow:before{content:'✧';font:22px/1 Georgia,serif;color:#a57f4d}
.launch-announcement h2{font:normal clamp(30px,2.9vw,46px)/1.17 Georgia,'Times New Roman',serif;letter-spacing:-.027em;color:#202c38;margin:0 0 12px}
.launch-announcement h2 em{font-style:italic;color:#754454}
.launch-announcement p{font:16px/1.75 Georgia,'Times New Roman',serif;color:#5c5049;max-width:700px;margin:0}
@media(max-width:760px){.launch-announcement-inner{grid-template-columns:1fr;gap:16px;padding:34px 0 38px}.launch-announcement h2{font-size:34px}.launch-announcement p{font-size:15px;line-height:1.75}}
@media(max-width:420px){.launch-announcement .launch-eyebrow{font-size:9px}.preview-strip{font-size:8px;letter-spacing:.13em;gap:7px}}


/* V31: Keep an accessible text equivalent to the illustrated Christmas menu,
   without showing a duplicate accordion underneath the menu picture. */
.xmas-screen-reader-menu { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; clip-path: inset(50%) !important; white-space: nowrap !important; border: 0 !important; }


/* V33: Christmas/Festive menu is the opening evening menu; three menu cards. */
.menu-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.menu-card-opening{border-top:3px solid #bc9a63}
.menu-card-opening .card-subtitle{color:#94713a}
@media (max-width:950px) and (min-width:601px){
 .menu-grid{grid-template-columns:1fr;max-width:560px;margin-inline:auto}
 .menu-art{height:260px}
}
@media (max-width:600px){.menu-grid{grid-template-columns:1fr}}

/* V34: unobtrusive but legible statutory company particulars on every page. */
.footer-legal{
  margin: 15px 0 0;
  padding: 0 0 2px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: .005em;
  color: #bbb4aa;
  text-align: left;
}
@media(max-width:600px){
  .footer-legal{font-size:12px;line-height:1.65;margin-top:13px}
}


/* V35 — unobtrusive privacy links and an accessible, balanced cookie choice. */
.footer-privacy-links{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:19px;font:12px/1.6 Arial,Helvetica,sans-serif}
.footer-privacy-links a,.footer-privacy-links button{color:#d7caba;text-decoration:underline;text-underline-offset:3px}
.footer-privacy-links button{background:transparent;border:0;cursor:pointer;padding:0}
.footer-privacy-links a:hover,.footer-privacy-links button:hover{color:#e1c48d}
.cookie-banner[hidden],.map-consent-placeholder[hidden]{display:none !important}
.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:10000;background:#101d2d;color:#fffaf2;border-top:3px solid #d2b77b;box-shadow:0 -7px 30px rgba(0,0,0,.28);padding:18px 24px}
.cookie-banner-inner{width:min(1150px,100%);margin:0 auto;display:flex;align-items:center;gap:25px;justify-content:space-between}
.cookie-banner-copy{flex:1;max-width:660px}
.cookie-banner-copy strong{font:normal 20px Georgia,serif;color:#ead5a7}
.cookie-banner-copy p{font:13px/1.6 Arial,sans-serif;margin:6px 0 0;color:#eee8dc}
.cookie-banner-copy a{color:#f5dda4;text-underline-offset:3px}
.cookie-banner-actions{display:flex;gap:10px;flex-wrap:wrap}
.cookie-action{min-height:43px;min-width:154px;padding:11px 18px;font:700 12px Arial,sans-serif;border:1px solid #e1c48d;cursor:pointer}
.cookie-reject{background:#f3ebdf;color:#101d2d}
.cookie-accept{background:#e1c48d;color:#101d2d}
.cookie-action:focus-visible,.footer-privacy-links button:focus-visible,.map-enable-button:focus-visible{outline:3px solid #e1c48d;outline-offset:3px}
.map-consent-placeholder{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:10px;padding:22px;background:linear-gradient(145deg,#ece8de,#ded8c9);color:#293547}
.map-placeholder-symbol{font:normal 46px Georgia,serif;color:#916a44;line-height:1}
.map-consent-placeholder strong{font:normal 22px Georgia,serif}
.map-consent-placeholder p{font:13px/1.6 Arial,sans-serif!important;max-width:290px;margin:0!important;color:#52535a!important}
.map-enable-button{border:1px solid #101d2d;background:#101d2d;color:#fffaf2;padding:12px 17px;font-size:12px;cursor:pointer}
.privacy-section{background:#f5f0e5;padding:75px 0 110px}
.privacy-content{max-width:850px;margin:0 auto;background:#fffaf2;padding:52px 58px;box-shadow:0 8px 35px rgba(20,20,20,.035)}
.privacy-content h2{font:normal 27px/1.25 Georgia,serif;color:#17243a;margin:33px 0 12px}
.privacy-content h2:first-child{margin-top:0}
.privacy-content p,.privacy-content li{font:15px/1.82 Arial,Helvetica,sans-serif;color:#45474a;margin:0 0 14px}
.privacy-content a{color:#523445;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.privacy-content ul{margin:9px 0 18px;padding-left:21px}
.privacy-content .privacy-updated{font-size:12px;color:#74685a;margin-bottom:24px}
@media(max-width:720px){.cookie-banner{padding:15px 17px}.cookie-banner-inner{display:block}.cookie-banner-copy strong{font-size:19px}.cookie-banner-copy p{font-size:12px}.cookie-banner-actions{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.cookie-action{min-width:0;font-size:11px;padding:10px 7px}.privacy-section{padding:45px 0 85px}.privacy-content{padding:32px 25px}.privacy-content h2{font-size:24px}}
