:root{--navy:#0A2342;--lagoon:#0E9AA7;--palm:#2E7D5B;--foam:#F2FAF9;--coral:#E8606A;--ink:#12263F;font-family:"Iowan Old Style",Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:70px}
body{margin:0;color:var(--ink);background:#fff;line-height:1.65;font-size:1.05rem}
h1,h2,h3{line-height:1.15;color:var(--navy)}
a{color:inherit}:focus-visible{outline:3px solid var(--lagoon);outline-offset:3px}
.ph{background-image:var(--img,none),linear-gradient(135deg,var(--a),var(--b));background-size:cover;background-position:center}
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:.6rem 1rem;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);border-bottom:1px solid #d7ebe9;font-family:system-ui,sans-serif}
.brand{display:flex;gap:.6rem;align-items:center;text-decoration:none;font-weight:700;color:var(--navy);font-size:1.05rem}
.brand em{font-style:normal;color:var(--lagoon)}
.brand-mark{width:28px;height:28px;border-radius:50%;background:conic-gradient(var(--lagoon),var(--palm),var(--navy),var(--lagoon))}
nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:#fff;padding:1rem;gap:.8rem;border-bottom:1px solid #d7ebe9}
nav.open{display:flex}nav a{text-decoration:none;font-weight:600}
.menu-btn,.lang{font:inherit;font-weight:600;border:1px solid var(--navy);background:none;color:var(--navy);padding:.35rem .8rem;border-radius:99px;cursor:pointer}
.lang{align-self:flex-start}
.hero{background-position:70% center;position:relative;min-height:88vh;display:flex;align-items:center;color:#fff;padding:5rem 1.2rem 8rem}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,35,66,.35),rgba(10,35,66,.7))}
.hero-in{position:relative;max-width:46rem}.hero h1{color:#fff;font-size:clamp(2.3rem,7vw,4.4rem);margin:0 0 1rem}
.hero p{font-size:1.2rem;max-width:36rem}.waves{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:80px;z-index:1}
.cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}
.btn{display:inline-block;font-family:system-ui,sans-serif;font-weight:700;text-decoration:none;padding:.85rem 1.4rem;border-radius:.6rem;background:var(--navy);color:#fff;border:2px solid var(--navy);cursor:pointer;font-size:1rem;margin:.3rem .3rem .3rem 0}
.btn.coral{background:var(--coral);border-color:var(--coral)}.btn.ghost{background:transparent;border-color:#fff}
.btn.ghost.dark{color:var(--navy);border-color:var(--navy)}.btn:hover{filter:brightness(1.1)}
.sec{padding:3.5rem 1.2rem;max-width:72rem;margin:auto}
.sec.alt,.sec.offers{max-width:none;background:var(--foam)}.sec.alt>*,.sec.offers>*{max-width:72rem;margin-left:auto;margin-right:auto}
.sec.offers{background:linear-gradient(120deg,var(--navy),var(--lagoon));color:#fff}.offers h2{color:#fff}
h2{font-size:clamp(1.7rem,4.5vw,2.6rem);margin:0 0 .6rem}.lead{max-width:40rem}
.grid{display:grid;gap:1.2rem;margin:1.5rem auto}
.card{background:#fff;border-radius:1.2rem 1.2rem .4rem 1.2rem;overflow:hidden;box-shadow:0 6px 24px rgba(10,35,66,.1)}
.card .ph{height:190px}.card h3,.card p{margin:.8rem 1rem}.card p{margin-bottom:1.2rem}
.widget,.quote{background:var(--foam);border:1px dashed var(--lagoon);border-radius:1rem;padding:1.2rem;margin:1rem 0}
.quote{display:grid;gap:.8rem;border-style:solid;border-color:#cfe6e4}.quote h3{margin:0}
label{display:grid;gap:.25rem;font-family:system-ui,sans-serif;font-weight:600;font-size:.9rem}
input,select{font:inherit;padding:.65rem;border:1px solid #9fc4c1;border-radius:.5rem;background:#fff}
.ticks{list-style:none;padding:0}.ticks li{padding:.4rem 0 .4rem 1.8rem;position:relative}.ticks li::before{content:"";position:absolute;left:0;top:.8rem;width:.9rem;height:.5rem;border-left:3px solid var(--palm);border-bottom:3px solid var(--palm);transform:rotate(-45deg)}
details{background:#fff;border-radius:.7rem;padding:.9rem 1.1rem;margin:.6rem auto;max-width:48rem;box-shadow:0 2px 10px rgba(10,35,66,.08)}
summary{cursor:pointer;font-weight:700;color:var(--navy)}
footer{background:var(--navy);color:#cfe6ee;text-align:center;padding:2rem 1rem;font-family:system-ui,sans-serif;font-size:.95rem}
.fab{position:fixed;left:1rem;bottom:1rem;z-index:30;background:#1FA855;color:#fff;font:700 .95rem system-ui,sans-serif;padding:.8rem 1.1rem;border-radius:99px;text-decoration:none;box-shadow:0 6px 18px rgba(0,0,0,.25)}
@media(min-width:760px){.menu-btn{display:none}nav{display:flex;position:static;flex-direction:row;align-items:center;padding:0;border:0;gap:1rem;background:none;font-family:system-ui,sans-serif;font-size:.92rem}.lang{align-self:auto}
.grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.quote{grid-template-columns:repeat(3,1fr)}.quote h3{grid-column:1/-1}.quote .btn{grid-column:1/-1;justify-self:start}.sec{padding:5rem 2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.widget{border-style:solid;border-color:#cfe6e4}.widget p{margin:.2rem 0 .6rem}.about-logo{display:block;max-width:min(320px,80%);height:auto;margin:1.5rem 0}.brand img{height:38px;width:auto}
