.mentor-intro { padding: 0; background: radial-gradient(ellipse at 10% 25%, #f2f4e7, transparent 60%); }
.mentor-back { color: #385a43; font-size: .85rem; text-decoration: none; }
.mentor-back:hover { text-decoration: underline; text-underline-offset: 5px; }
.mentor-intro-grid { display: grid; grid-template-columns: 1.3fr 1fr; gap: 70px; align-items: center; padding: 36px 0; }
.mentor-intro h1 { font-size: clamp(2.7rem,4.5vw,4rem); line-height: 1.07; margin: 0 0 26px; letter-spacing: -.04em; }
.mentor-intro h1 span { color: #64806c; }
.mentor-intro-grid > div > p:not(.eyebrow) { color: #576b5f; font-size: .96rem; max-width: 610px; line-height: 1.75; }
.mentor-intro-grid > div > .mentor-lead { font-size: 1.2rem; color: #2d513e; }
.mentor-intro .eyebrow, .mentor-section .eyebrow { font-size: .66rem; }
.mentor-note { position: relative; background: #fff2c5; padding: 34px; border: 1px solid #eddfae; border-radius: 24px; transform: rotate(1deg); }
.mentor-note-mark { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 50%; background: #ffd24f; font-size: 1.8rem; margin-bottom: 26px; }
.lgs-page .mentor-note h2 { font-size: 2rem; margin-bottom: 18px; }
.mentor-note p:not(.eyebrow) { font-size: .95rem; color: #566146; line-height: 1.7; }
.mentor-note-foot { border-top: 1px solid #e1d5a7; padding-top: 18px; margin-top: 22px; color: #4a6040; font-size: .75rem; }
.mentor-section-nav { display: flex; flex-wrap: wrap; gap: 14px 30px; padding: 24px 0; border-top: 1px solid #dce4d7; }
.mentor-section-nav a { font-size: .8rem; font-weight: 700; color: #3b5e43; text-decoration: none; }
.mentor-section-nav a:hover { text-decoration: underline; text-underline-offset: 6px; }
.mentor-section { padding: 76px 0; scroll-margin-top: 100px; }
.mentor-section-heading { max-width: 780px; margin-bottom: 32px; }
.mentor-section-heading > p:last-child, .mentor-meeting-grid > div > p:last-child { color: #5b6d62; line-height: 1.75; }
.mentor-insights { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.mentor-insights article { border: 1px solid #dce4d7; border-radius: 18px; padding: 26px; }
.mentor-insights article > span { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; background: #edf2e6; color: #456442; font-size: 1.5rem; }
.mentor-insights h3 { font-size: 1.45rem; line-height: 1.2; margin: 22px 0 12px; }
.mentor-insights p { font-size: .9rem; color: #5b6d62; margin: 0; }
.mentor-example { margin-top: 30px; background: #f1f4eb; border-radius: 20px; padding: 30px; }
.mentor-example h3 { font-size: 1.5rem; margin: 16px 0 26px; }
.mentor-example ol { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 30px; list-style: none; margin: 0; padding: 0; }
.mentor-example li { border-top: 2px solid #c9d5bf; padding-top: 16px; }
.mentor-example small { font-size: .65rem; font-weight: 700; letter-spacing: .12em; color: #526c48; }
.mentor-example li p { font-size: .9rem; color: #435e49; margin: 10px 0 0; }
.mentor-meeting { background: #f1f4eb; }
.mentor-meeting-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; }
.mentor-conversation { list-style: none; padding: 0; margin: 0; }
.mentor-conversation li { display: flex; gap: 22px; padding-bottom: 28px; position: relative; }
.mentor-conversation li:last-child { padding-bottom: 0; }
.mentor-conversation li:not(:last-child)::after { content: ''; position: absolute; top: 42px; bottom: 0; left: 20px; width: 1px; background: #cbd7c1; }
.mentor-conversation li > span { width: 42px; height: 42px; flex-shrink: 0; border-radius: 50%; display: grid; place-items: center; background: #fffefa; border: 1px solid #d6dfce; font-size: .75rem; font-weight: 700; }
.mentor-conversation li:last-child > span { background: #ffd24f; border-color: #ffd24f; }
.mentor-conversation h3 { font-size: 1.4rem; margin: 5px 0 10px; }
.mentor-conversation p { font-size: .9rem; color: #5b6d62; margin: 0; }
.mentor-faq { display: grid; grid-template-columns: 1fr 1.3fr; gap: 60px; }
.mentor-faq details { padding: 22px 0; border-bottom: 1px solid #dce4d7; }
.mentor-faq details:first-child { padding-top: 0; }
.mentor-faq summary { cursor: pointer; font-weight: 700; font-size: 1rem; color: #214b36; }
.mentor-faq details p { font-size: .9rem; color: #5b6d62; line-height: 1.7; }
.mentor-faq details a { color: #31583d; font-size: .85rem; }
.mentoring-page .program-cta { padding-top: 0; }
@media(max-width: 800px) {
 .mentor-intro-grid, .mentor-meeting-grid, .mentor-faq { grid-template-columns: 1fr; gap: 30px; }
 .mentor-note { transform: none; }
 .mentor-insights { gap: 14px; }
 .mentor-insights article { padding: 20px; }
 .mentor-insights h3 { font-size: 1.2rem; }
}
@media(max-width: 550px) {
 .mentor-intro-grid { padding: 32px 0; }
 .mentor-intro h1 { font-size: 2.65rem; }
 .mentor-note { padding: 26px; }
 .mentor-section { padding: 48px 0; }
 .mentor-insights, .mentor-example ol { grid-template-columns: 1fr; }
 .mentor-example { padding: 24px; }
 .mentor-section-nav { gap: 16px 24px; }
 .mentor-conversation { margin-top: 8px; }
}

/* The sample series rises from its baseline; chart labels stay still. */
.mentoring-page .mentor-chart-series { transform-box: view-box; transform-origin: 0 128px; }
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .mentoring-page :is(.tracking-icon, .mentor-note-mark, .mentor-conversation li > span, .plan-check, .plan-next) { transition: translate 220ms ease, rotate 220ms ease; }
  .mentoring-page .tracking-features article:hover .tracking-icon,
  .mentoring-page .mentor-note:hover .mentor-note-mark,
  .mentoring-page .mentor-conversation li:hover > span,
  .mentoring-page .preview-plan > div:hover :is(.plan-check, .plan-next) { translate: 0 -3px; rotate: -6deg; }
  .mentoring-page .program-cta-actions .button > span { transition: translate 220ms ease; }
  .mentoring-page .program-cta-actions .button:is(:hover, :focus-visible) > span { translate: 3px -3px; }
}

/* Friendly questions and a concise next step. */
.mentoring-page .mentor-friendly-faq { padding: 48px 0 32px; }
.mentor-friendly-faq .mentor-faq { grid-template-columns: .85fr 1.25fr; gap: clamp(28px, 5vw, 64px); align-items: start; }
.mentor-faq-doodle { width: 76px; padding: 12px; border-radius: 20px 20px 20px 5px; background: #fff0b8; color: #113b2d; margin-bottom: 20px; transform: rotate(-5deg); }
.mentor-faq-doodle svg { display: block; width: 100%; }
.mentoring-page .mentor-faq-intro h2 { font-size: clamp(2rem, 3.3vw, 2.8rem); line-height: 1.12; margin-bottom: 16px; }
.mentor-faq-intro > p { max-width: 310px; font-size: 1rem; line-height: 1.65; color: #53695b; margin: 0 0 18px; }
.mentor-faq-intro .mentor-back { display: inline-flex; align-items: center; gap: 18px; min-height: 44px; font-weight: 700; text-decoration: underline; text-underline-offset: 5px; }
.mentor-faq-cards { display: grid; gap: 10px; }
.mentor-friendly-faq .mentor-faq details { padding: 0; border: 1px solid #d7e2d2; border-radius: 16px; background: #f3f6ed; overflow: hidden; }
.mentor-friendly-faq .mentor-faq details[open] { background: #fff9e7; border-color: #e9dba5; }
.mentor-friendly-faq .mentor-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 66px; padding: 16px 20px; list-style: none; line-height: 1.4; }
.mentor-friendly-faq summary::-webkit-details-marker { display: none; }
.mentor-faq-plus { display: grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px; border-radius: 50%; background: #fffefa; color: #113b2d; font-size: 1.4rem; font-weight: 400; }
.mentor-friendly-faq details[open] .mentor-faq-plus { background: #ffd24f; transform: rotate(45deg); }
.mentor-faq-answer { padding: 0 20px 20px; }
.mentor-friendly-faq .mentor-faq-answer p { margin: 0; font-size: .9375rem; }
.mentor-faq-answer a { display: inline-block; margin-top: 12px; min-height: 32px; text-underline-offset: 4px; }
.mentor-faq-links { display: flex; flex-wrap: wrap; gap: 0 20px; }
.mentor-friendly-faq summary:focus-visible { outline: 3px solid #8b7014; outline-offset: -4px; }
.mentor-apply { padding: 0 0 48px; }
.mentor-apply-panel { display: flex; align-items: center; justify-content: space-between; gap: 32px; background: #113b2d; color: #fffefa; padding: 36px 40px; border-radius: 24px; }
.mentor-apply-copy .mentor-apply-label { color: #d2e1cc; font-size: .8125rem; margin: 0 0 12px; }
.mentoring-page .mentor-apply h2 { color: #fffefa; font-size: clamp(1.9rem, 3.4vw, 2.8rem); line-height: 1.12; margin: 0 0 14px; }
.mentor-apply-copy > p:last-child { color: #d2e1cc; margin: 0; font-size: .9375rem; }
.mentor-apply-actions { display: flex; flex-direction: column; align-items: center; gap: 14px; flex-shrink: 0; }
.mentor-apply-actions .button { background: #ffd24f; color: #113b2d; box-shadow: none; gap: 30px; min-height: 54px; }
.mentor-apply-actions .button:hover { background: #ffe080; }
.mentor-apply-contact { color: #e3eddd; font-size: .8125rem; padding: 8px 0; text-underline-offset: 4px; }
.mentor-apply a:focus-visible { outline: 3px solid #ffd24f; outline-offset: 4px; }
@media (hover: hover) and (pointer: fine) {
  .mentor-friendly-faq summary:hover { background: #fff0b8; }
}
@media (prefers-reduced-motion: no-preference) {
  .mentor-faq-plus { transition: transform 220ms ease, background-color 220ms ease; }
  .mentor-friendly-faq summary { transition: background-color 180ms ease; }
  .mentor-friendly-faq details[open] .mentor-faq-answer { animation: mentor-faq-reveal 250ms ease-out; }
  @keyframes mentor-faq-reveal { from { opacity: .3; translate: 0 -5px; } to { opacity: 1; translate: 0 0; } }
  .mentor-apply-actions .button > span { transition: translate 200ms ease; }
  .mentor-apply-actions .button:is(:hover, :focus-visible) > span { translate: 3px -3px; }
}
@media (max-width: 800px) {
  .mentor-friendly-faq .mentor-faq { grid-template-columns: 1fr; gap: 24px; }
  .mentor-faq-doodle { display: none; }
  .mentor-faq-intro > p { max-width: 460px; }
  .mentor-apply-panel { flex-direction: column; align-items: flex-start; padding: 28px; gap: 24px; }
  .mentor-apply-actions { align-items: flex-start; }
}
@media (max-width: 450px) {
  .mentoring-page .mentor-friendly-faq { padding-top: 32px; }
  .mentor-friendly-faq .mentor-faq summary { padding: 14px 16px; gap: 12px; font-size: .9375rem; }
  .mentor-faq-answer { padding: 0 16px 18px; }
  .mentor-apply-panel { padding: 26px 22px; }
}
