/*
Theme Name: ZIPPY Bermuda Investor v3
Author: ChatGPT
Description: Investor landing with products gallery, PDF agreement, and mailto payment for wire consultation.
Version: 3.0
*/
:root{--bg:#0a0a0a;--fg:#fff;--accent:#32d97c;--muted:#a1a1aa}
*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;background:var(--bg);color:var(--fg)}
.container{max-width:1100px;margin:0 auto;padding:0 16px}
nav{position:sticky;top:0;background:rgba(10,10,10,.6);backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid #222;z-index:10}
nav .inner{display:flex;align-items:center;justify-content:space-between;padding:12px 16px}
.brand{display:flex;align-items:center;gap:12px}
.brand img{width:60px;height:auto}
header{padding:56px 0 18px;border-bottom:1px solid #222}
h1{margin:.4rem 0 0;font-size:clamp(28px,4vw,48px)}
h2{margin:0 0 10px;font-size:clamp(22px,3vw,32px)}
p.lead{color:#e4e6eb}
section{padding:36px 0;border-bottom:1px solid #222}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.card{background:#111;border:1px solid #222;border-radius:12px;padding:16px}
img.resp{max-width:100%;height:auto;display:block}
label{display:block;margin:8px 0 4px}
input,textarea{width:100%;padding:10px;border-radius:10px;border:1px solid #333;background:#0c0c0c;color:#fff}
.btn{display:inline-block;background:var(--accent);color:#041407;border-radius:999px;padding:10px 16px;text-decoration:none;border:none;cursor:pointer}
.btn-outline{display:inline-block;border:1px solid var(--accent);border-radius:999px;padding:9px 14px;text-decoration:none;color:#fff}
.small{color:var(--muted);font-size:.9rem}
footer{padding:18px 0;color:#c9c9c9}
.note{background:#0f0f0f;border:1px dashed #333;border-radius:10px;padding:10px;margin-top:10px}
.products{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
@media(max-width:1000px){.products{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}.grid-3{grid-template-columns:1fr 1fr}}

/* Financial polish */
:root{
  --bg:#0b132b; --panel:#0f1a3a; --fg:#e6edf6; --muted:#9fb0c8; --accent:#2dce89; --accent-ink:#052716; --border:#1c2a4d;
}
body{background:linear-gradient(180deg,#0b132b 0%,#0b132b 40%,#0c1533 100%);}
.card{background:var(--panel);border:1px solid var(--border);box-shadow:0 2px 14px rgba(0,0,0,.35)}
p.lead{color:#cfe3ff}
.numbers,#total,#percent{font-variant-numeric:tabular-nums lining-nums}
.btn{box-shadow:0 2px 0 rgba(0,0,0,.2)} .btn:hover{transform:translateY(-1px)} .btn:active{transform:translateY(0)} .btn,.btn-outline{transition:all .15s ease}
.products img{filter:saturate(110%) contrast(105%)}
.note{background:rgba(13,24,54,.6);border-color:#27406e}
nav{background:rgba(11,19,43,.6);border-bottom:1px solid #14244a}
.btn{background:var(--accent);color:var(--accent-ink)} .btn-outline{border-color:var(--accent);color:var(--fg)} .btn-outline:hover{background:rgba(45,206,137,.08)}
label{color:#cfe3ff} input,textarea{background:#0c1430;border-color:#20345f}
footer{border-top:1px solid #14244a} h2{color:#f0f6ff} a{color:#8adbc0}

/* ===== Financial Calculations & Route Map ===== */
.h3{margin:0 0 8px;font-size:clamp(18px,2.2vw,22px);color:#eaf2ff}
.calc-wrap{margin-top:18px}
.kpi-grid .big{font-size:clamp(22px,4vw,34px);font-weight:700;margin-top:4px}
.kpi-grid .numbers{display:flex;flex-direction:column;gap:2px}
.kpi-grid select,.kpi-grid input{margin:6px 0}
.route-map{width:100%;height:auto;background:linear-gradient(180deg,rgba(20,35,75,.3),rgba(12,24,56,.1));border:1px solid #1c2a4d;border-radius:12px}
.route-map .node{fill:#2dce89}
.route-map .arc{fill:none;stroke:#8adbc0;stroke-width:2;opacity:.9}
.route-map .label{fill:#cfe3ff;font-size:12px}
.route-list{margin:6px 0 0 18px}
.route-impact .card{min-height:320px}

/* ===== A++ Route Map Polish ===== */
.route-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:8px;flex-wrap:wrap}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{background:rgba(45,206,137,.12);border:1px solid #2dce89;border-radius:999px;padding:6px 10px;color:#dff8ee;cursor:pointer;font-size:.9rem;transition:all .2s ease}
.chip:hover{transform:translateY(-1px)} .chip:not(.active){opacity:.5;filter:saturate(.6)}
.legend{display:flex;align-items:center;gap:14px;color:#cfe3ff;font-size:.9rem}
.legend .dot{display:inline-block;width:10px;height:10px;border-radius:50%}
.legend .p1{background:#2dce89}.legend .p2{background:#5fb2ff}.legend .p3{background:#a97aff}
.route-map{width:100%;height:auto;border:1px solid #1c2a4d;border-radius:14px;box-shadow:0 10px 40px rgba(0,0,0,.35), inset 0 0 0 1px rgba(255,255,255,.02)}
.route-map text.label{fill:#d7e7ff;font-size:12px;user-select:none;paint-order:stroke;stroke:#0b132b;stroke-width:3;stroke-opacity:.6}
.route-map .arc{fill:none;stroke-width:2.5;stroke-linecap:round;opacity:.95;filter:url(#softGlow)}
.route-map .arc.animate{stroke-dasharray:6 6;animation:dash 7s linear infinite}
@keyframes dash {to { stroke-dashoffset: -200; }}
.route-map .node{fill:#eaf2ff;stroke:#2dce89;stroke-width:1.2;filter:url(#softGlow)}
.pulse{animation:pulse 2s ease-in-out infinite}
@keyframes pulse {0%{r:6;opacity:1}50%{r:8;opacity:.7}100%{r:6;opacity:1}}
.route-impact .card{background:linear-gradient(180deg,rgba(15,26,58,1),rgba(14,24,50,.8));}
.impact-callout{display:flex;gap:12px;align-items:flex-start;margin-top:12px;padding:12px;border:1px solid #27406e;border-radius:12px;background:rgba(13,24,54,.55)}
.impact-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:999px;background:rgba(45,206,137,.2);border:1px solid #2dce89}
.impact-title{font-weight:700;margin-bottom:2px;color:#eaf2ff}
.route-list{margin:8px 0 0 18px}
/* status */
.divider{height:1px;background:#27406e;margin:12px 0}
.status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:8px}
@media(max-width:900px){.status-grid{grid-template-columns:1fr}}
.card-lite{background:rgba(13,24,54,.4);border:1px solid #27406e;border-radius:12px;padding:12px}
.stat-big{font-size:clamp(24px,4.5vw,36px);font-weight:800;line-height:1}
.stat-label{color:#cfe3ff;margin-top:4px}


/* ===== Product Portfolio Card Polish ===== */
.products figure.card{display:flex;flex-direction:column;gap:8px}
.products figure.card figcaption{color:#dfe9ff;line-height:1.25}
.products figure.card img{background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01));border-radius:12px}
