@charset "UTF-8";
:root{--paper:#e9e0d1;--ink:#263d3b;--muted:#5f7068;--sun:#eeb28e;--progress:0;--rx:0deg;--ry:0deg;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#8a7765;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}button{background:none;border:0}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #dd8751;outline-offset:6px}h1,h2,h3,p{margin:0}button{border-radius:0}.small,.eyebrow{font-size:10px;letter-spacing:.16em;line-height:1.6}h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.06em}.skip{position:fixed;top:-90px;z-index:100;background:var(--paper);padding:20px}.skip:focus{top:0}
.seascape{position:fixed;inset:0;z-index:-1;background:var(--villa-hero) center/cover}.seascape canvas{width:100%;height:100%;display:block}.shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(19,35,35,.27),transparent 50%,rgba(10,28,27,.58));pointer-events:none}
header{height:116px;padding:24px 4%;position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:50px;z-index:10;color:var(--paper)}.brand{display:flex;flex-direction:column;align-items:center;width:150px;flex-shrink:0}.brand span{font-size:8px;letter-spacing:.27em}.brand strong{font:32px Georgia,serif;letter-spacing:-.06em;margin:2px 0 5px}header nav{margin-left:auto;display:flex;align-items:center;gap:44px;font-size:12px}header nav button{border-bottom:1px solid #e9e0d177;padding:12px 0}.languages{display:flex;gap:10px}.languages button{font-size:10px;padding:8px 0;opacity:.6}.languages [aria-pressed=true]{opacity:1;border-bottom:1px solid}.journey{height:185svh}.balcony{height:100svh;min-height:620px;position:sticky;top:0;color:var(--paper);overflow:hidden;perspective:900px}.location{position:absolute;top:175px;left:5%;font-size:9px;letter-spacing:.1em;display:flex;flex-direction:column;gap:12px}.location span{writing-mode:vertical-rl;margin-top:40px}.hero-copy{position:absolute;left:19%;top:23%;transform-style:preserve-3d;will-change:transform,opacity}.hero-copy .eyebrow{margin-left:6px}.hero-copy h1{font:italic clamp(130px,20vw,350px)/.9 Georgia,serif;letter-spacing:-.085em;margin:18px 0 0 -15px}.hero-copy h1 span{color:var(--sun)}.hero-line{font:clamp(32px,4vw,68px)/1.03 Georgia,serif;letter-spacing:-.04em;margin:14px 0 0 45%;white-space:nowrap}.hero-bottom{position:absolute;bottom:40px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;font-size:11px}.hero-bottom>a{display:flex;align-items:center;gap:16px;letter-spacing:.12em;font-size:9px}.scroll-icon{display:grid;place-items:center;width:35px;height:55px;border:1px solid #eee5cf66;border-radius:30px;font-size:20px}.view-mark{position:absolute;right:5%;top:43%;height:180px;display:flex;align-items:center;flex-direction:column;gap:15px;font-size:8px;letter-spacing:.18em}.view-mark i{height:100px;width:1px;background:#eee5cf66}.view-caption{position:absolute;top:33%;left:12%;opacity:0;transform:translateY(40px);will-change:opacity,transform}.view-caption p{font:clamp(40px,6.8vw,112px)/1.06 Georgia,serif;letter-spacing:-.055em;margin:24px 0 40px}.line-link{display:inline-block;border-bottom:1px solid;padding:10px 0;font-size:12px}.motion{position:fixed;bottom:14px;right:18px;z-index:20;background:var(--paper);color:var(--ink);padding:9px 13px;border-radius:30px;font-size:10px;box-shadow:0 2px 15px #10202025}
.apartments{background:var(--paper);padding:34px 5% 0;position:relative;z-index:2;box-shadow:0 -30px 100px #182c3040;overflow:hidden}.section-top{display:flex;justify-content:space-between;border-bottom:1px solid #263d3b40;padding:0 0 25px}.stay-heading{display:flex;align-items:flex-end;justify-content:space-between;margin:55px 0 16px;gap:40px}.stay-heading h2{font-size:clamp(48px,6.5vw,105px);line-height:1}.stay-heading>p{font-size:13px;max-width:280px;line-height:1.8;margin:0 5% 8px 0}.apartment-experience{display:grid;grid-template-columns:62% 38%;align-items:center;min-height:620px}.gallery-side{min-width:0;position:relative}.gallery-stage{height:460px;perspective:1100px;perspective-origin:50% 45%;position:relative}.carousel{position:absolute;left:50%;top:50%;width:320px;height:350px;margin:-175px 0 0 -160px;transform-style:preserve-3d;transform:translateZ(-350px);transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}.photo-panel{position:absolute;inset:0;backface-visibility:hidden;background:#d9cdbb;padding:10px;box-shadow:0 25px 35px #25393338;transform-style:preserve-3d;transition:filter .8s,opacity .8s;border:1px solid #fff6}.photo-panel img{width:100%;height:calc(100% - 38px);object-fit:cover;object-position:center;display:block}.photo-panel .panel-caption{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em;padding:15px 4px 0}.photo-panel::after{display:none;content:'';position:absolute;inset:0;transform:translateZ(-6px);background:#b6a890}.photo-panel:not(.selected){border-color:#c2b49e}.gallery-controls{display:flex;justify-content:center;align-items:center;gap:35px;margin-top:2px}.gallery-controls button,.photo-controls button{border:1px solid #263d3b50;border-radius:50%;width:44px;height:44px;font-size:20px;transition:background .2s}.gallery-controls button:hover{background:var(--ink);color:var(--paper)}#count{font-size:12px;letter-spacing:.15em}#count i{font-style:normal;opacity:.4;margin:0 12px}.gallery-hint{text-align:center;font-size:8px;margin-top:16px}.unit-info{padding:30px 4% 20px 9%;position:relative;z-index:3;background:var(--paper)}.unit-selector{display:flex;gap:8px;margin-bottom:35px}.unit-selector button{border-bottom:1px solid #263d3b33;min-width:30px;padding:9px 5px;font-size:11px}.unit-selector button[aria-pressed=true]{border-bottom:2px solid var(--ink);font-weight:bold}.unit-info h3{font-size:58px;margin:12px 0 20px}.unit-description{font-size:13px;line-height:1.8;min-height:72px}dl{font-size:11px;margin:24px 0 10px}dl div{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid #263d3b28;gap:15px}dt{color:var(--muted)}dd{margin:0;text-align:right}.unit-photo{margin:5px 0 24px}.solid{display:block;width:100%;padding:18px 22px;background:var(--ink);color:var(--paper);font-size:12px;text-align:left}.solid:hover{background:#42615c}.amenities{border-top:1px solid #263d3b40;margin-top:25px;padding:30px 0;display:flex;justify-content:space-around;font-size:11px}.amenities span::before{content:'✧';margin-right:12px}
.closing{min-height:90svh;padding:70px 7% 0;color:var(--paper);display:flex;flex-direction:column;position:relative;background:linear-gradient(0deg,#142f32b0,#29403c30)}.closing h2{font-size:clamp(60px,10vw,155px);line-height:1.04;margin-top:65px;max-width:1000px}.closing-bottom{display:flex;align-items:center;justify-content:space-between;margin:45px 0 70px}.closing-bottom p{font-size:13px;line-height:1.8}.circle-cta{border:1px solid #e9e0d188;border-radius:50%;width:185px;height:185px;padding:30px;font:21px/1.3 Georgia,serif}.circle-cta:hover{background:#e9e0d122}footer{margin-top:auto;display:flex;justify-content:space-between;gap:25px;font-size:10px;border-top:1px solid #e9e0d177;padding:25px 0 55px}
dialog{border:0;background:var(--paper);color:var(--ink);padding:50px;width:min(620px,94vw);max-height:94svh;overscroll-behavior:contain}dialog::backdrop{background:#152c32bb;backdrop-filter:blur(10px)}dialog .close{position:absolute;top:12px;right:18px;font-size:32px;z-index:2}dialog h2{font-size:55px;line-height:1.03;margin:20px 0}.prototype-note{font-size:11px;line-height:1.6;color:var(--muted);margin:20px 0}form label{display:block;font-size:11px;margin:16px 0}input,select,textarea{display:block;border:0;border-bottom:1px solid #263d3b55;background:transparent;color:var(--ink);width:100%;padding:12px 0;border-radius:0;min-width:0}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}#form-result{font-size:13px;line-height:1.7;margin-top:15px}#photographs{width:min(1000px,95vw);padding:40px 25px 20px;background:#e9e0d1}#large-photo{width:100%;height:65svh;object-fit:contain}.photo-controls{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:12px;font-size:11px}
body.still .hero-copy{transform:none!important;opacity:1!important}body.still .journey{height:100svh}body.still .view-caption{display:none}body.still .carousel{transition:none}body.still .closing h2{transform:none!important}
@media(min-width:1800px){.gallery-stage{perspective:1400px}.carousel{width:400px;height:400px;margin:-200px 0 0 -200px}.apartment-experience{min-height:690px}}
@media(max-width:760px){header{height:95px;padding:18px 6%;gap:15px}.brand{width:110px}.brand strong{font-size:28px}.brand span{font-size:6px}header nav>a{display:none}header nav{gap:0;font-size:10px}header nav button{font-size:10px;max-width:110px;text-align:left}.languages{gap:9px}.languages button{font-size:9px}.balcony{min-height:580px}.location{top:125px;left:6%;font-size:8px}.location span{display:none}.hero-copy{left:10%;top:30%;right:8%}.hero-copy .eyebrow{font-size:8px;letter-spacing:.11em}.hero-copy h1{font-size:40vw;margin:20px 0 0 -7px}.hero-line{font-size:35px;margin:22px 0 0 23%}.view-mark{right:7%;top:61%;height:100px;font-size:7px}.view-mark i{height:45px}.hero-bottom{bottom:48px;left:6%;right:6%}.hero-bottom>span{max-width:130px;font-size:10px;line-height:1.5;text-align:right}.hero-bottom>a{gap:10px;font-size:7px}.view-caption{left:8%;right:8%;top:30%}.view-caption p{font-size:48px}.apartments{padding:24px 6% 0}.section-top .small{font-size:8px}.section-top>span:last-child{max-width:115px;text-align:right}.stay-heading{display:block;margin-top:35px}.stay-heading h2{font-size:54px}.stay-heading>p{font-size:12px;max-width:290px;margin:22px 0 0}.apartment-experience{display:block}.gallery-stage{height:380px;perspective:800px;perspective-origin:50% 48%}.carousel{width:235px;height:285px;margin:-142px 0 0 -117px}.unit-info{padding:35px 0 20px}.unit-selector{justify-content:space-between;margin-bottom:24px}.unit-selector button{min-width:36px}.unit-info h3{font-size:48px}.unit-description{min-height:0}.gallery-hint{font-size:7px}.amenities{display:flex;flex-direction:column;gap:20px;padding:25px 0}.closing{min-height:85svh;padding:50px 7% 0}.closing h2{font-size:65px;margin-top:50px}.closing-bottom{display:block;margin:30px 0 40px}.circle-cta{width:140px;height:140px;font-size:18px;margin:28px 0 0 auto}footer{flex-direction:column;gap:15px;font-size:10px;padding-bottom:65px}dialog{padding:40px 25px}dialog h2{font-size:48px}.form-row{gap:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

#stay-options,.double-units{border:0;padding:0;margin:24px 0 16px;min-width:0}#stay-options legend,.double-units legend{font-size:12px;margin-bottom:10px;font-weight:bold}.stay-plan{display:flex;align-items:center;gap:12px;border:1px solid #263d3b33;padding:13px;margin:8px 0!important;cursor:pointer}.stay-plan:has(input:checked){background:#fff8;border-color:var(--ink)}.stay-plan input{width:17px;height:17px;flex:0 0 17px;margin:0;accent-color:var(--ink)}.stay-plan strong{font-size:12px;font-weight:500;line-height:1.5}.stay-plan small{display:block;font-size:10px;line-height:1.6;margin-top:4px;color:var(--muted)}.stay-plan:has(input:disabled){opacity:.55;cursor:default}#stay-summary{font-size:12px;line-height:1.7;border-top:1px solid #263d3b33;padding-top:15px;margin-top:18px}#stay-availability{font-size:11px;line-height:1.6;color:var(--muted);margin-top:10px}

#inquiry>.close{position:sticky;top:0;float:right;right:auto;z-index:5;width:34px;height:34px;margin:-24px -20px 0 0;background:var(--paper);line-height:1}

/* Family story and full photographic galleries — prototype 09. */
.about{position:relative;z-index:2;background:var(--paper);padding:85px 7% 100px}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;max-width:1400px;margin:auto}.about-image{display:block;padding:12px;background:#d9cdbb;box-shadow:0 24px 45px #263d3b22;transform:perspective(1200px) rotateY(5deg) rotateZ(-2deg);transition:transform .5s}.about-image:hover{transform:perspective(1200px) rotateY(0) rotateZ(0)}.about-image img{width:100%;height:430px;object-fit:cover;display:block}.about-image span{display:block;padding:17px 3px 6px;font-size:9px;letter-spacing:.15em;text-align:left}.about h2{font-size:clamp(38px,4.1vw,66px);line-height:1.07;margin:25px 0}.about-copy>p:not(.small){font-size:13px;line-height:1.9;max-width:470px}.about-copy .family-sign{font:italic 25px Georgia,serif!important;margin:25px 0}.villa-photos{margin-top:15px}#photographs{padding:22px;width:min(1100px,96vw);max-height:96svh}#photographs h2{font-size:25px;margin:0 45px 17px 0}#photographs .close{background:var(--paper);width:36px;height:36px;line-height:1}.photo-stage{position:relative;background:#d8cdbd}#large-photo{display:block;height:56svh;width:100%;object-fit:contain;touch-action:pan-y}.photo-stage>button{position:absolute;top:50%;transform:translateY(-50%);border-radius:50%;width:48px;height:48px;font-size:25px;background:#f8f3e8ee;color:#263d3b;box-shadow:0 2px 12px #0003}#photo-prev{left:10px}#photo-next{right:10px}#photo-caption{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);background:#193833df;color:white;padding:7px 14px;border-radius:25px;font-size:12px}.photo-hint,#photo-note{font-size:11px;line-height:1.5;margin:10px 0;color:var(--muted)}#photo-thumbs{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 9px;scrollbar-width:thin}#photo-thumbs button{flex:0 0 88px;height:62px;padding:3px;border:2px solid transparent;opacity:.65}#photo-thumbs button[aria-pressed=true]{border-color:var(--ink);opacity:1}#photo-thumbs img{width:100%;height:100%;object-fit:cover;display:block}.still .about-image{transform:none;transition:none}@media(max-width:760px){.about{padding:55px 7% 65px}.about-layout{grid-template-columns:1fr;gap:40px}.about-image{max-width:500px}.about-image img{height:300px}.about h2{font-size:42px}#photographs{padding:16px}#large-photo{height:48svh}.photo-stage>button{width:40px;height:40px}#photo-thumbs button{flex-basis:70px;height:52px}#photographs h2{font-size:22px}}

.languages a{font-size:10px;text-decoration:none}.languages a[hreflang]{padding:4px}.unit-directory{display:flex;flex-wrap:wrap;gap:15px;padding:20px 0;font-size:11px;border-top:1px solid #263d3b30}.unit-directory a{flex:1 1 28%;line-height:1.6}footer{flex-wrap:wrap}.consent input{display:inline-block;width:auto;margin-right:8px}.consent{line-height:1.6}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-message{padding:15px;border:1px solid currentColor;font-size:13px;line-height:1.6;margin:15px 0}.form-message.error{color:#8c3025}#inquiry .form-wrapper{width:100%}body:has(#inquiry[open]){overflow:hidden}
