@charset "utf-8";
/* CSS Document */

@font-face {
    font-family: 'icomoon';
    src: url('fonts/icomoon.eot?z2bgob');
    src: url('fonts/icomoon.eot?z2bgob#iefix') format('embedded-opentype'),
    url('fonts/icomoon.ttf?z2bgob') format('truetype'),
    url('fonts/icomoon.woff?z2bgob') format('woff'),
    url('fonts/icomoon.svg?z2bgob#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

[class^="icon-"], [class*=" icon-"],
#breadcrumbs li:after,
#product-slider ul li .product-slider-item a:after,
.header-banner .contact-form-wrapper .button-wrapper:after,
#leave-contact .contact-form .button-wrapper:after,
.inline-leave-contact .leave-form .button-wrapper:after,
#contact-page .contact-form-container .contact-form .button-wrapper:after,
#main-menu > div > ul > li.menu-item-has-children > a:after,
#product-menu div ul li a:before, #calculator-form-container .form-wrapper .buttons:after,
.faq-element .faq-header .arrow:before, .faq-element .faq-header .arrow:after {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-plus:before {
    content: "\e925";
}

.icon-remove:before {
    content: "\e926";
}

.icon-check-v2:before {
    content: "\e927";
}

.icon-tools:before {
    content: "\e924";
}

.icon-mail:before {
    content: "\e900";
}

.icon-phone:before {
    content: "\e901";
}

.icon-pin:before {
    content: "\e902";
}

.icon-curve-arrow-right:before, .header-banner .contact-form-wrapper .button-wrapper:after,
#leave-contact .contact-form .button-wrapper:after, .inline-leave-contact .leave-form .button-wrapper:after,
#contact-page .contact-form-container .contact-form .button-wrapper:after {
    content: "\e903";
}

.icon-curve-arrow-left:before {
    content: "\e923";
}

.icon-short-arrow-right:before, #product-menu div ul li a:before {
    content: "\e904";
}

.icon-short-arrow-bottom:before {
    content: "\e917";
}

.icon-short-arrow-left:before {
    content: "\e918";
}

.icon-short-arrow-top:before {
    content: "\e919";
}

.icon-book_ribbon:before {
    content: "\e905";
}

.icon-date:before {
    content: "\e906";
}

.icon-long-arrow-left:before {
    content: "\e907";
}

.icon-long-arrow-top:before {
    content: "\e91a";
}

.icon-long-arrow-right:before, #calculator-form-container .form-wrapper .buttons:after {
    content: "\e91b";
}

.icon-long-arrow-bottom:before {
    content: "\e91c";
}

.icon-mail-2:before {
    content: "\e908";
}

.icon-pin-2:before {
    content: "\e909";
}

.icon-pin-3:before {
    content: "\e90a";
}

.icon-clock:before {
    content: "\e90b";
}

.icon-phone-2:before {
    content: "\e90c";
}

.icon-tiny-arrow-bottom:before, .faq-element .faq-header .arrow:before {
    content: "\e90d";
}

.icon-tiny-arrow-left:before {
    content: "\e91d";
}

.icon-tiny-arrow-top:before {
    content: "\e91e";
}

.icon-tiny-arrow-right:before {
    content: "\e91f";
}

.icon-Play:before, #product-slider ul li .product-slider-item a:after {
    content: "\e90e";
}

.icon-phone-3:before {
    content: "\e90f";
}

.icon-calculate:before {
    content: "\e910";
}

.icon-arrow-drop-bottom:before, #main-menu > div > ul > li.menu-item-has-children > a:after {
    content: "\e911";
}

.icon-arrow-drop-left:before {
    content: "\e920";
}

.icon-arrow-drop-top:before {
    content: "\e921";
}

.icon-arrow-drop-right:before, #breadcrumbs li:after {
    content: "\e922";
}

.icon-comment:before {
    content: "\e912";
}

.icon-clock-2:before {
    content: "\e913";
}

.icon-circle-arrow-left:before {
    content: "\e914";
}

.icon-circle-arrow-right:before {
    content: "\e915";
}

.icon-download:before {
    content: "\e916";
}

:root, :after, :before {
    --font-primary: "Montserrat", serif;
    --font-secondary: "Open Sans", serif;
    --primary: #0090DF;
    --content: #343434;
    --headlines: #272727;
    --gray: #F9F9F9;
}

:root {
    font-size: 10px;
    line-height: 150%;
    font-family: var(--font-primary);
    font-weight: 400;
    font-style: normal;
    font-optical-sizing: auto;
    color: var(--content);
}

body {
    font-size: 16px;
    font-optical-sizing: auto;
}

.none {
    display: none !important;
}

a {
    text-decoration: none;
    color: inherit;
}

strong {
    font-weight: bold;
}

em {
    font-style: italic;
}

.inner {
    max-width: 1350px;
    margin: 0 auto;
    position: relative;
    box-sizing: border-box;
    padding: 0 15px;
    width: 100%;
}

.styled-content .column-wrapper {
    display: flex;
    gap: 20px;
    vertical-align: top;
}

.styled-content .column-wrapper iframe {
    margin-top: 0
}

.styled-content .column-wrapper p:empty {
    display: none;
}

.styled-content .column {
}

.styled-content {
    font-family: var(--font-secondary);
    font-style: normal;
    font-size: 16px;
    font-weight: normal;
    line-height: 150%;
}

.styled-content table {
    border-collapse: separate !important;
    border-spacing: 8px;
    font-family: var(--font-primary);
    font-size: 15px;
    line-height: 150%;
    font-weight: 500;
    margin: -4px;
    width: auto !important;
    max-width: 100% !important;
}

.styled-content table tr {
}

.styled-content table tr td:last-child {
}

.styled-content table tr td {
    text-align: center;
    background: white;
    border: 1px solid #e7e7e7;
    padding: 12px 21px;
}

.styled-content table tr td:first-child {
}

.styled-content table tr td:last-child {
}

.styled-content h1,
.styled-content h2,
.styled-content h3,
.styled-content h4,
.styled-content h5,
.styled-content h6 {
    color: var(--headlines);
    font-weight: 700;
    line-height: 130%;
    font-family: var(--font-primary);
    margin-bottom: 17px;
    padding-bottom: 18px;
    position: relative;
    overflow: hidden;
}

.styled-content strong {
    font-weight: bold;
}

.styled-content em {
    font-style: italic;
}

.styled-content a {
    text-decoration: underline;
    font-weight: 600;
}

.styled-content a:hover {
    text-decoration: none;
}

.styled-content blockquote {
    overflow: hidden;
    font-style: italic;
    background: #f7f7f7;
    padding: 20px 20px 20px 50px;
}

.styled-content img {
    display: block;
    max-width: 100%;
    height: auto;
    width: auto;
}

.styled-content img.alignleft {
    float: left;
    max-width: 38%;
    margin-right: 30px;
    margin-bottom: 20px;
}

.styled-content img.alignright {
    float: right;
    max-width: 38%;
    margin-left: 30px;
    margin-bottom: 20px;
}

.styled-content img.aligncenter {
    margin: 0 auto;
}

.styled-content ul {
    padding: 0 20px;
    list-style: disc;
    overflow: hidden;
}

.styled-content ul li {
}

.styled-content ul li a {
    text-decoration: underline;
    font-weight: bold;
}

.styled-content ul li a:hover {
    text-decoration: none;
}

.styled-content ol {
    padding: 0 20px;
    list-style: decimal;
    overflow: hidden;
}

.styled-content ol li {
}

.styled-content h1 {
    font-size: 23px;
}

.styled-content h2 {
    font-size: 21px;
}

.styled-content h3 {
    font-size: 19px;
}

.styled-content h4 {
    font-size: 17px;
}

.styled-content h5 {
    font-size: 16px;
}

.styled-content h6 {
    font-size: 15px;
}

.styled-content h1:after,
.styled-content h2:after,
.styled-content h3:after,
.styled-content h4:after,
.styled-content h5:after,
.styled-content h6:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    background: var(--primary);
    height: 1px;
    width: 57px;
}

.styled-content .gallery {
    margin: 20px 0 !important;
    display: grid;
    gap: 20px;
}

.styled-content .gallery.gallery-columns-1 {
    grid-template-columns: repeat(1, 1fr);
}

.styled-content .gallery.gallery-columns-2 {
    grid-template-columns: repeat(2, 1fr);
}

.styled-content .gallery.gallery-columns-3 {
    grid-template-columns: repeat(3, 1fr);
}

.styled-content .gallery.gallery-columns-4 {
    grid-template-columns: repeat(4, 1fr);
}

.styled-content .gallery.gallery-columns-5 {
    grid-template-columns: repeat(5, 1fr);
}

.styled-content .gallery.gallery-columns-6 {
    grid-template-columns: repeat(6, 1fr);
}

.styled-content .gallery.gallery-columns-7 {
    grid-template-columns: repeat(7, 1fr);
}

.styled-content .gallery.gallery-columns-8 {
    grid-template-columns: repeat(8, 1fr);
}

.styled-content .gallery.gallery-columns-9 {
    grid-template-columns: repeat(9, 1fr);
}

.styled-content .gallery br {
    display: none !important;
}

.styled-content .gallery .gallery-item {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
}

.styled-content .gallery .gallery-item .gallery-icon {
    display: block;
    overflow: hidden;
}

.styled-content .gallery .gallery-item .gallery-icon img {
    border: none !important;
    transition-duration: 0.3s;
    scale: 1.0;
}

.styled-content .gallery .gallery-item .gallery-icon:hover img {
    scale: 1.05
}

.standard-section-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.standard-section-title.centered {
    justify-content: center;
    text-align: center;
}

.styled-content iframe {
    display: block;
    margin: 20px auto;
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
}

.standard-section-title .wrapper {
}

.standard-section-title .title {
    color: var(--headlines);
    font-size: 32px;
    font-weight: bold;
    line-height: 135%;
}

.standard-section-title.centered .title {
}

.standard-section-title .subtitle {
    margin-top: 8px;
    color: #757575;
    font-size: 15px;
    font-weight: 500;
    max-width: 630px;
    line-height: 150%;
}

.standard-section-title .subtitle.big {
    font-size: 32px;
    color: var(--headlines);
    font-weight: normal;
}

.standard-section-title .read-more {
    color: var(--headlines);
    text-decoration: underline;
    font-weight: 600;
    font-size: 15px;
}

.standard-section-title .read-more:hover {
    text-decoration: none;
}

.big-section-title {
}

.big-section-title .title {
}

.big-section-title .subcontent {
}

.button-wrapper .see {
    display: flex;
    align-items: center;
    gap: 20px;
    text-transform: lowercase;
    font-size: 15px;
    font-weight: 600;
    font-family: var(--font-primary);
}

.button-wrapper .see i {
    font-size: 18px;
}

.styled-content .button-wrapper a.button {
    text-decoration: none;
}

.button-wrapper .button {
    display: flex;
    align-items: center;
    justify-content: center;
    text-transform: uppercase;
    font-weight: 600;
    font-family: var(--font-primary);
    font-size: 15px;
    color: var(--headlines);
    border-radius: 8px 8px 8px 0;
    box-sizing: border-box;
    cursor: pointer;
    transition-duration: 0.3s;
}

.button-wrapper .button.icon {
}

.button-wrapper .button.icon i {
    transition-duration: 0.3s;
}

.button-wrapper .button.outline:hover {
    background: #272727;
    color: white;
}

.button-wrapper .button.outline {
    border-width: 2px;
    border-style: solid;
    height: 48px;
    padding: 0 34px;
    border-color: #272727;
}

.button-wrapper {
}

.button-wrapper .icon-only {
}

.button-wrapper .icon-only:hover i {
    color: var(--headlines);
}

.button-wrapper .icon-only i {
    display: flex;
    width: 24px;
    height: 24px;
    align-items: center;
    justify-content: center;
    color: var(--primary);
    font-size: 16px;
    transition-duration: 0.3s;
}

.button-wrapper .button.outline.icon {
    gap: 15px;
}

.button-wrapper .button.outline.icon i {
}

.button-wrapper .button.outline.primary {
    border-color: var(--primary);
}

.button-wrapper .button.outline.primary.icon {
    height: 41px;
    font-size: 14px;
    gap: 18px;
    padding-left: 20px;
    padding-right: 20px;
}

.button-wrapper .button.outline.primary:hover {
    background: var(--primary);
    color: white;
}

.button-wrapper .button.outline.primary.icon:hover i {
    color: white;
}

.button-wrapper .button.outline.primary.icon i {
    font-size: 18px;
    color: var(--primary);
}

.button-wrapper .button.fill {
    height: 48px;
    padding-left: 27px;
    padding-right: 29px;
    gap: 17px;
}

.button-wrapper .button span em {
    text-decoration: underline;
    font-style: normal;
}

.button-wrapper .button.fill.primary {
    color: white;
    background: var(--primary);
}

.button-wrapper .button.fill.primary:hover,
.button-wrapper .button.fill.primary + .button.fill.primary:hover {
    background: black;
}

.button-wrapper .button.fill.primary + .button.fill.primary {
    background: #016CBA;
}

.button-wrapper .button.fill.black:hover {
    background: var(--primary);
}

.button-wrapper .button.fill.black {
    background: var(--headlines);
    color: white;
}

.button-wrapper .button.fill.icon {
}

.button-wrapper .button.fill.icon i {
}

.button-wrapper .button.fill.gray {
}

.button-wrapper .button.fill.gray.icon {
}

.button-wrapper .button.fill.gray.icon i {
}

.button-wrapper .button.fill.white:hover {
    background: var(--headlines);
    color: white;
}

.button-wrapper .button.fill.white {
    background: white;
    color: var(--headlines);
}

.button-wrapper .button.fill.white.icon:hover i {
    color: white;
}

.button-wrapper .button.fill.white.icon {
}

.button-wrapper .button.fill.white.icon i {
}

.button-wrapper .button.fill.green:hover {
    background: var(--primary);
}

.button-wrapper .button.fill.green {
    background: #02AC43;
    color: white;
}

.button-wrapper .button.fill.green.icon {
}

.button-wrapper .button.fill.green.icon i {
}

.button-wrapper {
    display: flex;
    gap: 15px;
    align-items: center;
}

.admin-bar #headers {
    top: var(--wp-admin--admin-bar--height);
}

#headers {
    position: fixed;
    top: 0;
    height: 117px;
    z-index: 9990;
    left: 0;
    width: 100%;
    transition-duration: 0.3s;
}

#headers.scroll {
    box-shadow: 0 0 2px black;
}

#headers.scroll.scrollUp {
    translate: 0 -100%;
    box-shadow: 0 0 0 black;
}

#headers .top {
    background: #EFEFEF;
}

#headers .top .inner {
    height: 37px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 24px;
}

#headers .info {
    font-size: 12px;
    color: var(--headlines);
    font-weight: 500;
}

#headers .info i {
    font-size: 14px;
}

#headers .info a:hover {
    text-decoration: underline;
}

#headers .info a, #headers .info {
    display: flex;
    align-items: center;
    gap: 11px;
}

#headers .info.street {
}

#headers .info.phone {
}

#header {
    background: white;
}

#header .inner {
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#logo {
}

#logo .none {
}

#logo img {
    display: block;
    width: 85px;
    aspect-ratio: 145 / 117;
}

#main-menu {
    color: var(--headlines);
);
    font-weight: 600;
    font-size: 15px;
}

#main-menu > div {
}

#main-menu > div > ul {
    display: flex;
    gap: 15px;
    align-items: center;
}

#main-menu > div > ul > li {
    position: relative;
}

#main-menu > div > ul > li > a {
    padding: 15px;
    transition-duration: 0.3s;
    display: flex;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
}

#main-menu > div > ul > li:hover > a {
    color: var(--primary);
}

.single-baza-wiedzy #main-menu > div > ul > li.menu-item-object-baza-wiedzy > a,
.single-produkty #main-menu > div > ul > li#menu-item-981 > a,
.tax-realizacje-kategoria #main-menu > div > ul > li.menu-item-object-realizacje > a,
.single-realizacje #main-menu > div > ul > li.menu-item-object-realizacje > a,
#main-menu > div > ul > li.current-menu-item > a {
    color: var(--primary);
    font-weight: bold;
}

#buttons {
}

#buttons .button-wrapper {
}

#buttons .button-wrapper .button.icon.outline.primary {
}

#buttons .button-wrapper .button.icon.outline.primary i {
}

#main-slider {
    margin-bottom: 74px;
}

#main-slider .wrapper {
    height: 717px;
    overflow: hidden;
}

#main-slider .inner {
    padding: 0;
    max-width: 1670px;
}

#main-slider .nav {
}

#main-slider .nav .inner {
    max-width: 1440px;
    padding: 0;
    border-bottom: 1px solid #E7E7E7;
}

#main-slider-nav {
    margin-bottom: -1px;
}

#main-slider-nav ul {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
}

#main-slider-nav ul li {
}

#main-slider-nav ul li a {
    display: flex;
    font-family: var(--font-primary);
    color: var(--headlines);
    font-size: 15px;
    font-weight: 600;
    line-height: 18px;
    padding: 24px 23px 26px;
    position: relative;
    transition-duration: 0.3s;
}

#main-slider-nav ul li a:after {
    content: '';
    position: absolute;
    height: 1px;
    width: 100%;
    bottom: 0;
    left: 0;
    background: var(--headlines);
    transition-duration: 0.3s;
    opacity: 0;
}

#main-slider-nav ul li:hover a, #main-slider-nav ul li.current a {
}

#main-slider-nav ul li:hover a:after, #main-slider-nav ul li.current a:after {
    opacity: 1;
}

#main-slider-wrapper {
}

#main-slider-wrapper ul {
}

#main-slider-wrapper li {
}

#main-slider-wrapper .slider-item {
    width: 100%;
    height: 717px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

#main-slider-wrapper .slider-item .bg {
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#main-slider-wrapper .slider-item .bg img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

#main-slider-wrapper .slider-item .bg:after {
    content: '';
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0.35) 100%);
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#main-slider-wrapper .slider-item .content {
    max-width: 1380px;
    box-sizing: border-box;
    margin: 0 auto;
    position: relative;
    padding: 0 30px;
    color: white;
    width: 100%;
}

#main-slider-wrapper .slider-item .title {
    width: 910px;
    font-size: 46px;
    line-height: 135%;
    font-weight: normal;
    margin-bottom: 25px;
}

#main-slider-wrapper .slider-item .styled-content {
    width: 750px;
);
    font-size: 17px;
    line-height: 170%;
    margin-bottom: 25px;
}

#main-slider-wrapper .slider-item .button-wrapper {
}

#main-slider-wrapper .slider-item .button-wrapper .button.fill.primary.icon {
}

#main-slider-wrapper .slider-item .button-wrapper .button.fill.primary.icon i {
}

.featured-products {
    position: relative;
}

.picture-separator {
    display: none;
}

.featured-products.headless {
}

.featured-products.headless .products-wrapper {
}

.featured-products ~ #about-us {
    margin-top: 108px;
}

.featured-products .inner {
}

.featured-products ~ #about-us ~ #opinion {
    margin-top: 94px;
}

.featured-products .standard-section-title {
    margin-bottom: 32px;
}

.featured-products .products-wrapper {
}

.featured-products ~ .featured-products {
    margin-top: 48px;
}

.products-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.product-item:hover {
    border-color: var(--primary);
}

.product-item {
    border: 2px solid #F0F0F0;
    position: relative;
    z-index: 2;
    transition-duration: 0.3s;
    box-sizing: border-box;
}

.product-item .bg-link {
    font-size: 0;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    cursor: pointer;
}

.product-item .styled-content {
    padding-bottom: 20px;
    text-align: center;
    font-family: var(--font-primary);
    font-size: 16px;
    font-weight: 500;
    line-height: 135%;
    color: var(--headlines);
    min-height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

.product-item .ov {
}

.product-item .ov .discount {
    background: #E40000;
    color: white;
    border-radius: 8px 8px 8px 0;
    width: 60px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-weight: 600;
    right: 40px;
    position: absolute;
    z-index: 20;
    top: 0;
}

.product-item .ov img {
    display: block;
    transition-duration: 0.3s;
    scale: 1.0;
}

.product-item .ov img:hover {
    scale: 1.05;
}

.product-item .title a {
    pointer-events: all;
}

.product-item .title {
    font-family: var(--font-primary);
    font-size: 18px;
    font-weight: bold;
    line-height: 135%;
    color: var(--headlines);
    text-align: center;
    padding: 0;
    pointer-events: none;
    padding: 0 10px;
}

.product-item .button-wrapper {
    justify-content: center;
    width: 100%;
    pointer-events: none;
}

.product-item .button-wrapper .button.fill.black {
    text-transform: none;
    width: 180px;
    padding: 0;
    height: 48px;
    pointer-events: all;
}

.product-item .price {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 11px;
    height: 22px;
}

.product-item .price .sale {
    color: #E40000;
    font-size: 16px;
    font-weight: 700;
    line-height: 135%;
}

.product-item .price .regular {
    color: #797979;
);
    font-size: 15px;
    font-weight: 500;
    line-height: 135%;
}

.product-item.standard {
    display: flex;
    flex-direction: column;
    height: 480px;
}

.product-item.standard .bg-link {
}

.product-item.standard .styled-content {
}

.product-item.standard .ov a {
    display: block;
    height: 100%;
}

.product-item.standard .ov {
    flex: 1;
    position: relative;
    margin-bottom: 15px;
}

.product-item.standard .ov .discount {
}

.product-item.standard .ov img {
    max-width: 100%;
    max-height: calc(100% - 15px);
    position: absolute;
    object-fit: contain;
    object-position: center;
    left: 50%;
    top: 50%;
    translate: -50% -50%;
}

.product-item.standard .title {
    width: 100%;
    box-sizing: border-box;
    min-height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 20px 10px;
}

.product-item.standard .title:hover a {
    color: var(--primary);
}

.product-item.standard .title a {
    transition-duration: 0.3s;
}

.product-item.standard .button-wrapper {
    margin-bottom: 34px;
}

.product-item.standard .button-wrapper .button.fill.black {
}

.product-item.standard .price {
}

.product-item.standard .price .sale {
}

.product-item.standard .price .regular {
}

.product-item.special {
    display: flex;
    flex-direction: column;
    height: 445px;
}

.product-item.special .bg-link {
}

.product-item.special .styled-content {
}

.product-item.special .ov {
    flex: 1;
    position: relative;
    margin-bottom: 30px;
}

.product-item.special .ov .discount {
}

.product-item.special .ov img {
    position: absolute;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    object-position: center;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
}

.product-item.special .title:hover a {
    color: var(--primary);
}

.product-item.special .title a {
    transition-duration: 0.3s;
}

.product-item.special .title {
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 19px;
    padding-bottom: 33px;
}

.product-item.special .button-wrapper {
    margin-bottom: 42px;
}

.product-item.special .button-wrapper .button.fill.black {
}

.product-item.special .price {
    margin-bottom: 25px;
    pointer-events: none;
}

.product-item.special .price .sale {
}

.product-item.special .price .sale + .regular {
    text-decoration: line-through;
}

#about-us {
    position: relative;
    padding-top: 106px;
}

#about-us:after {
    content: '';
    background: var(--gray);
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 154px);
    z-index: -1;
}

#about-us .inner {
}

#about-us > .inner > .wrapper {
    display: flex;
    align-items: center;
    padding-left: 29px;
    gap: 150px;
}

#about-us .ov {
    width: 482px;
}

#about-us .ov img {
    display: block;
    width: 100%;
}

#about-us .address {
    margin-top: 10px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 500;
    gap: 10px;
}

#about-us .address i {
    font-size: 17px;
}

#about-us .content {
    width: 600px;
}

#about-us .standard-section-title {
    margin-bottom: 18px;
}

#about-us .styled-content {
    font-family: var(--font-primary);
    font-size: 15px;
    font-weight: 500;
    line-height: 150%;
    color: var(--content);
}

#about-us .button-wrapper {
    margin-top: 58px;
}

#about-us .button-wrapper .button.outline {
}

#about-us .gallery {
    margin-top: 66px;
    display: flex;
    gap: 30px;
}

#about-us .gallery .ov {
    flex: 1;
    border-radius: 8px 8px 8px 0;
    overflow: hidden;
    display: block;
    position: relative;
}

#about-us .gallery .ov:nth-child(1) {
    flex: 2;
}

#about-us .gallery .ov:hover img {
    transform: scale(1.05);
}

#about-us .gallery .ov img {
    height: 308px;
    object-fit: cover;
    object-position: center;
    width: 100%;
    transition-duration: 0.3s;
    transform: scale(1.0);
}

#about-us .gallery .ov span {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-decoration: underline;
    font-size: 15px;
    font-weight: 600;
    opacity: 0;
    transition-duration: 0.3s;
    z-index: 2;
}

#about-us .gallery .ov a:after {
    content: '';
    pointer-events: none;
    width: 100%;
    height: 100%;
    display: block;
    top: 0;
    left: 0;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.70) 0%, rgba(0, 0, 0, 0.70) 100%);
    position: absolute;
    transition-duration: 0.3s;
    opacity: 0;
}

#about-us .gallery .ov:last-child a:after {
    opacity: 1;
}

#about-us .gallery .ov:last-child span {
    opacity: 1;
}

#counters {
    margin-top: 40px;
    display: flex;
    align-items: flex-start;
    gap: 85px;
}

#counters .counter {
    position: relative;
}

#counters .counter .count {
    display: block;
    font-size: 55px;
    line-height: 52px;
    font-weight: normal;
    color: var(--primary);
    margin-bottom: 8px;
}

#counters .counter .label {
    font-size: 15px;
    font-weight: bold;
    line-height: 150%;
    color: var(--content);
}

#counters .counter:after {
    content: '';
    display: block;
    position: absolute;
    pointer-events: none;
    width: 1px;
    height: 60px;
    background: #E3E3E3;
    top: calc(50% - 30px);
    left: -44px;
}

#counters .counter:first-child:after {
    display: none;
}

#opinion {
}

#opinion .inner {
}

#opinion .standard-section-title.centered {
    margin-bottom: 86px;
}

#opinion > .inner > .content {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#opinion .overview {
    width: 250px;
}

#opinion .overview .whole {
    color: var(--headlines);
    display: flex;
    align-items: baseline;
    gap: 10px;
    margin-bottom: 4px;
}

#opinion .overview .avg {
    font-size: 42px;
    line-height: 135%;
}

#opinion .overview .total {
    font-size: 21px;
    line-height: 135%;
    font-weight: 400;
}

#opinion .overview .source {
    display: flex;
    align-items: center;
    gap: 9px;
    font-family: var(--font-secondary);
    font-size: 16px;
    font-weight: 500;
    line-height: 135%;
    margin-bottom: 17px;
    color: var(--content);
    white-space: nowrap;
}

#opinion .overview .source img {
    display: block;
    width: 59px;
    height: 20px;
}

#opinion .overview .score {
    height: 20px;
    display: block;
    position: relative;
    width: calc(29px * 5);
    margin-bottom: 23px;
}

#opinion .overview .score span {
    font-size: 0;
    display: block;
    height: 20px;
    background: url('imgs/star.svg') repeat-x left center / auto 100%;
}

#opinion .overview .score.score-1 {
}

#opinion .overview .score.score-1 span {
    width: 20%;
}

#opinion .overview .score.score-2 {
}

#opinion .overview .score.score-2 span {
    width: 40%;
}

#opinion .overview .score.score-3 {
}

#opinion .overview .score.score-3 span {
    width: 60%;
}

#opinion .overview .score.score-4 {
}

#opinion .overview .score.score-4 span {
    width: 80%;
}

#opinion .overview .score.score-5 {
}

#opinion .overview .score.score-5 span {
    width: 100%;
}

#opinion .overview .add {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;

}

#opinion .overview .add:hover span {
    color: var(--primary);
}

#opinion .overview .add span {
    text-decoration: underline;
    font-size: 15px;
    font-weight: 600;
    color: var(--headlines);
    transition-duration: 0.3s;
}

#opinion .overview .add:hover svg path {
    fill: var(--primary);
}

#opinion .overview .add svg path {
    transition-duration: 0.3s;
}

#opinion .overview .add span svg {
}

#opinion .opinions {
    overflow: hidden;
    width: 984px;
    min-height: 283px;
}

#opinion-wrapper {
    margin: 0 -16px;
}

#opinion-wrapper ul {
}

#opinion-wrapper li {
    float: left;
    overflow: hidden;
}

.opinion-item {
    border-radius: 6px 6px 6px 0;
    background: #F9F9F9;
    overflow: hidden;
    width: 308px;
    min-height: 283px;
    box-sizing: border-box;
    margin: 0 auto;
    position: relative;
    padding: 26px 17px 20px 30px;
}

.opinion-item .score-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-right: 10px;
    margin-bottom: 20px;
}

.opinion-item .score-wrapper .source {
    display: block;
    width: 50px;
    height: 17px;
}

.opinion-item .score-wrapper .score {
    display: block;
    width: 102.84px;
    height: 14.24px;
}

.opinion-item .score-wrapper .score span {
    display: block;
    font-size: 0;
    height: 100%;
    background: url('imgs/star.svg') repeat-x left center / auto 100%;
}

.opinion-item .score-wrapper .score.score-1 {
}

.opinion-item .score-wrapper .score.score-1 span {
    width: 20%;
}

.opinion-item .score-wrapper .score.score-2 {
}

.opinion-item .score-wrapper .score.score-2 span {
    width: 40%;
}

.opinion-item .score-wrapper .score.score-3 {
}

.opinion-item .score-wrapper .score.score-3 span {
    width: 60%;
}

.opinion-item .score-wrapper .score.score-4 {
}

.opinion-item .score-wrapper .score.score-4 span {
    width: 80%;
}

.opinion-item .score-wrapper .score.score-5 {
}

.opinion-item .score-wrapper .score.score-5 span {
    width: 100%;
}

.opinion-item .author {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: var(--headlines);
    font-size: 14px;
    line-height: 135%;
    font-weight: 600;
    margin-bottom: 16px;
}

.opinion-item .author p {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.opinion-item .author img {
    width: 26px;
    height: 26px;
    object-fit: cover;
    object-position: center;
    border-radius: 50%;
    display: block;
}

.opinion-item .content.show-all {
    max-height: 400px;
}

.opinion-item .content {
    display: block !important;
    font-size: 13px;
    font-family: var(--font-secondary);
    font-weight: 500;
    line-height: 135%;
    color: var(--content);
    max-height: 122.83px;
    transition-duration: 0.7s;
    overflow: hidden;
}

.opinion-item .read-more:hover {
    text-decoration: none;
}

.opinion-item .read-more {
    position: absolute;
    bottom: 30px;
    left: 30px;
    font-size: 13px;
    font-weight: 600;
    line-height: 135%;
    color: var(--content);
    font-family: var(--font-secondary);
    text-decoration: underline;
}

.opinion-item .read-more.hidden {
    display: none;
}

#opinion-nav i {
    cursor: pointer;
    width: 30px;
    height: 30px;
    font-size: 25px;
    color: #797979;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-buttons:hover {
    color: var(--primary) !important;
}

.nav-buttons {
    cursor: pointer;
    transition-duration: 0.3s;
}

#opinion-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 71px;
    margin: 35px auto 0;
}

#video-gallery {
    margin-top: 40px;
    margin-bottom: 75px;
}

#video-gallery .inner {
}

#video-gallery .wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 30px;
}

#video-gallery iframe {
    display: block;
    aspect-ratio: 16 / 9;
    width: 100%;
    height: auto;
}

#leave-contact-section {
    margin-bottom: 157px;
    position: relative;
}

#leave-contact-section .inner {
}

#leave-contact {
    display: flex;
    height: 356px;
    color: white;
    border-radius: 0 8px 8px 0;
}

#leave-contact .form-column {
    background: var(--primary);
    flex: 1;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 64px;
    padding-right: 58px;
}

#leave-contact .title {
    text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.25);
    font-size: 34px;
    line-height: 135%;
    font-weight: normal;
    margin-bottom: 22px;
    white-space: nowrap;
}

#leave-contact .contact-form {
    position: relative;
}

#leave-contact .why-column {
    background: var(--headlines);
    width: 645px;
    box-sizing: border-box;
    padding-top: 144px;
    padding-left: 93px;
}

#leave-contact .bg-icon {
    pointer-events: none;
    position: absolute;
    font-size: 57px;
    color: var(--primary);
    top: 51px;
    right: 59px;
}

#leave-contact .styled-content {
    width: 440px;
    font-weight: 600;
}

#why-us {
}

#why-us .inner {
}

#why-us .standard-section-title {
    margin-bottom: 82px;
}

#why-us #why-attributes {

}

#why-us.product-attributes {
}

#why-us.product-attributes .standard-section-title {
    margin-bottom: 60px;
}

#why-us.product-attributes #why-attributes {
    column-gap: 60px;
}

#why-us.product-attributes #why-attributes .attribute {
    width: 210px;
}

#why-us.product-attributes #why-attributes .attribute .ov {
}

#why-us.product-attributes #why-attributes .attribute .ov img {
}

#why-us.product-attributes #why-attributes .attribute .content {
    font-size: 15px;
    font-weight: 700;
    line-height: 150%;
    font-family: var(--font-primary);
    text-transform: uppercase;
}

#why-attributes {
    display: flex;
    column-gap: 40px;
    align-items: flex-start;
    justify-content: center;
    flex-wrap: wrap;
    row-gap: 50px;
}

#why-attributes .attribute {
    width: 186px;
}

#why-attributes .attribute .ov {
    width: 72px;
    height: 72px;
    background: #F9F9F9;
    border-radius: 8px 8px 8px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 14px;
}

#why-attributes .attribute .ov img {
    width: 32px;
    height: auto;
}

#why-attributes .attribute .title {
    text-transform: uppercase;
    color: var(--content);
    font-size: 15px;
    font-weight: 700;
    line-height: 150%;
    text-align: center;
}

#why-attributes .attribute .content {
    margin-top: 14px;
    text-align: center;
    font-family: var(--font-secondary);
    font-size: 13px;
    line-height: 135%;
    font-weight: 500;
    color: var(--content);
}

#contact-banner {
    margin-top: 51px;
    margin-bottom: 55px;
}

#contact-banner .inner {
}

#contact-banner .wrapper {
    height: 510px;
    overflow: hidden;
    border-radius: 8px 8px 8px 0;
    position: relative;
    display: flex;
    align-items: center;
}

#contact-banner .wrapper:after {
    content: '';
    background: linear-gradient(270deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.50) 100%);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#contact-banner .bg-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    pointer-events: none;
    height: 100%;
}

#contact-banner .bg-wrapper img {
    width: 100%;
    object-position: center;
    object-fit: cover;
}

#contact-banner .content {
    position: relative;
    z-index: 20;
    padding-left: 106px;
    color: white;
    width: 800px;
}

#contact-banner .title {
    text-shadow: 6px 6px 6px rgba(0, 0, 0, 0.25);
    font-size: 34px;
    line-height: 135%;
    font-weight: normal;
    margin-bottom: 16px;
}

#contact-banner .styled-content {
    width: 450px;
    text-shadow: 6px 6px 6px rgba(0, 0, 0, 0.25);
}

#contact-banner .button-wrapper {
    margin-top: 46px;
    gap: 20px;
}

#contact-banner .button-wrapper .button {
    height: 54px;
    box-shadow: 20px 20px 25px 0 rgba(0, 0, 0, 0.25);
}

#contact-banner .button-wrapper .button i {
}

#contact-banner .button-wrapper .button.primary {
    gap: 18.5px;
    padding-left: 30px;
    padding-right: 32px;
}

#contact-banner .button-wrapper .button.primary i {
    font-size: 17px;
}

#contact-banner .button-wrapper .button.white {
    gap: 17.5px;
}

#contact-banner .button-wrapper .button.white i {
    font-size: 17px;
}

#blog-overview {
    padding-top: 80px;
    background: var(--gray);
    padding-bottom: 78px;
}

#blog-overview .standard-section-title {
    margin-bottom: 56px;
}

#blog-overview .inner {
}

.blog-items {
    gap: 30px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}

.blog-item {
}

.blog-item .ov {
    margin-bottom: 20px;
    height: 290px;
    background: rgb(0 0 0 / 20%) url('imgs/merdus-okno-logo-small.svg') no-repeat center;
    overflow: hidden;
}

.blog-item .ov:hover img {
    scale: 1.05;
}

.blog-item .ov img {
    display: block;
    width: 100%;
    height: 290px;
    object-fit: cover;
    object-position: center;
    border-radius: 6px 6px 6px 0;
    scale: 1.0;
    transition-duration: 0.3s;
}

.blog-item .date {
    color: #797979;
    font-family: var(--font-secondary);
    font-size: 14px;
    line-height: 150%;
    margin-bottom: 15px;
}

.blog-item .title {
    font-size: 18px;
    font-weight: 500;
    line-height: 145%;
    color: var(--headlines);
    margin-bottom: 12px;
}

.blog-item .title a {
    transition-duration: 0.3s;
}

.blog-item .title:hover a {
    color: var(--primary);
}

.blog-item .styled-content {
}

.blog-item .styled-content a {
}

.blog-item .styled-content:hover a {
}

#promo-video {
    margin-top: 78px;
    position: relative;
    overflow: hidden;
}

#promo-video .inner {
}

#promo-video .standard-section-title {
    margin-bottom: 78px;
}

.photo-wrapper {
    position: relative;
    overflow: hidden;
}

.photo-wrapper img {
    aspect-ratio: 1320 / 735;
    width: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

.video-wrapper {
    position: relative;
    overflow: hidden;
}

.video-wrapper a {
    display: block;
}

.video-wrapper a:hover i {
    color: var(--primary);
}

.video-wrapper video {
    aspect-ratio: 1320 / 735;
    width: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

.video-wrapper i {
    position: absolute;
    font-size: 128px;
    color: white;
    z-index: 20;
    top: 50%;
    left: 50%;
    transition-duration: 0.3s;
    translate: -50% -50%;
}

#additional-content {
    margin-top: 92px;
}

#additional-content .inner {
}

#additional-content .standard-section-title {
    margin-bottom: 27px;
}

#additional-content .styled-content {
}

#additional-content .read-more.hide {
    opacity: 0;
    pointer-events: none;
}

#additional-content .read-more:hover {
    color: var(--primary);
}

#additional-content .read-more {
    display: inline-flex;
    margin-top: 17px;
    margin-left: -10px;
    cursor: pointer;
    font-family: var(--font-primary);
    font-size: 15px;
    font-weight: 600;
    color: var(--headlines);
    background: none;
    padding: 10px;
    transition-duration: 0.3s;
    border: none;
    align-items: center;
    gap: 12px;
    margin-bottom: 17px;
}

#additional-content .read-more i {
    font-size: 13px;
}

#additional-content .read-more.show {
}

#additional-content .styled-content.more {
}

#partners {
    margin-top: 70px;
}

#partners .inner {
}

#partners .wrapper {
    height: 107px;
    display: flex;
    align-items: center;
    gap: 90px;
}

#partners .title {
    white-space: nowrap;
    font-size: 21px;
    font-weight: 700;
    color: var(--headlines);
}

#partners .partners-wrapper {
    height: 107px;
    overflow: hidden;
    flex: 1;
}

#partners-slider {
}

#partners-slider ul {
}

#partners-slider ul li {
    float: left;
}

#partners-slider .item, #partners-slider .item a {
    height: 107px;
    display: flex;
    align-items: center;
    width: 150px;
    justify-content: center;
}

#partners-slider .item a {
}

#partners-slider .item img {
    max-height: 100%;
    max-width: 100%;
    display: block;
}

#footer {
    margin-top: 27px;
    background: var(--gray);
    padding-top: 84px;
    padding-bottom: 70px;
}

#footer .inner {
}

#footer .copyrights {
    font-family: var(--font-secondary);
    font-size: 14px;
    line-height: 150%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#footer .copyright {
}

#footer .copyright {
}

#footer .copyright * {
    display: inline-block;
    vertical-align: top;
}

#footer .copyright ul {
}

#footer .copyright ul li {
}

#footer .copyright ul li:before {
    content: "|";
    display: inline-block;
    width: 15px;
    text-align: center;
}

#footer .copyright div ul li:hover a,
#footer .copyright div ul li.current-menu-item a {
    color: var(--primary);
}

#footer .copyright div ul li a {
    transition-duration: 0.3s;
}

#footer .developer {
}

#footer .developer a span {
    transition-duration: 0.3s;
}

#footer .developer a:hover span {
    color: var(--primary);
}

#footer .main {
    display: flex;
    padding-bottom: 40px;
    border-bottom: 1px solid #DFDFDF;
    margin-bottom: 38px;
    justify-content: space-between;
}

#footer .main .content {
    width: 775px;
}

#footer .main .content .styled-content.other {
    font-size: 14px;
}

#footer .main .important-information {
    display: flex;
    gap: 50px;
    margin-bottom: 30px;
}

#footer .main .important-information .company-overview {
    display: flex;
    align-items: center;
    gap: 43px;
    flex: 1;
}

#footer .main .important-information .company-overview .ov {
}

#footer .main .important-information .company-overview .ov img {
    width: 171px;
    height: 138px;
}

#footer .main .important-information .company-overview .styled-content {
    font-size: 14px;
}

#footer .main .important-information .contact {
    padding-right: 30px;
}

#footer .main .important-information .contact .title {
    margin-bottom: 21px;
}

#footer .main .important-information .contact .row {
    display: flex;
    align-items: center;
}

#footer .main .important-information .contact .row i {
    font-size: 15px;
    width: 25px;
}

#footer .main .important-information .contact .address {
    margin-bottom: 16px;
    align-items: flex-start;
}

#footer .main .important-information .contact .address i {
    position: relative;
    top: 4px;
    font-size: 18px;
}

#footer .main .important-information .contact .address .styled-content {
    font-size: 14px;
}

#footer .main .important-information .contact .contact-way:hover span {
    text-decoration: underline;
}

#footer .main .important-information .contact .contact-way {
    font-weight: bold;
    font-size: 16px;
    line-height: 150%;
    color: var(--primary);
}

#footer .main .important-information .contact .contact-way i {
    color: var(--headlines);
}

#footer .main .important-information .contact .contact-way.phone {
    margin-bottom: 5px;
}

#footer .main .important-information .contact .contact-way.phone i {
}

#footer .main .important-information .contact .contact-way.mail {
}

#footer .main .important-information .contact .contact-way.mail i {
}

#footer .footer-menu {
    width: 200px;
}

#footer .footer-menu .title, #footer .main .important-information .contact .title {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 700;
    line-height: 150%;
    color: var(--content);
    font-family: var(--font-secondary);
}

#footer .footer-menu ul .ov {
    display: none;
}

#footer .footer-menu ul {
    font-family: var(--font-secondary);
    font-size: 14px;
    line-height: 200%;
    font-weight: normal;
    color: var(--content);
    margin-top: 21px;
}

.single-baza-wiedzy #footer .footer-menu ul li.menu-item-object-baza-wiedzy a,
.single-produkty #footer .footer-menu ul li#menu-item-980 a,
.tax-realizacje-kategoria #footer .footer-menu ul li.menu-item-object-realizacje a,
.single-realizacje #footer .footer-menu ul li.menu-item-object-realizacje a,
#footer .footer-menu ul li.current-menu-item a {
    color: var(--primary);
    font-weight: bold;
}

#footer .footer-menu ul li:hover a {
    color: var(--primary);
}

#footer .footer-menu ul li a {
    transition-duration: 0.3s;
}

#header-spacing {
    height: 117px;
}

.header-page {
    padding-top: 54px;
}

.header-page #breadcrumbs {
    margin-bottom: 35px;
}

#realizations-page {
    margin-bottom: 30px;
}

#realizations-page #content-header {
}

#realizations-page #categories-nav {
    margin-top: 47px;
}

#realizations-page #realizations {
    margin-top: 35px;
}

#content-header {
    display: block;
}

#content-header .title {
    font-size: 42px;
    font-family: var(--font-primary);
    color: var(--headlines);
    line-height: 135%;
    font-weight: 500;
}

#content-header .title strong {
    display: block;
}

#content-header .styled-content {
    max-width: 600px;
    color: #757575;
);
    font-family: var(--font-primary);
    font-size: 15px;
    font-weight: 500;
    line-height: 140%;
    margin-top: 13px;
}

#categories-nav {
    border-bottom: 1px solid #E7E7E7;
}

#categories-nav ul {
    display: flex;
    margin-left: 27px;
    gap: 58px;
}

#categories-nav ul li {
}

#categories-nav ul li a {
    padding: 20px 11px 23px;
    display: block;
    font-size: 15px;
    font-weight: 600;
    font-family: var(--font-primary);
    color: var(--headlines);
    position: relative;
    transition-duration: 0.3s;
}

#categories-nav ul li.current a, #categories-nav ul li:hover a {
    color: var(--primary);
}

#categories-nav ul li a:after {
    content: '';
    bottom: -1px;
    left: 0;
    width: 100%;
    display: block;
    position: absolute;
    pointer-events: none;
    background: #E7E7E7;
    height: 1px;
    transition-duration: 0.3s;
}

#categories-nav ul li.current a:after, #categories-nav ul li:hover a:after {

    background: var(--primary);
}

#realizations {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 30px;
}

.realization-item {
    height: 415px;
    overflow: hidden;
    position: relative;
}

.realization-item:hover:after {
    opacity: 1;
}

.realization-item:after {
    content: '';
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0.45) 100%);
    pointer-events: none;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    opacity: 0;
    transition-duration: 0.3s;
}

.realization-item .bg-link {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.realization-item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.realization-item:hover .content {
    opacity: 1;
}

.realization-item .content {
    position: absolute;
    z-index: 2;
    width: 100%;
    left: 0;
    box-sizing: border-box;
    bottom: 0;
    color: white;
    opacity: 0;
    transition-duration: 0.3s;
    padding-bottom: 32px;
    padding-right: 38px;
    padding-left: 47px;
}

.realization-item .title {
    font-family: var(--font-primary);
    font-size: 18px;
    font-weight: 500;
    line-height: 135%;
    margin-bottom: 14px;
}

.realization-item .title:hover a {
    color: var(--primary);
}

.realization-item .title a {
    transition-duration: 0.3s;
}

.realization-item .address {
    display: flex;
    margin-bottom: 32px;
    gap: 11px;
    font-family: var(--font-secondary);
    font-size: 13px;
    font-weight: 500;
    line-height: 135%;
}

.realization-item .address i {
    display: block;
    font-size: 15px;
    width: 18px;
    text-align: center;
    color: var(--primary);
}

.realization-item .address div {
}

.realization-item .button-wrapper {
    justify-content: flex-end;
}

.realization-item .button-wrapper .see:hover {
    color: var(--primary);
}

.realization-item .button-wrapper .see {
    transition-duration: 0.3s;
}

.realization-item .button-wrapper .see i {
}

#realizations-page ~ #leave-contact-section {
    margin-bottom: 80px;
}

#realizations-page ~ #leave-contact-section ~ #partners {
    margin: 0;
}

#realization-page {
    padding-top: 19px;
    margin-bottom: 70px;
}

#realization-page #breadcrumbs {
    margin-bottom: 50px;
}

#realization-page .overview {
}

#realization-page .gallery {
}

#realization-page #faq {
}

#breadcrumbs {
    font-size: 13px;
    font-weight: 600;
    font-family: var(--font-primary);
}

#breadcrumbs ul {
    display: flex;
    align-items: center;
}

#breadcrumbs li {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
}

#breadcrumbs a {
    color: #797979;
    text-transform: lowercase;
    transition-duration: 0.3s;
}

#breadcrumbs a:hover,
#breadcrumbs span {
    color: var(--primary);
}

#breadcrumbs li:after {
    font-size: 8px;
    display: flex;
    width: 18px;
    margin: 0 5px;
    height: 18px;
    align-items: center;
    justify-content: center;
    color: #797979;
}

#breadcrumbs li:first-child:after {
    display: none;
}

.go-back:hover {
    color: var(--primary);
}

.go-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    line-height: 135%;
    font-size: 13px;
    font-weight: 500;
    color: #797979;
    font-family: var(--font-secondary);
    transition-duration: 0.3s;
}

.go-back i {
    width: 14px;
    text-align: center;
    font-size: 11px;
}

#realization-page .overview {
    gap: 67px;
    display: flex;
    align-items: flex-start;
}

#realization-page .overview + #faq {
    margin-top: 80px;
}

#realization-page .overview .ov {
    width: 613px;
    overflow: hidden;
}

#realization-page .overview .content {
    flex: 1;
    padding-top: 36px;
}

#realization-page .overview .ov:hover img {
    transform: scale(1.05)
}

#realization-page .overview .ov img {
    display: block;
    width: 100%;
    height: auto;
    min-height: 500px;
    object-fit: cover;
    object-position: center;
    transition-duration: 0.3s;
    transform: scale(1.0);
}

#realization-page .overview .go-back {
}

#realization-page .overview .title {
    margin-top: 52px;
    font-size: 32px;
    font-weight: 500;
    line-height: 135%;
    color: var(--headlines);
    font-family: var(--font-primary);
    margin-bottom: 20px;
}

#realization-page .overview .details {
    display: flex;
    flex-direction: column;
    gap: 11px;
}

#realization-page .overview .detail {
    display: flex;
    gap: 11px;
}

#realization-page .overview .detail i {
    display: block;
    width: 18px;
    text-align: center;
    color: var(--primary);
    font-size: 15px;
}

#realization-page .overview .detail div {
    font-family: var(--font-secondary);
    color: var(--content);
    font-size: 13px;
    line-height: 135%;
    font-weight: 500;
}

.check-offer {
    padding-top: 21px;
    border-top: 1px solid #EBEBEB;
    margin-top: 21px;
}

.check-offer .offer-title {
    color: var(--headlines);
    font-family: var(--font-primary);
    font-size: 21px;
    font-weight: 700;
    line-height: 135%;
    margin-bottom: 21px;
}

.check-offer .offer-wrapper {
    display: flex;
    gap: 38px;
    align-items: flex-start;
    margin-bottom: 9px;
}

.check-offer .offer-address {
    display: flex;
    gap: 5px;
}

.check-offer .offer-address i {
    width: 19px;
    text-align: center;
    height: 19px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    top: 2px;
    color: var(--headlines);
    font-size: 15px;
}

.check-offer .offer-address div {
    font-size: 14px;
}

.check-offer .offer-mail:hover {
    text-decoration: underline;
}

.check-offer .offer-mail {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    font-size: 16px;
    font-weight: bold;
    line-height: 150%;
    font-family: var(--font-secondary);
    color: var(--primary);
}

.check-offer .offer-mail i {
    width: 19px;
    height: 19px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--headlines);
    font-size: 15px;
}

.check-offer .button-wrapper {
    position: relative;
    top: 3px;
}

.check-offer .button-wrapper .button.fill.primary.icon {
}

.check-offer .button-wrapper .button.fill.primary.icon span {
}

.check-offer .button-wrapper .button.fill.primary.icon i {
}

#realization-page .gallery {
    margin-top: 30px;
    display: grid;
    gap: 30px;
    grid-template-columns: 1fr 1fr 1fr;
    margin-bottom: 70px;
}

#realization-page .gallery .ov {
    aspect-ratio: 420 / 415;
    max-width: 100%;
    overflow: hidden;
}

#realization-page .gallery .ov:hover img {
    transform: scale(1.05);

}

#realization-page .gallery .ov img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition-duration: 0.3s;
    transform: scale(1.0);
}

#faq {
}

#faq .standard-section-title {
    margin-bottom: 47px;
}

.faq-item {
    background: #F0F0F0;
    margin-top: 11px;
    padding-left: 36px;
    padding-right: 62px;
    border-radius: 0 5px;
    overflow: hidden;
}

.faq-item .question:hover h3 {
    color: var(--primary);
}

.faq-item .question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 17px 62px 17px 36px;
    cursor: pointer;
    margin-left: -36px;
    margin-right: -62px;
}

.faq-item .question h3 {
    flex: 1;
    font-family: var(--font-primary);
    font-weight: 700;
    font-size: 16px;
    line-height: 162%;
    color: var(--headlines);
    transition-duration: 0.3s;
}

.faq-item .question i {
    position: relative;
    right: -37px;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary);
    transition-duration: 0.3s;
}

.faq-item .styled-content {
    padding-top: 7px;
    padding-bottom: 27px;
    font-size: 14px;
    overflow: hidden;
}

.faq-item.hidden {
}

.faq-item.hidden .question {
}

.faq-item.hidden .question h3 {
}

.faq-item.hidden .question i {
}

.faq-item.hidden .styled-content {
}

.faq-item.visible {
}

.faq-item.visible .question {
}

.faq-item.visible .question h3 {
}

.faq-item.visible .question i {
    rotate: -180deg;
}

.faq-item.visible .styled-content {
}

#knowledge-page {
    margin-bottom: 56px;
}

#knowledge-page #content-header {
    margin-bottom: 82px;
}

#knowledge-page ~ #leave-contact-section {
    margin-bottom: 85px;
}

#knowledge-page ~ #leave-contact-section ~ #partners {
    margin: 0;
}

.blog-featured-item {
    display: flex;
    align-items: center;
    gap: 46px;
    margin-bottom: 41px;
}

.blog-featured-item .ov {
    border-radius: 6px 6px 6px 0;
    overflow: hidden;
    width: 644px;
    height: 446px;
    background: rgb(0 0 0 / 20%) url(imgs/merdus-okno-logo-small.svg) no-repeat center;
}

.blog-featured-item .ov:hover img {
    scale: 1.05;
}

.blog-featured-item .ov img {
    width: 100%;
    height: 446px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition-duration: 0.3s;
    scale: 1.0;
}

.blog-featured-item .content {
    flex: 1;
}

.blog-featured-item .meta {
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 25px;
    font-size: 14px;
    color: #797979;
    font-family: var(--font-secondary);
}

.blog-featured-item .meta i {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    font-size: 20px;
}

.blog-featured-item .date, .blog-featured-item .reading {
    display: flex;
    align-items: center;
    gap: 10px;
}

.blog-featured-item .date i {
}

.blog-featured-item .reading {
}

.blog-featured-item .reading i {
}

.blog-featured-item .title a {
    transition-duration: 0.3s;
}

.blog-featured-item .title:hover a {
    color: var(--primary);
}

.blog-featured-item .title {
    color: var(--headlines);
    font-family: var(--font-primary);
    font-size: 21px;
    font-weight: 500;
    line-height: 140%;
    margin-bottom: 19px;
    max-width: 520px;
}

.blog-featured-item .styled-content {
    margin-bottom: 20px;
}

.blog-featured-item .button-wrapper {
}

.blog-featured-item .button-wrapper .icon-only {
}

.blog-featured-item .button-wrapper .icon-only i {
}

.blog-all-items {
}

.blog-all-items .blog-items {
}

.blog-all-items .blog-items .blog-item {
}

#knowledge-post ~ #blog-overview {
    background: none;
    padding-top: 130px;
    padding-bottom: 0;
}

#knowledge-post ~ #partners {
    margin-top: 120px;
}

#knowledge-post ~ #blog-overview ~ #partners {
}

#knowledge-post {
    padding-top: 57px;
}

#knowledge-post .inner {
}

#knowledge-post .page-title {
    text-align: center;
    font-size: 32px;
    font-weight: 500;
    font-family: var(--font-primary);
    line-height: 1.5;
    color: var(--headlines);
    margin-bottom: 22px;
}

#knowledge-post .meta {
    gap: 25px;
    display: flex;
    align-items: center;
    font-size: 14px;
    justify-content: center;
    color: #797979;
    line-height: 150%;
    font-family: var(--font-secondary);
    margin-bottom: 41px;
}

#knowledge-post .styled-content {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
}

#knowledge-post .meta p {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

#knowledge-post .meta p i {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    font-size: 19px;
}

#knowledge-post .date {
}

#knowledge-post .date i {
}

#knowledge-post .reading {
}

#knowledge-post .reading i {
}

#knowledge-post .ov {
    overflow: hidden;
    border-radius: 6px 6px 6px 0;
    max-width: 960px;
    margin: 0 auto 42px;
}

#knowledge-post .ov img {
    display: block;
    width: 100%;
    min-height: 400px;
    max-height: 600px;
    object-fit: cover;
    object-position: center;
}

#knowledge-post .styled-content.featured {
    font-size: 19px;
    margin-bottom: 34px;
}

#knowledge-post .styled-content.main {
}

#knowledge-post .estate.button-wrapper {
    max-width: 960px;
    margin: 42px auto 0;
}

.estate.button-wrapper {
    background: var(--headlines);
    color: white;
    border-radius: 8px 8px 8px 0;
    height: 110px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    clear: both;
}

.estate.button-wrapper .button.primary.outline {
    color: white;
    border-width: 1px;
}

.inline-leave-contact {
    background: var(--primary);
    color: white;
    border-radius: 8px;
    padding-top: 40px;
    padding-bottom: 41px;
    margin: 42px 0;
}

.inline-leave-contact .leave-title:after {
    display: none
}

.inline-leave-contact .leave-title {
    width: 640px;
    margin: 0 auto 20px;
    text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.25);
    font-size: 28px;
    line-height: 135%;
    font-family: var(--font-primary);
    text-align: center;
    color: white;
    font-weight: normal;
    padding: 0;
}

#mobile-icon-button {
    display: none;
}

.inline-leave-contact .leave-form {
    width: 640px;
    margin: 0 auto;
    position: relative;
}

#article-nav {
    border: 2px solid #F0F0F0;
    padding: 25px 100px 23px 32px;
    margin: 0 auto 42px;
    max-width: 960px;
    box-sizing: border-box;
}

#article-nav .title {
    color: var(--headlines);
    font-family: var(--font-primary);
    font-size: 21px;
    font-weight: 500;
    line-height: 123%;
    margin-bottom: 10px;
}

#article-nav ul {
    padding-left: 20px;
    line-height: 200%;
    font-family: var(--font-secondary);
    font-size: 16px;
    color: var(--content);
}

#article-nav ul li {
}

#article-nav ul li a {
}

#article-nav ul li:hover a {
    text-decoration: underline;
}

#products-page {
    padding-top: 30px;
}

#products-page ~ #why-us {
    margin-top: 140px;
}

#products-page ~ #opinion {
    margin-top: 170px;
}

#products-page ~ #partners {
    margin-top: 100px;
}

#products-page ~ #footer {
}

#products-page ~ .featured-products {
    margin-top: 56px;
}

#products-page.header-page {
    margin-bottom: 64px;
}

#products-page.header-page #breadcrumbs {
}

#products-page.header-page #content-header {
}

#products-page.header-page #content-header .title {
    font-size: 46px;
}

#products-page.header-page #content-header .title strong {
}

#products-page.header-page #content-header .styled-content {
    margin-top: 18px;
    font-size: 17px;
    line-height: 170%;
    color: var(--headlines);
    max-width: 920px;
    font-family: var(--font-secondary);
    font-weight: 400;
}

#products-page.header-page #content-header .button-wrapper {
    margin-top: 40px;
}

#products-page.header-page #content-header .button-wrapper .button.fill.primary.icon {
}

#products-page.header-page #content-header .button-wrapper .button.fill.primary.icon i {
}

#contact-page ~ #partners {
    margin-top: 27px;
}

#google-map {
    height: 592px;
}

#contact-page {
    margin-bottom: 172px;
}

#contact-page #content-header {
    margin-bottom: 38px;
}

#contact-page .inner {
}

#contact-page .details-wrapper {
    display: flex;
    align-items: flex-start;
    gap: 75px;
    margin-bottom: 110px;
}

#contact-page .contact-form-container {
    flex: 1;
    color: white;
    background: var(--headlines);
    border-radius: 8px 8px 8px 0;
    box-sizing: border-box;
    padding: 68px 34px 82px 47px;
}

#contact-page .contact-form-container .title {
    margin-bottom: 40px;
    display: flex;
    align-items: center;
    gap: 27px;
    font-family: var(--font-primary);
    font-size: 34px;
    line-height: 135%;
    font-weight: normal;
}

#contact-page .contact-form-container .title i {
    font-size: 56px;
    display: block;
}

#contact-page .contact-form-container .contact-form {
}

#contact-page .media-wrapper {
    gap: 70px;
    display: flex;
}

#contact-page .ov.photo {
    flex: 1;
    overflow: hidden;
    border-radius: 8px 8px 8px 0;
    position: relative;
}

#contact-page .ov.photo:after {
    content: '';
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: black;
    opacity: 0.2;
}

#contact-page .ov.photo img {
}

#contact-page .ov {
}

#contact-page .ov img {
    display: block;
    height: 504px;
    object-fit: cover;
    object-position: center;
    width: 100%;
}

#contact-page .ov.map {
    width: 500px;
}

#contact-page .ov.map img {
    object-fit: contain;
}

#contact-page .details {
    width: 613px;
}

#contact-page .mails {
    display: flex;
    height: 62px;
    align-items: center;
    border-radius: 6px 6px 6px 0;
    background: #F9F9F9;
    margin-bottom: 12px;
    padding-left: 29px;
}

#contact-page .mails i {
    display: block;
    font-size: 27px;
    color: var(--primary);
    margin-right: 27px;
}

#contact-page .mails .address {
    display: block;
    width: 212px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--content);
    font-family: var(--font-secondary);
    font-size: 16px;
    line-height: 150%;
    font-weight: 600;
    text-decoration: underline;
    margin-right: 24px;
    transition-duration: 0.3s;
}

#contact-page .mails:hover .address {
    color: var(--primary);
}

#contact-page .mails .subject {
    display: block;
    width: 280px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    color: #757575;
    font-family: var(--font-primary);
    font-size: 13px;
    line-height: 130%;
    font-weight: 500;
    position: relative;
    top: 2px;
}

#contact-page .working-hours {
    margin-bottom: 12px;
    border-radius: 6px 6px 6px 0;
    background: #F9F9F9;
    padding: 19px 41px 18px 29px;
    display: flex;
    gap: 23px;
}

#contact-page .working-hours i {
    display: block;
    font-size: 33px;
    color: var(--primary);
    position: relative;
    top: 9px;
}

#contact-page .working-hours div {
    font-family: var(--font-secondary);
    color: var(--content);
    font-size: 16px;
    line-height: 150%;
}

#contact-page .working-hours .dementi {
    margin-top: 7px;
    color: #757575;
    font-family: var(--font-primary);
    font-size: 13px;
    font-weight: 500;
    line-height: 130%;
}

#contact-page .company-info {
}

#contact-page .company-info ul {
    display: flex;
    gap: 13px;
}

#contact-page .company-info ul li {
}

#contact-page .company-info {
    margin-bottom: 15px;
    border-radius: 6px 6px 6px 0;
    background: #F9F9F9;
    padding: 20px 40px 12px 29px;
    font-family: var(--font-secondary);
    font-size: 16px;
    line-height: 150%;
    color: var(--content);
}

#contact-page .global-dementi {
    font-size: 14px;
}

#contact-page .priority {
    display: flex;
    gap: 12px;
    margin-bottom: 12px;
    align-items: stretch;
}

#contact-page .priority .address {
    box-sizing: border-box;
    width: 285px;
    border-radius: 6px 6px 6px 0;
    background: #F9F9F9;
    padding: 18px 25px 18px 18px;
    gap: 21px;
    display: flex;
}

#contact-page .priority .address i {
    display: block;
    font-size: 45px;
    color: var(--primary);
    position: relative;
    top: 15px;
}

#contact-page .priority .address div {
    font-family: var(--font-secondary);
    color: var(--content);
    font-size: 16px;
    line-height: 150%;
}

#contact-page .priority .address a:hover {
    text-decoration: none;
}

#contact-page .priority .address a {
    font-weight: 600;
    color: var(--primary);
    text-decoration: underline;
    display: inline-block;
    vertical-align: top;
    margin-top: 2px;
}

#contact-page .tel {
    flex: 1;
    box-sizing: border-box;
    border-radius: 6px 6px 6px 0;
    background: #F9F9F9;
    display: flex;
    align-items: center;
    gap: 27px;
    padding-left: 19px;
    padding-right: 16px;
}

#contact-page .tel i {
    display: block;
    font-size: 42px;
    color: var(--primary);
}

#contact-page .tel div {
    color: #757575;
    font-family: var(--font-primary);
    font-size: 13px;
    line-height: 130%;
    font-weight: 500;
}

#contact-page .tel a:hover span {
    color: var(--primary);
}

#contact-page .tel a {
    display: inline-block;
    vertical-align: top;
    margin-bottom: 2px;
    font-family: var(--font-secondary);
    color: var(--content);
    line-height: 150%;
    font-size: 16px;
    font-weight: 600;
}

#contact-page .tel a span {
    text-decoration: underline;
    transition-duration: 0.3s;
}

.header-banner {
    margin-top: 15px;
    margin-bottom: 100px;
}

.header-banner .inner {
    max-width: 1500px;
    padding: 0;
}

.header-banner .wrapper {
    height: 568px;
    overflow: hidden;
    border-radius: 0 8px 8px 0;
    position: relative;
}

.header-banner .content {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    height: 100%;
    width: 100%;
}

.header-banner .ov {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.header-banner .ov:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    background: black;
    opacity: 0.45;
}

.header-banner .ov img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.header-banner .container {
    position: relative;
    z-index: 20;
    color: white;
    max-width: 1350px;
    padding: 0 15px;
    margin: 0 auto;
    width: 100%;
    box-sizing: border-box;
}

.header-banner .content .upper-title {
    font-family: var(--font-secondary);
    font-size: 19px;
    line-height: 150%;
    font-weight: 700;
    margin-bottom: 1px;
    display: block;
}

.header-banner .content .title {
    font-family: var(--font-primary);
    font-size: 42px;
    font-weight: 700;
    line-height: 135%;
    margin-bottom: 21px;
    max-width: 50%;
}

.header-banner .content .styled-content {
    max-width: 50%;
    font-size: 19px;
}

.header-banner .content .styled-content p:has(br) {
    line-height: 0.7;
}

.header-banner .button-wrapper {
    margin-top: 21px;
    position: relative;
    display: inline-flex;
    vertical-align: top;
}

.header-banner .button.fill.green.icon {
}

.header-banner .button.fill.green.icon span {
}

.header-banner .button.fill.green.icon-circle-arrow-left i {
}

.header-banner .button.fill.green.icon-circle-arrow-left span {
}

.header-banner .form-container {
    width: 584px;
    box-sizing: border-box;
    color: white;
    background: var(--primary);
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding-left: 62px;
    padding-right: 43px;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    z-index: 300;
}

.header-banner .form-container .title {
    text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.25);
    font-size: 25px;
    line-height: 135%;
    font-weight: normal;
    font-family: var(--font-primary);
    margin-bottom: 20px;
}

.header-banner .form-container .title strong {
    display: block;
    font-size: 28px;
    margin-bottom: 3px;
}

.header-banner .contact-form-wrapper {
    position: relative;
}

#estate-content {
}

#estate-content .inner {
    max-width: 1330px;
    padding: 0;
    border: 2px solid var(--primary);
}

#estate-content .container {
    padding: 37px 63px 38px;
}

#estate-content .title {
    max-width: 900px;
    font-family: var(--font-primary);
    color: var(--headlines);
    font-size: 32px;
    font-weight: 700;
    line-height: 135%;
    margin-bottom: 24px;
}

#estate-content .styled-content {
    max-width: 830px;
}

#free-estate ~ #why-us {
    margin-bottom: 103px;
}

#free-estate ~ #opinion {
}

#free-estate ~ #contact-banner {
    margin-top: 83px;
    margin-bottom: 74px;
}

#free-estate ~ #additional-content {
    margin-top: 55px;
}

#free-estate ~ #partners {
}

#services {
    margin-bottom: 70px;
}

#services .inner {
}

#services .wrapper {
}

#services .content {
}

#services .ov {
}

#services .ov img {
}

#services .container {
}

#services .container .upper-title {
}

#services .container .title {
    margin-bottom: 18px;
}

#services .container .styled-content {
}

#services .container .button-wrapper {
}

#services .container .button-wrapper .button.fill.green.icon {
}

#services .container .button-wrapper .button.fill.green.icon span {
}

#services .container .button-wrapper .button.fill.green.icon em {
}

#services .container .button-wrapper .button.fill.green.icon i {
}

#services .form-container {
    background: var(--headlines);
}

#services .form-container .title {
}

#services .form-container .title strong {
    color: var(--primary);
}

#services .form-container .contact-form-wrapper {
}

#services ~ #why-us {
    margin-bottom: 73px;
}

#services ~ #service-content {
}

.service-additional-content {
    margin-bottom: 60px;
}

.service-additional-content .inner {
}

.service-additional-content .inner > .wrapper {
}

.service-additional-content .content {
}

.service-additional-content .styled-content {
    font-size: 15px;
    font-weight: 500;
    font-family: var(--font-primary);
    margin-bottom: 30px;
}

.service-additional-content .standard-section-title {
    margin-bottom: 18px;
    justify-content: center;
    text-align: center;
}

.service-additional-content .standard-section-title .wrapper {
}

.service-additional-content .standard-section-title .title {
}

#services ~ #services-teams {
    margin-top: 80px;
}

#services ~ #service-banner {
}

#services ~ #leave-contact-section {
    margin-bottom: 68px;
}

#services ~ #opinion {
}

#services ~ #additional-content {
    margin-top: 60px;
}

#services ~ #partners {
}

#why-us.service-attributes {
}

#why-us.service-attributes #why-attributes {
    justify-content: space-around;
}

#why-us.service-attributes #why-attributes .attribute {
}

#why-us.service-attributes #why-attributes .attribute .ov {
}

#why-us.service-attributes #why-attributes .attribute .ov img {
}

#why-us.service-attributes #why-attributes .attribute .title {
}

#why-us.service-attributes #why-attributes .attribute .content {
}

#service-content {
    margin-bottom: 77px;
}

#service-content .inner {
}

#service-content .wrapper {
    display: flex;
    align-items: center;
    gap: 90px;
}

#service-content .ov {
    width: 555px;
    overflow: hidden;
    border-radius: 4px;
    position: relative;
    min-height: 350px;
    align-self: stretch;
}

#service-content .ov img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

#service-content .content {
    flex: 1;
}

#service-content .standard-section-title {
    margin-bottom: 18px;
}

#service-content .styled-content {
    max-width: 600px;
    font-size: 15px;
    font-weight: 500;
    font-family: var(--font-primary);
    margin-bottom: 30px;
}

#service-content .button-wrapper {
}

#service-content .button.fill.primary.icon {
}

#service-content .button.fill.primary.icon span {
}

#service-content .button.fill.primary.icon em {
}

#service-content .button.fill.primary.icon i {
}

#services-teams {
    margin-bottom: 61px;
}

#services-teams #service-team {
}

#services-teams .inner {
}

#services-teams .standard-section-title {
    margin-bottom: 56px;
}

#service-team {
    grid-column-gap: 252px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-row-gap: 40px;
    position: relative;
}

#service-team .floating-logo {
    position: absolute;
    pointer-events: none;
    width: 172px;
    height: auto;
    left: 50%;
    top: 50%;
    translate: -50% -50%;
}

#service-team .team-person {
    display: flex;
    align-items: center;
    gap: 29px;
}

#service-team .team-person .member {
    font-family: var(--font-primary);
    flex: 1;
}

#service-team .team-person .name {
    font-size: 16px;
    line-height: 20px;
    font-weight: bold;
    color: var(--headlines);
    margin-bottom: 4px;
}

#service-team .team-person .experience {
    color: #797979;
    font-size: 15px;
    font-weight: normal;
    line-height: 18px;
}

#service-team .team-person .ov {
    overflow: hidden;
    border: 15px solid white;
    border-radius: 50%;
    width: 236px;
    aspect-ratio: 1 / 1;
    box-shadow: 5px 5px 15px 0 rgba(0, 0, 0, 0.05);
}

#service-team .team-person .ov img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

#service-team .team-person:nth-child(even) {
    flex-direction: row-reverse;
    justify-content: flex-end;
}

#service-team .team-person:nth-child(even) .member {
    text-align: left;
}

#service-team .team-person:nth-child(even) .name {
}

#service-team .team-person:nth-child(even) .experience {
}

#service-team .team-person:nth-child(even) .ov {
}

#service-team .team-person:nth-child(even) .ov img {
}

#service-team .team-person:nth-child(odd) {
    justify-content: flex-end;
}

#service-team .team-person:nth-child(odd) .member {
    text-align: right;
}

#service-team .team-person:nth-child(odd) .name {
}

#service-team .team-person:nth-child(odd) .experience {
}

#service-team .team-person:nth-child(odd) .ov {
}

#service-team .team-person:nth-child(odd) .ov img {
}


#service-banner {
    margin-bottom: 36px;
}

#service-banner .inner {
}

#service-banner .wrapper {
    position: relative;
    align-items: center;
    display: flex;
    box-sizing: border-box;
    border: 2px solid var(--primary);
    padding-left: 42px;
    padding-right: 49px;
    height: 90px;
    justify-content: space-between;
}

#service-banner .content {
    display: flex;
    align-items: center;
    gap: 25px;
}

#service-banner .content i {
    display: block;
    font-size: 45px;
    color: var(--primary);
}

#service-banner .content .title {
    font-family: var(--font-primary);
    color: var(--headlines);
    font-weight: bold;
    font-size: 28px;
    line-height: 135%;
}

#service-banner .content .title strong {
    color: var(--primary);
}

#service-banner .button-wrapper {
}

#service-banner .button.fill.icon.button {
}

#service-banner .button.fill.icon.button span {
}

#service-banner .button.fill.icon.button em {
}

#service-banner .button.fill.icon.button i {
}

#about-header {
    margin-bottom: 42px;
    margin-top: 15px;
}

#about-header .inner {
    max-width: 1500px;
    padding: 0;
}

#about-header .wrapper {
    height: 568px;
    overflow: hidden;
    position: relative;
    display: flex;
    box-sizing: border-box;
    padding-bottom: 123px;
    align-items: flex-end;
}

#about-header .ov {
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#about-header .ov img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

#about-header .ov:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    background: black;
    opacity: 0.45;
}

#about-header .content {
    z-index: 20;
    max-width: 1350px;
    margin: 0 auto;
    position: relative;
    box-sizing: border-box;
    padding: 0 15px;
    width: 100%;
    color: white;
}

#about-header .title {
    font-family: var(--font-primary);
    width: 570px;
    font-size: 42px;
    font-weight: 700;
    line-height: 135%;
}

#about-header .styled-content {
    margin-top: 21px;
    font-size: 19px;
}

#about-header ~ #why-us {
    margin-bottom: 130px;
}

#about-header ~ #why-us .standard-section-title {
    display: none !important;
}

#about-us.full-content {
    padding: 0;
    margin-bottom: 41px;
}

#about-us.full-content:after {
    display: none;
}

#about-us.full-content > .inner > .wrapper {
    padding-left: 48px;
    gap: 90px;
}

#about-us.full-content .ov.standard-photo {
    width: 555px;
}

#about-us.full-content .ov.standard-photo img {
}

#about-us.full-content .content {
}

#about-us.full-content .standard-section-title {
}

#about-us.full-content .styled-content {
}

#about-us.full-content .counters {
}

#about-us.full-content .gallery {
}

#company-team {
    padding-top: 75px;
    background: var(--gray);
    padding-bottom: 105px;
}

#company-team .inner {
}

#company-team .standard-section-title {
    margin-bottom: 56px;
}

#company-team .members {
    max-width: 872px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-row-gap: 22px;
    grid-column-gap: 29px;
}

#company-team .member {
    text-align: center;
}

#company-team .member .ov {
    box-shadow: 5px 5px 15px 0 rgba(0, 0, 0, 0.05);
    border: 10px solid white;
    border-radius: 50%;
    overflow: hidden;
    margin-bottom: 16px;
}

#company-team .member .ov img {
    display: block;
    width: 175px;
    height: 175px;
    object-fit: cover;
    object-position: center;
}

#company-team .member .name {
    font-family: var(--font-primary);
    font-weight: bold;
    color: var(--headlines);
    font-size: 16px;
    line-height: 20px;
    margin-bottom: 4px;
}

#company-team .member .position {
    font-family: var(--font-primary);
    color: #797979;
    font-size: 15px;
    line-height: 18px;
}

#company-team ~ #opinion {
    margin-top: 75px;
    margin-bottom: 60px;
}

#company-team ~ #opinion .standard-section-title {
    display: none;
}

#certificates {
}

#certificates {
    background: #F2F2F2;
    padding-top: 46px;
    padding-bottom: 86px;
}

#certificates .inner {
}

#certificates .standard-section-title {
    margin-bottom: 53px;
}

#certificates .items {
    grid-column-gap: 36px;
    grid-row-gap: 34px;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
}

#certificates .items .ov {
    overflow: hidden;
    height: 332px;
}

#certificates .items .ov:hover img {
    scale: 1.05;
}

#certificates .items .ov img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition-duration: 0.3s;
    scale: 1.0;
}

#certificates ~ #leave-contact-section {
    margin-bottom: 90px;
}

#certificates ~ #leave-contact-section:after {
    content: '';
    position: absolute;
    top: 0;
    height: 50%;
    left: 0;
    width: 100%;
    background: #F2F2F2;
    z-index: -1;
    pointer-events: none;
}

#about-header ~ #additional-content {
}

#about-header ~ #partners {
}

#product-header ~ #opinion {
    margin-top: 94px;
}

#product-header ~ #why-us {
    margin-top: 96px;
}

#product-header ~ #leave-contact-section {
    margin-bottom: 0;
    margin-top: 70px;
}

#product-header ~ #additional-content {
    margin-top: 87px;
}

#product-header ~ #partners {
}

#product-header {
    margin-top: 15px;
}

#product-header .inner {
    max-width: 1550px;
    padding: 0;
}

#product-header .wrapper {
    position: relative;
    height: 568px;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
}

#product-header .ov {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#product-header .ov img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

#product-header .ov:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: black;
    opacity: 0.35;
}

#product-header .content {
    width: 100%;
    z-index: 20;
    position: relative;
    max-width: 1350px;
    padding: 0 15px;
    margin: 0 auto 43px;
    color: white;
}

#product-header .title {
    font-family: var(--font-primary);
    font-weight: 700;
    font-size: 42px;
    line-height: 135%;
    max-width: 750px;
}

#product-header .styled-content {
    margin-top: 9px;
    font-size: 19px;
    max-width: 540px;
}

#product-header .button-wrapper {
    justify-content: end;
    margin-top: 5px;
}

#product-header .button.fill.primary.icon {
}

#product-header .button.fill.primary.icon i {
}

#product-header .button + .button {
}

#product-header #breadcrumbs {
    margin-bottom: 15px;
}

#product-header #breadcrumbs ul {
}

#product-header #breadcrumbs ul li {
}

#product-header #breadcrumbs ul li a:hover {
    text-decoration: underline;
}

#product-header #breadcrumbs ul li a {
    color: white;
}

#product-header #breadcrumbs ul li span {
    color: white;
}

#product-header #breadcrumbs ul li:after {
    color: white;
}

#product-gallery {
    margin-top: 87px;
}

#product-gallery .inner {
}

#product-gallery .wrapper {
    display: flex;
    gap: 98px;
    align-items: flex-start;
}

#product-gallery .slider {
    width: 564px;
}

#product-gallery .content {
    flex: 1;
    max-width: 600px;
    margin-top: 80px;
}

.special-product-meta-header {
    margin-bottom: 23px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.special-product-meta-header .sale {
    color: #E40000;
    font-size: 21px;
    font-weight: 700;
    line-height: 135%;
    font-family: var(--font-primary);
}

.special-product-meta-header .regular {
    font-size: 21px;
    font-weight: 700;
    color: #797979;
}

.special-product-meta-header .discount {
    margin-left: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    width: 60px;
    height: 34px;
    background: #E40000;
    border-radius: 8px 8px 8px 0;
    font-weight: 600;
    font-family: var(--font-primary);
    font-size: 15px;
}

.special-product-meta-header .sale + .regular {
    font-weight: 500;
    font-family: var(--font-primary);
    font-size: 16px;
    line-height: 135%;
    color: #797979;
    text-decoration: line-through;
}

#product-gallery .content.sliderless {
    max-width: 100%;
}

#product-gallery .standard-section-title {
    margin-bottom: 18px;
}

#product-gallery .styled-content {
    font-family: var(--font-primary);
    font-size: 15px;
    font-weight: 500;
}

#product-gallery .button-wrapper {
    margin-top: 30px;
}

#product-gallery .button.outline.icon.black {
    height: 54px;
    padding: 0 38px;
}

#product-gallery .button.outline.icon.black i {
}

#product-slider {
    width: 564px;
    height: 460px;
    box-sizing: border-box;
    border: 2px solid #f0f0f0;
    overflow: hidden;
    position: relative;
}

#product-slider ul {
}

#product-slider ul li {
}

#product-slider ul li .product-slider-item,
#product-slider ul li .product-slider-item a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 560px;
    height: 456px;
    background: white;
    position: relative;
}

#product-slider ul li .product-slider-item a:after {
    position: absolute;
}

#product-slider ul li .product-slider-item a:after {
    z-index: 20;
    color: white;
    font-size: 88px;
    text-shadow: 0 0 10px black;
}

#product-slider ul li .product-slider-item img {
    max-height: 393px;
    max-width: 370px;
    object-fit: contain;
    display: block;
    width: 100%;
    height: 100%;
    object-position: center;
}

#product-slider ul li .product-slider-item video {
}

#product-slider-buttons i {
    cursor: pointer;
    width: 30px;
    height: 30px;
    font-size: 25px;
    display: flex;
    align-items: center;
    color: #797979;
}

#product-slider-buttons {
    position: absolute;
    width: 71px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    top: 30px;
    right: 15px;
    z-index: 200;
}

#product-slider-nav {
    margin-right: -6px;
    margin-top: 14px;
    height: 144px;
    overflow: hidden;
    position: relative;
    margin-left: -6px;
}

#product-slider-nav ul {
}

#product-slider-nav ul li {
}

#product-slider-nav ul li .product-slider-nav-item {
    width: 177px;
    height: 144px;
    box-sizing: border-box;
    margin: 0 auto;
    border: 2px solid #f0f0f0;
    display: flex;
    align-items: center;
    cursor: pointer;
    justify-content: center;
}

#product-slider-nav ul li .product-slider-nav-item:hover img {
    scale: 1.05;
}

#product-slider-nav ul li .product-slider-nav-item img {
    width: 70%;
    height: 70%;
    object-fit: contain;
    object-position: center;
    cursor: pointer;
    transition-duration: 0.3s;
    scale: 1.0;
}

#product-attributes {
    margin-top: 113px;
}

#product-attributes .inner {
}

#product-attributes .standard-section-title {
    margin-bottom: 32px;
}

#product-attributes .standard-section-title .title {
}

#product-attributes .standard-section-title .subtitle {
    margin-top: 0;
}

#product-attributes > .inner > .wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    position: relative;
    grid-column-gap: 539px;
    grid-row-gap: 22px;
    min-height: 477px;
    align-content: center;
}

#product-attributes .item {
    background: #f9f9f9;
    padding: 39px 45px 35px;
}

#product-attributes .item:nth-child(even) {
    text-align: left;
}

#product-attributes .item:nth-child(odd) {
    text-align: right;
}

#product-attributes .item .name {
    text-transform: uppercase;
    font-weight: 700;
    font-family: var(--font-primary);
    font-size: 15px;
    line-height: 150%;
    margin-bottom: 13px;
    color: var(--content);
}

#product-attributes .item .styled-content {
    font-size: 13px;
    line-height: 135%;
    font-weight: 500;
}

#product-attributes .ov {
    position: absolute;
    width: 463px;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
}

#product-attributes .ov img {
    max-height: 477px;
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center;
}

#product-tabs {
    margin-top: 96px;
    background: #F9F9F9;
    padding-top: 22px;
    padding-bottom: 65px;
}

#product-tabs + #promo-video {
    margin-top: 0 !important;
}

#product-tabs + #promo-video:after {
    content: '';
    pointer-events: none;
    z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background: #F9F9F9;
}

#product-header ~ #promo-video {
    margin-top: 87px;
}

#product-tabs .inner {
}

#tab-nav {
    display: flex;
    border-bottom: 1px solid #e7e7e7;
    padding: 0 27px;
    font-family: var(--font-primary);
    font-size: 15px;
    font-weight: 700;
    line-height: 18px;
    margin-bottom: 44px;
}

#tab-nav ul {
    gap: 54px;
    display: flex;
    margin-bottom: -1px;
}

#tab-nav ul li {
}

#tab-nav ul li a {
    display: block;
    padding: 24px 12px;
    border-bottom: 1px solid #e7e7e7;
    transition-duration: 0.3s;
}


#tab-nav ul li.current a,
#tab-nav ul li:hover a {
    color: var(--primary);
    border-bottom-color: var(--primary);
}

#tab-contents {
    position: relative;
    overflow: hidden;
}

#tab-contents .tab-content {
    position: relative;
}

#tab-contents .styled-content {
    max-width: 1100px;
    font-family: var(--font-primary);
    font-size: 15px;
    font-weight: 500;
}

#tab-contents .styled-content:has(.column-wrapper) {
    max-width: 100%;
}

#tab-contents .styled-content table tr td:nth-last-child(n+2):nth-last-child(-n+2):first-child {
    text-align: right;
    padding-right: 38px;
    min-width: 360px;
    width: auto !important;
}

#tab-contents .styled-content table tr td:nth-last-child(n+2):nth-last-child(-n+2):first-child ~ td {
    min-width: 280px;
    text-align: left;
    width: auto !important;
}


#tab-contents .styled-content table tr td {
}


#tab-contents .styled-content p:has(br) {
    line-height: 180%;
}

#product-header ~ #promo-video .video-wrapper a:after {
    content: '';
    position: absolute;
    pointer-events: none;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    background: black;
    opacity: 0.45;
}

#additional-products {
    margin-top: 96px;
}

#additional-products .inner {
}

#additional-products .standard-section-title {
    margin-bottom: 50px;
}

.additional-products-container {
}

.additional-products-container .category-name {
    display: flex;
    align-items: center;
    gap: 37px;
    font-family: var(--font-primary);
    font-size: 26px;
    line-height: 135%;
    font-weight: 500;
    color: var(--headlines);
    margin-bottom: 33px;
}

.additional-products-container .category-name:after {
    content: '';
    display: flex;
    flex: 1;
    height: 1px;
    background: #e0e0e0;
}

.additional-products-container ~ .additional-products-container {
    margin-top: 25px;
}

.additional-products-container .products-wrapper {
}

.product-item.additional {
    height: 359px;
    display: flex;
    flex-direction: column;
    padding-bottom: 25px;
}

.product-item.additional .title {
    min-height: 50px;
    margin-top: 36px;
    margin-bottom: 16px;
}

.product-item.additional .ov {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.product-item.additional .ov img {
    max-height: 100%;
    width: auto;
    height: auto;
    max-width: calc(100% - 40px);
    object-fit: contain;
    object-position: center;
}

#product-slogan-banner {
    margin-top: 87px;
}

#product-slogan-banner .inner {
}

#product-slogan-banner .wrapper {
    position: relative;
    overflow: hidden;
    height: 511px;
    border-radius: 8px 8px 8px 0;
    display: flex;
    align-items: center;
}

#product-slogan-banner .ov {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
}

#product-slogan-banner .ov:after {
    content: '';
    background: linear-gradient(270deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.50) 100%);
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
}

#product-slogan-banner .ov img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

#product-slogan-banner .content {
    padding: 0 112px;
    color: white;
    position: relative;
    z-index: 20;
}

#product-slogan-banner .title {
    max-width: 670px;
    font-size: 34px;
    font-family: var(--font-primary);
    line-height: 135%;
    font-weight: normal;
    text-shadow: 6px 6px 6px rgba(0, 0, 0, 0.25);
}

#product-slogan-banner .button-wrapper {
    margin-top: 29px;
}

#product-slogan-banner .button-wrapper .button.fill.white.icon {
}

#product-slogan-banner .button-wrapper .button.fill.white.icon i {
}

#featured-slogan {
    margin-top: 22px;
}

#featured-slogan .inner {
}

#featured-slogan .wrapper {
    background: var(--primary);
    text-align: center;
    border-radius: 0 8px 8px 0;
    padding: 45px 50px 33px;
}

#featured-slogan .styled-content {
    max-width: 810px;
    margin: 0 auto;
    font-size: 18px;
    color: white;
    line-height: 170%;
}

#product-realizations {
    margin-top: 73px;
    overflow: hidden;
}

#product-realizations .inner {
}

#product-realizations .standard-section-title {
    margin-bottom: 56px;
}

#product-realizations > .inner > .wrapper {
    height: 291px;
    position: relative;
}

#product-realizations .nav-buttons {
    position: absolute;
    width: 30px;
    height: 30px;
    top: 50%;
    margin-top: -15px;
    font-size: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #797979;
}

#product-realizations-slider {
    position: relative;
    overflow: hidden;
    height: 291px;
    margin-left: -15px;
    margin-right: -15px;
}

#product-realizations-slider ul {
}

#product-realizations-slider ul li {
    float: left;
    box-sizing: border-box;
    padding: 0 15px;
}

#product-realizations-slider ul li .realization-item {
    height: 291px;
    max-width: 420px;
    margin: 0 auto;
}

#product-realizations-slider ul li .realization-item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

#product-realizations-slider-nav-prev {
    left: -48px;
}

#product-realizations-slider-nav-next {
    right: -48px;
}

#not-found {
    padding: 110px 0;
    display: flex;
    flex-direction: column;
    text-align: center;
}

#not-found .inner {
}

#not-found .section-title {
    font-family: var(--font-primary);
    color: var(--headlines);
    line-height: 1;
    font-size: 150px;
    font-weight: 300;
    margin-bottom: 0;
}

#not-found .section-overview {
    margin-bottom: 40px;
    font-family: var(--font-primary);
    color: var(--headlines);
    line-height: 1;
    font-size: 50px;
}

#not-found .button-wrapper {
    justify-content: center;
}

#not-found .button-wrapper .button.icon.priority.fill {
}

#not-found .button-wrapper .button.icon.priority.fill i {
}

#normal-page.header-page {
}

#normal-page.header-page #content-header {
}

#normal-page.header-page #content-header .title {
}

#normal-page.header-page .inner {
}

#normal-page.header-page .styled-content {
    margin-top: 80px;
    margin-bottom: 100px;
}

.header-banner .contact-form-wrapper .form-wrapper {
}

.header-banner .contact-form-wrapper .field {
    margin-bottom: 22px;
    position: relative;
}

.header-banner .contact-form-wrapper .field .wpcf7-form-control-wrap {
}

.header-banner .contact-form-wrapper .field .wpcf7-form-control-wrap input {
    display: block;
    border-radius: 8px;
    height: 50px;
    padding: 0 27px;
    font-family: var(--font-secondary);
    font-size: 15px;
    font-weight: 600;
    color: var(--content);
    border: none;
    width: 100%;
    box-sizing: border-box;
}

.header-banner .contact-form-wrapper .wpcf7-not-valid-tip {
    font-size: 11px;
    position: absolute;
    right: 10px;
    top: 20px;
    font-weight: 500;
}

.header-banner .contact-form-wrapper .agreement {
}

.header-banner .contact-form-wrapper .agreement .wpcf7-form-control-wrap {
    display: block;
}

.header-banner .contact-form-wrapper .agreement .wpcf7-form-control-wrap .wpcf7-form-control {
    display: block;
}

.header-banner .contact-form-wrapper .agreement .wpcf7-form-control-wrap .wpcf7-list-item {
    display: block;
    margin: 0;
}

.header-banner .contact-form-wrapper .agreement .wpcf7-form-control-wrap .wpcf7-list-item label {
    display: flex;
    gap: 11px;
    align-items: flex-start;
}

.header-banner .contact-form-wrapper .agreement .wpcf7-form-control-wrap .wpcf7-list-item label input {
    display: block;
    border: none;
    width: 16px;
    height: 16px;
    border-radius: 4px;
    margin: 0;
}

.header-banner .contact-form-wrapper .agreement .wpcf7-form-control-wrap .wpcf7-list-item label span {
    flex: 1;
    font-size: 12px;
    line-height: 150%;
    font-weight: 600;
    font-family: var(--font-secondary);
    max-width: 90%;
}

.header-banner .contact-form-wrapper br {
    display: none;
}

#free-estate.header-banner .contact-form-wrapper .button-wrapper:after {
    color: var(--headlines);
}

#free-estate.header-banner .contact-form-wrapper .button-wrapper:hover:after {
    color: white;
}

.header-banner .contact-form-wrapper .button-wrapper:after {
    position: absolute;
    width: 24px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    right: 20px;
    top: 0;
    transition-duration: 0.3s;
}

.header-banner .contact-form-wrapper .button-wrapper input.button.fill.primary.icon,
.header-banner .contact-form-wrapper .button-wrapper input.button.fill.white.icon {
    border: none;
    box-shadow: 20px 20px 25px 0 rgba(0, 0, 0, 0.25);
    padding-right: 58px;
}

.header-banner .contact-form-wrapper .wpcf7-spinner {
    position: absolute;
    margin: 0;
    top: 10px;
    left: calc(100% + 15px);
}

.header-banner .contact-form-wrapper .wpcf7-response-output {
    position: absolute;
    margin: 0;
    top: calc(100% + 30px);
    font-size: 14px;
    line-height: 135%;
    border: none;
    padding: 0;
}


#leave-contact .contact-form .form-wrapper {
}

#leave-contact .contact-form .field {
    margin-bottom: 22px;
    position: relative;
}

#leave-contact .contact-form .field .wpcf7-form-control-wrap {
}

#leave-contact .contact-form .field .wpcf7-form-control-wrap input {
    display: block;
    border-radius: 8px;
    height: 50px;
    padding: 0 27px;
    font-family: var(--font-secondary);
    font-size: 15px;
    font-weight: 600;
    color: var(--content);
    border: none;
    width: 100%;
    box-sizing: border-box;
}

#leave-contact .contact-form .wpcf7-not-valid-tip {
    font-size: 11px;
    position: absolute;
    right: 10px;
    top: 20px;
    font-weight: 500;
}

#leave-contact .contact-form .agreement {
    margin-bottom: 28px;
}

#leave-contact .contact-form .button-wrapper {
    position: relative;
    display: inline-flex;
    vertical-align: top;
}

#leave-contact .contact-form .button-wrapper:after {
}

#leave-contact .contact-form .button-wrapper:hover:after {
    color: white;
}

#leave-contact .contact-form .button-wrapper:hover input {
}

#leave-contact .contact-form .agreement .wpcf7-form-control-wrap {
    display: block;
}

#leave-contact .contact-form .agreement .wpcf7-form-control-wrap .wpcf7-form-control {
    display: block;
}

#leave-contact .contact-form .agreement .wpcf7-form-control-wrap .wpcf7-list-item {
    display: block;
    margin: 0;
}

#leave-contact .contact-form .agreement .wpcf7-form-control-wrap .wpcf7-list-item label {
    display: flex;
    gap: 11px;
    align-items: flex-start;
}

#leave-contact .contact-form .agreement .wpcf7-form-control-wrap .wpcf7-list-item label input {
    display: block;
    border: none;
    width: 16px;
    height: 16px;
    border-radius: 4px;
    margin: 0;
}

#leave-contact .contact-form .agreement .wpcf7-form-control-wrap .wpcf7-list-item label span {
    flex: 1;
    font-size: 12px;
    line-height: 150%;
    font-weight: 600;
    font-family: var(--font-secondary);
    max-width: 90%;
}

#leave-contact .contact-form br {
    display: none;
}

#free-estate#leave-contact .contact-form .button-wrapper:after {
    color: var(--headlines);
}

#leave-contact .contact-form .button-wrapper:after {
    position: absolute;
    width: 24px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    right: 20px;
    top: 0;
    color: var(--headlines);
    transition-duration: 0.3s;
}

#leave-contact .contact-form .button-wrapper input.button.fill.primary.icon,
#leave-contact .contact-form .button-wrapper input.button.fill.white.icon {
    border: none;
    box-shadow: 20px 20px 25px 0 rgba(0, 0, 0, 0.25);
    padding-right: 58px;
}

#leave-contact .contact-form .wpcf7-spinner {
    position: absolute;
    margin: 0;
    top: 10px;
    left: calc(100% + 15px);
}

#leave-contact .contact-form .wpcf7-response-output {
    margin: 20px 0 0 0;
    font-size: 13px;
    line-height: 135%;
    border: none;
    padding: 0;
}

.inline-leave-contact .leave-form .form-wrapper {
    display: flex;
    flex-wrap: wrap;
    column-gap: 14px;
    row-gap: 14px;
}

.inline-leave-contact .leave-form .field {
    position: relative;
    order: 1;
    flex: 1;
}

.inline-leave-contact .leave-form .field .wpcf7-form-control-wrap {
}

.inline-leave-contact .leave-form .field .wpcf7-form-control-wrap input.wpcf7-not-valid {
    outline: 2px solid rgb(255 0 0);
}

.inline-leave-contact .leave-form .field .wpcf7-form-control-wrap input {
    display: block;
    border-radius: 8px;
    height: 50px;
    padding: 0 27px;
    font-family: var(--font-secondary);
    font-size: 15px;
    font-weight: 600;
    color: var(--content);
    border: none;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
}

.inline-leave-contact .leave-form .wpcf7-not-valid-tip {
    display: none !important;
}

.inline-leave-contact .leave-form .agreement {
    order: 3;
    width: 100%;
}

.inline-leave-contact .leave-form .button-wrapper {
    position: relative;
    display: inline-flex;
    vertical-align: top;
    order: 2;
}

.inline-leave-contact .leave-form .button-wrapper:after {
}

.inline-leave-contact .leave-form .button-wrapper:hover:after {
    color: white;
}

.inline-leave-contact .leave-form .button-wrapper:hover .button {
    background: var(--headlines) !important;
    color: white;
}

.inline-leave-contact .leave-form .agreement .wpcf7-form-control-wrap {
    display: block;
}

.inline-leave-contact .leave-form .agreement .wpcf7-form-control-wrap .wpcf7-form-control {
    display: block;
}

.inline-leave-contact .leave-form .agreement .wpcf7-form-control-wrap .wpcf7-list-item {
    display: block;
    margin: 0;
}

.inline-leave-contact .leave-form .agreement .wpcf7-form-control-wrap .wpcf7-list-item label {
    display: flex;
    gap: 11px;
    align-items: flex-start;
}

.inline-leave-contact .leave-form .agreement .wpcf7-form-control-wrap .wpcf7-list-item label input {
    display: block;
    border: none;
    width: 16px;
    height: 16px;
    border-radius: 4px;
    margin: 0;
}

.inline-leave-contact .leave-form .agreement .wpcf7-form-control-wrap .wpcf7-list-item label span {
    flex: 1;
    font-size: 12px;
    line-height: 150%;
    font-weight: 600;
    font-family: var(--font-secondary);
    max-width: 90%;
}

.inline-leave-contact .leave-form br {
    display: none;
}

#free-estate.inline-leave-contact .leave-form .button-wrapper:after {
    color: var(--headlines);
}

.inline-leave-contact .leave-form .button-wrapper:after {
    position: absolute;
    width: 24px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    right: 20px;
    top: 0;
    color: var(--headlines);
    transition-duration: 0.3s;
}

.inline-leave-contact .leave-form .button-wrapper input.button.fill.primary.icon,
.inline-leave-contact .leave-form .button-wrapper input.button.fill.white.icon {
    border: none;
    box-shadow: 20px 20px 25px 0 rgba(0, 0, 0, 0.25);
    padding-right: 58px;
    background: #FFCD5C;
}

.inline-leave-contact .leave-form .wpcf7-spinner {
    position: absolute;
    margin: 0;
    top: 10px;
    left: calc(100% + 15px);
}

.inline-leave-contact .leave-form .wpcf7-response-output {
    margin: 0;
    font-size: 13px;
    line-height: 135%;
    border: none;
    padding: 0;
    position: absolute;
    top: calc(100% + 14px);
    text-align: center;
    width: 100%;
    left: 0;
}

#contact-page .contact-form-container .contact-form .form-wrapper {
}

#contact-page .contact-form-container .contact-form .field {
    margin-bottom: 15px;
    position: relative;
}

#contact-page .contact-form-container .contact-form .field .wpcf7-form-control-wrap {
}

#contact-page .contact-form-container .contact-form .field .wpcf7-form-control-wrap input,
#contact-page .contact-form-container .contact-form .field .wpcf7-form-control-wrap textarea {
    display: block;
    border-radius: 8px;
    height: 50px;
    padding: 0 27px;
    font-family: var(--font-secondary);
    font-size: 15px;
    font-weight: 600;
    color: var(--content);
    border: none;
    width: 100%;
    box-sizing: border-box;
}

#contact-page .contact-form-container .contact-form .field .wpcf7-form-control-wrap textarea {
    height: 138px;
    resize: none;
    box-sizing: border-box;
    padding-top: 17px;
    padding-bottom: 17px;
}

#contact-page .contact-form-container .contact-form .wpcf7-not-valid-tip {
    font-size: 11px;
    position: absolute;
    right: 10px;
    top: 20px;
    font-weight: 500;
}

#contact-page .contact-form-container .contact-form .agreement {
    margin-bottom: 28px;
}

#contact-page .contact-form-container .contact-form .button-wrapper {
    position: relative;
    display: inline-flex;
    vertical-align: top;
}

#contact-page .contact-form-container .contact-form .button-wrapper:hover:after {
    color: var(--headlines);
}

#contact-page .contact-form-container .contact-form .button-wrapper:hover .button {
    background: var(--gray);
    color: var(--headlines);
}

#contact-page .contact-form-container .contact-form .button-wrapper:after {
}

#contact-page .contact-form-container .contact-form .agreement .wpcf7-form-control-wrap {
    display: block;
}

#contact-page .contact-form-container .contact-form .agreement .wpcf7-form-control-wrap .wpcf7-form-control {
    display: block;
}

#contact-page .contact-form-container .contact-form .agreement .wpcf7-form-control-wrap .wpcf7-list-item {
    display: block;
    margin: 0;
}

#contact-page .contact-form-container .contact-form .agreement .wpcf7-form-control-wrap .wpcf7-list-item label {
    display: flex;
    gap: 11px;
    align-items: flex-start;
}

#contact-page .contact-form-container .contact-form .agreement .wpcf7-form-control-wrap .wpcf7-list-item label input {
    display: block;
    border: none;
    width: 16px;
    height: 16px;
    border-radius: 4px;
    margin: 0;
}

#contact-page .contact-form-container .contact-form .agreement .wpcf7-form-control-wrap .wpcf7-list-item label span {
    flex: 1;
    font-size: 12px;
    line-height: 150%;
    font-weight: 600;
    font-family: var(--font-secondary);
    max-width: 90%;
}

#contact-page .contact-form-container .contact-form br {
    display: none;
}

#free-estate#contact-page .contact-form-container .contact-form .button-wrapper:after {
    color: var(--headlines);
}

#contact-page .contact-form-container .contact-form .button-wrapper:after {
    position: absolute;
    width: 24px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    right: 20px;
    top: 0;
    color: white;
    transition-duration: 0.3s;
}

#contact-page .contact-form-container .contact-form .button-wrapper input.button.fill.primary.icon,
#contact-page .contact-form-container .contact-form .button-wrapper input.button.fill.white.icon {
    border: none;
    box-shadow: 20px 20px 25px 0 rgba(0, 0, 0, 0.25);
    padding-right: 58px;
}

#contact-page .contact-form-container .contact-form .wpcf7-spinner {
    position: absolute;
    margin: 0;
    top: 10px;
    left: calc(100% + 15px);
}

#contact-page .contact-form-container .contact-form .wpcf7-response-output {
    margin: 20px 0 0 0;
    font-size: 13px;
    line-height: 135%;
    border: none;
    padding: 0;
}

#floating-phone:hover:after {
    width: 100%;
}

#floating-phone:after {
    content: '';
    position: absolute;
    top: 0;
    width: 0;
    height: 100%;
    left: 65px;
    background: #02AC43;
    z-index: -1;
    transition-duration: 0.5s;
    pointer-events: none;
}

#floating-phone {
    box-shadow: 5px 5px 35px 0 rgba(0, 0, 0, 0.25);
    position: fixed;
    z-index: 90000;
    background: var(--primary);
    color: white;
    border-radius: 6px 6px 6px 0;
    height: 61px;
    display: flex;
    align-items: center;
    gap: 14px;
    overflow: hidden;
    bottom: 40px;
    right: 40px;
    padding-right: 25px;
}

#floating-phone i {
    display: flex;
    width: 65px;
    height: 100%;
    align-items: center;
    justify-content: center;
    font-size: 36px;
    background: #02AC43;
    border-radius: 6px 6px 6px 0;
}

#floating-phone div {
    flex: 1;
    font-family: var(--font-primary);
    font-size: 14px;
    font-weight: 600;
    line-height: 17px;
}

#floating-phone div strong {
    display: block;
    font-size: 21px;
    line-height: 26px;
    font-weight: 700;
    white-space: nowrap;
}

.colors-wrapper {
}

.configurator-wrapper {
    margin-top: 50px;
}

.configurator-wrapper iframe {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
}

.colors-wrapper .color-category:last-child {
    border: none;
    margin: 0;
    padding: 0;
}

.colors-wrapper .color-category {
    margin-bottom: 20px;
    border-bottom: 1px solid #272727;
    padding-bottom: 20px;
}

.colors-wrapper .color-category .color-category-name {
    display: flex;
    cursor: pointer;
    height: 50px;
    align-items: center;
    justify-content: space-between;
}

.colors-wrapper .color-category .color-category-name .name {
    font-family: var(--font-primary);
    color: var(--headlines);
    font-size: 21px;
    font-weight: 600;
    transition-duration: 0.3s;
}

.colors-wrapper .color-category .color-category-name i {
    position: relative;
    width: 25px;
    height: 25px;
    display: flex;
    color: var(--primary);
    align-items: center;
    justify-content: center;
    font-size: 16px;
    rotate: 0deg;
    transition-duration: 0.3s;
}

.colors-wrapper .color-category.active .color-category-name .name,
.colors-wrapper .color-category .color-category-name:hover .name {
    color: var(--primary);
}

.colors-wrapper .color-category.active .color-category-name i {
    rotate: -180deg;
}

.colors-wrapper .color-category-content {
    padding-bottom: 20px;
}

.colors-wrapper .color-category-content .styled-content {
    margin-bottom: 20px;
    margin-top: 10px;
}

.colors-wrapper .color-category-content .styled-content + .color-category-items {
    margin-top: 0
}

.colors-wrapper .color-category-content .color-category-items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    margin-top: 30px;
}

.colors-wrapper .color-category-content .color-category-items .color-item {
    background: #e7e7e7;
}

.colors-wrapper .color-category-content .color-category-items .color-item:hover img {
    scale: 1.05;
}

.colors-wrapper .color-category-content .color-category-items .color-item .color-name {
    font-family: var(--font-primary);
    color: var(--headlines);
    font-size: 18px;
    font-weight: 500;
    line-height: 150%;
    padding: 15px 20px;
}

.colors-wrapper .color-category-content .color-category-items .color-item .ov {
    overflow: hidden;
}

.colors-wrapper .color-category-content .color-category-items .color-item .ov a {
}

.colors-wrapper .color-category-content .color-category-items .color-item .ov img {
    display: block;
    aspect-ratio: 536 / 256;
    width: 100%;
    object-fit: cover;
    object-position: center;
    transition-duration: 0.3s;
}

#main-menu > div > ul > li.menu-item-has-children {
    margin-right: -10px;
}

#main-menu > div > ul > li.menu-item-has-children > a {
    padding-right: 0;
}

#main-menu > div > ul > li.menu-item-has-children > a:after {
    display: flex;
    width: 24px;
    height: 24px;
    justify-content: center;
    align-items: center;
    font-size: 10px;
    color: var(--primary);
}

#main-menu > div > ul > li.menu-item-has-children:hover #product-menu {
    pointer-events: all;
    opacity: 1;
    translate: 0 0;
}

#product-menu {
    position: absolute;
    z-index: 500;
    background: white;
    box-shadow: 5px 5px 25px 0 rgba(0, 0, 0, 0.15);
    width: 903px;
    left: 15px;
    top: calc(100% - 5px);
    box-sizing: border-box;
    padding: 37px 69px 50px 25px;
    min-height: calc(275px + 37px + 50px);
    display: flex !important;
    pointer-events: none;
    transition-duration: 0.3s;
    translate: 0 10%;
    opacity: 0;
}

#product-menu .placeholder {
    flex: 1;
}

#product-menu div {
    width: calc(25px + 230px);
    margin-right: 25px;
}

#product-menu div ul {
}

#product-menu div ul li:last-child {
    margin-bottom: 0;
}

#product-menu div ul li {
    margin-bottom: 18px;
}

#product-menu div ul li a {
    display: flex;
    gap: 7px;
    font-family: var(--font-primary);
    color: var(--headlines);
    font-weight: bold;
    line-height: 135%;
    font-size: 15px;
    transition-duration: 0.3s;
}

#product-menu div ul li.current-menu-item a span,
#product-menu div ul li:hover a span {
    text-decoration: underline;
}

#product-menu div ul li a:before {
    display: flex;
    width: 18px;
    height: 18px;
    align-items: center;
    justify-content: center;
    color: var(--primary);
    font-size: 12px;
    transition-duration: 0.3s;
    flex: 18px 0 0;
}

#product-menu div ul li a .ov {
    position: absolute;
    top: 52px;
    right: 69px;
    width: 254px;
    height: 275px;
    transition-duration: 0.3s;
    opacity: 0;
    pointer-events: none;
    background: white;
}

#product-menu div ul li a .ov img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

#product-menu div ul li.current-menu-item a,
#product-menu div ul li:hover a {
    color: var(--primary);
}

#product-menu div ul li.current-menu-item a:before,
#product-menu div ul li:hover a:before {
    color: var(--headlines);
    text-decoration: none;
}

#product-menu div ul li:hover a .ov {
    opacity: 1;
}

#services.header-banner .button-wrapper .button.fill.primary:hover {
    background: var(--gray);
    color: var(--headlines);
}

#services.header-banner .button-wrapper:hover {
    color: var(--headlines);
}

/** KALKULATOR **/

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance: textfield;
}

#calculator-page {
    position: relative;
}

#calculator-wrapper .inner {
}

#calculator-wrapper .header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 21px;
}

#calculator-wrapper .section-title {
    color: var(--headlines);
    font-family: var(--font-primary);
    font-size: 45px;
    line-height: 54px;
    font-weight: bold;
}

#calculator-wrapper .section-title strong {
    color: var(--primary);
    font-weight: normal;
}

#calculator-wrapper .remainder:hover {
    background: rgb(237 237 237 / 50%);
}

#calculator-wrapper .remainder:hover:after {
    color: #F59C00;
}

#calculator-wrapper .remainder {
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    position: relative;
    height: 81px;
    justify-content: center;
    align-items: flex-start;
    border: 1px solid var(--primary);
    width: 415px;
    padding-left: 88px;
    line-height: 21px;
    font-size: 16px;
    font-family: var(--font-primary);
    color: var(--headlines);
    cursor: pointer;
    transition-duration: 0.3s;
}

#calculator-wrapper {
    position: relative;
    opacity: 0;
    pointer-events: none;
}

#calculator-wrapper.visible {
    opacity: 1;
    pointer-events: all;
    transition: opacity 0.3s ease;
}

#calculator-wrapper-loader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100vh - 270px);
    min-height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition-duration: 0.3s;
    pointer-events: all;
    z-index: 200;
    opacity: 1;
}

#calculator-wrapper-loader.hide {
    pointer-events: none;
    opacity: 0;
}

#calculator-wrapper-loader > div {
    transform: scale(2);
}

.lds-ring {
    display: inline-block;
    position: relative;
    width: 80px;
    height: 80px;
}

.lds-ring div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 64px;
    height: 64px;
    margin: 8px;
    border: 8px solid var(--primary);
    border-radius: 50%;
    animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: var(--primary) transparent transparent transparent;
}

.lds-ring div:nth-child(1) {
    animation-delay: -0.45s;
}

.lds-ring div:nth-child(2) {
    animation-delay: -0.3s;
}

.lds-ring div:nth-child(3) {
    animation-delay: -0.15s;
}

@keyframes lds-ring {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

#calculator-wrapper .remainder:before {
    content: '';
    position: absolute;
    pointer-events: none;
    display: block;
    width: 41.7px;
    height: 100%;
    background: url('imgs/calculator-small.svg') no-repeat center / 100% 100%;
    top: 0;
    left: 21px;
}

#calculator-wrapper .remainder .title {
    font-weight: bold;
    font-size: 18px;
}

#calculator-wrapper .remainder:after {
    position: absolute;
    font-size: 15px;
    color: var(--primary);
    right: 29px;
    font-weight: bold;
    height: 100%;
    display: flex;
    align-items: center;
    pointer-events: none;
    transition-duration: 0.3s;
}

#calculator-wrapper .remainder .empty {
}

#calculator-wrapper .stepper {
    display: flex;
    height: 60px;
    width: 100%;
    font-family: var(--font-primary);
}

#calculator-wrapper .nav {
    display: flex;
    flex: 1;
    gap: 3px;
}

#calculator-wrapper .nav .item {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    color: white;
    background: var(--primary);
    font-size: 15px;
    font-weight: bold;
    position: relative;
    padding-left: 45px;
}

#calculator-wrapper .nav .item::before {
    content: '';
    pointer-events: none;
    left: 17px;
    top: 0;
    height: 100%;
    width: 18px;
    position: absolute;
    display: block;
    background: url('imgs/step.svg') no-repeat center / 100% auto;
}

#calculator-wrapper .nav .item.current {
    background: #006BA2;
}

#calculator-wrapper .nav .item.current::before {
    background-image: url('imgs/step-selected.svg');
}

#calculator-wrapper .nav .item.last {
}

#calculator-wrapper .switcher {
    width: 147px;
    position: relative;
    background: #EDEDED;
}

#calculator-wrapper .switcher .arrow:hover {
    color: var(--primary);
}

#calculator-wrapper .switcher .arrow {
    display: flex;
    width: 34px;
    height: 100%;
    top: 0;
    position: absolute;
    align-items: center;
    justify-content: center;
    background: #E3E3E3;
    font-size: 24px;
    color: #006BA2;
    cursor: pointer;
    transition-duration: 0.3s;
}

#calculator-wrapper .switcher .arrow i {
}

#calculator-wrapper .switcher .arrow.prev {
    left: 0;
}

#calculator-wrapper .switcher .arrow.next {
    right: 0;
}

#calculator-wrapper .switcher .label {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    height: 100%;
    pointer-events: none;
    color: #F59C00;
    font-size: 21px;
    font-weight: bold;
    line-height: 1;
}

#calculator-wrapper .switcher .label strong {
    font-size: 28px;
    color: #006BA2;
}

#calculator-wrapper .product-items-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 22px;
    margin-top: 24px;
    row-gap: 18px;
    margin-bottom: 0;
}

#calculator-wrapper .product-overview {
    position: relative;
    box-sizing: border-box;
    height: 445px;
    border: 1px solid #DEDEDE;
    cursor: pointer;
}

#calculator-wrapper .product-overview .title {
    position: absolute;
    top: 62px;
    width: 100%;
    box-sizing: border-box;
    left: 0;
    padding: 0 25px;
    text-align: center;
    color: #2E2E2D;
    font-family: var(--font-primary);
    font-weight: bold;
    font-size: 21px;
    line-height: 31px;
}

#calculator-wrapper .product-overview .ov {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding-top: 60px;
}

#calculator-wrapper .product-overview .ov img {
    display: block;
    max-width: 80%;
    max-height: 80%;
    width: auto;
    height: auto;
}

#calculator-wrapper .product-overview .ov i {
    position: absolute;
    width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary);
    color: white;
    box-shadow: 6px 6px 12px rgb(0 0 0 / 12%);
    font-size: 30px;
    transition-duration: 0.3s;
    opacity: 0;
}

#calculator-wrapper .buttons .button.invert, #calculator-form-container .form-wrapper .button.invert {
    background: #f59c00;
}

#calculator-wrapper .buttons .button.invert:hover, #calculator-form-container .form-wrapper .button.invert:hover {
    background: var(--primary);
}

#calculator-page .wpcf7-spinner {
    position: absolute;
    margin: 0;
    top: 15px;
    left: calc(100% + 15px);
}

#calculator-wrapper .buttons .button, #calculator-form-container .form-wrapper .button {
    display: flex;
    cursor: pointer;
    align-items: center;
    gap: 22px;
    height: 55px;
    padding-left: 32px;
    color: white;
    padding-right: 25px;
    background: var(--primary);
    font-family: var(--font-primary);
    text-transform: uppercase;
    font-weight: 500;
    font-size: 15px;
    text-shadow: 0 3px 6px rgb(0 0 0 / 16%);
    box-shadow: 6px 6px 12px rgb(0 0 0 / 16%);
    position: relative;
    transition-duration: 0.3s;
    border: none;
}

#calculator-wrapper .buttons .button:hover {
    background: #f59c00;
}

#calculator-wrapper .product-overview .buttons {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 28px;
    justify-content: center;
    transition-duration: 0.3s;
    opacity: 0;
    display: flex;
    gap: 18px;
}

#calculator-wrapper .product-overview .button {
    font-size: 16px;
    width: 177px;
    box-sizing: border-box;
    padding-left: 50px;
    gap: 35px;
}

#calculator-wrapper .product-overview .button i {
    font-size: 17.5px;
}

#calculator-wrapper .product-overview.current .buttons {
    opacity: 1
}

#calculator-wrapper .product-overview:hover .ov i,
#calculator-wrapper .product-overview.current .ov i {
    opacity: 1
}

#calculator-page .bottom-content {
    font-family: var(--font-primary);
}

#calculator-page .bottom-content .title {
    color: #2E2E2D;
    font-size: 32px;
    font-weight: bold;
    line-height: 36px;
    margin-bottom: 46px;
}

#calculator-page .bottom-content .desc {
    font-family: var(--font-primary);
    color: var(--content);
}

#calculator-wrapper .product-colors-wrapper {
    margin-top: 62px;
}

#calculator-wrapper .color-kind {
}

#calculator-wrapper .color-kind .title {
    font-family: var(--font-primary);
    font-weight: bold;
    font-size: 24px;
    line-height: 26px;
    color: var(--headlines);
    margin-bottom: 27px;
}

#calculator-wrapper .color-type-nav {
    display: flex;
    gap: 23px;
    flex-wrap: wrap;
    margin-bottom: 65px;
}

#calculator-wrapper .color-type-nav li {
    cursor: pointer;
    padding-left: 32px;
    font-family: var(--content);
    font-size: 15px;
    line-height: 18px;
    background: url('imgs/color-type-standard.svg') no-repeat left center / auto 100%;
}

#calculator-wrapper .color-type-nav li::before {
    will-change: color;
}

#calculator-wrapper .color-type-nav li.current::before {
}

#calculator-wrapper .color-type-nav li.current {
    background-image: url('imgs/color-type-selected.svg');
}

#calculator-wrapper .color-nav {
    margin-bottom: 35px;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 15px;
}

#calculator-wrapper .color-wrapper {
    box-sizing: border-box;
    border: 1px solid #DEDEDE;
    padding: 34px 25px 26px;
    cursor: pointer;
}

#calculator-wrapper .color-wrapper.current .ov > i,
#calculator-wrapper .color-wrapper:hover .ov > i {
    opacity: 1;
}

#calculator-wrapper .color-wrapper .name {
    font-family: var(--font-primary);
    font-size: 21px;
    font-weight: bold;
    text-align: center;
    line-height: 25px;
    margin-bottom: 21px;
}

#calculator-wrapper .color-wrapper .ov {
    position: relative;
}

#calculator-wrapper .color-wrapper.current.complete .buttons {
    opacity: 1
}

#calculator-wrapper .color-wrapper .buttons {
    position: absolute;
    bottom: -13px;
    width: 100%;
    padding: 0 6px;
    box-sizing: border-box;
    justify-content: center;
    transition-duration: 0.3s;
    opacity: 0;
}

#calculator-wrapper .color-wrapper .button {
    box-sizing: border-box;
    width: 100%;
    font-size: 16px;
    padding-left: 50px;
    gap: 35px;
}

#calculator-wrapper .color-wrapper .button i {
    font-size: 17.5px;
}

#calculator-wrapper .color-wrapper .ov > i {
    position: absolute;
    width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary);
    color: white;
    box-shadow: 6px 6px 12px rgb(0 0 0 / 12%);
    font-size: 30px;
    transition-duration: 0.3s;
    top: 41px;
    left: 50%;
    opacity: 0;
    transform: translateX(-50%);
}

#calculator-wrapper .color-wrapper .ov img {
    display: block;
    width: 100%;
    height: auto;
}

#calculator-wrapper .types-container {
    margin-top: 62.5px;
}

#calculator-wrapper .types-items-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 22px;
    row-gap: 18px;
}

#calculator-wrapper .types-container > .title {
    margin-bottom: 54px;
    color: var(--headlines);
    font-family: var(--font-primary);
    font-weight: bold;
    font-size: 24px;
    line-height: 26px;
}

#calculator-wrapper .type-item {
    position: relative;
    box-sizing: border-box;
    height: 445px;
    border: 1px solid #DEDEDE;
    cursor: pointer;
}

#calculator-wrapper .type-item .title {
    position: absolute;
    top: 62px;
    width: 100%;
    box-sizing: border-box;
    left: 0;
    padding: 0 25px;
    text-align: center;
    color: #2E2E2D;
    font-family: var(--font-primary);
    font-weight: bold;
    font-size: 21px;
    line-height: 31px;
    z-index: 2;
}

#calculator-wrapper .type-item .ov {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding-top: 60px;
}

#calculator-wrapper .type-item .ov img {
    display: block;
    max-width: 95%;
    max-height: 95%;
    width: auto;
    height: auto;
}

#calculator-wrapper .type-item .ov > i {
    position: absolute;
    width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary);
    color: white;
    box-shadow: 6px 6px 12px rgb(0 0 0 / 12%);
    font-size: 30px;
    transition-duration: 0.3s;
    opacity: 0;
    margin-top: -30px;
}

#calculator-wrapper .type-item .buttons {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 28px;
    justify-content: center;
    transition-duration: 0.3s;
    opacity: 0;
    display: flex;
}

#calculator-wrapper .type-item .button {
    width: 177px;
    box-sizing: border-box;
    padding-left: 50px;
    gap: 35px;
}

#calculator-wrapper .type-item .button i {
    font-size: 17.5px;
}

#calculator-wrapper .type-item.current .buttons {
    opacity: 1
}

#calculator-wrapper .type-item:hover .ov > i,
#calculator-wrapper .type-item.current .ov > i {
    opacity: 1;
}

#calculator-wrapper .sizes-wrapper {
    margin-top: 57px;
    font-family: var(--font-primary);
}

#calculator-wrapper .sizes-wrapper .title {
    color: var(--headlines);
    font-size: 24px;
    font-weight: bold;
    line-height: 26px;
    margin-bottom: 86px;
}

#calculator-wrapper .sizes-wrapper .container {
    display: flex;
    gap: 125px;
}

#calculator-wrapper .sizes-wrapper .ov {
    padding: 0 97px;
    width: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#calculator-wrapper .sizes-wrapper .ov img {
    display: block;
    width: 100%;
    max-height: 340px;
    height: 100%;
    object-fit: contain;
}

#calculator-wrapper .sizes-wrapper .sizes {
    width: 415px;
}

#calculator-wrapper .size-item {
    position: relative;
    margin-bottom: 22.4px;
    display: block;
}

#calculator-wrapper .size-item .label {
    color: var(--content);
    font-weight: bold;
    font-size: 15px;
    line-height: 18px;
    margin-bottom: 10px;
}

.menu-buttons, #menu-close, #menu-icon {
    display: none;
}

#calculator-wrapper .size-item .hint {
    font-size: 15px;
    line-height: 18px;
    color: #B3B3B3;
    margin-bottom: 10px;
}

#calculator-wrapper .size-item .field-wrapper {
    position: relative;
}

#calculator-wrapper .size-item .field-wrapper::before {
    content: '';
    position: absolute;
    width: 34.55px;
    height: 34.55px;
    pointer-events: none;
    right: calc(100% + 18px);
    top: 50%;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% 100%;
}

#calculator-wrapper .size-item .field-wrapper::after {
    content: "mm";
    position: absolute;
    right: 17px;
    pointer-events: none;
    font-size: 15px;
    color: #B3B3B3;
    top: 50%;
    line-height: 1;
    transform: translateY(-50%);
}

#calculator-wrapper .size-item.width .field-wrapper::before {
    background-image: url('imgs/width.svg');
}

#calculator-wrapper .size-item.width .field-wrapper::after {
}

#calculator-wrapper .size-item.height .field-wrapper::before {
    background-image: url('imgs/height.svg');
}

#calculator-wrapper .size-item.height .field-wrapper::after {
    content: '';
}

#calculator-wrapper .size-item.invalid .field-wrapper input,
#calculator-wrapper .quantity-item.invalid input {
    border-color: red;
}

#calculator-wrapper .size-item .field-wrapper input {
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: 53px;
    border: 1px solid #E7E7E7;
    padding-left: 30px;
    font-size: 15px;
    font-family: var(--font-primary);
    color: var(--content);
    line-height: 1;
}

#calculator-wrapper .bottom-buttons {
    margin-top: 29px;
    display: flex;
    align-items: flex-end;
    gap: 67px;
}

#calculator-wrapper .bottom-buttons .buttons {
    position: relative;
    top: -1px;
}

#calculator-wrapper .bottom-buttons .button {
    width: 177px;
    box-sizing: border-box;
    padding-left: 50px;
    font-size: 16px;
    gap: 27px;
    padding-right: 0;
}

#calculator-wrapper .bottom-buttons .button i {
    font-size: 17.5px
}

#calculator-wrapper .quantity-item {
    display: block;
}

#calculator-wrapper .quantity-item .label {
    color: var(--content);
    font-family: var(--font-primary);
    font-size: 15px;
    line-height: 18px;
    font-weight: bold;
    margin-bottom: 13px;
}

#calculator-wrapper .quantity-item .field-wrapper {
    display: flex;
    width: 171px;
    height: 53px;
}

#calculator-wrapper .quantity-item .btn:hover {
    background: #e3e3e3;
}

#calculator-wrapper .quantity-item .btn {
    display: flex;
    width: 38px;
    background: #EEEEEE;
    align-items: center;
    justify-content: center;
    font-size: 17px;
    font-weight: bold;
    color: var(--content);
    font-family: var(--font-primary);
    cursor: pointer;
    transition-duration: 0.3s;
}

#calculator-wrapper .quantity-item .btn.sup {
}

#calculator-wrapper .quantity-item .btn.add {
}

#calculator-wrapper .quantity-item input {
    flex: 1;
    box-sizing: border-box;
    width: 94px;
    text-align: center;
    border: 1px solid #E7E7E7;
    padding: 0;
    font-family: var(--font-primary);
    font-size: 15px;
    color: var(--content);
}

#calculator-wrapper .summary-wrapper {
    margin-top: 57px;
    font-family: var(--font-primary);
}

#calculator-wrapper .summary-wrapper > .title {
    color: var(--headlines);
    font-weight: bold;
    font-size: 24px;
    line-height: 26px;
    margin-bottom: 51px;
}

#calculator-wrapper .summary-wrapper table {
    width: 100%;
}

#calculator-wrapper .summary-wrapper thead {
}

#calculator-wrapper .summary-wrapper thead tr {
}

#calculator-wrapper .summary-wrapper thead tr th {
    text-align: left;
    color: #006BA2;
    font-size: 14px;
    font-weight: bold;
    line-height: 15px;
    padding-bottom: 9px;
    border-bottom: 1px solid #DDDDDD;
    box-sizing: border-box;
}

#calculator-wrapper .summary-wrapper table .order {
    padding-left: 17px;
    width: 93px;
}

#calculator-wrapper .summary-wrapper table .type {
    width: 190px;
    box-sizing: border-box;
}

#calculator-wrapper .summary-wrapper table .config {
    width: 400px;
}

#calculator-wrapper .summary-wrapper table .sizes {
    width: 180px;
}

#calculator-wrapper .summary-wrapper table .quantity {
    width: 190px;
}

#calculator-wrapper .summary-wrapper table .actions {
    width: 160px;
}

#calculator-wrapper .summary-wrapper table tbody tr td .label {
    display: none;
}

#calculator-wrapper .summary-wrapper tbody {
}

#calculator-wrapper .summary-wrapper tbody tr {
}

#calculator-wrapper .summary-wrapper tbody td {
    vertical-align: middle;
    padding: 25px 0;
    border-bottom: 1px solid #DDDDDD;
}

#calculator-wrapper .summary-wrapper tbody tr:last-child td {
}

#calculator-wrapper .summary-wrapper tbody td.order {
    color: var(--content);
    font-size: 14px;
    font-weight: 500;
}

#calculator-wrapper .summary-wrapper tbody td.type {
}

#calculator-wrapper .summary-wrapper tbody td.config {
    font-size: 14px;
    line-height: 17px;
    padding-right: 40px;
    box-sizing: border-box;
    color: var(--content);
}

#calculator-wrapper .summary-wrapper tbody td.sizes {
    color: var(--content);
    font-size: 14px;
}

#calculator-wrapper .summary-wrapper tbody td.quantity {
    color: var(--content);
    font-size: 14px;
}

#calculator-wrapper .summary-wrapper tbody td.actions {
}

#calculator-wrapper .summary-wrapper table .ov {
}

#calculator-wrapper .summary-wrapper table .ov img {
    display: block;
    height: 100px;
    width: auto;
    max-width: 80%;
    object-fit: contain;
}

#calculator-wrapper .summary-wrapper table strong {
}

#calculator-wrapper .summary-wrapper table .edit:hover {
    border-color: #F59C00;
}

#calculator-wrapper .summary-wrapper table .edit {
    border: 02px solid #008EDC;
    height: 25px;
    display: flex;
    align-items: center;
    width: 73px;
    box-sizing: border-box;
    text-align: center;
    justify-content: center;
    background: none;
    font-family: var(--font-primary);
    font-weight: 500;
    text-transform: uppercase;
    font-size: 12px;
    cursor: pointer;
    transition-duration: 0.3s;
}

#calculator-wrapper .summary-wrapper table .remove:hover {
    background: #91010a;
}

#calculator-wrapper .summary-wrapper table .remove {
    background: #D9000D;
    border-radius: 50%;
    border: none;
    display: flex;
    width: 25px;
    height: 25px;
    align-items: center;
    justify-content: center;
    line-height: 1;
    color: white;
    font-size: 10.1px;
    cursor: pointer;
    transition-duration: 0.3s;
}

#calculator-wrapper .summary-wrapper table .buttons {
    display: flex;
    gap: 16px;
}

#calculator-wrapper .summary-wrapper .no-items {
    text-align: center;
    padding: 40px 0;
    font-weight: bold;
    font-size: 18px;
    color: var(--content);
}

#calculator-wrapper .summary-wrapper .table-actions {
    margin-top: 27px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 23px;
}

#calculator-wrapper .summary-wrapper .table-actions .buttons {
}

#calculator-wrapper .summary-wrapper .table-actions .button {
}

#calculator-wrapper .summary-wrapper .table-actions .total-info {
    background: #EFEFEF;
    display: block;
    height: 55px;
    align-items: center;
    justify-content: center;
    width: 280px;
    font-family: var(--font-primary);
    font-size: 18px;
    color: #2E2E2D;
    text-transform: lowercase;
    font-weight: bold;
    line-height: 55px;
    text-align: center;
}

#calculator-wrapper .summary-wrapper .table-actions .total-info strong {
}

#calculator-wrapper .summary-wrapper .table-actions .total-info .sep {
}

#calculator-wrapper .summary-wrapper .table-actions .total-info .sep::before {
    content: ", ";
}

#calculator-page .form-container {
    margin: 42px auto 0;
    box-sizing: border-box;
    border: 3px solid #0090DF;
    padding: 56px 398px 55px 75px;
    font-family: var(--font-primary);
    max-width: 1130px;
}

#calculator-page .form-container .section-title {
}

#calculator-page .form-container .section-title strong {
    font-weight: normal;
    color: var(--primary);
}

#calculator-page .form-container .desc {
}

#calculator-page .form-container .form-wrapper {
    position: relative;
}

#calculator-page .form-container .form-wrapper:after {
    content: '';
    width: 200px;
    height: 200px;
    pointer-events: none;
    background: url('imgs/calculator-big.svg') no-repeat center / 100% 100%;
    position: absolute;
    display: block;
    top: 18px;
    left: calc(100% + 100px);
}

#calculator-form-container.visible {
}

#calculator-form-container:not(.visible) {
    display: none;
}

#calculator-form-container .section-title {
    color: var(--headlines);
    font-weight: bold;
    line-height: 54px;
    font-size: 45px;
    margin-bottom: 10px;
}

#calculator-form-container .section-title strong {
    font-weight: normal;
    color: var(--primary);
}

#calculator-form-container .desc {
    color: var(--content);
    line-height: 21px;
    margin-bottom: 21px;
}

#calculator-form-container .form-wrapper {
}

#calculator-form-container .form-wrapper br {
}

#calculator-form-container .form-wrapper .cell {
    flex: 1;
}

#calculator-form-container .form-wrapper .wpcf7-list-item {
    display: block;
    margin: 0;
}

#calculator-form-container .form-wrapper .wpcf7-list-item label {
    display: flex;
    gap: 15px;
    align-items: center;
}

#calculator-form-container .form-wrapper .wpcf7-list-item label span {
    font-size: 13px;
    line-height: 16px;
    color: var(--content);
}

#calculator-form-container .form-wrapper .wpcf7-list-item label input {
    height: 21px;
    margin: 0;
    width: 21px;
}

#calculator-form-container .form-wrapper .wpcf7-form-control:not(.wpcf7-acceptance):not(.wpcf7-submit) {
    display: block;
    box-sizing: border-box;
    width: 100%;
    border: 1px solid #E7E7E7;
    padding-left: 27px;
    padding-right: 28px;
    font-family: var(--font-primary);
    font-size: 15px;
    color: var(--content);
}

#calculator-form-container .form-wrapper .wpcf7-not-valid-tip {
    font-size: 13px;
    margin-top: 5px;
}

#calculator-form-container .form-wrapper .wpcf7-form-control.wpcf7-text {
    height: 53px;
}

#calculator-form-container .form-wrapper .wpcf7-form-control.wpcf7-textarea {
    resize: none;
    overflow: auto;
    padding-top: 27px;
    padding-bottom: 27px;
    height: 160px;
}

#calculator-form-container .form-wrapper .row {
    display: flex;
    gap: 15px;
    margin-bottom: 10.5px;
}

#calculator-form-container .form-wrapper .row.config {
    display: none;
}

#calculator-form-container .form-wrapper .row.terms {
    margin-bottom: 42px;
}

#calculator-form-container .form-wrapper .row.textarea {
    margin-bottom: 17.5px;
}

#calculator-form-container .form-wrapper .buttons {
    flex-direction: row-reverse;
    position: relative;
    justify-content: flex-start;
    align-items: center;
    gap: 0;
    display: flex;
}

#calculator-form-container .form-wrapper .buttons:after {
    position: absolute;
    pointer-events: none;
    top: 50%;
    transform: translateY(-50%);
    color: white;
    right: 26px;
    font-size: 17.5px;
}

#calculator-form-container .form-wrapper .button {
    position: relative;
    padding-right: 90px;
    font-size: 16px;
    box-sizing: border-box;
    padding-left: 40px;
}

#calculator-form-container .form-wrapper .wpcf7-response-output {
    margin: 20px 0 0 0;
    text-align: center;
    font-family: var(--font-primary);
    padding: 10px;
    border: 2px solid #e7e7e7;
}

/*KALKULATOR*/

#calculate-header {
    overflow: hidden;
    position: relative;
    margin-top: 15px;
    margin-bottom: 100px;
}

#calculate-header .inner {
    height: 177px;
    max-width: 1550px;
    padding: 0;
}

#calculate-header .ov {
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#calculate-header .ov:after {
    content: '';
    background: black;
    opacity: 0.35;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
}

#calculate-header .ov img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

#calculate-header .content {
    display: flex;
    max-width: 1350px;
    padding: 0 15px;
    box-sizing: border-box;
    margin: 0 auto;
    height: 100%;
    z-index: 20;
    position: relative;
    color: white;
    flex-direction: column;
    justify-content: center;
}

#calculate-header .content h1 {
    line-height: 66px;
    font-size: 42px;
    font-weight: 700;
    font-family: var(--font-primary);
}

#calculate-header #breadcrumbs {
    margin-bottom: 15px;
}

#calculate-header #breadcrumbs ul {
}

#calculate-header #breadcrumbs ul li {
}

#calculate-header #breadcrumbs ul li a {
    color: white;
}

#calculate-header #breadcrumbs ul li:after {
    color: white;
}

#calculate-header #breadcrumbs ul li span {
    color: white;
}

#calculator-page {
    padding-bottom: 120px;
}

#calculator-page ~ #additional-content {
    margin: 0;
}

#calculator-page ~ #partners {
}

#calculator-page ~ #footer {
}

#fancy ~ #leave-contact-section {
    margin-top: 80px;
}

.section-content + .section-content {
    margin-top: 108px;
}

.section-content {

}

.section-content .inner {
}

.section-content .wrapper {
}

.section-content .inner > .wrapper {
}

.section-content .content {
}

.section-content .standard-section-title {
    margin-bottom: 27px;
    justify-content: center;
    text-align: center;
}

.section-content .standard-section-title .wrapper {
}

.section-content .standard-section-title .wrapper .title {
}

.section-content .styled-content {
}

.section-content .styled-content .button-wrapper {
}

.section-content.with-image {
}

.section-content.with-image .inner {
}

.section-content.with-image .wrapper {
}

.section-content.with-image .ov {
    width: 42%;
}

.section-content.with-image .ov img {
    width: 100%;
    display: block;
}

.section-content.with-image .inner > .wrapper {
    display: flex;
    gap: 90px;
}

.section-content.with-image .content {
    flex: 1;
    padding-top: 20px;
    max-width: 600px;
}

.section-content.with-image .standard-section-title {
    margin-bottom: 18px;
    justify-content: flex-start;
    text-align: left;
}

.section-content.with-image .standard-section-title .wrapper {
}

.section-content.with-image .standard-section-title .wrapper .title {
}

.section-content.with-image .styled-content {
    font-size: 15px;
}

.section-content.with-image .styled-content .button-wrapper {
    margin-top: 10px;
}

#fancy.header-banner {
    margin-bottom: 75px;
    margin-top: 0;
}

#fancy.header-banner .inner {
    max-width: 1320px;
}

#fancy.header-banner .wrapper {
    height: 500px;
    display: flex;
}

#fancy.header-banner .content {
    width: 50%;
    background: #272727;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    box-sizing: border-box;
    padding: 0 74px;
}

#fancy.header-banner .container {
    padding: 0;
}

#fancy.header-banner .title {
    max-width: 100%;
    font-weight: 500;
    margin-bottom: 13px;
}

#fancy.header-banner .styled-content {
    max-width: 100%;
    font-size: 15px;
    line-height: 21px;
    font-weight: 500;
}

#fancy.header-banner .ov-fancy {
    width: 50%;
}

#fancy.header-banner .ov-fancy img {
    width: 100%;
    height: 500px;
    object-fit: cover;
    object-position: center;
}

#fancy.header-banner.blue {
}

#fancy.header-banner.blue .inner {
}

#fancy.header-banner.blue .wrapper {
}

#fancy.header-banner.blue .content {
    background: var(--primary);
}

#fancy.header-banner.blue .container {
}

#fancy.header-banner.blue .title {
}

#fancy.header-banner.blue .styled-content {
}

#fancy.header-banner.blue .ov-fancy {
}

#fancy.header-banner.blue .ov-fancy img {
}

@media screen and (max-width: 1300px) and (min-width: 951px) {
    #main-menu > div > ul {
        gap: 5px;
    }

    #main-menu > div > ul > li > a {
        padding: 15px 10px;
        gap: 0;
    }

    #product-menu {
        display: block !important;
        padding-left: 30px;
        padding-right: 30px;
        width: 60vw;
    }

    #product-menu div {
        margin: 0;
        width: 50%;
    }

    #product-menu div ul li a .ov {
        width: 45% !important;
        right: 20px;
    }
}

@media screen and (max-width: 1199px) and (min-width: 951px) {
    .products-wrapper {
        grid-template-columns: repeat(3, 1fr);
    }

    #about-us > .inner > .wrapper {
        gap: 70px !important;
        padding: 0 !important;
    }

    #leave-contact .form-column {
        padding: 0 30px;
    }

    #leave-contact .why-column {
        flex: 1;
        width: auto;
        padding-left: 30px;
        padding-right: 30px;
    }

    #leave-contact .title {
        font-size: 28px;
    }

    .blog-item .ov img, .blog-item .ov {
        height: 230px;
    }

    #footer .main .important-information, #footer .main .important-information .company-overview, #footer .main {
        gap: 20px;
    }

    #footer .main .important-information .company-overview .ov img {
        width: 120px;
        height: auto;
    }

    #footer .main .content {
        width: 60%;
    }

    #partners .wrapper {
        gap: 40px
    }

    #certificates .items {
        gap: 20px;
        grid-template-columns: repeat(4, 1fr);
    }

    #service-content .wrapper {
        gap: 40px;
    }

    #service-content .ov {
        width: 40%
    }

    #service-team .team-person {
        flex-direction: column-reverse !important;
    }

    #service-banner .content .title {
        font-size: 24px
    }

    #service-banner .wrapper {
        padding: 0 20px;
    }

    #categories-nav ul {
        margin: 0;
        gap: 30px;
    }

    #realizations {
        grid-template-columns: 1fr 1fr;
        max-width: 840px;
        margin-left: auto;
        margin-right: auto;
    }

    #realization-page .overview {
        gap: 30px;
    }

    #realization-page .overview .ov {
        width: 45%;
    }

    #realization-page .overview .ov {
    }

    #realization-page .overview .title {
        margin-top: 30px;
        font-size: 25px;
    }

    .check-offer {
        position: relative;
        padding-bottom: 60px;
    }

    .check-offer .button-wrapper {
        position: absolute;
        top: auto;
        bottom: 0;
    }

    .blog-featured-item .ov {
        width: 50%;
    }

    .blog-featured-item .ov img {
    }

    .blog-items {
        gap: 20px;
    }

    #knowledge-post .page-title {
        font-size: 28px
    }

    #contact-page .details {
        width: 450px;
    }

    #contact-page .details-wrapper {
        gap: 40px;
    }

    #contact-page .contact-form-container {
        padding: 40px 20px;
    }

    #contact-page .contact-form-container .title {
        font-size: 28px;
        gap: 20px;
    }

    #contact-page .contact-form-container .title i {
        font-size: 40px;
    }

    #contact-page .priority {
        flex-direction: column;
        align-items: stretch;
    }

    #contact-page .priority .address {
        width: 100%;
    }

    #contact-page .tel {
        padding: 18px 25px 18px 18px;
    }

    #contact-page .company-info ul {
        flex-direction: column;
    }

    #contact-page .media-wrapper {
        gap: 30px;
    }

    #contact-page .ov.map {
        width: 48%;
    }

    #contact-page .ov img {
    }

    #product-realizations-slider-nav-prev {
        left: 0;
        background: white;
        border-radius: 50%;
    }

    #product-realizations-slider-nav-next {
        right: 0;
        background: white;
        border-radius: 50%;
    }

    .opinion-item {
        width: calc(100% - 30px);
    }

    #opinion .opinions {
        width: auto;
        flex: 1;
    }

    #product-attributes .ov {
        width: 40%;
    }

    #product-attributes > .inner > .wrapper {
        grid-column-gap: 40%;
    }

    #product-attributes .item {
        padding: 20px;
    }

    #product-gallery .wrapper {
        gap: 40px;
    }

    #product-gallery .slider {
        width: 45%;
        max-width: 564px;
    }

    #product-slider {
        width: 100%;
    }

    #product-slider ul li .product-slider-item, #product-slider ul li .product-slider-item a {
        width: 100%;
    }

    #product-slider-nav ul li .product-slider-nav-item {
        width: 92%;
    }

    #product-slider-buttons i {
        background: white;
        border-radius: 50%;
        justify-content: center;
    }

    #leave-contact .styled-content {
        width: auto;
    }

    #calculator-wrapper .section-title {
        font-size: 38px;
    }

    .header-banner .form-container {
        width: 440px;
        padding: 0 30px;
    }

    .header-banner .content .title {
        font-size: 33px;
        max-width: 54%;
    }

    .header-banner .form-container .title {
        font-size: 20px;
    }

    .header-banner .form-container .title strong {
        font-size: 22px;
    }

    .header-banner .content .styled-content {
        font-size: 17px;
        max-width: 52%;
    }

    #buttons .button-wrapper {
        flex-direction: column;
        gap: 5px;
        align-items: flex-start;
    }

    #main-menu > div > ul {
        gap: 15px;
    }

    #main-menu > div > ul > li > a {
        padding: 15px;
        gap: 5px;
    }

    #buttons .button-wrapper .button.icon.outline.primary {
        height: 35px;
        padding: 0 15px;
        gap: 10px;
        font-size: 12px;
    }

    #buttons .button-wrapper .button.icon.outline.primary i {
        font-size: 16px;
    }
}

@media screen and (max-width: 1050px) and (min-width: 951px) {
    #footer .main .important-information .company-overview {
        flex-direction: column;
    }

    #main-menu > div > ul {
        gap: 5px;
    }

    #main-menu > div > ul > li > a {
        padding: 15px 10px;
    }
}

@media screen and (max-width: 1190px) {
    #fancy.header-banner .content {
        padding: 0 30px;
        width: 35%;
    }

    #fancy.header-banner .ov-fancy {
        width: 65%;
    }

    .section-content.with-image .inner > .wrapper {
        gap: 50px;
    }
}

.fancybox__container {
    z-index: 100000 !important;
}

.fancybox-image {
    scale: 0.9 !important;
}

#blog-overview ~ #faq-overview {
    background: white;
}

#faq-overview {
    padding-top: 80px;
    background: var(--gray);
    padding-bottom: 78px;
}

#faq-overview .standard-section-title {
    margin-bottom: 56px;
}

#faq-overview .standard-section-title .wrapper {
}

#faq-overview .standard-section-title .wrapper .title {
}

#faq-overview .standard-section-title .wrapper .subtitle {
}

#faq-wrapper {
    position: relative;
    display: flex;
    gap: 6%;
}

#default-faq-video {
    width: 34%;
    position: relative;
}
#default-faq-video a:hover:after{
    background-color: rgb(0 0 0 / 20%);
}
#default-faq-video a:after{
    content: '';
    position: absolute;
    background: url(https://medrus.pl/wp-content/uploads/2026/02/icons8-youtube-144.svg) no-repeat center center / 144px 144px;
    width: 100%;
    height: 100%;
    display: block;
    top: 0;
    left: 0;
    transition-duration: 0.3s;
}

#default-faq-video a {
    display: block;
    position: absolute;
    width: 100%;
    box-sizing: border-box;
    border: 20px solid rgb(210 237 251);
    border-radius: 7px;
    background: rgb(210 237 251);
}

#default-faq-video a img {
    display: block;
    width: 100%;
    object-fit: cover;
    object-position: center;
    height: 510px;
    border-radius: 5px;
}

#default-faq-video a.main {
    position: relative;
}

#default-faq-video a.main img {
}

#default-faq-video a.sub {
    display: none;
    top: 0;
    left: 0;
}
#default-faq-video a.sub.opened{
    display: block;
    z-index: 40;
}
#default-faq-video a.sub img {
}

#faq-elements {
    padding-top: 30px;
    flex: 1;
}

.faq-element {
    background: #f9f9f9;
    margin-bottom: 10px;
    cursor: pointer;
    padding: 25px 30px;
    border-radius: 10px 10px 10px 0px;
    transition-duration: 0.3s;
}

.faq-element:hover {
    background: rgb(210 237 251);
}

.faq-element .faq-header {
    line-height: 1.3;
    padding-right: 40px;
    position: relative;
}

.faq-element .faq-header .faq-title {
    font-weight: bold;
    font-size: 16px;
    transition-duration: 0.3s;
}

.faq-element:hover .faq-header .faq-title, .faq-element:hover .faq-header .arrow {
    color: var(--primary);
}

.faq-element .faq-header .arrow {
    position: absolute;
    top: 50%;
    translate: 0 -50%;
    right: 0;
    font-weight: normal;
    transition-duration: 0.3s;
    rotate: 0deg;
}

.faq-element .faq-header .arrow:before, .faq-element .faq-header .arrow:after {
}

.faq-element .faq-header .arrow:before {
}

.faq-element .faq-body {
}

.faq-element .styled-content {
    margin-top: 15px;
    color: var(--content);
}

.faq-element .sub {
    display: none;
}

.faq-element .sub img {
}

.faq-element.closed {
}

.faq-element.closed .faq-header {
}

.faq-element.closed .faq-header .faq-title {
}

.faq-element.closed .faq-header .arrow {
}

.faq-element.closed .faq-header .arrow:before {
}

.faq-element.closed .faq-body {
}

.faq-element.closed .styled-content {
}

.faq-element.closed .sub {
}

.faq-element.closed .sub img {
}

.faq-element.opened {
    background: rgb(210 237 251);
}

.faq-element.opened .faq-header {
}

.faq-element.opened .faq-header .faq-title, .faq-element .faq-header .arrow {
    color: var(--primary);
}

.faq-element.opened .faq-header .arrow {
    rotate: -180deg;
}

.faq-element.opened .faq-header .arrow:before {
}

.faq-element.opened .faq-body {
}

.faq-element.opened .styled-content {
}

.faq-element.opened .sub {
}

.faq-element.opened .sub img {
}
