/* All content remains in native WordPress blocks; only Contact uses these rules. */
body.scc-contact:has(.scc-page) { background:#fcfbf8; }
.scc-contact:has(.scc-page) .entry-hero { display:none; }
.scc-contact:has(.scc-page) #primary { margin:0; }
.scc-contact:has(.scc-page) #primary .content-container { max-width:1340px; padding:0 40px; }
.scc-contact:has(.scc-page) #post-2394 { background:transparent; box-shadow:none; border-radius:0; margin:0; }
.scc-contact:has(.scc-page) #post-2394 .entry-content-wrap { padding:0; }
.scc-page { --scc-ink:#25212b; --scc-plum:#51445c; --scc-muted:#67616b; --scc-line:#d7d0d8; color:var(--scc-ink); font-family:Arial,sans-serif; font-size:17px; line-height:1.6; padding:22px 0 36px; }
.scc-page > *, .scc-page .wp-block-column > * { margin-block:0; }
.scc-page .scc-breadcrumb { font-size:13px; color:var(--scc-muted); margin:0 0 34px; }
.scc-page .scc-breadcrumb a { color:inherit; text-decoration:none; }
.scc-page .scc-breadcrumb a:hover { text-decoration:underline; }
.scc-page .scc-hero { display:flex; align-items:center!important; gap:44px; margin:0 0 38px; }
.scc-page .scc-hero > .wp-block-column { min-width:0; }
.scc-page .scc-eyebrow { color:var(--scc-plum); font-size:12px; font-weight:600; letter-spacing:.13em; margin-bottom:12px; }
.scc-page .scc-hero h1 { font:400 clamp(42px,5.2vw,70px)/1.04 Georgia,serif; letter-spacing:-.055em; color:var(--scc-ink); margin:0 0 22px; }
.scc-page .scc-intro { font-size:20px; line-height:1.5; color:var(--scc-muted); max-width:490px; margin:0 0 26px; }
.scc-page .scc-chat .wp-block-button__link { background:var(--scc-plum); color:#fff; border:1px solid var(--scc-plum); border-radius:3px; padding:15px 30px; font:400 22px/1.3 Georgia,serif; letter-spacing:0; text-transform:none; box-shadow:none; }
.scc-page .scc-chat .wp-block-button__link:hover { background:#40354a; border-color:#40354a; }
.scc-page a:focus-visible, .scc-page summary:focus-visible, .scc-page input:focus-visible, .scc-page textarea:focus-visible { outline:2px solid var(--scc-plum); outline-offset:4px; }
.scc-page .scc-chat-note { font-size:13px; color:var(--scc-muted); line-height:1.6; margin:16px 0 0; }
.scc-page .scc-brand { color:var(--scc-muted); font-size:14px; line-height:1.6; margin:30px 0 0; }
.scc-page .scc-brand::before { content:""; display:block; width:44px; border-top:1px solid #afa5b5; margin-bottom:14px; }
.scc-page .scc-photo { margin:0; }
.scc-page .scc-photo img { display:block; width:100%; aspect-ratio:1.38; height:auto; object-fit:cover; object-position:right center; border-radius:2px; }
.scc-page .scc-connect { border-top:1px solid var(--scc-line); padding:22px 0 26px; margin:0; }
.scc-page h2 { color:var(--scc-ink); font:400 34px/1.2 Georgia,serif; letter-spacing:-.025em; margin:0 0 20px; }
.scc-page ul.scc-links { display:flex; flex-wrap:wrap; align-items:center; gap:12px 28px; padding:0; margin:0; }
.scc-page .scc-links .wp-social-link { color:var(--scc-plum); margin:0; font-size:30px; }
.scc-page .scc-links .wp-social-link a { color:inherit; min-height:48px; padding:4px 0; gap:10px; text-decoration:none; }
.scc-page .scc-links .wp-social-link-label { color:var(--scc-ink); font:400 15px/1.5 Arial,sans-serif; }
.scc-page .scc-message { border-block:1px solid var(--scc-line); padding:0; margin:0; }
.scc-page .scc-message summary { cursor:pointer; list-style:none; font-size:16px; padding:20px 32px 20px 0; position:relative; }
.scc-page .scc-message summary::-webkit-details-marker { display:none; }
.scc-page .scc-message summary::after { content:"+"; position:absolute; right:4px; top:15px; font:300 26px/1.5 Arial,sans-serif; color:var(--scc-plum); }
.scc-page .scc-message[open] summary::after { content:"−"; }
.scc-page .scc-message > p { color:var(--scc-muted); font-size:15px; margin:0 0 20px; max-width:720px; }
.scc-page .scc-message .kb-form-wrap { max-width:760px; margin:0 auto 22px; }
.scc-page .kb-form .kadence-blocks-form-field :is(input:not([type="submit"]),textarea) { background:#fff!important; color:#25212b!important; border:1px solid #bfb7c3!important; border-radius:3px!important; }
.scc-page .kb-form .kadence-blocks-form-field label { color:#514b55!important; font-size:14px!important; letter-spacing:0!important; text-transform:none!important; }
.scc-page .kb-form .kadence-blocks-form-field .kb-forms-submit { background:var(--scc-plum)!important; color:#fff!important; border-radius:3px!important; border:1px solid var(--scc-plum)!important; letter-spacing:0!important; text-transform:none!important; font-size:16px!important; }
.scc-contact .sc-form-privacy-note { color:#67616b; font-size:13px; max-width:760px; margin:20px auto; padding:0; }
.scc-page .scc-policies { display:flex; flex-wrap:wrap; justify-content:center; gap:10px 24px; margin:22px 0 0; }
.scc-page .scc-policies .wp-block-button__link { padding:6px 0; border:0; border-radius:0; background:none; box-shadow:none; color:var(--scc-muted); font:400 13px/1.6 Arial,sans-serif; letter-spacing:0; text-transform:none; }
.scc-page .scc-policies .wp-block-button__link:hover { color:var(--scc-plum); text-decoration:underline; }
.scc-page .scc-chat-status { color:var(--scc-muted); font-size:14px; margin:10px 0 0; }
.scc-page .scc-chat-status:empty { display:none; }
@media(max-width:900px) { .scc-contact:has(.scc-page) #primary .content-container { padding:0 24px; } .scc-page .scc-hero { gap:28px; } .scc-page .scc-intro { font-size:18px; } .scc-page .scc-hero h1 { font-size:48px; } }
@media(max-width:781px) { .scc-page { padding-top:18px; } .scc-page .scc-breadcrumb { margin-bottom:26px; } .scc-page .scc-hero { flex-direction:column; align-items:stretch!important; gap:28px; margin-bottom:28px; } .scc-page .scc-hero h1 { font-size:clamp(38px,8.9vw,58px); } .scc-page .scc-intro { font-size:18px; max-width:560px; margin-bottom:22px; } .scc-page .scc-brand { margin-top:22px; } .scc-page .scc-photo img { aspect-ratio:1.6; } .scc-page h2 { font-size:29px; } .scc-page ul.scc-links { gap:8px 22px; } .scc-page .scc-connect { padding-block:20px; } }
@media(max-width:380px) { .scc-contact:has(.scc-page) #primary .content-container { padding:0 18px; } .scc-page .scc-intro { font-size:17px; } .scc-page .scc-policies { justify-content:flex-start; gap:4px 20px; } }

/* Preserve readable policy text on the light contact form. */
.scc-contact .sc-form-privacy-note p { color:#67616b; font-size:13px; line-height:1.6; }
.scc-contact .sc-form-privacy-note a { color:#51445c; text-decoration:underline; }
@media(max-width:380px) { .scc-page h2 { font-size:26px; } }
