/* Visual explanations for the five service landing pages. */
.visual-concern-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;margin-top:36px}
.visual-guide{margin:0;padding:26px 20px 22px;background:#f5f1e8;border-radius:6px;text-align:center;min-width:0}
.visual-guide-message{font-family:var(--serif);font-size:23px;line-height:1.6;color:#263e43}
.visual-scene{width:100%;height:auto;object-fit:contain;display:block}
.visual-guide .visual-scene{height:285px;margin:6px auto 8px}
.visual-guide figcaption{font-size:14px;color:#59676b;line-height:1.8}
.visual-concern-list{display:grid;gap:8px}
.visual-concern-list article{display:flex;align-items:flex-start;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}
.visual-concern-list article:first-child{padding-top:0}
.visual-concern-list article:last-child{border:0}
.visual-symbol{display:grid;place-items:center;flex:0 0 58px;width:58px;height:58px;border:1px solid #cab993;border-radius:50%;color:#8c6e3e;background:#fbf9f4}
.visual-concern-list h3{font-size:21px;font-weight:500;margin:0 0 8px;line-height:1.6}
.visual-concern-list p{font-size:16px;color:var(--muted);line-height:1.9;margin:0}
.visual-icon{flex-shrink:0;display:block}
.service-diagram{margin:0;padding:32px;background:#fff;border:1px solid #dcd5c5;min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.service-diagram figcaption{margin-bottom:26px;text-align:center}
.diagram-eyebrow{display:block;font-size:14px;color:#806339;letter-spacing:.06em;margin-bottom:10px}
.service-diagram figcaption strong{font-family:var(--serif);font-weight:500;font-size:23px;line-height:1.7;display:block}
.diagram-nodes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.diagram-node{padding:22px 10px;background:#f3f2ed;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;min-width:0;border-bottom:2px solid #b19a6d}
.diagram-node .visual-icon{width:42px;height:42px;color:#82683e;margin-bottom:2px}
.diagram-node strong{font-size:18px;font-weight:500;line-height:1.7}
.diagram-node>span{font-size:14px;line-height:1.7;color:#5f6b6f}
.diagram-nodes.three{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.diagram-nodes.three strong{font-size:16px}
.diagram-source{background:#203b43;color:#fff;text-align:center;padding:23px 15px;display:flex;flex-direction:column;align-items:center;gap:10px}
.diagram-source strong{font-size:19px;font-weight:500}
.diagram-source>span{color:#d9e0df;font-size:14px;line-height:1.8}
.diagram-source .visual-icon{color:#e0c89c;width:38px;height:38px}
.diagram-branch{height:26px;width:1px;background:#b39b6f;margin-inline:auto;position:relative}
.diagram-branch:after{content:'';position:absolute;bottom:0;width:7px;height:7px;border-right:1px solid #a78d5c;border-bottom:1px solid #a78d5c;transform:translateX(-3px) rotate(45deg)}
.diagram-foot{font-size:14px!important;line-height:1.8!important;color:#5b696d;margin:20px 0 0!important;text-align:center}
.diagram-hold{display:flex;justify-content:center;align-items:center;gap:10px;font-size:14px;color:#5b696d;padding-top:18px;margin:15px 0 0;border-top:1px dashed #c8bea9;line-height:1.8}
.diagram-hold .visual-icon{width:23px;height:23px}
.diagram-route{list-style:none;margin:0;padding:0;display:grid;gap:24px}
.diagram-route li{display:flex;gap:20px;align-items:center;position:relative;background:#f3f2ed;padding:18px 22px}
.diagram-route li+li:before{content:'↓';position:absolute;top:-27px;left:50%;font-size:21px;color:#9a8056}
.diagram-route .visual-icon{width:40px;height:40px;color:#8c7044}
.diagram-route span{font-size:14px;color:#8c7044;margin-right:10px}
.diagram-route strong{font-size:20px;font-weight:500}
.diagram-route p{font-size:14px;line-height:1.8;color:#5b696d;margin:5px 0 0}
.landing-page .lp-service-list>div>.visual-icon{width:42px;height:42px;margin:0 0 18px;color:#8d7143}
.landing-page .sorting-grid>div>.visual-icon{width:44px;height:44px;margin:0 0 22px;color:#8d7143}
.landing-page .sorting-grid>div{border-radius:3px;position:relative}
.landing-page .sorting-grid>div>span{position:absolute;right:18px;top:18px;font-size:17px;color:#8a7e68}
.landing-page .sorting-grid p{font-size:16px}
.family-definition .definition-art{height:185px;margin:0 auto 20px}
.preparation-grid .visual-icon{width:38px;height:38px;color:#897043;margin-bottom:18px}
.landing-page .lp-process{gap:30px}
.landing-page .lp-process>li{border:1px solid #e0d9cd;padding:0 25px 22px;background:#faf8f3;position:relative;min-width:0}
.landing-page .lp-process>li+li:before{content:'→';position:absolute;left:-25px;top:105px;color:#947b50;font-size:22px;z-index:1}
.process-picture{margin:0 -25px 18px;padding:14px 14px 0;position:relative;border-bottom:1px solid #e6dfd3;background:#f0ece3}
.process-picture .visual-scene{height:170px}
.landing-page .process-picture-label{display:block;text-align:center;font-family:var(--sans);font-size:14px;letter-spacing:.1em;color:#685538;line-height:1.7;padding:12px 0}
.landing-page .lp-process>li>span{font-size:24px}
.landing-page .lp-process h3{font-size:20px;line-height:1.6;margin:12px 0}
.landing-page .lp-process p{font-size:16px;line-height:1.9;margin-bottom:0}
.property-options .visual-icon{width:50px;height:50px;color:#8e7244;margin-bottom:22px}
.appraisal-points .visual-icon{width:38px;height:38px;color:#8e7244;margin-bottom:16px}
.cost-diagram>div>.visual-icon{margin:0 auto 14px;color:#8e7244;width:38px;height:38px}
.chapter-row .visual-icon{color:#8e7244;width:38px;height:38px;grid-row:1/3}
@media(max-width:1000px){.visual-concern-layout{gap:32px}.visual-guide .visual-scene{height:245px}.service-diagram{padding:24px}.diagram-nodes.three{grid-template-columns:1fr}.diagram-nodes.three .diagram-node{display:grid;grid-template-columns:40px 1fr;padding:15px;text-align:left;gap:3px 14px}.diagram-nodes.three .visual-icon{grid-row:1/3;width:34px;height:34px}.diagram-nodes.three strong{font-size:18px}.visual-concern-list h3{font-size:19px}}
@media(max-width:740px){.visual-concern-layout{grid-template-columns:1fr;gap:25px;margin-top:26px}.visual-guide{padding:20px 16px}.visual-guide-message{font-size:21px}.visual-guide .visual-scene{height:210px}.visual-concern-list article{padding:16px 0;gap:16px}.visual-symbol{width:45px;height:45px;flex-basis:45px}.visual-symbol .visual-icon{width:27px;height:27px}.visual-concern-list h3{font-size:19px}.service-diagram{padding:23px 18px}.service-diagram figcaption strong{font-size:22px}.diagram-nodes{gap:12px}.diagram-node{padding:20px 9px}.diagram-node strong{font-size:17px}.diagram-node>span{font-size:14px}.diagram-route li{padding:18px 16px;gap:14px}.diagram-route strong{font-size:19px}.diagram-route .visual-icon{width:34px;height:34px}.diagram-source strong{font-size:18px}.landing-page .lp-service-list>div{display:grid;grid-template-columns:42px 1fr;gap:0 17px}.landing-page .lp-service-list>div>.visual-icon{grid-column:1;grid-row:1/4;width:34px;height:34px;margin-top:4px}.landing-page .lp-service-list>div>span,.landing-page .lp-service-list h3,.landing-page .lp-service-list p{grid-column:2}.landing-page .lp-service-list h3{font-size:22px}.family-definition .definition-art{height:170px}.landing-page .sorting-grid>div{padding:22px 15px}.landing-page .sorting-grid>div>.visual-icon{width:37px;height:37px;margin-bottom:20px}.landing-page .sorting-grid h3{font-size:22px}.landing-page .sorting-grid p{line-height:1.85}.landing-page .lp-process{grid-template-columns:1fr;gap:32px}.landing-page .lp-process>li{display:grid;grid-template-columns:65px 1fr;padding:0 20px 22px;column-gap:12px}.process-picture{grid-column:1/-1;margin:0 -20px 18px;padding:9px 14px 0}.process-picture .visual-scene{height:170px}.landing-page .lp-process>li>span{grid-column:1;grid-row:2/4;font-size:28px}.landing-page .lp-process h3{grid-column:2;margin:0 0 8px;font-size:20px}.landing-page .lp-process p{grid-column:2;margin:0}.landing-page .lp-process>li+li:before{content:'↓';top:-32px;left:calc(50% - 7px);font-size:24px}.landing-page .process-picture-label{font-size:14px;padding:7px 0 12px}.cost-diagram>div{min-width:0}.cost-diagram strong{font-size:17px}.family-definition>div{padding:23px}.diagram-hold{align-items:flex-start}.diagram-hold .visual-icon{margin-top:2px}}
@media(prefers-reduced-motion:reduce){.visual-scene{animation:none!important}}
