/* BeautyLift public theme only. No shared component or content overrides. */
.beautylift-public .bl-hero {
  --bl-premium-image-y: 0px;
  /* Match the existing 1160px header container, including its mobile toggle. */
  --bl-premium-copy-left: max(16px, calc((100% - 1160px) / 2));
  isolation: isolate;
  min-height: calc(100vh - var(--bl-header-height));
  min-height: calc(100svh - var(--bl-header-height));
  padding: clamp(64px, 8vh, 140px) max(16px, calc((100% - 1160px) / 2)) 112px var(--bl-premium-copy-left);
  background: #29221b;
  align-items: center;
}

.beautylift-public .bl-hero::after {
  content: "";
  position: absolute;
  z-index: 0;
  inset: -32px 0;
  pointer-events: none;
  background-image: var(--bl-hero-background-image);
  background-size: cover;
  background-position: 68% 46%;
  background-repeat: no-repeat;
  transform: translate3d(0, var(--bl-premium-image-y), 0);
}

.beautylift-public .bl-hero::before {
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, rgb(19 16 13 / 78%) 0%, rgb(23 19 15 / 56%) 34%, rgb(25 21 17 / 16%) 66%, rgb(25 21 17 / 5%) 100%), linear-gradient(0deg, rgb(18 16 13 / 38%), transparent 35%);
}

.beautylift-public .bl-hero__content {
  z-index: 2;
  width: min(48vw, 920px);
  max-width: 100%;
  margin-left: 0;
}

.beautylift-public .bl-hero h1 {
  max-width: 12ch;
  margin: 0 0 28px;
  font-size: clamp(48px, 4.7vw, 128px);
  font-weight: 400;
  line-height: 1.04;
  letter-spacing: -.045em;
  text-transform: none;
  text-wrap: balance;
  color: #fffaf2;
}

.beautylift-public .bl-hero p {
  max-width: 43ch;
  margin: 0 0 32px;
  font-size: clamp(16px, 1.05vw, 22px);
  line-height: 1.75;
  font-weight: 400;
  color: rgb(255 250 242 / 91%);
  text-wrap: pretty;
}

.beautylift-public .bl-hero .bl-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  min-height: 56px;
  padding: 16px 26px;
  border: 1px solid rgb(255 250 242 / 78%);
  border-radius: 3px;
  background: #fffaf2;
  color: #29221b;
  font-size: 14px;
  font-weight: 600;
  transition: background-color 180ms ease, border-color 180ms ease;
}

.beautylift-public .bl-hero .bl-button::after {
  content: "";
  width: 20px;
  height: 20px;
  background: currentColor;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12h15m-6-6 6 6-6 6' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

.beautylift-public .bl-hero .bl-button:hover { background: #e9d9bd; border-color: #e9d9bd; }
.beautylift-public .bl-hero .bl-button:focus-visible { outline: 2px solid #fffaf2; outline-offset: 5px; }
.beautylift-public .bl-hero__down { z-index: 2; left: 50%; right: auto; bottom: 24px; transform: translateX(-50%); gap: 8px; font-size: 11px; font-weight: 400; letter-spacing: .1em; color: rgb(255 250 242 / 85%); }
.beautylift-public .bl-hero__down span {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgb(255 250 242 / 48%);
  background: rgb(255 250 242 / 3%);
  animation: none;
  transition: border-color 240ms ease, background-color 240ms ease;
}
.beautylift-public .bl-hero__down span::after {
  position: static;
  inset: auto;
  width: 20px;
  height: 20px;
  border: 0;
  opacity: 1;
  background: currentColor;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
  transform: none;
  animation: bl-premium-discover 2.8s cubic-bezier(.45, 0, .55, 1) infinite;
}
.beautylift-public .bl-hero__down:hover span,
.beautylift-public .bl-hero__down:focus-visible span { border-color: #fffaf2; background: rgb(255 250 242 / 12%); }
.beautylift-public .bl-hero__down:focus-visible { outline: 2px solid #fffaf2; outline-offset: 6px; border-radius: 24px; }
@keyframes bl-premium-discover {
  0%, 20%, 80%, 100% { transform: translateY(0); }
  45% { transform: translateY(3px); }
  65% { transform: translateY(-1px); }
}

/* Existing category photographs were covered by an opaque white pseudo-element. */
.beautylift-public .bl-nav__panel { max-height: calc(100dvh - var(--bl-header-height)); overflow-y: auto; box-shadow: 0 18px 36px rgb(20 17 14 / 10%); }
.beautylift-public .bl-nav__panel-shell { width: min(1440px, calc(100% - 64px)); grid-template-columns: minmax(260px, 30%) minmax(0, 1fr); gap: clamp(24px, 3vw, 48px); padding: 28px 0; }
.beautylift-public .bl-nav__feature { min-height: 300px; border-radius: 5px; isolation: isolate; }
.beautylift-public .bl-nav__feature picture { position: absolute; inset: 0; }
.beautylift-public .bl-nav__feature img { z-index: 0; object-fit: cover; object-position: center; }
.beautylift-public .bl-nav__feature::after { z-index: 1; pointer-events: none; background: linear-gradient(180deg, transparent 22%, rgb(17 15 13 / 26%) 48%, rgb(17 15 13 / 87%) 100%); }
.beautylift-public .bl-nav__feature-copy { z-index: 2; padding: 24px; gap: 10px; }
.beautylift-public .bl-nav__feature-title { font-family: Georgia, "Times New Roman", serif; font-size: 29px; font-weight: 400; line-height: 1.12; letter-spacing: -.025em; }
.beautylift-public .bl-nav__feature-summary { font-size: 13px; line-height: 1.65; color: rgb(255 255 255 / 92%); }
.beautylift-public .bl-nav__panel-heading { padding-bottom: 20px; margin-bottom: 20px; }
.beautylift-public .bl-nav__section-title { font-size: 12px; font-weight: 600; letter-spacing: .04em; }
.beautylift-public .bl-nav__panel-link { font-weight: 400; }
.beautylift-public .bl-nav__link span[aria-hidden="true"] { flex: 0 0 12px; width: 12px; height: 12px; font-size: 0; background: currentColor; opacity: .75; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; transform: none; transition: transform 180ms ease; }
.beautylift-public .bl-nav__item:hover .bl-nav__link span[aria-hidden="true"],
.beautylift-public .bl-nav__item:focus-within .bl-nav__link span[aria-hidden="true"] { transform: rotate(180deg); }

/* Match the initial, theme-owned launcher to the asynchronously loaded widget. */
.beautylift-public .bl-chat { right: max(24px, env(safe-area-inset-right)); bottom: max(24px, env(safe-area-inset-bottom)); }
.beautylift-public .bl-chat__bubble { width: auto; min-width: 146px; height: 56px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; padding: 0 22px; border: 1px solid #bba98b; border-radius: 999px; background: #272622; color: #fffaf2; box-shadow: 0 6px 22px rgb(0 0 0 / 16%); font: 500 14px/1.2 Arial, sans-serif; }
.beautylift-public .bl-chat__bubble::after { content: "Scrie-ne"; }
.beautylift-public[data-bl-language="en"] .bl-chat__bubble::after { content: "Contact us"; }
.beautylift-public .bl-chat__bubble:hover { background: #39372f; outline: none; }
.beautylift-public .bl-chat__bubble:focus-visible { outline: 2px solid #bba98b; outline-offset: 4px; }
.beautylift-public .bl-chat__bubble-icon { width: 21px; height: 21px; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 11.5a8 8 0 0 1-8 8H5l-3 2v-10a9 9 0 0 1 18 0ZM7 10h10M7 14h6' fill='none' stroke='black' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.beautylift-public .bl-chat__bubble-dot[hidden],
.beautylift-public .bl-chat__bubble-online[hidden] { display: none !important; }
html[data-bl-premium-chat-ready="1"] .beautylift-public .bl-chat__bubble { display: none; }

@media (max-width: 1120px) {
  .beautylift-public .bl-hero { --bl-premium-copy-left: calc(16px + 44px + 1.5rem); }
}

@media (max-width: 900px) {
  .beautylift-public .bl-hero { align-items: end; padding: 80px 32px 100px var(--bl-premium-copy-left); }
  .beautylift-public .bl-hero::after { background-position: 76% 40%; }
  .beautylift-public .bl-hero::before { background: linear-gradient(0deg, rgb(19 16 13 / 88%) 0%, rgb(19 16 13 / 70%) 26%, rgb(19 16 13 / 15%) 73%, rgb(19 16 13 / 8%) 100%); }
  .beautylift-public .bl-hero__content { width: min(580px, 100%); }
  .beautylift-public .bl-hero h1 { font-size: clamp(42px, 7.3vw, 68px); margin-bottom: 22px; }
  .beautylift-public .bl-hero p { max-width: 39ch; font-size: 16px; margin-bottom: 24px; }
}

@media (max-width: 600px) {
  .beautylift-public .bl-hero { padding: 200px 24px 96px var(--bl-premium-copy-left); }
  .beautylift-public .bl-hero::after { inset: 0; background-position: 80% 40%; }
  .beautylift-public .bl-hero h1 { font-size: clamp(38px, 11.5vw, 60px); line-height: 1.02; max-width: 12ch; }
  .beautylift-public .bl-hero p { max-width: 33ch; font-size: 15px; line-height: 1.65; }
  .beautylift-public .bl-hero .bl-button { min-height: 52px; padding: 14px 22px; }
  .beautylift-public .bl-hero__down { bottom: 18px; gap: 5px; }
  .beautylift-public .bl-hero__down span { width: 36px; height: 36px; }
  .beautylift-public .bl-chat { right: max(16px, env(safe-area-inset-right)); bottom: max(16px, env(safe-area-inset-bottom)); }
  .beautylift-public .bl-chat__bubble { width: 54px; min-width: 54px; height: 54px; padding: 0; }
  .beautylift-public .bl-chat__bubble::after { display: none; }
}

/* foundation.css resets the mobile header token to 78px; the actual header is 68px. */
@media (max-width: 640px) {
  .beautylift-public .bl-main:has(> .bl-hero) { padding-top: 68px; }
  .beautylift-public .bl-hero { --bl-premium-copy-left: calc(8px + 44px + .45rem); min-height: calc(100svh - 68px); }
}

@media (prefers-reduced-motion: reduce), (pointer: coarse) {
  .beautylift-public .bl-hero::after { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .beautylift-public .bl-hero__down span::after { animation: none; }
  .beautylift-public .bl-hero__down span,
  .beautylift-public .bl-hero .bl-button,
  .beautylift-public .bl-nav__link span[aria-hidden="true"],
  .beautylift-public .bl-nav__feature img { transition: none; }
}
