/* Services page: layout rules the home stylesheet does not have.
   Loaded after styles.css. The home page never loads this file. */
  @media (max-width:1180px){
    [data-navpills]{display:none!important}
    section,footer{padding-left:32px!important;padding-right:32px!important}
    [data-grid="reviews"],[data-grid="review-banner"],[data-grid="features"]{grid-template-columns:1fr 1fr!important}
    [data-grid="bts-row"]{grid-auto-rows:420px!important}
    [data-grid="bts-bar"]{grid-template-columns:1fr 1fr!important}
    [data-grid="fam-row"]{grid-template-columns:1fr 1fr!important;grid-auto-rows:auto!important}
    [data-grid="fam-row"] > div{min-height:240px}
    [data-svc]{padding-left:32px!important;padding-right:32px!important}
    [data-stack]{margin-left:-90px!important}
    [data-grid="corp-stats"]{padding-left:32px!important;padding-right:32px!important}
  }
  @media (max-width:900px){
    nav{padding:16px 20px!important}
    section,footer{padding-left:20px!important;padding-right:20px!important}
    [data-svc]{grid-template-columns:1fr!important;gap:32px!important;padding-left:20px!important;padding-right:20px!important}
    [data-grid="corp-stats"]{grid-template-columns:1fr 1fr!important;padding-left:20px!important;padding-right:20px!important;gap:26px!important}
    [data-grid="fam-row"]{grid-template-columns:1fr!important}
    [data-grid="gal-row"]{grid-template-columns:1fr!important}
    [data-grid="bts-row"]{grid-template-columns:1fr!important;grid-auto-rows:min(72vw,560px)!important}
    [data-grid="bts-bar"]{grid-template-columns:1fr!important}
    [data-track="fam"] > div{grid-template-columns:1fr!important;gap:18px!important}
    [data-stack]{padding-bottom:0!important;margin-left:0!important}
    [data-copy]{padding-right:0!important}
    [data-copy] p,[data-copy] div,[data-copy] a{max-width:none!important}
    #services h2{white-space:normal!important;text-shadow:none!important}
    [data-stack] > div:first-child{margin-left:0!important}
    [data-inset]{position:static!important;width:auto!important;margin-top:14px!important;padding:0!important;box-shadow:none!important}
    [data-caption]{position:static!important;margin-top:18px!important}
    [data-svc] > div:first-child{order:0!important}
    [data-grid="reviews"],[data-grid="review-banner"]{grid-template-columns:1fr!important}
    [data-grid="review-quotes"]{grid-template-columns:1fr!important;gap:28px!important}
    [data-grid="review-quotes"] > div{padding:0!important;border-left:0!important;border-top:1px solid rgba(0,0,0,.12);padding-top:24px!important}
    [data-grid="review-quotes"] > div:first-child{border-top:0;padding-top:0!important}
    [data-grid="features"]{grid-template-columns:1fr!important}
    [data-grid="stack"]{grid-template-columns:1fr!important}
    [data-grid="footer"]{grid-template-columns:1fr 1fr!important}
    [data-strip]{grid-template-columns:1fr 1fr!important}
  }

/* generated images: keep faces in frame */
[data-grid="bts-row"] img{object-position:50% 40%}

/* who-for review card on phones */
@media (max-width:900px){
  [data-whoreview]{grid-template-columns:1fr!important;gap:18px!important;padding:26px 22px!important}
  [data-whoreview] figcaption{white-space:normal!important}
}

@keyframes cf-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
[data-marquee-track]{animation:cf-marquee 28s linear infinite}
[data-marquee]:hover [data-marquee-track]{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){[data-marquee-track]{animation:none}}

@media (max-width:1180px){
  [data-grid="bts-row"] img[src*="bts-desert-camera-op"]{object-position:50% 22%}
  [data-grid="bts-row"] img[src*="photo-15"]{object-position:50% 45%}
}

/* art gallery section, tablet only: the two photos sit side by side, the review runs full width under them */
@media (min-width:601px) and (max-width:900px){
  [data-grid="gal-row"]{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;align-items:start!important}
  [data-grid="gal-row"] > div:nth-child(1){order:0}
  [data-grid="gal-row"] > div:nth-child(3){order:1}
  [data-grid="gal-row"] > div:nth-child(2){order:2;grid-column:1/-1}
}

/* family events heading, tablet only: keep "Family Celebrations" on one line */
@media (min-width:601px) and (max-width:900px){
  [data-keep]{white-space:nowrap}
}
