/*!
Theme Name: MartTech
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: marttech
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

MartTech is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: Arial, sans-serif;
  color: #0b2341;
  background: #fff;
}

a {
  text-decoration: none;
}

ul {
  list-style: none;
}

img {
  max-width: 100%;
  display: block;
}

.container {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}

/* Header */

.header {
  background: #fff;
  border-bottom: 1px solid #e8eef5;
}

.header__inner {
  height: 88px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.logo {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #0b2341;
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
}

.logo small {
  display: block;
  font-size: 10px;
  letter-spacing: 1px;
  margin-top: 4px;
}

.logo__icon {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background: #005bbb;
  display: inline-block;
}

.menu ul {
  display: flex;
  align-items: center;
  gap: 38px;
}

.menu a {
  color: #0b2341;
  font-size: 15px;
  font-weight: 600;
  padding: 34px 0;
  position: relative;
}

.menu a.active,
.menu a:hover {
  color: #005bbb;
}

.menu a.active::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 20px;
  width: 100%;
  height: 3px;
  background: #005bbb;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 15px 24px;
  border-radius: 4px;
  background: #005bbb;
  color: #fff;
  font-weight: 700;
  font-size: 15px;
  border: 1px solid #005bbb;
  transition: 0.25s;
}

.btn:hover {
  background: #004b9c;
}

.btn--outline {
  background: #fff;
  color: #005bbb;
}

.btn--outline:hover {
  background: #f1f7ff;
}
/* BURGER */
.burger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
  width: 32px;
  height: 32px;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 1001;
}

.burger span {
  width: 100%;
  height: 3px;
  background: #0b2341;
  border-radius: 2px;
  transition: 0.3s;
}

/* КРАСИВЫЙ КРЕСТИК */
.burger.active span:nth-child(1) {
  transform: translateY(9px) rotate(45deg);
}

.burger.active span:nth-child(2) {
  opacity: 0;
}

.burger.active span:nth-child(3) {
  transform: translateY(-9px) rotate(-45deg);
}

/* OVERLAY */
.menu-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.4);
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  z-index: 999;
}

.menu-overlay.active {
  opacity: 1;
  visibility: visible;
}

/* МОБ МЕНЮ */
@media (max-width: 992px) {

  .burger {
    display: flex;
  }

  .menu {
    position: fixed;
    top: 0;
    right: -100%;
    width: 320px;
    height: 100%;

    background: #fff;
    padding: 100px 30px;

    transition: 0.35s ease;
    z-index: 1000;

    box-shadow: -20px 0 50px rgba(0,0,0,0.2);
  }

  .menu.active {
    right: 0;
  }

  .menu ul {
    flex-direction: column;
    gap: 25px;
  }

  .menu a {
    font-size: 18px;
  }

  .header .btn {
    display: none;
  }
}
/* Hero */

.hero {
  min-height: 520px;
  
  border-bottom: 1px solid #e8eef5;
}

.hero__inner {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  align-items: center;
  min-height: 520px;
}

.hero h1 {
  font-size: 52px;
  line-height: 1.1;
  margin-bottom: 24px;
  color: #0b2341;
}

.hero h1 span {
  color: #005bbb;
}

.hero p {
  max-width: 470px;
  font-size: 18px;
  line-height: 1.7;
  color: #41536b;
}

.hero__buttons {
  display: flex;
  gap: 16px;
  margin-top: 32px;
}

.hero__features {
  display: flex;
  gap: 28px;
  margin-top: 60px;
}

.hero__features div {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-right: 22px;
  border-right: 1px solid #dbe5f0;
}

.hero__features div:last-child {
  border-right: none;
}

.icon {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: inline-block;
  flex-shrink: 0;
}

.hero__features strong {
  display: block;
  font-size: 13px;
  color: #0b2341;
}

.hero__features small {
  display: block;
  font-size: 12px;
  color: #64748b;
  margin-top: 3px;
}

/* Products */

.products {
  padding: 70px 0;
  background: #fff;
}

.section-title {
  text-align: center;
  font-size: 34px;
  margin-bottom: 38px;
  color: #0b2341;
  position: relative;
}

.section-title::after {
  content: "";
  width: 54px;
  height: 3px;
  background: #005bbb;
  display: block;
  margin: 14px auto 0;
}

.products__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}

.product-card {
  position: relative;
  padding: 28px;
  min-height: 360px;
  border: 1px solid #dfe8f2;
  border-radius: 6px;
  background: #fff;
  transition: 0.25s;
}

.product-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 45px rgba(10, 35, 65, 0.1);
}

.card-icon>img{
  width: 54px;
  height: 54px;
  background: #005bbb;
  border-radius: 50%;
  display: block;
  margin-bottom: 20px;
}

.product-card>img {
  height: 150px;
  object-fit: contain;
  margin: 0 auto 22px;
}

.product-card h3 {
  font-size: 21px;
  margin-bottom: 12px;
  color: #0b2341;
}

.product-card p {
  font-size: 15px;
  line-height: 1.6;
  color: #54657a;
  margin-bottom: 22px;
}

.product-card a {
  color: #005bbb;
  font-weight: 700;
}

/* Support */

.support {
  background: #f4f8fc;
}

.support__inner {
  display: grid;
  grid-template-columns: 0.8fr 1fr 1fr;
  align-items: center;
  min-height: 380px;
}

.section-sub {
  display: block;
  font-weight: 800;
  color: #005bbb;
  margin-bottom: 16px;
  font-size: 14px;
}

.support__content h2 {
  font-size: 38px;
  line-height: 1.15;
  margin-bottom: 20px;
}

.support__content p {
  color: #54657a;
  line-height: 1.7;
  margin-bottom: 28px;
}

.support__list {
  padding: 40px;
}

.support__list div {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 16px;
  padding: 18px 0;
  border-bottom: 1px solid #dce7f2;
}

.support__list div:last-child {
  border-bottom: none;
}

.support__list .icon {
  grid-row: span 2;
}

.support__list h3 {
  font-size: 18px;
  margin-bottom: 6px;
}

.support__list p {
  color: #54657a;
  line-height: 1.5;
}

.support__image img {
  width: 100%;
  height: 380px;
  object-fit: cover;
}

/* Advantages */

.advantages {
  padding: 42px 0;
  background: #fff;
}

.advantages__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.advantages__grid div {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 15px;
  padding: 0 25px;
  border-right: 1px solid #dfe8f2;
}

.advantages__grid div:last-child {
  border-right: none;
}

.advantages__grid .icon {
  grid-row: span 2;
}

.advantages__grid h3 {
  font-size: 17px;
  margin-bottom: 5px;
}

.advantages__grid p {
  color: #54657a;
  line-height: 1.5;
  font-size: 14px;
}

/* Footer */

.footer {
  background: #003b78;
  color: #fff;
  padding: 52px 0 22px;
}

.footer__grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr 0.9fr 1fr;
  gap: 55px;
}

.logo--footer {
  color: #fff;
  margin-bottom: 22px;
}

.footer p {
  color: rgba(255,255,255,0.75);
  line-height: 1.7;
}

.footer h3 {
  font-size: 18px;
  margin-bottom: 22px;
}

.footer li {
  margin-bottom: 12px;
  color: rgba(255,255,255,0.75);
}

.footer a {
  color: rgba(255,255,255,0.78);
}

.footer a:hover {
  color: #fff;
}

.footer .btn {
  margin-top: 10px;
  background: #006fe6;
  border-color: #006fe6;
}

.footer__bottom {
  margin-top: 46px;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,0.15);
  display: flex;
  justify-content: space-between;
  color: rgba(255,255,255,0.7);
}

.footer__bottom div {
  display: flex;
  gap: 24px;
}



/* Pupup */
.popup {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
}

.popup.active {
  opacity: 1;
  visibility: visible;
}

.popup__overlay {
  position: absolute;
  inset: 0;
  background: rgba(6, 24, 48, 0.55);
  backdrop-filter: blur(4px);
}

.popup__content {
  position: relative;
  z-index: 2;
  width: 440px;
  padding: 34px;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 30px 80px rgba(0,0,0,0.22);
}

.popup__close {
  position: absolute;
  top: 12px;
  right: 14px;
  border: none;
  background: transparent;
  font-size: 28px;
  color: #0b2341;
  cursor: pointer;
}

.popup__content h2 {
  color: #0b2341;
  font-size: 30px;
  margin-bottom: 10px;
}

.popup__content p {
  color: #54657a;
  line-height: 1.6;
  margin-bottom: 24px;
}

.popup__form input,
.popup__form textarea {
  width: 100%;
  margin-bottom: 14px;
  padding: 14px 15px;
  border-radius: 4px;
  border: 1px solid #dce7f2;
  background: #f8fbff;
  color: #0b2341;
  font-size: 15px;
}

.popup__form textarea {
  min-height: 110px;
  resize: vertical;
}

.popup__form input:focus,
.popup__form textarea:focus {
  outline: none;
  border-color: #005bbb;
  box-shadow: 0 0 0 3px rgba(0,91,187,0.12);
}

.popup__form button {
  width: 100%;
  padding: 15px;
  border-radius: 4px;
  border: none;
  background: #005bbb;
  color: #fff;
  font-weight: 700;
  cursor: pointer;
}

.popup__form button:hover {
  background: #004b9c;
}







  .about {
  padding: 80px 0;
  background: #fff;
}

.about__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 55px;
  align-items: center;
}

.about__image img {
  width: 100%;
  height: 430px;
  object-fit: cover;
  border-radius: 6px;
}

.about__content h2 {
  font-size: 42px;
  line-height: 1.15;
  color: #0b2341;
  margin-bottom: 20px;
}

.about__content p {
  color: #54657a;
  font-size: 17px;
  line-height: 1.7;
  margin-bottom: 28px;
}

.about__items {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-bottom: 30px;
}

.about__items div {
  padding: 20px;
  border: 1px solid #dfe8f2;
  border-radius: 6px;
  background: #f8fbff;
}

.about__items strong {
  display: block;
  color: #0b2341;
  font-size: 17px;
  margin-bottom: 8px;
}

.about__items span {
  color: #54657a;
  font-size: 14px;
  line-height: 1.5;
}



  .contact-page {
  padding: 80px 0;
  background: #f4f8fc;
}

.contact-page__top {
  text-align: center;
  margin-bottom: 50px;
}

.contact-page__top h1 {
  font-size: 42px;
  color: #0b2341;
  margin-bottom: 12px;
}

.contact-page__top p {
  color: #54657a;
  font-size: 17px;
}

/* GRID */
.contact-page__inner {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 40px;
}

/* LEFT */
.contact-info {
  background: #fff;
  padding: 35px;
  border-radius: 6px;
  border: 1px solid #dfe8f2;
}

.contact-info__item {
  margin-bottom: 30px;
}

.contact-info__item:last-child {
  margin-bottom: 0;
}

.contact-info__item h3 {
  font-size: 18px;
  color: #0b2341;
  margin-bottom: 6px;
}

.contact-info__item p {
  color: #54657a;
  font-size: 15px;
}

/* RIGHT */
.contact-form {
  background: #fff;
  padding: 35px;
  border-radius: 6px;
  border: 1px solid #dfe8f2;
}

.contact-form h2 {
  font-size: 28px;
  margin-bottom: 20px;
  color: #0b2341;
}

.contact-form input,
.contact-form textarea {
  width: 100%;
  padding: 14px;
  margin-bottom: 14px;

  border: 1px solid #dfe8f2;
  border-radius: 4px;

  background: #f8fbff;
  font-size: 15px;
}

.contact-form textarea {
  min-height: 120px;
  resize: vertical;
}

.contact-form input:focus,
.contact-form textarea:focus {
  outline: none;
  border-color: #005bbb;
  box-shadow: 0 0 0 2px rgba(0,91,187,0.1);
}

.contact-form button {
  width: 100%;
  padding: 15px;
  border: none;
  border-radius: 4px;

  background: #005bbb;
  color: #fff;
  font-weight: 700;
  cursor: pointer;
}

.contact-form button:hover {
  background: #004b9c;
}



  .services-page {
  padding: 80px 0;
  background: #fff;
}

.services-page__top {
  text-align: center;
  margin-bottom: 50px;
}

.services-page__top h1 {
  font-size: 42px;
  color: #0b2341;
  margin-bottom: 12px;
}

.services-page__top p {
  color: #54657a;
  font-size: 17px;
}

/* GRID */
.services-page__grid {
  display:flex;
  flex-direction:column;
	gap:30px;
}

/* CARD */
.service-card {
  padding: 28px;
  border: 1px solid #dfe8f2;
  border-radius: 6px;
  background: #fff;
  transition: 0.3s;
  text-align: left;
	
}
.service-card-box{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:30px;	
}
.service-card:hover {

  box-shadow: 0 20px 50px rgba(0,0,0,0.08);
}

.service-card .icon {
  width: 50px;
  height: 50px;
  background: #005bbb;
  border-radius: 50%;
  display: block;
  margin-bottom: 18px;
}

.service-card h3 {
  font-size: 20px;
  color: #0b2341;
  margin-bottom: 10px;
}

.service-card p {
  color: #54657a;
  font-size: 15px;
  line-height: 1.6;
}


.service-card h3{
	margin-bottom:30px;
	color:#005bbb;
}	
.service-card-text {

    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-size: 16px;
    line-height: 1.5; 
    color: #1a1a1a;
    background-color: #ffffff;
}

.service-card-text p:first-child {
    margin-top: 0;
    margin-bottom: 16px;
}
.service-card-text p:first-child strong {
    font-size: 20px;
    font-weight: 700;
    color: #2c3e66; 
    display: block;
    padding-bottom: 8px;
    border-bottom: 2px solid #e0e0e0;
}

.service-card-text p {
    margin-top: 0;
    margin-bottom: 20px;
}
.service-card-text p:last-of-type {
    margin-bottom: 0;
}
.service-card-text ul {
    margin: 0 0 24px 0;
    padding-left: 0;
    list-style: none;
}
.service-card-text li {
    position: relative;
    padding-left: 24px;
    margin-bottom: 10px;
    font-size: 15px;
    line-height: 1.45;
}

.service-card-text li::before {
    content: "✓"; 
    position: absolute;
    left: 0;
    color: #2c7a4d; 
    font-weight: 600;
    font-size: 16px;
}

.service-card-text p
 {
    background-color: #f8f9fa;
    padding: 12px 16px;
    border-radius: 12px;
    margin-bottom: 16px;
}

.service-card-text strong {
    color: #2c3e66;
}
.service-card-text br {
    display: none; 
}
/* Кнопка "Читать далее" */
.service-card-toggle-btn {
    display: inline-block;
    margin-top: 15px;
    padding: 8px 20px;
    background-color: transparent;
    border: 1px solid #005bbb;
    border-radius: 30px;
    color: #005bbb;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
}

.service-card-toggle-btn:hover {
    background-color: #005bbb;
    color: #ffffff;
}

/* Короткая версия текста */
.service-card-short {
    line-height: 1.5;
}

/* Полная версия текста */
.service-card-full {
    line-height: 1.5;
}
@media (max-width: 992px) {
	.service-card-box{
	    grid-template-columns: 1fr;	
	}
}
@media (max-width: 768px) {
    .service-card-text {
        padding: 18px 20px;
        font-size: 15px;
    }
    
    .service-card-text p:first-child strong {
        font-size: 18px;
    }
    
    .service-card-text li {
        font-size: 14px;
        margin-bottom: 8px;
    }
}


.home-services{
	padding:50px 0;
}
.home-services .services__grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:30px;
}
@media (max-width: 768px) {
	.home-services .services__grid{
		grid-template-columns:1fr;
	}
}






/************Thanks popup********************/
.alert_block {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        background-color: rgba(0, 0, 0, .5);
        overflow: auto;
        z-index: 99999999;
    }

    .alert_thank {
        max-width: 420px;
        width: 100%;
        min-height: 70px;
        margin: 15px;
        position: relative;
        background-color: rgb(255, 255, 255);
    }

    .alert_thank-content {
        padding: 30px;
        text-align: center;
        color: rgb(0, 0, 0);
    }

    .alert_thank-content p {
        font-size: 24px;
        margin-bottom: 15px;
    }


    .alert_thank-close {
        position: absolute;
        top: 10px;
        right: 10px;
        width: 25px;
        height: 25px;
        cursor: pointer;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        z-index: 999;
    }

    .alert_thank-close:before,
    .alert_thank-close:after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        margin: auto;
        background-color: rgb(0, 0, 0);
    }

    .alert_thank-close:before {
        width: 15px;
        height: 2px;
    }

    .alert_thank-close:after {
        width: 2px;
        height: 15px;
    }

    .error {
        border: 1px solid red !important;
    }



@media screen and (max-width: 1200px) {
 .products__grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .support__inner {
   grid-template-columns: repeat(2, 1fr);
  }
   .support__inner > :first-child {
    grid-column: 1 / -1; 
    padding:30px 0;
  }
}

@media screen and (max-width: 992px) {
  .products__grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .advantages__grid{
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
  }
  .footer__grid {
   grid-template-columns: repeat(3, 1fr);
  }
   .footer__grid > :first-child {
    grid-column: 1 / -1; 
  }
	.contact-page__inner, .about__inner{
		grid-template-columns: 1fr;
	}
}

@media screen and (max-width: 768px) {
  .hero__inner{
    grid-template-columns: 1fr;
  }
  .hero h1{
    font-size: 48px;
  }
  .hero__features {
    flex-direction: column;
    gap: 20px;
  }
  .footer__grid > :last-child {
    grid-column: 1 / -1; 
  }
}

@media screen and (max-width: 576px) {
	 .hero h1 {
        font-size: 30px;
    }
	.services-page__top h1 {
		font-size: 28px;
	}
  .products__grid {
      grid-template-columns: repeat(1, 1fr);
  }
  .advantages__grid {
    grid-template-columns: repeat(1, 1fr);
   
  }
  .support__inner {
    grid-template-columns: repeat(1, 1fr);
  }
  .footer__grid {
      grid-template-columns: repeat(2, 1fr);
  }
  .footer__bottom{
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .footer__grid{
    gap: 15px;;
  }
  .support__list {
      padding: 10px;
  }
  .support__content h2{
    font-size: 32px;
  }
  .btn{
    padding:15px;
    font-size: 12px;
  }
  .hero__content{
    padding:30px 0
  }
}