/* ═══════════════════════════════════════════════════════════════
   BUILGENT — Landing por sector (extiende styles.css del home)
   Misma base Midnight Aurora + theming por nicho.
   ═══════════════════════════════════════════════════════════════ */

/* ─── THEMES (mismas vars que brochures) ─── */

body.sector-page {
  --theme-primary: #F59E0B;
  --theme-primary-soft: #FCD34D;
  --theme-secondary: #EC4899;
  --theme-secondary-soft: #F9A8D4;
  --theme-rgba-08: rgba(245, 158, 11, 0.08);
  --theme-rgba-12: rgba(245, 158, 11, 0.12);
  --theme-rgba-18: rgba(245, 158, 11, 0.18);
  --theme-rgba-30: rgba(245, 158, 11, 0.30);
  --theme-rgba-45: rgba(245, 158, 11, 0.45);
  --theme-secondary-rgba-14: rgba(236, 72, 153, 0.14);
}
body.theme-inmobiliaria { --theme-primary: #F59E0B; --theme-primary-soft: #FCD34D; --theme-secondary: #EC4899; --theme-secondary-soft: #F9A8D4; --theme-rgba-08: rgba(245,158,11,0.08); --theme-rgba-12: rgba(245,158,11,0.12); --theme-rgba-18: rgba(245,158,11,0.18); --theme-rgba-30: rgba(245,158,11,0.30); --theme-rgba-45: rgba(245,158,11,0.45); --theme-secondary-rgba-14: rgba(236,72,153,0.14); }
body.theme-clinica      { --theme-primary: #06B6D4; --theme-primary-soft: #67E8F9; --theme-secondary: #10B981; --theme-secondary-soft: #6EE7B7; --theme-rgba-08: rgba(6,182,212,0.08); --theme-rgba-12: rgba(6,182,212,0.14); --theme-rgba-18: rgba(6,182,212,0.20); --theme-rgba-30: rgba(6,182,212,0.30); --theme-rgba-45: rgba(6,182,212,0.45); --theme-secondary-rgba-14: rgba(16,185,129,0.14); }
body.theme-restaurante  { --theme-primary: #FB923C; --theme-primary-soft: #FDBA74; --theme-secondary: #DC2626; --theme-secondary-soft: #FCA5A5; --theme-rgba-08: rgba(251,146,60,0.10); --theme-rgba-12: rgba(251,146,60,0.16); --theme-rgba-18: rgba(251,146,60,0.22); --theme-rgba-30: rgba(251,146,60,0.34); --theme-rgba-45: rgba(251,146,60,0.50); --theme-secondary-rgba-14: rgba(220,38,38,0.14); }
body.theme-peluqueria   { --theme-primary: #EC4899; --theme-primary-soft: #F9A8D4; --theme-secondary: #A855F7; --theme-secondary-soft: #D8B4FE; --theme-rgba-08: rgba(236,72,153,0.10); --theme-rgba-12: rgba(236,72,153,0.16); --theme-rgba-18: rgba(236,72,153,0.22); --theme-rgba-30: rgba(236,72,153,0.34); --theme-rgba-45: rgba(236,72,153,0.50); --theme-secondary-rgba-14: rgba(168,85,247,0.16); }
body.theme-abogados     { --theme-primary: #3B82F6; --theme-primary-soft: #93C5FD; --theme-secondary: #FCD34D; --theme-secondary-soft: #FDE68A; --theme-rgba-08: rgba(59,130,246,0.10); --theme-rgba-12: rgba(59,130,246,0.16); --theme-rgba-18: rgba(59,130,246,0.22); --theme-rgba-30: rgba(59,130,246,0.34); --theme-rgba-45: rgba(59,130,246,0.50); --theme-secondary-rgba-14: rgba(252,211,77,0.18); }
body.theme-fisio        { --theme-primary: #10B981; --theme-primary-soft: #6EE7B7; --theme-secondary: #0EA5E9; --theme-secondary-soft: #7DD3FC; --theme-rgba-08: rgba(16,185,129,0.10); --theme-rgba-12: rgba(16,185,129,0.16); --theme-rgba-18: rgba(16,185,129,0.22); --theme-rgba-30: rgba(16,185,129,0.34); --theme-rgba-45: rgba(16,185,129,0.50); --theme-secondary-rgba-14: rgba(14,165,233,0.16); }
body.theme-autoescuela  { --theme-primary: #FBBF24; --theme-primary-soft: #FDE68A; --theme-secondary: #22C55E; --theme-secondary-soft: #86EFAC; --theme-rgba-08: rgba(251,191,36,0.10); --theme-rgba-12: rgba(251,191,36,0.16); --theme-rgba-18: rgba(251,191,36,0.22); --theme-rgba-30: rgba(251,191,36,0.34); --theme-rgba-45: rgba(251,191,36,0.50); --theme-secondary-rgba-14: rgba(34,197,94,0.16); }

/* Reescribe acentos de la home con theme color */
body.sector-page .brand-mark {
  background: linear-gradient(135deg, var(--theme-primary), var(--theme-secondary));
}
body.sector-page .hero-eyebrow .dot,
body.sector-page .section-eyebrow .dot {
  background: var(--theme-primary);
  box-shadow: 0 0 14px var(--theme-primary);
}
body.sector-page .scene-eyebrow,
body.sector-page .section-eyebrow {
  color: var(--theme-primary);
}

/* ─── BREADCRUMB ─── */
.sector-breadcrumb {
  max-width: var(--container);
  margin: 24px auto 0;
  padding: 0 20px;
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--steel-400);
}
@media (min-width: 1024px) { .sector-breadcrumb { padding: 0 32px; } }
.sector-breadcrumb a {
  color: var(--steel-300);
  transition: color 0.2s;
}
.sector-breadcrumb a:hover { color: var(--theme-primary-soft); }
.sector-breadcrumb .sep { margin: 0 8px; color: var(--steel-500); }
.sector-breadcrumb .current { color: var(--text-bright); }

/* ─── HERO ─── */
.sector-hero {
  position: relative;
  padding: 60px 0 80px;
  overflow: hidden;
}
@media (min-width: 1024px) { .sector-hero { padding: 80px 0 120px; } }

.sector-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(70% 50% at 12% 0%, var(--theme-rgba-18), transparent 60%),
    radial-gradient(60% 45% at 90% 100%, var(--theme-secondary-rgba-14), transparent 60%);
}

.sector-hero-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  align-items: center;
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 20px;
  position: relative;
}
@media (min-width: 960px) {
  .sector-hero-grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
    gap: 56px;
    padding: 0 32px;
  }
}

.sector-hero-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--font-mono); font-size: 11px;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: var(--theme-primary);
  padding: 6px 12px;
  border: 1px solid color-mix(in srgb, var(--theme-primary) 40%, transparent);
  border-radius: 999px;
  background: var(--theme-rgba-08);
}
.sector-hero-eyebrow .dot {
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--theme-primary-soft);
  box-shadow: 0 0 10px var(--theme-primary);
}

.sector-h1 {
  font-family: var(--font-display);
  font-size: clamp(36px, 5.5vw, 64px);
  line-height: 1.02;
  margin-top: 18px;
  background: linear-gradient(135deg, #fff 0%, var(--theme-primary-soft) 55%, var(--theme-primary) 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
  max-width: 18ch;
}

.sector-sub {
  font-size: 17px;
  line-height: 1.55;
  color: var(--steel-300);
  margin-top: 24px;
  max-width: 56ch;
}
.sector-sub strong { color: #fff; }

.sector-hero-ctas {
  display: flex; flex-wrap: wrap; gap: 12px;
  margin-top: 32px;
}
.sector-hero .btn-primary {
  background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-secondary) 100%);
  color: #fff;
  box-shadow:
    0 8px 30px -8px var(--theme-rgba-45),
    0 4px 20px -6px var(--theme-secondary-rgba-14),
    inset 0 1px 0 rgba(255, 255, 255, 0.35);
}

.sector-hero-photo {
  position: relative;
  border-radius: var(--radius-xl);
  overflow: hidden;
  isolation: isolate;
  box-shadow:
    0 30px 80px -20px var(--theme-rgba-45),
    0 14px 40px -10px rgba(0, 0, 0, 0.7),
    inset 0 0 0 1px rgba(255, 255, 255, 0.06);
  aspect-ratio: 4 / 3;
}
.sector-hero-photo img {
  width: 100%; height: 100%; object-fit: cover; display: block;
}

/* ─── SECCIONES ─── */
.sector-section {
  padding: 80px 0;
  border-top: 1px solid var(--hair);
}
@media (min-width: 1024px) { .sector-section { padding: 120px 0; } }

.sector-section-inner {
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 20px;
}
@media (min-width: 1024px) { .sector-section-inner { padding: 0 32px; } }

.sector-section .section-eyebrow { color: var(--theme-primary); }
.sector-section .section-title {
  background: linear-gradient(180deg, #fff 0%, #B7BFCD 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.sector-section .section-title .accent { color: var(--theme-primary); font-style: italic; }

/* Narrative paragraphs */
.sector-narrative {
  max-width: 70ch;
  font-size: 17px;
  color: var(--steel-200);
  line-height: 1.65;
  margin-top: 16px;
}
.sector-narrative p + p { margin-top: 18px; }
.sector-narrative strong { color: #fff; }

/* Pipeline steps */
.sector-pipeline {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  margin-top: 40px;
}
@media (min-width: 768px) { .sector-pipeline { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1024px) { .sector-pipeline { grid-template-columns: repeat(3, 1fr); gap: 20px; } }

.sp-step {
  padding: 24px;
  border-radius: var(--radius-lg);
  background: linear-gradient(180deg, var(--theme-rgba-08), rgba(255,255,255,0.02));
  border: 1px solid color-mix(in srgb, var(--theme-primary) 25%, transparent);
  transition: all 0.25s var(--ease-out);
}
.sp-step:hover {
  transform: translateY(-3px);
  border-color: var(--theme-primary);
  box-shadow: 0 18px 50px -16px var(--theme-rgba-45);
}
.sp-step-num {
  font-family: var(--font-mono); font-size: 11px;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: var(--theme-primary);
}
.sp-step-title {
  font-family: var(--font-display); font-size: 22px;
  color: #fff; margin-top: 12px; line-height: 1.15;
}
.sp-step-text {
  font-size: 14px; color: var(--steel-300);
  margin-top: 12px; line-height: 1.55;
}

/* Stats row */
.sector-stats {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  margin-top: 40px;
}
@media (min-width: 768px) { .sector-stats { grid-template-columns: repeat(3, 1fr); } }
.sector-stat {
  padding: 24px;
  border-radius: var(--radius-md);
  background: linear-gradient(180deg, var(--theme-rgba-12), var(--theme-rgba-08));
  border: 1px solid color-mix(in srgb, var(--theme-primary) 28%, transparent);
  text-align: center;
}
.sector-stat-num {
  font-family: var(--font-display);
  font-size: 48px; line-height: 1;
  background: linear-gradient(180deg, #fff 0%, var(--theme-primary-soft) 60%, var(--theme-primary) 110%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.sector-stat-lbl {
  font-size: 13px; color: var(--steel-300);
  margin-top: 8px; line-height: 1.4;
}

/* Métricas list */
.sector-metric-list {
  list-style: none;
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-top: 32px;
  max-width: 90ch;
}
@media (min-width: 768px) { .sector-metric-list { grid-template-columns: 1fr 1fr; gap: 16px 32px; } }
.sector-metric-list li {
  display: flex; gap: 12px;
  font-size: 15px;
  color: var(--steel-200);
  line-height: 1.5;
}
.sector-metric-list li::before {
  content: '◆';
  color: var(--theme-primary);
  flex-shrink: 0;
  font-size: 12px;
  margin-top: 6px;
}

/* FAQ */
.sector-faq-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  max-width: 880px;
  margin: 32px auto 0;
}
.sector-faq-item {
  padding: 20px 24px;
  background: var(--glass-bg);
  border: 1px solid var(--hair);
  border-radius: var(--radius-md);
  transition: all 0.25s var(--ease-out);
}
.sector-faq-item[open] {
  border-color: color-mix(in srgb, var(--theme-primary) 35%, transparent);
  background: linear-gradient(180deg, var(--theme-rgba-08), rgba(255,255,255,0.02));
}
.sector-faq-item summary {
  list-style: none; cursor: pointer;
  font-family: var(--font-display); font-size: 19px;
  color: #fff; padding-right: 32px; position: relative;
  line-height: 1.25;
}
.sector-faq-item summary::-webkit-details-marker { display: none; }
.sector-faq-item summary::after {
  content: '+'; position: absolute; right: 0; top: 50%;
  transform: translateY(-50%);
  font-family: var(--font-mono); font-size: 24px;
  color: var(--theme-primary); transition: transform 0.25s var(--ease-out);
}
.sector-faq-item[open] summary::after { content: '−'; transform: translateY(-50%) rotate(180deg); }
.sector-faq-item p {
  font-size: 15px; color: var(--steel-200); line-height: 1.6;
  margin-top: 14px; padding-top: 14px;
  border-top: 1px solid var(--hair);
}

/* CTA */
.sector-cta {
  position: relative;
  padding: 80px 0;
  border-top: 1px solid var(--hair);
}
@media (min-width: 1024px) { .sector-cta { padding: 120px 0; } }
.sector-cta::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(70% 50% at 50% 0%, var(--theme-rgba-18), transparent 60%),
    radial-gradient(60% 40% at 50% 100%, var(--theme-secondary-rgba-14), transparent 60%);
}
.sector-cta-inner {
  position: relative;
  max-width: 800px;
  margin: 0 auto;
  padding: 0 20px;
  text-align: center;
}
.sector-cta-title {
  font-family: var(--font-display);
  font-size: clamp(32px, 5vw, 52px);
  line-height: 1.05;
  background: linear-gradient(135deg, #fff 0%, var(--theme-primary-soft) 60%, var(--theme-primary) 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
  max-width: 22ch;
  margin: 0 auto;
}
.sector-cta-sub {
  font-size: 17px;
  color: var(--steel-300);
  margin-top: 20px;
  max-width: 60ch;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.55;
}
.sector-cta-actions {
  display: flex; flex-wrap: wrap; gap: 12px; justify-content: center;
  margin-top: 32px;
}
.sector-cta-actions .btn-primary {
  background: linear-gradient(135deg, var(--theme-primary), var(--theme-secondary));
  color: #fff;
}

/* Mosaic de otros sectores */
.sector-other {
  padding: 60px 0;
  border-top: 1px solid var(--hair);
}
.sector-other-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  max-width: var(--container);
  margin: 32px auto 0;
  padding: 0 20px;
}
@media (min-width: 768px) { .sector-other-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1024px) { .sector-other-grid { grid-template-columns: repeat(6, 1fr); gap: 16px; padding: 0 32px; } }
.so-card {
  display: flex; flex-direction: column; align-items: center; gap: 8px;
  padding: 20px 12px;
  border-radius: var(--radius-md);
  background: var(--glass-bg);
  border: 1px solid var(--hair);
  transition: all 0.25s var(--ease-out);
  text-align: center;
}
.so-card:hover {
  border-color: rgba(255,255,255,0.22);
  transform: translateY(-2px);
}
.so-card .e { font-size: 28px; }
.so-card .l { font-size: 13px; color: var(--steel-200); font-family: var(--font-display); }

/* HUB /sectores/ */
.sector-hub {
  padding: 80px 0;
}
@media (min-width: 1024px) { .sector-hub { padding: 120px 0; } }
.sector-hub-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  max-width: var(--container);
  margin: 48px auto 0;
  padding: 0 20px;
}
@media (min-width: 640px) { .sector-hub-grid { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1024px) { .sector-hub-grid { grid-template-columns: repeat(3, 1fr); gap: 24px; padding: 0 32px; } }

.shub-card {
  display: flex; flex-direction: column;
  padding: 0;
  border-radius: var(--radius-lg);
  background: var(--glass-bg);
  border: 1px solid var(--hair);
  overflow: hidden;
  transition: all 0.25s var(--ease-out);
}
.shub-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255,255,255,0.22);
  box-shadow: 0 24px 60px -20px rgba(0,0,0,0.6);
}
.shub-photo {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  position: relative;
}
.shub-photo img {
  width: 100%; height: 100%; object-fit: cover; display: block;
}
.shub-body {
  padding: 24px;
}
.shub-emoji { font-size: 32px; line-height: 1; }
.shub-title {
  font-family: var(--font-display); font-size: 24px;
  color: #fff; margin-top: 8px; line-height: 1.15;
}
.shub-text {
  font-size: 14px; color: var(--steel-300);
  margin-top: 12px; line-height: 1.55;
}
.shub-cta {
  margin-top: 16px;
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 14px;
  color: var(--steel-200);
  font-weight: 500;
  transition: transform 0.2s, color 0.2s;
}
.shub-card:hover .shub-cta { transform: translateX(3px); color: #fff; }
