:root{--ink:#123b33;--deep:#0b2c26;--paper:#fbf8f0;--cream:#f3eee3;--sage:#dfe8e1;--gold:#bd9d69;--line:#d9d3c6;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}.prototype-note{padding:8px 20px;background:#c3a16b;color:#102f29;text-align:center;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.detail-header{position:sticky;z-index:20;top:0;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 4vw;background:rgba(11,44,38,.96);color:#fff;backdrop-filter:blur(10px)}.detail-brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}.detail-mark{display:grid;width:38px;height:38px;place-items:center;border:1px solid currentColor;font:500 24px Georgia,serif}.detail-brand b,.detail-brand small{display:block}.detail-brand b{font:600 14px 'Manrope',sans-serif;letter-spacing:.11em}.detail-brand small{margin-top:4px;font-size:6px;letter-spacing:.22em}.detail-header nav{display:flex;gap:26px}.detail-header nav a,.detail-footer a{color:inherit;text-decoration:none;font-size:12px}.detail-actions{display:flex;align-items:center;gap:9px}.detail-actions button,.header-cta{border:1px solid rgba(255,255,255,.45);background:transparent;color:#fff;padding:10px 14px;text-decoration:none;font-size:12px}.header-cta{background:var(--paper);color:var(--ink)}.detail-hero{position:relative;min-height:720px;display:flex;align-items:flex-end;color:#fff}.detail-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,25,21,.83),rgba(4,25,21,.08) 72%),linear-gradient(0deg,rgba(4,25,21,.6),transparent 50%)}.detail-hero-copy{position:relative;z-index:1;max-width:760px;padding:9vw 7vw}.detail-hero-copy p,.detail-kicker{margin:0 0 14px;color:#7fa69c;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.detail-hero-copy p{color:#ead8b7}.detail-hero-copy h1{margin:0 0 18px;font:500 clamp(48px,7vw,92px)/.96 Georgia,serif}.detail-hero-copy>span{font-size:18px;line-height:1.6}.hero-facts{position:absolute;z-index:2;right:5vw;bottom:38px;display:flex;gap:22px;flex-wrap:wrap;font-size:12px}.detail-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;padding:90px 7vw;background:var(--cream)}h2{margin:0;font:500 clamp(36px,5vw,64px)/1.05 Georgia,serif}.detail-intro>p,.section-heading>p,.location-section p{align-self:end;margin:0;color:#536760;font-size:16px;line-height:1.8}.signature-grid{display:grid;grid-template-columns:repeat(4,1fr);background:var(--deep);color:#fff}.signature-grid div{padding:32px 20px;border-right:1px solid rgba(255,255,255,.12);text-align:center}.signature-grid div:last-child{border:0}.signature-grid strong,.signature-grid span{display:block}.signature-grid strong{font:400 29px Georgia,serif}.signature-grid span{margin-top:6px;color:#c6d5d0;font-size:12px}.visual-gallery{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:310px 310px;gap:7px;padding:7px}.visual-gallery button{position:relative;overflow:hidden;border:0;padding:0;background:#d9e0db;cursor:pointer}.visual-gallery .gallery-main{grid-row:1/3}.visual-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}.visual-gallery button:hover img{transform:scale(1.025)}.visual-gallery span{position:absolute;bottom:18px;left:18px;padding:8px 11px;background:rgba(11,44,38,.86);color:#fff;font-size:12px}.bedroom-section{padding:90px 7vw}.section-heading{display:grid;grid-template-columns:1fr .75fr;gap:7vw;align-items:end;margin-bottom:42px}.bedroom-list{display:grid;gap:12px}.bedroom-card{display:grid;grid-template-columns:1.08fr .92fr;min-height:420px;background:var(--cream)}.bedroom-card:nth-child(even){grid-template-columns:.92fr 1.08fr}.bedroom-card:nth-child(even) img{order:2}.bedroom-card img{width:100%;height:100%;min-height:420px;object-fit:cover}.bedroom-copy{align-self:center;padding:52px}.bedroom-copy h3{margin:0 0 15px;font:500 34px Georgia,serif}.bedroom-copy p{color:#536760;line-height:1.7}.bedroom-meta{display:flex;gap:18px;flex-wrap:wrap;color:#6a7c76;font-size:12px}.included-section{display:grid;grid-template-columns:1fr 390px;gap:7vw;padding:90px 7vw;background:var(--sage)}.included-section ul{columns:2;margin:34px 0 0;padding:0;list-style:none}.included-section li{position:relative;margin:0 0 18px;padding-left:22px;break-inside:avoid}.included-section li:before{position:absolute;left:0;color:var(--gold);content:'✓'}.booking-summary{align-self:start;padding:31px;background:#fff;box-shadow:0 18px 50px rgba(12,43,37,.12)}.booking-summary>span{font-size:10px;font-weight:600;letter-spacing:.15em;text-transform:uppercase}.booking-summary h3{margin:9px 0 23px;font:500 31px Georgia,serif}.booking-summary h3 small{font:12px 'DM Sans',sans-serif;color:#66766f}.booking-fields{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}.booking-fields label{padding:12px;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.booking-fields label+label{border-left:1px solid var(--line)}.booking-fields label:last-child{grid-column:1/3;border-top:1px solid var(--line);border-left:0}.booking-fields input,.booking-fields select{display:block;width:100%;margin-top:7px;border:0;background:transparent;color:var(--ink);font:14px 'DM Sans',sans-serif}.booking-summary>button{width:100%;margin-top:12px;border:0;background:var(--ink);color:#fff;padding:15px;cursor:pointer}.booking-summary>p{color:#66766f;font-size:11px;line-height:1.55}.location-section{display:grid;grid-template-columns:.75fr 1.25fr;gap:6vw;align-items:center;padding:90px 7vw}.location-section button{border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--ink);padding:6px 0;cursor:pointer;font-weight:600}.map-placeholder{position:relative;min-height:330px;overflow:hidden;background:linear-gradient(30deg,#cfe0d5,#edf0e7 58%,#c8dcd7)}.map-placeholder:before,.map-placeholder:after{position:absolute;left:-20%;top:42%;width:140%;height:14px;background:rgba(255,255,255,.8);content:'';transform:rotate(-20deg)}.map-placeholder:after{top:66%;transform:rotate(27deg)}.map-placeholder span{position:absolute;z-index:2;top:48%;left:55%;transform:translate(-50%,-50%);border-radius:30px;background:var(--deep);color:#fff;padding:10px 14px;font-size:13px}.detail-footer{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:35px 5vw;background:var(--deep);color:#d6e1dc}.detail-footer>div{display:flex;gap:18px}.detail-lightbox,.detail-map-modal{position:fixed;z-index:50;inset:0;display:grid;place-items:center;padding:30px;background:rgba(4,24,20,.94)}.detail-lightbox[hidden],.detail-map-modal[hidden]{display:none}.detail-lightbox img{max-width:100%;max-height:88vh;object-fit:contain}.detail-lightbox>button,.detail-map-modal>div>button{position:absolute;right:22px;top:22px;width:44px;height:44px;border:0;background:#fff;color:var(--ink);font-size:24px;cursor:pointer}.detail-map-modal>div{position:relative;width:min(760px,100%);padding:38px;background:var(--paper)}.detail-map-modal h2{font-size:40px}.map-placeholder.large{margin:24px 0 14px}.detail-map-modal small{color:#65766f}.detail-toast{position:fixed;z-index:70;right:20px;bottom:20px;padding:12px 15px;background:var(--deep);color:#fff;font-size:12px;opacity:0;pointer-events:none;transition:opacity .2s}.detail-toast.show{opacity:1}@media(max-width:760px){.prototype-note{font-size:9px}.detail-header{padding:12px 15px}.detail-header nav,.detail-actions button{display:none}.detail-hero{min-height:620px}.detail-hero-copy{padding:60px 22px 115px}.hero-facts{right:22px;left:22px;bottom:32px;gap:13px}.detail-intro,.section-heading,.included-section,.location-section{grid-template-columns:1fr}.detail-intro,.bedroom-section,.included-section,.location-section{padding:58px 20px}.signature-grid{grid-template-columns:1fr 1fr}.signature-grid div:nth-child(2){border-right:0}.signature-grid div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.12)}.visual-gallery{grid-template-columns:1fr 1fr;grid-template-rows:290px 160px}.visual-gallery .gallery-main{grid-column:1/3;grid-row:auto}.bedroom-card,.bedroom-card:nth-child(even){grid-template-columns:1fr}.bedroom-card:nth-child(even) img{order:0}.bedroom-card img{min-height:280px}.bedroom-copy{padding:29px 24px}.included-section ul{columns:1}.booking-summary{padding:24px}.detail-footer{align-items:flex-start;flex-direction:column}.detail-lightbox,.detail-map-modal{padding:16px}.detail-map-modal>div{padding:32px 20px}.detail-map-modal>div>button{right:12px;top:12px}}
