:root{--cream:#fff1d1;--gold:#ff9100;--ink:#2d2416;--muted:#77776b;--dark:#1e140b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;color:var(--ink);background:var(--cream);font-family:'Poppins',Arial,sans-serif;font-size:14px;line-height:1.65}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;line-height:1.18}h2{font-size:34px;letter-spacing:-.7px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #c18b2f;outline-offset:5px}img{display:block;width:100%;object-fit:cover}button{color:inherit}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.wrap{max-width:1320px;width:88%;margin:auto}.header{height:96px;width:88%;max-width:1320px;position:absolute;z-index:10;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:space-between;color:#fff;gap:30px}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap}.brand-icon{width:53px;height:53px;fill:none;stroke:var(--gold);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transform:rotate(-10deg)}.brand>span{font-size:26px;line-height:1.2;letter-spacing:-.7px}.brand small{display:block;font-size:8px;letter-spacing:2.6px;margin-top:5px;color:#ddd5b5}.header nav{display:flex;gap:27px;align-items:center;font-size:12px}.header nav a{padding:8px 0;position:relative}.header nav a:hover,.header nav a.active{color:var(--gold)}.header nav a.active:after{content:'';position:absolute;bottom:0;height:1px;background:var(--gold);left:0;right:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:14px 27px;min-height:46px;border-radius:30px;background:var(--gold);color:#2b291a;border:1px solid var(--gold);font-size:12px;font-weight:700;transition:background .2s,transform .2s;white-space:nowrap}.button:hover{background:#ffe4a1;transform:translateY(-2px)}.button.small{font-size:11px;padding:11px 24px;min-height:40px;gap:10px}.nav-toggle{display:none}.hero{height:660px;min-height:600px;background:#20190d url('assets/feast-hero.webp') center 54%/cover no-repeat;position:relative;color:#fff;display:flex;align-items:center}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#130906b3 0%,#11080666 35%,transparent 66%),linear-gradient(#0d050255,transparent 28%,transparent 80%,#11080680)}.hero-inner{position:relative;width:78%;max-width:1170px;margin:auto;padding-top:35px}.eyebrow{font-size:11px;letter-spacing:3px;color:var(--gold);font-weight:600;margin-bottom:12px}.hero h1{font-size:clamp(44px,4.7vw,72px);letter-spacing:-1.7px;font-weight:600;line-height:1.11}.hero h1 span{color:var(--gold)}.hero-description{font-size:15px;line-height:1.8;margin:23px 0 25px;color:#e6e4dc}.hero-actions{display:flex;align-items:center;gap:28px}.watch-button{display:flex;align-items:center;gap:11px;border:0;background:none;color:#fff;font-size:12px;padding:0}.play{width:38px;height:38px;border:1px solid #dadbd0;border-radius:50%;display:grid;place-items:center;font-size:11px}.handwritten{font-family:'Great Vibes',cursive;font-size:30px;line-height:1.05;transform:rotate(-10deg)}.handwritten span{color:var(--gold)}.hero-note{position:absolute;right:5%;top:35%}.scroll-note{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);font-size:10px;display:flex;align-items:center;flex-direction:column;gap:6px}.scroll-note span{width:30px;height:30px;border:1px solid #b4af84;border-radius:50%;display:grid;place-items:center;font-size:17px}.cream{background:var(--cream);position:relative}.wave:before,.wave:after{content:'';position:absolute;left:0;width:100%;height:34px;background:var(--cream);z-index:2}.wave:before{top:-17px;border-radius:42% 55% 0 0/85% 85% 0 0;transform:rotate(-.6deg)}.wave:after{bottom:-17px;border-radius:0 0 52% 35%/0 0 85% 85%;transform:rotate(.5deg)}.section-title{text-align:center;position:relative;z-index:3}.section-title h2{font-size:30px}.section-title>p:not(.eyebrow){color:var(--muted);font-size:13px;margin-top:10px}.why{padding:35px 0 48px}.leaves{position:absolute;width:90px;height:115px;color:#709a4b;opacity:.7;pointer-events:none;z-index:3}.leaves.left{top:0;left:0;transform:rotate(70deg)}.leaves.right{top:0;right:0;transform:rotate(190deg);width:65px;height:85px}.leaves.bottom{top:auto;bottom:0}.benefits{display:grid;grid-template-columns:repeat(5,1fr);padding-top:30px;position:relative;z-index:3}.benefits article{text-align:center;padding:0 20px;border-right:1px solid #dedbcd}.benefits article:last-child{border:0}.icon{display:grid;place-items:center;width:66px;height:66px;border-radius:50%;background:#f9eccc;margin:0 auto 13px}.icon svg{width:36px;height:36px;fill:none;stroke:#a36625;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.benefits h3{font-family:'Poppins',sans-serif;font-size:12px;line-height:1.4;font-weight:700;min-height:34px}.benefits p{font-size:11px;color:var(--muted);line-height:1.5;margin-top:5px}.dark{background-color:var(--dark);color:#fff}.services{padding:78px 0 67px;background:linear-gradient(90deg,#1b100bea,#1f130adb),url('assets/feast-hero.webp') center/cover}.services-layout{display:grid;grid-template-columns:.95fr 2.05fr;gap:45px;align-items:center}.services h2{font-size:30px}.services-copy>p:not(.eyebrow){font-size:12px;line-height:1.8;color:#d2d3c6;margin:17px 0 26px}.service-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.service-card{border:1px solid #b09d5d75;border-radius:14px;overflow:hidden;background:#20170da8;transition:transform .25s,border-color .25s}.service-card:hover{transform:translateY(-8px);border-color:var(--gold)}.service-card img{height:172px;transition:transform .5s}.service-card:hover img{transform:scale(1.05)}.service-card>div{padding:13px 10px 8px}.service-card h3{font-family:'Poppins',sans-serif;font-size:11px;line-height:1.5}.service-card p{font-size:10px;line-height:1.6;color:#d1d1c3;margin-top:5px}.service-card span{display:block;color:var(--gold);margin-top:7px}.menu{padding:57px 0 50px}.menu-layout{display:grid;grid-template-columns:1.15fr 1.1fr .85fr;gap:37px;align-items:center;position:relative;z-index:3}.menu-feast{height:278px;border-radius:14px}.ink{color:#65663d;font-size:10px;letter-spacing:2px}.menu-copy h2{font-size:32px}.menu-copy>p:not(.eyebrow){font-size:12px;color:#6a6b5f;margin:16px 0 22px}.outline{background:transparent;border-color:#d3a34d}.outline:hover{background:#f9e8c3}.menu-categories{border-left:1px solid #dedacc;padding-left:25px;display:flex;flex-direction:column;gap:15px}.menu-categories button{border:0;background:transparent;display:flex;align-items:center;gap:13px;text-align:left;padding:0}.menu-categories img{width:56px;height:56px;border-radius:50%;border:2px solid #e5d7b6}.menu-categories b{display:block;font-size:12px}.menu-categories small{font-size:11px;color:var(--muted);display:block}.menu-categories i{margin-left:auto;font-style:normal;opacity:0;color:#b07b2a}.menu-categories button:hover i{opacity:1}.about{display:grid;grid-template-columns:1.05fr 1.05fr .7fr;position:relative;min-height:330px;align-items:center;background:linear-gradient(90deg,#1e130966,#1e1309e8),url('assets/feast-hero.webp') center/cover}.about-photo{height:330px;position:relative}.about-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,#1e1309)}.about-photo img{height:100%;object-position:center}.about-copy{padding:35px 35px 35px 10px;max-width:470px}.about-copy p:not(.eyebrow){font-size:12px;line-height:1.8;color:#deded3;margin:13px 0 20px}.story-note{text-align:center;font-size:36px}.gallery{padding:48px 0 35px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}.gallery-grid button{padding:0;border:0;background:#21150b;border-radius:12px;overflow:hidden;position:relative;text-align:left}.gallery-grid img{height:208px;transition:transform .4s}.gallery-grid button:hover img{transform:scale(1.06);opacity:.75}.gallery-grid span{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000c);padding:30px 17px 16px;color:#fff;font-size:12px}.testimonials{padding:25px 0 43px;position:relative}.testimonial-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:28px}.testimonial-cards article{background:#fff9;border:1px solid #e6e0d0;border-radius:9px;padding:24px 26px 21px;position:relative}.testimonial-cards h3{font-size:19px;margin-bottom:10px}.testimonial-cards p{font-size:12px;color:#727266;line-height:1.7;max-width:90%}.quote-mark{position:absolute;right:20px;top:8px;font-size:58px;color:#e9d6a3;font-family:Georgia,serif;line-height:1}.stars{display:block;color:#cca04a;font-size:13px;margin:14px 0 7px}.testimonial-cards small{font-size:8px;letter-spacing:1.4px;color:#76775f}.testimonial-note{font-size:10px;text-align:center;color:#8e8b79;margin-top:20px}.contact{padding:75px 0;background:linear-gradient(90deg,#1b100bea,#1f130aeb),url('assets/feast-hero.webp') center/cover}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.contact h2{font-size:46px}.contact-layout>div>p:not(.eyebrow){font-size:13px;color:#c7c8b8;margin-top:20px}.phone{display:block;color:var(--gold);font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;margin:25px 0 15px}.contact address{font-size:12px;font-style:normal;color:#d4d4c6}.hours{font-size:11px!important;margin:14px 0!important}.map-link{font-size:12px;color:var(--gold);border-bottom:1px solid #c7ad62;padding-bottom:5px}form{background:var(--cream);color:var(--ink);padding:30px 34px;border-radius:15px}form h3{font-size:28px}form>p{font-size:12px;color:var(--muted);margin:6px 0 20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}label{display:flex;flex-direction:column;font-size:10px;gap:5px;font-weight:600;margin-bottom:15px}input,select,textarea{border:1px solid #d9d6c7;background:#fff9;color:#414638;border-radius:6px;padding:10px;font-size:12px;min-width:0;width:100%;outline-color:#ff9100}textarea{resize:vertical}.form-note{display:block;font-size:10px;color:var(--muted);margin-top:11px}#brief-result{margin-top:20px;border-top:1px solid #dad5c1;padding-top:20px}pre{font:11px/1.8 'Poppins',sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;margin:14px 0}#brief-result .button{font-size:10px;padding:9px 15px;min-height:35px}#copy-status{font-size:11px;margin-top:10px}footer{padding:30px 6%;background:#1a100a;color:#dddacc;display:flex;align-items:center;gap:30px;border-top:1px solid #bbae6a20}footer .brand-icon{width:37px;height:37px}footer .brand>span{font-size:21px}footer .brand small{font-size:6px}footer>p{font-size:11px}footer>small{margin-left:auto;font-size:9px;color:#a7ab95}footer>a:last-child{font-size:10px;color:var(--gold)}dialog{border:1px solid #d7c89b;border-radius:18px;padding:40px;color:var(--ink);background:var(--cream);width:min(850px,92vw);max-height:88vh;box-shadow:0 25px 100px #0008}dialog::backdrop{background:#120807c9;backdrop-filter:blur(6px)}.close-dialog{position:absolute;right:15px;top:10px;background:none;border:0;font-size:30px;color:#827650;line-height:1}.dialog-intro{color:var(--muted);font-size:12px;margin:14px 0 22px}.menu-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.menu-filters button{border:1px solid #dacda8;border-radius:20px;background:transparent;padding:7px 15px;font-size:11px}.menu-filters button.selected{background:var(--gold);border-color:var(--gold)}#menu-items{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:25px}.menu-item{display:flex;align-items:center;gap:15px;border-bottom:1px solid #e5dfcc;padding-bottom:16px}.menu-item img{width:76px;height:76px;border-radius:9px}.menu-item h3{font-size:16px}.menu-item p{font-size:11px;color:var(--muted);margin-top:6px}#photo-dialog{width:min(1000px,94vw);padding:15px;background:#1d110a;color:#fff;border-color:#5e6244}#photo-dialog img{max-height:73vh;object-fit:contain}#photo-dialog .close-dialog{color:#fff;background:#111a;border-radius:50%;width:34px;top:22px;right:22px}#lightbox-caption{text-align:center;margin:14px 0 0;font-size:13px}[hidden]{display:none!important}
@media(min-width:1600px){.hero{height:740px}.hero-inner{width:78%}.header{max-width:1380px}}@media(max-width:1100px){.header{gap:15px;width:92%}.header nav{gap:16px;font-size:10px}.brand>span{font-size:23px}.brand-icon{width:42px;height:42px}.hero{height:600px}.hero-inner{width:84%}.hero h1{font-size:54px}.hero-description{font-size:13px}.hero-note{right:4%;font-size:26px}.services-layout{gap:24px;grid-template-columns:.8fr 1.7fr}.service-card img{height:145px}.service-card h3{font-size:10px}.service-card p{font-size:9px}.services h2{font-size:27px}.menu-layout{gap:25px}.menu-feast{height:250px}.menu-copy h2{font-size:27px}.menu-categories{padding-left:18px}.menu-categories img{width:43px;height:43px}.menu-categories b{font-size:11px}.menu-categories small{font-size:9px}.contact-layout{gap:50px}.contact h2{font-size:39px}footer{flex-wrap:wrap;gap:20px}footer>p{display:none}}
@media(max-width:760px){html{scroll-padding-top:20px}.header{height:80px;width:88%}.header .brand>span{font-size:22px}.header .button{margin-left:auto;padding:9px 17px;font-size:10px;min-height:36px}.nav-toggle{display:block;border:1px solid #bda56370;background:#21180da6;color:var(--gold);width:35px;height:35px;border-radius:50%;font-size:18px;order:3}.header nav{display:none;position:absolute;left:0;right:0;top:75px;background:#24170ff5;border:1px solid #685d37;border-radius:12px;padding:18px 25px;box-shadow:0 15px 35px #0005}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:4px;font-size:14px}.hero{height:730px;min-height:0;background-position:65% center}.hero:before{background:linear-gradient(180deg,#120806b8,#12080633 70%,#12080670),linear-gradient(90deg,#120806bb,transparent)}.hero-inner{width:84%;align-self:flex-start;margin-top:150px;padding:0}.hero h1{font-size:clamp(37px,7.7vw,57px)}.hero-description{font-size:13px;line-height:1.8;margin:20px 0 23px}.hero-note{top:auto;bottom:95px;right:8%;font-size:29px}.hero-actions{gap:20px}.hero .button{padding:13px 21px;font-size:11px}.watch-button{font-size:10px;gap:8px}.play{width:31px;height:31px}.eyebrow{font-size:9px;letter-spacing:2px}.scroll-note{bottom:24px}.why{padding:32px 0 30px}.section-title{padding:0 8%}.section-title h2{font-size:27px}.section-title>p:not(.eyebrow){font-size:11px}.benefits{grid-template-columns:repeat(3,1fr);gap:27px 0;padding-top:28px}.benefits article{padding:0 12px}.benefits article:nth-child(3){border:0}.benefits article:nth-child(4){grid-column:1 / 2;margin-left:50%;width:100%}.benefits article:nth-child(5){grid-column:2 / 3;margin-left:50%;width:100%}.benefits h3{font-size:10px;min-height:28px}.benefits p{font-size:10px}.icon{width:53px;height:53px;margin-bottom:10px}.icon svg{width:30px;height:30px}.leaves{width:60px;height:80px}.leaves.right{width:46px;height:70px}.services{padding:60px 0}.services-layout{grid-template-columns:1fr;gap:30px}.services-copy{max-width:100%}.services-copy>p:not(.eyebrow){margin:15px 0 20px;font-size:12px}.service-cards{grid-template-columns:repeat(5,145px);gap:12px;overflow-x:auto;padding:8px 0 15px;scroll-snap-type:x mandatory}.service-card{scroll-snap-align:start}.service-card img{height:165px}.service-card h3{font-size:11px}.service-card p{font-size:10px}.menu{padding:45px 0}.menu-layout{grid-template-columns:1fr 1fr;gap:25px 20px}.menu-feast{height:250px;grid-column:1/-1}.menu-copy h2{font-size:27px}.menu-copy>p:not(.eyebrow){font-size:11px}.menu-copy p br{display:none}.menu-copy .button{font-size:10px;padding:11px 16px}.menu-categories{gap:18px;padding-left:16px}.menu-categories img{width:40px;height:40px}.menu-categories button{gap:9px}.menu-categories i{display:none}.menu-categories b{font-size:10px}.menu-categories small{font-size:9px}.about{grid-template-columns:1fr 1.3fr;min-height:350px}.about-photo{height:350px}.about-copy{padding:35px 25px 35px 0}.about-copy h2{font-size:30px}.about-copy p:not(.eyebrow){font-size:11px}.about-copy .button{font-size:10px;padding:11px 18px}.story-note{display:none}.gallery{padding:40px 0 25px}.gallery-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.gallery-grid img{height:175px}.gallery-grid span{font-size:10px;padding:24px 12px 12px}.testimonials{padding:25px 0 35px}.testimonial-cards{grid-template-columns:1fr;gap:13px;margin-top:23px}.testimonial-cards article{padding:22px 25px}.testimonial-cards p{max-width:95%}.testimonial-note{font-size:9px;width:80%;margin:18px auto 0}.contact{padding:50px 0}.contact-layout{grid-template-columns:1fr;gap:35px}.contact h2{font-size:39px}.contact-layout>div>p:not(.eyebrow){font-size:12px;margin-top:15px}.phone{font-size:27px;margin-top:20px}form{padding:26px 23px}.form-grid{gap:0 13px}footer{padding:25px 6%;gap:20px;justify-content:space-between}footer>small{margin:0;order:3;width:100%;font-size:8px}footer>a:last-child{font-size:10px}dialog{padding:30px 22px}dialog h2{font-size:28px}#menu-items{grid-template-columns:1fr}.menu-filters button{font-size:10px;padding:6px 11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Aligned header and hero share the same page gutter. */
.header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:32px;height:96px;width:88%;max-width:1320px}
.header nav{justify-self:end;justify-content:center;gap:clamp(17px,1.9vw,29px);white-space:nowrap;line-height:1.4}
.header nav a{display:inline-flex;align-items:center;min-height:42px;padding:10px 0}
.header>.button{justify-self:end;margin:0}
.hero{background:#20190d;isolation:isolate;overflow:hidden}
.hero-visual{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}
.hero-art{height:100%;width:100%;object-fit:cover;object-position:center 54%;transform:scale(1.045)}
.hero:before{z-index:1;pointer-events:none}
.hero-inner{width:88%;max-width:1320px;margin-left:auto;margin-right:auto;z-index:2;text-align:left}
.hero-note,.scroll-note{z-index:2}
.phone{font-family:'Poppins',Arial,sans-serif;font-size:30px;font-weight:600;letter-spacing:.6px;font-variant-numeric:lining-nums tabular-nums;white-space:nowrap}
input[type='tel']{font-family:'Poppins',Arial,sans-serif;font-variant-numeric:lining-nums tabular-nums;letter-spacing:.4px}
.menu-feast-frame{border-radius:14px;overflow:hidden;height:278px;isolation:isolate}
.menu-feast-frame .menu-feast{height:100%;width:100%;border-radius:0}
.about-photo{overflow:hidden}
.word-mask{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.15em;margin-bottom:-.15em;line-height:inherit}
.animated-word{display:inline-block;transform-origin:50% 100%}
@media(min-width:1600px){.header{max-width:1320px}.hero-inner{width:88%}}
@media(max-width:1100px){.header{width:88%;column-gap:20px}.header nav{gap:15px;font-size:11px}.header>.button{padding:11px 19px}.hero-inner{width:88%}.menu-feast-frame{height:250px}}
@media(min-width:901px) and (max-width:1000px){.header{column-gap:17px}.header nav{gap:12px;font-size:10px}.header .brand>span{font-size:21px}.header .brand-icon{width:37px;height:37px}.header .button{padding:10px 15px}}
@media(max-width:900px){.header{height:80px;grid-template-columns:1fr auto auto;column-gap:14px}.header .brand>span{font-size:22px}.header .brand-icon{width:42px;height:42px}.header .button{padding:9px 17px;min-height:36px;font-size:10px}.nav-toggle{display:grid;place-items:center;grid-column:3;grid-row:1;border:1px solid #bda56370;background:#21180da6;color:var(--gold);width:36px;height:36px;border-radius:50%;font-size:18px;order:initial}.header>.button{grid-column:2;grid-row:1}.header nav{display:none;position:absolute;left:0;right:0;top:75px;justify-self:stretch;background:#24170ffa;border:1px solid #685d37;border-radius:12px;padding:18px 25px;box-shadow:0 15px 35px #0005}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:3px;font-size:14px}.header nav a{min-height:40px}.header nav a.active:after{right:auto;width:30px}}
@media(max-width:760px){.hero-inner{width:88%;margin-top:150px}.hero-art{object-position:65% center}.menu-feast-frame{grid-column:1/-1;height:250px}.menu-feast-frame .menu-feast{grid-column:auto}.phone{font-size:clamp(21px,5.8vw,29px);letter-spacing:.3px}}
@media(max-width:380px){.header{column-gap:9px}.header .brand{gap:6px}.header .brand>span{font-size:19px}.header .brand small{font-size:7px;letter-spacing:1.7px}.header .brand-icon{width:34px;height:34px}.header .button{padding:8px 12px}.hero h1{font-size:34px}.hero-actions{gap:12px}.hero .button{padding:12px 16px}.hero-description{font-size:12px}}
/* Logo and navigation form one balanced header row. */
.header{display:flex;align-items:center;justify-content:space-between;gap:32px;height:126px;max-width:1320px}
.header .brand{flex:0 0 auto;margin:0;line-height:0}
.brand-logo{width:110px;height:110px;object-fit:contain;display:block;filter:drop-shadow(0 3px 9px #0004)}
.header-links{display:flex;align-items:center;justify-content:flex-end;gap:26px;min-width:0}
.header nav{display:flex;position:static;align-items:center;justify-content:flex-end;gap:24px;padding:0;background:none;border:0;box-shadow:none;white-space:nowrap;font-size:16px;font-weight:500;line-height:1.4}
.header nav a{display:inline-flex;align-items:center;min-height:46px;padding:11px 0}
.header .booking-button{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:12px;font-size:14px;font-weight:700;min-height:46px;padding:11px 23px;margin:0;line-height:1.4}
.header .nav-toggle{display:none}
footer .brand-logo{width:88px;height:88px}
@media(min-width:981px) and (max-width:1180px){.header{gap:24px}.header .brand-logo{width:96px;height:96px}.header-links{gap:22px}.header nav{gap:17px;font-size:14px}.header .booking-button{font-size:13px;padding:11px 18px}}
@media(max-width:980px){.header{height:108px;gap:14px}.header .brand-logo{width:90px;height:90px}.header .brand{margin-right:auto}.header-links{gap:0}.header .booking-button{font-size:13px;min-height:42px;padding:10px 18px;gap:9px}.header .nav-toggle{display:grid;place-items:center;flex:0 0 auto;order:initial;width:42px;height:42px;line-height:1;font-size:20px;border:1px solid #bda56370;background:#21180da6;color:var(--gold);border-radius:50%}.header nav{display:none;position:absolute;left:0;right:0;top:106px;padding:17px 24px;background:#24170ffa;border:1px solid #685d37;border-radius:12px;box-shadow:0 15px 35px #0005;font-size:17px}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:3px}.header nav a{min-height:43px;padding:10px 0}.header nav a.active:after{right:auto;width:30px}}
@media(max-width:480px){.header{gap:10px;height:98px}.header .brand-logo{width:80px;height:80px}.header nav{top:98px}.header .booking-button{font-size:12px;padding:10px 14px;gap:8px;min-height:40px}.header .nav-toggle{width:38px;height:38px}footer .brand-logo{width:80px;height:80px}}
/* Word-animation wrappers retain the heading's original white/gold emphasis. */
.hero h1 .word-mask,.hero h1 .animated-word{color:inherit}
.services-copy .occasion-detail{margin-top:-10px!important;margin-bottom:24px!important;color:#e3dfc9!important;font-size:11px!important}
.rating-summary span{color:#df301c;font-weight:700;white-space:nowrap}
.testimonial-cards article>small{display:block;margin-top:18px}
@media(max-width:760px){.rating-summary{line-height:1.9}.services-copy .occasion-detail{margin-top:-7px!important;font-size:11px!important}}
/* Persistent compact branding and a text-only booking action. */
html{scroll-padding-top:112px}
.header{position:fixed;top:0;left:0;right:0;transform:none;width:100%;max-width:none;height:96px;padding:0 max(6%,calc((100% - 1320px)/2));gap:28px;background:rgba(26,15,10,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid #ff910026;box-shadow:0 4px 22px #0002;z-index:100}
.header .brand{gap:12px;line-height:1.2}
.header .brand-logo,footer .brand-logo{width:62px;height:62px;flex:0 0 auto}
.header .brand-name,footer .brand-name{font-family:'Poppins',Arial,sans-serif;font-size:25px;font-weight:600;letter-spacing:-.6px;line-height:1.2}
.header .brand-name small,footer .brand-name small{font-size:8px;font-weight:500;letter-spacing:2.2px;line-height:1.5;margin-top:5px;color:#dfd6b5}
.header-links{gap:22px}
.header nav{font-size:16px;gap:21px}
.header .booking-button{font-size:14px;padding:12px 23px;gap:0;min-height:46px}
@media(max-width:1180px){.header{height:88px;gap:14px}.header .brand{margin-right:auto;gap:10px}.header .brand-logo{width:56px;height:56px}.header .brand-name{font-size:23px}.header-links{gap:0}.header .booking-button{font-size:13px;min-height:42px;padding:10px 18px}.header .nav-toggle{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;order:initial;line-height:1;font-size:20px;border:1px solid #bda56370;background:#21180da6;color:var(--gold);border-radius:50%}.header nav{display:none;position:absolute;top:calc(100% + 8px);left:6%;right:6%;padding:17px 24px;background:#24170ffc;border:1px solid #685d37;border-radius:12px;box-shadow:0 15px 35px #0005;font-size:17px;max-height:calc(100dvh - 112px);overflow-y:auto}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:3px}.header nav a{min-height:43px;padding:10px 0}.header nav a.active:after{right:auto;width:30px}}
@media(max-width:480px){html{scroll-padding-top:94px}.header{height:78px;gap:10px}.header .brand{gap:8px}.header .brand-logo{width:44px;height:44px}.header .brand-name{font-size:21px}.header .brand-name small{font-size:7px;letter-spacing:1.2px;margin-top:4px}.header .booking-button{font-size:12px;padding:10px 13px;min-height:38px}.header .nav-toggle{width:36px;height:36px;font-size:18px}}
@media(max-width:380px){.header{gap:7px}.header .brand{gap:6px}.header .brand-logo{width:36px;height:36px}.header .brand-name{font-size:17px}.header .brand-name small{font-size:6px;letter-spacing:1px}.header .booking-button{font-size:11px;padding:9px 10px;min-height:35px}.header .nav-toggle{width:32px;height:32px}}
/* A translucent olive header echoes the hero's foliage and warm copper light. */
.header{background:linear-gradient(110deg,rgba(35,20,12,.66),rgba(40,24,12,.48));border:1px solid rgba(255,145,0,.36);border-top:0;border-radius:0 0 18px 18px;box-shadow:0 8px 28px rgba(16,5,3,.14);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.header nav a{color:#fff1d1;text-shadow:0 1px 5px rgba(0,0,0,.45)}
.header nav a:hover,.header nav a.active{color:#ff9100}
.header .brand-name{color:#fff1d1;text-shadow:0 1px 6px rgba(0,0,0,.35)}
@media(max-width:1180px){.header nav{background:rgba(37,22,13,.94);border-color:rgba(255,145,0,.4);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.header .nav-toggle{background:rgba(44,29,16,.45);border-color:rgba(255,145,0,.45)}}
@supports not (backdrop-filter:blur(18px)){.header{background:rgba(38,24,14,.92)}}
/* Compact navigation with a smaller crest icon. */
html{scroll-padding-top:88px}
.header{height:72px}
.header .brand{gap:9px}
.header .brand-logo{width:42px;height:42px}
.header .brand-name{font-size:23px}
.header .brand-name small{font-size:7px;letter-spacing:1.8px;margin-top:3px}
.header nav a{min-height:40px;padding:9px 0}
.header .booking-button{min-height:40px;padding:10px 20px}
@media(max-width:1180px){.header{height:68px}.header .brand-logo{width:38px;height:38px}.header .brand-name{font-size:21px}.header .booking-button{min-height:38px;padding:9px 17px}.header .nav-toggle{width:36px;height:36px}.header nav{max-height:calc(100dvh - 92px)}}
@media(max-width:480px){html{scroll-padding-top:78px}.header{height:62px}.header .brand{gap:7px}.header .brand-logo{width:32px;height:32px}.header .brand-name{font-size:19px}.header .brand-name small{font-size:6px;letter-spacing:1.2px;margin-top:3px}.header .booking-button{min-height:34px;padding:8px 12px}.header .nav-toggle{width:32px;height:32px}}
@media(max-width:380px){.header .brand-logo{width:28px;height:28px}.header .brand-name{font-size:17px}.header .brand-name small{font-size:6px;letter-spacing:1px}.header .booking-button{padding:8px 10px}}
/* Slightly taller header with square corners. */
html{scroll-padding-top:82px}
.header{height:82px;border-radius:0}
@media(max-width:1180px){.header{height:76px}}
@media(max-width:480px){html{scroll-padding-top:68px}.header{height:68px}}
/* Hero fills the first screen; nav targets fill the view below the header. */
.hero{height:100vh;height:100svh;min-height:620px;max-height:none}
html{scroll-padding-top:82px}
#services,#menu,#about,#contact{min-height:calc(100vh - 82px);display:flex;flex-direction:column;justify-content:center;box-sizing:border-box}
.scroll-note{display:none!important}
html,body{overflow-x:clip;max-width:100%}
main section[id]{scroll-margin-top:-18px}
#about .about-copy .button{padding:9px 18px;min-height:0;font-size:11px;line-height:1.3;margin-bottom:6px}
#about .about-values{margin:16px 0 20px}
#about .about-value{padding:12px 0}
#about .about-copy>p:not(.eyebrow){margin:12px 0}
.brand-logo{background:none;border-radius:0;padding:0;box-sizing:border-box;object-fit:contain;filter:drop-shadow(0 1px 3px #0008)}
.header .brand-logo{width:48px;height:48px}
.brand{display:flex!important;align-items:center!important;gap:10px}
.brand-name{display:flex;flex-direction:column;justify-content:center;line-height:1.1!important}
.brand-name small{margin-top:4px!important;line-height:1!important}
footer .brand-logo{width:52px;height:52px;margin:0}
@media(max-width:480px){.header .brand-logo{width:38px;height:38px}}
#services{background:linear-gradient(90deg,rgba(28,14,8,.9),rgba(48,24,12,.82)),url('assets/occasion.webp') center/cover;background-color:#1c0e08}
#about{background:linear-gradient(90deg,rgba(30,14,10,.88),rgba(52,22,14,.92)),url('assets/royal-thali.webp') center/cover;background-color:#1e0e0a;padding-top:90px;padding-bottom:90px}
@media(max-width:760px){#about{padding-top:60px;padding-bottom:60px}}
.hero-actions{display:flex;align-items:center;gap:24px}
.hero-actions>.button,.hero-actions>.watch-button{margin:0;align-self:center}
@media(max-width:1180px){html{scroll-padding-top:76px}#services,#menu,#about,#contact{min-height:calc(100vh - 76px)}}
@media(max-width:480px){html{scroll-padding-top:68px}#services,#menu,#about,#contact{min-height:calc(100vh - 68px)}}
/* Expanded menu and a richer, image-led business introduction. */
.menu-selection{position:relative;z-index:3;margin-top:60px}
.menu-selection .section-title{max-width:740px;margin:auto}
.menu-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:30px}
.menu-preview-card{background:#fff1d1;border:1px solid #dfd5bb;border-radius:15px;overflow:hidden;display:flex;flex-direction:column}
.menu-preview-image{height:170px;overflow:hidden}
.menu-preview-image img{height:100%;width:100%}
.menu-preview-copy{padding:19px 20px 20px;display:flex;flex:1;flex-direction:column;align-items:flex-start}
.menu-preview-copy>small{font-size:8px;letter-spacing:1.6px;font-weight:700;color:#df301c}
.menu-preview-copy h3{font-size:20px;margin:9px 0 11px}
.menu-preview-copy p{font-size:12px;line-height:1.75;color:#737461;margin-bottom:16px}
.menu-preview-link{margin-top:auto;padding:0;border:0;border-bottom:1px solid #ff9100;background:none;color:#c4260f;font-size:11px;font-weight:600;display:flex;gap:15px;align-items:center}
.menu-preview-link:hover{color:#2d2416}
.menu-planning-note{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:30px;padding:24px 28px;border-radius:12px;background:#eee8d6}
.menu-planning-note p{font-size:12px;color:#666953}
.menu-planning-note b{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:21px;color:#3d301a;margin-bottom:4px}
.about-expanded{display:block;min-height:0;padding:76px 0}
.about-layout{display:grid;grid-template-columns:1fr 1.08fr;gap:64px;align-items:center}
.about-images{min-width:0}
.about-expanded .about-photo{height:300px;border-radius:16px;overflow:hidden}
.about-expanded .about-photo:after{display:none}
.about-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.about-photo-pair .about-photo{height:205px}
.about-image-caption{color:#c8c4a5;font-size:11px;font-style:italic;margin:16px 0 0;text-align:center}
.about-expanded .about-copy{padding:0;max-width:none}
.about-expanded .about-copy h2{font-size:38px}
.about-expanded .about-copy>p:not(.eyebrow){font-size:13px;line-height:1.85;margin:17px 0;color:#d2d4c5}
.about-values{margin:23px 0 27px;border-top:1px solid #c9b57138}
.about-value{display:flex;gap:16px;padding:17px 0;border-bottom:1px solid #c9b57138}
.about-value>span{font-size:11px;color:#ff9100;padding-top:3px;letter-spacing:1px}
.about-value h3{font-size:19px}
.about-value p{font-size:11px;line-height:1.75;color:#bfc6b0;margin-top:7px}
.about-expanded .about-copy>.about-location{font-size:10px;color:#aeb99e;margin-top:18px;max-width:390px}
@media(max-width:1100px){.menu-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.about-layout{gap:36px}.about-expanded .about-copy h2{font-size:33px}.about-expanded .about-photo{height:320px}.about-photo-pair .about-photo{height:190px}}
@media(max-width:760px){.menu-selection{margin-top:40px}.menu-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}.menu-preview-image{height:145px}.menu-preview-copy{padding:15px}.menu-preview-copy h3{font-size:18px}.menu-preview-copy p{font-size:11px}.menu-preview-copy>small{font-size:7px;letter-spacing:1px}.menu-preview-link{font-size:10px;gap:9px}.menu-planning-note{flex-direction:column;align-items:flex-start;padding:21px;gap:18px}.menu-planning-note b{font-size:21px}.about-expanded{padding:55px 0}.about-layout{grid-template-columns:1fr;gap:30px}.about-expanded .about-photo{height:250px}.about-photo-pair .about-photo{height:170px}.about-expanded .about-copy h2{font-size:33px}.about-expanded .about-copy>p:not(.eyebrow){font-size:12px}.about-value h3{font-size:18px}.about-expanded .about-copy>.about-location{font-size:10px}}
@media(max-width:380px){.menu-preview-grid{grid-template-columns:1fr}.menu-preview-image{height:190px}.about-photo-pair{gap:12px}.about-photo-pair .about-photo{height:140px}}
remove this image 
/* Palette: #ff9100 orange, #fff1d1 cream, #ff9100 cyan, #df301c green (accent only). */
:root{--gold:#ff9100;--cream:#fff1d1;--cyan:#ff9100;--green:#df301c}
.header nav a:hover,.header nav a.active{color:#ff9100}
.header nav a.active:after,.header nav a:hover:after{background:#ff9100}
a:focus-visible,button:focus-visible{outline:2px solid #ff9100;outline-offset:3px}
.button:hover,.booking-button:hover{background:#df301c;color:#fff1d1;border-color:#df301c}
.about-value>span{color:#df301c}

/* No cream wave edge spilling into the bottom of the hero. */
#why.wave:before{display:none}
.hero{margin-bottom:0}

/* Hero actions: one centred row, larger bold labels. */
.hero .hero-actions{display:flex!important;flex-direction:row!important;align-items:center!important;flex-wrap:wrap;gap:28px!important;margin-top:34px}
.hero .hero-actions>*{margin:0!important;transform:none;vertical-align:middle;position:relative;top:0!important}
.hero .hero-actions .button{height:54px;min-height:54px;padding:0 30px!important;font-size:15px!important;font-weight:800!important;gap:18px;line-height:1}
.hero .watch-button{height:54px;font-size:15px!important;font-weight:700!important;gap:12px!important;line-height:1}
.hero .watch-button .play{width:44px;height:44px;font-size:13px}
@media(max-width:480px){.hero .hero-actions{gap:16px!important}.hero .hero-actions .button{height:48px;min-height:48px;padding:0 22px!important;font-size:14px!important}.hero .watch-button{height:48px;font-size:14px!important}.hero .watch-button .play{width:38px;height:38px}}

/* Why section keeps its natural compact height. */
#why{min-height:0;display:block;padding-top:80px;padding-bottom:80px}
#why .benefits{margin-top:44px}
/* Ornate crest logo. */
.header .brand-logo{width:64px;height:64px}
footer .brand-logo{width:72px;height:72px}
@media(max-width:480px){.header .brand-logo{width:48px;height:48px}}

/* New hero photo: food sits right, dark space left for text. */
.hero-art{object-position:right center}
@media(max-width:760px){.hero-art{object-position:70% center}}

/* Discover Our Food as an orange outline pill button. */
.hero .watch-button{padding:0 26px 0 6px!important;border:2px solid #ff9100!important;border-radius:30px;background:rgba(255,145,0,.14)!important;color:#fff1d1;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.hero .watch-button .play{width:42px;height:42px;background:#ff9100;border:0;color:#1e140b}
.hero .watch-button:hover{background:#ff9100!important;color:#1e140b;transform:translateY(-2px)}
.hero .watch-button:hover .play{background:#1e140b;color:#ff9100}
@media(max-width:480px){.hero .watch-button{padding:0 18px 0 5px!important}.hero .watch-button .play{width:36px;height:36px}}

:root{--red:#df301c}
.hero h1 em,.hero h1 em .animated-word{color:#ff9100}

/* Legible tagline under the brand name. */
.header .brand-name small,footer .brand-name small{font-size:10px!important;font-weight:700!important;letter-spacing:2px!important;color:#ff9100!important;margin-top:5px!important;text-shadow:0 1px 3px rgba(0,0,0,.5)}
@media(max-width:480px){.header .brand-name small{font-size:8px!important;letter-spacing:1.4px!important}}

/* Typography: Cormorant Garamond headings, Poppins body, Great Vibes script. */
body{font-family:'Poppins',Arial,sans-serif}
h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:700;letter-spacing:-.2px}
.hero h1{font-weight:700;letter-spacing:-.5px;line-height:1.05}
.hero h1 em{font-style:italic;font-weight:600}
h2{font-size:clamp(34px,3.4vw,46px)}
h3{font-size:1.25em}
.eyebrow{font-family:'Poppins',Arial,sans-serif;font-weight:600}
.handwritten{font-family:'Great Vibes',cursive}
.header .brand-name,footer .brand-name{font-family:'Cormorant Garamond',Georgia,serif!important;font-weight:700!important;font-size:28px!important;letter-spacing:.3px!important}
.header .brand-name small,footer .brand-name small{font-family:'Poppins',Arial,sans-serif}
.button,.watch-button,.header nav a{font-family:'Poppins',Arial,sans-serif}

/* Services: light event cards with image, guest range, details and enquiry link. */
#services.events-section{background:#fff1d1!important;color:#2d2416;padding:90px 0}
.events-section .section-title h2{color:#2d2416}
.events-section .section-title .eyebrow{color:#df301c}
.event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:44px}
.event-card{background:#fff;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(60,30,10,.1);transition:transform .25s,box-shadow .25s}
.event-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(60,30,10,.18)}
.event-image{position:relative;height:210px;overflow:hidden}
.event-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.event-card:hover .event-image img{transform:scale(1.06)}
.event-tag{position:absolute;left:14px;bottom:14px;background:#ff9100;color:#1e140b;font-size:11px;font-weight:700;padding:6px 12px;border-radius:20px}
.event-body{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}
.event-body h3{font-size:26px;color:#2d2416;margin-bottom:8px}
.event-body p{font-size:13px;line-height:1.7;color:#6b5a48}
.event-body ul{list-style:none;padding:0;margin:14px 0 18px;display:grid;gap:6px}
.event-body li{font-size:13px;color:#3d301a;padding-left:22px;position:relative}
.event-body li:before{content:'✓';position:absolute;left:0;color:#df301c;font-weight:700}
.event-link{margin-top:auto;font-size:13px;font-weight:700;color:#df301c;display:inline-flex;gap:8px;align-items:center}
.event-link:hover{color:#ff9100}
.events-cta{margin-top:44px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}
.events-cta p{color:#6b5a48;font-size:14px}
@media(max-width:980px){.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){#services.events-section{padding:64px 0}.event-grid{grid-template-columns:1fr;gap:20px}.event-image{height:190px}}

/* Hover/active use orange and red from the palette instead of cyan. */
.header nav a:hover,.header nav a.active{color:#ff9100!important}
.header nav a.active:after,.header nav a:hover:after{background:#ff9100!important}
.event-link:hover{color:#ff9100}

/* Hero smoke layer and shimmering accent words. */
.hero-smoke{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}
.hero-smoke span{position:absolute;border-radius:50%;background:radial-gradient(circle,rgba(255,241,209,.55) 0%,rgba(255,241,209,.18) 45%,transparent 70%);filter:blur(18px);will-change:transform,opacity}
.hero h1>span .animated-word{background:linear-gradient(100deg,#ff9100 0%,#ff9100 40%,#fff1d1 50%,#ff9100 60%,#ff9100 100%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent}
@media(prefers-reduced-motion:reduce){.hero-smoke{display:none}}

html{scroll-behavior:auto!important}

/* About: light cream background instead of the dark maroon photo overlay. */
#about{background:#fff8e8!important;color:#2d2416}
#about h2,#about h3{color:#2d2416!important}
#about .eyebrow{color:#df301c!important}
#about .about-copy>p:not(.eyebrow),#about .about-value p{color:#5e4c3a!important}
#about .about-value>span{color:#df301c!important}
#about .about-values,#about .about-value{border-color:rgba(45,36,22,.14)!important}
#about .about-image-caption,#about .about-copy>.about-location{color:#7a6650!important}
#about .about-photo{box-shadow:0 10px 28px rgba(60,30,10,.15)}

#about .about-images>.about-photo{height:460px}
@media(max-width:980px){#about .about-images>.about-photo{height:300px}}

/* About fits one screen: compact spacing, contained width, address visible. */
#about{padding-top:36px!important;padding-bottom:36px!important;justify-content:center}
#about .about-layout{width:min(1200px,90%);margin:0 auto;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)!important;gap:48px;align-items:center}
#about .about-copy{min-width:0}
#about .about-copy h2{font-size:clamp(30px,2.8vw,40px)!important;margin-top:6px}
#about .about-copy>p:not(.eyebrow){font-size:13px!important;line-height:1.7!important;margin:8px 0!important}
#about .about-values{margin:12px 0 16px!important}
#about .about-value{padding:9px 0!important}
#about .about-value p{margin-top:3px!important}
#about .about-copy>.about-location{margin-top:12px!important;max-width:none!important;font-size:12px!important}
#about .about-images>.about-photo{height:min(420px,60vh)}
@media(max-width:980px){#about .about-layout{grid-template-columns:1fr!important;gap:28px}#about .about-images>.about-photo{height:280px}}

/* Compact event cards so the whole Services section fits one screen. */
#services.events-section{padding:40px 0!important}
.events-section .section-title h2{font-size:clamp(28px,2.6vw,38px)}
.events-section .section-title>p:not(.eyebrow){margin-top:6px}
.event-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;margin-top:26px}
.event-card{border-radius:14px}
.event-image{height:140px}
.event-tag{left:10px;bottom:10px;font-size:10px;padding:4px 9px}
.event-body{padding:14px 14px 16px}
.event-body h3{font-size:20px;margin-bottom:5px;line-height:1.15}
.event-body p{font-size:12px;line-height:1.55}
.event-body ul{margin:10px 0 12px;gap:4px}
.event-body li{font-size:11.5px;padding-left:18px;line-height:1.45}
.event-link{font-size:12px}
.events-cta{margin-top:24px;gap:10px}
.events-cta p{font-size:13px}
@media(max-width:1280px){.event-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.event-grid{grid-template-columns:1fr}.event-image{height:170px}}

/* Slightly smaller hero buttons. */
.hero .hero-actions{gap:20px!important}
.hero .hero-actions .button{height:46px;min-height:46px;padding:0 24px!important;font-size:14px!important;gap:14px}
.hero .watch-button{height:46px;font-size:14px!important;padding:0 22px 0 4px!important;gap:10px!important}
.hero .watch-button .play{width:36px;height:36px;font-size:11px}
@media(max-width:480px){.hero .hero-actions .button{height:42px;min-height:42px;padding:0 18px!important;font-size:13px!important}.hero .watch-button{height:42px;font-size:13px!important}.hero .watch-button .play{width:32px;height:32px}}

/* Why section: gradient icon badges with a soft glow. */
.benefits .icon{width:78px;height:78px;margin:0 auto 18px;border-radius:24px;display:grid;place-items:center;background:linear-gradient(135deg,#ff9100 0%,#ff6a2b 50%,#df301c 100%);box-shadow:0 12px 26px rgba(223,48,28,.32),inset 0 1px 0 rgba(255,255,255,.35);position:relative}
.benefits .icon:after{content:'';position:absolute;inset:-7px;border-radius:30px;border:2px dashed rgba(255,145,0,.45)}
.benefits .icon svg{width:36px;height:36px;stroke:#fff!important;color:#fff;fill:none}
.benefits .icon svg *{stroke:#fff!important}
.benefits article:nth-child(2) .icon{background:linear-gradient(135deg,#ffb347,#ff9100 55%,#e85d12)}
.benefits article:nth-child(4) .icon{background:linear-gradient(135deg,#ff7a45,#df301c 60%,#b81f10)}
.benefits h3{font-size:14px!important;min-height:40px;margin-top:4px}
.benefits p{font-size:12px!important}

.benefits .icon:after{animation:ring-spin 14s linear infinite}
@keyframes ring-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.benefits .icon:after{animation:none}}

/* Services: larger cards in an auto-sliding row, with star ornaments on the corners. */
#services.events-section{padding:60px 0!important}
.event-viewport{overflow:hidden;margin-top:34px;padding:14px 0 22px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.event-viewport .event-grid{display:flex!important;gap:26px;margin:0;width:max-content;will-change:transform}
.event-viewport .event-card{flex:0 0 clamp(260px,22vw,320px);position:relative;overflow:visible;border:1px solid rgba(255,145,0,.25)}
.event-viewport .event-image{height:200px;border-radius:14px 14px 0 0}
.event-viewport .event-body{padding:18px 20px 20px}
.event-viewport .event-body h3{font-size:24px}
.event-viewport .event-body p{font-size:13px}
.event-viewport .event-body li{font-size:12.5px}
.event-card:before,.event-card:after{content:'✦';position:absolute;z-index:3;font-size:20px;line-height:1;color:#ff9100;text-shadow:0 2px 6px rgba(223,48,28,.35);pointer-events:none}
.event-card:before{top:-10px;right:-8px}
.event-card:after{content:'❋';bottom:-10px;left:-8px;color:#df301c;font-size:18px}
.event-card:hover:before{animation:star-spin 1.2s ease}
@keyframes star-spin{to{transform:rotate(360deg) scale(1.2)}}
.event-viewport.manual{overflow-x:auto;scroll-snap-type:x mandatory}
.event-viewport.manual .event-card{scroll-snap-align:start}

/* Bolder, slightly larger headings across every section. */
main section:not(.hero) h2,.section-title h2,#about .about-copy h2,.events-section .section-title h2{font-size:clamp(36px,3.6vw,52px)!important;font-weight:700!important;letter-spacing:-.3px;line-height:1.1}
main section:not(.hero) h3{font-weight:700!important}
.event-viewport .event-body h3{font-size:26px!important}
.about-value h3{font-size:22px!important}
.benefits h3{font-size:15px!important;font-weight:700!important}
.eyebrow{font-weight:700!important;font-size:12px!important;letter-spacing:3px!important}
.hero h1{font-weight:700!important}
@media(max-width:620px){main section:not(.hero) h2,.section-title h2,#about .about-copy h2{font-size:clamp(30px,8vw,38px)!important}}

#why{overflow:hidden}
#why .leaves{pointer-events:none;z-index:4;will-change:transform}

/* Section labels (OUR SERVICES, ABOUT NIRANCHAN...) are large and prominent. */
main .eyebrow,main section .eyebrow{font-size:clamp(20px,2vw,28px)!important;font-weight:800!important;letter-spacing:4px!important;line-height:1.2!important;margin-bottom:10px!important}
.hero .eyebrow{font-size:clamp(16px,1.4vw,20px)!important}
@media(max-width:620px){main .eyebrow,main section .eyebrow{font-size:18px!important;letter-spacing:2.5px!important}}

/* Blended section dividers: a soft glowing gradient band with a centre ornament. */
.section-divider{position:relative;height:0;z-index:6;pointer-events:none}
.section-divider:before{content:'';position:absolute;left:0;right:0;top:-1px;height:3px;background:linear-gradient(90deg,transparent 0%,rgba(255,145,0,.15) 12%,#ff9100 35%,#df301c 50%,#ff9100 65%,rgba(255,145,0,.15) 88%,transparent 100%);box-shadow:0 0 18px 4px rgba(255,145,0,.35);filter:blur(.4px)}
.section-divider:after{content:'';position:absolute;left:10%;right:10%;top:-22px;height:44px;background:radial-gradient(ellipse at center,rgba(255,145,0,.22),transparent 70%);filter:blur(6px)}
.section-divider span{position:absolute;left:50%;top:0;transform:translate(-50%,-50%);width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#ff9100,#df301c);color:#fff1d1;font-size:16px;box-shadow:0 0 0 5px #fff1d1,0 6px 18px rgba(223,48,28,.35);z-index:1}

/* Section labels: lighter weight and a little smaller. */
main .eyebrow,main section .eyebrow{font-size:clamp(15px,1.4vw,19px)!important;font-weight:500!important;letter-spacing:3.5px!important;color:#df301c!important}
.hero .eyebrow{font-size:clamp(13px,1.1vw,16px)!important;color:#ff9100!important}
@media(max-width:620px){main .eyebrow,main section .eyebrow{font-size:14px!important;letter-spacing:2px!important}}

/* Contact: light background instead of the dark maroon photo overlay. */
#contact{background:#fff8e8!important;color:#2d2416!important}
#contact:before,#contact:after{display:none!important}
#contact h2{color:#2d2416!important}
#contact .contact-layout>div>p:not(.eyebrow),#contact address,#contact .contact-layout p{color:#5e4c3a!important}
#contact .phone{color:#df301c!important}
#contact .map-link{color:#df301c!important;border-color:#df301c!important}
#contact form{background:#fff!important;box-shadow:0 14px 40px rgba(60,30,10,.12)!important;border:1px solid rgba(255,145,0,.25)}
#contact input,#contact select,#contact textarea{background:#fffaf0!important}

/* Footer: four columns — brand, quick links, services, contact with map. */
footer.site-footer{display:block!important;position:relative;padding:70px 0 0!important;background:linear-gradient(180deg,#24150c,#170d07)!important;color:#e9dcc4!important;border:0!important}
.footer-divider{position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,transparent,#ff9100 30%,#df301c 50%,#ff9100 70%,transparent);box-shadow:0 0 18px 3px rgba(255,145,0,.3)}
.footer-divider span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#ff9100,#df301c);color:#fff1d1;box-shadow:0 0 0 5px #24150c}
.footer-grid{width:min(1240px,90%);margin:0 auto;display:grid;grid-template-columns:1.4fr .8fr 1fr 1.3fr;gap:44px;padding-bottom:44px}
.footer-col h4{font-family:'Cormorant Garamond',Georgia,serif;font-size:24px;font-weight:700;color:#fff1d1;margin:0 0 18px;position:relative;padding-bottom:10px}
.footer-col h4:after{content:'';position:absolute;left:0;bottom:0;width:42px;height:2px;background:linear-gradient(90deg,#ff9100,#df301c)}
.footer-about .brand{margin-bottom:16px}
.footer-about p{font-size:13px;line-height:1.8;color:#cbbba2;margin:0 0 20px;max-width:340px}
.footer-cta{font-size:13px!important;padding:11px 22px!important;min-height:0!important}
.footer-links{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.footer-links a{font-size:14px;color:#e2d4bb;display:inline-flex;align-items:center;gap:8px;transition:color .2s,transform .2s}
.footer-links a:before{content:'›';color:#ff9100;font-size:18px;line-height:1}
.footer-links a:hover{color:#ff9100;transform:translateX(4px)}
.footer-contact{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:14px}
.footer-contact li{display:flex;gap:12px;align-items:flex-start;font-size:13.5px;line-height:1.65;color:#e2d4bb}
.footer-contact a{color:#e2d4bb}
.footer-contact a:hover{color:#ff9100}
.footer-contact svg,.footer-map svg{flex:0 0 auto;width:20px;height:20px;fill:none;stroke:#ff9100;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin-top:2px}
.footer-map{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border:1px solid rgba(255,145,0,.5);border-radius:30px;font-size:13px;font-weight:600;color:#ff9100;transition:background .2s,color .2s}
.footer-map:hover{background:#ff9100;color:#1e140b}
.footer-map:hover svg{stroke:#1e140b}
.footer-map svg{margin:0}
.footer-bottom{border-top:1px solid rgba(255,145,0,.18);padding:18px 5%;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.footer-bottom small{font-size:12px!important;color:#a8977d!important;margin:0!important;width:auto!important}
.footer-bottom a{font-size:13px!important;color:#ff9100!important}
.footer-credit{font-size:12.5px!important;color:#f3e6d2!important;margin:0!important;width:auto!important;background:rgba(255,145,0,.14);border:1px solid rgba(255,145,0,.38);border-radius:999px;padding:6px 14px;letter-spacing:.2px}
.footer-credit a{font-size:inherit!important;color:#ff9100!important;font-weight:700;text-decoration:none;border-bottom:1px solid rgba(255,145,0,.5)}
.footer-credit a:hover{color:#ffb74d!important;border-bottom-color:#ffb74d}
@media(max-width:980px){.footer-grid{grid-template-columns:1fr 1fr;gap:36px}}
@media(max-width:560px){.footer-grid{grid-template-columns:1fr;gap:30px}footer.site-footer{padding-top:56px!important}.footer-bottom{justify-content:center;text-align:center}}

/* Footer: warm light peach instead of dark maroon. */
footer.site-footer{background:linear-gradient(180deg,#ffeccb,#ffe2b3)!important;color:#3d2f1e!important}
.footer-divider span{box-shadow:0 0 0 5px #ffeccb}
.footer-col h4{color:#2d2416}
.footer-about p{color:#6b5a48}
.footer-links a,.footer-contact li,.footer-contact a{color:#4a3a28}
.footer-links a:hover,.footer-contact a:hover{color:#df301c}
.footer-links a:before{color:#df301c}
.footer-contact svg,.footer-map svg{stroke:#df301c}
.footer-map{color:#df301c;border-color:rgba(223,48,28,.45)}
.footer-map:hover{background:#df301c;color:#fff1d1}
.footer-map:hover svg{stroke:#fff1d1}
.footer-bottom{border-top-color:rgba(223,48,28,.18)}
.footer-bottom small{color:#7a6650!important}
.footer-bottom a{color:#df301c!important}
.footer-credit{color:#4a3a28!important;background:rgba(223,48,28,.09);border-color:rgba(223,48,28,.32)}
.footer-credit a{color:#df301c!important;border-bottom-color:rgba(223,48,28,.45)}
.footer-credit a:hover{color:#a31f10!important;border-bottom-color:#a31f10}
footer.site-footer .brand-name{color:#2d2416!important;text-shadow:none!important}
footer.site-footer .brand-name small{color:#df301c!important;text-shadow:none!important}
/* A compact location map beneath the Thanjavur directions link. */
.contact-map{width:100%;max-width:460px;height:210px;margin-top:22px;border:1px solid rgba(211,163,77,.55);border-radius:13px;overflow:hidden;background:#eee8d6}
.contact-map iframe{display:block;width:100%;height:100%;border:0}
@media(max-width:480px){.contact-map{height:190px;margin-top:18px}}
/* Contact columns finish on the same baseline. */
@media(min-width:761px){
  .contact-layout{align-items:stretch}
  .contact-layout>div{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
  .contact-layout>div>.contact-map{margin-top:auto;flex:0 0 210px}
  .contact-layout>div>.map-link{margin-bottom:22px}
  .contact-layout>form{align-self:stretch}
}
@media(max-width:760px){
  .contact-layout{align-items:start}
  .contact-map{margin-top:22px}
}
/* Smaller contact map, retaining the shared bottom alignment. */
.contact-map{max-width:360px;height:160px}
@media(min-width:761px){.contact-layout>div>.contact-map{flex-basis:160px}}
@media(max-width:480px){.contact-map{max-width:320px;height:150px}}

/* Hero background effects layer. */
.hero-fx{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}
.hero-fx .ember{position:absolute;border-radius:50%;background:radial-gradient(circle,#fff1d1 0%,#ff9100 45%,rgba(223,48,28,0) 75%);box-shadow:0 0 10px 2px rgba(255,145,0,.7);opacity:0}
.hero-fx .bokeh{position:absolute;border-radius:50%;background:radial-gradient(circle,rgba(255,190,90,.55),rgba(255,145,0,0) 70%);filter:blur(4px);mix-blend-mode:screen}
.hero-fx .light-sweep{position:absolute;top:-20%;bottom:-20%;left:0;width:30%;background:linear-gradient(100deg,transparent,rgba(255,200,120,.12) 45%,rgba(255,230,180,.18) 50%,rgba(255,200,120,.12) 55%,transparent);transform:skewX(-14deg);mix-blend-mode:screen;text-decoration:none}

.hero-fx .hero-star{position:absolute;font-style:normal;line-height:1;color:#ffd38a;text-shadow:0 0 8px rgba(255,145,0,.9),0 0 16px rgba(255,190,90,.5)}

/* About: image column stretches to the same height as the text column. */
#about .about-layout{align-items:stretch!important}
#about .about-images{display:flex;flex-direction:column;height:100%}
#about .about-images>.about-photo{flex:1 1 auto;height:auto!important;min-height:360px;border-radius:18px}
#about .about-images>.about-photo img{width:100%;height:100%;object-fit:cover}
#about .about-image-caption{margin:12px 0 0;flex:0 0 auto}
@media(max-width:980px){#about .about-images>.about-photo{min-height:280px;flex:none;height:280px!important}}

.reveal-word{display:inline-block;white-space:pre}

.hero-stars{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}
.hero-star{position:absolute;font-style:normal;line-height:1;color:#ff9100!important;text-shadow:0 2px 6px rgba(223,48,28,.45),0 0 12px rgba(255,145,0,.6)!important}

.falling-leaf{position:absolute;z-index:4;pointer-events:none;fill:#8fb36a;color:#8fb36a;overflow:visible}
main>section{position:relative}

.event-photo{position:absolute;top:12px;right:12px;width:34%;height:38%;object-fit:cover;border:3px solid #fff1d1;border-radius:12px;box-shadow:0 6px 18px rgba(0,0,0,.35);z-index:2}
.event-image .event-tag{z-index:3}

/* Event photo as a quarter-round tab hugging the top-right corner. */
.event-photo{top:0!important;right:0!important;width:42%;height:58%;border:0 solid #fff1d1;border-left-width:3px;border-bottom-width:3px;border-radius:0 0 0 100%;box-shadow:-4px 6px 16px rgba(0,0,0,.3)}

/* Menu section headings a little smaller. */
#menu h2,#menu .section-title h2,#menu .menu-copy h2{font-size:clamp(28px,2.6vw,38px)!important;line-height:1.15}
@media(max-width:620px){#menu h2,#menu .section-title h2,#menu .menu-copy h2{font-size:26px!important}}

/* Services: carousel layout applies before the script runs, so there's no grid flash on load. */
.events-section .wrap{overflow:hidden}
.events-section .event-grid{display:flex!important;flex-wrap:nowrap;gap:26px;width:max-content;margin-top:34px}
.events-section .event-card{flex:0 0 clamp(260px,22vw,320px);position:relative;overflow:visible;border:1px solid rgba(255,145,0,.25)}
.events-section .event-image{height:200px;border-radius:14px 14px 0 0;background:#f3e3c4}
.events-section .event-body h3{font-size:26px}
.event-viewport .event-grid{margin-top:0}

#about .about-images>.about-photo img{object-position:72% center}

#about .about-images>.about-photo img{object-position:86% 18%!important}

/* Section headings a little smaller site-wide. */
main section:not(.hero) h2,.section-title h2,#about .about-copy h2,.events-section .section-title h2{font-size:clamp(28px,2.6vw,38px)!important;line-height:1.15}
@media(max-width:620px){main section:not(.hero) h2,.section-title h2,#about .about-copy h2{font-size:26px!important}}

/* Testimonial cards: corner badge and hover/touch lift. */
.testimonial-cards article{position:relative;overflow:visible!important;transition:box-shadow .3s,border-color .3s,background .3s}
.review-badge{position:absolute;top:-16px;right:18px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#ff9100,#df301c);color:#fff1d1;font-size:16px;line-height:1;box-shadow:0 0 0 4px #fff1d1,0 8px 18px rgba(223,48,28,.3);z-index:2}
.testimonial-cards article:hover,.testimonial-cards article.is-touched{background:#fff!important;border-color:rgba(255,145,0,.55)!important;box-shadow:0 18px 40px rgba(223,48,28,.16)}
.testimonial-cards article:hover h3,.testimonial-cards article.is-touched h3{color:#df301c}
.testimonial-cards article:hover .review-badge,.testimonial-cards article.is-touched .review-badge{background:linear-gradient(135deg,#df301c,#ff9100)}

/* Smaller, lighter review badges. */
.review-badge{top:-12px;right:16px;width:26px;height:26px;font-size:13px;background:#fff8e8!important;color:#df301c;border:1.5px solid #ff9100;box-shadow:0 4px 10px rgba(223,48,28,.18)}
.testimonial-cards article:hover .review-badge,.testimonial-cards article.is-touched .review-badge{background:#df301c!important;color:#fff1d1;border-color:#df301c}

/* Harmonised section header: small label, heading, subtitle with balanced sizes and spacing. */
main .eyebrow,main section .eyebrow{font-size:13px!important;font-weight:600!important;letter-spacing:4px!important;line-height:1.4!important;margin:0 0 12px!important;color:#df301c!important;display:inline-flex;align-items:center;gap:12px}
main .section-title .eyebrow:before,main .section-title .eyebrow:after{content:'';width:34px;height:1.5px;background:linear-gradient(90deg,transparent,#ff9100)}
main .section-title .eyebrow:after{transform:scaleX(-1)}
main .services-copy .eyebrow:before,main .menu-copy .eyebrow:before,main .about-copy .eyebrow:before,main .contact-layout .eyebrow:before{content:'';width:28px;height:1.5px;background:#ff9100}
main section:not(.hero) h2,.section-title h2,#about .about-copy h2,.events-section .section-title h2{font-size:clamp(30px,2.8vw,40px)!important;font-weight:700!important;line-height:1.15!important;letter-spacing:-.2px;margin:0 0 12px!important}
.section-title>p:not(.eyebrow){font-size:15px!important;line-height:1.7!important;color:#7a6650!important;max-width:620px;margin:0 auto!important}
.hero .eyebrow{font-size:14px!important;letter-spacing:4px!important}
@media(max-width:620px){main .eyebrow,main section .eyebrow{font-size:11px!important;letter-spacing:2.5px!important}main section:not(.hero) h2,.section-title h2,#about .about-copy h2{font-size:28px!important}.section-title>p:not(.eyebrow){font-size:14px!important}}

/* Hero background slideshow: non-veg and veg feasts crossfade automatically, no controls. */
.hero-visual .hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0}
.hero-visual .hero-art.is-active{opacity:1}
.hero-visual:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(20,12,6,.88) 0%,rgba(20,12,6,.62) 38%,rgba(20,12,6,.18) 70%,rgba(20,12,6,.05) 100%)}
.hero-visual .hero-fx,.hero-visual .hero-smoke{z-index:2}

.hero-visual .hero-veg-thali{object-position:center 72%!important}
.hero-visual .hero-nonveg-fish{object-position:center 60%!important}
.hero-visual .hero-veg-leaf{object-position:center 55%!important}

/* Show the new hero photos whole (no heavy crop): fit to height on the right, dark area left for text. */
.hero-visual .hero-veg-thali,.hero-visual .hero-nonveg-fish,.hero-visual .hero-veg-leaf{object-fit:contain!important;object-position:right center!important;background:radial-gradient(ellipse at 75% 50%,#3a2414 0%,#1a100a 70%)}

/* Blended hero slides: blurred copy fills the frame, sharp photo sits centre-right with feathered edges. */
.hero-visual .hero-blend{position:absolute;inset:0;overflow:hidden;background:none!important}
.hero-blend .hero-blur{position:absolute;inset:-40px;background-size:cover;background-position:center;filter:blur(28px) brightness(.55) saturate(1.2);transform:scale(1.1)}
.hero-blend img{position:absolute;top:0;bottom:0;left:38%;right:0;width:62%;height:100%;object-fit:cover;object-position:center;-webkit-mask-image:radial-gradient(ellipse 70% 85% at 55% 50%,#000 55%,transparent 100%);mask-image:radial-gradient(ellipse 70% 85% at 55% 50%,#000 55%,transparent 100%)}
.hero-blend.hero-veg-thali img{object-position:center 70%}
@media(max-width:760px){.hero-blend img{left:0;width:100%;-webkit-mask-image:linear-gradient(180deg,transparent,#000 25%,#000 80%,transparent);mask-image:linear-gradient(180deg,transparent,#000 25%,#000 80%,transparent)}}

/* Blended slides: photo centred across the hero, edges feathered so no visible column line. */
.hero-blend img{left:0!important;right:0!important;width:100%!important;object-position:center 50%;
-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 22%,#000 48%,#000 85%,transparent 100%),linear-gradient(180deg,transparent 0%,#000 14%,#000 86%,transparent 100%);
-webkit-mask-composite:source-in;
mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 22%,#000 48%,#000 85%,transparent 100%),linear-gradient(180deg,transparent 0%,#000 14%,#000 86%,transparent 100%);
mask-composite:intersect}
.hero-blend.hero-veg-thali img{object-position:center 72%}

/* Blended slides: whole photo at natural proportions, centred right of the text, every edge feathered. */
.hero-blend img{left:62%!important;right:auto!important;width:auto!important;max-width:none;height:100%!important;transform:translateX(-50%);object-fit:cover;
-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 22%,#000 78%,transparent 100%),linear-gradient(180deg,transparent 0%,#000 12%,#000 88%,transparent 100%);
mask-image:linear-gradient(90deg,transparent 0%,#000 22%,#000 78%,transparent 100%),linear-gradient(180deg,transparent 0%,#000 12%,#000 88%,transparent 100%)}
@media(max-width:760px){.hero-blend img{left:50%!important}}

/* Blended slides fill the whole hero like the biryani photo; left side fades under the text. */
.hero-blend img{left:0!important;right:0!important;width:100%!important;height:100%!important;transform:none!important;object-fit:cover;object-position:center 45%;
-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,.6) 25%,#000 50%);mask-image:linear-gradient(90deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,.6) 25%,#000 50%)}
.hero-blend.hero-nonveg-fish img{object-position:center 58%}
.hero-blend.hero-veg-thali img{object-position:center 66%}

.contact-email{display:block;margin:6px 0 18px;font-size:16px;font-weight:600;color:#df301c;word-break:break-all}
.contact-email:hover{color:#ff9100}

.form-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.email-button{background:transparent!important;color:#df301c!important;border:2px solid #df301c!important}
.email-button:hover{background:#df301c!important;color:#fff1d1!important}

.event-viewport{cursor:grab;touch-action:pan-y;user-select:none}
.event-viewport.dragging{cursor:grabbing}
.event-viewport img{pointer-events:none;-webkit-user-drag:none}

#about .about-images>.about-photo img{object-position:30% 20%!important}

#about .about-images>.about-photo img{object-position:86% 18%!important}

/* Hero: no zoom; veg/fish slides graded and vignetted so they sit in the scene like the biryani photo. */
.hero-visual .hero-art{transform:none}
.hero-blend img{filter:brightness(.72) contrast(1.08) saturate(1.05) sepia(.18);
-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.35) 30%,#000 58%,#000 92%,rgba(0,0,0,.7) 100%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.35) 30%,#000 58%,#000 92%,rgba(0,0,0,.7) 100%)}
.hero-blend .hero-blur{filter:blur(34px) brightness(.35) saturate(1.1) sepia(.25)}
.hero-blend:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 75% 90% at 70% 50%,transparent 45%,rgba(20,12,6,.75) 100%),linear-gradient(180deg,rgba(20,12,6,.45) 0%,transparent 22%,transparent 78%,rgba(20,12,6,.55) 100%)}

/* Veg/fish slides: whole photo on the right at natural proportions, left edge blending into the dark. */
.hero-blend img{left:auto!important;right:0!important;width:auto!important;max-width:70%;height:100%!important;transform:none!important;object-fit:cover;object-position:center 60%;
-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.5) 18%,#000 40%),linear-gradient(180deg,transparent 0%,#000 10%,#000 90%,transparent 100%);
mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.5) 18%,#000 40%),linear-gradient(180deg,transparent 0%,#000 10%,#000 90%,transparent 100%);
-webkit-mask-composite:source-in;mask-composite:intersect}
.hero-blend.hero-veg-thali img{object-position:center 75%}
@media(max-width:760px){.hero-blend img{max-width:100%;left:50%!important;right:auto!important;transform:translateX(-50%)!important}}
.hero-visual .hero-art{transform-origin:70% 50%}

/* Nudge the veg/fish hero photos a little left. */
.hero-blend img{right:7%!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.5) 18%,#000 40%,#000 85%,transparent 100%),linear-gradient(180deg,transparent 0%,#000 10%,#000 90%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.5) 18%,#000 40%,#000 85%,transparent 100%),linear-gradient(180deg,transparent 0%,#000 10%,#000 90%,transparent 100%)}
@media(max-width:760px){.hero-blend img{right:auto!important}}

/* Header: nav links and Book Catering share one centre line. */
.header-links{display:flex!important;align-items:center!important;height:100%}
.header nav{display:flex;align-items:center!important;height:100%;margin:0!important}
.header nav a{display:inline-flex!important;align-items:center!important;height:42px!important;min-height:0!important;padding:0!important;line-height:1!important}
.header .booking-button{display:inline-flex!important;align-items:center!important;height:42px!important;min-height:0!important;padding:0 22px!important;margin:0!important;line-height:1!important;align-self:center!important;transform:none}

/* Veg/fish slides: clean photo like the biryani slide — no blur haze or heavy edge fading, placed further left. */
.hero-blend .hero-blur,.hero-blend:after{display:none!important}
.hero-blend{background:#1a100a!important}
.hero-blend img{right:14%!important;max-width:62%;filter:brightness(.92) contrast(1.05)!important;
-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 6%,#000 94%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 6%,#000 94%,transparent 100%)}
@media(max-width:760px){.hero-blend img{right:auto!important;max-width:100%}}

/* Flying chef mascot: one image split into head, arms, body and legs layers so each part can move. */
.chef-mascot{position:fixed;left:0;top:0;width:68px;height:161px;z-index:90;pointer-events:none;filter:drop-shadow(0 8px 10px rgba(60,30,10,.25));will-change:transform}
.chef-mascot i{position:absolute;inset:0;background:url('assets/chef-mascot.webp') center/100% 100% no-repeat}
.chef-mascot .cm-body{clip-path:polygon(22% 40%,80% 40%,82% 82%,18% 82%)}
.chef-mascot .cm-head{clip-path:polygon(8% 0,95% 0,95% 43%,8% 43%);transform-origin:50% 42%}
.chef-mascot .cm-arm-l{clip-path:polygon(0 38%,30% 40%,30% 64%,0 64%);transform-origin:26% 44%}
.chef-mascot .cm-arm-r{clip-path:polygon(72% 40%,100% 38%,100% 64%,72% 64%);transform-origin:76% 44%}
.chef-mascot .cm-leg-l{clip-path:polygon(14% 80%,50% 80%,50% 100%,14% 100%);transform-origin:35% 80%}
.chef-mascot .cm-leg-r{clip-path:polygon(50% 80%,88% 80%,88% 100%,50% 100%);transform-origin:65% 80%}
@media(max-width:620px){.chef-mascot{width:48px;height:114px}}
@media(prefers-reduced-motion:reduce){.chef-mascot{display:none}}

.hero-visual .hero-veg-banana{object-position:right center}

/* Walking chef: small, standing on the bottom edge of the screen. */
.chef-mascot{top:auto!important;bottom:6px;width:34px!important;height:80px!important}
@media(max-width:620px){.chef-mascot{width:28px!important;height:66px!important}}
.hero-visual .hero-veg-feast{object-position:right center}

.chef-mascot .cm-food{position:absolute;left:50%;top:44%;margin:-7px 0 0 -7px;width:14px;height:14px;font-size:13px;line-height:14px;text-align:center;font-weight:400;filter:drop-shadow(0 2px 2px rgba(0,0,0,.25))}
.chef-mascot .cm-magic{position:absolute;left:50%;top:6%;width:30px;height:20px;margin-left:-15px;border-radius:50%;background:radial-gradient(circle,rgba(255,210,120,.7),rgba(255,145,0,0) 70%);opacity:.4;transform-origin:center}
.chef-mascot .cm-magic{top:34%!important}
.hero-visual img.hero-nonveg-fish{object-position:right center!important;object-fit:cover!important}

/* ============================================================
   MOBILE LAYOUT (320px – 768px). Desktop styles above are untouched.
   ============================================================ */
@media (max-width:768px){
  html,body{overflow-x:clip;max-width:100%}
  html{scroll-padding-top:64px!important}
  img{max-width:100%}
  main>section,footer{overflow-x:clip}
  .wrap{width:auto!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;margin-left:auto;margin-right:auto;box-sizing:border-box}

  /* Header + hamburger menu */
  .header{height:64px!important;padding:0 16px!important;gap:10px!important}
  .header .brand{gap:8px!important;min-width:0}
  .header .brand-logo{width:40px!important;height:40px!important}
  .header .brand-name{font-size:20px!important}
  .header .brand-name small{font-size:7px!important;letter-spacing:1.4px!important;margin-top:3px!important}
  .header-links{gap:8px!important;height:auto!important}
  .header .booking-button{height:34px!important;padding:0 12px!important;font-size:11px!important}
  .header .nav-toggle{display:grid!important;width:34px!important;height:34px!important;font-size:16px!important}
  .header nav{display:none!important;position:absolute!important;top:calc(100% + 6px)!important;left:12px!important;right:12px!important;height:auto!important;
    flex-direction:column!important;align-items:stretch!important;gap:2px!important;padding:10px 18px!important;border-radius:14px;
    background:rgba(37,22,13,.97)!important;border:1px solid rgba(255,145,0,.35)!important;box-shadow:0 14px 30px rgba(0,0,0,.35)!important;max-height:calc(100dvh - 80px);overflow-y:auto}
  .header nav.open{display:flex!important}
  .header nav a{height:auto!important;padding:11px 2px!important;font-size:15px!important;border-bottom:1px solid rgba(255,241,209,.08)}
  .header nav a:last-child{border-bottom:0}

  /* Section dividers and headers */
  .section-divider span,.footer-divider span{width:28px!important;height:28px!important;font-size:12px!important}
  main .eyebrow,main section .eyebrow{font-size:10.5px!important;letter-spacing:2.4px!important;margin-bottom:8px!important;gap:8px!important}
  main .section-title .eyebrow:before,main .section-title .eyebrow:after{width:20px}
  main section:not(.hero) h2,.section-title h2,#about .about-copy h2{font-size:clamp(23px,6.6vw,30px)!important;margin-bottom:8px!important}
  .section-title{padding:0 4px!important}
  .section-title>p:not(.eyebrow){font-size:13px!important;line-height:1.65!important}

  /* Hero */
  .hero{min-height:560px!important;height:100svh!important;max-height:760px}
  .hero-inner{width:auto!important;padding:0 16px!important;margin-top:40px!important}
  .hero .eyebrow{font-size:10.5px!important;letter-spacing:2.6px!important}
  .hero h1{font-size:clamp(32px,9.6vw,46px)!important;line-height:1.08!important;margin-bottom:14px!important}
  .hero-description{font-size:13px!important;line-height:1.7!important;max-width:320px}
  .hero-description br{display:none}
  .hero .hero-actions{gap:10px!important;margin-top:22px!important}
  .hero .hero-actions .button{height:42px!important;min-height:42px!important;padding:0 18px!important;font-size:12.5px!important}
  .hero .watch-button{height:42px!important;font-size:12.5px!important;padding:0 16px 0 4px!important}
  .hero .watch-button .play{width:32px!important;height:32px!important}
  .hero-note{display:none!important}
  .hero-visual:after{background:linear-gradient(180deg,rgba(20,12,6,.55) 0%,rgba(20,12,6,.78) 55%,rgba(20,12,6,.9) 100%)!important}
  .hero-visual .hero-art{object-position:70% center!important}

  /* Why choose: 2-column icon grid */
  #why{padding-top:48px!important;padding-bottom:48px!important}
  .benefits{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:26px 10px!important;margin-top:28px!important;padding-top:10px!important}
  .benefits article{border:0!important;padding:0 6px!important}
  .benefits article:last-child{grid-column:1/-1}
  .benefits .icon{width:56px!important;height:56px!important;border-radius:18px!important;margin-bottom:12px!important}
  .benefits .icon:after{inset:-5px!important;border-radius:22px!important}
  .benefits .icon svg{width:26px!important;height:26px!important}
  .benefits h3{font-size:13px!important;min-height:0!important}
  .benefits p{font-size:11.5px!important}
  .leaves{width:70px!important;height:auto!important}

  /* About: stacked */
  #about{padding-top:48px!important;padding-bottom:48px!important;min-height:0!important}
  #about .about-layout{grid-template-columns:1fr!important;gap:22px!important;width:auto!important;padding:0 16px}
  #about .about-images>.about-photo{height:260px!important;min-height:0!important;flex:none!important}
  #about .about-copy>p:not(.eyebrow){font-size:13px!important}
  #about .about-value{gap:10px!important;padding:10px 0!important}
  .about-value h3{font-size:17px!important}
  .about-value p{font-size:12px!important}
  #about .about-copy .button{font-size:12px!important;padding:10px 16px!important}

  /* Services carousel */
  #services.events-section{padding:48px 0!important;min-height:0!important}
  .event-viewport{margin-top:22px!important;padding:10px 0 16px!important}
  .events-section .event-grid,.event-viewport .event-grid{gap:14px!important}
  .events-section .event-card,.event-viewport .event-card{flex:0 0 min(78vw,270px)!important}
  .events-section .event-image,.event-viewport .event-image{height:160px!important}
  .event-viewport .event-body,.event-body{padding:14px 14px 16px!important}
  .event-viewport .event-body h3,.events-section .event-body h3{font-size:20px!important}
  .event-body p,.event-viewport .event-body p{font-size:12px!important}
  .event-body li,.event-viewport .event-body li{font-size:11.5px!important}
  .event-tag{font-size:9.5px!important;padding:4px 9px!important}
  .event-card:before{font-size:15px;top:-8px;right:-6px}
  .event-card:after{font-size:14px;bottom:-8px;left:-6px}
  .events-cta{margin-top:18px!important;padding:0 16px}
  .events-cta p{font-size:12.5px!important}

  /* Menu */
  #menu{padding-top:48px!important;padding-bottom:48px!important;min-height:0!important}
  .menu-layout{display:grid!important;grid-template-columns:1fr!important;gap:20px!important}
  .menu-feast-frame{height:210px!important;grid-column:auto!important}
  .menu-copy{text-align:left}
  .menu-copy p:not(.eyebrow){font-size:13px!important}
  .menu-categories{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;border:0!important;padding:0!important}
  .menu-categories>button{padding:8px!important;gap:8px!important;text-align:left}
  .menu-categories img{width:44px!important;height:44px!important}
  .menu-selection{margin-top:36px!important}
  .menu-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin-top:20px!important}
  .menu-preview-image{height:118px!important}
  .menu-preview-copy{padding:12px!important}
  .menu-preview-copy h3{font-size:16px!important;margin:6px 0 6px!important}
  .menu-preview-copy p{font-size:11px!important;line-height:1.55!important;margin-bottom:0!important}
  .menu-preview-copy>small{font-size:7.5px!important}

  /* Testimonials */
  #testimonials{padding-top:48px!important;padding-bottom:48px!important}
  .testimonial-cards{grid-template-columns:1fr!important;gap:22px!important;display:grid!important}
  .testimonial-cards article{padding:22px 18px!important}
  .testimonial-cards h3{font-size:19px!important}
  .testimonial-cards p{font-size:12.5px!important}
  .rating-summary{font-size:12px!important}

  /* Contact + form */
  #contact{padding-top:48px!important;padding-bottom:48px!important;min-height:0!important}
  .contact-layout{display:grid!important;grid-template-columns:1fr!important;gap:26px!important}
  #contact .phone{font-size:24px!important}
  .contact-email{font-size:14px!important}
  #contact form{padding:20px 16px!important;border-radius:16px!important}
  #contact form h3,#contact form h2{font-size:22px!important}
  .form-grid{grid-template-columns:1fr!important;gap:12px!important}
  #contact input,#contact select,#contact textarea{font-size:14px!important;min-height:42px}
  .form-actions{flex-direction:column;align-items:stretch!important;gap:10px!important}
  .form-actions .button{width:100%;justify-content:center;height:44px;min-height:44px!important;font-size:13px!important}

  /* Footer */
  footer.site-footer{padding-top:44px!important}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:26px 18px!important;padding:0 16px 30px!important;width:auto!important}
  .footer-about,.footer-grid>.footer-col:last-child{grid-column:1/-1}
  .footer-col h4{font-size:19px!important;margin-bottom:12px!important}
  .footer-about p{font-size:12.5px!important}
  .footer-links a{font-size:13px!important}
  .footer-contact li{font-size:12.5px!important}
  .footer-bottom{flex-direction:column;text-align:center;gap:8px!important;padding:14px 16px!important}
  .footer-bottom small{font-size:11px!important}

  /* Decorative layers stay inside the screen */
  .hero-stars,.hero-fx,.hero-smoke{overflow:hidden}
}

/* Small phones (320px – 480px) */
@media (max-width:480px){
  .header .brand-name{font-size:17px!important}
  .header .brand-name small{display:none}
  .header .brand-logo{width:36px!important;height:36px!important}
  .header .booking-button{padding:0 10px!important;font-size:10.5px!important}
  .hero h1{font-size:clamp(29px,9.4vw,36px)!important}
  .hero .hero-actions{flex-direction:column;align-items:flex-start}
  .menu-preview-grid{gap:10px!important}
  .menu-preview-image{height:100px!important}
  .footer-grid{grid-template-columns:1fr!important}
}

/* Very small phones (≤360px) */
@media (max-width:360px){
  .header .booking-button{display:none!important}
  .benefits{grid-template-columns:1fr!important}
  .menu-preview-grid{grid-template-columns:1fr!important}
  .menu-categories{grid-template-columns:1fr!important}
  .hero h1{font-size:28px!important}
}

/* Mobile refinements (≤768px only). */
@media (max-width:768px){
  /* Hero background: still image, covering the whole hero, no zoom. */
  .hero-visual .hero-art,.hero-visual img.hero-art{transform:none!important;rotate:none!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:65% center!important;inset:0!important;left:0!important;right:0!important;max-width:none!important}

  /* Footer: one column, everything stacked. */
  .footer-grid{grid-template-columns:1fr!important;gap:24px!important}
  .footer-about,.footer-grid>.footer-col:last-child{grid-column:auto!important}
  .footer-about p{max-width:none!important}

  /* Images scaled down for phone screens. */
  #about .about-images>.about-photo{height:220px!important}
  .menu-feast-frame{height:180px!important}
  .events-section .event-image,.event-viewport .event-image{height:140px!important}
  .menu-preview-image{height:100px!important}
  .menu-categories img{width:40px!important;height:40px!important}
  .header .brand-logo{width:36px!important;height:36px!important}
  footer .brand-logo{width:52px!important;height:52px!important}
  .review-badge{width:22px!important;height:22px!important;font-size:11px!important}
}
@media (max-width:480px){
  #about .about-images>.about-photo{height:190px!important}
  .menu-feast-frame{height:160px!important}
  .events-section .event-image,.event-viewport .event-image{height:128px!important}
  .menu-preview-image{height:90px!important}
}

/* Catchy mobile lines: hidden on desktop, replace the long paragraphs on phones. */
.m-catchy{display:none}
@media (max-width:768px){
  .m-long,.testimonial-note,.event-body>p,.menu-preview-copy p,.menu-planning-note,.about-image-caption{display:none!important}
  .m-catchy{display:block;margin:6px 0 14px;font-size:14px;line-height:1.5;font-weight:500;color:#7a6650}
  .section-title .m-catchy{text-align:center;margin:4px auto 0}
  .hero .m-catchy{color:#fff1d1;font-size:15px;max-width:300px;margin:4px 0 0}
  footer .m-catchy{color:#6b5a48;font-size:13px}
  .events-cta .m-catchy{text-align:center;margin:0}

  /* Smaller nav and Book Catering button; no borders on the menu box or toggle. */
  .header .booking-button{height:30px!important;padding:0 10px!important;font-size:10.5px!important;border-radius:20px!important}
  .header .nav-toggle{width:30px!important;height:30px!important;font-size:14px!important;border:0!important;background:rgba(255,145,0,.16)!important}
  .header nav{border:0!important;padding:6px 16px!important}
  .header nav a{font-size:13.5px!important;padding:9px 2px!important}
}

/* Mobile: Why-choose benefits in one swipeable row; menu categories as a 2 × 2 grid. */
@media (max-width:768px){
  .benefits{display:flex!important;grid-template-columns:none!important;gap:14px!important;overflow-x:auto;scroll-snap-type:x mandatory;padding:12px 4px 10px!important;margin:22px -16px 0!important;padding-left:16px!important;padding-right:16px!important;scrollbar-width:none}
  .benefits::-webkit-scrollbar{display:none}
  .benefits article,.benefits article:last-child{flex:0 0 112px;grid-column:auto!important;scroll-snap-align:start;padding:0!important}
  .benefits .icon{width:50px!important;height:50px!important;border-radius:16px!important}
  .benefits .icon svg{width:22px!important;height:22px!important}
  .benefits h3{font-size:12px!important}
  .benefits p{font-size:10.5px!important}
  .menu-categories{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .menu-categories>button{flex-direction:column!important;align-items:center!important;text-align:center!important;padding:8px 4px!important;gap:6px!important}
  .menu-categories>button *{text-align:center!important}
}
@media (max-width:360px){
  .menu-categories{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .benefits article,.benefits article:last-child{flex-basis:100px}
}

/* Mobile menu dish cards: 3 per row on larger phones/small tablets, 2 per row on phones. */
@media (max-width:768px){
  .menu-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
  .menu-preview-image{height:110px!important}
  .menu-preview-copy{padding:10px!important}
  .menu-preview-copy h3{font-size:14.5px!important;line-height:1.2!important}
}
@media (max-width:560px){
  .menu-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .menu-preview-image{height:100px!important}
}
@media (max-width:360px){
  .menu-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .menu-preview-image{height:84px!important}
  .menu-preview-copy h3{font-size:13px!important}
}

/* Mobile: compact review cards with a light tap highlight, shorter map, footer in columns. */
@media (max-width:768px){
  .testimonial-cards{gap:16px!important}
  .testimonial-cards article{padding:16px 14px!important;border-radius:14px!important}
  .testimonial-cards h3{font-size:17px!important;margin-bottom:6px!important}
  .testimonial-cards p{font-size:12px!important;line-height:1.6!important}
  .testimonial-cards article>small{font-size:9px!important;margin-top:10px!important}
  .review-badge{top:-10px!important;right:12px!important}
  .testimonial-cards article{-webkit-tap-highlight-color:transparent;transition:background .25s,border-color .25s,box-shadow .25s}
  .testimonial-cards article:active,.testimonial-cards article.is-touched,.testimonial-cards article:hover{background:#ffeccb!important;border-color:rgba(255,145,0,.45)!important;box-shadow:0 10px 24px rgba(223,48,28,.12)!important}

  .contact-map,.contact-map iframe,#contact iframe{height:180px!important;min-height:0!important;max-height:180px!important}

  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px 16px!important}
  .footer-about,.footer-grid>.footer-col:last-child{grid-column:1/-1!important}
}
@media (max-width:480px){
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .footer-links a{font-size:12.5px!important}
}

/* Mobile hero: show the food (right side of each photo) brightly; lighter shading; slimmer header. */
@media (max-width:768px){
  .header{height:52px!important}
  .header .brand-logo{width:32px!important;height:32px!important}
  .header .brand-name{font-size:17px!important}
  html{scroll-padding-top:52px!important}
  .hero-visual .hero-art,.hero-visual img.hero-art{object-position:82% center!important;filter:none!important}
  .hero-visual:after{background:linear-gradient(180deg,rgba(20,12,6,.72) 0%,rgba(20,12,6,.45) 45%,rgba(20,12,6,.2) 70%,rgba(20,12,6,.55) 100%)!important}
  .hero:before{opacity:.35!important}
  .hero-fx .light-sweep{display:none}
}

/* Mobile: all five Why-choose items fit in one row (no sideways scroll). */
@media (max-width:768px){
  .benefits{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;overflow:visible!important;gap:6px!important;margin:20px 0 0!important;padding:10px 0 4px!important}
  .benefits article,.benefits article:last-child{flex:none!important;min-width:0;padding:0!important;text-align:center}
  .benefits .icon{width:clamp(36px,10vw,52px)!important;height:clamp(36px,10vw,52px)!important;border-radius:12px!important;margin:0 auto 8px!important}
  .benefits .icon:after{inset:-4px!important;border-radius:15px!important}
  .benefits .icon svg{width:55%!important;height:55%!important}
  .benefits h3{font-size:clamp(8.5px,2.5vw,12px)!important;line-height:1.25!important;margin:0!important;word-break:break-word}
  .benefits p{font-size:clamp(7.5px,2.1vw,10.5px)!important;line-height:1.3!important;margin-top:3px!important}
}
@media (max-width:420px){
  .benefits p{display:none!important}
}

/* Mobile: the four menu categories in one compact row. */
@media (max-width:768px){
  .menu-categories{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;margin-top:4px!important}
  .menu-categories>button{padding:4px 2px!important;gap:5px!important;min-width:0}
  .menu-categories img{width:clamp(36px,11vw,52px)!important;height:clamp(36px,11vw,52px)!important}
  .menu-categories strong,.menu-categories b,.menu-categories h3,.menu-categories>button>span>*:first-child{font-size:clamp(9px,2.6vw,12px)!important;line-height:1.2!important;word-break:break-word}
  .menu-categories small,.menu-categories>button>span>*:last-child:not(:first-child){font-size:clamp(7.5px,2.1vw,10px)!important;line-height:1.25!important}
  .menu-copy .button{height:38px!important;min-height:0!important;padding:0 16px!important;font-size:12px!important;gap:12px!important}
}
@media (max-width:420px){
  .menu-categories small,.menu-categories>button>span>*:last-child:not(:first-child){display:none!important}
}

/* Mobile hero buttons: smaller, side by side. */
@media (max-width:768px){
  .hero .hero-actions{flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:8px!important}
  .hero .hero-actions .button{height:36px!important;min-height:36px!important;padding:0 12px!important;font-size:11px!important;gap:8px!important;white-space:nowrap}
  .hero .watch-button{height:36px!important;padding:0 12px 0 3px!important;font-size:11px!important;gap:6px!important;white-space:nowrap}
  .hero .watch-button .play{width:28px!important;height:28px!important;font-size:9px!important}
}
@media (max-width:360px){
  .hero .hero-actions .button,.hero .watch-button{font-size:10px!important;padding-left:9px!important;padding-right:9px!important}
  .hero .watch-button{padding-left:3px!important}
  .hero .watch-button .play{width:24px!important;height:24px!important}
}

/* Mobile: Why-choose row evenly aligned and fully inside the screen. */
@media (max-width:768px){
  #why .benefits{width:100%!important;max-width:100%!important;box-sizing:border-box!important;margin:18px 0 0!important;padding:8px 10px 0!important;align-items:start!important;justify-items:center}
  #why .benefits article{width:100%;display:flex!important;flex-direction:column;align-items:center;border:0!important}
  #why .benefits .icon{transform:none!important;margin:0 auto 8px!important}
  #why .benefits .icon svg{transform:none!important}
  #why .benefits h3{min-height:3.75em;display:flex;align-items:flex-start;justify-content:center;text-align:center}
}

/* Mobile hero: text near the top, the two buttons sitting just above the bottom of the hero. */
@media (max-width:768px){
  .hero{display:block!important}
  .hero .hero-inner{position:absolute!important;inset:0!important;margin:0!important;padding:84px 16px 44px!important;display:flex!important;flex-direction:column;justify-content:flex-start;box-sizing:border-box;z-index:3}
  .hero .hero-actions{margin-top:auto!important;justify-content:center!important;width:100%}
}

/* Mobile: Why-choose labels as single words, evenly spaced. */
@media (max-width:768px){
  #why .benefits{grid-template-columns:repeat(5,1fr)!important;column-gap:4px!important}
  #why .benefits h3{font-size:0!important;min-height:0!important;margin-top:2px!important;display:block!important;letter-spacing:0}
  #why .benefits h3 *{display:none!important}
  #why .benefits h3::after{content:attr(data-short);display:block;font-size:clamp(10px,2.9vw,13px);font-weight:700;line-height:1.2;color:#2d2416;white-space:nowrap;text-align:center}
  #why .benefits p{display:none!important}
}

/* Mobile: keep the CATERING SERVICE tagline under the brand name. */
@media (max-width:768px){.header .brand-name{display:flex!important;flex-direction:column;line-height:1.05!important}.header .brand-name small{display:block!important;font-size:7px!important;letter-spacing:1.6px!important;margin-top:2px!important;white-space:nowrap}}
@media (max-width:360px){.header .brand-name small{font-size:6px!important;letter-spacing:1.1px!important}}

/* Mobile: cancel the old tablet offsets on items 4 and 5 so all five are evenly spaced. */
@media (max-width:768px){#why .benefits article,#why .benefits article:nth-child(4),#why .benefits article:nth-child(5){grid-column:auto!important;margin:0!important;width:100%!important}}

/* Mobile header: Book Catering always visible beside the menu button; ☰ turns into ✕ when the menu is open. */
@media (max-width:768px){
  .header .booking-button{display:inline-flex!important;height:28px!important;padding:0 10px!important;font-size:10px!important;white-space:nowrap}
  .header .nav-toggle{position:relative;color:#ff9100!important}
  .header .nav-toggle[aria-expanded="true"]{font-size:0!important;background:#ff9100!important}
  .header .nav-toggle[aria-expanded="true"]::after{content:'\2715';font-size:14px;line-height:1;color:#1e140b;font-weight:700}
}
@media (max-width:360px){
  .header .booking-button{display:inline-flex!important;padding:0 8px!important;font-size:9px!important;height:26px!important}
  .header .brand-name{font-size:15px!important}
  .header .brand-logo{width:28px!important;height:28px!important}
}

/* Mobile: leaf sprigs tucked into the section corners, clear of headings and text. */
@media (max-width:768px){
  .leaves{width:52px!important;height:auto!important;opacity:.75;z-index:0!important}
  .leaves.left{top:4px!important;left:-14px!important;right:auto!important;bottom:auto!important}
  .leaves.right{top:4px!important;right:-14px!important;left:auto!important;bottom:auto!important}
  .leaves.right.bottom,.leaves.left.bottom{top:auto!important;bottom:4px!important}
  main section .section-title,main section .menu-copy,main section .about-copy{position:relative;z-index:2}
}

/* Mobile form: WhatsApp and Email buttons side by side. */
@media (max-width:768px){.form-actions{flex-direction:row!important;flex-wrap:nowrap!important;gap:8px!important}.form-actions .button{flex:1 1 0;width:auto!important;min-width:0;height:40px!important;min-height:40px!important;padding:0 8px!important;font-size:11.5px!important;gap:6px!important;white-space:nowrap}}
@media (max-width:360px){.form-actions .button{font-size:10.5px!important;padding:0 6px!important}}

/* Mobile form buttons: smaller, centred labels without the arrow/envelope. */
@media (max-width:768px){.form-actions .button{font-size:10.5px!important;font-weight:700!important;letter-spacing:0!important;justify-content:center!important;height:38px!important;min-height:38px!important}.form-actions .button span{display:none!important}}
@media (max-width:360px){.form-actions .button{font-size:9.5px!important}}

/* Mobile: Book Catering moves from the header bar into the menu. Desktop keeps the header button. */
.header nav .nav-book{display:none!important}
@media (max-width:768px){.header .booking-button{display:none!important}.header nav .nav-book{display:flex!important;justify-content:center;margin:8px 0 6px;height:38px!important;padding:0 16px!important;border-radius:22px;background:#ff9100;color:#1e140b!important;font-weight:700;font-size:13px!important;border-bottom:0!important}.header nav .nav-book:after{display:none!important}}

/* Mobile hero: shorter so the photos crop less; buttons sit right at the bottom edge. */
@media (max-width:768px){
  .hero{height:clamp(440px,128vw,640px)!important;min-height:0!important;max-height:none!important}
  .hero .hero-inner{padding:72px 16px 16px!important}
  .hero-visual:after{background:linear-gradient(180deg,rgba(20,12,6,.75) 0%,rgba(20,12,6,.45) 40%,rgba(20,12,6,.1) 70%,rgba(20,12,6,.25) 100%)!important}
}

/* Mobile: hero label in white. */
@media (max-width:768px){.hero .eyebrow{color:#fff!important}}

/* Mobile: hero buttons right at the bottom edge. */
@media (max-width:768px){.hero .hero-inner{padding-bottom:6px!important}.hero .hero-actions{margin-bottom:0!important;padding-bottom:0!important}}

/* Mobile: white menu (☰) icon. */
@media (max-width:768px){.header .nav-toggle{color:#fff!important}}

@media (max-width:768px){.falling-leaf{width:14px!important;height:18px!important;opacity:.7}}

/* Mobile: slimmer header bar. */
@media (max-width:768px){.header{height:46px!important}.header .brand-logo{width:30px!important;height:30px!important}.header .brand-name{font-size:16px!important}.header .brand-name small{font-size:6.5px!important}.header .nav-toggle{width:28px!important;height:28px!important}html{scroll-padding-top:46px!important}.header nav{top:calc(100% + 4px)!important}}

/* Mobile hero: no steel-bowl slide; rating line under the tagline. */
.hero-rating{display:none}
@media (max-width:768px){.hero-visual .hero-veg-feast{display:none!important}.hero-rating{display:inline-flex;align-items:center;gap:6px;margin:12px 0 0;padding:6px 12px;border-radius:20px;background:rgba(20,12,6,.55);border:1px solid rgba(255,145,0,.4);color:#fff1d1;font-size:11.5px;width:max-content;max-width:100%}.hero-rating .hero-stars-row{color:#ff9100;letter-spacing:1px;font-size:12px}.hero-rating strong{color:#fff}}

/* Mobile: hero buttons sit on the hero's bottom edge, half over the next section. */
@media (max-width:768px){.hero{overflow:visible!important;z-index:5!important}.hero .hero-inner{padding-bottom:0!important}.hero .hero-actions{transform:translateY(50%)!important}}

/* Mobile: pin the two hero buttons near the bottom of the hero; text and rating stay at the top. */
@media (max-width:768px){.hero .hero-inner{position:absolute!important;inset:0!important;height:auto!important}.hero .hero-actions{position:absolute!important;left:16px!important;right:16px!important;bottom:18px!important;margin:0!important;transform:none!important;width:auto!important;justify-content:center!important}}

/* Mobile: anchor the hero buttons to the hero itself (bottom edge), independent of the text block. */
@media (max-width:768px){
  .hero{position:relative!important}
  .hero .hero-inner{position:static!important;inset:auto!important;height:auto!important;display:block!important;padding:68px 16px 0!important;margin:0!important}
  .hero .hero-inner>*{position:relative;z-index:3}
  .hero .hero-inner>.hero-actions{position:absolute!important;z-index:4!important;left:16px!important;right:16px!important;bottom:20px!important;top:auto!important;margin:0!important;transform:none!important;display:flex!important;flex-direction:row!important;justify-content:center!important}
}

@media (max-width:768px){.hero .m-catchy{font-size:13px!important;line-height:1.6!important;max-width:330px!important;font-weight:400!important;color:#f3e6cc!important}}

/* Mobile hero: buttons clear of the next section; rating as plain text (no box). */
@media (max-width:768px){.hero .hero-inner>.hero-actions{bottom:40px!important}.hero{height:clamp(480px,136vw,660px)!important}.hero-rating{background:none!important;border:0!important;padding:0!important;border-radius:0!important;margin-top:10px!important}}

/* Mobile: leaf sprigs sit flush against the screen edges. */
@media (max-width:768px){.leaves.left{left:0!important}.leaves.right{right:0!important}}

/* Mobile hero: buttons aligned left with the text; photos slightly faded. */
@media (max-width:768px){.hero .hero-inner>.hero-actions{justify-content:flex-start!important}.hero-visual{opacity:.85}}

/* Mobile: right leaf is a mirror image of the left leaf, flush with the right edge. */
@media (max-width:768px){.leaves.right{transform:rotate(70deg);scale:-1 1;width:52px!important;height:auto!important;right:0!important}.leaves.left{left:0!important}}

/* Mobile menu: Book Catering label always readable on its orange button. */
@media (max-width:768px){.header nav a.nav-book,.header nav a.nav-book:hover,.header nav a.nav-book.active{color:#1e140b!important;text-shadow:none!important;background:#ff9100!important}.header nav a.nav-book .reveal-word,.header nav a.nav-book *{color:#1e140b!important}}

/* Mobile footer: compact spacing and sizes; links wrap inside their column. */
@media (max-width:768px){
  footer.site-footer{padding-top:30px!important}
  .footer-grid{gap:16px 14px!important;padding:0 16px 18px!important}
  footer.site-footer .brand{gap:8px!important;margin-bottom:6px!important}
  footer.site-footer .brand-logo{width:40px!important;height:40px!important}
  footer.site-footer .brand-name{font-size:20px!important}
  footer.site-footer .brand-name small{font-size:7px!important;letter-spacing:1.6px!important}
  footer .m-catchy{margin:2px 0 10px!important;font-size:12px!important}
  .footer-cta{height:32px!important;min-height:0!important;padding:0 14px!important;font-size:11px!important;gap:10px!important}
  .footer-col h4{font-size:16px!important;margin:0 0 8px!important;padding-bottom:6px!important}
  .footer-col h4:after{width:30px!important}
  .footer-links{gap:5px!important}
  .footer-links a{display:inline-block!important;font-size:11.5px!important;line-height:1.4!important;word-spacing:0;white-space:normal}
  .footer-links a:before{display:inline;margin-right:5px;font-size:13px}
  .footer-links .reveal-word{white-space:normal!important}
  .footer-contact{gap:8px!important;margin-bottom:10px!important}
  .footer-contact li{font-size:11.5px!important;line-height:1.5!important;gap:8px!important}
  .footer-contact svg,.footer-map svg{width:15px!important;height:15px!important}
  .footer-map{padding:6px 12px!important;font-size:11px!important}
  .footer-bottom{padding:10px 16px!important;gap:4px!important}
  .footer-bottom small,.footer-bottom a{font-size:10.5px!important}
}

/* Mobile: white text set bold and crisp for stronger contrast. */
@media (max-width:768px){.header .brand-name{color:#fff!important;font-weight:700!important;text-shadow:0 1px 3px rgba(0,0,0,.55)!important;letter-spacing:.2px!important}.header .brand-name small{font-weight:700!important}.header nav a:not(.nav-book){font-weight:700!important;text-shadow:0 1px 3px rgba(0,0,0,.5)!important}.header .nav-toggle{font-weight:700!important}}

/* Mobile: see-through header bar. */
@media (max-width:768px){.header{background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:0!important;box-shadow:none!important}}

/* Mobile: solid cream header (nothing shows through), dark brand text. */
@media (max-width:768px){.header{background:#fff1d1!important;box-shadow:0 2px 10px rgba(60,30,10,.12)!important}.header .brand-name{color:#2d2416!important;text-shadow:none!important}.header .brand-name small{color:#df301c!important;text-shadow:none!important}.header .nav-toggle{color:#df301c!important;background:rgba(223,48,28,.1)!important}}

/* Mobile: slightly larger header text. */
@media (max-width:768px){.header .brand-name{font-size:18px!important}.header .brand-name small{font-size:7.5px!important}.header nav a:not(.nav-book){font-size:15px!important}.header nav a.nav-book{font-size:14px!important}}
@media (max-width:360px){.header .brand-name{font-size:16.5px!important}.header .brand-name small{font-size:6.5px!important}}

/* Mobile: bigger ☰ icon. */
@media (max-width:768px){.header .nav-toggle{width:34px!important;height:34px!important;font-size:20px!important;font-weight:900!important}.header .nav-toggle[aria-expanded="true"]::after{font-size:16px}}

/* Real Google reviews: 3-column grid on desktop, avatar + name + stars header. */
.testimonial-cards{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:26px!important}
.review-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.review-avatar{flex:0 0 auto;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#ff9100,#df301c);color:#fff;font-weight:700;font-size:17px}
.review-card h3{font-family:'Poppins',Arial,sans-serif!important;font-size:16px!important;font-weight:600!important;margin:0!important}
.review-meta{display:block;font-size:12px;color:#7a6650;margin-top:2px}
.review-stars{color:#f5a623;letter-spacing:1px;margin-right:4px}
.review-card p{font-size:13.5px;line-height:1.7;color:#4a3a28}
.footer-owner{font-size:13px;color:#4a3a28;margin:-8px 0 16px}
.footer-owner strong{color:#df301c}

/* Menu: larger "A Taste for Every Palate" photo; dish photos fill their card frames. */
.menu-feast-frame{height:340px!important}
.menu-preview-image{overflow:hidden}
.menu-preview-image img{width:100%!important;height:100%!important;object-fit:cover!important;display:block}
.menu-categories img{object-fit:cover!important;border-radius:50%;flex:0 0 auto}
@media (max-width:980px){.testimonial-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:768px){
  .testimonial-cards{grid-template-columns:1fr!important;gap:14px!important}
  .review-avatar{width:34px;height:34px;font-size:14px}
  .review-card h3{font-size:14px!important}
  .review-card p{font-size:12px!important}
  .menu-feast-frame{height:220px!important}
  .menu-categories img{width:clamp(36px,11vw,52px)!important;height:clamp(36px,11vw,52px)!important}
  .footer-owner{font-size:11.5px;margin:-4px 0 10px}
}
@media (max-width:480px){.menu-feast-frame{height:200px!important}}

/* Crop each dish photo on its food, not the background. */
.menu-preview-image img[src*='chicken-curry']{object-position:center 85%!important;transform:scale(1.25);transform-origin:center 80%}
.menu-preview-image img[src*='mutton-biryani']{object-position:center 45%!important;transform:scale(1.12)}

/* Reviews as an auto-sliding row. */
.review-viewport{overflow:hidden;padding:22px 0 26px;margin-top:10px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.review-viewport .testimonial-cards{display:flex!important;grid-template-columns:none!important;flex-wrap:nowrap!important;gap:24px!important;width:max-content!important;max-width:none!important;padding:0!important;margin:0!important}
.review-viewport .review-card{flex:0 0 340px;margin:0!important}
.review-viewport.manual{overflow-x:auto}
@media (max-width:768px){
  .review-viewport{padding:16px 0 18px}
  .review-viewport .testimonial-cards{gap:14px!important}
  .review-viewport .review-card{flex-basis:min(78vw,280px)}
}

.review-viewport{cursor:grab;touch-action:pan-y;user-select:none}.review-viewport.dragging{cursor:grabbing}
/* Contact address in bold. */
#contact address{font-weight:700!important;color:#2d2416!important;font-style:normal}

/* Owner line: always shown, clearly visible. */
.footer-owner{display:block!important;font-size:14px!important;font-weight:600;color:#2d2416!important;margin:0 0 16px!important}.footer-owner strong{color:#df301c!important;font-weight:700}
@media (max-width:768px){.footer-owner{font-size:12.5px!important;margin:0 0 10px!important}}

/* Mobile: compact enquiry form — two fields per row, slimmer inputs, tighter spacing. */
@media (max-width:768px){
  #contact form{padding:16px 14px!important}
  #contact form h2,#contact form h3{font-size:19px!important;margin-bottom:2px!important}
  #contact form h2+p,#contact form h3+p{font-size:11.5px!important;margin-bottom:10px!important}
  .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px 10px!important}
  .form-grid label{font-size:10.5px!important;gap:4px!important;margin:0!important}
  .form-grid label:has(textarea),.form-grid .full,.form-grid>*:has(textarea){grid-column:1/-1}
  #contact input,#contact select,#contact textarea{min-height:34px!important;height:34px;padding:6px 10px!important;font-size:12.5px!important;border-radius:8px!important}
  #contact select{padding-right:24px!important}
  #contact textarea{height:64px!important;min-height:64px!important}
  .form-actions{margin-top:10px!important}
  .form-note{font-size:10.5px!important;margin-top:8px!important}
}
@media (max-width:360px){
  .form-grid{grid-template-columns:1fr!important}
}

/* Desktop: review slider aligned to the same content width as the header/nav. */
@media (min-width:769px){.review-viewport{width:min(1320px,88%);margin:10px auto 0!important;-webkit-mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent);mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}.review-viewport .testimonial-cards{align-items:stretch!important}}

/* Compact proportions: mobile only; desktop keeps the original full-screen layout. */
@media(max-width:768px){
main section:not(.hero) h2,.section-title h2,#about .about-copy h2,
.events-section .section-title h2,#menu h2,#menu .menu-copy h2{
  font-size:clamp(26px,2.3vw,34px)!important;
  line-height:1.18!important;
}
.section-title>p:not(.eyebrow){font-size:13px!important}
main .eyebrow,main section .eyebrow{font-size:11px!important;letter-spacing:2.5px!important}
.menu-feast-frame{height:260px!important}
}
@media(max-width:768px){
  .hero{height:clamp(440px,118vw,560px)!important}
  .hero h1{font-size:clamp(30px,8vw,40px)!important}
  main section:not(.hero) h2,.section-title h2,#about .about-copy h2,
  .events-section .section-title h2,#menu h2,#menu .menu-copy h2{font-size:25px!important}
  .hero .eyebrow{font-size:10px!important}
  #about,#services.events-section,#menu,#contact{padding-top:36px!important;padding-bottom:36px!important}
  .menu-feast-frame{height:190px!important}
}

/* Keep the desktop booking button and navigation on the same centre line during animations. */
@media (min-width:1181px){.header nav,.header .booking-button{transform:none!important}}

/* Event request stays collapsed until the visitor opens the compact dialog. */
#brief-result[hidden]{display:none!important}
#brief-result{margin-top:14px;padding:0;border:0}
#brief-result #view-request{min-height:36px;padding:8px 18px;font-size:12px}
#request-dialog{box-sizing:border-box;width:calc(100% - 32px);max-width:440px;max-height:80dvh;margin:auto;padding:24px;border:1px solid #ff910066;border-radius:16px;background:#fff1d1;color:#2d2416;overflow:auto}
#request-dialog::backdrop{background:rgba(20,12,6,.65)}
#request-dialog h2{font-size:24px;padding-right:30px;margin:0 0 16px}
#request-dialog .close-dialog{position:absolute;top:10px;right:10px;width:32px;height:32px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#2d2416;font-size:24px;line-height:1}
#request-dialog #brief-text{margin:0;font:12px/1.7 'Poppins',Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}
#request-dialog .request-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
#request-dialog .request-actions .button{min-height:36px;padding:8px 16px;font-size:11px;gap:0}
#request-dialog #copy-status{font-size:11px;margin:10px 0 0}
#request-dialog #copy-status:empty{display:none}
@media(max-width:480px){#request-dialog{padding:20px;max-height:75dvh}#request-dialog h2{font-size:22px}#request-dialog #brief-text{font-size:11px}}

/* Desktop: shorter map with its bottom aligned to the enquiry form. */
@media(min-width:769px){
  #contact .contact-layout{align-items:stretch}
  #contact .contact-layout>div>.contact-map{height:140px;flex:0 0 140px;margin-top:auto}
}

/* Footer WhatsApp contact, available at every screen size. */
.site-footer .footer-whatsapp{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:40px;height:40px;margin-left:12px;border-radius:50%;background:#25d366;color:#fff;flex-shrink:0}
.site-footer .footer-whatsapp:hover{background:#128c7e}
.site-footer .footer-whatsapp svg{display:block;width:23px;height:23px;fill:currentColor;stroke:none}
/* Mobile reviews: cards fit their text, tighter section spacing. */
@media (max-width:768px){#testimonials{padding-top:28px!important;padding-bottom:20px!important}.review-viewport{padding:10px 0 8px!important}.review-viewport .testimonial-cards{align-items:flex-start!important}.review-viewport .review-card{height:auto!important;min-height:0!important;padding:14px 14px 12px!important}.testimonial-cards article>small{margin-top:8px!important}}
