/* Header y overlay de menú de Scola Media. Compartido por todas las
   páginas del sitio: se genera desde el mockup, no se edita a mano. */
:root{
	--orange:#FD8E25;
	--orange-drench:#E06A1B;
	--black:#0B0908;
	--white:#F5F3EE;
	--light:#E9E6DF;
	--ink:#111008;
	--muted:rgba(245,243,238,0.55);
	--sans:'Hanken Grotesk',-apple-system,BlinkMacSystemFont,sans-serif;
	--mono:'JetBrains Mono',ui-monospace,monospace;
	--serif:'Libre Bodoni',serif;
}


.lgo{display:block;aspect-ratio:873.33/158.29;height:auto}

/* ---------- HEADER ---------- */
/* z-index 160: por ENCIMA del menú overlay (150) para que el botón
   siga siendo clickeable con el menú abierto */
header{
	position:fixed;inset:0 0 auto 0;z-index:160;
	display:flex;justify-content:space-between;align-items:center;
	padding:22px clamp(20px,3.5vw,44px);
	pointer-events:none;
}
header a,header .h-menu{pointer-events:auto}
/* difference: el logo y el burger sobreviven la sección clara */
.logo,.h-menu{mix-blend-mode:difference}
body.menu-open .logo,body.menu-open .h-menu{mix-blend-mode:normal}
.logo{display:inline-flex;align-items:center;--lgo-m:#fff;--lgo-a:#fff}
.logo .lgo{height:20px}
.h-right{display:flex;gap:14px;align-items:center}
.h-cta{
	background:var(--orange);color:#140A02;
	font-weight:700;font-size:11px;letter-spacing:0.14em;text-transform:uppercase;
	padding:13px 26px;border-radius:999px;transition:transform .25s,background .3s;
}
.h-cta:hover{transform:translateY(-2px);background:var(--white)}
/* Switch de idioma EN / ES */
.h-lang{
	display:flex;align-items:center;gap:2px;background:none;border:0;cursor:pointer;
	font-family:var(--mono);font-size:10px;letter-spacing:0.16em;padding:11px 6px;
	color:#fff;mix-blend-mode:difference;
	pointer-events:auto;          /* .h-right lo pone en none: hay que devolverlo */
	-webkit-tap-highlight-color:transparent;touch-action:manipulation;
}
.h-lang span{padding:5px 8px;border-radius:999px;transition:background .3s,color .3s,opacity .3s}
.h-lang:active .off{opacity:.9}
.h-lang .on{background:#fff;color:#0B0908}
.h-lang .off{opacity:.5}
body.menu-open .h-lang{mix-blend-mode:normal;color:#140A02}
body.menu-open .h-lang .on{background:#140A02;color:var(--orange)}
header.hdr-hidden .h-lang{opacity:0;pointer-events:none;transition:opacity .45s ease}
/* G1 · en las páginas con traducción real el selector es un <a> que navega a la
   URL equivalente, no un <button> que intercambia texto con JS. Hereda todo lo
   de arriba; solo hay que quitarle el subrayado y darle un foco visible, que un
   <button> traía de serie y un enlace no. */
a.h-lang{text-decoration:none}
a.h-lang:focus-visible{outline:2px solid #fff;outline-offset:2px;border-radius:999px}
body.menu-open a.h-lang:focus-visible{outline-color:#140A02}
.h-menu{
	width:42px;height:42px;border-radius:50%;border:2px solid #fff;
	display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;cursor:pointer;
	transition:transform .35s var(--ease);position:relative;z-index:160;
}
.h-menu:hover{transform:scale(1.12)}
.h-menu i{display:block;width:16px;height:2px;background:#fff;transition:transform .4s var(--ease),opacity .3s}
/* Coreografía del header: al bajar, logo y CTA se esfuman — solo queda el menú */
.logo,.h-cta{transition:opacity .45s ease,transform .45s var(--ease)}
header.hdr-hidden .logo,header.hdr-hidden .h-cta{opacity:0;transform:translateY(-8px);pointer-events:none}
/* Estado abierto: hamburguesa → X */
body.menu-open .h-menu{border-color:#140A02}
body.menu-open .h-menu i{background:#140A02}
body.menu-open .h-menu i:nth-child(1){transform:translateY(6px) rotate(45deg)}
body.menu-open .h-menu i:nth-child(2){opacity:0}
body.menu-open .h-menu i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
body.menu-open .logo,body.menu-open .h-cta{opacity:0;pointer-events:none}

/* ---------- MENU OVERLAY (drench naranja, filas numeradas) ---------- */
.menu{
	position:fixed;inset:0;z-index:150;background:var(--orange-drench);color:#140A02;
	display:flex;flex-direction:column;justify-content:center;
	padding:90px clamp(20px,3.5vw,44px) 40px;
	clip-path:inset(0 0 100% 0);visibility:hidden;
	transition:clip-path .7s var(--ease),visibility 0s .7s;
}
body.menu-open .menu{clip-path:inset(0 0 0% 0);visibility:visible;transition:clip-path .7s var(--ease),visibility 0s}
.menu .label{color:rgba(20,10,2,0.65);margin-bottom:6px}
.menu-list{display:flex;flex-direction:column}
.menu-list a{
	display:flex;align-items:center;gap:.35em;
	font-weight:600;font-size:clamp(34px,6.1vw,74px);line-height:1.16;
	text-transform:uppercase;letter-spacing:-0.01em;
	border-top:1px solid rgba(20,10,2,0.3);padding:.06em 0;
	opacity:0;transform:translateY(38px);
	transition:opacity .5s ease,transform .8s var(--ease),padding-left .45s var(--ease);
}
.menu-list a:last-child{border-bottom:1px solid rgba(20,10,2,0.3)}
.menu-list a:hover{padding-left:.35em}
body.menu-open .menu-list a{opacity:1;transform:none}
body.menu-open .menu-list a:nth-child(1){transition-delay:.16s}
body.menu-open .menu-list a:nth-child(2){transition-delay:.23s}
body.menu-open .menu-list a:nth-child(3){transition-delay:.30s}
body.menu-open .menu-list a:nth-child(4){transition-delay:.37s}
body.menu-open .menu-list a:nth-child(5){transition-delay:.44s}
body.menu-open .menu-list a:nth-child(6){transition-delay:.51s}
.menu-num{
	flex:0 0 auto;width:clamp(26px,3vw,42px);height:clamp(26px,3vw,42px);
	border:2.5px solid #140A02;border-radius:50%;
	display:inline-flex;align-items:center;justify-content:center;
	font-size:clamp(11px,1.2vw,16px);font-weight:800;letter-spacing:0;line-height:1;
	margin-right:clamp(10px,1.4vw,22px);
}
.menu-foot{margin-top:clamp(30px,5vh,60px)}
.menu-foot .label{display:block;margin-bottom:14px}
.menu-soc{display:flex;gap:10px}
.menu-soc a{
	width:44px;height:44px;border-radius:50%;border:2px solid #140A02;
	display:flex;align-items:center;justify-content:center;
	font-weight:800;font-size:13px;transition:background .3s,color .3s,transform .3s var(--ease);
}
.menu-soc a:hover{background:#140A02;color:var(--orange);transform:scale(1.08)}
.loader .lgo{height:34px;--lgo-m:#fff;--lgo-a:var(--orange)}@media (prefers-reduced-motion:reduce){
	.menu{transition:none}}@media(max-width:520px){
	header{padding:18px 16px}
	.logo .lgo{height:17px}
	.h-right{gap:9px}
	.h-cta{padding:17px 17px;font-size:10px;letter-spacing:0.1em}   /* 45px de alto */
	.h-lang{font-size:9px;padding:13px 3px}
	.h-lang span{padding:5px 6px}
	.h-menu{width:42px;height:42px}}@media(hover:none){
	.h-cta{padding:16px 24px}
	.h-menu{width:44px;height:44px}}