/* Shared site chrome. The repeated root deliberately outranks legacy page-local
   :has(home/terms) rules, regardless of whether stored inline CSS follows this file.
   Keep all selectors within the public shell; portal content stays independent. */
.dl-site.dl-site.dl-site.dl-site .dl-header{
 display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;
 min-height:112px;padding-block:1rem;gap:clamp(1rem,3vw,2.5rem);
 background:var(--ink,#090f26);border-bottom:1px solid var(--line,#44516f);
}
.dl-site.dl-site.dl-site.dl-site .dl-brand{width:148px;flex:0 0 auto;background:#fff}
.dl-site.dl-site.dl-site.dl-site .dl-brand img{display:block;width:100%;height:auto}
.dl-site.dl-site.dl-site.dl-site .dl-header-note{
 margin:0 auto 0 0;font-size:.75rem;line-height:1.65;letter-spacing:.1em;color:var(--muted,#b5bed4);
}
.dl-site.dl-site.dl-site.dl-site .dl-header-actions{display:flex;align-items:center;gap:.75rem;flex:0 0 auto}
.dl-site.dl-site.dl-site.dl-site :is(.dl-header-date,.dl-menu-button,.dl-nav-native-toggle){
 min-height:48px;padding:.65rem 1rem;border:1px solid var(--line,#44516f);border-radius:3px;
 font:600 .875rem/1.4 var(--text,Arial,sans-serif);letter-spacing:0;text-transform:none;
 text-decoration:none;white-space:nowrap;gap:.65rem;align-items:center;justify-content:center;
}
.dl-site.dl-site.dl-site.dl-site .dl-header-date{display:inline-flex;background:var(--yellow,#f9da5a);border-color:var(--yellow,#f9da5a);color:var(--ink,#090f26)}
.dl-site.dl-site.dl-site.dl-site .dl-menu-button{background:transparent;color:var(--paper,#f2eee4)}
.dl-site.dl-site.dl-site.dl-site :is(.dl-menu-label,.dl-nav-native-label){display:inline;font-size:.875rem!important;letter-spacing:0;text-transform:none}
.dl-site.dl-site.dl-site.dl-site .dl-bars{height:20px;gap:4px}
.dl-site.dl-site.dl-site.dl-site .dl-bars i{width:2px}
.dl-site.dl-site.dl-site.dl-site .dl-bars i:nth-child(2){height:14px}
.dl-site.dl-site.dl-site.dl-site .dl-nav-native-toggle{display:flex;color:var(--paper,#f2eee4);background:transparent;cursor:pointer}
.dl-site.dl-site.dl-site.dl-site :is(.dl-menu-button,.dl-nav-native-toggle):hover{border-color:var(--yellow,#f9da5a);background:var(--blue,#172953)}
.dl-site.dl-site.dl-site.dl-site .dl-header-date:hover{background:var(--paper,#f2eee4);border-color:var(--paper,#f2eee4)}
.dl-site.dl-site.dl-site.dl-site .dl-footer{
 padding-block:clamp(2.5rem,5vw,4.5rem) 1.5rem;background:#060a19;color:var(--paper,#f2eee4);
 border-top:2px solid var(--yellow,#f9da5a);text-align:left;
}
.dl-site.dl-site.dl-site.dl-site .dl-footer-top{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));gap:clamp(1.5rem,4vw,4rem);align-items:start}
.dl-site.dl-site.dl-site.dl-site .dl-footer-top>*{min-width:0}
.dl-site.dl-site.dl-site.dl-site .dl-footer-statement{
 margin:0 0 1rem;max-width:10ch;color:var(--yellow,#f9da5a);
 font:800 clamp(3rem,5vw,4.5rem)/.95 var(--display,'Arial Narrow',sans-serif);text-transform:uppercase;
}
.dl-site.dl-site.dl-site.dl-site .dl-footer-top>div>p:not(.dl-footer-statement){max-width:27ch;margin:0;color:var(--muted,#b5bed4);font-size:.875rem}
.dl-site.dl-site.dl-site.dl-site .dl-footer nav:not(.dlp-site-links){margin:0;display:flex;flex-direction:column;align-items:stretch;gap:0}
.dl-site.dl-site.dl-site.dl-site .dl-footer nav:not(.dlp-site-links)>a{
 display:flex;align-items:center;justify-content:flex-start;gap:1rem;min-height:48px;
 padding:.7rem 0;border-bottom:1px solid #2c354e;text-decoration:none;font-size:.9375rem;
}
/* Suppress old page-local badges as well as generated icons on every footer
   control. !important is needed because legacy inline CSS marks content important. */
.dl-site.dl-site.dl-site.dl-site .dl-footer.dl-footer :is(a,button)::before,
.dl-site.dl-site.dl-site.dl-site .dl-footer.dl-footer :is(a,button)::after{
 content:none!important;display:none!important;background-image:none!important;
}
.dl-site.dl-site.dl-site.dl-site .dl-footer :is(a,button):hover{color:var(--yellow,#f9da5a);text-decoration:underline;text-underline-offset:.25em}
.dl-site.dl-site.dl-site.dl-site .dl-footer-bottom{
 display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 2rem;
 margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid var(--line,#44516f);color:var(--muted,#b5bed4);
 font-size:.875rem!important;
}
.dl-site.dl-site.dl-site.dl-site .dl-footer-bottom a{display:inline-flex;align-items:center;min-height:44px;padding:.4rem 0}
.dl-site.dl-site.dl-site.dl-site .dl-footer .dlp-site-links{
 display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:center;
 gap:.5rem 1.75rem;margin:1.5rem 0 0;padding:1rem 0 0;border-top:1px solid #2c354e;background:transparent;text-align:left;
}
.dl-site.dl-site.dl-site.dl-site .dl-footer .dlp-site-links :is(a,button){
 display:inline-flex;align-items:center;justify-content:flex-start;gap:.65rem;min-height:44px;max-width:100%;
 margin:0;padding:.5rem 0;border:0;border-radius:0;background:transparent;color:var(--paper,#f2eee4);
 font:400 .875rem/1.5 var(--text,Arial,sans-serif);white-space:normal;text-align:left;text-decoration:none;
}
@media(max-width:52rem){
 .dl-site.dl-site.dl-site.dl-site .dl-header-note{display:none}
 .dl-site.dl-site.dl-site.dl-site .dl-header-actions{margin-left:auto}
 .dl-site.dl-site.dl-site.dl-site .dl-footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 2rem}
 .dl-site.dl-site.dl-site.dl-site .dl-footer-top>div:first-child{grid-column:1/-1}
}
@media(max-width:36rem){
 .dl-site.dl-site.dl-site.dl-site .dl-header{min-height:88px;gap:.6rem;padding-block:.875rem}
 .dl-site.dl-site.dl-site.dl-site .dl-brand{width:100px}
 .dl-site.dl-site.dl-site.dl-site .dl-header-actions{gap:.5rem}
 .dl-site.dl-site.dl-site.dl-site :is(.dl-header-date,.dl-menu-button,.dl-nav-native-toggle){padding:.6rem .65rem;gap:.5rem}
 .dl-site.dl-site.dl-site.dl-site .dl-footer-top{grid-template-columns:minmax(0,1fr)}
 .dl-site.dl-site.dl-site.dl-site .dl-footer-bottom{display:block;margin-top:2rem}
 .dl-site.dl-site.dl-site.dl-site .dl-footer-bottom>span{display:block;margin-bottom:.5rem}
 .dl-site.dl-site.dl-site.dl-site .dl-footer .dlp-site-links{align-items:flex-start;flex-direction:column;gap:.25rem}
}
/* Portal adds these controls after DOM ready. Reserve a whole footer row. */
.dl-site.dl-site.dl-site.dl-site .dl-footer-top>.dlp-site-links{grid-column:1/-1}
.dl-site.dl-site.dl-site.dl-site .dlp-header-link{
 display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:48px;
 padding:.65rem 1rem;border:1px solid var(--line,#44516f);border-radius:3px;
 font:600 .875rem/1.4 var(--text,Arial,sans-serif)!important;text-decoration:none;
}
@media(max-width:52rem){
 /* Account remains in the enhanced menu, fallback navigation and footer. */
 .dl-site.dl-site.dl-site.dl-site .dlp-header-link{display:none}
}

.dl-site.dl-site.dl-site.dl-site .dl-footer-statement{max-width:none;text-align:left}
.dl-site.dl-site.dl-site.dl-site .dl-footer-top>div>p{margin-inline:0;text-align:left}
.dl-site.dl-site.dl-site.dl-site .dl-footer-bottom{ text-align:left }
/* Reset legacy centering on the shell's direct layout children. */
.dl-site.dl-site.dl-site.dl-site .dl-header-note{text-align:left}
.dl-site.dl-site.dl-site.dl-site .dl-footer-top{justify-items:stretch}
.dl-site.dl-site.dl-site.dl-site .dl-footer nav:not(.dlp-site-links){text-align:left}
.dl-site.dl-site.dl-site.dl-site .dl-footer nav:not(.dlp-site-links)>a{align-self:stretch;width:100%;text-align:left}
.dl-site.dl-site.dl-site.dl-site .dl-footer-bottom>*{text-align:left}

/* Quiet link affordance: typography and row separators instead of icon badges. */
.dl-site.dl-site.dl-site.dl-site .dl-footer nav:not(.dlp-site-links)>a:is(:hover,:focus-visible){
 border-bottom-color:var(--yellow,#f9da5a);background:#10182d;
}
.dl-site.dl-site.dl-site.dl-site .dl-footer .dlp-site-links :is(a,button){
 text-decoration:underline;text-decoration-color:#68748f;text-underline-offset:.3em;
}
.dl-site.dl-site.dl-site.dl-site .dl-footer .dlp-site-links :is(a,button):is(:hover,:focus-visible){
 color:var(--yellow,#f9da5a);text-decoration-color:currentColor;
}
/* Enlarged text must let header controls wrap instead of leaving the viewport. */
@media(max-width:30rem){
 .dl-site.dl-site.dl-site.dl-site.dl-site .dl-header{flex-wrap:wrap}
 .dl-site.dl-site.dl-site.dl-site .dl-header-actions{flex-wrap:wrap;max-width:100%}
}
