/* ============================================
   SERIES PAGE — Premium Redesign v1
   Futuristic, industrial, high-quality finish
   ============================================ */

/* ── KEYFRAMES ── */
@keyframes sp-fadeUp { from { opacity:0; transform:translateY(32px) } to { opacity:1; transform:translateY(0) } }
@keyframes sp-fadeIn { from { opacity:0 } to { opacity:1 } }
@keyframes sp-slideRight { from { opacity:0; transform:translateX(-24px) } to { opacity:1; transform:translateX(0) } }
@keyframes sp-pulse { 0%,100% { opacity:.4 } 50% { opacity:.8 } }
@keyframes sp-glow { 0%,100% { opacity:.3 } 50% { opacity:.6 } }
@keyframes sp-shimmer { 0% { background-position:-200% 0 } 100% { background-position:200% 0 } }
@keyframes sp-float { 0%,100% { transform:translateY(0) } 50% { transform:translateY(-8px) } }
@keyframes sp-scan { 0% { top:-2px } 100% { top:calc(100% + 2px) } }
@keyframes sp-countUp { from { opacity:0; transform:translateY(12px) } to { opacity:1; transform:translateY(0) } }

/* ═══════════════════════════════════════════════════════════════════ */
/* 1. SERIES HERO — Minimal, centered, elegant                        */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-hero {
  position:relative; background:#0b0b10; overflow:hidden;
  border-bottom:1px solid rgba(232,92,0,.12);
  isolation:isolate;
}
.sp-hero::before {
  content:''; position:absolute; inset:0; z-index:0;
  background:
    radial-gradient(ellipse 70% 60% at 50% 55%, rgba(232,92,0,.06) 0%, transparent 60%),
    radial-gradient(ellipse 40% 35% at 50% 20%, rgba(255,255,255,.012) 0%, transparent 50%),
    radial-gradient(ellipse 80% 50% at 50% 100%, rgba(232,92,0,.03) 0%, transparent 40%);
}
.sp-hero::after {
  content:''; position:absolute; bottom:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg, transparent 10%, rgba(232,92,0,.35) 30%, rgba(232,92,0,.55) 50%, rgba(232,92,0,.35) 70%, transparent 90%);
}

/* Machine silhouette — atmospheric, well-faded edges, slightly more visible */
.sp-hero-bg {
  position:absolute; inset:0; z-index:0;
  background-size:contain; background-repeat:no-repeat; background-position:center center;
  opacity:.22;
  mask-image:radial-gradient(ellipse 55% 60% at 50% 48%, rgba(0,0,0,.8) 0%, rgba(0,0,0,.5) 40%, rgba(0,0,0,.15) 60%, transparent 75%);
  -webkit-mask-image:radial-gradient(ellipse 55% 60% at 50% 48%, rgba(0,0,0,.8) 0%, rgba(0,0,0,.5) 40%, rgba(0,0,0,.15) 60%, transparent 75%);
  filter:grayscale(.15) contrast(1.05);
  pointer-events:none;
}
.sp-hero-noise {
  position:absolute; inset:0; z-index:0; pointer-events:none; opacity:.02;
  background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h1v1H0z' fill='%23fff' fill-opacity='.4'/%3E%3C/svg%3E");
  background-size:4px 4px;
}
.sp-hero-watermark {
  position:absolute; left:50%; top:50%; transform:translate(-50%,-52%);
  font-family:var(--font-h); font-size:clamp(300px,38vw,560px); font-weight:900;
  color:rgba(255,255,255,.018); line-height:1; pointer-events:none; z-index:0;
  letter-spacing:-.06em; user-select:none;
}

.sp-hero-inner {
  position:relative; z-index:2;
  max-width:1320px; margin:0 auto; padding:80px 28px 72px;
  display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center;
}

/* Left: Machine visual */
.sp-hero-visual {
  display:flex; align-items:center; justify-content:center;
  position:relative; min-height:360px;
  animation:sp-fadeIn 1s .2s cubic-bezier(.25,.46,.45,.94) both;
}
.sp-hero-visual img {
  max-height:420px; width:auto; max-width:100%; object-fit:contain;
  filter:drop-shadow(0 12px 32px rgba(0,0,0,.4));
  transition:transform .6s cubic-bezier(.25,.46,.45,.94), filter .4s ease;
}
/* V series BF-V13 render — dark studio bg.
   Production-safe edge blend using two linear-gradient overlays painted in
   the exact hero base colour rgb(11,11,16). No mask-image, no blend modes.
   ::before = horizontal fade (L + R)
   ::after  = vertical fade (T light, B strong)
   Overlapping corners get double-hit = rectangle disappears. */
.sp-hero-visual:has(img[src*="v-hero.png"]){
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.sp-hero-visual:has(img[src*="v-hero.png"]) img[src*="v-hero.png"]{
  max-height:480px;
  position:relative;
  z-index:1;
}
.sp-hero-visual:has(img[src*="v-hero.png"])::before{
  content:''; position:absolute; inset:0; pointer-events:none; z-index:2;
  background:linear-gradient(
    to right,
    rgb(11,11,16)         0%,
    rgba(11,11,16,.65)    8%,
    rgba(11,11,16,0)     22%,
    rgba(11,11,16,0)     62%,            /* narrower transparent middle */
    rgba(11,11,16,.5)    72%,            /* right fade starts earlier */
    rgba(11,11,16,.85)   85%,
    rgb(11,11,16)        94%,            /* fully opaque before the edge */
    rgb(11,11,16)       100%);
}
.sp-hero-visual:has(img[src*="v-hero.png"])::after{
  content:''; position:absolute; inset:0; pointer-events:none; z-index:3;
  background:linear-gradient(
    to bottom,
    rgb(11,11,16)         0%,
    rgba(11,11,16,.55)    7%,
    rgba(11,11,16,0)     20%,
    rgba(11,11,16,0)     70%,
    rgba(11,11,16,.75)   90%,
    rgb(11,11,16)       100%);
}
@media (max-width:768px){
  .sp-hero-visual:has(img[src*="v-hero.png"])::before{
    background:linear-gradient(
      to right,
      rgb(11,11,16)       0%,
      rgba(11,11,16,.5)   4%,
      transparent        15%,
      transparent        85%,
      rgba(11,11,16,.5) 96%,
      rgb(11,11,16)    100%);
  }
  .sp-hero-visual:has(img[src*="v-hero.png"])::after{
    background:linear-gradient(
      to bottom,
      rgb(11,11,16)        0%,
      rgba(11,11,16,.4)    4%,
      transparent         12%,
      transparent         75%,
      rgba(11,11,16,.65) 94%,
      rgb(11,11,16)     100%);
  }
}
.sp-hero-visual img.sp-hero-img-darkbg {
  filter:drop-shadow(0 12px 32px rgba(0,0,0,.4)) brightness(1.12);
}
.sp-hero-visual:hover img {
  transform:scale(1.03) translateY(-4px);
  filter:drop-shadow(0 18px 40px rgba(0,0,0,.45)) drop-shadow(0 0 20px rgba(232,92,0,.06));
}
.sp-hero-visual:hover img.sp-hero-img-darkbg {
  filter:drop-shadow(0 18px 40px rgba(0,0,0,.45)) drop-shadow(0 0 20px rgba(232,92,0,.06)) brightness(1.12);
}

/* Right: Text content */
.sp-hero-content {
  animation:sp-fadeUp .8s .1s cubic-bezier(.25,.46,.45,.94) both;
}

/* Kicker */
.sp-hero-kicker {
  display:inline-flex; align-items:center; gap:12px;
  font-family:var(--font-m); font-size:10.5px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--orange); margin-bottom:24px;
}
.sp-hero-kicker::before {
  content:''; display:block; width:28px; height:1px;
  background:linear-gradient(90deg, transparent, rgba(232,92,0,.5));
}
.sp-hero-kicker::after { display:none; }

/* Title */
.sp-hero h1 {
  font-family:var(--font-h); font-size:clamp(32px,4.5vw,52px); font-weight:800;
  color:#fff; line-height:1.06; letter-spacing:-.035em;
  margin-bottom:18px;
}

/* Description */
.sp-hero-desc {
  font-size:15px; line-height:1.75; color:rgba(255,255,255,.44);
  max-width:500px; margin-bottom:32px;
}

/* Metrics row */
.sp-hero-metrics {
  display:inline-flex; align-items:center; gap:16px;
  padding:14px 24px; border-radius:10px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.06);
  box-shadow:0 4px 24px rgba(0,0,0,.15), inset 0 1px 0 rgba(255,255,255,.03);
}
.sp-hero-metric { text-align:center; }
.sp-hero-metric-val {
  display:block; font-family:var(--font-h); font-size:15px; font-weight:700;
  color:rgba(255,255,255,.75); letter-spacing:-.01em; white-space:nowrap;
}
.sp-hero-metric-lbl {
  display:block; font-family:var(--font-m); font-size:8px; font-weight:600;
  letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,.25);
  margin-top:3px;
}
.sp-hero-metric-dot {
  width:3px; height:3px; border-radius:50%;
  background:rgba(232,92,0,.4); flex-shrink:0;
}

/* CTAs */
.sp-hero-actions {
  display:flex; gap:12px; margin-top:32px; flex-wrap:wrap;
}
.sp-hero-actions .btn-primary {
  box-shadow:0 0 20px rgba(232,92,0,.2), 0 4px 12px rgba(0,0,0,.25);
  font-size:14px; padding:13px 28px;
}
.sp-hero-actions .btn-primary:hover {
  box-shadow:0 0 36px rgba(232,92,0,.35), 0 8px 24px rgba(0,0,0,.25);
}
.sp-hero-actions .btn-outline {
  border-color:rgba(255,255,255,.1); color:rgba(255,255,255,.45);
  font-size:14px; padding:13px 24px;
}
.sp-hero-actions .btn-outline:hover {
  border-color:rgba(232,92,0,.4); color:var(--orange);
}

/* Brands */
.sp-hero-brands {
  display:flex; align-items:center; gap:20px;
  margin-top:36px; padding-top:24px;
  border-top:1px solid rgba(255,255,255,.04);
}
.sp-hero-brands img {
  height:12px; opacity:.2; filter:grayscale(1) brightness(4);
  transition:opacity .3s ease;
}
.sp-hero-brands img:hover { opacity:.5; }

/* Responsive hero */
@media(max-width:1024px) {
  .sp-hero-inner { grid-template-columns:1fr; text-align:center; gap:32px; padding:64px 28px 56px; }
  .sp-hero-visual { min-height:260px; order:-1; }
  .sp-hero-visual img { max-height:300px; }
  .sp-hero-content { display:flex; flex-direction:column; align-items:center; }
  .sp-hero-desc { max-width:560px; }
  .sp-hero-actions { justify-content:center; }
  .sp-hero-brands { justify-content:center; }
  .sp-hero-kicker::after { display:block; }
}
@media(max-width:600px) {
  .sp-hero-inner { padding:48px 20px 40px; }
  .sp-hero-visual img { max-height:220px; }
  .sp-hero-desc { font-size:14px; }
  .sp-hero-metrics { flex-wrap:wrap; gap:10px 14px; padding:12px 18px; }
  .sp-hero-metric-dot { display:none; }
  .sp-hero-brands { gap:14px; }
  .sp-hero-brands img { height:10px; }
}


/* ═══════════════════════════════════════════════════════════════════ */
/* 2. TRUST BAR — Enhanced                                            */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-trust {
  background:#fff; border-bottom:1px solid var(--border); padding:18px 0;
  position:relative;
}
.sp-trust::before {
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg, transparent, rgba(232,92,0,.15) 30%, rgba(232,92,0,.25) 50%, rgba(232,92,0,.15) 70%, transparent);
}
.sp-trust-inner {
  display:flex; align-items:center; justify-content:center; gap:36px; flex-wrap:wrap;
  max-width:1320px; margin:0 auto; padding:0 28px;
}
.sp-trust-item {
  display:flex; align-items:center; gap:8px;
  font-size:13px; color:var(--gray-500); font-weight:500;
  transition:color .3s ease;
}
.sp-trust-item:hover { color:var(--dark); }
.sp-trust-item svg { flex-shrink:0; }
.sp-trust-item a { text-decoration:none; color:inherit; display:flex; align-items:center; gap:8px; }


/* ═══════════════════════════════════════════════════════════════════ */
/* 3. WHY THIS SERIES — Value proposition                             */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-why {
  background:#fff; padding:80px 0; position:relative; overflow:hidden;
}
.sp-why::before {
  content:''; position:absolute; top:0; right:0; width:400px; height:400px;
  background:radial-gradient(circle, rgba(232,92,0,.04) 0%, transparent 70%);
  pointer-events:none;
}
.sp-why-header {
  text-align:center; margin-bottom:56px;
}
.sp-why-header .tag { margin-bottom:16px; }
.sp-why-header h2 {
  font-family:var(--font-h); font-size:clamp(26px,3.5vw,38px); font-weight:800;
  color:var(--dark); line-height:1.12; letter-spacing:-.02em;
}
.sp-why-header h2 .orange { color:var(--orange); }
.sp-why-header p {
  margin-top:12px; font-size:16px; color:var(--gray-500); max-width:600px; margin-left:auto; margin-right:auto;
}

.sp-why-grid {
  display:grid; grid-template-columns:repeat(4,1fr); gap:20px;
  max-width:1320px; margin:0 auto; padding:0 28px;
}
.sp-why-card {
  background:#fff; border:1px solid var(--border); border-radius:14px;
  padding:32px 24px; position:relative; overflow:hidden;
  transition:all .4s cubic-bezier(.25,.46,.45,.94);
}
.sp-why-card:hover {
  border-color:rgba(232,92,0,.2);
  box-shadow:0 16px 48px rgba(0,0,0,.08);
  transform:translateY(-4px);
}
.sp-why-card::after {
  content:''; position:absolute; bottom:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, var(--orange), rgba(232,92,0,.3));
  transform:scaleX(0); transform-origin:left; transition:transform .4s ease;
}
.sp-why-card:hover::after { transform:scaleX(1); }
.sp-why-icon {
  width:48px; height:48px; border-radius:12px;
  display:flex; align-items:center; justify-content:center;
  background:rgba(232,92,0,.06); margin-bottom:20px;
  transition:background .3s ease, transform .3s ease;
}
.sp-why-card:hover .sp-why-icon {
  background:rgba(232,92,0,.12); transform:scale(1.05);
}
.sp-why-icon svg { color:var(--orange); }
.sp-why-card h3 {
  font-family:var(--font-h); font-size:17px; font-weight:700;
  color:var(--dark); margin-bottom:10px; letter-spacing:-.01em;
}
.sp-why-card p {
  font-size:13.5px; line-height:1.6; color:var(--gray-500);
}

@media(max-width:1024px) { .sp-why-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:600px) { .sp-why-grid { grid-template-columns:1fr; } .sp-why { padding:56px 0; } }


/* ═══════════════════════════════════════════════════════════════════ */
/* 4. MACHINES GRID — Premium cards                                   */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-machines {
  background:var(--gray-50); padding:80px 0 88px; position:relative;
}

/* Override existing machine-card for series pages */
.sp-machines .machines-grid {
  display:grid; grid-template-columns:repeat(auto-fill,minmax(320px,1fr));
  gap:20px;
}
.sp-machines .machine-card {
  background:#fff; border:1px solid rgba(0,0,0,.06); border-radius:16px;
  overflow:hidden; cursor:pointer; position:relative;
  transition:all .5s cubic-bezier(.25,.46,.45,.94);
  box-shadow:0 2px 8px rgba(0,0,0,.03), 0 8px 24px rgba(0,0,0,.04);
  text-decoration:none; color:inherit; display:flex; flex-direction:column;
}
.sp-machines .machine-card:hover {
  transform:translateY(-8px);
  border-color:rgba(232,92,0,.2);
  box-shadow:0 20px 48px rgba(0,0,0,.1), 0 0 0 1px rgba(232,92,0,.08);
}
/* Orange bottom accent on hover */
.sp-machines .machine-card::after {
  content:''; position:absolute; bottom:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, transparent 5%, var(--orange) 30%, var(--orange-l) 50%, var(--orange) 70%, transparent 95%);
  opacity:0; transition:opacity .4s ease;
}
.sp-machines .machine-card:hover::after { opacity:1; }

.sp-machines .machine-img {
  height:240px; background:#fafaf8; display:flex; align-items:center; justify-content:center;
  position:relative; overflow:hidden; border-bottom:1px solid rgba(0,0,0,.04);
}
.sp-machines .machine-img img {
  height:100%; width:100%; object-fit:contain; padding:24px;
  transition:transform .6s cubic-bezier(.25,.46,.45,.94);
  position:relative; z-index:2;
}
.sp-machines .machine-card:hover .machine-img img {
  transform:scale(1.06);
}
.sp-machines .machine-img-bg {
  position:absolute; inset:0;
  background:radial-gradient(ellipse at center, rgba(232,92,0,.03) 0%, transparent 60%);
}
.sp-machines .machine-badge {
  position:absolute; top:14px; left:14px; z-index:3;
  padding:4px 10px; border-radius:5px;
  background:rgba(232,92,0,.1); border:1px solid rgba(232,92,0,.15);
  font-family:var(--font-m); font-size:9px; font-weight:700;
  letter-spacing:.08em; text-transform:uppercase; color:var(--orange);
}
.sp-machines .machine-body { padding:24px; flex:1; display:flex; flex-direction:column; }
.sp-machines .machine-series-lbl {
  font-family:var(--font-m); font-size:9px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--gray-400); margin-bottom:6px;
}
.sp-machines .machine-name {
  font-family:var(--font-h); font-size:22px; font-weight:800;
  color:var(--dark); margin-bottom:6px; letter-spacing:-.02em;
}
.sp-machines .machine-desc {
  font-size:13.5px; line-height:1.6; color:var(--gray-500);
  margin-bottom:16px; flex:1;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
.sp-machines .machine-specs {
  display:grid; grid-template-columns:1fr 1fr; gap:8px 14px;
  padding:16px; background:var(--gray-50); border-radius:10px; margin-bottom:16px;
  border:1px solid rgba(0,0,0,.03);
}
.sp-machines .mspec-k {
  font-family:var(--font-m); font-size:9px; letter-spacing:.08em;
  color:var(--gray-400); text-transform:uppercase;
}
.sp-machines .mspec-v {
  font-size:13px; font-weight:700; color:var(--dark); margin-top:2px;
}
.sp-machines .machine-footer {
  display:flex; justify-content:space-between; align-items:center;
  padding-top:14px; border-top:1px solid var(--border);
}
.sp-machines .machine-cta {
  font-size:12.5px; font-family:var(--font-m); font-weight:600;
  letter-spacing:.04em; color:var(--orange);
  display:inline-flex; align-items:center; gap:6px;
  transition:gap .4s cubic-bezier(.25,.46,.45,.94);
}
.sp-machines .machine-card:hover .machine-cta { gap:12px; }
.sp-machines .machine-acc {
  font-family:var(--font-m); font-size:11px; font-weight:600;
  color:var(--gray-400); letter-spacing:.03em;
}

@media(max-width:600px) {
  .sp-machines .machines-grid { grid-template-columns:1fr; }
  .sp-machines .machine-img { height:200px; }
}


/* ═══════════════════════════════════════════════════════════════════ */
/* 5. COMPARISON TABLE — Premium                                      */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-compare {
  background:#fff; padding:80px 0;
}
.sp-compare .series-compare {
  overflow-x:auto; -webkit-overflow-scrolling:touch;
  border-radius:14px; border:1px solid var(--border);
  box-shadow:0 4px 20px rgba(0,0,0,.04);
}
.sp-compare .series-compare-table {
  width:100%; border-collapse:collapse; border:none; border-radius:0;
  min-width:700px; overflow:hidden;
}
.sp-compare .series-compare-table thead {
  background:linear-gradient(135deg, #0C0C11, #1a1a20);
}
.sp-compare .series-compare-table thead tr:hover th {
  background:linear-gradient(135deg, #0C0C11, #1a1a20);
}
.sp-compare .series-compare-table th {
  padding:16px 18px; font-family:var(--font-m); font-size:10px;
  letter-spacing:.1em; color:rgba(255,255,255,.5); text-transform:uppercase;
  text-align:left; border-bottom:1px solid rgba(255,255,255,.08);
  white-space:nowrap;
}
.sp-compare .series-compare-table td {
  padding:16px 18px; font-size:14px; color:var(--dark);
  border-bottom:1px solid var(--border); white-space:nowrap;
  transition:background .2s ease;
}
.sp-compare .series-compare-table tbody tr td {
  background:#fff;
}
.sp-compare .series-compare-table tbody tr:nth-child(even) td {
  background:var(--gray-50);
}
.sp-compare .series-compare-table tbody tr:hover td {
  background:var(--orange-pale);
}
.sp-compare .series-compare-table tbody tr:last-child td { border-bottom:none; }
.sp-compare .series-compare-table td strong a {
  color:var(--orange); font-weight:700;
}
.sp-compare .series-compare-table td strong a:hover {
  text-decoration:underline;
}
/* Scroll hint on mobile */
.sp-compare-hint {
  display:none; text-align:center; margin-top:12px;
  font-family:var(--font-m); font-size:11px; color:var(--gray-400);
  letter-spacing:.04em;
}
@media(max-width:768px) {
  .sp-compare-hint { display:block; }
}


/* ═══════════════════════════════════════════════════════════════════ */
/* 6. TECHNOLOGY — Dark dramatic section                              */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-tech {
  background:#0C0C11; padding:88px 0; position:relative; overflow:hidden;
}
.sp-tech::before {
  content:''; position:absolute; inset:0; z-index:0;
  background:radial-gradient(ellipse 60% 40% at 50% 30%, rgba(232,92,0,.06) 0%, transparent 70%);
}
.sp-tech .section-header { position:relative; z-index:2; }
.sp-tech .section-header .tag {
  background:rgba(232,92,0,.15); color:var(--orange); border:1px solid rgba(232,92,0,.2);
}
.sp-tech .section-header .h2 { color:#fff; }
.sp-tech .section-header .h2 .orange { color:var(--orange); }

.sp-tech .components-grid {
  position:relative; z-index:2;
  display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:48px;
}
.sp-tech .component-card {
  background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08);
  border-radius:14px; overflow:hidden;
  transition:all .5s cubic-bezier(.25,.46,.45,.94);
  box-shadow:none;
}
.sp-tech .component-card:hover {
  background:rgba(255,255,255,.07);
  border-color:rgba(232,92,0,.25);
  transform:translateY(-6px);
  box-shadow:0 20px 48px rgba(0,0,0,.3), 0 0 0 1px rgba(232,92,0,.1);
}
.sp-tech .component-card-img {
  display:flex; align-items:center; justify-content:center;
  padding:32px; aspect-ratio:4/3; background:rgba(255,255,255,.02);
  position:relative; overflow:hidden;
}
.sp-tech .component-card-img::after {
  content:''; position:absolute; inset:0;
  background:radial-gradient(ellipse at center, rgba(232,92,0,.04) 0%, transparent 60%);
  pointer-events:none;
}
.sp-tech .component-card-img img {
  max-width:80%; max-height:80%; object-fit:contain;
  filter:brightness(1.1) contrast(1.05);
  transition:transform .5s cubic-bezier(.25,.46,.45,.94), filter .4s ease;
}
.sp-tech .component-card:hover .component-card-img img {
  transform:scale(1.08);
  filter:brightness(1.2) contrast(1.1);
}
.sp-tech .component-card-label {
  padding:16px 20px;
  font-family:var(--font-m); font-size:12px; font-weight:600;
  color:rgba(255,255,255,.6); letter-spacing:.02em;
  border-top:1px solid rgba(255,255,255,.06);
  text-align:center; line-height:1.4;
  transition:color .3s ease;
}
.sp-tech .component-card:hover .component-card-label {
  color:rgba(255,255,255,.85);
}

@media(max-width:1024px) { .sp-tech .components-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:600px) { .sp-tech .components-grid { grid-template-columns:1fr; } .sp-tech { padding:64px 0; } }


/* ═══════════════════════════════════════════════════════════════════ */
/* 7. CTA — Enhanced conversion                                       */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-cta {
  background:linear-gradient(135deg, #0C0C11 0%, #111118 50%, #0C0C11 100%);
  padding:88px 0; position:relative; overflow:hidden;
}
.sp-cta::before {
  content:''; position:absolute; inset:0;
  background:
    radial-gradient(ellipse 50% 60% at 30% 50%, rgba(232,92,0,.08) 0%, transparent 60%),
    radial-gradient(ellipse 40% 50% at 80% 60%, rgba(232,92,0,.05) 0%, transparent 50%);
}
.sp-cta::after {
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg, transparent, rgba(232,92,0,.3) 30%, rgba(232,92,0,.5) 50%, rgba(232,92,0,.3) 70%, transparent);
}
.sp-cta .cta-inner {
  position:relative; z-index:2;
  display:flex; align-items:center; justify-content:space-between;
  gap:48px; flex-wrap:wrap;
  background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.06);
  border-radius:20px; padding:56px 48px;
  backdrop-filter:blur(8px);
}
.sp-cta .cta-inner .tag {
  background:rgba(232,92,0,.12); color:var(--orange); border:1px solid rgba(232,92,0,.2);
}
.sp-cta .cta-title {
  font-family:var(--font-h); font-size:clamp(28px,3.5vw,40px); font-weight:800;
  color:#fff; line-height:1.1; letter-spacing:-.02em; margin-top:12px;
}
.sp-cta .cta-sub {
  font-size:15px; color:rgba(255,255,255,.45); line-height:1.6;
  max-width:480px; margin-top:16px;
}
.sp-cta .cta-actions {
  display:flex; flex-direction:column; gap:12px; flex-shrink:0;
}
.sp-cta .cta-actions .btn-primary {
  box-shadow:0 0 30px rgba(232,92,0,.3), 0 4px 16px rgba(0,0,0,.3);
}
.sp-cta .cta-actions .btn-primary:hover {
  box-shadow:0 0 50px rgba(232,92,0,.45), 0 8px 24px rgba(0,0,0,.3);
}
/* Stats below CTA */
.sp-cta-stats {
  display:flex; gap:48px; margin-top:32px; padding-top:24px;
  border-top:1px solid rgba(255,255,255,.06);
}
.sp-cta-stat-val {
  font-family:var(--font-h); font-size:24px; font-weight:800;
  color:var(--orange); display:block;
}
.sp-cta-stat-lbl {
  font-size:12px; color:rgba(255,255,255,.35); margin-top:2px; display:block;
}

@media(max-width:768px) {
  .sp-cta .cta-inner { flex-direction:column; text-align:center; padding:40px 28px; }
  .sp-cta .cta-actions { width:100%; align-items:center; }
  .sp-cta-stats { justify-content:center; }
}


/* ═══════════════════════════════════════════════════════════════════ */
/* 8. SERIES-SPECIFIC BADGE COLORS                                    */
/* ═══════════════════════════════════════════════════════════════════ */
/* These can be extended per-series via inline style if needed */


/* ═══════════════════════════════════════════════════════════════════ */
/* CROSS-SELL — Other series                                          */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-cross-sell {
  background:var(--gray-50); padding:72px 0; border-top:1px solid var(--border);
}
.sp-cross-sell-grid {
  display:grid; grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));
  gap:18px; margin-top:40px;
}
.sp-cross-card {
  display:flex; flex-direction:column;
  background:#fff; border:1px solid var(--border); border-radius:14px;
  text-decoration:none; color:inherit; overflow:hidden;
  transition:all .4s cubic-bezier(.25,.46,.45,.94);
}
.sp-cross-card:hover {
  border-color:rgba(232,92,0,.2); box-shadow:0 12px 36px rgba(0,0,0,.08);
  transform:translateY(-5px);
}
.sp-cross-card::after {
  content:''; display:block; height:2px; width:100%;
  background:linear-gradient(90deg, transparent, var(--orange), transparent);
  opacity:0; transition:opacity .3s ease;
}
.sp-cross-card:hover::after { opacity:1; }
.sp-cross-img {
  height:140px; background:var(--gray-50); display:flex;
  align-items:center; justify-content:center; overflow:hidden;
  border-bottom:1px solid rgba(0,0,0,.04); position:relative;
}
.sp-cross-img img {
  max-height:120px; width:auto; max-width:90%; object-fit:contain;
  transition:transform .5s cubic-bezier(.25,.46,.45,.94);
}
.sp-cross-card:hover .sp-cross-img img { transform:scale(1.06); }
.sp-cross-letter-lg {
  font-family:var(--font-h); font-size:48px; font-weight:900;
  color:rgba(0,0,0,.06);
}
.sp-cross-body {
  padding:18px; display:flex; align-items:flex-start; gap:12px;
}
.sp-cross-letter {
  width:36px; height:36px; border-radius:9px;
  display:flex; align-items:center; justify-content:center;
  background:rgba(232,92,0,.08); font-family:var(--font-h);
  font-size:15px; font-weight:800; color:var(--orange); flex-shrink:0;
}
.sp-cross-name { font-size:14px; font-weight:700; color:var(--dark); }
.sp-cross-sub { font-family:var(--font-m); font-size:11px; color:var(--gray-400); margin-top:3px; letter-spacing:.02em; }
.sp-cross-desc { font-size:12.5px; color:var(--gray-500); margin-top:4px; line-height:1.4; }


/* ═══════════════════════════════════════════════════════════════════ */
/* OVERRIDE: Hide old series-hero when sp-hero is present             */
/* ═══════════════════════════════════════════════════════════════════ */
body:has(.sp-hero) .series-hero-section { display:none; }


/* ═══════════════════════════════════════════════════════════════════ */
/* INDUSTRY RECOMMENDATION — Application mapping                      */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-industry {
  background:#fff; padding:80px 0; border-top:1px solid var(--border);
}
.sp-industry-grid {
  display:grid; grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));
  gap:16px; max-width:1320px; margin:48px auto 0; padding:0;
}
.sp-industry-card {
  display:flex; align-items:flex-start; gap:16px;
  padding:24px; background:var(--gray-50); border:1px solid var(--border);
  border-radius:14px; transition:all .4s cubic-bezier(.25,.46,.45,.94);
}
.sp-industry-card:hover {
  background:#fff; border-color:rgba(232,92,0,.2);
  box-shadow:0 12px 36px rgba(0,0,0,.06); transform:translateY(-3px);
}
.sp-industry-icon {
  width:44px; height:44px; border-radius:11px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  background:rgba(232,92,0,.08); color:var(--orange);
  transition:background .3s ease;
}
.sp-industry-card:hover .sp-industry-icon { background:rgba(232,92,0,.14); }
.sp-industry-content h3 {
  font-family:var(--font-h); font-size:16px; font-weight:700;
  color:var(--dark); margin-bottom:4px;
}
.sp-industry-models {
  font-family:var(--font-m); font-size:11px; font-weight:600;
  color:var(--orange); letter-spacing:.04em; margin-bottom:8px;
}
.sp-industry-content p {
  font-size:13px; line-height:1.6; color:var(--gray-500);
}
@media(max-width:600px) { .sp-industry { padding:56px 0; } }


/* ═══════════════════════════════════════════════════════════════════ */
/* BROCHURE DOWNLOAD — Mid-page lead capture                          */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-brochure {
  background:var(--gray-50); padding:0; border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.sp-brochure-inner {
  display:flex; align-items:center; justify-content:space-between;
  gap:32px; padding:40px 0; flex-wrap:wrap;
}
.sp-brochure-content {
  display:flex; align-items:flex-start; gap:16px; flex:1; min-width:280px;
}
.sp-brochure-content svg { flex-shrink:0; margin-top:2px; }
.sp-brochure-content h3 {
  font-family:var(--font-h); font-size:18px; font-weight:700;
  color:var(--dark); margin-bottom:6px;
}
.sp-brochure-content p {
  font-size:13.5px; line-height:1.6; color:var(--gray-500);
}
.sp-brochure-form {
  display:flex; gap:10px; flex-shrink:0; flex-wrap:wrap;
}
.sp-brochure-input {
  padding:12px 16px; border:1.5px solid var(--border); border-radius:8px;
  font-family:var(--font-b); font-size:14px; color:var(--dark);
  background:#fff; width:260px; transition:border-color .3s ease;
}
.sp-brochure-input:focus {
  outline:none; border-color:var(--orange);
}
.sp-brochure-input::placeholder { color:var(--gray-400); }
.sp-brochure-btn { white-space:nowrap; }
@media(max-width:768px) {
  .sp-brochure-inner { flex-direction:column; text-align:center; }
  .sp-brochure-content { flex-direction:column; align-items:center; }
  .sp-brochure-form { width:100%; flex-direction:column; }
  .sp-brochure-input { width:100%; }
}


/* ═══════════════════════════════════════════════════════════════════ */
/* SOCIAL PROOF — Testimonials                                        */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-proof {
  background:var(--gray-50); padding:80px 0; border-top:1px solid var(--border);
}
.sp-proof-grid {
  display:grid; grid-template-columns:repeat(auto-fill, minmax(320px, 1fr));
  gap:20px; margin-top:48px;
}
.sp-proof-card {
  background:#fff; border:1px solid var(--border); border-radius:16px;
  padding:28px; display:flex; flex-direction:column;
  transition:all .4s cubic-bezier(.25,.46,.45,.94);
}
.sp-proof-card:hover {
  box-shadow:0 12px 36px rgba(0,0,0,.06); transform:translateY(-3px);
  border-color:rgba(232,92,0,.15);
}
.sp-proof-quote {
  flex:1; margin-bottom:20px;
}
.sp-proof-quote svg { margin-bottom:12px; }
.sp-proof-quote p {
  font-size:14.5px; line-height:1.7; color:var(--gray-600);
  font-style:italic;
}
.sp-proof-author {
  display:flex; align-items:center; gap:12px;
  padding-top:16px; border-top:1px solid var(--border);
}
.sp-proof-avatar {
  width:36px; height:36px; border-radius:50%;
  background:rgba(232,92,0,.08); color:var(--orange);
  display:flex; align-items:center; justify-content:center;
  font-family:var(--font-h); font-size:14px; font-weight:700; flex-shrink:0;
}
.sp-proof-name {
  font-size:13px; font-weight:600; color:var(--dark);
}
.sp-proof-company {
  font-size:12px; color:var(--gray-500); margin-top:1px;
}
.sp-proof-machine {
  margin-left:auto; font-family:var(--font-m); font-size:10px; font-weight:600;
  color:var(--orange); letter-spacing:.04em;
  padding:4px 10px; border-radius:5px; background:rgba(232,92,0,.06);
  white-space:nowrap;
}
@media(max-width:600px) { .sp-proof { padding:56px 0; } .sp-proof-grid { grid-template-columns:1fr; } }


/* ═══════════════════════════════════════════════════════════════════ */
/* FAQ — Accordion                                                    */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-faq {
  background:#fff; padding:80px 0; border-top:1px solid var(--border);
}
.sp-faq-list {
  max-width:800px; margin:48px 0 0; display:flex; flex-direction:column; gap:0;
}
.sp-faq-item {
  border:1px solid var(--border); border-radius:0;
  overflow:hidden; transition:background .3s ease;
}
.sp-faq-item:first-child { border-radius:12px 12px 0 0; }
.sp-faq-item:last-child { border-radius:0 0 12px 12px; }
.sp-faq-item + .sp-faq-item { border-top:none; }
.sp-faq-item[open] { background:var(--gray-50); }
.sp-faq-q {
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:20px 24px; cursor:pointer; list-style:none;
  font-family:var(--font-h); font-size:15px; font-weight:600;
  color:var(--dark); line-height:1.4; transition:color .2s ease;
}
.sp-faq-q::-webkit-details-marker { display:none; }
.sp-faq-q:hover { color:var(--orange); }
.sp-faq-chevron {
  flex-shrink:0; transition:transform .3s ease; color:var(--gray-400);
}
.sp-faq-item[open] .sp-faq-chevron { transform:rotate(180deg); color:var(--orange); }
.sp-faq-a {
  padding:0 24px 20px;
}
.sp-faq-a p {
  font-size:14px; line-height:1.75; color:var(--gray-600);
}
@media(max-width:600px) { .sp-faq { padding:56px 0; } .sp-faq-q { font-size:14px; padding:16px 18px; } .sp-faq-a { padding:0 18px 16px; } }


/* ═══════════════════════════════════════════════════════════════════ */
/* 9. MACHINE CARD OVERLAY — Premium hover interaction                */
/* ═══════════════════════════════════════════════════════════════════ */
.machine-img-overlay {
  position:absolute; inset:0; z-index:4;
  background:linear-gradient(0deg, rgba(0,0,0,.7) 0%, rgba(0,0,0,.15) 40%, transparent 70%);
  display:flex; align-items:flex-end; justify-content:center; padding-bottom:20px;
  opacity:0; transition:opacity .4s cubic-bezier(.25,.46,.45,.94);
  pointer-events:none;
}
.machine-card:hover .machine-img-overlay { opacity:1; }
.machine-img-overlay-cta {
  font-family:var(--font-m); font-size:11px; font-weight:600;
  letter-spacing:.06em; text-transform:uppercase; color:#fff;
  padding:8px 18px; border-radius:6px;
  background:rgba(232,92,0,.85); backdrop-filter:blur(8px);
  transform:translateY(8px); transition:transform .4s cubic-bezier(.25,.46,.45,.94);
  box-shadow:0 4px 16px rgba(232,92,0,.3);
}
.machine-card:hover .machine-img-overlay-cta { transform:translateY(0); }

/* Placeholder for missing images */
.machine-img-placeholder {
  display:flex; align-items:center; justify-content:center;
  width:100%; height:100%; background:var(--gray-50);
}


/* ═══════════════════════════════════════════════════════════════════ */
/* 10. COMPARISON TABLE — Sticky first column + polish                */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-compare .series-compare-table td:first-child,
.sp-compare .series-compare-table th:first-child {
  position:sticky; left:0; z-index:2;
}
.sp-compare .series-compare-table th:first-child {
  background:linear-gradient(135deg, #0C0C11, #1a1a20);
}
.sp-compare .series-compare-table td:first-child {
  background:#fff;
}
.sp-compare .series-compare-table tbody tr:nth-child(even) td:first-child {
  background:var(--gray-50);
}
.sp-compare .series-compare-table tbody tr:hover td:first-child {
  background:var(--orange-pale);
}
/* Better CTA button in table */
.sp-compare .btn-sm {
  padding:8px 16px; font-size:12px; border-radius:6px;
}


/* ═══════════════════════════════════════════════════════════════════ */
/* 11. COMPONENT CARD ENHANCEMENTS — Tooltip & zoom                   */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-tech .component-card {
  cursor:default; position:relative;
}
/* Zoom indicator */
.sp-tech .component-card-img::before {
  content:''; position:absolute; bottom:12px; right:12px; z-index:3;
  width:28px; height:28px; border-radius:6px;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.08);
  display:flex; align-items:center; justify-content:center;
  opacity:0; transform:scale(.8);
  transition:opacity .3s ease, transform .3s ease;
  background-image:url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,.4)' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3Cline x1='11' y1='8' x2='11' y2='14'/%3E%3Cline x1='8' y1='11' x2='14' y2='11'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:center; background-size:14px;
}
.sp-tech .component-card:hover .component-card-img::before {
  opacity:1; transform:scale(1);
}

/* Label slide-up effect */
.sp-tech .component-card-label {
  position:relative; overflow:hidden;
}
.sp-tech .component-card-label::after {
  content:''; position:absolute; bottom:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, transparent, var(--orange), transparent);
  transform:scaleX(0); transition:transform .4s ease;
}
.sp-tech .component-card:hover .component-card-label::after {
  transform:scaleX(1);
}


/* ═══════════════════════════════════════════════════════════════════ */
/* 12. SCROLL REVEAL ENHANCEMENTS — Staggered animations              */
/* ═══════════════════════════════════════════════════════════════════ */
/* These work with the existing reveal/d1/d2/d3 classes from main.js */
.sp-why-card.reveal.active { animation:sp-fadeUp .7s cubic-bezier(.25,.46,.45,.94) both; }
.sp-why-card.reveal.d1.active { animation-delay:.12s; }
.sp-why-card.reveal.d2.active { animation-delay:.24s; }
.sp-why-card.reveal.d3.active { animation-delay:.36s; }

.sp-machines .machine-card.reveal.active { animation:sp-fadeUp .6s cubic-bezier(.25,.46,.45,.94) both; }
.sp-machines .machine-card:nth-child(2).reveal.active { animation-delay:.1s; }
.sp-machines .machine-card:nth-child(3).reveal.active { animation-delay:.2s; }
.sp-machines .machine-card:nth-child(4).reveal.active { animation-delay:.25s; }
.sp-machines .machine-card:nth-child(5).reveal.active { animation-delay:.3s; }
.sp-machines .machine-card:nth-child(6).reveal.active { animation-delay:.35s; }

.sp-tech .component-card:nth-child(1) { transition-delay:.05s; }
.sp-tech .component-card:nth-child(2) { transition-delay:.1s; }
.sp-tech .component-card:nth-child(3) { transition-delay:.15s; }
.sp-tech .component-card:nth-child(4) { transition-delay:.2s; }
.sp-tech .component-card:nth-child(5) { transition-delay:.25s; }
.sp-tech .component-card:nth-child(6) { transition-delay:.3s; }
.sp-tech .component-card:nth-child(7) { transition-delay:.35s; }
.sp-tech .component-card:nth-child(8) { transition-delay:.4s; }
.sp-tech .component-card:nth-child(9) { transition-delay:.45s; }


/* ═══════════════════════════════════════════════════════════════════ */
/* 13. HERO ANIMATED PARTICLES — Subtle tech grid dots                */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-hero-particles {
  position:absolute; inset:0; z-index:1; pointer-events:none; overflow:hidden;
}
.sp-hero-particle {
  position:absolute; width:2px; height:2px; border-radius:50%;
  background:rgba(232,92,0,.3); animation:sp-float 6s ease-in-out infinite;
}
.sp-hero-particle:nth-child(1) { top:15%; left:10%; animation-delay:0s; animation-duration:7s; }
.sp-hero-particle:nth-child(2) { top:25%; left:25%; animation-delay:1s; animation-duration:5s; }
.sp-hero-particle:nth-child(3) { top:60%; left:15%; animation-delay:2s; animation-duration:8s; }
.sp-hero-particle:nth-child(4) { top:70%; left:80%; animation-delay:0.5s; animation-duration:6s; }
.sp-hero-particle:nth-child(5) { top:40%; left:90%; animation-delay:1.5s; animation-duration:7s; }
.sp-hero-particle:nth-child(6) { top:85%; left:50%; animation-delay:3s; animation-duration:6s; }
.sp-hero-particle:nth-child(7) { top:10%; left:65%; animation-delay:2s; animation-duration:9s; }
.sp-hero-particle:nth-child(8) { top:50%; left:45%; animation-delay:4s; animation-duration:5s; }

/* Connecting lines (decorative) */
.sp-hero-line {
  position:absolute; z-index:1; pointer-events:none;
  background:linear-gradient(90deg, transparent, rgba(232,92,0,.08), transparent);
  height:1px;
}
.sp-hero-line-1 { top:30%; left:5%; width:20%; transform:rotate(-5deg); }
.sp-hero-line-2 { top:70%; right:5%; width:15%; transform:rotate(3deg); }


/* ═══════════════════════════════════════════════════════════════════ */
/* 14. PRINT STYLES                                                    */
/* ═══════════════════════════════════════════════════════════════════ */
@media print {
  .sp-hero { background:#fff !important; color:#000 !important; min-height:auto !important; }
  .sp-hero-watermark, .sp-hero-noise, .sp-hero-particles,
  .sp-hero-visual-glow, .sp-hero-visual-scan { display:none !important; }
  .sp-hero h1, .sp-hero-stat-val { color:#000 !important; }
  .sp-hero-desc, .sp-hero-stat-lbl { color:#666 !important; }
  .sp-tech { background:#fff !important; }
  .sp-tech .component-card { background:#f5f5f5 !important; border-color:#ddd !important; }
  .sp-tech .component-card-label { color:#333 !important; }
  .sp-tech .h2 { color:#000 !important; }
  .sp-cta { background:#f5f5f5 !important; }
  .sp-cta .cta-title { color:#000 !important; }
  .sp-cta .cta-sub { color:#666 !important; }
}


/* ═══════════════════════════════════════════════════════════════════ */
/* 15. ACCESSIBILITY                                                   */
/* ═══════════════════════════════════════════════════════════════════ */
@media(prefers-reduced-motion:reduce) {
  .sp-hero-particle, .sp-hero-visual-scan,
  .sp-hero-visual-glow { animation:none !important; }
  .sp-hero-content, .sp-hero-visual { animation:none !important; }
  .sp-why-card, .machine-card, .component-card { transition-duration:.01s !important; }
  .sp-hero-visual img { transition:none !important; }
}

/* ═══════════════════════════════════════════════════════════════════ */
/* 16. MOBILE COMPARISON CARDS                                        */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-compare-mobile { display:none; }
@media(max-width:768px) {
  .sp-compare .series-compare { display:none; }
  .sp-compare-hint { display:none; }
  .sp-compare-mobile {
    display:flex; flex-direction:column; gap:14px; margin-top:32px;
  }
  .sp-compare-mob-card {
    background:#fff; border:1px solid var(--border); border-radius:14px;
    padding:20px; transition:all .3s ease;
  }
  .sp-compare-mob-card:hover {
    border-color:rgba(232,92,0,.2); box-shadow:0 8px 24px rgba(0,0,0,.06);
  }
  .sp-compare-mob-name {
    font-family:var(--font-h); font-size:20px; font-weight:800;
    color:var(--orange); margin-bottom:14px; letter-spacing:-.02em;
  }
  .sp-compare-mob-specs {
    display:grid; grid-template-columns:1fr 1fr; gap:10px 16px;
    padding:14px; background:var(--gray-50); border-radius:10px;
    border:1px solid rgba(0,0,0,.03);
  }
  .sp-compare-mob-spec { display:flex; flex-direction:column; }
  .sp-compare-mob-k {
    font-family:var(--font-m); font-size:9px; letter-spacing:.08em;
    text-transform:uppercase; color:var(--gray-400);
  }
  .sp-compare-mob-v {
    font-size:13px; font-weight:700; color:var(--dark); margin-top:2px;
  }
}

/* ═══════════════════════════════════════════════════════════════════ */
/* 17. SECTION VISUAL SEPARATORS                                      */
/* ═══════════════════════════════════════════════════════════════════ */
.sp-why + .sp-machines::before,
.sp-compare + .sp-industry::before,
.sp-brochure + .sp-tech::before {
  content:''; display:block; height:1px; max-width:120px; margin:0 auto;
  background:linear-gradient(90deg, transparent, rgba(232,92,0,.25), transparent);
}

/* Focus-visible for keyboard nav */
.sp-hero-actions a:focus-visible,
.sp-why-card:focus-visible,
.machine-card:focus-visible,
.sp-cross-card:focus-visible {
  outline:2px solid var(--orange); outline-offset:3px; border-radius:8px;
}
