/* Only the three Spanish solution pages load this semantic type layer. */
body[data-seo-solution] main { font-family: var(--font-family-base); }
body[data-seo-solution] main h1 { font-size: var(--text-display-lg-size); line-height: var(--text-display-lg-line); letter-spacing: var(--text-display-lg-tracking); font-weight: var(--text-display-lg-weight); }
body[data-seo-solution] main h2 { font-size: var(--text-heading-xl-size); line-height: var(--text-heading-xl-line); letter-spacing: var(--text-heading-xl-tracking); font-weight: var(--text-heading-xl-weight); }
body[data-seo-solution] main h3 { font-size: var(--text-heading-md-size); line-height: var(--text-heading-md-line); letter-spacing: var(--text-heading-md-tracking); font-weight: var(--text-heading-md-weight); }
body[data-seo-solution] main h4 { font-size: var(--text-heading-xs-size); line-height: var(--text-heading-xs-line); letter-spacing: var(--text-heading-xs-tracking); font-weight: var(--text-heading-xs-weight); }
body[data-seo-solution] main :is(p,li,.section-head > span) { font-size: var(--text-body-md-size); line-height: var(--text-body-md-line); letter-spacing: var(--text-body-md-tracking); font-weight: var(--text-body-md-weight); }
body[data-seo-solution] main .seo-lead { font-size: var(--text-body-lg-size); line-height: var(--text-body-lg-line); letter-spacing: var(--text-body-lg-tracking); font-weight: var(--text-body-lg-weight); }
body[data-seo-solution] main :is(.seo-kicker,.section-head > p,.seo-lockup,.seo-lockup span,.seo-lockup strong,.btn,.text-link,.step-card > span) { font-size: var(--text-heading-xs-size); line-height: var(--text-heading-xs-line); letter-spacing: var(--text-heading-xs-tracking); font-weight: var(--text-heading-xs-weight); }
body[data-seo-solution] main .faq summary { font-size: var(--text-heading-sm-size); line-height: var(--text-heading-sm-line); letter-spacing: var(--text-heading-sm-tracking); font-weight: var(--text-heading-sm-weight); }
body[data-seo-solution] main :is(h1,h2,h3,h4) { text-wrap: balance; overflow-wrap: break-word; }
body[data-seo-solution] main p { color: var(--text-secondary); }
body[data-seo-solution] main :is(.seo-kicker,.section-head > p) { color: var(--seo-accent); }
body[data-seo-solution] main .seo-final p { color: var(--text-on-brand); }
body[data-seo-solution] main :is(.seo-lead,.section-head,.seo-final p) { max-width: 80ch; }
body[data-seo-solution] main .seo-checks li { align-items: flex-start; gap: var(--space-04); }
body[data-seo-solution] main .seo-checks li::before { margin-top: var(--space-02); }
body[data-seo-solution] main :is(.seo-checks,.comparison ul) { gap: var(--space-05); }
body[data-seo-solution] main .btn { padding: var(--space-05) var(--space-07); text-align: center; }
body[data-seo-solution] main .seo-actions { flex-wrap: wrap; }
body[data-seo-solution] main .text-link { display: inline-flex; align-items: center; min-height: var(--space-10); }
body[data-seo-solution] main a:hover { text-decoration: underline; }
body[data-seo-solution] main :is(a,summary):focus-visible { outline: var(--border-width-focus) solid var(--border-focus); outline-offset: var(--space-02); }
