/* Rokaspulksteni header v1 — only the actual Journal 2.16.8 Center header.
   Native logo, search, language POST, cart, menu and sticky handlers are retained. */
header.rp-header {
    background: #fff;
    color: #30343f;
    box-shadow: none;
}
header.rp-header .header {
    background: #fff;
    box-shadow: none;
}
header.rp-header #header {
    display: block;
    height: auto;
    padding-top: 0;
}
header.rp-header .journal-top-header,
header.rp-header .journal-center-bg { display: none; }
header.rp-header .journal-menu-bg {
    top: auto;
    bottom: 0;
    height: 48px;
    min-height: 48px;
    background: #30343f;
}
header.rp-header .top-menu-link,
header.rp-header .main-menu-text,
header.rp-header .mobile-trigger,
header.rp-header #search input,
header.rp-header #cart-total,
header.rp-header .rp-header-cart-amount,
header.rp-header .rp-language-button {
    font-family: system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
    letter-spacing: normal;
    text-shadow: none;
}
header.rp-header a:focus-visible,
header.rp-header button:focus-visible,
header.rp-header input:focus-visible,
header.rp-header [tabindex="0"]:focus-visible {
    outline: 2px solid #30343f;
    outline-offset: 3px;
}
header.rp-header .journal-menu a:focus-visible,
header.rp-header .journal-menu [tabindex="0"]:focus-visible {
    outline-color: #fff;
    outline-offset: -4px;
}
header.rp-header .header-assets.top-bar {
    display: flex;
    flex-wrap: nowrap;
    gap: 16px;
    min-height: 44px;
    border-bottom: 1px solid #e4e5e7;
    background: #fff;
}
header.rp-header .journal-links,
header.rp-header .journal-secondary {
    position: static;
    min-width: 0;
    width: auto;
    height: auto;
    padding: 0;
    background: transparent;
    border: 0;
}
header.rp-header .journal-links { flex: 1 1 auto; }
header.rp-header .journal-secondary { order: 2; flex: 0 0 auto; }
header.rp-header .links { width: auto; height: auto; }
header.rp-header .links .top-menu { margin: 0; padding: 0; }
header.rp-header .links a,
header.rp-header .links .no-link {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    height: auto;
    padding: 0 8px;
    font-size: 14px;
    line-height: 20px;
    color: #30343f;
    background: transparent;
    text-transform: none;
    text-decoration: none;
    white-space: normal;
    border: 0;
}
header.rp-header .links .top-menu-link { font-size: 14px; line-height: 20px; }
header.rp-header .links a:hover { color: #30343f; text-decoration: underline; }
header.rp-header .journal-language,
header.rp-header .journal-currency {
    position: static;
    top: auto;
    left: auto;
    right: auto;
    transform: none;
    flex: 0 0 auto;
    width: auto;
    min-width: 0;
    height: auto;
    padding: 0;
    background: transparent;
}
header.rp-header .journal-currency { order: 3; }
header.rp-header .journal-language { order: 4; }
header.rp-header .journal-language .rp-language-form { display: block; float: none; margin: 0; padding: 0; height: auto; }
header.rp-header #language.rp-language-codes {
    display: flex;
    align-items: center;
    height: 44px;
    border: 0;
    background: transparent;
    box-shadow: none;
}
header.rp-header .rp-language-button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;
    min-width: 44px;
    min-height: 44px;
    height: 44px;
    margin: 0;
    padding: 0 8px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #30343f;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    cursor: pointer;
    box-shadow: none;
}
header.rp-header .rp-language-button:hover { background: #f6f6f5; }
header.rp-header .rp-language-button.is-current { font-weight: 700; }
header.rp-header .rp-language-button.is-current::after {
    content: "";
    position: absolute;
    bottom: 8px;
    left: 12px;
    right: 12px;
    border-bottom: 1px solid currentColor;
}
header.rp-header .rp-header-main {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr) minmax(0, 1fr);
    align-items: center;
    gap: 24px;
    min-height: 96px;
    padding: 16px 0;
}
header.rp-header .rp-header-main > .journal-search,
header.rp-header .rp-header-main > .journal-logo,
header.rp-header .rp-header-main > .journal-cart {
    position: relative;
    top: auto;
    left: auto;
    float: none;
    width: 100%;
    min-width: 0;
    height: auto !important;
    padding: 0;
    background: transparent;
}
header.rp-header .journal-logo #logo { height: auto; padding: 0; line-height: normal; }
header.rp-header .journal-logo #logo a { display: block; height: auto; text-align: center; }
header.rp-header .journal-logo #logo img {
    position: static;
    top: auto;
    left: auto;
    transform: none;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}
header.rp-header #search {
    height: 44px;
    min-height: 44px;
    width: 100%;
    border: 1px solid #e4e5e7;
    border-radius: 6px;
    background: #fff;
    box-shadow: none;
}
header.rp-header #search input,
header.rp-header .journal-search:hover #search input {
    width: 100%;
    min-width: 0;
    min-height: 42px;
    height: 42px;
    margin: 0;
    padding: 8px 48px 8px 12px;
    border: 0;
    border-radius: 6px;
    background: #fff;
    color: #30343f;
    font-size: 15px;
    line-height: 24px;
    box-shadow: none;
}
header.rp-header #search input::placeholder { color: #656972; opacity: 1; }
header.rp-header #search .button-search {
    position: absolute;
    top: 0;
    right: 0;
    left: auto;
    width: 44px;
    height: 42px;
    border: 0;
    border-radius: 0 6px 6px 0;
    background: transparent;
    color: #30343f;
}
header.rp-header #search .button-search button { width: 44px; min-height: 44px; height: 44px; color: #30343f; background: transparent; }
header.rp-header #search .button-search i::before { color: #30343f; font-size: 22px; }
header.rp-header #search .autocomplete2-suggestions { top: 50px; left: 0; border-radius: 6px; }
header.rp-header #search .autocomplete2-suggestions::before { display: none; }
header.rp-header #cart {
    height: 48px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: #30343f;
    box-shadow: none;
}
header.rp-header #cart .heading {
    height: 48px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: #30343f;
    box-shadow: none;
}
header.rp-header #cart .heading:hover { background: #f6f6f5; }
header.rp-header #cart .heading a { color: #30343f; }
header.rp-header #cart-total { color: #30343f; font-size: 14px; line-height: 20px; font-weight: 600; }
header.rp-header #cart .heading i { width: 44px; height: 48px; border: 0; background: transparent; }
header.rp-header #cart .heading i::before { color: #30343f; font-size: 28px; }
header.rp-header .rp-header-cart-symbol,
header.rp-header .rp-header-cart-amount,
header.rp-header .rp-header-mobile-account { display: none; }
header.rp-header #header .journal-menu {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 48px;
    padding: 0;
    background: #30343f;
    color: #fff;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
header.rp-header .super-menu { border: 0; border-radius: 0; box-shadow: none; background: #30343f; }
header.rp-header .super-menu > li { border-color: rgba(255,255,255,.14); background: #30343f; }
header.rp-header #header .super-menu > li > a {
    min-height: 48px;
    padding: 12px 8px;
    font-size: 15px;
    line-height: 24px;
    color: #fff;
    text-transform: uppercase;
    white-space: normal;
    overflow: visible;
    background: transparent;
}
header.rp-header .super-menu > li > a .main-menu-text { font-size: 15px; line-height: 24px; text-transform: uppercase; }
header.rp-header .super-menu > li:hover { background: #3e434f; }
header.rp-header .super-menu > li > a:hover { background: #3e434f; color: #fff; }

/* Match Journal's existing breakpoint exactly; do not change the menu's behavior. */
@media only screen and (max-width: 760px) {
    header.rp-header .journal-menu-bg { display: none; }
    header.rp-header .header-assets.top-bar { gap: 8px; margin: 0 12px; min-height: 48px; }
    header.rp-header #header .journal-links {
        display: block !important;
        position: static;
        flex: 1 1 auto;
        min-width: 0;
        width: auto;
        padding: 0;
    }
    header.rp-header .journal-links .links { width: 100%; margin: 0; }
    header.rp-header #header .journal-links .top-menu { justify-content: flex-start; }
    header.rp-header .journal-links .top-menu > li { display: block; float: none; }
    header.rp-header .journal-links .links a { display: flex; min-height: 48px; padding: 4px 0; text-align: left; }
    header.rp-header .journal-links .top-menu-link { font-size: 13px; line-height: 18px; white-space: normal; }
    header.rp-header .journal-links .links i { flex: 0 0 auto; font-size: 13px !important; margin-right: 5px !important; }
    header.rp-header .rp-header-phone-number,
    header.rp-header .rp-header-phone-hours { display: inline-block; white-space: nowrap; }
    header.rp-header .journal-language { align-self: flex-start; }
    header.rp-header #header .journal-secondary { display: none !important; }
    header.rp-header .rp-header-main {
        grid-template-columns: minmax(0, 1fr) minmax(112px, 132px);
        grid-template-areas: "logo cart" "search search";
        gap: 12px 12px;
        min-height: 0;
        padding: 12px;
    }
    header.rp-header .rp-header-main > .journal-logo { grid-area: logo; order: 0; }
    header.rp-header .rp-header-main > .journal-cart { grid-area: cart; order: 0; z-index: 100; }
    header.rp-header .rp-header-main > .journal-search { grid-area: search; order: 0; z-index: 99; }
    header.rp-header .journal-logo #logo a { display: flex; align-items: center; min-height: 48px; text-align: left; }
    header.rp-header .journal-logo #logo img { width: 100%; max-width: 232px; height: auto; }
    header.rp-header #cart { position: relative; top: auto; left: auto; right: auto; width: 100%; }
    header.rp-header #cart .heading.rp-cart-ready,
    header.rp-header #cart .heading.rp-cart-ready > a {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 8px;
    }
    header.rp-header #cart .heading.rp-cart-ready #cart-total {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }
    header.rp-header #cart .heading.rp-cart-ready i { display: none; }
    header.rp-header #cart .heading.rp-cart-ready .rp-header-cart-symbol {
        display: block;
        position: static;
        flex: 0 0 28px;
        width: 28px;
        height: 32px;
        padding: 0;
        color: #30343f;
        font-size: 28px;
        line-height: 32px;
    }
    header.rp-header #cart .heading.rp-cart-ready .rp-header-cart-amount {
        display: block;
        position: static;
        flex: 0 0 auto;
        width: auto;
        padding: 0;
        color: #30343f;
        font-size: 14px;
        line-height: 20px;
        font-weight: 600;
        text-align: right;
        white-space: nowrap;
    }
    header.rp-header #cart .heading.rp-cart-long,
    header.rp-header #cart .heading.rp-cart-long > a { flex-wrap: wrap; align-content: center; gap: 0 8px; }
    header.rp-header #cart .heading.rp-cart-long .rp-header-cart-symbol { height: 24px; font-size: 23px; line-height: 24px; }
    header.rp-header #cart .heading.rp-cart-long .rp-header-cart-amount { flex-basis: 100%; line-height: 18px; }
    header.rp-header #cart .content { width: calc(100vw - 24px); min-width: 0; max-width: calc(100vw - 24px); right: 0; left: auto; }
    header.rp-header .journal-menu > .mobile-trigger {
        display: flex;
        align-items: center;
        width: calc(100% - 132px);
        height: 48px;
        min-height: 48px;
        padding: 0 12px;
        color: #fff;
        background: #30343f;
        font-size: 14px;
        font-weight: 600;
        line-height: 20px;
        text-transform: uppercase;
    }
    header.rp-header .journal-menu > .mobile-trigger::before { float: none; margin-right: 10px; font-size: 21px; color: #fff; }
    header.rp-header .rp-header-mobile-account {
        display: block;
        position: absolute;
        top: 0;
        right: 8px;
        max-width: 132px;
        height: 48px;
        z-index: 4;
    }
    header.rp-header .rp-header-mobile-account .links { margin: 0; height: 48px; }
    header.rp-header .rp-header-mobile-account .top-menu { display: flex; height: 48px; }
    header.rp-header .rp-header-mobile-account .top-menu > li { display: block; float: none; }
    header.rp-header .rp-header-mobile-account .links a {
        min-height: 48px;
        padding: 0 8px;
        color: #fff;
        background: transparent;
        line-height: 20px;
        max-width: 132px;
        white-space: normal;
    }
    header.rp-header .rp-header-mobile-account .links i { flex: 0 0 auto; color: #fff !important; font-size: 16px !important; }
    header.rp-header .rp-header-mobile-account .top-menu-link { min-width: 0; color: #fff; font-size: 14px; white-space: normal; text-align: left; }
    header.rp-header .journal-menu .super-menu > li > a { min-height: 48px; padding: 12px 56px 12px 16px; text-align: left; }
    header.rp-header .journal-menu .super-menu > li > a .main-menu-text { white-space: normal; }
    header.rp-header .journal-menu .mobile-menu > li .mobile-plus { width: 48px; height: 48px; line-height: 46px; }
}
/* Journal's sticky menu intentionally hides the header-assets rows on desktop.
   Do not override that display rule; it keeps the existing sticky behavior. */
