:root {
    --site-color: #0B3D92;
    --site-color-dark: #072a66;
    --site-color-accent: #0d4aad;
    --site-color-5: #0B3D920d;
    --site-color-10: #0B3D921a;
    --site-color-20: #0B3D9233;
    --site-color-50: #0B3D9280;
    --site-color-80: #0B3D92cc;
    --site-color-90: #0B3D92e6;
    --text-primary: #333333;
    --text-secondary: #4c4c4c;
    --text-muted: #a1a1a1;
    --text-light: #abafaf;
    --footer-bg: #16303d;
    --bg-light: #f5f5f5;
    --form-bg: #FDFFFF;
    --form-border: #58565633;
    --error-red: #FE0014;
    --overlay-bg: #333333cc;
    --radius-card: 20px;
    --radius-pill: 40px;
    --radius-btn: 7px;
    --radius-container: 30px;
    --radius-image: 15px;
    --radius-circle: 50%;
}

@font-face {
    font-family: 'MontserratBold';
    src: url('../fonts/Montserrat-Bold.woff2') format('woff2'),
         url('../fonts/Montserrat-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

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

body {
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
    color: var(--text-primary);
    overflow-x: hidden;
}

a { color: var(--site-color); text-decoration: none; transition: color .3s; }
a:hover { color: var(--site-color-dark); }

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

h1, h2, h3, h4, h5, h6 { font-family: 'MontserratBold', 'Montserrat', sans-serif; font-weight: bold; color: var(--text-primary); }

.container { max-width: 1440px; margin: 0 auto; padding: 0 15px; width: 100%; }

.index_title {
    font-family: 'MontserratBold', sans-serif;
    font-weight: bold;
    text-align: center;
    margin-bottom: 40px;
}

.btn-primary {
    display: inline-block;
    background: var(--site-color);
    color: #fff;
    padding: 12px 36px;
    border: 1px solid var(--site-color);
    border-radius: var(--radius-btn);
    font-size: 16px;
    cursor: pointer;
    transition: all .3s;
}
.btn-primary:hover { background: #fff; color: var(--site-color); }

.btn-outline {
    display: inline-block;
    background: transparent;
    color: var(--text-primary);
    padding: 12px 36px;
    border: 1px solid var(--text-primary);
    border-radius: var(--radius-btn);
    font-size: 16px;
    cursor: pointer;
    transition: all .3s;
}
.btn-outline:hover { background: var(--site-color); color: #fff; border-color: var(--site-color); }

.btn-pill {
    display: inline-block;
    background: var(--site-color);
    color: #fff;
    padding: 10px 30px;
    border: 1px solid var(--site-color);
    border-radius: var(--radius-pill);
    font-size: 16px;
    cursor: pointer;
    transition: all .3s;
}
.btn-pill:hover { background: #fff; color: var(--site-color); }

.hidden-mobile { display: block; }
.hidden-pc { display: none; }
.section-padding { padding: 60px 0; }

@media (max-width: 1440px) {
    .container { max-width: 1230px; }
}
@media (max-width: 767px) {
    .hidden-mobile { display: none !important; }
    .hidden-pc { display: block !important; }
    .container { max-width: 100%; padding: 0 15px; }
    .section-padding { padding: 30px 0; }
}
