/* ==========================================================
   PDS generated pages v2
   Стили для страниц, которые создаются PHP-генераторами
========================================================== */

body.product-detail-v2,
body.article-detail-v2{
  min-height:100vh;
}

body.product-detail-v2 .site-shell,
body.article-detail-v2 .site-shell{
  min-height:100vh;
  display:flex;
  flex-direction:column;
}

body.product-detail-v2 .footer,
body.article-detail-v2 .footer{
  margin-top:auto;
}

.footer__links{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:14px;
}

.footer__links a{
  color:#d9ecff;
  opacity:.78;
  font-size:13px;
}

.footer__links a:hover{opacity:1;color:#fff;}

/* Product generated detail pages */
.product-detail-v2 .breadcrumb{
  margin-top:28px!important;
}

.product-detail-v2 .info h1{
  margin-bottom:16px!important;
}

.product-detail-v2 .spec-row{
  display:grid!important;
  grid-template-columns:150px 1fr!important;
  gap:18px!important;
  align-items:start!important;
  padding:14px 0!important;
}

.product-detail-v2 .spec-label,
.product-detail-v2 .spec-val{
  display:block!important;
}

.product-detail-v2 .price-block{
  padding:22px!important;
  margin:24px 0!important;
}

.product-detail-v2 .btn-req{
  width:100%!important;
  justify-content:center!important;
}

.product-detail-v2 .gallery-thumbs img{
  width:76px!important;
  height:64px!important;
  padding:4px!important;
  object-fit:cover!important;
  cursor:pointer!important;
}

.product-detail-v2 .modal form{
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
}

.product-detail-v2 .modal h3{
  margin:0 0 8px!important;
  color:#fff!important;
  text-transform:uppercase!important;
  font-size:24px!important;
}

/* Blog generated article pages */
.article-detail-v2 .article-hero{
  position:relative;
  overflow:hidden;
  width:min(1480px,calc(100vw - 44px));
  margin:34px auto 0;
  padding:42px 38px 44px;
  border-radius:22px;
  border:1px solid rgba(207,232,255,.22);
  background:linear-gradient(135deg,rgba(20,72,128,.72),rgba(7,22,45,.86));
  box-shadow:0 24px 70px rgba(0,0,0,.26);
}

.article-detail-v2 .article-hero::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.14;
  pointer-events:none;
  background:linear-gradient(118deg,transparent 0 42%,#fff 42.1% 42.25%,transparent 42.5% 100%);
}

.article-detail-v2 .article-hero-inner{
  position:relative;
  z-index:1;
  max-width:980px;
}

.article-detail-v2 .breadcrumb{
  margin:0 0 16px;
  color:#aecaeb;
  font-size:13px;
  line-height:1.55;
}

.article-detail-v2 .breadcrumb a{color:#8dccff;}

.article-detail-v2 .article-meta{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:16px;
}

.article-detail-v2 .article-cat{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#85c5ff;
  font-size:13px;
  font-weight:900;
  letter-spacing:2.4px;
  text-transform:uppercase;
}

.article-detail-v2 .article-cat::before{
  content:"";
  width:16px;
  height:18px;
  background:linear-gradient(135deg,#78c4ff,#2f72bd);
  clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);
}

.article-detail-v2 .article-date{color:#c9e3fa;font-size:14px;font-weight:700;}

.article-detail-v2 .article-hero h1{
  color:#fff;
  font-size:clamp(34px,4vw,58px);
  line-height:1.06;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.8px;
  text-shadow:0 5px 18px rgba(0,0,0,.25);
}

.article-detail-v2 .article-tags{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:18px;
}

.article-detail-v2 .article-tag{
  display:inline-flex;
  min-height:32px;
  align-items:center;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(207,232,255,.18);
  background:rgba(111,167,223,.14);
  color:#d8edff;
  font-size:13px;
  font-weight:800;
}

.article-detail-v2 .article-layout{
  width:min(980px,calc(100vw - 44px));
  margin:22px auto 70px;
  padding:34px;
  border-radius:24px;
  border:1px solid rgba(207,232,255,.2);
  background:linear-gradient(135deg,rgba(20,72,128,.64),rgba(7,22,45,.88));
  box-shadow:0 24px 70px rgba(0,0,0,.28);
}

.article-detail-v2 .article-cover{
  overflow:hidden;
  border-radius:20px;
  border:1px solid rgba(207,232,255,.18);
  background:rgba(255,255,255,.07);
  margin-bottom:30px;
}

.article-detail-v2 .article-cover img{width:100%;max-height:520px;object-fit:cover;display:block;}
.article-detail-v2 .article-intro{color:#d8edff;font-size:18px;line-height:1.72;margin-bottom:28px;padding-bottom:28px;border-bottom:1px solid rgba(207,232,255,.14);}
.article-detail-v2 .article-body{color:#d8edff;font-size:16px;line-height:1.78;}
.article-detail-v2 .article-body p{margin:0 0 18px;color:#d8edff;}
.article-detail-v2 .article-body h2{margin:34px 0 14px;color:#fff;font-size:30px;line-height:1.15;text-transform:uppercase;}
.article-detail-v2 .article-body h3{margin:26px 0 10px;color:#fff;font-size:22px;line-height:1.2;}
.article-detail-v2 .article-body ul,.article-detail-v2 .article-body ol{padding-left:24px;margin:0 0 20px;}
.article-detail-v2 .article-body li{margin-bottom:8px;color:#d8edff;}
.article-detail-v2 .article-body blockquote{margin:24px 0;padding:20px 22px;border-left:4px solid #6fa7df;border-radius:14px;background:rgba(255,255,255,.07);color:#fff;}
.article-detail-v2 .article-body table{width:100%;border-collapse:collapse;margin:24px 0;overflow:hidden;border-radius:14px;}
.article-detail-v2 .article-body th{background:rgba(47,114,189,.65);color:#fff;padding:12px;text-align:left;}
.article-detail-v2 .article-body td{padding:12px;border-bottom:1px solid rgba(207,232,255,.14);color:#d8edff;background:rgba(255,255,255,.04);}
.article-detail-v2 .article-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:30px 0;}
.article-detail-v2 .gallery-item{overflow:hidden;border-radius:16px;border:1px solid rgba(207,232,255,.18);background:rgba(255,255,255,.07);}
.article-detail-v2 .gallery-item img{width:100%;height:200px;object-fit:cover;display:block;cursor:pointer;transition:.25s;}
.article-detail-v2 .gallery-item img:hover{transform:scale(1.04);}
.article-detail-v2 .article-cta{margin-top:34px;padding:26px;border-radius:20px;border:1px solid rgba(207,232,255,.18);background:rgba(255,255,255,.07);}
.article-detail-v2 .article-cta h3{color:#fff;font-size:28px;text-transform:uppercase;margin-bottom:10px;}
.article-detail-v2 .article-cta p{color:#c9e3fa;font-size:16px;line-height:1.6;margin-bottom:20px;}
.article-detail-v2 .btn-gold{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:12px;background:linear-gradient(135deg,#2f72bd,#164c8f);color:#fff;font-weight:900;text-transform:uppercase;}
.article-detail-v2 .lightbox{display:none;position:fixed;inset:0;z-index:5000;align-items:center;justify-content:center;background:rgba(3,9,20,.88);backdrop-filter:blur(10px);}
.article-detail-v2 .lightbox.open{display:flex;}
.article-detail-v2 .lightbox img{max-width:90vw;max-height:88vh;object-fit:contain;border-radius:14px;}
.article-detail-v2 .lightbox-close{position:absolute;top:24px;right:28px;width:44px;height:44px;border:1px solid rgba(207,232,255,.22);border-radius:12px;background:rgba(255,255,255,.08);color:#fff;font-size:30px;cursor:pointer;}

@media(max-width:860px){
  .footer__inner{gap:10px;}
  .footer__links{justify-content:center;}
  .product-detail-v2 .spec-row{grid-template-columns:1fr!important;gap:4px!important;}
  .article-detail-v2 .article-hero,
  .article-detail-v2 .article-layout{width:calc(100vw - 28px);padding:24px 18px;border-radius:18px;}
  .article-detail-v2 .article-layout{margin-bottom:46px;}
}

/* ===== PDS v2 final generator fixes ===== */
.product-detail-v2 .modal-bg{
  position:fixed!important; inset:0!important; display:none!important; align-items:center!important; justify-content:center!important;
  padding:22px!important; background:rgba(3,10,24,.72)!important; backdrop-filter:blur(10px)!important; z-index:5000!important;
}
.product-detail-v2 .modal-bg.open{display:flex!important;}
.product-detail-v2 .modal{
  position:relative!important; width:min(520px,calc(100vw - 28px))!important; max-width:520px!important;
  padding:34px!important; overflow:hidden!important; border-radius:24px!important;
  border:1px solid rgba(132,197,255,.35)!important;
  background:linear-gradient(135deg,rgba(24,81,141,.94),rgba(7,27,58,.97))!important;
  box-shadow:0 32px 90px rgba(0,0,0,.45)!important; color:#d8edff!important;
}
.product-detail-v2 .modal:before{content:"";position:absolute;inset:0;opacity:.11;pointer-events:none;background-image:linear-gradient(30deg,#80c7ff 12%,transparent 12.5%,transparent 87%,#80c7ff 87.5%,#80c7ff),linear-gradient(150deg,#80c7ff 12%,transparent 12.5%,transparent 87%,#80c7ff 87.5%,#80c7ff);background-size:120px 70px;}
.product-detail-v2 .modal > *{position:relative;z-index:1;}
.product-detail-v2 .modal-x{position:absolute!important;top:16px!important;right:16px!important;width:38px!important;height:38px!important;border-radius:12px!important;border:1px solid rgba(207,232,255,.24)!important;background:rgba(255,255,255,.08)!important;color:#d8edff!important;font-size:26px!important;line-height:1!important;cursor:pointer!important;}
.product-detail-v2 .modal p,
.product-detail-v2 #modal-product-info{color:#b9d8f4!important;}
.product-detail-v2 .modal input:not([type=checkbox]),
.product-detail-v2 .modal textarea{
  min-height:54px!important; border-radius:14px!important; border:1px solid rgba(207,232,255,.24)!important;
  background:rgba(7,24,50,.46)!important; color:#fff!important; padding:0 16px!important; outline:none!important;
}
.product-detail-v2 .modal textarea{min-height:116px!important;padding:16px!important;line-height:1.45!important;}
.product-detail-v2 .modal input::placeholder,
.product-detail-v2 .modal textarea::placeholder{color:#9bbbd8!important;}
.product-detail-v2 .modal input:focus,
.product-detail-v2 .modal textarea:focus{border-color:#7dc7ff!important;box-shadow:0 0 0 3px rgba(125,199,255,.16)!important;}
.product-detail-v2 .modal input[type=checkbox]{width:18px!important;height:18px!important;margin:2px 0 0!important;flex:0 0 18px!important;accent-color:#69bfff!important;}
.product-detail-v2 .modal label{display:block!important;color:#c7def4!important;font-size:13px!important;line-height:1.45!important;font-weight:600!important;}
.product-detail-v2 .modal label a{color:#8dd0ff!important;text-decoration:underline!important;text-underline-offset:3px!important;}
.product-detail-v2 .modal form > div:has(#consent-modal){width:100%!important;display:grid!important;grid-template-columns:18px 1fr!important;gap:10px!important;align-items:start!important;margin:4px 0 6px!important;color:#c7def4!important;}
.product-detail-v2 .modal .btn-gold,
.product-detail-v2 .modal button[type=submit]{height:56px!important;border-radius:14px!important;border:0!important;background:linear-gradient(135deg,#2f7bd0,#1f5fa9)!important;color:#fff!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.6px!important;}

/* Cookie notice in PDS v2 style */
#cookie-notice{position:fixed;left:22px;right:22px;bottom:22px;z-index:9999;display:flex;align-items:center;gap:16px;max-width:860px;margin:auto;padding:18px 20px;border-radius:18px;border:1px solid rgba(132,197,255,.34);background:linear-gradient(135deg,rgba(20,72,128,.96),rgba(7,22,45,.98));box-shadow:0 24px 70px rgba(0,0,0,.42);color:#d8edff;font-family:'Exo 2',system-ui,sans-serif;transition:.25s;}
#cookie-notice.is-hidden{opacity:0;transform:translateY(12px);}
.cookie-notice__icon{width:24px;height:26px;flex:0 0 24px;background:linear-gradient(135deg,#7ec8ff,#2f72bd);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);font-size:0;box-shadow:0 0 22px rgba(126,200,255,.25);}
.cookie-notice__text{display:flex;flex-direction:column;gap:4px;line-height:1.45;font-size:13px;}
.cookie-notice__text strong{color:#fff;text-transform:uppercase;letter-spacing:.8px;font-size:13px;}
.cookie-notice__text a{color:#8dd0ff;text-decoration:underline;text-underline-offset:3px;}
#cookie-accept-btn{margin-left:auto;min-height:44px;padding:0 22px;border:0;border-radius:12px;background:linear-gradient(135deg,#2f7bd0,#1f5fa9);color:#fff;font-weight:900;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;white-space:nowrap;}
@media(max-width:680px){#cookie-notice{left:12px;right:12px;bottom:12px;align-items:flex-start;flex-direction:column;}#cookie-accept-btn{width:100%;}}

/* Blog category pages */
.blog-category-v2 .blog-listing{width:min(1180px,calc(100vw - 44px));margin:28px auto 74px;display:grid;gap:16px;}
.blog-category-v2 .blog-card{display:grid;grid-template-columns:220px 1fr;gap:22px;padding:18px;border-radius:22px;border:1px solid rgba(207,232,255,.18);background:linear-gradient(135deg,rgba(20,72,128,.58),rgba(7,22,45,.86));color:#d8edff;text-decoration:none;transition:.25s;}
.blog-category-v2 .blog-card:hover{transform:translateY(-4px);border-color:rgba(132,197,255,.42);box-shadow:0 22px 60px rgba(0,0,0,.26);}
.blog-category-v2 .blog-card__img{height:150px;border-radius:16px;overflow:hidden;background:rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;color:#8dd0ff;font-size:32px;}
.blog-category-v2 .blog-card__img img{width:100%;height:100%;object-fit:cover;display:block;}
.blog-category-v2 .blog-card__meta{display:flex;gap:10px;flex-wrap:wrap;color:#8dd0ff;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;}
.blog-category-v2 .blog-card h3{color:#fff;font-size:26px;line-height:1.12;text-transform:uppercase;margin:0 0 10px;}
.blog-category-v2 .blog-card p{margin:0;color:#c7def4;line-height:1.6;}
.blog-category-v2 .blog-card span{display:inline-flex;margin-top:16px;color:#8dd0ff;font-weight:900;text-transform:uppercase;letter-spacing:.7px;}
.blog-category-v2 .blog-empty{padding:38px;border-radius:22px;border:1px solid rgba(207,232,255,.18);background:rgba(255,255,255,.06);color:#d8edff;text-align:center;}
@media(max-width:720px){.blog-category-v2 .blog-card{grid-template-columns:1fr}.blog-category-v2 .blog-card__img{height:190px}.blog-category-v2 .blog-card h3{font-size:22px}}


/* ==========================================================
   PDS V2 — generated blog/category cards final fix
========================================================== */
.blog-category-v2 .blog-listing{
  width:min(1180px,calc(100vw - 44px));
  margin:32px auto 78px;
  display:grid;
  gap:18px;
}
.blog-category-v2 .blog-card{
  display:grid!important;
  grid-template-columns:220px minmax(0,1fr)!important;
  gap:22px!important;
  align-items:stretch!important;
  padding:18px!important;
  border-radius:22px!important;
  border:1px solid rgba(207,232,255,.22)!important;
  background:linear-gradient(135deg,rgba(20,72,128,.62),rgba(7,22,45,.9))!important;
  color:#d8edff!important;
  text-decoration:none!important;
  box-shadow:0 18px 55px rgba(0,0,0,.18)!important;
  transition:.25s ease!important;
}
.blog-category-v2 .blog-card:hover{transform:translateY(-4px);border-color:rgba(132,197,255,.48)!important;box-shadow:0 24px 70px rgba(0,0,0,.28)!important;}
.blog-category-v2 .blog-card__img{height:154px;border-radius:16px;overflow:hidden;background:rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;color:#8dd0ff;font-size:34px;}
.blog-category-v2 .blog-card__img img{width:100%;height:100%;object-fit:cover;display:block;}
.blog-category-v2 .blog-card__meta{display:flex;gap:10px;flex-wrap:wrap;color:#8dd0ff;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;}
.blog-category-v2 .blog-card h3{color:#fff;font-size:26px;line-height:1.12;text-transform:uppercase;margin:0 0 10px;font-weight:900;}
.blog-category-v2 .blog-card p{margin:0;color:#c7def4;line-height:1.6;font-size:15px;}
.blog-category-v2 .blog-card .blog-card__more{display:inline-flex;margin-top:16px;color:#8dd0ff;font-weight:900;text-transform:uppercase;letter-spacing:.7px;}
.blog-category-v2 .blog-empty{padding:30px;border-radius:22px;border:1px solid rgba(207,232,255,.2);background:rgba(20,72,128,.35);color:#c7def4;}
@media(max-width:720px){.blog-category-v2 .blog-card{grid-template-columns:1fr!important}.blog-category-v2 .blog-card__img{height:190px}.blog-category-v2 .blog-card h3{font-size:22px}}
