/* The short public landing page. Detailed product pages retain site.css. */
.landing-page .hero { background:#0d1b2b; }
.landing-page .hero-image { object-position:center; }
.landing-page .hero-caption { background:linear-gradient(90deg,#07132155,transparent 48%); }
/* Keep the three applications visible above the copy on narrow screens. */
@media(max-width:1199px) {
  .landing-page .hero { height:auto; min-height:0; max-height:none; }
  .landing-page .hero-image { position:relative; display:block; height:clamp(190px,min(40vw,30svh),320px); object-position:right center; }
  .landing-page .hero-caption { position:relative; inset:auto; padding:26px 0 28px; background:#0d1b2b; }
  .landing-page .hero-content { height:auto; }
}
.landing-solutions { padding:64px 0 68px; }
.landing-solutions > .container > .section-heading { max-width:660px; margin-bottom:42px; }
.landing-solutions > .container > .section-heading h2 { font-size:34px; }
.landing-solutions > .container > .section-heading p { max-width:590px; }
.landing-solution { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); align-items:center; gap:clamp(32px,5vw,76px); padding:0 0 48px; }
.landing-solution + .landing-solution { padding-top:48px; border-top:1px solid #dce4ec; }
.landing-solution:last-child { padding-bottom:0; }
.landing-solution-copy,.landing-solution-media { min-width:0; }
.landing-solution-copy { max-width:490px; }
.landing-solution-copy .eyebrow { margin-bottom:12px; }
.landing-solution-copy h3 { font-size:36px; line-height:1.15; margin-bottom:17px; }
.landing-solution-copy > p:not(.eyebrow) { font-size:16px; line-height:1.65; color:#53606e; margin-bottom:19px; }
.landing-points { display:flex; flex-wrap:wrap; gap:9px 21px; list-style:none; margin:0 0 24px; padding:0; }
.landing-points li { position:relative; padding-left:12px; font-size:13px; line-height:1.5; color:#526471; }
.landing-points li::before { content:""; position:absolute; left:0; top:.6em; width:4px; height:4px; border-radius:50%; background:var(--bc-blue); }
.landing-solution-copy > .icon-link { min-height:44px; font-size:15px; }
.landing-solution-media { position:relative; display:flex; align-items:center; justify-content:center; margin:0; overflow:hidden; }
.landing-solution-media img { display:block; width:100%; height:auto; transition:transform .25s ease; }
#cloud-overview .landing-solution-media { padding:28px; background:linear-gradient(135deg,#edf4fc,#e1ebf6); border-radius:4px; }
#cloud-overview .landing-solution-media img { padding:10px 4px 4px; border:1px solid #7f8d9d; border-radius:8px; background:linear-gradient(120deg,#465464,#142332 65%); box-shadow:0 12px 22px #183c6321,0 1px 2px #183c631f; }
.landing-hardware .landing-solution-copy { grid-column:2; grid-row:1; }
.landing-hardware .landing-solution-media { grid-column:1; grid-row:1; border-radius:4px; background:#e8edf1; }
.landing-hardware .landing-solution-media img { aspect-ratio:3/2; object-fit:contain; object-position:center; }
.landing-fit { padding:36px 0; background:#edf3fb; border-block:1px solid #dce5ee; }
.landing-fit > .container { display:flex; align-items:center; justify-content:space-between; gap:25px 55px; }
.landing-fit > .container > div { max-width:780px; }
.landing-fit h2 { font-size:25px; line-height:1.3; margin:0 0 8px; }
.landing-fit p { font-size:15px; line-height:1.65; color:#53606e; margin:0; }
.landing-fit .eyebrow { color:var(--bc-blue); font-size:12px; margin-bottom:8px; }
.landing-fit .icon-link { min-height:44px; flex-shrink:0; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
  a.landing-solution-media:hover img { transform:scale(1.015); }
}
@media(max-width:991px) {
  .landing-solution { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px; }
  .landing-solution-copy h3 { font-size:30px; }
  .landing-solution-copy > p:not(.eyebrow) { font-size:15px; }
  #cloud-overview .landing-solution-media { padding:20px; }
  .landing-fit > .container { align-items:flex-start; gap:25px; }
  .landing-fit h2 { font-size:23px; }
}
@media(max-width:767px) {
  .landing-solutions { padding:40px 0; }
  .landing-solutions > .container > .section-heading { margin-bottom:30px; }
  .landing-solutions > .container > .section-heading h2 { font-size:28px; }
  .landing-solution { grid-template-columns:minmax(0,1fr); gap:21px; padding-bottom:33px; }
  .landing-solution + .landing-solution { padding-top:33px; }
  .landing-solution-copy { max-width:none; }
  .landing-solution-copy h3 { font-size:28px; margin-bottom:13px; }
  .landing-solution-copy .eyebrow { font-size:12px; margin-bottom:9px; }
  .landing-solution-copy > p:not(.eyebrow) { margin-bottom:14px; }
  .landing-points { gap:7px 18px; margin-bottom:12px; }
  .landing-solution-copy > .icon-link { font-size:14px; }
  .landing-hardware .landing-solution-copy,.landing-hardware .landing-solution-media { grid-column:auto; grid-row:auto; }
  .landing-solution-media { max-width:540px; width:100%; justify-self:center; }
  #cloud-overview .landing-solution-media { padding:19px; }
  #cloud-overview .landing-solution-media img { padding:7px 3px 3px; border-radius:6px; }
  .landing-fit { padding:28px 0; }
  .landing-fit > .container { flex-direction:column; gap:13px; }
  .landing-fit h2 { font-size:23px; }
  .landing-fit p { font-size:14px; }
}
@media(prefers-reduced-motion:reduce) {
  .landing-solution-media img { transition:none; }
}
