/* ============================================================================
   turning65wi.com - resource/article styles
   Shared structure, this site's identity. Edit HERE, not in generated pages:
   every article and the hub link this one file.
   ========================================================================== */
:root{
  --r-ui:system-ui,-apple-system,'Segoe UI',sans-serif;
  --r-bg:#faf7f0; --r-panel:#fff; --r-panel-2:#f4ecdd; --r-line:#e2d9c6;
  --r-ink:#241d15; --r-muted:#5d564b; --r-head:#1a3c5e;
  --r-accent:#c8302c; --r-gold:#c8a951; --r-dark:#1a3c5e; --r-foot-ink:#d8cfc0;
}
*,*::before,*::after{box-sizing:border-box}
body.res{margin:0;background:var(--r-bg);color:var(--r-ink);line-height:1.7;
  font-family:Georgia,'Iowan Old Style','Times New Roman',serif;-webkit-font-smoothing:antialiased}
body.res img{max-width:100%;display:block}
body.res a{color:var(--r-accent)}
.res-wrap{max-width:780px;margin:0 auto;padding:0 20px}

/* header */
.res-top{background:var(--r-dark);padding:12px 0}
.res-top .res-wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.res-logo img{height:44px;width:auto}
body.res .res-callbtn{background:var(--r-accent);color:#fff;text-decoration:none;font-weight:700;
  padding:9px 16px;border-radius:999px;font-size:.9rem;font-family:var(--r-ui)}

/* breadcrumbs */
.res-crumbs{background:var(--r-panel-2);border-bottom:1px solid var(--r-line);
  font-size:.85rem;padding:9px 0;font-family:var(--r-ui)}
body.res .res-crumbs a{color:var(--r-muted);text-decoration:none}
.res-crumbs a:hover{text-decoration:underline}
.res-crumbs span{color:var(--r-muted);margin:0 2px}
.res-crumb-current{color:var(--r-ink);font-weight:600}

/* article */
.res-main{background:var(--r-panel);margin:0 auto;padding:34px 20px 60px;max-width:780px}
.res-eyebrow{font-family:var(--r-ui);font-size:.78rem;letter-spacing:.09em;
  text-transform:uppercase;color:var(--r-accent);font-weight:700;margin:0 0 8px}
.res-main h1{font-size:2.1rem;line-height:1.22;color:var(--r-head);margin:0 0 12px}
.res-byline{font-family:var(--r-ui);font-size:.88rem;color:var(--r-muted);margin:0 0 22px}
.res-dot{margin:0 7px;opacity:.5}
.res-excerpt{font-size:1.12rem;color:var(--r-ink);border-left:3px solid var(--r-gold);
  padding-left:16px;margin:0 0 30px}
.res-main h2{font-size:1.42rem;color:var(--r-head);margin:38px 0 12px;line-height:1.3}
.res-main h3{font-size:1.12rem;color:var(--r-head);margin:26px 0 8px}
.res-main p{margin:0 0 16px}
.res-main ul,.res-main ol{margin:0 0 18px;padding-left:24px}
.res-main li{margin-bottom:8px}
.res-main table{width:100%;border-collapse:collapse;margin:0 0 20px;font-size:.94rem}
.res-main th,.res-main td{border:1px solid var(--r-line);padding:9px 11px;text-align:left}
.res-main th{background:var(--r-panel-2);font-family:var(--r-ui)}
.res-tablewrap{overflow-x:auto;margin:0 0 20px}

/* CTA - one component, tracked from inception */
.res-cta{background:var(--r-panel-2);border:1px solid var(--r-line);
  border-left:4px solid var(--r-accent);border-radius:12px;padding:22px 24px;margin:34px 0}
.res-cta h2{margin:0 0 8px;font-size:1.2rem;color:var(--r-head)}
.res-cta p{margin:0 0 16px;color:var(--r-muted);font-size:.97rem}
body.res .res-cta-btn{display:inline-block;background:var(--r-accent);color:#fff;font-weight:700;
  text-decoration:none;padding:13px 26px;border-radius:8px;font-family:var(--r-ui)}
.res-cta-btn:hover{filter:brightness(1.08)}
.res-cta-btn--phone{font-size:1.15rem;letter-spacing:.01em}

/* FAQ */
.res-faq details{border:1px solid var(--r-line);border-radius:10px;padding:12px 16px;margin-bottom:10px;
  background:var(--r-panel-2)}
.res-faq summary{cursor:pointer;font-weight:700;color:var(--r-head);font-family:var(--r-ui)}
.res-faq details[open] summary{margin-bottom:9px}

/* related */
.res-related{margin:44px 0 0;border-top:1px solid var(--r-line);padding-top:24px}
.res-related ul{list-style:none;padding:0;margin:0}
.res-related li{margin-bottom:14px}
.res-related a{text-decoration:none;display:block}
body.res .res-related a b{display:block;color:var(--r-head);font-size:1.02rem}
.res-related a:hover b{text-decoration:underline}
.res-related span{display:block;color:var(--r-muted);font-size:.92rem;margin-top:3px}

/* author + sources + disclaimer */
.res-author{display:flex;gap:16px;align-items:flex-start;background:var(--r-panel-2);
  border:1px solid var(--r-line);border-radius:12px;padding:20px;margin:38px 0 0}
.res-author img{width:78px;height:78px;border-radius:50%;object-fit:cover;flex:none}
.res-author p{margin:8px 0 0;font-size:.93rem;color:var(--r-muted)}
.res-author-title{font-size:.88rem;color:var(--r-muted);font-family:var(--r-ui)}
.res-sources{margin:32px 0 0;font-size:.9rem}
.res-sources h2{font-size:1.02rem;margin-bottom:8px}
.res-sources ul{padding-left:20px}
.res-sources span{color:var(--r-muted);font-size:.84rem}
/* Required disclosure - lives in the FOOTER (dark), matching where the landing
   pages put it. Muted but legible; never hide it or shrink it below readability. */
.res-foot .res-disclaimer{margin:18px 0 0;font-size:.78rem;line-height:1.55;
  color:var(--r-foot-ink);opacity:.9;max-width:74ch;
  border-top:1px solid rgba(255,255,255,.14);padding-top:14px}
.res-foot .res-disclaimer a{color:var(--r-gold)}

/* hub */
.res-hub-intro{font-size:1.1rem;color:var(--r-muted);margin:0 0 30px}
.res-cat{margin-bottom:34px}
.res-cat h2{font-size:1.18rem;color:var(--r-head);border-bottom:2px solid var(--r-gold);
  padding-bottom:6px;margin:0 0 14px}
.res-cards{list-style:none;padding:0;margin:0}
.res-cards li{margin-bottom:15px}
.res-cards a{display:block;text-decoration:none;border:1px solid var(--r-line);
  border-radius:10px;padding:15px 17px;background:var(--r-panel)}
.res-cards a:hover{border-color:var(--r-accent)}
body.res .res-cards b{display:block;color:var(--r-head);font-size:1.03rem;margin-bottom:4px}
.res-cards span{display:block;color:var(--r-muted);font-size:.93rem}
.res-cards time{display:block;color:var(--r-muted);font-size:.8rem;margin-top:7px;font-family:var(--r-ui)}
.res-empty{color:var(--r-muted);font-style:italic}

/* footer */
.res-foot{background:var(--r-dark);color:var(--r-foot-ink);padding:28px 0 34px;
  font-size:.9rem;font-family:var(--r-ui);margin-top:50px}
body.res .res-foot a{color:var(--r-gold)}

@media(max-width:640px){
  .res-main{padding:24px 18px 44px}
  .res-main h1{font-size:1.62rem}
  .res-author{flex-direction:column}
  .res-cta{padding:18px}
}
