/* Original proportions, path-based wordmarks and inherited currentColor.
   Minimum rendered height: horizontal 28px; symbol 24px. */
.handres-mark{display:block;flex-shrink:0;fill:currentColor;height:auto;overflow:visible}
.handres-mark--horizontal{width:auto;height:54px;min-height:28px;aspect-ratio:7102.78/2695.87}
.handres-mark--vertical{width:auto;height:180px;aspect-ratio:4650/9589.84}
.handres-mark--symbol{width:auto;height:32px;min-height:24px;aspect-ratio:84.3/121.2}
header .brand{color:#14202f;gap:18px;text-decoration:none}
header .brand-descriptor{max-width:190px}
footer .brand{color:#c6a15b;flex-wrap:wrap}
footer .handres-mark--horizontal{height:64px}
.kit-brand-header .brand{color:#c6a15b}
.signature-symbol{display:block;color:#14202f;flex-shrink:0;margin-top:3px}
.premium-kit-cover .kit-cover-brand{display:flex;flex-direction:column;align-items:flex-start;gap:18px;color:#c6a15b}
.premium-kit-cover .kit-cover-brand small{margin:0}
@media(max-width:1180px){header .brand-descriptor{display:none}}
@media(max-width:600px){header .handres-mark--horizontal{height:44px}header .brand{gap:0}.kit-brand-header .handres-mark--horizontal{height:40px}.header .handres-mark--horizontal{height:44px}}
@media print{.handres-mark{color:#14202f!important;fill:currentColor!important}}

/* Umbral · recurso gráfico de Profe HANDRÉS */
:root{
  --umbral-trazo:2px;
  --umbral-color:var(--bronze);
  --umbral-apertura:34%;
}
.umbral{position:relative}
.umbral>*{position:relative}
.umbral::before,.umbral::after{content:"";position:absolute;pointer-events:none}
.umbral::before{inset:0;border:var(--umbral-trazo) solid var(--umbral-color);border-bottom:0}
.umbral::after{left:var(--umbral-apertura);right:0;bottom:0;border-bottom:var(--umbral-trazo) solid var(--umbral-color)}
.umbral--arco::before{border-radius:50% 50% 0 0 / 26% 26% 0 0}
.u-lista{list-style:none;padding:0;display:grid;gap:.55em}
.u-lista li{position:relative;padding-left:1.7em;margin:0}
.u-lista li::before{content:"";position:absolute;left:0;top:.52em;width:.62em;height:.62em;border-left:var(--umbral-trazo) solid var(--umbral-color);border-top:var(--umbral-trazo) solid var(--umbral-color)}
.u-separador{border:0;height:var(--umbral-trazo);background:linear-gradient(to right,var(--umbral-color) 0 4.5rem,var(--line) 4.5rem 100%);margin:0}
/* The photograph sits inside the open frame; the caption does not close it. */
.premium-portrait.umbral{height:auto;width:100%;max-width:460px;margin:35px 0 0;padding:16px 16px 22px;align-self:center}
.hero-portrait-image{aspect-ratio:4/5;overflow:hidden;border-radius:50% 50% 0 0 / 26% 26% 0 0}
.hero-portrait-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom}
/* Applied when a real classroom photograph replaces the transparent portrait. */
.hero-portrait-image--classroom img{object-fit:cover;object-position:var(--portrait-position,50% 50%)}
.hero-portrait-caption{display:flex;flex-direction:column;gap:8px;padding:20px 10px 5px;color:var(--muted);font-size:15px;line-height:1.5}
.hero-portrait-caption .eyebrow{color:var(--accent-text);margin:0}
.premium-source.umbral{border:0;background:transparent;padding:30px}
.premium-kit-list.u-lista li,.list-check.u-lista li{padding-left:1.7em;margin:0}
.premium-kit-list.u-lista li::before,.list-check.u-lista li::before{content:"";margin:0;color:inherit}
@media(max-width:850px){.premium-portrait.umbral{padding:14px 14px 20px}.hero-portrait-caption{padding-inline:4px}}
@media(max-width:600px){.premium-portrait.umbral{max-width:390px;margin:38px auto 28px}.premium-source.umbral{padding:26px}.hero-portrait-caption{gap:10px}}
@media print{
  :root{--umbral-color:var(--ink);--umbral-trazo:1.5pt}
}
/* Icons aid recognition; visible labels keep every destination explicit. */
.footer-social{display:grid;gap:24px;margin-top:36px;padding-block:28px;border-top:1px solid #ffffff30}
.footer-social h3{font-family:var(--font-heading);font-size:18px;font-weight:600;color:white;margin:0 0 8px}
.footer-social p{margin:0;color:#d7dce1}
.footer-social-links{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:0;margin:0;width:100%}
.footer-social-links li{margin:0;padding:0}
.footer-social-links a{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 14px;margin:0;border:1px solid #c6a15b80;border-radius:4px;color:#fff;font-family:var(--font-heading);font-size:16px;font-weight:600;line-height:1.5;text-decoration:none}
.footer-social-links .social-icon{display:block;flex-shrink:0;width:22px;height:22px;color:var(--bronze)}
.footer-social-links a:hover{background:var(--bronze);color:var(--ink);border-color:var(--bronze)}
.footer-social-links a:hover .social-icon{color:inherit}
.footer-social-links a:focus-visible{outline:3px solid var(--bronze);outline-offset:4px}
.experience-more{margin-top:28px}
.experience-summary .experience-summary-text{margin-top:20px;color:var(--ink)}
@media(max-width:850px){.footer-social-links a{gap:8px;padding-inline:10px}}
@media(max-width:760px){.footer-social-links{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-social-links li:last-child{grid-column:1/-1}}
@media(max-width:360px){.footer-social-links{gap:10px}.footer-social-links a{gap:7px;padding-inline:8px}.footer-social-links .social-icon{width:20px;height:20px}}
