/* Homepage refinements: preserve mobile framing and the existing brand fonts. */
.hero-services {
  display:none;
}
.home-bridal .bridal-entry-copy > p:not(.bridal-kicker) {
  color:#10100f;
  font-weight:400;
}

@media(min-width:768px) {
  .hero .slide:not(.artist-slide)::after {
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(0deg,rgb(0 0 0 / .78),rgb(0 0 0 / .32) 32%,transparent 58%);
    pointer-events:none;
    z-index:1;
  }
  .hero .mobile-hero-welcome {
    display:flex;
    position:absolute;
    z-index:2;
    left:var(--gutter);
    right:var(--gutter);
    bottom:clamp(24px,3vw,56px);
    flex-direction:column;
    align-items:center;
    gap:16px;
    color:#fff;
    text-align:center;
  }
  .hero .mobile-hero-welcome h2 {
    margin:0;
    font-family:Montserrat,Manrope,sans-serif;
    font-weight:300;
    font-size:clamp(1.55rem,1.95vw,2.25rem);
    letter-spacing:.09em;
    line-height:1.35;
    text-transform:uppercase;
    color:#fff;
    text-shadow:0 1px 5px rgb(0 0 0 / .5);
  }
  .hero .hero-services {
    display:block;
    max-width:72rem;
    margin:0;
    font-family:Montserrat,Manrope,sans-serif;
    font-weight:300;
    font-size:clamp(.94rem,1vw,1.2rem);
    letter-spacing:.025em;
    line-height:1.8;
    color:#fff;
    text-wrap:balance;
    text-shadow:0 1px 5px rgb(0 0 0 / .5);
  }
  .hero-services .service-label {
    display:inline-block;
  }
  .hero-services .service-divider {
    display:inline-block;
    margin-inline:.5em;
  }
  .hero .mobile-hero-welcome .studio-booking {
    margin:8px 0 0;
    width:min(100%,310px);
    min-height:76px;
    padding:16px 24px;
    border:2px solid #fff;
    color:#fff;
    background:transparent;
    font-family:Montserrat,Manrope,sans-serif;
    font-weight:300;
    font-size:clamp(.72rem,.84vw,.98rem);
    letter-spacing:.03em;
    text-shadow:0 1px 4px rgb(0 0 0 / .4);
  }
  .hero .mobile-hero-welcome .studio-booking:hover {
    background:rgb(255 255 255 / .13);
  }
  .hero .mobile-hero-welcome .studio-booking:focus-visible {
    outline:2px solid #fff;
    outline-offset:6px;
  }
}

@media(min-width:768px) and (max-width:1023px) {
  .hero .mobile-hero-welcome {
    bottom:24px;
    gap:8px;
  }
  .hero .mobile-hero-welcome h2 {
    font-size:1.25rem;
  }
  .hero .hero-services {
    max-width:42rem;
    font-size:.875rem;
    line-height:1.6;
  }
  .hero .mobile-hero-welcome .studio-booking {
    min-height:56px;
    margin-top:8px;
  }
}
