/* ===== EQUIPMENT ITEM PAGE ===== */

    /* --- Top hero section --- */
    .eq-hero {
      padding: 32px 0 48px;
    }
    .eq-hero__inner {
      display: grid;
      grid-template-columns: 480px 1fr;
      gap: 48px;
      align-items: start;
    }

    /* --- Gallery --- */
    .eq-gallery {}
    .eq-gallery__main {
      position: relative;
      border: 1px solid var(--border);
      border-radius: var(--radius);
      overflow: hidden;
      background: var(--gray-bg);
      aspect-ratio: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: zoom-in;
      margin-bottom: 12px;
    }
    .eq-gallery__main img {
      width: 100%;
      height: 100%;
      object-fit: contain;
      transition: transform .3s;
    }
    .eq-gallery__main:hover img { transform: scale(1.04); }
    .eq-gallery__main-svg {
      width: 120px;
      height: 120px;
    }
    .eq-gallery__zoom-hint {
      position: absolute;
      bottom: 12px;
      right: 12px;
      background: rgba(0,0,0,.35);
      color: #fff;
      font-size: 11px;
      padding: 4px 10px;
      border-radius: 50px;
      pointer-events: none;
    }
    .eq-gallery__thumbs {
      display: flex;
      gap: 10px;
      overflow-x: auto;
      scrollbar-width: none;
    }
    .eq-gallery__thumbs::-webkit-scrollbar { display: none; }
    .eq-gallery__thumb {
      flex-shrink: 0;
      width: 76px;
      height: 76px;
      border: 2px solid var(--border);
      border-radius: 10px;
      overflow: hidden;
      background: var(--gray-bg);
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      transition: border-color .2s;
    }
    .eq-gallery__thumb--active { border-color: var(--blue); }
    .eq-gallery__thumb:hover { border-color: var(--blue); }
    .eq-gallery__thumb svg { width: 38px; height: 38px; }

    /* --- Info block --- */
    .eq-info {}
    .eq-info__sku {
      font-size: 12px;
      color: var(--text-light);
      margin-bottom: 8px;
    }
    .eq-info__sku strong { color: var(--text-muted); font-weight: 600; }
    .eq-info__title {
      font-size: 28px;
      font-weight: 900;
      color: var(--text);
      line-height: 1.15;
      margin-bottom: 10px;
    }
    .eq-info__price {
      font-size: 26px;
      font-weight: 900;
      color: var(--blue);
      line-height: 1.2;
      margin: 12px 0 4px;
    }
    .eq-info__brand {
      font-size: 14px;
      color: var(--text-muted);
      margin-bottom: 24px;
    }
    .eq-info__brand strong { color: var(--text); font-weight: 700; }

    /* Key params table */
    .eq-params {
      background: var(--gray-bg);
      border-radius: var(--radius);
      overflow: hidden;
      margin-bottom: 24px;
    }
    .eq-params__title {
      padding: 12px 18px;
      font-size: 12px;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: .5px;
      color: var(--text-muted);
      border-bottom: 1px solid var(--border);
    }
    .eq-params table {
      width: 100%;
      border-collapse: collapse;
    }
    .eq-params tr:not(:last-child) td { border-bottom: 1px solid var(--border); }
    .eq-params td {
      padding: 11px 18px;
      font-size: 13.5px;
      vertical-align: middle;
      background: var(--white);
    }
    .eq-params tr:nth-child(even) td { background: #fafbfd; }
    .eq-params td:first-child {
      color: var(--text-muted);
      width: 55%;
      font-weight: 500;
    }
    .eq-params td:last-child {
      color: var(--text);
      font-weight: 700;
    }

    /* CTA buttons */
    .eq-cta {
      display: flex;
      flex-direction: column;
      gap: 10px;
      margin-bottom: 20px;
    }
    .eq-cta__main {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      background: var(--blue);
      color: var(--white);
      border: none;
      border-radius: 12px;
      padding: 16px 28px;
      font-size: 16px;
      font-weight: 700;
      cursor: pointer;
      transition: background .2s;
      min-height: 54px;
    }
    .eq-cta__main:hover { background: var(--blue-dark); }
    .eq-cta__secondary {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      background: var(--white);
      color: var(--text);
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 13px 28px;
      font-size: 14px;
      font-weight: 600;
      cursor: pointer;
      transition: border-color .2s, color .2s;
      text-decoration: none;
      min-height: 48px;
    }
    .eq-cta__secondary:hover { border-color: var(--blue); color: var(--blue); }
    .eq-cta__hint {
      font-size: 12px;
      color: #6b7a8d;
      margin-top: 6px;
    }

    /* Trust block */
    .eq-trust {
      display: flex;
      flex-direction: column;
      gap: 8px;
      margin-top: 4px;
    }
    .eq-trust__item {
      display: flex;
      align-items: flex-start;
      gap: 10px;
      font-size: 13px;
      color: var(--text-muted);
      line-height: 1.45;
    }
    .eq-trust__item::before {
      content: '';
      width: 18px;
      height: 18px;
      min-width: 18px;
      background: rgba(27,147,212,.12) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 24 24' fill='none' stroke='%231B93D4' stroke-width='3'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") no-repeat center;
      border-radius: 50%;
      margin-top: 1px;
    }

    /* --- Tabs section --- */
    .eq-tabs-section {
      background: var(--white);
      border-top: 1px solid var(--border);
      padding-top: 0;
    }
    .eq-tabs-nav {
      display: flex;
      border-bottom: 1px solid var(--border);
      overflow-x: auto;
      scrollbar-width: none;
    }
    .eq-tabs-nav::-webkit-scrollbar { display: none; }
    .eq-tab-btn {
      flex-shrink: 0;
      padding: 16px 28px;
      font-size: 14px;
      font-weight: 600;
      color: var(--text-muted);
      border: none;
      border-bottom: 3px solid transparent;
      background: none;
      cursor: pointer;
      transition: color .2s, border-color .2s;
      white-space: nowrap;
    }
    .eq-tab-btn:hover { color: var(--blue); }
    .eq-tab-btn--active {
      color: var(--blue);
      border-bottom-color: var(--blue);
    }
    .eq-tab-panel {
      display: none;
      padding: 40px 0;
    }
    .eq-tab-panel--active { display: block; }

    /* Tab: Description */
    .eq-desc { max-width: 820px; }
    .eq-desc p { font-size: 15px; color: var(--text-muted); line-height: 1.75; margin-bottom: 18px; }
    .eq-desc p:last-child { margin-bottom: 0; }
    .eq-desc h2 { font-size: 20px; font-weight: 800; color: var(--text); margin: 32px 0 14px; }
    .eq-desc ul { list-style: disc; padding-left: 20px; display: flex; flex-direction: column; gap: 8px; }
    .eq-desc ul li { font-size: 15px; color: var(--text-muted); line-height: 1.65; }

    /* Tab: Specs */
    .eq-specs {}
    .eq-specs-group { margin-bottom: 32px; }
    .eq-specs-group:last-child { margin-bottom: 0; }
    .eq-specs-group__title {
      font-size: 13px;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: .6px;
      color: var(--text-light);
      margin-bottom: 12px;
      padding-bottom: 8px;
      border-bottom: 2px solid var(--border);
    }
    .eq-specs-group caption {
      caption-side: top;
      text-align: left;
      font-size: 13px;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: .6px;
      color: var(--text-light);
      padding-bottom: 8px;
    }
    .eq-specs table {
      width: 100%;
      border-collapse: collapse;
      max-width: 700px;
    }
    .eq-specs tr { border-bottom: 1px solid var(--border); }
    .eq-specs tr:last-child { border-bottom: none; }
    .eq-specs td {
      padding: 10px 0;
      font-size: 14px;
      vertical-align: top;
    }
    .eq-specs td:first-child { color: var(--text-muted); width: 55%; }
    .eq-specs td:last-child { color: var(--text); font-weight: 600; }

    /* Tab: Docs */
    .eq-docs-list { display: flex; flex-direction: column; gap: 12px; max-width: 600px; }
    .eq-doc-row {
      display: flex;
      align-items: center;
      gap: 16px;
      background: var(--gray-bg);
      border-radius: var(--radius);
      padding: 16px 20px;
      transition: background .2s;
    }
    .eq-doc-row:hover { background: #e8f4fd; }
    .eq-doc-icon {
      width: 44px;
      height: 44px;
      border-radius: 10px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 20px;
      flex-shrink: 0;
    }
    .eq-doc-icon--pdf { background: #fde8e8; }
    .eq-doc-icon--dwg { background: #e8f4fd; }
    .eq-doc-info { flex: 1; }
    .eq-doc-name { font-size: 14px; font-weight: 700; color: var(--text); margin-bottom: 3px; }
    .eq-doc-meta { font-size: 12px; color: var(--text-light); }
    .eq-doc-download {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-size: 13px;
      font-weight: 600;
      color: var(--blue);
      text-decoration: none;
      flex-shrink: 0;
    }
    .eq-doc-download:hover { text-decoration: underline; }

    /* Tab: Application */
    .eq-apply {}
    .eq-apply__desc { font-size: 15px; color: var(--text-muted); line-height: 1.75; margin-bottom: 32px; max-width: 760px; }
    .eq-apply-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 14px;
    }
    .eq-apply-card {
      background: var(--gray-bg);
      border-radius: var(--radius);
      padding: 24px 20px;
      text-align: center;
    }
    .eq-apply-card__icon { font-size: 32px; margin-bottom: 12px; display: block; }
    .eq-apply-card__title { font-size: 14px; font-weight: 700; color: var(--text); line-height: 1.4; }

    /* --- Related equipment --- */
    .eq-related {
      padding: 48px 0;
      background: var(--gray-bg);
    }
    .eq-related__title {
      font-size: 24px;
      font-weight: 800;
      color: var(--text);
      margin-bottom: 24px;
    }
    .eq-related__scroll {
      display: flex;
      gap: 16px;
      overflow-x: auto;
      padding-bottom: 8px;
      scrollbar-width: thin;
      scrollbar-color: var(--border) transparent;
    }
    .eq-related__scroll::-webkit-scrollbar { height: 4px; }
    .eq-related__scroll::-webkit-scrollbar-track { background: transparent; }
    .eq-related__scroll::-webkit-scrollbar-thumb { background: var(--border); border-radius: 2px; }
    .eq-rel-card {
      flex-shrink: 0;
      width: 220px;
      background: var(--white);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      overflow: hidden;
      transition: box-shadow .2s, transform .2s;
    }
    .eq-rel-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,.09); transform: translateY(-2px); }
    .eq-rel-card__img {
      height: 140px;
      background: var(--gray-bg2);
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .eq-rel-card__img svg { width: 52px; height: 52px; opacity: .7; }
    .eq-rel-card__body { padding: 14px; }
    .eq-rel-card__sku { font-size: 11px; color: var(--text-light); margin-bottom: 5px; }
    .eq-rel-card__title {
      font-size: 13px;
      font-weight: 700;
      color: var(--text);
      line-height: 1.4;
      margin-bottom: 10px;
      display: block;
    }
    .eq-rel-card__title:hover { color: var(--blue); }
    .eq-rel-card__param { font-size: 12px; color: var(--text-muted); margin-bottom: 4px; }
    .eq-rel-card__param strong { color: var(--text); }
    .eq-rel-card__btn {
      display: block;
      margin-top: 12px;
      text-align: center;
      padding: 8px;
      border: 1px solid var(--border);
      border-radius: 8px;
      font-size: 12px;
      font-weight: 600;
      color: var(--text);
      text-decoration: none;
      transition: border-color .2s, color .2s;
    }
    .eq-rel-card__btn:hover { border-color: var(--blue); color: var(--blue); }

    /* --- Final CTA block --- */
    .eq-cta-bottom {
      background: var(--navy);
      padding: 60px 0;
    }
    .eq-cta-bottom__inner {
      max-width: 660px;
      margin: 0 auto;
      text-align: center;
    }
    .eq-cta-bottom__title {
      font-size: 28px;
      font-weight: 900;
      color: var(--white);
      margin-bottom: 12px;
      line-height: 1.25;
    }
    .eq-cta-bottom__text {
      font-size: 15px;
      color: rgba(255,255,255,.6);
      margin-bottom: 28px;
      line-height: 1.6;
    }
    .eq-cta-bottom__btns {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .eq-cta-bottom__phone {
      font-size: 18px;
      font-weight: 800;
      color: var(--white);
      text-decoration: none;
    }
    .eq-cta-bottom__phone:hover { color: var(--blue); }
    .eq-cta-bottom__sep {
      color: rgba(255,255,255,.3);
    }

    /* --- Lightbox --- */
    .lb-overlay {
      position: fixed;
      inset: 0;
      background: rgba(0,0,0,.88);
      z-index: 400;
      display: flex;
      align-items: center;
      justify-content: center;
      opacity: 0;
      pointer-events: none;
      transition: opacity .25s;
    }
    .lb-overlay--open { opacity: 1; pointer-events: auto; }
    .lb-overlay__img {
      max-width: 90vw;
      max-height: 90vh;
      object-fit: contain;
      border-radius: 8px;
    }
    .lb-overlay__svg {
      width: 320px;
      height: 320px;
    }
    .lb-close {
      position: absolute;
      top: 20px;
      right: 24px;
      background: rgba(255,255,255,.15);
      border: none;
      border-radius: 50%;
      width: 44px;
      height: 44px;
      color: #fff;
      font-size: 22px;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .lb-close:hover { background: rgba(255,255,255,.25); }

    /* --- Mobile sticky CTA --- */
    .sticky-cta {
      display: none;
      position: fixed;
      bottom: 0;
      left: 0;
      right: 0;
      background: var(--white);
      border-top: 1px solid var(--border);
      padding: 12px 16px;
      z-index: 100;
      box-shadow: 0 -4px 20px rgba(0,0,0,.1);
    }
    .sticky-cta__btn {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      padding: 16px;
      background: var(--blue);
      color: var(--white);
      border: none;
      border-radius: 12px;
      font-size: 16px;
      font-weight: 700;
      cursor: pointer;
      transition: background .2s;
    }
    .sticky-cta__btn:hover { background: var(--blue-dark); }

    /* --- Modal (shared) --- */
    .modal-overlay {
      position: fixed;
      inset: 0;
      background: rgba(0,0,0,.55);
      z-index: 300;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 16px;
      opacity: 0;
      pointer-events: none;
      transition: opacity .25s;
    }
    .modal-overlay--open { opacity: 1; pointer-events: auto; }
    .modal {
      background: var(--white);
      border-radius: 20px;
      width: 100%;
      max-width: 520px;
      max-height: 90vh;
      overflow-y: auto;
      transform: translateY(16px) scale(.97);
      transition: transform .25s;
    }
    .modal-overlay--open .modal { transform: translateY(0) scale(1); }
    .modal__header {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      padding: 24px 28px 0;
      gap: 12px;
    }
    .modal__title { font-size: 20px; font-weight: 800; color: var(--text); line-height: 1.3; }
    .modal__product { font-size: 13px; color: var(--blue); font-weight: 600; margin-top: 4px; }
    .modal__close {
      background: var(--gray-bg);
      border: none;
      border-radius: 50%;
      width: 36px;
      height: 36px;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      flex-shrink: 0;
      font-size: 18px;
      color: var(--text-muted);
      transition: background .2s;
    }
    .modal__close:hover { background: var(--border); }
    .modal__body { padding: 20px 28px 28px; }
    .modal__divider { height: 1px; background: var(--border); margin: 16px 0 20px; }
    .mf-group { margin-bottom: 16px; }
    .mf-group label { display: block; font-size: 12px; font-weight: 700; color: var(--text-muted); text-transform: uppercase; letter-spacing: .4px; margin-bottom: 7px; }
    .mf-group input,
    .mf-group textarea {
      width: 100%;
      border: 1px solid var(--border);
      border-radius: 10px;
      padding: 12px 14px;
      font-size: 15px;
      font-family: inherit;
      color: var(--text);
      outline: none;
      transition: border-color .2s;
    }
    .mf-group input:focus,
    .mf-group textarea:focus { border-color: var(--blue); }
    .mf-group input::placeholder,
    .mf-group textarea::placeholder { color: #bbb; }
    .mf-group textarea { resize: none; height: 88px; }
    .mf-group--error input,
    .mf-group--error textarea { border-color: var(--red); }
    .mf-error-msg { display: none; font-size: 12px; color: var(--red); margin-top: 5px; }
    .mf-group--error .mf-error-msg { display: block; }
    .mf-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
    .mf-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-top: 20px; }
    .mf-agree { font-size: 12px; color: var(--text-light); line-height: 1.5; max-width: 280px; }
    .mf-agree a { color: var(--blue); text-decoration: underline; }
    .mf-submit { background: var(--red); color: var(--white); border: none; border-radius: 10px; padding: 14px 32px; font-size: 15px; font-weight: 700; cursor: pointer; transition: background .2s; min-height: 50px; }
    .mf-submit:hover { background: var(--red-dark); }
    .modal__success { display: none; text-align: center; padding: 40px 28px; }
    .modal__success-icon { width: 64px; height: 64px; background: #e6f9ee; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 20px; font-size: 28px; }
    .modal__success-title { font-size: 22px; font-weight: 800; color: var(--text); margin-bottom: 10px; }
    .modal__success-text { font-size: 15px; color: var(--text-muted); line-height: 1.6; margin-bottom: 24px; }
    .modal__success-close { display: inline-flex; align-items: center; justify-content: center; padding: 12px 36px; background: var(--blue); color: var(--white); border: none; border-radius: 10px; font-size: 15px; font-weight: 700; cursor: pointer; transition: background .2s; }
    .modal__success-close:hover { background: var(--blue-dark); }

    /* --- Responsive --- */
    @media (max-width: 1100px) {
      .eq-hero__inner { grid-template-columns: 400px 1fr; gap: 32px; }
      .eq-apply-grid { grid-template-columns: repeat(2, 1fr); }
    }
    @media (max-width: 960px) {
      .eq-hero__inner { grid-template-columns: 1fr; }
      .eq-gallery__main { max-width: 480px; }
      .eq-apply-grid { grid-template-columns: repeat(3, 1fr); }
    }
    @media (max-width: 640px) {
      .eq-info__title { font-size: 22px; }
      .eq-tab-btn { padding: 14px 18px; font-size: 13px; }
      .eq-cta__main { font-size: 15px; }
      .eq-apply-grid { grid-template-columns: repeat(2, 1fr); }
      .eq-cta-bottom__title { font-size: 22px; }
      .sticky-cta { display: block; }
      .mf-row { grid-template-columns: 1fr; }
      .mf-footer { flex-direction: column-reverse; align-items: stretch; }
      .mf-agree { max-width: none; }
      /* add bottom padding so sticky CTA doesn't overlap content */
      body { padding-bottom: 74px; }
    }

/* ========================================================================== */
/* Premium B2B equipment page                                                 */
/* ========================================================================== */

.equipment-page {
  --equipment-navy: #061522;
  --equipment-navy-soft: #0b263a;
  --equipment-blue: #0875AD;
  --equipment-cyan: #67cef6;
  --equipment-ink: #12202b;
  --equipment-muted: #5f7180;
  --equipment-line: #dce5eb;
  --equipment-surface: #f3f7f9;
  color: var(--equipment-ink);
  background: #fff;
}

.equipment-hero {
  position: relative;
  overflow: hidden;
  padding: 46px 0 38px;
  color: #fff;
  background:
    radial-gradient(circle at 84% 9%, rgba(21, 152, 220, .28), transparent 33%),
    linear-gradient(135deg, var(--equipment-navy) 0%, #0a1e2d 57%, #0c3048 100%);
}
.equipment-hero::before {
  position: absolute;
  inset: 0;
  content: "";
  pointer-events: none;
  opacity: .1;
  background-image:
    linear-gradient(rgba(255,255,255,.23) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.23) 1px, transparent 1px);
  background-size: 54px 54px;
  mask-image: linear-gradient(90deg, transparent, #000 36%, #000);
}
.equipment-hero .container { position: relative; z-index: 1; }
.equipment-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(420px, .98fr);
  gap: clamp(46px, 6vw, 86px);
  align-items: center;
}
.equipment-hero__copy { min-width: 0; padding: 10px 0; }
.equipment-hero__eyebrow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  margin: 0 0 21px;
  color: var(--equipment-cyan);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .12em;
  line-height: 1.45;
  text-transform: uppercase;
}
.equipment-hero__eyebrow a { color: inherit; text-decoration: none; }
.equipment-hero__eyebrow a:hover { color: #fff; }
.equipment-hero__title {
  max-width: 760px;
  margin: 0;
  color: #fff;
  font-size: clamp(40px, 3.7vw, 56px);
  font-weight: 880;
  letter-spacing: -.047em;
  line-height: 1.02;
  overflow-wrap: anywhere;
  text-wrap: balance;
}
.equipment-hero__lead {
  max-width: 700px;
  margin: 20px 0 0;
  color: rgba(255,255,255,.75);
  font-size: clamp(17px, 1.35vw, 21px);
  line-height: 1.56;
}
.equipment-offer {
  display: grid;
  grid-template-columns: minmax(190px, auto) 1fr;
  gap: 24px;
  align-items: center;
  margin-top: 24px;
  padding: 16px 18px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 14px;
  background: rgba(255,255,255,.065);
  backdrop-filter: blur(8px);
}
.equipment-offer__label {
  display: block;
  margin-bottom: 5px;
  color: rgba(255,255,255,.5);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.equipment-offer strong {
  display: block;
  color: #fff;
  font-size: 24px;
  font-weight: 850;
  letter-spacing: -.025em;
  line-height: 1.15;
}
.equipment-offer p {
  margin: 0;
  padding-left: 22px;
  border-left: 1px solid rgba(255,255,255,.14);
  color: rgba(255,255,255,.62);
  font-size: 13px;
  line-height: 1.5;
}
.equipment-hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 18px;
}
.equipment-btn {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 13px 23px;
  border: 1px solid transparent;
  border-radius: 9px;
  font: inherit;
  font-size: 15px;
  font-weight: 780;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: transform .2s, background .2s, border-color .2s, color .2s;
}
.equipment-btn:hover { transform: translateY(-1px); }
.equipment-btn--primary {
  border-color: var(--equipment-blue);
  background: var(--equipment-blue);
  color: #fff;
  box-shadow: 0 13px 32px rgba(21,152,220,.24);
}
.equipment-btn--primary:hover { border-color: #0d85c0; background: #0d85c0; color: #fff; }
.equipment-btn--whatsapp {
  border-color: rgba(255,255,255,.2);
  background: rgba(255,255,255,.055);
  color: #fff;
}
.equipment-btn--whatsapp:hover { border-color: #5ed38b; color: #8be4ad; }
.equipment-hero__hint {
  max-width: 660px;
  margin: 13px 0 0;
  color: rgba(255,255,255,.5);
  font-size: 12px;
  line-height: 1.5;
}
.equipment-hero__media {
  min-width: 0;
  padding: 16px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 26px;
  background: rgba(255,255,255,.075);
  box-shadow: 0 32px 78px rgba(0,0,0,.27);
}
.equipment-hero__media .eq-gallery__main {
  min-height: 0;
  margin: 0;
  overflow: hidden;
  border: 0;
  border-radius: 17px;
  background: #eef3f5;
  aspect-ratio: var(--equipment-image-ratio, 1);
}
.equipment-hero__media .eq-gallery__main img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  mix-blend-mode: multiply;
}
.equipment-hero__media .eq-gallery__main picture { display: block; width: 100%; height: 100%; }
.equipment-hero__media .eq-gallery__main:hover img { transform: scale(1.025); }
.equipment-hero__media .eq-gallery__thumbs { margin-top: 12px; }
.equipment-hero__media .eq-gallery__thumb {
  border-color: rgba(255,255,255,.2);
  background: rgba(255,255,255,.92);
}
.equipment-hero__placeholder {
  display: flex;
  width: 100%;
  height: 100%;
  min-height: 430px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
  color: #657d8e;
  font-size: 13px;
  font-weight: 700;
  text-align: center;
}
.equipment-hero__placeholder svg { width: 112px; height: 112px; }
.equipment-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 42px 0 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 16px;
  background: rgba(4,18,29,.42);
  backdrop-filter: blur(8px);
}
.equipment-metric {
  min-width: 0;
  min-height: 104px;
  padding: 23px 24px;
  border-right: 1px solid rgba(255,255,255,.12);
}
.equipment-metric:last-child { border-right: 0; }
.equipment-metric dt {
  margin: 0 0 9px;
  color: rgba(255,255,255,.46);
  font-size: 10px;
  font-weight: 820;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.equipment-metric dd {
  margin: 0;
  color: #fff;
  font-size: 17px;
  font-weight: 780;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.equipment-data-note {
  margin: 0 0 18px;
  padding: 14px 16px;
  border: 1px solid #cfe4f1;
  border-radius: 12px;
  color: #395568;
  background: #f2f9fd;
  font-size: 13px;
  line-height: 1.55;
}
.equipment-data-note--hero {
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  gap: 8px 16px;
  align-items: start;
  margin: 18px 0 0;
  border-color: rgba(103,206,246,.28);
  color: rgba(255,255,255,.74);
  background: rgba(21,152,220,.11);
}
.equipment-data-note--hero strong { color: #8fdfff; font-size: 12px; letter-spacing: .02em; }
.equipment-data-note--hero span { min-width: 0; }

.equipment-detail { padding: 94px 0 100px; background: #fff; }
.equipment-detail__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: clamp(52px, 7vw, 96px);
  align-items: start;
}
.equipment-detail__main { min-width: 0; }
.equipment-section {
  margin-bottom: 74px;
  scroll-margin-top: 30px;
}
.equipment-section:last-child { margin-bottom: 0; }
.equipment-section__kicker {
  margin: 0 0 9px;
  color: #086B9D;
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .13em;
  line-height: 1.4;
  text-transform: uppercase;
}
.equipment-section h2,
.equipment-selection h2,
.eq-enhanced-block h2,
.eq-related__title {
  margin: 0 0 25px;
  color: var(--equipment-ink);
  font-size: clamp(28px, 3vw, 40px);
  font-weight: 850;
  letter-spacing: -.035em;
  line-height: 1.12;
  text-wrap: balance;
}
.equipment-prose { max-width: 820px; }
.equipment-prose p,
.equipment-prose li {
  color: var(--equipment-muted);
  font-size: 16px;
  line-height: 1.76;
}
.equipment-prose p { margin: 0 0 20px; }
.equipment-prose h2,
.equipment-prose h3 {
  margin: 36px 0 14px;
  color: var(--equipment-ink);
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -.02em;
  line-height: 1.3;
}
.equipment-prose ul,
.equipment-prose ol { display: grid; gap: 9px; margin: 0; padding-left: 22px; }
.equipment-applications {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.equipment-applications li {
  position: relative;
  min-height: 72px;
  padding: 20px 20px 18px 48px;
  border: 1px solid var(--equipment-line);
  border-radius: 12px;
  color: #334552;
  background: var(--equipment-surface);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.45;
}
.equipment-applications li::before {
  position: absolute;
  top: 22px;
  left: 20px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: rgba(21,152,220,.13);
  content: "";
}
.equipment-applications li::after {
  position: absolute;
  top: 26px;
  left: 25px;
  width: 6px;
  height: 3px;
  border-bottom: 2px solid var(--equipment-blue);
  border-left: 2px solid var(--equipment-blue);
  content: "";
  transform: rotate(-45deg);
}
.equipment-specs-wrap {
  overflow: hidden;
  border: 1px solid var(--equipment-line);
  border-radius: 14px;
}
.equipment-specs { width: 100%; border-collapse: collapse; }
.equipment-specs tr { border-bottom: 1px solid var(--equipment-line); }
.equipment-specs tr:last-child { border-bottom: 0; }
.equipment-specs th,
.equipment-specs td {
  padding: 16px 20px;
  text-align: left;
  vertical-align: top;
  font-size: 14px;
  line-height: 1.45;
}
.equipment-specs th {
  width: 48%;
  color: var(--equipment-muted);
  background: #f7fafb;
  font-weight: 600;
}
.equipment-specs td { color: var(--equipment-ink); background: #fff; font-weight: 750; }
.equipment-specs-source {
  margin: 14px 0 0;
  padding: 13px 15px;
  border: 1px solid #cfe4f1;
  border-radius: 12px;
  color: #395568;
  background: #f2f9fd;
  font-size: 13px;
  line-height: 1.55;
}
.equipment-documents { display: grid; gap: 12px; }
.equipment-document {
  display: grid;
  grid-template-columns: 48px minmax(0,1fr) auto;
  gap: 16px;
  align-items: center;
  min-height: 82px;
  padding: 16px 18px;
  border: 1px solid var(--equipment-line);
  border-radius: 13px;
  background: #fff;
}
.equipment-document__type {
  display: inline-flex;
  width: 48px;
  height: 48px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  color: #b33a3a;
  background: #fcecec;
  font-size: 11px;
  font-weight: 900;
}
.equipment-document strong,
.equipment-document span { display: block; }
.equipment-document strong { color: var(--equipment-ink); font-size: 14px; line-height: 1.35; }
.equipment-document div > span { margin-top: 4px; color: #86949e; font-size: 11px; }
.equipment-document a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  padding: 8px 13px;
  border-radius: 8px;
  color: #087fb8;
  background: #eaf7fd;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}
.equipment-document a:hover { color: #fff; background: var(--equipment-blue); }
.equipment-documents__empty {
  padding: 26px 27px;
  border: 1px solid var(--equipment-line);
  border-radius: 14px;
  background: var(--equipment-surface);
}
.equipment-documents__empty strong { color: var(--equipment-ink); font-size: 16px; }
.equipment-documents__empty p { max-width: 620px; margin: 8px 0 14px; color: var(--equipment-muted); font-size: 14px; line-height: 1.55; }
.equipment-text-button { min-height: 44px; padding: 0; border: 0; color: #08658f; background: none; font: inherit; font-size: 13px; font-weight: 800; cursor: pointer; }
.equipment-text-button:hover { color: var(--equipment-navy); }
.equipment-selection { position: sticky; top: 28px; }
.equipment-selection__card {
  padding: 29px 27px 26px;
  border-radius: 18px;
  color: #fff;
  background:
    radial-gradient(circle at 88% 4%, rgba(21,152,220,.27), transparent 30%),
    linear-gradient(145deg, #071724, #0b2a3f);
  box-shadow: 0 22px 54px rgba(8,31,47,.17);
}
.equipment-selection h2 { margin-bottom: 24px; color: #fff; font-size: 27px; }
.equipment-selection ol { display: grid; gap: 19px; margin: 0 0 25px; padding: 0; list-style: none; }
.equipment-selection li { display: grid; grid-template-columns: 34px minmax(0,1fr); gap: 12px; }
.equipment-selection li > span { color: var(--equipment-cyan); font-size: 10px; font-weight: 850; letter-spacing: .08em; }
.equipment-selection li strong { display: block; margin-bottom: 4px; color: #fff; font-size: 14px; line-height: 1.3; }
.equipment-selection li p { margin: 0; color: rgba(255,255,255,.58); font-size: 12px; line-height: 1.5; }
.equipment-selection .equipment-btn { width: 100%; }
.equipment-selection__wa {
  display: flex;
  min-height: 47px;
  align-items: center;
  justify-content: center;
  margin-top: 10px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 9px;
  color: #fff;
  font-size: 13px;
  font-weight: 750;
  text-decoration: none;
}
.equipment-selection__wa:hover { border-color: #5ed38b; color: #8be4ad; }
.equipment-selection__projects {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  margin-top: 8px;
  color: rgba(255,255,255,.62);
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}
.equipment-selection__projects:hover { color: var(--equipment-cyan); }
.equipment-trust { display: grid; gap: 10px; margin: 18px 0 0; padding: 0; list-style: none; }
.equipment-trust li {
  position: relative;
  display: block;
  grid-template-columns: none;
  padding-left: 26px;
  color: #667987;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.45;
}
.equipment-trust li::before {
  position: absolute;
  top: 1px;
  left: 0;
  display: flex;
  width: 17px;
  height: 17px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #0d87bf;
  background: #e7f5fb;
  content: "✓";
  font-size: 10px;
  font-weight: 900;
}

.eq-enhanced-block { padding: 78px 0; }
.eq-enhanced-block.section--gray { background: var(--equipment-surface); }
.eq-enhanced-block h2 { max-width: 760px; }
.eq-expert-quote {
  margin: 0;
  padding: 28px 30px;
  border-left: 4px solid var(--equipment-blue);
  border-radius: 0 14px 14px 0;
  background: var(--equipment-surface);
}
.eq-expert-quote p { color: var(--equipment-ink); font-size: 19px; line-height: 1.6; }
.eq-expert-quote cite { color: var(--equipment-muted); font-size: 13px; }
.equipment-page .mv-faq { max-width: 920px; }
.equipment-page .mv-faq-item { border-color: var(--equipment-line); }
.equipment-page .mv-faq-item__q { min-height: 58px; padding-block: 17px; color: var(--equipment-ink); font-size: 15px; }
.equipment-page .abl-cross-services__grid { gap: 14px; }
.equipment-page .abl-cross-card { min-height: 96px; border-color: var(--equipment-line); border-radius: 13px; }

.eq-related { padding: 80px 0; background: var(--equipment-surface); }
.eq-related__scroll { gap: 18px; }
.eq-rel-card { width: 248px; border-color: var(--equipment-line); border-radius: 14px; box-shadow: 0 10px 28px rgba(9,34,51,.05); }
.eq-rel-card__img { height: 168px; }
.eq-rel-card__img img { width: 100%; height: 100%; object-fit: contain; }
.eq-rel-card__body { padding: 17px; }
.eq-rel-card__title { min-height: 56px; font-size: 14px; }
.eq-rel-card__btn { min-height: 44px; display: flex; align-items: center; justify-content: center; }

.equipment-page .seo-text { max-width: 860px; }
.eq-cta-bottom {
  padding: 82px 0;
  background:
    radial-gradient(circle at 82% 0, rgba(21,152,220,.25), transparent 33%),
    linear-gradient(135deg, #061522, #0b2b41);
}
.eq-cta-bottom__inner { max-width: 780px; }
.eq-cta-bottom__title { margin-bottom: 15px; font-size: clamp(32px, 3.6vw, 48px); letter-spacing: -.04em; }
.eq-cta-bottom__text { max-width: 650px; margin: 0 auto 29px; color: rgba(255,255,255,.65); font-size: 16px; }
.eq-cta-bottom__btns { gap: 12px; }
.eq-cta-bottom__btns .eq-cta__main {
  min-height: 52px;
  padding: 13px 22px;
  border-radius: 9px;
  background: var(--equipment-blue);
  box-shadow: 0 13px 32px rgba(21,152,220,.24);
}
.eq-cta-bottom__phone,
.eq-cta-bottom__whatsapp {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 12px 18px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 9px;
  color: #fff;
  font-size: 14px;
  font-weight: 760;
  text-decoration: none;
}
.eq-cta-bottom__phone:hover { border-color: var(--equipment-cyan); color: var(--equipment-cyan); }
.eq-cta-bottom__whatsapp:hover { border-color: #5ed38b; color: #8be4ad; }

.equipment-page :where(a, button, [tabindex]):focus-visible {
  outline: 3px solid rgba(103,206,246,.82);
  outline-offset: 3px;
}

@media (max-width: 1100px) {
  .equipment-hero__grid { grid-template-columns: minmax(0,1fr) minmax(360px,.85fr); gap: 42px; }
  .equipment-hero__title { font-size: clamp(39px, 4.7vw, 54px); }
  .equipment-hero__media .eq-gallery__main { min-height: 0; }
  .equipment-hero__placeholder { min-height: 410px; }
  .equipment-detail__grid { grid-template-columns: minmax(0,1fr) 325px; gap: 44px; }
}

@media (max-width: 900px) {
  .equipment-hero { padding-top: 45px; }
  .equipment-hero__grid { grid-template-columns: 1fr; gap: 39px; }
  .equipment-hero__copy { padding: 0; }
  .equipment-hero__media { max-width: 680px; }
  .equipment-hero__media .eq-gallery__main { min-height: 0; }
  .equipment-hero__placeholder { min-height: 460px; }
  .equipment-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .equipment-metric { border-bottom: 1px solid rgba(255,255,255,.12); }
  .equipment-metric:nth-child(2n) { border-right: 0; }
  .equipment-metric:nth-last-child(-n+2) { border-bottom: 0; }
  .equipment-detail { padding-top: 76px; }
  .equipment-detail__grid { grid-template-columns: 1fr; gap: 70px; }
  .equipment-selection { position: static; }
  .equipment-selection__card { max-width: 680px; }
}

@media (max-width: 640px) {
  .equipment-hero { padding: 31px 0 28px; }
  .equipment-hero__grid { gap: 29px; }
  .equipment-hero__eyebrow { margin-bottom: 15px; font-size: 9px; }
  .equipment-hero__title { font-size: clamp(34px, 10.5vw, 45px); line-height: 1.04; }
  .equipment-hero__lead { margin-top: 18px; font-size: 16px; line-height: 1.54; }
  .equipment-offer { grid-template-columns: 1fr; gap: 11px; margin-top: 23px; padding: 16px; }
  .equipment-offer p { padding: 11px 0 0; border-top: 1px solid rgba(255,255,255,.14); border-left: 0; }
  .equipment-offer strong { font-size: 22px; }
  .equipment-hero__actions { align-items: stretch; flex-direction: column; }
  .equipment-btn { width: 100%; }
  .equipment-hero__hint { font-size: 11px; }
  .equipment-hero__media { padding: 9px; border-radius: 18px; }
  .equipment-hero__media .eq-gallery__main { min-height: 0; border-radius: 12px; }
  .equipment-hero__placeholder { min-height: 285px; }
  .equipment-metrics { margin-top: 27px; border-radius: 13px; }
  .equipment-metric { min-height: 88px; padding: 17px 15px; }
  .equipment-metric dt { margin-bottom: 6px; font-size: 8px; }
  .equipment-metric dd { font-size: 14px; }
  .equipment-data-note--hero { grid-template-columns: 1fr; gap: 5px; font-size: 12px; }
  .equipment-detail { padding: 65px 0 75px; }
  .equipment-section { margin-bottom: 58px; }
  .equipment-section h2,
  .equipment-selection h2,
  .eq-enhanced-block h2,
  .eq-related__title { margin-bottom: 20px; font-size: 29px; }
  .equipment-prose p,
  .equipment-prose li { font-size: 15px; }
  .equipment-applications { grid-template-columns: 1fr; }
  .equipment-applications li { min-height: 64px; padding-block: 17px; }
  .equipment-specs th,
  .equipment-specs td { padding: 13px 14px; font-size: 12.5px; }
  .equipment-specs th { width: 46%; }
  .equipment-document { grid-template-columns: 42px minmax(0,1fr); gap: 12px; padding: 14px; }
  .equipment-document__type { width: 42px; height: 42px; }
  .equipment-document a { grid-column: 1 / -1; }
  .equipment-selection__card { padding: 25px 21px 22px; border-radius: 15px; }
  .equipment-selection h2 { font-size: 27px; }
  .eq-enhanced-block,
  .eq-related { padding: 65px 0; }
  .eq-cta-bottom { padding: 68px 0 82px; }
  .eq-cta-bottom__btns { flex-direction: column; align-items: stretch; }
  .eq-cta-bottom__phone,
  .eq-cta-bottom__whatsapp { width: 100%; }
  .sticky-cta {
    display: flex;
    padding-bottom: max(12px, env(safe-area-inset-bottom));
    opacity: 0;
    pointer-events: none;
    transform: translateY(100%);
    transition: opacity .22s, transform .22s;
  }
  .sticky-cta--visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
}
