:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#173d45;background:#f9f8f4;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}body.modal-open{overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.035em}h1,h2{font-weight:500}p{line-height:1.7}.container{width:min(1200px,calc(100% - 72px));margin-inline:auto}.section{padding:116px 0}.eyebrow{display:inline-block;color:#a57643;font-size:11px;font-weight:800;letter-spacing:.19em;line-height:1.5}.eyebrow.light{color:#e8cda8}.button{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:18px 25px;border-radius:8px;font-weight:700;font-size:13px;white-space:nowrap;transition:transform .2s,background .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 10px 20px #12363a18}.button span{font-size:18px;font-weight:400;line-height:0}.button-dark{background:#174a51;color:white}.button-dark:hover{background:#0b3940}.button-cream{background:#f6f4e9;color:#173f45}.button-outline{background:white;color:#244e53;border-color:#dce5e3}.button-text{background:transparent;color:#986556;padding-inline:10px}.button-small{padding:12px 17px;gap:16px;font-size:12px}.text-link{font-size:13px;font-weight:800;color:#154f55;display:inline-flex;gap:25px;align-items:center;padding-bottom:8px;border-bottom:1px solid #96afb0}.text-link span{font-size:18px;font-weight:400}.text-link:hover{gap:32px}.brand{display:inline-flex;align-items:center;gap:10px;color:#1d5860;flex-shrink:0}.brand-mark{width:46px;height:46px;border:1px solid #86abb0;border-radius:50%;display:grid;place-items:center}.brand-mark svg{width:30px;height:32px}.brand-type{display:grid;gap:3px}.brand-type b{font-family:Manrope,sans-serif;font-size:14px;letter-spacing:.08em;line-height:1}.brand-type small{font-size:7px;letter-spacing:.22em;font-weight:800}.brand-light{color:#fff}.brand-light .brand-mark{border-color:#ffffff88}.site-header{height:92px;background:#fafaf7;position:relative;z-index:40}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:30px}.desktop-nav{display:flex;align-items:center;gap:32px;margin-left:auto}.desktop-nav a,.header-contact{font-size:12px;font-weight:700;color:#345b60;transition:color .2s}.desktop-nav a:hover,.header-contact:hover{color:#bb8752}.header-actions{display:flex;align-items:center;gap:23px}.menu-toggle{display:none;background:transparent;border:0;padding:8px}.mobile-menu{display:none}.hero{height:590px;position:relative;color:white;overflow:hidden}.hero-photo{position:absolute;inset:0;background-position:center 52%;background-size:cover;transform:scale(1.01)}.hero-content{position:relative;height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-bottom:48px}.hero-pill{font-size:10px;letter-spacing:.19em;font-weight:800;border:1px solid #ffffff9c;border-radius:30px;padding:9px 14px;background:#ffffff12}.hero h1{font-size:clamp(48px,6.5vw,86px);line-height:1.12;letter-spacing:-.07em;margin:20px 0 17px;text-wrap:balance}.hero h1 em,.about-copy h2 em,.location-grid h2 em,.reservation-banner em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.05em}.hero-content>p{font-size:16px;max-width:420px;color:#e9f1ed;margin-bottom:28px}.search-wrap{position:relative;z-index:5;margin-top:-53px}.search-bar{display:grid;grid-template-columns:1.15fr 1fr 1fr .9fr 1.35fr;align-items:stretch;min-height:106px;background:#fff;border-radius:12px;box-shadow:0 16px 42px #12373b18;overflow:hidden}.search-intro{display:flex;align-items:center;gap:13px;padding:20px 22px;color:#1a5058;font-size:12px;line-height:1.35}.search-intro strong{font-family:Manrope,sans-serif;font-size:16px}.search-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid #d6e3df;border-radius:50%;font-size:25px;color:#ad8659}.search-bar label{display:flex;flex-direction:column;justify-content:center;gap:6px;margin:18px 0;border-left:1px solid #e6ecea;padding:0 21px;min-width:0}.search-bar label>span:first-child{font-size:9px;font-weight:800;color:#9a9c98;letter-spacing:.13em}.search-bar input,.search-bar select{border:0;background:transparent;outline:0;font-size:13px;font-weight:700;color:#20464d;min-width:0;width:100%;padding:2px 0}.search-bar input::-webkit-calendar-picker-indicator{opacity:.5}.search-submit{border-radius:0;margin:8px;gap:9px;white-space:normal;text-align:left;font-size:12px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:42px}.section-heading h2{font-size:clamp(32px,4vw,50px);line-height:1.18;margin:11px 0 12px}.section-heading p{font-size:14px;color:#6f8382;margin:0}.section-more{margin-bottom:10px}.about-section{background:#f9f8f4;padding-top:139px}.about-grid{display:grid;grid-template-columns:1.06fr 1fr;align-items:center;gap:clamp(60px,9vw,130px)}.about-image-wrap{position:relative}.about-image{width:100%;height:516px;object-fit:cover;border-radius:130px 10px 10px 10px}.about-stamp{position:absolute;bottom:-24px;right:-30px;width:158px;height:158px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:#f4e8d7;color:#2d5556;font-size:10px;font-weight:800;letter-spacing:.1em;line-height:1.7;transform:rotate(11deg)}.about-stamp span{font-size:34px;line-height:1}.about-copy h2{font-size:clamp(38px,4.6vw,58px);line-height:1.18;margin:12px 0 20px}.about-copy>p{font-size:15px;color:#687d7d;max-width:470px}.about-features{margin:32px 0 28px;border-top:1px solid #e4e8e3}.about-features>div{display:flex;gap:22px;align-items:center;padding:16px 0;border-bottom:1px solid #e4e8e3}.about-features span{font-family:Georgia,serif;font-style:italic;color:#bd8c62;font-size:16px}.about-features strong{font-weight:600;font-size:13px}.rooms-section{background:#f0f5f2}.rooms-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.room-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 8px 25px #27484909;transition:transform .25s,box-shadow .25s}.room-card:hover{transform:translateY(-5px);box-shadow:0 16px 34px #27484916}.room-card-image{height:252px;display:block;position:relative;overflow:hidden}.room-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.room-card:hover .room-card-image img{transform:scale(1.04)}.image-tag{position:absolute;left:17px;top:17px;color:#17464d;background:#fffffff0;border-radius:5px;padding:8px 11px;font-size:10px;font-weight:800}.room-card-body{padding:24px}.room-card-top{display:flex;justify-content:space-between;align-items:flex-start}.card-overline{font-size:9px;font-weight:800;letter-spacing:.16em;color:#b09172;margin-bottom:8px}.room-card h3{font-size:22px;margin-bottom:6px}.room-arrow{font-size:22px;color:#9db8b8}.room-card-body>p{font-size:13px;color:#788985;margin-bottom:17px}.amenity-preview{display:flex;gap:7px;flex-wrap:wrap;padding-bottom:20px;border-bottom:1px solid #edf0ec;margin-bottom:18px}.amenity-preview>span{background:#f2f6f2;color:#577070;font-size:10px;padding:7px 8px;border-radius:4px;white-space:nowrap}.room-card .text-link{border:0;padding:0}.experience-section{background:#174b51;color:#fff;overflow:hidden}.experience-grid{display:grid;grid-template-columns:1fr 1.05fr;min-height:470px}.experience-copy{padding:80px 65px 80px 0;align-self:center}.experience-copy h2{font-size:clamp(36px,4.5vw,57px);line-height:1.15;margin:13px 0 20px}.experience-copy>p{color:#c7dbd7;font-size:14px;max-width:440px}.experience-points{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;margin-top:35px;color:#e7f0e9;font-size:12px}.experience-points span{border-top:1px solid #ffffff38;padding-top:13px}.experience-grid>img{height:100%;min-height:470px;width:calc(100% + max(36px,(100vw - 1200px)/2));max-width:none;object-fit:cover}.gallery-section{background:#faf9f5}.gallery-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:16px;height:355px}.gallery-item{border:0;padding:0;position:relative;overflow:hidden;border-radius:9px;text-align:left;background:#d9e5e4}.gallery-item:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0e343c81)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.gallery-item:hover img{transform:scale(1.04)}.gallery-item>span{position:absolute;z-index:1;left:20px;bottom:20px;color:white;font-size:13px;font-weight:700}.perks-section{background:#f2f5f1;padding-top:90px;padding-bottom:90px}.perks-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.perks-grid>div{padding:30px 24px 22px;background:#fff;border-radius:9px;min-height:195px}.perks-grid span{display:grid;place-items:center;border-radius:50%;background:#edf3ed;color:#21656a;width:45px;height:45px;font-size:25px}.perks-grid h3{font-size:15px;letter-spacing:-.02em;margin:22px 0 8px}.perks-grid p{font-size:12px;color:#81908b;margin:0}.location-section{background:#faf9f5}.location-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;align-items:center}.location-grid h2{font-size:clamp(35px,4vw,52px);line-height:1.19;margin:14px 0 20px}.location-grid p{color:#718583;font-size:14px;max-width:400px}.location-detail{display:flex;align-items:center;gap:15px;margin-top:30px}.location-detail>span{display:grid;place-items:center;background:#e5eeeb;width:46px;height:46px;border-radius:50%;font-size:27px}.location-detail div{display:grid;gap:4px}.location-detail strong{font-size:13px}.location-detail small{font-size:11px;color:#899996}.map-frame{height:340px;position:relative;border-radius:12px;overflow:hidden;background:#dcece9}.contact-section{background:#16474d;color:#fff;padding:80px 0}.contact-grid{display:grid;grid-template-columns:1fr .8fr;gap:120px;align-items:center}.contact-grid h2{font-size:clamp(36px,4.3vw,55px);line-height:1.16;margin:14px 0 19px}.contact-grid p{font-size:14px;color:#d4e2dd;max-width:440px}.contact-grid .button{margin-top:12px}.contact-card{border:1px solid #ffffff4a;border-radius:10px;padding:28px;background:#ffffff0b}.contact-card h3{font-size:22px}.contact-card p{font-size:12px;color:#c8d9d6}.contact-row{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff31;padding:14px 0;font-size:12px}.contact-row strong{color:#e7cba5}.site-footer{background:#10383e;color:#c3d8d6;padding:60px 0 22px}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:45px}.footer-brand p{font-size:12px;max-width:250px;margin-top:20px}.footer-top>div:not(:first-child){display:flex;flex-direction:column;gap:11px}.footer-top h4{color:#fff;font-size:12px;letter-spacing:0;margin:0 0 7px}.footer-top a:not(.brand){font-size:12px}.footer-note p{font-size:12px;margin:0}.footer-bottom{border-top:1px solid #ffffff28;margin-top:50px;padding-top:20px;display:flex;justify-content:space-between;font-size:10px;color:#8fafad}.page-banner{background:#e9f1eb;padding:88px 0 100px;position:relative;overflow:hidden}.page-banner .container{position:relative;z-index:1}.page-banner h1{font-size:clamp(43px,5vw,68px);line-height:1.12;margin:12px 0 18px}.page-banner p{color:#68837f;font-size:15px}.listing-section{padding-top:70px}.search-summary{display:flex;gap:17px;align-items:center;background:#e9f1eb;border-radius:9px;padding:19px 24px;margin-bottom:35px}.search-summary>span{font-size:28px;color:#236067}.search-summary div{display:grid;gap:4px}.search-summary strong{font-size:13px}.search-summary small{font-size:12px;color:#728783}.search-summary a{margin-left:auto;font-weight:800;font-size:12px;color:#20616a}.listing-top{display:flex;justify-content:space-between;margin-bottom:24px;font-size:11px;font-weight:700;color:#718883}.listing-note{color:#92a39e;font-size:11px;margin-top:30px}.empty-state{padding:90px 20px;text-align:center;background:#f2f6f2;border-radius:12px}.empty-state h3{font-size:24px}.empty-state p{font-size:13px;color:#748985}.room-detail-heading{background:#f9f8f4;padding:36px 0 28px}.breadcrumbs{display:flex;gap:11px;color:#8ba09a;font-size:10px;margin-bottom:35px}.breadcrumbs a:hover{color:#1d5b62}.room-title-row{display:flex;justify-content:space-between;align-items:flex-end}.room-title-row h1{font-size:clamp(42px,5.5vw,67px);margin:7px 0 4px}.room-title-row p{color:#7a8c86;font-size:14px;margin:0}.room-title-meta{display:flex;gap:15px;font-size:12px;font-weight:700;color:#4b6f6d;margin-bottom:8px}.detail-gallery{height:510px;display:grid;grid-template-columns:1.85fr 1fr;gap:10px}.detail-gallery button{border:0;padding:0;position:relative;overflow:hidden;background:#dce6e3}.detail-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.detail-gallery button:hover img{transform:scale(1.03)}.detail-main-photo{border-radius:12px 0 0 12px}.detail-gallery button>span{position:absolute;right:16px;bottom:16px;background:#fffffff0;color:#19464b;padding:11px 14px;border-radius:5px;font-size:11px;font-weight:800}.detail-side-photos{display:grid;grid-template-rows:1fr 1fr;gap:10px;min-height:0}.detail-side-photos button:last-child{border-radius:0 12px 12px 0}.detail-content{padding-top:88px}.detail-grid{display:grid;grid-template-columns:1fr 360px;gap:110px}.detail-grid h2{font-size:clamp(36px,4vw,51px);line-height:1.18;margin:10px 0 19px}.detail-grid h2 em{font-family:Georgia,serif;font-weight:400}.detail-description{color:#758781;font-size:14px;max-width:640px}.detail-facts{display:flex;gap:30px;flex-wrap:wrap;border-top:1px solid #e0e7df;border-bottom:1px solid #e0e7df;padding:25px 0;margin:34px 0}.detail-facts>div{display:flex;gap:11px;align-items:center}.detail-facts>div>span{font-size:27px;color:#448288}.detail-facts strong,.detail-facts small{display:block}.detail-facts strong{font-size:12px}.detail-facts small{color:#9bad9f;font-size:10px;margin-top:3px}.detail-grid h3{font-size:20px;margin-bottom:22px}.amenities-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 20px}.amenities-grid>div{display:flex;align-items:center;gap:11px;font-size:12px;color:#5d7773}.amenities-grid>div>span{display:grid;place-items:center;width:32px;height:32px;background:#ecf3ee;border-radius:5px;font-size:17px;color:#27616a}.reserve-card{background:#edf3ee;border-radius:12px;padding:30px;height:max-content;position:sticky;top:24px}.reserve-card h3{font-size:28px;line-height:1.22;margin:13px 0 12px}.reserve-card p{font-size:13px;color:#748781}.reserve-card .button{width:100%;margin:15px 0}.reserve-card small{display:block;text-align:center;color:#8b9e96;font-size:10px;line-height:1.5}.detail-bottom{background:#1b555b;color:#fff;text-align:center;padding:65px 0}.detail-bottom h2{font-size:37px;margin-bottom:8px}.detail-bottom p{color:#d1e1dd;font-size:13px}.detail-bottom .button{margin-top:15px}.reservation-banner{background:#e8f1ec}.reservation-banner h1{font-size:clamp(40px,5vw,61px)}.form-section{padding:70px 0 120px}.form-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:70px;align-items:start}.reservation-form{background:white;border:1px solid #e8eeea;border-radius:12px;padding:40px;box-shadow:0 10px 25px #22484908}.form-block+.form-block{border-top:1px solid #e9eeea;margin-top:39px;padding-top:35px}.form-block-heading{display:flex;gap:18px;align-items:flex-start;margin-bottom:26px}.form-block-heading>span{color:#bb916b;font-family:Georgia,serif;font-size:24px;font-style:italic}.form-block-heading h2{font-size:23px;margin:0 0 5px}.form-block-heading p{font-size:12px;color:#81948d;margin:0}.form-fields{display:grid;gap:18px}.form-fields.two-col{grid-template-columns:1fr 1fr}.field{display:grid;gap:8px;min-width:0}.field.full{grid-column:1/-1}.field>span{font-size:11px;font-weight:800;color:#375e61}.field small{font-weight:400;color:#9bad9f}.field input,.field select,.field textarea{width:100%;padding:14px 15px;background:#f7f9f6;border:1px solid #e3eae4;border-radius:6px;color:#2a5054;font-size:12px;outline:0}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#74a7a6;box-shadow:0 0 0 3px #74a7a62b}.field input::placeholder,.field textarea::placeholder{color:#a5b2a9}.form-submit{display:flex;align-items:center;gap:20px;border-top:1px solid #e9eeea;margin-top:32px;padding-top:30px}.form-submit p{font-size:11px;color:#8da098;margin:0}.form-error,.modal-error{background:#fff0ec;border:1px solid #f2cbc4;color:#9a4c42;font-size:12px;padding:12px;border-radius:6px;margin-top:20px}.modal-error:empty{display:none}.form-aside{border-radius:10px;overflow:hidden;background:#edf4ee}.form-aside-image{height:210px}.form-aside-image img{height:100%;width:100%;object-fit:cover}.form-aside-copy{padding:26px}.form-aside-copy>span{font-size:9px;color:#ab815b;font-weight:800;letter-spacing:.13em}.form-aside-copy h3{font-size:25px;margin:10px 0}.form-aside-copy ol{padding-left:19px;color:#5a7470;font-size:12px;line-height:2.4}.form-aside-copy p{border-top:1px solid #d7e3db;padding-top:15px;font-size:11px;color:#7c9087;margin-bottom:0}.success-page{min-height:70vh;display:grid;place-items:center;padding:90px 0}.success-card{text-align:center;max-width:610px}.success-icon{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:#e3f0e9;color:#1c6c65;font-size:36px;margin:0 auto 23px}.success-card h1{font-size:clamp(40px,5vw,58px);margin:12px 0 15px}.success-card p{color:#6c817d;font-size:15px}.success-note{background:#eef5ed;padding:14px;margin:26px 0;font-size:12px;font-weight:700;border-radius:7px;color:#44746d}

.map-frame iframe{display:block;width:100%;height:100%;border:0}.location-directions{margin-top:24px}.reserve-card small+small{margin-top:8px}

/* Café da manhã: mantém a área visual da seção A EXPERIÊNCIA. */
.experience-gallery{position:relative;min-height:470px;height:100%;width:calc(100% + max(36px,(100vw - 1200px)/2));overflow:hidden;background:#d9e5e1;touch-action:pan-y}
.experience-photo{width:100%;height:100%;min-height:470px;object-fit:cover;transition:opacity .32s ease;opacity:1}
.experience-photo.is-changing{opacity:0}
.experience-gallery-controls{position:absolute;left:20px;right:20px;bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.experience-gallery-dots,.experience-gallery-arrows{display:flex;align-items:center;gap:8px}
.experience-gallery-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:#ffffff9c;box-shadow:0 1px 5px #173d453b}
.experience-gallery-dots button[aria-current="true"]{width:22px;border-radius:9px;background:white}
.experience-gallery-arrows button{width:36px;height:36px;border:1px solid #ffffffb8;border-radius:50%;background:#173d458c;color:white;font-size:19px;line-height:1;display:grid;place-items:center}
.experience-gallery-arrows button:hover{background:#173d45}
.experience-gallery button:focus-visible{outline:2px solid white;outline-offset:3px}

/* As fotografias reais usam o mesmo enquadramento da imagem original da seção. */
.search-icon svg{display:block;width:21px;height:21px}
.about-photo-frame{position:relative;width:100%;height:516px;overflow:hidden;border-radius:130px 10px 10px 10px;background:#dce8e2}
.about-photo-frame .about-image{position:absolute;inset:0;width:100%;height:100%;border-radius:0;object-fit:cover;opacity:0;transition:opacity .35s ease}
.about-photo-frame .about-image.is-active{opacity:1}
.about-photo-dots{position:absolute;z-index:1;left:19px;bottom:20px;display:flex;gap:8px}
.about-photo-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:#ffffffb8;box-shadow:0 1px 5px #173d453b}
.about-photo-dots button[aria-current="true"]{width:22px;border-radius:9px;background:white}
.about-photo-dots button:focus-visible{outline:2px solid white;outline-offset:3px}
.about-stamp{z-index:2;letter-spacing:.02em;line-height:1.4}
.about-stamp strong{display:block;max-width:122px;font-size:11px;font-weight:800}
.experience-photo{position:absolute;inset:0;min-height:0}

/* As duas cenas ocupam exatamente o mesmo Hero durante a troca. */
.hero-media{position:absolute;inset:0;overflow:hidden;background:#184850;pointer-events:none}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s ease}
.hero-video-vhome{object-position:60% 45%}
.hero-video-vhome1{object-position:50% 45%}
.hero-video.is-active{opacity:1}
.hero-media-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,43,51,.72),rgba(10,43,51,.18) 76%),linear-gradient(0deg,rgba(10,43,51,.25),transparent 45%)}
.hero-content{z-index:1}

/* A grade acompanha a orientação de cada foto, sem recortar os retratos. */
.gallery-grid{display:block;columns:4;column-gap:16px;height:auto}
.gallery-grid .gallery-item{display:block;width:100%;height:auto;margin:0 0 16px;break-inside:avoid}
.gallery-grid .gallery-item img{display:block;width:100%;height:auto;object-fit:cover}

.booking-review-section{background:#174B51;padding:100px 0}
.booking-review-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(50px,8vw,120px);align-items:center}
.booking-review-copy .eyebrow{color:#E8CDA8}
.booking-review-copy h2{font-size:clamp(38px,4.6vw,58px);line-height:1.16;max-width:510px;margin:16px 0 18px;color:#F8F5EC}
.booking-review-copy p{font-size:14px;color:#D4E3DD;max-width:390px;margin:0}
.booking-review-result{border-left:1px solid #ffffff52;padding-left:clamp(38px,5vw,75px);min-width:0}
.booking-review-brand{font-family:Manrope,'DM Sans',sans-serif;font-size:30px;font-weight:700;line-height:1.2;letter-spacing:-.045em;color:#F8F5EC}
.booking-review-rating{display:flex;align-items:flex-end;gap:clamp(22px,3vw,38px);margin-top:12px}
.booking-review-score{font-family:Manrope,'DM Sans',sans-serif;font-size:clamp(104px,12vw,164px);font-weight:600;line-height:.9;letter-spacing:-.095em;color:#F8F5EC;white-space:nowrap}
.booking-review-details{display:grid;gap:7px;padding-bottom:12px;white-space:nowrap}
.booking-review-details strong{font-family:Manrope,'DM Sans',sans-serif;font-size:26px;letter-spacing:-.04em;color:#F4E5D0}
.booking-review-details span{font-size:13px;color:#C6D9D2}
.booking-review-source{border-top:1px solid #ffffff52;padding-top:17px;margin:22px 0 24px;color:#BDD1CA;font-size:12px}
.booking-review-link{display:inline-flex;align-items:center;gap:23px;padding-bottom:8px;border-bottom:1px solid currentColor;color:#F4E5D0;font-size:13px;font-weight:800}
.booking-review-link span{font-size:18px;font-weight:400}
.booking-review-link:hover{gap:29px;color:#fff}
.booking-review-link:focus-visible{outline:2px solid #F4E5D0;outline-offset:5px}

/* Buscador da Home: calendário próprio e ícones de traço uniforme. */
.ui-icon{display:inline-block;width:18px;height:18px;flex:none;vertical-align:middle;background:currentColor;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}
.search-bar{overflow:visible}
.search-date-field{position:relative;display:flex;flex-direction:column;justify-content:center;gap:7px;margin:18px 0;border-left:1px solid #e6ecea;padding:0 21px;min-width:0}
.search-field-label{font-size:9px;font-weight:800;color:#687c7b;letter-spacing:.13em;white-space:nowrap}
.search-field-label small{font-size:9px;font-weight:600;letter-spacing:0;color:#9a7658;margin-left:4px}
.search-date-trigger{display:flex;align-items:center;gap:9px;width:100%;min-width:0;padding:3px 0;border:0;background:transparent;color:#20464d;text-align:left;font-size:13px;font-weight:700}
.search-date-trigger .ui-icon,.search-guests-control .ui-icon{width:17px;height:17px;color:#9a7658}
.search-date-trigger [data-date-value]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.search-date-trigger:hover{color:#a57643}
.search-date-trigger:focus-visible,.search-guests-field select:focus-visible{outline:2px solid #1e6268;outline-offset:4px;border-radius:3px}
.search-bar .search-guests-control{display:flex;align-items:center;gap:8px;color:#20464d;letter-spacing:normal}
.search-guests-control select{cursor:pointer}
.search-calendar[hidden]{display:none}
.search-calendar{position:absolute;top:calc(100% + 8px);left:0;z-index:20;width:320px;max-width:calc(100vw - 32px);padding:16px;background:#fbfaf5;border:1px solid #dce7e1;border-radius:9px;box-shadow:0 14px 32px #173d4529;color:#20464d}
.search-date-field[data-search-date="checkout"] .search-calendar{left:auto;right:0}
.search-calendar-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}
.search-calendar-header strong{font-family:Manrope,'DM Sans',sans-serif;font-size:14px;font-weight:700;letter-spacing:-.02em}
.search-calendar-header button{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid #d9e5df;border-radius:5px;background:#fff;color:#22575a}
.search-calendar-header button:hover:not(:disabled){background:#e8f0eb}
.search-calendar-header button:disabled{opacity:.35;cursor:default}
.search-calendar-header .ui-icon{width:16px;height:16px}
.search-calendar-weekdays,.search-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}
.search-calendar-weekdays{margin-bottom:6px;color:#718985;font-size:10px;font-weight:700}
.search-calendar-weekdays span{padding:5px 0}
.search-calendar-day,.search-calendar-empty{display:grid;place-items:center;min-width:0;height:36px}
.search-calendar-day{padding:0;border:1px solid transparent;border-radius:5px;background:transparent;color:#20464d;font-size:12px;font-weight:600}
.search-calendar-day:hover:not(:disabled){background:#e8f0eb}
.search-calendar-day.is-today{border-color:#b69471}
.search-calendar-day.is-selected{background:#174b51;color:#fff;border-color:#174b51}
.search-calendar-day:disabled{color:#b4c0bc;cursor:default}
.search-calendar button:focus-visible{outline:2px solid #ae794d;outline-offset:2px}
.brand>img{width:72px;height:72px;flex:none;object-fit:contain;border-radius:7px;background:#fdfcf7}
.footer-brand .brand>img{width:82px;height:82px}
.admin-sidebar .brand>img{width:62px;height:62px}
.admin-login-card .brand>img{width:94px;height:94px}
@media(max-width:800px){.brand>img{width:64px;height:64px}.footer-brand .brand>img{width:76px;height:76px}}
@media(max-width:560px){.site-header{height:80px}.brand>img{width:58px;height:58px}.header-inner{gap:12px}.header-actions{gap:8px}.header-actions>.button{padding:10px 11px;font-size:10px}.footer-brand .brand>img{width:72px;height:72px}}
.search-submit{border-radius:6px}
.search-submit .ui-icon{width:17px;height:17px}

/* A fotografia já usada nos cards ambienta a listagem de acomodações. */
.listing-section{background-image:linear-gradient(110deg,#173f45c9,#1d4d52a8),url('/static/images/inspiracao/web/inspiracao-11-800.webp');background-size:cover;background-position:center 52%;background-repeat:no-repeat}
.listing-section .listing-top,.listing-section .listing-note{color:#f4f6ef}
.listing-top span:last-child{display:inline-flex;align-items:center;gap:7px}
.listing-top .ui-icon{width:14px;height:14px}
.search-summary>span{display:grid;place-items:center}
.search-summary .ui-icon{width:24px;height:24px}
.search-summary a{display:inline-flex;align-items:center;gap:7px}
.search-summary a .ui-icon{width:15px;height:15px}
.room-card{box-shadow:0 12px 34px #102f3440}
.room-card-body{display:flex;flex-direction:column}
.room-card-body>.room-card-price{display:flex;align-items:baseline;gap:7px;margin:1px 0 17px;color:#1b5359;line-height:1.25}
.room-card-price strong{font-family:Manrope,'DM Sans',sans-serif;font-size:20px;font-weight:700;letter-spacing:-.035em}
.room-card-price span{font-size:11px;color:#697f7c}
.room-card .amenity-preview{margin-top:auto}
.image-tag{display:inline-flex;align-items:center;gap:4px}
.image-tag .ui-icon{width:13px;height:13px}
.room-arrow{display:inline-flex;align-items:center}
.room-arrow .ui-icon{width:19px;height:19px}
.amenity-preview>span{display:inline-flex;align-items:center;gap:5px}
.amenity-preview .ui-icon{width:14px;height:14px}
.room-card .text-link .ui-icon,.rooms-section .section-more .ui-icon{width:16px;height:16px}

/* Os controles públicos usam o mesmo conjunto Lucide e a cor do texto. */
.menu-toggle{color:#1a4b52}
.menu-toggle .ui-icon{width:23px;height:23px}
.menu-toggle .ui-icon:last-child,.menu-toggle[aria-expanded="true"] .ui-icon:first-child{display:none}
.menu-toggle[aria-expanded="true"] .ui-icon:last-child{display:inline-block}
.experience-gallery-arrows button .ui-icon{width:17px;height:17px}
.gallery-item>span{display:flex;align-items:center;gap:7px}
.gallery-item .ui-icon{width:15px;height:15px}
.booking-review-link .ui-icon{width:16px;height:16px}
.location-detail>span .ui-icon{width:21px;height:21px}
.room-title-meta>span{display:inline-flex;align-items:center;gap:5px}
.room-title-meta .ui-icon{width:15px;height:15px}
.detail-facts>div>span .ui-icon{width:24px;height:24px}
.amenities-grid span .ui-icon{width:18px;height:18px}
.reserve-card h3{margin-top:0}
.success-icon .ui-icon{width:36px;height:36px}
.lightbox-arrow{display:grid;place-items:center}
.lightbox-arrow .ui-icon{width:20px;height:20px}
.lightbox-close .ui-icon{width:28px;height:28px}

/* Escala de leitura pública: displays permanecem na hierarquia original. */
:root{--text-body:15px;--text-compact:14px;--text-meta:13px;--text-micro:11px}
.section-heading p,.experience-copy>p,.location-grid p,.contact-grid p,.booking-review-copy p,.detail-description,.room-title-row p{font-size:var(--text-body)}
.room-card-body>p,.reserve-card p,.detail-bottom p,.empty-state p,.contact-card p,.gallery-item>span,.about-features strong,.location-detail strong,.search-summary strong,.search-date-trigger,.booking-review-details span,.booking-review-link{font-size:var(--text-compact)}
.desktop-nav a,.header-contact,.button,.text-link,.search-bar input,.search-bar select,.room-title-meta,.amenities-grid>div,.detail-facts strong,.footer-brand p,.footer-top a:not(.brand),.footer-note p,.contact-row,.form-block-heading p,.form-aside-copy ol,.success-note,.search-calendar-day,.booking-review-source,.perks-grid p{font-size:var(--text-meta)}
.eyebrow,.button-small,.search-submit,.search-summary small,.search-summary a,.listing-top,.listing-note,.breadcrumbs,.detail-gallery button>span,.detail-facts small,.reserve-card small,.field>span,.form-submit p,.form-aside-copy p,.location-detail small,.room-card-price span,.amenity-preview>span,.footer-bottom{font-size:var(--text-micro)}
.search-summary small,.search-summary a,.field>span,.form-aside-copy p,.booking-review-source{font-size:var(--text-meta)}
.booking-review-details span{font-size:var(--text-compact)}
.field input,.field select,.field textarea{font-size:var(--text-compact)}
.search-field-label,.search-field-label small,.search-bar label>span:first-child,.card-overline,.form-aside-copy>span{font-size:10px}
.search-calendar-weekdays{font-size:var(--text-micro)}
.search-calendar-day{height:38px;font-size:var(--text-meta)}
.search-calendar-header strong{font-size:var(--text-body)}
.room-card-price strong{font-size:21px}
.form-submit .button,.search-submit{font-size:var(--text-meta)}

/* O formulário de reserva compartilha o mesmo calendário da busca da Home. */
.reservation-form .search-date-field{margin:0;padding:0;border:0;gap:8px}
.reservation-form .search-field-label{color:#375e61;font-size:12px;letter-spacing:0}
.reservation-form .search-field-label small{font-size:11px}
.reservation-form .search-date-trigger{min-height:49px;padding:12px 14px;background:#f7f9f6;border:1px solid #e3eae4;border-radius:6px;font-size:var(--text-compact)}
.reservation-form .search-date-trigger:focus-visible{outline:0;border-color:#74a7a6;box-shadow:0 0 0 3px #74a7a62b}
.reservation-form .search-calendar{top:calc(100% + 6px)}
.reservation-form .search-date-field[data-search-date="checkout"] .search-calendar{left:auto;right:0}
.search-calendar-day.is-in-range:not(.is-selected):not(:disabled){background:#e8f0eb}

.success-not-confirmed{font-weight:700;background:linear-gradient(transparent 58%,#f5e8b4 58%);box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:0 .08em;border-radius:1px}

/* Official transparent brand files: horizontal wordmark in public/login, icon in the narrow Admin sidebar. */
.brand>img{display:block;width:164px;height:auto;flex:none;object-fit:contain;background:transparent;border-radius:0}
.footer-brand .brand>img{width:180px;height:auto}
.admin-sidebar .brand>img{width:56px;height:auto}
.admin-login-card .brand>img{width:min(240px,100%);height:auto}

/* Accessible photo controls use the existing gallery treatment from the Node site. */
.lightbox{position:fixed;z-index:110;inset:0;width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:55px 75px;border:0;background:#081a1ef4;color:white;place-items:center}
.lightbox::backdrop{background:#081a1ef4}
.lightbox-image{max-height:calc(100vh - 120px);max-width:100%;width:auto;object-fit:contain;border-radius:4px}
.lightbox-close{position:absolute;top:20px;right:28px;background:none;color:#fff;border:0;font-size:36px}
.lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);width:43px;height:43px;border:1px solid #ffffff89;border-radius:50%;background:#ffffff15;color:white;font-size:25px}
.lightbox-arrow.prev{left:20px}.lightbox-arrow.next{right:20px}
.lightbox-count{position:absolute;bottom:24px;color:#fff;font-size:12px;letter-spacing:.13em}
.detail-main-photo>span{position:absolute;right:16px;bottom:16px;background:#fffffff0;color:#19464b;padding:11px 14px;border-radius:5px;font-size:11px;font-weight:800}
.accommodation-building-title{margin:2.5rem 0 1rem;font-family:inherit;font-size:1.45rem;color:var(--ink,#273a37)}.image-category-note{margin-top:1rem;font-size:.82rem;color:#686c66}.detail-side-photo{min-width:0;overflow:hidden;border:0;padding:0;background:transparent;cursor:pointer}.detail-side-photo img{display:block;width:100%;height:100%;object-fit:cover}.coupon-box{margin-top:1rem}.coupon-row{display:flex;gap:.6rem}.coupon-row input{flex:1}.coupon-box small{display:block;margin-top:.4rem}#coupon-result{color:#173d45;font-size:12px;font-weight:600;overflow-wrap:anywhere}
.accommodation-building-heading>p{max-width:720px;margin:-.45rem 0 1.4rem;color:#758781;font-size:.9rem}.coupon-box{min-width:0}.coupon-row .button{padding:12px 18px;gap:8px}.coupon-box small{line-height:1.5}#coupon-result{color:#173d45;font-size:12px;font-weight:600;overflow-wrap:anywhere}.image-category-note{line-height:1.55}
/* Compact public language switcher. */
.language-picker{display:flex;align-items:center;gap:.2rem}.language-picker form{margin:0}.language-option{display:grid;place-items:center;width:2rem;height:2rem;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;font-size:1.15rem;cursor:pointer}.language-option:hover,.language-option:focus-visible{border-color:#9b9a8d;outline:none}.language-option.is-active{border-color:#243c36;box-shadow:inset 0 0 0 1px #243c36}.mobile-menu .language-picker{padding:.75rem 1rem}.mobile-menu .language-option{width:2.5rem;height:2.5rem}

/* Fase 7.1 — identidade editorial da Home */
.site-header{position:absolute;inset:0 0 auto;height:102px;background:transparent;color:#fff;z-index:40;transition:height .25s ease,background .25s ease,box-shadow .25s ease}.header-inner{width:min(1320px,calc(100% - 72px));gap:35px}.site-header .brand{padding:5px 12px;background:#f8f5e9ee;border-radius:3px;box-shadow:0 5px 24px #102a2d20}.site-header .brand>img{width:164px}.desktop-nav{gap:clamp(18px,2.6vw,38px)}.desktop-nav a,.header-contact{color:#fff;text-shadow:0 1px 8px #102b3070}.site-header .header-actions{gap:16px}.site-header .language-option{border-color:#ffffff66}.site-header .language-option.is-active{border-color:#fff;box-shadow:inset 0 0 0 1px #fff}.site-header .language-option:hover,.site-header .language-option:focus-visible{border-color:#fff}.site-header .button-cream{padding:14px 18px;color:#17464a}.site-header .menu-toggle{color:#fff}.site-header.is-scrolled{position:fixed;height:76px;background:#fbfaf6f5;box-shadow:0 5px 22px #173d4512;backdrop-filter:blur(12px);color:#173d45}.site-header.is-scrolled .desktop-nav a,.site-header.is-scrolled .header-contact,.site-header.is-scrolled .menu-toggle{color:#244d50;text-shadow:none}.site-header.is-scrolled .brand{padding:3px 9px;background:transparent;box-shadow:none}.site-header.is-scrolled .brand>img{width:148px}.site-header.is-scrolled .language-option{border-color:transparent}.site-header.is-scrolled .language-option.is-active{border-color:#56736d;box-shadow:inset 0 0 0 1px #56736d}.site-header.is-scrolled .button-cream{background:#174a51;color:#fff}.hero{height:min(780px,90vh);min-height:610px;margin-top:0}.hero-content{padding-top:78px;padding-bottom:0}.hero h1{font-size:clamp(54px,7vw,96px);max-width:800px;line-height:1.03;letter-spacing:-.055em}.hero h1 em{color:#e9d2a8}.hero-content>p{max-width:480px;font-size:17px;color:#f5f4e9}.hero .button{border-radius:2px;min-height:56px;padding-inline:25px;letter-spacing:.015em}.hero-pill{border:0;border-left:2px solid #e6c891;border-radius:0;background:transparent;padding:3px 0 3px 13px;color:#f3e4c6;font-size:10px;letter-spacing:.22em}.hero-scroll{position:absolute;right:max(36px,calc((100vw - 1320px)/2));bottom:122px;display:flex;gap:12px;align-items:center;color:#fff;font-size:9px;letter-spacing:.2em;writing-mode:vertical-rl}.hero-scroll span{font-size:16px}.hero-media-shade{background:linear-gradient(90deg,rgba(10,36,37,.66),rgba(10,43,51,.16) 75%),linear-gradient(0deg,rgba(10,43,51,.34),transparent 44%)}.search-wrap{margin-top:-62px;scroll-margin-top:100px}.search-bar{grid-template-columns:1.05fr 1fr 1fr .86fr 1.15fr;min-height:112px;border-radius:3px;box-shadow:0 18px 55px #183e3e20}.search-intro{padding-left:28px}.search-icon{border:0;border-radius:0;font-size:30px}.search-bar label{margin-block:21px}.search-submit{border-radius:2px!important;text-align:center;justify-content:center;letter-spacing:.01em}.section{padding-block:110px}.about-section{padding-top:135px}.about-image{border-radius:2px 95px 2px 2px}.about-copy h2,.section-heading h2,.location-grid h2,.experience-copy h2,.contact-grid h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.04em}.about-copy h2{font-size:clamp(40px,4.3vw,59px)}.text-link{border-bottom-color:#b28c5b;color:#254f4c}.rooms-grid{gap:24px}.room-card{border:0;border-radius:2px;background:transparent;box-shadow:none}.room-card-image{border-radius:2px;overflow:hidden}.room-card-body{padding:21px 2px}.room-card h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:27px}.room-card-price{display:none}.amenity-preview>span{background:transparent;border:1px solid #dfe7df;border-radius:2px}.perks-section{background:#f3f2e9}.perks-grid{gap:32px}.perks-grid>div{background:transparent;border-radius:0;border-top:1px solid #d6d6c8;padding:23px 5px;min-height:0}.perks-grid span{background:transparent;color:#ac8657;width:34px;height:34px}.perks-grid h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:20px;margin:14px 0 7px}.experience-section{background:#244d4a}.experience-grid>img{border-radius:0 0 0 90px}.gallery-grid{height:390px;gap:12px}.gallery-item{border-radius:2px}.location-grid{gap:70px}.map-frame{border-radius:2px}.contact-section{background:#244d4a}.contact-card{border-radius:2px;background:transparent}.site-footer{background:#143936}.footer-top{padding-bottom:12px}.mobile-book{background:#174a51!important;color:#fff!important;margin-top:10px;text-align:center;border:0!important;border-radius:2px}
@media(max-width:1024px){.site-header{height:88px}.header-inner{width:calc(100% - 48px);gap:16px}.site-header .brand>img{width:140px}.desktop-nav{gap:17px}.header-actions{gap:9px!important}.site-header .header-contact{display:none}.hero{height:690px}.search-bar{grid-template-columns:1fr 1fr 1fr}.search-intro{grid-column:1/-1;padding-block:14px}.search-bar label{border-left:0;border-top:1px solid #e6ecea}.search-submit{grid-column:1/-1;min-height:52px}.perks-grid{gap:18px}.location-grid{gap:35px}}
@media(max-width:800px){.site-header{height:80px}.site-header.is-scrolled{height:70px}.header-inner{width:calc(100% - 36px)}.site-header .brand{padding:4px 8px}.site-header .brand>img{width:125px}.site-header .header-actions>.button,.site-header .header-contact{display:none}.site-header .menu-toggle{display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffff75;border-radius:50%;background:#123d3f54}.site-header.is-scrolled .menu-toggle{border-color:#dce5df;background:transparent}.mobile-menu{top:80px;background:#fbfaf6;color:#244d50;padding:14px 20px 22px}.site-header.is-scrolled .mobile-menu{top:70px}.mobile-menu a{border-color:#e5e9df}.hero{height:670px;min-height:600px}.hero-content{padding-top:55px}.hero-scroll{right:22px;bottom:118px}.search-wrap{margin-top:-52px}.search-bar{grid-template-columns:1fr 1fr}.search-intro{grid-column:1/-1}.search-bar label{grid-column:auto!important}.search-submit{grid-column:1/-1}.section{padding-block:82px}.about-section{padding-top:102px}.about-grid{gap:52px}.about-image{height:400px}.rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.room-card-image{height:220px}.experience-grid>img{min-height:340px;border-radius:0 0 0 55px}}
@media(max-width:560px){.site-header .brand>img{width:112px}.site-header.is-scrolled .brand>img{width:105px}.hero{height:630px;min-height:590px}.hero-content{padding-top:44px;padding-bottom:40px}.hero h1{font-size:clamp(43px,12vw,57px);line-height:1.05;margin-top:21px}.hero-content>p{font-size:14px;max-width:290px}.hero .button{font-size:12px;min-height:50px;padding:13px 17px}.hero-scroll{bottom:115px;right:15px}.search-wrap{margin-top:-50px}.search-bar{padding:10px;border-radius:2px}.search-intro{padding:9px 8px}.search-bar label{padding:9px 8px!important;margin:3px 0!important}.search-bar input,.search-bar select{font-size:12px}.search-submit{min-height:48px}.about-section{padding-top:84px}.about-image{height:335px;border-radius:2px 70px 2px 2px}.rooms-grid{grid-template-columns:1fr;gap:18px}.room-card-image{height:270px}.room-card-body{padding:15px 1px}.room-card h3{font-size:25px}.perks-grid{gap:10px 18px}.perks-grid>div{padding:17px 0}.gallery-grid{height:auto;grid-template-columns:1fr 1fr}.gallery-grid .gallery-item{height:180px}.gallery-grid .gallery-item:first-child{grid-column:1/-1;height:250px}.experience-grid>img{height:265px;min-height:0}.site-footer{padding-top:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.site-header,.hero-video,.button,.gallery-item img{transition:none!important}.hero-scroll{display:none}}
