:root{--ink:#241d29;--muted:#69616f;--paper:#fbf9fd;--card:#fff;--line:#e8e1eb;--green:#721c91;--green2:#f1e8fb;--lime:#fff0df;--orange:#e76319;--dark:#211329;--max:1120px;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.65}a{color:var(--green);text-underline-offset:3px}a:hover{color:#0c493f}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:4px}.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:10px;z-index:20}.skip:focus{left:8px}.wrap,.nav-shell,.footer-shell,.fineprint,.crumb{width:min(calc(100% - 36px),var(--max));margin-inline:auto}.site-header{position:relative;border-bottom:1px solid var(--line);background:rgba(251,250,246,.96)}.nav-shell{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-size:17px;letter-spacing:-.02em;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--dark);color:var(--lime);font-size:12px;font-weight:800;letter-spacing:.05em}.brand b{color:var(--green)}.main-nav{display:flex;gap:7px;align-items:center;overflow-x:auto;padding:8px 0;scrollbar-width:none}.main-nav::-webkit-scrollbar{display:none}.main-nav a{color:#405952;text-decoration:none;font-weight:650;font-size:13px;padding:8px 9px;border-radius:9px;white-space:nowrap}.main-nav a:hover,.main-nav a[aria-current=page]{background:var(--green2);color:var(--ink)}.crumb{display:flex;gap:9px;color:var(--muted);font-size:13px;padding-top:24px}.page-intro{width:min(calc(100% - 36px),870px);margin:0 auto;padding:70px 0 38px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--green);font-size:11px;font-weight:800;margin-bottom:12px}.page-intro h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.035em;font-size:clamp(1.9rem,4.2vw,3.35rem);line-height:1.03;margin:0}.dek{font-size:clamp(1.05rem,2vw,1.25rem);color:var(--muted);max-width:720px;margin:24px auto 0}.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:11px 18px;border:1px solid var(--dark);border-radius:12px;text-decoration:none;font-weight:750;font-size:14px}.button.primary{background:var(--dark);color:white}.button.primary:hover{background:#205a4f;color:#fff}.button.secondary{background:transparent;color:var(--ink);border-color:#b8c5be}.button.secondary:hover{background:#fff}.quick{background:var(--lime);padding:23px 26px;border-radius:var(--radius);display:grid;grid-template-columns:120px 1fr;gap:24px;align-items:start;margin-top:10px;margin-bottom:36px}.quick span{font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.12em}.quick p{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.12rem,2.2vw,1.45rem);line-height:1.45}.section{padding:84px 0}.section.tint{background:#eff3ed;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section.dark{background:var(--dark);color:white}.section.dark .eyebrow{color:var(--lime)}.section.dark p{color:#d5e2dd}.split{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,7vw,100px);align-items:start}.section h2,.article h2,.faq h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(1.8rem,4vw,2.65rem);line-height:1.15;letter-spacing:-.025em;margin:0 0 20px}.section h3,.article h3{font-size:1.05rem;line-height:1.3;margin:0 0 9px}.section p{color:var(--muted)}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:28px}.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.steps li{border-top:2px solid var(--ink);padding:20px 2px;display:flex;gap:14px}.steps li>span{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:var(--green2);font-weight:850}.steps p{margin:0}.check-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.check-list li{position:relative;padding:13px 14px 13px 38px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);border-radius:10px}.check-list li:before{content:"✓";position:absolute;left:14px;color:var(--lime);font-weight:900}.link-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.link-grid a{display:flex;min-height:118px;flex-direction:column;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px;text-decoration:none}.link-grid a:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(25,55,47,.07)}.link-grid b{color:var(--ink)}.link-grid span{color:var(--muted);font-size:13px}.closing{display:flex;justify-content:space-between;gap:50px;align-items:center}.closing>div:first-child{max-width:620px}.article{max-width:850px;padding-bottom:80px}.article>section{padding:45px 0;border-bottom:1px solid var(--line)}.article>section:first-child{padding-top:24px}.article>section:last-child{border:0}.article p,.article li{color:#475d57}.article li+li{margin-top:8px}.article .wide{width:min(var(--max),calc(100vw - 36px));margin-left:50%;transform:translateX(-50%)}.note{background:#eef5f0;border-left:4px solid var(--green);padding:18px 22px;margin:28px 0;border-radius:0 12px 12px 0}.note p{margin:5px 0 0}.number-list{counter-reset:item;list-style:none;padding:0}.number-list li{padding:14px 0 14px 47px;position:relative;border-bottom:1px dashed var(--line)}.number-list li:before{counter-increment:item;content:counter(item);position:absolute;left:0;top:12px;display:grid;place-items:center;width:30px;height:30px;background:var(--green2);border-radius:50%;color:var(--ink);font-weight:800}.mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.mini-grid>div{padding:20px;background:#fff;border:1px solid var(--line);border-radius:13px}.mini-grid p{margin:0}.compare{display:grid;grid-template-columns:1fr 1fr;gap:14px}.compare>div{padding:24px;border-radius:14px}.compare span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:850}.compare .good{background:#e1f2e9;border:1px solid #bdddcf}.compare .weak{background:#f8e9dc;border:1px solid #edcfb4}.compare h3{margin-top:12px}.decision-list{display:grid}.decision-list>div{display:grid;grid-template-columns:220px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.decision-list span{color:var(--muted)}.search-box{background:var(--dark);color:#fff;padding:24px;border-radius:16px}.search-box label{display:block;font-weight:800;margin-bottom:9px}.search-box>div{display:flex}.search-box input{width:100%;min-width:0;padding:13px;border:0;border-radius:9px 0 0 9px;font:inherit}.search-box button{border:0;background:var(--lime);color:var(--ink);font:inherit;font-weight:800;padding:10px 16px;border-radius:0 9px 9px 0}.search-box small{display:block;color:#d0dfda;margin-top:10px}.interactive-checks{list-style:none;padding:0;display:grid;gap:8px}.interactive-checks li{margin:0;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:10px;font-weight:650}.score-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.score-grid>div{padding:18px;background:#fff;border:1px solid var(--line);border-radius:12px}.score-grid b{display:block;font-family:Georgia,"Times New Roman",serif;font-size:2rem;color:var(--green)}.score-grid span{font-weight:800}.score-grid p{font-size:13px;margin-bottom:0}.save-rule{background:var(--lime);padding:28px!important;border:0!important;border-radius:16px}.save-rule span{font-weight:850;text-transform:uppercase;letter-spacing:.1em;font-size:11px}.save-rule p{font-family:Georgia,"Times New Roman",serif;font-size:1.5rem;color:var(--ink);margin-bottom:0}.redflags li::marker{color:#c36843}.faq{max-width:850px;padding:24px 0 60px}.faq details{border-bottom:1px solid var(--line);padding:0}.faq summary{cursor:pointer;list-style:none;padding:24px 42px 24px 0;font-family:Georgia,"Times New Roman",serif;font-size:1.3rem;line-height:1.3;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:6px;color:var(--green);font-family:ui-sans-serif;font-size:1.5rem}.faq details[open] summary:after{content:"−"}.faq details p{margin:-8px 0 25px;max-width:760px;color:var(--muted)}.site-footer{background:#e7eee9;border-top:1px solid var(--line);padding:58px 0 20px}.footer-shell{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.footer-brand{margin-bottom:15px}.footer-shell p{font-size:13px;color:var(--muted);max-width:480px}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 20px;align-content:start}.footer-links a{color:#39564e;text-decoration:none;font-size:13px}.footer-links a:hover{text-decoration:underline}.fineprint{border-top:1px solid #ccd8d1;margin-top:36px;padding-top:18px;color:var(--muted);font-size:12px}
@media(max-width:900px){.nav-shell{align-items:flex-start;flex-direction:column;padding:16px 0 10px;gap:10px}.main-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;gap:6px;overflow:visible;padding:0}.main-nav a{display:grid;place-items:center;min-height:40px;padding:7px 5px;text-align:center;line-height:1.15;border:1px solid transparent}.main-nav a[aria-current=page]{border-color:#dcc8e4}.split,.footer-shell{grid-template-columns:1fr}.steps{grid-template-columns:1fr}.link-grid{grid-template-columns:repeat(2,1fr)}.closing{align-items:flex-start;flex-direction:column}.score-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){body{font-size:15px}.wrap,.nav-shell,.footer-shell,.fineprint,.crumb,.page-intro{width:min(calc(100% - 26px),var(--max))}.main-nav a{font-size:11.5px}.page-intro{padding-top:54px}.quick{grid-template-columns:1fr;gap:8px;padding:20px;margin-bottom:20px}.section{padding:58px 0}.mini-grid,.compare,.check-list{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.link-grid{grid-template-columns:1fr 1fr}.link-grid a{min-height:105px}.decision-list>div{grid-template-columns:1fr;gap:5px}.score-grid{grid-template-columns:1fr 1fr}.search-box>div{flex-direction:column;gap:8px}.search-box input,.search-box button{border-radius:9px}.footer-links{grid-template-columns:repeat(2,1fr)}.hero-actions{align-items:stretch;flex-direction:column}.hero-actions .button{width:100%}.article .wide{width:calc(100vw - 26px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.link-grid a{transform:none!important}}

/* Independent Mulebuy-inspired visual system: purple/orange, rounded UI, line icons. */
body{background:linear-gradient(180deg,#fff 0,#fbf9fd 28rem,#faf8fc 100%)}
a:hover{color:#4f1168}
.site-header{position:sticky;top:0;z-index:50;border-color:rgba(76,33,91,.12);background:rgba(255,255,255,.94);backdrop-filter:blur(14px);box-shadow:0 8px 28px rgba(48,20,60,.045)}
.brand-mark{font-size:0;background:#721c91 url("favicon.svg") center/cover no-repeat;box-shadow:0 7px 18px rgba(114,28,145,.23)}
.brand b{color:#721c91}
.main-nav a{color:#544b58}
.main-nav a:hover,.main-nav a[aria-current=page]{color:#4f1168;background:#f1e8fb}
.crumb{color:#756c79}
.page-intro h1,.section h2,.article h2,.faq h2,.quick p{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.page-intro h1,.section h2,.article h2,.faq h2{font-weight:800;letter-spacing:-.045em}
.eyebrow{color:#721c91}
.button{border-color:#7b2c98;border-radius:999px;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.button.primary{border-color:transparent;background:linear-gradient(115deg,#6b1788,#9456ff);box-shadow:0 12px 25px rgba(114,28,145,.22)}
.button.primary:hover{color:#fff;background:linear-gradient(115deg,#591170,#7e3ee6);transform:translateY(-1px);box-shadow:0 15px 28px rgba(114,28,145,.28)}
.button.secondary{color:#5e1a75;border-color:#c9a8d6;background:#fff}
.button.secondary:hover{color:#4f1168;background:#f7f0fb}
.quick{color:#332439;border:1px solid #ecd8f2;background:linear-gradient(120deg,#fff0df,#f5e9ff 72%,#fff);box-shadow:0 16px 34px rgba(89,38,105,.06)}
.quick span{color:#721c91}
.section.tint{border-color:#e8deec;background:#f8f3fb}
.section.dark{background:radial-gradient(circle at 88% 20%,rgba(148,86,255,.28),transparent 32%),linear-gradient(125deg,#1c1222,#351342 58%,#1d1224)}
.section.dark .eyebrow{color:#ffb06d}.section.dark p{color:#ded4e2}
.mini-grid>div,.score-grid>div,.interactive-checks li{border-color:#e8e0eb;box-shadow:0 12px 32px rgba(55,22,66,.055)}
.score-grid b{color:#721c91}
.steps li{border-color:#721c91}.steps li>span,.number-list li:before{color:#5b176f;background:#f1e8fb}
.link-grid a{border-color:#e8e0eb;box-shadow:0 9px 25px rgba(55,22,66,.04)}
.link-grid a:hover{border-color:#d7bce1;box-shadow:0 14px 30px rgba(89,38,105,.1)}
.note{border-left-color:#9456ff;background:#f6effb}
.compare .good{border-color:#d9c2e4;background:#f3eafb}.compare .weak{border-color:#f1d3b8;background:#fff1e5}
.search-box{background:linear-gradient(125deg,#24162c,#5b1a70);box-shadow:0 18px 40px rgba(61,25,74,.15)}
.search-box button{color:#fff;background:linear-gradient(115deg,#ff8c22,#e76319)}
.save-rule,.key-point{background:linear-gradient(120deg,#fff0df,#f1e8fb)}
.faq summary{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:700;letter-spacing:-.02em}.faq summary:after{color:#721c91}
.site-footer{border-color:#e3d8e7;background:linear-gradient(135deg,#f4ecf8,#fff4e8)}
.footer-links a{color:#5a4661}.fineprint{border-color:#ddcfe2}
.article-meta{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;width:min(calc(100% - 36px),870px);margin:-19px auto 35px;color:#756c79;font-size:12px}.article-meta a{font-weight:750}
@media(prefers-reduced-motion:reduce){.button{transition:none}.button.primary:hover{transform:none}}

/* Compact vertical rhythm: tighter sections without crowding the reading line. */
.crumb{padding-top:18px}
.page-intro{padding:50px 0 28px}
.dek{margin-top:18px}
.quick{gap:18px;padding:19px 22px;margin:6px auto 25px}
.section{padding:62px 0}
.split{gap:clamp(28px,5vw,72px)}
.section-head{margin-bottom:22px}
.section h2,.article h2,.faq h2{margin-bottom:16px}
.steps li{padding:16px 2px}
.closing{gap:36px}
.article{padding-bottom:58px}
.article>section{padding:34px 0}
.article>section:first-child{padding-top:18px}
.note{margin:21px 0;padding:16px 20px}
.save-rule{padding:23px!important}
.faq{padding:16px 0 44px}
.faq summary{padding:19px 42px 19px 0}
.faq details p{margin:-4px 0 20px}
.site-footer{padding:44px 0 18px}
.footer-shell{gap:50px}
.fineprint{margin-top:26px;padding-top:15px}
.article-meta{margin:-12px auto 25px}
@media(max-width:600px){
  .page-intro{padding-top:40px}
  .page-intro{padding-bottom:22px}
  .section{padding:44px 0}
  .quick{gap:7px;padding:17px 18px;margin-bottom:17px}
  .article>section{padding:27px 0}
  .article>section:first-child{padding-top:14px}
  .site-footer{padding-top:35px}
  .fineprint{margin-top:21px}
}

/* Unified site design system. */
:root{
  --surface:#fff;
  --surface-soft:#f8f3fb;
  --surface-warm:#fff5eb;
  --text-soft:#675d6b;
  --accent:#721c91;
  --accent-bright:#9456ff;
  --accent-warm:#e76319;
  --radius-card:18px;
  --radius-panel:22px;
  --shadow-card:0 14px 36px rgba(56,22,67,.07);
  --shadow-soft:0 9px 26px rgba(56,22,67,.05)
}
body{color:#281f2d}
.page-intro{text-align:left}
.page-intro .dek{margin-left:0;margin-right:0;color:var(--text-soft)}
.article-meta{justify-content:flex-start;color:#786d7c}
.article-meta .byline{font-weight:750;color:var(--ink)}
.editorial-card{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;padding:20px;background:#fff;border:1px solid var(--line);border-radius:14px}.editorial-badge{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--dark);color:#fff;font-size:12px;font-weight:850;letter-spacing:.08em}.editorial-card p{margin:3px 0 0}.source-policy{padding-left:1.2rem}.source-policy li+li{margin-top:8px}
.crumb a{color:#67536e}
.eyebrow{color:var(--accent);margin-bottom:10px}
.quick{width:min(calc(100% - 36px),870px);border-radius:var(--radius-card);box-shadow:var(--shadow-soft)}
.quick p{font-weight:600;letter-spacing:-.025em}
.section h2,.article h2,.faq h2{line-height:1.12}
.section h2,.article h2,.faq h2{font-size:clamp(1.4rem,2.5vw,1.9rem)}
.section p,.article p,.article li,.faq p{color:var(--text-soft)}
.button{min-height:46px;font-weight:760}
.mini-grid>div,.score-grid>div,.interactive-checks li,.link-grid a{
  border-color:var(--line);
  border-radius:var(--radius-card);
  background:var(--surface);
  box-shadow:var(--shadow-soft)
}
.link-grid a:hover{border-color:#d5b9df;box-shadow:var(--shadow-card)}
.note{border-radius:0 var(--radius-card) var(--radius-card) 0}
.compare>div,.search-box,.save-rule{border-radius:var(--radius-card)}
.save-rule p{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:700;letter-spacing:-.025em}
.faq details{
  margin-bottom:10px;
  padding:0 18px;
  border:1px solid var(--line);
  border-radius:var(--radius-card);
  background:var(--surface);
  box-shadow:var(--shadow-soft)
}
.faq summary{padding:18px 34px 18px 0}
.faq summary:after{right:0}
.faq details p{margin:-2px 0 18px}
.site-footer{background:linear-gradient(135deg,#f7f0fa,#fff7ee)}
@media(max-width:600px){
  .quick{width:min(calc(100% - 26px),870px)}
  .article-meta{justify-content:flex-start}
  .faq details{padding:0 15px}
}

/* One shared outer grid for every page section. */
:root{--content-max:870px;--page-gutter:36px}
.page-intro,.article-meta,.quick,.article,.faq{
  width:min(calc(100% - var(--page-gutter)),var(--max));
  max-width:var(--max);
  margin-left:auto;
  margin-right:auto
}
.page-intro h1,.page-intro .dek{max-width:var(--content-max)}
.quick p{max-width:var(--content-max)}
.article:not(.article-long)>section>h2,
.article:not(.article-long)>section>h3,
.article:not(.article-long)>section>p,
.article:not(.article-long)>section>ul,
.article:not(.article-long)>section>ol{max-width:var(--content-max)}
.article:not(.article-long)>section>.note{max-width:var(--content-max)}
@media(max-width:600px){:root{--page-gutter:26px}}

/* White section system; the dedicated search areas keep their dark treatment. */
body{background:#fff}
.section.tint,.section.dark{
  color:var(--ink);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#fff
}
.section.dark .eyebrow{color:var(--accent)}
.section.dark p{color:var(--text-soft)}
.section.dark .check-list li{
  color:var(--ink);
  border-color:var(--line);
  background:#fff;
  box-shadow:var(--shadow-soft)
}
.section.dark .check-list li:before{color:var(--accent-warm)}
.quick{background:#fff}
.site-footer{background:#fff}

/* Shared visually-hidden utility for labels and table captions. */
.sr-only{
  position:absolute!important;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}

/* Keep secondary-page titles proportional to the tighter section scale. */
.page-intro h1{
  font-size:clamp(1.65rem,3.2vw,2.65rem);
  line-height:1.08
}
