﻿:root {
  --ce-blue:#1e5ae0; --ce-blue-dark:#1848b8; --ce-blue-light:#3b72e8; --ce-blue-faint:#e8eefd;
  --paper:#ffffff; --paper-soft:#f5f6fb;
  --ink:#0c1b3a; --ink-body:#1f2d4a; --ink-muted:#5a6585; --ink-faint:#8a93ac;
  --rule:#dde1ed; --rule-soft:#e8ebf3; --rule-dashed:#c8cfe0;
  --sans:'Inter',-apple-system,sans-serif; --mono:'Inter',-apple-system,sans-serif;
  --content:1000px; --wide:1390px;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;}
body{background:var(--paper);color:var(--ink-body);font-family:var(--sans);font-weight:400;font-size:17px;line-height:1.7;}
a{color:var(--ce-blue);text-decoration:none;}

/* NAV */
.top-nav{background:var(--ce-blue);position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(255,255,255,0.08);}
.nav-inner{max-width:var(--wide);margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;height:60px;gap:32px;}
.logo{font-weight:700;font-size:18px;color:white;letter-spacing:-0.02em;flex-shrink:0;text-decoration:none;}
.logo span{opacity:0.65;font-weight:400;}
.nav-links{display:flex;align-items:center;gap:4px;list-style:none;font-size:13.5px;font-weight:500;}
.nav-links a{color:rgba(255,255,255,0.88);padding:6px 12px;border-radius:5px;transition:background .15s,color .15s;}
.nav-links a:hover{color:white;background:rgba(255,255,255,0.12);}
.btn-order{background:white!important;color:var(--ce-blue)!important;padding:8px 18px!important;border-radius:6px;font-weight:700!important;font-size:13.5px!important;transition:transform .15s,box-shadow .15s!important;}
.btn-order:hover{transform:translateY(-1px)!important;box-shadow:0 4px 14px rgba(0,0,0,0.18)!important;}
@media(max-width:768px){.nav-links{display:none;}}

/* BREADCRUMBS */
.crumbs-bar{border-bottom:1px solid var(--rule-soft);padding:12px 0;}
.crumbs{max-width:var(--wide);margin:0 auto;padding:0 32px;font-family:var(--mono);font-size:11px;letter-spacing:0.05em;text-transform:uppercase;color:var(--ink-faint);display:flex;align-items:center;flex-wrap:wrap;}
.crumbs a{color:var(--ink-muted);border-bottom:1px solid transparent;transition:border-color .2s;}
.crumbs a:hover{border-bottom-color:var(--ink-muted);}
.crumbs .sep{margin:0 10px;}
.crumbs .current{color:var(--ink);}

/* MASTHEAD */
.masthead{max-width:var(--content);margin:0 auto;padding:64px 32px 48px;}
.kicker{font-family:var(--mono);font-size:11px;letter-spacing:0.22em;text-transform:uppercase;color:var(--ce-blue);margin-bottom:24px;display:flex;align-items:center;gap:14px;font-weight:500;}
.kicker::before{content:'';width:28px;height:1px;background:var(--ce-blue);}
h1.title{font-weight:800;font-size:clamp(32px,5.5vw,54px);line-height:1.05;letter-spacing:-0.03em;color:var(--ink);margin-bottom:24px;}
h1.title em{font-style:italic;font-weight:500;color:var(--ce-blue);}
.deck{font-size: 19px;
    line-height: 150%;
    color: var(--ink-muted);
    max-width: 800px;margin-bottom:32px;font-style:italic;font-weight:400;}
.byline{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;padding-top:20px;border-top:1px solid var(--rule);font-family:var(--mono);font-size:11.5px;letter-spacing:0.04em;color:var(--ink-muted);}
.byline .author{color:var(--ink);font-weight:500;}
.byline .author-link{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:color .15s;}
.byline .author-link:hover{color:var(--ce-blue);}
.byline-item{display:inline-flex;align-items:center;gap:7px;}
.byline-icon{width:16px;height:16px;color:var(--ce-blue);flex-shrink:0;}
.byline-badge{display:inline-flex;align-items:center;gap:6px;background:var(--ce-blue-faint);color:var(--ce-blue);font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;padding:4px 10px;border-radius:4px;}

/* QUICK PICKS */
.quick-picks{background:var(--paper-soft);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:24px 32px;}
.quick-picks-inner{max-width:var(--wide);margin:0 auto;}
.quick-picks-label{font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:0.2em;text-transform:uppercase;color:var(--ce-blue);margin-bottom:14px;}
.quick-picks-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.quick-pick-card{background:var(--paper);border:1px solid var(--rule);border-radius:8px;padding:14px 16px;text-decoration:none;display:block;transition:border-color .18s,transform .18s,box-shadow .18s;color:inherit;}
.quick-pick-card:hover{border-color:var(--ce-blue);transform:translateY(-2px);box-shadow:0 6px 20px rgba(30,90,224,0.10);color:inherit;}
.quick-pick-card .qp-label{font-family:var(--mono);font-size:11px;font-weight:500;color:var(--ce-blue);letter-spacing:0.06em;margin-bottom:10px;display:flex;align-items:center;gap:6px;}
.quick-pick-card .qp-label::after{content:'\2192';font-size:11px;opacity:0;transform:translateX(-4px);transition:opacity .15s,transform .15s;margin-left:auto;}
.quick-pick-card:hover .qp-label::after{opacity:1;transform:translateX(0);}
.quick-pick-card ol{list-style:none;counter-reset:pick-counter;margin:0;padding:0;}
.quick-pick-card ol li{counter-increment:pick-counter;display:flex;align-items:baseline;gap:8px;font-size:13px;color:var(--ink-muted);line-height:1.5;padding:4px 0;border-bottom:1px solid var(--rule-soft);}
.quick-pick-card ol li:last-child{border-bottom:none;}
.quick-pick-card ol li::before{content:counter(pick-counter,decimal-leading-zero);font-family:var(--mono);font-size:10px;font-weight:500;color:var(--ce-blue);opacity:0.7;flex-shrink:0;width:18px;}
.quick-pick-card ol li a{color:var(--ink-muted);text-decoration:none;}
.quick-pick-card ol li a:hover{text-decoration:underline;}

/* MOBILE TOC STICKY BAR */
.toc-sticky-bar{display:none;position:sticky;top:60px;z-index:90;background:var(--paper);border-bottom:1px solid var(--rule);box-shadow:0 2px 12px rgba(12,27,58,0.07);}
.toc-sticky-toggle{width:100%;display:flex;align-items:center;gap:10px;padding:13px 20px;background:none;border:none;cursor:pointer;font-family:var(--sans);text-align:left;}
.toc-sticky-label{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:var(--ce-blue);flex-shrink:0;}
.toc-sticky-section{font-size:13px;font-weight:500;color:var(--ink);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;}
.toc-sticky-chevron{color:var(--ink-muted);flex-shrink:0;transition:transform .22s ease;}
.toc-sticky-bar.is-open .toc-sticky-chevron{transform:rotate(180deg);}
.toc-sticky-dropdown{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.toc-sticky-bar.is-open .toc-sticky-dropdown{max-height:70vh;overflow-y:auto;border-top:1px solid var(--rule-soft);}
.toc-sticky-dropdown ol{list-style:none;padding:8px 0 12px;counter-reset:toc-s-counter;margin:0;}
.toc-sticky-dropdown li{counter-increment:toc-s-counter;}
.toc-sticky-dropdown a{display:flex;align-items:center;gap:12px;padding:10px 20px;font-size:14px;color:var(--ink-muted);text-decoration:none;transition:color .15s,background .15s;border-left:2px solid transparent;}
.toc-sticky-dropdown a::before{content:counter(toc-s-counter,decimal-leading-zero);font-family:var(--mono);font-size:10px;color:var(--ink-faint);flex-shrink:0;width:22px;}
.toc-sticky-dropdown a:hover{color:var(--ce-blue);background:var(--paper-soft);}
.toc-sticky-dropdown a.is-active{color:var(--ce-blue);font-weight:600;border-left-color:var(--ce-blue);background:var(--ce-blue-faint);}
@media(max-width:999px){.toc-sticky-bar{display:none;}}
@media(max-width:480px){.toc-sticky-toggle{padding:12px 16px;}.toc-sticky-dropdown a{padding:10px 16px;font-size:13.5px;}}

/* ARTICLE LAYOUT */
.article-layout{max-width:var(--wide);margin:0 auto;padding:0 32px;display:grid;grid-template-columns:220px 1fr;gap:48px;align-items:start;}
@media(min-width:1200px){.article-layout{grid-template-columns:220px 1fr 280px;}.article-main{grid-column:2/3;}}
@media(max-width:999px){.article-layout{grid-template-columns:1fr;max-width:var(--content);padding:0 24px;gap:0;}}

/* TOC SIDEBAR */
.toc-sidebar{position:sticky;top:76px;max-height:calc(100vh - 96px);overflow-y:auto;padding-top:32px;scrollbar-width:thin;scrollbar-color:var(--rule) transparent;}
.toc-sidebar::-webkit-scrollbar{width:3px;}.toc-sidebar::-webkit-scrollbar-thumb{background:var(--rule);border-radius:2px;}
.toc-head{font-family:var(--mono);font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--ce-blue);font-weight:500;margin-bottom:14px;padding-bottom:10px;border-bottom:2px solid var(--ce-blue);}
.toc-list{list-style:none;padding:0;margin:0;}
.toc-list li{border-bottom:1px solid var(--rule-soft);}
.toc-list li:last-child{border-bottom:none;}
.toc-list a{display:block;padding:7px 0 7px 10px;font-size:12px;font-weight:400;color:var(--ink-muted);line-height:1.4;border-left:2px solid transparent;transition:color .15s,border-color .15s,background .15s;text-decoration:none;}
.toc-list a:hover{color:var(--ce-blue);border-left-color:var(--ce-blue-faint);}
.toc-list a.is-active{color:var(--ce-blue);font-weight:600;border-left-color:var(--ce-blue);background:var(--ce-blue-faint);border-radius:0 4px 4px 0;}
.toc-count{font-family:var(--mono);font-size:10px;color:var(--ink-faint);margin-top:16px;padding-top:12px;border-top:1px solid var(--rule-soft);letter-spacing:0.04em;}
.toc-count strong{color:var(--ce-blue);}
@media(max-width:999px){.toc-sidebar{display:none;}}

/* INTRO */
.intro{padding:40px 0 32px;}
.intro p{font-size:19px;line-height:1.7;color:var(--ink-body);margin-bottom:20px;}
.intro p:last-child{margin-bottom:0;}
.intro p:first-child::first-letter{font-weight:800;font-size:68px;line-height:0.85;float:left;margin:10px 14px 0 -2px;color:var(--ce-blue);}
.intro a{color:var(--ce-blue);border-bottom:1px solid var(--rule);transition:border-color .2s;}

/* ORNAMENT */
.rule-ornament{display:flex;align-items:center;justify-content:center;gap:16px;margin:8px 0;}
.rule-ornament::before,.rule-ornament::after{content:'';flex:1;height:1px;background:var(--rule);}
.rule-ornament .mark{color:var(--ce-blue);font-size:12px;letter-spacing:0.5em;padding-left:0.5em;font-weight:600;}

/* SECTIONS */
.section{padding:60px 0 16px;scroll-margin-top:70px;}
.section-label{font-family:var(--mono);font-size:11px;letter-spacing:0.22em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:14px;font-weight:500;}
h2.section-title{font-weight:700;font-size:clamp(26px,3.8vw,40px);line-height:1.1;letter-spacing:-0.025em;color:var(--ink);margin-bottom:16px;}
h2.section-title em{font-style:italic;font-weight:500;color:var(--ce-blue);}
.section-lede{font-style:italic;font-size:17px;line-height:1.6;color:var(--ink-muted);max-width:660px;margin-bottom:24px;}
.section-lede a{color:var(--ce-blue);border-bottom:1px solid var(--rule);transition:border-color .2s;}

/* SUBSECTION */
.subsec{padding:36px 0 8px;scroll-margin-top:70px;}
h3.subsec-title{font-size:clamp(18px,2.4vw,23px);font-weight:700;color:var(--ink);letter-spacing:-0.015em;margin-bottom:14px;}

/* TOPIC LIST */
.topic-list{list-style:none;counter-reset:list-counter;margin:0 0 8px;padding:0;}
.topic-list li{counter-increment:list-counter;display:flex;align-items:flex-start;gap:10px;font-size:15px;color:var(--ink-body);padding:8px 0;border-bottom:1px dashed var(--rule-dashed);line-height:1.55;}
.topic-list li:last-child{border-bottom:none;}
.topic-list li::before{content:counter(list-counter, decimal-leading-zero);flex-shrink:0;min-width:22px;text-align:left;color:var(--ce-blue);font-weight:600;font-size:12px;font-family:var(--mono);padding-top:2px;}

/* SECTION NOTE */
.section-note{font-size:14.5px;font-style:italic;color:var(--ink-muted);margin:14px 0 0;line-height:1.65;}
.section-note a{color:var(--ce-blue);border-bottom:1px solid var(--rule);transition:border-color .2s;}

/* INFO NOTE */
.info-note{background:var(--paper-soft);border:1px solid var(--rule);border-left:3px solid var(--ce-blue);border-radius:0 8px 8px 0;padding:16px 20px;margin:16px 0 8px;font-size:15px;color:var(--ink-muted);line-height:1.65;}
.info-note a{color:var(--ce-blue);border-bottom:1px solid var(--rule);transition:border-color .2s;}

/* INLINE CTA */
.inline-cta{margin:36px 0 0;padding:24px 0 0;border-top:1px solid var(--rule);}
.inline-cta p{font-size:17px;line-height:1.7;color:var(--ink-body);font-style:italic;}
.inline-cta p a{color:var(--ce-blue);font-weight:500;font-style:normal;border-bottom:2px solid var(--ce-blue);padding-bottom:1px;transition:color .15s,border-color .15s;}

/* TRUST BRIDGE */
.bridge{margin:0;padding:40px 0 24px;border-top:1px solid var(--rule);}
.bridge p{font-size:20px;line-height:1.65;color:var(--ink);font-weight:400;}
.bridge p a{color:var(--ce-blue);font-weight:500;border-bottom:2px solid var(--ce-blue);padding-bottom:1px;transition:color .15s,border-color .15s;}

/* CLOSER */
.closer{margin:24px 0 0;padding:32px 0 40px;}
.closer-label{font-family:var(--mono);font-size:11px;letter-spacing:0.22em;text-transform:uppercase;color:var(--ce-blue);margin-bottom:16px;font-weight:500;}
.closer p{font-size:20px;line-height:1.65;color:var(--ink);margin-bottom:16px;}
.closer p:last-child{margin-bottom:0;}
.closer p a{color:var(--ce-blue);font-weight:500;border-bottom:2px solid var(--ce-blue);padding-bottom:1px;}

/* FAQ */
.faq-item{border-bottom:1px solid var(--rule-soft);}
.faq-q{width:100%;background:none;border:none;text-align:left;padding:20px 0;cursor:pointer;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;font-family:var(--sans);}
.faq-q .q-text{font-size:16px;font-weight:600;color:var(--ink);line-height:1.4;}
.faq-icon{font-family:var(--mono);font-size:20px;color:var(--ce-blue);line-height:1;flex-shrink:0;margin-top:1px;transition:transform .2s;font-weight:400;}
.faq-item.open .faq-icon{transform:rotate(45deg);}
.faq-a{font-size:15.5px;color:var(--ink-muted);line-height:1.75;max-height:0;overflow:hidden;transition:max-height .35s ease,padding-bottom .2s;}
.faq-a a{color:var(--ce-blue);border-bottom:1px solid var(--rule);transition:border-color .2s;}
.faq-item.open .faq-a{max-height:400px;padding-bottom:20px;}

/* AUTHOR CARD */
.author-card{position:relative;margin:48px 0 96px;padding:32px 36px;border-radius:18px;background:linear-gradient(135deg,#0c1b3a 0%,#142654 55%,#1a3478 100%);color:#e8eefd;overflow:hidden;isolation:isolate;box-shadow:0 24px 60px -28px rgba(12,27,58,0.55),0 1px 0 rgba(255,255,255,0.04) inset;}
.author-card::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.045) 1px,transparent 1px);background-size:28px 28px;mask-image:radial-gradient(ellipse 80% 70% at 100% 0%,#000 0%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 80% 70% at 100% 0%,#000 0%,transparent 75%);pointer-events:none;z-index:0;}
.author-card::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 12% 110%,rgba(59,114,232,0.35),transparent 55%);pointer-events:none;z-index:0;}
.author-glow{position:absolute;top:-30%;right:-10%;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(59,114,232,0.45) 0%,rgba(59,114,232,0) 70%);filter:blur(20px);pointer-events:none;z-index:0;}
.author-grid{position:relative;z-index:1;display:grid;grid-template-columns:96px 1fr;gap:26px;align-items:start;}
.author-avatar{position:relative;width:96px;height:96px;}
.author-ring{position:absolute;inset:-6px;border-radius:50%;background:conic-gradient(from 220deg,#3b72e8,#7aa3ff,#1e5ae0,#3b72e8);animation:author-spin 8s linear infinite;opacity:0.85;}
.author-ring::after{content:'';position:absolute;inset:4px;border-radius:50%;background:#0c1b3a;}
@keyframes author-spin{to{transform:rotate(360deg);}}
.author-avatar img{position:relative;z-index:2;width:96px;height:96px;border-radius:50%;object-fit:cover;display:block;border:2px solid rgba(255,255,255,0.08);}
.author-initials{display:none;position:relative;z-index:2;width:96px;height:96px;border-radius:50%;background:linear-gradient(135deg,#3b72e8,#1e5ae0);color:#fff;font-size:32px;font-weight:700;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,0.08);}
.author-tag{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:10.5px;font-weight:500;letter-spacing:0.22em;text-transform:uppercase;color:#7aa3ff;margin-bottom:10px;}
.author-pulse{width:7px;height:7px;border-radius:50%;background:#7aa3ff;animation:author-pulse 1.8s ease-out infinite;}
@keyframes author-pulse{0%{box-shadow:0 0 0 0 rgba(122,163,255,0.55);}70%{box-shadow:0 0 0 8px rgba(122,163,255,0);}100%{box-shadow:0 0 0 0 rgba(122,163,255,0);}}
.author-name{font-size:24px;font-weight:700;letter-spacing:-0.01em;color:#fff;margin:0 0 12px;display:flex;flex-wrap:wrap;align-items:baseline;gap:12px;line-height:1.2;}
.author-spec{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;color:#7aa3ff;padding:4px 10px;border:1px solid rgba(122,163,255,0.35);border-radius:999px;background:rgba(59,114,232,0.08);}
.author-bio{font-size:15px;line-height:1.65;color:#c8d3ee;margin:0 0 18px;max-width:640px;}
.author-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;}
.author-chip{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);font-size:12.5px;font-weight:500;color:#c8d3ee;}
.author-link-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;background:linear-gradient(135deg,#3b72e8,#1e5ae0);color:#fff!important;font-size:13px;font-weight:600;text-decoration:none!important;transition:transform .2s,box-shadow .2s;box-shadow:0 6px 18px -6px rgba(59,114,232,0.55);}
.author-link-btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px -6px rgba(59,114,232,0.75);}
@media(max-width:640px){.author-card{padding:28px 22px;margin-bottom:64px;}.author-grid{grid-template-columns:1fr;gap:20px;}}

/* MOBILE CTA */
.mobile-cta-wrap{display:none;max-width:var(--wide);margin:0 auto;padding:0 32px 48px;}
.mobile-cta-card{background:var(--paper);border:1px solid var(--rule);border-radius:12px;padding:20px 20px 18px;box-shadow:0 8px 24px rgba(12,27,58,0.08);}
.mobile-cta-card .pb-kicker{margin-bottom:10px;}
.mobile-cta-card h4{font-size:15px;font-weight:700;color:var(--ink);line-height:1.25;letter-spacing:-0.01em;margin-bottom:8px;}
.mobile-cta-card p{font-size:13px;color:var(--ink-muted);line-height:1.5;margin-bottom:14px;}
@media(max-width:1199px){.mobile-cta-wrap{display:block;}}
@media(max-width:768px){.mobile-cta-wrap{padding:0 20px 36px;}}
@media(max-width:480px){.mobile-cta-wrap{padding:0 16px 28px;}}

/* KEEP READING */
.keep-reading{max-width:var(--wide);margin:0 auto;padding:56px 32px 96px;border-top:1px solid var(--rule);}
.keep-reading-label{font-size:28px;font-weight:700;color:var(--ink);margin-bottom:28px;letter-spacing:-0.01em;}
.keep-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.keep-card{background:#B8DFFF;border-radius:14px;padding:22px;text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s;overflow:hidden;}
.keep-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(30,90,224,0.18);color:inherit;}
.keep-card .keep-meta{font-size:13px;color:var(--ink-body);margin:0 0 12px;}
.keep-card h4{font-weight:700;font-size:18px;line-height:1.35;color:var(--ink);margin:0 0 18px;letter-spacing:-0.01em;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.keep-card .keep-img{margin-top:auto;border-radius:10px;overflow:hidden;background:#fff;}
.keep-card .keep-img img{width:100%;height:160px;object-fit:contain;display:block;}

/* FOOTER */
.site-footer{background:var(--ink);padding:40px 32px;}
.footer-inner{max-width:var(--wide);margin:0 auto;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:24px;}
.footer-brand{font-family:var(--mono);font-size:12px;color:rgba(255,255,255,0.4);letter-spacing:0.06em;line-height:1.6;}
.footer-disclaimer{font-size:13px;color:rgba(255,255,255,0.3);max-width:520px;line-height:1.6;}

/* PATTERN A */
.pa-modal-scrim{position:fixed;inset:0;background:rgba(12,27,58,0.55);backdrop-filter:blur(2px);z-index:200;display:none;align-items:center;justify-content:center;padding:24px;}
.pa-modal-scrim.is-open{display:flex;animation:pa-scrim-in .22s ease-out;}
@keyframes pa-scrim-in{from{opacity:0;}to{opacity:1;}}
.pa-modal{background:var(--paper);border-radius:14px;max-width:460px;width:100%;padding:36px 32px 32px;position:relative;box-shadow:0 24px 64px rgba(12,27,58,0.28);animation:pa-modal-in .28s cubic-bezier(0.16,1,0.3,1);}
@keyframes pa-modal-in{from{opacity:0;transform:translateY(16px) scale(0.98);}to{opacity:1;transform:none;}}
.pa-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border:none;background:transparent;cursor:pointer;border-radius:6px;color:var(--ink-muted);font-size:18px;line-height:1;transition:background .15s,color .15s;}
.pa-close:hover{background:var(--paper-soft);color:var(--ink);}
.pa-kicker{font-family:var(--mono);font-size:11px;letter-spacing:0.22em;text-transform:uppercase;color:var(--ce-blue);font-weight:500;margin-bottom:12px;}
.pa-modal h3{font-size:23px;font-weight:700;line-height:1.2;letter-spacing:-0.018em;color:var(--ink);margin-bottom:12px;}
.pa-modal h3 em{font-style:italic;font-weight:500;color:var(--ce-blue);}
.pa-body{font-size:15px;line-height:1.6;color:var(--ink-muted);margin-bottom:22px;}
.pa-form{display:flex;gap:8px;margin-bottom:12px;}
.pa-form input[type="email"]{flex:1;padding:12px 14px;border:1px solid var(--rule);border-radius:7px;font-family:inherit;font-size:14.5px;color:var(--ink);background:var(--paper);min-width:0;}
.pa-form input[type="email"]:focus{outline:none;border-color:var(--ce-blue);box-shadow:0 0 0 3px var(--ce-blue-faint);}
.pa-form button{background:var(--ce-blue);color:white;border:none;padding:12px 20px;border-radius:7px;font-family:inherit;font-weight:600;font-size:14px;cursor:pointer;white-space:nowrap;}
.pa-form button:hover{background:var(--ce-blue-dark);}
.pa-fineprint{font-size:12px;color:var(--ink-faint);}
.pa-success{display:none;text-align:center;padding:24px 0;color:var(--ce-blue);font-weight:600;font-size:16px;}
.pa-success.is-shown{display:block;}
.pa-form.is-hidden,.pa-fineprint.is-hidden{display:none;}

/* PATTERN B */
.pb-rail{display:none;position:sticky;top:50%;transform:translateY(-50%);align-self:start;width:100%;background:var(--paper);border:1px solid var(--rule);border-radius:12px;padding:20px 20px 18px;box-shadow:0 8px 24px rgba(12,27,58,0.08);opacity:0;transition:opacity .4s;}
.pb-rail.is-visible{opacity:1;}
.pb-kicker{font-family:var(--mono);font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--ce-blue);font-weight:500;margin-bottom:10px;}
.pb-rail h4{font-size:15px;font-weight:700;color:var(--ink);line-height:1.25;letter-spacing:-0.01em;margin-bottom:8px;}
.pb-rail p{font-size:13px;color:var(--ink-muted);line-height:1.5;margin-bottom:14px;}
.pb-link{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:600;color:var(--ce-blue);border-bottom:1px solid var(--ce-blue);padding-bottom:1px;transition:color .15s,border-color .15s;}
.pb-link:hover{color:var(--ce-blue-dark);border-color:var(--ce-blue-dark);}
.pb-link::after{content:'\2192';font-weight:400;}
@media(min-width:1200px){.pb-rail{display:block;}}

/* MOBILE TOC FAB */
.toc-fab{position:fixed;bottom:24px;left:24px;width:52px;height:52px;border-radius:50%;background:var(--ce-blue);color:white;border:none;cursor:pointer;box-shadow:0 6px 20px rgba(30,90,224,0.32);z-index:80;display:flex;align-items:center;justify-content:center;padding:0;transition:transform .2s,background .2s;}
.toc-fab:hover{background:var(--ce-blue-dark);transform:translateY(-2px);}
.toc-fab-icon{display:block;width:18px;height:12px;position:relative;}
.toc-fab-icon::before,.toc-fab-icon::after,.toc-fab-icon span{position:absolute;left:0;right:0;height:2px;background:white;border-radius:1px;}
.toc-fab-icon::before{content:'';top:0;}
.toc-fab-icon span{top:5px;right:4px;display:block;}
.toc-fab-icon::after{content:'';top:10px;right:2px;}
.toc-backdrop{position:fixed;inset:0;z-index:70;background:rgba(12,27,58,0.3);backdrop-filter:blur(1px);opacity:0;pointer-events:none;transition:opacity .2s;}
.toc-backdrop.is-open{opacity:1;pointer-events:auto;}
.toc-panel{position:fixed;bottom:88px;left:24px;width:300px;max-height:70vh;overflow-y:auto;background:var(--paper);border:1px solid var(--rule);border-radius:12px;box-shadow:0 12px 40px rgba(12,27,58,0.14);z-index:80;opacity:0;pointer-events:none;transform:translateY(8px) scale(0.98);transition:opacity .22s,transform .22s;}
.toc-panel.is-open{opacity:1;pointer-events:auto;transform:none;}
.toc-panel-head{padding:18px 20px 14px;border-bottom:1px solid var(--rule-soft);position:sticky;top:0;background:var(--paper);}
.toc-panel-kicker{font-family:var(--mono);font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--ce-blue);font-weight:500;margin-bottom:4px;}
.toc-panel-title{font-size:15px;font-weight:700;color:var(--ink);letter-spacing:-0.01em;}
.toc-panel-list{list-style:none;padding:8px 0;counter-reset:toc-counter;}
.toc-panel-list li{counter-increment:toc-counter;}
.toc-panel-list a{display:flex;align-items:center;gap:12px;padding:9px 20px;font-size:13.5px;color:var(--ink-muted);transition:color .15s,background .15s;}
.toc-panel-list a::before{content:counter(toc-counter,decimal-leading-zero);font-family:var(--mono);font-size:10px;color:var(--ink-faint);flex-shrink:0;width:22px;}
.toc-panel-list a:hover{color:var(--ce-blue);background:var(--paper-soft);}
.toc-panel-list a.is-active{color:var(--ce-blue);font-weight:600;}
.toc-panel-footer{padding:12px 20px 16px;font-family:var(--mono);font-size:11px;color:var(--ink-faint);border-top:1px solid var(--rule-soft);}
.toc-panel-footer strong{color:var(--ce-blue);}
@media(min-width:1000px){.toc-fab,.toc-backdrop,.toc-panel{display:none!important;}}

/* RESPONSIVE 768px */
@media(max-width:768px){
  .masthead{padding:40px 20px 32px;}.crumbs{padding:0 20px;}
  .quick-picks{padding:18px 20px;}.quick-picks-grid{grid-template-columns:1fr 1fr;}
  .keep-reading{padding:40px 20px 56px;}.keep-reading-label{font-size:22px;margin-bottom:18px;}
  .deck{font-size:17px;}.intro p{font-size:17px;}
  .intro p:first-child::first-letter{font-size:56px;margin:8px 12px 0 -2px;}
  .byline{font-size:10.5px;gap:6px 12px;}.byline-icon{width:14px;height:14px;}
  .section{padding:44px 0 12px;}.subsec{padding:24px 0 6px;}
  .bridge p,.closer p{font-size:17px;}
  .keep-grid{grid-template-columns:1fr 1fr;gap:14px;}
}
/* RESPONSIVE 480px */
@media(max-width:480px){
  .masthead{padding:32px 16px 28px;}.crumbs{padding:0 16px;}
  .quick-picks{padding:14px 16px;}.quick-picks-grid{grid-template-columns:1fr;}
  .keep-reading{padding:32px 16px 48px;}.article-layout{padding:0 16px;}
  h1.title{font-size:clamp(28px,8vw,42px);}.deck{font-size:15.5px;}
  .intro p{font-size:16px;}.intro p:first-child::first-letter{font-size:48px;}
  .byline-item:nth-child(4),.byline-item:nth-child(5){display:none;}
  .section{padding:36px 0 8px;}.subsec{padding:20px 0 4px;}.subsec h3{font-size:17px;}
  .topic-list li{font-size:14px;}
  .bridge p,.closer p{font-size:16px;}
  .keep-grid{grid-template-columns:1fr;gap:10px;}.keep-card .keep-img{display:none;}
  .keep-reading-label{font-size:20px;}
  .toc-panel{left:12px;right:12px;width:auto;bottom:80px;}.toc-fab{bottom:16px;left:16px;}
  .pa-form{flex-direction:column;}.pa-modal{padding:28px 16px 20px;}.pa-modal h3{font-size:19px;}
}