:root{--bg:#fbf4e7;--surface:#f0e4d0;--text:#58372e;--muted:#795b4d;--gold:#823e30;--line:#823e3026}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em;line-height:1.05}h1{font-size:clamp(4rem,8vw,8rem);font-weight:700}h2{font-size:clamp(2.6rem,4.5vw,4.5rem);font-weight:500}h3{font-weight:500;font-size:1.5rem}em{font-family:Georgia,serif;font-weight:400;color:var(--gold)}p{color:var(--muted)}img{display:block;width:100%;object-fit:cover;height:auto}.wrap{width:min(1240px,calc(100% - 70px));margin:auto}.eyebrow{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.17em;color:var(--gold)}.demo-note{background:#302b23;padding:7px 15px;text-align:center;font-size:.6rem;letter-spacing:.12em;color:var(--gold)}.demo-note span{color:var(--muted);margin-left:15px;letter-spacing:0}header{position:sticky;top:0;z-index:20;background:#191918ed;border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.nav{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:12px;font-size:1rem;letter-spacing:.06em;font-weight:700;white-space:nowrap}.brand small{display:block;font-size:.42rem;letter-spacing:.2em;line-height:2.5;font-weight:400;color:var(--muted)}.brand-mark{width:40px;height:45px;border:1px solid var(--gold);color:var(--gold);font-family:Georgia,serif;display:grid;place-items:center;font-size:1.8rem;font-weight:400}nav{display:flex;align-items:center;gap:25px;font-size:.8rem}nav>a:not(.button):hover{color:var(--gold)}#menu-button{border:1px solid var(--line);background:var(--surface);color:var(--text);padding:10px 16px}#menu-button[hidden]{display:none}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:15px 24px;color:#191918;background:var(--gold);border:1px solid var(--gold);font-size:.8rem;font-weight:700;transition:background .2s,transform .2s}.button:hover{background:#f1d39d;transform:translateY(-2px)}.button.compact{padding:11px 15px;font-size:.7rem}.hero{position:relative;min-height:740px;display:flex;align-items:center;overflow:hidden}.hero-photo{position:absolute;inset:0 0 0 35%;background:#34332d}.hero-photo img{height:100%;object-position:center 38%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#191918 0%,#191918ed 28%,#19191866 58%,#19191815 100%)}.hero-content{position:relative;padding:55px 0 105px}.hero h1{margin:30px 0}.hero h1 em{font-size:.88em}.hero-content>p:not(.eyebrow){font-size:1.05rem;max-width:450px}.hero .button{margin-top:15px}.hero-location{display:block;font-size:.55rem;letter-spacing:.16em;color:var(--muted);margin-top:28px}.hero-bottom{position:absolute;bottom:25px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-top:18px;font-size:.7rem}.hero-bottom small{font-size:.6rem}.statement-strip{background:var(--surface);border-bottom:1px solid var(--line)}.statement-strip .wrap{display:flex;justify-content:space-between;gap:20px;padding:32px 0;font-family:Georgia,serif;font-size:1.9rem}.gold{color:var(--gold)}.section{padding:100px 0}.heading{display:grid;grid-template-columns:1fr .65fr;gap:100px;align-items:end;margin-bottom:50px}.heading h2{margin-bottom:0}.heading>p{margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.service{padding:35px 30px 35px 0;display:flex;flex-direction:column}.service+.service{border-left:1px solid var(--line);padding-left:30px}.service h3{font-size:2rem;margin:25px 0 20px}.service p{font-size:.9rem;flex:1}.service-price{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin:20px 0 25px}.service-price strong{font-size:2rem;color:var(--gold);font-weight:400}.service-price span{font-size:.75rem;color:var(--muted)}.service a{font-size:.8rem;text-decoration:underline;text-underline-offset:7px}.fine{font-size:.7rem}.space{background:var(--surface)}.space-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.space-photo{position:relative}.space-photo img{height:640px}.photo-caption{position:absolute;bottom:0;left:0;right:0;padding:15px 20px;background:#191918cf;font-size:.6rem}.values{margin-top:35px}.values article{display:flex;gap:25px;padding:23px 0;border-top:1px solid var(--line)}.values article>span{font-size:.65rem;color:var(--gold)}.values h3{font-size:1.1rem;margin-bottom:12px}.values p{margin:0;font-size:.85rem}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.photo-button{position:relative;display:block;border:0;background:var(--surface);padding:0;width:100%;overflow:hidden;margin-bottom:25px}.photo-button img{height:390px;transition:transform .4s}.photo-button:hover img{transform:scale(1.04)}.photo-button>span{position:absolute;bottom:15px;right:15px;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--bg);font-size:1.2rem}.gallery h3{font-size:1.4rem;margin-top:12px}.location{background:#e8e0d2;color:#262925}.location em{color:#76532e}.location .eyebrow{color:#76532e}.location p{color:#5a5d55}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.address{font-size:1.2rem}.hours{margin:30px 0;max-width:430px}.hours div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #26292526;font-size:.85rem}.hours dd{margin:0}.location-art{position:relative;background:#d8d5c8;height:430px;border:1px solid #c9c7b9;overflow:hidden}.street{position:absolute;background:#eeebe1;height:35px;width:150%;transform:rotate(-30deg)}.s1{top:70px;left:-80px}.s2{top:300px;left:-80px}.s3{width:50px;height:140%;top:-60px;left:55%;transform:rotate(20deg)}.block{position:absolute;border:2px solid #c1c5b5;transform:rotate(-30deg)}.b1{width:160px;height:160px;left:20px;top:145px}.b2{width:130px;height:130px;right:10px;top:20px}.map-mark{position:absolute;top:40%;left:48%;width:70px;height:70px;display:grid;place-items:center;background:#191918;color:var(--gold);border-radius:50% 50% 50% 0;transform:rotate(-45deg);font-family:Georgia,serif;font-size:2.3rem;box-shadow:0 10px 25px #19191830}.map-label{position:absolute;bottom:20px;left:20px;right:20px;letter-spacing:.15em;font-size:.6rem}.appointment-grid{display:grid;grid-template-columns:1fr .85fr;gap:100px}.contact-line{padding-top:25px;margin-top:35px;border-top:1px solid var(--line);font-size:.8rem}.contact-line strong{font-size:1.3rem;color:var(--gold);font-weight:400}form{padding:35px;border:1px solid var(--line);background:var(--surface)}form>.eyebrow{font-size:.5rem}form h3{font-size:1.7rem;margin:20px 0 25px}label{display:block;font-size:.8rem;margin:20px 0 8px}select,textarea{display:block;width:100%;padding:12px;border:1px solid #757269;background:#191918;color:var(--text);font-size:.9rem}textarea{resize:vertical}form .fine{margin:18px 0 25px}form .fine a{text-decoration:underline}form .button{width:100%}footer{background:#121211;padding:50px 0 100px;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr .9fr;gap:35px}.footer-grid h3{font-size:.85rem;color:var(--gold);margin-bottom:20px}.footer-grid p{font-size:.75rem}.footer-grid .fine{font-size:.6rem}.footer-grid>div>a:not(.brand){display:block;font-size:.7rem;margin-bottom:10px;color:var(--muted)}.footer-grid>div>a:hover{color:var(--gold)}.footer-grid .brand{font-size:.75rem}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);margin-top:35px;padding-top:25px;font-size:.65rem;color:var(--muted)}.whatsapp{position:fixed;bottom:max(20px,env(safe-area-inset-bottom));right:max(20px,env(safe-area-inset-right));z-index:30;background:var(--gold);color:#191918;border:1px solid #f1d39d;padding:14px 20px;border-radius:30px;box-shadow:0 8px 25px #0005;font-size:.8rem;font-weight:700}.whatsapp:hover{background:#f1d39d}.legal-main{padding:80px 0 100px;max-width:900px}.legal-main h1{font-size:clamp(3rem,6vw,5rem)}.legal-main .legal-intro{font-size:1.1rem}.legal-main section{padding:35px 0;border-top:1px solid var(--line)}.legal-main h2{font-size:2rem}.legal-main p,.legal-main li{font-size:.95rem;color:var(--muted)}.legal-main a:not(.button){text-decoration:underline;text-underline-offset:4px;color:var(--gold)}.skip{position:fixed;top:8px;left:8px;background:var(--gold);color:var(--bg);padding:12px;z-index:100;transform:translateY(-150%)}.skip:focus{transform:none}a:focus-visible,button:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:5px}dialog{width:min(1000px,calc(100% - 30px));max-height:90vh;padding:20px;background:var(--bg);color:var(--text);border:1px solid var(--line)}dialog::backdrop{background:#000d}dialog img{max-height:70vh;object-fit:contain}.close-dialog{display:block;margin:0 0 15px auto;background:var(--surface);color:var(--text);border:1px solid var(--line);padding:10px 15px}dialog p{margin:15px 0 0}@media(min-width:951px){#menu-button{display:none}}@media(max-width:1100px){nav{gap:15px}.heading,.space-grid,.location-grid,.appointment-grid{gap:50px}.footer-grid{gap:25px}.gallery{gap:18px}.photo-button img{height:340px}}@media(max-width:950px){.nav{flex-wrap:wrap;padding:18px 0;min-height:80px}#menu-button:not([hidden]){display:block}nav{width:100%;flex-wrap:wrap;padding-top:20px;gap:15px 25px}.js nav{display:none}.js nav.open{display:flex}.hero{min-height:700px}.hero-photo{left:20%}.footer-grid{grid-template-columns:repeat(2,1fr)}.space-photo img{height:560px}}@media(max-width:700px){.wrap{width:calc(100% - 36px)}.demo-note span{display:block;margin:3px 0 0}.brand{font-size:.8rem}.brand small{font-size:.35rem}.hero{min-height:690px}.hero-photo{left:0}.hero-photo img{object-position:57% center}.hero-shade{background:linear-gradient(90deg,#191918e8,#19191870)}.hero-content{padding-top:45px;padding-bottom:140px}.hero h1{font-size:clamp(4rem,16vw,6rem)}.hero-bottom{display:block;font-size:.6rem}.hero-bottom>a{display:block;margin-top:7px}.hero-bottom small{display:block;margin-top:7px}.statement-strip .wrap{flex-wrap:wrap;font-size:1.4rem;padding:25px 0;gap:12px}.section{padding:65px 0}.heading,.space-grid,.location-grid,.appointment-grid{grid-template-columns:1fr;gap:30px}.heading{margin-bottom:35px}.services,.gallery{grid-template-columns:1fr}.service,.service+.service{padding:30px 0;border-left:0;border-bottom:1px solid var(--line)}.space-photo img{height:420px}.photo-button img{height:420px}.gallery{gap:30px}.location-art{height:330px}form{padding:25px}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-bottom{display:block}.footer-bottom>a{display:block;margin-top:15px}.whatsapp{bottom:max(15px,env(safe-area-inset-bottom));right:max(15px,env(safe-area-inset-right))}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.button:hover,.photo-button:hover img{transform:none}}

/* Sabor Andaluz: warm cream, paprika and a convivial restaurant identity. */
.demo-note{background:#823e30;color:#fff2df}.demo-note span{color:#f1d8c3}header{background:#fbf4e7f2}.brand{font-size:1.4rem;font-family:Georgia,serif;font-weight:400;letter-spacing:-.04em}.brand small{font-family:Arial,sans-serif;letter-spacing:.16em;font-size:.4rem}.brand-mark{display:flex;align-items:center;justify-content:center;border:0;width:42px;height:48px;color:#823e30}.brand-mark svg{width:100%;height:100%}.button{background:#823e30;color:#fff2df;border-color:#823e30;border-radius:4px}.button:hover{background:#643024}.hero{min-height:0;padding:60px 0 75px;background:radial-gradient(circle at 10% 20%,#efd9b847,transparent 50%)}.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:45px}.hero-content{padding:0}.hero h1{font-family:Georgia,serif;font-size:clamp(3.6rem,6.2vw,6rem);font-weight:400;line-height:1.06;margin:28px 0}.hero h1 em{font-size:1em;color:#823e30}.hero-content>p:not(.eyebrow){font-size:1rem;max-width:440px}.hero-photo{position:relative;inset:auto;height:560px;background:#e3ceb1;transform:rotate(2deg);border:9px solid #fff9ed;box-shadow:0 18px 40px #58372e1a}.hero-photo img{height:100%;object-position:center}.photo-caption{background:#58372ed9;color:#fff2df}.hero-stamp{position:absolute;bottom:55px;left:-35px;border:1px solid #823e30;background:#fbf4e7;color:#823e30;width:140px;height:140px;border-radius:50%;display:grid;place-content:center;text-align:center;font-family:Georgia,serif;font-size:1.2rem;line-height:1.25;transform:rotate(-9deg)}.hero-location{color:#795b4d}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:30px}.hero .button{margin-top:0}.text-link{font-size:.8rem;text-decoration:underline;text-underline-offset:6px}.statement-strip{background:#823e30;color:#fff2df}.statement-strip .wrap{padding:24px 0;font-size:1.6rem}.heading h2,.space-grid h2,.location h2,.appointment h2{font-family:Georgia,serif}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:35px}.filters button{border:1px solid #823e3059;color:#823e30;background:transparent;border-radius:25px;min-height:42px;padding:9px 17px;font-size:.8rem}.filters button[aria-pressed=true]{background:#823e30;color:#fff2df}.dish-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 55px}.dish{display:flex;align-items:start;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);padding:24px 0}.dish[hidden]{display:none}.dish h3{font-family:Georgia,serif;font-size:1.4rem;margin-bottom:10px}.dish p{font-size:.8rem;margin-bottom:0;max-width:360px}.dish strong{font-size:1.1rem;white-space:nowrap;color:#823e30;font-weight:400}.menu-notice{margin-top:35px;background:#f0e4d0;padding:20px 25px;border-left:3px solid #823e30}.menu-notice strong{font-size:.8rem}.menu-notice p{font-size:.7rem;margin:8px 0 0}.house{background:#f0e4d0}.space-photo img{height:620px;border-radius:200px 200px 4px 4px}.values article>span{color:#823e30}.gallery h3{font-family:Georgia,serif}.photo-button{background:#e3ceb1;border-radius:4px}.photo-button>span{background:#fbf4e7;color:#823e30}.gallery article:nth-child(2){padding-top:40px}.photo-button img{height:380px}.location{background:#e9d3b5;color:#58372e}.location p{color:#795b4d}.location em,.location .eyebrow{color:#823e30}.location-card{background:#fbf4e7;min-height:430px;border:1px solid #823e3047;outline:1px solid #823e3047;outline-offset:-12px;text-align:center;padding:55px 30px 40px;border-radius:5px;box-shadow:0 16px 35px #58372e12}.location-emblem{display:block;width:85px;height:90px;margin:auto;color:#823e30}.location-emblem svg{width:100%;height:100%}.location-card>p{margin-top:20px;font-size:.8rem}.location-card h3{font-size:2.4rem;font-family:Georgia,serif}.location-card small{font-size:.55rem;letter-spacing:.13em}.hours div{border-color:#823e3026}.appointment{background:#823e30;color:#fff2df}.appointment em,.appointment .eyebrow{color:#edcf9d}.appointment p{color:#f1d8c3}.contact-line{border-color:#fff2df26}.contact-line strong{color:#edcf9d}form{background:#ffffff08;border-color:#fff2df33}select,textarea{background:#fbf4e7;color:#58372e;border-color:#d6c1a8}form .button{background:#edcf9d;border-color:#edcf9d;color:#58372e}form .button:hover{background:#fbf4e7}footer{background:#f0e4d0}.footer-grid h3{color:#823e30}.footer-grid .brand{font-size:1.1rem}.whatsapp{background:#823e30;color:#fff2df;border-color:#edcf9d}.whatsapp:hover{background:#643024}.skip{background:#823e30;color:#fff2df}.legal-main h1{font-family:Georgia,serif;font-weight:400}.legal-main a:not(.button){color:#823e30}.close-dialog{background:#f0e4d0;color:#58372e}.faq{background:#f0e4d0}.faq .heading{margin-bottom:0}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-size:.9rem}.faq details p{font-size:.85rem;margin:18px 0 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:950px){.hero-grid{gap:30px}.hero-photo{left:auto;height:500px}.hero h1{font-size:4rem}.brand{font-size:1.2rem}}
@media(max-width:700px){.hero{min-height:0;padding:40px 0 55px}.hero-grid{grid-template-columns:1fr;gap:40px}.hero-content{padding:0}.hero h1{font-size:clamp(3.8rem,14vw,5rem)}.hero-photo{left:auto;height:420px;width:calc(100% - 18px);margin-left:18px}.hero-photo img{object-position:center}.hero-stamp{left:-25px;bottom:40px;width:115px;height:115px;font-size:1rem}.statement-strip .wrap{font-size:1.15rem;gap:12px}.dish-grid{grid-template-columns:1fr}.gallery article:nth-child(2){padding-top:0}.photo-button img{height:400px}.space-photo img{height:460px}.location-card{min-height:350px;padding:40px 25px}.hero-photo{transform:none}}
@media(prefers-reduced-motion:reduce){.hero-photo{transform:none}}

/* Restaurant photography: cut-corner frames instead of garden-style arches. */
.house .space-photo{
  position:relative;
  padding:10px;
  border:1px solid #823e3060;
  background:#fbf4e7;
  clip-path:polygon(0 0,calc(100% - 36px) 0,100% 36px,100% 100%,36px 100%,0 calc(100% - 36px));
}
.house .space-photo img{
  border-radius:0;
  clip-path:polygon(0 0,calc(100% - 28px) 0,100% 28px,100% 100%,28px 100%,0 calc(100% - 28px));
}
.house .space-photo .photo-caption{
  left:10px;
  right:10px;
  bottom:10px;
  padding:14px 28px;
  border-radius:0;
}
@media(max-width:700px){
  .house .space-photo{clip-path:polygon(0 0,calc(100% - 26px) 0,100% 26px,100% 100%,26px 100%,0 calc(100% - 26px))}
  .house .space-photo img{clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,20px 100%,0 calc(100% - 20px))}
}

/* Location vignette: a lively table scene, distinct from the other demos. */
.location-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:500px;
  padding:0;
  background:#58372e;
  border:0;
  border-radius:3px 38px 3px 3px;
  outline:none;
  box-shadow:0 20px 45px #58372e26;
  color:#fff2df;
}
.table-photo,.table-overlay{position:absolute;inset:0;z-index:-2}
.table-photo{background:url('assets/pexels-21327989.jpg') center/cover no-repeat}
.table-overlay{z-index:-1;background:linear-gradient(135deg,#48251ced,#48251cd6 55%,#48251cba)}
.table-content{padding:40px 30px;position:relative}
.table-kicker{display:block;font-size:.6rem;letter-spacing:.19em;color:#f1d8b0;margin-bottom:20px}
.location-card .location-emblem{width:76px;height:76px;color:#f1d8b0}
.location-card .table-content>p{font-size:.75rem;letter-spacing:.1em;color:#f1d8c3;margin:15px 0}
.location-card h3{font-family:Georgia,serif;font-size:clamp(2.2rem,3.2vw,3.2rem);color:#fff2df;line-height:1.1;margin:0 0 25px}
.table-notes{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-bottom:25px}
.table-notes>span{font-size:.6rem;color:#fff2df;padding:6px 10px;border:1px solid #f1d8b066;border-radius:20px;background:#ffffff0a}
.table-link{display:inline-flex;align-items:center;gap:30px;background:#edcf9d;color:#48251c;padding:11px 18px;border-radius:3px;font-weight:700;font-size:.75rem;transition:background .2s,transform .2s}
.table-link:hover{background:#fff2df;transform:translateY(-2px)}
.table-content>small{display:block;margin-top:24px;color:#f1d8c3;font-size:.48rem;letter-spacing:.13em}
@media(max-width:700px){.location-card{min-height:470px}.table-content{padding:35px 23px}.location-card h3{font-size:2.4rem}}
@media(prefers-reduced-motion:reduce){.table-link:hover{transform:none}}

/* Glass treatment with opaque fallbacks and readable foregrounds. */
header{background:#fbf4e7;border-bottom:1px solid #823e3033;box-shadow:0 8px 25px #58372e0c}
nav>a{position:relative;border:1px solid #823e3030;padding:9px 13px;border-radius:12px;background:#f0e4d0;box-shadow:inset 0 1px 0 #ffffffb3;color:#58372e;transition:border-color .2s,box-shadow .2s,transform .2s}
nav>a:hover,nav>a:focus-visible{border-color:#823e3080;color:#823e30;box-shadow:inset 0 1px 0 #fff,0 7px 18px #58372e14;transform:translateY(-2px)}
.dish,.menu-notice,form,.location-card{border:1px solid #823e3033;box-shadow:inset 0 1px 0 #ffffff66,0 10px 30px #58372e0d}
.dish{background:#fbf4e7;border-radius:14px;padding:23px;margin-bottom:14px}
.dish-grid{gap:0 22px}
.menu-notice{background:#f0e4d0;border-left:3px solid #823e30;border-radius:12px}
.button,.whatsapp{background:linear-gradient(135deg,#9b5141,#823e30);color:#fff2df;border:1px solid #ffffff59;border-radius:12px;box-shadow:inset 0 1px 0 #ffffff59,0 7px 18px #58372e1f}
.button:hover,.whatsapp:hover{background:linear-gradient(135deg,#9b5141,#713629);color:#fff2df;box-shadow:inset 0 1px 0 #ffffff80,0 10px 24px #58372e30}
.filters button{background:#f0e4d0;border-color:#823e303d;box-shadow:inset 0 1px 0 #ffffffb3}
.filters button[aria-pressed=true]{background:linear-gradient(135deg,#9b5141,#823e30);color:#fff2df;border-color:#823e30}
#menu-button{background:#f0e4d0;color:#58372e;border-color:#823e3040;border-radius:12px;box-shadow:inset 0 1px 0 #ffffffb3}
.appointment form{background:#823e30;border-color:#fff2df40;border-radius:16px;box-shadow:inset 0 1px 0 #ffffff33,0 12px 30px #48251c26}
form .button,.table-link{background:linear-gradient(135deg,#f4ddb7,#edcf9d);border:1px solid #fff2df99;color:#48251c;border-radius:12px;box-shadow:inset 0 1px 0 #ffffff80,0 8px 20px #48251c20}
form .button:hover,.table-link:hover{background:linear-gradient(135deg,#fff2df,#f4ddb7);color:#48251c}
.table-notes>span{background:#48251c;border-color:#fff2df59;box-shadow:inset 0 1px 0 #ffffff26}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  header{background:#fbf4e7dd;-webkit-backdrop-filter:blur(20px) saturate(120%);backdrop-filter:blur(20px) saturate(120%)}
  nav>a,.filters button,#menu-button{background:linear-gradient(135deg,#fff9edb3,#f0e4d099);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
  .dish,.menu-notice{background:linear-gradient(135deg,#ffffff80,#f0e4d0b3);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
  .button,.whatsapp,nav>.button,.filters button[aria-pressed=true]{background:linear-gradient(135deg,#9b5141ee,#823e30ee);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff2df}
  .appointment form{background:linear-gradient(135deg,#ffffff12,#ffffff08);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
  form .button,.table-link{background:linear-gradient(135deg,#f4ddb7f2,#edcf9df2);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#48251c}
  .table-notes>span{background:#ffffff12;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
}
@media(max-width:950px){nav.open{gap:10px;padding:18px 0 4px}nav>a{min-height:44px}}
@media(max-width:700px){.dish{padding:20px}nav.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}nav>a{display:flex;align-items:center;justify-content:center;text-align:center}nav>.button{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){nav>a:hover,nav>a:focus-visible{transform:none}}

/* Contemporary interactions: section tracking, directional light, gentle depth. */
header{transition:box-shadow .25s,border-color .25s}
header.scrolled{box-shadow:0 10px 30px #58372e18;border-bottom-color:#823e3059}
nav>a{overflow:hidden;isolation:isolate;transition:transform .2s,border-color .2s,box-shadow .2s,background .2s}
nav>a::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,transparent 25%,#ffffff66 50%,transparent 75%);transform:translateX(-140%);transition:transform .55s ease;pointer-events:none}
nav>a:hover::before,nav>a:focus-visible::before{transform:translateX(140%)}
nav>a.section-active:not(.button){border-color:#823e3099;background:#f1d8c3;box-shadow:inset 0 -3px 0 #823e30,inset 0 1px 0 #fff9ed}
.button,.table-link,.whatsapp{position:relative;overflow:hidden}
.button::after,.table-link::after,.whatsapp::after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,#ffffff30 50%,transparent 70%);transform:translateX(-140%);transition:transform .6s;pointer-events:none}
.button:hover::after,.button:focus-visible::after,.table-link:hover::after,.whatsapp:hover::after{transform:translateX(140%)}
.interactive-card{position:relative;isolation:isolate;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;transform-origin:center}
.interactive-card::after{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(220px circle at var(--glow-x,50%) var(--glow-y,50%),#fff5df40,transparent 75%);opacity:0;transition:opacity .25s;pointer-events:none;z-index:2}
.gallery article{padding:0 0 18px;border-radius:12px}
.gallery article .eyebrow,.gallery article h3{padding-left:8px;padding-right:8px}
.gallery article:nth-child(2){padding-top:40px}
.reveal-wait{opacity:0;transform:translateY(22px)}
.reveal-in{animation:sabor-reveal .65s cubic-bezier(.16,1,.3,1) both}
@keyframes sabor-reveal{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
.filters button{transition:background .2s,color .2s,transform .2s,box-shadow .2s}
.filters button:hover{box-shadow:0 5px 15px #58372e15;transform:translateY(-2px)}
@media(hover:hover) and (pointer:fine){
  .interactive-card.pointer-active{transform:perspective(1100px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-3px);box-shadow:0 18px 36px #58372e20}
  .interactive-card.pointer-active::after{opacity:1}
}
@media(max-width:700px){.gallery article:nth-child(2){padding-top:0}}
@media(prefers-reduced-motion:reduce){
  .reveal-wait,.reveal-in{opacity:1;transform:none;animation:none}
  .interactive-card.pointer-active,.filters button:hover{transform:none}
  .interactive-card::after,nav>a::before,.button::after,.table-link::after,.whatsapp::after{display:none}
}
