.psa-contact {
    --contact-blue: var(--psa-blue, #073b9a);
    --contact-cyan: var(--psa-cyan, #009fe3);
    --contact-green: var(--psa-green, #18a83d);
    --contact-orange: var(--psa-orange, #f97300);
    --contact-navy: var(--psa-navy, #061b4b);
    background: #f4f7fb;
    color: #10213d;
}

body:has(.psa-contact) .navbar-stuck-menu {
    background: #f7f9fc !important;
    border-bottom: 1px solid #e4eaf2;
    border-top: 1px solid #edf1f6;
}

body:has(.psa-contact) .navbar-stuck-menu .nav-link,
body:has(.psa-contact) .navbar-stuck-menu .nav-item button { color: #26354b !important; }
body:has(.psa-contact) .navbar-stuck-menu .__mega-nav { background: transparent !important; }

body:has(.psa-contact) .navbar-stuck-menu .category-menu-toggle-btn {
    background: linear-gradient(135deg, var(--psa-blue, #073b9a), #075aa5) !important;
    border-radius: 11px;
    color: #ffffff !important;
    justify-content: center;
    min-height: 44px;
    padding: 0.65rem 0.9rem !important;
}

body:has(.psa-contact) .search_button,
body:has(.psa-contact) .search_button .input-group-text {
    background: var(--psa-blue, #073b9a) !important;
    border-color: var(--psa-blue, #073b9a) !important;
}

body:has(.psa-contact) .navbar-tool-label { background: var(--psa-orange, #f97300) !important; }

.psa-contact__hero {
    background:
        radial-gradient(circle at 88% 15%, rgba(0, 159, 227, 0.32), transparent 28%),
        radial-gradient(circle at 72% 110%, rgba(24, 168, 61, 0.2), transparent 28%),
        linear-gradient(122deg, #041638 0%, #06357f 62%, #075ba2 100%);
    color: #ffffff;
    overflow: hidden;
    padding: clamp(2.1rem, 4.2vw, 3.85rem) 0;
    position: relative;
}

.psa-contact__hero::before {
    background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
    background-size: 72px 72px;
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
}

.psa-contact__hero-glow {
    background: linear-gradient(135deg, var(--contact-cyan), var(--contact-green));
    border-radius: 50%;
    filter: blur(110px);
    height: 300px;
    opacity: 0.2;
    position: absolute;
    right: -60px;
    top: -120px;
    width: 300px;
}

.psa-contact__hero-content {
    align-items: flex-end;
    display: flex;
    gap: 3rem;
    justify-content: space-between;
    position: relative;
}

.psa-contact__eyebrow {
    color: #8de8ff;
    display: block;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    margin-bottom: 1rem;
}

.psa-contact__hero h1 {
    color: #ffffff;
    font-size: clamp(2.5rem, 5vw, 4.8rem);
    font-weight: 800;
    letter-spacing: -0.055em;
    line-height: 1;
    margin: 0;
    max-width: 780px;
}

.psa-contact__hero p {
    color: rgba(229, 240, 255, 0.76);
    font-size: 1rem;
    line-height: 1.7;
    margin: 1.25rem 0 0;
    max-width: 650px;
}

.psa-contact__hero-promise {
    align-items: center;
    background: rgba(255,255,255,.09);
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 18px;
    display: flex;
    flex: 0 0 280px;
    gap: 0.85rem;
    padding: 1rem;
}

.psa-contact__hero-promise > i {
    align-items: center;
    background: rgba(114, 229, 143, 0.13);
    border-radius: 12px;
    color: #72e58f;
    display: flex;
    height: 44px;
    justify-content: center;
    width: 44px;
}

.psa-contact__hero-promise span { color: rgba(255,255,255,.68); display: flex; flex-direction: column; font-size: .72rem; }
.psa-contact__hero-promise strong { color: #fff; font-size: .82rem; margin-bottom: .2rem; }

.psa-contact__content {
    display: grid;
    gap: clamp(1.25rem, 3vw, 2.5rem);
    grid-template-columns: minmax(320px, .76fr) minmax(560px, 1.24fr);
    padding-bottom: clamp(3rem, 6vw, 5.5rem);
    padding-top: clamp(2rem, 5vw, 4rem);
}

.psa-contact__details,
.psa-contact__form-card {
    background: #ffffff;
    border: 1px solid #dfe7f2;
    border-radius: 26px;
    box-shadow: 0 22px 60px rgba(5, 31, 78, 0.09);
    min-width: 0;
    padding: clamp(1.5rem, 3vw, 2.6rem);
}

.psa-contact__brand {
    border: 1px solid #e0e7f0;
    border-radius: 16px;
    display: inline-flex;
    flex-direction: column;
    max-width: 235px;
    overflow: hidden;
    padding: .55rem .7rem 0;
}

.psa-contact__brand img { height: auto; max-width: 100%; }
.psa-contact__brand > span { display: grid; grid-template-columns: repeat(4,1fr); height: 4px; margin: .4rem -.7rem 0; }
.psa-contact__brand i:nth-child(1) { background: var(--contact-blue); }
.psa-contact__brand i:nth-child(2) { background: var(--contact-cyan); }
.psa-contact__brand i:nth-child(3) { background: var(--contact-green); }
.psa-contact__brand i:nth-child(4) { background: var(--contact-orange); }

.psa-contact__details-heading { margin: 2rem 0 1.5rem; }
.psa-contact__details-heading > span,
.psa-contact__form-header > span { color: var(--contact-blue); display: block; font-size: .67rem; font-weight: 800; letter-spacing: .14em; margin-bottom: .7rem; }
.psa-contact__details-heading h2,
.psa-contact__form-header h2 { color: var(--contact-navy); font-size: clamp(1.6rem, 3vw, 2.35rem); font-weight: 800; letter-spacing: -.04em; line-height: 1.12; margin: 0; }
.psa-contact__details-heading p,
.psa-contact__form-header p { color: #68758b; font-size: .82rem; line-height: 1.65; margin: .8rem 0 0; }

.psa-contact__channels { display: grid; gap: .7rem; }
.psa-contact__channels > a,
.psa-contact__channel { align-items: center; background: #f8fafc; border: 1px solid #e1e8f1; border-radius: 15px; color: #10213d; display: grid; gap: .75rem; grid-template-columns: 44px minmax(0,1fr) auto; padding: .75rem; }
.psa-contact__channels > a { transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease; }
.psa-contact__channels > a:hover,
.psa-contact__channels > a:focus-visible { border-color: #8fb7dc; box-shadow: 0 10px 22px rgba(5,31,78,.08); color: #10213d; transform: translateY(-1px); }
.psa-contact__channel-icon { align-items: center; border-radius: 12px; display: flex; height: 44px; justify-content: center; width: 44px; }
.psa-contact__channel-icon--blue { background: #eaf3ff; color: var(--contact-blue); }
.psa-contact__channel-icon--green { background: #ebf9ef; color: var(--contact-green); }
.psa-contact__channel-icon--orange { background: #fff2e8; color: var(--contact-orange); }
.psa-contact__channels span:not(.psa-contact__channel-icon) { display: flex; min-width: 0; flex-direction: column; }
.psa-contact__channels small { color: #8390a4; font-size: .58rem; font-weight: 800; letter-spacing: .1em; margin-bottom: .2rem; }
.psa-contact__channels strong { font-size: .76rem; overflow-wrap: anywhere; }

.psa-contact__security-note { align-items: flex-start; background: #effaf3; border: 1px solid #d4efdd; border-radius: 15px; color: #476654; display: flex; font-size: .7rem; gap: .7rem; line-height: 1.45; margin-top: 1.25rem; padding: .85rem; }
.psa-contact__security-note > i { color: var(--contact-green); font-size: 1.05rem; margin-top: .1rem; }
.psa-contact__security-note span { display: flex; flex-direction: column; }
.psa-contact__security-note strong { color: #245335; margin-bottom: .18rem; }

.psa-contact__form-header { margin-bottom: 1.7rem; }
.psa-contact__form .form-group { margin-bottom: .25rem; }
.psa-contact__form label { color: #283850; display: block; font-size: .76rem; font-weight: 750; margin-bottom: .5rem; }
.psa-contact__form label span { color: var(--contact-orange); }
.psa-contact__form .form-control { background: #fbfcfe; border: 1px solid #d7e0ec; border-radius: 12px; box-shadow: none; color: #10213d; min-height: 52px; padding: .75rem .9rem; transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease; }
.psa-contact__form .form-control:hover { border-color: #b4c3d8; }
.psa-contact__form .form-control:focus { background: #fff; border-color: var(--contact-cyan); box-shadow: 0 0 0 4px rgba(0,159,227,.13); }
.psa-contact__form textarea.form-control { line-height: 1.6; min-height: 145px; resize: vertical; }
.psa-contact__form .form-control::placeholder { color: #9aa6b8; }
.psa-contact__form .form-group > small { color: #8793a6; display: block; font-size: .65rem; margin-top: .4rem; }
.psa-contact__form .invalid-feedback { color: #b72f43; font-size: .7rem; }
.psa-contact__form .iti { width: 100%; }
.psa-contact__form .default-captcha-container { margin: 1.15rem 0; }

.psa-contact__error-summary { align-items: flex-start; background: #fff2f3; border: 1px solid #f2cfd4; border-radius: 14px; color: #8e3442; display: flex; font-size: .74rem; gap: .7rem; line-height: 1.45; margin-bottom: 1.4rem; padding: .85rem; }
.psa-contact__error-summary span { display: flex; flex-direction: column; }
.psa-contact__error-summary strong { color: #771f2d; }

.psa-contact__submit { align-items: center; background: linear-gradient(135deg, var(--contact-blue), #075aa5) !important; border: 0 !important; border-radius: 12px; box-shadow: 0 13px 28px rgba(7,59,154,.22); display: inline-flex; font-weight: 750; gap: .7rem; justify-content: center; min-height: 52px; padding-inline: 1.3rem; }
.psa-contact__submit:hover,
.psa-contact__submit:focus-visible { background: linear-gradient(135deg, #052d78, #064982) !important; box-shadow: 0 0 0 4px rgba(0,159,227,.16), 0 15px 30px rgba(7,59,154,.25); }

@media (max-width: 991px) {
    .psa-contact__hero-content { align-items: flex-start; flex-direction: column; gap: 1.5rem; }
    .psa-contact__hero-promise { flex-basis: auto; }
    .psa-contact__content { grid-template-columns: 1fr; }
    .psa-contact__details { order: 2; }
}

@media (max-width: 575px) {
    .psa-contact__hero { padding: 1.95rem 0; }
    .psa-contact__hero h1 { font-size: 2.45rem; }
    .psa-contact__hero-promise { width: 100%; }
    .psa-contact__content { padding-inline: 12px; }
    .psa-contact__details,
    .psa-contact__form-card { border-radius: 20px; padding: 1.35rem; }
    .psa-contact__brand { max-width: 185px; }
    .psa-contact__submit { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
    .psa-contact *, .psa-contact *::before, .psa-contact *::after { transition: none !important; }
}
