/* =========================================================
   Alberto Bernat · capa de identidad visual del Simulador EFA
   Esta hoja se carga después de los estilos funcionales.
   No redefine lógica, contenido, analítica ni estados.
   ========================================================= */

@font-face {
  font-family: "Manrope";
  src: url("../fonts/manrope-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
}

@font-face {
  font-family: "Instrument Serif";
  src: url("../fonts/instrument-serif-regular-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Instrument Serif";
  src: url("../fonts/instrument-serif-italic-latin.woff2") format("woff2");
  font-style: italic;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "DM Mono";
  src: url("../fonts/dm-mono-regular-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "DM Mono";
  src: url("../fonts/dm-mono-medium-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

:root {
  --sim-navy: #0a2342;
  --sim-navy-dark: #08182e;
  --sim-cream: #faf7f0;
  --sim-paper: #fffdf9;
  --sim-paper-deep: #f1ede4;
  --sim-gold: #b08a4a;
  --sim-gold-light: #d7ba7e;
  --sim-warm: #6f685f;
  --sim-line: #d9d1c4;

  /* Compatibilidad con los componentes funcionales existentes. */
  --sim-blue: var(--sim-navy);
  --sim-blue-deep: var(--sim-navy-dark);
  --sim-blue-ink: var(--sim-navy);
  --sim-blue-light: var(--sim-gold-light);
  --sim-blue-soft: var(--sim-paper-deep);
  --sim-yellow: var(--sim-gold);
  --sim-text: #29261f;
  --sim-muted: var(--sim-warm);
  --sim-soft: var(--sim-cream);
  --sim-soft-2: var(--sim-paper-deep);
  --sim-border: var(--sim-line);
  --sim-border-soft: rgba(10, 35, 66, .14);
  --sim-radius: 4px;
  --sim-radius-sm: 3px;
  --sim-shadow: 0 14px 36px rgba(8, 24, 46, .06);
  --sim-shadow-lg: 0 22px 54px rgba(8, 24, 46, .13);
}

html {
  background: var(--sim-cream);
}

body {
  background: var(--sim-cream);
  color: var(--sim-text);
  font-family: "Manrope", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}

body,
button,
input,
select,
textarea {
  font-family: "Manrope", system-ui, sans-serif;
}

::selection {
  background: rgba(176, 138, 74, .26);
  color: var(--sim-navy-dark);
}

a {
  text-decoration-color: var(--sim-gold);
  text-underline-offset: 4px;
}

h1,
h2,
.sim-result-title,
.sim-diagnostic-header h2,
.sim-topic-catalog h2,
.sim-email-sent h3 {
  color: var(--sim-navy);
  font-family: "Instrument Serif", Georgia, serif;
  font-weight: 400;
  letter-spacing: -.025em;
}

h3,
legend,
summary {
  font-family: "Manrope", system-ui, sans-serif;
}

/* Cabecera compacta: identidad, no navegación comercial duplicada. */
.sim-brandbar {
  position: sticky;
  z-index: 60;
  top: 0;
  left: auto;
  width: 100vw;
  max-width: none !important;
  margin-right: calc(50% - 50vw) !important;
  margin-left: calc(50% - 50vw) !important;
  transform: none;
  border-bottom: 1px solid var(--sim-line);
  background: rgba(250, 247, 240, .96);
  backdrop-filter: blur(12px);
}

.sim-brandbar-inner {
  display: flex;
  width: min(100% - 48px, 1180px);
  min-height: 78px;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin: 0 auto;
}

.sim-brandbar-logo {
  display: block;
  width: 188px;
  flex: 0 0 auto;
}

.sim-brandbar-logo img {
  display: block;
  width: 100%;
  height: auto;
}

.sim-brandbar-context {
  color: var(--sim-warm);
  font: 500 10px/1.4 "DM Mono", monospace;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.sim-skip-link {
  border-radius: 2px;
  background: var(--sim-paper);
  color: var(--sim-navy);
  font-family: "Manrope", system-ui, sans-serif;
}

/* Hero editorial. */
.sim-hero {
  padding: 88px 24px 94px;
  border-bottom: 1px solid var(--sim-line);
  background:
    radial-gradient(circle at 83% 28%, rgba(176, 138, 74, .12), transparent 28%),
    var(--sim-cream);
}

.sim-hero-inner {
  max-width: 940px;
}

.sim-badge {
  display: inline-block;
  margin-bottom: 26px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--sim-gold);
  font: 500 11px/1.5 "DM Mono", monospace;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.sim-badge::before {
  display: inline-block;
  width: 34px;
  height: 1px;
  margin: 0 11px 3px 0;
  border-radius: 0;
  background: var(--sim-gold);
  box-shadow: none;
  vertical-align: middle;
}

.sim-hero h1 {
  max-width: 900px;
  margin-bottom: 22px;
  color: var(--sim-navy);
  font-family: "Instrument Serif", Georgia, serif;
  font-size: clamp(48px, 7vw, 78px);
  font-weight: 400;
  line-height: .99;
  letter-spacing: -.035em;
}

.sim-hero p {
  max-width: 700px;
  color: var(--sim-warm);
  font-size: 17px;
  line-height: 1.75;
}

/* Botones: navy y oro, sin lenguaje de aplicación genérica. */
.sim-btn,
.sim-btn-primary,
.sim-btn-secondary,
.sim-resource-link,
.sim-btn-secundario {
  min-height: 50px;
  border-width: 1px;
  border-color: var(--sim-navy) !important;
  border-radius: 3px;
  background: var(--sim-navy) !important;
  box-shadow: none;
  color: #fff !important;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .005em;
}

.sim-btn:hover,
.sim-btn-primary:hover,
.sim-resource-link:hover {
  border-color: var(--sim-navy-dark) !important;
  background: var(--sim-navy-dark) !important;
  box-shadow: 0 8px 20px rgba(8, 24, 46, .12);
  color: #fff !important;
}

.sim-btn-secondary,
.sim-btn-secundario {
  border-color: var(--sim-navy) !important;
  background: transparent !important;
  color: var(--sim-navy) !important;
}

.sim-btn-secondary:hover,
.sim-btn-secundario:hover {
  border-color: var(--sim-navy) !important;
  background: var(--sim-navy) !important;
  color: #fff !important;
}

.sim-btn:focus-visible,
.sim-btn-secondary:focus-visible,
.sim-resource-link:focus-visible,
button:focus-visible,
select:focus-visible,
input:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible,
a:focus-visible {
  outline: 3px solid var(--sim-gold-light);
  outline-offset: 3px;
}

/* Titulares, introducciones y ritmo vertical. */
.sim-intro {
  margin-top: 72px;
}

.sim-intro h2,
.sim-section h2,
.sim-panel h2,
.sim-cta h2,
.sim-topic-catalog h2,
.sim-diagnostic-header h2,
.sim-result-title {
  color: var(--sim-navy);
  font-family: "Instrument Serif", Georgia, serif;
  font-size: clamp(38px, 4.5vw, 56px);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: -.025em;
}

.sim-intro p,
.sim-section p,
.sim-cta p,
.sim-faq div {
  color: var(--sim-warm);
  line-height: 1.75;
}

.sim-section {
  margin-top: 82px;
  margin-bottom: 82px;
}

.sim-section-alt {
  padding-top: 84px;
  padding-bottom: 84px;
  border-top: 1px solid var(--sim-line);
  border-bottom: 1px solid var(--sim-line);
  background: var(--sim-paper-deep);
}

/* Configuración, formularios y paneles. */
.sim-panel,
.sim-topic-catalog,
.sim-question,
.sim-diagnostic-form .sim-question,
.sim-result,
.sim-loading,
.sim-access-error,
.sim-diagnostico,
.sim-pace-panel,
.sim-timer {
  border: 1px solid var(--sim-line);
  border-radius: 4px;
  background: var(--sim-paper);
  box-shadow: var(--sim-shadow);
}

.sim-panel {
  margin-top: 44px;
  padding: 38px;
}

.sim-panel h2 {
  margin-bottom: 28px;
  padding-bottom: 22px;
  border-bottom-color: var(--sim-line);
  text-align: left;
}

.sim-field label,
.sim-timer-label,
.sim-pace-heading span,
.sim-pace-metrics span,
.sim-result-objective span,
.sim-recommendation > span,
.sim-review-block,
.sim-review-explanation > span,
.sim-result-timing > div:first-child span {
  color: var(--sim-gold);
  font-family: "DM Mono", monospace;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.sim-field select,
.sim-lead-form input[type="text"],
.sim-lead-form input[type="email"] {
  min-height: 50px;
  border: 1px solid var(--sim-line);
  border-radius: 3px;
  background: var(--sim-paper);
  color: var(--sim-navy);
  font-weight: 600;
}

.sim-field select:focus,
.sim-lead-form input:focus {
  border-color: var(--sim-gold);
}

.sim-sample-note,
.sim-pathway-note,
.sim-diagnostico-recomendacion,
.sim-recommendation,
.sim-restart-panel,
.sim-topic-entry {
  border: 0;
  border-left: 2px solid var(--sim-gold);
  border-radius: 0;
  background: var(--sim-paper-deep);
  color: var(--sim-navy);
}

.sim-sample-note {
  padding: 15px 18px;
}

.sim-check {
  color: var(--sim-navy);
}

.sim-check input,
.sim-option input,
.sim-topic-card input {
  accent-color: var(--sim-navy);
}

.sim-privacy-layer {
  color: var(--sim-warm);
}

/* Preguntas, opciones y navegación de prueba. */
.sim-question,
.sim-diagnostic-form .sim-question {
  border-top: 2px solid var(--sim-gold);
  padding: 30px;
}

.sim-question h3,
.sim-question-prompt,
.sim-diagnostic-form .sim-question legend {
  color: var(--sim-navy);
}

.sim-progreso {
  border-radius: 0;
  background: transparent;
  color: var(--sim-gold);
  font-family: "DM Mono", monospace;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.sim-option,
.sim-topic-card span {
  border: 1px solid var(--sim-line);
  border-radius: 3px;
  background: var(--sim-paper);
  color: var(--sim-text);
}

.sim-option:hover,
.sim-option:has(input:checked),
.sim-topic-card input:checked + span {
  border-color: var(--sim-gold);
  background: rgba(215, 186, 126, .16);
}

.sim-option:has(input:focus-visible),
.sim-check:has(input:focus-visible),
.sim-topic-card input:focus-visible + span {
  outline-color: var(--sim-gold-light);
}

.sim-explicacion {
  border-left: 2px solid var(--sim-gold);
  border-radius: 0;
  background: var(--sim-paper-deep);
  color: var(--sim-warm);
}

.sim-explicacion strong {
  color: var(--sim-navy);
}

/* Tarjetas editoriales. */
.sim-steps,
.sim-cards,
.sim-resource-grid {
  gap: 20px;
}

.sim-step,
.sim-card,
.sim-resource {
  border: 1px solid var(--sim-line);
  border-top: 2px solid var(--sim-gold);
  border-radius: 3px;
  background: var(--sim-paper);
  box-shadow: none;
}

.sim-step h3,
.sim-card h3,
.sim-resource h3 {
  color: var(--sim-navy);
}

.sim-step p,
.sim-card p,
.sim-resource p {
  color: var(--sim-warm);
}

.sim-pathways .sim-card.is-current {
  border-color: var(--sim-gold);
  box-shadow: 0 0 0 1px var(--sim-gold);
}

.sim-pathways .sim-card.is-current::before {
  margin-bottom: 18px;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: var(--sim-gold);
  font: 500 10px/1.5 "DM Mono", monospace;
  letter-spacing: .12em;
}

.sim-resource-link {
  border-color: var(--sim-navy) !important;
  background: transparent !important;
  color: var(--sim-navy) !important;
}

.sim-resource-link::after {
  content: "↗";
  color: var(--sim-gold);
  font-size: 15px;
}

.sim-resource-link:hover {
  background: var(--sim-navy) !important;
  color: #fff !important;
}

/* Tiempo, progreso y resultado. */
.sim-timer,
.sim-pace-panel {
  border-left: 2px solid var(--pace-color, var(--sim-gold));
}

.sim-timer {
  border-left-color: var(--sim-gold);
}

.sim-timer-time,
.sim-pace-clock strong,
.sim-score strong {
  color: var(--sim-navy);
  font-family: "Instrument Serif", Georgia, serif;
  font-weight: 400;
}

.sim-time-progress,
.sim-diagnostico-bar,
.sim-result-bar {
  border-radius: 0;
  background: var(--sim-paper-deep);
}

.sim-time-progress span,
.sim-diagnostico-fill,
.sim-result-bar span {
  border-radius: 0;
  background: var(--sim-gold);
}

.sim-pace-dock {
  border-radius: 3px;
  background: rgba(255, 253, 249, .96);
  box-shadow: var(--sim-shadow-lg);
}

.sim-resultado {
  border-radius: 3px;
  background: var(--sim-navy);
  box-shadow: var(--sim-shadow-lg);
}

.sim-resultado h2 {
  color: #fff;
  font-family: "Instrument Serif", Georgia, serif;
  font-size: 44px;
  font-weight: 400;
}

.sim-result {
  border-top: 2px solid var(--sim-gold);
}

/* El resultado funciona como un estado final propio, no como un bloque añadido
   a la portada del simulador. Se conservan únicamente cabecera, aviso y pie. */
body.sim-has-result .sim-hero,
body.sim-has-result .sim-intro,
body.sim-has-result #diagnosticSetupPanel,
body.sim-has-result #minitestSetupPanel,
body.sim-has-result .sim-section,
body.sim-has-result .sim-section-alt,
body.sim-has-result .sim-cta {
  display: none !important;
}

body.sim-has-result #simulador {
  width: min(100% - 48px, 980px);
  margin-right: auto;
  margin-left: auto;
  padding: 0;
}

body.sim-has-result .sim-result {
  max-width: none;
  margin-top: 64px;
  margin-bottom: 72px;
}

.sim-result-header {
  margin: -34px -34px 32px;
  padding: 40px 34px 32px;
  border-bottom: 1px solid var(--sim-line);
  background: var(--sim-paper-deep);
}

.sim-result-eyebrow,
.sim-result-resource > span {
  color: var(--sim-gold);
  font-family: "DM Mono", monospace;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.sim-result-header .sim-result-title {
  margin: 12px 0 10px;
}

.sim-result-header > p {
  max-width: 680px;
  margin: 0;
  color: var(--sim-warm);
  font-size: 17px;
  line-height: 1.65;
}

.sim-score strong {
  font-size: clamp(58px, 9vw, 88px);
}

.sim-result-objective strong,
.sim-result-block strong,
.sim-recommendation h3,
.sim-restart-panel h3 {
  color: var(--sim-navy);
}

.sim-result-timing,
.sim-review-item,
.sim-review-correct,
.sim-review-answer-grid p,
.sim-review-explanation {
  border-radius: 3px;
}

.sim-recommendation {
  padding: 28px 30px;
}

.sim-result-resource {
  margin-top: 34px;
  padding-top: 27px;
  border-top: 1px solid var(--sim-line);
}

.sim-result-resource h3 {
  margin: 9px 0 8px;
  color: var(--sim-navy);
  font-size: 22px;
}

.sim-result-resource p {
  max-width: 680px;
  margin: 0 0 14px;
  color: var(--sim-warm);
  line-height: 1.65;
}

.sim-result-resource a {
  color: var(--sim-navy);
  font-weight: 800;
  text-decoration: underline;
  text-decoration-color: var(--sim-gold);
  text-underline-offset: 5px;
}

.sim-result-followup {
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid var(--sim-line);
  color: var(--sim-warm);
  font-size: 14px;
  line-height: 1.65;
}

.sim-result-followup p {
  margin: 0;
}

.sim-result-followup strong {
  color: var(--sim-navy);
}

.sim-result-followup a {
  color: var(--sim-navy);
  font-weight: 800;
  text-decoration: underline;
  text-decoration-color: var(--sim-gold);
  text-underline-offset: 5px;
}

.sim-review > summary {
  color: var(--sim-navy);
  text-decoration: underline;
  text-decoration-color: var(--sim-gold);
  text-underline-offset: 5px;
}

.sim-review-toggle::before,
.sim-review-toggle::after {
  border-radius: 0;
  background: var(--sim-gold);
}

.sim-review-explanation-more > summary,
.sim-review-block,
.sim-review-explanation > span {
  color: var(--sim-gold);
}

.sim-question-table th,
.sim-review-table th {
  background: var(--sim-paper-deep);
  color: var(--sim-navy);
}

/* Mensajes y estados de acceso. */
.sim-email-sent {
  border: 1px solid rgba(24, 132, 90, .24);
  border-radius: 3px;
  background: #f4fbf7;
}

.sim-email-sent-icon {
  background: #18845a;
}

.sim-link-button {
  color: var(--sim-navy);
  text-decoration-color: var(--sim-gold);
  text-underline-offset: 4px;
}

.sim-topic-entry > span {
  color: var(--sim-gold);
  font-family: "DM Mono", monospace;
  font-size: 10px;
  font-weight: 500;
}

/* CTA final, equivalente a la banda de cierre de la web. */
.sim-cta {
  max-width: 100%;
  margin-top: 90px;
  margin-bottom: 90px;
  padding: 66px 36px;
  border: 0;
  border-radius: 0;
  background:
    radial-gradient(circle at 82% 18%, rgba(215, 186, 126, .16), transparent 34%),
    var(--sim-navy);
  box-shadow: none;
}

.sim-cta h2 {
  border: 0;
  color: #fff;
  font-size: clamp(42px, 5vw, 62px);
}

.sim-cta p {
  color: rgba(255, 255, 255, .76);
}

.sim-cta .sim-btn-primary {
  border-color: var(--sim-gold-light) !important;
  background: var(--sim-gold-light) !important;
  color: var(--sim-navy-dark) !important;
}

.sim-cta .sim-btn-primary:hover {
  border-color: #e1c88f !important;
  background: #e1c88f !important;
}

.sim-cta .sim-btn-secondary,
.sim-cta a.sim-btn-secondary {
  border-color: rgba(255, 255, 255, .72) !important;
  border-radius: 3px;
  background: transparent !important;
  color: #fff !important;
}

.sim-cta .sim-btn-secondary:hover,
.sim-cta a.sim-btn-secondary:hover {
  border-color: #fff !important;
  background: #fff !important;
  color: var(--sim-navy) !important;
}

/* FAQ y aviso editorial. */
.sim-faq-section > h2 {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}

.sim-faq {
  gap: 0;
}

.sim-faq details {
  border: 0;
  border-bottom: 1px solid var(--sim-line);
  border-radius: 0;
  background: transparent;
}

.sim-faq details[open] {
  border-color: var(--sim-line);
  box-shadow: none;
}

.sim-faq summary {
  padding: 22px 36px 22px 0;
  color: var(--sim-navy);
  font-size: 15px;
  font-weight: 700;
}

.sim-faq summary::after {
  content: "+";
  color: var(--sim-gold);
  font: 400 25px/1 "Instrument Serif", serif;
}

.sim-faq details[open] summary::after {
  transform: rotate(45deg);
}

.sim-faq div {
  padding: 0 36px 24px 0;
}

.sim-disclaimer {
  width: 100vw;
  max-width: none !important;
  margin-right: calc(50% - 50vw) !important;
  margin-left: calc(50% - 50vw) !important;
  padding: 28px 24px;
  border-top: 1px solid var(--sim-line);
  background: var(--sim-paper-deep);
  color: var(--sim-warm);
}

.sim-disclaimer > p {
  width: min(100% - 48px, 1180px);
  margin: 0 auto;
  font-size: 11px;
  line-height: 1.65;
  text-align: center;
}

.sim-disclaimer a {
  color: var(--sim-navy);
  text-decoration-color: var(--sim-gold);
}

/* Pie corporativo: réplica estructural del patrón aprobado en WordPress. */
#quarto-content {
  grid-template-rows: [content-top] auto [content-bottom] 0 [page-bottom] !important;
}

#quarto-document-content {
  margin-bottom: 0 !important;
}

.sim-site-footer {
  width: 100vw;
  max-width: none !important;
  margin-right: calc(50% - 50vw) !important;
  margin-left: calc(50% - 50vw) !important;
  padding: 66px 0 28px;
  background: var(--sim-navy-dark);
  color: #bac5d0;
}

.sim-footer-inner {
  width: min(100% - 48px, 1180px);
  margin: 0 auto;
}

.sim-footer-grid {
  display: grid;
  grid-template-columns: .8fr 1.2fr auto;
  align-items: start;
  gap: 65px;
}

.sim-footer-brand {
  display: block;
  width: 196px;
  margin-top: -17px;
}

.sim-footer-brand img {
  display: block;
  width: 100%;
  height: auto;
}

.sim-footer-grid p {
  max-width: 380px;
  margin: 0;
  color: #bac5d0;
  font-size: 12px;
  line-height: 1.7;
}

.sim-footer-grid nav {
  display: flex;
  gap: 17px;
}

.sim-footer-grid nav a {
  color: #bac5d0;
  font-size: 10px;
  white-space: nowrap;
}

.sim-footer-grid nav a:hover,
.sim-footer-grid nav a:focus-visible {
  color: #fff;
  text-decoration-color: var(--sim-gold-light);
}

.sim-footer-copyright {
  margin-top: 48px;
  border-top: 1px solid rgba(255, 255, 255, .12);
  padding-top: 23px;
  color: #bac5d0;
  font: 400 8px/1.5 "DM Mono", monospace;
  letter-spacing: .12em;
}

/* Consentimiento: misma familia visual sin cambiar su comportamiento. */
.ab-cookie-backdrop {
  background: rgba(8, 24, 46, .66);
}

.ab-cookie-panel,
.ab-cookie-dialog {
  border: 1px solid var(--sim-line);
  border-radius: 4px;
  background: var(--sim-paper);
  color: var(--sim-text);
  box-shadow: var(--sim-shadow-lg);
  font: 15px/1.6 "Manrope", system-ui, sans-serif;
}

.ab-cookie-panel h2,
.ab-cookie-dialog h2 {
  color: var(--sim-navy);
  font-family: "Instrument Serif", Georgia, serif;
  font-size: 30px;
  font-weight: 400;
}

.ab-cookie-actions button,
.ab-cookie-preferences {
  border: 1px solid var(--sim-navy);
  border-radius: 3px;
  font: 700 13px/1.2 "Manrope", system-ui, sans-serif;
}

.ab-cookie-primary,
.ab-cookie-preferences {
  background: var(--sim-navy);
  color: #fff;
}

.ab-cookie-secondary {
  background: transparent;
  color: var(--sim-navy);
}

.ab-cookie-actions button:hover,
.ab-cookie-actions button:focus-visible,
.ab-cookie-preferences:hover,
.ab-cookie-preferences:focus-visible {
  outline-color: var(--sim-gold-light);
}

.ab-cookie-legal a {
  color: var(--sim-navy);
}

.ab-cookie-option {
  border-color: var(--sim-line);
  border-radius: 3px;
  background: var(--sim-cream);
}

@media (max-width: 760px) {
  body.sim-has-result #simulador {
    width: min(100% - 28px, 980px);
    padding: 0;
  }

  body.sim-has-result .sim-result {
    margin-top: 34px;
    margin-bottom: 48px;
  }

  .sim-result-header {
    margin: -22px -18px 26px;
    padding: 30px 18px 24px;
  }

  .sim-result-header > p {
    font-size: 15px;
  }

  .sim-brandbar-inner {
    width: min(100% - 36px, 1180px);
    min-height: 70px;
  }

  .sim-brandbar-logo {
    width: 164px;
  }

  .sim-brandbar-context {
    display: none;
  }

  .sim-hero {
    padding: 66px 20px 72px;
  }

  .sim-hero h1 {
    font-size: clamp(46px, 14vw, 60px);
  }

  .sim-hero p {
    font-size: 16px;
  }

  .sim-panel {
    margin-right: 18px;
    margin-left: 18px;
    padding: 28px 22px;
  }

  .sim-intro,
  .sim-section,
  #simulador,
  .sim-minitest {
    padding-right: 18px;
    padding-left: 18px;
  }

  .sim-intro h2,
  .sim-section h2,
  .sim-panel h2,
  .sim-cta h2,
  .sim-topic-catalog h2,
  .sim-diagnostic-header h2,
  .sim-result-title {
    font-size: clamp(36px, 11vw, 48px);
  }

  .sim-section {
    margin-top: 64px;
    margin-bottom: 64px;
  }

  .sim-section-alt {
    padding: 68px 18px;
  }

  .sim-question,
  .sim-diagnostic-form .sim-question {
    padding: 24px 20px;
  }

  .sim-cta {
    margin-right: 0;
    margin-left: 0;
    padding: 54px 22px;
  }

  .sim-cta h2 {
    font-size: 44px;
  }

  .sim-faq div,
  .sim-faq summary {
    padding-right: 30px;
  }

  .sim-disclaimer {
    padding: 25px 0;
  }

  .sim-disclaimer > p,
  .sim-footer-inner {
    width: min(100% - 32px, 1180px);
  }

  .sim-site-footer {
    padding-top: 58px;
  }

  .sim-footer-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .sim-footer-brand {
    width: 188px;
    margin-top: -14px;
  }

  .sim-footer-grid nav {
    flex-wrap: wrap;
    gap: 14px 18px;
  }

  .ab-cookie-panel,
  .ab-cookie-dialog {
    border-radius: 3px;
  }
}

@media print {
  .sim-brandbar {
    position: static;
  }
}
