*,
*::before,
*::after{box-sizing:border-box;}
:root{
  --navy-950:#071A2D;
  --navy-900:#0E2A47;
  --navy-800:#173F63;
  --line:#E3E8EF;
  --bg:#F5F7FA;
  --white:#FFFFFF;
  --ink:#0E2A47;
  --muted:#64748B;
  --green:#0E9A8D;
  --green-100:#E4F7F5;
  --amber:#C79A3B;
  --radius:8px;
  --shadow-sm:0 1px 2px rgba(14,42,71,.06),0 4px 12px rgba(14,42,71,.05);
  --shadow:0 4px 12px rgba(14,42,71,.08),0 18px 40px -12px rgba(14,42,71,.18);
  --font:'Aptos','Segoe UI',system-ui,sans-serif;
  --font-display:'Aptos Display','Segoe UI Variable Display','Segoe UI',system-ui,sans-serif;
  --font-mono:'Cascadia Mono','SFMono-Regular','Consolas',monospace;
}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.6;}
a{color:inherit;text-decoration:none;}
p,h1,h2,h3,h4{margin:0;}
h1,h2,h3{font-family:var(--font-display);letter-spacing:0;text-wrap:balance;}
p,li{overflow-wrap:break-word;text-wrap:pretty;}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px;}
.site-nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px);}
.nav-inner{height:68px;display:flex;align-items:center;justify-content:space-between;gap:18px;}
.logo{display:flex;align-items:center;}
.logo img{display:block;width:184px;max-width:42vw;height:auto;}
.nav-links{display:flex;align-items:center;gap:18px;color:var(--muted);font-size:13px;font-weight:650;}
.nav-links a:hover{color:var(--green);}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 18px;border-radius:10px;border:1px solid transparent;font-weight:760;font-size:13.5px;white-space:nowrap;transition:transform .18s ease,box-shadow .18s ease,background .18s ease;}
.btn:hover{transform:translateY(-1px);box-shadow:0 10px 20px rgba(16,19,24,.12);}
.btn:active{transform:translateY(1px) scale(.99);box-shadow:none;}
.btn:focus-visible,a:focus-visible{outline:3px solid rgba(14,154,141,.3);outline-offset:3px;}
.btn-primary{background:var(--green);color:var(--navy-950);}
.btn-ghost{background:var(--white);border-color:var(--line);color:var(--ink);}
.blog-hero{padding:62px 0 36px;background:linear-gradient(135deg,#FFFFFF 0%,#F5F7FA 58%,#E4F7F5 100%);border-bottom:1px solid var(--line);}
.blog-hero-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(280px,.52fr);gap:42px;align-items:end;}
.label{display:inline-flex;align-items:center;gap:8px;margin-bottom:15px;padding:7px 12px;border-radius:999px;background:var(--green-100);color:var(--green);font-family:var(--font-mono);font-size:11px;font-weight:850;}
.blog-hero h1{font-size:48px;line-height:1.02;font-weight:820;color:var(--navy-950);max-width:720px;}
.blog-hero p{margin-top:16px;max-width:620px;color:var(--muted);font-size:17px;}
.hero-note{padding:18px;border:1px solid rgba(14,154,141,.2);border-radius:var(--radius);background:rgba(255,255,255,.66);box-shadow:var(--shadow-sm);}
.hero-note strong{display:block;color:var(--navy-900);font-size:15px;margin-bottom:6px;}
.hero-note span{display:block;color:var(--muted);font-size:13.5px;line-height:1.45;}
.blog-list{padding:44px 0 62px;}
.post-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;padding:26px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow-sm);}
.post-card:hover{box-shadow:var(--shadow);}
.post-meta{display:flex;flex-wrap:wrap;gap:8px 13px;color:var(--muted);font-size:12.5px;margin-bottom:14px;}
.post-tag{color:var(--green);font-weight:800;}
.post-card h2{font-size:28px;line-height:1.08;color:var(--navy-950);max-width:780px;}
.post-card p{margin-top:12px;color:var(--muted);font-size:15px;max-width:740px;}
.post-card .btn{align-self:end;}
.article-hero{padding:52px 0 34px;background:linear-gradient(135deg,#FFFFFF 0%,#F5F7FA 62%,#E4F7F5 100%);border-bottom:1px solid var(--line);}
.article-hero .back{display:inline-flex;align-items:center;margin-bottom:18px;color:var(--green);font-weight:800;font-size:13px;}
.article-hero h1{font-size:46px;line-height:1.04;font-weight:820;color:var(--navy-950);max-width:900px;}
.article-hero .lead{margin-top:18px;color:var(--muted);font-size:18px;line-height:1.5;max-width:720px;}
.article-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:18px;color:var(--muted);font-size:12.5px;}
.article-shell{padding:42px 0 68px;}
.article-grid{display:grid;grid-template-columns:minmax(0,720px) 280px;gap:58px;align-items:start;}
.article-grid>aside{position:sticky;top:92px;align-self:start;}
.article-body{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:38px 42px;}
.article-body h2{margin-top:36px;margin-bottom:12px;font-size:26px;line-height:1.12;color:var(--navy-950);}
.article-body h2:first-child{margin-top:0;}
.article-body p{margin-top:14px;color:#324A63;font-size:16px;line-height:1.72;}
.article-body p + p{margin-top:13px;}
.article-body .closing{margin-top:28px;padding:20px;border-left:4px solid var(--green);background:var(--green-100);border-radius:0 var(--radius) var(--radius) 0;color:var(--navy-900);font-weight:700;}
.toc{padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow-sm);}
.toc h2{font-size:14px;margin-bottom:12px;color:var(--navy-950);}
.toc nav{display:flex;flex-direction:column;gap:9px;}
.toc a{font-size:13px;line-height:1.3;color:var(--muted);}
.toc a:hover{color:var(--green);}
.cta-strip{margin-top:20px;padding:20px;border-radius:var(--radius);background:var(--navy-950);color:#fff;}
.cta-strip h2{font-size:19px;margin-bottom:8px;}
.cta-strip p{font-size:13px;line-height:1.45;color:#C8D7E4;margin-bottom:14px;}
.cta-strip .btn-primary{width:100%;}
footer{background:var(--white);color:var(--muted);padding:28px 0 18px;font-size:12px;border-top:1px solid var(--line);}
.f-grid{display:grid;grid-template-columns:minmax(280px,1fr) minmax(120px,.38fr) minmax(190px,.55fr);gap:28px;align-items:start;padding-bottom:18px;border-bottom:1px solid var(--line);}
footer .logo{margin-bottom:8px;}
footer .logo img{width:148px;max-width:100%;}
.f-grid p{font-size:12px;line-height:1.45;max-width:560px;}
.f-col h3{font-size:11px;color:var(--ink);margin-bottom:8px;font-weight:800;}
.f-col a{display:block;margin-bottom:6px;font-size:12px;line-height:1.35;}
.disclaimer{margin-top:12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;font-size:10.8px;line-height:1.45;background:var(--bg);}
.f-bottom{padding-top:12px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:11px;line-height:1.5;}
.f-legal-line{display:flex;align-items:center;flex-wrap:wrap;gap:5px 12px;}
@media (max-width:760px){
  .wrap{padding:0 16px;}
  .nav-inner{height:62px;}
  .logo img{width:144px;max-width:46vw;}
  .nav-links{display:none;}
  .nav-inner .btn{padding:10px 11px;font-size:12px;border-radius:9px;}
  .blog-hero{padding:34px 0 24px;}
  .blog-hero-grid{grid-template-columns:1fr;gap:18px;}
  .label{margin-bottom:12px;font-size:10.5px;}
  .blog-hero h1{font-size:32px;line-height:1.08;max-width:11ch;}
  .blog-hero p{font-size:14.5px;line-height:1.45;margin-top:12px;}
  .hero-note{padding:15px;}
  .blog-list{padding:26px 0 46px;}
  .post-card{grid-template-columns:1fr;gap:18px;padding:18px;border-radius:12px;}
  .post-card h2{font-size:23px;}
  .post-card p{font-size:13.5px;line-height:1.5;}
  .post-card .btn{width:100%;}
  .article-hero{padding:30px 0 24px;}
  .article-hero h1{font-size:30px;line-height:1.08;}
  .article-hero .lead{font-size:14.5px;line-height:1.48;}
  .article-shell{padding:22px 0 48px;}
  .article-grid{grid-template-columns:1fr;gap:18px;}
  .article-grid>aside{position:static;}
  .article-body{padding:24px 18px;border-radius:12px;}
  .article-body h2{margin-top:30px;font-size:22px;}
  .article-body p{font-size:15px;line-height:1.66;}
  .toc{position:static;order:-1;padding:16px;border-radius:12px;}
  .toc nav{display:grid;grid-template-columns:1fr;gap:8px;}
  .cta-strip{padding:18px;border-radius:12px;}
  footer{padding:26px 0 32px;}
  footer .logo img{width:138px;}
  .f-grid{grid-template-columns:1fr 1fr;gap:17px 20px;padding-bottom:16px;}
  .f-grid>div:first-child{grid-column:1 / -1;}
  .f-grid p{font-size:11.8px;line-height:1.4;}
  .f-col h3{font-size:10.5px;margin-bottom:7px;}
  .f-col a{font-size:11.5px;margin-bottom:6px;}
  .disclaimer{margin-top:10px;padding:9px 10px;font-size:10.5px;line-height:1.4;border-radius:10px;}
  .f-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding-top:10px;font-size:10.8px;line-height:1.45;}
  .f-legal-line{gap:4px 10px;}
}
