/* ==========================================================================
   Allison Lee — Homepage refinement layer
   Consistent section rhythm, gutters, and responsive behavior.
   ========================================================================== */

:root{
  --allison-content:1120px;
  --allison-gutter:28px;
  --allison-section-y:80px;
}

/* About/story section */
.home .elementor-element-705c09e{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Upcoming Shows heading + content should read as one section */
.home .elementor-element-4123ed2{
  padding-top:80px!important;
  padding-bottom:42px!important;
}
.home .elementor-element-2ac59ba{
  padding-bottom:90px!important;
}

/* Media */
.home .elementor-element-08ec93f{padding-top:48px!important;padding-bottom:34px!important}

/* Contact */
.home .elementor-element-92d92a1{
  padding-top:88px!important;
  padding-bottom:92px!important;
}

/* Give major content sections a consistent safe gutter */
.home .elementor-element-4123ed2,
.home .elementor-element-2ac59ba,
.home .elementor-element-92d92a1{
  padding-left:var(--allison-gutter);
  padding-right:var(--allison-gutter);
}

/* Avoid accidental horizontal overflow from editorial decorations */
.home{
  overflow-x:hidden;
}

@media(max-width:1024px){
  :root{--allison-gutter:24px}
  .home .elementor-element-4123ed2{padding-top:68px!important;padding-bottom:36px!important}
  .home .elementor-element-2ac59ba{padding-bottom:76px!important}
    .home .elementor-element-92d92a1{padding-top:74px!important;padding-bottom:78px!important}
}

@media(max-width:767px){
  :root{--allison-gutter:20px}
  .home .elementor-element-4123ed2{
    padding-top:54px!important;
    padding-bottom:28px!important;
    padding-left:var(--allison-gutter)!important;
    padding-right:var(--allison-gutter)!important;
  }
  .home .elementor-element-2ac59ba{
    padding-left:var(--allison-gutter)!important;
    padding-right:var(--allison-gutter)!important;
    padding-bottom:62px!important;
  }
  .home .elementor-element-92d92a1{
    padding:62px var(--allison-gutter) 68px!important;
  }
}
/* ==========================================================================
   Typography + interaction refinement
   ========================================================================== */

/* Keep major editorial section headings on the same scale/system. */
.home .elementor-element-2af8b43 .elementor-heading-title,
.home .elementor-element-b9bab20 .elementor-heading-title{
  font-family:"Ibarra Real Nova",Georgia,serif!important;
  font-weight:600!important;
  font-style:italic!important;
  letter-spacing:-.025em;
}

/* About CTA: bring it into the navy/pink interaction language. */
.home .elementor-element-2317926 .elementor-button{
  border:1px solid #F5B7C2!important;
  transition:color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease;
}
.home .elementor-element-2317926 .elementor-button:hover,
.home .elementor-element-2317926 .elementor-button:focus-visible{
  color:#F5B7C2!important;
  transform:translateY(-1px);
}

/* Contact form submit button: same family, without forcing dimensions. */
.home .elementor-element-fa5a26b .elementor-button{
  transition:color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease;
}
.home .elementor-element-fa5a26b .elementor-button:hover,
.home .elementor-element-fa5a26b .elementor-button:focus-visible{
  transform:translateY(-1px);
}

/* Accessible keyboard focus that still fits the visual language. */
.home a:focus-visible,
.home button:focus-visible,
.home .elementor-button:focus-visible{
  outline:2px solid #F5B7C2;
  outline-offset:3px;
}

@media(prefers-reduced-motion:reduce){
  .home .elementor-button{transition:none!important}
  .home .elementor-button:hover,
  .home .elementor-button:focus-visible{transform:none!important}
}
/* ==========================================================================
   Responsive refinement pass
   ========================================================================== */

@media (max-width:1024px) and (min-width:768px){
  /* About remains full-bleed, but scale oversized quote typography slightly. */
  .home .elementor-element-705c09e .elementor-heading-title{
    font-size:clamp(46px,5.4vw,60px)!important;
  }

  /* Upcoming shows: preserve two-column editorial composition on tablet. */
  .home .elementor-element-2ac59ba{
    gap:28px;
  }
  .home .elementor-element-c3100001{width:34%!important}
  .home .elementor-element-c3100003{width:66%!important}
}

@media(max-width:767px){
  /* Tagline: preserve editorial hierarchy without forcing desktop line lengths. */
  .home .allison-tagline-top{
    line-height:1.02!important;
    row-gap:0!important;
  }
  .home .allison-tagline-bottom{
    margin-top:8px!important;
    line-height:1.02!important;
  }

  /* About/story: stack the photo above the quote panel on phones. */
  .home .elementor-element-705c09e{
    flex-direction:column!important;
  }
  .home .elementor-element-705c09e > .e-con{
    width:100%!important;
    max-width:100%!important;
  }
  .home .elementor-element-705c09e .elementor-heading-title{
    font-size:clamp(38px,11vw,52px)!important;
    line-height:1.02!important;
  }

  /* Shows already stack in Elementor; give the photo and listing a cleaner gap. */
  .home .elementor-element-2ac59ba{
    gap:28px!important;
  }
  .home .elementor-element-c3100001,
  .home .elementor-element-c3100003{
    width:100%!important;
  }

  /* Contact needs to stack rather than retain the desktop row. */
  .home .elementor-element-92d92a1{
    flex-direction:column!important;
    gap:30px!important;
  }
  .home .elementor-element-92d92a1 > .e-con{
    width:100%!important;
    max-width:100%!important;
  }
}

/* Very small phones */
@media(max-width:420px){
  .home .allison-tagline-top{font-size:34px!important}
  .home .allison-tagline-bottom{font-size:32px!important}
  .home .allison-tagline-pink-stars{width:44px!important;left:-34px!important}
  .home .allison-tagline-white-stars{width:38px!important}
}
/* Mobile hero: remove redundant embedded wordmark by cropping the artwork from the top. */
@media(max-width:767px){
  .home .elementor-element-95948b{
    overflow:hidden!important;
  }
  .home .elementor-element-a47cbeb{
    overflow:hidden!important;
  }
  .home .elementor-element-a47cbeb img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    margin-top:-17%!important;
    transform:translateY(0)!important;
  }
}
/* Mobile hero: global header already carries the Allison Lee logo, so suppress the duplicate hero background wordmark. */
@media(max-width:767px){
  .home .elementor-element-95948b3{
    background-image:none!important;
  }
}