:root{
  --navy:#0b1626;
  --navy-soft:#132238;
  --ink:#142033;
  --muted:#5a6578;
  --teal:#1a7a8c;
  --teal-deep:#0f5c6b;
  --gold:#c9a227;
  --gold-soft:#e8c96a;
  --bg:#f7f6f2;
  --card:#ffffff;
  --line:#e2e0d8;
  --hero-bg:linear-gradient(160deg,#0b1626 0%,#132238 55%,#0f3a45 100%);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6}
a{color:var(--teal-deep)}
a:hover{color:var(--teal)}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}

/* Header */
header.site{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:20}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;padding-bottom:14px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.1rem;color:var(--navy);text-decoration:none;letter-spacing:-.01em}
.logo img{width:38px;height:38px;display:block;border-radius:50%;flex-shrink:0}
nav a{margin-left:18px;text-decoration:none;color:var(--muted);font-size:.95rem}
nav a:hover{color:var(--teal)}

/* Hero */
.hero{padding:64px 0 56px;background:var(--hero-bg);color:#f4f6f8;margin-bottom:8px}
.hero .wrap{display:grid;grid-template-columns:1.15fr 0.85fr;gap:40px;align-items:center}
.hero-copy h1{font-size:clamp(2rem,4.6vw,3rem);line-height:1.15;margin:0 0 16px;letter-spacing:-.02em;color:#fff}
.hero-copy p{font-size:1.12rem;color:#b8c2d0;max-width:520px;margin:0 0 28px}
.hero-mark{display:flex;justify-content:center;align-items:center}
.hero-mark img{width:min(320px,100%);height:auto;filter:drop-shadow(0 18px 40px rgba(0,0,0,.45))}
.btn{display:inline-block;background:var(--gold);color:var(--navy);padding:12px 22px;border-radius:8px;text-decoration:none;font-weight:700}
.btn:hover{background:var(--gold-soft);color:var(--navy)}

/* Sections */
section{padding:48px 0}
h2{font-size:1.6rem;margin:0 0 12px;letter-spacing:-.01em;color:var(--navy)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:20px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px;box-shadow:0 1px 0 rgba(11,22,38,.03)}
.card h3{margin:0 0 6px;font-size:1.1rem;color:var(--navy)}
.card p{margin:0;color:var(--muted)}
.product-head{display:flex;align-items:center;gap:18px;margin:6px 0 12px}
.product-head h2{margin:0}
.product-logo{width:96px;height:96px;flex:none;padding:8px;background:#fff;border:2px solid var(--line);border-radius:22px;box-shadow:0 4px 14px rgba(11,22,38,.08)}
@media (max-width:600px){.product-logo{width:72px;height:72px;border-radius:18px;padding:6px}.product-head{gap:14px}}
.product{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.tag{display:inline-block;font-size:.8rem;font-weight:600;color:var(--teal-deep);background:#e5f3f5;border-radius:999px;padding:3px 10px;margin-bottom:10px}
#about p{max-width:72ch}

/* Docs */
.doc{padding:48px 0 64px;max-width:760px}
.doc h1{font-size:2rem;margin:0 0 6px;color:var(--navy)}
.doc h2{font-size:1.25rem;margin-top:32px}
.doc .meta{color:var(--muted);margin:0 0 24px}
.note{background:#fff8e1;border:1px solid #f0d77a;border-radius:8px;padding:12px 14px;font-size:.95rem}

/* Footer */
footer.site{border-top:1px solid var(--line);padding:28px 0;color:var(--muted);font-size:.9rem;background:#fff}
footer.site .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
footer.site a{color:var(--muted);margin-right:14px;text-decoration:none}
footer.site a:hover{color:var(--teal)}

@media (max-width:760px){
  .hero .wrap{grid-template-columns:1fr;gap:28px;text-align:center}
  .hero-copy p{margin-left:auto;margin-right:auto}
  .hero-mark{order:-1}
  .hero-mark img{width:min(220px,70vw)}
  .hero{padding:40px 0 36px}
}
@media (max-width:560px){
  header.site .wrap{padding-top:12px;padding-bottom:12px}
  .logo{font-size:1rem;gap:8px}
  .logo img{width:34px;height:34px}
  nav{width:100%;display:flex;flex-wrap:wrap;gap:8px 14px}
  nav a{margin:0;font-size:.88rem}
  section{padding:36px 0}
}
