/* Styles for the retrieved 21st components, matched to Teams' existing palette. */
.sourced-accordion{margin:20px 0;text-align:left}.teams-accordion{border:1px solid #c8d9e8;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 1px 2px #182f4708}
.teams-accordion>div+div{border-top:1px solid #c8d9e8}.teams-accordion button{display:flex;align-items:center;gap:16px;width:100%;border:0;background:transparent;color:#193c5e;padding:20px 22px;font:inherit;font-size:16px;font-weight:600;text-align:left;line-height:1.5;cursor:pointer;transition:background .15s}
.teams-accordion button:hover{background:#f1f6fa}.teams-accordion button:focus-visible{outline:2px solid #376fa2;outline-offset:-3px;background:#eff5fa}.teams-accordion button>span:first-child{flex:1;min-width:0}.teams-accordion button>svg{width:18px;height:18px;flex:none;color:#477196}
.teams-accordion [role=region]{border-top:1px solid #c8d9e8;background:#f7fafd;color:#355776}.teams-accordion [role=region]>div{padding:20px 22px}.teams-accordion .faq-content,.teams-accordion .disclosure-body{padding:0!important;max-width:100%!important}.teams-accordion p{font-size:15px;line-height:1.7;margin:0 0 16px}.teams-accordion p:last-child{margin-bottom:0}
.faq .component-accordion{display:block}.faq .sourced-accordion{margin:0}.service-statement>.sourced-accordion{max-width:950px;margin:18px auto}
.service-tabs{max-width:950px;margin:30px auto 18px;text-align:left;border:1px solid #c8d9e8;border-radius:16px;background:#fff;overflow:hidden}.service-tab-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:8px;background:#edf3f8}.service-tab-list button{position:relative;display:inline-flex;align-items:center;border:0;background:transparent;text-align:left;padding:18px 20px;border-radius:10px;color:#416481;font:inherit;font-size:15px;font-weight:600;cursor:pointer;line-height:1.4}.service-tab-list button>span{position:relative;z-index:1}.service-tab-list button small{display:block;font-size:11px;margin-bottom:8px;font-weight:400}.service-tab-list button[data-checked=true]{color:#fff}.service-tab-highlight{position:absolute;inset:0;background:#1c3a55;border-radius:10px;box-shadow:0 3px 9px #182f471c}.service-tab-content{padding:28px 30px;min-height:230px}.service-tab-content p{font-size:17px;line-height:1.75;color:#355776;margin:0}.service-tab-list button:focus-visible{outline:2px solid #5890c1;outline-offset:2px}
#responsibilities>.sourced-accordion,#how>.sourced-accordion{max-width:1000px}
@media(max-width:600px){.teams-accordion button{padding:18px 16px;font-size:15px}.teams-accordion [role=region]>div{padding:18px 16px}.service-tab-list{gap:4px;padding:6px}.service-tab-list button{padding:12px 8px;font-size:12px}.service-tab-content{padding:22px 18px;min-height:340px}.service-tab-content p{font-size:15px}}
.service-tab-list button>span{display:flex;align-items:center;gap:12px}.service-tab-list button svg{width:22px;height:22px;flex:none}.service-panel-icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid #bfd2e3;border-radius:12px;background:#edf4fa;color:#37668c;margin-bottom:18px}
/* Hirael comparison-02: keep the source table and highlighted recommended column. */
.sourced-comparison h2{font-size:clamp(30px,4.5vw,56px);line-height:1.1;max-width:950px;color:#182f47}.sourced-comparison p{font-size:16px;line-height:1.7;color:#416481}.sourced-comparison table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;margin-top:30px;font-size:15px;line-height:1.5}.sourced-comparison th,.sourced-comparison td{padding:20px;text-align:left;border-bottom:1px solid #cedce8;vertical-align:middle}.sourced-comparison thead th:first-child{width:19%;font-size:12px;font-weight:400}.sourced-comparison thead th:not(:first-child){width:40.5%;vertical-align:top;font-size:18px}.sourced-comparison thead th>span{display:block}.sourced-comparison thead th>span:last-child{font-size:13px;font-weight:400;color:#416481;margin-top:8px}.sourced-comparison th:last-child,.sourced-comparison td:last-child{background:#e5eff8;border-inline:1px solid #bdcfe0}.sourced-comparison thead th:last-child{border-top:1px solid #bdcfe0;border-radius:14px 14px 0 0}.sourced-comparison tbody tr:last-child td:last-child{border-radius:0 0 14px 14px}.sourced-comparison th [class*="rounded-full"]{display:block;width:fit-content;font-size:10px;border:1px solid #b3cbe0;border-radius:20px;padding:3px 8px;color:#315e85;margin-top:8px}.sourced-comparison tbody th{font-weight:500}.sourced-comparison td button{border:0;background:#1c3a55;color:white;border-radius:24px;padding:12px 20px;font:inherit;cursor:pointer}.sourced-comparison .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* shadcnui-blocks timeline-04: source line/marker/content structure. */
.sourced-timeline{max-width:850px;margin:32px 0;padding:12px 8px}.sourced-timeline>div{position:relative;margin-left:20px}.sourced-timeline>div>div:first-child{position:absolute;top:0;bottom:24px;left:0;border-left:1px solid #aac4da}.sourced-timeline>div>div:not(:first-child){position:relative;padding:0 0 28px 42px}.sourced-timeline>div>div:last-child{padding-bottom:0}.sourced-timeline>div>div:not(:first-child)>div:first-child{position:absolute;left:0;transform:translateX(-50%);display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid #b8cde0;background:#eaf2f9;box-shadow:0 0 0 7px #f7fafc;color:#315e85}.sourced-timeline h3{font-size:19px;line-height:1.45;font-weight:600;margin:0;padding-top:5px;color:#193c5e}.sourced-timeline p:empty{display:none}
/* Content09: retrieved reveal/grid/card structure, scoped to Teams tokens. */
.sourced-icon-grid{margin-top:26px}.sourced-icon-grid ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;list-style:none;margin:0;padding:0}.sourced-icon-grid li>div{height:100%;border:1px solid #bfd1e1;background:#fff;border-radius:14px;box-shadow:0 3px 8px #19364f05}.sourced-icon-grid li>div>div{display:flex;flex-direction:column;gap:16px;padding:24px}.sourced-icon-grid svg{width:28px;height:28px;color:#37668c}.sourced-icon-grid h3{font-size:20px;line-height:1.3;margin:0;color:#193c5e}.sourced-icon-grid p{font-size:15px;line-height:1.7;margin:0;color:#416481}
@media(max-width:700px){.sourced-icon-grid ul{grid-template-columns:1fr}.sourced-comparison th,.sourced-comparison td{padding:12px 9px;font-size:13px}.sourced-comparison thead th:not(:first-child){font-size:15px}.sourced-comparison thead th:first-child{width:20%}.sourced-comparison thead th:not(:first-child){width:40%}.sourced-comparison td button{font-size:12px;padding:10px}.sourced-timeline h3{font-size:17px}.service-tab-list button>span{flex-direction:column;align-items:flex-start;gap:8px}}
@media(max-width:600px){
 .sourced-comparison table,.sourced-comparison thead,.sourced-comparison tbody{display:block;width:100%}
 .sourced-comparison tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .sourced-comparison thead th:first-child{display:none}
 .sourced-comparison thead th:not(:first-child){width:auto;font-size:15px;padding:16px 12px}
 .sourced-comparison tbody th{grid-column:1/-1;width:auto;font-size:12px;padding:12px;background:#edf3f8;border-bottom:0}
 .sourced-comparison td{font-size:14px;line-height:1.6;padding:16px 12px;min-width:0;overflow-wrap:break-word}
 .sourced-comparison tbody tr:last-child td{border-bottom:0}
 .sourced-comparison td button{font-size:12px;width:100%}
}
.sourced-nav-list{background:#fff;border-radius:16px;padding:8px 0}.sourced-nav-list>p{margin:0 0 16px;font-size:14px;color:#416481;font-weight:600}.sourced-nav-list ul{list-style:none;padding:0;margin:0}.sourced-nav-list li{margin-top:8px}.sourced-nav-list li>div>span{display:flex;align-items:center;gap:14px;padding:16px;border-radius:10px;background:#f3f7fb;color:#193c5e;line-height:1.6;font-size:15px}.sourced-nav-list li>div>span>span:first-child{flex:none;display:flex}.sourced-nav-list svg{width:22px;height:22px;color:#37668c}.benefit-card .approval-preview .sourced-nav-list li>div>span{padding:12px;font-size:13px}.benefit-card .approval-preview .sourced-nav-list svg{width:18px;height:18px}
/* Pilot uses the sourced card grid, not the retired ordered timeline. */
#how .section-intro{max-width:850px}
#how .section-intro h2{max-width:800px;margin-bottom:28px}
#how .editorial-relay{display:none}
#how .sourced-icon-grid{margin-top:0}
#how .sourced-icon-grid li{min-width:0}
#how .sourced-icon-grid li>div{box-sizing:border-box}
/* Explicit CTA colours prevent generic prose styles leaking onto the dark panel. */
#apply>div{color:#f5f9fd}
#apply>div h2,#apply>div h3{color:#f5f9fd}
#apply>div p,#apply>div li{color:#dce8f3;font-size:16px;line-height:1.7}
#apply>div>.eyebrow{color:#c4daed;font-size:14px}
#apply>div .overview-link,#apply>div a{color:#edf6ff;text-decoration-color:#aecfe9}
#apply>div .overview-link:focus-visible{outline:2px solid #c4daed;outline-offset:4px;border-radius:4px}
#apply>div .disclosure-body{padding:0;margin-top:22px}
#apply>div .disclosure-body ul{padding-left:22px;margin:18px 0 0}
#apply>div .disclosure-body li{margin:0 0 12px}
#how .sourced-icon-grid ul{padding:0;margin:0}
