/* Global typography tune + news layout balancing */
:root {
    --ill-body-size: clamp(0.96rem, 0.93rem + 0.2vw, 1.03rem);
    --ill-h1-size: clamp(1.75rem, 1.35rem + 1.35vw, 2.5rem);
    --ill-h2-size: clamp(1.5rem, 1.2rem + 1vw, 2rem);
    --ill-h3-size: clamp(1.25rem, 1.05rem + 0.7vw, 1.65rem);
    --ill-h4-size: clamp(1.08rem, 0.98rem + 0.35vw, 1.3rem);
    --ill-line: 1.6;
    --ill-news-divider: rgba(20, 29, 40, 0.05);
    --ill-news-divider-dark: rgba(255, 255, 255, 0.08);
}

html {
    font-size: 16px;
}

body {
    font-size: var(--ill-body-size);
    line-height: var(--ill-line);
    -webkit-text-size-adjust: 100%;
    text-rendering: optimizeLegibility;
}

h1,
.h1 {
    font-size: var(--ill-h1-size);
    line-height: 1.2;
}

h2,
.h2,
.sec-title__title {
    font-size: var(--ill-h2-size);
    line-height: 1.25;
}

h3,
.h3,
.market,
.country,
.sector {
    font-size: var(--ill-h3-size);
    line-height: 1.3;
}

h4,
.h4 {
    font-size: var(--ill-h4-size);
    line-height: 1.35;
}

p,
li,
a,
span,
small,
input,
select,
textarea,
button {
    font-size: inherit;
}

small,
.text-muted {
    font-size: 0.9em;
}

/* News Layout C: enforce equal columns */
.ill-layout-c {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.8rem;
}

.ill-layout-c__featured,
.ill-layout-c__sidebar {
    min-width: 0;
}

.ill-layout-c__featured {
    display: grid;
    gap: 1.25rem;
}

.ill-layout-c__sidebar {
    border: none;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    padding: 0 0 0 1rem;
    border-left: 1px solid var(--ill-news-divider);
}

.ill-sidebar-label {
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    margin-bottom: 0.7rem;
    color: #5f6772;
}

.ill-news-featured,
.ill-news-accent,
.ill-news-sidebar-item,
.ill-news-list-item {
    border: none;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.ill-news-accent {
    border-left: 4px solid transparent;
}

.ill-news-featured,
.ill-news-accent,
.ill-news-sidebar-item {
    padding: 0 4px 1rem;
    margin-bottom: 1.15rem;
    border-bottom: 1px solid var(--ill-news-divider);
}

.ill-layout-c__featured > .ill-news-featured:last-child,
.ill-news-sidebar-item:last-child,
.ill-news-accent:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
}

.ill-layout-c__featured > .ill-news-featured {
    padding-bottom: 1.15rem;
}

.ill-layout-c__featured > .ill-news-featured:last-child {
    padding-bottom: 0;
}

.ill-news-sidebar-item + .ill-news-sidebar-item {
    margin-top: 0;
}

.ill-news-accent .badge.border,
.ill-news-sidebar-item .badge.border {
    border-color: transparent !important;
}

[data-bs-theme=dark] .ill-layout-c__sidebar,
[data-bs-theme=dark] .ill-news-featured,
[data-bs-theme=dark] .ill-news-accent,
[data-bs-theme=dark] .ill-news-sidebar-item,
[data-bs-theme=dark] .ill-news-list-item {
    box-shadow: none;
}

[data-bs-theme=dark] .ill-layout-c__sidebar {
    border-left-color: var(--ill-news-divider-dark);
}

[data-bs-theme=dark] .ill-news-featured,
[data-bs-theme=dark] .ill-news-accent,
[data-bs-theme=dark] .ill-news-sidebar-item,
[data-bs-theme=dark] .ill-news-list-item {
    border-bottom-color: var(--ill-news-divider-dark);
}

/* Burn it page: editorial/minimal treatment */
.burnit-page__header {
    border-bottom: 1px solid rgba(20, 29, 40, 0.03);
}

[data-bs-theme=dark] .burnit-page__header {
    border-bottom-color: rgba(255, 255, 255, 0.05);
}

.burnit-page__blog-one .blog-one__item {
    background: transparent;
    box-shadow: none;
    border: none;
    padding: 0 0 1.15rem;
    margin-bottom: 1.15rem;
    border-bottom: 1px solid rgba(20, 29, 40, 0.035);
}

.burnit-page__feed .ill-news-list-item {
    padding: 0.95rem 4px 1rem;
    margin-bottom: 1rem;
    border-bottom-width: 1px;
    border-bottom-color: rgba(20, 29, 40, 0.03);
}

.burnit-page__feed .ill-news-list-item__title {
    font-size: clamp(1.05rem, 0.98rem + 0.2vw, 1.15rem);
    line-height: 1.32;
    margin: 0.25rem 0 0.35rem;
}

.burnit-page__feed .ill-news-list-item__snippet {
    font-size: 0.92rem;
    line-height: 1.5;
}

.burnit-page__feed .ill-news-meta {
    font-size: 0.78rem;
    letter-spacing: 0.01em;
}

.burnit-page__feed .ill-score-label {
    font-size: 0.66rem;
}

.burnit-page__feed .ill-score-num {
    font-size: 1.2rem;
}

.burnit-page__feed .ill-news-list-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
}

.burnit-page__blog-one .blog-one__item:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: 0;
}

.burnit-page__blog-one .blog-one__img {
    margin-bottom: 1rem;
}

.burnit-page__blog-one .blog-one__innerimg,
.burnit-page__blog-one .blog-one__innerimg img {
    border-radius: 0;
}

.burnit-page__blog-one .blog-one__meta {
    gap: 0.4rem;
    flex-wrap: wrap;
}

.burnit-page__blog-one .blog-one__meta li + li {
    padding-left: 1rem;
}

.burnit-page__blog-one .blog-one__meta li + li::before {
    left: 0.45rem;
    width: 4px;
    height: 4px;
    opacity: 0.65;
}

.burnit-page__blog-one .blog-one__title {
    margin-bottom: 0.55rem;
}

.burnit-page__blog-one .section-progress-stories__images,
.burnit-page__blog-one .section-progress-stories__content {
    margin-bottom: 0;
}

.burnit-page__title {
    margin-bottom: 1.35rem;
}

.burnit-page__lead {
    padding: 0 4px 1.15rem;
    margin-bottom: 1.2rem;
    border-bottom: 1px solid rgba(20, 29, 40, 0.035);
}

.burnit-page__lead-title {
    font-size: clamp(1.28rem, 1.08rem + 0.7vw, 1.72rem);
    line-height: 1.22;
    margin: 0.35rem 0 0.7rem;
    font-weight: 640;
}

.burnit-page__lead-title a {
    color: inherit;
    text-decoration: none;
}

.burnit-page__lead-title a:hover {
    opacity: 0.8;
}

.burnit-page__lead-snippet {
    margin: 0;
    color: #4a5563;
    font-size: 0.98rem;
    line-height: 1.55;
}

.burnit-page__lead-footer {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    flex-wrap: wrap;
    margin-top: 0.9rem;
}

.burnit-page__columns {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.4rem;
}

.burnit-page__column {
    min-width: 0;
}

[data-bs-theme=dark] .burnit-page__blog-one .blog-one__item {
    border-bottom-color: rgba(255, 255, 255, 0.05);
}

[data-bs-theme=dark] .burnit-page__lead {
    border-bottom-color: rgba(255, 255, 255, 0.05);
}

[data-bs-theme=dark] .burnit-page__lead-snippet {
    color: rgba(255, 255, 255, 0.72);
}

.burnit-page__feed .ill-news-list-item {
    padding: 0.85rem 4px 0.95rem;
    margin-bottom: 0.95rem;
    border-bottom-width: 1px;
}

[data-bs-theme=dark] .burnit-page__feed .ill-news-list-item {
    border-bottom-color: rgba(255, 255, 255, 0.05);
}

[data-bs-theme=dark] .burnit-page__blog-one .blog-one__meta li + li::before {
    background-color: rgba(255, 255, 255, 0.55);
}

.ill-news-featured__title,
.ill-news-accent__title,
.ill-news-sidebar-item__title {
    margin-bottom: 0.5rem;
}

/* News micro-typography (scoped) */
.ill-news-featured__title,
.ill-news-accent__title,
.ill-news-sidebar-item__title,
.ill-news-list-item__title {
    font-weight: 650;
    letter-spacing: -0.01em;
}

.ill-news-featured__title {
    font-size: clamp(1.55rem, 1.34rem + 0.65vw, 1.95rem);
    line-height: 1.24;
    margin-bottom: 0.6rem;
}

.ill-news-accent__title,
.ill-news-list-item__title {
    font-size: clamp(1.18rem, 1.07rem + 0.36vw, 1.34rem);
    line-height: 1.3;
}

.ill-news-sidebar-item__title {
    font-size: clamp(1.09rem, 1.01rem + 0.24vw, 1.2rem);
    line-height: 1.34;
    font-weight: 580;
}

.ill-news-featured__snippet {
    font-size: clamp(1.03rem, 0.99rem + 0.18vw, 1.12rem);
    line-height: 1.52;
    color: #404955;
}

.ill-news-accent__snippet,
.ill-news-list-item__snippet {
    font-size: clamp(0.95rem, 0.92rem + 0.12vw, 1.01rem);
    line-height: 1.5;
    color: #4a5563;
}

.ill-news-meta,
.ill-news-source-tag,
.ill-sidebar-label,
.ill-score-label {
    font-size: 0.84rem;
    letter-spacing: 0.02em;
    color: #66707c;
}

.ill-news-source-tag a,
.ill-news-meta a {
    font-weight: 520;
}

.ill-news-featured__footer,
.ill-news-accent__footer,
.ill-news-list-item__score,
.ill-news-sidebar-item {
    line-height: 1.25;
}

.ill-score-pill,
.ill-score-pill--sm,
.ill-score-num {
    font-size: 0.92rem;
    font-weight: 650;
    letter-spacing: -0.01em;
}

.ill-news-accent .badge,
.ill-news-sidebar-item .badge {
    font-size: 0.74rem;
    font-weight: 600;
    padding: 0.27rem 0.48rem;
}

.ill-read-link {
    font-size: 0.86rem;
    font-weight: 560;
}

.ill-news-meta {
    font-size: 0.9rem;
}

.ill-score-pill,
.ill-score-pill--sm {
    font-size: 0.9rem;
    line-height: 1;
}

@media (min-width: 992px) {
    .ill-layout-c {
        grid-template-columns: 1fr 1fr;
        align-items: start;
    }

    .ill-layout-c__featured,
    .ill-layout-c__sidebar {
        height: 100%;
    }
}

@media (max-width: 991.98px) {
    :root {
        --ill-body-size: clamp(0.94rem, 0.9rem + 0.25vw, 1rem);
    }

    .ill-layout-c {
        gap: 1rem;
    }

    .ill-layout-c__sidebar {
        padding-left: 0;
        padding-top: 1rem;
        border-left: 0;
        border-top: 1px solid var(--ill-news-divider);
    }

    [data-bs-theme=dark] .ill-layout-c__sidebar {
        border-top-color: var(--ill-news-divider-dark);
    }

    .burnit-page__blog-one .blog-one__item {
        padding-bottom: 1rem;
        margin-bottom: 1rem;
    }

    .burnit-page__feed .ill-news-list-item {
        padding-bottom: 0.9rem;
        margin-bottom: 0.9rem;
    }

    .burnit-page__lead {
        padding-bottom: 1rem;
        margin-bottom: 1rem;
    }

    .ill-news-featured__title {
        font-size: clamp(1.33rem, 1.21rem + 0.55vw, 1.58rem);
    }

    .ill-news-accent__title,
    .ill-news-sidebar-item__title,
    .ill-news-list-item__title {
        font-size: clamp(1.04rem, 0.98rem + 0.28vw, 1.15rem);
    }

    .burnit-page__columns {
        gap: 1rem;
    }
}

@media (min-width: 992px) {
    .burnit-page__columns {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 1.5rem;
    }
}


/* ===================================
   Buttons: one system
   - primary  = .fire-generic-btn (viola del tema)
   - accent   = .dark-btn-fire / .section-hero-four__btn (giallo, testo scuro)
   Stessa altezza, raggio, peso; hover = tono piu scuro, mai trasparente.
   =================================== */
.fire-generic-btn {
    --btn-bg: var(--primary-color, #494495);
    --btn-bg-hover: #3a367a;
    --btn-fg: #fff;
    --btn-fg-hover: #fff;
    height: 50px;
    padding: 12px 32px;
    border: 2px solid var(--btn-bg);
    border-radius: 8px;
    background-color: var(--btn-bg);
    color: var(--btn-fg);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.2;
    box-shadow: 0 1px 2px rgba(0, 31, 63, .12);
    transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.fire-generic-btn:hover,
.fire-generic-btn:focus-visible {
    background-color: var(--btn-bg-hover);
    border-color: var(--btn-bg-hover);
    color: var(--btn-fg-hover);
    box-shadow: 0 4px 12px rgba(0, 31, 63, .18);
    transform: translateY(-1px);
}

.fire-generic-btn:focus-visible {
    outline: 3px solid rgba(255, 204, 0, .65);
    outline-offset: 2px;
}

.fire-generic-btn:active {
    transform: none;
    box-shadow: none;
}

/* giallo coerente: stesso schema, testo blu notte per il contrasto (>10:1) */
.fire-generic-btn.dark-btn-fire,
.fire-generic-btn.section-hero-four__btn,
[data-bs-theme=dark] .fire-generic-btn.dark-btn-fire {
    --btn-bg: #FFCC00;
    --btn-bg-hover: #E6B800;
    --btn-fg: #001F3F;
    --btn-fg-hover: #001F3F;
}

/* form: nessun override del tema, stesso aspetto di tutti gli altri */
.fire-generic-btn.form-btn,
.fire-generic-btn.form-btn:hover {
    border-width: 2px;
    border-radius: 8px;
}

.fire-generic-btn.form-btn:hover {
    background-color: var(--btn-bg-hover);
    border-color: var(--btn-bg-hover);
    color: var(--btn-fg-hover);
}

.fire-generic-btn > svg {
    filter: none;
}

[data-bs-theme=dark] .fire-generic-btn.dark-btn-fire > svg,
[data-bs-theme=dark] .fire-generic-btn.dark-btn-fire:hover > svg {
    filter: none;
}

@media (max-width: 991px) {
    .fire-generic-btn {
        height: 46px;
        padding: 10px 26px;
        font-size: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .fire-generic-btn {
        transition: none;
        transform: none !important;
    }
}

/* ===================================
   Buttons: classi legacy allineate allo stesso sistema
   (viola primario / giallo accento). Non toccati di proposito:
   .btn-burn (CTA "BURN IT"), .btn-success/.btn-danger (semantici),
   .btn-outline-secondary/dark/info (controlli secondari delle tabelle).
   =================================== */
body .next-marketing-btn {
    background-color: var(--primary-color, #494495);
    border: 2px solid var(--primary-color, #494495);
    border-radius: 8px;
    color: #fff;
    box-shadow: 0 1px 2px rgba(0, 31, 63, .12);
    transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body .next-marketing-btn:hover,
body .next-marketing-btn:focus-visible {
    background-color: #3a367a;
    border-color: #3a367a;
    color: #fff;
    box-shadow: 0 4px 12px rgba(0, 31, 63, .18);
    transform: translateY(-1px);
}

body .btn.btn-yellow {
    background-color: #FFCC00;
    border: 2px solid #FFCC00;
    border-radius: 8px;
    color: #001F3F;
    font-weight: 700;
    transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

body .btn.btn-yellow:hover,
body .btn.btn-yellow:focus-visible {
    background-color: #E6B800;
    border-color: #E6B800;
    color: #001F3F;
    box-shadow: 0 2px 8px rgba(0, 31, 63, .18);
}

body .btn.btn-primary {
    background-color: var(--primary-color, #494495);
    border-color: var(--primary-color, #494495);
    border-radius: 8px;
    color: #fff;
    font-weight: 700;
}

body .btn.btn-primary:hover,
body .btn.btn-primary:focus-visible {
    background-color: #3a367a;
    border-color: #3a367a;
    color: #fff;
}

body .btn.btn-outline-primary {
    border-color: var(--primary-color, #494495);
    border-radius: 8px;
    color: var(--primary-color, #494495);
    font-weight: 600;
}

body .btn.btn-outline-primary:hover,
body .btn.btn-outline-primary:focus-visible {
    background-color: var(--primary-color, #494495);
    border-color: var(--primary-color, #494495);
    color: #fff;
}

body .btn.btn-sm {
    border-radius: 6px;
}

[data-bs-theme=dark] body .btn.btn-outline-primary,
[data-bs-theme=dark] .btn.btn-outline-primary {
    color: #fff;
    border-color: #8b86d6;
}

/* Contact form: campi chiari (prima viola come il bottone) */
#contactForm .form-control {
    background-color: #fff;
    border: 2px solid #d9d6ee;
    border-radius: 8px;
    color: #001F3F;
}

#contactForm .form-control::placeholder {
    color: #6b7280;
    opacity: 1;
}

#contactForm .form-control:focus {
    background-color: #fff;
    border-color: var(--primary-color, #494495);
    box-shadow: 0 0 0 3px rgba(73, 68, 149, .18);
    color: #001F3F;
}

#contactForm .form-check-label {
    font-size: .9rem;
    color: #4b5563;
}

/* ===================================
   Markets (ospite): box "area riservata" + news correlate
   Stessa larghezza (1200) e stesso allineamento dell'header di pagina.
   =================================== */
.markets-page .blog-one .container,
.markets-page .market-gate .container {
    max-width: 1200px;
}

.market-gate {
    padding: 36px 0 8px;
}

.market-gate__card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: .5rem;
    padding: 40px 24px;
    border: 1px solid rgba(255, 204, 0, .45);
    border-radius: 20px;
    background: linear-gradient(135deg, #FFF3BF 0%, #FFFBE8 55%, #FFFFFF 100%);
    box-shadow: 0 10px 30px rgba(0, 31, 63, .08);
}

.market-gate__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    margin-bottom: .25rem;
    border-radius: 50%;
    background: var(--primary-color, #494495);
    color: #fff;
    font-size: 22px;
}

.market-gate__title {
    margin: 0;
    color: #001F3F;
    font-size: clamp(1.25rem, 1.1rem + .6vw, 1.6rem);
    font-weight: 800;
}

.market-gate__text {
    max-width: 520px;
    margin: 0 0 .75rem;
    color: #4b5563;
}

.market-gate__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    justify-content: center;
}

.markets-page .blog-one {
    padding-top: 40px;
}

.markets-page .blog-one__item {
    padding: 22px;
    border: 1px solid #ece9f6;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 2px 10px rgba(0, 31, 63, .05);
    transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}

.markets-page .blog-one__item:hover {
    border-color: #d9d6ee;
    box-shadow: 0 10px 24px rgba(0, 31, 63, .10);
    transform: translateY(-2px);
}

.markets-page .blog-one__item .link-mediobanca {
    color: var(--primary-color, #494495);
    font-weight: 700;
}

@media (prefers-reduced-motion: reduce) {
    .markets-page .blog-one__item { transition: none; transform: none !important; }
}

/* ===================================
   Market tabs (ex breadcrumb): All markets / Azioni / ETF / Indici / Crypto
   =================================== */
.market-tabs-wrap {
    padding: 14px 0;
    border-bottom: 1px solid #ece9f6;
}

.market-tabs {
    display: flex;
    flex-wrap: nowrap;
    gap: .5rem;
    overflow-x: auto;
    padding: 2px;
    scrollbar-width: none;
}

.market-tabs::-webkit-scrollbar {
    display: none;
}

.market-tabs__item {
    flex: 0 0 auto;
    padding: 8px 18px;
    border: 1px solid #ece9f6;
    border-radius: 999px;
    background: #fff;
    color: #001F3F;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.market-tabs__item:hover,
.market-tabs__item:focus-visible {
    border-color: var(--primary-color, #494495);
    color: var(--primary-color, #494495);
}

.market-tabs__item.is-active {
    border-color: var(--primary-color, #494495);
    background: var(--primary-color, #494495);
    color: #fff;
    cursor: default;
}

.market-tabs__item:focus-visible {
    outline: 3px solid rgba(255, 204, 0, .65);
    outline-offset: 2px;
}

@media (max-width: 575px) {
    .market-tabs__item { padding: 7px 14px; font-size: 14px; }
}

/* ===================================
   Header buttons (Burnit / Login / Register)
   - compatti: i tre bottoni stanno sulla stessa riga del menu in ogni browser
     (prima, oltre 1420px, comparivano le etichette e la riga andava a capo)
   - stesso hover degli altri bottoni (tono piu scuro, mai trasparente)
   =================================== */
.section-header__right {
    flex-wrap: nowrap;
    gap: 12px;
}

.section-header__right .header-btn-two,
.section-header--two .section-header__right .header-btn-two,
.section-header--three .section-header__right .header-btn-two,
.section-header--five .section-header__right .header-btn-two {
    margin-left: 0;
    height: 46px;
    padding: 0 20px;
    font-size: 16px;
    border-width: 2px;
    border-radius: 8px;
    white-space: nowrap;
}

.section-header__right .header-btn-two .burnit-btn {
    margin: 0 8px 0 0 !important;
}

.section-header__right .burnit-marketing-btn {
    background-color: #E5352B;
    border-color: #E5352B;
    color: #fff;
}

.section-header__right .burnit-marketing-btn:hover,
.section-header__right .burnit-marketing-btn:focus-visible {
    background-color: #C42B22;
    border-color: #C42B22;
    color: #fff;
}

.section-header__right .register-marketing-btn {
    background-color: #594294;
    border-color: #594294;
    color: #fff;
}

.section-header__right .register-marketing-btn:hover,
.section-header__right .register-marketing-btn:focus-visible {
    background-color: #3f2e6f;
    border-color: #3f2e6f;
    color: #fff;
}

/* a larghezze intermedie: solo icona (come prima), senza andare a capo */
@media (max-width: 1599px) {
    .section-header__right .header-btn-two .burnit-btn {
        display: none;
    }

    .section-header__right .header-btn-two {
        padding: 0 16px;
    }
}

/* Header: spazio tra i bottoni adiacenti (il gap del contenitore non arriva ai figli annidati) */
.section-header__right .header-btn-two + .header-btn-two,
.section-header__right li + li .header-btn-two {
    margin-left: 12px;
}

/* ===================================
   Blocco "Contattaci" su sfondo viola (about / companies)
   - icona: bolla di dialogo nel quadrato bianco (prima: busta blu stile Outlook)
   - label e checkbox in bianco, bottone giallo (prima: grigio scuro / viola su viola)
   =================================== */
.section-form__icon .section-form__glyph {
    color: var(--primary-color, #494495);
    font-size: 46px;
    line-height: 1;
}

.section-form #contactForm .form-check-label,
.section-form #contactForm .form-check-label a {
    color: #fff;
    opacity: 1;
}

.section-form #contactForm .form-check-input {
    border-color: #fff;
}

.section-form #contactForm .form-check-input:checked {
    background-color: #FFCC00;
    border-color: #FFCC00;
}

.section-form #contactForm .form-control {
    border-color: rgba(255, 255, 255, .85);
}

.section-form #contactForm .fire-generic-btn {
    --btn-bg: #FFCC00;
    --btn-bg-hover: #E6B800;
    --btn-fg: #001F3F;
    --btn-fg-hover: #001F3F;
}

.section-form .sec-title a .fa-circle {
    color: #FFCC00;
}

.section-form .sec-title a .fa-inverse {
    color: #001F3F;
}

.section-form #contactForm .alert {
    margin-bottom: 1rem;
}

/* Regulatory notice under market tabs */
.market-disclaimer{margin:8px 0 0;font-size:12px;color:#6b6b7b;text-align:center}

/* Language switcher: round SVG flags, no label wrapping */
.topbar-two__themelng.lng-opt{white-space:nowrap;gap:10px}
.topbar-two__themelng.lng-opt .lng-flag{width:24px;height:24px;flex:0 0 24px;border-radius:50%;object-fit:cover}
.topbar-two__themelng.lng-opt .topbar-two__lng-text{white-space:nowrap;text-transform:uppercase}
.topbar-two__themelng-opt{min-width:112px}

/* Footer regulatory disclaimer: readable on the blue footer bar */
.footer__bottom p.footer__bottom__disclaimer{color:#fff!important;opacity:.92;font-size:13px;line-height:1.5;margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.22)}
.footer__bottom p.footer__bottom__disclaimer strong{color:#f8cf45!important}

/* Language switcher: compact, breadcrumb-like type */
.topbar-two__themelng .topbar-two__lng-text{font-size:14px!important;font-weight:600;line-height:1;letter-spacing:.02em;text-transform:uppercase}
.topbar-two__themelng .lng-flag{width:20px!important;height:20px!important;flex:0 0 20px!important;border-radius:50%;object-fit:cover}
.topbar-two__themelng.lng-selected,.topbar-two__themelng.lng-opt{gap:8px}
.topbar-two__themelng .topbar-two__lng-text{margin:0!important;padding:0!important}
.topbar-two__themelng.lng-opt{padding:8px 14px}

.topbar-two__themelng.lng-selected{white-space:nowrap}
.topbar-two__themelng.lng-selected .topbar-two__lng-text{white-space:nowrap}
