@charset "UTF-8";
:root {
  --primary: #F47920;
  --primary-dark: #D4651A;
  --primary-light: #FFF0E5;
  --primary-ultra-light: #FFF8F2;
  --dark: #1A1F25;
  --dark-alt: #2A3140;
  --text: #1A1F25;
  --text-secondary: #4A5568;
  --text-muted: #718096;
  --text-dim: #A0AEC0;
  --white: #FFFFFF;
  --bg: #FFFFFF;
  --bg-alt: #F7F9FC;
  --bg-card: #FFFFFF;
  --border: #E2E8F0;
  --border-light: #EDF2F7;
  --copper: #B87333;
  --aluminum: #8FA3B8;
  --accent: #0068B7;
  --accent-light: #E6F0FA;
  --font-display: 'Onest', sans-serif;
  --font-body: 'Onest', sans-serif;
  --radius: 8px;
  --radius-lg: 14px;
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
  --shadow: 0 4px 16px rgba(0,0,0,0.06), 0 2px 6px rgba(0,0,0,0.04);
  --shadow-lg: 0 12px 40px rgba(0,0,0,0.08), 0 4px 12px rgba(0,0,0,0.04);
  --transition: 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; overflow-x:clip; }
body { font-family:var(--font-body); background:var(--bg); color:var(--text); line-height:1.6; overflow-x:clip; -webkit-font-smoothing:antialiased; max-width:100vw; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; height:auto; display:block; }
button { cursor:pointer; font-family:inherit; }
.container { max-width:1280px; margin:0 auto; padding:0 24px; width:100%; }

/* HEADER: V3 HYBRID — dark top + white nav */
.header-wrap { position:sticky; top:0; z-index:1000; transition:var(--transition); }
.header-wrap.scrolled { box-shadow:var(--shadow); }

.header-dark {
  background:var(--dark);
  padding:0;
}
.header-dark__inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 0;
}
.header-dark__contacts {
  display:flex;
  align-items:center;
  gap:18px;
}
.header-dark__contacts a {
  font-size:0.8rem;
  color:rgba(255,255,255,0.55);
  transition:var(--transition);
  display:flex;
  align-items:center;
  gap:5px;
}
.header-dark__contacts a:hover { color:#fff; }
.header-dark__contacts svg { opacity:0.5; flex-shrink:0; }
.header-dark__right {
  display:flex;
  align-items:center;
  gap:12px;
}

/* Logo — white variant for dark header */
.logo { display:flex; align-items:center; flex-shrink:0; }
.logo img { height:50px; width:auto; display:block; }

/* Lang switch */
.lang-switch { position:relative; }
.lang-switch__btn {
  display:flex; align-items:center; gap:4px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.12);
  color:rgba(255,255,255,0.7);
  padding:5px 12px; border-radius:6px;
  font-size:0.76rem; font-weight:600;
  font-family:inherit; cursor:pointer;
  transition:var(--transition); white-space:nowrap;
}
.lang-switch__btn:hover { background:rgba(255,255,255,0.1); border-color:rgba(255,255,255,0.2); color:#fff; }
.lang-switch__btn:active { transform:scale(0.96); }
.lang-switch.open .lang-switch__btn { background:rgba(255,255,255,0.12); border-color:rgba(255,255,255,0.25); color:#fff; }
.lang-switch__dropdown {
  position:absolute; top:calc(100% + 8px); right:0;
  background:var(--dark-alt); border:1px solid rgba(255,255,255,0.12);
  border-radius:8px; padding:4px; min-width:140px;
  box-shadow:0 8px 24px rgba(0,0,0,0.4);
  opacity:0; visibility:hidden; transform:translateY(-4px);
  transition:var(--transition); z-index:1010;
}
.lang-switch.open .lang-switch__dropdown { opacity:1; visibility:visible; transform:translateY(0); }
.lang-option { display:block; padding:8px 14px; border-radius:5px; font-size:0.82rem; color:rgba(255,255,255,0.6); transition:var(--transition); }
.lang-option:hover { background:rgba(255,255,255,0.06); color:#fff; }
.lang-option.active { color:var(--primary); font-weight:600; }

/* White nav row */
.header-light {
  background:rgba(255,255,255,0.97);
  backdrop-filter:blur(16px);
  border-bottom:1px solid var(--border);
}
.header-light__inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:10px 0;
  gap:16px;
}
.header-light nav ul { list-style:none; display:flex; gap:2px; align-items:center; }
.header-light nav > ul > li { display:flex; align-items:center; }
.header-light nav a {
  display:inline-flex; align-items:center;
  padding:7px 14px; border-radius:var(--radius);
  font-size:0.88rem; font-weight:500;
  color:var(--text-secondary);
  transition:var(--transition); white-space:nowrap;
}
.header-light nav a:hover { color:var(--primary); background:var(--primary-ultra-light); }
.header-light nav a.active { color:var(--primary); background:var(--primary-light); font-weight:600; }
.header-actions { display:flex; gap:8px; align-items:center; flex-shrink:0; }

.burger { display:none; background:none; border:none; width:40px; height:40px; flex-direction:column; justify-content:center; gap:5px; padding:8px; border-radius:var(--radius); transition:var(--transition); }
.burger:hover { background:rgba(255,255,255,0.1); }
.burger:active { background:rgba(255,255,255,0.05); transform:scale(0.92); }
.burger span { display:block; width:100%; height:2px; background:#fff; border-radius:2px; transition:var(--transition); }

.btn { display:inline-flex; align-items:center; gap:8px; padding:10px 22px; border-radius:var(--radius); font-weight:600; font-size:0.88rem; border:1.5px solid transparent; transition:var(--transition); white-space:nowrap; cursor:pointer; }
.btn:focus-visible { outline:2px solid var(--primary); outline-offset:2px; }
.btn:active { transform:translateY(0) scale(0.97); }
.btn--primary { background:var(--primary); color:#fff; border-color:var(--primary); }
.btn--primary:hover { background:var(--primary-dark); border-color:var(--primary-dark); transform:translateY(-1px); box-shadow:0 4px 16px rgba(244,121,32,0.25); }
.btn--primary:active { background:#C05818; transform:scale(0.97); box-shadow:none; }
.btn--outline { background:transparent; color:var(--text); border-color:var(--border); }
.btn--outline:hover { border-color:var(--primary); color:var(--primary); background:var(--primary-ultra-light); }
.btn--outline:active { background:var(--primary-light); transform:scale(0.97); }
.btn--white { background:#fff; color:var(--primary); font-weight:700; border-color:rgba(255,255,255,0.3); }
.btn--white:hover { background:rgba(255,255,255,0.92); transform:translateY(-1px); box-shadow:0 4px 20px rgba(0,0,0,0.1); }
.btn--white:active { background:rgba(255,255,255,0.8); transform:scale(0.97); box-shadow:none; }
.btn--lg { padding:14px 32px; font-size:1rem; }
.btn--sm { padding:8px 16px; font-size:0.82rem; }
.btn--ghost-white { background:rgba(255,255,255,0.15); color:#fff; border-color:rgba(255,255,255,0.3); }
.btn--ghost-white:hover { background:rgba(255,255,255,0.25); }
.btn--ghost-white:active { background:rgba(255,255,255,0.1); transform:scale(0.97); }

/* HERO */
.hero { position:relative; min-height:88vh; display:flex; align-items:center; overflow:hidden; background:#1A1F25; width:100%; }
.hero::before { content:''; position:absolute; inset:0; background:url('../images/hero-bg.jpg') center/cover no-repeat; }
.hero__video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity .5s ease; pointer-events:none; }
.hero__video.is-ready { opacity:1; }
/* Перед перезапуском растворяем видео в .hero::before — там лежит его же первый кадр,
   поэтому склейка петли читается как плавный переход, а не как рывок. */
.hero__video.is-ready.is-seam { opacity:0; }
.hero::after { content:''; position:absolute; inset:0; background:linear-gradient(160deg, rgba(26,31,37,0.82) 0%, rgba(42,49,64,0.7) 50%, rgba(52,64,84,0.65) 100%); }
.hero .container { position:relative; z-index:2; display:flex; justify-content:center; padding-top:80px; padding-bottom:80px; }
.hero__content { max-width:720px; width:100%; min-width:0; }
.hero__content--centered { text-align:center; margin:0 auto; }
.hero__content--centered .hero__desc { margin-left:auto; margin-right:auto; }
.hero__content--centered .hero__actions { justify-content:center; }
.hero__content--centered .hero__badge { margin-left:auto; margin-right:auto; }
.hero__content--centered h1 { margin-left:auto; margin-right:auto; }
.hero__badge { display:inline-flex; align-items:center; gap:8px; padding:6px 18px; background:rgba(244,121,32,0.2); border:1px solid rgba(244,121,32,0.35); border-radius:100px; font-size:0.76rem; font-weight:600; color:#fff; text-transform:uppercase; letter-spacing:1.5px; margin-bottom:24px; backdrop-filter:blur(8px); }
.hero__badge::before { content:''; width:6px; height:6px; border-radius:50%; background:#fff; animation:pulse 2s infinite; }
@keyframes pulse { 0%,100%{opacity:1} 50%{opacity:.3} }
.hero h1 { font-family:var(--font-display); font-size:clamp(2.1rem, 4.2vw, 2.5rem); line-height:1.1; letter-spacing:0.5px; margin-bottom:24px; color:#fff; max-width:700px; }
.hero h1 span { color:rgba(255,255,255,0.65); }
.hero__desc { font-size:1.05rem; color:rgba(255,255,255,0.85); margin-bottom:36px; max-width:540px; line-height:1.75; }
.hero__actions { display:flex; gap:14px; flex-wrap:nowrap; margin-bottom:52px; }
.hero__stats { display:grid; grid-template-columns:repeat(3, 1fr); gap:2px; border-radius:var(--radius-lg); overflow:hidden; }
.hero__stat { background:rgba(255,255,255,0.08); backdrop-filter:blur(10px); padding:22px 24px; text-align:center; border-right:1px solid rgba(255,255,255,0.06); }
.hero__stat-num { font-family:var(--font-display); font-size:2.4rem; color:#fff; line-height:1; letter-spacing:0.5px; font-weight:700;}
.hero__stat-label { font-size:0.78rem; color:rgba(255,255,255,0.7); margin-top:4px; }

/* hero__visual removed */







@keyframes spin { to { transform:rotate(360deg); } }







/* SECTIONS */
.section { padding:100px 0; }
.section--alt { background:var(--bg-alt); }
.section__header { margin-bottom:56px; }
.section__tag { display:inline-flex; align-items:center; gap:10px; font-size:0.75rem; font-weight:700; text-transform:uppercase; letter-spacing:3px; color:var(--primary); margin-bottom:14px; }
.section__tag::before { content:''; width:32px; height:2px; background:var(--primary); }
.section__title { font-family:var(--font-display); font-size:clamp(1.8rem, 3.2vw, 2.6rem); letter-spacing:0.5px; color:var(--dark); margin-bottom:12px; line-height:1.15;}
.section__desc { font-size:1rem; color:var(--text-muted); max-width:560px; line-height:1.7; }
/* Секция «О компании» на главной — «Сплит»: текст + фото */
.about-split__grid { display:grid; grid-template-columns:1.05fr 0.95fr; gap:64px; align-items:center; }
.about-split__content .section__title { margin-bottom:22px; }
.about-split__lead { font-size:1.3rem; line-height:1.5; color:var(--text); font-weight:500; margin-bottom:20px; }
.about-split__text { color:var(--text-secondary); line-height:1.75; display:flex; flex-direction:column; gap:14px; }
.about-split__actions { margin-top:30px; }
.about-split__media { position:relative; }
.about-split__media img { width:100%; height:480px; object-fit:cover; border-radius:var(--radius-lg); box-shadow:var(--shadow-lg); }
.about-split__media::after { content:''; position:absolute; left:-18px; bottom:-18px; width:120px; height:120px; border-left:3px solid var(--primary); border-bottom:3px solid var(--primary); border-radius:0 0 0 var(--radius-lg); z-index:-1; }
@media (max-width:900px) {
  .about-split__grid { grid-template-columns:1fr; gap:36px; }
  .about-split__media { order:-1; }
  .about-split__media img { height:340px; }
}

/* FINDER */
.finder { background:var(--white); border:1px solid var(--border); border-radius:var(--radius-lg); padding:48px; position:relative; overflow:hidden; box-shadow:var(--shadow-lg); }
.finder::before { content:''; position:absolute; top:-1px; left:0; right:0; height:4px; background:linear-gradient(90deg, var(--primary), #FFB366, var(--primary)); }
.finder__title { font-family:var(--font-display); font-size:1.55rem; color:var(--dark); letter-spacing:0.5px; margin-bottom:8px; }
.finder__desc { color:var(--text-muted); font-size:0.9rem; margin-bottom:32px; }
.finder__grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; margin-bottom:0; }
.finder__field--btn { display:flex; align-items:flex-end; }
.finder__btn { width:100%; justify-content:center; }
.finder__field label { display:block; font-size:0.78rem; font-weight:600; color:var(--text-muted); text-transform:uppercase; letter-spacing:1px; margin-bottom:8px; }
.finder__field select, .finder__field input { width:100%; appearance:none; background:var(--bg-alt); border:1.5px solid var(--border); color:var(--text); padding:12px 16px; border-radius:var(--radius); font-family:inherit; font-size:0.9rem; transition:var(--transition); }
.finder__field select { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23718096' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 14px center; cursor:pointer; }
.finder__field select:focus, .finder__field input:focus { outline:none; border-color:var(--primary); box-shadow:0 0 0 3px rgba(244,121,32,0.12); }

/* CATALOG */
.catalog__tabs { display:flex; gap:6px; margin-bottom:32px; flex-wrap:wrap; background:var(--white); padding:6px; border-radius:10px; width:fit-content; border:1px solid var(--border); box-shadow:var(--shadow-sm); }
.catalog__tab { padding:10px 20px; background:var(--bg-alt); border:1px solid var(--border-light); color:var(--text-secondary); font-weight:600; font-size:0.86rem; border-radius:7px; transition:var(--transition); cursor:pointer; }
.catalog__tab:hover:not(.active) { color:var(--primary); background:var(--primary-ultra-light); border-color:var(--primary-light); }
.catalog__tab:active { transform:scale(0.96); }
.catalog__tab.active { background:var(--primary); color:#fff; border-color:var(--primary); box-shadow:0 2px 8px rgba(244,121,32,0.25); }
.catalog__filters { display:flex; gap:12px; margin-bottom:32px; flex-wrap:wrap; align-items:center; }
.filter-search { display:flex; align-items:center; gap:8px; background:var(--white); border:1.5px solid var(--border); border-radius:var(--radius); padding:0 14px; transition:var(--transition); }
.filter-search:focus-within { border-color:var(--primary); box-shadow:0 0 0 3px rgba(244,121,32,0.12); }
.filter-search svg { flex-shrink:0; color:var(--text-dim); }
.filter-search input { background:none; border:none; color:var(--text); font-family:inherit; font-size:0.85rem; padding:10px 0; outline:none; width:200px; }
.filter-search input::placeholder { color:var(--text-dim); }
.filter-select { appearance:none; background:var(--white); border:1.5px solid var(--border); color:var(--text); padding:10px 36px 10px 14px; border-radius:var(--radius); font-size:0.85rem; font-family:inherit; cursor:pointer; transition:var(--transition); background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23718096' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 12px center; }
.filter-select:hover { border-color:var(--primary); }
.filter-select:focus { outline:none; border-color:var(--primary); box-shadow:0 0 0 3px rgba(244,121,32,0.12); }
.catalog__empty { text-align:center; padding:60px 20px; color:var(--text-dim); font-size:0.92rem; }

.catalog__grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(300px, 1fr)); gap:20px; }
.product-card { background:var(--white); border:1px solid var(--border); border-radius:var(--radius-lg); overflow:hidden; transition:var(--transition); position:relative; }
.product-card:hover { border-color:var(--primary); transform:translateY(-4px); box-shadow:var(--shadow-lg); }
.product-card:active { transform:translateY(-2px) scale(0.99); }
.product-card__badge { position:absolute; top:12px; left:12px; z-index:2; padding:4px 10px; border-radius:6px; font-size:0.7rem; font-weight:700; text-transform:uppercase; letter-spacing:0.5px; }
.product-card__badge--popular { background:var(--primary); color:#fff; }
.product-card__badge--new { background:var(--accent); color:#fff; }
.product-card__img { aspect-ratio:3 / 2; background:linear-gradient(135deg, var(--primary-ultra-light), var(--bg-alt)); display:flex; align-items:center; justify-content:center; padding:20px; }
.cat-card__cover { width:100%; height:100%; display:flex; align-items:center; justify-content:center; }
.cat-card__cover img { max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; }
.product-card__img-placeholder { width:120px; height:75px; background:linear-gradient(135deg, var(--copper) 0%, #D4A574 50%, var(--aluminum) 100%); border-radius:40px; position:relative; box-shadow:0 8px 30px rgba(184,115,51,0.15); }
.product-card__img-placeholder::before { content:''; position:absolute; inset:10px; border-radius:30px; background:linear-gradient(135deg, #D4A574, var(--copper)); }
.product-card__img-placeholder::after { content:''; position:absolute; inset:22px; border-radius:20px; background:var(--bg-alt); }
.product-card__body { padding:20px; }
.product-card__category { font-size:0.7rem; text-transform:uppercase; letter-spacing:1.5px; color:var(--primary); font-weight:700; margin-bottom:6px; }
.product-card__title { font-weight:700; font-size:1rem; color:var(--dark); margin-bottom:8px; line-height:1.3; }
.product-card__desc { font-size:0.82rem; color:var(--text-muted); margin-bottom:14px; line-height:1.55; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.product-card__specs { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:16px; }
.spec-chip { padding:3px 10px; background:var(--primary-ultra-light); border:1px solid var(--primary-light); border-radius:5px; font-size:0.72rem; color:var(--primary-dark); font-weight:600; }
.product-card__footer { display:flex; gap:8px; padding-top:14px; border-top:1px solid var(--border-light); }
.product-card__footer .btn { flex:1; justify-content:center; font-size:0.8rem; padding:9px 12px; }
/* Кликабельно только фото товара — ведёт на страницу категории */
.product-card__img--link { display:flex; cursor:pointer; }
.product-card__img--link:hover img { transform:scale(1.04); }

/* ADVANTAGES */
.advantages__grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; }
.advantage-card { padding:32px; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); transition:var(--transition); position:relative; overflow:hidden; display:grid; grid-template-columns:auto 1fr; column-gap:16px; align-items:center; align-content:start; }
.advantage-card::before { content:''; position:absolute; top:0; left:0; width:4px; height:0; background:var(--primary); transition:height 0.4s ease; }
.advantage-card:hover::before { height:100%; }
.advantage-card:hover { border-color:rgba(244,121,32,0.3); transform:translateY(-2px); box-shadow:var(--shadow); }
.advantage-card:active { transform:translateY(0) scale(0.99); }
.advantage-card__icon { width:52px; height:52px; border-radius:10px; background:var(--primary-light); display:flex; align-items:center; justify-content:center; color:var(--primary); }
.advantage-card__title { font-weight:700; font-size:1.05rem; color:var(--dark); }
.advantage-card__text { grid-column:1 / -1; margin-top:16px; font-size:0.85rem; color:var(--text-muted); line-height:1.65; }

/* PROCESS */
.process__timeline { display:flex; gap:0; position:relative; margin-top:20px; }
.process__timeline::before { content:''; position:absolute; top:42px; left:0; right:0; height:2px; background:var(--border); }
.process__step { flex:1; text-align:center; position:relative; padding:0 12px; }
.process__step-num { width:84px; height:84px; border-radius:50%; background:var(--white); border:2px solid var(--border); display:flex; align-items:center; justify-content:center; margin:0 auto 20px; position:relative; z-index:2; transition:var(--transition); box-shadow:var(--shadow-sm); }
.process__step:hover .process__step-num { border-color:var(--primary); background:var(--primary-light); }
.process__step-num span { font-family:var(--font-display); font-size:1.7rem; color:var(--primary); font-weight:700;}
.process__step-title { font-weight:700; font-size:0.95rem; color:var(--dark); margin-bottom:8px; }
.process__step-desc { font-size:0.8rem; color:var(--text-muted); line-height:1.55; }

/* CERTS */
.certs__grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; }
.cert-card { background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); padding:28px 20px; text-align:center; transition:var(--transition); }
.cert-card:hover { border-color:var(--primary); transform:translateY(-2px); box-shadow:var(--shadow); }
.cert-card:active { transform:translateY(0) scale(0.98); }
.cert-card__icon { width:64px; height:64px; margin:0 auto 16px; background:var(--primary-light); border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--primary); }
.cert-card__name { font-weight:700; font-size:0.95rem; color:var(--dark); margin-bottom:4px; }
.cert-card__desc { font-size:0.75rem; color:var(--text-muted); }

/* PARTNERS */
.partners__grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(180px, 1fr)); gap:14px; }
.partner-logo { height:72px; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; font-size:0.76rem; font-weight:600; color:var(--text-muted); transition:var(--transition); padding:10px 14px; text-align:center; line-height:1.3; }
.partner-logo:hover { border-color:var(--primary); color:var(--primary); box-shadow:var(--shadow-sm); }
.partner-logo__img { max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; }

/* CTA */
.cta-section { background:#1A1F25; position:relative; overflow:hidden; }
.cta-section::before { content:''; position:absolute; inset:0; background:url('../images/cta-bg.jpg') center/cover no-repeat; }
.cta-section::after { content:''; position:absolute; inset:0; background:linear-gradient(135deg, rgba(26,31,37,0.88) 0%, rgba(42,49,64,0.75) 50%, rgba(52,64,84,0.7) 100%); }
.cta-section .container { position:relative; z-index:2; display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.cta__title { font-family:var(--font-display); font-size:clamp(1.7rem, 3vw, 2.5rem); color:#fff; letter-spacing:0.5px; margin-bottom:16px; line-height:1.15;}
.cta__desc { color:rgba(255,255,255,0.85); font-size:1.05rem; margin-bottom:28px; line-height:1.7; }
.cta__actions { display:flex; gap:14px; flex-wrap:wrap; }
.cta__downloads { display:flex; flex-direction:column; gap:12px; }
.download-card { display:flex; align-items:center; gap:16px; padding:16px 20px; background:rgba(255,255,255,0.12); border:1px solid rgba(255,255,255,0.2); border-radius:var(--radius); backdrop-filter:blur(10px); transition:var(--transition); }
.download-card:hover { background:rgba(244,121,32,0.15); transform:translateX(4px); }
.download-card:active { transform:translateX(2px) scale(0.98); background:rgba(244,121,32,0.1); }
.download-card__icon { width:44px; height:44px; background:rgba(255,255,255,0.15); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.download-card__info { flex:1; }
.download-card__title { font-weight:700; font-size:0.9rem; color:#fff; }
.download-card__meta { font-size:0.75rem; color:rgba(255,255,255,0.65); }

/* CONTACTS */
.contacts__grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.contact-info__items { display:flex; flex-direction:column; gap:24px; margin-bottom:32px; }
.contact-item { display:flex; gap:16px; align-items:flex-start; }
.contact-item__icon { width:46px; height:46px; border-radius:10px; background:var(--primary-light); display:flex; align-items:center; justify-content:center; flex-shrink:0; color:var(--primary); }
.contact-item__label { font-size:0.73rem; text-transform:uppercase; letter-spacing:1px; color:var(--text-muted); font-weight:600; margin-bottom:2px; }
.contact-item__value { font-weight:600; color:var(--dark); font-size:1rem; }
.contact-item__value a:hover { color:var(--primary); }
.contact-form { background:var(--white); border:1px solid var(--border); border-radius:var(--radius-lg); padding:36px; box-shadow:var(--shadow); }
.contact-form__title { font-family:var(--font-display); font-size:1.4rem; color:var(--dark); letter-spacing:0.5px; margin-bottom:24px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:14px; }
.form-field { display:flex; flex-direction:column; min-width:0; }
.form-field--full { grid-column:1 / -1; }
.form-field label { font-size:0.78rem; font-weight:600; color:var(--text-muted); margin-bottom:6px; }
.form-field input, .form-field select, .form-field textarea { background:var(--bg-alt); border:1.5px solid var(--border); color:var(--text); padding:11px 14px; border-radius:var(--radius); font-family:inherit; font-size:0.9rem; transition:var(--transition); resize:vertical; }
.form-field select { max-width:100%; appearance:none; cursor:pointer; padding-right:36px; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23718096' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 12px center; }
.form-field input:focus, .form-field select:focus, .form-field textarea:focus { outline:none; border-color:var(--primary); box-shadow:0 0 0 3px rgba(244,121,32,0.12); }
.form-field input::placeholder, .form-field textarea::placeholder { color:var(--text-dim); }

/* Form validation */
.form-field .error { display:none; font-size:0.74rem; color:#E53E3E; margin-top:5px; line-height:1.3; }
.form-field.has-error .error { display:block; }
.form-field.has-error input,
.form-field.has-error select,
.form-field.has-error textarea { border-color:#E53E3E; background:rgba(229,62,62,0.04); }
.form-field.has-error input:focus,
.form-field.has-error select:focus,
.form-field.has-error textarea:focus { box-shadow:0 0 0 3px rgba(229,62,62,0.12); }
.contact-map { margin-top:32px; height:240px; background:var(--bg-alt); border:1px solid var(--border); border-radius:var(--radius-lg); display:flex; align-items:center; justify-content:center; color:var(--text-dim); font-size:0.9rem; }

/* FOOTER */
footer { background:var(--dark); border-top:3px solid var(--primary); padding:60px 0 0; color:rgba(255,255,255,0.7); }
.footer__grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:40px; margin-bottom:48px; }
.footer__brand .logo img { height:72px; }
.footer__brand p { font-size:0.85rem; color:rgba(255,255,255,0.5); margin-top:16px; line-height:1.65; max-width:300px; }
.footer__col-title { font-weight:700; font-size:0.88rem; color:#fff; margin-bottom:16px; text-transform:uppercase; letter-spacing:1px; }
.footer__links { list-style:none; display:flex; flex-direction:column; gap:10px; }
.footer__links a { font-size:0.85rem; color:rgba(255,255,255,0.5); transition:var(--transition); }
.footer__links a:hover { color:var(--primary); padding-left:4px; }
.footer__bottom { border-top:1px solid rgba(255,255,255,0.08); padding:20px 0; display:flex; justify-content:space-between; align-items:center; font-size:0.8rem; color:rgba(255,255,255,0.35); flex-wrap:wrap; gap:12px; }
.footer__bottom-contacts { display:flex; align-items:center; gap:8px; }
.footer__bottom-contacts a { color:rgba(255,255,255,0.5); transition:var(--transition); }
.footer__bottom-contacts a:hover { color:var(--primary); }
.footer__dot { width:3px; height:3px; border-radius:50%; background:rgba(255,255,255,0.2); }
.footer__socials { display:flex; gap:10px; }
.footer__social { width:36px; height:36px; border-radius:var(--radius); background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.1); display:flex; align-items:center; justify-content:center; color:rgba(255,255,255,0.5); font-size:0.8rem; transition:var(--transition); }
.footer__social:hover { background:var(--primary); border-color:var(--primary); color:#fff; }
.footer__social:active { transform:scale(0.9); }

/* SCROLL TOP */
.scroll-top { position:fixed; bottom:80px; right:28px; width:46px; height:46px; border-radius:50%; background:var(--primary); color:#fff; border:none; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 20px rgba(244,121,32,0.35); opacity:0; pointer-events:none; transform:translateY(10px); transition:var(--transition); z-index:999; }
.scroll-top.visible { opacity:1; pointer-events:auto; transform:translateY(0); }
.scroll-top:hover { background:var(--primary-dark); transform:translateY(-2px); }
.scroll-top:active { transform:scale(0.9); }
.scroll-top:focus-visible { outline:2px solid var(--primary); outline-offset:3px; }

/* ANIMATIONS */
.fade-up { opacity:0; transform:translateY(30px); transition:opacity 0.7s ease, transform 0.7s ease; }
.fade-up.visible { opacity:1; transform:translateY(0); }
.no-observer .fade-up { opacity:1; transform:none; }

/* MOBILE NAV */
.mobile-overlay { display:none; position:fixed; inset:0; background:rgba(0,0,0,0.5); z-index:1100; opacity:0; transition:opacity 0.3s ease; }
.mobile-overlay.active { display:block; opacity:1; }
.mobile-nav { position:fixed; top:0; right:-300px; width:300px; max-width:85vw; height:100%; background:var(--white); z-index:1101; transition:transform 0.35s cubic-bezier(0.4,0,0.2,1); box-shadow:-4px 0 30px rgba(0,0,0,0.15); overflow-y:auto; }
.mobile-nav.open { transform:translateX(-300px); }
.mobile-nav__header { display:flex; align-items:center; justify-content:space-between; padding:16px 20px; border-bottom:1px solid var(--border); }
.mobile-nav__header .logo img { height:34px; }
.mobile-nav__close { background:none; border:none; width:36px; height:36px; display:flex; align-items:center; justify-content:center; border-radius:var(--radius); color:var(--text-muted); cursor:pointer; transition:var(--transition); }
.mobile-nav__close:hover { background:var(--bg-alt); color:var(--text); }
.mobile-nav__close:active { background:var(--border-light); transform:scale(0.9); }
.mobile-nav__links { padding:8px 0; }
.mobile-nav__links a { display:block; padding:14px 24px; font-size:0.95rem; font-weight:500; color:var(--text-secondary); border-left:3px solid transparent; transition:var(--transition); }
.mobile-nav__links a:hover,.mobile-nav__links a.active { color:var(--primary); background:var(--primary-ultra-light); border-left-color:var(--primary); }
.mobile-nav__actions { padding:16px 20px; display:flex; flex-direction:column; gap:10px; border-top:1px solid var(--border); }
.mobile-nav__actions .btn { justify-content:center; width:100%; }
.mobile-nav__lang { padding:16px 20px; border-top:1px solid var(--border); }
.mobile-nav__lang-title { font-size:0.7rem; font-weight:600; text-transform:uppercase; letter-spacing:1.5px; color:var(--text-dim); margin-bottom:10px; }
.mobile-nav__lang-options { display:flex; gap:8px; flex-wrap:wrap; }
.mobile-nav__lang-options a { padding:6px 14px; border-radius:6px; font-size:0.82rem; font-weight:600; color:var(--text-muted); background:var(--bg-alt); border:1px solid var(--border); transition:var(--transition); cursor:pointer; }
.mobile-nav__lang-options a:hover { border-color:var(--primary); color:var(--primary); }
.mobile-nav__lang-options a:active { transform:scale(0.95); }
.mobile-nav__lang-options a.active { color:var(--primary); border-color:var(--primary); background:var(--primary-ultra-light); }
.mobile-nav__contacts { padding:16px 20px; border-top:1px solid var(--border); }
.mobile-nav__contacts a { display:flex; align-items:center; gap:10px; padding:8px 0; font-size:0.88rem; color:var(--text-secondary); }
.mobile-nav__contacts a:hover { color:var(--primary); }
.mobile-nav__contacts svg { flex-shrink:0; color:var(--text-dim); }

/* HEADER: бургер вместо белой строки меню, пока меню и обе кнопки не помещаются в одну строку.
   Самая длинная строка — en (~1096 px), плюс запас на полосу прокрутки Windows (~17 px). */
@media (max-width:1140px) {
  .header-light { display:none; }
  .burger { display:flex; }
}

/* TABLET */
@media (max-width:1024px) {
  .header-dark__contacts { gap:12px; }
  .header-dark__contacts svg { display:none; }
  /* hero responsive handled by flex */
  /* hero__visual removed */
  .hero__content { max-width:100%; }
  .hero__actions { flex-wrap:wrap; }
  .advantages__grid { grid-template-columns:repeat(2, 1fr); }
  .process__timeline { flex-wrap:wrap; justify-content:center; gap:16px; }
  .process__timeline::before { display:none; }
  .process__step { flex:0 0 calc(33.333% - 16px); min-width:160px; }
  .cta-section .container { grid-template-columns:1fr; gap:40px; }
  .contacts__grid { grid-template-columns:1fr; }
  .footer__grid { grid-template-columns:1fr 1fr; gap:32px; }
  .footer__brand { grid-column:1 / -1; }
  .catalog__tabs { width:100%; overflow-x:auto; flex-wrap:nowrap; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
  .catalog__tabs::-webkit-scrollbar { display:none; }
  .catalog__tab { flex-shrink:0; }
  .finder__grid { grid-template-columns:repeat(2, 1fr); }
}

/* MOBILE */
@media (max-width:768px) {
  .container { padding:0 16px; }
  /* Header mobile */
  .header-dark__contacts { display:none; }
  .header-dark__inner { padding:10px 0; }
  .logo img { height:32px; }
  .hero { min-height:auto; }
  .hero .container { padding-top:36px; padding-bottom:40px; }
  .hero h1 { font-size:2.2rem; }
  .hero__badge { font-size:0.68rem; padding:5px 14px; margin-bottom:16px; }
  .hero__desc { font-size:0.95rem; margin-bottom:28px; }
  .hero__actions { flex-direction:column; }
  .hero__actions .btn { justify-content:center; width:100%; }
  .hero__stats { grid-template-columns:repeat(3, 1fr); }
  .hero__stat { padding:16px 10px; }
  .hero__stat-num { font-size:2rem; }
  .hero__stat-label { font-size:0.68rem; }
  .section { padding:52px 0; }
  .section__header { margin-bottom:32px; }
  .section__title { font-size:1.8rem; }
  .section__desc { font-size:0.9rem; }
  .section__tag { font-size:0.68rem; letter-spacing:2px; }
  .finder { padding:22px 16px; border-radius:10px; }
  .finder__title { font-size:1.4rem; }
  .finder__grid { grid-template-columns:1fr; gap:12px; }
  .finder__field--btn { align-items:stretch; }
  .finder__desc { font-size:0.82rem; margin-bottom:20px; }
  .catalog__tabs { margin-bottom:20px; padding:3px; }
  .catalog__tab { padding:8px 14px; font-size:0.78rem; }
  .catalog__filters { gap:8px; flex-direction:column; }
  .filter-search { width:100%; }
  .filter-search input { width:100%; }
  .catalog__filters .filter-select { width:100%; }
  .catalog__grid { grid-template-columns:1fr; gap:14px; }
  .product-card__body { padding:16px; }
  .product-card__title { font-size:0.92rem; }
  .product-card__footer .btn { padding:8px 10px; font-size:0.76rem; }
  .advantages__grid { grid-template-columns:1fr; gap:12px; }
  .advantage-card { padding:20px 18px; column-gap:14px; }
  .advantage-card__icon { width:44px; height:44px; }
  .advantage-card__title { font-size:0.92rem; }
  .advantage-card__text { margin-top:12px; font-size:0.82rem; }
  .process__timeline { flex-direction:column; gap:0; }
  .process__step { flex:none; display:flex; gap:16px; text-align:left; padding:16px 0; border-bottom:1px solid var(--border-light); }
  .process__step:last-child { border-bottom:none; }
  .process__step-num { width:54px; height:54px; min-width:54px; margin:0; }
  .process__step-num span { font-size:1.3rem; }
  .process__step-title { font-size:0.88rem; margin-bottom:2px; }
  .process__step-desc { font-size:0.78rem; }
  .certs__grid { grid-template-columns:repeat(2, 1fr); gap:12px; }
  .cert-card { padding:20px 14px; }
  .cert-card__icon { width:50px; height:50px; margin-bottom:10px; }
  .cert-card__name { font-size:0.85rem; }
  .cta__title { font-size:1.7rem; }
  .cta__desc { font-size:0.9rem; }
  .cta__actions { flex-direction:column; }
  .cta__actions .btn { justify-content:center; width:100%; }
  .download-card { padding:12px 14px; }
  .download-card__icon { width:36px; height:36px; }
  .download-card__title { font-size:0.82rem; }
  .partners__grid { grid-template-columns:repeat(2, 1fr); gap:10px; }
  .partner-logo { height:58px; font-size:0.7rem; }
  .contacts__grid { grid-template-columns:1fr; gap:28px; }
  .contact-form { padding:22px 16px; }
  .contact-form__title { font-size:1.3rem; }
  .form-grid { grid-template-columns:1fr; gap:10px; }
  .contact-map { height:200px; margin-top:24px; }
  .footer__grid { grid-template-columns:1fr; gap:24px; text-align:center; }
  .footer__brand .logo { justify-content:center; }
  .footer__brand p { max-width:100%; margin:12px auto 0; }
  .footer__links { align-items:center; }
  .footer__bottom { flex-direction:column; text-align:center; gap:14px; }
  .footer__bottom-contacts { justify-content:center; }
  .scroll-top { bottom:18px; right:14px; width:42px; height:42px; }
}

/* SMALL MOBILE */
@media (max-width:400px) {
  .hero h1 { font-size:1.9rem; }
  .hero__stats { grid-template-columns:1fr; gap:1px; }
  .hero__stat { padding:12px 16px; display:flex; justify-content:space-between; align-items:center; }
  .hero__stat-num { font-size:1.6rem; }
  .certs__grid { grid-template-columns:1fr; }
  .catalog__tab { padding:7px 10px; font-size:0.72rem; }
  .advantage-card { padding:18px 16px; column-gap:12px; }
}
/* Contact form submit */
.contact-form__submit { width:100%; justify-content:center; text-align:center; margin-top:6px; }
.contact-form__consent { font-size:0.72rem; color:var(--text-dim); margin-top:10px; text-align:center; }

/* Lang switch icons */
.lang-switch__globe { opacity:0.6; }
.lang-switch__arrow { opacity:0.4; }

/* Product card placeholder variants */
.product-card__img-placeholder--silver { background:linear-gradient(135deg, #A8B8C8, #7A8FA0); }
.product-card__img-placeholder--steel { background:linear-gradient(135deg, #5C7082, #3A5068); }
.product-card__img-placeholder--dark { background:linear-gradient(135deg, #2C3E50, #34495E); }
.product-card__img-placeholder--light { background:linear-gradient(135deg, #A8B8C8, #C0CDD8); }
.product-card__img-placeholder--gray { background:linear-gradient(135deg, #8E8E93, #AEAEB2); }
.product-card__img-placeholder--copper { background:linear-gradient(135deg, var(--copper), #C9884A); }
.product-card__img-placeholder--wire { background:linear-gradient(135deg, #B87333, #D4A574); }

/* ═══════════════════════════════════════
   CATALOG PAGES — shared catalog styles
   ═══════════════════════════════════════ */

/* BREADCRUMBS */
.breadcrumbs {
  padding:14px 0;
  background:var(--bg-alt);
  border-bottom:1px solid var(--border-light);
}
.breadcrumbs .container {
  display:flex;
  align-items:center;
  gap:8px;
  font-size:0.82rem;
}
.breadcrumbs__link {
  color:var(--text-muted);
  transition:var(--transition);
}
.breadcrumbs__link:hover { color:var(--primary); }
.breadcrumbs__sep { color:var(--text-dim); flex-shrink:0; }
.breadcrumbs__current { color:var(--text); font-weight:600; }

/* CATALOG HERO */
.catalog-hero {
  background:linear-gradient(160deg, #1A1F25 0%, #2A3140 50%, #344054 100%);
  padding:60px 0 56px;
  position:relative;
  overflow:hidden;
}
.catalog-hero::before {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
}
.catalog-hero::after {
  content:'';
  position:absolute;
  bottom:0;
  left:10%;
  right:10%;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(244,121,32,0.25), transparent);
}
.catalog-hero__content {
  position:relative;
  z-index:2;
  max-width:680px;
}
.catalog-hero__title {
  font-family:var(--font-display);
  font-size:clamp(1.8rem, 3.2vw, 2.6rem);
  line-height:1.1;
  letter-spacing:0.5px;
  color:#fff;
  margin-bottom:16px;
}
.catalog-hero__title span { color:rgba(255,255,255,0.55); }
.catalog-hero__desc {
  font-size:0.95rem;
  color:rgba(255,255,255,0.6);
  line-height:1.65;
  margin-bottom:28px;
}

/* Search */
.catalog-hero__search {
  position:relative;
  margin-bottom:28px;
}
.catalog-hero__search-icon {
  position:absolute;
  left:16px;
  top:50%;
  transform:translateY(-50%);
  color:var(--text-dim);
  pointer-events:none;
}
.catalog-hero__input {
  width:100%;
  padding:14px 20px 14px 48px;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:var(--radius-lg);
  color:#fff;
  font-size:0.92rem;
  font-family:var(--font-body);
  transition:var(--transition);
  backdrop-filter:blur(8px);
}
.catalog-hero__input::placeholder { color:rgba(255,255,255,0.35); }
.catalog-hero__input:focus {
  outline:none;
  border-color:var(--primary);
  background:rgba(255,255,255,0.12);
  box-shadow:0 0 0 3px rgba(244,121,32,0.15);
}

/* Stats */
.catalog-hero__stats {
  display:flex;
  gap:32px;
}
.catalog-hero__stat {
  font-size:0.82rem;
  color:rgba(255,255,255,0.45);
}
.catalog-hero__stat strong {
  display:block;
  font-family:var(--font-display);
  font-size:1.4rem;
  color:#fff;
  letter-spacing:0.5px;
  line-height:1.2;
}

/* CATALOG GRID SECTION */
.catalog-grid-section { padding:60px 0 40px; }

.catalog-grid__header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:32px;
  gap:16px;
  flex-wrap:wrap;
}
.catalog-grid__filters {
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}
.catalog-grid__filter {
  padding:7px 16px;
  border-radius:100px;
  border:1px solid var(--border);
  background:var(--white);
  font-size:0.82rem;
  font-weight:500;
  color:var(--text-secondary);
  cursor:pointer;
  transition:var(--transition);
  font-family:var(--font-body);
}
.catalog-grid__filter:hover {
  border-color:var(--primary);
  color:var(--primary);
}
.catalog-grid__filter.active {
  background:var(--primary);
  border-color:var(--primary);
  color:#fff;
  font-weight:600;
}

/* CATEGORY CARDS GRID */
.cat-grid {
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:20px;
}

/* CATEGORY CARD */
.cat-card {
  display:flex;
  flex-direction:column;
  background:var(--white);
  border:1px solid var(--border-light);
  border-radius:var(--radius-lg);
  padding:24px 20px 16px;
  transition:var(--transition);
  position:relative;
  overflow:hidden;
  text-decoration:none;
  color:inherit;
}
.cat-card:hover {
  border-color:var(--primary);
  box-shadow:var(--shadow-lg);
  transform:translateY(-2px);
}
.cat-card:hover .cat-card__arrow { color:var(--primary); transform:translateX(4px); }
.cat-card:hover .cat-card__icon svg { stroke:var(--primary); }

/* Badge */
.cat-card__badge {
  position:absolute;
  top:12px;
  right:12px;
  padding:3px 10px;
  border-radius:100px;
  font-size:0.68rem;
  font-weight:700;
  letter-spacing:0.5px;
  text-transform:uppercase;
}
.cat-card__badge--popular { background:var(--primary-light); color:var(--primary-dark); }
.cat-card__badge--fire { background:#FEE2E2; color:#DC2626; }
.cat-card__badge--accent { background:var(--accent-light); color:var(--accent); }

/* Icon */
.cat-card__icon {
  width:48px;
  height:48px;
  margin-bottom:16px;
  flex-shrink:0;
}
.cat-card__icon svg {
  width:48px;
  height:48px;
  stroke:var(--text-secondary);
  transition:var(--transition);
}

/* Body */
.cat-card__body { flex:1; }
.cat-card__name {
  font-family:var(--font-body);
  font-size:0.95rem;
  font-weight:700;
  color:var(--dark);
  margin-bottom:6px;
  line-height:1.3;
}
.cat-card__desc {
  font-size:0.78rem;
  color:var(--text-muted);
  line-height:1.45;
  margin-bottom:12px;
}
.cat-card__tags {
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-bottom:14px;
}
.cat-card__tag {
  padding:2px 8px;
  background:var(--bg-alt);
  border-radius:4px;
  font-size:0.68rem;
  font-weight:600;
  color:var(--text-secondary);
}

/* Footer */
.cat-card__footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-top:12px;
  border-top:1px solid var(--border-light);
}
.cat-card__count {
  font-size:0.78rem;
  font-weight:600;
  color:var(--primary);
}
.cat-card__arrow {
  color:var(--text-dim);
  transition:var(--transition);
  display:flex;
  align-items:center;
}

/* CTA BANNER */
.catalog-cta {
  padding:0 0 60px;
}
.catalog-cta__inner {
  background:linear-gradient(135deg, #1A1F25 0%, #2A3140 50%, #344054 100%);
  border-radius:var(--radius-lg);
  padding:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  position:relative;
  overflow:hidden;
}
.catalog-cta__inner::before {
  content:'';
  position:absolute;
  top:-50%;
  right:-10%;
  width:300px;
  height:300px;
  background:radial-gradient(circle, rgba(244,121,32,0.15), transparent 70%);
  pointer-events:none;
}
.catalog-cta__title {
  font-family:var(--font-display);
  font-size:1.6rem;
  color:#fff;
  letter-spacing:0.5px;
  margin-bottom:8px; line-height:1.2;}
.catalog-cta__desc {
  font-size:0.9rem;
  color:rgba(255,255,255,0.55);
  line-height:1.6;
  max-width:500px;
}
.catalog-cta__actions {
  display:flex;
  gap:12px;
  flex-shrink:0;
}

/* TRUST BAR */
.catalog-trust { padding:0 0 60px; }
.catalog-trust__inner {
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:24px;
}
.catalog-trust__item {
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:20px;
  background:var(--bg-alt);
  border-radius:var(--radius-lg);
  border:1px solid var(--border-light);
}
.catalog-trust__item svg { flex-shrink:0; margin-top:2px; }
.catalog-trust__item strong {
  display:block;
  font-size:0.88rem;
  color:var(--dark);
  margin-bottom:2px;
}
.catalog-trust__item span {
  font-size:0.78rem;
  color:var(--text-muted);
  line-height:1.45;
}

/* ═══ RESPONSIVE ═══ */

@media (max-width:1024px) {
  .cat-grid { grid-template-columns:repeat(3, 1fr); }
  .catalog-cta__inner { flex-direction:column; text-align:center; align-items:center; }
  .catalog-cta__desc { max-width:100%; }
  .catalog-cta__actions { flex-wrap:wrap; justify-content:center; }
}

@media (max-width:768px) {
  .breadcrumbs .container { flex-wrap:wrap; row-gap:4px; }
  .catalog-hero { padding:40px 0 36px; }
  .catalog-hero__title { font-size:2rem; }
  .catalog-hero__stats { gap:20px; }
  .catalog-hero__stat strong { font-size:1.2rem; }

  .cat-grid { grid-template-columns:repeat(2, 1fr); gap:14px; }
  .cat-card { padding:18px 16px 12px; }
  .cat-card__icon { width:40px; height:40px; margin-bottom:12px; }
  .cat-card__icon svg { width:40px; height:40px; }
  .cat-card__name { font-size:0.88rem; }
  .cat-card__desc { font-size:0.72rem; margin-bottom:8px; }
  .cat-card__tag { font-size:0.62rem; padding:2px 6px; }

  .catalog-grid__header { flex-direction:column; align-items:flex-start; }
  .catalog-grid__filters { overflow-x:auto; flex-wrap:nowrap; width:100%; scrollbar-width:none; }
  .catalog-grid__filters::-webkit-scrollbar { display:none; }
  .catalog-grid__filter { flex-shrink:0; }

  .catalog-cta__inner { padding:32px 24px; }
  .catalog-cta__title { font-size:1.4rem; }
  .catalog-cta__actions { flex-direction:column; width:100%; }
  .catalog-cta__actions .btn { justify-content:center; width:100%; }

  .catalog-trust__inner { grid-template-columns:1fr; gap:12px; }
}

@media (max-width:400px) {
  .cat-grid { grid-template-columns:1fr; }
  .catalog-hero__stats { flex-wrap:wrap; gap:16px; }
}

/* ═══════════════════════════════════════
   CATEGORY PAGE
   ═══════════════════════════════════════ */

/* PAGE HERO (lighter than catalog-hero) */
.page-hero {
  background:linear-gradient(160deg, #1A1F25 0%, #2A3140 50%, #344054 100%);
  padding:48px 0 44px;
  position:relative;
  overflow:hidden;
}
.page-hero::before {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
}
.page-hero::after {
  content:'';
  position:absolute;
  bottom:0;
  left:10%;
  right:10%;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(244,121,32,0.25), transparent);
}
.page-hero .container {
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr auto;
  gap:48px;
  align-items:start;
}
.page-hero__badge {
  display:inline-block;
  padding:4px 14px;
  background:rgba(244,121,32,0.2);
  border:1px solid rgba(244,121,32,0.3);
  border-radius:100px;
  font-size:0.72rem;
  font-weight:700;
  color:var(--primary);
  text-transform:uppercase;
  letter-spacing:1px;
  margin-bottom:16px;
}
.page-hero__title {
  font-family:var(--font-display);
  font-size:clamp(1.7rem, 3.2vw, 2.4rem);
  line-height:1.1;
  letter-spacing:0.5px;
  color:#fff;
  margin-bottom:8px;
}
.page-hero__subtitle {
  font-size:1rem;
  color:rgba(255,255,255,0.5);
  margin-bottom:16px;
}
.page-hero__desc {
  font-size:0.88rem;
  color:rgba(255,255,255,0.45);
  line-height:1.7;
  max-width:640px;
}
.page-hero__meta {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
  min-width:240px;
  max-width:360px;
}
.page-hero__meta-item {
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:var(--radius);
  padding:14px 16px;
}
.page-hero__meta-label {
  display:block;
  font-size:0.78rem;
  color:rgba(255,255,255,0.35);
  text-transform:uppercase;
  letter-spacing:1px;
  margin-bottom:4px;
  overflow-wrap:break-word;
}
.page-hero__meta-value {
  font-size:1.05rem;
  font-weight:600;
  color:#fff;
  overflow-wrap:break-word;
}

/* FILTER BAR */
.filter-bar {
  background:var(--white);
  border-bottom:1px solid var(--border-light);
  padding:16px 0;
  position:sticky;
  top:0;
  z-index:90;
  box-shadow:0 2px 8px rgba(0,0,0,0.04);
}
.filter-bar__inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.filter-bar__tabs {
  display:flex;
  gap:4px;
}
.filter-bar__tab {
  padding:7px 16px;
  border-radius:var(--radius);
  border:1px solid var(--border);
  background:var(--white);
  font-size:0.82rem;
  font-weight:500;
  color:var(--text-secondary);
  cursor:pointer;
  transition:var(--transition);
  font-family:var(--font-body);
  white-space:nowrap;
}
.filter-bar__tab:hover { border-color:var(--primary); color:var(--primary); }
.filter-bar__tab.active { background:var(--dark); border-color:var(--dark); color:#fff; font-weight:600; }

.filter-bar__controls {
  display:flex;
  gap:10px;
  align-items:center;
}
.filter-bar__select {
  padding:7px 32px 7px 12px;
  border:1px solid var(--border);
  border-radius:var(--radius);
  font-size:0.82rem;
  color:var(--text-secondary);
  font-family:var(--font-body);
  background:var(--white) url("data:image/svg+xml,%3Csvg width='10' height='10' viewBox='0 0 16 16' fill='%23718096' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E") no-repeat right 10px center;
  appearance:none;
  cursor:pointer;
  transition:var(--transition);
}
.filter-bar__select:focus { outline:none; border-color:var(--primary); }

.filter-bar__search {
  position:relative;
}
.filter-bar__search svg {
  position:absolute;
  left:10px;
  top:50%;
  transform:translateY(-50%);
  color:var(--text-dim);
  pointer-events:none;
}
.filter-bar__search input {
  padding:7px 12px 7px 32px;
  border:1px solid var(--border);
  border-radius:var(--radius);
  font-size:0.82rem;
  font-family:var(--font-body);
  width:180px;
  transition:var(--transition);
}
.filter-bar__search input:focus { outline:none; border-color:var(--primary); width:220px; }

/* PRODUCT CARDS (horizontal) */
.category-products { padding:48px 0; }
.category-products .container { display:flex; flex-direction:column; gap:24px; }

.prod-card {
  display:grid;
  grid-template-columns:clamp(200px, 27%, 320px) 1fr;
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  overflow:hidden;
  transition:var(--transition);
}
.prod-card:hover {
  border-color:var(--primary);
  box-shadow:var(--shadow-lg);
}
/* Кликабельно только фото товара — ведёт на страницу товара */
.prod-card__img--link { display:block; cursor:pointer; }
.prod-card__img--link img { transition:transform 0.4s ease; }
.prod-card__img--link:hover img { transform:scale(1.04); }

.prod-card__img {
  position:relative;
  min-height:240px;
}
.prod-card__placeholder {
  width:100%;
  height:100%;
  min-height:240px;
}
.prod-card__placeholder--sip { background:linear-gradient(135deg, #2C3E50, #34495E); }
.prod-card__placeholder--sipst2 { background:linear-gradient(135deg, #3A5068, #4A6580); }
.prod-card__placeholder--sipst3 { background:linear-gradient(135deg, #1A365D, #2A4A7F); }

.prod-card__badge {
  position:absolute;
  top:14px;
  left:14px;
  padding:4px 12px;
  border-radius:100px;
  font-size:0.7rem;
  font-weight:700;
  letter-spacing:0.5px;
  text-transform:uppercase;
}
.prod-card__badge--popular { background:var(--primary); color:#fff; }
.prod-card__badge--hv { background:var(--accent); color:#fff; }

.prod-card__body {
  padding:28px 32px;
  display:flex;
  flex-direction:column;
}
.prod-card__head {
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:10px;
}
.prod-card__title {
  font-family:var(--font-display);
  font-size:1.45rem;
  letter-spacing:0.5px;
  color:var(--dark); line-height:1.2;}
.prod-card__analog {
  padding:3px 10px;
  background:var(--bg-alt);
  border-radius:4px;
  font-size:0.72rem;
  font-weight:600;
  color:var(--text-muted);
}
.prod-card__desc {
  font-size:0.86rem;
  color:var(--text-secondary);
  line-height:1.65;
  margin-bottom:16px;
}

.prod-card__specs {
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:10px;
  margin-bottom:16px;
}
.prod-card__spec {
  padding:10px 12px;
  background:var(--bg-alt);
  border-radius:var(--radius);
  border:1px solid var(--border-light);
}
.prod-card__spec-label {
  display:block;
  font-size:0.66rem;
  color:var(--text-dim);
  text-transform:uppercase;
  letter-spacing:0.5px;
  margin-bottom:2px;
}
.prod-card__spec-value {
  font-size:0.82rem;
  font-weight:700;
  color:var(--dark);
}

.prod-card__variants {
  margin-bottom:18px;
}
.prod-card__variants-title {
  font-size:0.76rem;
  font-weight:600;
  color:var(--text-muted);
  margin-bottom:8px;
  display:block;
}
.prod-card__variant-tags { display:flex; flex-wrap:wrap; gap:6px; }
.prod-card__vtag {
  padding:4px 10px;
  background:var(--white);
  border:1px solid var(--border);
  border-radius:4px;
  font-size:0.74rem;
  font-weight:500;
  color:var(--text-secondary);
  transition:var(--transition);
}
.prod-card__vtag:hover { border-color:var(--primary); color:var(--primary); }

.prod-card__actions {
  display:flex;
  gap:10px;
  margin-top:auto;
}

/* COMPARISON TABLE */
.compare-section .section__title { margin-bottom:24px; }
.compare-table-wrap {
  overflow-x:auto;
  border-radius:var(--radius-lg);
  border:1px solid var(--border);
}
.compare-table {
  width:100%;
  border-collapse:collapse;
  font-size:0.85rem;
}
.compare-table th {
  background:var(--dark);
  color:#fff;
  padding:14px 20px;
  text-align:left;
  font-weight:600;
  font-size:0.82rem;
  white-space:nowrap;
}
.compare-table th:first-child { border-radius:var(--radius-lg) 0 0 0; }
.compare-table th:last-child { border-radius:0 var(--radius-lg) 0 0; }
.compare-table td {
  padding:12px 20px;
  border-bottom:1px solid var(--border-light);
  color:var(--text-secondary);
}
.compare-table td:first-child {
  font-weight:600;
  color:var(--dark);
  white-space:nowrap;
}
.compare-table tbody tr:nth-child(even) { background:var(--bg-alt); }
.compare-table tbody tr:hover { background:var(--primary-ultra-light); }
.compare-table tbody tr:last-child td { border-bottom:none; }

/* RELATED CATEGORIES */
.related-cats .section__title { margin-bottom:24px; }
.related-cats__grid {
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:16px;
}
.related-cats__card {
  display:flex;
  align-items:center;
  gap:14px;
  padding:18px 20px;
  background:var(--white);
  border:1px solid var(--border-light);
  border-radius:var(--radius-lg);
  transition:var(--transition);
  text-decoration:none;
  color:inherit;
}
.related-cats__card:hover {
  border-color:var(--primary);
  box-shadow:var(--shadow);
}
.related-cats__card:hover .related-cats__arrow { color:var(--primary); transform:translateX(3px); }
.related-cats__icon {
  width:40px;
  height:40px;
  background:var(--bg-alt);
  border-radius:var(--radius);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  color:var(--text-secondary);
}
.related-cats__card strong {
  display:block;
  font-size:0.88rem;
  color:var(--dark);
  margin-bottom:2px;
}
.related-cats__card span {
  font-size:0.76rem;
  color:var(--text-muted);
}
.related-cats__arrow {
  margin-left:auto;
  color:var(--text-dim);
  flex-shrink:0;
  transition:var(--transition);
}

/* CTA spaced modifier */
.catalog-cta--spaced { padding:60px 0; }

/* ═══ CATEGORY RESPONSIVE ═══ */

@media (max-width:1024px) {
  .page-hero .container { grid-template-columns:1fr; gap:24px; }
  .page-hero__meta { grid-template-columns:repeat(4, minmax(0, 1fr)); min-width:auto; max-width:none; }
  .prod-card__specs { grid-template-columns:repeat(2, 1fr); }
  .related-cats__grid { grid-template-columns:1fr; }
  .filter-bar__inner { flex-direction:column; align-items:stretch; gap:12px; }
  .filter-bar__controls { flex-wrap:wrap; }
}

@media (max-width:768px) {
  .page-hero { padding:32px 0 28px; }
  .page-hero__title { font-size:1.8rem; }
  .page-hero__meta { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .prod-card { grid-template-columns:1fr; }
  .prod-card__img { min-height:160px; }
  .prod-card__placeholder { min-height:160px; }
  .prod-card__body { padding:20px; }
  .prod-card__title { font-size:1.3rem; }
  .prod-card__specs { grid-template-columns:repeat(2, 1fr); }
  .prod-card__actions { flex-direction:column; }
  .prod-card__actions .btn { justify-content:center; width:100%; }
  .filter-bar__tabs { overflow-x:auto; scrollbar-width:none; }
  .filter-bar__tabs::-webkit-scrollbar { display:none; }
  .filter-bar__tab { flex-shrink:0; }
  .filter-bar__search input { width:100%; }
  .filter-bar__controls { flex-direction:column; }
  .filter-bar__select { width:100%; }
  .compare-table { font-size:0.78rem; }
  .compare-table th, .compare-table td { padding:10px 12px; }
}

/* ═══════════════════════════════════════
   PRODUCT PAGE
   ═══════════════════════════════════════ */

/* PRODUCT HERO */
.product-hero { background:var(--white); padding:40px 0; border-bottom:1px solid var(--border-light); }
.product-hero__grid { display:grid; grid-template-columns:420px 1fr; gap:40px; align-items:start; }
.product-hero__image { position:relative; border-radius:var(--radius-lg); overflow:hidden; }
.product-hero__placeholder { width:100%; height:360px; background:linear-gradient(135deg, #2C3E50, #34495E); }
.product-hero__img-badge { position:absolute; top:14px; left:14px; padding:5px 14px; border-radius:100px; font-size:0.72rem; font-weight:700; background:var(--primary); color:#fff; text-transform:uppercase; letter-spacing:0.5px; }
.product-hero__top { display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.product-hero__cat { font-size:0.78rem; color:var(--text-muted); font-weight:500; }
.product-hero__analog-tag { padding:3px 10px; background:var(--bg-alt); border:1px solid var(--border); border-radius:4px; font-size:0.72rem; font-weight:700; color:var(--accent); }
.product-hero__title { font-family:var(--font-display); font-size:clamp(1.8rem, 3.2vw, 2.5rem); letter-spacing:0.5px; color:var(--dark); margin-bottom:6px; line-height:1.15;}
.product-hero__subtitle { font-size:0.95rem; color:var(--text-muted); margin-bottom:12px; }
.product-hero__desc { font-size:0.86rem; color:var(--text-secondary); line-height:1.7; margin-bottom:24px; }

.product-hero__quick-specs { display:grid; grid-template-columns:repeat(4, 1fr); gap:10px; margin-bottom:24px; }
.product-hero__qs { display:flex; align-items:center; gap:10px; padding:12px 14px; background:var(--bg-alt); border-radius:var(--radius); border:1px solid var(--border-light); }
.product-hero__qs svg { flex-shrink:0; }
.product-hero__qs span { display:block; font-size:0.66rem; color:var(--text-dim); text-transform:uppercase; letter-spacing:0.5px; }
.product-hero__qs strong { font-size:0.82rem; color:var(--dark); }
.product-hero__actions { display:flex; gap:12px; }

/* NOMENCLATURE TABLE */
.product-section-desc { font-size:0.88rem; color:var(--text-muted); margin-bottom:24px; max-width:600px; }
.nom-table-wrap { overflow-x:auto; border-radius:var(--radius-lg); border:1px solid var(--border); }
.nom-table { width:100%; border-collapse:collapse; }
.nom-table th { background:var(--dark); color:#fff; padding:12px 16px; text-align:left; font-size:0.8rem; font-weight:600; white-space:nowrap; }
.nom-table td { padding:11px 16px; border-bottom:1px solid var(--border-light); font-size:0.84rem; color:var(--text-secondary); }
.nom-table td:first-child { font-weight:600; color:var(--dark); white-space:nowrap; }
.nom-table tbody tr:nth-child(even) { background:var(--bg-alt); }
.nom-table tbody tr:hover { background:var(--primary-ultra-light); }
.td-placeholder { color:var(--text-dim); font-style:italic; }
.nom-table__note { font-size:0.76rem; color:var(--text-dim); margin-top:12px; font-style:italic; }

/* PRODUCT TABS */
.product-tabs__nav { display:flex; gap:4px; border-bottom:2px solid var(--border-light); margin-bottom:32px; overflow-x:auto; scrollbar-width:none; }
.product-tabs__nav::-webkit-scrollbar { display:none; }
.product-tabs__btn { padding:12px 20px; background:none; border:none; border-bottom:2px solid transparent; margin-bottom:-2px; font-size:0.86rem; font-weight:500; color:var(--text-muted); cursor:pointer; transition:var(--transition); font-family:var(--font-body); white-space:nowrap; }
.product-tabs__btn:hover { color:var(--primary); }
.product-tabs__btn.active { color:var(--primary); border-bottom-color:var(--primary); font-weight:600; }

.product-tab { display:none; }
.product-tab.active { display:block; }
.product-tab h3 { font-family:var(--font-body); font-size:1.1rem; font-weight:700; color:var(--dark); margin-bottom:16px; }
.product-tab p { font-size:0.88rem; color:var(--text-secondary); line-height:1.7; margin-bottom:12px; }

/* Tab features (checkmarks) */
.tab-features { display:flex; flex-direction:column; gap:12px; }
.tab-feature { display:flex; align-items:center; gap:10px; font-size:0.88rem; color:var(--text-secondary); }
.tab-feature svg { flex-shrink:0; }

/* Construction layout */
.construction-layout { display:grid; grid-template-columns:1fr auto; gap:40px; align-items:start; }
.construction-layers { display:flex; flex-direction:column; gap:16px; }
.construction-layer { display:flex; gap:14px; align-items:start; }
.construction-layer__num { width:32px; height:32px; background:var(--primary); color:#fff; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:0.82rem; font-weight:700; flex-shrink:0; }
.construction-layer strong { display:block; font-size:0.9rem; color:var(--dark); margin-bottom:4px; }
.construction-layer p { font-size:0.82rem; color:var(--text-muted); line-height:1.5; margin:0; }
.construction-svg { text-align:center; }
.construction-svg__caption { font-size:0.76rem; color:var(--text-dim); margin-top:8px; }

/* Specs grid */
.specs-grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:12px; margin-bottom:20px; }
.specs-item { padding:14px 16px; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius); }
.specs-item span { display:block; font-size:0.68rem; color:var(--text-dim); text-transform:uppercase; letter-spacing:0.5px; margin-bottom:4px; }
.specs-item strong { font-size:0.86rem; color:var(--dark); }
.specs-placeholder { display:flex; align-items:center; gap:10px; padding:16px 20px; background:var(--primary-ultra-light); border:1px dashed var(--border); border-radius:var(--radius); }
.specs-placeholder p { font-size:0.82rem; color:var(--text-muted); margin:0; }

/* DOCUMENTS */
.docs-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; }
.doc-card { display:flex; align-items:center; gap:14px; padding:18px 20px; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); transition:var(--transition); text-decoration:none; color:inherit; }
.doc-card:hover { border-color:var(--primary); box-shadow:var(--shadow); }
.doc-card__icon { width:44px; height:44px; background:var(--primary-light); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; color:var(--primary); flex-shrink:0; }
.doc-card__info { flex:1; }
.doc-card__info strong { display:block; font-size:0.86rem; color:var(--dark); margin-bottom:2px; }
.doc-card__info span { font-size:0.74rem; color:var(--text-dim); }
.doc-card__dl { color:var(--text-dim); flex-shrink:0; transition:var(--transition); }
.doc-card:hover .doc-card__dl { color:var(--primary); }

/* REQUEST FORM */
.product-request__grid { display:grid; grid-template-columns:1fr 1.4fr; gap:48px; align-items:start; }
.product-request__info p { font-size:0.9rem; color:var(--text-secondary); line-height:1.7; margin-bottom:20px; }
.product-request__contacts { display:flex; flex-direction:column; gap:10px; }
.product-request__phone { display:flex; align-items:center; gap:8px; font-size:1rem; font-weight:700; color:var(--dark); transition:var(--transition); }
.product-request__phone:hover { color:var(--primary); }
.product-request__email { font-size:0.88rem; color:var(--text-muted); transition:var(--transition); }
.product-request__email:hover { color:var(--primary); }
.form-grid--compact { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:16px; }
.product-request__submit { width:100%; justify-content:center; }

/* RELATED PRODUCTS */
.related-products .section__title { margin-bottom:24px; }
.related-products__grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; }
.related-prod-card { display:block; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); overflow:hidden; transition:var(--transition); text-decoration:none; color:inherit; }
.related-prod-card:hover { border-color:var(--primary); box-shadow:var(--shadow-lg); transform:translateY(-2px); }
.related-prod-card__img { height:140px; }
.related-prod-card__img--sipst2 { background:linear-gradient(135deg, #3A5068, #4A6580); }
.related-prod-card__img--sipst3 { background:linear-gradient(135deg, #1A365D, #2A4A7F); }
.related-prod-card__img--a { background:linear-gradient(135deg, #5C7082, #8E8E93); }
.related-prod-card__body { padding:16px 18px; }
.related-prod-card__body h3 { font-family:var(--font-display); font-size:1.1rem; letter-spacing:0.5px; color:var(--dark); margin-bottom:4px; }
.related-prod-card__body p { font-size:0.78rem; color:var(--text-muted); margin-bottom:6px; }
.related-prod-card__analog { font-size:0.72rem; font-weight:600; color:var(--accent); }

/* ═══ PRODUCT RESPONSIVE ═══ */
@media (max-width:1024px) {
  .product-hero__grid { grid-template-columns:1fr; }
  .product-hero__placeholder { height:280px; }
  .product-hero__quick-specs { grid-template-columns:repeat(2, 1fr); }
  .specs-grid { grid-template-columns:repeat(2, 1fr); }
  .construction-layout { grid-template-columns:1fr; }
  .construction-svg { order:-1; }
  .docs-grid { grid-template-columns:1fr; }
  .product-request__grid { grid-template-columns:1fr; gap:32px; }
  .related-products__grid { grid-template-columns:repeat(3, 1fr); }
}
@media (max-width:768px) {
  .product-hero { padding:28px 0; }
  .product-hero__title { font-size:2rem; }
  .product-hero__placeholder { height:200px; }
  .product-hero__quick-specs { grid-template-columns:1fr 1fr; gap:8px; }
  .product-hero__actions { flex-direction:column; }
  .product-hero__actions .btn { justify-content:center; width:100%; }
  .product-tabs__btn { padding:10px 14px; font-size:0.8rem; }
  .specs-grid { grid-template-columns:1fr 1fr; gap:8px; }
  .form-grid--compact { grid-template-columns:1fr; }
  .related-products__grid { grid-template-columns:1fr; }
  .related-prod-card__img { height:120px; }
  .nom-table th, .nom-table td { padding:8px 10px; font-size:0.76rem; }
}
/* Тех. характеристики: на телефонах одна колонка — длинные слова («Светостабилизированный»,
   «barqarorlashtirilgan») не помещаются в половину ширины. Две колонки помещаются от ~422 px. */
@media (max-width:480px) {
  .specs-grid { grid-template-columns:1fr; }
}

/* Additional product card placeholders */
.prod-card__placeholder--vvg { background:linear-gradient(135deg, #B87333, #C9884A); }
.prod-card__placeholder--vvgng { background:linear-gradient(135deg, #8B6914, #A67C2E); }
.prod-card__placeholder--vvgls { background:linear-gradient(135deg, #2E5A3A, #3E7A50); }
.prod-card__placeholder--vvgp { background:linear-gradient(135deg, #6B7280, #9CA3AF); }
.prod-card__placeholder--vbshv { background:linear-gradient(135deg, #4A5568, #2D3748); }
.prod-card__placeholder--vbshvls { background:linear-gradient(135deg, #1E3A5F, #2C5282); }
.prod-card__placeholder--pvs { background:linear-gradient(135deg, #B87333, #D4A574); }
.prod-card__placeholder--puvp { background:linear-gradient(135deg, #5C7082, #7A8FA0); }
.prod-card__placeholder--ppbn { background:linear-gradient(135deg, #8E8E93, #AEAEB2); }

/* ═══════════════════════════════════════
   STATIC PAGES (about, production, etc.)
   ═══════════════════════════════════════ */

/* CONTENT GRID: main + sidebar */
.sp-content__grid {
  display:grid;
  grid-template-columns:1fr 340px;
  gap:48px;
  align-items:start;
}
.sp-content__main p {
  font-size:0.92rem;
  color:var(--text-secondary);
  line-height:1.75;
  margin-bottom:16px;
}
.sp-content__heading {
  font-family:var(--font-display);
  font-size:1.35rem;
  letter-spacing:0.5px;
  color:var(--dark);
  margin-top:36px;
  margin-bottom:16px; line-height:1.25;}
.sp-content__heading:first-child { margin-top:0; }

/* Feature list with icons */
.sp-feature-list {
  display:flex;
  flex-direction:column;
  gap:18px;
  margin:20px 0 28px;
}
.sp-feature {
  display:flex;
  gap:14px;
  align-items:start;
}
.sp-feature__icon {
  width:40px;
  height:40px;
  background:var(--primary-light);
  border-radius:var(--radius);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}
.sp-feature strong {
  display:block;
  font-size:0.9rem;
  color:var(--dark);
  margin-bottom:3px;
}
.sp-feature p {
  font-size:0.82rem;
  color:var(--text-muted);
  line-height:1.5;
  margin:0;
}

/* SIDEBAR CARD */
.sp-sidebar-card {
  background:var(--white);
  border:1px solid var(--border-light);
  border-radius:var(--radius-lg);
  padding:24px;
  margin-bottom:20px;
}
.sp-sidebar-card h3 {
  font-family:var(--font-display);
  font-size:1.1rem;
  letter-spacing:0.5px;
  color:var(--dark);
  margin-bottom:18px;
  padding-bottom:12px;
  border-bottom:2px solid var(--primary);
}
.sp-sidebar-card--accent {
  background:var(--dark);
  border-color:var(--dark);
}
.sp-sidebar-card--accent h3 {
  color:#fff;
  border-bottom-color:var(--primary);
}

/* Facts in sidebar */
.sp-fact {
  display:flex;
  align-items:baseline;
  gap:10px;
  padding:10px 0;
  border-bottom:1px solid var(--border-light);
}
.sp-fact:last-child { border-bottom:none; }
.sp-fact__num {
  font-family:var(--font-display);
  font-size:1.4rem;
  color:var(--primary);
  letter-spacing:0.5px;
  min-width:60px; font-weight:700;}
.sp-fact__label {
  font-size:0.82rem;
  color:var(--text-muted);
}

/* Contacts in sidebar */
.sp-contact {
  display:flex;
  gap:10px;
  align-items:start;
  padding:10px 0;
  border-bottom:1px solid var(--border-light);
}
.sp-contact:last-child { border-bottom:none; }
.sp-contact svg { flex-shrink:0; margin-top:2px; }
.sp-contact span {
  font-size:0.82rem;
  color:var(--text-secondary);
  line-height:1.5;
}

/* Standards in dark sidebar */
.sp-standards { display:flex; flex-direction:column; gap:12px; }
.sp-standard {
  padding:10px 0;
  border-bottom:1px solid rgba(255,255,255,0.08);
}
.sp-standard:last-child { border-bottom:none; }
.sp-standard strong {
  display:block;
  font-size:0.88rem;
  color:var(--primary);
  margin-bottom:2px;
}
.sp-standard span {
  font-size:0.78rem;
  color:rgba(255,255,255,0.45);
}

/* ═══ PRODUCTION PAGE ═══ */

/* Process stages (grid) */
.stage-grid {
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:20px;
}
.stage-grid__card {
  position:relative;
  display:flex;
  flex-direction:column;
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  padding:30px 28px 28px;
  overflow:hidden;
  transition:var(--transition);
}
.stage-grid__card::before {
  content:'';
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:3px;
  background:var(--primary);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.stage-grid__card:hover {
  border-color:var(--primary);
  box-shadow:var(--shadow-lg);
  transform:translateY(-3px);
}
.stage-grid__card:hover::before { transform:scaleX(1); }
.stage-grid__num {
  font-family:var(--font-display);
  font-size:2.4rem;
  font-weight:800;
  line-height:1;
  letter-spacing:-1px;
  color:var(--primary);
  margin-bottom:6px;
}
.stage-grid__rule {
  width:34px;
  height:2px;
  background:var(--primary);
  opacity:0.35;
  margin-bottom:18px;
}
.stage-grid__card h3 {
  font-family:var(--font-display);
  font-size:1.12rem;
  letter-spacing:0.3px;
  color:var(--dark);
  line-height:1.3;
  margin-bottom:12px;
}
.stage-grid__text {
  font-size:0.86rem;
  color:var(--text-secondary);
  line-height:1.7;
  margin-bottom:18px;
}
.stage-grid__specs {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:auto;
}
.stage-grid__specs span {
  padding:5px 12px;
  background:var(--bg-alt);
  border:1px solid var(--border-light);
  border-radius:4px;
  font-size:0.76rem;
  font-weight:600;
  color:var(--text-secondary);
}
.stage-grid__specs b {
  color:var(--dark);
  font-weight:700;
}

/* Equipment grid */
.equip-grid {
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:20px;
}
.equip-card {
  background:var(--white);
  border:1px solid var(--border-light);
  border-radius:var(--radius-lg);
  padding:28px 24px;
  transition:var(--transition);
  display:grid;
  grid-template-columns:auto 1fr;
  column-gap:16px;
  align-items:center;
  align-content:start;
}
.equip-card:hover {
  border-color:var(--primary);
  box-shadow:var(--shadow);
}
.equip-card__icon {
  width:52px;
  height:52px;
  background:var(--primary-light);
  border-radius:var(--radius);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--primary);
}
.equip-card h3 {
  font-family:var(--font-body);
  font-size:0.95rem;
  font-weight:700;
  color:var(--dark);
}
.equip-card p {
  grid-column:1 / -1;
  margin-top:14px;
  font-size:0.82rem;
  color:var(--text-muted);
  line-height:1.55;
}

/* ═══ RESPONSIVE ═══ */

@media (max-width:1024px) {
  .sp-content__grid { grid-template-columns:1fr; gap:32px; }
  .sp-content__sidebar { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
  .stage-grid { grid-template-columns:repeat(2, 1fr); }
  .equip-grid { grid-template-columns:repeat(2, 1fr); }
}

@media (max-width:768px) {
  .sp-content__sidebar { grid-template-columns:1fr; }
  .stage-grid { grid-template-columns:1fr; }
  .equip-grid { grid-template-columns:1fr; }
  .sp-content__heading { font-size:1.3rem; }
}

/* ═══════════════════════════════════════
   CERTIFICATES PAGE
   ═══════════════════════════════════════ */
.certs-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; }
.cert-card { background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); overflow:hidden; transition:var(--transition); }
.cert-card:hover { border-color:var(--primary); box-shadow:var(--shadow-lg); }
.cert-card__preview { height:180px; display:flex; align-items:center; justify-content:center; position:relative; }
.cert-card__preview--gost { background:linear-gradient(135deg, #1A365D, #2A4A7F); }
.cert-card__preview--iec { background:linear-gradient(135deg, #2C5282, #3182CE); }
.cert-card__preview--fire { background:linear-gradient(135deg, #9B2C2C, #E53E3E); }
.cert-card__preview--sip { background:linear-gradient(135deg, #2C3E50, #34495E); }
.cert-card__preview--control { background:linear-gradient(135deg, #4A5568, #718096); }
.cert-card__preview--hv { background:linear-gradient(135deg, #553C9A, #805AD5); }
.cert-card__preview::after { content:'\1F4C4'; font-size:3rem; opacity:0.3; }
.cert-card__body { padding:20px; }
.cert-card__title { font-size:0.92rem; font-weight:700; color:var(--dark); margin-bottom:6px; }
.cert-card__desc { font-size:0.8rem; color:var(--text-muted); line-height:1.5; margin-bottom:12px; }
.cert-card__meta { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:14px; }
.cert-card__tag { padding:3px 8px; background:var(--bg-alt); border-radius:4px; font-size:0.68rem; font-weight:600; color:var(--text-secondary); }
.cert-card__download { display:inline-flex; align-items:center; gap:6px; font-size:0.82rem; font-weight:600; color:var(--primary); transition:var(--transition); }
.cert-card__download:hover { color:var(--primary-dark); }

/* Standards grid */
.standards-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; }
.standard-card { background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); padding:24px; transition:var(--transition); }
.standard-card:hover { border-color:var(--primary); box-shadow:var(--shadow); }
.standard-card__icon { display:inline-block; padding:4px 12px; background:var(--dark); color:var(--primary); border-radius:4px; font-family:var(--font-display); font-size:0.82rem; letter-spacing:1.5px; margin-bottom:12px; }
.standard-card h3 { font-size:0.92rem; font-weight:700; color:var(--dark); margin-bottom:6px; }
.standard-card p { font-size:0.8rem; color:var(--text-muted); line-height:1.5; }

/* Sidebar downloads */
.sidebar-downloads { display:flex; flex-direction:column; gap:4px; }
.sidebar-dl { display:flex; align-items:center; gap:10px; padding:12px; border-radius:var(--radius); transition:var(--transition); color:var(--text-secondary); }
.sidebar-dl:hover { background:var(--bg-alt); color:var(--primary); }
.sidebar-dl svg { flex-shrink:0; color:var(--primary); }
.sidebar-dl span { font-size:0.84rem; font-weight:500; }
.sidebar-dl small { display:block; font-size:0.72rem; color:var(--text-dim); font-weight:400; }

/* ═══════════════════════════════════════
   CONTACTS PAGE
   ═══════════════════════════════════════ */
.page-hero--compact .container { grid-template-columns:1fr; }
.contacts-grid { display:grid; grid-template-columns:1fr 1.3fr; gap:48px; align-items:start; }
.contacts-info { display:flex; flex-direction:column; gap:8px; }
.contact-block { display:flex; gap:16px; padding:20px 0; border-bottom:1px solid var(--border-light); }
.contact-block:last-child { border-bottom:none; }
.contact-block__icon { width:44px; height:44px; background:var(--primary-light); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.contact-block h3 { font-size:0.88rem; font-weight:700; color:var(--dark); margin-bottom:4px; }
.contact-block p { font-size:0.86rem; color:var(--text-secondary); line-height:1.6; margin:0 0 2px; }
.contact-block a { color:var(--text-secondary); transition:var(--transition); }
.contact-block a:hover { color:var(--primary); }

.contacts-form-wrap { position:sticky; top:80px; }
.contacts-form { background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); padding:36px; box-shadow:var(--shadow); }
.contacts-form__title { font-family:var(--font-display); font-size:1.3rem; letter-spacing:0.5px; color:var(--dark); margin-bottom:6px; }
.contacts-form__desc { font-size:0.84rem; color:var(--text-muted); margin-bottom:24px; }

/* Map placeholder */
.contacts-map { border-radius:var(--radius-lg); overflow:hidden; border:1px solid var(--border); }
.contacts-map__placeholder { height:400px; background:var(--bg-alt); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; }
.contacts-map__placeholder p { font-size:0.92rem; color:var(--text-muted); font-weight:500; }
.contacts-map__placeholder span { font-size:0.78rem; color:var(--text-dim); }

/* ═══ RESPONSIVE additions ═══ */
@media (max-width:1024px) {
  .certs-grid { grid-template-columns:repeat(2, 1fr); }
  .standards-grid { grid-template-columns:repeat(2, 1fr); }
  .contacts-grid { grid-template-columns:1fr; gap:32px; }
  .contacts-form-wrap { position:static; }
}
@media (max-width:768px) {
  .certs-grid { grid-template-columns:1fr; }
  .standards-grid { grid-template-columns:1fr; }
  .cert-card__preview { height:140px; }
  .contacts-map__placeholder { height:280px; }
}

/* Product page placeholder gradients */
.prod-ph--g1 { background:linear-gradient(135deg,#1A365D,#2A4A7F); }
.prod-ph--g2 { background:linear-gradient(135deg,#2E5A3A,#3E7A50); }
.prod-ph--g3 { background:linear-gradient(135deg,#4A5568,#2D3748); }
.prod-ph--g4 { background:linear-gradient(135deg,#5C7082,#7A8FA0); }
.prod-ph--g5 { background:linear-gradient(135deg,#6B7280,#4A5568); }
.prod-ph--g6 { background:linear-gradient(135deg,#6B7280,#8FA3B8); }
.prod-ph--g7 { background:linear-gradient(135deg,#6B7280,#9CA3AF); }
.prod-ph--g8 { background:linear-gradient(135deg,#8E8E93,#AEAEB2); }
.prod-ph--g9 { background:linear-gradient(135deg,#8FA3B8,#A8B8C8); }
.prod-ph--g10 { background:linear-gradient(135deg,#9B2C2C,#E53E3E); }
.prod-ph--g11 { background:linear-gradient(135deg,#A8B8C8,#C0CDD8); }
.prod-ph--g12 { background:linear-gradient(135deg,#B87333,#C9884A); }
.prod-ph--g13 { background:linear-gradient(135deg,#B87333,#D4A574); }

/* ═══════════════════════════════════════
   ERROR PAGES (404, 403)
   ═══════════════════════════════════════ */
.error-page { padding:80px 0 60px; text-align:center; min-height:60vh; display:flex; align-items:center; }
.error-page__inner { max-width:640px; margin:0 auto; }
.error-page__code { font-family:var(--font-display); font-size:clamp(5rem,15vw,8rem); color:var(--primary); letter-spacing:1px; line-height:1; font-weight:700;}
.error-page__title { font-family:var(--font-display); font-size:clamp(1.3rem, 2.6vw, 1.8rem); letter-spacing:0.5px; color:var(--dark); margin:8px 0 12px; line-height:1.2;}
.error-page__subtitle { font-size:1rem; color:var(--text-muted); margin-bottom:12px; }
.error-page__desc { font-size:0.88rem; color:var(--text-dim); line-height:1.6; margin-bottom:32px; }
.error-page__suggest-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:32px; text-align:left; }
.error-page__suggest-card { display:flex; align-items:center; gap:12px; padding:14px 16px; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); transition:var(--transition); text-decoration:none; color:inherit; }
.error-page__suggest-card:hover { border-color:var(--primary); box-shadow:var(--shadow); }
.error-page__suggest-card svg { flex-shrink:0; }
.error-page__suggest-card strong { display:block; font-size:0.86rem; color:var(--dark); }
.error-page__suggest-card span { font-size:0.74rem; color:var(--text-dim); }
.error-page__info-box { display:flex; gap:14px; padding:20px; background:var(--primary-ultra-light); border:1px solid var(--border); border-radius:var(--radius-lg); text-align:left; margin-bottom:32px; }
.error-page__info-box svg { flex-shrink:0; margin-top:2px; }
.error-page__info-box strong { display:block; font-size:0.88rem; color:var(--dark); margin-bottom:4px; }
.error-page__info-box p { font-size:0.82rem; color:var(--text-muted); line-height:1.5; margin:0; }
.error-page__actions { display:flex; gap:12px; justify-content:center; margin-bottom:24px; }
.error-page__contacts { font-size:0.82rem; color:var(--text-dim); }
.error-page__contacts a { color:var(--primary); font-weight:600; }
.error-page__contacts span { margin:0 8px; color:var(--border); }

/* ═══════════════════════════════════════
   LEGAL CONTENT (privacy, terms)
   ═══════════════════════════════════════ */
.legal-content { max-width:800px; margin:0 auto; }
.legal-content h1 { font-family:var(--font-display); font-size:clamp(1.5rem, 2.6vw, 2rem); letter-spacing:0.5px; color:var(--dark); margin-bottom:8px; line-height:1.2;}
.legal-meta { font-size:0.78rem; color:var(--text-dim); margin-bottom:40px; padding-bottom:20px; border-bottom:2px solid var(--primary); }
.legal-content h2 { font-family:var(--font-body); font-size:1.05rem; font-weight:700; color:var(--dark); margin:32px 0 12px; }
.legal-content h2:first-of-type { margin-top:0; }
.legal-content p { font-size:0.88rem; color:var(--text-secondary); line-height:1.75; margin-bottom:10px; }
.legal-content a { color:var(--primary); font-weight:500; }
.legal-content ul { list-style:none; padding:0; margin:12px 0 16px; display:flex; flex-direction:column; gap:8px; }
.legal-content li { display:flex; align-items:baseline; gap:10px; font-size:0.86rem; color:var(--text-secondary); line-height:1.5; }
.legal-content li::before { content:''; width:6px; height:6px; background:var(--primary); border-radius:50%; flex-shrink:0; margin-top:7px; }
.legal-contacts { padding:20px; background:var(--bg-alt); border-radius:var(--radius-lg); margin-top:12px; }
.legal-contacts p { margin-bottom:4px; }

/* ═══ RESPONSIVE ═══ */
@media (max-width:768px) {
  .error-page { padding:48px 0 40px; }
  .error-page__suggest-grid { grid-template-columns:1fr; }
  .error-page__actions { flex-direction:column; }
  .error-page__actions .btn { justify-content:center; }
}

/* Missing product card placeholder backgrounds */
.prod-card__placeholder--copper { background:linear-gradient(135deg, #B87333, #D4A574); }
.prod-card__placeholder--dark { background:linear-gradient(135deg, #1A1F25, #2A3140); }
.prod-card__placeholder--fire { background:linear-gradient(135deg, #9B2C2C, #E53E3E); }
.prod-card__placeholder--gray { background:linear-gradient(135deg, #6B7280, #9CA3AF); }
.prod-card__placeholder--light { background:linear-gradient(135deg, #D1D5DB, #E5E7EB); }
.prod-card__placeholder--steel { background:linear-gradient(135deg, #4A5568, #718096); }

/* ═══ DIGITAL PRODUCTION (MES / SAP) ═══ */
.sp-digital-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  margin:24px 0 28px;
}
.sp-digital-card {
  background:var(--white);
  border:1px solid var(--border-light);
  border-radius:var(--radius-lg);
  padding:28px 24px;
  transition:var(--transition);
}
.sp-digital-card:hover { border-color:var(--primary); box-shadow:var(--shadow); }
.sp-digital-card__header {
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:8px;
}
.sp-digital-card__badge {
  padding:4px 12px;
  background:var(--dark);
  color:var(--primary);
  border-radius:4px;
  font-family:var(--font-display);
  font-size:0.88rem;
  letter-spacing:2px;
  flex-shrink:0;
}
.sp-digital-card__badge--sap { background:#0070F2; color:#fff; }
.sp-digital-card__header h3 {
  font-family:var(--font-body);
  font-size:0.88rem;
  font-weight:600;
  color:var(--dark);
}
.sp-digital-card__subtitle {
  font-size:0.78rem;
  color:var(--text-dim);
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:0.5px;
  margin-bottom:12px;
}
.sp-digital-card > p {
  font-size:0.86rem;
  color:var(--text-secondary);
  line-height:1.65;
  margin-bottom:16px;
}
.sp-feature-list--compact .sp-feature { gap:10px; }
.sp-feature-list--compact .sp-feature__icon { width:36px; height:36px; }
.sp-feature-list--compact .sp-feature strong { font-size:0.84rem; }
.sp-feature-list--compact .sp-feature p { font-size:0.78rem; }

.sp-digital-result {
  display:flex;
  gap:16px;
  align-items:start;
  padding:20px 24px;
  background:var(--dark);
  border-radius:var(--radius-lg);
  margin-bottom:36px;
}
.sp-digital-result__icon {
  width:44px;
  height:44px;
  background:var(--primary);
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}
.sp-digital-result strong {
  display:block;
  font-size:0.9rem;
  color:#fff;
  margin-bottom:4px;
}
.sp-digital-result p {
  font-size:0.82rem;
  color:rgba(255,255,255,0.6);
  line-height:1.6;
  margin:0;
}

@media (max-width:1024px) {
  .sp-digital-grid { grid-template-columns:1fr; }
}
@media (max-width:768px) {
  .sp-digital-result { flex-direction:column; gap:12px; }
}

/* ═══════════════════════════════════════
   PROJECTS
   ═══════════════════════════════════════ */

/* Filter buttons */
.projects-filter { display:flex; gap:8px; flex-wrap:wrap; }
.projects-filter__btn { display:inline-flex; align-items:center; gap:6px; padding:8px 18px; background:var(--white); border:1px solid var(--border-light); border-radius:100px; font-family:var(--font-body); font-size:0.82rem; font-weight:500; color:var(--text-muted); cursor:pointer; transition:var(--transition); }
.projects-filter__btn:hover { border-color:var(--primary); color:var(--primary); }
.projects-filter__btn.active { background:var(--primary); border-color:var(--primary); color:#fff; }
.projects-filter__btn.active svg { stroke:#fff; }
.projects-filter-section { padding-bottom:0; }

/* Project grid */
.projects-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:24px; }
.projects-grid--compact { grid-template-columns:repeat(3, 1fr); }
.project-card { border-radius:var(--radius-lg); overflow:hidden; background:var(--white); border:1px solid var(--border-light); transition:var(--transition); }
.project-card:hover { border-color:var(--primary); box-shadow:0 12px 32px rgba(0,0,0,0.1); transform:translateY(-3px); }
.project-card[data-hidden="true"] { display:none; }
.project-card__link { text-decoration:none; color:inherit; display:block; }
.project-card__img { height:200px; position:relative; overflow:hidden; }
.project-card__img--wind { background:linear-gradient(135deg, #4A7C8F, #2A5A6F); }
.project-card__img--solar { background:linear-gradient(135deg, #D4A030, #8A6E20); }
.project-card__img--city { background:linear-gradient(135deg, #5A6A7A, #3A4A5A); }
.project-card__img--substation { background:linear-gradient(135deg, #6A5A3A, #4A3A2A); }
.project-card__img--mall { background:linear-gradient(135deg, #7A5A6A, #5A3A4A); }
.project-card__img--factory { background:linear-gradient(135deg, #4A5A3A, #3A4A2A); }
.project-card__img--residential { background:linear-gradient(135deg, #6A7A8A, #4A5A6A); }
.project-card__img--hospital { background:linear-gradient(135deg, #3A6A7A, #2A4A5A); }
.project-card__img--textile { background:linear-gradient(135deg, #7A6A4A, #5A4A3A); }
.project-card__cat-tag { position:absolute; top:12px; left:12px; padding:4px 12px; background:rgba(0,0,0,0.5); backdrop-filter:blur(8px); border-radius:100px; font-size:0.7rem; font-weight:600; color:#fff; }
.project-card__body { padding:18px 20px; }
.project-card__title { font-family:var(--font-body); font-size:1rem; font-weight:700; color:var(--dark); margin-bottom:8px; }
.project-card__meta { display:flex; align-items:center; gap:12px; margin-bottom:8px; }
.project-card__location { display:flex; align-items:center; gap:4px; font-size:0.76rem; color:var(--text-muted); }
.project-card__location svg { flex-shrink:0; }
.project-card__year { font-size:0.74rem; color:var(--text-dim); font-weight:600; }
.project-card__desc { font-size:0.82rem; color:var(--text-secondary); line-height:1.55; margin-bottom:12px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.project-card__products { display:flex; gap:5px; flex-wrap:wrap; }
.project-card__products span { padding:3px 8px; background:var(--bg-alt); border-radius:4px; font-size:0.68rem; font-weight:600; color:var(--text-secondary); }
.projects-empty { text-align:center; padding:60px 20px; }
.projects-empty p { color:var(--text-dim); font-size:0.92rem; }

/* Project detail hero */
.project-detail-hero { position:relative; min-height:320px; display:flex; align-items:flex-end; overflow:hidden; }
.project-detail-hero__bg { position:absolute; inset:0; background:url('../images/project-hero-bg.jpg') center/cover no-repeat; }
.project-detail-hero__overlay { position:absolute; inset:0; background:linear-gradient(to top, rgba(26,31,37,0.92) 0%, rgba(26,31,37,0.55) 50%, rgba(26,31,37,0.35) 100%); }
.project-detail-hero .container { position:relative; z-index:2; padding-bottom:40px; padding-top:80px; }
.project-detail-hero__cat { display:inline-block; padding:4px 14px; background:rgba(244,121,32,0.2); border:1px solid rgba(244,121,32,0.35); border-radius:100px; font-size:0.74rem; font-weight:600; color:#fff; margin-bottom:12px; }
.project-detail-hero__title { font-family:var(--font-display); font-size:clamp(1.6rem, 3.2vw, 2.2rem); color:#fff; letter-spacing:0.5px; margin-bottom:8px; line-height:1.15;}
.project-detail-hero__subtitle { font-size:0.95rem; color:rgba(255,255,255,0.7); }

/* Project detail meta */
.project-detail-meta-section { padding:0 0 32px; }
.project-detail-meta-section .container { margin-top:-36px; position:relative; z-index:3; }
.project-detail-meta { display:grid; grid-template-columns:repeat(6,1fr); gap:1px; background:var(--border-light); border-radius:var(--radius-lg); overflow:hidden; box-shadow:0 8px 32px rgba(0,0,0,0.1); }
.project-detail-meta__item { background:var(--white); padding:24px 16px; text-align:center; }
.project-detail-meta__label { display:block; font-size:0.7rem; color:var(--text-dim); text-transform:uppercase; letter-spacing:0.5px; margin-bottom:6px; }
.project-detail-meta__value { font-size:0.95rem; font-weight:700; color:var(--dark); }

/* Project products grid */
.project-products-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:16px 0 28px; }
.project-product { padding:16px 18px; background:var(--bg-alt); border-radius:var(--radius); border-left:3px solid var(--primary); }
.project-product strong { font-size:0.86rem; color:var(--dark); display:block; margin-bottom:4px; }
.project-product p { font-size:0.78rem; color:var(--text-muted); line-height:1.5; margin:0 0 6px; }
.project-product__qty { font-size:0.74rem; font-weight:700; color:var(--primary); }

/* Project gallery */
.project-gallery { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.project-gallery__item { border-radius:var(--radius); overflow:hidden; cursor:pointer; transition:var(--transition); }
.project-gallery__item img { width:100%; height:240px; object-fit:cover; display:block; transition:transform 0.4s ease; }
.project-gallery__item:hover img { transform:scale(1.06); }
.project-gallery__item:hover { transform:scale(1.03); box-shadow:var(--shadow-lg); }
.project-gallery__placeholder { height:240px; }
.project-gallery__placeholder--1 { background:linear-gradient(135deg, #4A7C8F, #6A9CAF); }
.project-gallery__placeholder--2 { background:linear-gradient(135deg, #5A8C9F, #3A6C7F); }
.project-gallery__placeholder--3 { background:linear-gradient(135deg, #6A8A7A, #4A6A5A); }
.project-gallery__placeholder--4 { background:linear-gradient(135deg, #7A8A6A, #5A6A4A); }
.project-gallery__placeholder--5 { background:linear-gradient(135deg, #4A6A8A, #3A5A7A); }
.project-gallery__placeholder--6 { background:linear-gradient(135deg, #5A7A6A, #4A6A5A); }

/* Lightbox */
.lightbox { display:none; position:fixed; inset:0; z-index:9999; background:rgba(0,0,0,0.92); align-items:center; justify-content:center; }
.lightbox.active { display:flex; }
.lightbox__close { position:absolute; top:20px; right:24px; background:none; border:none; color:#fff; font-size:2.4rem; cursor:pointer; z-index:10; opacity:0.7; transition:var(--transition); }
.lightbox__close:hover { opacity:1; }
.lightbox__prev, .lightbox__next { position:absolute; top:50%; transform:translateY(-50%); background:rgba(255,255,255,0.1); border:none; border-radius:50%; width:48px; height:48px; display:flex; align-items:center; justify-content:center; cursor:pointer; z-index:10; transition:var(--transition); }
.lightbox__prev:hover, .lightbox__next:hover { background:rgba(244,121,32,0.3); }
.lightbox__prev { left:20px; }
.lightbox__next { right:20px; }
.lightbox__content { max-width:900px; max-height:80vh; width:90%; }
.lightbox__img-wrap { width:100%; border-radius:var(--radius-lg); overflow:hidden; }
.lightbox__img { max-width:100%; max-height:78vh; display:block; margin:0 auto; border-radius:var(--radius); object-fit:contain; }
.lightbox__caption { text-align:center; color:rgba(255,255,255,0.7); font-size:0.86rem; margin-top:12px; }
.lightbox__counter { position:absolute; bottom:24px; left:50%; transform:translateX(-50%); color:rgba(255,255,255,0.6); font-size:0.84rem; }

/* ═══ RESPONSIVE ═══ */
@media (max-width:1024px) {
  .projects-grid { grid-template-columns:repeat(2,1fr); }
  .project-detail-meta { grid-template-columns:repeat(3,1fr); }
  .project-detail-meta-section .container { margin-top:-24px; }
  .project-products-grid { grid-template-columns:1fr; }
  .project-detail-meta-section + .section .sp-content__grid { grid-template-columns:1fr; }
}
@media (max-width:768px) {
  .projects-grid { grid-template-columns:1fr; }
  .projects-grid--compact { grid-template-columns:1fr; }
  .projects-filter { gap:6px; }
  .projects-filter__btn { padding:6px 12px; font-size:0.76rem; }
  .project-card__img { height:180px; }
  .project-detail-meta { grid-template-columns:repeat(2,1fr); }
  .project-detail-meta-section .container { margin-top:-16px; }
  .project-detail-meta__item { padding:16px 12px; }
  .project-detail-meta__icon { width:22px; height:22px; }
  .project-gallery { grid-template-columns:repeat(2,1fr); }
  .project-gallery__item img { height:180px; }
  .project-detail-hero__title { font-size:1.6rem; }
  .lightbox__prev, .lightbox__next { width:36px; height:36px; }
  .lightbox__prev { left:8px; }
  .lightbox__next { right:8px; }
}

/* Meta icons */
.project-detail-meta__icon { display:block; margin:0 auto 10px; width:28px; height:28px; }
.project-detail-meta__item::before { content:none; }

/* Challenge & Solution */
.project-challenge { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:16px 0 28px; }
.project-challenge__card { padding:24px; border-radius:var(--radius-lg); }
.project-challenge__card--task { background:#FFF5F5; border:1px solid #FED7D7; }
.project-challenge__card--solution { background:#F0FFF4; border:1px solid #C6F6D5; }
.project-challenge__header { display:flex; align-items:center; gap:10px; margin-bottom:12px; }
.project-challenge__header h3 { font-family:var(--font-body); font-size:0.92rem; font-weight:700; color:var(--dark); margin:0; }
.project-challenge__card p { font-size:0.84rem; color:var(--text-secondary); line-height:1.65; margin:0; }

/* Customer quote */
.project-quote { margin:32px 0 8px; padding:28px 24px; background:var(--bg-alt); border-radius:var(--radius-lg); border-left:4px solid var(--primary); position:relative; }
.project-quote__icon { margin-bottom:12px; }
.project-quote__text { font-size:0.92rem; color:var(--text-secondary); line-height:1.75; font-style:italic; margin:0 0 20px; }
.project-quote__author { display:flex; align-items:center; gap:12px; }
.project-quote__avatar { width:40px; height:40px; background:var(--primary); color:#fff; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:0.78rem; font-weight:700; flex-shrink:0; }
.project-quote__name { display:block; font-size:0.86rem; font-weight:700; color:var(--dark); }
.project-quote__role { font-size:0.76rem; color:var(--text-dim); }

@media (max-width:768px) {
  .project-challenge { grid-template-columns:1fr; }
}

/* Project detail layout fixes */
.project-detail-meta-section + .section { padding-top:48px; }
.project-detail-meta-section + .section .sp-content__grid { grid-template-columns:1fr 320px; gap:40px; }

/* Project sidebar enhancements */
.project-sidebar { position:sticky; top:80px; }
.sp-sidebar-card--dark { background:var(--dark); border-color:var(--dark); }
.sp-sidebar-card--dark h3 { color:#fff; border-bottom-color:var(--primary); }
.sp-sidebar-card--dark .sp-fact { border-bottom-color:rgba(255,255,255,0.08); }
.sp-sidebar-card--dark .sp-fact__num { color:var(--primary); }
.sp-sidebar-card--dark .sp-fact__label { color:rgba(255,255,255,0.5); }
.sp-sidebar-card--cta { background:var(--primary-ultra-light); border-color:var(--primary); border-width:1.5px; }
.sp-sidebar-card--cta h3 { font-size:1rem; border-bottom:none; padding-bottom:0; margin-bottom:8px; }
.sp-sidebar-card--cta p { font-size:0.82rem; color:var(--text-muted); line-height:1.5; margin-bottom:16px; }
.sidebar-cta-link { display:flex; align-items:center; justify-content:center; gap:6px; margin-top:10px; font-size:0.82rem; font-weight:600; color:var(--primary); transition:var(--transition); }
.sidebar-cta-link:hover { color:var(--primary-dark); gap:10px; }

@media (max-width:1024px) {
  .project-sidebar { position:static; display:grid; grid-template-columns:1fr 1fr; gap:20px; }
  .sp-sidebar-card--cta { grid-column:1/-1; }
}
@media (max-width:768px) {
  .project-sidebar { grid-template-columns:1fr; }
}
.sidebar-cta-btn { width:100%; justify-content:center; }

/* ═══ PROJECT DETAIL — FULL-WIDTH LAYOUT ═══ */
.pd-section { padding:48px 0; }
.pd-section + .pd-section { padding-top:0; }
.section--alt.pd-section + .pd-section { padding-top:48px; }
.pd-section + .section--alt.pd-section { padding-top:48px; }
.pd-heading { font-family:var(--font-display); font-size:clamp(1.15rem, 2.2vw, 1.45rem); letter-spacing:0.5px; color:var(--dark); margin-bottom:20px; line-height:1.25;}

/* About block */
.pd-about__text { max-width:860px; }
.pd-about__text p { font-size:0.92rem; color:var(--text-secondary); line-height:1.8; margin-bottom:12px; }

/* Products grid full-width */
.project-products-grid--full { grid-template-columns:repeat(2, 1fr); }

/* Documents horizontal */
.pd-docs-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; }
.pd-doc-card { display:flex; align-items:center; gap:14px; padding:18px 20px; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); text-decoration:none; color:inherit; transition:var(--transition); }
.pd-doc-card:hover { border-color:var(--primary); box-shadow:var(--shadow); transform:translateY(-2px); }
.pd-doc-card__icon { width:44px; height:44px; background:var(--primary-ultra-light); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; flex-shrink:0; color:var(--primary); }
.pd-doc-card__icon svg { stroke:var(--primary); }
.pd-doc-card__info { flex:1; }
.pd-doc-card__info strong { display:block; font-size:0.86rem; color:var(--dark); margin-bottom:2px; }
.pd-doc-card__info span { font-size:0.74rem; color:var(--text-dim); }
.pd-doc-card__dl { flex-shrink:0; color:var(--text-dim); transition:var(--transition); }
.pd-doc-card:hover .pd-doc-card__dl { color:var(--primary); }

/* Quote full-width improvements */
.pd-section .project-quote { max-width:860px; margin:48px auto 0; }

@media (max-width:1024px) {
  .project-products-grid--full { grid-template-columns:1fr 1fr; }
}
@media (max-width:768px) {
  .pd-docs-grid { grid-template-columns:1fr; }
  .project-products-grid--full { grid-template-columns:1fr; }
  .pd-section { padding:36px 0; }
}

/* ═══ FORM VALIDATION ═══ */
.form-error { display:none; font-size:0.72rem; color:#E53E3E; margin-top:4px; }
.form-field.has-error input,
.form-field.has-error select,
.form-field.has-error textarea { border-color:#E53E3E; background:rgba(229,62,62,0.04); }
.form-field.has-error .form-error { display:block; }
.form-field.has-error label { color:#E53E3E; }

/* Shake animation */
@keyframes formShake { 0%,100%{transform:translateX(0)} 20%,60%{transform:translateX(-4px)} 40%,80%{transform:translateX(4px)} }
.form-field.shake { animation:formShake 0.4s ease; }

/* Success message */
.form-success { display:none; padding:14px 20px; background:#F0FFF4; border:1px solid #C6F6D5; border-radius:var(--radius); color:#2F855A; font-size:0.86rem; font-weight:500; margin-bottom:16px; text-align:center; }
.form-success.visible { display:block; }

/* Valid field */
.form-field.is-valid input,
.form-field.is-valid select,
.form-field.is-valid textarea { border-color:#38A169; }

/* Badge color variants */
.page-hero__badge--green { background:rgba(56,161,105,0.15); border-color:rgba(56,161,105,0.3); color:#38A169; }
.page-hero__badge--red { background:rgba(229,62,62,0.15); border-color:rgba(229,62,62,0.3); color:#E53E3E; }
.page-hero__badge--blue { background:rgba(49,130,206,0.15); border-color:rgba(49,130,206,0.3); color:#3182CE; }
.page-hero__badge--teal { background:rgba(49,151,149,0.15); border-color:rgba(49,151,149,0.3); color:#319795; }
.page-hero__badge--purple { background:rgba(128,90,213,0.15); border-color:rgba(128,90,213,0.3); color:#805AD5; }
.page-hero__badge--yellow { background:rgba(214,158,46,0.15); border-color:rgba(214,158,46,0.3); color:#D69E2E; }

/* ═══════════════════════════════════════
   MODAL (Price Request)
   ═══════════════════════════════════════ */
.modal { display:none; position:fixed; inset:0; z-index:9999; align-items:center; justify-content:center; padding:20px; }
.modal.active { display:flex; }
.modal__overlay { position:absolute; inset:0; background:rgba(26,31,37,0.75); backdrop-filter:blur(4px); }
.modal__dialog { position:relative; z-index:2; background:var(--white); border-radius:var(--radius-lg); max-width:480px; width:100%; max-height:90vh; overflow-y:auto; box-shadow:0 24px 64px rgba(0,0,0,0.3); animation:modalIn 0.3s ease; }
@keyframes modalIn { from { opacity:0; transform:translateY(20px) scale(0.98); } to { opacity:1; transform:translateY(0) scale(1); } }
.modal__close { position:absolute; top:16px; right:18px; background:none; border:none; font-size:2rem; line-height:1; color:var(--text-dim); cursor:pointer; transition:var(--transition); z-index:3; }
.modal__close:hover { color:var(--primary); }
.modal__header { padding:28px 28px 0; }
.modal__title { font-family:var(--font-display); font-size:1.45rem; letter-spacing:0.5px; color:var(--dark); margin-bottom:8px; line-height:1.2;}
.modal__subtitle { font-size:0.86rem; color:var(--text-muted); line-height:1.5; }
.modal__body { padding:20px 28px 28px; }
.modal-form { display:flex; flex-direction:column; gap:14px; }
.modal-form__submit { width:100%; justify-content:center; margin-top:4px; }
.modal-form__consent { font-size:0.74rem; color:var(--text-dim); text-align:center; line-height:1.5; }
.modal-form__consent a { color:var(--primary); }

/* ═══════════════════════════════════════
   MODAL (Subsidiary)
   ═══════════════════════════════════════ */
.subsidiary-modal__dialog { max-width:560px; padding:0; }
.subsidiary-modal .modal__close { top:14px; right:14px; width:36px; height:36px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:rgba(255,255,255,0.9); color:var(--dark); box-shadow:var(--shadow-sm); }
.subsidiary-modal .modal__close:hover { background:var(--white); color:var(--primary); }
.subsidiary-modal__photo { width:100%; aspect-ratio:16/9; background:var(--bg-alt); }
.subsidiary-modal__photo img { width:100%; height:100%; object-fit:cover; }
.subsidiary-modal__content { padding:24px 28px 28px; }
.subsidiary-modal__activity { display:inline-block; font-size:0.74rem; font-weight:600; letter-spacing:0.5px; text-transform:uppercase; color:var(--primary); margin-bottom:8px; }
.subsidiary-modal__name { font-family:var(--font-display); font-size:1.45rem; letter-spacing:0.5px; color:var(--dark); margin-bottom:12px; line-height:1.2;}
.subsidiary-modal__desc { font-size:0.9rem; color:var(--text-secondary); line-height:1.7; }
.subsidiary-modal__desc p { margin-bottom:10px; }
.subsidiary-modal__desc p:last-child { margin-bottom:0; }
/* ═══════════════════════════════════════
   NAV DROPDOWN
   ═══════════════════════════════════════ */
.has-dropdown { position:relative; }
.has-dropdown > a { display:inline-flex; align-items:center; gap:5px; }
.nav-arrow { transition:transform 0.2s ease; opacity:0.6; }
.has-dropdown:hover .nav-arrow { transform:rotate(180deg); }
.nav-dropdown { position:absolute; top:100%; left:0; min-width:250px; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius); box-shadow:0 12px 32px rgba(0,0,0,0.12); padding:8px; opacity:0; visibility:hidden; transform:translateY(8px); transition:all 0.2s ease; list-style:none; margin:0; z-index:100; display:flex; flex-direction:column; gap:2px; }
.has-dropdown:hover .nav-dropdown { opacity:1; visibility:visible; transform:translateY(0); }
.nav-dropdown li { display:block; width:100%; }
.nav-dropdown a { display:block; width:100%; padding:10px 14px; font-size:0.86rem; color:var(--text-secondary); border-radius:6px; transition:var(--transition); white-space:nowrap; }
.nav-dropdown a:hover { background:var(--primary-ultra-light); color:var(--primary); }
/* Bridge to prevent hover gap */
.nav-dropdown::before { content:''; position:absolute; top:-8px; left:0; right:0; height:8px; }

/* Mobile sublinks */
.mobile-nav__sublink { font-size:0.86rem !important; color:var(--text-dim) !important; padding-left:16px !important; }
.mobile-nav__sublink:hover { color:var(--primary) !important; }
/* ═══════════════════════════════════════
   LEADERSHIP PAGE
   ═══════════════════════════════════════ */
.section__title--spaced { margin-top:56px; }
.leaders-list { display:flex; flex-direction:column; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); overflow:hidden; }
.leader-row { display:grid; grid-template-columns:1.2fr 1.6fr auto; gap:24px; align-items:center; padding:18px 24px; border-bottom:1px solid var(--border-light); transition:var(--transition); }
.leader-row:last-child { border-bottom:none; }
.leader-row:hover { background:var(--bg-alt); }
.leader-row__name { font-weight:700; color:var(--dark); font-size:1rem; }
.leader-row__position { color:var(--text-secondary); font-size:0.9rem; }
.leader-row__phone { display:inline-flex; align-items:center; gap:8px; justify-self:end; color:var(--primary); font-weight:600; font-size:0.92rem; white-space:nowrap; transition:var(--transition); }
.leader-row__phone:hover { color:var(--dark); }
.leader-row__phone svg { flex-shrink:0; }
@media (max-width:560px) {
  .leader-row { grid-template-columns:1fr; gap:5px; padding:16px 18px; }
  .leader-row__phone { justify-self:start; margin-top:3px; }
}

.leadership-values { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.leadership-values__text p { font-size:0.9rem; color:var(--text-secondary); line-height:1.75; margin-bottom:12px; }
.leadership-values__list { display:flex; flex-direction:column; gap:16px; }
.value-item { display:flex; align-items:flex-start; gap:14px; padding:16px 18px; background:var(--white); border-radius:var(--radius); border:1px solid var(--border-light); }
.value-item svg { flex-shrink:0; margin-top:2px; }
.value-item strong { display:block; font-size:0.9rem; color:var(--dark); margin-bottom:2px; }
.value-item span { font-size:0.8rem; color:var(--text-muted); }
/* ═══════════════════════════════════════
   FACTORY PAGE
   ═══════════════════════════════════════ */
.factory-intro { display:grid; grid-template-columns:1.2fr 1fr; gap:48px; align-items:center; }
.factory-intro__text p { font-size:0.9rem; color:var(--text-secondary); line-height:1.75; margin-bottom:12px; }
.factory-intro__placeholder { height:320px; background:linear-gradient(135deg, #2A3140, #1A1F25); border-radius:var(--radius-lg); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; color:rgba(255,255,255,0.3); }
.factory-intro__placeholder span { font-size:0.9rem; }
.factory-features { display:grid; grid-template-columns:repeat(4, 1fr); gap:20px; }
.factory-feature { padding:24px; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); transition:var(--transition); }
.factory-feature:hover { border-color:var(--primary); box-shadow:var(--shadow); }
.factory-feature__icon { width:52px; height:52px; background:var(--primary-ultra-light); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
.factory-feature h3 { font-family:var(--font-body); font-size:0.94rem; font-weight:700; color:var(--dark); margin-bottom:8px; }
.factory-feature p { font-size:0.82rem; color:var(--text-muted); line-height:1.6; }
.factory-gallery { display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; }
.factory-gallery__item { border-radius:var(--radius-lg); overflow:hidden; cursor:pointer; }
.factory-gallery__item img { width:100%; height:220px; object-fit:cover; display:block; transition:transform 0.4s ease; }
.factory-gallery__item:hover img { transform:scale(1.06); }
.factory-gallery__ph { height:220px; background:linear-gradient(135deg, #4A5568, #2D3748); display:flex; align-items:center; justify-content:center; color:rgba(255,255,255,0.4); font-size:0.86rem; transition:var(--transition); }
.factory-gallery__item:hover .factory-gallery__ph { color:rgba(255,255,255,0.7); }
.factory-qc__lead { font-size:1rem; color:var(--text-secondary); line-height:1.7; max-width:800px; margin-bottom:28px; }
.factory-qc__grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:20px; }
.factory-qc__item { padding:20px; background:var(--white); border-radius:var(--radius); border-left:3px solid var(--primary); }
.factory-qc__item strong { display:block; font-size:0.88rem; color:var(--dark); margin-bottom:6px; }
.factory-qc__item p { font-size:0.8rem; color:var(--text-muted); line-height:1.5; }
/* ═══════════════════════════════════════
   SUBSIDIARIES PAGE
   ═══════════════════════════════════════ */
.subsidiaries-intro { max-width:800px; margin-bottom:32px; }
.subsidiaries-intro p { font-size:0.92rem; color:var(--text-secondary); line-height:1.75; }
.subsidiaries-grid { display:grid; grid-template-columns:repeat(2, 1fr); gap:24px; margin-bottom:28px; }
.subsidiary-card { display:flex; gap:0; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); overflow:hidden; transition:var(--transition); cursor:pointer; }
.subsidiary-card:focus-visible { outline:2px solid var(--primary); outline-offset:2px; }
.subsidiary-card:hover { border-color:var(--primary); box-shadow:0 12px 32px rgba(0,0,0,0.1); transform:translateY(-3px); }
.subsidiary-card__logo { width:160px; flex-shrink:0; background:var(--bg-alt); border-right:1px solid var(--border-light); display:flex; align-items:center; justify-content:center; padding:20px; }
.subsidiary-card__logo-ph { width:100%; height:80px; border:2px dashed var(--border); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; font-family:var(--font-display); font-size:0.9rem; letter-spacing:2px; color:var(--text-dim); background:var(--white); }
.subsidiary-card__body { padding:22px 24px; flex:1; display:flex; flex-direction:column; justify-content:center; }
.subsidiary-card__badge { display:inline-block; padding:4px 12px; background:var(--primary-ultra-light); border-radius:100px; font-size:0.72rem; font-weight:600; color:var(--primary); margin-bottom:10px; }
.subsidiary-card__name { font-family:var(--font-body); font-size:1.15rem; font-weight:700; color:var(--dark); margin-bottom:6px; }
.subsidiary-card__activity { font-size:0.86rem; font-weight:500; color:var(--text-secondary); line-height:1.5; }
.subsidiary-card__desc { font-size:0.84rem; color:var(--text-muted); line-height:1.6; }
.subsidiaries-note { display:flex; align-items:flex-start; gap:12px; padding:18px 22px; background:var(--primary-ultra-light); border:1px solid var(--border); border-radius:var(--radius-lg); }
.subsidiaries-note svg { flex-shrink:0; margin-top:2px; }
.subsidiaries-note p { font-size:0.84rem; color:var(--text-secondary); line-height:1.6; margin:0; }
.group-benefits { display:grid; grid-template-columns:repeat(2, 1fr); gap:20px; }
.group-benefit { display:flex; align-items:flex-start; gap:16px; padding:22px; background:var(--white); border-radius:var(--radius-lg); border:1px solid var(--border-light); }
.group-benefit svg { flex-shrink:0; margin-top:2px; }
.group-benefit strong { display:block; font-size:0.94rem; color:var(--dark); margin-bottom:4px; }
.group-benefit p { font-size:0.82rem; color:var(--text-muted); line-height:1.55; margin:0; }
/* ═══ RESPONSIVE ═══ */
@media (max-width:1024px) {
  .leadership-values { grid-template-columns:1fr; gap:32px; }
  .factory-intro { grid-template-columns:1fr; gap:32px; }
  .factory-features { grid-template-columns:repeat(2, 1fr); }
  .factory-qc__grid { grid-template-columns:repeat(2, 1fr); }
  .subsidiaries-grid { grid-template-columns:1fr; }
  .subsidiary-card__logo { width:130px; }
  .group-benefits { grid-template-columns:1fr; }
}
@media (max-width:768px) {
  .factory-features { grid-template-columns:1fr; }
  .factory-gallery { grid-template-columns:1fr 1fr; }
  .factory-qc__grid { grid-template-columns:1fr; }
  .section__title--spaced { margin-top:40px; }
  .subsidiary-card { flex-direction:column; }
  .subsidiary-card__logo { width:100%; border-right:none; border-bottom:1px solid var(--border-light); }
  .subsidiary-card__logo-ph { height:64px; }
}

/* ═══════════════════════════════════════
   VACANCIES PAGE
   ═══════════════════════════════════════ */

/* Intro */
.vac-intro { display:grid; grid-template-columns:1.15fr 1fr; gap:48px; align-items:center; }
.vac-intro__text .section__title { margin-bottom:20px; }
.vac-intro__text p { font-size:0.9rem; color:var(--text-secondary); line-height:1.8; margin-bottom:14px; }
.vac-intro__media img { width:100%; max-height:420px; object-fit:cover; border-radius:var(--radius-lg); box-shadow:var(--shadow-lg); }
.vac-stats { display:grid; grid-template-columns:repeat(3, 1fr); gap:14px; margin-top:28px; }
.vac-stat { padding:16px 18px; background:var(--bg-alt); border-radius:var(--radius); border-left:3px solid var(--primary); }
.vac-stat__num { display:block; font-family:var(--font-display); font-size:1.7rem; color:var(--dark); line-height:1; letter-spacing:0.5px; margin-bottom:6px; font-weight:700;}
.vac-stat__label { font-size:0.76rem; color:var(--text-muted); line-height:1.4; }

/* Perks */
.vac-perks { display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; }
.vac-perk { padding:26px 24px; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); transition:var(--transition); display:grid; grid-template-columns:auto 1fr; column-gap:16px; align-items:center; align-content:start; }
.vac-perk:hover { border-color:var(--primary); box-shadow:var(--shadow); transform:translateY(-2px); }
.vac-perk__icon { width:48px; height:48px; background:var(--primary-ultra-light); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; }
.vac-perk__title { font-family:var(--font-body); font-size:0.98rem; font-weight:700; color:var(--dark); }
.vac-perk__text { grid-column:1 / -1; margin-top:14px; font-size:0.83rem; color:var(--text-muted); line-height:1.65; }

/* Filter */
.vac-filter { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:24px; }
.vac-filter__btn { display:inline-flex; align-items:center; gap:8px; padding:9px 18px; background:var(--white); border:1px solid var(--border); border-radius:100px; font-family:var(--font-body); font-size:0.84rem; font-weight:500; color:var(--text-secondary); cursor:pointer; transition:var(--transition); }
.vac-filter__btn span { font-size:0.72rem; font-weight:700; color:var(--text-dim); }
.vac-filter__btn:hover { border-color:var(--primary); color:var(--primary); }
.vac-filter__btn.active { background:var(--dark); border-color:var(--dark); color:#fff; }
.vac-filter__btn.active span { color:rgba(255,255,255,0.5); }

/* Vacancy accordion */
.vac-empty { text-align:center; padding:60px 20px; }
.vac-empty p { color:var(--text-dim); font-size:0.92rem; }

/* Hiring steps */
.vac-steps { display:grid; grid-template-columns:repeat(4, 1fr); gap:20px; }
.vac-step { padding:26px 24px; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); display:grid; grid-template-columns:auto 1fr; column-gap:16px; align-items:center; align-content:start; }
.vac-step__num { display:block; font-family:var(--font-display); font-size:1.9rem; line-height:1; letter-spacing:0.5px; color:var(--primary); opacity:0.4; font-weight:700;}
.vac-step__title { font-family:var(--font-body); font-size:0.96rem; font-weight:700; color:var(--dark); }
.vac-step__text { grid-column:1 / -1; margin-top:14px; font-size:0.82rem; color:var(--text-muted); line-height:1.65; }

/* Apply form */
.form-field--file input[type="file"] { padding:9px 12px; font-size:0.82rem; color:var(--text-secondary); cursor:pointer; }
.form-field--file input[type="file"]::file-selector-button { margin-right:12px; padding:7px 14px; border:1px solid var(--border); border-radius:6px; background:var(--white); font-family:inherit; font-size:0.8rem; font-weight:600; color:var(--text-secondary); cursor:pointer; transition:var(--transition); }
.form-field--file input[type="file"]::file-selector-button:hover { border-color:var(--primary); color:var(--primary); }
.form-field__hint { font-size:0.72rem; color:var(--text-dim); margin-top:6px; line-height:1.45; }
.apply-form input[readonly] { background:var(--primary-ultra-light); border-color:var(--primary-light); color:var(--dark); font-weight:600; cursor:default; }
.apply-form input[readonly]:focus { border-color:var(--primary-light); box-shadow:none; }

/* ═══ RESPONSIVE ═══ */
@media (max-width:1024px) {
  .vac-intro { grid-template-columns:1fr; gap:32px; }
  .vac-perks { grid-template-columns:repeat(2, 1fr); }
  .vac-steps { grid-template-columns:repeat(2, 1fr); }
}
@media (max-width:768px) {
  .vac-intro__media img { max-height:260px; }
  .vac-stats { grid-template-columns:1fr; }
  .vac-perks { grid-template-columns:1fr; }
  .vac-steps { grid-template-columns:1fr; }
  .vac-filter__btn { padding:7px 14px; font-size:0.78rem; }
}

/* ═══ VACANCIES: список + панель ═══ */
.vac-board { display:grid; grid-template-columns:340px 1fr; gap:24px; align-items:start; }
.vac-board__list { display:flex; flex-direction:column; gap:8px; }
.vac-board__item { position:relative; display:flex; flex-direction:column; gap:6px; width:100%; padding:14px 34px 14px 16px; background:var(--white); border:1px solid var(--border-light); border-left:3px solid transparent; border-radius:var(--radius); text-align:left; font-family:inherit; cursor:pointer; transition:var(--transition); }
.vac-board__item::after { content:''; position:absolute; top:50%; right:14px; width:16px; height:16px; margin-top:-8px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23A0AEC0' stroke-width='2.5'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") no-repeat center; transition:var(--transition); }
.vac-board__item:hover::after { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23F47920' stroke-width='2.5'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E"); transform:translateX(2px); }
.vac-board__item.is-active::after { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23F47920' stroke-width='2.5'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E"); }
.vac-board__item:hover { border-color:var(--border); background:var(--bg-alt); }
.vac-board__item:focus-visible { outline:2px solid var(--primary); outline-offset:2px; }
.vac-board__item.is-active { border-color:var(--primary); border-left-color:var(--primary); background:var(--primary-ultra-light); }
.vac-board__item[data-hidden="true"] { display:none; }
.vac-board__item-title { display:flex; align-items:center; gap:8px; flex-wrap:wrap; font-size:0.88rem; font-weight:600; color:var(--dark); line-height:1.4; }
.vac-board__item-badge { padding:2px 8px; border-radius:100px; font-size:0.6rem; font-weight:700; text-transform:uppercase; letter-spacing:0.5px; background:var(--accent-light); color:var(--accent); white-space:nowrap; }
.vac-board__item-badge--urgent { background:rgba(244,121,32,0.12); color:var(--primary); }
.vac-board__item-meta { font-size:0.74rem; color:var(--text-muted); }
.vac-board__item-salary { font-size:0.8rem; font-weight:700; color:var(--primary); }

.vac-board__panels { position:sticky; top:155px; }
.vac-board__panel { display:none; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); padding:28px 30px; }
.vac-board__panel.is-active { display:block; }
.vac-board__panel-top { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding-bottom:18px; border-bottom:1px solid var(--border-light); margin-bottom:20px; }
.vac-board__panel-title { font-family:var(--font-body); font-size:1.25rem; font-weight:700; color:var(--dark); line-height:1.35; margin-bottom:8px; }
.vac-board__panel-tags { display:flex; gap:6px; flex-wrap:wrap; }
.vac-board__panel-tag { padding:3px 10px; background:var(--bg-alt); border-radius:4px; font-size:0.72rem; font-weight:500; color:var(--text-muted); }
.vac-board__panel-salary { font-family:var(--font-display); font-size:1.6rem; letter-spacing:0.5px; color:var(--primary); line-height:1; white-space:nowrap; font-weight:700;}
.vac-board__panel-lead { font-size:0.88rem; color:var(--text-secondary); line-height:1.75; margin-bottom:22px; }
.vac-board__panel-cols { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin-bottom:22px; }
.vac-board__col-title { font-family:var(--font-body); font-size:0.76rem; font-weight:700; text-transform:uppercase; letter-spacing:1px; color:var(--primary); margin-bottom:10px; }
.vac-board__list-ul { list-style:none; display:flex; flex-direction:column; gap:8px; }
.vac-board__list-ul li { position:relative; padding-left:18px; font-size:0.84rem; color:var(--text-secondary); line-height:1.55; }
.vac-board__list-ul li::before { content:''; position:absolute; left:2px; top:8px; width:5px; height:5px; border-radius:50%; background:var(--primary); opacity:0.5; }
.vac-board__facts { display:grid; grid-template-columns:repeat(4, 1fr); gap:1px; background:var(--border-light); border-radius:var(--radius); overflow:hidden; margin-bottom:22px; }
.vac-board__fact { background:var(--bg-alt); padding:12px 14px; }
.vac-board__fact span:first-child { display:block; font-size:0.68rem; text-transform:uppercase; letter-spacing:0.5px; color:var(--text-dim); margin-bottom:3px; }
.vac-board__fact span:last-child { font-size:0.82rem; font-weight:600; color:var(--dark); }
.vac-board__panel-actions { display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.vac-board__posted { font-size:0.76rem; color:var(--text-dim); }

@media (max-width:1024px) {
  /* список вертикальный, панель выбранной вакансии раскрывается прямо под ней */
  .vac-board { grid-template-columns:1fr; gap:8px; }
  .vac-board__panels:empty { display:none; }
  .vac-board__panels { position:static; }
  .vac-board__item.is-active { border-radius:var(--radius) var(--radius) 0 0; }
  .vac-board__item.is-active::after { transform:rotate(90deg); }
  .vac-board__panel { border-top:none; border-radius:0 0 var(--radius) var(--radius); margin-bottom:8px; }
  .vac-board__facts { grid-template-columns:repeat(2, 1fr); }
}
@media (max-width:768px) {
  .vac-board__panel { padding:20px 18px; }
  .vac-board__panel-top { flex-direction:column; gap:12px; }
  .vac-board__panel-cols { grid-template-columns:1fr; gap:20px; }
  .vac-board__facts { grid-template-columns:1fr; }
  .vac-board__panel-actions { flex-direction:column; align-items:stretch; gap:12px; }
  .vac-board__panel-actions .btn { justify-content:center; }
}

/* ═══════════════════════════════════════
   MEDIA PAGE
   ═══════════════════════════════════════ */

/* Tabs */
.media-tabs { display:flex; gap:8px; border-bottom:1px solid var(--border-light); margin-bottom:32px; }
.media-tabs__btn { display:inline-flex; align-items:center; gap:9px; padding:14px 24px; background:none; border:none; border-bottom:2px solid transparent; margin-bottom:-1px; font-family:var(--font-body); font-size:0.95rem; font-weight:600; color:var(--text-muted); cursor:pointer; transition:var(--transition); }
.media-tabs__btn svg { flex-shrink:0; }
.media-tabs__btn span { padding:2px 8px; background:var(--bg-alt); border-radius:100px; font-size:0.72rem; font-weight:700; color:var(--text-dim); }
.media-tabs__btn:hover { color:var(--primary); }
.media-tabs__btn.active { color:var(--dark); border-bottom-color:var(--primary); }
.media-tabs__btn.active span { background:var(--primary-light); color:var(--primary); }
.media-panel { display:none; }
.media-panel.is-active { display:block; }

/* Photo grid */
.media-grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:16px; }
.media-photo { position:relative; margin:0; border-radius:var(--radius-lg); overflow:hidden; cursor:pointer; background:var(--bg-alt); transition:var(--transition); }
.media-photo[data-hidden="true"] { display:none; }
.media-photo:hover { box-shadow:0 12px 32px rgba(0,0,0,0.14); transform:translateY(-3px); }
.media-photo:focus-visible { outline:2px solid var(--primary); outline-offset:3px; }
.media-photo img { width:100%; height:220px; object-fit:cover; display:block; transition:transform 0.5s ease; }
.media-photo:hover img { transform:scale(1.06); }
.media-photo__caption { position:absolute; left:0; right:0; bottom:0; padding:32px 16px 14px; background:linear-gradient(to top, rgba(15,18,23,0.92) 0%, rgba(15,18,23,0.5) 55%, transparent 100%); }
.media-photo__cat { display:block; font-size:0.68rem; font-weight:700; text-transform:uppercase; letter-spacing:1px; color:var(--primary); margin-bottom:3px; }
.media-photo__title { display:block; font-size:0.84rem; font-weight:600; color:#fff; line-height:1.4; }
.media-photo__zoom { position:absolute; top:12px; right:12px; width:34px; height:34px; border-radius:50%; background:rgba(255,255,255,0.15); backdrop-filter:blur(6px); border:1px solid rgba(255,255,255,0.25); color:#fff; display:flex; align-items:center; justify-content:center; opacity:0; transform:scale(0.85); transition:var(--transition); }
.media-photo:hover .media-photo__zoom { opacity:1; transform:scale(1); }

/* Video grid */
.media-videos { display:grid; grid-template-columns:repeat(3, 1fr); gap:22px; }
.media-video { background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); overflow:hidden; cursor:pointer; transition:var(--transition); }
.media-video[data-hidden="true"] { display:none; }
.media-video:hover { border-color:var(--primary); box-shadow:0 12px 32px rgba(0,0,0,0.1); transform:translateY(-3px); }
.media-video:focus-visible { outline:2px solid var(--primary); outline-offset:3px; }
.media-video__thumb { position:relative; aspect-ratio:16/9; background:var(--dark); overflow:hidden; }
.media-video__thumb img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.5s ease; }
.media-video:hover .media-video__thumb img { transform:scale(1.05); }
.media-video__thumb::after { content:''; position:absolute; inset:0; background:rgba(15,18,23,0.28); transition:var(--transition); }
.media-video:hover .media-video__thumb::after { background:rgba(15,18,23,0.12); }
.media-video__play { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:58px; height:58px; border-radius:50%; background:var(--primary); color:#fff; display:flex; align-items:center; justify-content:center; z-index:2; box-shadow:0 8px 24px rgba(0,0,0,0.3); transition:var(--transition); }
.media-video:hover .media-video__play { transform:translate(-50%,-50%) scale(1.12); background:var(--primary-dark); }
.media-video__duration { position:absolute; right:10px; bottom:10px; z-index:2; padding:3px 9px; background:rgba(15,18,23,0.8); border-radius:4px; font-size:0.72rem; font-weight:600; color:#fff; }
.media-video__body { padding:16px 18px 18px; }
.media-video__title { font-family:var(--font-body); font-size:0.95rem; font-weight:700; color:var(--dark); line-height:1.45; margin-bottom:8px; }
.media-video__meta { display:flex; align-items:center; gap:10px; font-size:0.74rem; color:var(--text-dim); }
.media-video__cat { font-weight:600; color:var(--primary); }

/* Pagination */
.media-pager { display:flex; align-items:center; justify-content:center; gap:6px; margin-top:32px; }
.media-pager[hidden] { display:none; }
.media-pager__btn { width:38px; height:38px; flex-shrink:0; display:flex; align-items:center; justify-content:center; background:transparent; border:1px solid transparent; border-radius:var(--radius); color:var(--text-muted); cursor:pointer; transition:var(--transition); }
.media-pager__btn:hover:not(:disabled) { background:var(--primary-ultra-light); color:var(--primary); }
.media-pager__btn:disabled { opacity:0.3; cursor:default; }
.media-pager__pages { display:flex; align-items:center; gap:6px; }
.media-pager__page { min-width:38px; height:38px; flex-shrink:0; padding:0 10px; background:var(--white); border:1px solid var(--border); border-radius:var(--radius); font-family:var(--font-body); font-size:0.86rem; font-weight:600; color:var(--text-secondary); cursor:pointer; transition:var(--transition); }
.media-pager__page:hover { border-color:var(--primary); color:var(--primary); background:var(--primary-ultra-light); }
.media-pager__page.active { background:var(--primary); border-color:var(--primary); color:#fff; }
.media-pager__dots { min-width:24px; text-align:center; font-size:0.86rem; font-weight:600; color:var(--text-dim); user-select:none; }
.media-count { text-align:center; font-size:0.8rem; color:var(--text-dim); margin-top:12px; }

/* Video modal */
.video-modal__dialog { max-width:920px; width:100%; background:var(--dark); overflow:visible; }
.video-modal .modal__close { top:-38px; right:0; color:#fff; font-size:2.2rem; }
.video-modal .modal__close:hover { color:var(--primary); }
.video-modal__frame { position:relative; aspect-ratio:16/9; background:#000; border-radius:var(--radius-lg) var(--radius-lg) 0 0; overflow:hidden; }
.video-modal__frame iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.video-modal__stub { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; text-align:center; padding:24px; color:rgba(255,255,255,0.6); }
.video-modal__stub strong { font-size:1rem; color:#fff; font-weight:600; }
.video-modal__stub span { font-size:0.84rem; line-height:1.6; max-width:420px; }
.video-modal__caption { padding:18px 24px 22px; }
.video-modal__caption h3 { font-family:var(--font-body); font-size:1.05rem; font-weight:700; color:#fff; margin-bottom:6px; }
.video-modal__caption p { font-size:0.82rem; color:rgba(255,255,255,0.5); }

/* Media CTA */
.media-links { display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; }
.media-link { display:flex; align-items:center; gap:14px; padding:20px 22px; background:var(--white); border:1px solid var(--border-light); border-radius:var(--radius-lg); transition:var(--transition); }
.media-link:hover { border-color:var(--primary); box-shadow:var(--shadow); transform:translateY(-2px); }
.media-link__icon { width:44px; height:44px; border-radius:var(--radius); background:var(--primary-ultra-light); color:var(--primary); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.media-link strong { display:block; font-size:0.92rem; color:var(--dark); margin-bottom:2px; }
.media-link span { font-size:0.78rem; color:var(--text-muted); }

/* ═══ RESPONSIVE ═══ */
@media (max-width:1024px) {
  .media-grid { grid-template-columns:repeat(3, 1fr); }
  .media-videos { grid-template-columns:repeat(2, 1fr); }
  .media-links { grid-template-columns:1fr; }
}
@media (max-width:768px) {
  .media-grid { grid-template-columns:repeat(2, 1fr); gap:12px; }
  .media-photo img { height:160px; }
  .media-photo__caption { padding:24px 12px 10px; }
  .media-photo__title { font-size:0.78rem; }
  .media-videos { grid-template-columns:1fr; }
  .media-tabs { gap:4px; }
  .media-tabs__btn { padding:12px 14px; font-size:0.86rem; }
  .video-modal .modal__close { top:-34px; }
  .media-pager__page { min-width:34px; height:34px; font-size:0.8rem; }
  .media-pager__btn { width:34px; height:34px; }
}
@media (max-width:480px) {
  .media-grid { grid-template-columns:1fr; }
  .media-photo img { height:200px; }
}
