/* ==========================================================
   GLOBAL TYPOGRAPHY OVERRIDE
   Loaded last in all layouts so shared type rules can respond
   to viewport size. Desktop text now scales larger while mobile
   keeps a tighter, readable rhythm.
   ========================================================== */

@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400;1,600&display=swap');

:root {
    --type-body: clamp(15px, 0.22vw + 14px, 18px);
    --type-small: clamp(0.875rem, 0.84rem + 0.08vw, 0.95rem);
    --type-nav: clamp(0.95rem, 0.9rem + 0.18vw, 1.08rem);
    --type-button: clamp(0.95rem, 0.9rem + 0.14vw, 1.05rem);
    --type-h1: clamp(2rem, 1.35rem + 2.4vw, 4rem);
    --type-h2: clamp(1.75rem, 1.2rem + 1.8vw, 3rem);
    --type-h3: clamp(1.5rem, 1.12rem + 1.05vw, 2.25rem);
    --type-h4: clamp(1.25rem, 1.03rem + 0.75vw, 1.7rem);
    --type-h5: clamp(1.1rem, 1rem + 0.3vw, 1.35rem);
    --type-h6: clamp(1rem, 0.94rem + 0.16vw, 1.125rem);
    --type-kicker: clamp(0.95rem, 0.85rem + 0.35vw, 1.2rem);
    --type-section-title: clamp(1.9rem, 1.3rem + 1.75vw, 3.2rem);
    --type-section-summary: clamp(1.75rem, 1.2rem + 1.65vw, 3rem);
    --type-breadcrumb: clamp(1rem, 0.86rem + 0.55vw, 1.5rem);
    --type-breadcrumb-title: clamp(2rem, 1.4rem + 1.9vw, 3.5rem);
}

body {
    font-family: 'Poppins', sans-serif !important;
    font-size: var(--type-body);
    line-height: 1.625;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Poppins', sans-serif !important;
    line-height: 1.18;
}

h1 {
    font-size: var(--type-h1);
}

h2 {
    font-size: var(--type-h2);
}

h3 {
    font-size: var(--type-h3);
}

h4 {
    font-size: var(--type-h4);
}

h5 {
    font-size: var(--type-h5);
}

h6 {
    font-size: var(--type-h6);
}

p,
li,
label,
blockquote,
small {
    font-family: 'Poppins', sans-serif;
}

p,
li,
label,
blockquote {
    font-size: 1em;
    line-height: 1.625;
}

small {
    font-size: var(--type-small);
}

input,
select,
textarea,
button,
.form_control,
.nice-select {
    font-family: 'Poppins', sans-serif;
    font-size: 1rem;
    line-height: 1.4;
}

.main-menu ul li a,
.mainmenu ul li a,
.header-navigation .nav-container .main-menu ul > li > a {
    font-family: 'Poppins', sans-serif;
    font-size: var(--type-nav);
}

.section-title,
.section_title,
.section-title-one,
.section-title-two,
.section-summary {
    font-family: 'Poppins', sans-serif !important;
}

.section-title,
.section_title span,
.section-title-one span,
.section-title-two span,
.breadcrumb-txt span,
.breadcrumbs-contnet span {
    font-size: var(--type-kicker) !important;
    line-height: 1.35;
}

.section-title h1,
.section-title h2,
.section-title-two h1,
.section-title-two h2,
.section-title-one h1,
.section-title-one h2,
.section_title h1,
.section_title h2 {
    font-size: var(--type-section-title) !important;
    line-height: 1.15;
}

.section-summary {
    font-size: var(--type-section-summary) !important;
    line-height: 1.3;
}

.breadcrumb-txt h1,
.breadcrumb-txt h2,
.breadcrumbs-contnet h1 {
    font-size: var(--type-breadcrumb-title) !important;
    line-height: 1.12;
}

.breadcrumb-txt span,
.breadcrumbs-contnet span {
    font-size: var(--type-breadcrumb) !important;
}

.main-btn,
button,
input[type="submit"],
input[type="button"],
a.boxed-btn {
    font-size: var(--type-button);
}

.footer-section,
.footer-section h4,
.footer-section p,
.footer-section a {
    font-family: 'Poppins', sans-serif;
}

.feedback-area-v1 .feedback-form .rating-box {
    gap: 8px 12px;
}

.feedback-area-v1 .feedback-form .form_control,
.feedback-area-v1 .feedback-form textarea.form_control,
.feedback-area-v1 .feedback-form .nice-select,
.feedback-area-v1 .feedback-form .main-btn {
    font-size: 1rem;
}

.feedback-area-v1 .feedback-form textarea.form_control {
    line-height: 1.6;
}

@media (max-width: 767px) {
    body {
        font-size: 15px;
    }

    .main-menu ul li a,
    .mainmenu ul li a,
    .header-navigation .nav-container .main-menu ul > li > a {
        font-size: 0.95rem;
    }

    .feedback-area-v1 .feedback-form .rating-box .feedback-rating:after {
        display: none;
    }
}

@supports not (font-size: clamp(1rem, 2vw, 3rem)) {
    body {
        font-size: 16px;
    }

    h1 {
        font-size: 50px;
    }

    h2 {
        font-size: 40px;
    }

    h3 {
        font-size: 32px;
    }

    h4 {
        font-size: 26px;
    }

    h5 {
        font-size: 20px;
    }

    h6 {
        font-size: 18px;
    }
}
