/* Ensigna Tours V8.5 · apartado superior de instalación PWA */
.app-install-section{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:clamp(14px,2.5vw,26px);
  width:100%;
  margin:0 auto clamp(30px,5vw,48px);
  padding:clamp(18px,3vw,28px);
  overflow:hidden;
  border:1px solid rgba(48,17,188,.16);
  border-radius:clamp(20px,3vw,28px);
  background:
    radial-gradient(circle at 0 0,rgba(22,140,223,.16),transparent 18rem),
    linear-gradient(135deg,#fff 0%,#f8f7ff 58%,#f0f7ff 100%);
  box-shadow:0 18px 50px rgba(24,39,75,.11);
  box-sizing:border-box;
}
.app-install-section[hidden]{display:none!important}
.app-install-section::after{
  content:"";
  position:absolute;
  inset:auto -54px -74px auto;
  width:170px;
  aspect-ratio:1;
  border-radius:50%;
  background:rgba(48,17,188,.055);
  pointer-events:none;
}
.app-install-section__icon-wrap{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  width:clamp(72px,8vw,94px);
  aspect-ratio:1;
  padding:7px;
  border:1px solid rgba(22,140,223,.18);
  border-radius:24px;
  background:#061827;
  box-shadow:0 12px 26px rgba(6,24,39,.18);
  overflow:hidden;
}
.app-install-section__icon{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  object-fit:contain;
  object-position:center;
}
.app-install-section__content{
  position:relative;
  z-index:1;
  min-width:0;
}
.app-install-section__eyebrow{
  display:block;
  margin-bottom:5px;
  color:#168cdf;
  font-size:.73rem;
  font-weight:950;
  letter-spacing:.13em;
}
.app-install-section__content h2{
  margin:0 0 7px;
  color:#172033;
  font-size:clamp(1.35rem,3vw,2rem);
  line-height:1.12;
  overflow-wrap:anywhere;
}
.app-install-section__content p{
  max-width:620px;
  margin:0;
  color:#5d6c82;
  font-size:clamp(.94rem,1.8vw,1.04rem);
  line-height:1.5;
  overflow-wrap:anywhere;
}
.app-install-section__content .app-install-section__status{
  margin-top:8px;
  color:#3512c6;
  font-size:.83rem;
  font-weight:800;
}
.app-install-section__actions{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:center;
  min-width:min(230px,26vw);
  gap:7px;
}
.app-install-section__button{
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:50px;
  padding:12px 20px;
  border:0;
  border-radius:15px;
  background:#3512c6;
  color:#fff;
  box-shadow:0 12px 24px rgba(53,18,198,.24);
  cursor:pointer;
  font:inherit;
  font-size:.91rem;
  font-weight:950;
  letter-spacing:.035em;
  line-height:1.2;
  text-align:center;
  white-space:normal;
  overflow-wrap:anywhere;
  transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease;
}
.app-install-section__button:hover:not(:disabled){
  transform:translateY(-1px);
  box-shadow:0 16px 30px rgba(53,18,198,.28);
}
.app-install-section__button:active:not(:disabled){transform:translateY(0)}
.app-install-section__button:focus-visible{
  outline:3px solid rgba(22,140,223,.4);
  outline-offset:3px;
}
.app-install-section__button:disabled{
  cursor:wait;
  opacity:.68;
  box-shadow:none;
}
.app-install-section__actions small{
  color:#718096;
  font-size:.76rem;
  line-height:1.35;
  text-align:center;
}
.app-install-section__help{
  position:relative;
  z-index:1;
  grid-column:1/-1;
  width:100%;
  padding:15px 17px;
  border:1px solid #d8e2f1;
  border-radius:15px;
  background:rgba(255,255,255,.86);
}
.app-install-section__help[hidden]{display:none!important}
.app-install-section__help strong{
  display:block;
  margin-bottom:7px;
  color:#172033;
}
.app-install-section__help ol{
  margin:0;
  padding-left:1.25rem;
  color:#5d6c82;
  line-height:1.55;
}
.app-install-section__help li+li{margin-top:3px}

@media(max-width:760px){
  .app-install-section{
    grid-template-columns:auto minmax(0,1fr);
    align-items:start;
  }
  .app-install-section__actions{
    grid-column:1/-1;
    min-width:0;
    width:100%;
  }
  .app-install-section__button{width:100%}
}

@media(max-width:420px){
  .app-install-section{
    gap:13px;
    padding:17px;
    border-radius:21px;
  }
  .app-install-section__icon-wrap{
    width:68px;
    border-radius:19px;
  }
  .app-install-section__content h2{font-size:1.28rem}
  .app-install-section__content p{font-size:.91rem}
}

@media(max-width:350px){
  .app-install-section{
    grid-template-columns:1fr;
    text-align:center;
  }
  .app-install-section__icon-wrap{margin-inline:auto}
  .app-install-section__content p{margin-inline:auto}
  .app-install-section__actions{grid-column:auto}
  .app-install-section__help{grid-column:auto;text-align:left}
}

@media(prefers-reduced-motion:reduce){
  .app-install-section__button{transition:none}
}
