/* Native, responsive illustrations for the profile and app-selection guides. */
.article-jump { display: flex; flex-wrap: wrap; gap: 8px 20px; padding: 16px 0; margin-bottom: 24px; border-block: 1px solid #dbe4e0; font-size: 12px; font-weight: 600; }
.guide-content .visibility-visual { background: #f5f0e6; }
.guide-content .diagnostic-stages { list-style: none; padding: 0 30px 28px; margin: 0; }
.guide-content .diagnostic-stages li { display: grid; grid-template-columns: 48px 1fr 130px; align-items: center; gap: 20px; margin: 0; padding: 20px 0; border-top: 1px solid #dcd9ca; }
.stage-number { color: #9e6548; font-size: 31px; letter-spacing: -.05em; font-weight: 600; }
.diagnostic-stages strong { display: block; font-size: 20px; }
.guide-content .diagnostic-stages p { margin: 4px 0 0; font-size: 13px; line-height: 1.6; color: #60716a; }
.diagnostic-stages a { justify-self: end; font-size: 12px; line-height: 1.5; font-weight: 650; }
.visibility-visual .visual-footer { background: #1f4138; color: #e6eee5 !important; }
.photo-job-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0 30px 28px; gap: 12px; }
.photo-job-grid > div { background: #e4ece1; border: 1px solid #c9d5c5; border-radius: 8px; padding: 20px 16px; }
.photo-job-grid > div:nth-child(2) { background: #f4e5c9; border-color: #e1cfab; }
.photo-job-grid > div:nth-child(3) { background: #f0ded2; border-color: #debdab; }
.photo-job-icon { display: block; width: 76px; margin-bottom: 20px; color: #577459; }
.photo-job-icon svg { display: block; width: 100%; height: auto; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.photo-job-grid strong { display: block; margin-top: 10px; font-size: 16px; line-height: 1.4; }
.guide-content .photo-job-grid p { margin: 8px 0 0; font-size: 12px; line-height: 1.7; color: #5b6b5c; }
.guide-content .action-plan { padding: 0; margin: 24px 0; list-style: none; counter-reset: plan; }
.guide-content .action-plan li { position: relative; padding: 16px 18px 16px 55px; margin: 0 0 10px; border: 1px solid #d4dfd8; border-radius: 8px; background: #f6f9f6; font-size: 14px; line-height: 1.7; counter-increment: plan; }
.action-plan li::before { content: counter(plan, decimal-leading-zero); position: absolute; left: 18px; top: 18px; color: #678675; font-size: 12px; font-weight: 650; }
.guide-content .headline-visual { background: #edf4ef; border-color: #cbdccd; }
.headline-anatomy { display: grid; grid-template-columns: 1fr 30px 1.2fr; align-items: center; gap: 12px; padding: 0 30px 28px; }
.headline-anatomy > div { padding: 20px; background: #dce9dd; border-bottom: 3px solid #66896c; }
.headline-anatomy > div:last-child { background: #f5e4bd; border-color: #b2954b; }
.guide-content .headline-anatomy p { margin: 10px 0 0; font-size: 23px; font-weight: 600; line-height: 1.4; }
.headline-plus { text-align: center; color: #6d8574; font-size: 30px; }
.headline-result { background: #23483c; padding: 24px 30px; color: #fff; }
.headline-result .annotation-label { color: #b7d3bd; }
.guide-content .headline-result p { margin: 10px 0 8px; font-size: 23px; line-height: 1.5; font-weight: 500; }
.headline-result > span:last-child { font-size: 12px; color: #c5d5c9; }
.guide-content .headline-examples { padding: 0; list-style: none; margin: 20px 0 32px; border-top: 1px solid #dbe4e0; }
.guide-content .headline-examples li { display: grid; grid-template-columns: 24px 1fr auto; gap: 14px; align-items: center; padding: 18px 0; margin: 0; border-bottom: 1px solid #dbe4e0; }
.guide-content .headline-examples p { margin: 0; font-size: 16px; font-weight: 600; line-height: 1.6; }
.headline-count { display: block; font-size: 12px; color: #64766b; margin-top: 4px; }
.headline-examples .bio-copy { font-size: 12px; }
.headline-checker { border: 1px solid #c8d8cc; border-radius: 12px; padding: 24px; background: #eef5ee; }
.headline-checker label { display: block; font-size: 14px; font-weight: 650; margin-bottom: 8px; }
.headline-checker input { width: 100%; min-width: 0; box-sizing: border-box; border: 1px solid #9bb4a2; border-radius: 6px; padding: 14px; background: #fff; color: #244538; font: inherit; font-size: 16px; }
.headline-checker output { display: block; margin: 12px 0; font-size: 14px; font-weight: 600; color: #305f48; }
.guide-content .headline-checker p { margin: 0; font-size: 12px; line-height: 1.7; color: #596f5e; }
.guide-content .mutual-visual { background: #f8f3eb; }
.match-venn { display: block; width: min(100%, 540px); height: auto; margin-inline: auto; padding: 0 16px 20px; box-sizing: border-box; }
.symptom-map { margin: 24px 0; border: 1px solid #d4dfd7; border-radius: 12px; overflow: hidden; }
.guide-content .symptom-map a { display: grid; grid-template-columns: 32px 1fr 20px; gap: 16px; align-items: center; padding: 22px; text-decoration: none; background: #f2f6ef; }
.symptom-map a + a { border-top: 1px solid #d4dfd7; }
.symptom-map a:hover { background: #e3eee3; }
.symptom-number { color: #8a7550; font-size: 14px; }
.symptom-map strong { display: block; font-size: 17px; line-height: 1.5; }
.symptom-map small { display: block; margin-top: 4px; color: #5e7166; font-size: 13px; line-height: 1.6; }
.profile-audit { margin: 0 30px 28px; }
.profile-audit > div { display: grid; grid-template-columns: 1.1fr 1fr; gap: 20px; padding: 18px 0; border-top: 1px solid #d2dacc; font-size: 14px; line-height: 1.6; }
.profile-audit span { color: #6c7266; }
.guide-content .shortlist-visual { background: #f3f1e8; }
.app-picks { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 0 30px 28px; }
.guide-content .app-picks a { display: flex; flex-direction: column; position: relative; padding: 22px 18px; background: #e3ebdf; border: 1px solid #cbd7c3; border-radius: 9px; color: #2d4635; text-decoration: none; }
.guide-content .app-picks a:nth-child(2) { background: #f2e1c6; border-color: #dfccac; }
.guide-content .app-picks a:nth-child(3) { background: #ebdcd1; border-color: #d9c2b1; }
.app-picks a:hover { outline: 2px solid #667f63; outline-offset: 2px; }
.pick-number { display: block; margin-bottom: 24px; color: #6d7b5f; font-size: 30px; font-weight: 500; line-height: 1; }
.app-picks strong { display: block; margin-top: 12px; font-size: 25px; line-height: 1.15; letter-spacing: -.04em; }
.guide-content .app-picks p { margin: 16px 0 22px; font-size: 12px; line-height: 1.8; color: #5c6858; }
.pick-link { display: block; margin-top: auto; font-size: 12px; font-weight: 650; }
.guide-content .professional-table th:first-child { width: 24%; }
.guide-content .professional-table th:nth-child(2) { width: 35%; }
.routine-bar { display: flex; height: 65px; margin: 0 30px; border-radius: 8px; overflow: hidden; }
.routine-bar span { display: grid; place-items: center; flex: 5; background: #305d49; color: #fff; font-size: 28px; font-weight: 600; }
.routine-bar span:nth-child(2) { flex: 7; background: #d5af60; color: #45391e; }
.routine-bar span:nth-child(3) { flex: 3; background: #ce967a; color: #452d24; }
.routine-legend { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; padding: 22px 30px 26px; }
.routine-legend b { display: block; font-size: 12px; color: #6b735f; }
.routine-legend strong { display: block; margin-top: 6px; font-size: 17px; }
.guide-content .routine-legend p { margin: 6px 0 0; font-size: 12px; line-height: 1.7; color: #5c6c5c; }
.guide-content .about-blueprint { background: #eff2e7; }
.blueprint-lines { padding: 0 30px 28px; }
.blueprint-lines > div { display: grid; grid-template-columns: 125px 1fr; gap: 18px; align-items: start; padding: 18px 0; border-top: 1px solid #d3dbca; }
.blueprint-lines > div > span { display: block; padding-top: 4px; color: #5d7459; font-size: 12px; line-height: 1.6; }
.blueprint-lines b { display: inline-block; margin-right: 7px; color: #8d7850; }
.guide-content .blueprint-lines p { margin: 0; font-size: 19px; line-height: 1.6; letter-spacing: -.015em; }
.profile-template { padding: 26px; border: 1px solid #d7dece; border-radius: 10px; margin: 24px 0; background: #f5f7ee; }
.profile-template .annotation-label { margin-bottom: 18px; }
.guide-content .profile-template p { margin: 10px 0; font-size: 17px; }
.profile-template mark { background: #e1eacb; color: #37513a; padding: 1px 4px; box-decoration-break: clone; }
.short-bio-edit { border-left: 3px solid #799765; padding: 20px 24px; margin: 24px 0; background: #f1f5e9; }
.guide-content .short-bio-edit p { margin: 10px 0 0; font-size: 17px; }
@media (max-width: 700px) {
  .article-jump { gap: 8px 16px; font-size: 12px; }
  .guide-content .diagnostic-stages { padding: 0 20px 20px; }
  .guide-content .diagnostic-stages li { grid-template-columns: 34px 1fr; gap: 8px 12px; padding: 18px 0; }
  .stage-number { font-size: 26px; align-self: start; }
  .diagnostic-stages a { grid-column: 2; justify-self: start; }
  .diagnostic-stages strong { font-size: 19px; }
  .photo-job-grid { grid-template-columns: 1fr; margin: 0 20px 22px; gap: 10px; }
  .photo-job-grid > div { padding: 18px; min-height: 110px; }
  .photo-job-icon { float: right; width: 50px; margin: 8px 0 8px 14px; }
  .headline-anatomy { grid-template-columns: 1fr; gap: 8px; padding: 0 20px 22px; }
  .headline-anatomy > div { padding: 16px; }
  .headline-plus { font-size: 25px; line-height: 1; }
  .guide-content .headline-anatomy p, .guide-content .headline-result p { font-size: 21px; }
  .headline-result { padding: 22px 20px; }
  .guide-content .headline-examples li { grid-template-columns: 22px 1fr; gap: 8px; padding: 16px 0; }
  .headline-examples .bio-copy { grid-column: 2; justify-self: start; }
  .headline-checker { padding: 20px; }
  .headline-checker input { padding: 12px; }
  .match-venn { padding: 0 0 18px; }
  .guide-content .symptom-map a { grid-template-columns: 24px 1fr 12px; padding: 18px 14px; gap: 10px; }
  .symptom-map strong { font-size: 16px; }
  .symptom-map small { font-size: 12px; }
  .profile-audit { margin: 0 20px 22px; }
  .profile-audit > div { grid-template-columns: 1fr; gap: 4px; padding: 15px 0; }
  .app-picks { grid-template-columns: 1fr; gap: 10px; padding: 0 20px 22px; }
  .guide-content .app-picks a { padding: 20px; }
  .pick-number { position: absolute; top: 20px; right: 20px; font-size: 23px; }
  .app-picks .annotation-label { padding-right: 30px; }
  .app-picks strong { font-size: 27px; }
  .app-picks strong br { display: none; }
  .app-picks strong br::after { content: ' '; }
  .guide-content .app-picks p { margin: 12px 0; font-size: 13px; }
  .pick-link { font-size: 12px; }
  .guide-content .professional-table { font-size: 12px; }
  .guide-content .professional-table th, .guide-content .professional-table td { padding: 12px 7px; }
  .routine-bar { margin: 0 20px; height: 55px; }
  .routine-legend { grid-template-columns: 1fr; gap: 16px; padding: 20px; }
  .routine-legend > div { display: grid; grid-template-columns: 48px 1fr; gap: 0 10px; }
  .routine-legend b { grid-row: span 2; padding-top: 5px; }
  .routine-legend strong { margin: 0; }
  .blueprint-lines { padding: 0 20px 22px; }
  .blueprint-lines > div { grid-template-columns: 1fr; gap: 7px; padding: 16px 0; }
  .guide-content .blueprint-lines p { font-size: 18px; }
  .profile-template { padding: 20px; }
  .guide-content .profile-template p { font-size: 16px; }
}
