/* kardinalapp.com blog. Same tokens as site/src/style.css: red #ed462f, navy #023f76, paper #f8f7f3. One small file, no JS. */
:root{--red:#ed462f;--reddeep:#c9331e;--navy:#023f76;--ink:#0b1622;--muted:#4c5a66;--paper:#f8f7f3;--card:#fff;--line:#e3dfd5;
  --fh:'Space Grotesk',system-ui,sans-serif;--fb:Manrope,system-ui,sans-serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:76px}
body{margin:0;background:var(--paper);color:var(--ink);font:500 18px/1.65 var(--fb);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--navy);font-weight:700}
h1,h2,h3{font-family:var(--fh);letter-spacing:-.02em;line-height:1.15;margin:0}
button{font:inherit;color:inherit;cursor:pointer}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:99;background:#fff;padding:8px 12px;border-radius:8px}
:focus-visible{outline:3px solid var(--navy);outline-offset:2px}

.bar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:16px;padding:10px 16px;background:rgba(248,247,243,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink)}
.brand b{font:700 17px var(--fh);letter-spacing:.14em}
.links{display:none;gap:22px;margin-left:auto}
.links a{text-decoration:none;color:var(--muted);font-weight:700;font-size:15px}
.links a[aria-current=page]{color:var(--ink)}
.call{margin-left:auto;text-decoration:none;background:var(--navy);color:#fff;border-radius:999px;padding:9px 14px;font-size:15px;white-space:nowrap}
@media (min-width:900px){.links{display:flex}.call{margin-left:8px}}

main{max-width:760px;margin:0 auto;padding:18px 16px 40px}
.blogIndex{max-width:1080px}
.crumbs{font-size:14px;color:var(--muted);margin:4px 0 18px}
.crumbs a{font-weight:600;color:var(--muted)}
.eyebrow{margin:0 0 10px;font:800 12px/1.3 var(--fb);letter-spacing:.12em;text-transform:uppercase;color:var(--reddeep)}
.postHead h1{font-size:clamp(32px,6.4vw,50px);font-weight:700}
.dek{font-size:20px;color:var(--muted);margin:14px 0 8px}
.by{font-size:14px;color:var(--muted);margin:0 0 22px}

.lead{margin:0 0 28px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;display:flex;flex-direction:column;align-items:center}
.lead img{border-radius:12px}
.lead.tall img{max-height:520px;width:auto}
.lead figcaption,.body figcaption{font-size:14px;color:var(--muted);margin-top:10px;text-align:center}

.body h2{font-size:clamp(25px,4.4vw,32px);margin:38px 0 10px}
.body h3{font-size:21px;margin:26px 0 6px}
.body p,.body ul,.body ol{margin:0 0 16px}
.body ul,.body ol{padding-left:22px}
.body li{margin:0 0 8px}
.body strong{font-weight:800}
.body blockquote{margin:22px 0;padding:14px 18px;border-left:4px solid var(--red);background:#fff;border-radius:0 12px 12px 0;font-weight:600}
.body .note{background:#fff6e8;border:1px solid #f1d6a8;border-radius:14px;padding:14px 16px;font-size:16px}
.body table{width:100%;border-collapse:collapse;margin:0 0 18px;font-size:16px;background:#fff;border-radius:12px;overflow:hidden}
.body th,.body td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.body th{font-family:var(--fh);background:#f1eee6}
.tableWrap{overflow-x:auto;margin:0 0 18px}
.tableWrap table{margin:0;min-width:520px}
.body figure{margin:22px 0}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:14px;text-decoration:none;font-weight:800}
.btn.red{background:var(--red);color:#fff}.btn.red:hover{background:var(--reddeep)}
.btn.big{padding:16px 22px;font-size:18px;width:100%;max-width:440px}
.cta{margin:36px 0;padding:22px 20px;background:var(--ink);color:#fff;border-radius:20px}
.cta a:not(.btn){color:#fff}
.ctaKick{margin:0 0 4px;font:800 12px/1.3 var(--fb);letter-spacing:.12em;text-transform:uppercase;color:#ffb3a6}
.ctaLine{font:700 22px/1.3 var(--fh);margin:0 0 16px}
.cta .fine{font-size:15px;color:#c9d2da;margin:12px 0 0}
.plans{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:10px}
.plans a{display:block;text-decoration:none;color:#fff;background:rgba(255,255,255,.07);border-radius:14px;padding:12px 14px}
.plans b{display:block;font-family:var(--fh);font-size:19px}
.plans span{font-size:15px;color:#c9d2da;font-weight:600}
@media (min-width:760px){.plans{grid-template-columns:1fr 1fr}}

.faq{margin:36px 0}
.faq h2{font-size:28px;margin:0 0 12px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 16px;margin:0 0 10px}
.faq summary{font-weight:800;cursor:pointer}
.faq p{margin:10px 0 2px}

.more h2,.blogIndex h2{font-size:24px;margin:30px 0 12px}
.pillarLink{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 16px}
.cards{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.cards a{display:block;height:100%;text-decoration:none;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px}
.cards a:hover{border-color:var(--navy)}
.cards b{display:block;font:700 20px/1.25 var(--fh);margin:6px 0}
.cards span{display:block;font-size:15px;font-weight:600;color:var(--muted)}
.cards .tag{font:800 11px/1.3 var(--fb);letter-spacing:.12em;text-transform:uppercase;color:var(--reddeep)}
@media (min-width:760px){.cards{grid-template-columns:1fr 1fr}.cards.big{grid-template-columns:1fr 1fr 1fr}}

.foot{border-top:1px solid var(--line);padding:22px 16px 34px;font-size:14px;color:var(--muted);text-align:center}
.foot p{margin:6px 0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 14px}
.foot img{display:inline-block}
.footAds{max-width:720px;margin:10px auto 0 !important}
.linkish{background:none;border:0;padding:0;color:var(--navy);font-weight:700;text-decoration:underline}
