/* Comfortable reading sizes across both pages. */
.story-text>p:not(.eyebrow),.life-copy>p:not(.eyebrow),.detail-copy>section>p{font-size:16px}
.header nav,.header-book,.button,.booking-bar .button,.text-link,.section-heading>p,.villa-card>p,.life-item p,.footer-main h3,.footer-main>div>p,.footer-main>div>a:not(.phone),.detail-title p,.detail-tabs,.feature-strip span,.amenities>div,summary,details p,.detail-reservation>p,.detail-reservation label,.detail-reservation input,.detail-reservation select,.location-line p,.request-dialog .request-note{font-size:14px}
.eyebrow,.hero .eyebrow,.hero-bottom,.booking-intro .eyebrow,.booking-bar label,.image-caption,.year-stamp span,.story-facts span,.villa-meta,.image-label,.villa-bottom,.all-stays>span,.life-item>span,.footer-brand>span,.footer-bottom,.breadcrumbs,.detail-reservation .eyebrow,.reservation-foot,.gallery-controls,.gallery-open{font-size:12px}
.booking-bar input,.booking-bar select{font-size:14px}.eyebrow,.hero .eyebrow,.villa-meta{letter-spacing:1.4px}.booking-intro .eyebrow{letter-spacing:1px}.year-stamp span{font-size:12px}.year-stamp{width:170px;height:170px}.villa-meta{letter-spacing:1px}.villa-bottom{flex-wrap:wrap}.hero-bottom{letter-spacing:1px}.booking-bar{grid-template-columns:1.5fr 1fr 1fr .8fr 1fr}.booking-intro .eyebrow{font-size:12px}.header nav{gap:28px}.detail-reservation input{padding-inline:5px}
@media(max-width:1150px){.header nav{gap:17px}.header{gap:18px}.booking-bar{grid-template-columns:1.3fr 1fr 1fr .8fr 1fr}.booking-bar{gap:15px}.booking-bar label{padding-left:13px}.booking-bar .button{gap:12px}.year-stamp{width:150px;height:150px}.year-stamp span{font-size:11px}}
@media(max-width:850px){.booking-bar{grid-template-columns:1fr 1fr 1fr}.booking-bar label{padding-left:0}.header nav{font-size:16px;gap:22px}.story-facts{flex-wrap:wrap;gap:20px}.year-stamp{width:140px;height:140px}.villa-meta{flex-wrap:wrap;gap:5px}.detail-reservation form{grid-template-columns:1fr}.header-book{font-size:13px}}
@media(max-width:600px){.booking-bar{grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(39px,10.3vw,52px)}.header-book{font-size:12px}.hero .eyebrow{font-size:12px;letter-spacing:1px}.hero-bottom{font-size:11px;letter-spacing:.8px}.year-stamp{width:145px;height:145px}.story-facts span{font-size:12px}.villa-meta{font-size:12px}.detail-reservation form{grid-template-columns:1fr 1fr}.footer-bottom{flex-wrap:wrap;gap:12px}.breadcrumbs{flex-wrap:wrap}.brand{width:130px}.header-actions{gap:10px}.feature-strip{gap:18px}.feature-strip span{font-size:13px}.amenities>div{font-size:13px}.image-caption{font-size:11px;letter-spacing:1px}.detail-title h1{font-size:clamp(40px,11vw,49px)}}

/* Home footer */
footer{padding-top:0;background:#263126}.footer-intro{padding:58px 0 48px;display:flex;align-items:end;justify-content:space-between;gap:40px;border-bottom:1px solid #ffffff2b}.footer-intro .eyebrow{color:#bdc9b6;margin-bottom:14px}.footer-intro h2{font-size:clamp(34px,4vw,55px);margin:0;color:#f2f0e7}.footer-intro h2 em{color:#cbd8b7}.footer-intro .button{flex-shrink:0}.footer-main{grid-template-columns:1.35fr .8fr 1fr 1.2fr;padding:52px 0;gap:44px}.footer-brand p{max-width:275px;font-size:14px;line-height:1.8;margin:23px 0 13px}.footer-brand>span{font-size:11px}.footer-social{display:flex;gap:9px;margin-top:26px}.footer-social a{width:32px;height:32px;border:1px solid #778573;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:700;transition:background .2s,color .2s}.footer-social a:hover{background:#eef0e8;color:#263126}.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.footer-main h3{font-size:13px;text-transform:uppercase;letter-spacing:1.2px;color:#bfcbb8;margin:4px 0 11px}.footer-column a{font-size:14px;color:#edf0e8;display:flex;align-items:baseline;gap:8px}.footer-column a:hover,.footer-contact>a:not(.phone):hover{color:#d0dfb9}.footer-column a span{font-size:11px;color:#9ea99a}.footer-contact .phone{font-size:25px;line-height:1.2;margin:0 0 11px}.footer-contact>a:not(.phone){font-size:14px}.footer-contact p{font-size:14px;line-height:1.75;margin:20px 0 13px}.footer-map{font-size:13px!important}.footer-notes{border-top:1px solid #ffffff24;border-bottom:1px solid #ffffff24;display:grid;grid-template-columns:repeat(3,120px) 1fr;gap:24px;align-items:center;padding:24px 0}.footer-notes>div{display:flex;flex-direction:column;gap:2px}.footer-notes strong{font-family:var(--serif);font-size:25px;font-weight:400;color:#f0f2e9;line-height:1}.footer-notes span{font-size:11px;color:#aebaa9}.footer-notes p{font-size:12px;line-height:1.7;color:#b9c2b5;margin:0;justify-self:end;max-width:315px}.footer-bottom{padding-top:18px;padding-bottom:18px}.footer-bottom>div{display:flex;gap:23px}.footer-bottom>div a{font-size:11px}.footer-bottom>div a:hover{color:#fff}
@media(max-width:1050px){.footer-main{grid-template-columns:1.3fr 1fr 1fr}.footer-contact{grid-column:2 / -1}.footer-notes{grid-template-columns:repeat(3,1fr)}.footer-notes p{grid-column:1 / -1;justify-self:start;max-width:none}}
@media(max-width:700px){.footer-intro{padding:42px 0 35px;align-items:flex-start;flex-direction:column;gap:25px}.footer-intro h2{font-size:36px}.footer-main{grid-template-columns:1fr 1fr;gap:35px 25px;padding:42px 0}.footer-brand{grid-column:1 / -1}.footer-contact{grid-column:1 / -1;border-top:1px solid #ffffff24;padding-top:28px}.footer-notes{grid-template-columns:repeat(3,1fr);gap:12px;padding:20px 0}.footer-notes strong{font-size:22px}.footer-notes span{font-size:10px}.footer-notes p{font-size:12px}.footer-bottom{align-items:flex-start}.footer-bottom>div{gap:14px;flex-wrap:wrap}}
@media(max-width:420px){.footer-main{grid-template-columns:1fr}.footer-column{gap:11px}.footer-contact{grid-column:auto}.footer-notes{grid-template-columns:1fr 1fr}.footer-notes>div:last-of-type{grid-column:1 / -1}.footer-bottom>div{gap:12px}}
