/* =========================================================
   WELCOME OVEN
   CONTACT PAGE
   ========================================================= */


/* =========================================================
   HERO
   ========================================================= */

.wo-contact-hero {

    padding: 110px 0;

    background: #0F4C81;

}


.wo-contact-hero-content {

    max-width: 800px;

}


.wo-contact-hero .wo-section-eyebrow {

    color: #F58220;

}


.wo-contact-hero h1 {

    margin: 15px 0 25px;

    color: #FFFFFF;

}


.wo-contact-hero h1 span {

    display: block;

    color: #F58220;

}


.wo-contact-hero p {

    max-width: 720px;

    color: rgba(255,255,255,0.88);

    line-height: 1.8;

    font-size: 18px;

}


/* =========================================================
   CONTACT DETAILS
   ========================================================= */

.wo-contact-details {

    padding: 90px 0;

    background: #FFFFFF;

}


.wo-contact-section-header {

    max-width: 750px;

    margin: 0 auto 50px;

    text-align: center;

}


.wo-contact-section-header h2 {

    margin: 15px 0;

}


.wo-contact-section-header h2 span {

    color: #0F4C81;

}


.wo-contact-details-grid {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 25px;

}


.wo-contact-card {

    padding: 35px;

    text-align: center;

    text-decoration: none;

    background: #F5F7FA;

    border: 1px solid #D9DEE5;

    border-radius: 12px;

    transition: 0.25s ease;

}


.wo-contact-card:hover {

    transform: translateY(-4px);

    border-color: #0F4C81;

    box-shadow: 0 10px 30px rgba(15,76,129,0.08);

}


.wo-contact-card-icon {

    width: 60px;
    height: 60px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin: 0 auto 20px;

    border-radius: 50%;

    background: #0F4C81;

    color: #FFFFFF;

    font-size: 22px;

}


.wo-contact-card span {

    display: block;

    margin-bottom: 8px;

    color: #3E4651;

    font-size: 14px;

}


.wo-contact-card strong {

    display: block;

    color: #1A1A1A;

}


/* =========================================================
   MAIN CONTACT
   ========================================================= */

.wo-contact-main {

    padding: 100px 0;

    background: #F5F7FA;

}


.wo-contact-main-grid {

    display: grid;

    grid-template-columns: 0.9fr 1.1fr;

    gap: 70px;

    align-items: start;

}


.wo-contact-information h2 {

    margin: 15px 0 20px;

}


.wo-contact-information h2 span {

    display: block;

    color: #0F4C81;

}


.wo-contact-information > p {

    margin-bottom: 35px;

    color: #3E4651;

    line-height: 1.8;

}


.wo-contact-address,
.wo-contact-phone,
.wo-contact-email {

    display: flex;

    gap: 18px;

    margin-bottom: 28px;

}


.wo-contact-address > i,
.wo-contact-phone > i,
.wo-contact-email > i {

    flex-shrink: 0;

    color: #F58220;

    font-size: 21px;

}


.wo-contact-address strong,
.wo-contact-phone strong,
.wo-contact-email strong {

    display: block;

    margin-bottom: 7px;

}


.wo-contact-address p {

    margin: 0;

    color: #3E4651;

    line-height: 1.7;

}


.wo-contact-phone a,
.wo-contact-email a {

    display: block;

    margin-bottom: 4px;

    color: #0F4C81;

    text-decoration: none;

}


/* =========================================================
   FORM
   ========================================================= */

.wo-contact-form-wrapper {

    padding: 45px;

    background: #FFFFFF;

    border: 1px solid #D9DEE5;

    border-radius: 12px;

}


.wo-contact-form-wrapper h2 {

    margin: 15px 0;

}


.wo-contact-form-wrapper h2 span {

    color: #0F4C81;

}


.wo-contact-form-wrapper > p {

    margin-bottom: 30px;

    color: #3E4651;

}


.wo-form-row {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px;

}


.wo-form-group {

    margin-bottom: 20px;

}


.wo-form-group label {

    display: block;

    margin-bottom: 8px;

    color: #1A1A1A;

    font-size: 14px;

    font-weight: 500;

}


.wo-form-group input,
.wo-form-group select,
.wo-form-group textarea {

    width: 100%;

    padding: 14px 16px;

    border: 1px solid #D9DEE5;

    border-radius: 8px;

    background: #FFFFFF;

    color: #1A1A1A;

    font: inherit;

    transition: border-color 0.2s ease,
                box-shadow 0.2s ease;

}


.wo-form-group input:focus,
.wo-form-group select:focus,
.wo-form-group textarea:focus {

    outline: none;

    border-color: #0F4C81;

    box-shadow: 0 0 0 3px rgba(15,76,129,0.08);

}


.wo-form-group textarea {

    resize: vertical;

}


.wo-contact-form .ntl-btn {

    width: 100%;

}


/* =========================================================
   MAP
   ========================================================= */

.wo-contact-map {

    padding: 100px 0;

    background: #FFFFFF;

}


.wo-map-wrapper {

    overflow: hidden;

    border-radius: 12px;

    border: 1px solid #D9DEE5;

}


.wo-map-placeholder {

    min-height: 420px;

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    background: #F5F7FA;

    color: #3E4651;

}


.wo-map-placeholder i {

    margin-bottom: 15px;

    color: #F58220;

    font-size: 42px;

}


/* =========================================================
   FAQ
   ========================================================= */

.wo-contact-faq {

    padding: 100px 0;

    background: #F5F7FA;

}


.wo-contact-faq-list {

    max-width: 900px;

    margin: 0 auto;

}


.wo-contact-faq details {

    padding: 22px 25px;

    margin-bottom: 12px;

    background: #FFFFFF;

    border: 1px solid #D9DEE5;

    border-radius: 8px;

}


.wo-contact-faq summary {

    cursor: pointer;

    color: #1A1A1A;

    font-weight: 600;

}


.wo-contact-faq details p {

    margin: 15px 0 0;

    color: #3E4651;

    line-height: 1.7;

}


/* =========================================================
   CTA
   ========================================================= */

.wo-contact-cta {

    padding: 85px 0;

    background: #0F4C81;

}


.wo-contact-cta-inner {

    text-align: center;

}


.wo-contact-cta .wo-section-eyebrow {

    color: #F58220;

}


.wo-contact-cta h2 {

    max-width: 800px;

    margin: 15px auto;

    color: #FFFFFF;

}


.wo-contact-cta p {

    margin-bottom: 30px;

    color: rgba(255,255,255,0.82);

}