@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;700;800&display=swap');
:root{--ink:#153b3e;--teal:#0a5756;--line:#d9e4e1;--muted:#587173}*{box-sizing:border-box}body{margin:0;background:#f6f9f7;color:var(--ink);font:19px/1.55 'DM Sans',sans-serif}button,input,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:white;color:var(--ink);border-radius:9px;padding:10px 17px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ce871a;outline-offset:3px}a{color:inherit}header{height:85px;padding:0 5%;display:flex;align-items:center;gap:48px;border-bottom:1px solid var(--line);background:white}.brand{font-family:Manrope,sans-serif;font-weight:800;font-size:27.6px;letter-spacing:-.8px;text-decoration:none;white-space:nowrap}.brand b{display:inline-grid;place-items:center;background:var(--teal);color:#c5efdf;width:37px;height:37px;border-radius:50%;font-size:42.0px;margin-right:8px;vertical-align:middle}nav{display:flex;gap:20px;height:100%;align-items:center}nav button{border:0;background:transparent;border-radius:0;height:100%;padding:10px 4px;color:var(--muted)}nav button.active{border-bottom:3px solid var(--teal);color:var(--teal);font-weight:700}#saveCount{font-size:14.4px;background:#e7efeb;border-radius:100px;padding:3px 7px}.region{margin-left:auto;font-size:14.4px;letter-spacing:1.7px;font-weight:700}main{max-width:1440px;padding:0 5%;margin:auto}.intro{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center;padding:35px 0 30px}.eyebrow{font-size:14.4px;letter-spacing:2px;font-weight:800;color:var(--teal)}h1{font-family:Manrope,sans-serif;font-size:clamp(38.4px,4.2vw,58.8px);line-height:1.16;letter-spacing:-2px;margin:14px 0 18px}h1 em{font-style:normal;color:#14786d}.intro p{color:var(--muted);margin:0}.intro figure{margin:0;position:relative;overflow:hidden;border-radius:100px 16px 16px 16px;height:230px;background:#c9e5df}.intro img{width:100%;height:100%;object-fit:cover}.intro figcaption{position:absolute;bottom:0;background:linear-gradient(transparent,#102e2ddd);padding:32px 20px 14px;color:#fff;width:100%;font-size:14.4px}.discovery{border:1px solid var(--line);background:white;border-radius:16px;padding:20px 24px 16px}.searchrow{display:grid;grid-template-columns:1fr 190px 180px;gap:22px}.searchrow label{font-size:14.4px;font-weight:700;color:var(--muted)}select{display:block;border:0;background:transparent;color:var(--ink);width:100%;padding:6px 0;font-size:19.2px}.search{display:flex;align-items:center;gap:15px;border-right:1px solid var(--line)}.search span{font-size:38.4px}.search input{border:0;width:100%;padding:9px 6px;font-size:19.2px;min-width:0;background:transparent}.categories{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid #edf2ef;padding-top:15px;margin-top:14px}.categories button{padding:8px 14px;border:0;border-radius:24px;font-size:16.8px;background:#f0f5f2}.categories button[aria-pressed=true]{background:var(--teal);color:white}.results{padding-top:28px}.resulthead{display:flex;justify-content:space-between;align-items:center}h2{font-family:Manrope,sans-serif;font-size:33.6px;margin:4px 0;letter-spacing:-.8px}.resulthead p{margin:4px 0;color:var(--muted);font-size:16.8px}.view{display:flex;border:1px solid var(--line);padding:4px;border-radius:10px;gap:4px}.view button{border:0;font-size:16.8px;background:transparent}.view button[aria-pressed=true]{background:var(--ink);color:white}.note{font-size:15.6px;color:var(--muted);margin:14px 0 22px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform .18s}.card:hover{transform:translateY(-3px)}.cardtop{padding:17px 20px 10px;display:flex;align-items:center;justify-content:space-between}.category{font-size:14.4px;letter-spacing:.8px;text-transform:uppercase;font-weight:800;color:var(--teal)}.save{border:0;background:#f0f6f3;border-radius:50%;font-size:26.4px;padding:0;width:37px;height:37px}.save[aria-pressed=true]{background:#d1ecdf;color:#075644}.cardbody{padding:0 20px 18px;flex:1}.location{font-size:14.4px;color:var(--muted);margin-bottom:7px}.card h3{font-family:Manrope,sans-serif;font-size:24.0px;line-height:1.3;margin:0 0 10px;letter-spacing:-.5px}.card p{font-size:16.8px;color:var(--muted);margin:0 0 14px}.tags{display:flex;gap:6px;flex-wrap:wrap;font-size:14.4px}.tags span{background:#f0f5f2;padding:4px 9px;border-radius:5px}.tags .free{background:#e2f3db;color:#365b26}.cardfoot{border-top:1px solid #edf2ef;display:flex;align-items:center;justify-content:space-between;padding:13px 20px;gap:8px}.cardfoot button{font-size:16.8px;border:0;padding:4px 0;font-weight:700;color:var(--teal);background:none}.cardfoot .mapbutton{font-size:14.4px;color:var(--muted);font-weight:500}#mapPanel{display:grid;grid-template-columns:240px 1fr;gap:20px;padding:20px;background:#e7f1ec;border-radius:16px;margin-bottom:22px}#mapPanel[hidden]{display:none}#mapPanel p{font-size:16.8px}iframe{border:0;width:100%;height:330px;border-radius:10px}#empty{text-align:center;padding:55px}footer{padding:40px 0 30px;border-top:1px solid var(--line);margin-top:40px}footer p{color:var(--muted);margin:8px 0}footer small{font-size:14.4px;color:var(--muted)}dialog{width:min(600px,calc(100% - 30px));max-height:85vh;overflow:auto;border:1px solid var(--line);border-radius:18px;padding:34px;color:var(--ink)}dialog::backdrop{background:#092d35aa;backdrop-filter:blur(4px)}.close{position:absolute;right:15px;top:13px;font-size:30.0px;padding:0 10px;border:0}dialog h2{margin-top:16px}dialog p{color:var(--muted)}.detailgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0}.detailgrid div{padding:13px;background:#f1f6f3;border-radius:8px}.detailgrid small{display:block;color:var(--muted);font-size:14.4px}.actions{display:flex;gap:10px;flex-wrap:wrap}.actions a{padding:11px 18px;text-decoration:none;border-radius:8px;background:var(--teal);color:white}.actions a.secondary{background:#e8efeb;color:var(--ink)}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:12px 24px;border-radius:9px;display:none;z-index:10}@media(max-width:900px){header{gap:24px}.region{display:none}.intro{gap:25px}.grid{grid-template-columns:repeat(2,1fr)}.searchrow{grid-template-columns:1fr 150px 150px;gap:12px}}@media(max-width:600px){header{height:72px;padding:0 5%;gap:15px;justify-content:space-between}.brand{font-size:21.6px}.brand b{width:28px;height:28px;font-size:33.6px;margin-right:3px}nav{gap:12px}nav button{font-size:16.8px}.intro{grid-template-columns:1fr;padding:27px 0 22px;gap:20px}.intro h1{font-size:42.0px}.intro figure{height:145px;border-radius:50px 12px 12px 12px}.intro p{font-size:16.8px}.searchrow{grid-template-columns:1fr 1fr}.search{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--line);padding-bottom:10px}.discovery{padding:16px}.categories{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}.categories button{white-space:nowrap}.grid{grid-template-columns:1fr}.resulthead{align-items:flex-end}h2{font-size:27.6px}.view button{padding:7px 10px}#mapPanel{grid-template-columns:1fr}#mapPanel h3,#mapPanel p{margin:0}dialog{padding:26px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.brand-wave{width:96px;height:54px;object-fit:contain;vertical-align:middle;margin-right:8px;flex-shrink:0}@media(max-width:600px){.brand-wave{width:70px;height:40px;margin-right:3px}}

.intro{grid-template-columns:1.1fr .9fr;gap:36px}.photo-collection{width:min(100%,370px);justify-self:end}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.intro .photo-grid figure{height:auto;aspect-ratio:1;margin:0;border-radius:12px;min-width:0}.intro .photo-grid img{display:block;width:100%;height:100%;object-fit:cover}.intro .photo-grid figcaption{padding:25px 11px 10px;font-size:14.4px;font-weight:600;line-height:1.3}.intro .photo-credit{font-size:14.4px;line-height:1.5;margin:9px 0 0;color:var(--muted)}@media(max-width:600px){.intro{grid-template-columns:1fr;gap:20px}.photo-collection{width:100%;max-width:370px;justify-self:center}.photo-grid{gap:8px}}

.lagoon-spotlight{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:22px;padding:24px;border:1px solid #b9d9ce;border-radius:16px;background:#e7f2ec}.lagoon-spotlight h2{font-size:30.0px;margin:5px 0 8px}.lagoon-spotlight p{margin:0;color:var(--muted);max-width:680px;font-size:16.8px}.lagoon-spotlight button{background:var(--teal);color:white;border:0;flex-shrink:0}.lagoon-spotlight button span{margin-left:8px}@media(max-width:600px){.lagoon-spotlight{align-items:flex-start;flex-direction:column;padding:20px;gap:16px}.lagoon-spotlight button{width:100%}}

@media(max-width:600px){header{height:auto;min-height:72px;flex-wrap:wrap;padding-top:14px;padding-bottom:10px;gap:8px}header .brand{font-size:21.6px;white-space:normal}header nav{height:42px}footer .brand{white-space:normal}}

/* Center the kayaker within the square lagoon thumbnail. */
.intro .photo-grid figure:first-child img{object-position:100% 50%;transform:scale(1.7);transform-origin:100% 50%}

/* Larger coastal activity slideshow. */
.intro{grid-template-columns:.85fr 1.15fr;gap:40px;padding:40px 0 34px}
.photo-collection{width:100%;max-width:720px;justify-self:end}
.slideshow{overflow:hidden;border-radius:18px;background:var(--ink);box-shadow:0 12px 28px #153b3e15}
.slide-stage{position:relative;aspect-ratio:16/10}
.intro .slide{height:100%;width:100%;margin:0;border-radius:0;position:absolute;inset:0}
.intro .slide[hidden]{display:none}
.intro .slide img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transform:none}
.intro .slide:first-child img{object-position:70% center}
.intro .slide figcaption{font-size:24.0px;font-weight:700;line-height:1.3;padding:48px 22px 20px;background:linear-gradient(transparent,#102e2de8)}
.slide-controls{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--ink)}
.slide-controls button{color:white;background:#ffffff12;border-color:#ffffff35;font-size:16.8px;padding:7px 10px;min-height:36px}
.slide-dots{display:flex;gap:6px;justify-content:center;flex:1}
.slide-controls .slide-dot{width:24px;height:32px;min-height:32px;padding:0;border:0;background:transparent;display:grid;place-items:center}
.slide-dot::before{content:'';width:8px;height:8px;border-radius:50%;background:#ffffff66}
.slide-dot[aria-pressed=true]::before{background:#fff;width:10px;height:10px}
@media(max-width:900px){.intro{gap:24px;grid-template-columns:.85fr 1.15fr}.slide-controls{gap:5px;padding:10px}.slide-dots{gap:1px}.slide-controls button{padding:6px 7px}}
@media(max-width:600px){.intro{grid-template-columns:1fr;gap:24px;padding:27px 0 24px}.photo-collection{max-width:none}.slide-stage{aspect-ratio:4/3}.intro .slide figcaption{font-size:21.6px}.slide-controls{gap:6px}.slide-dots{gap:2px}}
@media(max-width:360px){.slide-controls{flex-wrap:wrap;justify-content:center}.slide-dots{order:4;flex-basis:100%}}

.intro .slide:first-child img{object-position:center}

/* Show complete images so people are never cropped by the slideshow. */
.intro .slide img{object-fit:contain;object-position:center;transform:none}
.intro .slide{background:var(--ink)}
.slide-controls{display:grid;grid-template-columns:1fr auto 1fr;gap:8px 12px}
#slidePrev{grid-column:1;grid-row:1;justify-self:start}
#slidePause{grid-column:2;grid-row:1}
#slideNext{grid-column:3;grid-row:1;justify-self:end}
.slide-dots{grid-column:1/-1;grid-row:2;display:flex;flex-wrap:wrap;gap:2px;justify-content:center}

.cardfoot{flex-wrap:wrap;gap:8px}.cardfoot .business-link{display:block;flex:1 0 100%;text-align:center;background:#175b50;color:#fff;border-radius:8px;padding:10px 12px;text-decoration:none;font-weight:700}.cardfoot .business-link:hover{background:#10443b}.cardfoot .business-link:focus-visible{outline:3px solid #d88b43;outline-offset:3px}

.local-find{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:36px 0;padding:28px;border:1px solid var(--line);border-radius:16px;background:#e8f2ee}.local-find h2{margin:6px 0 10px}.local-find p{margin:0;max-width:620px}.local-find-action{flex:0 0 235px}.local-find-action a{display:block;background:var(--teal);color:white;text-align:center;padding:12px 18px;border-radius:9px;text-decoration:none;font-weight:700}.local-find-action small{display:block;margin-top:9px;color:var(--muted);font-size:16.8px}@media(max-width:700px){.local-find{flex-direction:column;align-items:stretch;padding:22px}.local-find-action{flex-basis:auto}}

.weekend-spotlight{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 28px;padding:26px 28px;border-left:5px solid #dc9b3b;border-radius:12px;background:#153b3e;color:#fff}.weekend-spotlight .eyebrow{color:#f4c478}.weekend-spotlight h2{margin:6px 0 10px}.weekend-spotlight p{margin:0;max-width:600px}.weekend-spotlight a{flex-shrink:0;background:#fff;color:#153b3e;text-decoration:none;border-radius:9px;padding:12px 18px;font-weight:700;text-align:center}@media(max-width:700px){.weekend-spotlight{flex-direction:column;align-items:stretch;padding:22px}.weekend-spotlight a{white-space:normal}}

/* Bright Atlantic coast palette */
:root{--ink:#103d59;--teal:#006b88;--line:#b9dfe8;--muted:#49697d}
body{background:linear-gradient(180deg,#def8ff 0,#f5fcff 650px,#edf9ff 100%)}
header{background:#fff;border-bottom:4px solid #10b7c5}.region{color:#006b88}
h1 em{color:#007493}.intro .eyebrow{color:#a64124}.intro h1{color:#103d59}
.photo-collection{border-top:5px solid #ff795f;border-radius:15px}.slideshow{box-shadow:0 12px 30px #006b881c}
.discovery{border-top:5px solid #12afbf;box-shadow:0 8px 24px #006b880d}
.categories button{background:#e0f5fb;color:#174e69;border:1px solid #b3e2ed}.categories button:nth-child(3n+2){background:#fff0d0;border-color:#f4d488}.categories button:nth-child(3n){background:#ffe9e1;border-color:#f8c2b1}.categories button[aria-pressed=true]{background:#006b88;border-color:#006b88;color:#fff}
.card{border-color:#b9dfe8;box-shadow:0 5px 18px #006b880b;border-top:4px solid #11afbe}.card:nth-child(3n+2){border-top-color:#ff795f}.card:nth-child(3n){border-top-color:#f5be43}.category{color:#006b88}.cardfoot .business-link{background:#006b88}.cardfoot .business-link:hover{background:#00516c}
.weekend-spotlight{background:linear-gradient(120deg,#005c86,#00768a);border-left-color:#ffd05d}.weekend-spotlight .eyebrow{color:#ffe49b}.weekend-spotlight a{color:#005c86}
.local-find{background:#fff0cf;border-color:#e7c467;border-left:5px solid #ff795f}.local-find .eyebrow{color:#9a3e22}.local-find-action a{background:#006b88}
footer{border-top:4px solid #10b7c5}

.intro h1{font-size:clamp(52.8px,5.52vw,79.2px);line-height:1.1;letter-spacing:-1.5px;color:#0078a6;margin-top:0;font-weight:800;overflow-wrap:normal}.intro h1 em{color:#c74629}@media(max-width:700px){.intro h1{font-size:clamp(48.0px,9.0vw,62.4px);letter-spacing:-1px}}

.categories button{font-weight:800;text-transform:capitalize}
.card[data-category="Fishing"]{border-top-color:#11afbe}.card[data-category="Fishing"] .cardtop{background:#11afbe}.card[data-category="Fishing"] .category{color:#083a46}
.card[data-category="Kayaking"]{border-top-color:#f5be43}.card[data-category="Kayaking"] .cardtop{background:#f5be43}.card[data-category="Kayaking"] .category{color:#49320b}
.card[data-category="Beaches & parks"]{border-top-color:#895731}.card[data-category="Beaches & parks"] .cardtop{background:#895731}.card[data-category="Beaches & parks"] .category{color:#fff}
.card[data-category="Boat rentals"]{border-top-color:#c73632}.card[data-category="Boat rentals"] .cardtop{background:#c73632}.card[data-category="Boat rentals"] .category{color:#fff}
.card[data-category="Fishing"] .save,.card[data-category="Kayaking"] .save,.card[data-category="Beaches & parks"] .save,.card[data-category="Boat rentals"] .save{background:#fff;color:#103d59}

.intro-adventures{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:10px;color:var(--ink);font-size:21.6px}.intro-adventures li{display:flex;align-items:baseline;gap:11px}.intro-adventures li span{flex:0 0 25px;font-size:26.4px}.intro .intro-destination{font-weight:700;color:#006b88;margin-top:0}

.intro .intro-destination{font-size:clamp(26.4px,2.52vw,33.6px);line-height:1.35;font-weight:800}

.card[data-category="Cruises & wildlife"]{border-top-color:#285bc0}.card[data-category="Cruises & wildlife"] .cardtop{background:#285bc0}.card[data-category="Cruises & wildlife"] .category{color:#fff}
.card[data-category="Trails & nature"]{border-top-color:#287343}.card[data-category="Trails & nature"] .cardtop{background:#287343}.card[data-category="Trails & nature"] .category{color:#fff}
.card[data-category="Cruises & wildlife"] .save,.card[data-category="Trails & nature"] .save{background:#fff;color:#103d59}
.cardtop{gap:12px}.category{line-height:1.35}.save{flex-shrink:0;width:44px;height:44px}.intro>div,.cardbody{min-width:0}.cardfoot{gap:12px}.cardfoot button{white-space:normal}.weekend-spotlight{flex-wrap:wrap}.region{white-space:normal}.intro h1{overflow-wrap:break-word}
@media(max-width:1000px){header{height:auto;min-height:85px;flex-wrap:wrap;gap:12px 24px;padding-top:12px;padding-bottom:12px}header .brand{white-space:normal}header nav{height:auto}.region{margin-left:0}.resulthead{flex-wrap:wrap;gap:14px}.searchrow{gap:14px}}

.card[data-category="Restaurants & bakeries"]{border-top-color:#ef806d}.card[data-category="Restaurants & bakeries"] .cardtop{background:#ef806d}.card[data-category="Restaurants & bakeries"] .category{color:#49241d}.card[data-category="Restaurants & bakeries"] .save{background:#fff;color:#103d59}

.card[data-category="Bait & tackle"]{border-top-color:#ed9a35}.card[data-category="Bait & tackle"] .cardtop{background:#ed9a35}.card[data-category="Bait & tackle"] .category{color:#442d10}.card[data-category="Bait & tackle"] .save{background:#fff;color:#103d59}

.card[data-category="Golf cart rentals"]{border-top-color:#b9d95d}.card[data-category="Golf cart rentals"] .cardtop{background:#b9d95d}.card[data-category="Golf cart rentals"] .category{color:#30400e}.card[data-category="Golf cart rentals"] .save{background:#fff;color:#103d59}

.card[data-category="Bike rentals"]{border-top-color:#65d5d5}.card[data-category="Bike rentals"] .cardtop{background:#65d5d5}.card[data-category="Bike rentals"] .category{color:#123e49}.card[data-category="Bike rentals"] .save{background:#fff;color:#103d59}

.card[data-category="Space & launches"]{border-top-color:#7546ba}.card[data-category="Space & launches"] .cardtop{background:#7546ba}.card[data-category="Space & launches"] .category{color:#ffffff}.card[data-category="Space & launches"] .save{background:#fff;color:#103d59}

.card[data-category="Racing & go-karts"]{border-top-color:#b32b85}.card[data-category="Racing & go-karts"] .cardtop{background:#b32b85}.card[data-category="Racing & go-karts"] .category{color:#fff}.card[data-category="Racing & go-karts"] .save{background:#fff;color:#103d59}


.card[data-category="Boat ramps"]{border-top-color:#174f65}.card[data-category="Boat ramps"] .cardtop{background:#174f65}.card[data-category="Boat ramps"] .category{color:#fff}.card[data-category="Boat ramps"] .save{background:#fff;color:#103d59}

.tracking-preference{margin-top:22px}.tracking-preference button{font:inherit;font-weight:700;padding:10px 16px;border:2px solid #174f65;border-radius:12px;background:#fff;color:#174f65;cursor:pointer}.tracking-preference p{font-size:1rem;line-height:1.5}
