body.is-cb-menu-open .lux-event-drawer {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}

:root {
      --pb-bg: #081110;
      --pb-ink: #ffffff;
      --pb-accent: #16a89f;
      --pb-red: #e15864;
      --pb-paper: #f6f6f4;
      --pb-ink-dark: #242529;
      --pb-shell: min(1240px, calc(100vw - 2rem));
      --event-drawer-accent: #16a89f;
      --event-drawer-accent-soft: rgba(22, 168, 159, 0.12);
      --event-drawer-surface: rgba(247, 241, 232, 0.96);
      --event-drawer-border: rgba(60, 67, 64, 0.12);
      --event-drawer-ink: #2e3431;
      --photo-booths-page-cream: #f4f0e7;
    }

    html {
      scroll-behavior: smooth;
    }

    html.photo-booths-page-root {
      height: auto !important;
      overflow-x: hidden !important;
      overflow-y: auto !important;
      overscroll-behavior-y: auto !important;
    }

    html.photo-booths-page-root body.photobooth-page {
      min-height: 100vh;
      height: auto !important;
      overflow-x: hidden !important;
      overflow-y: auto !important;
      overscroll-behavior-y: auto !important;
      touch-action: auto !important;
    }

    html.photo-booths-page-root.is-menu-locked,
    html.photo-booths-page-root body.photobooth-page.is-menu-locked {
      overflow: hidden !important;
      overscroll-behavior: none !important;
      touch-action: none !important;
    }

    body.photobooth-page {
      background:
        radial-gradient(circle at 18% 0%, rgba(22, 168, 159, 0.12), transparent 22%),
        radial-gradient(circle at 82% 16%, rgba(255, 255, 255, 0.08), transparent 22%),
        #081110;
      color: var(--pb-ink);
      font-family: Poppins, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    }

    .photobooth-page main {
      display: block;
      position: relative;
      color: var(--pb-ink-dark);
      background: var(--pb-paper);
      overflow: hidden;
    }

    .pb-shell {
      width: var(--pb-shell);
      margin: 0 auto;
    }

    .hide-bc .rank-math-breadcrumb,
    .hide-bc .rank-math-breadcrumbs {
      display: none !important;
      visibility: hidden !important;
      height: 0 !important;
      margin: 0 !important;
      padding: 0 !important;
      overflow: hidden !important;
      border: 0 !important;
      box-shadow: none !important;
      background: transparent !important;
    }

    .photobooth-page :is(
      .menu-item--services > .menu-link,
      .services-flyout a[href="/photobooths/"],
      .services-flyout a[href="/photobooths/"],
      .dj-footer-links a[href="/photobooths/"]
    ) :is(.menu-roll-stack, .dj-roll-stack) span:first-child {
      color: #abfff8;
    }

    .photobooth-page :is(
      .menu-item--services > .menu-link,
      .services-flyout a[href="/photobooths/"],
      .services-flyout a[href="/photobooths/"],
      .dj-footer-links a[href="/photobooths/"]
    )::after {
      content: "";
      display: block;
      width: 100%;
      height: 2px;
      margin-top: 0.35rem;
      background: linear-gradient(90deg, rgba(22, 168, 159, 0), rgba(22, 168, 159, 0.96), rgba(22, 168, 159, 0));
    }

    .pb-booths-stage {
      position: relative;
      z-index: 5;
      background: #f8f5ef;
      overflow: hidden;
    }

    .pb-booths-stage::before {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(180deg, rgba(251, 251, 250, 0.92) 0%, rgba(251, 251, 250, 0.86) 18%, rgba(251, 251, 250, 0.82) 100%);
      pointer-events: none;
      z-index: 0;
    }

    .pb-booths-stage > * {
      position: relative;
      z-index: 1;
    }

    .pb-booths-stage--video {
      background: none;
    }

    .pb-booths-stage--video::before {
      display: none;
    }

    .live-home-hero {
      --hero-image: url("media/optimized/charleston-photo-booth-rentals-hero.webp");
      position: relative;
      height: min(100vh, 980px);
      min-height: min(100vh, 980px);
      overflow: hidden;
      z-index: 1;
      background: #050608;
      margin-top: 0 !important;
      padding-top: 0 !important;
    }

    .live-home-hero .hero__media {
      position: absolute;
      inset: 0;
      background: var(--hero-image) center calc(30% + 70px) / cover no-repeat;
      animation: heroKenBurns 12s ease-out forwards;
      transform-origin: center center;
      will-change: transform;
    }

    .live-home-hero .hero__media::before {
      background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.32) 0%, rgba(0, 0, 0, 0.1) 28%, rgba(0, 0, 0, 0.24) 62%, rgba(0, 0, 0, 0.54) 100%),
        linear-gradient(90deg, rgba(4, 2, 8, 0.6) 0%, rgba(4, 2, 8, 0.24) 35%, rgba(4, 2, 8, 0.18) 65%, rgba(4, 2, 8, 0.58) 100%);
    }

    .live-home-hero .hero__headline {
      inset: auto 0 clamp(120px, 13vh, 178px);
      pointer-events: auto;
    }

    .live-home-hero__anchors {
      position: absolute;
      left: 0;
      right: 0;
      bottom: clamp(28px, 4vh, 44px);
      z-index: 4;
      pointer-events: auto;
    }

    @keyframes heroKenBurns {
      0% {
        transform: scale(1.08) translateY(-2%);
      }
      100% {
        transform: scale(1) translateY(0);
      }
    }

    .live-home-hero .hero__headline-inner {
      --hero-headline-shift-x: 0px;
      display: grid;
      justify-items: start;
      gap: 0;
      max-width: min(960px, calc(100vw - 2rem));
      transform: translate(var(--hero-headline-shift-x), -110px);
    }

    .live-home-hero__eyebrow,
    .live-home-hero__title,
    .live-home-hero__tag,
    .live-home-hero__sub {
      opacity: 0;
      filter: blur(10px);
      animation: heroHeadlineRise 1s cubic-bezier(.22, 1, .36, 1) forwards;
    }

    .live-home-hero__eyebrow {
      margin: 0 0 0.6rem;
      font-family: "Oswald SemiBold", "Oswald", "Montserrat", sans-serif;
      font-size: clamp(1rem, 1.25vw, 1.22rem);
      line-height: 1;
      letter-spacing: 0.11em;
      text-transform: uppercase;
      color: #2ec2bc;
      text-shadow: 0 8px 18px rgba(0, 0, 0, 0.28);
      animation-delay: 0.12s;
    }

    .live-home-hero__title {
      margin: 0;
      font-family: "Uniqueen Bold", "Montserrat", sans-serif;
      font-size: clamp(3.5rem, 6vw, 6.6rem);
      line-height: 0.9;
      letter-spacing: -0.03em;
      text-transform: uppercase;
      color: #f7f3eb;
      text-shadow:
        0 8px 22px rgba(0, 0, 0, 0.44),
        0 2px 8px rgba(0, 0, 0, 0.24);
      animation-delay: 0.22s;
    }

    .live-home-hero__tag {
      margin: 1rem 0 0;
      max-width: 52rem;
      font-family: "Oswald SemiBold", "Oswald", "Montserrat", sans-serif;
      font-size: clamp(1.18rem, 2.08vw, 2rem);
      line-height: 1.08;
      letter-spacing: 0.02em;
      text-transform: uppercase;
      color: #2ec2bc;
      text-shadow:
        0 8px 18px rgba(0, 0, 0, 0.28),
        0 0 16px rgba(46, 194, 188, 0.16);
      animation-delay: 0.34s;
    }

    .live-home-hero__sub {
      margin: 1rem 0 0;
      max-width: 42rem;
      font-family: "Open Sans", sans-serif;
      font-size: clamp(0.98rem, 1.1vw, 1.12rem);
      line-height: 1.7;
      color: rgba(247, 243, 235, 0.88);
      text-shadow: 0 8px 18px rgba(0, 0, 0, 0.3);
      animation-delay: 0.46s;
    }

    .live-home-hero__highlights {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: calc(clamp(0.75rem, 1.4vw, 1rem) + 15px);
      width: min(1225px, calc(100vw - 2rem));
      margin-top: clamp(1.35rem, 2.2vw, 2rem);
      transform: translateX(-50px);
    }

    .live-home-hero__highlight {
      padding: 0.9rem 1rem 0.8rem;
      border: 1px solid rgba(255, 255, 255, 0.18);
      background: rgba(6, 11, 13, 0.34);
      backdrop-filter: blur(8px);
      box-shadow: 0 16px 28px rgba(0, 0, 0, 0.18);
      text-align: center;
      opacity: 0;
      filter: blur(10px);
      animation: heroHeadlineRise 1s cubic-bezier(.22, 1, .36, 1) forwards;
      animation-delay: 0.58s;
    }

    .live-home-hero__highlight strong {
      display: block;
      margin: 0;
      font-family: "Big Shoulders Display", "Oswald", sans-serif;
      font-size: clamp(2rem, 2.8vw, 3rem);
      line-height: 0.9;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      color: #ffffff;
    }

    .live-home-hero__highlight span {
      display: block;
      margin-top: 0.35rem;
      font-family: "Oswald SemiBold", "Oswald", "Montserrat", sans-serif;
      font-size: clamp(0.82rem, 0.96vw, 1rem);
      line-height: 1.15;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: rgba(247, 243, 235, 0.92);
    }

    .pb-booths-nav__buttons {
      position: relative;
      z-index: 1;
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: clamp(0.8rem, 1.8vw, 1.5rem);
    }

    .pb-booths-nav__link {
      position: relative;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 56px;
      padding: 0.85rem 1rem;
      overflow: hidden;
      background: var(--pb-red);
      color: #fff7f7;
      text-decoration: none;
      text-transform: uppercase;
      letter-spacing: 0.06em;
      font-weight: 700;
      font-size: clamp(0.92rem, 1.15vw, 1.1rem);
      box-shadow: 0 18px 34px rgba(225, 88, 100, 0.18);
      transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease;
    }

    .pb-booths-nav__link::after {
      content: "";
      position: absolute;
      inset: 4px;
      border: 1px solid rgba(255, 255, 255, 0.88);
      pointer-events: none;
    }

    .pb-booths-nav__link:hover,
    .pb-booths-nav__link:focus-visible {
      transform: translateY(-3px);
      background: #dc5060;
      box-shadow: 0 24px 38px rgba(225, 88, 100, 0.25);
    }

    .pb-booths-nav__link:hover::after,
    .pb-booths-nav__link:focus-visible::after {
      border-color: rgba(255, 255, 255, 0.94);
    }

    .pb-booth-section {
      position: relative;
      background: transparent;
    }

    .pb-booth-section--glam {
      --pb-booth-detail-color: var(--pb-accent);
      --pb-booth-tagline-color: var(--pb-red);
      --pb-video-play-bg: var(--pb-red);
      --pb-video-play-shadow: rgba(0, 0, 0, 0.22);
    }

    .pb-booth-section--detail-red {
      --pb-booth-detail-color: var(--pb-red);
    }

    .pb-booth-section--accent-media {
      --pb-booth-tagline-color: var(--pb-accent);
      --pb-video-play-bg: var(--pb-accent);
      --pb-video-play-shadow: rgba(22, 168, 159, 0.3);
    }

    .pb-booth-section__blurb {
      position: absolute;
      top: calc(clamp(0.9rem, 2vw, 1.4rem) - 10px);
      left: auto;
      right: clamp(0.75rem, 2vw, 1.4rem);
      width: clamp(144px, 18vw, 288px);
      z-index: 12;
      pointer-events: auto;
    }

    .pb-booth-section__blurb-link {
      display: block;
      color: inherit;
      text-decoration: none;
    }

    .pb-booth-section__blurb img {
      display: block;
      width: 100%;
      height: auto;
    }

    .pb-booth-section .msx-canvas,
    .pb-booth-section .msx-overlay {
      display: none;
    }

    .pb-booth-section__intro {
      padding: clamp(3.5rem, 7vw, 5.5rem) 0 clamp(2rem, 4vw, 2.75rem);
      text-align: center;
      background: transparent;
    }

    .pb-booth-section__title {
      margin: 0;
      font-family: "Big Shoulders Display", "Oswald", sans-serif;
      font-weight: 900;
      font-size: clamp(3rem, 6.4vw, 5.4rem);
      line-height: 0.92;
      letter-spacing: 0.02em;
      text-transform: uppercase;
      color: #292a2d;
    }

    .pb-booth-section__tagline {
      margin: 0.5rem 0 0;
      font-family: Jost, "Open Sans", sans-serif;
      font-size: clamp(1.5rem, 3.2vw, 3rem);
      line-height: 1.05;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      color: #676a71;
      font-weight: 300;
    }

    .pb-booth-section__summary {
      max-width: 70rem;
      margin: 1.4rem auto 0;
      color: #72757b;
      font-family: Jost, "Open Sans", sans-serif;
      font-size: clamp(1.05rem, 1.55vw, 1.45rem);
      line-height: 1.35;
      text-transform: uppercase;
    }

    .pb-booth-section__content {
      padding: 0 0 clamp(2.5rem, 5vw, 3rem);
    }

    .pb-booth-section__panel {
      display: grid;
      grid-template-columns: minmax(0, 1.12fr) minmax(320px, 1fr);
      gap: clamp(1.5rem, 2.8vw, 2.4rem);
      align-items: start;
      padding: clamp(1.2rem, 2vw, 1.35rem) clamp(1.2rem, 2vw, 1.45rem) clamp(1.1rem, 2vw, 1.35rem);
      border: 2px solid rgba(22, 168, 159, 0.68);
      background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(249, 249, 246, 0.94));
      box-shadow: 0 28px 50px rgba(24, 30, 34, 0.08);
    }

    .pb-booth-section__video {
      align-self: start;
    }

    .pb-booth-section__video iframe {
      width: 100%;
      height: 100%;
      border: 0;
      display: block;
    }

    .pb-video-placeholder {
      position: relative;
      display: block;
      width: 100%;
      text-decoration: none;
      color: inherit;
    }

    .pb-video-placeholder img {
      display: block;
      width: 100%;
      height: auto;
    }

    .pb-video-placeholder__play {
      position: absolute;
      left: 50%;
      top: 50%;
      width: clamp(72px, 7vw, 94px);
      height: clamp(52px, 5vw, 68px);
      transform: translate(-50%, -50%);
      border-radius: 18px;
      background: var(--pb-video-play-bg, var(--pb-red));
      box-shadow: 0 14px 28px var(--pb-video-play-shadow, rgba(0, 0, 0, 0.22));
    }

    .pb-video-placeholder__play::before {
      content: "";
      position: absolute;
      left: 53%;
      top: 50%;
      transform: translate(-50%, -50%);
      width: 0;
      height: 0;
      border-top: 14px solid transparent;
      border-bottom: 14px solid transparent;
      border-left: 22px solid #ffffff;
    }

    .pb-video-lightbox[hidden] {
      display: none;
    }

    .pb-video-lightbox {
      position: fixed;
      inset: 0;
      z-index: 9999;
      display: grid;
      place-items: center;
      padding: clamp(1rem, 4vw, 3rem);
      background:
        radial-gradient(circle at 50% 46%, rgba(22, 168, 159, 0.18), transparent 44%),
        rgba(3, 5, 6, 0.88);
      backdrop-filter: blur(14px);
    }

    .pb-video-lightbox__backdrop {
      position: absolute;
      inset: 0;
      border: 0;
      padding: 0;
      background: transparent;
      cursor: pointer;
    }

    .pb-video-lightbox__dialog {
      position: relative;
      z-index: 1;
      width: min(1120px, 94vw);
      color: #ffffff;
    }

    .pb-video-lightbox__close {
      position: absolute;
      right: clamp(-0.4rem, -1vw, -0.2rem);
      top: clamp(-3.25rem, -5vw, -2.75rem);
      display: grid;
      place-items: center;
      width: 44px;
      height: 44px;
      padding: 0;
      border: 1px solid rgba(255, 255, 255, 0.28);
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.1);
      color: #ffffff;
      font-size: 0;
      line-height: 1;
      text-align: center;
      cursor: pointer;
    }

    .pb-video-lightbox__close::before,
    .pb-video-lightbox__close::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 18px;
      height: 3px;
      border-radius: 999px;
      background: currentColor;
      transform-origin: center;
    }

    .pb-video-lightbox__close::before {
      transform: translate(-50%, -50%) rotate(45deg);
    }

    .pb-video-lightbox__close::after {
      transform: translate(-50%, -50%) rotate(-45deg);
    }

    .pb-video-lightbox__title {
      margin: 0 0 0.75rem;
      font-family: "Big Shoulders Display", "Oswald", sans-serif;
      font-size: clamp(1.5rem, 3vw, 2.75rem);
      font-weight: 900;
      letter-spacing: 0.06em;
      line-height: 0.95;
      text-transform: uppercase;
    }

    .pb-video-lightbox__frame-wrap {
      position: relative;
      width: 100%;
      aspect-ratio: 16 / 9;
      overflow: hidden;
      border: 2px solid rgba(22, 168, 159, 0.78);
      background: #000000;
      box-shadow: 0 30px 90px rgba(0, 0, 0, 0.46);
    }

    .pb-video-lightbox__frame {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      border: 0;
      display: block;
    }

    .pb-video-lightbox__fallback {
      display: none;
      min-height: min(70vh, 720px);
      place-items: center;
      padding: clamp(28px, 5vw, 70px);
      text-align: center;
      border: 2px solid rgba(22, 168, 159, 0.78);
      background: #151515;
      box-shadow: 0 30px 90px rgba(0, 0, 0, 0.46);
    }

    .pb-video-lightbox.is-fallback .pb-video-lightbox__frame-wrap {
      display: none;
    }

    .pb-video-lightbox.is-fallback .pb-video-lightbox__fallback {
      display: grid;
    }

    .pb-video-lightbox__fallback-copy {
      margin: 0 auto 22px;
      max-width: 560px;
      color: rgba(255, 255, 255, 0.82);
      font-family: "Open Sans", sans-serif;
      font-size: clamp(16px, 2vw, 21px);
      line-height: 1.45;
    }

    .pb-video-lightbox__fallback-link {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 54px;
      padding: 0 28px;
      border: 2px solid var(--photo-teal);
      color: #ffffff;
      font-family: "Big Shoulders Display", "Oswald", sans-serif;
      font-size: clamp(18px, 2.4vw, 28px);
      font-weight: 900;
      letter-spacing: 0.08em;
      text-decoration: none;
      text-transform: uppercase;
    }

    .pb-booth-section__body {
      padding-top: clamp(0.15rem, 1vw, 0.45rem);
    }

    .pb-booth-section__eyebrow {
      margin: 0;
      font-family: Poppins, system-ui, sans-serif;
      font-size: clamp(2rem, 3.3vw, 3rem);
      line-height: 1;
      font-weight: 800;
      text-transform: uppercase;
      color: var(--pb-red);
    }

    .pb-booth-section__copy {
      margin: 1rem 0 1.5rem;
      color: #6a6d74;
      font-size: clamp(1.05rem, 1.35vw, 1.2rem);
      line-height: 1.62;
      font-family: "Open Sans", system-ui, sans-serif;
    }

    .pb-booth-section__features-title {
      margin: 0 0 0.75rem;
      font-family: "Big Shoulders Display", "Oswald", sans-serif;
      font-weight: 900;
      font-size: clamp(1.8rem, 2.8vw, 2.4rem);
      line-height: 0.95;
      letter-spacing: 0.03em;
      text-transform: uppercase;
      color: var(--pb-red);
    }

    .pb-booth-section__features {
      margin: 0;
      padding-left: 1.15rem;
      color: #54575d;
      font-size: clamp(1rem, 1.25vw, 1.15rem);
      line-height: 1.6;
      font-weight: 600;
    }

    .pb-booth-section--glam.msx-section {
      --msx-shell-width: 100vw;
      --msx-bg: #fbf8f0;
      width: 100%;
      left: auto;
      right: auto;
      margin-left: 0;
      margin-right: 0;
      margin-top: 0;
      padding: calc(clamp(4rem, 6vw, 5.6rem) + 19px) 0 clamp(2.25rem, 4vw, 3.2rem);
      background:
        linear-gradient(180deg, rgba(251, 248, 240, 0.95) 0%, rgba(251, 248, 240, 0.98) 100%),
        #fbf8f0;
      -webkit-mask-image: none;
      mask-image: none;
      overflow: hidden;
      isolation: isolate;
    }

    .pb-booth-section--glam::after {
      content: none;
    }

    .pb-booth-section--glam .msx-canvas,
    .pb-booth-section--glam .msx-overlay {
      display: block;
    }

    .pb-booth-section--glam .msx-canvas {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      opacity: 1;
      z-index: 1;
      pointer-events: none;
    }

    .pb-booth-section--glam .msx-overlay {
      z-index: 2;
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.02) 0%, rgba(255, 255, 255, 0.03) 42%, rgba(255, 255, 255, 0.05) 100%);
      mix-blend-mode: normal;
      pointer-events: none;
      position: absolute;
      inset: 0;
      display: block;
    }

    .pb-booth-section--glam .pb-booth-section__intro,
    .pb-booth-section--glam .pb-booth-section__content {
      position: relative;
      z-index: 3;
      background: transparent;
    }

    .pb-booth-section--glam .pb-booth-section__intro {
      padding: clamp(1.35rem, 2vw, 1.9rem) 0 clamp(1.9rem, 3vw, 2.55rem);
    }

    .pb-booth-section--glam .pb-booth-section__title {
      font-size: clamp(3.8rem, 5.6vw, 5.95rem);
      letter-spacing: -0.035em;
    }

    .pb-booth-section--glam .pb-booth-section__tagline {
      margin-top: 0.45rem;
      font-family: "Heatwood", "Yellowtail", cursive;
      font-size: clamp(1.2rem, 1.9vw, 2.1rem);
      font-weight: 400;
      letter-spacing: 0;
      line-height: 0.95;
      text-transform: none;
      color: var(--pb-booth-tagline-color);
      transform: translateX(200px);
    }

    .pb-booth-section--glam .pb-booth-section__summary {
      max-width: 46rem;
      margin-top: 1.25rem;
      font-size: clamp(1.15rem, 1.45vw, 1.65rem);
      line-height: 1.34;
      font-style: italic;
      color: #7b7a75;
    }

    .pb-booth-section--glam .pb-booth-section__content {
      padding-bottom: 0;
    }

    .pb-booth-section--glam .pb-booth-section__panel {
      max-width: min(1240px, calc(100vw - 96px));
      margin: 0 auto;
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
      gap: clamp(3rem, 5vw, 5.5rem);
      align-items: stretch;
      padding: 0;
      border: 0;
      background: transparent;
      box-shadow: none;
    }

    .pb-booth-section--glam .pb-booth-section__video {
      width: 130%;
      transform: translate(-60px, 10px);
      box-shadow: 0 18px 36px rgba(18, 22, 26, 0.08);
    }

    .pb-booth-section--glam .pb-booth-section__body {
      display: flex;
      flex-direction: column;
      justify-content: center;
      min-height: 100%;
      padding-top: 0;
      transform: translateX(60px);
    }

    .pb-booth-section--glam .pb-booth-section__eyebrow,
    .pb-booth-section--glam .pb-booth-section__features-title {
      color: var(--pb-booth-detail-color);
    }

    .pb-booth-section--glam .pb-booth-section__eyebrow {
      font-size: clamp(1.7rem, 2.55vw, 2.35rem);
      letter-spacing: 0.01em;
    }

    .pb-booth-section--glam .pb-booth-section__copy {
      margin: 0.75rem 0 1.2rem;
      font-size: clamp(0.98rem, 1.08vw, 1.08rem);
      line-height: 1.5;
      color: #666970;
    }

    .pb-booth-section--glam .pb-booth-section__features-title {
      margin-bottom: 0.55rem;
      font-size: clamp(1.65rem, 2.05vw, 1.95rem);
    }

    .pb-booth-section--glam .pb-booth-section__features {
      font-size: clamp(0.96rem, 1vw, 1.04rem);
      line-height: 1.42;
      color: #5a5d63;
    }

    .pb-booth-section--glam .pb-booth-section__features li + li {
      margin-top: 0.18rem;
    }

    .pb-media-band {
      position: relative;
      min-height: clamp(310px, 44vw, 540px);
      overflow: hidden;
      background: var(--pb-media-poster, #091111) center / cover no-repeat;
    }

    .pb-media-band video,
    .pb-media-band img {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    .pb-media-band video {
      opacity: 0;
      transition: opacity 420ms ease;
    }

    .pb-media-band video.is-media-ready {
      opacity: 1;
    }

    @media (prefers-reduced-motion: reduce) {
      .pb-media-band video {
        transition: none;
      }
    }

    .pb-media-band::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0.42)),
        radial-gradient(circle at 50% 30%, rgba(255, 255, 255, 0.08), transparent 26%);
      z-index: 1;
    }

    .pb-media-band__divider {
      position: absolute;
      left: 0;
      width: 100%;
      height: 19px;
      background-image: none;
      background-position: center;
      background-repeat: no-repeat;
      background-size: 100% 100%;
      pointer-events: none;
      opacity: 0.98;
      z-index: 2;
    }

    .pb-media-band__divider--green {
      background-image: none;
      height: 76px;
    }

    .pb-media-band__divider--top {
      top: 0;
      transform: rotate(180deg);
    }

    .pb-media-band__divider--bottom {
      bottom: 0;
    }

    .pb-gallery-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 0;
      background: #fbfbfa;
      border-bottom: 1px solid rgba(25, 28, 33, 0.08);
    }

    .pb-gallery-grid--two {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pb-gallery-grid--slowmo-two .pb-gallery-grid__item {
      min-height: 371px;
    }

    .pb-gallery-grid--glam {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .pb-gallery-grid--video-overlap {
      position: relative;
      margin-top: -21px;
    }

    .pb-gallery-grid__item {
      min-height: clamp(220px, 30vw, 430px);
      overflow: hidden;
      border-right: 1px solid rgba(19, 21, 28, 0.1);
    }

    .pb-gallery-grid__item:last-child {
      border-right: 0;
    }

    .pb-gallery-grid__item img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    .pb-gallery-grid--glam .pb-gallery-grid__item {
      min-height: 0;
      aspect-ratio: 775.33 / 516;
      background-color: #fbfbfa;
      background-image: var(--pb-glam-gallery-image, none);
      background-repeat: no-repeat;
      background-size: 300% 100%;
    }

    .pb-gallery-grid--glam .pb-gallery-grid__item--left {
      background-position: left center;
    }

    .pb-gallery-grid--glam .pb-gallery-grid__item--center {
      background-position: center top;
    }

    .pb-gallery-grid--glam .pb-gallery-grid__item--right {
      background-position: right center;
    }

    .pb-gallery-grid--openair-split .pb-gallery-grid__item {
      min-height: 0;
      background-color: #fbfbfa;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 0;
    }

    .pb-gallery-grid--openair-split .pb-gallery-grid__item img {
      display: block;
      width: auto;
      max-width: 100%;
      height: auto;
    }

    .pb-gallery-full {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      background: #fbfbfa;
      border-bottom: 1px solid rgba(25, 28, 33, 0.08);
    }

    .pb-gallery-full img {
      display: block;
      width: 100%;
      height: auto;
    }

    .pb-gallery-full--thirds img {
      display: none;
    }

    .pb-gallery-full__third {
      min-height: clamp(220px, 30vw, 430px);
      background-repeat: no-repeat;
      background-size: 300% 100%;
      background-position-y: center;
      border-right: 1px solid rgba(19, 21, 28, 0.1);
    }

    .pb-gallery-full__third:last-child {
      border-right: 0;
    }

    .pb-gallery-full__third--left {
      background-position-x: left;
    }

    .pb-gallery-full__third--center {
      background-position-x: center;
    }

    .pb-gallery-full__third--right {
      background-position-x: right;
    }

    html.photo-booths-page-root body.photobooth-page :is(
      .after-steps__side-script,
      .after-steps__side-script-line,
      .after-steps__side-script-line--word,
      .after-steps__side-script-char
    ) {
      overflow: visible !important;
      contain: none !important;
      clip-path: none !important;
      -webkit-mask-image: none !important;
      mask-image: none !important;
    }

    html.photo-booths-page-root body.photobooth-page .after-steps__side-script {
      line-height: 1.25;
      padding-block: 0.18em 0.36em;
      margin-block: -0.12em;
    }

    @media (max-width: 640px) {
      html.photo-booths-page-root body.photobooth-page .pb-gallery-full--thirds {
        display: block;
      }

      html.photo-booths-page-root body.photobooth-page .pb-gallery-full--thirds img {
        display: block;
        width: 100%;
        height: auto;
      }

      html.photo-booths-page-root body.photobooth-page .pb-gallery-full--thirds .pb-gallery-full__third {
        display: none;
      }
    }

    html.photo-booths-page-root body.photobooth-page .dstp-page-bg-image {
      opacity: calc(0.18 + (0.82 * (1 - min(1, var(--transition-sand-fade)))));
      transition: none !important;
    }

    html.photo-booths-page-root body.photobooth-page .dstp-page-bg-soften,
    html.photo-booths-page-root body.photobooth-page .dstp-page::before,
    html.photo-booths-page-root body.photobooth-page .dstp-page::after,
    html.photo-booths-page-root body.photobooth-page .dstp-shared-light {
      transition: none !important;
    }

    .after-steps.msx-section {
      position: relative;
      z-index: 4;
      padding: 0 0 clamp(6rem, 10vw, 9rem);
      width: 100%;
      left: auto;
      right: auto;
      margin: 0;
      margin-top: 0;
      background:
        linear-gradient(180deg, rgba(246, 242, 234, 0.96) 0%, rgba(246, 242, 234, 0.97) 34%, rgba(246, 242, 234, 0.985) 68%, rgba(246, 242, 234, 1) 100%),
        linear-gradient(180deg, rgba(173, 170, 162, 0.06) 0%, rgba(173, 170, 162, 0.1) 100%),
        #f4f0e7;
      color: #1a1f1b;
      -webkit-mask-image: none;
      mask-image: none;
      overflow: clip;
    }

    .after-steps.msx-section::after {
      display: none;
    }

    .after-steps::before {
      content: none;
    }

    .after-steps .msx-canvas,
    .after-steps .msx-overlay {
      position: absolute;
      inset: 0;
      pointer-events: none;
    }

    .after-steps .msx-canvas {
      z-index: 0;
      opacity: 0.82;
    }

    .after-steps .msx-overlay {
      z-index: 1;
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.04) 0%, rgba(255, 255, 255, 0.03) 42%, rgba(255, 255, 255, 0.06) 100%);
      mix-blend-mode: normal;
    }

    .after-steps__shell {
      width: min(var(--container-wide), calc(100vw - 2rem));
      margin: 0 auto;
      position: relative;
      z-index: 1;
      min-height: 100svh;
    }

    .after-steps__intro {
      display: grid;
      grid-template-columns: minmax(0, 1.55fr) minmax(280px, 0.9fr);
      gap: clamp(1.6rem, 4vw, 4rem);
      align-items: end;
      margin-bottom: clamp(2.6rem, 4vw, 4rem);
      position: relative;
      top: auto;
      z-index: 8;
      padding: calc(clamp(5rem, 9vw, 8.5rem) - 75px) 0 1.6rem;
      backdrop-filter: none;
    }

    .after-steps__intro--solo {
      grid-template-columns: 1fr;
    }

    .after-steps__intro-main {
      position: relative;
      left: 55px;
    }

    .after-steps__side-word {
      position: absolute;
      left: 0;
      top: calc(clamp(2.25rem, 4.2vw, 4.25rem) + 80px);
      width: max-content;
      pointer-events: none;
      user-select: none;
      z-index: 9;
      opacity: 0.98;
      transform: translateX(calc(-100% + 273px)) translateY(81px) rotate(-10deg);
      transform-origin: center center;
    }

    .after-steps__side-script {
      display: inline-flex;
      flex-direction: column;
      align-items: flex-start;
      font-family: "Heatwood", "Yellowtail", cursive;
      font-weight: 400;
      color: #8acfc9;
      line-height: 0.78;
      letter-spacing: 0.01em;
      white-space: nowrap;
      text-shadow:
        0 10px 22px rgba(0, 0, 0, 0.08),
        0 0 18px rgba(138, 207, 201, 0.08);
    }

    .after-steps__side-script-line {
      display: inline-flex;
      align-items: flex-end;
      font-size: 87px;
    }

    .after-steps__side-script-line--underline {
      margin-top: -7px;
      margin-left: 113px;
      font-size: 71px;
      letter-spacing: 0;
      line-height: 0.32;
      transform: scaleX(3.5);
      transform-origin: left center;
    }

    @media (min-width: 1025px) and (max-width: 1600px) {
      .after-steps__side-word {
        transform: translateX(calc(-100% + 329px + clamp(0px, calc(800px - 50vw), 94px))) translateY(81px) rotate(-10deg);
      }
    }

    @media (min-width: 1025px) {
      .after-steps__card.after-steps__card--desktop-hidden {
        display: none;
      }
    }

    .after-steps__side-script-char {
      display: inline-block;
      opacity: 0;
      filter: blur(4px);
      transform: translate3d(0, 0.24em, 0) scale(0.94);
      transition:
        opacity 320ms ease,
        filter 420ms ease,
        transform 560ms cubic-bezier(.22, 1, .36, 1);
      transition-delay: calc(var(--char-index) * 68ms);
    }

    .after-steps__side-script.is-word-visible .after-steps__side-script-char {
      opacity: 1;
      filter: blur(0);
      transform: translate3d(0, 0, 0) scale(1);
    }

    .after-steps__side-script.is-word-hiding .after-steps__side-script-char {
      opacity: 0;
      filter: blur(3px);
      transform: translate3d(0, -0.08em, 0) scale(0.98);
      transition-delay: 0ms;
    }

    .after-steps__side-word img {
      display: block;
      width: 100%;
      height: auto;
    }

    .after-steps__intro::before {
      display: none;
    }

    .after-steps__eyebrow {
      margin: 0 0 0.95rem;
      color: rgba(22, 176, 164, 0.88);
      font-family: "Oswald", "Montserrat", sans-serif;
      font-size: 0.9rem;
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }

    .after-steps__title {
      margin: 0;
      color: #404742;
      font-family: "Big Shoulders Display", "Montserrat", sans-serif;
      font-size: clamp(2.8rem, 5vw, 5rem);
      font-weight: 900;
      line-height: 0.92;
      letter-spacing: -0.03em;
      text-transform: uppercase;
      position: relative;
      z-index: 2;
    }

    .after-steps__title-accent {
      color: #16b0a4;
    }

    .after-steps__lede {
      margin: 0;
      max-width: 31rem;
      color: rgba(64, 71, 66, 0.86);
      font-family: "Open Sans", sans-serif;
      font-size: clamp(1rem, 1.45vw, 1.16rem);
      line-height: 1.7;
    }

    .after-steps__stage-wrap {
      position: relative;
      margin-top: calc(clamp(3rem, 6vw, 4.5rem) + 30px);
      padding-bottom: max(0px, calc(clamp(4rem, 8vw, 6.5rem) - 80px));
    }

    .after-steps__stage {
      position: relative;
      width: min(1240px, 88vw);
      margin: 0 auto;
    }

    .after-steps__stage-doodle {
      --doodle-shift-y: 0px;
      --doodle-rotate: -12deg;
      position: absolute;
      left: -295px;
      bottom: -84px;
      width: clamp(272px, 25.6vw, 400px);
      height: auto;
      z-index: 0;
      pointer-events: none;
      user-select: none;
      will-change: transform;
      transform: translate3d(0, var(--doodle-shift-y), 0) rotate(var(--doodle-rotate));
      transition: transform 120ms linear;
    }

    .after-steps__deck {
      position: relative;
      z-index: 1;
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: clamp(1rem, 1.8vw, 1.5rem);
      align-items: stretch;
    }

    .after-steps__card {
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: stretch;
      min-height: clamp(520px, 48vw, 660px);
      padding: clamp(1.15rem, 1.8vw, 1.5rem);
      border: 1px solid rgba(216, 207, 194, 0.72);
      border-radius: 2rem;
      background: rgb(20, 25, 23);
      box-shadow: 0 24px 52px rgba(0, 0, 0, 0.22);
      will-change: transform, opacity;
      overflow: hidden;
    }

    .after-steps__card:nth-child(3n + 1),
    .after-steps__card:nth-child(3n) {
      top: 25px;
    }

    .after-steps__card::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.02), transparent 35%),
        radial-gradient(circle at 85% 22%, rgba(183, 197, 157, 0.06), transparent 28%);
      pointer-events: none;
    }

    .after-steps__card::after {
      content: "";
      position: absolute;
      inset: 8px;
      border: 1px solid rgba(216, 207, 194, 0.9);
      border-radius: calc(2rem - 8px);
      pointer-events: none;
      z-index: 1;
    }

    .after-steps__card-body {
      position: relative;
      z-index: 1;
      display: flex;
      flex-direction: column;
      min-width: 0;
      height: 100%;
    }

    .after-steps__icon {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 64px;
      height: 64px;
      margin: 15px auto 1rem;
      color: #16a89f;
    }

    .after-steps__icon svg {
      display: block;
      width: 100%;
      height: 100%;
    }

    .after-steps__copy {
      margin-top: 0;
      padding: clamp(1rem, 1.5vw, 1.25rem);
      border-radius: 0.4rem;
      min-height: 100%;
      display: flex;
      flex-direction: column;
    }

    .after-steps__card-title {
      margin: 0;
      color: #eee6da;
      font-family: "Montserrat", sans-serif;
      font-size: clamp(1.6rem, 2vw, 2.05rem);
      font-weight: 500;
      line-height: 0.94;
      letter-spacing: -0.05em;
      text-transform: uppercase;
    }

    .after-steps__card-sub {
      margin: 0.55rem 0 0;
      color: #16b0a4;
      font-family: "Poppins", sans-serif;
      font-size: clamp(0.96rem, 1.05vw, 1.08rem);
      font-weight: 700;
      line-height: 1.35;
    }

    .after-steps__card-text {
      margin: 1rem 0 0;
      color: rgba(241, 235, 226, 0.74);
      font-family: "Open Sans", sans-serif;
      font-size: clamp(1rem, 1vw, 1.08rem);
      line-height: 1.5;
    }

    .after-steps__card-list {
      list-style: none;
      margin: 1rem 0 0;
      padding: 0;
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 0.7rem 1rem;
    }

    .after-steps__card-list li {
      position: relative;
      margin: 0;
      padding-left: 1.25rem;
      color: rgba(241, 235, 226, 0.74);
      font-family: "Open Sans", sans-serif;
      font-size: 0.96rem;
      line-height: 1.5;
    }

    .after-steps__card-list li::before {
      content: "";
      position: absolute;
      left: 0;
      top: 0.45rem;
      width: 0.5rem;
      height: 0.25rem;
      border: 2px solid #16b0a4;
      border-top: 0;
      border-right: 0;
      transform: rotate(-45deg);
      transform-origin: center center;
    }

    .after-steps__card-popular {
      margin: 1rem 0 0;
      color: rgba(241, 235, 226, 0.88);
      font-family: "Open Sans", sans-serif;
      font-size: 0.95rem;
      line-height: 1.5;
    }

    .after-steps__card-popular strong {
      color: #f4efe6;
      font-weight: 700;
    }

    .after-difference-photo {
      margin: 1.4rem 0 0 0;
      width: min(100%, 540px);
      background: transparent;
      overflow: visible;
    }

    .after-difference-photo img {
      display: block;
      width: 100%;
      height: auto;
      object-fit: cover;
      background: transparent;
      filter:
        drop-shadow(0 18px 40px rgba(0, 0, 0, 0.26))
        drop-shadow(0 0 18px rgba(22, 168, 159, 0.16));
      -webkit-mask-image: radial-gradient(
        ellipse 64% 60% at 50% 50%,
        rgba(0, 0, 0, 1) 42%,
        rgba(0, 0, 0, 0.96) 52%,
        rgba(0, 0, 0, 0.76) 61%,
        rgba(0, 0, 0, 0.4) 70%,
        rgba(0, 0, 0, 0.12) 78%,
        rgba(0, 0, 0, 0) 85%
      );
      mask-image: radial-gradient(
        ellipse 64% 60% at 50% 50%,
        rgba(0, 0, 0, 1) 42%,
        rgba(0, 0, 0, 0.96) 52%,
        rgba(0, 0, 0, 0.76) 61%,
        rgba(0, 0, 0, 0.4) 70%,
        rgba(0, 0, 0, 0.12) 78%,
        rgba(0, 0, 0, 0) 85%
      );
      -webkit-mask-repeat: no-repeat;
      mask-repeat: no-repeat;
      -webkit-mask-size: 100% 100%;
      mask-size: 100% 100%;
    }

    .dr-difference-sticky__icon {
      background-image: none !important;
      display: grid;
      place-items: center;
      color: #16a89f;
    }

    .dr-difference-sticky__icon svg {
      display: block;
      width: 100%;
      height: 100%;
    }

    .dstp-page-bg-image {
      position: absolute;
      inset: 0;
      background-image: var(--dstp-page-bg-image, none);
      background-position: center center;
      background-size: cover;
      background-repeat: no-repeat;
      opacity: 0.2;
      transition: opacity 220ms cubic-bezier(.22, 1, .36, 1);
    }

    .dstp-page {
      position: relative;
      overflow: hidden;
      isolation: isolate;
      background: #050807;
    }

    .dstp-page::before {
      position: absolute;
      inset: 0;
      opacity: calc(1 - min(1, calc(var(--transition-sand-fade) * 1.35)));
      transition: opacity 220ms cubic-bezier(.22, 1, .36, 1);
    }

    .dstp-page::after {
      position: absolute;
      inset: 0;
      opacity: calc(min(1, calc(var(--transition-bridge) * 1.08)) * (1 - min(1, calc(var(--transition-sand-fade) * 1.35))));
      transition: opacity 200ms cubic-bezier(.22, 1, .36, 1);
    }

    .dstp-shared-light {
      position: absolute;
      inset: 0;
      opacity: calc(min(1, calc(var(--transition-eased) * 1.28)) + ((1 - min(1, calc(var(--transition-eased) * 1.28))) * min(1, calc(var(--transition-sand-fade) * 1.35))));
      transition: opacity 220ms cubic-bezier(.22, 1, .36, 1);
    }

    .dstp-page-bg-soften {
      position: absolute;
      inset: 0;
      background:
        linear-gradient(180deg, rgba(246, 242, 234, min(0.72, calc(var(--transition-sand-fade) * 0.72))), rgba(246, 242, 234, min(0.72, calc(var(--transition-sand-fade) * 0.72)))),
        radial-gradient(circle at 50% 0%, rgba(255, 255, 255, calc(0.03 + (0.12 * min(1, calc(var(--transition-eased) * 1.28))))), transparent 52%),
        linear-gradient(180deg, rgba(255, 255, 255, calc(0.02 + (0.17 * min(1, calc(var(--transition-eased) * 1.28))))), rgba(255, 255, 255, calc(0.01 + (0.08 * min(1, calc(var(--transition-eased) * 1.28))))));
      transition: background 240ms cubic-bezier(.22, 1, .36, 1), opacity 220ms cubic-bezier(.22, 1, .36, 1);
    }

    .after-steps__card--included {
      min-height: 310px;
      padding: 0;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
    }

    .after-steps__card--included::before {
      background: linear-gradient(180deg, rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0.56));
    }

    .after-steps__card-body--included {
      display: block;
      height: 100%;
      min-height: 310px;
    }

    .after-steps__included-label {
      position: absolute;
      inset: 0;
      display: grid;
      place-items: center;
      padding: 1rem;
      text-align: center;
      color: #ffffff;
      font-family: "Big Shoulders Display", "Oswald", sans-serif;
      font-size: clamp(2rem, 3vw, 3rem);
      line-height: 0.92;
      font-weight: 900;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      text-shadow: 0 2px 8px rgba(0, 0, 0, 0.34);
      z-index: 1;
    }

    .after-steps__transition {
      --after-transition-height: clamp(120px, 10vw, 170px);
      display: none;
    }

    .dstp-page .de-social-ref {
      position: relative;
      margin-top: clamp(-120px, -7vw, -72px);
      padding: clamp(3rem, 6vw, 4.5rem) 1.1rem clamp(3rem, 6vw, 4.5rem);
      color: #10211f;
      background: transparent;
      isolation: isolate;
      overflow: visible;
    }

    .dstp-page .de-social-ref::before {
      content: "";
      position: absolute;
      inset: clamp(-220px, -14vw, -132px) 0 0;
      background:
        linear-gradient(180deg,
          rgba(244, 241, 233, 0) 0%,
          rgba(244, 241, 233, 0.22) 24%,
          rgba(244, 241, 233, 0.74) 58%,
          #f4f1e9 82%,
          #f4f1e9 100%);
      pointer-events: none;
      z-index: 0;
    }

    .dstp-page .de-social-ref::after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      height: clamp(96px, 9vw, 148px);
      background: linear-gradient(180deg, rgba(244, 241, 233, 0) 0%, rgba(244, 241, 233, 0.84) 68%, #f4f1e9 100%);
      pointer-events: none;
      z-index: 0;
    }

    .dstp-page .de-social-ref__inner {
      position: relative;
      z-index: 1;
    }

    .dstp-page .de-social-ref__divider {
      width: 100%;
      height: 50px;
      background: transparent;
    }

    .dstp-page .de-social-ref__head {
      display: grid;
      justify-items: center;
      text-align: center;
      gap: 0.7rem;
      margin-bottom: clamp(2rem, 4vw, 3rem);
      pointer-events: none;
    }

    .dstp-page .de-social-ref__title {
      margin: 0;
      color: #10211f;
      font-family: "Montserrat", "Poppins", sans-serif;
      font-size: clamp(42px, 4.6vw, 72px);
      line-height: 0.92;
      letter-spacing: -0.06em;
      font-weight: 900;
      text-transform: uppercase;
    }

    .dstp-page .de-social-ref__title-top,
    .dstp-page .de-social-ref__title-bottom {
      display: block;
    }

    .dstp-page .de-social-ref__title-top {
      color: inherit;
      font-family: inherit;
      font-size: inherit;
      font-weight: inherit;
      letter-spacing: inherit;
      text-transform: inherit;
    }

    .dstp-page .de-social-ref__title-bottom {
      max-width: 24ch;
      margin: 0 auto;
      color: #161616;
      font-family: "Cormorant Garamond", serif;
      font-size: 0.65em;
      font-weight: 500;
      letter-spacing: -0.04em;
      line-height: 1.08;
      text-transform: none;
    }

    .dstp-page .de-social-ref__faq-list {
      width: min(1520px, 92vw);
      margin: 0 auto;
      display: grid;
      gap: 1.35rem;
    }

    .dstp-page .de-social-ref__faq-item {
      border: 1px solid rgba(16, 33, 31, 0.1);
      border-radius: 2rem;
      background: rgba(255, 255, 255, 0.88);
      box-shadow:
        0 14px 34px rgba(16, 33, 31, 0.08),
        0 3px 8px rgba(16, 33, 31, 0.04);
      backdrop-filter: blur(10px);
      overflow: hidden;
    }

    .dstp-page .de-social-ref__faq-question {
      position: relative;
      list-style: none;
      cursor: pointer;
      padding: 1.55rem 4.9rem 1.55rem 2.1rem;
      color: #1a2a28;
      font-family: "Montserrat", "Poppins", sans-serif;
      font-size: clamp(1.1rem, 1.75vw, 1.58rem);
      font-weight: 800;
      line-height: 1.18;
      letter-spacing: -0.035em;
    }

    .dstp-page .de-social-ref__faq-question::-webkit-details-marker {
      display: none;
    }

    .dstp-page .de-social-ref__faq-question::before,
    .dstp-page .de-social-ref__faq-question::after {
      content: "";
      position: absolute;
      top: 50%;
      right: 2rem;
      width: 22px;
      height: 3px;
      border-radius: 999px;
      background: #16a89f;
      transform: translateY(-50%);
      transition: transform 220ms ease, opacity 220ms ease;
    }

    .dstp-page .de-social-ref__faq-question::after {
      transform: translateY(-50%) rotate(90deg);
    }

    .dstp-page .de-social-ref__faq-item[open] .de-social-ref__faq-question::after {
      transform: translateY(-50%) rotate(180deg);
      opacity: 0;
    }

    .dstp-page .de-social-ref__faq-answer {
      padding: 0 2.1rem 1.7rem;
      color: rgba(16, 33, 31, 0.74);
      font-family: "Open Sans", sans-serif;
      font-size: clamp(1rem, 1.22vw, 1.16rem);
      line-height: 1.72;
    }

    .dstp-page .de-social-ref__faq-answer p {
      margin: 0;
      max-width: 72ch;
    }

    .dstp-page .de-social-ref__cta {
      display: flex;
      justify-content: center;
      margin-top: clamp(1.8rem, 3vw, 2.7rem);
      transform: none;
    }

    .dstp-page .de-social-ref__head {
      transform: none !important;
    }

    .dstp-page .de-social-ref__cta .msx-button.approved-button {
      --approved-button-script-size: clamp(0.86rem, 1.15vw, 1.08rem);
      --approved-button-gap: clamp(8px, 0.72vw, 12px);
      width: min(100%, 280px);
    }

    .dj-footer-section {
      background: linear-gradient(180deg, #f4f1e9 0%, #f4f1e9 44px, #dad4c9 72px, #3a3732 140px, #080706 240px, #080706 100%);
    }

    body.photobooth-page .darby-global-footer,
    body.photobooth-page .darby-global-footer .dj-footer-section {
      background: var(--photo-booths-page-cream);
    }

    body.photobooth-page .darby-global-footer .dj-footer-section::before {
      background: linear-gradient(
        180deg,
        var(--photo-booths-page-cream) 0%,
        var(--photo-booths-page-cream) 12%,
        #d9f2ec 24%,
        #8fd6c9 38%,
        #35c4b0 47%,
        #04a58a 50%,
        #04a58a 100%
      );
    }

    @media (min-width: 1100px) {
      body.photobooth-page .dstp-page .de-social-ref {
        padding-bottom: clamp(14px, 1.4vw, 24px);
        background: transparent;
      }

      body.photobooth-page .dstp-page .de-social-ref::before {
        inset: clamp(-260px, -15vw, -160px) 0 0;
      }

      body.photobooth-page .dstp-page .de-social-ref::after {
        height: clamp(72px, 7vw, 116px);
        background: linear-gradient(180deg, rgba(244, 240, 231, 0) 0%, rgba(244, 240, 231, 0.82) 68%, var(--photo-booths-page-cream) 100%);
      }

      body.photobooth-page .dstp-page .de-social-ref__inner {
        padding-bottom: clamp(20px, 2vw, 30px);
      }

      body.photobooth-page .darby-global-footer {
        margin-top: -1px;
      }
    }

    /* Tablet: 768px to 1024px */
    @media (min-width: 768px) and (max-width: 1024px) {
      .pb-shell {
        width: min(1240px, calc(100vw - 3rem));
      }

      .live-home-hero {
        height: min(94vh, 900px);
        min-height: min(94vh, 900px);
      }

      .live-home-hero .hero__headline {
        inset: auto 0 210px;
      }

      .live-home-hero .hero__headline-inner {
        --hero-headline-shift-x: 0px;
        max-width: min(100%, calc(100vw - 4rem));
        transform: translate(0, -48px);
      }

      .live-home-hero__title {
        font-size: clamp(4.35rem, 8.3vw, 5.85rem);
      }

      .live-home-hero__tag {
        font-size: clamp(1.2rem, 2.5vw, 1.55rem);
      }

      .live-home-hero__sub {
        max-width: 34rem;
        font-size: 1rem;
      }

      .live-home-hero__highlights {
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1rem;
        transform: none;
      }

      .live-home-hero__highlight {
        padding: 0.85rem 0.95rem 0.8rem;
      }

      .live-home-hero__anchors {
        bottom: 32px;
      }

      .pb-booths-nav__buttons {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .pb-booth-section__intro {
        padding: 3rem 0 2.25rem;
      }

      .pb-booth-section__summary {
        max-width: 38rem;
        font-size: clamp(1rem, 1.75vw, 1.22rem);
      }

      .pb-booth-section__panel {
        grid-template-columns: 1fr;
        gap: 2rem;
      }

      .pb-booth-section__blurb {
        top: 1rem;
        right: 1rem;
        width: clamp(120px, 20vw, 184px);
      }

      .pb-booth-section--glam .pb-booth-section__tagline,
      .pb-booth-section--glam .pb-booth-section__video,
      .pb-booth-section--glam .pb-booth-section__body {
        transform: none;
      }

      .pb-booth-section--glam .pb-booth-section__panel {
        max-width: min(760px, calc(100vw - 3rem));
        grid-template-columns: 1fr;
        gap: 2rem;
      }

      .pb-booth-section--glam .pb-booth-section__video {
        width: 100%;
      }

      .pb-media-band {
        min-height: clamp(280px, 34vw, 360px);
      }

      .pb-media-band__divider--green {
        height: 56px;
      }

      .pb-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .pb-gallery-grid--openair-split .pb-gallery-grid__item:last-child {
        grid-column: 1 / -1;
      }

      .pb-gallery-grid--openair-split .pb-gallery-grid__item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }

      .pb-gallery-grid--slowmo-two .pb-gallery-grid__item {
        min-height: 320px;
      }

      .after-steps__shell {
        width: min(var(--container-wide), calc(100vw - 3rem));
      }

      .after-steps__intro {
        grid-template-columns: 1fr;
        gap: 1.25rem;
        margin-bottom: 2.5rem;
        padding: 3rem 0 0;
      }

      .after-steps__intro-main {
        left: 0;
      }

      .after-steps__side-word {
        left: auto;
        right: 0;
        top: -0.4rem;
        transform: translate(0, 0) rotate(-8deg);
      }

      .after-steps__side-script-line {
        font-size: clamp(2.5rem, 5vw, 3.4rem);
      }

      .after-steps__side-script-line--underline {
        margin-top: -0.45rem;
        margin-left: 0.5rem;
        font-size: clamp(2rem, 4vw, 2.6rem);
      }

      .after-steps__stage-wrap {
        margin-top: 1.75rem;
        padding-bottom: 0;
      }

      .after-steps__stage {
        width: auto;
      }

      .after-steps__stage-doodle {
        display: none;
      }

      .after-steps__deck {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1rem;
      }

      .after-steps__card,
      .after-steps__card:nth-child(3n + 1),
      .after-steps__card:nth-child(3n) {
        top: 0;
        min-height: 340px;
      }

      .after-steps__card-list {
        grid-template-columns: 1fr;
      }

      .after-steps__card--included,
      .after-steps__card-body--included {
        min-height: 280px;
      }

      .dstp-page .de-social-ref {
        margin-top: -60px;
        padding-inline: 1.5rem;
      }

      .dstp-page .de-social-ref__faq-list {
        width: min(100%, calc(100vw - 3rem));
        gap: 1.1rem;
      }

      .dstp-page .de-social-ref__faq-question {
        padding: 1.3rem 4rem 1.3rem 1.5rem;
        font-size: clamp(1.05rem, 1.8vw, 1.24rem);
      }

      .dstp-page .de-social-ref__faq-answer {
        padding: 0 1.5rem 1.35rem;
      }
    }

    /* Mobile: up to 767px */
    @media (max-width: 767px) {
      .pb-shell {
        width: min(100%, calc(100vw - 1.5rem));
      }

      .live-home-hero {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        gap: 0.85rem;
        height: auto;
        min-height: 85svh;
        padding: 0.85rem 0 1.25rem;
      }

      .live-home-hero .hero__topbar {
        position: relative;
        inset: auto;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 0.75rem;
        margin-bottom: 0.25rem;
      }

      .live-home-hero .menu-logo {
        transform: none;
        margin: 0;
      }

      .live-home-hero .menu-logo img {
        width: min(160px, 38vw);
      }

      .menu-toggle.menu-toggle--header {
        position: fixed;
        top: 1.2rem;
        right: 0.7rem;
        width: 4.75rem;
        min-width: 4.75rem;
        height: 4.75rem;
        padding: 0.72rem 0.58rem;
        border-radius: 1.45rem;
      }

      .menu-toggle--header .menu-toggle__label {
        font-size: 0.58rem;
        letter-spacing: 0.12em;
      }

      .menu-toggle--header .menu-toggle__icon {
        transform: scale(0.88);
      }

      .live-home-hero .hero__media {
        background-position: center top;
      }

      .live-home-hero .hero__headline {
        margin-top: calc(130px + 0.15rem);
      }

      .live-home-hero .hero__headline,
      .live-home-hero__anchors {
        position: relative;
        inset: auto;
        left: auto;
        right: auto;
        bottom: auto;
      }

      .live-home-hero__anchors {
        width: min(100%, calc(100vw - 2.5rem));
        margin-left: auto;
        margin-right: auto;
        margin-top: auto;
        padding-top: 1rem;
      }

      .live-home-hero .hero__headline-inner {
        --hero-headline-shift-x: 0px;
        width: min(100%, calc(100vw - 1.5rem));
        max-width: 100%;
        transform: none;
        justify-items: start;
        text-align: left;
        padding-left: 0.15rem;
      }

      .live-home-hero__eyebrow {
        margin-bottom: 0.45rem;
        font-size: clamp(0.88rem, 3.4vw, 1rem);
      }

      .live-home-hero__title {
        max-width: 8.3ch;
        font-size: clamp(2.55rem, 11.4vw, 3.7rem);
        line-height: 0.9;
      }

      .live-home-hero__tag {
        margin-top: 0.8rem;
        max-width: 12ch;
        font-size: clamp(0.94rem, 4.7vw, 1.22rem);
        line-height: 1.05;
      }

      .live-home-hero__sub {
        margin-top: 0.85rem;
        max-width: 22rem;
        font-size: 0.94rem;
        font-weight: 800;
        line-height: 1.5;
        color: #fff !important;
        text-transform: uppercase;
      }

      .live-home-hero__highlights {
        width: 100%;
        margin-top: 1rem;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.75rem;
        transform: none;
      }

      .live-home-hero__highlight {
        padding: 0.75rem 0.8rem 0.7rem;
      }

      .live-home-hero__highlight strong {
        font-size: clamp(1.6rem, 7vw, 2.2rem);
      }

      .live-home-hero__highlight span {
        font-size: clamp(0.72rem, 3vw, 0.82rem);
      }

      .pb-booths-nav__buttons {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.75rem;
      }

      .pb-booths-nav__link {
        min-height: 58px;
        padding: 0.9rem 0.55rem;
        font-size: clamp(0.92rem, 3.9vw, 1.08rem);
        letter-spacing: 0.04em;
        text-align: center;
      }

      .pb-booth-section__intro {
        padding: 2.25rem 0 1.35rem;
      }

      #glam .pb-booth-section__intro {
        padding-top: max(0.5rem, calc(2.25rem - 80px));
      }

      .pb-booth-section__title {
        font-size: clamp(2.6rem, 12vw, 3.55rem);
      }

      .pb-booth-section__tagline {
        font-size: clamp(1.25rem, 7vw, 1.75rem);
      }

      .pb-booth-section__summary {
        max-width: 100%;
        font-size: 1rem;
        line-height: 1.45;
      }

      .pb-booth-section__content {
        padding-bottom: 1.5rem;
      }

      .pb-booth-section__panel {
        grid-template-columns: 1fr;
        gap: 1.25rem;
        padding: 1rem 0.95rem;
      }

      .pb-booth-section__blurb {
        top: 0.75rem;
        right: 0.5rem;
        width: clamp(88px, 26vw, 128px);
      }

      #glam .pb-booth-section__blurb {
        display: none;
      }

      .pb-booth-section__eyebrow {
        font-size: clamp(1.55rem, 7vw, 2rem);
      }

      .pb-booth-section__copy {
        font-size: 0.98rem;
        line-height: 1.58;
      }

      .pb-booth-section__features-title {
        font-size: clamp(1.45rem, 7vw, 1.8rem);
      }

      .pb-booth-section__features {
        font-size: 0.95rem;
        line-height: 1.5;
      }

      .pb-booth-section--glam .pb-booth-section__title {
        font-size: clamp(3rem, 13vw, 4rem);
      }

      .pb-booth-section--glam .pb-booth-section__tagline {
        font-size: clamp(0.72rem, 3.6vw, 0.92rem);
        line-height: 0.9;
      }

      .pb-booth-section--glam .pb-booth-section__tagline,
      .pb-booth-section--glam .pb-booth-section__video,
      .pb-booth-section--glam .pb-booth-section__body {
        transform: none;
      }

      .pb-booth-section--glam .pb-booth-section__panel {
        max-width: 100%;
        grid-template-columns: 1fr;
        gap: 1.25rem;
      }

      .pb-booth-section--glam .pb-booth-section__video {
        width: 100%;
      }

      .pb-video-placeholder__play {
        width: clamp(64px, 14vw, 82px);
        height: clamp(46px, 10vw, 58px);
      }

      .pb-video-placeholder__play::before {
        border-top-width: 11px;
        border-bottom-width: 11px;
        border-left-width: 18px;
      }

      .pb-media-band {
        min-height: 220px;
      }

      .pb-media-band__divider {
        height: 15px;
      }

      .pb-media-band__divider--green {
        height: 44px;
      }

      .pb-gallery-grid,
      .pb-gallery-grid--two {
        grid-template-columns: 1fr;
      }

      .pb-gallery-grid--glam {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .pb-gallery-grid--openair-split {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .pb-gallery-grid--video-overlap {
        margin-top: 0;
      }

      .pb-gallery-grid--openair-split .pb-gallery-grid__item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }

      .pb-gallery-grid--slowmo-two .pb-gallery-grid__item {
        min-height: 240px;
      }

      .after-steps.msx-section {
        padding-bottom: 4rem;
      }

      .after-steps__shell {
        width: min(var(--container-wide), calc(100vw - 1.25rem));
        min-height: 0;
      }

      .after-steps__intro {
        grid-template-columns: 1fr;
        gap: clamp(1rem, 3.8vw, 1.35rem);
        margin-bottom: 1.5rem;
        padding: 2.5rem 0 1.3rem;
      }

      .after-steps__intro-main {
        position: relative;
        left: auto;
        padding-bottom: clamp(4.2rem, 18vw, 5.35rem);
      }

      .after-steps__side-word {
        position: absolute;
        left: 32px;
        right: auto;
        bottom: -0.45rem;
        top: auto;
        width: max-content;
        margin: 0;
        opacity: 0.95;
        transform-origin: left bottom;
        transform: rotate(-10deg);
      }

      .after-steps__side-script-line {
        font-size: clamp(2.7rem, 11.25vw, 3.15rem);
      }

      .after-steps__side-script-line--underline {
        margin-top: clamp(-0.52rem, -1.25vw, -0.32rem);
        margin-left: clamp(3.2rem, 13.6vw, 3.9rem);
        font-size: clamp(2.15rem, 8.9vw, 2.55rem);
        transform: scaleX(2.55);
      }

      .after-steps__eyebrow {
        font-size: 0.82rem;
      }

      .after-steps__title {
        font-size: clamp(2.25rem, 11vw, 3.3rem);
      }

      .after-steps__lede {
        max-width: none;
        font-size: 0.98rem;
        margin: 0;
      }

      .after-steps__stage-wrap {
        margin-top: 0.75rem;
        padding-bottom: 0;
      }

      .after-steps__stage {
        width: auto;
      }

      .after-steps__stage-doodle {
        display: none;
      }

      .after-steps__deck {
        grid-template-columns: 1fr;
        gap: 0.9rem;
      }

      .after-steps__card,
      .after-steps__card:nth-child(3n + 1),
      .after-steps__card:nth-child(3n) {
        top: 0;
        min-height: 0;
        padding: 1rem;
        transform: none !important;
        filter: none !important;
      }

      .after-steps__copy {
        padding-top: 0.5rem;
        max-width: 100%;
      }

      .after-steps__card-list {
        grid-template-columns: 1fr;
      }

      .after-steps__card--included,
      .after-steps__card-body--included {
        min-height: 220px;
      }

      .after-steps__included-label {
        font-size: clamp(1.55rem, 9vw, 2.2rem);
      }

      .dstp-page .de-social-ref {
        margin-top: -20px;
        padding: 2.5rem 0.75rem 3rem;
      }

      .dstp-page .de-social-ref__head {
        margin-bottom: 1.5rem;
      }

      .dstp-page .de-social-ref__title {
        font-size: clamp(2.4rem, 12vw, 3.6rem);
      }

      .dstp-page .de-social-ref__title-bottom {
        max-width: 16ch;
        font-size: 0.74em;
      }

      .dstp-page .de-social-ref__faq-list {
        width: min(100%, calc(100vw - 1.5rem));
        gap: 0.9rem;
      }

      .dstp-page .de-social-ref__faq-item {
        border-radius: 1.2rem;
      }

      .dstp-page .de-social-ref__faq-question {
        padding: 1.05rem 3.35rem 1.05rem 1rem;
        font-size: clamp(0.98rem, 4.7vw, 1.16rem);
        line-height: 1.25;
      }

      .dstp-page .de-social-ref__faq-question::before,
      .dstp-page .de-social-ref__faq-question::after {
        right: 1.05rem;
        width: 16px;
      }

      .dstp-page .de-social-ref__faq-answer {
        padding: 0 1rem 1.05rem;
        font-size: 0.96rem;
      }

      .dstp-page .de-social-ref__cta {
        margin-top: 1.5rem;
      }
    }

    @media (min-width: 768px) and (max-width: 1024px) {
      body.photobooth-page .after-steps__intro {
        grid-template-columns: minmax(0, 1.55fr) minmax(220px, 0.9fr);
        gap: clamp(1.1rem, 3vw, 2rem);
        align-items: end;
        margin-bottom: clamp(2.2rem, 4vw, 3.5rem);
        padding: calc(clamp(5rem, 9vw, 8.5rem) - 75px) 0 1.6rem;
      }

      body.photobooth-page .after-steps__intro.after-steps__intro--solo {
        grid-template-columns: 1fr;
      }

      body.photobooth-page .after-steps__intro-main {
        position: relative;
        left: clamp(28px, 3.8vw, 39px);
      }

      body.photobooth-page .after-steps__side-word {
        left: calc(49px - ((100vw - min(var(--container-wide), calc(100vw - 3rem))) / 2) - clamp(28px, 3.8vw, 39px));
        right: auto;
        top: calc(clamp(2.25rem, 4.2vw, 4.25rem) + 80px);
        bottom: auto;
        transform: translateY(clamp(43px, 5.625vw, 58px)) rotate(-10deg);
        transform-origin: center center;
      }

      body.photobooth-page .after-steps__side-script-line {
        font-size: clamp(46px, 6vw, 61px);
      }

      body.photobooth-page .after-steps__side-script-line--underline {
        margin-top: clamp(-7px, -0.68vw, -5px);
        margin-left: clamp(60px, 7.36vw, 75px);
        font-size: clamp(38px, 4.9vw, 50px);
        transform: scaleX(3.5);
      }

      body.photobooth-page .after-steps__lede {
        max-width: 34rem;
        justify-self: end;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      html {
        scroll-behavior: auto;
      }

      .live-home-hero .hero__media,
      .live-home-hero__eyebrow,
      .live-home-hero__title,
      .live-home-hero__tag,
      .live-home-hero__sub,
      .live-home-hero__highlight {
        animation: none !important;
        opacity: 1 !important;
        filter: none !important;
        transform: none !important;
      }

      .after-steps__stage-wrap {
        padding-bottom: 0;
      }

      .after-steps__stage {
        width: auto;
      }

      .after-steps__deck {
        grid-template-columns: 1fr;
        gap: 1.15rem;
      }

      .after-steps__card {
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        position: relative;
        transition: none !important;
      }

      .after-steps__transition {
        margin-top: calc(var(--after-transition-height) * -0.35);
      }
    }

    .lux-event-drawer {
      position: fixed;
      bottom: 18px;
      right: 0;
      z-index: 80;
      transform: none;
      pointer-events: none;
      transition: opacity 0.24s ease, visibility 0.24s ease;
    }

    .lux-event-drawer.is-hidden {
      opacity: 0;
      visibility: hidden;
    }

    .lux-event-drawer__panel {
      --drawer-tab-size: 56px;
      width: min(340px, calc(100vw - 20px));
      display: grid;
      grid-template-columns: var(--drawer-tab-size) minmax(0, 1fr);
      align-items: stretch;
      border: 1px solid var(--event-drawer-border);
      border-radius: 28px 0 0 28px;
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.12)),
        var(--event-drawer-surface);
      box-shadow:
        0 24px 60px rgba(31, 35, 33, 0.18),
        0 0 0 1px rgba(255, 255, 255, 0.42) inset;
      backdrop-filter: blur(18px) saturate(135%);
      -webkit-backdrop-filter: blur(18px) saturate(135%);
      overflow: hidden;
      transform: translateX(calc(100% - var(--drawer-tab-size)));
      transition:
        transform 0.5s cubic-bezier(.22, 1, .36, 1),
        box-shadow 0.35s ease,
        border-color 0.35s ease;
      pointer-events: auto;
    }

    .lux-event-drawer:hover .lux-event-drawer__panel,
    .lux-event-drawer.is-open .lux-event-drawer__panel,
    .lux-event-drawer__panel:focus-within {
      transform: translateX(0);
      box-shadow:
        0 28px 74px rgba(31, 35, 33, 0.24),
        0 0 0 1px rgba(255, 255, 255, 0.55) inset;
      border-color: rgba(22, 168, 159, 0.22);
    }

    .lux-event-drawer__trigger {
      appearance: none;
      border: 0;
      border-right: 1px solid rgba(12, 92, 86, 0.26);
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.02)),
        linear-gradient(180deg, #1ab6ad 0%, #11988f 100%);
      color: #f8f4ed;
      font: inherit;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      padding: 1rem 0.55rem;
      writing-mode: vertical-rl;
      transform: rotate(180deg);
      letter-spacing: 0.26em;
      text-transform: uppercase;
      font-family: "Oswald", "Montserrat", sans-serif;
      font-size: 0.9rem;
      line-height: 1;
      position: relative;
      transition: background 0.3s ease, color 0.3s ease;
    }

    .lux-event-drawer__trigger::before,
    .lux-event-drawer__trigger::after {
      content: "";
      position: absolute;
      left: 50%;
      width: 1px;
      transform: translateX(-50%);
      background: linear-gradient(180deg, rgba(248, 244, 237, 0), rgba(248, 244, 237, 0.95), rgba(248, 244, 237, 0));
    }

    .lux-event-drawer__trigger::before {
      top: 16px;
      height: 26px;
    }

    .lux-event-drawer__trigger::after {
      bottom: 16px;
      height: 26px;
    }

    .lux-event-drawer__trigger:hover,
    .lux-event-drawer__trigger:focus-visible {
      color: #fff;
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.03)),
        linear-gradient(180deg, #20c4bb 0%, #16a89f 100%);
      outline: none;
    }

    .lux-event-drawer__body {
      position: relative;
      padding: 0.75rem;
      background:
        radial-gradient(circle at top right, var(--event-drawer-accent-soft), transparent 38%),
        rgba(247, 241, 232, 0.98);
    }

    .lux-event-drawer__links {
      display: grid;
      gap: 0.34rem;
    }

    .lux-event-drawer__link {
      display: block;
      align-items: center;
      padding: 0.62rem 0.78rem;
      border: 1px solid rgba(54, 63, 59, 0.08);
      border-radius: 14px;
      background: rgba(255, 255, 255, 0.44);
      color: var(--event-drawer-ink);
      text-decoration: none;
      transition:
        transform 0.28s ease,
        border-color 0.28s ease,
        background 0.28s ease,
        box-shadow 0.28s ease;
    }

    .lux-event-drawer__link:hover,
    .lux-event-drawer__link:focus-visible {
      transform: translateX(-3px);
      border-color: rgba(22, 168, 159, 0.24);
      background: rgba(255, 255, 255, 0.72);
      box-shadow: 0 14px 20px rgba(31, 35, 33, 0.1);
      outline: none;
    }

    .lux-event-drawer__label {
      display: block;
      font-family: "Montserrat", sans-serif;
      font-size: 0.9rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .lux-event-drawer__meta {
      display: block;
      margin-top: 0.08rem;
      color: rgba(46, 52, 49, 0.58);
      font-size: 0.66rem;
      letter-spacing: 0.07em;
      text-transform: uppercase;
    }

    .lux-event-drawer__link[aria-current="page"] {
      border-color: rgba(22, 168, 159, 0.52);
      background: linear-gradient(90deg, rgba(22, 168, 159, 0.16), rgba(255, 255, 255, 0.54));
      box-shadow:
        0 16px 26px rgba(31, 35, 33, 0.12),
        0 0 0 1px rgba(22, 168, 159, 0.14) inset;
    }

    .lux-event-drawer__link[aria-current="page"] .lux-event-drawer__label {
      color: #0e6e68;
    }

    @media (max-width: 1024px) {
      .lux-event-drawer {
        right: 0;
        bottom: 14px;
        left: 12px;
        transform: none;
      }

      .lux-event-drawer__panel {
        --drawer-tab-size: 54px;
        width: min(100%, 380px);
        margin-left: auto;
        grid-template-columns: 1fr;
        grid-template-rows: var(--drawer-tab-size) minmax(0, 1fr);
        border-radius: 28px 28px 0 0;
        transform: translateY(calc(100% - var(--drawer-tab-size)));
      }

      .lux-event-drawer:hover .lux-event-drawer__panel,
      .lux-event-drawer.is-open .lux-event-drawer__panel,
      .lux-event-drawer__panel:focus-within {
        transform: translateY(0);
      }

      .lux-event-drawer__trigger {
        writing-mode: horizontal-tb;
        transform: none;
        letter-spacing: 0.16em;
        font-size: 0.88rem;
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        padding: 0 1rem;
      }

      .lux-event-drawer__trigger::before,
      .lux-event-drawer__trigger::after {
        top: 50%;
        left: auto;
        width: 24px;
        height: 1px;
        transform: translateY(-50%);
        background: linear-gradient(90deg, rgba(88, 199, 197, 0), rgba(88, 199, 197, 0.95), rgba(88, 199, 197, 0));
      }

      .lux-event-drawer__trigger::before {
        left: 14px;
      }

      .lux-event-drawer__trigger::after {
        right: 14px;
      }
    }

    @media (max-width: 767px) {
      .lux-event-drawer {
        right: 0.75rem;
        bottom: 10px;
        left: 0.75rem;
      }

      .lux-event-drawer__panel {
        width: 100%;
        max-width: none;
      }

      .lux-event-drawer__trigger {
        font-size: 0.8rem;
        letter-spacing: 0.12em;
      }

      .lux-event-drawer__trigger::before {
        left: 12px;
      }

      .lux-event-drawer__trigger::after {
        right: 12px;
      }
    }
    .lux-event-drawer {
      position: fixed;
      bottom: calc(18px + 125px);
      right: 0;
      z-index: 80;
      transform: none;
      pointer-events: none;
      transition: opacity 0.24s ease, visibility 0.24s ease;
    }

    .lux-event-drawer.is-hidden {
      opacity: 0;
      visibility: hidden;
    }

    .lux-event-drawer__panel {
      --drawer-tab-size: 56px;
      width: min(340px, calc(100vw - 20px));
      display: grid;
      grid-template-columns: var(--drawer-tab-size) minmax(0, 1fr);
      align-items: stretch;
      border: 1px solid var(--event-drawer-border);
      border-radius: 28px 0 0 28px !important;
      border-top-right-radius: 0 !important;
      border-bottom-right-radius: 0 !important;
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.12)),
        var(--event-drawer-surface);
      box-shadow:
        0 24px 60px rgba(31, 35, 33, 0.18),
        0 0 0 1px rgba(255, 255, 255, 0.42) inset;
      backdrop-filter: blur(18px) saturate(135%);
      -webkit-backdrop-filter: blur(18px) saturate(135%);
      overflow: hidden;
      transform: translateX(calc(100% - var(--drawer-tab-size)));
      transition:
        transform 0.5s cubic-bezier(.22, 1, .36, 1),
        box-shadow 0.35s ease,
        border-color 0.35s ease;
      pointer-events: auto;
    }

    .lux-event-drawer:hover .lux-event-drawer__panel,
    .lux-event-drawer.is-open .lux-event-drawer__panel,
    .lux-event-drawer__panel:focus-within {
      transform: translateX(0);
      box-shadow:
        0 28px 74px rgba(31, 35, 33, 0.24),
        0 0 0 1px rgba(255, 255, 255, 0.55) inset;
      border-color: rgba(22, 168, 159, 0.22);
    }

    .lux-event-drawer__trigger {
      appearance: none;
      border: 0;
      border-right: 1px solid rgba(12, 92, 86, 0.26);
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.02)),
        linear-gradient(180deg, #1ab6ad 0%, #11988f 100%);
      color: #f8f4ed;
      font: inherit;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      padding: 1rem 0.55rem;
      writing-mode: vertical-rl;
      transform: rotate(180deg);
      letter-spacing: 0.34em;
      text-transform: uppercase;
      font-family: "Oswald", "Montserrat", sans-serif;
      font-size: 0.78rem;
      line-height: 1;
      position: relative;
      transition: background 0.3s ease, color 0.3s ease;
    }

    .lux-event-drawer__trigger::before,
    .lux-event-drawer__trigger::after {
      content: "";
      position: absolute;
      left: 50%;
      width: 1px;
      transform: translateX(-50%);
      background: linear-gradient(180deg, rgba(248, 244, 237, 0), rgba(248, 244, 237, 0.95), rgba(248, 244, 237, 0));
    }

    .lux-event-drawer__trigger::before {
      top: 16px;
      height: 42px;
    }

    .lux-event-drawer__trigger::after {
      bottom: 16px;
      height: 42px;
    }

    .lux-event-drawer__trigger:hover,
    .lux-event-drawer__trigger:focus-visible {
      color: #fff;
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.03)),
        linear-gradient(180deg, #20c4bb 0%, #16a89f 100%);
      outline: none;
    }

    .lux-event-drawer__body {
      position: relative;
      padding: 0.75rem;
      background:
        radial-gradient(circle at top right, var(--event-drawer-accent-soft), transparent 38%),
        rgba(247, 241, 232, 0.98);
    }

    .lux-event-drawer__links {
      display: grid;
      gap: 0.34rem;
    }

    .lux-event-drawer__link {
      display: block;
      align-items: center;
      padding: 0.62rem 0.78rem;
      border: 1px solid rgba(54, 63, 59, 0.08);
      border-radius: 14px;
      background: rgba(255, 255, 255, 0.44);
      color: var(--event-drawer-ink);
      text-decoration: none;
      transition:
        transform 0.28s ease,
        border-color 0.28s ease,
        background 0.28s ease,
        box-shadow 0.28s ease;
    }

    .lux-event-drawer__link:hover,
    .lux-event-drawer__link:focus-visible {
      transform: translateX(-3px);
      border-color: rgba(22, 168, 159, 0.24);
      background: rgba(255, 255, 255, 0.72);
      box-shadow: 0 14px 20px rgba(31, 35, 33, 0.1);
      outline: none;
    }

    .lux-event-drawer__label {
      display: block;
      font-family: "Montserrat", sans-serif;
      font-size: 0.9rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .lux-event-drawer__meta {
      display: block;
      margin-top: 0.08rem;
      color: rgba(46, 52, 49, 0.58);
      font-size: 0.66rem;
      letter-spacing: 0.07em;
      text-transform: uppercase;
    }

    .lux-event-drawer__link[aria-current="page"] {
      border-color: rgba(22, 168, 159, 0.52);
      background: linear-gradient(90deg, rgba(22, 168, 159, 0.16), rgba(255, 255, 255, 0.54));
      box-shadow:
        0 16px 26px rgba(31, 35, 33, 0.12),
        0 0 0 1px rgba(22, 168, 159, 0.14) inset;
    }

    .lux-event-drawer__link[aria-current="page"] .lux-event-drawer__label {
      color: #0e6e68;
    }

    @media (max-width: 1024px) {
      .lux-event-drawer {
        right: 0;
        bottom: 20px;
        left: auto;
      }

      .lux-event-drawer .lux-event-drawer__panel {
        --drawer-tab-size: 36px;
        width: min(180px, calc(100vw - 10px));
        grid-template-columns: var(--drawer-tab-size) minmax(0, 1fr);
        grid-template-rows: none;
        align-items: stretch;
        border: 0;
        border-radius: 0 !important;
        background: transparent;
        box-shadow: none;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        overflow: visible;
        transform: translateX(calc(100% - var(--drawer-tab-size)));
      }

      .lux-event-drawer:hover .lux-event-drawer__panel,
      .lux-event-drawer.is-open .lux-event-drawer__panel,
      .lux-event-drawer .lux-event-drawer__panel:focus-within {
        transform: translateX(0);
        box-shadow: none;
        border-color: transparent;
      }

      .lux-event-drawer .lux-event-drawer__trigger {
        align-self: stretch;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 0;
        padding: 0;
        background: linear-gradient(180deg, #e84a5b, #c87562);
        transform: none;
      }

      .lux-event-drawer .lux-event-drawer__trigger::before,
      .lux-event-drawer .lux-event-drawer__trigger::after {
        content: none;
        display: none !important;
      }

      .lux-event-drawer .lux-event-drawer__trigger-label {
        writing-mode: vertical-rl;
        transform: rotate(180deg);
        letter-spacing: 0.06em;
        font-size: 0.94rem;
        line-height: 1;
        color: #f8f4ed;
        text-shadow: 0 1px 1px rgba(0, 0, 0, 0.08);
      }

      .lux-event-drawer .lux-event-drawer__body {
        padding: 0.46rem 0.46rem 0.4rem 0.4rem;
        max-height: none;
        overflow: visible;
        opacity: 1;
        background: #f7f1e8;
        border: 1px solid rgba(214, 203, 182, 0.92);
        border-left: 0;
        border-radius: 0;
        box-shadow: none;
        transition: none;
      }

      .lux-event-drawer:hover .lux-event-drawer__body,
      .lux-event-drawer.is-open .lux-event-drawer__body,
      .lux-event-drawer .lux-event-drawer__panel:focus-within .lux-event-drawer__body {
        padding: 0.46rem 0.46rem 0.4rem 0.4rem;
      }

      .lux-event-drawer .lux-event-drawer__links {
        display: flex;
        flex-direction: column;
        gap: 0;
        counter-reset: mobile-event-types;
      }

      .lux-event-drawer .lux-event-drawer__link {
        position: relative;
        padding: 0.4rem 0 0.38rem;
        border: 0;
        border-bottom: 1px solid rgba(198, 183, 154, 0.72);
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        counter-increment: mobile-event-types;
      }

      .lux-event-drawer .lux-event-drawer__link:last-child {
        border-bottom: 0;
      }

      .lux-event-drawer .lux-event-drawer__link::before {
        content: counter(mobile-event-types, decimal-leading-zero);
        display: block;
        margin-bottom: 0.12rem;
        color: rgba(73, 77, 74, 0.58);
        font-family: "Montserrat", sans-serif;
        font-size: 0.54rem;
        letter-spacing: 0.13em;
      }

      .lux-event-drawer .lux-event-drawer__label {
        font-size: 0.8rem;
        line-height: 1;
        letter-spacing: 0.1em;
      }

      .lux-event-drawer .lux-event-drawer__meta {
        font-size: 0.44rem;
        margin-top: 0.08rem;
        line-height: 1.1;
        letter-spacing: 0.1em;
        max-width: 14ch;
      }

      .lux-event-drawer .lux-event-drawer__link:hover,
      .lux-event-drawer .lux-event-drawer__link:focus-visible {
        transform: none;
        border-color: rgba(164, 151, 124, 0.82);
        background: transparent;
        box-shadow: none;
      }

      .lux-event-drawer .lux-event-drawer__link[aria-current="page"] {
        border-color: rgba(164, 151, 124, 0.82);
        background: transparent;
        box-shadow: none;
      }

      .lux-event-drawer .lux-event-drawer__link[aria-current="page"]::before,
      .lux-event-drawer .lux-event-drawer__link[aria-current="page"] .lux-event-drawer__label {
        color: #178a84;
      }
    }

    @media (max-width: 767px) {
      .lux-event-drawer {
        bottom: 10px;
      }

      .lux-event-drawer .lux-event-drawer__panel {
        width: min(180px, calc(100vw - 8px));
      }

      .lux-event-drawer .lux-event-drawer__body {
        padding: 0.42rem 0.42rem 0.36rem 0.36rem;
      }

      .lux-event-drawer:hover .lux-event-drawer__body,
      .lux-event-drawer.is-open .lux-event-drawer__body,
      .lux-event-drawer .lux-event-drawer__panel:focus-within .lux-event-drawer__body {
        padding: 0.42rem 0.42rem 0.36rem 0.36rem;
      }

      .lux-event-drawer .lux-event-drawer__link {
        padding: 0.36rem 0 0.34rem;
      }

      .lux-event-drawer .lux-event-drawer__link::before {
        margin-bottom: 0.14rem;
        font-size: 0.48rem;
      }

      .lux-event-drawer .lux-event-drawer__label {
        font-size: 0.74rem;
        letter-spacing: 0.09em;
      }

      .lux-event-drawer .lux-event-drawer__meta {
        font-size: 0.42rem;
        margin-top: 0.07rem;
        line-height: 1.08;
        letter-spacing: 0.09em;
      }
    }
    @media (min-width: 1024px) {
      .lux-event-drawer {
        bottom: calc(18px + 125px) !important;
        right: 0 !important;
        left: auto !important;
      }

      .lux-event-drawer .lux-event-drawer__panel {
        --drawer-tab-size: 58px;
        display: grid;
        grid-template-columns: var(--drawer-tab-size) minmax(0, 1fr);
        width: min(286px, calc(100vw - 24px));
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        overflow: visible;
        transform: translateX(calc(100% - var(--drawer-tab-size))) !important;
      }

      .lux-event-drawer:hover .lux-event-drawer__panel,
      .lux-event-drawer.is-open .lux-event-drawer__panel,
      .lux-event-drawer .lux-event-drawer__panel:focus-within {
        transform: translateX(0) !important;
        box-shadow: none;
        border-color: transparent;
      }

      .lux-event-drawer .lux-event-drawer__trigger {
        align-self: stretch;
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 0;
        padding: 0 !important;
        border: 0 !important;
        background: linear-gradient(180deg, #e84a5b, #c87562) !important;
        writing-mode: horizontal-tb;
        transform: none !important;
        position: relative;
        z-index: 2;
      }

      .lux-event-drawer .lux-event-drawer__trigger::before,
      .lux-event-drawer .lux-event-drawer__trigger::after {
        content: none !important;
        display: none !important;
      }

      .lux-event-drawer .lux-event-drawer__trigger-label {
        writing-mode: vertical-rl;
        transform: rotate(180deg);
        color: #f8f4ed;
        font-family: "Oswald", "Montserrat", sans-serif;
        font-size: 1rem;
        line-height: 1;
        letter-spacing: 0.08em;
        text-shadow: 0 1px 1px rgba(0, 0, 0, 0.14);
      }

      .lux-event-drawer .lux-event-drawer__body {
        display: block;
        max-height: none;
        overflow: visible;
        opacity: 1;
        margin-left: 0;
        padding: 0.68rem 0.88rem 0.66rem 0.76rem !important;
        background: #f7f1e8;
        border: 1px solid rgba(214, 203, 182, 0.92);
        border-right: 0;
        border-radius: 0;
        box-shadow: 0 20px 48px rgba(11, 16, 15, 0.24);
        position: relative;
        z-index: 1;
      }
    }

    .pb-gallery-grid--glam,
    .pb-gallery-grid--openair-split {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .pb-gallery-grid--openair-split .pb-gallery-grid__item:last-child {
      grid-column: auto;
    }

/* Confirmed follow-up guards: Photo Booths page only */
html.photo-booths-page-root body.photobooth-page :is(
  .after-steps__side-word,
  .after-steps__side-script,
  .after-steps__side-script-line,
  .after-steps__side-script-line--word,
  .after-steps__side-script-line--underline,
  .after-steps__side-script-char,
  .pb-booth-section__eyebrow,
  .dr-difference-sticky__eyebrow
) {
  overflow: visible !important;
  contain: none !important;
  clip-path: none !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

html.photo-booths-page-root body.photobooth-page .after-steps__side-word {
  z-index: 5;
  padding-block: 0.22em 0.34em;
  margin-block: -0.14em 0;
}

html.photo-booths-page-root body.photobooth-page .after-steps__side-script {
  line-height: 1.34 !important;
  padding-block: 0.18em 0.42em !important;
  margin-block: -0.12em 0.02em !important;
}

html.photo-booths-page-root body.photobooth-page :is(
  .lux-event-drawer,
  .lux-event-drawer__panel,
  .lux-event-drawer__trigger
) {
  filter: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

html.photo-booths-page-root body.photobooth-page :is(
  .lux-event-drawer,
  .lux-event-drawer__panel,
  .lux-event-drawer__body,
  .lux-event-drawer__trigger
)::before,
html.photo-booths-page-root body.photobooth-page :is(
  .lux-event-drawer,
  .lux-event-drawer__panel,
  .lux-event-drawer__body,
  .lux-event-drawer__trigger
)::after {
  box-shadow: none !important;
  filter: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

html.photo-booths-page-root body.photobooth-page .lux-event-drawer:not(.is-open):not(:hover):not(:focus-within) :is(
  .lux-event-drawer__panel,
  .lux-event-drawer__body
) {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  filter: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

html.photo-booths-page-root body.photobooth-page .lux-event-drawer:not(.is-open):not(:hover):not(:focus-within) .lux-event-drawer__body {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

@media (max-width: 743px) {
  html.photo-booths-page-root body.photobooth-page section.pb-gallery-full--thirds[aria-label="Slow Mo booth gallery template four"] {
    display: block !important;
    min-height: 0 !important;
    aspect-ratio: 1104 / 975;
    overflow: hidden !important;
    background: var(--pb-slow-gallery-image, #fbfbfa) center / cover no-repeat !important;
  }

  html.photo-booths-page-root body.photobooth-page section.pb-gallery-full--thirds[aria-label="Slow Mo booth gallery template four"] .pb-gallery-full__third {
    display: none !important;
  }
}

/* Continuation 5: body-class-free guard for Photo Booth script words and the
   slow-mo image aspect ratio. */
:is(
  .pb-booth-section,
  .pb-booth-section__script,
  .pb-booth-section__script-line,
  .after-steps,
  .after-steps__side,
  .after-steps__visual,
  .after-steps__stage,
  .after-steps__side-word,
  .after-steps__side-word img,
  .after-steps__side-script,
  .after-steps__side-script-line,
  .after-steps__side-script-line--word,
  .after-steps__side-script-line--underline,
  .after-steps__side-script-char,
  .dr-difference-sticky__eyebrow
) {
  overflow: visible !important;
  contain: none !important;
  clip-path: none !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

:is(.pb-booth-section__script, .pb-booth-section__script-line, .after-steps__side-script, .after-steps__side-script-line--word, .after-steps__side-script-line--underline) {
  line-height: 1.64 !important;
  padding: 0.5em 0.42em 0.58em !important;
  margin: -0.44em -0.42em -0.44em !important;
}

@media (max-width: 743px) {
  section.pb-gallery-full--thirds[aria-label="Slow Mo booth gallery template four"] {
    display: block !important;
    min-height: 0 !important;
    aspect-ratio: 1104 / 975 !important;
    overflow: hidden !important;
    background: var(--pb-slow-gallery-image, #fbfbfa) center / cover no-repeat !important;
  }

  section.pb-gallery-full--thirds[aria-label="Slow Mo booth gallery template four"] .pb-gallery-full__third {
    display: none !important;
  }
}

/* Photo Booths parity: restore the approved sculpted Services tab at every
   breakpoint. The former live-site PNG now returns a 404, exposing the shared
   rectangular gradient fallback. */
html body.photobooth-page .lux-event-drawer .lux-event-drawer__trigger,
html body.photobooth-page .lux-event-drawer:not(.is-open):not(:hover) .lux-event-drawer__trigger:not(:focus-visible),
html body.photobooth-page .lux-event-drawer .lux-event-drawer__trigger:hover,
html body.photobooth-page .lux-event-drawer .lux-event-drawer__trigger:focus-visible {
  background: center / 100% 100% no-repeat url("./assets/slide-out-mobile-menu.svg") !important;
  background-color: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html body.photobooth-page .lux-event-drawer .lux-event-drawer__trigger::before,
html body.photobooth-page .lux-event-drawer .lux-event-drawer__trigger::after {
  content: none !important;
  display: none !important;
}

/* Restore the live Extras word/underline metrics after the clipping guards. */
html.photo-booths-page-root body.photobooth-page #afterparty-steps .after-steps__side-word,
html.photo-booths-page-root body.photobooth-page #afterparty-steps .after-steps__side-script,
html.photo-booths-page-root body.photobooth-page #afterparty-steps .after-steps__side-script-line,
html.photo-booths-page-root body.photobooth-page #afterparty-steps .after-steps__side-script-line--word {
  padding: 0 !important;
  padding-block: 0 !important;
  margin: 0 !important;
  line-height: 0.78 !important;
}

html.photo-booths-page-root body.photobooth-page #afterparty-steps .after-steps__side-script-line--underline {
  padding: 0 !important;
  padding-block: 0 !important;
  margin: -7px 0 0 113px !important;
  line-height: 0.32 !important;
}

html.photo-booths-page-root body.photobooth-page #afterparty-steps .after-steps__side-script-char,
html.photo-booths-page-root body.photobooth-page #afterparty-steps .after-steps__side-script-line > span {
  padding: 0 !important;
  padding-block: 0 !important;
  margin: 0 !important;
  line-height: inherit !important;
}

@media (min-width: 768px) and (max-width: 1024px) {
  html.photo-booths-page-root body.photobooth-page #afterparty-steps .after-steps__side-script-line--underline {
    margin-top: clamp(-7px, -0.68vw, -5px) !important;
    margin-left: clamp(60px, 7.36vw, 75px) !important;
  }
}

@media (max-width: 767px) {
  html.photo-booths-page-root body.photobooth-page #afterparty-steps .after-steps__side-script-line--underline {
    margin-top: clamp(-0.52rem, -1.25vw, -0.32rem) !important;
    margin-left: clamp(3.2rem, 13.6vw, 3.9rem) !important;
  }
}

/* Nudge both More FAQs words together without changing their alignment. */
html body.photobooth-page .de-social-ref__cta .msx-button__block {
  transform: translateY(4px) !important;
}

/* Approved Photo Booth difference cards: fully solid, never translucent. */
html.photo-booths-page-root body.photobooth-page #darby-difference .dr-difference-sticky__item {
  opacity: 1 !important;
  background: #0a0e0e !important;
  background-color: #0a0e0e !important;
  background-image: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

html.photo-booths-page-root body.photobooth-page #darby-difference .dr-difference-sticky__item::before,
html.photo-booths-page-root body.photobooth-page #darby-difference .dr-difference-sticky__item::after {
  background: transparent !important;
  opacity: 0 !important;
}

/* Charleston Booth route parity: use the global coral identity throughout. */
html.photo-booths-page-root body.photobooth-page {
  --pb-coral: var(--cb-accent, #e84a5b);
  --pb-coral-rgb: 232, 74, 91;
}

html.photo-booths-page-root body.photobooth-page .live-home-hero__eyebrow,
html.photo-booths-page-root body.photobooth-page .live-home-hero__tag,
html.photo-booths-page-root body.photobooth-page .live-home-hero__sub {
  color: var(--pb-coral) !important;
}

html.photo-booths-page-root body.photobooth-page .live-home-hero__tag {
  text-shadow:
    0 8px 18px rgba(0, 0, 0, 0.28),
    0 0 16px rgba(var(--pb-coral-rgb), 0.2);
}

@media (max-width: 767px) {
  html.photo-booths-page-root body.photobooth-page .live-home-hero__sub {
    color: #fff !important;
  }
}

html.photo-booths-page-root body.photobooth-page #darby-difference {
  --dds-accent: var(--pb-coral);
}

html.photo-booths-page-root body.photobooth-page #darby-difference .dr-difference-sticky__eyebrow,
html.photo-booths-page-root body.photobooth-page #darby-difference .dr-difference-sticky__item-title {
  color: var(--pb-coral) !important;
}

html.photo-booths-page-root body.photobooth-page #darby-difference .dr-difference-sticky__item-title {
  font-weight: 800 !important;
}

html.photo-booths-page-root body.photobooth-page #darby-difference .dr-difference-sticky__item:hover,
html.photo-booths-page-root body.photobooth-page #darby-difference .dr-difference-sticky__item:focus-within {
  border-color: rgba(var(--pb-coral-rgb), 0.42) !important;
  box-shadow:
    0 34px 48px rgba(0, 0, 0, 0.52),
    0 0 28px rgba(var(--pb-coral-rgb), 0.3),
    0 0 54px rgba(var(--pb-coral-rgb), 0.22) !important;
}

html.photo-booths-page-root body.photobooth-page #darby-difference .dr-difference-sticky__item.is-revealed .dr-difference-sticky__item-title {
  animation-name: none !important;
  text-shadow:
    0 0 14px rgba(var(--pb-coral-rgb), 0.22),
    0 0 7px rgba(var(--pb-coral-rgb), 0.1);
}

html.photo-booths-page-root body.photobooth-page .de-social-ref__cta .msx-button.approved-button {
  --msx-button-bg: var(--pb-coral);
  box-shadow: 0 16px 34px rgba(var(--pb-coral-rgb), 0.2);
}

html.photo-booths-page-root body.photobooth-page .de-social-ref__cta .msx-button.approved-button:hover,
html.photo-booths-page-root body.photobooth-page .de-social-ref__cta .msx-button.approved-button:focus-visible {
  box-shadow:
    0 0 0 1px rgba(var(--pb-coral-rgb), 0.5),
    0 0 16px rgba(var(--pb-coral-rgb), 0.28),
    0 0 32px rgba(var(--pb-coral-rgb), 0.2),
    0 16px 30px rgba(var(--pb-coral-rgb), 0.18);
}


/* Final Services tab parity: exact live Add-ons silhouette, size and label. */
html body .lux-event-drawer {
  z-index: 250000 !important;
}
html body .lux-event-drawer .lux-event-drawer__trigger {
  background: transparent url("./assets/slide-out-mobile-menu.svg") center / 100% 100% no-repeat !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
}
html body .lux-event-drawer .lux-event-drawer__trigger::before,
html body .lux-event-drawer .lux-event-drawer__trigger::after {
  content: none !important;
  display: none !important;
}

/* Full-width Design Lab transition CTA. */
html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta {
  position: relative;
  z-index: 6;
  width: 100%;
  overflow: hidden;
  border-block: 1px solid rgba(17, 16, 15, 0.2);
  background: var(--pb-coral, #e84a5b);
  color: #11100f;
  isolation: isolate;
}

html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  background:
    radial-gradient(circle at 78% 18%, rgba(255, 255, 255, 0.2), transparent 25%),
    radial-gradient(circle at 18% 92%, rgba(91, 12, 24, 0.17), transparent 31%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='760' height='220' viewBox='0 0 760 220' fill='none'%3E%3Cg stroke='%2311100f' stroke-opacity='.1' stroke-width='1'%3E%3Cpath d='M-54 70C72-22 189-8 286 55s186 62 282-1 172-67 258-10'/%3E%3Cpath d='M-61 111C67 18 185 25 283 84s187 61 286-4 177-70 264-15'/%3E%3Cpath d='M-47 176c116-82 229-87 325-27s190 69 292 2 177-68 264-17'/%3E%3C/g%3E%3C/svg%3E") center / auto 100% repeat-x;
  content: "";
  pointer-events: none;
}

html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__link {
  display: grid;
  width: min(1540px, calc(100% - clamp(40px, 7vw, 112px)));
  min-height: clamp(172px, 14vw, 220px);
  margin: 0 auto;
  padding: clamp(30px, 3.4vw, 52px) 0;
  color: inherit;
  text-decoration: none;
  grid-template-columns: minmax(310px, 390px) clamp(110px, 9vw, 146px) minmax(300px, 1fr) auto;
  gap: clamp(24px, 3vw, 58px);
  align-items: center;
}

html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__heading {
  width: min(430px, calc(100% + 40px));
  min-width: 0;
}

html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__image {
  display: grid;
  min-width: 0;
  place-items: center;
}

html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__image img {
  display: block;
  width: clamp(102px, 8vw, 132px);
  height: auto;
  aspect-ratio: 1;
  object-fit: contain;
  filter: drop-shadow(0 12px 20px rgba(72, 13, 22, 0.16));
}

html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__eyebrow {
  margin: 0 0 10px;
  color: rgba(17, 16, 15, 0.72);
  font-family: "Montserrat", "Open Sans", sans-serif;
  font-size: clamp(0.62rem, 0.68vw, 0.78rem);
  font-weight: 800;
  letter-spacing: 0.18em;
  line-height: 1.25;
  text-transform: uppercase;
}

html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__title {
  max-width: 13ch;
  margin: 0;
  color: #11100f;
  font-family: "Marcellus", Georgia, serif;
  font-size: clamp(2.15rem, 3.25vw, 4rem);
  font-weight: 400;
  letter-spacing: -0.045em;
  line-height: 0.92;
  text-wrap: balance;
}

html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__copy {
  max-width: 43ch;
  margin: 0;
  padding-left: clamp(28px, 4vw, 68px);
  color: rgba(17, 16, 15, 0.78);
  font-family: "Open Sans", Arial, sans-serif;
  font-size: clamp(0.88rem, 0.95vw, 1.05rem);
  line-height: 1.65;
}

html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__button {
  display: inline-flex;
  min-width: clamp(210px, 17vw, 264px);
  padding: 18px 20px;
  border: 1px solid #11100f;
  background: #11100f;
  color: #fffaf2;
  box-shadow: 0 16px 28px rgba(72, 13, 22, 0.18);
  font-family: "Montserrat", "Open Sans", sans-serif;
  font-size: clamp(0.68rem, 0.72vw, 0.8rem);
  font-weight: 800;
  letter-spacing: 0.1em;
  line-height: 1;
  text-transform: uppercase;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  transition:
    background-color 260ms ease,
    color 260ms ease,
    box-shadow 260ms ease,
    transform 300ms cubic-bezier(.22, 1, .36, 1);
}

html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__button svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform 300ms cubic-bezier(.22, 1, .36, 1);
}

html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__link:hover .cbc-design-lab-cta__button,
html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__link:focus-visible .cbc-design-lab-cta__button {
  background: #fffaf2;
  color: #11100f;
  box-shadow:
    0 0 0 1px rgba(255, 250, 242, 0.32),
    0 18px 34px rgba(72, 13, 22, 0.24);
  transform: translateY(-3px);
}

html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__link:hover .cbc-design-lab-cta__button svg,
html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__link:focus-visible .cbc-design-lab-cta__button svg {
  transform: translateX(4px);
}

html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__link:focus-visible {
  outline: 3px solid #fffaf2;
  outline-offset: -6px;
}

@media (max-width: 1120px) {
  html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__heading {
    width: auto;
  }

  html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__link {
    grid-template-columns: minmax(0, 1fr) 108px auto;
    gap: 22px 36px;
  }

  html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__copy {
    grid-column: 1;
    padding-left: 0;
  }

  html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__image {
    grid-column: 2;
    grid-row: 1 / span 2;
  }

  html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__button {
    grid-column: 3;
    grid-row: 1 / span 2;
  }
}

@media (max-width: 700px) {
  html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__link {
    width: calc(100% - 40px);
    padding: 34px 0 38px;
    grid-template-columns: 1fr;
    gap: 20px;
  }

  html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__title {
    max-width: 12ch;
    font-size: clamp(2.35rem, 11vw, 3.45rem);
  }

  html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__copy,
  html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__image,
  html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__button {
    grid-column: 1;
    grid-row: auto;
  }

  html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__image {
    justify-self: start;
  }

  html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__image img {
    width: 104px;
  }

  html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__button {
    width: 100%;
    min-width: 0;
  }
}

@media (min-width: 360px) and (max-width: 700px) {
  html.photo-booths-page-root body.photobooth-page .cbc-design-lab-cta__button {
    width: calc(100% - 82px);
    gap: 12px;
    padding-inline: 16px;
  }
}
html body .lux-event-drawer .lux-event-drawer__trigger-label {
  font-family: "Oswald", "Montserrat", sans-serif !important;
  font-weight: 400 !important;
  writing-mode: vertical-rl !important;
  transform: rotate(180deg) !important;
}
@media (min-width: 1025px) {
  html body .lux-event-drawer .lux-event-drawer__panel,
  html body .lux-event-drawer .lux-event-drawer__trigger {
    height: 305.484375px !important;
    min-height: 305.484375px !important;
    max-height: 305.484375px !important;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  html body .lux-event-drawer .lux-event-drawer__panel,
  html body .lux-event-drawer .lux-event-drawer__trigger {
    height: 254.578125px !important;
    min-height: 254.578125px !important;
    max-height: 254.578125px !important;
  }
}
@media (max-width: 767px) {
  html body .lux-event-drawer .lux-event-drawer__panel,
  html body .lux-event-drawer .lux-event-drawer__trigger {
    height: 234.90625px !important;
    min-height: 234.90625px !important;
    max-height: 234.90625px !important;
  }
}

/* 2026-07-16 scoped repair: restore the approved desktop response on the included-feature cards. */
@media (hover: hover) and (pointer: fine) {
  body.photobooth-page .after-steps__card--included {
    transition: transform 320ms cubic-bezier(.22, 1, .36, 1), box-shadow 280ms ease, filter 280ms ease, background-size 420ms cubic-bezier(.22, 1, .36, 1) !important;
    background-size: 100% auto !important;
  }
  body.photobooth-page .after-steps__card--included:is(:hover, :focus-within) {
    transform: translateY(-10px) scale(1.018) !important;
    box-shadow: 0 30px 62px rgba(0, 0, 0, 0.3) !important;
    filter: saturate(1.08) brightness(1.04) !important;
    background-size: 108% auto !important;
    z-index: 4 !important;
  }
  body.photobooth-page .after-steps__card--included::before,
  body.photobooth-page .after-steps__included-label { transition: opacity 280ms ease, transform 320ms cubic-bezier(.22, 1, .36, 1) !important; }
  body.photobooth-page .after-steps__card--included:is(:hover, :focus-within)::before { opacity: 0.72 !important; }
  body.photobooth-page .after-steps__card--included:is(:hover, :focus-within) .after-steps__included-label { transform: translateY(-5px) !important; }
}

/* Safari paint room for the Heatwood Extras word. */
html.photo-booths-page-root body.photobooth-page #afterparty-steps :is(.after-steps__side-script, .after-steps__side-script-line--word, .after-steps__side-script-char) {
  overflow: visible !important;
  contain: none !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
}
html.photo-booths-page-root body.photobooth-page #afterparty-steps .after-steps__side-script-line--word {
  padding: 0.42em 0.3em 0.46em !important;
  margin: -0.42em -0.3em -0.46em !important;
}

/* Close the transparent seam between the sculpted tab and its drawer body. */
html.photo-booths-page-root body.photobooth-page .lux-event-drawer .lux-event-drawer__body {
  margin-left: -12px !important;
  width: calc(100% + 12px) !important;
  box-sizing: border-box !important;
  border-left: 0 !important;
}

@media (max-width: 900px) {
  .live-home-hero {
    --hero-image: url("media/optimized/charleston-photo-booth-rentals-hero-mobile.webp");
  }
}
