:root{--surface-base:#071327;--surface-panel:#0d1e38;--surface-control:#0b1b33;--control-border:#7893b8;--control-hover:#aac7ee;--focus-ring:#a5ccff;--error-border:#ffb4b4;--label-muted:#b4c3db;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:48px;--space-6:72px}
/* Opaque control edges, separate states and immediate keyboard focus. */
input,select,textarea,.resource-fields input,.resource-fields select{background:var(--surface-control);border:1px solid var(--control-border);color:var(--ink);transition:none}
input:hover,select:hover,textarea:hover{border-color:var(--control-hover)}
input:focus,select:focus,textarea:focus,input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--focus-ring);outline:2px solid var(--focus-ring);outline-offset:3px;box-shadow:none}
input[aria-invalid="true"],select[aria-invalid="true"],textarea[aria-invalid="true"],input:user-invalid,select:user-invalid,textarea:user-invalid{border-color:var(--error-border)}
:focus-visible{outline:2px solid var(--focus-ring);outline-offset:4px;transition:none}
#brief-status,#planner-status,[data-tool-status]{display:block;min-height:3em;margin-top:var(--space-2)}
#brief-status:empty,#planner-status:empty,[data-tool-status]:empty{display:block}
/* Each heading has one voice. Editorial typography stays on whole section headings. */
h1,h1 em,.focus-hero h1 em,.standard-hero h1 em,.pillar-hero h1 em{color:var(--ink);font-family:Inter,Arial,sans-serif;font-style:normal;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit}
h2,h2 em,.focus-intro-grid h2 em,.brand-family-heading h2 em{color:var(--ink);font-family:Editorial,Georgia,serif;font-style:italic;font-size:inherit;font-weight:400;letter-spacing:inherit;line-height:inherit}
h1{font-size:clamp(2.75rem,5.6vw,6rem);line-height:1.1}h2{font-size:clamp(2rem,3.7vw,3.7rem);line-height:1.15}
.eyebrow-small,.focus-kicker,.page-index,.section-label,.workflow-label,.brand-family-eyebrow,.contact-address small,.contact-direct>a>span,.work-card small{color:var(--label-muted);text-transform:none;letter-spacing:0;font-size:.875rem}
.page-index i,.focus-kicker i,.status-dot,.page-grid{display:none}.page-index,.section-label{gap:var(--space-1)}
.section-paper,.section-light{padding-top:var(--space-6);padding-bottom:var(--space-6)}
.standard-hero{background:var(--surface-base);padding-top:145px;padding-bottom:var(--space-5)}
.pillar-hero,.focus-page-hero{background:var(--surface-base)}
.page-cta{padding-top:var(--space-6);padding-bottom:var(--space-6)}.page-cta h2{color:var(--ink);font-size:clamp(2.3rem,4.5vw,4.5rem)}
.focus-service-card:hover{transform:none;box-shadow:none}.scenario-buttons button{white-space:normal}
/* The working example is the main visual on the homepage. */
.home-hero{padding:155px 0 var(--space-6);background:var(--surface-base)}
.home-hero-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);align-items:center}
.home-hero h1{font-size:clamp(2.8rem,4.6vw,5.1rem);max-width:13ch;margin:var(--space-2) 0 var(--space-3)}
.home-hero-copy>p{max-width:50ch;line-height:1.8}.home-hero .hero-actions{gap:var(--space-3);flex-wrap:wrap}
.home-demo{min-width:0;border:1px solid var(--line);border-radius:18px;padding:var(--space-4);background:var(--surface-panel)}
.home-demo h2{font:500 1.35rem/1.4 Inter,Arial,sans-serif;margin:var(--space-1) 0 var(--space-2)}
.home-demo>p,.home-demo [role="status"]{font-size:.875rem;line-height:1.65;color:var(--muted)}
.home-demo .demo-actions{display:flex;flex-wrap:wrap;gap:var(--space-1);margin:var(--space-3) 0 var(--space-2)}
.home-demo button{font:inherit;font-size:.875rem;padding:10px 14px;min-height:44px;border-radius:8px;border:1px solid var(--control-border);color:var(--ink);background:var(--surface-control);cursor:pointer}
.home-demo button:disabled{opacity:.5;cursor:default}.home-demo button:hover:enabled{border-color:var(--control-hover)}
.home-demo [role="status"]{min-height:3.3em}.home-demo .demo-result{margin-top:var(--space-2);border-top:1px solid var(--line);padding-top:var(--space-2)}
.home-demo .demo-metrics{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2);margin:0}.home-demo .demo-metrics>div{padding:0;border:0;background:none}
.home-demo dt{font-size:.8125rem;color:var(--muted)}.home-demo dd{font-size:1.75rem;margin:var(--space-1) 0 0}
.home-demo .demo-log{margin:var(--space-2) 0 0;padding-left:20px;font-size:.8125rem;color:var(--muted);line-height:1.65}
.home-demo>a{display:inline-block;padding-top:var(--space-3);color:var(--blue-light);text-decoration:underline;text-underline-offset:4px}
.home-evidence{border-top:1px solid var(--line)}.home-evidence-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}
.home-evidence h2{max-width:18ch}.home-evidence p{margin-top:var(--space-2);line-height:1.8}.home-evidence a{color:var(--blue-light);text-decoration:underline;text-underline-offset:4px}
.home-services{padding:var(--space-6) 0}.home-services h2{margin-bottom:var(--space-4)}
.home-service-list{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--space-5)}.home-service-list article{border-top:1px solid var(--line);padding:var(--space-3) 0 var(--space-4)}
.home-service-list h3{font-size:1.3rem;line-height:1.4;margin:0 0 var(--space-2)}.home-service-list h3 a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:5px}
.home-service-list p{max-width:48ch;line-height:1.8}.home-directory-link{display:inline-block;color:var(--blue-light);text-decoration:underline;padding-top:var(--space-2)}
.home-page .brand-family-card{padding:var(--space-4)}.home-page .brand-family-heading{margin-bottom:var(--space-4)}
.home-page .pillar-faq{padding-top:var(--space-6);padding-bottom:var(--space-6)}
/* Short contact opening, followed immediately by the brief. */
.contact-page .standard-hero{padding:130px 0 var(--space-3)}.contact-page .standard-hero h1{font-size:clamp(2.5rem,4.3vw,4rem);margin:var(--space-2) 0}
.contact-page .standard-hero>div>p{font-size:1rem;max-width:65ch;line-height:1.7}.contact-page .standard-hero+.section-paper{padding-top:var(--space-3)}
.contact-page .brief-form-panel{padding:var(--space-4)}.contact-page .brief-form-panel>h2{font:500 1.5rem/1.4 Inter,Arial,sans-serif;margin:0 0 var(--space-2)}
.contact-page .form-note{margin-top:var(--space-2)}.contact-page .contact-availability{font-size:.875rem;line-height:1.7}
.contact-page .contact-direct,.contact-page .contact-address,.contact-page .next-steps{padding:var(--space-3)}
.contact-page .contact-address h2{margin:var(--space-2) 0;font-size:1.8rem}.contact-page .contact-direct h2{font-size:1.8rem}.contact-page .contact-aside{gap:var(--space-3)}
.contact-page .page-index{display:none}.contact-page .breadcrumbs{margin-bottom:12px}.contact-page #project-brief{margin-top:var(--space-2)}
.footer-column>span,.footer-brands-title{letter-spacing:0;text-transform:none}
.service-illustration figcaption{font-size:12px;letter-spacing:0;text-transform:none;color:var(--label-muted)}
.service-illustration::before{display:none}.service-illustration-image{animation:none;transform:none}
.service-hero h1{font-family:Inter,Arial,sans-serif;font-style:normal;color:var(--ink)}
/* Retain native tables and keep row context visible during horizontal scrolling. */
.resource-table-wrap{position:relative;max-width:100%;isolation:isolate;scroll-padding-inline-start:180px}
.resource-table-wrap:focus-visible{outline:2px solid var(--focus-ring);outline-offset:4px}
.resource-table th[scope="row"]{position:sticky;left:0;background:var(--surface-panel);min-width:140px;max-width:180px;border-right:1px solid var(--line)}
.resource-table:has(thead th:nth-child(4)){min-width:720px}.table-scroll-hint{display:none;color:var(--label-muted);font-size:.8125rem;line-height:1.6}
#planner-results .resource-table{min-width:0}#planner-results .resource-table th,#planner-results .resource-table td{overflow-wrap:anywhere}
/* Compact industry selection with optional detail, preserving every anchored entry. */
.industries-page .industries-directory{padding:var(--space-4) 0 var(--space-6)}
.industries-page .industries-directory>.page-shell{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4) var(--space-5)}
.industries-page .industry-detail{display:block;padding:var(--space-3) 0 0;min-width:0}
.industries-page .industry-detail h2{font:500 1.3rem/1.4 Inter,Arial,sans-serif;margin-bottom:var(--space-2)}
.industries-page .industry-detail p{font-size:.9375rem;line-height:1.75}.industries-page .industry-detail .industry-solution-link{margin:var(--space-2) 0}
.industry-resources{margin-top:var(--space-2)}.industry-resources>summary,.technical-details>summary{cursor:pointer;padding:var(--space-2) 0;color:var(--blue-light);font-size:.9375rem}
.industry-resources>div{padding:var(--space-2) 0}.industry-resources .industry-tags{gap:var(--space-1)}.industry-resources .industry-tags span{font-size:.8125rem}
.industry-resources .industry-services,.industry-resources .industry-guides{margin-top:var(--space-2)}
.technical-details{border-top:1px solid var(--line);background:var(--surface-base)}.technical-details>summary{width:var(--shell);margin-inline:auto;padding:var(--space-3) 0;font-size:1.125rem}
.technical-details>section{padding-top:var(--space-3);padding-bottom:var(--space-5)}#practice-leadership .values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){.home-hero{padding-top:130px}.home-hero-layout{grid-template-columns:1fr;gap:var(--space-4)}.home-hero h1{max-width:18ch}.home-evidence-layout{gap:var(--space-4)}.contact-page .contact-layout{grid-template-columns:1fr}}
@media(max-width:600px){.home-hero{padding:115px 0 var(--space-5)}.home-hero h1{font-size:clamp(2.45rem,9.5vw,3.5rem)}.home-demo{padding:var(--space-3)}.home-hero .hero-actions{gap:var(--space-2)}.home-evidence-layout,.home-service-list,.industries-page .industries-directory>.page-shell,#practice-leadership .values-grid{grid-template-columns:1fr}.home-evidence-layout{gap:var(--space-4)}.section-paper,.section-light,.home-services,.home-page .pillar-faq{padding-top:var(--space-5);padding-bottom:var(--space-5)}.standard-hero{padding-top:120px;padding-bottom:var(--space-4)}.contact-page .standard-hero{padding-top:105px;padding-bottom:var(--space-2)}.contact-page .brief-form-panel{padding:var(--space-3) 20px}.contact-page .form-grid{gap:var(--space-2)}.contact-page .standard-hero+.section-paper{padding-top:var(--space-2)}.table-scroll-hint{display:block;margin-bottom:var(--space-1)}.resource-table th[scope="row"]{min-width:120px;max-width:145px}.resource-table-wrap{scroll-padding-inline-start:145px}.resource-table th,.resource-table td{font-size:.875rem;line-height:1.6}.resource-table:has(thead th:nth-child(4)){min-width:660px}#planner-results .resource-table th{min-width:0}.resource-form{padding:var(--space-3) 20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(max-width:600px){.pillar-hero .service-illustration{height:220px}.service-illustration figcaption{font-size:12px;letter-spacing:0}}
