:root{--ink:#173e40;--muted:#64716b;--paper:#faf8f3;--sand:#ede9df;--line:#d9ded3;--accent:#cce0a7;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400;line-height:1.12}h1,h2{font-family:var(--serif)}h2{font-size:clamp(34px,3.65vw,58px);letter-spacing:-1.7px}h3{font-size:30px;letter-spacing:-.7px}p+p{margin-top:18px}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #62863c;outline-offset:6px}section[id],article[id]{scroll-margin-top:100px}.skip{position:fixed;left:12px;top:-100px;z-index:20;background:white;padding:10px}.skip:focus{top:10px}
.header{height:108px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;gap:30px;background:var(--paper)}.brand{font-size:29px;font-weight:650;line-height:1.1;letter-spacing:-1.3px;white-space:nowrap}.brand>span{font-weight:350}.brand small{display:block;font-size:9px;letter-spacing:3px;margin-top:9px;font-weight:500}.header nav{display:flex;align-items:center;gap:32px;font-size:14px}.header nav>a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:6px}.nav-cta{border:1px solid #b4c2b6;border-radius:3px;padding:11px 22px}.hero{position:relative;min-height:610px;height:calc(100svh - 144px);max-height:850px;margin:0 22px;color:#fff;overflow:hidden;border-radius:5px}.hero-img{height:100%;position:absolute;inset:0;object-position:center 49%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,36,38,.7),rgba(9,36,38,.12) 85%),linear-gradient(0deg,rgba(9,36,38,.7),transparent 26%)}.hero-copy{position:relative;padding:8% 6% 120px;max-width:900px}.eyebrow{text-transform:uppercase;letter-spacing:2.8px;font-size:11px;font-weight:600;margin-bottom:23px}.hero h1{font-size:clamp(54px,6.3vw,98px);letter-spacing:-3.4px}.hero h1 em{font-weight:400;color:#d6e6b9}.hero-copy>p:not(.eyebrow){margin:25px 0 32px;font-size:17px;line-height:1.8;color:#f2f3e9}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:14px 23px;border:1px solid transparent;border-radius:3px;font-size:14px;font-weight:500;line-height:1.5;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button.light{background:#f8f5eb;color:var(--ink)}.button.light:hover{background:var(--accent)}.button.secondary{border-color:#b9c7bc;white-space:nowrap}.button.secondary:hover{background:#e7eddf}.button span{font-size:22px}.hero-bottom{position:absolute;bottom:26px;left:6%;right:6%;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.6px;border-top:1px solid #ffffff50;padding-top:21px}.intro-strip{max-width:1320px;margin:auto;padding:35px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.intro-strip>span{font-family:var(--serif);font-size:36px;line-height:1.3}.intro-strip small{display:block;font-family:var(--sans);font-size:11px;color:var(--muted);letter-spacing:1px;margin-top:4px}.intro-strip p{font-family:var(--serif);font-size:25px;line-height:1.25}.intro-strip p em{font-style:normal;color:var(--muted)}.intro-strip .strip-note{font:13px/1.7 var(--sans);color:var(--muted)}.section{max-width:1320px;margin:auto;padding:90px 5%}.intro{display:grid;grid-template-columns:1.15fr 1fr;align-items:end;gap:10%;padding-bottom:55px}.intro>p{color:var(--muted);max-width:460px;font-size:16px}.apartments{max-width:1320px;margin:auto;padding:0 5% 80px}.apartment{padding:32px 0 46px;border-top:1px solid var(--line)}.apartment+.apartment{margin-top:25px}.apartment-head{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:25px}.apartment-head .eyebrow{margin-bottom:12px}.apartment h3{font-family:var(--serif);font-size:39px;margin-bottom:8px}.apartment-head p:not(.eyebrow){font-size:14px;color:var(--muted)}.facts{display:flex;gap:35px}.facts span{font-size:10px;color:var(--muted)}.facts b{display:block;font-size:19px;color:var(--ink);font-weight:450;line-height:1.8}.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:180px 180px;gap:9px}.photo{position:relative;padding:0;border:0;border-radius:3px;overflow:hidden;background:var(--sand);cursor:zoom-in;min-width:0}.photo:first-child{grid-row:span 2}.photo img{height:100%;transition:transform .35s}.photo:hover img{transform:scale(1.04)}.photo>span{position:absolute;bottom:0;left:0;right:0;color:white;background:linear-gradient(transparent,#0d2925bd);padding:20px 14px 8px;font-size:11px;text-align:left}.apartment-bottom{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:25px}.apartment-bottom p{max-width:650px;color:var(--muted);font-size:14px}.tags{list-style:none;display:flex;gap:8px;flex-wrap:wrap;padding:0;margin:14px 0 0}.tags li{font-size:11px;border:1px solid var(--line);padding:4px 11px;border-radius:20px}.coast-story{display:grid;grid-template-columns:1fr 1fr;background:#e8ecdf;min-height:580px}.coast-photo{position:relative;min-height:450px}.coast-photo img{height:100%;position:absolute;inset:0}.coast-photo>span{position:absolute;bottom:28px;left:35px;font-family:var(--serif);font-style:italic;color:white;font-size:25px;text-shadow:0 1px 9px #000}.coast-copy{align-self:center;padding:75px 14%}.coast-copy h2{margin-bottom:30px}.coast-copy p:not(.eyebrow){font-size:15px;color:#53645b}.text-link{display:inline-block;border-bottom:1px solid #9bafa0;padding-bottom:5px;font-size:13px;margin-top:26px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:35px}.section-heading>p{max-width:260px;font-size:14px;color:var(--muted)}.seaside h2{font-size:43px}.place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.place-grid img{height:260px;border-radius:3px}.place-grid figure:nth-child(2){padding-top:35px}.place-grid figcaption{padding:20px 0}.place-grid figcaption>span{font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:var(--muted)}.place-grid h3{font-family:var(--serif);font-size:26px;margin:12px 0}.place-grid p{font-size:14px;color:var(--muted)}.experience{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:var(--sand);border-radius:5px;padding:65px 6%;max-width:1190px}.experience-copy{align-self:center}.experience h2{margin-bottom:25px}.experience-copy>p:not(.eyebrow){font-size:15px;color:#53645b;max-width:380px}.experience-copy>p.small,.small{font-size:12px;color:var(--muted);line-height:1.7}.experience-frame{background:white;border-radius:6px;overflow:hidden;min-width:0;box-shadow:0 15px 40px #183d3c10}.experience iframe{display:block;border:0;width:100%;height:560px}.arrival{display:grid;grid-template-columns:1fr .75fr 1fr;gap:55px;align-items:center;padding-top:105px;padding-bottom:105px}.arrival h2{font-size:42px}.arrival address{font-style:normal;margin:22px 0 0;font-size:14px}.arrival>div>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-top:23px}.arrival>img{height:330px;border-radius:150px 150px 3px 3px}.booking h3{font-family:var(--serif);font-size:31px}.booking p{font-size:13px;color:var(--muted);margin:18px 0}.booking details{border-bottom:1px solid var(--line);padding:13px 0;font-size:12px}.booking summary{cursor:pointer}.booking details a{text-decoration:underline}.contact{padding:80px 25px;background:var(--ink);color:white;text-align:center}.contact .eyebrow{color:#c5d2bd}.contact h2{font-size:clamp(50px,6vw,84px)}.contact>p:not(.eyebrow){color:#d1ddd4;margin:24px 0 30px;font-size:15px}.email{display:block;font-size:12px;margin-top:20px;color:#d5dfd1}footer{padding:45px 5.5%;display:flex;justify-content:space-between;align-items:center;gap:35px}footer>p{font-family:var(--serif);font-style:italic;font-size:21px;color:var(--muted)}footer>div{display:flex;gap:25px;font-size:12px}.legal{padding-top:0;padding-bottom:35px;font-size:13px;color:var(--muted)}.legal details{border-top:1px solid var(--line);padding:15px 0}.legal summary{cursor:pointer}.legal h2{font:25px var(--serif);margin:20px 0}.legal p{max-width:850px;margin:14px 0}.legal a{text-decoration:underline}.lightbox{padding:45px 25px 15px;border:0;background:var(--paper);width:min(1000px,95vw);max-height:95svh;color:var(--ink)}.lightbox::backdrop{background:#0b2627e6}.lightbox img{width:100%;max-height:75svh;object-fit:contain}.lightbox p{margin:10px 0 0;font-size:13px}.close{position:absolute;right:12px;top:0;background:none;border:0;color:var(--ink);font-size:32px;cursor:pointer}
@media(min-width:1600px){.hero-copy{padding-top:100px}}@media(max-width:1050px){.header{padding:0 4%;height:95px}.header nav{gap:20px;font-size:12px}.hero{margin:0 14px;min-height:590px;height:680px}.hero-copy{padding-top:90px}.facts{gap:20px}.coast-copy{padding:60px 10%}.arrival{gap:28px}.experience{margin:0 4%;gap:6%}.gallery{grid-template-rows:155px 155px}.place-grid img{height:220px}footer>p{display:none}}
@media(max-width:720px){html{scroll-padding-top:20px}.header{height:auto;min-height:105px;padding:18px 6%;align-items:flex-start;gap:15px}.brand{font-size:24px}.brand small{font-size:7px;letter-spacing:2px}.header nav{flex-wrap:wrap;justify-content:flex-end;gap:10px 16px;font-size:11px;max-width:210px}.nav-cta{padding:4px 10px}.hero{margin:0 10px;min-height:590px;height:75svh;max-height:760px}.hero-img{object-position:60% center}.hero-copy{padding:70px 6% 110px}.hero h1{font-size:58px;letter-spacing:-2px}.hero-copy>p:not(.eyebrow){font-size:14px}.hero .eyebrow{font-size:9px;letter-spacing:2px}.hero-bottom{font-size:9px;gap:15px;bottom:24px}.hero-bottom>span:first-child{display:none}.hero-bottom>span{max-width:190px}.button{font-size:12px;padding:12px 18px;gap:25px}.intro-strip{padding:28px 7%;gap:20px}.intro-strip>span{font-size:28px}.intro-strip small{font-size:8px;letter-spacing:0}.intro-strip p{font-size:21px}.intro-strip .strip-note{display:none}.section{padding:60px 7%}.intro{grid-template-columns:1fr;gap:24px;padding-bottom:40px}.intro>p{font-size:14px}.eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:18px}h2{font-size:39px;letter-spacing:-1px}.apartments{padding:0 7% 35px}.apartment-head{display:block}.apartment h3{font-size:34px}.facts{margin-top:20px;gap:28px}.facts b{font-size:16px}.facts span{font-size:9px}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:230px 140px 140px;gap:7px}.photo:first-child{grid-row:auto;grid-column:span 2}.photo>span{font-size:10px;padding-left:8px}.apartment-bottom{display:block;margin-top:20px}.apartment-bottom .button{margin-top:22px}.tags{gap:6px}.tags li{font-size:10px}.coast-story{grid-template-columns:1fr}.coast-photo{min-height:340px}.coast-photo>span{left:7%;font-size:23px}.coast-copy{padding:50px 7%}.coast-copy p:not(.eyebrow){font-size:14px}.section-heading{display:block}.seaside h2{font-size:36px}.section-heading>p{margin-top:20px;max-width:none}.place-grid{grid-template-columns:1fr;gap:22px}.place-grid figure:nth-child(2){padding:0}.place-grid img{height:270px}.place-grid figcaption{padding:17px 0}.experience{display:block;margin:0 4%;padding:40px 6%}.experience-copy{margin-bottom:30px}.experience h2{font-size:39px}.experience iframe{height:560px}.arrival{grid-template-columns:1fr 1fr;gap:30px 20px}.arrival h2{font-size:34px}.arrival>img{height:300px}.arrival>div>p:not(.eyebrow),.arrival address{font-size:12px}.arrival .text-link{font-size:11px}.booking{grid-column:span 2}.contact{padding:60px 7%}.contact h2{font-size:56px}.contact>p:not(.eyebrow){font-size:13px}.contact br{display:none}footer{padding:32px 7%;align-items:flex-start;gap:25px}footer>div{flex-direction:column;gap:8px;font-size:11px}.legal{padding-top:0;padding-bottom:25px}.photo:focus-visible{outline-offset:2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
