/* Contact is a task page: light surfaces and an immediately available form. */
body:is(.pl-contact-page,.pl-careers-page) { background:#f7f9fc; color-scheme:light; }
body:is(.pl-contact-page,.pl-careers-page) main#site-content { width:100%; max-width:none; margin:0; padding:0; }
#site-content .pl-contact-layout {
 display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.25fr); gap:72px; align-items:start;
 width:100%; max-width:1264px; margin:0 auto; padding:136px 32px 80px;
 color:#45566e; font-family:'Source Sans 3',sans-serif; background:none; border:0; border-radius:0; box-shadow:none;
}
#site-content .pl-contact-layout :is(.pl-contact-intro,.pl-contact-panel) { width:100%; min-width:0; margin:0; background:none; border:0; box-shadow:none; }
#site-content .pl-contact-intro { padding:0; }
#site-content .pl-contact-intro h1 { margin:0 0 28px; color:#081a30; font-family:'Source Sans 3',sans-serif; font-size:clamp(40px,4.5vw,64px); font-weight:600; line-height:1.08; letter-spacing:-.025em; text-shadow:none; }
#site-content .pl-contact-intro p { margin:0; color:#45566e; font-size:21px; line-height:1.65; }
#site-content .pl-contact-detail > :is(p,ul) { margin-bottom:18px; }
#site-content .pl-contact-detail h2 { margin:28px 0 14px; color:#081a30; font-family:'Source Sans 3',sans-serif; font-size:26px; font-weight:600; line-height:1.25; letter-spacing:-.02em; text-shadow:none; }
#site-content .pl-contact-detail ul { padding-left:24px; color:#45566e; font-size:19px; line-height:1.6; }
#site-content .pl-contact-detail li { margin-bottom:10px; color:inherit; }
#site-content .pl-contact-detail li::marker { color:#5530bf; }
#site-content .pl-contact-detail a { color:#5530bf; text-decoration:underline; text-underline-offset:3px; }
#site-content .pl-contact-detail a:focus-visible { outline:3px solid #6d47ff; outline-offset:3px; }
#site-content .pl-contact-detail > :last-child { margin-bottom:0; }
#site-content .pl-contact-intro :is(em,i) { font-style:normal; }
#site-content .pl-contact-intro :is(strong,b,span) { color:inherit !important; }
#site-content .pl-contact-intro :is(strong,b) { font-weight:600; }
#site-content .pl-contact-layout .pl-contact-panel { padding:32px; background:#fff; border:1px solid #dde4ee; border-radius:16px; }
#site-content .pl-contact-panel .jetpack-contact-form-container {
 --jetpack--contact-form--background-color:#fff !important;
 --jetpack--contact-form--text-color:#081a30 !important;
 --jetpack--contact-form--body-text-color:#45566e !important;
 --jetpack--contact-form--border:1px solid #8393a8 !important;
 --jetpack--contact-form--border-color:#8393a8 !important;
 --jetpack--contact-form--border-radius:8px !important;
 --jetpack--contact-form--input-background:#fff !important;
 --jetpack--contact-form--input-background-fallback:#fff !important;
 --jetpack--contact-form--button-primary--background-color:#6d47ff !important;
 --jetpack--contact-form--button-primary--color:#fff !important;
 margin:0;
}
#site-content .pl-contact-panel .wp-block-jetpack-contact-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
#site-content .pl-contact-panel .grunion-field-wrap { min-width:0; margin:0; }
#site-content .pl-contact-panel :is(.grunion-field-textarea-wrap,.contact-form__error,.wp-block-button) { grid-column:1 / -1; }
#site-content .pl-contact-panel :is(label,.grunion-field-label) { display:block; margin:0 0 8px; color:#081a30 !important; font-size:17px !important; font-weight:600 !important; line-height:1.4; }
#site-content .pl-contact-panel .grunion-label-required { margin-left:6px; color:#45566e; font-size:14px; font-weight:400; }
#site-content .pl-contact-panel :is(input.grunion-field,textarea.grunion-field,select.grunion-field) {
 width:100% !important; max-width:100% !important; min-height:52px; padding:12px 14px !important;
 border:1px solid #8393a8 !important; border-radius:8px !important; background:#fff !important; color:#081a30 !important;
 font-family:'Source Sans 3',sans-serif; font-size:18px !important; line-height:1.5; box-shadow:none !important;
}
#site-content .pl-contact-panel textarea.grunion-field { height:200px; min-height:160px; resize:vertical; }
#site-content .pl-contact-panel :is(input,textarea,select,button,a):focus-visible { outline:3px solid #6d47ff; outline-offset:3px; }
#site-content .pl-contact-panel :is(input,textarea)[aria-invalid="true"] { border-color:#9e2443 !important; }
#site-content .pl-contact-panel :is(.contact-form__error,.contact-form__input-error) { color:#9e2443 !important; font-size:16px !important; line-height:1.5; }
#site-content .pl-contact-panel .contact-form__error { padding:16px; border:1px solid #e4b0bf; border-radius:8px; background:#fff4f6; }
#site-content .pl-contact-panel .contact-form__error-message { color:inherit; }
#site-content .pl-contact-panel :is(.grunion-field-wrap,.contact-form__error-message,.contact-form-submission) { scroll-margin-top:110px; }
#site-content .pl-contact-panel .contact-form__error-message:focus-visible { outline:3px solid #6d47ff; outline-offset:3px; }
#site-content .pl-contact-panel .contact-form__error a { color:#9e2443; text-decoration:underline; }
#site-content .pl-contact-panel .contact-form__warning-icon { color:#9e2443; fill:currentColor; }
#site-content .pl-contact-panel .contact-form-submission { color:#081a30 !important; font-size:18px !important; }
#site-content .pl-contact-panel .contact-form-submission :is(h4,.field-name) { color:#081a30; font-family:'Source Sans 3',sans-serif; }
#site-content .pl-contact-panel .contact-form-submission a { color:#5530bf; }
#site-content .pl-contact-panel .contact-form-submission { margin:0; padding:0; background:none; border:0; border-radius:0; box-shadow:none; scroll-margin-top:110px; }
#site-content .pl-contact-panel .contact-form-submission h4 { margin:0 0 16px; color:#081a30; font-size:28px; font-weight:600; line-height:1.25; text-shadow:none; }
#site-content .pl-contact-panel .contact-form-submission p { margin:0 0 16px; color:#45566e; font-size:19px; line-height:1.65; }
#site-content .pl-contact-panel .contact-form-submission :is(p,div):last-child { margin-bottom:0; }
#site-content .pl-contact-panel .contact-form-submission:focus-visible { outline:3px solid #6d47ff; outline-offset:6px; }
#site-content .pl-contact-panel .wp-block-button { width:100%; }
#site-content .pl-contact-panel button[type="submit"] {
 width:100%; min-height:46px; margin-top:0; padding:12px 18px !important; border:1px solid #6d47ff !important; border-radius:8px !important;
 background:#6d47ff !important; color:#fff !important; font-size:17px !important; font-weight:600; line-height:1.25;
 letter-spacing:0 !important; text-transform:none !important; box-shadow:none; transition:background-color 180ms ease;
}
#site-content .pl-contact-panel button[type="submit"]:hover { background:#5b35ed !important; border-color:#5b35ed !important; transform:none; filter:none; box-shadow:none; }
#site-content .pl-contact-panel button[type="submit"]:disabled { opacity:.65; cursor:wait; }
@media(max-width:1100px) {
 #site-content .pl-contact-layout { gap:40px; }
 #site-content .pl-contact-panel .wp-block-jetpack-contact-form { grid-template-columns:1fr; }
}
@media(max-width:900px) {
 #site-content .pl-contact-layout { grid-template-columns:1fr; gap:32px; padding:128px 24px 64px; }
 #site-content .pl-contact-intro { max-width:680px; }
 #site-content .pl-contact-layout .pl-contact-panel { padding:28px; }
 #site-content .pl-contact-panel .wp-block-jetpack-contact-form { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
 #site-content .pl-contact-layout { padding-top:112px; padding-bottom:56px; }
 #site-content .pl-contact-panel .wp-block-jetpack-contact-form { grid-template-columns:1fr; }
 #site-content .pl-contact-layout .pl-contact-panel { padding:24px; }
 #site-content .pl-contact-intro p { font-size:19px; }
}
@media(prefers-reduced-motion:reduce) { #site-content .pl-contact-panel button[type="submit"] { transition:none; } }

body.pl-careers-page #site-content .pl-contact-panel :is(.grunion-field-number-wrap,.grunion-field-select-wrap) { grid-column:1 / -1; }

/* Keep the task form first; supplementary copy follows in two calm columns. */
#site-content :is(.pl-contact-details,.pl-contact-detail) { padding:0; margin:0; background:none; border:0; border-radius:0; box-shadow:none; }
#site-content .pl-contact-details { grid-column:1 / -1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:48px; margin:0; padding-top:32px; border-top:1px solid #dde4ee; }
#site-content .pl-contact-detail { min-width:0; }
#site-content .pl-contact-detail h2 { margin-top:0; }
#site-content .pl-contact-detail p { color:#45566e; font-size:19px; line-height:1.65; }
@media(max-width:900px) { #site-content .pl-contact-details { gap:32px; } }
@media(max-width:600px) { #site-content .pl-contact-details { grid-template-columns:1fr; } }
