/* Hard-scoped styles so Smartic/Woo category-card CSS cannot turn this into tiles. No background behind menu text. */
.harton-camset-menu,
.harton-camset-menu * {
    box-sizing: border-box !important;
}

.harton-camset-menu {
    --hcm-text: currentColor;
    --hcm-line: rgba(0,0,0,.14);
    position: relative !important;
    width: 100% !important;
    min-height: 100vh !important;
    overflow: hidden !important;
    background: transparent !important;
    background-image: none !important;
    color: inherit !important;
    font-family: inherit !important;
}

.harton-camset-menu .hcm-panel {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    min-height: 100vh !important;
    background: transparent !important;
    background-image: none !important;
    color: inherit !important;
    transform: translateX(100%) !important;
    transition: transform .26s ease !important;
    z-index: 1 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

.harton-camset-menu .hcm-panel.hcm-active {
    transform: translateX(0) !important;
    z-index: 3 !important;
}

.harton-camset-menu .hcm-panel.hcm-prev {
    transform: translateX(-100%) !important;
    z-index: 2 !important;
}

.harton-camset-menu .hcm-header {
    display: flex !important;
    align-items: center !important;
    min-height: 52px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    background-image: none !important;
    border-bottom: 1px solid var(--hcm-line) !important;
}

.harton-camset-menu .hcm-back {
    appearance: none !important;
    -webkit-appearance: none !important;
    flex: 0 0 48px !important;
    width: 48px !important;
    min-height: 52px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: inherit !important;
    cursor: pointer !important;
}

.harton-camset-menu .hcm-back::before {
    content: '' !important;
    display: block !important;
    width: 10px !important;
    height: 10px !important;
    margin: 0 auto !important;
    border-left: 2px solid currentColor !important;
    border-bottom: 2px solid currentColor !important;
    transform: rotate(45deg) !important;
}

.harton-camset-menu .hcm-title {
    flex: 1 !important;
    padding: 0 18px 0 0 !important;
    margin: 0 !important;
    color: inherit !important;
    font-size: 18px !important;
    line-height: 1.1 !important;
    font-weight: 500 !important;
    letter-spacing: -.04em !important;
}

.harton-camset-menu .hcm-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    background: transparent !important;
    background-image: none !important;
}

.harton-camset-menu .hcm-item {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-bottom: 1px solid var(--hcm-line) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.harton-camset-menu .hcm-link,
.harton-camset-menu .hcm-next {
    appearance: none !important;
    -webkit-appearance: none !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 13px 48px 13px 20px !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: inherit !important;
    text-decoration: none !important;
    text-transform: none !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    cursor: pointer !important;
}

.harton-camset-menu .hcm-link:hover,
.harton-camset-menu .hcm-link:focus,
.harton-camset-menu .hcm-next:hover,
.harton-camset-menu .hcm-next:focus,
.harton-camset-menu .hcm-link:active,
.harton-camset-menu .hcm-next:active {
    background: transparent !important;
    background-image: none !important;
    color: inherit !important;
    text-decoration: none !important;
}

.harton-camset-menu .hcm-link span,
.harton-camset-menu .hcm-next span {
    display: block !important;
    max-width: 100% !important;
    color: inherit !important;
    background: transparent !important;
    background-image: none !important;
}

.harton-camset-menu .hcm-arrow {
    position: absolute !important;
    right: 22px !important;
    top: 50% !important;
    width: 9px !important;
    height: 9px !important;
    border-right: 2px solid currentColor !important;
    border-top: 2px solid currentColor !important;
    transform: translateY(-50%) rotate(45deg) !important;
    pointer-events: none !important;
    background: transparent !important;
}

.harton-camset-menu .hcm-loader,
.harton-camset-menu .hcm-empty,
.harton-camset-menu .hcm-error {
    padding: 18px 20px !important;
    margin: 0 !important;
    color: inherit !important;
    opacity: .72 !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    background: transparent !important;
    background-image: none !important;
}

.harton-camset-menu .hcm-footer {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 12px 18px !important;
    padding: 18px 20px !important;
    margin: 0 !important;
    background: transparent !important;
    background-image: none !important;
    border-top: 1px solid var(--hcm-line) !important;
}

.harton-camset-menu .hcm-footer a {
    color: inherit !important;
    text-decoration: none !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
    font-weight: 500 !important;
    background: transparent !important;
    background-image: none !important;
}

@media (max-width: 390px) {
    .harton-camset-menu .hcm-link,
    .harton-camset-menu .hcm-next {
        min-height: 52px !important;
        padding-left: 18px !important;
        padding-right: 46px !important;
    }

    .harton-camset-menu .hcm-arrow {
        right: 20px !important;
    }
}

.camset-mobile-menu,.camset-mobile-menu *{color:#fff !important;}
.camset-mobile-menu a{color:#fff !important;}
.camset-mobile-menu .arrow,.camset-mobile-menu svg{color:#fff !important;fill:#fff !important;}
.camset-mobile-menu li,.camset-mobile-menu-item,.camset-mobile-menu a{border-bottom:1px solid rgba(255,255,255,.15) !important;}
