/* Public-site corrections. Keep this after the original theme styles. */
body.public-site {
    --header-height: 88px;
    min-width: 0;
    min-height: 100vh;
    min-height: 100svh;
    height: auto;
    width: 100%;
    padding-top: var(--header-height);
    gap: 0;
}

body.public-site main {
    width: 100%;
    min-width: 0;
    margin-top: 0;
    padding-left: 0;
    padding-right: 0;
}

body.public-site [hidden] { display: none !important; }
body.public-site img, body.public-site video, body.public-site iframe { max-width: 100%; }
body.public-site img { vertical-align: middle; }
body.public-site :where(h1, h2, h3, h4, p, a, span) { overflow-wrap: anywhere; }
body.public-site :where(button, a, input, select, textarea) { touch-action: manipulation; }
body.public-site :where(a, button, input, select, textarea):focus-visible {
    outline: 3px solid #ff9b79;
    outline-offset: 4px;
}
body.public-site :where(input, textarea)[aria-invalid="true"] { border-color: #bf3131; }
body.public-site :where(input, textarea, select) { max-width: 100%; }
body.public-site :where(button, a, input, select, textarea) { scroll-margin-top: calc(var(--header-height) + 20px); }
body.public-site .container_ak { width: 100% !important; }
body.public-site .container_ak_sm {
    width: min(100%, 1100px) !important;
    margin-inline: auto;
    padding-inline: 20px;
}
/* Rich text stored by the editor can contain fixed inline image dimensions. */
body.public-site :where(.container_ak_sm, .post_content) :where(img, video) { max-width: 100% !important; height: auto !important; }
body.public-site :where(.container_ak_sm, .post_content) iframe { max-width: 100%; }
body.public-site :where(.container_ak_sm, .post_content) table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
}
body.public-site :where(.container_ak_sm, .post_content) pre {
    max-width: 100%;
    overflow-x: auto;
    white-space: pre-wrap;
}

/* The fixed header occupies space without moving the page when its menu opens. */
body.public-site .header { padding-inline: 0; }
body.public-site .header_wrapper {
    margin-inline: auto;
    transform: none;
    gap: 24px;
    min-height: 88px;
}
body.public-site .header_logo { flex: 0 0 120px; width: 120px; }
body.public-site .header_navigation { min-width: 0; width: auto; }
body.public-site .header_navigation_list { padding-left: 0; gap: 22px; }
body.public-site .header_navigation_list_item_link {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
}
body.public-site .header_navigation_list_item_lang { min-height: 44px; padding: 8px 4px; }
body.public-site .header_navigation_list_item_lang option { color: #2a3a7e; background: #fff; }
body.public-site .header_white.header .header_wrapper .header_navigation_list_item_link { color: #6b7699 !important; }
body.public-site .header_white .header_navigation_list_item_lang { color: #6b7699; }
body.public-site .header_white .mobile_nav .header_navigation_list_item_lang { color: #9fb7ef; }
body.public-site .header_mobile { display: none; }
body.public-site .burger_btn { min-width: 44px; min-height: 44px; }
body.public-site .skip-link {
    position: fixed;
    top: 12px;
    left: 12px;
    z-index: 2000;
    padding: 12px 18px;
    color: #2a3a7e;
    background: #fff;
    border-radius: 8px;
    font-weight: 600;
}

/* Flexible hero and service content must fit translated text at every width. */
body.public-site .consulting_wrapper { width: 100%; }
body.public-site .consulting {
    height: auto;
    min-height: clamp(580px, calc(100svh - var(--header-height)), 920px);
    padding-top: 56px;
    padding-bottom: 56px;
    align-items: center;
}
body.public-site .consulting > .slider_wrapper { width: 48%; min-width: 0; }
body.public-site .consulting_slider_item { filter: none; padding: clamp(24px, 3vw, 40px); }
body.public-site :where(.consulting_slider_item, .service_item) > h1 { font-size: clamp(26px, 3vw, 40px); }
body.public-site :where(.consulting_slider_item, .service_item) > p { margin: 12px 0 0; line-height: 1.65; }
body.public-site .slider_left_btn { left: -18px; }
body.public-site .slider_right_btn { right: -18px; }
body.public-site .service { align-items: center; gap: 32px; }
body.public-site .service_wrapper { width: calc(50% - 16px); min-width: 0; }
body.public-site .service > img { width: calc(50% - 16px); height: auto; object-fit: contain; }
body.public-site .service_item { filter: none; padding: clamp(24px, 3vw, 40px); }
body.public-site .service_item_decor {
    width: fit-content;
    max-width: 100%;
    align-self: flex-start;
}

/* Current-page breadcrumbs use spans, with the same typography as links. */
body.public-site .bread_wrapper_items {
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px 20px;
}
body.public-site .bread_wrapper_items > :is(a, span) {
    min-width: 0;
    max-width: 100%;
    font-size: clamp(25px, 3.125vw, 40px);
    font-weight: bold;
    color: #a9b4d1;
    text-decoration: underline;
}
body.public-site .bread_wrapper_items > .active {
    background: linear-gradient(91.7deg, #ffac6a 8.45%, #ff727e 98.24%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Search stays visible and usable on keyboard and touch. */
body.public-site :where(.blog_content_main, .shop_content_main, .blog_content_leftbar, .shop_content_leftbar) { min-width: 0; }
body.public-site .blog_content_main_search {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    height: auto;
    min-height: 50px;
    margin: 0;
}
body.public-site .blog_content_main_search > input[type="search"] {
    display: block;
    flex: 1 1 120px;
    min-width: 0;
    width: auto;
    min-height: 48px;
    padding: 10px 12px;
    color: #3b4259;
    background: #f3f6ff;
    border: 1px solid #a9b4d1;
    border-radius: 10px;
    font-size: 16px;
}
body.public-site .blog_content_main_search > button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex: 0 0 auto;
    min-height: 48px;
    min-width: 48px;
    padding: 10px;
}
body.public-site .blog_content_main_search .filter_btn {
    color: #6b7699;
    -webkit-text-fill-color: currentColor;
    background: #eef3ff;
    border-radius: 10px;
}
body.public-site .filter_wrapper { gap: 12px; margin-bottom: 24px; }
body.public-site .filter_wrapper_title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    min-height: 44px;
    text-align: left;
    white-space: normal;
}
body.public-site .filter_wrapper :where(label, .list-group-item > a) {
    display: block;
    min-height: 32px;
    cursor: pointer;
}
body.public-site .offcanvas { max-width: 100%; }
body.public-site .offcanvas-body { overscroll-behavior: contain; }
body.public-site .pagination { flex-wrap: wrap; gap: 4px; padding: 0; }

/* Preserve the cards while preventing text and images escaping their edges. */
body.public-site :where(.shop_cat_wrapper_list_item, .blog_cat_wrapper_list_item, .product_list_item) {
    display: flex;
    min-width: 0;
    text-decoration: none;
    overflow: hidden;
    transition-property: color, box-shadow;
    transition-duration: 180ms;
    transition-timing-function: ease;
}
body.public-site :where(.shop_cat_wrapper_list_item, .blog_cat_wrapper_list_item) > img { object-fit: cover; }
body.public-site :where(.shop_cat_wrapper_list_item_title, .blog_cat_wrapper_list_item_title) { line-height: 1.25; }
body.public-site .product_list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
body.public-site .product_list_item { position: relative; width: 100%; min-height: 350px; height: auto; }
body.public-site .product_list_item > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    object-fit: cover;
    object-position: center;
}
body.public-site .product_list_item_info { width: 100%; min-height: 308px; gap: 28px; }
body.public-site .product_list_item_info_title { font-size: clamp(20px, 2.5vw, 28px); line-height: 1.2; }
body.public-site :where(.product_list_item_info_decor_cat, .shop_cat_wrapper_list_item_cat, .blog_cat_wrapper_list_item_cat) {
    display: inline-block;
    max-width: 100%;
}
body.public-site .product_list_item:hover .product_list_item_info_decor_cat_text {
    display: inline;
}
body.public-site .product_list_item:hover .product_list_item_info_decor_cat_more {
    display: none !important;
}
body.public-site :where(.shop_cat_wrapper_list_item, .blog_cat_wrapper_list_item, .product_list_item):focus-visible {
    outline-offset: -4px;
    box-shadow: 0 0 0 3px #ff9b79;
}

/* Article cards grow with their content; their image keeps its proportions. */
body.public-site .post_list_item { height: auto; min-height: 210px; overflow: hidden; }
body.public-site .post_list_item_img { flex: 0 0 32%; width: 32%; border-radius: 0; }
body.public-site .post_list_item_img > img { width: 100%; height: 100%; min-height: 210px; object-fit: cover; }
body.public-site .post_list_item_body { flex: 1 1 0; width: auto; min-width: 0; height: auto; padding: 20px; }
body.public-site .post_list_item_top_side { display: flex; flex-wrap: wrap; gap: 8px; }
body.public-site .post_list_item_top_side_tags { width: auto; flex: 1 1 120px; flex-wrap: wrap; }
body.public-site .post_list_item_top_side > span { width: auto; }
body.public-site .post_list_item_mid_side_title { margin-block: 12px; line-height: 1.4; }
body.public-site .post_list_item_mid_side_desc { line-height: 1.5; }
body.public-site .post_list_item_bot_side { margin-top: auto; padding-top: 8px; }
body.public-site .rated_blog { width: 100%; min-width: 0; padding-inline: 0; }
body.public-site .rated_blog_title { gap: 16px; align-items: center; flex-wrap: wrap; }
body.public-site .rated_blog_title > span { font-size: clamp(26px, 4vw, 38px); }
body.public-site .rated_blog_title p { margin: 0; }
body.public-site .rated_blog_list { min-width: 0; padding-inline: 12px; }
body.public-site .owl-carousel:not(.owl-loaded) { display: flex; overflow-x: auto; gap: 20px; scroll-snap-type: x proximity; }
body.public-site .owl-carousel:not(.owl-loaded) > * { flex: 0 0 min(100%, 480px); scroll-snap-align: start; }
body.public-site .consulting_slider:not(.owl-loaded) > * { flex-basis: 100%; }
body.public-site :where(.shop_category_slider, .blog_category_slider):not(.owl-loaded) > * { flex-basis: 70%; }

body.public-site .about_img_wrapper { height: clamp(240px, 35vw, 500px); }
body.public-site .about_img_wrapper > img { height: 100%; object-fit: cover; }
body.public-site .post_header { height: auto; min-height: clamp(360px, 48vw, 600px); }
body.public-site .post_img_wrapper { position: absolute; inset: 0; }
body.public-site .post_img_wrapper > img { width: 100%; height: 100%; object-fit: cover; }
body.public-site .post_header_info { position: relative; left: auto; bottom: auto; transform: none; padding-top: 140px; padding-bottom: 40px; margin-top: auto; }
body.public-site .post_header_info > h2 { width: 100%; font-size: clamp(26px, 4vw, 44px); line-height: 1.25; }
body.public-site .post_header_info_details { gap: 16px; flex-wrap: wrap; }
body.public-site :where(.post_header_info_details_tags, .post_header_info_details_opt) { gap: 16px; flex-wrap: wrap; }
body.public-site .partners_wrapper_item { gap: 32px; }
body.public-site .partners_wrapper_item_info { min-width: 0; flex: 1 1 0; }
body.public-site .partners_wrapper_item > img { height: auto; object-fit: contain; }
body.public-site .partners_wrapper_item_info > span { font-size: clamp(24px, 3vw, 30px); }

/* Product details and the native gallery share the same touch targets. */
body.public-site .bread_product { margin-top: 32px; margin-bottom: 32px; }
body.public-site .bread_product_list > span { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
body.public-site .prod_title_wrapper > h2 { font-size: clamp(28px, 4vw, 50px); }
body.public-site .product_wrapper_details { flex: 1 1 60%; min-width: 0; }
body.public-site .product_wrapper_img { flex: 1 1 40%; min-width: 0; gap: 20px; }
body.public-site .product_wrapper_img > [data-gallery-open] { display: block; width: 100%; }
body.public-site .product_wrapper_img > img,
body.public-site .product_wrapper_img > [data-gallery-open] > img { width: 100%; height: auto; max-height: 650px; object-fit: contain; }
body.public-site .collapse_button { width: 100%; min-height: 44px; text-align: left; gap: 16px; }
body.public-site .collapse_button > h4,
body.public-site .collapse_button_title { margin: 0; line-height: 1.35; font-size: 24px; font-weight: 500; }
body.public-site .collapse_button > svg,
body.public-site .collapse_button > span:not(.collapse_button_title) { flex: 0 0 auto; }
body.public-site .collapse_button_title { min-width: 0; color: #7987ac; }
body.public-site .product_wrapper_details > .collapsable:hover.hoverable .collapse_button_title { color: #fff; }
body.public-site .product_wrapper_details > .collapsable { transition: box-shadow 180ms ease; }
body.public-site .product_wrapper_details_general_stats { flex-wrap: wrap; gap: 12px 24px; }
body.public-site .product_wrapper_compound_item { gap: 16px; }
body.public-site .product_wrapper_compound_item > span { min-width: 0; }
body.public-site .gallery_btn { min-height: 48px; font-size: clamp(17px, 2vw, 25px); padding: 16px 24px; gap: 12px; }
body.public-site.gallery-open { overflow: hidden; }
body.public-site .product-gallery {
    color: #eaf0ff;
    background: #23366d;
    border: 1px solid #9fb7ef;
    border-radius: 20px;
    width: min(1100px, calc(100% - 32px));
    max-width: calc(100% - 32px);
    max-height: calc(100dvh - 32px);
    padding: 64px 20px 20px;
    margin: auto;
    overflow: auto;
}
body.public-site .product-gallery::backdrop { background: rgb(12 18 41 / 85%); }
body.public-site .product-gallery__close { position: absolute; top: 12px; right: 12px; }
body.public-site .product-gallery button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border: 1px solid #9fb7ef;
    border-radius: 50%;
    color: #eaf0ff;
    background: #2a3a7e;
}
body.public-site .product-gallery__stage { display: flex; align-items: center; justify-content: center; gap: 16px; min-width: 0; }
body.public-site .product-gallery__stage img { flex: 1 1 auto; width: 0; min-width: 0; height: min(65dvh, 700px); object-fit: contain; touch-action: pan-y; }
body.public-site .product-gallery [data-gallery-caption] { text-align: center; margin: 20px 0 0; }

/* Contact and footer content must not rely on fixed heights or hidden columns. */
body.public-site .contact_heading {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin: 40px 0;
    color: #fff;
}
body.public-site .contact_wrapper { display: flex; gap: 32px; align-items: flex-start; }
body.public-site :where(.contact_form, .contact_map) { flex: 1 1 0; min-width: 0; width: auto; margin-bottom: 0; }
body.public-site .contact_form { color: #9fb7ef; }
body.public-site .contact_form .form-control { padding: 12px 16px; display: block; }
body.public-site .contact_form textarea { min-height: 160px; resize: vertical; }
body.public-site .contact_map > div { overflow-y: auto; overscroll-behavior: contain; }
body.public-site .contact_map > div > a { display: block; flex: 0 0 auto; overflow: hidden; border-radius: 10px; }
body.public-site .contact_map > div > a > span { padding: 12px 16px; }
body.public-site .contact_map > div > a > img { height: 200px; object-fit: cover; }
body.public-site .contact-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
body.public-site :where(.form-status, [data-contact-status]) { min-height: 1.5em; margin-top: 16px; }
body.public-site :where(.form-status, [data-contact-status])[data-state="error"] { color: #c22d37; }
body.public-site.body_gradient :where(.form-status, [data-contact-status])[data-state="error"] { color: #ffb5aa; }
body.public-site .footer { width: 100%; padding-inline: 0; }
body.public-site .footer_wrapper {
    display: grid;
    grid-template-columns: 1fr 1.25fr 1fr 1.25fr auto;
    gap: 28px;
    width: min(100%, 1300px);
    height: auto;
    margin-inline: auto;
    padding: 56px 24px 20px;
}
body.public-site .footer_col {
    display: flex;
    width: auto;
    min-width: 0;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 20px;
}
body.public-site .footer_col.comp, body.public-site .footer_col.add { display: flex; }
body.public-site .footer_col_address { font-size: 18px; }
body.public-site .footer_col_logo { max-width: 150px; height: auto; }
body.public-site .footer_col_list { width: 100%; }
body.public-site .footer_col_list a { min-height: 32px; }
body.public-site .footer_wrapper a { color: inherit; }
body.public-site .footer_col_list > .footer_col_list_title { font-weight: 700; color: inherit; }
body.public-site .footer_wrapper_white .footer_col_list > li:not(.footer_col_list_title) { color: #bdcbea; }
body.public-site .footer_wrapper_gradient .footer_col_list > li:not(.footer_col_list_title) { color: #6b7699; }
body.public-site .footer_col_social a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; min-width: 44px; }
body.public-site .footer_rights { width: 100%; text-align: center; }

/* Keep AOS horizontal entrances inside the viewport and readable on CDN failure. */
body.public-site [data-aos]:not(.aos-init) { opacity: 1; transform: none; }
body.public-site :where([data-aos="fade-right"], [data-aos="fade-left"]) { transform: translate3d(0, 24px, 0); }
body.public-site :where([data-aos="fade-right"], [data-aos="fade-left"]).aos-animate { transform: none; }

@media (max-width: 1199px) {
    body.public-site .header_wrapper { display: none !important; }
    body.public-site .header_mobile { display: flex; width: 100% !important; padding: 16px 20px; }
    body.public-site .header_mobile_wrapper { align-items: center; gap: 20px; }
    body.public-site .header_mobile_wrapper > .header_logo { flex: 0 0 110px; width: 110px; }
    body.public-site .header_mobile .header_navigation { width: 100%; }
    body.public-site .header_mobile .mobile_nav {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        margin: 0;
        padding: 16px 20px 24px;
        gap: 8px;
        max-height: calc(100dvh - var(--header-height));
        overflow-y: auto;
        overscroll-behavior: contain;
        background: #2a3a7e;
        box-shadow: 0 12px 20px rgb(15 25 60 / 18%);
    }
    body.public-site .header_mobile .mobile_nav.is-open,
    body.public-site .header_mobile .mobile_nav.show_menu { display: flex; }
    body.public-site .header_mobile .mobile_nav > li { width: 100%; text-align: center; }
    body.public-site .header_mobile .mobile_nav a { width: 100%; justify-content: center; }
    body.public-site.menu-open { overflow: hidden; }
    body.public-site .consulting { justify-content: center; min-height: 620px; }
    body.public-site .consulting > span { display: none; }
    body.public-site .consulting > .slider_wrapper { width: 75%; }
    body.public-site .footer_wrapper { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    body.public-site .footer_col.social { grid-column: 3; }
    body.public-site .product_wrapper { flex-direction: column-reverse; }
    body.public-site :where(.product_wrapper_img, .product_wrapper_details) { flex: 0 1 auto; width: 100%; }
    body.public-site .product_wrapper_img { align-items: center; }
    body.public-site .product_wrapper_img > img,
    body.public-site .product_wrapper_img > [data-gallery-open] > img { max-height: 500px; }
}

@media (min-width: 1200px) {
    body.public-site .header_wrapper { display: flex; }
    body.public-site .header_mobile { display: none; }
    body.public-site .shop_content_wrapper { flex-direction: row-reverse; align-items: flex-start; }
    body.public-site .shop_content_main { flex: 1 1 0; width: auto; }
    body.public-site .shop_content_leftbar { display: flex; flex: 0 0 240px; width: 240px; margin-top: 0; }
    body.public-site .blog_content_main_search > .filter_btn { display: none; }
}

@media (max-width: 991px) {
    body.public-site .service.even, body.public-site .service.odd { flex-direction: column-reverse !important; }
    body.public-site .service_wrapper { width: 100%; }
    body.public-site .service > img { width: min(100%, 560px); }
    body.public-site .contact_wrapper { flex-direction: column; }
    body.public-site :where(.contact_form, .contact_map) { flex: 0 1 auto; width: 100%; }
    body.public-site .blog_content_leftbar { margin-top: 20px; }
    body.public-site .blog_content_leftbar > a { width: auto; flex: 1 1 140px; }
    body.public-site .partners_wrapper_item, body.public-site .partners_wrapper_item:nth-child(2n) { flex-direction: column-reverse; }
    body.public-site .partners_wrapper_item_info { width: 100%; }
    body.public-site .partners_wrapper_item > img { width: min(60%, 220px); }
}

@media (max-width: 767px) {
    body.public-site :where(.container_ak_sm, .post_content) img { float: none !important; display: block; margin-inline: auto !important; }
    body.public-site .consulting { min-height: 560px; padding-block: 40px; }
    body.public-site .consulting > .slider_wrapper { width: calc(100% - 20px); padding-bottom: 64px; }
    body.public-site .consulting_slider_item { padding: 24px; }
    body.public-site .slider_left_btn, body.public-site .slider_right_btn { width: 44px; height: 44px; }
    body.public-site .consulting .slider_left_btn { top: auto; bottom: 0; left: calc(50% - 50px); }
    body.public-site .consulting .slider_right_btn { top: auto; bottom: 0; right: calc(50% - 50px); }
    body.public-site .footer_wrapper { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 24px; }
    body.public-site .footer_col.social { grid-column: auto; }
    body.public-site .post_list_item { flex-direction: column; }
    body.public-site .post_list_item_img { flex: 0 0 auto; width: 100%; aspect-ratio: 16 / 9; }
    body.public-site .post_list_item_img > img { min-height: 0; height: 100%; object-fit: cover; }
    body.public-site .post_list_item_body { flex: 1 1 auto; width: 100%; }
    body.public-site .product-gallery { width: calc(100% - 16px); max-width: calc(100% - 16px); padding-inline: 10px; }
    body.public-site .product-gallery__stage { gap: 6px; }
    body.public-site .product-gallery__stage img { height: 60dvh; }
}

@media (max-width: 575px) {
    body.public-site .container { padding-inline: 20px; }
    body.public-site .consulting { min-height: 0; padding-block: 40px; }
    body.public-site .consulting > .slider_wrapper { width: 100%; }
    body.public-site .consulting_slider_item { padding: 28px; }
    body.public-site .product_list { grid-template-columns: minmax(0, 1fr); }
    body.public-site .product_list_item_info_title { font-size: 24px; }
    body.public-site .product_wrapper_details > .collapsable { padding: 20px; }
    body.public-site .collapse_button_title { font-size: 18px; }
    body.public-site .product_wrapper_details_general_stats { flex-direction: column; }
    body.public-site .product_wrapper_compound_item { flex-wrap: wrap; }
    body.public-site .product_wrapper_compound_item > span { flex: 1 1 100px; }
    body.public-site .footer_wrapper { grid-template-columns: minmax(0, 1fr); padding: 40px 20px 20px; }
    body.public-site .footer_col { align-items: center; text-align: center; }
    body.public-site .footer_col_contact { align-self: center; }
    body.public-site .footer_col.social > div:empty { display: none; }
    body.public-site .post_header_info { padding-top: 100px; padding-bottom: 24px; }
    body.public-site .post_header_info_details { font-size: 14px; }
    body.public-site .post_header_info_details_opt { justify-content: space-between; width: 100%; }
    body.public-site .about_title { text-align: center; padding-inline: 20px; }
}

@media (hover: none) {
    body.public-site .product_list_item:hover .product_list_item_info_decor_cat_text { display: inline; }
    body.public-site .product_list_item:hover .product_list_item_info_decor_cat_more { display: none !important; }
}

@media (prefers-reduced-motion: reduce) {
    body.public-site *, body.public-site *::before, body.public-site *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
    body.public-site [data-aos] { opacity: 1 !important; transform: none !important; transition: none !important; }
}
