/* Business scenarios and project handoffs, scoped to solution pages. */
.solution-page .story-hero-grid{min-height:510px;padding-block:38px 50px;gap:54px}
.solution-page .story-hero h1{font-size:clamp(38px,3.65vw,52px);line-height:1.45}
.solution-page .story-lead{font-size:15px;line-height:1.95}
.solution-page .story-kicker{margin-bottom:22px}
.solution-page .spatial-visual img{aspect-ratio:800/470;max-height:330px}
.solution-route{list-style:none;display:flex;flex-wrap:wrap;gap:12px 20px;margin:0;padding:0;color:#d6dce4;font-size:12px}
.solution-route li{display:flex;align-items:center;gap:8px}
.solution-route li:before{content:"";width:4px;height:4px;background:var(--accent);flex-shrink:0}
.solution-scenes,.solution-workflow{scroll-margin-top:108px}
.solution-page .story-heading{grid-template-columns:1fr .7fr;gap:64px}
.scene-table-head,.business-scene{display:grid;grid-template-columns:.82fr 1.14fr 1fr;gap:44px}
.scene-table-head{font-size:12px;color:var(--muted);padding:0 0 16px;border-bottom:1px solid var(--line)}
.business-scene{padding:30px 0;border-bottom:1px solid var(--line);align-items:start}
.business-scene>div{min-width:0}
.scene-number{display:block;font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.12em;margin-bottom:10px}
.business-scene h3{font-size:20px;line-height:1.5;font-weight:500;margin:0 0 10px}
.business-scene p{font-size:14px;line-height:1.95;color:#bec4cd;margin:0}
.scene-project p{font-size:13px;color:var(--muted)}
.scene-next p{color:#e2e6ec}
.scene-action,.scene-next{padding-top:27px}
.business-scene .cell-label{display:none}
.business-workflow{list-style:none;margin:0;padding:0}
.workflow-step{display:grid;grid-template-columns:36px minmax(0,1fr) 170px 225px;gap:30px;padding:28px 0;border-top:1px solid #353b43;align-items:start}
.workflow-number{font-family:var(--mono);font-size:17px;line-height:1.6;color:var(--accent)}
.workflow-task,.workflow-who,.workflow-result{min-width:0}
.workflow-task h3{font-size:19px;line-height:1.5;font-weight:500;margin:0 0 10px}
.workflow-task p,.workflow-who p,.workflow-result p{font-size:14px;line-height:1.9;margin:0;color:var(--muted)}
.cell-label{display:block;font-size:11px;line-height:1.7;color:#919ba8;margin-bottom:10px}
.workflow-who p{color:#d0d6de;font-size:13px}
.workflow-result{border-left:2px solid #825334;padding-left:16px}
.workflow-result p{color:#edf0f4}
.workflow-delivery{display:grid;grid-template-columns:96px minmax(0,1fr);gap:24px;padding:24px 26px;margin-top:12px;background:#f0863d08;border:1px solid #f0863d35}
.workflow-delivery>span{color:var(--accent);font-size:13px;line-height:1.95}
.workflow-delivery p{font-size:14px;line-height:1.95;color:#d6dce4;margin:0;max-width:850px}
.solution-faq{padding-block:60px}
@media(max-width:1100px){
 .solution-page .story-hero-grid{gap:30px;min-height:470px}
 .solution-page .story-hero h1{font-size:40px}
 .scene-table-head,.business-scene{gap:28px}
 .workflow-step{grid-template-columns:30px minmax(0,1fr) 140px 180px;gap:22px}
}
@media(max-width:760px){
 .solution-page .story-hero-grid{min-height:0;gap:28px;padding-block:30px 36px}
 .solution-page .story-hero h1{font-size:clamp(30px,7.7vw,40px);line-height:1.5}
 .solution-page .story-lead{font-size:14px;margin-bottom:24px}
 .solution-page .story-kicker{font-size:12px;gap:9px;margin-bottom:18px}
 .solution-page .story-kicker .code{font-size:10px;letter-spacing:.05em}
 .solution-page .story-kicker:before{width:18px}
 .solution-page .spatial-visual img{max-height:none;aspect-ratio:800/470}
 .solution-route{font-size:11px;gap:10px 16px}
 .solution-route li{gap:6px}
 .solution-scenes,.solution-workflow{scroll-margin-top:80px}
 .solution-page .story-heading{grid-template-columns:1fr;gap:14px}
 .solution-page .story-heading h2{font-size:27px;line-height:1.5}
 .scene-table-head{display:none}
 .business-scenarios{border-top:1px solid var(--line)}
 .business-scene{grid-template-columns:1fr;gap:18px;padding-block:27px}
 .scene-project{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px 12px}
 .scene-project .scene-number{grid-row:1/3;margin:3px 0 0}
 .business-scene h3{font-size:19px;margin:0}
 .scene-project p{grid-column:2;font-size:13px}
 .scene-action,.scene-next{padding-top:0;padding-left:42px}
 .business-scene .cell-label{display:block;margin-bottom:5px;color:#999fa9}
 .business-scene p{font-size:14px;line-height:1.9}
 .scene-next{border-left:0}
 .workflow-step{grid-template-columns:30px minmax(0,1fr);gap:14px 12px;padding-block:25px}
 .workflow-number{grid-column:1;grid-row:1/4;font-size:16px}
 .workflow-task,.workflow-who,.workflow-result{grid-column:2}
 .workflow-task h3{font-size:18px;line-height:1.6;margin-bottom:8px}
 .workflow-task p,.workflow-result p{font-size:14px}
 .workflow-who{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}
 .workflow-who .cell-label{margin:0}
 .workflow-who p{font-size:12px}
 .workflow-result{padding-left:12px}
 .workflow-result .cell-label{margin-bottom:4px}
 .workflow-delivery{grid-template-columns:1fr;gap:8px;padding:20px;margin-top:6px}
 .workflow-delivery p{font-size:13px}
 .solution-faq{padding-block:44px}
}
@media(max-width:360px){
 .solution-page .story-hero h1{font-size:29px}
 .solution-page .story-kicker{gap:7px;font-size:11px}
 .solution-page .story-kicker .code{font-size:9px}
 .solution-page .story-heading h2{font-size:25px}
 .scene-action,.scene-next{padding-left:0}
}

/* Supplemental local glyphs for the scenario and workflow copy. */
@font-face{font-family:"Noto Sans SC";font-style:normal;font-weight:400;font-display:swap;src:url("assets/noto-sans-sc-solution-400.ttf") format("truetype");unicode-range:U+4E32,U+4E8B,U+53BB,U+53E6,U+5934,U+5B50,U+5C31,U+5E0C,U+5ECA,U+5F20,U+600E,U+601D,U+62C6,U+65E7,U+671B,U+67B6,U+67DC,U+6CBF,U+7269,U+79DF,U+843D,U+8651,U+8C01,U+8C03,U+8D1F,U+8D27,U+8F83,U+8FD0,U+904D,U+94F6,U+94FA,U+9501,U+9648}
@font-face{font-family:"Noto Sans SC";font-style:normal;font-weight:500;font-display:swap;src:url("assets/noto-sans-sc-solution-500.ttf") format("truetype");unicode-range:U+4E32,U+4E8B,U+53BB,U+53E6,U+5934,U+5B50,U+5C31,U+5E0C,U+5ECA,U+5F20,U+600E,U+601D,U+62C6,U+65E7,U+671B,U+67B6,U+67DC,U+6CBF,U+7269,U+79DF,U+843D,U+8651,U+8C01,U+8C03,U+8D1F,U+8D27,U+8F83,U+8FD0,U+904D,U+94F6,U+94FA,U+9501,U+9648}
@font-face{font-family:"Noto Sans SC";font-style:normal;font-weight:600;font-display:swap;src:url("assets/noto-sans-sc-solution-600.ttf") format("truetype");unicode-range:U+4E32,U+4E8B,U+53BB,U+53E6,U+5934,U+5B50,U+5C31,U+5E0C,U+5ECA,U+5F20,U+600E,U+601D,U+62C6,U+65E7,U+671B,U+67B6,U+67DC,U+6CBF,U+7269,U+79DF,U+843D,U+8651,U+8C01,U+8C03,U+8D1F,U+8D27,U+8F83,U+8FD0,U+904D,U+94F6,U+94FA,U+9501,U+9648}
@font-face{font-family:"Noto Sans SC";font-style:normal;font-weight:700;font-display:swap;src:url("assets/noto-sans-sc-solution-700.ttf") format("truetype");unicode-range:U+4E32,U+4E8B,U+53BB,U+53E6,U+5934,U+5B50,U+5C31,U+5E0C,U+5ECA,U+5F20,U+600E,U+601D,U+62C6,U+65E7,U+671B,U+67B6,U+67DC,U+6CBF,U+7269,U+79DF,U+843D,U+8651,U+8C01,U+8C03,U+8D1F,U+8D27,U+8F83,U+8FD0,U+904D,U+94F6,U+94FA,U+9501,U+9648}

/* The supplied residential plan sits directly on the existing hero background. */
.solution-page .residential-plan-visual{border:0;background:transparent;box-shadow:none;isolation:auto}
.solution-page .residential-plan-visual:before,.solution-page .residential-plan-visual:after{display:none}
.solution-page .residential-plan-visual>img{width:100%;height:540px;max-height:none;aspect-ratio:auto;object-fit:contain;mix-blend-mode:lighten;-webkit-mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent),linear-gradient(0deg,transparent,#000 2%,#000 98%,transparent);mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent),linear-gradient(0deg,transparent,#000 2%,#000 98%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}
.solution-page .residential-plan-visual figcaption{border:0;padding:12px 0 0;justify-content:center}
@media(max-width:1100px){.solution-page .residential-plan-visual>img{height:480px}}
@media(max-width:760px){.solution-page .residential-plan-visual>img{height:auto;max-height:none;aspect-ratio:1376/1468}.solution-page .residential-plan-visual figcaption{padding-top:14px}}
