/* One shared project, shown as an ordered plan rather than a wall of feature cards. */
.roadmap{--rm-ink:#203c56;--rm-muted:#526d82;--rm-line:#d0e3ee;color:var(--rm-ink);max-width:1280px;margin:0 auto}
.roadmap.rm-simple{--rm-ink:var(--theme-text,#234e67);--rm-muted:var(--theme-muted,#607f94);--rm-line:var(--theme-line,#c2dfed)}
.rm-simple .rm-hero{display:flex;justify-content:space-between;gap:20px;padding:0 0 18px;align-items:center}
.rm-simple .rm-hero>.rm-object{width:95px;height:95px;margin-right:20px}
.rm-simple .rm-hero h1{font-size:clamp(28px,3vw,38px);line-height:1.2;letter-spacing:-1px}
.rm-simple .rm-eyebrow{font-size:10px;margin-bottom:8px}
.rm-simple .rm-hero .rm-hero-lede{font-size:14px;margin-top:9px;line-height:1.5}
.rm-simple .rm-hero .rm-hero-note{font-size:11px;margin:9px 0 0;line-height:1.5}
.rm-simple .rm-status-strip{padding:16px;gap:16px;border:1px solid var(--rm-line);border-radius:16px;background:var(--theme-surface,#fff);grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:center}
.rm-simple .rm-status-strip strong{font-size:13px;line-height:1.4}
.rm-simple .rm-status-strip span{font-size:10px}
.rm-simple .rm-status-strip a{font-size:11px;color:var(--theme-cyan,#286f91);line-height:1.5}
.rm-simple .rm-stages,.rm-simple .rm-scope-section{padding-top:24px}
.rm-simple .rm-section-intro{margin-bottom:12px}
.rm-simple .rm-section-intro h2{font-size:21px;letter-spacing:-.5px}
.rm-simple .rm-stage-list{display:grid;gap:9px;border:0}
.rm-simple .rm-stage{display:block;padding:0;border:1px solid var(--rm-line);border-radius:14px;background:var(--theme-surface,#fff)}
.rm-simple .rm-stage>summary{display:flex;align-items:center;gap:12px;min-height:66px;padding:10px 15px;list-style:none}
.rm-simple .rm-stage>summary::-webkit-details-marker{display:none}
.rm-simple .rm-stage .rm-object{width:40px;height:40px}
.rm-step-number{font-size:10px;color:var(--rm-muted)}
.rm-stage-summary{display:grid;gap:4px;flex:1;min-width:0}
.rm-stage-summary small{font-size:10px;color:var(--rm-muted)}
.rm-stage-summary strong{font-size:14px;line-height:1.4;color:var(--rm-ink)}
.rm-stage-current .rm-stage-summary small{color:var(--theme-green,#397655)}
.rm-step-toggle:after{content:'+';font-size:18px;color:var(--theme-cyan,#286f91)}
.rm-stage[open] .rm-step-toggle:after{content:'−'}
.rm-simple .rm-stage-body{padding:0 18px 14px 80px}
.rm-simple .rm-stage-body ul{margin:0;padding-left:16px}
.rm-simple .rm-stage-body li{font-size:12px;line-height:1.65;margin:6px 0}
.rm-simple .rm-scope summary{min-height:72px;padding:12px 6px;gap:14px}
.rm-simple .rm-scope summary>.rm-object{width:42px;height:42px}
.rm-simple .rm-scope-title{gap:4px}
.rm-simple .rm-scope-title strong{font-size:16px;line-height:1.35}
.rm-simple .rm-scope-title>span{font-size:12px;line-height:1.5}
.rm-simple .rm-disclosure-label{font-size:10px;padding:8px 10px}
.rm-simple .rm-scope-body{padding:10px 0 20px 62px;gap:18px}
.rm-simple .rm-cost-summary{margin-top:22px;border:1px solid var(--rm-line);padding:0 16px;border-radius:14px;background:var(--theme-surface,#fff)}
.rm-cost-summary>summary{min-height:46px;display:flex;align-items:center;font-size:13px}
.rm-cost-summary p{font-size:12px;line-height:1.7;margin-bottom:12px}
.rm-simple .rm-close{padding:20px 0 0;display:block}
.rm-simple .rm-close p{font-size:12px;margin:0 0 14px!important}
@media(max-width:600px){.rm-simple .rm-hero>.rm-object{width:65px;height:65px;margin:0}.rm-simple .rm-status-strip{grid-template-columns:1fr 1fr;gap:14px}.rm-simple .rm-stage>summary{gap:8px;padding:10px}.rm-simple .rm-stage .rm-object{width:30px;height:30px}.rm-stage-summary strong{font-size:12px}.rm-simple .rm-stage-body{padding-left:24px}.rm-simple .rm-scope summary{grid-template-columns:34px minmax(0,1fr);gap:8px}.rm-simple .rm-scope summary>.rm-object{width:34px;height:34px}.rm-simple .rm-scope-body{padding-left:0}.rm-simple .rm-scope-title strong{font-size:14px}.rm-simple .rm-disclosure-label{margin-top:0}}
.roadmap *{box-sizing:border-box}
.roadmap h1,.roadmap h2,.roadmap h3,.roadmap h4{font-family:var(--body,'Avenir Next',Arial,sans-serif);font-weight:750;letter-spacing:-1px;line-height:1.14;margin:0}
.roadmap p{margin:0;line-height:1.8;overflow-wrap:break-word}
.roadmap ul{margin:18px 0 0;padding:0 0 0 20px}
.roadmap li{padding-left:5px;line-height:1.8;margin:9px 0;color:var(--rm-muted);font-size:15px}
.roadmap li::marker{color:#6f9bb7;font-size:.75em}
.roadmap .rm-eyebrow{font-size:11px;font-weight:750;letter-spacing:1.4px;color:#55778d;margin:0 0 18px}
.rm-object{width:100px;height:100px;object-fit:contain;flex-shrink:0;background:none;filter:drop-shadow(0 7px 5px #456b8519);pointer-events:none}
.rm-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:70px;align-items:center;padding:12px 0 54px}
.rm-hero h1{font-size:clamp(42px,4.6vw,67px);letter-spacing:-2.5px;line-height:1.08;max-width:660px}
.rm-hero h1>span{color:#ce3542}
.rm-hero .rm-hero-lede{font-size:18px;line-height:1.75;margin-top:27px;max-width:630px;color:#3c5c74}
.rm-hero .rm-hero-note{font-size:14px;color:#637f93;line-height:1.75;margin:18px 0 26px;max-width:580px}
.roadmap .button{font-family:var(--body);min-height:49px;font-size:14px;padding:13px 23px;border-radius:14px;box-shadow:inset 0 2px 0 #fff1bc,0 4px 0 #d6b55b;line-height:1.4}
.roadmap .button:hover{transform:translateY(-1px)}
.roadmap .button:active{transform:translateY(2px);box-shadow:inset 0 1px 0 #fff1bc,0 1px 0 #d6b55b}
.rm-hero-art{padding:28px 30px 35px;background:#e5f4fc;border:1px solid #c2e0ef;border-radius:36px;box-shadow:inset 0 3px 0 #fbfeff,0 7px 0 #bfdcea,0 18px 34px #3457770b;text-align:center;max-width:460px;width:100%;justify-self:end}
.rm-hero-folder{width:100%;height:auto;max-height:290px;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 15px 8px #466e8a20)}
.rm-hero-caption{padding-top:14px;border-top:1px solid #bddae8}
.rm-hero-caption>span{display:block;font-size:10px;font-weight:750;letter-spacing:1.2px;color:#547992}
.rm-hero-caption>p{font-size:15px;line-height:1.7;max-width:300px;margin:12px auto 0;color:#3d647e}
.rm-status-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.2fr);gap:24px;padding:28px 0;border-top:1px solid var(--rm-line);border-bottom:1px solid var(--rm-line)}
.rm-status-strip>div{display:flex;flex-direction:column;gap:7px}
.rm-status-strip span{font-size:12px;color:#6a8395}
.rm-status-strip strong{font-size:15px;font-weight:700;line-height:1.6}
.rm-status-strip>p{font-size:12px;line-height:1.8;color:#698295;border-left:1px solid var(--rm-line);padding-left:25px}
.rm-stages,.rm-scope-section{padding-top:78px}
.rm-section-intro{margin-bottom:38px;max-width:800px}
.rm-section-intro h2{font-size:clamp(30px,3vw,42px);letter-spacing:-1.4px;line-height:1.18}
.rm-section-intro>p:last-child{font-size:16px;color:var(--rm-muted);margin-top:18px;line-height:1.8;max-width:710px}
.rm-stage-list{border-top:1px solid var(--rm-line)}
.rm-stage{display:grid;grid-template-columns:150px minmax(0,1fr);gap:36px;padding:37px 0;border-bottom:1px solid var(--rm-line)}
.rm-stage-marker{display:flex;align-items:center;flex-direction:column;gap:15px;padding-top:2px}
.rm-stage-marker>span{align-self:flex-start;font-size:13px;font-weight:700;letter-spacing:1px;color:#7a95a9}
.rm-stage-marker>.rm-object{width:119px;height:119px}
.rm-stage .rm-stage-label{font-size:11px;letter-spacing:1px;font-weight:750;margin-bottom:13px;color:#48738c}
.rm-stage-current .rm-stage-label{color:#347557}
.rm-stage-next .rm-stage-label{color:#946c24}
.rm-stage h3{font-size:27px;line-height:1.3;letter-spacing:-.7px;max-width:780px}
.rm-stage-copy>p:not(.rm-stage-label):not(.rm-stage-check){font-size:15px;line-height:1.8;color:var(--rm-muted);margin-top:15px;max-width:850px}
.rm-stage ul{margin-top:17px}
.rm-stage li{font-size:14px;margin:7px 0}
.rm-stage .rm-stage-check{font-size:13px;color:#607e91;border-left:3px solid #c2dce9;padding:8px 0 8px 16px;margin-top:22px;line-height:1.75}
.rm-stage-current .rm-stage-check{border-color:#8ebea5}
.rm-scope-list{border-top:1px solid var(--rm-line)}
.rm-scope{border-bottom:1px solid var(--rm-line);padding:0;margin:0}
.rm-scope summary{display:flex;align-items:center;gap:26px;padding:24px 4px;cursor:pointer;list-style:none;min-height:128px;border-radius:15px;transition:background .18s}
.rm-scope summary::-webkit-details-marker{display:none}
.rm-scope summary::marker{content:''}
.rm-scope summary:hover{background:#edf7fc}
.rm-scope summary>.rm-object{width:84px;height:84px}
.rm-scope-title{display:flex;flex-direction:column;gap:10px;min-width:0;flex:1}
.rm-scope-title strong{font-size:23px;font-weight:750;letter-spacing:-.5px;line-height:1.3}
.rm-scope-title>span{font-size:14px;line-height:1.7;color:var(--rm-muted);max-width:690px}
.rm-disclosure-label{font-size:12px;color:#446e89;padding:10px 14px;border:1px solid #c7dfea;border-radius:10px;background:#f3faff;box-shadow:inset 0 2px 0 #fff,0 2px 0 #d9e9f1;white-space:nowrap}
.rm-when-open,.rm-scope[open] .rm-when-closed{display:none}
.rm-scope[open] .rm-when-open{display:inline}
.rm-scope-body{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:18px 42px;padding:10px 0 33px 114px}
.rm-scope-body h4{font-size:15px;letter-spacing:0;line-height:1.5;color:#355972}
.rm-scope-body>div:first-child h4{color:#397655}
.rm-scope-body ul{margin-top:12px;padding-left:17px}
.rm-scope-body li{font-size:13px;line-height:1.85;margin:8px 0;padding-left:3px}
.rm-scope-note{grid-column:1/-1;padding-top:17px;border-top:1px solid #deebf2;font-size:12px;color:#6d8291;line-height:1.8}
.rm-cost-section{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:65px;margin-top:80px;padding:43px;background:#fff9eb;border:1px solid #ebdcb9;border-radius:26px;box-shadow:inset 0 3px 0 white,0 6px 0 #e9dfc7,0 16px 28px #715b2b07}
.rm-cost-intro>.rm-object{width:124px;height:124px;margin:-14px 0 15px}
.rm-cost-intro>.rm-eyebrow{color:#887347}
.rm-cost-intro h2{font-size:38px;line-height:1.18;letter-spacing:-1.3px}
.rm-cost-intro>p:last-child{font-size:15px;color:#7b6d4d;margin-top:22px;line-height:1.9;max-width:420px}
.rm-cost-points article{padding:25px 0;border-bottom:1px solid #eaddc0}
.rm-cost-points article:first-child{padding-top:4px}
.rm-cost-points article:last-child{padding-bottom:0;border-bottom:0}
.rm-cost-points h3{font-size:21px;line-height:1.4;letter-spacing:-.4px;color:#65512c}
.rm-cost-points p{font-size:14px;color:#7b6d4d;line-height:1.9;margin-top:12px}
.rm-close{display:flex;align-items:center;justify-content:center;gap:55px;padding:83px 0 15px}
.rm-close>.rm-object{width:200px;height:200px}
.rm-close h2{font-size:37px;line-height:1.2;letter-spacing:-1px}
.rm-close p:not(.rm-eyebrow){font-size:15px;color:var(--rm-muted);margin:19px 0 26px;line-height:1.85}
@media(max-width:1100px){.rm-hero{gap:38px}.rm-hero h1{font-size:52px}.rm-hero .rm-hero-lede{font-size:16px}.rm-hero-art{padding:23px}.rm-hero-folder{max-height:245px}.rm-status-strip{gap:18px}.rm-stage{grid-template-columns:120px minmax(0,1fr);gap:28px}.rm-stage-marker>.rm-object{width:100px;height:100px}.rm-scope-body{gap:18px 28px}.rm-cost-section{gap:38px;padding:34px}.rm-cost-intro h2{font-size:34px}}
@media(max-width:800px){.rm-hero{grid-template-columns:minmax(0,1fr) 230px;gap:26px;padding-top:5px}.rm-hero h1{font-size:43px;letter-spacing:-1.5px}.rm-hero-art{padding:15px 18px 22px;border-radius:26px}.rm-hero-folder{max-height:192px}.rm-hero-caption>span{font-size:8px;letter-spacing:.6px}.rm-hero-caption>p{font-size:12px}.rm-hero .rm-hero-lede{font-size:15px;margin-top:22px}.rm-hero .rm-hero-note{font-size:12px}.rm-status-strip{grid-template-columns:1fr 1fr;gap:24px}.rm-status-strip>p{border-left:0;padding-left:0}.rm-stages,.rm-scope-section{padding-top:58px}.rm-stage{grid-template-columns:90px minmax(0,1fr);gap:25px}.rm-stage h3{font-size:24px}.rm-stage-marker>.rm-object{width:86px;height:86px}.rm-stage-copy>p:not(.rm-stage-label):not(.rm-stage-check){font-size:14px}.rm-scope summary{gap:18px;padding-top:22px;padding-bottom:22px}.rm-scope summary>.rm-object{width:65px;height:65px}.rm-scope-title strong{font-size:21px}.rm-scope-title>span{font-size:13px}.rm-disclosure-label{font-size:10px;padding:9px 10px}.rm-scope-body{padding-left:87px;grid-template-columns:1fr;gap:23px}.rm-cost-section{grid-template-columns:1fr;gap:28px;margin-top:60px;padding:30px}.rm-cost-intro{position:relative;padding-right:123px}.rm-cost-intro>.rm-object{position:absolute;right:0;top:10px;width:105px;height:105px;margin:0}.rm-cost-intro h2{font-size:33px}.rm-cost-intro>p:last-child{max-width:none;font-size:14px}.rm-cost-points{border-top:1px solid #eaddc0}.rm-cost-points article:first-child{padding-top:24px}.rm-close{gap:25px;padding-top:65px}.rm-close>.rm-object{width:145px;height:145px}.rm-close h2{font-size:31px}.rm-close p:not(.rm-eyebrow){font-size:13px}}
@media(max-width:560px){.rm-hero{display:flex;flex-direction:column;gap:30px;padding-bottom:38px;align-items:stretch}.rm-hero h1{font-size:46px;line-height:1.1;letter-spacing:-1.8px}.roadmap .rm-eyebrow{font-size:9px;letter-spacing:1.2px;margin-bottom:15px}.rm-hero .rm-hero-lede{font-size:15px}.rm-hero .rm-hero-note{font-size:13px}.rm-hero-art{display:flex;align-items:center;gap:14px;padding:17px 20px;max-width:none;border-radius:23px;text-align:left}.rm-hero-folder{width:115px;height:115px;max-height:none;flex-shrink:0}.rm-hero-caption{border:0;padding:0;flex:1}.rm-hero-caption>span{font-size:8px;letter-spacing:.7px;line-height:1.8}.rm-hero-caption>p{font-size:12px;line-height:1.7;margin-top:7px}.rm-status-strip{gap:22px 18px;padding:25px 0}.rm-status-strip span{font-size:10px}.rm-status-strip strong{font-size:13px}.rm-status-strip>p{font-size:11px}.rm-section-intro{margin-bottom:27px}.rm-section-intro h2{font-size:29px;letter-spacing:-.9px}.rm-section-intro>p:last-child{font-size:14px;margin-top:15px}.rm-stage{grid-template-columns:54px minmax(0,1fr);gap:17px;padding:27px 0}.rm-stage-marker{gap:10px;padding-top:0}.rm-stage-marker>span{font-size:11px}.rm-stage-marker>.rm-object{width:58px;height:58px}.rm-stage .rm-stage-label{font-size:9px;letter-spacing:.7px;margin-bottom:11px}.rm-stage h3{font-size:21px;letter-spacing:-.5px;line-height:1.35}.rm-stage-copy>p:not(.rm-stage-label):not(.rm-stage-check){font-size:13px;margin-top:13px;line-height:1.85}.rm-stage li{font-size:12px;line-height:1.85}.rm-stage .rm-stage-check{font-size:11px;line-height:1.85;padding-left:12px}.rm-scope summary{display:grid;grid-template-columns:53px minmax(0,1fr);gap:9px 14px;padding:24px 0;min-height:0}.rm-scope summary>.rm-object{width:53px;height:53px;align-self:start;grid-row:span 2}.rm-scope-title{gap:8px}.rm-scope-title strong{font-size:19px;line-height:1.4;letter-spacing:-.4px}.rm-scope-title>span{font-size:12px;line-height:1.8}.rm-disclosure-label{width:fit-content;grid-column:2;font-size:10px;padding:7px 10px;margin-top:4px}.rm-scope-body{padding:0 0 25px 0;gap:22px}.rm-scope-body h4{font-size:14px}.rm-scope-body>div{padding-left:17px;border-left:2px solid #dcebf3}.rm-scope-body>div:first-child{border-color:#a6c7b4}.rm-scope-body li{font-size:12px;line-height:1.85}.rm-scope-note{font-size:11px}.rm-cost-section{padding:25px 21px;border-radius:21px;gap:25px}.rm-cost-intro{padding-right:0}.rm-cost-intro>.rm-object{width:77px;height:77px;right:-3px;top:18px}.rm-cost-intro h2{font-size:29px;padding-right:72px;letter-spacing:-.8px}.rm-cost-intro>.rm-eyebrow{font-size:8px;padding-right:66px;line-height:1.8}.rm-cost-intro>p:last-child{font-size:13px;margin-top:19px}.rm-cost-points h3{font-size:19px}.rm-cost-points p{font-size:12px;line-height:1.9}.rm-close{display:block;position:relative;padding:59px 0 0}.rm-close>.rm-object{position:absolute;right:0;top:64px;width:81px;height:81px}.rm-close h2{font-size:29px;letter-spacing:-.8px;padding-right:78px}.rm-close .rm-eyebrow{padding-right:72px}.rm-close p:not(.rm-eyebrow){font-size:13px;margin:21px 0 24px}.roadmap .button{font-size:13px;min-height:47px;padding:12px 21px}}
@media(prefers-reduced-motion:reduce){.roadmap *{transition:none!important;animation:none!important}.roadmap .button:hover{transform:none}}

/* Long roadmap labels wrap inside the same narrow column as their copy */
.roadmap :is(.rm-hero>div,.rm-stage-copy,.rm-cost-intro,.rm-cost-points,.rm-hero-caption,.rm-close>div,.rm-status-strip>*,.rm-scope-body>div){min-width:0}
.roadmap :is(h1,h2,h3,h4,strong,li,span,.button){overflow-wrap:anywhere}
.roadmap .button{max-width:100%;white-space:normal;text-align:center}.rm-disclosure-label{white-space:normal;max-width:100%}
@media(max-width:900px){.rm-hero{grid-template-columns:minmax(0,1fr)}.rm-hero-art{justify-self:start;max-width:440px}.rm-cost-section{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.rm-hero h1{font-size:clamp(34px,10vw,46px);letter-spacing:-1.2px}.rm-hero-art{width:100%;max-width:none;gap:12px;padding:17px}.rm-hero-folder{width:85px;height:85px}.rm-cost-section{padding:23px 17px}.rm-cost-intro{padding-right:0}.rm-cost-intro h2,.rm-close h2{padding-right:0}.rm-cost-intro>.rm-object,.rm-close>.rm-object{position:static;display:block;width:66px;height:66px;margin:0 0 15px}.rm-cost-intro>.rm-eyebrow,.rm-close .rm-eyebrow{padding-right:0}.rm-scope summary{min-width:0}.rm-stage{gap:13px;grid-template-columns:44px minmax(0,1fr)}.rm-stage-marker>.rm-object{width:44px;height:44px}}
@media(max-width:360px){.rm-status-strip{grid-template-columns:minmax(0,1fr);gap:17px}.rm-hero-art{display:block}.rm-hero-folder{margin:0 auto 14px}.rm-scope summary{grid-template-columns:42px minmax(0,1fr);gap:9px}.rm-scope summary>.rm-object{width:42px;height:42px}.rm-disclosure-label{padding:7px 9px}.rm-cost-points h3{font-size:18px}}
