/**
 * APMFI Theme – Base / Reset Styles
 *
 * @package APMFI_Theme
 */

/* ── Reset ── */
*, *::before, *::after { box-sizing: border-box;}

html {
    scroll-behavior: smooth;
    font-size: clamp(1rem, calc(1vw + 0.6rem), 1.1rem) !important; 
    font-family: var(--font-primary);
}
body {
    color: var(--color-text);
    background-color: var(--color-white);
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    font-size: clamp(1rem, calc(1vw + 0.6rem), 1.1rem) !important; 
}
body, p, h1, h2, h3, h4, h5, h6, a, span, div, button, input, .menu-item, .widget {
    font-family: var(--font-primary) !important;
}
a {
    color: var(--color-primary);
    text-decoration: none;
    transition: color var(--transition-fast);
}
a:hover { color: var(--color-primary-dark); text-decoration: none; }

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

h1,h2,h3,h4,h5,h6 {
    font-weight: 700;
    line-height: 1.3;
    color: var(--color-dark-gray);
}

::selection { background: var(--color-primary); color: #fff; }

/* ── Inline style overrides ── */
.site-header .text-danger,
.site-footer .text-danger,
.hero-slider .text-danger,
main .text-danger { color: var(--color-primary) !important; }


/* In your theme's style.css */
img[loading="lazy"] {
    opacity: 0.4;
}

img[loading="lazy"].loaded {
    opacity: 1;
}
