/* Institutional shell. Scoped selectors; no experiment or Home content rules. */
.dcgi-header,.dcgi-footer,.dcgi-breadcrumbs{font-family:Inter,"Segoe UI",sans-serif;box-sizing:border-box}
.dcgi-header *,.dcgi-footer *{box-sizing:border-box}
.dcgi-shell-wrap{max-width:1280px;margin-inline:auto;padding-inline:clamp(20px,4vw,52px)}
.dcgi-brand{display:inline-flex;align-items:center;gap:12px;color:inherit;text-decoration:none;font:600 1rem/1.2 "Barlow Semi Condensed",Inter,sans-serif;flex-shrink:0}
.dcgi-brand img{width:30px;height:30px;object-fit:contain;display:block}
.dcgi-brand span{max-width:145px}
.dcgi-header{position:relative;isolation:isolate;z-index:30;background:#fff;color:#141414;border-bottom:1px solid #e2e2df}
.dcgi-header-row{display:grid;grid-template-columns:auto minmax(0,1fr) 40px;align-items:center;gap:20px;min-height:88px}
.dcgi-header .dcgi-brand span{max-width:none;white-space:nowrap}
.dcgi-primary{display:flex;align-items:center;justify-content:flex-end;gap:18px;min-width:0}
.dcgi-nav-item{position:relative;flex:none}
.dcgi-nav-item>a,.dcgi-dropdown>summary{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 0;color:#565656;font:500 .82rem/1.4 Inter,"Segoe UI",sans-serif;text-decoration:none;white-space:nowrap}
.dcgi-nav-item--active>a,.dcgi-nav-item--active>.dcgi-dropdown>summary{color:#141414;text-decoration:underline;text-decoration-color:#176b52;text-underline-offset:7px}
.dcgi-nav-item>a:hover,.dcgi-dropdown>summary:hover,.dcgi-dropdown[open]>summary{color:#176b52}
.dcgi-dropdown{position:relative}
.dcgi-dropdown>summary{list-style:none;cursor:pointer}
.dcgi-dropdown>summary::-webkit-details-marker{display:none}
.dcgi-chevron{display:block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);flex:none}
.dcgi-dropdown[open] .dcgi-chevron{transform:rotate(225deg) translate(-1px,-1px)}
.dcgi-dropdown-panel{position:absolute;z-index:5;top:100%;left:-18px;width:300px;max-width:calc(100vw - 40px);max-height:min(620px,calc(100dvh - 120px));overflow-y:auto;overscroll-behavior:contain;padding:10px;border:1px solid #e2e2df;border-radius:4px;background:#fff;box-shadow:0 16px 40px #14141416}
.dcgi-dropdown:not([open])>.dcgi-dropdown-panel{display:none}
.dcgi-nav-item:last-of-type .dcgi-dropdown-panel{left:auto;right:-18px}
.dcgi-dropdown-panel a{display:flex;align-items:center;min-height:44px;padding:11px 14px;border-radius:3px;color:#565656;font:400 .85rem/1.45 Inter,"Segoe UI",sans-serif;text-decoration:none}
.dcgi-dropdown-panel a:hover,.dcgi-dropdown-panel a:focus-visible{background:#f1f1ef;color:#141414}
.dcgi-dropdown-panel a[aria-current]{background:#f1f1ef;color:#176b52;font-weight:600}
.dcgi-collaborate{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 16px;background:#4b54fb;border:1px solid #4b54fb;border-radius:4px;color:#fff;text-decoration:none;font:500 .66rem/1.3 "JetBrains Mono",monospace;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
.dcgi-collaborate:hover{background:#141414;border-color:#141414}
.dcgi-search-trigger,.dcgi-menu-toggle{display:grid;place-items:center;width:40px;height:44px;padding:0;background:transparent;border:1px solid transparent;border-radius:3px;color:#565656;cursor:pointer}
.dcgi-search-trigger:hover,.dcgi-menu-toggle:hover,.dcgi-menu-toggle[aria-expanded=true]{background:#f1f1ef;color:#141414}
.dcgi-header :is(.dcgi-search-trigger,.dcgi-menu-toggle) svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
.dcgi-control-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.dcgi-header [hidden]{display:none!important}
.dcgi-header :focus-visible,.dcgi-footer :focus-visible,.dcgi-breadcrumbs :focus-visible{outline:2px solid #4b54fb;outline-offset:4px}
.dcgi-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px 10px;margin-block:24px 0;color:#565656;font-size:.73rem;line-height:1.5}
.dcgi-breadcrumbs a{color:inherit;text-decoration:none}
.dcgi-breadcrumbs a:hover{text-decoration:underline}
.dcgi-breadcrumbs [aria-current]{color:#141414}
.dcgi-footer{background:#070707;color:#bdbdbd;padding-block:64px 32px}
.dcgi-footer-intro{display:flex;justify-content:space-between;align-items:start;gap:28px;padding-bottom:36px;border-bottom:1px solid #343434}
.dcgi-footer .dcgi-brand{color:#fff}
.dcgi-footer .dcgi-brand span{max-width:none}
.dcgi-footer .dcgi-brand img{filter:invert(1)}
.dcgi-footer-intro p{font-size:.88rem;line-height:1.7;margin:16px 0 0;max-width:52ch;color:#bdbdbd}
.dcgi-footer nav a{display:block;font-size:.84rem;line-height:1.55;color:#bdbdbd;text-decoration:none;padding-block:5px}
.dcgi-footer nav a:hover{color:#fff}
.dcgi-footer-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;padding-block:36px}
.dcgi-footer h2{font:500 .68rem/1.5 "JetBrains Mono",monospace;color:#fff;letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px}
.dcgi-footer-bottom{border-top:1px solid #343434;padding-top:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:.74rem;line-height:1.6}
.dcgi-footer-bottom a{color:inherit;overflow-wrap:anywhere;text-decoration:none}
.dcgi-search-dialog{width:min(680px,calc(100vw - 40px));max-height:80dvh;padding:28px;border:1px solid #c2c2be;border-radius:4px;background:#fff;color:#141414;font:400 1rem/1.6 Inter,sans-serif}
.dcgi-search-dialog::backdrop{background:#14141499}
.dcgi-search-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px}
.dcgi-search-heading h2{font:600 1.8rem/1.2 "Barlow Semi Condensed",sans-serif;margin:0}
.dcgi-search-heading button{padding:8px 12px;background:#fff;color:#141414;border:1px solid #c2c2be;border-radius:3px;cursor:pointer}
.dcgi-search-dialog label{display:block;font-size:.8rem;margin-bottom:8px}
.dcgi-search-dialog input{box-sizing:border-box;width:100%;padding:12px;border:1px solid #c2c2be;background:#fff;color:#141414;font:inherit;border-radius:3px}
.dcgi-search-count{font-size:.76rem;color:#565656;margin:12px 0}
.dcgi-search-results a{display:block;padding:16px 0;border-top:1px solid #e2e2df;color:#141414;text-decoration:none}
.dcgi-search-results strong,.dcgi-search-results small{display:block}
.dcgi-search-results small{font-size:.8rem;color:#565656;margin-top:4px}
.dcgi-search-results a:hover strong{text-decoration:underline}

@media(min-width:1280px){.dcgi-menu-toggle{display:none!important}}
@media(max-width:1279px){
 .dcgi-header-row{grid-template-columns:minmax(0,1fr) 40px 40px;gap:12px;min-height:80px;padding-block:16px}
 .dcgi-menu-toggle{grid-column:2;grid-row:1}
 .dcgi-search-trigger{grid-column:3;grid-row:1}
 .dcgi-primary{grid-column:1/-1;grid-row:2;display:flex;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid #e2e2df;padding-top:12px}
 .dcgi-header[data-enhanced] .dcgi-primary:not([data-open]){display:none}
 .dcgi-nav-item{width:100%;border-bottom:1px solid #e2e2df}
 .dcgi-nav-item>a,.dcgi-dropdown>summary{justify-content:space-between;font-size:.94rem;padding:15px 4px;min-height:50px}
 .dcgi-dropdown-panel,.dcgi-nav-item:last-of-type .dcgi-dropdown-panel{position:static;width:100%;max-width:none;max-height:none;margin-bottom:12px;padding:4px 8px;border:0;border-left:2px solid #e2e2df;border-radius:0;box-shadow:none;overflow:visible}
 .dcgi-dropdown-panel a{padding:12px;font-size:.88rem}
 .dcgi-collaborate{margin-top:16px;align-self:flex-start}
}
@media(max-width:600px){
 .dcgi-header-row{gap:6px;min-height:72px;padding-block:12px}
 .dcgi-header .dcgi-brand{gap:8px;font-size:.9rem}
 .dcgi-header .dcgi-brand img{width:26px;height:26px}
}
@media(max-width:360px){.dcgi-header .dcgi-brand{font-size:.8rem}.dcgi-header .dcgi-brand img{width:24px;height:24px}.dcgi-header-row{gap:4px}}
/* Approved footer layout is retained. */
@media(max-width:760px){.dcgi-footer-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.dcgi-footer-intro{flex-direction:column}.dcgi-footer-intro nav{display:flex;flex-wrap:wrap;gap:8px 24px}}
@media(max-width:420px){.dcgi-footer-columns{grid-template-columns:1fr}.dcgi-search-dialog{padding:20px}}
@media print{.dcgi-header,.dcgi-footer,.dcgi-search-dialog{display:none!important}}
