:root {
    --ag-type-body: clamp(0.95rem, 0.18vw + 0.9rem, 1rem);
    --ag-leading-body: 1.64;
    --ag-leading-heading: 1.2;
    --ag-section-space: clamp(3.15rem, 6vw, 5rem);
    --ag-section-space-sm: clamp(2.35rem, 4.5vw, 3.5rem);
    --ag-btn-radius: 0.72rem;
    --ag-btn-pad-y: 0.62rem;
    --ag-btn-pad-x: 1.08rem;
}

body {
    font-size: var(--ag-type-body);
    line-height: var(--ag-leading-body);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: var(--ag-leading-heading);
    letter-spacing: -0.01em;
}

p,
.text-muted-ag {
    line-height: 1.62;
}

.section-space {
    padding: var(--ag-section-space) 0;
}

.section-space-sm {
    padding: var(--ag-section-space-sm) 0;
}

.btn {
    border-radius: var(--ag-btn-radius);
    padding: var(--ag-btn-pad-y) var(--ag-btn-pad-x);
    font-size: 0.9rem;
    line-height: 1.22;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.btn.btn-sm {
    padding: 0.45rem 0.78rem;
    font-size: 0.79rem;
}

.btn.btn-lg {
    padding: 0.8rem 1.45rem;
    font-size: 0.98rem;
}

.btn-ag-primary {
    box-shadow: 0 10px 20px rgba(30, 86, 43, 0.18);
}

.btn-ag-outline {
    box-shadow: 0 8px 16px rgba(30, 86, 43, 0.08);
}

.home-page .section-title,
.about-page .company-intro-title,
.about-page .how-work-command-title,
.about-page .assurance-pro-title,
.about-page .location-pro-title,
.products-page .products-filter-head h2,
.ag-contact-page .ag-contact-title {
    line-height: 1.16;
    letter-spacing: -0.015em;
}

.home-page .about-main-card,
.home-page .about-side-card,
.home-page .trust-intro-panel,
.home-page .trust-signal-card,
.home-page .product-preview-shell,
.home-page .infra-head-panel,
.home-page .infra-process-card,
.home-page .maha-story-card,
.home-page .cta-pro-shell,
.about-page .company-intro-maincard,
.about-page .how-work-command-shell,
.about-page .assurance-pro-shell,
.about-page .location-pro-shell,
.about-page .execution-timeline-shell,
.products-page .products-filter-bar,
.products-page .product-card-pro,
.products-page .products-reliability-panel,
.ag-contact-page .ag-contact-panel,
.ag-contact-page .ag-form-card,
.ag-contact-page .ag-map-card,
.ag-contact-page .ag-response-card {
    border-radius: 1rem;
}

.home-page .hero-copy,
.about-page .about-hero-copy,
.products-page .product-card-desc,
.ag-contact-page .ag-contact-lead,
.ag-contact-page .ag-form-copy {
    line-height: 1.64;
}

@media (max-width: 991.98px) {
    .btn {
        font-size: 0.88rem;
    }

    .btn.btn-lg {
        font-size: 0.94rem;
        padding: 0.72rem 1.18rem;
    }

    .home-page .hero-title,
    .products-page .products-slide-title,
    .about-page .about-hero-title,
    .about-page .about-hero-b-title,
    .ag-contact-page .ag-contact-title {
        line-height: 1.14;
    }
}

@media (max-width: 575.98px) {
    :root {
        --ag-section-space: clamp(2.4rem, 7.5vw, 3rem);
        --ag-section-space-sm: clamp(1.95rem, 6.5vw, 2.5rem);
    }

    .btn {
        font-size: 0.84rem;
        padding: 0.52rem 0.85rem;
    }

    .btn.btn-lg {
        padding: 0.64rem 1rem;
        font-size: 0.89rem;
    }
}

