
:root{--a:#f2d21c;--f:#060606;--t:rgba(255,255,255,.68)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body.pagina-contacto{margin:0;background:var(--f);color:#fff;font-family:Arial,Helvetica,sans-serif}a{text-decoration:none;color:inherit}.ct-contenedor{width:min(1180px,calc(100% - 40px));margin:auto}
.ct-header{position:fixed;inset:0 0 auto;z-index:1000;height:78px;background:rgba(5,5,5,.87);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(16px)}.ct-header-inner{width:min(1240px,calc(100% - 34px));height:100%;margin:auto;display:flex;align-items:center;gap:28px}.ct-logo img{width:84px;max-height:54px;object-fit:contain}.ct-nav{display:flex;gap:22px;margin-left:auto}.ct-nav a{font-size:10px;font-weight:900;letter-spacing:.8px;text-transform:uppercase;color:rgba(255,255,255,.62)}.ct-header-cta,.ct-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;text-transform:uppercase;font-weight:900;letter-spacing:.7px}.ct-header-cta{min-height:42px;padding:0 18px;background:var(--a);color:#171300;font-size:10px}
.ct-hero{position:relative;min-height:92vh;padding:150px 0 85px;display:flex;align-items:center;overflow:hidden;background:radial-gradient(circle at 78% 44%,rgba(242,210,28,.12),transparent 30%),linear-gradient(180deg,#050505,#111008 64%,#060606)}.ct-hero:after{content:"CONTACTO";position:absolute;top:8.5%;left:2.8vw;color:rgba(255,255,255,.04);font-size:clamp(90px,13vw,205px);font-weight:900;line-height:.82;letter-spacing:-9px;white-space:nowrap}.ct-trama{position:absolute;inset:0;opacity:.13;background:linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px);background-size:74px 74px}.ct-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.ct-etiqueta{display:block;margin-bottom:18px;color:var(--a);font-size:10px;font-weight:900;letter-spacing:2px;text-transform:uppercase}.ct-hero h1,.ct-seccion h2,.ct-final h2{margin:0;text-transform:uppercase;line-height:.88;letter-spacing:-4px}.ct-hero h1{font-size:clamp(72px,9vw,145px)}.ct-frase{margin:26px 0 0;font-size:24px;font-weight:800}.ct-texto{max-width:690px;margin:20px 0 0;color:var(--t);font-size:17px;line-height:1.75}.ct-botones{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.ct-btn{min-height:54px;padding:0 25px;border:1px solid transparent;font-size:11px}.ct-btn-principal{background:var(--a);color:#171300!important}.ct-btn-secundario{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.025);color:#fff!important}.ct-hero-panel{min-height:430px;padding:48px;border:1px solid rgba(255,255,255,.09);border-radius:28px;background:linear-gradient(145deg,rgba(242,210,28,.06),rgba(255,255,255,.015));display:flex;flex-direction:column;justify-content:flex-end}.ct-hero-panel>span{color:rgba(242,210,28,.6);font-size:94px;font-weight:900;line-height:.8}.ct-hero-panel strong{margin-top:120px;font-size:34px;text-transform:uppercase}.ct-hero-panel p{color:var(--t);font-size:16px;line-height:1.7}
.ct-seccion{padding:118px 0;scroll-margin-top:80px}.ct-seccion h2,.ct-final h2{font-size:clamp(48px,5.8vw,88px)}.ct-cabecera{margin-bottom:58px}.ct-info{background:#0a0a0a}.ct-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.ct-info-grid article{min-height:285px;padding:28px;border:1px solid rgba(255,255,255,.08);border-radius:19px;background:linear-gradient(145deg,rgba(242,210,28,.04),rgba(255,255,255,.012))}.ct-info-grid article>span{color:rgba(242,210,28,.55);font-size:42px;font-weight:900}.ct-info-grid h3{margin:54px 0 13px;font-size:24px;text-transform:uppercase}.ct-info-grid p{margin:0;color:var(--t);font-size:15px;line-height:1.7;overflow-wrap:anywhere}.ct-info-grid small{display:block;margin-top:10px;color:rgba(255,255,255,.46)}.ct-info-grid a,.ct-mapa-card a{display:inline-block;margin-top:20px;color:var(--a);font-size:10px;font-weight:900;letter-spacing:1px;text-transform:uppercase}
.ct-formulario{background:#070707}.ct-dos-columnas{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}.ct-dos-columnas>div>p{color:var(--t);font-size:17px;line-height:1.75}.ct-form{padding:34px;border:1px solid rgba(255,255,255,.09);border-radius:22px;background:#0e0e0e}.ct-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ct-form label{display:flex;flex-direction:column;gap:9px}.ct-form label>span{color:rgba(255,255,255,.72);font-size:11px;font-weight:900;text-transform:uppercase}.ct-ancho{grid-column:1/-1}.ct-form input,.ct-form select,.ct-form textarea{width:100%;border:1px solid rgba(255,255,255,.11);border-radius:12px;background:#080808;color:#fff;padding:15px 16px;font:inherit}.ct-privacidad{margin:20px 0;display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px!important}.ct-privacidad input{width:auto}.ct-privacidad span{font-size:12px!important;font-weight:400!important;text-transform:none!important;color:rgba(255,255,255,.55)!important}
.ct-ubicacion{background:#0b0b0b}.ct-mapa-card{min-height:420px;padding:42px;border:1px solid rgba(255,255,255,.09);border-radius:24px;background:radial-gradient(circle at 70% 30%,rgba(242,210,28,.10),transparent 32%),#101010;display:flex;flex-direction:column;justify-content:flex-end}.ct-mapa-card>span{color:var(--a);font-size:118px;font-weight:900;line-height:.8}.ct-mapa-card strong{margin-top:110px;font-size:30px;text-transform:uppercase}.ct-mapa-card p{color:var(--t)}
.ct-final{padding:125px 0;text-align:center;background:radial-gradient(circle,rgba(242,210,28,.12),transparent 38%),#111008}.ct-final h2{max-width:900px;margin:auto}.ct-final p{max-width:700px;margin:24px auto 0;color:var(--t);font-size:17px;line-height:1.75}.ct-centro{justify-content:center}
@media(max-width:1050px){.ct-nav{display:none}.ct-hero-grid,.ct-dos-columnas{grid-template-columns:1fr}.ct-info-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.ct-contenedor{width:min(100% - 28px,1180px)}.ct-header{height:68px}.ct-header-cta{font-size:8px;padding:0 13px}.ct-hero{min-height:auto;padding:112px 0 70px}.ct-hero:after{top:9%;left:4vw;font-size:clamp(58px,18vw,92px);letter-spacing:-5px}.ct-hero h1{font-size:clamp(58px,17vw,88px);letter-spacing:-4px}.ct-seccion,.ct-final{padding:84px 0}.ct-seccion h2,.ct-final h2{font-size:clamp(40px,12vw,60px);letter-spacing:-2px}.ct-info-grid,.ct-form-grid{grid-template-columns:1fr}.ct-ancho{grid-column:auto}.ct-form{padding:22px}}


/* =========================================================
   CONTACTO ZIP 2 — AJUSTES VISUALES
========================================================= */

/* Bajar la palabra gris CONTACTO y separar el contenido */
.ct-hero::after {
  top: 11.5% !important;
}

.ct-hero-grid {
  padding-top: 34px !important;
}

/* Hero un poco más compacto para acercar Hablemos */
.ct-hero {
  min-height: 86vh !important;
  padding-bottom: 55px !important;
}

.ct-info {
  padding-top: 82px !important;
}

/* Panel de confianza */
.ct-confianza {
  min-height: 470px !important;
  justify-content: center !important;
  padding: 42px !important;
}

.ct-panel-kicker {
  color: var(--a) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
}

.ct-confianza h2 {
  margin: 14px 0 32px !important;
  font-size: 42px !important;
  line-height: .96 !important;
  letter-spacing: -2px !important;
  text-transform: uppercase !important;
}

.ct-panel-lista {
  display: grid;
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ct-panel-lista li {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 14px;
  align-items: start;
}

.ct-check {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(242,210,28,.34);
  border-radius: 50%;
  color: var(--a);
  font-size: 14px;
  font-weight: 900;
  background: rgba(242,210,28,.05);
}

.ct-panel-lista strong {
  display: block;
  margin-bottom: 5px;
  font-size: 15px;
  text-transform: uppercase;
}

.ct-panel-lista p {
  margin: 0 !important;
  color: var(--t) !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

/* Iconos vectoriales en las tarjetas */
.ct-info-grid article > .ct-icono {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  color: var(--a);
}

.ct-icono svg {
  width: 42px;
  height: 42px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ct-info-grid h3 {
  margin-top: 45px !important;
}

/* Correo más limpio y legible */
.ct-email {
  font-size: 13px !important;
  line-height: 1.5 !important;
  word-break: break-word !important;
  overflow-wrap: anywhere !important;
}

@media (max-width: 650px) {
  .ct-hero-grid {
    padding-top: 16px !important;
  }

  .ct-confianza {
    min-height: auto !important;
    padding: 28px !important;
  }

  .ct-confianza h2 {
    font-size: 34px !important;
  }

  .ct-info {
    padding-top: 70px !important;
  }
}


/* =========================================================
   CONTACTO ZIP 3 — DIRECCIÓN Y CORREO
========================================================= */

/* Correo completo, legible y sin cortes incómodos */
.ct-info-grid .ct-email {
  display: block !important;
  margin-top: 0 !important;
  color: rgba(255,255,255,.76) !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  letter-spacing: -.15px !important;
  text-transform: none !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

/* Tarjeta de ubicación sin el número 49 gigante */
.ct-mapa-card {
  justify-content: center !important;
  align-items: flex-start !important;
}

.ct-mapa-card > span:first-child {
  font-size: inherit !important;
  line-height: normal !important;
}

.ct-mapa-icono {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 74px;
  height: 74px;
  margin-bottom: 34px;
  border: 1px solid rgba(242,210,28,.28);
  border-radius: 50%;
  color: var(--a);
  background: rgba(242,210,28,.045);
  box-shadow: 0 0 34px rgba(242,210,28,.07);
}

.ct-mapa-icono svg {
  width: 38px;
  height: 38px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ct-mapa-etiqueta {
  display: block !important;
  margin-bottom: 14px;
  color: var(--a) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 1.8px;
  text-transform: uppercase;
}

.ct-mapa-card strong {
  margin-top: 0 !important;
  max-width: 520px;
  font-size: clamp(34px, 4vw, 58px) !important;
  line-height: .95;
  letter-spacing: -2px;
}

.ct-mapa-card p {
  margin: 18px 0 0 !important;
}

@media (max-width: 650px) {
  .ct-info-grid .ct-email {
    font-size: 12px !important;
  }

  .ct-mapa-icono {
    width: 62px;
    height: 62px;
    margin-bottom: 26px;
  }

  .ct-mapa-icono svg {
    width: 32px;
    height: 32px;
  }
}


/* =========================================================
   CONTACTO ZIP 4 — ALINEACIÓN Y NOMBRE DEL MUNICIPIO
========================================================= */

/* Subir el contenido principal del hero */
.ct-hero-grid {
  transform: translateY(-36px) !important;
}

/* Mantener el panel derecho alineado con el título */
.ct-hero-panel,
.ct-confianza {
  transform: translateY(0) !important;
}

@media (max-width: 1050px) {
  .ct-hero-grid {
    transform: translateY(-22px) !important;
  }
}

@media (max-width: 650px) {
  .ct-hero-grid {
    transform: translateY(-10px) !important;
  }
}
