.rsh-header { position:sticky; z-index:100; top:0; background:#fff; box-shadow:0 1px 0 rgba(0,18,41,.08); transition:box-shadow var(--rsh-transition); }
.rsh-header.is-sticky { box-shadow:0 10px 30px rgba(0,18,41,.12); }
.admin-bar .rsh-header { top:32px; }
.rsh-topbar { min-height:30px; background:var(--rsh-green-dark); color:#fff; font-size:.73rem; }
.rsh-topbar__inner { display:flex; min-height:30px; align-items:center; justify-content:space-between; gap:18px; }
.rsh-topbar__message { color:#dcecff; font-weight:650; }
.rsh-topbar__links { display:flex; align-items:center; gap:18px; }
.rsh-topbar__links a { display:inline-flex; align-items:center; gap:6px; color:#fff; text-decoration:none; }
.rsh-topbar__links a:hover { color:#b9dbff; }
.rsh-topbar__links svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:1.8; }
.rsh-header__main { position:relative; background:#fff; }
.rsh-header__inner { display:grid; min-height:82px; grid-template-columns:auto minmax(280px,590px) auto; align-items:center; justify-content:space-between; gap:clamp(18px,3vw,42px); }
.rsh-logo { display:block; flex:0 0 auto; text-decoration:none; }
.rsh-brand-logo { position:relative; display:block; overflow:hidden; }
.rsh-brand-logo img { display:block; width:100%; height:100%; object-fit:contain; object-position:left center; }
.rsh-brand-logo--header { width:270px; height:64px; }
.rsh-brand-logo.is-theme-logo img { position:absolute; top:-97px; left:-65px; width:396px; max-width:none; height:auto; }
.rsh-search { position:relative; display:flex; height:42px; align-items:center; border:1px solid #bdc9db; border-radius:9px; background:#f9fbfd; transition:border-color var(--rsh-transition),box-shadow var(--rsh-transition),background var(--rsh-transition); }
.rsh-search:focus-within { border-color:var(--rsh-green); background:#fff; box-shadow:0 0 0 3px rgba(0,102,215,.13); }
.rsh-search__icon { display:grid; width:45px; flex:0 0 45px; place-items:center; color:#66718a; }
.rsh-search__icon svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; }
.rsh-search input[type="search"] { width:100%; min-width:0; height:40px; padding:0 8px 0 0; border:0; outline:0; background:transparent; color:var(--rsh-text); }
.rsh-search input[type="search"]::-webkit-search-cancel-button { cursor:pointer; }
.rsh-search > button[type="submit"] { height:36px; margin-right:5px; padding:0 16px; border:0; border-radius:7px; background:var(--rsh-green); color:#fff; font-size:.84rem; font-weight:750; cursor:pointer; }
.rsh-search > button[type="submit"]:hover { background:var(--rsh-green-dark); }
.rsh-search-results { position:absolute; z-index:125; top:calc(100% + 9px); right:0; left:0; overflow:hidden; border:1px solid var(--rsh-border); border-radius:12px; background:#fff; box-shadow:0 18px 45px rgba(0,18,41,.18); }
.rsh-search-results__status { margin:0; padding:14px 16px; color:var(--rsh-text-muted); font-size:.88rem; }
.rsh-search-results ul { display:grid; margin:0; padding:0; list-style:none; }
.rsh-search-results li + li { border-top:1px solid var(--rsh-border); }
.rsh-search-results li a { display:grid; grid-template-columns:46px minmax(0,1fr) auto; gap:12px; padding:10px 14px; align-items:center; color:var(--rsh-text); text-decoration:none; }
.rsh-search-results li a:hover,.rsh-search-results li a:focus-visible { background:var(--rsh-surface-soft); }
.rsh-search-results img,.rsh-search-results__placeholder { width:46px; height:46px; border-radius:7px; object-fit:cover; background:#edf3fa; }
.rsh-search-results strong,.rsh-search-results small { display:block; }
.rsh-search-results small { color:var(--rsh-text-muted); }
.rsh-search-results__price { color:var(--rsh-green); font-size:.83rem; font-weight:750; }
.rsh-search-results__all { display:block; padding:11px 15px; border-top:1px solid var(--rsh-border); color:var(--rsh-green-dark); font-size:.88rem; font-weight:750; text-align:center; text-decoration:none; }
.rsh-header__actions { display:flex; align-items:center; gap:7px; }
.rsh-icon-link,.rsh-cart-link,.rsh-menu-toggle,.rsh-nav__close,.rsh-submenu-toggle { display:inline-flex; min-width:44px; min-height:44px; align-items:center; justify-content:center; border:0; border-radius:9px; background:transparent; color:var(--rsh-green-dark); text-decoration:none; cursor:pointer; }
.rsh-icon-link:hover,.rsh-cart-link:hover,.rsh-menu-toggle:hover,.rsh-nav__close:hover,.rsh-submenu-toggle:hover { background:var(--rsh-green-light); color:var(--rsh-green-dark); }
.rsh-icon-link svg,.rsh-cart-link svg,.rsh-menu-toggle svg,.rsh-nav__close svg,.rsh-submenu-toggle svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.rsh-cart-link { position:relative; gap:7px; padding:0 7px; }
.rsh-cart-label { display:none; }
.rsh-cart-count { display:grid; min-width:21px; height:21px; place-items:center; border-radius:99px; background:var(--rsh-green); color:#fff; font-size:.7rem; font-weight:800; line-height:1; }
.rsh-search-toggle,.rsh-menu-toggle,.rsh-menu-backdrop { display:none; }
.rsh-header__navrow { border-top:1px solid #edf1f6; border-bottom:1px solid #dfe6ef; background:#fff; }
.rsh-header__navinner { display:flex; min-height:42px; align-items:center; justify-content:space-between; gap:24px; }
.rsh-nav { min-width:0; flex:1; }
.rsh-nav__list { display:flex; margin:0; padding:0; align-items:stretch; gap:clamp(21px,2.5vw,38px); list-style:none; white-space:nowrap; }
.rsh-nav__list > li { position:relative; display:flex; align-items:center; }
.rsh-nav__list > li > a { position:relative; display:block; padding:10px 0 9px; color:var(--rsh-text); font-size:.86rem; font-weight:700; text-decoration:none; }
.rsh-nav__list > li > a::after { position:absolute; right:0; bottom:4px; left:0; height:2px; background:var(--rsh-green); content:""; opacity:0; transition:opacity var(--rsh-transition); }
.rsh-nav__list > li:hover > a::after,.rsh-nav__list > li:focus-within > a::after,.rsh-nav__list .current-menu-item > a::after { opacity:1; }
.rsh-nav__list > .menu-item-has-children > a { padding-right:17px; }
.rsh-nav__list > .menu-item-has-children > a::before { position:absolute; top:50%; right:0; width:6px; height:6px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; content:""; transform:translateY(-70%) rotate(45deg); }
.rsh-nav__list .sub-menu { position:absolute; z-index:120; top:calc(100% - 1px); left:-18px; display:grid; min-width:290px; margin:0; padding:12px; border:1px solid var(--rsh-border); border-radius:0 0 13px 13px; background:#fff; box-shadow:0 18px 38px rgba(0,18,41,.14); list-style:none; opacity:0; pointer-events:none; transform:translateY(8px); visibility:hidden; transition:opacity 180ms ease,transform 180ms ease,visibility 180ms ease; }
.rsh-nav__list li:hover > .sub-menu,.rsh-nav__list li:focus-within > .sub-menu { opacity:1; pointer-events:auto; transform:translateY(0); visibility:visible; }
.rsh-nav__list .sub-menu a { display:block; padding:11px 12px; border-radius:7px; color:var(--rsh-text); font-size:.9rem; font-weight:650; text-decoration:none; }
.rsh-nav__list .sub-menu a:hover,.rsh-nav__list .sub-menu a:focus-visible { background:var(--rsh-surface-soft); color:var(--rsh-green-dark); }
.rsh-nav__mobile-head,.rsh-nav__mobile-actions,.rsh-submenu-toggle { display:none; }
@media (max-width:1080px) {
    .rsh-header__inner { grid-template-columns:auto minmax(240px,1fr) auto; gap:22px; }
    .rsh-brand-logo--header { width:230px; height:56px; }
    .rsh-brand-logo.is-theme-logo img { top:-82px; left:-55px; width:337px; }
    .rsh-nav__list { gap:20px; }
}
@media (max-width:900px) {
    .admin-bar .rsh-header { top:46px; }
    .rsh-topbar__inner { justify-content:center; }
    .rsh-topbar__message:empty { display:none; }
    .rsh-topbar__links { gap:12px; }
    .rsh-topbar__links a span { display:none; }
    .rsh-header__inner { position:relative; display:flex; min-height:68px; gap:7px; }
    .rsh-logo { margin-right:auto; }
    .rsh-brand-logo--header { width:200px; height:49px; }
    .rsh-brand-logo.is-theme-logo img { top:-72px; left:-48px; width:293px; }
    .rsh-search { position:absolute; z-index:130; top:calc(100% + 1px); right:24px; left:24px; display:none; box-shadow:0 15px 35px rgba(0,18,41,.18); }
    .rsh-search.is-open { display:flex; }
    .rsh-search-toggle,.rsh-menu-toggle { display:inline-flex; }
    .rsh-account-link { display:none; }
    .rsh-header__navrow { height:0; border:0; }
    .rsh-header__navinner { min-height:0; }
    body.rsh-menu-open { position:fixed; top:var(--rsh-menu-scroll-offset,0); right:0; left:0; width:100%; padding-right:var(--rsh-menu-scrollbar-compensation,0); overflow:hidden; }
    .rsh-nav { position:fixed; z-index:10000; inset:0 0 0 auto; display:block; width:min(400px,calc(100vw - 30px)); height:100vh; height:100dvh; padding:calc(22px + env(safe-area-inset-top)) calc(22px + env(safe-area-inset-right)) calc(22px + env(safe-area-inset-bottom)) 22px; overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; background:#fff; box-shadow:-18px 0 45px rgba(0,18,41,.22); pointer-events:none; transform:translateX(105%); visibility:hidden; will-change:transform; transition:transform 260ms ease,visibility 260ms ease; }
    .admin-bar .rsh-nav { top:32px; height:calc(100dvh - 32px); }
    .rsh-nav.is-open { pointer-events:auto; transform:translateX(0); visibility:visible; }
    .rsh-nav__mobile-head { position:sticky; z-index:10001; top:calc(-22px - env(safe-area-inset-top)); display:flex; margin:calc(-22px - env(safe-area-inset-top)) calc(-22px - env(safe-area-inset-right)) 17px -22px; padding:calc(22px + env(safe-area-inset-top)) calc(22px + env(safe-area-inset-right)) 15px 22px; align-items:center; justify-content:space-between; border-bottom:1px solid var(--rsh-border); background:#fff; color:var(--rsh-green-dark); font-size:1.35rem; font-weight:780; }
    .rsh-nav__close { position:relative; z-index:10001; flex:0 0 auto; }
    .rsh-nav__list { display:grid; gap:2px; white-space:normal; }
    .rsh-nav__list > li { display:grid; grid-template-columns:minmax(0,1fr) 46px; }
    .rsh-nav__list > li > a { padding:13px 5px; font-size:1rem; }
    .rsh-nav__list > li > a::before,.rsh-nav__list > li > a::after { display:none; }
    .rsh-submenu-toggle { display:inline-flex; grid-column:2; grid-row:1; }
    .rsh-submenu-toggle svg { transition:transform 180ms ease; }
    .rsh-nav__list li.is-expanded > .rsh-submenu-toggle svg { transform:rotate(180deg); }
    .rsh-nav__list .sub-menu { position:static; display:none; min-width:0; grid-column:1/-1; margin:0 0 8px; padding:5px 8px 8px 14px; border:0; border-left:2px solid var(--rsh-green); border-radius:0; box-shadow:none; opacity:1; pointer-events:auto; transform:none; visibility:visible; }
    .rsh-nav__list li.is-expanded > .sub-menu { display:grid; }
    .rsh-nav__list .sub-menu a { padding:10px; }
    .rsh-nav__mobile-actions { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin-top:22px; }
    .rsh-nav__mobile-actions a { display:flex; min-height:46px; align-items:center; justify-content:center; gap:8px; border:1px solid var(--rsh-border); border-radius:9px; color:var(--rsh-green-dark); font-weight:700; text-decoration:none; }
    .rsh-nav__mobile-actions svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.8; }
    .rsh-menu-backdrop { position:fixed; z-index:9990; inset:0; display:block; width:100%; height:100%; border:0; background:rgba(0,18,41,.55); opacity:0; pointer-events:none; visibility:hidden; cursor:pointer; transition:opacity 220ms ease,visibility 220ms ease; }
    .rsh-menu-open .rsh-menu-backdrop { opacity:1; pointer-events:auto; visibility:visible; }
}
@media (max-width:782px) {
    .admin-bar .rsh-nav { top:46px; height:calc(100dvh - 46px); }
}
@media (max-width:480px) {
    .rsh-container { width:min(var(--rsh-container),calc(100% - 28px)); }
    .rsh-brand-logo--header { width:185px; height:46px; }
    .rsh-brand-logo.is-theme-logo img { top:-66px; left:-44px; width:271px; }
    .rsh-search { right:14px; left:14px; }
    .rsh-search > button[type="submit"] { padding-inline:11px; }
    .rsh-cart-link { min-width:41px; padding:0 3px; }
    .rsh-topbar__links a:nth-last-child(-n+2) { display:none; }
}
@media (max-width:360px) {
    .rsh-brand-logo--header { width:158px; height:40px; }
    .rsh-brand-logo.is-theme-logo img { top:-57px; left:-38px; width:232px; }
}
