@charset "UTF-8";
/* CSS Document */

:root {
    /* Updated Color System */
    --primary: #102a43;
    --primaryLight: #1f3f5b;
    --secondary: #ff7a00;
    --secondaryLight: #ff9a33;
    --headerColor: #102a43;
    --bodyTextColor: #475569;
    --bodyTextColorWhite: #F8FAFC;

    /* Typography */
    --headerFont: 'Poppins', sans-serif;
    --bodyFont: 'Inter', sans-serif;

    /* Sizes */
    --topperFontSize: clamp(0.8125rem, 1.6vw, 1rem);
    --headerFontSize: clamp(1.9375rem, 3.9vw, 3.0625rem);
    --bodyFontSize: 1rem;

    --sectionPadding: clamp(3.75rem, 7.82vw, 6.25rem) 1rem;
}

html{
    scroll-behavior: smooth;
}

#content-1450 {
    scroll-margin-top: 96px;
}

#services-1684 {
    scroll-margin-top: 96px;
}

#reviews-2247 {
    scroll-margin-top: 96px;
}

#sbs-1461 {
    scroll-margin-top: 96px;
}

#contact-1388 {
    scroll-margin-top: 96px;
}

body {
    margin: 0;
    padding: 0;
    font-family: var(--bodyFont);

    /* Smoother font rendering */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

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

/* Top small label text */
.cs-topper {
    font-family: var(--headerFont);
    font-size: var(--topperFontSize);
    line-height: 1.2em;
    text-transform: uppercase;
    letter-spacing: .2em;
    font-weight: 600;
    color: var(--secondary);
    margin-bottom: 1.8rem;
    display: block;
}

/* Main headings */
.cs-title {
    font-family: var(--headerFont);
    font-size: var(--headerFontSize);
    font-weight: 700;
    line-height: 1.2em;
    max-width: 43.75rem;
    margin: 0 0 1.8rem 0;
    color: var(--headerColor);
}

/* Body text */
.cs-text {
    font-family: var(--bodyFont);
    font-size: var(--bodyFontSize);
    line-height: 1.6em;
    max-width: 40.625rem;
    margin: 0;
    color: var(--bodyTextColor);
}