/**
 * EAAS Theme - CSS Reset
 *
 * @package    EAAS
 * @version    2.5
 * @author     Rodolphe
 * @link       https://enaccordavecsoi.fr
 * @file       reset.css
 */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: var(--font-family-primary, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Inter', 'Roboto', 'Helvetica Neue', Arial, sans-serif);
    line-height: var(--line-height-base, 1.6);
    color: var(--text-color);
    background-color: var(--body-bg);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-normal, 400);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1 {
    font-size: var(--font-size-h1);
    font-weight: var(--font-weight-bold, 700);
    line-height: var(--line-height-tight, 1.2);
    margin: 0.5em 0;
}

h1:not(.elementor-heading-title) {
    color: var(--primary-color);
}

h2 {
    font-size: var(--font-size-h2);
    font-weight: var(--font-weight-semibold, 600);
    line-height: var(--line-height-tight, 1.3);
    margin: 0.5em 0;
}

h2:not(.elementor-heading-title) {
    color: var(--primary-color);
}

h3 {
    font-size: var(--font-size-h3);
    font-weight: var(--font-weight-semibold, 600);
    margin: 0.5em 0;
}

h3:not(.elementor-heading-title) {
    color: var(--text-color);
}

h4 {
    font-size: var(--font-size-h4);
    font-weight: var(--font-weight-semibold, 600);
    margin: 0.5em 0;
}

h4:not(.elementor-heading-title) {
    color: var(--text-color);
}

h5 {
    font-size: var(--font-size-h5);
    font-weight: var(--font-weight-semibold, 600);
    margin: 0.5em 0;
}

h5:not(.elementor-heading-title) {
    color: var(--text-color);
}

h6 {
    font-size: var(--font-size-h6);
    font-weight: var(--font-weight-semibold, 600);
    margin: 0.5em 0;
}

h6:not(.elementor-heading-title) {
    color: var(--text-color);
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

a {
    text-decoration: none;
    color: inherit;
    transition: var(--transition);
}

ul, ol {
    list-style: none;
}

/* ========================================
   Responsive Typography
   ======================================== */

/* Tablet Landscape (992px - 1199px) */
@media screen and (max-width: 1199px) {
    h1 { font-size: var(--font-size-h1-tablet-landscape, 46px); }
    h2 { font-size: var(--font-size-h2-tablet-landscape, 34px); }
    h3 { font-size: var(--font-size-h3-tablet-landscape, 26px); }
    h4 { font-size: var(--font-size-h4-tablet-landscape, 21px); }
    h5 { font-size: var(--font-size-h5-tablet-landscape, 17px); }
    h6 { font-size: var(--font-size-h6-tablet-landscape, 15px); }
}

/* Tablet Portrait (768px - 991px) */
@media screen and (max-width: 991px) {
    body {
        font-size: var(--font-size-base-tablet, 15px);
    }
    h1 { font-size: var(--font-size-h1-tablet, 42px); }
    h2 { font-size: var(--font-size-h2-tablet, 32px); }
    h3 { font-size: var(--font-size-h3-tablet, 24px); }
    h4 { font-size: var(--font-size-h4-tablet, 20px); }
    h5 { font-size: var(--font-size-h5-tablet, 16px); }
    h6 { font-size: var(--font-size-h6-tablet, 14px); }
}

/* Mobile (max 767px) */
@media screen and (max-width: 767px) {
    body {
        font-size: var(--font-size-base-mobile, 14px);
    }
    h1 { font-size: var(--font-size-h1-mobile, 32px); }
    h2 { font-size: var(--font-size-h2-mobile, 26px); }
    h3 { font-size: var(--font-size-h3-mobile, 22px); }
    h4 { font-size: var(--font-size-h4-mobile, 18px); }
    h5 { font-size: var(--font-size-h5-mobile, 16px); }
    h6 { font-size: var(--font-size-h6-mobile, 14px); }
}

/* Small Mobile (max 480px) */
@media screen and (max-width: 480px) {
    body {
        -webkit-text-size-adjust: 100%;
    }
}
