@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400 600;font-display:swap;src:url('/assets/fonts/cormorant-garamond-latin.ttf') format('truetype')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/source-sans-3-400.woff') format('woff')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/source-sans-3-500.woff') format('woff')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:600;font-display:swap;src:url('/assets/fonts/source-sans-3-600.woff') format('woff')}
:root{--cream:#fdfaf6;--sand:#f2e8de;--pale:#f8f2e9;--ink:#33231f;--clay:#5d4c45;--gold:#9b793d;--bark:#574139;--line:#33231f1c;--display:'Cormorant Garamond',Georgia,serif;--sans:'Source Sans 3',Arial,sans-serif;--header-height:142px;--gutter:max(24px,calc((100vw - 1120px)/2));--ease:cubic-bezier(.25,.46,.45,.94)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 24px);background:var(--cream)}body{margin:0;padding-top:var(--header-height);background:var(--cream);color:var(--ink);font:400 1.125rem/1.6 var(--sans)}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%;height:auto}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--display);font-weight:500;text-wrap:balance;line-height:1.05;letter-spacing:-.025em}p{text-wrap:pretty}p+p{margin-top:20px}h1{font-size:clamp(3.5rem,5.9vw,5.9rem)}h2{font-size:clamp(2.8rem,4.5vw,4.2rem)}h3{font-size:2rem}h1 em,h2 em{font-style:normal;color:inherit}.icon{display:inline-block;width:21px;height:21px;flex-shrink:0;object-fit:contain}.section{padding:100px var(--gutter)}.section-label{display:flex;align-items:center;gap:12px;font:500 .8125rem/1.5 var(--sans);text-transform:uppercase;letter-spacing:.12em;color:var(--gold);margin-bottom:22px}.section-label:before{content:'';width:28px;height:1px;background:currentColor;flex-shrink:0}.center-heading{text-align:center;max-width:700px;margin:0 auto 48px}.center-heading .section-label{justify-content:center}.center-heading>p:not(.section-label){margin:24px auto 0;max-width:53ch;color:var(--clay)}
.site-header{position:fixed;inset:0 0 auto;z-index:100;background:#fdfaf6f5;padding-top:env(safe-area-inset-top);transition:box-shadow .35s ease}.site-header.is-scrolled{box-shadow:0 4px 24px #33231f09}.header-main{min-height:92px;padding:8px var(--gutter);display:flex;align-items:center;gap:30px}.brand{flex-shrink:0}.brand img{width:100px;height:65px;object-fit:contain}.main-nav{display:flex;align-items:center;gap:26px;margin-left:auto;font-size:1rem}.main-nav a{padding:10px 0;white-space:nowrap}.main-nav a:hover,.main-nav a[aria-current="location"]{color:var(--gold)}.header-actions{margin-left:12px}.header-socials{display:none}.branch-nav{display:flex;align-items:center;justify-content:center;gap:30px;min-height:48px;padding:0 24px;border-block:1px solid var(--line)}.branch-label{font-size:.75rem;letter-spacing:.09em;color:var(--clay)}.branch-nav>a{font-size:.9375rem;padding:10px 0;display:flex;gap:14px;align-items:center}.branch-nav>a[aria-current=page]{color:var(--gold)}.branch-arrow{font-size:1rem}.menu{display:none}
.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:44px;padding:12px 22px;border:1px solid var(--bark);border-radius:999px;color:var(--cream);background:var(--bark);font-size:.9375rem;font-weight:500;line-height:1.3;transition:background .3s ease,transform .3s ease}.button:hover{background:#70554a;transform:translateY(-1px)}.button:active{transform:translateY(0)}.button.small{font-size:.875rem;padding:10px 18px}.button-outline{color:var(--ink);border-color:#33231f40;background:transparent}.button-outline:hover{background:#ece0d3}.button .icon{filter:invert(1)}.text-link{display:inline-flex;align-items:center;gap:10px;font-size:1rem;color:var(--gold);padding:5px 0;border-bottom:1px solid #9b793d66}.text-link:hover{color:var(--ink)}
.hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:8%;align-items:center;padding:70px var(--gutter) 80px;background:var(--pale)}.hero-copy{min-width:0}.hero h1{max-width:15ch}.hero .intro{margin-top:28px;font-size:1.1875rem;line-height:1.5;color:var(--clay);max-width:49ch}.actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:32px}.hero-image{position:relative;overflow:hidden;border-radius:36px;box-shadow:0 28px 60px -40px #33231f66;min-width:0;background:var(--sand)}.hero-image>img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:55% center}.branch-photo-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;background:#fdfaf6eb;color:var(--ink);font-size:.875rem}.branch-photo-caption>a{display:inline-flex;gap:10px}.ribbon{display:none}
.services-intro{padding-bottom:55px}.services-intro .center-heading{margin-bottom:34px}.services-intro h2{font-size:clamp(2.5rem,3.6vw,3.25rem)}.reason-grid{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border-radius:28px}.reason-card{padding:40px;background:#f5ede1}.reason-card:nth-child(2){background:#eee3d5}.reason-card .reason-quote{font:400 1.5rem/1.3 var(--display);font-style:italic;color:var(--gold);margin-bottom:10px}.reason-card h3{font-size:2.25rem;margin-bottom:26px}.reason-card>a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px;padding:13px 18px;border-radius:14px;background:#ffffff8f;border:1px solid #33231f0f;margin-top:10px;font-size:1.0625rem;transition:background .25s ease}.reason-card>a:hover{background:var(--cream)}.reason-card>a>span{width:29px;height:29px;border:1px solid #9b793d55;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gold)}
.service-directory{padding-top:65px}.service-rows{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:100px minmax(0,1fr) minmax(0,1.4fr) auto;align-items:center;gap:30px;padding:32px 6px;border-bottom:1px solid var(--line);scroll-margin-top:calc(var(--header-height) + 24px)}.service-illustration{display:flex;align-items:center;justify-content:center;color:var(--gold);background:var(--pale);height:92px;width:92px;border-radius:50%}.service-illustration svg{width:55px;height:55px}.service-row h3{font-size:2.1rem;line-height:1.1}.service-row>p{font-size:1.0625rem;color:var(--clay);line-height:1.5}.service-cta{display:inline-flex;gap:10px;align-items:center;color:var(--gold);font-size:.9375rem;min-height:44px}.service-cta:hover{text-decoration:underline;text-underline-offset:5px}
.about{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center;background:var(--sand)}.about-copy p{color:var(--clay);font-size:1.125rem}.about-copy>p:first-child{font-size:1.25rem}.about-copy .text-link{margin-top:24px}
.professional{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:12%;align-items:center}.professional-photo{overflow:hidden;border-radius:30px}.professional-photo img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}.professional-copy h2{font-size:clamp(2.4rem,3.8vw,3.75rem);line-height:1.05}.professional-role{font-size:.9375rem;color:var(--gold);margin-top:18px}.professional-copy>p:not(.section-label):not(.professional-role){color:var(--clay);margin-top:24px}.professional-copy .text-link{margin-top:26px}
.comfort{background:var(--pale);text-align:center}.comfort-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;text-align:left;margin-bottom:34px}.comfort-grid article{padding:32px;background:var(--cream);border:1px solid #33231f0c;border-radius:22px}.comfort-grid h3{font-size:2.25rem;margin-bottom:16px}.comfort-grid p{font-size:1.0625rem;color:var(--clay)}
.location{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:90px var(--gutter);align-items:center;background:var(--cream)}.location-image{overflow:hidden;border-radius:28px}.location-image img{width:100%;aspect-ratio:4/3;object-fit:cover}.location h2{font-size:clamp(2.5rem,3.6vw,3.5rem);margin-bottom:28px}.location address{font-style:normal;color:var(--clay);font-size:1.0625rem;margin-bottom:22px}.contact-line{margin-top:28px}.contact-line>span{display:block;font-size:.75rem;letter-spacing:.1em;color:var(--gold)}.contact-line>a{display:inline-flex;align-items:center;gap:10px;font-size:1.6rem;margin-top:10px}.contact-line>p{font-size:.9375rem;margin-top:8px;color:var(--clay)}.location-booking{margin-top:22px}.branch-map{position:relative;overflow:hidden;border-radius:28px;background:var(--sand)}.branch-map iframe{width:100%;height:460px;border:0;display:block}.map-fallback{position:absolute;bottom:16px;left:16px;right:16px;background:var(--cream);border-radius:14px;padding:15px;font-size:.9375rem;display:flex;gap:12px;justify-content:space-between}
.final-cta{text-align:center;background:var(--sand);padding-block:85px}.final-cta .section-label{justify-content:center}.final-cta h2{max-width:18ch;margin:0 auto 30px}.final-cta>p:last-child{margin-top:26px;font-size:1rem;color:var(--clay)}.inline-whatsapp{display:inline-flex;gap:5px;align-items:center;text-decoration:underline;text-underline-offset:4px}.inline-whatsapp .icon{width:17px;height:17px}
.review-section{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.review-section h2{font-size:3rem;margin-bottom:22px}.review-section p{font-size:1.0625rem;color:var(--clay);max-width:44ch}.review-action p{font-size:.9375rem;margin-top:18px}.instagram-section{display:grid;grid-template-columns:1fr minmax(0,400px);gap:12%;align-items:center;background:var(--pale)}.instagram-copy h2{font-size:3rem;margin-bottom:24px}.instagram-copy>p{color:var(--clay);margin-bottom:24px;max-width:40ch}.instagram-card{overflow:hidden;border-radius:22px;background:white;min-width:0}.instagram-card iframe{width:100%;height:420px;display:block;border:0}.instagram-fallback{display:block;font-size:.875rem;padding:15px;text-align:center;color:var(--gold)}
footer{padding:50px var(--gutter) 30px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:30px;background:#eee4d8}.footer-brand img{width:100px;height:auto;object-fit:contain}.footer-contact{display:flex;align-items:center;gap:22px;font-size:1rem}.social-buttons{display:flex;gap:10px}.social-button{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border:1px solid #57413930;border-radius:50%}.social-button:hover{background:var(--cream)}.social-button .icon{width:18px;height:18px}.footer-bottom{flex-basis:100%;display:flex;justify-content:space-between;gap:24px;border-top:1px solid #57413922;padding-top:24px;font-size:.875rem;color:var(--clay)}.footer-bottom>a{margin-right:100px}
.floating-whatsapp{position:fixed;bottom:24px;right:24px;z-index:50;display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 18px;border-radius:999px;background:var(--bark);color:var(--cream);border:2px solid var(--cream);font-size:.9375rem}.floating-whatsapp .icon{filter:invert(1);width:23px;height:23px}.floating-whatsapp:hover{background:#70554a}.skip{position:fixed;top:-200px;left:16px;z-index:200;background:var(--cream);padding:12px}.skip:focus{top:12px}[data-reveal]:focus-within{opacity:1!important;transform:none!important}
@media(min-width:1600px){:root{--gutter:max(64px,calc((100vw - 1240px)/2))}}
@media(max-width:1100px){.header-main{gap:18px}.main-nav{gap:18px}.header-actions{margin-left:0}.hero{gap:6%;grid-template-columns:1.1fr 1fr}.hero h1{font-size:4rem}.service-row{grid-template-columns:80px 1fr 1.3fr;gap:22px}.service-illustration{width:76px;height:76px}.service-cta{grid-column:3}.professional{gap:8%}.about{gap:8%}.reason-card{padding:30px}}
@media(max-width:800px){:root{--header-height:130px;--gutter:24px}.header-main{min-height:80px;gap:12px}.brand img{width:82px;height:56px}.header-actions{margin-left:auto}.button.small{padding:10px 14px;font-size:.8125rem}.menu{display:flex;align-items:center;justify-content:center;background:none;border:0;padding:8px;color:var(--ink);width:40px;min-height:44px}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;margin:0;background:var(--cream);padding:22px 24px 28px;box-shadow:0 10px 25px #33231f10}.main-nav.open{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.branch-nav{gap:28px;min-height:46px}.branch-label{display:none}.branch-nav>a{font-size:.875rem}.section{padding:66px var(--gutter)}.section-label{font-size:.75rem;letter-spacing:.1em;margin-bottom:18px}.hero{grid-template-columns:minmax(0,1fr);gap:34px;padding:42px var(--gutter) 48px}.hero h1{font-size:clamp(3.2rem,11.5vw,4.6rem);max-width:16ch}.hero .intro{font-size:1.125rem;margin-top:22px;max-width:45ch}.actions{margin-top:28px;gap:12px}.button{padding:11px 19px;font-size:.875rem}.hero-image{border-radius:25px;width:100%;max-width:620px;justify-self:center}.hero-image>img{aspect-ratio:4/3;object-position:center}.branch-photo-caption{padding:14px 17px;font-size:.8125rem}.center-heading{margin-bottom:32px}h2{font-size:2.9rem}.center-heading>p:not(.section-label){font-size:1.0625rem;margin-top:20px}.services-intro{padding-bottom:30px}.reason-grid{grid-template-columns:1fr;border-radius:22px}.reason-card{padding:30px 24px}.reason-card .reason-quote{font-size:1.4rem}.reason-card h3{font-size:2.1rem;margin-bottom:24px}.reason-card>a{font-size:1rem}.service-directory{padding-top:40px}.service-row{grid-template-columns:68px minmax(0,1fr);gap:20px;padding-block:26px}.service-row h3{font-size:2rem}.service-row>p{grid-column:1/-1;font-size:1.0625rem}.service-illustration{height:64px;width:64px}.service-illustration svg{width:42px;height:42px}.service-cta{grid-column:1/-1}.about,.professional,.location,.review-section,.instagram-section{grid-template-columns:minmax(0,1fr);gap:32px}.about-copy>p:first-child{font-size:1.1875rem}.professional-photo{max-width:380px;width:100%;justify-self:center;border-radius:24px}.professional-copy h2{font-size:2.8rem}.professional-copy .section-label{font-size:.75rem}.comfort-grid{grid-template-columns:1fr;gap:14px}.comfort-grid article{padding:28px}.comfort-grid h3{font-size:2rem;margin-bottom:12px}.location{padding:66px var(--gutter)}.location h2{font-size:2.9rem}.location-image{border-radius:22px}.location-image img{aspect-ratio:3/2}.branch-map iframe{height:360px}.final-cta{padding-block:66px}.review-section h2,.instagram-copy h2{font-size:2.9rem}.instagram-card{max-width:400px;justify-self:center;width:100%}.instagram-card iframe{height:400px}footer{padding:38px var(--gutter) 100px}.footer-brand img{width:90px}.footer-contact{align-items:flex-start;flex-direction:column;gap:16px}.footer-bottom{flex-direction:column;gap:12px}.footer-bottom>a{margin-right:0}.floating-whatsapp{width:54px;height:54px;padding:0;right:17px;bottom:calc(17px + env(safe-area-inset-bottom))}.floating-whatsapp>span{display:none}}
@media(max-width:370px){:root{--gutter:20px}.hero h1{font-size:3rem}.header-main{gap:8px}.brand img{width:72px}.branch-nav{gap:20px}.button.small{padding:9px 12px}.professional-copy h2{font-size:2.5rem}.branch-photo-caption{font-size:.75rem;gap:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{body{padding-top:0}.site-header{position:static}.floating-whatsapp{display:none}[data-reveal]{opacity:1!important;transform:none!important}}

/* Full-width facade with an independently blurred left field. */
:root{--cream:#f0eee8;--sand:#e7dfd7;--pale:#f6f3ee;--ink:#302a26;--clay:#5e544d;--bark:#67564a}
.hero.hero-facade{position:relative;isolation:isolate;display:flex;align-items:center;min-height:clamp(620px,calc(100svh - var(--header-height)),850px);padding:0;gap:0;overflow:hidden;background:#51433a}
.hero-facade .hero-image{position:absolute;inset:0;z-index:0;margin:0;max-width:none;width:100%;height:100%;border-radius:0;box-shadow:none;background:#51433a;overflow:hidden}
.hero-facade .hero-image>img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:55% 50%}
.hero.hero-facade::before{content:'';position:absolute;inset:0 auto 0 0;width:57%;z-index:1;pointer-events:none;background:linear-gradient(90deg,#211a16e8,#211a16ab);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 82%,transparent 100%);mask-image:linear-gradient(90deg,#000 0%,#000 82%,transparent 100%)}
.hero-facade .hero-copy{position:relative;z-index:2;width:calc(50% - var(--gutter));max-width:620px;margin-left:var(--gutter);padding:70px 0 100px;color:#fffaf2}
.hero-facade h1{font-size:clamp(3.5rem,5.7vw,6rem);font-weight:400;line-height:1.02;letter-spacing:-.025em;max-width:13ch;color:#fffaf2;text-wrap:balance}
.hero-facade .section-label{color:#e8d6b5}.hero-facade .intro{color:#f5ece0;max-width:38ch;font-size:1.1875rem;line-height:1.55;margin-top:26px}
.hero-facade .button{background:#e3cda8;border-color:#e3cda8;color:#30251e}.hero-facade .button:hover{background:#f0dfc4}.hero-facade .button-outline{background:transparent;border-color:#fff8;color:#fffaf2}.hero-facade .button-outline:hover{background:#fff2}
.hero-facade .branch-photo-caption{position:absolute;z-index:2;bottom:24px;right:24px;left:auto;max-width:calc(45% - 24px);display:flex;flex-wrap:wrap;gap:8px 18px;border:1px solid #fff5;border-radius:8px;background:#211a16bd;color:#fffaf2;font-size:.875rem;padding:12px 18px}.hero-facade .branch-photo-caption>a{color:#fffaf2}
.vip-section{padding:0;background:#d8ccc1}.vip-statement{padding:100px var(--gutter);text-align:center;background:#66574c;color:#fcf7ee}.vip-statement .section-label{justify-content:center;color:#e4d2b7}.vip-statement h2{font-size:clamp(3rem,5.9vw,6rem);font-weight:400;line-height:1.04;letter-spacing:-.03em;max-width:22ch;margin:auto}.vip-statement h2 span{font-style:italic;color:#ead5ac}.vip-copy{padding:64px var(--gutter);display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:12%;align-items:start}.vip-copy>p{font:400 clamp(2rem,3vw,3rem)/1.13 var(--display);max-width:17ch}.vip-copy>div>p{font-size:1.125rem;color:var(--ink);max-width:48ch}.vip-copy .text-link{margin-top:24px;color:#5b452d;border-color:#5b452d66}.tuxtla-map{min-width:0}.tuxtla-map iframe{height:480px}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.hero.hero-facade::before{background:linear-gradient(90deg,#211a16f2,#211a16df)}}
@media(max-width:1100px){.hero-facade .hero-copy{width:calc(53% - var(--gutter));padding-block:70px 100px}.hero.hero-facade::before{width:62%}.hero-facade h1{font-size:clamp(3.3rem,5.7vw,5rem)}}
@media(max-width:800px){.hero.hero-facade{min-height:740px;align-items:flex-end}.hero-facade .hero-image{margin:0;width:100%;max-width:none;position:absolute}.hero-facade .hero-image>img{aspect-ratio:auto;object-position:61% 50%}.hero.hero-facade::before{inset:18% 0 0;width:100%;background:linear-gradient(180deg,#211a1655,#211a16e8 46%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 25%);mask-image:linear-gradient(180deg,transparent,#000 25%);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.hero-facade .hero-copy{margin:0;width:100%;max-width:none;padding:240px var(--gutter) 92px}.hero-facade h1{font-size:clamp(3rem,10.6vw,4.7rem);max-width:16ch}.hero-facade .intro{font-size:1.0625rem;max-width:40ch;margin-top:23px}.hero-facade .branch-photo-caption{left:var(--gutter);right:var(--gutter);bottom:18px;max-width:none;padding:10px 14px;font-size:.8125rem;justify-content:space-between;min-height:0}.vip-statement{padding:72px var(--gutter)}.vip-statement h2{font-size:clamp(2.9rem,10.3vw,4.5rem);max-width:19ch}.vip-statement h2 br{display:none}.vip-copy{padding:48px var(--gutter);grid-template-columns:minmax(0,1fr);gap:24px}.vip-copy>p{font-size:2.3rem;max-width:20ch}.vip-copy>div>p{font-size:1.0625rem}.tuxtla-map iframe{height:380px}}
@media(prefers-reduced-transparency:reduce){.hero.hero-facade::before{-webkit-backdrop-filter:none;backdrop-filter:none;background:#211a16e8}}
@media print{.hero.hero-facade::before{display:none}.hero.hero-facade{display:block;min-height:0;background:var(--cream)}.hero-facade .hero-copy{margin:0;padding:30px;width:100%;color:var(--ink)}.hero-facade h1,.hero-facade .intro,.hero-facade .section-label{color:var(--ink)}.hero-facade .hero-image{position:relative;height:400px}.vip-statement{color:var(--ink);background:var(--sand)}}
