/* =========================================================
   SE & ZA · Empresa Multidisciplinaria
   Estilos del sitio estático
   ---------------------------------------------------------
   PALETA · cambiar aquí los colores institucionales
   ========================================================= */
:root{
  --copper-50:#FAF1E8;
  --copper-100:#F1DCC4;
  --copper-300:#E0986C;
  --copper-500:#D6701F;   /* color institucional principal */
  --copper-600:#B85A14;
  --copper-700:#8E420C;

  --ink-950:#161311;
  --ink-900:#1F1A17;      /* gris oscuro corporativo */
  --ink-800:#2A2420;
  --ink-700:#3A332E;
  --ink-500:#6B635D;
  --ink-400:#8C857F;
  --ink-300:#B5ADA6;

  --line:#E9E2D8;
  --paper:#FFFFFF;
  --cream:#FAF6EF;
  --cream-2:#F4EDE2;

  --serif:"Cormorant Garamond","Times New Roman",serif;
  --sans:"Source Sans 3",system-ui,-apple-system,Segoe UI,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,monospace;

  --pad-x:clamp(20px,5vw,56px);
  --max:1200px;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0; background:var(--paper); color:var(--ink-900);
  font-family:var(--sans); font-size:16px; line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
img{ max-width:100%; display:block; }
a{ color:inherit; }
button{ font:inherit; cursor:pointer; }

.container{ max-width:var(--max); margin:0 auto; padding:0 var(--pad-x); }

/* ====== Tipografía utilitaria ====== */
.display{
  font-family:var(--serif); font-weight:500;
  font-size:clamp(34px,4.5vw,54px); line-height:1.06;
  letter-spacing:-0.012em; margin:0 0 18px; text-wrap:balance;
}
.display em{ color:var(--copper-500); font-style:italic; font-weight:500; }
.display--center{ text-align:center; }
.display--light{ color:#fff; }
.lead{ font-size:17px; line-height:1.7; color:var(--ink-700); margin:0 0 18px; text-wrap:pretty; }
.body{ font-size:15.5px; line-height:1.75; color:var(--ink-500); margin:0; }

.eyebrow{
  font-family:var(--mono); font-size:11px; letter-spacing:.28em;
  text-transform:uppercase; color:var(--copper-600);
  margin:0 0 16px; display:flex; align-items:center; gap:12px;
}
.eyebrow--center{ justify-content:center; }
.eyebrow--light{ color:var(--copper-300); }
.eyebrow__rule{ display:inline-block; width:24px; height:1px; background:currentColor; }

.divider{ display:block; width:48px; height:2px; background:var(--copper-500); margin:14px 0 22px; }
.section__head .divider, .pilares__head .divider{ margin:14px auto 22px; }

.section__head{ text-align:center; max-width:760px; margin:0 auto 56px; }
.section__head--light .display{ color:#fff; }
.section__sub{ margin-top:14px; font-size:16.5px; color:var(--ink-500); line-height:1.65; }
.section__sub--light{ color:rgba(255,255,255,.7); }

/* ====== Botones ====== */
.btn{
  display:inline-block; text-decoration:none; cursor:pointer;
  font-family:var(--sans); font-weight:600; font-size:13px;
  letter-spacing:.18em; text-transform:uppercase;
  padding:15px 30px; border-radius:2px; border:1.5px solid transparent;
  transition:transform .15s, background .2s, color .2s, border-color .2s;
}
.btn--primary{ background:var(--copper-500); color:#fff; border-color:var(--copper-500); }
.btn--primary:hover{ background:var(--copper-600); border-color:var(--copper-600); }
.btn--ghost{ background:transparent; color:var(--ink-900); border-color:var(--ink-900); }
.btn--ghost:hover{ background:var(--ink-900); color:#fff; }
.btn--ghost-light{ background:transparent; color:#fff; border-color:rgba(255,255,255,.45); }
.btn--ghost-light:hover{ background:#fff; color:var(--ink-900); border-color:#fff; }
.btn--dark{ background:var(--ink-900); color:#fff; border-color:var(--ink-900); }
.btn--dark:hover{ background:var(--copper-500); border-color:var(--copper-500); }
.btn--sm{ padding:11px 18px; font-size:11.5px; letter-spacing:.20em; }

/* ====== Top bar ====== */
.topbar{ background:var(--ink-900); color:#fff; font-size:12.5px; }
.topbar__inner{
  max-width:var(--max); margin:0 auto; padding:9px var(--pad-x);
  display:flex; align-items:center; justify-content:center; gap:14px; flex-wrap:wrap;
}
.topbar__star{ color:var(--copper-300); }
.topbar__sep{ color:var(--copper-300); }
.topbar__link{ color:rgba(255,255,255,.7); text-decoration:none; }
.topbar__link:hover{ color:#fff; }

/* ====== Navegación ====== */
.nav{ background:#fff; border-bottom:1px solid var(--line); position:sticky; top:0; z-index:50; }
.nav__inner{
  max-width:var(--max); margin:0 auto; padding:18px var(--pad-x);
  display:flex; align-items:center; justify-content:center; gap:36px; position:relative;
}
.nav__links{ display:flex; gap:36px; list-style:none; padding:0; margin:0; }
.nav__links--left{ justify-content:flex-end; flex:1; }
.nav__links--right{ justify-content:flex-start; flex:1; }
.nav__link{
  color:var(--ink-700); text-decoration:none; font-size:13px; font-weight:600;
  letter-spacing:.14em; text-transform:uppercase; padding:6px 0;
  border-bottom:2px solid transparent; transition:color .2s, border-color .2s;
}
.nav__link:hover, .nav__link.is-active{ color:var(--copper-600); border-bottom-color:var(--copper-500); }

.nav__brand{
  display:flex; align-items:center; gap:14px; text-decoration:none; color:inherit;
  background:#fff; padding:10px 24px; border:1px solid var(--line); border-radius:4px;
  margin:0 8px;
}
.brand__mark{ display:flex; flex-direction:column; gap:3px; }
.brand__mark span{ display:block; height:3px; background:var(--copper-500); border-radius:1px; }
.brand__mark span:nth-child(1){ width:26px; }
.brand__mark span:nth-child(2){ width:22px; }
.brand__mark span:nth-child(3){ width:18px; }
.brand__mark span:nth-child(4){ width:14px; }
.brand__mark--light span{ background:#fff; }
.brand__name{ display:block; font-family:var(--serif); font-size:22px; font-weight:600; color:var(--copper-500); line-height:1; letter-spacing:-0.005em; }
.brand__tag{ display:block; font-family:var(--mono); font-size:9.5px; letter-spacing:.18em; color:var(--ink-500); text-transform:uppercase; margin-top:3px; }

.nav__burger{
  display:none; background:transparent; border:0; padding:8px; gap:5px;
  flex-direction:column; cursor:pointer;
}
.nav__burger span{ display:block; width:24px; height:2px; background:var(--ink-900); transition:transform .2s, opacity .2s; }
.nav__burger.is-open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.nav__burger.is-open span:nth-child(2){ opacity:0; }
.nav__burger.is-open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

.nav__mobile{
  display:none; flex-direction:column; gap:0;
  border-top:1px solid var(--line); background:#fff;
}
.nav__mobile.is-open{ display:flex; }
.nav__mlink{
  display:block; padding:18px var(--pad-x); text-decoration:none;
  color:var(--ink-900); font-size:14px; font-weight:600;
  letter-spacing:.14em; text-transform:uppercase; border-bottom:1px solid var(--line);
}
.nav__mlink:hover{ background:var(--cream); color:var(--copper-600); }
.nav__mcontact{ padding:20px var(--pad-x); display:flex; flex-direction:column; gap:8px; background:var(--cream); }
.nav__mcontact a{ font-family:var(--mono); font-size:13px; color:var(--ink-700); text-decoration:none; }

/* ====== HERO ====== */
.hero{
  position:relative; min-height:720px; padding:120px var(--pad-x) 160px;
  color:#fff; overflow:hidden;
  /* CAMBIAR · IMAGEN DE FONDO en .hero__bg
     Ej: background: url('assets/hero.jpg') center/cover; */
}
.hero__bg{
  position:absolute; inset:0; z-index:-1;
  background:
    linear-gradient(180deg, rgba(15,12,10,.78) 0%, rgba(20,16,14,.72) 60%, rgba(15,12,10,.92) 100%),
    radial-gradient(ellipse 720px 480px at 78% 28%, rgba(214,112,31,.16), transparent 65%),
    radial-gradient(ellipse 540px 380px at 12% 80%, rgba(214,112,31,.08), transparent 65%),
    linear-gradient(135deg,#2a221d 0%,#1d1612 100%);
}
.hero__bg::after{
  content:""; position:absolute; inset:0; opacity:.35;
  background-image:radial-gradient(rgba(255,255,255,.04) 1px, transparent 1px);
  background-size:3px 3px;
}
.hero__tag{
  position:absolute; font-family:var(--mono); font-size:10.5px;
  color:rgba(255,255,255,.5); letter-spacing:.22em; padding:6px 12px;
}
.hero__tag--tl{ left:28px; top:28px; border:1px solid rgba(255,255,255,.14); border-radius:2px; }
.hero__tag--tr{ right:28px; top:28px; }

.hero__content{ max-width:780px; margin:40px auto 0; text-align:center; }
.hero__eyebrow{
  font-family:var(--mono); font-size:11.5px; letter-spacing:.34em;
  color:var(--copper-300); text-transform:uppercase; margin:0 0 22px;
  display:flex; align-items:center; justify-content:center; gap:14px;
}
.hero__eyebrow .rule{ display:inline-block; width:30px; height:1px; background:var(--copper-300); }
.hero__title{
  font-family:var(--serif); font-weight:500;
  font-size:clamp(40px,6vw,78px); line-height:1.04;
  letter-spacing:-0.012em; margin:0 0 18px; text-wrap:balance;
}
.hero__title em{ color:var(--copper-300); font-style:italic; font-weight:500; }
.hero .divider{ margin:22px auto 26px; width:60px; }
.hero__sub{
  font-size:17px; line-height:1.65; color:rgba(255,255,255,.82);
  margin:0 auto 36px; max-width:620px; text-wrap:pretty;
}
.hero__ctas{ display:inline-flex; gap:14px; flex-wrap:wrap; justify-content:center; }

.hero__kpis{
  position:absolute; left:0; right:0; bottom:0;
  background:linear-gradient(180deg,rgba(11,8,6,0) 0%,rgba(11,8,6,.55) 100%);
  border-top:1px solid rgba(255,255,255,.08);
  padding:24px var(--pad-x);
  display:grid; grid-template-columns:repeat(4,1fr); gap:0;
}
.kpi{
  display:flex; gap:16px; align-items:center; padding:8px 24px;
  border-left:1px solid rgba(255,255,255,.08);
}
.kpi:first-child{ border-left:0; }
.kpi__num{
  font-family:var(--serif); font-size:42px; font-weight:500;
  color:var(--copper-300); line-height:1; font-style:italic;
  letter-spacing:-0.015em;
}
.kpi strong{ display:block; font-size:13.5px; color:#fff; font-weight:600; }
.kpi span{ display:block; font-size:12px; color:rgba(255,255,255,.55); line-height:1.35; }

/* ====== EMPRESA ====== */
.empresa{ background:#fff; padding:110px 0 0; }
.empresa__grid{
  display:grid; grid-template-columns:1fr 1.05fr; gap:80px; align-items:center;
}
.empresa__copy .eyebrow{ margin-bottom:18px; }
.empresa__stats{
  display:flex; gap:40px; padding-top:24px; margin-top:32px; border-top:1px solid var(--line);
}
.stat__num{
  display:block; font-family:var(--serif); font-size:38px; font-weight:500;
  color:var(--copper-500); font-style:italic; line-height:1; letter-spacing:-0.01em;
}
.stat__lbl{
  display:block; font-family:var(--mono); font-size:11px; letter-spacing:.22em;
  color:var(--ink-500); text-transform:uppercase; margin-top:6px;
}

.empresa__media{ position:relative; }
.empresa__photo{
  aspect-ratio:4/5; width:100%;
  background:repeating-linear-gradient(135deg,#ECE4DA 0 14px,#E2D8CB 14px 28px);
  border:1px solid #d8cfc1;
  display:flex; align-items:flex-end; padding:14px;
  font-family:var(--mono); font-size:10.5px; color:#7a6a55;
  /* CAMBIAR · IMAGEN
     background:url('assets/foto-equipo.jpg') center/cover; */
}
.empresa__quote{
  position:absolute; left:-30px; bottom:36px;
  background:var(--ink-900); color:#fff;
  padding:24px 28px; max-width:280px;
  border-left:3px solid var(--copper-500);
}
.empresa__quote .eyebrow{ font-size:10.5px; margin-bottom:8px; }
.empresa__quote p{ margin:0; font-size:14px; line-height:1.55; color:rgba(255,255,255,.85); }

/* ===== PILARES ===== */
.pilares{ padding:110px var(--pad-x) 0; }
.pilares__head{ text-align:center; max-width:680px; margin:0 auto 60px; }
.pilares__grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:0;
  border:1px solid var(--line); background:#fff; margin-bottom:0;
}
.pilar{ padding:44px 32px 40px; border-left:1px solid var(--line); }
.pilar:first-child{ border-left:0; }
.pilar__num{
  display:block; font-family:var(--serif); font-size:64px; font-weight:500;
  color:var(--copper-500); font-style:italic; line-height:.9; margin-bottom:18px;
  letter-spacing:-0.02em;
}
.pilar h4{ font-family:var(--serif); font-size:24px; font-weight:500; margin:0 0 14px; }
.pilar__rule{ display:block; width:24px; height:1.5px; background:var(--copper-500); margin-bottom:14px; }
.pilar p{ font-size:14.5px; line-height:1.65; color:var(--ink-500); margin:0; }

.empresa::after{ content:""; display:block; height:110px; background:var(--cream); }
.pilares{ background:var(--cream); padding-bottom:0; }

/* ====== SERVICIOS ====== */
.servicios{ background:#fff; padding:110px 0 0; }
.serv-list{ list-style:none; padding:0; margin:68px auto 0; max-width:1140px; counter-reset:servicio; }
.serv-row{
  display:grid; grid-template-columns:100px 1.1fr 1.4fr 130px;
  gap:40px; padding:38px 12px; align-items:center;
  border-top:1px solid var(--line);
  transition:background .2s;
}
.serv-row:last-child{ border-bottom:1px solid var(--line); }
.serv-row:hover{ background:var(--cream); }
.serv-row__num{
  font-family:var(--serif); font-size:54px; font-weight:500;
  color:var(--copper-500); font-style:italic; letter-spacing:-0.02em; line-height:.9;
}
.serv-row__cat{
  display:block; font-family:var(--mono); font-size:10.5px; letter-spacing:.24em;
  color:var(--ink-400); text-transform:uppercase; margin-bottom:6px;
}
.serv-row__head h3{
  font-family:var(--serif); font-size:28px; font-weight:500;
  margin:0; line-height:1.12; letter-spacing:-0.005em;
}
.serv-row p{ font-size:15px; line-height:1.65; color:var(--ink-500); margin:0; }
.serv-row__cta{
  font-family:var(--sans); font-size:11.5px; letter-spacing:.22em;
  text-transform:uppercase; color:var(--copper-600); font-weight:600;
  text-decoration:none; white-space:nowrap; justify-self:end;
  padding-bottom:6px; border-bottom:1.5px solid var(--copper-500);
  transition:color .2s;
}
.serv-row__cta:hover{ color:var(--copper-700); }

.serv-feature{ background:var(--cream); padding:110px var(--pad-x); margin-top:96px; }
.serv-feature__grid{
  max-width:1140px; margin:0 auto;
  display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center;
}
.serv-feature__media{
  aspect-ratio:4/5; width:100%;
  background:repeating-linear-gradient(135deg,#ECE4DA 0 14px,#E2D8CB 14px 28px);
  border:1px solid #d8cfc1;
  display:flex; align-items:flex-end; padding:14px;
  font-family:var(--mono); font-size:10.5px; color:#7a6a55;
  /* CAMBIAR · IMAGEN del servicio destacado */
}
.serv-feature__items{
  list-style:none; padding:0; margin:0 0 34px;
  display:grid; grid-template-columns:1fr 1fr; gap:14px;
}
.serv-feature__items li{
  font-size:14px; color:var(--ink-700); display:flex; gap:10px; align-items:flex-start;
}
.serv-feature__items li::before{ content:"—"; color:var(--copper-500); font-weight:700; }

/* ====== ELEGIRNOS ====== */
.elegirnos{
  background:var(--ink-900); color:#fff; padding:120px 0 110px;
  position:relative; overflow:hidden;
}
.elegirnos::before{
  content:""; position:absolute; inset:0;
  background:radial-gradient(ellipse 800px 500px at 50% 0%, rgba(214,112,31,.12), transparent 60%);
  pointer-events:none;
}
.elegirnos__grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:0;
  margin-top:84px; border:1px solid rgba(255,255,255,.08);
}
.razon{
  padding:36px 32px 38px;
  border-right:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.razon:nth-child(4n){ border-right:0; }
.razon:nth-child(n+5){ border-bottom:0; }
.razon__num{
  display:block; font-family:var(--serif); font-size:42px; font-weight:500;
  color:var(--copper-300); font-style:italic; line-height:.9;
  margin-bottom:18px; letter-spacing:-0.02em;
}
.razon h4{
  font-family:var(--serif); font-size:23px; font-weight:500;
  margin:0 0 4px; line-height:1.15; letter-spacing:-0.005em;
}
.razon h4 em{ color:var(--copper-300); font-style:italic; font-weight:500; }
.razon__rule{ display:block; width:24px; height:1px; background:var(--copper-500); margin:14px 0; }
.razon p{ font-size:13.5px; line-height:1.6; color:rgba(255,255,255,.62); margin:0; }

/* ====== OFICINAS ====== */
.oficinas{ background:var(--cream); padding:110px 0; }
.oficinas__grid{
  max-width:1140px; margin:68px auto 0;
  display:grid; grid-template-columns:1fr 1fr; gap:40px;
}
.oficina{ background:#fff; border:1px solid var(--line); }
.oficina__map{
  position:relative; height:280px;
  background:
    linear-gradient(rgba(245,220,200,.35),rgba(245,220,200,.35)),
    repeating-linear-gradient(0deg,#ece2d2 0 1px,transparent 1px 48px),
    repeating-linear-gradient(90deg,#ece2d2 0 1px,transparent 1px 48px),
    var(--cream);
  border-bottom:1px solid var(--line); overflow:hidden;
}
.oficina__map iframe{ width:100%; height:100%; border:0; display:block; }
.oficina__maptag{
  position:absolute; left:14px; top:14px; font-family:var(--mono); font-size:10px;
  color:var(--ink-400); background:#fff; padding:4px 10px;
  letter-spacing:.18em; border:1px solid var(--line);
}
.oficina__pin{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  width:42px; height:42px; border-radius:50% 50% 50% 0;
  background:var(--copper-500); transform-origin:center;
  transform:translate(-50%,-50%) rotate(-45deg);
  box-shadow:0 8px 18px rgba(214,112,31,.35);
}
.oficina__pin::after{
  content:""; position:absolute; left:50%; top:50%;
  transform:translate(-50%,-50%); width:10px; height:10px;
  border-radius:50%; background:#fff;
}
.oficina__ghost{
  position:absolute; right:18px; bottom:14px;
  font-family:var(--serif); font-style:italic; color:var(--copper-500);
  font-size:54px; font-weight:500; line-height:1; opacity:.35;
}
.oficina__body{ padding:32px 36px 36px; }
.oficina__body h3{ margin:6px 0 0; font-size:42px; }
.oficina__body .divider{ margin:14px 0 18px; width:34px; }
.oficina__addr{ font-size:15px; color:var(--ink-700); line-height:1.55; margin:0 0 22px; }
.oficina__cta{ display:flex; gap:10px; }
.oficina__cta .btn{ flex:1; text-align:center; }

/* ====== CONTACTO ====== */
.contacto{ background:#fff; padding:110px 0; }
.contacto__grid{
  max-width:1140px; margin:68px auto 0;
  display:grid; grid-template-columns:0.78fr 1.22fr; gap:0;
  border:1px solid var(--line);
}
.contacto__info{
  background:var(--ink-900); color:#fff; padding:48px 44px;
}
.contacto__info .display{ font-size:30px; margin-bottom:0; }
.contacto__info .divider{ margin:14px 0 26px; width:34px; }

.info-list{ margin:0; padding:0; }
.info-list > div{
  display:grid; grid-template-columns:100px 1fr; gap:14px; padding:16px 0;
  border-top:1px solid rgba(255,255,255,.1);
}
.info-list > div:last-child{ border-bottom:1px solid rgba(255,255,255,.1); }
.info-list dt{
  font-family:var(--mono); font-size:10.5px; letter-spacing:.22em;
  color:var(--copper-300); text-transform:uppercase; padding-top:3px;
}
.info-list dd{ margin:0; font-size:14.5px; color:#fff; font-weight:500; }
.info-list dd a{ color:#fff; text-decoration:none; border-bottom:1px solid rgba(255,255,255,.2); }
.info-list dd a:hover{ border-bottom-color:var(--copper-300); }

.info-hours{
  margin-top:32px; padding:18px 22px;
  background:rgba(214,112,31,.12); border-left:3px solid var(--copper-500);
}
.info-hours .eyebrow{ font-size:10.5px; margin-bottom:6px; }
.info-hours p:last-child{ margin:0; font-size:14px; color:rgba(255,255,255,.85); }

.contacto__form{ background:#fff; padding:48px 48px; }
.contacto__form .display{ font-size:30px; margin-bottom:0; }
.contacto__form .divider{ margin:14px 0 22px; width:34px; }
.form__note{ font-size:13.5px; color:var(--ink-500); margin:0 0 26px; }
.form__row{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.form__full{ display:block; margin-top:18px; }
.contacto__form label{ display:block; }
.contacto__form label > span{
  display:block; font-family:var(--mono); font-size:11px;
  letter-spacing:.22em; color:var(--copper-600);
  text-transform:uppercase; margin-bottom:6px;
}
.contacto__form input,
.contacto__form select,
.contacto__form textarea{
  width:100%; box-sizing:border-box; padding:12px 14px;
  border:1px solid var(--line); border-radius:2px;
  font-family:var(--sans); font-size:14px;
  background:#fff; color:var(--ink-900);
  transition:border-color .2s;
}
.contacto__form input:focus,
.contacto__form select:focus,
.contacto__form textarea:focus{
  outline:none; border-color:var(--copper-500);
}
.contacto__form textarea{ resize:vertical; min-height:120px; }
.form__foot{
  margin-top:24px; padding-top:24px; border-top:1px solid var(--line);
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px;
}
.form__check{
  font-size:12.5px; color:var(--ink-500);
  display:flex; gap:8px; align-items:center;
}
.form__btns{ display:flex; gap:10px; }

/* ====== Footer ====== */
.footer{ background:var(--ink-900); color:#fff; padding:56px 0 26px; }
.footer__brand{
  display:flex; align-items:center; justify-content:center; gap:14px; padding-bottom:18px;
}
.footer__name{ margin:0; font-family:var(--serif); font-size:24px; font-weight:600; color:var(--copper-300); line-height:1; }
.footer__tag{ margin:4px 0 0; font-family:var(--mono); font-size:10px; letter-spacing:.18em; color:rgba(255,255,255,.55); text-transform:uppercase; }
.footer__lead{
  text-align:center; font-size:13.5px; color:rgba(255,255,255,.55);
  max-width:520px; margin:0 auto 32px; padding-bottom:32px;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.footer__cols{
  display:grid; grid-template-columns:repeat(4,1fr); gap:36px;
  padding:0 0 36px;
}
.footer__h{
  font-family:var(--mono); font-size:11px; letter-spacing:.22em;
  color:var(--copper-300); text-transform:uppercase; margin:0 0 14px;
}
.footer__cols ul{ list-style:none; padding:0; margin:0; display:grid; gap:8px; }
.footer__cols li{ font-size:13px; color:rgba(255,255,255,.7); }
.footer__cols a{ text-decoration:none; color:inherit; }
.footer__cols a:hover{ color:var(--copper-300); }
.footer__bar{
  padding-top:22px; border-top:1px solid rgba(255,255,255,.08);
  display:flex; justify-content:space-between; align-items:center;
  font-size:12.5px; color:rgba(255,255,255,.45); flex-wrap:wrap; gap:8px;
}
.footer__loc{ font-family:var(--mono); letter-spacing:.15em; }

/* ====== WhatsApp flotante ====== */
.wsp{
  position:fixed; right:24px; bottom:24px; z-index:60;
  width:56px; height:56px; border-radius:50%;
  background:#25D366; color:#fff;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 12px 28px rgba(37,211,102,.45);
  transition:transform .2s;
}
.wsp:hover{ transform:translateY(-3px); }

/* ====== Responsive ====== */
@media (max-width: 980px){
  .nav__links{ display:none; }
  .nav__brand{ margin:0 auto 0 0; }
  .nav__inner{ justify-content:space-between; }
  .nav__burger{ display:flex; }

  .hero{ padding:80px var(--pad-x) 220px; min-height:auto; }
  .hero__kpis{ grid-template-columns:repeat(2,1fr); padding:18px var(--pad-x); }
  .kpi{ padding:8px 14px; }
  .kpi:nth-child(3){ border-left:0; }

  .empresa__grid{ grid-template-columns:1fr; gap:48px; }
  .empresa__quote{ position:static; margin-top:-48px; max-width:none; }
  .pilares__grid{ grid-template-columns:repeat(2,1fr); }
  .pilar:nth-child(3){ border-left:0; border-top:1px solid var(--line); }
  .pilar:nth-child(4){ border-top:1px solid var(--line); }

  .serv-row{ grid-template-columns:80px 1fr; gap:20px; padding:28px 8px; }
  .serv-row p{ grid-column:1 / -1; }
  .serv-row__cta{ grid-column:1 / -1; justify-self:start; }

  .serv-feature__grid{ grid-template-columns:1fr; gap:40px; }
  .serv-feature__items{ grid-template-columns:1fr; }

  .elegirnos__grid{ grid-template-columns:repeat(2,1fr); }
  .razon{ border-right:1px solid rgba(255,255,255,.08); border-bottom:1px solid rgba(255,255,255,.08); }
  .razon:nth-child(2n){ border-right:0; }
  .razon:nth-last-child(-n+2){ border-bottom:0; }

  .oficinas__grid{ grid-template-columns:1fr; }
  .contacto__grid{ grid-template-columns:1fr; }
  .form__row{ grid-template-columns:1fr; }
  .footer__cols{ grid-template-columns:repeat(2,1fr); }
  .footer__bar{ flex-direction:column; }
}

@media (max-width: 560px){
  .topbar__inner{ font-size:11.5px; gap:8px; }
  .hero__tag--tl{ display:none; }
  .hero__title{ font-size:36px; }
  .pilares__grid{ grid-template-columns:1fr; }
  .pilar{ border-left:0 !important; border-top:1px solid var(--line); }
  .pilar:first-child{ border-top:0; }
  .elegirnos__grid{ grid-template-columns:1fr; }
  .razon{ border-right:0 !important; }
  .razon:last-child{ border-bottom:0; }
  .footer__cols{ grid-template-columns:1fr; }
  .contacto__form, .contacto__info{ padding:32px 22px; }
  .serv-feature{ padding:80px 22px; }
}
/* =========================================================
   LOGO PERSONALIZADO SE & ZA
   ========================================================= */
.logo-seyza {
  display: block;
  width: auto;
  height: 64px;
  max-width: 230px;
  object-fit: contain;
}

.nav__brand {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px 18px;
  overflow: hidden;
}

@media (max-width: 980px) {
  .logo-seyza {
    height: 52px;
    max-width: 190px;
  }
}

@media (max-width: 560px) {
  .logo-seyza {
    height: 44px;
    max-width: 160px;
  }
}
/* =========================================================
   OFICINA ÚNICA + MAPA COMO IMAGEN
   ========================================================= */
.oficinas__grid--single {
  display: flex;
  justify-content: center;
}

.oficinas__grid--single .oficina {
  max-width: 560px;
  width: 100%;
}

.oficina__map--image {
  position: relative;
  overflow: hidden;
  padding: 0;
  background: #f7f0e8;
}

.oficina__map--image img {
  width: 100%;
  height: 100%;
  min-height: 260px;
  object-fit: cover;
  display: block;
}

.oficina__map--image .oficina__ghost {
  position: absolute;
  right: 18px;
  bottom: 12px;
  z-index: 2;
}
/* =========================================================
   AJUSTE FINAL FOOTER - CENTRADO SIMÉTRICO
   ========================================================= */

.footer {
  text-align: center;
}

.footer .container {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.footer__brand {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 14px;
}

.footer__brand > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.footer__name {
  text-align: center;
  margin: 0 auto;
}

.footer__tag {
  text-align: center;
  margin: 4px auto 0 auto;
}

.footer__lead {
  width: 100%;
  max-width: 620px;
  text-align: center;
  margin: 0 auto 34px auto;
  line-height: 1.55;
}

.footer__cols {
  width: 100%;
}

.footer__bar {
  width: 100%;
}
/* =========================================================
   IMÁGENES INSTITUCIONALES SE & ZA
   ========================================================= */

/* Imagen sección Quiénes somos */
.empresa__photo {
  background-image: url("assets/foto-reunion.jpg") !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  color: transparent !important;
  font-size: 0 !important;
}

/* Imagen sección Auditoría */
.serv-feature__media {
  background-image: url("assets/foto-auditoria.jpg") !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  color: transparent !important;
  font-size: 0 !important;
}
/* =========================================================
   AJUSTE TAMAÑO DE NÚMEROS DEL HERO
   ========================================================= */
.hero__kpis .kpi__num {
  font-size: 58px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  color: #c4652b !important;
  min-width: 90px !important;
  display: inline-block !important;
}

.hero__kpis .kpi strong {
  font-size: 16px !important;
  line-height: 1.2 !important;
}

.hero__kpis .kpi span:not(.kpi__num) {
  font-size: 13px !important;
}
/* =========================================================
   AJUSTE FINAL LOGO ENCABEZADO SE & ZA
   ========================================================= */

.nav__brand--custom {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 22px !important;
  min-width: 520px !important;
  padding: 12px 28px !important;
  text-decoration: none !important;
  background: #ffffff !important;
  border: 1px solid #E9E2D8 !important;
  border-radius: 4px !important;
}

.logo-seyza {
  height: 72px !important;
  width: auto !important;
  max-width: 95px !important;
  object-fit: contain !important;
  flex-shrink: 0 !important;
}

.logo-text {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  line-height: 1.05 !important;
}

.logo-text strong {
  font-family: "Source Sans 3", Arial, sans-serif !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  color: #D6701F !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}

.logo-text small {
  margin-top: 8px !important;
  font-family: "Source Sans 3", Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.24em !important;
  color: #2A2420 !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}

/* Ajuste para tablet */
@media (max-width: 980px) {
  .nav__brand--custom {
    min-width: auto !important;
    gap: 12px !important;
    padding: 8px 14px !important;
  }

  .logo-seyza {
    height: 56px !important;
    max-width: 75px !important;
  }

  .logo-text strong {
    font-size: 24px !important;
  }

  .logo-text small {
    font-size: 10px !important;
    letter-spacing: 0.16em !important;
  }
}

/* Ajuste para celular */
@media (max-width: 560px) {
  .logo-seyza {
    height: 46px !important;
    max-width: 60px !important;
  }

  .logo-text strong {
    font-size: 19px !important;
  }

  .logo-text small {
    font-size: 8px !important;
    letter-spacing: 0.12em !important;
  }
}