@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--green:#173f35;--ink:#243c33;--muted:#748077;--paper:#f8f7f2;--line:#dce0d6;--gold:#b79c6d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font:15px 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}img{width:100%;object-fit:cover;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400}h2{font-size:clamp(34px,4vw,52px);line-height:1.18;letter-spacing:-1.6px}h3{font-size:25px}p{line-height:1.8}.header{height:106px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;gap:24px}.brand{display:flex;align-items:center;gap:12px;font:25px 'Playfair Display',Georgia,serif;white-space:nowrap}.brand small{display:block;font:8px 'DM Sans',sans-serif;letter-spacing:3px;margin-top:6px}.emblem{width:40px;height:48px;border:1px solid var(--gold);border-radius:25px 25px 0 0;display:grid;place-items:center;color:var(--gold);font:34px Georgia}.header nav{display:flex;gap:30px;font-size:13px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;border:1px solid var(--green);background:var(--green);color:white;padding:20px 26px;font-size:13px;transition:background .2s}.button:hover{background:#2d5b4c}.button.small{padding:15px 20px}.button span{font-size:20px}.button.cream{background:#f6f3e8;color:var(--green);border-color:#f6f3e8}.hero{height:640px;min-height:530px;background-position:center 54%;background-size:cover;color:#fff;position:relative;margin:0 24px}.hero-content{padding:110px 7%;max-width:790px}.eyebrow{font-size:10px;letter-spacing:2.6px;font-weight:600;margin-bottom:25px}.green{color:#63795b}.hero h1{font-size:clamp(58px,6.4vw,88px);line-height:1.08;letter-spacing:-3px;margin-bottom:25px}.hero-content>p:not(.eyebrow){font-size:16px;color:#e3e7df;margin-bottom:30px}.hero-bottom{position:absolute;bottom:28px;left:7%;right:5%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.8px}.availability{position:relative;margin:-1px auto 0;display:grid;grid-template-columns:1fr 1fr 1fr 1.4fr;align-items:center;max-width:1110px;background:#eeeee5;padding:26px 30px;gap:25px}.availability label{font-size:9px;letter-spacing:2px}.availability input,.availability select{border:0;background:transparent;padding:10px 0;width:100%;color:var(--green)}.availability>div{border-right:1px solid #d4d8cb;padding-right:20px}.section{max-width:1240px;margin:auto;padding:105px 45px}.story{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.story-photo{position:relative}.story-photo img{height:510px}.photo-note{position:absolute;bottom:25px;right:-30px;background:#e9e7d8;padding:28px 35px;font:italic 23px Georgia;box-shadow:0 5px 30px #1c30200a}.body-copy{color:#6e7972;font-size:14px;margin-bottom:30px}.text-link{font-size:12px;border-bottom:1px solid #8d9d8b;display:flex;justify-content:space-between;padding:12px 0;gap:20px}.story-details{border-top:1px solid var(--line);margin-top:40px;padding-top:25px;display:flex;justify-content:space-between;color:#6e7f68;font:italic 20px Georgia}.story-details small{display:block;font:10px 'DM Sans',sans-serif;margin-top:9px;color:var(--ink)}.rooms-section{padding-top:35px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:35px}.section-heading h2{margin-bottom:0}.section-heading p{font-size:13px;color:var(--muted)}.room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.room-image{position:relative}.room-image img{height:290px;transition:transform .3s}.room-image{overflow:hidden}.room-card:hover img{transform:scale(1.035)}.room-image>span{position:absolute;bottom:15px;left:15px;color:#fff;font-size:8px;letter-spacing:2px;background:#163a3488;padding:8px}.room-top{display:flex;justify-content:space-between;align-items:center;margin-top:23px}.room-top h3{margin-bottom:12px}.room-card p{font-size:12px;color:var(--muted);min-height:65px}.room-meta{font-size:8px;letter-spacing:1px;display:flex;justify-content:space-between;gap:10px;padding:14px 0;border-top:1px solid var(--line)}.room-meta strong{font-size:12px;letter-spacing:0;color:var(--ink)}.rate-note{font-size:11px;margin-top:25px}.experience{background:var(--green);color:#f8f7ed;text-align:center;padding:85px 6%;margin:0 24px}.experience .eyebrow{color:#c4cbb7}.experience h2{font-size:56px}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1050px;margin:55px auto 0}.experience-grid>div{padding:10px 40px;border-right:1px solid #ffffff25}.experience-grid>div:last-child{border:0}.experience-grid span{color:#c8bd8e;font-size:35px}.experience-grid h3{font-size:23px;margin:18px 0 12px}.experience-grid p{font-size:12px;color:#bccbc0;max-width:245px;margin:auto}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery figure{margin:0}.gallery img{height:320px}.gallery figcaption{font-size:11px;color:var(--muted);margin-top:12px}.reservation{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;border-top:1px solid var(--line)}.reservation>div>p{max-width:360px;font-size:13px}.enquiry-form{background:#eeeee5;padding:35px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}label{display:block;font-size:12px;color:#53635a;margin-bottom:20px}input,select,textarea{display:block;background:transparent;width:100%;border:0;border-bottom:1px solid #bac5b8;padding:12px 2px;color:var(--green);border-radius:0}textarea{resize:vertical}input[type=file]{font-size:12px}input[type=number]{appearance:textfield}.enquiry-form .button{width:100%;margin-bottom:15px}.muted{color:var(--muted)}small.muted{font-size:10px}footer{background:#eaece2;padding:55px 6% 25px;display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}footer>p{text-align:right;font:italic 24px Georgia}footer>div:not(.brand){display:flex;gap:30px;font-size:12px}footer>small{text-align:right;font-size:10px;color:var(--muted)}.notice{padding:18px;background:#eeeee1;border-left:3px solid var(--gold);font-size:13px;line-height:1.7}.success{background:#e7f1e5;border-color:#528947}.error{background:#f8e6df;border-color:#b6583c;color:#863e28}.admin-body{background:#f2f3ed}.auth{max-width:470px;margin:70px auto;background:var(--paper);padding:45px;border:1px solid var(--line)}.auth .brand{margin-bottom:55px}.auth h1{font-size:38px}.auth .button{width:100%;margin:10px 0 25px}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:var(--green);color:#f4f4e8;padding:35px 25px;display:flex;flex-direction:column}.sidebar .brand{font-size:23px}.sidebar>.eyebrow{font-size:8px;margin:35px 0 20px;color:#abbdaa}.sidebar nav{display:flex;flex-direction:column;gap:6px}.sidebar nav a{padding:14px 15px;font-size:13px;color:#c1cec2}.sidebar nav a.active,.sidebar nav a:hover{background:#ffffff12;color:white}.sidebar-user{margin-top:auto;padding:25px 10px 0;border-top:1px solid #ffffff25}.sidebar-user small{display:block;color:#c1cec2;margin-top:7px}.logout{background:transparent;border:0;color:#e5e9de;padding:18px 0}.admin-main{margin-left:250px;padding:50px 55px;max-width:1550px}.admin-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:35px;gap:25px}.admin-heading h1{font-size:45px;margin-bottom:0}.admin-heading .eyebrow{margin-bottom:12px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-bottom:30px}.stats article{padding:30px;background:var(--paper);border:1px solid var(--line)}.stats small{font-size:10px;letter-spacing:1.5px}.stats strong{display:block;font:50px Georgia;margin-top:15px}.panel{background:var(--paper);border:1px solid var(--line);padding:30px;margin-bottom:25px}.panel h2{font-size:29px;letter-spacing:-.6px}.panel p{font-size:13px;color:#657469}.panel .button{margin-top:10px}.danger{background:transparent;border:1px solid #c9aaa0;color:#9c4b38;padding:14px 20px;margin:10px}.photo-panel{padding:18px;overflow-wrap:anywhere}.photo-panel img{height:180px;margin-bottom:20px}.photo-panel h3{font-size:21px}.inline-form{display:flex;align-items:end;gap:20px}.inline-form label{min-width:160px;margin-bottom:0}.badge{background:#e2e9db;color:var(--green);padding:8px 15px;font-size:11px}
@media(min-width:1600px){.hero{height:740px}.hero-content{padding-top:150px}}@media(max-width:1000px){.header nav{gap:15px}.header{padding:0 25px}.story{gap:45px}.section{padding:75px 30px}.room-image img{height:230px}.reservation{gap:35px}.admin-main{padding:35px 25px}.sidebar{width:215px;padding:30px 18px}.admin-main{margin-left:215px}.admin-main .room-grid{grid-template-columns:1fr 1fr}.room-meta{flex-direction:column}.experience-grid>div{padding:10px 22px}}@media(max-width:720px){.header{height:auto;min-height:95px;flex-wrap:wrap;padding:18px 22px;gap:18px}.header .brand{font-size:22px}.header nav{order:3;width:100%;justify-content:space-between;font-size:10px;border-top:1px solid var(--line);padding-top:15px}.header .button{font-size:10px;padding:12px;gap:8px}.hero{margin:0 10px;height:570px}.hero-content{padding:100px 25px}.hero h1{font-size:61px}.hero-bottom{left:25px;right:25px;font-size:7px}.hero-bottom>span{display:none}.availability{grid-template-columns:1fr 1fr;margin:0 10px;padding:20px;gap:15px}.availability>div{padding:0 10px 0 0}.availability .button{padding:13px;font-size:11px;gap:8px}.section{padding:65px 24px}.story,.reservation{grid-template-columns:1fr;gap:50px}.story-photo img{height:380px}.photo-note{right:-7px;font-size:20px;padding:22px}.section-heading{align-items:start;flex-direction:column;gap:18px}.section-heading p{margin:0}.room-grid{grid-template-columns:1fr;gap:40px}.room-image img{height:330px}.room-card p{min-height:0}.room-meta{flex-direction:row}.experience{margin:0 10px;padding:65px 25px}.experience h2{font-size:43px}.experience-grid{grid-template-columns:1fr;gap:30px;margin-top:30px}.experience-grid>div{border-right:0;border-bottom:1px solid #ffffff20;padding-bottom:25px}.gallery-grid{grid-template-columns:1fr;gap:30px}.gallery img{height:310px}.enquiry-form{padding:25px}.form-grid{gap:0 16px}footer{grid-template-columns:1fr;gap:25px;padding:40px 25px}footer>p,footer>small{text-align:left}footer>p{margin:0}.auth{margin:25px 15px;padding:30px}.sidebar{position:static;width:100%;padding:20px}.sidebar>.eyebrow{margin:20px 0 12px}.sidebar nav{flex-direction:row;flex-wrap:wrap;gap:4px}.sidebar nav a{padding:9px;font-size:11px}.sidebar-user{margin-top:15px;display:flex;align-items:center;gap:15px;padding-top:12px}.sidebar-user small{margin:0}.sidebar-user form{margin-left:auto}.logout{padding:5px}.admin-main{margin:0;padding:30px 20px}.admin-heading h1{font-size:34px}.admin-heading .eyebrow{font-size:8px}.admin-heading .button{padding:10px;font-size:10px;white-space:nowrap}.stats{gap:10px}.stats article{padding:18px 12px}.stats small{font-size:8px}.stats strong{font-size:35px}.panel{padding:22px}.admin-main .room-grid{grid-template-columns:1fr}.inline-form{flex-wrap:wrap}.panel .form-grid{grid-template-columns:1fr}.danger{margin-left:0}}
/* Restaurant palette and menu */
.restaurant{--green:#344431;--ink:#293424;--paper:#fbf8f0;--gold:#b98949}.topbar{background:#344431;color:#efe9db;padding:10px 5%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px}.restaurant .hero{height:650px}.restaurant .hero-content{max-width:820px}.restaurant .hero h1{font-size:clamp(58px,6.8vw,94px)}.food-strip{display:flex;justify-content:space-around;background:#eee8d9;margin:0 24px;padding:25px;font-size:12px}.restaurant #menu{padding-bottom:35px}.filters{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 35px}.filters button{border:1px solid #d9d4c6;border-radius:30px;background:transparent;padding:12px 21px;color:var(--ink)}.filters button.active{background:var(--green);color:white;border-color:var(--green)}.food-grid{row-gap:45px}.food-grid .room-image img{height:255px}.food-grid .room-top{align-items:start;gap:15px}.food-grid h3{font-size:24px}.food-price{font-size:13px;white-space:nowrap;color:#946d38;padding-top:6px}.add-dish{display:flex;justify-content:space-between;width:100%;padding:14px 0;border:0;border-top:1px solid var(--line);background:transparent;color:var(--green)}.add-dish span{font-size:22px}.order-line{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #d2d5c6;padding-bottom:10px}.order-line small{display:block;color:#78806c;margin-top:6px}.order-line input{width:65px;text-align:center;border:1px solid #c7cdbd;padding:10px}.order-total{display:flex;justify-content:space-between;margin:25px 0}.catering-form{max-width:650px;margin:35px auto 0;text-align:left;background:#ffffff0a;padding:30px}.catering-form label,.catering-form input,.catering-form textarea{color:#f7f4e9}.catering-form .notice{color:#293424}.restaurant .experience>p:not(.eyebrow){max-width:650px;margin:auto;color:#d2d9c9}.check-label{display:flex;align-items:center;gap:10px}.check-label input{width:auto}.sample-note{font-size:11px;color:#84745d}.contact-details{flex-direction:column;gap:12px!important}[hidden]{display:none!important}@media(max-width:720px){.topbar{gap:15px;font-size:8px}.restaurant .hero{height:560px}.food-strip{margin:0 10px;padding:18px 12px;gap:15px;font-size:9px}.food-grid .room-image img{height:300px}.catering-form{padding:20px 10px}.order-total{font-size:12px}.restaurant .header nav{gap:10px;flex-wrap:wrap}.restaurant .hero h1{font-size:62px}}
/* Asian Hotel: black, chilli red and signature gold. */
:root,.restaurant{--green:#1b140d;--ink:#21180f;--muted:#82735d;--paper:#faf7f1;--line:#e8ddcb;--gold:#c99a36}
body{font-family:'DM Sans',Arial,sans-serif}.brand-logo{width:62px;height:62px;object-fit:contain;border-radius:50%;background:#000;border:2px solid var(--gold);padding:2px;flex-shrink:0}.brand{font-family:'DM Sans',Arial,sans-serif;font-size:26px;font-weight:800;text-transform:uppercase;gap:13px}.brand small{font-size:12px;letter-spacing:.2px;text-transform:none;font-weight:500;color:#9a712d}.restaurant .topbar{background:#17110d;color:#dfc38b;padding:9px 2%;font-size:10px}.restaurant .header{background:#fff;border:1.5px solid var(--gold);border-radius:15px;height:88px;margin:16px 12px;padding:10px 18px;gap:20px}.header nav{font-size:12px;font-weight:700;text-transform:uppercase;gap:24px}.header nav a:hover{color:#a47721}.button,.category-open{border:2px solid var(--gold);background:#19120d;color:#d8ad48;border-radius:30px;font-weight:700;padding:14px 24px}.button:hover,.category-open:hover{background:#c99a36;color:#17110d}.button.cream{background:#d5a943;color:#19120d;border-color:#d5a943}.brand-hero{margin:14px 12px 0;padding:10px;border:1.5px solid var(--gold);border-radius:17px;background:#f4eee1;overflow:hidden}.hero-banner{width:100%;height:auto;aspect-ratio:1852/791;object-fit:cover;border-radius:10px;background:#100805}.banner-actions{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:22px 25px 12px}.banner-actions h1{font:800 clamp(20px,2.2vw,30px) 'DM Sans',Arial,sans-serif;text-transform:uppercase;letter-spacing:-.7px;margin:0 0 7px}.banner-actions p{font-size:12px;margin:0;color:#80715b}.banner-actions .button{flex-shrink:0}.food-strip{background:transparent;margin:0 22px;border-bottom:1px solid var(--line);font-size:11px;color:#947333}.section{max-width:1480px;padding:70px 30px}h2,h3{font-family:'DM Sans',Arial,sans-serif;font-weight:800;letter-spacing:-.6px}h2{font-size:clamp(30px,3.5vw,46px)}.eyebrow.green{color:#a77b2e}.restaurant #menu .section-heading{margin-bottom:15px}.restaurant #menu .section-heading .eyebrow{margin-bottom:10px}.menu-intro{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 23px}.category-count,.menu-hint{border:1.5px solid var(--gold);padding:10px 16px;border-radius:28px;font-size:12px}.category-count{background:#19120d;color:#cfa13d;font-weight:700}.menu-hint{color:#4f402c}.category-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}.category-card{background:#fff;border:1px solid #e7d9bf;border-radius:15px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.category-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #44301414}.category-card>img{height:190px}.category-copy{padding:18px;display:flex;flex-direction:column;flex:1}.category-copy h3{font-size:17px;letter-spacing:0;line-height:1.3;margin-bottom:8px}.category-copy h3 span{color:var(--gold)}.category-copy p{font-size:13px;color:#a17a33;margin-bottom:24px}.category-open{align-self:start;margin-top:auto;padding:10px 18px;font-size:12px}.dish-heading{display:flex;justify-content:space-between;align-items:center;margin-top:48px;scroll-margin-top:25px}.dish-heading h3{font-size:25px;margin:0}.dish-heading a{font-size:12px;color:#916b2d}.filters{margin:22px 0 28px;gap:9px}.filters button{font-size:12px;padding:10px 18px;border-color:#e2d3b9}.filters button.active{color:#d8ad48;border-color:var(--gold)}.food-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.food-grid .room-card{background:white;border:1px solid #e7d9bf;border-radius:15px;overflow:hidden;padding-bottom:16px}.food-grid .room-top,.food-grid .room-card>p,.food-grid .add-dish,.food-grid .room-card>.muted{margin-left:20px;margin-right:20px}.food-grid h3{font-size:20px}.food-grid .room-top{margin-top:19px}.food-grid .room-card>p{min-height:44px}.food-grid .add-dish{width:calc(100% - 40px);color:#9b722a;font-weight:700}.room-image>span{background:#19120de8;color:#e0b653;border:1px solid #bf9236;border-radius:20px;letter-spacing:.6px}.food-price{color:#a87823}.story-photo img{border-radius:18px}.photo-note{background:#20150f;color:#dfb65c;border:1px solid #bb8e34;border-radius:7px}.experience{background:radial-gradient(ellipse at top right,#4d140d,#140e0a 70%);border:1px solid var(--gold);border-radius:18px}.experience h2{color:#d8ad48}.enquiry-form{background:#fff;border:1px solid #e7d9bf;border-radius:18px}.reservation{gap:65px}.order-line input{border-radius:7px;color:#21180f}.order-total strong{color:#9b7126}label{color:#6c5634}input,select,textarea{color:#241b10}.catering-form{border:1px solid #8e6c2b;border-radius:15px}.contact-details{font-size:12px}footer{background:#17110d;color:#e8d7b6;border-top:2px solid var(--gold)}footer>small{color:#b4a38a}.admin-body{background:#f7f3eb}.sidebar{background:#17110d;border-right:1px solid var(--gold)}.sidebar .brand{font-size:19px;gap:8px}.sidebar .brand-logo{width:45px;height:45px}.sidebar nav a{color:#d5c5a9}.sidebar nav a.active,.sidebar nav a:hover{background:#c99a3620;color:#e0b653;border-radius:8px}.sidebar-user small{color:#cab487}.auth{border:1px solid var(--gold);border-radius:18px}.auth .brand{font-size:23px}.panel,.stats article{background:#fff;border-color:#e7d9bf;border-radius:12px}.admin-heading h1,.auth h1{font-family:'DM Sans',Arial,sans-serif;font-weight:800}.notice{border-radius:7px}.badge{background:#f4e7c7;color:#7e591a}
@media(min-width:1600px){.section{max-width:1640px}.category-card>img{height:210px}}@media(max-width:1150px){.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.header nav{gap:13px;font-size:10px}.restaurant .header .brand{font-size:21px}.restaurant .header .brand-logo{width:50px;height:50px}}@media(max-width:720px){.restaurant .header{margin:10px 9px;padding:13px;height:auto;gap:14px}.restaurant .header .brand{font-size:20px}.header nav{padding-top:13px;font-size:10px;row-gap:14px}.header .button{font-size:10px;padding:10px 14px}.brand-hero{margin:10px 9px 0;padding:5px;border-radius:12px}.hero-banner{min-height:0;aspect-ratio:1852/791;object-fit:contain}.banner-actions{padding:17px 12px 12px;display:block}.banner-actions h1{font-size:21px;line-height:1.25}.banner-actions p{font-size:11px;margin-bottom:15px}.banner-actions .button{padding:10px 18px;font-size:11px}.food-strip{margin:0 13px;font-size:8px;padding:17px 0;gap:10px}.section{padding:48px 18px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.category-card>img{height:145px}.category-copy{padding:13px}.category-copy h3{font-size:14px}.category-copy p{font-size:11px;margin-bottom:17px}.category-open{padding:8px 12px;font-size:11px}.menu-intro{gap:8px}.category-count,.menu-hint{font-size:10px;padding:9px 12px}.food-grid{grid-template-columns:1fr}.food-grid .room-image img{height:270px}.dish-heading a{font-size:10px}.reservation{gap:25px}.sidebar .brand{font-size:22px}.experience{margin:0 10px;padding:45px 20px}.experience h2{font-size:34px}.restaurant footer .brand{font-size:24px}.restaurant footer .brand-logo{width:55px;height:55px}.admin-main .button{gap:12px}.auth .brand{white-space:normal}.topbar span:last-child{max-width:48%;text-align:right}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
img.photo-fallback{object-fit:contain;background:#080706;padding:20px}
/* Compact restaurant introduction */
.restaurant .header{max-width:1440px;margin:14px auto 18px;border:0;border-bottom:1px solid #e5d9c2;border-radius:0;background:transparent;height:84px;padding:10px 30px}.restaurant .header .brand-logo{width:54px;height:54px}.restaurant .header .brand{font-size:23px}.restaurant .header nav{font-size:11px;gap:22px}.restaurant .header .button{padding:12px 20px;font-size:12px}.compact-hero{max-width:1380px;margin:0 auto;background:#17130f;color:#faf7ef;display:grid;grid-template-columns:1.1fr 1fr;border-radius:16px;overflow:hidden;min-height:350px;border:1px solid #b58c3b}.compact-copy{padding:45px 48px;background:radial-gradient(ellipse at bottom left,#42301c55,transparent 75%)}.compact-copy .eyebrow{color:#caa559;letter-spacing:2px;font-size:10px;margin-bottom:20px}.compact-copy h1{font-family:'DM Sans',Arial,sans-serif;font-weight:700;font-size:clamp(34px,3.6vw,54px);line-height:1.12;letter-spacing:-1.8px;max-width:530px;margin-bottom:18px}.gold-dot{color:#d2a94e}.hero-description{max-width:465px;font-size:13px;line-height:1.8;color:#c4b9a7;margin-bottom:24px}.hero-ctas{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.gold-button{background:#d0a74c;color:#1b140d;border-color:#d0a74c;border-radius:7px;padding:12px 20px;font-size:12px;gap:25px}.gold-button:hover{background:#e6be67}.hero-chat{color:#ead7b0;font-size:12px;border-bottom:1px solid #655239;padding:9px 0;display:flex;gap:15px}.hero-chat:hover{color:#fff}.hero-signoff{display:flex;align-items:center;gap:10px;color:#a99a83;font-size:10px;margin-top:28px}.gold-line{display:inline-block;width:23px;height:1px;background:#c99a36}.compact-visual{position:relative;min-height:350px;overflow:hidden;background:#282017}.compact-visual>img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0}.compact-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#17130f40,transparent 35%),linear-gradient(0deg,#17130fa6,transparent 45%);pointer-events:none}.visual-caption{position:absolute;bottom:22px;left:28px;right:28px;z-index:1;font-size:9px;letter-spacing:2.4px;display:flex;justify-content:space-between;color:#f3e2bd}.visual-caption span{color:#e6be67}.food-strip{max-width:1380px;margin:0 auto;padding:18px 20px;color:#887347;font-size:10px}.restaurant #menu{padding-top:43px}.restaurant #menu .section-heading .eyebrow{font-size:9px;letter-spacing:2px}.restaurant #menu .section-heading h2{font-size:33px}.category-card>img{height:165px}.category-copy{padding:16px}.category-copy h3{font-size:15px}.category-copy p{margin-bottom:18px;font-size:12px}.category-open{padding:8px 15px;font-size:11px}.whatsapp-float{position:fixed;right:24px;bottom:22px;z-index:50;display:flex;align-items:center;gap:9px;background:#1c6747;color:#fff;border:1px solid #448c68;border-radius:40px;padding:10px 18px 10px 12px;box-shadow:0 5px 22px #0003;font-size:12px;font-weight:600;transition:transform .2s,background .2s}.whatsapp-float:hover{background:#125535;transform:translateY(-2px)}.whatsapp-float svg{width:30px;height:30px;flex-shrink:0}.whatsapp-float small{display:block;font-size:9px;font-weight:400;color:#cce4d6;margin-top:2px}footer{padding-bottom:90px}
@media(min-width:1600px){.compact-hero{max-width:1500px;min-height:385px}.compact-copy{padding:48px 60px}.compact-visual{min-height:385px}.food-strip{max-width:1500px}}@media(max-width:1440px){.compact-hero{margin:0 28px}.food-strip{margin:0 28px}}@media(max-width:1050px){.compact-copy{padding:34px 30px}.compact-copy h1{font-size:38px}.hero-ctas{gap:17px}.restaurant .header nav{gap:13px;font-size:10px}.restaurant .header .brand{font-size:21px}.compact-visual{min-height:345px}}@media(max-width:720px){.restaurant .header{height:auto;margin:8px 12px 15px;padding:8px 2px 14px;gap:12px}.restaurant .header .brand{font-size:20px}.restaurant .header .brand-logo{width:46px;height:46px}.restaurant .header nav{font-size:9px;justify-content:space-between;gap:12px;padding-top:12px}.restaurant .header .button{font-size:10px;padding:10px 13px}.compact-hero{margin:0 12px;grid-template-columns:1fr;border-radius:12px;min-height:0}.compact-copy{padding:27px 24px 25px}.compact-copy .eyebrow{font-size:8px;margin-bottom:14px;letter-spacing:1.5px}.compact-copy h1{font-size:35px;max-width:330px;letter-spacing:-1px;margin-bottom:13px}.hero-description{font-size:12px;margin-bottom:18px}.hero-ctas{gap:20px}.gold-button{font-size:11px;padding:10px 15px;gap:13px}.hero-chat{font-size:11px;gap:8px}.hero-signoff{margin-top:20px;font-size:9px}.compact-visual{min-height:170px;max-height:170px}.compact-visual>img{object-position:center 57%}.visual-caption{bottom:14px;left:22px;font-size:8px}.food-strip{margin:0 12px;font-size:8px;padding:14px 0;gap:8px}.restaurant #menu{padding-top:30px}.category-card>img{height:135px}.category-copy{padding:13px}.category-copy h3{font-size:14px}.whatsapp-float{right:14px;bottom:14px;padding:10px;border-radius:50%;height:52px;width:52px;justify-content:center}.whatsapp-float>span{display:none}.whatsapp-float svg{width:29px;height:29px}.restaurant #menu .section-heading h2{font-size:29px}}
/* Phone navigation, touch targets and readable form controls. */
.mobile-menu-toggle{display:none}
@media(max-width:720px){.restaurant .header{justify-content:space-between;align-items:center}.mobile-menu-toggle{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid #c99a36;border-radius:7px;background:#19120d;color:#e0b653;font-size:13px}.restaurant .header>.button{display:none}.restaurant .header.mobile-nav-ready nav{display:none}.restaurant .header.mobile-nav-ready.menu-is-open nav{display:grid;grid-template-columns:1fr 1fr}.restaurant .header nav{width:100%;gap:4px;padding-top:10px}.restaurant .header nav a{min-height:44px;display:flex;align-items:center;padding:10px 12px;font-size:12px;border-radius:6px;background:#eee6d6}.category-open,.filters button,.add-dish{min-height:44px}.category-open{padding:10px 14px}.filters{gap:8px}.filters button{font-size:12px}.form-grid{grid-template-columns:1fr}.enquiry-form{padding:23px 20px}.restaurant input,.restaurant select,.restaurant textarea,.admin-body input,.admin-body select,.admin-body textarea{font-size:16px;min-height:44px}.order-line{gap:10px}.order-line>span{min-width:0;overflow-wrap:anywhere}.order-line input{flex:0 0 65px}.room-top{flex-wrap:wrap}.food-price{padding-top:0}.food-grid .room-card>p{min-height:0}.dish-heading{gap:15px}.dish-heading h3{font-size:22px}.menu-intro{gap:8px}.restaurant .hero-ctas a{min-height:44px;align-items:center}.restaurant .hero-chat{display:inline-flex}.restaurant .section-heading{gap:12px;margin-bottom:20px}.restaurant .section-heading .text-link{padding:5px 0}.restaurant .story-photo img{height:300px}.contact-details{overflow-wrap:anywhere}.admin-main .inline-form label{width:100%}.auth{max-width:calc(100% - 30px)}.whatsapp-float{bottom:calc(14px + env(safe-area-inset-bottom,0px))}}
@media(max-width:360px){.restaurant .header .brand{font-size:18px;gap:8px}.restaurant .header .brand small{font-size:10px}.mobile-menu-toggle{padding:8px 10px}.compact-copy{padding:24px 19px}.compact-copy h1{font-size:31px}.hero-ctas{gap:12px}.category-copy{padding:11px}.category-copy h3{font-size:13px}.category-open{font-size:10px;padding:10px 11px}}
.empty-order{font-size:13px;color:#82735d;padding:20px;border:1px dashed #d9c6a1;border-radius:8px;line-height:1.8}.remove-order-item{flex:0 0 32px;width:32px;height:36px;border:0;background:transparent;color:#986043;font-size:24px;cursor:pointer}.remove-order-item:hover{background:#f5e9df;border-radius:6px}.order-line>span{flex:1}.order-line input{flex-shrink:0}@media(max-width:720px){.remove-order-item{flex-basis:36px;min-height:44px}.order-line{gap:8px}}
/* Brand-led introduction and the restaurant story. */
.compact-copy .hero-brand-name{font-size:clamp(40px,4.4vw,65px);font-weight:900;text-transform:uppercase;letter-spacing:-2px;line-height:1;margin-bottom:15px;max-width:none;color:#fcfaf5}.hero-brand-tagline{color:#dbb45b;font-weight:700;font-size:clamp(16px,1.5vw,21px);line-height:1.4;margin-bottom:17px}.compact-copy{padding-top:37px;padding-bottom:32px}.compact-copy .eyebrow{margin-bottom:20px}.hero-description{font-size:12px;max-width:445px}.hero-signoff{margin-top:23px}.about-section{border-top:1px solid #e7ddcd;padding-top:65px;padding-bottom:65px}.about-heading{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;margin-bottom:40px}.about-heading h2{font-size:38px;margin-bottom:0}.about-heading .eyebrow{margin-bottom:15px}.about-lead{font-size:14px;color:#81735f;line-height:1.9;margin:0;max-width:520px}.about-layout{display:grid;grid-template-columns:.75fr 1.5fr;gap:55px;align-items:start}.about-portrait{position:sticky;top:25px;overflow:hidden;border-radius:14px;background:#1b150f;border:1px solid #c2a065}.about-portrait>img{height:360px}.about-seal{display:flex;align-items:center;gap:16px;padding:23px;color:#e6d9c1;font-size:13px;line-height:1.8}.about-seal img{width:65px;height:65px;object-fit:contain;border-radius:50%}.about-seal strong{color:#dab45d;font-weight:500}.story-timeline{display:grid;gap:25px}.story-chapter{display:grid;grid-template-columns:39px 1fr;gap:18px;border-bottom:1px solid #e7ddcd;padding-bottom:25px}.story-chapter:last-child{border-bottom:0;padding-bottom:0}.chapter-number{display:grid;place-items:center;width:35px;height:35px;border:1px solid #d8c39a;border-radius:50%;font-size:11px;font-weight:600;color:#a47a2f;background:#f4eddf}.chapter-label{font-size:9px;letter-spacing:1.6px;color:#a47a2f;font-weight:700;margin:2px 0 7px}.story-chapter h3{font-size:21px;letter-spacing:-.5px;margin-bottom:11px}.story-chapter div>p:last-child{font-size:13px;line-height:1.9;color:#776b58;margin:0}.why-choose{display:grid;grid-template-columns:1fr 1.25fr;gap:40px;border:1px solid #e3d5bb;border-radius:12px;background:#f2ecdf;margin-top:42px;padding:28px 32px;align-items:center}.why-choose .eyebrow{font-size:9px;margin-bottom:10px}.why-choose h3{font-size:23px;margin:0}.why-choose ul{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:14px 25px}.why-choose li{font-size:12px;display:flex;align-items:center;gap:10px}.why-choose li span{color:#a77b2c;font-weight:bold}
@media(max-width:1000px){.compact-copy .hero-brand-name{font-size:44px}.about-layout{gap:30px;grid-template-columns:.8fr 1.2fr}.about-portrait>img{height:320px}.about-seal{padding:18px;gap:10px}.about-seal img{width:48px;height:48px}.about-heading{gap:35px}.why-choose{grid-template-columns:1fr;gap:24px}}
@media(max-width:720px){.compact-copy{padding:27px 24px}.compact-copy .hero-brand-name{font-size:41px;letter-spacing:-1.8px;margin-bottom:11px}.hero-brand-tagline{font-size:17px;max-width:290px;line-height:1.45;margin-bottom:13px}.about-heading{grid-template-columns:1fr;gap:16px;margin-bottom:25px}.about-heading h2{font-size:29px}.about-lead{font-size:13px}.about-layout{grid-template-columns:1fr;gap:28px}.about-portrait{position:static}.about-portrait>img{height:220px}.about-seal{padding:17px 22px;font-size:12px;gap:15px}.about-seal img{width:52px;height:52px}.story-chapter{grid-template-columns:30px 1fr;gap:13px;padding-bottom:22px}.chapter-number{width:29px;height:29px;font-size:10px}.story-chapter h3{font-size:19px}.story-chapter div>p:last-child{font-size:12px}.chapter-label{font-size:8px}.why-choose{padding:24px 20px;gap:20px;margin-top:30px}.why-choose h3{font-size:20px}.why-choose ul{gap:15px 12px}.why-choose li{font-size:11px;align-items:start;line-height:1.6}.about-section{padding-top:40px;padding-bottom:40px}}
/* Larger header branding and navigation. */
.restaurant .header{height:105px;gap:24px}.restaurant .header .brand-logo{width:72px;height:72px}.restaurant .header .brand{font-size:30px;gap:15px}.restaurant .header .brand small{font-size:13px;margin-top:8px}.restaurant .header nav{font-size:14px;gap:22px}.restaurant .header .button{font-size:13px;padding:14px 22px}
@media(min-width:721px) and (max-width:1150px){.restaurant .header{height:auto;min-height:100px;flex-wrap:wrap;padding-bottom:15px}.restaurant .header nav{order:3;width:100%;justify-content:center;gap:25px;padding-top:14px;border-top:1px solid var(--line)}.restaurant .header .brand{font-size:28px}.restaurant .header .brand-logo{width:66px;height:66px}}
@media(max-width:720px){.restaurant .header{height:auto;min-height:85px;gap:12px}.restaurant .header .brand-logo{width:58px;height:58px}.restaurant .header .brand{font-size:24px;gap:10px}.restaurant .header .brand small{font-size:11px;margin-top:6px}.restaurant .header nav{font-size:14px;gap:6px}.restaurant .header nav a{font-size:14px;min-height:48px}.mobile-menu-toggle{font-size:14px;min-height:46px}}
@media(max-width:360px){.restaurant .header .brand{font-size:21px;gap:8px}.restaurant .header .brand-logo{width:51px;height:51px}.restaurant .header .brand small{font-size:10px}.mobile-menu-toggle{font-size:12px;padding:9px}}
.contact-section{padding-top:65px;padding-bottom:65px}.contact-card{display:grid;grid-template-columns:1fr 1fr;gap:60px;background:#f3eddf;border:1px solid #c9a24b;border-radius:16px;padding:38px 42px}.contact-symbol{font-size:33px;color:#b38a34;display:block;margin-bottom:16px}.contact-address .eyebrow{font-size:9px;margin-bottom:12px}.contact-address h3{font-size:25px;line-height:1.5;max-width:370px;margin-bottom:15px}.contact-address>p:not(.eyebrow){font-size:12px;color:#82735d}.contact-address .text-link{max-width:230px;color:#966e26}.contact-methods{display:grid;gap:25px;align-content:center}.contact-methods>div:not(.contact-actions){display:flex;flex-direction:column;gap:10px}.contact-label{font-size:9px;letter-spacing:2px;color:#9f792c;font-weight:700;margin-bottom:2px}.contact-methods a:not(.button){font-size:14px;overflow-wrap:anywhere}.contact-methods a:hover{text-decoration:underline}.contact-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.contact-social{color:#8b6523;font-weight:600}@media(max-width:720px){.contact-section{padding-top:40px;padding-bottom:40px}.contact-card{grid-template-columns:1fr;gap:30px;padding:26px 24px}.contact-address h3{font-size:22px}.contact-methods a:not(.button){font-size:14px;min-height:30px}.contact-actions .button{min-height:44px}.contact-section .section-heading>p{font-size:12px}}
/* Modern contact destination */
.contact-section{padding-top:78px;padding-bottom:75px}.contact-intro{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:32px}.contact-intro .eyebrow{font-size:10px;letter-spacing:2.6px;margin-bottom:14px}.contact-intro h2{font-size:clamp(35px,4vw,54px);line-height:1.12;letter-spacing:-2px;margin-bottom:0}.contact-intro h2 span{color:#a77d31}.contact-intro>p{max-width:335px;color:#877966;font-size:13px;line-height:1.9;margin:0 0 3px}.contact-modern-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:22px}.visit-card{position:relative;overflow:hidden;background:radial-gradient(ellipse at bottom right,#55412777,transparent 75%),#1b1712;border:1px solid #b99349;border-radius:18px;padding:32px;display:flex;flex-direction:column;min-height:370px;color:#f5ecda}.visit-top{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}.contact-kicker{font-size:9px;font-weight:700;letter-spacing:1.9px;margin:0;color:#ab8440}.visit-top .contact-kicker{color:#d6b473}.location-mark{height:40px;width:40px;border:1px solid #806538;border-radius:50%;display:grid;place-items:center;color:#d7b673;font-size:29px}.visit-body{position:relative;z-index:1;margin:27px 0}.visit-city{font-size:12px;color:#bbac91;margin-bottom:11px}.visit-body h3{font-size:28px;line-height:1.45;letter-spacing:-.7px;max-width:340px;margin-bottom:15px}.visit-hours{font-size:11px;color:#ad9c80;margin:0}.directions-button{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:19px;border-top:1px solid #6e5935;font-size:12px;font-weight:600;color:#e3c383;min-height:45px}.directions-button span{font-size:23px}.visit-watermark{position:absolute;bottom:3px;right:-8px;line-height:.8;font-size:108px;font-weight:900;letter-spacing:-8px;color:#ffffff04;pointer-events:none}.contact-options{display:grid;gap:18px}.reach-card{display:grid;grid-template-columns:44px 1fr;gap:20px;border:1px solid #e6dccb;border-radius:16px;padding:25px 28px;background:#fffdf9;transition:border-color .2s,box-shadow .2s}.reach-card:hover{border-color:#c5a45f;box-shadow:0 8px 24px #7f5b1610}.reach-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;color:#ad8235;background:#f4ecda;font-size:23px}.reach-card h3{font-size:18px;letter-spacing:-.4px;margin:10px 0 15px}.phone-links{display:flex;flex-wrap:wrap;gap:10px 25px}.phone-links a{font-size:16px;font-weight:600;letter-spacing:.2px}.phone-links a:hover,.email-links a:hover{color:#9e7225}.email-links{display:grid;gap:10px}.email-links a{display:flex;justify-content:space-between;gap:15px;font-size:12px;overflow-wrap:anywhere;min-width:0}.email-links a span{color:#b79a64}.contact-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px;border:1px solid #e6dccb;background:#f2ede2;border-radius:13px;margin-top:20px;padding:20px 27px}.contact-bottom>div:first-child{display:flex;gap:12px;align-items:center}.online-dot{height:9px;width:9px;background:#b18b40;border-radius:50%;box-shadow:0 0 0 5px #b18b4012;flex-shrink:0}.contact-bottom p{font-size:13px;font-weight:600;margin:0;line-height:1.5}.contact-bottom small{display:block;font-size:10px;color:#8c7e67;font-weight:400;margin-top:3px}.contact-bottom-links{display:flex;align-items:center;gap:25px}.contact-whatsapp{border:1px solid #a78646;background:#1b1712;color:#e0bd78;border-radius:8px;padding:13px 17px;font-size:11px;font-weight:600;display:flex;gap:26px;align-items:center;min-height:44px}.contact-whatsapp:hover{background:#3d3020}.contact-linktree{font-size:11px;color:#78623d;display:flex;gap:15px;align-items:center;min-height:44px}.contact-linktree:hover{text-decoration:underline}
@media(max-width:850px){.contact-modern-grid{grid-template-columns:1fr 1.1fr;gap:16px}.visit-card{padding:25px}.reach-card{padding:22px 20px;gap:13px;grid-template-columns:36px 1fr}.reach-icon{width:36px;height:36px}.visit-body h3{font-size:25px}.reach-card h3{font-size:16px}.phone-links a{font-size:14px}.contact-bottom-links{gap:18px}}
@media(max-width:720px){.contact-section{padding-top:45px;padding-bottom:45px}.contact-intro{display:block;margin-bottom:25px}.contact-intro h2{font-size:37px;letter-spacing:-1.3px}.contact-intro>p{margin:17px 0 0;font-size:12px;max-width:330px}.contact-modern-grid{grid-template-columns:1fr;gap:16px}.visit-card{min-height:300px;padding:26px;border-radius:14px}.visit-body{margin:22px 0}.visit-body h3{font-size:25px}.visit-watermark{font-size:94px}.contact-options{gap:16px}.reach-card{padding:23px 21px;border-radius:14px;gap:16px;grid-template-columns:36px minmax(0,1fr)}.reach-card h3{font-size:17px;line-height:1.4}.phone-links{gap:4px 20px}.phone-links a{font-size:15px;min-height:38px;display:flex;align-items:center}.email-links{gap:3px}.email-links a{font-size:12px;min-height:36px;align-items:center}.contact-bottom{align-items:stretch;flex-direction:column;padding:22px;gap:18px}.contact-bottom-links{justify-content:space-between;gap:15px}.contact-whatsapp{padding:12px 14px;font-size:11px;gap:17px}.contact-linktree{gap:8px;font-size:11px}.contact-kicker{font-size:8px;letter-spacing:1.6px}}
.report-title h2{font-size:33px;margin-bottom:10px}.report-title>p:last-child{font-size:12px;color:#8c7a5e}.report-filters{display:flex;align-items:end;flex-wrap:wrap;gap:15px}.report-filters label{flex:1;min-width:140px;margin:0}.report-filters .button{margin:0;min-height:44px}.report-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.report-cards article{border:1px solid #e5d7bd;background:#fffdf9;padding:23px 20px;border-radius:12px}.report-cards small{font-size:10px;text-transform:uppercase;letter-spacing:.9px;color:#8f7b57}.report-cards strong{display:block;font-size:23px;margin-top:15px;overflow-wrap:anywhere}.report-cards article:first-child{background:#21190f;color:#e0b85d;border-color:#b18b3e}.report-note{font-size:11px;color:#84765d;line-height:1.8;margin-bottom:25px}.report-downloads{display:flex;gap:12px;flex-wrap:wrap}.report-downloads a{padding:12px 15px;border:1px solid #dbc9a4;border-radius:7px;font-size:11px;background:#f7f1e5}.report-downloads a:hover{background:#eee2c8}.report-two{display:grid;grid-template-columns:1fr 1fr;gap:20px}.report-status{display:flex;align-items:center;gap:12px;font-size:12px;margin:17px 0}.report-status span{width:75px}.report-status progress{width:100%;height:9px;accent-color:#b9923f}.report-status strong{min-width:20px}.table-scroll{overflow-x:auto}.report-table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}.report-table th{font-size:10px;letter-spacing:.4px;color:#927b4f;background:#f8f3e8}.report-table th,.report-table td{padding:14px 12px;border-bottom:1px solid #ebe3d4;vertical-align:top}.report-table small{display:block;color:#93846b;font-size:10px;margin-top:5px}.report-table .badge{white-space:nowrap}.report-table tbody tr:last-child td{border-bottom:0}
@media(max-width:1000px){.report-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.report-two{grid-template-columns:1fr}}@media(max-width:720px){.report-cards{gap:10px}.report-cards article{padding:18px 13px}.report-cards strong{font-size:19px}.report-title h2{font-size:28px}.report-filters{gap:15px}.report-filters label{min-width:100%;width:100%}.report-table{min-width:550px}}
@media print{@page{size:A4 landscape;margin:12mm}.sidebar,.admin-heading,.no-print,.sidebar-user{display:none!important}.admin-body{background:white;color:#111}.admin-main{margin:0;padding:0;max-width:none}.report-title h2{font-size:24px}.report-title .eyebrow{margin-bottom:10px}.report-cards{grid-template-columns:repeat(4,1fr);gap:10px}.report-cards article{padding:12px;border:1px solid #aaa;background:white!important;color:black!important}.report-cards strong{font-size:18px;margin-top:9px}.panel{border:1px solid #bbb;padding:15px;margin-bottom:15px;box-shadow:none}.panel h3{font-size:17px;margin-bottom:12px}.report-two{display:block}.table-scroll{overflow:visible}.report-table{min-width:0!important;font-size:10px;width:100%;table-layout:auto}.report-table th,.report-table td{padding:8px;overflow-wrap:anywhere}.report-table thead{display:table-header-group}.report-table tr{break-inside:avoid}.report-note{font-size:10px}.report-table .badge{padding:0;background:none;color:black}.report-cards article,.report-title{break-inside:avoid}}
/* One complete banner, without duplicate copy or a split panel. */
.single-brand-banner{max-width:1500px;margin:0 auto;border:1px solid #c99a36;border-radius:15px;overflow:hidden;padding:7px;background:#f2ecdf}.single-brand-banner>img{width:100%;height:auto;display:block;object-fit:contain;border-radius:9px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1550px){.single-brand-banner{margin:0 28px}}@media(max-width:720px){.single-brand-banner{margin:0 12px;padding:4px;border-radius:10px}.single-brand-banner>img{border-radius:6px}}
/* Frame the food artwork without repeating the banner lettering. */
.compact-hero{grid-template-columns:1.05fr 1fr;background:#15110d;border-color:#b28b43;min-height:380px}.compact-copy{position:relative;z-index:2;padding:42px 48px;background:linear-gradient(120deg,#17120e,#21190f)}.compact-copy .eyebrow{font-size:9px;letter-spacing:2.5px;margin-bottom:23px;color:#c4a15c}.compact-copy .hero-brand-name{font-size:clamp(40px,4.2vw,60px);letter-spacing:-1.8px;line-height:1.05;margin-bottom:15px}.hero-brand-tagline{font-size:19px;color:#d7b460;font-weight:500;margin-bottom:20px}.hero-description{font-size:13px;line-height:1.8;max-width:405px;color:#beaf98;margin-bottom:25px}.hero-signoff{font-size:10px;color:#a18b68;margin-top:26px}.compact-visual{min-height:380px;background:#170d08}.compact-visual>img{left:auto;right:0;width:300%;max-width:none;height:100%;object-fit:cover;object-position:right center}.compact-visual:after{background:linear-gradient(90deg,#21190f 0%,#21190f77 13%,transparent 38%),linear-gradient(0deg,#140e0999,transparent 40%)}.visual-caption{bottom:25px;left:35px;right:28px;font-size:8px;letter-spacing:2.2px}.hero-ctas .gold-button{border-radius:6px;padding:13px 22px;box-shadow:0 3px 15px #0002}.hero-chat{font-size:12px;color:#ddc9a3}
@media(min-width:1600px){.compact-hero{min-height:400px}.compact-visual{min-height:400px}.compact-copy{padding:45px 60px}}@media(max-width:1000px) and (min-width:721px){.compact-copy{padding:34px 30px}.compact-copy .hero-brand-name{font-size:39px}.hero-brand-tagline{font-size:17px}.hero-description{font-size:12px}.compact-visual>img{width:330%}.hero-ctas{gap:19px}}
@media(max-width:720px){.compact-hero{grid-template-columns:1fr;min-height:0}.compact-copy{padding:29px 25px 27px}.compact-copy .eyebrow{font-size:8px;margin-bottom:17px}.compact-copy .hero-brand-name{font-size:40px;margin-bottom:13px}.hero-brand-tagline{font-size:17px;margin-bottom:15px}.hero-description{font-size:12px;margin-bottom:20px}.hero-signoff{margin-top:22px;font-size:9px}.compact-visual{min-height:210px;max-height:210px}.compact-visual>img{width:280%;height:100%;right:0;object-position:right center}.compact-visual:after{background:linear-gradient(90deg,#21190f55,transparent 35%),linear-gradient(0deg,#140e0988,transparent 45%)}.visual-caption{left:24px;bottom:17px}.hero-ctas .gold-button{padding:11px 17px}}@media(max-width:360px){.compact-copy .hero-brand-name{font-size:35px}.compact-copy{padding:26px 20px}.hero-brand-tagline{font-size:16px}}
/* Bold restaurant wordmark inspired by the original artwork. */
.compact-hero{grid-template-columns:1.08fr 1fr;min-height:480px}.compact-copy{padding:37px 48px 32px;background:radial-gradient(ellipse at bottom left,#5c130e60,transparent 72%),linear-gradient(115deg,#100b08,#1d100a)}.compact-copy:before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.25;background:repeating-linear-gradient(-22deg,transparent 0 65px,#7c211113 65px 105px,transparent 105px 150px)}.compact-copy>*{position:relative}.compact-copy .eyebrow{font-size:9px;letter-spacing:2.7px;color:#d9b466;margin-bottom:22px}.compact-copy .hero-brand-name{font-family:'Arial Black','DM Sans',Arial,sans-serif;font-size:clamp(66px,7.8vw,115px);font-weight:900;letter-spacing:-5px;line-height:.87;margin-bottom:22px;text-transform:uppercase;max-width:100%}.hero-brand-name>span{display:block;width:fit-content;max-width:100%;overflow-wrap:anywhere}.brand-word-light{color:#fffaf0}.brand-word-gold{color:#e8ad28;margin-top:6px}.hero-brand-name>span{background-image:radial-gradient(ellipse at 20% 25%,#19110b99 .55px,transparent .9px),radial-gradient(ellipse at 70% 60%,#19110b66 .45px,transparent .85px),linear-gradient(currentColor,currentColor);background-size:5px 7px,8px 5px,100% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-brand-tagline{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(16px,1.8vw,24px);text-transform:uppercase;letter-spacing:-.5px;font-weight:800;color:#efbe52;line-height:1.2;margin:0 0 18px;max-width:440px}.hero-description{font-size:13px;line-height:1.7;color:#d2c3ac;max-width:420px;margin-bottom:22px}.hero-signoff{margin-top:20px;font-size:9px}.compact-visual{min-height:480px}.compact-visual:after{background:linear-gradient(90deg,#1d100a 0%,#1d100a66 13%,transparent 38%),linear-gradient(0deg,#140e0988,transparent 40%)}.hero-ctas .gold-button{background:#dbab43;border-color:#dbab43}.hero-ctas .gold-button:hover{background:#edc36b}
@media(min-width:1600px){.compact-copy{padding:43px 60px 37px}.compact-copy .hero-brand-name{font-size:124px}.compact-hero,.compact-visual{min-height:520px}}@media(max-width:1000px) and (min-width:721px){.compact-copy{padding:31px 30px}.compact-copy .hero-brand-name{font-size:74px;letter-spacing:-3.5px}.hero-brand-tagline{font-size:17px}.hero-description{font-size:12px}.compact-hero,.compact-visual{min-height:445px}}
@media(max-width:720px){.compact-hero{grid-template-columns:1fr;min-height:0}.compact-copy{padding:29px 25px 25px}.compact-copy .eyebrow{font-size:8px;letter-spacing:1.8px;margin-bottom:21px}.compact-copy .hero-brand-name{font-size:82px;letter-spacing:-4px;line-height:.87;margin-bottom:21px}.brand-word-gold{margin-top:6px}.hero-brand-tagline{font-size:18px;line-height:1.25;max-width:300px;margin-bottom:15px}.hero-description{font-size:12px;line-height:1.8;margin-bottom:19px}.hero-signoff{margin-top:20px}.compact-visual{min-height:210px;max-height:210px}.hero-ctas{gap:21px}}@media(max-width:360px){.compact-copy{padding:27px 20px}.compact-copy .hero-brand-name{font-size:71px;letter-spacing:-3.5px}.hero-brand-tagline{font-size:16px}.compact-copy .eyebrow{font-size:7px;letter-spacing:1.7px}}
/* Fine irregular grain, rather than a regular dot pattern. */
.hero-brand-name>span{background-color:currentColor;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='170' height='170'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E");background-size:170px 170px;background-blend-mode:multiply;background-clip:text;-webkit-background-clip:text}
/* Slightly shorter banner with tighter vertical rhythm. */
.compact-hero,.compact-visual{min-height:430px}.compact-copy{padding-top:28px;padding-bottom:25px}.compact-copy .eyebrow{margin-bottom:17px}.compact-copy .hero-brand-name{font-size:clamp(62px,7vw,104px);margin-bottom:17px}.hero-brand-tagline{margin-bottom:14px}.hero-description{margin-bottom:17px}.hero-signoff{margin-top:15px}
@media(min-width:1600px){.compact-hero,.compact-visual{min-height:460px}.compact-copy{padding-top:33px;padding-bottom:28px}.compact-copy .hero-brand-name{font-size:110px}}
@media(max-width:1000px) and (min-width:721px){.compact-hero,.compact-visual{min-height:400px}.compact-copy{padding:26px 30px}.compact-copy .hero-brand-name{font-size:68px}}
@media(max-width:720px){.compact-hero{min-height:0}.compact-copy{padding:24px 25px 21px}.compact-copy .hero-brand-name{font-size:75px;margin-bottom:17px}.compact-copy .eyebrow{margin-bottom:17px}.compact-visual{min-height:180px;max-height:180px}.hero-signoff{margin-top:16px}}
@media(max-width:360px){.compact-copy{padding:23px 20px 20px}.compact-copy .hero-brand-name{font-size:66px}}
.report-downloads a.pdf-download{background:#21190f;border-color:#b9923f;color:#e3bd63;font-weight:700}.report-downloads a.pdf-download:hover{background:#45341c}
.staff-notifications{position:fixed;right:24px;top:14px;z-index:100}.admin-main{padding-top:75px}.notification-bell{display:flex;align-items:center;gap:9px;background:#22190f;color:#e5c16a;border:1px solid #bd953e;border-radius:25px;padding:10px 17px;font-size:12px;min-height:42px}.notification-bell>span{font-size:19px}.notification-bell strong{background:#c24d2a;color:white;min-width:21px;height:21px;padding:2px 5px;border-radius:20px;font-size:11px;display:grid;place-items:center}.notification-panel{width:360px;max-height:75vh;overflow:auto;background:#fffdf8;border:1px solid #ccb078;border-radius:13px;padding:19px;box-shadow:0 10px 35px #0002;margin-top:9px}.notification-panel-heading{display:flex;justify-content:space-between;gap:15px;align-items:center}.notification-panel-heading h2{font:700 16px 'DM Sans',sans-serif;letter-spacing:0;margin:0}.notification-panel-heading button{background:none;border:0;color:#94702c;font-size:10px;text-decoration:underline;padding:8px 0}.notification-panel-heading button:disabled{opacity:.5;cursor:default}#notification-state{font-size:11px;color:#88775b;margin:13px 0}.notification-item{display:block;border-top:1px solid #e7decc;padding:14px 2px}.notification-item:hover{background:#f4ecdc}.notification-item strong{font-size:12px}.notification-item small{display:block;font-size:10px;color:#857152;margin-top:6px}.notification-all{display:block;padding:12px 0 0;border-top:1px solid #e4d4b6;font-size:12px;color:#987126}.order-toast{position:fixed;bottom:24px;right:24px;z-index:110;background:#21180f;color:#f4e7cb;border:1px solid #c59c49;border-radius:12px;padding:18px 20px;box-shadow:0 8px 30px #0003;max-width:380px;font-size:13px}.order-toast>a{display:block;color:#dfb858;font-size:12px;margin-top:11px}.order-toast>button{position:absolute;top:6px;right:8px;background:transparent;border:0;color:#dfcda7;font-size:20px}.order-toast>span{padding-right:20px;display:block}@media(max-width:720px){.staff-notifications{top:auto;bottom:16px;right:15px}.notification-panel{position:absolute;bottom:53px;right:0;width:min(360px,calc(100vw - 30px))}.notification-bell{min-height:46px}.notification-panel-heading button{min-height:44px}.order-toast{bottom:78px;right:15px;left:15px;max-width:none}.admin-main{padding-top:30px}}@media print{.staff-notifications,.order-toast{display:none!important}}
.dish-name-button{font:inherit;text-align:left;color:inherit;border:0;background:none;padding:0;cursor:pointer}.dish-name-button:hover{color:#a47a2d}.dish-dialog{width:min(950px,calc(100% - 36px));max-height:85dvh;padding:0;background:#faf7f1;color:#21180f;border:2px solid #c69a39;border-radius:18px;box-shadow:0 25px 85px #0007}.dish-dialog::backdrop{background:#130d08b5;backdrop-filter:blur(4px)}.dish-dialog-head{display:flex;justify-content:space-between;gap:25px;padding:26px 30px;border-bottom:1px solid #e8ddc9;background:#fff}.dish-dialog-head h2{font-size:27px;margin:0 0 8px;letter-spacing:-.6px}.dish-dialog-head .eyebrow{font-size:9px;margin-bottom:10px}.dish-dialog-head p:last-child{font-size:12px;color:#8d7956;line-height:1.7;margin:0;max-width:700px}.dish-dialog-close{flex-shrink:0;width:44px;height:44px;border-radius:50%;background:#21170e;border:1px solid #bc923b;color:#d4ac51;font-size:27px}.dish-dialog-body{padding:20px 28px;overflow-y:auto;max-height:48dvh}.option-selection-row{display:grid;grid-template-columns:1fr 145px 145px;align-items:center;gap:20px;border:1px solid #ecdfc9;border-radius:12px;background:#fff;padding:17px 20px;margin-bottom:12px}.option-selection-row strong{display:block;font-size:15px}.option-selection-row small{display:block;font-size:12px;color:#8e7a57;line-height:1.6;margin-top:6px}.option-selection-row .option-price{color:#b28630;font-weight:700;font-size:14px}.option-selection-row .button{font-size:11px;padding:10px 15px;min-height:44px;justify-content:center}.dish-dialog-foot{padding:18px 28px;border-top:1px solid #e6d8bb;display:flex;justify-content:space-between;align-items:center;gap:20px;background:#f2ecdf}.dish-dialog-foot p{font-size:12px;color:#7f6535;line-height:1.6;margin:0}.dish-dialog-foot .button{white-space:nowrap;font-size:11px}.dish-modal-open{overflow:hidden}@media(max-width:720px){.dish-dialog{width:calc(100% - 20px);max-height:90dvh;border-radius:14px}.dish-dialog-head{padding:20px;gap:12px}.dish-dialog-head h2{font-size:22px}.dish-dialog-head p:last-child{font-size:11px}.dish-dialog-body{padding:16px;max-height:51dvh}.option-selection-row{grid-template-columns:minmax(0,1fr) auto;padding:15px;gap:13px}.option-selection-row strong{font-size:14px}.option-selection-row .option-price{font-size:13px}.option-selection-row .button{grid-column:1/-1;justify-self:stretch}.dish-dialog-foot{padding:15px;gap:12px;flex-wrap:wrap}.dish-dialog-foot .button{padding:11px 15px;min-height:44px}.dish-dialog-close{width:40px;height:40px}.dish-name-button{min-height:44px}}
.dish-image-button{display:block;width:100%;border:0;padding:0;text-align:left;background:transparent;cursor:pointer}.dish-dialog{width:min(1180px,calc(100% - 32px))}.variety-table-heading{display:grid;grid-template-columns:.7fr 1fr 1.5fr;gap:20px;padding:15px 13px;border-bottom:2px solid #c79b3c;font-size:11px;font-weight:700;letter-spacing:.6px;margin-bottom:10px}.variety-table-heading span:last-child{text-align:right}.variety-row{display:grid;grid-template-columns:.7fr 1fr 1.5fr;align-items:center;gap:20px;background:white;border:1px solid #ede2cf;border-radius:13px;padding:17px 14px;margin-bottom:10px}.variety-name{font-size:14px}.variety-prices{color:#b88a2d;font-size:12px;font-weight:700;line-height:1.8}.variety-actions{display:flex;align-items:center;justify-content:end;gap:10px;flex-wrap:wrap}.portion-switch{display:flex;flex-wrap:wrap;gap:4px;background:#f3ede2;border:1px solid #e7dcc9;border-radius:24px;padding:4px}.portion-switch button{font-size:10px;font-weight:700;color:#93713a;background:transparent;border:0;padding:9px 12px;border-radius:22px;min-height:35px}.portion-switch button[aria-pressed=true]{background:#1f150d;color:#d5a643;box-shadow:0 2px 5px #0002}.variety-actions .variant-add{font-size:10px;padding:9px 16px;white-space:nowrap;min-height:38px;justify-content:center}.dish-dialog-body{max-height:53dvh}.dish-name-button{font:inherit;color:inherit;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.dish-name-button:hover{color:#aa7f2b}@media(max-width:1000px){.variety-row,.variety-table-heading{grid-template-columns:.65fr 1fr 1.1fr;gap:13px}.variety-actions{justify-content:start}.portion-switch{border-radius:15px}.portion-switch button{padding:8px 10px}}@media(max-width:720px){.dish-dialog{width:calc(100% - 18px)}.variety-table-heading{grid-template-columns:1fr 1fr;padding:10px 5px;font-size:10px}.variety-table-heading span:last-child{display:none}.variety-row{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:11px;padding:16px}.variety-name{font-size:14px}.variety-prices{font-size:11px;text-align:right}.variety-actions{grid-column:1/-1;justify-content:space-between;gap:10px}.portion-switch{flex:1;border-radius:23px}.portion-switch button{min-height:44px;flex:1;font-size:10px;padding:8px}.variety-actions .variant-add{min-height:44px;padding:10px 13px}.dish-name-button{min-height:44px}.dish-dialog-body{padding:14px;max-height:54dvh}}@media(max-width:360px){.variety-actions{flex-direction:column;align-items:stretch}.variety-actions .variant-add{width:100%}}
.portion-switch button:disabled{opacity:.45;cursor:not-allowed}.variety-prices{transition:color .15s}.portion-switch button[aria-pressed=true]{background:#1e150d;color:#d6ab4e;box-shadow:0 2px 7px #0003}
.variety-presets{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:15px 0 25px;font-size:12px}.variety-presets button{background:#f4ecda;border:1px solid #dcc99f;color:#896627;padding:9px 13px;border-radius:20px;font-size:11px;min-height:38px}.variety-presets button:hover{background:#21170e;color:#dfb557}.variety-editor-row{display:grid;grid-template-columns:1.2fr 1fr 1fr .8fr;gap:20px;border:1px solid #e6dac1;border-radius:10px;background:#fcfaf5;padding:22px;margin-bottom:15px;align-items:start}.variety-editor-row label{margin-bottom:10px}.variety-editor-row .check-label{font-size:11px;margin-top:8px;gap:8px}.variety-editor-row .delete-variety{color:#ab543b;padding-top:20px}.variety-editor-actions{display:flex;gap:15px;flex-wrap:wrap}#variety-editor-status{color:#977334;font-size:12px;margin-top:18px}@media(max-width:1000px){.variety-editor-row{grid-template-columns:1fr 1fr}.variety-editor-row>label:first-of-type{grid-column:1/-1}.variety-editor-row .delete-variety{padding-top:0}}@media(max-width:720px){.variety-editor-row{padding:17px;gap:12px}.variety-editor-row input[type=number]{font-size:16px}.variety-editor-row .delete-variety{grid-column:1/-1}.variety-presets button{min-height:44px}.variety-editor-actions>.button{width:100%}}
.location-picker{padding:20px;border:1px solid #e6d8bc;border-radius:10px;background:#faf7ef;margin:20px 0}.location-buttons{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.location-buttons .button{font-size:11px;padding:12px 16px;width:auto;margin:0}.location-clear{border:0;background:none;color:#946a27;font-size:11px;text-decoration:underline;padding:10px}.location-picker p,.location-picker a,.checkout-payment-note{font-size:11px;line-height:1.8;color:#8c7852}.location-picker p{margin:15px 0 0}.location-picker>a{display:block;margin-top:10px}.floating-cart{position:fixed;bottom:24px;left:24px;z-index:45;background:#21170e;color:#e8c16d;border:1px solid #c69c43;padding:13px 20px;border-radius:30px;font-size:13px;box-shadow:0 5px 20px #0003;display:flex;gap:12px;align-items:center}.floating-cart strong{background:#ca9e40;color:#19120b;border-radius:20px;min-width:22px;padding:3px 6px;text-align:center}.confirmation-page{max-width:850px;margin:45px auto;padding:0 20px}.confirmation-page>.brand{margin-bottom:30px}.confirmation-page h1{font-family:'DM Sans',Arial,sans-serif;font-weight:800;font-size:32px}.confirmation-items{margin-top:25px}.confirmation-items>p{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #e9deca;padding:13px 0;font-size:13px}.confirmation-items strong{white-space:nowrap}.confirmation-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:30px}.confirmation-actions .button{font-size:12px}.confirmation-page .muted{font-size:11px}.bank-instructions{padding:24px;background:#f2ebdb;border-radius:10px;margin:25px 0}.bank-instructions h2{font-size:23px}.bank-instructions dl{display:grid;grid-template-columns:130px 1fr;gap:12px;font-size:13px}.bank-instructions dd{margin:0;font-weight:600;overflow-wrap:anywhere}.bank-instructions dt{color:#8b744b}.bank-instructions p{font-size:12px}@media(max-width:720px){.floating-cart{bottom:calc(14px + env(safe-area-inset-bottom,0px));left:14px;padding:11px 16px;font-size:12px;min-height:48px}.location-picker{padding:16px}.location-picker .button{font-size:11px}.confirmation-page{margin:25px auto;padding:0 14px}.confirmation-page>.brand{font-size:22px}.confirmation-page h1{font-size:26px}.confirmation-items>p{font-size:12px;gap:12px}.confirmation-actions .button{width:100%;justify-content:center}.bank-instructions{padding:18px}.bank-instructions dl{grid-template-columns:100px minmax(0,1fr);font-size:12px}}
.saved-map-url{font-size:11px!important;line-height:1.7;overflow-wrap:anywhere;background:#f4eddf;border:1px solid #e7d7b9;border-radius:7px;padding:12px;color:#907039!important}
/* Ceylon Kitchen — chilli red, island gold and black. */
:root,.restaurant{--green:#19110e;--ink:#24140f;--paper:#fbf8f0;--gold:#d8b32b;--line:#e8ddc5;--red:#a60917}.brand-logo{background:#000;border-color:#d9b734;padding:0}.restaurant .header .brand{font-size:28px;letter-spacing:-.8px}.restaurant .header nav{font-size:13px;gap:18px}.restaurant .header .brand small{color:#a78328;letter-spacing:.3px}.restaurant .topbar{background:#130b09;color:#ddbd52}.compact-hero{border-color:#c4a332}.compact-copy{background:radial-gradient(ellipse at bottom left,#790d1b80,transparent 75%),linear-gradient(115deg,#100807,#210a0a)}.compact-copy .eyebrow{color:#d9bc59}.compact-copy .hero-brand-name{font-size:clamp(60px,7vw,100px);letter-spacing:-4px}.brand-word-light{color:#fff9ed}.brand-word-gold{color:#d9b629}.hero-brand-tagline{color:#dfbd49}.hero-ctas .gold-button{background:#a60917;border-color:#c6343c;color:#fff8e6}.hero-ctas .gold-button:hover{background:#c41524;border-color:#dc4a50}.compact-visual:after{background:linear-gradient(90deg,#210a0a 0%,#210a0a77 13%,transparent 38%),linear-gradient(0deg,#14090999,transparent 40%)}.hero-chat{color:#e9cf81}.category-open,.button{border-color:#c6a532;color:#d9b735}.category-open:hover,.button:hover{background:#a60917;border-color:#a60917;color:#fff6df}.filters button.active{background:#a60917;border-color:#a60917;color:#fff7e8}.category-copy h3 span,.food-price{color:#b68d21}.category-card:hover{border-color:#d7b765;box-shadow:0 8px 24px #75111b13}.dish-name-button:hover,.contact-linktree,.contact-social{color:#a60917}.experience{background:radial-gradient(ellipse at top right,#650e1b,#160b09 75%);border-color:#cba834}.experience h2{color:#e0bf4c}.visit-card{background:radial-gradient(ellipse at bottom right,#73121e70,transparent 75%),#170e0c;border-color:#c3a039}.visit-top .contact-kicker,.directions-button{color:#dfbd4d}.reach-icon{background:#fae9e5;color:#a60917}.contact-whatsapp{background:#a60917;border-color:#a60917;color:#fff5df}.contact-whatsapp:hover{background:#790b15}.portion-switch button[aria-pressed=true]{background:#a60917;color:#fff1bc}.variety-actions .variant-add{background:#19110c;color:#d8b52c;border-color:#c8a830}.variety-actions .variant-add:hover{background:#a60917;color:#fff}.chapter-number{color:#a60917;border-color:#dbbcb7;background:#fff2ee}.contact-intro h2 span{color:#a60917}.sidebar{background:linear-gradient(170deg,#160d0a,#270b0d);border-right-color:#b99b32}.sidebar .brand{font-size:18px;white-space:normal;line-height:1.3;gap:9px}.sidebar nav a.active,.sidebar nav a:hover{background:#a6091740;color:#ecd16f}.report-cards article:first-child{background:#6f0b16;border-color:#a53c40;color:#f2d374}.notification-bell{background:#6e0c17;border-color:#c6a232;color:#f0d469}.order-toast{background:#380b10;border-color:#c7a437}.auth .brand{white-space:normal}.auth .brand-logo{width:70px;height:70px}.floating-cart{background:#a60917;border-color:#d2ae37;color:#fff4d5}.floating-cart strong{background:#daba35;color:#25120a}footer{background:#140c0b;border-top-color:#cbaa34}.saved-map-url{color:#922333!important}.brand-hero,.single-brand-banner{border-color:#cbaa34}
@media(min-width:1600px){.compact-copy .hero-brand-name{font-size:106px}}@media(max-width:1150px) and (min-width:721px){.restaurant .header .brand{font-size:28px}.compact-copy .hero-brand-name{font-size:clamp(56px,7vw,80px)}}@media(max-width:720px){.restaurant .header .brand{font-size:22px;letter-spacing:-.6px;gap:9px}.restaurant .header .brand-logo{width:58px;height:58px}.restaurant .header .brand small{font-size:10px}.compact-copy .hero-brand-name{font-size:clamp(57px,18vw,76px);letter-spacing:-3px}.restaurant .header nav a{background:#f2e4dc}.restaurant footer .brand{font-size:23px}.sidebar .brand{font-size:22px}.confirmation-page>.brand{font-size:23px}.mobile-menu-toggle{background:#a60917;color:#fff0c3;border-color:#c5a733}}@media(max-width:360px){.restaurant .header .brand{font-size:20px;gap:7px}.restaurant .header .brand-logo{width:47px;height:47px}.mobile-menu-toggle{font-size:11px;padding:8px}.compact-copy .hero-brand-name{font-size:60px;letter-spacing:-3px}}
/* Ceylon Kitchen: island-inspired editorial banner. */
.compact-hero{grid-template-columns:1fr 1.12fr;border:1px solid #b69b4e;border-radius:18px;background:#160b09;min-height:420px;isolation:isolate}.compact-copy{padding:39px 46px 30px;background:radial-gradient(ellipse at 0% 100%,#6a101f65,transparent 72%),#160b09;display:flex;flex-direction:column;justify-content:center}.compact-copy:before{inset:20px auto 20px 0;width:3px;opacity:1;background:linear-gradient(transparent,#c9a735,transparent)}.compact-copy .eyebrow{display:flex;gap:11px;align-items:center;font-size:9px;letter-spacing:2.5px;color:#ceb253;margin-bottom:23px}.compact-copy .eyebrow:before{content:'';height:1px;width:27px;background:#bd9b35}.compact-copy .hero-brand-name{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:clamp(64px,6.7vw,95px);line-height:.92;letter-spacing:-3px;text-transform:none;margin:0 0 21px}.hero-brand-name>span{background-image:none;-webkit-text-fill-color:currentColor;background-clip:initial;-webkit-background-clip:initial;width:auto}.brand-word-light{color:#fff5e4}.brand-word-gold{color:#dfbc46;margin-top:1px;font-style:italic}.hero-brand-tagline{font-family:'DM Sans',Arial,sans-serif;text-transform:none;font-weight:500;font-size:20px;line-height:1.4;letter-spacing:-.3px;color:#f4e0ad;margin-bottom:14px;max-width:380px}.hero-description{font-size:12px;line-height:1.85;color:#bfad98;max-width:370px;margin-bottom:24px}.hero-ctas{gap:23px}.hero-ctas .gold-button{border:1px solid #b32a35;background:#a40d1c;color:#fff4df;padding:13px 21px;border-radius:6px;font-size:12px}.hero-ctas .gold-button:hover{background:#c11729}.hero-chat{font-size:12px;color:#d6bd80}.hero-signoff{margin-top:24px;font-size:9px;color:#a78e71;letter-spacing:.3px}.compact-visual{min-height:420px;background:#191510}.compact-visual>img{left:0;right:0;width:100%;max-width:100%;height:100%;object-fit:cover;object-position:center}.compact-visual:after{background:linear-gradient(90deg,#160b09 0%,#160b0930 15%,transparent 40%),linear-gradient(0deg,#140b09b3,transparent 45%)}.visual-caption{left:30px;right:28px;bottom:23px;font-size:8px;color:#ead4a5;letter-spacing:2px}.ceylon-hero-seal{position:absolute;z-index:2;right:26px;top:24px;display:flex;align-items:center;gap:10px;padding:9px 13px 9px 9px;border:1px solid #dbc16a70;border-radius:50px;background:#100c09cc;backdrop-filter:blur(8px);color:#e5ca72}.ceylon-hero-seal>img{width:49px;height:49px;border-radius:50%;object-fit:contain;background:black}.ceylon-hero-seal>span{font-size:7px;letter-spacing:1.2px;line-height:1.7}.ceylon-hero-seal strong{font:italic 17px Georgia;letter-spacing:0;color:#fff0ce}.food-strip{font-size:9px;letter-spacing:.3px;padding-top:17px;padding-bottom:17px}
@media(min-width:1600px){.compact-copy{padding:41px 60px 34px}.compact-copy .hero-brand-name{font-size:105px}.compact-hero,.compact-visual{min-height:450px}}@media(max-width:1000px) and (min-width:721px){.compact-copy{padding:32px 30px}.compact-copy .hero-brand-name{font-size:66px}.hero-brand-tagline{font-size:17px}.compact-hero,.compact-visual{min-height:415px}.ceylon-hero-seal{right:18px;top:20px}.hero-ctas{gap:16px}}@media(max-width:720px){.compact-hero{grid-template-columns:1fr;border-radius:13px;min-height:0}.compact-copy{padding:30px 27px 27px}.compact-copy .eyebrow{font-size:8px;letter-spacing:1.8px;margin-bottom:22px}.compact-copy .hero-brand-name{font-size:74px;letter-spacing:-2.6px;line-height:.92;margin-bottom:20px}.hero-brand-tagline{font-size:18px;max-width:310px;margin-bottom:13px}.hero-description{font-size:12px;margin-bottom:21px}.hero-signoff{margin-top:20px;font-size:8px}.compact-visual{min-height:220px;max-height:220px}.compact-visual:after{background:linear-gradient(0deg,#140b0999,transparent 60%)}.ceylon-hero-seal{top:15px;right:16px;padding:6px 10px 6px 6px;gap:8px}.ceylon-hero-seal>img{width:38px;height:38px}.ceylon-hero-seal strong{font-size:15px}.ceylon-hero-seal>span{font-size:6px}.visual-caption{left:24px;bottom:17px;font-size:7px}}@media(max-width:360px){.compact-copy{padding:28px 22px}.compact-copy .hero-brand-name{font-size:66px}}
.compact-copy .hero-brand-name>span{background:none!important;background-color:transparent!important;-webkit-text-fill-color:currentColor;background-clip:border-box;-webkit-background-clip:border-box}
/* Refined header lockup using the original supplied logo. */
.restaurant .header .brand{gap:15px;letter-spacing:0;text-transform:none}.restaurant .header .brand-logo{width:78px;height:78px;padding:0;border:1px solid #d4b750;box-shadow:0 0 0 4px #f4eddb,0 0 0 5px #e5d9bb;object-fit:contain}.brand-lockup{display:flex;flex-direction:column;gap:7px}.restaurant .header .brand-title{font-family:'Playfair Display',Georgia,serif;font-size:32px;font-weight:600;letter-spacing:-1.2px;line-height:1.15;color:#251710;white-space:nowrap;display:block}.restaurant .header .brand-title em{font-weight:500;color:#a20d1b;font-style:italic}.restaurant .header .brand-lockup small{display:flex;align-items:center;gap:9px;font-family:'DM Sans',Arial,sans-serif;font-size:9px;font-weight:500;letter-spacing:1.8px;text-transform:uppercase;margin:0;color:#9c7b32;line-height:1.5}.brand-lockup small:before{content:'';display:block;width:18px;height:1px;background:#b4933d;flex-shrink:0}.restaurant .header{min-height:110px}.restaurant .header nav{font-size:12px;gap:19px}
@media(max-width:1150px) and (min-width:721px){.restaurant .header .brand-title{font-size:31px}.restaurant .header .brand-logo{width:72px;height:72px}.restaurant .header .brand-lockup small{font-size:9px}}
@media(max-width:720px){.restaurant .header{min-height:94px;gap:12px;padding-top:13px;padding-bottom:17px}.restaurant .header .brand{gap:12px}.restaurant .header .brand-logo{width:58px;height:58px;box-shadow:0 0 0 3px #f4eddb,0 0 0 4px #e5d9bb}.restaurant .header .brand-title{font-size:27px;letter-spacing:-1px}.brand-lockup{gap:6px}.restaurant .header .brand-lockup small{font-size:7px;letter-spacing:1.1px;gap:6px}.brand-lockup small:before{width:12px}.restaurant .header nav{font-size:13px}}
@media(max-width:390px){.restaurant .header .brand-title{font-size:24px}.restaurant .header .brand-logo{width:52px;height:52px}.restaurant .header .brand{gap:10px}.restaurant .header .brand-lockup small{font-size:6.5px;letter-spacing:1px}.mobile-menu-toggle{padding:9px 10px;font-size:12px}}
@media(max-width:340px){.restaurant .header .brand-title{font-size:21px}.restaurant .header .brand-logo{width:45px;height:45px}.restaurant .header .brand-lockup small{font-size:6px;letter-spacing:.7px}.restaurant .header .brand{gap:9px}}
.location-help{font-size:11px;line-height:1.8;margin-top:15px;color:#8c7852}.location-help summary{cursor:pointer;font-weight:600;color:#a10d1b;min-height:36px;padding:8px 0}.location-help p{margin:10px 0!important}.location-help strong{color:#5c482f}#address-map-preview{font-size:11px;line-height:1.7;color:#a10d1b;margin-top:12px;display:block}

.google-map-picker{display:grid;gap:10px;border:1px solid #c6d9cc;background:#f0f6f1;border-radius:12px;padding:16px;margin:14px 0}.google-map-picker label{margin:0}.google-map-picker small{display:block;font-size:13px;line-height:1.7;color:#536955;margin-top:8px}.google-map-picker p{font-size:13px;color:#36563e;margin:0}.google-map-picker a{font-size:14px}.google-map-picker a[hidden]{display:none}
/* Larger editorial italic lettering across the customer website. */
.restaurant .section h2,.restaurant .contact h2,.restaurant .about-section h2{font-family:'Playfair Display',Georgia,'Times New Roman',serif;font-style:italic;font-weight:600;font-size:clamp(36px,3.6vw,50px);line-height:1.2;letter-spacing:-.025em}.restaurant .category-card h3,.restaurant .food-grid h3,.restaurant .dish-heading h3,.restaurant .story-chapter h3,.restaurant .why-choose h3,.restaurant .enquiry-form h3{font-family:'Playfair Display',Georgia,'Times New Roman',serif;font-style:italic;font-weight:600;font-size:26px;line-height:1.3;letter-spacing:-.015em}.restaurant .category-card h3{font-size:24px;overflow-wrap:anywhere}.restaurant .category-copy{min-width:0}.restaurant .dish-name-button{font-family:inherit;font-style:inherit;font-weight:inherit;line-height:inherit}.restaurant .dish-dialog-head h2{font-family:'Playfair Display',Georgia,'Times New Roman',serif;font-size:32px;font-style:italic;font-weight:600;line-height:1.25}.restaurant .category-card p{font-size:13px}.restaurant .food-grid p{font-size:14px;line-height:1.65}@media(max-width:720px){.restaurant .section h2,.restaurant .contact h2,.restaurant .about-section h2{font-size:34px}.restaurant .category-card h3{font-size:23px}.restaurant .food-grid h3,.restaurant .dish-heading h3,.restaurant .story-chapter h3,.restaurant .why-choose h3,.restaurant .enquiry-form h3{font-size:25px}.restaurant .dish-dialog-head h2{font-size:28px}}
.restaurant footer>.brand{background:#faf7ef;border:1px solid #e2d4b8;border-radius:14px;padding:18px;gap:14px;align-self:start;white-space:normal;align-items:center}.restaurant footer>.brand .brand-logo{width:72px;height:72px;flex:0 0 72px;border:2px solid #b7953e;border-radius:50%;box-shadow:0 0 0 4px #ebe2ca;background:#000;object-fit:contain}.restaurant .footer-brand-lockup{min-width:0}.restaurant .footer-brand-title{display:block;font-family:'Playfair Display',Georgia,'Times New Roman',serif;font-size:clamp(27px,2.3vw,35px);font-weight:500;line-height:1.2;letter-spacing:-1px;color:#21150e}.restaurant .footer-brand-title em{font-style:italic;color:#ac1023}.restaurant .footer-brand-lockup>small{display:block;margin-top:8px;font:9px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:1.8px;text-transform:uppercase;color:#99722e}.restaurant footer .contact-details{font-family:'Playfair Display',Georgia,'Times New Roman',serif;font-size:20px;font-style:italic;line-height:1.65;color:#f2dfba;gap:10px}.restaurant footer .contact-details a,.restaurant footer .contact-details span{font:inherit;overflow-wrap:anywhere}.restaurant footer .contact-details a:hover{color:#edc857}@media(max-width:720px){.restaurant footer>.brand{padding:15px;gap:12px}.restaurant footer>.brand .brand-logo{width:60px;height:60px;flex-basis:60px}.restaurant .footer-brand-title{font-size:29px}.restaurant footer .contact-details{font-size:19px}.restaurant .footer-brand-lockup>small{font-size:8px;letter-spacing:1.4px}}
.restaurant footer>.brand{width:fit-content;max-width:100%;justify-self:start;padding:14px 18px}.restaurant .footer-brand-title{text-transform:none}.restaurant .footer-brand-title em{text-transform:none}@media(max-width:720px){.restaurant footer>.brand{width:fit-content;max-width:100%;padding:12px 15px}.restaurant .footer-brand-title{font-size:27px}}
/* Footer lockup: cream Ceylon above gold italic Kitchen, blended into footer. */
.restaurant footer>.brand{background:transparent;border:0;box-shadow:none;border-radius:0;padding:0;gap:18px;width:fit-content;max-width:100%;align-items:center}.restaurant .footer-brand-title{display:flex;flex-direction:column;align-items:flex-start;font-family:'Playfair Display',Georgia,'Times New Roman',serif;font-size:48px;font-style:normal;font-weight:500;line-height:1.02;letter-spacing:-1.5px;color:#fff1dc;text-transform:none}.restaurant .footer-brand-title em{display:block;color:#dfbb37;font-style:italic;font-weight:500;text-transform:none}.restaurant .footer-brand-lockup>small{display:none}.restaurant footer>.brand .brand-logo{width:88px;height:88px;flex-basis:88px;box-shadow:0 0 0 3px #bc96352b;border-color:#c7a342}@media(max-width:720px){.restaurant footer>.brand{padding:0;gap:15px}.restaurant .footer-brand-title{font-size:42px}.restaurant footer>.brand .brand-logo{width:78px;height:78px;flex-basis:78px}}@media(max-width:360px){.restaurant .footer-brand-title{font-size:35px}.restaurant footer>.brand .brand-logo{width:66px;height:66px;flex-basis:66px}}
/* Readable italic footer navigation. */
.restaurant footer>div:not(.brand):not(.contact-details)>a{font-family:'Playfair Display',Georgia,'Times New Roman',serif;font-style:italic;font-size:23px;line-height:1.4;color:#f4dfb7;display:inline-flex;align-items:center;min-height:44px;padding:6px 0}.restaurant footer>div:not(.brand):not(.contact-details)>a:hover{color:#e5bf42}.restaurant footer>div:not(.brand):not(.contact-details){display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px}@media(max-width:720px){.restaurant footer>div:not(.brand):not(.contact-details)>a{font-size:22px}}
/* Compact footer with balanced desktop columns and a clean copyright row. */
.restaurant footer{display:grid;grid-template-columns:minmax(230px,1fr) minmax(190px,.8fr) minmax(280px,1.25fr);align-items:center;gap:18px 32px;padding:26px 32px 16px}.restaurant footer>.brand{align-self:center;gap:14px}.restaurant footer>.brand .brand-logo{width:68px;height:68px;flex-basis:68px}.restaurant .footer-brand-title{font-size:36px;line-height:1.02}.restaurant footer>div:not(.brand):not(.contact-details){justify-content:center;gap:6px 20px}.restaurant footer>div:not(.brand):not(.contact-details)>a{font-size:21px;padding:3px 0;min-height:38px}.restaurant footer .contact-details{display:grid;gap:4px;font-size:17px;line-height:1.45;align-content:center}.restaurant footer .contact-details>a,.restaurant footer .contact-details>span{margin:0;padding:0}.restaurant footer>small{grid-column:1/-1;text-align:center;border-top:1px solid #d4b65c25;padding-top:11px;margin:0;font:11px/1.5 'DM Sans',Arial,sans-serif;color:#c3aa7e}@media(max-width:1000px){.restaurant footer{grid-template-columns:1fr 1fr;gap:18px 24px;padding:24px}.restaurant footer .contact-details{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:7px 20px}.restaurant footer>div:not(.brand):not(.contact-details){justify-content:flex-end}}@media(max-width:600px){.restaurant footer{grid-template-columns:1fr;gap:16px;padding:22px 20px 14px}.restaurant footer>.brand .brand-logo{width:60px;height:60px;flex-basis:60px}.restaurant .footer-brand-title{font-size:32px}.restaurant footer>div:not(.brand):not(.contact-details){justify-content:flex-start;gap:4px 22px}.restaurant footer>div:not(.brand):not(.contact-details)>a{font-size:20px;min-height:40px}.restaurant footer .contact-details{grid-column:auto;grid-template-columns:1fr;font-size:17px;gap:5px}.restaurant footer>small{font-size:10px;padding-top:10px}}
.customer-orders{max-width:1000px;margin:30px auto;padding:0 18px}.customer-orders>header,.customer-order-card>header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px}.customer-orders h1{font-size:36px}.customer-order-card{border:1px solid #d9c5a7;border-radius:16px;padding:22px;margin:18px 0;background:#fffdf9}.customer-order-card h2{font:italic 28px Georgia;margin:0}.customer-order-card .order-progress{margin:16px 0}.customer-order-card li{margin:6px 0}.customer-driver{padding:14px;border-radius:12px;background:#e7f1e7;display:grid;gap:8px}.customer-driver a{color:#861024;font-weight:bold}.customer-orders [data-live-status]{font-size:13px;color:#5d7555}
.customer-auth-body{background:#f5f2eb;color:#30271e}.customer-auth{background:#fffdf9;border:1px solid #cba645;border-radius:18px;padding:38px;max-width:470px;margin:24px auto}.customer-auth .auth-brand{margin-bottom:30px;white-space:normal;gap:16px}.customer-auth .brand-logo{width:78px;height:78px;flex:0 0 78px;border:2px solid #c7a342;border-radius:50%;box-shadow:0 0 0 3px #eee4ce}.customer-auth .brand-title{font:500 34px/1.2 'Playfair Display',Georgia,serif;color:#21150e;letter-spacing:-1px;text-transform:none}.customer-auth .brand-title em{color:#a20d1b;font-style:italic}.customer-auth .brand-lockup small{font-size:8px;letter-spacing:2px;color:#99722d;margin-top:8px}.customer-auth h1{font:700 38px/1.2 'DM Sans',Arial,sans-serif;letter-spacing:-1px;margin-bottom:20px}.customer-auth>p:not(.eyebrow){font-size:14px;line-height:1.7}.customer-auth label{font-size:14px;color:#65482e}.customer-auth input,.customer-auth textarea{background:#fff;border:1px solid #dfcdb4;border-radius:7px;min-height:49px;padding:12px 13px;font:16px/1.4 'DM Sans',Arial,sans-serif;color:#302016;margin-top:5px}.customer-auth input:focus,.customer-auth textarea:focus{outline:2px solid #b58f3e40;border-color:#b58f3e}.customer-auth label>small{display:block;font-size:12px;margin-top:6px;line-height:1.5}.customer-auth .button{background:#aa0c21;border:1px solid #aa0c21;color:#fff;border-radius:6px;min-height:58px;padding:16px 19px;font:600 14px 'DM Sans',Arial,sans-serif;margin-top:18px}.customer-auth .button:hover{background:#870d1b}.customer-auth>.text-link{display:block;font-size:13px;margin-top:24px}.customer-auth .eyebrow{font-size:9px;color:#9a7029;letter-spacing:2.5px}@media(max-width:520px){.customer-auth{margin:18px 14px;padding:28px 24px}.customer-auth .brand-title{font-size:29px}.customer-auth .brand-logo{width:65px;height:65px;flex-basis:65px}.customer-auth .auth-brand{gap:12px}.customer-auth h1{font-size:33px}}
.customer-profile .customer-order-card h2{margin-bottom:24px}.customer-profile label{font-size:14px;color:#543e2b}.customer-profile input,.customer-profile textarea{border:1px solid #d9c7ac;background:#fff;border-radius:8px;min-height:46px;padding:12px;font-size:16px}.customer-profile label small{display:block;line-height:1.5;font-size:12px;margin-top:6px}.customer-profile .button{margin-top:14px;border-radius:8px;background:#a20d1b;border-color:#a20d1b;color:#fff}
.customer-order-filters{display:flex;align-items:end;gap:12px;margin:18px 0 12px}.customer-order-filters label{font-size:14px;min-width:220px}.customer-order-filters select{border:1px solid #d9c7ac;border-radius:9px;background:#fffdf8;padding:10px 14px;min-height:44px;color:#3b281b;font-size:16px;margin-top:5px}
/* Customer lounge: restrained cream, burgundy and gold with editorial headings. */
.customer-area{background:#f6f2e9;color:#302116}.customer-area .customer-orders{max-width:1100px;margin:0 auto;padding:24px 28px 55px}.customer-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:6px 0 24px;border-bottom:1px solid #dfd1b9}.customer-brand{display:flex;align-items:center;gap:16px;min-width:0}.customer-brand img{width:76px;height:76px;flex:0 0 76px;border:2px solid #b5963e;border-radius:50%;padding:3px;box-shadow:0 0 0 4px #e9dfc8;background:#000}.customer-brand strong{display:block;font:500 34px/1.2 'Playfair Display',Georgia,serif;letter-spacing:-1px;color:#21150e}.customer-brand em{color:#ac1023;font-weight:500}.customer-brand small{display:block;margin-top:8px;font:9px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:2px;text-transform:uppercase;color:#987333}.customer-area-tag{font-size:10px;letter-spacing:2px;color:#8b6a38;text-align:right}.customer-area .customer-page-heading{padding:30px 0 23px;align-items:center;gap:20px}.customer-greeting{font-size:14px;color:#856742;margin:0 0 8px}.customer-area h1{font:italic 500 44px/1.2 'Playfair Display',Georgia,serif;margin:0 0 9px;letter-spacing:-1px}.customer-heading-note{font-size:14px;color:#7b6751;margin:0;line-height:1.6}.customer-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.customer-actions form{margin:0}.customer-area .button{border-radius:9px;background:#a20d1b;border-color:#a20d1b;color:#fff8e9;min-height:44px;font-size:13px;padding:12px 17px;gap:10px}.customer-area .customer-actions>a:nth-child(2){background:#fffaf1;color:#694524;border-color:#d6bf98}.customer-actions form button{border:0;border-radius:8px;background:transparent;color:#795a3e;font-size:13px;padding:12px;min-height:44px}.customer-actions form button:hover{background:#eae0ce}.customer-filter-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;border:1px solid #e0d2b9;background:#fffaf2;border-radius:14px;padding:15px 18px;margin-bottom:22px}.customer-filter-panel .customer-order-filters{margin:0}.customer-filter-panel [data-live-status]{margin:0;font-size:12px;display:flex;align-items:center;gap:7px}.customer-filter-panel [data-live-status]:before{content:'';width:7px;height:7px;background:#53825a;border-radius:50%;display:inline-block}.customer-area .customer-order-card{box-shadow:0 5px 24px #37231705;border-color:#e1d2b9;border-radius:16px}.customer-empty{text-align:center;background:#fffcf7;border:1px solid #e0d2b9;border-radius:18px;padding:42px 24px}.customer-empty>span{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#f2e5cb;color:#9b7331;font-size:32px;margin:0 auto 17px}.customer-empty h2{font:italic 500 30px/1.3 'Playfair Display',Georgia,serif;letter-spacing:-.4px;margin:0 0 12px}.customer-empty p{font-size:14px;color:#7c6750}.customer-empty p>a{color:#9b1524;text-decoration:underline}.customer-profile h2{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:29px}@media(max-width:650px){.customer-area .customer-orders{padding:20px 17px 35px}.customer-brand{gap:12px}.customer-brand img{width:62px;height:62px;flex-basis:62px}.customer-brand strong{font-size:28px}.customer-brand small{font-size:7px;letter-spacing:1.4px}.customer-area-tag{display:none}.customer-area .customer-page-heading{padding:25px 0 18px;align-items:flex-start}.customer-area h1{font-size:37px}.customer-actions{width:100%}.customer-actions>a{flex:1;justify-content:center}.customer-filter-panel{padding:14px}.customer-filter-panel .customer-order-filters,.customer-filter-panel label{width:100%}.customer-empty{padding:30px 20px}.customer-empty h2{font-size:27px}}
.customer-auth .field-error{display:block;color:#a20d1b;font-size:12px;line-height:1.5;margin-top:6px}.customer-auth .field-error[hidden]{display:none}.customer-auth input[aria-invalid=true],.customer-auth textarea[aria-invalid=true]{border:2px solid #bd2131;background:#fff6f3}.customer-auth input[aria-invalid=true]:focus,.customer-auth textarea[aria-invalid=true]:focus{outline:3px solid #bd213122}
.delivery-cost-panel{margin:18px 0;padding:18px;border:1px solid #d7c39c;border-radius:12px;background:#fff7e7}.delivery-cost-panel>p{display:flex;gap:12px;justify-content:space-between;font-size:15px;line-height:1.5;margin:7px 0}.delivery-cost-panel #delivery-distance-note{font-size:13px;color:#765b3c;display:block}.delivery-cost-panel .button{width:auto!important;padding:10px 14px!important;min-height:42px;margin:8px 0}.delivery-cost-panel small{font-size:11px;color:#826b4d;line-height:1.5}
.ui-icon{width:20px;height:20px;flex:0 0 20px;display:inline-block;vertical-align:middle;pointer-events:none}.with-ui-icon{display:inline-flex;align-items:center;gap:10px}.sidebar nav a.with-ui-icon{display:flex;gap:11px}.sidebar nav .ui-icon{width:19px;height:19px;flex-basis:19px;opacity:.9}.restaurant footer .contact-details>a.with-ui-icon,.restaurant footer .contact-details>span.with-ui-icon{display:flex;align-items:flex-start;gap:12px}.restaurant footer .contact-details .ui-icon{color:#d8b74e;width:18px;height:18px;flex-basis:18px;margin-top:4px}.reach-icon .ui-icon,.location-mark .ui-icon{width:23px;height:23px;flex-basis:23px}.reach-icon,.location-mark{display:grid;place-items:center}.customer-actions .ui-icon,footer>div:not(.brand):not(.contact-details) .ui-icon{width:18px;height:18px;flex-basis:18px}.customer-actions button.with-ui-icon{display:inline-flex}.delivery-phone.with-ui-icon{display:inline-flex}.restaurant footer .contact-details .with-ui-icon{font-style:italic}

/* Refined restaurant location card. */
.restaurant .visit-card{padding:32px;min-height:365px;border:1px solid #a88a40;border-radius:20px;background:radial-gradient(ellipse at 100% 100%,#4a1720 0,transparent 68%),linear-gradient(135deg,#1c120f,#20100e);box-shadow:0 12px 30px #32180d0b}
.restaurant .visit-top .contact-kicker{font-size:10px;letter-spacing:2.2px;font-weight:600;color:#dfc579}
.restaurant .location-mark{width:46px;height:46px;border-color:#c3a65b66;background:#dfc5790a;color:#e6c974}
.restaurant .visit-body{margin:24px 0 26px}
.restaurant .visit-city{font-size:13px;line-height:1.6;color:#c8b59a;margin:0 0 12px}
.restaurant .visit-body h3{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(29px,3.1vw,42px);line-height:1.22;letter-spacing:-.7px;max-width:100%;color:#fff3dc;margin:0 0 20px;text-wrap:balance;overflow-wrap:break-word}
.restaurant .visit-hours{display:flex;align-items:center;gap:9px;font-size:12px;line-height:1.65;color:#cfbea5;max-width:100%}
.restaurant .visit-hours .ui-icon{width:17px;height:17px;flex-basis:17px;color:#ddbf6a}
.restaurant .directions-button{padding:16px 0 0;min-height:48px;border-top-color:#d7b96240;font-size:13px;letter-spacing:.15px;color:#ecd18b;transition:color .2s}
.restaurant .directions-button span{display:grid;place-items:center;border:1px solid #d7b96255;border-radius:50%;width:34px;height:34px;font-size:20px;transition:background .2s,transform .2s}
.restaurant .directions-button:hover{color:#fff5d8}
.restaurant .directions-button:hover span{background:#d7b96215;transform:translate(2px,-2px)}
.restaurant .directions-button:focus-visible{outline:2px solid #e4c56e;outline-offset:5px;border-radius:3px}
.restaurant .visit-watermark{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:500;font-size:90px;letter-spacing:-3px;bottom:7px;opacity:.55}
@media(max-width:850px){.restaurant .visit-card{padding:26px}.restaurant .visit-body h3{font-size:31px}}
@media(max-width:720px){.restaurant .visit-card{padding:25px;min-height:330px;border-radius:17px}.restaurant .visit-body{margin:24px 0}.restaurant .visit-body h3{font-size:clamp(29px,7.5vw,38px)}.restaurant .visit-top .contact-kicker{font-size:9px;letter-spacing:1.7px}.restaurant .visit-watermark{font-size:76px}}
@media(prefers-reduced-motion:reduce){.restaurant .directions-button,.restaurant .directions-button span{transition:none}}

/* Structured footer columns and compact utility row. */
.restaurant footer{grid-template-columns:minmax(220px,1fr) minmax(220px,.85fr) minmax(300px,1.15fr);align-items:start;column-gap:48px;row-gap:24px;padding:32px max(28px,calc((100vw - 1440px)/2));background:#160e0c}
.restaurant footer>.brand{align-self:center;gap:16px}
.restaurant footer>.brand .brand-logo{width:72px;height:72px;flex-basis:72px}
.restaurant .footer-brand-title{font-size:38px}
.restaurant footer>.footer-links{display:grid!important;grid-template-columns:1fr 1fr;justify-content:start;align-items:start;gap:5px 22px}
.restaurant footer>.footer-links:before,.restaurant footer>.contact-details:before{content:'Explore';grid-column:1/-1;font:600 10px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:2px;text-transform:uppercase;color:#b69a65;margin-bottom:8px}
.restaurant footer>.contact-details:before{content:'Get in touch'}
.restaurant footer>.footer-links>a{font-size:20px!important;min-height:36px;white-space:nowrap;gap:9px}
.restaurant footer>.contact-details{grid-column:auto;grid-template-columns:1fr;font-size:16px;line-height:1.5;gap:7px}
.restaurant footer .contact-details .ui-icon{width:17px;height:17px;flex-basis:17px;margin-top:3px}
.restaurant footer .footer-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;border-top:1px solid #d4b65c25;padding:15px 0 0;margin:0}
.restaurant footer .footer-bottom>small{font:11px/1.6 'DM Sans',Arial,sans-serif;color:#b8a184}
.restaurant footer .footer-bottom>.app-install-link{width:auto;max-width:100%;margin:0;min-height:38px;padding:8px 15px;border-color:#8f743f70;border-radius:6px;font:12px/1.5 'DM Sans',Arial,sans-serif;color:#e4c784}
.restaurant footer .footer-bottom>.app-install-link:hover{background:#d4b65c10;border-color:#c4a25b}
.restaurant footer{padding-bottom:85px}
@media(max-width:1050px){.restaurant footer{grid-template-columns:1fr 1fr;gap:26px 32px;padding:28px 28px 85px}.restaurant footer>.brand{grid-row:1}.restaurant footer>.footer-links{grid-row:1}.restaurant footer>.contact-details{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:9px 28px}}
@media(max-width:600px){.restaurant footer{grid-template-columns:1fr;gap:24px;padding:28px 22px 95px}.restaurant footer>.brand,.restaurant footer>.footer-links{grid-row:auto}.restaurant footer>.brand .brand-logo{width:62px;height:62px;flex-basis:62px}.restaurant .footer-brand-title{font-size:34px}.restaurant footer>.footer-links{grid-template-columns:1fr 1fr;gap:4px 16px}.restaurant footer>.footer-links>a{font-size:19px!important}.restaurant footer>.contact-details{grid-column:auto;grid-template-columns:1fr;font-size:16px}.restaurant footer .footer-bottom{align-items:flex-start;gap:12px}.restaurant footer .footer-bottom>small{font-size:10px}}

/* Footer layout uses one centered content width at every screen size. */
.restaurant footer.site-footer{display:block;padding:0 28px 78px;background:#160e0c;border-top:1px solid #9d7e36}
.site-footer .footer-main{width:100%;max-width:1220px;margin:auto;display:grid;grid-template-columns:1fr .85fr 1.25fr;gap:48px;padding:32px 0 26px;align-items:start}
.site-footer .footer-main>.brand{display:flex;align-items:center;align-self:center;gap:15px;padding:0;background:none;border:0;white-space:normal}
.site-footer .footer-main .brand-logo{width:70px;height:70px;flex:0 0 70px;object-fit:contain;border-radius:50%;border:1px solid #b4994e;box-shadow:0 0 0 3px #b4994e19}
.site-footer .footer-main .footer-brand-title{font-size:36px;line-height:1.04;letter-spacing:-1px;color:#fff1dc}
.site-footer .footer-main .footer-brand-title em{color:#dfbb37}
.site-footer .footer-main .footer-links{display:grid;grid-template-columns:1fr;gap:3px;align-content:start;justify-items:start}
.site-footer .footer-links:before{content:'Quick links';font:600 10px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:1.8px;text-transform:uppercase;color:#b69a65;margin-bottom:11px}
.site-footer .footer-main .footer-links>a{display:flex;align-items:center;gap:10px;font:italic 19px/1.4 'Playfair Display',Georgia,serif;color:#f2dfba;min-height:29px;padding:0}
.site-footer .footer-main .footer-links>a:hover{color:#e5bf42}
.site-footer .footer-main .footer-links .ui-icon{width:16px;height:16px;flex-basis:16px;color:#bfa467}
.restaurant .site-footer .footer-main .contact-details{display:grid;grid-template-columns:1fr;gap:9px;align-content:start;font-size:16px;line-height:1.5;margin:0}
.site-footer .footer-main .contact-details:before{content:'Contact us';font:600 10px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:1.8px;text-transform:uppercase;color:#b69a65;margin-bottom:11px}
.restaurant footer.site-footer .footer-bottom{max-width:1220px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding-top:16px;gap:16px;border-top:1px solid #d4b65c25}
.restaurant footer.site-footer .footer-bottom .app-install-link{font-size:11px;min-height:34px;padding:7px 13px}
@media(max-width:850px){.site-footer .footer-main{grid-template-columns:1fr 1fr;gap:28px}.site-footer .footer-main>.brand{grid-column:1/-1;align-self:start}.site-footer .footer-main .footer-brand-title{font-size:32px}.site-footer .footer-main .brand-logo{width:62px;height:62px;flex-basis:62px}}
@media(max-width:500px){.restaurant footer.site-footer{padding:0 22px 94px}.site-footer .footer-main{grid-template-columns:1fr;gap:23px;padding:26px 0 22px}.site-footer .footer-main .footer-links{grid-template-columns:1fr 1fr;gap:8px 14px}.site-footer .footer-links:before{grid-column:1/-1;margin-bottom:4px}.site-footer .footer-main .contact-details:before{margin-bottom:3px}.restaurant footer.site-footer .footer-bottom{flex-direction:column;align-items:flex-start;gap:12px}.site-footer .footer-main .footer-links>a{font-size:18px;min-height:36px}}

/* Clear, accessible footer: brand typography with readable everyday controls. */
.restaurant footer.site-footer{background:#1c1411;padding:0 28px 80px;border-top:3px solid #b99a47}
.site-footer .footer-main{max-width:1180px;grid-template-columns:1fr 1fr 1.25fr;gap:40px;padding:30px 0 24px}
.site-footer .footer-main>.brand{align-self:start;padding-top:8px}
.site-footer .footer-main .footer-brand-title{font-size:35px}
.site-footer .footer-main .brand-logo{width:68px;height:68px;flex-basis:68px}
.site-footer .footer-main .footer-links{display:grid;grid-template-columns:1fr 1fr;gap:8px;justify-items:stretch}
.site-footer .footer-links:before{content:'Your next meal';grid-column:1/-1;color:#ceb98c;font-size:11px;letter-spacing:1.2px;margin-bottom:5px}
.site-footer .footer-main .footer-links>a{justify-content:flex-start;min-height:42px;padding:9px 11px;border:1px solid #bda67430;border-radius:7px;background:#ffffff03;font:500 13px/1.4 'DM Sans',Arial,sans-serif;color:#f7ecda;white-space:normal}
.site-footer .footer-main .footer-links>a:nth-child(2){background:#a60917;border-color:#bb2430;color:#fff}
.site-footer .footer-main .footer-links>a:hover{background:#ffffff0c;border-color:#bda67490;color:#fff}
.site-footer .footer-main .footer-links>a:nth-child(2):hover{background:#be1625}
.restaurant .site-footer .footer-main .contact-details{gap:5px;font-family:'DM Sans',Arial,sans-serif;font-style:normal;font-size:13px;line-height:1.65;color:#e4d8c5}
.site-footer .footer-main .contact-details:before{font-size:11px;letter-spacing:1.2px;color:#ceb98c;margin-bottom:8px}
.restaurant footer.site-footer .contact-details>a.with-ui-icon,.restaurant footer.site-footer .contact-details>span.with-ui-icon{font-family:'DM Sans',Arial,sans-serif;font-style:normal;min-height:28px;gap:11px}
.restaurant footer.site-footer .footer-bottom{max-width:1180px;padding-top:14px}
.restaurant footer.site-footer .footer-bottom>small{color:#b7a58c;font-size:11px}
.restaurant footer.site-footer .footer-bottom .app-install-link{min-height:40px;font-size:12px;padding:9px 14px;background:#ddc58c;color:#291c12;border-color:#ddc58c;font-weight:600}
.site-footer a:focus-visible{outline:2px solid #edd28a;outline-offset:3px}
@media(max-width:900px){.site-footer .footer-main{grid-template-columns:1fr 1.2fr;gap:24px 32px}.site-footer .footer-main>.brand{grid-column:1/-1}.site-footer .footer-main .footer-links{align-content:start}}
@media(max-width:540px){.restaurant footer.site-footer{padding:0 20px 100px}.site-footer .footer-main{grid-template-columns:1fr;gap:22px;padding:26px 0 22px}.site-footer .footer-main .footer-links>a{min-height:46px}.site-footer .footer-main .footer-brand-title{font-size:32px}.site-footer .footer-main .brand-logo{width:62px;height:62px;flex-basis:62px}.restaurant footer.site-footer .footer-bottom{align-items:stretch}.restaurant footer.site-footer .footer-bottom .app-install-link{align-self:flex-start}}

/* Contact tiles mirror the footer navigation controls. */
.restaurant .site-footer .footer-main .contact-details{gap:8px}
.restaurant footer.site-footer .footer-main .contact-details>a.with-ui-icon,.restaurant footer.site-footer .footer-main .contact-details>span.with-ui-icon{display:flex;align-items:center;min-height:42px;padding:9px 12px;border:1px solid #bda67430;border-radius:7px;background:#ffffff03;font:400 13px/1.5 'DM Sans',Arial,sans-serif;color:#f7ecda;gap:11px;overflow-wrap:anywhere}
.restaurant footer.site-footer .footer-main .contact-details .ui-icon{width:16px;height:16px;flex-basis:16px;margin-top:0;color:#c6ac6c}
.restaurant footer.site-footer .footer-main .contact-details>a:hover{background:#ffffff0c;border-color:#bda67490;color:#fff}
@media(max-width:540px){.restaurant footer.site-footer .footer-main .contact-details>a.with-ui-icon,.restaurant footer.site-footer .footer-main .contact-details>span.with-ui-icon{min-height:46px}}

/* Matching contact controls on the light contact cards. */
.restaurant .contact-options .reach-card{grid-template-columns:42px minmax(0,1fr);gap:18px;padding:25px;border-radius:16px;background:#fffdf9;border-color:#e6d7be}
.restaurant .contact-options .reach-card>div:last-child{min-width:0}
.restaurant .contact-options .contact-kicker{font:600 10px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:1.8px;color:#9a7136}
.restaurant .contact-options .reach-card h3{font:italic 500 clamp(23px,2vw,28px)/1.3 'Playfair Display',Georgia,serif;letter-spacing:-.35px;color:#302017;margin:9px 0 18px}
.restaurant .contact-options .phone-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.restaurant .contact-options .email-links{display:grid;gap:8px}
.restaurant .contact-options .phone-links a,.restaurant .contact-options .email-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:11px 13px;background:#f8f3e9;border:1px solid #e4d6bf;border-radius:8px;font:500 13px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:0;color:#483322;overflow-wrap:anywhere;transition:background .2s,border-color .2s}
.restaurant .contact-options .phone-links a:hover,.restaurant .contact-options .email-links a:hover{background:#f1e7d5;border-color:#b59148;color:#8e0f1b}
.restaurant .contact-options .email-links a span{color:#9d7835;font-size:16px;flex-shrink:0}
.restaurant .contact-options .reach-icon{width:42px;height:42px;border-radius:12px;background:#f7e8e3;color:#a60917}
@media(max-width:850px){.restaurant .contact-options .phone-links{grid-template-columns:1fr}}
@media(max-width:540px){.restaurant .contact-options .reach-card{padding:21px 18px;gap:12px;grid-template-columns:34px minmax(0,1fr)}.restaurant .contact-options .reach-icon{width:34px;height:34px;border-radius:10px}.restaurant .contact-options .reach-card h3{font-size:24px}.restaurant .contact-options .phone-links a,.restaurant .contact-options .email-links a{font-size:12px;padding:10px;min-height:46px}}

.profile-avatar{display:inline-flex;width:88px;height:88px;flex:0 0 88px;object-fit:cover;border-radius:50%;border:2px solid #d9bd78;background:#eee4d1;margin-bottom:12px}.profile-initial{align-items:center;justify-content:center;font:italic 35px Georgia,serif;color:#7b4829}.profile-avatar-small{width:42px;height:42px;flex-basis:42px;font-size:21px;margin-bottom:8px}.staff-personal-profile{margin-bottom:22px}.staff-personal-profile input[type=file],.customer-profile input[type=file]{padding:12px;background:#f9f4ea;border:1px solid #dfd2bb;border-radius:8px;width:100%}.staff-personal-profile label:has(input[type=checkbox]),.customer-profile label:has(input[type=checkbox]){display:flex;align-items:center;gap:9px}.staff-personal-profile input[type=checkbox],.customer-profile input[type=checkbox]{width:auto}

/* Elegant catering invitation with a clear, comfortable enquiry form. */
.restaurant #catering{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:56px;text-align:left;padding:60px clamp(26px,5vw,76px);max-width:1440px;margin:20px auto;border:1px solid #ac873b75;border-radius:24px;background:radial-gradient(ellipse at 0 100%,#69212b55,transparent 70%),linear-gradient(125deg,#1b100e,#3c1016);overflow:hidden}
#catering .catering-intro{position:relative;min-width:0}#catering .catering-ornament{display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid #c9ac6355;border-radius:50%;color:#e4c57b;font-size:24px;margin-bottom:22px}#catering .catering-intro .eyebrow{font:600 9px/1.6 'DM Sans',Arial,sans-serif;letter-spacing:2.4px;color:#dcc48e;margin-bottom:20px}
.restaurant #catering h2{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(42px,4.8vw,70px);line-height:1.08;letter-spacing:-1.8px;color:#f2d58c;margin:0 0 24px;text-wrap:balance}
#catering .catering-description{font:400 14px/1.9 'DM Sans',Arial,sans-serif;color:#e0cdb7;max-width:450px;margin:0 0 25px}#catering .catering-occasions{display:flex;flex-wrap:wrap;gap:8px}#catering .catering-occasions span{font-size:10px;color:#d7be8a;border:1px solid #b79a5a44;border-radius:24px;padding:7px 11px;background:#ffffff03}
.restaurant #catering .catering-form{width:100%;max-width:none;margin:0;background:#fffaf1;border:1px solid #e4c99566;border-radius:18px;padding:28px;box-shadow:0 16px 45px #13060530;color:#38271b}
#catering .catering-form .catering-form-caption{font:italic 500 26px/1.3 'Playfair Display',Georgia,serif;color:#4d3021;margin:0 0 24px}#catering .catering-form label{color:#785a3b;font:500 12px/1.5 'DM Sans',Arial,sans-serif;display:block;text-align:left;margin-bottom:17px}#catering .catering-form .form-grid{gap:0 16px}
#catering .catering-form input,#catering .catering-form textarea{display:block;width:100%;min-width:0;margin-top:7px;background:#fffdf8;border:1px solid #dfcfb6;border-radius:8px;padding:11px 12px;color:#33261b;font:400 14px/1.5 'DM Sans',Arial,sans-serif;min-height:44px;box-shadow:none;color-scheme:light}#catering .catering-form textarea{min-height:88px;resize:vertical}#catering .catering-form input:focus,#catering .catering-form textarea:focus{outline:2px solid #b88e4f66;outline-offset:2px;border-color:#b88e4f}
.restaurant #catering .catering-form .button{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:13px 18px;background:#a60917;color:#fff8e9;border:1px solid #a60917;border-radius:9px;font-size:13px;letter-spacing:0}.restaurant #catering .catering-form .button:hover{background:#850c17;border-color:#850c17}
@media(max-width:900px){.restaurant #catering{gap:30px;margin:18px 14px;padding:38px 28px}.restaurant #catering h2{font-size:46px}.restaurant #catering .catering-form{padding:23px}.catering-form .form-grid{grid-template-columns:1fr}}
@media(max-width:680px){.restaurant #catering{grid-template-columns:1fr;gap:28px;margin:12px 10px;padding:30px 20px;border-radius:18px}.restaurant #catering h2{font-size:45px;max-width:440px;letter-spacing:-1px}#catering .catering-ornament{margin-bottom:16px}#catering .catering-description{font-size:13px;margin-bottom:18px}.restaurant #catering .catering-form{padding:22px 18px}#catering .catering-form .form-grid{grid-template-columns:1fr 1fr;gap:0 12px}#catering .catering-form input,#catering .catering-form textarea{font-size:16px}#catering .catering-form .catering-form-caption{font-size:24px}}
@media(max-width:380px){#catering .catering-form .form-grid{grid-template-columns:1fr}}

.hierarchy-hidden{display:none!important}.food-menu-breadcrumb{display:flex;align-items:center;gap:16px;margin:15px 0 20px;font-size:13px;color:#86643b}.food-menu-breadcrumb button{border:1px solid #ddc99e;background:#fffaf1;color:#7b3b25;border-radius:24px;padding:10px 16px;min-height:42px}.food-menu-breadcrumb button[hidden]{display:none}.food-menu-grid{margin-bottom:22px}.category-level-grid [hidden]{display:none!important}

/* Direct dish browsing: one menu with clear prices and searchable cards. */
.dish-menu-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px;margin:0 0 24px}.dish-menu-toolbar>p{font-size:13px;color:#897254;margin:0}.dish-menu-search{display:flex;align-items:center;gap:10px;padding:0 14px;background:#fffdf7;border:1px solid #dfd1b9;border-radius:24px;min-width:240px}.dish-menu-search>span{font-size:23px;color:#a0844d}.dish-menu-search input{background:transparent;border:0;min-height:44px;padding:10px 0;width:100%;font-size:13px}.restaurant #menu .food-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px}.restaurant #menu .food-grid .room-card{background:#fffdf9;border:1px solid #e4d5ba;border-radius:16px;padding:0 0 20px;overflow:hidden;display:flex;flex-direction:column}.restaurant #menu .food-grid .room-card[hidden]{display:none}.restaurant #menu .food-grid .room-image{border:0;width:100%;padding:0;border-radius:0}.restaurant #menu .food-grid .room-image img{height:210px}.restaurant #menu .food-grid .room-top{margin:19px 20px 8px}.restaurant #menu .food-grid .room-top h3{margin:0;font-size:27px}.restaurant #menu .food-grid .room-card>p{margin:0 20px 16px;font-size:13px;min-height:0;color:#8c775b}.dish-price-line{display:flex;align-items:baseline;gap:8px;margin:auto 20px 14px;color:#8b6b32}.dish-price-line>span{font-size:11px}.dish-price-line>strong{font-size:18px;font-weight:600;color:#8d1724}.restaurant #menu .food-grid .add-dish{margin:0 20px;min-height:44px;width:calc(100% - 40px);justify-content:space-between}.restaurant #menu .food-grid .room-card>.muted{margin:auto 20px 0;padding:12px;border-radius:8px;background:#f4eee4;font-size:12px;text-align:center}.dish-search-empty{padding:24px;text-align:center;border:1px dashed #d9c5a0;border-radius:12px;color:#8b7050}@media(max-width:600px){.dish-menu-search{width:100%}.dish-menu-search input{font-size:16px}.restaurant #menu .food-grid{grid-template-columns:1fr;gap:18px}.restaurant #menu .food-grid .room-image img{height:230px}}

/* Compact dish cards: fixed sensible width instead of stretching a few cards. */
.restaurant #menu .food-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;align-items:stretch}.restaurant #menu .food-grid .room-card{padding-bottom:12px;border-radius:12px}.restaurant #menu .food-grid .room-image img{height:125px}.restaurant #menu .food-grid .room-top{margin:12px 14px 6px}.restaurant #menu .food-grid .room-top h3{font-size:23px}.restaurant #menu .food-grid .room-card>p{font-size:11px;line-height:1.6;margin:0 14px 10px}.restaurant #menu .food-grid .dish-price-line{margin:auto 14px 8px;gap:6px}.restaurant #menu .food-grid .dish-price-line strong{font-size:15px}.restaurant #menu .food-grid .dish-price-line>span{font-size:10px}.restaurant #menu .food-grid .add-dish{margin:0 14px;width:calc(100% - 28px);min-height:40px;padding:8px 0;font-size:12px}.restaurant #menu .food-grid .add-dish span{font-size:12px}.restaurant #menu .food-grid .room-card>.muted{margin:auto 14px 0;font-size:11px;padding:9px}@media(min-width:1450px){.restaurant #menu .food-grid{grid-template-columns:repeat(auto-fill,minmax(245px,1fr))}}@media(max-width:600px){.restaurant #menu .food-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.restaurant #menu .food-grid .room-image img{height:110px}.restaurant #menu .food-grid .room-top{margin:10px 11px 6px}.restaurant #menu .food-grid .room-top h3{font-size:21px}.restaurant #menu .food-grid .room-card>p{margin:0 11px 9px}.restaurant #menu .food-grid .add-dish{margin:0 11px;width:calc(100% - 22px);min-height:44px}.restaurant #menu .food-grid .dish-price-line{margin-left:11px;margin-right:11px}.restaurant #menu .food-grid .dish-price-line strong{font-size:13px}}@media(max-width:350px){.restaurant #menu .food-grid{grid-template-columns:1fr}.restaurant #menu .food-grid .room-image img{height:125px}}

/* Shorter dish cards while retaining comfortable touch controls. */
.restaurant #menu .food-grid .room-card{padding-bottom:7px}.restaurant #menu .food-grid .room-image img{height:85px}.restaurant #menu .food-grid .room-top{margin:8px 14px 4px}.restaurant #menu .food-grid .room-card>p{line-height:1.45;margin-bottom:6px}.restaurant #menu .food-grid .dish-price-line{margin-bottom:4px}.restaurant #menu .food-grid .add-dish{min-height:36px;padding:5px 0}@media(max-width:600px){.restaurant #menu .food-grid .room-image img{height:75px}.restaurant #menu .food-grid .room-top{margin:7px 11px 4px}.restaurant #menu .food-grid .add-dish{min-height:44px;padding:5px 0}}@media(max-width:350px){.restaurant #menu .food-grid .room-image img{height:85px}}

/* Equal photo and details halves. */
.restaurant #menu .food-grid .room-card{display:grid;grid-template-rows:1fr 1fr;height:300px;padding:0;gap:0}.restaurant #menu .food-grid .room-image{height:100%;min-height:0;overflow:hidden}.restaurant #menu .food-grid .room-image img{height:100%;width:100%;object-fit:cover}.dish-card-details{display:flex;flex-direction:column;min-height:0;padding:12px 14px;overflow:auto}.restaurant #menu .food-grid .dish-card-details .room-top{margin:0 0 5px}.restaurant #menu .food-grid .dish-card-details .room-top h3{font-size:22px}.dish-card-details>p{font-size:11px;line-height:1.45;color:#8c775b;margin:0 0 7px}.restaurant #menu .food-grid .dish-card-details .dish-price-line{margin:auto 0 5px}.restaurant #menu .food-grid .dish-card-details .add-dish{margin:0;width:100%;min-height:36px;padding:5px 0}.dish-card-details>.muted{font-size:11px;margin-top:auto;padding:8px;background:#f4eee4;border-radius:6px;text-align:center}@media(max-width:600px){.restaurant #menu .food-grid .room-card{height:320px}.dish-card-details{padding:10px 11px}.restaurant #menu .food-grid .dish-card-details .add-dish{min-height:44px}.restaurant #menu .food-grid .dish-card-details .room-top h3{font-size:21px}}

/* Give the compact cards a little more height. */
.restaurant #menu .food-grid .room-card{padding-bottom:10px}.restaurant #menu .food-grid .room-image img{height:112px}.restaurant #menu .food-grid .room-top{margin:11px 14px 6px}.restaurant #menu .food-grid .room-card>p{line-height:1.6;margin-bottom:9px}.restaurant #menu .food-grid .dish-price-line{margin-bottom:7px}.restaurant #menu .food-grid .add-dish{min-height:40px;padding:8px 0}@media(max-width:600px){.restaurant #menu .food-grid .room-image img{height:100px}.restaurant #menu .food-grid .room-top{margin:10px 11px 6px}.restaurant #menu .food-grid .add-dish{min-height:44px;padding:8px 0}}@media(max-width:350px){.restaurant #menu .food-grid .room-image img{height:112px}}

/* Taller dish cards, retaining the existing compact columns. */
.restaurant #menu .food-grid .room-card{padding-bottom:14px}.restaurant #menu .food-grid .room-image img{height:155px}.restaurant #menu .food-grid .room-top{margin:14px 14px 9px}.restaurant #menu .food-grid .room-card>p{margin-bottom:13px}.restaurant #menu .food-grid .dish-price-line{margin-bottom:11px}.restaurant #menu .food-grid .add-dish{min-height:44px;padding:10px 0}@media(max-width:600px){.restaurant #menu .food-grid .room-image img{height:135px}.restaurant #menu .food-grid .room-top{margin:12px 11px 8px}}@media(max-width:350px){.restaurant #menu .food-grid .room-image img{height:155px}}

/* Let all dish details determine card height; no nested scrolling. */
.restaurant #menu .food-grid .room-card{height:auto;max-height:none;min-height:0;grid-template-rows:155px auto;padding-bottom:0;align-content:start}.restaurant #menu .food-grid .room-image{height:155px;min-height:155px}.restaurant #menu .food-grid .room-image img{height:100%}.restaurant #menu .food-grid .dish-card-details{height:auto;max-height:none;min-height:0;overflow:visible;padding:14px;flex:1}.restaurant #menu .food-grid .dish-card-details>p{display:block;max-height:none;overflow:visible;white-space:normal;-webkit-line-clamp:unset;line-clamp:unset;overflow-wrap:anywhere}.restaurant #menu .food-grid .dish-card-details .room-top{min-height:0}.restaurant #menu .food-grid .dish-card-details .dish-price-line{margin-top:10px}.restaurant #menu .food-grid .dish-card-details .add-dish{min-height:44px}@media(max-width:600px){.restaurant #menu .food-grid .room-card{height:auto;grid-template-rows:135px auto}.restaurant #menu .food-grid .room-image{height:135px;min-height:135px}.restaurant #menu .food-grid .dish-card-details{padding:12px 11px}}@media(max-width:350px){.restaurant #menu .food-grid .room-card{grid-template-rows:155px auto}.restaurant #menu .food-grid .room-image{height:155px;min-height:155px}}

/* Compact details without changing typography or clipping content. */
.restaurant #menu .food-grid{align-items:start}.restaurant #menu .food-grid .room-card{align-self:start}.restaurant #menu .food-grid .dish-card-details{display:flex;flex-direction:column;flex:0 0 auto;justify-content:flex-start;gap:0;padding:10px 14px}.restaurant #menu .food-grid .dish-card-details .room-top{margin:0 0 6px;flex:0 0 auto}.restaurant #menu .food-grid .dish-card-details .room-top h3{margin:0}.restaurant #menu .food-grid .dish-card-details>p{height:auto;min-height:0;margin:0 0 7px;flex:0 0 auto}.restaurant #menu .food-grid .dish-card-details>p:empty{display:none}.restaurant #menu .food-grid .dish-card-details .dish-price-line{margin:4px 0 5px;flex:0 0 auto}.restaurant #menu .food-grid .dish-card-details .add-dish{margin:0;padding:7px 0;min-height:40px;flex:0 0 auto}.restaurant #menu .food-grid .dish-card-details>.muted{margin:5px 0 0}.restaurant #menu .food-grid .dish-card-details:before,.restaurant #menu .food-grid .dish-card-details:after{content:none}@media(max-width:600px){.restaurant #menu .food-grid .dish-card-details{padding:9px 11px}.restaurant #menu .food-grid .dish-card-details .add-dish{min-height:44px}}

/* Larger dish photo only; retain the compact details below. */
.restaurant #menu .food-grid .room-card{grid-template-rows:200px auto}.restaurant #menu .food-grid .room-image{height:200px;min-height:200px}.restaurant #menu .food-grid .room-image img{height:100%}@media(max-width:600px){.restaurant #menu .food-grid .room-card{grid-template-rows:175px auto}.restaurant #menu .food-grid .room-image{height:175px;min-height:175px}}@media(max-width:350px){.restaurant #menu .food-grid .room-card{grid-template-rows:200px auto}.restaurant #menu .food-grid .room-image{height:200px;min-height:200px}}

/* Gentle entrance and pointer feedback, using transforms and opacity. */
.restaurant .motion-reveal{opacity:0;transform:translateY(15px);transition:opacity .55s ease var(--motion-delay,0ms),transform .55s cubic-bezier(.2,.7,.3,1) var(--motion-delay,0ms)}.restaurant .motion-reveal.motion-visible{opacity:1;transform:translateY(0)}
.restaurant #menu .food-grid .room-image img{transition:transform .5s cubic-bezier(.2,.65,.3,1)}.restaurant #menu .food-grid .room-card{transition:opacity .55s ease var(--motion-delay,0ms),transform .35s ease,border-color .25s ease,box-shadow .3s ease}.restaurant .button,.restaurant #menu .add-dish,.restaurant .header nav a{transition:background-color .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease,transform .22s ease}.restaurant #menu .add-dish .app-icon,.restaurant #menu .add-dish>span:last-child{transition:transform .25s ease}.restaurant .header nav a{position:relative}.restaurant .header nav a:after{content:'';position:absolute;left:0;right:0;bottom:-5px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
@media(hover:hover) and (pointer:fine){.restaurant #menu .food-grid .room-card.motion-visible:hover,.restaurant #menu .food-grid .room-card:not(.motion-reveal):hover{transform:translateY(-5px);border-color:#c5a05b;box-shadow:0 12px 26px #60411a12}.restaurant #menu .food-grid .room-card:hover .room-image img{transform:scale(1.055)}.restaurant #menu .add-dish:hover .app-icon,.restaurant #menu .add-dish:hover>span:last-child{transform:translateX(3px)}.restaurant .button:hover{transform:translateY(-2px);box-shadow:0 5px 14px #4b241416}.restaurant .header nav a:hover:after,.restaurant .header nav a:focus-visible:after{transform:scaleX(1)}}
.restaurant .button:active,.restaurant #menu .add-dish:active{transform:translateY(0) scale(.98)}.restaurant #menu .room-card:focus-within{border-color:#bd984f;box-shadow:0 0 0 2px #bd984f20}
@media(prefers-reduced-motion:reduce){.restaurant .motion-reveal{opacity:1;transform:none}.restaurant .motion-reveal,.restaurant #menu .food-grid .room-card,.restaurant #menu .food-grid .room-image img,.restaurant .button,.restaurant #menu .add-dish,.restaurant .header nav a,.restaurant .header nav a:after{transition:none!important;animation:none!important}.restaurant #menu .room-card:hover,.restaurant .button:hover,.restaurant .button:active,.restaurant #menu .add-dish:active{transform:none!important}}

/* Touch feedback for phone browsers and the Android WebView. */
@media(hover:none),(pointer:coarse){.restaurant #menu .food-grid .room-card.motion-visible.motion-touch,.restaurant #menu .food-grid .room-card:not(.motion-reveal).motion-touch{transform:scale(.985);border-color:#c29a50;box-shadow:0 5px 16px #60411a16}.restaurant #menu .food-grid .room-card.motion-touch .room-image img{transform:scale(1.035)}.restaurant #menu .food-grid .room-card{transition:opacity .45s ease var(--motion-delay,0ms),transform .18s ease,border-color .18s ease,box-shadow .18s ease}.restaurant .button:active,.restaurant #menu .add-dish:active,.restaurant .phone-app-nav a:active{transform:scale(.97)}.restaurant .phone-app-nav a{transition:background-color .2s ease,transform .16s ease}.restaurant .header nav a:after{display:none}}
@media(prefers-reduced-motion:reduce){.restaurant #menu .food-grid .room-card.motion-touch,.restaurant #menu .food-grid .room-card.motion-touch .room-image img,.restaurant .phone-app-nav a:active{transform:none!important}.restaurant .phone-app-nav a{transition:none!important}}

/* Managed promotion: complete banner, clear close control, mobile-friendly. */
.promotion-dialog{width:min(92vw,640px);max-height:90dvh;padding:0;border:1px solid #d0b374;border-radius:20px;background:#fffaf1;color:#302017;box-shadow:0 24px 90px #170a0866;overflow:auto}.promotion-dialog::backdrop{background:#160b08a6;backdrop-filter:blur(3px)}.promotion-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px}.promotion-heading small{font:600 8px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:1.4px;color:#a6813b}.promotion-heading h2{font:italic 500 28px/1.2 'Playfair Display',Georgia,serif;letter-spacing:-.5px;margin:6px 0 0}.promotion-close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;border:1px solid #e0d2b9;border-radius:50%;background:#fffdf7;color:#5a3826;font-size:28px;cursor:pointer}.promotion-banner{display:block;background:#f0e8d9}.promotion-banner img{display:block;width:100%;height:auto;max-height:60dvh;object-fit:contain}.promotion-footer{display:flex;justify-content:flex-end;align-items:center;gap:12px;flex-wrap:wrap;padding:15px 20px}.promotion-footer button,.promotion-footer a{min-height:44px;border-radius:8px;padding:11px 15px;font:500 12px/1.6 'DM Sans',Arial,sans-serif}.promotion-dismiss{border:1px solid #dfd1b9;background:transparent;color:#77593c}.promotion-footer a{background:#a60917;border:1px solid #a60917;color:#fff7e7}.promotion-close:hover,.promotion-dismiss:hover{background:#f1e7d6}.promotion-open{overflow:hidden}.promotion-dialog[open]{animation:promotion-appear .3s ease-out}@keyframes promotion-appear{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@media(max-width:600px){.promotion-dialog{width:94vw;border-radius:15px}.promotion-heading{padding:14px 16px}.promotion-heading h2{font-size:25px}.promotion-footer{padding:13px 16px}}@media(prefers-reduced-motion:reduce){.promotion-dialog[open]{animation:none}.promotion-dialog::backdrop{backdrop-filter:none}}
/* Compact contact cards and footer, with natural heights and readable controls. */
.restaurant #contact{padding-top:36px;padding-bottom:32px}
.restaurant #contact .contact-intro{margin-bottom:20px;gap:24px;align-items:end}
.restaurant #contact .contact-intro h2{margin:6px 0 0;line-height:1.15}
.restaurant #contact .contact-intro>p{margin:0;max-width:360px}
.restaurant #contact .contact-modern-grid{display:grid;grid-template-columns:1.15fr .9fr 1.15fr;gap:16px;align-items:stretch}
.restaurant #contact .contact-options{display:contents}
.restaurant #contact .visit-card{min-height:0;padding:22px;border-radius:14px;display:flex;flex-direction:column;justify-content:flex-start}
.restaurant #contact .visit-top{gap:12px}
.restaurant #contact .location-mark{width:32px;height:32px;flex-basis:32px}
.restaurant #contact .visit-body{margin:12px 0 14px}
.restaurant #contact .visit-city{margin-bottom:6px}
.restaurant #contact .visit-body h3{font-size:28px;line-height:1.2;margin-bottom:10px}
.restaurant #contact .visit-hours{margin:0}
.restaurant #contact .directions-button{margin-top:0;padding-top:10px;min-height:40px}
.restaurant #contact .directions-button span{width:28px;height:28px;font-size:17px}
.restaurant #contact .visit-watermark{display:none}
.restaurant #contact .reach-card{padding:20px 18px;grid-template-columns:32px minmax(0,1fr);gap:12px;border-radius:14px;align-content:start}
.restaurant #contact .reach-icon{width:32px;height:32px;border-radius:9px}
.restaurant #contact .reach-card h3{font-size:25px;line-height:1.2;margin:8px 0 14px}
.restaurant #contact .phone-links{grid-template-columns:1fr;gap:8px}
.restaurant #contact .phone-links a,.restaurant #contact .email-links a{padding:9px 10px;min-height:40px}
.restaurant #contact .email-links{gap:7px}
.restaurant #contact .contact-bottom{margin-top:16px;padding:14px 18px;min-height:0;gap:16px;border-radius:12px}
.restaurant .site-footer .footer-main{padding:22px 0 18px;gap:26px;grid-template-columns:.85fr 1fr 1.4fr;align-items:start}
.restaurant .site-footer .footer-main>.brand{padding-top:0}
.restaurant .site-footer .footer-main .brand-logo{width:58px;height:58px;flex-basis:58px}
.restaurant .site-footer .footer-main .contact-details{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.restaurant .site-footer .footer-main .contact-details:before{grid-column:1/-1;margin-bottom:2px}
.restaurant footer.site-footer .footer-main .contact-details>a.with-ui-icon,.restaurant footer.site-footer .footer-main .contact-details>span.with-ui-icon{min-height:40px;padding:8px 10px;gap:8px}
.restaurant .site-footer .footer-links:before{margin-bottom:2px}
@media(max-width:1050px){.restaurant #contact .contact-modern-grid{grid-template-columns:1fr 1fr}.restaurant #contact .visit-card{grid-column:1/-1}.restaurant #contact .visit-body{margin:8px 0 12px}.restaurant .site-footer .footer-main{grid-template-columns:.8fr 1fr;gap:20px}.restaurant .site-footer .footer-main>.brand{grid-column:auto}.restaurant .site-footer .footer-main .contact-details{grid-column:1/-1}}
@media(max-width:600px){.restaurant #contact{padding-top:26px;padding-bottom:24px}.restaurant #contact .contact-intro{display:block;margin-bottom:16px}.restaurant #contact .contact-intro>p{margin-top:12px}.restaurant #contact .contact-modern-grid{grid-template-columns:1fr;gap:12px}.restaurant #contact .visit-card{grid-column:auto;padding:18px}.restaurant #contact .reach-card{padding:17px;gap:10px}.restaurant #contact .contact-bottom{padding:14px;flex-wrap:wrap}.restaurant .site-footer .footer-main{grid-template-columns:1fr;gap:18px;padding:22px 0 18px}.restaurant .site-footer .footer-main>.brand{grid-column:auto}.restaurant .site-footer .footer-main .contact-details{grid-column:auto;grid-template-columns:1fr 1fr}.restaurant footer.site-footer .footer-main .contact-details>a.with-ui-icon,.restaurant footer.site-footer .footer-main .contact-details>span.with-ui-icon{min-height:44px}.restaurant .site-footer .footer-main .footer-links>a{min-height:44px}}
@media(max-width:380px){.restaurant .site-footer .footer-main .contact-details{grid-template-columns:1fr}}

.restaurant #contact .contact-intro h2{font-size:clamp(32px,3.2vw,42px)}.restaurant #gallery{padding-bottom:24px}
.restaurant .food-grid .add-dish{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:auto;min-height:40px;margin-top:9px;padding:8px 18px;border:2px solid #b98929;border-radius:999px;background:#19120d;color:#d5aa43;font-family:inherit;font-size:14px;font-weight:700;line-height:1.2;cursor:pointer;transition:background .18s ease,color .18s ease}.restaurant .food-grid .add-dish span{font-size:inherit}.restaurant .food-grid .add-dish svg{width:19px;height:19px;flex:none}.restaurant .food-grid .add-dish:hover{background:#d5aa43;color:#19120d}.restaurant .food-grid .add-dish:focus-visible{outline:3px solid #d5aa43;outline-offset:3px}
.restaurant #menu .food-grid .dish-card-details .add-dish{display:inline-flex;align-self:flex-start;align-items:center;justify-content:center;gap:8px;width:fit-content;max-width:100%;min-height:40px;margin:8px 0 2px;padding:9px 18px;border:1.5px solid #c69c3e;border-radius:999px;background:#1c1510;color:#dfb650;font-size:13px;font-weight:700;line-height:1.2;box-shadow:0 2px 5px #29180c12}.restaurant #menu .food-grid .dish-card-details .add-dish>span{margin:0;font-size:inherit;line-height:inherit;flex:0 0 auto}.restaurant #menu .food-grid .dish-card-details .add-dish>svg{display:block;width:18px;height:18px;margin:0;flex:0 0 18px}.restaurant #menu .food-grid .dish-card-details .add-dish:hover{background:#dfb650;color:#1c1510;border-color:#dfb650}.restaurant #menu .food-grid .dish-card-details .add-dish:hover>span,.restaurant #menu .food-grid .dish-card-details .add-dish:hover>svg{transform:none}@media(pointer:coarse){.restaurant #menu .food-grid .dish-card-details .add-dish{min-height:44px}}
/* Readable dish item chooser typography. */
.restaurant .dish-dialog .dish-dialog-head h2{font-size:36px}.restaurant .dish-dialog .dish-dialog-head p:last-child{font-size:14px}.restaurant .dish-dialog .variety-table-heading{font-size:12px}.restaurant .dish-dialog .variety-name{font-size:17px;line-height:1.5}.restaurant .dish-dialog .variety-prices{font-size:15px}.restaurant .dish-dialog .variant-add,.restaurant .dish-dialog .dish-dialog-foot .button{font-size:13px;padding:11px 18px;min-height:44px}.restaurant .dish-dialog .portion-switch button{font-size:12px}.restaurant .dish-dialog .dish-dialog-foot p{font-size:14px}@media(max-width:720px){.restaurant .dish-dialog .dish-dialog-head h2{font-size:30px}.restaurant .dish-dialog .variety-name{font-size:16px}.restaurant .dish-dialog .variety-prices{font-size:14px}.restaurant .dish-dialog .dish-dialog-head p:last-child{font-size:13px}}
.restaurant .dish-dialog .variant-add.item-added,.restaurant .dish-dialog .variant-add.item-added:hover{background:#ad0c21;color:#fff;border-color:#d4ad45;box-shadow:0 2px 7px #ad0c2126}
.restaurant .dish-dialog .variant-add{min-width:120px;justify-content:center;white-space:nowrap}
.confirmation-page>.panel>p{margin-top:12px;margin-bottom:12px;font-size:14px;line-height:1.6}.confirmation-page .confirmation-items{margin-top:16px}.confirmation-page .confirmation-items>p{margin:0;padding:10px 0;font-size:14px;line-height:1.6}.confirmation-page>.panel>.order-total,.confirmation-page .confirmation-total-line,.confirmation-page .order-charge-lines>p{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin:12px 0;font-size:15px;font-weight:700;line-height:1.6}.confirmation-page .order-total strong,.confirmation-page .confirmation-total-line strong,.confirmation-page .order-charge-lines>p span{font-size:inherit;font-weight:700;white-space:nowrap}.confirmation-page .confirmation-actions{margin-top:20px;gap:12px}
.customer-actions>a.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;box-sizing:border-box;min-height:46px;padding:11px 19px;border-radius:12px;font-family:inherit;font-size:14px;font-weight:650;line-height:1.3;text-decoration:none;white-space:nowrap;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.customer-actions>a.button[href="./#menu"]{background:#a90e23;border:1px solid #a90e23;color:#fff;box-shadow:0 3px 8px #a90e2319}.customer-actions>a.button[href="customer-profile.php"]{background:#fffdf8;border:1px solid #d6c3a1;color:#70512b;box-shadow:0 2px 5px #62471e08}.customer-actions>a.button .app-icon{width:18px;height:18px;flex:none}.customer-actions>a.button[href="./#menu"]:hover{background:#8d0b1d;border-color:#8d0b1d;box-shadow:0 5px 12px #a90e2326}.customer-actions>a.button[href="customer-profile.php"]:hover{background:#f4ead9;border-color:#bfa16b;box-shadow:0 4px 10px #62471e14}.customer-actions>a.button:focus-visible{outline:3px solid #d0ad60;outline-offset:3px}.customer-actions>a.button:active{transform:translateY(1px)}.customer-actions{gap:10px}@media(max-width:480px){.customer-actions>a.button{flex:1;min-height:46px;padding:11px 15px}}

/* Compact customer order header, keeping the order list close at hand. */
.customer-orders-page .customer-orders{padding-top:12px}
.customer-orders-page .customer-topbar{padding:0 0 10px;gap:12px}
.customer-orders-page .customer-brand{gap:11px}
.customer-orders-page .customer-brand img{width:46px;height:46px;flex-basis:46px;padding:2px;box-shadow:0 0 0 2px #e9dfc8}
.customer-orders-page .customer-brand strong{font-size:27px;line-height:1.1;letter-spacing:-.5px}
.customer-orders-page .customer-brand small{margin-top:4px;font-size:7px;line-height:1.2;letter-spacing:1.4px}
.customer-orders-page .customer-area-tag{font-size:8px;letter-spacing:1.4px}
.customer-orders-page .customer-page-heading{padding:12px 0;gap:12px;flex-wrap:nowrap}
.customer-orders-page .customer-order-identity{display:grid;grid-template-columns:32px minmax(0,1fr);column-gap:10px;align-items:center;min-width:0}
.customer-orders-page .customer-order-identity>.profile-avatar-small{grid-column:1;grid-row:1/3;width:32px;height:32px;min-width:32px;margin:0;font-size:17px}
.customer-orders-page .customer-order-identity .customer-greeting{grid-column:2;margin:0 0 2px;font-size:12px;line-height:1.25}
.customer-orders-page .customer-order-identity h1{grid-column:2;font-size:30px;line-height:1.1;margin:0}
.customer-orders-page .customer-actions{gap:7px;flex-wrap:nowrap}
.customer-orders-page .customer-actions>a.button{min-height:38px;padding:8px 12px;font-size:12px;border-radius:9px;gap:7px}
.customer-orders-page .customer-actions form button{min-height:38px;padding:8px;font-size:12px;white-space:nowrap}
.customer-orders-page .customer-filter-panel{padding:9px 12px;margin-bottom:12px;gap:10px}
@media(max-width:600px){.customer-orders-page .customer-orders{padding:10px 12px 30px}.customer-orders-page .customer-area-tag{display:none}.customer-orders-page .customer-brand img{width:40px;height:40px;flex-basis:40px}.customer-orders-page .customer-brand strong{font-size:25px}.customer-orders-page .customer-page-heading{flex-wrap:wrap;gap:10px;padding:10px 0}.customer-orders-page .customer-order-identity h1{font-size:27px}.customer-orders-page .customer-actions{width:100%;gap:6px}.customer-orders-page .customer-actions>a.button{flex:1;min-height:40px;padding:8px 10px}.customer-orders-page .customer-actions form button{min-height:40px}.customer-orders-page .customer-filter-panel{border-radius:10px}}

#shop-closures:empty{display:none}.shop-closure-notice{display:flex;align-items:center;justify-content:center;gap:8px 16px;flex-wrap:wrap;padding:10px 18px;background:#fff1dc;color:#74451e;border-bottom:1px solid #e3c18d;font:13px/1.4 Arial,sans-serif;text-align:center}.shop-closure-notice.is-current{background:#f9e8e9;color:#94182b;border-color:#e3b6bc}.shop-closure-notice span{font-size:12px}

.closure-dialog{box-sizing:border-box;width:min(92vw,480px);max-height:85vh;max-height:85dvh;padding:22px;border:1px solid #d1ad60;border-radius:18px;background:#fffaf1;color:#38271c;box-shadow:0 20px 70px #23130c40}.closure-dialog::backdrop{background:#24140fc2;backdrop-filter:blur(3px)}.closure-popup-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:15px}.closure-popup-heading small{font:10px/1.4 Arial,sans-serif;text-transform:uppercase;letter-spacing:1.5px;color:#9b783d}.closure-popup-heading h2{font:italic 28px/1.2 Georgia,serif;margin:6px 0 0;letter-spacing:-.5px}.closure-popup-heading button{width:36px;height:36px;flex:0 0 36px;border:1px solid #dfceb0;background:#fffdf8;border-radius:50%;font-size:25px;color:#78583b;cursor:pointer}.closure-popup-card{padding:14px;margin:10px 0;border:1px solid #e4c6a0;border-radius:11px;background:#fff4e3}.closure-popup-card>span{font:600 11px Arial,sans-serif;letter-spacing:.4px;text-transform:uppercase;color:#a5162c}.closure-popup-card h3{font:500 22px/1.25 Georgia,serif;margin:8px 0}.closure-popup-card p{font:14px/1.45 Arial,sans-serif;margin:8px 0;color:#765c41}.closure-popup-card small{display:block;font:600 13px/1.4 Arial,sans-serif;color:#346448}.closure-popup-continue{width:100%;min-height:44px;margin-top:10px;padding:10px 16px;border:1px solid #a20d1b;border-radius:9px;background:#a20d1b;color:#fff;font:600 13px Arial,sans-serif;cursor:pointer}@media(max-width:480px){.closure-dialog{padding:17px}.closure-popup-heading h2{font-size:25px}.closure-popup-card h3{font-size:20px}}@media print{.closure-dialog{display:none!important}}
