/* Store Header - single source of truth for storefront header */
.site-header{
    background:#fff !important;
    border-bottom:1px solid #e2e8f0 !important;
    position:sticky !important;
    top:0 !important;
    z-index:50 !important;
}

/* Top dark-blue category strip */
.site-header .topbar{
    height:26px !important;
    min-height:26px !important;
    padding:0 !important;
    background:#073f73 !important;
    color:#fff !important;
    overflow:hidden !important;
}

.site-header .topbar .wrap,
.site-header .topbar-inner{
    height:26px !important;
    min-height:26px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
    line-height:26px !important;
    overflow:hidden !important;
}

.site-header .topbar span{
    display:block !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:500 !important;
    line-height:26px !important;
    white-space:nowrap !important;
}

.site-header .topbar strong{
    display:none !important;
}

/* Main header row */
.site-header .header-main{
    min-height:82px !important;
    height:82px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
    display:flex !important;
    align-items:center !important;
    gap:42px !important;
    background:#fff !important;
    overflow:visible !important;
}

/* Brand block */
.site-header .header-main .logo,
.site-header .header-main .ez-logo{
    flex:0 0 270px !important;
    width:270px !important;
    min-width:270px !important;
    max-width:270px !important;
    display:flex !important;
    align-items:center !important;
    gap:14px !important;
    overflow:visible !important;
    color:#0f172a !important;
    text-decoration:none !important;
}

.site-header .header-main .logo-icon{
    display:none !important;
}

.site-header .header-main .logo img,
.site-header .header-main .ez-logo img,
.site-header .header-main .logo .brand-logo,
.site-header .header-main .site-logo{
    width:auto !important;
    height:64px !important;
    max-height:64px !important;
    max-width:112px !important;
    object-fit:contain !important;
    object-position:center !important;
    display:block !important;
    flex:0 0 auto !important;
}

.site-header .header-main .logo span:not(.logo-icon),
.site-header .header-main .ez-logo span:not(.logo-icon){
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    align-items:flex-start !important;
    min-width:0 !important;
    max-width:150px !important;
    overflow:visible !important;
    white-space:nowrap !important;
}

.site-header .header-main .logo strong,
.site-header .header-main .ez-logo strong{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    font-size:20px !important;
    line-height:1.08 !important;
    font-weight:900 !important;
    color:#0f172a !important;
    white-space:nowrap !important;
    overflow:visible !important;
    text-overflow:clip !important;
}

.site-header .header-main .logo small,
.site-header .header-main .ez-logo small{
    display:block !important;
    margin:3px 0 0 0 !important;
    padding:0 !important;
    font-size:13px !important;
    line-height:1.15 !important;
    font-weight:500 !important;
    color:#64748b !important;
    white-space:nowrap !important;
    overflow:visible !important;
    text-overflow:clip !important;
}

/* Header search */
.site-header .header-main .search,
.site-header .header-main .header-store-search{
    flex:0 1 590px !important;
    width:590px !important;
    max-width:590px !important;
    min-width:440px !important;
    height:50px !important;
    margin-left:12px !important;
    display:flex !important;
    align-items:center !important;
    gap:0 !important;
    border:2px solid #dbeafe !important;
    border-radius:14px !important;
    overflow:hidden !important;
    background:#f8fbff !important;
}

.site-header .header-main .search input,
.site-header .header-main .header-store-search input{
    flex:1 1 auto !important;
    width:auto !important;
    height:48px !important;
    min-height:48px !important;
    border:0 !important;
    background:transparent !important;
    padding:0 16px !important;
    outline:none !important;
    font-size:14px !important;
    color:#0f172a !important;
}

.site-header .header-main .search button,
.site-header .header-main .header-store-search button{
    flex:0 0 auto !important;
    height:44px !important;
    min-height:44px !important;
    border:0 !important;
    border-radius:11px !important;
    margin-right:3px !important;
    padding:0 24px !important;
    background:#0b69c7 !important;
    color:#fff !important;
    font-weight:800 !important;
    cursor:pointer !important;
}

/* Header right links */
.site-header .header-main .header-links{
    margin-left:auto !important;
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
    flex:0 0 auto !important;
}

.site-header .header-main .header-links > a{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:42px !important;
    border:1px solid #e2e8f0 !important;
    border-radius:10px !important;
    padding:0 13px !important;
    background:#f8fafc !important;
    color:#0f172a !important;
    font-weight:700 !important;
    text-decoration:none !important;
    white-space:nowrap !important;
}

.site-header .language-switch{
    display:flex !important;
    align-items:center !important;
    gap:4px !important;
}

.site-header .language-switch a{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:36px !important;
    min-height:36px !important;
    border:1px solid #e2e8f0 !important;
    border-radius:9px !important;
    background:#fff !important;
    color:#0f172a !important;
    font-weight:800 !important;
    text-decoration:none !important;
}

.site-header .language-switch a.active{
    background:#0b69c7 !important;
    color:#fff !important;
    border-color:#0b69c7 !important;
}

/* Main spacing after sticky header */
.main{
    padding-top:18px !important;
}

/* Responsive */
@media(max-width:1120px){
    .site-header .header-main{
        gap:30px !important;
    }

    .site-header .header-main .logo,
    .site-header .header-main .ez-logo{
        flex-basis:250px !important;
        width:250px !important;
        min-width:250px !important;
        max-width:250px !important;
    }

    .site-header .header-main .logo strong,
    .site-header .header-main .ez-logo strong{
        font-size:18px !important;
    }

    .site-header .header-main .logo small,
    .site-header .header-main .ez-logo small{
        font-size:12px !important;
    }

    .site-header .header-main .search,
    .site-header .header-main .header-store-search{
        flex-basis:430px !important;
        width:430px !important;
        max-width:430px !important;
        min-width:320px !important;
        margin-left:8px !important;
    }
}

@media(max-width:780px){
    .site-header .topbar,
    .site-header .topbar .wrap,
    .site-header .topbar-inner{
        height:auto !important;
        min-height:30px !important;
        line-height:1.3 !important;
    }

    .site-header .topbar span{
        line-height:1.3 !important;
        white-space:normal !important;
        padding:7px 0 !important;
    }

    .site-header .header-main{
        height:auto !important;
        min-height:0 !important;
        flex-wrap:wrap !important;
        gap:12px !important;
        padding-top:10px !important;
        padding-bottom:10px !important;
    }

    .site-header .header-main .logo,
    .site-header .header-main .ez-logo{
        flex:1 1 auto !important;
        width:auto !important;
        min-width:0 !important;
        max-width:none !important;
    }

    .site-header .header-main .logo img,
    .site-header .header-main .ez-logo img{
        height:54px !important;
        max-height:54px !important;
        max-width:96px !important;
    }

    .site-header .header-main .logo strong,
    .site-header .header-main .ez-logo strong{
        font-size:16px !important;
    }

    .site-header .header-main .logo small,
    .site-header .header-main .ez-logo small{
        font-size:11px !important;
    }

    .site-header .header-main .search,
    .site-header .header-main .header-store-search{
        order:3 !important;
        flex:1 1 100% !important;
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        margin-left:0 !important;
    }

    .site-header .header-main .header-links{
        margin-left:0 !important;
    }
}


/* Header search rectangular input + square icon button */
.site-header .header-main .search,
.site-header .header-main .header-store-search{
    height:46px !important;
    min-height:46px !important;
    border:1px solid #cbd5e1 !important;
    border-radius:6px !important;
    background:#fff !important;
    overflow:hidden !important;
}

.site-header .header-main .search input,
.site-header .header-main .header-store-search input{
    height:44px !important;
    min-height:44px !important;
    padding:0 14px !important;
    border-radius:0 !important;
    font-size:14px !important;
}

.site-header .header-main .search button,
.site-header .header-main .header-store-search button,
.site-header .header-main .header-search-button{
    width:48px !important;
    min-width:48px !important;
    max-width:48px !important;
    height:44px !important;
    min-height:44px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-left:1px solid #cbd5e1 !important;
    border-radius:0 !important;
    background:#0b69c7 !important;
    color:#fff !important;
    font-size:0 !important;
    line-height:1 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    cursor:pointer !important;
}

.site-header .header-main .search button::before,
.site-header .header-main .header-store-search button::before,
.site-header .header-main .header-search-button::before{
    content:"\1F50D" !important;
    font-size:18px !important;
    line-height:1 !important;
    display:block !important;
}

.site-header .header-main .search button:hover,
.site-header .header-main .header-store-search button:hover,
.site-header .header-main .header-search-button:hover{
    background:#0959aa !important;
}


/* Header search icon size adjustment only - input height unchanged */
.site-header .header-main .search button::before,
.site-header .header-main .header-store-search button::before,
.site-header .header-main .header-search-button::before{
    font-size:22px !important;
}


/* Store is German-only: language switch removed from storefront header */
.site-header .language-switch{
    display:none !important;
}

.site-header .header-main .header-links{
    gap:10px !important;
}
