/* BFU Contact 1.0.0 — Brand Guide v3 palette: Royal Navy #1B2A4A | Aged Gold #D4A843 | Cream #FFF9ED | Navy Hover #2C4A7C. Georgia headlines, Arial body. */

/* The page's own title is replaced by our hero. */
body.page .entry-header,
body.page .entry-title { display: none; }

.bfu-contact {
    max-width: 960px;
    margin: 0 auto;
    padding: 24px 16px 64px;
    font-family: Arial, Helvetica, sans-serif;
    color: #333;
}
.bfu-contact .bfu-contact__ic svg,
.bfu-contact__phone svg { width: 22px; height: 22px; }

/* Hero */
.bfu-contact__hero {
    text-align: center;
    padding: 44px 24px 36px;
    border-radius: 20px;
    background: #FFF9ED;
    border: 1px solid rgba(212, 168, 67, .45);
    box-shadow: 0 10px 30px rgba(27, 42, 74, .08);
}
.bfu-contact__eyebrow {
    margin: 0 0 10px;
    color: #9C7A2E;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 3px;
    text-transform: uppercase;
}
.bfu-contact__title {
    margin: 0 0 12px;
    color: #1B2A4A;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(34px, 5vw, 50px);
    font-weight: 700;
    line-height: 1.1;
}
.bfu-contact__lead {
    max-width: 560px;
    margin: 0 auto 26px;
    font-size: 17px;
    line-height: 1.6;
}
.bfu-contact__phone {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 16px 30px;
    border-radius: 999px;
    background: #1B2A4A;
    color: #D4A843 !important;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(30px, 4.5vw, 42px);
    font-weight: 700;
    letter-spacing: .5px;
    text-decoration: none !important;
    box-shadow: 0 10px 26px rgba(27, 42, 74, .25);
}
.bfu-contact__phone:hover { background: #2C4A7C; }
.bfu-contact__phone svg { width: 28px; height: 28px; }
.bfu-contact__digits { margin: 10px 0 0; color: #2c4a7c; font-size: 14px; font-weight: 600; }

/* Three ways */
.bfu-contact__ways {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin: 22px 0;
}
.bfu-contact__card {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 22px;
    border-radius: 16px;
    background: #fff;
    border: 1px solid rgba(27, 42, 74, .10);
    box-shadow: 0 4px 18px rgba(27, 42, 74, .06);
    color: #333 !important;
    text-decoration: none !important;
    transition: transform .15s ease, box-shadow .15s ease;
}
.bfu-contact__card:hover { transform: translateY(-2px); box-shadow: 0 10px 26px rgba(27, 42, 74, .12); }
.bfu-contact__card strong { color: #1B2A4A; font-size: 18px; }
.bfu-contact__card > span:not(.bfu-contact__ic) { color: #1B2A4A; font-weight: 700; word-break: break-word; }
.bfu-contact__card small { color: #6b6b6b; font-size: 13px; }
.bfu-contact__ic {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    margin-bottom: 8px;
    border-radius: 50%;
    background: rgba(212, 168, 67, .18);
    color: #1B2A4A;
}

/* Hours + Lisa */
.bfu-contact__hours,
.bfu-contact__lisa {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 0 0 14px;
    padding: 16px 20px;
    border-radius: 14px;
    background: #fff;
    border-left: 4px solid #D4A843;
}
.bfu-contact__hours .bfu-contact__ic,
.bfu-contact__lisa .bfu-contact__ic { margin: 0; flex: none; }
.bfu-contact__hours p,
.bfu-contact__lisa p { margin: 0; line-height: 1.55; }

/* Form */
.bfu-contact__form-wrap {
    margin-top: 22px;
    padding: 28px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid rgba(27, 42, 74, .10);
    box-shadow: 0 4px 18px rgba(27, 42, 74, .06);
}
.bfu-contact__form-wrap h2 {
    margin: 0 0 16px;
    color: #1B2A4A;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 30px;
    font-weight: 700;
}
.bfu-contact__form { display: flex; flex-direction: column; gap: 14px; }
.bfu-contact__row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.bfu-contact__form label { display: flex; flex-direction: column; gap: 6px; color: #1B2A4A; font-weight: 700; font-size: 14px; }
.bfu-contact__form label small { color: #6b6b6b; font-weight: 500; }
.bfu-contact__form input,
.bfu-contact__form textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 12px 14px;
    border: 1px solid rgba(27, 42, 74, .2);
    border-radius: 10px;
    background: #FFFDF7;
    font: inherit;
    font-weight: 500;
    color: #333;
}
.bfu-contact__form input:focus,
.bfu-contact__form textarea:focus { outline: none; border-color: #D4A843; box-shadow: 0 0 0 3px rgba(212, 168, 67, .3); }
.bfu-contact__form button {
    align-self: flex-start;
    padding: 13px 28px;
    border: 0;
    border-radius: 999px;
    background: #1B2A4A !important;
    color: #D4A843 !important;
    font: inherit;
    font-weight: 800;
    cursor: pointer;
}
.bfu-contact__form button:hover { background: #2C4A7C !important; }
.bfu-contact__hp { position: absolute !important; left: -9999px !important; height: 0; overflow: hidden; }
.bfu-contact__note { margin: 0 0 14px; padding: 12px 16px; border-radius: 10px; font-weight: 600; }
.bfu-contact__note--ok { background: #E8F3EC; color: #1E6F42; }
.bfu-contact__note--err { background: #FCECEC; color: #B83B3B; }

@media (max-width: 760px) {
    .bfu-contact__ways { grid-template-columns: 1fr; }
    .bfu-contact__row { grid-template-columns: 1fr; }
    .bfu-contact__hero { padding: 32px 18px 28px; }
    .bfu-contact__phone { padding: 14px 22px; }
}

/* 1.0.2: the theme's heading font wins otherwise (Brand Guide v3: Georgia headlines). */
.bfu-contact h1.bfu-contact__title,
.bfu-contact .bfu-contact__form-wrap h2,
.bfu-contact .bfu-contact__phone { font-family: Georgia, 'Times New Roman', serif !important; }
.bfu-contact h1.bfu-contact__title { font-weight: 700 !important; letter-spacing: 0; }
