/* ---------------------------------- base ---------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Exo+2:ital,wght@0,100..900;1,100..900&display=swap');
:root{
    --bluecolor: #113D71;
    --redcolor: #D01921;
    --greycolor: #f8f9fa;
    --whitecolor: #ffffff;
    --textcolor: #333333;
    --darkcolor: #172333;
    --mutedcolor: #687789;
    --bordercolor: #e5eaf0;
    --lightborder: #e5e9ee;
    --bs-font-sans-serif: "Exo 2", sans-serif;
}
.bg-grey{background-color: var(--greycolor)}
.bg-blue{background-color: var(--bluecolor); color: #fff;}
.bg-red{background-color: var(--redcolor); color: #fff;}
.blue{color: var(--bluecolor)}
.red{color: var(--redcolor)}
.col-border-radius{border-radius: 10px 10px 0 0;overflow: hidden}
.defis{white-space: nowrap;}
a{text-decoration: none}
/* ---------------------------------- /base ---------------------------------*/
/* ---------------------------------- header ---------------------------------*/
.navbar-nav{margin: 0 auto;}
.navbar-text a:nth-child(1){margin-right: 30px;text-decoration: none;font-size: 1.1em;}
.nav-link{font-size: .9em;letter-spacing: 2px;text-transform: uppercase;font-weight: 500;}
.navbar .nav-link:hover, .navbar .nav-link:focus, .navbar .nav-link:focus-visible, .navbar .dropdown-item:hover, .navbar .dropdown-item:focus, .navbar .dropdown-item:focus-visible{box-shadow: none !important;outline: none !important}
.dropdown-menu[data-bs-popper]{margin-top: 0 !important;}
/* ---------------------------------- /header ---------------------------------*/
/* -------------------------------- HOME pages ----------------------------------*/
.home-and-news{
    .my-c{margin-bottom: 40px;margin-top: 80px}
    h1, h1 span{color: var(--redcolor);font-weight: 600;font-size: 60px;}
    h1 span{white-space: nowrap;}
    h2{font-weight: 600;font-size: 80px;margin-bottom: 20px;line-height: 1;}
    h3, h3 span{font-weight: 400;font-size: 50px;}
    h3 span{color: var(--redcolor); text-transform: none;}
    .bg-news{background: linear-gradient(110deg, var(--greycolor) 0%, var(--greycolor) 75%, #dee4e9 75%, #dee4e9 82%, #d3dae2 82%, #d3dae2 100%);}
    .news-date{background: #fff;width: fit-content;padding: 5px 15px;border-radius: 5px;}
    .read-more{color: #fff;display: block;width: 90%;background: var(--bluecolor);text-align: center;border-radius: 10px;padding: 10px;margin: 0 auto;text-decoration: none;}
    .pagination{justify-content: center;--bs-pagination-active-bg: var(--bluecolor);--bs-pagination-active-border-color: var(--bluecolor);--bs-pagination-color: var(--bluecolor);--bs-pagination-hover-color: var(--bluecolor)}
    .news-desc, .news-inner{height: 100%;display: flex;flex-direction: column;justify-content: space-between; }
    .news-inner h3{font-size: 30px}
    @media (min-width: 768px) and (max-width: 1400px){
        .my-c{margin-bottom: 30px;margin-top: 60px}
        h1, h1 span{font-size: 40px}
        h2{font-size: 60px}
        h3, h3 span{font-size: 30px;}
    }
    @media (max-width: 991px){
        .about-text{margin-bottom: 20px}
        .news-date{margin-top: 10px}
        .news-row-two div{margin-top: 10px}
    }
    @media (max-width: 768px){
        .my-c{margin-bottom: 20px;margin-top: 40px}
        h1, h1 span{font-size: 30px;}
        h2{font-size: 40px}
        h3, h3 span{font-size: 25px;}
    }
}
/* -------------------------------- /HOME pages ----------------------------------*/
/* ----------------------------------- content --------------------------------*/
.home{height: 30vh;background: url("../img/home.webp") center center no-repeat;background-size: cover}
.about{height: 30vh;background: url("../img/about.webp") center center no-repeat;background-size: cover}
.products{height: 30vh;background: url("../img/products.webp") center center no-repeat;background-size: cover}
.section-title{color: var(--bluecolor);font-weight: 700;}
.home-about-card{padding: 34px;color: #fff;background: linear-gradient(145deg, #0b5fa5, #173b5c);border-radius: 10px;box-shadow: 0 14px 35px rgba(23, 59, 92, .2);}
.home-about-card hr{margin: 22px 0;opacity: .22;}
.home-about-card__number{font-size: 36px;font-weight: 700;line-height: 1;}
.home-about-card__text{margin-top: 7px;font-size: 15px;line-height: 1.45;opacity: .9;}
.home-about-card__title{font-size: 18px;font-weight: 600;line-height: 1.4;}
.product-card{display: flex;flex-direction: column;overflow: hidden;background: #fff;border: 1px solid var(--greycolor);border-radius: 10px;transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;}
.product-card:hover{border-color: var(--bluecolor);box-shadow: 0 12px 30px rgba(23, 59, 92, .12);transform: translateY(-4px);}
.product-card__image{display: block;height: 235px;padding: 18px;background: #fff;}
.product-card__image img{width: 100%;height: 100%;object-fit: contain;}
.product-card__body{display: flex;flex: 1;flex-direction: column;align-items: flex-start;padding: 24px;background: var(--greycolor);}
.product-card__title{margin-bottom: 14px;color: var(--bluecolor);font-size: 21px;font-weight: 700;line-height: 1.3;}
.product-card__title a{color: inherit;text-decoration: none;}
.product-card__title a:hover{color: #0b5fa5;}
.product-card__description{margin-bottom: 22px;line-height: 1.55;}
.product-card__link{display: inline-flex;align-items: center;gap: 8px;margin-top: auto;color: #0b5fa5;font-weight: 600;text-decoration: none;}
.product-card__link svg{width: 17px;height: 17px;transition: transform .2s ease;}
.product-card__link:hover svg{transform: translateX(4px);}
.product-card--horizontal{flex-direction: row;}
.product-card--horizontal .product-card__image{flex: 0 0 42%;height: auto;min-height: 260px;}
.body_probes{background: var(--bluecolor)}
.body_probes .product-card__title{color: var(--whitecolor)}
.body_probes .product-card__description{color: var(--whitecolor)}
@media (max-width: 991.98px){
  .product-card--horizontal{flex-direction: column;}
  .product-card--horizontal .product-card__image{flex: none;height: 235px;min-height: auto;}
  .company-details-card__column:first-child{border-right: 0;border-bottom: 1px solid #dce4ec;}
}
@media (max-width: 575.98px){
  .home-about-card{padding: 26px 22px;}
  .product-card__image{height: 210px;}
  .product-card__body{padding: 20px;}
  .company-details-card__item{padding: 16px;}
}
.about-page{color: var(--textcolor);}
.about-header{background: var(--greycolor);padding: 70px 20px;margin-bottom: 60px;}
.about-header h1{color: var(--bluecolor);font-size: 42px;font-weight: 600;margin-bottom: 15px;}
.about-header p{max-width: 700px;color: #666;font-size: 18px;line-height: 1.6;margin: 0;}
.about-section{margin-bottom: 60px;}
.about-section h2{color: var(--bluecolor);font-size: 28px;font-weight: 600;margin-bottom: 20px;}
.about-section h2::after{content: "";display: block;width: 45px;height: 3px;background: var(--redcolor);margin-top: 12px;}
.about-section p{font-size: 16px;line-height: 1.8;margin-bottom: 18px;}
.about-stats{background: var(--bluecolor);color: var(--whitecolor);padding: 35px 25px;margin: 50px 0 60px;}
.about-stat{text-align: center;padding: 15px;}
.about-stat strong{display: block;font-size: 36px;font-weight: 600;margin-bottom: 8px;}
.about-stat span{font-size: 15px;opacity: 0.9;}
.mission-box{background: var(--greycolor);border-left: 4px solid var(--redcolor);padding: 30px 35px;margin-bottom: 70px;}
.mission-box h2{color: var(--bluecolor);font-size: 28px;margin-bottom: 18px;}
.mission-box p{font-size: 17px;line-height: 1.8;margin: 0;}
@media (max-width: 767px){
    .about-header{padding: 45px 20px;margin-bottom: 40px;}
    .about-header h1{font-size: 32px;}
    .about-header p{font-size: 16px;}
    .about-section h2, .mission-box h2{font-size: 24px;}
    .about-stats{padding: 20px 15px;}
    .about-stat strong{font-size: 30px;}
    .mission-box{padding: 25px 20px;}
}
.contacts-page{color: var(--darkcolor);background: var(--whitecolor);}
.contacts-hero h1{margin-bottom: 15px;color: var(--whitecolor);font-size: clamp(2.5rem, 5vw, 4.5rem);font-weight: 800;letter-spacing: -0.05em;}
.contacts-content{padding: 85px 0;}
.section-label{margin-bottom: 14px;color: var(--redcolor);font-size: 0.76rem;font-weight: 800;letter-spacing: 0.16em;text-transform: uppercase;}
.section-title{margin-bottom: 18px;color: var(--bluecolor);font-size: clamp(2rem, 3.5vw, 3.1rem);font-weight: 800;line-height: 1.12;letter-spacing: -0.04em;}
.section-description{max-width: 620px;margin-bottom: 35px;color: var(--mutedcolor);line-height: 1.75;}
.contact-card{padding: 32px;border: 1px solid var(--bordercolor);background: var(--whitecolor);box-shadow: 0 15px 40px rgba(17, 61, 113, 0.07);}
.contact-table{width: 100%;margin-bottom: 0;border-collapse: collapse;}
.contact-table tr{border-bottom: 1px solid var(--bordercolor);}
.contact-table tr:last-child{border-bottom: 0;}
.contact-table th, .contact-table td{padding: 18px 0;vertical-align: top;line-height: 1.6;}
.contact-table th{width: 38%;padding-right: 20px;color: var(--bluecolor);font-size: 0.73rem;font-weight: 800;letter-spacing: 0.08em;text-transform: uppercase;}
.contact-table td{color: var(--mutedcolor);font-size: 0.98rem;}
.contact-table a{color: var(--redcolor);font-weight: 600;text-decoration: none;transition: color 0.2s ease;}
.contact-table a:hover{color: var(--bluecolor);}
.iban-list{display: flex;flex-direction: column;gap: 5px;}
.iban-list span{display: block;}
.map-card{position: relative;height: 100%;min-height: 610px;overflow: hidden;background: var(--greycolor);box-shadow: 0 15px 40px rgba(17, 61, 113, 0.07);}
.map-card iframe{display: block;width: 100%;height: 100%;min-height: 610px;border: 0;filter: grayscale(0.15) contrast(1.02);}
@media (max-width: 991px){
    .contacts-content{padding: 65px 0;}
    .map-card, .map-card iframe{min-height: 450px;}
}
@media (max-width: 767px){
    .contacts-content{padding: 50px 0;}
    .contact-card{padding: 22px;}
    .contact-table th, .contact-table td{display: block;width: 100%;padding: 12px 0;}
    .contact-table th{padding-bottom: 4px;}
    .contact-table td{padding-top: 0;padding-bottom: 18px;}
    .map-card, .map-card iframe{min-height: 380px;}
}
.products-list-section{padding: 80px 0 100px;background: var(--whitecolor);}
.products-list-header{max-width: 760px;margin-bottom: 50px;}
.products-list-header__label{display: block;margin-bottom: 14px;color: var(--redcolor);font-size: 13px;font-weight: 700;letter-spacing: 0.12em;text-transform: uppercase;}
.products-list-header h2{margin-bottom: 18px;color: var(--bluecolor);font-size: 38px;font-weight: 600;line-height: 1.2;}
.products-list-header p{max-width: 700px;margin: 0;color: var(--mutedcolor);font-size: 17px;line-height: 1.7;}
.products-list{border-top: 1px solid var(--lightborder);}
.product-list-item{display: flex;align-items: stretch;min-height: 300px;padding: 32px 0;border-bottom: 1px solid var(--lightborder);}
.product-list-item__image{display: flex;align-items: center;justify-content: center;flex: 0 0 34%;min-height: 235px;padding: 25px;background: var(--greycolor);overflow: hidden;}
.product-list-item__image img{display: block;width: 100%;height: 235px;object-fit: contain;transition: transform 0.25s ease;}
.product-list-item__image:hover img{transform: scale(1.04);}
.product-list-item__content{display: flex;flex-direction: column;align-items: flex-start;flex: 1;padding: 12px 35px;}
.product-list-item__title{margin: 0 0 16px;font-size: 27px;font-weight: 600;line-height: 1.25;}
.product-list-item__title a{color: var(--bluecolor);text-decoration: none;transition: color 0.2s ease;}
.product-list-item__title a:hover{color: var(--redcolor);}
.product-list-item__description{max-width: 780px;margin: 0 0 25px;color: var(--textcolor);font-size: 16px;line-height: 1.75;}
.product-list-item__link{display: inline-flex;align-items: center;gap: 9px;margin-top: auto;padding: 11px 18px;border: 1px solid var(--bluecolor);color: var(--bluecolor);font-size: 14px;font-weight: 600;text-decoration: none;transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;}
.product-list-item__link svg{width: 16px;height: 16px;}
.product-list-item__link:hover{border-color: var(--redcolor);background: var(--redcolor);color: var(--whitecolor);}
@media (max-width: 767px){
    .products-list-section{padding: 55px 0 70px;}
    .products-list-header{margin-bottom: 35px;}
    .products-list-header h2{font-size: 30px;}
    .products-list-header p{font-size: 16px;}
    .product-list-item{display: block;min-height: 0;padding: 25px 0;}
    .product-list-item__image{min-height: 230px;padding: 20px;}
    .product-list-item__image img{height: 210px;}
    .product-list-item__content{padding: 25px 0 5px;}
    .product-list-item__title{font-size: 24px;}
    .product-list-item__description{margin-bottom: 22px;font-size: 15px;}
}
/* ---------------------------------- /content --------------------------------*/
/* ---------------------- animation for buttons & links ----------------------------------*/
.link-product{color: #fff;display: block;background: var(--bluecolor);text-align: center;border-radius: 10px;padding: 10px;margin: 0 auto;text-decoration: none;}
.read-more, .link-product{display: inline-flex;position: relative;overflow: hidden;z-index: 1;justify-content: center;}
.read-more:hover, .link-product:hover{color: #fff;}
.link-dev:hover{color: #000}
.read-more:before, .link-product:before{content: '';position: absolute;top: 0;right: -50px;bottom: 0;left: 0;border-right: 30px solid transparent;border-top: 90px solid #2D6B9F;transition: transform 0.5s;transform: translateX(-100%);z-index: -1;}
.link-dev:before{border-top: 90px solid #fff;}
.read-more:hover:before, .link-product:hover:before{transform: translateX(0);}
/* ---------------------- animation for buttons & links ----------------------------------*/
/* ---------------------------------- footer ---------------------------------*/
.footer-blue{padding: 30px;display: flex;background-color: var(--bluecolor);justify-content: space-between;align-items: center;}
.footer-blue p{margin: 0;padding: 0;color: var(--greycolor);}
.footer-blue p a{text-decoration: none;color: var(--greycolor);transition: all ease-in-out .3s;}
.footer-blue p a svg{margin: 0 5px;}
.footer-blue p a:hover{color: #fff}
@media (max-width: 768px){
    .footer-blue{flex-direction: column;}
    .align-left, .align-right{margin: 10px 0;}
}
/* ---------------------------------- footer ---------------------------------*/