*,:before,:after{box-sizing:border-box}html{overflow-x:clip}body{font-family:var(--font-body);color:var(--text);background:var(--surface-page);-webkit-font-smoothing:antialiased;min-width:0;margin:0;font-size:15px;line-height:1.6;overflow-x:clip}img,video,iframe{max-width:100%}.site{width:100%;min-width:0;min-height:100vh;overflow-x:clip}.topbar{background:linear-gradient(90deg, var(--brand-darker) 0%, var(--brand) 45%, var(--brand-light) 100%);height:.35rem}.layout{width:100%;min-width:0;max-width:100%;min-height:calc(100vh - 6px);box-shadow:0 0 48px var(--shadow-soft);grid-template-columns:minmax(200px,240px) minmax(0,1fr);gap:0;margin:0 auto;display:grid;overflow-x:clip}@media (width>=1401px){.layout{max-width:1400px}}.sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;padding:2rem 1.25rem 2rem 1.5rem;display:flex}.logo{margin-bottom:2rem;text-decoration:none;display:block}.logo__image{width:100%;max-width:200px;height:auto;display:block}.sidebar__nav{flex-direction:column;flex:1;gap:.25rem;display:flex}.sidebar__item{font-family:var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);border-radius:var(--radius-sm);overflow-wrap:anywhere;padding:.5rem .7rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:block}.sidebar__item:hover:not(.sidebar__item--active){background:var(--brand-muted);color:var(--brand-dark)}.sidebar__item--active{background:var(--brand);color:var(--text-on-brand)}.sidebar__footer{border-top:1px solid var(--border);margin-top:2rem;padding-top:1rem}.sidebar__footer-link{font-family:var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle);font-size:.72rem;font-weight:600;text-decoration:none}.sidebar__footer-link:hover{color:var(--brand);text-decoration:underline}.main{background:var(--surface);width:100%;min-width:0;padding:2.25rem 1.75rem 3rem;overflow-x:clip}.site-search{width:100%;max-width:360px;margin:0 0 1.5rem}.site-search__label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-search__field{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);align-items:stretch;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.site-search__field:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-focus-ring)}.site-search__input{min-width:0;font-family:var(--font-ui);color:var(--text);background:0 0;border:0;outline:none;flex:1;padding:.55rem .75rem;font-size:.9rem}.site-search__input::placeholder{color:var(--text-subtle)}.site-search__input::-webkit-search-cancel-button{display:none}.site-search__submit{border:0;border-left:1px solid var(--border);background:var(--brand);width:2.75rem;color:var(--text-on-brand);cursor:pointer;justify-content:center;align-items:center;padding:0;transition:background .15s;display:flex}.site-search__submit:hover{background:var(--brand-dark)}.site-search__icon{display:block}.section-head{align-items:center;gap:1.5rem;min-width:0;margin-bottom:2rem;display:flex}.section-head__line{background:linear-gradient(90deg, transparent 0%, var(--brand-pale) 12%, var(--brand) 50%, var(--brand-pale) 88%, transparent 100%);flex:1 1 0;min-width:0;height:2px}.section-head__title{font-family:var(--font-display);letter-spacing:.03em;text-transform:uppercase;color:var(--brand-darker);white-space:nowrap;margin:0;font-size:clamp(1.65rem,2.8vw,2.1rem);font-weight:700}@media (width<=960px){.layout{box-shadow:none;grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border);padding:1.25rem 1rem 1rem}.sidebar__nav{flex-flow:wrap;gap:.35rem}.logo{margin-bottom:1.25rem}.logo__image{max-width:160px}.sidebar__footer{margin-top:1.25rem}.main{padding:1.25rem 1rem 2rem}.site-search{max-width:none}.section-head__title{white-space:normal;overflow-wrap:anywhere;text-align:center}}@media (width<=640px){.main{padding:1rem .85rem 1.75rem}.section-head{flex-wrap:wrap;justify-content:center;gap:.65rem;margin-bottom:1.5rem}.section-head__title{white-space:normal;text-align:center;overflow-wrap:anywhere;flex:100%;font-size:1.3rem;line-height:1.25}.section-head__line{flex:30%;min-width:2rem}.sidebar__item{padding:.45rem .55rem;font-size:.68rem}}@media (width<=380px){.section-head__line{display:none}.section-head__title{font-size:1.15rem}}
