:root{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#ece6dd;--paper-deep:#e3dbcf;--ink:#5e4636;--ink-soft:#8a735f;--sand:#c9b8a5;--teak:#765b40;--sea:#a9d4cc;--white:#fbf8f3;--f-caps:"Jost", "Futura", "Avenir Next", system-ui, sans-serif;--f-serif:"Instrument Serif", "Cormorant Garamond", Georgia, serif;--f-body:"Hanken Grotesk", "Helvetica Neue", system-ui, sans-serif;--t-label:.72rem;--t-body:1.02rem;--t-line:clamp(1.9rem, 4.6vw, 3.4rem);--t-mark:clamp(2.2rem, 7vw, 5.2rem);--gutter:clamp(16px, 5vw, 72px);--space:clamp(64px, 12vw, 160px);--measure:34rem;--ease:cubic-bezier(.16, 1, .3, 1)}html{background:var(--paper)}body{background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:var(--t-body);-webkit-font-smoothing:antialiased;line-height:1.7}img{max-width:100%;height:auto;display:block}a{color:inherit}:focus-visible{outline:2px solid var(--teak);outline-offset:3px}.caps{font-family:var(--f-caps);text-transform:uppercase;letter-spacing:.32em;font-weight:300;font-size:var(--t-label);color:var(--ink-soft)}.serif{font-family:var(--f-serif);letter-spacing:-.005em;text-wrap:balance;color:var(--ink);font-weight:400;line-height:1.12}.serif em{font-style:italic}.top{padding:22px var(--gutter);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.topnav{gap:22px;display:flex}.top a.caps{border-bottom:1px solid var(--sand);color:var(--ink);padding-bottom:3px;text-decoration:none}.cover{text-align:center;min-height:72svh;padding:48px var(--gutter) var(--space);place-items:center;display:grid}.cover .mark{font-family:var(--f-caps);font-weight:300;font-size:var(--t-mark);letter-spacing:.28em;text-indent:.28em;color:var(--ink);text-transform:uppercase;line-height:1.1}.cover .sub{margin-top:22px}.cover .sub2{letter-spacing:.24em;margin-top:10px}figure{margin:0}.bleed img{aspect-ratio:2752/1536;object-fit:cover;width:100%}figcaption{padding:12px var(--gutter) 0;flex-wrap:wrap;justify-content:space-between;gap:16px;display:flex}.pair{padding:0 var(--gutter);grid-template-columns:1fr 1fr;gap:clamp(12px,2vw,24px);display:grid}.pair figcaption{padding:12px 0 0}.pair img{aspect-ratio:4/5;object-fit:cover;width:100%}.inset{padding:0 var(--gutter)}.inset img{aspect-ratio:2752/1536;object-fit:cover;width:100%}.inset figcaption{padding:12px 0 0}.page{padding:var(--space) var(--gutter)}.page.narrow{max-width:calc(var(--measure) + 2 * var(--gutter));margin:0 auto}.page .label{margin-bottom:28px;display:block}.page .line{font-size:var(--t-line)}.page p.body{max-width:var(--measure);margin-top:24px}.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:clamp(32px,6vw,96px);display:grid}.center{text-align:center}.center p.body{margin-left:auto;margin-right:auto}.words{font-family:var(--f-serif);color:var(--ink);text-wrap:balance;font-size:clamp(2.4rem,7.5vw,6rem);font-style:italic;line-height:1.05}.words .dot{color:var(--sand);padding:0 .12em;font-style:normal}.words .w{display:inline-block}.quiet{background:var(--paper-deep)}.btn{border:1px solid var(--teak);background:var(--teak);min-height:48px;color:var(--white);font-family:var(--f-caps);text-transform:uppercase;letter-spacing:.24em;cursor:pointer;transition:background .16s var(--ease), color .16s var(--ease), transform .12s var(--ease);justify-content:center;align-items:center;gap:10px;padding:0 26px;font-size:.74rem;font-weight:400;text-decoration:none;display:inline-flex}.btn:hover{background:var(--ink);border-color:var(--ink)}.btn:active{transform:scale(.98)}.btn.ghost{color:var(--teak);background:0 0}.btn.ghost:hover{background:var(--teak);color:var(--white)}.actions{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.facts{border-top:1px solid var(--sand);border-bottom:1px solid var(--sand);grid-template-columns:repeat(4,minmax(0,1fr));margin-top:48px;display:grid}.fact{border-right:1px solid var(--sand);padding:28px 20px 26px 0}.fact+.fact{padding-left:20px}.fact:last-child{border-right:0}.fact .n{font-family:var(--f-serif);color:var(--ink);font-size:clamp(2.2rem,4.4vw,3.4rem);line-height:1;display:block}.fact .caps{letter-spacing:.2em;margin-top:12px;line-height:1.6;display:block}.pillars{max-width:52rem;color:var(--ink-soft);margin-top:28px;font-size:.95rem}.plan-wrap{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,6vw,96px);display:grid}svg.plan{justify-self:center;width:100%;max-width:400px;height:auto}svg.plan .sea{fill:var(--sea);opacity:.55}svg.plan .plot{fill:#f3eee6;stroke:var(--teak);stroke-width:.35px}svg.plan .bld{fill:var(--sand);stroke:var(--teak);stroke-width:.15px}svg.plan .villa{fill:#d9cbb9;stroke:var(--teak);stroke-width:.15px}svg.plan .serv{fill:#ddd3c6;stroke:var(--ink-soft);stroke-width:.1px}svg.plan .water{fill:var(--sea);stroke:#7fb3aa;stroke-width:.15px}svg.plan .green{fill:#cfd5bf;stroke:none}svg.plan .lbl{font-family:var(--f-caps);letter-spacing:.1em;text-transform:uppercase;fill:var(--ink);text-anchor:middle;paint-order:stroke;stroke:#f3eee6;stroke-width:.5px;font-size:1.55px}svg.plan .cap{font-family:var(--f-caps);letter-spacing:.4em;fill:var(--ink-soft);text-anchor:middle;font-size:2.1px}svg.plan .na path{fill:var(--ink-soft)}svg.plan .sc line{stroke:var(--ink-soft);stroke-width:.25px}form{grid-template-columns:1fr 1fr;gap:22px 28px;max-width:52rem;margin-top:44px;display:grid}.field{flex-direction:column;gap:8px;min-width:0;display:flex}.field.full{grid-column:1/-1}.field label,.field legend{font-family:var(--f-caps);text-transform:uppercase;letter-spacing:.22em;color:var(--ink-soft);font-size:.68rem;font-weight:400}.field .opt{letter-spacing:.08em;text-transform:none;font-family:var(--f-body)}input[type=text],input[type=email],input[type=tel],select,textarea{width:100%;font:inherit;color:var(--ink);border:0;border-bottom:1px solid var(--sand);background:0 0;border-radius:0;padding:10px 0}textarea{resize:vertical;min-height:96px}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink-soft) 50%), linear-gradient(135deg, var(--ink-soft) 50%, transparent 50%);background-position:calc(100% - 12px) 55%,calc(100% - 7px) 55%;background-repeat:no-repeat;background-size:5px 5px}input:focus,select:focus,textarea:focus{border-bottom-color:var(--teak);outline:none}fieldset{border:0;min-width:0;margin:0;padding:0}.chips{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.chip{position:relative}.chip input{opacity:0;cursor:pointer;position:absolute;inset:0}.chip span{border:1px solid var(--sand);transition:background .16s var(--ease), border-color .16s var(--ease);padding:10px 16px;font-size:.9rem;display:inline-block}.chip input:checked+span{background:var(--teak);border-color:var(--teak);color:var(--white)}.chip input:focus-visible+span{outline:2px solid var(--teak);outline-offset:2px}.err{color:#8e3b2e;min-height:1.2em;font-size:.85rem}.form-foot{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:20px;margin-top:8px;display:flex}.form-foot .caps{letter-spacing:.16em}.done{border-top:1px solid var(--sand);max-width:52rem;margin-top:44px;padding-top:36px}.done .two{grid-template-columns:1fr 1fr;gap:12px;margin-top:28px;display:grid}.done .two .btn{width:100%}.done pre{white-space:pre-wrap;font-family:var(--f-body);background:var(--paper-deep);color:var(--ink);margin-top:24px;padding:18px 20px;font-size:.92rem}.note{color:var(--ink-soft);margin-top:14px;font-size:.9rem}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,28px) clamp(12px,1.6vw,22px);margin:48px 0 0;padding:0;list-style:none;display:grid}.tile{text-align:left;cursor:zoom-in;width:100%;color:inherit;font:inherit;background:0 0;border:0;padding:0;display:block}.tile img{aspect-ratio:16/9;object-fit:cover;width:100%;transition:opacity .2s var(--ease)}.tile:hover img{opacity:.86}.tcap{color:var(--ink);align-items:baseline;gap:10px;padding-top:10px;font-size:.88rem;line-height:1.4;display:flex}.tcap .caps{letter-spacing:.16em;flex:none}dialog#lb{width:100vw;max-width:100vw;height:100vh;max-height:100vh;color:var(--white);background:#2e2219f5;border:0;margin:0;padding:0}dialog#lb::backdrop{background:#2e2219f5}.lb-fig{flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:absolute;inset:56px 64px 72px}.lb-fig img{object-fit:contain;max-width:100%;max-height:calc(100% - 40px)}.lb-cap{flex-wrap:wrap;justify-content:space-between;gap:16px;width:100%;max-width:1400px;font-size:.92rem;display:flex}.lb-cap .caps{color:var(--sand)}.lb-btn,.lb-close{color:var(--white);cursor:pointer;font-family:var(--f-caps);background:0 0;border:1px solid #c9b8a580;position:absolute}.lb-btn{width:44px;height:64px;font-size:1.8rem;line-height:1;top:50%;transform:translateY(-50%)}.lb-prev{left:12px}.lb-next{right:12px}.lb-close{text-transform:uppercase;letter-spacing:.24em;padding:10px 16px;font-size:.68rem;top:12px;right:12px}.lb-btn:hover,.lb-close:hover{border-color:var(--white)}@media (width<=900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.grid{grid-template-columns:minmax(0,1fr)}.lb-fig{inset:56px 8px 64px}.lb-btn{height:44px;top:auto;bottom:10px;transform:none}}.closing{text-align:center;padding:var(--space) var(--gutter) 64px}.closing .mark{font-family:var(--f-caps);letter-spacing:.3em;text-indent:.3em;text-transform:uppercase;font-size:clamp(1.6rem,4vw,2.6rem);font-weight:300}.contacts{flex-wrap:wrap;justify-content:center;gap:12px 36px;margin-top:36px;display:flex}.contact{align-items:center;gap:10px;display:flex}.copy{font-family:var(--f-caps);letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--sand);color:var(--ink-soft);cursor:pointer;background:0 0;padding:5px 9px;font-size:.62rem}.copy:hover{border-color:var(--teak);color:var(--teak)}.fine{max-width:40rem;color:var(--ink-soft);margin:48px auto 0;font-size:.8rem}@media (prefers-reduced-motion:no-preference){.rise{animation:rise .9s var(--ease) both}.rise.d1{animation-delay:.12s}.rise.d2{animation-delay:.24s}@keyframes rise{0%{opacity:.001;transform:translateY(10px)}to{opacity:1;transform:none}}}.ph{overflow:hidden}.ph img{transform-origin:50%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}@supports (animation-timeline:view()){.cover>div{animation:linear both lid;animation-timeline:view();animation-range:exit 15%}@keyframes lid{to{opacity:0;transform:translateY(-4vh)scale(.97)}}.hero-fig{transform-origin:50% 0;animation:linear both open;animation-timeline:view();animation-range:entry}@keyframes open{0%{transform:scale(.86)}to{transform:none}}.hero-fig .ph img{animation:linear both settle;animation-timeline:view();animation-range:entry cover 60%}.bleed:not(.hero-fig) .ph img,.inset .ph img,.pair .ph img{animation:linear both settle;animation-timeline:view();animation-range:entry cover 55%}@keyframes settle{0%{transform:scale(1.14)}to{transform:none}}.pair figure{animation:linear both arrive;animation-timeline:view();animation-range:entry cover 30%}.pair figure:nth-child(2){animation-range:entry 15% cover 40%}@keyframes arrive{0%{opacity:0;transform:translateY(8vh)}to{opacity:1;transform:none}}.page .label,.page .line,.page p.body,.page .actions,.page .pillars,.page .caps:only-child,figcaption,.grid li,.closing>*{animation:linear both rise-in;animation-timeline:view();animation-range:entry cover 22%}@keyframes rise-in{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}.words .w,.words .dot{animation:linear both word;animation-timeline:view()}.words .w:first-child{animation-range:entry cover 20%}.words .dot:nth-child(2){animation-range:entry 20% cover 26%}.words .w:nth-child(3){animation-range:entry 30% cover 30%}.words .dot:nth-child(4){animation-range:entry 50% cover 34%}.words .w:nth-child(5){animation-range:entry 60% cover 40%}@keyframes word{0%{opacity:0;transform:translateY(.35em)scale(.97)}to{opacity:1;transform:none}}.fact{animation:linear both rise-in;animation-timeline:view()}.fact:first-child{animation-range:entry cover 20%}.fact:nth-child(2){animation-range:entry 10% cover 24%}.fact:nth-child(3){animation-range:entry 20% cover 28%}.fact:nth-child(4){animation-range:entry 30% cover 32%}svg.plan{animation:linear both plan;animation-timeline:view();animation-range:entry cover 45%}@keyframes plan{0%{opacity:0;transform:translateY(6vh)scale(.94)}to{opacity:1;transform:none}}}}@media (width<=760px){.split,.plan-wrap{grid-template-columns:minmax(0,1fr)}.pair{grid-template-columns:1fr;gap:28px}.facts{grid-template-columns:1fr 1fr}.fact{border-right:0;border-bottom:1px solid var(--sand);padding-left:0!important}.fact:nth-child(odd){border-right:1px solid var(--sand)}.fact:nth-child(2n){padding-left:16px!important}.fact:nth-last-child(-n+2){border-bottom:0}form,.done .two{grid-template-columns:1fr}.top{padding-top:16px;padding-bottom:16px}}
