*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:#100d0b;color:#f1e7d6;font-family:"DM Sans",sans-serif;font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.site-header{height:86px;padding:0 clamp(24px,7vw,112px);display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:10;top:0;left:0;width:100%;border-bottom:1px solid rgba(224,177,111,.22);background:linear-gradient(180deg,rgba(12,9,8,.96),rgba(12,9,8,.74));backdrop-filter:blur(10px)}.brand{width:170px;display:flex;flex-direction:column;align-items:center;line-height:1;color:#f3e5ce}.brand-name{font-family:"Playfair Display",serif;font-size:31px;letter-spacing:3px}.brand-sub{font-size:10px;letter-spacing:5px;margin-top:7px}.main-nav{display:flex;gap:clamp(22px,4vw,58px);align-items:center}.nav-link{font-size:13px;color:#e2d8ca;transition:color .25s;position:relative}.nav-link:after{content:"";position:absolute;left:0;right:100%;bottom:-12px;height:2px;background:#1458d9;transition:right .3s}.nav-link:hover,.nav-link.active{color:#fff}.nav-link:hover:after,.nav-link.active:after{right:0}.socials{display:flex;gap:12px}.social-link{width:30px;height:30px;border:1px solid rgba(231,197,151,.45);border-radius:50%;display:grid;place-items:center;font-size:10px;text-transform:uppercase;color:#e7c597;transition:.25s}.social-link:hover{background:#1748ad;color:#fff;border-color:#1748ad}.menu-toggle{display:none}.hero{min-height:810px;height:auto;position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(350px,390px);align-items:center;column-gap:clamp(34px,6vw,90px);padding:145px clamp(24px,8.3vw,135px) 100px;overflow:hidden}.hero-photo,.hero-shade{position:absolute;inset:0}.hero-photo{background:url("../images/pub-bar.jpg") center center/cover no-repeat;transform:none}.hero-shade{background:linear-gradient(90deg,rgba(12,8,6,.48) 0%,rgba(13,9,7,.32) 36%,rgba(13,9,7,.18) 70%,rgba(10,8,7,.52) 100%),linear-gradient(0deg,#100d0b 0%,transparent 30%,rgba(0,0,0,.18) 100%)}.hero-content{position:relative;z-index:2;max-width:650px;margin-top:-5px}.eyebrow{font-size:10px;letter-spacing:4px;color:#c9a675;margin:0 0 18px}.hero-title{font-family:"Playfair Display",serif;font-weight:500;font-size:clamp(72px,9vw,128px);line-height:.98;letter-spacing:5px;margin:0;color:#f3e8d7;text-align:center;width:100%}.hero-rule{display:flex;align-items:center;justify-content:center;width:100%;gap:20px;letter-spacing:8px;font-size:14px;margin:18px 0 36px;color:#e8d7bf;white-space:nowrap}.hero-rule span{width:58px;height:1px;background:#c9a675}.hero-content>.eyebrow,.hero-content>.button-primary{display:none}.hero-copy{max-width:470px;margin:0 auto 34px}.hero-copy{font-family:"Playfair Display",serif;font-style:italic;font-size:clamp(19px,2vw,26px);line-height:1.45;color:#e5d9c8;margin:0 0 34px}.button{min-height:50px;padding:0 24px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;gap:22px;border:1px solid #c9a675;cursor:pointer;transition:transform .25s,background .25s,box-shadow .25s}.button:hover{transform:translateY(-2px)}.button-primary{background:rgba(13,22,42,.65);border-color:#1d65e8;box-shadow:0 7px 25px rgba(0,48,150,.18)}.button-primary:hover,.button-blue:hover{background:#174fc1;box-shadow:0 8px 25px rgba(0,63,180,.28)}.booking-card{position:relative;z-index:3;right:auto;top:auto;transform:none;justify-self:end;align-self:center;width:min(390px,100%);padding:28px 30px 22px;background:rgba(7,13,24,.95);border:1px solid rgba(221,186,139,.8);border-radius:17px;box-shadow:0 22px 70px rgba(0,0,0,.42)}.booking-kicker{font-size:9px;letter-spacing:3px;color:#c9a675;margin:0 0 8px}.booking-card h2{font-family:"Playfair Display",serif;font-size:25px;font-weight:500;margin:0 0 8px}.booking-text{color:#c4c0bc;font-size:12px;margin:0 0 18px;line-height:1.5}.booking-card form{display:grid;gap:10px}.field{display:block;min-width:0}.field span{display:block;font-size:10px;color:#c9a675;margin:0 0 5px}.field input,.field select{width:100%;height:42px;padding:0 12px;background:#111a29;border:1px solid rgba(217,208,195,.25);border-radius:5px;color:#f4eadc;outline:none}.field input:focus,.field select:focus{border-color:#3875e6}.field input::placeholder{color:#858b94}.field select{color:#d4c8b8}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.button-blue{background:#063baf;border:1px solid #145ce2;color:white;width:100%;margin-top:3px}.booking-submit{min-height:46px}.form-note{font-size:9px;color:#888f9b;line-height:1.4;margin:0}.scroll-cue{position:absolute;bottom:38px;left:50%;width:28px;height:28px;display:grid;place-items:center}.scroll-cue span{width:11px;height:11px;border-right:1px solid #d9c6aa;border-bottom:1px solid #d9c6aa;transform:rotate(45deg);animation:bob 1.7s infinite}@keyframes bob{50%{transform:translateY(5px) rotate(45deg)}}.section-wrap{max-width:1280px;margin:0 auto;padding-left:36px;padding-right:36px}.kitchen-section{padding-top:64px;padding-bottom:90px}.kitchen-card{min-height:285px;border:1px solid rgba(195,145,85,.65);border-radius:13px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;position:relative;background:#17110d;transition:border-color .3s,transform .3s}.kitchen-card:hover{border-color:#e1b36e;transform:translateY(-3px)}.kitchen-photo{background:url("../images/pub-bar.jpg") center 57%/cover no-repeat;min-height:285px;position:relative}.kitchen-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 45%,#17110d 100%)}.kitchen-copy{padding:36px 42px;align-self:center}.kitchen-copy .eyebrow{margin-bottom:10px}.kitchen-copy h2{font-family:"Playfair Display",serif;font-size:clamp(34px,4vw,48px);line-height:1.1;font-weight:500;margin:0 0 13px}.kitchen-copy>p:not(.eyebrow){color:#bdb1a2;margin:0 0 21px}.text-link{display:inline-flex;align-items:center;gap:22px;color:#e6c99e;font-size:13px}.text-link span{font-size:19px;transition:transform .2s}.kitchen-card:hover .text-link span{transform:translate(3px,-3px)}.kitchen-arrow{position:absolute;right:35px;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#352316;color:#f1dec3;font-size:24px}.broadcasts{min-height:465px;position:relative;display:flex;align-items:center;padding:80px clamp(24px,12vw,180px);overflow:hidden}.broadcast-image{position:absolute;inset:0;background:url("../images/pub-bar.jpg") center 58%/cover no-repeat;filter:saturate(.65)}.broadcast-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,8,7,.94),rgba(9,8,7,.77) 48%,rgba(9,8,7,.35))}.broadcast-content{position:relative;z-index:1;max-width:520px}.broadcast-content h2{font-family:"Playfair Display",serif;font-size:clamp(40px,5vw,62px);line-height:1.08;font-weight:500;margin:0 0 20px}.broadcast-content h2 em{color:#d2ad7b;font-weight:400}.broadcast-content>p:not(.eyebrow){color:#c4b8aa;max-width:430px;margin:0}.contacts{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;padding-top:100px;padding-bottom:100px;align-items:center}.contacts h2{font-family:"Playfair Display",serif;font-size:clamp(38px,5vw,58px);font-weight:500;line-height:1.08;margin:0 0 36px}.contact-line{border-top:1px solid rgba(201,166,117,.23);padding:13px 0;display:flex;gap:28px}.contact-line span{font-size:11px;color:#c9a675;width:90px}.contact-line p{margin:0;color:#e1d6c8;font-size:14px}.contact-photo{height:390px;border-radius:10px;overflow:hidden;border:1px solid rgba(201,166,117,.45)}.contact-photo img{width:100%;height:100%;object-fit:cover;object-position:center 55%;display:block}.site-footer{min-height:100px;border-top:1px solid rgba(201,166,117,.18);padding:22px clamp(24px,7vw,112px);display:flex;align-items:center;justify-content:space-between;color:#958a7e;font-size:11px}.brand-footer{width:auto;align-items:flex-start}.brand-footer .brand-name{font-size:23px}.brand-footer .brand-sub{font-size:8px}.back-top{color:#d1b184}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.toast{position:fixed;z-index:60;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#14233d;border:1px solid #3264b7;color:#fff;padding:14px 20px;border-radius:7px;font-size:12px;transition:.3s;max-width:calc(100% - 32px);text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}
/* Menu page */
.menu-hero{height:385px;position:relative;display:flex;align-items:end;padding:0 clamp(24px,9vw,145px) 55px;overflow:hidden}.menu-hero-backdrop{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,7,6,.92),rgba(9,7,6,.58)),url("../images/pub-bar.jpg") center 48%/cover}.menu-hero-inner{position:relative}.menu-hero h1{font:500 clamp(52px,7vw,82px)/1.05 "Playfair Display",serif;margin:0 0 9px}.menu-hero-inner>p:last-child{color:#c8bba9;margin:0;font-size:16px}.menu-content{padding-top:75px;padding-bottom:100px}.menu-intro{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:34px}.menu-intro h2{font:500 clamp(37px,5vw,54px)/1.1 "Playfair Display",serif;margin:0}.menu-intro .eyebrow{margin-bottom:10px}.menu-intro>p{max-width:370px;color:#b8ada0;margin:0 0 5px}.category-nav{display:flex;gap:9px;flex-wrap:wrap;padding:15px 0 23px;border-top:1px solid rgba(201,166,117,.22);border-bottom:1px solid rgba(201,166,117,.22);margin-bottom:52px}.category-nav a{font-size:11px;padding:8px 12px;border:1px solid rgba(201,166,117,.32);border-radius:99px;color:#dfc8a7;transition:.2s}.category-nav a:hover{background:#1b3f82;border-color:#1b3f82;color:white}.menu-sections{columns:2;column-gap:55px}.menu-category{break-inside:avoid;margin:0 0 43px}.category-heading{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid #b98b52;padding-bottom:10px;margin-bottom:7px}.category-heading h3{font:500 27px "Playfair Display",serif;margin:0}.category-heading span{font-size:10px;letter-spacing:2px;color:#9d8465}.dish{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:start;padding:14px 0;border-bottom:1px solid rgba(235,217,191,.09)}.dish-main h4{font-size:14px;font-weight:600;margin:0;color:#e9d9c2}.dish-main p{font-size:11px;line-height:1.5;color:#a99d8e;margin:5px 0 0}.dish-weight{font-size:10px;color:#a89a88;white-space:nowrap;padding-top:2px}.dish-price{font-size:12px;color:#d9b37c;white-space:nowrap;padding-top:1px}.menu-disclaimer{margin-top:15px;color:#8e8377;font-size:11px}
@media(max-width:1000px){.site-header{padding:0 28px}.brand{width:135px}.brand-name{font-size:27px}.main-nav{gap:22px}.socials{gap:7px}.hero{grid-template-columns:minmax(0,1fr) minmax(300px,360px);column-gap:24px;padding-left:5vw;padding-right:5vw}.hero-content{max-width:100%}.booking-card{width:100%;padding:22px}.hero-title{font-size:clamp(65px,7vw,95px)}.kitchen-copy{padding:28px}.contacts{gap:35px}.menu-sections{column-gap:35px}}
@media(max-width:720px){html{scroll-padding-top:70px}.site-header{height:70px;padding:0 20px}.brand{align-items:flex-start;width:auto}.brand-name{font-size:25px}.brand-sub{margin-left:4px;font-size:8px}.menu-toggle{display:flex;flex-direction:column;gap:6px;background:none;border:0;padding:10px;z-index:12}.menu-toggle span{display:block;width:24px;height:1px;background:#f0dfc8}.main-nav{position:absolute;top:69px;left:0;right:0;background:#100d0b;display:none;flex-direction:column;align-items:stretch;gap:0;padding:10px 22px 20px;border-bottom:1px solid rgba(201,166,117,.25)}.main-nav.open{display:flex}.nav-link{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.06)}.nav-link:after{display:none}.socials{display:none}.hero{height:auto;min-height:0;grid-template-columns:1fr;padding:130px 22px 45px;display:grid;align-items:start;gap:36px}.hero-photo{background-position:56% center}.hero-shade{background:linear-gradient(90deg,rgba(10,7,6,.9),rgba(10,7,6,.56)),linear-gradient(0deg,#100d0b 0%,transparent 55%)}.hero-content{max-width:100%;margin:0}.hero-title{font-size:clamp(66px,18vw,100px)}.hero-rule{font-size:11px;letter-spacing:5px;gap:12px;margin:15px 0 25px}.hero-rule span{width:36px}.hero-copy{font-size:20px;margin-bottom:25px}.desktop-only{display:none}.booking-card{position:relative;top:auto;right:auto;transform:none;justify-self:stretch;width:100%;padding:22px;border-radius:12px}.booking-card h2{font-size:23px}.scroll-cue{display:none}.section-wrap{padding-left:22px;padding-right:22px}.kitchen-section{padding-top:45px;padding-bottom:55px}.kitchen-card{grid-template-columns:1fr;min-height:0}.kitchen-photo{min-height:195px}.kitchen-photo:after{background:linear-gradient(0deg,#17110d,transparent 60%)}.kitchen-copy{padding:0 23px 28px}.kitchen-copy h2{font-size:34px}.kitchen-arrow{right:20px;top:auto;bottom:21px;transform:none;width:40px;height:40px}.broadcasts{min-height:410px;padding:60px 24px}.broadcast-content h2{font-size:43px}.contacts{grid-template-columns:1fr;gap:28px;padding-top:65px;padding-bottom:65px}.contacts h2{font-size:45px}.contact-photo{height:260px}.site-footer{padding:22px;gap:18px;flex-wrap:wrap}.site-footer>span{order:3;width:100%}.menu-hero{height:330px;padding:0 23px 38px}.menu-content{padding-top:48px;padding-bottom:65px}.menu-intro{display:block}.menu-intro>p{margin-top:14px}.category-nav{flex-wrap:nowrap;overflow-x:auto;padding-bottom:16px}.category-nav a{flex:none}.menu-sections{columns:1}.menu-category{margin-bottom:38px}.category-heading h3{font-size:25px}.dish{gap:9px}.dish-main h4{font-size:13px}.dish-main p{font-size:10px}.dish-weight{font-size:9px}.dish-price{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Menu page layout compatibility */

.menu-page .menu-hero{height:385px;position:relative;display:flex;align-items:end;padding:0 clamp(24px,9vw,145px) 55px;overflow:hidden}
.menu-page .menu-hero-backdrop{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,7,6,.92),rgba(9,7,6,.58)),url("../images/pub-bar.jpg") center 48%/cover}
.menu-page .menu-hero-inner{position:relative}
.menu-page .menu-hero h1{font:500 clamp(52px,7vw,82px)/1.05 "Playfair Display",serif;margin:0 0 9px}
.menu-page .menu-hero-inner>p:last-child{color:#c8bba9;margin:0;font-size:16px}
.menu-page .menu-content{padding-top:75px;padding-bottom:100px}
.menu-page .menu-intro{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:34px}
.menu-page .menu-intro h2{font:500 clamp(37px,5vw,54px)/1.1 "Playfair Display",serif;margin:0}
.menu-page .menu-intro .eyebrow{margin-bottom:10px}
.menu-page .menu-intro>p{max-width:370px;color:#b8ada0;margin:0 0 5px}
.menu-page .category-nav{display:flex;gap:9px;flex-wrap:wrap;padding:15px 0 23px;border-top:1px solid rgba(201,166,117,.22);border-bottom:1px solid rgba(201,166,117,.22);margin-bottom:52px}
.menu-page .category-nav a{font-size:11px;padding:8px 12px;border:1px solid rgba(201,166,117,.32);border-radius:99px;color:#dfc8a7;transition:.2s}
.menu-page .category-nav a:hover{background:#1b3f82;border-color:#1b3f82;color:white}
.menu-page .menu-sections{columns:2;column-gap:55px}
.menu-page .menu-category{break-inside:avoid;margin:0 0 43px}
.menu-page .category-heading{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid #b98b52;padding-bottom:10px;margin-bottom:7px}
.menu-page .category-heading h3{font:500 27px "Playfair Display",serif;margin:0}
.menu-page .category-heading span{font-size:10px;letter-spacing:2px;color:#9d8465}
.menu-page .dish{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:start;padding:14px 0;border-bottom:1px solid rgba(235,217,191,.09)}
.menu-page .dish-main h4{font-size:14px;font-weight:600;margin:0;color:#e9d9c2}
.menu-page .dish-main p{font-size:11px;line-height:1.5;color:#a99d8e;margin:5px 0 0}
.menu-page .dish-weight{font-size:10px;color:#a89a88;white-space:nowrap;padding-top:2px}
.menu-page .dish-price{font-size:12px;color:#d9b37c;white-space:nowrap;padding-top:1px}
.menu-page .menu-disclaimer{margin-top:15px;color:#8e8377;font-size:11px}
@media(max-width:1000px){.menu-page .menu-sections{column-gap:35px}}
@media(max-width:720px){
  .menu-page .menu-hero{height:330px;padding:0 23px 38px}
  .menu-page .menu-content{padding-top:48px;padding-bottom:65px}
  .menu-page .menu-intro{display:block}
  .menu-page .menu-intro>p{margin-top:14px}
  .menu-page .category-nav{flex-wrap:nowrap;overflow-x:auto;padding-bottom:16px}
  .menu-page .category-nav a{flex:none}
  .menu-page .menu-sections{columns:1}
  .menu-page .menu-category{margin-bottom:38px}
  .menu-page .category-heading h3{font-size:25px}
  .menu-page .dish{gap:9px}
  .menu-page .dish-main h4{font-size:13px}
  .menu-page .dish-main p{font-size:10px}
  .menu-page .dish-weight{font-size:9px}
  .menu-page .dish-price{font-size:11px}
}
/* Final homepage hero alignment: center the English Pub lockup under DARWIN. */
.hero-content>.eyebrow,.hero-content>.button-primary{display:none}
.hero-content .hero-title{text-align:center;width:100%}
.hero-content .hero-rule{width:100%;justify-content:center}
.hero-content .hero-copy{max-width:470px;margin:0 auto 34px}

/* Booking calendar and opening-hours time slots */
.date-field{position:relative}
.date-trigger{width:100%;height:42px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;background:#111a29;border:1px solid rgba(217,208,195,.25);border-radius:5px;color:#f4eadc;cursor:pointer;text-align:left}
.date-trigger:focus-visible,.calendar-nav:focus-visible,.calendar-day:focus-visible{outline:2px solid #3875e6;outline-offset:2px}
.date-trigger #date-display{font-size:13px;color:#f4eadc}
.date-icon{font-size:20px;color:#a9a39b}
.time-field select:disabled{opacity:.75;cursor:not-allowed}
.calendar-popover{position:absolute;z-index:30;top:calc(100% + 8px);left:0;width:min(310px,calc(100vw - 48px));padding:15px;background:#fff;color:#171717;border-radius:9px;box-shadow:0 12px 35px rgba(0,0,0,.38)}
.calendar-popover[hidden]{display:none}
.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.calendar-head strong{text-transform:capitalize;font-size:15px;font-weight:700}
.calendar-nav{width:30px;height:30px;border:0;background:transparent;color:#151515;font-size:25px;line-height:1;cursor:pointer;border-radius:5px}
.calendar-nav:disabled{opacity:.25;cursor:default}
.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}
.calendar-weekdays{margin-bottom:7px;color:#555;font-size:10px;font-weight:700}
.calendar-day{height:34px;border:0;border-radius:6px;background:transparent;color:#171717;font-size:13px;cursor:pointer}
.calendar-day:hover:not(:disabled){background:#e9edf5}
.calendar-day:disabled,.calendar-day.outside{color:#b7b7b7;cursor:default}
.calendar-day.today{box-shadow:inset 0 0 0 1px #c9a675}
.calendar-day.selected{background:#ef795b;color:#fff}
.calendar-hint{font-size:10px;color:#888;margin:11px 0 0;text-align:center}
.footer-socials{display:flex;gap:16px}
.footer-socials a{color:#d1b184}
.contact-line a:hover{color:#d1b184}
@media(max-width:720px){.booking-date-time{grid-template-columns:1fr 1fr}.calendar-popover{width:min(310px,calc(100vw - 44px))}.footer-socials{order:2}}


/* DARWIN footer: navy pub palette inspired by the supplied reference */
.site-footer{position:relative;display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:clamp(28px,5vw,76px);min-height:290px;padding:48px clamp(28px,8.7vw,140px) 62px;background:#1d315d;border-top:1px solid rgba(219,185,133,.22);color:#e8eaf2;align-items:start}
.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:13px;min-width:0}
.footer-brand-column{gap:20px}
.site-footer .brand-footer{width:auto;align-items:flex-start;color:#fff}
.site-footer .brand-footer .brand-name{font-size:38px;letter-spacing:2px}
.site-footer .brand-footer .brand-sub{font-size:9px;letter-spacing:5px}
.footer-column h2{margin:0 0 8px;color:#65c3d5;font-size:14px;font-weight:600;letter-spacing:1.7px}
.footer-column>a:not(.brand){font-size:14px;color:#e1e5ef;transition:color .2s}
.footer-column>a:not(.brand):hover,.footer-bottom a:hover{color:#e1bd88}
.footer-phone{margin:0;font-size:17px;color:#fff}
.footer-socials{display:flex;gap:10px}
.footer-social-icons a{width:37px;height:37px;display:grid;place-items:center;border-radius:50%;background:#f4f6fb;color:#20345f;font-weight:700;font-size:12px;text-transform:uppercase;transition:transform .2s,background .2s}
.footer-social-icons a:hover{transform:translateY(-3px);background:#e4c18f}
.footer-bottom{position:absolute;left:clamp(28px,8.7vw,140px);right:clamp(28px,8.7vw,140px);bottom:18px;display:flex;justify-content:space-between;gap:20px;padding-top:13px;border-top:1px solid rgba(232,234,242,.15);font-size:10px;color:#b5bfd4}
.footer-bottom a{color:#d9bc91}
.contact-line a{overflow-wrap:anywhere}
.phone-input{display:flex;align-items:center;width:100%;height:42px;background:#111a29;border:1px solid rgba(217,208,195,.25);border-radius:5px;overflow:hidden}
.phone-input:focus-within{border-color:#3875e6}
.phone-prefix{padding-left:12px;color:#f4eadc;font:inherit;font-size:14px;line-height:inherit}
.phone-input input{flex:1;min-width:0;width:100%;height:40px!important;border:0!important;background:transparent!important;border-radius:0!important;padding:0 10px!important;outline:none!important;color:#f4eadc;font:inherit}
.phone-hint{font-size:9px!important;color:#858b94!important;margin-top:3px!important}
.booking-status-lookup{margin-top:18px;padding-top:16px;border-top:1px solid #ffffff25}.booking-status-lookup h3{margin:0;font-size:14px;color:#f1e7d6}.booking-status-lookup>p{margin:5px 0 12px;color:#c8c0b5;font-size:11px}.booking-status-lookup form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center}.booking-status-lookup .button{min-height:42px;padding:10px 13px;font-size:11px}.reservation-status-result{margin-top:12px;display:grid;gap:8px}.reservation-status-result[hidden]{display:none}.reservation-status-item{display:grid;gap:4px;padding:11px 12px;background:#17263d;border:1px solid #ffffff28;border-radius:6px;color:#f1e7d6;font-size:11px}.reservation-status-item>span{color:#e5c28d;font-weight:700}.reservation-status-item small{color:#c8c0b5}.reservation-status-item.status-confirmed{border-color:#6cae8a}.reservation-status-item.status-rejected,.reservation-status-item.status-cancelled{border-color:#bd7777}
@media(max-width:850px){.site-footer{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 28px;padding:38px 28px 68px}.footer-bottom{left:28px;right:28px}}
@media(max-width:720px){.phone-prefix,.phone-input input{font-size:16px!important}}
@media(max-width:520px){.site-footer{grid-template-columns:1fr 1fr;gap:28px 18px;padding:34px 22px 68px}.footer-brand-column{grid-column:1/-1}.site-footer .brand-footer .brand-name{font-size:32px}.footer-column h2{font-size:11px;letter-spacing:1.2px}.footer-column>a:not(.brand){font-size:13px}.footer-phone{font-size:16px}.footer-bottom{left:22px;right:22px;font-size:9px}}


/* Legal pages, Cookie consent, contrast and keyboard accessibility */
.skip-link{position:fixed;z-index:200;top:10px;left:10px;padding:12px 16px;background:#fff;color:#111;border-radius:5px;transform:translateY(-160%);font-weight:700}.skip-link:focus{transform:translateY(0)}
:focus-visible{outline:3px solid #70d5f0!important;outline-offset:3px!important}
.field span,.eyebrow,.booking-kicker,.contact-line span{color:#e2bd87}.form-note,.phone-hint,.dish-main p,.menu-intro>p,.broadcast-content>p:not(.eyebrow){color:#c8c0b5}
.nav-link,.footer-column>a:not(.brand),.contact-line p{color:#f0f1f5}
.cookie-banner{position:fixed;z-index:100;left:20px;right:20px;bottom:20px;max-width:920px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 22px;background:#fff;color:#172033;border:1px solid #cbd2df;border-radius:12px;box-shadow:0 12px 45px rgba(0,0,0,.35)}.cookie-banner[hidden]{display:none}
.cookie-banner-copy{max-width:570px}.cookie-banner-copy strong{font-size:16px}.cookie-banner-copy p{margin:5px 0 0;font-size:13px;line-height:1.5;color:#344054}.cookie-banner-copy a,.consent-field a{color:#174b9a;text-decoration:underline;text-underline-offset:3px}
.cookie-banner-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-choice{min-height:42px;padding:9px 14px;border:1px solid #193765;border-radius:6px;font:600 12px "DM Sans",sans-serif;cursor:pointer}.cookie-necessary{background:#fff;color:#193765}.cookie-accept{background:#193765;color:#fff}.cookie-choice:hover{filter:brightness(1.12)}
.consent-field{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.5;color:#f1f3f7}.consent-field input{width:17px;height:17px;flex:0 0 17px;margin:1px 0 0;accent-color:#70d5f0}
.legal-page{max-width:900px;margin:0 auto;padding:150px 28px 90px;color:#f1e7d6}.legal-page h1{font:500 clamp(38px,6vw,58px)/1.1 "Playfair Display",serif;margin:0 0 24px}.legal-page h2{font:500 25px "Playfair Display",serif;color:#f0d2a6;margin:32px 0 10px}.legal-page p,.legal-page li{color:#e0d9cf;line-height:1.75}.legal-note{padding:16px 18px;border-left:3px solid #e0bd88;background:#1c293d;color:#fff}.legal-updated{font-size:12px;color:#c6b9a7}
@media(max-width:720px){.cookie-banner{left:10px;right:10px;bottom:10px;display:block;padding:17px}.cookie-banner-actions{margin-top:14px}.cookie-choice{flex:1}.legal-page{padding:120px 22px 65px}}
@media(prefers-reduced-motion:reduce){.skip-link{transition:none}}
@media(forced-colors:active){:focus-visible{outline:2px solid Highlight!important}.cookie-banner{border:2px solid CanvasText}}

/* Pickup ordering */
.add-to-cart{padding:7px 13px;background:#172b4d;border:1px solid #c9a675;border-radius:5px;color:#fff;cursor:pointer}.add-to-cart:hover{background:#244a80}
.pickup-cart{max-width:760px;margin:65px auto 25px;padding:28px;background:#121a28;border:1px solid #c9a67588;border-radius:12px}.pickup-cart h2{font:500 32px 'Playfair Display',serif}.pickup-cart form{display:grid;gap:13px}.pickup-cart form>label{display:grid;gap:6px;color:#e2bd87;font-size:13px}
.pickup-cart input:not([type=radio]):not([type=checkbox]),.pickup-cart textarea{width:100%;padding:12px;background:#111a29;color:#fff;border:1px solid #ffffff38;border-radius:5px}.pickup-cart fieldset{display:flex;gap:18px;flex-wrap:wrap;border:1px solid #ffffff38;border-radius:6px;padding:12px}.pickup-cart fieldset label{display:flex;align-items:center;gap:7px}.pickup-cart .consent-field{display:flex;align-items:flex-start}
.cart-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #ffffff20}.cart-controls{display:flex;align-items:center;gap:10px}.cart-controls button{background:#172b4d;color:white;border:1px solid #ffffff44;border-radius:4px;width:28px;height:28px}.cart-total{display:flex;justify-content:space-between;padding:15px 0;border-top:1px solid #c9a675;font-size:18px}#pickup-feedback{min-height:24px;color:#e8c58f}@media(max-width:720px){.pickup-cart{margin:40px 0 20px;padding:18px}.cart-row{flex-direction:column}}
/* Pickup cart flow refinement */
.menu-page .dish{grid-template-columns:minmax(0,1fr) auto auto 30px;align-items:center}.add-to-cart{width:28px;height:28px;padding:0;display:grid;place-items:center;border:1px solid rgba(201,166,117,.65);border-radius:50%;background:transparent;color:#e4c18f;font-size:22px;font-weight:400;line-height:1;cursor:pointer;transition:background .2s,color .2s,transform .2s}.add-to-cart:hover,.add-to-cart.is-added{background:#d6b27e;color:#111a29;transform:scale(1.06)}
.pickup-floating-wrap{position:fixed;z-index:80;right:26px;bottom:26px;width:min(420px,calc(100vw - 32px));display:grid;gap:8px}.pickup-floating-wrap[hidden]{display:none}.pickup-floating{display:flex;align-items:center;gap:13px;min-width:260px;padding:14px 18px;background:#1d315d;border:1px solid #d0ae7b;border-radius:10px;box-shadow:0 12px 38px #0008;color:#fff;transition:transform .2s,box-shadow .2s}.pickup-floating:hover{transform:translateY(-3px);box-shadow:0 16px 44px #000a}.pickup-floating-icon{font-size:22px;color:#e4c18f}.pickup-floating-copy{display:grid;gap:2px}.pickup-floating-copy strong{font-size:13px}.pickup-floating-copy small{font-size:10px;color:#c7d1e4}.pickup-floating-total{margin-left:auto;color:#f0d3a5;font-size:13px;white-space:nowrap}.pickup-floating-items{max-height:35vh;overflow:auto;padding:10px 14px;background:#17263d;border:1px solid #d0ae7b;border-radius:8px;box-shadow:0 12px 38px #0008}.pickup-floating-item{display:flex;justify-content:space-between;gap:14px;padding:7px 0;color:#fff;font-size:12px}.pickup-floating-item+.pickup-floating-item{border-top:1px solid #ffffff20}.pickup-floating-item strong{flex:none;color:#f0d3a5}
.pickup-page{min-height:65vh;padding:145px 24px 90px;background:radial-gradient(ellipse at top,#1c2c4c 0%,#100d0b 55%)}.pickup-page-hero{text-align:center;max-width:680px;margin:0 auto 38px}.pickup-page-hero h1{font:500 clamp(42px,6vw,64px)/1.1 'Playfair Display',serif;margin:0 0 12px}.pickup-page-hero>p:last-child{color:#c8c0b5}.pickup-page-content{max-width:850px;margin:auto}.pickup-order-card,.pickup-checkout-card{padding:clamp(20px,4vw,34px);background:#121a28;border:1px solid #c9a67570;border-radius:12px;box-shadow:0 18px 50px #0003}.pickup-order-heading{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:20px}.pickup-order-heading h2,.pickup-checkout-card h2{font:500 30px 'Playfair Display',serif;margin:0}.pickup-back-link{font-size:12px;color:#e2bd87}.pickup-line{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:15px 0;border-bottom:1px solid #ffffff20}.pickup-line-info{display:grid;gap:5px}.pickup-line-info strong{font-size:13px}.pickup-line-info small{font-size:11px;color:#b7aa99}.pickup-line-controls{display:flex;align-items:center;gap:9px}.pickup-line-controls button{width:28px;height:28px;border:1px solid #c9a67580;border-radius:50%;background:transparent;color:#f0d3a5;cursor:pointer}.pickup-line-controls span{font-size:11px;min-width:35px;text-align:center}.pickup-line-sum{font-size:13px;color:#f0d3a5;white-space:nowrap}.pickup-order-total{display:flex;justify-content:space-between;align-items:center;padding:22px 0;font-size:16px}.pickup-order-total strong{font-size:20px;color:#f0d3a5}.pickup-checkout-trigger{width:100%}.pickup-checkout-trigger:disabled{opacity:.45;cursor:not-allowed;transform:none}.pickup-empty,.pickup-empty-hint{color:#b9ad9f;font-size:13px}.pickup-checkout-card{margin-top:22px}.pickup-checkout-card[hidden]{display:none}.pickup-checkout-card form{display:grid;gap:15px;margin-top:22px}.pickup-checkout-card form>label{display:grid;gap:7px;color:#e2bd87;font-size:12px}.pickup-checkout-card input:not([type=radio]):not([type=checkbox]),.pickup-checkout-card textarea{width:100%;padding:12px;background:#111a29;color:#fff;border:1px solid #ffffff38;border-radius:5px}.pickup-checkout-card fieldset{display:flex;gap:20px;flex-wrap:wrap;border:1px solid #ffffff38;border-radius:6px;padding:14px}.pickup-checkout-card fieldset label{display:flex;align-items:center;gap:7px;font-size:12px}.pickup-checkout-card .consent-field{display:flex;align-items:flex-start;gap:9px;color:#f1f3f7}.pickup-checkout-card .consent-field input{width:17px;flex:0 0 17px}.pickup-checkout-card .consent-field a{color:#8fc3ff;text-decoration:underline}.pickup-checkout-card #pickup-feedback{min-height:24px;color:#e8c58f}
@media(max-width:720px){.menu-page .dish{grid-template-columns:minmax(0,1fr) auto auto 28px;gap:7px}.pickup-floating-wrap{right:12px;bottom:12px;left:12px;width:auto}.pickup-page{padding:112px 16px 60px}.pickup-order-heading{align-items:flex-start;flex-direction:column}.pickup-line{grid-template-columns:minmax(0,1fr) auto;gap:8px}.pickup-line-sum{grid-column:1;grid-row:2}.pickup-line-controls{grid-column:2;grid-row:1/3}.pickup-checkout-card fieldset{display:grid;gap:10px}}

/* Pickup basket improvements and live order status */
.pickup-cart-actions{display:flex;justify-content:flex-end;margin:8px 0}
.pickup-clear-button,.pickup-remove-item{border:1px solid rgba(201,166,117,.45);border-radius:5px;background:transparent;color:#d9bd92;padding:7px 11px;font-size:11px;cursor:pointer}
.pickup-clear-button:disabled{opacity:.35;cursor:not-allowed}
.pickup-remove-item{grid-column:1/-1;justify-self:end;border:0;padding:2px 0;text-decoration:underline;text-underline-offset:3px}
.pickup-status-card{margin-top:22px;padding:clamp(20px,4vw,34px);background:#121a28;border:1px solid #c9a67570;border-radius:12px;box-shadow:0 18px 50px #0003}
.pickup-status-card h2{font:500 30px 'Playfair Display',serif;margin:0}
.pickup-status-intro{font-size:13px;color:#c8c0b5}
.pickup-status-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:end}
.pickup-status-form label{display:grid;gap:7px;color:#e2bd87;font-size:12px}
.pickup-status-form input{width:100%;height:46px;padding:12px;background:#111a29;color:#fff;border:1px solid #ffffff38;border-radius:5px}
.pickup-status-form .button{grid-column:1/-1}
.order-status-result{margin-top:18px;padding:16px 18px;display:grid;gap:7px;background:#17263d;border:1px solid #c9a67570;border-radius:8px}
.order-status-result[hidden]{display:none}
.order-status-result>strong{font-size:12px;color:#c9a675}
.order-status-label{font:500 22px 'Playfair Display',serif;color:#f1e7d6}
.order-status-result small{font-size:11px;color:#c8c0b5}
.order-status-result.status-ready{border-color:#6cae8a}
.order-status-result.status-cancelled,.order-status-result.status-error{border-color:#bd7777}
.pickup-track-after{display:inline-block;margin-top:10px;color:#e2bd87;text-decoration:underline;text-underline-offset:4px;font-size:12px}
.pickup-track-after[hidden]{display:none}
.pickup-checkout-card .phone-input input{background:transparent!important;border:0!important;padding:0 10px!important}
@media(max-width:720px){.pickup-status-form{grid-template-columns:1fr}.pickup-status-form .button{grid-column:auto}}

/* Compact quantity stepper on menu items */
.menu-page .dish{grid-template-columns:minmax(0,1fr) auto auto 96px}
.dish-cart-control{width:96px;min-height:38px;display:flex;align-items:center;justify-content:flex-end;gap:7px}
.dish-cart-control .add-to-cart{width:38px;height:38px;flex:0 0 38px;border:0;border-radius:50%;background:#d6b27e;color:#17120e;font-size:25px;font-weight:500;box-shadow:0 2px 8px #0003}
.dish-cart-control .add-to-cart:hover{background:#e5c28d;transform:scale(1.04)}
.cart-stepper-button{width:29px;height:29px;flex:0 0 29px;display:grid;place-items:center;border:1px solid #c9a675;border-radius:50%;background:#d6b27e;color:#17120e;font-size:20px;line-height:1;cursor:pointer}
.cart-stepper-button:hover{background:#e5c28d}
.cart-stepper-button:disabled{opacity:.45;cursor:not-allowed}
.cart-stepper-value{min-width:17px;text-align:center;color:#f0d3a5;font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}
@media(max-width:720px){.menu-page .dish{grid-template-columns:minmax(0,1fr) auto auto 90px;gap:7px}.dish-cart-control{width:90px;gap:5px}.cart-stepper-button{width:27px;height:27px;flex-basis:27px}}

/* Menu quantity control: compact plus expands left into a gold pill */
.dish-cart-control{width:38px;min-height:34px;display:flex;align-items:center;justify-content:flex-end;gap:0;overflow:hidden;white-space:nowrap;transition:width .28s cubic-bezier(.2,.8,.2,1),background .22s,border-color .22s;padding:0;border:1px solid transparent;border-radius:999px}
.dish-cart-control.is-expanded{width:88px;gap:5px;padding:3px 4px;background:#d6b27e;border-color:#d6b27e;box-shadow:0 2px 9px #0003}
.dish-cart-control .add-to-cart{width:28px;height:28px;flex:0 0 28px;border:0;border-radius:50%;background:#d6b27e;color:#17120e;font-size:19px;font-weight:500;line-height:1;box-shadow:none}
.dish-cart-control .add-to-cart:hover{background:#e5c28d;transform:none}
.dish-cart-control.is-expanded .cart-stepper-button{width:24px;height:24px;flex:0 0 24px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:#17120e;font-size:18px;line-height:1;cursor:pointer;transition:background .18s}
.dish-cart-control.is-expanded .cart-stepper-button:hover{background:#ffffff55}
.dish-cart-control.is-expanded .cart-stepper-value{min-width:14px;text-align:center;color:#17120e;font-size:13px;font-weight:700}
@media(max-width:720px){.dish-cart-control{width:34px}.dish-cart-control.is-expanded{width:84px}}
/* A single panel for the order and its contents. */
.pickup-floating-wrap{gap:0;overflow:hidden;border:1px solid #d0ae7b;border-radius:10px;background:#1d315d;box-shadow:0 12px 38px #0008}
.pickup-floating{border:0;border-radius:0;box-shadow:none}
.pickup-floating:hover{transform:none;box-shadow:none}
.pickup-floating-items{border:0;border-top:1px solid #ffffff35;border-radius:0;box-shadow:none;background:transparent}
.pickup-checkout-card form>label[hidden]{display:none}
.phone-input .phone-prefix,.field .phone-input .phone-prefix{color:#aab0ba;font-size:15px;line-height:normal;font-weight:400}
.phone-input input,.pickup-checkout-card .phone-input input{color:#aab0ba!important}
.phone-input input:-webkit-autofill,.phone-input input:-webkit-autofill:hover,.phone-input input:-webkit-autofill:focus{-webkit-text-fill-color:#aab0ba!important;-webkit-box-shadow:0 0 0 1000px #111a29 inset!important;transition:background-color 5000s ease-in-out 0s}
@media(max-width:720px){.phone-input .phone-prefix,.field .phone-input .phone-prefix{font-size:16px}}
