
:root{--teal:#39D1C5;--orange:#FF8A33;--ink:#0B1323;--bg:#ffffff;--muted:#475569;--shadow:0 18px 40px rgba(2,6,23,.12)}
*{box-sizing:border-box} html,body{margin:0;padding:0}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#0e1628;background:var(--bg)}
a{color:inherit;text-decoration:none}
.container{width:min(1180px,92%);margin:0 auto}
.badge{padding:6px 10px;border-radius:999px;font-size:.82rem;background:#e6fffa;color:#0b3b37;border:1px solid #c8f7f0}
nav{position:sticky;top:0;background:rgba(255,255,255,.78);backdrop-filter:saturate(140%) blur(14px);z-index:100;border-bottom:1px solid rgba(2,6,23,.06)}
nav .row{display:flex;align-items:center;gap:18px;padding:12px 0}
nav .links{margin-left:auto;display:flex;gap:18px;align-items:center;font-weight:700;color:#334155}
nav .links a{padding:10px 8px;border-radius:8px;opacity:.82}
nav .links a:hover,nav .links a.active{background:rgba(2,6,23,.08);opacity:1}
.btn{display:inline-block;padding:14px 22px;border-radius:14px;font-weight:800;letter-spacing:.3px;border:1px solid rgba(2,6,23,.08);background:linear-gradient(180deg,#fff,#f8fafc);transition:.2s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(2,6,23,.12)}
.btn-primary{background:linear-gradient(90deg,var(--teal),var(--orange));color:#06231f;border:none}
.btn-dark{background:#0a2540;color:#fff;border:none;text-shadow:0 1px 6px rgba(0,0,0,.35)}
.btn-dark:hover{background:#081a30}
.hero{position:relative;isolation:isolate}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,12,24,.72),rgba(7,12,24,.45) 40%, rgba(255,255,255,0) 68%);pointer-events:none}
.hero .bg{position:absolute;inset:0;background:#0b1526 url('./assets/tropical-haven-flyer-bg.png') center/cover no-repeat fixed;z-index:-1}
.hero .content{padding:100px 0 120px;color:white;text-shadow:0 2px 12px rgba(0,0,0,.25);position:relative;z-index:1}
.hero h1{font-size:clamp(36px,7vw,72px);line-height:1.05;margin:14px 0 8px}
.hero p{font-size:clamp(16px,2.2vw,22px);max-width:880px;color:#eaf6f4}
.kicker{letter-spacing:.3em;text-transform:uppercase;color:#7dd3fc;font-weight:800}
.section{padding:68px 0}
.cards{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:rgba(255,255,255,.86);backdrop-filter:blur(12px);border:1px solid rgba(2,6,23,.06);padding:24px;border-radius:20px;box-shadow:var(--shadow)}
.card h3{margin:8px 0 6px;color:#0a223f}
.price{font-size:40px;font-weight:900;margin:8px 0;color:#0a223f}
.sub{color:#475569;font-size:.96rem}
.features{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.features li{padding:12px;border-radius:12px;background:#f2fbfa;border:1px solid #d9f5f1}
.grid-2{display:grid;gap:34px;grid-template-columns:1.1fr .9fr;align-items:start}
.grid-3{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:14px 14px}
details summary{cursor:pointer;font-weight:700}
.hero .cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.notice{font-size:.92rem;color:#475569}
footer{background:#0b1323;color:#c7d2fe}
footer .grid{display:grid;gap:22px;grid-template-columns:1fr 1fr}
/* Senior-friendly form */
.form{display:grid;gap:18px;max-width:720px}
.form label{display:block;font-weight:700;font-size:1.02rem;color:#0a223f}
.input, select, textarea{width:100%;display:block;padding:16px;border:2px solid #dbe2ea;border-radius:14px;font-size:1.05rem;background:#fff}
.input:focus, select:focus, textarea:focus{outline:3px solid rgba(57,209,197,.45);border-color:#8fe7de}
textarea{min-height:120px}
@media (min-width: 960px){ .form .group-2{display:grid;grid-template-columns:1fr 1fr;gap:18px} }
