
:root{--navy:#123b48;--teal:#087f80;--aqua:#4eb9b1;--cream:#fbfaf5;--coral:#ed745e;--gold:#e7ae46;--ink:#183b42;--muted:#657b7e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}.notice{background:var(--navy);color:#d8eeee;text-align:center;padding:9px;font-size:11px;letter-spacing:.1em;text-transform:uppercase}header{height:86px;display:flex;align-items:center;gap:38px;max-width:1240px;margin:auto;padding:0 30px}.brand{display:flex;align-items:center;gap:10px;margin-right:auto}.mark{width:47px;height:47px;border-radius:50%;display:grid;place-items:center;background:var(--teal);border:4px solid #cbe7dc;color:white;font-family:Georgia,serif;font-weight:bold}.brand strong,.brand small{display:block}.brand strong{font:19px Georgia,serif}.brand small{font-size:10px;letter-spacing:.2em;color:var(--teal);font-weight:bold;margin-top:3px}nav{display:flex;gap:28px;font-size:13px;font-weight:bold}nav a:hover{color:var(--teal)}.button{display:inline-block;background:var(--coral);color:white;border-radius:4px;padding:17px 22px;font-size:13px;font-weight:bold}.button.small{padding:14px 20px}.hero{min-height:620px;display:grid;grid-template-columns:1.05fr .95fr;background:#f7f0e2}.hero-copy{padding:95px max(30px,calc((100vw - 1180px)/2));padding-right:70px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-weight:bold;color:var(--teal);font-size:12px}.hero h1{font:normal clamp(52px,6vw,80px)/.98 Georgia,serif;margin:19px 0 27px;color:var(--navy);letter-spacing:-.035em}.hero h1 em{color:var(--teal);font-weight:normal}.lead{font:21px/1.6 Georgia,serif;max-width:620px;color:#466165}.actions{display:flex;gap:18px;align-items:center;margin-top:32px}.text-link{font-size:13px;font-weight:bold;border-bottom:1px solid;padding:10px 0}.micro{font-size:11px;color:#718184;margin-top:24px}.coast{position:relative;overflow:hidden;background:linear-gradient(#bfe7e1 0 49%,#42b1ae 49% 71%,#f4e3bd 71%)}.sun{position:absolute;width:105px;height:105px;border-radius:50%;background:#f4c35a;right:18%;top:14%}.cloud{position:absolute;top:28%;left:10%;width:180px;height:38px;background:#fff9e9;border-radius:40px;box-shadow:70px -28px 0 8px #fff9e9}.waves{position:absolute;top:48%;left:0;right:0;color:#d8ffff;font-size:70px;line-height:.45;transform:rotate(-2deg);opacity:.75}.sand{position:absolute;bottom:0;left:0;right:0;height:31%;background:linear-gradient(165deg,transparent 0 17%,#e8d19d 18%)}.place{position:absolute;bottom:38px;left:42px;background:#fffffff0;padding:16px 20px;border-left:4px solid var(--coral);box-shadow:0 10px 30px #164f5530}.place b,.place span{display:block}.place b{font:17px Georgia,serif}.place span{font-size:11px;color:var(--muted);margin-top:5px}.quick{max-width:1180px;margin:-32px auto 0;position:relative;background:white;display:grid;grid-template-columns:repeat(3,1fr);box-shadow:0 18px 50px #19464a18}.quick article{display:flex;gap:18px;padding:30px;border-right:1px solid #e1e8e5}.quick article:last-child{border:0}.bubble{width:44px;height:44px;flex:0 0 44px;border-radius:50%;display:grid;place-items:center;font-size:24px}.aqua{background:#d9efeb;color:var(--teal)}.coral{background:#fde3dd;color:var(--coral)}.gold{background:#f9e9c4;color:#ae7513}.quick h2{font:18px Georgia,serif;margin:2px 0 8px}.quick p{font-size:12px;line-height:1.6;color:var(--muted);margin:0}.section{max-width:1180px;margin:auto;padding:105px 0}.heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:34px}.heading h2,.about h2{font:42px Georgia,serif;color:var(--navy);margin:10px 0 0}.heading>a{color:var(--teal);font-size:13px;font-weight:bold;border-bottom:1px solid}.beaches{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid #d9e4df;background:white}.beaches a{padding:25px 22px;border-right:1px solid #d9e4df;transition:.2s}.beaches a:hover{background:#e9f5f1;transform:translateY(-3px)}.beaches span,.beaches small,.beaches b{display:block}.beaches span{font:18px Georgia,serif}.beaches small{min-height:50px;margin-top:9px;line-height:1.45;color:var(--muted)}.beaches b{font-size:11px;color:var(--teal)}.note{background:#edf6f3;border-left:4px solid var(--teal);padding:18px 22px;font-size:13px;line-height:1.6}.vibrio{background:var(--navy);color:#eef7f4;display:grid;grid-template-columns:1fr 1fr;padding:95px max(30px,calc((100vw - 1180px)/2));gap:110px}.pale{color:#83d0c8}.vibrio h2{font:46px/1.1 Georgia,serif;margin:16px 0 25px}.serif{font:18px/1.7 Georgia,serif;color:#c8dcda}.vibrio>div>a{color:#8dd5cf;font-size:13px;font-weight:bold;border-bottom:1px solid}.vibrio aside{background:#1d4d57;padding:38px;border-top:4px solid var(--coral)}.vibrio h3{font:24px Georgia,serif;margin-top:0}.vibrio ul{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:0;list-style:none}.vibrio li{background:#285b64;padding:14px;font-size:13px}.vibrio aside p{font-size:12px;line-height:1.7;color:#bcd1d0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.steps article{background:white;padding:32px;border-top:3px solid var(--aqua)}.steps>b,.steps article>b{color:var(--aqua);font-size:12px}.steps h3{font:25px Georgia,serif}.steps p{color:var(--muted);font-size:14px;line-height:1.7}.urgent{display:flex;align-items:center;gap:22px;margin-top:30px;background:#fff0ec;border:1px solid #f2c3b8;padding:24px 28px}.urgent>b{width:42px;height:42px;border-radius:50%;background:var(--coral);color:white;display:grid;place-items:center;font-size:22px}.urgent div{margin-right:auto}.urgent h3{margin:0 0 5px;font:20px Georgia,serif}.urgent p{margin:0;color:#6e6260;font-size:13px}.urgent a{color:#b84d3b;font-size:12px;font-weight:bold}.about{display:grid;grid-template-columns:1fr 1fr;gap:100px;border-top:1px solid #dce4df}.about>div:last-child{font:18px/1.7 Georgia,serif;color:#50686c}footer{background:#0d3039;color:#dcebe8;padding:52px max(30px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1.3fr 1fr 1fr;align-items:center;gap:24px}footer .brand strong{color:white}footer>div:nth-of-type(2){display:flex;gap:22px;justify-content:flex-end;font-size:12px;font-weight:bold}footer>small{grid-column:1/-1;border-top:1px solid #31515a;padding-top:18px;color:#829a9c;font-size:10px}
@media(max-width:900px){nav{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:70px 28px}.coast{min-height:390px}.quick{margin:0 20px;grid-template-columns:1fr}.section{padding:75px 24px}.beaches{grid-template-columns:1fr 1fr}.vibrio{grid-template-columns:1fr;gap:40px;padding:75px 24px}.about{grid-template-columns:1fr;gap:30px}.steps{grid-template-columns:1fr}footer{grid-template-columns:1fr}footer>small{grid-column:1}.heading{align-items:flex-start;gap:20px;flex-direction:column}}
@media(max-width:540px){header{padding:0 18px}.button.small{display:none}.hero h1{font-size:49px}.actions{align-items:flex-start;flex-direction:column}.beaches{grid-template-columns:1fr}.vibrio ul{grid-template-columns:1fr}.heading h2,.about h2,.vibrio h2{font-size:37px}.urgent{align-items:flex-start;flex-wrap:wrap}}

/* Identity badge on the site */
.brand-logo{width:56px;height:56px;object-fit:contain;flex:none}.about-logo{display:block;width:min(100%,280px);height:auto;margin-top:28px}footer .brand-logo{width:66px;height:66px;background:white;border-radius:50%;padding:3px}header .brand-logo{background:white;border-radius:50%}
@media(max-width:540px){.brand-logo{width:46px;height:46px}.about-logo{width:min(75vw,260px)}}

/* Coastal editorial hero */
.coast{background:#5aa6a1 url("coast-hero.png") center center/cover no-repeat;min-height:620px}.coast:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,47,58,.08),transparent 35%,rgba(11,47,58,.13));pointer-events:none}.hero-badge{position:absolute;left:50%;top:51%;transform:translate(-50%,-50%);width:clamp(210px,22vw,285px);aspect-ratio:1;background:white;border-radius:50%;padding:9px;box-shadow:0 18px 55px rgba(11,47,58,.24);z-index:1}.hero-badge img{display:block;width:100%;height:100%;object-fit:contain;border-radius:50%}.photo-credit{position:absolute;right:22px;bottom:18px;color:white;text-shadow:0 1px 5px #123b48;font-size:10px;letter-spacing:.12em;text-transform:uppercase;z-index:1}.bubble{font-size:12px;letter-spacing:.08em;font-family:Arial,sans-serif}.quick{box-shadow:0 14px 42px #19464a12}.place,.sun,.cloud,.waves,.sand{display:none}
@media(max-width:900px){.coast{min-height:430px}.hero-badge{width:225px}}
@media(max-width:540px){.coast{min-height:360px}.hero-badge{width:196px}}

/* Place the badge like an editorial mark, leaving the shoreline in view. */
.hero-badge{left:38px;bottom:60px;top:auto;transform:none;width:210px}
@media(max-width:900px){.hero-badge{left:30px;bottom:46px;width:210px}}
@media(max-width:540px){.hero-badge{left:22px;bottom:48px;width:180px}.photo-credit{right:12px;bottom:12px;font-size:8px}}
