/* Completed M365 case study and public report. Shared palette lives in styles.css. */
.breadcrumb-bar{border-bottom:1px solid var(--border);padding:16px 0;font-size:11px}
.case-hero{padding:66px 0 0}
.case-kicker{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:32px}
.case-kicker .eyebrow{margin:0}
.status-complete{display:inline-flex;align-items:center;gap:8px;border:1px solid #a4b497;background:#d9e1ce;color:#355035;padding:6px 11px;font:10px 'Courier New',monospace;white-space:nowrap}
.status-complete:before{content:'';width:5px;height:5px;border-radius:50%;background:#507143}
.case-hero h1{font-size:clamp(40px,5vw,68px);max-width:1040px}
.case-lede{max-width:700px;font-size:16px;line-height:1.8;margin:28px 0}
.case-actions{display:flex;flex-wrap:wrap;align-items:center;gap:27px;margin:30px 0 42px}
.case-meta{display:grid;grid-template-columns:1fr 1fr 1fr 1.4fr;gap:28px;margin:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:25px 0}
.case-meta div{min-width:0}
.case-meta dt{font:9px 'Courier New',monospace;letter-spacing:.1em;color:var(--accent);margin-bottom:9px}
.case-meta dd{font-size:12px;line-height:1.6;margin:0}
.case-study .case-overview{padding:75px 0}
.case-section-heading{display:grid;grid-template-columns:1fr 2fr;gap:55px;align-items:start}
.case-section-heading h2{margin:0 0 25px!important}
.case-section-heading>div>p{font-size:14px;max-width:720px}
.delivery-sequence{display:grid;grid-template-columns:repeat(6,1fr);list-style:none;margin:38px 0 0;padding:0;border-top:1px solid var(--border)}
.delivery-sequence li{padding:22px 17px 6px 0;display:flex;flex-direction:column;gap:13px}
.delivery-sequence .mono{font-size:8px;color:var(--accent)}
.delivery-sequence strong{font-size:11px;font-weight:500;line-height:1.6;min-height:37px}
.phase-done{font-size:9px;color:#46623c;display:flex;gap:9px;align-items:center}
.case-study .case-documentation{background:var(--bg-alt);padding:75px 0}
.case-documentation .section-heading h2{margin-bottom:0}
.completion-report-link{display:flex;align-items:center;gap:25px;border:1px solid var(--border-strong);background:var(--surface);padding:32px;margin:0 0 36px}
.completion-report-link:hover{border-color:var(--accent)}
.report-link-icon{font-size:40px;line-height:1;color:var(--accent)}
.completion-report-link .mono{font-size:8px;color:var(--accent)}
.completion-report-link h3{font-size:24px;margin:11px 0;line-height:1.3}
.completion-report-link p{font-size:12px}
.report-link-arrow{margin-left:auto;font-size:35px}
.docs-tab-nav{display:flex;gap:28px;border-bottom:1px solid var(--border-strong);margin-bottom:34px}
.docs-tab-btn{border:0;border-bottom:2px solid transparent;padding:15px 0;margin-bottom:-1px;background:none;color:var(--text-muted);font-size:12px}
.docs-tab-btn.active{color:var(--text);border-bottom-color:var(--accent)}
.docs-tab-btn:hover{color:var(--accent)}
.docs-tab-content{display:block}
.docs-tabs:has([role=tablist]) .docs-tab-content:not(.active){display:none}
.docs-tab-content>h3,.docs-tab-content>div>h3{font-size:27px;line-height:1.3;margin-bottom:20px}
.docs-tab-content>p,.docs-tab-content>div>p{font-size:13px;max-width:840px;margin:0 0 15px}
.delivery-metrics{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:25px 0;margin:30px 0}
.delivery-metrics strong{display:block;font-size:48px;line-height:1.1;font-weight:500;letter-spacing:-.06em}
.delivery-metrics strong span{font-size:24px;color:var(--text-muted)}
.delivery-metrics p{font-size:11px;margin-top:10px}
.table-scroll{max-width:100%;overflow-x:auto}
.delivery-table{border-collapse:collapse;width:100%;margin:10px 0;font-size:12px;text-align:left}
.delivery-table caption{text-align:left;color:var(--text-muted);font-size:11px;padding:0 0 17px}
.delivery-table th,.delivery-table td{padding:15px 14px;border-bottom:1px solid var(--border);vertical-align:top}
.delivery-table tr>:first-child{padding-left:0;width:62%}
.delivery-table th{font-weight:500}
.delivery-table thead th{font:9px 'Courier New',monospace;letter-spacing:.04em;color:var(--accent)}
.delivery-table tbody td:last-child{color:#46623c}
.delivery-table tfoot{font-weight:600}
.report-note{font-size:11px!important;color:var(--text-muted);margin-top:20px!important}
.phase-record{border-top:1px solid var(--border);padding:30px 0 32px;scroll-margin-top:120px}
.phase-record-heading{display:flex;align-items:center;gap:21px}
.phase-record-heading .eyebrow{font-size:8px!important;margin:0 0 8px!important;letter-spacing:.04em}
.phase-record-heading h3{font-size:28px;line-height:1.2}
.phase-number{font-family:var(--serif);font-style:italic;font-size:38px;color:var(--accent);line-height:1}
.phase-record-heading .status-complete{margin-left:auto}
.phase-summary{font-size:13px;margin:22px 0 20px;max-width:820px}
.report-points{display:grid;grid-template-columns:1fr 1fr;gap:23px 45px;list-style:none;padding:0;margin:0}
.report-points li{min-width:0}
.report-points strong{font-size:12px;line-height:1.5;font-weight:600}
.report-points p{font-size:12px;line-height:1.8;margin-top:8px}
.checklist-note{font-size:8px;color:var(--text-muted);margin-top:26px}
.scope-columns{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin:27px 0 40px}
.scope-columns h3{font-size:20px;margin-bottom:19px}
.scope-columns ul{padding-left:17px;font-size:12px;line-height:1.8;color:var(--text-muted)}
.scope-columns li{padding-left:4px;margin-bottom:11px}
.handover-list{margin:23px 0 36px}
.handover-list article{display:flex;gap:22px;border-top:1px solid var(--border);padding:21px 0}
.handover-list .index{padding-top:4px}
.handover-list h3{font-size:19px;margin-bottom:11px}
.handover-list p{font-size:12px;max-width:720px}
.toolkit-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px 50px;margin:32px 0}
.toolkit-grid h4{font-size:14px;font-weight:600;margin-bottom:10px}
.toolkit-grid p{font-size:12px}
.repository-callout{border-top:1px solid var(--border);padding:25px 0 0;margin-top:26px}
.repository-callout>.mono{display:block;font-size:8px;color:var(--accent);margin-bottom:12px}
.repository-callout>a{font-size:13px;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:5px}
.repository-callout>a>span{margin-left:10px}
.case-resource-footer{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--border-strong);margin-top:40px;padding-top:26px}
.case-resource-footer p{font-size:11px}
.case-contact{padding:70px 0;background:var(--bg)}
.case-contact>.container{display:flex;justify-content:space-between;gap:50px;align-items:center}
.case-contact h2{font-size:44px}
.case-email{display:block;font-size:12px;margin-top:20px}
.case-study .footer-inner{gap:25px}
.case-study .footer-inner p{font-size:9px}
.case-study .footer-inner .footer-links{font-size:10px}
.report-document{width:min(100%,1050px);margin:0 auto;padding:65px 56px 70px}
.report-header h1{font-size:64px}
.report-subtitle{font-size:14px;line-height:1.8;max-width:650px;margin:24px 0}
.report-header .case-meta{grid-template-columns:1.25fr 1fr 1fr;margin-top:30px}
.report-header .case-actions{margin-bottom:20px}
.report-section{padding:48px 0 0}
.report-section h2{font-size:38px;margin-bottom:23px}
.report-section>.eyebrow{margin-bottom:18px}
.report-section>p:not(.eyebrow){font-size:13px;line-height:1.9;margin-bottom:16px}
.report-toc{display:grid;gap:0;margin:8px 0 0}
.report-toc a{display:flex;gap:18px;font-size:12px;border-bottom:1px solid var(--border);padding:13px 0}
.report-toc a span{font:10px 'Courier New',monospace;color:var(--accent)}
.report-section .phase-record:first-of-type{margin-top:30px}
.report-section .phase-record:last-child{padding-bottom:0}
.report-section .phase-record-heading h3{font-size:25px}
.report-evidence{margin-top:40px;border-top:1px solid var(--border)}
.report-evidence h2{font-size:31px}
.report-signoff{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--border);margin-top:40px;padding-top:26px}
.report-signoff strong{font-size:14px;font-weight:600}
.report-signoff p,.report-signoff a{font-size:11px}
@media(max-width:1000px){
.case-meta{grid-template-columns:1fr 1fr;gap:22px}
.delivery-sequence{grid-template-columns:repeat(3,1fr)}
.delivery-sequence li{padding-bottom:18px}
.case-section-heading{grid-template-columns:.7fr 1.4fr;gap:30px}
.report-points{gap:22px 30px}
.phase-record-heading h3{font-size:23px}
.case-study .footer-inner{gap:17px}
}
@media(max-width:760px){
.case-kicker{align-items:flex-start;gap:15px}
.case-kicker .eyebrow{font-size:8px;max-width:230px}
.case-hero{padding-top:37px}
.case-hero h1{font-size:43px}
.case-lede{font-size:14px}
.case-actions{gap:20px}
.case-section-heading{grid-template-columns:1fr;gap:6px}
.case-section-heading>div>p{font-size:13px}
.case-study .case-overview,.case-study .case-documentation{padding:50px 0}
.case-documentation .section-heading h2{font-size:36px}
.docs-tab-nav{gap:17px;flex-wrap:wrap}
.docs-tab-btn{font-size:11px;padding:12px 0}
.completion-report-link{padding:24px;gap:17px}
.report-link-icon{display:none}
.completion-report-link h3{font-size:21px}
.completion-report-link p{font-size:11px}
.report-link-arrow{font-size:28px}
.phase-record-heading{gap:14px;flex-wrap:wrap}
.phase-record-heading .status-complete{padding:4px 8px;font-size:9px}
.phase-record-heading h3{font-size:22px}
.phase-number{font-size:32px}
.report-points{gap:22px 25px}
.scope-columns{gap:30px}
.scope-columns h3{font-size:19px}
.toolkit-grid{gap:22px 30px}
.case-contact>.container{align-items:flex-start}
.case-contact h2{font-size:34px}
.report-document{padding:40px 35px 50px}
.report-header h1{font-size:48px}
.report-header .case-meta{grid-template-columns:1fr 1fr}
.report-section h2{font-size:32px}
.report-section .phase-record-heading h3{font-size:22px}
}
@media(max-width:620px){
.case-hero h1{font-size:clamp(36px,8.8vw,50px)}
.case-kicker .eyebrow{font-size:7px;max-width:180px}
.status-complete{font-size:9px;padding:5px 8px;gap:6px}
.case-meta dt{font-size:8px}
.case-meta dd{font-size:11px}
.delivery-sequence{grid-template-columns:1fr 1fr}
.delivery-sequence strong{font-size:11px}
.case-actions .btn{font-size:11px}
.case-documentation .section-heading h2{font-size:35px}
.completion-report-link{padding:22px 18px}
.completion-report-link .mono{font-size:7px;line-height:1.8}
.completion-report-link h3{font-size:20px}
.completion-report-link p{font-size:11px}
.report-link-arrow{font-size:25px}
.docs-tab-nav{display:grid;grid-template-columns:1fr 1fr;gap:3px 22px;margin-bottom:26px}
.docs-tab-btn{text-align:left;padding:12px 0;font-size:11px}
.docs-tab-content>h3,.docs-tab-content>div>h3{font-size:23px}
.delivery-metrics{gap:15px;padding:22px 0;margin:25px 0}
.delivery-metrics strong{font-size:37px}
.delivery-metrics strong span{font-size:20px}
.delivery-metrics p{font-size:9px;line-height:1.6}
.delivery-table{font-size:10px}
.delivery-table thead th{font-size:8px}
.delivery-table th,.delivery-table td{padding:12px 8px}
.delivery-table tr>:first-child{width:52%}
.delivery-table caption{font-size:10px}
.phase-record-heading{display:grid;grid-template-columns:30px 1fr;gap:10px 13px}
.phase-record-heading .status-complete{grid-column:2;justify-self:start;margin:0}
.phase-record-heading h3{font-size:23px}
.phase-record-heading .eyebrow{font-size:7px!important}
.phase-summary{font-size:12px}
.report-points{grid-template-columns:1fr;gap:21px}
.report-points p{font-size:12px}
.checklist-note{font-size:7px}
.scope-columns{grid-template-columns:1fr;gap:25px}
.scope-columns ul{margin-bottom:0}
.handover-list h3{font-size:18px;line-height:1.4}
.toolkit-grid{grid-template-columns:1fr;gap:25px}
.repository-callout>a{font-size:11px}
.case-resource-footer{flex-direction:column;align-items:flex-start;gap:15px}
.case-contact{padding:48px 0}
.case-contact>.container{flex-direction:column;gap:30px}
.case-contact h2{font-size:37px}
.report-document{padding:35px 23px 45px}
.report-header h1{font-size:43px}
.report-subtitle{font-size:12px}
.report-header .case-meta{grid-template-columns:1fr}
.report-section{padding-top:35px}
.report-section h2{font-size:30px}
.report-section>p:not(.eyebrow){font-size:12px}
.report-section .phase-record-heading h3{font-size:23px}
.report-toc a{font-size:11px}
.report-signoff{flex-direction:column;align-items:flex-start;gap:17px}
.report-evidence h2{font-size:27px}
}
@page{size:A4;margin:18mm}
@media print{
body.completion-report{background:#fff;color:#20271f;font-size:10pt}
.completion-report .site-header,.completion-report .site-footer,.completion-report .breadcrumb-bar,.completion-report .skip-link,.report-header .case-actions,.report-toc{display:none!important}
.report-document{width:100%;padding:0;margin:0}
.report-header h1{font-size:35pt}
.report-header .case-kicker{margin-bottom:20px}
.report-header .case-meta{grid-template-columns:1fr 1fr 1fr}
.report-header .case-meta dd{font-size:9pt}
.report-subtitle{font-size:11pt}
.report-section{padding-top:23pt}
.report-section h2{font-size:23pt}
.report-section>p:not(.eyebrow),.report-points p,.phase-summary{font-size:9pt;line-height:1.6}
.report-section .phase-record-heading h3{font-size:20pt}
.phase-record{padding:22pt 0;break-inside:avoid}
.phase-record-heading{display:flex}
.phase-record-heading .status-complete{margin-left:auto}
.report-points{grid-template-columns:1fr 1fr;gap:15pt 25pt}
.report-points strong{font-size:10pt}
.delivery-metrics strong{font-size:30pt}
.delivery-metrics p{font-size:9pt}
.scope-columns{grid-template-columns:1fr 1fr;gap:25pt}
.scope-columns ul,.handover-list p{font-size:9pt}
.report-signoff{flex-direction:row}
.delivery-table{font-size:9pt}
.delivery-table thead{display:table-header-group}
.delivery-table tr,.handover-list article,.report-signoff{break-inside:avoid}
.report-evidence h2{font-size:22pt}
h2,h3,h4{break-after:avoid}
.report-note,.checklist-note{font-size:8pt}
.completion-report a{color:inherit}
}
