/* Gemensam toppmeny för butik och huvudsida. Laddas efter style.css. */
.shop-site-header {
    position: relative !important;
    top: auto !important;
    z-index: 9000 !important;
    margin: .65rem 1rem 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}

/* Startsidan har en kort presentation och får behålla den följande menyn.
   Produkt- och ordersidor rullar däremot bort med sin header. */
.shop-site-header.shop-site-header--sticky-home {
    position: sticky !important;
    top: .5rem !important;
}

.shop-site-header .shop-nav-wrap {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 1380px;
    min-height: 0;
    margin: 0 auto;
    padding: 1rem 1.4rem;
    gap: 1.5rem;
    border-radius: 2rem;
    background: rgb(3, 25, 45);
    box-shadow: 0 .7rem 1.8rem rgba(3, 25, 45, .22);
    font-size: 1.05rem;
}

.shop-site-header .admin-logout-header { margin: 0; }
.shop-site-header .admin-logout-header button {
    padding: .28rem .1rem;
    border: 0;
    border-bottom: 2px solid transparent;
    background: transparent;
    color: var(--shop-cream, ivory);
    font: inherit;
    cursor: pointer;
}
.shop-site-header .admin-logout-header button:hover,
.shop-site-header .admin-logout-header button:focus-visible { color: bisque; border-color: bisque; }

.shop-site-footer, .shop-site-footer * {
    font-family: var(--font-display, "Spicy Rice", serif) !important;
}

.shop-site-header .companyLogo {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    margin: 0 auto 0 0 !important;
}

.shop-site-header .companyLogo img {
    display: block;
    width: 160px !important;
    max-width: 160px;
    max-height: 66px;
    object-fit: contain;
}

.shop-site-header .site-navigation {
    display: block !important;
    margin: 0 !important;
}

.shop-site-header .site-navigation-toggle { display: none !important; }

.shop-site-header .site-navigation-links {
    display: flex !important;
    align-items: center;
    gap: 1.25rem;
}

.shop-site-header .site-navigation-links > a,
.shop-site-header .site-navigation-links > .addonDropd > .ourOffer {
    display: flex;
    align-items: center;
    min-height: 1.7rem;
    margin: 0 !important;
    padding: .3rem .1rem;
    color: ivory;
    border-bottom: 2px solid transparent !important;
    text-decoration: none !important;
    font-size: 1.05rem !important;
}

.shop-site-header .site-navigation-links > a:hover,
.shop-site-header .site-navigation-links > a:focus-visible,
.shop-site-header .site-navigation-links > a[aria-current="page"],
.shop-site-header .addonDropd[open] > .ourOffer,
.shop-site-header .ourOffer.is-current {
    color: bisque;
    border-bottom-color: bisque !important;
}

.shop-site-header .dropBtn { font-size: 1.05rem !important; }
.shop-site-header .dropIcon { width: 1.25rem; height: 1.25rem; }

.shop-site-header .shoppC {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    margin-left: auto;
    position: relative;
}

/* Kundvagnsräknaren ska ligga på knappen – inte skapa en egen rad ovanför. */
.shop-site-header .totaltOrderdItems {
    position: absolute;
    top: -0.35rem;
    right: -0.35rem;
    z-index: 3;
    display: grid;
    min-width: 1.35rem;
    min-height: 1.35rem;
    place-items: center;
    margin: 0;
}

.shop-site-header #shoppC {
    display: grid;
    width: 56px;
    height: 56px;
    padding: 0;
    place-items: center;
    border-radius: 50%;
    line-height: 0;
}

.shop-site-header #shoppC img { width: 28px; height: 28px; padding: 0; }

.shop-site-footer {
    margin-top: 3rem;
    padding: 0;
    background: rgba(0, 0, 0, .92);
}

.shop-site-footer .shop-footer-wrap {
    width: min(1120px, calc(100% - 2.5rem));
    margin: auto;
    display: grid;
    grid-template-columns: minmax(150px, .7fr) 1.2fr 1fr;
    gap: 2.5rem;
    align-items: start;
    padding: 2.8rem 0;
    color: ivory;
    font-family: Arial, Helvetica, sans-serif;
}

.shop-site-footer .shop-footer-logo { display: block; }
.shop-site-footer .shop-footer-logo img { display: block; width: min(190px, 100%); filter: brightness(0) invert(1); }
.shop-site-footer h2 { margin: 0 0 .8rem; color: ivory; font-family: "Spicy Rice", serif; font-size: 1.35rem; }
.shop-site-footer .shop-footer-contact p { margin: 0 0 .45rem; }
.shop-site-footer .shop-footer-contact a,
.shop-site-footer .shop-footer-links a { color: ivory; font-family: Arial, Helvetica, sans-serif; font-weight: 700; }
.shop-site-footer .shop-footer-links { display: grid; gap: .35rem; }
.shop-site-footer .admin-access-link { margin-top: .45rem; color: rgba(255,255,255,.72) !important; font-size: .82rem; font-weight: 400 !important; text-decoration: none; }
.shop-site-footer .admin-access-link:hover,
.shop-site-footer .admin-access-link:focus-visible { color: ivory !important; text-decoration: underline; }

@media (max-width: 860px) {
    .shop-site-header { margin: .5rem .5rem 0 !important; }
    .shop-site-header .shop-nav-wrap {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: .65rem;
        padding: .85rem 1rem;
        border-radius: 1.25rem;
    }
    .shop-site-header .companyLogo { grid-column: 1; grid-row: 1; }
    .shop-site-header .companyLogo img { width: 118px !important; max-width: 118px; max-height: 54px; }
    .shop-site-header .shoppC { grid-column: 2; grid-row: 1; }
    .shop-site-header #shoppC { width: 48px; height: 48px; }
    .shop-site-header #shoppC img { width: 24px; height: 24px; }
    .shop-site-header .site-navigation { grid-column: 1 / -1; grid-row: 2; width: 100%; }
    .shop-site-header .site-navigation-toggle {
        display: inline-flex !important;
        box-sizing: border-box;
        align-items: center;
        justify-content: center;
        gap: .45rem;
        width: 100%;
        min-height: 38px;
        padding: .45rem .7rem;
        border-radius: 1.25rem;
        color: ivory;
        cursor: pointer;
        font-family: Arial, Helvetica, sans-serif;
        font-size: .9rem;
        font-weight: 700;
        list-style: none;
    }
    .shop-site-header .site-navigation-toggle::-webkit-details-marker { display: none; }
    .shop-site-header .site-navigation-toggle::marker { content: ''; }
    .shop-site-header .site-navigation-toggle svg { width: 1.2rem; height: 1.2rem; fill: none; stroke: currentColor; stroke-linecap: round; stroke-width: 2; }
    .shop-site-header .site-navigation-links { display: none !important; margin-top: .6rem; padding: .6rem; border-radius: .8rem; background: rgb(3, 25, 45); }
    .shop-site-header .site-navigation[open] .site-navigation-links { display: grid !important; gap: .2rem; }
    .shop-site-header .site-navigation-links > a,
    .shop-site-header .site-navigation-links > .addonDropd > .ourOffer { width: 100%; min-height: 2.7rem; padding: .6rem .5rem; }
    .shop-site-header .site-navigation-links .addonDropd { width: 100%; }
    .shop-site-header .site-navigation-links .dropdown { position: static; width: auto; min-width: 0; }
    .shop-site-footer .shop-footer-wrap { grid-template-columns: 1fr; gap: 1.5rem; padding: 2.2rem 0; }
}
