:root{--brown:#351B08;--gold:#D69A18;--sand:#CDB98B;--cream:#F7F1E6;--text:#292018}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--cream);color:var(--text);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.7}h1,h2,h3,.footer-brand,.brand>span{font-family:'Cormorant Garamond',Georgia,serif;line-height:1.05;font-weight:500}h1{font-size:clamp(3.2rem,5.2vw,5.6rem);margin:24px 0}h2{font-size:clamp(2.8rem,4vw,4.2rem);margin:12px 0 30px}h3{font-size:2.5rem;margin:0 0 20px}p{margin:0 0 20px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #C7602D;outline-offset:4px}.skip{position:fixed;top:-100px;background:white;padding:16px;z-index:100}.skip:focus{top:0}header{padding:16px 5%;display:flex;gap:24px;align-items:center;justify-content:space-between;background:var(--cream);position:sticky;top:0;z-index:10;border-bottom:1px solid #351b0815}.brand{display:flex;gap:12px;align-items:center}.brand img{width:62px;border-radius:50%}.brand>span{font-size:2.5rem}.brand small{font:600 .65rem Manrope,sans-serif;letter-spacing:1.4px;display:block;margin-top:7px}nav{display:flex;gap:32px;font-size:.9rem}nav a:hover,.text-link:hover{color:#8b480c}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--brown);color:var(--cream);padding:14px 27px;border:1px solid var(--brown);font-weight:700;font-size:.9rem;border-radius:3px;min-height:48px}.button:hover{filter:brightness(1.14)}.button.small{padding:10px 23px}.button.gold{background:var(--gold);color:var(--brown);border-color:var(--gold)}.button.outline{background:transparent;border-color:var(--sand);color:var(--cream)}.hero{display:grid;grid-template-columns:1.05fr 1fr;background:var(--brown);color:var(--cream);min-height:650px}.hero-copy{padding:75px 9% 40px 10%}.eyebrow{font-size:.8rem;letter-spacing:2px;font-weight:700;color:#865014}.hero .eyebrow,.royal .eyebrow{color:var(--sand)}h1 em{color:var(--sand);font-weight:400}.hero-copy>p:not(.eyebrow){max-width:460px;color:#e3d5bd}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin:26px 0}.text-link{display:inline-block;border-bottom:1px solid currentColor;font-size:.9rem;font-weight:600}.hero-note{margin-top:50px;font-size:.8rem;letter-spacing:.5px;color:var(--sand)}.hero-note span{display:block}.hero-image{position:relative;overflow:hidden}.hero-image>img{width:100%;height:100%;object-fit:cover}.image-caption{position:absolute;bottom:0;width:100%;padding:35px;background:linear-gradient(transparent,#351b08d9);font-family:'Cormorant Garamond',serif;font-size:1.8rem}.section{padding:85px 7%;max-width:1500px;margin:auto}.intro{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;align-items:center;border-bottom:1px solid #351b0825}.intro>div:last-child{max-width:620px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:30px}.section-heading>p{font-size:.9rem;color:#695d4f}.categories{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 34px}.categories button{border:1px solid #351b0835;background:transparent;color:var(--brown);padding:12px 23px;border-radius:2px;font-size:.9rem}.categories button[aria-pressed=true]{background:var(--brown);color:var(--cream)}.menu-items{display:grid;grid-template-columns:1fr 1fr;gap:0 60px}.dish{display:grid;grid-template-columns:1fr auto;gap:15px;padding:25px 0;border-bottom:1px solid #351b0828}.dish h3{font-size:1.8rem;margin:0 0 10px}.dish p{font-size:.9rem;color:#695d4f;margin:0;max-width:440px}.dish-price{font-weight:700;white-space:nowrap}.add{display:block;margin-top:15px;border:1px solid #351b0830;background:transparent;padding:6px 12px;min-height:44px;color:var(--brown);font-size:.85rem}.add:hover{background:var(--sand)}.originals{margin-top:30px;font-size:.9rem}.originals summary{cursor:pointer}.originals div{display:flex;flex-wrap:wrap;gap:20px;padding:20px 0}.originals a{text-decoration:underline}.royal{display:grid;grid-template-columns:1fr 1fr;background:var(--brown);color:var(--cream)}.royal>img{width:100%;height:100%;max-height:560px;object-fit:cover}.royal>div{padding:60px 13%}.royal-price{font-family:'Cormorant Garamond',serif;font-size:3rem;color:var(--gold);margin-top:-10px}.royal>div>p:not(.eyebrow):not(.royal-price){font-size:.95rem}.gallery{display:grid;grid-template-columns:1.1fr 1fr .9fr;gap:18px}.gallery button{border:0;padding:0;background:transparent;overflow:hidden;border-radius:3px}.gallery img{display:block;width:100%;height:310px;object-fit:cover;transition:transform .3s}.gallery button:hover img{transform:scale(1.04)}.forms{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:#efe5d3;max-width:none}.forms>div{min-width:0;scroll-margin-top:110px}.forms h2{font-size:3rem}.demo{font-size:.9rem;color:#665340;border-left:3px solid var(--gold);padding-left:14px}form{margin-top:24px}label{display:block;font-size:.9rem;font-weight:600;margin:15px 0}input,select,textarea{display:block;width:100%;background:var(--cream);border:1px solid #351b0840;padding:12px;border-radius:3px;color:var(--text);min-height:48px}textarea{resize:vertical}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-result{margin:20px 0 0}.form-result:not(:empty){padding:20px;background:var(--cream);border:1px solid var(--sand)}.basket-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;border-bottom:1px solid #351b0830;padding:12px 0;font-size:.9rem}.basket-row>span{flex:1;min-width:140px}.basket-row button{min-width:40px;min-height:40px;border:1px solid #351b0830;background:var(--cream)}.total{font-weight:700;padding:16px 0}.visit{display:grid;grid-template-columns:1fr 1fr;gap:8%}address{font-style:normal}.phone{font-size:1.5rem;display:block;margin-top:22px}.email{font-size:.9rem}.email small{display:block;color:#695d4f;margin-top:6px}table{width:100%;border-collapse:collapse;font-size:.9rem;margin:30px 0}td,th{padding:13px 7px;text-align:left;border-bottom:1px solid #351b0820;white-space:nowrap}thead{color:#695d4f;font-size:.8rem}footer{background:var(--brown);color:var(--cream);padding:45px 7%;display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-brand{font-size:3rem}.footer-brand small{display:block;font:400 .8rem Manrope,sans-serif;margin-top:10px}footer>p{font-size:.8rem;margin:0}.socials{display:flex;flex-wrap:wrap;gap:15px;align-items:center}.socials>span{font-size:1.3rem}.socials span span,.socials small{font-size:.75rem}.mobile-actions{display:none}dialog{padding:15px;border:0;max-width:95vw;background:var(--cream);border-radius:4px}dialog::backdrop{background:#170c08de}dialog img{display:block;max-width:85vw;max-height:80vh;object-fit:contain}.close{display:block;margin:0 0 12px auto;background:var(--brown);color:white;border:0;padding:12px 18px}@media(max-width:900px){nav{gap:15px}.brand small{display:none}.hero{min-height:570px}.hero-copy{padding:55px 8%}.hero-note{margin-top:30px}.section{padding:65px 6%}.royal>div{padding:40px 9%}.gallery img{height:230px}.forms{gap:5%}footer{flex-wrap:wrap}}@media(max-width:640px){html{scroll-padding-top:85px}header{padding:10px 5%;gap:10px}.brand img{width:48px}.brand>span{font-size:2rem}header nav{display:none}.button.small{padding:9px 18px}.hero{display:flex;flex-direction:column}.hero-copy{padding:40px 6% 30px}.hero h1{font-size:3.25rem}.hero-image{height:300px}.hero-note{margin-top:24px}.image-caption{font-size:1.6rem;padding:25px}.intro,.royal,.forms,.visit{grid-template-columns:1fr}.intro{gap:15px}.section{padding:48px 6%}.section-heading{display:block}.section-heading>p{margin-top:-10px}.menu-items{grid-template-columns:1fr}.categories{gap:7px}.categories button{padding:10px 14px}.dish{padding:22px 0}.royal>img{height:300px}.royal>div{padding:40px 6%}.gallery{grid-template-columns:1fr 1fr;gap:10px}.gallery button:first-child{grid-column:1/-1}.gallery img{height:190px}.gallery button:first-child img{height:260px}.forms{gap:50px}.forms h2{font-size:2.8rem}.visit{gap:40px}td,th{font-size:.8rem;padding:12px 3px}footer{padding:35px 6% 110px;display:block}footer>p{margin:25px 0}.mobile-actions{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr 1fr;background:var(--brown);border-top:1px solid var(--sand);z-index:20;padding-bottom:env(safe-area-inset-bottom)}.mobile-actions a{text-align:center;padding:16px 3px;color:var(--cream);font-size:.85rem;font-weight:700}.mobile-actions a:first-child{background:var(--gold);color:var(--brown)}.fields{gap:10px}.forms>div{scroll-margin-top:90px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gallery img{transition:none}}

.selection-link{margin-top:28px;gap:10px}.selection-link[hidden]{display:none}

/* Consistent, aligned numerals across prices and practical information. */
.dish-price,.royal-price,.basket-row,.total,#selection-count,.phone,table,input,select{font-family:Manrope,Arial,sans-serif;font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1}
.dish-price,.royal-price{font-weight:600;font-style:normal;letter-spacing:0}

/* Gold Banoo wordmark, sized for desktop and mobile headers. */
.brand img{display:block;width:165px;height:auto;border-radius:0}
@media(max-width:640px){.brand img{width:130px}}

.brand{gap:10px;flex-shrink:0}.brand .brand-bowl{width:57px;height:72px;object-fit:contain}.brand .brand-wordmark{width:140px;height:auto}
@media(max-width:640px){.brand{gap:6px}.brand .brand-bowl{width:39px;height:50px}.brand .brand-wordmark{width:100px}}

.reservation-section{grid-template-columns:.8fr 1.2fr;align-items:start;scroll-margin-top:110px}.reservation-section form{margin:0}.reservation-intro{max-width:470px}.reservation-food{min-width:0;margin:28px 0;padding:24px;border:1px solid #351b0830;border-radius:3px;background:#f7f1e680}.reservation-food legend{padding:0 8px;font-weight:700;font-size:1.1rem}.reservation-food legend span{font-size:.75rem;font-weight:400;margin-left:10px;color:#695d4f}.reservation-food>p{font-size:.9rem}.food-picker{display:flex;align-items:stretch;gap:10px}.food-picker select{flex:1;min-width:0}.food-picker .button{padding:12px 18px}.button:disabled{opacity:.45;cursor:not-allowed}.reservation-food .total{font-size:.9rem;margin-bottom:0}.reservation-food .basket-row>span{min-width:100%;flex-basis:100%}
@media(max-width:900px){.reservation-section{grid-template-columns:1fr;gap:30px}.reservation-intro{max-width:650px}}
@media(max-width:640px){.reservation-food{padding:16px}.food-picker{flex-wrap:wrap}.food-picker select{flex-basis:100%}.food-picker .button{width:100%}.mobile-actions a:first-child{background:var(--brown);color:var(--cream)}.mobile-actions a:nth-child(2){background:var(--gold);color:var(--brown)}}

.location-map{grid-column:1/-1;margin-top:35px;min-width:0}.map-caption{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}.map-caption h3{font-size:2rem;margin:0 0 12px}.map-caption p:last-child{margin:0;font-size:.9rem}.map-caption .eyebrow{margin-bottom:10px}.map-caption>a{flex-shrink:0}.location-map iframe{display:block;width:100%;height:420px;border:1px solid #351b0825;border-radius:4px;background:var(--sand)}.socials .tiktok-link{display:flex;gap:9px;align-items:center;padding:8px 0}.tiktok-link>span{font-size:.9rem;font-weight:600}.tiktok-link small{display:block;color:var(--sand);font-weight:400}.socials .social-pending{font-size:.75rem;color:var(--sand)}.tiktok-link:hover{color:var(--gold)}
@media(max-width:640px){.location-map{margin-top:0}.map-caption{display:block}.map-caption>a{margin-top:18px}.location-map iframe{height:320px}.socials{align-items:flex-start;flex-direction:column;gap:8px}}

.visit{column-gap:8%;row-gap:40px}


/* Shared page navigation, including visible navigation on phones. */
header nav{display:flex;gap:24px}header nav a{display:flex;align-items:center;gap:7px;white-space:nowrap;min-height:44px}header nav svg{flex-shrink:0}header nav a[aria-current="page"]{color:#865014}header nav a[aria-current="page"] span{border-bottom:1px solid currentColor}.gallery-more{margin-top:28px}
.page-intro{text-align:center;padding-top:76px;padding-bottom:50px;border-bottom:1px solid #351b0820}.page-intro h1{color:var(--brown);margin:20px 0}.page-intro>p:last-child{max-width:610px;margin:0 auto;color:#695d4f}.photo-collection{display:grid;grid-template-columns:1fr 1fr;gap:40px 24px;padding-top:45px}.photo-collection figure{margin:0;min-width:0}.photo-collection button{display:block;width:100%;padding:0;border:0;background:var(--sand);border-radius:4px;overflow:hidden}.photo-collection img{display:block;width:100%;height:430px;object-fit:cover;transition:transform .3s}.photo-collection button:hover img{transform:scale(1.025)}.photo-collection figcaption{padding-top:15px;font-size:.9rem}.photo-collection figcaption span{color:#865014;margin-right:12px;font-variant-numeric:tabular-nums}.photo-wide{grid-column:1/-1}.photo-collection .photo-wide img{height:auto;max-height:590px}.page-callout{text-align:center;background:#efe5d3;max-width:none}.page-callout h2{font-size:clamp(2.4rem,4vw,3.5rem)}.events-section{padding-top:45px;padding-bottom:60px}.events-empty{text-align:center;border:1px solid #351b0825;background:#efe5d3;padding:55px 30px;border-radius:4px}.event-icon{color:#865014;margin-bottom:24px}.event-icon svg{width:42px;height:42px}.events-empty h2{font-size:clamp(2.3rem,3.5vw,3.5rem)}.events-empty>p:not(.eyebrow){color:#695d4f}.event-contact{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-top:1px solid #351b0820;align-items:center}.event-contact h2{font-size:3rem}
@media(max-width:1100px){header{flex-wrap:wrap;gap:6px 18px}header nav{order:3;width:100%;justify-content:center;gap:30px;border-top:1px solid #351b0815;padding-top:6px}html{scroll-padding-top:170px}}
@media(max-width:640px){header{padding:8px 5% 4px}header nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}header nav a{min-width:0;flex-direction:column;justify-content:center;gap:3px;font-size:.65rem;line-height:1.3;padding:5px 0;white-space:normal;text-align:center}header nav svg{width:19px;height:19px}html{scroll-padding-top:140px}.page-intro{padding-top:38px;padding-bottom:35px}.page-intro h1{font-size:3.1rem}.photo-collection{grid-template-columns:1fr;gap:28px;padding-top:30px}.photo-collection img{height:auto;max-height:420px}.photo-wide{grid-column:auto}.photo-collection .photo-wide img{min-height:210px;object-fit:cover}.events-empty{padding:36px 18px}.events-empty h2 br{display:none}.event-contact{grid-template-columns:1fr;gap:12px}.event-contact h2{font-size:2.7rem}}
@media(prefers-reduced-motion:reduce){.photo-collection img{transition:none}}

.hero h1 em{color:#E8BC63}
.preview-banner{padding:14px 24px;background:#351b08;color:#fff;text-align:center;font:500 14px Manrope,sans-serif}.event-card{border-top:1px solid #cdb98b;padding:35px 0;max-width:900px;margin:auto}.event-card img{max-height:480px;width:100%;object-fit:cover;margin-bottom:25px}.event-card p{white-space:pre-line}.socials{flex-wrap:wrap}button:disabled{cursor:not-allowed;opacity:.55}
[hidden]{display:none!important}

/* Keep native date inputs and select menus aligned across browsers. */
#reservation-form input,#reservation-form select{height:54px;min-height:54px;min-width:0;line-height:1.5}
#reservation-form .fields>label{min-width:0}

/* Readable legal information, in the same warm Banoo identity. */
footer{flex-wrap:wrap}
footer .footer-legal{display:flex;flex-basis:100%;flex-wrap:wrap;gap:12px 28px;border-top:1px solid #cdb98b55;padding-top:22px;font-size:.8rem}
footer .footer-legal a{color:var(--cream);padding:7px 0;text-decoration:underline;text-underline-offset:4px}
.legal-page{max-width:1060px;margin:auto;padding:65px 6% 85px}
.legal-heading h1{font-size:clamp(2.6rem,6vw,4.5rem);overflow-wrap:anywhere;margin:12px 0 18px}
.legal-heading>p{max-width:650px}
.legal-small{font-size:.85rem;color:#6c5d4d}
.legal-page .legal-nav{display:flex;flex-wrap:wrap;gap:10px 25px;margin:28px 0}
.legal-nav a{font-size:.85rem;padding:8px 0;border-bottom:1px solid #cdb98b}
.legal-nav a[aria-current=page]{font-weight:700;border-color:var(--brown)}
.legal-notice{padding:20px 24px;background:#eee1c7;border-left:3px solid var(--gold);font-size:.9rem;margin:30px 0 45px}
.legal-notice p{margin:8px 0 0}
.legal-content{max-width:780px}
.legal-content section{margin-bottom:40px}
.legal-content h2{font-size:clamp(1.8rem,4vw,2.3rem);margin:0 0 18px}
.legal-content p{margin:0 0 16px}
.legal-content a,.reservation-legal a{text-decoration:underline;text-underline-offset:4px}
.legal-callout{padding:22px;background:#eee5d5;margin:22px 0}
.legal-callout p{margin:8px 0 0}
.legal-pending{color:#795319;font-weight:600}
.legal-facts{margin:0 0 22px}
.legal-facts>div{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,2fr);gap:14px;border-bottom:1px solid #351b0820;padding:14px 0}
.legal-facts dt{font-weight:600;font-size:.9rem}
.legal-facts dd{margin:0;overflow-wrap:anywhere}
.legal-content code{font-size:.85em;overflow-wrap:anywhere}
.reservation-legal{font-size:.8rem;line-height:1.7;margin:12px 0 22px;max-width:65ch}
@media(max-width:640px){.legal-page{padding:38px 6% 55px}.legal-page .legal-nav{gap:4px 18px}.legal-facts>div{grid-template-columns:1fr;gap:5px}.legal-notice{padding:17px}.legal-content section{margin-bottom:32px}footer .footer-legal{margin-top:26px;gap:8px 20px}}
