/* GMS Milestones & Versioning | page-scoped extension to the approved GMS design master.
   Original Bootstrap, typography, shared colors, header and footer remain unmodified. */
.milestones-breadcrumb{margin-bottom:30px}
.milestones-breadcrumb ol{display:flex;align-items:center;margin:0;padding:0;list-style:none;color:var(--gms-muted);text-transform:uppercase;letter-spacing:.115em;font:500 12px/1.5 var(--gms-font-head)}
.milestones-breadcrumb li{display:flex;align-items:center}
.milestones-breadcrumb li+li::before{content:"/";margin:0 11px;color:inherit}
.milestones-breadcrumb a{color:inherit;text-decoration-line:underline;text-decoration-color:transparent;text-decoration-thickness:1px;text-underline-offset:5px;transition:color var(--gms-transition),text-decoration-color var(--gms-transition)}
.milestones-breadcrumb a:hover,.milestones-breadcrumb a:focus-visible{color:var(--gms-accent-dark);text-decoration-color:currentColor}
.milestones-hero{padding-top:clamp(54px,6vw,95px);padding-bottom:clamp(48px,5vw,77px)}
.milestones-hero .hero-grid{min-height:420px}
.milestones-hero h1{font-size:clamp(45px,4.15vw,70px);max-width:800px;margin-bottom:27px}
.milestones-hero .hero-lead{max-width:660px;line-height:1.6}
.milestones-hero .hero-art{min-height:375px}
.milestones-hero .hero-ribbon{width:125%;max-height:500px}
.milestones-status{padding-bottom:65px}
.status-grid{padding:38px 0 16px}
.status-grid > div:not(:first-child) .status-item{border-left:1px solid var(--gms-line)}
.status-item{min-height:177px;padding:6px clamp(16px,3vw,50px) 17px}
.status-grid > div:first-child .status-item{padding-left:0}
.status-version{font:500 clamp(32px,3.1vw,48px)/1.2 var(--gms-font-head);letter-spacing:-.08em;margin:18px 0 8px;color:var(--gms-ink)}
.status-item p{font-size:16px;line-height:1.55;margin:0;color:var(--gms-ink)}
.status-item p span{color:var(--gms-body)}
.status-chip{margin:24px 0 20px;padding:8px 17px;display:inline-flex;gap:12px;align-items:center;border-radius:999px;background:var(--gms-accent);font:500 14px/1.4 var(--gms-font-head)}
.status-chip-dot{height:9px;width:9px;border-radius:50%;background:var(--gms-ink)}
.versions-section{padding-bottom:100px}
.versions-intro{padding:50px 0 38px}
.versions-intro-row{display:flex;align-items:end;justify-content:space-between;gap:25px;flex-wrap:wrap;margin:16px 0 28px}
.versions-intro h2{font:500 clamp(34px,3.2vw,53px)/1.2 var(--gms-font-head);letter-spacing:-.078em;margin:0}
.versions-intro>p{font-size:17px;line-height:1.72;max-width:900px;color:var(--gms-body);margin:0}
.versions-intro strong{font-weight:600;color:var(--gms-ink)}
.versions-list{border-top:1px solid var(--gms-line)}
.version-row{padding:34px 0 30px;border-bottom:1px solid var(--gms-line);scroll-margin-top:105px;transition:background var(--gms-transition)}
.version-row:hover{background:rgba(237,244,219,.28)}
.version-main{display:grid;grid-template-columns:minmax(138px,1.1fr) minmax(420px,4.25fr) minmax(145px,1.2fr);gap:clamp(21px,3.8vw,68px);align-items:start}
.version-number-col .section-index{white-space:nowrap}
.version-number{display:block;font:500 clamp(31px,3vw,47px)/1.2 var(--gms-font-head);letter-spacing:-.075em;margin:14px 0 9px}
.version-date{font:500 12px/1.7 var(--gms-font-head);color:var(--gms-muted);text-transform:uppercase;letter-spacing:.035em}
.version-content-col h3{font:500 clamp(25px,2.3vw,35px)/1.28 var(--gms-font-head);letter-spacing:-.074em;margin:0 0 14px}
.version-summary{font-size:16.5px;color:var(--gms-body);line-height:1.67;margin:0 0 23px;max-width:800px}
.meta-caption{display:block;color:var(--gms-muted);font:500 11px/1.5 var(--gms-font-head);letter-spacing:.1em;text-transform:uppercase;margin-bottom:9px}
.version-deliverable{margin-bottom:14px}
.version-deliverable p{font-size:17px;line-height:1.53;color:var(--gms-ink);margin:0;max-width:750px}
.journal-reference{font-size:14px;margin-top:17px}
.version-status-col{text-align:right;padding-top:2px}
.version-state{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;font:500 12px/1.3 var(--gms-font-head);border-radius:999px;background:#f2f3ed;color:var(--gms-body);white-space:nowrap}
.version-state-current{background:var(--gms-accent);color:var(--gms-ink)}
.version-state-next{border:1px solid var(--gms-accent-deep);background:transparent;color:var(--gms-accent-dark)}
.state-dot{height:7px;width:7px;border-radius:50%;background:currentColor}
.version-phase{display:block;color:var(--gms-muted);font:400 11px/1.6 var(--gms-font-head);margin-top:13px;text-transform:uppercase;letter-spacing:.012em}
.work-disclosure{margin-top:26px;margin-left:calc((100% - 100%));border-top:1px solid var(--gms-line)}
.work-disclosure summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:62px;padding:10px 13px 8px 0;color:var(--gms-ink);transition:background var(--gms-transition),color var(--gms-transition)}
.work-disclosure summary::-webkit-details-marker{display:none}
.work-disclosure summary:hover{background:var(--gms-paper-strong);color:var(--gms-accent-dark)}
.summary-main{display:inline-flex;gap:13px;align-items:center;font:500 13px/1.45 var(--gms-font-head);letter-spacing:.005em}
.work-folder{font-size:21px;font-weight:400;line-height:1.1;color:var(--gms-muted)}
.work-count{color:var(--gms-muted);border-left:1px solid var(--gms-line);padding-left:13px}
.summary-chevron{border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;width:10px;height:10px;transform:rotate(45deg);transition:transform var(--gms-transition);margin-right:7px;margin-top:-6px}
.work-disclosure[open] .summary-chevron{transform:rotate(225deg);margin-top:6px}
.work-disclosure[open] summary{background:var(--gms-paper-strong);padding-left:12px}
.work-details{background:var(--gms-paper);padding:28px clamp(22px,3vw,48px) 32px}
.task-list{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 36px}
.task-list li{display:flex;align-items:flex-start;gap:16px;color:#343935;font-size:16px;line-height:1.56}
.task-index{flex-shrink:0;font:500 12px/1.8 var(--gms-font-head);color:var(--gms-accent-dark)}
.work-research-note{border-top:1px solid var(--gms-line);margin:23px 0 0;padding-top:17px;font:400 13px/1.65 var(--gms-font-head);color:var(--gms-body)}
.ideas-section{padding:18px 0 130px}
.ideas-panel{margin-top:35px;background:var(--gms-paper-strong);padding:clamp(38px,4.6vw,73px) clamp(28px,5.5vw,85px)}
.ideas-panel h2{font:500 clamp(32px,3.1vw,48px)/1.26 var(--gms-font-head);letter-spacing:-.08em;margin:17px 0 22px;max-width:740px}
.ideas-panel p{font-size:17.5px;line-height:1.68;color:var(--gms-body);margin:0;max-width:790px}
.ideas-action{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.ideas-action .btn-accent{background:var(--gms-accent);max-width:100%;white-space:normal;text-align:center}
.ideas-action .future-note{font-size:13px;line-height:1.5;max-width:260px;color:var(--gms-muted)}
@media(max-width:991.98px){
 .milestones-hero{padding-top:65px;padding-bottom:60px}
 .milestones-hero .hero-grid{min-height:unset}
 .milestones-hero .hero-art{min-height:260px;max-height:380px}
 .milestones-hero .hero-ribbon{max-height:370px;width:98%}
 .version-main{grid-template-columns:minmax(115px,1fr) minmax(0,4fr)}
 .version-status-col{grid-column:1/-1;grid-row:2;display:flex;align-items:center;justify-content:flex-start;gap:19px;margin-left:0;padding-top:0}
 .version-phase{margin-top:0}
 .ideas-action{margin-top:10px}
}
@media(max-width:767.98px){
 .milestones-hero h1{font-size:clamp(38px,8.8vw,53px)}
 .milestones-hero .hero-art{min-height:250px}
 .status-grid > div:not(:first-child) .status-item{border-left:0;border-top:1px solid var(--gms-line)}
 .status-grid > div:first-child .status-item{padding-left:20px}
 .status-item{min-height:unset;padding:22px 20px!important}
 .status-version{margin:11px 0}
 .version-row{padding:31px 0 23px}
 .version-main{grid-template-columns:1fr;gap:16px}
 .version-number-col{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
 .version-number{margin:0;font-size:34px}
 .version-date{margin-left:auto}
 .version-status-col{grid-column:auto;grid-row:auto;margin:0;display:flex}
 .version-summary{font-size:16px}
 .task-list{grid-template-columns:1fr;gap:16px}
 .work-details{padding:22px 18px}
 .ideas-panel{padding:36px 23px}
 .ideas-panel p{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.work-disclosure summary,.summary-chevron,.version-row{transition:none}}

/* Page-local: current-version state and separate Changelog link (GMS v0.2). */
.status-current-head{display:flex;align-items:center;column-gap:20px;row-gap:8px;flex-wrap:wrap}
.status-current-head .status-version{margin-right:0}
.status-small-label{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--gms-accent-deep);border-radius:999px;padding:6px 11px;font:500 11px/1.4 var(--gms-font-head);color:var(--gms-accent-dark);white-space:nowrap}
.status-small-label::before{content:"";height:6px;width:6px;border-radius:50%;background:var(--gms-accent-dark)}
.status-changelog-title{font:500 clamp(20px,1.75vw,27px)/1.28 var(--gms-font-head);letter-spacing:-.06em;margin:18px 0 11px;color:var(--gms-ink)}
.status-changelog-description{margin:0 0 11px!important;max-width:390px;color:var(--gms-body)!important;font-size:15px!important;line-height:1.58!important}
.status-changelog-link{margin-top:4px}
.status-changelog-link:hover{color:var(--gms-accent-dark)}
@media(max-width:767.98px){.status-current-head{gap:9px 17px}.status-changelog-title{margin-top:8px}}
