/* Additive consultation layer shared across LIU MOSSO. */
.consultation-journey{padding:clamp(125px,16vw,235px) var(--pad) clamp(145px,17vw,250px);background:var(--paper);color:var(--ink)}
.consultation-journey .consultation-label{display:flex;align-items:center;gap:9px;margin:0 0 clamp(65px,8vw,110px);font-size:14px;font-weight:600}
.consultation-journey .consultation-label i{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--ink);color:var(--paper);font-style:normal;font-size:15px}
.consultation-journey h2{max-width:1240px;margin:0 0 clamp(105px,13vw,185px);font-size:clamp(64px,8.5vw,128px);font-weight:500;line-height:.9;letter-spacing:-.068em;text-wrap:balance}
.consultation-timeline{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(28px,4vw,66px)}
.consultation-timeline::before{content:"";position:absolute;top:5px;left:0;right:0;height:1px;background:var(--line)}
.consultation-step{position:relative;padding-top:42px}
.consultation-step::before{content:"";position:absolute;top:0;left:0;width:11px;height:11px;border-radius:50%;background:var(--paper);border:1px solid var(--ink)}
.consultation-step>span{display:block;margin-bottom:clamp(55px,6vw,86px);color:var(--muted);font-size:12px}
.consultation-step h3{margin:0 0 24px;font-size:clamp(25px,2.3vw,36px);font-weight:500;line-height:1;letter-spacing:-.04em}
.consultation-step p{max-width:300px;margin:0;color:var(--muted);font-size:15px;line-height:1.55}
.consultation-mini-flow{padding:clamp(34px,4vw,58px) var(--pad);background:#d8d4ce;color:var(--ink);display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(21,21,20,.18);border-bottom:1px solid rgba(21,21,20,.18)}
.consultation-mini-flow p{margin:0;padding:0 clamp(18px,3vw,45px);display:flex;gap:18px;align-items:center;border-right:1px solid rgba(21,21,20,.18);font-size:15px;font-weight:600}
.consultation-mini-flow p:first-child{padding-left:0}.consultation-mini-flow p:last-child{padding-right:0;border-right:0}
.consultation-mini-flow span{color:var(--muted);font-size:11px;font-weight:500}
.closing-cta .consultation-secondary{max-width:560px;margin:18px 0 0;color:#aaa;font-size:13px;line-height:1.55}
.consultation-secondary a{color:var(--paper);border-bottom:1px solid #5c5a56;transition:border-color .25s ease}
.consultation-secondary a:hover{border-color:var(--paper)}
.consultation-card{--consultation-bottom:28px;position:fixed;z-index:88;right:var(--pad);bottom:var(--consultation-bottom);width:min(340px,calc(100vw - 36px));padding:15px;border:1px solid rgba(21,21,20,.09);border-radius:22px;background:rgba(247,245,240,.94);color:var(--ink);box-shadow:0 16px 45px rgba(21,21,20,.14);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:grid;grid-template-columns:48px 1fr auto;grid-template-areas:"portrait copy close" "action action action";gap:10px 13px;opacity:0;visibility:hidden;transform:translate3d(0,24px,0);transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1),visibility 0s .7s}
.consultation-card.is-visible{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.consultation-portrait{grid-area:portrait;width:48px;height:48px;border-radius:50%;overflow:hidden;background:#d8d4ce}
.consultation-portrait img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.72)}
.consultation-copy{grid-area:copy;align-self:center}.consultation-copy strong,.consultation-copy span{display:block}.consultation-copy strong{font-size:13px;font-weight:600}.consultation-copy span{margin-top:4px;color:var(--muted);font-size:11px}
.consultation-close{grid-area:close;align-self:start;width:28px;height:28px;padding:0;border:0;background:transparent;color:var(--muted);font:inherit;font-size:18px;line-height:1;cursor:pointer;border-radius:50%}
.consultation-close:hover{color:var(--ink)}.consultation-close:focus-visible{outline:1px solid currentColor;outline-offset:2px}
.consultation-action{grid-area:action;margin-top:4px;padding:12px 15px;border-radius:999px;background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;transition:transform .35s cubic-bezier(.22,1,.36,1)}
.consultation-action::after{content:"↗"}.consultation-action:hover{transform:translateY(-2px)}
@media(max-width:900px){.consultation-timeline{grid-template-columns:1fr;gap:0}.consultation-timeline::before{top:0;bottom:0;left:5px;right:auto;width:1px;height:auto}.consultation-step{min-height:210px;padding:0 0 55px 45px}.consultation-step::before{top:0}.consultation-step>span{margin-bottom:34px}.consultation-step p{max-width:520px}.consultation-mini-flow{grid-template-columns:1fr;padding-top:24px;padding-bottom:24px}.consultation-mini-flow p,.consultation-mini-flow p:first-child,.consultation-mini-flow p:last-child{padding:18px 0;border-right:0;border-bottom:1px solid rgba(21,21,20,.18)}.consultation-mini-flow p:last-child{border-bottom:0}.consultation-card{position:relative;z-index:1;right:auto;bottom:auto;width:auto;margin:70px var(--pad);opacity:1;visibility:visible;transform:none;background:#f7f5f0;box-shadow:0 13px 35px rgba(21,21,20,.1)}.consultation-card.is-visible{transform:none}}
@media(max-width:560px){.consultation-journey{padding-top:105px;padding-bottom:125px}.consultation-journey h2{margin-bottom:90px;font-size:16vw}.consultation-step h3{font-size:29px}.consultation-step p{font-size:16px}.consultation-card{margin-top:55px;margin-bottom:55px}}
@media(prefers-reduced-motion:reduce){.consultation-card,.consultation-action,.consultation-secondary a{transition:none}}
