/* BuyTryShare — CSS principal — màj 11/06 */

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;0,800;1,300&display=swap');/* ==========================================================================
   BuyTryShare — CSS Customizer (version consolidée v3)
   ========================================================================== *//* ==========================================================================
   1. SECTION INTRO (Home) — TV + Bridge + Phone
   ========================================================================== */

.intro-section {
    --bts-intro-line: #5eb8ff;
    --bts-intro-text: #f8fafc;
    --bts-intro-muted: rgba(220, 230, 245, 0.78);
    --bts-intro-muted-soft: rgba(200, 215, 235, 0.66);
    --bts-intro-line-soft: rgba(94, 184, 255, 0.32);
    --bts-intro-line-faint: rgba(94, 184, 255, 0.18);
}

.intro-section__grid {
    display: grid;
    grid-template-columns: minmax(0, 360px) minmax(0, 1fr);
    align-items: center;
    column-gap: clamp(28px, 4vw, 56px);
    row-gap: clamp(36px, 5vw, 56px);
}

@media (max-width: 1024px) {
    .intro-section__grid { grid-template-columns: 1fr; }
}

.intro-visual {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(148px, 200px) minmax(0, 1fr);
    align-items: center;
    gap: clamp(8px, 1.2vw, 16px);
    min-width: 0;
}

.intro-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    border: 1px solid var(--bts-intro-line-faint);
    border-radius: 14px;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(17, 39, 71, 0.92) 0%, rgba(10, 24, 44, 0.98) 100%);
    box-shadow: 0 18px 40px -20px rgba(0, 0, 0, 0.55);
}

.intro-card__media { overflow: hidden; aspect-ratio: 4 / 5; }

.intro-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.intro-card__footer {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 18px;
    background: rgba(5, 14, 28, 0.88);
    border-top: 1px solid var(--bts-intro-line-faint);
}

.intro-card__icon {
    display: grid;
    place-items: center;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    border: 1px solid var(--bts-intro-line-soft);
    color: var(--bts-intro-line);
}

.intro-card__icon svg { width: 22px; height: 22px; }
.intro-card__meta { min-width: 0; }

.intro-card__meta h3 {
    margin: 0;
    font-size: clamp(0.95rem, 1.1vw, 1.05rem);
    line-height: 1.25;
    font-weight: 700;
    color: var(--bts-intro-text);
}

.intro-card__meta p {
    margin: 4px 0 0;
    font-size: 13px;
    line-height: 1.35;
    color: var(--bts-intro-muted-soft);
}

.intro-bridge {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 8px 6px;
    min-width: 0;
}

.intro-bridge__title {
    margin: 0;
    max-width: 16ch;
    font-size: clamp(1rem, 1.25vw, 1.18rem);
    line-height: 1.3;
    font-weight: 700;
    color: var(--bts-intro-line);
}

.intro-bridge__title .bts-reg-mark {
    color: var(--bts-intro-text);
    font-size: 0.55em;
    vertical-align: super;
    font-weight: 400;
}

.intro-bridge__badge {
    margin: 16px 0 0;
    padding: 8px 14px;
    border-radius: 999px;
    border: 1px solid var(--bts-intro-line-soft);
    background: rgba(7, 22, 40, 0.88);
    color: var(--bts-intro-line);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1.2;
    white-space: nowrap;
}

@media (max-width: 1024px) {
    .intro-visual { grid-template-columns: 1fr; gap: 20px; }
    .intro-bridge { order: 2; padding: 12px 0; }
    .intro-card--media { order: 1; }
    .intro-card--trust { order: 3; }
    .intro-card__media { aspect-ratio: 16 / 10; }
}

.intro-copy__footer-title {
    grid-column: 1 / -1;
    max-width: 100%;
    margin: clamp(36px, 4vw, 56px) 0 0;
    padding: 0;
    font-weight: 300;
    text-align: center;
}

.intro-copy__footer-impact {
    display: block;
    color: var(--bts-intro-muted);
    font-size: clamp(1.2rem, 1.75vw, 1.45rem);
    line-height: 1.32;
    font-weight: 300;
    letter-spacing: -0.02em;
}

.intro-copy__footer-title .intro-copy__impact-strong {
    font-weight: 800;
    color: var(--bts-intro-text);
}

.intro-section__tagline {
    grid-column: 1 / -1;
    text-align: center;
    margin-top: clamp(24px, 3vw, 40px);
}

.intro-section__divider {
    position: relative;
    height: 1px;
    margin: 0 auto clamp(18px, 2.5vw, 24px);
    max-width: min(100%, 920px);
    background: linear-gradient(
        90deg,
        transparent 0%,
        var(--bts-intro-line-soft) 12%,
        var(--bts-intro-line) 50%,
        var(--bts-intro-line-soft) 88%,
        transparent 100%
    );
}

.intro-section__divider::before,
.intro-section__divider::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--bts-intro-line);
    box-shadow: 0 0 12px rgba(12, 127, 218, 0.65);
    transform: translateY(-50%);
}

.intro-section__divider::before { left: 0; }
.intro-section__divider::after { right: 0; }

.intro-section__tagline p {
    margin: 0;
    color: var(--bts-intro-muted-soft);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.intro-copy__impact-strong,
.intro-copy__impact-lead { font-weight: 800; }

.intro-copy__impact-light { font-weight: 300; }/* ==========================================================================
   2. ICÔNES AUDIENCES + CARTES CLIQUABLES
   ========================================================================== */

.hero-highlights__card .hero-highlights__icon {
    background: transparent;
    border: 0;
    padding: 0;
    width: auto;
    height: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.hero-highlights__card .hero-highlights__icon img {
    display: block;
    width: 120px;
    height: 120px;
    max-width: 120px;
    max-height: 120px;
    object-fit: contain;
    filter: none;
    background: transparent;
    border-radius: 0;
}

.leaders-card .leaders-card__icon {
    background: transparent;
    border: 0;
    padding: 0;
}

.leaders-card .leaders-card__icon img {
    display: block;
    width: 66px;
    height: 66px;
    object-fit: contain;
    filter: none;
    background: transparent;
}

a.hero-highlights__card,
a.leaders-card {
    text-decoration: none;
    color: inherit;
    cursor: pointer;
    display: block;
    transition: transform 220ms ease;
}

a.hero-highlights__card:hover,
a.leaders-card:hover {
    text-decoration: none;
    transform: translateY(-2px);
}/* ==========================================================================
   3. BLOC ECOSYSTEM (Home) — Timeline horizontale 01-05
   ========================================================================== */

.ecosystem-section {
    --eco-blue: #0c7fda;
    --eco-marker-size: 56px;
    --eco-card-size: 100px;
    --eco-stem-height: 20px;
    position: relative;
}

.ecosystem-section > .page-container {
    position: relative;
    z-index: 1;
}

.eco-header {
    max-width: 100%;
    margin-bottom: clamp(24px, 3vw, 40px);
}

.eco-header__title {
    margin: 0;
    display: block;
    font-size: clamp(1.8rem, 3.2vw, 2.6rem);
    line-height: 1.15;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: #f8fafc;
    white-space: nowrap;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif;
}

.eco-header__title-line,
.eco-header__title-accent,
.eco-header__title-accent-word,
.eco-header__title-accent-rest {
    display: inline;
    color: #f8fafc;
    text-shadow: none;
    white-space: normal;
}

.eco-header__title-line::after {
    content: " ";
    white-space: pre;
}

.eco-header__lead {
    margin: clamp(14px, 2vw, 20px) 0 0;
    max-width: min(100%, 1200px);
    color: rgba(241, 247, 252, 0.82);
    font-size: 16px;
    line-height: 1.55;
    font-weight: 300;
    white-space: normal;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif;
}

.eco-flow {
    position: relative;
    margin-top: 8px;
    overflow: visible;
}

@media (min-width: 1101px) {
    .eco-flow {
        max-width: 1200px;
        margin-inline: auto;
    }
}

.eco-flow__timeline {
    position: absolute;
    z-index: 0;
    top: calc(var(--eco-marker-size) / 2);
    left: 0;
    right: 0;
    height: 14px;
    transform: translateY(-50%);
    pointer-events: none;
}

.eco-flow__track {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: 1px;
    transform: translateY(-50%);
    background: linear-gradient(
        90deg,
        rgba(12, 127, 218, 0.35) 0%,
        var(--eco-blue) 8%,
        var(--eco-blue) 92%,
        rgba(12, 127, 218, 0.35) 100%
    );
}

.eco-flow__cap {
    display: block;
    position: absolute;
    top: 50%;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #ffffff;
    transform: translate(-50%, -50%);
    box-shadow:
        0 0 5px rgba(255, 255, 255, 1),
        0 0 14px rgba(12, 127, 218, 0.85),
        0 0 24px rgba(12, 127, 218, 0.45);
}

.eco-flow__cap--start { left: 0; }
.eco-flow__cap--end { left: 100%; }

.eco-flow__steps {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
    margin: 0;
    padding: 0 4px;
    list-style: none;
}

.eco-step {
    position: relative;
    flex: 1 1 0;
    min-width: 0;
    max-width: 228px;
    padding: 0 4px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.eco-step:not(:last-child)::after {
    content: "›";
    position: absolute;
    top: calc(var(--eco-marker-size) + var(--eco-stem-height) + var(--eco-card-size) / 2);
    right: -6px;
    transform: translate(50%, -50%);
    color: rgba(12, 127, 218, 0.95);
    font-size: 40px;
    line-height: 3;
    pointer-events: none;
}

.eco-step__marker {
    position: relative;
    z-index: 2;
    display: grid;
    place-items: center;
    width: var(--eco-marker-size);
    height: var(--eco-marker-size);
    border: 1.5px solid rgba(12, 127, 218, 0.95);
    border-radius: 50%;
    background: radial-gradient(circle at 50% 38%, #073468 0%, #09284a 62%);
    color: #ffffff;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 0.02em;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif;
}

.eco-step__stem {
    display: block;
    width: 1px;
    height: var(--eco-stem-height);
    background: linear-gradient(180deg, rgba(12, 127, 218, 0.85) 0%, rgba(12, 127, 218, 0.35) 100%);
    opacity: 0.85;
    box-shadow: 0 0 8px rgba(12, 127, 218, 0.4);
}

.eco-step__card {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: var(--eco-card-size);
    height: var(--eco-card-size);
    border-radius: 18px;
    border: 1px solid rgba(94, 184, 255, 0.45);
    color: #5fa8ff;
    transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
}

.eco-step__card img.eco-step__icon {
    display: block;
    width: 56px;
    height: 56px;
    object-fit: contain;
    object-position: center;
}

.eco-step:hover .eco-step__card {
    border-color: rgba(94, 184, 255, 0.75);
    box-shadow:
        0 0 0 1px rgba(94, 184, 255, 0.35),
        0 0 28px rgba(12, 127, 218, 0.55),
        0 10px 32px rgba(0, 0, 0, 0.5);
    transform: translateY(-2px);
}

.eco-step__body {
    display: grid;
    gap: 6px;
    width: 100%;
    margin-top: 20px;
    padding: 0 4px;
}

.eco-step__title {
    margin: 0;
    font-size: 16px;
    line-height: 1.3;
    font-weight: 700;
    color: #f8fafc;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif;
}

.eco-step__text {
    margin: 0;
    color: rgba(241, 247, 252, 0.72);
    font-size: 13px;
    line-height: 1.52;
    font-weight: 300;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif;
}

.eco-step__text--meta,
.eco-step__text--channels {
    margin-top: 0;
    color: rgba(241, 247, 252, 0.72);
    font-size: 13px;
    line-height: 1.52;
    font-weight: 300;
    letter-spacing: normal;
}

.eco-callout {
    display: flex;
    align-items: center;
    gap: 18px;
    margin: clamp(48px, 6vw, 72px) auto 0;
    max-width: min(100%, 960px);
    padding: 16px 36px;
    border: 1px solid rgba(12, 127, 218, 0.38);
    border-radius: 999px;
    box-shadow:
        0 0 0 1px rgba(12, 127, 218, 0.06),
        0 10px 40px rgba(0, 0, 0, 0.35),
        0 0 36px rgba(12, 127, 218, 0.1);
}

.eco-callout__icon {
    display: grid;
    place-items: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 1px solid rgba(12, 127, 218, 0.4);
    background: radial-gradient(circle at 35% 30%, rgba(12, 127, 218, 0.5), #081424 72%);
    color: var(--eco-blue);
    box-shadow: 0 0 16px rgba(12, 127, 218, 0.35);
}

.eco-callout__icon svg { width: 20px; height: 20px; }

.eco-callout p {
    margin: 0;
    color: rgba(241, 247, 252, 0.88);
    font-size: 14px;
    line-height: 1.5;
    font-weight: 300;
    text-align: left;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif;
}

@media (max-width: 900px) {
    .eco-flow__steps {
        flex-direction: column;
        gap: 32px;
    }
    .eco-flow__timeline { display: none; }
    .eco-step:not(:last-child)::after { display: none; }
    .eco-step { max-width: 100%; }
    .eco-header__title { white-space: normal; }
}/* ==========================================================================
   4. RESSERRAGE GLOBAL DES ESPACES HOME
   ========================================================================== */

.site-main--home .content-section {
    padding-top: clamp(48px, 6vw, 88px);
    padding-bottom: clamp(48px, 6vw, 88px);
}

.site-main--home .content-section.intro-section {
    padding-top: clamp(40px, 5vw, 72px);
    padding-bottom: clamp(40px, 5vw, 72px);
}

.site-main--home .content-section.ecosystem-section {
    padding-top: clamp(56px, 7vw, 96px);
    padding-bottom: clamp(56px, 7vw, 96px);
}

.site-main--home hr.fading-border {
    margin: 0;
}/* ==========================================================================
   5. INSIGHTS — Section Global Research (feature-cards)
   ========================================================================== */

.insights-research {
    margin-top: clamp(24px, 3vw, 40px);
}

.insights-research__label {
    margin: 0 0 14px;
    color: #5eb8ff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.insights-research__title {
    margin: 0 0 20px;
    color: #f8fafc;
    font-size: clamp(2rem, 3.4vw, 2.6rem);
    line-height: 1.12;
    font-weight: 700;
    letter-spacing: -0.02em;
    max-width: none;
    width: 100%;
}

.insights-section .insights-research .insights-research__title .insights-research__title-accent,
h2.insights-research__title .insights-research__title-accent,
.insights-research__title-accent {
    color: #f8fafc !important;
    background: none !important;
    -webkit-text-fill-color: #f8fafc !important;
    text-shadow: none !important;
}

.insights-research__desc {
    margin: 0 0 clamp(32px, 4vw, 48px);
    max-width: none;
    color: rgba(241, 247, 252, 0.78);
    font-size: 16px;
    line-height: 1.55;
    font-weight: 300;
}

.insights-feature-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: clamp(16px, 1.8vw, 24px);
}

.insights-feature-card {
    position: relative;
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    column-gap: 14px;
    row-gap: 8px;
    padding: 22px 22px 20px;
    border: 1px solid rgba(29, 132, 225, 0.52);
    border-radius: 10px;
    background: rgba(8, 30, 58, 0.58);
    transition: border-color 220ms ease, transform 220ms ease, box-shadow 220ms ease;
}

.insights-feature-card:hover {
    border-color: rgba(94, 184, 255, 0.85);
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.28), 0 0 24px rgba(12, 127, 218, 0.18);
}

.insights-feature-card:nth-child(-n + 3) {
    grid-column: span 2;
}

.insights-feature-card--half {
    grid-column: span 3;
}

.insights-feature-card__icon {
    grid-column: 1;
    grid-row: 1 / span 2;
    align-self: center;
    display: grid;
    place-items: center;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    border: 1px solid rgba(94, 184, 255, 0.42);
    background: radial-gradient(circle at 35% 30%, rgba(12, 127, 218, 0.32), rgba(8, 20, 36, 0.92) 72%);
    box-shadow: 0 0 16px rgba(12, 127, 218, 0.2);
}

.insights-feature-card__img {
    display: block;
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.insights-feature-card h3 {
    grid-column: 2;
    grid-row: 1;
    margin: 0;
    color: #f8fafc;
    font-size: 15px;
    line-height: 1.32;
    font-weight: 700;
}

.insights-feature-card p {
    grid-column: 2;
    grid-row: 2;
    margin: 0;
    color: rgba(241, 247, 252, 0.72);
    font-size: 13px;
    line-height: 1.5;
    font-weight: 300;
}

@media (max-width: 900px) {
    .insights-feature-grid {
        grid-template-columns: 1fr;
    }
    .insights-feature-card:nth-child(-n + 3),
    .insights-feature-card--half {
        grid-column: span 1;
    }
}/* ==========================================================================
   6. INSIGHTS — Graphe Share of Google & Facebook
   ========================================================================== */

.insights-page .insights-card {
    position: relative !important;
    overflow: hidden !important;
    border: 1px solid !important;
    border-image: linear-gradient(90deg, #0070c0 0%, #0e203a 50%, #0070c0 100%) 1 !important;
    border-radius: 6px !important;
    padding: 40px clamp(32px, 4vw, 56px) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
    box-sizing: border-box !important;
}

.insights-page .insights-card--stats {
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    align-items: flex-start !important;
    text-align: left !important;
    padding: 0 !important;
}

.insights-page .insights-chart-grid {
    display: grid !important;
    gap: 24px !important;
    margin: 0 !important;
}

@media (min-width: 960px) {
    .insights-page .insights-chart-grid {
        grid-template-columns: minmax(0, 1.55fr) minmax(0, 0.95fr) !important;
        gap: clamp(20px, 3vw, 40px) !important;
        align-items: start !important;
    }
}

.insights-page .insights-bars {
    --insights-bar-label-col: 152px;
    --insights-grid-line-color: #ffffff;
    --insights-grid-line-width: 1px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    position: relative;
    padding-bottom: 28px;
    color: #ffffff;
    text-align: right;
    font-family: "Open Sans", sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 20px;
}

.insights-page .insights-bars::before,
.insights-page .insights-bars::after {
    content: "";
    position: absolute;
    inset: 0 0 28px calc(var(--insights-bar-label-col) + 12px);
    pointer-events: none;
    z-index: 0;
}

.insights-page .insights-bars::before {
    background-image:
        linear-gradient(var(--insights-grid-line-color), var(--insights-grid-line-color)),
        linear-gradient(var(--insights-grid-line-color), var(--insights-grid-line-color)),
        linear-gradient(var(--insights-grid-line-color), var(--insights-grid-line-color)),
        linear-gradient(var(--insights-grid-line-color), var(--insights-grid-line-color)),
        linear-gradient(var(--insights-grid-line-color), var(--insights-grid-line-color));
    background-repeat: no-repeat;
    background-size:
        var(--insights-grid-line-width) 32%,
        var(--insights-grid-line-width) 52%,
        var(--insights-grid-line-width) 72%,
        var(--insights-grid-line-width) 78%,
        var(--insights-grid-line-width) 92%;
    background-position:
        20% 100%,
        40% 100%,
        57% 100%,
        77% 100%,
        100% 100%;
}

.insights-page .insights-bars::after {
    right: 0;
    left: auto;
    width: var(--insights-grid-line-width);
    background: var(--insights-grid-line-color);
}

.insights-page .insights-bar {
    display: grid;
    grid-template-columns: var(--insights-bar-label-col) minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    position: relative;
    z-index: 2;
}

.insights-page .insights-bar span {
    padding-right: 4px;
    font-size: 0.95rem;
    color: #f2f6fb;
    line-height: 1.25;
    text-align: right;
    white-space: normal;
}

.insights-page .insights-bar em {
    position: relative;
    height: 31px;
    display: block;
    border-radius: 2px;
}

.insights-page .insights-bar em::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: var(--bar, 50%);
    background: #0070C0;
    z-index: 1;
}

.insights-page .insights-bars__axis {
    position: absolute;
    left: calc(var(--insights-bar-label-col) + 12px);
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.95rem;
    line-height: 1;
    color: rgba(236, 243, 249, 0.9);
}

.insights-page .insights-bars__axis::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 100%;
    width: 1px;
    height: 16px;
    background: #ffffff;
}

.insights-page .insights-table {
    width: 100%;
    border-collapse: collapse;
}

.insights-page .insights-table th,
.insights-page .insights-table td {
    padding: 8px 10px;
    text-align: left;
    border: 0;
}

@media (max-width: 959px) {
    .insights-page .insights-bars {
        --insights-bar-label-col: 128px;
    }
}/* ==========================================================================
   7. HARMONISATION HERO — Pages internes (référence About + Contact)
   ========================================================================== */
html body.bts-about-page .about-hero,
html body.bts-contact-poc-page section.poc-hero,
html body.bts-compliance-page .compliance-page .compliance-hero,
html body.bts-blog-page .blog-hero,
html body.bts-insights-page .insights-page .insights-hero.insights-section {
    padding-top: 105px !important;
    padding-bottom: var(--bts-page-hero-section-y) !important;
}

@media (max-width: 720px) {
    html body.bts-about-page .about-hero,
    html body.bts-contact-poc-page section.poc-hero,
    html body.bts-compliance-page .compliance-page .compliance-hero,
    html body.bts-blog-page .blog-hero,
    html body.bts-insights-page .insights-page .insights-hero.insights-section {
        padding-top: 88px !important;
    }
}

html body.bts-about-page .about-hero .about-hero__title,
html body.bts-contact-poc-page section.poc-hero h1.poc-hero__title,
html body.bts-contact-poc-page section.poc-hero h1#poc-hero-heading,
html body.bts-compliance-page .compliance-page .compliance-hero__headline,
html body.bts-blog-page .blog-hero__title,
html body.bts-insights-page .insights-page .insights-hero__title,
html body article.page h1.bts-hero__title {
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    font-size: clamp(2rem, 4.6vw, 2.75rem) !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: #fff !important;
    text-shadow: 0 2px 10px rgba(1, 20, 46, 0.45) !important;
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
}

@media (min-width: 981px) {
    html body.bts-about-page .about-hero .about-hero__title,
    html body.bts-contact-poc-page section.poc-hero h1.poc-hero__title,
    html body.bts-contact-poc-page section.poc-hero h1#poc-hero-heading,
    html body.bts-compliance-page .compliance-page .compliance-hero__headline,
    html body.bts-blog-page .blog-hero__title,
    html body.bts-insights-page .insights-page .insights-hero__title,
    html body article.page h1.bts-hero__title {
        font-size: clamp(2rem, 4.6vw, 2.75rem) !important;
        line-height: 1.2 !important;
    }
}

html body.bts-about-page .about-hero .about-hero__sub,
html body.bts-contact-poc-page section.poc-hero p.poc-hero__sub,
html body.bts-compliance-page .compliance-page .compliance-hero p.compliance-eyebrow--hero,
html body.bts-blog-page .blog-hero__kicker,
html body.bts-insights-page .insights-page .insights-hero p.insights-eyebrow-hero {
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    font-size: 20px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    letter-spacing: 0.01em !important;
    text-transform: none !important;
    color: rgba(255, 255, 255, 0.92) !important;
    font-style: normal !important;
    margin: 0 !important;
    padding: 0 !important;
}

.compliance-section .compliance-container h1:not(.compliance-hero__headline):not(#hero-heading):not(#compliance-hero-heading),
main .wp-block-post-content h1:not(.compliance-hero__headline),
article.page h1:not(.compliance-hero__headline):not(.about-hero__title):not(.insights-hero__title):not(.poc-hero__title):not(.blog-hero__title):not(.bts-hero__title) {
    font-size: clamp(1.5rem, 3vw, 2rem) !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    color: #fff !important;
    margin: 1.5em 0 0.5em !important;
}/* ==========================================================================
   8. PAGES LÉGALES (Legal Notice, Terms of Use, Privacy Policy)
   ========================================================================== */

html body:not(.bts-compliance-page) section.compliance-hero {
    padding-top: 105px !important;
    padding-bottom: var(--bts-page-hero-section-y) !important;
}

@media (max-width: 720px) {
    html body:not(.bts-compliance-page) section.compliance-hero {
        padding-top: 88px !important;
    }
}

html body:not(.bts-compliance-page) section.compliance-hero h1.compliance-hero__headline,
html body:not(.bts-compliance-page) section.compliance-hero h1#hero-heading {
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    font-size: clamp(2rem, 4.6vw, 2.75rem) !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: #fff !important;
    text-shadow: 0 2px 10px rgba(1, 20, 46, 0.45) !important;
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
}

@media (min-width: 981px) {
    html body:not(.bts-compliance-page) section.compliance-hero h1.compliance-hero__headline,
    html body:not(.bts-compliance-page) section.compliance-hero h1#hero-heading {
        font-size: clamp(2rem, 4.6vw, 2.75rem) !important;
        line-height: 1.2 !important;
    }
}/* ===========================/* ==========================================================================
   9. PAGES AUDIENCES — Hero refondu (Advertisers, Agencies, Ad Sales Houses)
   VERSION FINALE — Remplace toutes les versions précédentes
   ========================================================================== *//* Masque le titre WordPress automatique sur ces pages */
body.page-id-66 article > h1:first-child,
body.page-id-66 main > h1:first-child,
body.page-id-65 article > h1:first-child,
body.page-id-65 main > h1:first-child,
body.page-id-64 article > h1:first-child,
body.page-id-64 main > h1:first-child { display: none !important; }/* Structure générale */
.bts-page { font-family: "Open Sans", sans-serif; color: #f8fafc; }/* Hero — 2 colonnes (titre à gauche / icône + label à droite) */
html body .bts-page .bts-hero {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    gap: 40px !important;
    align-items: start !important;
    padding: 180px 0 36px !important;
    margin: 0 !important;
}

html body .bts-page .bts-hero__main { min-width: 0 !important; }

html body .bts-page .bts-hero__aside {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 12px !important;
    padding-top: 4px !important;
}/* Icône + label */
html body .bts-page .bts-hero__icon-wrap {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 80px !important;
    height: 80px !important;
    border-radius: 16px !important;
    background: rgba(94,184,255,0.10) !important;
    border: 1px solid rgba(94,184,255,0.25) !important;
    flex-shrink: 0 !important;
}

html body .bts-page .bts-hero__icon {
    display: block !important;
    width: 56px !important;
    height: 56px !important;
    object-fit: contain !important;
}

html body .bts-page .bts-hero__label-text {
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    color: #5eb8ff !important;
    line-height: 1 !important;
    text-align: center !important;
}/* Titre principal — TAILLE EXACTE ABOUT */
html body .bts-page .bts-hero h1.bts-hero__title,
html body .bts-page .bts-hero__main h1 {
    font-size: 44px !important;
    line-height: 57.6px !important;
    font-weight: 700 !important;
    margin: 0 0 16px !important;
    color: #fff !important;
    text-shadow: 0 2px 10px rgba(1,20,46,0.45) !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
}/* Sous-titre */
html body .bts-page .bts-hero__sub {
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    color: rgba(255,255,255,0.92) !important;
    margin: 0 0 28px !important;
    max-width: 72ch !important;
}/* Signature (capitales, non-italique, centrée, non-bold) */
html body .bts-page .bts-hero__signature {
    margin: 0 !important;
    padding: 20px 0 0 !important;
    border-top: 1px solid rgba(94,184,255,0.32) !important;
    font-size: 18px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
    letter-spacing: 0.08em !important;
    color: #5eb8ff !important;
    font-style: normal !important;
    text-transform: uppercase !important;
    text-align: center !important;
}/* Diviseurs et sections */
.bts-page .bts-divider { border: 0; background-image: linear-gradient(90deg, transparent 15%, #0070C0 50%, transparent 85%); background-color: transparent; height: 1px; margin: 0 0 32px; opacity: 1; }
.bts-page .bts-section { padding: 32px 0; }
.bts-page .bts-two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.bts-page .bts-section__title { font-size: clamp(22px, 2.8vw, 32px); font-weight: 700; line-height: 1.25; margin: 0 0 16px; color: #fff; }
.bts-page .bts-section__body { font-size: 16px; line-height: 1.75; color: rgba(236,243,249,0.78); margin: 0 0 16px; font-weight: 300; }
.bts-page .bts-figure { margin: 0; border-radius: 10px; overflow: hidden; }
.bts-page .bts-figure img { width: 100%; height: auto; display: block; }
.bts-page .bts-challenges-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 32px; }
.bts-page .bts-card { background: rgba(17,39,71,0.56); border: 1px solid rgba(12,127,218,0.22); border-radius: 12px; padding: 28px 30px; }
.bts-page .bts-card__title { font-size: 16px; font-weight: 700; color: #0c83df; text-transform: uppercase; letter-spacing: 0.08em; margin: 0 0 18px; }
.bts-page .bts-card__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.bts-page .bts-card__list li { display: flex; align-items: flex-start; gap: 10px; font-size: 15px; line-height: 1.55; color: rgba(236,243,249,0.85); font-weight: 300; }
.bts-page .bts-check { flex-shrink: 0; width: 16px; height: 16px; background: #0c83df; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; margin-top: 2px; }
.bts-page .bts-check svg { width: 9px; height: 9px; fill: #fff; }
.bts-page .bts-usecases { background: rgba(7,18,38,0.4); border-radius: 12px; padding: 32px 36px; margin-top: 32px; }
.bts-page .bts-usecases__title { font-size: 22px; font-weight: 700; margin: 0 0 12px; color: #fff; }
.bts-page .bts-usecases__body { font-size: 16px; line-height: 1.7; color: rgba(236,243,249,0.78); margin: 0 0 20px; font-weight: 300; }
.bts-page .bts-usecases__figure { margin: 20px 0; border-radius: 8px; overflow: hidden; }
.bts-page .bts-usecases__figure img { width: 100%; height: auto; display: block; }
.bts-page .bts-cta-row { margin-top: 16px; display: flex; gap: 16px; flex-wrap: wrap; align-items: center; }
.bts-page .bts-btn-primary { display: inline-flex; align-items: center; gap: 8px; background: linear-gradient(180deg,#23a0ff,#1178cb); color: #fff; font-size: 15px; font-weight: 700; padding: 13px 28px; border-radius: 6px; text-decoration: none; }
.bts-page .bts-btn-secondary { display: inline-flex; align-items: center; font-size: 15px; font-weight: 600; color: #0c83df; text-decoration: none; border: 1px solid rgba(12,127,218,0.4); padding: 12px 24px; border-radius: 6px; }

@media (max-width: 768px) {
  html body .bts-page .bts-hero { grid-template-columns: 1fr !important; gap: 20px !important; padding: 120px 0 32px !important; }
  html body .bts-page .bts-hero__aside { flex-direction: row !important; justify-content: flex-start !important; padding-top: 0 !important; }
  html body .bts-page .bts-hero__icon-wrap { width: 56px !important; height: 56px !important; border-radius: 12px !important; }
  html body .bts-page .bts-hero__icon { width: 40px !important; height: 40px !important; }
  html body .bts-page .bts-hero h1.bts-hero__title { font-size: 32px !important; line-height: 38.4px !important; }
  .bts-page .bts-two-col { grid-template-columns: 1fr; gap: 24px; }
  .bts-page .bts-challenges-grid { grid-template-columns: 1fr; }
  .bts-page .bts-usecases { padding: 28px 20px; }
  .bts-page .bts-hero__sub { font-size: 16px !important; }
  .bts-page .bts-hero__signature { font-size: 16px !important; }
}/* DERNIER FIX - Padding hero pages Audiences */
html body .bts-page .bts-hero {
    padding-top: 0px !important;
}
html body .bts-page { margin-top: -15px !important; }/* Masque le titre WordPress sur les 3 pages Audiences */
body.page-id-66 article > h1:first-child,
body.page-id-66 main > h1:first-child,
body.page-id-70 article > h1:first-child,
body.page-id-70 main > h1:first-child,
body.page-id-75 article > h1:first-child,
body.page-id-75 main > h1:first-child {
    display: none !important;
}/* ==========================================================================
   HERO — Page Start a PoC (page-id-25)
   Aligné sur la référence About — VERSION SAFE
   ========================================================================== *//* Padding du hero */
.bts-proof-of-concept-page section.proof-hero {
    padding-top: 105px !important;
    padding-bottom: var(--bts-page-hero-section-y, 60px) !important;
}

@media (max-width: 720px) {
    .bts-proof-of-concept-page section.proof-hero {
        padding-top: 88px !important;
    }
}/* Titre H1 — taille About */
.bts-proof-of-concept-page h1.proof-hero__title {
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    font-size: clamp(2rem, 4.6vw, 2.75rem) !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: #fff !important;
    text-shadow: 0 2px 10px rgba(1, 20, 46, 0.45) !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
    max-width: 100% !important;
}/* Sous-titre — uniquement la classe nommée, pas tous les <p> */
.bts-proof-of-concept-page p.proof-hero__sub {
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    font-size: 20px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    letter-spacing: 0.01em !important;
    text-transform: none !important;
    color: rgba(255, 255, 255, 0.92) !important;
    font-style: normal !important;
    margin: 0 !important;
    padding: 0 !important;
}/* ==========================================================================
   FIX HERO — Pages cartes About (Our Mission, LTV, Why Now, etc.)
   Aligne le sous-titre sur la référence About (20px)
   ========================================================================== */

body.page-id-2749 .compliance-hero p.compliance-eyebrow--hero,
body.page-id-2753 .compliance-hero p.compliance-eyebrow--hero,
body.page-id-2792 .compliance-hero p.compliance-eyebrow--hero {
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    font-size: 20px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    letter-spacing: 0.01em !important;
    text-transform: none !important;
    color: rgba(255, 255, 255, 0.92) !important;
    font-style: normal !important;
    margin: 24 !important;
    padding: 0 !important;
}/* Sub Start a PoC sur 1 seule ligne (desktop uniquement) */
@media (min-width: 1100px) {
    body.bts-proof-of-concept-page p.proof-hero__sub {
        max-width: 100% !important;
        white-space: nowrap !important;
    }
}/* ==========================================================================
   LIGNE DE DÉMARCATION — Position fixe = About (300px) sur toutes les pages
   ========================================================================== *//* Pages avec hr du thème (parent = main, classe fading-border) */
html body .site-main hr.fading-border,
html body .site-main--about hr,
html body .compliance-page hr,
html body .insights-page hr,
html body .blog-page hr,
html body .poc-page hr,
html body .proof-of-concept-page hr {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
}/* Force position absolue à 300px du haut sur TOUTES les pages standard */
html body .page-id-15 hr.fading-border,
html body .page-id-2749 hr,
html body .page-id-2753 hr,
html body .page-id-2792 hr,
html body .page-id-25 hr,
html body .page-id-42 hr,
html body .page-id-47 hr,
html body .page-id-50 hr,
html body .page-id-66 hr.bts-divider:first-of-type,
html body .page-id-70 hr.bts-divider:first-of-type,
html body .page-id-75 hr.bts-divider:first-of-type {
    position: absolute !important;
    top: 300px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: min(100%, 1200px) !important;
    z-index: 1 !important;
}/* Mobile : remonter à 220px */
@media (max-width: 720px) {
    html body .page-id-15 hr.fading-border,
    html body .page-id-2749 hr,
    html body .page-id-2753 hr,
    html body .page-id-2792 hr,
    html body .page-id-25 hr,
    html body .page-id-42 hr,
    html body .page-id-47 hr,
    html body .page-id-50 hr,
    html body .page-id-66 hr.bts-divider:first-of-type,
    html body .page-id-70 hr.bts-divider:first-of-type,
    html body .page-id-75 hr.bts-divider:first-of-type {
        top: 220px !important;
        width: calc(100% - 32px) !important;
    }
}/* ==========================================================================
   LIGNE DE DÉMARCATION — Style The Proof ROI + Position fixe (300px About)
   ========================================================================== *//* Style identique à The Proof ROI Engine (.roi-divider) */
html body .page-id-15 hr,
html body .page-id-2749 hr,
html body .page-id-2753 hr,
html body .page-id-2792 hr,
html body .page-id-25 hr,
html body .page-id-42 hr,
html body .page-id-47 hr,
html body .page-id-50 hr,
html body .page-id-66 hr.bts-divider:first-of-type,
html body .page-id-70 hr.bts-divider:first-of-type,
html body .page-id-75 hr.bts-divider:first-of-type {
    border: 0 !important;
    background: linear-gradient(90deg, rgba(13, 11, 23, 0) 15%, #0070C0 50%, rgba(13, 11, 23, 0) 85%) !important;
    height: 1px !important;
    width: min(100%, 1296px) !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    position: absolute !important;
    top: 300px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 1 !important;
}/* Mobile */
@media (max-width: 720px) {
    html body .page-id-15 hr,
    html body .page-id-2749 hr,
    html body .page-id-2753 hr,
    html body .page-id-2792 hr,
    html body .page-id-25 hr,
    html body .page-id-42 hr,
    html body .page-id-47 hr,
    html body .page-id-50 hr,
    html body .page-id-66 hr.bts-divider:first-of-type,
    html body .page-id-70 hr.bts-divider:first-of-type,
    html body .page-id-75 hr.bts-divider:first-of-type {
        top: 220px !important;
        width: calc(100% - 32px) !important;
    }
}/* FIX VISIBILITÉ — Ligne de démarcation style The Proof ROI */
html body .page-id-15 hr,
html body .page-id-2749 hr,
html body .page-id-2753 hr,
html body .page-id-2792 hr,
html body .page-id-25 hr,
html body .page-id-42 hr,
html body .page-id-47 hr,
html body .page-id-50 hr,
html body .page-id-66 hr.bts-divider:first-of-type,
html body .page-id-70 hr.bts-divider:first-of-type,
html body .page-id-75 hr.bts-divider:first-of-type {
    border: 0 !important;
    border-top: 0 !important;
    background-color: transparent !important;
    background-image: linear-gradient(90deg, transparent 15%, #0070C0 50%, transparent 85%) !important;
    height: 1px !important;
    opacity: 1 !important;
}/* Largeur de la ligne = 1296px comme The Proof (override) */
html body .page-id-15 hr,
html body .page-id-2749 hr,
html body .page-id-2753 hr,
html body .page-id-2792 hr,
html body .page-id-25 hr,
html body .page-id-42 hr,
html body .page-id-47 hr,
html body .page-id-50 hr,
html body .page-id-66 hr.bts-divider:first-of-type,
html body .page-id-70 hr.bts-divider:first-of-type,
html body .page-id-75 hr.bts-divider:first-of-type {
    width: 100% !important;
    max-width: 1296px !important;
}/* Masque le 2ème hr bts-divider sur pages Audiences (entre sections du milieu) */
html body .page-id-66 .bts-page > hr.bts-divider:nth-of-type(2),
html body .page-id-70 .bts-page > hr.bts-divider:nth-of-type(2),
html body .page-id-75 .bts-page > hr.bts-divider:nth-of-type(2) {
    display: none !important;
}/* Aligne ligne Insights sur 300px (référence About) */
html body hr.insights-divider {
    position: absolute !important;
    top: 300px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 !important;
    z-index: 1 !important;
}

@media (max-width: 720px) {
    html body hr.insights-divider {
        top: 220px !important;
        width: calc(100% - 32px) !important;
    }
}/* Ajoute respiration entre ligne et 1er bloc sur les pages standard (match About) *//* Insights */
html body .insights-page .insights-two-col--hero {
    margin-top: 120px !important;
}/* Compliance */
html body .compliance-page .compliance-section:not(.compliance-section--hero):first-of-type {
    margin-top: 120px !important;
}/* Blog AdTrust */
html body .blog-page .blog-hero + section {
    margin-top: 120px !important;
}/* Pages cartes About (Our Mission, LTV, Why Now) */
html body.page-id-2749 .compliance-section:not(.compliance-hero):first-of-type,
html body.page-id-2753 .compliance-section:not(.compliance-hero):first-of-type,
html body.page-id-2792 .compliance-section:not(.compliance-hero):first-of-type {
    margin-top: 120px !important;
}/* Pages Audiences (1er bts-section après hero) */
html body .bts-page .bts-section:first-of-type {
    margin-top: 120px !important;
}/* Start a PoC */
html body.bts-proof-of-concept-page .proof-hero + section,
html body.bts-proof-of-concept-page .proof-container--hero + * {
    margin-top: 120px !important;
}/* Pages légales */
html body.page-id-42 .compliance-section:not(.compliance-hero):first-of-type,
html body.page-id-47 .compliance-section:not(.compliance-hero):first-of-type,
html body.page-id-50 .compliance-section:not(.compliance-hero):first-of-type {
    margin-top: 120px !important;
}

@media (max-width: 720px) {
    html body .insights-page .insights-two-col--hero,
    html body .compliance-page .compliance-section:not(.compliance-section--hero):first-of-type,
    html body .blog-page .blog-hero + section,
    html body.page-id-2749 .compliance-section:not(.compliance-hero):first-of-type,
    html body.page-id-2753 .compliance-section:not(.compliance-hero):first-of-type,
    html body.page-id-2792 .compliance-section:not(.compliance-hero):first-of-type,
    html body .bts-page .bts-section:first-of-type,
    html body.bts-proof-of-concept-page .proof-hero + section,
    html body.page-id-42 .compliance-section:not(.compliance-hero):first-of-type,
    html body.page-id-47 .compliance-section:not(.compliance-hero):first-of-type,
    html body.page-id-50 .compliance-section:not(.compliance-hero):first-of-type {
        margin-top: 80px !important;
    }
}/* Décolle le bloc "International Studies..." de la ligne sur Insights */
html body .insights-page .insights-research {
    margin-top: 80px !important;
}/* Décolle le sous-titre "Across markets..." du H2 sur Insights */
html body .insights-page .insights-research__desc {
    margin-top: 20px !important;
}/* ==========================================================================
   LIGNE DE DÉMARCATION — Style Insights unifié sur toutes les pages
   ========================================================================== */

html body .page-id-15 hr,
html body .page-id-2749 hr,
html body .page-id-2753 hr,
html body .page-id-2792 hr,
html body .page-id-25 hr,
html body .page-id-42 hr,
html body .page-id-47 hr,
html body .page-id-50 hr,
html body .page-id-66 hr.bts-divider:first-of-type,
html body .page-id-70 hr.bts-divider:first-of-type,
html body .page-id-75 hr.bts-divider:first-of-type {
    border: 0 !important;
    border-top: 0 !important;
    background-color: transparent !important;
    background-image: linear-gradient(90deg, rgba(13, 11, 23, 0) 15%, #0070C0 50%, rgba(13, 11, 23, 0) 85%) !important;
    height: 1px !important;
    opacity: 0.85 !important;
    box-shadow: none !important;
}/* Et sur la définition de base de .bts-divider (pages Audiences) */
.bts-page .bts-divider {
    border: 0 !important;
    background-color: transparent !important;
    background-image: linear-gradient(90deg, rgba(13, 11, 23, 0) 15%, #0070C0 50%, rgba(13, 11, 23, 0) 85%) !important;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    height: 1px !important;
    opacity: 0.85 !important;
}/* Remonte visuellement la ligne sur les pages cartes About sans toucher au flux */
html body.page-id-2749 hr.compliance-divider,
html body.page-id-2753 hr.compliance-divider,
html body.page-id-2792 hr.compliance-divider {
    transform: translateY(-20px) !important;
}/* Supprime border-top de signature + ajuste padding sur pages Audiences */
html body .bts-page .bts-hero .bts-hero__main p.bts-hero__signature {
    border-top: 0 !important;
    padding-top: 32px !important;
}/* Aligne l'écart titre→sous-titre sur Start a PoC = About (20px) */
html body.bts-proof-of-concept-page .proof-hero .proof-hero__sub {
    margin-top: -16px !important;
}/* Remonte la ligne de démarcation sur Blog AdTrust pour aligner sur About (271px) */
html body .blog-page hr.blog-divider {
    transform: translateY(-50px) !important;
}/* HEADER + FOOTER NOIRS sur Blog AdTrust (bts-blog-page) *//* Liens du header */
html body.bts-blog-page .site-header a,
html body.bts-blog-page .site-header nav a,
html body.bts-blog-page .site-header .menu a {
    color: #0d0b17 !important;
}/* Bouton CTA "Start a PoC" */
html body.bts-blog-page .site-header .bts-header-cta,
html body.bts-blog-page .site-header a[href*="start-a-poc"] {
    color: #0d0b17 !important;
}/* Footer */
html body.bts-blog-page .site-footer,
html body.bts-blog-page .site-footer p,
html body.bts-blog-page .site-footer span,
html body.bts-blog-page .site-footer li,
html body.bts-blog-page .site-footer a {
    color: #0d0b17 !important;
}

html body.bts-blog-page .site-footer a:hover {
    color: #0070C0 !important;
    opacity: 1 !important;
}/* LOGO ADAPTÉ sur Blog AdTrust uniquement */
html body.bts-blog-page .site-logo img,
html body.bts-blog-page #navbar-logo img,
html body.bts-blog-page header .custom-logo {
    content: url('https://buytryshare.com/wp-content/uploads/2026/05/BuyTryShare-Logo-transparent.png') !important;
}/* SUR BLOG ADTRUST — Textes en noir + logo footer adapté *//* Sous-titre "Thought leadership on trust in advertising" */
html body.bts-blog-page .blog-hero p,
html body.bts-blog-page .blog-hero__sub,
html body.bts-blog-page .blog-hero__description {
    color: #0d0b17 !important;
}/* "Latest Articles" H2 et autres titres de section */
html body.bts-blog-page main h2,
html body.bts-blog-page main h3,
html body.bts-blog-page .latest-articles h2,
html body.bts-blog-page .latest-articles__title {
    color: #0d0b17 !important;
}/* Description sous "Latest Articles" (à enregistrer si visible) */
html body.bts-blog-page main h2 + p,
html body.bts-blog-page .latest-articles p {
    color: #0d0b17 !important;
}/* Logo footer — swap pour la version adaptée */
html body.bts-blog-page .site-footer .site-logo img,
html body.bts-blog-page footer .site-logo img,
html body.bts-blog-page footer img.custom-logo,
html body.bts-blog-page footer .logo img {
    content: url('https://buytryshare.com/wp-content/uploads/2026/05/BuyTryShare-Logo-transparent.png') !important;
}/* Logo footer — swap version adaptée sur Blog AdTrust */
html body.bts-blog-page .site-footer__brand img {
    content: url('https://buytryshare.com/wp-content/uploads/2026/05/BuyTryShare-Logo-transparent.png') !important;
}/* Header avec fond clair sur Blog AdTrust */
html body.bts-blog-page .site-header {
    background-color: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(8px) !important;
}/* CONTENU ARTICLES en noir sur Blog AdTrust *//* Titres des articles (cards) */
html body.bts-blog-page article h1,
html body.bts-blog-page article h2,
html body.bts-blog-page article h3,
html body.bts-blog-page article h4,
html body.bts-blog-page .post-card h2,
html body.bts-blog-page .post-card h3,
html body.bts-blog-page .blog-card__title,
html body.bts-blog-page .latest-article__title,
html body.bts-blog-page .blog-latest__article-title {
    color: #0d0b17 !important;
}/* Contenu / excerpts */
html body.bts-blog-page article p,
html body.bts-blog-page .post-card p,
html body.bts-blog-page .blog-card p,
html body.bts-blog-page .blog-card__excerpt,
html body.bts-blog-page .latest-article__excerpt,
html body.bts-blog-page .entry-content p,
html body.bts-blog-page .entry-content li,
html body.bts-blog-page .entry-summary p {
    color: #0d0b17 !important;
}/* Métadonnées (date, auteur, durée) */
html body.bts-blog-page .post-meta,
html body.bts-blog-page .entry-meta,
html body.bts-blog-page .post-meta *,
html body.bts-blog-page .entry-meta *,
html body.bts-blog-page time,
html body.bts-blog-page .blog-card__meta,
html body.bts-blog-page .blog-card__meta *,
html body.bts-blog-page .blog-card__date,
html body.bts-blog-page .blog-card__author,
html body.bts-blog-page .post-card .meta,
html body.bts-blog-page .post-card .meta * {
    color: rgba(13, 11, 23, 0.65) !important;
}/* Liens "Read More" / "Lire plus" — bleu accent pour démarquer */
html body.bts-blog-page article a.read-more,
html body.bts-blog-page .blog-card__cta,
html body.bts-blog-page .read-more-link,
html body.bts-blog-page [class*="read-more"] {
    color: #0070C0 !important;
}/* Phrase "By BuyTryShare®..." en noir - sélecteur spécificité maximale */
html body div.blog-newsletter__inner p.blog-newsletter__footer,
html body .blog-newsletter__panel p.blog-newsletter__footer,
html body div.blog-newsletter p.blog-newsletter__footer {
    color: #000 !important;
}/* Et pour le sup ® */
html body div.blog-newsletter__inner p.blog-newsletter__footer sup.bts-reg-mark,
html body .blog-newsletter__panel p.blog-newsletter__footer sup.bts-reg-mark,
html body div.blog-newsletter p.blog-newsletter__footer sup.bts-reg-mark {
    color: #000 !important;
}/* ==========================================================================
   BLOG ADTRUST — Couleur grise pour titres section, pagination et titres articles
   ========================================================================== *//* "Latest Articles" - titre de section */
html body .blog-page h2.blog-latest__title {
    color: #6B7280 !important;
}/* Pagination - chiffres de pages */
html body .blog-page .blog-pagination-wrap,
html body .blog-page .blog-pagination-wrap a,
html body .blog-page .blog-pagination-wrap span,
html body .blog-page .blog-pagination-wrap .page-numbers {
    color: #6B7280 !important;
}/* Pagination - état "current" un peu plus foncé pour distinction */
html body .blog-page .blog-pagination-wrap .page-numbers.current {
    color: #4B5563 !important;
    font-weight: 600 !important;
}/* Titres des articles (lien direct dans la carte, sans classe spécifique) */
html body .blog-page .blog-card a:not(.blog-card__media):not(.blog-card__cat) {
    color: #6B7280 !important;
}/* Hover des titres pour conserver l'interactivité */
html body .blog-page .blog-card a:not(.blog-card__media):not(.blog-card__cat):hover {
    color: #1F2937 !important;
    text-decoration: underline !important;
}/* Force texte des langues en blanc sur Blog AdTrust (fond clair) */
html body.blog .bts-lang-dropdown__panel .bts-lang-dropdown__item,
html body.blog .bts-lang-dropdown__panel .bts-lang-dropdown__item span,
html body.blog .bts-lang-dropdown__panel .bts-lang-dropdown__item * {
    color: #ffffff !important;
}/* Aligne le hero Compliance sur About (compensation 120px) */
html body.bts-compliance-page .compliance-hero {
    margin-top: -120px !important;
}/* Annule le margin-top:120px parasite sur le hero Compliance */
html body .compliance-page .compliance-hero,
html body .compliance-page .compliance-hero.compliance-section {
    margin-top: 0 !important;
}/* ==========================================================================
   HEADER MENU — Internationalisation via CSS (workaround)
   --------------------------------------------------------------------------
   "Insights" et "The Proof ROI Engine" restent en anglais (noms de marque).
   À remplacer par une vraie i18n PHP lors du refactor Flyte.
   ========================================================================== */

body.bts-lang-fr header nav a[href*="/platform/"],
body.bts-lang-fr header nav a[href*="/regulatory-compliance/"],
body.bts-lang-fr header nav a[href*="/blog-adtrust/"],
body.bts-lang-es header nav a[href*="/platform/"],
body.bts-lang-es header nav a[href*="/regulatory-compliance/"],
body.bts-lang-es header nav a[href*="/blog-adtrust/"],
body.bts-lang-de header nav a[href*="/platform/"],
body.bts-lang-de header nav a[href*="/regulatory-compliance/"],
body.bts-lang-de header nav a[href*="/blog-adtrust/"] {
    font-size: 0 !important;
}

body.bts-lang-fr header nav a[href*="/platform/"]::before,
body.bts-lang-fr header nav a[href*="/regulatory-compliance/"]::before,
body.bts-lang-fr header nav a[href*="/blog-adtrust/"]::before,
body.bts-lang-es header nav a[href*="/platform/"]::before,
body.bts-lang-es header nav a[href*="/regulatory-compliance/"]::before,
body.bts-lang-es header nav a[href*="/blog-adtrust/"]::before,
body.bts-lang-de header nav a[href*="/platform/"]::before,
body.bts-lang-de header nav a[href*="/regulatory-compliance/"]::before,
body.bts-lang-de header nav a[href*="/blog-adtrust/"]::before {
    font-size: 16px;
    font-weight: inherit;
}/* FRANÇAIS */
body.bts-lang-fr header nav a[href*="/platform/"]::before { content: "Plateforme"; }
body.bts-lang-fr header nav a[href*="/regulatory-compliance/"]::before { content: "Conformité"; }
body.bts-lang-fr header nav a[href*="/blog-adtrust/"]::before { content: "Blog AdTrust"; }/* ESPAÑOL */
body.bts-lang-es header nav a[href*="/platform/"]::before { content: "Plataforma"; }
body.bts-lang-es header nav a[href*="/regulatory-compliance/"]::before { content: "Conformidad"; }
body.bts-lang-es header nav a[href*="/blog-adtrust/"]::before { content: "Blog AdTrust"; }/* DEUTSCH */
body.bts-lang-de header nav a[href*="/platform/"]::before { content: "Plattform"; }
body.bts-lang-de header nav a[href*="/regulatory-compliance/"]::before { content: "Compliance"; }
body.bts-lang-de header nav a[href*="/blog-adtrust/"]::before { content: "Blog AdTrust"; }/* ==========================================================================
   POC FRAMEWORK — Page éducative B2B (/poc-framework/)
   --------------------------------------------------------------------------
   Version finale : hero hérité de Start a PoC sans modif, claim/image/
   pullquote/cards/exclusions/takeaways stylés en propre.
   ========================================================================== *//* ----- Claim signature (sous le hero) ----- */
.poc-framework-claim {
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: #5eb8ff;
    margin: 0;
    padding: 8px 0;
}/* ----- Image full-width ----- */
.poc-framework-image {
    margin: 0 auto;
    max-width: 1200px;
    padding: 0 24px;
}

.poc-framework-image__img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
}

.proof-container--wide {
    max-width: 1280px;
}/* ----- Pull-quote ----- */
.poc-framework-pullquote {
    text-align: center;
    margin: 48px auto;
    max-width: 800px;
    padding: 40px 32px;
    font-size: 28px;
    line-height: 1.4;
    font-weight: 700;
    color: #fff;
    quotes: none;
    border-top: 1px solid transparent;
    border-bottom: 1px solid transparent;
    border-image: linear-gradient(90deg, transparent 10%, #0c83df 50%, transparent 90%) 1;
}

.poc-framework-pullquote::before,
.poc-framework-pullquote::after {
    content: none;
}/* ----- Cards 2x2 (section 5) ----- */
.poc-framework-cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    margin: 32px 0;
}

.poc-framework-cards .proof-icon-card {
    padding: 28px 24px;
}

.poc-framework-cards .proof-icon-card__title {
    margin-bottom: 12px;
}/* ----- Exclusions (section 6) ----- */
.poc-framework-exclusions {
    margin: 32px auto;
    max-width: 720px;
}/* ----- Takeaways 2 colonnes (section 7) ----- */
.poc-framework-takeaways {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    margin: 32px auto;
    max-width: 960px;
}

.poc-framework-takeaways__col {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 24px;
    background: rgba(12, 131, 223, 0.06);
    border: 1px solid rgba(12, 131, 223, 0.18);
    border-radius: 12px;
}

.poc-framework-takeaways__col p {
    margin: 0;
    color: #e5e7eb;
    line-height: 1.6;
}/* ----- Body text fermeture ----- */
.proof-body-text--closing {
    text-align: center;
    margin-top: 24px;
    color: #cbd5e1;
}/* ----- Page wrapper ----- */
.poc-framework-page .proof-band {
    padding-top: 64px;
    padding-bottom: 64px;
}

.poc-framework-page .proof-band--image,
.poc-framework-page .proof-band--pullquote,
.poc-framework-page .proof-band--claim {
    padding-top: 24px;
    padding-bottom: 24px;
}/* ----- Mobile responsive ----- */
@media (max-width: 768px) {
    .poc-framework-claim {
        font-size: 12px;
        letter-spacing: 2px;
    }

    .poc-framework-pullquote {
        font-size: 22px;
        padding: 32px 20px;
        margin: 32px auto;
    }

    .poc-framework-cards {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .poc-framework-takeaways {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .poc-framework-image {
        padding: 0 16px;
    }

    .poc-framework-page .proof-band {
        padding-top: 48px;
        padding-bottom: 48px;
    }
}/* PoC Framework — Hero IDENTIQUE Start a PoC */
body.page-id-3357 section.proof-hero {
    padding-top: 105px !important;
    padding-bottom: 60px !important;
}

body.page-id-3357 .proof-container--hero {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
}

body.page-id-3357 .proof-hero__sub {
    max-width: 100% !important;
    width: auto !important;
}/* PoC Framework — Hero IDENTIQUE Start a PoC */
body.page-id-3357 section.proof-hero {
    padding-top: 105px !important;
    padding-bottom: 60px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.page-id-3357 .proof-container--hero {
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    box-sizing: border-box !important;
}

body.page-id-3357 .proof-hero__sub {
    max-width: 100% !important;
    width: auto !important;
    white-space: normal !important;
}
body.page-id-3357 section.proof-hero .proof-container--hero {
    max-width: 1296px !important;
    margin: 0 auto !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
}/* PoC Framework : aligner le hero sous le logo (max-width comme header) */
body.page-id-3357 section.proof-hero .proof-container--hero {
    max-width: 1216px !important;
    margin: 0 auto !important;
    padding-left: 0px !important;
    padding-right: 24px !important;
    box-sizing: border-box !important;
}/* QUICK FIX — Forcer petite taille pour SVG check/X PoC Framework */
body.page-id-3357 svg {
    max-width: 20px !important;
    max-height: 20px !important;
    width: 20px !important;
    height: 20px !important;
}/* PoC Framework — Icônes inline + espacement sections *//* Espacement entre H2 et le contenu */
body.page-id-3357 .proof-section-title,
body.page-id-3357 .proof-section-title--col {
    margin-bottom: 24px !important;
}

body.page-id-3357 .proof-body-text {
    margin-bottom: 24px !important;
}/* Conteneur des spans icônes : inline-flex */
body.page-id-3357 .proof-not-box__check,
body.page-id-3357 .proof-not-box__x {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 20px !important;
    height: 20px !important;
    flex: 0 0 20px !important;
    vertical-align: middle !important;
}/* Liste : items en flex pour icône à côté du texte */
body.page-id-3357 .proof-list li,
body.page-id-3357 .proof-list--not-box li,
body.page-id-3357 .proof-list--checks li {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
    margin-bottom: 12px !important;
    padding: 0 !important;
    list-style: none !important;
}

body.page-id-3357 .proof-list li span:not(.proof-not-box__check):not(.proof-not-box__x) {
    flex: 1 !important;
    line-height: 1.5 !important;
}/* Encart "NOT" : titre avec icône à côté */
body.page-id-3357 .proof-not-box {
    background: rgba(239, 68, 68, 0.04) !important;
    border: 1px solid rgba(239, 68, 68, 0.18) !important;
    border-radius: 12px !important;
    padding: 24px 28px !important;
    margin: 24px 0 !important;
}

body.page-id-3357 .proof-not-box__head {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin-bottom: 16px !important;
}

body.page-id-3357 .proof-not-box__title {
    margin: 0 !important;
    font-weight: 700 !important;
    color: #fff !important;
}/* ============================================================
   PoC FRAMEWORK CROSS-LINK — Lien discret sous hero Start a PoC
   ============================================================ */

.proof-hero__methodology-hint {
	margin-top: 36px;
	padding-top: 28px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	max-width: 720px;
	margin-left: auto;
	margin-right: auto;
}

.proof-hero__methodology-text {
	font-size: 16px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.72);
	text-align: center;
	margin: 0;
	font-weight: 400;
}

.proof-hero__methodology-link {
	display: inline-block;
	margin-left: 6px;
	color: #5eb8ff;
	text-decoration: none;
	font-weight: 600;
	border-bottom: 1px solid transparent;
	transition: color 0.2s ease, border-color 0.2s ease;
}

.proof-hero__methodology-link:hover,
.proof-hero__methodology-link:focus-visible {
	color: #8ecdff;
	border-bottom-color: #8ecdff;
}/* Responsive mobile : empile prefix + lien proprement */
@media (max-width: 640px) {
	.proof-hero__methodology-hint {
		margin-top: 28px;
		padding-top: 20px;
	}
	.proof-hero__methodology-text {
		font-size: 15px;
	}
	.proof-hero__methodology-link {
		display: block;
		margin-left: 0;
		margin-top: 6px;
	}
}/* ==========================================================================
   FIX ALIGNEMENT COMPLIANCE ↔ INSIGHTS — 25/05/2026
   --------------------------------------------------------------------------
   Objectif : titres et sous-titres de la page Compliance strictement alignés
   sur ceux de la page Insights (référence visuelle).
   
   Diagnostic : 2 anciens patches s'étaient empilés sur la page Compliance et
   créaient un décalage vertical absent sur Insights :
     - "Aligne le hero Compliance sur About (compensation 120px)" 
       → margin-top: -120px
     - "Annule le margin-top:120px parasite sur le hero Compliance"
       → margin-top: 0
   
   Ces 2 règles ne s'appliquaient PAS à Insights, ce qui créait l'asymétrie.
   
   Fix : on neutralise les 2 et on laisse uniquement la règle d'harmonisation
   générale (section 7 du Customizer) s'appliquer aux 2 pages.
   ========================================================================== *//* Neutralise les 2 anciens patches Compliance (qui décalaient le hero) */
html body.bts-compliance-page .compliance-hero,
html body.bts-compliance-page .compliance-page .compliance-hero,
html body.bts-compliance-page .compliance-page .compliance-hero.compliance-section {
    margin-top: 0 !important;
}/* Garantit que les 2 hero (Insights + Compliance) ont strictement le même
   padding, font-size, line-height et margin via la règle harmonisée existante.
   Ce bloc est défensif : si une règle parasite est ajoutée plus tard, elle 
   sera surchargée ici. *//* HERO container — padding strictement identique */
html body.bts-compliance-page .compliance-page .compliance-hero,
html body.bts-insights-page .insights-page .insights-hero.insights-section {
    padding-top: 105px !important;
    padding-bottom: var(--bts-page-hero-section-y) !important;
    margin-top: 0 !important;
}

@media (max-width: 720px) {
    html body.bts-compliance-page .compliance-page .compliance-hero,
    html body.bts-insights-page .insights-page .insights-hero.insights-section {
        padding-top: 88px !important;
    }
}/* TITRE H1 — taille et hauteur de ligne strictement identiques */
html body.bts-compliance-page .compliance-page .compliance-hero__headline,
html body.bts-insights-page .insights-page .insights-hero__title {
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    font-size: clamp(2rem, 4.6vw, 2.75rem) !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: #fff !important;
    text-shadow: 0 2px 10px rgba(1, 20, 46, 0.45) !important;
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
}/* SOUS-TITRE (eyebrow) — strictement identique
   ATTENTION : Compliance utilise .compliance-eyebrow--hero (double tiret)
   Insights utilise .insights-eyebrow-hero (simple tiret) */
html body.bts-compliance-page .compliance-page .compliance-hero p.compliance-eyebrow--hero,
html body.bts-insights-page .insights-page .insights-hero p.insights-eyebrow-hero {
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    font-size: 20px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    letter-spacing: 0.01em !important;
    text-transform: none !important;
    color: rgba(255, 255, 255, 0.92) !important;
    font-style: normal !important;
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
}/* RESPIRATION après le hero (1er bloc post-hero) — strictement identique
   Sur Insights = .insights-two-col--hero
   Sur Compliance = .compliance-section:not(.compliance-section--hero):first-of-type */
html body.bts-compliance-page .compliance-page .compliance-section:not(.compliance-section--hero):first-of-type,
html body.bts-insights-page .insights-page .insights-two-col--hero {
    margin-top: 120px !important;
}

@media (max-width: 720px) {
    html body.bts-compliance-page .compliance-page .compliance-section:not(.compliance-section--hero):first-of-type,
    html body.bts-insights-page .insights-page .insights-two-col--hero {
        margin-top: 80px !important;
    }
}/* FIX FINAL — Annule margin-top:120px parasite sur le hero Compliance uniquement */
html body.bts-compliance-page .compliance-hero,
html body.bts-compliance-page .compliance-hero.compliance-section {
    margin-top: 0 !important;
}/* ==========================================================================
   B2B FAQ + EXPLORE FURTHER — Premium enterprise styling
   --------------------------------------------------------------------------
   Date : 25/05/2026
   À coller en bas du CSS Customizer existant.

   Style territoire : Deloitte / Publicis Sapient / Accenture Song / Notion.
   Pas de SaaS-style flashy. Sobre, éditorial, premium spacing.
   ========================================================================== *//* ==========================================================================
   1. HERO B2B FAQ — aligné strictement sur Compliance / Insights
   ========================================================================== */

html body.bts-b2b-faq-page .b2b-faq-hero,
html body.bts-b2b-faq-page .compliance-section--hero {
    padding-top: 105px !important;
    padding-bottom: var(--bts-page-hero-section-y, 60px) !important;
    margin-top: 0 !important;
}

@media (max-width: 720px) {
    html body.bts-b2b-faq-page .b2b-faq-hero,
    html body.bts-b2b-faq-page .compliance-section--hero {
        padding-top: 88px !important;
    }
}

html body.bts-b2b-faq-page .compliance-hero__headline {
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    font-size: clamp(2rem, 4.6vw, 2.75rem) !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: #fff !important;
    text-shadow: 0 2px 10px rgba(1, 20, 46, 0.45) !important;
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
}

html body.bts-b2b-faq-page .compliance-eyebrow--hero {
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    font-size: 20px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    letter-spacing: 0.01em !important;
    text-transform: none !important;
    color: rgba(255, 255, 255, 0.92) !important;
    font-style: normal !important;
    margin: 16px 0 0 !important;
    padding: 0 !important;
    max-width: 72ch !important;
}/* Respiration entre hero et contenu */
html body.bts-b2b-faq-page .b2b-faq-content {
    margin-top: 120px !important;
}

@media (max-width: 720px) {
    html body.bts-b2b-faq-page .b2b-faq-content {
        margin-top: 80px !important;
    }
}/* ==========================================================================
   2. SECTIONS NUMÉROTÉES — 01, 02, 03, 04, 05
   ========================================================================== */

.b2b-faq-section {
    margin-bottom: 96px;
}

.b2b-faq-section:last-of-type {
    margin-bottom: 0;
}

.b2b-faq-section__header {
    margin-bottom: 32px;
    max-width: 720px;
}

.b2b-faq-section__num {
    margin: 0 0 12px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.24em;
    color: #5eb8ff;
    line-height: 1;
}

.b2b-faq-section__title {
    margin: 0 0 12px;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif;
    font-size: clamp(1.4rem, 2.2vw, 1.75rem);
    line-height: 1.25;
    font-weight: 700;
    color: #f8fafc;
    letter-spacing: -0.01em;
}

.b2b-faq-section__intro {
    margin: 0;
    font-size: 16px;
    line-height: 1.6;
    font-weight: 300;
    color: rgba(236, 243, 249, 0.72);
    max-width: 68ch;
}/* ==========================================================================
   3. ACCORDÉON FAQ — Items premium
   ========================================================================== */

.b2b-faq-section__list {
    display: flex;
    flex-direction: column;
    border-top: 1px solid rgba(94, 184, 255, 0.18);
}

.b2b-faq-item {
    border-bottom: 1px solid rgba(94, 184, 255, 0.18);
    transition: border-color 220ms ease;
}

.b2b-faq-item[open] {
    border-bottom-color: rgba(94, 184, 255, 0.42);
}/* Désactive le marker natif (triangle/arrow) */
.b2b-faq-item__summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    padding: 24px 0;
    transition: color 180ms ease;
    -webkit-tap-highlight-color: transparent;
}

.b2b-faq-item__summary::-webkit-details-marker {
    display: none;
}

.b2b-faq-item__summary:hover {
    color: #5eb8ff;
}

.b2b-faq-item__summary:focus-visible {
    outline: 2px solid #5eb8ff;
    outline-offset: 4px;
    border-radius: 2px;
}

.b2b-faq-item__question {
    flex: 1;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif;
    font-size: 17px;
    line-height: 1.45;
    font-weight: 600;
    color: #f8fafc;
    transition: color 180ms ease;
}

.b2b-faq-item__summary:hover .b2b-faq-item__question {
    color: #5eb8ff;
}

.b2b-faq-item__icon {
    flex: 0 0 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    margin-top: -2px;
    border-radius: 50%;
    background: rgba(94, 184, 255, 0.08);
    color: #5eb8ff;
    transition: transform 280ms ease, background 220ms ease;
}

.b2b-faq-item[open] .b2b-faq-item__icon {
    transform: rotate(180deg);
    background: rgba(94, 184, 255, 0.18);
}

.b2b-faq-item__answer {
    padding: 0 0 28px;
    max-width: 76ch;
    animation: b2b-faq-fade-in 280ms ease;
}

.b2b-faq-item__answer p {
    margin: 0;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif;
    font-size: 15.5px;
    line-height: 1.7;
    font-weight: 300;
    color: rgba(236, 243, 249, 0.82);
}

.b2b-faq-item__answer p + p {
    margin-top: 14px;
}

@keyframes b2b-faq-fade-in {
    from { opacity: 0; transform: translateY(-4px); }
    to   { opacity: 1; transform: translateY(0); }
}/* ==========================================================================
   4. LIEN RETOUR VERS START A POC
   ========================================================================== */

.b2b-faq-back {
    padding: 48px 0 24px;
}

.b2b-faq-back__inner {
    display: flex;
    justify-content: center;
}

.b2b-faq-back__link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 28px;
    border: 1px solid rgba(94, 184, 255, 0.32);
    border-radius: 999px;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: #5eb8ff;
    text-decoration: none;
    transition: border-color 220ms ease, color 220ms ease, background 220ms ease;
}

.b2b-faq-back__link:hover,
.b2b-faq-back__link:focus-visible {
    border-color: rgba(94, 184, 255, 0.7);
    background: rgba(94, 184, 255, 0.06);
    color: #8ecdff;
    text-decoration: none;
}

.b2b-faq-back__arrow {
    display: inline-block;
    font-size: 18px;
    line-height: 1;
    transition: transform 220ms ease;
}

.b2b-faq-back__link:hover .b2b-faq-back__arrow {
    transform: translateX(-4px);
}/* ==========================================================================
   5. RESPONSIVE — Mobile/Tablet adjustments
   ========================================================================== */

@media (max-width: 720px) {
    .b2b-faq-section {
        margin-bottom: 64px;
    }

    .b2b-faq-section__header {
        margin-bottom: 24px;
    }

    .b2b-faq-section__num {
        font-size: 11px;
        letter-spacing: 0.2em;
    }

    .b2b-faq-section__title {
        font-size: 1.35rem;
    }

    .b2b-faq-section__intro {
        font-size: 15px;
    }

    .b2b-faq-item__summary {
        padding: 20px 0;
        gap: 16px;
    }

    .b2b-faq-item__question {
        font-size: 15.5px;
    }

    .b2b-faq-item__icon {
        flex: 0 0 28px;
        width: 28px;
        height: 28px;
    }

    .b2b-faq-item__answer p {
        font-size: 15px;
    }
}/* ==========================================================================
   6. EXPLORE FURTHER — 2 cartes premium sur Start a PoC
   --------------------------------------------------------------------------
   Style territoire : Deloitte / Accenture Song / Notion Enterprise.
   Pas de SaaS pricing cards. Sobre, éditorial.
   ========================================================================== */

.proof-band--explore {
    padding-top: clamp(48px, 6vw, 80px);
    padding-bottom: clamp(48px, 6vw, 80px);
}

.proof-explore__label {
    margin: 0 0 16px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.24em;
    color: #5eb8ff;
    line-height: 1;
    text-align: center;
}

.proof-section-title--explore {
    text-align: center !important;
    margin: 0 auto 16px !important;
    max-width: 720px;
}

.proof-explore__intro {
    margin: 0 auto 56px;
    max-width: 640px;
    font-size: 16px;
    line-height: 1.6;
    font-weight: 300;
    color: rgba(236, 243, 249, 0.72);
    text-align: center;
}

.proof-explore__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    max-width: 1040px;
    margin: 0 auto;
}

@media (max-width: 820px) {
    .proof-explore__grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

.proof-explore-card {
    display: flex;
    flex-direction: column;
    padding: 36px 36px 32px;
    background: rgba(8, 30, 58, 0.42);
    border: 1px solid rgba(94, 184, 255, 0.18);
    border-radius: 10px;
    text-decoration: none;
    color: inherit;
    transition:
        border-color 280ms ease,
        background 280ms ease,
        transform 280ms ease,
        box-shadow 280ms ease;
    position: relative;
    overflow: hidden;
}

.proof-explore-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(94, 184, 255, 0.3) 50%,
        transparent 100%
    );
    opacity: 0;
    transition: opacity 280ms ease;
}

.proof-explore-card:hover,
.proof-explore-card:focus-visible {
    border-color: rgba(94, 184, 255, 0.55);
    background: rgba(12, 131, 223, 0.08);
    transform: translateY(-2px);
    box-shadow:
        0 10px 30px rgba(0, 0, 0, 0.25),
        0 0 24px rgba(12, 127, 218, 0.12);
    text-decoration: none;
}

.proof-explore-card:hover::before,
.proof-explore-card:focus-visible::before {
    opacity: 1;
}

.proof-explore-card:focus-visible {
    outline: 2px solid #5eb8ff;
    outline-offset: 3px;
}

.proof-explore-card__eyebrow {
    margin: 0 0 14px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.22em;
    color: #5eb8ff;
    line-height: 1;
}

.proof-explore-card__title {
    margin: 0 0 14px;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif;
    font-size: clamp(1.3rem, 1.8vw, 1.55rem);
    line-height: 1.25;
    font-weight: 700;
    color: #f8fafc;
    letter-spacing: -0.01em;
}

.proof-explore-card__desc {
    margin: 0 0 32px;
    font-size: 15px;
    line-height: 1.6;
    font-weight: 300;
    color: rgba(236, 243, 249, 0.72);
    flex: 1;
}

.proof-explore-card__cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.01em;
    color: #5eb8ff;
    transition: color 220ms ease;
    align-self: flex-start;
}

.proof-explore-card:hover .proof-explore-card__cta {
    color: #8ecdff;
}

.proof-explore-card__arrow {
    display: inline-block;
    transition: transform 220ms ease;
    font-size: 16px;
    line-height: 1;
}

.proof-explore-card:hover .proof-explore-card__arrow {
    transform: translateX(4px);
}/* Responsive */
@media (max-width: 720px) {
    .proof-explore-card {
        padding: 28px 24px 24px;
    }

    .proof-explore__intro {
        margin-bottom: 40px;
        font-size: 15px;
    }

    .proof-explore-card__desc {
        margin-bottom: 24px;
        font-size: 14.5px;
    }
}/* ==========================================================================
   FIX B2B FAQ — Container centré + Cadres de sections
   --------------------------------------------------------------------------
   Date : 25/05/2026
   À AJOUTER en bas du CSS Customizer (en complément du CSS déjà collé).
   ========================================================================== *//* ==========================================================================
   1. CENTRAGE CONTAINER — Alignement sous le logo
   --------------------------------------------------------------------------
   Le container du thème (.compliance-container) ne s'active correctement
   que sur .compliance-page. Sur b2b-faq-page, on force le centrage
   max-width 1200px + padding latéral.
   ========================================================================== */

html body.bts-b2b-faq-page .compliance-container,
html body.bts-b2b-faq-page .compliance-container--stack,
html body.bts-b2b-faq-page .compliance-container--hero {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    box-sizing: border-box !important;
}

@media (max-width: 720px) {
    html body.bts-b2b-faq-page .compliance-container,
    html body.bts-b2b-faq-page .compliance-container--stack,
    html body.bts-b2b-faq-page .compliance-container--hero {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}/* ==========================================================================
   2. SECTIONS — Cadres premium pour distinguer les 5 thèmes
   --------------------------------------------------------------------------
   Style : carte sombre subtile avec bordure bleue très légère.
   Pas de fond agressif, on garde la sobriété enterprise.
   ========================================================================== */

.b2b-faq-section {
    position: relative;
    padding: 40px 36px 32px;
    background: rgba(8, 30, 58, 0.32);
    border: 1px solid rgba(94, 184, 255, 0.16);
    border-radius: 12px;
    margin-bottom: 32px !important;
    transition: border-color 280ms ease, background 280ms ease;
}

.b2b-faq-section:hover {
    border-color: rgba(94, 184, 255, 0.28);
    background: rgba(8, 30, 58, 0.42);
}

.b2b-faq-section:last-of-type {
    margin-bottom: 0 !important;
}/* ==========================================================================
   3. NUMÉROTATION — Badge plus visible et bien positionné
   ========================================================================== */

.b2b-faq-section__num {
    display: inline-block;
    padding: 6px 12px;
    border: 1px solid rgba(94, 184, 255, 0.42);
    border-radius: 999px;
    background: rgba(94, 184, 255, 0.06);
    font-size: 11px !important;
    font-weight: 700;
    letter-spacing: 0.18em;
    color: #5eb8ff;
    margin-bottom: 16px !important;
}/* ==========================================================================
   4. LISTE DES QUESTIONS — Bordure top adoucie + retrait padding
   --------------------------------------------------------------------------
   Comme les questions sont maintenant DANS une carte avec son propre fond,
   la border-top de .b2b-faq-section__list devient redondante.
   ========================================================================== */

.b2b-faq-section__list {
    border-top: 1px solid rgba(94, 184, 255, 0.12);
    margin-top: 24px;
}

.b2b-faq-item {
    border-bottom: 1px solid rgba(94, 184, 255, 0.12);
}

.b2b-faq-item:last-of-type {
    border-bottom: none;
}/* ==========================================================================
   5. RESPONSIVE — Mobile/Tablet
   ========================================================================== */

@media (max-width: 720px) {
    .b2b-faq-section {
        padding: 28px 20px 24px;
        margin-bottom: 24px !important;
    }

    .b2b-faq-section__num {
        font-size: 10px !important;
        padding: 5px 10px;
        letter-spacing: 0.16em;
    }
}/* ==========================================================================
   6. RESPIRATION ENTRE LES 5 SECTIONS — Margin top global
   ========================================================================== */

html body.bts-b2b-faq-page .b2b-faq-content .compliance-container {
    padding-top: 8px !important;
    padding-bottom: 80px !important;
}/* ==========================================================================
   FIX ALIGNEMENT B2B FAQ — Le titre était décalé de 24px par rapport
   à Start a PoC. On retire le padding interne du container pour aligner
   sous le logo, au pixel près.
   ========================================================================== */

html body.bts-b2b-faq-page .b2b-faq-hero .compliance-container,
html body.bts-b2b-faq-page .b2b-faq-hero .compliance-container--hero {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

@media (max-width: 720px) {
    html body.bts-b2b-faq-page .b2b-faq-hero .compliance-container,
    html body.bts-b2b-faq-page .b2b-faq-hero .compliance-container--hero {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}/* ==========================================================================
   FIX SOUS-TITRE PoC FRAMEWORK — Alignement sur la taille standard
   --------------------------------------------------------------------------
   Le sous-titre PoC Framework était à 24px, les autres pages sont à 20px.
   On l'aligne sur la référence Start a PoC.
   ========================================================================== */

body.page-id-3357 .proof-hero__sub,
body.page-id-3357 section.proof-hero p.proof-hero__sub {
    font-size: 20px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    letter-spacing: 0.01em !important;
    color: rgba(255, 255, 255, 0.92) !important;
    font-style: normal !important;
}/* ==========================================================================
   FIX SOUS-TITRES PAGES AUDIENCES — Alignement sur la référence 20px/30px
   --------------------------------------------------------------------------
   Les pages Advertisers (page-id-66), Agencies (page-id-70) et Ad Sales 
   Houses (page-id-75) avaient leur sous-titre à 18px / 27px. On les aligne
   sur Insights / Start a PoC / Compliance (20px / 30px) pour une cohérence
   visuelle stricte du site.
   
   On NE TOUCHE PAS la signature (.bts-hero__signature) qui garde son
   traitement actuel (en bleu, majuscules, centrée).
   ========================================================================== */

html body.page-id-66 .bts-hero__sub,
html body.page-id-70 .bts-hero__sub,
html body.page-id-75 .bts-hero__sub,
html body.page-id-66 .bts-page .bts-hero__sub,
html body.page-id-70 .bts-page .bts-hero__sub,
html body.page-id-75 .bts-page .bts-hero__sub {
    font-size: 20px !important;
    line-height: 30px !important;
    font-weight: 400 !important;
    letter-spacing: 0.01em !important;
    color: rgba(255, 255, 255, 0.92) !important;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
}

@media (max-width: 768px) {
    html body.page-id-66 .bts-hero__sub,
    html body.page-id-70 .bts-hero__sub,
    html body.page-id-75 .bts-hero__sub,
    html body.page-id-66 .bts-page .bts-hero__sub,
    html body.page-id-70 .bts-page .bts-hero__sub,
    html body.page-id-75 .bts-page .bts-hero__sub {
        font-size: 17px !important;
        line-height: 25.5px !important;
    }
}/* ==========================================================================
   FIX GAP H1↔SOUS-TITRE PAGES AUDIENCES — Alignement sur Insights/Start a PoC
   --------------------------------------------------------------------------
   Le H1 a un margin-bottom de 16px qui collapse avec le margin-top du sub.
   Pour obtenir un gap réel de 24px, on met margin-top: 24px sur le sub.
   La règle CSS de collapse retient le max des deux : max(16, 24) = 24px.
   ========================================================================== */

html body.page-id-66 .bts-hero__sub,
html body.page-id-70 .bts-hero__sub,
html body.page-id-75 .bts-hero__sub,
html body.page-id-66 .bts-page .bts-hero__sub,
html body.page-id-70 .bts-page .bts-hero__sub,
html body.page-id-75 .bts-page .bts-hero__sub {
    margin-top: 20px !important;
}/* ==========================================================================
   FIX HERO PAGES CARTES ABOUT — Alignement sur la référence (top 105)
   --------------------------------------------------------------------------
   - Long Term Vision (page-id-2753) démarrait à top 97 → +8px
   - Why Now (page-id-2792) démarrait à top 101 → +4px
   - Our Mission (page-id-2749) déjà alignée → on ne touche pas
   ========================================================================== */

html body.page-id-2753 .compliance-hero.compliance-section {
    margin-top: 8px !important;
}

html body.page-id-2792 .compliance-hero.compliance-section {
    margin-top: 4px !important;
}/* ==========================================================================
   PATCH 1 — Fix faute syntaxe cartes About (25/05/2026)
   --------------------------------------------------------------------------
   Le V3 contenait "margin: 24 !important;" (sans unité = invalide en CSS).
   On corrige avec margin-top: 24px qui crée le gap H1↔sub de 24px attendu
   via margin collapse (max entre margin-bottom H1 et margin-top sub).
   ========================================================================== */

html body.page-id-2749 .compliance-hero p.compliance-eyebrow--hero,
html body.page-id-2753 .compliance-hero p.compliance-eyebrow--hero,
html body.page-id-2792 .compliance-hero p.compliance-eyebrow--hero {
    margin-top: 24px !important;
}/* ==========================================================================
   PATCH 1B — Annule les margin-top obsolètes sur LTV et Why Now (25/05/2026)
   --------------------------------------------------------------------------
   Les corrections +8px (LTV) et +4px (Why Now) étaient nécessaires AVANT le
   PATCH 1 pour matcher top 105. Mais le PATCH 1 (margin-top 24px sur sub)
   a re-stabilisé naturellement le hero → ces +8px/+4px deviennent un
   décalage de TROP (LTV à 113, Why Now à 109).
   On les annule.
   ========================================================================== 
*/
html body.page-id-2753 .compliance-hero.compliance-section,
html body.page-id-2792 .compliance-hero.compliance-section {
    margin-top: 0 !important;
}/* ==========================================================================
   PATCH 2 — H1 PoC Framework aligné sur la référence 44px (25/05/2026)
   --------------------------------------------------------------------------
   Le H1 PoC Framework (page-id-3357) était à 40px / line-height 50px.
   Référence BTS : 44px / line-height 52.8px (= 1.2).
   On harmonise pour cohérence visuelle entre toutes les pages.
   ========================================================================== */

html body.page-id-3357 h1.proof-hero__title,
html body.page-id-3357 section.proof-hero h1.proof-hero__title {
    font-size: 44px !important;
    line-height: 52.8px !important;
    font-weight: 700 !important;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

@media (max-width: 720px) {
    html body.page-id-3357 h1.proof-hero__title,
    html body.page-id-3357 section.proof-hero h1.proof-hero__title {
        font-size: 32px !important;
        line-height: 38.4px !important;
    }
}/* ==========================================================================
   PATCH 3 — Fix gap H1↔sub sur B2B FAQ (25/05/2026)
   --------------------------------------------------------------------------
   Le sub B2B FAQ était à margin-top: 16px → gap effectif 16px.
   Référence : gap 24px (Insights, Start a PoC, Compliance, Our Mission, ...).
   On force margin-top: 24px sur le sub.
/* ==========================================================================
   PATCH 3 v2 — Fix gap H1↔sub sur B2B FAQ (spécificité renforcée)
   --------------------------------------------------------------------------
   La règle "margin: 16px 0 0" plus haut dans le fichier était trop forte.
   On augmente la spécificité avec page-id-3433 (B2B FAQ).
   ========================================================================== */

html body.page-id-3433.bts-b2b-faq-page .b2b-faq-hero p.compliance-eyebrow--hero,
html body.page-id-3433.bts-b2b-faq-page .b2b-faq-hero .compliance-eyebrow--hero,
html body.page-id-3433 .b2b-faq-hero .compliance-eyebrow--hero {
    margin-top: 24px !important;
    margin-bottom: 0 !important;
}/* ==========================================================================
   PATCH 4 — Élargir le sous-titre B2B FAQ pour exploiter toute la largeur
   --------------------------------------------------------------------------
   Le sub B2B FAQ avait max-width: 72ch qui forçait un retour à la ligne
   prématuré. On retire la limite pour utiliser toute la largeur du container.
   ========================================================================== */

html body.page-id-3433.bts-b2b-faq-page .b2b-faq-hero p.compliance-eyebrow--hero,
html body.page-id-3433.bts-b2b-faq-page .b2b-faq-hero .compliance-eyebrow--hero,
html body.page-id-3433 .b2b-faq-hero .compliance-eyebrow--hero {
    max-width: 100% !important;
}

@media (min-width: 1100px) {
    html body.page-id-3433 .b2b-faq-hero .compliance-eyebrow--hero {
        white-space: nowrap !important;
    }
}/* ==========================================================================
   PATCH 6 — Harmonisation H2 de section (25/05/2026)
   --------------------------------------------------------------------------
   Référence officielle : .bts-section__title sur pages Audiences = 32px.
   On aligne les H2 de section de Platform, Compliance, Insights, About
   qui étaient surdimensionnés (34-44px).
   
   Mobile (≤720px) : 22px (cohérent avec clamp min des thèmes responsive).
   
   Ne touche PAS :
   - Les H1 des hero (44px, validés)
   - Les H2 de sous-section déjà petits (pf-usecases__title Advertisers, etc.)
   - Les H2 du footer (Contact:, Links:)
   ========================================================================== *//* PLATFORM *//* COMPLIANCE *//* INSIGHTS *//* ABOUT */
html body.bts-about-page h2.about-closing__headline {
    font-size: 32px !important;
    line-height: 40px !important;
    font-weight: 700 !important;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    letter-spacing: -0.01em !important;
}

@media (max-width: 720px) {
    html body.bts-platform-page h2.pf-manifesto__title,
    html body.bts-platform-page h2.pf-what__title,
    html body.bts-platform-page h2.pf-audience__title,
    html body.bts-platform-page h2.pf-usecases__title,
    html body.bts-platform-page h2.pf-page-cta__title,
    html body.bts-compliance-page h2.compliance-title,
    html body.bts-compliance-page h2.compliance-title--arpp,
    html body.bts-compliance-page h2.compliance-title--framework-intro,
    html body.bts-insights-page h2.insights-title,
    html body.bts-insights-page h2.insights-research__title,
    html body.bts-insights-page h2.insights-title-last-section,
    html body.bts-about-page h2.about-closing__headline {
        font-size: 22px !important;
        line-height: 27.5px !important;
    }
}/* ==========================================================================
   PATCH 6B — Couverture des cas manqués par le Patch 6 (25/05/2026)
   --------------------------------------------------------------------------
   Ajout des H3 .compliance-panel__title (Compliance) et .insights-title--md
   (Insights) qui sont dimensionnés comme des H2 (40px).
   
   Et harmonisation du H1 Platform : 56px (incohérent) → 44px (référence).
   ========================================================================== *//* H3 COMPLIANCE — toutes variantes de .compliance-panel__title *//* H3 INSIGHTS — .insights-title--md (et autres variantes potentielles) */
html body.bts-insights-page h3.insights-title,
html body.bts-insights-page h3[class*="insights-title"] {
    font-size: 32px !important;
    line-height: 40px !important;
    font-weight: 700 !important;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    letter-spacing: -0.01em !important;
}

@media (max-width: 720px) {
    html body.bts-compliance-page h3.compliance-panel__title,
    html body.bts-compliance-page h3[class*="compliance-panel__title"],
    html body.bts-insights-page h3.insights-title,
    html body.bts-insights-page h3[class*="insights-title"] {
        font-size: 22px !important;
        line-height: 27.5px !important;
    }
}/* H1 PLATFORM — alignement référence 44px */
html body.bts-platform-page h1.pf-hero__title {
    font-size: 44px !important;
    line-height: 52.8px !important;
    font-weight: 700 !important;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

@media (max-width: 720px) {
    html body.bts-platform-page h1.pf-hero__title {
        font-size: 32px !important;
        line-height: 38.4px !important;
    }
}/* ==========================================================================
   PATCH 7 — Coupure H1 Platform (26/05/2026)
   --------------------------------------------------------------------------
   Le H1 Platform "Advertising Powered by Certified Consumer Proof" est
   actuellement coupé après "Certified" → rendu visuel déséquilibré.
   On force une coupure plus haute (après "Powered by") via max-width.
   
   Fonctionne sur les 4 langues car les traductions ont des longueurs
   similaires ("Publicité alimentée par...", "Werbung gestützt auf...").
   ========================================================================== */

html body.bts-platform-page h1.pf-hero__title {
    max-width: 700px !important;
}

@media (max-width: 720px) {
    html body.bts-platform-page h1.pf-hero__title {
        max-width: 100% !important;
    }
}/* ==========================================================================
   PATCH 7B — Sous-titre Platform : élargir + harmoniser typo (26/05/2026)
   --------------------------------------------------------------------------
   Le .pf-hero__lead avait :
   - font-size 19px (référence BTS : 20px)
   - max-width 600px → coupait prématurément
   
   On harmonise typo (20px / line-height 30px) et on élargit (max-width 760px).
   760px laisse le texte sur 2 lignes équilibrées en EN, suffisant pour FR/ES/DE
   qui ont des longueurs comparables.
   ========================================================================== */

html body.bts-platform-page p.pf-hero__lead,
html body.bts-platform-page .pf-hero__lead {
    font-size: 20px !important;
    line-height: 30px !important;
    font-weight: 400 !important;
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
    letter-spacing: 0.01em !important;
    color: rgba(255, 255, 255, 0.92) !important;
    max-width: 760px !important;
}

@media (max-width: 720px) {
    html body.bts-platform-page p.pf-hero__lead,
    html body.bts-platform-page .pf-hero__lead {
        font-size: 17px !important;
        line-height: 25.5px !important;
        max-width: 100% !important;
    }
}/* ==========================================================================
   PATCH X — Font unifiée Open Sans toutes langues (26/05/2026)
   --------------------------------------------------------------------------
   Flyte a injecté dans /assets/styles/style.css des règles qui changent
   la police selon la langue (Source Sans 3 en FR, Nunito Sans en ES, IBM
   Plex Sans en DE). Cela casse la cohérence de marque BTS = Open Sans.
   On force Open Sans sur le body dans les 4 langues.
   ========================================================================== */
html body.bts-lang-fr,
html body.bts-lang-es,
html body.bts-lang-de {
    font-family: "Open Sans", "Helvetica Neue", Arial, sans-serif !important;
}/* Platform V2 - H2 sur 2 lignes (respecter les <br>) */
html body.bts-platform-page .pf-manifesto__title,
html body.bts-platform-page .pf-what__title {
    max-width: 100% !important;
    width: 100% !important;
}

html body.bts-platform-page .pf-manifesto__header,
html body.bts-platform-page .pf-what__header {
    max-width: 100% !important;
}/* ==========================================================================
   Platform V2 — Icônes plus lisibles (26/05/2026)
   --------------------------------------------------------------------------
   Les icônes (IMG fichier) bleues sur fond bleu foncé étaient peu visibles.
   On ajoute un fond rond bleu clair derrière + agrandit légèrement,
   pattern aligné sur les pages Audiences (.bts-hero__icon-wrap).
   ========================================================================== *//* Section CRISE - 3 cartes (Portée / Preuve / ROI mesurable) */
html body.bts-platform-page .pf-pillar__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 56px !important;
    height: 56px !important;
    border-radius: 50% !important;
    background: rgba(94, 184, 255, 0.12) !important;
    border: 1px solid rgba(94, 184, 255, 0.32) !important;
    box-shadow: 0 0 16px rgba(12, 127, 218, 0.2) !important;
    margin-bottom: 16px !important;
    padding: 0 !important;
}

html body.bts-platform-page .pf-pillar__icon img {
    width: 28px !important;
    height: 28px !important;
    object-fit: contain !important;
}/* Section WHAT - 4 cartes (Mécanismes / Couche / Cadre / Infrastructure) */
html body.bts-platform-page .pf-what__block-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    background: rgba(94, 184, 255, 0.12) !important;
    border: 1px solid rgba(94, 184, 255, 0.32) !important;
    box-shadow: 0 0 14px rgba(12, 127, 218, 0.18) !important;
    margin-bottom: 14px !important;
    padding: 0 !important;
}

html body.bts-platform-page .pf-what__block-icon img {
    width: 24px !important;
    height: 24px !important;
    object-fit: contain !important;
}/* Platform V2 - blanchir les icônes pour contraste max */
html body.bts-platform-page .pf-pillar__icon img,
html body.bts-platform-page .pf-what__block-icon img {
    filter: brightness(0) invert(1) !important;
    opacity: 0.95 !important;
}/* About cards - icônes lisibles (mêmes principes que Platform V2) */
html body .about-nav-card .about-nav-card__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    background: rgba(94, 184, 255, 0.12) !important;
    border: 1px solid rgba(94, 184, 255, 0.32) !important;
    box-shadow: 0 0 14px rgba(12, 127, 218, 0.18) !important;
    margin-bottom: 14px !important;
    padding: 0 !important;
}

html body .about-nav-card .about-nav-card__icon img {
    width: 24px !important;
    height: 24px !important;
    object-fit: contain !important;
    filter: brightness(0) invert(1) !important;
    opacity: 0.95 !important;
}/* ==========================================================================
   Proof ROI Engine — Icônes lisibles (26/05/2026)
   --------------------------------------------------------------------------
   Cercle bleu clair + icônes blanchies, pattern aligné Platform V2 / About.
   ========================================================================== *//* Section Model — 4 étapes (Exposition / Attention / Preuve / Impact) */
html body .roi-model__step-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 56px !important;
    height: 56px !important;
    border-radius: 50% !important;
    background: rgba(94, 184, 255, 0.12) !important;
    border: 1px solid rgba(94, 184, 255, 0.32) !important;
    box-shadow: 0 0 16px rgba(12, 127, 218, 0.2) !important;
    margin-bottom: 14px !important;
    padding: 0 !important;
}

html body .roi-model__step-icon img {
    width: 26px !important;
    height: 26px !important;
    object-fit: contain !important;
    filter: brightness(0) invert(1) !important;
    opacity: 0.95 !important;
}/* Section Missing — 3 éléments (Avis / Média premium / Activation) */
html body .roi-missing-el__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    background: rgba(94, 184, 255, 0.12) !important;
    border: 1px solid rgba(94, 184, 255, 0.32) !important;
    box-shadow: 0 0 14px rgba(12, 127, 218, 0.18) !important;
    margin-bottom: 12px !important;
    padding: 0 !important;
}

html body .roi-missing-el__icon img {
    width: 22px !important;
    height: 22px !important;
    object-fit: contain !important;
    filter: brightness(0) invert(1) !important;
    opacity: 0.95 !important;
}/* Section Cred — 4 piliers (cadre de modélisation) */
html body .roi-cred-pillar {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
}

html body .roi-cred-pillar > img,
html body .roi-cred-pillar img:first-of-type {
    flex: 0 0 40px !important;
    width: 40px !important;
    height: 40px !important;
    padding: 8px !important;
    border-radius: 50% !important;
    background: rgba(94, 184, 255, 0.12) !important;
    border: 1px solid rgba(94, 184, 255, 0.32) !important;
    box-shadow: 0 0 12px rgba(12, 127, 218, 0.15) !important;
    box-sizing: border-box !important;
    object-fit: contain !important;
    filter: brightness(0) invert(1) !important;
    opacity: 0.95 !important;
}/* ==========================================================================
   Audiences (Advertisers / Agencies / Ad Sales Houses) — Hero alignement
   --------------------------------------------------------------------------
   Pattern unifié sur les 3 audiences. padding-top 105px desktop, 88px mobile.
   ========================================================================== */
html body.page-template-page-audience-advertisers .bts-page .bts-hero,
html body.page-template-page-audience-agencies .bts-page .bts-hero,
html body.page-template-page-audience-publishers .bts-page .bts-hero {
    padding-top: 105px !important;
    padding-bottom: 36px !important;
    margin-top: 0 !important;
}

@media (max-width: 768px) {
    html body.page-template-page-audience-advertisers .bts-page .bts-hero,
    html body.page-template-page-audience-agencies .bts-page .bts-hero,
    html body.page-template-page-audience-publishers .bts-page .bts-hero {
        padding-top: 88px !important;
        padding-bottom: 32px !important;
    }
}

html body.page-template-page-audience-advertisers .bts-page--advertisers,
html body.page-template-page-audience-agencies .bts-page--agencies,
html body.page-template-page-audience-publishers .bts-page--publishers {
    margin-top: 0 !important;
}/* ==========================================================================
   Pages légales (Legal Notice / Privacy Policy / Terms of Use) — Air après HR
   --------------------------------------------------------------------------
   Augmente l'espace entre la ligne de séparation et le premier bloc texte
   ("Responsable du traitement..." etc.) sur les 3 pages légales × 4 langues.
   Cible le wrapper .compliance-container.legal-content qui suit le HR.
   ========================================================================== */
html body.page-id-42 .compliance-container.legal-content,
html body.page-id-47 .compliance-container.legal-content,
html body.page-id-50 .compliance-container.legal-content {
    padding-top: 64px !important;
}

@media (max-width: 768px) {
    html body.page-id-42 .compliance-container.legal-content,
    html body.page-id-47 .compliance-container.legal-content,
    html body.page-id-50 .compliance-container.legal-content {
        padding-top: 40px !important;
    }
}/* ==========================================================================
   Platform Hero H1 — Élargir le max-width UNIQUEMENT en espagnol
   --------------------------------------------------------------------------
   L'espagnol prend plus de place que les autres langues. Le H1 à 700px max
   force 3 lignes. On passe à 920px uniquement quand body.bts-lang-es.
   EN/FR/DE restent intacts à 700px.
   ========================================================================== */
html body.bts-platform-page.bts-lang-es h1.pf-hero__title {
    max-width: 920px !important;
}

@media (max-width: 768px) {
    html body.bts-platform-page.bts-lang-es h1.pf-hero__title {
        max-width: 100% !important;
    }
}/* ==========================================================================
   Platform Hero Lead — Forcer 1 ligne dans les 4 langues (marge large)
   ========================================================================== */
html body.bts-platform-page p.pf-hero__lead {
    max-width: 1000px !important;
}

@media (max-width: 768px) {
    html body.bts-platform-page p.pf-hero__lead {
        max-width: 100% !important;
    }
}/* ==========================================================================
   Compliance & Regulatory — Retirer text-transform: capitalize (v2)
   --------------------------------------------------------------------------
   Bat la spécificité de Flyte (.compliance-page .compliance-title etc.)
   en ajoutant html body.bts-compliance-page comme préfixe.
   ========================================================================== */
html body.bts-compliance-page .compliance-page .compliance-title,
html body.bts-compliance-page .compliance-page .compliance-title--arpp,
html body.bts-compliance-page .compliance-page .compliance-title--framework-intro,
html body.bts-compliance-page .compliance-page .compliance-copy--scope .compliance-title {
    text-transform: none !important;
}/* ==========================================================================
   PATCH NUCLÉAIRE — Désactiver capitalize sur toutes les pages Compliance + Insights
   --------------------------------------------------------------------------
   Flyte a mis capitalize sur plein de classes différentes. Au lieu de jouer
   au chat et la souris, on désactive sur TOUS les éléments de ces pages.
   ========================================================================== */
html body.bts-compliance-page *,
html body.bts-insights-page * {
    text-transform: none !important;
}/* ==========================================================================
   FIX IMAGE HERO INSIGHTS — Taille stable dans les 4 langues (28/05/2026)
   --------------------------------------------------------------------------
   Problème : la colonne image se redimensionnait selon la longueur du texte
   (ES plus long que EN → image comprimée). Le layout 2 colonnes vient de
   Flyte sans largeur fixe. On force une répartition stable.
   ========================================================================== */

html body .insights-page .insights-two-col--hero {
    display: flex !important;
    gap: clamp(24px, 3vw, 48px) !important;
    align-items: center !important;
}

html body .insights-page .insights-two-col--hero .insights-copy {
    flex: 1 1 56% !important;
    min-width: 0 !important;
}

html body .insights-page .insights-two-col--hero .insights-figure {
    flex: 0 0 40% !important;
    max-width: 40% !important;
    margin: 0 !important;
}

html body .insights-page .insights-two-col--hero .insights-figure img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

@media (max-width: 900px) {
    html body .insights-page .insights-two-col--hero {
        flex-direction: column !important;
    }
    html body .insights-page .insights-two-col--hero .insights-copy,
    html body .insights-page .insights-two-col--hero .insights-figure {
        flex: 1 1 100% !important;
        max-width: 100% !important;
    }
}/* Mode sombre ad tech — réplique le système visuel du Proof ROI Engine */
body:not(.single-post):not(.blog):not(.category):not(.archive) {
    background-color: #071628;
    background-image:
        linear-gradient(90deg, rgba(7, 22, 40, 0) 0%, rgba(94, 184, 255, 0.10) 50%, rgba(7, 22, 40, 0) 100%);
    background-attachment: scroll;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    color: #f3f7fb;
    position: relative;
}/* Grille technique en filigrane — évoque la data, le mesh, l'infrastructure */
body:not(.single-post):not(.blog):not(.category):not(.archive)::before {
    content: "";
    position: fixed;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.015) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.015) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.9), transparent 82%);
    pointer-events: none;
    z-index: 0;
}/* ============== Beyond the PoC — section atmosphérique ad tech ============== */
.bts-beyond-poc {
    padding: 100px 5% 80px;
    background: transparent;
    color: #f3f7fb;
}
.bts-beyond-poc__container {
    max-width: 1200px;
    margin: 0 auto;
}
.bts-beyond-poc__eyebrow {
    color: #4da3ff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    margin: 0 0 14px;
}
.bts-beyond-poc__title {
    font-size: clamp(28px, 3.5vw, 44px);
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.1;
    margin: 0 0 24px;
    color: #fff;
}
.bts-beyond-poc__intro {
    font-size: clamp(15px, 1.15vw, 17px);
    font-weight: 300;
    line-height: 1.65;
    color: rgba(255,255,255,0.78);
    max-width: 880px;
    margin: 0 0 48px;
}
.bts-beyond-poc__grid {
    display: grid;
    gap: 22px;
    margin-bottom: 48px;
}
.bts-beyond-poc__grid--3 { grid-template-columns: repeat(3, 1fr); }
.bts-beyond-poc__grid--4 { grid-template-columns: repeat(4, 1fr); }
.bts-beyond-poc__card {
    background: rgba(20, 30, 50, 0.55);
    border: 1px solid rgba(108, 132, 171, 0.22);
    border-radius: 16px;
    padding: 24px;
    transition: border-color 0.25s ease, transform 0.25s ease;
}
.bts-beyond-poc__card:hover {
    border-color: rgba(102, 194, 255, 0.40);
    transform: translateY(-2px);
}
.bts-beyond-poc__card-title {
    font-size: 17px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 12px;
    line-height: 1.3;
    letter-spacing: -0.01em;
}
.bts-beyond-poc__card-body {
    font-size: 14px;
    font-weight: 300;
    color: rgba(255,255,255,0.72);
    line-height: 1.6;
    margin: 0;
}
.bts-beyond-poc__punchline {
    text-align: center;
    font-size: clamp(17px, 1.6vw, 22px);
    font-weight: 700;
    color: #fff;
    letter-spacing: -0.01em;
    line-height: 1.4;
    margin: 0;
    padding: 28px 24px;
    border-top: 1px solid rgba(108, 132, 171, 0.22);
    border-bottom: 1px solid rgba(108, 132, 171, 0.22);
}
@media (max-width: 1024px) {
    .bts-beyond-poc__grid--3,
    .bts-beyond-poc__grid--4 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
    .bts-beyond-poc { padding: 60px 5% 40px; }
    .bts-beyond-poc__grid--3,
    .bts-beyond-poc__grid--4 { grid-template-columns: 1fr; }
}/* === AdTrust — titres lisibles sur fond clair (scopé blog uniquement) === *//* Titre principal d'article — LE coupable identifié en console */
body.bts-blog-page h1.blog-single__title {
  color: #071628 !important;
  text-shadow: none !important;
}/* Titre de la home blog + sous-titres éditoriaux, par sécurité */
body.bts-blog-page .blog-header__title,
body.bts-blog-page .page-header h1 {
  color: #071628 !important;
  text-shadow: none !important;
}

body.bts-blog-page .blog-header__description,
body.bts-blog-page .blog-single__subtitle,
body.bts-blog-page .blog-header p {
  color: #33425a !important;
  text-shadow: none !important;
}/* === AdTrust — titres de chapitres (h4) dans le corps d'article === */
body.bts-blog-page .blog-single__body-wrap .blog-single__content.entry-content h4,
body.bts-blog-page .blog-single__content.entry-content h2,
body.bts-blog-page .blog-single__content.entry-content h3,
body.bts-blog-page .blog-single__content.entry-content h4 {
  color: #071628 !important;
  text-shadow: none !important;
}/* === AdTrust — renforcer le poids visuel des titres de chapitres === */
body.bts-blog-page .blog-single__content h4,
body.bts-blog-page .entry-content h4 {
  color: #071628 !important;
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  margin-top: 2rem !important;
}
body.bts-blog-page .blog-single__content h4 strong,
body.bts-blog-page .entry-content h4 strong {
  font-weight: 700 !important;
  color: inherit !important;
}/* PANSEMENT — force tout le contenu d'article en navy, enfants compris */
body.bts-blog-page .blog-single__content,
body.bts-blog-page .blog-single__content *,
body.bts-blog-page .entry-content,
body.bts-blog-page .entry-content * {
  color: #071628 !important;
}/* === AdTrust — neutralise le forçage blanc des <strong> du thème === */
body.bts-blog-single .blog-single__content strong,
body.bts-blog-page .blog-single__content strong,
body.bts-blog-page .entry-content strong {
  color: #071628 !important;
}/* Logo header agrandi à 70px */
.site-header #navbar-logo img {
  height: 70px !important;
  max-height: none !important;
  width: auto !important;
}/* Navigation article : Next à gauche, Previous à droite */
@media (min-width: 640px) {
  .blog-single__post-nav-inner {
    grid-template-columns: 1fr 1fr;
  }
  .blog-single__adj--next {
    order: 1;
    text-align: left;
  }
  .blog-single__adj--prev {
    order: 2;
    text-align: right;
  }
}
body:not(.bts-platform-page):not(.roi-page) h1[class*="-hero__"]:not(.compliance-hero__headline) {
  padding-top: 30px !important;
}
body:not(.bts-platform-page):not(.roi-page) .compliance-hero__intro {
  padding-top: 30px !important;
}
body:not(.bts-platform-page):not(.roi-page) .poc-container--hero {
  padding-top: 30px !important;
}
.insights-page .insights-container hr.insights-divider {
  position: static !important;
  margin-top: 60px !important;
}
html body hr.insights-divider {
  top: 330px !important;
}
.bts-blog-page .adtrust-hero__signature {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.bts-blog-page .adtrust-hero__brand {
  margin-bottom: -20px !important;
}
@media (max-width: 768px) {

  /* 1. Espace sous le logo+baseline pour qu'elle ne soit plus barrée */
  .home .site-header__brand {
    padding-bottom: 16px !important;
  }

  /* 2. Pousse le contenu du hero vers le bas (anti-chevauchement) */
  .home .hero-section.hero-layout-collapsed {
    padding-top: 40px !important;
  }

  /* 3. Masque / éloigne la ligne de séparation qui barre la baseline en haut */
  .home .hero-section .fading-border:first-of-type,
  .home .hero-section hr:first-of-type {
    margin-top: 24px !important;
  }

  /* 4. Centre les icônes des cartes (Advertiser/Agencies/etc.) */
  .home .hero-card,
  .home .hero-card__icon,
  .home [class*="hero"] .card,
  .home .home-card {
    text-align: center !important;
  }
  .home .hero-card__icon,
  .home .home-card__icon {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* 5. Logo footer aligné à gauche */
  .site-footer .site-logo,
  .site-footer__brand,
  .site-footer img {
    margin-left: 0 !important;
    margin-right: auto !important;
    text-align: left !important;
  }
}
@media (max-width: 768px) {
  .site-header__brand,
  .site-header__brand .site-tagline,
  .home .site-header__brand,
  [class*="tagline"],
  [class*="baseline"] {
    position: static !important;
  }
}

@media (max-width: 768px) {
  .site-header {
    background-color: #071628 !important;
    z-index: 999 !important;
  }
  .site-header__brand {
    background-color: #071628 !important;
  }
  .home .page-shell,
  .home .site-main {
    padding-top: 90px !important;
  }
}

@media (max-width: 768px) {
  .home .hero-section__inner > *,
  .home [class*="card"],
  .home [class*="audience"],
  .home [class*="persona"] {
    text-align: center !important;
  }
  .home .hero-section img,
  .home [class*="card"] img,
  .home [class*="icon"] {
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
  }
}
@media (max-width: 980px) {
  /* Timeline ecosystem : colonne simple centrée, plus de zigzag */
  .ecosystem-timeline::before {
    display: none !important;
  }
  .ecosystem-timeline__item {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    min-height: 0 !important;
    margin-bottom: 40px !important;
  }
  .ecosystem-timeline__item::before,
  .ecosystem-timeline__item::after {
    display: none !important;
  }
  .ecosystem-timeline__marker {
    grid-column: auto !important;
    grid-row: auto !important;
    justify-self: center !important;
    margin: 0 auto 16px !important;
  }
  .ecosystem-timeline__item--left .ecosystem-timeline__content,
  .ecosystem-timeline__item--right .ecosystem-timeline__content {
    grid-column: auto !important;
    grid-row: auto !important;
    max-width: 90% !important;
    margin: 0 auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: center !important;
    justify-items: center !important;
  }
  .ecosystem-timeline__title-row {
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
  }
  .ecosystem-timeline__icon {
    margin: 0 auto !important;
  }
}

@media (max-width: 980px) {
  .eco-flow__steps,
  .eco-flow__timeline {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  .eco-step {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .eco-step__stem {
    display: none !important;
  }
  .eco-step__marker,
  .eco-step__card,
  .eco-step__body {
    margin-left: auto !important;
    margin-right: auto !important;
    align-self: center !important;
    text-align: center !important;
  }
  .eco-step__card {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

@media (max-width: 980px) {
  .site-header .site-tagline,
  .site-header [class*="tagline"],
  .site-header [class*="baseline"],
  .site-header__brand p,
  .site-header__brand small {
    display: none !important;
  }
}

@media (max-width: 932px) and (orientation: landscape) and (max-height: 500px) {
  .formula-board {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
    width: 100% !important;
    max-width: 320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .formula-node {
    width: 236px !important;
    height: 236px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .formula-board__operator {
    display: none !important;
  }
  .hero-highlights {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
    max-width: 440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .hero-highlights__card {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .hero-highlights__icon {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .ecosystem-timeline__item,
  .eco-step {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    grid-template-columns: none !important;
  }
  .ecosystem-timeline::before,
  .ecosystem-timeline__item::before,
  .ecosystem-timeline__item::after,
  .eco-step__stem {
    display: none !important;
  }
}
@media (max-width: 980px) {
  .roi-page a:not(.site-logo) svg,
  .roi-page button svg,
  .roi-page a:not(.site-logo) img:not(.site-logo img),
  .roi-page [class*="button"]:not(.site-header *) svg,
  .roi-page [class*="cta"]:not(.site-header *) svg {
    width: 22px !important;
    height: 22px !important;
    max-width: 22px !important;
    max-height: 22px !important;
    flex: 0 0 auto !important;
  }
}/* Menu mobile UNIQUEMENT — ::before transparent au tap (sur desktop il doit rester cliquable) */
@media (max-width: 768px) {
  header nav a[href*="/platform/"]::before,
  header nav a[href*="/regulatory-compliance/"]::before,
  header nav a[href*="/blog-adtrust/"]::before {
    pointer-events: none !important;
  }
}/* Menu mobile — le panneau déroulant est tronqué par page-shell (overflow:clip) :
   on lève la coupure quand le menu est ouvert, pour atteindre le dernier item (Blog) */
@media (max-width: 768px) {
  html body .page-shell {
    overflow: visible !important;
  }
  /* Sécurité : le nav déroulé peut défiler s'il dépasse l'écran */
  html body #site-primary-nav.site-nav {
    max-height: calc(100vh - 55px) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }
}/* Menu mobile — le <ul> est en display:grid avec une hauteur cassée (0), ce qui éparpille les items
   et envoie le dernier (Blog) hors écran. On le force en pile verticale simple. */
@media (max-width: 768px) {
  html body ul#site-nav-list.site-nav__list {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    gap: 4px !important;
    align-content: start !important;
  }
  html body ul#site-nav-list.site-nav__list .menu-item {
    width: 100% !important;
}
}/* Menu mobile Blog AdTrust — forcer les liens du menu déroulé en blanc (le bloc "header noir" les passe en #0d0b17, illisible sur le panneau sombre) */
@media (max-width: 768px) {
  html body.bts-blog-page #site-primary-nav a,
  html body.bts-blog-page #site-nav-list a,
  html body.bts-blog-page #site-nav-list .menu-item a,
  html body.bts-blog-page #site-nav-list .site-nav__link {
    color: #ffffff !important;
  }
  /* Les libellés traduits FR/ES/DE affichés via ::before doivent aussi être blancs */
  html body.bts-blog-page #site-nav-list a::before {
    color: #ffffff !important;
  }
}		
		html body.bts-blog-page .site-header a,
html body.bts-blog-page .site-header nav a,
html body.bts-blog-page .site-header .menu a { color: #0d0b17 !important;}/* Menu mobile Blog — annule le noir du bloc "header noir" sur les liens du menu déroulé.
   Même sélecteur que la règle noire + id du nav = gagne en spécificité ET en ordre. */
@media (max-width: 768px) {
  html body.bts-blog-page .site-header #site-primary-nav a,
  html body.bts-blog-page .site-header #site-primary-nav a.site-nav__link,
  html body.bts-blog-page .site-header nav a.site-nav__link {
    color: #ffffff !important;
  }
}/* Menu mobile Blog AdTrust — liens du menu déroulé en blanc (le bloc "header noir" les passe en #0d0b17, illisible) */
@media (max-width: 768px) {
  html body.bts-blog-page .site-header #site-primary-nav a,
  html body.bts-blog-page .site-header #site-primary-nav a.site-nav__link,
  html body.bts-blog-page .site-header nav a.site-nav__link,
  html body.bts-blog-page #site-nav-list a.site-nav__link {
    color: #ffffff !important;
  }
}/* Insights — séparateurs : annule TOUS les transform et positions absolues hérités
   (c'est le transform: translateX(-50%) qui les décalait vers la gauche). */
html body.bts-insights-page hr.insights-divider {
  position: static !important;
  transform: none !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  max-width: 1200px !important;
  float: none !important;
}/* Masque le séparateur fantôme décalé (left=672, absolu) et le hr vide (w=0) */
html body.bts-insights-page hr.insights-divider--tight {
  display: none !important;
}/* AdTrust — aligner le départ du contenu sur Platform / Proof ROI (130px au lieu de 64px) — mobile */
@media (max-width: 768px) {
  html body.bts-blog-page .adtrust-hero.blog-section {
    padding-top: 130px !important;
  }
}/* AdTrust — descendre la ligne sous les cellules de thèmes (espace au-dessus) — mobile */
@media (max-width: 768px) {
  html body.bts-blog-page hr.blog-divider {
    margin-top: 40px !important;
  }
}/* About — retire le capitalize forcé par Flyte sur les titres/textes de prose */
html body.bts-about-page h2.about-closing__headline,
html body.bts-about-page p.about-closing__subline,
html body.bts-about-page p.about-founder__list-lead,
html body.bts-about-page p.about-founder__sign {
  text-transform: none !important;
}/* Footer — signature en Extra Bold sur seen/trusted, reste en Light */
.site-footer__brand p {
  font-weight: 300 !important;
}
.site-footer__brand p strong {
  font-weight: 800 !important;
}
@media (max-width: 768px) {
  html body.bts-b2b-faq-page .b2b-faq-hero.compliance-section--hero {
    padding-top: 120px !important;
  }
}/* FAQ B2B — desktop uniquement : hero à 135px (alignement validé) */
@media (min-width: 769px) {
  html body.bts-b2b-faq-page.page-id-3433 .b2b-faq-hero.compliance-section.compliance-section--hero {
    padding-top: 135px !important;
  }
}/* FAQ B2B — mobile uniquement : hero à 88px (aligné sur Launch a PoC) */
@media (max-width: 768px) {
  html body.bts-b2b-faq-page.page-id-3433 .b2b-faq-hero.compliance-section.compliance-section--hero {
    padding-top: 88x !important;
  }
}
@media (max-width: 768px) {
  html body.bts-b2b-faq-page .b2b-faq-hero .compliance-container,
  html body.bts-b2b-faq-page .b2b-faq-content .compliance-container {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
}/* Pastille thématique active */
.adtrust-topics__pill--active {
  background-color: #0070C0 !important;
  color: #ffffff !important;
  border-color: #0070C0 !important;
}
.adtrust-topics__pill { text-decoration: none !important; cursor: pointer; }/* Sélecteur de langue — intitulés en blanc sur les articles (single post),
   le dropdown a un fond sombre, le "noir blog" les rendait illisibles */
html body.single-post .bts-lang-dropdown__item,
html body.single .bts-lang-dropdown__item,
html body.single-post .bts-lang-dropdown__panel .bts-lang-dropdown__item,
html body.single .bts-lang-dropdown__panel .bts-lang-dropdown__item {
  color: #ffffff !important;
}

@media (max-width: 768px) {
  html body .blog-newsletter__title {
    font-size: 22px !important;
  }
}/* Encart newsletter blog — titre + sous-titre réduits et proportionnés */
html body .blog-newsletter__title {
  font-size: 28px !important;
  line-height: 1.25 !important;
}
html body .blog-newsletter__text {
  font-size: 16px !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
}

@media (max-width: 768px) {
  html body .blog-newsletter__title {
    font-size: 22px !important;
  }
  html body .blog-newsletter__text {
    font-size: 15px !important;
  }
}/* Header — logo redimensionné pour tenir dans la barre (55px) sans déborder */
.site-header #navbar-logo img {
  height: 40px !important;
  max-height: 40px !important;
  width: auto !important;
}/* Retire le padding-bas du conteneur qui poussait le logo vers le bas */
.site-header .site-header__brand {
  padding-bottom: 0 !important;
  display: flex !important;
  align-items: center !important;
}/* Empêcher le scroll horizontal parasite (animation hero qui déborde sur mobile) */
html, body {
  overflow-x: hidden !important;
  max-width: 100% !important;
}/* PAYSAGE mobile/tablette — rétablir les grilles horizontales
   (hero-highlights en 3 colonnes + formula horizontale) */
@media (min-width: 700px) and (max-width: 1024px) and (orientation: landscape) {
  .hero-highlights {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 16px !important;
    max-width: none !important;
  }
  .hero-highlights__card { max-width: none !important; }

  .formula-board {
    grid-template-columns: 1fr auto 1fr auto 1fr !important;
    width: 100% !important;
    gap: 12px !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .formula-board__operator {
    display: grid !important;
    font-size: 40px !important;
    transform: none !important;
  }
  .formula-node {
    width: 100% !important;
    max-width: 200px !important;
    justify-self: center !important;
  }
}/* About — section vidéo fondatrice (2014) */
.about-video__container {
  text-align: center;
}
.about-video__title {
  margin: 0 0 16px;
}
.about-video__intro {
  max-width: 760px;
  margin: 0 auto 32px;
  line-height: 1.6;
}/* Cadre vidéo responsive 16:9 */
.about-video__frame {
  position: relative;
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.28);
}
.about-video__frame iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}/* About — closing statement : subline subordonné au headline en mobile
   (corrige l'inversion : subline 24px > headline 22px sur iPhone) */
@media (max-width: 768px) {
  html body.bts-about-page .about-closing__subline {
    font-size: 16px !important;
    line-height: 1.4 !important;
  }
}/* Titres de section Proof/PoC — largeur alignée sur le contenu (wrap naturel) */
.proof-section-title,
.proof-section-title--col {
  max-width: 100% !important;
}/* ============================================================
   Start a PoC — bloc "Deux formats de PoC"
   ============================================================ */
.proof-formats__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  margin-top: 32px;
  align-items: stretch;
}
.proof-format-card {
  display: flex;
  flex-direction: column;
  padding: 30px;
  border-radius: 6px;
  background: transparent;
  border: 1px solid rgba(0, 112, 192, 0.62);
}
.proof-format-card--full {
  border-color: rgba(0, 112, 192, 0.95);
  background: rgba(0, 112, 192, 0.06);
}
.proof-format-card__name {
  margin: 0 0 10px;
  font-size: 22px;
  font-weight: 700;
  color: #fff;
}
.proof-format-card__price {
  margin: 0;
  font-size: 30px;
  font-weight: 800;
  color: #5eb8ff;
  line-height: 1.1;
}
.proof-format-card__duration {
  margin: 6px 0 18px;
  font-size: 13px;
  font-weight: 600;
  color: rgba(236, 243, 249, 0.6);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.proof-format-card__desc {
  margin: 0 0 20px;
  font-size: 15px;
  line-height: 1.5;
  color: rgba(236, 243, 249, 0.85);
}
.proof-format-card__list {
  list-style: none;
  padding: 0;
  margin: auto 0 0;
  display: grid;
  gap: 12px;
}
.proof-format-card__list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 14px;
  line-height: 1.4;
  color: rgba(236, 243, 249, 0.92);
}
.proof-formats__verticals {
  margin-top: 44px;
  text-align: center;
}
.proof-formats__verticals-title {
  font-size: 16px;
  font-weight: 600;
  color: rgba(236, 243, 249, 0.7);
  margin: 0 0 18px;
}
.proof-formats__verticals-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 12px;
}
.proof-formats__verticals-list li {
  padding: 7px 16px;
  border-radius: 6px;
  background: transparent;
  border: 1px solid rgba(0, 112, 192, 0.4);
  font-size: 14px;
  color: rgba(236, 243, 249, 0.9);
}
.proof-formats__cta {
  margin-top: 40px;
  text-align: center;
}/* CTA en lien bleu façon "Discover the PoC Framework →" */
.proof-formats__cta .proof-cta-button {
  display: inline-block;
  background: transparent;
  border: none;
  padding: 0;
  color: #5eb8ff;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  box-shadow: none;
}
.proof-formats__cta .proof-cta-button:hover {
  text-decoration: underline;
}
@media (max-width: 768px) {
  .proof-formats__grid { grid-template-columns: 1fr; }
}/* Harmoniser le titre "Scope and Typical Schedule" sur les autres titres de section (40px) */
.proof-page .proof-framework__title {
  font-size: 40px !important;
  line-height: 50px !important;
}/* PoC Framework — process en 6 étapes */
.poc-process-list {
  list-style: none;
  counter-reset: none;
  padding: 0;
  margin: 32px 0 0;
  display: grid;
  gap: 16px;
  max-width: 760px;
}
.poc-process-step {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding: 20px 24px;
  border-radius: 6px;
  border: 1px solid rgba(0, 112, 192, 0.4);
  background: transparent;
}
.poc-process-step__num {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid rgba(0, 112, 192, 0.7);
  color: #5eb8ff;
  font-size: 18px;
  font-weight: 800;
}
.poc-process-step__title {
  margin: 0 0 6px;
  font-size: 18px;
  font-weight: 700;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.poc-process-step__tag {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: rgba(94, 184, 255, 0.9);
  border: 1px solid rgba(0, 112, 192, 0.5);
  border-radius: 999px;
  padding: 2px 10px;
}
.poc-process-step__desc {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(236, 243, 249, 0.85);
}/* PoC Framework — process 6 étapes + vision plateforme (2 colonnes) */
.poc-process-layout {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 40px;
  align-items: start;
  margin-top: 24px;
}/* Étapes (gauche) */
.poc-process-list {
  list-style: none;
  padding: 0;
  margin: 24px 0 0;
  display: grid;
  gap: 14px;
}
.poc-process-step {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  padding: 18px 20px;
  border-radius: 6px;
  border: 1px solid rgba(0, 112, 192, 0.4);
  background: transparent;
}
.poc-process-step--full {
  border-color: rgba(0, 112, 192, 0.2);
  background: rgba(0, 112, 192, 0.04);
}
.poc-process-step__num {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 38px; height: 38px;
  border-radius: 50%;
  border: 1px solid rgba(0, 112, 192, 0.7);
  color: #5eb8ff;
  font-size: 17px; font-weight: 800;
}
.poc-process-step__body { flex: 1; }
.poc-process-step__title {
  margin: 0 0 5px;
  font-size: 17px; font-weight: 700; color: #fff;
  display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
}
.poc-process-step__tag {
  font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em;
  color: rgba(94, 184, 255, 0.9);
  border: 1px solid rgba(0, 112, 192, 0.5);
  border-radius: 999px; padding: 2px 9px;
}
.poc-process-step__desc {
  margin: 0; font-size: 13px; line-height: 1.5; color: rgba(236, 243, 249, 0.82);
}/* Vision plateforme (droite) — traitement distinct = futur/conditionnel */
.poc-process-col--vision { position: sticky; top: 90px; }
.poc-vision-card {
  padding: 28px 26px;
  border-radius: 10px;
  border: 1px dashed rgba(94, 184, 255, 0.5);
  background: linear-gradient(160deg, rgba(12,127,218,0.10), rgba(12,127,218,0.03));
}
.poc-vision-card__badge {
  display: inline-block;
  font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em;
  color: #5eb8ff;
  border: 1px solid rgba(94,184,255,0.5);
  border-radius: 999px; padding: 4px 12px; margin-bottom: 14px;
}
.poc-vision-card__title {
  margin: 0 0 12px; font-size: 24px; font-weight: 700; color: #fff;
}
.poc-vision-card__intro {
  margin: 0 0 18px; font-size: 14px; line-height: 1.55; color: rgba(236,243,249,0.85);
}
.poc-vision-card__list {
  list-style: none; padding: 0; margin: 0; display: grid; gap: 10px;
}
.poc-vision-card__list li {
  position: relative; padding-left: 20px;
  font-size: 14px; line-height: 1.4; color: rgba(236,243,249,0.9);
}
.poc-vision-card__list li::before {
  content: "→"; position: absolute; left: 0; color: #5eb8ff;
}/* Responsive : empilé sous 980px */
@media (max-width: 980px) {
  .poc-process-layout { grid-template-columns: 1fr; gap: 32px; }
  .poc-process-col--vision { position: static; }
}/* Proof ROI Engine — témoignage (ex-callout) */
.roi-testimonial__quote {
  font-size: 19px; font-style: italic; line-height: 1.5; color: #fff; margin: 0 0 12px;
}
.roi-testimonial__author {
  font-size: 14px; font-weight: 600; color: #5eb8ff; margin: 0;
}/* 3 affirmations de marque (droite de ROI is measured) */
.roi-insight__grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 40px;
  align-items: center;
}
.roi-insight__claims {
  display: grid;
  gap: 18px;
  padding-left: 28px;
  border-left: 2px solid rgba(0,112,192,0.5);
}
.roi-claim {
  margin: 0; font-size: 18px; font-weight: 700; line-height: 1.35;
  color: rgba(236,243,249,0.95);
}/* Photo de mise en situation */
.roi-photo__img {
  width: 100%; height: auto; border-radius: 10px;
  box-shadow: 0 18px 48px rgba(0,0,0,0.3);
}
@media (max-width: 900px) {
  .roi-insight__grid { grid-template-columns: 1fr; gap: 28px; }
  .roi-insight__claims { padding-left: 0; border-left: none; padding-top: 20px; border-top: 1px solid rgba(0,112,192,0.4); }
}/* ============================================================
   PROOF ROI ENGINE - correctifs layout
   ============================================================ *//* ---- 1. Verticales : titre bleu en haut, texte juste en dessous ---- */
.roi-usecases__grid .roi-uc-item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
}
.roi-usecases__grid .roi-uc-item__sector {
	display: block;
	width: 100%;
	margin-bottom: 2px;
}
.roi-usecases__grid .roi-uc-item__value {
	display: block;
	width: 100%;
	max-width: none;
}/* ---- 2. Sous-titres / leads : remplir la ligne ---- */
.roi-section .roi-model__lead,
.roi-section .roi-usecases__lead,
.roi-section .roi-missing-layer__body,
.roi-section .roi-credibility__body {
	max-width: 56rem;
}
.roi-usecases .roi-usecases__lead {
	max-width: none;
}/* ---- 3. Numeros d'etape (01-04) : la rangee les coupe ---- */
.roi-model__chain {
	overflow: visible;
}
.roi-model__chain .roi-model__step {
	overflow: visible;
}/* ---- 4. Citation ex-VP : Open Sans Light italique ---- */
.roi-testimonial__quote {
	font-family: 'Open Sans', sans-serif !important;
	font-weight: 300 !important;
	font-style: italic !important;
}/* ---- 5. Claims : contraste Light vs Extra Bold ----
   Texte normal = Open Sans 300 (Light)
   Mots-cles <strong> = Open Sans 800 (Extra Bold) */
.roi-insight__claims .roi-claim {
	font-family: 'Open Sans', sans-serif !important;
	font-weight: 300 !important;
}
.roi-insight__claims .roi-claim strong {
	font-weight: 800 !important;
}/* ---- 6. Section Trust Proof : mockup ecran TV (tag de 5'') ----
   Tout est namespace .roi-tp pour zero collision.
   Les couleurs ont un fallback en dur si les variables du theme n'existent pas. */
.roi-trustproof .roi-tp__kicker{
	font-weight:700;letter-spacing:.16em;text-transform:uppercase;
	font-size:.74rem;color:var(--bts-blue,#0c7fda);margin-bottom:14px;
}
.roi-trustproof .roi-tp__lead{ max-width:56rem; margin-bottom:48px; }
 
.roi-tp__stage{ display:flex; flex-direction:column; align-items:center; }
.roi-tp__tv{
	width:100%;max-width:860px;aspect-ratio:16/9;position:relative;border-radius:14px;padding:11px;
	background:linear-gradient(160deg,#11233a,#0a1727);
	box-shadow:0 2px 0 rgba(255,255,255,.05) inset,0 40px 80px -30px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.04);
}
.roi-tp__screen{
	position:relative;width:100%;height:100%;border-radius:6px;overflow:hidden;
	background:radial-gradient(120% 140% at 75% 30%,#20384f 0%,#0e1f31 55%,#0a1828 100%);
}
.roi-tp__spot{ position:absolute;left:7%;top:50%;transform:translateY(-50%);width:34%;max-width:230px; }
.roi-tp__bottle{
	margin:0 auto;width:84px;height:190px;border-radius:14px 14px 18px 18px;position:relative;
	background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(200,215,230,.55));
	box-shadow:0 18px 40px -16px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.12) inset;
}
.roi-tp__bottle::before{ content:'';position:absolute;top:-18px;left:50%;transform:translateX(-50%);width:30px;height:24px;border-radius:5px;background:rgba(220,230,240,.85); }
.roi-tp__bottle::after{ content:'';position:absolute;inset:30% 18% auto 18%;height:34%;border-radius:4px;background:rgba(12,127,218,.22); }
.roi-tp__spot-cap{ text-align:center;margin-top:16px;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.4);font-weight:600; }
 
.roi-tp__proof{
	position:absolute;right:5%;top:50%;transform:translateY(-50%);width:46%;max-width:330px;
	background:linear-gradient(155deg,rgba(8,22,38,.92),rgba(10,28,46,.86));
	border:1px solid rgba(12,127,218,.4);border-radius:12px;padding:18px 18px 16px;
	box-shadow:0 24px 50px -22px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.03) inset;
	opacity:0;animation:roiTpIn .7s .35s forwards;
}
.roi-tp__phead{ display:flex;align-items:center;gap:8px;margin-bottom:12px; }
.roi-tp__eye{ width:20px;height:20px;flex:0 0 auto; }
.roi-tp__plabel{ font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bts-blue,#0c7fda);font-weight:700; }
.roi-tp__stars{ display:flex;gap:3px;margin-bottom:7px; }
.roi-tp__stars svg{ width:20px;height:20px; }
.roi-tp__star{ fill:#ffc24b; }
.roi-tp__rating{ display:flex;align-items:baseline;gap:8px;margin-bottom:12px; }
.roi-tp__rating b{ font-size:1.5rem;font-weight:800;line-height:1; }
.roi-tp__rating span{ font-size:.72rem;color:var(--bts-muted,#8ba3bf); }
.roi-tp__quote{ font-size:.78rem;line-height:1.45;color:rgba(234,241,248,.9);font-style:italic;font-weight:300;margin-bottom:14px;border-left:2px solid var(--bts-blue,#0c7fda);padding-left:9px; }
.roi-tp__pfoot{ display:flex;align-items:center;justify-content:space-between;gap:12px; }
.roi-tp__scan{ font-size:.66rem;line-height:1.3;color:var(--bts-muted,#8ba3bf);max-width:60%; }
.roi-tp__scan b{ color:#eaf1f8;font-weight:700;display:block;font-size:.74rem;margin-bottom:2px; }
.roi-tp__qr{ width:58px;height:58px;flex:0 0 auto;border-radius:7px;background:#fff;padding:5px;box-shadow:0 6px 16px -6px rgba(0,0,0,.6); }
.roi-tp__qr svg{ display:block;width:100%;height:100%; }
 
.roi-tp__badge{
	position:absolute;top:14px;right:16px;display:flex;align-items:center;gap:7px;
	background:rgba(8,22,38,.78);border:1px solid rgba(12,127,218,.5);padding:5px 11px;border-radius:999px;
	font-size:.72rem;font-weight:800;letter-spacing:.02em;color:#eaf1f8;
}
.roi-tp__badge small{ color:var(--bts-muted,#8ba3bf);font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:.58rem; }
.roi-tp__dot{ width:7px;height:7px;border-radius:50%;background:#ff5a5a;animation:roiTpPulse 1.6s infinite; }
 
.roi-tp__progress{ position:absolute;left:0;right:0;bottom:0;height:4px;background:rgba(255,255,255,.08); }
.roi-tp__progress::after{ content:'';position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,var(--bts-blue,#0c7fda),#56b6ff);animation:roiTpFill 5s .5s linear forwards; }
 
.roi-tp__neck{ width:34px;height:26px;background:linear-gradient(180deg,#11233a,#0c1a2a);clip-path:polygon(22% 0,78% 0,100% 100%,0 100%); }
.roi-tp__stand{ width:120px;height:9px;border-radius:0 0 7px 7px;background:linear-gradient(180deg,#16293f,#0c1a2a);margin-top:-1px; }
.roi-tp__caption{ margin-top:30px;text-align:center;font-size:.78rem;color:var(--bts-muted,#8ba3bf);font-style:italic; }
 
@keyframes roiTpIn{ from{opacity:0;transform:translateY(-50%) translateX(14px)} to{opacity:1;transform:translateY(-50%) translateX(0)} }
@keyframes roiTpPulse{ 0%{box-shadow:0 0 0 0 rgba(255,90,90,.6)} 70%{box-shadow:0 0 0 7px rgba(255,90,90,0)} 100%{box-shadow:0 0 0 0 rgba(255,90,90,0)} }
@keyframes roiTpFill{ from{width:0} to{width:100%} }
 
@media(max-width:600px){
	.roi-tp__tv{ aspect-ratio:auto;height:auto; }
	.roi-tp__screen{ display:flex;flex-direction:column; }
	.roi-tp__spot{ position:static;transform:none;width:100%;max-width:none;padding:18px 0 6px; }
	.roi-tp__proof{ position:static;transform:none;width:auto;max-width:none;margin:0 14px 18px;animation:roiTpInMobile .7s .35s forwards; }
}
@keyframes roiTpInMobile{ from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:translateY(0)} }/* Accessibilite : si l'utilisateur a desactive les animations, tout reste visible */
@media(prefers-reduced-motion:reduce){
	.roi-tp__proof{ opacity:1 !important;animation:none !important;transform:translateY(-50%) !important; }
	.roi-tp__dot{ animation:none !important; }
	.roi-tp__progress::after{ width:100% !important;animation:none !important; }
}/* Contact / PoC — sous-titres de section à la taille Insights (22px) sur mobile */
@media (max-width: 768px) {
  .contact-poc-page .poc-section-title {
    font-size: 22px;
    line-height: 1.25;
  }
}