/* PROT CARD — enhancements: mobile fixes, animated buttons, card hover,
   slide-in, coverflow marca carousel, accordion, sección full-bleed. */

/* ------ Animated gradient button — port of 21st.dev gradient-button
   using CSS @property (Chromium/Safari 16.4+, Firefox 128+). Adapted to
   the PROT CARD red palette. ------------------------------------------ */
@property --pcg-pos-x{syntax:'<percentage>';initial-value:11.14%;inherits:false}
@property --pcg-pos-y{syntax:'<percentage>';initial-value:140%;inherits:false}
@property --pcg-spread-x{syntax:'<percentage>';initial-value:150%;inherits:false}
@property --pcg-spread-y{syntax:'<percentage>';initial-value:180.06%;inherits:false}
@property --pcg-color-1{syntax:'<color>';initial-value:#000;inherits:false}
@property --pcg-color-2{syntax:'<color>';initial-value:#1a0004;inherits:false}
@property --pcg-color-3{syntax:'<color>';initial-value:#4e1010;inherits:false}
@property --pcg-color-4{syntax:'<color>';initial-value:#8E030C;inherits:false}
@property --pcg-color-5{syntax:'<color>';initial-value:#E30613;inherits:false}
@property --pcg-border-angle{syntax:'<angle>';initial-value:20deg;inherits:true}
@property --pcg-border-color-1{syntax:'<color>';initial-value:hsla(354,90%,60%,0.25);inherits:true}
@property --pcg-border-color-2{syntax:'<color>';initial-value:hsla(354,90%,45%,0.85);inherits:true}
@property --pcg-stop-1{syntax:'<percentage>';initial-value:37.35%;inherits:false}
@property --pcg-stop-2{syntax:'<percentage>';initial-value:61.36%;inherits:false}
@property --pcg-stop-3{syntax:'<percentage>';initial-value:78.42%;inherits:false}
@property --pcg-stop-4{syntax:'<percentage>';initial-value:89.52%;inherits:false}
@property --pcg-stop-5{syntax:'<percentage>';initial-value:100%;inherits:false}

.pc-btn-grad{
  position:relative;appearance:none;cursor:pointer;
  color:#fff !important;border:0 !important;text-decoration:none;
  background:radial-gradient(
    var(--pcg-spread-x) var(--pcg-spread-y) at var(--pcg-pos-x) var(--pcg-pos-y),
    var(--pcg-color-1) var(--pcg-stop-1),
    var(--pcg-color-2) var(--pcg-stop-2),
    var(--pcg-color-3) var(--pcg-stop-3),
    var(--pcg-color-4) var(--pcg-stop-4),
    var(--pcg-color-5) var(--pcg-stop-5)
  ) !important;
  transition:
    --pcg-pos-x .5s, --pcg-pos-y .5s,
    --pcg-spread-x .5s, --pcg-spread-y .5s,
    --pcg-color-1 .5s, --pcg-color-2 .5s, --pcg-color-3 .5s, --pcg-color-4 .5s, --pcg-color-5 .5s,
    --pcg-border-angle .5s, --pcg-border-color-1 .5s, --pcg-border-color-2 .5s,
    --pcg-stop-1 .5s, --pcg-stop-2 .5s, --pcg-stop-3 .5s, --pcg-stop-4 .5s, --pcg-stop-5 .5s,
    transform .2s ease, box-shadow .3s ease;
  box-shadow:0 8px 22px -8px rgba(227,6,19,.55);
}
.pc-btn-grad::before{
  content:'';position:absolute;inset:0;border-radius:inherit;padding:1px;
  background:linear-gradient(var(--pcg-border-angle),var(--pcg-border-color-1),var(--pcg-border-color-2));
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
          mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;
}
.pc-btn-grad:hover:not(:disabled){
  --pcg-pos-x:0%; --pcg-pos-y:91.51%;
  --pcg-spread-x:120.24%; --pcg-spread-y:103.18%;
  --pcg-color-1:#ffb0bd; --pcg-color-2:#ff5566; --pcg-color-3:#E30613; --pcg-color-4:#8E030C; --pcg-color-5:#000;
  --pcg-border-angle:190deg;
  --pcg-border-color-1:hsla(354,95%,90%,0.15);
  --pcg-border-color-2:hsla(354,90%,90%,0.7);
  --pcg-stop-1:0%; --pcg-stop-2:8.8%; --pcg-stop-3:21.44%; --pcg-stop-4:71.34%; --pcg-stop-5:85.76%;
  transform:translateY(-2px);
  box-shadow:0 16px 36px -10px rgba(227,6,19,.7);
}
.pc-btn-grad:active{transform:translateY(0)}
.pc-btn-grad:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}

/* Apply gradient look to the custom dropdown button when it has this modifier */
.pcs.pcs--dark .pcs__btn,
.pcs.pcs--ghost .pcs__btn{border-radius:2px}
.pcs.pcs--grad .pcs__btn{
  background:linear-gradient(120deg,rgba(227,6,19,.14) 0%,rgba(20,20,20,.35) 60%,rgba(227,6,19,.14) 100%) !important;
  background-size:200% 100% !important;
  border:1px solid rgba(227,6,19,.55) !important;color:#fff !important;padding:12px 14px !important;
  box-shadow:0 4px 14px -6px rgba(227,6,19,.4);transition:background-position .5s ease,border-color .2s ease,box-shadow .2s ease;
}
.pcs.pcs--grad:hover .pcs__btn:not(:disabled){background-position:-30% 0;border-color:#E30613 !important;box-shadow:0 10px 28px -8px rgba(227,6,19,.6)}
.pcs.pcs--grad.is-open .pcs__btn{border-color:#E30613 !important;box-shadow:0 0 0 3px rgba(227,6,19,.2)}

/* Hero dark selects get a gradient underline + red glow on hover */
.pc-hero-bg .pcs--dark .pcs__btn{
  border-bottom:1px solid transparent !important;
  background-image:linear-gradient(90deg,rgba(255,255,255,.35),rgba(255,255,255,.35)),
                   linear-gradient(90deg,#E30613 0%,#8E030C 50%,#E30613 100%) !important;
  background-size:100% 1px, 100% 2px !important;
  background-position:left bottom, left calc(100% + 1px) !important;
  background-repeat:no-repeat, no-repeat !important;
  transition:background-position .35s ease,color .2s ease !important;
}
.pc-hero-bg .pcs--dark:hover .pcs__btn:not(:disabled),
.pc-hero-bg .pcs--dark.is-open .pcs__btn{
  background-position:left bottom, left bottom !important;
  color:#fff !important;
}
.pc-hero-bg .pcs--dark.is-open .pcs__btn{filter:drop-shadow(0 4px 12px rgba(227,6,19,.4))}

/* ------ Hero background: red + black texture ------------------------- */
.pc-hero-bg{
  position:relative;isolation:isolate;overflow:hidden;
  background:
    radial-gradient(ellipse 60% 60% at 20% 20%, rgba(227,6,19,.35), transparent 60%),
    radial-gradient(ellipse 70% 60% at 80% 80%, rgba(142,3,12,.55), transparent 65%),
    linear-gradient(135deg,#0d0d0e 0%,#1a0709 40%,#0a0a0b 100%);
}
/* grid pattern removed per request */

/* ------ Hero fills the viewport above the finder -------------------- */
@media (min-width: 901px){
  [data-pc-hero-flex]{min-height:calc(100vh - 74px)}
  [data-pc-hero-flex] > [data-pc-hero-text]{
    justify-content:center !important;
    padding-top:clamp(24px,4vw,64px) !important;
    padding-bottom:clamp(24px,4vw,64px) !important;
  }
  [data-pc-hero-img]{min-height:calc(100vh - 74px) !important}
}

/* ------ Hero road with scroll-driven car ---------------------------- */
.pc-hero-road{
  position:relative;
  width:min(280px, 62%);height:32px;
  --pc-car-x:0px;
}
.pc-hero-road__line{
  position:absolute;left:0;right:0;bottom:4px;height:3px;
  background:linear-gradient(90deg,#E30613 0%,#8E030C 100%);
  border-radius:2px;
}
.pc-hero-road__line::after{
  content:"";position:absolute;left:0;right:0;top:6px;height:1px;
  background:repeating-linear-gradient(90deg,rgba(255,255,255,.35) 0 8px, transparent 8px 16px);
}
.pc-hero-road__car{
  position:absolute;left:0;bottom:-2px;width:60px;height:26px;
  transform:translate3d(var(--pc-car-x,0px),0,0) scaleX(-1);
  transition:transform .18s cubic-bezier(.2,.7,.2,1);
  filter:drop-shadow(0 4px 8px rgba(227,6,19,.45));
  will-change:transform;
}
@media (prefers-reduced-motion: reduce){
  .pc-hero-road__car{transition:none}
}

/* ------ Hero slideshow ---------------------------------------------- */
.pc-hero-slides{isolation:isolate}
.pc-hero-slide{
  position:absolute;left:0;right:0;top:-34%;
  height:168%;width:100%;object-fit:cover;
  opacity:0;transform:scale(1.06);
  transition:opacity 1.4s ease, transform 8s ease;
  will-change:opacity,transform;
  filter:contrast(1.05) saturate(1.05);
  z-index:1;
}
.pc-hero-slide.is-active{opacity:1;transform:scale(1)}
@media (prefers-reduced-motion: reduce){
  .pc-hero-slide{transition:opacity .3s ease}
  .pc-hero-slide.is-active{transform:none}
}
.pc-hero-bg::after{
  content:"";position:absolute;inset:-40%;z-index:0;pointer-events:none;
  background:conic-gradient(from 180deg at 50% 50%,transparent 0deg,rgba(227,6,19,.22) 80deg,transparent 160deg,rgba(227,6,19,.15) 240deg,transparent 340deg);
  filter:blur(60px);opacity:.7;animation:pcHeroRot 24s linear infinite;
}
@keyframes pcHeroGrid{from{background-position:0 0, 0 0}to{background-position:56px 56px, -56px 56px}}
@keyframes pcHeroRot{to{transform:rotate(1turn)}}
.pc-hero-bg > *{position:relative;z-index:1}
@media (prefers-reduced-motion: reduce){.pc-hero-bg::after,.pc-hero-bg::before{animation:none}}

/* ------ Full-bleed section with image bg (Una línea completa) -------- */
.pc-bleed{position:relative;isolation:isolate;overflow:hidden;color:#F2F2F3;background:#141414}
.pc-bleed__bg{
  position:absolute;inset:0;z-index:0;
  background-size:cover;background-position:center;
  transform:scale(1.06);will-change:transform;
}
.pc-bleed__scrim{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(10,10,10,.35) 0%,rgba(10,10,10,.55) 50%,rgba(10,10,10,.9) 100%);
}
.pc-bleed > .pc-bleed__inner{position:relative;z-index:2}
.pc-bleed h1,.pc-bleed h2,.pc-bleed h3,.pc-bleed h4,.pc-bleed p{color:#F2F2F3}
.pc-bleed .pc-bleed__eyebrow{color:#F2F2F3;opacity:.75}
.pc-bleed__title{
  animation:pcRise .8s cubic-bezier(.2,.7,.2,1) both;
}
/* Toggle inside bleed section is always white on top of dark image */
.pc-bleed .pc-tog-wrap > button{color:#fff !important;opacity:.9;transition:opacity .2s ease,color .2s ease}
.pc-bleed .pc-tog-wrap > button:hover{opacity:1}

/* ------ "Producción propia" info-card hover (glow + tilt + shine) --- */
.pc-icard{
  position:relative;isolation:isolate;overflow:hidden;
  background:#fff;border:1px solid rgba(20,20,20,.1);
  transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease,border-color .3s ease;
  will-change:transform;
}
.pc-icard::before{
  content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;pointer-events:none;
  background:linear-gradient(120deg,transparent 40%,rgba(227,6,19,.35) 50%,transparent 60%);
  background-size:250% 250%;background-position:120% 0;transition:background-position .8s ease,opacity .3s ease;opacity:0;
}
.pc-icard::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(200px 200px at var(--pcx,50%) var(--pcy,50%),rgba(227,6,19,.14),transparent 60%);
  opacity:0;transition:opacity .3s ease;
}
.pc-icard:hover{
  transform:translateY(-6px);
  border-color:rgba(227,6,19,.4);
  box-shadow:0 22px 40px -18px rgba(227,6,19,.4),0 8px 20px -8px rgba(20,20,20,.18);
}
.pc-icard:hover::before{background-position:-30% 0;opacity:1}
.pc-icard:hover::after{opacity:1}
.pc-icard > *{position:relative;z-index:1}

/* ------ Slide-in on scroll (IntersectionObserver toggles .pc-in) ----- */
.pc-slide{opacity:0;transform:translateX(-64px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.pc-slide.pc-in{opacity:1;transform:none}
.pc-slide--right{transform:translateX(64px)}
.pc-slide--up{transform:translateY(46px)}
.pc-slide--scale{transform:scale(1.08);transform-origin:center}
.pc-slide--scale.pc-in{transform:scale(1)}

/* ------ Marcas coverflow: logos only, prev/next, infinite --------- */
.pc-cover-wrap{position:relative;margin-top:24px}
.pc-cover{
  display:flex;gap:22px;
  overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x mandatory;scroll-behavior:smooth;
  padding:24px calc(50% - 130px) 32px;
  perspective:1400px;
  scrollbar-width:none;-ms-overflow-style:none;
}
.pc-cover::-webkit-scrollbar{display:none}
.pc-cover__card{
  flex:0 0 260px;height:160px;
  scroll-snap-align:center;
  display:flex;align-items:center;justify-content:center;
  background:#fff;border:1px solid rgba(20,20,20,.12);border-radius:6px;
  cursor:pointer;padding:0 28px;
  transform-style:preserve-3d;
  transform:scale(.85) rotateY(0deg);filter:grayscale(.4) brightness(.9);
  transition:transform .5s cubic-bezier(.2,.7,.2,1),filter .4s ease,box-shadow .4s ease,border-color .3s ease;
  will-change:transform;
}
.pc-cover__card img{max-width:100%;max-height:80px;width:auto;height:auto;object-fit:contain;pointer-events:none}
.pc-cover__card:hover{filter:grayscale(0) brightness(1)}
.pc-cover__card.is-focus{transform:scale(1) rotateY(0deg);filter:none;border-color:#E30613;box-shadow:0 24px 48px -22px rgba(227,6,19,.4),0 8px 20px -12px rgba(20,20,20,.2)}
.pc-cover__card.is-left{transform:translateX(24px) scale(.85) rotateY(18deg);filter:grayscale(.6) brightness(.85)}
.pc-cover__card.is-right{transform:translateX(-24px) scale(.85) rotateY(-18deg);filter:grayscale(.6) brightness(.85)}
.pc-cover-nav{
  position:absolute;top:50%;transform:translateY(-50%);z-index:5;
  width:46px;height:46px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:#fff;color:#141414;
  border:1px solid rgba(20,20,20,.14);
  box-shadow:0 10px 24px -10px rgba(20,20,20,.25);
  cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}
.pc-cover-nav:hover{background:#E30613;color:#fff;border-color:#E30613;transform:translateY(-50%) scale(1.05)}
.pc-cover-nav:active{transform:translateY(-50%) scale(.95)}
.pc-cover-nav--prev{left:8px}
.pc-cover-nav--next{right:8px}
@media (max-width: 900px){
  .pc-cover__card{flex-basis:220px;height:140px}
  .pc-cover__card img{max-height:64px}
  .pc-cover{padding:20px calc(50% - 110px) 26px}
  .pc-cover-nav{width:40px;height:40px}
  .pc-cover-nav--prev{left:4px}
  .pc-cover-nav--next{right:4px}
}

/* ------ FAQ accordion smooth ----------------------------------------- */
.pc-faq{border-top:1px solid rgba(20,20,20,.14)}
.pc-faq__row{border-bottom:1px solid rgba(20,20,20,.14);transition:background .25s ease}
.pc-faq__row:hover{background:rgba(20,20,20,.02)}
.pc-faq__btn{
  width:100%;display:flex;justify-content:space-between;align-items:center;gap:18px;
  background:transparent;border:0;padding:22px 22px;cursor:pointer;text-align:left;
  font-family:'Barlow Condensed',system-ui,sans-serif;font-size:22px;color:#141414;line-height:1.15;
  transition:color .2s ease;
}
.pc-faq__btn:hover{color:#B4040F}
.pc-faq__ico{
  flex:none;width:34px;height:34px;border-radius:50%;
  background:#F2F2F3;border:1px solid rgba(20,20,20,.15);
  display:inline-flex;align-items:center;justify-content:center;color:#141414;
  transition:transform .35s cubic-bezier(.2,.7,.2,1),background .25s ease,color .2s ease,border-color .25s ease;
}
.pc-faq__row.is-open .pc-faq__ico{transform:rotate(45deg);background:#E30613;color:#fff;border-color:#E30613}
.pc-faq__body{
  display:grid;grid-template-rows:0fr;
  transition:grid-template-rows .45s cubic-bezier(.2,.7,.2,1);
}
.pc-faq__row.is-open .pc-faq__body{grid-template-rows:1fr}
.pc-faq__body > div{overflow:hidden}
.pc-faq__inner{padding:0 22px 22px;color:#4a4a4a;font-size:16px;max-width:60ch}

/* ------ Sticky WA floating pill — safer bottom position -------------- */
.pc-fab-wrap{
  position:fixed !important;bottom:20px;right:20px;
  z-index:70;pointer-events:none;
  transition:opacity .3s ease,transform .3s ease;
}
.pc-fab-wrap > *{pointer-events:auto}
.pc-fab-wrap.is-hidden{opacity:0;transform:translateY(20px) scale(.9);pointer-events:none}
.pc-fab-wrap.is-hidden > *{pointer-events:none}

/* ------ MOBILE (< 900px) --------------------------------------------- */
.pc-menu-btn{
  display:none;flex:none;background:transparent;border:1px solid rgba(20,20,20,.2);
  width:42px;height:42px;border-radius:2px;cursor:pointer;padding:0;
  align-items:center;justify-content:center;color:#141414;
}
.pc-menu-btn svg{width:22px;height:22px}
.pc-menu-btn:hover{border-color:#E30613;color:#E30613}

@media (max-width: 900px){
  /* Header collapses to logo + hamburger + WA */
  header nav[data-pc-nav]{
    display:none !important;
  }
  header nav[data-pc-nav].is-open{
    display:flex !important;
    position:absolute !important;
    top:100% !important;left:0 !important;right:0 !important;
    flex-direction:column !important;
    background:#141414 !important;color:#fff !important;
    padding:14px 20px 20px !important;
    z-index:65 !important;gap:0 !important;
    box-shadow:0 20px 34px -16px rgba(0,0,0,.4);
    animation:pcRise .25s ease both;
  }
  header nav[data-pc-nav].is-open a{
    color:#F2F2F3 !important;padding:14px 4px !important;
    border-bottom:1px solid rgba(255,255,255,.08) !important;
    -webkit-text-stroke:0 !important;
    font-size:16px !important;
  }
  header nav[data-pc-nav].is-open a:last-child{border-bottom:0 !important}
  .pc-menu-btn{display:inline-flex;margin-left:auto !important}
  /* Hide the WhatsApp desktop button in header on mobile — the floating fab covers it */
  [data-pc-wa-header]{display:none !important}
  /* HERO MOBILE — mismo vibe que desktop: texto arriba sobre bg oscuro
     con acentos rojos, imagen debajo con corte diagonal en la parte
     superior. --------------------------------------------------------- */
  [data-pc-hero-flex]{
    display:flex !important;
    flex-direction:column !important;
    position:relative !important;
    min-height:calc(100vh - 60px) !important;
    height:calc(100dvh - 60px) !important;
  }
  [data-pc-hero-text]{
    order:1 !important;
    flex:1 1 auto !important;min-height:0 !important;
    position:relative !important;z-index:2;
    padding:36px 22px 30px !important;
    display:flex !important;flex-direction:column !important;justify-content:center !important;
    background:transparent !important;
  }
  [data-pc-hero-text] > div{width:100%}
  [data-pc-hero-h1]{
    font-size:clamp(34px, 9vw, 50px) !important;
    line-height:1 !important;color:#fff !important;max-width:none !important;
  }
  [data-pc-hero-text] p{
    font-size:15px !important;line-height:1.5 !important;
    color:rgba(255,255,255,.78) !important;margin:0 0 22px !important;
  }
  [data-pc-hero-text] .pc-hero-road{width:min(220px, 60%) !important;margin:16px 0 20px !important}
  [data-pc-hero-text] > div > div:last-child{gap:10px !important;flex-direction:column !important;align-items:stretch !important}
  [data-pc-hero-text] > div > div:last-child a,
  [data-pc-hero-text] > div > div:last-child button{
    padding:14px 18px !important;font-size:14px !important;letter-spacing:.06em !important;
    justify-content:center !important;text-align:center !important;width:100% !important;
  }
  [data-pc-hero-img]{
    order:2 !important;
    position:relative !important;inset:auto !important;
    flex:none !important;
    height:44vh !important;min-height:280px !important;width:100% !important;
    animation:none !important;overflow:hidden !important;
    -webkit-clip-path:polygon(0 14%, 100% 0, 100% 100%, 0 100%) !important;
    clip-path:polygon(0 14%, 100% 0, 100% 100%, 0 100%) !important;
    margin-top:-4vh !important;
  }
  [data-pc-hero-img] img{
    position:absolute !important;top:0 !important;left:0 !important;right:0 !important;
    width:100% !important;height:100% !important;
    object-fit:cover !important;object-position:center !important;
  }
  [data-pc-hero-img] > div{
    background:linear-gradient(180deg,rgba(10,5,7,.5) 0%,rgba(10,5,7,0) 40%,rgba(10,5,7,.35) 100%) !important;
  }
  /* Finder grid: 1 column, full width buttons */
  [data-pc-finder-grid]{grid-template-columns:1fr !important}
  [data-pc-finder-grid] > *{border-right:0 !important;border-bottom:1px solid rgba(255,255,255,.18) !important}
  [data-pc-finder-grid] > button:last-child{border-bottom:0 !important;padding:18px 14px !important}
  /* Catálogo header stack */
  [data-pc-cat-head]{flex-direction:column !important;align-items:flex-start !important;gap:10px !important}
  /* Filters grid */
  [data-pc-cat-filters]{grid-template-columns:1fr !important}
  [data-pc-cat-filters] > *{border-right:0 !important;border-bottom:1px solid rgba(20,20,20,.16) !important}
  [data-pc-cat-filters] > *:last-child{border-bottom:0 !important}
  /* Zona cubierta por la pieza — label más chica que no se salga en mobile */
  .pc-zone-label{
    font-size:9px !important;letter-spacing:.08em !important;padding:3px 6px !important;
    max-width:90% !important;
  }
  /* Product grids: 2 columnas en mobile, más denso */
  [data-pc-grid-2]{grid-template-columns:repeat(2,1fr) !important;gap:10px !important}
  [data-pc-grid-2] article > div:first-child img{height:130px !important}
  [data-pc-grid-2] article h3{font-size:17px !important;line-height:1.1 !important}
  [data-pc-grid-2] article > div:last-child{padding:12px 12px 14px !important;gap:4px !important}
  [data-pc-grid-2] article > div:last-child > div:last-child{padding-top:10px !important;flex-direction:column !important;align-items:stretch !important;gap:8px !important}
  [data-pc-grid-2] article > div:last-child > div:last-child > span{font-size:13px !important}
  [data-pc-grid-2] article > div:last-child > div:last-child > button{font-size:11px !important;padding:8px 10px !important;letter-spacing:.05em !important;justify-content:center}
  /* Ficha layout stack */
  [data-pc-ficha-grid]{grid-template-columns:1fr !important}
  /* Sticky WA pill smaller so it doesn't fill the width */
  .pc-fab-wrap > a{padding:10px 14px !important;font-size:12px !important;letter-spacing:.05em !important}
  .pc-fab-wrap > a svg{width:16px !important;height:16px !important}
  /* Coverflow: keep working */
  .pc-cover{padding:24px 20px 30px}
  .pc-cover__card{flex-basis:88vw}
  /* Comparador con protector — vertical */
  [data-pc-compare]{grid-template-columns:1fr !important}
  /* iOS/Safari mobile ignora background-attachment:fixed -> fallback */
  [role="img"][style*="background-attachment:fixed"]{
    background-attachment:scroll !important;
    background-position:center center !important;
  }
  /* Nosotros y contacto tiles */
  [data-pc-tiles]{grid-template-columns:1fr !important}
  [data-pc-tiles] > *{border-right:0 !important;border-bottom:1px solid rgba(20,20,20,.16);padding-left:0 !important;padding-right:0 !important}
  [data-pc-tiles] > *:last-child{border-bottom:0}
  /* Footer más compacto en mobile */
  footer > div:first-child{
    grid-template-columns:1fr 1fr !important;
    gap:22px !important;
    padding:34px 20px 18px !important;
  }
  footer > div:first-child img{height:30px !important}
  footer > div:first-child p{font-size:13px !important;margin-top:8px !important;line-height:1.35}
  footer > div:first-child > div > div:first-child{margin-bottom:8px !important}
  footer > div:first-child > div > div:nth-child(2){gap:6px !important;font-size:13px !important}
  footer > div:last-child > div{padding:12px 20px !important;font-size:12px !important}
}
@media (max-width: 520px){
  footer > div:first-child{grid-template-columns:1fr 1fr !important;gap:16px 22px !important;padding:28px 18px 16px !important}
  footer > div:first-child > div:first-child{grid-column:span 2 !important}
  [data-pc-brand-cards]{grid-template-columns:1fr !important}
}

/* ------ Utility: hero content wrapper needs contrast on mobile ------- */
@media (max-width: 900px){
  .pc-hero-bg [data-pc-hero-text]{padding:44px 22px 36px !important}
}
