/* Sekcja fontów */

.open-sans-regular {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-variation-settings:
        "wdth" 100;
}

.roboto-flex-light {
    font-family: "Roboto Flex", sans-serif;
    font-optical-sizing: auto;
    font-weight: 300;
    font-style: normal;
    font-variation-settings:
        "slnt" 0,
        "wdth" 100,
        "GRAD" 0,
        "XOPQ" 96,
        "XTRA" 468,
        "YOPQ" 79,
        "YTAS" 750,
        "YTDE" -203,
        "YTFI" 738,
        "YTLC" 514,
        "YTUC" 712;
}

.roboto-flex-regular {
    font-family: "Roboto Flex", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-variation-settings:
        "slnt" 0,
        "wdth" 100,
        "GRAD" 0,
        "XOPQ" 96,
        "XTRA" 468,
        "YOPQ" 79,
        "YTAS" 750,
        "YTDE" -203,
        "YTFI" 738,
        "YTLC" 514,
        "YTUC" 712;
}

.roboto-flex-semibold {
    font-family: "Roboto Flex", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-variation-settings:
        "slnt" 0,
        "wdth" 100,
        "GRAD" 0,
        "XOPQ" 96,
        "XTRA" 468,
        "YOPQ" 79,
        "YTAS" 750,
        "YTDE" -203,
        "YTFI" 738,
        "YTLC" 514,
        "YTUC" 712;
}

.roboto-flex-bold {
    font-family: "Roboto Flex", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-variation-settings:
        "slnt" 0,
        "wdth" 100,
        "GRAD" 0,
        "XOPQ" 96,
        "XTRA" 468,
        "YOPQ" 79,
        "YTAS" 750,
        "YTDE" -203,
        "YTFI" 738,
        "YTLC" 514,
        "YTUC" 712;
}

h4 {
    font-weight: normal;
}

/* Koniec fontów */

/* Zaokrąglenie rogów bannerów */
.main_slider__wrapper.swiper.swiper-initialized.swiper-horizontal.swiper-autoheight.swiper-watch-progress.swiper-backface-hidden {
    border-radius: 15px;
}

div.basketedit_rebatecodes_outline {
    display: block;
}

/*Rozmiar tekstu w menu rozwijanym*/
header .navbar-subnav .nav-link {
    font-size: 1.8rem !important;
}

header .navbar-subsubnav .nav-link {
    font-size: 1.5rem !important;
}

/*Koniec sekcji rozwijanego menu*/
.shopping_list_top {
    display: none !important;
}

.account_links {
    display: contents !important;
}

a#backTop {
    border-radius: 12px;
}

#menu_security_policy {
    clear: both;
}

.hotspot .product__icon {
    padding: 12px;
    border-radius: 6px;
}

.article__image {
    object-fit: inherit;
    border-radius: 5px;
}

a.article__image_wrapper {
    max-width: 500px;
    margin: 0 auto;
    /* centrowanie całego wrappera, jeśli ma display: block */
    text-align: center;
    /* centrowanie zawartości, jeśli nie używasz flexboxa */
    background: none !important;
}

a.article__image_wrapper img {
    height: auto;
    max-width: 100%;
    width: auto;
    display: inline-block;
}

.product__icon.d-flex.justify-content-center.align-items-center img,
.article__image {
    transition: transform 0.3s ease;
}

.product__icon.d-flex.justify-content-center.align-items-center:hover img {
    transform: scale(1.025);
}

.newsletter__gfx {
    display: flex !important;
}

.newsletter {
    margin-top: 0;
}

.newsletter__gfx img {
    max-height: 250px !important;
}

.navbar-collapse {
    border-bottom: none !important;
    margin-bottom: 12px;
}

/* w drzewku kategorii zrob wszystko z WIELKIEJ LITERY 
a.nav-link.--l3 {
    text-transform: uppercase;
}
*/

#tws_i_100001,
#tws_s_100000 {
    width: 100% !important;
    background-color: #fffcf5 !important;
    /*visibility: collapse;*/
    padding: 8px;
}

div#tws_i_100000 {
    width: 100% !important;
}

/* Zmiany w wygląd strony */
.product {
    text-align: center;
}

.product__icon {
    background: #fdfdfd !important;
    padding: 4%;
}

.product:hover {
    box-shadow: 0 2px 6px rgb(35, 54, 38);
    border-color: #14622f;
    border-radius: 8px;
    outline: 1px;
}

button.btn,
.btn.--medium.--solid {
    border-radius: 8px;
}

button.btn.--large.--solid.d-block {
    background: #22681f !important;
    border: 0 !important;
}

.custom_banner_js {
    border-radius: 15px;
    overflow: hidden;
    margin-bottom: 35px;
    box-shadow: 6px 6px 12px rgba(0, 0, 0, 0.05) !important;
}

.custom_banner_js img {
    display: block;
    width: 100%;
}

._ae_desc img {
    border-radius: 15px;
    box-shadow: 6px 6px 12px rgba(0, 0, 0, 0.05);
}

._ae_desc div {
    padding: 0 10px;
}

span.headline__name {
    font-size: 36px;
}

section#projector_dictionary {
    margin-top: 55px;
}

/* Usunięto duplikat mapy w strefie kontakt */
div#contact_map {
    display: none;
}

section.search_description.--top.cm,
section.search_description.--bottom.cm,
.search_categoriesdescription_next.cm.expanded {
    font-size: large !important;
}

@media (max-width: 975px) {
    span.account_links__text.--logged-out {
        display: none;
    }

    #backTop {
        left: 10px ! important;
    }

    .user-icon {
        width: 32px !important;
    }
}

@media (max-width: 978px) {

    .topBasket__sub,
    .user-menu-link {
        background: none !important;
    }
}

/* Tytuł sekcji */
#main_opinions h2 {
    color: black;
    font-size: var(--big-label-font-size);
}

/* Kontener całej opinii */
.opinion__item {
    display: flex;
    flex-direction: column;
    padding: 15px;
    background-color: #f8fff8;
    border-radius: 15px;
    box-shadow: 3px 3px 12px rgba(87, 87, 87, 0.02) !important;
    outline: 1px dashed #cccc66;
    transition: transform 0.3s ease;
    outline-offset: -10px;
}

.article__item {
    transition: transform 0.3s ease;
}

.article__item:hover {
    transform: scale(1.01);
}

.opinion__item:hover {
    transform: scale(1.05);
}


/* Kontener zawartości opinii */
.opinion__content {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    height: 100%;
    padding: 2px;
}

/* Gwiazdki */
.opinion__stars {
    font-size: calc(var(--big-label-font-size) * 1.2);
    color: gold;
    font-weight: bold;
    margin-bottom: 10px;
    min-height: 1.4em;
    padding-left: 5px;
    font-size: 3vh;
}

/* Tekst opinii */
.opinion__text p {
    margin: 0;
    font-family: "Roboto Flex", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-variation-settings:
        "slnt" 0,
        "wdth" 100,
        "GRAD" 0,
        "XOPQ" 96,
        "XTRA" 468,
        "YOPQ" 79,
        "YTAS" 750,
        "YTDE" -203,
        "YTFI" 738,
        "YTLC" 514,
        "YTUC" 712;

}

/* Autor */
.opinion__author {
    margin-top: auto;
    /* przesuwa autora na dół */
    text-align: right;
    font-style: italic;
    padding-top: 10px;
    color: #716060;
    padding-right: 10px;
    padding-bottom: 6px;
}

.opinion__text {
    text-align: center;
    height: 100%;
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-wrap: nowrap;
    padding-left: 2px;
    padding-right: 2px;
    font-size: 2.5vh;
    font-weight: bold;
}

.smile-logo {
    margin-right: 20px;
}

table {
    border-color: #a9a9a924;
    border-width: 0.1px;
}

/* Usunięcie cienia w okienku podglądu projektu 
#design_preview_window {
    box-shadow: none !important;
}
*/
header .nav-link {
    padding: 5px 5px !important;
    text-shadow: -1px 1px 2px #c7c7c72d;
}

/* Poprawa sekcji specyfikacja */
.dictionary__name.col-6.d-flex.flex-column.align-items-end {
    max-width: 40%;
    text-align: left;
    font-weight: 600;
    font-size: 15px;
    color: #2f4f2f;
    /* ciemna zieleń dla akcentu */
    letter-spacing: 0.3px;
    margin-right: 3px;
    display: inline !important;
}


.dictionary__param.row.mb-3 {
    margin: 0;
    padding: 12px 16px;
    font-size: 15px;
    border-bottom: 1px solid #e6e6e6;
    /* subtelny separator */
    transition: background-color 0.2s ease;
}

.dictionary__param.row.mb-3:nth-of-type(2n) {
    background-color: #f9faf9;
    /* bardzo jasna zieleń jako tło */
}

.dictionary__param.row.mb-3:hover {
    background-color: #f0f7f0;
    /* lekki efekt hover w zieleni */
}

/*Styl nagłówka Specyfikacja*/
.specs-header {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    font-size: 26px;
    font-weight: 600;
    margin-left: 2%;
    margin-bottom: 45px;
}

svg.specs-header-icon {
    margin: 6px;
    margin-right: 12px;
    color: #848d95;
    width: 32px;
    height: auto;
}

/* Stylizacja elementów menu nawigacyjnego */
.nav-link-wrapper {
    display: inline-block;
    background: #ffffff;
    margin: 6px;
    padding: 3px 12px;
    border-radius: 12px;
    border: 1px solid #eaeaea;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    font-family: "Inter", sans-serif;
    font-size: 15px;
    font-weight: 550;
    color: #333;
    cursor: pointer;
    transition: all 0.25s ease;
    text-decoration: none;
}

.nav-link-wrapper:hover {
    background: #fafafa;
    border-color: #d1dbd3;
    transform: translateY(-2px);
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.1);
}

.nav-link-wrapper:active {
    transform: translateY(0);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}

@media (min-width: 768px) {

    .dictionary__group.--first.--no-group {
        max-width: 70%;
        margin: auto;
    }

    #main_blog,
    #main_news,
    .hotspotzed,
    .hotspot,
    #menu_newsletter,
    #content.col-xl-10.col-md-9.col-12,
    aside.col-3.col-xl-2,
    #main_tree5,
    #main_cms2.section,
    #footer_links,
    .section.longdescription.cm,
    #projector_dictionary.section.dictionary,
    #projector_warranty,
    .opinions_add_form.col-12,
    #product_questions_list,
    body.is-product-page main#content.col-12,
    .contact_site,
    #Text,
    #signin-form_box_left,
    #signin-form_box_right,
    .order_open.mb-4,
    .rma_open.mb-4,
    .returns_open.mb-4,
    #main_opinions,
    #menu_banners3,
    .contact_cms.cm,
    #news_item,
    #news_list,
    #newsletter_form {
        background-color: #ffffff !important;
        padding: 3% !important;
        border-radius: 12px !important;
        margin-bottom: 1vh;
        box-shadow: 6px 6px 12px rgba(0, 0, 0, 0.05) !important;
    }

    #main_cms2 h1 {
        font-size: 3em;
    }

    #main_cms2 p span {
        font-size: 1.25em !important;
    }

    /*
    #main_cms2 h2 span {
        font-size: 1.5em !important;
    }
*/
    ._ae_desc h2 {
        font-size: 2.25em !important;
    }

    h1.big_label {
        font-size: 3em;
    }

    /* Okienko z kategoriami*/
    header .navbar-subnav.--cols1 {
        width: calc(25% - 2rem) !important;
    }

    .search_name {
        display: flex !important;
        align-items: flex-end;
        margin: 0 0 1.5rem;
        flex-wrap: nowrap;
        flex-direction: row;
        justify-content: space-between;
        align-content: stretch;
    }

    section.search_name h1 {
        max-width: 85%;
    }

    h1.text_menu__label.headline {
        font-size: -webkit-xxx-large;
        display: flex;
        align-content: flex-end;
        justify-content: space-around;
    }

    #menu_search.--focus .menu_search__block {
        width: 100% !important;
        box-shadow: 0px 0px 10px 0px #124a8f5c !important;
    }

    #container,
    footer {
        margin-bottom: 12px;
        max-width: 1665px !important;
    }

    section#projector_longdescription {
        /* z-index: 1; */
        margin-top: 50px !important;
    }

    .headline__section {
        display: flex;
        padding-bottom: 5px;
    }

    i.fa-solid.fa-arrow-right {
        margin: 5px;
    }

    #signin-form {
        flex-wrap: nowrap !important;
        gap: 10px;
    }

    .basket__payment_element {
        align-items: stretch !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-content: stretch !important;
    }

    .basket__payment_img_container img {
        max-height: 4rem;
        box-sizing: content-box;
        background: #fff;
        height: 4rem;
    }

    .topBasket__sub,
    .user-menu-link {
        background-color: rgb(221 248 255);
        border-radius: 8px;
    }

    a.user-menu-link {
        padding-left: 8px;
        padding-right: 8px;
    }

    .user-menu-link:hover {
        color: #00aa00 !important;
        /* Zielony tekst */
    }

    .user-menu-link:hover img {
        filter: brightness(1) saturate(100%) sepia(100%) hue-rotate(68deg) brightness(1.2);
        /* Zielony filtr */
    }

    .account_links__item {
        margin: 0;
    }

    .user-icon {
        padding-bottom: 10px;
        padding-top: 10px;
    }

    .cop_summary,
    .cop_summary__block.--content {
        background-color: #fffae1 !important;
        padding: 3% !important;
        border-radius: 12px !important;
        margin-bottom: 1vh;
    }

    button.cop_buttons__button.btn.--outline.--large.--next {
        background: #ffd876 !important;
        color: black;
        border-color: #9f6108 !important;
        transition: background 0.6s ease, color 0.6s ease, border-color 0.6s ease;
    }

    button.cop_buttons__button.btn.--outline.--large.--next:hover {
        background: #ffb347 !important;
    }

    .col-3 {
        margin-right: 8px;
    }

    .opinion__block {
        display: flex;
        justify-content: space-evenly;
    }

    article.opinion__item {
        width: 30%;
    }

    body {
        background: #f7f7f7 !important;
        padding: 0 !important;
    }

    #main_banner1 .main_slider {
        padding-top: 8px !important;
    }

    .photos__photo {
        height: revert-layer !important;
    }

    .commercial_banner {
        padding-left: calc((100vw - 1635px) / 2);
        padding-right: calc((100vw - 1635px) / 2);
        padding-top: 25px;
        max-width:
            /*1980px*/
            100% !important;
    }

    header {
        grid-template-columns: max-content minmax(0, 1fr) auto auto;
        margin: 0 auto;
        margin-bottom: 12px;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
    }

    .navbar-collapse {
        text-align: center;
    }

    .navbar-nav {
        display: inline-block;
        float: none;
    }

    header .navbar-nav {
        display: flex;
        flex-wrap: wrap;
        list-style: none;
        font-size: 1.6rem;
        align-items: center;
        flex-direction: row;
        align-content: stretch;
        justify-content: center;
    }

    #layout.row.clearfix {
        flex-wrap: nowrap;
        margin: auto !important;
    }

    .col-12 {
        flex: auto;
    }

    #search .product__compare a {
        text-decoration: none !important;
        /* usuwa podkreślenie */
        border: none !important;
        /* usuwa ramki */
        outline: none !important;
        /* usuwa obramowanie focus */
        box-shadow: none !important;
        /* usuwa cienienie */
        padding: 0 !important;
        /* reset paddingu */
        margin: 0 !important;
        /* reset marginesów */
        display: inline !important;
        /* wymusza standardowy układ linku */
    }

    #photos_slider.nav-exists {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
    }

    .product.hotspot__product.col-12.px-0.py-1.mb-1.mb-md-0.d-flex {
        margin-bottom: 5px !important;
    }

    #main_tree5 ul {
        grid-template-columns: repeat(3, 1fr);
    }

    .hotspot:not(.--list):not(.--added) .products__wrapper:not(.swiper) .products,
    .hotspot:not(.--list):not(.--added) .swiper:not(.swiper-initialized) .products {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }
}

@media (min-width: 979px) {
    #search .product__compare.--has-child:after {
        background: none !important;
    }

    #logo img {
        max-height: 55px;
        height: auto;
    }
}

/*Sekcja dla urządzeń mobilnych*/
@media (max-width: 500px) {
    .main_slider__wrapper.swiper.swiper-initialized.swiper-horizontal.swiper-autoheight.swiper-watch-progress.swiper-backface-hidden {
        border-radius: 0 0 6px 6px;
    }

    #info-banners {
        max-width: 98%;
    }

    .dictionary__group.--first.--no-group {
        max-width: 98%;
        margin: auto;
    }

    span.nav-link-wrapper {
        width: 100%;
    }

    #photos_slider {
        position: relative !important;
    }

}