/* The approved Contour prototype, scoped to the age chapter only. */
#dc-root #lifestages.r2-age-contour{padding:0;min-height:0;border:0;background:#000;color:#fff;--rose:#de96a2;font-family:'Equinox Sans',Arial,sans-serif}
#lifestages.r2-age-contour *{box-sizing:border-box}
#lifestages.r2-age-contour h2,#lifestages.r2-age-contour h3,#lifestages.r2-age-contour p,#lifestages.r2-age-contour figure{margin:0}
#lifestages.r2-age-contour .r2-age-intro{padding:80px var(--gutter,4.5vw) 16px;background:#000;color:#fff} /* the page's gutter (4.5vw ran 0.8px past it at 1440 and 4px at 1512; the precision pass, 2026-10-09) */
#dc-root #lifestages.r2-age-contour .r2-age-intro h2{font-size:clamp(36px,4.25vw,66px);font-weight:300;line-height:1.04;letter-spacing:-.035em;text-transform:uppercase;text-wrap:initial;max-width:24ch}
#lifestages.r2-age-contour .organic-story{background:#000;color:#fff;overflow:clip;padding-top:0}
#lifestages.r2-age-contour .organic-chapter{position:relative;max-width:1240px;margin:0 auto;isolation:isolate}
#lifestages.r2-age-contour .organic-youth{display:grid;grid-template-columns:.84fr 1.16fr;grid-template-rows:1fr 1fr;column-gap:5.5%;padding:40px 6% 64px;min-height:0}
#lifestages.r2-age-contour .story-heading,#lifestages.r2-age-contour .story-copy,#lifestages.r2-age-contour .depth-copy,#lifestages.r2-age-contour .story-coda{position:relative;z-index:2;transform:translateZ(0)}
#lifestages.r2-age-contour .story-heading{align-self:end}
#lifestages.r2-age-contour .organic-chapter h3{font-size:clamp(32px,3.15vw,48px);font-weight:300;line-height:1.08;letter-spacing:-.035em;text-transform:none;text-wrap:balance}
#lifestages.r2-age-contour .story-heading h3{max-width:8em}
#lifestages.r2-age-contour .story-copy{padding-top:24px;font-size:clamp(18px,1.45vw,21px);font-weight:300;line-height:1.42;letter-spacing:-.01em;align-self:start}
#lifestages.r2-age-contour .story-copy p{margin:0 0 .5em;max-width:22em}
#lifestages.r2-age-contour .photo-stage{position:relative;z-index:2;overflow:hidden;align-self:start;height:clamp(400px,52svh,500px);min-height:0;margin-top:0}
#lifestages.r2-age-contour .age-photo{display:block;width:100%;height:100%;overflow:hidden}
#lifestages.r2-age-contour .age-photo source{display:none}
#lifestages.r2-age-contour .age-photo img{display:block;width:100%;height:100%;object-fit:cover;scale:1.09}
#lifestages.r2-age-contour .photo-youth{grid-column:2;grid-row:1/3}
#lifestages.r2-age-contour .photo-youth img{object-position:50% 50%}
#lifestages.r2-age-contour .story-strands{position:absolute;left:0;bottom:-48px;width:100%;height:160px;pointer-events:none;z-index:1;color:var(--rose);overflow:visible;opacity:.72}
#lifestages.r2-age-contour .story-strands path{stroke:currentColor;stroke-width:.8;opacity:.5;vector-effect:non-scaling-stroke}
#lifestages.r2-age-contour .organic-depth{display:grid;grid-template-columns:.92fr 1.08fr;column-gap:7%;padding:40px 6% 60px}
#lifestages.r2-age-contour .photo-depth{grid-column:1;grid-row:1}
#lifestages.r2-age-contour .photo-depth img{object-position:62% 70%}
#lifestages.r2-age-contour .depth-copy{grid-column:2;grid-row:1;align-self:center} /* ≥761: end, in r5.css (the precision pass) */
#lifestages.r2-age-contour .depth-copy h3{max-width:12em}
#lifestages.r2-age-contour .depth-copy .story-copy{padding-top:24px}
#lifestages.r2-age-contour .story-coda{grid-column:1/-1;margin:44px auto 0;max-width:28em;text-align:center;font-size:clamp(25px,2.25vw,34px);font-weight:300;line-height:1.22;letter-spacing:-.025em;text-wrap:balance}
#lifestages.r2-age-contour .organic-stat{position:absolute;z-index:3;width:260px;height:248px;color:#111;left:8px;bottom:8px;display:grid;place-items:center;--rose:#8b4657;isolation:isolate}
#lifestages.r2-age-contour .photo-depth .organic-stat{left:auto;bottom:auto;right:8px;top:8px}
#lifestages.r2-age-contour .stat-art{position:absolute;inset:0;width:100%;height:100%;stroke:#6c3d4a;stroke-width:.7;pointer-events:none}
#lifestages.r2-age-contour .stat-art path{vector-effect:non-scaling-stroke}
#lifestages.r2-age-contour .stat-content{position:relative;width:165px;text-align:center;display:flex;flex-direction:column;align-items:center;z-index:1}
#lifestages.r2-age-contour .stat-number{display:block;font-size:80px;font-weight:300;line-height:.86;letter-spacing:-.07em;font-variant-numeric:tabular-nums;white-space:nowrap}
#lifestages.r2-age-contour .stat-number small{display:inline-block;font-size:.31em;letter-spacing:-.015em;vertical-align:top;margin-top:.15em;margin-left:5px}
#lifestages.r2-age-contour .stat-copy{font-size:14px;line-height:1.24;margin-top:10px;max-width:165px;text-wrap:pretty}
#lifestages.r2-age-contour .signal-badge{display:inline-flex;justify-content:center;align-items:center;width:48px;height:48px;background:transparent;border:0;padding:0;color:inherit;position:relative;flex:none;margin-top:5px;scroll-margin-top:80px;cursor:pointer;touch-action:manipulation}
#lifestages.r2-age-contour .signal-badge svg{width:48px;height:48px;fill:none;stroke:currentColor;stroke-width:1}
#lifestages.r2-age-contour .signal-wave,#lifestages.r2-age-contour .signal-echo{stroke:var(--rose)}
#lifestages.r2-age-contour .signal-echo{opacity:0}
#lifestages.r2-age-contour .signal-tip{position:absolute;top:calc(100% + 4px);left:50%;transform:translateX(-50%);white-space:nowrap;font-size:12px;padding:7px 10px;color:#fff;background:#111;border:1px solid #666;visibility:hidden;opacity:0;pointer-events:none}
#lifestages.r2-age-contour .signal-badge:focus-visible{outline:2px solid currentColor;outline-offset:5px}
#lifestages.r2-age-contour .signal-badge:focus-visible .signal-tip{visibility:visible;opacity:1}
#lifestages.r2-age-contour .signal-badge:active{transform:scale(.97)}
@media(hover:hover) and (pointer:fine){
 #lifestages.r2-age-contour .signal-badge:hover .signal-tip{visibility:visible;opacity:1}
 #lifestages.r2-age-contour .signal-badge:hover circle{stroke:var(--rose)}
}
@media(min-width:761px) and (max-width:1050px){
 #lifestages.r2-age-contour .organic-youth,#lifestages.r2-age-contour .organic-depth{column-gap:5%;padding-left:5%;padding-right:5%}
 #lifestages.r2-age-contour .organic-stat{width:236px;height:238px;left:0;bottom:0}
 #lifestages.r2-age-contour .photo-depth .organic-stat{right:0;top:0}
 #lifestages.r2-age-contour .stat-number{font-size:72px}
}
@media(max-width:760px){
 #lifestages.r2-age-contour .r2-age-intro{padding:44px 24px 12px}
 #dc-root #lifestages.r2-age-contour .r2-age-intro h2{font-size:36px;max-width:18ch}
 #lifestages.r2-age-contour .age-desktop-break{display:none}
 #lifestages.r2-age-contour .organic-youth,#lifestages.r2-age-contour .organic-depth{display:flex;flex-direction:column;min-height:0;padding:28px 22px 38px}
 #lifestages.r2-age-contour .story-heading{order:0;align-self:start}
 #lifestages.r2-age-contour .organic-chapter h3{font-size:clamp(27px,7.2vw,32px);line-height:1.12;letter-spacing:-.025em;max-width:13em}
 #lifestages.r2-age-contour .photo-stage{width:100%;height:clamp(410px,56svh,460px);min-height:0;margin-top:22px}
 #lifestages.r2-age-contour .photo-youth{order:1}
 #lifestages.r2-age-contour .organic-youth>.story-copy{order:2}
 #lifestages.r2-age-contour .story-copy,#lifestages.r2-age-contour .depth-copy .story-copy{font-size:18px;line-height:1.42;padding-top:22px}
 #lifestages.r2-age-contour .story-copy p{max-width:25em}
 #lifestages.r2-age-contour .story-strands{width:100%;left:0;bottom:-38px;height:100px}
 #lifestages.r2-age-contour .story-strands path:not(:nth-child(3n + 1)){display:none}
 #lifestages.r2-age-contour .organic-depth{padding-top:24px;padding-bottom:40px}
 #lifestages.r2-age-contour .depth-copy{display:contents}
 #lifestages.r2-age-contour .depth-copy h3{order:0}
 #lifestages.r2-age-contour .photo-depth{order:1}
 #lifestages.r2-age-contour .photo-depth img{object-position:62% 74%}
 #lifestages.r2-age-contour .depth-copy .story-copy{order:2}
 #lifestages.r2-age-contour .story-coda{order:3;margin-top:28px;font-size:23px;line-height:1.28;max-width:24em;text-align:left}
 #lifestages.r2-age-contour .organic-stat{width:224px;height:234px;left:2px;bottom:2px}
 #lifestages.r2-age-contour .photo-depth .organic-stat{right:2px;top:2px}
 #lifestages.r2-age-contour .stat-content{width:154px}
 #lifestages.r2-age-contour .stat-number{font-size:68px}
 #lifestages.r2-age-contour .stat-copy{max-width:154px;font-size:14px}
 #lifestages.r2-age-contour .signal-badge,#lifestages.r2-age-contour .signal-badge svg{width:44px;height:44px}
 #lifestages.r2-age-contour .signal-tip{display:none}
}
@media(prefers-reduced-motion:reduce){
 #lifestages.r2-age-contour .photo-stage img{transform:none!important}
 #lifestages.r2-age-contour .organic-stat,#lifestages.r2-age-contour .stat-content{opacity:1!important;transform:none!important}
 #lifestages.r2-age-contour .stat-art path,#lifestages.r2-age-contour .story-strands path{stroke-dasharray:none!important;stroke-dashoffset:0!important}
 #lifestages.r2-age-contour .signal-badge:active{transform:none}
}
