:root{--forest:#153c3b;--deep:#102b2c;--ink:#203532;--muted:#687a75;--cream:#fbf8f1;--cream2:#f4eee3;--sand:#eaddc9;--line:#e7e2d8;--gold:#d7ad77;--copper:#b66c4c;--coral:#db7758;--coral2:#ef9774;--white:#fff;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--motion:cubic-bezier(.2,.75,.2,1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}::selection{background:#f4c6a1;color:#183334}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}section{position:relative;scroll-margin-top:80px}.container{width:min(1280px,calc(100% - 80px));margin-inline:auto}.svg-defs{position:absolute;overflow:hidden;width:0;height:0}.icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.skip-link{position:fixed;left:16px;top:-70px;z-index:2000;padding:14px;background:#fff;color:#111}.skip-link:focus{top:10px}.scroll-progress{position:fixed;left:0;top:0;width:0;height:3px;z-index:1001;background:linear-gradient(90deg,var(--copper),#f7c98b);transition:width .12s linear}.site-header{position:absolute;top:0;left:0;right:0;z-index:300;height:96px;border-bottom:1px solid #ffffff20;transition:background .4s,box-shadow .4s,transform .4s}.site-header.is-sticky{position:fixed;background:rgba(251,248,241,.94);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 12px 30px #21372d12;border-color:#203a2e16;height:76px}.nav-wrap{display:flex;align-items:center;gap:30px;height:100%}.brand{display:flex;align-items:center;gap:8px;flex:none;min-width:163px}.brand-full{height:64px;max-width:168px;object-fit:contain}.brand-full-dark{display:none}.is-sticky .brand-full-light{display:none}.is-sticky .brand-full-dark{display:block}.brand-symbol{height:44px;width:35px;object-fit:contain}.brand-wordmark{height:32px;width:116px;object-fit:contain}.is-sticky .brand-symbol,.is-sticky .brand-wordmark{filter:brightness(0) saturate(100%) invert(20%) sepia(16%) saturate(1108%) hue-rotate(123deg) brightness(86%) contrast(91%)}.main-nav{margin-inline:auto;display:flex;align-items:center;gap:26px}.main-nav a{position:relative;color:#fff;font-weight:600;font-size:12px;white-space:nowrap;padding:13px 0;opacity:.92;transition:opacity .25s,color .25s}.main-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:5px;height:1px;background:var(--gold);transition:right .3s}.main-nav a:hover:after{right:0}.main-nav a:hover{opacity:1}.is-sticky .main-nav a{color:var(--ink)}.nav-cta{display:flex;align-items:center;gap:14px}.btn{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:17px 24px;border-radius:9px;min-height:52px;font-size:12px;font-weight:800;letter-spacing:.015em;line-height:1;transition:transform .35s var(--motion),background .3s,box-shadow .35s,border-color .3s;position:relative;overflow:hidden}.btn:hover{transform:translateY(-3px)}.btn .icon{width:16px;height:16px}.btn-coral{color:#fff;background:linear-gradient(125deg,#e48a68,#cd664b);box-shadow:0 10px 28px #be62414d}.btn-coral:hover{background:linear-gradient(130deg,#ed9674,#d5684e);box-shadow:0 14px 32px #b85b3b60}.btn-dark{color:#fff;background:var(--deep)}.btn-dark:hover{background:#235957}.btn-outline-light{border:1px solid #ffffff7d;color:#fff;background:#ffffff11;backdrop-filter:blur(8px)}.btn-outline-light:hover{background:#ffffff27}.btn-small{padding:13px 16px;min-height:42px;gap:9px;white-space:nowrap}.btn-small .icon{width:15px}.menu-toggle{display:none;background:none;border:0;color:white;padding:8px}.menu-toggle .icon{width:26px;height:26px}
/* HERO */
.hero{min-height:700px;min-height:min(790px,93svh);background:radial-gradient(ellipse at 37% 25%,#326367 0,#214e4f 22%,#193f41 45%,#122f34 76%,#0a2528 100%);color:white;isolation:isolate;overflow:hidden}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b292e18 0%,#102b2c15 47%,#1b32331a 100%);pointer-events:none;z-index:0}.hero-picture{position:absolute;inset:0 0 0 47%;overflow:hidden;z-index:-1}.hero-picture img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.07);animation:heroZoom 16s ease-out both}.hero-photo-shade{position:absolute;inset:0;background:linear-gradient(90deg,#1d494a 0%,#1c414138 31%,#1b38361c 70%),linear-gradient(0deg,#163936c2 0%,transparent 34%,#1b3a3160 100%)}.hero-orbit{position:absolute;z-index:0;border:1px solid #ffffff12;border-radius:50%;pointer-events:none}.hero-orbit-one{width:780px;height:780px;top:-340px;left:-380px}.hero-orbit-two{width:410px;height:410px;left:-280px;bottom:-170px}.hero-grid{min-height:inherit;position:relative;display:flex;align-items:center;z-index:1;padding-block:130px 115px}.hero-copy{width:min(580px,58%);padding-bottom:30px}.eyebrow{display:inline-flex;align-items:center;gap:12px;text-transform:uppercase;color:var(--copper);font-weight:800;letter-spacing:.23em;font-size:10px;line-height:1.4}.eyebrow-gold{color:#f2cf9b}.small-line{display:inline-block;width:28px;height:1px;background:currentColor}.hero-title{font-family:var(--serif);font-size:clamp(40px,4.5vw,72px);font-weight:400;letter-spacing:-.053em;line-height:1.12;margin:19px 0 16px;max-width:615px;text-wrap:balance}.hero-title em{display:block;color:#f1cb9c;font-family:var(--serif);font-weight:400;font-style:italic;font-size:.76em;letter-spacing:-.04em;margin-top:13px}.hero-desc{font-size:14px;line-height:1.9;color:#e0e9e4;max-width:430px;margin:26px 0 30px}.hero-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:13px}.hero-micro{margin-top:55px;display:flex;align-items:center;gap:13px;font-family:var(--serif);font-size:23px;color:#f6d3aa}.hero-micro-ring{border:1px solid #ffffff55;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;font-size:20px;animation:slowRotate 18s linear infinite}.hero-micro small{display:block;font-family:var(--sans);font-weight:500;font-size:10px;color:#dde7e2;letter-spacing:.035em;margin-top:4px}.hero-photo-caption{position:absolute;right:0;bottom:120px;width:270px;text-align:right;text-shadow:0 2px 15px #183b3744}.hero-photo-caption span{font-size:10px;letter-spacing:.28em;font-weight:800;color:#faebd4}.hero-photo-caption p{font-family:var(--serif);font-size:26px;font-style:italic;line-height:1.33;margin:10px 0}.hero-scroll-note{position:absolute;right:35px;top:46%;font-size:9px;letter-spacing:.32em;writing-mode:vertical-rl;color:#ffffffad;display:flex;align-items:center;gap:15px}.hero-scroll-note span{display:block;width:1px;height:72px;background:#ffffff70}.anim-entry{animation:slideUp .8s var(--motion) both}.hero-copy .anim-entry:nth-child(2){animation-delay:.13s}.hero-copy .anim-entry:nth-child(3){animation-delay:.22s}.hero-copy .anim-entry:nth-child(4){animation-delay:.32s}.hero-copy .anim-entry:nth-child(5){animation-delay:.43s}
/* BOOKING STRIP */
.quick-booking-wrap{z-index:30;margin-top:-54px;position:relative}.quick-booking{background:var(--white);border:1px solid #e9e2d9;box-shadow:0 22px 65px #133e3440;display:flex;align-items:center;min-height:108px;padding:16px;border-radius:14px;gap:0}.quick-brand{width:205px;display:flex;gap:12px;align-items:center;line-height:1.6;font-size:12px;padding-inline:17px 14px;color:#69746f;border-right:1px solid #e7e5de}.booking-brand-star{font-size:31px;color:var(--coral)}.quick-brand strong{display:block;color:var(--forest);font-family:var(--serif);font-size:16px;line-height:1.05;font-weight:500}.quick-field{padding-inline:25px;flex:1;min-width:0;border-right:1px solid #e7e5de}.quick-field>span{display:block;color:#9b8776;letter-spacing:.12em;font-size:9px;font-weight:800;margin-bottom:10px}.quick-field>div{display:flex;align-items:center;gap:8px;color:var(--forest)}.quick-field .icon{width:18px;height:18px;opacity:.7}.quick-field input,.quick-field select{min-width:0;width:100%;background:transparent;border:0;outline:none;color:#304a45;font-size:12px;font-weight:600;padding:0;cursor:pointer}.quick-submit{white-space:nowrap;margin-left:14px;padding-inline:22px;min-height:56px}.amenities-band{padding:32px 0 35px;background:var(--cream)}.amenities-list{display:flex;justify-content:space-between;gap:10px}.amenity-item{display:flex;align-items:center;gap:12px;padding:6px 12px;min-width:0}.amenity-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid #d9cbba;border-radius:50%;color:#b37550;flex:none}.amenity-icon .icon{width:21px;height:21px;stroke-width:1.4}.amenity-item strong{font-size:11px;font-weight:800;display:block;color:#3d4d43}.amenity-item small{font-size:10px;display:block;margin-top:5px;color:#8c9791;white-space:nowrap}
/* SECTIONS */
.section{padding:94px 0}.section-title{font-family:var(--serif);font-size:clamp(31px,3.15vw,49px);font-weight:400;line-height:1.18;letter-spacing:-.045em;margin:17px 0}.section-title.light{color:#fff}.section-desc{line-height:1.9;color:#75837d;font-size:13px;max-width:550px;margin:0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:31px}.section-heading .section-desc{max-width:580px}.text-link{padding:8px 0;border:0;border-bottom:1px solid #b98666;background:none;color:#ab6442;font-weight:800;font-size:12px;display:inline-flex;align-items:center;gap:13px;white-space:nowrap;transition:gap .3s,color .3s}.text-link:hover{gap:20px;color:#8d462e}.text-link .icon{width:16px;height:16px}.reveal{opacity:1;transform:none;transition:opacity .78s var(--motion),transform .78s var(--motion);transition-delay:var(--delay,0ms)}.js-motion .reveal{opacity:0;transform:translateY(32px)}.js-motion .reveal.visible{opacity:1;transform:translateY(0)}
.about-section{padding-top:65px;background:var(--cream)}.about-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(50px,8vw,115px);align-items:center}.about-media{position:relative;padding:0 32px 30px 0}.about-img-frame{height:455px;overflow:hidden;border-radius:8px 90px 8px 8px;background:#bfd1ca}.about-img-frame img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--motion)}.about-media:hover img{transform:scale(1.05)}.photo-stamp{position:absolute;bottom:0;right:0;background:#e9d2b1;color:#734d3e;width:155px;height:155px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;box-shadow:0 8px 25px #24352d24;outline:1px solid #a98766;outline-offset:-11px;transform:rotate(8deg)}.photo-stamp>span{font-size:8px;letter-spacing:.17em}.photo-stamp strong{font-family:var(--serif);font-style:italic;text-align:center;line-height:1.1;font-weight:400;font-size:27px;margin:9px 0}.about-floating{position:absolute;top:30px;left:-16px;padding:12px 15px;background:#fbf9f2eb;color:var(--forest);box-shadow:0 7px 25px #0002;font-family:var(--serif);font-size:15px;max-width:180px;transform:rotate(-4deg)}.about-floating i{color:#ae7154}.about-content .section-title{max-width:520px}.about-content .section-desc{max-width:495px}.about-quote{display:flex;align-items:flex-start;gap:14px;padding:17px 0 8px;margin-top:16px;border-top:1px solid #e4ddcf}.quote-mark{font-family:Georgia,serif;font-size:55px;color:var(--coral);line-height:1}.about-quote p{font-family:var(--serif);font-size:21px;font-style:italic;color:#755c4b;line-height:1.45;margin:9px 0 0}.about-features{display:grid;gap:13px;margin:14px 0 28px}.about-features span{display:flex;gap:10px;align-items:center;font-size:12px;color:#5e6d64}.about-features .icon{color:#b7784d;width:16px;height:16px}
.rooms-section{background:#f1ede4;padding-top:85px}.room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}.room-card{min-width:0;background:#fff;border:1px solid #e4e1d8;border-radius:10px;overflow:hidden;box-shadow:0 9px 26px #1d2c2b09;transition:box-shadow .4s,transform .5s var(--motion)}.room-card:hover{transform:translateY(-8px);box-shadow:0 18px 45px #233c311d}.room-img{position:relative;height:214px;overflow:hidden;background:#e6dbcb}.room-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--motion)}.room-card:hover .room-img img{transform:scale(1.08)}.room-tag{position:absolute;top:17px;left:17px;border:1px solid #ffffff8c;background:#172f31c9;color:#fff;padding:8px 10px;border-radius:3px;font-size:9px;font-weight:800;letter-spacing:.13em;backdrop-filter:blur(8px)}.room-body{padding:22px 23px 20px}.room-name-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.room-name-row h3{margin:0;font-family:var(--serif);font-size:25px;font-weight:500;letter-spacing:-.03em}.room-flower{font-size:25px;color:#c98b66}.room-body>p{font-size:12px;line-height:1.75;color:#7c8881;min-height:62px;margin:10px 0 16px}.room-meta{display:flex;gap:15px;flex-wrap:wrap;padding-bottom:17px;border-bottom:1px solid #ece9e3}.room-meta span{font-size:10px;font-weight:600;display:inline-flex;align-items:center;gap:6px;color:#707d76}.room-meta .icon{width:15px;height:15px;color:#ad8461}.room-foot{display:flex;align-items:flex-end;justify-content:space-between;padding-top:19px}.room-foot small{display:block;color:#9a9b94;font-size:9px;font-weight:800;letter-spacing:.12em;margin-bottom:5px}.room-foot strong{font-size:13px;color:#314e46;font-weight:800}.icon-btn{border:1px solid #e0ccbb;background:#fbf7ef;display:grid;place-items:center;width:43px;height:43px;color:#ac6347;border-radius:50%;transition:background .3s,color .3s,transform .3s}.icon-btn:hover{background:var(--coral);color:#fff;transform:rotate(45deg)}
.experiences-section{background:#0e3439;color:#fff;overflow:hidden}.experience-aura{position:absolute;right:-120px;top:-300px;width:600px;height:600px;background:radial-gradient(circle,#2f6e6480,transparent 67%);pointer-events:none}.experience-header{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:32px}.experience-header h2{max-width:620px;margin-bottom:0}.experience-header>p{max-width:295px;line-height:1.9;font-size:13px;color:#b5d0c9;margin:0 0 5px}.experience-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.experience-card{position:relative;min-height:328px;border-radius:9px;overflow:hidden;background:#235c61;isolation:isolate}.experience-card>img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0;transition:transform 1s var(--motion)}.experience-card:hover>img{transform:scale(1.12)}.experience-shade{position:absolute;inset:0;background:linear-gradient(180deg,#11262855 0%,#102e2912 34%,#051e20e8 100%)}.experience-index{position:absolute;top:19px;left:19px;font-size:12px;letter-spacing:.1em;font-weight:700;color:#faf6e7}.experience-info{position:absolute;bottom:23px;left:20px;right:57px}.experience-info>span{color:#e6c99f;font-size:9px;letter-spacing:.1em;font-weight:800;display:flex;align-items:center;gap:7px}.experience-info .icon{width:15px;height:15px}.experience-info h3{font-size:23px;line-height:1.17;font-weight:500;font-family:var(--serif);margin:8px 0}.experience-info p{font-size:11px;color:#dce7df;line-height:1.6;margin:0;max-height:0;opacity:0;overflow:hidden;transition:max-height .45s,opacity .4s}.experience-card:hover .experience-info p{max-height:75px;opacity:1}.experience-arrow{position:absolute;right:15px;bottom:18px;width:35px;height:35px;display:grid;place-items:center;background:#e7b98b;color:#173639;border:0;border-radius:50%;transition:transform .3s,background .3s}.experience-card:hover .experience-arrow{transform:rotate(45deg);background:#fff}
.editorial-section{background:#fbf9f4}.editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.editorial-card{background:#f4f0e8;border-radius:8px;overflow:hidden}.editorial-image{height:270px;overflow:hidden;position:relative;background:#a2b9aa}.editorial-image img{height:100%;width:100%;object-fit:cover;transition:transform 1s}.editorial-card:hover .editorial-image img{transform:scale(1.06)}.editorial-image span{position:absolute;top:20px;left:20px;display:flex;align-items:center;gap:8px;background:#faf7eef0;color:#7f4f34;padding:10px 12px;border-radius:3px;font-size:9px;letter-spacing:.11em;font-weight:800}.editorial-image .icon{width:15px;height:15px}.editorial-copy{padding:27px 34px 32px}.editorial-copy h2{font:400 33px/1.2 var(--serif);letter-spacing:-.045em;margin:10px 0}.editorial-copy p{font-size:12px;line-height:1.85;color:#707e78;max-width:500px;min-height:47px}.editorial-copy .text-link{margin-top:12px}
.gallery-section{padding-top:76px;background:#f2eee6}.gallery-count{font-size:10px;letter-spacing:.19em;color:#a78b6a}.gallery-grid{display:grid;grid-template-columns:1.18fr 1fr 1fr;grid-auto-rows:184px;gap:13px}.gallery-tile{border:0;padding:0;overflow:hidden;position:relative;border-radius:7px;background:#d9d7c9}.gallery-tile:first-child{grid-row:span 2}.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--motion),filter .5s}.gallery-tile:hover img{transform:scale(1.09);filter:brightness(.7)}.gallery-hover{position:absolute;inset:0;display:grid;place-items:center;opacity:0;transition:opacity .35s;color:white}.gallery-hover .icon{height:39px;width:39px;stroke-width:1}.gallery-tile:hover .gallery-hover{opacity:1}
.philosophy-section{padding:70px 0;background:#e9dbc7}.philosophy-wrap{display:grid;grid-template-columns:1.1fr 1.45fr;gap:75px;align-items:center}.philosophy-heading h2{font:400 clamp(32px,3vw,43px)/1.2 var(--serif);letter-spacing:-.045em;max-width:450px;margin:16px 0}.philosophy-heading p{color:#86786d;line-height:1.75;font-size:13px}.philosophy-list{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.philosophy-item{padding:26px 12px 18px;border-left:1px solid #d0bda8}.philosophy-icon{display:grid;place-items:center;width:47px;height:47px;border-radius:50%;border:1px solid #ad8563;margin-bottom:19px;color:#9d633e}.philosophy-item h3{font:500 19px/1.3 var(--serif);margin:0 0 10px}.philosophy-item p{font-size:11px;color:#766f64;line-height:1.75;margin:0}
.faq-section{padding-block:85px;background:#fbf9f4}.faq-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:90px}.faq-help{font-size:12px;color:#78877e;margin-top:25px;line-height:1.8}.faq-help a{display:inline-flex;align-items:center;gap:5px;color:#b97755;font-weight:800}.faq-help .icon{height:14px;width:14px}.faq-list{border-top:1px solid #dcdad0}.faq-item{border-bottom:1px solid #dcdad0}.faq-item summary{cursor:pointer;display:flex;justify-content:space-between;gap:18px;align-items:center;list-style:none;font-size:13px;font-weight:800;padding:19px 0;color:#42574b}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary .icon{transition:transform .3s;color:#b6764e}.faq-item[open] summary .icon{transform:rotate(45deg)}.faq-answer{font-size:12px;line-height:1.8;color:#74837a;padding:0 32px 18px 0;animation:fadeIn .3s}
.contact-section{padding-block:83px;background:radial-gradient(ellipse at 10% 0%,#235658 0%,#123a3b 43%,#102f32 100%);color:white;overflow:hidden}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;align-items:center}.contact-copy .section-title{max-width:440px}.contact-copy>p{line-height:1.9;color:#b9d1c9;font-size:13px;max-width:420px}.contact-link-list{display:grid;gap:18px;margin:31px 0}.contact-link-list>a,.contact-link-list>span{display:flex;align-items:center;gap:13px;font-size:12px;color:#e0eee6}.contact-link-list .icon{color:#e8bd87}.contact-form{background:#fff;color:var(--ink);border-radius:10px;padding:37px 40px;box-shadow:0 20px 56px #061d1f50}.form-label{font-size:10px;color:#ba7951;letter-spacing:.2em;font-weight:800}.contact-form h3{font:400 30px var(--serif);margin:11px 0 22px}.contact-form label,.booking-form label{font-size:11px;font-weight:700;color:#5c6a62;display:block;margin:0 0 16px}.contact-form input,.contact-form textarea,.booking-form input,.booking-form select,.booking-form textarea{display:block;margin-top:8px;border:1px solid #e7e7e0;background:#faf9f6;border-radius:5px;width:100%;padding:12px 13px;font-size:12px;color:var(--ink);outline:none;transition:border-color .25s,box-shadow .25s}.contact-form input:focus,.contact-form textarea:focus,.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:#c7906d;box-shadow:0 0 0 3px #f4dbcb}.field-two{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px}.form-bottom p{font-size:10px;color:#98a49c;line-height:1.6;max-width:190px}.contact-form .btn{min-height:45px;padding:12px 17px;white-space:nowrap}.form-feedback{font-size:12px;line-height:1.55;margin-top:12px;min-height:0}.form-feedback.success{color:#23764e}.form-feedback.error{color:#bc443c}.trap-field{position:absolute!important;opacity:0!important;pointer-events:none!important;left:-9999px!important}.booking-cta{background:linear-gradient(105deg,#d4b18c,#e8d4b7);padding:48px 0}.booking-cta-grid{display:flex;align-items:center;justify-content:space-between;gap:25px}.booking-sun{font-size:66px;color:#9b684b;animation:slowRotate 24s linear infinite}.booking-cta-grid>div{flex:1}.booking-cta-grid .eyebrow{color:#9a6148}.booking-cta-grid h2{font:400 36px var(--serif);color:#2e453d;margin:8px 0}.booking-cta-grid p{margin:0;color:#665e53;font-size:12px}.booking-cta .btn{flex:none}
.site-footer{background:#092b2e;color:#e6ece5}.footer-top{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:60px;padding:60px 0 47px}.footer-brand img{max-width:180px;max-height:140px;object-fit:contain;object-position:left}.footer-brand p{margin:18px 0;font-family:var(--serif);font-size:17px;color:#d6c6ad;font-style:italic}.footer-links,.footer-contact{display:flex;flex-direction:column;gap:12px}.footer-links>span,.footer-contact>span{color:#deb38a;font-size:10px;letter-spacing:.18em;font-weight:800;margin-bottom:6px}.footer-links a,.footer-contact a,.footer-contact p{font-size:12px;color:#c8d7d0;margin:0;transition:color .2s}.footer-links a:hover,.footer-contact a:hover{color:#fff}.socials{display:flex;gap:10px;margin-top:13px}.socials a{display:grid;place-items:center;width:36px;height:36px;border:1px solid #ffffff48;border-radius:50%;color:#e5ebde;transition:background .3s,color .3s}.socials a:hover{background:#fff;color:#163c3d}.socials .icon{height:16px;width:16px}.footer-bottom{display:flex;gap:22px;justify-content:space-between;align-items:center;border-top:1px solid #ffffff22;padding:21px 0 26px;font-size:10px;color:#92aca7}.footer-bottom a{color:#b8d0ca}.floating-whatsapp{position:fixed;bottom:24px;right:24px;z-index:250;display:flex;align-items:center;gap:8px;border-radius:50px;background:#1b795c;color:white;padding:14px 17px;box-shadow:0 13px 27px #1e422d6b;transition:transform .3s}.floating-whatsapp:hover{transform:translateY(-4px)}.floating-whatsapp span{font-size:12px;font-weight:800}.floating-whatsapp .icon{width:19px;height:19px}
/* MODALS */
.modal-backdrop,.lightbox{position:fixed;inset:0;background:#09211fd4;backdrop-filter:blur(9px);z-index:1000;display:flex;justify-content:center;align-items:center;padding:24px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s,visibility .3s}.modal-backdrop.open,.lightbox.open{opacity:1;visibility:visible;pointer-events:auto}.modal-panel{position:relative;background:#fcfaf5;border-radius:14px;box-shadow:0 35px 80px #0006;max-height:min(92dvh,850px);overflow-y:auto;transform:translateY(20px) scale(.98);transition:transform .3s var(--motion)}.open .modal-panel{transform:translateY(0) scale(1)}.booking-panel{width:min(660px,100%);padding:35px 40px}.modal-close{position:absolute;top:17px;right:17px;border:0;width:35px;height:35px;border-radius:50%;background:#ebede5;color:#233b36;font-size:26px;z-index:2;line-height:1}.booking-panel-head h2{font:400 34px/1.17 var(--serif);margin:12px 25px 10px 0;letter-spacing:-.04em}.booking-panel-head p{font-size:12px;color:#83918a;line-height:1.7;margin:0 0 22px}.booking-form label{margin-bottom:13px}.booking-form .field-two{gap:12px}.booking-form .consent-line{display:flex;align-items:center;gap:9px;font-size:11px;margin:15px 0;line-height:1.6}.consent-line input{width:16px;height:16px;margin:0;flex:none}.btn-full{width:100%;min-height:48px}.booking-disclaimer{display:block;text-align:center;margin-top:11px;color:#929e98;font-size:10px}.room-modal-panel{display:grid;grid-template-columns:.97fr 1.03fr;width:min(880px,100%);overflow:hidden}.room-modal-image{min-height:470px;background:#d4c5ab}.room-modal-image img{width:100%;height:100%;object-fit:cover}.room-modal-content{padding:50px 32px 36px;display:flex;flex-direction:column}.room-modal-content h2{font:400 34px var(--serif);letter-spacing:-.035em;margin:15px 0}.room-modal-content>p{font-size:13px;line-height:1.8;color:#74847b}.modal-room-features{display:grid;gap:14px;margin:25px 0}.modal-room-features span{display:flex;align-items:center;gap:10px;font-size:12px;color:#697c6e}.modal-room-features .icon{width:16px;height:16px;color:#c58a63}.room-modal-footer{margin-top:auto;display:flex;flex-direction:column;gap:18px}.room-modal-footer strong{color:var(--forest);font-weight:800;font-size:14px}.room-modal-footer .btn{align-self:flex-start}.lightbox{background:#0b1d1df2;z-index:1100}.lightbox img{width:auto;height:auto;max-height:84vh;max-width:min(85vw,1100px);object-fit:contain;box-shadow:0 17px 55px #0005}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;border:1px solid #fff7;color:white;background:#fff2;border-radius:50%;display:grid;place-items:center}.lightbox-close{width:45px;height:45px;right:24px;top:20px;font-size:29px}.lightbox-prev,.lightbox-next{width:42px;height:42px;top:48%;font-size:34px}.lightbox-prev{left:25px}.lightbox-next{right:25px}.lightbox-caption{position:absolute;bottom:14px;color:#dce8e5;font-size:12px;letter-spacing:.05em}
@keyframes heroZoom{from{transform:scale(1.17)}to{transform:scale(1.04)}}@keyframes slideUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slowRotate{to{transform:rotate(360deg)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@media(max-width:1200px){.container{width:min(1140px,calc(100% - 58px))}.main-nav{gap:17px}.main-nav a{font-size:11px}.brand{min-width:140px}.hero{min-height:680px}.hero-picture{left:44%}.hero-copy{width:57%}.hero-title{font-size:59px}.amenity-item{gap:9px;padding-inline:3px}.amenity-item small{font-size:9px}.contact-grid{gap:60px}}
@media(max-width:960px){.site-header{height:79px}.site-header.is-sticky{height:68px}.container{width:calc(100% - 42px)}.main-nav{display:none;position:absolute;top:calc(100% - 1px);left:0;right:0;background:#f9f6f0;box-shadow:0 17px 33px #051e1e32;padding:24px;flex-direction:column;gap:3px;align-items:stretch}.main-nav.open{display:flex;animation:fadeIn .25s}.main-nav a,.is-sticky .main-nav a{font-size:14px;color:#284740;padding:12px}.menu-toggle{display:grid;place-items:center}.is-sticky .menu-toggle{color:var(--ink)}.hero{min-height:690px}.hero-picture{left:38%}.hero-copy{width:68%}.hero-title{font-size:clamp(43px,6.4vw,58px)}.hero-photo-caption{right:15px}.quick-brand{display:none}.quick-field{padding-inline:13px}.quick-submit{padding-inline:14px}.amenities-list{flex-wrap:wrap;justify-content:center;gap:15px 26px}.about-grid{gap:40px}.about-img-frame{height:400px}.photo-stamp{width:120px;height:120px}.photo-stamp strong{font-size:21px}.room-body{padding:20px 16px}.room-name-row h3{font-size:23px}.room-img{height:175px}.experience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-card{min-height:300px}.faq-grid{gap:40px}.contact-grid{gap:25px}.contact-form{padding:27px}.philosophy-wrap{gap:25px}}
@media(max-width:680px){html{scroll-padding-top:68px}.container{width:calc(100% - 34px)}.site-header{height:73px}.brand{min-width:0}.brand-symbol{height:40px;width:30px}.brand-wordmark{height:29px;width:105px}.nav-cta .btn-small{padding:10px 12px;min-height:36px;font-size:10px;gap:6px}.nav-cta .btn-small .icon:first-child{display:none}.nav-cta{gap:7px}.menu-toggle .icon{width:23px}.hero{min-height:715px;min-height:clamp(650px,90svh,770px)}.hero-picture{inset:0}.hero-picture img{object-position:65% center}.hero-photo-shade{background:linear-gradient(90deg,#082c31c2,#08282e83 60%,#12363532),linear-gradient(0deg,#0e3736cf 0%,#103c3982 50%,#0a2b34b0 100%)}.hero-grid{padding-block:128px 145px;align-items:center}.hero-copy{width:100%;max-width:515px;padding-bottom:0}.hero-title{font-size:clamp(39px,9vw,57px);max-width:570px;margin-top:18px}.hero-title em{font-size:.79em}.hero-desc{font-size:13px;max-width:415px;margin:21px 0 27px}.hero-buttons{gap:10px}.hero-buttons .btn{font-size:11px;padding:13px 15px;min-height:48px;gap:9px}.hero-micro{margin-top:31px}.hero-photo-caption{display:none}.hero-scroll-note{display:none}.quick-booking-wrap{margin-top:-75px}.quick-booking{padding:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:auto;border-radius:12px}.quick-field{padding:8px 10px 12px;border:1px solid #ece6dd;border-radius:6px}.quick-field:nth-of-type(3){grid-column:span 2}.quick-field>span{margin-bottom:7px}.quick-field input,.quick-field select{font-size:12px}.quick-submit{margin:0;grid-column:1/-1;min-height:43px;width:100%}.amenities-band{padding:25px 0}.amenities-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px}.amenity-item{padding:7px 0;gap:9px}.amenity-icon{height:36px;width:36px}.amenity-icon .icon{width:17px;height:17px}.amenity-item strong{font-size:10px}.amenity-item small{font-size:9px;white-space:normal}.section{padding:60px 0}.section-title{font-size:clamp(31px,7.5vw,41px);margin:12px 0}.section-desc{font-size:12px;line-height:1.75}.eyebrow{font-size:9px;letter-spacing:.15em}.about-section{padding-top:46px}.about-grid{display:flex;flex-direction:column;align-items:stretch;gap:36px}.about-media{padding-right:27px;padding-bottom:20px}.about-img-frame{height:365px;border-radius:7px 60px 7px 7px}.about-floating{top:19px;left:6px}.photo-stamp{right:0;bottom:0}.about-quote p{font-size:19px}.about-features{grid-template-columns:1fr;gap:10px}.section-heading{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:24px}.room-grid{grid-template-columns:1fr;gap:17px}.room-img{height:232px}.room-body>p{min-height:0}.room-body{padding:19px 21px}.rooms-section{padding-block:59px}.experience-header{align-items:flex-start;flex-direction:column;gap:13px}.experience-header>p{max-width:450px;font-size:12px}.experience-grid{gap:12px}.experience-card{min-height:260px}.experience-info{left:12px;right:12px;bottom:14px}.experience-info h3{font-size:19px}.experience-info>span{font-size:8px}.experience-info p{display:none}.experience-index{top:12px;left:13px}.experience-arrow{width:30px;height:30px;bottom:12px;right:11px}.experience-arrow .icon{width:16px;height:16px}.editorial-grid{grid-template-columns:1fr;gap:17px}.editorial-image{height:245px}.editorial-copy{padding:22px 25px 27px}.editorial-copy h2{font-size:29px}.gallery-count{display:none}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:139px;gap:9px}.gallery-tile:first-child{grid-row:span 2}.philosophy-section{padding:49px 0}.philosophy-wrap{grid-template-columns:1fr}.philosophy-list{gap:7px}.philosophy-heading h2{font-size:34px}.philosophy-item{padding:12px 7px}.philosophy-icon{width:39px;height:39px;margin-bottom:14px}.philosophy-item h3{font-size:16px}.philosophy-item p{font-size:10px}.faq-grid{grid-template-columns:1fr;gap:22px}.contact-grid{grid-template-columns:1fr;gap:33px}.contact-copy .section-title{max-width:520px}.contact-link-list{gap:13px;margin:22px 0}.contact-form{padding:24px 22px}.contact-form h3{font-size:27px}.booking-cta{padding:36px 0}.booking-cta-grid{flex-wrap:wrap;gap:15px}.booking-sun{display:none}.booking-cta-grid>div{flex-basis:100%}.booking-cta-grid h2{font-size:31px}.booking-cta-grid .btn{min-height:45px}.footer-top{grid-template-columns:1fr 1fr;gap:33px 20px;padding:45px 0 28px}.footer-brand{grid-column:1/-1}.footer-brand img{max-height:113px}.footer-bottom{flex-wrap:wrap;gap:8px 18px;justify-content:flex-start;line-height:1.6}.floating-whatsapp{bottom:15px;right:15px;padding:13px}.floating-whatsapp span{display:none}.booking-panel{padding:27px 20px;max-height:94dvh}.booking-panel-head h2{font-size:29px}.room-modal-panel{display:block;max-height:90dvh;overflow-y:auto}.room-modal-image{height:220px;min-height:0}.room-modal-content{padding:24px}.room-modal-content h2{font-size:30px;margin:9px 0}.modal-room-features{margin:13px 0}.room-modal-footer{gap:11px}.lightbox-prev{left:9px}.lightbox-next{right:9px}.lightbox-close{right:12px;top:13px}.lightbox img{max-width:90vw}}
@media(max-width:390px){.brand-wordmark{width:93px}.nav-cta .btn-small{font-size:9px;padding:8px}.hero-title{font-size:38px}.hero-buttons .btn{font-size:10px}.experience-grid{grid-template-columns:1fr}.experience-card{min-height:220px}.experience-info h3{font-size:23px}.field-two{grid-template-columns:1fr;gap:0}.contact-form .form-bottom{flex-direction:column;align-items:stretch}.contact-form .form-bottom p{max-width:none;margin:0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
/* AMARENA / warm coastal luxury design v2 — visual redesign to match supplied reference. */
:root{--forest:#183739;--deep:#122b2f;--ink:#27251f;--muted:#827b71;--cream:#fffaf4;--cream2:#f9f1e8;--sand:#eeded0;--line:#ebe2d7;--gold:#be8b5c;--copper:#bf7852;--coral:#e77050;--coral2:#fa9370;--serif:'Playfair Display',Georgia,serif}
body{background:#fffaf4;color:#26241f}
.container{width:min(1230px,calc(100% - 86px))}
/* Advertiser strip: deliberately normal-flow and always above the header */
.sponsor-banner{position:relative;z-index:340;min-height:39px;background:linear-gradient(112deg,#522f25 0%,#86533f 47%,#663729 100%);color:#fff7ea;border-bottom:1px solid #ffffff24;overflow:hidden}
.sponsor-banner:before{content:'';position:absolute;inset:0;pointer-events:none;transform:translateX(-120%);background:linear-gradient(102deg,transparent 36%,#ffffff15 50%,transparent 66%);animation:sponsorSheen 12s linear infinite}
@keyframes sponsorSheen{0%,70%{transform:translateX(-120%)}100%{transform:translateX(130%)}}
.sponsor-banner-inner{min-height:39px;display:flex;justify-content:center;align-items:center;gap:14px;text-align:center;font-size:11px;letter-spacing:.015em}
.sponsor-marker{color:#f7cba9;font-size:19px;line-height:1;animation:slowRotate 20s linear infinite}
.sponsor-banner strong{font-size:10px;letter-spacing:.16em;white-space:nowrap;color:#ffe2bb}
.sponsor-banner-copy{opacity:.91}
.sponsor-banner a{display:inline-flex;align-items:center;gap:5px;color:#fff3e2;font-weight:800;padding:4px 0;border-bottom:1px solid #edc4a5;white-space:nowrap;transition:color .25s,transform .25s}
.sponsor-banner a:hover{color:#ffd1aa;transform:translateX(3px)}
/* Cream navigation sits over the hero without the old dark overlay. */
.site-header{position:absolute;top:39px;height:86px;border:0;background:rgba(255,251,246,.97);box-shadow:0 8px 30px #4329150d;transition:background .3s,box-shadow .3s,height .3s}
.site-header.is-sticky{top:0;height:74px;background:rgba(255,251,246,.96);border:0;box-shadow:0 8px 30px #32231a20}
.nav-wrap{gap:22px}
.brand{min-width:113px;flex:none;justify-content:center}
.brand-full{height:78px;max-width:100px;width:auto;object-fit:contain}
.brand-full-dark{display:block !important}
.brand-full-light{display:none !important}
.is-sticky .brand-full{height:68px}
.main-nav{gap:21px}
.main-nav a,.is-sticky .main-nav a{color:#272620;opacity:.88;font-size:11px;font-weight:700;padding:14px 0}
.main-nav a:hover{color:#aa553a}
.main-nav a:after{background:#d36844;height:2px;bottom:6px}
.nav-cta .btn-small{min-height:40px;padding:12px 19px;border-radius:10px;font-size:11px;box-shadow:0 8px 18px #e26f4630}
.btn{border-radius:11px;letter-spacing:0;font-size:12px;font-weight:800;padding:14px 22px;min-height:45px;gap:15px}
.btn-coral{background:linear-gradient(123deg,#fa8c67,#e36544);box-shadow:0 10px 25px #d96c4240}
.btn-coral:hover{background:linear-gradient(125deg,#ff9a76,#d95d3f);box-shadow:0 13px 27px #d9644560}
.btn-outline-light{color:#794b35;background:#fffaf1dc;border:1px solid #c58e69;backdrop-filter:blur(12px);box-shadow:0 8px 20px #8f614015}
.btn-outline-light:hover{background:#fff;box-shadow:0 9px 24px #8f614029}
.menu-toggle{color:#25251e}
/* Elegant full-bleed photo with atmospheric wash for legible deep-ink typography. */
.hero{min-height:636px;background:#f8d9b7;color:#2c251f;overflow:hidden;isolation:isolate}
.hero:after{background:linear-gradient(180deg,transparent 67%,#10353c21 100%);z-index:0}
.hero-picture{inset:0;z-index:-1}
.hero-picture img{object-fit:cover;object-position:center 48%;animation:heroZoom 21s ease-out both;filter:saturate(1.08)}
.hero-photo-shade{background:linear-gradient(90deg,rgba(255,232,210,.75) 0%,rgba(255,225,200,.58) 24%,rgba(255,227,210,.2) 52%,rgba(0,0,0,.02) 79%),linear-gradient(180deg,rgba(255,240,226,.15) 0%,transparent 45%,#073d3b20 100%)}
.hero-grid{min-height:636px;padding-top:144px;padding-bottom:113px;align-items:center;justify-content:space-between}
.hero-copy{width:min(525px,52%);padding-bottom:8px;text-align:left;text-shadow:0 2px 20px #ffffff3a}
.hero-title{color:#281d16;font-family:var(--serif);font-size:clamp(72px,7.3vw,112px);line-height:.97;font-weight:500;letter-spacing:-.067em;margin:0 0 18px;white-space:nowrap;max-width:none}
.hero-title em{display:block;font-family:'DM Sans',sans-serif;font-style:normal;font-size:.31em;font-weight:500;letter-spacing:.21em;margin:10px 0 0 4px;line-height:1.1;color:#3a2b21}
.hero-tagline{font-family:var(--serif);font-size:clamp(22px,2.35vw,33px);line-height:1.28;font-weight:400;letter-spacing:-.055em;max-width:390px;margin:0 0 10px;text-wrap:balance}
.hero-desc{color:#513b2e;font-size:13px;line-height:1.6;max-width:380px;margin:12px 0 21px;font-weight:600}
.hero-buttons{gap:13px}
.hero-buttons .btn{min-height:48px;padding-inline:22px;box-shadow:0 7px 22px #7a503c27}
.hero-photo-caption{position:absolute;right:32px;bottom:137px;width:300px;color:#fff;text-align:right;text-shadow:0 2px 10px #1d343b94}
.hero-photo-caption span{font-size:10px;letter-spacing:.17em;font-weight:700;color:#fff3df}
.hero-photo-caption p{font-family:'Caveat',cursive;font-size:37px;font-weight:500;line-height:.88;transform:rotate(-7deg);margin:11px 0 0 auto;max-width:250px}
.hero-scroll-note,.hero-orbit{display:none}
/* Booking as a slim, centered glass-style strip overlapping the photo */
.quick-booking-wrap{margin-top:-67px;z-index:40}
.quick-booking{min-height:76px;margin:auto;width:min(955px,100%);padding:9px 11px;background:#fffcf8f3;box-shadow:0 18px 45px #204b4935;backdrop-filter:blur(18px);border:1px solid #ffffffd1;border-radius:15px;gap:0}
.quick-brand{display:none}
.quick-field{padding:4px 19px;border-right:1px solid #e9dfd6}
.quick-field>span{font-size:10px;color:#80543c;font-weight:800;letter-spacing:.035em;margin-bottom:7px}
.quick-field>div{gap:8px}
.quick-field .icon{color:#84553c;opacity:1;width:19px;height:19px}
.quick-field input,.quick-field select{font-size:12px;font-weight:600;color:#3f4039}
.quick-submit{margin-left:9px;background:linear-gradient(135deg,#f78c67,#e76b4c);min-height:54px;padding-inline:18px;border-radius:10px;color:white;white-space:nowrap;font-size:11px}
/* Warm amenities line with compact separators */
.amenities-band{background:#f9f3eb;padding:36px 0 27px;margin-top:-9px;border-bottom:1px solid #f0e4d7}
.amenities-list{gap:0;justify-content:space-between}
.amenity-item{padding:5px 16px;gap:11px;position:relative;flex:1}
.amenity-item:not(:last-child):after{content:'';position:absolute;right:0;height:33px;width:1px;background:#e9dccf}
.amenity-icon{width:39px;height:39px;border:0;color:#b87c51;background:#fff7ee;border-radius:50%}
.amenity-icon .icon{width:25px;height:25px;stroke-width:1.5}
.amenity-item strong{color:#40382f;font-size:11px;font-weight:700}
.amenity-item small{color:#877b6f;font-size:10px;white-space:normal;margin-top:3px}
/* Compact editorial layout, reference text left / image right */
.section{padding:65px 0}
.section-title{font-size:clamp(31px,3.4vw,49px);line-height:1.14;color:#2c241f;margin:12px 0 15px;letter-spacing:-.05em}
.section-desc{font-size:13px;color:#706e69;line-height:1.65}
.eyebrow{color:#aa7554;letter-spacing:.17em;font-size:10px;font-weight:800}
.about-section{background:#fffbf7;padding:52px 0 56px}
.about-grid{grid-template-columns: .89fr 1.11fr;gap:clamp(30px,6vw,90px);align-items:center}
.about-content{order:0;max-width:450px}
.about-media{order:1;padding:0;max-width:570px;width:100%}
.about-img-frame{height:318px;border-radius:13px;box-shadow:0 17px 35px #6747321c}
.about-img-frame img{object-position:center}
.about-content .section-desc{max-width:430px}
.about-quote{margin-top:10px;padding:10px 0 0}
.about-quote p{font-size:17px;margin:5px 0}
.about-features{display:none}
.about-content .text-link{margin-top:19px}
.about-discover{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;text-align:center;text-shadow:0 2px 10px #283a347b;color:#fff;background:linear-gradient(0deg,#143b3221,#17373508);border-radius:13px;font-size:11px;font-weight:800;letter-spacing:.07em;transition:background .3s}
.about-discover:hover{background:#173b373e}
.about-discover-icon{width:57px;height:57px;border-radius:50%;background:#fff9f0f2;color:#b97758;display:grid;place-items:center;box-shadow:0 8px 28px #183d3b43;transition:transform .35s var(--motion)}
.about-discover-icon .icon{height:22px;width:22px}
.about-discover:hover .about-discover-icon{transform:scale(1.13) rotate(-45deg)}
.about-discover small{display:block;font-weight:500;letter-spacing:0;margin-top:6px;font-size:11px}
/* Clean airy but tight suites, coral outlined detail controls */
.rooms-section{background:#fffaf5;padding:55px 0 69px;border-top:1px solid #f4e8dd}
.section-heading{margin-bottom:25px}
.section-heading .section-desc{max-width:530px}
.room-grid{gap:18px}
.room-card{border-radius:12px;border:1px solid #ece1d8;box-shadow:0 10px 28px #5235210c}
.room-img{height:214px}
.room-img img{object-position:center}
.room-tag{top:13px;left:13px;border:1px solid #ffffff88;border-radius:20px;font-size:9px;letter-spacing:.05em;background:#2d4945d9}
.room-body{padding:15px 16px 16px}
.room-name-row h3{font-size:22px}
.room-flower{font-size:19px}
.room-body>p{margin:5px 0 12px;min-height:40px;font-size:11px;line-height:1.5}
.room-meta{padding-bottom:9px}
.room-foot{padding-top:12px}
.room-foot small{font-size:9px;margin-bottom:3px}
.room-foot strong{font-size:15px}
.icon-btn.room-detail-btn{height:36px;width:44px;background:#fff6ee;border:1px solid #e8a786;color:#ce6847;border-radius:9px}
.icon-btn.room-detail-btn:hover{background:#ed7551;color:white;transform:translateX(2px)}
.experiences-section{padding-top:69px;padding-bottom:74px}
.experience-card{border-radius:12px;min-height:287px}
.editorial-section,.gallery-section,.philosophy-section,.faq-section{padding-top:68px;padding-bottom:68px}
.section-anchor{position:absolute;top:-100px}
/* smoother microinteractions and subtle gallery movement */
.room-card,.experience-card,.editorial-card,.gallery-item,.amenity-icon{will-change:auto}
.room-card:hover .room-img img,.experience-card:hover>img{filter:saturate(1.12)}
@media(min-width:1440px){.hero-picture img{object-position:center 53%}}
@media(max-width:1180px){.main-nav{gap:13px}.main-nav a,.is-sticky .main-nav a{font-size:10px}.nav-wrap{gap:12px}.brand{min-width:92px}.brand-full{height:71px}.hero-title{font-size:80px}.hero-copy{width:52%}.hero-grid{padding-top:132px}}
@media(max-width:960px){.container{width:calc(100% - 42px)}.sponsor-banner-inner{gap:10px}.site-header{height:77px}.site-header.is-sticky{height:69px}.brand{min-width:75px}.brand-full,.is-sticky .brand-full{height:66px}.main-nav{gap:3px;top:calc(100% - 1px);border-radius:0 0 14px 14px;box-shadow:0 20px 38px #281b1836}.main-nav a{font-size:14px}.menu-toggle{color:#443329}.hero{min-height:635px}.hero-grid{min-height:635px;padding-top:120px}.hero-copy{width:min(545px,65%)}.hero-title{font-size:clamp(55px,7.7vw,79px)}.hero-photo-shade{background:linear-gradient(90deg,#ffdfc5dc 0%,#ffe4cf8f 42%,#ffffff00 85%)}.hero-photo-caption{right:16px;bottom:132px}.quick-booking{padding:10px;display:flex;gap:0}.quick-field{padding-inline:10px;border:0;border-right:1px solid #eadfd5}.quick-submit{width:auto;min-height:52px;grid-column:auto;font-size:10px}.amenities-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px}.amenity-item{flex-direction:column;text-align:center;padding:4px}.amenity-item:after{display:none}.amenity-item strong{font-size:10px}.amenity-item small{font-size:9px}.about-grid{gap:30px}.about-img-frame{height:295px}.section{padding:56px 0}}
@media(max-width:700px){
 html{scroll-padding-top:80px}.container{width:calc(100% - 34px)}
 .sponsor-banner{min-height:47px}.sponsor-banner-inner{min-height:47px;gap:6px;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;justify-content:initial;align-content:center;text-align:left;column-gap:9px;row-gap:0;padding-block:5px}
 .sponsor-marker{grid-column:1;grid-row:1/3;font-size:19px}.sponsor-banner strong{font-size:9px;grid-column:2;grid-row:1;letter-spacing:.1em}.sponsor-banner-copy{grid-column:2;grid-row:2;font-size:9px;line-height:1.27;letter-spacing:0}
 .sponsor-banner a{grid-column:3;grid-row:1/3;font-size:9px;padding:4px;gap:3px}
 .site-header{top:47px;height:70px;background:#fffaf4fa}.site-header.is-sticky{top:0;height:65px}
 .brand{min-width:68px}.brand-full,.is-sticky .brand-full{height:64px;max-width:76px}
 .nav-wrap{gap:6px;justify-content:space-between}
 .nav-cta .btn-small{padding:10px 12px;min-height:36px;font-size:10px;border-radius:8px}.nav-cta{gap:6px}.nav-cta .btn-small .icon:last-child{display:none}
 .menu-toggle{display:grid;padding:8px 5px;color:#3b342c}.menu-toggle .icon{width:24px}
 .main-nav{padding:15px 19px 18px}.main-nav a{color:#3b342c}
 .hero{min-height:658px}
 .hero-picture img{object-position:52% center}
 .hero-photo-shade{background:linear-gradient(180deg,#fff0e5a8 0%,#f2d4b27d 19%,#113f417b 46%,#063f4494 100%),linear-gradient(90deg,#1a414433 0%,#1f424323 100%)}
 .hero-grid{min-height:658px;display:flex;align-items:flex-start;justify-content:center;text-align:center;padding-top:167px;padding-bottom:100px}
 .hero-copy{text-align:center;width:100%;max-width:440px;margin:0 auto;color:#fff;text-shadow:0 2px 10px #173d3a5f}
 .hero-title{white-space:normal;font-size:clamp(50px,15vw,77px);line-height:.93;letter-spacing:-.06em;color:#fff;margin:0 auto 17px;text-shadow:0 3px 16px #103c385c}
 .hero-title em{font-size:.36em;margin:10px auto 0;color:#fff;letter-spacing:.19em}
 .hero-tagline{font-size:clamp(25px,7.2vw,34px);line-height:1.15;color:#fff;max-width:390px;margin-inline:auto;font-weight:400;text-wrap:balance}
 .hero-desc{color:#fff9f0;font-size:12px;line-height:1.65;margin:11px auto 18px;max-width:310px;font-weight:500}
 .hero-buttons{justify-content:center;gap:8px}
 .hero-buttons .btn{padding:12px 14px;min-height:43px;gap:8px;font-size:11px}
 .hero-buttons .btn-outline-light{border-color:#ffffffa6;background:#fffaf6e9;color:#513a2f}
 .hero-photo-caption{display:none}
 .quick-booking-wrap{margin-top:-58px}
 .quick-booking{width:min(440px,100%);border-radius:13px;padding:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;box-shadow:0 12px 32px #133e3e42}
 .quick-field{border:1px solid #e8ded3;border-radius:8px;padding:10px 8px 9px}
 .quick-field:nth-of-type(3){grid-column:span 2}
 .quick-field>span{font-size:9px;margin-bottom:5px}
 .quick-field input,.quick-field select{font-size:11px}
 .quick-submit{grid-column:1/-1;width:100%;min-height:43px;margin:0;font-size:11px}
 .amenities-band{margin-top:0;padding:26px 0 22px}
 .amenities-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:2px}
 .amenity-item{gap:5px;text-align:center;padding:0 1px}
 .amenity-icon{width:33px;height:33px;margin:auto}.amenity-icon .icon{height:21px;width:21px}
 .amenity-item strong{font-size:9px;line-height:1.2}.amenity-item small{display:none}
 .section{padding:47px 0}
 .about-grid{display:flex;flex-direction:column;gap:24px}
 .about-content{order:0;max-width:unset}.about-media{order:1;padding:0;max-width:unset}
 .about-img-frame{height:285px;border-radius:11px}.about-discover-icon{width:49px;height:49px}
 .about-quote{padding-top:12px}
 .section-title{font-size:clamp(31px,8vw,42px)}
 .rooms-section{padding:46px 0 52px}.room-grid{gap:16px}.room-img{height:220px}.room-body{padding:16px 17px}.room-body>p{min-height:0}.room-name-row h3{font-size:23px}
 .experience-card{min-height:260px}
}
@media(max-width:400px){.sponsor-banner-inner{column-gap:5px}.sponsor-banner-copy{font-size:8px}.sponsor-banner a{font-size:8px}.hero{min-height:640px}.hero-grid{min-height:640px;padding-top:153px}.hero-title{font-size:52px}.hero-tagline{font-size:25px}.hero-buttons .btn{font-size:10px;padding:10px 12px}.amenity-item strong{font-size:8px}}
@media(prefers-reduced-motion:reduce){.sponsor-banner:before,.sponsor-marker{animation:none}}

.no-sponsor .site-header:not(.is-sticky){top:0}

/* AMARENA premium v3: restauramos los tonos originales verde profundo / arena
   y el encabezado flotante semitransparente; la barra de La Chinita Abi permanece arriba. */
:root{--forest:#153c3b;--deep:#102b2c;--gold:#d7ad77;--copper:#b66c4c;--coral:#db7758;--coral2:#ef9774}
.sponsor-banner{background:linear-gradient(105deg,#102f32 0%,#1f4643 50%,#153539 100%);border-bottom:1px solid #d7ad7730}
.sponsor-banner strong{color:#f3d8af}
.sponsor-banner a{border-bottom-color:#e5c7a7}
.site-header,.site-header:not(.is-sticky){
  background:linear-gradient(115deg,rgba(10,41,45,.73),rgba(20,58,58,.48));
  border-bottom:1px solid rgba(251,233,207,.25);
  box-shadow:0 10px 26px rgba(10,38,41,.11);
  -webkit-backdrop-filter:blur(17px) saturate(1.28);
  backdrop-filter:blur(17px) saturate(1.28);
  transition:background .4s,box-shadow .4s,height .35s,border-color .4s;
}
.site-header.is-sticky,.site-header.is-sticky:not(.is-sticky){
  position:fixed;top:0;
  background:rgba(14,45,47,.88);
  border-bottom:1px solid rgba(241,209,167,.21);
  box-shadow:0 11px 32px rgba(8,28,31,.22);
  -webkit-backdrop-filter:blur(22px) saturate(1.35);
  backdrop-filter:blur(22px) saturate(1.35);
}
.brand-full-light,.is-sticky .brand-full-light{display:block!important}
.brand-full-dark,.is-sticky .brand-full-dark{display:none!important}
.main-nav a,.is-sticky .main-nav a{color:#fff9ee;opacity:.96}
.main-nav a:hover,.is-sticky .main-nav a:hover{color:#f5d5a5;opacity:1}
.main-nav a:after{background:#ecc493}
.menu-toggle,.site-header.is-sticky .menu-toggle{color:#fff9ef}
.nav-cta .btn-small{box-shadow:0 8px 19px rgba(42,20,12,.18)}
.btn-coral{background:linear-gradient(125deg,#e48a68,#cd664b);box-shadow:0 10px 28px rgba(190,98,65,.3)}
.btn-coral:hover{background:linear-gradient(130deg,#ed9674,#d5684e);box-shadow:0 14px 32px rgba(184,91,59,.37)}
.eyebrow{color:#a86e4a}
.room-tag{background:rgba(23,63,63,.9)}
.icon-btn.room-detail-btn{background:#fdf5eb;border-color:#dcb694;color:#94603a}
.icon-btn.room-detail-btn:hover{background:var(--forest);border-color:var(--forest);color:#fff}
/* Mantener contraste adecuado en el desplegable móvil beige. */
@media(max-width:960px){
 .main-nav{background:rgba(255,250,243,.98);border:1px solid rgba(213,189,159,.5);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
 .main-nav a,.site-header.is-sticky .main-nav a{color:#183b3b;font-weight:700}
 .main-nav a:hover,.site-header.is-sticky .main-nav a:hover{color:#a96b43}
}
@media(max-width:700px){
 .site-header:not(.is-sticky){top:47px;background:linear-gradient(115deg,rgba(10,41,45,.78),rgba(20,58,58,.56))}
 .site-header.is-sticky{top:0;background:rgba(14,45,47,.92)}
 .menu-toggle,.site-header.is-sticky .menu-toggle{color:#fff8ea}
 .brand-full,.is-sticky .brand-full{max-width:78px}
}
.no-sponsor .site-header:not(.is-sticky){top:0}
@media(prefers-reduced-transparency:reduce){.site-header,.site-header:not(.is-sticky),.site-header.is-sticky{background:#153c3b}}

/* V4 · Tarjeta flotante eliminada y 4 servicios en una banda equilibrada.
   Conservamos exactamente el header semitransparente de V3. */
.amenities-band{margin-top:0;position:relative;z-index:2;}
.amenities-list{justify-content:space-around;}
.amenity-item{flex:1 1 0;justify-content:center;}
@media(max-width:960px){
  .amenities-list{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media(max-width:700px){
  .hero,.hero-grid{min-height:570px;}
  .hero-grid{padding-top:133px;padding-bottom:44px;}
  .amenities-band{padding:19px 0 18px;}
  .amenities-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;}
  .amenity-item{min-width:0;}
  .amenity-item strong{font-size:clamp(8px,2.25vw,11px);overflow-wrap:anywhere;}
}
@media(max-width:400px){
  .hero,.hero-grid{min-height:565px;}
  .hero-grid{padding-top:124px;padding-bottom:38px;}
}


/* AMARENA PREMIUM V5 — beneficios centrados y refinados para todas las pantallas.
   Se respetan todas las demás secciones, colores y header de V4. */
.amenities-band{
  position:relative;
  z-index:2;
  margin-top:0;
  padding:24px 0 25px;
  background:linear-gradient(160deg,#fffcf7 0%,#f7eee2 54%,#faf4eb 100%);
  border-top:1px solid rgba(207,172,131,.3);
  border-bottom:1px solid rgba(195,156,119,.28);
  overflow:hidden;
}
.amenities-band::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at 50% -105%,rgba(233,193,137,.14),transparent 72%);
}
.amenities-list{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
  justify-content:center;
  gap:clamp(9px,1.4vw,19px);
  max-width:1110px;
  margin-inline:auto;
}
.amenity-item{
  min-width:0;
  min-height:127px;
  padding:16px 10px 13px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:10px;
  text-align:center;
  position:relative;
  isolation:isolate;
  background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(255,250,244,.52));
  border:1px solid rgba(198,158,116,.20);
  border-radius:15px;
  box-shadow:0 4px 18px rgba(80,49,27,.035), inset 0 1px 0 rgba(255,255,255,.87);
  transition:transform .45s var(--motion),border-color .35s ease,box-shadow .45s var(--motion),background .35s ease;
}
.amenity-item:not(:last-child)::after{content:none!important}
.amenity-item::before{
  content:'';
  position:absolute;
  left:50%;bottom:0;
  width:35px;height:2px;
  border-radius:2px;
  background:linear-gradient(90deg,#c58e5e,#e1b88b);
  opacity:.55;
  transform:translateX(-50%);
  transition:width .4s var(--motion),opacity .35s;
}
.amenity-icon{
  flex:none;
  width:49px;height:49px;
  display:grid;
  place-items:center;
  margin:0 auto;
  border-radius:50%;
  color:#99643e;
  border:1px solid rgba(205,166,124,.47);
  background:linear-gradient(145deg,#fffefb,#f4e9d8);
  box-shadow:0 5px 14px rgba(153,102,62,.08),inset 0 1px 0 #fff;
  transition:transform .48s var(--motion),color .3s,background .3s,box-shadow .45s;
}
.amenity-icon .icon{width:24px;height:24px;stroke-width:1.55}
.amenity-item>div{
  width:100%;min-width:0;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:4px;
  text-align:center;
}
.amenity-item strong{
  color:#2d4540;
  font-size:clamp(11px,1vw,13px);
  font-weight:800;
  line-height:1.35;
  letter-spacing:.005em;
  margin:0;
  text-wrap:balance;
  overflow-wrap:break-word;
}
.amenity-item small{
  display:block;
  margin:0;
  color:#826f5e;
  font-size:clamp(9px,.85vw,10.5px);
  font-weight:500;
  line-height:1.45;
  white-space:normal;
  text-wrap:balance;
}
@media(hover:hover) and (pointer:fine){
  .amenity-item:hover{
    transform:translateY(-5px);
    background:linear-gradient(135deg,#fffefa,#fdf3e6);
    border-color:rgba(172,118,68,.42);
    box-shadow:0 14px 29px rgba(87,49,24,.09),inset 0 1px 0 #fff;
  }
  .amenity-item:hover .amenity-icon{
    transform:translateY(-2px) scale(1.075);
    color:#fff;
    background:linear-gradient(135deg,#bd8057,#9b6846);
    box-shadow:0 9px 18px rgba(165,99,54,.19);
  }
  .amenity-item:hover::before{width:66px;opacity:.95}
}
@media(max-width:960px){
  .amenities-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
  .amenity-item{padding:14px 7px 12px;min-height:119px;gap:9px}
  .amenity-icon{width:45px;height:45px}
  .amenity-icon .icon{width:23px;height:23px}
  .amenity-item strong{font-size:11px}
  .amenity-item small{font-size:9px}
}
@media(max-width:600px){
  .amenities-band{padding:16px 0 18px}
  .amenities-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:445px}
  .amenity-item{min-height:105px;padding:12px 8px 10px;gap:6px;border-radius:13px}
  .amenity-icon{width:39px;height:39px}
  .amenity-icon .icon{width:21px;height:21px}
  .amenity-item>div{gap:2px}
  .amenity-item strong{font-size:11.5px;line-height:1.28}
  .amenity-item small{font-size:9px;line-height:1.3}
}
@media(max-width:345px){
  .amenities-list{gap:7px}
  .amenity-item{padding-inline:5px}
  .amenity-item strong{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
  .amenity-item,.amenity-icon,.amenity-item::before{transition:none!important}
}
