/* Compact public intake; all optional controls retain their native fallback. */
.sp-intake.sp-smart-intake{padding:24px;border-radius:22px}
.sp-smart-intake .sp-form-intro{margin:0 0 16px;font-size:14px}
.sp-smart-context{display:inline-flex;margin:0 0 12px;padding:4px 10px;border-radius:20px;background:#f0eafa;color:#512b85;font-size:13px;font-weight:750}
.sp-smart-context[hidden]{display:none}
.sp-smart-intake .sp-smart-main{gap:12px}
.sp-smart-intake .sp-field{min-width:0;gap:5px}
.sp-smart-intake .sp-field label{font-size:13px}
.sp-smart-intake .sp-field input,.sp-smart-intake .sp-field select,.sp-smart-intake .sp-field textarea{padding:11px 12px;font-size:16px;border-radius:10px}
.sp-smart-intake .sp-smart-question textarea{min-height:84px;resize:vertical}
.sp-smart-intake .sp-smart-question [data-intake-hint]{display:none;margin:0;font-size:13px}
.sp-smart-intake .sp-smart-question:focus-within [data-intake-hint]{display:block}
.sp-smart-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}
.sp-smart-options>.sp-optional-fields{grid-column:auto;min-width:0;margin:0;padding:0;border:1px solid #85948e;border-radius:10px;background:#fff}
.sp-smart-options>.sp-optional-fields>summary{min-height:44px;padding:10px 12px;display:list-item;font-size:14px;font-weight:700;cursor:pointer}
.sp-smart-options>.sp-optional-fields>summary span{font-weight:400}
.sp-smart-options>.sp-optional-fields[open]{grid-column:1/-1}
.sp-smart-options>.sp-optional-fields[open]>summary{border-bottom:1px solid #e7e2ed}
.sp-smart-options>.sp-optional-fields>.sp-field,.sp-smart-options>.sp-optional-fields>.sp-formgrid,.sp-smart-options>.sp-optional-fields>[data-project-details]{margin:12px}
.sp-smart-intake .sp-smart-more [data-project-details]{padding:0;border:0;background:transparent}
.sp-smart-intake .sp-smart-more [data-project-details]>summary{min-height:44px;padding:8px 0;font-size:14px;cursor:pointer}
.sp-smart-intake .sp-smart-more .sp-formgrid{gap:12px}
.sp-smart-intake .sp-smart-more [data-project-details] .sp-formgrid{margin-top:8px}
.sp-smart-intake .sp-contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px}
.sp-smart-intake .sp-contact-actions>.sp-btn{flex:1;min-height:48px}
.sp-smart-intake .sp-contact-alternative{font-size:13px;margin:0}
.sp-smart-intake .sp-smart-privacy{margin:10px 0 0;font-size:12px;line-height:1.45;color:#526070}
.sp-smart-intake .sp-form-note{font-size:13px;line-height:1.45}
.sp-contact-smart .sp-pagehero{padding:28px 0 16px}
.sp-contact-smart .sp-pagehero .sp-wrap{max-width:680px}
.sp-contact-smart .sp-pagehero h1{color:var(--sp-ink);font-size:clamp(28px,5vw,38px);line-height:1.15;margin:8px 0 10px}
.sp-contact-smart .sp-pagehero p{color:#526070;font-size:16px;max-width:600px;margin:0}
.sp-contact-smart .sp-pagehero .sp-kicker{color:#512b85}
.sp-contact-smart .sp-pagehero .sp-breadcrumb,.sp-contact-smart .sp-pagehero .sp-breadcrumb a{color:#526070}
.sp-contact-smart .sp-breadcrumb{margin-bottom:12px}
.sp-contact-smart .sp-section{padding:8px 0 32px}
.sp-contact-smart .sp-contactlayout{display:block;max-width:680px}
.sp-contact-smart .sp-contactcard--compact{padding:18px 0 0;border-radius:0;background:transparent;color:var(--sp-ink);box-shadow:none}
.sp-contact-smart .sp-contactcard--compact .sp-kicker,.sp-contact-smart .sp-contactcard--compact>h2,.sp-contact-smart .sp-contactcard--compact>p:first-of-type,.sp-contact-smart .sp-contactcard__rule{display:none}
.sp-contact-smart .sp-contactcard--compact>p{display:flex;gap:8px 20px;flex-wrap:wrap;margin:0;font-size:14px}
.sp-contact-smart .sp-contactcard--compact>p br{display:none}
.sp-contact-smart .sp-contactcard--compact a{color:#512b85;text-decoration:underline}
.sp-contact-smart .sp-contactcard--compact details{margin-top:12px;font-size:13px}
.sp-contact-smart .sp-contactcard--compact details p{font-size:13px}
.sp-smart-price{max-width:680px;margin:20px auto 0;border-top:1px solid #d7d9dc;padding-top:12px}
.sp-smart-price>summary{min-height:44px;cursor:pointer;font-size:14px;font-weight:700}
.sp-smart-price>summary span{font-weight:400}
.sp-smart-price .sp-estimator{margin-top:8px}
@media(max-width:560px){
 .sp-home .sp-intake.sp-smart-intake,.sp-intake.sp-smart-intake{padding:18px}
 .sp-smart-intake .sp-smart-main{grid-template-columns:1fr;gap:10px}
 .sp-contact-smart .sp-pagehero{padding-top:20px}
 .sp-smart-intake .sp-contact-actions>.sp-btn{flex-basis:100%}
 .sp-smart-intake .sp-contact-alternative{width:100%}
}
