/* C141's five first-date follow-ups share structure but keep route-owned prose. */
.dating-guide-page:has(.c141-body) {
  --c141-ink: #172c34;
  --c141-accent: #165b62;
  --c141-soft: #edf7f5;
  --c141-line: #bfd9d5;
  color: var(--c141-ink);
}
.dating-guide-layout-c141-faith-led-clarity-weekend:has(.c141-body) { --c141-accent:#65456f; --c141-soft:#f6f0f6; --c141-line:#dfcde1; }
.dating-guide-layout-c141-parents-safety-casual:has(.c141-body) { --c141-accent:#72562b; --c141-soft:#fbf5e9; --c141-line:#e5d4ae; }
.dating-guide-layout-c141-professionals-serious-casual:has(.c141-body) { --c141-accent:#24496b; --c141-soft:#edf2f8; --c141-line:#c6d5e5; }
.dating-guide-layout-c141-students-low-pressure-casual:has(.c141-body) { --c141-accent:#416b3f; --c141-soft:#f0f7ec; --c141-line:#c9ddc3; }
.c141-body { max-width:1120px; padding-block:clamp(2rem,4vw,4rem); }
.c141-body * { box-sizing:border-box; }
.c141-kicker { display:block; color:var(--c141-accent); font-size:.77rem; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }
.c141-body h2 { color:var(--c141-ink); font-size:clamp(1.35rem,2.4vw,2rem); line-height:1.2; margin:.45rem 0 1rem; }
.c141-body h3 { color:var(--c141-ink); line-height:1.3; }
.c141-body p { max-width:70ch; line-height:1.7; }
.c141-toc { display:flex; flex-wrap:wrap; align-items:center; gap:.55rem; padding:1rem; margin-bottom:2rem; background:var(--c141-soft); border:1px solid var(--c141-line); }
.c141-toc strong { margin-right:.35rem; color:var(--c141-ink); }
.c141-toc a,.c141-related a { display:inline-flex; align-items:center; min-height:40px; padding:.45rem .7rem; color:var(--c141-accent); background:#fff; border:1px solid var(--c141-line); border-radius:4px; font-weight:750; text-decoration:none; }
.c141-toc a:hover,.c141-related a:hover { text-decoration:underline; }
.c141-opening { max-width:750px; margin:0 0 2.6rem; padding-left:1.25rem; border-left:5px solid var(--c141-accent); }
.c141-opening h2 { font-size:clamp(1.55rem,3vw,2.35rem); }
.c141-opening p { font-size:1.06rem; }
.c141-opening .c141-held-note { display:inline-block; padding:.35rem .6rem; margin:0 0 1rem; border:1px solid var(--c141-line); background:var(--c141-soft); color:var(--c141-accent); font-size:.86rem; font-weight:800; }
.c141-reading-flow { display:grid; gap:clamp(1.7rem,4vw,3.8rem); }
.c141-section { display:grid; grid-template-columns:minmax(200px,.74fr) minmax(0,1.26fr); gap:clamp(1rem,4vw,3rem); padding-block:1.5rem; border-top:1px solid var(--c141-line); }
.c141-section-heading { position:relative; }
.c141-section-heading h2 { max-width:18ch; }
.c141-section-text p:first-child { margin-top:0; }
.c141-section-text p:last-child { margin-bottom:0; }
.c141-sample,.c141-story,.c141-decision { border-radius:10px; padding:clamp(1.15rem,3vw,2rem); }
.c141-sample { width:min(100%,820px); margin-left:auto; background:var(--c141-soft); border:1px solid var(--c141-line); }
.c141-sample blockquote { margin:1.15rem 0; padding:1.1rem 1.25rem; border-left:5px solid var(--c141-accent); background:#fff; font-size:clamp(1.05rem,1.6vw,1.25rem); line-height:1.65; font-weight:650; }
.c141-sample-note { color:#38494f; font-size:.94rem; }
.c141-story { width:min(100%,760px); background:#fffaf1; border:1px solid #eadcc0; }
.c141-story p:last-child { margin-bottom:0; }
.c141-decision { background:#fff; border:2px solid var(--c141-accent); }
.c141-decision>p { margin-bottom:1.4rem; }
.c141-branches { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.9rem; }
.c141-branches article { padding:1rem; background:var(--c141-soft); border-top:4px solid var(--c141-accent); min-width:0; }
.c141-branches article>span { color:var(--c141-accent); font-size:.78rem; font-weight:850; }
.c141-branches h3 { font-size:1.06rem; margin:.35rem 0 .55rem; }
.c141-branches p { margin:.4rem 0; line-height:1.5; }
.c141-branches small { display:block; color:#43515a; line-height:1.5; font-size:.87rem; }
.c141-next,.c141-sources,.c141-faq { margin-top:clamp(2.5rem,5vw,4.5rem); }
.c141-next { background:var(--c141-soft); border-left:6px solid var(--c141-accent); padding:clamp(1.2rem,3vw,2rem); }
.c141-related { display:flex; gap:.6rem; flex-wrap:wrap; margin-top:1.2rem; }
.c141-source-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; }
.c141-source-list a { display:grid; gap:.45rem; padding:1rem; color:var(--c141-ink); text-decoration:none; border:1px solid var(--c141-line); background:#fff; overflow-wrap:anywhere; }
.c141-source-list a:hover strong { text-decoration:underline; }
.c141-source-list span,.c141-source-list small { line-height:1.5; }
.c141-source-list small { color:#4e5c62; font-size:.86rem; }
.c141-faq .faq-list { max-width:850px; }
.c141-hero-image-description { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.c141-phone-answer,.c141-phone-hero-photo { display:none; }
@media(min-width:900px){
  .dating-guide-layout-c141-diaspora-serious-career .c141-sample { margin-left:0; border-left:6px solid var(--c141-accent); }
  .dating-guide-layout-c141-diaspora-serious-career .c141-story { margin-left:auto; }
  .dating-guide-layout-c141-faith-led-clarity-weekend .c141-story { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:2rem; width:100%; }
  .dating-guide-layout-c141-faith-led-clarity-weekend .c141-story :is(.c141-kicker,h2) { grid-column:1 / -1; }
  .dating-guide-layout-c141-parents-safety-casual .c141-sample { margin-left:0; width:min(100%,700px); }
  .dating-guide-layout-c141-parents-safety-casual .c141-decision { width:min(100%,930px); margin-left:auto; }
  .dating-guide-layout-c141-professionals-serious-casual .c141-story { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:2rem; width:100%; }
  .dating-guide-layout-c141-professionals-serious-casual .c141-story :is(.c141-kicker,h2) { grid-column:1 / -1; }
  .dating-guide-layout-c141-students-low-pressure-casual .c141-sample { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); column-gap:2rem; width:100%; }
  .dating-guide-layout-c141-students-low-pressure-casual .c141-sample .c141-kicker { grid-column:1 / -1; }
  .dating-guide-layout-c141-students-low-pressure-casual .c141-sample blockquote { grid-column:2; grid-row:2 / span 2; align-self:center; }
  .dating-guide-layout-c141-students-low-pressure-casual .c141-sample-note { grid-column:1 / -1; }
}
@media(max-width:800px){
  .c141-section { grid-template-columns:1fr; gap:.35rem; }
  .c141-section-heading h2 { max-width:none; }
  .c141-branches { grid-template-columns:1fr; }
  .c141-source-list { grid-template-columns:1fr; }
}
@media(max-width:650px){
  .dating-guide-page:has(.c141-body) .dating-guide-hero-art--semantic { display:flex; flex-direction:column; }
  .dating-guide-page:has(.c141-body) .dating-guide-hero-art--semantic>.c141-hero-companion { position:static; display:block; order:-1; width:auto; height:auto; margin:0; padding:1rem 1.1rem; overflow:visible; clip:auto; white-space:normal; border:0; border-top:4px solid var(--c141-accent); background:#fff; }
  .dating-guide-page:has(.c141-body) .c141-phone-answer { display:block; }
  .c141-phone-answer>strong { color:var(--c141-accent); font-size:.8rem; font-weight:850; text-transform:uppercase; }
  .c141-phone-answer p { margin:.55rem 0 .9rem; line-height:1.55; font-weight:650; }
  .c141-phone-answer a { display:inline-flex; min-height:40px; align-items:center; margin:.2rem .4rem .2rem 0; padding:.4rem .65rem; background:var(--c141-soft); color:var(--c141-accent); border:1px solid var(--c141-line); text-decoration:none; font-weight:800; }
  .dating-guide-page:has(.c141-body) .dating-guide-hero-decision .dating-guide-answer { display:none; }
  .c141-body { padding-top:1.5rem; }
  .c141-toc { align-items:stretch; }
  .c141-toc strong { width:100%; }
}
@media(max-width:479px){
  .c141-hero-image-description { display:none; }
  .dating-guide-page:has(.c141-body) .dating-guide-hero-art--semantic>picture { display:none!important; }
  .dating-guide-page:has(.c141-body) .c141-phone-hero-photo { display:block; margin-top:1rem; }
  .dating-guide-page:has(.c141-body) .c141-phone-hero-photo img { width:100%; height:auto; display:block; }
  .c141-sample,.c141-story,.c141-decision { padding:1rem; }
}
