/**
 * Typographie AIRID – Définie pour tout le projet
 * Référence : accueil.blade.php (hero, sections, titres, textes)
 * Toutes les vues qui utilisent le layout index héritent de ces styles.
 * Même taille de texte, police et titres sur tout le site.
 */

:root {
    --airid-font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    /* Base lecture confortable (~16px) — avant 0.875rem trop petit sur beaucoup d’écrans */
    --airid-text-size: 1rem;
    --airid-text-color: #444;
    --airid-text-line-height: 1.6;
    --airid-title-color: #1a1a1a;
    --airid-h1-size: clamp(1.2rem, 2.1vw + 0.5rem, 1.75rem);
    --airid-h2-size: clamp(1.1rem, 1.5vw + 0.65rem, 1.45rem);
    --airid-h3-size: clamp(1.05rem, 1.2vw + 0.6rem, 1.25rem);
    --airid-h4-size: clamp(1rem, 1vw + 0.55rem, 1.1rem);
    --airid-tagline-size: 0.9375rem;
    --airid-tagline-color: #555;
}

.body-inner {
    font-family: var(--airid-font-family);
}

.body-inner,
.body-inner p {
    font-size: var(--airid-text-size);
    line-height: var(--airid-text-line-height);
    color: var(--airid-text-color);
}

.body-inner h1 {
    font-size: var(--airid-h1-size);
    font-weight: 700;
    color: var(--airid-title-color);
    line-height: 1.25;
}

.body-inner h2 {
    font-size: var(--airid-h2-size);
    font-weight: 700;
    color: var(--airid-title-color);
    line-height: 1.3;
}

.body-inner h3 {
    font-size: var(--airid-h3-size);
    font-weight: 700;
    color: var(--airid-title-color);
}

.body-inner h4,
.body-inner h5,
.body-inner h6 {
    font-size: var(--airid-h4-size);
    font-weight: 700;
    color: var(--airid-title-color);
}

.body-inner .section-title {
    font-size: var(--airid-h2-size);
    font-weight: 700;
    color: var(--airid-title-color);
}

.body-inner .tagline,
.body-inner .section-sub-title {
    font-size: var(--airid-tagline-size);
    font-weight: 600;
    color: var(--airid-tagline-color);
    line-height: 1.4;
}

.body-inner .intro,
.body-inner .section-lead {
    font-size: var(--airid-text-size);
    line-height: var(--airid-text-line-height);
    color: var(--airid-text-color);
}

/* Cartes, listes, contenus secondaires */
.body-inner .card-title,
.body-inner .news-card-title,
.body-inner .service-box-title {
    font-size: var(--airid-h3-size);
    font-weight: 700;
    color: var(--airid-title-color);
}

.body-inner .card-text,
.body-inner .news-card-text,
.body-inner small.text-muted {
    font-size: var(--airid-text-size);
    line-height: var(--airid-text-line-height);
    color: var(--airid-text-color);
}

/* ============================================
   BANNER / HERO (toutes les pages)
   ============================================ */
.body-inner .banner-title,
.body-inner .banner-area .banner-title,
.body-inner #banner-area .banner-title,
.body-inner .top_title {
    font-size: var(--airid-h1-size);
    font-weight: 700;
    color: #fff;
    line-height: 1.25;
    text-shadow: 0 2px 8px rgba(0,0,0,0.45);
}

.body-inner .banner-area .banner-heading p,
.body-inner #banner-area .banner-text p {
    font-size: var(--airid-tagline-size);
    line-height: var(--airid-text-line-height);
    text-shadow: 0 1px 6px rgba(0,0,0,0.45);
}

.body-inner .banner-area .tagline,
.body-inner .banner-area .banner-heading p {
    color: rgba(255,255,255,0.95);
}

/* ============================================
   SECTIONS PAGE (About, Contact, Vacancies, etc.)
   ============================================ */
.body-inner .vmv-title,
.body-inner .what-we-do-title {
    font-size: var(--airid-h2-size);
    font-weight: 700;
    color: var(--airid-title-color);
}

.body-inner .vmv-description,
.body-inner .what-we-do-text {
    font-size: var(--airid-text-size);
    line-height: var(--airid-text-line-height);
    color: var(--airid-text-color);
}

.body-inner .about-intro p,
.body-inner .content-section p,
.body-inner .page-body,
.body-inner .page-body p {
    font-size: var(--airid-text-size);
    line-height: var(--airid-text-line-height);
    color: var(--airid-text-color);
}

.body-inner .content-section h1,
.body-inner .page-body h1 {
    font-size: var(--airid-h1-size);
    font-weight: 700;
    color: var(--airid-title-color);
}

.body-inner .content-section h2,
.body-inner .page-body h2 {
    font-size: var(--airid-h2-size);
    font-weight: 700;
    color: var(--airid-title-color);
}

.body-inner .content-section h3,
.body-inner .page-body h3 {
    font-size: var(--airid-h3-size);
    font-weight: 700;
    color: var(--airid-title-color);
}

/* Cartes contact, infos */
.body-inner .contact-info-card h4,
.body-inner .contact-info-card .card-title {
    font-size: var(--airid-h3-size);
    font-weight: 700;
    color: var(--airid-title-color);
}

.body-inner .contact-info-card p,
.body-inner .contact-info-card .card-text {
    font-size: var(--airid-text-size);
    line-height: var(--airid-text-line-height);
    color: var(--airid-text-color);
}

/* Titres de liste / offres */
.body-inner .vacancy-card-title,
.body-inner .vacancy-item h3,
.body-inner .vacancy-item .job-title {
    font-size: var(--airid-h3-size);
    font-weight: 700;
    color: var(--airid-title-color);
}

.body-inner .vacancy-card-desc,
.body-inner .vacancy-item p {
    font-size: var(--airid-text-size);
    line-height: var(--airid-text-line-height);
    color: var(--airid-text-color);
}

/* Title divider (trait sous titres) */
.body-inner .title-divider {
    width: 60px;
    height: 4px;
    background: linear-gradient(90deg, #c20102, #8b0101);
    border-radius: 2px;
}
/* ============================================================
   Bannières de page (.banner-area) : formes décoratives
   – voile rouge incurvé en haut à gauche
   – bande rouge incurvée en bas à droite
   – fins traits blancs en arc
   – bord inférieur blanc incliné
   Uniquement décoratif : n'affecte pas le style des textes.
   ============================================================ */
.banner-area {
    overflow: hidden;
}
.banner-area::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 600' preserveAspectRatio='none'%3E%3Cpath d='M0 0H640C430 70 190 180 0 330Z' fill='%23c20102' fill-opacity='.55'/%3E%3Cpath d='M1600 240C1330 430 1010 545 640 600H1600Z' fill='%23c20102' fill-opacity='.42'/%3E%3Cpath d='M0 345C420 110 960 15 1600 0' fill='none' stroke='%23fff' stroke-opacity='.35' stroke-width='1.5' vector-effect='non-scaling-stroke'/%3E%3Cpath d='M620 600C980 540 1330 410 1600 225' fill='none' stroke='%23fff' stroke-opacity='.45' stroke-width='1.5' vector-effect='non-scaling-stroke'/%3E%3Cpath d='M0 560C520 575 1080 585 1600 600H0Z' fill='%23fff'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}
