/* Verified final overrides. Loaded after every other stylesheet. */

/* Light cards, dark text, and extra-light image-side gradients. */
.s2-card.s2-green{background:linear-gradient(90deg,#58a6d5 0%,#58a6d5 32%,#9ccbe5 62%,#e8f5fb 100%)!important;color:#1456a7!important}
.s2-card.s2-deep{background:linear-gradient(90deg,#f2c264 0%,#f2c264 32%,#f8dea5 62%,#fffcf4 100%)!important;color:#6f4300!important}
.s2-card.s2-coral{background:linear-gradient(90deg,#79b7a9 0%,#79b7a9 32%,#badad2 62%,#f5fbf9 100%)!important;color:#174d43!important}
.s2-card.s2-violet{background:linear-gradient(90deg,#9da3cc 0%,#9da3cc 32%,#cfd2e6 62%,#f8f8fc 100%)!important;color:#30375f!important}
.s2-card.s2-pink{background:linear-gradient(90deg,#ac8ac3 0%,#ac8ac3 32%,#d7c4e0 62%,#fbf7fc 100%)!important;color:#412357!important}
.s2-card .s2-index,.s2-card .s2-copy h3,.s2-card .s2-copy>p{color:inherit!important}
.s2-card .s2-copy>a{background:var(--card-ink)!important;color:#fff!important}
.s2-card:hover .s2-media>img{transform:none!important}

/* Exact image behavior for each card. */
.s2-green .s2-media{background:#e8f5fb!important}
.s2-green .s2-media>img{object-fit:contain!important;object-position:center!important;mix-blend-mode:multiply!important}
.s2-deep .s2-media{background:#fffcf4!important}
.s2-deep .s2-media>img{object-fit:contain!important;object-position:center!important}
.s2-coral .s2-media>img,.s2-violet .s2-media>img{object-fit:cover!important;object-position:center!important}
.s2-pink .s2-media{background:#fbf7fc!important}
.s2-pink .s2-media>img{object-fit:cover!important;object-position:center!important}

@media screen and (min-width:901px){
  .s2-intro,.s2-stack{width:min(1180px,88vw)!important;margin-left:auto!important;margin-right:auto!important}
  .s2-card{height:430px!important;min-height:420px!important;padding:0!important;grid-template-columns:54% 46%!important}
  .s2-media{border-radius:0 25px 25px 0!important}
}

/* Compact, consistent section heading: exactly two lines on desktop. */
@media screen and (min-width:651px){
  html body .s2-solutions .s2-intro{display:block!important;text-align:center!important}
  html body .s2-solutions .s2-intro h2{margin:0 auto!important;font-size:clamp(38px,2.35vw,46px)!important;line-height:1!important;letter-spacing:-.04em!important;text-align:center!important;white-space:normal!important}
  html body .s2-solutions .s2-intro h2 .s2-title-main,
  html body .s2-solutions .s2-intro h2 em{display:block!important;white-space:nowrap!important}
  html body .s2-solutions .s2-mobile-break{display:none!important}
  .s2-card .s2-copy h3{font-size:clamp(30px,2.3vw,40px)!important;line-height:.96!important;letter-spacing:-.04em!important}
}

/* Mobile-only requirements. */
@media screen and (max-width:1050px){
  #header .contact{display:none!important}
  #header .menu{display:flex!important;order:3!important;margin-left:auto!important;align-items:center!important;justify-content:center!important}
}
@media screen and (max-width:650px){
  html body .s2-solutions .s2-intro h2{font-size:7.4vw!important;line-height:.96!important;letter-spacing:-.045em!important;text-align:left!important;white-space:nowrap!important}
  html body .s2-solutions .s2-intro h2 .s2-title-main,
  html body .s2-solutions .s2-intro h2 em{display:inline!important;white-space:nowrap!important}
  html body .s2-solutions .s2-mobile-break{display:block!important}
  .s2-card.s2-green{background:linear-gradient(180deg,#58a6d5 0%,#58a6d5 34%,#9ccbe5 66%,#e8f5fb 100%)!important}
  .s2-card.s2-deep{background:linear-gradient(180deg,#f2c264 0%,#f2c264 34%,#f8dea5 66%,#fffcf4 100%)!important}
  .s2-card.s2-coral{background:linear-gradient(180deg,#79b7a9 0%,#79b7a9 34%,#badad2 66%,#f5fbf9 100%)!important}
  .s2-card.s2-violet{background:linear-gradient(180deg,#9da3cc 0%,#9da3cc 34%,#cfd2e6 66%,#f8f8fc 100%)!important}
  .s2-card.s2-pink{background:linear-gradient(180deg,#ac8ac3 0%,#ac8ac3 34%,#d7c4e0 66%,#fbf7fc 100%)!important}
  .s2-card,.s2-card:nth-child(n){padding:0!important}
  .s2-copy{padding:16px 21px!important}
  .s2-copy h3{font-size:clamp(25px,7vw,30px)!important;line-height:.96!important;letter-spacing:-.035em!important}
  .s2-media{border-radius:0 0 22px 22px!important}
  .s6-footer-bottom{display:flex!important;justify-content:center!important;align-items:center!important;text-align:center!important}
  .s6-footer-bottom>span:nth-child(2),.s6-social{display:none!important}
  .s6-footer-bottom>span:first-child{width:100%!important;text-align:center!important}
}


/* FINAL READABILITY PASS — typography only; layout, colors, images and behavior stay intact. */
@media screen and (min-width:651px){
  .lead{font-size:18px!important;line-height:1.62!important}
  .s1-center>p:not(.s1-eyebrow){font-size:17px!important;line-height:1.65!important}

  .s2-copy{min-width:0!important;overflow:hidden!important;padding:22px 34px 24px!important}
  .s2-card .s2-copy h3{max-width:540px!important;margin:24px 0 16px!important;font-size:clamp(44px,2.7vw,52px)!important;font-weight:800!important;line-height:.96!important;letter-spacing:-.045em!important}
  .s2-card .s2-copy>p{width:100%!important;max-width:510px!important;font-size:17.5px!important;line-height:1.55!important;overflow-wrap:break-word!important}
  .s2-card .s2-copy>a{min-height:48px!important;margin-top:auto!important;padding:14px 22px!important;font-size:14px!important;display:inline-flex!important;align-items:center!important}

  .s3-copy h2{font-size:clamp(46px,3.4vw,56px)!important;line-height:.94!important}
  .s3-copy>p:not(.s3-kicker){font-size:18px!important;line-height:1.62!important}
  .s3-copy li{font-size:17px!important;line-height:1.48!important}
  .s3-button{min-height:55px!important;padding-left:25px!important;font-size:14px!important}

  .s4-reason h3{font-size:21px!important;line-height:1.28!important}
  .s4-reason p{font-size:15.5px!important;line-height:1.58!important}
  .s4-reason.is-open p{max-height:165px!important}

  section.s6-video-cards .s6-accordion .s6-case .s6-vertical{font-size:18px!important;letter-spacing:.015em!important}
  .s6-video-cards .s6-case-content p{max-width:610px!important;font-size:16px!important;line-height:1.58!important;color:rgba(255,255,255,.88)!important}

  .s6-newsletter h3{font-size:clamp(32px,2vw,38px)!important;line-height:1.05!important;color:#fff!important}
  .s6-newsletter p{font-size:15.5px!important;line-height:1.55!important;color:#fff!important}
  .s6-footer-col a{font-size:15px!important;line-height:1.5!important;color:#fff!important}
  .s6-contact-row{font-size:14px!important;line-height:1.55!important;color:#eef2f8!important}
}

@media screen and (max-width:650px){
  .lead{font-size:14.5px!important;line-height:1.55!important}
  .s1-center>p:not(.s1-eyebrow){max-width:320px!important;font-size:12.5px!important;line-height:1.55!important}

  .s2-copy{overflow:hidden!important}
  .s2-card .s2-copy h3{max-width:100%!important;margin:13px 0 9px!important;font-size:clamp(27px,7.5vw,32px)!important;line-height:.96!important}
  .s2-card .s2-copy>p{max-width:100%!important;font-size:12px!important;line-height:1.5!important}
  .s2-card .s2-copy>a{min-height:40px!important;margin-top:auto!important;padding:11px 17px!important;font-size:11px!important;display:inline-flex!important;align-items:center!important}

  .s3-copy>p:not(.s3-kicker){font-size:14.5px!important;line-height:1.58!important}
  .s3-copy li{font-size:13px!important;line-height:1.48!important}
  .s3-button{font-size:11.5px!important}

  .s4-reason h3{font-size:18.5px!important;line-height:1.3!important}
  .s4-reason p{font-size:14px!important;line-height:1.55!important}
  .s4-reason.is-open p{max-height:190px!important}

  section.s6-video-cards .s6-accordion .s6-case .s6-vertical{font-size:13px!important}
  .s6-video-cards .s6-case-content p{font-size:14px!important;line-height:1.52!important;color:rgba(255,255,255,.9)!important}

  .s6-newsletter h3{font-size:clamp(29px,8vw,34px)!important;line-height:1.03!important;color:#fff!important}
  .s6-newsletter p{font-size:12.5px!important;line-height:1.55!important;color:#fff!important}
  .s6-footer-col a{font-size:12.5px!important;line-height:1.55!important;color:#fff!important}
  .s6-contact-row{font-size:12px!important;line-height:1.55!important;color:#eef2f8!important}
}
