body.a11y-mode,
.a11y-mode .site {
    background: var(--black);
    color: var(--white);
}
.a11y-mode h1,
.a11y-mode h2,
.a11y-mode h3,
.a11y-mode h4,
.a11y-mode h5,
.a11y-mode h6,
.a11y-mode legend {
    color: var(--yellow);
}
.a11y-mode h2:not(.h2):after {
    background-color: var(--yellow);
}
.a11y-mode .legend-label:after {
    display: inline-block;
    background-color: var(--yellow);
}
.a11y-mode h2.h2 {
    font-weight: var(--font-semibold);
}
.a11y-mode input {
    background: var(--black);
    color: var(--yellow);
    border-radius: 0px !important;
    border: 2px solid var(--yellow);
    font-weight: var(--font-semibold);
    font-size: var(--text-lg);
}
.a11y-mode input.form-control, .a11y-mode select.form-control {
    height: 2.5rem;
}
.a11y-mode input[readonly] {
    background: var(--black);
}
.a11y-mode select.form-control {
    background: var(--black);
    color: var(--yellow);
    border-radius: 0px !important;
    border: 2px solid var(--yellow);
    font-weight: var(--font-semibold);
    font-size: var(--text-lg);
}
.a11y-mode button.anchor {
    background: none !important;
    color: var(--yellow) !important;
    cursor: pointer;
}
.a11y-mode button.anchor:not(:focus-visible) {
    border: 0 !important;
}
.a11y-mode .btn {
    background: transparent !important;
    border: 2px solid var(--yellow);
    border-radius: 0px !important;
    color: var(--yellow);
    font-size: var(--text-lg);
    padding: .25rem .5rem;
    transition: none !important;
}
.a11y-mode .btn:hover {
    border: 2px solid var(--white);
    color: var(--white);
    transition: none !important;
}
.a11y-mode textarea {
    border: 2px solid var(--yellow);
    background: var(--black);
    color: var(--white);
    border-radius: 0;
}

/**
 * valamiért enélkül nem működik a cb
 */
.a11y-mode input[type="checkbox"],
.a11y-mode input[type="radio"] {
    outline: 2px solid transparent !important;
}
.a11y-mode a:focus-visible,
.a11y-mode button:focus-visible,
.a11y-mode input:focus-visible,
.a11y-mode select:focus-visible,
.a11y-mode textarea:focus-visible,
.a11y-mode summary:focus-visible,
.a11y-mode [tabindex]:focus-visible,
.a11y-mode [type="checkbox"]:focus-visible,
.a11y-mode [type="checkbox"]:focus,
.a11y-mode [type="checkbox"]:active,
.a11y-mode [type="radio"]:focus-visible,
.a11y-mode [role="button"]:focus-visible {
    /*border: 4px solid var(--white) !important;*/
    outline-color: var(--white) !important;
    outline-width: 2px !important;
    outline-offset: 2px !important;
    outline-style: auto;
    transition: none !important;
}
.a11y-mode input[type="checkbox"],
.a11y-mode input[type="radio"] {
    width: 2rem;
    height: 2rem;
}
.a11y-mode input[type="checkbox"]:checked::after,
.a11y-mode input[type="radio"]:checked::after {
    font-size: var(--text-2xl);
    left: 5px;
    top: -2px;
}
.a11y-mode input[type="radio"]:checked::after {
    font-size: var(--text-2xl);
    position: relative;
    content: "✓";
}
.a11y-mode .a11y-divider {
    width: 100%;
    border: 1px solid var(--yellow);
    margin-top: 4rem;
}
.a11y-mode .a11y-divider.mb-6 {
    margin-bottom: 1.5rem;
}

/**
 * Modal
 */
.a11y-mode .modal[role="dialog"] {
    background: var(--white-30) !important;
}
.a11y-mode .modal button[data-dismiss="modal"]:not(.btn) {
    font-size: 4rem;
    color: var(--white) !important;
    font-weight: var(--font-base);
    opacity: 1;
    padding-top: 0rem;
    padding-bottom: 0rem;
}
.a11y-mode .modal button[data-dismiss="modal"]:not(.btn):hover {
    color: var(--yellow) !important;
}
.a11y-mode .modal-content {
    border-radius: 0;
    background: var(--black);
    border: 2px solid var(--yellow);
}
.a11y-mode .modal-body {
    border-top: 1px solid var(--white);
    border-bottom: 1px solid var(--white);
    overflow-y: hidden;
}

.a11y-mode .site {
    top: 0 !important;
}

.a11y-mode .modal-container .modal-box {
    border: 2px solid var(--yellow);
    background: var(--black);
    border-radius: 0;
}
.a11y-mode .modal-container .modal-box h2 {
    text-transform: uppercase;
}

.a11y-mode .modal-container .modal-box > div {
    color: var(--white);
    text-transform: uppercase;
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
}

/**
 * Header
 */
.a11y-mode #header-wrapper {
    background: var(--black);
    position: static;
}

.a11y-mode #mobile-header-block,
.a11y-mode #mobile-header-block .container,
.a11y-mode #mobile-header-block .container a,
.a11y-mode #mobile-header-block .container a:focus,
.a11y-mode #mobile-header-block .container a:hover {
    background-color: var(--black) !important;
    color: var(--yellow) !important;
    text-transform: uppercase !important;
    font-size: var(--text-lg) !important;
}

.a11y-mode #mobile-header-block .container .navbar-toggler {
    display: none;
}

.a11y-mode #desktop-header-block .keyword-label {
    display: inline-block !important;
    color: var(--yellow);
    text-transform: uppercase;
    font-size: var(--text-lg);
}
.a11y-mode #desktop-header-block a {
    color: var(--yellow) !important;
    font-weight: var(--font-semibold);
    text-transform: uppercase;
    font-size: var(--text-lg);
    text-decoration: none;
}
.a11y-mode #desktop-header-block .secondLineAnchors a:hover:not(.highlighted),
.a11y-mode #desktop-header-block .socials a:hover,
.a11y-mode #desktop-header-block .socials button.anchor:hover {
    color: var(--white) !important;
    transition: none !important;
}
.a11y-mode #desktop-header-block .firstLine {
    justify-content: start;
}
.a11y-mode #desktop-header-block .firstLineAnchors > a {
    color: var(--white) !important;
    /* font-weight: var(--font-base); */
    font-size: var(--text-base);
}
.a11y-mode #desktop-header-block .firstLineAnchors > a:hover {
    color: var(--yellow) !important;
    transition: none !important;
}
.a11y-mode #desktop-header-block.container-fluid > .row {
    padding: 15px 3% !important;
    min-height: 75px;
}
.a11y-mode #desktop-header-block .page-cart-link {
    background: var(--yellow);
    border: var(--yellow);
    color: var(--black);
}


/**
 * Cart popup
 */
 .a11y-mode #modalCartBox ~ #cartPopup {
    width: 800px;
    right: -800px;
 }
.a11y-mode #cartPopup {
    border-left: 2px solid var(--yellow);
    background: var(--black) !important;
}
.a11y-mode #cartPopup .close-button {
    position: absolute;
    top: 0rem;
    right: 0rem;
}
.a11y-mode #cartPopup .close-button i {
    font-size: 2rem;
    margin-right: 0;
}
.a11y-mode #cartPopup #modal-cart-buttons {
    background: var(--black);
}
.a11y-mode #cartPopup .empty-cart-content {
    font-style: normal;
    font-weight: 600;
}
.a11y-mode #cartPopup .alert.alert-info {
    border-radius: 0;
    border: 3px solid var(--yellow);
    background: var(--black);
    color: var(--yellow);
    font-size: var(--text-lg);
    text-transform: uppercase;
    font-weight: var(--font-semibold);
    padding: .5rem !important;
}
.a11y-mode #cartPopup table thead {
    background-color: var(--yellow);
    text-transform: uppercase;
    font-size: var(--text-lg);
    color: var(--black);
}
.a11y-mode #cartPopup .cart-product-name a {
    font-size: var(--text-base);
    text-transform: none;
}
.a11y-mode #cartPopup table td {
    place-content: baseline;
}
.a11y-mode #cartPopup .cart-product-unit-price,
.a11y-mode #cartPopup .cart-product-whole-price {
    font-size: var(--text-base);
    font-weight: var(--font-semibold);
    color: var(--yellow);
}
.a11y-mode #cartPopup .cart-item-remove {
    border-radius: 0;
    background: transparent;
    border: 2px solid var(--yellow);
    color: var(--yellow) !important;;
    text-transform: uppercase;
    font-weight: var(--font-semibold);
}
.a11y-mode #cartPopup .order-summary-subtotal {
    padding-top: 1rem;      
    border-top: 2px solid var(--yellow);
}
.a11y-mode #desktop-header-block .cart-summary-block {
    font-size: var(--text-lg);
    color: var(--yellow);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
}
.a11y-mode #cartPopup #modalCartListTotal p:nth-child(2) {
    font-weight: var(--font-semibold);
    color: var(--white);
    text-transform: uppercase;
    font-size: var(--text-base);
}

/**
 * Index Highlighted info
 */
.a11y-mode #mainHTMLBox {
    margin-top: 1rem;
}
.a11y-mode #mainHTMLBox .highlighted-html-box {
    background: transparent;
    border-radius: 0;
    border: 2px solid var(--yellow);
    color: var(--yellow);
    text-transform: uppercase;
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
}
.a11y-mode #mainHTMLBox p {
    color: var(--yellow);
    text-transform: uppercase;
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
}

/**
 * Index Carousel
 */
.a11y-mode .container.banner .carousel-control-prev, 
.a11y-mode .container.banner .carousel-control-next {
    color: var(--yellow) !important;
    opacity: 1;
    font-size: 3rem;
}

.a11y-mode .container.banner .carousel-control-prev:hover, 
.a11y-mode .container.banner .carousel-control-next:hover {
    color: var(--white) !important;
    transition: none !important;
}
.a11y-mode .container.banner .carousel-control-prev i, 
.a11y-mode .container.banner .carousel-control-next i {
    font-size: 3rem;
}

/**
 * Index services section
 */
.a11y-mode .container.services .description{
    color: var(--yellow);
    text-transform: uppercase;
    font-weight: var(--font-semibold);
    font-size: var(--text-lg);
}

/**
 * Index offers section
 */
.a11y-mode .offers.container h2 {
    border: 0;
    text-transform: uppercase;
}

/**
 * Index products carousel
 */
.a11y-mode .container.product-carousel {
    overflow: visible;
}
.a11y-mode .container.product-carousel h2 {
    text-transform: uppercase;
}
.a11y-mode .container.product-carousel .carousel-control-prev,
.a11y-mode .container.product-carousel .carousel-control-next {
    color: var(--yellow);
    opacity: 1;
    font-size: 3rem;
}

/**
 * Product list items
 */
.a11y-mode .product-item {
    cursor: default;
}
.a11y-mode .product-item h3 {
    color: var(--yellow);
    text-transform: uppercase;
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
}
.a11y-mode .search-item:hover {
    margin-left: 0px;
    margin-right: 0px;
}
.a11y-mode .search-item .product-list-heart {
    display: block;
}
.a11y-mode .search-item .product-list-heart {
    transition: none;
    transform: scale(.7);
}
.a11y-mode .product-item .salesprice-list {
    color: var(--white);
    font-size: var(--text-base);
}
.a11y-mode .product-item .price-list {
    color: var(--yellow);
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
}
.a11y-mode .product-list-heart,
.a11y-mode .product-list-bubble {
    background: var(--yellow);
}
.a11y-mode .product-list-heart span,
.a11y-mode .product-list-bubble span {
    color: var(--black);
}
.a11y-mode .search-item:hover {
    position: static;
}
.a11y-mode .search-item:hover img {
    transform: none;
    transition: none;
}
.a11y-mode .search-item:hover .product-list-bubble {
    transform: none;
    transition: none;
    right: 15px;
}
.a11y-mode .search-item:hover .product-fee-pictogram-block {
    transform: none;
    transition: none;
    left: 15px;
}
.a11y-mode .product-item .product-a11y-link {
    color: var(--yellow);
    font-weight: var(--font-semibold);
    text-transform: uppercase;;
}
.a11y-mode .product-item .salesprice-list {
    color: var(--white);
    font-weight: var(--font-semibold);
}
.a11y-mode .product-item .cart-remove.list-inline-item .cart-qty,
.a11y-mode .product-item .cart-add.list-inline-item .cart-qty {
    color: var(--white);
}
.a11y-mode .product-item .cart-remove.list-inline-item .cart-qty:hover,
.a11y-mode .product-item .cart-add.list-inline-item .cart-qty:hover {
    color: var(--yellow);
}
.a11y-mode section.product-carousel i {
    font-size: 3rem;
}

/**
 * Footer
 */
.a11y-mode footer {
    background: var(--black);
}
.a11y-mode footer .footer-menu {
    background: var(--black);
}
.a11y-mode footer .footer-menu a {
    color: var(--yellow);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
    font-size: var(--text-lg);
    transition: none !important;
}
.a11y-mode footer .footer-menu a:hover {
    color: var(--white);
    transition: none !important;
}


/**
 * Other elements
 */
.a11y-mode .carousel.slide:not(#carousel-bigpicture) .carousel-inner .active.col-lg-3.carousel-item + .carousel-item + .carousel-item + .carousel-item + .carousel-item {
    pointer-events: none;
    visibility: hidden;
}
.a11y-mode #mionetto-promo-banner {
    display: block;
    border: 2px solid white;
    background: black;
}
.a11y-mode .mionetto-close-banner {
    color: var(--white);
    font-size: 4rem !important;
    line-height: 2rem;
}



/**
 * Product page
 */
.a11y-mode .page-product.content-product {
    background: var(--black);
}
.a11y-mode .product-details h1:after {
    background: transparent;
}
.a11y-mode .page-product.content-product .product-details-text,
.a11y-mode .page-product.content-product .product-details-text > p,
.a11y-mode .page-product.content-product .product-details-text > p span {
    color: var(--white) !important;
    font-size: var(--text-lg) !important;
}
.a11y-mode .page-product.content-product .product-salesprice-text,
.a11y-mode .page-product.content-product .product-salesprice-title {
    color: var(--yellow) !important;
    font-size: var(--text-xl) !important;
    font-weight: var(--font-semibold);
}
.a11y-mode .page-product.content-product .promotion-price-row {
    background: transparent !important;
    border: 2px solid var(--yellow);
    padding: .25rem .5rem;
    margin-left: 0;
}
.a11y-mode .page-product.content-product .product-favorite-button {
    color: var(--yellow) !important;
    font-weight: var(--font-semibold);
    text-decoration: uppercase;
}
.a11y-mode .page-product.content-product .photo-menu {
    display: none;
}
.a11y-mode .page-product.content-product .ajanlott-termekek h3 {
    color: var(--yellow);
    text-transform: uppercase;
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
}
.a11y-mode .product-item .salesprice-list {
    color: var(--white);
    font-size: var(--text-base);
}
.a11y-mode .page-product.content-product .ajanlott-termekek .price-list {
    color: var(--yellow);
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
}
.a11y-mode .page-product.content-product .ajanlott-termekek .product-fee-pictogram-block {
    transform: none;
    transition: none;
    left: 15px;
}
.a11y-mode .page-product.content-product .ajanlott-termekek .product-a11y-link {
    color: var(--yellow);
    font-weight: var(--font-semibold);
    text-transform: uppercase;;
}
.a11y-mode .page-product.content-product .ajanlott-termekek .salesprice-list {
    color: var(--white);
    font-weight: var(--font-semibold);
}
.a11y-mode .page-product.content-product .ajanlott-termekek .cart-remove.list-inline-item .cart-qty,
.a11y-mode .page-product.content-product .ajanlott-termekek .cart-add.list-inline-item .cart-qty {
    color: var(--white);
}
.a11y-mode .page-product.content-product .ajanlott-termekek .cart-remove.list-inline-item .cart-qty:hover,
.a11y-mode .page-product.content-product .ajanlott-termekek .cart-add.list-inline-item .cart-qty:hover {
    color: var(--yellow);
}


/**
  * Static page
  */
.a11y-mode .page-subpage .content {
    background: var(--black);
}
.a11y-mode .page-subpage h1:after {
    background-color: var(--yellow);
}

/**
 * Login page
 */
.a11y-mode .site-subpage.account-login .content {
    background: var(--black);
}
.a11y-mode .site-subpage.account-login label {
    color: var(--white);
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
}
.a11y-mode .site-subpage.account-login .validated-form.first-focus input:invalid ~ .invalid-feedback {
    display: block;
    background: var(--white);
    padding: .25rem;
    font-size: var(--text-sm);
    font-weight: 600;
    text-transform: uppercase;
}
.a11y-mode .site-subpage.account-login .forgot-password {
    color: var(--white);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
    transition: none !important;
}
.a11y-mode .site-subpage.account-login .forgot-password:hover {
    color: var(--yellow);
    transition: none !important;
}
.a11y-mode #hiddenText1 {
    color: var(--white);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
    font-size: var(--text-lg);
}

/**
 * Profile
 */
.a11y-mode .page-articles .content {
    background: transparent;
    color: var(--white);
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
}
.a11y-mode .page-articles .content a:not(.btn) {
    text-decoration: underline;
    color: var(--white);
}
.a11y-mode .page-articles label {
    color: var(--white);
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
}
.a11y-mode .page-articles .validated-form.first-focus input:invalid ~ .invalid-feedback {
    display: block;
    background: var(--white);
    padding: .25rem;
    font-size: var(--text-sm);
    font-weight: 600;
    text-transform: uppercase;
}
.a11y-mode .page-articles .subpage-menu {
    border-left: 2px solid var(--yellow);
}

/**
 * Account address list
 */
 .a11y-mode .page-articles .address-item {
    border: 2px solid var(--yellow);
 }
 .a11y-mode .page-articles .address-item > div {
    background: transparent;
 }
 .a11y-mode .page-articles .address-functions .text-warning {
    color: var(--white) !important;
    margin-top: 1rem;
 }

/**
 * Account address edit
 */
.a11y-mode .input-group-prepend .input-group-text {
    background: transparent;
    border-color: var(--yellow);
    border-radius: 0;
    border-width: 2px;
    color: var(--yellow);
    font-weight: var(--font-semibold);
    height: 2.5rem;
}


/**
 * Checkout step 1
 */
.a11y-mode .page-articles.checkout-container .alert.alert-info {
    background: transparent;
    border: 2px solid var(--yellow);
    color: var(--yellow);
    border-radius: 0;
}
.a11y-mode .page-articles.checkout-container .cart-product-name a {
    color: var(--yellow) !important;
    text-decoration: none !important;
}
.a11y-mode .page-articles.checkout-container .cart-product-remove button {
    background: transparent;
    border: 2px solid var(--yellow);
    color: var(--yellow) !important;
    border-radius: 0;
    text-transform: uppercase;
    font-weight: var(--font-semibold);
}
.a11y-mode .page-articles.checkout-container .checkout-process li b {
    color: var(--yellow);
}
.a11y-mode .page-articles.checkout-container .checkout-process li.current b {
    text-decoration: underline;
}

/**
 * Checkout step 2
 */
.a11y-mode .page-articles.checkout-container .radio-button-container {
    border: 2px solid var(--yellow);
    background: transparent;
    padding-top: .5rem;
}
.a11y-mode .page-articles.checkout-container .radio-button-container label, 
.a11y-mode .page-articles.checkout-container .radio-button-container .price {
    font-size: var(--text-2xl);
    color: var(--yellow);
}

.a11y-mode .page-articles.checkout-container .extra-costs-div input {
    display: none;
}
.a11y-mode .page-articles.checkout-container .payment-module-container.radio-button-container {
    margin-bottom: 1.5rem;
}

/**
 * List pages
 */
.a11y-mode .productlist-title .highlighted-html-box{
    border: 2px solid var(--yellow);
    background: transparent;
    color: var(--yellow);
    text-transform: uppercase;
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    border-radius: 0;
    margin: 0 15px 30px;
}
.a11y-mode .productlist-title h1 {
    color: var(--yellow);
    border: 0;
    text-transform: uppercase;
    font-size: var(--text-3xl);
    font-weight: var(--font-semibold);
}
.a11y-mode .productlist-filters .price-slider {
    display: none;
}
.a11y-mode .productlist-filters .filter-button {
    border: 2px solid var(--yellow) !important;
    background: transparent !important;
    color: var(--yellow);
    font-size: var(--text-lg);
    border-radius: 0;
    text-transform: uppercase;
    font-weight: var(--font-semibold);
}


/**
 * Contact page
 */
.a11y-mode .site-subpage.contact .content {
    background: var(--black);
}
.a11y-mode .site-subpage.contact .content a {
    color: var(--yellow);
    text-decoration: underline;
}

/**
 * Sitemap
 */
.a11y-mode .page-static.page-sitemap .content {
    background: var(--black);
}

.a11y-mode .page-static.page-sitemap ul li {
    color: var(--white);
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
}
.a11y-mode .page-static.page-sitemap a {
    color: var(--yellow);
}
