/* Shared inquiry details; main page compositions remain in Viewfinder. */
.client-brand { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:0 0 25px; padding-bottom:22px; border-bottom:1px solid #e2e8ec; }
.client-brand img { display:block; width:166px; height:auto; max-width:65%; }
.client-brand > span { font-size:12px; color:#536675; text-align:right; line-height:1.4; }
.lp2-form { border-radius:20px; box-shadow:0 28px 70px -40px rgba(8,40,63,.34),0 0 0 1px #e2e8ec; }
.lp2-form .client-brand { margin-bottom:24px; }
.lp2-form .client-form-title { margin:0 0 8px; font-size:28px; font-weight:550; letter-spacing:-.035em; line-height:1.15; }
.client-form-intro { margin:0 0 24px; color:#536675; font-size:14px; line-height:1.6; max-width:46ch; }
.lp2-intent { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-bottom:12px !important; }
.lp2-intent legend { margin-bottom:12px; }
.lp2-intent label { position:relative; display:flex; align-items:flex-start; gap:8px; margin:0; padding:14px 11px; min-height:88px; border-radius:12px; background:#fff; box-shadow:inset 0 0 0 1px #d6e0e6; }
.lp2-intent input { flex:0 0 17px; margin-top:2px; }
.lp2-intent label > span { font-size:14px; line-height:1.35; font-weight:600; }
.lp2-intent small { display:block; margin-top:6px; font-weight:400; font-size:12px; line-height:1.35; color:#536675; }
.lp2-intent label:has(input:checked) { background:#f2f5f7; box-shadow:inset 0 0 0 1.5px #08283f; }
.lp2-intent label:has(input:focus-visible) { outline:2px solid #08283f; outline-offset:3px; }
.lp2-form input:not([type=radio]):not([type=checkbox]),.lp2-form select,.lp2-form textarea { background:#fbfcfd; border-color:#ccd7de; }
.lp2-form .lp2-submit { background:#b94b43; min-height:56px; border-radius:12px; box-shadow:none; }
.lp2-form .lp2-submit:hover { background:#9d3d37; }
.client-audit-path { display:flex; gap:8px; justify-content:space-between; padding:0; margin:17px 0 0; list-style:none; font-size:12px; line-height:1.4; color:#536675; }
.client-audit-path li { display:flex; align-items:center; gap:6px; }
.client-audit-path b { display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; border-radius:50%; background:#f2f5f7; color:#08283f; font-size:11px; }
.lp2-form[data-kind=social]:has(input[name=intent][value="Discuss a plan"]:checked) .client-audit-path,.lp2-form[data-kind=social]:has(input[name=intent][value="Help me choose"]:checked) .client-audit-path { display:none; }
.vf-quote .inquiry-demo { border:1px solid #e2e8ec; border-radius:20px; background:#fff; padding:clamp(20px,3vw,38px); box-shadow:0 28px 70px -45px rgba(8,40,63,.3); }
.client-booking { padding:clamp(120px,13vw,180px) 0 80px; background:#f2f5f7; }
.client-booking-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); align-items:start; gap:clamp(32px,6vw,90px); }
.client-booking h1 { font-size:clamp(42px,5vw,72px); line-height:1.04; letter-spacing:-.055em; margin:0 0 24px; font-weight:500; }
.client-booking .lead { font-size:18px; line-height:1.6; max-width:35ch; color:#536675; }
.client-call-details { display:grid; gap:0; margin:32px 0; }
.client-call-details div { border-top:1px solid #d7e0e6; padding:15px 0; display:grid; grid-template-columns:100px 1fr; gap:16px; }
.client-call-details dt { color:#536675; font-size:14px; }
.client-call-details dd { margin:0; font-size:15px; }
.client-calendar-card { min-width:0; padding:clamp(20px,3vw,34px); border-radius:20px; background:#fff; border:1px solid #dce5eb; box-shadow:0 28px 70px -40px rgba(8,40,63,.25); }
.client-calendar-card h2 { margin:0 0 12px; font-size:26px; letter-spacing:-.035em; font-weight:550; }
.client-calendar-card p { color:#536675; font-size:15px; line-height:1.6; }
.client-calendar-card iframe { width:100%; height:700px; border:0; display:block; margin-top:20px; }
.client-calendar-card [hidden] { display:none; }
.client-calendar-card .btn { width:100%; justify-content:center; margin:12px 0; background:#b94b43; }
.client-calendar-card .client-calendar-note { font-size:12px; }
.client-project-form [hidden] { display:none !important; }
.client-project-form h2 { font-size:26px; line-height:1.2; letter-spacing:-.03em; margin:0 0 24px; }
.client-project-form h2:focus { outline:none; }
.client-project-form { scroll-margin-top:100px; }
.client-project-progress { display:flex; justify-content:space-between; gap:12px; color:#536675; font-size:12px; border-bottom:3px solid #e2e8ec; padding:0 0 14px; margin-bottom:28px; }
.client-project-actions { display:flex; gap:12px; margin-top:25px; }
.client-project-actions .btn-primary { flex:1; justify-content:center; background:#b94b43; }
.client-sms { display:flex; align-items:flex-start; gap:10px; color:#536675; font-size:13px; line-height:1.6; }
.client-sms input { width:18px; height:18px; flex:0 0 18px; margin-top:3px; accent-color:#b94b43; }
.client-project-form input[name=guests] { min-width:0; }
@media(max-width:1080px) { .client-booking-grid { grid-template-columns:minmax(0,1fr); } }
@media(max-width:520px) { .lp2-intent { grid-template-columns:minmax(0,1fr); gap:7px; } .lp2-intent label { min-height:0; padding:12px 14px; } .lp2-intent small { display:inline; margin-left:7px; } .client-brand { gap:10px; } .client-audit-path { flex-wrap:wrap; justify-content:flex-start; gap:9px 14px; } }
@media(prefers-reduced-motion:reduce) { .lp2-form * { transition:none; } }
