html { scrollbar-gutter:stable; }

.store-topbar {
    background:#070d25;
    color:white;
    font-size:.78rem;
    letter-spacing:.08em;
    padding:9px 0;
    text-align:center;
    text-transform:uppercase;
}

.store-main-header {
    background:white;
    border-bottom:1px solid #eee7e3;
    position:relative;
    z-index:30;
}

.store-header-inner {
    align-items:center;
    box-sizing:border-box;
    display:grid;
    gap:28px;
    grid-template-columns:240px 1fr;
    margin:0;
    min-height:94px;
    padding:0 20px;
    width:100%;
}

.store-brand {
    background:#070d25;
    border-radius:6px;
    box-shadow:0 2px 8px rgba(5,12,41,.12);
    display:block;
    height:80px;
    margin-left:45px;
    overflow:hidden;
    width:215px;
}

.store-brand img {
    display:block;
    height:100%;
    object-fit:contain;
    width:100%;
}

.store-header-actions {
    align-items:center;
    display:grid;
    gap:10px;
    grid-template-columns:minmax(0,780px) auto;
    justify-content:center;
    min-width:0;
    transform:translateX(-19px);
}

.store-search-box {
    border:1px solid #bbc0cf;
    border-radius:5px;
    display:flex;
    justify-self:center;
    max-width:780px;
    overflow:hidden;
    width:100%;
}

.store-search-box input {
    border:0;
    color:#171522;
    font:inherit;
    font-size:.95rem;
    min-width:0;
    outline:0;
    padding:13px 15px;
    width:100%;
}

.store-search-box button {
    background:#070d25;
    border:0;
    color:white;
    cursor:pointer;
    font:inherit;
    font-weight:700;
    padding:0 18px;
}

.store-header-tools {
    align-items:center;
    display:flex;
    gap:8px;
}

.store-account-button,
.store-cart-button {
    align-items:center;
    background:white;
    border:1px solid transparent;
    border-radius:4px;
    color:#070d25;
    cursor:pointer;
    display:flex;
    height:38px;
    justify-content:center;
    padding:0;
    position:relative;
}

.store-account-button { width:38px; }
.store-cart-button { width:42px; }
.store-account-button:hover,
.store-account-button[aria-expanded="true"],
.store-cart-button:hover {
    background:#f1f3f8;
    border-color:#d7dbe7;
}

.store-account-button svg { height:24px; width:24px; }
.store-cart-button svg { height:25px; width:25px; }

.store-cart-count {
    align-items:center;
    background:#f04432;
    border:2px solid white;
    border-radius:999px;
    color:white;
    display:flex;
    font-size:.66rem;
    font-weight:700;
    height:20px;
    justify-content:center;
    min-width:20px;
    padding:0 4px;
    position:absolute;
    right:-7px;
    top:-8px;
}

.store-account-dropdown {
    background:white;
    border:1px solid #eee7e3;
    border-radius:6px;
    box-shadow:0 12px 30px rgba(5,12,41,.18);
    min-width:205px;
    padding:8px;
    position:absolute;
    right:0;
    top:calc(100% + 12px);
    z-index:50;
}

.store-account-dropdown[hidden] { display:none; }
.store-account-dropdown a,
.store-account-dropdown button {
    background:white;
    border:0;
    border-radius:4px;
    color:#171522;
    cursor:pointer;
    display:block;
    font:inherit;
    font-size:.88rem;
    padding:11px 12px;
    text-align:left;
    width:100%;
}
.store-account-dropdown a:hover,
.store-account-dropdown button:hover { background:#f1f3f8; }
.store-account-dropdown form { margin:0; }
.store-account-name {
    border-bottom:1px solid #eee7e3;
    color:#696573;
    font-size:.78rem;
    margin:0 4px 5px;
    overflow:hidden;
    padding:8px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

@media (max-width:900px) {
    .store-header-inner {
        gap:12px;
        grid-template-columns:1fr auto;
        min-height:80px;
        padding:0 14px;
    }
    .store-brand { height:57px; margin-left:16px; width:156px; }
    .store-header-actions { display:block; transform:none; }
    .store-search-box { display:none; }
}

@media (max-width:540px) {
    .store-header-inner { min-height:74px; padding:0 16px; }
    .store-brand { height:54px; margin-left:0; width:150px; }
    .store-header-tools { gap:5px; }
}
