/* ============================================================
   LADIES — shared additions. Every selector is .ld- prefixed
   so nothing here can leak into site.css territory.
   Append only. Do not overwrite; other pages live in this file.
   ------------------------------------------------------------
   Block: jennifer / sheela / yanci
   ============================================================ */

/* a narrow reading column — replaces repeated inline max-widths */
.ld-col{ max-width:860px; margin:0 auto }
.ld-col-tight{ max-width:820px; margin:0 auto }

/* her side of it: one line, set apart, said kindly */
.ld-herside{
  max-width:820px; margin:0 auto;
  border-left:3px solid var(--hex-pink);
  padding:18px 22px;
  background:rgba(255,45,149,.06);
  border-radius:0 3px 3px 0;
}
.ld-herside p{
  margin:0;
  font-family:'Caveat',cursive;
  font-size:1.34rem;
  line-height:1.45;
  color:#f6e7f3;
}
.ld-herside .ld-attrib{
  display:block;
  margin-top:12px;
  font-family:'Courier Prime',ui-monospace,monospace;
  font-size:.68rem;
  letter-spacing:.06em;
  color:var(--carbon);
}

/* the laminated one — a card that is visibly a laminated card */
.ld-lam{
  position:relative;
  background:linear-gradient(158deg,#fdf6e6 0%,#f0e2c6 100%);
  color:#2a2018;
  border-radius:6px;
  padding:22px 24px;
  max-width:820px; margin:0 auto;
  box-shadow:0 1px 0 rgba(255,255,255,.75) inset, 0 16px 30px rgba(0,0,0,.58), 0 0 0 5px rgba(226,236,240,.34);
}
.ld-lam h3{
  margin:0 0 4px;
  font-family:'Bungee',system-ui,sans-serif;
  font-size:1rem;
  letter-spacing:.02em;
  color:#1b1220;
}
.ld-lam .ld-sub{ margin:0 0 14px; font-size:.70rem; letter-spacing:.04em; color:#6a5a48 }
.ld-lam ul{ margin:0 0 12px; padding-left:20px; font-size:.86rem }
.ld-lam li{ margin-bottom:7px }
.ld-lam p{ margin:0 0 10px; font-size:.86rem }
.ld-lam p:last-child{ margin-bottom:0 }
.ld-lam .ld-pen{ font-family:'Caveat',cursive; font-size:1.16rem; color:var(--ballpoint) }
.ld-lam::after{
  content:'LAMINATED';
  position:absolute; top:10px; right:14px;
  font-family:'Courier Prime',ui-monospace,monospace;
  font-size:.56rem; letter-spacing:.22em; color:#9a8b74;
}

/* a plain deadpan caption under a wide table */
.ld-fine{
  max-width:860px; margin:14px auto 0;
  font-size:.70rem; letter-spacing:.03em; color:var(--carbon); text-align:center;
}

/* a column of table cells that all say the same thing */
.ld-no{ color:#ff8fc4; letter-spacing:.06em }
.ld-yes{ color:var(--bog-green); letter-spacing:.06em }
.ld-maybe{ color:var(--tallow); letter-spacing:.06em }

/* ============================================================
   Block: ashelen / melodie / lynn
   Appended. Same rule: every selector stays .ld- prefixed.
   ============================================================ */

/* a sung line, written on the paper of a work order */
.ld-sing{
  font-family:'Caveat',cursive;
  font-size:1.20rem; line-height:1.40;
  color:#7a2ba0; margin:0 0 8px;
}
.ld-sing:last-child{ margin-bottom:0 }
.ld-sing::before{ content:'\266A\00a0\00a0'; opacity:.7 }

/* the same line, but coming out of the ceiling speaker */
.ld-air{
  font-family:'Caveat',cursive;
  font-size:1.32rem; line-height:1.44;
  color:var(--tallow); margin:0 0 10px;
}
.ld-air:last-child{ margin-bottom:0 }
.ld-air::before{ content:'\266A\00a0\00a0'; opacity:.6 }

/* form furniture: the blank nobody could fill in */
.ld-blank{
  display:inline-block; min-width:110px; max-width:100%;
  border-bottom:1px solid #6a5a48; vertical-align:baseline;
}
.ld-box{
  display:inline-block; width:.76em; height:.76em; margin-right:.42em;
  border:1px solid #6a5a48; vertical-align:baseline;
}
.ld-void{ text-decoration:line-through; color:#8a1330 }

/* a short row of filed facts under a heading */
.ld-facts{ display:flex; flex-wrap:wrap; gap:9px; margin:0 0 24px; padding:0; list-style:none }
.ld-facts li{
  border:1px solid rgba(109,95,131,.5); border-radius:2px; padding:6px 10px;
  font-family:'Courier Prime',ui-monospace,monospace;
  font-size:.64rem; letter-spacing:.08em; color:var(--carbon); text-transform:uppercase;
}

/* a balance that is going the wrong way */
.roster td.ld-up{ color:#ff8fc4; letter-spacing:.06em }
/* ============================================================
   THISTLEDOWN — shared bits for the ladies' pages.
   Every selector is prefixed .ld- on purpose. Nothing leaks.
   APPEND ONLY. Do not overwrite; other files live here too.
   Block added by: kendra.html / ladies.html
   ============================================================ */

/* a link that has to survive on parchment */
.ld-paperlink{
  font-family:'Bungee',sans-serif; font-size:.52rem; letter-spacing:.13em;
  text-transform:uppercase; color:#8a1330; text-decoration:none;
  border-bottom:1px solid rgba(138,19,48,.55); padding-bottom:1px;
  white-space:nowrap;
}
.ld-paperlink:hover{ color:#1b1410; border-bottom-color:#1b1410 }

/* clause 7(e), reproduced in full */
.ld-clause-cap{
  font-family:'Bungee',sans-serif; font-size:.52rem; letter-spacing:.16em;
  text-transform:uppercase; color:#6a5a48; text-align:center; margin:18px 0 0;
}
.ld-clause{
  margin:8px 0 16px; padding:20px 14px; text-align:center;
  border-top:2px solid #1b1410; border-bottom:2px solid #1b1410;
  font-family:'Bungee',sans-serif; font-weight:400;
  font-size:clamp(1.05rem,4.6vw,1.85rem); line-height:1.22;
  letter-spacing:.03em; color:#1b1410;
}

/* the countdown to the next renewal */
.ld-now{
  max-width:620px; margin:0 auto; padding:26px 22px 22px; text-align:center;
  border:2px dashed rgba(255,45,149,.5); border-radius:3px;
  background:rgba(28,3,17,.5);
}
.ld-nowcap{
  font-family:'Bungee',sans-serif; font-size:.56rem; letter-spacing:.22em;
  text-transform:uppercase; color:var(--carbon); margin:0 0 12px;
}
.ld-nowval{
  display:block; font-family:'Monoton',cursive;
  font-size:clamp(2.2rem,11vw,4.6rem); line-height:1; color:#fff;
  text-shadow:0 0 6px #fff, 0 0 18px var(--hex-pink), 0 0 44px var(--hex-pink);
}
.ld-nowsub{ margin:16px 0 0; font-size:.72rem; color:var(--carbon) }

/* the stamp he had made in 1994 */
.ld-stampbox{ display:flex; justify-content:center; margin:0 0 26px }
.ld-bigstamp{
  display:inline-block; transform:rotate(-7deg);
  border:5px double rgba(138,19,48,.75); border-radius:5px; padding:10px 22px;
  font-family:'Bungee',sans-serif; font-size:clamp(.95rem,4.6vw,1.6rem);
  letter-spacing:.16em; color:rgba(255,120,150,.82);
  background:rgba(138,19,48,.10);
}

/* the care plan is about staff, so it is pinned crooked on purpose */
.ld-careplan{ max-width:820px; margin:0 auto }
.ld-plandate{
  font-family:'Bungee',sans-serif; font-size:.52rem; letter-spacing:.14em;
  text-transform:uppercase; color:#6a5a48; margin:14px 0 0; text-align:right;
}

/* ══ julia + denise ══════════════════════════════════════════
   Two additions only: a redaction bar, and one framed quote.
   Everything else on these pages is stock site.css.
   ═══════════════════════════════════════════════════════════ */

.ld-redact{
  display:inline-block;
  background:#0b0510;
  color:transparent;
  border-radius:2px;
  padding:0 .5em;
  user-select:none;
  vertical-align:baseline;
  box-shadow:0 0 0 1px rgba(109,95,131,.45) inset, 0 0 12px rgba(0,0,0,.6);
}
.ld-redact::selection{ background:#0b0510; color:transparent }

.ld-bigquote{
  max-width:820px;
  margin:0 auto;
  text-align:center;
  padding:clamp(28px,5.5vw,52px) 20px;
  border:var(--rule);
  border-radius:3px;
  background:rgba(21,10,34,.62);
}
.ld-bigquote p{
  margin:0;
  font-family:'Bungee', 'Courier Prime', monospace;
  line-height:1.16;
  font-size:clamp(1.3rem, .85rem + 3.2vw, 2.9rem);
  color:var(--hex-pink);
  text-shadow:0 0 20px rgba(255,45,149,.42);
}
.ld-bigquote .by{
  margin:18px 0 0;
  font-family:'Courier Prime', ui-monospace, monospace;
  font-size:.68rem;
  letter-spacing:.06em;
  color:var(--carbon);
  text-shadow:none;
}

/* ══ melody d. ═══════════════════════════════════════════════
   The regional. Four additions: a star rating that can be read
   at a glance, a surprise-inspection calendar, a form-number
   badge, and one review card that has gone quietly off-topic.
   APPEND ONLY. Every selector stays .ld- prefixed.
   ═══════════════════════════════════════════════════════════ */

/* stars inside a table cell — lit and unlit, never wrapping */
.ld-md-rate{ white-space:nowrap; color:var(--tallow); letter-spacing:.14em }
.roster td.ld-md-rate{ color:var(--tallow) }
.ld-md-dim{ color:rgba(109,95,131,.7) }

/* the review excerpt, which is not about the property */
.ld-md-rev{ font-style:italic }

/* the inspection calendar: every square is the same square */
.ld-md-cal{
  max-width:640px; margin:0 auto;
  border:var(--rule); border-radius:3px;
  background:rgba(21,10,34,.6);
  padding:12px;
}
.ld-md-calhd{
  display:flex; flex-wrap:wrap; gap:6px 14px; justify-content:space-between;
  font-family:'Courier Prime',ui-monospace,monospace;
  font-size:.62rem; letter-spacing:.10em; text-transform:uppercase;
  color:var(--carbon); margin:0 2px 10px;
}
.ld-md-grid{ display:grid; grid-template-columns:repeat(7,1fr); gap:3px }
.ld-md-dow{
  font-family:'Bungee',sans-serif; font-size:.44rem; letter-spacing:.06em;
  text-align:center; color:var(--carbon); padding:2px 0;
}
.ld-md-day{
  border:1px solid rgba(109,95,131,.35); border-radius:2px;
  background:rgba(255,45,149,.07);
  padding:4px 2px 5px; text-align:center; min-width:0;
}
.ld-md-num{
  display:block; font-family:'Courier Prime',ui-monospace,monospace;
  font-size:.56rem; color:#d6c6e0;
}
.ld-md-tag{
  display:block; font-family:'Bungee',sans-serif;
  font-size:.36rem; letter-spacing:.02em; line-height:1.25;
  color:var(--hex-pink); margin-top:2px;
  overflow-wrap:anywhere;
}
.ld-md-calft{
  font-family:'Courier Prime',ui-monospace,monospace;
  font-size:.64rem; color:var(--carbon); text-align:center; margin:12px 0 0;
}

/* the form number that had to be invented */
.ld-md-form{
  display:inline-block; border:1px solid rgba(109,95,131,.55); border-radius:2px;
  padding:1px 6px; font-family:'Courier Prime',ui-monospace,monospace;
  font-size:.62rem; letter-spacing:.10em; color:var(--parchment);
  white-space:nowrap;
}
.notice .ld-md-form{ border-color:#b9a98f; color:#2a2018 }

/* a review card whose subject has drifted */
.review.ld-md-drift{ border-left:3px solid var(--tallow) }
.ld-md-note{
  margin:10px 0 0; font-family:'Courier Prime',ui-monospace,monospace;
  font-size:.64rem; letter-spacing:.04em; color:var(--carbon);
}

/* ============================================================
   Block: meela
   Appended. Same rule as every block above: .ld- prefixed only.
   Two additions. Everything else on that page is stock site.css.
   ============================================================ */

/* the row where the prose peaks — glass three, on the correlation table */
.roster tr.ld-peak td{ background:rgba(255,178,77,.09); color:#f0dfc4 }
.roster tr.ld-peak td:first-child{ color:var(--tallow); letter-spacing:.06em }
.roster tr.ld-peak td b{ color:#fff }
.roster tr.ld-peak:hover td{ background:rgba(255,178,77,.15) }

/* the one filing she made sober: a ruled sheet with nothing on it */
.ld-nothing{
  margin:14px 18px 0;
  min-height:104px;
  border:1px dashed #b9a98f; border-radius:2px;
  background:repeating-linear-gradient(180deg,transparent 0 25px,rgba(185,169,143,.45) 25px 26px);
  position:relative;
}
.ld-nothing::after{
  content:'NOTHING REPORTED';
  position:absolute; left:50%; top:50%;
  transform:translate(-50%,-50%) rotate(-8deg);
  font-family:'Bungee',sans-serif; font-size:.58rem; letter-spacing:.20em;
  color:rgba(106,90,72,.40); white-space:nowrap;
}

/* ============================================================
   Block: turn-ons.html — STANDING PREFERENCES
   Appended. APPEND ONLY. Every selector stays .ld-to- prefixed
   so nothing here can reach another page's markup.
   ============================================================ */

/* Brian's ballpoint. `.notice p` outranks a bare `.pen`, so this
   is the same ink spec'd to win inside a posted notice. */
p.ld-to-pen,
.notice p.ld-to-pen{
  font-family:'Caveat',cursive;
  font-size:1.22rem; line-height:1.44;
  color:var(--ballpoint);
  margin:14px 0 0;
}
.notice p.ld-to-pen + p.ld-to-pen{ margin-top:9px }

/* the same hand, written on the dark */
p.ld-to-margin{
  font-family:'Caveat',cursive;
  font-size:1.26rem; line-height:1.46;
  color:#9db8ff;
  margin:18px auto 0; max-width:72ch;
}

/* a banner of things he is not */
.ld-to-band{
  display:flex; flex-wrap:wrap; gap:7px 16px;
  justify-content:center; align-items:center; text-align:center;
  margin:0 0 26px; padding:10px 14px;
  border:2px solid rgba(138,19,48,.55); border-radius:2px;
  background:rgba(138,19,48,.12);
  font-family:'Bungee',system-ui,sans-serif; font-size:.54rem; letter-spacing:.20em;
  text-transform:uppercase; color:#ff9ab8;
}
.ld-to-band span{ white-space:nowrap }
.ld-to-band b{ color:#fff; font-weight:400; text-shadow:0 0 9px var(--hex-pink) }

/* the approved telephone script, with its stage directions */
.notice ol.ld-to-script{ margin:0; padding-left:20px }
.notice ol.ld-to-script li{ margin-bottom:13px }
.notice .ld-to-script .ld-to-say{
  display:block; margin:0 0 4px; font-size:.88rem; color:#1b1410;
}
.notice .ld-to-script .ld-to-dir{
  display:block; margin:0;
  font-family:'Courier Prime',ui-monospace,monospace;
  font-size:.66rem; letter-spacing:.07em; text-transform:uppercase;
  color:#8a1330;
}

/* the certificate number, typed onto the laminate */
.ld-to-cert{
  display:inline-block; border:1px solid #b9a98f; border-radius:2px;
  padding:1px 7px; font-family:'Courier Prime',ui-monospace,monospace;
  font-size:.62rem; letter-spacing:.12em; color:#2a2018; white-space:nowrap;
}

/* the leftover-screws column, which has never been zero */
.roster td .ld-to-screws{
  display:inline-block; min-width:2.1em; text-align:center;
  border:1px solid rgba(255,178,77,.55); border-radius:2px;
  padding:0 6px; color:var(--tallow); font-weight:700;
}

/* the tent, counted, in the bag, in the shed */
.ld-to-kit{
  display:grid; gap:10px; margin:0 0 6px; padding:0; list-style:none;
  grid-template-columns:repeat(auto-fit,minmax(148px,1fr));
}
.ld-to-kit li{
  border:var(--rule); border-radius:3px; padding:11px 13px;
  background:rgba(21,10,34,.55);
}
.ld-to-kit .ld-to-qty{
  display:block; font-family:'Bungee',system-ui,sans-serif;
  font-size:1.10rem; line-height:1.2; color:var(--bog-green);
}
.ld-to-kit .ld-to-item{
  display:block; margin-top:5px;
  font-size:.68rem; letter-spacing:.03em; color:var(--carbon);
}

/* the year it rained */
.ld-to-grave{
  max-width:820px; margin:24px auto 0;
  border-left:3px solid var(--tallow);
  padding:14px 0 14px 18px;
  color:#cbb9d6; font-size:.90rem;
}
.ld-to-grave p{ margin:0 0 11px }
.ld-to-grave p:last-child{ margin-bottom:0 }
.ld-to-grave .ld-to-year{
  display:block; font-family:'Bungee',system-ui,sans-serif;
  font-size:.70rem; letter-spacing:.14em; color:var(--tallow); margin-bottom:9px;
}

/* the four-person dome tent, drawn to scale, from memory */
.ld-to-tent{ display:flex; justify-content:center; margin:0 0 26px }
.ld-to-tent svg{ width:min(280px,74vw); height:auto; display:block }

/* ============================================================
   Block: scapegoat  (scapegoat.html)
   Append only. Every selector .ld-sg- prefixed.
   ============================================================ */

/* reading columns */
.ld-sg-col{ max-width:860px; margin:0 auto }
.ld-sg-col-tight{ max-width:820px; margin:0 auto }
.ld-sg-cols{
  display:grid; gap:clamp(20px,3vw,32px);
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
  align-items:start;
}

/* ballpoint on parchment (inside .notice) */
p.ld-sg-pen,
.notice p.ld-sg-pen{
  font-family:'Caveat',cursive;
  font-size:1.22rem; line-height:1.44;
  color:var(--ballpoint);
  margin:14px 0 0;
}
.notice p.ld-sg-pen + p.ld-sg-pen{ margin-top:9px }

/* the same hand, written on the dark */
p.ld-sg-margin{
  font-family:'Caveat',cursive;
  font-size:1.26rem; line-height:1.46;
  color:#9db8ff;
  margin:16px 0 0; max-width:72ch;
}

/* filing header strip under the cover heading */
.ld-sg-strip{
  display:flex; flex-wrap:wrap; gap:8px 26px;
  margin:0 0 26px;
  font-family:'Courier Prime',ui-monospace,monospace;
  font-size:.70rem; letter-spacing:.05em; color:var(--carbon);
}
.ld-sg-strip b{ color:var(--parchment); font-weight:400 }

/* lettered tab on the attachments */
.ld-sg-tab{
  display:inline-block; min-width:1.6em;
  font-family:'Bungee',sans-serif; font-size:.68rem;
  color:var(--hex-pink); text-shadow:0 0 9px var(--hex-pink);
  margin-right:11px;
}

/* the association's one-line ruling */
.ld-sg-ruling{
  max-width:760px; margin:30px auto 0; padding:18px 22px;
  border:2px dashed rgba(255,178,77,.5); border-radius:3px;
  background:rgba(20,12,4,.55); text-align:center;
}
.ld-sg-rlabel{
  display:block; font-family:'Bungee',sans-serif; font-size:.52rem;
  letter-spacing:.16em; color:var(--tallow); margin:0 0 10px;
}
.ld-sg-ruling p{
  margin:0; font-family:'Courier Prime',ui-monospace,monospace;
  font-size:.92rem; line-height:1.5; color:var(--parchment);
}
.ld-sg-ruling p.ld-sg-after{
  margin-top:11px; font-size:.72rem; color:var(--carbon);
}

/* Scape, running through the document */
.ld-sg-goat{
  max-width:760px; margin:24px auto 0; padding:12px 16px;
  border-left:3px solid var(--bog-green);
  background:rgba(6,22,4,.42); border-radius:0 3px 3px 0;
  font-family:'Courier Prime',ui-monospace,monospace;
  font-size:.74rem; line-height:1.55; color:#cfe8c9;
}
.ld-sg-goat b{
  display:block; margin-bottom:5px; font-weight:400;
  font-family:'Bungee',sans-serif; font-size:.54rem; letter-spacing:.14em;
  color:var(--bog-green);
}

/* stamped footer under the attachments */
.ld-sg-foot{
  margin:26px 0 0; text-align:center;
  border-top:var(--rule); padding-top:16px;
  font-family:'Bungee',sans-serif; font-size:.54rem; letter-spacing:.13em;
  line-height:2; color:var(--carbon);
}

/* an invented form number, inline */
.ld-sg-form{
  display:inline-block; border:1px solid rgba(109,95,131,.55); border-radius:2px;
  padding:1px 6px; font-family:'Courier Prime',ui-monospace,monospace;
  font-size:.62rem; letter-spacing:.10em; color:var(--parchment);
  white-space:nowrap;
}
.notice .ld-sg-form{ border-color:#b9a98f; color:#2a2018 }

@media (max-width:620px){
  .ld-sg-strip{ gap:5px 16px; font-size:.64rem }
  .ld-sg-ruling{ padding:16px 14px }
}

/* ══ journey ═════════════════════════════════════════════════
   journey.html — the itinerary, the aircraft, the letter.
   Appended. Same rule: every selector stays .ld- prefixed.
   ════════════════════════════════════════════════════════════ */

/* the boarding pass: a strip of card with a perforated stub */
.ld-jr-pass{
  display:grid; gap:1px;
  grid-template-columns:repeat(2,minmax(0,1fr));  /* six cells: 2 / 3 / 6, never an orphan */
  background:#b9a98f;
  border-radius:2px; box-shadow:var(--paper-shadow);
  margin:0 0 26px; overflow:hidden;
}
@media (min-width:560px){ .ld-jr-pass{ grid-template-columns:repeat(3,minmax(0,1fr)) } }
@media (min-width:940px){ .ld-jr-pass{ grid-template-columns:repeat(6,minmax(0,1fr)) } }
.ld-jr-cell{ background:var(--parchment); padding:12px 14px 13px; min-width:0 }
.ld-jr-cell span{
  display:block; font-family:'Bungee',sans-serif; font-size:.48rem;
  letter-spacing:.16em; text-transform:uppercase; color:#6a5a48; margin-bottom:5px;
}
.ld-jr-cell b{
  display:block; font-family:'Courier Prime',monospace; font-weight:700;
  font-size:.94rem; letter-spacing:.06em; color:#1b1410;
  overflow-wrap:anywhere;
}
/* the status colours are tuned for the dark table; darken them on card stock */
.ld-jr-cell .ld-no{ color:#8a1330 }
.ld-jr-cell .ld-yes{ color:#1d6b2a }
.ld-jr-cell .ld-maybe{ color:#8a5a12 }

/* the checklist, as it appears on the clipboard */
.ld-jr-check{
  margin:0; padding:2px 18px 0; list-style:none;
  font-family:'Courier Prime',monospace; font-size:.74rem; color:#2a2018;
}
.ld-jr-check li{ padding:3px 0 3px 22px; position:relative }
.ld-jr-check li::before{
  content:''; position:absolute; left:2px; top:5px;
  width:10px; height:10px; border:1px solid #6a5a48; border-radius:1px;
  background:#e6d6ba;
}
.ld-jr-check li::after{
  content:'\2713'; position:absolute; left:3px; top:0;
  font-size:.82rem; line-height:1.3; color:var(--ballpoint);
}

/* the windsock. it has never broken. */
.ld-jr-sockwrap{
  display:flex; align-items:center; gap:0;
  padding:10px 18px 2px; min-height:46px;
}
.ld-jr-pole{
  width:3px; height:40px; flex:0 0 auto; border-radius:1px;
  background:linear-gradient(180deg,#6a5a48,#3b3126);
}
.ld-jr-sock{
  flex:0 0 auto; width:clamp(84px,26vw,124px); height:30px;
  transform-origin:0% 50%;
  clip-path:polygon(0 0, 100% 26%, 100% 74%, 0 100%);
  background:repeating-linear-gradient(90deg,
    #d8632a 0 16%, #f2e4cb 16% 32%);
  animation:ld-jr-sway 5.2s ease-in-out infinite;
}
@keyframes ld-jr-sway{
  0%,100%{ transform:rotate(-3deg) scaleX(1) }
  40%    { transform:rotate(2.5deg) scaleX(.94) }
  70%    { transform:rotate(-1deg)  scaleX(1) }
}

/* the last line of the memorandum, set apart on the paper */
.ld-jr-close{
  margin-top:14px; padding-top:12px;
  border-top:1px dashed #b9a98f;
  font-style:italic;
}

/* the index card kept with the letter */
.ld-jr-card{
  background:#efe6d2; color:#1b1410; border-radius:2px;
  box-shadow:var(--paper-shadow);
  border-top:3px solid #c2506f;
  padding:16px 18px 14px; margin:0 0 22px;
  background-image:repeating-linear-gradient(180deg,transparent 0 23px,rgba(120,140,180,.28) 23px 24px);
}
.ld-jr-card > span{
  display:block; font-family:'Bungee',sans-serif; font-size:.48rem;
  letter-spacing:.16em; text-transform:uppercase; color:#6a5a48; margin:0 0 10px;
}
.ld-jr-card p{
  margin:0 0 6px; font-family:'Courier Prime',monospace;
  font-size:.78rem; color:#2a2018;
}
.ld-jr-card p:last-child{ margin-bottom:0 }
.ld-jr-card p b{ color:#1b1410 }

/* the letter itself: a folded sheet, slightly aged, sitting straight */
.ld-jr-letter{
  background:linear-gradient(180deg,#f6ecd8,#eaddc2);
  color:#1b1410; border-radius:2px;
  box-shadow:var(--paper-shadow);
  padding:clamp(22px,5vw,38px) clamp(20px,5vw,44px) clamp(26px,5vw,40px);
  position:relative; overflow:hidden;
}
/* the fold lines. it has been folded a great many times. */
.ld-jr-letter::before{
  content:''; position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(180deg,transparent 32.6%,rgba(120,100,70,.18) 33%,transparent 33.4%),
    linear-gradient(180deg,transparent 65.6%,rgba(120,100,70,.18) 66%,transparent 66.4%);
}
.ld-jr-lhd{
  margin:0 0 16px; font-family:'Bungee',sans-serif;
  font-size:.50rem; letter-spacing:.16em; text-transform:uppercase; color:#6a5a48;
}
.ld-jr-letter .pen{ font-size:clamp(1.18rem,3.6vw,1.38rem); line-height:1.5 }
.ld-jr-letter .pen + .pen{ margin-top:14px }
.ld-jr-letter + .ld-fine{ margin-top:18px }

@media (prefers-reduced-motion: reduce){
  .ld-jr-sock{ animation:none; transform:rotate(-1.5deg) }
}

/* ══ florida ═════════════════════════════════════════════════
   THE FLORIDA YEARS
   A loop with twelve legs, eleven of which get driven; a season
   marked on the calendar as a blackout; and one laminated card
   the subject wrote about himself, for once.
   ============================================================ */

/* the leg of the itinerary that has never been driven */
.roster tr.ld-fl-undriven td{
  color:var(--carbon);
  border-top:1px dashed rgba(255,178,77,.55);
  background:repeating-linear-gradient(135deg,transparent 0 9px,rgba(109,95,131,.09) 9px 18px);
}
.roster tr.ld-fl-undriven td:first-child{ color:var(--tallow); letter-spacing:.06em }
.roster tr.ld-fl-undriven:hover td{ background:rgba(255,178,77,.13) }

/* the season, entered on the property calendar as a blackout */
.ld-fl-cal{
  max-width:820px; margin:0 auto 26px;
  background:linear-gradient(158deg,#fdf6e6 0%,#efe1c4 100%);
  color:#2a2018; border-radius:3px;
  padding:18px 20px 16px;
  box-shadow:var(--paper-shadow);
}
.ld-fl-calhd{
  display:flex; flex-wrap:wrap; gap:4px 16px; justify-content:space-between;
  margin:0 0 14px;
  font-size:.66rem; letter-spacing:.08em; text-transform:uppercase; color:#6a5a48;
}
.ld-fl-calhd b{
  font-family:'Bungee',system-ui,sans-serif; font-weight:400;
  letter-spacing:.02em; color:#1b1220;
}
.ld-fl-months{ display:grid; grid-template-columns:repeat(4,1fr); gap:5px }
@media (min-width:520px){ .ld-fl-months{ grid-template-columns:repeat(6,1fr) } }
@media (min-width:760px){ .ld-fl-months{ grid-template-columns:repeat(12,1fr) } }
.ld-fl-mo{
  border:1px solid #c8b795; border-radius:2px;
  padding:9px 2px 8px; text-align:center; background:#fffaf0;
}
.ld-fl-mo span{ display:block; font-size:.60rem; letter-spacing:.08em; color:#6a5a48 }
.ld-fl-mo b{ display:block; margin-top:5px; font-size:.54rem; letter-spacing:.06em; font-weight:400; color:#1d6b2a }
.ld-fl-mo.ld-fl-out{
  background:repeating-linear-gradient(135deg,#f5e0e7 0 6px,#eed2dc 6px 12px);
  border-color:#c48fa6;
}
.ld-fl-mo.ld-fl-out span,
.ld-fl-mo.ld-fl-out b{ color:#8a1330 }
.ld-fl-calft{ margin:13px 0 0; font-size:.70rem; line-height:1.65; color:#6a5a48 }

/* the order of operations, numbered by the man who wrote it */
.ld-fl-steps{ margin:0 0 12px; padding:0; list-style:none; counter-reset:ldfl }
.ld-fl-steps li{
  position:relative; counter-increment:ldfl;
  padding-left:34px; margin-bottom:9px; font-size:.86rem;
}
.ld-fl-steps li::before{
  content:counter(ldfl);
  position:absolute; left:0; top:1px;
  width:22px; height:22px;
  border:1px solid #8a1330; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-family:'Courier Prime',ui-monospace,monospace; font-size:.64rem; color:#8a1330;
}
