/*
 * EDS Site Page Library 1.0.3.9
 * Cross-browser and narrow-phone refinements.
 */

/* Prevent iOS Safari from independently enlarging text inside the managed
   canvas. Browser zoom and the user's accessibility settings remain usable. */
.eds-production{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

/* The four pillar heroes remain deliberately larger than the third-level
   service heroes, but no longer use a fixed 760px desktop minimum. The capped
   small-viewport unit behaves consistently as Safari's browser chrome moves. */
.eds-production.eds-page--pillar .subpage-hero .hero-panel{
  min-height:680px;
  min-height:clamp(640px,72svh,680px);
}

/* Preserve the approved return control in every link state. This prevents
   Jupiter, Elementor and browser defaults from introducing blue on hover. */
.service-site .back-link,
.service-site .back-link:link,
.service-site .back-link:visited,
.eds-production.eds-page--ai-automation .subpage-hero .back-btn,
.eds-production.eds-page--ai-automation .subpage-hero .back-btn:link,
.eds-production.eds-page--ai-automation .subpage-hero .back-btn:visited,
.eds-production.eds-page--digital-websites .subpage-hero .back-btn,
.eds-production.eds-page--digital-websites .subpage-hero .back-btn:link,
.eds-production.eds-page--digital-websites .subpage-hero .back-btn:visited{
  color:rgba(255,255,255,.76)!important;
  text-decoration:none!important;
  -webkit-text-decoration:none!important;
}

.service-site .back-link:hover,
.service-site .back-link:focus-visible,
.service-site .back-link:active,
.eds-production.eds-page--ai-automation .subpage-hero .back-btn:hover,
.eds-production.eds-page--ai-automation .subpage-hero .back-btn:focus-visible,
.eds-production.eds-page--ai-automation .subpage-hero .back-btn:active,
.eds-production.eds-page--digital-websites .subpage-hero .back-btn:hover,
.eds-production.eds-page--digital-websites .subpage-hero .back-btn:focus-visible,
.eds-production.eds-page--digital-websites .subpage-hero .back-btn:active{
  color:#fff!important;
  text-decoration:none!important;
  -webkit-text-decoration:none!important;
}

@media(max-width:760px){
  .eds-production.eds-page--pillar .subpage-hero .hero-panel{
    min-height:620px;
  }
}

/* True phone widths need a little more vertical separation between the return
   control and long hero copy than desktop browser resizing reveals. */
@media(max-width:560px){
  .service-site .hero-panel,
  .eds-production.eds-page--ai-automation .subpage-hero .hero-panel,
  .eds-production.eds-page--digital-websites .subpage-hero .hero-panel{
    min-height:660px!important;
  }

  .service-site .back-link,
  .eds-production.eds-page--ai-automation .subpage-hero .back-btn,
  .eds-production.eds-page--digital-websites .subpage-hero .back-btn{
    top:28px!important;
    right:25px!important;
    left:auto!important;
    display:inline-flex!important;
    align-items:center!important;
    max-width:calc(100% - 50px)!important;
    min-height:32px;
    padding:6px 0!important;
    line-height:1.35!important;
    white-space:normal!important;
  }
}

/* At real iPhone widths the former 420px cards left too little space for a
   wrapped title, description and full service-page action. The cards remain
   one per row, gain vertical breathing room and allow long actions to wrap. */
@media(max-width:520px){
  .eds-production.eds-page--pillar #capabilities .grid12{
    gap:18px!important;
  }

  .eds-production.eds-page--pillar #capabilities .service-panel,
  .eds-production.eds-page--pillar #capabilities .grid12 > article .service-panel[style*="--service-card-image"]{
    min-height:500px!important;
    padding:26px 22px 24px!important;
    border-radius:22px!important;
  }

  .eds-production.eds-page--pillar #capabilities .grid12 > article .service-panel[style*="--service-card-image"]{
    background-position:68% center!important;
  }

  .eds-production.eds-page--pillar #capabilities .service-panel .panel-label::before{
    margin-bottom:13px!important;
  }

  .eds-production.eds-page--pillar #capabilities .service-panel .panel-title{
    margin-bottom:16px!important;
    font-size:clamp(30px,9vw,36px)!important;
    line-height:1.02!important;
    letter-spacing:-.045em!important;
  }

  .eds-production.eds-page--pillar #capabilities .service-panel .panel-description{
    margin-bottom:18px!important;
    font-size:15px!important;
    line-height:1.52!important;
  }

  .eds-production.eds-page--pillar #capabilities .service-panel .btn{
    min-height:54px!important;
    height:auto!important;
    padding:12px 14px!important;
    font-size:14px!important;
    line-height:1.3!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    text-align:center!important;
  }
}

@media(max-width:360px){
  .eds-production.eds-page--pillar #capabilities .service-panel,
  .eds-production.eds-page--pillar #capabilities .grid12 > article .service-panel[style*="--service-card-image"]{
    min-height:530px!important;
    padding-right:20px!important;
    padding-left:20px!important;
  }
}

/* Communication & Collaboration is the single long service-name outlier.
   Keep its mobile hero within the established service-page proportions without
   changing the other fifteen service pages. */
@media(max-width:420px){
  [data-service-key="communication-collaboration"] .hero-copy .eyebrow{
    max-width:100%;
    margin-bottom:18px;
    font-size:10px;
    line-height:1.35;
    letter-spacing:.11em;
  }

  [data-service-key="communication-collaboration"] .hero-copy h1{
    font-size:clamp(44px,13.5vw,56px);
    line-height:.92;
  }
}
