:root{--ink:#172c36;--paper:#fff;--muted:#56656c;--accent:#b89965;--pale:#f2f4f4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #c19b50;outline-offset:5px}header{height:90px;padding:10px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e0e5e5;background:white}header .logo{width:64px;height:64px;object-fit:cover}nav{display:flex;gap:30px;font-size:14px}nav a{text-decoration:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;text-decoration:none;background:var(--ink);color:#fff;padding:17px 24px;font-size:14px;transition:background .2s}.button:hover{background:#315260}.button.small{padding:12px 18px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:720px}.hero-copy{padding:75px 12% 35px 10%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow{font-size:12px;letter-spacing:2.6px;font-weight:600;margin:0 0 22px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.08;letter-spacing:-1.9px}h1{font-size:clamp(54px,5.5vw,84px);margin-bottom:28px}h2{font-size:clamp(36px,4vw,57px);margin-bottom:25px}em{font-weight:400;color:#8c7047}.lead{font-size:17px;color:var(--muted);max-width:450px;margin-bottom:30px}.text-link{display:inline-block;text-underline-offset:7px;margin-top:22px;font-size:14px}.hero-note{font-size:12px;letter-spacing:1.7px;margin-top:45px}.hero-note span{display:block;letter-spacing:0;color:var(--muted);margin-top:4px}.hero-image{position:relative;max-height:800px;overflow:hidden;background:#263e64}.hero-image>img{width:100%;height:100%;object-fit:cover;object-position:center 43%;display:block}.hero-image:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#081e3599);pointer-events:none}.image-note{position:absolute;top:18px;right:20px;font-size:12px;color:white;background:#172c36aa;padding:4px 8px}.image-address{position:absolute;bottom:35px;left:36px;z-index:1;color:white;font-size:12px;letter-spacing:2px}.image-address strong{display:block;font:normal 24px Georgia,serif;letter-spacing:0;margin-top:10px}.facts{display:grid;grid-template-columns:repeat(4,1fr);padding:32px 5%;border-bottom:1px solid #dbe1e3;gap:25px}.facts>div{border-right:1px solid #dbe1e3;text-align:center}.facts>div:last-child{border:0}.facts strong{display:block;font:32px Georgia,serif}.facts small{font-size:19px}.facts span{display:block;font-size:13px;color:var(--muted);margin-top:9px}.section{padding:95px 7%;scroll-margin-top:20px}.intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;align-items:center}.intro p:not(.eyebrow),.location p{color:var(--muted)}figure{margin:0}img{max-width:100%}figure img{width:100%;display:block}.intro figure img{height:520px;object-fit:cover}figcaption{font-size:12px;color:var(--muted);margin-top:12px}.lines{list-style:none;padding:0;margin:25px 0}.lines li{border-bottom:1px solid #dbe1e3;padding:14px 0;font-size:15px}.plans{background:var(--pale)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:36px}.section-heading>p{max-width:340px;color:var(--muted)}.plan-controls{display:flex;gap:10px;margin-bottom:24px}.plan-controls button{padding:12px 22px;border:1px solid #bac5c9;background:transparent;color:var(--ink)}.plan-controls .active{background:var(--ink);color:white}.plan-card{display:grid;grid-template-columns:1fr 2fr;align-items:center;background:white;padding:35px;gap:35px}.plan-card h3{font:48px Georgia,serif;margin-bottom:20px}.plan-card p{color:var(--muted)}.fine{font-size:12px;line-height:1.7;color:var(--muted)}.plan-card .fine{margin-top:24px}.image-button,.zoom{border:0;background:transparent;padding:0;color:var(--ink);width:100%}.image-button span{display:block;font-size:13px;text-decoration:underline;text-underline-offset:4px}.finish{background:var(--ink);color:white}.finish em{color:#d7be94}.features{display:grid;grid-template-columns:repeat(4,1fr);gap:36px;margin-top:55px}.features article{border-top:1px solid #72848c;padding-top:20px}.features article>span{font-size:13px;color:#d7be94}.features h3{font:25px Georgia,serif;margin:24px 0 15px}.features p{font-size:15px;color:#d0dadd}.finish>.fine{color:#b5c3c9;margin-top:34px;max-width:850px}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:35px 28px}.gallery .wide{grid-column:1 / -1}.gallery img{height:325px;object-fit:cover}.gallery .wide img{height:480px}.gallery figcaption{display:flex;justify-content:space-between;gap:20px;font-size:13px}.gallery figcaption strong{color:var(--ink);font:24px Georgia,serif}.gallery figcaption span{max-width:300px}.amenities{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px}.amenities span{padding:10px 18px;border:1px solid #c9d2d6;font-size:14px}.efficiency{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:var(--pale)}.efficiency-list article+article{border-top:1px solid #bac5c9;padding-top:24px;margin-top:24px}.efficiency h3{font:25px Georgia,serif}.efficiency p{color:var(--muted)}.efficiency .eyebrow{color:var(--ink)}.location{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center}.location figure img{height:520px;object-fit:cover}.location address{font-style:normal;font-size:19px;margin:20px 0}.location li strong{margin-right:10px}.contact{text-align:center;background:var(--ink);color:white}.contact em{color:#d7be94}.contact .button{background:#d7be94;color:#172c36;margin-top:10px}.contact h2{font-size:64px}.contact .phone{font-size:14px;margin:20px 0 0}footer{display:flex;gap:35px;padding:45px 7% 90px;align-items:flex-start}footer .logo{width:70px}footer>div{max-width:850px}footer summary{font-size:13px;cursor:pointer}.floating{position:fixed;right:22px;bottom:20px;padding:12px 20px;background:#1d5548;color:white;text-decoration:none;font-size:14px;z-index:5;box-shadow:0 3px 20px #0002}dialog{padding:50px 15px 15px;border:0;max-width:95vw;max-height:95vh;background:white}dialog::backdrop{background:#071720dc}dialog img{display:block;max-height:80vh;object-fit:contain}#close-dialog{position:absolute;right:16px;top:10px;background:white;color:var(--ink);border:0;padding:6px 12px}body.modal-open{overflow:hidden}@media(min-width:1500px){body{max-width:1800px;margin:auto}}@media(max-width:850px){header{height:78px;padding:8px 5%}header .logo{width:54px;height:54px}nav{display:none}.hero{min-height:0}.hero-copy{padding:45px 8%}h1{font-size:54px}.hero-image{min-height:650px}.hero-note{margin-top:28px}.image-address{left:18px;right:18px}.facts strong{font-size:25px}.facts small{font-size:15px}.section{padding:65px 6%}.intro,.location{gap:35px}.features{grid-template-columns:repeat(2,1fr)}.plan-card{grid-template-columns:1fr}.gallery img{height:230px}.gallery .wide img{height:360px}.gallery figcaption{display:block}.gallery figcaption span{display:block;margin-top:8px}.section-heading{display:block}.efficiency{gap:35px}}@media(max-width:600px){header .small{font-size:12px;padding:11px 13px}.hero{display:flex;flex-direction:column}.hero-copy{padding:44px 7% 36px}h1{font-size:60px}.lead{font-size:16px}.hero-image{min-height:0;height:520px}.hero-image>img{object-position:center 43%}.hero-note{display:none}.hero-copy>.text-link{margin-top:20px}.facts{grid-template-columns:repeat(2,1fr);gap:25px 10px;padding:30px 5%}.facts>div:nth-child(2){border:0}.facts strong{font-size:29px}.facts small{font-size:17px}.section{padding:58px 7%}.intro,.location,.efficiency{grid-template-columns:1fr}.intro figure img,.location figure img{height:320px}.plan-controls{gap:8px}.plan-controls button{font-size:13px;padding:12px}.plan-card{padding:23px;gap:20px}.plan-card .eyebrow{font-size:11px}.features{gap:24px}.features h3{font-size:22px}.features p{font-size:14px}.gallery{grid-template-columns:1fr;gap:28px}.gallery .wide{grid-column:auto}.gallery img,.gallery .wide img{height:260px}.contact h2{font-size:46px}footer{padding:35px 7% 95px;gap:18px}footer .logo{width:50px}.image-address strong{font-size:21px}.section-heading{margin-bottom:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
