body.mmc-site-contact-page .entry-header,
body.mmc-site-contact-page .page-header,
body.mmc-site-contact-page .entry-title { display:none !important; }

.mmc-site-contact,
.mmc-site-contact * { box-sizing:border-box; }

.mmc-site-contact {
    --contact-navy:#071d3a;
    --contact-petrol:#0c747d;
    --contact-coral:#d96647;
    --contact-ivory:#fff8ee;
    --contact-ink:#26384c;
    background:var(--mmc-color-background,#f5f6f8);
    color:var(--contact-ink);
    font-family:inherit;
    margin:0;
    overflow:hidden;
    width:100%;
}

.mmc-site-contact__hero {
    background:
        radial-gradient(circle at 82% 18%, rgba(53,173,178,.22), transparent 28%),
        linear-gradient(132deg, #061a34 0%, #0a3152 58%, #0c747d 145%);
    color:#fff;
    min-height:clamp(330px,43vw,510px);
    position:relative;
}

.mmc-site-contact__hero::after {
    background:linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px),linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px);
    background-size:44px 44px;
    content:"";
    inset:0;
    mask-image:linear-gradient(to left,#000,transparent 72%);
    opacity:.45;
    pointer-events:none;
    position:absolute;
}

.mmc-site-contact__hero-inner {
    align-items:flex-start;
    display:flex;
    flex-direction:column;
    justify-content:center;
    margin:0 auto;
    max-width:1180px;
    min-height:inherit;
    padding:64px 28px 72px;
    position:relative;
    z-index:1;
}

.mmc-site-contact__eyebrow,
.mmc-site-contact__section-label,
.mmc-site-contact__form-heading > span {
    color:#efb88a;
    font-size:13px;
    font-weight:800;
    letter-spacing:.17em;
    text-transform:uppercase;
}

.mmc-site-contact__hero h1 {
    color:#fff !important;
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(58px,9vw,112px);
    font-weight:700;
    letter-spacing:-.055em;
    line-height:.93;
    margin:20px 0 26px;
}

.mmc-site-contact__hero p {
    color:rgba(255,255,255,.87) !important;
    font-size:clamp(18px,2vw,24px);
    line-height:1.52;
    margin:0;
    max-width:730px;
}

.mmc-site-contact__content {
    display:grid;
    gap:52px;
    grid-template-columns:minmax(280px,.82fr) minmax(0,1.25fr);
    margin:0 auto;
    max-width:1180px;
    padding:82px 28px 110px;
}

.mmc-site-contact__aside { padding:18px 0; }
.mmc-site-contact__section-label,
.mmc-site-contact__form-heading > span { color:var(--contact-coral); }

.mmc-site-contact__aside h2,
.mmc-site-contact__form-heading h2 {
    color:var(--contact-navy) !important;
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(34px,4vw,52px);
    letter-spacing:-.035em;
    line-height:1.04;
    margin:14px 0 18px;
}

.mmc-site-contact__aside > p {
    color:#526173;
    font-size:17px;
    line-height:1.65;
    margin:0 0 32px;
}

.mmc-site-contact__info-card {
    align-items:flex-start;
    border-top:1px solid #e9ded0;
    display:grid;
    gap:16px;
    grid-template-columns:46px 1fr;
    padding:24px 0;
}

.mmc-site-contact__info-icon {
    align-items:center;
    background:#e8f4f2;
    border-radius:50%;
    color:var(--contact-petrol);
    display:flex;
    height:46px;
    justify-content:center;
    width:46px;
}
.mmc-site-contact__info-icon svg { fill:currentColor;height:22px;width:22px; }
.mmc-site-contact__info-card strong { color:var(--contact-navy);display:block;font-size:17px;margin-bottom:6px; }
.mmc-site-contact__info-card p { color:#617083;line-height:1.5;margin:0; }
.mmc-site-contact__privacy-note { border-left:3px solid #d8a77f;margin-top:20px !important;padding-left:16px; }

.mmc-site-contact__form-card {
    background:#fff;
    border:1px solid #e8dfd5;
    border-radius:28px;
    box-shadow:0 24px 70px rgba(7,29,58,.1);
    padding:clamp(28px,4.6vw,56px);
}

.mmc-site-contact__form-heading { margin-bottom:30px; }
.mmc-site-contact__form-heading h2 { font-size:clamp(32px,3.8vw,48px); }
.mmc-site-contact__form-heading p { color:#6a7786;margin:0; }

.mmc-site-contact-form__notice,
.mmc-site-contact-form__setup {
    border-radius:15px;
    line-height:1.5;
    margin:0 0 25px;
    padding:16px 18px;
}
.mmc-site-contact-form__notice--success { background:#e9f7ef;color:#17643d; }
.mmc-site-contact-form__notice--error { background:#fff0ef;color:#9d2d26; }
.mmc-site-contact-form__setup { background:#fff3dd;border:1px solid #f1d29d;color:#65491c; }
.mmc-site-contact-form__setup strong { display:block;font-size:17px;margin-bottom:3px; }
.mmc-site-contact-form__setup p { margin:0 0 5px; }
.mmc-site-contact-form__setup small { display:block; }
.mmc-site-contact-form fieldset { border:0;margin:0;min-width:0;padding:0; }
.mmc-site-contact-form fieldset:disabled { opacity:.48; }
.mmc-site-contact-form__grid { display:grid;gap:22px;grid-template-columns:repeat(2,minmax(0,1fr)); }
.mmc-site-contact-form__field { display:flex;flex-direction:column;gap:8px;min-width:0; }
.mmc-site-contact-form__field--wide { grid-column:1 / -1; }
.mmc-site-contact-form__field > span { color:var(--contact-navy);font-size:14px;font-weight:800; }
.mmc-site-contact-form__field > span small { color:#728094;font-weight:500; }

.mmc-site-contact-form input,
.mmc-site-contact-form select,
.mmc-site-contact-form textarea {
    appearance:none;
    background:#fffdfa;
    border:1px solid #d8dce2;
    border-radius:13px;
    color:var(--contact-navy);
    font:inherit;
    font-size:16px;
    outline:0;
    padding:14px 15px;
    transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
    width:100%;
}
.mmc-site-contact .mmc-site-contact-form select {
    background-image:linear-gradient(45deg,transparent 50%,#536174 50%),linear-gradient(135deg,#536174 50%,transparent 50%);
    background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;
    background-repeat:no-repeat;
    background-size:5px 5px,5px 5px;
    height:56px;
    line-height:1.25;
    min-height:56px;
    padding:0 42px 0 15px;
    text-overflow:ellipsis;
}
.mmc-site-contact .mmc-site-contact-form select option { color:var(--contact-navy);background:#fff; }
.mmc-site-contact-form textarea { line-height:1.55;resize:vertical; }
.mmc-site-contact-form input:focus,
.mmc-site-contact-form select:focus,
.mmc-site-contact-form textarea:focus { background:#fff;border-color:var(--contact-petrol);box-shadow:0 0 0 4px rgba(12,116,125,.12); }
.mmc-site-contact-form__field > small { color:#778496;font-size:12px; }
.mmc-site-contact-form__error { color:#b42318;display:block;font-size:13px;font-weight:700;margin-top:2px; }
.mmc-site-contact-form__error--form { background:#fff0ef;border-radius:12px;margin:-12px 0 20px;padding:12px 15px; }
.mmc-site-contact-form__consent { align-items:flex-start;color:#536174;display:flex;font-size:14px;gap:11px;line-height:1.5;margin:26px 0 0; }
.mmc-site-contact-form__consent input { appearance:auto;flex:0 0 18px;height:18px;margin:2px 0 0;padding:0;width:18px; }
.mmc-site-contact-form__consent a { color:var(--contact-petrol) !important;font-weight:800;text-decoration:underline; }
.mmc-site-contact-form__submit { align-items:center;border-top:1px solid #ebe4da;display:flex;gap:18px;justify-content:space-between;margin-top:30px;padding-top:28px; }
.mmc-site-contact-form__submit button { align-items:center;background:var(--contact-navy);border:0;border-radius:999px;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:800;gap:10px;justify-content:center;min-height:54px;padding:14px 25px;transition:background .18s ease,transform .18s ease; }
.mmc-site-contact-form__submit button:hover { background:var(--contact-petrol);transform:translateY(-1px); }
.mmc-site-contact-form__submit button svg { fill:currentColor;height:21px;width:21px; }
.mmc-site-contact-form__submit small { color:#788595;line-height:1.45;max-width:260px; }
.mmc-site-contact-form__website { height:1px;left:-10000px;overflow:hidden;position:absolute;width:1px; }

@media (max-width:820px) {
    .mmc-site-contact__hero { min-height:360px; }
    .mmc-site-contact__hero-inner { padding:54px 22px 62px; }
    .mmc-site-contact__content { gap:34px;grid-template-columns:1fr;padding:56px 18px 84px; }
    .mmc-site-contact__aside { padding:0 5px; }
    .mmc-site-contact__form-card { border-radius:22px;padding:28px 20px; }
}

@media (max-width:580px) {
    .mmc-site-contact__hero h1 { font-size:59px; }
    .mmc-site-contact__hero p { font-size:18px; }
    .mmc-site-contact-form__grid { grid-template-columns:1fr; }
    .mmc-site-contact-form__field--wide { grid-column:auto; }
    .mmc-site-contact-form__submit { align-items:stretch;flex-direction:column; }
    .mmc-site-contact-form__submit button { width:100%; }
    .mmc-site-contact-form__submit small { max-width:none;text-align:center; }
}

@media (prefers-reduced-motion:reduce) {
    .mmc-site-contact-form input,
    .mmc-site-contact-form select,
    .mmc-site-contact-form textarea,
    .mmc-site-contact-form__submit button { transition:none; }
}
