/* Shared site chrome and document styling, applied to every DriveFive page. */
.site-header .header-inner{display:flex;flex-wrap:wrap;gap:1.75rem;min-height:96px}
.site-header .header-inner>.desktop-navigation{display:flex;align-items:center;gap:1.5rem;margin-left:auto}
.site-header .header-inner>.desktop-navigation a{font-size:.875rem;white-space:nowrap}
.site-header .header-inner>.desktop-navigation a[aria-current=page],.site-footer nav a[aria-current=page]{text-decoration:underline;text-decoration-color:#668d3f;text-underline-offset:6px}
.site-header .button{white-space:nowrap}
.site-footer .footer-inner{flex-wrap:wrap;align-items:center;gap:1.5rem}
.site-footer .footer-inner>nav{display:flex;gap:1.1rem;flex-wrap:wrap;align-items:center;font-size:.875rem;margin-left:auto}
.site-footer nav a{text-decoration:none}
.site-footer nav span{font-size:.75rem;color:var(--muted)}
.site-footer .footer-inner>p{font-size:.75rem}
.document-page .guide-intro h1{font-size:clamp(2.5rem,5vw,4rem);line-height:1.15;letter-spacing:-.045em}
.document-page .guide-intro{padding-bottom:1.5rem;border-bottom:1px solid var(--line)}
.document-page .guide-intro .eyebrow{font-size:.75rem}
.document-page .guide-layout{gap:3.5rem}
.document-page .guide-version{color:var(--muted)}
.document-page .guide-contents{border:1px solid var(--line);border-radius:18px;padding:1.2rem;background:#f0f3e9}
.document-page .guide-sidebar{padding-right:0}
.document-page .guide-body a{text-underline-offset:4px;overflow-wrap:anywhere;color:#315f43}
.document-page .guide-body h3{font-size:1.125rem}
.document-page .policy-summary{border-left:3px solid #94b953;background:#eaf1db;border-radius:0 12px 12px 0;padding:1.2rem 1.5rem;margin:1.5rem 0 2rem}
.document-page .policy-summary p{font-size:1rem;color:var(--ink);margin:0}
.document-page .guide-articles{max-width:760px}
.document-page .contents-group:last-child{padding-bottom:0}
.document-page .document-note{font-size:.875rem;line-height:1.8;color:var(--muted);margin-top:1rem}
.document-page .guide-topic{padding-bottom:2.25rem}
@media(max-width:1100px){.site-header .header-inner{gap:1.25rem}.site-header .header-inner>.desktop-navigation{gap:1rem}.site-footer .footer-inner>p{display:none}.document-page .guide-layout{gap:2rem}}
@media(max-width:850px){html{scroll-padding-top:105px}.site-header .header-inner{padding-block:1rem;gap:.8rem;min-height:0}.site-header .header-inner>.button{margin-left:auto}.site-header .header-inner>.desktop-navigation{order:3;width:100%;margin:0;gap:1.5rem;flex-wrap:wrap}.site-header .header-inner>.desktop-navigation a{padding:.45rem .15rem}.site-footer .footer-inner>nav{margin-left:0}.document-page .guide-sidebar{top:110px;max-height:calc(100dvh - 135px)}.guide-topic{scroll-margin-top:110px}}
@media(max-width:760px){.document-page .guide-layout{gap:2rem}.document-page .guide-sidebar{position:static;max-height:none}.document-page .guide-intro{padding-bottom:1.5rem}.document-page .guide-intro h1{font-size:clamp(2.5rem,8vw,3.5rem)}.site-footer .footer-inner{align-items:flex-start}.document-page .guide-contents{padding:1rem}.document-page .policy-summary{padding:1rem 1.1rem}}
@media(max-width:430px){.site-header .container{width:calc(100% - 36px)}.site-header .header-inner .brand{font-size:1.3rem}.site-header .header-inner>.button{font-size:.875rem;padding:.7rem .8rem}.site-header .header-inner>.desktop-navigation{column-gap:.5rem}.site-header .header-inner>.desktop-navigation a{font-size:.875rem}.document-page .guide-intro h1{font-size:2.5rem}.document-page .topic-heading h2{font-size:1.5rem}.site-footer .footer-inner>nav{gap:1rem}.document-page .guide-topic{scroll-margin-top:110px}}
@media print{.site-header,.site-footer,.guide-sidebar,.guide-search,.back-to-top,.topic-permalink{display:none!important}.document-page .guide-intro{border:0}.document-page .guide-layout{display:block}.document-page .guide-articles{max-width:none}.document-page .guide-topic{break-inside:auto}.document-page h2,.document-page h3{break-after:avoid}.document-page .policy-summary{background:none;border:1px solid #555}.document-page .guide-main{width:100%;padding:0}}

/* A single shared mobile drawer, with inline navigation retained if JS is unavailable. */
.menu-toggle,.menu-close{align-items:center;justify-content:center;gap:.55rem;min-width:2.75rem;min-height:2.75rem;border:1px solid var(--line);border-radius:.65rem;background:transparent;color:var(--ink);cursor:pointer;padding:.6rem;font-size:.875rem;font-weight:600;line-height:1.3}
.menu-toggle{display:none;margin-left:auto}
.menu-toggle[hidden]{display:none!important}
.menu-close{display:inline-flex;flex-shrink:0}
.menu-toggle:hover,.menu-close:hover{background:#eaf1db}
.mobile-menu{position:fixed;inset:0 0 0 auto;margin:0;width:min(23rem,90vw);max-width:100%;height:100vh;height:100dvh;max-height:none;overflow-y:auto;overscroll-behavior:contain;border:0;border-left:1px solid var(--line);padding:1.5rem;padding-top:max(1.5rem,env(safe-area-inset-top));padding-right:max(1.5rem,env(safe-area-inset-right));padding-bottom:max(1.5rem,env(safe-area-inset-bottom));background:var(--paper);color:var(--ink);box-shadow:-12px 0 48px #102d2926}
.mobile-menu:not([open]){display:none}
.mobile-menu[open]{display:flex;flex-direction:column;animation:menu-slide-in .22s ease-out}
.mobile-menu::backdrop{background:#102d2966;animation:menu-fade-in .22s ease-out}
.mobile-menu.is-closing{animation:menu-slide-out .18s ease-in forwards}
.mobile-menu.is-closing::backdrop{animation:menu-fade-out .18s ease-in forwards}
.mobile-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:2rem}
.mobile-menu-heading h2{font-size:1.125rem;line-height:1.4;letter-spacing:-.02em}
.site-header .mobile-menu nav{display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0 0 1.75rem;width:100%}
.site-header .mobile-menu nav a{display:block;padding:1rem .25rem;border-bottom:1px solid var(--line);font-size:1.125rem;line-height:1.5;text-decoration:none;white-space:normal;overflow-wrap:anywhere}
.site-header .mobile-menu nav a[aria-current=page]{color:#315f43;text-decoration:underline;text-underline-offset:.3rem}
.site-header .mobile-menu .button{white-space:normal;flex-shrink:0;font-size:1rem}
html.menu-open,html.menu-open body{overflow:hidden}
@keyframes menu-slide-in{from{transform:translateX(100%)}to{transform:translateX(0)}}
@keyframes menu-slide-out{from{transform:translateX(0)}to{transform:translateX(100%)}}
@keyframes menu-fade-in{from{opacity:0}to{opacity:1}}
@keyframes menu-fade-out{from{opacity:1}to{opacity:0}}
@media(max-width:850px){.menu-ready .site-header .header-inner>.desktop-navigation,.menu-ready .site-header .header-inner>.button{display:none}.menu-ready .menu-toggle{display:inline-flex}.site-header .header-inner .brand{min-width:0;flex-shrink:1}.site-header .header-inner .brand>span{min-width:0;overflow-wrap:anywhere}}
@media(max-width:430px){.menu-toggle>span{display:none}}
@media(prefers-reduced-motion:reduce){.mobile-menu[open],.mobile-menu.is-closing,.mobile-menu::backdrop,.mobile-menu.is-closing::backdrop{animation:none}}
@media print{html.menu-open,html.menu-open body{overflow:visible}}
