.elementor-7413 .elementor-element.elementor-element-72e29d3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7413 .elementor-element.elementor-element-c7d46af{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7413 .elementor-element.elementor-element-2b535d0{--display:flex;}.elementor-7413 .elementor-element.elementor-element-b235728{--display:flex;}.elementor-7413 .elementor-element.elementor-element-a1e3c6f{--display:flex;}.elementor-7413 .elementor-element.elementor-element-7178402{--display:flex;}.elementor-7413 .elementor-element.elementor-element-d977801{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7413 .elementor-element.elementor-element-c5057db{--display:flex;}.elementor-7413 .elementor-element.elementor-element-6bb7109{--display:flex;}.elementor-7413 .elementor-element.elementor-element-8020a95{--display:flex;}.elementor-7413 .elementor-element.elementor-element-7845fcb{--display:flex;}/* Start custom CSS for container, class: .elementor-element-72e29d3 *//* =========================================================
   ST12 — FINAL (Nail Days)
   Scope: .ss-st12
   ========================================================= */

.ss-st12{ position: relative; }
.ss-st12 .ss-st12__inner{ gap: var(--ss-gap-5); }

/* Headline */
.ss-st12 .ss-st12__headline{
  font-size: var(--ss-fs-2xl);
  line-height: var(--ss-lh-snug);
}

/* Main grid alignment */
.ss-st12 .ss-st12__main{ align-items: center; }

/* Right card surface + prevent vertical push-apart */
.ss-st12 .ss-st12__card{
  background: var(--ss-luxe-grad);
  border-color: var(--ss-luxe-border);
  width: 100%;
  height: auto !important;
  min-height: unset !important;
  justify-content: flex-start !important;
}

/* Left column: center the block, keep list readable */
.ss-st12 .ss-st12__left{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ss-st12 .ss-st12__bullets{
  width: 100%;
  max-width: 560px;
  margin-inline: auto;
  text-align: left;
}

/* Program options/pricing: left aligned inside the centered card */
.ss-st12 .ss-st12__options,
.ss-st12 .ss-st12__pricing-note{
  text-align: left;
  max-width: 70ch;
}

/* CTA group: tight stack, no stretching */
.ss-st12 .ss-st12__ctas{
  width: 100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap: 12px;
  margin-top: 18px;
}

/* CRITICAL: children must NOT flex-grow (fixes giant spacing) */
.ss-st12 .ss-st12__ctas &gt; .elementor-element{
  flex: 0 0 auto !important;
  width: 100%;
  max-width: 360px;
  margin: 0 !important;
}

/* Remove Elementor default widget spacing inside CTA group */
.ss-st12 .ss-st12__ctas .elementor-widget,
.ss-st12 .ss-st12__ctas .elementor-widget-container,
.ss-st12 .ss-st12__ctas .elementor-widget-button{
  margin: 0 !important;
}

/* Keep button width consistent (does not change button design) */
.ss-st12 .ss-st12__ctas .elementor-button.ss-btn{
  width: 100%;
  justify-content: center;
}

/* Details grid cards equal height feel */
.ss-st12 .ss-st12__details-grid{ align-items: stretch; }
.ss-st12 .ss-st12__flow,
.ss-st12 .ss-st12__staff{
  height: 100%;
  justify-content: flex-start;
}

/* Hide-if-empty rules */
.ss-st12 .ss-st12__flow:has(.ss-st12__flow-content .elementor-widget-container:empty){ display:none !important; 
    
}
.ss-st12 .ss-st12__staff:has(.ss-st12__staff-content .elementor-widget-container:empty){ display:none !important; }
.ss-st12 .ss-st12__faq:has(.ss-st12__faq-content .elementor-widget-container:empty){ display:none !important; }
.ss-st12 .elementor-widget:has(.ss-st12__bullets.elementor-widget-container:empty){ display:none !important; }
.ss-st12 .elementor-widget:has(.ss-st12__pricing-note.elementor-widget-container:empty){ display:none !important; }
.ss-st12 .ss-st12__cta-secondary:has(.elementor-button-text:empty){ display: none !important; }
/* =========================================================
   SS ACCORDIONS — FINAL GLOBAL
   Premium + fixed width (no shrink/grow) + states
   Scope: <details> inside .ss-prose
   ========================================================= */

/* HARD WIDTH LOCK (prevents shrink-wrap inside centered flex/grid parents) */
.ss-prose{
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  display: block !important;
  align-self: stretch !important;
}
.ss-prose .elementor-widget-container{
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

/* Accordion wrapper */
.ss-prose details{
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  align-self: stretch !important;

  margin: 0 0 var(--ss-gap-3) 0;
  border: 1px solid rgba(255,44,86,.14);
  border-radius: var(--ss-r-lg);
  background: var(--ss-white);
  box-shadow: var(--ss-shadow-sm);
  overflow: hidden;
  position: relative;

  transition:
    transform var(--ss-dur-2) var(--ss-ease),
    box-shadow var(--ss-dur-2) var(--ss-ease),
    border-color var(--ss-dur-2) var(--ss-ease),
    background var(--ss-dur-2) var(--ss-ease);
}

/* Subtle accent rail (visible even when closed) */
.ss-prose details::before{
  content:"";
  position:absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: rgba(255,44,86,.28);
  opacity: .35;
  transition: opacity var(--ss-dur-2) var(--ss-ease);
}

/* Summary (full width, slightly colorful even when closed) */
.ss-prose summary{
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  display: flex !important;

  align-items: center;
  justify-content: space-between;
  gap: var(--ss-gap-3);

  padding: .95rem 1.15rem;
  min-height: 58px;

  cursor: pointer;
  user-select: none;
  list-style: none;

  font-weight: 600;
  color: var(--ss-ink-soft);

  background: linear-gradient(135deg,
    rgba(255,44,86,.05),
    rgba(133,191,214,.04),
    rgba(187,239,224,.04)
  );

  transition:
    background var(--ss-dur-2) var(--ss-ease),
    color var(--ss-dur-2) var(--ss-ease);
}
.ss-prose summary::-webkit-details-marker{ display:none; }

/* Chevron pill = obvious accordion affordance */
.ss-prose summary::after{
  content: "›";
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 36px;
  height: 36px;
  flex: 0 0 36px;

  border-radius: var(--ss-r-pill);
  border: 1px solid rgba(26,26,26,.14);
  background: rgba(255,255,255,.92);
  box-shadow: 0 10px 22px rgba(26,26,26,.08);

  color: rgba(26,26,26,.58);
  transform: rotate(90deg);

  transition:
    transform var(--ss-dur-2) var(--ss-ease),
    color var(--ss-dur-2) var(--ss-ease),
    background var(--ss-dur-2) var(--ss-ease),
    border-color var(--ss-dur-2) var(--ss-ease),
    box-shadow var(--ss-dur-2) var(--ss-ease);
}

/* HOVER */
.ss-prose details:hover{
  border-color: var(--ss-border-strong);
  box-shadow: var(--ss-shadow-md);
  transform: translateY(-1px);
}
.ss-prose details:hover summary{
  background: linear-gradient(135deg,
    rgba(255,44,86,.08),
    rgba(133,191,214,.06),
    rgba(187,239,224,.06)
  );
}
.ss-prose details:hover summary::after{
  border-color: rgba(255,44,86,.18);
  box-shadow: 0 12px 26px rgba(26,26,26,.10);
}

/* ACTIVE (mouse down) */
.ss-prose summary:active{
  background: rgba(26,26,26,.06);
}

/* FOCUS (keyboard) */
.ss-prose summary:focus-visible{
  outline: none;
  box-shadow: var(--ss-focus-ring-strong);
  border-radius: 12px;
}

/* OPEN (active) */
.ss-prose details[open]{
  border-color: rgba(255,44,86,.22);
  background: linear-gradient(135deg,
    rgba(255,44,86,.06),
    rgba(133,191,214,.06),
    rgba(187,239,224,.06)
  );
  box-shadow: var(--ss-shadow-md);
}
.ss-prose details[open]::before{ opacity: 1; }

.ss-prose details[open] summary{
  color: var(--ss-ink);
  background: rgba(255,255,255,.55);
}
.ss-prose details[open] summary::after{
  transform: rotate(-90deg);
  color: rgba(255,44,86,.80);
  border-color: rgba(255,44,86,.22);
}

/* Body (prevents width shift + stays premium) */
.ss-prose details &gt; *:not(summary){
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;

  padding: 0 1.15rem 1.15rem 1.15rem;
  text-align: left;
  border-top: 1px solid rgba(26,26,26,.08);

  scrollbar-gutter: stable; /* prevents “width shift” */
}
/* ST12 — Program Options heading: catch-all .elementor-7413 .elementor-element.elementor-element-72e29d3s */
.ss-st12 .ss-st12__options .elementor-heading-title,
.ss-st12 .ss-st12__options h1,
.ss-st12 .ss-st12__options h2,
.ss-st12 .ss-st12__options h3,
.ss-st12 .ss-st12__options h4{
  color: var(--ss-ink-soft) !important;
}
/* ST12 — Staff card: center children vertically */
.ss-st12 .ss-st12__staff.ss-stack{
  justify-content: center !important; /* vertical centering (because ss-stack is flex-column) */
}/* End custom CSS */