/* Cohort 110 only: five held guides with subject-led composition. */
.dating-guide-layout-professional-attention-ledger,
.dating-guide-layout-professional-attention-ledger .dating-guide-hero {
  --guide-accent: #16565a;
  --guide-wash: #edf6f2;
  --c110-paper: #f5faf7;
  --c110-line: #b7d1c9;
}

.dating-guide-layout-ghosting-two-column-notebook,
.dating-guide-layout-ghosting-two-column-notebook .dating-guide-hero {
  --guide-accent: #365776;
  --guide-wash: #edf2f7;
  --c110-paper: #f6f9fc;
  --c110-line: #c3d3e0;
}

.dating-guide-layout-student-four-controls-guide,
.dating-guide-layout-student-four-controls-guide .dating-guide-hero {
  --guide-accent: #3e5668;
  --guide-wash: #f0f4f7;
  --c110-paper: #f6f8fa;
  --c110-line: #bfccd4;
}

.dating-guide-layout-later-dating-weekend-journal,
.dating-guide-layout-later-dating-weekend-journal .dating-guide-hero {
  --guide-accent: #76534d;
  --guide-wash: #f8f0ec;
  --c110-paper: #fdf8f4;
  --c110-line: #dac7bc;
}

.dating-guide-layout-parent-digital-boundary-sheet,
.dating-guide-layout-parent-digital-boundary-sheet .dating-guide-hero {
  --guide-accent: #4d5c46;
  --guide-wash: #f0f4ec;
  --c110-paper: #f8faf5;
  --c110-line: #c3d0bb;
}

.dating-guide-page:is(
  .dating-guide-layout-professional-attention-ledger,
  .dating-guide-layout-ghosting-two-column-notebook,
  .dating-guide-layout-student-four-controls-guide,
  .dating-guide-layout-later-dating-weekend-journal,
  .dating-guide-layout-parent-digital-boundary-sheet
) .dating-guide-hero {
  background: var(--c110-paper);
}

.dating-guide-layout-professional-attention-ledger .dating-guide-hero h1,
.dating-guide-layout-student-four-controls-guide .dating-guide-hero h1 {
  max-width: 20ch;
  font-family: var(--font-body);
  font-weight: 850;
  letter-spacing: -.045em;
}

.dating-guide-layout-ghosting-two-column-notebook .dating-guide-hero h1,
.dating-guide-layout-later-dating-weekend-journal .dating-guide-hero h1,
.dating-guide-layout-parent-digital-boundary-sheet .dating-guide-hero h1 {
  max-width: 20ch;
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 700;
  letter-spacing: -.035em;
}

.dating-guide-layout-student-four-controls-guide .dating-guide-answer {
  border-radius: 2px;
  border-left: 5px solid var(--guide-accent);
  box-shadow: none;
}

.dating-guide-layout-ghosting-two-column-notebook .dating-guide-answer,
.dating-guide-layout-later-dating-weekend-journal .dating-guide-answer {
  border-radius: 2px;
  box-shadow: none;
}

.dating-guide-page:is(
  .dating-guide-layout-professional-attention-ledger,
  .dating-guide-layout-ghosting-two-column-notebook,
  .dating-guide-layout-student-four-controls-guide,
  .dating-guide-layout-later-dating-weekend-journal,
  .dating-guide-layout-parent-digital-boundary-sheet
) .dating-guide-answer p {
  font-weight: 500;
  line-height: 1.7;
}

.dating-guide-page .c110-reader-body {
  color: #283b41;
}

.dating-guide-page .c110-reader-toc {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .55rem 1rem;
  padding-block: 1rem;
  border-bottom: 1px solid var(--c110-line);
}

.c110-reader-toc span {
  width: 100%;
  color: var(--guide-accent);
  font-size: .8rem;
  font-weight: 850;
  letter-spacing: .035em;
}

.c110-reader-toc a {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  color: #25404a;
  font-size: .89rem;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: var(--c110-line);
  text-underline-offset: .2rem;
}

.dating-guide-page .c110-reader-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr);
  gap: clamp(1rem, 4vw, 3rem);
  align-items: start;
  padding-block: clamp(2rem, 5vw, 3.5rem);
}

.c110-reader-intro h2 {
  max-width: 29ch;
  margin: 0;
  font-size: clamp(1.7rem, 3.2vw, 2.55rem);
  line-height: 1.22;
}

.dating-guide-page .c110-reader-intro p {
  max-width: 63ch;
  margin: .15rem 0 0;
  padding-left: clamp(.8rem, 2vw, 1.2rem);
  border-left: 3px solid var(--c110-line);
  color: #42535a;
  line-height: 1.7;
}

.dating-guide-page .c110-reader-flow > .section,
.dating-guide-page .c110-reader-flow > .c110-reader-story {
  padding-block: clamp(1.65rem, 3.8vw, 3rem);
}

.c110-reader-section {
  border-top: 1px solid var(--c110-line);
}

.c110-reader-section-copy {
  max-width: 75ch;
}

.c110-reader-section h2 {
  max-width: 34ch;
  margin: .3rem 0 1rem;
  font-size: clamp(1.6rem, 3vw, 2.35rem);
  line-height: 1.22;
}

.dating-guide-page .c110-reader-section-copy > p:not(.dating-guide-kicker) {
  margin: .85rem 0 0;
  color: #36474e;
  line-height: 1.72;
}

.c110-reader-story {
  max-width: 70ch;
  margin: .6rem 0 2rem;
  border-left: 4px solid var(--guide-accent);
  padding-inline: clamp(1rem, 2.7vw, 1.6rem);
  background: var(--c110-paper);
}

.c110-reader-story h2 {
  margin: 0 0 .7rem;
  color: #253941;
  font-size: clamp(1.16rem, 2vw, 1.45rem);
  line-height: 1.3;
}

.dating-guide-page .c110-reader-story p {
  margin: 0;
  color: #34464d;
  font-size: 1rem;
  line-height: 1.72;
}

.dating-guide-page .c110-reader-lens {
  margin-block: 1.1rem 2rem;
  border-color: var(--c110-line);
  background: var(--c110-paper);
}

.c110-reader-lens .dating-guide-lens-card {
  border-color: var(--c110-line);
  background: #fff;
}

.dating-guide-page .c110-reader-figure {
  width: min(100%, 68rem);
  margin: .5rem auto clamp(1.8rem, 4vw, 3rem);
  box-shadow: none;
}

.c110-reader-figure figcaption {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: .3rem 1rem;
}

.c110-reader-figure figcaption .dating-guide-image-credit {
  font-size: .76rem;
}

.c110-visual-companion {
  min-width: 0;
  border-top: 3px solid var(--guide-accent);
  padding: clamp(1rem, 2.7vw, 1.5rem);
  background: var(--c110-paper);
}

.c110-visual-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: .3rem 1rem;
}

.dating-guide-page .c110-visual-heading h3 {
  max-width: 35ch;
  margin: 0;
  color: #263a42;
  font-size: clamp(1.17rem, 2vw, 1.5rem);
  line-height: 1.3;
}

.c110-visual-heading a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: var(--guide-accent);
  font-size: .92rem;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.dating-guide-page .c110-visual-companion :is(p, li, dd, blockquote) {
  color: #2a414a;
  font-size: .97rem;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.c110-visual-notice {
  margin: .65rem 0 .3rem;
}

.dating-guide-page .c110-visual-question {
  max-width: 56ch;
  margin: .3rem 0 .7rem;
  color: #1d343d;
  font-weight: 800;
}

.c110-visual-branches,
.c110-visual-explanations,
.c110-visual-comparison,
.c110-visual-questions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .8rem;
  margin: .7rem 0 0;
  padding: 0;
}

.c110-visual-branches li,
.c110-visual-explanations > div,
.c110-visual-comparison > section {
  min-width: 0;
  border: 1px solid var(--c110-line);
  padding: .85rem 1rem;
  background: #fff;
  list-style: none;
}

.c110-visual-branches strong,
.c110-visual-explanations dt,
.c110-visual-actions strong {
  display: block;
  margin-bottom: .24rem;
  color: var(--guide-accent);
  font-weight: 850;
}

.c110-visual-branches span,
.c110-visual-actions span {
  display: block;
}

.c110-visual-explanations dd {
  margin: 0;
}

.dating-guide-page .c110-visual-comparison h4 {
  margin: 0 0 .4rem;
  color: var(--guide-accent);
  font-size: 1.05rem;
}

.dating-guide-page .c110-visual-comparison p {
  margin: 0;
}

.c110-visual-list {
  display: grid;
  gap: .4rem 1rem;
  margin: .75rem 0 0;
  padding-left: 1.3rem;
}

.c110-visual-conversation-points {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.c110-visual-companion blockquote {
  max-width: 67ch;
  margin: .8rem 0;
  border-left: 4px solid var(--guide-accent);
  padding: .9rem 1.15rem;
  background: #fff;
}

.dating-guide-page .c110-visual-companion blockquote p {
  margin: 0;
  font-size: 1.06rem;
  font-weight: 700;
}

.c110-visual-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .8rem;
  margin: .8rem 0 0;
  padding: 0;
  counter-reset: c110-action;
}

.c110-visual-actions li {
  position: relative;
  min-width: 0;
  border-top: 1px solid var(--c110-line);
  padding: .75rem .55rem .75rem 2.7rem;
  list-style: none;
  counter-increment: c110-action;
}

.c110-visual-actions li::before {
  position: absolute;
  left: .4rem;
  top: .75rem;
  color: var(--guide-accent);
  content: counter(c110-action, decimal-leading-zero);
  font-size: .8rem;
  font-weight: 850;
}

.dating-guide-page .c110-visual-takeaway {
  margin: 1rem 0 0;
  border-top: 1px solid var(--c110-line);
  padding-top: .8rem;
  color: #233b43;
}

/* At full image size, the diagram already carries this exact lesson. Keep the
   equivalent HTML available to assistive technology without repeating five
   dense worksheets in the visual reading path. Phones show the HTML instead
   of reducing the diagram lettering below a readable size. */
@media (min-width: 761px) {
  .dating-guide-page .c110-visual-companion {
    border-top: 0;
    padding: .25rem .35rem .65rem;
    background: transparent;
  }

  .c110-visual-heading {
    justify-content: flex-end;
  }

  .c110-visual-heading h3,
  .c110-visual-detail {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }
}

.c110-reader-tool {
  border-top: 2px solid var(--guide-accent);
  border-bottom: 1px solid var(--c110-line);
  padding-inline: clamp(1rem, 2.5vw, 1.7rem);
  background: var(--c110-paper);
}

.c110-reader-tool h2,
.c110-reader-next h2,
.c110-reader-related h2,
.c110-reader-sources h2,
.c110-reader-faq h2 {
  max-width: 34ch;
  font-size: clamp(1.55rem, 2.8vw, 2.15rem);
  line-height: 1.25;
}

.c110-reader-tool > p {
  max-width: 67ch;
}

.c110-reader-prompts,
.c110-reader-scripts,
.c110-reader-next-links,
.c110-reader-related-columns,
.c110-reader-source-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.c110-reader-prompts section,
.c110-reader-scripts article {
  min-width: 0;
  border: 1px solid var(--c110-line);
  padding: 1rem;
  background: #fff;
}

.c110-reader-prompts h3,
.c110-reader-scripts h3 {
  margin: 0 0 .45rem;
  color: #263a42;
  font-size: 1.1rem;
}

.c110-reader-prompts ul {
  margin: .7rem 0 0;
  padding-left: 1.3rem;
}

.c110-reader-scripts blockquote {
  margin: .7rem 0;
  border-left: 3px solid var(--guide-accent);
  padding: .6rem .9rem;
  color: #263a42;
  font-weight: 700;
}

.c110-reader-next,
.c110-reader-related,
.c110-reader-sources,
.c110-reader-faq {
  border-top: 1px solid var(--c110-line);
  padding-block: clamp(2rem, 5vw, 3.8rem);
}

.c110-reader-next > p,
.c110-reader-sources > p {
  max-width: 70ch;
}

.c110-reader-next-links {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.c110-reader-next-links a,
.c110-reader-source-list a {
  display: block;
  min-width: 0;
  border: 1px solid var(--c110-line);
  padding: 1rem;
  background: #fff;
  text-decoration: none;
}

.c110-reader-next-links a strong,
.c110-reader-next-links a span,
.c110-reader-related a strong,
.c110-reader-related a span,
.c110-reader-source-list a span,
.c110-reader-source-list a strong,
.c110-reader-source-list a small {
  display: block;
}

.c110-reader-next-links a strong,
.c110-reader-related a strong,
.c110-reader-source-list a strong {
  color: var(--guide-accent);
}

.c110-reader-next-links a span,
.c110-reader-related a span,
.c110-reader-source-list a small {
  margin-top: .35rem;
  color: #43565d;
  font-size: .92rem;
  line-height: 1.56;
}

.dating-guide-page .c110-reader-disclosure {
  margin: 1.1rem 0 0;
  color: #536169;
  font-size: .86rem;
}

.c110-reader-related-columns h3 {
  color: #263a42;
  font-size: 1.1rem;
}

.c110-reader-related-columns ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.c110-reader-related-columns li + li {
  border-top: 1px solid var(--c110-line);
}

.c110-reader-related a {
  display: block;
  padding: .65rem 0;
  text-decoration: none;
}

.c110-reader-source-list a span {
  color: #56676e;
  font-size: .74rem;
  font-weight: 850;
  letter-spacing: .045em;
  text-transform: uppercase;
}

.c110-reader-source-list a strong {
  margin-top: .25rem;
}

.c110-reader-body :is(a, summary):focus-visible {
  outline: 3px solid var(--guide-accent);
  outline-offset: 3px;
}

/* Ledger: move from an exhausted Friday to a bounded two-week review. */
.dating-guide-layout-professional-attention-ledger .c110-reader-story {
  margin-left: auto;
  margin-right: 0;
  border-left-width: 0;
  border-top: 5px solid var(--guide-accent);
}

.dating-guide-layout-professional-attention-ledger .c110-reader-lens {
  border-radius: 2px;
  background: repeating-linear-gradient(180deg, #f7fbf8, #f7fbf8 3.3rem, #e8f1ec 3.36rem);
}

.dating-guide-layout-professional-attention-ledger .c110-reader-lens .dating-guide-lens-card {
  border-radius: 2px;
  border-top: 3px solid var(--guide-accent);
}

.dating-guide-layout-professional-attention-ledger .c110-reader-section {
  border-top-style: dashed;
}

.dating-guide-layout-professional-attention-ledger .c110-reader-tool-questions .c110-reader-prompts {
  max-width: 45rem;
  grid-template-columns: 1fr;
}

/* Notebook: the past, the current agreement and a later boundary have space. */
.dating-guide-layout-ghosting-two-column-notebook .c110-reader-section {
  border-top: 0;
  border-left: 3px solid var(--c110-line);
  margin-left: clamp(.1rem, 2vw, 1.2rem);
  padding-left: clamp(1rem, 3vw, 2rem);
}

.dating-guide-layout-ghosting-two-column-notebook .c110-reader-section h2,
.dating-guide-layout-ghosting-two-column-notebook .c110-reader-story h2 {
  font-family: Georgia, 'Times New Roman', serif;
}

.dating-guide-layout-ghosting-two-column-notebook .c110-reader-story {
  margin-left: clamp(0rem, 6vw, 4rem);
  border-left-color: var(--c110-line);
  background: repeating-linear-gradient(180deg, #fbfcfd, #fbfcfd 2.8rem, #e9eff4 2.85rem);
}

.dating-guide-layout-ghosting-two-column-notebook .c110-reader-tool-notebook .c110-reader-prompts section:first-child {
  border-left: 4px solid var(--c110-line);
}

.dating-guide-layout-ghosting-two-column-notebook .c110-reader-tool-notebook .c110-reader-prompts section:last-child {
  border-left: 4px solid var(--guide-accent);
}

/* Control sheet: outcomes and verification read like a real service decision. */
.dating-guide-layout-student-four-controls-guide .c110-reader-intro {
  border-bottom: 2px solid var(--guide-accent);
}

.dating-guide-layout-student-four-controls-guide .c110-reader-section {
  border-top-width: 2px;
}

.dating-guide-layout-student-four-controls-guide .c110-reader-story {
  border-left: 0;
  border-right: 4px solid var(--guide-accent);
  background: #f8fafb;
}

.dating-guide-layout-student-four-controls-guide .c110-reader-lens {
  border-radius: 2px;
  background: #f6f8fa;
}

.dating-guide-layout-student-four-controls-guide .c110-reader-lens .dating-guide-lens-card {
  border-radius: 2px;
}

.dating-guide-layout-student-four-controls-guide .c110-reader-tool-decisions {
  background: #fff;
}

/* Journal: one dated invitation, time to learn, no milestone ladder. */
.dating-guide-layout-later-dating-weekend-journal .c110-reader-section h2,
.dating-guide-layout-later-dating-weekend-journal .c110-reader-story h2,
.dating-guide-layout-later-dating-weekend-journal .c110-reader-lens h2 {
  font-family: Georgia, 'Times New Roman', serif;
}

.dating-guide-layout-later-dating-weekend-journal .c110-reader-story {
  border-left: 0;
  border-bottom: 3px solid var(--guide-accent);
  padding-left: 0;
}

.dating-guide-layout-later-dating-weekend-journal .c110-reader-lens {
  border-radius: 0 10px 10px 0;
  border-left: 5px solid var(--guide-accent);
}

.dating-guide-layout-later-dating-weekend-journal .c110-reader-section {
  border-top: 0;
  border-bottom: 1px solid var(--c110-line);
}

/* Boundary sheet: child privacy is a separate, visible reader decision. */
.dating-guide-layout-parent-digital-boundary-sheet .c110-reader-section {
  border-top: 0;
  border-left: 3px solid var(--c110-line);
  padding-left: clamp(1rem, 3vw, 2rem);
}

.dating-guide-layout-parent-digital-boundary-sheet #feature-c110-orbiting-family {
  border-left-color: var(--guide-accent);
  background: var(--c110-paper);
  padding-right: clamp(.8rem, 2vw, 1.5rem);
}

.dating-guide-layout-parent-digital-boundary-sheet .c110-reader-story {
  border-left: 0;
  border-top: 1px solid var(--c110-line);
  border-bottom: 1px solid var(--c110-line);
  background: #fff;
}

.dating-guide-layout-parent-digital-boundary-sheet .c110-reader-lens {
  border-radius: 0;
  border-left: 5px solid var(--guide-accent);
}

.dating-guide-layout-parent-digital-boundary-sheet .c110-reader-tool-privacy {
  background: #f7faf4;
}

@media (max-width: 760px) {
  .dating-guide-page .c110-reader-intro,
  .c110-reader-prompts,
  .c110-reader-scripts,
  .c110-reader-related-columns,
  .c110-reader-source-list,
  .c110-reader-next-links,
  .c110-visual-branches,
  .c110-visual-explanations,
  .c110-visual-comparison,
  .c110-visual-questions,
  .c110-visual-actions,
  .c110-visual-conversation-points {
    grid-template-columns: 1fr;
  }

  .dating-guide-page .c110-reader-toc {
    max-height: 9rem;
    overflow: auto;
  }

  .dating-guide-page .c110-reader-intro p {
    margin-top: 0;
  }

  .dating-guide-page .c110-reader-flow > .section,
  .dating-guide-page .c110-reader-flow > .c110-reader-story {
    padding-block: 1.65rem;
  }

  .dating-guide-page .c110-reader-figure {
    margin-bottom: 2rem;
  }

  /* Exact text lives in the HTML companion at phone width. */
  .dating-guide-page .c110-reader-figure > picture,
  .dating-guide-page .c110-reader-figure > figcaption {
    display: none;
  }

  .dating-guide-page .c110-visual-companion {
    padding: 1rem;
  }

  .dating-guide-layout-ghosting-two-column-notebook .c110-reader-section,
  .dating-guide-layout-parent-digital-boundary-sheet .c110-reader-section {
    margin-left: 0;
  }
}
