/* Styles extraits de page-home.php — servis en fichier cacheable (voir colibris_enqueue_template_css). */

    /* Reset padding so hero goes edge-to-edge */
    body.page-template-page-home-php #page,
    body.page-template-page-home-php .ast-site-content-wrap,
    body.page-template-page-home-php #primary {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }

    /* Home-specific overrides for the common hero */
    /* Le ratio 16/7 vient du min_height inline passé par page-home.php (une
       min-height ici perdrait contre le style inline, et aspect-ratio +
       overflow:hidden empêche la section de grandir avec son contenu).
       flex-direction column : la bande trust (slot_bottom) est dans le flux sous
       le contenu, elle ne peut plus recouvrir les CTAs quand ses textes passent
       sur 2 lignes (~1025-1600px de large). */
    .home-page .colibris-hero {
        flex-direction: column;
    }
    .home-page .colibris-hero__bg img,
    .home-page .colibris-hero__bg video {
        object-position: 62% center;
    }
    .home-page .colibris-hero__title {
        margin-bottom: 6px;
    }
    .home-page .colibris-hero__wrap {
        flex: 1;
        padding: 40px max(60px, 7vw) 48px;
    }

    /* ── Trust band,  in-flow at bottom of hero ─────────────────────────────── */
    .ch-trust {
        position: relative; /* pas absolute : en flux, ne recouvre jamais les CTAs */
        z-index: 3;
        background: rgba(255, 252, 246, 0.92);
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        padding: 10px max(60px, 7vw) 8px;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1), 0 2px 6px rgba(0, 0, 0, 0.06);
    }

    /* Grid */
    .ch-trust__grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 0;
        list-style: none;
        padding: 0;
        margin: 0;
        column-gap: 0;
    }

    /* Item */
    .ch-trust__item {
        padding: 0 42px 0 0;
        position: relative;
        display: grid;
        grid-template-columns: auto 1fr;
        grid-template-rows: auto auto;
        column-gap: 10px;
        row-gap: 0;
        align-items: center;
    }
    .ch-trust__item + .ch-trust__item {
        padding-left: 42px;
    }
    /* Subtle vertical separator */
    .ch-trust__item + .ch-trust__item::before {
        content: '';
        position: absolute;
        left: 0; top: 12px; bottom: 12px;
        width: 1px;
        background: rgba(26, 17, 10, 0.12);
    }

    /* Icon,  inline left, spans both rows */
    .ch-trust__icon {
        grid-row: 1 / 3;
        grid-column: 1;
        display: flex;
        align-items: center;
        opacity: 0.8;
    }
    .ch-trust__icon svg {
        stroke: rgba(26, 17, 10, 0.7);
    }

    /* Value */
    .ch-trust__value {
        grid-column: 2;
        font-size: 21px;
        font-weight: 700;
        line-height: 1.4;
        letter-spacing: 0.01em;
        color: #1a110a;
    }
    .ch-trust__value.accent-yellow { color: #b87700; }
    .ch-trust__value.accent-magenta { color: #ba078c; }
    .ch-trust__value.accent-blue { color: #487bff; }
    .ch-trust__value.accent-green { color: #009c8e; }

    /* Label */
    .ch-trust__label {
        grid-column: 2;
        font-size: 14px;
        font-weight: 400;
        color: rgba(26, 17, 10, 0.6);
        line-height: 1.4;
        letter-spacing: 0.02em;
    }

    /* Scroll-triggered fade */
    .ch-trust__item {
        opacity: 0;
        transform: translateY(14px);
        transition: opacity 0.65s ease, transform 0.65s ease;
    }
    .ch-trust__item.ch-trust--visible {
        opacity: 1;
        transform: translateY(0);
    }
    .ch-trust__item:nth-child(2) { transition-delay: 0.08s; }
    .ch-trust__item:nth-child(3) { transition-delay: 0.16s; }
    .ch-trust__item:nth-child(4) { transition-delay: 0.24s; }

    /* ── Trust,  tablet ─────────────────────────────────────────────────────── */
    @media (max-width: 1024px) {
        .ch-trust { padding: 18px max(32px, 4vw) 16px; }
        .ch-trust__item { padding: 0 24px 0 0; }
        .ch-trust__item + .ch-trust__item { padding-left: 24px; }
        .ch-trust__value { font-size: 13px; }
        .ch-trust__label { font-size: 11px; }
    }

    /* ── Trust,  mobile ─────────────────────────────────────────────────────── */
    @media (max-width: 768px) {
        .ch-trust { padding: 16px 24px 14px; }
        .ch-trust__grid { grid-template-columns: repeat(2, 1fr); row-gap: 16px; }
        .ch-trust__item { padding: 0 12px 0 0; }
        .ch-trust__item + .ch-trust__item { padding-left: 12px; }
        .ch-trust__item:nth-child(2n+1) + .ch-trust__item::before { display: block; }
        .ch-trust__item:nth-child(2n)   + .ch-trust__item::before { display: none; }
        .ch-trust__item:nth-child(3),
        .ch-trust__item:nth-child(4) {
            border-top: 1px solid rgba(255,255,255,0.1);
            padding-top: 14px;
        }
        .ch-trust__icon { margin-bottom: 6px; }
        .ch-trust__icon svg { width: 16px; height: 16px; }
        .ch-trust__value { font-size: 15px; line-height: 1.3; margin-bottom: 3px; }
        .ch-trust__label { font-size: 11.5px; }
    }

    /* ── Trust,  small mobile ───────────────────────────────────────────────── */
    @media (max-width: 480px) {
        .ch-trust { padding: 14px 20px 12px; }
        .ch-trust__grid { grid-template-columns: 1fr 1fr; row-gap: 12px; column-gap: 0; }
        .ch-trust__value { font-size: 13.5px; }
        .ch-trust__label { font-size: 10.5px; }
    }
    .home-page .colibris-hero__description .accent-yellow { color: #ffb415; }
    .home-page .colibris-hero__description .accent-blue { color: #487bff; }

    /* Mobile: la bande trust est en flux, plus besoin de grande réserve en bas */
    @media (max-width: 768px) {
        .home-page .colibris-hero__wrap { padding: 28px 24px 36px; }
    }
    @media (max-width: 480px) {
        .home-page .colibris-hero__wrap { padding: 24px 20px 32px; }
    }

    .home-video {
        width: min(900px, calc(100% - 32px));
        margin: 8px auto 0;
    }
    .home-video__frame {
        position: relative;
        width: 100%;
        aspect-ratio: 16 / 9;
        border-radius: 16px;
        overflow: hidden;
        box-shadow:
            0 40px 80px -20px rgba(0, 0, 0, 0.35),
            0 24px 50px -15px rgba(0, 0, 0, 0.22),
            0 8px 20px rgba(0, 0, 0, 0.10);
        background: #000;
    }
    .home-video__frame iframe {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        border: 0;
    }
