.program-catalog{background:#f4f7fc;max-width:none}
.program-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.program-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.program-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:22px;padding:32px;min-width:0;transition:border-color .2s,box-shadow .2s}
.program-card:hover{border-color:var(--blue);box-shadow:0 12px 32px #316bee0d}
.program-status{font-size:10px;color:#5b7296;letter-spacing:.04em}
.program-card h3{font-size:29px;font-weight:500;line-height:1.15;letter-spacing:-.04em;margin:28px 0 18px}
.program-card p{font-size:14px;line-height:1.8;color:var(--muted);margin-bottom:28px}
.program-link{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--blue);margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}
.program-link b{font-size:20px;font-weight:400}
.tab-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.tab-buttons button{border:1px solid var(--line);background:white;color:#5b7296;padding:13px 20px;border-radius:30px;font-size:13px}
.tab-buttons button[aria-selected=true]{background:var(--blue);color:#fff;border-color:var(--blue)}
.tab-content[hidden]{display:none!important}
.scope-note{font-size:11px;line-height:1.8;color:var(--muted);margin:26px 0 0;max-width:1000px}
.workflow-section{position:relative}
.workflow-section>#demo{position:absolute;top:0}
.role-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:40px;border:1px solid var(--line);border-radius:24px}
.role-layout h3{font-size:34px;line-height:1.18;font-weight:500;letter-spacing:-.04em;margin:20px 0}
.role-layout p{font-size:14px;line-height:1.8;color:var(--muted)}
.role-layout .role-result{border-left:2px solid var(--blue);padding-left:20px;margin:28px 0 0;font-size:13px;color:var(--ink)}
.role-list ul,.implementation ul{list-style:none;margin:0;padding:0}
.role-list li,.implementation li{padding:16px 0;border-top:1px solid var(--line);font-size:14px;line-height:1.7;color:var(--muted)}
.patient-value{background:#f4f7fc;max-width:none}
.implementation{background:var(--blue);color:white;max-width:none;margin:0 20px;border-radius:30px}
.implementation h2 span,.implementation .eyebrow,.implementation .number{color:#c7dbff}
.implementation .section-description,.implementation li{color:#e3edff}
.implementation-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%}
.implementation h3{font-size:27px;font-weight:500;line-height:1.2;letter-spacing:-.035em;margin:20px 0 28px}
.implementation li{border-color:#ffffff35}
.implementation ol{padding-left:22px}
.implementation .scope-note{color:#dce8ff;border-top:1px solid #ffffff35;padding-top:22px}
.roadmap{display:grid;grid-template-columns:1fr 1fr;gap:8%}
.roadmap-items details{border-top:1px solid var(--line);padding:24px 0}
.roadmap-items summary{display:flex;gap:20px;justify-content:space-between;list-style:none;cursor:pointer;font-size:18px;line-height:1.5}
.roadmap-items summary::-webkit-details-marker{display:none}
.roadmap-items summary span{color:var(--blue)}
.roadmap-items p{font-size:13px;line-height:1.9;color:var(--muted);margin:20px 0 0}
.program-intro{background:#f4f7fc;max-width:none;padding-top:40px}
.program-intro .eyebrow{margin-top:45px}
.program-intro h1{font-size:clamp(37px,5vw,68px);max-width:1000px;overflow-wrap:break-word}
.program-intro .lead{max-width:800px;font-size:21px}
.program-for{max-width:780px;color:var(--muted);font-size:14px;line-height:1.8;margin-bottom:30px}
.program-spec{display:grid;grid-template-columns:1fr 1fr;gap:8%}
.program-spec h2{font-size:32px}
.program-spec ul{padding-left:20px;font-size:15px;line-height:1.8;color:var(--muted)}
.program-spec li{margin-top:18px}
.program-scenario{background:#f4f7fc;max-width:none}
.scenario-list{margin-top:45px;display:grid;grid-template-columns:1fr 1fr;gap:24px 7%}
.scenario-list article{display:flex;gap:22px;border-top:1px solid var(--line);padding-top:22px}
.scenario-list article>span{color:var(--blue);font-size:12px;padding-top:6px}
.scenario-list h3{font-weight:500;font-size:23px;line-height:1.25;letter-spacing:-.03em;margin-bottom:16px}
.scenario-list p{color:var(--muted);font-size:14px;line-height:1.8}
.program-boundary{display:grid;grid-template-columns:1fr 1fr;gap:8%}
.program-boundary h2{font-size:32px}
.program-boundary p{font-size:14px;line-height:1.8;color:var(--muted)}
.program-related{padding-top:20px}
.program-related .program-grid{margin-top:35px}
@media(max-width:1050px){.program-grid.three{grid-template-columns:1fr}.program-card h3{font-size:27px}.role-layout{padding:30px;gap:35px}.role-layout h3{font-size:28px}}
@media(max-width:760px){.program-grid,.program-grid.three,.role-layout,.implementation-grid,.roadmap,.program-spec,.scenario-list,.program-boundary{grid-template-columns:1fr}.program-card{padding:26px}.program-card h3{font-size:27px}.tab-buttons{gap:6px}.tab-buttons button{font-size:11px;padding:11px 14px}.role-layout{padding:24px}.role-list li{font-size:13px}.implementation{margin:0 10px;padding:42px 24px}.implementation-grid{gap:30px}.implementation h3{font-size:25px}.implementation li{font-size:13px}.roadmap{gap:30px}.program-intro .lead{font-size:17px}.program-spec,.program-boundary{gap:35px}.program-spec h2,.program-boundary h2{font-size:28px}.scenario-list{gap:20px}}
.system-overview{padding-bottom:0}
.system-explanation{max-width:780px;font-size:17px;line-height:1.7;color:var(--muted);margin:24px 0 0}
.system-route{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:36px 0 0;border:1px solid var(--line);border-radius:18px;overflow:hidden}
.system-route li{position:relative;padding:22px 28px 24px 22px;font-size:16px;line-height:1.4;font-weight:500;background:#f4f7fc;border-right:1px solid var(--line)}
.system-route li:last-child{border-right:0}
.system-route li:not(:last-child)::after{content:'→';position:absolute;right:12px;top:17px;color:var(--blue);font-weight:400}
.system-route li>span{display:block;font-size:10px;font-weight:400;color:var(--blue);margin-bottom:14px}
.system-overview-note{font-size:11px;line-height:1.8;color:var(--muted);margin:32px 0 0;padding-bottom:40px;border-bottom:1px solid var(--line)}
@media(max-width:1050px){.system-route li{font-size:14px;padding-left:18px}.system-explanation{font-size:16px}}
@media(max-width:760px){.system-explanation{font-size:15px}.system-route{grid-template-columns:1fr;margin-top:28px}.system-route li{display:flex;gap:18px;align-items:center;border-right:0;border-bottom:1px solid var(--line);padding:18px 35px 18px 20px;font-size:15px}.system-route li:last-child{border-bottom:0}.system-route li>span{margin:0}.system-route li:not(:last-child)::after{content:'↓';right:16px;top:17px}.system-overview-note{padding-bottom:30px;margin-top:22px}}
.program-catalog{position:relative}
.program-catalog>#programs{position:absolute;top:0}
.method-brief{display:grid;grid-template-columns:220px minmax(0,650px);justify-content:center;align-items:center;gap:65px;position:relative}
.method-brief>#method{position:absolute;top:0}
.method-brief>img{width:220px;height:255px;object-fit:cover;object-position:50% 30%;border-radius:20px}
.method-brief>div>p:not(.eyebrow){font-size:15px;color:var(--muted);line-height:1.75;margin:22px 0 12px}
.partner-banner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:60px;padding-top:55px;padding-bottom:55px}
.partner-banner>div>p:not(.eyebrow){font-size:15px;line-height:1.7;max-width:580px;margin:22px 0 28px;color:#e3edff}
.partner-banner .partner-brand{width:230px;height:72px;background:#fff;flex-shrink:0;margin-right:25px;mask-size:100% auto;-webkit-mask-size:100% auto}
.partner-banner .button.white{font-size:13px}
@media(max-width:1050px){.method-brief{gap:40px;grid-template-columns:190px 1fr}.method-brief>img{width:190px;height:230px}.partner-banner{gap:35px}.partner-banner .partner-brand{width:175px;height:60px;margin-right:0}}
@media(max-width:760px){.method-brief{grid-template-columns:1fr;gap:25px}.method-brief>img{width:135px;height:155px;border-radius:14px}.method-brief>div>p:not(.eyebrow){font-size:14px}.partner-banner{grid-template-columns:1fr;padding:35px 24px;gap:25px}.partner-banner .partner-brand{grid-row:1;width:125px;height:42px}.partner-banner>div>p:not(.eyebrow){font-size:14px}.partner-banner h2{font-size:31px}}
.partner-directory{padding-top:40px}
.partner-directory>.eyebrow{margin-top:40px}
.partner-directory h1{font-size:clamp(42px,5vw,65px);margin-bottom:36px}
.partner-directory-lead{color:var(--muted);font-size:18px;margin-bottom:45px}
.partner-directory-card{display:grid;grid-template-columns:1fr 1.4fr;gap:8%;padding:45px;border:1px solid var(--line);border-radius:25px;align-items:center}
.partner-directory-logo{background:#f4f7fc;border-radius:20px;min-height:260px;display:flex;align-items:center;justify-content:center}
.partner-directory-logo img{width:85%;height:auto;object-fit:contain}
.partner-directory-card h2{font-size:38px}
.partner-directory-card p:not(.eyebrow){font-size:15px;line-height:1.8;color:var(--muted);margin:22px 0}
.partner-module-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 25px}
.partner-module-list li{font-size:11px;padding:7px 12px;border-radius:20px;background:#edf3ff;color:#5276aa}
@media(max-width:760px){.partner-directory-card{grid-template-columns:1fr;padding:24px;gap:28px}.partner-directory-logo{min-height:140px}.partner-directory-logo img{max-width:220px}.partner-directory-card h2{font-size:32px}.partner-directory-card .button{font-size:13px}}
