/* Additions are scoped to the new article batch. Existing site styles remain authoritative. */
.cycle-article .article-body{font-size:21px;line-height:1.75}
.cycle-article .article-body h2{margin-top:0;scroll-margin-top:30px}
.cycle-article .article-body>section{margin:0 0 54px}
.cycle-article .article-body>section+section{padding-top:36px;border-top:1px solid #dce0e4}
.cycle-article .article-body h3{font-size:25px;line-height:1.3;margin:34px 0 18px}
.cycle-article .article-body a.source-link,.cycle-article .article-body a.citation{color:#0757a7;background:#edf5fd;text-decoration:underline;text-underline-offset:3px;padding:0 .12em}
.cycle-article .article-body blockquote{margin:30px 0;padding:24px 28px;border-left:4px solid #680f10;background:#f3f4f6;color:#081426}
.cycle-article .article-body blockquote p:last-child{margin-bottom:0}
.cycle-article .key-facts{background:#f3f4f6;padding:28px 30px;margin:34px 0!important;border:0!important}
.cycle-article .key-facts h2{font-family:Arial,Helvetica,sans-serif;font-size:30px;letter-spacing:-.025em}
.cycle-article .key-facts li{padding:7px 0}
.cycle-article .article-body .cycle-cta{position:relative;padding:32px;background:#081426;color:#fff;border:1px solid #a88652;margin:44px 0}
.cycle-article .cycle-cta h3,.cycle-article .cycle-cta p{color:#fff}
.cycle-article .cycle-cta h3{margin:0 0 16px}
.cycle-article .cycle-cta a{display:inline-flex;justify-content:center;align-items:center;background:#680f10;border:1px solid #b79564;padding:15px 23px;color:#fff;text-decoration:none;font-size:20px;font-weight:700;line-height:1.3;min-height:54px}
.cycle-article .cycle-cta a:hover{background:#852125}
.cycle-article .cycle-book-link{display:inline-flex;align-items:center;justify-content:center;background:#680f10;color:white!important;border:1px solid #a88652;font:700 20px/1.35 Arial,sans-serif;padding:16px 24px;text-decoration:none}
.cycle-article .cycle-cta p:last-child{font-size:18px;margin:16px 0 0}
.cycle-article .article-photo{margin:44px 0}
.cycle-article .article-photo img{display:block;width:100%;height:auto}
.cycle-article .article-photo picture{display:block}
.cycle-article .article-body .table-scroll{overflow:auto;margin:26px 0;border:1px solid #ccd2d9}
.cycle-article .article-body table{border-collapse:collapse;width:100%;font-size:19px;line-height:1.55}
.cycle-article .article-body th,.cycle-article .article-body td{text-align:left;padding:16px;min-width:110px;vertical-align:top;border-bottom:1px solid #ccd2d9}
.cycle-article .article-body th{background:#081426;color:#fff}
.cycle-article .article-body tr:nth-child(even) td{background:#f5f6f8}
.cycle-article .cycle-tool{padding:28px;background:#f3f4f6;border:1px solid #ccd2d9;margin:34px 0}
.cycle-article .cycle-tool h3{margin-top:0}
.cycle-article .tool-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.cycle-article .tool-field label{display:block;font-size:19px;line-height:1.45;font-weight:700;margin:0 0 8px}
.cycle-article .tool-field input{width:100%;font:inherit;padding:12px;border:1px solid #81909c;background:white;color:#081426}
.cycle-article .tool-field select{width:100%;font:inherit;padding:12px;border:1px solid #81909c;background:white;color:#081426;margin-bottom:22px}
.cycle-article .cycle-tool output{display:block;font-size:20px;font-weight:700;line-height:1.6}
.cycle-article .field-error{font-size:17px;color:#8a1116;display:block;line-height:1.4;margin-top:6px}
.cycle-article .field-error:empty{display:none}
.cycle-article [aria-invalid=true]{border:2px solid #8a1116}
.cycle-article .tool-actions{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}
.cycle-article .tool-actions button{font:700 18px Arial,sans-serif;cursor:pointer;padding:14px 20px;color:white;background:#081426;border:1px solid #081426}
.cycle-article .tool-actions button[type=reset]{color:#081426;background:transparent}
.cycle-article [data-results] dl{display:grid;grid-template-columns:1fr auto;gap:12px 22px;font-size:19px;line-height:1.5}
.cycle-article [data-results] dt,.cycle-article [data-results] dd{margin:0;border-top:1px solid #ccd2d9;padding-top:12px}
.cycle-article [data-results] dd{font-weight:700;color:#680f10}
.cycle-article .cycle-tool .tool-note{font-size:18px;line-height:1.6}
.cycle-article .cycle-chart{margin:36px 0;padding:26px;background:#f5f6f8;border-top:3px solid #680f10}
.cycle-article .cycle-chart h3{margin-top:0}
.cycle-article .chart-row{display:grid;grid-template-columns:minmax(130px,1fr) minmax(100px,1.2fr) 65px;gap:14px;align-items:center;margin:19px 0;font:18px/1.4 Arial,sans-serif}
.cycle-article .chart-track{background:#e1e5ea;height:22px;border-left:1px solid #081426}
.cycle-article .chart-track span{display:block;height:100%;background:#680f10}
.cycle-article .chart-row:nth-child(odd) .chart-track span{background:#081426}
.cycle-article .chart-note{font-size:17px;line-height:1.5;color:#465262;margin-top:22px}
.cycle-article .author-bio{display:block;columns:auto;padding:32px;background:#081426;color:#fff}
.cycle-article .author-bio p,.cycle-article .author-bio h2,.cycle-article .author-bio h3,.cycle-article .author-bio a{color:#fff}
.cycle-article .author-bio p{max-width:none}
.cycle-article .review-checklist{display:grid;gap:18px;margin:22px 0}
.cycle-article .review-checklist label{display:flex;align-items:flex-start;gap:12px;font-size:19px;line-height:1.55;cursor:pointer}
.cycle-article .review-checklist input{flex:0 0 22px;width:22px;height:22px;margin:4px 0 0;accent-color:#680f10}
.cycle-article .author-bio .author-portrait{display:block;width:152px;height:152px;border-radius:50%;object-fit:cover;object-position:center;margin:0 0 25px}
.cycle-article .draft-status{padding:12px 5vw;background:#fff4de;color:#422e12;text-align:center;font:18px/1.5 Arial,sans-serif}
.cycle-article .article-hero h1{text-wrap:balance}
.cycle-article .article-byline{font-size:18px}
.cycle-article .article-toc{font-size:17px}
.cycle-article :is(a,button,input,select,summary,[tabindex]):focus-visible{outline:3px solid #b78a44;outline-offset:4px}
.cycle-article .article-body,.cycle-article .article-section{min-width:0}
@media(max-width:700px){
 .cycle-article .article-nav{flex-direction:column;align-items:center;gap:18px;padding:22px 18px}
 .cycle-article .article-brand{width:100%;justify-content:center;font-size:17px;white-space:nowrap}
 .cycle-article .article-brand img{display:block;width:34px;height:auto}
 .cycle-article .article-nav-links{width:100%;align-items:center;justify-content:center;gap:16px}
 .cycle-article .article-nav-links .article-book{justify-content:center;text-align:center;width:100%;padding:14px;font-size:17px}
 .cycle-article .author-bio .author-portrait{margin-left:auto;margin-right:auto}
 .cycle-article .author-bio h2,.cycle-article .author-bio h3{text-align:center}
 .cycle-article .article-body{font-size:20px;padding:26px 22px}
 .cycle-article .article-body>section{margin-bottom:38px}
 .cycle-article .article-body>section+section{padding-top:28px}
 .cycle-article .article-body h2{font-size:32px;line-height:1.22;text-align:center}
 .cycle-article .article-body h3{font-size:25px}
 .cycle-article .article-hero h1{font-size:38px;text-align:center}
 .cycle-article .article-deck{text-align:left;font-size:23px}
 .cycle-article .tool-fields{grid-template-columns:1fr}
 .cycle-article .key-facts,.cycle-article .cycle-tool,.cycle-article .author-bio,.cycle-article .article-body .cycle-cta{padding:24px 21px}
 .cycle-article .cycle-cta a{width:100%;font-size:19px}
 .cycle-article .cycle-cta h3{text-align:center}
 .cycle-article .article-body blockquote{padding:20px}
 .cycle-article [data-results] dl{grid-template-columns:minmax(0,1fr) auto;gap:12px;font-size:18px}
 .cycle-article .article-photo{margin:32px 0}
 .cycle-article .article-toc{font-size:18px}
 .cycle-article .cycle-chart{padding:20px}
 .cycle-article .chart-row{grid-template-columns:1fr 60px;gap:8px}
 .cycle-article .chart-row>span{grid-column:1/-1}
}
@media(prefers-reduced-motion:reduce){.cycle-article *{scroll-behavior:auto!important}}

/* Bio rhythm: separate role, credentials, background and profile links. */
.cycle-article .article-body .author-bio p{margin:0;line-height:1.65}
.cycle-article .article-body .author-bio p+p{margin-top:1.15em}
.cycle-article .article-body .author-bio p:has(>strong:only-child)+p{margin-top:.2em}
.cycle-article .article-body .author-bio p:last-child{margin-bottom:0}
