/* Daylight — Contact (141) and the Team section: /authors/ (687) plus the
   three author bios (701 Eman Zahra, 705 Sarah Callahan, 1143 Danish William).

   All five are raw-HTML blocks with their own inline <style> and NO root
   id, so their rules are bare classes (0,1,0) and body.dl-x .y at (0,2,1)
   wins without !important.

   141, 687, 701 and 705 declare their palette on :root and are heavily
   variable-driven (48–66 var() uses each). :root is <html>, and body sits
   closer to the content, so redeclaring the same names on the body class
   recolours their own rules as well as ours — the cheapest possible
   conversion. 1143 is the odd one out: zero variables, 37 hard-coded
   hexes, so it needs explicit rules.

   No page content is touched. */

/* ══════════════ shared Daylight palette ══════════════ */
body.dl-contact,body.dl-team{
  --dl-bg:#fcfaf7; --dl-surface:#ffffff; --dl-raised:#fffdfb;
  --dl-sand:#f7f2ea; --dl-sand-2:#f1ebe1;
  --dl-sage:#5e8c77; --dl-sage-deep:#3f6b58; --dl-sage-darker:#2f5343;
  --dl-sage-tint:#e6efe9; --dl-sage-tint-2:#f0f6f2; --dl-sage-line:#d7e6de;
  --dl-peach:#e9a07b; --dl-peach-deep:#b86f4a; --dl-peach-tint:#fbeee5;
  --dl-ink:#2e3335; --dl-body:#4f5759; --dl-muted:#5f6866;
  --dl-line:#ece5db; --dl-line-2:#f4efe7;
  --dl-sh-1:inset 0 1px 0 rgba(255,255,255,.9), 0 1px 2px rgba(92,74,58,.05), 0 4px 12px -5px rgba(92,74,58,.12);
  --dl-sh-2:inset 0 1px 0 rgba(255,255,255,.9), 0 1px 3px rgba(92,74,58,.06), 0 12px 26px -10px rgba(92,74,58,.16);
  --dl-sh-3:inset 0 1px 0 rgba(255,255,255,.9), 0 2px 5px rgba(92,74,58,.07), 0 26px 52px -18px rgba(92,74,58,.22);
  --dl-ease:cubic-bezier(.22,.9,.3,1);
  --dl-font:"Plus Jakarta Sans",-apple-system,"Segoe UI",sans-serif;
  background:var(--dl-bg);
}

/* the theme's constrained layout pins these blocks left */
body.dl-contact main#content .wp-block-columns,
body.dl-team main#content .wp-block-columns{margin:0 auto;max-width:100%}

/* ══════════════ CONTACT (141) ══════════════
   Its own names, remapped: --primary was #001347 navy, --green #1a8a5a,
   --radius 6px. */
body.dl-contact{
  --primary:#3f6b58; --primary-light:#e6efe9;
  --green:#3f6b58;   --green-light:#f0f6f2;
  --text:#2e3335;    --muted:#5f6866;
  --border:#ece5db;  --bg:#fcfaf7; --white:#ffffff;
  --radius:16px;
}
body.dl-contact .ca-page,body.dl-contact .ca-page *{
  font-family:var(--dl-font);box-sizing:border-box}
body.dl-contact .ca-page{color:var(--dl-ink);background:var(--dl-bg);-webkit-font-smoothing:antialiased}
body.dl-contact .ca-page h1,body.dl-contact .ca-page h2{
  color:var(--dl-ink);font-weight:800;letter-spacing:-.022em;line-height:1.16}
body.dl-contact .ca-subtitle{color:var(--dl-body);font-size:1.04rem;line-height:1.7}

body.dl-contact .ca-form-card,body.dl-contact .ca-info-panel,body.dl-contact .ca-trust-card{
  background:var(--dl-raised);border:1px solid var(--dl-line-2);border-radius:28px;
  box-shadow:var(--dl-sh-1)}
body.dl-contact .ca-trust-card{transition:transform .4s var(--dl-ease),box-shadow .4s var(--dl-ease)}
body.dl-contact .ca-trust-card:hover{transform:translateY(-5px);box-shadow:var(--dl-sh-3)}
body.dl-contact .ca-trust-title,body.dl-contact .ca-info-label{color:var(--dl-ink);font-weight:800}
body.dl-contact .ca-trust-desc,body.dl-contact .ca-info-body,body.dl-contact .ca-hint,
body.dl-contact .ca-note,body.dl-contact .ca-field-hint{color:var(--dl-body)}
body.dl-contact .ca-trust-icon,body.dl-contact .ca-info-icon{
  background:var(--dl-sage-tint);color:var(--dl-sage-deep);border-radius:15px;border:0}
body.dl-contact .ca-trust-icon svg,body.dl-contact .ca-info-icon svg{stroke:var(--dl-sage-deep);fill:none}
body.dl-contact .ca-info-divider,body.dl-contact .ca-sep{background:var(--dl-line);border-color:var(--dl-line)}

body.dl-contact .ca-field{
  background:var(--dl-surface);border:1px solid var(--dl-line);border-radius:14px;
  color:var(--dl-ink);font-family:var(--dl-font);font-size:.98rem;
  transition:border-color .3s var(--dl-ease),box-shadow .3s var(--dl-ease)}
body.dl-contact .ca-field:focus{
  outline:0;border-color:var(--dl-sage-line);box-shadow:0 0 0 4px var(--dl-sage-tint-2)}
body.dl-contact .ca-field::placeholder{color:var(--dl-muted);opacity:1}
body.dl-contact .ca-check-label{color:var(--dl-body)}
body.dl-contact .req{color:var(--dl-peach-deep)}
body.dl-contact .ca-error{color:var(--dl-peach-deep)}
body.dl-contact .ca-success{background:var(--dl-sage-tint);color:var(--dl-sage-deep);border-radius:16px}

body.dl-contact .ca-submit-btn{
  background:var(--dl-sage-deep);color:#fff;border:0;border-radius:999px;
  font-family:var(--dl-font);font-weight:700;font-size:.96rem;box-shadow:var(--dl-sh-1);
  transition:transform .3s var(--dl-ease),box-shadow .3s var(--dl-ease),background .3s var(--dl-ease)}
body.dl-contact .ca-submit-btn:hover{
  background:var(--dl-sage-darker);transform:translateY(-2px);box-shadow:var(--dl-sh-2)}
body.dl-contact .ca-tool-link{color:var(--dl-sage-deep);font-weight:700}
body.dl-contact .ca-footer{color:var(--dl-muted);border-top:1px solid var(--dl-line)}

/* ══════════════ TEAM — /authors/ (687) and bios 701 / 705 ══════════════
   Shared names: --g primary accent, --gd/--gxd darker, --gl light tint,
   --gm mid tint, --ink headline, --muted body, --soft page tint,
   --bdr border, --w white, --fh heading font, --fb body font. */
body.dl-team{
  --g:#3f6b58; --gd:#2f5343; --gxd:#2f5343;
  --gl:#e6efe9; --gm:#5e8c77;
  --ink:#2e3335; --muted:#4f5759;
  --soft:#f7f2ea; --bdr:#ece5db; --w:#ffffff;
  --fh:"Plus Jakarta Sans",-apple-system,"Segoe UI",sans-serif;
  --fb:"Plus Jakarta Sans",-apple-system,"Segoe UI",sans-serif;
}
body.dl-team .wrap,body.dl-team .wrap *{box-sizing:border-box}

/* the hero on these pages is a dark slab; make it the Daylight light hero */
body.dl-team .hero{
  background:var(--dl-bg);color:var(--dl-ink);position:relative;overflow:hidden}
body.dl-team .hero::before{
  content:"";position:absolute;left:50%;top:-320px;width:880px;height:600px;
  transform:translateX(-50%);border-radius:50%;pointer-events:none;z-index:0;
  background:radial-gradient(closest-side,var(--dl-sage-tint) 0,transparent 72%);opacity:.9}
body.dl-team .hero > *,body.dl-team .hero-inner{position:relative;z-index:1}
body.dl-team .hero h1,body.dl-team .hero h2{color:var(--dl-ink);text-shadow:none}
body.dl-team .hero p,body.dl-team .hero-note,body.dl-team .hero-bio-short,
body.dl-team .hero-role{color:var(--dl-body);opacity:1}

body.dl-team .pill,body.dl-team .tag,body.dl-team .hero-tag,
body.dl-team .cred-badge,body.dl-team .exp-label{
  background:var(--dl-sage-tint);color:var(--dl-sage-deep);border:0;border-radius:999px}

body.dl-team .card,body.dl-team .exp-card,body.dl-team .side-card,
body.dl-team .article-item,body.dl-team .stat,body.dl-team .met{
  background:var(--dl-raised);border:1px solid var(--dl-line-2);border-radius:24px;
  box-shadow:var(--dl-sh-1);
  transition:transform .4s var(--dl-ease),box-shadow .4s var(--dl-ease),border-color .4s var(--dl-ease)}
body.dl-team .card:hover,body.dl-team .exp-card:hover,body.dl-team .article-item:hover{
  transform:translateY(-5px);box-shadow:var(--dl-sh-3);border-color:var(--dl-sage-line)}
body.dl-team .a-name,body.dl-team .exp-card-title,body.dl-team .side-card-title,
body.dl-team .p-title,body.dl-team .stat-n,body.dl-team .met-n,body.dl-team .mbar-n{
  color:var(--dl-ink);font-weight:800;letter-spacing:-.012em}
body.dl-team .stat-n,body.dl-team .met-n,body.dl-team .mbar-n{color:var(--dl-sage-deep)}
body.dl-team .a-role,body.dl-team .p-desc,body.dl-team .bio,body.dl-team .stat-l,
body.dl-team .met-l,body.dl-team .mbar-l,body.dl-team .fact-label,body.dl-team .article-meta{
  color:var(--dl-body)}
body.dl-team .stat-l,body.dl-team .met-l,body.dl-team .mbar-l{
  color:var(--dl-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:700}

body.dl-team .ava,body.dl-team .hero-img,body.dl-team .hero-initials,body.dl-team .p-icon{
  background:var(--dl-sage-tint);color:var(--dl-sage-deep);border:0}
body.dl-team .ava{border-radius:50%}
body.dl-team .p-icon{border-radius:15px}
body.dl-team .p-icon svg,body.dl-team .hero-img svg{stroke:var(--dl-sage-deep);fill:none}

body.dl-team .promise,body.dl-team .metrics,body.dl-team .metrics-bar,
body.dl-team .contact-strip{background:var(--dl-sand);border:1px solid var(--dl-line);border-radius:36px}
body.dl-team .sec-head h2{color:var(--dl-ink)}
body.dl-team .cred-row,body.dl-team .creds-row,body.dl-team .fact-row,
body.dl-team .cert-item{border-color:var(--dl-line-2)}
body.dl-team .cert-dot{background:var(--dl-sage)}
body.dl-team .quote{background:var(--dl-sage-tint-2);border-left:3px solid var(--dl-sage);border-radius:18px}
body.dl-team .quote-text{color:var(--dl-ink)}
body.dl-team .quote-attr{color:var(--dl-muted)}

body.dl-team .btn,body.dl-team .card-cta,body.dl-team .all-articles-btn{
  background:var(--dl-sage-deep);color:#fff;border:0;border-radius:999px;font-weight:700;
  box-shadow:var(--dl-sh-1);
  transition:transform .3s var(--dl-ease),box-shadow .3s var(--dl-ease),background .3s var(--dl-ease)}
body.dl-team .btn:hover,body.dl-team .card-cta:hover,body.dl-team .all-articles-btn:hover{
  background:var(--dl-sage-darker);transform:translateY(-2px);box-shadow:var(--dl-sh-2);color:#fff}
body.dl-team .back-link,body.dl-team .article-item a{color:var(--dl-sage-deep);font-weight:700}

/* ══════════════ 1143 — Danish William ══════════════
   No variables at all: 37 hard-coded hexes on a teal-700 / Tailwind-grey
   palette, so every colour is restated here. */
body.page-id-1143 .ca-author-page,body.page-id-1143 .ca-author-page *{
  font-family:"Plus Jakarta Sans",-apple-system,"Segoe UI",sans-serif;box-sizing:border-box}
body.page-id-1143{background:#fcfaf7}
body.page-id-1143 .ca-author-page{color:#4f5759;background:#fcfaf7}
body.page-id-1143 .ca-author-page h1,
body.page-id-1143 .ca-author-page h2,
body.page-id-1143 .ca-author-page h3{color:#2e3335;font-weight:800;letter-spacing:-.018em}
body.page-id-1143 .ca-role-sub,body.page-id-1143 .ca-bio-intro,
body.page-id-1143 .ca-bullets li,body.page-id-1143 .label{color:#4f5759}
body.page-id-1143 .ca-avatar{background:#e6efe9;color:#3f6b58;border:0}
body.page-id-1143 .ca-badge,body.page-id-1143 .ca-cred-tag{
  background:#e6efe9;color:#3f6b58;border:0;border-radius:999px}
body.page-id-1143 .ca-expertise-card,body.page-id-1143 .ca-stat,
body.page-id-1143 .ca-articles,body.page-id-1143 .ca-facts-table{
  background:#fffdfb;border:1px solid #f4efe7;border-radius:24px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9), 0 1px 2px rgba(92,74,58,.05), 0 4px 12px -5px rgba(92,74,58,.12)}
body.page-id-1143 .ca-stat .num{color:#3f6b58;font-weight:800}
body.page-id-1143 .ca-stat .label{color:#5f6866;letter-spacing:.06em;text-transform:uppercase;
  font-size:.72rem;font-weight:700}
body.page-id-1143 .ca-quote{background:#f0f6f2;border-left:3px solid #5e8c77;border-radius:18px;color:#2e3335}
body.page-id-1143 .ca-article-link,body.page-id-1143 .ca-back-link{color:#3f6b58;font-weight:700}
body.page-id-1143 .ca-cta{
  background:#3f6b58;color:#fff;border:0;border-radius:999px;font-weight:700;
  transition:background .3s cubic-bezier(.22,.9,.3,1),transform .3s cubic-bezier(.22,.9,.3,1)}
body.page-id-1143 .ca-cta:hover{background:#2f5343;transform:translateY(-2px);color:#fff}
body.page-id-1143 .ca-facts-table td,body.page-id-1143 .ca-facts-table th{border-color:#f4efe7;color:#4f5759}
body.page-id-1143 .ca-facts-table th{color:#2e3335}
body.page-id-1143 .date{color:#5f6866}

/* ══════════════ responsive ══════════════ */
@media (max-width:680px){
  body.dl-contact .ca-form-card,body.dl-contact .ca-info-panel,body.dl-contact .ca-trust-card{
    border-radius:22px}
  body.dl-team .card,body.dl-team .exp-card,body.dl-team .side-card{border-radius:20px}
  body.dl-team .promise,body.dl-team .metrics,body.dl-team .metrics-bar,
  body.dl-team .contact-strip{border-radius:28px}
  body.page-id-1143 .ca-expertise-card,body.page-id-1143 .ca-stat,
  body.page-id-1143 .ca-articles{border-radius:20px}
}
@media (prefers-reduced-motion:reduce){
  body.dl-contact *,body.dl-team *,body.page-id-1143 *{transition:none!important}
}

/* ── contact: the info panel header is a solid accent block ────────────
   It was white text on navy. Remapping --primary turned the block sage,
   but the generic "headings are ink" rule above then put dark text on a
   dark block (measured 2.11:1). Text inside this block stays white. */
body.dl-contact .ca-info-header{background:var(--dl-sage-deep);border:0}
body.dl-contact .ca-info-header,
body.dl-contact .ca-info-header h1,
body.dl-contact .ca-info-header h2,
body.dl-contact .ca-info-header h3,
body.dl-contact .ca-info-header p,
body.dl-contact .ca-info-header span{color:#fff}
body.dl-contact .ca-info-header svg{stroke:#fff;fill:none}

/* ── team: bands that were dark slabs with white text ─────────────────
   .promise, .metrics, .metrics-bar and .contact-strip were navy with
   white/translucent-white copy. Lightening them to sand left that text
   effectively invisible (measured 1.11:1 on the promise paragraph), so
   everything inside them is restated. The accent numerals are re-asserted
   last, because a later rule of equal specificity wins. */
body.dl-team .promise,body.dl-team .promise *,
body.dl-team .metrics,body.dl-team .metrics *,
body.dl-team .metrics-bar,body.dl-team .metrics-bar *,
body.dl-team .contact-strip,body.dl-team .contact-strip *{color:var(--dl-body)}
body.dl-team .promise h1,body.dl-team .promise h2,body.dl-team .promise h3,
body.dl-team .metrics h1,body.dl-team .metrics h2,body.dl-team .metrics h3,
body.dl-team .metrics-bar h2,body.dl-team .contact-strip h2,
body.dl-team .promise .p-title{color:var(--dl-ink)}
body.dl-team .promise a,body.dl-team .contact-strip a{color:var(--dl-sage-deep);font-weight:700}
body.dl-team .promise .p-icon svg{stroke:var(--dl-sage-deep)}
/* re-assert the accent numerals after the blanket band colour above */
body.dl-team .stat-n,body.dl-team .met-n,body.dl-team .mbar-n,
body.dl-team .metrics .met-n,body.dl-team .metrics-bar .mbar-n{color:var(--dl-sage-deep)}
body.dl-team .metrics .met-l,body.dl-team .metrics-bar .mbar-l{color:var(--dl-muted)}
/* any leftover translucent-white text inside a lightened band */
body.dl-team .promise p,body.dl-team .metrics p,
body.dl-team .metrics-bar p,body.dl-team .contact-strip p{color:var(--dl-body);opacity:1}
/* the same trap on the buttons that sat on those dark bands */
body.dl-team .promise .btn,body.dl-team .contact-strip .btn{color:#fff}

/* ── mobile: recover the compounded gutters ───────────────────────────
   Measured at 375px: the page template's own main padding compounds with
   the block's inner padding, leaving the contact card 303px wide with
   36px each side. Same trap as /free-tools/. */
@media (max-width:680px){
  body.dl-contact main#content,body.dl-team main#content{
    padding-left:0!important;padding-right:0!important}
  body.dl-contact .ca-page{padding-left:14px;padding-right:14px}
  body.dl-team .wrap{padding-left:14px;padding-right:14px}
}

/* ── words breaking mid-character in the stat / metric boxes ──────────
   Two causes, both on /authors/:

   1. The theme's style.css sets `.entry-content{overflow-wrap:anywhere}`.
      That does not just hyphenate — it collapses each box's *min-content*
      width to a single character, so the flex items in `.metrics` are free
      to shrink far below their longest word. Restoring normal breaking
      gives the flex algorithm a real floor again.
   2. `.stats` lays four `.stat` cells in one row (`flex:1`), which is 86px
      a cell at 375px — narrower than "PUBLISHED" or "FACT-CHECKED" no
      matter how the word wraps. That one needs a different grid, not a
      different break rule.

   `overflow-wrap:normal` is safe here: every string in these boxes is a
   short word or a figure, so nothing is left with no break opportunity. */
body.dl-team .stats,body.dl-team .stat,body.dl-team .stat-n,body.dl-team .stat-l,
body.dl-team .metrics,body.dl-team .met,body.dl-team .met-n,body.dl-team .met-l,
body.dl-team .metrics-bar,body.dl-team .mbar,body.dl-team .mbar-n,body.dl-team .mbar-l{
  overflow-wrap:normal;word-break:normal;
  -webkit-hyphens:none;hyphens:none}

@media (max-width:640px){
  /* four cells become 2x2 — ~151px of text width instead of 54px */
  body.dl-team .stats{display:grid;grid-template-columns:1fr 1fr}
  body.dl-team .stat{max-width:none;flex:none;padding:18px 12px;
    border-bottom:1px solid rgba(255,255,255,.2)}
  body.dl-team .stat:nth-child(odd){border-right:1px solid rgba(255,255,255,.2)}
  body.dl-team .stat:nth-last-child(-n+2){border-bottom:none}

  /* the author-card metrics wrap rather than compress */
  body.dl-team .metrics,body.dl-team .metrics-bar{
    display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
  body.dl-team .met,body.dl-team .mbar{flex:none;min-width:0}
}

/* ── the stat band: give the cards room to be cards ───────────────────
   The Daylight treatment makes each `.stat` a cream card with a 24px
   radius, but the band still lays them out edge to edge (`flex:1`, and a
   2-col grid on mobile). Four rounded cards with no gap leave concave
   sage wedges at every join — the dark diamonds along the band. Adding a
   gap and band padding is what the rest of the site already does with
   stat chips. The old hairline dividers belong to the flush layout and
   go with it. */
body.dl-team .stats{
  padding:22px 16px;gap:14px;align-items:stretch;flex-wrap:wrap}
body.dl-team .stat{border:0;box-shadow:0 1px 2px rgba(47,83,67,.10)}
body.dl-team .stat:last-child{border:0}

@media (max-width:640px){
  body.dl-team .stats{padding:18px 14px;gap:12px}
  body.dl-team .stat,
  body.dl-team .stat:nth-child(odd),
  body.dl-team .stat:nth-last-child(-n+2){border:0}
}
