/* Opt-in Direct Contact presentation. Default HubSpot/preview styles are untouched. */
.ci-landing-page.advisory-contact.is-style-direct-contact,
.ci-landing-page.advisory-contact.is-style-direct-contact *,
.ci-landing-page.advisory-contact.is-style-direct-contact *::before,
.ci-landing-page.advisory-contact.is-style-direct-contact *::after { box-sizing: border-box; }
.ci-landing-page.advisory-contact.is-style-direct-contact { background: #231f20; color: #fff; padding-block: 96px; }
.advisory-contact.is-style-direct-contact .advisory-contact-direct__layout {
    display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr);
    gap: clamp(48px, 7vw, 96px); align-items: center;
}
.advisory-contact.is-style-direct-contact .advisory-contact-direct__copy { min-width: 0; }
.advisory-contact.is-style-direct-contact .advisory-eyebrow { display: block; margin: 0 0 20px; font-size: 14px; line-height: 1.25; }
.advisory-contact.is-style-direct-contact .advisory-eyebrow::before { display: none; }
.advisory-contact.is-style-direct-contact .advisory-section__heading {
    max-width: 720px; margin: 0 0 24px; padding: 0; font-size: 42px; line-height: 1.08;
    letter-spacing: -.025em; color: #fff; text-align: left; text-wrap: balance;
}
.advisory-contact.is-style-direct-contact .advisory-section__description { max-width: 520px; margin: 0; color: rgba(255,255,255,.8); font-size: 17px; line-height: 1.65; }
.advisory-contact.is-style-direct-contact .advisory-contact-direct__details {
    display: grid; gap: 14px; margin-top: 40px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.2);
}
.advisory-contact.is-style-direct-contact .advisory-contact-direct__details p { display: flex; align-items: baseline; flex-wrap: wrap; gap: 12px; margin: 0; }
.advisory-contact.is-style-direct-contact .advisory-contact-direct__details span {
    color: rgba(255,255,255,.55); font-size: 12px; font-weight: 700; line-height: 1.25; text-transform: uppercase; letter-spacing: .14em;
}
.advisory-contact.is-style-direct-contact .advisory-contact-direct__details a {
    color: rgba(255,255,255,.85); font-size: 16px; font-weight: 400; line-height: 1.4; text-decoration: none; overflow-wrap: anywhere;
}
.advisory-contact.is-style-direct-contact .advisory-contact-direct__details a:hover { color: #fff; text-decoration: underline; }
.advisory-contact.is-style-direct-contact .advisory-contact-direct__action {
    display: flex; flex-direction: column; align-items: flex-start; justify-content: center;
    gap: 20px; min-width: 0; padding-left: 64px; border-left: 1px solid rgba(255,255,255,.2);
}
.advisory-contact.is-style-direct-contact .advisory-contact-direct__button {
    display: inline-block; max-width: 100%; min-height: 54px; padding: 18px 26px; border: 0; border-radius: 6px;
    background: #51bf9d; color: #231f20; font-size: 13px; font-weight: 700; line-height: 1.35;
    letter-spacing: .14em; text-transform: uppercase; text-align: center; text-decoration: none;
    transition: background 200ms cubic-bezier(.2,.6,.2,1); overflow-wrap: anywhere;
}
.advisory-contact.is-style-direct-contact .advisory-contact-direct__button:hover { background: #43a688; color: #231f20; text-decoration: none; }
.advisory-contact.is-style-direct-contact .advisory-contact-direct__button:active { transform: translateY(1px); }
.advisory-contact.is-style-direct-contact .advisory-contact-direct__note { margin: 0; color: rgba(255,255,255,.65); font-size: 14px; line-height: 1.5; }
.advisory-contact.is-style-direct-contact a:focus-visible { outline: 3px solid #51bf9d; outline-offset: 4px; }
.advisory-contact.is-style-direct-contact .advisory-contact-direct__button:focus-visible { outline-color: #fff; }
@media (max-width: 1180px) {
    .advisory-contact.is-style-direct-contact .advisory-contact-direct__layout { grid-template-columns: minmax(0, 1fr); gap: 48px; }
    .advisory-contact.is-style-direct-contact .advisory-contact-direct__action { padding: 40px 0 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.2); }
}
@media (max-width: 991px) {
    .advisory-contact.is-style-direct-contact .advisory-section__heading { font-size: 30px; line-height: 1.15; }
}
@media (max-width: 767px) {
    .ci-landing-page.advisory-contact.is-style-direct-contact { padding-block: 64px; }
}
@media (prefers-reduced-motion: reduce) {
    .advisory-contact.is-style-direct-contact .advisory-contact-direct__button { transition: none; transform: none; }
}
