/* Bloco 1, revisão editorial. Proposta digital; vetores oficiais inalterados.
   Poppins substitui Arial. Aminute depende de arquivo/licença web fornecidos. */
@font-face{font-family:Poppins;src:url('../../assets/fonts/Poppins-Light.ttf') format('truetype');font-weight:300;font-display:swap}
@font-face{font-family:Poppins;src:url('../../assets/fonts/Poppins-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url('../../assets/fonts/Poppins-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}
:root{--font-display:'Aminute','Poppins',Arial,sans-serif;--sidebar-width:13rem}
body{font-weight:300}
h1,h2,h3{letter-spacing:-.045em;font-weight:300;text-wrap:balance}
.sidebar{padding:36px 22px 22px;border-right:1px solid var(--brand-sand)}
.brand{width:160px;margin-bottom:48px}
.sidebar nav a{font-size:12px;padding-block:12px}
.sidebar nav a[aria-current]::before{width:4px;height:4px}
.sidebar-bottom .button{font-size:11px;padding:12px 10px}
.button{border-radius:0;font-size:12px;font-weight:400;padding:17px 20px}
.hero{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);padding:40px 40px 24px;gap:0 40px;min-height:820px}
.hero-copy{padding:0;position:relative}
.hero-mark{width:64px;height:64px;object-fit:contain;margin-bottom:34px}
.hero h1{font-size:clamp(36px,3.9vw,66px);line-height:1.18;margin-top:24px}
.hero h1 span{display:inline-block}
.hero-description{font-size:14px;line-height:1.9;max-width:29ch;margin-top:26px}
.hero-copy .eyebrow{font-size:8px;letter-spacing:.09em;line-height:1.8}
.hero-note{margin-top:38px;padding-top:24px;border-top:1px solid var(--brand-sand);max-width:290px}
.hero-note img{width:42px;height:42px}
.hero-note p{font-size:10px}
.hero-image{height:660px;border-radius:0;overflow:visible;margin-bottom:24px}
.hero-image>img{object-position:50% 65%;height:100%;outline:1px solid #00000008}
.hero-image figcaption{bottom:-38px;padding:12px 0 0;background:none;color:var(--text-secondary);font-size:9px;line-height:1.6}
.hero-image figcaption span:first-child{color:var(--brand-blue);font-weight:600}
.explore-link{padding-top:30px;font-size:9px;letter-spacing:.16em}
.section{padding:100px 48px}
.section-heading{gap:20px 48px;margin-bottom:48px}
.section-heading>p:last-child{line-height:1.9;font-size:13px}
.section .eyebrow{letter-spacing:.16em;font-size:10px}
.stay-photo,.structure-photo>img{border-radius:0}
.stay-photo{height:540px}
.stay-sun{opacity:1;width:80px;height:80px;right:10px;bottom:0}
.stay-content{padding-bottom:100px}
.mode-options label{border-radius:0;font-size:11px}
.structure-section{background:#ead8c9;border-top:1px solid var(--brand-sand)}
.amenities{gap:32px}
.amenities article{border-color:var(--brand-terracotta)}
.amenities h3{color:var(--ui-terracotta-strong);font-size:24px}
.photo-aside>img{width:84px}
.photo-aside p{font-family:var(--font-display);font-weight:300;color:var(--ui-terracotta-strong)}
.experiences-list li{padding:25px 0;color:var(--brand-blue);font-weight:300}
.location-section>img{width:120px}
.contact-section{background:var(--brand-blue);color:white;position:relative}
.contact-section .eyebrow,.contact-section .fine-print{color:white}
.contact-section .button{background:var(--brand-yellow);color:var(--ui-ink);border-color:var(--brand-yellow)}
.contact-section .button:hover{background:white;border-color:white}
.footer{border-bottom:8px solid var(--brand-yellow)}
@media(min-width:1600px){.hero{padding-inline:64px;gap:64px}.hero-image{height:740px}.hero{min-height:900px}}
@media(max-width:1199px){.hero{padding:40px 32px 24px;gap:32px;min-height:auto}.hero-image{height:620px}.hero h1{font-size:clamp(34px,4.7vw,60px)}.mobile-header{border-bottom:1px solid var(--brand-sand)}.mobile-brand{width:150px}.menu-trigger{border-radius:0}.section{padding:80px 32px}.hero-mark{width:52px;height:52px}}
@media(max-width:767px){.hero{grid-template-columns:1fr;padding:32px 24px 16px;gap:30px}.hero-copy{padding:0}.hero-mark{width:48px;height:48px;margin-bottom:24px}.hero h1{font-size:clamp(36px,8.5vw,56px);margin-top:20px}.hero-description{max-width:34ch}.hero-note{max-width:none;margin-top:28px}.hero-image{height:540px;margin-bottom:24px}.hero-image>img{object-position:center 65%}.hero-image figcaption{font-size:8px}.explore-link{padding-top:0}.section{padding:64px 24px}.section-heading{gap:18px;margin-bottom:32px}.stay-photo{height:420px}.stay-content{padding-bottom:100px}.section h2{font-size:34px}.amenities h3{font-size:23px}.photo-aside>img{width:54px}.photo-aside p{font-size:23px}.location-section>img{width:70px}.experiences-list li{font-size:22px}.contact-section h2{font-size:34px}.mobile-brand{width:140px}.footer{padding-inline:24px}}
@media(max-width:359px){.hero,.section{padding-inline:18px}.hero-image{height:460px}.hero-copy .eyebrow{font-size:7px}.hero h1{font-size:34px}.hero-image figcaption{gap:6px;font-size:7px}}

/* Instagram is a distinct destination in the primary navigation. */
:is(.sidebar-bottom,.mobile-menu) .social{
 display:flex;
 align-items:center;
 justify-content:flex-start;
 gap:9px;
 min-height:48px;
 padding:10px;
 border:1px solid var(--brand-blue);
 color:var(--brand-blue);
 font-size:12px;
 font-weight:600;
 background:#fff;
}
:is(.sidebar-bottom,.mobile-menu) .social>span[aria-hidden]{margin-left:auto}
:is(.sidebar-bottom,.mobile-menu) .social .instagram-icon{width:20px;height:20px;flex:none}
:is(.sidebar-bottom,.mobile-menu) .social:hover{background:var(--brand-blue);color:#fff}

/* Keep both destinations comfortably separated in the mobile menu. */
.mobile-menu .social{margin-top:16px;font-size:14px;padding:12px 16px}
