@font-face{font-family:Tenor Sans;src:url(/bls/fonts/TenorSans-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Arimo;src:url(/bls/fonts/Arimo-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Arimo;src:url(/bls/fonts/Arimo-Italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Arimo;src:url(/bls/fonts/Arimo-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Arimo;src:url(/bls/fonts/Arimo-SemiBold.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Arimo;src:url(/bls/fonts/Arimo-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--bls-aperol:#d95022;--bls-aperol-dark:#b33c16;--bls-aperol-soft:#e37147;--bls-sunset:#eab05d;--bls-sunset-soft:#f2c988;--bls-pool:#b6cfb9;--bls-pool-soft:#d2e0d3;--bls-offwhite:#f1efe4;--bls-offwhite-2:#e8e4d2;--bls-ink:#2a1b11;--bls-ink-soft:#5a4636;--bls-ink-mute:#8a7a6a;--bls-hairline:#d9d2be;--bls-hairline-soft:#eae3d2;--bls-sand:var(--bls-offwhite-2);--bls-aperol-tint:#d9502214;--brand-primary:var(--bls-aperol);--bg:var(--bls-offwhite);--surface:#faf8ee;--surface-warm:var(--bls-sunset-soft);--fg-1:var(--bls-ink);--fg-2:var(--bls-ink-soft);--fg-3:var(--bls-ink-mute);--accent:var(--bls-aperol);--accent-fg:var(--bls-offwhite);--font-display:"Tenor Sans", "Cormorant Garamond", Georgia, serif;--font-body:"Arimo", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--fs-display:clamp(56px, 8vw, 96px);--fs-h1:clamp(40px, 5vw, 64px);--fs-h2:clamp(28px, 3vw, 40px);--fs-h3:22px;--fs-body:17px;--fs-small:14px;--fs-eyebrow:12px;--tracking-display:.01em;--tracking-caps:.18em;--tracking-button:.16em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:128px;--rhythm-section:clamp(48px, 6vw, 80px);--rhythm-section-tight:clamp(32px, 4vw, 56px);--rhythm-stack:clamp(24px, 3vw, 40px);--rhythm-grid-gap:24px;--radius-0:0px;--radius-1:2px;--radius-2:4px;--radius-pill:999px;--shadow-1:0 1px 2px #2a1b110f;--shadow-2:0 8px 24px #2a1b1114;--shadow-3:0 24px 60px #2a1b1124;--ease-soft:cubic-bezier(.22, .61, .36, 1);--dur-fast:.16s;--dur-base:.28s;--dur-slow:.6s;--container:1240px;--gutter:clamp(20px, 4vw, 56px);--bp-sm:40rem;--bp-md:48rem;--bp-lg:64rem;--bp-xl:80rem}html,body{background:var(--bg);color:var(--fg-1);font-family:var(--font-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.6}.bls-display,h1.bls-display{font-family:var(--font-display);font-weight:400;font-size:var(--fs-display);letter-spacing:var(--tracking-display);color:var(--accent);text-wrap:balance;line-height:1.04}.bls-h1,h1{font-family:var(--font-display);font-weight:400;font-size:var(--fs-h1);color:var(--accent);text-wrap:balance;line-height:1.08}.bls-h2,h2{font-family:var(--font-display);font-weight:400;font-size:var(--fs-h2);color:var(--accent);text-wrap:balance;line-height:1.15}.bls-h3,h3{font-family:var(--font-display);font-weight:400;font-size:var(--fs-h3);color:var(--fg-1);line-height:1.3}.bls-body,p{font-family:var(--font-body);font-weight:400;font-size:var(--fs-body);color:var(--fg-2);text-wrap:pretty;line-height:1.6}.bls-label{font-family:var(--font-body);font-weight:500;font-size:var(--fs-small);letter-spacing:.04em;color:var(--fg-3)}.bls-button-text{font-family:var(--font-body);letter-spacing:var(--tracking-button);text-transform:uppercase;font-size:13px;font-weight:700}.bls-rule{background:var(--bls-hairline);border:0;height:1px}*{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.kit-app{background:var(--bls-offwhite);min-height:100vh;color:var(--bls-ink);font-family:var(--font-body)}.container{max-width:1240px;padding:0 var(--gutter);margin:0 auto}.section{padding:var(--rhythm-section) 0}.section.tight{padding:var(--rhythm-section-tight) 0}.section.cozy{padding:clamp(20px,2.5vw,36px) 0}.section--surface{background:var(--surface)}.nav{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f1efe4d6;border-bottom:1px solid #0000;transition:border-color .22s;position:sticky;top:0}.nav.scrolled{border-bottom-color:var(--bls-hairline)}.nav-inner{align-items:center;gap:36px;height:96px;display:flex}.nav-logo{flex:none}.nav-logo img{width:auto;max-width:60vw;height:36px;display:block}.nav-logo.secondary img{height:44px}@media (max-width:768px){.nav-logo img{max-width:70vw;height:22px}}.nav-links{flex:1;justify-content:center;gap:28px;display:flex}.nav-links a{letter-spacing:.04em;color:var(--bls-ink);cursor:pointer;padding:6px 0;font-size:14px;font-weight:500;transition:color .2s;position:relative}.nav-links a:hover,.nav-links a.active{color:var(--bls-aperol)}.nav-links a.active:after{content:"";background:var(--bls-aperol);height:1px;position:absolute;bottom:-2px;left:0;right:0}.btn{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .24s var(--ease-soft), color .24s, border-color .24s;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:14px 26px;font-size:12.5px;font-weight:700;display:inline-flex}.btn-primary{background:var(--bls-aperol);color:var(--bls-offwhite)}.btn-primary:hover{background:var(--bls-aperol-dark)}.btn-secondary{color:var(--bls-aperol);border-color:var(--bls-aperol);background:0 0}.btn-secondary:hover{background:var(--bls-aperol);color:var(--bls-offwhite)}.btn-on-dark{background:var(--bls-offwhite);color:var(--bls-aperol)}.btn-on-dark:hover{background:var(--bls-sunset);color:var(--bls-aperol)}.ghost-link{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--bls-aperol);cursor:pointer;align-items:center;gap:8px;padding-bottom:4px;font-size:12px;font-weight:700;display:inline-flex;position:relative}.ghost-link:after{content:"";background:var(--bls-aperol);transform-origin:0;height:1px;transition:transform .28s var(--ease-soft);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.ghost-link:hover:after{transform:scaleX(1)}.ghost-link .arrow{transition:transform .28s var(--ease-soft)}.ghost-link:hover .arrow{transform:translate(4px)}.eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--bls-aperol);margin-bottom:18px;font-size:11.5px;font-weight:600;display:inline-block}.eyebrow.on-dark{color:var(--bls-sunset);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-left:2px solid var(--bls-sunset);background:#2a1b1173;align-self:flex-start;margin-bottom:22px;padding:7px 12px;font-weight:700}.hero{background:var(--bls-aperol);height:clamp(520px,78vh,760px);position:relative;overflow:hidden}.hero-image{background-position:50%;background-size:cover;position:absolute;inset:0}.hero-image:after{content:"";background:linear-gradient(#2a1b1100 35%,#2a1b118c 100%);position:absolute;inset:0}.hero-content{z-index:2;height:100%;color:var(--bls-offwhite);flex-direction:column;justify-content:flex-end;padding-bottom:clamp(48px,8vh,96px);display:flex;position:relative}.hero h1{font-family:var(--font-display);letter-spacing:.005em;color:var(--bls-offwhite);text-wrap:balance;max-width:14ch;margin:0 0 24px;font-size:clamp(56px,9vw,112px);line-height:.98}.hero p.lede{color:#f1efe4eb;max-width:44ch;margin:0 0 36px;font-size:18px;line-height:1.55}.hero-actions{flex-wrap:wrap;gap:14px;display:flex}.split{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(32px,6vw,96px);display:grid}.split.flip>.split-image{order:2}.split-image{aspect-ratio:4/5;position:relative;overflow:hidden}.split-image img{object-fit:cover;width:100%;height:100%;display:block}.split-copy h2{font-family:var(--font-display);color:var(--bls-aperol);text-wrap:balance;margin:0 0 24px;font-size:clamp(36px,4vw,56px);line-height:1.05}.split-copy p{color:var(--bls-ink-soft);text-wrap:pretty;margin:0 0 16px;font-size:17px;line-height:1.65}.services{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.service{border-top:1px solid var(--bls-hairline);flex-direction:column;gap:14px;padding:8px 0 0;display:flex}.service .num{font-family:var(--font-display);color:var(--bls-aperol);letter-spacing:.16em;font-size:14px}.service h3{font-family:var(--font-display);color:var(--bls-ink);margin:4px 0 0;font-size:24px;line-height:1.2}.service p{color:var(--bls-ink-soft);margin:0;font-size:15px;line-height:1.6}.villa-grid{grid-template-columns:repeat(2,1fr);gap:56px 40px;display:grid}.villa-card{cursor:pointer;flex-direction:column;gap:14px;display:flex}.villa-card .photo{aspect-ratio:4/5;position:relative;overflow:hidden}.villa-card .photo img{object-fit:cover;width:100%;height:100%;transition:transform .7s var(--ease-soft);display:block}.villa-card:hover .photo img{transform:scale(1.04)}.villa-card h3{font-family:var(--font-display);color:var(--bls-ink);margin:4px 0 0;font-size:26px;line-height:1.2;transition:color .2s}.villa-card:hover h3{color:var(--bls-aperol)}.villa-card .meta{letter-spacing:.16em;text-transform:uppercase;color:var(--bls-ink-mute);font-size:12.5px;font-weight:500}.villa-card .ghost-link{margin-top:6px}.pull-quote{text-align:center;max-width:64ch;margin:0 auto}.pull-quote .mark{background-image:url(/bls/illustrations/wave.jpg);background-position:50%;background-size:cover;border-radius:999px;width:56px;height:56px;margin:0 auto 20px;display:block}.pull-quote blockquote{font-family:var(--font-display);color:var(--bls-aperol);text-wrap:balance;margin:0 0 22px;font-size:clamp(28px,3.4vw,44px);font-style:normal;line-height:1.2}.pull-quote cite{letter-spacing:.18em;text-transform:uppercase;color:var(--bls-ink-mute);font-size:12px;font-style:normal;font-weight:600}.cta-band{background:var(--bls-aperol);color:var(--bls-offwhite);padding:clamp(64px,10vw,128px) 0;position:relative;overflow:hidden}.cta-band .palm{opacity:.35;background:url(/bls/illustrations/palm.jpg) 50%/cover;border-radius:999px;width:320px;height:320px;display:none;position:absolute;bottom:-40px;right:-40px}.cta-band .inner{grid-template-columns:1.4fr 1fr;align-items:end;gap:56px;display:grid}.cta-band h2{font-family:var(--font-display);color:var(--bls-offwhite);text-wrap:balance;max-width:16ch;margin:0;font-size:clamp(40px,5vw,72px);line-height:1.02}.cta-band p{color:#f1efe4e6;max-width:38ch;margin:0 0 24px;font-size:17px;line-height:1.6}.form-card{background:var(--bls-offwhite);color:var(--bls-ink);padding:36px 32px}.form-card h3{font-family:var(--font-display);color:var(--bls-aperol);margin:0 0 20px;font-size:24px}.field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.field label{letter-spacing:.18em;text-transform:uppercase;color:var(--bls-aperol);font-size:11px;font-weight:600}.field input,.field select,.field textarea{font:inherit;color:var(--bls-ink);background:var(--surface);border:1px solid var(--bls-hairline);border-radius:2px;outline:none;width:100%;padding:12px 14px;font-size:15px;transition:border-color .2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--bls-aperol)}.footer{background:var(--bls-aperol);color:var(--bls-offwhite);padding:80px 0 40px}.footer-grid{grid-template-columns:1.2fr 1fr 1fr 1fr;align-items:start;gap:48px;display:grid}.footer-brand img{width:auto;max-width:100%;height:22px;margin-bottom:22px;display:block}.footer-brand p{color:#f1efe4d9;max-width:32ch;margin:0;font-size:14px;line-height:1.6}.footer-col h4{font-family:var(--font-body);letter-spacing:.22em;text-transform:uppercase;color:var(--bls-sunset);margin:0 0 16px;font-size:11px;font-weight:600}.footer-col a{color:#f1efe4eb;cursor:pointer;padding:4px 0;font-size:14px;transition:color .2s;display:block}.footer-col a:hover{color:var(--bls-sunset)}.footer-bottom{color:#f1efe4b3;letter-spacing:.04em;border-top:1px solid #f1efe433;justify-content:space-between;margin-top:64px;padding-top:24px;font-size:12px;display:flex}.footer-badge{background-color:var(--bls-offwhite);width:96px;height:96px;-webkit-mask:url(/bls/logos/secondary-offwhite.svg) 50%/contain no-repeat;mask:url(/bls/logos/secondary-offwhite.svg) 50%/contain no-repeat}.villa-hero{grid-template-rows:220px 220px;grid-template-columns:2fr 1fr 1fr;gap:8px;margin-top:8px;display:grid}.villa-hero>div{background-position:50%;background-size:cover;overflow:hidden}.villa-hero .main{grid-row:1/3;height:448px}.villa-detail-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;margin-top:56px;display:flex}.villa-detail-head h1{font-family:var(--font-display);color:var(--bls-aperol);margin:0;font-size:clamp(48px,6vw,84px);line-height:1}.villa-detail-head .meta{letter-spacing:.18em;text-transform:uppercase;color:var(--bls-ink-mute);font-size:13px;font-weight:600}.amenities{grid-template-columns:repeat(4,1fr);gap:18px 32px;margin-top:24px;display:grid}.amenities .item{color:var(--bls-ink);border-top:1px solid var(--bls-hairline);letter-spacing:.02em;padding:10px 0;font-size:14px}.fade-in{animation:fadein .6s var(--ease-soft) both}@keyframes fadein{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.villa-breadcrumb{letter-spacing:.18em;text-transform:uppercase;color:var(--bls-ink-mute);align-items:center;gap:10px;margin-top:24px;margin-bottom:16px;font-size:12px;font-weight:600;display:flex}.villa-breadcrumb a{color:var(--bls-aperol);cursor:pointer}.villa-body{grid-template-columns:minmax(0,1fr) 480px;align-items:start;gap:clamp(40px,6vw,80px);margin-top:56px;padding-bottom:96px;display:grid}.villa-body-main{min-width:0}.villa-body-side{position:sticky;top:96px}.bls-listbox{background:var(--bls-offwhite);border:1px solid var(--bls-hairline);border-radius:var(--radius-2);box-shadow:var(--shadow-2);z-index:30;max-height:280px;font-family:var(--font-body);margin-top:4px;margin-bottom:0;padding:4px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.bls-listbox__option{cursor:pointer;color:var(--bls-ink);border-radius:var(--radius-1);transition:background .16s var(--ease-soft);padding:10px 12px;font-size:14px}.bls-listbox__option:hover,.bls-listbox__option[aria-selected=true]{background:var(--bls-aperol-tint)}.bls-listbox__option--search{color:var(--bls-aperol)}.booking-widget{background:var(--surface);border:1px solid var(--bls-hairline);flex-direction:column;gap:16px;padding:28px 26px 24px;display:flex}.booking-widget .bw-rate{align-items:baseline;gap:8px;display:flex}.booking-widget .bw-price{font-family:var(--font-display);color:var(--bls-aperol);font-size:38px;line-height:1}.booking-widget .bw-period{color:var(--bls-ink-soft);letter-spacing:.04em;font-size:14px}.booking-widget .bw-meta{color:var(--bls-ink-mute);margin-top:-8px;margin-bottom:8px;font-size:12px}.booking-widget .bw-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.booking-widget .bw-field{flex-direction:column;gap:6px;display:flex}.booking-widget .bw-field label{letter-spacing:.2em;text-transform:uppercase;color:var(--bls-aperol);font-size:10.5px;font-weight:600}.booking-widget .bw-field input{font:inherit;color:var(--bls-ink);background:var(--bls-offwhite);border:1px solid var(--bls-hairline);font-size:14px;font-family:var(--font-body);border-radius:2px;outline:none;padding:11px 12px;transition:border-color .2s}.booking-widget .bw-field input:focus{border-color:var(--bls-aperol)}.booking-widget .bw-stepper{border:1px solid var(--bls-hairline);background:var(--bls-offwhite);border-radius:2px;justify-content:space-between;align-items:center;padding:4px 8px;display:flex}.booking-widget .bw-stepper span{color:var(--bls-ink);font-size:14px;font-weight:500}.booking-widget .bw-stepper button{width:32px;height:32px;color:var(--bls-aperol);cursor:pointer;background:0 0;border:0;border-radius:999px;font-size:18px;transition:background .16s}.booking-widget .bw-stepper button:hover{background:#d9502214}.booking-widget .bw-summary{border-top:1px solid var(--bls-hairline);flex-direction:column;gap:8px;margin-top:4px;padding:16px 0 4px;display:flex}.booking-widget .bw-summary .row{color:var(--bls-ink-soft);justify-content:space-between;font-size:14px;display:flex}.booking-widget .bw-summary .row.total{border-top:1px solid var(--bls-hairline);font-family:var(--font-display);color:var(--bls-aperol);margin-top:8px;padding-top:12px;font-size:18px}.booking-widget .bw-cta{justify-content:center;width:100%;margin-top:4px;padding:16px 26px}.booking-widget .bw-note{color:var(--bls-ink-mute);align-items:flex-start;gap:8px;margin-top:4px;font-size:11.5px;line-height:1.5;display:flex}.booking-widget .bw-note .dot{background:var(--bls-aperol);border-radius:999px;flex:none;width:6px;height:6px;margin-top:6px}.booking-confirmed{border-left:2px solid var(--bls-aperol)}.map-placeholder{aspect-ratio:16/7;background:radial-gradient(circle at 60% 50%, #b6cfb966 0%, #b6cfb900 60%), repeating-linear-gradient(45deg, var(--bls-offwhite-2) 0 12px, var(--bls-offwhite) 12px 24px);border:1px solid var(--bls-hairline);flex-direction:column;justify-content:center;align-items:center;gap:6px;width:100%;display:flex;position:relative}.map-placeholder .map-pin{background:var(--bls-aperol);border-radius:999px;width:14px;height:14px;box-shadow:0 0 0 6px #d9502226}.map-placeholder .map-label{letter-spacing:.18em;text-transform:uppercase;color:var(--bls-ink-soft);font-size:12px;font-weight:600}.bls-location-map{aspect-ratio:16/7;border:1px solid var(--bls-hairline);border-radius:var(--radius-2);z-index:0;width:100%;position:relative;overflow:hidden}.bls-location-map .leaflet-container{font-family:var(--font-body);background:var(--bls-offwhite)}.bls-static-map{aspect-ratio:16/9;border:1px solid var(--bls-hairline);border-radius:var(--radius-2);background:var(--bls-offwhite-2,var(--surface));width:100%;text-decoration:none;display:block;position:relative;overflow:hidden}.bls-static-map img{object-fit:cover;width:100%;height:100%;display:block}.bls-static-map__hint{background:var(--bls-offwhite);color:var(--bls-ink);font-family:var(--font-body);box-shadow:var(--shadow-2);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;position:absolute;bottom:12px;right:12px}.contact-layout{grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);align-items:start;gap:clamp(40px,6vw,80px);display:grid}.contact-tabs{border-bottom:1px solid var(--bls-hairline);gap:2px;margin-bottom:32px;display:flex}.contact-tabs button{cursor:pointer;font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--bls-ink-mute);background:0 0;border:0;padding:14px 22px 16px;font-size:12px;font-weight:600;transition:color .2s;position:relative}.contact-tabs button:hover{color:var(--bls-ink)}.contact-tabs button.active{color:var(--bls-aperol)}.contact-tabs button.active:after{content:"";background:var(--bls-aperol);height:2px;position:absolute;bottom:-1px;left:0;right:0}.contact-form{flex-direction:column;gap:18px;max-width:560px;display:flex}.contact-form .field-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.contact-form .field{gap:8px;margin-bottom:0}.contact-form button[type=submit]{align-self:flex-start;margin-top:8px}.contact-thanks{padding:32px 0}.contact-side{flex-direction:column;gap:32px;display:flex}.contact-block .eyebrow{margin-bottom:8px}.contact-block p{color:var(--bls-ink);margin:4px 0;font-size:15px;line-height:1.6}.contact-block a{color:var(--bls-aperol);border-bottom:1px solid}.contact-illus{aspect-ratio:1;background:url(/bls/illustrations/heliconia.jpg) 50%/cover;width:100%;margin-top:8px}.team-grid{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.team-card{flex-direction:column;gap:8px;display:flex}.team-card .team-photo{aspect-ratio:4/5;background:linear-gradient(160deg, var(--bls-sunset-soft) 0%, var(--bls-aperol-soft) 100%);width:100%;margin-bottom:12px}.team-card h3{font-family:var(--font-display);color:var(--bls-ink);margin:4px 0 0;font-size:22px}.team-card .meta{letter-spacing:.18em;text-transform:uppercase;color:var(--bls-aperol);font-size:11px;font-weight:600}.team-card p{color:var(--bls-ink-soft);margin:4px 0 0;font-size:14px;line-height:1.6}.team-section{background:var(--surface)}.team-header{max-width:720px;margin-bottom:64px}.team-grid-v2{grid-template-columns:repeat(3,1fr);gap:clamp(24px,3.5vw,48px);display:grid}.team-card-v2{flex-direction:column;align-items:stretch;display:flex}.team-portrait{aspect-ratio:4/5;background:var(--bls-pool);justify-content:center;align-items:center;width:100%;margin-bottom:0;display:flex;position:relative;overflow:hidden}.team-portrait:after{content:"";background:linear-gradient(#2a1b1100 60%,#2a1b112e 100%);position:absolute;inset:0}.team-portrait .portrait-fallback{font-family:var(--font-display);color:var(--bls-offwhite);letter-spacing:.02em;z-index:1;opacity:.95;font-size:96px}.portrait-0{background:linear-gradient(#d9502259,#d950228c),url(/bls/illustrations/palm.jpg) 50%/cover}.portrait-1{background:linear-gradient(#eab05d4d,#d9502273),url(/bls/illustrations/heliconia.jpg) 50%/cover}.portrait-2{background:linear-gradient(#b6cfb94d,#d9502280),url(/bls/illustrations/wave.jpg) 50%/cover}.team-name-pill{z-index:2;background:var(--bls-aperol);color:var(--bls-offwhite);font-family:var(--font-display);letter-spacing:.32em;box-shadow:var(--shadow-2);border-radius:999px;align-self:center;margin-top:-22px;padding:12px 36px;font-size:18px}.team-card-v2 .team-role{text-align:center;letter-spacing:.22em;text-transform:uppercase;color:var(--bls-ink-mute);margin:18px 0 24px;font-size:11px;font-weight:600;display:block}.team-card-v2 p{color:var(--bls-ink);margin:0 0 14px;font-size:15px;line-height:1.65}.team-card-v2 p:last-child{margin-bottom:0}.booking-header{background:var(--bls-aperol);padding:clamp(40px,5vw,64px) 0 clamp(72px,8vw,96px);position:relative;overflow:hidden}.booking-header:after{content:"";opacity:.18;background:url(/bls/illustrations/wave.jpg) 50%/cover;border-radius:999px;width:280px;height:280px;position:absolute;bottom:-40px;right:-40px}.booking-searchbar-wrap{z-index:5;margin-top:-48px;margin-bottom:24px;position:relative}.booking-searchbar{background:var(--bls-offwhite);border:1px solid var(--bls-hairline);box-shadow:var(--shadow-2);grid-template-columns:2fr 2.2fr .8fr auto;align-items:stretch;gap:0;padding:8px;display:grid}.bsb-daterange{position:relative}.bsb-trigger{border:0;border-right:1px solid var(--bls-hairline);text-align:left;cursor:pointer;font:inherit;background:0 0}.bsb-trigger--range{flex-direction:column;gap:4px;width:100%;min-height:56px;padding:14px 18px;display:flex}.bsb-trigger--range>span:first-child{letter-spacing:.2em;text-transform:uppercase;color:var(--bls-aperol);font-size:10.5px;font-weight:600}.bsb-field .bsb-trigger-value{font-family:var(--font-body);color:var(--bls-ink);text-transform:none;letter-spacing:0;padding-top:4px;font-size:15px;font-weight:400}.bls-rdp{background:var(--bls-offwhite);--rdp-accent-color:var(--bls-aperol);--rdp-accent-background-color:var(--bls-sand);--rdp-day-height:40px;--rdp-day-width:40px;--rdp-day_button-border-radius:4px;--rdp-selected-border:2px solid var(--bls-aperol);--rdp-range_middle-background-color:var(--bls-sand);--rdp-range_middle-color:var(--bls-ink);--rdp-range_start-color:var(--bls-offwhite);--rdp-range_end-color:var(--bls-offwhite);--rdp-today-color:var(--bls-aperol);font-family:var(--font-body);color:var(--bls-ink)}.bls-rdp-popover{z-index:40;border:1px solid var(--bls-hairline);box-shadow:var(--shadow-2);flex-direction:column;gap:8px;padding:16px;display:flex;position:absolute;top:calc(100% + 8px);left:0}.bls-rdp-sheet{z-index:1100;flex-direction:column;padding:0;display:flex;position:fixed;inset:0;overflow:hidden}.bls-rdp-sheet__top{padding:16px var(--gutter);border-bottom:1px solid var(--bls-hairline);flex:none;justify-content:space-between;align-items:center;display:flex}.bls-rdp-sheet__title{font-family:var(--font-display);color:var(--bls-ink);font-size:18px}.bls-rdp-sheet__close{width:44px;height:44px;color:var(--bls-ink);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;font-size:20px;line-height:1;display:inline-flex}.bls-rdp-sheet__close:hover{background:#0000000a}.bls-rdp-sheet .bls-rdp-body{padding:16px var(--gutter);flex:auto;overflow-y:auto}.bls-rdp-popover .bls-rdp-body{padding:0}.bls-rdp-actions{padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--bls-hairline);flex:none;justify-content:space-between;align-items:center;gap:12px;display:flex}.bls-rdp-popover .bls-rdp-actions{border-top:0;padding:8px 0 0}.bls-rdp-clear{font:inherit;color:var(--bls-ink);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;min-height:44px;padding:12px 8px;font-size:14px;font-weight:600;text-decoration:underline}.bls-rdp-apply{min-height:44px}.bls-rdp-sheet .bls-rdp-apply{min-width:140px}.bls-rdp .rdp-month_caption{font-family:var(--font-display);color:var(--bls-aperol);font-size:18px}.bls-rdp .rdp-weekday{letter-spacing:.18em;text-transform:uppercase;color:var(--bls-ink-mute);font-size:11px;font-weight:600}.bls-rdp .rdp-day_button{border-radius:4px}.bls-rdp .rdp-day_button:hover:not([disabled]){background:var(--bls-sand)}.bls-rdp .rdp-selected .rdp-day_button,.bls-rdp .rdp-range_start .rdp-day_button,.bls-rdp .rdp-range_end .rdp-day_button{background-color:var(--bls-aperol);color:var(--bls-offwhite);border:2px solid var(--bls-aperol);font-weight:600}.bls-rdp .rdp-range_middle{background-color:var(--bls-sand)}.bls-rdp .rdp-range_middle .rdp-day_button{color:var(--bls-ink);background-color:#0000;border-color:#0000}.bls-rdp .rdp-today:not(.rdp-selected):not(.rdp-outside) .rdp-day_button{color:var(--bls-aperol);font-weight:600}.bls-rdp .rdp-day_disabled{color:var(--bls-ink-mute);opacity:.4}.bls-rdp .rdp-chevron{fill:var(--bls-aperol)}.bsb-field{border-right:1px solid var(--bls-hairline);cursor:text;flex-direction:column;gap:4px;padding:14px 18px;display:flex}.bsb-field:last-of-type{border-right:0}.bsb-field span{letter-spacing:.2em;text-transform:uppercase;color:var(--bls-aperol);font-size:10.5px;font-weight:600}.bsb-field input{font:inherit;font-family:var(--font-body);color:var(--bls-ink);background:0 0;border:0;outline:none;width:100%;padding:4px 0 0;font-size:15px}.bsb-field input::placeholder{color:var(--bls-ink-mute)}.bsb-submit{justify-content:center;align-self:stretch;margin:0 4px;padding:18px 32px}.booking-results-head{margin-bottom:var(--rhythm-stack);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.booking-results-meta{text-align:right;flex-direction:column;display:flex}.booking-results-meta>span:first-child{font-family:var(--font-display);color:var(--bls-aperol);font-size:18px}.booking-results{gap:32px var(--rhythm-grid-gap);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.booking-result{background:var(--bls-offwhite);border:1px solid var(--bls-hairline);cursor:pointer;transition:border-color .24s var(--ease-soft), box-shadow .24s;flex-direction:column;display:flex}.booking-result:hover{border-color:var(--bls-aperol);box-shadow:var(--shadow-2)}.br-photo{aspect-ratio:4/3;position:relative;overflow:hidden}.br-photo img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-soft);display:block}.booking-result:hover .br-photo img{transform:scale(1.04)}.br-body{flex-direction:column;flex:1;justify-content:space-between;gap:12px;padding:16px 18px 18px;display:flex}.br-body .meta{letter-spacing:.18em;text-transform:uppercase;color:var(--bls-ink-mute);font-size:11.5px;font-weight:600}.br-body h3{font-family:var(--font-display);color:var(--bls-ink);margin:4px 0 0;font-size:20px;line-height:1.2}.booking-result:hover h3{color:var(--bls-aperol)}.br-tagline{color:var(--bls-ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:6px 0 0;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.br-foot{border-top:1px solid var(--bls-hairline);justify-content:space-between;align-items:flex-end;gap:12px;padding-top:12px;display:flex}.br-price{flex-direction:column;gap:2px;display:flex}.br-price .amt{font-family:var(--font-display);color:var(--bls-aperol);font-size:20px;line-height:1}.br-price .per{color:var(--bls-ink-mute);margin-top:2px;font-size:12px;display:inline-block}.br-price .total{letter-spacing:.04em;color:var(--bls-ink-soft);margin-top:6px;font-size:12px}.booking-empty{text-align:center;flex-direction:column;align-items:center;padding:64px 0;display:flex}.booking-empty-illus{background:url(/bls/illustrations/umbrella.jpg) 50%/cover;border-radius:999px;width:96px;height:96px}.booking-confirm-note{color:var(--bls-ink-soft);background:var(--surface);border-left:2px solid var(--bls-aperol);align-items:center;gap:10px;margin-top:32px;padding:12px 18px;font-size:13px;display:inline-flex}.booking-confirm-note .dot{background:var(--bls-aperol);border-radius:999px;width:8px;height:8px}@media (max-width:1024px){.team-grid-v2{grid-template-columns:1fr;gap:56px}.team-portrait{aspect-ratio:16/11}}@media (max-width:768px){.booking-searchbar{grid-template-columns:1fr}.bsb-field,.bsb-trigger{border-right:0;border-bottom:1px solid var(--bls-hairline)}.bsb-loc{grid-column:1/-1}.bsb-submit{grid-column:1/-1;justify-content:center;width:100%;margin:8px 4px 4px}.booking-result{grid-template-columns:1fr}.br-body{padding:0 24px 24px}}.hero-meta{right:var(--gutter);z-index:3;text-align:right;color:var(--bls-offwhite);position:absolute;bottom:clamp(48px,8vh,96px)}.hero-meta .small{letter-spacing:.22em;text-transform:uppercase;opacity:.85;margin-bottom:6px;font-size:11px;font-weight:600}.hero-meta .big{font-family:var(--font-display);font-size:22px;line-height:1.2}@media (max-width:768px){.hero-meta{display:none}}.featured-bar{border-top:1px solid var(--bls-hairline);border-bottom:1px solid var(--bls-hairline);background:var(--bls-offwhite);padding:28px 0}.featured-bar-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;display:flex}.featured-bar .label{letter-spacing:.22em;text-transform:uppercase;color:var(--bls-ink-mute);flex:none;font-size:11px;font-weight:600}.featured-bar .pubs{flex-wrap:wrap;align-items:center;gap:clamp(24px,4vw,56px);display:flex}.featured-bar .pub{font-family:var(--font-display);color:var(--bls-ink-soft);letter-spacing:.04em;opacity:.9;font-size:clamp(15px,1.6vw,18px)}.stats-strip{border-top:1px solid var(--bls-hairline);border-bottom:1px solid var(--bls-hairline);grid-template-columns:repeat(4,1fr);gap:clamp(16px,3vw,48px);padding:clamp(56px,8vw,96px) 0;display:grid}.stats-strip .stat{flex-direction:column;gap:6px;display:flex}.stats-strip .stat .num{font-family:var(--font-display);color:var(--bls-aperol);font-size:clamp(40px,5vw,64px);line-height:1}.stats-strip .stat .lbl{color:var(--bls-ink-soft);max-width:22ch;font-size:13px;line-height:1.45}@media (max-width:1024px){.villa-body{grid-template-columns:1fr}.villa-body-side{position:static}.contact-layout{grid-template-columns:1fr}.team-grid{grid-template-columns:1fr 1fr}.stats-strip{grid-template-columns:1fr 1fr;gap:32px}}@media (max-width:640px){.villa-hero{grid-template-rows:200px 200px 200px;grid-template-columns:1fr 1fr}.villa-hero .main{grid-area:1/1/2/3;height:auto}.villa-grid,.services,.split,.cta-band .inner{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.team-grid{grid-template-columns:1fr}.stats-strip{grid-template-columns:1fr 1fr}.contact-form .field-row{grid-template-columns:1fr}.amenities{grid-template-columns:1fr 1fr}}.show-more-body{position:relative;overflow:hidden}.show-more-body[data-expanded=false]{-webkit-line-clamp:var(--clamp-lines,6);line-clamp:var(--clamp-lines,6);-webkit-box-orient:vertical;display:-webkit-box}.show-more-toggle{font:inherit;color:var(--bls-aperol);cursor:pointer;text-underline-offset:4px;background:0 0;border:0;margin-top:12px;padding:0;font-size:14px;font-weight:600;text-decoration:underline}.show-more-toggle:hover{color:var(--bls-aperol-dark)}.bls-disclosure{border-top:1px solid var(--bls-hairline);margin:0}.bls-disclosure:last-of-type{border-bottom:1px solid var(--bls-hairline)}.bls-disclosure>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;list-style:none;display:flex}.bls-disclosure>summary::-webkit-details-marker{display:none}.bls-disclosure-heading{font-family:var(--font-display);color:var(--bls-ink);letter-spacing:-.01em;font-size:20px}.bls-disclosure-chevron{color:var(--bls-ink-mute);font-size:22px;line-height:1;transition:transform .2s}.bls-disclosure[open] .bls-disclosure-chevron{transform:rotate(180deg)}.bls-disclosure-body{color:var(--bls-ink-soft);white-space:pre-line;max-width:60ch;padding:0 0 24px;font-size:16px;line-height:1.7}.list-modal-trigger{letter-spacing:.06em;text-transform:none;width:fit-content;margin-top:24px;margin-bottom:8px;padding:12px 22px;font-size:13px;display:flex}.bls-list-modal{background:var(--bls-offwhite);border-radius:var(--radius-2);width:calc(100% - 32px);max-width:720px;max-height:85vh;box-shadow:var(--shadow-3);border:0;padding:0}.bls-list-modal::backdrop{background:#2a1b1180}.bls-list-modal-inner{flex-direction:column;max-height:85vh;display:flex}.bls-list-modal header{background:var(--bls-offwhite);border-bottom:1px solid var(--bls-hairline);justify-content:space-between;align-items:center;padding:20px 24px;display:flex;position:sticky;top:0}.bls-list-modal h2{font-family:var(--font-display);color:var(--bls-ink);letter-spacing:-.01em;margin:0;font-size:22px}.bls-list-modal-close{color:var(--bls-ink);cursor:pointer;background:0 0;border:0;padding:4px 8px;font-size:28px;line-height:1}.bls-list-modal-body{padding:16px 24px 24px;overflow-y:auto}.review-clamp{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.booking-widget{scroll-margin-top:96px}.bw-calendar-mount{min-height:320px;margin-top:8px;position:relative}.bw-calendar-skeleton{flex-direction:column;gap:12px;display:flex}.bw-skeleton-row{background:var(--bls-hairline-soft,#ebebeb);border-radius:4px;width:33%;height:24px;animation:1.4s ease-in-out infinite bw-pulse}.bw-skeleton-grid{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.bw-skeleton-cell{aspect-ratio:1;background:var(--bls-hairline-soft,#ebebeb);border-radius:4px;animation:1.4s ease-in-out infinite bw-pulse}@keyframes bw-pulse{0%,to{opacity:1}50%{opacity:.5}}.mobile-reservation-bar{z-index:60;background:var(--bls-offwhite);border-top:1px solid var(--bls-hairline);padding:12px 16px env(safe-area-inset-bottom,12px);justify-content:space-between;align-items:center;gap:16px;display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #2a1b1114}.mrb-rate{flex-direction:column;line-height:1.2;display:flex}.mrb-price{font-family:var(--font-display);color:var(--bls-aperol);font-size:22px}.mrb-period{letter-spacing:.12em;text-transform:uppercase;color:var(--bls-ink-mute);font-size:11px}.mrb-cta{letter-spacing:.04em;flex-shrink:0;padding:12px 22px;font-size:14px;font-weight:600}@media (max-width:1024px){.villa-body{grid-template-columns:1fr;padding-bottom:120px}.villa-body-side{position:static;top:auto}.villa-body-side .booking-widget{max-width:480px;margin:0 auto}.mobile-reservation-bar{display:flex}}.bls-wa{z-index:1000;pointer-events:none;flex-direction:column;align-items:flex-end;gap:12px;display:flex;position:fixed;bottom:22px;right:22px}.bls-wa>*{pointer-events:auto}.bls-wa__bubble{border-radius:var(--radius-pill);background:var(--bls-aperol);width:58px;height:58px;color:var(--bls-offwhite);box-shadow:var(--shadow-2);justify-content:center;align-items:center;transition:transform .22s,box-shadow .22s;display:inline-flex;position:relative}.bls-wa__bubble:hover{box-shadow:var(--shadow-3);transform:translateY(-2px)scale(1.04)}.bls-wa__bubble:focus-visible{outline:2px solid var(--bls-ink);outline-offset:4px}.bls-wa__bubble-pulse{border-radius:inherit;background:var(--bls-aperol);opacity:.55;z-index:-1;animation:2.4s ease-out infinite bls-wa-pulse;position:absolute;inset:0}@keyframes bls-wa-pulse{0%{opacity:.55;transform:scale(1)}70%{opacity:0;transform:scale(1.7)}to{opacity:0;transform:scale(1.7)}}.bls-wa__teaser{background:var(--bls-offwhite);border:1px solid var(--bls-hairline);border-radius:var(--radius-2);width:280px;box-shadow:var(--shadow-2);padding:16px 18px 14px;font-family:inherit;animation:.32s ease-out both bls-wa-rise;position:relative}@keyframes bls-wa-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.bls-wa__teaser-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--bls-aperol);margin:0 0 6px;font-size:11px;font-weight:600}.bls-wa__teaser-msg{color:var(--bls-ink);margin:0 0 12px;font-size:14px;line-height:1.5}.bls-wa__teaser-cta{color:var(--bls-aperol);letter-spacing:.02em;align-items:center;gap:6px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.bls-wa__teaser-cta:hover{text-decoration:underline}.bls-wa__teaser-close{width:24px;height:24px;color:var(--bls-ink-mute);cursor:pointer;background:0 0;border:0;border-radius:999px;font-size:18px;line-height:1;position:absolute;top:6px;right:8px}.bls-wa__teaser-close:hover{color:var(--bls-ink);background:#0000000a}@media (max-width:1024px){.bls-wa{bottom:max(22px, calc(env(safe-area-inset-bottom,0px) + 86px))}}@media (max-width:480px){.bls-wa{right:14px}.bls-wa__teaser{width:calc(100vw - 36px);max-width:300px}}.nav-hamburger{width:44px;height:44px;color:var(--bls-ink);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;margin-left:auto;font-size:22px;line-height:1;transition:background .2s;display:none}.nav-hamburger:hover{background:#0000000a}.nav-hamburger:focus-visible{outline:2px solid var(--bls-aperol);outline-offset:2px}.nav-overlay{z-index:1100;background:var(--bls-offwhite);padding:0 var(--gutter) env(safe-area-inset-bottom,0px);flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.nav-overlay[hidden]{display:none}.nav-overlay__top{flex:none;justify-content:space-between;align-items:center;height:96px;display:flex}.nav-overlay__close{width:44px;height:44px;color:var(--bls-ink);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;font-size:22px;line-height:1;transition:background .2s;display:inline-flex}.nav-overlay__close:hover{background:#0000000a}.nav-overlay__close:focus-visible{outline:2px solid var(--bls-aperol);outline-offset:2px}.nav-overlay__links{flex-direction:column;flex:1;gap:4px;margin:24px 0 32px;display:flex}.nav-overlay__links a{min-height:56px;font-family:var(--font-display);letter-spacing:.01em;color:var(--bls-ink);border-bottom:1px solid var(--bls-hairline-soft,#0000000f);align-items:center;padding:8px 4px;font-size:28px;transition:color .2s;display:flex}.nav-overlay__links a:hover,.nav-overlay__links a.is-active{color:var(--bls-aperol)}.nav-overlay__cta{flex:none;padding:16px 0 24px}.nav-overlay__cta .btn{justify-content:center;width:100%}@media (max-width:768px){.nav-links,.nav-cta-desktop{display:none}.nav-hamburger{display:inline-flex}}.sticky-marketing-cta{display:none}@media (max-width:768px){.sticky-marketing-cta{z-index:50;padding:12px var(--gutter) calc(12px + env(safe-area-inset-bottom,0px));background:var(--bls-offwhite);border-top:1px solid var(--bls-hairline);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #2a1b110f}.sticky-marketing-cta .btn{justify-content:center;width:100%;min-height:48px}body:has(.sticky-marketing-cta) main{padding-bottom:96px}}.villa-gallery-grid{grid-template-columns:1fr;gap:16px;margin-bottom:64px;display:grid}@media (min-width:768px){.villa-gallery-grid{grid-template-columns:repeat(2,1fr);gap:24px}}@media (min-width:1024px){.villa-gallery-grid{grid-template-columns:repeat(3,1fr)}}.villa-hero-mobile,.brochure-photo-carousel{display:none}@media (max-width:768px){.villa-hero,.brochure-photo-grid{display:none!important}.villa-hero-mobile,.brochure-photo-carousel{display:block}}.bls-photo-carousel{border-radius:var(--radius-2);background:var(--bls-sand);width:100%;position:relative;overflow:hidden}.bls-photo-carousel__track{scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;width:100%;height:100%;display:flex;overflow-x:auto}.bls-photo-carousel__track::-webkit-scrollbar{display:none}.bls-photo-carousel__slide{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;width:100%;height:100%;position:relative}.bls-photo-carousel__slide img{object-fit:cover}.bls-photo-carousel__dots{pointer-events:none;gap:6px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.bls-photo-carousel__dot{background:#ffffff8c;border-radius:999px;width:6px;height:6px;transition:background .2s,transform .2s}.bls-photo-carousel__dot.is-active{background:var(--bls-offwhite);transform:scale(1.3)}.bls-photo-carousel__view-all{background:var(--bls-offwhite);color:var(--bls-ink);font-family:var(--font-body);box-shadow:var(--shadow-2);cursor:pointer;border:0;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;position:absolute;bottom:12px;right:12px}.bls-photo-carousel__view-all:hover{background:var(--bls-aperol);color:var(--bls-offwhite)}
