/* Consultation Request — isolated page styling. */
.site-main--consultation-request { min-height: 50vh; }
.vj-consultation-request { background: var(--vj-color-bg, #f8f7f4); color: var(--vj-color-ink, #171717); }
.vj-cr-hero { padding-block: clamp(5rem, 9vw, 8rem); border-bottom: 1px solid rgba(23,23,23,.12); }
.vj-cr-hero__grid, .vj-cr-intro-grid, .vj-cr-form-layout { display:grid; grid-template-columns: minmax(0,1.1fr) minmax(280px,.9fr); gap: clamp(2.5rem,6vw,6rem); align-items:center; }
.vj-cr-hero__copy { max-width: 46rem; }
.vj-cr-hero h1 { margin: .7rem 0 1.3rem; font-size: clamp(2.4rem,4.5vw,4.7rem); line-height: 1.18; letter-spacing:-.02em; }
.vj-cr-hero__lead { max-width: 42rem; font-size: 1.08rem; line-height:1.9; color: rgba(23,23,23,.72); }
.vj-cr-hero__signal { justify-self:end; width:min(100%,360px); padding:2rem; background:#171717; color:#f8f7f4; border-radius:18px; }
.vj-cr-hero__signal-label, .vj-cr-hero__signal strong, .vj-cr-hero__signal p { display:block; }
.vj-cr-hero__signal strong { margin-top:.55rem; font-size:1.35rem; line-height:1.45; }
.vj-cr-hero__signal p { margin:1rem 0 0; color:rgba(248,247,244,.72); line-height:1.8; }
.vj-cr-section { padding-block: clamp(4.5rem,8vw,7rem); }
.vj-cr-section--plain { background:#fff; }
.vj-cr-section--muted { background:#ece9e1; }
.vj-cr-section--form { background:#f8f7f4; }
.vj-cr-intro-grid h2, .vj-cr-section-head h2 { margin:.55rem 0 1.2rem; font-size:clamp(2rem,3.6vw,3.25rem); line-height:1.25; }
.vj-cr-fit-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.vj-cr-fit-card { padding:1.5rem; border:1px solid rgba(23,23,23,.14); border-radius:14px; background:#fff; }
.vj-cr-fit-card.is-positive { border-color:rgba(146,90,61,.45); }
.vj-cr-fit-card > span { display:inline-flex; width:32px; height:32px; align-items:center; justify-content:center; border-radius:50%; border:1px solid rgba(23,23,23,.16); font-size:1.05rem; }
.vj-cr-fit-card h3 { margin:1rem 0 .65rem; font-size:1.15rem; }
.vj-cr-fit-card p { margin:0; line-height:1.8; color:rgba(23,23,23,.72); }
.vj-cr-form-layout { align-items:start; }
.vj-cr-form-aside { position:sticky; top:7rem; }
.vj-cr-form-aside h2 { margin:.5rem 0 1rem; font-size:clamp(2rem,3.5vw,3.2rem); line-height:1.25; }
.vj-cr-form-aside > p { max-width:30rem; line-height:1.85; color:rgba(23,23,23,.7); }
.vj-cr-form-steps { margin-top:2rem; display:grid; gap:.75rem; }
.vj-cr-form-steps span { display:flex; align-items:center; gap:.8rem; color:rgba(23,23,23,.7); }
.vj-cr-form-steps b { display:inline-flex; width:34px; height:34px; align-items:center; justify-content:center; border:1px solid rgba(23,23,23,.15); border-radius:50%; font-size:.8rem; }
.vj-cr-form-card { padding: clamp(1.5rem,3vw,3rem); background:#fff; border:1px solid rgba(23,23,23,.12); border-radius:18px; box-shadow:0 16px 40px rgba(23,23,23,.06); }
.vj-cr-form fieldset { margin:0; padding:0; border:0; }
.vj-cr-form fieldset + fieldset { margin-top:2.2rem; padding-top:2.2rem; border-top:1px solid rgba(23,23,23,.1); }
.vj-cr-form legend { margin-bottom:1.1rem; font-size:1.15rem; font-weight:700; }
.vj-cr-fields { display:grid; gap:1rem; }
.vj-cr-fields--two { grid-template-columns:1fr 1fr; }
.vj-cr-fields__wide { grid-column:1 / -1; }
.vj-form-field { margin:0; }
.vj-form-field label { display:block; margin-bottom:.5rem; font-size:.94rem; font-weight:600; }
.vj-form-field input, .vj-form-field textarea { width:100%; box-sizing:border-box; padding:.85rem 1rem; border:1px solid rgba(23,23,23,.18); border-radius:10px; background:#fff; color:#171717; font:inherit; line-height:1.6; }
.vj-form-field textarea { resize:vertical; min-height:7rem; }
.vj-form-field input:focus-visible, .vj-form-field textarea:focus-visible, .vj-cr-check input:focus-visible, .vj-cr-consent input:focus-visible { outline:3px solid rgba(146,90,61,.22); outline-offset:2px; border-color:#925a3d; }
.vj-cr-checks { display:flex; flex-wrap:wrap; gap:.65rem; }
.vj-cr-check { position:relative; }
.vj-cr-check input { position:absolute; opacity:0; pointer-events:none; }
.vj-cr-check span { display:inline-flex; padding:.55rem .85rem; border:1px solid rgba(23,23,23,.14); border-radius:999px; cursor:pointer; transition:background .15s ease,border-color .15s ease; }
.vj-cr-check input:checked + span { background:#171717; border-color:#171717; color:#f8f7f4; }
.vj-cr-consent { display:flex; align-items:flex-start; gap:.75rem; line-height:1.8; color:rgba(23,23,23,.8); }
.vj-cr-consent input { margin-top:.35rem; }
.vj-cr-submit { margin-top:1.6rem; min-width:16rem; }
.vj-cr-form-note { margin:.8rem 0 0; font-size:.84rem; line-height:1.7; color:rgba(23,23,23,.58); }
.vj-cr-hp { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0,0,0,0) !important; white-space:nowrap !important; border:0 !important; }
.vj-form-notice { margin-bottom:1.25rem; padding:.85rem 1rem; border-radius:10px; }
.vj-form-notice.is-success { background:#edf5f0; border:1px solid #b8d8c5; }
.vj-form-notice.is-error { background:#fbefef; border:1px solid #e2bdbd; }
.vj-cr-success { text-align:center; padding-block:4rem; }
.vj-cr-success__mark { display:inline-flex; width:62px; height:62px; align-items:center; justify-content:center; border-radius:50%; background:#171717; color:#f8f7f4; font-size:1.6rem; }
.vj-cr-success h2 { margin:1rem 0 .7rem; font-size:clamp(1.8rem,3vw,2.7rem); }
.vj-cr-success p { max-width:34rem; margin:0 auto 1.5rem; line-height:1.8; color:rgba(23,23,23,.7); }
.vj-cr-section-head { max-width:50rem; margin-bottom:2rem; }
.vj-cr-next-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.vj-cr-next-grid article { padding:1.5rem; border:1px solid rgba(23,23,23,.14); border-radius:14px; background:#fff; }
.vj-cr-next-grid b { color:#925a3d; font-size:.8rem; }
.vj-cr-next-grid h3 { margin:.8rem 0 .5rem; }
.vj-cr-next-grid p { margin:0; line-height:1.8; color:rgba(23,23,23,.7); }
.vj-cr-privacy { padding-block:1rem 1.5rem; background:#f8f7f4; }
.vj-cr-privacy p { margin:0; font-size:.85rem; line-height:1.8; color:rgba(23,23,23,.6); }
.vj-cr-privacy a { color:#925a3d; text-decoration:underline; text-underline-offset:.15em; }
@media (max-width: 900px) {
  .vj-cr-hero__grid, .vj-cr-intro-grid, .vj-cr-form-layout { grid-template-columns:1fr; }
  .vj-cr-hero__signal { justify-self:start; }
  .vj-cr-form-aside { position:static; }
  .vj-cr-next-grid { grid-template-columns:1fr; }
}
@media (max-width: 640px) {
  .vj-cr-fit-grid, .vj-cr-fields--two { grid-template-columns:1fr; }
  .vj-cr-fields__wide { grid-column:auto; }
}

.vj-cr-required-note { margin-inline-start:.5rem; font-size:.78em; font-weight:500; color:rgba(23,23,23,.48); }
.vj-form-field { margin:0; }
.vj-form-field input[aria-invalid="true"], .vj-form-field textarea[aria-invalid="true"] { border-color:#a84444; box-shadow:0 0 0 3px rgba(168,68,68,.08); }
.vj-cr-field-help { margin:.35rem 0 .65rem; font-size:.83rem; line-height:1.7; color:rgba(23,23,23,.56); }
.vj-cr-outcome-highlight { padding:1.15rem; border:1px solid rgba(146,90,61,.2); background:rgba(146,90,61,.035); border-radius:12px; }
.vj-cr-form-card .vj-form-notice.is-error { border-color:#d4a2a2; background:#fcf2f2; color:#7e2f2f; }
.vj-cr-form-card .vj-form-notice.is-success { border-color:#b8d8c5; background:#edf5f0; color:#27563e; }
.vj-cr-form-note { max-width:42rem; }
.vj-cr-consent { padding:.9rem 0; }
.vj-cr-consent input { flex:0 0 auto; }
