/* Compact scene/solution introductions and the shared telephone dialog. */
.scene-intro{padding:38px 0 32px;background:#f5f9fb}
.scene-intro h1{margin:0 0 12px;font-size:44px;line-height:1.25;color:var(--navy)}
.scene-intro p{margin:0;color:var(--muted);font-size:17px;line-height:1.8}
.scene-list,.solution-list{padding-top:36px;padding-bottom:60px}
.scene-list .scene-card h2{margin:0 0 10px;font-size:23px;line-height:1.4;color:var(--navy)}
.scene-list .scene-card img{height:200px;object-fit:contain;background:#fff}
.scene-list .scene-card p{line-height:1.8;min-height:52px}
.scene-list .scene-card .copy{padding:24px}
.scene-list .scene-card>a{display:block;height:100%}
.solution-intro{padding:38px 0;background:#f5f9fb}
.solution-intro .inner{grid-template-columns:1.15fr 1fr;gap:64px;min-height:0}
.solution-intro h1{font-size:44px;margin:0 0 18px;line-height:1.25}
.solution-intro .solution-value{font-size:23px;line-height:1.5;font-weight:700;color:var(--navy);margin:0 0 14px}
.solution-intro p{font-size:16px;line-height:1.9;margin:0}
.solution-intro img{height:250px;min-height:0;width:100%;object-fit:cover;object-position:center;border-radius:16px;box-shadow:none;background:white}
.phone-dialog{box-sizing:border-box;width:min(480px,calc(100% - 40px));max-height:calc(100vh - 40px);margin:auto;padding:44px 30px 30px;border:1px solid #d7e3eb;border-radius:20px;background:#fff;color:#15324b;text-align:center;box-shadow:0 24px 80px #102e4550}
.phone-dialog::backdrop{background:rgba(10,30,45,.55)}
.phone-dialog h2{font-size:26px;margin:0 0 12px}
.phone-dialog p{font-size:16px;line-height:1.7;color:#536c7d;margin:0}
.phone-dialog .phone-number{display:block;margin:22px 0 24px;font-family:Arial,sans-serif;font-size:40px;font-weight:700;line-height:1.3;letter-spacing:.5px;white-space:nowrap;user-select:text;color:#15324b}
.phone-dialog .phone-close{position:absolute;right:10px;top:10px;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:#365267;font-size:30px;cursor:pointer}
.phone-dialog .phone-close:hover{background:#edf4f8}
.phone-dialog button:focus-visible{outline:3px solid #1c7694;outline-offset:4px}
.phone-dialog .phone-status{min-height:28px;margin-top:16px;font-size:14px}
.phone-copy-fallback{position:fixed;left:0;top:0;width:1px;height:1px;opacity:0}
.privacy-update{margin-top:36px;color:#718797;font-size:13px}
@media(max-width:820px){
  .solution-intro{padding:32px 0 30px}
  .solution-intro .inner{grid-template-columns:1fr;gap:0}
  .scene-intro h1,.solution-intro h1{font-size:34px}
  .solution-intro img{display:none}
  body[data-page="solutions"] .section.soft .section-head{margin-bottom:30px;text-align:center}
  body[data-page="solutions"] .section.soft .section-title{max-width:100%;margin-inline:auto}
  body[data-page="solutions"] .section.soft .eyebrow{justify-content:center}
  body[data-page="solutions"] .section.soft .section-title h2{max-width:420px;margin-inline:auto}
}

@media(max-width:560px){
  .solution-intro{padding:30px 0 28px}
  .solution-intro .inner{gap:0}
  .solution-intro h1{margin-bottom:11px;font-size:30px}
  .solution-intro .solution-value{margin-bottom:8px;font-size:19px;line-height:1.5}
  .solution-intro p{font-size:14px;line-height:1.75}
  .solution-intro img{display:none}
  .solution-list{padding:28px 0 44px}
  .solution-list .solution-grid{display:grid;grid-template-columns:1fr;gap:14px}
  .solution-list .solution-card{display:block;min-width:0;min-height:0;overflow:hidden;border-radius:16px}
  .solution-list .solution-card>a{display:flex;min-width:0;height:auto;flex-direction:column}
  .solution-list .solution-card img{display:block;width:100%;height:auto;min-height:0;aspect-ratio:16/9;object-fit:contain;background:#fff}
  .solution-list .solution-card .copy{display:block;min-width:0;padding:17px 18px 18px}
  .solution-list .solution-card h3{margin:0 0 7px;font-size:19px;line-height:1.45}
  .solution-list .solution-card p{min-height:0;margin:0 0 10px;font-size:14px;line-height:1.7}
  .solution-list .solution-card .text-link{font-size:13px}
  body[data-page="solutions"] .section.soft .section-title h2{max-width:340px;margin-inline:auto}
}
@media(max-width:560px){.scene-list .scene-card{display:block}.scene-list .scene-card>a{display:grid;grid-template-columns:125px 1fr}.scene-list .scene-card img{height:100%;min-height:185px}}
@media(max-width:400px){.phone-dialog{padding:44px 18px 24px}.phone-dialog .phone-number{font-size:32px}}
