:root{--cc-navy:#07131f;--cc-panel:#0d1e2d;--cc-panel-2:#10283a;--cc-ink:#e8edf0;--cc-muted:#91a2ad;--cc-blue:#65a7cc;--cc-green:#84b79b;--cc-gold:#c7a86a;--cc-line:rgba(190,211,220,.17);--cc-serif:"Source Serif 4",Georgia,serif;--cc-mono:"IBM Plex Mono",monospace}
.cc-article{background:var(--cc-navy);color:var(--cc-ink);font-family:var(--cc-serif);line-height:1.72}.cc-article a{color:inherit}.cc-reading-progress{position:fixed;z-index:20;top:0;left:0;width:100%;height:3px;background:transparent}.cc-reading-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--cc-blue),var(--cc-green),var(--cc-gold))}.cc-article .site-header{background:rgba(7,19,31,.9);border-bottom:1px solid var(--cc-line);backdrop-filter:blur(14px)}.cc-article .header-inner{max-width:1280px;margin:0 auto;padding:20px 34px;display:flex;align-items:center;justify-content:space-between}.cc-article .brand{font-family:var(--cc-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}.brand-mark{display:inline-grid;place-items:center;width:29px;height:29px;margin-right:11px;border:1px solid var(--cc-gold);color:var(--cc-gold);font-size:10px}.cc-article .nav{display:flex;gap:34px}.cc-article .nav a,.menu-button{font:500 11px var(--cc-mono);letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--cc-muted)}.menu-button{display:none;background:none;border:0;color:var(--cc-ink)}.cc-hero{max-width:1280px;margin:0 auto;padding:88px 34px 72px;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(360px,.97fr);gap:72px;align-items:center}.cc-hero-copy{position:relative;z-index:1}.cc-kicker,.cc-eyebrow,.cc-label,.cc-meta{font:500 11px/1.4 var(--cc-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--cc-blue)}.cc-kicker span{color:var(--cc-gold);padding:0 7px}.cc-hero h1{max-width:740px;margin:23px 0 24px;font-size:clamp(48px,5.5vw,84px);line-height:.99;letter-spacing:-.045em;font-weight:500}.cc-dek{max-width:650px;margin:0;color:#b5c0c6;font-size:21px;line-height:1.48}.cc-meta{display:flex;flex-wrap:wrap;gap:22px;margin-top:36px;color:var(--cc-muted);font-size:10px}.cc-hero-visual{margin:0;position:relative;min-height:500px;background:#081520;overflow:hidden;border:1px solid var(--cc-line)}.cc-hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,19,31,.48),transparent 60%),linear-gradient(0deg,rgba(7,19,31,.3),transparent 45%)}.cc-hero-visual img{width:100%;height:100%;min-height:500px;object-fit:cover}.cc-hero-visual figcaption{position:absolute;z-index:1;left:18px;bottom:16px;font:10px var(--cc-mono);color:#aab9c0;letter-spacing:.04em}.cc-brief-strip{border-top:1px solid var(--cc-line);border-bottom:1px solid var(--cc-line);background:#0b1b29;display:grid;grid-template-columns:220px minmax(0,900px);gap:38px;padding:28px max(34px,calc((100vw - 1280px)/2 + 34px));align-items:start}.cc-brief-label{font:500 11px var(--cc-mono);letter-spacing:.15em;color:var(--cc-gold)}.cc-brief-strip p{margin:0;color:#c5d0d5;font-size:18px;line-height:1.55}.cc-reading-grid{max-width:1280px;margin:0 auto;padding:86px 34px 100px;display:grid;grid-template-columns:190px minmax(0,760px);gap:102px}.cc-toc{position:sticky;top:100px;align-self:start;display:flex;flex-direction:column;gap:13px;border-left:1px solid var(--cc-line);padding-left:18px}.cc-toc .cc-label{color:var(--cc-muted);margin-bottom:8px}.cc-toc a{font:11px/1.45 var(--cc-mono);color:var(--cc-muted);text-decoration:none;transition:color .18s ease}.cc-toc a:hover,.cc-toc a.is-active{color:var(--cc-gold)}.cc-section{scroll-margin-top:94px;padding-bottom:74px;margin-bottom:74px;border-bottom:1px solid var(--cc-line)}.cc-section:last-of-type{margin-bottom:0}.cc-eyebrow{color:var(--cc-green);margin:0 0 18px}.cc-section h2{font-size:clamp(34px,4vw,55px);font-weight:500;line-height:1.04;letter-spacing:-.035em;margin:0 0 26px}.cc-section p{font-size:19px;color:#c3cdd1;margin:0 0 22px}.cc-section strong{color:#f2f5f5;font-weight:600}.cc-callout{display:grid;grid-template-columns:130px minmax(0,1fr);gap:25px;background:var(--cc-panel);border-left:2px solid var(--cc-gold);padding:25px 28px;margin-top:38px}.cc-callout p{font-size:18px;margin:0;color:#d7dfe2}.cc-callout-mark{font:11px var(--cc-mono);letter-spacing:.12em;color:var(--cc-gold)}.cc-data-row{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--cc-line);border-bottom:1px solid var(--cc-line);margin:38px 0 14px}.cc-data-row>div{padding:23px 18px 22px 0;border-right:1px solid var(--cc-line)}.cc-data-row>div+div{padding-left:18px}.cc-data-row>div:last-child{border-right:0}.cc-data-number{display:block;color:var(--cc-gold);font:500 34px var(--cc-mono)}.cc-data-label{display:block;margin-top:7px;color:var(--cc-muted);font:11px/1.5 var(--cc-mono);text-transform:uppercase}.cc-source-line,.cc-lens-foot{font:11px/1.6 var(--cc-mono)!important;color:var(--cc-muted)!important}.cc-section blockquote{margin:36px 0;padding:27px 30px;background:var(--cc-panel);border-left:2px solid var(--cc-blue);font-size:28px;line-height:1.25;color:#edf1f2}.cc-section blockquote cite{display:block;margin-top:18px;font:11px/1.5 var(--cc-mono);letter-spacing:.03em;color:var(--cc-muted);font-style:normal}.cc-lens-panel{margin-top:38px;padding:30px 32px;background:linear-gradient(145deg,#102c3c,#0d1c2a);border:1px solid rgba(132,183,155,.33)}.cc-lens-heading{display:flex;justify-content:space-between;align-items:center}.cc-lens-dot{width:8px;height:8px;background:var(--cc-green);box-shadow:0 0 0 5px rgba(132,183,155,.12)}.cc-lens-panel h3{font-size:32px;font-weight:500;margin:24px 0 18px}.cc-lens-panel ol{margin:0;padding-left:23px;color:#c3d0d2;font-size:17px}.cc-lens-panel li{padding:8px 0 8px 5px}.cc-lens-panel li strong{color:var(--cc-green)}.cc-lens-foot{margin:23px 0 0!important}.cc-scenario-table{margin-top:35px;border-top:1px solid var(--cc-line);font:12px/1.45 var(--cc-mono)}.cc-table-row{display:grid;grid-template-columns:1fr 1.5fr 1.25fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--cc-line);color:#bdc9ce}.cc-table-head{color:var(--cc-gold);text-transform:uppercase;letter-spacing:.09em;font-size:10px}.cc-reference-list{padding-left:24px;color:#b7c5ca;font-size:16px}.cc-reference-list li{padding:6px 0}.cc-reference-list a{color:var(--cc-blue)}.cc-article-footer{border-top:1px solid var(--cc-line);padding-top:30px;display:flex;justify-content:space-between;gap:30px;align-items:end}.cc-share-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px}.cc-share-links a,.cc-share-links button{font:10px var(--cc-mono);letter-spacing:.08em;color:var(--cc-muted);background:none;border:0;padding:0;text-decoration:none;cursor:pointer}.cc-share-links a:hover,.cc-share-links button:hover{color:var(--cc-gold)}.cc-article-footer>p{font:13px/1.45 var(--cc-mono);color:var(--cc-gold);text-align:right}.cc-article-footer>p span{color:var(--cc-muted);font-size:10px}
@media(max-width:820px){.cc-article .header-inner{padding:16px 20px}.cc-article .nav{display:none}.menu-button{display:block}.cc-hero{display:block;padding:62px 20px 48px}.cc-hero h1{font-size:clamp(44px,13vw,68px)}.cc-dek{font-size:18px}.cc-hero-visual{margin-top:42px;min-height:320px}.cc-hero-visual img{min-height:320px}.cc-brief-strip{display:block;padding:24px 20px}.cc-brief-strip p{margin-top:14px;font-size:17px}.cc-reading-grid{display:block;padding:56px 20px 70px}.cc-toc{position:static;display:grid;grid-template-columns:repeat(2,1fr);gap:11px 15px;margin-bottom:58px;padding:0;border-left:0;border-top:1px solid var(--cc-line);padding-top:18px}.cc-toc .cc-label{grid-column:1/-1}.cc-section{padding-bottom:52px;margin-bottom:52px}.cc-section h2{font-size:39px}.cc-section p{font-size:17px}.cc-callout{display:block;padding:21px}.cc-callout p{margin-top:15px;font-size:17px}.cc-data-row{grid-template-columns:1fr}.cc-data-row>div,.cc-data-row>div+div{padding:17px 0;border-right:0;border-bottom:1px solid var(--cc-line)}.cc-data-row>div:last-child{border-bottom:0}.cc-section blockquote{font-size:24px;padding:22px}.cc-lens-panel{padding:24px 21px}.cc-table-row{grid-template-columns:1fr;gap:6px}.cc-table-head{display:none}.cc-table-row span:first-child{color:var(--cc-gold);font-size:12px}.cc-article-footer{display:block}.cc-article-footer>p{text-align:left;margin-top:30px}}
@media(prefers-reduced-motion:reduce){.cc-toc a{transition:none}}

/* Covered Call-compatible integration layer. Keep this extension after styles.css. */
.cc-page{background:radial-gradient(circle at 84% 1%,rgba(42,114,142,.13),transparent 23rem),var(--cc-navy)}
.cc-article{overflow:hidden}
.cc-progress{position:fixed;z-index:50;top:0;left:0;right:0;height:3px;background:rgba(101,167,204,.12)}
.cc-progress span{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left;background:var(--cc-blue);box-shadow:0 0 16px rgba(101,167,204,.75)}
.cc-hero{position:relative;min-height:575px;border-bottom:1px solid var(--cc-line);isolation:isolate;display:block;padding:0;max-width:none;margin:0}
.cc-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--cc-navy) 0%,rgba(7,19,31,.96) 42%,rgba(7,19,31,.62) 70%,rgba(7,19,31,.8) 100%)}
.cc-hero-art{position:absolute;z-index:-2;inset:0 0 0 35%;background:linear-gradient(90deg,var(--cc-navy),transparent 42%,rgba(7,19,31,.18)),url("assets/articles/macroeconomy-hero.png") center/cover no-repeat;opacity:.88}
.cc-hero-grid{max-width:1280px;min-height:575px;margin:0 auto;padding:92px 34px 70px;display:grid;grid-template-columns:minmax(0,1.1fr) 260px;align-items:end;gap:80px}
.cc-hero-copy{position:static}.cc-hero .eyebrow{margin:0 0 13px;color:var(--cc-blue);font:500 11px/1.4 var(--cc-mono);letter-spacing:.14em;text-transform:uppercase}.cc-hero .eyebrow span{color:var(--cc-gold);margin:0 7px}.cc-hero h1{max-width:840px;margin:0 0 19px;font-size:clamp(48px,5.7vw,75px)}
.cc-summary{border-bottom:1px solid var(--cc-line);background:rgba(16,38,55,.72)}.cc-summary .container{max-width:1280px;margin:0 auto;min-height:118px;padding:24px 34px;display:grid;grid-template-columns:170px minmax(0,1fr);align-items:center;gap:34px}.cc-summary strong{color:var(--cc-blue);font:600 10px var(--cc-mono);letter-spacing:.1em;text-transform:uppercase}.cc-summary p{margin:0;color:#c9d9df;font:600 17px/1.55 var(--cc-serif)}
.cc-reading-layout{max-width:1280px;margin:0 auto;padding:82px 34px 100px;display:grid;grid-template-columns:210px minmax(0,735px);justify-content:space-between;gap:74px}.cc-toc>div{position:sticky;top:112px}.cc-toc>div>p{margin:0 0 18px;color:var(--cc-muted);font:600 10px var(--cc-mono);letter-spacing:.12em;text-transform:uppercase}.cc-toc>div>a{position:relative;display:grid;grid-template-columns:28px 1fr;gap:6px;padding:9px 0 9px 14px;border-left:1px solid var(--cc-line);color:var(--cc-muted);font:11px/1.45 var(--cc-mono);text-decoration:none}.cc-toc>div>a span{color:#537183;font:600 9px var(--cc-mono)}.cc-toc>div>a:hover,.cc-toc>div>a.active{color:var(--cc-ink);background:rgba(101,167,204,.045);border-left-color:var(--cc-blue)}.cc-toc>div>a.active span{color:var(--cc-blue)}
.cc-copy{min-width:0}.cc-copy p{font:500 17px/1.82 var(--cc-serif)}.cc-copy h2{font:600 clamp(34px,4vw,48px)/1.04 var(--cc-serif);letter-spacing:-.04em}.cc-copy .cc-eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:15px;color:var(--cc-blue);font:600 10px var(--cc-mono);letter-spacing:.12em;text-transform:uppercase}.cc-copy .cc-section{scroll-margin-top:106px}.cc-share-links a,.cc-share-links button{min-height:29px;padding:6px 9px;border:1px solid var(--cc-line);background:rgba(7,19,31,.3);font:10px var(--cc-mono);letter-spacing:.08em}.cc-share-links a:hover,.cc-share-links button:hover{color:var(--cc-ink);border-color:rgba(101,167,204,.58);background:rgba(101,167,204,.08)}
@media(max-width:900px){.cc-hero-grid{grid-template-columns:minmax(0,1fr) 220px;gap:40px}.cc-reading-layout{grid-template-columns:175px minmax(0,670px);gap:44px}.cc-summary .container{grid-template-columns:150px minmax(0,1fr);gap:25px}}
@media(max-width:760px){.cc-hero{min-height:auto}.cc-hero:before{background:linear-gradient(180deg,rgba(7,19,31,.85),var(--cc-navy) 80%)}.cc-hero-art{left:0;opacity:.33}.cc-hero-grid{min-height:0;display:block;padding:67px 20px 44px}.cc-hero h1{font-size:clamp(44px,12vw,67px)}.cc-hero-visual{margin-top:33px;min-height:320px}.cc-hero-visual img{min-height:320px}.cc-summary .container{grid-template-columns:1fr;gap:14px;padding:25px 20px}.cc-reading-layout{display:block;padding:51px 20px 75px}.cc-toc{margin-bottom:43px}.cc-toc>div{position:static}.cc-toc>div>a{display:inline-grid;width:calc(50% - 2px);min-height:46px;padding:8px 9px;border:1px solid var(--cc-line);background:rgba(16,38,55,.54);vertical-align:top}.cc-copy p{font-size:16px;line-height:1.75}.cc-copy h2{font-size:39px}}
@media(max-width:620px){.cc-hero-grid,.cc-summary .container,.cc-reading-layout{width:min(100% - 28px,1280px);padding-left:0;padding-right:0}.cc-hero-grid{padding-top:67px;padding-bottom:44px}.cc-summary .container{padding-top:25px;padding-bottom:25px}.cc-reading-layout{padding-top:51px;padding-bottom:75px}.cc-toc>div>a{width:100%}}

/* Typography normalization: aligned with Covered Call article scale. */
.cc-macro-page{--cc-type-hero:clamp(48px,5.7vw,75px);--cc-type-dek:18px;--cc-type-body:17px;--cc-type-section:clamp(34px,4vw,48px);--cc-type-summary:17px;--cc-type-meta:10px;--cc-type-toc:12px}
.cc-macro-page .cc-hero h1{font-size:var(--cc-type-hero);line-height:.99;font-weight:500;letter-spacing:-.045em}
.cc-macro-page .cc-dek{font-size:var(--cc-type-dek);line-height:1.72}
.cc-macro-page .cc-meta{font-size:var(--cc-type-meta);line-height:1.4}
.cc-macro-page .cc-summary p{font-size:var(--cc-type-summary);line-height:1.55}
.cc-macro-page .cc-toc>div>a{font-size:var(--cc-type-toc);line-height:1.45}
.cc-macro-page .cc-copy p{font-size:var(--cc-type-body);line-height:1.82}
.cc-macro-page .cc-copy h2{font-size:var(--cc-type-section);line-height:1.04;font-weight:600;letter-spacing:-.04em}
.cc-macro-page .cc-copy .cc-eyebrow{font-size:10px;line-height:1.4}
.cc-macro-page .cc-copy blockquote{font-size:clamp(25px,2.4vw,34px);line-height:1.18}
@media(max-width:760px){.cc-macro-page .cc-dek{font-size:18px}.cc-macro-page .cc-copy p{font-size:16px;line-height:1.75}.cc-macro-page .cc-copy h2{font-size:39px}.cc-macro-page .cc-copy blockquote{font-size:24px}.cc-macro-page .cc-summary p{font-size:17px}}

/* Mobile header refinement: scoped to macroeconomy so shared pages remain unchanged. */
@media(max-width:760px){
  .cc-macro-page .site-header{position:sticky;top:0;z-index:40}
  .cc-macro-page .site-header .header-inner{position:relative;min-height:76px;padding:13px 0}
  .cc-macro-page .brand{min-width:0;gap:10px}
  .cc-macro-page .brand-mark{width:34px;height:34px;flex:0 0 34px;margin-right:0}
  .cc-macro-page .brand-name{font-size:15px;line-height:1.2;letter-spacing:.01em}
  .cc-macro-page .brand-parent{max-width:225px;margin-top:4px;font-size:8px;line-height:1.25;letter-spacing:.13em}
  .cc-macro-page .menu-button{display:inline-flex;align-items:center;justify-content:center;min-width:78px;min-height:42px;padding:0 13px;border:1px solid rgba(93,169,214,.42);background:rgba(13,32,48,.72);color:var(--white);font:600 10px/1 "IBM Plex Mono",monospace;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
  .cc-macro-page .menu-button:hover,.cc-macro-page .menu-button:focus-visible{border-color:var(--blue);background:rgba(93,169,214,.1);outline:none}
  .cc-macro-page .nav{position:absolute;top:calc(100% + 1px);left:0;right:0;display:none;flex-direction:column;gap:0;padding:7px;background:rgba(7,21,34,.98);border:1px solid var(--line);box-shadow:0 18px 35px rgba(0,0,0,.3)}
  .cc-macro-page .nav.is-open{display:flex}
  .cc-macro-page .nav a{display:flex;align-items:center;min-height:46px;padding:0 13px;border-bottom:1px solid rgba(145,181,205,.12);color:var(--text);font:500 11px/1 "IBM Plex Mono",monospace;letter-spacing:.1em;text-transform:uppercase}
  .cc-macro-page .nav a:last-child{border-bottom:0}
  .cc-macro-page .nav a:hover,.cc-macro-page .nav a:focus-visible{background:rgba(93,169,214,.08);color:var(--white);outline:none}
}
@media(max-width:380px){.cc-macro-page .brand-parent{display:none}.cc-macro-page .header-inner{gap:12px}.cc-macro-page .menu-button{min-width:72px}}
