:root{--pine:#25473c;--ink:#1e2925;--muted:#66726c;--stone:#eeefeb;--line:#d8ddd7;--blue:#587f84;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:#fff;font:14px/1.7 Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #729995;outline-offset:5px}img{display:block;max-width:100%;width:100%;object-fit:cover}svg{width:21px;height:21px;flex-shrink:0;vertical-align:middle}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;line-height:1.08;letter-spacing:-.035em}h2{font-size:clamp(38px,4vw,58px)}h3{font-size:31px}p{max-width:66ch}p+p{margin-top:16px}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.section{padding-block:88px}.stone{background:var(--stone)}.section-kicker{font-size:13px;color:var(--muted);margin-bottom:18px}.small{font-size:12px}.muted{color:var(--muted);margin-top:22px}.button{display:inline-flex;justify-content:center;align-items:center;gap:24px;border:1px solid var(--pine);background:var(--pine);color:white;padding:15px 23px;min-height:53px;line-height:1.3;font-size:13px;font-weight:600;transition:background .2s}.button:hover{background:#3a5e50}.button.light{background:#fff;color:var(--pine);border-color:white}.button.light:hover{background:#e7ede8}.text-link{display:inline-flex;align-items:center;gap:25px;border:0;border-bottom:1px solid var(--line);background:none;padding:8px 0;font-size:13px;font-weight:600}.text-link:hover{color:var(--blue)}.topbar{height:34px;background:var(--pine);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 56px;font-size:10px;letter-spacing:.03em}.topbar span,.topbar a{display:flex;align-items:center;gap:6px}.topbar svg{width:13px;height:13px}.header{height:106px;padding:0 56px;display:flex;justify-content:space-between;align-items:center;background:white;position:relative;z-index:3}.brand{display:flex;flex-direction:column;align-items:center;line-height:1;width:max-content;color:var(--pine)}.brand-top{font-family:'Cormorant Garamond',Georgia,serif;font-size:19px;font-style:italic;margin-bottom:1px}.brand-name{font-family:'Cormorant Garamond',Georgia,serif;font-size:32px;letter-spacing:-1.4px}.brand-bottom{font-size:8px;letter-spacing:4px;margin-top:6px}.header nav{display:flex;align-items:center;gap:27px;font-size:11px;font-weight:500}.header nav>a:not(.nav-book){padding-block:13px}.header nav>a[aria-current]{border-bottom:1px solid var(--pine)}.nav-book{display:flex;align-items:center;gap:15px;background:var(--pine);color:white;padding:13px 18px;margin-left:12px}.nav-book svg{width:16px}.menu-toggle{display:none}.home-hero{position:relative;min-height:620px;height:calc(100svh - 140px);max-height:830px;isolation:isolate;overflow:hidden;background:var(--pine);color:white}.hero-photo{position:absolute;inset:0;height:100%;object-position:50% 43%;z-index:-2}.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(14,39,31,.74),rgba(14,39,31,.2) 70%),linear-gradient(0deg,rgba(14,39,31,.5),transparent 55%)}.home-hero-content{padding:105px 8.7% 100px}.location{display:flex;align-items:center;gap:7px;font-size:12px;margin-bottom:26px}.location svg{width:17px}.home-hero h1{font-size:clamp(52px,6.3vw,93px);max-width:850px;line-height:.98}.home-hero p{font-size:15px;font-weight:400;margin-block:26px 30px;color:#edf1ed;line-height:1.9}.home-hero .button{font-size:12px}.film-link{position:absolute;right:7%;bottom:95px;display:flex;align-items:center;gap:16px;background:none;border:0;color:white;text-align:left}.film-link>svg{border:1px solid #ffffff8a;padding:15px;width:60px;height:60px;border-radius:50%}.film-link span{font-size:13px}.film-link small{display:block;font-size:10px;opacity:.75;margin-top:4px}.hero-bottom{position:absolute;left:8.7%;right:7%;bottom:26px;display:flex;justify-content:space-between;font-size:10px;color:#e4eae4}.booking-wrap{position:relative;margin-top:0}.booking-form{background:white;padding:28px 30px;border:1px solid var(--line);scroll-margin-top:30px}.booking-wrap .booking-form{margin-top:-1px;border-top:0}.booking-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.booking-heading strong{font-size:15px;font-weight:600}.booking-heading span{font-size:11px;color:var(--muted)}.booking-fields{display:grid;grid-template-columns:1.25fr 1fr 1fr 1.2fr;gap:20px;align-items:end}.booking-fields label{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:500}.booking-fields select,.booking-fields input{width:100%;min-width:0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:white;color:var(--ink);height:40px;font-size:13px;padding:5px 2px}.booking-fields button{font-size:12px;padding-inline:16px;gap:16px}.form-note{font-size:10px;color:var(--muted);margin-top:14px;max-width:none}.form-error:empty{display:none}.form-error{color:#a32c27;font-size:13px;margin-top:14px}.intro{padding-block:96px 76px}.intro-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:100px;align-items:start}.intro-grid p{font-size:14px;color:var(--muted)}.intro-grid .text-link{margin-top:18px}.amenity-strip{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:33px;margin-top:50px}.amenity-strip span{display:flex;align-items:center;gap:13px;font-size:12px;color:var(--pine)}.amenity-strip svg{width:25px;height:25px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:35px}.section-heading p:not(.section-kicker){color:var(--muted);font-size:13px}.villa-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.villa-photo{height:410px;display:block;position:relative;overflow:hidden}.villa-photo img{height:100%;object-position:50% 40%;transition:transform .5s}.villa-photo:hover img{transform:scale(1.035)}.villa-photo>span:first-of-type{position:absolute;left:22px;top:22px;background:white;padding:8px 15px;font-size:12px}.photo-arrow{position:absolute;bottom:20px;right:20px;border-radius:50%;background:white;width:42px;height:42px;display:grid;place-items:center}.villa-info{display:grid;grid-template-columns:1fr auto;gap:3px 15px;margin-top:20px}.villa-info h3{font-size:34px}.villa-info p{grid-column:1;color:var(--muted);font-size:12px}.villa-info a{grid-column:2;grid-row:1/3;align-self:center;display:flex;gap:20px;align-items:center;font-size:12px}.split{display:grid;grid-template-columns:1.05fr 1fr;gap:100px;align-items:center;padding-block:96px}.split-photo{height:540px}.split-photo img{height:100%;object-position:50% 45%}.split-copy p:not(.section-kicker){color:var(--muted);margin:27px 0}.split-copy .text-link{margin-top:0}.reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:45px}.reasons article>svg{width:34px;height:34px;color:var(--pine);margin-bottom:24px}.reasons h3{font-size:30px;margin-bottom:16px}.reasons p{color:var(--muted);font-size:13px}.price-band{background:var(--pine);color:white;padding-block:55px}.price-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:35px}.price-band p{font-size:12px;margin-bottom:12px;color:#c8d7ce}.price-band h2{font-size:42px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:22px 0}.faq-list summary{list-style:none;display:flex;justify-content:space-between;gap:20px;font-size:15px;font-weight:500;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:20px;font-weight:400}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{color:var(--muted);font-size:13px;max-width:80ch;margin-top:15px}.closing{background:var(--stone);padding:75px 30px;text-align:center}.closing p{font-size:12px;color:var(--muted);margin:0 auto 18px}.closing h2{font-size:54px}.closing .button{margin-top:27px;background:var(--pine);color:white;border-color:var(--pine)}footer{padding:65px 56px 25px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1.25fr;gap:40px;font-size:12px}footer .brand{margin-bottom:22px}footer p{font-size:11px;color:var(--muted)}footer h3{font:600 12px Manrope,Arial,sans-serif;letter-spacing:0;margin:0 0 19px}footer>div>a:not(.brand){display:block;margin-bottom:10px;color:var(--muted)}footer .footer-phone{font-size:19px;font-weight:500;color:var(--pine)!important}footer svg{width:16px;margin-right:3px}.copyright{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:23px;color:var(--muted);font-size:10px}.floating{position:fixed;right:22px;bottom:22px;z-index:10;display:flex;gap:8px}.floating a{width:47px;height:47px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fff;border:1px solid var(--line);box-shadow:0 4px 20px #0001}.floating .whatsapp{width:auto;border-radius:28px;padding:0 19px;gap:8px;background:var(--pine);color:white;border-color:var(--pine)}.floating span{font-size:11px}.page-hero{height:490px;position:relative;color:white;isolation:isolate;background:var(--pine)}.page-hero>img{height:100%;position:absolute;inset:0;z-index:-2;object-position:50% 38%}.page-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#14352ce0,#14352c36);z-index:-1}.page-hero-content{padding:55px 8.7%}.crumb{font-size:11px;color:#d4dfd8;display:inline-block;margin-bottom:33px}.page-hero h1{font-size:clamp(48px,5.5vw,76px)}.page-hero p{font-size:14px;color:#e7eee9;margin-top:22px}.page-hero.compact{height:390px}.page-hero.compact h1{font-size:58px}.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.price-card{background:var(--stone);padding:38px}.price-card h2{font-size:40px}.price-card>p{font-size:12px;color:var(--muted);margin-top:10px;margin-bottom:28px}.price-row{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #d0d8cf;padding:23px 0;align-items:center}.price-row span{font-size:15px}.price-row small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.price-row strong{font:500 29px 'Cormorant Garamond',Georgia,serif}.price-card .button{width:100%;margin-top:8px}.price-note{color:var(--muted);font-size:12px;margin-top:25px;max-width:90ch}.detail-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:100px;align-items:start}.detail-layout>div>p:not(.section-kicker){margin-top:25px;color:var(--muted)}.detail-features{display:flex;flex-direction:column;gap:20px;margin-top:30px;color:var(--pine);font-size:13px}.detail-features svg{margin-right:8px}.detail-layout .text-link{margin-top:22px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.gallery-item{padding:0;border:0;background:var(--stone);position:relative;text-align:left;overflow:hidden}.gallery-item img{height:370px;transition:transform .3s}.gallery-item:hover img{transform:scale(1.035)}.gallery-item span{position:absolute;left:0;right:0;bottom:0;padding:35px 20px 16px;color:white;background:linear-gradient(transparent,#10261dcc);font-size:12px;display:flex;justify-content:space-between}.gallery-grid .gallery-item:nth-child(4){grid-column:span 2}.contact-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.contact-phone{display:block;font:500 36px 'Cormorant Garamond',Georgia,serif;color:var(--pine);margin-top:30px}.contact-links{display:flex;flex-direction:column;gap:14px;margin-top:25px;font-size:13px}.contact-links svg{margin-right:8px}.contact-layout .booking-form{align-self:start;padding:35px;background:var(--stone);border:0}.contact-layout .booking-heading{display:block}.contact-layout .booking-heading strong{display:block;font:500 34px 'Cormorant Garamond',Georgia,serif;margin-bottom:12px}.contact-layout .booking-fields{grid-template-columns:1fr 1fr}.contact-layout .booking-fields label:first-child{grid-column:1/-1}.contact-layout .booking-fields button{grid-column:1/-1;margin-top:10px}.contact-layout input,.contact-layout select{background:transparent}.narrow{max-width:900px}.help-box{margin-top:50px;padding:40px;background:var(--stone)}.help-box h2{font-size:34px}.help-box p{margin-block:15px 20px}.skip-link{position:fixed;top:-100px;z-index:100;background:white;padding:15px}.skip-link:focus{top:5px}dialog{border:0;padding:22px;background:white;width:min(680px,calc(100% - 32px));max-height:92svh;overflow:auto}dialog::backdrop{background:#10231de6}dialog figure{margin:0}dialog img{max-height:78svh;width:auto;max-width:100%;margin:auto;object-fit:contain}dialog figcaption{font-size:12px;text-align:center;margin-top:10px}.dialog-close{position:absolute;right:8px;top:8px;width:38px;height:38px;background:white;color:var(--ink);border:0;border-radius:50%;font-size:28px;z-index:1}.film-dialog{width:min(550px,calc(100% - 24px));background:var(--pine);color:white;padding:0}.film-dialog video{display:block;width:100%;max-height:80svh}.film-dialog p{padding:12px 18px;font-size:12px}@media(min-width:1500px){.hero-photo{object-position:50% 46%}}@media(max-width:1100px){.header{padding-inline:30px}.header nav{gap:17px}.header .brand-name{font-size:28px}.nav-book{margin-left:0}.wrap{width:calc(100% - 70px)}.intro-grid,.split,.detail-layout{gap:50px}.topbar{padding-inline:30px}.home-hero-content{padding-left:6%}.hero-bottom{left:6%}.villa-photo{height:350px}.booking-fields{gap:14px}footer{padding-inline:35px;gap:25px}.contact-layout{gap:40px}}
@media(max-width:850px){.topbar{padding-inline:22px}.topbar>span:nth-child(2){display:none}.header{height:88px;padding-inline:22px}.brand-name{font-size:29px}.brand-top{font-size:17px}.brand-bottom{font-size:7px}.menu-toggle{display:flex;flex-direction:column;gap:6px;border:0;background:var(--pine);padding:15px;color:white;width:46px;height:42px}.menu-toggle span{display:block;background:currentColor;width:16px;height:1px}.header nav{display:none;position:absolute;top:88px;left:0;right:0;background:white;padding:25px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 10px 14px #0001;font-size:14px}.header nav.open{display:flex}.nav-book{margin-top:15px;justify-content:space-between}.wrap{width:calc(100% - 44px)}.home-hero{height:670px;min-height:0}.home-hero-content{padding:90px 35px}.home-hero h1{font-size:67px}.film-link{bottom:80px;right:30px}.film-link>svg{width:45px;height:45px;padding:11px}.home-hero p{font-size:14px}.hero-bottom{left:35px;right:30px}.booking-fields{grid-template-columns:1fr 1fr;gap:18px}.booking-heading{gap:15px}.booking-heading span{display:none}.intro-grid{gap:35px}.intro-grid h2{font-size:41px}.amenity-strip{flex-wrap:wrap;gap:25px}.amenity-strip>span{width:44%}.section{padding-block:65px}.intro{padding-block:65px}.split{gap:40px;padding-block:65px}.split-photo{height:440px}.split-copy h2{font-size:42px}.reasons{gap:25px}.reasons h3{font-size:27px}.villa-grid{gap:22px}.villa-photo{height:340px}.villa-info{display:block}.villa-info a{margin-top:14px}.price-band h2{font-size:36px}footer{grid-template-columns:1fr 1fr;gap:35px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid .gallery-item:nth-child(4){grid-column:auto}.contact-layout{grid-template-columns:1fr;gap:45px}.detail-layout{gap:40px;grid-template-columns:1fr 1fr}.price-card{padding:25px}.page-hero-content{padding-inline:35px}.price-row strong{font-size:25px}.price-row span{font-size:13px}}
@media(max-width:560px){.topbar{height:32px;font-size:9px}.topbar a{font-size:10px}.home-hero{height:640px}.hero-photo{object-position:53% 42%}.hero-shade{background:linear-gradient(90deg,#14352cb5,#14352c36),linear-gradient(0deg,#14352cd9,transparent 80%)}.home-hero-content{padding:65px 24px}.location{font-size:11px;margin-bottom:30px}.home-hero h1{font-size:53px;letter-spacing:-2px}.home-hero p{font-size:13px;line-height:1.9;margin-block:24px}.home-hero .button{min-height:49px;font-size:11px}.film-link{left:24px;right:auto;bottom:75px;padding:0}.film-link span{font-size:11px}.film-link small{font-size:9px}.hero-bottom{left:24px;right:24px;font-size:9px;bottom:23px}.hero-bottom a{display:none}.booking-form{padding:24px 18px}.booking-heading strong{font-size:14px}.booking-fields{gap:18px 12px}.booking-fields label:first-child{grid-column:1/-1}.booking-fields button{grid-column:1/-1;justify-content:space-between}.form-note{font-size:9px}.wrap{width:calc(100% - 40px)}.section{padding-block:50px}.intro{padding-block:55px 45px}.intro-grid{grid-template-columns:1fr;gap:25px}.intro-grid h2{font-size:40px}.intro-grid p{font-size:13px}.section-kicker{font-size:11px;margin-bottom:15px}.amenity-strip{margin-top:30px;padding-top:26px;gap:22px 12px}.amenity-strip span{font-size:10px;gap:9px;width:46%}.amenity-strip svg{width:22px;height:22px}.section-heading{gap:20px;align-items:start;margin-bottom:25px}.section-heading>p{display:none}.section-heading .text-link{font-size:10px;gap:8px;white-space:nowrap}.section-heading h2{font-size:40px}.villa-grid{grid-template-columns:1fr;gap:35px}.villa-photo{height:390px}.villa-info{display:grid}.villa-info a{margin-top:0;font-size:11px;gap:12px}.villa-info h3{font-size:32px}.villa-info p{font-size:10px}.small{font-size:10px}.split{padding-block:55px;grid-template-columns:1fr;gap:30px}.split-photo{height:430px}.split-copy h2{font-size:42px}.split-copy p:not(.section-kicker){font-size:13px;margin-block:20px}.reasons{grid-template-columns:1fr;margin-top:30px;gap:30px}.reasons article{display:grid;grid-template-columns:35px 1fr;gap:5px 20px}.reasons article>svg{grid-row:1/3;margin-top:4px}.reasons h3{font-size:30px;margin:0 0 5px}.reasons p{font-size:12px;grid-column:2}.price-band{padding-block:40px}.price-band .wrap{flex-direction:column;align-items:start;gap:25px}.price-band h2{font-size:37px}.price-band p{font-size:10px}.faq-list summary{font-size:13px}.faq-list p{font-size:12px}.faq-list details{padding-block:18px}.closing{padding:55px 20px}.closing h2{font-size:43px}.closing p{font-size:11px}footer{grid-template-columns:1fr 1fr;padding:45px 22px 90px;gap:35px 22px}footer>div:first-child{grid-column:1/-1;display:flex;align-items:center;gap:30px}footer .brand{margin:0}footer p{font-size:10px}footer>div:nth-child(4){grid-column:1/-1}footer h3{margin-bottom:14px}footer .footer-phone{font-size:25px}.copyright{flex-direction:column;gap:8px}.floating{right:15px;bottom:15px}.floating a{width:44px;height:44px}.floating .whatsapp{padding-inline:16px}.page-hero{height:410px}.page-hero-content{padding:36px 24px}.page-hero h1{font-size:49px}.page-hero p{font-size:12px;max-width:31ch}.crumb{font-size:10px;margin-bottom:30px}.page-hero.compact{height:360px}.page-hero.compact h1{font-size:47px}.price-grid{grid-template-columns:1fr;gap:24px}.price-card{padding:28px}.price-card h2{font-size:38px}.price-row strong{font-size:30px}.price-note{font-size:11px}.detail-layout{grid-template-columns:1fr;gap:35px}.detail-layout>div>p:not(.section-kicker){font-size:13px}.detail-features{font-size:12px}.gallery-grid{gap:14px}.gallery-item img{height:250px}.gallery-item span{font-size:10px;padding:25px 10px 12px}.gallery-item svg{width:15px}.gallery-item:nth-child(3){grid-column:span 2}.gallery-item:nth-child(3) img{height:380px}.contact-layout .booking-form{padding:27px 20px}.contact-phone{font-size:36px}.contact-links{font-size:12px}.contact-layout .booking-fields label:first-child{grid-column:1/-1}.help-box{padding:28px 23px}.help-box h2{font-size:32px}.help-box p{font-size:12px}dialog{padding:16px}.film-dialog{padding:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
