@font-face{font-family:Editorial;src:local("Georgia")} :root{--cream:#f7f3eb;--paper:#fffdf8;--ink:#34382f;--rust:#9b4937;--sage:#e6e7dc;--line:#d9d5ca;--muted:#696d62}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 Arial,Helvetica,sans-serif}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Editorial,Georgia,serif;font-weight:400}h2{font-size:clamp(36px,4vw,60px);line-height:1.12;letter-spacing:-1.6px;margin-bottom:25px}h2 em,h1 em{font-weight:400}p{color:var(--muted)}.wrap{width:min(1240px,88%);margin-inline:auto}.section{padding-block:110px}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:600;color:var(--rust);line-height:1.6;margin-bottom:22px}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--rust);color:white;padding:17px 25px;border:1px solid var(--rust);font-size:12px;letter-spacing:.5px;transition:background .2s,transform .2s;min-height:52px}.button:hover{background:#78392d;transform:translateY(-2px)}.button.cream{background:var(--cream);border-color:var(--cream);color:var(--ink)}.button.cream:hover{background:white}.text-link{display:inline-flex;gap:24px;align-items:center;border-bottom:1px solid var(--rust);padding-bottom:9px;font-size:13px;color:var(--rust)}:focus-visible{outline:3px solid #d89737;outline-offset:5px}.skip{position:fixed;top:-100px;left:10px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}.topline{background:var(--ink);color:#efece2;display:flex;justify-content:space-between;padding:8px 6%;font-size:10px;letter-spacing:1.6px}.header{height:100px;display:flex;gap:30px;align-items:center;padding:12px 4%;background:var(--paper);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}.brand{margin-right:auto}.brand img{width:125px;height:75px;object-fit:contain}.header nav{display:flex;gap:27px;align-items:center;font-size:12px}.header nav a:hover{color:var(--rust)}.header-book{padding:12px 24px;min-height:46px}.menu-toggle{display:none}.hero{height:min(790px,80vh);min-height:570px;position:relative;color:white;isolation:isolate}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-position:50% 53%;z-index:-3}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,32,24,.75),rgba(24,31,22,.25) 65%,rgba(24,31,22,.03));z-index:-2}.hero-content{padding:100px 8% 90px;max-width:900px}.hero .eyebrow{color:#f2dec0}.hero h1{font-size:clamp(58px,7.2vw,104px);line-height:1.02;letter-spacing:-3px;margin-bottom:27px}.hero-content>p:not(.eyebrow){color:#f3f0e6;font-size:16px;margin-bottom:35px;line-height:1.8}.hero-caption{position:absolute;bottom:30px;left:8%;right:8%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.5px;border-top:1px solid #ffffff50;padding-top:20px}.booking{position:relative;z-index:2;max-width:1240px;width:88%;margin:0 auto;background:var(--cream);padding:30px 35px 20px;display:grid;grid-template-columns:1.1fr 1fr 1fr .9fr 1.6fr;gap:22px;align-items:center;border-bottom:1px solid var(--line)}.booking-intro .eyebrow{font-size:8px;margin-bottom:5px}.booking-intro strong{font:26px Georgia,serif;font-weight:400}.booking label{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted);display:grid;gap:8px}.booking input,.booking select{width:100%;min-width:0;border:0;border-bottom:1px solid #c9c5b8;background:transparent;padding:8px 0;color:var(--ink);font-size:13px;letter-spacing:0;min-height:40px;border-radius:0}.booking-note{grid-column:1/-1;text-align:right;font-size:10px;margin:0;color:var(--muted)}.about{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.about-pictures{position:relative;padding:0 50px 60px 0}.about-main{height:520px;width:84%;object-position:center}.about-detail{width:45%;height:260px;position:absolute;bottom:0;right:0;border:10px solid var(--paper)}.picture-label{position:absolute;left:-25px;top:50%;writing-mode:vertical-rl;transform:rotate(180deg);font-size:9px;letter-spacing:2px;color:var(--muted)}.about-copy>p:not(.eyebrow){font-size:14px;max-width:450px}.about-numbers{display:flex;gap:45px;border-top:1px solid var(--line);margin-top:35px;padding-top:25px}.about-numbers div{display:flex;gap:15px;align-items:center}.about-numbers strong{font:46px Georgia,serif;color:var(--rust);font-weight:400}.about-numbers span{max-width:100px;font-size:11px;color:var(--muted);line-height:1.5}.rooms{background:var(--cream)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:35px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:13px;margin-bottom:5px}.filters{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:27px}.filters button{border:1px solid var(--line);background:transparent;color:var(--muted);padding:10px 16px;font-size:11px;min-height:44px}.filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.filters button:hover{border-color:var(--ink)}.room-count{font-size:10px;letter-spacing:1px;margin:18px 0}.room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 26px}.room-card{background:var(--paper);border:1px solid var(--line);position:relative}.room-picture{position:relative;height:245px;overflow:hidden}.room-picture img{width:100%;height:100%;transition:transform .5s}.room-card:hover .room-picture img{transform:scale(1.035)}.room-number{position:absolute;top:15px;left:15px;background:var(--paper);padding:5px 11px;font-size:9px;letter-spacing:1px}.room-placeholder{height:245px;background:#e9e5da;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#777d70;position:relative;overflow:hidden}.room-placeholder:before{content:"";width:130px;height:155px;border:1px solid #c5c7b8;border-radius:70px 70px 0 0;position:absolute;top:28px}.room-placeholder strong{font:55px Georgia,serif;font-weight:400;z-index:1;line-height:1}.room-placeholder span{font-size:10px;letter-spacing:1px;margin-top:20px;z-index:1}.room-body{padding:23px 25px}.room-body .eyebrow{font-size:8px;margin-bottom:9px;letter-spacing:1.5px}.room-body h3{font-size:27px;line-height:1.2;margin-bottom:14px}.room-body>p{font-size:12px;min-height:42px;line-height:1.75}.room-tags{display:flex;flex-wrap:wrap;gap:6px;margin:15px 0 22px;min-height:30px}.room-tags span{border:1px solid var(--line);font-size:9px;padding:3px 7px;color:var(--muted)}.room-detail{border:0;border-top:1px solid var(--line);background:transparent;color:var(--rust);display:flex;justify-content:space-between;width:100%;padding:17px 0 0;font-size:11px;min-height:44px;text-align:left}.included{text-align:center}.included-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:50px;gap:35px}.included-grid article{border-right:1px solid var(--line);padding-right:30px}.included-grid article:last-child{border:0;padding-right:0}.line-icon{display:block;font-size:30px;font-weight:400;color:var(--rust);height:65px}.included-grid h3{font-size:24px}.included-grid p{font-size:12px;max-width:220px;margin:auto}.terrace{display:grid;grid-template-columns:1fr 1fr;background:var(--sage)}.terrace-image img{width:100%;height:650px;object-position:center 55%}.terrace-copy{padding:95px 15%;align-self:center}.terrace-copy h2{font-size:clamp(45px,5vw,74px)}.terrace-copy>p:not(.eyebrow){font-size:14px}.wellness{background:var(--ink);color:var(--cream);text-align:center;position:relative;overflow:hidden}.wellness:before,.wellness:after{content:"";position:absolute;border:1px solid #ffffff12;width:450px;height:650px;border-radius:50%;top:-100px;left:-330px;transform:rotate(25deg);pointer-events:none}.wellness:after{left:auto;right:-330px;top:80px}.wellness-inner{max-width:750px;position:relative}.wellness .eyebrow{color:#ddba9d}.wellness p{color:#d0d1c5;font-size:14px}.wellness .small{font-size:11px;max-width:520px;margin:0 auto 30px}.wellness-benefits{display:flex;gap:25px;justify-content:center;margin:30px 0;font:24px Georgia,serif}.wellness-benefits span+span{border-left:1px solid #ffffff40;padding-left:25px}.location{display:grid;grid-template-columns:1.3fr 1fr;gap:100px;align-items:center}.location>img{height:460px;width:100%}.location p{max-width:480px;font-size:14px}.times{display:flex;gap:40px;margin-top:35px;font-size:11px;color:var(--muted)}.times strong{display:block;font:28px Georgia,serif;color:var(--ink)}.final-cta{background:var(--rust);text-align:center;padding:75px 6%;color:var(--paper)}.final-cta .eyebrow{color:#ecd8c3}.final-cta h2{font-size:clamp(40px,5.5vw,75px)}footer{padding:60px 0 20px;display:grid;grid-template-columns:1.5fr 1fr .8fr;gap:30px}footer img{width:140px;height:85px;object-fit:contain;object-position:left}footer p,footer a{font-size:12px}footer>div>a{display:block;margin-bottom:10px}footer .eyebrow{font-size:9px;margin:25px 0}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:20px;font-size:10px;color:var(--muted)}.floating-wa{position:fixed;bottom:22px;right:25px;display:flex;align-items:center;gap:9px;z-index:35;background:var(--ink);color:white;border:1px solid #ffffff70;padding:13px 20px;border-radius:50px;font-size:11px;box-shadow:0 4px 22px #0002}.floating-wa:hover{background:var(--rust)}dialog{padding:0;border:0;width:min(1000px,94vw);max-height:90vh;background:var(--paper);color:var(--ink);overflow:auto}dialog::backdrop{background:#192019bf}.dialog-close{position:absolute;top:12px;right:12px;z-index:3;background:var(--paper);border:1px solid var(--line);width:44px;height:44px;font-size:28px;color:var(--ink)}.dialog-layout{display:grid;grid-template-columns:1.1fr 1fr}.dialog-gallery{background:var(--sage);min-width:0}.dialog-gallery>img{height:380px;width:100%}.gallery-controls{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;font-size:11px}.gallery-controls button{width:44px;height:44px;border:1px solid var(--line);background:var(--paper);font-size:22px}.gallery-thumbs{display:flex;gap:8px;padding:10px 16px 20px;overflow:auto}.gallery-thumbs button{padding:0;background:none;border:2px solid transparent;min-width:64px}.gallery-thumbs button[aria-pressed=true]{border-color:var(--rust)}.gallery-thumbs img{width:64px;height:50px}.dialog-copy{padding:60px 35px 35px}.dialog-copy h2{font-size:40px}.dialog-copy p{font-size:13px}.dialog-copy ul{padding-left:18px;font-size:13px;color:var(--muted);line-height:1.9}.dialog-copy .button{gap:10px;width:100%;margin-top:15px}.dialog-copy .small{font-size:10px;margin-top:10px}.dialog-gallery>.room-placeholder{height:100%;min-height:350px}.guide-header{position:static}.guide{max-width:900px}.guide section{padding:35px 0;border-bottom:1px solid var(--line)}.guide h1{font-size:60px;line-height:1.1}.guide h2{font-size:36px}.guide h3{font-size:25px}.guide ul{color:var(--muted)}.guide nav{display:flex;gap:15px;flex-wrap:wrap;font-size:12px}.guide .places{display:grid;grid-template-columns:1fr 1fr;gap:20px}.guide .places p{font-size:13px}
@media(min-width:1600px){.hero-image{object-position:50% 58%}}@media(max-width:1050px){.header nav{gap:16px;font-size:11px}.header{gap:20px}.booking{grid-template-columns:repeat(3,1fr)}.booking-intro{grid-column:1/-1}.booking>.button{grid-column:1/-1}.booking-note{text-align:center}.about,.location{gap:45px}.room-picture,.room-placeholder{height:210px}.room-body{padding:20px}.room-body h3{font-size:24px}.terrace-copy{padding:65px 12%}.about-main{height:450px}}
@media(max-width:760px){html{scroll-padding-top:84px}.topline{padding:7px 6%;font-size:8px;letter-spacing:1px}.topline a{letter-spacing:.2px}.header{height:80px;padding:8px 6%;gap:12px}.brand img{width:100px;height:62px}.menu-toggle{display:flex;align-items:center;gap:9px;border:0;background:transparent;font-size:11px;color:var(--ink);padding:12px}.header-book{min-height:40px;font-size:10px;padding:8px 12px;gap:12px}.header nav{display:none;position:absolute;left:0;right:0;top:79px;background:var(--paper);padding:22px 6%;border-bottom:1px solid var(--line);box-shadow:0 10px 15px #0001}.header nav.open{display:grid;gap:0}.header nav a{padding:12px 0;font-size:14px}.hero{min-height:590px;height:75vh;max-height:740px}.hero-image{object-position:59% 50%}.hero-shade{background:linear-gradient(90deg,#172018bd,#17201850)}.hero-content{padding:80px 7%}.hero h1{font-size:clamp(52px,10.2vw,78px);letter-spacing:-2px}.hero-content>p:not(.eyebrow){font-size:14px}.hero .eyebrow{font-size:8px;letter-spacing:2px}.hero-caption{left:7%;right:7%;font-size:8px;gap:15px}.booking{padding:25px 20px 18px;width:88%;gap:18px 12px;grid-template-columns:1fr 1fr}.booking label:last-of-type{grid-column:1/-1}.section{padding-block:65px}.about{grid-template-columns:1fr;gap:40px}.about-pictures{padding-bottom:45px;max-width:480px}.about-main{height:400px}.about-detail{height:220px}.about-copy>p:not(.eyebrow){max-width:100%}.section-heading{display:block;margin-bottom:25px}.section-heading>p{margin:22px 0 0}.filters{gap:7px}.filters button{font-size:10px;padding:9px 11px}.room-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 15px}.room-picture,.room-placeholder{height:190px}.room-body{padding:18px}.room-body h3{font-size:23px}.room-body .eyebrow{font-size:7px;letter-spacing:1px}.room-body>p{font-size:11px;min-height:60px}.room-tags{min-height:50px}.room-tags span{font-size:8px}.room-placeholder:before{width:100px;height:120px;top:20px}.room-placeholder strong{font-size:45px}.room-placeholder span{font-size:8px}.included-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.included-grid article:nth-child(even){border-right:0;padding-right:0}.included-grid article{padding-right:15px}.included-grid h3{font-size:22px}.terrace{grid-template-columns:1fr}.terrace-image img{height:430px}.terrace-copy{padding:50px 8%}.terrace-copy h2{font-size:53px}.wellness-benefits{font-size:20px;gap:15px}.wellness-benefits span+span{padding-left:15px}.location{grid-template-columns:1fr;gap:35px}.location>img{height:380px}.location .button{font-size:11px;gap:8px}.final-cta .eyebrow{font-size:8px}.final-cta{padding-block:55px}footer{grid-template-columns:1fr 1fr;gap:20px}footer>div:first-child{grid-column:1/-1}.floating-wa{padding:13px;right:15px;bottom:15px}.floating-wa span{display:none}.dialog-layout{grid-template-columns:1fr}.dialog-gallery>img{height:280px}.dialog-copy{padding:30px 25px}.dialog-copy h2{font-size:35px}.dialog-gallery>.room-placeholder{min-height:230px}.guide h1{font-size:44px}.guide .places{grid-template-columns:1fr}}
@media(max-width:420px){.room-grid{grid-template-columns:1fr}.room-picture,.room-placeholder{height:235px}.room-body>p{min-height:0}.room-tags{min-height:0}.about-main{height:340px}.about-detail{height:190px}.hero-content{padding-top:75px}.hero h1{font-size:53px}.hero-content .button{font-size:11px;padding:15px 20px}.hero-caption>a{letter-spacing:.4px}.about-numbers{gap:25px}.booking-note{font-size:9px}.wellness-benefits{font-size:18px;gap:12px}.wellness-benefits span+span{padding-left:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.header nav{gap:23px}.header nav a[aria-current=page]{color:var(--rust);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px}.page-intro{padding-block:75px 65px;text-align:center;max-width:950px}.page-intro h1,.room-page h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(44px,5.8vw,78px);line-height:1.08;letter-spacing:-2px;margin-bottom:24px}.page-intro>p:last-child{max-width:620px;margin:0 auto;font-size:14px}.room-page .section-heading{align-items:center}.room-page h1{margin-bottom:0;font-size:clamp(40px,5vw,66px)}.room-page{padding-top:75px}.home-story,.home-experiences,.breakfast-page{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.home-story>img{height:470px;width:100%;object-position:50% 45%}.home-story p,.home-experiences p,.breakfast-page p{font-size:14px;max-width:450px}.home-rooms{background:var(--cream)}.home-room-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:35px}.home-room{display:block;border:1px solid var(--line);background:var(--paper)}.home-room>img{height:330px;width:100%}.home-room>div{padding:27px 30px}.home-room .eyebrow{font-size:9px;margin-bottom:10px}.home-room h3{display:flex;justify-content:space-between;gap:15px;font-size:31px;margin-bottom:13px}.home-room h3 span{color:var(--rust)}.home-room p:last-child{font-size:12px;margin-bottom:0}.home-room:hover h3{color:var(--rust)}.category-links{display:flex;flex-wrap:wrap;gap:15px 25px;margin-top:25px;font-size:11px}.category-links span{color:var(--muted)}.category-links a{color:var(--rust);border-bottom:1px solid var(--line)}.home-experiences>img{height:450px;width:100%;object-position:50% 55%}.breakfast-page{border-top:1px solid var(--line)}.breakfast-page>img{height:430px;width:100%;object-position:50% 45%}.discover-grid,.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:45px}.discover-grid article,.contact-grid article{border-top:1px solid var(--line);padding-top:25px}.discover-grid article>span{font:32px Georgia,serif;color:var(--rust);display:block;margin-bottom:20px}.discover-grid h3,.contact-grid h3{font-size:28px;line-height:1.3}.discover-grid p,.contact-grid p{font-size:13px;min-height:70px}.discover-grid .text-link,.contact-grid .text-link{font-size:12px}.contact-page{background:var(--cream)}.booking-info{display:grid;grid-template-columns:1.3fr 1fr;gap:85px}.booking-info ol{padding-left:20px;color:var(--muted);font-size:14px;line-height:1.9}.booking-info li{margin-bottom:20px}.booking-info ol strong{display:block;color:var(--ink)}.booking-info p{font-size:12px}.booking-inclusions{background:var(--cream);padding:35px;align-self:start;border:1px solid var(--line)}.booking-inclusions h3{font-size:30px}.booking-inclusions ul{color:var(--muted);font-size:13px;padding-left:18px;line-height:1.9;margin-bottom:25px}.booking-page{margin-top:0}.guest-guide .guide-content{max-width:1280px;margin:auto;padding:0 5%}
@media(max-width:1100px){.header nav{gap:15px}.header{gap:20px}.home-story,.home-experiences,.breakfast-page{gap:45px}.booking-info{gap:40px}.discover-grid,.contact-grid{gap:25px}}
@media(max-width:760px){.header nav{gap:0}.page-intro{padding-block:50px 45px}.page-intro h1{font-size:46px;letter-spacing:-1.5px}.page-intro>p:last-child{font-size:13px}.room-page{padding-top:50px}.room-page h1{font-size:43px}.home-story,.home-experiences,.breakfast-page{grid-template-columns:1fr;gap:35px}.home-story>img{height:390px}.home-experiences>img{height:360px}.home-room-grid{grid-template-columns:1fr;gap:25px}.home-room>img{height:260px}.home-room>div{padding:23px}.home-room h3{font-size:28px}.category-links{gap:12px 20px}.discover-grid,.contact-grid,.booking-info{grid-template-columns:1fr;gap:35px}.discover-grid p,.contact-grid p{min-height:0}.discover-grid,.contact-grid{margin-top:30px}.breakfast-page>img{height:330px}.booking-inclusions{padding:28px}.booking-info ol{font-size:13px}.guest-guide .guide-content{padding-inline:6%}.guest-guide .intro h1{font-size:49px}}

/* Shared action system */
.button{border-radius:10px;padding:15px 22px;font-size:12px;line-height:1.45;font-weight:600;letter-spacing:.15px;gap:10px;min-height:50px;box-shadow:0 3px 0 #00000008;white-space:normal;text-align:center;transition:background .18s,box-shadow .18s,transform .18s;border-width:1px}.button>svg,.featured-button>svg{width:19px;height:19px;flex:0 0 19px}.button:hover{box-shadow:0 6px 18px #34382f18;transform:translateY(-2px)}.button-booking{background:var(--rust);border-color:var(--rust);color:white}.button-whatsapp{background:#246b4c;border-color:#246b4c;color:white}.button-whatsapp:hover{background:#18543b;border-color:#18543b}.button-outline{background:var(--paper);border-color:#c9c5b8;color:var(--ink)}.button-outline:hover{background:var(--cream);border-color:var(--rust);color:var(--rust)}.button-subtle{background:transparent;border-color:var(--line);color:var(--ink);box-shadow:none}.button-subtle:hover{background:var(--cream);border-color:var(--rust);color:var(--rust)}.button.cream{border-radius:10px}.header-book{padding:12px 19px;min-height:46px;white-space:nowrap}.topline{align-items:center;padding-block:5px}.topline .button{min-height:28px;padding:4px 9px;background:#ffffff0d;border-color:#ffffff35;color:white;font-size:10px;box-shadow:none}.topline .button>svg{width:13px;height:13px;flex-basis:13px}.header nav a{padding:7px 0;border-radius:6px}.header nav a:hover{background:var(--cream)}.action-pair{display:flex;flex-wrap:wrap;gap:13px;align-items:center}.hero-content .action-pair{margin-top:30px}.hero-content .action-pair .button{padding:18px 24px;min-height:58px}.hero-content .button-booking{background:var(--cream);border-color:var(--cream);color:var(--ink)}.hero-content .button-booking:hover{background:white}.hero-content .button-whatsapp{border-color:#ffffff45}.reservation-strip{padding:35px 40px;display:flex;align-items:center;justify-content:space-between;gap:35px;background:var(--cream);border-bottom:1px solid var(--line)}.reservation-strip h2{font-size:32px;margin-bottom:8px}.reservation-strip p{font-size:12px;margin-bottom:0;max-width:450px}.reservation-strip .eyebrow{font-size:9px;margin-bottom:10px}.reservation-strip .action-pair{flex-shrink:0}.page-intro .action-pair{justify-content:center;margin-top:35px}.featured-three{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.featured-three .home-room>img,.featured-three .room-placeholder{height:270px}.featured-three .home-room>div:not(.room-placeholder){padding:25px}.featured-three .home-room h3{font-size:28px;line-height:1.2}.featured-button{display:flex;align-items:center;justify-content:space-between;margin-top:25px;padding:13px 15px;background:var(--cream);border:1px solid var(--line);border-radius:8px;color:var(--rust);font-size:11px;font-weight:600}.category-links a{padding:8px 13px;border:1px solid var(--line);border-radius:8px;min-height:40px;display:inline-flex;align-items:center}.room-detail{border:1px solid var(--line);border-radius:8px;padding:12px 15px;background:var(--cream);font-weight:600}.room-detail:hover{border-color:var(--rust)}footer>div>a.button{display:flex;width:fit-content;margin-bottom:12px;padding:11px 14px;min-height:44px;font-size:11px}footer .footer-bottom>a.button{min-height:36px;font-size:10px}.line-icon>svg{width:38px;height:38px;display:block;margin:0 auto}.room-booking-actions{display:grid;gap:10px;margin-top:20px}.dialog-copy .room-booking-actions .button{margin-top:0}.guest-guide a.button{border-radius:10px;gap:10px;text-align:center}.guest-guide a.button>svg{width:19px;height:19px;flex-shrink:0}.guest-guide a.button-whatsapp{background:#246b4c;border-color:#246b4c;color:white}.guest-guide a.button-outline{background:var(--paper);color:var(--ink);border:1px solid var(--line)}.hotel-map{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--cream);min-width:0}.hotel-map iframe{display:block;border:0;width:100%;height:440px}.hotel-map p{padding:13px 18px;margin:0;font-size:11px}
/* Reviewed experience cards */
.experience-nav{display:flex;gap:10px;flex-wrap:wrap;padding:0 0 30px;border-bottom:1px solid var(--line)}.experience-nav a{display:flex;align-items:center;gap:12px;min-height:45px;border:1px solid var(--line);padding:11px 15px;border-radius:9px;font-size:11px}.experience-nav a:hover{border-color:var(--rust);background:var(--cream)}.experience-nav a>span{font-size:8px;letter-spacing:.3px;color:var(--rust)}.section-note{font-size:13px;max-width:720px;margin-bottom:35px}.experience-list{display:grid;grid-template-columns:1fr 1fr;gap:17px;align-items:start}.experience-card{border:1px solid var(--line);border-radius:14px;background:var(--paper);overflow:hidden}.experience-card summary{display:flex;gap:17px;padding:25px;list-style:none;cursor:pointer;align-items:flex-start;min-height:150px}.experience-card summary::-webkit-details-marker{display:none}.experience-number{font:25px Georgia,serif;line-height:1.2;color:var(--rust);flex-shrink:0}.experience-card h3{font-size:25px;line-height:1.25;margin-bottom:12px}.experience-description{display:block;font-size:12px;line-height:1.8;color:var(--muted)}.expand-indicator{display:grid;place-items:center;width:25px;height:25px;flex:0 0 25px;border:1px solid var(--line);border-radius:50%;margin-left:auto;color:var(--rust);font-size:19px;line-height:1}.experience-card[open]{border-color:#bcb7a8;box-shadow:0 8px 25px #34382f08}.experience-card[open] .expand-indicator{transform:rotate(45deg)}.experience-body{padding:0 25px 25px}.experience-body dl{margin:0;border-top:1px solid var(--line)}.experience-body dl>div{padding:15px 0;border-bottom:1px solid #e9e5da}.experience-body dt{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--rust);font-weight:600;margin-bottom:6px}.experience-body dd{margin:0;font-size:12px;line-height:1.85;color:var(--muted)}.experience-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}.experience-actions .button{font-size:10px;padding:12px 14px;min-height:44px}.route-section{background:var(--cream)}.pending-experiences{background:var(--sage)}.pending-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.pending-grid article+article{border-left:1px solid #c5c8b8;padding-left:65px}.pending-grid h2{font-size:41px}.pending-grid p{font-size:13px;max-width:460px}.pending-badge{display:inline-block;background:#ffffff80;color:var(--muted);border:1px solid #c7c9bb;border-radius:5px;padding:5px 10px;font-size:9px;letter-spacing:.6px;margin-bottom:25px}.experience-notice{padding:25px 0;font-size:11px;color:var(--muted)}.experience-section{scroll-margin-top:100px}
@media(max-width:1100px){.reservation-strip{display:block;padding:30px}.reservation-strip .action-pair{margin-top:22px}.featured-three .home-room h3{font-size:25px}.featured-three .home-room>div:not(.room-placeholder){padding:20px}.experience-card summary{padding:20px;gap:12px}.experience-card h3{font-size:23px}.experience-body{padding:0 20px 20px}.pending-grid{gap:35px}.pending-grid article+article{padding-left:35px}}
@media(max-width:760px){.topline{gap:10px;font-size:7px}.topline .button{font-size:8px;letter-spacing:0;min-height:26px}.topline .button>svg{width:11px;height:11px;flex-basis:11px}.header-book{padding:9px 12px;min-height:40px;font-size:10px}.header-book>svg{width:16px;height:16px;flex-basis:16px}.header nav a{padding:12px 0}.hero{min-height:630px;height:80vh}.hero-content{padding-top:75px}.hero-content .action-pair{align-items:stretch;gap:10px;max-width:420px}.hero-content .action-pair .button{font-size:11px;padding:15px 17px;min-height:53px}.action-pair .button{font-size:11px}.reservation-strip{padding:26px 20px}.reservation-strip h2{font-size:29px}.reservation-strip .action-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.reservation-strip .button{padding:12px 10px;font-size:10px;gap:7px}.featured-three{grid-template-columns:1fr}.featured-three .home-room>img,.featured-three .room-placeholder{height:260px}.featured-three .home-room h3{font-size:29px}.experience-list{grid-template-columns:1fr}.experience-card summary{min-height:0;padding:22px 18px}.experience-card h3{font-size:24px}.experience-body{padding:0 18px 22px}.experience-nav{gap:8px;padding-bottom:25px}.experience-nav a{font-size:10px;padding:10px 12px}.pending-grid{grid-template-columns:1fr;gap:40px}.pending-grid article+article{padding:35px 0 0;border-left:0;border-top:1px solid #c5c8b8}.pending-grid h2{font-size:37px}.hotel-map iframe{height:360px}.experience-actions{display:grid;grid-template-columns:1fr}.experience-actions .button{justify-content:center}.experience-section{scroll-margin-top:80px}.location .button{max-width:100%}.contact-grid .button{width:fit-content}footer .footer-bottom>a.button{margin-bottom:0}}
@media(max-width:420px){.hero-content .action-pair{display:grid;grid-template-columns:1fr;max-width:250px;margin-top:23px}.hero-content>p:not(.eyebrow){margin-bottom:23px}.hero h1{font-size:51px}.hero{min-height:650px}.hero-caption{font-size:7px;gap:12px}.hero-content .action-pair .button{padding:13px 18px;min-height:49px}.reservation-strip .action-pair{grid-template-columns:1fr}.experience-number{font-size:22px}.experience-card h3{font-size:22px}.experience-actions .button{font-size:11px}}

/* Promociones y servicios */
.promotion-empty{max-width:850px;padding-top:35px}.promotion-empty>p{max-width:650px}.promotion-empty .action-pair{margin-top:30px}.floron-card{border-color:#788567;background:#f1f2e9}.included-grid article .button{margin-top:10px}.promotions-teaser{border-top:1px solid var(--line)}@media(min-width:1001px){.header{gap:18px}.header nav{gap:18px}.header-book{padding-inline:18px}}

/* Miniaturas de experiencias: junto al texto de presentación */
.experience-card summary{gap:16px;padding:20px;align-items:start}.experience-thumb{width:112px;height:112px;object-fit:cover;border-radius:9px;flex:0 0 112px;background:var(--sage)}.experience-summary-copy{min-width:0;flex:1}.experience-summary-copy>.experience-number{display:block;font:10px Arial,sans-serif;letter-spacing:1.2px;margin-bottom:9px}.experience-card h3{font-size:23px}.experience-card .expand-indicator{width:23px;height:23px;flex-basis:23px}.photo-pending{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:10px;text-align:center;color:var(--muted);font:10px/1.4 Arial,sans-serif}.photo-pending svg{width:28px;height:28px}.photo-credit{margin:0 0 15px}.photo-credit .button{padding:6px 10px;min-height:32px;font-size:9px}.pending-photo-heading{display:flex;gap:20px;align-items:center;margin-bottom:25px}.pending-photo-heading h2{font-size:34px;margin-bottom:0}.pending-photo-heading .pending-badge{margin-bottom:12px}@media(max-width:1100px) and (min-width:761px){.experience-thumb{width:88px;height:100px;flex-basis:88px}.experience-card summary{gap:12px;padding:16px}.experience-card h3{font-size:21px}}@media(max-width:760px){.experience-card summary{padding:17px;gap:13px}.experience-thumb{width:84px;height:100px;flex-basis:84px}.experience-card h3{font-size:21px}.experience-description{font-size:12px;line-height:1.65}.pending-photo-heading h2{font-size:30px}}@media(max-width:360px){.experience-thumb{width:66px;height:85px;flex-basis:66px}.experience-card summary{gap:10px;padding:13px}.experience-card h3{font-size:19px}}

.wellness-photo-heading{display:flex;gap:25px;align-items:center;justify-content:center;margin-bottom:25px}.wellness-photo-heading h2{margin:0;text-align:left}.wellness-photo-heading .experience-thumb{width:125px;height:125px;flex-basis:125px}@media(max-width:760px){.wellness-photo-heading{gap:16px}.wellness-photo-heading .experience-thumb{width:84px;height:100px;flex-basis:84px}.wellness-photo-heading h2{font-size:32px}}

/* Imágenes proporcionadas por el hotel */
.supplied-floron,.supplied-restaurante-8{object-fit:contain;background:#f2ede2}.supplied-restaurante-9{object-position:50% 20%}.supplied-restaurante-4{object-position:50% 27%}
/* Shared action design */
:root{--action-shadow:0 5px 12px #34382f12;--action-radius:12px}.button,.featured-button,.room-detail{border-radius:var(--action-radius);font-weight:600;letter-spacing:.15px;gap:11px;box-shadow:var(--action-shadow);transition:background .18s,border-color .18s,box-shadow .18s,transform .18s;line-height:1.45}.button{padding:15px 22px;min-height:50px;border:1px solid transparent}.button:hover,.room-detail:hover{transform:translateY(-2px);box-shadow:0 8px 18px #34382f20}.button:active,.room-detail:active{transform:translateY(0);box-shadow:0 2px 5px #34382f15}.button-booking{background:#984731;border-color:#984731;color:white}.button-booking:hover{background:#7c3625;border-color:#7c3625}.button-whatsapp{background:#246c50;border-color:#246c50;color:white}.button-whatsapp:hover{background:#17573e;border-color:#17573e}.button-outline{background:#fffdf8;border-color:#d3cec1;color:var(--ink)}.button-outline:hover{background:#eee9df;border-color:#a9a28f;color:var(--ink)}.button-subtle{background:#f1ede4;border-color:#e1dbce;color:#595e51;box-shadow:none}.button-subtle:hover{background:#e5e0d4;border-color:#c9c0ad;color:var(--ink)}.button.cream{background:#f9f5eb;color:#34382f;border-color:#ece5d6}.button.cream:hover{background:white;border-color:white}.hero .button{box-shadow:0 6px 20px #0002}.header-book{padding:12px 18px;min-height:46px;border-radius:11px}.topline .button{border-radius:8px;box-shadow:none}.room-detail{padding:12px 15px;margin-top:20px;background:#f1ede4;border:1px solid #ddd6c6;color:var(--ink);align-items:center}.featured-button{display:inline-flex;padding:10px 14px;border:1px solid #d4cbb8;background:#fffcf5;color:var(--ink);min-height:44px}.filters button{border-radius:999px;background:#faf7f0;font-weight:600;transition:background .18s,border-color .18s,box-shadow .18s}.filters button[aria-pressed=true]{background:var(--rust);border-color:var(--rust);box-shadow:0 3px 8px #9b49371f}.filters button:hover{border-color:var(--rust)}.category-links{align-items:center;gap:10px}.category-links a{padding:10px 14px;border:1px solid #d9d1c1;border-radius:999px;background:#faf7f0;min-height:44px;display:inline-flex;align-items:center}.category-links a:hover{background:#eee7da;border-color:var(--rust)}.experience-nav a{border-radius:12px;transition:background .18s,transform .18s}.experience-nav a:hover{background:#eee8dd;transform:translateY(-1px)}.dialog-close,.gallery-controls button{border-radius:50%;box-shadow:0 3px 10px #34382f15;transition:background .18s}.dialog-close:hover,.gallery-controls button:hover{background:#e6dfd1}.gallery-thumbs button{border-radius:8px;overflow:hidden}.menu-toggle{border:1px solid #ded7c7;border-radius:10px;background:#f8f4eb}.floating-wa{box-shadow:0 6px 20px #1234233d;background:#246c50;border:1px solid #ffffff50}.floating-wa:hover{background:#17573e}.room-icon{width:20px;height:20px;flex:0 0 20px}.room-tags span{display:inline-flex;align-items:center;gap:7px;line-height:1.5}.room-tags .room-icon{width:16px;height:16px;flex-basis:16px}.room-facts{border-block:1px solid var(--line);margin:25px 0;padding:15px 0}.room-facts p{display:flex;align-items:flex-start;gap:12px;margin-bottom:15px}.room-facts p:last-child{margin:0}.room-facts strong{display:block;color:var(--ink);font-size:11px;letter-spacing:.4px;margin-bottom:4px}.dialog-copy ul{list-style:none;padding:0;display:grid;gap:12px}.dialog-copy li{display:flex;gap:10px;align-items:center;font-size:13px}.dialog-copy li .room-icon{color:var(--rust)}
/* Independent photo carousels */
.carousel{position:relative;touch-action:pan-y}.carousel-slides{position:absolute;inset:0;overflow:hidden;isolation:isolate}.carousel-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s ease;pointer-events:none}.carousel-slide.is-active{opacity:1}.hero .carousel-slides{z-index:-3}.hero .carousel-slide{object-position:50% 50%}.carousel-controls{position:absolute;z-index:4;display:flex;gap:9px;align-items:center;bottom:20px;left:50%;transform:translateX(-50%);background:#2933288c;backdrop-filter:blur(12px);border:1px solid #ffffff36;padding:7px;border-radius:999px;box-shadow:0 4px 20px #0002}.carousel-controls button{display:grid;place-items:center;background:#ffffff15;color:white;border:1px solid #ffffff38;min-width:38px;height:38px;border-radius:50%;font-size:19px;transition:background .2s;cursor:pointer;padding:0}.carousel-controls button:hover{background:#ffffff45}.carousel-dots{display:flex;gap:0}.carousel-dots button{min-width:26px;width:26px;border:0;background:transparent}.carousel-dots button span{width:6px;height:6px;background:#ffffff75;border-radius:50%;transition:width .2s,background .2s}.carousel-dots button[aria-pressed=true] span{width:17px;border-radius:5px;background:white}.carousel-controls .carousel-pause{font-size:13px;min-width:34px;width:34px}.hero>.carousel-controls{left:auto;right:8%;bottom:85px;transform:none}.hero-caption{bottom:24px}.story-carousel{width:100%;height:470px;min-width:0;border-radius:16px;overflow:hidden;background:var(--sage)}.home-story .story-carousel img{height:100%;width:100%;object-fit:cover}.story-carousel .carousel-controls{bottom:15px}.story-carousel .carousel-slide{object-position:50% 50%}.home-story>.story-carousel+div{min-width:0}@media(max-width:760px){.hero{min-height:720px}.hero-content{padding-bottom:140px}.hero>.carousel-controls{right:auto;left:7%;transform:none;bottom:78px}.hero-caption{font-size:8px;left:7%;right:7%;bottom:25px}.story-carousel{height:360px}.carousel-controls{gap:5px}.carousel-controls button{min-width:36px;height:36px}.carousel-dots button{min-width:24px;width:24px}.room-facts{margin-block:20px}.button{padding:14px 18px}.header-book{padding:10px 12px;min-height:42px}.menu-toggle{padding:10px 12px}.featured-button{font-size:11px}.category-links a{font-size:10px}.dialog-copy{padding-top:35px}.home-story .story-carousel{height:360px}}@media(prefers-reduced-motion:reduce){.carousel-slide,.button,.room-detail,.featured-button{transition:none}.button:hover,.room-detail:hover{transform:none}}
/* Minimal photo controls: clear backdrop, fine arrows, small dots. */
.carousel-controls{background:transparent;backdrop-filter:none;border:0;box-shadow:none;padding:0;gap:5px}.carousel-controls button{background:transparent;border:0;box-shadow:none;border-radius:50%;min-width:44px;height:44px;filter:drop-shadow(0 1px 3px #0009);opacity:.85;transition:opacity .18s,background .18s}.carousel-controls button:hover{background:#ffffff12;opacity:1}.carousel-controls button svg,.gallery-controls button svg{width:22px;height:22px}.carousel-dots button{min-width:22px;width:22px;background:transparent}.carousel-dots button:hover{background:transparent}.carousel-dots button span{width:5px;height:5px;background:#ffffff80}.carousel-dots button[aria-pressed=true] span{width:7px;height:7px;border-radius:50%;background:white}.carousel-controls .carousel-pause{min-width:36px;width:36px;font-size:12px}.gallery-controls button{background:transparent;border:0;box-shadow:none;color:var(--ink);display:grid;place-items:center;opacity:.75}.gallery-controls button:hover{background:#34382f08;opacity:1}.gallery-thumbs button{border:0;opacity:.6;outline-offset:2px}.gallery-thumbs button[aria-pressed=true]{opacity:1;outline:1px solid #9b4937}.gallery-thumbs button:hover{opacity:1}.carousel-controls button:focus-visible,.gallery-controls button:focus-visible,.gallery-thumbs button:focus-visible{outline:2px solid #d89737;outline-offset:3px}
/* Minimal controls on the photograph, shared by every room gallery. */
.gallery-stage{position:relative;background:#242722;touch-action:pan-y}.gallery-stage>img{display:block;width:100%;height:380px;object-fit:cover}.gallery-stage .gallery-controls{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;padding:8px;pointer-events:none}.gallery-stage .gallery-controls button{pointer-events:auto;width:44px;height:52px;border:0;border-radius:0;background:transparent;color:white;opacity:.9;box-shadow:none;filter:drop-shadow(0 1px 3px #000b)}.gallery-stage .gallery-controls button:hover{background:transparent;opacity:1}.gallery-stage .gallery-controls button svg{width:25px;height:25px}.gallery-stage #photo-counter{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);color:white;font-size:10px;letter-spacing:2px;text-shadow:0 1px 4px #000b}.gallery-thumbs{background:var(--paper);padding:14px 16px;gap:9px}.gallery-thumbs button{border-radius:2px;border:0;box-shadow:none}.carousel-controls button,.carousel-controls button:hover{background:transparent;border:0;box-shadow:none}.carousel-controls button svg path{stroke-width:1.3}@media(max-width:760px){.gallery-stage>img{height:280px}.gallery-stage .gallery-controls{padding:4px}}
