@font-face {
  font-family: 'Kaushan Script';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/kaushan-script.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/nunito-400.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/nunito-600.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/nunito-700.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/assets/fonts/nunito-800.ttf) format('truetype');
}

/* Shared coastal palette and photographic surfaces. */
:root{--sea:#086c75;--ink:#164e55;--sand:#fffaf0;--coral:#b74435;background:var(--sand);color:var(--ink)}
body.coastal{background:#fffaf0;color:var(--ink);font-family:'Trebuchet MS',Arial,sans-serif}
.coastal .top,.coastal .topbar,.coastal .topline{background:#08777d;font-size:.875rem;letter-spacing:.08em}
.coastal header,.coastal .header,.coastal .head{background:#fffdf8}
.coastal h1,.coastal h2,.coastal .homes-callout strong{letter-spacing:-.035em}
.coastal .eyebrow,.coastal .section-kicker{color:#a34331;letter-spacing:.12em;font-size:.875rem}
.coastal .btn,.coastal .button,.coastal .back,.coastal .jump a,.coastal .call,.coastal .phone,.coastal .nav .call,.coastal .header nav .phone,.coastal .links a{border-radius:28px}
.coastal .btn-red,.coastal .call,.coastal .phone,.coastal .nav .call,.coastal .header nav .phone,.coastal .seller-flyer .button,.coastal .listing-package .button,.coastal .close .button{background:var(--coral)}
.coastal .btn-outline{border-color:var(--sea);color:var(--sea)}
.coastal .card,.coastal .feature{border:1px solid #dce9df;border-top:0;border-radius:24px;background:#fff;box-shadow:0 8px 24px #2458470a}
.coastal .card .num,.coastal .feature .number{color:var(--sea)}
.coastal .property,.coastal .vendor,.coastal .gallery img,.coastal .gallery figure{border-radius:22px}
.coastal footer{background:#e7f2ec;color:#25565a;border-top:1px solid #caddd2}
.coastal footer a,.coastal footer strong,.coastal footer .details,.coastal footer .agent strong{color:#164e55}
.coastal .fine,.coastal .details{border-color:#bfd5cb;font-size:.875rem}
.coastal .return,.coastal .value{background:var(--sea)}
.coastal .listing-package{background:#e6f3ee}
.coastal .seller-flyer,.coastal .listings-flyer{background:#fffaf0!important}
.coastal .hero{background:linear-gradient(90deg,rgba(255,250,240,.97) 0%,rgba(255,250,240,.91) 43%,rgba(255,250,240,.16) 100%),url('/assets/private-beach.jpeg') center/cover;color:var(--ink)}
.coastal-sell .hero{background-image:linear-gradient(90deg,rgba(255,250,240,.97),rgba(255,250,240,.91) 43%,rgba(255,250,240,.15)),url('/assets/golf-course.jpeg')}
.coastal .hero h1{color:var(--ink);line-height:1.07}
.coastal .hero h1 em,.coastal .hero h1 span{color:var(--sea)}
.coastal .hero p{color:#315b5d}
.coastal .hero .label{color:#a34331;font-size:.875rem}
.coastal .hero-art img,.coastal .hero-photo img{border:7px solid #fffdf8;border-radius:12px;box-shadow:0 14px 35px #184f4930}
.coastal .art-tag,.coastal .photo-note{border:0;border-radius:20px;background:#fffdf8;color:var(--ink);font-size:.875rem;box-shadow:0 5px 18px #164e5520}
.coastal .visit,.coastal .close{background:linear-gradient(90deg,rgba(8,78,82,.94),rgba(8,78,82,.67)),url('/assets/fishing-pier.jpeg') center 58%/cover;color:white}
.coastal .close p,.coastal .visit p{color:white}.coastal .close .eyebrow{color:#ffe1a2}
.coastal-home main.shell{max-width:none;padding:0 0 64px}
.coastal-home .welcome{padding:64px max(24px,calc((100% - 1120px)/2));min-height:540px;display:flex;align-items:center;background:url('/assets/private-beach.jpeg') center 55%/cover;text-align:left}
.coastal-home .welcome-panel{padding:36px 40px 30px;max-width:640px;border-radius:28px;background:rgba(255,253,247,.95);box-shadow:0 16px 48px #164e551a}
.coastal-home h1{font-size:clamp(2.8rem,5.1vw,4.8rem);line-height:1.06;color:var(--ink)}
.coastal-home h1 span{color:var(--sea)}
.coastal-home .lead{font-size:1.15rem;margin:0 0 28px;color:#315b5d}
.coastal-home .sandy-intro{justify-content:flex-start;margin:0;color:var(--ink)}
.coastal-home .sandy-intro img{width:76px;height:76px;border:3px solid white}
.coastal-home .choices{max-width:1120px;margin:32px auto 0;padding:0 24px;gap:24px}
.coastal-home .choice{border-radius:26px;min-height:370px;padding:34px;box-shadow:0 12px 28px #164e5515;background-position:center;background-size:cover}
.coastal-home .buy{background-image:linear-gradient(90deg,rgba(4,71,77,.93),rgba(4,71,77,.63)),url('/assets/fishing-pier.jpeg')}
.coastal-home .sell{background-image:linear-gradient(90deg,rgba(97,50,34,.94),rgba(97,50,34,.65)),url('/assets/golf-course.jpeg')}
.coastal-home .choice .eyebrow{color:#ffe3a8}
.coastal-home .choice h2{margin:16px 0;font-size:clamp(2.4rem,3.8vw,3.5rem)}
.coastal-home .go{display:inline-block;text-decoration:underline;text-underline-offset:6px}
.coastal-home .hot-buy-button{border-radius:30px;background:#ffe2a3;color:#234d50}
.coastal-home .homes-callout{max-width:1072px;margin:22px auto 0;padding:27px 30px;border:1px solid #d8e8df;border-radius:22px;background:#fffdf8;flex-wrap:wrap}
.coastal-home .homes-callout strong{color:var(--ink)}
.coastal-home .homes-callout a{border-radius:24px;background:var(--sea);white-space:normal;text-align:center}
.coastal-home .activities-callout{background:linear-gradient(90deg,rgba(255,253,248,.96),rgba(255,253,248,.9)),url('/assets/golf-course.jpeg') center/cover;border:0}
.coastal-home .activities-callout a{background:var(--coral)}
.coastal-amenities .intro{background:linear-gradient(90deg,rgba(255,250,240,.97),rgba(255,250,240,.80)),url('/assets/private-beach.jpeg') center/cover}
.coastal-homes .intro,.coastal-hot-buy .intro,.coastal-vendors .intro,.coastal-activities .intro{padding:40px;margin-top:24px;margin-bottom:24px;border-radius:26px;background:linear-gradient(90deg,rgba(255,253,247,.97),rgba(255,253,247,.83)),url('/assets/fishing-pier.jpeg') center/cover}
.coastal a:focus-visible{outline:3px solid #b74435;outline-offset:5px}
@media(max-width:700px){.coastal-home .welcome{padding:32px 18px;min-height:500px;background-position:58% center}.coastal-home .welcome-panel{padding:28px 24px;border-radius:24px}.coastal-home .choices{padding:0 18px;grid-template-columns:1fr}.coastal-home .homes-callout{margin-left:18px;margin-right:18px;padding:24px}.coastal-home .choice{min-height:330px;padding:28px}.coastal .hero{background-image:linear-gradient(rgba(255,250,240,.92),rgba(255,250,240,.65)),url('/assets/private-beach.jpeg')}.coastal-sell .hero{background-image:linear-gradient(rgba(255,250,240,.94),rgba(255,250,240,.65)),url('/assets/golf-course.jpeg')}.coastal-homes .intro,.coastal-hot-buy .intro,.coastal-vendors .intro,.coastal-activities .intro{padding:28px 22px}.coastal .top,.coastal .topbar,.coastal .topline{font-size:.875rem;line-height:1.5}.coastal .nav{gap:14px}.coastal .brand{min-width:0}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Friendly coastal typography inspired by Sandy's flyer. */
body.coastal{font-family:'Nunito','Trebuchet MS',Arial,sans-serif}
.coastal h1,.coastal h2,.coastal h3,.coastal .homes-callout strong,.coastal .value strong{font-family:'Nunito','Trebuchet MS',Arial,sans-serif;font-weight:800;letter-spacing:-.025em;line-height:1.18}
.coastal-home .welcome .welcome-panel h1{font-family:'Kaushan Script','Brush Script MT',cursive;font-weight:400;font-size:clamp(3rem,7.5vw,6.5rem);line-height:1.3;letter-spacing:0;color:#102f55;margin-bottom:24px}
.coastal-home .welcome h1 span{display:block;color:#087f89;position:relative;padding-bottom:12px}
.coastal-home .welcome h1 span::after{content:'';display:block;width:70%;height:5px;margin:7px auto 0;border-radius:50%;background:#f2c64c;transform:rotate(-1deg)}
.coastal-home .choice h2{font-family:'Nunito','Trebuchet MS',Arial,sans-serif;font-weight:800;line-height:1.15;letter-spacing:-.025em;font-size:clamp(2.2rem,3.5vw,3.1rem)}
.coastal .eyebrow,.coastal .section-kicker{letter-spacing:.06em}

body.coastal-home{background:#c9ebf9}
.coastal-home main.shell{background:linear-gradient(180deg,#def4ff,#c9ebf9)}
.coastal-home .homes-callout{background:#f4fbff;border-color:#b5dceb}
.coastal-home .activities-callout{background:#e9f7ff}
@media(max-width:700px){.coastal-home .welcome .welcome-panel h1{font-size:clamp(2.85rem,9.8vw,4.3rem);line-height:1.3}}
