@font-face{font-family:Manrope;src:url('./assets/manrope-latin.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:Fraunces;src:url('./assets/fraunces-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Fraunces;src:url('./assets/fraunces-italic-latin.woff2') format('woff2');font-style:italic;font-weight:100 900;font-display:swap}
:root{--ink:#242622;--cream:#f7f5ed;--gold:#dfc976;--muted:#64665b;--line:#d8d9cd;--serif:Fraunces,Georgia,serif;--sans:Manrope,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:500;line-height:1.05;letter-spacing:-.055em}h1 em,h2 em{font-weight:400}svg{width:20px;height:20px;flex-shrink:0}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #806514;outline-offset:6px}::selection{background:var(--gold);color:var(--ink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:10px;left:10px;background:white;padding:12px 20px;z-index:100;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
.topbar{background:var(--ink);color:var(--cream);display:flex;justify-content:space-between;padding:10px 5.5%;font-size:0.75rem;letter-spacing:.12em;line-height:1.5}.topbar b{font-weight:600;padding-left:12px}.header{height:112px;padding:13px 5.5%;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line);background:var(--cream)}.brand{width:103px;flex-shrink:0}.brand img{width:103px;height:91px;object-fit:contain}nav{display:flex;gap:34px;margin-left:auto;margin-right:32px;font-size:0.875rem;font-weight:600}nav a{padding:12px 0;position:relative}nav a:after{content:'';height:1px;position:absolute;bottom:7px;left:0;right:0;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s}nav a:hover:after{transform:scaleX(1)}.header-phone{display:flex;align-items:center;gap:10px;font-size:0.875rem;font-weight:600;border:1px solid var(--ink);padding:13px 20px;transition:background .2s}.header-phone:hover{background:var(--gold)}.menu-toggle{display:none}
.hero{display:grid;grid-template-columns:1.06fr 1fr;min-height:650px}.hero-copy{padding:82px 8% 60px 10.4%;display:flex;align-items:flex-start;flex-direction:column;justify-content:center}.eyebrow{font-size:0.75rem;font-weight:700;letter-spacing:.13em;line-height:1.7}.hero .eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:27px}.hero .eyebrow span{display:inline-block;width:24px;height:2px;background:#9b8337}h1{font-size:clamp(3.5rem,5.65vw,5.5rem);margin-bottom:26px}.hero-description{max-width:340px;color:var(--muted);font-size:1.0625rem;line-height:1.7;margin-bottom:31px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:17px 24px;min-height:58px;font-size:0.875rem;font-weight:600;transition:background .2s,transform .2s}.button span[aria-hidden]{font-size:1.375rem;line-height:1}.dark{background:var(--ink);color:var(--cream)}.dark:hover{background:#41443b;transform:translateY(-2px)}.google-rating{display:flex;align-items:center;gap:14px;margin-top:44px}.google-rating>b{font-family:var(--serif);font-size:2.25rem;font-weight:500;line-height:1}.google-rating>span{display:flex;flex-direction:column;gap:3px}.stars{color:#867020;letter-spacing:.15em;font-size:1rem;line-height:1}.rating-label{font-size:0.75rem;color:var(--muted)}.rating-label>span{margin-left:6px}.hero-photo{position:relative;overflow:hidden;min-height:650px;background:#c5bba0}.hero-photo>img{height:100%;width:100%;position:absolute;inset:0;object-fit:cover;object-position:center;filter:brightness(.89)}.hero-photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.48));pointer-events:none}.since-badge{position:absolute;right:32px;top:32px;z-index:1;width:142px;height:142px;background:var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;transform:rotate(9deg);border:1px solid var(--ink);outline:5px solid var(--gold)}.since-badge>span{font-size:0.5625rem;letter-spacing:.11em;font-weight:700}.since-badge b{font-family:var(--serif);font-weight:400;font-style:italic;text-align:center;font-size:1.1875rem;line-height:1}.since-badge strong{font-style:normal;font-size:2.3125rem;font-weight:500}.photo-caption{position:absolute;bottom:29px;left:36px;right:30px;display:flex;align-items:center;justify-content:space-between;color:white;z-index:1;font-size:0.6875rem;letter-spacing:.15em;font-weight:600}.photo-caption a{border:1px solid #ffffff88;border-radius:50%;height:42px;width:42px;display:grid;place-items:center;font-size:1.375rem}.ritual-strip{display:flex;justify-content:space-between;align-items:center;padding:24px 7.5%;background:var(--gold);gap:20px;font-family:var(--serif);font-size:1.4375rem}.ritual-strip i{font-family:Georgia,serif;font-style:normal;font-size:1.5rem}
.section{max-width:1440px;margin:auto;padding:110px 7.5%}.almuerzos{display:grid;grid-template-columns:1fr 1fr;gap:9%}.section-heading h2{font-size:clamp(3rem,4.7vw,4.25rem);margin-top:25px;margin-bottom:26px}.section-heading>p:last-child{color:var(--muted);font-size:1.0625rem}.ritual-list{padding-top:4px}.ritual-list article{display:flex;gap:25px;padding:25px 0;border-top:1px solid var(--line)}.number{font-size:0.8125rem;color:#8c783b;padding-top:5px;font-weight:600}.ritual-list h3{font-family:var(--serif);font-size:1.75rem;line-height:1.2;font-weight:500;letter-spacing:-.02em;margin-bottom:11px}.ritual-list p{color:var(--muted);font-size:1rem;max-width:350px}.text-link{display:inline-flex;align-items:center;gap:20px;border-bottom:1px solid var(--ink);padding:6px 0;font-size:0.875rem;font-weight:600}.text-link:hover{color:#806514;border-color:#806514}.text-link>span[aria-hidden]{font-size:1.25rem}.ritual-list>.text-link{margin-top:14px}.brand-pattern{height:63px;background:url('./assets/patron-barrio.svg') repeat-x center center / auto 126px;border-top:1px solid #9c9b85;border-bottom:1px solid #9c9b85}.story{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%}.story-visual{position:relative;align-self:stretch;min-height:600px}.story-visual img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0}.image-note{position:absolute;background:var(--gold);bottom:30px;left:-18px;padding:15px 24px;font-size:0.75rem;font-weight:700;letter-spacing:.13em;transform:rotate(-3deg)}.story-copy h2{font-size:clamp(2.8125rem,4.55vw,4.0625rem);margin:24px 0 28px}.story-copy>p:not(.eyebrow){color:var(--muted);font-size:1rem;line-height:1.85;margin-bottom:17px}.story-copy>p.story-signature{font-family:var(--serif);font-style:italic;color:var(--ink);font-size:1.4375rem;line-height:1.4;padding:8px 0}.story-copy .text-link{font-size:0.8125rem}
.visit{background:var(--gold);padding:90px 7.5%;display:grid;grid-template-columns:1.1fr 1fr;gap:9%}.visit h2{font-size:clamp(3rem,6vw,5.25rem);margin:28px 0 22px}.visit-intro>p:not(.eyebrow){font-size:1.125rem;line-height:1.65;margin-bottom:30px}.visit-details{border-top:1px solid #24262255}.detail{padding:24px 0;border-bottom:1px solid #24262255}.detail-label{display:block;font-size:0.6875rem;font-weight:700;letter-spacing:.14em;margin-bottom:11px}.detail>p{font-size:1.1875rem;line-height:1.6}.detail strong{display:block;font-weight:600}.detail>p.detail-small{font-size:0.8125rem;margin-top:9px}.contact-phone{font-family:var(--serif);font-size:2rem;line-height:1.5;display:flex;justify-content:space-between;align-items:center}.contact-phone:hover{text-decoration:underline;text-underline-offset:5px}footer{background:var(--ink);color:var(--cream);padding:56px 5.5% 20px}.footer-main{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;align-items:center;padding-bottom:45px}.footer-wordmark{font-family:var(--serif);font-size:1.375rem;line-height:1}.footer-wordmark em{font-size:3.3125rem;letter-spacing:-.04em}.footer-wordmark span{display:block;font-family:var(--sans);font-size:0.625rem;letter-spacing:.17em;margin-top:18px}.footer-main>p{font-family:var(--serif);font-size:1.5625rem;line-height:1.35;color:#dadacf}.footer-socials{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px 22px;font-size:0.8125rem}.footer-socials a:hover{text-decoration:underline;text-underline-offset:4px}.footer-bottom{border-top:1px solid #ffffff2c;display:flex;justify-content:space-between;padding-top:19px;font-size:0.6875rem;color:#babcaf}
@media(min-width:1600px){.hero-copy{padding-left:max(10.4%,calc((100vw - 1440px)/2))}.hero{min-height:740px}.hero-photo{min-height:740px}}
@media(max-width:1100px){nav{gap:22px;margin-right:12px}.header{gap:18px}.header-phone{padding:12px}.hero-copy{padding:55px 9% 45px 10.4%}.hero,.hero-photo{min-height:615px}h1{font-size:3.9375rem}.hero .eyebrow{font-size:0.625rem}.since-badge{width:120px;height:120px;right:24px;top:25px}.since-badge>span{font-size:0.5rem}.since-badge strong{font-size:1.9375rem}.section{padding:80px 6%}.story{gap:7%}.story-visual{min-height:560px}.ritual-strip{padding:22px 5.5%;font-size:1.25rem}.visit{padding:75px 6%;gap:7%}.footer-main{grid-template-columns:1fr 1fr}.footer-socials{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:760px){html{scroll-padding-top:20px}.topbar{justify-content:center;flex-wrap:wrap;gap:4px 16px;padding:10px 16px;font-size:0.625rem;letter-spacing:.08em}.header{height:94px;padding:8px 6%;position:relative;gap:15px}.brand,.brand img{width:80px;height:76px}.menu-toggle{margin-left:auto;display:flex;align-items:center;gap:10px;background:transparent;border:0;min-height:44px;padding:10px 4px;font-size:0.875rem}.menu-toggle i,.menu-toggle i:after{display:block;width:22px;height:1px;background:var(--ink);position:relative;transition:transform .2s}.menu-toggle i{transform:translateY(-3px)}.menu-toggle i:after{content:'';position:absolute;top:6px}.menu-toggle[aria-expanded=true] i{transform:rotate(45deg)}.menu-toggle[aria-expanded=true] i:after{top:0;transform:rotate(-90deg)}.header-phone{width:42px;height:42px;padding:10px;overflow:hidden;font-size:0;gap:0;border-radius:50%}.header-phone svg{width:20px}.header nav{display:none;position:absolute;left:0;right:0;top:100%;margin:0;padding:15px 6% 24px;background:var(--cream);z-index:10;border-bottom:1px solid var(--line);flex-direction:column;gap:4px;box-shadow:0 20px 20px #24262212}.header nav.is-open{display:flex}.header nav a{padding:13px 0}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:47px 7% 34px}.hero .eyebrow{font-size:0.625rem;margin-bottom:21px;letter-spacing:.11em}.hero h1{font-size:clamp(3.4375rem,10.7vw,4.875rem);margin-bottom:23px}.hero-description{max-width:370px;font-size:1rem;margin-bottom:25px}.button{font-size:0.875rem;min-height:56px;padding:16px 20px;gap:35px}.google-rating{margin-top:28px}.google-rating>b{font-size:1.875rem}.rating-label{font-size:0.75rem}.hero-photo{min-height:420px}.hero-photo>img{object-position:center 52%}.since-badge{width:115px;height:115px;top:24px;right:26px}.photo-caption{left:7%;right:7%;bottom:22px;font-size:0.625rem}.ritual-strip{display:grid;grid-template-columns:auto auto auto;justify-content:center;gap:12px 18px;padding:21px 7%;font-size:1.125rem;text-align:center}.ritual-strip i{font-size:1.1875rem}.ritual-strip>*:nth-child(n+4){display:none}.section{padding:66px 7%}.almuerzos{grid-template-columns:1fr;gap:37px}.section-heading h2{font-size:3.1875rem;margin:20px 0 23px}.section-heading>p:last-child{font-size:1rem}.ritual-list article{gap:21px;padding:23px 0}.ritual-list h3{font-size:1.625rem}.ritual-list p{font-size:1rem;max-width:400px}.text-link{font-size:0.8125rem}.brand-pattern{height:48px;background-size:auto 100px}.story{grid-template-columns:1fr;gap:45px}.story-visual{min-height:380px}.story-visual img{object-position:center}.image-note{font-size:0.625rem;left:-10px;bottom:25px;padding:14px 20px}.story-copy h2{font-size:3.1875rem;margin:20px 0 25px}.story-copy>p:not(.eyebrow){font-size:1rem}.story-copy>p.story-signature{font-size:1.5rem}.visit{padding:63px 7%;grid-template-columns:1fr;gap:44px}.visit .eyebrow{font-size:0.625rem}.visit h2{font-size:3.5rem;margin:23px 0 22px}.visit-intro>p:not(.eyebrow){font-size:1.0625rem}.detail>p{font-size:1.125rem}.detail>p.detail-small{font-size:0.875rem}.detail-label{font-size:0.75rem}.contact-phone{font-size:2rem}footer{padding:44px 7% 22px}.footer-main{grid-template-columns:1fr;gap:30px;padding-bottom:35px}.footer-main>p{font-size:1.5625rem}.footer-socials{gap:22px;font-size:0.875rem;grid-column:auto}.footer-bottom{flex-direction:column;gap:12px;font-size:0.75rem}.footer-wordmark span{font-size:0.6875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.photo-credits{color:#babcaf;font-size:0.75rem;margin-top:18px}.photo-credits a{text-decoration:underline;text-underline-offset:3px}

h1,h2,h3{overflow-wrap:anywhere}.hero-copy,.story-copy,.visit-intro,.visit-details,.ritual-list{min-width:0}
