*, *::before, *::after { box-sizing: border-box; }
body { --site-sticky-top: 0px; --site-anchor-offset: 7.25rem; margin: 0; background: var(--color-paper); color: var(--color-ink); font-family: var(--font-sans); line-height: 1.65; overflow-wrap: break-word; }
a { color: var(--color-accent); text-underline-offset: .2em; }
img, video { max-width: 100%; height: auto; }
iframe { max-width: 100%; }
button, input, select, textarea { font: inherit; }
:focus-visible { outline: 3px solid var(--color-accent); outline-offset: 4px; }
.ev-breadcrumb, .ev-brand-breadcrumb, .ev-partner-breadcrumb { display: none !important; }
.container { width: min(var(--content-width), calc(100% - 2.5rem)); margin-inline: auto; }
.content-area { min-height: 60vh; padding-block: var(--space-section); }
.site-header__inner, .site-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1rem; padding-block: 1.5rem; }
.site-header { position: sticky; top: var(--site-sticky-top); z-index: 1000; width: 100%; border-bottom: 1px solid var(--color-border); background: var(--color-paper); transform: translateY(0); transition: transform .22s ease; }
.site-header__inner { min-height: 96px; gap: 1.5rem; }
.site-header.is-hidden { transform: translateY(-100%); }
.site-header:focus-within { transform: translateY(0); }
.admin-bar { --site-sticky-top: var(--wp-admin--admin-bar--height, 32px); --site-anchor-offset: calc(var(--wp-admin--admin-bar--height, 32px) + 7.25rem); }
.site-header .ev-header-navigation { display: flex; align-items: center; gap: 1.5rem; margin-left: auto; }
.site-header .ev-header-navigation nav { margin-left: auto; }
.site-header .ev-header-navigation nav ul { margin-block: 0; }
.site-header nav ul { align-items: center; gap: 1.8rem; }
.site-header nav a { color: var(--color-ink); font-size: .83rem; font-weight: 500; text-decoration: none; }
.site-header nav a:hover { color: var(--color-accent); text-decoration: underline; }
.site-header .sub-menu { margin-top: .6rem; }
.ev-header-cta { display: inline-flex; align-items: center; gap: 1.4rem; border: 1px solid var(--color-border); padding: .75rem 1rem; color: var(--ev-deep); font-size: .8rem; font-weight: 600; text-decoration: none; }
.ev-header-cta:hover { border-color: var(--ev-deep); }
.ev-header-cta .ev-icon { width: 17px; }
.ev-nav-toggle { display: none; align-items: center; justify-content: center; gap: .65rem; min-width: 44px; min-height: 44px; padding: .55rem .75rem; border: 1px solid var(--color-border); background: transparent; color: var(--color-ink); cursor: pointer; }
.ev-nav-toggle__icon { position: relative; width: 18px; height: 12px; border-block: 2px solid currentColor; }
.ev-nav-toggle__icon::after { content: ""; position: absolute; left: 0; right: 0; top: 50%; border-top: 2px solid currentColor; transform: translateY(-50%); }
.ev-nav-toggle[aria-expanded="true"] .ev-nav-toggle__icon { border-color: transparent; }
.ev-nav-toggle[aria-expanded="true"] .ev-nav-toggle__icon::before, .ev-nav-toggle[aria-expanded="true"] .ev-nav-toggle__icon::after { content: ""; position: absolute; left: 0; right: 0; top: 50%; border-top: 2px solid currentColor; }
.ev-nav-toggle[aria-expanded="true"] .ev-nav-toggle__icon::before { transform: rotate(45deg); }
.ev-nav-toggle[aria-expanded="true"] .ev-nav-toggle__icon::after { transform: rotate(-45deg); }
.site-footer { border-top: 1px solid var(--color-border); font-size: .8rem; }
.site-footer p { margin: 0; }
.site-footer nav a { color: var(--color-ink); text-decoration: none; }
.site-footer nav a:hover { color: var(--color-accent); text-decoration: underline; }
.site-name { color: var(--ev-deep); font-size: 1.35rem; font-weight: 700; letter-spacing: -.055em; text-decoration: none; }
.custom-logo { width: auto; max-height: 64px; }
nav ul { display: flex; flex-wrap: wrap; gap: 1rem; padding: 0; list-style: none; }
nav .sub-menu { display: block; padding-inline-start: 1rem; }
.skip-link { position: absolute; left: 1rem; top: -10rem; padding: .75rem 1rem; background: var(--color-paper); z-index: 100; }
.skip-link:focus { top: 1rem; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
main[id], main [id] { scroll-margin-top: var(--site-anchor-offset); }
@media (max-width: 1000px) {
  .site-header nav ul { gap: 1rem; }
  .ev-header-cta { min-height: 44px; gap: .65rem; font-size: .875rem; }
}
@media (max-width: 768px) {
  body { --site-anchor-offset: 6.25rem; }
  body.admin-bar { --site-anchor-offset: calc(var(--wp-admin--admin-bar--height, 46px) + 6.25rem); }
  .site-header__inner { min-height: 0; padding-block: 1.1rem; gap: .9rem; }
  .site-header .ev-header-navigation { width: 100%; flex-direction: column; align-items: stretch; gap: .75rem; margin-left: 0; order: 3; }
  .site-header .ev-header-navigation nav { width: 100%; margin-left: 0; }
  .site-header .ev-header-navigation nav ul { flex-direction: column; align-items: stretch; gap: .25rem; }
  .site-header .ev-header-navigation nav a { display: flex; align-items: center; min-height: 44px; font-size: .875rem; text-decoration: none; }
  .site-header .ev-header-navigation .ev-header-cta { width: 100%; min-height: 44px; margin-left: 0; justify-content: space-between; }
  .site-header.ev-navigation-ready .ev-nav-toggle { display: inline-flex; margin-left: auto; }
  .site-header.ev-navigation-ready .ev-header-navigation { display: none; }
  .site-header.ev-navigation-ready .ev-header-navigation.is-open { display: flex; max-height: calc(100dvh - var(--site-sticky-top) - 5rem); overflow-y: auto; overscroll-behavior: contain; }
  .site-footer { align-items: flex-start; }
  .site-footer nav ul { gap: .5rem 1rem; }
}
@media (max-width: 600px) {
  body.admin-bar { --site-sticky-top: 0px; --site-anchor-offset: 6.25rem; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .site-header { transition: none; } }
