*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.6;color:#1d2630;background:#f6f8fb}a{color:#154c79;text-decoration:none}a:hover{text-decoration:underline}.wrap{width:min(1120px,92vw);margin:0 auto}.site-header{position:sticky;top:0;background:#fff;border-bottom:1px solid #dbe3ec;z-index:10}.nav{display:flex;justify-content:space-between;align-items:center;padding:16px 0;gap:24px}.nav nav{display:flex;gap:18px;flex-wrap:wrap}.brand{font-weight:700;font-size:1.2rem;color:#111}.hero{padding:56px 0;background:linear-gradient(180deg,#ffffff 0%,#eef4fa 100%);border-bottom:1px solid #dbe3ec}.hero-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:24px;align-items:start}.eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;font-weight:700;color:#456}.lead{font-size:1.1rem;color:#3b4a5a}.hero h1{font-size:clamp(2rem,5vw,3.4rem);line-height:1.1;margin:.2em 0}.button{display:inline-block;background:#154c79;color:#fff;padding:12px 18px;border-radius:12px;font-weight:700;margin-right:10px}.button:hover{text-decoration:none;opacity:.94}.button.secondary{background:#fff;color:#154c79;border:1px solid #bfd0df}.section{padding:40px 0}.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.grid{display:grid;gap:20px}.grid.three{grid-template-columns:repeat(3,1fr)}.card{background:#fff;border:1px solid #dbe3ec;border-radius:18px;padding:22px;box-shadow:0 8px 24px rgba(10,30,50,.05)}.checklist ul,.article-main ul,.article-main ol{padding-left:20px}.label{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#6a7a8c;font-weight:700}.site-footer{padding:28px 0;margin-top:20px;border-top:1px solid #dbe3ec;background:#fff}.footer-grid{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer-grid div:last-child{display:flex;gap:14px;flex-wrap:wrap}.article-shell{padding:32px 0 60px}.breadcrumb{font-size:.92rem;margin-bottom:12px;color:#5f6f80}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px}.article-main{background:#fff;border:1px solid #dbe3ec;border-radius:18px;padding:28px;box-shadow:0 8px 24px rgba(10,30,50,.05)}.article-main h1{line-height:1.15;margin-top:0}.article-meta{display:flex;gap:14px;flex-wrap:wrap;color:#5f6f80;font-size:.95rem;border-top:1px solid #e6edf4;border-bottom:1px solid #e6edf4;padding:10px 0;margin:18px 0}.aside-card{position:sticky;top:88px}.callout{background:#eef4fa;border-left:4px solid #154c79;padding:14px 16px;border-radius:10px}.table-wrap{overflow:auto}.compare-table{width:100%;border-collapse:collapse}.compare-table th,.compare-table td{border:1px solid #dbe3ec;padding:10px;text-align:left}.faq-item{padding:14px 0;border-top:1px solid #e6edf4}.related-links a{display:block;padding:8px 0}.small{font-size:.92rem;color:#5f6f80}code.inline{background:#eef4fa;padding:2px 6px;border-radius:6px}@media (max-width:900px){.hero-grid,.article-layout,.grid.three{grid-template-columns:1fr}.aside-card{position:static}.nav{flex-direction:column;align-items:flex-start}}
.article-hero-img{width:100%;height:auto;display:block;border-radius:16px;margin:18px 0 22px;box-shadow:0 8px 24px rgba(10,30,50,.08)}


:root{
  --bg:#f5f7fb;
  --surface:#ffffff;
  --text:#1e2937;
  --muted:#5f6f80;
  --line:#dbe3ec;
  --brand:#154c79;
  --brand-dark:#123e63;
}
body{background:var(--bg);color:var(--text)}
.hero{padding:72px 0 56px;background:linear-gradient(180deg,#ffffff 0%,#eef4fa 100%)}
.hero-grid{align-items:center}
.hero-copy{max-width:760px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.hero-feature{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}
.hero-stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;box-shadow:0 8px 24px rgba(10,30,50,.05)}
.hero-stat strong{display:block;font-size:1.1rem}
.section-kicker{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:#6a7a8c;font-weight:700;margin-bottom:8px}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card a.card-link{display:block;color:inherit;text-decoration:none}
.card-media{aspect-ratio:16/10;overflow:hidden;border-radius:14px;margin-bottom:14px;background:#e9eef4}
.card-media img{width:100%;height:100%;object-fit:cover;display:block}
.card h3{margin:.2rem 0 .45rem;line-height:1.25}
.card p{color:#425161}
.card-cta{display:inline-block;margin-top:10px;font-weight:700;color:var(--brand)}
.feature-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.feature-box{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 8px 24px rgba(10,30,50,.05)}
.site-footer .footer-grid{align-items:flex-start}
.badge{display:inline-block;padding:6px 10px;border-radius:999px;background:#e8f0f7;color:#154c79;font-size:.8rem;font-weight:700}
.article-main p{color:#334155}
.article-main h2{margin-top:1.4em}
.article-main a.button-inline{display:inline-block;background:#154c79;color:#fff;padding:10px 14px;border-radius:10px;font-weight:700;text-decoration:none}
.home-intro{max-width:820px;color:#3b4a5a;font-size:1.06rem}
@media (max-width:900px){
  .card-grid,.feature-strip,.hero-feature{grid-template-columns:1fr}
}


.search-wrap{margin-top:24px;max-width:760px}
.search-bar{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid #dbe3ec;border-radius:16px;padding:10px 14px;box-shadow:0 8px 24px rgba(10,30,50,.05)}
.search-bar input{width:100%;border:none;outline:none;font-size:1rem;background:transparent;color:#1e2937}
.search-results{display:grid;gap:12px;margin-top:14px}
.search-result,.related-card{display:grid;grid-template-columns:112px 1fr;gap:14px;align-items:center;background:#fff;border:1px solid #dbe3ec;border-radius:16px;padding:10px;text-decoration:none;color:inherit;box-shadow:0 8px 24px rgba(10,30,50,.05)}
.search-result img,.related-card img{width:112px;height:74px;object-fit:cover;border-radius:10px;display:block}
.search-cat{display:inline-block;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:#6a7a8c;font-weight:700;margin-bottom:5px}
.search-result p,.related-card p{margin:.35rem 0 0;color:#425161}
.search-empty{background:#fff;border:1px solid #dbe3ec;border-radius:16px;padding:16px}
.category-hero{padding:48px 0 22px;background:linear-gradient(180deg,#ffffff 0%,#eef4fa 100%);border-bottom:1px solid #dbe3ec}
.category-hero p{max-width:760px;color:#425161}
.related-grid{display:grid;gap:14px;margin-top:12px}
.breadcrumbs{font-size:.92rem;margin-bottom:12px;color:#5f6f80}
.breadcrumbs a{color:#154c79}
@media (max-width:700px){
  .search-result,.related-card{grid-template-columns:1fr}
  .search-result img,.related-card img{width:100%;height:180px}
}


.toc-box{background:#fff;border:1px solid #dbe3ec;border-radius:16px;padding:18px;margin:18px 0 24px;box-shadow:0 8px 24px rgba(10,30,50,.05)}
.toc-box h2,.toc-box h3{margin:0 0 10px}
.toc-list{display:grid;gap:8px}
.toc-list a{color:#154c79;text-decoration:none}
.toc-list a:hover{text-decoration:underline}
.comparison-box{background:#fff;border:1px solid #dbe3ec;border-radius:18px;padding:18px;margin:22px 0;box-shadow:0 8px 24px rgba(10,30,50,.05)}
.comparison-box h3{margin-top:0}
.product-picks{display:grid;gap:14px}
.product-pick{border:1px solid #e6edf4;border-radius:14px;padding:14px}
.pick-badge{display:inline-block;background:#e8f0f7;color:#154c79;font-size:.75rem;font-weight:700;border-radius:999px;padding:6px 10px;margin-bottom:8px}
.affiliate-btn{display:inline-block;background:#154c79;color:#fff;padding:10px 14px;border-radius:10px;font-weight:700;text-decoration:none;margin-top:8px}
.affiliate-note{font-size:.92rem;color:#5f6f80}


.affiliate-box{
  border:1px solid #e5e7eb;
  border-radius:14px;
  padding:18px;
  margin:22px 0;
  display:flex;
  gap:16px;
  align-items:flex-start;
  background:#fafafa;
  box-shadow:0 8px 24px rgba(10,30,50,.05);
}
.affiliate-content{flex:1;}
.affiliate-title{font-weight:700;font-size:1.05rem;margin-bottom:6px;color:#1f2937;}
.affiliate-btn{display:inline-block;background:#ff9900;color:#111;padding:10px 16px;border-radius:8px;text-decoration:none;font-weight:700;}
.affiliate-subtle{font-size:.92rem;color:#5f6f80;margin-top:6px;}
.faq-highlight{
  background:#fff;
  border:1px solid #dbe3ec;
  border-radius:16px;
  padding:18px;
  margin:24px 0;
  box-shadow:0 8px 24px rgba(10,30,50,.05);
}
.faq-highlight h2{margin-top:0;}
.faq-highlight .faq-item:first-of-type{border-top:none;padding-top:0;}
@media (max-width:700px){.affiliate-box{flex-direction:column;}}
