html.six-contact-modal-open { overflow: hidden; scrollbar-gutter: stable; }
.six-contact-modal { --six-contact-primary: var(--six-brand-primary, #ef7d00); width: min(960px, calc(100% - 32px)); max-width: none; max-height: calc(100dvh - 40px); padding: 0; margin: auto; border: 1px solid #dedbd5; border-radius: 24px; background: #fff; color: #2b2b2b; box-shadow: 0 24px 90px rgb(0 0 0 / 25%); overflow: hidden; opacity: 0; transform: translateY(18px) scale(.985); transition: opacity .22s ease, transform .22s ease; }
.six-contact-modal[open].is-visible { opacity: 1; transform: translateY(0) scale(1); }
.six-contact-modal::backdrop { background: rgb(19 21 24 / 64%); backdrop-filter: blur(3px); opacity: 0; transition: opacity .22s ease; }
.six-contact-modal.is-visible::backdrop { opacity: 1; }
.six-contact-modal *, .six-contact-modal *::before, .six-contact-modal *::after { box-sizing: border-box; }
.six-contact-modal [hidden] { display: none !important; }
.six-contact-modal__layout { display: grid; grid-template-columns: minmax(0, .86fr) minmax(0, 1.4fr); max-height: inherit; overflow-y: auto; overscroll-behavior: contain; }
.six-contact-modal__intro { padding: 38px 30px; background: #191b1f; color: #fff; display: flex; flex-direction: column; }
.six-contact-modal .six-contact-modal__eyebrow { color: var(--six-contact-primary); margin: 0 0 26px; font-size: 12px; font-weight: 600; line-height: 1.5; letter-spacing: .13em; }
.six-contact-modal__graphic { display: block; width: 100%; height: auto; margin: 0 0 30px; }
.six-contact-modal h2 { margin: 0 0 20px; font-size: clamp(26px, 2.4vw, 34px); font-weight: 600; letter-spacing: -.035em; line-height: 1.25; color: #fff; }
.six-contact-modal h2 span { color: var(--six-contact-primary); }
/* The heading receives programmatic focus when the dialog opens. */
.six-contact-modal h2:focus, .six-contact-modal h2:focus-visible { outline: none; box-shadow: none; }
.six-contact-modal .six-contact-modal__lead { margin: 0; color: #d3d3d2; font-size: 14px; line-height: 1.85; }
.six-contact-modal__topics { list-style: none; margin: 28px 0; padding: 0; }
.six-contact-modal__topics li { display: flex; align-items: flex-start; gap: 10px; padding: 13px 0; border-top: 1px solid #3c3e40; font-size: 13px; line-height: 1.65; }
.six-contact-modal__topics svg { width: 18px; height: 18px; flex: 0 0 18px; margin-top: 2px; color: var(--six-contact-primary); }
.six-contact-modal__direct { margin-top: auto; padding-top: 8px; }
.six-contact-modal__direct span { display: block; color: #c1c1bf; font-size: 12px; line-height: 1.6; margin-bottom: 5px; }
.six-contact-modal__direct a { display: inline-flex; align-items: center; gap: 10px; color: #fff; font-size: 17px; line-height: 1.5; font-weight: 600; text-decoration: none; }
.six-contact-modal__direct a svg { width: 21px; height: 21px; flex: 0 0 21px; color: var(--six-contact-primary); }
.six-contact-modal__body { padding: 38px 32px 30px; min-width: 0; }
.six-contact-modal__body > h3 { margin: 0 36px 10px 0; font-size: 25px; line-height: 1.35; font-weight: 600; letter-spacing: -.03em; color: #2b2b2b; }
.six-contact-modal .six-contact-modal__description { margin: 0 0 24px; color: #606060; font-size: 14px; line-height: 1.75; }
.six-contact-modal__close { position: absolute; z-index: 2; top: 10px; right: 10px; display: grid; place-items: center; width: 44px; height: 44px; padding: 11px; border: 0; border-radius: 50%; background: #fff; color: #4b4b4b; cursor: pointer; transition: background-color .18s ease, color .18s ease; -webkit-tap-highlight-color: transparent; }
.six-contact-modal__close svg { width: 22px; height: 22px; }
.six-contact-modal__close:hover { background: #f0eeea; color: #2b2b2b; }
.six-contact-modal__close:focus:not(:focus-visible) { outline: none; box-shadow: none; }
.six-contact-modal button:focus-visible, .six-contact-modal a:focus-visible { outline: 2px solid var(--six-contact-primary); outline-offset: 4px; }
.six-contact-modal__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.six-contact-modal__fields .form-group { margin: 0; min-width: 0; }
.six-contact-modal__full { grid-column: 1 / -1; }
.six-contact-modal .form-label { display: block; margin: 0 0 7px; font-size: 13px; font-weight: 600; line-height: 1.5; color: #383838; }
.six-contact-modal .form-required-label { color: var(--six-contact-primary); }
.six-contact-modal .form-control { width: 100%; min-width: 0; min-height: 46px; border: 1px solid #dcd8d1; border-radius: 10px; padding: 11px 12px; background: #fff; color: #2b2b2b; font-size: 16px; line-height: 1.5; box-shadow: none; transition: border-color .18s ease, box-shadow .18s ease; }
.six-contact-modal .form-control::placeholder { color: #85817b; opacity: 1; font-size: 14px; }
.six-contact-modal .form-control:focus { border-color: var(--six-contact-primary); outline: none; box-shadow: 0 0 0 3px rgb(239 125 0 / 12%); }
.six-contact-modal textarea.form-control { min-height: 128px; resize: vertical; }
.six-contact-modal .form-control.is-invalid { border-color: #b64235; background-image: none; }
.six-contact-modal .form-field-feedback { font-size: 12px; line-height: 1.6; }
.six-contact-modal .form-field-feedback ul { padding-left: 18px; margin: 6px 0 0; }
.six-contact-modal__privacy { margin: 20px 0; color: #66625d; font-size: 12px; line-height: 1.75; }
.six-contact-modal__privacy p { margin: 0; font: inherit; color: inherit; }
.six-contact-modal__privacy a { color: #3e3c38; text-decoration: underline; text-underline-offset: 3px; }
.six-contact-modal__privacy-choice { display: flex; align-items: flex-start; gap: 10px; }
.six-contact-modal__privacy-choice input { flex: 0 0 18px; width: 18px; height: 18px; margin-top: 3px; accent-color: var(--six-contact-primary); }
.six-contact-modal__submit-row { display: flex; flex-direction: column; gap: 12px; }
.six-contact-modal__required { color: #77716a; font-size: 12px; line-height: 1.5; }
.six-contact-modal__submit { display: inline-flex; justify-content: center; align-items: center; gap: 18px; width: 100%; min-height: 52px; padding: 13px 22px; border: 1px solid var(--six-contact-primary); border-radius: 999px; background: var(--six-contact-primary); color: #fff; font-size: 16px; line-height: 1.5; font-weight: 600; cursor: pointer; transition: box-shadow .18s ease, transform .18s ease; }
.six-contact-modal__submit:disabled { cursor: wait; opacity: .78; }
.six-contact-modal__send-icon { width: 19px; height: 19px; flex: 0 0 19px; }
.six-contact-modal__send-icon svg { width: 100%; height: 100%; display: block; }
.six-contact-modal form[aria-busy="true"] .six-contact-modal__send-icon { border: 2px solid rgb(255 255 255 / 35%); border-top-color: #fff; border-radius: 50%; animation: six-contact-spin .75s linear infinite; }
.six-contact-modal form[aria-busy="true"] .six-contact-modal__send-icon svg { display: none; }
.six-contact-modal__status { margin: 0 0 20px; padding: 20px; border: 1px solid #dcd8d1; border-radius: 14px; background: #f8f7f4; color: #3e3b37; font-size: 14px; line-height: 1.75; outline: none; }
.six-contact-modal__status[data-state="error"] { background: #fff5f3; border-color: #ecc3bc; color: #84392f; }
.six-contact-modal__status[data-state="success"] { padding: clamp(32px, 4vw, 48px) clamp(20px, 3vw, 36px); border-color: #dce9df; border-radius: 20px; background: #f8fbf8; text-align: center; }
.six-contact-modal__status h4 { margin: 0 0 10px; font-size: 23px; line-height: 1.4; font-weight: 600; }
.six-contact-modal__status p { margin: 0; color: inherit; font: inherit; white-space: pre-line; }
/* Success feedback: a prominent green check with centered confirmation text. */
.six-contact-modal__status[data-state="success"] svg { display: block; width: 88px; height: 88px; margin: 0 auto 26px; color: #23854b; }
.six-contact-modal__status[data-state="success"] svg circle { fill: #eaf5ee; stroke: #bfdcc9; stroke-width: 1.3; }
.six-contact-modal__status[data-state="success"] svg path { stroke-width: 2.5; }
.six-contact-modal__status[data-state="success"] h4 { max-width: 25ch; margin: 0 auto 14px; font-size: clamp(23px, 2.2vw, 28px); line-height: 1.35; }
.six-contact-modal__status[data-state="success"] p { max-width: 43ch; margin-inline: auto; font-size: 15px; line-height: 1.8; }
.six-contact-modal__status:focus, .six-contact-modal__status:focus-visible { outline: none; box-shadow: none; }
@keyframes six-contact-spin { to { transform: rotate(360deg); } }
@media (hover: hover) { .six-contact-modal__submit:not(:disabled):hover { transform: translateY(-1px); box-shadow: 0 6px 18px rgb(239 125 0 / 20%); } }
@media (max-width: 767px) {
 .six-contact-modal { width: calc(100% - 24px); max-height: calc(100dvh - 24px); border-radius: 20px; }
 .six-contact-modal__layout { grid-template-columns: minmax(0, 1fr); }
 .six-contact-modal__intro { padding: 26px 24px 24px; }
 .six-contact-modal .six-contact-modal__eyebrow { margin: 0 44px 14px 0; }
 .six-contact-modal h2 { margin: 0; font-size: 27px; line-height: 1.25; }
 .six-contact-modal__graphic, .six-contact-modal__lead, .six-contact-modal__topics, .six-contact-modal__direct { display: none; }
 .six-contact-modal__close { background: #22252b; color: #fff; }
 .six-contact-modal__close:hover { background: #34373c; color: #fff; }
 .six-contact-modal__body { padding: 24px; }
 .six-contact-modal__body > h3 { margin-right: 0; font-size: 23px; }
}
@media (max-width: 479px) { .six-contact-modal__fields { grid-template-columns: minmax(0, 1fr); gap: 16px; } .six-contact-modal__intro, .six-contact-modal__body { padding-inline: 20px; } }
@media (prefers-reduced-motion: reduce) { .six-contact-modal, .six-contact-modal::backdrop, .six-contact-modal button, .six-contact-modal .form-control { transition: none; } .six-contact-modal form[aria-busy="true"] .six-contact-modal__send-icon { animation: none; } }
