:root{
  --navy:#0B2545;
  --teal:#0F766E;
  --mist:#F0F7F6;
  --divider:#E3ECEB;
}
html{scroll-behavior:smooth}
body{font-family:'Nunito Sans',sans-serif;background:#FFFFFF;color:var(--navy);margin:0}
h1,h2,h3,h4,h5,h6,.brand{font-family:'Public Sans',sans-serif;font-weight:700;color:var(--navy)}
a{color:var(--teal)}

/* Brand logo in the top bar */
.brand-logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.brand-logo svg{display:block;flex:0 0 auto}

/* Masthead */
.masthead{background:var(--mist);border:0}
.masthead-title{font-family:'Public Sans',sans-serif;font-weight:700;color:var(--navy)}
.masthead-tagline{font-family:'Nunito Sans',sans-serif;color:var(--navy)}
#headerDate{font-family:'Nunito Sans',sans-serif;font-weight:700;color:var(--teal);font-size:13px;letter-spacing:.06em}
.pulse-line{display:block;width:100%;height:16px}

.navlink{font-family:'Nunito Sans',sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:var(--navy);text-decoration:none}
.navlink:hover{color:var(--teal)}

/* Section headings with a teal dot */
.sec-title{font-family:'Public Sans',sans-serif;font-weight:700;color:var(--navy);margin:0}
.sec-title::before{content:"";display:inline-block;width:8px;height:8px;border-radius:9999px;
  background:var(--teal);margin-right:8px;vertical-align:middle}

.headline{font-family:'Public Sans',sans-serif;font-weight:700;font-size:36px;line-height:1.15;color:var(--navy);margin:0}
.meta{font-size:14px;color:#4B5A66}

/* Cards */
.card-soft{background:#fff;border-radius:16px;box-shadow:0 2px 12px rgba(11,37,69,0.08);padding:24px}
.pill-label{display:inline-block;background:var(--teal);color:#fff;border-radius:9999px;
  font-family:'Nunito Sans',sans-serif;font-weight:700;font-size:12px;letter-spacing:.08em;padding:4px 12px}

/* Pills (categories / topics) */
.pill-link{display:inline-block;background:var(--mist);color:var(--navy);border-radius:9999px;
  padding:4px 12px;font-family:'Nunito Sans',sans-serif;font-size:14px;font-weight:700;text-decoration:none}
.pill-link:hover,.pill-link.is-active{background:var(--teal);color:#fff}

.btn{background:var(--teal);color:#fff;font-family:'Nunito Sans',sans-serif;font-weight:700;border-radius:9999px;
  padding:12px 26px;display:inline-block;text-decoration:none;border:0;cursor:pointer;font-size:16px}
.btn:hover{background:#0d655e}

.label-sm{font-family:'Nunito Sans',sans-serif;font-size:14px;font-weight:700;color:var(--navy);display:block;margin-bottom:6px}
.field{width:100%;border:1px solid #D4E2E0;background:#fff;padding:10px 12px;border-radius:10px;font-family:'Nunito Sans',sans-serif;font-size:16px;color:var(--navy)}
.field:focus{outline:2px solid var(--teal);outline-offset:1px}
.field-dark{width:100%;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.1);padding:10px 12px;border-radius:10px;font-family:'Nunito Sans',sans-serif;font-size:16px;color:#fff}
.field-dark:focus{outline:2px solid #fff;outline-offset:1px}

.footer-link:hover{text-decoration:underline !important}

/* Footer legal row + signup notices: links inherit surrounding type */
.footer-legal a{color:inherit;text-decoration:none}
.footer-legal a:hover{text-decoration:underline}
.signup-note a{color:inherit;text-decoration:none}
.signup-note a:hover{text-decoration:underline}

/* ---- Spacing above Health news ---- */
#today{border-bottom:none !important;padding-bottom:16px !important}
#recent{padding-top:16px !important}

/* ---- Health news row (grid + optional donate column) ---- */
.tn-row{display:flex;gap:32px;align-items:flex-start}
.tn-row > #recent-stories{flex:1 1 auto;min-width:0}
.tn-row > #donate-slot[hidden]{display:none}
@media (max-width:1023px){
  .tn-row{display:block}
  .tn-row > #donate-slot{margin-top:32px}
}

/* ---- Story card grid ---- */
.tn-grid{display:grid;gap:24px;grid-template-columns:1fr}
.tn-grid > *{min-width:0;max-width:100%}
@media (min-width:768px){
  .tn-grid{grid-template-columns:repeat(2,1fr)}
}

.tn-card{display:block;background:#fff;border-radius:16px;box-shadow:0 2px 12px rgba(11,37,69,0.08);
  padding:24px;text-decoration:none;min-width:0;max-width:100%}
.tn-card__title{font-family:'Public Sans',sans-serif;font-weight:600;color:var(--navy);margin:0;
  font-size:20px;line-height:1.3}
.tn-card__summary{font-family:'Nunito Sans',sans-serif;color:#3A4A55;font-size:16px;line-height:1.6;margin:8px 0 0}
.tn-card__date{display:block;margin-top:10px;color:var(--teal);font-size:13px;font-weight:700;font-family:'Nunito Sans',sans-serif}
.tn-card:hover .tn-card__title{color:var(--teal)}
.tn-card:focus-visible{outline:2px solid var(--teal);outline-offset:2px}

@media (max-width:640px){
  .headline{font-size:26px}
  .btn{display:block;text-align:center;width:100%}
}
