ul, ol, li {
	list-style: none;
}


.product {
  margin: 2% 0 0;
  display: grid;
  grid-template-columns: 1fr 1fr;         
  gap: 28px;
  align-items: start;
}


.product__media {
  position: relative;
  background: #f7f7f8;
  border: 1px solid #eee;
  border-radius: 14px;
  padding: 14px;
  min-height: 260px;                       
  aspect-ratio: 4 / 3;                    
  overflow: hidden;
}
.product__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
  display: block;
  box-shadow: 0 4px 16px rgba(0,0,0,.06);
}

.gallery-thumbs { display:none; }


.product__right .product__title {
  font-size: 30px;
  line-height: 1.2;
  margin: 0 0 10px;
}
.product__meta { color:#5b6876; margin-bottom: 14px; display:flex; flex-wrap:wrap; gap:8px; }
.badge { display:inline-block; padding:4px 10px; border-radius:999px; font-size:12px; background:#F3F4F6; color:#111827; }

.product__stack {
  display: grid;
  grid-template-rows: auto auto;
  gap: 16px;
}
.price-card,
.tech-card {
  background:#fff;
  border:1px solid #eee;
  border-radius: 14px;
  padding: 16px 16px 18px;
  box-shadow:0 6px 16px rgba(0,0,0,.06);
}
.price-main { font-size: 24px; font-weight: 600; color:#D00016; }
.price-note { font-size: 14px; margin-top:0; color:#5B6472; }
.btns { display:flex; flex-wrap:wrap; gap:10px; margin-top:12px; }


.desc-faq {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  margin-top: 24px;
 }
.section1 { max-width: 80%; margin: 2% 0 2% 10%;}
.section1 h2 { font-size: 22px; margin:0 0 12px; }
.prose { color:#111; line-height:1.65; }
.prose p { margin: 0 0 10px;  list-style: circle!important;}

.faq details { border:1px solid #eee; border-radius:10px; padding:12px 14px; background:#fff; }
.faq details + details { margin-top:10px; }
.faq summary { cursor:pointer; font-weight:600; }


.details-text {
  margin-top: 24px;
  background:#fff;
  border:1px solid #eee;
  border-radius: 14px;
  padding: 16px 18px;
  box-shadow:0 4px 12px rgba(0,0,0,.05);
}


.media-contacts {
  display: grid;
  grid-template-columns: 1fr 1fr;        
  gap: 28px;
  margin-top: 24px;

}


.video-card {
	height: 500px;
  background:#fff; border:1px solid #eee; border-radius:14px; padding: 12px; 
  box-shadow:0 4px 12px rgba(0,0,0,.05);
}
.video-card iframe, 
.video-card video { width:100%; height:420px; border:0; border-radius:10px; display:block; }


.right-stack {
  display:flex; flex-direction:column; gap:16px;
}


.contacts-card {
  background:#fff; border:1px solid #eee; border-radius:14px; padding: 14px; 
  box-shadow:0 4px 12px rgba(0,0,0,.05);
}
.contact-buttons { display:grid; grid-template-columns: repeat(2, minmax(140px,1fr)); gap:10px; }
.cta {
  display:flex; align-items:center; justify-content:center;
  gap:8px; padding:10px 12px; border-radius:10px; border:1px solid #e5e7eb; background:#fff;
  font-weight:600; text-decoration:none; color:#111827;
  transition: transform .12s ease, box-shadow .12s ease;
}
.cta:hover { transform: translateY(-1px); box-shadow:0 6px 12px rgba(0,0,0,.08); }


.cta--wa   { border-color:#25D36633; }
.cta--tg   { border-color:#229ED933; }
.cta--mail { border-color:#2563eb33; }
.cta--wechat { border-color:#09b83e33; }


.youtube-card {
  height:10px; 
  background: linear-gradient(135deg,#111827 0%, #1f2937 100%);
  color:#fff; border-radius:14px; display:flex; align-items:center; justify-content:space-between;
  padding: 16px 18px; border:1px solid #111827;
}
.youtube-card__title { font-weight:700; font-size:18px; }
.youtube-card a.btn { background:#fff; color:#111827; border:0; }


.rfq-card {
  background:#fff; border:1px solid #eee; border-radius:14px; padding: 14px; 
  box-shadow:0 4px 12px rgba(0,0,0,.05);
}
.rfq-card form .row { display:grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.rfq-card label { display:block; font-size:14px; color:#374151; margin-bottom:8px; }
.rfq-card input, .rfq-card textarea, .rfq-card select {
  width:100%; padding:10px 12px; border:1px solid #e5e7eb; border-radius:10px; font:inherit;
}
.rfq-card button { margin-top: 10px; }


.recommend-grid { display:grid; grid-template-columns: repeat(3, minmax(220px,1fr)); gap: 16px; margin-top:24px; }
.rec-card { border:1px solid #eee; border-radius:12px; overflow:hidden; background:#fff; box-shadow:0 6px 16px rgba(0,0,0,.06); display:block; }
.rec-card img { width:100%; height:auto; display:block; }
.rec-card__body { padding:12px; }
.rec-card__title { font-weight:700; margin-bottom:6px; }

/* Mobile / Tablet */
@media (max-width: 1100px) {
  .product { grid-template-columns: 1fr; }
  .desc-faq, .media-contacts { grid-template-columns: 1fr; }
  .video-card iframe, .video-card video { height: 320px; }
}
@media (max-width: 640px) {
  .contact-buttons { grid-template-columns: 1fr; }
  .recommend-grid { grid-template-columns: 1fr; }
}




.hero-mini { position: relative; overflow: hidden; margin: 10px 0 20px; border-radius: 10px;}
.hero-mini--narrow { min-height: 200px; }


.hero-mini.hero-mini--image .hero-bg img {
  width: 100%;
  height: 170px;
  object-fit: cover;
  display: block;
  filter: saturate(.96) contrast(1.02);
}


.hero-mini.hero-mini--gradient {
  background:
     radial-gradient(80% 80% at 60% 40%, rgba(0,140,255,.25) 0%, rgba(0,70,150,.15) 40%, rgba(6,20,40,.8) 100%),
    linear-gradient(180deg, rgba(6,20,40,.6) 0%, rgba(6,20,40,.9) 100%);
	mix-blend-mode:multiply;
 
  background-color: #EEF2F7;
  min-height: 170px; 
}
.hero-mini.hero-mini--gradient::before {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 0, rgba(0,0,0,.03) 60%, rgba(0,0,0,.06) 100%);
  pointer-events: none;
}


.hero-mini__content {
  position: relative;
  padding: 16px 0 18px 50px;
  max-width: 980px;
}
.hero-mini__title {
  margin: 10px 0 6px;
  font-size: 26px;
  line-height: 1.2;
  color: #fff!important;
}
.hero-mini__lead {
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
  color: #fff!important;
  max-width: 72ch;
}


.page-grader .hero-mini__title,
.page-grader .hero-mini__lead { color: inherit; }
.page-grader .hero-mini.hero-mini--image .hero-bg img { height: 220px; }

@media (max-width: 768px) {
  .hero-mini.hero-mini--image .hero-bg img { height: 180px; }
  .hero-mini__title { font-size: 22px; }
  .hero-mini__lead { font-size: 15px; }
}






body.page-card .container .section{
  max-width: 1440px;  
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px;  
  padding-right: 16px;
}


body.page-card main .container {
  max-width: 1440px;
}


body.page-card .hero-mini.hero-mini--image .hero-bg img {
  width: 100%;
  max-width: 100%;
}


@media (min-width: 1440px) {
  body.page-card .product,
  body.page-card .product-sections,
  body.page-card .recommend-grid {
   
  }
}


@media (max-width: 1100px) {
  body.page-card .container {
    padding-left: 14px;
    padding-right: 14px;
  }
}





body.page-card .container .section{
  box-sizing: border-box;
}
@media (max-width: 380px){
  body.page-card .container .section{
    padding-left:12px;
    padding-right:12px;
  }
}









.product__media { display: block; }


.product-gallery { display: grid; grid-template-rows: auto auto; gap: 10px; }
.product-main-img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  object-fit: cover;
}

/* Превью */
.gallery-thumbs {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
 }
.gallery-thumbs .thumb-img {
  width: 100%;
  height: 100px;
  object-fit: cover;
  display: block;
  border:1px solid #B5B5B5;
  padding: 5px;
  border-radius: 8px;
  opacity: .9;
  transition: transform .15s ease, opacity .15s ease, box-shadow .15s ease;
}
.gallery-thumbs .thumb-img:hover {
  transform: translateY(-2px);
  opacity: 1;
  box-shadow: 0 6px 14px rgba(0,0,0,.12);
}
.gallery-thumbs .thumb-img.is-active {
  outline: 2px solid #0F2166;
  outline-offset: 2px;
  opacity: 1;
}

@media (max-width: 900px) {
  .gallery-thumbs { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 540px) {
  .gallery-thumbs { grid-template-columns: repeat(3, 1fr); }
  .gallery-thumbs .thumb-img { height: 56px; }
}







.capbar { margin-top: 12px; margin-bottom: 8px; }
.capbar .capbar__inner {
  display: flex; flex-wrap: wrap; gap: 8px;
  align-items: center;
  padding: 10px; border:1px solid #eee; border-radius: 12px;
  background: #fff; box-shadow: 0 2px 8px rgba(0,0,0,.03);
}
.capbar__label {
  font-size: 14px; color:#4b5563; margin-right: 4px; white-space: nowrap;
}
.capbtn {
  display:inline-flex; align-items:center; gap:6px;
  padding: 6px 12px; border-radius: 999px;
  background:#fff; border:1px solid #e5e7eb; color:#111827;
  font-size: 14px; line-height: 1; text-decoration:none; transition: .15s;
}
.capbtn:hover { border-color:#cbd5e1; background:#f9fafb; }
.capbtn.is-active { background:#0F2166; color:#fff; border-color:#0F2166; }
.capbtn__unit { opacity:.65; font-size:12px; }






.media-contacts{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  overflow-x:hidden;     
}
.media-contacts *{
  min-width:0;           
}


.video-card,
.right-stack,
.youtube-inline{ max-width:100%; }
.video-card iframe,
.video-card video{
  display:block;
  width:100%;
  max-width:100%;
}


.youtube-inline{ height:auto !important; }
.youtube-inline a{ width:100%; }


@media (max-width: 1100px){
  .media-contacts{ grid-template-columns:1fr; }
}


@media (max-width: 768px){
  .media-contacts{ gap:16px; margin-top:18px; }

  .video-card{ height:auto; padding:12px; }
  .video-card iframe,
  .video-card video{ height:220px; } 

 
  .youtube-inline a{
    gap:12px;
    padding:12px 14px;
    align-items:stretch;
  }
  .youtube-inline .btn{ width:100%; text-align:center; }
  .youtube-inline [style*="white-space:nowrap"]{ white-space:normal !important; }
}


@media (max-width: 480px){
  .video-card iframe,
  .video-card video{ height:200px; }

  .contact-buttons{ grid-template-columns:1fr; }
}


.right-stack{
  overflow-x:hidden;
}








.product-gallery .gallery-main { position: relative; border-radius:12px; }
.product-gallery .gallery-main img {
  box-shadow: 0 10px 28px rgba(0,0,0,.08);
  border-radius:12px;
}
.product-gallery .gallery-main::after{
  content:"";
  position:absolute; inset:0; border-radius:12px;
  box-shadow: inset 0 0 0 1px rgba(15,33,102,.10); 
  pointer-events:none;
}

.product-gallery .gallery-main { cursor: zoom-in; }
.product-gallery .gallery-main:hover::before{
  content:"";
  position:absolute; inset:0; border-radius:12px;
  background: radial-gradient(transparent 60%, rgba(0,0,0,.06));
}


.gallery-thumbs .thumb-img.is-active{
  outline:2px solid #0F2166; outline-offset:2px;
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(0,0,0,.10);
}


.gallery-thumbs .thumb-img:hover{
  opacity:1; transform: translateY(-2px);
}


@media (max-width: 640px){
  .product-gallery .gallery-main img{ box-shadow: 0 6px 16px rgba(0,0,0,.06); }
  .gallery-thumbs .thumb-img.is-active{ transform:none; box-shadow:0 4px 10px rgba(0,0,0,.08); }
}






@media (max-width: 380px) {
  
  html, body { overflow-x: hidden; }

 
  .product-gallery .gallery-main img,
  .product-gallery .thumb-img {
    max-width: 100%;
    height: auto;
  }

 
  .gallery-thumbs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
  }
  .gallery-thumbs .thumb-link { display: block; }

  
  .gallery-cta {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
  .gallery-cta .btn {
    width: 100%;
    white-space: normal;      
    line-height: 1.2;
    text-align: center;
  }

  
  .capbar__inner {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
  .capbtn {
    min-width: 0;             
    text-align: center;
  }

  
  .product { display: block; }
  .product__right,
  .product-gallery { margin: 0; }
}





.tech-card{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:12px;
  padding:16px 20px;
}
.tech-card h2{ margin:0 0 12px; font-weight:800; color:#0f172a; }


.tech-card .prose .specs{ list-style:none; margin:0; padding:0; }
.tech-card .prose .spec{
  display:grid;
  grid-template-columns: 1fr auto;  /* название слева, значение справа */
  gap:12px;
  align-items:baseline;
  padding:8px 0;
  border-top:1px solid #eef2f7;
}
.tech-card .prose .spec:first-child{ border-top:0; }

.tech-card .prose .spec__name{
  color:#475569;
   overflow:hidden; text-overflow:ellipsis;
}
.tech-card .prose .spec__value{
  color:#0f172a; font-weight:600; text-align:right;
  white-space:nowrap; font-variant-numeric: tabular-nums;
}


@media (max-width:520px){
  .tech-card .prose .spec{ grid-template-columns:1fr; }
  .tech-card .prose .spec__value{ text-align:left; margin-top:2px; }
}


@media print{
  .tech-card{ border-color:#ddd; }
  .tech-card .prose .spec{ border-color:#ddd; }
}






.section1{
  max-width: 100%;	
  margin: 32px 0 24px;
  padding: 20px 20px 10px;
  background: linear-gradient(180deg,#f8fafc 0%, #ffffff 100%);
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  box-shadow: 0 1px 0 rgba(15,23,42,.04);
}

.section1 > h2{
  margin: 0 0 16px;
  font-weight: 800;
  color:#0f172a;
  display:flex;
  align-items:center;
  gap:12px;
}


.section1 > h2::after{
  content:"";
  height:1px;
  flex:1 1 auto;
  background: linear-gradient(90deg,#e5e7eb, rgba(229,231,235,0));
  border-radius:1px;
}


.recommend-grid{
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(260px,1fr));
  gap:16px;
}


.rec-card{
  background:#fff;
  border:1px solid #eef2f7;
  border-radius:12px;
  overflow:hidden;
  transition:box-shadow .2s ease, transform .2s ease;
}
.rec-card:hover{ box-shadow:0 8px 16px rgba(15,23,42,.06); transform:translateY(-2px); }

.rec-card img{ display:block; width:100%; height:auto; padding:12px 12px 0; object-fit:contain; }
.rec-card__body{ padding:12px 14px 14px; }


@media (max-width:480px){
  .section1{ padding:16px 14px 6px; border-radius:12px; }
  .recommend-grid{ grid-template-columns: 1fr; gap:12px; }
}







.product > * { min-width: 0; }                 
.product__right,
.product__stack,
.price-card,
.tech-card { min-width: 0; }


.product__title,
.price-card,
.tech-card,
.price-card .price-main,
.tech-card .prose,
.tech-card .prose .spec__name,
.tech-card .prose .spec__value {
  overflow-wrap: anywhere;
  word-break: break-word;
}


.price-card .btns .btn { white-space: normal; line-height: 1.2; }


.product__meta .badge { white-space: normal; }


@media (max-width: 420px){
  .product__title{ font-size: 22px; }
  .price-card, .tech-card{ padding-left:14px; padding-right:14px; }
  .price-card .btns{ gap:8px; }
}










/* Trust bullets */
.bullets--trust {
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 12px 14px 12px 18px;
  margin-top: 10px;
}

.bullets--trust li {
  position: relative;
  padding-left: 22px;
  margin: 6px 0;
  color: #0f172a;
}


.bullets--trust li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;            
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #0F2166; 
}


.bullets--trust li:nth-child(2),
.bullets--trust li:nth-child(5) {
  color: #0F2166;
  font-weight: 600;
}


@media (max-width: 480px) {
  .bullets--trust {
    padding: 10px 12px 10px 16px;
  }
  .bullets--trust li {
    font-size: 14px;
  }
}









.features-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(240px,1fr))}
@media (max-width:900px){.features-grid{grid-template-columns:1fr}}
.feat{display:flex;gap:12px;align-items:flex-start}
.feat svg{flex:0 0 24px;opacity:.9;color:#0F2166}
.feat__title{font-weight:600;margin-bottom:2px}
.feat__text{font-size:14px;color:#6b7280}