/*
  RFPS Design Library
  ============================================================
  Companion stylesheet to rfps-broadsheet.css. Every layout in the
  Carl console "Designs" tab (/blog-designs/) renders against this file.

  RULES OF THE ROAD
  - Every system is scoped under one wrapper class. Nothing here leaks
    into the rest of the site, and nothing here is tied to a post ID.
  - Colors are CSS variables declared on the wrapper. To reskin a layout,
    add a modifier class that redefines the variables. Never fork a system.
  - Add a new system by appending a new scoped block, then add a matching
    template in /root/clawd/blog_designs/ and a manifest entry.

  HOW TO USE IN A POST
  One Custom HTML block. Wrap everything in the wrapper div:
      <div class="rfps-fieldguide"> ... </div>
  The console's Create-draft button does this for you.

  SYSTEMS IN THIS FILE
    .rfps-broadsheet.bs-forest / .bs-autumn / .bs-winter  colorways of the
        We the Parrots broadsheet (base lives in rfps-broadsheet.css)
    .rfps-chronicle    RFPS Chronicles - archival chaptered magazine
    .rfps-fieldguide   Birds of the World - naturalist species profile
    .rfps-rescue       So You Found a Baby X - urgent triage guide
    .rfps-holiday      holiday features (.hol-evergreen .hol-hallows .hol-harvest)
    .rfps-almanac      Over the Years - day-in-history timeline
    .rfps-dawn         Good Morning - daily sanctuary note
    .rfps-adoptable    Meet the bird - adoption profile
  ------------------------------------------------------------ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,600;0,700;1,400&family=Spectral:ital,wght@0,400;0,600;1,400&family=Inter:wght@400;500;600;700&family=Cinzel:wght@400;600&display=swap');

/* ============================================================
   BROADSHEET COLORWAYS
   The base system is rfps-broadsheet.css. These only swap variables,
   so every frame, drop cap and ornament carries over untouched.
   ============================================================ */

.rfps-broadsheet.bs-forest{
  --paper:#F6F5EC; --paper-deep:#E9EBDF; --ink:#242A24;
  --navy:#1F3A2E; --red:#6E4B2A; --gold:#8E7A3C; --gold-soft:#C3B478;
  --rule:#C9CDBB; --shadow:rgba(31,58,46,.18);
}
.rfps-broadsheet.bs-autumn{
  --paper:#FBF4E9; --paper-deep:#F3E6D3; --ink:#31261D;
  --navy:#5B3A21; --red:#A8471F; --gold:#C08A2E; --gold-soft:#E0BE84;
  --rule:#DEC9AC; --shadow:rgba(91,58,33,.18);
}
.rfps-broadsheet.bs-winter{
  --paper:#F4F7FA; --paper-deep:#E5EDF4; --ink:#22282E;
  --navy:#243B53; --red:#4E6E8E; --gold:#8FA6B8; --gold-soft:#C2D2DE;
  --rule:#CBD8E2; --shadow:rgba(36,59,83,.20);
}
/* Winter reads cold, so warm the ornament star back up a touch. */
.rfps-broadsheet.bs-winter .ornament::after{content:"\2744";}
.rfps-broadsheet.bs-forest .ornament::after{content:"\1F342";}
.rfps-broadsheet.bs-autumn .ornament::after{content:"\1F342";}

/* ============================================================
   SHARED FOUNDATION
   Each wrapper owns its own box model and kills theme margin bleed.
   ============================================================ */

.rfps-chronicle,.rfps-fieldguide,.rfps-rescue,
.rfps-holiday,.rfps-almanac,.rfps-dawn,.rfps-adoptable{
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.rfps-chronicle *,.rfps-fieldguide *,.rfps-rescue *,
.rfps-holiday *,.rfps-almanac *,.rfps-dawn *,.rfps-adoptable *{
  box-sizing:border-box;
}
.rfps-chronicle img,.rfps-fieldguide img,.rfps-rescue img,
.rfps-holiday img,.rfps-almanac img,.rfps-dawn img,.rfps-adoptable img{
  display:block;max-width:100%;height:auto;
}

/* ============================================================
   1. RFPS CHRONICLE  -  archival chaptered magazine
   The reusable descendant of post 33390, freed from .post-33390.
   ============================================================ */

.rfps-chronicle{
  --paper:#FCFAF5; --ink:#2C2A26; --muted:#6B6559;
  --accent:#7C2D2D; --accent-soft:#C8A98C; --rule:#E2DACB;
  --display:"Cormorant Garamond", Georgia, serif;
  --body:"Spectral", Georgia, serif;
  --util:"Inter", system-ui, sans-serif;
  background:var(--paper); color:var(--ink);
  font-family:var(--body); font-size:19px; line-height:1.75;
  padding:0 0 56px;
}
.rfps-chronicle a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;}

.rfps-chronicle .ch-masthead{
  text-align:center;max-width:900px;margin:0 auto;padding:56px 24px 30px;
  border-bottom:1px solid var(--rule);
}
.rfps-chronicle .ch-kicker{
  font-family:var(--util);text-transform:uppercase;letter-spacing:.3em;
  font-size:12px;font-weight:600;color:var(--accent);margin:0 0 18px;
}
.rfps-chronicle .ch-masthead h1{
  font-family:var(--display);font-weight:600;font-size:clamp(38px,6.5vw,66px);
  line-height:1.06;margin:0;color:var(--ink);letter-spacing:.4px;
}
.rfps-chronicle .ch-sub{
  font-family:var(--display);font-style:italic;font-size:23px;color:var(--muted);
  max-width:640px;margin:18px auto 0;
}
.rfps-chronicle .ch-byline{
  font-family:var(--util);font-size:12px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--muted);margin:26px 0 0;
}

.rfps-chronicle .ch-body{max-width:760px;margin:0 auto;padding:0 24px;}

/* chapters get a hanging numeral, the signature of this layout */
.rfps-chronicle .chapter{margin:72px 0 0;}
.rfps-chronicle .chapter > .ch-num{
  font-family:var(--display);font-size:34px;color:var(--accent-soft);
  line-height:1;margin:0 0 6px;letter-spacing:.1em;
}
.rfps-chronicle .chapter > h2{
  font-family:var(--display);font-weight:600;font-size:clamp(30px,4.4vw,44px);
  line-height:1.1;margin:0 0 10px;color:var(--ink);letter-spacing:.5px;
}
.rfps-chronicle .chapter > .ch-dek{
  font-family:var(--util);font-size:14px;letter-spacing:.02em;
  color:var(--muted);margin:0 0 30px;
}
.rfps-chronicle h3{
  font-family:var(--display);font-weight:700;font-size:30px;
  margin:44px 0 12px;color:var(--ink);letter-spacing:.5px;
}
.rfps-chronicle p{margin:0 0 20px;}

/* plates run wider than the text column */
.rfps-chronicle .plate{
  margin:32px -60px 12px;
}
.rfps-chronicle .plate img{width:100%;border:1px solid var(--rule);}
.rfps-chronicle .plate figcaption,
.rfps-chronicle .ch-caption{
  font-family:var(--util);font-size:13px;line-height:1.6;color:var(--muted);
  padding:12px 4px 0;margin:0 0 38px;
}
.rfps-chronicle .pull{
  font-family:var(--display);font-style:italic;font-size:30px;line-height:1.35;
  color:var(--accent);border-left:3px solid var(--accent-soft);
  margin:38px 0;padding:4px 0 4px 26px;
}
.rfps-chronicle .ch-end{
  text-align:center;border-top:1px solid var(--rule);
  margin-top:64px;padding-top:32px;font-style:italic;color:var(--muted);
}

@media (max-width:860px){
  .rfps-chronicle .plate{margin-left:0;margin-right:0;}
}
@media (max-width:720px){
  .rfps-chronicle{font-size:17px;}
}

/* ============================================================
   2. RFPS FIELD GUIDE  -  Birds of the World species profile
   ============================================================ */

.rfps-fieldguide{
  --paper:#F7F6EF; --card:#FFFFFF; --ink:#22271F; --muted:#5F6657;
  --sage:#4A6145; --bark:#7A6242; --rule:#DCDBCB;
  --display:"Cormorant Garamond", Georgia, serif;
  --body:"Spectral", Georgia, serif;
  --util:"Inter", system-ui, sans-serif;
  background:var(--paper); color:var(--ink);
  font-family:var(--body); font-size:19px; line-height:1.75;
  padding:0 0 56px;
}
.rfps-fieldguide a{color:var(--sage);text-decoration:underline;text-underline-offset:2px;}

.rfps-fieldguide .fg-head{max-width:900px;margin:0 auto;padding:48px 24px 26px;text-align:center;}
.rfps-fieldguide .fg-region{
  display:inline-block;font-family:var(--util);font-size:11px;font-weight:600;
  letter-spacing:.26em;text-transform:uppercase;color:#fff;background:var(--sage);
  padding:7px 16px;border-radius:2px;margin:0 0 22px;
}
.rfps-fieldguide .fg-head h1{
  font-family:var(--display);font-weight:600;font-size:clamp(36px,6vw,60px);
  line-height:1.06;margin:0;color:var(--ink);
}
.rfps-fieldguide .fg-latin{
  font-family:var(--body);font-style:italic;font-size:21px;color:var(--muted);margin:12px 0 0;
}
.rfps-fieldguide .fg-rule{
  width:88px;height:2px;background:var(--bark);border:0;margin:26px auto 0;
}

.rfps-fieldguide .fg-body{max-width:820px;margin:0 auto;padding:0 24px;}

/* the specimen plate: a mounted illustration, not a blog photo */
.rfps-fieldguide .specimen{
  margin:34px 0 8px;padding:14px;background:var(--card);
  border:1px solid var(--rule);box-shadow:0 12px 28px -22px rgba(34,39,31,.5);
}
.rfps-fieldguide .specimen img{width:100%;}
.rfps-fieldguide .specimen figcaption{
  font-family:var(--util);font-size:13px;color:var(--muted);
  text-align:center;padding:12px 6px 2px;line-height:1.6;
}

/* field notes: the fact panel that makes this a guide and not an essay */
.rfps-fieldguide .fieldnotes{
  background:var(--card);border:1px solid var(--rule);border-top:3px solid var(--sage);
  padding:26px 28px;margin:38px 0;
}
.rfps-fieldguide .fieldnotes h2{
  font-family:var(--util);font-size:11px;font-weight:700;letter-spacing:.26em;
  text-transform:uppercase;color:var(--sage);margin:0 0 20px;
}
.rfps-fieldguide .fn-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:20px 30px;
}
.rfps-fieldguide .fn-grid dt{
  font-family:var(--util);font-size:11px;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--muted);margin:0 0 5px;
}
.rfps-fieldguide .fn-grid dd{
  margin:0 0 2px;font-size:17px;line-height:1.5;color:var(--ink);
}
.rfps-fieldguide h2{
  font-family:var(--display);font-weight:600;font-size:clamp(27px,4vw,38px);
  color:var(--ink);margin:48px 0 14px;
}
.rfps-fieldguide p{margin:0 0 18px;}

.rfps-fieldguide .fg-listen{
  background:#EDF0E7;border-left:4px solid var(--sage);padding:20px 24px;margin:34px 0;
}
.rfps-fieldguide .fg-listen h3{
  font-family:var(--util);font-size:11px;font-weight:700;letter-spacing:.22em;
  text-transform:uppercase;color:var(--sage);margin:0 0 10px;
}
.rfps-fieldguide .fg-listen p{margin:0;font-size:17px;}
.rfps-fieldguide .fg-end{
  border-top:1px solid var(--rule);margin-top:52px;padding-top:28px;
  font-style:italic;color:var(--muted);text-align:center;
}

@media (max-width:720px){.rfps-fieldguide{font-size:17px;}}

/* ============================================================
   3. RFPS RESCUE  -  So You Found a Baby X
   Someone is reading this one-handed, outside, with a box in the
   other hand. High contrast, big numerals, nothing decorative.
   ============================================================ */

.rfps-rescue{
  --paper:#FFFFFF; --panel:#F5F7F9; --ink:#15191E; --muted:#5A6472;
  --alert:#B3261E; --alert-bg:#FCEFEE; --go:#1F6F4A; --go-bg:#EAF4EE;
  --rule:#DDE3EA;
  --util:"Inter", system-ui, -apple-system, sans-serif;
  background:var(--paper); color:var(--ink);
  font-family:var(--util); font-size:18px; line-height:1.65;
  padding:0 0 56px;
}
.rfps-rescue a{color:var(--alert);text-decoration:underline;text-underline-offset:2px;}

.rfps-rescue .rs-head{max-width:820px;margin:0 auto;padding:44px 24px 8px;}
.rfps-rescue .rs-eyebrow{
  font-size:11px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;
  color:var(--alert);margin:0 0 14px;
}
.rfps-rescue .rs-head h1{
  font-size:clamp(32px,5.4vw,50px);font-weight:700;line-height:1.1;
  letter-spacing:-.5px;margin:0;color:var(--ink);
}
.rfps-rescue .rs-sub{font-size:20px;color:var(--muted);margin:16px 0 0;line-height:1.5;}

.rfps-rescue .rs-body{max-width:820px;margin:0 auto;padding:0 24px;}

/* the box that has to be read before anything else */
.rfps-rescue .rs-first{
  background:var(--alert-bg);border:1px solid #F0C9C6;border-left:6px solid var(--alert);
  border-radius:6px;padding:24px 26px;margin:32px 0;
}
.rfps-rescue .rs-first h2{
  font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
  color:var(--alert);margin:0 0 12px;
}
.rfps-rescue .rs-first p{margin:0 0 10px;font-size:19px;}
.rfps-rescue .rs-first p:last-child{margin:0;}

.rfps-rescue h2{font-size:clamp(24px,3.6vw,32px);font-weight:700;letter-spacing:-.3px;margin:48px 0 16px;}
.rfps-rescue p{margin:0 0 16px;}

/* numbered steps */
.rfps-rescue .rs-steps{list-style:none;counter-reset:rsstep;margin:26px 0;padding:0;}
.rfps-rescue .rs-steps > li{
  counter-increment:rsstep;position:relative;
  padding:0 0 22px 62px;margin:0 0 22px;border-bottom:1px solid var(--rule);
}
.rfps-rescue .rs-steps > li:last-child{border-bottom:0;}
.rfps-rescue .rs-steps > li::before{
  content:counter(rsstep);position:absolute;left:0;top:-4px;
  width:42px;height:42px;border-radius:50%;background:var(--ink);color:#fff;
  font-size:19px;font-weight:700;display:flex;align-items:center;justify-content:center;
}
.rfps-rescue .rs-steps > li strong{display:block;font-size:20px;margin:0 0 6px;}

/* do / don't, side by side */
.rfps-rescue .rs-split{
  display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:38px 0;
}
.rfps-rescue .rs-do,.rfps-rescue .rs-dont{border-radius:6px;padding:22px 24px;border:1px solid var(--rule);}
.rfps-rescue .rs-do{background:var(--go-bg);border-color:#C4DED0;}
.rfps-rescue .rs-dont{background:var(--alert-bg);border-color:#F0C9C6;}
.rfps-rescue .rs-do h3,.rfps-rescue .rs-dont h3{
  font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin:0 0 14px;
}
.rfps-rescue .rs-do h3{color:var(--go);}
.rfps-rescue .rs-dont h3{color:var(--alert);}
.rfps-rescue .rs-do ul,.rfps-rescue .rs-dont ul{margin:0;padding:0 0 0 20px;}
.rfps-rescue .rs-do li,.rfps-rescue .rs-dont li{margin:0 0 9px;font-size:17px;line-height:1.55;}

.rfps-rescue .rs-photo{margin:34px 0;}
.rfps-rescue .rs-photo img{width:100%;border-radius:6px;}
.rfps-rescue .rs-photo figcaption{font-size:14px;color:var(--muted);padding:10px 2px 0;line-height:1.6;}

/* call bar */
.rfps-rescue .rs-call{
  background:var(--ink);color:#fff;border-radius:8px;padding:30px 32px;margin:46px 0 0;text-align:center;
}
.rfps-rescue .rs-call h2{font-size:24px;margin:0 0 10px;color:#fff;}
.rfps-rescue .rs-call p{color:#C6CDD6;margin:0 0 18px;font-size:17px;}
.rfps-rescue .rs-call .rs-number{
  display:inline-block;font-size:30px;font-weight:700;letter-spacing:.5px;
  color:#fff;text-decoration:none;border-bottom:2px solid var(--alert);padding-bottom:3px;
}

@media (max-width:640px){
  .rfps-rescue .rs-split{grid-template-columns:1fr;}
  .rfps-rescue{font-size:17px;}
}

/* ============================================================
   4. RFPS HOLIDAY  -  seasonal features
   One system, three palettes. Add a modifier, never a fork.
   ============================================================ */

.rfps-holiday{
  --paper:#FBF7F0; --card:#FFFFFF; --ink:#241F1B; --muted:#6A6058;
  --deep:#1F4034; --warm:#8E2B2B; --gilt:#B08D4A; --rule:#E3D9C8;
  --display:"Cinzel", Georgia, serif;
  --body:"Spectral", Georgia, serif;
  --util:"Inter", system-ui, sans-serif;
  --sprig:"\2744";
  background:var(--paper); color:var(--ink);
  font-family:var(--body); font-size:19px; line-height:1.78;
  padding:0 0 56px;
}
.rfps-holiday.hol-evergreen{
  --paper:#F7F4EC; --ink:#1E2420; --deep:#17402F; --warm:#8C2230; --gilt:#B18B3E;
  --rule:#DCE0D3; --sprig:"\1F384";
}
.rfps-holiday.hol-hallows{
  --paper:#17151B; --card:#211E28; --ink:#F0EBE4; --muted:#A79FB4;
  --deep:#3E2A5C; --warm:#D2691E; --gilt:#E0A33E; --rule:#372F44; --sprig:"\1F383";
}
.rfps-holiday.hol-harvest{
  --paper:#FBF3E6; --ink:#2E241A; --deep:#6B3F1D; --warm:#A8481F; --gilt:#C08A2E;
  --rule:#E6D5BB; --sprig:"\1F342";
}
.rfps-holiday a{color:var(--warm);text-decoration:underline;text-underline-offset:2px;}

.rfps-holiday .hol-head{text-align:center;max-width:880px;margin:0 auto;padding:56px 24px 22px;}
.rfps-holiday .hol-season{
  font-family:var(--util);font-size:11px;font-weight:600;letter-spacing:.32em;
  text-transform:uppercase;color:var(--warm);margin:0 0 20px;
}
.rfps-holiday .hol-head h1{
  font-family:var(--display);font-weight:600;font-size:clamp(34px,5.6vw,56px);
  line-height:1.14;margin:0;color:var(--deep);letter-spacing:.02em;
}
.rfps-holiday .hol-dek{
  font-style:italic;font-size:21px;color:var(--muted);max-width:600px;margin:20px auto 0;
}
.rfps-holiday .garland{
  width:180px;height:1px;background:var(--gilt);border:0;margin:32px auto 0;position:relative;
}
.rfps-holiday .garland::after{
  content:var(--sprig);position:absolute;top:-14px;left:50%;transform:translateX(-50%);
  background:var(--paper);padding:0 14px;font-size:20px;line-height:1;
}

.rfps-holiday .hol-body{max-width:780px;margin:0 auto;padding:0 24px;}
.rfps-holiday h2{
  font-family:var(--display);font-weight:600;font-size:clamp(25px,3.6vw,34px);
  color:var(--deep);margin:48px 0 14px;letter-spacing:.02em;
}
.rfps-holiday p{margin:0 0 18px;}
.rfps-holiday .hol-lead:first-letter{
  font-family:var(--display);float:left;font-size:62px;line-height:.8;
  padding:8px 12px 0 0;color:var(--warm);
}
.rfps-holiday .hol-photo{
  margin:34px 0;padding:12px;background:var(--card);border:1px solid var(--gilt);
}
.rfps-holiday .hol-photo img{width:100%;}
.rfps-holiday .hol-photo figcaption{
  font-family:var(--util);font-size:13px;font-style:italic;color:var(--muted);
  text-align:center;padding:12px 6px 2px;
}
.rfps-holiday .hol-card{
  background:var(--card);border:1px solid var(--rule);border-top:3px solid var(--gilt);
  padding:24px 26px;margin:36px 0;
}
.rfps-holiday .hol-card h3{
  font-family:var(--util);font-size:11px;font-weight:700;letter-spacing:.24em;
  text-transform:uppercase;color:var(--warm);margin:0 0 14px;
}
.rfps-holiday .hol-card ul{margin:0;padding:0 0 0 20px;}
.rfps-holiday .hol-card li{margin:0 0 10px;font-size:17px;line-height:1.6;}
.rfps-holiday .hol-end{
  text-align:center;border-top:1px solid var(--rule);margin-top:56px;padding-top:32px;
  font-style:italic;color:var(--muted);
}
.rfps-holiday .hol-signoff{
  font-family:var(--display);font-style:normal;font-size:26px;color:var(--deep);margin-top:10px;
}

@media (max-width:720px){
  .rfps-holiday{font-size:17px;}
  .rfps-holiday .hol-lead:first-letter{font-size:52px;}
}

/* ============================================================
   5. RFPS ALMANAC  -  Over the Years, day-in-history
   ============================================================ */

.rfps-almanac{
  --paper:#FAF8F3; --card:#FFFFFF; --ink:#232019; --muted:#6B6459;
  --ink-deep:#3B3226; --accent:#8A6D3B; --rule:#E0D8C9;
  --display:"Cormorant Garamond", Georgia, serif;
  --body:"Spectral", Georgia, serif;
  --util:"Inter", system-ui, sans-serif;
  background:var(--paper); color:var(--ink);
  font-family:var(--body); font-size:19px; line-height:1.75;
  padding:0 0 56px;
}
.rfps-almanac a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;}

.rfps-almanac .al-head{text-align:center;max-width:820px;margin:0 auto;padding:52px 24px 26px;}
.rfps-almanac .al-date{
  font-family:var(--display);font-size:clamp(44px,9vw,84px);line-height:1;
  color:var(--accent);margin:0 0 8px;letter-spacing:.02em;
}
.rfps-almanac .al-head h1{
  font-family:var(--display);font-weight:600;font-size:clamp(30px,4.8vw,46px);
  line-height:1.12;margin:8px 0 0;color:var(--ink-deep);
}
.rfps-almanac .al-dek{font-style:italic;color:var(--muted);font-size:20px;max-width:600px;margin:18px auto 0;}

.rfps-almanac .al-body{max-width:800px;margin:0 auto;padding:0 24px;}

/* the timeline rail */
.rfps-almanac .timeline{
  position:relative;margin:44px 0 0;padding:0 0 0 40px;list-style:none;
}
.rfps-almanac .timeline::before{
  content:"";position:absolute;left:9px;top:8px;bottom:8px;width:2px;background:var(--rule);
}
.rfps-almanac .timeline > li{position:relative;margin:0 0 42px;padding:0;}
.rfps-almanac .timeline > li::before{
  content:"";position:absolute;left:-36px;top:12px;width:12px;height:12px;
  border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--paper);
}
.rfps-almanac .al-year{
  font-family:var(--util);font-size:12px;font-weight:700;letter-spacing:.22em;
  text-transform:uppercase;color:var(--accent);margin:0 0 6px;
}
.rfps-almanac .timeline h2{
  font-family:var(--display);font-weight:600;font-size:clamp(24px,3.4vw,32px);
  margin:0 0 10px;color:var(--ink-deep);
}
.rfps-almanac p{margin:0 0 16px;}
.rfps-almanac .al-photo{margin:20px 0 0;padding:10px;background:var(--card);border:1px solid var(--rule);}
.rfps-almanac .al-photo img{width:100%;}
.rfps-almanac .al-photo figcaption{
  font-family:var(--util);font-size:13px;font-style:italic;color:var(--muted);
  text-align:center;padding:10px 6px 2px;
}
/* the sanctuary's own entry, set apart from world history */
.rfps-almanac .al-ours{
  background:var(--card);border:1px solid var(--rule);border-left:4px solid var(--accent);
  padding:22px 26px;margin:14px 0 0;
}
.rfps-almanac .al-ours h3{
  font-family:var(--util);font-size:11px;font-weight:700;letter-spacing:.22em;
  text-transform:uppercase;color:var(--accent);margin:0 0 12px;
}
.rfps-almanac .al-ours p:last-child{margin:0;}
.rfps-almanac .al-end{
  text-align:center;border-top:1px solid var(--rule);margin-top:48px;padding-top:30px;
  font-style:italic;color:var(--muted);
}

@media (max-width:720px){.rfps-almanac{font-size:17px;}}

/* ============================================================
   6. RFPS DAWN  -  Good Morning, the daily note
   The most-used series, so it stays light and quick to fill.
   ============================================================ */

.rfps-dawn{
  --paper:#FFFDF8; --card:#FFFFFF; --ink:#22242A; --muted:#666E7A;
  --sun:#D98A2B; --sky:#3E6B8C; --rule:#E8E3D8;
  --display:"Cormorant Garamond", Georgia, serif;
  --body:"Spectral", Georgia, serif;
  --util:"Inter", system-ui, sans-serif;
  background:var(--paper); color:var(--ink);
  font-family:var(--body); font-size:19px; line-height:1.78;
  padding:0 0 52px;
}
.rfps-dawn a{color:var(--sky);text-decoration:underline;text-underline-offset:2px;}

.rfps-dawn .dw-head{
  text-align:center;padding:52px 24px 30px;
  background:linear-gradient(180deg,#FDF0DC 0%,rgba(253,240,220,0) 100%);
}
.rfps-dawn .dw-when{
  font-family:var(--util);font-size:11px;font-weight:600;letter-spacing:.3em;
  text-transform:uppercase;color:var(--sun);margin:0 0 16px;
}
.rfps-dawn .dw-head h1{
  font-family:var(--display);font-weight:600;font-size:clamp(34px,5.4vw,54px);
  line-height:1.1;margin:0;color:var(--ink);
}
.rfps-dawn .dw-dek{font-style:italic;color:var(--muted);font-size:20px;max-width:560px;margin:16px auto 0;}

.rfps-dawn .dw-body{max-width:740px;margin:0 auto;padding:0 24px;}
.rfps-dawn h2{
  font-family:var(--display);font-weight:600;font-size:clamp(24px,3.4vw,32px);
  color:var(--ink);margin:42px 0 12px;
}
.rfps-dawn p{margin:0 0 18px;}
.rfps-dawn .dw-photo{margin:30px 0;}
.rfps-dawn .dw-photo img{width:100%;border-radius:4px;}
.rfps-dawn .dw-photo figcaption{
  font-family:var(--util);font-size:13px;font-style:italic;color:var(--muted);
  text-align:center;padding:10px 6px 0;
}
/* today's list: three quick things, the spine of every morning post */
.rfps-dawn .dw-today{
  background:var(--card);border:1px solid var(--rule);border-top:3px solid var(--sun);
  padding:24px 26px;margin:34px 0;
}
.rfps-dawn .dw-today h3{
  font-family:var(--util);font-size:11px;font-weight:700;letter-spacing:.24em;
  text-transform:uppercase;color:var(--sun);margin:0 0 16px;
}
.rfps-dawn .dw-today ul{margin:0;padding:0;list-style:none;}
.rfps-dawn .dw-today li{
  position:relative;padding:0 0 12px 26px;margin:0 0 12px;
  border-bottom:1px dashed var(--rule);font-size:17px;line-height:1.6;
}
.rfps-dawn .dw-today li:last-child{border-bottom:0;margin:0;padding-bottom:0;}
.rfps-dawn .dw-today li::before{
  content:"\2600";position:absolute;left:0;top:0;color:var(--sun);font-size:15px;
}
.rfps-dawn .dw-end{
  text-align:center;border-top:1px solid var(--rule);margin-top:46px;padding-top:28px;
  font-style:italic;color:var(--muted);
}
.rfps-dawn .dw-signoff{font-family:var(--display);font-style:normal;font-size:24px;color:var(--sky);margin-top:8px;}

@media (max-width:720px){.rfps-dawn{font-size:17px;}}

/* ============================================================
   7. RFPS ADOPTABLE  -  meet the bird
   ============================================================ */

.rfps-adoptable{
  --paper:#FBFAF7; --card:#FFFFFF; --ink:#1E2126; --muted:#5E6672;
  --brand:#2F6E5A; --brand-soft:#E4F0EA; --warn:#B3261E; --rule:#E2E5E0;
  --display:"Cormorant Garamond", Georgia, serif;
  --body:"Spectral", Georgia, serif;
  --util:"Inter", system-ui, sans-serif;
  background:var(--paper); color:var(--ink);
  font-family:var(--body); font-size:19px; line-height:1.75;
  padding:0 0 56px;
}
.rfps-adoptable a{color:var(--brand);text-decoration:underline;text-underline-offset:2px;}

.rfps-adoptable .ad-head{max-width:900px;margin:0 auto;padding:46px 24px 10px;text-align:center;}
.rfps-adoptable .ad-status{
  display:inline-block;font-family:var(--util);font-size:11px;font-weight:700;
  letter-spacing:.24em;text-transform:uppercase;color:#fff;background:var(--brand);
  padding:7px 16px;border-radius:20px;margin:0 0 20px;
}
.rfps-adoptable .ad-head h1{
  font-family:var(--display);font-weight:600;font-size:clamp(34px,5.6vw,56px);
  line-height:1.1;margin:0;color:var(--ink);
}
.rfps-adoptable .ad-dek{font-style:italic;color:var(--muted);font-size:20px;max-width:600px;margin:16px auto 0;}

.rfps-adoptable .ad-body{max-width:820px;margin:0 auto;padding:0 24px;}
.rfps-adoptable .ad-portrait{margin:34px 0 10px;}
.rfps-adoptable .ad-portrait img{width:100%;border-radius:6px;}
.rfps-adoptable .ad-portrait figcaption{
  font-family:var(--util);font-size:13px;font-style:italic;color:var(--muted);
  text-align:center;padding:12px 6px 0;
}
/* stat chips: the answers people ask for before they read a word */
.rfps-adoptable .ad-stats{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:32px 0;
}
.rfps-adoptable .ad-stat{
  background:var(--card);border:1px solid var(--rule);border-radius:6px;padding:16px 18px;text-align:center;
}
.rfps-adoptable .ad-stat dt{
  font-family:var(--util);font-size:10px;font-weight:700;letter-spacing:.2em;
  text-transform:uppercase;color:var(--muted);margin:0 0 6px;
}
.rfps-adoptable .ad-stat dd{margin:0;font-size:19px;font-weight:600;color:var(--ink);}
.rfps-adoptable h2{
  font-family:var(--display);font-weight:600;font-size:clamp(25px,3.6vw,34px);
  color:var(--ink);margin:44px 0 14px;
}
.rfps-adoptable p{margin:0 0 18px;}
.rfps-adoptable .ad-needs{
  background:var(--brand-soft);border-left:4px solid var(--brand);padding:22px 26px;margin:34px 0;
}
.rfps-adoptable .ad-needs h3{
  font-family:var(--util);font-size:11px;font-weight:700;letter-spacing:.22em;
  text-transform:uppercase;color:var(--brand);margin:0 0 14px;
}
.rfps-adoptable .ad-needs ul{margin:0;padding:0 0 0 20px;}
.rfps-adoptable .ad-needs li{margin:0 0 9px;font-size:17px;line-height:1.6;}
.rfps-adoptable .ad-honest{
  background:#FCEFEE;border-left:4px solid var(--warn);padding:22px 26px;margin:34px 0;
}
.rfps-adoptable .ad-honest h3{
  font-family:var(--util);font-size:11px;font-weight:700;letter-spacing:.22em;
  text-transform:uppercase;color:var(--warn);margin:0 0 14px;
}
.rfps-adoptable .ad-honest p:last-child{margin:0;}
.rfps-adoptable .ad-cta{
  background:var(--ink);color:#fff;border-radius:8px;padding:32px;margin:48px 0 0;text-align:center;
}
.rfps-adoptable .ad-cta h2{font-family:var(--display);font-size:30px;margin:0 0 10px;color:#fff;}
.rfps-adoptable .ad-cta p{color:#C3CAD3;margin:0 0 20px;font-size:17px;}
.rfps-adoptable .ad-cta a.ad-btn{
  display:inline-block;background:var(--brand);color:#fff;text-decoration:none;
  font-family:var(--util);font-size:14px;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;padding:14px 32px;border-radius:4px;
}

@media (max-width:720px){.rfps-adoptable{font-size:17px;}}
