:root{--green:#214c39;--ink:#1a2e23;--muted:#52665a;--pale:#f3f6ef;--line:#dbe3d9;--white:#fff;--serif:'Playfair Display',Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);background:#fbfcf8;font-family:'DM Sans',Arial,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:5px}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,main:focus-visible{outline:3px solid #9d5905;outline-offset:5px}button[hidden],[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:16px;background:white;z-index:200;padding:12px}.skip-link:focus{top:12px}.container{max-width:1160px;padding-inline:28px;margin-inline:auto}header{position:sticky;top:0;z-index:20;background:rgba(251,252,248,.97);border-bottom:1px solid var(--line)}.nav-wrap{max-width:1240px;margin:auto;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--green);font-family:var(--serif);font-size:20px;font-weight:700;line-height:1.15}.wordmark>span>span{display:block;font-family:'DM Sans',Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-top:4px}nav{display:flex;align-items:center;gap:26px}nav a{font-size:13px;font-weight:600;text-decoration:none;padding-block:11px}nav a:hover{text-decoration:underline}.nav-portal{border:1px solid var(--green);padding:10px 18px;border-radius:5px}.menu-toggle{min-height:44px;background:transparent;border:1px solid var(--line);padding:8px 12px;color:var(--green);border-radius:5px}.menu-toggle span{margin-left:8px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.13}h1{font-size:clamp(48px,5.9vw,78px);letter-spacing:-.05em}h1 em{color:var(--green);font-style:normal}h2{font-size:clamp(30px,3.5vw,45px);letter-spacing:-.035em}h3{font-size:29px;letter-spacing:-.025em}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--green);margin-bottom:19px}.hero{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:65px;padding-block:58px 42px}.hero .lead{font-size:18px;max-width:370px;margin:24px 0 30px;color:var(--muted)}.button{display:inline-flex;gap:28px;align-items:center;background:var(--green);color:white;padding:14px 22px;border-radius:5px;text-decoration:none;font-size:14px;font-weight:600;min-height:48px;transition:background .2s}.button:hover{background:#173b2b}.quiet-link{display:block;width:max-content;padding:16px 0;font-size:14px}.hero-photo{position:relative;overflow:hidden;border-radius:110px 8px 8px 8px;background:#e2e9df}.hero-photo img{width:100%;height:460px;object-fit:cover}.hero-photo figcaption{display:flex;justify-content:space-between;padding:16px 20px;background:var(--green);color:white;font-size:12px}.availability-strip{display:flex;align-items:center;gap:16px;padding:19px 22px;border:1px solid var(--line);border-radius:5px;background:var(--pale);font-size:13px;color:var(--muted)}.availability-strip strong{color:var(--green)}.availability-strip a{margin-left:auto;white-space:nowrap;color:var(--green);font-weight:600}.status-dot{width:8px;height:8px;background:var(--green);border-radius:50%;flex-shrink:0}.section{padding-block:85px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:45px}.section-heading>p{max-width:290px;color:var(--muted);font-size:15px}.property{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:center;padding-block:38px;border-top:1px solid var(--line)}.property:last-child{padding-bottom:0}.property-copy>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.8;margin-top:18px}.property-copy p.subtitle{margin-top:8px;color:var(--green)}.property-copy .eyebrow{margin-bottom:12px}.property-copy h3{font-size:31px}.gallery{min-width:0}.gallery figure{background:#edf1e9;border-radius:7px;overflow:hidden;position:relative}.property-image{width:100%;height:340px;object-fit:contain}.gallery figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#edf1e9;padding:10px 14px;font-size:12px;color:var(--green);min-height:40px}.gallery-controls{display:flex;align-items:center;gap:8px;margin-top:9px}.gallery-controls>.previous,.gallery-controls>.next{background:white;border:1px solid var(--line);border-radius:5px;color:var(--green);width:44px;height:52px;flex-shrink:0;font-size:20px}.thumbnails{display:flex;gap:6px;overflow:auto;flex:1;padding:4px;scrollbar-width:thin}.thumb{flex:0 0 70px;background:none;border:2px solid transparent;border-radius:4px;padding:2px;min-height:50px}.thumb[aria-pressed=true]{border-color:var(--green)}.thumb img{height:44px;width:100%;object-fit:cover;border-radius:2px}.tags{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.tags li{font-size:11px;letter-spacing:.03em;border:1px solid var(--line);padding:4px 10px;border-radius:4px}.text-link{display:inline-block;padding:10px 0;color:var(--green);font-weight:600;font-size:14px}.text-link span[aria-hidden]{margin-left:8px}.about-section{padding-block:80px;background:var(--pale);border-block:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.about-grid h2{margin-bottom:25px}.about-grid p:not(.eyebrow){font-size:15px;color:var(--muted);margin-top:16px}.about-values{display:flex;gap:28px;margin-top:28px;border-top:1px solid #cbd7c9;padding-top:22px}.about-values strong{display:block;font-size:13px}.about-values span{display:block;font-size:12px;color:var(--muted)}.before-after{display:grid;grid-template-columns:1fr 1fr;gap:14px}.before-after img{aspect-ratio:3/4;object-fit:cover;width:100%;height:auto;border-radius:6px}.before-after figcaption{font-size:12px;padding-top:9px}.before-after p{grid-column:1/-1;margin-top:0!important;font-size:12px!important}.availability-section{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:90px}.availability-section>div>p:not(.eyebrow){margin:20px 0 25px;color:var(--muted);font-size:15px}.availability-section aside{border-left:1px solid var(--line);padding-left:40px}.availability-section aside h3{font-size:25px}.availability-section aside p{font-size:14px;margin:14px 0;color:var(--muted)}.reno-section{padding-block:65px;background:var(--green);color:#fff}.reno-section .eyebrow{color:#c9dec7}.reno-section .section-heading>p{color:#d5e1d2}.reno-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.reno-grid a{text-decoration:none;border-top:1px solid #6d8c75;padding:18px 0 0}.reno-grid a:hover strong{text-decoration:underline;text-underline-offset:4px}.reno-grid a>span{font-size:11px;display:block;color:#d5e1d2}.reno-grid strong{font-family:var(--serif);font-size:20px;font-weight:400;display:block;margin:9px 0 12px}.reno-grid small{font-size:12px;color:#d5e1d2}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:70px}.contact-grid p:not(.eyebrow){margin:20px 0;color:var(--muted);max-width:420px;font-size:15px}.contact-grid p.small{font-size:12px;margin:10px 0 0}.contact-address{align-self:center;border-left:1px solid var(--line);padding-left:40px}.contact-address h3{font-size:24px}.contact-address p{font-size:12px!important;margin:16px 0 3px!important}.contact-address address{font-style:normal;font-size:15px;margin-bottom:15px}.footer-top{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-block:24px;font-size:12px;color:var(--muted)}.beach-banner{background:#edf1f3;border-top:1px solid #d2dce2}.beach-banner-inner{display:flex;gap:28px;align-items:center;padding-block:28px}.beach-banner img{width:166px;height:auto;mix-blend-mode:multiply}.beach-banner strong{font-size:13px;color:#213547}.beach-banner p{font-size:12px;color:#405665;margin-top:4px}.beach-link{margin-left:auto;font-size:12px;color:#213547;font-weight:600;white-space:nowrap}
@media(min-width:861px){.menu-toggle{display:none!important}}
@media(max-width:1000px){nav{gap:16px}.hero{gap:32px}.hero-photo img{height:420px}.property{gap:28px}.about-grid{gap:36px}.beach-banner-inner{gap:20px}.beach-link{white-space:normal;max-width:135px}}
@media(max-width:860px){html{scroll-padding-top:95px}.nav-wrap{flex-wrap:wrap;padding:14px 22px;gap:14px}.js nav{display:none}.js nav.open{display:flex}nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding-bottom:8px}nav a{padding:13px 8px}.nav-portal{margin-top:8px;text-align:center}.hero{gap:26px;padding-top:40px}.hero h1{font-size:54px}.hero-photo img{height:360px}.hero-photo figcaption{flex-direction:column;gap:3px}.hero .lead{font-size:16px}.availability-strip{align-items:flex-start;gap:12px}.availability-strip .status-dot{margin-top:7px}.availability-strip a{white-space:normal;min-width:110px}.property{grid-template-columns:1.1fr 1fr}.property-image{height:290px}.property-copy h3{font-size:27px}.about-grid{gap:30px}.about-values{flex-direction:column;gap:12px}.availability-section{gap:40px}.reno-grid{grid-template-columns:1fr 1fr}.beach-banner-inner{flex-wrap:wrap}.beach-link{margin-left:194px;max-width:none}}
@media(max-width:640px){.container{padding-inline:22px}.hero{grid-template-columns:1fr;padding-top:32px;padding-bottom:28px;gap:24px}.hero h1{font-size:58px}.hero .lead{margin:20px 0 22px;max-width:100%}.hero .quiet-link{display:inline-flex;margin-left:16px;font-size:13px}.hero .button{padding:13px 16px;gap:16px;font-size:13px}.hero-photo{border-radius:60px 6px 6px 6px}.hero-photo img{height:300px;object-position:center}.hero-photo figcaption{flex-direction:row;font-size:11px}.eyebrow{font-size:10px;margin-bottom:14px}.availability-strip{flex-wrap:wrap;padding:17px;font-size:12px;gap:10px}.availability-strip p{flex:1}.availability-strip a{margin-left:18px;flex-basis:100%}.section{padding-block:56px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:18px;max-width:100%;font-size:14px}.property{grid-template-columns:1fr;gap:24px;padding-block:28px}.property-copy h3{font-size:29px}.property-copy>p:not(.eyebrow){font-size:14px;margin-top:14px}.property-image{height:300px}.property-copy .tags{margin:17px 0 8px}.about-section{padding-block:54px}.about-grid{grid-template-columns:1fr;gap:30px}.about-values{flex-direction:row;gap:28px}.before-after img{max-height:290px}.availability-section{grid-template-columns:1fr;gap:28px}.availability-section aside{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}.reno-section{padding-block:48px}.reno-grid{gap:22px}.reno-grid strong{font-size:19px}.contact-grid{grid-template-columns:1fr;gap:28px}.contact-address{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.footer-top{flex-direction:column;gap:6px;padding-block:20px}.footer-top a{padding:8px 0;width:max-content}.beach-banner-inner{gap:17px;padding-block:25px;align-items:flex-start;flex-direction:column}.beach-banner img{width:151px}.beach-link{margin-left:0;padding:4px 0;font-size:13px}.beach-banner strong{font-size:13px}.beach-banner p{max-width:280px}.wordmark{font-size:19px}.wordmark>span>span{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
