/* Blue Sky professional refinement layer v1.2 */
.bs-page .elementor-button,
.giving-native-page .elementor-button{
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}

.bs-page .elementor-button:focus-visible,
.giving-native-page .elementor-button:focus-visible{
  outline:3px solid #fff!important;
  outline-offset:3px;
}

.bs-page .bs-card.e-con{
  transition:transform .2s ease,box-shadow .2s ease;
}

@media(hover:hover){
  .bs-page .bs-button .elementor-button:hover,
  .giving-native-page .elementor-button:hover{
    filter:brightness(1.06);
    transform:translateY(-2px);
  }

  .bs-page .bs-card.e-con:hover{
    transform:translateY(-4px);
    box-shadow:11px 13px 0 rgba(32,37,104,.13);
  }
}

.bs-contact-hero.e-con,
.bs-contact-hero .bs-hero-photo.e-con{
  min-height:610px;
}

.bs-contact-hero .bs-hero-copy.e-con{
  padding-top:138px!important;
  padding-bottom:76px!important;
}

.bs-contact-hero .bs-hero-image img{
  object-position:center 42%!important;
}

.bs-contact-main.e-con{
  padding-top:90px!important;
  padding-bottom:104px!important;
}

.bs-contact-main>.bs-section-title,
.bs-contact-main>.bs-section-title .elementor-heading-title{
  max-width:900px!important;
  font-size:clamp(40px,4.7vw,66px)!important;
  line-height:.92!important;
}

.bs-contact-main .bs-contact-layout.e-con{
  align-items:stretch!important;
  gap:30px!important;
  margin-top:38px!important;
}

.bs-contact-main .bs-form-card{
  border-width:2px;
}

.bs-contact-main .bs-form-card .elementor-form-fields-wrapper{
  row-gap:19px;
}

.bs-contact-main .bs-form-card .elementor-field{
  min-height:50px;
  transition:border-color .18s ease,box-shadow .18s ease;
}

.bs-contact-main .bs-form-card .elementor-field:focus{
  border-color:var(--bs-navy)!important;
  box-shadow:0 0 0 3px rgba(32,37,104,.13)!important;
  outline:0;
}

.bs-contact-main .bs-info-card.e-con{
  min-height:100%;
  align-self:stretch!important;
  justify-content:center!important;
  padding:42px 36px!important;
  border-left:7px solid var(--bs-red);
}

.bs-contact-main .bs-info-copy a{
  color:#fff!important;
  text-decoration-color:rgba(255,255,255,.65)!important;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

.bs-contact-main .bs-info-copy a:hover{
  color:#fff!important;
  text-decoration-color:var(--bs-red)!important;
}

.bs-info-location-link{
  display:inline-block;
  margin-top:4px;
  font-weight:800;
  text-transform:uppercase;
}

.bs-contact-giving.e-con{
  position:relative;
  overflow:visible;
  padding-top:84px!important;
}

.bs-contact-giving-star{
  width:92px!important;
  margin:-132px auto 25px!important;
}

.bs-contact-giving-star img{
  width:92px!important;
  height:92px!important;
  object-fit:contain;
}

/* Locations and ordering */
.bs-location-search-form .elementor-form-fields-wrapper{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:stretch;
  gap:0!important;
}

.bs-location-search-form .elementor-field-group{
  width:auto!important;
  max-width:none!important;
  margin:0!important;
}

.bs-location-search-form .elementor-field-textual{
  width:100%!important;
  min-width:0!important;
}

.bs-location-search-form .e-form__buttons .elementor-button{
  width:100%!important;
  min-width:210px;
}

.bs-page-locations .bs-location-card .bs-location-meta strong{
  color:var(--bs-navy);
}

@media(min-width:901px){
  .bs-page-locations .bs-grid{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }

  .bs-page-locations .bs-location-card{
    grid-column:span 2;
  }

  .bs-page-locations .bs-location-card:nth-last-child(2){
    grid-column:2/span 2;
  }

  .bs-page-locations .bs-location-card:last-child{
    grid-column:4/span 2;
  }
}

.bs-page-location-amarillo .bs-card-copy a,
.bs-page-location-lubbock .bs-card-copy a,
.bs-page-location-midland .bs-card-copy a,
.bs-page-location-abilene .bs-card-copy a{
  color:var(--bs-navy)!important;
  font-weight:800;
}

/* Giving Back keeps its distinct composition but shares the mobile navigation behavior. */
.giving-mobile-toggle{
  display:none;
}

@media(max-width:767px){
  body.elementor-page .bs-page .bs-system-header.e-con{
    width:calc(100vw - 30px)!important;
    min-width:0!important;
    max-width:calc(100vw - 30px)!important;
  }

  .bs-page-order .bs-hero-copy.e-con{
    min-height:460px;
    padding-bottom:48px!important;
  }

  .bs-page-order .bs-order-team{
    width:100%!important;
  }

  .bs-contact-hero.e-con{
    min-height:auto;
  }

  .bs-contact-hero .bs-hero-copy.e-con{
    min-height:450px;
    padding:96px 22px 54px!important;
  }

  .bs-contact-hero .bs-hero-photo.e-con{
    min-height:310px;
  }

  .bs-contact-hero .bs-hero-image img{
    object-position:center 28%!important;
  }

  .bs-contact-main.e-con{
    padding:58px 22px 78px!important;
  }

  .bs-contact-main>.bs-section-title,
  .bs-contact-main>.bs-section-title .elementor-heading-title{
    font-size:43px!important;
    line-height:.94!important;
  }

  .bs-contact-main .bs-contact-layout.e-con{
    margin-top:30px!important;
  }

  .bs-contact-main .bs-info-card.e-con{
    min-height:auto;
    padding:34px 27px!important;
  }

  .bs-contact-giving.e-con{
    padding-top:62px!important;
  }

  .bs-contact-giving-star{
    width:76px!important;
    margin:-103px auto 20px!important;
  }

  .bs-contact-giving-star img{
    width:76px!important;
    height:76px!important;
  }

  .bs-location-search-form .elementor-form-fields-wrapper{
    grid-template-columns:1fr;
  }

  .bs-location-search-form .e-form__buttons .elementor-button{
    min-width:0;
  }

  .giving-native-header.e-con{
    left:12px!important;
    width:calc(100% - 24px)!important;
    max-width:calc(100% - 24px)!important;
  }

  .giving-mobile-toggle{
    position:absolute!important;
    z-index:53;
    top:4px!important;
    right:0!important;
    display:block!important;
    width:44px!important;
    height:42px;
  }

  .giving-mobile-toggle .elementor-button{
    position:relative;
    display:flex;
    width:44px;
    height:42px;
    align-items:center;
    justify-content:center;
    padding:0!important;
    border:2px solid rgba(255,255,255,.86)!important;
    border-radius:3px!important;
    background:rgba(20,25,71,.92)!important;
    box-shadow:0 4px 12px rgba(0,0,0,.32);
  }

  .giving-mobile-toggle .elementor-button:before{
    content:"";
    width:22px;
    height:3px;
    border-radius:2px;
    background:#fff;
    box-shadow:0 -7px 0 #fff,0 7px 0 #fff;
  }

  .giving-mobile-toggle .elementor-button-text{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
    clip:rect(0 0 0 0)!important;
  }

  .giving-native-nav.e-con{
    position:absolute!important;
    z-index:52;
    top:54px!important;
    right:0!important;
    display:flex!important;
    width:220px!important;
    max-width:calc(100vw - 24px)!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:2px!important;
    padding:12px!important;
    border-top:4px solid var(--bs-red,#ff2028);
    background:rgba(20,25,71,.98);
    box-shadow:0 16px 28px rgba(0,0,0,.4);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-8px);
  }

  .giving-native-header.is-menu-open .giving-native-nav.e-con{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
  }

  .giving-native-nav .elementor-widget-button,
  .giving-native-nav .elementor-button{
    width:100%!important;
  }

  .giving-native-nav .elementor-button{
    justify-content:flex-start;
    padding:12px!important;
    font-size:14px!important;
  }
}
