/* Shared visual-consistency owner. Loads after the responsive site shell and before the final mobile optimisation layer. */

:root {
    /* Brand + layout */
    --cei-font-sans: 'Rubik', Arial, Helvetica, sans-serif;
    --cei-font-editorial: Georgia, 'Times New Roman', serif;

    --cei-navy: var(--cei-shared-ink-153b5c);
    --cei-surface-navy: #1b4568;
    --cei-surface-navy-hover: #24577e;
    --cei-blue: #2874a6;
    --cei-product-blue: #526f86;
    --cei-product-blue-hover: #3b5d77;
    --cei-border: #dbe4ea;
    --cei-soft: #f7f9fb;
    --cei-shadow-sm: 0 7px 20px rgba(20, 52, 76, .055);
    --cei-shadow-md: 0 18px 44px rgba(20, 52, 76, .085);

    --cei-page-max: 1180px;
    --cei-copy-max: 748px;

    --cei-radius-sm: 8px;
    --cei-radius-md: 12px;

    /* Forms */
    --cei-form-text: #183e5c;
    --cei-form-muted: #506b80;
    --cei-form-border: #c9d8e2;
    --cei-form-border-hover: #90aec1;
    --cei-form-focus: #2f6f9f;
    --cei-form-focus-ring: rgba(47, 111, 159, .12);
    --cei-form-surface: var(--cei-shared-ink-ffffff);
    --cei-form-soft: #f7fafc;
    --cei-form-error: #b75353;
    --cei-form-error-ring: rgba(183, 83, 83, .11);
    --cei-form-success: #477b62;

    /* Reusable components */
    --cei-component-border: #d5e1e9;
    --cei-component-border-strong: #a8c2d3;
    --cei-component-soft: #f7f9fb;
    --cei-component-soft-hover: #f0f5f8;
    --cei-component-text: #173d5d;
    --cei-component-muted: #506b80;
    --cei-component-accent: #2d739f;
    --cei-component-radius: 10px;
    --cei-component-shadow: 0 10px 24px rgba(18, 52, 77, .055);
    --cei-component-shadow-hover: 0 12px 28px rgba(18, 52, 77, .075);
    --cei-component-ease: 180ms cubic-bezier(.2, .7, .2, 1);

    /* CTA primitives */
    --cei-cta-height: 46px;
    --cei-cta-pad-y: 10px;
    --cei-cta-pad-x: 20px;
    --cei-cta-radius: 8px;
    --cei-cta-font-size: 14px;
    --cei-cta-font-weight: 650;
    --cei-cta-icon-gap: 8px;

    /* Reading typography */
    --cei-font-clean: var(--cei-font-sans);
    --cei-reading-size: 17px;
    --cei-reading-line-height: 1.62;

    /* Type scale + measure */
    --cei-text-min: 14px;
    --cei-text-meta: var(--cei-text-min);
    --cei-text-compact: 16px;
    --cei-text-body: 17px;
    --cei-text-lead: 19px;
    --cei-reading-width: 66ch;
}

/* Site-wide text rendering — keep typography crisp without changing component geometry. */
html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    font-kerning: normal;
}

body,
button,
input,
select,
textarea {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-kerning: normal;
    text-rendering: optimizeLegibility;
}

body {
    font-family: var(--cei-font-clean);
    font-size: 16px;
    line-height: 1.62;
    color: #30485a;
    text-rendering: optimizeLegibility;
    font-synthesis: none;
    font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
}

main h1,
.site-main h1,
main h2,
.site-main h2,
main h3,
.site-main h3,
main h4,
.site-main h4 {
    font-kerning: normal;
    text-rendering: optimizeLegibility;
}

main :where(a, button, input, select, textarea),
.site-header :where(a, button, input, select, textarea),
.site-footer :where(a, button, input, select, textarea) {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-kerning: normal;
    text-rendering: optimizeLegibility;
}
body,
.site-main,
.order-modern-page,
.registration-modern {
    font-family: var(--cei-font-sans);
}

main h1,
.site-main h1,
.order-modern-page h1,
.registration-modern h1,
main h2,
.site-main h2,
.order-modern-page h2,
.registration-modern h2 {
    font-family: var(--cei-font-editorial);
    color: var(--cei-navy);
    text-wrap: balance;
}

main h1,
.site-main h1,
.order-modern-page h1,
.registration-modern h1 {
    font-weight: 400;
    line-height: 1.06;
    letter-spacing: -.026em;
    font-kerning: normal;
}

main h2,
.site-main h2,
.order-modern-page h2,
.registration-modern h2 {
    font-weight: 400;
    line-height: 1.12;
    letter-spacing: -.019em;
    font-kerning: normal;
}

main h3,
.site-main h3,
.order-modern-page h3,
.registration-modern h3,
main h4,
.site-main h4,
.order-modern-page h4,
.registration-modern h4 {
    font-family: var(--cei-font-sans);
    color: var(--cei-navy);
    font-weight: 600;
    letter-spacing: -.01em;
    text-wrap: pretty;
}

main h3,
.site-main h3,
.order-modern-page h3,
.registration-modern h3 {
    line-height: 1.27;
    letter-spacing: -.008em;
}

main h4,
.site-main h4,
.order-modern-page h4,
.registration-modern h4 {
    line-height: 1.32;
}

main p,
.site-main p,
.order-modern-page p,
.registration-modern p,
main li,
.site-main li {
    font-family: var(--cei-font-sans);
    font-kerning: normal;
    text-rendering: optimizeLegibility;
}

main p,
.site-main p {
    line-height: 1.68;
}
[class*="eyebrow"],
.about-modern-kicker,
.cei-site-faq__eyebrow {
    font-family: var(--cei-font-clean);
    font-size: 14px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: .115em;
}
.home .home-decisions-title {
    font-family: var(--cei-font-editorial);
    font-weight: 400;
    line-height: 1.12;
    letter-spacing: -.022em;
}

.home .home-decisions-eyebrow {
    font-family: var(--cei-font-sans);
}

main h1,
.site-main h1,
.order-modern-page h1,
.registration-modern h1 {
    margin-top: 0;
    margin-bottom: 20px;
}

main h2,
.site-main h2,
.order-modern-page h2,
.registration-modern h2 {
    margin-top: 0;
    margin-bottom: 17px;
}

main h3,
.site-main h3,
.order-modern-page h3,
.registration-modern h3 {
    margin-top: 0;
    margin-bottom: 10px;
}

.site-main .entry-content > h2,
.site-main article > .entry-content > h2 {
    margin-top: 64px;
}

.site-main .entry-content > h3,
.site-main article > .entry-content > h3 {
    margin-top: 42px;
}

.site-main .entry-content > p,
.site-main article > .entry-content > p {
    margin-bottom: 18px;
}
.cei-section-heading > p,
.consensus-v2-section-heading > p,
.about-modern-section-heading > p,
.why-consensus-section-heading > p,
.dd-section-heading > p,
.efp-section-heading > p,
.efc-section-heading > p {
    max-width: var(--cei-copy-max);
}

:where(
    .about-modern-wrap,
    .why-consensus-wrap,
    .investor-data-wrap,
    .contact-modern-wrap,
    .mi-page-wrap,
    .publication-schedule-wrap,
    .dd-shell,
    .cei-api-shell,
    .cei-excel-shell,
    .efp-shell,
    .efc-shell,
    .go-shell,
    .research-bibliography-shell,
    .consensus-explainer-hero-inner,
    .recent-data-hero-inner,
    .special-research-shell,
    .cei-site-faq__inner
) {
    width: min(var(--cei-page-max), calc(100% - 48px));
    max-width: var(--cei-page-max);
    margin-left: auto;
    margin-right: auto;
}
body.page-template-default .site-main > article > .entry-content {
    max-width: 800px;
}

a[class*="button"],
button[class*="button"],
a[class*="-btn"],
button[class*="-btn"],
input[type="submit"] {
    font-family: var(--cei-font-sans);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -.008em;
    text-transform: none;
    border-radius: var(--cei-cta-radius);
    transition: transform .16s ease, box-shadow .16s ease, background-color .16s ease, border-color .16s ease, color .16s ease;
    text-decoration: none;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

a[class*="button"],
button[class*="button"],
a[class*="-btn"],
button[class*="-btn"] {
    min-height: var(--cei-cta-height);
}

a[class*="button"][class*="primary"],
button[class*="button"][class*="primary"],
a[class*="-btn"][class*="primary"],
button[class*="-btn"][class*="primary"] {
    background: linear-gradient(180deg, #214d71 0%, var(--cei-surface-navy) 100%);
    border-color: var(--cei-surface-navy);
    color: var(--cei-shared-ink-fff);
    box-shadow: 0 5px 14px rgba(21, 59, 92, .13);
}

a[class*="button"][class*="secondary"],
button[class*="button"][class*="secondary"],
a[class*="-btn"][class*="secondary"],
button[class*="-btn"][class*="secondary"] {
    background-color: var(--cei-shared-ink-fff);
    border-color: #b6c8d4;
    color: var(--cei-navy);
}

@media (hover: hover) and (pointer: fine) {
    a[class*="button"][class*="primary"]:hover,
    button[class*="button"][class*="primary"]:hover,
    a[class*="-btn"][class*="primary"]:hover {
        background-color: var(--cei-surface-navy-hover);
        border-color: var(--cei-surface-navy-hover);
        transform: translateY(-1px);
        box-shadow: 0 8px 20px rgba(21, 59, 92, .16);
    }
}
/* Keyboard focus must also work on devices without hover support. */
a[class*="button"][class*="primary"]:focus-visible,
button[class*="button"][class*="primary"]:focus-visible,
a[class*="-btn"][class*="primary"]:focus-visible {
    background-color: var(--cei-surface-navy-hover);
    border-color: var(--cei-surface-navy-hover);
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(21, 59, 92, .16);
}
.cei-header-smart-sample {
    flex: 0 0 auto;
    width: auto;
    min-width: 0;
    height: auto;
    min-height: 38px;
    padding: 0 14px;
    border-radius: 5px;
    font-family: 'Rubik', Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    box-sizing: border-box;
}
@media (min-width: 768px) {
    .site-header .navigation-top .sub-menu .cei-menu-product-family,
    .site-header .navigation-top .sub-menu .cei-menu-product-name {
        color: inherit;
        white-space: nowrap;
    }

    .site-header .navigation-top .sub-menu .cei-menu-company-name {
        color: inherit;
        font-weight: inherit;
        white-space: nowrap;
    }
}

@media (max-width: 767px) {
    :where(
        .about-modern-wrap,
        .why-consensus-wrap,
        .investor-data-wrap,
        .contact-modern-wrap,
        .mi-page-wrap,
        .publication-schedule-wrap,
        .dd-shell,
        .cei-api-shell,
        .cei-excel-shell,
        .efp-shell,
        .efc-shell,
        .go-shell,
        .research-bibliography-shell,
        .consensus-explainer-hero-inner,
            .recent-data-hero-inner,
                .special-research-shell,
            .cei-site-faq__inner
    ) {
        width: min(100%, calc(100% - 32px));
    }

    main h1,
    .site-main h1,
    .order-modern-page h1,
    .registration-modern h1 {
        line-height: 1.10;
        letter-spacing: -.022em;
    }

    main h2,
    .site-main h2,
    .order-modern-page h2,
    .registration-modern h2 {
        line-height: 1.16;
        letter-spacing: -.018em;
    }

    .site-main .entry-content > h2,
    .site-main article > .entry-content > h2 {
        margin-top: 42px;
    }
}

.registration-modern .registration-field,
.cei-order-modern-body .order-field,
.legacy-order-form .control-group,
.wpcf7-form p,
.wpforms-form .wpforms-field,
.gform_wrapper .gfield {
    position: relative;
}

.registration-modern .registration-field .control-label,
.cei-order-modern-body .order-field > label,
.legacy-order-form .control-label,
.wpcf7-form label,
.wpforms-form .wpforms-field-label,
.gform_wrapper .gfield_label {
    display: block;
    margin: 0 0 7px;
    color: #294d68;
    font-family: var(--cei-font-sans);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: .01em;
}

.registration-modern .registration-field .required,
.cei-order-modern-body .order-field .required,
.legacy-order-form .required,
.wpcf7-form .required,
.wpforms-form .wpforms-required-label,
.gform_wrapper .gfield_required {
    margin-left: 2px;
    color: var(--cei-form-error);
}
.registration-modern .registration-field input[type="text"],
.registration-modern .registration-field input[type="email"],
.registration-modern .registration-field input[type="tel"],
.registration-modern .registration-field input[type="number"],
.registration-modern .registration-field select,
.registration-modern .registration-field textarea,

.cei-order-modern-body .order-field input[type="text"],
.cei-order-modern-body .order-field input[type="email"],
.cei-order-modern-body .order-field input[type="tel"],
.cei-order-modern-body .order-field input[type="number"],
.cei-order-modern-body .order-field select,
.cei-order-modern-body .order-field textarea,

.legacy-order-form input[type="text"],
.legacy-order-form input[type="email"],
.legacy-order-form input[type="tel"],
.legacy-order-form input[type="number"],
.legacy-order-form select,
.legacy-order-form textarea,

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="number"],
.wpcf7-form select,
.wpcf7-form textarea,

.wpforms-form input[type="text"],
.wpforms-form input[type="email"],
.wpforms-form input[type="tel"],
.wpforms-form input[type="number"],
.wpforms-form select,
.wpforms-form textarea,

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="number"],
.gform_wrapper select,
.gform_wrapper textarea {
    width: 100%;
    min-height: 46px;
    margin: 0;
    padding: 10px 13px;
    box-sizing: border-box;

    border: 1px solid var(--cei-form-border);
    border-radius: 6px;
    outline: 0;
    background: var(--cei-form-surface);
    box-shadow: inset 0 1px 1px rgba(21, 59, 92, .025);

    color: var(--cei-form-text);
    font-family: var(--cei-font-sans);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;

    transition:
        border-color .16s ease,
        box-shadow .16s ease,
        background-color .16s ease;
}

.registration-modern .registration-field textarea,
.cei-order-modern-body .order-field textarea,
.legacy-order-form textarea,
.wpcf7-form textarea,
.wpforms-form textarea,
.gform_wrapper textarea {
    min-height: 104px;
    resize: vertical;
}
.registration-modern .registration-field select,
.cei-order-modern-body .order-field select,
.legacy-order-form select,
.wpcf7-form select,
.wpforms-form select,
.gform_wrapper select {
    padding-right: 38px;
    appearance: none;
    -webkit-appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, #66849a 50%),
        linear-gradient(135deg, #66849a 50%, transparent 50%);
    background-position:
        calc(100% - 18px) 50%,
        calc(100% - 13px) 50%;
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}
@media (hover: hover) and (pointer: fine) {
    .registration-modern .registration-field input:hover,
    .registration-modern .registration-field select:hover,
    .registration-modern .registration-field textarea:hover,
    .cei-order-modern-body .order-field input:hover,
    .cei-order-modern-body .order-field select:hover,
    .cei-order-modern-body .order-field textarea:hover,
    .legacy-order-form input:hover,
    .legacy-order-form select:hover,
    .legacy-order-form textarea:hover,
    .wpcf7-form input:hover,
    .wpcf7-form select:hover,
    .wpcf7-form textarea:hover,
    .wpforms-form input:hover,
    .wpforms-form select:hover,
    .wpforms-form textarea:hover,
    .gform_wrapper input:hover,
    .gform_wrapper select:hover,
    .gform_wrapper textarea:hover {
        border-color: var(--cei-form-border-hover);
    }
}
.registration-modern .registration-field input:focus,
.registration-modern .registration-field select:focus,
.registration-modern .registration-field textarea:focus,

.cei-order-modern-body .order-field input:focus,
.cei-order-modern-body .order-field select:focus,
.cei-order-modern-body .order-field textarea:focus,

.legacy-order-form input:focus,
.legacy-order-form select:focus,
.legacy-order-form textarea:focus,

.wpcf7-form input:focus,
.wpcf7-form select:focus,
.wpcf7-form textarea:focus,

.wpforms-form input:focus,
.wpforms-form select:focus,
.wpforms-form textarea:focus,

.gform_wrapper input:focus,
.gform_wrapper select:focus,
.gform_wrapper textarea:focus {
    border-color: var(--cei-form-focus);
    background-color: var(--cei-shared-ink-fff);
    box-shadow: 0 0 0 3px var(--cei-form-focus-ring);
}
.registration-modern input::placeholder,
.registration-modern textarea::placeholder,
.cei-order-modern-body input::placeholder,
.cei-order-modern-body textarea::placeholder,
.legacy-order-form input::placeholder,
.legacy-order-form textarea::placeholder,
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder,
.wpforms-form input::placeholder,
.wpforms-form textarea::placeholder,
.gform_wrapper input::placeholder,
.gform_wrapper textarea::placeholder {
    color: var(--cei-form-muted);
    opacity: 1;
}

.registration-modern input:-webkit-autofill,
.cei-order-modern-body input:-webkit-autofill,
.legacy-order-form input:-webkit-autofill {
    -webkit-text-fill-color: var(--cei-form-text);
    box-shadow: 0 0 0 1000px var(--cei-shared-ink-fff) inset;
    transition: background-color 9999s ease-out 0s;
}
.registration-modern input:disabled,
.registration-modern select:disabled,
.registration-modern textarea:disabled,
.cei-order-modern-body input:disabled,
.cei-order-modern-body select:disabled,
.cei-order-modern-body textarea:disabled,
.legacy-order-form input:disabled,
.legacy-order-form select:disabled,
.legacy-order-form textarea:disabled,
.wpcf7-form input:disabled,
.wpforms-form input:disabled,
.gform_wrapper input:disabled {
    cursor: not-allowed;
    border-color: #dce5eb;
    background: #f5f8fa;
    color: #8395a2;
}
.registration-modern .registration-field.has-error input,
.registration-modern .registration-field.has-error select,
.registration-modern .registration-field.has-error textarea,

.cei-order-modern-body .order-field.has-error input,
.cei-order-modern-body .order-field.has-error select,
.cei-order-modern-body .order-field.has-error textarea,

.wpcf7-form .wpcf7-not-valid,
.wpforms-form .wpforms-error,
.gform_wrapper .gfield_error input,
.gform_wrapper .gfield_error select,
.gform_wrapper .gfield_error textarea {
    border-color: var(--cei-form-error);
    box-shadow: 0 0 0 3px var(--cei-form-error-ring);
}

.registration-modern .registration-field-error,
.cei-order-modern-body .order-field-error,
.wpcf7-form .wpcf7-not-valid-tip,
.wpforms-form label.wpforms-error,
.gform_wrapper .validation_message {
    margin: 6px 0 0;
    color: var(--cei-form-error);
    font-family: var(--cei-font-sans);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.35;
}
.wpcf7-form .wpcf7-response-output,
.wpforms-form .wpforms-confirmation-container,
.gform_wrapper .gform_validation_errors {
    margin: 18px 0;
    padding: 13px 15px;
    border: 1px solid #c9d8e2;
    border-radius: 6px;
    background: var(--cei-form-soft);
    color: var(--cei-form-muted);
    font-size: 14px;
    line-height: 1.5;
}

.wpcf7-form.invalid .wpcf7-response-output,
.wpcf7-form.failed .wpcf7-response-output,
.gform_wrapper .gform_validation_errors {
    border-color: #dfb7b7;
    background: #fdf7f7;
    color: #8d4545;
}
.registration-modern .registration-agreement-row input[type="checkbox"],
.cei-order-modern-body .order-agreement-row input[type="checkbox"],
.cei-order-modern-body .order-prefix-row input[type="radio"],
.legacy-order-form input[type="checkbox"],
.legacy-order-form input[type="radio"],
.wpcf7-form input[type="checkbox"],
.wpcf7-form input[type="radio"],
.wpforms-form input[type="checkbox"],
.wpforms-form input[type="radio"],
.gform_wrapper input[type="checkbox"],
.gform_wrapper input[type="radio"] {
    width: 17px;
    height: 17px;
    min-width: 17px;
    margin: 1px 7px 0 0;
    border: 1px solid #aebfcb;
    accent-color: #1b4568;
    box-shadow: none;
}

.registration-modern .registration-agreement-row input[type="checkbox"]:focus-visible,
.cei-order-modern-body .order-agreement-row input[type="checkbox"]:focus-visible,
.cei-order-modern-body .order-prefix-row input[type="radio"]:focus-visible,
.legacy-order-form input[type="checkbox"]:focus-visible,
.legacy-order-form input[type="radio"]:focus-visible,
.wpcf7-form input[type="checkbox"]:focus-visible,
.wpcf7-form input[type="radio"]:focus-visible,
.wpforms-form input[type="checkbox"]:focus-visible,
.wpforms-form input[type="radio"]:focus-visible,
.gform_wrapper input[type="checkbox"]:focus-visible,
.gform_wrapper input[type="radio"]:focus-visible {
    outline: 2px solid var(--cei-form-focus);
    outline-offset: 2px;
}
.registration-modern .registration-agreement,
.cei-order-modern-body .order-agreement-section {
    border: 1px solid #d7e3ea;
    border-radius: 7px;
    background:
        linear-gradient(90deg, rgba(47,111,159,.035), rgba(47,111,159,0) 42%),
        #f8fbfc;
    box-shadow: none;
}

.registration-modern .registration-agreement-row,
.cei-order-modern-body .order-agreement-row {
    color: #526b7d;
    font-size: 14px;
    line-height: 1.55;
}
.cei-order-modern-body .order-prefix-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.cei-order-modern-body .order-prefix-label {
    margin-right: 3px;
    color: #294d68;
    font-size: 14px;
    font-weight: 600;
}

.cei-order-modern-body .order-prefix-row label {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    margin: 0;
    padding: 0 11px;
    border: 1px solid #d1dee6;
    border-radius: 5px;
    background: var(--cei-shared-ink-fff);
    color: #496579;
    font-size: 14px;
    font-weight: 500;
}
.registration-modern button[type="submit"],
.registration-modern input[type="submit"],
.cei-order-modern-body .order-actions button,
.legacy-order-form .legacy-order-submit,
.legacy-order-form .legacy-order-reset,
.wpcf7-form input[type="submit"],
.wpcf7-form button[type="submit"],
.wpforms-form button[type="submit"],
.gform_wrapper input[type="submit"],
.gform_wrapper button[type="submit"] {
    min-height: 44px;
    padding: 0 18px;
    border-radius: 5px;
    font-family: var(--cei-font-sans);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0;
    text-transform: none;
    box-shadow: none;
    transform: none;
    transition:
        background-color .16s ease,
        border-color .16s ease,
        box-shadow .16s ease;
}

.registration-modern button[type="submit"],
.registration-modern input[type="submit"],
.cei-order-modern-body .order-place-button,
.legacy-order-form .legacy-order-submit,
.wpcf7-form input[type="submit"],
.wpcf7-form button[type="submit"],
.wpforms-form button[type="submit"],
.gform_wrapper input[type="submit"],
.gform_wrapper button[type="submit"] {
    border: 1px solid #1b4568;
    background: #1b4568;
    color: var(--cei-shared-ink-fff);
}

@media (hover: hover) and (pointer: fine) {
    .registration-modern button[type="submit"]:hover,
    .registration-modern input[type="submit"]:hover,
    .cei-order-modern-body .order-place-button:hover,
    .legacy-order-form .legacy-order-submit:hover,
    .wpcf7-form input[type="submit"]:hover,
    .wpcf7-form button[type="submit"]:hover,
    .wpforms-form button[type="submit"]:hover,
    .gform_wrapper input[type="submit"]:hover,
    .gform_wrapper button[type="submit"]:hover {
        border-color: #24577e;
        background: #24577e;
        box-shadow: 0 4px 12px rgba(21, 59, 92, .13);
        transform: none;
    }
}
.cei-order-modern-body .order-actions .cei-button-secondary,
.legacy-order-form .legacy-order-reset {
    border: 1px solid #a9becd;
    background: var(--cei-shared-ink-fff);
    color: #1b4568;
}
.registration-modern .registration-captcha,
.cei-order-modern-body .order-captcha,
.legacy-order-form .g-recaptcha {
    margin-top: 18px;
}

.registration-modern .g-recaptcha,
.cei-order-modern-body .g-recaptcha,
.legacy-order-form .g-recaptcha {
    width: fit-content;
    max-width: 100%;
}
@media (max-width: 767px) {
    .registration-modern .registration-field input[type="text"],
    .registration-modern .registration-field input[type="email"],
    .registration-modern .registration-field input[type="tel"],
    .registration-modern .registration-field select,
    .registration-modern .registration-field textarea,
    .cei-order-modern-body .order-field input,
    .cei-order-modern-body .order-field select,
    .cei-order-modern-body .order-field textarea,
    .legacy-order-form input[type="text"],
    .legacy-order-form input[type="email"],
    .legacy-order-form input[type="tel"],
    .legacy-order-form select,
    .legacy-order-form textarea,
    .wpcf7-form input,
    .wpcf7-form select,
    .wpcf7-form textarea,
    .wpforms-form input,
    .wpforms-form select,
    .wpforms-form textarea,
    .gform_wrapper input,
    .gform_wrapper select,
    .gform_wrapper textarea {
        min-height: 46px;
        font-size: 16px;
    }

    .registration-modern .registration-field textarea,
    .cei-order-modern-body .order-field textarea,
    .legacy-order-form textarea,
    .wpcf7-form textarea,
    .wpforms-form textarea,
    .gform_wrapper textarea {
        min-height: 96px;
    }

    .cei-order-modern-body .order-prefix-row label {
        min-height: 38px;
    }
}

main :where(
    [class*="eyebrow"],
    [class*="kicker"],
    [class*="section-label"],
    [class*="card-label"]
) {
    color: var(--cei-component-accent);
    font-family: var(--cei-font-sans);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: .12em;
    text-transform: uppercase;
}
main :where(
    a[class*="button"],
    button[class*="button"],
    a[class*="-btn"],
    button[class*="-btn"],
    a.btn,
    button.btn,
    input[type="submit"]
) {
    min-height: 46px;
    padding: 10px 20px;
    border-width: 1px;
    border-style: solid;
    border-radius: 8px;
    font-family: var(--cei-font-sans);
    font-size: 14px;
    font-weight: 650;
    line-height: 1.2;
    letter-spacing: -.006em;
    text-transform: none;
    text-decoration: none;
    box-shadow: 0 1px 1px rgba(18, 52, 77, .035);
    transition:
        background-color var(--cei-component-ease),
        border-color var(--cei-component-ease),
        color var(--cei-component-ease),
        box-shadow var(--cei-component-ease),
        transform var(--cei-component-ease);
}
main :where(
    [class*="button-primary"],
    [class*="button--primary"],
    [class*="btn-primary"],
    [class*="btn--primary"]
) {
    color: var(--cei-shared-ink-fff);
    background: var(--cei-surface-navy);
    border-color: var(--cei-surface-navy);
}

main :where(
    [class*="button-secondary"],
    [class*="button--secondary"],
    [class*="btn-secondary"],
    [class*="btn--secondary"],
    [class*="button--ghost"],
    [class*="btn--ghost"]
) {
    color: var(--cei-component-text);
    background: var(--cei-shared-ink-fff);
    border-color: var(--cei-component-border-strong);
}

@media (hover: hover) and (pointer: fine) {
    main :where(
        [class*="button-primary"],
        [class*="button--primary"],
        [class*="btn-primary"],
        [class*="btn--primary"]
    ):hover {
        background: var(--cei-surface-navy-hover);
        border-color: var(--cei-surface-navy-hover);
        box-shadow: 0 7px 17px rgba(18, 52, 77, .12);
        transform: translateY(-1px);
    }

    main :where(
        [class*="button-secondary"],
        [class*="button--secondary"],
        [class*="btn-secondary"],
        [class*="btn--secondary"],
        [class*="button--ghost"],
        [class*="btn--ghost"]
    ):hover {
        color: var(--cei-navy);
        background: var(--cei-form-soft);
        border-color: var(--cei-form-border-hover);
    }
}
main :where(
    [class*="inline-link"],
    [class*="text-link"],
    [class*="overview-link"],
    [class*="service__link"],
    [class*="methodology-link"],
    [class*="related-publication-link"]
) {
    color: var(--cei-link);
    font-weight: 600;
    text-decoration: none;
    text-underline-offset: 3px;
    transition: color var(--cei-component-ease), text-decoration-color var(--cei-component-ease);
}

@media (hover: hover) and (pointer: fine) {
    main :where(
        [class*="inline-link"],
        [class*="text-link"],
        [class*="overview-link"],
        [class*="service__link"],
        [class*="methodology-link"],
        [class*="related-publication-link"]
    ):hover {
        color: var(--cei-navy);
        text-decoration: underline;
        text-decoration-thickness: 1px;
    }
}
main :where(
    .cei-card,
    .cei-archive-card,
    .cei-sitemap-archive-card,
    .cei-sitemap-publication-card,
    .cei-sitemap-resource-card,
    .consensus-explainer-card,
    .contact-method-card,
    .contact-office-card,
    .country-region-card,
    .commodity-preview-card,
    .cei-api-tech-card,
    .cei-api-compare-card,
    .cei-api-technical__card,
    .cei-excel-access-card,
    .business-info-account-card,
    .business-info-company-card,
    .business-info-legal-card,
    .business-info-payment-card
) {
    border: 1px solid var(--cei-component-border);
    border-radius: var(--cei-component-radius);
    background: var(--cei-shared-ink-fff);
    box-shadow: none;
}
@media (hover: hover) and (pointer: fine) {
    main :where(
        a.cei-card,
        a.cei-archive-card,
        a.cei-sitemap-archive-card,
        a.cei-sitemap-publication-card,
        a.cei-sitemap-resource-card,
        a.country-region-card,
        a.commodity-preview-card,
        .cei-card:has(> a)
    ) {
        transition: border-color var(--cei-component-ease), box-shadow var(--cei-component-ease), background-color var(--cei-component-ease);
    }

    main :where(
        a.cei-card,
        a.cei-archive-card,
        a.cei-sitemap-archive-card,
        a.cei-sitemap-publication-card,
        a.cei-sitemap-resource-card,
        a.country-region-card,
        a.commodity-preview-card,
        .cei-card:has(> a)
    ):hover {
        border-color: var(--cei-component-border-strong);
        box-shadow: var(--cei-component-shadow-hover);
    }
}
/* Give linked cards a matching keyboard-focus cue without shifting their layout. */
main :where(
    a.cei-card,
    a.cei-archive-card,
    a.cei-sitemap-archive-card,
    a.cei-sitemap-publication-card,
    a.cei-sitemap-resource-card,
    a.country-region-card,
    a.commodity-preview-card
):focus-visible,
main .cei-card:has(> a:focus-visible) {
    border-color: var(--cei-component-border-strong);
    box-shadow: var(--cei-component-shadow-hover);
}
main :where(
    .cei-cta,
    [class$="-cta"],
    [class*="-cta "]
) {
    border-radius: 10px;
}
main :where(hr, [class*="divider"], [class*="rule"]) {
    border-color: var(--cei-component-border);
}
main :where(a, button, input, select, textarea):focus-visible {
    outline: 2px solid #2b76a8;
    outline-offset: 3px;
}
main :where(
    .cei-news-card,
    .cei-news-feature-card,
    .cei-archive-card,
    .commodity-preview-card
) img {
    border-radius: 9px;
}
@media (prefers-reduced-motion: reduce) {
    main *,
    main *::before,
    main *::after {
        scroll-behavior: auto;
        transition-duration: .01ms;
        animation-duration: .01ms;
        animation-iteration-count: 1;
    }
}

@media (max-width: 767px) {
    main :where(
        a[class*="button"],
        button[class*="button"],
        a[class*="-btn"],
        button[class*="-btn"],
        a.btn,
        button.btn,
        input[type="submit"]
    ) {
        min-height: 44px;
    }
}

main :where(
    .about-modern-button,
    .business-info-button,
    .cei-404-btn,
    .cei-api-button,
    .cei-button,
    .cei-excel-button,
    .cei-home-button,
    .cei-news-btn,
    .cei-news-button,
    .central-bank-directory-button,
    .consensus-explainer-button,
    .consensus-v2-button,
    .contact-modern-button,
    .contact-modern-cta-button,
    .currency-risk-button,
    .dd-button,
    .efc-button,
    .efp-button,
    .faa-btn,
    .fsi-button,
    .go-button,
    .home-prefooter-cta-button,
    .inflation-cta-button,
    .investor-data-button,
    .long-term-button,
    .mi-button,
    .oil-button,
    .order-excel-email-button,
    .order-place-button,
    .privacy-policy-button,
    .quarterly-button,
    .recent-data-btn,
    .registration-download-button,
    .research-bibliography-btn,
    .schedule-button,
    .special-research-button,
    .survey-profile-button,
    .why-consensus-button,
    .wp-block-button__link
) {
    min-height: var(--cei-cta-height);
    padding: var(--cei-cta-pad-y) var(--cei-cta-pad-x);
    border-width: 1px;
    border-style: solid;
    border-radius: var(--cei-cta-radius);
    font-family: var(--cei-font-sans);
    font-size: var(--cei-cta-font-size);
    font-weight: var(--cei-cta-font-weight);
    line-height: 1.2;
    letter-spacing: -.006em;
    text-transform: none;
    text-decoration: none;
    box-shadow: 0 1px 2px rgba(18, 52, 77, .04);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--cei-cta-icon-gap);
    vertical-align: middle;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    transition:
        background-color var(--cei-component-ease),
        border-color var(--cei-component-ease),
        color var(--cei-component-ease),
        box-shadow var(--cei-component-ease),
        transform var(--cei-component-ease);
}
main :where(
    .about-modern-button-primary,
    .business-info-button-primary,
    .cei-404-btn-primary,
    .cei-api-button--primary,
    .cei-button-primary,
    .cei-excel-button--primary,
    .cei-home-button--primary,
    .cei-news-btn-primary,
    .cei-news-button-primary,
    .central-bank-directory-button-primary,
    .consensus-explainer-button-primary,
    .consensus-v2-button-primary,
    .currency-risk-button-primary,
    .dd-button-primary,
    .efc-button-primary,
    .efp-button-primary,
    .faa-btn-primary,
    .fsi-button-primary,
    .go-button-primary,
    .home-prefooter-cta-button-primary,
    .investor-data-button-primary,
    .long-term-button-primary,
    .mi-button-primary,
    .oil-button-primary,
    .privacy-policy-button-primary,
    .quarterly-button-primary,
    .recent-data-btn-primary,
    .research-bibliography-btn-primary,
    .schedule-button-primary,
    .special-research-button-primary,
    .survey-profile-button-primary,
    .why-consensus-button-primary
) {
    color: var(--cei-shared-ink-fff);
    background: var(--cei-surface-navy);
    border-color: var(--cei-surface-navy);
}
main :where(
    .about-modern-button-secondary,
    .business-info-button-secondary,
    .cei-404-btn-secondary,
    .cei-api-button--secondary,
    .cei-api-button--ghost,
    .cei-button-secondary,
    .cei-excel-button--secondary,
    .cei-home-button--secondary,
    .cei-news-btn-secondary,
    .cei-news-button-secondary,
    .central-bank-directory-button-secondary,
    .consensus-explainer-button-secondary,
    .consensus-v2-button-secondary,
    .currency-risk-button-secondary,
    .dd-button-secondary,
    .efp-button-secondary,
    .faa-btn-secondary,
    .fsi-button-secondary,
    .go-button-secondary,
    .home-prefooter-cta-button-secondary,
    .investor-data-button-secondary,
    .long-term-button-secondary,
    .mi-button-secondary,
    .oil-button-secondary,
    .privacy-policy-button-secondary,
    .quarterly-button-secondary,
    .recent-data-btn-secondary,
    .research-bibliography-btn-secondary,
    .schedule-button-secondary,
    .special-research-button-secondary,
    .survey-profile-button-secondary,
    .why-consensus-button-secondary
) {
    color: var(--cei-component-text);
    background: var(--cei-shared-ink-fff);
    border-color: var(--cei-component-border-strong);
}
main :where(
    .cei-api-button--light,
    .investor-data-button-light,
    .recent-data-btn-light
) {
    color: var(--cei-navy);
    background: var(--cei-shared-ink-fff);
    border-color: var(--cei-shared-ink-fff);
}

main :where(
    .investor-data-button-outline-light,
    .recent-data-btn-outline-light
) {
    color: var(--cei-shared-ink-fff);
    background: transparent;
    border-color: rgba(255, 255, 255, .72);
}
main :where(
    .about-modern-button,
    .business-info-button,
    .cei-404-btn,
    .cei-api-button,
    .cei-button,
    .cei-excel-button,
    .cei-home-button,
    .cei-news-btn,
    .cei-news-button,
    .central-bank-directory-button,
    .consensus-explainer-button,
    .consensus-v2-button,
    .contact-modern-button,
    .contact-modern-cta-button,
    .currency-risk-button,
    .dd-button,
    .efc-button,
    .efp-button,
    .faa-btn,
    .fsi-button,
    .go-button,
    .home-prefooter-cta-button,
    .inflation-cta-button,
    .investor-data-button,
    .long-term-button,
    .mi-button,
    .oil-button,
    .order-excel-email-button,
    .order-place-button,
    .privacy-policy-button,
    .quarterly-button,
    .recent-data-btn,
    .registration-download-button,
    .research-bibliography-btn,
    .schedule-button,
    .special-research-button,
    .survey-profile-button,
    .why-consensus-button
) :where(svg, .icon, [class*="chevron"]) {
    flex: 0 0 auto;
    width: 14px;
    height: 14px;
    margin: 0;
    transform: none;
}
@media (hover: hover) and (pointer: fine) {
    main :where(
        .about-modern-button-primary,
        .business-info-button-primary,
        .cei-404-btn-primary,
        .cei-api-button--primary,
        .cei-button-primary,
        .cei-excel-button--primary,
        .cei-home-button--primary,
        .cei-news-btn-primary,
        .cei-news-button-primary,
        .central-bank-directory-button-primary,
        .consensus-explainer-button-primary,
        .consensus-v2-button-primary,
        .currency-risk-button-primary,
        .dd-button-primary,
        .efc-button-primary,
        .efp-button-primary,
        .faa-btn-primary,
        .fsi-button-primary,
        .go-button-primary,
        .home-prefooter-cta-button-primary,
        .investor-data-button-primary,
        .long-term-button-primary,
        .mi-button-primary,
        .oil-button-primary,
        .privacy-policy-button-primary,
        .quarterly-button-primary,
        .recent-data-btn-primary,
        .research-bibliography-btn-primary,
        .schedule-button-primary,
        .special-research-button-primary,
        .survey-profile-button-primary,
        .why-consensus-button-primary
    ):hover {
        color: var(--cei-shared-ink-fff);
        background: var(--cei-surface-navy-hover);
        border-color: var(--cei-surface-navy-hover);
        box-shadow: 0 8px 18px rgba(18, 52, 77, .16);
        transform: translateY(-1px);
    }

    main :where(
        .about-modern-button-secondary,
        .business-info-button-secondary,
        .cei-404-btn-secondary,
        .cei-api-button--secondary,
        .cei-api-button--ghost,
        .cei-button-secondary,
        .cei-excel-button--secondary,
        .cei-home-button--secondary,
        .cei-news-btn-secondary,
        .cei-news-button-secondary,
        .central-bank-directory-button-secondary,
        .consensus-explainer-button-secondary,
        .consensus-v2-button-secondary,
        .currency-risk-button-secondary,
        .dd-button-secondary,
        .efp-button-secondary,
        .faa-btn-secondary,
        .fsi-button-secondary,
        .go-button-secondary,
        .home-prefooter-cta-button-secondary,
        .investor-data-button-secondary,
        .long-term-button-secondary,
        .mi-button-secondary,
        .oil-button-secondary,
        .privacy-policy-button-secondary,
        .quarterly-button-secondary,
        .recent-data-btn-secondary,
        .research-bibliography-btn-secondary,
        .schedule-button-secondary,
        .special-research-button-secondary,
        .survey-profile-button-secondary,
        .why-consensus-button-secondary
    ):hover {
        color: var(--cei-navy);
        background: var(--cei-component-soft);
        border-color: #9eb8c9;
        box-shadow: 0 6px 16px rgba(18, 52, 77, .09);
        transform: translateY(-1px);
    }

    main :where(
        .cei-api-button--light,
        .investor-data-button-light,
        .recent-data-btn-light
    ):hover {
        color: var(--cei-navy);
        background: #f4f8fb;
        border-color: var(--cei-shared-ink-fff);
        box-shadow: 0 4px 12px rgba(0, 0, 0, .10);
    }

    main :where(
        .investor-data-button-outline-light,
        .recent-data-btn-outline-light
    ):hover {
        color: var(--cei-shared-ink-fff);
        background: rgba(255, 255, 255, .10);
        border-color: var(--cei-shared-ink-fff);
    }
}
main :where(
    .about-modern-button,
    .business-info-button,
    .cei-404-btn,
    .cei-api-button,
    .cei-button,
    .cei-excel-button,
    .cei-home-button,
    .cei-news-btn,
    .cei-news-button,
    .central-bank-directory-button,
    .consensus-explainer-button,
    .consensus-v2-button,
    .contact-modern-button,
    .contact-modern-cta-button,
    .currency-risk-button,
    .dd-button,
    .efc-button,
    .efp-button,
    .faa-btn,
    .fsi-button,
    .go-button,
    .home-prefooter-cta-button,
    .inflation-cta-button,
    .investor-data-button,
    .long-term-button,
    .mi-button,
    .oil-button,
    .order-excel-email-button,
    .order-place-button,
    .privacy-policy-button,
    .quarterly-button,
    .recent-data-btn,
    .registration-download-button,
    .research-bibliography-btn,
    .schedule-button,
    .special-research-button,
    .survey-profile-button,
    .why-consensus-button,
    .wp-block-button__link
):focus-visible {
    outline: 2px solid #4f94c2;
    outline-offset: 3px;
    box-shadow: 0 0 0 3px rgba(79, 148, 194, .16);
}
main :where(
    [class*="cta-actions"]
) > :where(
    .about-modern-button,
    .business-info-button,
    .cei-api-button,
    .cei-button,
    .cei-excel-button,
    .cei-home-button,
    .cei-news-btn,
    .cei-news-button,
    .consensus-explainer-button,
    .consensus-v2-button,
    .dd-button,
    .efc-button,
    .efp-button,
    .faa-btn,
    .go-button,
    .investor-data-button,
    .mi-button,
    .recent-data-btn,
    .research-bibliography-btn,
    .special-research-button,
    .survey-profile-button,
    .why-consensus-button
) {
    margin: 0;
}

@media (max-width: 560px) {
    main :where(
        [class*="cta-actions"]
    ) {
        gap: 10px;
    }
}
main :where(
    .about-modern-button,
    .business-info-button,
    .cei-404-btn,
    .cei-api-button,
    .cei-button,
    .cei-excel-button,
    .cei-home-button,
    .cei-news-btn,
    .cei-news-button,
    .central-bank-directory-button,
    .consensus-explainer-button,
    .consensus-v2-button,
    .contact-modern-button,
    .contact-modern-cta-button,
    .currency-risk-button,
    .dd-button,
    .efc-button,
    .efp-button,
    .faa-btn,
    .fsi-button,
    .go-button,
    .home-prefooter-cta-button,
    .inflation-cta-button,
    .investor-data-button,
    .long-term-button,
    .mi-button,
    .oil-button,
    .order-excel-email-button,
    .order-place-button,
    .privacy-policy-button,
    .quarterly-button,
    .recent-data-btn,
    .registration-download-button,
    .research-bibliography-btn,
    .schedule-button,
    .special-research-button,
    .survey-profile-button,
    .why-consensus-button,
    .blue-button,
    .btn-primary,
    .button-primary,
    .wp-block-button__link
) {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 10px 20px;
    border-radius: 8px;
    font-family: var(--cei-font-sans);
    font-size: 14px;
    font-weight: 650;
    line-height: 1.2;
    letter-spacing: 0;
    text-transform: none;
    text-decoration: none;
    white-space: nowrap;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    transition: background-color .16s ease, border-color .16s ease,
                color .16s ease, box-shadow .16s ease, opacity .16s ease;
    transform: none;
}
main :where(
    .contact-modern-cta-button,
    .registration-download-button,
    .order-excel-email-button,
    .order-place-button,
    .btn-primary,
    .button-primary
) {
    color: var(--cei-shared-ink-fff);
    background: var(--cei-surface-navy);
    border: 1px solid var(--cei-surface-navy);
}
main .inflation-cta-primary {
    color: var(--cei-shared-ink-fff);
    background: var(--cei-surface-navy);
    border: 1px solid var(--cei-surface-navy);
}
main .inflation-cta-secondary {
    color: var(--cei-navy);
    background: var(--cei-shared-ink-fff);
    border: 1px solid #a8bdcc;
}
main .blue-button {
    margin-top: 0;
    margin-bottom: 0;
}
main :where(.printbutton, .resetbutton) {
    box-sizing: border-box;
    min-height: 46px;
    padding: 10px 20px;
    border-radius: 8px;
    font-family: var(--cei-font-sans);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.15;
    letter-spacing: 0;
    text-transform: none;
    transform: none;
}
main :where(
    .about-modern-button,
    .business-info-button,
    .cei-404-btn,
    .cei-api-button,
    .cei-button,
    .cei-excel-button,
    .cei-home-button,
    .cei-news-btn,
    .cei-news-button,
    .central-bank-directory-button,
    .consensus-explainer-button,
    .consensus-v2-button,
    .contact-modern-cta-button,
    .currency-risk-button,
    .dd-button,
    .efc-button,
    .efp-button,
    .faa-btn,
    .fsi-button,
    .go-button,
    .home-prefooter-cta-button,
    .inflation-cta-button,
    .investor-data-button,
    .long-term-button,
    .mi-button,
    .oil-button,
    .order-excel-email-button,
    .order-place-button,
    .privacy-policy-button,
    .quarterly-button,
    .recent-data-btn,
    .registration-download-button,
    .research-bibliography-btn,
    .schedule-button,
    .special-research-button,
    .survey-profile-button,
    .why-consensus-button,
    .blue-button,
    .wp-block-button__link
) :where(svg, .icon, [class*="chevron"]) {
    width: 13px;
    height: 13px;
    margin: 0;
    flex: 0 0 auto;
    transform: none;
}
@media (hover: hover) and (pointer: fine) {
    main :where(
        .contact-modern-cta-button,
        .registration-download-button,
        .order-excel-email-button,
        .order-place-button,
        .btn-primary,
        .button-primary,
        .inflation-cta-primary
    ):hover,
    main :where(
        .contact-modern-cta-button,
        .registration-download-button,
        .order-excel-email-button,
        .order-place-button,
        .btn-primary,
        .button-primary,
        .inflation-cta-primary
    ):focus-visible {
        color: var(--cei-shared-ink-fff);
        background: var(--cei-surface-navy-hover);
        border-color: var(--cei-surface-navy-hover);
        box-shadow: 0 8px 18px rgba(18, 52, 77, .16);
        transform: translateY(-1px);
    }

    main .inflation-cta-secondary:hover,
    main .inflation-cta-secondary:focus-visible {
        color: var(--cei-navy);
        background: var(--cei-component-soft);
        border-color: #9eb8c9;
        box-shadow: 0 6px 16px rgba(18, 52, 77, .09);
        transform: translateY(-1px);
    }
}
main :where(
    .about-modern-hero-actions,
    .business-info-hero-actions,
    .business-info-payment-actions,
    .business-info-cta-actions,
    .cei-api-hero__actions,
    .cei-api-dark__actions,
    .dd-actions,
    .inflation-final-cta-buttons,
    .investor-data-actions,
    .registration-submit-row,
    .why-consensus-hero-actions,
    .why-consensus-cta-actions,
    [class*="cta-actions"]
) {
    gap: 10px;
}

@media (max-width: 560px) {
    main :where(
        .about-modern-button,
        .business-info-button,
        .cei-api-button,
        .cei-button,
        .cei-excel-button,
        .cei-home-button,
        .contact-modern-cta-button,
        .dd-button,
        .inflation-cta-button,
        .investor-data-button,
        .registration-download-button,
        .why-consensus-button,
        .blue-button,
        .wp-block-button__link
    ) {
        min-height: 42px;
    }
}
main :where(
    .publication-button,
    .commodity-final-cta-buttons,
    .special-research-cta-actions,
    .cei-news-article-cta-actions,
    .about-modern-hero-actions,
    .business-info-hero-actions,
    .business-info-payment-actions,
    .business-info-cta-actions,
    .cei-api-hero__actions,
    .cei-api-dark__actions,
    .dd-actions,
    .research-bibliography-actions,
    .efp-hero-actions,
    .efp-support-actions,
    .efc-support-actions,
    .cei-excel-hero__actions,
    .cei-excel-cta__actions,
    .faa-hero-actions,
    .faa-footer-actions,
    .go-hero-actions,
    .schedule-hero-actions,
    .schedule-note-actions,
    .consensus-explainer-hero-actions,
    .why-consensus-hero-actions,
    .why-consensus-cta-actions,
    .currency-risk-hero-actions,
    .cei-news-cta-actions
) {
    display: inline-grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(0, 1fr);
    align-items: stretch;
    width: max-content;
    max-width: 100%;
    gap: 10px;
}
main :where(
    .publication-button,
    .commodity-final-cta-buttons,
    .special-research-cta-actions,
    .cei-news-article-cta-actions,
    .about-modern-hero-actions,
    .business-info-hero-actions,
    .business-info-payment-actions,
    .business-info-cta-actions,
    .cei-api-hero__actions,
    .cei-api-dark__actions,
    .dd-actions,
    .research-bibliography-actions,
    .efp-hero-actions,
    .efp-support-actions,
    .efc-support-actions,
    .cei-excel-hero__actions,
    .cei-excel-cta__actions,
    .faa-hero-actions,
    .faa-footer-actions,
    .go-hero-actions,
    .schedule-hero-actions,
    .schedule-note-actions,
    .consensus-explainer-hero-actions,
    .why-consensus-hero-actions,
    .why-consensus-cta-actions,
    .currency-risk-hero-actions,
    .cei-news-cta-actions
) > :where(
    a[class*="button"],
    a[class*="-btn"],
    .blue-button,
    button[class*="button"],
    button[class*="-btn"]
) {
    width: 100%;
    min-width: 0;
    justify-content: center;
}
main .dd-actions:has(.dd-text-link),
main .consensus-explainer-cta-actions:has(.consensus-explainer-text-cta) {
    display: flex;
    flex-wrap: wrap;
    width: auto;
}

main .dd-actions:has(.dd-text-link) > .dd-button,
main .consensus-explainer-cta-actions:has(.consensus-explainer-text-cta) > .consensus-explainer-button {
    flex: 0 0 190px;
    width: 190px;
}

@media (max-width: 560px) {
    main :where(
        .publication-button,
        .commodity-final-cta-buttons,
        .special-research-cta-actions,
        .cei-news-article-cta-actions,
        .about-modern-hero-actions,
        .business-info-hero-actions,
        .business-info-payment-actions,
        .business-info-cta-actions,
        .cei-api-hero__actions,
        .cei-api-dark__actions,
        .dd-actions,
        .research-bibliography-actions,
        .efp-hero-actions,
        .efp-support-actions,
        .efc-support-actions,
        .cei-excel-hero__actions,
        .cei-excel-cta__actions,
        .faa-hero-actions,
        .faa-footer-actions,
        .go-hero-actions,
        .schedule-hero-actions,
        .schedule-note-actions,
        .consensus-explainer-hero-actions,
        .why-consensus-hero-actions,
        .why-consensus-cta-actions,
        .currency-risk-hero-actions,
        .cei-news-cta-actions
    ) {
        grid-auto-flow: row;
        grid-auto-columns: unset;
        grid-template-columns: 1fr;
        width: 100%;
    }

    main .dd-actions:has(.dd-text-link),
    main .consensus-explainer-cta-actions:has(.consensus-explainer-text-cta) {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }

    main .dd-actions:has(.dd-text-link) > .dd-button,
    main .consensus-explainer-cta-actions:has(.consensus-explainer-text-cta) > .consensus-explainer-button {
        flex: none;
        width: 100%;
    }
}

/* Preserve About Us outlined CTA without restoring pre-sixth-pass priorities. */
main .about-modern-hero-actions > a.about-modern-button-secondary,
main :where(
    .about-modern-hero-actions,
    .consensus-v2-cta-actions,
    .why-consensus-cta-actions,
    .dd-actions
) > :where(
    .about-modern-button-secondary,
    .consensus-v2-text-link,
    .why-consensus-text-link,
    .dd-text-link
) {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 22px;
    border: 1px solid #b9c9d5;
    border-radius: var(--cei-cta-radius, 8px);
    background: var(--cei-shared-ink-fff);
    color: var(--cei-surface-navy, #173f63);
    font-family: var(--cei-font-sans);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: none;
    transform: none;
    transition: background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease;
}

@media (hover: hover) and (pointer: fine) {
    main :where(
        .about-modern-hero-actions,
        .consensus-v2-cta-actions,
        .why-consensus-cta-actions,
        .dd-actions
    ) > :where(
        .about-modern-button-secondary,
        .consensus-v2-text-link,
        .why-consensus-text-link,
        .dd-text-link
    ):hover,
    main :where(
        .about-modern-hero-actions,
        .consensus-v2-cta-actions,
        .why-consensus-cta-actions,
        .dd-actions
    ) > :where(
        .about-modern-button-secondary,
        .consensus-v2-text-link,
        .why-consensus-text-link,
        .dd-text-link
    ):focus-visible {
        background: #f3f7fa;
        border-color: #8faabd;
        color: var(--cei-surface-navy, #173f63);
        box-shadow: 0 6px 16px rgba(18, 52, 77, .09);
        transform: translateY(-1px);
    }
}
main .about-modern-hero-actions > .about-modern-button {
    width: 100%;
    min-width: 0;
}

main .consensus-v2-cta-actions > :where(.consensus-v2-button, .consensus-v2-text-link),
main .why-consensus-cta-actions > :where(.why-consensus-button, .why-consensus-text-link),
main .dd-actions > :where(.dd-button, .dd-text-link) {
    min-width: 180px;
}

@media (max-width: 560px) {
    main .consensus-v2-cta-actions > :where(.consensus-v2-button, .consensus-v2-text-link),
    main .why-consensus-cta-actions > :where(.why-consensus-button, .why-consensus-text-link),
    main .dd-actions > :where(.dd-button, .dd-text-link) {
        width: 100%;
        min-width: 0;
    }
}
main .home-prefooter-cta-actions {
    display: grid;
    grid-auto-columns: minmax(0, 1fr);
    gap: 20px;
}

main .home-prefooter-cta-actions > .home-prefooter-cta-button {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    min-height: 46px;
    padding: 0 22px;
    border-radius: var(--cei-cta-radius, 8px);
    font-family: var(--cei-font-sans);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    transform: none;
}

main .home-prefooter-cta-actions > .home-prefooter-cta-button-primary {
    border: 1px solid var(--cei-surface-navy, #173f63);
    background: var(--cei-surface-navy, #173f63);
    color: var(--cei-shared-ink-fff);
}

main .home-prefooter-cta-actions > .home-prefooter-cta-button-secondary {
    border: 1px solid #b9c9d5;
    background: var(--cei-shared-ink-fff);
    color: var(--cei-surface-navy, #173f63);
}
main .home-prefooter-cta-actions > .home-prefooter-cta-button-secondary::after {
    content: "›";
    margin-left: 8px;
    font-size: 15px;
    line-height: 1;
}
main .about-modern-hero-actions {
    display: grid;
    grid-auto-columns: minmax(0, 1fr);
    gap: 20px;
}

main .about-modern-hero-actions > a.about-modern-button,
main .about-modern-hero-actions > a.about-modern-button:link,
main .about-modern-hero-actions > a.about-modern-button:visited {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    min-height: 46px;
    padding: 0 22px;
    border-radius: var(--cei-cta-radius, 8px);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}

main .about-modern-hero-actions > a.about-modern-button-primary,
main .about-modern-hero-actions > a.about-modern-button-primary:link,
main .about-modern-hero-actions > a.about-modern-button-primary:visited {
    border: 1px solid var(--cei-surface-navy, #173f63);
    background: var(--cei-surface-navy, #173f63);
    color: var(--cei-shared-ink-fff);
}

main .about-modern-hero-actions > a.about-modern-button-secondary,
main .about-modern-hero-actions > a.about-modern-button-secondary:link,
main .about-modern-hero-actions > a.about-modern-button-secondary:visited {
    border: 1px solid #b9c9d5;
    background: var(--cei-shared-ink-fff);
    color: var(--cei-surface-navy, #173f63);
    box-shadow: none;
}

@media (hover: hover) and (pointer: fine) {
    main .home-prefooter-cta-actions > .home-prefooter-cta-button-secondary:hover,
    main .about-modern-hero-actions > a.about-modern-button-secondary:hover {
        background: #f3f7fa;
        border-color: #8faabd;
        color: var(--cei-surface-navy, #173f63);
        box-shadow: 0 6px 16px rgba(18, 52, 77, .09);
        transform: translateY(-1px);
    }
}
/* Same feedback when tabbing on touch or hybrid devices. */
main .home-prefooter-cta-actions > .home-prefooter-cta-button-secondary:focus-visible,
main .about-modern-hero-actions > a.about-modern-button-secondary:focus-visible {
    background: #f3f7fa;
    border-color: #8faabd;
    color: var(--cei-surface-navy, #173f63);
    box-shadow: 0 6px 16px rgba(18, 52, 77, .09);
    transform: translateY(-1px);
}

@media (max-width: 560px) {
    main .home-prefooter-cta-actions,
    main .about-modern-hero-actions {
        grid-auto-flow: row;
    }
}

main .about-modern-hero-actions,
main .home-prefooter-cta-actions,
main .consensus-v2-cta-actions,
main .why-consensus-cta-actions,
main .dd-actions {
    width: min(100%, 470px);
    margin-left: auto;
    margin-right: auto;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-flow: unset;
    justify-content: center;
    justify-items: stretch;
    align-items: stretch;
    column-gap: 20px;
}

main .about-modern-hero-actions > *,
main .home-prefooter-cta-actions > *,
main .consensus-v2-cta-actions > *,
main .why-consensus-cta-actions > *,
main .dd-actions > * {
    width: 100%;
    min-width: 0;
    margin-left: 0;
    margin-right: 0;
}
main :where(.about-modern-cta, .consensus-v2-cta, .why-consensus-cta, .dd-cta):not(.is-centered) :where(
    .consensus-v2-cta-actions,
    .why-consensus-cta-actions,
    .dd-actions
) {
    margin-left: 0;
    margin-right: 0;
}

@media (max-width: 560px) {
    main .about-modern-hero-actions,
    main .home-prefooter-cta-actions,
    main .consensus-v2-cta-actions,
    main .why-consensus-cta-actions,
    main .dd-actions {
        width: 100%;
        grid-template-columns: 1fr;
        row-gap: 12px;
    }
}
main :where(
    .privacy-policy-eyebrow,
    .consensus-explainer-eyebrow,
    .why-consensus-eyebrow,
    .investor-data-eyebrow,
    .schedule-eyebrow,
    .efp-eyebrow,
    .cei-excel-eyebrow,
    .cei-api-eyebrow,
    .dd-eyebrow,
    .about-modern-eyebrow,
    .contact-modern-eyebrow,
    .mi-eyebrow,
    .business-info-eyebrow,
    .recent-data-eyebrow,
    .cei-news-eyebrow,
    .faa-eyebrow,
    .fsi-eyebrow,
    .special-research-eyebrow,
    .special-section-eyebrow,
    .forecast-section-eyebrow,
    .country-section-eyebrow,
    .country-region-eyebrow,
    .commodity-action-eyebrow,
    .commodity-explore-eyebrow
) {
    font-size: 14px;
    font-weight: 650;
    line-height: 1.25;
    letter-spacing: .11em;
}
@media (min-width: 768px) {
    main :where(
        .consensus-explainer-hero,
        .why-consensus-hero,
        .investor-data-hero,
        .schedule-hero,
        .efp-hero,
        .cei-excel-hero,
        .cei-api-hero,
        .dd-hero,
        .about-modern-hero,
        .contact-modern-hero,
        .business-info-hero,
        .recent-data-hero,
        .cei-news-hero,
        .faa-hero,
        .fsi-hero,
        .cei-archive-hero,
        .research-bibliography-hero,
        .privacy-policy-hero,
        .special-research-hero,
        .survey-profile-hero
    ) h1 {
        font-family: var(--cei-font-editorial);
        font-size: clamp(46px, 4.1vw, 56px);
        font-weight: 400;
        line-height: 1.06;
        letter-spacing: -.03em;
        font-kerning: normal;
    }
}
main :where(
    .consensus-explainer-section-heading,
    .why-consensus-intro,
    .why-consensus-evidence,
    .why-consensus-coverage,
    .why-consensus-reliability,
    .why-consensus-process,
    .why-consensus-cta,
    .investor-data-section-heading,
    .schedule-section-heading,
    .efp-section-heading,
    .cei-api-section-heading,
    .dd-section-heading,
    .about-modern-section-heading,
    .business-info-section-heading,
    .fsi-section-heading
) h2 {
    font-weight: 600;
    line-height: 1.16;
}
main :where(
    .consensus-explainer-hero,
    .why-consensus-hero,
    .investor-data-hero,
    .schedule-hero,
    .efp-hero,
    .cei-excel-hero,
    .cei-api-hero,
    .dd-hero,
    .about-modern-hero,
    .contact-modern-hero,
    .business-info-hero,
    .recent-data-hero,
    .faa-hero,
    .fsi-hero
) > p :where(strong, b) {
    font-weight: 600;
}
@media (min-width: 768px) {
    main :where(
        .consensus-explainer-page #consensus-process-title,
        .why-consensus-process #why-process-title,
        .business-info-compliance #business-compliance-title,
        .forecast-surveys-index-modern .fsi-section-heading h2
    ) {
        width: auto;
        max-width: 100%;
        white-space: normal;
    }
}
@media (min-width: 992px) and (max-width: 1199px) {
    main :where(
        .forecast-surveys-index-modern .fsi-hero h1,
        .forecast-surveys-index-modern .fsi-hero > p,
        .investor-data-title-line
    ) {
        width: auto;
        max-width: 100%;
        white-space: normal;
    }
}
main :where(
    .about-modern-button,
    .consensus-explainer-button,
    .why-consensus-button,
    .investor-data-button,
    .schedule-button,
    .efp-button,
    .faa-btn,
    .business-info-button,
    .dd-button,
    .go-button,
    .contact-modern-cta-button,
    .fsi-button,
    .cei-news-button
) > span[aria-hidden="true"] {
    display: none;
}
@media (min-width: 768px) {
    main :where(
        .consensus-explainer-hero-actions,
        .why-consensus-hero-actions,
        .faa-hero-actions,
        .business-info-hero-actions,
        .efp-hero-actions
    ) {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: min(100%, 500px);
        gap: 20px;
        align-items: stretch;
    }

    main :where(
        .consensus-explainer-hero-actions,
        .why-consensus-hero-actions,
        .faa-hero-actions,
        .business-info-hero-actions,
        .efp-hero-actions
    ) > a {
        box-sizing: border-box;
        width: 100%;
        min-width: 0;
        min-height: var(--cei-cta-height);
        margin: 0;
        padding: 0 var(--cei-cta-pad-x);
        justify-content: center;
    }
}

@media (max-width: 767px) {
    main :where(
        .consensus-explainer-hero-actions,
        .why-consensus-hero-actions,
        .faa-hero-actions,
        .business-info-hero-actions,
        .efp-hero-actions
    ) {
        grid-template-columns: 1fr;
        width: 100%;
        row-gap: 12px;
    }
}
main :where(
    .about-modern-button,
    .business-info-button,
    .cei-404-btn,
    .cei-api-button,
    .cei-button,
    .cei-excel-button,
    .cei-home-button,
    .cei-news-btn,
    .cei-news-button,
    .central-bank-directory-button,
    .consensus-explainer-button,
    .consensus-v2-button,
    .contact-modern-button,
    .contact-modern-cta-button,
    .currency-risk-button,
    .dd-button,
    .efc-button,
    .efp-button,
    .faa-btn,
    .fsi-button,
    .go-button,
    .home-prefooter-cta-button,
    .inflation-cta-button,
    .investor-data-button,
    .long-term-button,
    .mi-button,
    .oil-button,
    .privacy-policy-button,
    .quarterly-button,
    .recent-data-btn,
    .registration-download-button,
    .research-bibliography-btn,
    .schedule-button,
    .special-research-button,
    .survey-profile-button,
    .why-consensus-button
) {
    box-sizing: border-box;
    min-height: var(--cei-cta-height);
    padding-top: 0;
    padding-bottom: 0;
    padding-left: var(--cei-cta-pad-x);
    padding-right: var(--cei-cta-pad-x);
    border-width: 1px;
    border-style: solid;
    border-radius: var(--cei-cta-radius);
    font-size: 15px;
    font-weight: 600;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    text-align: center;
    text-decoration: none;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}
main :where(
    .about-modern-button,
    .business-info-button,
    .cei-api-button,
    .cei-button,
    .cei-excel-button,
    .cei-home-button,
    .cei-news-button,
    .central-bank-directory-button,
    .consensus-explainer-button,
    .consensus-v2-button,
    .contact-modern-button,
    .currency-risk-button,
    .dd-button,
    .efp-button,
    .faa-btn,
    .fsi-button,
    .go-button,
    .home-prefooter-cta-button,
    .investor-data-button,
    .privacy-policy-button,
    .recent-data-btn,
    .schedule-button,
    .special-research-button,
    .survey-profile-button,
    .why-consensus-button
)::before,
main :where(
    .about-modern-button,
    .business-info-button,
    .cei-api-button,
    .cei-button,
    .cei-excel-button,
    .cei-home-button,
    .cei-news-button,
    .central-bank-directory-button,
    .consensus-explainer-button,
    .consensus-v2-button,
    .contact-modern-button,
    .currency-risk-button,
    .dd-button,
    .efp-button,
    .faa-btn,
    .fsi-button,
    .go-button,
    .home-prefooter-cta-button,
    .investor-data-button,
    .privacy-policy-button,
    .recent-data-btn,
    .schedule-button,
    .special-research-button,
    .survey-profile-button,
    .why-consensus-button
)::after {
    box-sizing: border-box;
}
main :where(.entry-content, .page-content, .post-content, .cei-content, .cei-copy) > p,
.site-main :where(.entry-content, .page-content, .post-content, .cei-content, .cei-copy) > p,
main :where(.lead, .intro, .cei-lead, .cei-intro),
.site-main :where(.lead, .intro, .cei-lead, .cei-intro) {
    font-family: var(--cei-font-clean);
    font-size: var(--cei-reading-size);
    line-height: var(--cei-reading-line-height);
    letter-spacing: 0;
}
main p,
.site-main p,
.order-modern-page p,
.registration-modern p,
main li,
.site-main li,
.order-modern-page li,
.registration-modern li {
    line-height: 1.58;
    letter-spacing: 0;
}
button,
.button,
a.button,
input[type="button"],
input[type="submit"],
input[type="reset"] {
    font-family: var(--cei-font-clean);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.15;
    letter-spacing: 0;
}

input,
select,
textarea {
    font-family: var(--cei-font-clean);
    font-size: 16px;
    line-height: 1.45;
    letter-spacing: 0;
}
.site-header,
.site-header a,
.main-navigation,
.main-navigation a,
.site-footer,
.site-footer a {
    font-family: var(--cei-font-clean);
}
main a,
.site-main a {
    text-underline-offset: .17em;
    text-decoration-thickness: .075em;
}

@media (max-width: 767px) {
    :root {
        --cei-reading-size: 16px;
        --cei-reading-line-height: 1.6;
    }
}
main :where(
    .entry-content,
    .page-content,
    .post-content,
    .special-research-content,
    .cei-news-article-content,
    .recent-data-article,
    .cei-builder-content
) > p,
main :where(
    .entry-content,
    .page-content,
    .post-content,
    .special-research-content,
    .cei-news-article-content,
    .recent-data-article,
    .cei-builder-content
) > ul > li,
main :where(
    .entry-content,
    .page-content,
    .post-content,
    .special-research-content,
    .cei-news-article-content,
    .recent-data-article,
    .cei-builder-content
) > ol > li {
    font-size: var(--cei-text-body);
    line-height: 1.66;
}
/* Keep the editorial reading-width measure on ordinary pages and specialist
   research articles. Standard News & Articles posts use the full article shell. */
main :where(
    .entry-content:not(.cei-news-article-content),
    .page-content,
    .post-content,
    .special-research-content,
    .recent-data-article,
    .cei-builder-content
) > p,
body.cei-news-single:is(.cei-commodity-research-article, .cei-fx-research-article) main .cei-news-article-content > p {
    max-width: var(--cei-reading-width);
}
main :where(
    .about-modern-hero,
    .consensus-explainer-hero,
    .why-consensus-hero,
    .investor-data-hero,
    .dd-hero,
    .cei-excel-hero,
    .cei-api-hero,
    .efc-hero,
    .efp-hero,
    .fsi-hero,
    .faa-hero,
    .schedule-hero,
    .recent-data-hero,
    .special-research-hero,
    .cei-news-hero,
    .contact-modern-hero,
    .business-info-hero
) > :where(p, .lead, .intro, .deck, [class*="-intro"], [class*="-deck"]) {
    font-size: var(--cei-text-lead);
    line-height: 1.58;
    max-width: 62ch;
}
main :where(
    [class$="-section-heading"],
    [class*="-section-heading "],
    [class*="-section-heading"],
    .about-modern-section-heading,
    .consensus-explainer-section-heading,
    .cei-api-section-heading,
    .efc-section-heading,
    .efp-section-heading,
    .schedule-section-heading,
    .dd-section-heading
) > p {
    font-size: var(--cei-text-compact);
    line-height: 1.6;
}
main :where(
    .about-modern-service,
    .about-modern-origin-card,
    .about-timeline__card,
    .consensus-explainer-benefit,
    .consensus-explainer-process-grid,
    .consensus-explainer-process-grid-six,
    .consensus-explainer-balance-points,
    .why-consensus-strength,
    .why-consensus-process-grid,
    .why-consensus-evidence-points,
    .investor-data-use-grid,
    .investor-data-special-grid,
    .dd-route,
    .dd-institutional-card,
    .dd-use-grid,
    .dd-process,
    .cei-excel-feature,
    .cei-excel-service,
    .cei-excel-access-card,
    .cei-data-principle,
    .cei-api-benefit,
    .efc-data-card,
    .efc-country-page-feature,
    .efc-region-card,
    .faa-mae-card,
    .faa-methodology-grid,
    .schedule-intro-grid,
    .schedule-special-card,
    .recent-data-explainer,
    .recent-data-explainer-item,
    .cei-archive-card,
    .cei-news-card-body,
    .business-info-principles,
    .business-info-company-card,
    .business-info-legal-card
) :where(p, li) {
    font-size: var(--cei-text-compact);
    line-height: 1.6;
}
main :where(
    .about-modern-cta,
    .consensus-explainer-cta,
    .why-consensus-cta,
    .investor-data-cta,
    .cei-excel-cta,
    .dd-cta,
    .efc-support,
    .faa-footer-cta,
    .research-bibliography-cta,
    .recent-data-footer-cta,
    .contact-modern-cta,
    .special-research-cta
) p {
    font-size: var(--cei-text-compact);
    line-height: 1.58;
}
main :where(.cei-common-faq, .cei-site-faq) summary {
    font-size: var(--cei-text-compact);
    line-height: 1.45;
}
.research-quotes-page .special-research-content .research-quote-source {
    font-size: 15px;
    line-height: 1.55;
}

.research-quotes-page .special-research-content .research-quote-text {
    font-size: 16px;
    line-height: 1.68;
}
main :where(figcaption, .wp-caption-text, .caption, .meta, .metadata, .byline, .post-meta) {
    font-size: var(--cei-text-meta);
    line-height: 1.5;
}
.site-header :where(.main-navigation a, .menu-item > a),
.site-footer a {
    font-size: max(14px, 0.875rem);
}
@media (max-width: 767px) {
    :root {
        --cei-text-compact: 16px;
        --cei-text-body: 16.5px;
        --cei-text-lead: 18px;
        --cei-reading-width: 100%;
    }

    main :where(
        .entry-content,
        .page-content,
        .post-content,
        .special-research-content,
        .cei-news-article-content,
        .recent-data-article,
        .cei-builder-content
    ) > p,
    main :where(
        .entry-content,
        .page-content,
        .post-content,
        .special-research-content,
        .cei-news-article-content,
        .recent-data-article,
        .cei-builder-content
    ) > ul > li,
    main :where(
        .entry-content,
        .page-content,
        .post-content,
        .special-research-content,
        .cei-news-article-content,
        .recent-data-article,
        .cei-builder-content
    ) > ol > li {
        line-height: 1.65;
    }
}
@media screen and (min-width: 768px) and (max-width: 1099px) {
    .site-header .cei-tablet-menu-tree .sub-menu > li > a {
        column-gap: 0.28em;
    }

    .site-header .cei-tablet-menu-tree .sub-menu .cei-menu-product-market,
    .site-header .cei-tablet-menu-tree .sub-menu .cei-menu-product-family,
    .site-header .cei-tablet-menu-tree .sub-menu .cei-menu-product-name,
    .site-header .cei-tablet-menu-tree .sub-menu .cei-menu-company-name,
    .site-header .cei-tablet-menu-tree .sub-menu .cei-menu-brand-market {
        color: inherit;
        font: inherit;
        letter-spacing: inherit;
        text-transform: inherit;
        white-space: normal;
    }
}


/* Phase 1 usability refinement — consistent keyboard feedback and errors.
   Keep component sizes/typography intact; these rules affect interaction states. */
:root {
    --cei-ux-focus: #2077a7;
    --cei-ux-error: #a73d47;
}

:where(.site-header, .site-footer, .registration-modern, .order-modern-page,
       .data-delivery-page, .publication-top, .site-main)
  :where(a, button, input, select, textarea):focus-visible {
    outline: 2px solid var(--cei-ux-focus);
    outline-offset: 3px;
}

:where(.registration-modern, .order-modern-page)
  :where(input, select, textarea)[aria-invalid="true"] {
    border-color: var(--cei-ux-error);
}

:where(.registration-modern, .order-modern-page)
  :where(input, select, textarea)[aria-invalid="true"]:focus-visible {
    outline-color: var(--cei-ux-error);
}

.registration-modern :where(.registration-validation-summary, .registration-selection-error),
.order-modern-page :where(.order-validation-summary, .order-inline-error) {
    scroll-margin-top: 96px;
}

@media (prefers-reduced-motion: reduce) {
    :where(.registration-modern, .order-modern-page, .site-header)
      :where(a, button, input, select, textarea) {
        transition-duration: 0.01ms;
        animation-duration: 0.01ms;
    }
}
