/* ===== Variables ===== */
:root {
  --black:   #07090d;
  --dark:    #0d1117;
  --dark2:   #131a24;
  --dark3:   #1a2333;
  --dark4:   #212d40;
  --gray:    #2d3a4f;
  --gray2:   #4a5568;
  --gray3:   #718096;
  --light:   #a0aec0;
  --white:   #ffffff;

  --blue:    #0ea5e9;
  --blue2:   #0284c7;
  --blue3:   #0369a1;
  --blue-glow: rgba(14, 165, 233, 0.25);

  --orange:  #f97316;
  --orange2: #ea6c0a;
  --orange-glow: rgba(249, 115, 22, 0.25);

  --wa:      #25D366;
  --wa2:     #128C7E;

  --font: 'Barlow', sans-serif;
  --font-cond: 'Barlow Condensed', sans-serif;

  --radius-sm: 8px;
  --radius:    12px;
  --radius-lg: 20px;
  --shadow:    0 4px 24px rgba(0,0,0,0.4);
  --shadow-lg: 0 8px 48px rgba(0,0,0,0.6);
  --transition: 0.3s ease;
}

/* ===== Reset ===== */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }
body {
  font-family: var(--font);
  background: var(--black);
  color: var(--white);
  line-height: 1.6;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}
img { max-width:100%; height:auto; display:block; }
a { text-decoration:none; color:inherit; transition: var(--transition); }
button { font-family:inherit; cursor:pointer; border:none; background:none; }

/* ===== Container ===== */
.container { width:100%; max-width:1280px; margin:0 auto; padding:0 24px; }
@media(min-width:768px){ .container{ padding:0 48px; } }

/* ===== Typography ===== */
h1,h2,h3 { font-family: var(--font-cond); font-weight:800; line-height:1.05; }
h4,h5 { font-family: var(--font); }
.accent-blue  { color: var(--blue); }
.accent-orange{ color: var(--orange); }
.br-desk { display:none; }
@media(min-width:768px){ .br-desk{ display:block; } }

/* ===== Tag ===== */
.tag {
  display:inline-block;
  font-size:0.72rem; font-weight:700; letter-spacing:0.15em; text-transform:uppercase;
  color: var(--blue);
  border: 1px solid rgba(14,165,233,0.3);
  background: rgba(14,165,233,0.07);
  padding:6px 14px; border-radius:100px; margin-bottom:16px;
}
.tag--light { color:var(--white); border-color:rgba(255,255,255,0.2); background:rgba(255,255,255,0.05); }

/* ===== Section Header ===== */
.section-header { margin-bottom:56px; }
.section-header.center { text-align:center; }
.section-header.center .section-sub { margin:0 auto; }
.section-title { font-size:clamp(2rem,5vw,3.2rem); margin-bottom:16px; text-transform:uppercase; letter-spacing:0.02em; }
.section-sub { font-size:1.0625rem; color:var(--gray3); max-width:580px; line-height:1.75; }

/* ===== Buttons ===== */
.btn-call {
  display:inline-flex; align-items:center; gap:10px;
  padding:16px 32px;
  background: var(--orange); color:var(--white);
  font-size:1rem; font-weight:700; font-family:var(--font);
  border-radius:var(--radius-sm); transition:var(--transition);
  letter-spacing:0.02em;
}
.btn-call:hover { background:var(--orange2); transform:translateY(-2px); box-shadow:0 8px 24px var(--orange-glow); }
.btn-call.btn-xl { padding:20px 48px; font-size:1.125rem; border-radius:var(--radius); }

.btn-wa {
  display:inline-flex; align-items:center; gap:10px;
  padding:16px 32px;
  background: var(--wa); color:var(--white);
  font-size:1rem; font-weight:700; font-family:var(--font);
  border-radius:var(--radius-sm); transition:var(--transition);
}
.btn-wa:hover { background:var(--wa2); transform:translateY(-2px); box-shadow:0 8px 24px rgba(37,211,102,0.3); }
.btn-wa.btn-xl { padding:20px 48px; font-size:1.125rem; border-radius:var(--radius); }
.btn-wa.btn-full { width:100%; justify-content:center; margin-top:8px; }

/* ===== Fade In ===== */
.fade-in { opacity:0; transform:translateY(28px); transition:opacity 0.65s ease, transform 0.65s ease; }
.fade-in.visible { opacity:1; transform:translateY(0); }

/* ===== Navbar ===== */
.navbar {
  position:fixed; top:0; left:0; right:0; z-index:1000;
  padding:16px 0; transition:var(--transition);
}
.navbar.scrolled {
  background:rgba(7,9,13,0.95);
  backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(14,165,233,0.1);
  padding:12px 0;
}
.nav-container {
  display:flex; align-items:center; justify-content:space-between;
  max-width:1280px; margin:0 auto; padding:0 24px;
}
@media(min-width:768px){ .nav-container{ padding:0 48px; } }

.nav-logo { display:flex; align-items:baseline; gap:2px; }
.logo-cm      { font-family:var(--font-cond); font-size:1.5rem; font-weight:900; color:var(--blue); letter-spacing:0.02em; }
.logo-special { font-family:var(--font-cond); font-size:1.5rem; font-weight:700; color:var(--white); }
.logo-service { font-family:var(--font-cond); font-size:1.5rem; font-weight:500; color:var(--gray3); }

.nav-links { display:none; gap:32px; }
@media(min-width:992px){ .nav-links{ display:flex; } }
.nav-links a { font-size:0.875rem; font-weight:500; color:var(--light); letter-spacing:0.03em; }
.nav-links a:hover { color:var(--blue); }

.nav-actions { display:flex; align-items:center; gap:10px; }
.btn-nav-call {
  display:none; align-items:center; gap:6px;
  padding:9px 18px;
  background:rgba(249,115,22,0.12); color:var(--orange);
  border:1px solid rgba(249,115,22,0.3);
  font-size:0.875rem; font-weight:600;
  border-radius:var(--radius-sm);
}
@media(min-width:992px){ .btn-nav-call{ display:inline-flex; } }
.btn-nav-call:hover { background:var(--orange); color:var(--white); }

.btn-nav-wa {
  display:none; align-items:center; gap:6px;
  padding:9px 18px;
  background:var(--wa); color:var(--white);
  font-size:0.875rem; font-weight:600;
  border-radius:var(--radius-sm);
}
@media(min-width:992px){ .btn-nav-wa{ display:inline-flex; } }
.btn-nav-wa:hover { background:var(--wa2); }

.mobile-toggle { display:flex; flex-direction:column; gap:5px; padding:8px; }
@media(min-width:992px){ .mobile-toggle{ display:none; } }
.mobile-toggle span { width:24px; height:2px; background:var(--white); transition:var(--transition); display:block; }
.mobile-toggle.active span:nth-child(1){ transform:rotate(45deg) translate(5px,5px); }
.mobile-toggle.active span:nth-child(2){ opacity:0; }
.mobile-toggle.active span:nth-child(3){ transform:rotate(-45deg) translate(5px,-5px); }

/* Mobile Menu */
.mobile-menu {
  position:fixed; inset:0; z-index:999;
  background:rgba(7,9,13,0.98);
  backdrop-filter:blur(20px);
  display:flex; align-items:center; justify-content:center;
  opacity:0; visibility:hidden; transition:var(--transition);
}
.mobile-menu.active { opacity:1; visibility:visible; }
.mobile-menu-inner { display:flex; flex-direction:column; align-items:center; gap:24px; text-align:center; }
.mobile-menu-inner a { font-family:var(--font-cond); font-size:2rem; font-weight:700; color:var(--white); text-transform:uppercase; letter-spacing:0.05em; }
.mobile-menu-inner a:hover { color:var(--blue); }
.mobile-menu-btns { display:flex; flex-direction:column; gap:12px; width:260px; margin-top:8px; }
.btn-call-full { padding:14px; background:var(--orange); color:var(--white); font-weight:700; font-size:1rem; border-radius:var(--radius-sm); text-align:center; }
.btn-wa-full   { padding:14px; background:var(--wa);     color:var(--white); font-weight:700; font-size:1rem; border-radius:var(--radius-sm); text-align:center; }

/* ===== Hero ===== */
.hero {
  position:relative; min-height:100vh;
  display:flex; align-items:center; justify-content:center;
  overflow:hidden;
}
.hero-bg { position:absolute; inset:0; background:var(--black); }
.hero-bg-img {
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover; object-position:center;
  opacity:0.25; display:block;
}
.hero-overlay {
  position:absolute; inset:0;
  background:
    linear-gradient(135deg, rgba(7,9,13,0.9) 0%, rgba(14,165,233,0.06) 50%, rgba(249,115,22,0.05) 100%),
    linear-gradient(to bottom, rgba(7,9,13,0.3) 0%, rgba(7,9,13,0.85) 100%);
}
.hero-lines {
  position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(14,165,233,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(14,165,233,0.04) 1px, transparent 1px);
  background-size:64px 64px;
}

.hero-content {
  position:relative; z-index:10;
  text-align:center;
  padding:140px 24px 80px;
  max-width:960px; width:100%;
}
@media(max-width:767px){ .hero-content{ padding:100px 20px 60px; } }

.hero-badges {
  display:flex; flex-wrap:wrap; justify-content:center; gap:10px;
  margin-bottom:32px;
}
.badge {
  display:inline-flex; align-items:center; gap:6px;
  font-size:0.78rem; font-weight:600; letter-spacing:0.05em;
  padding:7px 14px; border-radius:100px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.12);
  color:var(--light);
  backdrop-filter:blur(8px);
}
.badge--urgent {
  background:rgba(249,115,22,0.12);
  border-color:rgba(249,115,22,0.35);
  color:var(--orange);
  animation:badgePulse 2.5s ease-in-out infinite;
}
@keyframes badgePulse { 0%,100%{ box-shadow:0 0 0 0 rgba(249,115,22,0.3); } 50%{ box-shadow:0 0 0 6px rgba(249,115,22,0); } }

.hero-title {
  font-size:clamp(3.2rem,10vw,7.5rem);
  color:var(--white); text-transform:uppercase;
  letter-spacing:0.03em; margin-bottom:24px;
  text-shadow:0 4px 40px rgba(0,0,0,0.6);
}
.title-highlight {
  color:transparent;
  -webkit-text-stroke:3px var(--blue);
  text-shadow:0 0 40px var(--blue-glow), 0 0 80px rgba(14,165,233,0.15);
  display:inline-block;
}
@media(max-width:480px){ .title-highlight{ -webkit-text-stroke:2px var(--blue); } }

.hero-subtitle {
  font-size:clamp(1rem,2.5vw,1.3rem);
  color:var(--light); margin-bottom:40px; line-height:1.7;
}
.hero-subtitle strong { color:var(--orange); }

.hero-ctas {
  display:flex; flex-direction:column; align-items:center; gap:14px;
  margin-bottom:28px;
}
@media(min-width:480px){ .hero-ctas{ flex-direction:row; justify-content:center; } }

.hero-phones {
  display:flex; align-items:center; justify-content:center;
  gap:16px; flex-wrap:wrap;
}
.hero-phones a { font-size:0.9375rem; font-weight:600; color:var(--gray3); }
.hero-phones a:hover { color:var(--white); }
.ph-divider { color:var(--gray); }

.hero-scroll {
  position:absolute; bottom:28px; left:50%; transform:translateX(-50%);
  display:flex; flex-direction:column; align-items:center; gap:8px;
  color:rgba(255,255,255,0.3); font-size:0.7rem; letter-spacing:0.12em; text-transform:uppercase;
}
.scroll-line { width:1px; height:36px; background:linear-gradient(to bottom, rgba(14,165,233,0.5), transparent); animation:scrollA 2s ease-in-out infinite; }
@keyframes scrollA { 0%,100%{ opacity:1; } 50%{ opacity:0.2; } }

/* ===== Urgencia Banner ===== */
.urgencia-banner {
  background:linear-gradient(90deg, #0d1117 0%, #0f1e2e 50%, #0d1117 100%);
  border-top:1px solid rgba(249,115,22,0.2);
  border-bottom:1px solid rgba(249,115,22,0.2);
  padding:14px 0; overflow:hidden;
}
.ub-inner {
  max-width:1280px; margin:0 auto; padding:0 24px;
  display:flex; align-items:center; justify-content:center;
  gap:12px; flex-wrap:wrap; text-align:center;
}
.ub-pulse {
  width:10px; height:10px; border-radius:50%;
  background:var(--orange);
  animation:ubPulse 1.5s ease-in-out infinite; flex-shrink:0;
}
@keyframes ubPulse { 0%,100%{ opacity:1; transform:scale(1); } 50%{ opacity:0.4; transform:scale(1.4); } }
.ub-inner p { font-size:0.9rem; color:var(--light); }
.ub-inner p strong { color:var(--white); }
.ub-inner a { font-size:0.9rem; font-weight:700; color:var(--orange); }
.ub-inner a:hover { color:var(--white); }
.ub-sep { color:var(--gray2); }

/* ===== Servicios ===== */
.servicios { padding:120px 0; background:var(--dark); }

.servicios-grid { display:grid; grid-template-columns:1fr; gap:20px; }
@media(min-width:640px){ .servicios-grid{ grid-template-columns:repeat(2,1fr); } }
@media(min-width:1024px){ .servicios-grid{ grid-template-columns:repeat(3,1fr); } }

.serv-card {
  background:var(--dark2);
  border:1px solid rgba(255,255,255,0.06);
  border-radius:var(--radius);
  padding:32px 28px;
  display:flex; flex-direction:column; gap:0;
  transition:var(--transition);
  position:relative; overflow:hidden;
}
.serv-card::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg, rgba(14,165,233,0.04) 0%, transparent 60%);
  opacity:0; transition:var(--transition);
}
.serv-card:hover { transform:translateY(-6px); border-color:rgba(14,165,233,0.2); box-shadow:0 8px 32px rgba(14,165,233,0.1); }
.serv-card:hover::after { opacity:1; }
.serv-card--urgent { border-color:rgba(249,115,22,0.2); background:linear-gradient(135deg,#1a1200,#131a24); }
.serv-card--urgent:hover { border-color:rgba(249,115,22,0.4); box-shadow:0 8px 32px rgba(249,115,22,0.12); }

.serv-icon {
  width:60px; height:60px;
  display:flex; align-items:center; justify-content:center;
  border-radius:var(--radius-sm); margin-bottom:20px; flex-shrink:0;
}
.serv-icon svg { width:32px; height:32px; }
.serv-icon--blue   { background:rgba(14,165,233,0.1); color:var(--blue); border:1px solid rgba(14,165,233,0.2); }
.serv-icon--orange { background:rgba(249,115,22,0.1); color:var(--orange); border:1px solid rgba(249,115,22,0.2); }
.serv-icon--urgent { background:rgba(249,115,22,0.15); color:var(--orange); border:1px solid rgba(249,115,22,0.3);
  animation:iconPulse 2s ease-in-out infinite; }
@keyframes iconPulse { 0%,100%{ box-shadow:0 0 0 0 rgba(249,115,22,0.3); } 50%{ box-shadow:0 0 0 8px rgba(249,115,22,0); } }

.serv-body { flex:1; margin-bottom:20px; }
.serv-card h3 { font-size:1.2rem; text-transform:uppercase; letter-spacing:0.04em; margin-bottom:10px; color:var(--white); }
.serv-card p  { font-size:0.9rem; color:var(--gray3); line-height:1.7; }

.serv-cta { font-size:0.875rem; font-weight:700; color:var(--blue); display:inline-flex; align-items:center; gap:4px; letter-spacing:0.03em; }
.serv-cta:hover { gap:8px; color:var(--white); }
.serv-cta--urgent { color:var(--orange); }
.serv-cta--urgent:hover { color:var(--white); }

/* ===== Urgencia Section ===== */
.urgencia {
  padding:120px 0; position:relative;
  background:linear-gradient(135deg, #070d14 0%, #0d1a2e 50%, #070d14 100%);
  overflow:hidden;
}
.urgencia-bg {
  position:absolute; inset:0;
  background:
    radial-gradient(ellipse at 0% 50%, rgba(14,165,233,0.08) 0%, transparent 60%),
    radial-gradient(ellipse at 100% 50%, rgba(249,115,22,0.06) 0%, transparent 60%);
}
.urgencia-inner {
  position:relative; display:grid; grid-template-columns:1fr; gap:56px;
}
@media(min-width:992px){ .urgencia-inner{ grid-template-columns:1.2fr 1fr; align-items:center; } }

.urgencia-text h2 { font-size:clamp(2rem,5vw,3.2rem); margin-bottom:20px; text-transform:uppercase; }
.urgencia-text p { font-size:1.0625rem; color:var(--gray3); line-height:1.8; margin-bottom:32px; }

.urgencia-items { display:flex; flex-direction:column; gap:12px; margin-bottom:36px; }
.urg-item { display:flex; align-items:center; gap:12px; font-size:0.9375rem; color:var(--light); font-weight:500; }
.urg-dot { width:8px; height:8px; border-radius:50%; background:var(--blue); flex-shrink:0; box-shadow:0 0 8px var(--blue-glow); }
.urgencia-btns { display:flex; flex-wrap:wrap; gap:12px; }

.urgencia-stats {
  display:grid; grid-template-columns:repeat(2,1fr); gap:16px;
}
.urg-stat {
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.07);
  border-radius:var(--radius);
  padding:28px 24px; text-align:center;
  transition:var(--transition);
}
.urg-stat:hover { border-color:rgba(14,165,233,0.2); background:rgba(14,165,233,0.04); }
.ust-num { display:block; font-family:var(--font-cond); font-size:2.2rem; font-weight:800; color:var(--blue); margin-bottom:6px; }
.ust-label { display:block; font-size:0.8rem; color:var(--gray3); text-transform:uppercase; letter-spacing:0.08em; }

/* ===== Automatización ===== */
.automatizacion { padding:120px 0; background:var(--dark); }

.auto-grid { display:grid; grid-template-columns:1fr; gap:56px; }
@media(min-width:992px){ .auto-grid{ grid-template-columns:1fr 1fr; align-items:center; } }

.auto-visual { position:relative; border-radius:var(--radius-lg); overflow:hidden; }
.auto-visual img { width:100%; height:420px; object-fit:cover; border-radius:var(--radius-lg); border:1px solid rgba(14,165,233,0.15); }
.auto-badge {
  position:absolute; bottom:20px; left:20px; right:20px;
  display:flex; align-items:center; gap:14px;
  background:rgba(7,9,13,0.85);
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  border:1px solid rgba(14,165,233,0.2);
  border-radius:var(--radius); padding:16px 20px;
}
.auto-badge span { font-size:2rem; }
.auto-badge div { display:flex; flex-direction:column; gap:3px; }
.auto-badge strong { font-size:0.9375rem; color:var(--white); font-weight:600; }
.auto-badge span:last-child { font-size:0.8125rem; color:var(--blue); }

.auto-features { display:flex; flex-direction:column; gap:24px; margin-bottom:32px; }
.auto-feat { display:flex; align-items:flex-start; gap:16px; }
.af-icon {
  width:48px; height:48px; border-radius:var(--radius-sm); flex-shrink:0;
  background:rgba(14,165,233,0.08); border:1px solid rgba(14,165,233,0.15);
  display:flex; align-items:center; justify-content:center;
  font-size:1.4rem;
}
.auto-feat h4 { font-size:1rem; font-weight:700; color:var(--white); margin-bottom:6px; }
.auto-feat p  { font-size:0.875rem; color:var(--gray3); line-height:1.6; }

/* ===== Beneficios ===== */
.beneficios {
  padding:120px 0;
  background:linear-gradient(180deg,var(--black) 0%,var(--dark) 100%);
}
.benef-grid { display:grid; grid-template-columns:1fr; gap:20px; }
@media(min-width:640px){ .benef-grid{ grid-template-columns:repeat(2,1fr); } }
@media(min-width:992px){ .benef-grid{ grid-template-columns:repeat(3,1fr); } }

.benef-card {
  background:var(--dark2);
  border:1px solid rgba(255,255,255,0.06);
  border-radius:var(--radius); padding:32px 28px;
  transition:var(--transition);
}
.benef-card:hover { transform:translateY(-4px); border-color:rgba(14,165,233,0.15); box-shadow:var(--shadow); }
.bc-icon { font-size:2.2rem; margin-bottom:14px; }
.benef-card h4 { font-size:1.05rem; font-weight:700; margin-bottom:10px; color:var(--white); }
.benef-card p  { font-size:0.875rem; color:var(--gray3); line-height:1.7; }

/* ===== Galería ===== */
.galeria { padding:120px 0; background:var(--dark); }

.galeria-grid { display:grid; gap:12px; grid-template-columns:repeat(2,1fr); margin-bottom:0; }
@media(min-width:768px){
  .galeria-grid{ grid-template-columns:repeat(3,1fr); grid-template-rows:260px 260px; gap:16px; }
}

.gal-item {
  position:relative; overflow:hidden;
  border-radius:var(--radius); cursor:pointer;
  height:200px;
  border:1px solid rgba(255,255,255,0.05);
}
@media(min-width:768px){
  .gal-item{ height:auto; }
  .gal-item--large{ grid-column:span 1; grid-row:span 2; }
}
.gal-item img { width:100%; height:100%; object-fit:cover; transition:transform 0.6s ease; display:block; }
.gal-item:hover img { transform:scale(1.07); }

.gal-overlay {
  position:absolute; inset:0;
  background:linear-gradient(to top, rgba(7,9,13,0.9) 0%, rgba(14,165,233,0.3) 100%);
  display:flex; align-items:flex-end; padding:20px;
  opacity:0; transition:var(--transition);
}
.gal-item:hover .gal-overlay { opacity:1; }
.gal-overlay span { font-family:var(--font-cond); font-size:1.1rem; font-weight:700; color:var(--white); text-transform:uppercase; letter-spacing:0.06em; }

/* ===== Testimonios ===== */
.testimonios { padding:120px 0; background:var(--black); }

.test-grid { display:grid; grid-template-columns:1fr; gap:20px; }
@media(min-width:768px){ .test-grid{ grid-template-columns:repeat(3,1fr); } }

.test-card {
  background:var(--dark2);
  border:1px solid rgba(255,255,255,0.06);
  border-radius:var(--radius); padding:32px 28px;
  transition:var(--transition);
}
.test-card:hover { border-color:rgba(14,165,233,0.15); transform:translateY(-4px); }
.test-stars { color:var(--orange); font-size:1rem; margin-bottom:16px; letter-spacing:2px; }
.test-card p { font-size:0.9375rem; color:var(--light); line-height:1.75; margin-bottom:24px; font-style:italic; }
.test-author { display:flex; align-items:center; gap:12px; }
.test-avatar {
  width:44px; height:44px; border-radius:50%; flex-shrink:0;
  background:linear-gradient(135deg,var(--blue3),var(--blue));
  display:flex; align-items:center; justify-content:center;
  font-family:var(--font-cond); font-size:0.875rem; font-weight:700; color:var(--white);
}
.test-author strong { display:block; font-size:0.9375rem; color:var(--white); font-weight:600; }
.test-author span   { display:block; font-size:0.8125rem; color:var(--gray3); }

/* ===== CTA Final ===== */
.cta-final {
  position:relative; padding:140px 0; text-align:center;
  background:linear-gradient(135deg,#070d14 0%,#0d1a2e 50%,#070d14 100%);
  overflow:hidden;
}
.cta-bg {
  position:absolute; inset:0;
  background:
    radial-gradient(ellipse at 50% 0%,  rgba(14,165,233,0.12) 0%, transparent 55%),
    radial-gradient(ellipse at 80% 100%, rgba(249,115,22,0.08) 0%, transparent 50%);
}
.cta-inner { position:relative; z-index:1; max-width:720px; margin:0 auto; }
.cta-badge {
  display:inline-block;
  font-size:0.78rem; font-weight:700; letter-spacing:0.12em; text-transform:uppercase;
  color:var(--black); background:var(--orange);
  padding:8px 18px; border-radius:100px; margin-bottom:28px;
}
.cta-final h2 { font-size:clamp(2.5rem,7vw,5rem); margin-bottom:20px; text-transform:uppercase; }
.cta-final p  { font-size:1.125rem; color:var(--light); margin-bottom:48px; line-height:1.7; }
.cta-btns { display:flex; flex-direction:column; align-items:center; gap:14px; margin-bottom:32px; }
@media(min-width:500px){ .cta-btns{ flex-direction:row; justify-content:center; } }
.cta-phones { display:flex; align-items:center; justify-content:center; gap:16px; flex-wrap:wrap; }
.cta-phones a   { font-size:0.9375rem; font-weight:600; color:var(--gray3); }
.cta-phones a:hover { color:var(--white); }
.cta-phones span{ color:var(--gray2); }

/* ===== Footer ===== */
.footer { padding:72px 0 40px; background:#050709; border-top:1px solid rgba(14,165,233,0.08); }
.footer-grid { display:grid; grid-template-columns:1fr; gap:48px; margin-bottom:0; }
@media(min-width:768px){ .footer-grid{ grid-template-columns:2fr 1fr 1fr; } }

.footer-brand .footer-logo { display:flex; align-items:baseline; gap:2px; margin-bottom:16px; }
.footer-brand p { font-size:0.875rem; color:var(--gray3); line-height:1.8; }

.footer-links h5, .footer-contact h5 {
  font-size:0.75rem; font-weight:700; text-transform:uppercase; letter-spacing:0.14em;
  color:var(--white); margin-bottom:20px;
}
.footer-links a { display:block; font-size:0.875rem; color:var(--gray3); margin-bottom:10px; }
.footer-links a:hover { color:var(--blue); }

.fc-item { display:flex; align-items:center; gap:10px; font-size:0.875rem; color:var(--gray3); margin-bottom:12px; }
.fc-item:hover { color:var(--white); }
.fc-wa { color:var(--wa); }
.fc-wa:hover { color:var(--white); }
.fc-urgencia { font-size:0.8125rem; color:var(--orange); font-weight:600; margin-top:8px; }

/* ===== Footer Agencia ===== */
.footer-agency {
  background:#000000;
  border-top:1px solid rgba(14,165,233,0.12);
  padding:16px 0;
}
.footer-agency-inner {
  max-width:1280px; margin:0 auto; padding:0 24px;
  display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:8px;
}
@media(min-width:768px){ .footer-agency-inner{ padding:0 48px; } }
.footer-agency span { font-size:0.75rem; color:rgba(255,255,255,0.35); letter-spacing:0.03em; }
.footer-agency span:last-child { color:var(--blue); font-weight:600; letter-spacing:0.05em; }

/* ===== Floating Buttons ===== */
.float-btns {
  position:fixed; bottom:24px; right:24px; z-index:900;
  display:flex; flex-direction:column; gap:12px;
}
.float-call {
  width:54px; height:54px; border-radius:50%;
  background:var(--orange); color:var(--white);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 4px 20px var(--orange-glow); transition:var(--transition);
}
.float-call:hover { transform:scale(1.1); box-shadow:0 8px 28px rgba(249,115,22,0.5); }
.float-wa {
  width:60px; height:60px; border-radius:50%;
  background:var(--wa); color:var(--white);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 4px 20px rgba(37,211,102,0.4); transition:var(--transition);
}
.float-wa:hover { transform:scale(1.1); box-shadow:0 8px 28px rgba(37,211,102,0.55); }

/* ===== Responsive ===== */
@media(max-width:575px){
  .hero-ctas .btn-call, .hero-ctas .btn-wa { width:100%; justify-content:center; }
  .cta-btns .btn-call, .cta-btns .btn-wa  { width:100%; justify-content:center; }
  .urgencia-btns .btn-call, .urgencia-btns .btn-wa { width:100%; justify-content:center; }
}
