*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f1f1ef;color:#17191c;font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}header{height:62px;border-bottom:1px solid #d8d8d5;display:grid;grid-template-columns:130px 1fr auto;align-items:center;padding:0 4vw;position:sticky;top:0;background:#f1f1efee;z-index:9}.wordmark{font-size:20px;font-weight:700}nav{display:flex;gap:22px;font-size:11px}.pill{font-size:11px;border:1px solid #bbb;padding:9px 14px;border-radius:5px}.intro{min-height:58vh;padding:42px 7vw 28px;display:flex;flex-direction:column;justify-content:space-between}.meta,.caption{display:flex;justify-content:space-between;font-size:9px;color:#686868}.intro h1{font-size:clamp(82px,14vw,205px);letter-spacing:-.09em;line-height:.69;margin:30px 0;font-weight:600}.intro h1 span{font-size:13px;vertical-align:top}.intro-bottom{display:grid;grid-template-columns:1fr 1fr;gap:10vw;border-top:1px solid #ccc;padding-top:15px}.intro-bottom p{margin:0;font-size:13px}.intro-bottom .desc{font-size:18px;line-height:1.4}.feature{padding:10px 7vw 60px}.frame{background:#25282c;border-radius:9px;padding:3.5vw;position:relative}.frame img{width:100%;display:block;max-height:54vh;object-fit:cover;border-radius:6px}.floating{position:absolute;right:7vw;bottom:7vw;background:#f3f3ef;width:255px;padding:18px;border-radius:6px;display:flex;flex-direction:column;gap:15px}.floating small,.section-title small,.statement small,.palette small,.brands small,.contact small{font-size:9px}.floating b{font-size:21px}.floating a{font-size:10px;border-top:1px solid #ccc;padding-top:12px}.caption{padding-top:10px}.statement{padding:75px 7vw;border-top:1px solid #d4d4d1;display:grid;grid-template-columns:1fr 3fr}.statement p{font-size:clamp(32px,4.3vw,64px);letter-spacing:-.05em;line-height:1.05;margin:0}.statement strong{font-weight:400;color:#92928f}.highlights,.diagnosis{padding:72px 7vw;border-top:1px solid #d4d4d1}.section-title{display:grid;grid-template-columns:1fr 3fr;margin-bottom:38px}.section-title h2{font-size:clamp(44px,5.2vw,76px);letter-spacing:-.055em;line-height:.95;margin:0;font-weight:500}.cards{display:grid;grid-template-columns:1fr 1fr;gap:34px 14px}.visual{height:300px;background:#24272b;border-radius:7px;padding:22px;color:#fff;position:relative;display:grid;place-items:center;overflow:hidden}.visual>span{position:absolute;top:18px;left:18px;font-size:9px}.phone{height:180px;width:95px;border:6px solid #101214;border-radius:24px;display:grid;place-items:center;font-size:42px;background:#0788ff}.v2 .phone{background:#ddd;color:#111}.v3 .phone{transform:rotate(12deg);background:#111;color:#0788ff}.v4 .phone{transform:rotate(-12deg)}article h3{font-size:13px;margin:10px 0 4px;display:flex;justify-content:space-between}article p{font-size:10px;color:#747474;margin:0}.faults{border-top:1px solid #bbb}.faults a{display:grid;grid-template-columns:65px 1fr auto;padding:16px 5px;border-bottom:1px solid #bbb;align-items:center}.faults a:hover{background:#0788ff;color:#fff}.faults b{font-size:9px}.faults span{font-size:clamp(24px,3.5vw,48px)}.faults i{font-style:normal}.palette{padding:75px 7vw;border-top:1px solid #d4d4d1;display:grid;grid-template-columns:1fr 2fr;align-items:center}.swatches{display:flex;justify-content:center}.swatches>div{height:240px;width:175px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;border-radius:8px;margin-left:-22px}.swatches b{font-size:54px;font-weight:400;align-self:flex-end}.blue{background:#0788ff;color:white;transform:rotate(-3deg)}.black{background:#15171a;color:white;transform:rotate(2deg)}.brands{padding:65px 0;border-top:1px solid #d4d4d1;overflow:hidden}.brands>small,.brands>p{margin-left:7vw}.marquee{margin:28px 0 20px;white-space:nowrap;font-size:clamp(55px,8vw,115px);letter-spacing:-.06em}.marquee div{display:inline-block;animation:marquee 22s linear infinite}.brands p{font-size:10px;color:#747474}.contact{background:#16191d;color:#f4f4f1;padding:72px 7vw}.contact h2{font-size:clamp(62px,9vw,130px);line-height:.8;letter-spacing:-.07em;margin:38px 0}.contact>p{font-size:18px;color:#9ca0a5;max-width:620px}.big-button{margin-top:35px;border-top:1px solid #555;border-bottom:1px solid #555;padding:18px 0;display:flex;justify-content:space-between;font-size:clamp(28px,4vw,55px)}.contact em{display:block;margin-top:15px;color:#6f747a;font-size:9px}footer{background:#16191d;color:#a0a4aa;border-top:1px solid #34383d;padding:25px 7vw;display:grid;grid-template-columns:1fr 2fr 2fr auto;font-size:10px;gap:25px}@keyframes marquee{to{transform:translateX(-50%)}}@media(max-width:750px){header{grid-template-columns:1fr auto}nav{display:none}.intro{min-height:55vh}.intro h1{font-size:24vw}.intro-bottom,.statement,.section-title,.palette{grid-template-columns:1fr;gap:25px}.floating{position:relative;right:auto;bottom:auto;width:100%;margin-top:12px}.cards{grid-template-columns:1fr}.visual{height:270px}.contact h2{font-size:20vw}footer{grid-template-columns:1fr 1fr}}
/* ===== SMARTPHONE V4 — marca animada + visuales premium ===== */
.wordmark{
  display:flex;align-items:center;gap:10px;overflow:visible
}
.brand-mark{
  width:34px;height:34px;border-radius:9px;overflow:hidden;display:inline-grid;
  place-items:center;background:#101318;box-shadow:0 0 0 1px #d7d7d7;
  animation:brandFloat 3.6s ease-in-out infinite;
  transform-origin:center
}
.brand-mark img{width:100%;height:100%;object-fit:cover;transform:scale(1.55)}
.brand-name{display:inline-block}
@keyframes brandFloat{
  0%,100%{transform:translateY(0) rotate(0deg)}
  45%{transform:translateY(-4px) rotate(-3deg)}
  60%{transform:translateY(-2px) rotate(2deg)}
}
@media (prefers-reduced-motion:reduce){.brand-mark{animation:none}}

/* Servicio: sustituye la sensación de iconos genéricos por escenas técnicas */
.visual{
  background-color:#171a1f;
  background-size:cover;background-position:center;
  isolation:isolate
}
.visual:before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(5,8,12,.05),rgba(5,8,12,.38));
  z-index:-1
}
.visual .phone{
  box-shadow:0 22px 55px rgba(0,0,0,.38),0 0 32px rgba(0,136,255,.18);
  transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s
}
article:hover .phone{transform:translateY(-8px) rotate(-2deg);box-shadow:0 28px 70px rgba(0,0,0,.48),0 0 42px rgba(0,136,255,.28)}
article:nth-child(2):hover .phone{transform:translateY(-8px) rotate(2deg)}
article:nth-child(3):hover .phone{transform:translateY(-8px) rotate(7deg)}
article:nth-child(4):hover .phone{transform:translateY(-8px) rotate(-7deg)}

/* Acento de luz que recorre las tarjetas al pasar */
.visual:after{
  content:"";position:absolute;inset:-60% -30%;pointer-events:none;
  background:linear-gradient(110deg,transparent 42%,rgba(255,255,255,.12) 50%,transparent 58%);
  transform:translateX(-75%) rotate(8deg);transition:transform .8s ease
}
article:hover .visual:after{transform:translateX(75%) rotate(8deg)}

/* Hero/logo principal más integrado y menos pesado */
.frame img{filter:contrast(1.04) saturate(.96);transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.frame:hover img{transform:scale(1.018)}
.floating{backdrop-filter:blur(10px);background:rgba(243,243,239,.92)}

/* Microinteracciones editoriales */
.faults a{transition:padding .25s ease,background .25s ease,color .25s ease}
.faults a:hover{padding-left:16px;padding-right:16px}
.big-button{transition:padding .3s ease,color .3s ease}
.big-button:hover{padding-left:12px;padding-right:12px;color:#0788ff}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
.reveal.is-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* V5 — contacto real */
.wa-float{position:fixed;right:22px;bottom:22px;z-index:30;display:flex;align-items:center;gap:9px;background:#16191d;color:#fff;padding:9px 13px 9px 9px;border-radius:999px;box-shadow:0 12px 35px #0003;font-size:10px;transition:transform .25s ease}
.wa-float:hover{transform:translateY(-4px)}
.wa-float span{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#0788ff;font-size:9px;font-weight:700}
.wa-float b{font-weight:500}
footer a{color:inherit;text-decoration:none}
footer a:hover{color:#fff}
@media(max-width:750px){.wa-float b{display:none}.wa-float{padding:8px;right:14px;bottom:14px}}

/* V5.2 — datos de información con mayor legibilidad */
.contact em{
  font-size:14px;
  line-height:1.65;
  color:#d9dde2;
  font-weight:500;
  letter-spacing:.01em;
  margin-top:22px;
  max-width:900px;
}
footer{
  font-size:13px;
  line-height:1.55;
}
footer div{
  gap:10px;
}
footer div span:first-child,
footer div a:first-child{
  color:#f2f3f4;
  font-weight:600;
}
footer a, footer span{
  letter-spacing:.005em;
}
.wa-float{
  font-size:12px;
}
@media(max-width:750px){
  .contact em{font-size:13px}
  footer{font-size:12px}
}

/* V6 — contacto por bloques + nueva dirección visual */
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:42px 0 12px}
.info-card{background:#f3f3ef;color:#17191c;border-radius:9px;padding:24px;min-height:225px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 10px 30px rgba(0,0,0,.08)}
.info-card .info-icon{width:38px;height:38px;border-radius:10px;background:#0788ff;color:#fff;display:grid;place-items:center;font-size:11px;font-weight:700;margin-bottom:25px}
.info-card small{font-size:9px;color:#74787d;letter-spacing:.08em}
.info-card h3{font-size:clamp(18px,1.8vw,27px);letter-spacing:-.035em;line-height:1.05;margin:10px 0 12px;overflow-wrap:anywhere}
.info-card p{font-size:13px;line-height:1.45;color:#53575c;margin:0 0 20px}
.info-card a{margin-top:auto;border-top:1px solid #d4d4d0;width:100%;padding-top:13px;font-size:11px;font-weight:600}
.info-card a:hover{color:#0788ff}
.feature .frame{overflow:hidden}
.feature .frame>img{max-height:none;aspect-ratio:16/9;object-fit:cover;object-position:center top}
@media(max-width:850px){.contact-grid{grid-template-columns:1fr}.info-card{min-height:190px}.feature .frame>img{aspect-ratio:4/3}}

/* V7 — galería visual + footer corregido */
.work-visuals{padding:70px max(24px,5vw);background:#ecece7;color:#15171a}
.section-head{display:grid;grid-template-columns:.7fr 1.5fr 1fr;gap:25px;align-items:end;margin-bottom:25px}
.section-head span{font-size:9px;letter-spacing:.12em}
.section-head h2{font-size:clamp(38px,5vw,78px);letter-spacing:-.055em;line-height:.9;margin:0}
.section-head p{font-size:12px;line-height:1.55;color:#64676a;margin:0}
.visual-grid{display:grid;grid-template-columns:1.45fr 1fr;grid-template-rows:1fr 1fr;gap:10px}
.visual-grid figure{margin:0;position:relative;overflow:hidden;border-radius:7px;background:#0c1118;min-height:250px}
.visual-grid .visual-main{grid-row:1/3;min-height:520px}
.visual-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.visual-grid figure:hover img{transform:scale(1.025)}
.visual-grid figcaption{position:absolute;left:14px;bottom:14px;background:rgba(10,13,17,.78);backdrop-filter:blur(8px);color:white;padding:8px 11px;border-radius:99px;font-size:9px}
.site-footer{display:grid;grid-template-columns:1.1fr 1.3fr 1.3fr auto;gap:35px;align-items:start;padding:35px max(24px,5vw);font-size:13px;line-height:1.55}
.site-footer>div{display:flex;flex-direction:column;gap:5px}
.site-footer b{font-size:17px;letter-spacing:-.02em}
.site-footer strong{font-size:14px}
.site-footer span,.site-footer a{display:block}
.footer-contact a{font-size:13px}
.footer-copy{white-space:nowrap}
@media(max-width:850px){
 .section-head{grid-template-columns:1fr}.visual-grid{grid-template-columns:1fr;grid-template-rows:auto}
 .visual-grid .visual-main{grid-row:auto;min-height:330px}.visual-grid figure{min-height:260px}
 .site-footer{grid-template-columns:1fr;gap:22px}
}

/* V7.1 FIX — elimina huecos y garantiza imágenes visibles */
.image-strip{padding:44px max(24px,5vw);background:#e9e9e4;color:#15171a}
.image-strip-copy{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}
.image-strip-copy small{font-size:9px;letter-spacing:.12em}
.image-strip-copy h2{font-size:clamp(30px,4vw,58px);line-height:.95;letter-spacing:-.05em;margin:0;max-width:760px}
.image-strip-media{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px;height:330px}
.image-strip-media figure{margin:0;overflow:hidden;border-radius:7px;background:#111}
.image-strip-media img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transition:transform .5s ease}
.image-strip-media figure:hover img{transform:scale(1.02)}
.work-visuals{display:none!important}
@media(max-width:850px){
 .image-strip{padding-top:32px;padding-bottom:32px}
 .image-strip-copy{display:block}.image-strip-copy small{display:block;margin-bottom:10px}
 .image-strip-media{height:auto;grid-template-columns:1fr}
 .image-strip-media figure{height:230px}
}

/* V8 — imágenes reales separadas + compactación del espacio */
.hero{position:relative}
.hero-photo{margin-top:24px;width:100%;height:clamp(260px,34vw,520px);overflow:hidden;border-radius:8px;background:#0b1017}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.photo-services{padding:54px max(24px,5vw);background:#f0f0ec;color:#15171a}
.photo-intro{display:grid;grid-template-columns:.55fr 1.5fr .8fr;gap:20px;align-items:end;margin-bottom:22px}
.photo-intro small{font-size:9px;letter-spacing:.12em}
.photo-intro h2{font-size:clamp(34px,4.5vw,68px);line-height:.92;letter-spacing:-.055em;margin:0}
.photo-intro p{font-size:12px;line-height:1.5;margin:0;color:#666}
.photo-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.photo-cards article{background:#fff;border-radius:7px;overflow:hidden;font-size:13px}
.photo-cards img{width:100%;height:175px;object-fit:cover;display:block;transition:transform .45s ease}
.photo-cards article:hover img{transform:scale(1.035)}
.photo-cards b{display:block;padding:12px 13px 14px}
.lab-feature{margin-top:10px;background:#111820;color:#fff;display:grid;grid-template-columns:.8fr 1.2fr;min-height:310px;border-radius:7px;overflow:hidden}
.lab-feature>div{padding:35px;display:flex;flex-direction:column;justify-content:center}
.lab-feature small{font-size:9px;letter-spacing:.12em;color:#75baff}
.lab-feature h3{font-size:clamp(28px,3vw,48px);line-height:.95;letter-spacing:-.045em;margin:12px 0}
.lab-feature p{font-size:12px;line-height:1.55;color:#c9ced3;max-width:430px}
.lab-feature img{width:100%;height:100%;min-height:310px;object-fit:cover}
.image-strip,.work-visuals{display:none!important}

/* Quitar alturas excesivas que producían grandes zonas vacías */
.diagnosis,.palette,.brands,.contact{min-height:0!important}
section{scroll-margin-top:70px}
@media(max-width:850px){
 .photo-intro{grid-template-columns:1fr}
 .photo-cards{grid-template-columns:repeat(2,1fr)}
 .photo-cards img{height:145px}
 .lab-feature{grid-template-columns:1fr}
 .lab-feature img{height:250px;min-height:0}
}

/* V8.1 FIX VISIBILIDAD */
.photo-services{opacity:1!important;visibility:visible!important;transform:none!important;display:block!important}
.photo-services img{opacity:1!important;visibility:visible!important}
.statement{min-height:0!important;padding-top:55px!important;padding-bottom:55px!important}
.highlights,.diagnosis,.palette,.brands,.contact{min-height:0!important}

/* =========================================================
   V10 — CAMBIO VISUAL REAL
   ========================================================= */

/* Fuera el antiguo bloque de 4 renders genéricos */
.v10-legacy-highlights{display:none!important}

/* Hero más compacto */
.hero{
  min-height:0!important;
  padding-top:48px!important;
  padding-bottom:32px!important;
}
.hero h1{
  font-size:clamp(76px,13vw,190px)!important;
  line-height:.72!important;
  letter-spacing:-.085em!important;
}
.hero-media,.hero-visual,.showcase{
  margin-top:28px!important;
}

/* Declaración más compacta */
.statement{
  min-height:0!important;
  padding:54px 0!important;
}
.statement h2,.statement .statement-text{
  font-size:clamp(42px,6vw,86px)!important;
  line-height:.94!important;
}

/* Las FOTOS sustituyen al bloque genérico */
.photo-services{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  padding:58px max(5vw,28px) 70px!important;
  background:#f3f2ee!important;
}
.v10-photo-intro{
  display:grid;
  grid-template-columns:.7fr 2fr 1fr;
  gap:28px;
  align-items:end;
  margin:0 0 34px;
  padding-bottom:24px;
  border-bottom:1px solid rgba(0,0,0,.18);
}
.v10-kicker{
  font-size:11px;
  letter-spacing:.08em;
}
.v10-photo-intro h2{
  margin:0;
  font-size:clamp(48px,6.8vw,100px);
  line-height:.86;
  letter-spacing:-.065em;
  font-weight:500;
}
.v10-photo-intro h2 span{color:#7b7f87}
.v10-photo-intro p{
  margin:0;
  font-size:15px;
  line-height:1.35;
}

/* rejilla fotográfica dominante */
.photo-services .photo-grid,
.photo-services .photos-grid,
.photo-services > .grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}
.photo-services article,
.photo-services .photo-card{
  background:#fff!important;
  overflow:hidden!important;
  border-radius:2px!important;
}
.photo-services img{
  display:block!important;
  width:100%!important;
  height:230px!important;
  object-fit:cover!important;
  opacity:1!important;
  visibility:visible!important;
  filter:saturate(.92) contrast(1.03);
  transition:transform .45s ease!important;
}
.photo-services article:hover img,.photo-services .photo-card:hover img{
  transform:scale(1.025)!important;
}
.photo-services h3,.photo-services .photo-title{
  margin:10px 12px 13px!important;
  font-size:14px!important;
  font-weight:500!important;
}

/* imagen panorámica/técnico más protagonista */
.photo-services .wide,
.photo-services .featured,
.photo-services .photo-wide{
  grid-column:1/-1!important;
}
.photo-services .wide img,
.photo-services .featured img,
.photo-services .photo-wide img{
  height:clamp(300px,36vw,510px)!important;
}

/* Diagnóstico mucho menos aire */
.diagnosis{
  min-height:0!important;
  padding:58px max(5vw,28px)!important;
}
.diagnosis h2{
  font-size:clamp(54px,7vw,105px)!important;
  line-height:.86!important;
}
.diagnosis-row,.issue-row{
  min-height:0!important;
  padding:14px 0!important;
}

/* Identidad: de pantalla completa a franja */
.palette{
  min-height:0!important;
  padding:34px max(5vw,28px)!important;
}
.palette-grid,.identity-grid{
  min-height:0!important;
  align-items:center!important;
}
.palette-card,.color-card{
  min-height:150px!important;
  height:180px!important;
}

/* Marcas: franja editorial controlada */
.brands{
  min-height:0!important;
  height:auto!important;
  padding:26px 0 30px!important;
  overflow:hidden!important;
}
.brands-track,.marquee-track,.brand-line{
  font-size:clamp(46px,6.5vw,96px)!important;
  line-height:.85!important;
  white-space:nowrap!important;
}

/* Contacto compacto y legible */
.contact{
  min-height:0!important;
  padding-top:58px!important;
  padding-bottom:36px!important;
}
.contact-card h3,.contact-card strong{
  font-size:clamp(20px,1.8vw,28px)!important;
}
.contact-card p,.contact-card a,footer{
  font-size:14px!important;
  line-height:1.45!important;
}

/* Movimiento visible pero elegante del logo */
.brand img,.logo img,.site-logo img{
  animation:v10float 4.2s ease-in-out infinite!important;
}
@keyframes v10float{
  0%,100%{transform:translateY(0) rotate(0)}
  50%{transform:translateY(-5px) rotate(-2deg)}
}

@media(max-width:760px){
  .v10-photo-intro{grid-template-columns:1fr;gap:12px}
  .photo-services .photo-grid,
  .photo-services .photos-grid,
  .photo-services > .grid{grid-template-columns:1fr 1fr!important}
  .photo-services img{height:180px!important}
  .photo-services .wide,.photo-services .featured,.photo-services .photo-wide{grid-column:1/-1!important}
  .hero h1{font-size:clamp(68px,23vw,120px)!important}
}

/* =========================================================
   V10.1 — CORRECCIÓN DEL BLOQUE FOTOGRÁFICO
   ========================================================= */

/* La frase editorial superior queda como transición, más compacta */
.statement{
  padding:38px max(5vw,28px)!important;
  margin:0!important;
}
.statement h2,.statement .statement-text{
  max-width:980px!important;
  font-size:clamp(38px,4.8vw,72px)!important;
  line-height:.96!important;
  letter-spacing:-.045em!important;
}

/* Un solo título para servicio técnico */
.photo-services{
  padding-top:42px!important;
}
.v10-photo-intro{
  grid-template-columns:.55fr 2.1fr .9fr!important;
  margin-bottom:28px!important;
}
.v10-photo-intro h2{
  font-size:clamp(54px,7vw,104px)!important;
  line-height:.82!important;
}

/* Ocultar cualquier segundo encabezado editorial que exista
   dentro del bloque fotográfico después del intro V10 */
.v10-photo-intro ~ .section-head,
.v10-photo-intro ~ .section-header,
.v10-photo-intro ~ .photo-heading,
.v10-photo-intro ~ header:not(.site-header){
  display:none!important;
}

/* El encabezado original de photo-services en esta plantilla usa
   elementos de texto directos antes de la rejilla. Los compactamos
   para que no repitan el gran titular. */
.photo-services > .eyebrow:not(.v10-kicker),
.photo-services > .kicker:not(.v10-kicker){
  display:none!important;
}

/* Si queda un h2 adicional directo dentro de photo-services,
   ocultarlo: el único titular debe ser el de .v10-photo-intro */
.photo-services > h2{
  display:none!important;
}
.photo-services > p{
  display:none!important;
}

/* La rejilla arranca inmediatamente después del encabezado */
.photo-services .photo-grid,
.photo-services .photos-grid,
.photo-services > .grid{
  margin-top:0!important;
}

/* Mejor ritmo vertical */
.photo-services{
  padding-bottom:54px!important;
}
.diagnosis{
  padding-top:46px!important;
}

@media(max-width:760px){
  .statement{padding:30px 22px!important}
  .v10-photo-intro{grid-template-columns:1fr!important}
  .v10-photo-intro h2{font-size:54px!important}
  .photo-services{padding:34px 18px 44px!important}
}

/* V10.2 — MENOS TEXTO + MARCAS COMO LOGOTIPOS TIPOGRÁFICOS */

/* Quitar repetición: dejamos UN solo mensaje fuerte antes de las fotos */
.statement{display:none!important}
.photo-services > h2,
.photo-services > p,
.photo-services > .section-head,
.photo-services > .section-header,
.photo-services > .photo-heading{display:none!important}

.v10-photo-intro{
  grid-template-columns:.55fr 2.25fr .9fr!important;
  margin-bottom:24px!important;
}
.v10-photo-intro h2{
  font-size:clamp(52px,6.7vw,98px)!important;
  line-height:.84!important;
}
.photo-services{padding-top:44px!important}

/* Ocultar el antiguo texto gigante de marcas */
.brands-track,.marquee-track,.brand-line{
  display:none!important;
}

/* Nueva banda visual de marcas, sin descargar ni generar imágenes */
.v102-brand-logos{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  align-items:center;
  gap:1px;
  margin-top:18px;
  border-top:1px solid rgba(0,0,0,.18);
  border-bottom:1px solid rgba(0,0,0,.18);
}
.v102-brand{
  min-height:116px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px 12px;
  border-right:1px solid rgba(0,0,0,.14);
  font-weight:700;
  line-height:1;
  letter-spacing:-.045em;
  font-size:clamp(24px,2.8vw,45px);
}
.v102-brand:last-child{border-right:0}
.v102-brand.apple{font-family:Arial,sans-serif;font-weight:600}
.v102-brand.samsung{letter-spacing:-.07em}
.v102-brand.xiaomi{letter-spacing:-.06em}
.v102-brand.motorola{font-weight:500}
.v102-brand.huawei{letter-spacing:.02em}

@media(max-width:760px){
 .v102-brand-logos{grid-template-columns:repeat(2,1fr)}
 .v102-brand{min-height:90px;border-bottom:1px solid rgba(0,0,0,.12)}
 .v102-brand:last-child{grid-column:1/-1}
}

/* V10.3 — MARCAS: recurso aportado por el cliente */
.v102-brand-logos{display:none!important}
.v103-brand-panel{
  max-width:1180px;
  margin:18px auto 0;
  padding:22px;
  background:#fff;
  border:1px solid rgba(0,0,0,.12);
}
.v103-brand-panel img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.v103-brand-note{
  margin:14px 0 0;
  text-align:center;
  font-size:12px;
  letter-spacing:.02em;
  color:#666;
}
@media(max-width:760px){
  .v103-brand-panel{padding:10px;margin-top:10px}
}

/* V10.4 — LIMPIEZA + LOGOS INDIVIDUALES */
.palette,.identity{display:none!important}
.v102-brand-logos,.v103-brand-panel,
.brands-track,.marquee-track,.brand-line{display:none!important}

.brands{
  min-height:0!important;
  padding:52px max(5vw,28px) 58px!important;
  background:#f5f4f0!important;
}
.v104-brands-head{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:30px;
  margin-bottom:28px;
}
.v104-brands-head .eyebrow{
  font-size:11px;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.v104-brands-head h2{
  margin:0;
  font-size:clamp(42px,5.5vw,78px);
  line-height:.9;
  letter-spacing:-.055em;
  font-weight:500;
}
.v104-logo-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  border-top:1px solid rgba(0,0,0,.16);
  border-left:1px solid rgba(0,0,0,.16);
}
.v104-logo{
  height:150px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:22px;
  background:#fff;
  border-right:1px solid rgba(0,0,0,.16);
  border-bottom:1px solid rgba(0,0,0,.16);
  overflow:hidden;
}
.v104-logo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  mix-blend-mode:multiply;
  transition:transform .3s ease;
}
.v104-logo:hover img{transform:scale(1.05)}
.v104-brand-note{
  margin:14px 0 0;
  font-size:12px;
  color:#666;
}
@media(max-width:900px){
  .v104-logo-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:600px){
  .brands{padding:38px 18px 44px!important}
  .v104-brands-head{display:block}
  .v104-brands-head h2{margin-top:8px}
  .v104-logo-grid{grid-template-columns:repeat(2,1fr)}
  .v104-logo{height:110px;padding:14px}
}

/* V10.5 — MARQUEE DE LOGOS */
.v102-brand-logos,
.v103-brand-panel,
.v104-brands-head,
.v104-logo-grid,
.v104-brand-note,
.brands-track,
.marquee-track,
.brand-line{
  display:none!important;
}

.brands{
  min-height:0!important;
  padding:34px 0 40px!important;
  overflow:hidden!important;
  background:#f5f4f0!important;
}
.v105-label{
  padding:0 max(5vw,28px) 22px;
  font-size:11px;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.v105-marquee{
  width:100%;
  overflow:hidden;
  border-top:1px solid rgba(0,0,0,.15);
  border-bottom:1px solid rgba(0,0,0,.15);
  background:#fff;
}
.v105-track{
  display:flex;
  width:max-content;
  align-items:center;
  animation:v105Scroll 28s linear infinite;
  will-change:transform;
}
.v105-set{
  display:flex;
  align-items:center;
  flex-shrink:0;
}
.v105-logo{
  width:210px;
  height:126px;
  padding:28px 34px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 210px;
  box-sizing:border-box;
  border-right:1px solid rgba(0,0,0,.11);
}
.v105-logo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
}
.v105-marquee:hover .v105-track{animation-play-state:paused}
@keyframes v105Scroll{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
@media(max-width:700px){
  .v105-logo{width:150px;flex-basis:150px;height:100px;padding:22px 25px}
  .v105-track{animation-duration:22s}
}
@media(prefers-reduced-motion:reduce){
  .v105-track{animation:none!important}
}

/* V10.6 — LIMPIEZA VISUAL SEGÚN REVISIÓN */

/* 1. En servicios queda un solo titular */
.photo-services > .v10-photo-intro ~ h1,
.photo-services > .v10-photo-intro ~ h2,
.photo-services > .v10-photo-intro ~ .section-title,
.photo-services > .v10-photo-intro ~ .section-head,
.photo-services > .v10-photo-intro ~ .section-header{display:none!important}

/* La plantilla original tiene un segundo bloque textual antes de las fotos */
.photo-services .v10-photo-intro + *:not(.photo-grid):not(.photos-grid):not(.grid){
  display:none!important;
}
.v10-photo-intro{margin-bottom:24px!important}
.photo-services{padding-top:38px!important}

/* 2. En marcas: SOLO logos en movimiento. Fuera letras/títulos anteriores */
.brands > *:not(.v105-marquee){display:none!important}
.brands .v105-marquee{display:block!important}
.brands{
  padding:0!important;
  margin:0!important;
  background:#fff!important;
}
.v105-marquee{
  border-top:1px solid rgba(0,0,0,.14)!important;
  border-bottom:1px solid rgba(0,0,0,.14)!important;
}
.v105-logo{
  width:220px!important;
  flex-basis:220px!important;
  height:132px!important;
  padding:27px 34px!important;
}
.v105-logo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

/* 3. Menos espacio blanco en diagnóstico y transiciones */
.diagnosis{
  padding-top:42px!important;
  padding-bottom:42px!important;
}
.diagnosis-row,.issue-row{
  padding-top:11px!important;
  padding-bottom:11px!important;
}
main section{
  margin-bottom:0!important;
}
.palette,.identity{display:none!important}

/* 4. Hero más compacto y textos secundarios legibles */
.hero{
  padding-top:38px!important;
  padding-bottom:24px!important;
}
.hero p,.hero .subtitle,.hero .meta,
.v10-photo-intro p,
.photo-services p,
.diagnosis p,
.contact p{
  font-size:clamp(14px,1.15vw,18px)!important;
  line-height:1.45!important;
}
.v10-photo-intro .v10-kicker,
.eyebrow,.kicker{
  font-size:12px!important;
  letter-spacing:.08em!important;
}

/* 5. WhatsApp mucho más visible */
a[href*="wa.me"].whatsapp-float,
.whatsapp-float,
.floating-whatsapp,
.wa-float{
  width:auto!important;
  min-width:152px!important;
  height:54px!important;
  padding:0 18px!important;
  border-radius:999px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  font-size:14px!important;
  font-weight:700!important;
  box-shadow:0 10px 28px rgba(0,0,0,.24)!important;
  z-index:9999!important;
}
a[href*="wa.me"].whatsapp-float::after,
.whatsapp-float::after,
.floating-whatsapp::after,
.wa-float::after{
  content:"WhatsApp";
  font-size:14px;
  font-weight:700;
}

/* si el botón no usa clase específica, mejorar el enlace fijo */
body > a[href*="wa.me"]{
  min-width:150px!important;
  min-height:52px!important;
  font-size:14px!important;
  font-weight:700!important;
  z-index:9999!important;
}

/* Contacto con mejor escala */
.contact h2{
  font-size:clamp(58px,8vw,120px)!important;
  line-height:.86!important;
}
.contact-card p,.contact-card a{
  font-size:clamp(15px,1.2vw,18px)!important;
}

/* móvil */
@media(max-width:700px){
  .v105-logo{width:155px!important;flex-basis:155px!important;height:98px!important;padding:19px 23px!important}
  .photo-services{padding-top:28px!important}
  .diagnosis{padding-top:30px!important;padding-bottom:30px!important}
  a[href*="wa.me"].whatsapp-float,.whatsapp-float,.floating-whatsapp,.wa-float{
    min-width:132px!important;height:50px!important;padding:0 14px!important
  }
}

/* V10.7 — legibilidad, navegación, WhatsApp, contacto y redes */
html{scroll-behavior:smooth}
#servicios,#marcas,#contacto{scroll-margin-top:84px}

/* Texto general: dejar de usar microtipografía */
body{font-size:16px!important}
nav a,.nav a,.site-header a{font-size:14px!important}
.hero p,.photo-services p,.diagnosis p,.contact p,
.contact a,.v10-photo-intro p{
  font-size:clamp(16px,1.25vw,19px)!important;
}
.photo-services h3,.photo-services .photo-title{
  font-size:16px!important;
}
.eyebrow,.kicker,.v10-kicker{font-size:13px!important}

/* Cabecera: marca completa */
.brand,.logo,.site-logo{
  gap:10px!important;
  font-size:17px!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
}

/* WhatsApp: una sola etiqueta + icono */
a[href*="wa.me"].whatsapp-float::after,
.whatsapp-float::after,.floating-whatsapp::after,.wa-float::after{
  content:none!important;
  display:none!important;
}
a[href*="wa.me"].whatsapp-float,
.whatsapp-float,.floating-whatsapp,.wa-float,
body > a[href*="wa.me"]{
  min-width:176px!important;
  height:60px!important;
  padding:0 20px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  border-radius:999px!important;
  font-size:16px!important;
  font-weight:700!important;
  text-decoration:none!important;
  box-shadow:0 12px 32px rgba(0,0,0,.28)!important;
}
.wa-icon{width:28px!important;height:28px!important;flex:0 0 28px}

/* Contacto adicional */
.v107-extra-contact{
  margin-top:46px;
  padding-top:38px;
  border-top:1px solid rgba(255,255,255,.18);
}
.v107-contact-title{
  display:grid;
  grid-template-columns:.7fr 2fr;
  gap:24px;
  align-items:start;
  margin-bottom:30px;
}
.v107-contact-title>span{
  font-size:13px;
  letter-spacing:.09em;
}
.v107-contact-title h3{
  margin:0;
  max-width:780px;
  font-size:clamp(32px,4vw,58px);
  line-height:.95;
  letter-spacing:-.045em;
}
.v107-contact-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(255,255,255,.18);
  border-left:1px solid rgba(255,255,255,.18);
}
.v107-contact-grid>div{
  padding:24px;
  border-right:1px solid rgba(255,255,255,.18);
  border-bottom:1px solid rgba(255,255,255,.18);
}
.v107-contact-grid small{
  display:block;
  margin-bottom:12px;
  font-size:13px;
  opacity:.65;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.v107-contact-grid a,.v107-contact-grid p{
  display:block;
  margin:3px 0;
  font-size:17px!important;
  line-height:1.45;
}
.v107-socials{
  display:flex;
  gap:12px;
  margin-top:22px;
}
.v107-socials a{
  min-width:165px;
  min-height:54px;
  padding:0 18px;
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:999px;
  text-decoration:none;
  font-size:16px!important;
}
.social-icon{
  width:28px;height:28px;border-radius:50%;
  display:grid;place-items:center;
  border:1px solid currentColor;
  font-weight:700;font-size:19px;
}
.social-icon.ig{font-size:21px}

@media(max-width:760px){
  nav a,.nav a,.site-header a{font-size:13px!important}
  .v107-contact-title{grid-template-columns:1fr}
  .v107-contact-grid{grid-template-columns:1fr 1fr}
  .v107-socials{flex-wrap:wrap}
  a[href*="wa.me"].whatsapp-float,.whatsapp-float,.floating-whatsapp,.wa-float,
  body > a[href*="wa.me"]{min-width:158px!important;height:56px!important}
}

/* ===== V10.8 CORRECCIÓN ESTRUCTURAL ===== */
.v108-header{
 height:76px!important;display:grid!important;grid-template-columns:240px 1fr auto!important;
 gap:30px!important;padding:0 4vw!important;align-items:center!important
}
.v108-brand{display:flex!important;align-items:center!important;gap:12px!important;font-size:18px!important;font-weight:800!important;white-space:nowrap}
.v108-logo{width:42px;height:42px;border-radius:10px;overflow:hidden;background:#090b0e;display:block;flex:0 0 42px}
.v108-logo img{width:100%;height:100%;object-fit:cover;display:block;transform:none!important}
.v108-header nav{display:flex!important;gap:30px!important;align-items:center}
.v108-header nav a{font-size:15px!important;font-weight:600!important;white-space:nowrap}
.v108-header .pill{font-size:14px!important;padding:11px 16px!important}

/* texto general más legible */
.caption,.meta{font-size:12px!important}
.photo-cards b{font-size:15px!important;padding:11px 2px!important;display:block}
.lab-feature small,.contact small{font-size:12px!important}
.lab-feature h3{font-size:22px!important}
.lab-feature p{font-size:17px!important;line-height:1.5!important}

/* contacto único, sin bloques repetidos */
.v108-contact{padding:64px 7vw 54px!important}
.v108-contact-head{display:grid;grid-template-columns:.55fr 2fr 1fr;gap:28px;align-items:end;margin-bottom:38px}
.v108-contact-head h2{font-size:clamp(56px,7.5vw,108px)!important;margin:0!important}
.v108-contact-head p{font-size:18px!important;margin:0!important;color:#b7bbc0!important}
.v108-contact-main{display:grid;grid-template-columns:1fr 2fr;border-top:1px solid #42464b;border-left:1px solid #42464b}
.v108-location,.v108-numbers>div{padding:26px;border-right:1px solid #42464b;border-bottom:1px solid #42464b}
.v108-location h3{font-size:26px;margin:12px 0}
.v108-location p{font-size:17px!important}
.v108-numbers{display:grid;grid-template-columns:1fr 1fr}
.v108-numbers a{display:block;font-size:18px!important;font-weight:650;margin:8px 0;color:#fff}
.v108-actions{display:flex;justify-content:space-between;gap:22px;align-items:center;margin-top:26px}
.v108-wa-main{display:flex;align-items:center;gap:13px;background:#25D366;color:#07150c!important;border-radius:999px;padding:16px 24px;font-size:18px!important;font-weight:800}
.v108-wa-main svg{width:30px;height:30px}
.v108-socials{display:flex;gap:12px}
.v108-socials a{display:flex;align-items:center;gap:10px;min-width:155px;padding:13px 18px;border-radius:999px;color:#fff!important;font-size:16px!important;font-weight:700}
.v108-socials b{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:22px}
.v108-socials .fb{background:#1877F2}.v108-socials .ig{background:linear-gradient(45deg,#f9ce34,#ee2a7b,#6228d7)}
.v108-socials b{background:rgba(255,255,255,.18)}
.v108-footer{font-size:14px!important;grid-template-columns:1fr 1fr auto!important}

/* flotante grande y claro */
.v108-wa-float{
 position:fixed!important;right:24px!important;bottom:24px!important;z-index:9999!important;
 min-width:190px!important;height:64px!important;padding:0 22px!important;
 display:flex!important;align-items:center!important;justify-content:center!important;gap:11px!important;
 background:#25D366!important;color:#07150c!important;border-radius:999px!important;
 font-size:17px!important;font-weight:800!important;box-shadow:0 14px 36px rgba(0,0,0,.32)!important
}
.v108-wa-float svg{display:block!important;width:31px!important;height:31px!important;flex:0 0 31px!important}
.v108-wa-float span{display:inline!important;width:auto!important;height:auto!important;background:none!important;font-size:17px!important;color:inherit!important}
.v108-wa-float::after{content:none!important}

@media(max-width:850px){
 .v108-header{grid-template-columns:1fr auto!important}
 .v108-header nav{display:none!important}
 .v108-brand span:last-child{font-size:15px}
 .v108-contact-head{grid-template-columns:1fr}
 .v108-contact-main{grid-template-columns:1fr}
 .v108-numbers{grid-template-columns:1fr 1fr}
 .v108-actions{align-items:stretch;flex-direction:column}
 .v108-socials{width:100%}.v108-socials a{flex:1}
}

/* ===== V10.9 BASE LIMPIA ===== */
.v108-actions{justify-content:flex-end!important;margin-top:24px!important}
.v109-cellphones{display:flex!important;flex-direction:column!important;align-items:stretch!important}
.v109-phone-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}
.v109-phone-row .v109-phone{margin:0!important;white-space:nowrap}
.v109-mini-wa{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
 background:#25D366!important;color:#07150c!important;border-radius:999px!important;
 padding:8px 11px!important;font-size:12px!important;font-weight:800!important;white-space:nowrap!important;
 margin:0!important
}
.v109-mini-wa svg{width:18px!important;height:18px!important;flex:0 0 18px!important}
.v109-mini-wa span{display:inline!important}
@media(max-width:850px){
 .v109-phone-row{align-items:flex-start;flex-direction:column}
 .v109-mini-wa{font-size:13px!important;padding:9px 13px!important}
 .v108-actions{justify-content:flex-start!important}
}

/* V10.10 — WhatsApp por símbolo en Laptop y Accesorios */
.v1010-contact-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.v1010-contact-row>a:first-child{margin:0!important}
.v1010-wa-icon{
 width:40px!important;height:40px!important;min-width:40px!important;
 padding:0!important;margin:0!important;border-radius:50%!important;
 display:grid!important;place-items:center!important;
 background:#25D366!important;color:#07150c!important;
 box-shadow:0 5px 14px rgba(0,0,0,.2)!important;
 transition:transform .2s ease!important
}
.v1010-wa-icon:hover{transform:scale(1.08)}
.v1010-wa-icon svg{width:23px!important;height:23px!important;display:block!important}

/* V10.11 — mismo símbolo WhatsApp en TODOS los números */
.v109-mini-wa.v1011-wa-icon{
 width:40px!important;height:40px!important;min-width:40px!important;
 padding:0!important;border-radius:50%!important;
 display:grid!important;place-items:center!important;
 background:#25D366!important;color:#07150c!important;
 box-shadow:0 5px 14px rgba(0,0,0,.2)!important
}
.v109-mini-wa.v1011-wa-icon svg{width:23px!important;height:23px!important;margin:0!important}

/* V10.12 — iconos WhatsApp completos, uniformes y animados */
.v1010-wa-icon,.v109-mini-wa.v1011-wa-icon{
 width:42px!important;height:42px!important;min-width:42px!important;
 padding:0!important;margin:0!important;border-radius:50%!important;
 display:grid!important;place-items:center!important;
 background:#25D366!important;color:#07150c!important;
 box-shadow:0 5px 14px rgba(0,0,0,.20)!important;
 transition:transform .22s ease,box-shadow .22s ease!important;
 animation:v1012WaPulse 2.8s ease-in-out infinite!important
}
.v1010-wa-icon:hover,.v109-mini-wa.v1011-wa-icon:hover{
 transform:scale(1.12)!important;
 box-shadow:0 8px 20px rgba(37,211,102,.35)!important
}
.v1010-wa-icon svg,.v109-mini-wa.v1011-wa-icon svg{
 width:25px!important;height:25px!important;display:block!important;margin:0!important
}
@keyframes v1012WaPulse{
 0%,100%{transform:scale(1)}
 50%{transform:scale(1.07)}
}

/* celulares: WhatsApp inmediatamente a la izquierda del número */
.v109-phone-row{
 justify-content:flex-start!important;
 flex-direction:row!important;
 align-items:center!important;
 gap:12px!important
}

/* Redes centradas para no competir con el flotante */
.v108-actions{
 justify-content:center!important;
 margin-top:30px!important;
 padding-right:210px!important;
 padding-left:210px!important
}
.v108-socials{justify-content:center!important}
@media(max-width:850px){
 .v108-actions{padding-left:0!important;padding-right:0!important;justify-content:flex-start!important}
 .v108-socials{justify-content:flex-start!important}
}

/* V10.13 — todos los contactos telefónicos con el mismo orden */
.v1010-contact-row{
  justify-content:flex-start!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:12px!important;
}
.v1010-contact-row > a[href^="tel:"]{
  margin:0!important;
  white-space:nowrap!important;
}

/* ===== V10.14 — refinamiento sección Diagnóstico ===== */

/* Evita que el título quede oculto por la cabecera fija. */
#fallas, #diagnostico, .diagnosis{
  scroll-margin-top:110px!important;
}
.diagnosis{
  padding-top:clamp(72px,7vw,105px)!important;
  padding-bottom:clamp(34px,4vw,54px)!important;
}
.diagnosis h2{
  margin-top:0!important;
  padding-top:0!important;
  line-height:.88!important;
}

/* Filas más compactas, conservando el diseño editorial original. */
.diagnosis-row,.issue-row{
  position:relative!important;
  min-height:86px!important;
  padding-top:17px!important;
  padding-bottom:17px!important;
  transition:padding-left .25s ease,border-color .25s ease,color .25s ease!important;
}
.diagnosis-row:hover,.issue-row:hover{
  padding-left:10px!important;
  border-color:#0788ff!important;
}

/* Numeración más visible con el azul de la identidad. */
.diagnosis-row > :first-child,.issue-row > :first-child{
  color:#0788ff!important;
  font-weight:800!important;
}

/* Etiqueta técnica discreta a la derecha. */
.v1014-tech{
  margin-left:auto!important;
  margin-right:58px!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
  color:#6f7378!important;
  white-space:nowrap!important;
  transition:color .25s ease!important;
}
.diagnosis-row:hover .v1014-tech,.issue-row:hover .v1014-tech{
  color:#0788ff!important;
}

/* La flecha final gana presencia sin convertirse en botón. */
.diagnosis-row::after,.issue-row::after{
  transition:transform .25s ease,color .25s ease!important;
}
.diagnosis-row:hover::after,.issue-row:hover::after{
  transform:translateX(5px)!important;
  color:#0788ff!important;
}

@media(max-width:760px){
  #fallas,#diagnostico,.diagnosis{scroll-margin-top:88px!important}
  .diagnosis{padding-top:58px!important;padding-bottom:32px!important}
  .diagnosis-row,.issue-row{min-height:74px!important;padding-top:14px!important;padding-bottom:14px!important}
  .v1014-tech{font-size:9px!important;margin-right:34px!important;letter-spacing:.08em!important}
}

/* ===== V10.15 — Diagnóstico desplegable minimalista ===== */
.v1015-faults{border-top:1px solid rgba(9,11,14,.22)}
.v1015-fault{border-bottom:1px solid rgba(9,11,14,.22)}
.v1015-fault-head{
 width:100%;min-height:84px;padding:15px 8px;
 display:grid;grid-template-columns:62px minmax(0,1fr) auto 42px;
 align-items:center;gap:16px;border:0;background:transparent;color:#090b0e;
 text-align:left;cursor:pointer;font:inherit;
 transition:padding-left .25s ease,background .25s ease
}
.v1015-fault-head:hover{padding-left:14px;background:rgba(7,136,255,.035)}
.v1015-fault-head b{font-size:12px;color:#0788ff;font-weight:800}
.v1015-name{font-size:clamp(32px,4vw,58px);line-height:.95;letter-spacing:-.045em}
.v1015-tech{font-size:11px;font-weight:800;letter-spacing:.12em;color:#73777c;white-space:nowrap}
.v1015-fault-head i{
 width:34px;height:34px;display:grid;place-items:center;font-style:normal;
 font-size:25px;font-weight:300;transition:transform .28s ease,color .28s ease
}
.v1015-fault.is-open .v1015-fault-head i{transform:rotate(45deg);color:#0788ff}
.v1015-fault-detail{
 display:grid;grid-template-rows:0fr;
 transition:grid-template-rows .32s cubic-bezier(.2,.7,.2,1)
}
.v1015-fault-detail>p{
 overflow:hidden;margin:0;padding:0 58px 0 86px;
 max-width:900px;font-size:17px;line-height:1.45;color:#555b61;
 transition:padding-bottom .32s ease
}
.v1015-fault.is-open .v1015-fault-detail{grid-template-rows:1fr}
.v1015-fault.is-open .v1015-fault-detail>p{padding-bottom:22px}
@media(max-width:760px){
 .v1015-fault-head{grid-template-columns:34px minmax(0,1fr) 32px;gap:10px;min-height:70px}
 .v1015-name{font-size:30px}
 .v1015-tech{display:none}
 .v1015-fault-detail>p{padding-left:44px;padding-right:20px;font-size:15px}
}

/* ===== V10.16 — diagnóstico limpio ===== */
.v1015-fault-head{
  grid-template-columns:62px minmax(0,1fr) 42px!important;
  gap:16px!important;
}
.v1015-tech{display:none!important}
.v1015-fault-head i{
  justify-self:end!important;
  color:#090b0e!important;
}
.v1015-fault.is-open .v1015-fault-head{
  background:rgba(7,136,255,.035)!important;
}
.v1015-fault-detail>p{
  font-size:15px!important;
  color:#5d6268!important;
  max-width:820px!important;
}
@media(max-width:760px){
  .v1015-fault-head{
    grid-template-columns:34px minmax(0,1fr) 32px!important;
  }
}

/* ===== V10.17 — enfoque multidispositivo ===== */
.v1017-scope{
 display:flex;align-items:center;justify-content:center;gap:clamp(18px,3vw,46px);
 padding:24px 5vw;border-top:1px solid rgba(9,11,14,.16);
 border-bottom:1px solid rgba(9,11,14,.16);overflow:hidden
}
.v1017-scope span{
 font-size:clamp(17px,2.1vw,30px);font-weight:800;letter-spacing:.04em;
 white-space:nowrap
}
.v1017-scope i{font-style:normal;color:#0788ff;font-size:22px}
@media(max-width:650px){
 .v1017-scope{gap:10px;padding:18px 12px}
 .v1017-scope span{font-size:13px;letter-spacing:.02em}
 .v1017-scope i{font-size:16px}
}

/* ===== V10.20 — Hero: tarjeta fuera del área principal del logo ===== */
.hero-media,
.hero-visual,
.showcase{
  position:relative!important;
  overflow:visible!important;
}

/* La tarjeta informativa se vuelve más compacta y se desplaza hacia
   la esquina inferior derecha, fuera del centro visual del logotipo. */
.hero-media .card,
.hero-media .hero-card,
.hero-visual .card,
.hero-visual .hero-card,
.showcase .card,
.showcase .hero-card{
  width:min(250px,24vw)!important;
  padding:18px 20px!important;
  right:18px!important;
  bottom:18px!important;
  left:auto!important;
  top:auto!important;
  z-index:3!important;
}

/* Dar un poco más de aire a la imagen para que el logotipo completo
   quede dentro del encuadre sin recortarse. */
.hero-media img,
.hero-visual img,
.showcase img{
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
}

@media(max-width:760px){
  .hero-media .card,
  .hero-media .hero-card,
  .hero-visual .card,
  .hero-visual .hero-card,
  .showcase .card,
  .showcase .hero-card{
    position:relative!important;
    width:calc(100% - 24px)!important;
    right:auto!important;
    bottom:auto!important;
    margin:-12px 12px 0!important;
  }
}

/* ===== V10.21 — Hero limpio, sin caja superpuesta ===== */
.hero-media .card,.hero-media .hero-card,
.hero-visual .card,.hero-visual .hero-card,
.showcase .card,.showcase .hero-card{display:none!important}

.hero-media,.hero-visual,.showcase{
  overflow:hidden!important;
}
.hero-media img,.hero-visual img,.showcase img{
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
}

/* ===== V10.22 — barrido de luz azul en el HERO ===== */
.hero-media,
.hero-visual,
.showcase{
  position:relative!important;
  isolation:isolate;
}

/* El logo/foto permanece totalmente fijo */
.hero-media img,
.hero-visual img,
.showcase img{
  position:relative;
  z-index:1;
  transform:none!important;
  animation:none!important;
}

/* Haz luminoso fino que recorre el área azul */
.hero-media::after,
.hero-visual::after,
.showcase::after{
  content:"";
  position:absolute;
  z-index:2;
  pointer-events:none;
  top:-20%;
  bottom:-20%;
  left:-28%;
  width:18%;
  opacity:0;
  transform:skewX(-16deg);
  background:linear-gradient(
    90deg,
    rgba(7,136,255,0) 0%,
    rgba(7,136,255,.05) 25%,
    rgba(46,181,255,.30) 48%,
    rgba(130,225,255,.55) 50%,
    rgba(46,181,255,.24) 53%,
    rgba(7,136,255,.04) 75%,
    rgba(7,136,255,0) 100%
  );
  filter:blur(5px);
  mix-blend-mode:screen;
  animation:smartphoneBlueSweep 6.5s cubic-bezier(.2,.7,.2,1) infinite;
}

@keyframes smartphoneBlueSweep{
  0%,18%{left:-28%;opacity:0}
  22%{opacity:.35}
  35%{opacity:.78}
  48%{left:112%;opacity:.15}
  49%,100%{left:112%;opacity:0}
}

/* Pequeño pulso azul en el borde inferior del hero */
.hero-media::before,
.hero-visual::before,
.showcase::before{
  content:"";
  position:absolute;
  z-index:2;
  pointer-events:none;
  left:18%;
  right:18%;
  bottom:0;
  height:1px;
  opacity:.25;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(7,136,255,.25),
    rgba(92,210,255,.8),
    rgba(7,136,255,.25),
    transparent
  );
  box-shadow:0 0 10px rgba(7,136,255,.35);
  animation:smartphoneBluePulse 4.5s ease-in-out infinite;
}

@keyframes smartphoneBluePulse{
  0%,100%{opacity:.16;transform:scaleX(.78)}
  50%{opacity:.72;transform:scaleX(1)}
}

@media (prefers-reduced-motion:reduce){
  .hero-media::after,.hero-visual::after,.showcase::after,
  .hero-media::before,.hero-visual::before,.showcase::before{
    animation:none!important;
  }
  .hero-media::after,.hero-visual::after,.showcase::after{display:none!important}
}

/* ===== V10.23 — EFECTO CORREGIDO SOBRE EL HERO REAL (.feature .frame) ===== */
.feature .frame{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
.feature .frame > img{
  position:relative!important;
  z-index:1!important;
  display:block!important;
  transform:none!important;
  animation:none!important;
}

/* Destello azul visible que atraviesa el logo real */
.feature .frame::after{
  content:"";
  position:absolute;
  z-index:2;
  pointer-events:none;
  top:-30%;
  left:-35%;
  width:16%;
  height:160%;
  opacity:0;
  transform:skewX(-18deg);
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(0,119,255,.05) 20%,
    rgba(0,170,255,.38) 42%,
    rgba(170,240,255,.88) 50%,
    rgba(0,170,255,.38) 58%,
    rgba(0,119,255,.05) 80%,
    transparent 100%);
  filter:blur(3px);
  mix-blend-mode:screen;
  animation:v1023Sweep 5.2s ease-in-out infinite;
}
@keyframes v1023Sweep{
  0%,15%{left:-35%;opacity:0}
  20%{opacity:.9}
  55%{left:118%;opacity:.9}
  60%,100%{left:118%;opacity:0}
}

/* Resplandor inferior sincronizado */
.feature .frame::before{
  content:"";
  position:absolute;
  z-index:3;
  pointer-events:none;
  left:28%;
  right:28%;
  bottom:8%;
  height:2px;
  background:linear-gradient(90deg,transparent,#0788ff,#8de8ff,#0788ff,transparent);
  box-shadow:0 0 8px #0788ff,0 0 18px rgba(7,136,255,.8);
  opacity:.25;
  animation:v1023Pulse 2.6s ease-in-out infinite;
}
@keyframes v1023Pulse{
  0%,100%{opacity:.22;transform:scaleX(.72)}
  50%{opacity:1;transform:scaleX(1)}
}
@media(prefers-reduced-motion:reduce){
  .feature .frame::before,.feature .frame::after{animation:none!important}
}

/* ===== V10.24 — animación directa del logo.jpg ===== */

/* Eliminar completamente los haces superpuestos anteriores */
.feature .frame::before,
.feature .frame::after{
  content:none!important;
  display:none!important;
  animation:none!important;
}

/* La imagen permanece quieta: sólo cambia sutilmente su luminosidad */
.feature .frame > img{
  transform:none!important;
  transform-origin:center center!important;
  animation:v1024LogoEnergy 4.8s ease-in-out infinite!important;
  will-change:filter;
}

@keyframes v1024LogoEnergy{
  0%,100%{
    filter:brightness(1) contrast(1) saturate(1)
           drop-shadow(0 0 0 rgba(7,136,255,0));
  }
  45%{
    filter:brightness(1.045) contrast(1.025) saturate(1.08)
           drop-shadow(0 0 4px rgba(7,136,255,.18));
  }
  55%{
    filter:brightness(1.075) contrast(1.04) saturate(1.16)
           drop-shadow(0 0 9px rgba(7,136,255,.34));
  }
  65%{
    filter:brightness(1.035) contrast(1.02) saturate(1.07)
           drop-shadow(0 0 4px rgba(7,136,255,.16));
  }
}

/* Un hover ligeramente más vivo, sin mover la imagen */
.feature .frame:hover > img{
  filter:brightness(1.08) contrast(1.04) saturate(1.18)
         drop-shadow(0 0 10px rgba(7,136,255,.32))!important;
}

@media(prefers-reduced-motion:reduce){
  .feature .frame > img{
    animation:none!important;
    filter:none!important;
  }
}

/* ===== V10.25 — pulso del logo más visible ===== */
.feature .frame > img{
 transform:none!important;
 animation:v1025LogoEnergy 3.8s ease-in-out infinite!important;
 will-change:filter;
}
@keyframes v1025LogoEnergy{
 0%,100%{filter:brightness(.96) contrast(1.02) saturate(1) drop-shadow(0 0 0 rgba(0,145,255,0));}
 35%{filter:brightness(1.08) contrast(1.07) saturate(1.22) drop-shadow(0 0 7px rgba(0,145,255,.30));}
 50%{filter:brightness(1.20) contrast(1.10) saturate(1.48) drop-shadow(0 0 14px rgba(0,155,255,.58));}
 62%{filter:brightness(1.10) contrast(1.07) saturate(1.27) drop-shadow(0 0 8px rgba(0,145,255,.34));}
}
.feature .frame:hover > img{
 filter:brightness(1.22) contrast(1.10) saturate(1.50) drop-shadow(0 0 15px rgba(0,155,255,.60))!important;
}
@media(prefers-reduced-motion:reduce){
 .feature .frame > img{animation:none!important;filter:none!important;}
}

/* ===== V10.26 — RESPONSIVE MÓVIL / elimina overflow horizontal ===== */
html,body{
  width:100%;
  max-width:100%;
  overflow-x:hidden!important;
}
*,*::before,*::after{box-sizing:border-box}

@media(max-width:760px){
  body{min-width:0!important}
  main,section,header,footer,
  .wrap,.container,.inner,.grid,.row,
  .feature,.feature .frame,
  .services,.diagnosis,.brands,.contact{
    max-width:100%!important;
    min-width:0!important;
  }

  /* Header */
  header{
    width:100%!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  header nav{display:none!important}
  header .cta,
  header a[href*="#fallas"]{
    white-space:nowrap!important;
    max-width:46vw!important;
    font-size:14px!important;
    padding:11px 12px!important;
  }

  /* Hero */
  .feature{
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .feature .frame{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
  }
  .feature .frame>img{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    object-fit:contain!important;
  }

  /* Secciones editoriales: nunca conservar columnas desktop */
  section [class*="grid"],
  section [class*="columns"],
  section [class*="cols"]{
    grid-template-columns:minmax(0,1fr)!important;
  }
  section>div,
  section article{
    min-width:0!important;
    max-width:100%!important;
  }
  h1,h2,h3,p{
    max-width:100%!important;
    overflow-wrap:anywhere;
  }

  /* Contacto: cada bloque ocupa todo el ancho */
  .contact,
  #contacto{
    width:100%!important;
    overflow:hidden!important;
  }
  .contact [class*="grid"],
  #contacto [class*="grid"]{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
  }
  .contact [class*="cell"],
  .contact [class*="item"],
  #contacto [class*="cell"],
  #contacto [class*="item"]{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  .contact a,#contacto a{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
  }

  /* Botón flotante WhatsApp: compacto en teléfono */
  .wa-float,
  .whatsapp-float,
  a[class*="whatsapp"][class*="float"]{
    right:14px!important;
    bottom:18px!important;
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    max-width:58px!important;
    padding:0!important;
    border-radius:50%!important;
    overflow:hidden!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:0!important;
    z-index:9999!important;
  }
  .wa-float svg,.whatsapp-float svg,
  a[class*="whatsapp"][class*="float"] svg{
    width:28px!important;height:28px!important;
    margin:0!important;
  }

  /* Imágenes y medios nunca ensanchan la página */
  img,video,svg{max-width:100%}
}

@media(max-width:430px){
  .v1017-scope{
    overflow:hidden!important;
    gap:7px!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
  .v1017-scope span{font-size:11px!important}
}

/* ===== V10.27 — ajuste móvil real: tipografía + contacto ===== */
@media(max-width:760px){

  /* Introducción de servicios: composición móvil limpia */
  .photo-services{
    padding-left:20px!important;
    padding-right:20px!important;
  }
  .v10-photo-intro{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    padding:54px 0 30px!important;
  }
  .v10-photo-intro .v10-kicker{
    display:block!important;
    margin:0 0 18px!important;
    font-size:12px!important;
    line-height:1.2!important;
    letter-spacing:.12em!important;
  }
  .v10-photo-intro h2{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    font-size:clamp(42px,13vw,64px)!important;
    line-height:.91!important;
    letter-spacing:-.055em!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  .v10-photo-intro h2 br{display:none!important}
  .v10-photo-intro h2 span{display:inline!important}
  .v10-photo-intro p{
    width:100%!important;
    max-width:340px!important;
    margin:24px 0 0!important;
    font-size:18px!important;
    line-height:1.45!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  /* Contacto: quitar las 2 columnas de escritorio */
  .v108-contact{
    padding-left:20px!important;
    padding-right:20px!important;
  }
  .v108-contact-main{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
  }
  .v108-location{
    width:100%!important;
    max-width:100%!important;
    padding:28px 0!important;
  }
  .v108-location h3{
    font-size:28px!important;
    line-height:1.08!important;
  }
  .v108-location p{
    font-size:17px!important;
    line-height:1.5!important;
  }
  .v108-numbers{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    max-width:100%!important;
  }
  .v108-numbers>div,
  .v109-cellphones{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:24px 0!important;
    border-left:0!important;
  }
  .v109-phone-row,
  .v1010-contact-row{
    display:flex!important;
    align-items:center!important;
    gap:14px!important;
    width:100%!important;
    min-width:0!important;
  }
  .v109-phone-row a:last-child,
  .v1010-contact-row a:last-child{
    font-size:19px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
  }
  .v108-numbers>div:last-child>a[href^="mailto:"]{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    font-size:18px!important;
    line-height:1.3!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
  }

  /* Redes: apiladas para que no se corten */
  .v108-socials{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    width:100%!important;
  }
  .v108-socials a{
    width:100%!important;
    max-width:100%!important;
    justify-content:center!important;
  }

  /* Footer también en una columna */
  .v108-footer{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:20px!important;
    padding:32px 20px 90px!important;
  }
  .v108-footer>div{
    width:100%!important;
    max-width:100%!important;
  }

  /* WhatsApp flotante realmente compacto */
  a.wa-float{
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    max-width:58px!important;
    padding:0!important;
    border-radius:50%!important;
    font-size:0!important;
  }
  a.wa-float span{display:none!important}
}

/* ===== V10.28 — móvil: reducir vacío + dar aire al contacto ===== */
@media(max-width:760px){

  /* Reducir el gran vacío entre hero y Servicio técnico */
  .feature{
    padding-bottom:22px!important;
    margin-bottom:0!important;
  }
  .photo-services{
    margin-top:0!important;
    padding-top:0!important;
  }
  .v10-photo-intro{
    padding-top:30px!important;
  }

  /* Contacto: margen interior uniforme, sin pegar texto al borde */
  .v108-contact,
  #contacto{
    padding-left:22px!important;
    padding-right:22px!important;
  }
  .v108-contact-main,
  .v108-location,
  .v108-numbers{
    width:100%!important;
    max-width:100%!important;
  }
  .v108-location{
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .v108-numbers>div,
  .v109-cellphones{
    padding-left:16px!important;
    padding-right:16px!important;
  }

  /* Números: icono + texto con separación consistente */
  .v109-phone-row,
  .v1010-contact-row{
    gap:16px!important;
  }

  /* Correo: reservar espacio para el WhatsApp flotante y permitir corte sano */
  .v108-numbers>div:last-child{
    padding-right:72px!important;
  }
  .v108-numbers>div:last-child>a[href^="mailto:"]{
    font-size:17px!important;
    line-height:1.35!important;
    overflow-wrap:anywhere!important;
  }
}

@media(max-width:430px){
  .v108-contact,#contacto{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  .v108-location,
  .v108-numbers>div,
  .v109-cellphones{
    padding-left:14px!important;
    padding-right:14px!important;
  }
}

/* ===== V10.29 — separación tipográfica "que realmente" ===== */
.v10-photo-intro h2 span{
  margin-left:.16em!important;
}
@media(max-width:760px){
  .v10-photo-intro h2 span{
    margin-left:.14em!important;
  }
}

/* ===== V10.30 — marcas con mayor presencia y respiración ===== */
.brands-track > *,
.brand-track > *,
.marquee-track > *{
  min-height:118px!important;
  padding:20px 30px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.brands-track img,
.brand-track img,
.marquee-track img{
  width:auto!important;
  height:auto!important;
  max-width:180px!important;
  max-height:68px!important;
  object-fit:contain!important;
}

/* Selectores de la estructura real usada por la web */
.v9-brand-item{
  min-height:118px!important;
  padding:20px 30px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.v9-brand-item img{
  width:auto!important;
  height:auto!important;
  max-width:180px!important;
  max-height:68px!important;
  object-fit:contain!important;
}

@media(max-width:760px){
  .brands-track > *,
  .brand-track > *,
  .marquee-track > *,
  .v9-brand-item{
    min-height:86px!important;
    padding:14px 20px!important;
  }
  .brands-track img,
  .brand-track img,
  .marquee-track img,
  .v9-brand-item img{
    max-width:132px!important;
    max-height:50px!important;
  }
}

/* ===== V10.31 — MARCAS: selectores reales ===== */
.brands{
  min-height:138px!important;
}
.brands .v108-brand{
  min-width:245px!important;
  height:138px!important;
  padding:24px 34px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.brands .v108-logo{
  width:auto!important;
  height:auto!important;
  max-width:190px!important;
  max-height:78px!important;
  object-fit:contain!important;
  transform:scale(1.16)!important;
  transform-origin:center!important;
}

/* más aire entre marcas sin detener el marquee */
.brands .v108-brand + .v108-brand{
  margin-left:10px!important;
}

@media(max-width:760px){
  .brands{min-height:100px!important}
  .brands .v108-brand{
    min-width:175px!important;
    height:100px!important;
    padding:18px 24px!important;
  }
  .brands .v108-logo{
    max-width:140px!important;
    max-height:56px!important;
    transform:scale(1.08)!important;
  }
  .brands .v108-brand + .v108-brand{margin-left:6px!important}
}

/* ===== V10.32 — MARCAS, corrección definitiva sobre estructura v105 ===== */
#marcas.brands{
  overflow:hidden!important;
}
#marcas .v105-marquee{
  height:132px!important;
  min-height:132px!important;
  overflow:hidden!important;
}
#marcas .v105-track,
#marcas .v105-set{
  height:132px!important;
  min-height:132px!important;
}
#marcas .v105-set{
  display:flex!important;
  align-items:stretch!important;
}
#marcas .v105-logo{
  flex:0 0 230px!important;
  width:230px!important;
  min-width:230px!important;
  height:132px!important;
  min-height:132px!important;
  padding:20px 26px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
#marcas .v105-logo img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:176px!important;
  max-height:74px!important;
  object-fit:contain!important;
  transform:scale(1.22)!important;
  transform-origin:center center!important;
}

/* Logos naturalmente muy anchos reciben todavía más ancho útil */
#marcas .v105-logo img[alt="Samsung"],
#marcas .v105-logo img[alt="Xiaomi"],
#marcas .v105-logo img[alt="Motorola"],
#marcas .v105-logo img[alt="TECNO Mobile"]{
  max-width:184px!important;
}

/* Apple es más alto/compacto: limitarlo para mantener equilibrio */
#marcas .v105-logo img[alt="Apple"]{
  max-height:70px!important;
}

@media(max-width:760px){
  #marcas .v105-marquee,
  #marcas .v105-track,
  #marcas .v105-set{
    height:96px!important;
    min-height:96px!important;
  }
  #marcas .v105-logo{
    flex-basis:166px!important;
    width:166px!important;
    min-width:166px!important;
    height:96px!important;
    min-height:96px!important;
    padding:14px 18px!important;
  }
  #marcas .v105-logo img{
    max-width:126px!important;
    max-height:52px!important;
    transform:scale(1.12)!important;
  }
}

/* ===== V10.33 — MARCAS: mismo tamaño, más aire entre bloques ===== */
#marcas .v105-logo{
  flex:0 0 285px!important;
  width:285px!important;
  min-width:285px!important;
  height:140px!important;
  min-height:140px!important;
  padding:24px 48px!important;
}
#marcas .v105-marquee,
#marcas .v105-track,
#marcas .v105-set{
  height:140px!important;
  min-height:140px!important;
}
#marcas .v105-logo img{
  max-width:176px!important;
  max-height:74px!important;
  transform:scale(1.18)!important;
}
/* divisor más suave para que cada marca respire */
#marcas .v105-logo{
  border-right:1px solid rgba(0,0,0,.075)!important;
}

@media(max-width:760px){
  #marcas .v105-logo{
    flex-basis:190px!important;
    width:190px!important;
    min-width:190px!important;
    height:102px!important;
    min-height:102px!important;
    padding:16px 28px!important;
  }
  #marcas .v105-marquee,
  #marcas .v105-track,
  #marcas .v105-set{
    height:102px!important;
    min-height:102px!important;
  }
  #marcas .v105-logo img{
    max-width:126px!important;
    max-height:52px!important;
    transform:scale(1.08)!important;
  }
}

/* V10.34: nombres de responsables de contacto */
.v1034-person{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}.v1034-name{font-size:14px;font-weight:600;line-height:1.3;color:#b9c5d0;letter-spacing:.02em}.v1034-person>a{max-width:100%;white-space:normal!important;overflow-wrap:anywhere}@media(max-width:760px){.v1034-name{font-size:13px}.v1034-person>a{font-size:clamp(15px,4.5vw,19px)!important}}

/* V10.35 — responsables visibles en todos los tamaños */
#contacto .v1034-person{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:5px!important;min-width:0!important}
#contacto .v1034-name{display:block!important;visibility:visible!important;opacity:1!important;color:#f0f4f8!important;font-size:17px!important;font-weight:700!important;line-height:1.25!important;letter-spacing:0!important;margin-bottom:2px!important}
#contacto .v1034-person>a{display:block!important;white-space:normal!important;line-height:1.25!important}
#contacto .v109-phone-row,#contacto .v1010-contact-row{align-items:center!important}
@media(max-width:760px){#contacto .v1034-name{font-size:16px!important}#contacto .v1034-person>a{font-size:clamp(15px,4.5vw,19px)!important}}
