:root{
  --red:#e63732;
  --ink:#171717;
  --paper:#f5f4f0;
  --white:#fff;
  --muted:#6a6a67;
  --line:#d9d7d0;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Archivo,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
img{display:block;max-width:100%}
.shell{width:min(1180px,calc(100% - 48px));margin:0 auto}
.site-header{height:78px;position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1180px)/2));background:rgba(245,244,240,.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,.08)}
.brand{display:flex;align-items:center}.brand img{width:165px;height:auto;max-height:48px;object-fit:contain}
.nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.nav a{text-decoration:none}.nav a:hover{color:var(--red)}
.nav-cta{border:1px solid var(--ink);border-radius:999px;padding:11px 16px}.nav-cta:hover{background:var(--ink);color:#fff!important}
.menu-btn{display:none;background:none;border:0;font:inherit;font-weight:700;text-transform:uppercase}
.hero{min-height:92vh;position:relative;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:
radial-gradient(circle at 14% 38%,rgba(230,55,50,.18),transparent 0 24%),
radial-gradient(circle at 78% 18%,rgba(255,255,255,.12),transparent 0 28%),
radial-gradient(circle at 88% 82%,rgba(230,55,50,.08),transparent 0 20%),
linear-gradient(112deg,#0d0e10 0%,#2d2e31 34%,#66686d 68%,#d0d1d4 100%)}
.hero::before{content:"";position:absolute;inset:-12%;z-index:0;pointer-events:none;background:
radial-gradient(circle at 18% 58%,rgba(230,55,50,.24),transparent 0 18%),
radial-gradient(circle at 72% 20%,rgba(255,255,255,.14),transparent 0 22%),
radial-gradient(circle at 58% 72%,rgba(255,255,255,.06),transparent 0 20%);
filter:blur(64px);opacity:.95}
.hero-media,.hero-overlay{position:absolute;inset:0}
.hero-media{z-index:0;opacity:.24;transform:scale(1.1)}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 45%;filter:blur(22px) saturate(1.08) contrast(1.04);transform:scale(1.06)}
.hero-overlay{z-index:1;background:
linear-gradient(90deg,rgba(5,6,8,.90) 0%,rgba(10,10,12,.66) 38%,rgba(255,255,255,.08) 100%),
radial-gradient(circle at 15% 46%,rgba(230,55,50,.14),transparent 0 24%),
radial-gradient(circle at 84% 18%,rgba(255,255,255,.12),transparent 0 25%);
backdrop-filter:blur(2px)}
.hero-content{position:relative;z-index:2;padding:170px 0 80px}
.eyebrow,.section-kicker{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.2em;color:var(--red)}
.light{color:#ff7873}
h1,h2,h3{font-family:Oswald,Arial,sans-serif;text-transform:uppercase;margin:0}
h1{font-size:clamp(72px,10vw,150px);line-height:.83;letter-spacing:-.045em;max-width:900px}
.hero-copy{font-size:19px;line-height:1.52;max-width:650px;margin:28px 0 0;color:rgba(255,255,255,.9);font-weight:500;letter-spacing:-.01em}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;padding:14px 20px;border-radius:999px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;transition:.2s}
.button.red{background:var(--red);color:#fff}.button.red:hover{transform:translateY(-2px);background:#cf2b27}
.button.ghost{border:1px solid rgba(255,255,255,.6);color:#fff}.button.ghost:hover{background:#fff;color:#111}
.button.white{background:#fff;color:#111}.button.white:hover{transform:translateY(-2px)}
.hero-tag{position:absolute;right:24px;bottom:24px;z-index:2;font-size:10px;letter-spacing:.17em;font-weight:800;writing-mode:vertical-rl}
.intro{padding:120px 0}
.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;margin-top:28px;align-items:start}
.intro h2,.section-heading h2,.coverage h2,.contact h2,.statement h2{font-size:clamp(48px,6.2vw,90px);line-height:.92;letter-spacing:-.035em}
.intro-copy{border-top:1px solid var(--ink);padding-top:22px}.intro-copy p{font-size:18px;line-height:1.6;margin:0 0 18px;color:#2f2f2d;font-weight:500;letter-spacing:-.012em}
.feature-strip{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;padding:15px 0}
.feature-marquee{width:100%;overflow:hidden;font-family:Oswald,Arial,sans-serif;font-size:15px;letter-spacing:.08em}
.feature-marquee__track{display:inline-flex;align-items:center;width:max-content;min-width:max-content;white-space:nowrap;will-change:transform;animation:marquee 42s linear infinite;transform:translate3d(0,0,0)}
.feature-marquee__item{display:block;flex:0 0 auto;padding-right:42px}
@keyframes marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-25%,0,0)}}
.media-section{padding:120px 0}
.section-heading{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:end;margin-bottom:48px}
.section-heading h2{margin-top:25px}.section-heading>p{max-width:520px;font-size:16px;line-height:1.65;color:var(--muted);margin:0 0 5px}
.media-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.media-tab{appearance:none;border:1px solid var(--ink);background:transparent;color:var(--ink);border-radius:999px;padding:15px 28px;font-family:Archivo,Arial,sans-serif;font-size:16px;font-weight:800;letter-spacing:.08em;cursor:pointer;transition:.2s}
.media-tab:hover,.media-tab.is-active{background:var(--ink);color:#fff}
.media-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.media-gallery--all{margin-top:0}
.media-gallery__card{position:relative;overflow:hidden;aspect-ratio:4/3;background:#111;border-radius:3px}
.media-gallery__card::before{display:none}
.media-gallery__card img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .45s ease;image-rendering:auto;backface-visibility:hidden;transform:translateZ(0);filter:contrast(1.04) saturate(1.03)}
.media-gallery__card:hover img{transform:translateZ(0) scale(1.012)}
.media-gallery__shade{position:absolute;inset:0;z-index:2;background:linear-gradient(0deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.12) 46%,transparent 72%)}
.media-gallery__card h4{position:absolute;z-index:3;left:18px;right:18px;bottom:16px;margin:0;color:#fff;font-family:Oswald,Arial,sans-serif;font-size:27px;line-height:1;text-transform:uppercase;letter-spacing:-.02em;text-shadow:0 2px 8px rgba(0,0,0,.25)}
.statement{background:var(--ink);color:#fff;padding:110px 0}.statement-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:end}.statement h2{margin-top:24px}.statement p{font-size:18px;line-height:1.65;color:#bababa;margin:0;border-top:1px solid #4d4d4d;padding-top:22px}
.coverage{padding:120px 0}.coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:30px}.coverage-grid>div>p{font-size:17px;line-height:1.65;color:var(--muted);max-width:530px}.coverage-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}.coverage-cards div{min-height:170px;background:#fff;border:1px solid var(--line);padding:24px;display:flex;flex-direction:column;justify-content:space-between}.coverage-cards strong{font-family:Oswald;font-size:42px;color:var(--red)}.coverage-cards span{font-size:13px;line-height:1.45;color:var(--muted)}
.contact{background:var(--red);color:#fff;padding:110px 0}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end}.contact h2{margin-top:24px}.contact-box{border-top:1px solid rgba(255,255,255,.5);padding-top:22px}.contact-box p{font-size:18px;line-height:1.55;max-width:480px;margin:0 0 26px}.contact-box small{display:block;margin-top:16px;color:rgba(255,255,255,.72)}
.footer{min-height:110px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.footer img{width:115px}.footer a{text-decoration:none}
@media(max-width:900px){.site-header{padding:0 22px}.shell{width:min(100% - 36px,1180px)}.menu-btn{display:block}.nav{position:absolute;top:78px;left:0;right:0;background:var(--paper);display:none;flex-direction:column;align-items:stretch;padding:20px 24px;border-bottom:1px solid var(--line)}.nav.is-open{display:flex}.nav-cta{text-align:center}.hero{min-height:86vh}.hero-content{padding:145px 0 55px}.intro-grid,.section-heading,.statement-grid,.coverage-grid,.contact-grid{grid-template-columns:1fr;gap:34px}.media-gallery{grid-template-columns:1fr 1fr}.coverage-cards{margin-top:10px}.intro,.media-section,.coverage{padding:85px 0}.statement,.contact{padding:80px 0}.footer{flex-wrap:wrap;padding:30px 0}}
@media(max-width:600px){.brand img{width:140px;max-height:42px}.feature-strip{padding:12px 0}.feature-marquee{font-size:14px}.feature-marquee__track{animation-duration:30s}h1{font-size:62px}.hero-copy{font-size:16px}.section-heading h2,.intro h2,.coverage h2,.contact h2,.statement h2{font-size:50px}.media-gallery{grid-template-columns:1fr}.media-gallery__card{aspect-ratio:4/3}.coverage-cards{grid-template-columns:1fr}.footer{align-items:flex-start;flex-direction:column}.hero-tag{display:none}}


/* Encuadres específicos de medios */
.media-gallery__card--pantallas-led img{
  object-position:50% 50%;
}
.media-gallery__card--medianeras img{
  object-position:40% 18%;
}

.media-gallery__card[hidden]{display:none!important}
@media(max-width:600px){
  .media-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .media-tab{width:100%;text-align:center;padding:14px 12px;font-size:15px}
}


/* HERO DOOH INTERACTIVO */
.hero{
  --mx:68%;
  --my:32%;
  --tilt-x:0deg;
  --tilt-y:0deg;
  background:
    radial-gradient(circle at var(--mx) var(--my),rgba(230,55,50,.22),transparent 0 18%),
    radial-gradient(circle at 83% 18%,rgba(255,255,255,.14),transparent 0 24%),
    linear-gradient(112deg,#07090b 0%,#14171b 38%,#3e4248 68%,#b7bcc2 100%);
}
.hero::before{
  content:"";
  position:absolute;
  inset:-14%;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 58%,rgba(230,55,50,.26),transparent 0 17%),
    radial-gradient(circle at 70% 20%,rgba(255,255,255,.16),transparent 0 20%),
    radial-gradient(circle at 56% 76%,rgba(127,154,190,.10),transparent 0 18%);
  filter:blur(72px);
  opacity:.95;
  animation:heroAurora 12s ease-in-out infinite alternate;
}
.hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.5),transparent 78%);
  opacity:.5;
  animation:heroGrid 18s linear infinite;
}
.hero-media{opacity:.16;transform:scale(1.12)}
.hero-media img{filter:blur(28px) saturate(1.1) contrast(1.05);transform:scale(1.08)}
.hero-overlay{
  background:
    linear-gradient(90deg,rgba(3,4,6,.94) 0%,rgba(8,9,12,.68) 40%,rgba(255,255,255,.06) 100%),
    radial-gradient(circle at var(--mx) var(--my),rgba(230,55,50,.13),transparent 0 20%),
    radial-gradient(circle at 84% 18%,rgba(255,255,255,.10),transparent 0 24%);
  backdrop-filter:blur(3px);
}
@keyframes heroAurora{
  0%{transform:translate3d(-1.5%,0,0) scale(1)}
  100%{transform:translate3d(1.5%,-1.5%,0) scale(1.03)}
}
@keyframes heroGrid{
  from{background-position:0 0,0 0}
  to{background-position:0 42px,42px 0}
}
.hero-billboard{
  position:relative;
  display:inline-block;
  margin:18px 0 38px;
  transform:perspective(1200px) rotateX(var(--tilt-y)) rotateY(var(--tilt-x));
  transform-origin:center;
  transition:transform .18s ease-out;
  will-change:transform;
}
.hero-billboard::before,
.hero-billboard::after{
  content:"";
  position:absolute;
  bottom:-27px;
  width:16px;
  height:30px;
  background:linear-gradient(90deg,#34383d,#8d949b 45%,#2a2d31 100%);
  border-radius:1px;
  box-shadow:0 10px 18px rgba(0,0,0,.32);
  z-index:-1;
}
.hero-billboard::before{left:18%}
.hero-billboard::after{right:18%}
.hero-billboard__screen{
  position:relative;
  display:inline-block;
  padding:24px 34px 25px;
  background:linear-gradient(180deg,rgba(17,19,22,.96),rgba(5,6,8,.98));
  border:8px solid #2b2f34;
  border-radius:4px;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.18) inset,
    0 0 0 2px rgba(0,0,0,.8),
    0 18px 45px rgba(0,0,0,.55),
    0 0 38px rgba(230,55,50,.10);
  overflow:hidden;
}
.hero-billboard__screen::before{
  content:"";
  position:absolute;
  inset:0;
  background:repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 4px);
  pointer-events:none;
  mix-blend-mode:screen;
}
.hero-billboard__screen::after{
  content:"";
  position:absolute;
  left:-20%;
  top:-45%;
  width:45%;
  height:190%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);
  transform:rotate(14deg);
  animation:billboardSweep 6.8s ease-in-out infinite;
  pointer-events:none;
}
@keyframes billboardSweep{
  0%,55%{transform:translateX(-35%) rotate(14deg)}
  85%,100%{transform:translateX(330%) rotate(14deg)}
}
.hero-billboard h1{
  position:relative;
  z-index:2;
  color:#fff;
  font-size:clamp(60px,7.8vw,112px);
  max-width:none;
  text-shadow:0 0 18px rgba(255,255,255,.08);
}
.hero-billboard__bolt{
  position:absolute;
  width:7px;
  height:7px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 35%,#d7dce0 0 25%,#777e85 26% 55%,#2a2e31 56%);
  box-shadow:0 1px 2px rgba(0,0,0,.8);
  z-index:4;
}
.bolt-a{left:9px;top:9px}
.bolt-b{right:9px;top:9px}
.bolt-c{left:9px;bottom:9px}
.bolt-d{right:9px;bottom:9px}

@media(max-width:600px){
  .hero-billboard{margin:14px 0 34px;max-width:100%}
  .hero-billboard__screen{padding:18px 20px 20px;border-width:6px}
  .hero-billboard h1{font-size:48px}
}
@media(prefers-reduced-motion:reduce){
  .hero::before,.hero::after,.hero-billboard__screen::after{animation:none!important}
  .hero-billboard{transition:none}
}

.hero:hover .hero-billboard{
  transform:perspective(1200px) rotateX(-.6deg) rotateY(1deg) translateY(-3px);
}
.hero:hover .hero-billboard__screen{
  box-shadow:
    0 0 0 1px rgba(255,255,255,.18) inset,
    0 0 0 2px rgba(0,0,0,.8),
    0 22px 55px rgba(0,0,0,.58),
    0 0 52px rgba(230,55,50,.16);
}


/* INTERACCION HOVER EN MEDIOS */
.media-gallery{
  overflow:visible;
}
.media-gallery__card{
  cursor:pointer;
  transform:translateZ(0) scale(1);
  transform-origin:center;
  transition:transform .28s cubic-bezier(.2,.75,.2,1),box-shadow .28s ease;
  will-change:transform;
}
.media-gallery__card:hover{
  z-index:10;
  transform:translateZ(0) scale(1.055);
  box-shadow:0 18px 46px rgba(0,0,0,.22);
}
.media-gallery__card:hover img{
  transform:translateZ(0) scale(1.035);
}
@media(max-width:900px){
  .media-gallery__card:hover{
    transform:translateZ(0) scale(1.025);
  }
}
@media(hover:none){
  .media-gallery__card:hover{
    transform:none;
    box-shadow:none;
  }
  .media-gallery__card:hover img{
    transform:translateZ(0);
  }
}


/* Encuadres nuevas fotos */
.media-gallery__card--mupis-led img,
.media-gallery__card--lunetas img{
  object-position:50% 50%;
}
.media-gallery__card--carrefour{
  background:transparent;
}
.media-gallery__card--carrefour img{
  object-fit:cover;
  object-position:50% 50%;
  transform:translateZ(0) scale(1);
}
.media-gallery__card--carrefour:hover img{
  transform:translateZ(0) scale(1.035);
}


.media-gallery__card--espectaculares img{
  object-position:50% 50%;
  transform:translateZ(0) scale(1.04);
}
.media-gallery__card--espectaculares:hover img{
  transform:translateZ(0) scale(1.075);
}


/* HERO FOTO NOCTURNA */
.hero-media{
  opacity:1;
  transform:none;
}
.hero-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  filter:none;
  transform:none;
}
.hero-overlay{
  background:
    linear-gradient(90deg,
      rgba(4,6,9,.88) 0%,
      rgba(4,6,9,.68) 36%,
      rgba(4,6,9,.28) 58%,
      rgba(4,6,9,.08) 78%,
      rgba(4,6,9,.12) 100%);
  backdrop-filter:none;
}
.hero::before{
  opacity:.28;
}
.hero::after{
  opacity:.12;
}
.hero h1{
  text-shadow:0 4px 28px rgba(0,0,0,.42);
}
@media(max-width:900px){
  .hero-media img{object-position:62% center}
}
@media(max-width:600px){
  .hero-media img{object-position:68% center}
  .hero-overlay{
    background:linear-gradient(90deg,rgba(4,6,9,.88) 0%,rgba(4,6,9,.64) 58%,rgba(4,6,9,.25) 100%);
  }
}


/* PALETA PREMIUM PCYM */
:root{
  --red:#c92f2a;
  --red-deep:#8f1715;
  --ink:#11151a;
  --paper:#f2f0eb;
  --white:#fff;
  --muted:#62666d;
  --line:#d6d1c8;
}

body{
  background:linear-gradient(180deg,#f3f1ec 0%,#efede7 100%);
  color:var(--ink);
}

.site-header{
  background:rgba(246,244,239,.92);
  border-bottom:1px solid rgba(17,21,26,.08);
  box-shadow:0 6px 24px rgba(17,21,26,.035);
}

.nav a:hover{color:var(--red)}
.nav-cta{
  border-color:#2a2d31;
}
.nav-cta:hover{
  background:#15191e;
  color:#fff!important;
}

.eyebrow,
.section-kicker{
  color:var(--red);
}

.light{
  color:#f07b76;
}

.button.red{
  background:linear-gradient(180deg,#d63a34 0%,#b8211d 100%);
  box-shadow:0 8px 22px rgba(143,23,21,.20), inset 0 1px 0 rgba(255,255,255,.18);
}
.button.red:hover{
  background:linear-gradient(180deg,#e0453e 0%,#a91d19 100%);
  box-shadow:0 12px 28px rgba(143,23,21,.26);
}

.feature-strip{
  background:#fbfaf7;
  border-color:#d8d2c9;
}

.media-tab{
  border-color:#2b2f34;
  color:#1b1f24;
  background:rgba(255,255,255,.28);
}
.media-tab:hover{
  border-color:var(--red);
  color:var(--red);
}
.media-tab.is-active{
  background:linear-gradient(180deg,#1b2026 0%,#0f1317 100%);
  color:#fff;
  border-color:#101419;
  box-shadow:0 8px 20px rgba(17,21,26,.12);
}

.media-gallery__card{
  background:#12161b;
  box-shadow:0 1px 0 rgba(255,255,255,.6) inset;
}
.media-gallery__card:hover{
  box-shadow:0 18px 46px rgba(17,21,26,.20);
}

.coverage-cards div{
  background:linear-gradient(180deg,#fff 0%,#faf9f6 100%);
  border-color:#d7d1c8;
  box-shadow:0 12px 30px rgba(17,21,26,.045);
}
.coverage-cards strong{
  color:var(--red);
}
.coverage-cards span{
  color:#666a70;
}

.contact{
  background:
    radial-gradient(circle at 82% 18%,rgba(255,255,255,.10),transparent 0 22%),
    linear-gradient(135deg,#8f1715 0%,#b8231f 52%,#7d1312 100%);
}
.contact-box{
  border-top-color:rgba(255,255,255,.38);
}

.footer{
  color:#282c31;
}


/* FONDO PREMIUM FULL-BLEED */
body{
  background:
    radial-gradient(circle at 12% 18%,rgba(201,47,42,.045),transparent 0 28%),
    radial-gradient(circle at 88% 42%,rgba(22,29,38,.065),transparent 0 30%),
    linear-gradient(180deg,#f2efe8 0%,#e9e6df 52%,#f1eee7 100%);
  background-attachment:fixed;
}

.intro,
.media-section,
.coverage{
  position:relative;
  isolation:isolate;
}

.intro::before,
.media-section::before,
.coverage::before{
  content:"";
  position:absolute;
  left:50%;
  width:100vw;
  top:0;
  bottom:0;
  transform:translateX(-50%);
  z-index:-1;
  pointer-events:none;
}

.intro::before{
  background:
    radial-gradient(circle at 18% 35%,rgba(201,47,42,.045),transparent 0 30%),
    linear-gradient(90deg,rgba(246,243,237,.94) 0%,rgba(235,232,225,.82) 100%);
}

.media-section::before{
  background:
    radial-gradient(circle at 82% 22%,rgba(20,27,35,.075),transparent 0 28%),
    radial-gradient(circle at 10% 72%,rgba(201,47,42,.035),transparent 0 24%),
    linear-gradient(180deg,rgba(239,236,229,.96) 0%,rgba(232,229,222,.96) 100%);
}

.coverage::before{
  background:
    radial-gradient(circle at 15% 25%,rgba(255,255,255,.52),transparent 0 26%),
    linear-gradient(90deg,rgba(236,233,226,.98) 0%,rgba(226,223,216,.98) 100%);
}

.feature-strip{
  background:rgba(247,244,238,.9);
  border-color:rgba(30,35,40,.12);
  backdrop-filter:blur(10px);
}

.intro,
.media-section,
.coverage{
  box-shadow:none;
  border:0;
}


/* CORRECCION FONDO SIN HOJA */
body{
  background:#ece9e2;
}

main{
  position:relative;
  background:
    radial-gradient(circle at 8% 22%,rgba(201,47,42,.055),transparent 0 24%),
    radial-gradient(circle at 92% 46%,rgba(18,26,35,.075),transparent 0 28%),
    radial-gradient(circle at 48% 78%,rgba(255,255,255,.38),transparent 0 32%),
    linear-gradient(180deg,#f1eee7 0%,#e8e5de 48%,#efebe4 100%);
}

.intro::before,
.media-section::before,
.coverage::before{
  display:none!important;
}

.intro,
.media-section,
.coverage{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

.feature-strip{
  position:relative;
  z-index:2;
  background:rgba(243,240,234,.86);
  border-top:1px solid rgba(17,21,26,.10);
  border-bottom:1px solid rgba(17,21,26,.10);
  backdrop-filter:blur(10px);
}


/* EMPRESAS QUE CONFIAN EN PCYM */
.clients-section{
  padding-top:96px;
  padding-bottom:96px;
}

.clients-heading{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);
  gap:64px;
  align-items:end;
  margin-top:24px;
  margin-bottom:48px;
}

.clients-heading h2{
  margin:0;
  font-family:"Oswald",sans-serif;
  font-size:clamp(46px,5.6vw,82px);
  line-height:.95;
  letter-spacing:-.035em;
  text-transform:uppercase;
}

.clients-heading p{
  margin:0;
  max-width:620px;
  color:#5f6369;
  font-size:17px;
  line-height:1.65;
}

.clients-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid rgba(17,21,26,.13);
  border-left:1px solid rgba(17,21,26,.13);
}

.client-logo{
  min-height:116px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px 18px;
  border-right:1px solid rgba(17,21,26,.13);
  border-bottom:1px solid rgba(17,21,26,.13);
  background:rgba(255,255,255,.16);
  color:#34383e;
  font-weight:800;
  font-size:clamp(16px,1.45vw,22px);
  letter-spacing:-.02em;
  text-align:center;
  filter:grayscale(1);
  transition:
    transform .25s ease,
    background .25s ease,
    color .25s ease,
    box-shadow .25s ease;
}

.client-logo:hover{
  position:relative;
  z-index:2;
  transform:translateY(-3px);
  background:rgba(255,255,255,.72);
  color:var(--red);
  box-shadow:0 14px 30px rgba(17,21,26,.08);
}

@media(max-width:900px){
  .clients-section{
    padding-top:72px;
    padding-bottom:72px;
  }
  .clients-heading{
    grid-template-columns:1fr;
    gap:22px;
  }
  .clients-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:600px){
  .clients-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .client-logo{
    min-height:96px;
    padding:18px 12px;
    font-size:15px;
  }
}


/* LOGOS CLIENTES */
.client-logo--image img{
  display:block;
  max-width:72%;
  max-height:52px;
  width:auto;
  height:auto;
  object-fit:contain;
  filter:grayscale(1) contrast(.9);
  opacity:.82;
  transition:filter .25s ease, opacity .25s ease, transform .25s ease;
}
.client-logo--image:hover img{
  filter:none;
  opacity:1;
  transform:scale(1.035);
}


/* AJUSTE LOGOS CLIENTES SUBIDOS */
.client-logo--image{
  overflow:hidden;
}
.client-logo--image img{
  display:block;
  max-width:74%;
  max-height:58px;
  width:auto;
  height:auto;
  object-fit:contain;
  filter:grayscale(1) contrast(.92);
  opacity:.8;
  mix-blend-mode:multiply;
  transition:filter .25s ease,opacity .25s ease,transform .25s ease;
}
.client-logo--image:hover img{
  filter:none;
  opacity:1;
  transform:scale(1.045);
}
.client-logo--missing{
  color:#777b80;
  font-size:15px;
  font-weight:700;
}


/* FIX VISIBILIDAD LOGOS CLIENTES */
.client-logo--image{
  background:rgba(255,255,255,.58)!important;
}
.client-logo--image img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:76%!important;
  max-height:64px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
  filter:none!important;
  mix-blend-mode:normal!important;
}
.client-logo--image:hover img{
  transform:scale(1.04);
}


/* LOGOS CLIENTES A COLOR */
.client-logo--image{
  filter:none!important;
  background:rgba(255,255,255,.72)!important;
}
.client-logo--image img{
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  max-width:78%!important;
  max-height:68px!important;
}
.client-logo--banco img{
  max-width:88%!important;
  max-height:78px!important;
}
.client-logo--image:hover{
  background:#fff!important;
}
.client-logo--image:hover img{
  filter:none!important;
  transform:scale(1.045);
}


/* SCROLL REVEAL PREMIUM */
.reveal-item{
  opacity:0;
  transform:translate3d(0,34px,0);
  transition:
    opacity .72s cubic-bezier(.22,.7,.2,1) var(--reveal-delay,0ms),
    transform .82s cubic-bezier(.22,.7,.2,1) var(--reveal-delay,0ms);
  will-change:opacity,transform;
}

.reveal-item.is-visible{
  opacity:1;
  transform:translate3d(0,0,0);
}

.section-kicker.reveal-item{
  transform:translate3d(-18px,14px,0);
}

.section-kicker.reveal-item.is-visible{
  transform:translate3d(0,0,0);
}

.intro h2.reveal-item,
.media-section h2.reveal-item,
.coverage h2.reveal-item,
.clients-heading h2.reveal-item,
.contact h2.reveal-item{
  transform:translate3d(0,44px,0) scale(.985);
  transform-origin:left bottom;
}

.intro h2.reveal-item.is-visible,
.media-section h2.reveal-item.is-visible,
.coverage h2.reveal-item.is-visible,
.clients-heading h2.reveal-item.is-visible,
.contact h2.reveal-item.is-visible{
  transform:translate3d(0,0,0) scale(1);
}

.media-gallery__card.reveal-item,
.client-logo.reveal-item,
.coverage-cards > div.reveal-item{
  transform:translate3d(0,28px,0) scale(.975);
}

.media-gallery__card.reveal-item.is-visible,
.client-logo.reveal-item.is-visible,
.coverage-cards > div.reveal-item.is-visible{
  transform:translate3d(0,0,0) scale(1);
}

/* Conserva las interacciones hover una vez revelado el contenido */
.media-gallery__card.reveal-item.is-visible:hover{
  transform:translateZ(0) scale(1.055);
}

.client-logo.reveal-item.is-visible:hover{
  transform:translateY(-3px);
}

@media(max-width:900px){
  .media-gallery__card.reveal-item.is-visible:hover{
    transform:translateZ(0) scale(1.025);
  }
}

@media(hover:none){
  .media-gallery__card.reveal-item.is-visible:hover,
  .client-logo.reveal-item.is-visible:hover{
    transform:translate3d(0,0,0);
  }
}

@media(prefers-reduced-motion:reduce){
  .reveal-item{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
}


/* CLIENTES FONDO BLANCO UNIFICADO */
.client-logo{
  background:#fff!important;
}
.client-logo--image{
  background:#fff!important;
}
.client-logo--image img{
  background:#fff;
}
.client-logo:hover,
.client-logo--image:hover{
  background:#fff!important;
}


/* AJUSTE ESSEN */
.client-logo--essen img{
  max-width:88%!important;
  max-height:82px!important;
}


/* INTERACCION CONTINUA CON SCROLL */
.hero-media img{
  transform:translate3d(0,var(--hero-scroll-shift,0px),0) scale(1.035)!important;
  transition:transform .12s linear;
  will-change:transform;
}

.reveal-item{
  transition:
    opacity .62s cubic-bezier(.22,.7,.2,1) var(--reveal-delay,0ms),
    transform .72s cubic-bezier(.22,.7,.2,1) var(--reveal-delay,0ms);
}

/* Al salir del viewport vuelve a su estado inicial para animarse otra vez
   tanto bajando como subiendo. */
.reveal-item:not(.is-visible){
  pointer-events:none;
}

@media(prefers-reduced-motion:reduce){
  .hero-media img{
    transform:none!important;
  }
  .reveal-item:not(.is-visible){
    pointer-events:auto;
  }
}
