/* Oceanside Management Partners LLC
   2026-10-08 Friendo716: static stylesheet, no external fonts or CDN requests.
   Brand colors sampled from the supplied logo: navy #002c6c, blue #0463b5,
   bright #0096f3, sky #7fc9fc. */

:root{
  --navy:#00265f;
  --navy2:#002c6c;
  --blue:#0463b5;
  --bright:#0096f3;
  --sky:#7fc9fc;
  --sky2:#eaf4fe;
  --ink:#16233c;
  --body:#4a5a75;
  --line:#e1e8f2;
  --bg:#f7fafd;
  --white:#fff;
  --radius:12px;
  --shadow:0 2px 4px rgba(16,38,74,.05), 0 12px 28px rgba(16,38,74,.07);
  --wrap:1120px;
  --serif:Georgia,"Times New Roman",Times,serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--white);color:var(--body);
  font:16px/1.65 var(--sans);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{color:var(--ink);margin:0 0 .5em;line-height:1.2}
h2{font:600 clamp(26px,3.4vw,36px)/1.2 var(--serif);letter-spacing:-.01em}
h3{font:600 19px/1.3 var(--sans)}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 22px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:12px;top:12px;background:#fff;padding:8px 14px;border-radius:6px;z-index:99}

/* ── buttons ── */
.btn{
  display:inline-block;background:var(--blue);color:#fff;border:1px solid var(--blue);
  padding:12px 22px;border-radius:8px;font-weight:600;text-align:center;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.btn:hover{background:var(--navy2);border-color:var(--navy2);text-decoration:none;transform:translateY(-1px)}
.btn-sm{padding:9px 16px;font-size:15px}
.btn-lg{padding:15px 28px;font-size:17px}
.btn-ghost{background:transparent;color:var(--navy);border-color:#b9cbe4}
.btn-ghost:hover{background:var(--navy);border-color:var(--navy);color:#fff}

/* ── top bar ── */
.topbar{background:var(--navy);color:#cfdcf0;font-size:13.5px}
.topbar .wrap{display:flex;justify-content:space-between;gap:14px;padding:8px 22px}
.tb-right{white-space:nowrap}
@media(max-width:640px){.tb-right{display:none}}

/* ── header ── */
.site-head{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40}
.head-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 22px}
.brand img{width:230px;height:auto}
.nav{display:flex;align-items:center;gap:22px;font-size:15.5px;font-weight:500}
.nav a{color:var(--ink)}
.nav a:hover{color:var(--blue);text-decoration:none}
.nav .btn,.nav .btn:hover{color:#fff}
@media(max-width:900px){
  .head-inner{flex-direction:column;align-items:flex-start;gap:10px}
  .brand img{width:190px}
  .nav{flex-wrap:wrap;gap:10px 16px;font-size:15px;width:100%}
}

/* ── hero ── */
.hero{
  background:linear-gradient(160deg,#eef6fe 0%,#f7fafd 55%,#fff 100%);
  border-bottom:1px solid var(--line);
}
.hero-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;padding:64px 22px}
.eyebrow{color:var(--blue);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:12.5px;margin-bottom:14px}
.hero h1{font:600 clamp(34px,5.2vw,58px)/1.08 var(--serif);color:var(--navy);letter-spacing:-.02em;margin-bottom:18px}
.lead{font-size:19px;color:#3f4f6b;max-width:36em}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 12px}
@media(max-width:520px){.cta-row .btn{width:100%}}
.fineprint{font-size:13.5px;color:#6b7c96;margin:0}
.hero-art{display:flex;justify-content:center}
.hero-art img{width:100%;max-width:340px;height:auto;background:#fff;padding:26px;border-radius:26px;box-shadow:0 18px 40px rgba(16,38,74,.10)}
@media(max-width:860px){
  .hero-inner{grid-template-columns:1fr;padding:44px 22px}
  .hero-art{order:-1}
  .hero-art img{max-width:190px;padding:16px;border-radius:18px}
}

/* ── trust strip ── */
.strip{background:var(--navy2);color:#dce8f8}
.strip-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:24px 22px}
.strip-item{font-size:13.5px;line-height:1.4}
.strip-item strong{display:block;color:#fff;font-size:15.5px;margin-bottom:3px}
.strip-item span{color:#a8c2e4}
@media(max-width:760px){.strip-inner{grid-template-columns:1fr 1fr;gap:16px}}

/* ── sections ── */
.section{padding:72px 0}
.section.alt{background:var(--bg);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.section-sub{font-size:17.5px;max-width:52em;margin-bottom:34px}
.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:start}
@media(max-width:820px){.two-col{grid-template-columns:1fr;gap:20px}.section{padding:52px 0}}

/* ── cards ── */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}
.card h3{color:var(--navy);margin-bottom:8px}
.card p{margin:0;font-size:15.5px}
.card::before{content:"";display:block;width:36px;height:4px;border-radius:2px;background:var(--sky);margin-bottom:16px}
@media(max-width:900px){.cards{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.cards{grid-template-columns:1fr}}

/* ── chips ── */
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.chips li{background:#fff;border:1px solid #cfdcee;border-radius:999px;padding:9px 18px;font-size:15px;color:var(--navy)}

/* ── checks ── */
.checks{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.checks li{position:relative;padding-left:34px;font-size:16px}
.checks li::before{
  content:"";position:absolute;left:0;top:6px;width:18px;height:18px;border-radius:50%;
  background:var(--sky2) url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230463b5' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5 5L20 6'/%3E%3C/svg%3E") center/12px 12px no-repeat;
}
.checks strong{color:var(--ink)}

/* ── consumers ── */
.consumer-box{max-width:900px}
.consumer-box p{font-size:16.5px}
.disclose{margin-top:22px;padding:14px 18px;background:#fdf6e3;border-left:4px solid #e0b34a;border-radius:0 8px 8px 0;font-size:14.5px;color:#6a5520}

/* ── contact ── */
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}
.contact-card h3{color:var(--navy)}
.big-link{font:600 22px/1.2 var(--serif);color:var(--blue)}
.addr{font-size:16px;color:var(--ink);margin-bottom:8px}
.muted{font-size:14px;color:#75859e;margin:0}
@media(max-width:820px){.contact-grid{grid-template-columns:1fr}}

/* ── footer ── */
.site-foot{background:var(--navy);color:#a8c2e4;font-size:15px;margin-top:0}
.foot-inner{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:26px;padding:46px 22px 30px}
.foot-inner p{margin:0;line-height:1.7}
.foot-brand img{width:230px;height:auto;background:#fff;padding:12px 16px;border-radius:10px}
.foot-col h4{color:#fff;font-size:14px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px}
.foot-col a{color:#cfdcf0}
.foot-legal{border-top:1px solid rgba(255,255,255,.14);padding:18px 22px 34px;font-size:12.8px;color:#8fa9cd}
.foot-legal p{margin:0 0 6px}
@media(max-width:820px){.foot-inner{grid-template-columns:1fr 1fr;gap:22px}}
@media(max-width:560px){.foot-inner{grid-template-columns:1fr}}

/* ── legal pages ── */
.legal{padding:60px 0 80px}
.legal h1{font:600 clamp(28px,4vw,40px)/1.15 var(--serif);color:var(--navy)}
.legal h2{font:600 21px/1.3 var(--serif);margin-top:34px}
.legal p,.legal li{font-size:16px}
.legal .updated{color:#75859e;font-size:14px}
.legal ul{padding-left:22px}
