@font-face{font-family:'DM Sans';src:url('assets/dm-sans.woff2') format('woff2');font-weight:100 900;font-display:swap}@font-face{font-family:Sora;src:url('assets/sora.woff2') format('woff2');font-weight:100 900;font-display:swap}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#fff}a{color:#3d47b8}a:hover{filter:brightness(.95)}img,video{max-width:100%}a:focus-visible,button:focus-visible,video:focus-visible,summary:focus-visible{outline:3px solid #f28c28;outline-offset:4px}h1,h2,h3{word-break:normal;overflow-wrap:normal;hyphens:none;text-wrap:balance}p,blockquote{text-wrap:pretty}.skip{position:fixed;top:-100px;left:16px;background:#fff;z-index:100;padding:12px}.skip:focus{top:16px}main>section{overflow-wrap:break-word}nav a{justify-content:center}video{object-fit:contain}
@media(max-width:760px){main>section{padding-left:20px!important;padding-right:20px!important}main>section:not([data-section="1"]){padding-top:48px!important;padding-bottom:48px!important}.reference-hero>div{gap:30px!important}.reference-hero img{width:min(100%,340px)!important}.responsive-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))!important}.reference-hero a{max-width:100%;height:auto;padding:14px 20px!important;text-align:center;justify-content:center}main>section[data-section="1"]{margin-top:0!important;padding-top:24px!important}#en-sala img{height:300px!important}}
@media(max-width:480px){.responsive-grid{grid-template-columns:1fr!important}#en-sala img{height:auto!important;max-height:440px;object-fit:contain!important}nav{display:grid!important;grid-template-columns:1fr}nav a{text-align:center;padding:12px 16px!important}figure{padding:22px!important}main>section:last-child a{padding:16px 22px!important;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Responsive typography: no split words or isolated single-letter endings. */
main :where(h1,h2,h3,h4,p,blockquote,figcaption,div,span,a,button){word-break:normal;overflow-wrap:normal;hyphens:none}
main :where(h1,h2,h3,h4){text-wrap:balance}
main :where(p,blockquote,figcaption){text-wrap:pretty}
main .type-group{display:inline;color:inherit;font:inherit;letter-spacing:inherit;white-space:nowrap}

/* Long-form text: flush left and right edges, natural final line. */
main .prose-justified{ text-align:justify; text-align-last:left; text-justify:inter-word; word-spacing:normal; letter-spacing:normal; }

/* Balanced method subtitle and readable spacing in long prose. */



/* A single paragraph system at every width; no per-block alignment switching. */
main .prose-justified{
 text-align:justify;
 text-align-last:left;
 text-justify:inter-word;
 text-wrap:pretty;
 word-spacing:normal;
 letter-spacing:normal;
 word-break:normal;
 overflow-wrap:normal;
 -webkit-hyphens:auto;
 hyphens:auto;
 hyphenate-limit-chars:8 3 3;
 hyphenate-limit-lines:2;
}
main .prose-justified :where(strong,em,b,i,span){white-space:normal;hyphens:inherit}
