
:root{--navy:#102f4d;--blue:#1d5e8f;--gold:#d59a3a;--ink:#172235;--muted:#5d6878;--paper:#fff;--soft:#f4f7fa;--line:#dce4ec;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:var(--blue)}img{max-width:100%;height:auto}.wrap{width:min(calc(100% - 2rem),var(--max));margin:auto}
.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.75rem;z-index:100}
header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.header{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{font-weight:900;color:var(--ink);text-decoration:none}.brand small{display:block;color:var(--muted);font-size:.72rem;font-weight:700}
.desktop-nav{display:flex;align-items:center;gap:1rem}.desktop-nav a{text-decoration:none;color:var(--ink);font-weight:750;font-size:.92rem}.btn{display:inline-block;border:1px solid var(--navy);border-radius:.55rem;background:var(--navy);color:#fff!important;text-decoration:none;font-weight:850;padding:.8rem 1rem}.btn.light{background:#fff;color:var(--navy)!important}
.hero{padding:clamp(4.5rem,9vw,8.5rem) 0;background:radial-gradient(circle at 78% 15%,rgba(213,154,58,.25),transparent 28%),linear-gradient(135deg,#0f2d48,#1c5a87);color:#fff}.hero.compact{padding:4.8rem 0}.hero-inner{max-width:860px}
.kicker{text-transform:uppercase;letter-spacing:.11em;color:#f0c47d;font-size:.78rem;font-weight:900;margin:0 0 .65rem}.hero h1{font-size:clamp(2.5rem,6vw,4.9rem);line-height:1.03;margin:.1rem 0 1rem}.hero p{font-size:1.14rem;max-width:72ch}
.actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.35rem}.answer{margin-top:-2.1rem;position:relative;padding:1.55rem;border:1px solid var(--line);border-radius:.85rem;background:#fff;box-shadow:0 18px 46px rgba(18,45,72,.14)}
section{padding:4.5rem 0}.alt{background:var(--soft)}h2{font-size:clamp(1.8rem,4vw,3rem);line-height:1.15;margin:.1rem 0 1rem}h3{line-height:1.3;margin-top:0}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.15rem}.two{display:grid;grid-template-columns:1.12fr .88fr;gap:2rem;align-items:start}.card{padding:1.35rem;border:1px solid var(--line);border-radius:.8rem;background:#fff}.card p:last-child{margin-bottom:0}
.badges{display:flex;flex-wrap:wrap;gap:.45rem}.badge{border:1px solid #b7cadd;border-radius:999px;background:#eff7fd;color:#17496f;font-size:.83rem;font-weight:850;padding:.35rem .7rem}
.checks{padding-left:1.2rem}.checks li{margin:.5rem 0}.facts{list-style:none;padding:0}.facts li{padding:.75rem 0;border-bottom:1px solid var(--line)}.note{padding:1rem;border-left:4px solid var(--gold);background:#fff7e9}
.breadcrumb{font-size:.88rem;margin-bottom:1rem}.breadcrumb a{color:inherit}.faq details{border:1px solid var(--line);border-radius:.7rem;background:#fff;padding:1rem;margin:.75rem 0}.faq summary{cursor:pointer;font-weight:850}
.cta{padding:2rem;border-radius:1rem;background:linear-gradient(135deg,#112f49,#1e6090);color:#fff}.cta a{color:#fff}
footer{padding:3rem 0;background:#0e1a28;color:#dce5ee}footer a{color:#fff}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:2rem}.footer-grid ul{list-style:none;padding:0}.footer-grid li{margin:.45rem 0}.legal{margin-top:2rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.15);font-size:.9rem;color:#b9c5d0}
table{width:100%;border-collapse:collapse}th,td{border:1px solid var(--line);padding:.8rem;text-align:left;vertical-align:top}th{background:var(--soft)}
@media(max-width:920px){.grid,.two,.footer-grid{grid-template-columns:1fr}.desktop-nav{display:none}.mobile-menu{display:block}.hero{padding-top:5rem}}

.site-logo{height:82px;width:auto;display:block;object-fit:contain}.brand{display:flex;align-items:center}
.hero-media{margin-top:1.75rem;border-radius:1rem;overflow:hidden;border:1px solid rgba(255,255,255,.25);box-shadow:0 20px 50px rgba(0,0,0,.18)}
.hero-media img{display:block;width:100%;height:auto}.content-image{width:100%;border-radius:.8rem;border:1px solid var(--line);background:#fff}
.profile-image{width:min(100%,400px);aspect-ratio:1/1;object-fit:cover;border-radius:.9rem;border:1px solid var(--line);display:block;margin:0 auto 1.2rem}
.card-image{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:.6rem;margin-bottom:1rem;background:var(--soft)}
@media(max-width:920px){.site-logo{height:82px;width:auto;display:block;object-fit:contain}}

.trust-photo{width:min(100%,320px);aspect-ratio:1/1;object-fit:cover;border-radius:.8rem;display:block;margin:0 auto 1rem;border:1px solid var(--line)}
.footer-logo{width:190px;height:auto;display:block;background:#fff;border-radius:.65rem;padding:.35rem;margin-bottom:1rem}
.hero-media img{object-fit:cover}
@media(max-width:920px){.site-logo{height:66px}.footer-logo{width:165px}}

/* ============================================================
   MOBILE MENU FIX — appended to /assets/style.css
   Fixes: menu showing on desktop, unstyled dropdown panel,
          default <details> disclosure triangle.
   No JS required. Nothing else in the stylesheet changes.
   ============================================================ */

/* 1. Hide the mobile toggle on desktop.
      Written as min-width so it can't fight the existing
      max-width:920px rule regardless of source order. */
@media(min-width:921px){
  .mobile-menu{display:none}
}

/* 2. Anchor point for the dropdown panel. */
.mobile-menu{position:relative}

/* 3. Style the toggle button and kill the default ▶ marker. */
.mobile-menu>summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:.45rem;
  padding:.7rem .9rem;
  border:1px solid var(--navy);
  border-radius:.55rem;
  background:#fff;
  color:var(--navy);
  font-weight:850;
  font-size:.95rem;
  -webkit-tap-highlight-color:transparent;
}
.mobile-menu>summary::-webkit-details-marker{display:none}
.mobile-menu>summary::marker{content:""}
.mobile-menu>summary:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.mobile-menu[open]>summary{background:var(--navy);color:#fff}

.menu-icon{font-size:1.15rem;line-height:1}

/* 4. The dropdown panel itself — floats over content,
      does not stretch the sticky header. */
.mobile-menu-panel{
  position:absolute;
  right:0;
  top:calc(100% + .55rem);
  z-index:40;
  display:flex;
  flex-direction:column;
  gap:.25rem;
  min-width:240px;
  padding:.6rem;
  background:#fff;
  border:1px solid var(--line);
  border-radius:.7rem;
  box-shadow:0 18px 46px rgba(18,45,72,.18);
}
.mobile-menu-panel a{
  text-decoration:none;
  color:var(--ink);
  font-weight:750;
  padding:.75rem;
  border-radius:.45rem;
}
.mobile-menu-panel a:hover,
.mobile-menu-panel a:focus{background:var(--soft)}
.mobile-menu-panel .btn{margin-top:.35rem;text-align:center}

/* 5. Very narrow screens: let the panel span the viewport width. */
@media(max-width:400px){
  .mobile-menu-panel{min-width:min(280px,calc(100vw - 2rem))}
}
