/* COMMON */
.page {
    background: url("/assets/images/common/page-bg-x.png") no-repeat right top;
    background-size: 100% auto;
}

/* SECTION 1 */
.section-1 {
    height: fit-content;
}

.section-1-content {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.hero-img {
    width: 80%;
    object-fit: contain;
}

/* SECTION 2 */
.section-2-content {
    display: flex;
    padding-block: 5rem;
    align-items: center;
    justify-content: center;
}

.section-2-large-card {
    width: 70vw;
    display: flex;
    flex-direction: column;
    padding: 50px;
    border-radius: 12px;
    background-color: white;
}

.section-2-large-card > img {
    width: 48%;
    margin-inline: auto;
    object-fit: contain;
}

.section-2-large-card > p {
    font-size: 20px;
    max-width: 70%;
    margin-inline: auto;
    white-space: normal;
}

/* SECTION 3 */
.section-3-content {
    display: flex;
    align-items: center;
    flex-direction: column;
}

.section-3-content > img {
    width: 33%;
    object-fit: contain;
}

.section-form {
    width: 52%;
    display: flex;
    gap: 20px;
    margin-bottom: 70px;
    flex-direction: column;
}

.input-field {
    width: 100%;
    padding: 14px 16px;
    font-size: 16px;
    color: #1f2937;
    background-color: #ffffff;
    border: solid 1px #eceef3;
    border-radius: 4px;
    outline: none;
    box-shadow: 0px 16px 24px rgba(189, 196, 205, 0.13);
}

.input-field::placeholder {
    color: #8f8aa3;
}

.input-field:focus {
    box-shadow: 0 16px 24px rgba(189, 196, 205, 0.18);
}

.section-form > .first-row {
    display: flex;
    justify-content: space-between;
}

.section-form > .first-row .input-name {
    width: 48%;
}

.section-form > .first-row .input-phone {
    width: 42%;
}

.section-btn {
    border-radius: 7px;
    color: #232E72;
    font-size: 20px;
    line-height: 24px;
    font-weight: bold;
    padding: 15px 55px;
    background-color: white;
    border: solid 1px #333085;
}

.section-btn.gradient-btn {
    background: linear-gradient(90deg, #27A449 0%, #232176 75%);
    color: white;
    border: none;
}

.btn-div {
    width: 100%;
    display: flex;
    height: fit-content;
    justify-content: space-between;
}

.call-div {
    font-size: 20px;
    color: #8a879f;
    display: flex;
    gap: 10px;
    align-items: center;
}

.call-div a {
    color: #27954f;
}

.map-div {
    margin-inline: auto;
    width: 40%;
    margin-bottom: 100px;
    overflow: hidden;
    border-radius: 27px;
}

.map-div > img {
    width: 100%;
    margin: 0 !important;
    object-fit: contain;
}