.article-header { background: #111428; color: #fff; }
.article-header .site-header { color: #fff; border-color: rgba(255,255,255,.16); }
.article-header .brand, .article-header nav a { color: #fff; }
.article-header .menu-button { color: #fff; border-color: rgba(255,255,255,.35); }
.article-hero { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr); min-height:560px; background:#111428; color:#fff; }
.article-hero-copy { padding:clamp(4rem,8vw,8rem) clamp(1.5rem,7vw,7rem); align-self:center; }
.article-hero h1 { margin:.75rem 0 1.4rem; max-width:760px; font:700 clamp(2.7rem,6vw,5.4rem)/.98 Manrope,sans-serif; letter-spacing:-.06em; }
.article-hero .dek { max-width:670px; color:#d8d9e6; font-size:1.18rem; line-height:1.7; }
.article-hero-image { min-height:520px; width:100%; height:100%; object-fit:cover; }
.article-meta { display:flex; gap:1rem; flex-wrap:wrap; margin-top:2rem; color:#b9bbcf; font-size:.9rem; }
.article-shell { width:min(1180px,calc(100% - 2.5rem)); margin:0 auto; padding:5.5rem 0 7rem; }
.article-layout { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:clamp(3rem,7vw,7rem); align-items:start; }
.article-body { max-width:790px; }
.article-body h2 { margin:4rem 0 1rem; font:700 clamp(1.9rem,3vw,2.8rem)/1.12 Manrope,sans-serif; letter-spacing:-.04em; color:#15172d; }
.article-body h3 { margin:2.4rem 0 .7rem; font:700 1.25rem/1.3 Manrope,sans-serif; color:#1b1e37; }
.article-body p, .article-body li { font-size:1.05rem; line-height:1.75; color:#52556a; }
.article-body a { color:#6259ae; font-weight:650; }
.answer-box { padding:1.6rem 1.8rem; background:#efeffb; border-left:4px solid #746cc0; border-radius:0 16px 16px 0; }
.answer-box strong { display:block; color:#20223c; font:700 1.08rem Manrope,sans-serif; margin-bottom:.35rem; }
.answer-box p { margin:0; color:#383b53; }
.first-order-checklist { margin:3rem 0 4.5rem; padding:clamp(1.5rem,4vw,2.5rem); border:1px solid #d9d9e8; border-radius:24px; background:linear-gradient(145deg,#f7f7ff 0%,#fff 58%); box-shadow:0 18px 50px rgba(24,27,55,.08); }
.first-order-checklist .checklist-heading h2 { margin:.35rem 0 .75rem; }
.first-order-checklist .checklist-heading > p:last-child { margin:0; max-width:700px; }
.checklist-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; margin-top:1.7rem; }
.checklist-columns > div { padding:1.25rem; border:1px solid #e2e2ed; border-radius:17px; background:#fff; }
.checklist-columns h3 { margin:0 0 .8rem; font-size:1.05rem; }
.checklist-list { margin:0; padding:0; list-style:none; }
.checklist-list li { position:relative; margin:.7rem 0; padding-left:1.75rem; font-size:.96rem; line-height:1.55; }
.checklist-list li::before { content:""; position:absolute; left:0; top:.25rem; width:.92rem; height:.92rem; border:2px solid #746cc0; border-radius:4px; background:#fff; }
.checklist-actions { display:flex; align-items:center; gap:1.15rem; flex-wrap:wrap; margin-top:1.5rem; }
.checklist-secondary { color:#3d396f !important; text-decoration:underline; text-underline-offset:4px; }
.cost-table { margin:1.8rem 0; overflow-x:auto; border:1px solid #dfe0ea; border-radius:18px; }
.cost-table table { width:100%; border-collapse:collapse; min-width:690px; }
.cost-table th { padding:1rem 1.1rem; text-align:left; background:#171a32; color:#fff; font-size:.84rem; letter-spacing:.02em; }
.cost-table td { padding:1.05rem 1.1rem; border-top:1px solid #e5e6ee; color:#4a4d61; vertical-align:top; }
.cost-table tr:nth-child(even) td { background:#fafafe; }
.cost-table strong { color:#1a1c33; }
.scenario-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin:1.8rem 0; }
.cost-calculator{margin:2.2rem 0 3rem;padding:2rem;border-radius:24px;background:#171a32;color:#fff}.calculator-heading .eyebrow{color:#c9ff57}.calculator-heading h2{margin:.2rem 0 .55rem;color:#fff}.calculator-heading>p:last-child{margin:0;color:#c7c9d7}.calculator-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;margin-top:1.6rem}.calculator-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.calculator-fields label{position:relative;display:flex;flex-direction:column;gap:.45rem;color:#e8e9f0;font-size:.84rem;font-weight:600}.calculator-fields label>span{position:absolute;left:13px;bottom:12px;color:#6e7183}.calculator-fields input{width:100%;min-height:46px;padding:10px 12px;border:1px solid #45485e;border-radius:10px;background:#24273f;color:#fff;font:600 1rem Manrope,sans-serif}.calculator-fields label:has(>span) input{padding-left:28px}.calculator-fields input:focus{outline:3px solid rgba(201,255,87,.24);border-color:#c9ff57}.calculator-result{align-self:stretch;padding:1.45rem;border-radius:18px;background:#c9ff57;color:#171a32}.calculator-result>span{display:block;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.calculator-result>strong{display:block;margin:.25rem 0 1.1rem;font:700 clamp(2.2rem,5vw,3.4rem) Manrope,sans-serif}.calculator-result div{display:flex;justify-content:space-between;gap:1rem;padding:.6rem 0;border-top:1px solid rgba(23,26,50,.2);font-size:.9rem}.calculator-result small{display:block;margin-top:1rem;line-height:1.45;color:#3d422e}
.scenario { padding:1.5rem; border:1px solid #dedfe9; border-radius:18px; background:#fff; }
.scenario span { color:#746cc0; font-size:.78rem; text-transform:uppercase; letter-spacing:.09em; font-weight:700; }
.scenario strong { display:block; margin:.55rem 0; font:700 1.45rem Manrope,sans-serif; color:#17192e; }
.scenario p { margin:0; font-size:.92rem; line-height:1.55; }
.formula { padding:1.4rem 1.6rem; border-radius:16px; background:#171a32; color:#fff !important; font-weight:650; text-align:center; }
.article-note { padding:1.2rem 1.4rem; border:1px solid #e0d9bd; background:#fff9e7; border-radius:14px; font-size:.92rem !important; }
.affiliate-feature { margin:2rem 0 3.2rem; overflow:hidden; border:1px solid #ddddea; border-radius:20px; background:#fff; box-shadow:0 16px 40px rgba(24,27,55,.08); }
.affiliate-feature > a { display:block; color:#17192e !important; text-decoration:none; }
.affiliate-feature img { display:block; width:100%; aspect-ratio:1144/250; object-fit:cover; }
.affiliate-feature span { display:grid; grid-template-columns:auto 1fr; gap:.2rem 1rem; align-items:center; padding:1.15rem 1.35rem .8rem; }
.affiliate-feature small { grid-row:1 / 3; padding:.35rem .55rem; border-radius:999px; background:#efeffb; color:#5c55a5; font-size:.72rem; font-style:normal; font-weight:750; letter-spacing:.04em; text-transform:uppercase; }
.affiliate-feature strong { font:700 1.08rem/1.3 Manrope,sans-serif; }
.affiliate-feature em { color:#6259ae; font-size:.9rem; font-style:normal; }
.affiliate-feature p { margin:0; padding:0 1.35rem 1.15rem; color:#73758a; font-size:.78rem; line-height:1.5; }
.article-aside { position:sticky; top:110px; padding:1.5rem; border:1px solid #e1e2eb; border-radius:18px; background:#fafafe; }
.article-aside strong { display:block; font:700 1rem Manrope,sans-serif; margin-bottom:.8rem; color:#191b31; }
.article-aside a { display:block; color:#5b5e70; padding:.55rem 0; border-bottom:1px solid #e3e4ec; font-size:.92rem; }
.article-aside a:last-child { border:0; }
.source-list { padding-left:1.2rem; }
.source-list li { margin:.65rem 0; }
.related-cta { margin-top:4.5rem; padding:2.3rem; border-radius:24px; background:#c9ff57; color:#16182e; }
.related-cta h2 { margin:0 0 .6rem; }
.related-cta p { color:#363944; max-width:620px; }
.related-cta .button { margin-top:.6rem; }
@media (max-width:850px) {
  .article-hero { grid-template-columns:1fr; }
  .article-hero-image { min-height:340px; max-height:440px; order:-1; }
  .article-layout { grid-template-columns:1fr; }
  .article-aside { position:static; order:-1; }
  .scenario-grid { grid-template-columns:1fr; }
  .checklist-columns { grid-template-columns:1fr; }
  .calculator-grid,.calculator-fields{grid-template-columns:1fr}.cost-calculator{padding:1.35rem}
}
@media (max-width:620px) {
  .article-shell { width:min(100% - 1.5rem,1180px); padding-top:3.5rem; }
  .article-hero-copy { padding:3rem 1.2rem 4rem; }
  .article-hero h1 { font-size:2.55rem; }
  .affiliate-feature span { grid-template-columns:1fr; gap:.35rem; }
  .affiliate-feature small { grid-row:auto; justify-self:start; }
}
