:root{
  --bg:#f6f8fb;            /* page background */
  --panel:#ffffff;          /* sections/cards */
  --border:#e4e9f1;
  --text:#233548;           /* body text */
  --muted:#5e6b85;
  --navy:#0e3257;           /* headings/nav */
  --primary:#0e4a7f;        /* CTA/button */
  --accent:#0ea5e9;         /* subtle link highlight */
  --shadow:0 14px 28px rgba(14,50,87,.10);
  --radius:14px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.55}
a{color:var(--primary);text-decoration:none}
.container{max-width:1180px;margin:0 auto;padding:0 20px}
/* Header */
header{position:sticky;top:0;background:#fff;backdrop-filter:saturate(140%) blur(6px);
  border-bottom:1px solid var(--border);z-index:40}
.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 0}
.logo{display:flex;align-items:center;gap:12px;font-weight:800;color:var(--navy);font-size:20px}
.logo img{height:85px;width:auto;border-radius:0}
.navlinks{display:flex;gap:24px;align-items:center}
.navlinks a{color:var(--text)}
.navlinks a.active{background:rgba(14,74,127,.08);padding:8px 14px;border-radius:999px;color:var(--navy);font-weight:600}
.nav-right{display:flex;gap:12px;align-items:center}
.btn,button,input[type=submit]{background:var(--primary);border:none;color:#fff;padding:12px 18px;border-radius:10px;
  font-weight:700;cursor:pointer;box-shadow:0 8px 20px rgba(14,74,127,.18)}
.btn.ghost{background:transparent;border:1px solid var(--border);color:var(--navy);box-shadow:none}
.btn.secondary{background:#fff;color:var(--primary);border:1px solid var(--border);box-shadow:none}

/* Hero */
.hero{background:linear-gradient(180deg,#fff, #f3f6fb);}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center;padding:66px 0}
.tag{display:inline-block;background:linear-gradient(180deg,#eef3f9,#f7f9fc);
  border:1px solid #e4e9f1;color:#3a5176;padding:10px 16px;border-radius:999px;font-size:16px;margin-bottom:18px}
h1{font-size:48px;line-height:1.1;color:var(--navy);margin:0 0 14px}
h2{font-size:28px;color:var(--navy);margin:26px 0 12px}
p.lead{color:var(--muted);font-size:18px;margin:0 0 20px}
.hero-visual{border:none;box-shadow:none;background:transparent;overflow:visible}
.hero-visual img{display:block;width:100%;height:auto;border-radius:16px;box-shadow:none}
/* Sections & cards */
.section{padding:56px 0}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:none}
.card h3{color:var(--navy);margin:0 0 8px}
/* Forms */
form label{display:block;margin:10px 0 6px;color:var(--navy)}
input,select,textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:#fff;color:var(--text)}
form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.notice{background:#f9fbff;border:1px dashed var(--border);border-radius:12px;padding:12px 14px;color:#3a5176;margin:14px 0}
/* Footer */
footer{margin-top:10px;border-top:1px solid var(--border);background:#fff}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px;padding:28px 0}
small,.muted{color:var(--muted)}
/* Responsive */
.mobile-toggle{display:none}
@media(max-width:900px){
  .cards{grid-template-columns:1fr}
  .hero .wrap{grid-template-columns:1fr;padding:40px 0}
  .navlinks{display:none}
  .mobile-toggle{display:inline-flex;background:transparent;border:1px solid var(--border);padding:8px;border-radius:10px;color:var(--text)}
  .navlinks.open{display:flex;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid var(--border);padding:12px;border-radius:12px;position:absolute;right:20px;top:60px}
}

/* Feature icons */
.feature-icon{width:56px;height:56px;border-radius:12px;background:linear-gradient(180deg,#19c6b4,#0ea5e9);display:inline-flex;align-items:center;justify-content:center;box-shadow:0 10px 20px rgba(14,165,233,.18);margin-right:12px}
.feature-icon svg{width:30px;height:30px;fill:#ffffff}
.card .title-row{display:flex;align-items:center;gap:10px;margin-bottom:6px}

.footer .logo img{height:65px;width:auto;border-radius:0;margin-top:4px;margin-bottom:4px;}
