:root{--rk-header-height:88px}.rk-header{position:relative;width:100%;min-height:var(--rk-header-height);background:var(--rubyvio-color-background);color:var(--rubyvio-color-text);border-bottom:1px solid var(--rubyvio-color-border);font-family:var(--rubyvio-font-body);z-index:9999;box-shadow:none}.rk-header:before,.rk-header:after{display:none!important}.rk-header-inner{display:grid;grid-template-columns:60px minmax(0,1fr) auto;gap:24px;align-items:center;min-height:var(--rk-header-height);max-width:1600px;width:100%;margin:auto;padding:0 28px}.rk-brand{display:flex;align-items:center;justify-content:center;width:56px;height:52px}.rk-brand img{display:block;object-fit:contain;width:100%;height:100%}.rk-header-nav{display:flex;justify-content:space-between;align-items:stretch;gap:14px;min-width:0}.rk-nav-item{display:flex;align-items:center;position:static;min-height:var(--rk-header-height)}.rk-nav-trigger{display:flex;align-items:center;gap:7px;min-height:var(--rk-header-height)}.rk-nav-link{display:inline-flex;align-items:center;position:relative;min-height:var(--rk-header-height);padding:0;border:0;background:none;color:var(--rubyvio-color-text);text-decoration:none;font:500 14px/1 var(--rubyvio-font-body);text-transform:uppercase;white-space:nowrap}.rk-nav-link[aria-current=page]:before,.rk-nav-item.is-current>.rk-nav-trigger>.rk-nav-link:before{content:'';position:absolute;left:0;right:0;bottom:18px;height:2px;background:var(--rubyvio-color-primary)}.rk-nav-trigger:after{content:'';height:6px;width:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);color:var(--rubyvio-color-text)}.rk-nav-link:hover,.rk-nav-link:focus-visible,.rk-nav-item:hover>.rk-nav-trigger{color:var(--rubyvio-color-primary)}.rk-nav-arrow{display:none!important}.rk-header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 20px;background:var(--rubyvio-color-primary);color:var(--rubyvio-button-text);border:1px solid var(--rubyvio-color-primary);border-radius:0;text-decoration:none;font:600 14px/1.3 var(--rubyvio-font-body);white-space:nowrap;box-shadow:none}.rk-header-cta:hover{background:var(--rubyvio-button-hover);color:var(--rubyvio-button-text)}.rk-header a:focus-visible,.rk-header button:focus-visible{outline:2px solid var(--rubyvio-color-text);outline-offset:3px;box-shadow:none}
.rk-mega-wrapper{position:absolute;top:100%;left:0;right:0;width:100%;background:var(--rubyvio-color-surface);border-top:1px solid var(--rubyvio-color-border);border-bottom:1px solid var(--rubyvio-color-border-secondary);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(5px);transition:opacity .15s ease,transform .15s ease,visibility .15s ease}.rk-has-mega:not([data-rk-dismissed]):hover>.rk-mega-wrapper,.rk-has-mega:not([data-rk-dismissed]):focus-within>.rk-mega-wrapper{opacity:1;visibility:visible;pointer-events:auto;transform:none}.rk-mega-inner{display:grid;grid-template-columns:240px minmax(0,1fr);gap:40px;max-width:991px;width:100%;margin:auto;padding:28px}.rk-mega-intro{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.rk-mega-title{font-size:20px;font-weight:650;line-height:1.2;margin:0;color:var(--rubyvio-color-text)}.rk-mega-text{font-size:15px;line-height:1.5;color:var(--rubyvio-color-muted);max-width:30ch}.rk-mega-cta{min-height:40px;display:inline-flex;align-items:center;color:var(--rubyvio-color-primary);text-decoration:underline;text-underline-offset:4px;font-size:14px;font-weight:600;background:none;border:0;padding:0}.rk-mega-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px;align-content:start}.rk-mega-link{min-height:44px;display:flex;align-items:center;padding:10px 0;border-bottom:1px solid var(--rubyvio-color-border);color:var(--rubyvio-color-text);text-decoration:none;font-size:16px;font-weight:500;line-height:1.4}.rk-mega-link:hover{color:var(--rubyvio-color-primary)}.rk-mobile-toggle,.rk-mobile-drawer{display:none}
@media(max-width:991px){:root{--rk-header-height:72px}.rk-header-inner{min-height:72px;padding:0 20px;grid-template-columns:50px 1fr auto auto;gap:14px}.rk-brand{width:46px;height:42px}.rk-header-nav{display:none!important}.rk-header-cta{grid-column:3;min-height:44px;padding:11px 18px;font-size:13px}.rk-mobile-toggle,.rk-mobile-toggle.rvio-el-button{display:inline-flex;grid-column:4;position:relative;align-items:center;justify-content:center;width:46px;min-width:46px;height:44px;padding:0;border:1px solid var(--rubyvio-color-control-accent);border-radius:0;font-size:0;line-height:0;box-shadow:none;z-index:10003}.rk-mobile-toggle:before,.rk-mobile-toggle:after{content:'';position:absolute;left:12px;right:12px;height:2px;background:currentColor;transform-origin:center;transition:transform .16s ease,top .16s ease}.rk-mobile-toggle:before{top:14px;box-shadow:0 6px 0 currentColor}.rk-mobile-toggle:after{top:26px}.rk-header.is-mobile-menu-open .rk-mobile-toggle:before{top:20px;transform:rotate(45deg);box-shadow:none}.rk-header.is-mobile-menu-open .rk-mobile-toggle:after{top:20px;transform:rotate(-45deg)}:is(#rvio-header,#rvio-header) .rk-mobile-toggle{background:var(--rubyvio-button-background);color:var(--rubyvio-button-text)}
:is(#rvio-header,#rvio-header) .rk-mobile-toggle:hover{background:var(--rubyvio-button-hover)}.rk-mobile-drawer{display:block;position:fixed;inset:72px 0 0;background:var(--rubyvio-color-background);border-top:1px solid var(--rubyvio-color-border);z-index:10000;height:calc(100dvh - 72px);overflow:auto;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .15s ease,visibility .15s ease;padding:20px}.rk-header.is-mobile-menu-open .rk-mobile-drawer{visibility:visible;opacity:1;pointer-events:auto}.rk-mobile-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:0 0 12px;border-bottom:1px solid var(--rubyvio-color-border);font-size:15px;color:var(--rubyvio-color-muted)}.rk-mobile-root,.rk-mobile-panel{display:flex;flex-direction:column;margin:8px 0 0;padding:0;list-style:none}.rk-mobile-row{display:flex;align-items:center;justify-content:space-between;min-height:50px;width:100%;padding:12px 0;border:0;border-bottom:1px solid var(--rubyvio-color-border);background:none;color:var(--rubyvio-color-text);text-decoration:none;font:500 19px/1.3 var(--rubyvio-font-body);text-align:left}.rk-mobile-row button{background:none;border:0}.rk-mobile-row[data-rk-mobile-target]:after{content:'›';color:var(--rubyvio-color-primary);font-size:26px;line-height:1}.rk-mobile-panel[hidden],.rk-mobile-root[hidden]{display:none!important}.rk-mobile-back{display:flex;align-items:center;min-height:44px;background:none;border:0;padding:8px 0;color:var(--rubyvio-color-primary);font:500 15px var(--rubyvio-font-body);text-align:left;cursor:pointer}.rk-mobile-panel-title{font-size:27px;line-height:1.2;font-weight:650;margin:14px 0 6px;color:var(--rubyvio-color-text)}.rk-mobile-sub-link{display:flex;align-items:center;min-height:46px;border-bottom:1px solid var(--rubyvio-color-border);color:var(--rubyvio-color-text);text-decoration:none;padding:10px 0;font-size:17px}.rk-mobile-section-link{color:var(--rubyvio-color-primary);font-weight:600}.rk-mobile-menu-lock{overflow:hidden}.rk-mobile-drawer [aria-current=page]{color:var(--rubyvio-color-primary)}}
@media(max-width:380px){.rk-header-inner{padding:0 14px;gap:10px}.rk-header-cta{padding-inline:14px}.rk-mobile-drawer{padding:16px}}
@media(prefers-reduced-motion:reduce){.rk-mega-wrapper,.rk-mobile-drawer,.rk-mobile-toggle:before,.rk-mobile-toggle:after{transition:none}}
/* Native Bricks WordPress-menu markup; the mobile drawer reads the same menu. */
.rk-header-nav .rvio-nav-menu-wrapper{width:100%}.rk-header-nav .rvio-nav-menu{display:flex;justify-content:space-between;gap:14px;width:100%;margin:0;padding:0;list-style:none}.rk-header-nav .rvio-nav-menu>li{margin:0;padding:0;position:static}.rk-header-nav .rvio-submenu-toggle{display:flex;align-items:center;gap:2px;min-height:var(--rk-header-height)}.rk-header-nav .rvio-submenu-toggle>a{padding:0}.rk-header-nav .rvio-submenu-toggle>button{padding:4px;width:24px;min-height:32px;background:none;border:0;color:var(--rubyvio-color-text)}.rk-header-nav .rvio-submenu-toggle svg{width:12px;height:12px}.rk-header-nav .rvio-nav-menu>li>.sub-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 30px;position:absolute;top:100%;left:0;right:0;width:100%;padding:24px max(28px,calc((100% - 1200px)/2));background:var(--rubyvio-color-surface);border-top:1px solid var(--rubyvio-color-border);border-bottom:1px solid var(--rubyvio-color-border-secondary);list-style:none;box-shadow:none;visibility:hidden;opacity:0;pointer-events:none;transform:none}.rk-header-nav .rvio-nav-menu>li:not([data-rk-dismissed]):hover>.sub-menu,.rk-header-nav .rvio-nav-menu>li:not([data-rk-dismissed]):focus-within>.sub-menu,.rk-header-nav .rvio-nav-menu>li.open:not([data-rk-dismissed])>.sub-menu{visibility:visible;opacity:1;pointer-events:auto}.rk-header-nav .sub-menu li{width:100%;padding:0;margin:0;background:none}.rk-header-nav .sub-menu a{padding:12px 0!important;background:none!important;font-weight:500!important}.rk-header-nav .current-menu-item>.rvio-submenu-toggle>.rk-nav-link:before,.rk-header-nav .current-menu-ancestor>.rvio-submenu-toggle>.rk-nav-link:before{content:'';position:absolute;left:0;right:0;bottom:18px;height:2px;background:var(--rubyvio-color-primary)}.rk-mobile-menu-output{display:contents}.rk-header-nav .rvio-mobile-menu-toggle,.rk-header-nav .rvio-mobile-menu-wrapper{display:none!important}
@media(max-width:991px){.rk-header-nav{display:none!important}}


/* The mobile drawer brand is a full-width, keyboard-accessible home link. */
@media(max-width:991px){
 a.rk-mobile-drawer-head{min-height:44px;text-decoration:none;font-weight:600}
 a.rk-mobile-drawer-head:hover{color:var(--rubyvio-color-primary)}
 a.rk-mobile-drawer-head:focus-visible{color:var(--rubyvio-color-primary);outline:2px solid var(--rubyvio-color-primary);outline-offset:3px}
}

/* Keep the public header in the document flow while making navigation reachable. */
:root{--rk-adminbar-offset:0px}
body.admin-bar{--rk-adminbar-offset:32px}
body.rvio-is-frontend #rvio-header{position:sticky;top:var(--rk-adminbar-offset);z-index:9999}
@media(min-width:992px) and (max-width:1280px){
 body #rvio-header .rk-header-inner{grid-template-columns:48px minmax(0,1fr) auto;gap:12px;padding-inline:18px;min-height:72px}
 #rvio-header .rk-brand{width:46px;height:42px}
 #rvio-header .rk-header-nav .rvio-nav-menu{gap:8px}
 #rvio-header .rk-header-cta{padding-inline:16px}
}
/* Long menus remain scrollable on short screens; the header stays visible. */
@media(min-width:992px){
 #rvio-header .rk-header-nav .rvio-nav-menu>li>.sub-menu{max-height:calc(100dvh - var(--rk-header-height) - 1px - var(--rk-adminbar-offset));overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:991px){
 #rvio-header .rk-mobile-drawer{top:calc(var(--rk-header-height) + 1px + var(--rk-adminbar-offset));bottom:0;height:auto;max-height:calc(100dvh - var(--rk-header-height) - 1px - var(--rk-adminbar-offset));overscroll-behavior:contain}
}
@media(min-width:601px) and (max-width:782px){body.admin-bar{--rk-adminbar-offset:46px}}
@media(max-width:600px){body.admin-bar{--rk-adminbar-offset:0px}}

/* Hidden frontend admin bars must not leave the native WordPress bump. */
html.rk-adminbar-hidden{margin-top:0!important}
