/* Grupo Avanza Consultores · escritura CJK, árabe y selector ampliado. */
:root:lang(zh){
  --sans:'Microsoft YaHei','PingFang SC','Noto Sans CJK SC','Segoe UI',sans-serif;
  --serif:'Songti SC','SimSun','Noto Serif CJK SC',serif;
}
:root:lang(ar){
  --sans:Tahoma,'Segoe UI','Noto Sans Arabic',Arial,sans-serif;
  --serif:'Noto Naskh Arabic','Traditional Arabic',Tahoma,serif;
}
html:lang(zh) body,html:lang(ar) body{font-weight:400}
html:lang(zh) :is(h1,h2,h3){line-height:1.5;letter-spacing:0}
html:lang(ar) :is(h1,h2,h3){line-height:1.55;letter-spacing:0}
html:lang(zh) :is(.eyebrow,.brand i),html:lang(ar) :is(.eyebrow,.brand i){letter-spacing:0}
html:lang(zh) main p{text-justify:inter-character;word-break:normal;line-break:strict}
html:lang(ar) main p{text-align-last:right;hyphens:none!important;-webkit-hyphens:none!important}
html:lang(ar) :is(.eyebrow,.hero__note,.ops__fuente,figcaption){text-align:right}
html:lang(ar) :is(.form-wrap .form__nota,#contacto .form-wrap .form__nota){text-align:right!important;text-align-last:right}
html:lang(ar) .prose ul{padding-left:0;padding-right:22px}
html:lang(ar) :is(th,td){text-align:right}
html:lang(ar) summary{padding:22px 0 22px 48px}
html:lang(ar) summary::after{right:auto;left:10px}
html:lang(ar) .card__more a::after{content:' ←'}
html:lang(ar) .skip{left:auto;right:-9999px}
html:lang(ar) .skip:focus{right:auto}
html:lang(ar) :is(input[type='email'],input[type='tel'],input[type='url']),
html:lang(ar) a[href^='mailto:'],html:lang(ar) bdi[dir='ltr']{direction:ltr;unicode-bidi:isolate}
html:lang(ar) :is(main,.prose,.contact,.form-wrap,.card){min-width:0}
html:lang(ar) :is(main p,main li,main dd,main a),html:lang(zh) :is(main p,main li,main dd,main a){overflow-wrap:anywhere}
html:lang(ar) .hero__grid>div:first-child{padding-left:80px!important;padding-right:var(--gutter)!important}
@media(max-width:980px){html:lang(ar) .hero__grid>div:first-child{padding-inline:var(--gutter)!important}}
@media(max-width:640px){html:lang(ar) summary{padding-left:38px}}

/* Dos filas en móvil: todos los idiomas siguen accesibles sin recortar la marca. */
.topbar__acc{min-width:0}
@media(max-width:1680px){.langsw__full{display:none}.langsw__short{display:inline!important}}
@media(max-width:640px){
  .topbar__in{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;flex-wrap:wrap}
  .brand{grid-column:1/-1;justify-self:start}
  .brand span{max-width:none}
  .topbar__acc{grid-column:1/-1;display:flex;justify-content:space-between;width:100%;gap:4px;margin:0}
  .langsw{font-size:12px;min-height:30px;display:inline-flex;align-items:center;padding-inline:7px;letter-spacing:0}
  .navtoggle{min-height:36px;padding-inline:10px;margin-inline-start:auto}
  .topnav{grid-column:1/-1}
}
/* Keep the contact form's spam trap outside the visible layout in RTL. */
html:lang(ar) .form__hp {
  position:absolute; left:auto; right:0; top:0; width:1px; height:1px;
  margin:-1px; padding:0; overflow:hidden; clip:rect(0,0,0,0);
  clip-path:inset(50%); white-space:nowrap;
}

/* 27/10/2026: portada árabe con el panel azul de las demás portadas, en espejo (RTL) */
[dir="rtl"] .hero__logo{margin-right:0;margin-left:calc(var(--gutter)*-1);padding:96px 88px 72px var(--gutter);text-align:right!important;align-items:flex-start}
[dir="rtl"] .hero__logo>p{text-align:right!important;letter-spacing:0;font-size:13px}
@media(max-width:980px){[dir="rtl"] .hero__logo{margin-left:calc(var(--gutter)*-1);margin-right:calc(var(--gutter)*-1);padding:56px var(--gutter)}}
.hero .eyebrow{hyphens:none;-webkit-hyphens:none}
[dir="rtl"] .hero__note{text-align:right;text-align-last:right}

/* 27/10/2026: cabecera española con 6 idiomas (RU, EN, FR, DE, 中文, عربي). Mismo diseño, huecos más ajustados. */
@media(min-width:1001px) and (max-width:1560px){
  html[lang="es"] .topnav{gap:12px}
  html[lang="es"] .topbar__acc{gap:5px}
  html[lang="es"] .langsw{padding-inline:6px}
  html[lang="es"] .topbar__cta{padding-inline:16px;letter-spacing:.04em}
}
@media(min-width:1001px) and (max-width:1300px){
  html[lang="es"] .topnav{gap:9px}
  html[lang="es"] .topnav a{font-size:12.5px}
  html[lang="es"] .brand span i{letter-spacing:.1em}
}
@media(min-width:1001px) and (max-width:1260px){
  html[lang="es"] .topnav{gap:7px}
  html[lang="es"] .topnav a{font-size:12px}
  html[lang="es"] .langsw{padding-inline:4px;font-size:11px}
  html[lang="es"] .topbar__cta{padding-inline:12px;font-size:11.5px}
}
html[lang="es"] .brand,html[lang="es"] .brand span b{white-space:nowrap;flex-shrink:0}
