﻿#headline {
    color: #1c4494;
    font-family: Franklin Gothic Heavy;
    font-weight: bolder;
    letter-spacing: -2px;
    font-size: clamp(40px,6vw,75px);
    margin-top: -40px;
    line-height: 0.8;
}

.sub_headline {
    color: #1c4494;
    font-family: Franklin Gothic Heavy;
    font-weight: bolder;
    font-size: 40px;
    line-height: 0.8;
}

h5 {
    color: #1c4494;
    font-size: 24px;
    font-family: Segoe UI;
    text-justify: inter-word;
}

#hr_css {
    border-radius: 5px;
    opacity: 100;
    border: 10px solid;
    border-image-slice: 1;
    border-radius: 20px;
    border: 0;
    height: 2.5vw;
    width: auto;
    background-image: linear-gradient(to left,#103a8f,#b4d4ec);
    margin-top: 25px;
    margin-bottom: 25px;
}

#bg-img {
    width: 100%;
    height: 550px;
}

/* Use min-height so the section can grow on small screens instead of clipping content */
#content_2 {
    min-height: 600px;
    padding-top: 60px;
    padding-bottom: 30px;
    background-size: cover;
    background-image: url("/img/main_cover.jpg");
    margin-top: 0;
    font-family: Segoe UI;
}

.terms {
    color: #025994;
    font-weight: bold;
    text-decoration: underline;
}

.award_bg {
    width: 100%;
}

.sub_headline {
    font-size: 3.4vw;
}

.pillar_img {
    font-size: 6.2vw;
}

#content_3 {
    text-align: center;
    background-image: url('/img/award_bg.jpg');
    background-size: cover;
    height: 720px;
    width: 100%;
}

.award_img {
    width: 250px;
}

.terms_def {
    width: 800px;
}

.ccc {
    font-family: Segoe UI;
    height: 400px;
    text-align: left;
    font-size: 20px;
    color: black;
    line-height: 1;
}

.title_ {
    font-size: clamp(20px,5vw,40px);
    font-family: 'Calibri';
    color: #1c4494;
}

.subtitle_ {
    margin-top: -10px;
    font-family: 'Calibri';
    font-size: 24px;
}

.definition_ {
    line-height: 1.2;
}

#btn_submit {
    font-family: Franklin Gothic Heavy;
    width: 250px;
    color: white;
    background-color: #30a4ac;
    border-radius: 40px;
    font-size: 25px;
    float: right;
    margin-top: -20px;
    margin-right: 20px;
}

.lbls {
    color: #1c4494;
    font-weight: bold;
}

/* Ensure form container and inputs have predictable box-sizing */
*,
*::before,
*::after {
    box-sizing: border-box;
}

#hero-default {
    height: 550px;
}

#form_ {
    margin-inline: 0px;
    padding-left: 38px;
    padding-right: 38px;
}

#inputs_ {
    margin-top: 10px;
}

.message_ {
}

/* Smaller buttons for very small screens */
@media only screen and (max-width: 645px) {
    #btn_submit {
        width: 170px;
        height: 40px;
        padding: 0;
        font-size: 20px;
    }
}

/* Remove negative upward shift on message that pushed form down on narrow screens.
   Keep layout stacked naturally so the captcha + submit stay visible. */
@media only screen and (max-width: 988px) {
    .message_ {
        margin-top: 0;
    }
}

/* Make sure form doesn't get overlapped on small devices */
@media only screen and (max-width: 991px) {
    /* allow the section to expand to fit form and captcha */
    #content_2 {
        min-height: auto;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    /* ensure form aligns with page flow and has comfortable side padding */
    #form_ {
        margin-top: 0;
        padding-left: 20px; /* added - provide left spacing on mobile */
        padding-right: 20px; /* added - provide right spacing on mobile */
    }

    /* make sure bootstrap column gutters still provide spacing; add small internal gutters */
    .form-contact-texts > .col-6,
    .form-contact-texts > .col-12 {
        padding-left: 8px;
        padding-right: 8px;
    }

    /* ensure labels sit above inputs and have breathing room */
    .form-contact-texts .lbls {
        display: block;
        margin-bottom: 6px;
        padding-left: 4px;
    }

    /* center the captcha and submit button, remove float that previously pushed them out of view */
    .g-recaptcha {
        display: block;
        margin: 10px auto;
        transform-origin: 50% 50%;
    }

    #btn_submit {
        float: none;
        display: inline-block;
        margin: 18px auto 0;
        width: 220px;
        text-align: center;
    }

    /* Ensure inputs take full width inside their columns */
    .form-control {
        width: 100%;
        display: block;
    }
}

/* Small phones adjustments */
@media only screen and (max-width: 767px) {
    .form-contact-texts {
        padding-left:35px;
    }
    /* add final safe padding on very small screens, avoid negative margins */
    #form_ {
        margin-top: 0;
        padding-left: 14px;
        padding-right: 14px;
    }

    /* stack two-column fields vertically on narrow phones for readable layout */
    .form-contact-texts > .col-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }

        /* give vertical spacing between formerly side-by-side fields */
        .form-contact-texts > .col-6 + .col-6 {
            margin-top: 12px;
        }

    #btn_submit {
        width: 100%;
        max-width: 300px;
        font-size: 18px;
        border-radius: 32px;
    }

    .g-recaptcha {
        transform: scale(0.95);
        -webkit-transform: scale(0.95);
        transform-origin: 50% 50%;
    }
}
