@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.0e__wj8580tc5.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/e629b5bc06499d58-s.10u7vx61f1ie7.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/1a099d89ee94ee96-s.35a5cae5tspm2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.18rizl4rsrl42.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans Fallback;src:local(Arial);ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.0%;size-adjust:104.98%}.plus_jakarta_sans_76f6c662-module__cgTQqG__className{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.plus_jakarta_sans_76f6c662-module__cgTQqG__variable{--font-jakarta:"Plus Jakarta Sans", "Plus Jakarta Sans Fallback"}
@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_ad1bb7b9-module__XsHlgG__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_ad1bb7b9-module__XsHlgG__variable{--font-fraunces:"Fraunces", "Fraunces Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-jakarta);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.block{display:block}.flex{display:flex}.hidden{display:none}.h-full{height:100%}.min-h-full{min-height:100%}.flex-col{flex-direction:column}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--background:#f6f3ed;--foreground:#17211f;--muted:#64706b;--paper:#fffdf8;--line:#17211f1f;--ink-soft:#17211fb8;--teal:#007d7e;--teal-deep:#063f42;--sea:#23a7a0;--coral:#ef6f4e;--sand:#e8dccb;--lime:#cad86d;--shadow:0 28px 80px #17211f24}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);color:var(--foreground);font-family:var(--font-jakarta), Arial, Helvetica, sans-serif;margin:0}body::selection{background:var(--lime);color:#111}a{color:inherit;text-decoration:none}img{max-width:100%}.site-header{z-index:20;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffdf8c2;border:1px solid #ffffff6b;border-radius:999px;justify-content:space-between;align-items:center;gap:14px;max-width:1220px;margin:0 auto;padding:8px 9px;display:flex;position:fixed;inset:28px 18px auto;box-shadow:0 18px 60px #0000001f}.brand{color:var(--teal-deep);flex:none;align-items:center;gap:10px;padding:4px 12px 4px 4px;font-weight:900;display:flex}.brand img{border-radius:50%;width:42px;height:42px}nav{scrollbar-width:none;gap:2px;display:flex;overflow-x:auto}nav::-webkit-scrollbar{display:none}nav a{color:#17211fc7;border-radius:999px;flex:none;padding:11px 13px;font-size:.9rem;font-weight:800;transition:background .18s,color .18s,transform .18s}nav a:hover{color:#fffdf8;background:#17211f;transform:translateY(-1px)}.lang-dropdown{flex:none;position:relative}.lang-trigger{border:1px solid var(--line);color:#17211fb3;cursor:pointer;background:#fffdf8b8;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;padding:0;transition:background .18s,color .18s;display:flex}.lang-trigger:hover,.lang-dropdown:hover .lang-trigger,.lang-dropdown.open .lang-trigger{color:#fffdf8;background:#17211f}.lang-menu{z-index:30;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffdf8f5;border:1px solid #ffffff80;border-radius:16px;min-width:144px;margin:0;padding:5px;list-style:none;display:none;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 32px #00000024}.lang-dropdown:hover .lang-menu,.lang-dropdown.open .lang-menu{display:block}.lang-menu li{padding:0}.lang-menu button{color:#17211fc7;cursor:pointer;width:100%;font:inherit;text-align:left;background:0 0;border:0;border-radius:10px;padding:9px 13px;font-size:.88rem;font-weight:700;transition:background .14s,color .14s;display:block}.lang-menu button:hover{background:#17211f14}.lang-menu button.active{background:var(--foreground);color:var(--paper);font-weight:900}.hero{isolation:isolate;min-height:100svh;position:relative;overflow:hidden}.hero-image{object-fit:cover}.hero-overlay{z-index:1;background:radial-gradient(circle at 73% 18%,#23a7a042,#0000 30%),linear-gradient(90deg,#031f22d6,#031f2247 55%,#031f220a),linear-gradient(#0000 52%,#03121494);position:absolute;inset:0}.hero-inner{z-index:2;grid-template-columns:minmax(0,1fr) minmax(270px,360px);align-items:end;gap:clamp(26px,5vw,70px);max-width:1260px;min-height:100svh;margin:0 auto;padding:178px clamp(20px,5vw,64px) 70px;display:grid;position:relative}.hero-copy{color:#fffdf8;max-width:780px}.eyebrow{color:var(--coral);letter-spacing:.13em;text-transform:uppercase;margin:0 0 14px;font-size:.76rem;font-weight:950;line-height:1.25}.hero .eyebrow{color:#fff0a6}h1,h2,h3,h4,p{margin-top:0}h1{max-width:800px;font-family:var(--font-fraunces), Georgia, serif;letter-spacing:0;margin-bottom:18px;font-size:clamp(4rem,10vw,9rem);font-weight:760;line-height:.92}h2{max-width:900px;font-family:var(--font-fraunces), Georgia, serif;letter-spacing:0;margin-bottom:18px;font-size:clamp(2.35rem,5.6vw,5.7rem);font-weight:690;line-height:1}h3{font-family:var(--font-fraunces), Georgia, serif;letter-spacing:0;margin-bottom:12px;font-size:clamp(1.35rem,2.3vw,2.15rem);font-weight:690;line-height:1.06}h4{letter-spacing:0;margin:0;font-size:1rem;line-height:1.2}p{color:var(--muted);font-size:1.03rem;line-height:1.68}.hero-copy p:not(.eyebrow){color:#fffdf8e6;max-width:640px;font-size:clamp(1.12rem,2vw,1.42rem)}.actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.button{border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:13px 19px;font-weight:900;line-height:1.15;transition:transform .18s,box-shadow .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--coral);color:#fff;box-shadow:0 18px 44px #ef6f4e52}.button.glass{color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff21;border:1px solid #ffffff6b}.button.outline{border:1px solid var(--line);background:var(--paper);color:var(--foreground)}.booking-panel{color:#fffdf8;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffdf829;border:1px solid #ffffff59;border-radius:8px;align-self:end;gap:8px;padding:24px;display:grid}.booking-panel span{color:#fff0a6;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:950}.booking-panel strong{font-size:clamp(2.5rem,5vw,4.7rem);line-height:.9}.booking-panel p{color:#fffdf8cc;margin-bottom:10px}.booking-panel a{overflow-wrap:anywhere;color:#fff;font-weight:850}.stats-strip{z-index:3;grid-template-columns:repeat(4,minmax(0,1fr));max-width:1260px;margin:-38px auto 0;padding:0 clamp(20px,5vw,64px);display:grid;position:relative}.stats-strip div{border-right:1px solid var(--line);background:var(--paper);align-content:center;gap:6px;min-height:108px;padding:24px;display:grid;box-shadow:0 16px 50px #17211f1a}.stats-strip div:first-child{border-radius:8px 0 0 8px}.stats-strip div:last-child{border-right:0;border-radius:0 8px 8px 0}.stats-strip strong{color:var(--teal-deep);font-size:clamp(1.55rem,3vw,2.45rem);line-height:1}.stats-strip span{color:var(--muted);font-weight:800}.section-pad{padding:clamp(74px,10vw,140px) clamp(20px,5vw,64px)}.intro-grid,.section-heading,.villa-detail-grid,.price-layout,.availability,.contact-section,.gallery-grid,.destination-groups{max-width:1260px;margin:0 auto}.intro-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(34px,7vw,96px);display:grid}.prose p:last-child,.section-heading p:last-child,.content-block p:last-child{margin-bottom:0}.section-heading{margin-bottom:clamp(34px,5vw,58px)}.section-heading.split{grid-template-columns:minmax(0,1.08fr) minmax(280px,.72fr);align-items:end;gap:clamp(28px,6vw,80px);display:grid}.section-heading.split p:not(.eyebrow){margin-bottom:10px}.villa-showcase{background:#fffdf8}.moment-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr) minmax(0,.85fr);align-items:stretch;gap:16px;max-width:1260px;margin:0 auto;display:grid}.moment-grid article{background:#d9d3c7;border-radius:8px;min-height:430px;position:relative;overflow:hidden}.moment-grid article.large{min-height:540px}.moment-grid img,.gallery-grid img,.destination-card img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.moment-grid article:hover img,.gallery-tile:not(:disabled):hover img,.gallery-tile:not(:disabled):focus-visible img,.destination-card:hover img{transform:scale(1.035)}.moment-grid article:after{content:"";background:linear-gradient(#0000 45%,#0000009e);position:absolute;inset:0}.moment-grid article div{z-index:1;color:#fff;padding:24px;position:absolute;inset:auto 0 0}.moment-grid article p{color:#ffffffd1;margin-bottom:0}.villa-detail-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(30px,6vw,78px);margin-top:clamp(54px,8vw,96px);display:grid}.interior-stack{grid-template-columns:1fr .82fr;align-items:end;gap:14px;display:grid}.interior-stack img{aspect-ratio:4/5;object-fit:cover;width:100%;box-shadow:var(--shadow);border-radius:8px}.interior-stack img:last-child{aspect-ratio:4/3;transform:translateY(34px)}.content-block{max-width:650px}.check-list,.price-layout ul{gap:10px;margin:22px 0 0;padding:0;list-style:none;display:grid}.check-list li,.price-layout li{color:var(--ink-soft);padding-left:26px;line-height:1.55;position:relative}.check-list li:before,.price-layout li:before{content:"";background:var(--sea);border-radius:999px;width:10px;height:10px;position:absolute;top:.64em;left:0}.prices{color:#fffdf8;background:#17211f}.prices .eyebrow{color:var(--lime)}.prices p{color:#fffdf8bd}.price-layout{grid-template-columns:1.2fr repeat(3,minmax(0,1fr));gap:14px;display:grid}.price-layout article{background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;min-height:290px;padding:clamp(22px,3vw,32px)}.price-layout article:not(.rate-card){-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.price-layout li{color:#fffdf8d1}.rate-card{color:#17211f;background:var(--lime)!important}.rate-card span{color:#17211f9e;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px;font-size:.78rem;font-weight:950;display:block}.rate-card strong{margin-bottom:18px;font-size:clamp(3.2rem,6vw,5.5rem);line-height:.86;display:block}.rate-card p{color:#17211fb8}.availability{grid-template-columns:minmax(260px,.46fr) minmax(680px,1.54fr);align-items:center;gap:clamp(28px,4vw,58px);display:grid}.availability .content-block h2{font-size:clamp(2.15rem,4.7vw,4.7rem)}.calendar-card{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.booking-tool{grid-template-columns:minmax(420px,1fr) minmax(320px,.68fr);gap:clamp(20px,3vw,34px);padding:clamp(18px,3vw,28px);display:grid}.booking-calendar{min-width:0}.calendar-topline{justify-content:space-between;align-items:start;gap:18px;margin-bottom:22px;display:flex}.calendar-topline h3{margin-bottom:0}.calendar-controls{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.calendar-controls button{border:1px solid var(--line);background:var(--paper);min-height:38px;color:var(--foreground);cursor:pointer;font-family:var(--font-jakarta), Arial, Helvetica, sans-serif;border-radius:999px;padding:8px 12px;font-size:.82rem;font-weight:900}.calendar-controls button:disabled{cursor:not-allowed;opacity:.42}.calendar-legend{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-bottom:18px;display:flex}.legend{min-height:32px;color:var(--ink-soft);background:#f4f1ea;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:.78rem;font-weight:900;display:inline-flex}.legend:before{content:"";border-radius:999px;width:9px;height:9px}.legend.available:before{background:#2fb875}.legend.booked:before{background:#d84a35}.legend.selected:before{background:var(--teal)}.legend.highlighted:before{background:#f4d24f}.weekday-row,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;display:grid}.weekday-row{margin-bottom:8px}.weekday-row span{color:var(--muted);text-align:center;text-transform:uppercase;font-size:.75rem;font-weight:950}.calendar-day{border:1px solid var(--line);min-height:70px;color:inherit;cursor:pointer;font:inherit;text-align:left;background:#f8f5ee;border-radius:8px;align-content:space-between;gap:8px;padding:10px;transition:border-color .16s,box-shadow .16s,transform .16s,background .16s;display:grid;position:relative}.calendar-day.available{background:linear-gradient(#2fb87529,#2fb87512);border-color:#2fb8755c}.calendar-day.available:hover,.calendar-day.available:focus-visible{border-color:#007d7e8f;transform:translateY(-1px);box-shadow:0 12px 28px #007d7e24}.calendar-day:focus-visible{outline-offset:2px;outline:3px solid #cad86de6}.calendar-day.booked,.calendar-day.selected.booked{cursor:not-allowed;background:linear-gradient(#d84a3547,#d84a351f);border-color:#d84a3573}.calendar-day.selected{background:linear-gradient(#007d7e38,#23a7a021);border-color:#007d7ea6;box-shadow:inset 0 0 0 2px #007d7e3d}.calendar-day.unavailable:not(.booked){color:#17211f6b;cursor:not-allowed;background:#eee9df}.calendar-day.muted{opacity:.35;cursor:default}.date-number{color:var(--foreground);font-size:1rem;font-weight:950}.date-note{color:var(--ink-soft);font-size:.72rem;font-weight:900}.calendar-day.available .date-note{color:#0b7042}.calendar-day.booked .date-note{color:#9a2d20}.calendar-day.selected .date-note{color:var(--teal-deep)}.date-tooltip{color:#fff;white-space:nowrap;pointer-events:none;z-index:30;background:#17211fe0;border-radius:5px;padding:3px 8px;font-size:.7rem;font-weight:600;display:none;position:absolute;bottom:calc(100% + 5px);left:50%;transform:translate(-50%)}.calendar-day:hover .date-tooltip{display:block}.request-card.calendar-highlighted{border-color:#007d7ea6;transform:translateY(-1px);box-shadow:0 0 0 3px #007d7e2e}.calendar-day.highlighted,.calendar-day.booked.highlighted,.calendar-day.selected.highlighted{background:linear-gradient(#f4d24f85,#f4d24f38);border-color:#cc9a00ad;box-shadow:inset 0 0 0 2px #cc9a0038,0 14px 32px #cc9a0024}.booking-summary{border:1px solid var(--line);background:linear-gradient(135deg,#ef6f4e1f,#0000 46%),#fffaf1;border-radius:8px;align-content:start;gap:14px;min-width:0;padding:clamp(18px,3vw,24px);display:grid}.booking-summary h3{margin-bottom:8px}.booking-summary p{margin-bottom:0;font-size:.95rem;line-height:1.5}.booking-total{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:2px 0 4px;display:grid}.booking-total div{border:1px solid var(--line);background:#fffdf8c2;border-radius:8px;align-content:center;gap:4px;min-height:78px;padding:12px;display:grid}.booking-total dt{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:950}.booking-total dd{color:var(--foreground);overflow-wrap:anywhere;margin:0;font-size:.98rem;font-weight:900}.booking-summary label{color:var(--foreground);gap:7px;font-size:.86rem;font-weight:900;display:grid}.nights-control-label{max-width:100%}.nights-stepper{align-items:stretch;gap:8px;width:100%;display:flex}.nights-stepper input[type=number]{appearance:textfield;flex:auto;min-width:0}.nights-stepper input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.nights-stepper input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.nights-stepper-buttons{flex:none;gap:6px;display:flex}.nights-stepper-buttons button{width:52px;min-height:46px;color:var(--teal-deep);cursor:pointer;font:inherit;background:#fffdf8;border:1px solid #007d7e57;border-radius:8px;font-size:1.12rem;font-weight:950;line-height:1;transition:border-color .16s,box-shadow .16s,transform .16s}.nights-stepper-buttons button:not(:disabled):hover,.nights-stepper-buttons button:not(:disabled):focus-visible{border-color:#007d7ead;transform:translateY(-1px);box-shadow:0 10px 22px #007d7e1f}.nights-stepper-buttons button:disabled{cursor:not-allowed;opacity:.4}.guest-details{gap:14px;display:grid}.guest-name-grid,.phone-field{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.phone-field{align-items:end}.phone-field .field-hint{color:var(--muted);grid-column:1/-1;margin:-4px 0 0;font-size:.78rem;font-weight:800;line-height:1.35}.phone-country-select{display:block;position:relative}.phone-country-select select{padding-left:48px}.phone-flag{z-index:1;pointer-events:none;border-radius:3px;width:26px;height:18px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.field-warning{color:#9a2d20;margin:-4px 0 0;font-size:.86rem;font-weight:900}.guest-count-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.checkbox-line{align-items:center;min-height:34px;grid-template-columns:28px minmax(0,1fr)!important;column-gap:12px!important;display:grid!important}.checkbox-line span{gap:2px;line-height:1.25;display:grid}.booking-review{gap:14px;display:grid}.booking-review h4{color:var(--teal-deep)}.booking-review dl,.price-breakdown{gap:8px;margin:0;display:grid}.booking-review dl div,.price-breakdown{border:1px solid var(--line);background:#fffdf8c2;border-radius:8px;padding:12px}.booking-review dt,.price-breakdown span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:950}.booking-review dd{margin:0;font-weight:900}.price-breakdown{grid-template-columns:minmax(0,1fr) auto;align-items:center}.price-breakdown strong{color:var(--foreground);font-weight:950}.booking-summary input,.booking-summary select,.booking-summary textarea{border:1px solid var(--line);background:var(--paper);width:100%;min-height:46px;color:var(--foreground);font:inherit;border-radius:8px;padding:11px 12px}.booking-summary .checkbox-line input[type=checkbox]{width:24px;height:24px;min-height:24px;accent-color:var(--teal);margin:0;padding:0}.booking-summary input:focus,.booking-summary select:focus,.booking-summary textarea:focus{border-color:var(--teal);outline:3px solid #007d7e24}.booking-summary textarea{resize:vertical;padding:10px 12px;line-height:1.45}.booking-actions{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.booking-wide-button{cursor:pointer;width:100%;font:inherit;border:0}.booking-actions .button{cursor:pointer;font:inherit;border:0}.booking-actions .button:disabled,.booking-wide-button:disabled{cursor:not-allowed;filter:grayscale(.3);opacity:.48;transform:none}.booking-status{border-left:4px solid var(--coral);min-height:42px;color:var(--ink-soft);padding-left:12px;font-size:.92rem;font-weight:800}.curacao-section{background:var(--paper)}.destination-groups{gap:clamp(38px,6vw,68px);display:grid}.map-card{border:1px solid var(--line);background:var(--paper);max-width:1260px;box-shadow:var(--shadow);border-radius:8px;grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);align-items:stretch;gap:0;margin:0 auto clamp(48px,7vw,82px);display:grid;overflow:hidden}.map-copy{background:linear-gradient(135deg, #cad86d29, transparent 48%), var(--paper);align-content:center;padding:clamp(28px,4vw,48px);display:grid}.map-copy h3{max-width:11em}.map-copy ul{gap:10px;margin:22px 0 0;padding:0;list-style:none;display:grid}.map-copy li{color:var(--ink-soft);padding-left:24px;line-height:1.55;position:relative}.map-copy li:before{content:"";background:var(--coral);border-radius:999px;width:9px;height:9px;position:absolute;top:.66em;left:0}.map-frame{background:var(--sand);min-height:460px;position:relative;overflow:hidden}.map-frame iframe{border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.destination-group{grid-template-columns:minmax(240px,.28fr) minmax(0,1fr);align-items:start;gap:clamp(26px,4vw,42px);display:grid}.group-heading{min-width:0;position:sticky;top:110px}.group-heading h3{overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;max-width:8.8em}.group-heading p{font-size:.98rem}.destination-rail{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;display:grid}.destination-card{aspect-ratio:4/3;border:1px solid var(--line);background:#17211f;border-radius:8px;min-height:170px;position:relative;overflow:hidden}.destination-card img{aspect-ratio:auto;object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.destination-card:after{content:"";pointer-events:none;background:linear-gradient(#0000 42%,#0000009e);position:absolute;inset:0}.destination-card h4{z-index:1;color:#fffdf8;width:fit-content;max-width:calc(100% - 24px);font-family:var(--font-jakarta), Arial, Helvetica, sans-serif;text-shadow:0 1px 12px #00000057;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f1816b8;border:1px solid #ffffff52;border-radius:999px;padding:9px 11px;font-size:.9rem;font-weight:900;line-height:1.1;position:absolute;inset:auto 12px 12px}.gallery-section{color:#fffdf8;background:#111816}.gallery-section .eyebrow{color:var(--lime)}.gallery-section p{color:#fffdf8b8}.gallery-grid{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-flow:dense;gap:10px;display:grid}.gallery-tile{cursor:zoom-in;background:#28302d;border:0;border-radius:8px;min-height:220px;margin:0;padding:0;position:relative;overflow:hidden}.gallery-tile:after{content:"";border:1px solid #fff0;border-radius:8px;transition:border-color .18s,background .18s;position:absolute;inset:0}.gallery-tile:hover:after,.gallery-tile:focus-visible:after{background:#ffffff0f;border-color:#ffffffa8}.gallery-tile:focus-visible{outline:3px solid var(--lime);outline-offset:3px}.gallery-tile:disabled{cursor:default}.gallery-tile:disabled:after{display:none}.lightbox{z-index:50;place-items:center;padding:clamp(10px,2vw,24px);display:grid;position:fixed;inset:0}.lightbox-backdrop{cursor:zoom-out;background:#040a09e0;border:0;position:absolute;inset:0}.lightbox-content{z-index:1;place-items:center;width:min(100%,1480px);height:min(100%,940px);display:grid;position:relative}.lightbox-content img{object-fit:contain;border-radius:8px;width:auto;max-width:100%;height:auto;max-height:calc(100svh - 76px);box-shadow:0 34px 90px #0000007a}.lightbox-close,.lightbox-nav{z-index:2;color:#fffdf8;cursor:pointer;min-height:44px;font-family:var(--font-jakarta), Arial, Helvetica, sans-serif;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf824;border:1px solid #ffffff3d;border-radius:999px;font-weight:900;position:absolute}.lightbox-close{padding:0 18px;top:0;right:0}.lightbox-nav{padding:0 16px;top:50%;transform:translateY(-50%)}.lightbox-nav.previous{left:0}.lightbox-nav.next{right:0}.lightbox-count{color:#fffdf8db;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf824;border-radius:999px;margin:0;padding:9px 13px;font-size:.9rem;font-weight:900;position:absolute;bottom:0;right:0}.contact-section{grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);align-items:start;gap:clamp(32px,6vw,84px);display:grid}.contact-card{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);border-radius:8px;gap:14px;padding:clamp(24px,4vw,38px);display:grid}.contact-card a{overflow-wrap:anywhere;color:var(--teal);font-size:1.08rem;font-weight:900}.contact-card p{white-space:pre-line;margin:8px 0 0}.admin-page{background:var(--background);min-height:100svh;padding:clamp(28px,5vw,58px)}.admin-hero,.admin-layout{max-width:1260px;margin:0 auto}.admin-hero{justify-content:space-between;align-items:end;gap:24px;margin-bottom:clamp(26px,4vw,42px);display:flex}.admin-hero-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.admin-hero-actions .button{border:1px solid var(--line);cursor:pointer;font:inherit}.admin-hero h1{color:var(--teal-deep);margin-bottom:12px;font-size:clamp(3.6rem,8vw,7.6rem)}.admin-hero p{max-width:660px;margin-bottom:0}.admin-layout{grid-template-columns:minmax(440px,.92fr) minmax(0,1.08fr);align-items:start;gap:22px;display:grid}.admin-login-card{border:1px solid var(--line);background:var(--paper);width:min(100%,520px);box-shadow:var(--shadow);border-radius:8px;gap:16px;margin:clamp(38px,8vw,100px) auto;padding:clamp(24px,4vw,38px);display:grid}.admin-login-card h1{color:var(--teal-deep);margin-bottom:0;font-size:clamp(3.2rem,7vw,5.6rem)}.admin-login-card p{margin-bottom:0}.admin-login-card label{color:var(--foreground);gap:7px;font-size:.86rem;font-weight:900;display:grid}.admin-login-card input{border:1px solid var(--line);background:var(--paper);min-height:46px;color:var(--foreground);font:inherit;border-radius:8px;padding:11px 12px}.admin-login-card .button{cursor:pointer;font:inherit;border:0}.admin-calendar-card,.request-card{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);border-radius:8px}.admin-calendar-card{padding:clamp(18px,3vw,28px)}.admin-legend{justify-content:flex-start}.admin-calendar-grid .calendar-day{min-height:76px}.calendar-day.manual{box-shadow:none;background:repeating-linear-gradient(45deg,#d84a352e 0 5px,#beb2a22e 5px 13px);border-color:#b4786459}.admin-requests{gap:24px;display:grid}.admin-section-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:12px;display:flex}.admin-section-heading h2{margin-bottom:0;font-size:clamp(2rem,4vw,3.6rem)}.admin-empty{border:1px dashed var(--line);background:#fffdf894;border-radius:8px;padding:22px}.request-list{gap:12px;display:grid}.request-list.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.request-card{cursor:pointer;gap:12px;padding:clamp(18px,3vw,24px);transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.request-card:hover{border-color:#007d7e42;transform:translateY(-1px)}.request-card h3{font-family:var(--font-jakarta), Arial, Helvetica, sans-serif;margin-bottom:0;font-size:1.12rem}.request-card p{margin-bottom:0;font-size:.96rem;line-height:1.45}.confirmed-booking-card{background:linear-gradient(135deg, #d84a3514, transparent 44%), var(--paper);border-color:#d84a3547}.booking-status-badge{color:#9a2d20;letter-spacing:.08em;text-transform:uppercase;background:#d84a351f;border-radius:999px;width:fit-content;padding:6px 10px;font-size:.72rem;font-weight:950;line-height:1}.booking-status-badge.archived{color:var(--muted);background:#64706b24}.archived-booking-card{background:linear-gradient(135deg, #64706b14, transparent 44%), var(--paper);border-color:#64706b38}.booking-date-pills{flex-wrap:wrap;gap:7px;display:flex}.booking-date-pills span{color:var(--teal-deep);background:#007d7e14;border:1px solid #007d7e2e;border-radius:999px;padding:7px 9px;font-size:.78rem;font-weight:900;line-height:1}.admin-edit-form{border-top:1px solid var(--line);gap:12px;padding-top:12px;display:grid}.admin-edit-form label{color:var(--foreground);gap:7px;font-size:.84rem;font-weight:900;display:grid}.admin-edit-form input,.admin-edit-form select{border:1px solid var(--line);background:var(--paper);min-height:42px;color:var(--foreground);font:inherit;border-radius:8px;padding:9px 11px}.request-card dl{gap:8px;margin:0;display:grid}.request-card dl div{grid-template-columns:86px minmax(0,1fr);gap:12px;display:grid}.request-card dt{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:950}.request-card dd{overflow-wrap:anywhere;color:var(--foreground);margin:0;font-weight:800}.admin-card-actions{flex-wrap:wrap;gap:10px;display:flex}.admin-card-actions .button,.request-card>.button{cursor:pointer;font:inherit;border:0}.admin-card-actions .button.danger{color:#9a2d20;border:1px solid #d84a3552}.button.danger-fill{color:#fff;background:#9a2d20;box-shadow:0 18px 44px #9a2d203d}.confirm-modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#17211f85;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.confirm-modal{background:linear-gradient(135deg, #ef6f4e1f, transparent 48%), var(--paper);border:1px solid #ffffff80;border-radius:8px;gap:14px;width:min(100%,520px);padding:clamp(22px,4vw,34px);display:grid;box-shadow:0 34px 90px #00000047}.booking-detail-modal{background:linear-gradient(135deg,#007d7e12,#0000 36%),#fffdf8;border:1px solid #17211f29;border-radius:8px;gap:16px;width:min(100vw - 36px,1040px);max-height:min(92svh,900px);padding:clamp(18px,3vw,28px);display:grid;overflow:auto;box-shadow:0 34px 90px #00000057}.booking-detail-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.admin-page .booking-detail-header h2{color:var(--teal-deep);margin:0 0 6px;font-size:clamp(1.8rem,4vw,3rem);line-height:1}.booking-detail-header p:not(.eyebrow){margin-bottom:0}.booking-detail-header-actions{align-items:center;gap:10px;display:flex}.booking-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-page .booking-detail-panel{border:1px solid var(--line);background:#fffaf1;border-radius:8px;align-content:start;gap:14px;padding:16px;display:grid}.booking-detail-panel.wide{grid-column:1/-1}.booking-detail-panel.admin-edit-panel{background:linear-gradient(135deg,#007d7e14,#0000 44%),#fffdf8;border-color:#007d7e3d;order:2;grid-column:1/-1}.booking-info-panel{order:1}.booking-price-panel{order:3}.booking-detail-panel.wide{order:4}.admin-page .booking-detail-panel h3{color:var(--teal-deep);font-family:var(--font-jakarta), Arial, Helvetica, sans-serif;margin-bottom:0;font-size:1.05rem;line-height:1.2}.detail-list{gap:8px;margin:0;display:grid}.detail-list div{grid-template-columns:128px minmax(0,1fr);gap:12px;display:grid}.detail-list dt{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:950}.detail-list dd{overflow-wrap:anywhere;margin:0;font-weight:850}.admin-detail-form{gap:12px;display:grid}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-detail-form label{color:var(--foreground);gap:7px;font-size:.84rem;font-weight:900;display:grid}.admin-detail-form input,.admin-detail-form select,.admin-detail-form textarea{border:1px solid var(--line);background:var(--paper);width:100%;min-height:42px;color:var(--foreground);font:inherit;border-radius:8px;padding:9px 11px}.admin-detail-form .button{cursor:pointer;width:fit-content;font:inherit;border:0}.admin-detail-form textarea{resize:vertical;line-height:1.45}.admin-detail-form .checkbox-line input[type=checkbox]{width:24px;height:24px;min-height:24px;accent-color:var(--teal);margin:0;padding:0}.interaction-log{gap:10px;margin:0;padding:0;list-style:none;display:grid}.interaction-log li{border-left:4px solid #007d7e47;padding:4px 0 4px 12px}.interaction-log time{color:var(--muted);font-size:.78rem;font-weight:900}.interaction-log p{color:var(--foreground);margin:3px 0 0;font-size:.92rem;line-height:1.45}.booking-detail-actions{flex-wrap:wrap;gap:10px;display:flex}.compact-empty{padding:14px}.confirm-modal h2{color:var(--teal-deep);margin-bottom:0;font-size:clamp(2rem,5vw,3.6rem)}.confirm-modal p:not(.eyebrow){margin-bottom:0}@media (max-width:1100px){.site-header{border-radius:24px;flex-direction:column;align-items:flex-start}nav{width:100%}.hero-inner,.section-heading.split,.intro-grid,.villa-detail-grid,.map-card,.availability,.booking-tool,.contact-section{grid-template-columns:1fr}.price-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-layout,.request-list.compact,.booking-detail-grid,.admin-form-grid,.guest-name-grid,.phone-field{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.destination-group{grid-template-columns:1fr}.group-heading{position:static}.destination-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.destination-card{min-height:160px}.guest-count-grid{grid-template-columns:1fr}}@media (max-width:860px){.brand{display:none}.lang-dropdown{position:absolute;top:50%;right:9px;transform:translateY(-50%)}nav{justify-content:space-between;gap:1px;width:100%;padding-right:46px;overflow:visible}nav a{text-align:center;flex:auto;min-width:0;padding:8px 3px;font-size:clamp(.58rem,2.1vw,.72rem)}.hero-inner{padding-top:190px}.booking-panel{max-width:420px}.stats-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-strip div,.stats-strip div:first-child,.stats-strip div:last-child{border-radius:0}.stats-strip div:first-child{border-radius:8px 0 0}.stats-strip div:nth-child(2){border-right:0;border-radius:0 8px 0 0}.stats-strip div:nth-child(3){border-radius:0 0 0 8px}.stats-strip div:nth-child(4){border-right:0;border-radius:0 0 8px}.moment-grid{grid-template-columns:1fr}.moment-grid article,.moment-grid article.large{min-height:380px}.destination-card{min-height:150px}.map-frame,.map-frame iframe{min-height:360px}.calendar-day{min-height:68px;padding:8px}.date-note{font-size:.68rem}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-tile{grid-area:auto;min-height:260px}.lightbox{padding:10px}.lightbox-content{height:100%;padding:50px 0}.lightbox-content img{max-height:calc(100svh - 94px)}.lightbox-nav{top:auto;bottom:0;transform:none}.lightbox-nav.previous{left:0}.lightbox-nav.next{right:0}.lightbox-count{right:50%;transform:translate(50%)}}@media (max-width:560px){.site-header{gap:6px;padding:8px 10px;inset:16px 10px auto}.lang-dropdown{right:10px}nav{justify-content:space-between;gap:1px;width:100%;padding-right:46px;overflow:visible}nav a{text-align:center;flex:auto;min-width:0;padding:7px 1px;font-size:clamp(.52rem,2vw,.62rem)}.hero-inner{padding-left:18px;padding-right:18px}h1{font-size:clamp(3.4rem,18vw,5.4rem)}.actions,.button{width:100%}.stats-strip,.price-layout,.destination-rail,.gallery-grid{grid-template-columns:1fr}.stats-strip div,.stats-strip div:first-child,.stats-strip div:nth-child(2),.stats-strip div:nth-child(3),.stats-strip div:nth-child(4){border-right:0;border-radius:0}.stats-strip div:first-child{border-radius:8px 8px 0 0}.stats-strip div:last-child{border-radius:0 0 8px 8px}.interior-stack{grid-template-columns:1fr}.interior-stack img:last-child{transform:none}.map-frame,.map-frame iframe{min-height:300px}.calendar-topline{display:grid}.calendar-controls,.calendar-legend{justify-content:flex-start}.weekday-row,.calendar-grid{gap:4px}.calendar-day{border-radius:6px;min-height:58px;padding:6px}.date-number{font-size:.88rem}.date-note{font-size:.6rem}.booking-tool{padding:14px}.booking-total{grid-template-columns:1fr}.admin-page{padding:18px}.admin-hero{display:grid}.admin-calendar-card{padding:14px}.admin-calendar-grid .calendar-day{min-height:58px}.request-card dl div{grid-template-columns:1fr;gap:2px}}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
