.visual-version .consultation-intake{background:#2b3027;color:#faf8ef}
.intake-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:center}
.intake-intro h2{font-size:36px;line-height:1.4}.intake-intro>p:not(.eyebrow){font-size:14px;line-height:1.75;color:#d3d7c9;margin-top:14px}
.intake-guide{display:block;width:310px;max-width:100%;height:174px;object-fit:cover;object-position:55% 50%;margin-top:22px;border-radius:14px}
.intake-intro>p.intake-note{font-size:12px;line-height:1.7;margin-top:12px;color:#bfc8b1}.intake-booking-link{display:inline-block;font-size:12px;line-height:1.7;margin-top:18px;text-decoration:underline;text-underline-offset:5px;color:#e2dfcf}
.intake-widget{min-width:0;padding:28px 30px;border:1px solid #daddce;border-radius:18px;background:#fffdf7;color:#293126;letter-spacing:-.035em}
.intake-top{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#757b67}
.intake-top>span:last-child{color:#8a7142;font-variant-numeric:tabular-nums}.intake-progress{height:3px;margin:17px 0 22px;background:#e5e8dc}.intake-progress>span{display:block;width:33.333%;height:100%;background:#9a7b46;transition:width .2s}
.intake-widget .eyebrow{font-size:11px;margin:0 0 8px;color:#8a7142;font-weight:700;letter-spacing:0}
.intake-widget h3{font-size:26px;line-height:1.4;letter-spacing:-.05em;font-weight:700;margin:0 0 9px}
.intake-widget .desc{font-size:13px;line-height:1.7;color:#65705a;margin:0 0 18px}
.intake-widget .choices{display:grid;gap:9px}.intake-widget .choice{width:100%;min-height:48px;text-align:left;border:1px solid #d8dfcd;border-radius:9px;background:#fffef9;padding:12px 14px;color:#2c3527;font-size:14px;line-height:1.5;cursor:pointer}
.intake-widget .choice[aria-pressed=true]{background:#e8eedc;border-color:#7d8c66;box-shadow:inset 0 0 0 1px #7d8c66}.intake-widget .choice:hover{background:#eff2e6}
.intake-widget .reassure{font-size:11px;line-height:1.65;margin:16px 0 0;padding:10px 12px;border-radius:8px;background:#f0f2e7;color:#667159;display:flex;gap:7px}
.intake-widget fieldset{padding:0;margin:0 0 16px;border:0}.intake-widget legend,.intake-widget label.field{display:block;font-size:13px;font-weight:600;margin:0 0 8px;padding:0}
.intake-widget .chips{display:grid;grid-template-columns:1fr 1fr;gap:7px}.intake-widget .chips .choice{min-height:42px;padding:9px 10px;font-size:12px;text-align:center}
.intake-widget .tiny{font-size:11px;line-height:1.65;color:#737d66;margin:0}
.intake-widget .actions{display:flex;align-items:center;gap:13px;margin-top:17px}
.intake-widget .primary{width:100%;min-height:48px;border:0;border-radius:8px;background:#2b3326;color:#fff;font:600 14px/1.5 var(--sans);padding:12px 14px;cursor:pointer}
.intake-widget .primary:disabled{background:#a7b298;cursor:default}.intake-widget .back{flex-shrink:0;background:none;border:0;font-size:12px;color:#748168;padding:9px 0;cursor:pointer}
.intake-widget .summary{border-radius:9px;padding:10px 12px;background:#f0f3e7;font-size:12px;line-height:1.65;color:#58664a;margin:0 0 14px}.intake-widget .summary strong{display:block;color:#37442d;margin-bottom:3px}.intake-widget .summary p{margin:0}
.intake-widget .form-field{margin-bottom:10px}.intake-widget .field small,.intake-widget .optional{font-size:11px;color:#79836c;font-weight:400}
.intake-widget .text-input,.intake-widget select{display:block;width:100%;min-height:46px;border:1px solid #d3dbc5;border-radius:8px;background:#fffef9;color:#293425;padding:10px 12px;font-size:16px;line-height:1.6;margin-top:7px}
.intake-widget input.phone{letter-spacing:.03em}.intake-widget .optional-fields{margin:12px 0;border-top:1px solid #dce2d2;border-bottom:1px solid #dce2d2}
.intake-widget details{font-size:11px;color:#717d63;line-height:1.65}.intake-widget details>summary{cursor:pointer;padding:8px 0;min-height:30px;list-style:revert;display:list-item;font-size:11px;line-height:1.65}
.intake-widget .optional-fields>summary{font-size:12px;padding:10px 0;min-height:40px}.intake-widget .optional-fields .form-field{margin:8px 0 14px}
.intake-widget .consent{display:flex;align-items:flex-start;gap:9px;margin-top:14px;font-size:12px;font-weight:400;line-height:1.7;cursor:pointer}
.intake-widget .consent input{width:16px;height:16px;flex-shrink:0;accent-color:#597044;margin:4px 0 0}
.intake-widget details:not(.optional-fields){margin:5px 0 0 25px}.intake-widget details p{font-size:11px;line-height:1.8;margin:5px 0 10px}
.intake-widget .error{color:#a44e32;font-size:12px;line-height:1.7;margin-top:8px}.intake-widget .error:empty{display:none}
.intake-alternatives{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e1e5d7;padding-top:12px;margin-top:18px;gap:16px;font-size:11px;color:#727f64}
.intake-alternatives a{min-height:28px;display:inline-flex;align-items:center}.intake-alternatives a:first-child{color:#396c45;font-weight:600}
.intake-widget .finish-symbol{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#e6eedc;color:#55743e;font-size:25px;margin-bottom:14px}
.intake-phone-link{display:inline-block;font-size:13px;font-weight:600;margin:0 0 14px}.intake-widget .copy-feedback{font-size:11px;color:#60774d;margin-top:8px}.intake-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.visual-version .contact-actions>.contact-booking{background:#2f6545;color:#fff;border-color:#2f6545}.visual-version .contact-actions>.contact-booking small{color:#d8e8d9}
.visual-version .contact-actions>.contact-request{background:#faf9f1;color:#333c2b;border:1px solid #bac5ac}.naver-symbol{display:grid;place-items:center;font-size:24px;font-weight:900;line-height:1;width:32px;height:32px;flex-shrink:0}.dock-naver{font-size:16px;font-weight:900;line-height:1}
.visual-version .header-contact.booking-link{color:#2e6341;border-color:#9aaf98}.visual-version .mobile-contact-bar>.booking-link{background:#2f6545;color:#fff}
.visual-version .mobile-contact-bar>#dock-start,.visual-version .mobile-contact-bar>#dock-copy{background:#e9e5d9;color:#292c25}
@media(max-width:1100px) and (min-width:801px){.intake-layout{gap:32px}.intake-intro h2{font-size:30px}.intake-widget{padding:24px}}
@media(max-width:800px){
 .intake-layout{grid-template-columns:1fr;gap:16px}.intake-intro{position:relative;padding-right:78px}.intake-intro .eyebrow{margin-bottom:7px}
 .intake-intro h2{font-size:25px;line-height:1.4}.intake-intro>p:not(.eyebrow),.intake-booking-link{display:none}
 .intake-guide{position:absolute;right:0;top:8px;width:66px;height:70px;margin:0;border-radius:10px;object-position:55% 50%}
 .intake-widget{padding:20px;border-radius:14px}.intake-top{font-size:10px}.intake-progress{margin:12px 0 17px}
 .intake-widget h3{font-size:22px;line-height:1.4}.intake-widget .desc{font-size:12px;line-height:1.7;margin-bottom:15px}
 .intake-widget .eyebrow{font-size:10px;margin-bottom:7px}.intake-widget .choice{font-size:12px;min-height:45px;padding:11px 12px}
 .intake-widget .chips .choice{font-size:11px;min-height:40px;padding:9px}.intake-widget legend{font-size:12px}
 .intake-widget .reassure,.intake-widget .tiny{font-size:10px}.intake-widget .primary{font-size:12px;min-height:45px}
 .intake-widget .actions{gap:11px;margin-top:14px}.intake-widget .back{font-size:11px}.intake-alternatives{font-size:10px;margin-top:14px;padding-top:10px}
 .intake-widget .consent{font-size:11px;line-height:1.7}.intake-widget .summary{font-size:11px}.intake-widget details>summary,.intake-widget .optional-fields>summary{font-size:11px}
 .visual-version .contact-actions>a{min-height:68px;padding:12px 16px}.visual-version .contact-actions strong{font-size:17px}
}
@media(max-width:350px){.intake-intro h2{font-size:22px}.intake-widget{padding:16px}.intake-widget h3{font-size:19px}.intake-widget .choice{font-size:11px;min-height:42px;padding:10px}.intake-widget .chips{gap:6px}.intake-widget .chips .choice{font-size:10px;padding:8px}.intake-widget .desc{font-size:11px}.intake-widget .reassure{font-size:9px}.intake-widget .primary{font-size:11px}}

.intake-memo{margin:0 0 14px}.intake-memo .memo-copy{border:0;border-bottom:1px solid #a3af94;padding:3px 0 4px;background:none;color:#435d37;font:600 12px/1.5 var(--sans);cursor:pointer}.intake-memo p{font-size:11px;line-height:1.7;color:#727d67;margin:7px 0 0}.intake-memo textarea{width:100%;height:160px;font-size:12px;line-height:1.7;padding:10px;border:1px solid #bdc8af;border-radius:8px;margin-top:10px}

@media(max-width:800px){
 .intake-intro{min-height:50px;display:flex;align-items:center}.intake-intro .eyebrow{display:none}.intake-intro h2{font-size:21px;line-height:1.45}.intake-guide{top:0;width:60px;height:50px}
 .intake-widget .intake-progress{margin:11px 0 15px}.intake-widget h3{font-size:21px}.intake-widget .desc{margin-bottom:14px}.intake-widget .reassure{margin-top:12px}
 .consultation-intake[data-intake-step="3"] .intake-intro,.consultation-intake[data-intake-step="4"] .intake-intro{display:none}
 .intake-memo{margin-bottom:12px}.intake-memo p{font-size:10px}.intake-memo .memo-copy{font-size:11px}
}
@media(max-width:350px){.intake-intro h2{font-size:18px}.intake-widget h3{font-size:18px}.intake-widget .reassure{padding:8px 10px}}

@media(min-width:351px) and (max-width:800px){.intake-widget .choice{font-size:14px}.intake-widget .chips .choice{font-size:12px}}
@media(max-width:800px){
 .consultation-intake[data-intake-step="3"] .intake-alternatives{display:none}
 .consultation-intake[data-intake-step="3"] .intake-widget h3+.desc{display:none}
 .consultation-intake[data-intake-step="3"] .intake-widget h3{margin-bottom:14px}
}

.intake-widget .intake-review{margin:0 0 12px!important;padding:0 12px;background:#f0f3e7}.intake-widget .intake-review>summary{padding:8px 0;font-size:12px;font-weight:600;color:#536748}.intake-widget .intake-review>p{margin:0 0 10px;padding:0;font-size:12px}
@media(max-width:800px) and (max-height:700px){
 .consultation-intake .intake-intro{display:none}.intake-layout{gap:0}.intake-widget{padding:17px 20px}
 .consultation-intake[data-intake-step="3"] .intake-progress{display:none}.consultation-intake[data-intake-step="3"] .intake-top{margin-bottom:14px}
 .intake-widget .intake-review>summary{font-size:11px}
}
@media(max-width:800px) and (max-height:600px){
 .intake-widget{padding:16px}.intake-widget .intake-alternatives{display:none}.intake-widget .choices{gap:7px}.intake-widget .choice{min-height:40px;padding:8px 10px}.intake-widget .reassure{padding:8px 10px;margin-top:10px}
 .intake-widget h3{font-size:18px}.intake-widget .desc{font-size:11px;margin-bottom:12px}
}

/* A single layout owns all three contact-card slots; legacy phone margins must not split the group. */
.visual-version .contact-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.visual-version .contact-actions>a{display:grid;grid-template-columns:32px minmax(0,1fr) 24px;gap:16px;margin:0;min-height:86px;padding:17px 22px;border:1px solid #a2aa8f;border-radius:10px}
.visual-version .contact-actions>.contact-booking{border-color:#2f6545}
.visual-version .contact-actions .contact-icon,.visual-version .contact-actions .naver-symbol{width:32px;height:32px;justify-self:center}
.visual-version .contact-actions>a>span:last-child{width:24px;text-align:right;font-size:26px;line-height:1}
.intake-widget .intake-calculator{margin:16px 0 0!important;border:1px solid #d1dac4;border-radius:10px;background:#f4f6ec;padding:0 13px}
.intake-widget .intake-calculator>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;list-style:none;font-size:13px;font-weight:600;color:#3a5531}
.intake-calculator>summary:after{content:'+';font-size:20px;font-weight:400}.intake-calculator[open]>summary:after{content:'−'}
.intake-calculator>summary small{font-weight:400;color:#768469;margin-left:auto}
.calc-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:13px 0}
.calc-field{display:block;font-size:12px;font-weight:600}.calc-field>span{display:block;margin-bottom:5px}.calc-field-wide{grid-column:1/-1}
.calc-money{display:flex;align-items:center;border:1px solid #cbd7ba;border-radius:8px;background:#fffef9;overflow:hidden}
.intake-widget .calc-money input{width:100%;min-width:0;min-height:44px;font-size:16px;line-height:1.5;border:0;background:none;padding:10px;border-radius:0;color:#293425;letter-spacing:0}
.calc-money>span{padding:0 10px 0 0;color:#71815f;font-size:11px;font-weight:400;white-space:nowrap}
.intake-widget .calc-field select{margin:0;min-height:44px;font-size:13px;padding:9px 10px}
.intake-widget .calculate-button{width:100%;min-height:44px;border:1px solid #6e835c;border-radius:8px;background:#e5edd9;color:#314a28;font:600 13px/1.5 var(--sans);padding:10px;cursor:pointer}
.calc-note{font-size:11px;line-height:1.7;color:#718061;margin:8px 0 0}.calc-result:empty{display:none}
.calc-result{margin:13px 0;padding:15px;border-radius:9px;background:#fffef9;border:1px solid #d9e0ce}
.intake-widget .calc-result-label{font-size:11px;color:#6f7d60;line-height:1.6;margin:0 0 5px}
.calc-amount{display:block;font-size:27px;line-height:1.4;font-weight:700;color:#344d2a;letter-spacing:-.05em}
.calc-breakdown{display:flex;justify-content:space-between;gap:8px;font-size:11px;line-height:1.65;color:#647652;margin-top:10px}
.calc-bar{display:flex;height:8px;overflow:hidden;border-radius:8px;background:#dce4ce;margin-top:8px}.calc-bar>span:first-child{background:#bac9a2}.calc-bar>span:last-child{background:#587347}
.intake-widget .calc-encouragement{font-size:12px;line-height:1.8;color:#536846;margin:12px 0 0}.intake-widget .calc-range-note{font-size:11px;line-height:1.8;color:#718164;margin:8px 0 0}
.intake-widget .calc-basis{margin:10px 0 12px!important}.intake-widget .calc-basis summary{padding:5px 0;font-size:11px}.intake-widget .calc-basis p{font-size:11px;line-height:1.8;margin-top:6px}.calc-basis a{text-decoration:underline;text-underline-offset:3px}
.calc-clear{display:block;border:0;background:none;font-size:11px;padding:7px 0 11px;color:#788467;cursor:pointer}.calc-clear[hidden]{display:none}
.intake-widget .intake-review .calc-review-text{white-space:pre-line;font-size:11px;border-top:1px solid #d9e0cd;padding-top:8px;margin-top:7px}
@media(max-width:800px){
 .visual-version .contact-actions{gap:10px}.visual-version .contact-actions>a{grid-template-columns:28px minmax(0,1fr) 22px;gap:12px;min-height:74px;padding:12px 16px}
 .visual-version .contact-actions .contact-icon,.visual-version .contact-actions .naver-symbol{width:28px;height:28px}
 .intake-widget .intake-calculator{padding:0 11px;margin-top:12px!important}.intake-widget .intake-calculator>summary{font-size:12px;padding:11px 0}.calc-fields{gap:9px}.calc-field{font-size:11px}.calc-amount{font-size:24px}.intake-widget .calc-encouragement{font-size:11px}
}
@media(max-width:350px){.visual-version .contact-actions>a{min-height:68px;padding:11px 13px;gap:10px}.calc-fields{grid-template-columns:1fr}.calc-field-wide{grid-column:auto}.calc-breakdown{flex-wrap:wrap}.calc-amount{font-size:22px}}

/* Price and unit share one line; the unit keeps a comfortable right inset. */
.intake-widget .calc-field>label{display:block;margin-bottom:6px;font-size:12px;font-weight:600}
.intake-widget .calc-money{display:flex;align-items:center;gap:8px;min-height:48px;padding:0 12px;border:1px solid #cbd7ba;border-radius:8px;background:#fffef9}
.intake-widget .calc-money:focus-within{outline:2px solid #7d8c66;outline-offset:2px}
.intake-widget .calc-money input{flex:1 1 0;width:0;min-width:0;min-height:46px;margin:0;padding:10px 0;border:0;border-radius:0;outline:0;background:none;font-size:16px;line-height:1.5}
.intake-widget .calc-money>span{display:block;flex:0 0 auto;margin:0;padding:0;font-size:12px;line-height:1.5;color:#71815f;white-space:nowrap}
.intake-widget p.calc-interpretation{margin:6px 0 0;font-size:11px;line-height:1.6;color:#46653b;font-weight:400;overflow-wrap:anywhere}
.intake-widget .calc-interpretation:empty{display:none}
.intake-widget .calc-unit-override{display:block;border:0;border-bottom:1px solid #a4b293;border-radius:0;background:none;padding:1px 0;margin-top:4px;font:400 10px/1.6 var(--sans);color:#718061;cursor:pointer;text-align:left}
.intake-widget .calc-unit-override[hidden]{display:none}
@media(max-width:800px){.intake-widget .calc-field>label{font-size:11px}.intake-widget .calc-money{gap:6px;padding:0 10px}.intake-widget p.calc-interpretation{font-size:10px}}

/* Make a recorded request unmistakable, with the receipt before secondary actions. */
.consultation-intake[data-intake-step="4"] .intake-progress{display:none}
.consultation-intake[data-intake-step="4"] .intake-top{margin-bottom:18px}
.consultation-intake[data-intake-step="4"] #intake-step{color:#2f6545;font-weight:700}
.intake-widget .finish-confirmation{padding:26px 18px 24px;margin:0 0 16px;border-radius:12px;background:#2f6545;color:#fff;text-align:center}
.intake-widget .finish-confirmation .finish-symbol{width:60px;height:60px;margin:0 auto 12px;background:#fff;color:#2f6545;box-shadow:0 0 0 7px rgba(255,255,255,.12)}
.finish-symbol svg{display:block;width:36px;height:36px}
.intake-widget .finish-label{margin:0 0 8px;font-size:13px;line-height:1.5;font-weight:700;letter-spacing:.08em;color:#e7f0df}
.intake-widget .finish-confirmation h3{font-size:30px;line-height:1.4;font-weight:700;letter-spacing:-.045em;color:#fff;margin:0 0 12px;word-break:keep-all;outline-offset:5px}
.intake-widget .finish-message{font-size:13px;line-height:1.8;color:#edf3e9;margin:0}
.intake-widget .finish-contact{border:1px solid #cfdac8;border-radius:10px;padding:14px 12px;margin:0 0 16px;text-align:center;background:#fffef9}
.finish-contact>span{display:block;font-size:11px;line-height:1.6;color:#64745c}
.finish-contact>strong{display:block;font-size:22px;line-height:1.5;font-weight:700;letter-spacing:.02em;color:#2b4934}
.intake-widget .finish-contact>p{font-size:12px;line-height:1.7;color:#586b4e;margin:4px 0 0;word-break:keep-all}
 .intake-widget .finish-acknowledge{margin-bottom:16px;background:#2f6545;font-size:15px;min-height:50px}
.intake-widget .finish-restart{display:block;width:100%;border:0;background:none;padding:12px 0 0;color:#6b775e;font:400 12px/1.6 var(--sans);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
@media(max-width:800px){
 .consultation-intake[data-intake-step="4"] .intake-top{font-size:11px;margin-bottom:14px}
 .intake-widget .finish-confirmation{padding:24px 14px 22px;margin-bottom:14px}
 .intake-widget .finish-confirmation .finish-symbol{width:56px;height:56px;margin-bottom:12px}
 .intake-widget .finish-confirmation h3{font-size:25px}
 .intake-widget .finish-message{font-size:12px}
 .intake-widget .finish-contact{padding:12px 10px;margin-bottom:14px}
 .finish-contact>strong{font-size:21px}
}
@media(max-width:350px){
 .intake-widget .finish-confirmation{padding:22px 10px 20px}
 .intake-widget .finish-confirmation h3{font-size:22px}
 .intake-widget .finish-message{font-size:11px}
}
