/* Ajustes funcionales previos al rediseño visual general. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{max-width:100%;overflow-x:hidden}
img,svg,video,canvas{max-width:100%;height:auto}
iframe,embed,object{max-width:100%}
input,select,textarea,button{max-width:100%;font:inherit}
button,a{touch-action:manipulation}
.adc-legal-footer{background:#0f172a;color:#cbd5e1;padding:26px 5%;font:14px/1.6 Arial,sans-serif}
.adc-legal-footer__inner{width:min(1180px,100%);margin:auto;display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.adc-legal-footer nav{display:flex;gap:14px;flex-wrap:wrap}
.adc-legal-footer a{color:#fff!important;text-decoration:none;font-weight:700}
.adc-legal-footer a:hover{text-decoration:underline}
table{max-width:100%}
.table-scroll,.table-responsive,[style*="overflow:auto"],[style*="overflow-x:auto"]{-webkit-overflow-scrolling:touch}

@media (max-width:900px){
  header,nav,.header,.navbar,.topbar{max-width:100%}
  header>div,nav>div,.header>div,.navbar>div{flex-wrap:wrap!important}
  main,.container,.wrapper,.wrap,.content,.page,.dashboard-container{max-width:100%!important}
  [style*="grid-template-columns"]{grid-template-columns:minmax(0,1fr)!important}
  [style*="display:grid"]{min-width:0}
  table{display:block;width:100%!important;overflow-x:auto;white-space:nowrap}
  th,td{min-width:120px}
  form{max-width:100%}
  .sidebar,.academy-sidebar,[class*="sidebar"]{position:static!important;width:100%!important;max-width:none!important;height:auto!important}
  .main-content,[class*="main-content"]{width:100%!important;margin-left:0!important}
  .certificate-shell,.certificate-page{transform:none!important;max-width:100%!important}
}

@media (max-width:640px){
  body{font-size:16px}
  main,.container,.wrapper,.wrap,.content,.page{padding-left:14px!important;padding-right:14px!important}
  h1{font-size:clamp(28px,9vw,40px)!important;line-height:1.08}
  h2{font-size:clamp(22px,7vw,30px)!important}
  input,select,textarea{font-size:16px!important;min-height:46px}
  button,.btn,[class*="btn"],a.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
  [style*="padding:40px"],[style*="padding: 40px"]{padding:22px!important}
  [style*="padding:32px"],[style*="padding: 32px"]{padding:20px!important}
  [style*="gap:24px"],[style*="gap: 24px"]{gap:14px!important}
  .adc-legal-footer__inner{display:block;text-align:center}
  .adc-legal-footer nav{justify-content:center;margin-top:12px}
  .hero,.card,.panel,[class*="card"],[class*="panel"]{max-width:100%}
}

@media print{
  .adc-legal-footer{display:none!important}
}

/* Contención de textos largos en portadas y tarjetas móviles. */
.hero-inner>* ,.hero-copy,.hero-side,.mini-list,.mini-item,.course-card,.commerce-card{min-width:0!important}
.hero-copy p,.mini-item span,.course-card p,.commerce-card p,.brand-text,.academy-subdomain{overflow-wrap:anywhere;word-break:break-word}
@media (max-width:640px){.hero-inner{grid-template-columns:minmax(0,1fr)!important}.hero-copy,.hero-side{width:100%!important}.hero-actions{width:100%;flex-wrap:wrap}.hero-actions .btn{flex:1 1 135px}}
