/* Dirección editorial: botánica suave, fotografía real y recorridos claros. */
:root{--paper:#f7f3ed;--paper-deep:#e7e5d9;--cream:#fcfaf6;--ink:#26392f;--muted:#637167;--gold:#a68661;--sage:#dce6da;--rose:#f0e2dc;--line:#d8ded3}
.icon-library{position:absolute;width:0;height:0;overflow:hidden}.icon{width:21px;height:21px;display:inline-block;flex:none;vertical-align:middle;fill:none}.button{border-radius:999px;gap:16px;padding:15px 23px;font-size:12px}.button-dark{background:#2d4438}.button-dark:hover{background:#4c6b59}.button-outline{border-color:#435a4a}.button-outline:hover{background:#2d4438}.text-link{display:inline-flex;align-items:center;gap:8px;border-bottom:1px solid var(--gold);transition:color .2s ease,gap .25s var(--ease-out)}.text-link:hover{gap:14px;color:#58755f}.text-link .icon{width:18px}
.announcement{background:#dce6da;color:#405a47;height:32px}.announcement span{color:#ad8462}.site-header{position:sticky;top:0;max-width:none;height:84px;background:rgba(251,249,244,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(70,85,65,.1);padding-inline:clamp(22px,4.5vw,75px)}.brand{min-width:250px;font-size:19px;color:#24382c}.brand img{width:58px;height:58px;border-radius:50%;mix-blend-mode:multiply}.brand small{color:#997954}.site-nav{gap:clamp(14px,2vw,32px)}.site-nav a{font-size:12px}.site-nav .nav-book{display:flex;align-items:center;gap:12px;background:#2e4438;color:#fff;border:0;border-radius:999px;padding:13px 20px}.site-nav .nav-book:hover{background:#4b6b56}.nav-book .icon{width:17px;height:17px}.nav-book span{margin:0}
.hero{max-width:none;min-height:710px;grid-template-columns:1fr 1fr;background:radial-gradient(circle at 78% 36%,#e8e9de 0,#f7f3ed 50%,#fbf8f2 100%);padding-inline:clamp(22px,5vw,90px);padding-bottom:64px}.hero:before{width:620px;height:620px;border-color:rgba(67,95,71,.12);right:-155px;top:-82px}.hero:after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(166,134,97,.16);border-radius:50%;left:-220px;bottom:-180px;pointer-events:none}.hero-copy{padding-top:35px}.hero h1{font-size:clamp(68px,7vw,112px);line-height:.99;letter-spacing:-.055em;margin:28px 0}.hero h1 em{color:#87977e}.hero-copy>p{max-width:475px;color:#5e6b5f;font-size:18px;line-height:1.75}.hero-actions{gap:29px}.hero-note{margin-top:75px;color:#927b63}.hero-visual{min-height:620px}.hero-oval{width:min(76%,490px);height:min(80%,620px);border-radius:48% 48% 46% 46%/37% 37% 55% 55%;outline:1px solid rgba(82,93,71,.28);outline-offset:12px;box-shadow:0 28px 65px rgba(34,48,36,.13)}.hero-oval img{filter:saturate(.88)}.hero-floating{right:-2%;bottom:9%;width:175px;height:220px;border:7px solid var(--paper);box-shadow:0 22px 45px rgba(36,54,40,.17)}.hero-stamp{top:12%;left:0;color:#667d69}.hero-seal{position:absolute;top:9%;right:1%;width:113px;height:113px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;background:#e1e9db;color:#5a715d;font:italic 16px/1 "Playfair Display",serif;transform:rotate(12deg);box-shadow:0 8px 22px rgba(67,81,59,.08)}.hero-seal i{font-size:24px;font-style:normal;color:#b3936d}.hero-bottom{color:#71806f}.intro-strip{background:#dce6da;color:#526957;min-height:112px}.intro-strip p{color:#365242}.intro-strip>span{color:#5b6e5d}
.section-pad{padding-block:clamp(78px,8vw,126px)}.section-heading{margin-bottom:44px}.section-heading h2,.booking-copy h2,.location-info h2{letter-spacing:-.055em}.section-heading h2 em,.booking-copy h2 em,.location-info h2 em{color:#81977f}.section-heading>p{max-width:360px}.kicker{color:#a7835d}.feature-section{background:#fcfaf6}.treatment-carousel{border-top:0;padding-top:10px}.treatment-frame{border-radius:999px;box-shadow:0 16px 31px rgba(33,45,32,.1)}.treatment-title{color:#274136}.treatment-type{font-size:10px;color:#967c5d}.treatment-card:nth-child(2n) .treatment-frame{transform:translateY(14px)}.treatment-card:nth-child(2n){padding-bottom:22px}.treatment-carousel-footer{border-top:0;margin-top:28px;padding-top:0}.treatment-carousel-controls button{min-width:146px;border-color:#b7c6b5;color:#47624e}.catalog-head{margin:112px 0 26px;align-items:end}.catalog-head h3{font-size:clamp(38px,4vw,60px);letter-spacing:-.04em;margin-top:12px}.catalog-head h3 em{color:#8b9b82}.filter{border-color:#c8d4c7;color:#526956;padding:10px 17px}.filter.active,.filter:hover{background:#324a3b;border-color:#324a3b}.catalog-grid{display:flex;flex-direction:column;gap:23px}.category-block{display:grid;grid-template-columns:minmax(230px,31%) 1fr;gap:clamp(30px,5vw,75px);align-items:stretch;padding:24px 36px 24px 24px;min-height:315px;background:#edf0e8;border-radius:175px 28px 28px 175px;overflow:hidden}.category-block:nth-child(2){background:#eee7e1}.category-block:nth-child(3){background:#e7ece7}.category-block:nth-child(4){background:#eeeadd}.category-image{min-height:260px;overflow:hidden;border-radius:999px;background:#e2e4d8}.category-image img{width:100%;height:100%;max-height:450px;object-fit:cover;filter:saturate(.84);transition:transform .6s var(--ease-out)}.category-block:hover .category-image img{transform:scale(1.045)}.category-content{display:grid;grid-template-columns:minmax(170px,28%) 1fr;gap:clamp(26px,3vw,52px);align-items:center;padding:23px 0}.category-header h4{font:400 clamp(36px,3.2vw,52px)/1.08 "Playfair Display",serif;letter-spacing:-.045em;margin:14px 0}.category-header p{color:#657268;max-width:280px;font-size:14px;line-height:1.65;margin:0}.category-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(12px,2.4vw,36px)}.category-list a{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:49px;padding:8px 0;border-bottom:1px solid rgba(70,88,69,.2);font:500 14px/1.3 "DM Sans",sans-serif;transition:color .2s ease,padding .25s var(--ease-out)}.category-list a .icon{width:17px;height:17px;opacity:.55;transition:transform .25s var(--ease-out),opacity .2s}.category-list a:hover{color:#8b7656;padding-left:5px}.category-list a:hover .icon{transform:translateX(4px);opacity:1}.catalog-note{margin-top:25px}.quote-section{background:#e0e9dc;padding:86px 24px}.quote-inner p{color:#405a45}.quote-inner>span{color:#6c806e}
.experience-section{background:#faf7f0}.experience-grid{grid-template-columns:1.06fr 1fr 1fr;grid-template-rows:300px 300px;gap:16px}.experience-card{border:0;padding:0;text-align:left;border-radius:20px 90px 20px 20px;cursor:pointer;box-shadow:0 10px 28px rgba(45,57,41,.07)}.experience-card.tall{border-radius:180px 180px 20px 20px}.experience-card.wide{border-radius:20px 20px 180px 20px}.experience-card img{filter:saturate(.88);transition:transform .65s var(--ease-out),filter .4s}.experience-card:after{inset:45% 0 0;background:linear-gradient(transparent,rgba(15,31,20,.7))}.experience-card:hover img{transform:scale(1.055);filter:saturate(1)}.experience-card .play-disc{z-index:2;position:absolute;left:50%;top:47%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.9);color:#2b4734;backdrop-filter:blur(8px);transition:transform .25s var(--ease-out),background .2s}.experience-card:hover .play-disc{transform:translate(-50%,-50%) scale(1.1);background:#fff}.play-disc .icon{width:24px;height:24px;margin-left:3px}.experience-card .experience-caption{position:absolute;z-index:1;left:25px;right:25px;bottom:22px;color:#fff;display:flex;align-items:end;justify-content:space-between;gap:15px}.experience-caption b{font:400 27px "Playfair Display",serif}.experience-caption small{font:600 11px Manrope,sans-serif;letter-spacing:.08em;text-transform:uppercase}.social-row{border-top:1px solid #d8dfd4;margin-top:42px;padding-top:26px}.social-row p{max-width:320px}.social-row .social-links{display:flex;gap:10px}.social-links a{display:inline-flex;align-items:center;gap:10px;border:1px solid #cad6c8;border-radius:999px;padding:10px 15px;color:#354e3d;background:#fff;font-size:13px;transition:background .2s,transform .2s var(--ease-out)}.social-links a:hover{background:#e5ede3;transform:translateY(-2px)}.social-links .icon{width:18px;height:18px}
.products-section{max-width:none;background:#dce7db;display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,8vw,150px);align-items:center;padding-inline:max(5vw,calc((100vw - 1440px)/2))}.products-copy{max-width:620px}.products-copy h2,.reviews-heading h2,.detail-next-heading h2{font:400 clamp(46px,5.4vw,79px)/1.06 "Playfair Display",serif;letter-spacing:-.052em;margin:18px 0 28px}.products-copy h2 em,.reviews-heading h2 em{color:#769076}.products-copy p{max-width:500px;color:#536c58;font-size:17px;line-height:1.8}.products-copy .button{margin-top:13px}.products-copy .icon{width:19px;height:19px}.products-copy small{display:block;color:#6c806e;max-width:440px;line-height:1.5;margin-top:17px}.products-art{height:520px;position:relative;overflow:hidden;border-radius:260px 260px 28px 28px;background:linear-gradient(155deg,#edf2e9,#c5d1bc)}.product-sun{position:absolute;width:320px;height:320px;border-radius:50%;background:#f6efe0;top:35px;left:50%;transform:translateX(-50%);box-shadow:0 0 0 33px rgba(255,255,255,.12)}.product-jar,.product-bottle{position:absolute;z-index:1;bottom:92px;background:linear-gradient(90deg,#ede5d6,#fffaf0 46%,#d5c7ae);box-shadow:18px 18px 30px rgba(55,70,49,.15)}.product-jar:before,.product-bottle:before{content:"";position:absolute;background:#7d8a6f}.product-jar:after,.product-bottle:after{content:"KA’A\A KUXTAL";white-space:pre;text-align:center;position:absolute;left:0;right:0;top:40%;font:600 11px/1.8 Manrope,sans-serif;letter-spacing:.16em;color:#7e8e76}.product-jar.one{left:18%;width:115px;height:105px;border-radius:14px 14px 20px 20px}.product-jar.one:before{height:20px;top:-17px;left:1px;right:1px;border-radius:6px}.product-jar.two{right:18%;width:100px;height:82px;border-radius:12px 12px 18px 18px}.product-jar.two:before{height:17px;top:-14px;left:1px;right:1px;border-radius:6px}.product-jar.two:after{font-size:9px}.product-bottle{left:45%;width:95px;height:225px;border-radius:18px 18px 13px 13px;background:linear-gradient(90deg,#a4aa82,#d0d4ac 50%,#7c916d)}.product-bottle:before{left:27px;right:27px;top:-31px;height:34px;border-radius:4px;background:#a58c70}.product-bottle:after{color:#f7f4e8;font-size:10px}.product-shadow{position:absolute;left:10%;right:10%;height:80px;bottom:55px;background:rgba(76,91,63,.15);filter:blur(28px);border-radius:50%}
.reviews-section{background:#fbfaf6}.reviews-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:42px}.reviews-heading h2{margin-bottom:0}.review-rating{display:grid;grid-template-columns:auto auto;column-gap:13px;align-items:center;border:1px solid #d3ddcf;border-radius:23px;padding:18px 23px;background:#f1f5ee;max-width:290px}.review-rating .stars{grid-column:1/-1;letter-spacing:.11em;color:#af8f63;font-size:16px}.review-rating strong{font:400 47px "Playfair Display",serif;color:#31513b}.review-rating small{line-height:1.4;color:#607460}.reviews-grid{display:grid;grid-template-columns:1fr 1fr .8fr;gap:16px}.reviews-grid blockquote,.reviews-extra{min-height:285px;margin:0;padding:32px;border-radius:30px 90px 30px 30px;background:#e4ece0;display:flex;flex-direction:column;justify-content:space-between}.reviews-grid blockquote:nth-child(2){background:#f0e7df;border-radius:90px 30px 30px 30px}.quote-mark{height:56px;color:#8aa285;font:italic 100px/1 "Playfair Display",serif}.reviews-grid blockquote p{font:400 clamp(24px,2.1vw,34px)/1.32 "Playfair Display",serif;color:#2c4a36;max-width:420px;margin:0}.reviews-grid blockquote footer{font-size:13px;font-weight:700;color:#415e47;margin-top:22px}.reviews-grid blockquote footer span{font-weight:400;color:#718275}.reviews-extra{background:#365243;color:#fff;border-radius:30px 30px 90px 30px}.reviews-extra p{font:400 32px/1.27 "Playfair Display",serif;margin:0}.reviews-extra .text-link{align-self:flex-start;color:#fff;border-bottom-color:#b8cabb;font-size:13px}
.video-dialog{border:0;border-radius:28px;background:#f9f7f2;color:#2b3d2f;width:min(450px,calc(100vw - 30px));max-height:min(92vh,900px);padding:16px 16px 23px;box-shadow:0 25px 80px rgba(10,23,14,.35)}.video-dialog::backdrop{background:rgba(17,34,23,.74);backdrop-filter:blur(5px)}.video-dialog-top{display:flex;align-items:center;justify-content:space-between;padding:2px 4px 12px;font:400 24px "Playfair Display",serif}.video-dialog-top button{border:0;background:#e3e9df;width:38px;height:38px;border-radius:50%;font-size:25px;line-height:1}.video-embed{height:min(70vh,680px);background:#26392f;border-radius:17px;overflow:hidden}.video-embed iframe{width:100%;height:100%;border:0}.video-dialog>a{display:inline-flex;align-items:center;gap:9px;margin:17px 4px 0;font-weight:700;font-size:13px;border-bottom:1px solid #a7b9a4}
.booking-section{background:#e9e4dc;grid-template-columns:.8fr 1.2fr}.booking-copy h2 em{color:#8b9d85}.booking-contact{border-top-color:#c9d1c2}.booking-contact a{display:inline-flex;align-items:center;gap:10px;color:#2f4f3a}.booking-contact .icon{width:26px;height:26px}.booking-form{border-radius:30px 90px 30px 30px;box-shadow:0 20px 55px rgba(62,73,53,.08)}.field input,.field select,.field textarea{border-radius:11px;border-color:#d3dcd0;background:#fdfefa}.field input:focus,.field select:focus,.field textarea:focus{border-color:#779476}.form-submit{justify-content:center}.form-submit .icon{width:20px;height:20px}.location-section{background:#f7f8f3}.location-info>.button{margin-top:25px}.map-frame{border:8px solid #e1eadf;border-radius:36px 130px 36px 36px;overflow:hidden;min-height:440px}.map-frame iframe{min-height:424px}.site-footer{background:#2b4335}.footer-main img{border-radius:50%;mix-blend-mode:normal;opacity:1}.footer-social{display:flex!important;flex-direction:row!important;gap:9px!important}.footer-social a{width:43px;height:43px;border:1px solid #8da995;border-radius:50%;display:grid;place-items:center;transition:background .2s,transform .2s}.footer-social a:hover{background:#52705a;transform:translateY(-2px)}.footer-social .icon{width:19px;height:19px}.footer-bottom{border-top-color:#61806a}
.reveal{opacity:0;transform:translateY(23px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:1180px){.site-header{height:78px}.menu-toggle{display:block;z-index:25}.site-nav{position:fixed;top:78px;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:30px 7vw;background:#f7f5ee;transform:translateX(102%);transition:transform .34s var(--ease-out);overflow:auto;box-shadow:-12px 0 30px rgba(0,0,0,.06)}.menu-open .site-nav{transform:translateX(0)}.site-nav a{font:400 30px "Playfair Display",serif;padding:16px 0;border-bottom:1px solid var(--line)}.site-nav .nav-book{font:700 13px "DM Sans",sans-serif;width:max-content;padding:14px 21px;margin-top:25px}.hero h1{font-size:clamp(64px,7vw,90px)}.category-content{grid-template-columns:1fr;gap:20px}.category-header p{max-width:600px}.category-list{max-width:100%}.experience-grid{grid-template-rows:250px 250px}.products-art{height:470px}}
@media(max-width:800px){.hero{grid-template-columns:1fr;padding-bottom:65px}.hero-copy{padding-top:65px}.hero h1{font-size:clamp(64px,10vw,95px)}.hero-note{margin-top:45px}.hero-visual{min-height:530px}.hero-oval{height:470px;width:min(73%,390px)}.hero-floating{right:6%;width:140px;height:180px}.hero-seal{right:12%;top:3%}.intro-strip{gap:12px}.intro-strip p{width:100%}.category-block{grid-template-columns:200px 1fr;gap:30px;padding:18px 24px 18px 18px}.category-image{min-height:290px}.category-list{grid-template-columns:1fr}.category-list a{min-height:41px}.experience-grid{grid-template-columns:1fr 1fr;grid-template-rows:250px 220px 250px}.experience-card.tall{grid-column:span 2;grid-row:span 1;border-radius:120px 120px 20px 20px}.experience-card.wide{grid-column:span 2}.products-section{grid-template-columns:1fr;gap:50px}.products-art{height:390px;max-width:650px;width:100%;margin:auto}.products-copy{max-width:650px}.reviews-heading{align-items:start}.reviews-grid{grid-template-columns:1fr 1fr}.reviews-extra{grid-column:span 2;min-height:180px;flex-direction:row;align-items:end}.booking-section,.location-section{grid-template-columns:1fr}.booking-copy{padding:0}.booking-contact{margin-top:35px}}
@media(max-width:580px){.announcement{font-size:9px}.site-header{height:70px}.site-nav{top:70px}.brand{font-size:14px;min-width:0;gap:8px}.brand img{width:46px;height:46px}.brand small{font-size:8px}.hero-copy{padding-top:60px}.hero h1{font-size:clamp(52px,12.5vw,70px)}.hero-copy>p{font-size:16px}.hero-visual{min-height:410px}.hero-oval{height:365px;width:72%}.hero-floating{width:98px;height:132px;right:1%}.hero-seal{width:80px;height:80px;font-size:12px;right:4%}.hero-seal i{font-size:18px}.hero-bottom{font-size:8px}.intro-strip>span{font-size:9px}.section-heading h2,.booking-copy h2,.location-info h2{font-size:48px}.treatment-carousel-footer p{font-size:13px}.catalog-head{margin-top:84px}.catalog-head h3{font-size:39px}.category-block{display:block;border-radius:28px;padding:14px}.category-image{height:240px;min-height:0;border-radius:120px 120px 20px 20px}.category-content{display:block;padding:23px 10px 12px}.category-header h4{font-size:39px}.category-header p{font-size:13px;margin-bottom:17px}.category-list{grid-template-columns:1fr 1fr;column-gap:15px}.category-list a{font-size:12px;min-height:43px}.category-list a .icon{width:14px;height:14px}.experience-grid{grid-template-rows:260px 210px 210px}.experience-card .experience-caption{left:17px;right:17px;bottom:15px}.experience-caption b{font-size:21px}.experience-caption small{font-size:9px}.experience-card .play-disc{width:48px;height:48px}.social-row .social-links{width:100%;flex-wrap:wrap}.social-links a{font-size:12px;padding:9px 12px}.products-art{height:330px}.product-sun{width:250px;height:250px}.product-jar,.product-bottle{transform:scale(.78);transform-origin:bottom center;bottom:62px}.products-copy h2,.reviews-heading h2{font-size:47px}.products-copy p{font-size:15px}.reviews-heading{display:block}.review-rating{margin-top:25px}.reviews-grid{grid-template-columns:1fr}.reviews-grid blockquote,.reviews-extra{min-height:245px;grid-column:auto;padding:27px}.reviews-extra{min-height:210px;display:flex;align-items:stretch;flex-direction:column}.booking-form{border-radius:25px}.form-row{grid-template-columns:1fr}.map-frame{border-radius:25px 80px 25px 25px}.footer-main h2{font-size:37px}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.category-image img,.experience-card img,.social-links a,.footer-social a{transition:none}.hero-oval .hero-treatment{animation:none;opacity:0}}
@media(min-width:1181px) and (max-width:1380px){.site-header{height:78px}.menu-toggle{display:block;z-index:25}.site-nav{position:fixed;top:78px;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:30px 7vw;background:#f7f5ee;transform:translateX(102%);transition:transform .34s var(--ease-out);overflow:auto;box-shadow:-12px 0 30px rgba(0,0,0,.06)}.menu-open .site-nav{transform:translateX(0)}.site-nav a{font:400 30px "Playfair Display",serif;padding:16px 0;border-bottom:1px solid var(--line)}.site-nav .nav-book{font:700 13px "DM Sans",sans-serif;width:max-content;padding:14px 21px;margin-top:25px}}
@media(max-width:1380px){html,body{overflow-x:clip}.site-header{backdrop-filter:none}.site-nav{transform:none!important;clip-path:inset(0 0 0 100%);visibility:hidden;pointer-events:none;transition:clip-path .38s var(--ease-out),visibility .38s}.menu-open .site-nav{clip-path:inset(0);visibility:visible;pointer-events:auto}}
@media(max-width:580px){.site-nav{top:70px}}
@media(max-width:580px){.hero{display:flex;flex-direction:column}.hero-visual{order:-1;min-height:310px;margin-top:14px}.hero-oval{height:280px;width:58%;min-height:0}.hero-floating{width:85px;height:112px;right:12%;bottom:0}.hero-seal{right:8%;top:0}.hero-stamp{left:1%;top:19%}.hero-copy{padding-top:32px}.hero-note{margin-top:32px}.hero-bottom{display:none}}
.video-embed{position:relative}.video-start{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;background:#294435;color:#fff;overflow:hidden}.video-start[hidden]{display:none}.video-start:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(14,28,18,.72))}.video-start img{width:100%;height:100%;object-fit:cover;filter:saturate(.85)}.video-start>span{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:8px;background:rgba(255,255,255,.94);color:#2d4937;border-radius:999px;padding:13px 20px;white-space:nowrap;font-size:13px;font-weight:700}.video-start .icon{width:18px;height:18px}
.products-art{background:radial-gradient(circle at 50% 45%,#f5f0e1 0 22%,#e3eadb 23% 50%,#c8d9c6 100%)}.product-sun{width:60%;height:auto;aspect-ratio:1;top:50%;left:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,#f7f2e8,#e3d7bf);box-shadow:0 0 0 35px rgba(255,255,255,.15),0 0 0 83px rgba(255,255,255,.09)}.product-orbit{position:absolute;border:1px solid rgba(255,255,255,.7);border-radius:50%;width:90%;height:65%;left:5%;top:18%;transform:rotate(-32deg)}.product-orbit.two{transform:rotate(38deg);border-color:rgba(94,124,90,.22)}
