:root{--cream:#f4f0e7;--paper:#fbfaf6;--ink:#201f1b;--olive:#6f7455;--sage:#d9dec9;--terra:#b66f4a;--line:rgba(32,31,27,.18);--max:1440px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.55}.site-header{height:78px;display:flex;align-items:center;gap:32px;padding:0 4vw;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(251,250,246,.94);backdrop-filter:blur(12px);z-index:20}.brand{font-size:.82rem;letter-spacing:.18em;font-weight:600;white-space:nowrap}.nav{display:flex;gap:26px;margin-left:auto}.nav a,.text-link{color:inherit;text-decoration:none}.nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.header-actions{display:flex;align-items:center;gap:18px}.lang-switcher{display:flex;gap:2px;border:1px solid var(--line);padding:3px;border-radius:999px}.lang{border:0;background:transparent;padding:6px 8px;border-radius:999px;font:inherit;font-size:.7rem;cursor:pointer}.lang.active{background:var(--ink);color:var(--paper)}.button{display:inline-block;background:var(--ink);color:#fff;padding:13px 18px;border-radius:2px;text-decoration:none;font-weight:600;font-size:.9rem}.button-small{padding:10px 14px;font-size:.78rem}.button.dark{background:var(--ink)}.button.light{background:var(--paper);color:var(--ink)}.hero{max-width:var(--max);margin:0 auto;min-height:690px;display:grid;grid-template-columns:1.05fr .95fr;gap:6vw;padding:70px 4vw 48px;align-items:center}.hero-copy{max-width:650px}.eyebrow{font-size:.72rem;font-weight:600;letter-spacing:.16em;margin:0 0 22px;text-transform:uppercase}h1,h2{font-family:"Libre Caslon Display",serif;font-weight:400;line-height:.98;margin:0}h1{font-size:clamp(4rem,7.2vw,8.3rem);letter-spacing:-.035em}h2{font-size:clamp(2.6rem,4.5vw,5.8rem);letter-spacing:-.025em}.hero-dek{font-size:1.25rem;max-width:580px;margin:28px 0 34px}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.photo-slot{background:var(--sage);display:flex;align-items:flex-end;justify-content:flex-start;min-height:300px;padding:18px;color:rgba(32,31,27,.62);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;border:1px solid rgba(32,31,27,.08)}.hero-photo{min-height:570px;background:linear-gradient(145deg,#d7dbc7,#b9c19e)}.quick-facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);max-width:var(--max);margin:0 auto}.quick-facts>div{padding:26px 2vw;border-right:1px solid var(--line)}.quick-facts>div:last-child{border-right:0}.quick-facts strong,.quick-facts span{display:block}.quick-facts strong{font-size:.67rem;letter-spacing:.14em;margin-bottom:9px}.quick-facts span{font-size:.92rem}.section{max-width:var(--max);margin:0 auto;padding:110px 4vw}.split{display:grid;grid-template-columns:1fr .8fr;gap:10vw}.copy-column{padding-top:42px}.copy-column p,.town-copy p,.house-copy p,.monthly-copy p{font-size:1.15rem}.gallery-grid{max-width:var(--max);margin:0 auto;padding:0 4vw 110px;display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:1fr 1fr;gap:16px}.gallery-grid .tall{grid-row:1/3;min-height:700px}.gallery-grid .photo-slot:nth-child(2){background:#e3d5c4}.gallery-grid .photo-slot:nth-child(3){background:#c9c2ad}.monthly-panel{background:var(--olive);color:#fff;max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:10vw;padding-left:max(4vw,calc((100vw - var(--max))/2 + 4vw));padding-right:max(4vw,calc((100vw - var(--max))/2 + 4vw))}.monthly-details{display:grid;grid-template-columns:1fr 1fr;align-self:end;border-top:1px solid rgba(255,255,255,.3)}.monthly-details div{padding:22px 16px;border-bottom:1px solid rgba(255,255,255,.2)}.note{opacity:.75;font-size:.96rem!important}.house-section{display:grid;grid-template-columns:1.1fr .9fr;gap:10vw}.amenities{display:flex;flex-wrap:wrap;gap:10px;align-content:start;padding-top:20px}.amenities span{border:1px solid var(--line);padding:10px 13px;border-radius:999px}.town-section{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.landscape{min-height:520px;background:#d6cbb2}.faq-section{display:grid;grid-template-columns:.65fr 1fr;gap:10vw;background:var(--cream);max-width:none;padding-left:max(4vw,calc((100vw - var(--max))/2 + 4vw));padding-right:max(4vw,calc((100vw - var(--max))/2 + 4vw))}.faq-list details{border-top:1px solid var(--line);padding:20px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:600}.contact-section{background:var(--ink);color:#fff;padding:110px 4vw;text-align:center}.contact-section h2{max-width:900px;margin:0 auto}.contact-section>p:not(.eyebrow):not(.micro){max-width:650px;margin:24px auto}.contact-actions{margin-top:34px}.micro{opacity:.6;font-size:.78rem;margin-top:20px}footer{padding:36px 4vw;display:grid;grid-template-columns:1fr auto auto;gap:30px;font-size:.78rem;border-top:1px solid var(--line)}@media(max-width:980px){.nav{display:none}.site-header{gap:12px}.header-actions{margin-left:auto}.hero,.split,.house-section,.town-section,.monthly-panel,.faq-section{grid-template-columns:1fr}.hero{padding-top:50px}.hero-photo{min-height:430px}.quick-facts{grid-template-columns:1fr 1fr}.quick-facts>div:nth-child(2){border-right:0}.gallery-grid{grid-template-columns:1fr}.gallery-grid .tall{grid-row:auto;min-height:500px}.gallery-grid .photo-slot{min-height:360px}.monthly-details{margin-top:28px}.copy-column{padding-top:0}footer{grid-template-columns:1fr}.button-small{display:none}}@media(max-width:600px){.site-header{height:64px;padding:0 18px}.brand{font-size:.7rem}.lang-switcher{gap:0}.lang{padding:5px 6px}.hero,.section{padding-left:20px;padding-right:20px}.hero{min-height:auto}.hero-photo{min-height:380px}.quick-facts{grid-template-columns:1fr}.quick-facts>div{border-right:0;border-bottom:1px solid var(--line);padding:20px}.gallery-grid{padding-left:20px;padding-right:20px}.monthly-panel,.faq-section{padding-left:20px;padding-right:20px}.monthly-details{grid-template-columns:1fr}.contact-section{padding-left:20px;padding-right:20px}h1{font-size:3.65rem}h2{font-size:3rem}}

/* Real property photography */
.site-photo{margin:0;position:relative;overflow:hidden;background:#d1c4ae;min-height:300px}.site-photo img{display:block;width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.site-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:36px 20px 16px;background:linear-gradient(transparent,rgba(0,0,0,.55));color:white;font-size:.73rem;letter-spacing:.12em;text-transform:uppercase}.hero-photo{min-height:570px}.gallery-grid .tall{grid-row:1/3;min-height:700px}.facilities-gallery{max-width:1440px;margin:0 auto;padding:0 4vw 110px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.facilities-gallery .site-photo{min-height:320px}.landscape{min-height:520px}.site-photo img{transition:transform .7s ease}.site-photo:hover img{transform:scale(1.025)}@media(max-width:980px){.facilities-gallery{grid-template-columns:1fr 1fr}.facilities-gallery .site-photo:last-child{grid-column:1/-1}}@media(max-width:600px){.hero-photo{min-height:410px}.facilities-gallery{padding:0 20px 70px;grid-template-columns:1fr}.facilities-gallery .site-photo{min-height:250px}.facilities-gallery .site-photo:last-child{grid-column:auto}}

/* Direct booking */
.booking-section{background:#f4efe7;text-align:center;scroll-margin-top:95px;padding:80px min(7vw,110px)}
.booking-section h2{margin:10px auto 14px;max-width:700px}
.booking-intro{max-width:670px;margin:0 auto 30px;line-height:1.7}
.booking-widget{margin:0 auto;max-width:1000px;min-height:160px;text-align:left}
.booking-monthly{margin-top:25px;font-size:0.95rem}
.booking-monthly a{color:inherit;text-decoration:underline;text-underline-offset:4px}


/* Immersive full-bleed photographic first impression */
.hero{position:relative;isolation:isolate;display:flex;align-items:flex-end;max-width:none;width:100%;height:min(850px,calc(100svh - 78px));min-height:650px;margin:0;padding:100px max(5vw,calc((100vw - 1440px)/2 + 5vw)) 92px;color:#fff;overflow:hidden}
.hero-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;z-index:-2}
.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(12,22,18,.70) 0%,rgba(12,22,18,.42) 42%,rgba(12,22,18,.08) 100%),linear-gradient(0deg,rgba(10,20,15,.56),transparent 60%)}
.hero-copy{max-width:790px;position:relative}
.hero h1{font-size:clamp(4.4rem,8.5vw,9rem);line-height:.88;max-width:780px;text-wrap:balance;text-shadow:0 1px 15px rgba(0,0,0,.12)}
.hero .eyebrow{color:#fff;margin-bottom:25px}
.hero-dek{max-width:600px;font-size:clamp(1.06rem,1.65vw,1.3rem);line-height:1.5;margin:29px 0 28px}
.hero-primary{background:#f7f1e8;color:#24221c;padding:15px 25px}
.hero-primary:hover{background:#fff}
.hero-secondary{font-weight:600;color:#fff;text-decoration:underline;text-underline-offset:6px}
.hero-caption{position:absolute;right:5vw;bottom:23px;letter-spacing:.14em;font-size:.65rem;opacity:.9}
@media(max-width:980px){.hero{height:calc(88svh - 72px);min-height:620px;padding:70px 5vw 90px;display:flex}.hero h1{font-size:clamp(4.2rem,10vw,7rem)}.hero-background{object-position:57% center}}
@media(max-width:600px){.hero{height:calc(100svh - 64px);min-height:610px;max-height:860px;padding:70px 22px 74px;align-items:flex-end}.hero h1{font-size:clamp(3.85rem,16vw,5.75rem)}.hero-background{object-position:59% center}.hero-shade{background:linear-gradient(0deg,rgba(7,18,14,.83) 0%,rgba(7,18,14,.55) 48%,rgba(7,18,14,.10) 100%)}.hero-dek{font-size:1.02rem;line-height:1.48;margin:22px 0 24px}.hero-actions{gap:18px;align-items:flex-start;flex-direction:column}.hero-caption{font-size:.56rem;bottom:18px;right:22px;left:22px;text-align:right}.hero .eyebrow{font-size:.64rem;margin-bottom:17px}}
@media(prefers-reduced-motion:reduce){.site-photo img{transition:none}}

.explore-section{padding-top:110px;padding-bottom:115px}.explore-section h2{max-width:850px}.explore-intro{max-width:780px;font-size:1.16rem;margin:24px 0 42px}.attractions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.attraction-card{background:#f3f0e7;padding:30px;min-height:245px;display:flex;flex-direction:column}.attraction-card h3{font-family:"Libre Caslon Display",serif;font-weight:400;font-size:2rem;line-height:1.07;margin:0 0 14px}.attraction-card p{margin:0 0 20px}.attraction-card a{margin-top:auto;color:inherit;font-weight:600;text-underline-offset:4px}@media(max-width:930px){.attractions-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.attractions-grid{grid-template-columns:1fr}.attraction-card{min-height:0}}

/* Always-available, accessible guest contact */
.wa-float{position:fixed;z-index:1001;bottom:22px;right:22px;display:flex;align-items:center;gap:10px;border-radius:999px;background:#256a4b;color:#fff;padding:13px 19px;text-decoration:none;box-shadow:0 8px 28px rgba(18,42,33,.29);font-family:inherit;font-size:14px;font-weight:650;transition:transform .2s,box-shadow .2s}
.wa-float:hover,.wa-float:focus-visible{transform:translateY(-3px);box-shadow:0 12px 32px rgba(18,42,33,.36);color:#fff}
.wa-float svg{flex:none}
.wa-inquiry{margin-top:18px}.wa-inquiry a{display:inline-flex;gap:8px;align-items:center;color:inherit;text-decoration:underline;text-underline-offset:4px;font-weight:600}
@media(max-width:600px){.wa-float{right:14px;bottom:14px;padding:13px;min-width:52px;min-height:52px;justify-content:center}.wa-float .wa-label{display:none}}

/* Location and authentic Google review summary */
.location-reviews{background:#eae5d9;padding:90px max(4vw,calc((100vw - 1440px)/2 + 4vw));scroll-margin-top:85px}.location-reviews-inner{display:grid;grid-template-columns:.82fr 1.18fr;gap:6vw;align-items:center;max-width:1440px;margin:auto}.location-copy h2{font-size:clamp(2.9rem,4.4vw,5.5rem)}.location-description{font-size:1.1rem;max-width:480px;margin:22px 0}.location-copy address{font-style:normal;line-height:1.7}.google-rating{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:32px}.review-stars{color:#ad7844;letter-spacing:.1em;font-size:1.05rem}.google-rating strong{font-size:1.3rem}.google-rating strong span{font-size:.85rem;font-weight:400}.review-count{font-size:.85rem}.location-links{display:flex;gap:24px;flex-wrap:wrap;margin-top:20px}.location-links a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:5px}.rating-note{font-size:.72rem;opacity:.65;margin-top:22px}.location-map{min-height:420px;background:#d5d1c6;overflow:hidden}.location-map iframe{width:100%;height:480px;border:0;display:block}@media(max-width:850px){.location-reviews-inner{grid-template-columns:1fr}.location-map iframe{height:370px}}@media(max-width:600px){.location-reviews{padding:70px 20px}.location-map iframe{height:320px}}

/* Short-stay home / dedicated co-living site */
.coliving-fact{color:inherit;text-decoration:none;font-weight:700;display:block;padding:0.8rem 0}.coliving-teaser{margin:0 auto;padding:3rem max(5vw,24px);background:#f0eadf;display:flex;align-items:center;justify-content:space-between;gap:2rem}.coliving-teaser h2{margin:.5rem 0;font-family:Libre Caslon Display,serif;font-size:clamp(1.8rem,3vw,3.3rem)}
.coliving-hero{min-height:78vh;position:relative;display:flex;align-items:flex-end;color:white;overflow:hidden}.coliving-hero>img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover}.coliving-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.7),rgba(0,0,0,.06) 75%)}.coliving-hero-copy{position:relative;z-index:1;padding:6rem max(6vw,24px);max-width:900px}.coliving-hero-copy h1{font-family:Libre Caslon Display,serif;font-size:clamp(3rem,7vw,7rem);line-height:1}.coliving-hero-copy p:not(.eyebrow){font-size:clamp(1rem,2vw,1.35rem);max-width:680px;line-height:1.6}.coliving-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:2rem}.coliving-photo-grid figure{padding:0;margin:0}.coliving-photo-grid img{width:100%;height:270px;object-fit:cover;display:block}.coliving-photo-grid figcaption{font-size:.85rem;padding:.7rem 0;color:#59584f}.monthly-details ul{list-style:none;padding:0;margin:0}.monthly-details li{padding:1rem 0;border-bottom:1px solid rgba(0,0,0,.13)}@media(max-width:720px){.coliving-teaser{display:block}.coliving-teaser .button{margin-top:1rem}.coliving-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.coliving-photo-grid img{height:185px}.coliving-hero{min-height:75vh}.coliving-hero-copy{padding:5rem 20px 2.5rem}}

/* Guest reviews */
.guest-quote-section{padding:80px max(5vw,24px);background:#f7f4ee}.guest-quote-heading{max-width:1300px;margin:0 auto 28px}.guest-quote-heading h2{font-family:"Libre Caslon Display",serif;font-size:clamp(2rem,4vw,4.5rem)}.guest-quote-grid{max-width:1300px;margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.guest-quote{margin:0;border:1px solid rgba(50,45,35,.14);background:white;padding:28px;display:flex;flex-direction:column;justify-content:space-between;min-height:195px}.guest-quote p{font-family:"Libre Caslon Display",serif;font-size:clamp(1.2rem,1.7vw,1.65rem);line-height:1.4}.guest-quote footer{padding:18px 0 0;border:0;display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:.78rem}.guest-quote-more{display:block;max-width:1300px;margin:25px auto 0;text-decoration:underline;color:inherit;font-weight:600}@media(max-width:780px){.guest-quote-grid{grid-template-columns:1fr}.guest-quote-section{padding:60px 20px}}

/* Casa Branca identity */
.site-header .brand{display:flex;align-items:center;flex-shrink:0}.header-logo{width:140px;height:61px;object-fit:contain;display:block}.footer-logo{width:220px;max-width:100%;height:auto;display:block}.footer-brand{display:flex;align-items:center}.site-header .brand img{mix-blend-mode:multiply}@media(max-width:600px){.header-logo{width:104px;height:50px}.footer-logo{width:180px}}

/* Santa Comba Dão travel guide */
.guide-hero{height:75vh;min-height:520px;position:relative;display:flex;align-items:end;color:white;overflow:hidden}.guide-hero>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.guide-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.68),transparent 85%)}.guide-hero-content{position:relative;z-index:1;padding:6vw;max-width:990px}.guide-hero h1{font-family:"Libre Caslon Display",serif;font-size:clamp(3.2rem,7vw,7rem);line-height:1}.guide-hero p:not(.eyebrow){font-size:clamp(1.05rem,1.8vw,1.35rem);line-height:1.55;max-width:780px}.guide-intro{max-width:1050px}.guide-intro>p:last-child{max-width:750px;font-size:1.15rem;line-height:1.7}.guide-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.guide-card{padding:32px;background:#f1ece2;display:flex;flex-direction:column}.guide-card h3{font-family:"Libre Caslon Display",serif;font-size:2rem;line-height:1.08}.guide-card p{line-height:1.65;flex:1}.guide-card a{font-weight:600;color:inherit;text-decoration:underline;text-underline-offset:4px}.guide-tips{background:#e8e5d9}.guide-tips ul{line-height:1.8;max-width:760px}.guide-book{background:#263e32;color:white;padding:75px 6vw;text-align:center}.guide-book h2{font-family:"Libre Caslon Display",serif;font-size:clamp(2rem,5vw,5rem)}.guide-book p{max-width:690px;margin:20px auto 32px;line-height:1.65}.lang-switcher a.lang{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}@media(max-width:900px){.guide-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.guide-cards{grid-template-columns:1fr}.guide-card{padding:26px}.guide-hero{height:76vh}.guide-hero-content{padding:24px}.guide-hero h1{font-size:3.4rem}}

/* Short stay accommodation categories */
.room-options{background:#fbf8f1}.room-options-intro{max-width:840px;margin-bottom:34px}.room-options-intro h2{font-family:"Libre Caslon Display",serif;font-size:clamp(2.5rem,5vw,5.5rem)}.room-options-intro>p:last-child{max-width:680px;line-height:1.7}.room-options-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.room-option{background:white;border:1px solid rgba(40,40,35,.13);overflow:hidden;display:flex;flex-direction:column}.room-option>img{display:block;width:100%;height:250px;object-fit:cover}.room-option-photo-free{height:250px;display:flex;align-items:center;justify-content:center;background:#e1dfd5;color:#777066;letter-spacing:.15em;font-size:.7rem}.room-option-text{padding:25px;flex:1;display:flex;flex-direction:column}.room-option h3{font-family:"Libre Caslon Display",serif;font-size:1.75rem;line-height:1.16;margin:0 0 10px}.room-option p{line-height:1.6;flex:1;margin-bottom:22px}.room-option a{align-self:start}@media(max-width:900px){.room-options-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:580px){.room-options-grid{grid-template-columns:1fr}.room-option>img,.room-option-photo-free{height:230px}}

/* Getting here guide */
.arrival-hero{padding:120px max(5vw,24px) 60px;background:#eae6dc;display:grid;grid-template-columns:1.1fr .9fr;gap:6vw;align-items:center}.arrival-hero h1{font-family:"Libre Caslon Display",serif;font-size:clamp(3rem,6vw,6.5rem);line-height:1.04}.arrival-hero p:not(.eyebrow){line-height:1.75;max-width:650px;font-size:1.12rem}.arrival-hero img{width:100%;height:420px;object-fit:cover}.arrival-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.arrival-card{background:#f4f0e7;padding:38px}.arrival-card h2,.arrival-address h2,.arrival-experiences h2{font-family:"Libre Caslon Display",serif;font-size:clamp(2rem,3vw,3rem)}.arrival-card p,.arrival-address p,.arrival-experiences p{line-height:1.75}.arrival-card a{font-weight:600;color:inherit;text-decoration:underline}.arrival-address{display:grid;grid-template-columns:.85fr 1.15fr;gap:5vw;align-items:center;background:#eae6dc}.arrival-address address{font-style:normal;line-height:1.7;font-weight:600;margin:20px 0}.arrival-address iframe{width:100%;height:440px;border:0}.arrival-experiences-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.arrival-experiences article{padding:35px;border:1px solid rgba(30,30,30,.15)}@media(max-width:720px){.arrival-hero,.arrival-grid,.arrival-address,.arrival-experiences-grid{grid-template-columns:1fr}.arrival-hero{padding:100px 20px 50px}.arrival-hero img{height:260px}.arrival-card{padding:28px}}

/* Mobile conversion / navigation audit fixes */
.mobile-nav,.mobile-book{display:none}#booking,.booking-section{scroll-margin-top:90px}.booking-widget{width:100%;max-width:100%;min-width:0;overflow:visible}.booking-widget iframe{max-width:100%;min-width:0}.booking-widget input,.booking-widget select,.booking-widget button{max-width:100%}@media(max-width:980px){.site-header{position:sticky;z-index:110}.mobile-nav{display:block;position:relative;order:2}.mobile-nav>summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;min-height:44px;padding:8px;font-size:.82rem;font-weight:600}.mobile-nav>summary::-webkit-details-marker{display:none}.mobile-nav nav{position:absolute;top:calc(100% + 7px);right:0;width:min(310px,calc(100vw - 28px));max-height:calc(100dvh - 90px);overflow:auto;background:#fbfaf6;color:#201f1b;padding:12px;display:flex;flex-direction:column;box-shadow:0 14px 40px rgba(0,0,0,.18);border:1px solid rgba(0,0,0,.12)}.mobile-nav nav a{display:block;text-decoration:none;color:inherit;padding:11px 10px;border-bottom:1px solid rgba(0,0,0,.09);font-size:.88rem}.mobile-nav nav a:last-child{border:0}.mobile-book{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;min-height:42px;padding:10px 12px;font-size:.74rem}.header-actions{gap:8px;margin-left:auto}.site-header{gap:8px}.lang-switcher{flex-shrink:0}}@media(max-width:620px){.site-header{height:70px;padding:0 10px}.header-logo{width:86px;height:42px}.lang{padding:8px 5px;min-width:25px}.lang-switcher{padding:2px}.mobile-nav>summary{font-size:0;gap:0}.mobile-nav>summary span{font-size:21px}.mobile-book{font-size:.67rem;padding:9px 9px;min-height:41px}.header-actions{gap:4px}.hero{height:auto;min-height:calc(100svh - 70px);max-height:none;padding:100px 20px 65px}.hero h1{font-size:clamp(2.8rem,12vw,4.7rem);line-height:.98;overflow-wrap:break-word}.hero-dek{font-size:1rem}.hero-caption{display:none}.booking-section{padding:55px 18px}.booking-section h2{font-size:clamp(2.3rem,9vw,3.25rem)}.booking-widget{min-height:230px}.coliving-hero-copy h1,.guide-hero h1{overflow-wrap:break-word}body{overflow-x:clip}}@media(max-width:380px){.header-logo{width:70px}.mobile-book{font-size:.61rem;padding:8px 7px}.lang{font-size:.62rem;padding:7px 3px;min-width:23px}.mobile-nav>summary{padding:6px}}

/* Retreats and private buyouts */
.retreats-hero{position:relative;min-height:82vh;display:flex;align-items:end;color:white;padding:7vw;isolation:isolate}.retreats-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.retreats-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(0,0,0,.75),transparent 90%)}.retreats-hero-text{max-width:850px}.retreats-hero h1{font-size:clamp(3.2rem,7.5vw,8rem)}.retreats-hero-text>p:not(.eyebrow){font-size:1.25rem;line-height:1.5;max-width:650px}.retreats-intro{display:grid;grid-template-columns:1fr .7fr;gap:6vw;align-items:end}.retreats-intro>p{font-size:1.25rem;line-height:1.7}.retreats-features{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.retreats-images{display:grid;grid-template-columns:1fr 1fr;gap:12px}.retreats-images img{width:100%;height:225px;object-fit:cover}.retreats-images img:first-child{grid-column:1/-1;height:330px}.retreats-feature-copy>p{font-size:1.1rem;line-height:1.7}.retreats-feature-copy ul{padding-left:20px;line-height:2}.retreats-dao{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center;background:#eee8dd}.retreats-dao p{font-size:1.1rem;line-height:1.7}.retreats-dao img{width:100%;height:400px;object-fit:cover}.retreats-inquiry{padding:90px 6vw;text-align:center;background:#263e32;color:white}.retreats-inquiry h2{max-width:900px;margin:auto}.retreats-inquiry p:not(.eyebrow){max-width:670px;margin:25px auto;line-height:1.7}@media(max-width:750px){.retreats-hero{padding:110px 22px 45px;min-height:76vh}.retreats-hero h1{font-size:clamp(3rem,12vw,5rem)}.retreats-intro,.retreats-features,.retreats-dao{grid-template-columns:1fr}.retreats-images img{height:160px}.retreats-images img:first-child{height:240px}.retreats-dao img{height:260px}.retreats-inquiry{padding:65px 20px}}

/* Casa Branca Journal */
.journal-hero{padding:110px 6vw 95px;background:#eae6dc}.journal-hero h1{font-size:clamp(3.5rem,8vw,8.5rem);max-width:1050px}.journal-hero>p:last-child{max-width:650px;font-size:1.23rem;line-height:1.7}.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.journal-card{color:inherit;text-decoration:none;background:#f4f0e7;display:flex;flex-direction:column}.journal-card img{width:100%;height:265px;object-fit:cover}.journal-card>div{padding:27px;flex:1}.journal-card small{text-transform:uppercase;letter-spacing:.12em;font-size:.7rem}.journal-card h2{font-size:2.1rem;line-height:1.07;margin:12px 0}.journal-card p{line-height:1.65}.journal-card span,.journal-textlink{font-weight:600;text-decoration:underline;color:inherit}.journal-bottom{text-align:center;padding:90px 5vw;background:#273e32;color:#fff}.journal-bottom p{margin:22px 0 32px}.journal-textlink{display:inline-block;margin:20px}.journal-article-head{padding:100px max(6vw,22px) 65px;max-width:1050px;margin:auto}.journal-article-head>a{display:block;margin-bottom:45px;color:inherit}.journal-article-head h1{font-size:clamp(3.2rem,7vw,7.7rem)}.journal-article-head>p:last-child{font-size:1.3rem;line-height:1.6;max-width:780px}.journal-article-image{display:block;width:100%;height:min(65vw,650px);object-fit:cover}.journal-body{max-width:800px;margin:auto;padding:70px 24px 120px}.journal-body section{margin-bottom:55px}.journal-body h2{font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.13}.journal-body p{font-size:1.15rem;line-height:1.86}.journal-body aside{background:#f0eadf;padding:38px;margin:70px 0}.journal-body aside a{margin-right:15px;color:inherit}@media(max-width:900px){.journal-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.journal-hero{padding:95px 22px 55px}.journal-grid{grid-template-columns:1fr}.journal-article-head{padding:80px 22px 40px}.journal-article-image{height:310px}.journal-body{padding-top:45px}.journal-body aside{padding:25px}}
