
/* v6.2: force mobile trámite cards one-by-one, protect hero arrows, fresh accessibility */

/* --- Force trámites to one-by-one on all mobile/tablet narrow views --- */
@media screen and (max-width: 920px), screen and (pointer: coarse) and (max-width: 1024px) {
  body #tramites .ji-container{
    width:min(calc(100% - 28px), 680px)!important;
  }
  body #tramites .ji-grid,
  body #tramites .ji-grid--3,
  body #tramites .ji-unified-grid,
  body #tramites .ji-tramite-grid,
  body #tramites .ji-tramite-grid--own,
  body #tramites .ji-tramite-grid--external{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-flow:row!important;
    gap:1rem!important;
    overflow:visible!important;
  }
  body #tramites .ji-tramite-card,
  body #tramites .ji-unified-card,
  body #tramites .ji-unified-card--independencia-service{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    grid-column:auto!important;
    display:flex!important;
    flex-direction:column!important;
  }
  body #tramites .ji-unified-card__top,
  body #tramites .ji-unified-card__body,
  body #tramites .ji-unified-card__footer{
    padding-left:1.15rem!important;
    padding-right:1.15rem!important;
  }
  body #tramites .ji-unified-card__top{
    padding-top:1rem!important;
    padding-bottom:.25rem!important;
    font-size:.9rem!important;
    line-height:1.25!important;
  }
  body #tramites .ji-unified-card__body{
    padding-top:.1rem!important;
    padding-bottom:1rem!important;
  }
  body #tramites .ji-unified-card__body h3{
    font-size:1.28rem!important;
    line-height:1.18!important;
    margin:0 0 .7rem!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
    max-width:100%!important;
  }
  body #tramites .ji-unified-card__body p{
    font-size:1rem!important;
    line-height:1.55!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
  }
  body #tramites .ji-unified-card__footer{
    padding-top:.95rem!important;
    padding-bottom:1rem!important;
  }
  body #tramites .ji-unified-card__footer a{
    width:100%!important;
    min-height:46px!important;
    border-radius:999px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    font-size:.9rem!important;
    white-space:normal!important;
  }
}

/* --- Hero mobile: content away from arrows --- */
@media screen and (max-width: 767px) {
  body.ji-v54-dashboard .ji-clean-hero__content,
  body.ji-v53-clean .ji-clean-hero__content{
    padding-left:3.9rem!important;
    padding-right:3.9rem!important;
    text-align:left!important;
  }
  body.ji-v54-dashboard .ji-clean-hero h1,
  body.ji-v53-clean .ji-clean-hero h1{
    font-size:clamp(2.45rem, 12vw, 3.65rem)!important;
    line-height:1!important;
  }
  body .ji-hero-slider__arrow{
    width:36px!important;
    height:58px!important;
    font-size:3rem!important;
    background:rgba(0,0,0,.22)!important;
    border-radius:0!important;
  }
  body .ji-hero-slider__arrow--prev{
    left:0!important;
  }
  body .ji-hero-slider__arrow--next{
    right:0!important;
  }
}

/* --- Fresh accessibility widget, unrelated to old ji-accessibility classes --- */
.jiv-access{
  position:fixed!important;
  top:14px!important;
  right:18px!important;
  z-index:15000!important;
  display:block!important;
}
.admin-bar .jiv-access{
  top:46px!important;
}
.jiv-access__toggle{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  border-radius:999px!important;
  border:3px solid #ffffff!important;
  background:#2f6cf3!important;
  box-shadow:0 8px 20px rgba(0,0,0,.18)!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
}
.jiv-access__icon{
  width:20px!important;
  height:20px!important;
  display:block!important;
  overflow:visible!important;
}
.jiv-access__icon *{
  fill:none!important;
  stroke:#ffffff!important;
  stroke-width:2.05!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.jiv-access__panel{
  position:absolute!important;
  top:58px!important;
  right:0!important;
  width:230px!important;
  padding:.75rem!important;
  border-radius:16px!important;
  background:#ffffff!important;
  color:#12344a!important;
  border:1px solid #dfe7e6!important;
  box-shadow:0 18px 48px rgba(0,0,0,.22)!important;
}
.jiv-access__panel[hidden]{
  display:none!important;
}
.jiv-access__panel button{
  width:100%!important;
  display:block!important;
  border:0!important;
  border-radius:10px!important;
  background:#f3f7f6!important;
  color:#12344a!important;
  padding:.72rem .85rem!important;
  margin:.25rem 0!important;
  text-align:left!important;
  font-size:.95rem!important;
  font-weight:750!important;
  cursor:pointer!important;
}
.jiv-access__panel button:hover{
  background:#e6efed!important;
}

/* Fresh accessibility effects */
:root{
  --jiv-font-scale:1;
}
html.jiv-font-scaled body{
  font-size:calc(16px * var(--jiv-font-scale))!important;
}
html.jiv-font-scaled p,
html.jiv-font-scaled li,
html.jiv-font-scaled a,
html.jiv-font-scaled button,
html.jiv-font-scaled input,
html.jiv-font-scaled textarea,
html.jiv-font-scaled select,
html.jiv-font-scaled label,
html.jiv-font-scaled span,
html.jiv-font-scaled small,
html.jiv-font-scaled strong,
html.jiv-font-scaled em,
html.jiv-font-scaled td,
html.jiv-font-scaled th{
  font-size:calc(1em * var(--jiv-font-scale))!important;
}
html.jiv-underline-links a{
  text-decoration:underline!important;
}
html.jiv-high-contrast body{
  background:#000!important;
  color:#fff!important;
}
html.jiv-high-contrast a,
html.jiv-high-contrast h1,
html.jiv-high-contrast h2,
html.jiv-high-contrast h3,
html.jiv-high-contrast p,
html.jiv-high-contrast span,
html.jiv-high-contrast li{
  color:#fff!important;
}
html.jiv-invert-colors{
  filter:invert(1) hue-rotate(180deg)!important;
}
html.jiv-reduce-motion *,
html.jiv-reduce-motion *::before,
html.jiv-reduce-motion *::after{
  animation:none!important;
  transition:none!important;
  scroll-behavior:auto!important;
}
