/* A fixed product and a timeline, not another light-arc treatment. */
#revenue.revenue-time .layer-scroll{height:calc(100svh + 1700px);min-height:2400px}
#revenue.revenue-time .layer-stage{gap:4px;padding-top:30px;padding-bottom:25px}
#revenue.revenue-time .layer-headings{min-height:145px}
#revenue.revenue-time .layer-headings .eyebrow{margin-bottom:10px}
#revenue.revenue-time .layer-headings .lead{margin-top:14px}
#revenue.revenue-time .revenue-current{margin:0 auto 0;z-index:3}
#revenue.revenue-time .revenue-stage-label{font-size:14px;margin-bottom:3px}
#revenue.revenue-time .revenue-current strong{font-size:clamp(66px,6.8vw,94px);line-height:1.06}
#revenue.revenue-time .layer-stage>.diagram{margin:0 auto!important;max-height:none}
.rt-visual{position:relative;height:310px;max-width:850px;margin:auto;isolation:isolate}
.rt-device-wrap{position:absolute;top:0;left:0;right:0;height:220px;display:flex;justify-content:center;align-items:center;transform:translateY(calc(var(--rt-overview,0)*-7px)) scale(calc(1 - var(--rt-overview,0)*.09));transform-origin:center 65%}
.rt-device{height:100%;width:auto;max-width:75%;object-fit:contain;mix-blend-mode:multiply}
.rt-units{position:absolute;left:7%;right:7%;bottom:76px;height:37px;display:grid;grid-template-columns:repeat(20,minmax(0,1fr));gap:5px;transform:scale(var(--rt-unit-zoom,1.12));transform-origin:center bottom;z-index:2}
.rt-year-unit{display:block;border-radius:2px 2px 0 0;background:linear-gradient(150deg,#d7b77d,#ad7530);border-top:1px solid #e7d2b0;box-shadow:0 5px 12px #9e6c2020;opacity:var(--rt-unit-alpha,0);transform:translateY(var(--rt-unit-rise,23px));height:100%}
.rt-ruler{position:absolute;left:7%;right:7%;height:52px;bottom:21px;color:var(--muted);font-size:12px}
.rt-ruler-line,.rt-ruler-fill{position:absolute;top:5px;left:0;right:0;height:1px;background:#d9dfe4}
.rt-ruler-fill{right:auto;width:var(--rt-marker-x,0%);background:var(--orange);height:2px}
.rt-tick{position:absolute;left:calc(var(--x)*1%);top:0;transform:translateX(-50%);text-align:center;white-space:nowrap}
.rt-tick i{height:10px;width:1px;background:#c9d0d5;display:block;margin:auto}.rt-tick span{display:block;margin-top:12px}
.rt-marker{position:absolute;left:var(--rt-marker-x,0%);top:0;width:12px;height:12px;transform:translateX(-50%);background:var(--orange);border:3px solid white;border-radius:50%;box-shadow:0 0 0 1px var(--orange);z-index:2}
.rt-marker span{position:absolute;left:50%;bottom:24px;transform:translateX(-50%);font-size:12px;font-weight:650;color:var(--navy);white-space:nowrap;background:#fff;padding:2px 5px;border-radius:3px}
.rt-unit-caption{position:absolute;bottom:0;left:0;right:0;text-align:center;font-size:12px;line-height:1.5;color:var(--muted)}
.rt-reference{max-width:950px;margin:20px auto 5px;border-top:1px solid var(--line);text-align:left;padding-top:16px}.rt-reference summary{font-size:14px;min-height:44px;padding:7px 0}.rt-reference .ael-diagram{margin:20px auto!important}.rt-reference .ad-revenue-point,.rt-reference .ad-revenue-values>div{opacity:1!important}.rt-reference .ad-revenue-line{stroke-dashoffset:0!important}
#revenue.revenue-time .layer-progress{display:none}
@media(max-width:900px){.rt-visual{height:290px}.rt-device-wrap{height:200px}.rt-units{left:6%;right:6%;gap:4px}.rt-ruler{left:6%;right:6%}}
@media(max-width:600px){#revenue.revenue-time .layer-scroll{height:calc(92svh + 1600px);min-height:2200px}#revenue.revenue-time .layer-stage{gap:2px;padding:24px 0 20px}#revenue.revenue-time .layer-headings{min-height:140px}#revenue.revenue-time .layer-headings h2{font-size:27px}#revenue.revenue-time .layer-headings .lead{font-size:12px;line-height:1.65;margin-top:12px}#revenue.revenue-time .revenue-current strong{font-size:66px}#revenue.revenue-time .revenue-current span{font-size:20px}.rt-visual{height:250px}.rt-device-wrap{height:168px;top:0}.rt-device{max-width:90%}.rt-units{left:2%;right:2%;height:26px;gap:3px;bottom:76px}.rt-ruler{left:2%;right:2%;font-size:10px}.rt-marker span{font-size:10px}.rt-unit-caption{font-size:10px}.rt-reference{margin-top:15px}}
#revenue.rt-reduced .rt-visual{display:none}#revenue.rt-reduced .rt-reference{margin:30px auto}#revenue.rt-reduced .layer-scroll{height:auto!important;min-height:0!important}#revenue.rt-reduced .layer-stage{height:auto!important;min-height:0!important}#revenue.rt-reduced .rt-reference summary{display:none}
@media(prefers-reduced-motion:reduce){.rt-device-wrap,.rt-year-unit,.rt-units{transform:none!important}}

/* Voice review: six exact shown-value phases, not cumulative unrelated ticks. */
#revenue.revenue-time .layer-progress{display:flex}
body.no-motion #revenue.revenue-time .layer-progress{display:none}

/* v31: fixed composition from year one through year twenty. Only time and value advance. */
#revenue.revenue-time .rt-device-wrap{transform:none!important}
#revenue.revenue-time .rt-units{transform:none!important;left:9%;right:9%}
#revenue.revenue-time .rt-year-unit{transform:none!important}
#revenue.revenue-time .rt-ruler{left:9%;right:9%}
#revenue.revenue-time .layer-progress{display:none!important}
#revenue.revenue-time .rt-marker span{background:none;border-radius:0;padding:0 0 5px;letter-spacing:.035em;font-weight:650;color:#95601f;text-shadow:0 1px 8px #fff}
#revenue.revenue-time .rt-model-meaning{font-size:12px;font-weight:500;line-height:1.6;color:#647785;margin:5px auto 0}
#revenue.revenue-time .rt-unit-caption{font-size:14px;color:#203b50;bottom:3px;font-weight:550;letter-spacing:.025em}
#revenue.revenue-time .rt-comparison-meaning{position:absolute;left:0;right:0;bottom:-26px;margin:0;text-align:center;font-size:12px;line-height:1.5;color:#647785}
#revenue.revenue-time .rt-visual{margin-bottom:26px}
@media(max-width:600px){#revenue.revenue-time .rt-units,#revenue.revenue-time .rt-ruler{left:9%;right:9%}#revenue.revenue-time .rt-unit-caption{font-size:12px}#revenue.revenue-time .rt-model-meaning{font-size:10px}#revenue.revenue-time .rt-comparison-meaning{font-size:10px}}
/* Short windows retain the full year/value story between navigation and scroll cue. */
@media(max-height:800px){
 #revenue.revenue-time:not(.rt-reduced) .layer-stage{height:100svh;min-height:0;padding-top:calc(var(--ael-header-clearance,64px) + 16px);padding-bottom:76px;gap:4px}
 #revenue.revenue-time:not(.rt-reduced) .layer-headings{min-height:0}
 #revenue.revenue-time:not(.rt-reduced) .rt-visual{height:250px;margin-bottom:18px}
 #revenue.revenue-time:not(.rt-reduced) .rt-device-wrap{height:160px}
}
@media(min-width:901px) and (max-height:800px){#revenue .layer-headings h2 br{display:none}}
@media(max-width:600px) and (max-height:700px){
 #revenue.revenue-time:not(.rt-reduced) .rt-visual{height:210px}
 #revenue.revenue-time:not(.rt-reduced) .rt-device-wrap{height:120px}
 #revenue.revenue-time:not(.rt-reduced) .layer-headings .lead{margin-top:8px}
}

/* v71 meeting fix: six milestone labels only. The 6.9 tick uses a second baseline
   so it never collides with the nearby 5-year label on narrow screens. */
#revenue.revenue-time .rt-tick-payback span{margin-top:29px}
#revenue.revenue-time .rt-marker span[hidden]{display:none!important}
/* Fixed envelope: artwork bottom stays at least 12px above the cumulative bars.
   Original 310/250/210px visual heights and six money/hold phases are unchanged. */
#revenue.revenue-time:not(.rt-reduced) .rt-device-wrap{height:calc(100% - 126px);max-height:220px}
@media(max-width:600px){#revenue.revenue-time:not(.rt-reduced) .rt-device-wrap{height:calc(100% - 114px);max-height:168px}}
