/* Inventiva IIOS: PNG independientes y nitidez de imágenes (sin afectar glassmorphism). */
.pc-main::before{background-attachment:scroll!important}
.pc-photo{
  inset:0;
  width:100%;
  height:100%;
  aspect-ratio:469 / 639;
  background-image:none!important;
  object-fit:contain;
  background-position:center center;
  background-size:contain;
  background-repeat:no-repeat;
  -webkit-mask:none;
  mask:none;
  transform:none!important;
  transition:none!important;
  will-change:auto!important;
  filter:none;
}
.pc-numeral{height:169px;display:flex;justify-content:center;align-items:center}
.pc-numeral::before{display:none!important}
.pc-numeral__png{
  display:block;
  flex:none;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:155px;
  object-fit:contain;
  object-position:center;
  filter:none;
  transform:none!important;
}
.pc-plan::after{-webkit-filter:none!important;filter:none!important}
@media(max-width:760px){
  .pc-sculpture{aspect-ratio:469 / 639;height:auto;overflow:visible}
  .pc-photo{width:100%;height:100%}
}
@media(max-width:550px){
  .pc-sculpture{aspect-ratio:469 / 639;height:auto}
  .pc-numeral__png{max-height:155px}
}
@media(prefers-reduced-motion:reduce){
  .pc-photo{transition:none!important;transform:none!important}
}

/* Fix hero: evitar recorte del título + integración suave de la fotografía PNG.
   Se mantiene el PNG real, el glassmorphism de los planes y cero movimiento de imagen. */
.pc-hero{overflow:visible}
.pc-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  gap:clamp(12px,2.5vw,38px);
  align-items:center;
  min-height:0;
  padding-block:clamp(18px,2.7vw,43px);
}
.pc-hero__grid>.pc-hero__text,.pc-hero__grid>.pc-sculpture{
  min-width:0;
  max-width:100%;
}
.pc-hero__text{
  padding:clamp(16px,2.5vw,34px) 0 clamp(16px,3vw,42px) clamp(0px,1.8vw,24px);
  position:relative;
  z-index:3;
  width:100%;
  max-width:100%;
  overflow:visible;
}
.pc-hero h1{
  white-space:normal;
  overflow-wrap:normal;
  word-break:normal;
  text-wrap:balance;
  font-size:clamp(36px,5.1vw,77px);
  line-height:1.08;
  letter-spacing:-.063em;
  max-width:100%;
}
.pc-hero__subtitle,.pc-hero__copy,.pc-hero__modernization{
  min-width:0;
  max-width:100%;
}
.pc-hero__solution-link{max-width:100%;white-space:normal;text-align:left}
.pc-hero__benefits{flex-wrap:wrap;row-gap:9px}
.pc-sculpture{
  position:relative;
  top:auto;
  right:auto;
  left:auto;
  display:block;
  justify-self:end;
  align-self:center;
  width:min(100%,470px);
  max-width:100%;
  height:auto;
  aspect-ratio:938 / 1278;
  margin:0;
  overflow:visible;
  isolation:isolate;
  pointer-events:none;
}
.pc-photo{
  display:block;
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  aspect-ratio:938 / 1278;
  max-width:100%;
  object-fit:contain;
  object-position:center;
  transform:none!important;
  transition:none!important;
  will-change:auto!important;
  filter:none!important;
  /* La capa opaca del PNG deja de mostrar el borde rectangular izquierdo.
     También se desvanece gradualmente el pie de la ilustración. */
  -webkit-mask-image:
    linear-gradient(90deg,transparent 0%,rgba(0,0,0,.24) 12%,rgba(0,0,0,.82) 25%,#000 37%),
    linear-gradient(180deg,#000 0%,#000 83%,rgba(0,0,0,.75) 91%,transparent 100%);
  mask-image:
    linear-gradient(90deg,transparent 0%,rgba(0,0,0,.24) 12%,rgba(0,0,0,.82) 25%,#000 37%),
    linear-gradient(180deg,#000 0%,#000 83%,rgba(0,0,0,.75) 91%,transparent 100%);
  -webkit-mask-composite:source-in;
  mask-composite:intersect;
}
@media(max-width:960px){
  .pc-hero__grid{
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    min-height:0;
    gap:clamp(8px,2vw,20px);
  }
  .pc-hero h1{font-size:clamp(37px,5.2vw,56px)}
  .pc-hero__text{padding-left:0}
  .pc-sculpture{width:min(100%,400px);aspect-ratio:938 / 1278;height:auto;top:auto;right:auto}
}
@media(max-width:760px){
  .pc-hero__grid{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    min-height:0;
    padding:12px 0 0;
  }
  .pc-hero__text{
    padding:clamp(12px,4vw,26px) 4px 12px;
    max-width:100%;
  }
  .pc-hero h1{
    font-size:clamp(35px,8.5vw,64px);
    white-space:normal;
    max-width:100%;
  }
  .pc-hero__benefits{flex-wrap:wrap}
  .pc-sculpture{
    position:relative;
    width:min(100%,410px);
    height:auto;
    aspect-ratio:938 / 1278;
    margin:0 auto -6px;
    overflow:visible;
    align-self:center;
  }
  .pc-photo{width:100%;height:100%;object-fit:contain}
}
@media(max-width:550px){
  .pc-hero h1{font-size:clamp(33px,8.2vw,49px);letter-spacing:-.055em}
  .pc-hero__text{padding:16px 4px 10px}
  .pc-sculpture{width:min(94%,370px);height:auto;aspect-ratio:938 / 1278}
}
@media(prefers-reduced-motion:reduce){
  .pc-photo{transform:none!important;transition:none!important}
}
