/* ===== Fix: background gradient "repeats" / bands on long pages ===== */

body.site{
  min-height: 100svh;
}

/* PLEIRAUM location licensing */
.home-license-simple {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: clamp(40px, 8vw, 120px);
  align-items: start;
}

.home-license-simple__copy h2 {
  margin: 18px 0 24px;
  font-size: clamp(38px, 5vw, 72px);
  line-height: .98;
  letter-spacing: -.055em;
}

.home-license-simple__copy p {
  max-width: 580px;
  color: rgba(255,255,255,.68);
  font-size: clamp(17px, 1.5vw, 21px);
  line-height: 1.65;
}

.home-license-simple__facts {
  border-top: 1px solid rgba(255,255,255,.15);
}

.home-license-simple__facts article {
  display: grid;
  grid-template-columns: minmax(180px, .8fr) 1fr;
  gap: 30px;
  padding: 28px 0;
  border-bottom: 1px solid rgba(255,255,255,.15);
}

.home-license-simple__facts strong { font-size: 17px; }
.home-license-simple__facts span { color: rgba(255,255,255,.58); line-height: 1.55; }

.plans-scope-note {
  max-width: 880px;
  margin: 24px auto 0;
  color: rgba(255,255,255,.58);
  text-align: center;
  line-height: 1.6;
}

.account-location-add__intro {
  margin: -4px 0 22px;
  max-width: 720px;
  color: rgba(255,255,255,.56);
  line-height: 1.55;
}

.account-location-license {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 15px 18px;
  margin-top: 14px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  background: rgba(255,255,255,.035);
}

.account-location-license__state {
  display: grid;
  grid-template-columns: 10px auto;
  column-gap: 10px;
  align-items: center;
}

.account-location-license__state > span:last-child {
  grid-column: 2;
  margin-top: 3px;
  color: rgba(255,255,255,.52);
  font-size: 13px;
  line-height: 1.45;
}

.account-location-license__dot,
.license-status__dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #8a8a8a;
  box-shadow: 0 0 0 4px rgba(138,138,138,.12);
}

.account-location-license--active .account-location-license__dot,
.license-status--active .license-status__dot {
  background: #56d98b;
  box-shadow: 0 0 0 4px rgba(86,217,139,.13);
}

.account-location-license--trial .account-location-license__dot {
  background: #d9b956;
  box-shadow: 0 0 0 4px rgba(217,185,86,.13);
}

.account-location-license__actions { display: flex; gap: 10px; flex-shrink: 0; }
.account-location-license__actions a {
  padding: 9px 13px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  color: #fff;
  font-size: 13px;
  text-decoration: none;
}
.account-location-license__actions a:hover { background: rgba(255,255,255,.08); }

.license-verify-page,
.certificate-page {
  width: min(100% - 32px, 980px);
  margin: 0 auto;
  padding: clamp(48px, 8vw, 100px) 0;
}

.license-verify-card {
  max-width: 720px;
  margin: 0 auto;
  padding: clamp(28px, 6vw, 64px);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 28px;
  background: linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.025));
  box-shadow: 0 30px 90px rgba(0,0,0,.25);
}

.license-verify-brand {
  display: inline-block;
  margin-bottom: 58px;
  color: #fff;
  font-weight: 800;
  letter-spacing: .18em;
  text-decoration: none;
}

.license-status {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 22px 0 16px;
  padding: 9px 14px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
}
.license-status--revoked { color: #ff9e9e; }
.license-status--inactive, .license-status--unknown { color: rgba(255,255,255,.66); }
.license-verify-card h1 { margin: 6px 0 10px; font-size: clamp(34px, 6vw, 60px); line-height: 1.02; letter-spacing: -.045em; }
.license-verify-address { color: rgba(255,255,255,.62); font-size: 17px; line-height: 1.55; }
.license-facts { margin: 38px 0 30px; border-top: 1px solid rgba(255,255,255,.12); }
.license-facts > div { display: grid; grid-template-columns: 150px 1fr; gap: 20px; padding: 15px 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.license-facts dt { color: rgba(255,255,255,.48); }
.license-facts dd { margin: 0; font-weight: 600; }
.license-verify-message { font-size: 18px; line-height: 1.55; }
.license-verify-disclaimer { margin: 36px 0 0; color: rgba(255,255,255,.4); font-size: 12px; line-height: 1.6; }

.certificate-toolbar { display: flex; justify-content: flex-end; gap: 12px; margin-bottom: 24px; }
.certificate-sheet {
  box-sizing: border-box;
  width: 210mm;
  min-height: 297mm;
  max-width: 100%;
  margin: 0 auto;
  padding: 24mm 22mm 20mm;
  color: #151515;
  background: #fff;
  box-shadow: 0 24px 80px rgba(0,0,0,.35);
}
.certificate-sheet__brand { font-size: 20px; font-weight: 800; letter-spacing: .22em; }
.certificate-sheet__rule { height: 1px; margin: 20px 0 52px; background: #151515; }
.certificate-sheet__eyebrow { margin: 0 0 16px; color: #666; font-size: 11px; font-weight: 800; letter-spacing: .18em; }
.certificate-sheet h1 { margin: 0; font-size: clamp(48px, 7vw, 82px); line-height: .95; letter-spacing: -.06em; }
.certificate-sheet__intro { max-width: 480px; margin: 30px 0 46px; color: #555; font-size: 18px; line-height: 1.55; }
.certificate-sheet__location { display: flex; flex-direction: column; gap: 7px; padding: 22px 0; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; }
.certificate-sheet__location strong { font-size: 24px; }
.certificate-sheet__location span { color: #555; line-height: 1.5; }
.certificate-sheet__verification { display: grid; grid-template-columns: 190px 1fr; gap: 34px; align-items: center; margin: 54px 0; }
.certificate-qr { width: 190px; height: 190px; }
.certificate-qr img, .certificate-qr canvas { display: block; width: 190px !important; height: 190px !important; }
.certificate-sheet__verification strong { display: block; margin-bottom: 12px; font-size: 22px; line-height: 1.25; }
.certificate-sheet__verification span { display: block; color: #666; font-size: 11px; line-height: 1.5; overflow-wrap: anywhere; }
.certificate-sheet__footer { margin-top: auto; padding-top: 26px; border-top: 1px solid #151515; }
.certificate-sheet__footer > span { display: block; color: #777; font-size: 10px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.certificate-sheet__footer > strong { display: block; margin-top: 7px; font-size: 22px; letter-spacing: .06em; }
.certificate-sheet__footer p { margin: 18px 0 0; color: #777; font-size: 11px; }

@media (max-width: 760px) {
  .home-license-simple { grid-template-columns: 1fr; }
  .home-license-simple__facts article { grid-template-columns: 1fr; gap: 7px; }
  .account-location-license { align-items: flex-start; flex-direction: column; }
  .license-facts > div { grid-template-columns: 1fr; gap: 5px; }
  .certificate-page { width: 100%; padding: 20px 12px; overflow-x: auto; }
  .certificate-toolbar { position: sticky; left: 0; justify-content: center; }
  .certificate-sheet { min-width: 720px; }
}

@media print {
  @page { size: A4 portrait; margin: 0; }
  body.site-public { background: #fff !important; }
  .site-header, .site-footer, .certificate-toolbar, #app-transition { display: none !important; }
  .site-shell { margin: 0 !important; padding: 0 !important; }
  .certificate-page { width: auto; margin: 0; padding: 0; }
  .certificate-sheet { width: 210mm; min-height: 297mm; margin: 0; box-shadow: none; break-after: avoid; }
}

body.site .site-shell{
  position: relative;
  z-index: 1;
}

body.site .site-header{
  position: sticky;
  top: 0;
  z-index: 10020;
  height: 69px;
  padding: 16px 20px;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  background: linear-gradient(180deg, rgba(7,10,17,.82), rgba(7,10,17,.44));
  border-bottom: 1px solid rgba(255,255,255,.08);
}

body.site .site-header__inner{
  width: min(1240px, calc(100% - 8px));
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

body.site .site-brand{
  display: inline-flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  color: var(--text);
}

body.site .site-brand:hover{
  text-decoration: none;
}

body.site .site-brand__mark{
  width: 38px;
  height: 38px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  font-weight: 800;
  letter-spacing: -.03em;
  background:
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(212,223,255,.66)),
    rgba(255,255,255,.2);
  color: #10131d;
  box-shadow: 0 18px 40px rgba(0,0,0,.28);
}

body.site .site-brand__word{
  font-size: 14px;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
}

body.site .site-nav{
  display: flex;
  align-items: center;
  gap: 26px;
}

body.site .site-nav a,
body.site .site-mobile-menu__nav a{
  font-size: 14px;
  font-weight: 500;
  letter-spacing: .01em;
  color: rgba(242,243,255,.76);
  text-decoration: none;
  transition: color .15s ease, opacity .15s ease;
}

body.site .site-nav a:hover,
body.site .site-mobile-menu__nav a:hover{
  color: #fff;
  text-decoration: none;
}

body.site .site-header__actions{
  display: flex;
  align-items: center;
  gap: 12px;
}

/* Keep public header controls visually aligned with app topbar scale */
body.site .site-header .site-action{
  min-height: 38px !important;
  padding: 0 16px !important;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .01em;
}

body.site .site-header .site-brand__mark{
  width: 36px;
  height: 36px;
  border-radius: 12px;
}

body.site .site-action{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border-radius: 999px;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,.14);
  background:
    linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,.08)),
    rgba(255,255,255,.08);
  color: var(--text);
  box-shadow: 0 20px 38px rgba(0,0,0,.18);
  transition: transform .16s ease, background .16s ease, border-color .16s ease;
}

body.site .site-action:hover{
  text-decoration: none;
  transform: translateY(-1px);
  background:
    linear-gradient(135deg, rgba(255,255,255,.24), rgba(255,255,255,.12)),
    rgba(255,255,255,.12);
}

body.site .site-action--trial{
  background: linear-gradient(135deg, rgba(167, 76, 255, .98), rgba(255, 34, 140, .98));
  border-color: rgba(255, 34, 140, .34);
  color: rgba(255,255,255,.98);
  box-shadow:
    0 14px 30px rgba(255, 34, 140, .18),
    0 0 28px rgba(167, 76, 255, .10);
}

body.site .site-action--trial:hover{
  background: linear-gradient(135deg, rgba(176, 90, 255, 1), rgba(255, 54, 153, 1));
  border-color: rgba(255, 34, 140, .44);
}

body.site .site-action--ghost{
  background: rgba(255,255,255,.04);
  box-shadow: none;
}

body.site .site-mobile-menu__trial{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  margin-top: 4px;
  border-radius: 999px;
  border: 1px solid rgba(255, 34, 140, .34);
  background: linear-gradient(135deg, rgba(167, 76, 255, .98), rgba(255, 34, 140, .98));
  color: rgba(255,255,255,.98);
  box-shadow:
    0 12px 24px rgba(255, 34, 140, .16),
    0 0 20px rgba(167, 76, 255, .10);
}

body.site .site-mobile-menu__trial:hover{
  color: rgba(255,255,255,.98);
  background: linear-gradient(135deg, rgba(176, 90, 255, 1), rgba(255, 54, 153, 1));
  border-color: rgba(255, 34, 140, .44);
}

body.site .site-burger{
  display: none;
  width: 46px;
  height: 46px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  padding: 0;
  color: var(--text);
  cursor: pointer;
}

body.site .site-burger span{
  display: block;
  width: 18px;
  height: 2px;
  margin: 4px auto;
  border-radius: 999px;
  background: currentColor;
}

body.site .site-mobile-menu{
  width: min(1240px, calc(100% - 8px));
  margin: 14px auto 0;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(10,12,20,.92);
  box-shadow: 0 28px 80px rgba(0,0,0,.3);
  transform: translateY(-10px);
  opacity: 0;
  transition: opacity .18s ease, transform .18s ease;
}

body.site .site-mobile-menu.is-open{
  transform: translateY(0);
  opacity: 1;
}

body.site .site-mobile-menu__nav{
  display: grid;
  gap: 14px;
}

body.site .landing-hero,
body.site .landing-section,
body.site .marketing-page,
body.site .legal-page{
  width: min(1240px, calc(100% - 40px));
  margin: 0 auto;
}

body.site .landing-hero{
  padding: 52px 0 28px;
}

body.site .landing-hero__inner{
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr);
  gap: 34px;
  align-items: stretch;
}

body.site .landing-kicker{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 7px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(255,255,255,.05);
  color: rgba(242,243,255,.78);
  font-size: 12px;
  letter-spacing: .16em;
  text-transform: uppercase;
}

body.site .landing-hero h1,
body.site .marketing-page__head h1,
body.site .legal-page h1{
  margin: 18px 0 18px;
  font-size: clamp(44px, 7vw, 82px);
  line-height: .96;
  letter-spacing: -.05em;
  max-width: 11ch;
}

body.site .landing-hero p,
body.site .marketing-page__head p,
body.site .legal-page p{
  max-width: 680px;
  font-size: 18px;
  line-height: 1.65;
  color: rgba(242,243,255,.72);
}

body.site .landing-hero__actions,
body.site .cta-banner__actions{
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 28px;
}

body.site .landing-hero__prompt{
  margin-top: 16px;
  color: rgba(242,243,255,.9);
}

body.site .landing-hero__trial{
  margin: 16px 0 0;
  font-size: 14px;
  line-height: 1.4;
  color: rgba(242,243,255,.54);
}

body.site .landing-stats{
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 16px;
  margin-top: 34px;
}

body.site .landing-stat{
  padding: 18px 20px;
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
}

body.site .landing-stat strong{
  display: block;
  font-size: 28px;
  letter-spacing: -.04em;
}

body.site .landing-stat span{
  display: block;
  margin-top: 8px;
  color: rgba(242,243,255,.68);
}

body.site .hero-showcase{
  height: 100%;
  padding: 24px;
  border-radius: 34px;
  border: 1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at top left, rgba(255,188,110,.16), transparent 30%),
    radial-gradient(circle at bottom right, rgba(121,156,255,.18), transparent 38%),
    rgba(15,17,27,.76);
  box-shadow: 0 36px 90px rgba(0,0,0,.24);
}

body.site .hero-showcase__top{
  display: grid;
  gap: 8px;
  margin-bottom: 22px;
}

body.site .hero-showcase__top span{
  color: rgba(242,243,255,.58);
  font-size: 14px;
}

body.site .hero-showcase__top strong{
  font-size: 26px;
  line-height: 1.15;
  letter-spacing: -.04em;
}

body.site .hero-showcase__grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}

body.site .hero-showcase__card{
  --home-cat-photo: none;

  position: relative;
  min-height: 150px;
  padding: 0;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(110% 100% at 75% -8%, color-mix(in srgb, var(--cat-accent, #aeb4bf) 22%, transparent), transparent 48%),
    radial-gradient(90% 80% at 8% 18%, color-mix(in srgb, var(--cat-accent, #aeb4bf) 7%, transparent), transparent 58%),
    linear-gradient(145deg, color-mix(in srgb, var(--cat-wash, #20242b) 84%, #11131a), var(--cat-depth, #090a0d) 82%);
  display: block;
  overflow: hidden;
  isolation: isolate;
  box-shadow:
    0 22px 54px rgba(0,0,0,.3),
    inset 0 1px 0 rgba(255,255,255,.06),
    inset 0 -70px 100px rgba(0,0,0,.3);
}

body.site .hero-showcase__card::before,
body.site .hero-showcase__card::after{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}

body.site .hero-showcase__card::before{
  z-index: 0;
  transform: scale(1.04);
  opacity: .62;
  filter: blur(9px) saturate(.94);
  background:
    var(--home-cat-photo) center / cover no-repeat,
    radial-gradient(90px 130px at 83% 28%, rgba(255,255,255,.13), transparent 70%),
    radial-gradient(180px 130px at 25% 72%, color-mix(in srgb, var(--cat-accent, #aeb4bf) 22%, transparent), transparent 72%),
    linear-gradient(90deg, transparent 0 54%, rgba(255,255,255,.05) 55% 56%, transparent 57% 100%),
    linear-gradient(0deg, transparent 0 50%, rgba(255,255,255,.032) 51% 52%, transparent 53% 100%),
    linear-gradient(125deg, rgba(255,255,255,.08), transparent 24% 55%, rgba(0,0,0,.22)),
    radial-gradient(120% 95% at 78% 18%, color-mix(in srgb, var(--cat-accent, #aeb4bf) 34%, transparent), transparent 54%),
    linear-gradient(145deg, var(--cat-wash, #20242b), var(--cat-depth, #090a0d));
  background-size: cover, auto, auto, 82px 100%, 100% 58px, auto, auto, auto;
  background-position: center;
}

body.site .hero-showcase__card::after{
  z-index: 1;
  background:
    radial-gradient(120% 88% at 78% 3%, color-mix(in srgb, var(--cat-accent, #aeb4bf) 16%, transparent), transparent 46%),
    linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.14) 42%, rgba(0,0,0,.58) 100%),
    radial-gradient(125% 110% at 50% 50%, transparent 42%, rgba(0,0,0,.62) 100%);
}

body.site .hero-showcase__card-icon{
  position: absolute;
  left: 50%;
  top: 39%;
  z-index: 2;
  width: 52px;
  height: 52px;
  display: block;
  background: color-mix(in srgb, var(--cat-accent, #aeb4bf) 44%, rgba(255,255,255,.86));
  opacity: .84;
  transform: translate(-50%, -50%);
  -webkit-mask: var(--home-cat-icon) center / contain no-repeat;
  mask: var(--home-cat-icon) center / contain no-repeat;
  filter:
    drop-shadow(0 0 6px color-mix(in srgb, var(--cat-accent, #aeb4bf) 16%, transparent))
    drop-shadow(0 8px 14px rgba(0,0,0,.22));
}

body.site .hero-showcase__card-title{
  position: absolute;
  left: 50%;
  bottom: 43px;
  z-index: 2;
  width: calc(100% - 28px);
  max-width: calc(100% - 28px);
  transform: translateX(-50%);
  font-family: Manrope, Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  font-size: clamp(17px, 1.22vw, 21px);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: .022em;
  text-align: center;
  text-transform: uppercase;
  color: rgba(255,255,255,.96);
  overflow-wrap: anywhere;
  text-shadow: 0 10px 30px rgba(0,0,0,.56);
}

body.site .hero-showcase__card-subtitle{
  position: absolute;
  left: 50%;
  bottom: 20px;
  z-index: 2;
  width: calc(100% - 28px);
  max-width: calc(100% - 28px);
  transform: translateX(-50%);
  font-family: Manrope, Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: .01em;
  text-align: center;
  color: rgba(255,255,255,.62);
  text-shadow: 0 8px 22px rgba(0,0,0,.36);
}

body.site .landing-section{
  padding: 42px 0;
}

body.site .section-heading{
  max-width: 760px;
  margin-bottom: 24px;
}

body.site .section-heading h2,
body.site .cta-banner h2,
body.site .marketing-note h3{
  margin: 16px 0 12px;
  font-size: clamp(32px, 5vw, 54px);
  line-height: 1.02;
  letter-spacing: -.05em;
}

body.site .premium-grid,
body.site .flow-grid,
body.site .pricing-cards,
body.site .contact-grid{
  display: grid;
  gap: 18px;
}

body.site .premium-grid--3,
body.site .flow-grid,
body.site .pricing-cards{
  grid-template-columns: repeat(3, minmax(0,1fr));
}

body.site .premium-card,
body.site .flow-step,
body.site .pricing-card,
body.site .marketing-note,
body.site .legal-card{
  padding: 24px;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.025));
  box-shadow: 0 24px 60px rgba(0,0,0,.18);
}

body.site .premium-card h3,
body.site .flow-step h3,
body.site .pricing-card h2,
body.site .legal-card h2{
  margin: 0 0 12px;
  font-size: 26px;
  letter-spacing: -.04em;
  color: var(--text);
}

body.site .premium-card p,
body.site .flow-step p,
body.site .pricing-card p,
body.site .marketing-note p,
body.site .legal-card p{
  color: rgba(242,243,255,.68);
  line-height: 1.7;
}

body.site .flow-step span{
  display: inline-flex;
  margin-bottom: 18px;
  font-size: 13px;
  letter-spacing: .2em;
  color: rgba(242,243,255,.55);
}

body.site .business-grid{
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

body.site .business-pill{
  padding: 12px 16px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.04);
  color: rgba(242,243,255,.82);
}

body.site .home-catalog{
  padding-top: 88px;
  overflow: hidden;
}

body.site .home-catalog__heading{
  max-width: 820px;
  margin-bottom: 34px;
}

body.site .home-catalog__rail{
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 18px;
  width: 100%;
}

body.site .home-catalog__item{
  margin: 0;
}

body.site .home-catalog__artwork{
  aspect-ratio: 1;
  overflow: hidden;
  background: rgba(255,255,255,.04);
}

body.site .home-catalog__artwork img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.site .home-catalog__item figcaption{
  margin-top: 11px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -.01em;
  color: rgba(242,243,255,.72);
}

body.site .home-editorial{
  padding-top: 92px;
  padding-bottom: 92px;
}

body.site .home-editorial h2{
  max-width: 1050px;
  margin: 28px 0 24px;
  font-size: clamp(42px, 5.2vw, 68px);
  line-height: .98;
  letter-spacing: -.06em;
}

body.site .home-editorial p{
  margin: 0;
  font-size: clamp(20px, 2.4vw, 32px);
  line-height: 1.25;
  color: rgba(242,243,255,.6);
}

body.site .home-discovery__grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 18px;
}

body.site .home-discovery__card{
  min-height: 184px;
}

body.site .home-discovery__link{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 24px;
  color: rgba(242,243,255,.82);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}

body.site .home-discovery__link span{
  transition: transform .15s ease;
}

@media (hover: hover) and (pointer: fine){
  body.site .home-discovery__link:hover span{
    transform: translateX(3px);
  }
}

body.site .home-flow{
  padding-top: 104px;
  padding-bottom: 104px;
}

body.site .home-flow__steps{
  margin: 30px 0 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid rgba(255,255,255,.12);
}

body.site .home-flow__steps li{
  display: grid;
  grid-template-columns: minmax(54px, .18fr) 1fr;
  align-items: baseline;
  gap: 24px;
  padding: 28px 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

body.site .home-flow__steps span{
  font-size: 13px;
  letter-spacing: .2em;
  color: rgba(242,243,255,.46);
}

body.site .home-flow__steps strong{
  font-size: clamp(30px, 4.4vw, 58px);
  line-height: 1;
  letter-spacing: -.045em;
}

body.site .cta-banner{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 30px;
  border-radius: 34px;
  border: 1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at top right, rgba(255,188,110,.18), transparent 36%),
    radial-gradient(circle at bottom left, rgba(121,156,255,.18), transparent 34%),
    rgba(16,18,28,.82);
}

body.site .marketing-page,
body.site .legal-page{
  padding: 56px 0 80px;
}

body.site .marketing-page--narrow{
  width: min(980px, calc(100% - 40px));
}

body.site .marketing-page__head{
  margin-bottom: 28px;
}

body.site .pricing-card{
  position: relative;
}

body.site .pricing-card.is-highlight{
  border-color: rgba(255,199,130,.34);
  background:
    radial-gradient(circle at top right, rgba(255,188,110,.16), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,.09), rgba(255,255,255,.03));
}

body.site .pricing-card__badge{
  display: inline-flex;
  margin-bottom: 14px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,199,130,.14);
  color: #ffd9a8;
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
}

body.site .pricing-card__price{
  margin-bottom: 8px;
  font-size: 42px;
  font-weight: 800;
  letter-spacing: -.05em;
}

body.site .pricing-card__price span{
  display: block;
  margin-top: 8px;
  font-size: 14px;
  font-weight: 500;
  color: rgba(242,243,255,.58);
  letter-spacing: 0;
}

body.site .pricing-card__subprice{
  margin-bottom: 16px;
  color: rgba(242,243,255,.58);
}

body.site .contact-grid{
  grid-template-columns: repeat(2, minmax(0,1fr));
}

body.site .legal-card{
  display: grid;
  gap: 8px;
  max-width: 920px;
}

body.site .site-footer{
  width: min(1240px, calc(100% - 40px));
  margin: 24px auto 36px;
  padding: 30px;
  border-radius: 34px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(12,15,24,.78);
}

body.site .site-footer__inner{
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(0, 1.3fr);
  gap: 28px;
}

body.site .site-footer__brand p{
  max-width: 420px;
  color: rgba(242,243,255,.62);
  line-height: 1.7;
}

body.site .site-footer__links{
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 20px;
}

body.site .site-footer__links h3{
  margin: 0 0 14px;
  font-size: 13px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(242,243,255,.5);
}

body.site .site-footer__settings{
  appearance: none;
  -webkit-appearance: none;
  width: auto;
  padding: 0;
  border: 0;
  background: transparent;
  font: inherit;
  letter-spacing: inherit;
  text-align: start;
  cursor: pointer;
}

body.site .site-footer__links :is(a,.site-footer__settings){
  display: block;
  margin-bottom: 10px;
  color: rgba(242,243,255,.78);
  text-align: left;
  text-decoration: none;
}

body.site .site-footer__settings:focus-visible{
  outline: 2px solid rgba(191,204,235,.82);
  outline-offset: 3px;
  border-radius: 2px;
}

body.site .site-footer__bottom{
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-top: 28px;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.08);
  color: rgba(242,243,255,.54);
  font-size: 14px;
}

@media (max-width: 960px){
  body.site .site-nav--desktop,
  body.site .site-action--desktop{
    display: none;
  }

  body.site .site-burger{
    display: block;
  }

  body.site .landing-hero__inner,
  body.site .premium-grid--3,
  body.site .flow-grid,
  body.site .pricing-cards,
  body.site .contact-grid,
  body.site .site-footer__inner,
  body.site .site-footer__links,
  body.site .cta-banner{
    grid-template-columns: 1fr;
    flex-direction: column;
    align-items: flex-start;
  }

  body.site .landing-stats{
    grid-template-columns: 1fr;
  }

  body.site .hero-showcase__grid{
    grid-template-columns: 1fr 1fr;
  }

  body.site .site-footer__bottom{
    flex-direction: column;
  }

  body.site .home-discovery__grid{
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  body.site .home-catalog__rail{
    grid-template-columns: repeat(3, minmax(0,1fr));
  }

  body.site .home-editorial{
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

@media (max-width: 640px){
  body.site .site-header{
    height: 69px;
    padding: 16px;
  }

  body.site .landing-hero,
  body.site .landing-section,
  body.site .marketing-page,
  body.site .legal-page,
  body.site .site-footer{
    width: min(100%, calc(100% - 28px));
  }

  body.site .landing-hero{
    padding-top: 28px;
  }

  body.site .landing-hero h1,
  body.site .marketing-page__head h1,
  body.site .legal-page h1{
    max-width: none;
  }

  body.site .hero-showcase__grid{
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 12px;
  }

  body.site .hero-showcase__card{
    min-height: 132px;
    border-radius: 16px;
  }

  body.site .hero-showcase__card-icon{
    top: 38%;
    width: 40px;
    height: 40px;
  }

  body.site .hero-showcase__card-title{
    bottom: 25px;
    width: calc(100% - 18px);
    max-width: calc(100% - 18px);
    font-size: clamp(12px, 3.4vw, 15px);
    letter-spacing: .02em;
  }

  body.site .hero-showcase__card-subtitle{
    display: none;
  }

  body.site .home-catalog{
    padding-top: 64px;
  }

  body.site .home-catalog__rail{
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 14px;
  }

  body.site .home-editorial{
    padding-top: 80px;
    padding-bottom: 80px;
  }

  body.site .home-editorial h2{
    font-size: clamp(38px, 11vw, 54px);
  }

  body.site .home-discovery__grid{
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 12px;
  }

  body.site .home-discovery__card{
    min-height: 154px;
  }

  body.site .home-flow{
    padding-top: 72px;
    padding-bottom: 72px;
  }

  body.site .home-flow__steps li{
    grid-template-columns: 42px 1fr;
    gap: 14px;
    padding: 22px 0;
  }

  body.site .home-flow__steps strong{
    font-size: clamp(27px, 8vw, 38px);
  }

  body.site .premium-card,
  body.site .flow-step,
  body.site .pricing-card,
  body.site .marketing-note,
  body.site .legal-card,
  body.site .cta-banner,
  body.site .site-footer{
    padding: 20px;
    border-radius: 24px;
  }
}

/* 1) Keep body clean */
.site body,
body.site{
  background: var(--bg) !important;
}

/* 2) Put the gradient on a fixed pseudo-layer (no stacking artifacts) */
.site body::before,
body.site::before{
  content:"";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;

  background:
    radial-gradient(1200px 600px at 35% 20%, rgba(90,100,255,.22), transparent 60%),
    radial-gradient(900px 500px at 70% 30%, rgba(255,120,40,.18), transparent 55%),
    radial-gradient(900px 700px at 40% 85%, rgba(120,130,255,.10), transparent 60%),
    linear-gradient(180deg, rgba(0,0,0,.0), rgba(0,0,0,.35));

  transform: translateZ(0); /* helps Safari */
}

/* 3) Optional: add a subtle vignette so the bottom never "breaks" */
.site body::after,
body.site::after{
  content:"";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(1200px 900px at 50% 55%, transparent 55%, rgba(0,0,0,.35) 100%);
}

/* =========================
   AUTH (login/register) UI
   Only outside the app
   ========================= */
.site .row {
  margin-left: 0;
  margin-right: 0;
}

.site .auth-wrap,
.site .container,
.site .container-fluid {
  width: min(980px, calc(100% - 40px));
  margin: 0 auto;
}

.site .row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  align-items: start;
  padding: 28px 0 60px;
}

@media (max-width: 900px) {
  .site .row {
    grid-template-columns: 1fr;
  }
}

.site .col-md-6 {
  width: auto !important;     /* bootstrap override */
  float: none !important;
}

/* Card style for each column */
.site .col-md-6 {
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(
    to bottom,
    rgba(20,20,34,.55),
    rgba(20,20,34,.28)
  );
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow: 0 18px 60px rgba(0,0,0,.35);
  padding: 18px 18px 16px;
}

/* Titles */
.site h3 {
  margin: 0 0 14px;
  font-size: 22px;
  letter-spacing: .2px;
  color: var(--text);
}

/* Form layout */
.site form {
  margin: 0;
}

.site .form-group {
  margin-bottom: 12px;
}

.site label {
  display: block;
  margin-bottom: 6px;
  font-size: 12px;
  color: var(--muted);
}

.site .form-control {
  width: 100%;
  height: 42px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.18);
  color: var(--text);
  outline: none;
  padding: 0 12px;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

.site .form-control::placeholder {
  color: rgba(242,243,255,.45);
}

.site .form-control:focus {
  border-color: rgba(120,130,255,.55);
  box-shadow: 0 0 0 4px rgba(120,130,255,.14);
  background: rgba(0,0,0,.22);
}

/* Buttons */
.site .btn,
.site .btn-default {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 42px;
  padding: 0 14px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: var(--text);
  cursor: pointer;
  transition: transform .12s ease, background .12s ease, border-color .12s ease, filter .12s ease;
}

.site .btn:hover,
.site .btn-default:hover {
  background: rgba(255,255,255,.10);
  border-color: rgba(255,255,255,.18);
  filter: brightness(1.05);
}

.site .btn:active,
.site .btn-default:active {
  transform: translateY(1px);
}

/* Make submit buttons full width for nicer UX */
.site form button[type="submit"],
.site form .btn[type="submit"] {
  width: 100%;
  margin-top: 10px;
}

/* Small links like "Forgot password" if you add later */
.site a {
  color: rgba(180,190,255,.9);
  text-decoration: none;
}
.site a:hover {
  text-decoration: underline;
}

/* Optional: tighten the page content under the topbar */
.site main,
.site #app,
.site .page {
  padding-top: 10px;
}

/* Inline validation messages */
.field-error {
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.2;
  color: rgba(255, 120, 120, 0.95);
}

/* October adds .has-error on the field container */
.has-error .form-control {
  border-color: rgba(255, 120, 120, 0.55);
  box-shadow: 0 0 0 3px rgba(255, 120, 120, 0.12);
}

/* Optional general form error */
.form-error[data-validate-error] {
  margin-top: 12px;
  padding: 10px 12px;
  border: 1px solid rgba(255, 120, 120, 0.35);
  background: rgba(255, 120, 120, 0.08);
  border-radius: 12px;
  color: rgba(255, 210, 210, 0.95);
  font-size: 13px;
  display: none;
}
.form-error[data-validate-error]:not(:empty) {
  display: block;
}

/* ========================= 
   AUTH layout
   ========================= */

/* Центрира една колона */
.site .auth-wrap{
  min-height: calc(100vh - 72px); /* минус topbar */
  padding: 12vh 20px 60px;
  padding-top: 14vh;   /* пробвай 12–18vh */
  display: flex;
  justify-content: center;
}


.site .auth-card{
  width: min(480px, calc(100% - 0px)); /* тясно като Spotify */
  margin: 0 auto;
}

.site .auth-card label {
    letter-spacing: .2px;
}

/* Заглавията да не “плуват” наляво */
.site .auth-head{
  text-align: center;
  margin-bottom: 50px;
}

.site .auth-head .auth-reset-success-copy {
    font-size: 15px;
}

.site .auth-wrap .auth-card .auth-reset-status {
    width: 100%;
    margin: -22px 0 18px;
    padding: 5px 12px;
    min-height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: rgba(255, 95, 135, .08);
    color: rgba(255, 220, 230, .92);
    font-size: 13px;
    line-height: 1.35;
    text-align: center;
}

.site .auth-wrap .auth-card .auth-foot {
    margin-top: 70px;
    text-align: center;
}
.site .auth-wrap .auth-card .auth-foot a {
    position: relative;
    display: block;
    margin-top: 30px;
}

.site .auth-wrap .auth-card .auth-foot--forgot-password {
    margin-top: 18px;
}

.site .auth-wrap .auth-card .auth-foot--forgot-password a {
    margin-top: 0;
}

.site .auth-wrap .auth-card .auth-foot--success {
    margin-top: 0;
}

.site .auth-wrap .auth-card .auth-foot--success a {
    margin-top: 0;
}

.site .auth-wrap .auth-card .deactivateAccLink {
    color: #202020;
    position: relative;
    display: block;
    margin-top: 40px;
    text-align: center;
}

/* =========================
   ACCOUNT
   ========================= */

:is(body.app-bg, body.site) .auth-wrap--account{
  width: min(980px, calc(100% - 40px));
  min-height: auto;
  margin: 0 auto;
  padding: 28px 0 calc(var(--player-h, 0px) + 56px);
  display: flex;
  justify-content: center;
}

:is(body.app-bg, body.site) .auth-wrap--account .auth-card{
  width: min(980px, 100%);
  margin: 0 auto;
}

:is(body.app-bg, body.site) .auth-wrap--account .auth-head{
  text-align: center;
  margin-bottom: 36px;
}

:is(body.app-bg, body.site) .auth-wrap--account h1{
  margin: 0 0 10px;
  font-size: clamp(30px, 4vw, 44px);
  line-height: .98;
  letter-spacing: -0.03em;
  color: var(--text);
}

:is(body.app-bg, body.site) .auth-wrap--account .auth-head p{
  margin: 0;
  color: rgba(242,243,255,.68);
  font-size: 14px;
}

:is(body.app-bg, body.site) .auth-wrap--account .row{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  align-items: start;
  margin: 0;
}

:is(body.app-bg, body.site) .auth-wrap--account .col-md-6{
  width: auto !important;
  float: none !important;
  border-radius: 20px;
  border: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(
    to bottom,
    rgba(20,20,34,.55),
    rgba(20,20,34,.28)
  );
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 18px 60px rgba(0,0,0,.30);
  padding: 18px 18px 16px;
}

:is(body.app-bg, body.site) .auth-wrap--account h3{
  margin: 0 0 14px;
  font-size: 22px;
  letter-spacing: .2px;
  color: var(--text);
}

:is(body.app-bg, body.site) .auth-wrap--account form{
  margin: 0;
}

:is(body.app-bg, body.site) .auth-wrap--account .form-group{
  margin-bottom: 12px;
}

:is(body.app-bg, body.site) .auth-wrap--account label{
  display: block;
  margin-bottom: 6px;
  font-size: 12px;
  color: var(--muted);
  letter-spacing: .2px;
}

:is(body.app-bg, body.site) .auth-wrap--account .form-control{
  width: 100%;
  height: 42px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.18);
  color: var(--text);
  outline: none;
  padding: 0 12px;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

:is(body.app-bg, body.site) .auth-wrap--account .form-control::placeholder{
  color: rgba(242,243,255,.45);
}

:is(body.app-bg, body.site) .auth-wrap--account .form-control:focus{
  border-color: rgba(120,130,255,.55);
  box-shadow: 0 0 0 4px rgba(120,130,255,.14);
  background: rgba(0,0,0,.22);
}

:is(body.app-bg, body.site) .auth-wrap--account .btn,
:is(body.app-bg, body.site) .auth-wrap--account .btn-default{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 42px;
  padding: 0 14px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: var(--text);
  cursor: pointer;
  transition: transform .12s ease, background .12s ease, border-color .12s ease, filter .12s ease;
}

:is(body.app-bg, body.site) .auth-wrap--account .btn:hover,
:is(body.app-bg, body.site) .auth-wrap--account .btn-default:hover{
  background: rgba(255,255,255,.10);
  border-color: rgba(255,255,255,.18);
  filter: brightness(1.05);
}

:is(body.app-bg, body.site) .auth-wrap--account .btn:active,
:is(body.app-bg, body.site) .auth-wrap--account .btn-default:active{
  transform: translateY(1px);
}

:is(body.app-bg, body.site) .auth-wrap--account form button[type="submit"],
:is(body.app-bg, body.site) .auth-wrap--account form .btn[type="submit"]{
  width: 100%;
  margin-top: 10px;
}

:is(body.app-bg, body.site) .auth-wrap--account a{
  color: rgba(180,190,255,.9);
  text-decoration: none;
}

:is(body.app-bg, body.site) .auth-wrap--account a:hover{
  text-decoration: underline;
}

:is(body.app-bg, body.site) .auth-wrap--account .auth-foot{
  margin-top: 60px;
  text-align: center;
}

:is(body.app-bg, body.site) .auth-wrap--account .auth-foot a{
  position: relative;
  display: block;
  margin-top: 28px;
}

:is(body.app-bg, body.site) .auth-wrap--account .deactivateAccLink{
  color: rgba(242,243,255,.62);
  position: relative;
  display: block;
  margin-top: 40px;
  text-align: center;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-shell{
  margin-bottom: 22px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-grid{
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr) minmax(0, 1fr);
  gap: 18px;
  align-items: stretch;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-panel{
  display: flex;
  flex-direction: column;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(900px 320px at 0% 0%, rgba(120,130,255,.10), transparent 60%),
    linear-gradient(to bottom, rgba(20,20,34,.56), rgba(20,20,34,.28));
  box-shadow: 0 18px 60px rgba(0,0,0,.30);
  padding: 22px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-panel--profile{
  background:
    radial-gradient(900px 360px at 10% 0%, rgba(120,130,255,.16), transparent 60%),
    radial-gradient(700px 300px at 100% 100%, rgba(255,120,40,.08), transparent 55%),
    linear-gradient(to bottom, rgba(20,20,34,.62), rgba(20,20,34,.30));
}

:is(body.app-bg, body.site) .auth-wrap--account .account-panel--subscription{
  border-color: rgba(255,255,255,.13);
  background:
    radial-gradient(760px 300px at 8% 0%, rgba(120,130,255,.18), transparent 58%),
    radial-gradient(620px 260px at 100% 20%, rgba(72,214,144,.10), transparent 55%),
    linear-gradient(to bottom, rgba(24,24,40,.72), rgba(20,20,34,.34));
  box-shadow: 0 24px 80px rgba(0,0,0,.38);
}

:is(body.app-bg, body.site) .auth-wrap--account .account-panel__eyebrow{
  margin-bottom: 12px;
  color: rgba(242,243,255,.52);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-panel h2,
:is(body.app-bg, body.site) .auth-wrap--account .account-panel h3{
  margin: 0;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-panel h2{
  font-size: clamp(23px, 2.4vw, 30px);
  line-height: 1.05;
  letter-spacing: -0.03em;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-panel h3{
  font-size: 21px;
  line-height: 1.1;
  letter-spacing: -0.02em;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-panel p{
  margin: 12px 0 0;
  color: rgba(242,243,255,.70);
  line-height: 1.5;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-email{
  word-break: break-word;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-stat-row{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 22px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-stat-row--single{
  grid-template-columns: minmax(0, 1fr);
}

:is(body.app-bg, body.site) .auth-wrap--account .account-stat{
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.04);
  padding: 14px 16px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-stat__label{
  display: block;
  margin-bottom: 6px;
  color: rgba(242,243,255,.50);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-status{
  width: fit-content;
  margin-bottom: 14px;
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .02em;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-status--success{
  background: rgba(72, 214, 144, .14);
  color: rgba(175, 255, 214, .95);
  border: 1px solid rgba(72, 214, 144, .22);
}

:is(body.app-bg, body.site) .auth-wrap--account .account-status--danger{
  background: rgba(255, 120, 120, .12);
  color: rgba(255, 205, 205, .96);
  border: 1px solid rgba(255, 120, 120, .22);
}

:is(body.app-bg, body.site) .auth-wrap--account .account-status--muted{
  background: rgba(255,255,255,.06);
  color: rgba(242,243,255,.78);
  border: 1px solid rgba(255,255,255,.10);
}

:is(body.app-bg, body.site) .auth-wrap--account .account-meta-line{
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 0;
  border-top: 1px solid rgba(255,255,255,.08);
  color: rgba(242,243,255,.66);
  font-size: 13px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-meta-list{
  margin-top: 18px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-meta-line strong{
  color: var(--text);
  font-weight: 700;
  text-align: right;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-actions{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: auto;
  padding-top: 20px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-actions form{
  margin: 0;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-actions .account-billing-manage-button{
  font-size: inherit;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-actions .btn[disabled],
:is(body.app-bg, body.site) .auth-wrap--account .account-actions .btn-default[disabled]{
  cursor: default;
  opacity: .72;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-panel__note{
  margin: 12px 0 0;
  color: rgba(242,243,255,.60);
  font-size: 13px;
  line-height: 1.5;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-details{
  margin-top: 28px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-details__head{
  margin-bottom: 18px;
  text-align: left;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-details__head h2{
  margin: 0;
  font-size: clamp(24px, 3vw, 32px);
  line-height: 1.02;
  letter-spacing: -0.03em;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-details__head p{
  margin: 10px 0 0;
  color: rgba(242,243,255,.66);
}

:is(body.app-bg, body.site) .auth-wrap--account .account-locations{
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(900px 320px at 0% 0%, rgba(120,130,255,.10), transparent 60%),
    linear-gradient(to bottom, rgba(20,20,34,.56), rgba(20,20,34,.28));
  box-shadow: 0 18px 60px rgba(0,0,0,.30);
  padding: 22px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-locations__head{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-count{
  flex: 0 0 auto;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.06);
  color: rgba(242,243,255,.82);
  font-size: 12px;
  font-weight: 800;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-message{
  margin: 0 0 16px;
  padding: 9px 12px;
  border-radius: 12px;
  background: rgba(72, 214, 144, .10);
  color: rgba(188, 255, 223, .95);
  font-size: 13px;
  line-height: 1.45;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-message--muted{
  background: rgba(255,255,255,.05);
  color: rgba(242,243,255,.70);
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-list{
  display: grid;
  gap: 12px;
  margin-bottom: 16px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-row,
:is(body.app-bg, body.site) .auth-wrap--account .account-location-add,
:is(body.app-bg, body.site) .auth-wrap--account .account-location-empty{
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.04);
  padding: 16px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-row{
  display: grid;
  gap: 10px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-add h3{
  margin: 0 0 14px;
  font-size: 16px;
  line-height: 1.15;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-summary{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-summary h3{
  margin: 0;
  font-size: 16px;
  line-height: 1.15;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-summary p{
  margin: 7px 0 0;
  color: rgba(242,243,255,.66);
  font-size: 13px;
  line-height: 1.45;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-summary__actions{
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  margin-left: auto;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-summary__actions form{
  margin: 0;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
  flex: 0 0 auto;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-edit-panel{
  margin-top: 4px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.08);
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-picker{
  display: grid;
  gap: 10px;
  align-items: start;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-fields{
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
  gap: 12px;
  align-items: start;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-map{
  position: relative;
  min-height: 230px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(420px 180px at 20% 0%, rgba(120,130,255,.12), transparent 65%),
    rgba(0,0,0,.18);
  overflow: hidden;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-map span{
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 18px;
  text-align: center;
  color: rgba(242,243,255,.58);
  font-size: 13px;
  line-height: 1.45;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-help{
  min-height: 18px;
  margin: 2px 0 0;
  color: rgba(242,243,255,.50);
  font-size: 12px;
  line-height: 1.4;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-actions{
  display: flex;
  justify-content: flex-end;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-actions .btn,
:is(body.app-bg, body.site) .auth-wrap--account .account-location-actions .btn-default{
  width: auto;
  min-width: 150px;
  margin-top: 0;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-summary__actions .account-location-iconbtn{
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
  flex: 0 0 32px;
  box-sizing: border-box;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.06);
  color: rgba(242,243,255,.88);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 7px;
  margin: 0;
  text-decoration: none;
  transition: transform .12s ease, background .12s ease, border-color .12s ease, filter .12s ease;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-iconbtn .account-location-iconbtn__icon{
  display: block;
  width: 15px;
  height: 15px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-iconbtn:not(.is-open) .account-location-iconbtn__icon--close{
  display: none;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-iconbtn.is-open .account-location-iconbtn__icon--edit{
  display: none;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-iconbtn.is-open .account-location-iconbtn__icon--close{
  display: block;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-summary__actions .account-location-iconbtn:hover{
  transform: translateY(-1px);
  background: rgba(255,255,255,.10);
  border-color: rgba(255,255,255,.16);
  color: rgba(242,243,255,.96);
  filter: brightness(1.02);
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-summary__actions .account-location-iconbtn.is-open{
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.18);
  color: rgba(242,243,255,.98);
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-summary__actions .account-location-remove:hover{
  border-color: rgba(255,145,145,.24);
  background: rgba(255,95,95,.10);
  color: rgba(255,220,220,.96);
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-summary__actions .account-location-iconbtn:focus-visible{
  outline: 2px solid rgba(242,243,255,.72);
  outline-offset: 3px;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-empty{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  color: rgba(242,243,255,.68);
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-empty p{
  margin: 0;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-limit-note{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 14px 0 6px 6px;
  padding: 0;
  color: rgba(142, 171, 205, .72);
  font-size: 13px;
  line-height: 1.4;
  font-weight: 500;
}

:is(body.app-bg, body.site) .auth-wrap--account .account-location-limit-note__icon{
  width: 15px;
  height: 15px;
  border: 1px solid currentColor;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 15px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
}

@media (max-width: 900px) {
  :is(body.app-bg, body.site) .auth-wrap--account .account-grid{
    grid-template-columns: 1fr;
  }

  :is(body.app-bg, body.site) .auth-wrap--account .row{
    grid-template-columns: 1fr;
  }

  :is(body.app-bg, body.site) .auth-wrap--account .account-locations__head,
  :is(body.app-bg, body.site) .auth-wrap--account .account-location-empty{
    flex-direction: column;
    align-items: stretch;
  }

  :is(body.app-bg, body.site) .auth-wrap--account .account-location-count{
    width: fit-content;
  }

  :is(body.app-bg, body.site) .auth-wrap--account .account-location-summary{
    flex-direction: column;
  }

  :is(body.app-bg, body.site) .auth-wrap--account .account-location-summary__actions{
    width: auto;
    justify-content: flex-start;
    margin-left: 0;
  }

  :is(body.app-bg, body.site) .auth-wrap--account .account-location-fields{
    grid-template-columns: 1fr;
  }

  :is(body.app-bg, body.site) .auth-wrap--account .account-location-map{
    min-height: 240px;
  }

  :is(body.app-bg, body.site) .auth-wrap--account .account-location-actions{
    justify-content: stretch;
  }

  :is(body.app-bg, body.site) .auth-wrap--account .account-location-actions .btn,
  :is(body.app-bg, body.site) .auth-wrap--account .account-location-actions .btn-default{
    width: 100%;
  }
}

/* Ако имаш стари страници, които още ползват .row/.col-md-6, ги “събираме” в една колона */
.site .row{
  display: block;       /* махаме grid 2 колони */
  padding: 34px 0 70px;
  width: min(480px, calc(100% - 40px));
  margin: 0 auto;
}

.site .col-md-6{
  width: auto !important;
  float: none !important;
  margin: 0 0 14px;     /* ако случайно има 2 колони, да не се лепят */
}
.site .col-md-6:last-child{ margin-bottom: 0; }

/* =========================
   UPGRADE PAGE (PLEIRAUM)
   ========================= */


/* =========================
   Page container
   ========================= */
.site .upgrade-page{
  width: 100%;
}

.site .upgrade-wrap{
  width: min(980px, calc(100% - 40px));
  margin: 0 auto;
  padding: 58px 0 80px;
  text-align: center;
  display: grid;
  gap: 30px; /* replaces <br> */
}

/* Remove any accidental <br> spacing if you keep them */
.site .upgrade-wrap br{ display:none; }

/* =========================
   Header
   ========================= */
.site .upgrade-head{
  margin-bottom: 10px;
}

.site .upgrade-head h1{
  margin: 0 0 10px;
  font-size: 44px;
  letter-spacing: .2px;
  color: var(--text);
}

.site .upgrade-sub{
  margin: 0;
  color: var(--muted);
  font-size: 14px;
}

.site .special-access-banner{
  position: relative;
  overflow: hidden;
  padding: 34px 30px;
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(900px 340px at 18% 0%, rgba(167, 76, 255, .18), transparent 60%),
    radial-gradient(900px 340px at 100% 100%, rgba(255, 34, 140, .12), transparent 60%),
    linear-gradient(to bottom, rgba(20,20,34,.62), rgba(20,20,34,.34));
  box-shadow:
    0 20px 70px rgba(0,0,0,.34),
    inset 0 0 0 1px rgba(255,255,255,.04),
    0 0 48px rgba(255, 34, 140, .08);
  text-align: left;
}

.site .special-access-banner::after{
  content:"";
  position: absolute;
  inset: auto -40px -60px auto;
  width: 220px;
  height: 220px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(255, 34, 140, .22), transparent 68%);
  pointer-events: none;
}

.site .special-access-banner__eyebrow{
  margin-bottom: 14px;
  color: rgba(255, 187, 228, .92);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.site .special-access-banner h2{
  margin: 0;
  font-size: clamp(34px, 5vw, 58px);
  line-height: .95;
  letter-spacing: -0.05em;
  color: rgba(255,255,255,.98);
}

.site .special-access-banner p{
  max-width: 760px;
  margin: 16px 0 0;
  color: rgba(242,243,255,.72);
  font-size: 18px;
  line-height: 1.5;
}

/* =========================
   Base card surface
   ========================= */
.site .trial-banner,
.site .plan-card,
.site .enterprise-banner,
.site .reason-card{
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(1200px 420px at 50% 0%, rgba(120,130,255,.10), transparent 55%),
    linear-gradient(to bottom, rgba(20,20,34,.55), rgba(20,20,34,.26));
  box-shadow: 0 18px 60px rgba(0,0,0,.35);
}

/* Keep blur subtle; too much blur can cause artifacts */
.site .trial-banner,
.site .plan-card,
.site .enterprise-banner,
.site .reason-card{
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

/* =========================
   Buttons (scoped)
   ========================= */
.site .upgrade-page .btn,
.site .upgrade-page .btn-default{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  padding: 0 16px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: var(--text);
  cursor: pointer;
  text-decoration: none;
  transition: transform .12s ease, background .12s ease, border-color .12s ease, filter .12s ease;
}

.site .upgrade-page .btn:hover,
.site .upgrade-page .btn-default:hover{
  background: rgba(255,255,255,.10);
  border-color: rgba(255,255,255,.18);
  filter: brightness(1.05);
}

.site .upgrade-page .btn:active,
.site .upgrade-page .btn-default:active{
  transform: translateY(1px);
}

.site .upgrade-page .btn.is-disabled{
  opacity: .55;
  cursor: not-allowed;
  filter: none;
  transform: none;
}

.site .reasons{
  margin-top: 6px;
}

.site .reasons-grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

@media (max-width: 980px){
  .site .reasons-grid{
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 560px){
  .site .reasons-grid{
    grid-template-columns: 1fr;
  }
}

.site .reason-card{
  padding: 16px 16px 18px;
  text-align: left;
  position: relative;
  overflow: hidden;
}

.site .reason-card h3{
  margin: 0 0 8px;
  font-size: 14px;
  color: rgba(242,243,255,.92);
  position: relative;
  z-index: 1;
}

.site .reason-card p{
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: rgba(242,243,255,.60);
  position: relative;
  z-index: 1;
  padding-right: 54px;
}

.site .reason-icon{
  position: absolute;
  right: 14px;
  bottom: 14px;
  width: 38px;
  height: 38px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: rgba(242,243,255,.88);
  font-size: 14px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 14px 40px rgba(0,0,0,.45);
}

/* =========================
   Trial banner
   ========================= */
.site .trial-banner{
  padding: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  text-align: left;
  margin-top: 6px;
}

.site .trial-title{
  margin: 0 0 6px;
  font-size: 18px;
  color: var(--text);
}

.site .trial-sub{
  margin: 0;
  font-size: 13px;
  color: var(--muted);
}

.site .trial-right .btn,
.site .trial-right .btn-default{
  min-width: 220px;
}

.site .trial-right .btn:not(.is-disabled),
.site .trial-right .btn-default:not(.is-disabled){
  background: linear-gradient(135deg, rgba(167, 76, 255, .98), rgba(255, 34, 140, .98));
  border-color: rgba(255, 34, 140, .34);
  color: rgba(255,255,255,.98);
  box-shadow:
    0 14px 30px rgba(255, 34, 140, .18),
    0 0 28px rgba(167, 76, 255, .10);
}

.site .trial-right .btn:not(.is-disabled):hover,
.site .trial-right .btn-default:not(.is-disabled):hover{
  background: linear-gradient(135deg, rgba(176, 90, 255, 1), rgba(255, 54, 153, 1));
  border-color: rgba(255, 34, 140, .44);
  filter: none;
}

.site .trial-right .btn.is-disabled,
.site .trial-right .btn-default.is-disabled,
.site .trial-right .btn[disabled],
.site .trial-right .btn-default[disabled]{
  background: linear-gradient(135deg, rgba(84, 24, 40, .92), rgba(52, 15, 25, .96));
  border-color: rgba(158, 57, 85, .28);
  color: rgba(255, 214, 224, .72);
  opacity: 1;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
}

/* =========================
   Plans (3)
   ========================= */
.site .plans{
  margin-top: 14px;
}

/* on desktop, push plans slightly down so badge doesn't feel cramped */
@media (min-width: 981px){
  .site .plans{
    margin-top: 18px;
  }
}

.site .plans-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  align-items: stretch;
}

.site .pricing-switch{
  width: fit-content;
  max-width: 100%;
  margin: 0 auto 22px;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(140px 60px at 78% 50%, rgba(255, 34, 140, .10), transparent 65%),
    rgba(255,255,255,.04);
  display: inline-flex;
  align-items: center;
  gap: 10px;
  box-shadow: 0 14px 40px rgba(0,0,0,.22);
}

.site .pricing-switch__label{
  color: rgba(242,243,255,.54);
  font-size: 13px;
  font-weight: 700;
  transition: color .16s ease;
}

.site .pricing-switch__label.is-active{
  color: rgba(242,243,255,.96);
}

.site .pricing-switch__toggle{
  position: relative;
  width: 54px;
  height: 30px;
  border: 0;
  border-radius: 999px;
  padding: 0;
  background: rgba(255,255,255,.10);
  cursor: pointer;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}

.site .pricing-switch__knob{
  position: absolute;
  top: 3px;
  left: 3px;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: rgba(242,243,255,.96);
  box-shadow: 0 6px 18px rgba(0,0,0,.28);
  transition: transform .16s ease;
}

.site .pricing-switch .pricing-switch__knob{
  transform: translateX(24px);
}

.site .pricing-switch.is-monthly .pricing-switch__knob{
  transform: translateX(0);
}

.site .pricing-switch__badge{
  min-height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: linear-gradient(135deg, rgba(167, 76, 255, .95), rgba(255, 34, 140, .95));
  color: rgba(255,255,255,.98);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .01em;
  box-shadow: 0 10px 24px rgba(255, 34, 140, .24);
}

@media (max-width: 980px){
  .site .plans-grid{
    grid-template-columns: 1fr;
  }
}

.site .plan-card{
  position: relative;
  padding: 28px 22px 20px;
  text-align: center;
  overflow: visible; /* IMPORTANT so badge is not clipped */
}

/* subtle inner border (keeps it crisp, no weird gradient blocks) */
.site .plan-card::after{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: 18px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.06);
  pointer-events:none;
  opacity: 1;
}

/* center stack */
.site .plan-priceCenter{
  padding: 10px 8px 16px;
}

.site .price-topline{
  min-height: 28px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}

.site .price-strike{
  color: rgba(242,243,255,.40);
  font-size: 22px;
  font-weight: 700;
  text-decoration: line-through;
  text-decoration-thickness: 2px;
  text-decoration-color: rgba(255, 34, 140, .96);
  text-shadow: 0 0 16px rgba(255, 34, 140, .18);
}

.site .price-pill{
  min-height: 24px;
  padding: 0 10px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: linear-gradient(135deg, rgba(167, 76, 255, .18), rgba(255, 34, 140, .22));
  color: rgba(255, 214, 239, .98);
  border: 1px solid rgba(255, 34, 140, .18);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .02em;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}

.site .price-main{
  font-size: 58px;
  line-height: 1;
  font-weight: 850;
  letter-spacing: -0.9px;
  color: rgba(242,243,255,.98);
  transition: opacity .18s ease;
}

.site .price-line{
  display: inline-flex;
  align-items: flex-end;
  justify-content: center;
  gap: 4px;
}

.site .price-unit{
  margin-bottom: 6px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: .01em;
  color: rgba(242,243,255,.62);
}

.site .price-sub{
  margin-top: 10px;
  font-size: 13px;
  color: rgba(242,243,255,.55);
}

.site .price-sub [data-price-billing]{
  display: block;
  font-size: 12px;
  color: rgba(242,243,255,.44);
}

.site .plan-nameUnder{
  margin-top: 10px;
  font-size: 14px;
  font-weight: 650;
  letter-spacing: .15px;
  color: rgba(242,243,255,.86);
}

.site .plan-note{
  margin-top: 14px;
  color: rgba(242,243,255,.58);
  font-size: 12px;
}

.site .price-main.is-counting{
  opacity: .86;
}

/* CTA */
.site .plan-cta{
  margin-top: 18px;
}

.site .plan-cta form{
  width: 100%;
  margin: 0;
}

.site .plan-cta .btn,
.site .plan-cta .btn-default{
  width: 100%;
  height: 46px;
  border-radius: 14px;
  background: rgba(255,255,255,.07);
}

/* Popular highlight */
.site .plan-card.is-popular{
  border-color: rgba(255, 34, 140, .28);
  box-shadow:
    0 26px 96px rgba(0,0,0,.55),
    0 0 0 1px rgba(167, 76, 255, .08) inset,
    0 0 44px rgba(255, 34, 140, .10);
  transform: translateY(-2px);
}

.site .plan-card.is-popular .plan-cta .btn,
.site .plan-card.is-popular .plan-cta .btn-default{
  background: linear-gradient(135deg, rgba(167, 76, 255, .20), rgba(255, 34, 140, .18));
  border-color: rgba(255, 34, 140, .24);
}

.site .plan-card.is-popular .plan-cta .btn:hover,
.site .plan-card.is-popular .plan-cta .btn-default:hover{
  background: linear-gradient(135deg, rgba(167, 76, 255, .28), rgba(255, 34, 140, .24));
  border-color: rgba(255, 34, 140, .34);
}

/* Most popular badge (always visible) */
.site .plan-card.is-popular .plan-badge{
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 20;

  padding: 7px 12px;
  border-radius: 999px;
  font-size: 11px;
  line-height: 1;
  letter-spacing: .2px;

  color: rgba(242,243,255,.96);
  border: 1px solid rgba(255, 34, 140, .34);
  background: linear-gradient(135deg, rgba(167, 76, 255, .98), rgba(255, 34, 140, .98));
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow:
    0 12px 30px rgba(0,0,0,.45),
    0 0 28px rgba(255, 34, 140, .16);
}

/* If any parent has overflow hidden, this helps badge breathe */
.site .plans{ overflow: visible; }

/* =========================
   Enterprise banner
   ========================= */
.site .enterprise-banner{
  padding: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  text-align: left;
  margin-top: 18px;
}

.site .enterprise-title{
  margin: 0 0 6px;
  font-size: 18px;
  color: rgba(242,243,255,.95);
}

.site .enterprise-sub{
  margin: 0 0 12px;
  font-size: 13px;
  color: rgba(242,243,255,.60);
  max-width: 560px;
}

.site .enterprise-pills{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.site .enterprise-pills .pill{
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.05);
  color: rgba(242,243,255,.75);
  font-size: 12px;
  line-height: 1;
}

.site .enterprise-right .btn,
.site .enterprise-right .btn-default{
  min-width: 220px;
}

@media (max-width: 800px){
  .site .pricing-switch{
    width: 100%;
    justify-content: center;
    flex-wrap: wrap;
    border-radius: 20px;
  }

  .site .trial-banner,
  .site .enterprise-banner{
    flex-direction: column;
    align-items: stretch;
    text-align: center;
  }

  .site .special-access-banner{
    padding: 28px 22px;
    text-align: center;
  }

  .site .special-access-banner p{
    font-size: 16px;
    max-width: 100%;
  }

  .site .trial-right .btn,
  .site .trial-right .btn-default,
  .site .enterprise-right .btn,
  .site .enterprise-right .btn-default{
    width: 100%;
    min-width: 0;
  }

  .site .enterprise-sub{
    max-width: 100%;
  }

  .site .enterprise-pills{
    justify-content: center;
  }
}

/* =========================
   Mobile tweaks
   ========================= */
@media (max-width: 560px){
  .site .upgrade-wrap{
    width: min(980px, calc(100% - 26px));
    padding-top: 76px;
    gap: 22px;
  }
  
  .site .plans{
    margin-top: 10px;
  }
  .site .enterprise-banner{
    margin-top: 12px;
  }

  .site .upgrade-head h1{
    font-size: 36px;
  }

  .site .price-main{
    font-size: 50px;
  }

  .site .price-strike{
    font-size: 20px;
  }

  .site .price-unit{
    margin-bottom: 5px;
    font-size: 15px;
  }
}

/* =========================
   Checkout Pages
   ========================= */
.site .checkout-page{
  width: min(1080px, calc(100% - 40px));
  padding: 84px 0 92px;
}

.site .checkout-page .marketing-page__head{
  margin-bottom: 24px;
}

.site .checkout-page .marketing-page__head h1{
  margin: 14px 0 12px;
  font-size: clamp(36px, 5.2vw, 64px);
  line-height: .98;
  letter-spacing: -.045em;
  max-width: 14ch;
}

.site .checkout-page .marketing-page__head p{
  font-size: 17px;
  max-width: 720px;
  color: rgba(242,243,255,.74);
}

.site .checkout-grid{
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
  gap: 20px;
}

.site .checkout-summary,
.site .checkout-panel,
.site .checkout-result-card{
  padding: 28px 26px;
  border-radius: 26px;
  border: 1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(circle at top right, rgba(120,130,255,.10), transparent 40%),
    linear-gradient(180deg, rgba(255,255,255,.085), rgba(255,255,255,.028));
  box-shadow: 0 26px 66px rgba(0,0,0,.26);
}

.site .checkout-summary__eyebrow,
.site .checkout-panel__eyebrow{
  margin-bottom: 12px;
  color: rgba(242,243,255,.54);
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-weight: 700;
}

.site .checkout-summary h2,
.site .checkout-panel h3{
  margin: 0;
  font-size: clamp(26px, 3.5vw, 36px);
  line-height: 1.04;
  letter-spacing: -.04em;
}

.site .checkout-panel h3{
  font-size: clamp(24px, 3vw, 30px);
}

.site .checkout-billing-toggle{
  margin-top: 18px;
  display: inline-flex;
  gap: 8px;
  padding: 6px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
}

.site .checkout-billing-pill{
  min-height: 36px;
  padding: 0 16px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  color: rgba(242,243,255,.74);
}

.site .checkout-billing-pill:hover{
  text-decoration: none;
  color: #fff;
}

.site .checkout-billing-pill.is-active{
  background: rgba(255,255,255,.22);
  color: #fff;
  box-shadow: 0 8px 18px rgba(0,0,0,.18);
}

.site .checkout-price-main{
  margin-top: 14px;
  font-size: clamp(38px, 5.2vw, 56px);
  line-height: .95;
  letter-spacing: -.05em;
  font-weight: 800;
}

.site .checkout-price-main span{
  margin-left: 8px;
  font-size: 18px;
  color: rgba(242,243,255,.62);
  letter-spacing: 0;
}

.site .checkout-price-sub,
.site .checkout-price-note,
.site .checkout-panel__copy,
.site .checkout-panel__fineprint{
  margin-top: 12px;
  color: rgba(242,243,255,.68);
  line-height: 1.6;
}

.site .checkout-price-note{
  color: rgba(179,241,208,.88);
}

.site .checkout-features{
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 9px;
}

.site .checkout-features li{
  position: relative;
  padding-left: 18px;
  color: rgba(242,243,255,.78);
}

.site .checkout-features li::before{
  content: "";
  position: absolute;
  left: 0;
  top: .58em;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: rgba(158, 255, 211, .9);
  box-shadow: 0 0 0 5px rgba(158,255,211,.14);
}

.site .checkout-launch{
  width: 100%;
  min-height: 52px;
  margin-top: 18px;
  font-size: 15px;
  font-weight: 700;
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.26), rgba(255,255,255,.10)),
    rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
}

.site .checkout-form{
  margin-top: 14px;
}

.site .checkout-form .form-group{
  margin-bottom: 11px;
}

.site .checkout-form label{
  color: rgba(242,243,255,.62);
  font-size: 12px;
  margin-bottom: 7px;
}

.site .checkout-form .form-control{
  height: 46px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(7,10,17,.56);
}

.site .checkout-form .form-control:focus{
  border-color: rgba(126,145,255,.62);
  box-shadow: 0 0 0 4px rgba(126,145,255,.16);
  background: rgba(7,10,17,.72);
}

.site .checkout-form-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.site .checkout-form-grid--card{
  margin-top: 2px;
}

.site .checkout-agree{
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 10px;
  color: rgba(242,243,255,.72);
  line-height: 1.45;
  font-size: 13px;
}

.site .checkout-agree input{
  margin-top: 2px;
}

.site .checkout-warning{
  margin-top: 14px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(255, 157, 157, .36);
  background: rgba(255, 95, 95, .08);
  color: rgba(255,220,220,.95);
  line-height: 1.5;
}

.site .checkout-warning form{
  margin: 12px 0 0;
}

.site .checkout-warning .btn,
.site .checkout-warning .btn-default{
  width: auto;
  min-width: 160px;
}

.site .checkout-result-page{
  width: 100%;
  max-width: 500px;
  padding: 96px 20px 118px;
  margin-inline: auto;
}

.site .checkout-result-card{
  display: grid;
  gap: 18px;
  justify-items: center;
  text-align: center;
  padding: 38px;
}

.site .checkout-result-card h1{
  margin: 0;
  font-size: clamp(30px, 4vw, 38px);
  line-height: 1.08;
  letter-spacing: 0;
}

.site .checkout-result-card p{
  margin: 0;
  max-width: 36ch;
  color: rgba(242,243,255,.72);
  line-height: 1.65;
}

.site .checkout-result-card .landing-kicker{
  justify-self: center;
}

.site .checkout-result-note{
  font-size: 13px;
  color: rgba(242,243,255,.52);
}

.site .checkout-result-badge{
  justify-self: start;
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(108,224,170,.34);
  background: rgba(108,224,170,.14);
  color: rgba(188,255,223,.96);
  font-size: 13px;
  letter-spacing: .04em;
  text-transform: uppercase;
  font-weight: 700;
}

.site .checkout-result-meta{
  width: 100%;
  display: grid;
  justify-items: center;
  align-items: center;
  gap: 5px;
  border-top: 1px solid rgba(255,255,255,.08);
  padding-top: 16px;
  color: rgba(242,243,255,.64);
  font-size: 13px;
}

.site .checkout-result-meta strong{
  color: rgba(242,243,255,.92);
  font-size: 16px;
  font-weight: 700;
}

.site .checkout-result-actions{
  width: 100%;
  display: flex;
  justify-content: center;
  padding-top: 8px;
}

.site .checkout-result-actions .btn,
.site .checkout-result-actions .btn-default{
  min-width: 180px;
  min-height: 48px;
  justify-content: center;
}

.site .checkout-result-card--failed{
  border-color: rgba(255,145,145,.3);
  background:
    radial-gradient(circle at top right, rgba(255,120,120,.12), transparent 40%),
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.025));
}

.site .plan-cta .btn.is-disabled,
.site .plan-cta .btn-default.is-disabled{
  pointer-events: none;
  opacity: .55;
  border-color: rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: rgba(242,243,255,.72);
}

@media (max-width: 960px){
  .site .checkout-grid{
    grid-template-columns: 1fr;
  }

  .site .checkout-page,
  .site .checkout-result-page{
    width: min(100%, calc(100% - 28px));
  }

  .site .checkout-summary,
  .site .checkout-panel,
  .site .checkout-result-card{
    padding: 22px;
    border-radius: 24px;
  }

  .site .checkout-page{
    padding-top: 68px;
  }

  .site .checkout-page .marketing-page__head h1{
    font-size: clamp(32px, 9vw, 44px);
    max-width: 18ch;
  }

  .site .checkout-result-actions .btn,
  .site .checkout-result-actions .btn-default{
    width: 100%;
  }

  .site .checkout-form-grid{
    grid-template-columns: 1fr;
  }
}

/* Playable homepage catalog */
body.site .home-catalog { padding-top: clamp(96px, 10vw, 150px); }
body.site .home-catalog__heading { margin-bottom: clamp(42px, 6vw, 72px); }
body.site .home-catalog__heading h2 { line-height: 1.01; }
body.site .home-catalog__heading p { margin-top: 22px; line-height: 1.7; }
body.site .home-catalog__viewport { width: 100%; }
body.site .home-catalog__rail { grid-template-columns: repeat(5, minmax(0,1fr)); gap: 22px; }
body.site .home-catalog__item[hidden] { display: none !important; }
body.site .home-catalog__item { min-width: 0; }
body.site .home-catalog__artwork { position: relative; border-radius: 18px; box-shadow: 0 22px 55px rgba(0,0,0,.23); }
body.site .home-catalog__artwork::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 50%, rgba(0,0,0,.42)); pointer-events: none; }
body.site .home-catalog__artwork img { transition: transform .45s ease, filter .45s ease; }
body.site .home-catalog__item:hover img { transform: scale(1.035); filter: brightness(.88); }
body.site .home-catalog__item h3 { margin: 16px 0 4px; font-size: 17px; line-height: 1.3; letter-spacing: -.02em; }
body.site .home-catalog__item-label { color: rgba(242,243,255,.44); font-size: 12px; }
body.site .home-catalog__play { position: absolute; right: 14px; bottom: 14px; z-index: 2; display: grid; place-items: center; width: 48px; height: 48px; padding: 0; border: 1px solid rgba(255,255,255,.32); border-radius: 50%; color: #121218; background: rgba(255,255,255,.92); box-shadow: 0 10px 28px rgba(0,0,0,.3); cursor: pointer; transition: transform .2s ease, background .2s ease; }
body.site .home-catalog__play:hover { transform: scale(1.06); background: #fff; }
body.site .home-catalog__play span { width: 0; height: 0; margin-left: 3px; border-top: 7px solid transparent; border-bottom: 7px solid transparent; border-left: 11px solid currentColor; }
body.site .home-catalog__play.is-playing span { width: 11px; height: 14px; margin: 0; border: 0; border-left: 4px solid currentColor; border-right: 4px solid currentColor; }
body.site .home-catalog__controls { display: flex; justify-content: center; align-items: center; gap: 16px; margin-top: 42px; }
body.site .home-catalog__controls > button { width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.14); border-radius: 50%; color: #fff; background: rgba(255,255,255,.04); cursor: pointer; }
body.site .home-catalog__pages { display: flex; align-items: center; gap: 9px; }
body.site .home-catalog__pages button { width: 7px; height: 7px; padding: 0; border: 0; border-radius: 999px; background: rgba(255,255,255,.25); cursor: pointer; transition: width .2s ease, background .2s ease; }
body.site .home-catalog__pages button.is-active { width: 26px; background: rgba(255,255,255,.86); }
body.site .home-catalog__now { display: grid; grid-template-columns: 46px minmax(150px,auto) 1fr 42px; gap: 16px; align-items: center; max-width: 920px; margin: 28px auto 0; padding: 14px 18px; border: 1px solid rgba(255,255,255,.12); border-radius: 18px; background: rgba(255,255,255,.055); }
body.site .home-catalog__now[hidden] { display: none !important; }
body.site .home-catalog__now-toggle { width: 42px; height: 42px; border: 0; border-radius: 50%; font-weight: 800; color: #111; background: #fff; cursor: pointer; }
body.site .home-catalog__now > div:nth-child(2) { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
body.site .home-catalog__now > div:nth-child(2) span { color: rgba(255,255,255,.46); font-size: 11px; }
body.site .home-catalog__now > div:nth-child(2) strong { overflow: hidden; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
body.site .home-catalog__now-progress { height: 3px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.14); }
body.site .home-catalog__now-progress span { display: block; width: 0; height: 100%; background: #fff; }
body.site .home-catalog__now > span { color: rgba(255,255,255,.55); font-size: 12px; text-align: right; }

@media (max-width: 960px) {
  body.site .home-catalog__rail { grid-template-columns: repeat(5, minmax(0,1fr)); gap: 16px; }
}

@media (max-width: 700px) {
  body.site .home-catalog__heading { margin-bottom: 36px; }
  body.site .home-catalog__rail { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
  body.site .home-catalog__item h3 { margin-top: 12px; font-size: 15px; }
  body.site .home-catalog__play { right: 10px; bottom: 10px; width: 42px; height: 42px; }
  body.site .home-catalog__controls { margin-top: 30px; }
  body.site .home-catalog__now { grid-template-columns: 42px 1fr 38px; gap: 12px; }
  body.site .home-catalog__now-progress { grid-column: 1 / -1; grid-row: 2; }
}

/* Homepage reconstruction — approved September 2026 reference */
html:has(.home-v2),body.site:has(.home-v2){height:auto;min-height:100%;}
body.site:has(.home-v2){background:#070b0f;color:#f2f3f7;overflow-x:clip;}
body.site:has(.home-v2)::before{display:none;}
body.site:has(.home-v2) .site-shell{overflow:visible;}
body.site:has(.home-v2) .site-header{position:absolute;top:0;left:0;width:100%;height:86px;padding:24px 0;border:0;background:linear-gradient(180deg,rgba(4,8,11,.74),transparent);backdrop-filter:none;-webkit-backdrop-filter:none;}
body.site:has(.home-v2) .site-header__inner{width:min(1840px,calc(100% - 96px));}
body.site:has(.home-v2) .site-brand__word{font-size:16px;font-weight:800;letter-spacing:.31em;}
body.site:has(.home-v2) .site-nav{gap:42px;}
body.site:has(.home-v2) .site-nav a{font-size:13px;color:rgba(245,246,249,.73);}
body.site:has(.home-v2) .site-header__actions{gap:13px;}
body.site:has(.home-v2) .site-search{display:grid;width:38px;height:38px;place-items:center;color:#fff;text-decoration:none;}
.locale-selector{position:relative;display:inline-flex;z-index:20;}
.locale-selector__trigger{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:72px;height:42px;padding:0 11px;border:1px solid rgba(255,255,255,.16);border-radius:13px;background:rgba(18,21,30,.56);color:rgba(247,248,251,.9);font:500 12px/1 Inter,sans-serif;letter-spacing:.035em;cursor:pointer;transition:background .16s,border-color .16s;}
.locale-selector__trigger:hover,.locale-selector__trigger[aria-expanded="true"]{border-color:rgba(255,255,255,.28);background:rgba(43,46,58,.78);}
.locale-selector__trigger>svg:first-child{width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;}
.locale-selector__chevron{width:11px;height:11px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;opacity:.68;transition:transform .16s;}
.locale-selector__trigger[aria-expanded="true"] .locale-selector__chevron{transform:rotate(180deg);}
.locale-selector__menu{position:absolute;top:calc(100% + 9px);right:0;z-index:50;display:grid;width:194px;max-height:min(440px,calc(100dvh - 90px));box-sizing:border-box;padding:7px;overflow-y:auto;overscroll-behavior:contain;border:1px solid rgba(218,226,248,.16);border-radius:13px;background:linear-gradient(140deg,rgba(26,30,43,.99),rgba(16,17,24,.99) 72%);box-shadow:0 18px 48px rgba(0,0,0,.52),0 2px 10px rgba(0,0,0,.22);scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent;}
.locale-selector__menu[hidden]{display:none!important;}
.locale-selector__option{display:grid;width:100%;min-height:42px;grid-template-columns:minmax(0,1fr) 26px 16px;align-items:center;gap:5px;padding:0 10px;border:0;border-radius:8px;background:transparent;color:rgba(241,243,249,.72);font:500 13px/1.2 Inter,sans-serif;text-align:left;cursor:pointer;}
.locale-selector__option:hover,.locale-selector__option:focus-visible{background:rgba(255,255,255,.07);color:#fff;}
.locale-selector__option.is-active{color:#fff;}
.locale-selector__option-code{color:rgba(237,240,249,.42);font-size:10px;letter-spacing:.06em;}
.locale-selector__option svg{width:14px;height:14px;fill:none;stroke:#d3ad9e;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.site-nav--desktop a{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;}
.site-nav--desktop svg,.site-action--account svg,.site-mobile-menu__utility svg{display:block;width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;}
.site-nav--desktop svg{width:15px;height:15px;opacity:.68;}
.site-action--account{gap:8px;white-space:nowrap;}
.site-action--account svg{opacity:.82;}
.site-header :is(a,button):focus-visible{outline:2px solid rgba(191,204,235,.82);outline-offset:3px;}
body.site:has(.home-v2) .site-header .site-action{min-height:42px!important;padding:0 21px!important;font-size:13px;}
body.site .site-action--light{border-color:#fff;background:#fff;color:#101114;box-shadow:0 8px 30px rgba(0,0,0,.18);}
body.site .site-action--light:hover{color:#101114;background:#f1f1f1;}

.home-v2{--home-max:1840px;background:radial-gradient(circle at 20% 28%,rgba(17,27,35,.28),transparent 28%),#070b0f;font-family:Manrope,Inter,ui-sans-serif,system-ui,sans-serif;}
.home-v2 *{box-sizing:border-box;}
.home-v2 section+section{margin-top:0;}
.home-v2-wrap{width:min(var(--home-max),calc(100% - 96px));margin-inline:auto;}
.home-v2-section{padding:41px 0;}
.home-v2-eyebrow{display:inline-flex;min-height:31px;align-items:center;padding:0 14px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.045);color:rgba(242,243,247,.66);font-size:11px;font-weight:500;letter-spacing:.2em;line-height:1;text-transform:uppercase;}
.home-v2 h1,.home-v2 h2,.home-v2 p{margin-top:0;}
.home-v2-button{display:inline-flex;min-height:52px;align-items:center;justify-content:center;gap:18px;padding:0 27px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(7,11,15,.34);color:#fff;font-size:14px;font-weight:600;text-decoration:none;transition:transform .18s ease,border-color .18s ease,background .18s ease;}
.home-v2-button:hover{color:#fff;text-decoration:none;transform:translateY(-2px);border-color:rgba(255,255,255,.65);}
.home-v2-button--light{border-color:#fff;background:#fff;color:#111318;}
.home-v2-button--light:hover{color:#111318;background:#f3f3f3;}
.home-v2-actions{display:flex;flex-wrap:wrap;gap:17px;}

.home-v2-hero{position:relative;min-height:900px;padding-top:86px;background-image:linear-gradient(90deg,rgba(4,8,11,.98) 0%,rgba(4,8,11,.9) 22%,rgba(4,8,11,.08) 100%),linear-gradient(0deg,#070b0f 0%,transparent 32%),url('../images/home/hero-hospitality.jpg');background-position:center,center,center;background-size:cover;}
.home-v2-hero::after{content:none;display:none;}
.home-v2-hero__stamp{position:absolute;z-index:2;right:5.7%;top:176px;color:#ffd29f;font-size:41px;font-weight:400;line-height:1.02;letter-spacing:-.045em;opacity:.86;pointer-events:none;transform:rotate(-2deg);text-shadow:0 0 24px rgba(255,166,84,.5);}
.home-v2-hero__inner{position:relative;height:849px;}
.home-v2-hero__copy{position:absolute;z-index:2;top:84px;left:0;}
.home-v2-hero h1{max-width:780px;margin:23px 0 25px;font-size:clamp(64px,5.2vw,100px);font-weight:700;line-height:1.04;letter-spacing:-.062em;}
.home-v2-hero__copy>p{margin-bottom:35px;color:rgba(244,245,248,.75);font-size:19px;line-height:1.55;}
.home-v2-benefits{display:flex;align-items:center;gap:34px;margin-top:34px;color:rgba(244,245,248,.59);font-size:13px;}
.home-v2-benefits span{display:flex;align-items:center;gap:10px;white-space:nowrap;}
.home-v2-benefits b{display:grid;width:23px;height:19px;place-items:center;color:rgba(255,255,255,.78);font-size:24px;font-weight:400;}
.home-v2-benefits .benefit-trial{width:20px;height:19px;font-size:16px;}
.home-v2-benefits .benefit-card{width:20px;height:15px;border:1px solid rgba(255,255,255,.65);border-radius:1px;}
.home-v2-benefits .benefit-card::before{content:"";display:block;width:100%;border-top:1px solid rgba(255,255,255,.65);}
.home-v2-benefits .benefit-play{width:0;height:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:12px solid rgba(255,255,255,.7);}

.home-v2-player{position:absolute;z-index:3;right:9%;top:380px;width:min(720px,47vw);height:355px;padding:38px 41px;border:1px solid rgba(255,255,255,.25);border-radius:28px;background:linear-gradient(115deg,rgba(20,22,24,.86),rgba(38,23,18,.75));box-shadow:0 34px 80px rgba(0,0,0,.38);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);display:grid;grid-template-columns:180px 1fr;grid-template-rows:auto 65px 55px;column-gap:35px;}
.home-v2-player__cover{grid-row:1/3;width:180px;height:180px;object-fit:cover;border-radius:14px;box-shadow:0 20px 45px rgba(0,0,0,.3);}
.home-v2-player__meta{display:flex;flex-direction:column;align-self:start;gap:7px;}
.home-v2-player__meta span{color:rgba(255,255,255,.55);font-size:13px;}
.home-v2-player__meta strong{font-size:24px;line-height:1.1;letter-spacing:-.025em;}
.home-v2-player__meta small{color:rgba(255,255,255,.78);font-size:13px;}
.home-v2-wave{display:flex;height:44px;align-items:center;gap:3px;overflow:hidden;opacity:.58;mask-image:linear-gradient(90deg,#000 0%,#000 72%,transparent 100%);}
.home-v2-wave i{flex:0 0 2px;height:var(--h,16px);background:#fff;border-radius:2px;}
.home-v2-wave i:nth-child(3n){height:28px}.home-v2-wave i:nth-child(4n){height:10px}.home-v2-wave i:nth-child(5n){height:36px}.home-v2-wave i:nth-child(7n){height:22px}
.home-v2-player__controls{grid-column:1;display:flex;align-items:center;justify-content:space-around;align-self:end;}
.home-v2-player__controls button{width:38px;height:38px;padding:0;border:0;background:transparent;color:#fff;cursor:default;font-size:16px;pointer-events:none;}
.home-v2-player__controls .home-v2-player__toggle{width:58px;height:58px;border:1px solid rgba(255,255,255,.68);border-radius:50%;}
.home-v2-player__toggle span,.home-v2-playlist button span{display:block;width:0;height:0;margin:auto auto auto calc(50% - 4px);border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:11px solid currentColor;}
.home-v2-player__toggle.is-playing span,.home-v2-playlist button.is-playing span{width:11px;height:15px;margin:auto;border:0;border-left:4px solid currentColor;border-right:4px solid currentColor;}
.home-v2-player__time{grid-column:2;align-self:end;justify-self:end;color:rgba(255,255,255,.55);font-size:13px;}

.home-v2-section-head{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:60px;margin-bottom:38px;}
.home-v2-section-head h2,.home-v2-license h2,.home-v2-curated h2,.home-v2-final h2{margin:0;font-size:clamp(42px,3.8vw,70px);font-weight:650;line-height:1.02;letter-spacing:-.055em;}
.home-v2-section-intro{padding-bottom:4px;}
.home-v2-section-intro p,.home-v2-license p,.home-v2-curated__copy p{margin-bottom:15px;color:rgba(244,245,248,.62);font-size:16px;line-height:1.58;}
.home-v2-section-intro a{color:#f4f5f8;font-size:14px;text-decoration:none;}
.home-v2-category-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:26px;}
.home-v2-category{position:relative;min-height:370px;overflow:hidden;border:1px solid rgba(255,255,255,.19);border-radius:17px;background-image:var(--category-image);background-position:center;background-size:cover;color:#fff;text-decoration:none;transition:transform .35s ease,border-color .35s ease;}
.home-v2-category:hover{color:#fff;text-decoration:none;transform:translateY(-4px);border-color:rgba(255,255,255,.42);}
.home-v2-category__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,5,7,.12) 15%,rgba(3,4,7,.84) 100%);}
.home-v2-category__content{position:absolute;z-index:1;left:40px;right:25px;bottom:39px;display:flex;flex-direction:column;align-items:flex-start;}
.home-v2-category__icon{width:61px;height:61px;margin-bottom:13px;background:#fff;mask:var(--category-icon) center/contain no-repeat;-webkit-mask:var(--category-icon) center/contain no-repeat;}
.home-v2-category strong{font-size:17px;font-weight:750;line-height:1.2;text-transform:uppercase;}
.home-v2-category small{margin-top:9px;color:rgba(255,255,255,.79);font-size:11px;line-height:1.35;}

.home-v2-license{padding-top:48px;padding-bottom:48px;}
.home-v2-license__grid{display:grid;grid-template-columns:1.08fr .92fr;gap:100px;align-items:center;}
.home-v2-license h2{max-width:800px;}
.home-v2-license>div>div:first-child>p{margin-top:24px;}
.home-v2-facts{border-top:1px solid rgba(255,255,255,.17);}
.home-v2-facts article{display:grid;grid-template-columns:54px 250px 1fr;align-items:center;min-height:106px;border-bottom:1px solid rgba(255,255,255,.17);}
.home-v2-facts strong{font-size:14px;}
.home-v2-facts p{margin:0;color:rgba(255,255,255,.51);font-size:13px;line-height:1.45;}
.fact-icon{position:relative;display:block;width:28px;height:28px;}
.fact-icon--pin{border:2px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);width:23px;height:23px;}.fact-icon--pin::after{content:"";position:absolute;width:5px;height:5px;border:2px solid #fff;border-radius:50%;left:7px;top:7px;}
.fact-icon--screen{width:29px;height:21px;border:2px solid #fff;border-radius:2px;}.fact-icon--screen::before{content:"";position:absolute;left:10px;bottom:-6px;height:5px;border-left:2px solid #fff}.fact-icon--screen::after{content:"";position:absolute;left:5px;right:5px;bottom:-7px;border-top:2px solid #fff}
.fact-icon--qr{background:linear-gradient(90deg,#fff 2px,transparent 2px) 0 0/9px 9px,linear-gradient(#fff 2px,transparent 2px) 0 0/9px 9px;outline:2px solid #fff;outline-offset:-2px;}

.home-v2-curated{padding-top:45px;padding-bottom:45px;}
.home-v2-curated__grid{display:grid;grid-template-columns:38% 62%;gap:34px;align-items:center;}
.home-v2-curated__copy p{margin:20px 0 26px;}
.home-v2-curated__copy .home-v2-button{min-height:49px;}
.home-v2-carousel{position:relative;padding:0 43px;min-width:0;}
.home-v2-carousel__viewport{overflow:hidden;}
.home-v2-carousel__rail{display:flex;gap:20px;transition:transform .4s cubic-bezier(.2,.75,.2,1);}
.home-v2-playlist{flex:0 0 calc((100% - 60px)/4);min-width:0;cursor:pointer;}
.home-v2-playlist__art{position:relative;aspect-ratio:1;overflow:hidden;border-radius:10px;background:#15181e;}
.home-v2-playlist img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease;}.home-v2-playlist:hover img{transform:scale(1.035);}
.home-v2-playlist button{position:absolute;left:13px;bottom:13px;display:grid;width:27px;height:27px;place-items:center;padding:0;border:0;border-radius:50%;background:#fff;color:#111;cursor:pointer;}
.home-v2-playlist button span{border-top-width:5px;border-bottom-width:5px;border-left-width:8px;margin-left:10px;}
.home-v2-playlist h3{margin:12px 0 0;color:rgba(255,255,255,.82);font-size:13px;font-weight:500;line-height:1.3;}
.home-v2-carousel__arrow{position:absolute;top:calc(50% - 28px);z-index:2;width:39px;height:39px;border:1px solid rgba(255,255,255,.21);border-radius:50%;background:rgba(255,255,255,.025);color:#fff;cursor:pointer;}.home-v2-carousel__arrow--prev{left:-8px}.home-v2-carousel__arrow--next{right:-8px}
.home-v2-carousel__dots{display:none;justify-content:center;gap:7px;margin-top:23px}.home-v2-carousel__dots button{width:6px;height:6px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.23)}.home-v2-carousel__dots button.is-active{width:20px;border-radius:5px;background:#fff}

.home-v2-final{padding:55px 0 0;}
.home-v2-final__panel{position:relative;min-height:375px;overflow:hidden;border:1px solid rgb(54 30 13);border-radius:28px;background-image:linear-gradient(90deg,rgba(4,8,11,.42),rgba(4,8,11,.04) 48%,transparent 72%),url('../images/home/cta-boutique-hotel-v3.jpg');background-position:center;background-size:cover;box-shadow:0 30px 80px rgba(0,0,0,.25);}
.home-v2-final__copy{position:absolute;z-index:1;left:47px;top:39px;}.home-v2-final h2{font-size:45px;line-height:1.02;}.home-v2-final__copy>p{margin:18px 0 0;color:rgba(255,255,255,.7);font-size:13px;}.home-v2-final__copy .home-v2-actions{margin-top:25px}.home-v2-final__copy .home-v2-button{min-height:49px;}
.home-v2-final blockquote{position:absolute;z-index:1;left:54.5%;top:88px;margin:0;color:#fff;font-size:15px;font-style:italic;line-height:1.55;}.home-v2-final cite{display:block;margin-top:24px;color:rgba(255,255,255,.62);font-size:12px;font-style:normal;line-height:1.4;}
.home-v2-final__sign{position:absolute;right:5.2%;top:85px;color:#2b1d13;font-size:30px;line-height:1.03;letter-spacing:-.05em;transform:rotate(-1.5deg);}
body.site:has(.home-v2) .site-footer{width:min(1840px,calc(100% - 96px));margin:0 auto;padding:55px 0 42px;border:0;background:transparent;}
body.site:has(.home-v2) .site-footer__inner{width:100%;display:grid;grid-template-columns:1.4fr 2fr 180px;gap:80px;padding:0;}
body.site:has(.home-v2) .site-footer__brand p{margin-top:28px;color:rgba(255,255,255,.58);font-size:13px;line-height:1.5;}
body.site:has(.home-v2) .site-footer__links{display:grid;grid-template-columns:repeat(3,1fr);gap:80px;}
body.site:has(.home-v2) .site-footer__links h3{margin-bottom:13px;color:rgba(255,255,255,.7);font-size:13px;font-weight:500;}
body.site:has(.home-v2) .site-footer__links :is(a,.site-footer__settings){margin-top:7px;color:rgba(255,255,255,.58);font-size:12px;}
body.site:has(.home-v2) .site-footer__bottom{width:auto;align-self:end;padding:0;border:0;color:rgba(255,255,255,.46);font-size:11px;line-height:1.5;text-align:right;}

@media(min-width:981px){body.site:has(.home-v2) .site-footer{position:relative}body.site:has(.home-v2) .site-footer__bottom{position:absolute;right:0;top:55px}}
@media(max-width:1280px){body.site:has(.home-v2) .site-header__inner,.home-v2-wrap,body.site:has(.home-v2) .site-footer{width:min(100% - 56px,1180px)}body.site:has(.home-v2) .site-nav{gap:24px}.home-v2-section{padding:42px 0}.home-v2-hero{min-height:650px}.home-v2-hero__inner{height:564px}.home-v2-hero__copy{top:45px}.home-v2-player{top:300px;right:0;width:500px;height:235px;padding:22px;grid-template-columns:112px 1fr;grid-template-rows:auto 38px 43px;column-gap:22px;border-radius:21px}.home-v2-player__cover{width:112px;height:112px;border-radius:10px}.home-v2-player__meta{gap:4px}.home-v2-player__meta strong{font-size:20px}.home-v2-player__meta span,.home-v2-player__meta small{font-size:11px}.home-v2-wave{height:31px}.home-v2-player__controls .home-v2-player__toggle{width:46px;height:46px}.home-v2-category{min-height:235px}.home-v2-category__content{left:24px;bottom:24px}.home-v2-category__icon{width:43px;height:43px;margin-bottom:10px}.home-v2-license{padding-top:48px;padding-bottom:44px}.home-v2-license__grid{gap:60px}.home-v2-license h2{font-size:45px}.home-v2-facts article{grid-template-columns:45px 190px 1fr;min-height:82px}.home-v2-curated{padding-top:44px;padding-bottom:43px}.home-v2-final{padding-top:42px}.home-v2-final__panel{min-height:238px;border-radius:20px}.home-v2-final__copy{left:30px;top:24px}.home-v2-final h2{margin-top:13px;font-size:31px}.home-v2-final__copy>p{margin-top:11px}.home-v2-final__copy .home-v2-actions{margin-top:15px}.home-v2-final__copy .home-v2-button{min-height:40px;padding:0 18px;font-size:12px}.home-v2-final blockquote{left:54%;top:56px;font-size:12px;line-height:1.45}.home-v2-final cite{margin-top:14px;font-size:10px}.home-v2-final__sign{right:2%;top:58px;font-size:24px}body.site:has(.home-v2) .site-footer{padding-top:40px;padding-bottom:32px}body.site:has(.home-v2) .site-footer__bottom{top:40px}}
@media(max-width:980px){body.site:has(.home-v2) .site-header{position:absolute}.home-v2-hero{min-height:940px;background-position:center,center,63% center}.home-v2-hero__inner{height:854px}.home-v2-hero__copy{top:70px}.home-v2-hero h1{font-size:72px}.home-v2-player{top:500px;right:0;width:620px;max-width:100%}.home-v2-hero__stamp{display:none}.home-v2-section-head,.home-v2-license__grid,.home-v2-curated__grid{grid-template-columns:1fr}.home-v2-category-grid{grid-template-columns:repeat(2,1fr)}.home-v2-category:last-child{grid-column:span 2}.home-v2-license__grid{gap:44px}.home-v2-curated__grid{gap:42px}.home-v2-carousel{padding:0 46px}.home-v2-playlist{flex-basis:calc((100% - 20px)/2)}.home-v2-carousel__dots{display:flex}.home-v2-final__panel{min-height:520px;background-position:62% center}.home-v2-final blockquote{left:48px;top:300px}.home-v2-final__sign{right:7%;}.home-v2-final__copy{left:38px}.home-v2-final h2{font-size:40px}body.site:has(.home-v2) .site-footer__inner{grid-template-columns:1fr 2fr;gap:50px}body.site:has(.home-v2) .site-footer__bottom{grid-column:1/-1;text-align:left}.site-nav--desktop,.site-action--desktop{display:none!important}body.site .site-burger{display:block}}
@media(max-width:620px){body.site:has(.home-v2) .site-header__inner,.home-v2-wrap,body.site:has(.home-v2) .site-footer{width:calc(100% - 32px)}body.site:has(.home-v2) .site-header{height:72px;padding:17px 0}.home-v2-section{padding:42px 0}.home-v2-hero{min-height:830px;padding-top:72px;background-position:center,center,67% center}.home-v2-hero__inner{height:758px}.home-v2-hero__copy{top:54px}.home-v2-hero h1{margin-top:18px;font-size:clamp(47px,14vw,62px);line-height:1.04}.home-v2-hero__copy>p{font-size:15px;line-height:1.6}.home-v2-button{min-height:48px;padding:0 20px}.home-v2-benefits{flex-wrap:wrap;gap:15px 22px;margin-top:25px}.home-v2-player{top:475px;left:0;width:100%;height:245px;padding:20px;grid-template-columns:94px 1fr;grid-template-rows:auto 40px 48px;column-gap:18px;border-radius:21px}.home-v2-player__cover{width:94px;height:94px}.home-v2-player__meta{gap:4px}.home-v2-player__meta strong{font-size:18px}.home-v2-player__meta small{font-size:10px}.home-v2-wave{height:32px}.home-v2-player__controls{grid-column:1/3;justify-content:flex-start;gap:20px}.home-v2-player__time{grid-column:2;grid-row:3}.home-v2-section-head{gap:22px;margin-bottom:28px}.home-v2-section-head h2,.home-v2-license h2,.home-v2-curated h2{font-size:40px}.home-v2-section-intro br,.home-v2-license p br,.home-v2-curated__copy p br{display:none}.home-v2-category-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.home-v2-category{flex:0 0 78vw;min-height:330px;scroll-snap-align:start}.home-v2-category:last-child{grid-column:auto}.home-v2-license{padding-top:58px}.home-v2-facts article{grid-template-columns:43px 1fr;gap:4px 8px;padding:18px 0}.home-v2-facts article p{grid-column:2}.home-v2-carousel{padding:0 38px}.home-v2-playlist{flex-basis:100%}.home-v2-final{padding-top:45px}.home-v2-final__panel{min-height:590px;background-position:67% center}.home-v2-final__copy{left:24px;right:24px;top:28px}.home-v2-final h2{font-size:34px}.home-v2-final blockquote{left:24px;right:24px;top:326px;font-size:13px}.home-v2-final__sign{right:22px;top:462px;font-size:25px}body.site:has(.home-v2) .site-footer{padding-top:46px}body.site:has(.home-v2) .site-footer__inner{grid-template-columns:1fr}body.site:has(.home-v2) .site-footer__links{grid-template-columns:repeat(3,1fr);gap:18px}.home-v2-final__copy .home-v2-actions{gap:10px}}
@media(prefers-reduced-motion:reduce){.home-v2 *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media(max-width:620px){.home-v2-hero{min-height:950px}.home-v2-hero__inner{height:878px}.home-v2-player{top:650px}}

/* Desktop QA refinement: fluid scale, legibility and atmospheric category art */
.home-v2-benefits{color:rgba(244,245,248,.68);}
.home-v2-player__meta span{color:rgba(255,255,255,.66);}
.home-v2-section-intro p,.home-v2-license p,.home-v2-curated__copy p{color:rgba(244,245,248,.71);}
.home-v2-facts p{color:rgba(255,255,255,.65);}
body.site:has(.home-v2) .site-footer__brand p{color:rgba(255,255,255,.68);}
body.site:has(.home-v2) .site-footer__links h3{color:rgba(255,255,255,.78);}
body.site:has(.home-v2) .site-footer__links :is(a,.site-footer__settings){color:rgba(255,255,255,.67);}
body.site:has(.home-v2) .site-footer__bottom{color:rgba(255,255,255,.6);}

@media(min-width:1281px){
  body.site:has(.home-v2) .site-header__inner,.home-v2-wrap,body.site:has(.home-v2) .site-footer{width:min(1840px,calc(100% - 9.2vw));}
  body.site:has(.home-v2) .site-nav a{font-size:clamp(13px,.74vw,15px);}
  .home-v2-section{padding:clamp(30px,2vw,41px) 0;}
  .home-v2-hero{min-height:clamp(650px,45.65vw,935px);}
  .home-v2-hero__inner{height:calc(clamp(650px,45.65vw,935px) - 86px);}
  .home-v2-hero__copy{top:clamp(58px,4.1vw,84px);}
  .home-v2-hero__copy>p{font-size:clamp(17px,.95vw,19px);}
  .home-v2-player{top:clamp(230px,calc(24.8vw - 127px),380px);right:9%;width:clamp(500px,35.16vw,720px);height:clamp(235px,17.33vw,355px);padding:clamp(22px,1.85vw,38px);grid-template-columns:clamp(112px,8.79vw,180px) 1fr;grid-template-rows:auto clamp(38px,3.17vw,65px) clamp(43px,2.68vw,55px);column-gap:clamp(22px,1.7vw,35px);border-radius:clamp(21px,1.36vw,28px);}
  .home-v2-player__cover{width:clamp(112px,8.79vw,180px);height:clamp(112px,8.79vw,180px);}
  .home-v2-player__meta strong{font-size:clamp(20px,1.18vw,24px);}
  .home-v2-player__meta span,.home-v2-player__meta small,.home-v2-player__time{font-size:clamp(11px,.64vw,13px);}
  .home-v2-category{min-height:clamp(235px,18.1vw,370px);}
  .home-v2-category__content{left:clamp(24px,1.95vw,40px);bottom:clamp(24px,1.9vw,39px);}
  .home-v2-category__icon{width:clamp(43px,3vw,61px);height:clamp(43px,3vw,61px);}
  .home-v2-category strong{font-size:clamp(15px,.84vw,17px);}
  .home-v2-category small{font-size:clamp(11px,.64vw,13px);color:rgba(255,255,255,.84);}
  .home-v2-section-intro p,.home-v2-license p,.home-v2-curated__copy p{font-size:clamp(16px,.95vw,19px);line-height:1.62;}
  .home-v2-section-intro a{font-size:clamp(14px,.76vw,15.5px);}
  .home-v2-license{padding-top:clamp(34px,2.35vw,48px);padding-bottom:clamp(34px,2.35vw,48px);}
  .home-v2-license__grid{gap:clamp(60px,4.9vw,100px);}
  .home-v2-facts article{grid-template-columns:clamp(45px,2.64vw,54px) clamp(190px,12.2vw,250px) 1fr;min-height:clamp(82px,5.18vw,106px);}
  .home-v2-facts strong{font-size:clamp(14px,.82vw,16px);}
  .home-v2-facts p{font-size:clamp(13px,.76vw,15px);line-height:1.5;}
  .home-v2-curated{padding-top:clamp(32px,2.2vw,45px);padding-bottom:clamp(32px,2.2vw,45px);}
  .home-v2-playlist h3{font-size:clamp(13px,.72vw,14.5px);color:rgba(255,255,255,.88);}
  .home-v2-final{padding-top:clamp(40px,2.7vw,55px);}
  .home-v2-final__panel{min-height:clamp(238px,18.3vw,375px);border-radius:clamp(20px,1.36vw,28px);}
  .home-v2-final__copy{left:clamp(30px,2.3vw,47px);top:clamp(24px,1.9vw,39px);}
  .home-v2-final h2{font-size:clamp(31px,2.2vw,45px);}
  .home-v2-final__copy>p{font-size:clamp(13px,.72vw,14.5px);color:rgba(255,255,255,.78);}
  .home-v2-final blockquote{top:clamp(56px,4.3vw,88px);font-size:clamp(12px,.76vw,15.5px);text-shadow:0 2px 14px rgba(0,0,0,.45);}
  .home-v2-final cite{font-size:clamp(11px,.62vw,12.5px);color:rgba(255,255,255,.72);}
  .home-v2-final__sign{right:4%;top:clamp(58px,4.15vw,85px);font-size:clamp(24px,1.46vw,30px);}
  body.site:has(.home-v2) .site-footer__brand p{font-size:clamp(13px,.72vw,14.5px);line-height:1.58;}
  body.site:has(.home-v2) .site-footer__links h3{font-size:clamp(13px,.72vw,14.5px);}
  body.site:has(.home-v2) .site-footer__links :is(a,.site-footer__settings){font-size:clamp(12px,.67vw,13.5px);line-height:1.45;}
  body.site:has(.home-v2) .site-footer__bottom{font-size:clamp(11px,.62vw,12.5px);}
}

/* Final desktop + product consistency pass */
:root{
  --pleiraum-wordmark-spacing:.3em;
  --pleiraum-wordmark-weight:700;
}

body.site .site-brand__word,
.topbar-center .brand,
.topbar-center .brand a,
.certificate-sheet__brand{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  font-weight:var(--pleiraum-wordmark-weight);
  letter-spacing:var(--pleiraum-wordmark-spacing);
  text-transform:uppercase;
}

.topbar-center .brand a{font-size:14px;}
body.site .site-brand--footer .site-brand__word{font-size:15px;}

/* An authenticated visitor still sees the marketing hero under the header. */
body.site:has(.home-v2) > .topbar--default-auth{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  z-index:10020;
  border-bottom:0;
  background:linear-gradient(180deg,rgba(4,8,11,.74),transparent);
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

/* Homepage category previews deliberately use the same asset, color and layering system as /app. */
.home-v2-category.cat-card{
  min-height:370px;
  padding:0;
  border-color:rgba(255,255,255,.1);
  border-radius:17px;
  background:
    radial-gradient(110% 100% at 75% -8%,color-mix(in srgb,var(--cat-accent) 22%,transparent),transparent 48%),
    radial-gradient(90% 80% at 8% 18%,color-mix(in srgb,var(--cat-accent) 7%,transparent),transparent 58%),
    linear-gradient(145deg,color-mix(in srgb,var(--cat-wash) 84%,#11131a),var(--cat-depth) 82%);
  box-shadow:0 22px 54px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.06),inset 0 -70px 100px rgba(0,0,0,.3);
}
.home-v2-category.cat-card::before{
  inset:0;
  opacity:1;
  filter:saturate(var(--cat-photo-saturation)) contrast(var(--cat-photo-contrast)) brightness(var(--cat-photo-brightness));
  transform:scale(var(--cat-photo-scale));
  background-image:var(--cat-photo);
  background-position:var(--cat-photo-position);
  background-size:var(--cat-photo-size);
  background-repeat:no-repeat;
}
.home-v2-category.cat-card::after{
  background:
    radial-gradient(ellipse 66% 58% at 15% 20%,rgba(0,0,0,.18) 0%,rgba(0,0,0,.08) 48%,transparent 76%),
    radial-gradient(ellipse 90% 78% at 0% 0%,
      color-mix(in srgb,var(--cat-haze-color) 96%,transparent) 0%,
      color-mix(in srgb,var(--cat-haze-color) 82%,transparent) 31%,
      color-mix(in srgb,var(--cat-haze-color) 42%,transparent) 54%,
      color-mix(in srgb,var(--cat-haze-color) 14%,transparent) 66%,
      transparent 77%);
}
.home-v2-category.cat-card:hover::before{filter:saturate(calc(var(--cat-photo-saturation) + .04)) contrast(calc(var(--cat-photo-contrast) + .03)) brightness(calc(var(--cat-photo-brightness) + .05));transform:scale(calc(var(--cat-photo-scale) + .025));}
.home-v2-category.cat-card .cat-title{font-size:clamp(15px,.9vw,18px);}
.home-v2-category.cat-card .cat-subtitle{color:rgba(255,255,255,.72);font-size:clamp(11px,.65vw,13px);}

/* Homepage category previews are intentionally display-only; /app cards remain interactive. */
.home-v2-category.cat-card--display{
  cursor:default;
  pointer-events:none;
}
.home-v2-category.cat-card--display:hover{
  transform:none;
  border-color:rgba(255,255,255,.1);
}
.home-v2-category.cat-card--display:hover::before{
  filter:saturate(var(--cat-photo-saturation)) contrast(var(--cat-photo-contrast)) brightness(var(--cat-photo-brightness));
  transform:scale(var(--cat-photo-scale));
}
.home-v2-category.cat-card--display:hover .cat-icon{
  transform:none;
}

/* A small, coherent icon/control system for the marketing page. */
.home-v2-player__controls button,
.home-v2-carousel__arrow,
.home-v2-playlist button{
  display:grid;
  place-items:center;
  line-height:1;
}
.home-v2-player__controls button i{font-size:14px;}
.home-v2-player__controls .home-v2-player__toggle i{font-size:16px;transform:translateX(1px);}
.home-v2-player__controls .home-v2-player__toggle.is-playing i{transform:none;}
.home-v2-playlist button i{font-size:10px;transform:translateX(1px);}
.home-v2-playlist button.is-playing i{transform:none;}
.home-v2-carousel__arrow i{font-size:13px;}
.home-v2-carousel__arrow:disabled{
  opacity:.28;
  cursor:default;
  transform:none;
}
.home-v2-carousel__arrow:not(:disabled):hover{
  border-color:rgba(255,255,255,.48);
  background:rgba(255,255,255,.08);
  transform:translateY(-1px);
}
.home-v2-button--light,
body.site .site-action--light{color:#101114;}
.home-v2-button--light span,
.home-v2-button--light i,
body.site .site-action--light span,
body.site .site-action--light i{color:currentColor;}
.home-v2-button:focus-visible,
.home-v2-player button:focus-visible,
.home-v2-carousel button:focus-visible,
.home-v2-playlist button:focus-visible{
  outline:2px solid rgba(255,255,255,.9);
  outline-offset:3px;
}

/* Restore the reference player's long, quiet waveform treatment. */
.home-v2-wave{gap:2px;mask-image:linear-gradient(90deg,#000 0%,#000 78%,transparent 100%);}
.home-v2-wave i{flex:0 0 2px;opacity:.76;}

/* One coherent photo plus a soft overlay prevents the old doubled-gradient seam. */
.home-v2-final__panel{
  isolation:isolate;
  background-image:url('../images/home/cta-boutique-hotel-v4.jpg');
  background-position:center;
  background-size:cover;
}
.home-v2-final__panel::before{
  content:"";
  position:absolute;
  z-index:0;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(4,8,11,.55) 0%,rgba(4,8,11,.34) 33%,rgba(4,8,11,.13) 52%,rgba(4,8,11,0) 73%);
}
.home-v2-final__copy,
.home-v2-final blockquote,
.home-v2-final__sign{z-index:1;}
.home-v2-final blockquote{text-shadow:0 2px 16px rgba(0,0,0,.72);}
.home-v2-final__sign{text-shadow:0 1px 10px rgba(255,196,132,.2);}

/* The homepage footer is now the shared desktop public-site footer system. */
@media(min-width:981px){
  body.site .site-footer{
    position:relative;
    width:min(1840px,calc(100% - 9.2vw));
    margin:0 auto;
    padding:clamp(40px,2.7vw,55px) 0 42px;
    border:0;
    border-radius:0;
    background:transparent;
  }
  body.site .site-footer__inner{
    width:100%;
    display:grid;
    grid-template-columns:1.4fr 2fr 180px;
    gap:80px;
    padding:0;
  }
  body.site .site-footer__brand p{
    max-width:none;
    margin:28px 0 0;
    color:rgba(255,255,255,.68);
    font-size:clamp(13px,.72vw,14.5px);
    line-height:1.58;
  }
  body.site .site-footer__links{display:grid;grid-template-columns:repeat(3,1fr);gap:80px;}
  body.site .site-footer__links h3{
    margin:0 0 13px;
    color:rgba(255,255,255,.78);
    font-size:clamp(13px,.72vw,14.5px);
    font-weight:500;
    letter-spacing:0;
    text-transform:none;
  }
  body.site .site-footer__links :is(a,.site-footer__settings){
    display:block;
    margin:7px 0 0;
    color:rgba(255,255,255,.67);
    font-size:clamp(12px,.67vw,13.5px);
    line-height:1.45;
    text-decoration:none;
  }
  body.site .site-footer__links :is(a,.site-footer__settings):hover{color:#fff;}
  body.site .site-footer__bottom{
    position:absolute;
    top:clamp(40px,2.7vw,55px);
    right:0;
    width:auto;
    margin:0;
    padding:0;
    border:0;
    color:rgba(255,255,255,.6);
    font-size:clamp(11px,.62vw,12.5px);
    line-height:1.5;
    text-align:right;
  }
}

@media(min-width:1281px){
  .home-v2-category.cat-card{min-height:clamp(235px,18.1vw,370px);}
}

/* Final render corrections found during the 1920 px browser comparison. */
body.site:has(.home-v2) .site-shell,
body.site .home-v2{padding:0;}

body.site a.home-v2-button{color:#fff;}
body.site a.home-v2-button:hover{color:#fff;}
body.site a.home-v2-button--light,
body.site a.home-v2-button--light:hover{color:#101114;}
body.site a.home-v2-category,
body.site a.home-v2-category:hover{color:#fff;text-decoration:none;}

.home-v2-hero h1,
.home-v2-section-head h2,
.home-v2-license h2,
.home-v2-curated h2,
.home-v2-final h2{margin-top:0;}

.home-v2-final__panel{background-image:url('../images/home/cta-boutique-hotel-v5.jpg');}
.home-v2-final__sign{right:12.5%;}

@media(max-width:1280px) and (min-width:981px){
  .home-v2-final__sign{right:11%;}
}

/* Business onboarding and operational account hub */
.account-hub,
.business-onboarding{
  width:min(100% - 48px,1280px);
  margin:0 auto;
  padding:clamp(48px,6vw,92px) 0 clamp(80px,9vw,140px);
  color:#f7f7fa;
}
.account-hub__header,
.account-locations-v2__head,
.account-section__head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:32px;
}
.account-hub__header{margin-bottom:42px;align-items:flex-end;}
.account-hub__header h1,
.business-onboarding__head h1{margin:0;font-size:clamp(44px,5vw,76px);line-height:.98;letter-spacing:-.055em;}
.account-hub__header p,
.business-onboarding__head p{max-width:720px;margin:14px 0 0;color:rgba(255,255,255,.64);font-size:17px;line-height:1.6;}
.account-text-link{display:inline-flex;gap:7px;color:rgba(255,255,255,.82);text-decoration:none;white-space:nowrap;}
.account-text-link:hover{color:#fff;}
.account-completion{
  display:flex;justify-content:space-between;align-items:center;gap:30px;margin:0 0 30px;padding:24px 26px;
  border:1px solid rgba(225,181,95,.32);border-radius:18px;background:rgba(225,181,95,.07);
}
.account-completion strong{font-size:18px;}.account-completion p{max-width:780px;margin:7px 0 0;color:rgba(255,255,255,.62);line-height:1.5;}
.account-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:66px;}
.account-summary-card,.account-section,.location-license-card,.onboarding-panel{
  border:1px solid rgba(255,255,255,.11);border-radius:20px;background:rgba(255,255,255,.035);
}
.account-summary-card{min-height:236px;padding:25px;display:flex;flex-direction:column;}
.account-summary-card>span,.account-section__head span,.account-locations-v2__head span,.location-dialog__panel header span{
  color:rgba(255,255,255,.46);font-size:12px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;
}
.account-summary-card h2{margin:12px 0 6px;font-size:20px;line-height:1.2;}.account-summary-card p{margin:0;color:rgba(255,255,255,.55);line-height:1.5;}
.account-summary-card>a{margin-top:auto;padding-top:26px;color:#fff;text-decoration:none;font-size:14px;}
.account-summary-number{display:block;margin-top:14px;font-size:42px;line-height:1;letter-spacing:-.04em;}
.account-summary-status{align-self:flex-start;margin-top:14px;padding:6px 9px;border:1px solid rgba(255,255,255,.12);border-radius:7px;color:rgba(255,255,255,.78);font-size:12px;font-weight:700;}
.account-summary-status--active{color:#75e4a4;border-color:rgba(86,217,139,.28);background:rgba(86,217,139,.06);}
.account-summary-status--trial{color:#e5c76d;border-color:rgba(217,185,86,.28);background:rgba(217,185,86,.06);}
.account-locations-v2{scroll-margin-top:30px;margin-bottom:66px;}
.account-locations-v2__head{align-items:flex-end;margin-bottom:22px;}
.account-locations-v2__head h2,.account-section__head h2{margin:7px 0 0;font-size:clamp(27px,2.6vw,38px);line-height:1.08;letter-spacing:-.035em;}
.account-locations-v2__head p{margin:9px 0 0;color:rgba(255,255,255,.56);line-height:1.5;}
.account-locations-v2__actions{display:flex;align-items:center;gap:18px;}.account-locations-v2__actions strong{font-size:14px;color:rgba(255,255,255,.64);}
.account-location-message,.account-location-limit-note{margin:0 0 18px;padding:14px 16px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.035);color:rgba(255,255,255,.72);line-height:1.45;}
.account-location-message--muted{color:rgba(255,255,255,.5);}.account-location-limit-note{margin-top:18px;}.account-location-limit-note a{color:#fff;}
.location-card-grid{display:grid;gap:18px;}
.location-license-card{padding:26px;}.location-license-card>header{display:flex;justify-content:space-between;gap:30px;}
.location-license-card h3{margin:13px 0 6px;font-size:clamp(24px,2.2vw,32px);letter-spacing:-.035em;}.location-license-card header p{margin:0;color:rgba(255,255,255,.58);line-height:1.55;}
.location-license-state{display:inline-flex;align-items:center;gap:9px;color:rgba(255,255,255,.65);font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.06em;}
.location-license-state i{width:8px;height:8px;border-radius:50%;background:#7d7d84;box-shadow:0 0 0 4px rgba(125,125,132,.12);}
.location-license-state--active{color:#75e4a4}.location-license-state--active i{background:#56d98b;box-shadow:0 0 0 4px rgba(86,217,139,.12)}
.location-license-state--trial{color:#e5c76d}.location-license-state--trial i{background:#d9b956;box-shadow:0 0 0 4px rgba(217,185,86,.12)}
.location-license-state--expired,.location-license-state--revoked{color:#ef9a9a}.location-license-state--expired i,.location-license-state--revoked i{background:#d95f68;}
.location-more{position:relative}.location-more summary{list-style:none;cursor:pointer;padding:4px 0 8px;color:rgba(255,255,255,.58);letter-spacing:.14em}.location-more summary::-webkit-details-marker{display:none}
.location-more>div{position:absolute;z-index:4;right:0;top:30px;min-width:190px;padding:7px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:#17181d;box-shadow:0 16px 45px rgba(0,0,0,.38)}
.location-more form{margin:0}.location-more button{width:100%;padding:10px 12px;border:0;border-radius:8px;background:transparent;color:rgba(255,255,255,.75);font:inherit;text-align:left;cursor:pointer}.location-more button:hover{background:rgba(255,255,255,.07);color:#fff}
.location-license-card__license{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-top:25px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1)}
.location-license-card__license>div:first-child{display:flex;flex-direction:column;gap:6px}.location-license-card__license span,.location-license-card__license small{color:rgba(255,255,255,.46);font-size:12px}.location-license-card__license strong{font-size:16px;letter-spacing:.035em;overflow-wrap:anywhere}
.location-license-card__links{display:flex;align-items:center;gap:15px;flex-wrap:wrap;justify-content:flex-end}.location-license-card__links a:not(.btn){color:rgba(255,255,255,.74);font-size:13px;text-decoration:none}.location-license-card__links a:hover{color:#fff}
.account-location-edit-panel{margin-top:24px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1)}
.account-location-picker{display:grid;gap:16px}.account-location-fields,.business-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.business-form-grid .field-wide{grid-column:1/-1}
.account-location-fields label,.business-form-grid label{display:grid;gap:8px}.account-location-fields label>span,.business-form-grid label>span{color:rgba(255,255,255,.68);font-size:13px}.business-form-grid em{color:rgba(255,255,255,.4);font-style:normal;font-weight:400}
.account-location-map{display:grid;place-items:center;min-height:300px;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#171923}.account-location-map span{color:rgba(255,255,255,.48)}
.account-location-help{margin:0;color:rgba(255,255,255,.49);font-size:13px;line-height:1.5}.account-location-licensed-address{display:grid;gap:8px}.account-location-licensed-address>span{color:rgba(255,255,255,.68);font-size:13px}.account-location-licensed-address textarea.form-control{height:auto;min-height:68px;max-height:128px;padding:11px 13px;resize:vertical;overflow-y:auto;font-family:inherit;font-size:14px;font-weight:500;line-height:1.5;letter-spacing:0}.account-location-licensed-address small{max-width:680px;color:rgba(255,255,255,.49);font-size:12px;font-weight:400;line-height:1.5}.account-location-actions{display:flex;justify-content:flex-end;margin-top:18px}
.account-locations-empty{padding:48px;border:1px dashed rgba(255,255,255,.16);border-radius:20px;text-align:center}.account-locations-empty strong{font-size:25px}.account-locations-empty p{max-width:620px;margin:10px auto 22px;color:rgba(255,255,255,.55);line-height:1.55}
.account-hub__lower{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);gap:18px;align-items:start;min-width:0}.account-hub__side{display:grid;gap:18px;align-content:start;min-width:0}.account-section{min-width:0;padding:26px;align-self:start}.account-section:first-child{grid-row:auto}.account-section>p{color:rgba(255,255,255,.57);line-height:1.55}.account-section--security .account-text-link{margin:10px 22px 0 0;font-size:14px}.account-section__head h2{max-width:100%;overflow-wrap:anywhere}.account-section--security h2{overflow-wrap:anywhere}
.site form .business-edit-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;margin:0;padding:0 18px;line-height:1.2;border-radius:10px}
.site form .business-edit-actions .btn[type="submit"]{margin:0}
.account-secondary-button{padding:9px 13px;border:1px solid rgba(255,255,255,.14);border-radius:9px;background:transparent;color:rgba(255,255,255,.77);font:inherit;font-size:13px;cursor:pointer}.account-secondary-button:hover{background:rgba(255,255,255,.06);color:#fff}
.business-summary{margin-top:28px}.business-summary>strong{font-size:25px}.business-summary>p{color:rgba(255,255,255,.55)}.business-summary dl,.account-compact-list{margin:24px 0 0}.business-summary dl>div,.account-compact-list>div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:12px 0;border-top:1px solid rgba(255,255,255,.09)}.business-summary dt,.account-compact-list dt{color:rgba(255,255,255,.44)}.business-summary dd,.account-compact-list dd{margin:0;line-height:1.5}
.business-edit-panel{margin-top:26px}.business-authority{display:flex;align-items:flex-start;gap:11px;margin:20px 0;color:rgba(255,255,255,.66);font-size:13px;line-height:1.45}.business-authority input{margin-top:3px}.business-edit-actions{display:flex;align-items:center;gap:12px}
.location-dialog{position:fixed;z-index:1100;inset:0;display:grid;place-items:center;padding:24px}.location-dialog[hidden]{display:none}.location-dialog__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(8px)}.location-dialog__panel{position:relative;width:min(100%,760px);max-height:calc(100vh - 48px);overflow:auto;padding:28px;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:#111217;box-shadow:0 30px 100px rgba(0,0,0,.55)}.location-dialog__panel>header{display:flex;justify-content:space-between;gap:24px;margin-bottom:22px}.location-dialog__panel h2{margin:7px 0;font-size:34px;letter-spacing:-.04em}.location-dialog__panel header p{margin:0;color:rgba(255,255,255,.55)}.location-dialog__panel header>button{border:0;background:transparent;color:rgba(255,255,255,.62);font-size:30px;cursor:pointer}.has-location-dialog{overflow:hidden}
.business-onboarding__wrap{width:min(100%,920px);margin:0 auto}.business-onboarding__head{text-align:center}.business-onboarding__head p{margin:17px auto 0}.business-onboarding__head>span{color:rgba(255,255,255,.48);font-size:13px}.business-onboarding__steps{display:grid;grid-template-columns:repeat(3,1fr);margin:40px 0 20px;color:rgba(255,255,255,.36);font-size:13px}.business-onboarding__steps span{padding:14px 0;border-top:2px solid rgba(255,255,255,.1)}.business-onboarding__steps .is-current,.business-onboarding__steps .is-complete{color:#fff;border-color:rgba(255,255,255,.74)}
.onboarding-panel{padding:clamp(24px,4vw,42px)}.onboarding-panel__intro{margin-bottom:28px}.onboarding-panel__intro h2{margin:0;font-size:32px;letter-spacing:-.04em}.onboarding-panel__intro p{max-width:680px;margin:10px 0 0;color:rgba(255,255,255,.58);line-height:1.55}.onboarding-primary{margin-top:4px}.onboarding-trial-disclosure{margin:10px 0 0;color:rgba(255,255,255,.5);font-size:12px;line-height:1.5}.onboarding-license-holder{display:flex;flex-direction:column;gap:5px;margin-bottom:28px;padding:17px 19px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.025)}.onboarding-license-holder span,.onboarding-license-holder small{color:rgba(255,255,255,.47);font-size:12px}.onboarding-license-holder strong{font-size:18px}
.license-status--trial{color:#e5c76d}.license-status--trial .license-status__dot{background:#d9b956;box-shadow:0 0 0 4px rgba(217,185,86,.13)}.license-status--expired{color:#ef9a9a}.license-status--expired .license-status__dot,.license-status--revoked .license-status__dot{background:#d95f68;box-shadow:0 0 0 4px rgba(217,95,104,.13)}
.license-facts dd small{display:block;margin-top:5px;color:rgba(255,255,255,.52);font-weight:400;line-height:1.45}.certificate-sheet__identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding:22px 0;border-top:1px solid #ddd;border-bottom:1px solid #ddd}.certificate-sheet__identity>div{display:flex;flex-direction:column;gap:7px}.certificate-sheet__identity small{color:#777;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.certificate-sheet__identity strong{font-size:20px}.certificate-sheet__identity span{color:#555;line-height:1.45}

@media(max-width:900px){
  .account-summary-grid{grid-template-columns:1fr 1fr}.account-summary-card:last-child{grid-column:1/-1}.account-hub__lower{grid-template-columns:1fr}.account-section:first-child{grid-row:auto}.account-completion{align-items:flex-start;flex-direction:column}.account-location-map{min-height:260px}
}
@media(max-width:640px){
  .account-hub,.business-onboarding{width:min(100% - 28px,1280px);padding-top:34px}.account-hub__header,.account-locations-v2__head,.account-section__head{align-items:flex-start;flex-direction:column}.account-hub__header{margin-bottom:28px}.account-summary-grid{grid-template-columns:1fr;margin-bottom:48px}.account-summary-card:last-child{grid-column:auto}.account-summary-card{min-height:205px}.account-locations-v2__actions{width:100%;justify-content:space-between}.location-license-card{padding:20px}.location-license-card__license{align-items:flex-start;flex-direction:column}.location-license-card__links{justify-content:flex-start}.account-location-fields,.business-form-grid{grid-template-columns:1fr}.business-form-grid .field-wide{grid-column:auto}.account-location-map{min-height:230px}.business-summary dl>div,.account-compact-list>div{grid-template-columns:1fr;gap:5px}.business-onboarding__steps{font-size:11px}.certificate-sheet__identity{grid-template-columns:1fr}.location-dialog{padding:10px}.location-dialog__panel{max-height:calc(100vh - 20px);padding:20px}.account-section__head h2{font-size:clamp(22px,7vw,27px)}
  .certificate-page{overflow:visible}.certificate-toolbar{position:static;flex-wrap:wrap}.certificate-sheet{width:100%;min-width:0;min-height:0;padding:38px 28px}.certificate-sheet__rule{margin-bottom:38px}.certificate-sheet h1{font-size:clamp(39px,12vw,56px);line-height:.96}.certificate-sheet__intro{margin:24px 0 34px;font-size:16px}.certificate-sheet__verification{grid-template-columns:1fr;gap:24px;margin:38px 0}.certificate-qr,.certificate-qr img,.certificate-qr canvas{width:160px!important;height:160px!important}.certificate-sheet__verification strong{font-size:18px}.certificate-sheet__footer>strong{font-size:17px;overflow-wrap:anywhere}
}
/* The operational app header keeps its brand truly centered on narrow screens. */
@media (max-width:720px){
  .topbar{
    position:relative;
    gap:0;
    padding-left:12px;
    padding-right:12px;
  }
  .topbar-center{
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    pointer-events:none;
  }
  .topbar-center .brand,
  .topbar-center .brand a{
    font-size:12px;
    letter-spacing:.22em;
    white-space:nowrap;
  }
  .topbar-left,.topbar-right{position:relative;z-index:1;gap:6px}
  .topbar-right>.locale-selector{display:none}
  .topbar .iconbtn{width:40px;height:40px;border-radius:13px}
}
@media (max-width:360px){
  .topbar{padding-left:8px;padding-right:8px}
  .topbar-left,.topbar-right{gap:4px}
  .topbar .iconbtn{width:38px;height:38px;border-radius:12px}
  .topbar-center .brand,.topbar-center .brand a{font-size:11px;letter-spacing:.19em}
}

/* Product completion: the five homepage examples remain square and non-interactive. */
.home-v2-category.cat-card{aspect-ratio:1;min-height:0;height:auto;}
.home-v2-carousel__page{display:contents;}
.home-v2-player{height:auto;min-height:0;grid-template-rows:auto auto;align-items:center;}
.home-v2-player__cover{grid-row:1/3;}
.home-v2-wave{grid-column:2;}
.home-v2-playlist [data-playlist-play]{position:absolute;left:13px;bottom:13px;display:grid;width:27px;height:27px;place-items:center;border-radius:50%;background:#fff;color:#111;pointer-events:none;}
.home-v2-playlist [data-playlist-play] i{font-size:10px;transform:translateX(1px);}
.home-v2-playlist [data-playlist-play].is-playing i{transform:none;}
.home-v2-playlist:focus-visible{outline:2px solid rgba(255,255,255,.9);outline-offset:4px;border-radius:10px;}
@media(min-width:981px){.home-v2-curated__grid{grid-template-columns:minmax(0,38fr) minmax(0,62fr);}}
@media(max-width:360px){body.site:has(.home-v2) .site-footer__links{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px;}}
@media(max-width:1279px){
  .home-v2-category-grid{display:flex;gap:20px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;padding:0 1px 10px;}
  .home-v2-category.cat-card{flex:0 0 clamp(220px,29vw,300px);scroll-snap-align:start;}
}
@media(max-width:980px){
  .home-v2-hero{min-height:0;padding-bottom:60px;}
  .home-v2-hero__inner{height:auto;display:flex;flex-direction:column;gap:35px;}
  .home-v2-hero__copy{position:relative;top:auto;left:auto;padding-top:70px;}
  .home-v2-player{position:relative;top:auto;right:auto;left:auto;width:min(620px,100%);max-width:100%;margin:0 auto;}
}
@media(max-width:620px){
  .home-v2-hero{min-height:0;padding-bottom:54px;}
  .home-v2-hero__inner{height:auto;gap:30px;}
  .home-v2-hero__copy{padding-top:54px;}
  .home-v2-player{height:auto;min-height:0;grid-template-columns:94px 1fr;grid-template-rows:auto auto;}
  .home-v2-category.cat-card{flex-basis:min(78vw,310px);min-height:0;}
  .home-v2-carousel__rail{gap:18px;}
  .home-v2-carousel__page{display:grid;flex:0 0 100%;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;align-content:start;}
  .home-v2-playlist{min-width:0;}
  .home-v2-playlist__art{aspect-ratio:1;}
  .home-v2-carousel__dots{margin-top:22px;}
}

/* First-party privacy choices */
.privacy-banner[hidden],.privacy-dialog[hidden]{display:none!important;}
.privacy-banner,.privacy-dialog{font-family:Inter,Manrope,ui-sans-serif,system-ui,sans-serif;color:#f1f2f8;}
.privacy-banner{position:fixed;z-index:10050;left:50%;bottom:20px;transform:translateX(-50%);width:min(900px,calc(100% - 32px));display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 26px;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:#171921;box-shadow:0 20px 65px rgba(0,0,0,.5);}
.privacy-banner__copy{min-width:0;max-width:590px;}
.privacy-banner h2,.privacy-dialog h2{margin:0 0 7px;font-size:19px;line-height:1.25;letter-spacing:-.02em;}
.privacy-banner p,.privacy-dialog p{margin:0;color:rgba(241,242,248,.7);font-size:13px;line-height:1.55;}
.privacy-banner__links{display:flex;flex-wrap:wrap;gap:8px 17px;margin-top:12px;}
.privacy-banner__links a,.privacy-banner__links button,.privacy-dialog__bottom a{padding:0;border:0;background:none;color:rgba(241,242,248,.78);font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;}
.privacy-banner__links a:hover,.privacy-banner__links button:hover,.privacy-dialog__bottom a:hover{color:#fff;}
.privacy-banner__actions{display:flex;flex:0 0 auto;flex-direction:column;gap:8px;min-width:160px;}
.privacy-choice{min-height:39px;padding:9px 15px;border-radius:10px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;}
.privacy-choice--accept{border:1px solid #f2f3f8;background:#f2f3f8;color:#14151a;}
.privacy-choice--necessary{border:1px solid rgba(255,255,255,.29);background:transparent;color:#f2f3f8;}
.privacy-choice:hover{filter:brightness(.9);}
.privacy-dialog{position:fixed;z-index:10060;inset:0;display:grid;place-items:center;padding:16px;background:rgba(0,0,0,.7);}
.privacy-dialog__panel{position:relative;width:min(550px,100%);max-height:min(90vh,750px);overflow:auto;padding:28px;border:1px solid rgba(255,255,255,.17);border-radius:20px;background:#171921;box-shadow:0 25px 80px rgba(0,0,0,.55);}
.privacy-dialog__close{position:absolute;right:18px;top:16px;width:34px;height:34px;border:1px solid rgba(255,255,255,.22);border-radius:9px;background:transparent;color:#f2f3f8;font-size:24px;line-height:1;cursor:pointer;}
.privacy-dialog__intro{max-width:440px;margin:0 0 22px!important;}
.privacy-category{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 0;border-top:1px solid rgba(255,255,255,.13);}
.privacy-dialog .privacy-category--toggle{display:flex;margin:0;color:#f1f2f8;font-size:inherit;}
.privacy-category h3{margin:0 0 5px;font-size:15px;}
.privacy-category__fixed{flex:none;color:rgba(241,242,248,.63);font-size:12px;}
.privacy-category input{appearance:none;position:relative;flex:none;width:42px;height:24px;margin:0;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:#373941;cursor:pointer;transition:background .2s;}
.privacy-category input:before{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#f1f2f8;transition:transform .2s;}
.privacy-category input:checked{border-color:#f1f2f8;background:#777e90;}
.privacy-category input:checked:before{transform:translateX(18px);}
.privacy-dialog__bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.13);}
.privacy-dialog__bottom>div{display:flex;flex-wrap:wrap;gap:12px;}
.privacy-dialog-open{overflow:hidden;}
.privacy-banner :focus-visible,.privacy-dialog :focus-visible{outline:2px solid #fff;outline-offset:3px;}
.legal-inline-action{display:inline;padding:0;border:0;background:none;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;}
body.site .legal-card{grid-template-columns:minmax(0,1fr);min-width:0;}
body.site .legal-card code{overflow-wrap:anywhere;word-break:break-word;}

/* Reference-driven public navigation and shared responsive auth family */
.site-action--mobile{display:none;}
body.site .auth-wrap--signup .auth-card .auth-foot--legal{max-width:480px;margin:62px auto 0;color:rgba(237,239,248,.7);font-size:14px;line-height:1.65;text-align:center;}
body.site .auth-wrap--signup .auth-card .auth-foot a{display:inline;margin:0;color:#b9c3ea;text-decoration:none;}
body.site .auth-wrap--signup .auth-card .auth-foot--login{display:flex;align-items:center;justify-content:center;gap:8px;max-width:380px;margin:34px auto 0;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);color:rgba(237,239,248,.7);font-size:15px;text-align:center;}
body.site .auth-wrap--login .auth-card>.auth-foot:last-child{display:flex;align-items:center;justify-content:center;gap:8px;max-width:380px;margin:34px auto 0;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);color:rgba(237,239,248,.7);font-size:15px;text-align:center;}
body.site .auth-wrap--login .auth-card>.auth-foot:last-child a{display:inline;margin:0;}
body.site .auth-wrap--reset-password .auth-card>.auth-foot{margin-top:28px;}

/* Shared premium auth identity. Breakpoints below adapt geometry only. */
body.site:has(.auth-wrap--auth-family)::before{background:radial-gradient(ellipse 85% 55% at 0% 18%,rgba(38,46,86,.26),transparent 78%),radial-gradient(ellipse 66% 65% at 100% 28%,rgba(101,56,36,.17),transparent 77%),#0b0d12;}
body.site:has(.auth-wrap--auth-family)::after{background:radial-gradient(ellipse 95% 80% at 50% 50%,transparent 46%,rgba(0,0,0,.22));}
body.site .auth-wrap--auth-family{box-sizing:border-box;display:block;width:min(480px,calc(100% - 44px));min-height:calc(100svh - 69px);margin:0 auto;padding:clamp(90px,12svh,132px) 0 88px;}
body.site .auth-wrap--auth-family .auth-card{width:100%;}
body.site .auth-wrap--auth-family .auth-head{margin:0 0 39px;text-align:center;}
body.site .auth-wrap--auth-family .auth-head h1{max-width:12ch;margin:0 auto 23px;color:#f2f3f8;font-size:clamp(48px,4vw,54px);font-weight:700;line-height:1.06;letter-spacing:-.045em;}
body.site .auth-wrap--auth-family .auth-head p{max-width:355px;margin:0 auto;color:rgba(237,239,248,.72);font-size:16px;line-height:1.5;}
body.site .auth-wrap--auth-family .form-group{margin:0 0 14px;}
body.site .auth-wrap--auth-family .form-control{height:58px;padding:0 17px;border:1px solid rgba(255,255,255,.17);border-radius:18px;background-color:rgba(7,9,14,.36);color:#f2f3f8;font-family:inherit;font-size:15px;line-height:1.2;box-shadow:none;}
body.site .auth-wrap--auth-family :is(#registerEmail,#userSigninLogin,#forgotPasswordEmail,#registerPassword,#registerPasswordConfirm,#userSigninPassword,#resetPassword,#resetPasswordConfirm){padding-left:51px;background-repeat:no-repeat;background-position:18px center;background-size:20px 20px;}
body.site .auth-wrap--auth-family :is(#registerEmail,#userSigninLogin,#forgotPasswordEmail){background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238f96a6' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='2'/%3E%3Cpath d='m3 6 9 7 9-7'/%3E%3C/svg%3E");}
body.site .auth-wrap--auth-family :is(#registerPassword,#registerPasswordConfirm,#userSigninPassword,#resetPassword,#resetPasswordConfirm){background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238f96a6' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='10' width='14' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3m-4 5v2'/%3E%3C/svg%3E");}
body.site .auth-wrap--auth-family .form-control::placeholder{color:rgba(237,239,248,.43);opacity:1;}
body.site .auth-wrap--auth-family .form-control:focus{border-color:rgba(173,189,227,.7);background-color:rgba(7,9,14,.55);box-shadow:0 0 0 3px rgba(124,147,204,.13);}
body.site .auth-wrap--auth-family form button[type="submit"]{position:relative;width:100%;height:64px;margin:14px 0 0;padding:0 45px;border:1px solid transparent;border-radius:20px;background:linear-gradient(105deg,#202734,#1a1b23 54%,#2a211f) padding-box,linear-gradient(105deg,rgba(134,157,207,.68),rgba(255,255,255,.2) 55%,rgba(204,113,67,.83)) border-box;box-shadow:none;color:#f2f3f8;font-family:inherit;font-size:16px;font-weight:500;letter-spacing:0;}
body.site .auth-wrap--auth-family form button[type="submit"]:after{content:"→";position:absolute;right:27px;top:50%;transform:translateY(-50%);font-size:22px;font-weight:300;line-height:1;}
body.site .auth-wrap--auth-family form button[type="submit"]:hover{background:linear-gradient(105deg,#283244,#20212b 54%,#362826) padding-box,linear-gradient(105deg,rgba(163,183,226,.85),rgba(255,255,255,.3) 55%,rgba(219,135,87,.95)) border-box;}
body.site .auth-wrap--auth-family form button[type="submit"]:focus-visible{outline:2px solid #f2f3f8;outline-offset:3px;}
body.site .auth-wrap--auth-family .auth-card .auth-foot{margin:26px auto 0;color:rgba(237,239,248,.7);font-size:15px;line-height:1.5;text-align:center;}
body.site .auth-wrap--auth-family .auth-card .auth-foot a{display:inline;margin:0;color:#b9c3ea;text-decoration:none;}
body.site .auth-wrap--auth-family .auth-card .auth-foot a:hover{text-decoration:underline;text-underline-offset:3px;}
body.site .auth-wrap--auth-family .auth-card .auth-foot--forgot-password{margin-top:20px;}
body.site .auth-wrap--auth-family .auth-card .auth-foot--success{margin-top:0;}
body.site .auth-wrap--auth-family .auth-card .auth-foot--legal{max-width:390px;margin:24px auto 0;font-size:13px;line-height:1.65;}
body.site .auth-wrap--auth-family .auth-card .auth-foot--login,
body.site .auth-wrap--login .auth-card>.auth-foot:last-child{display:flex;align-items:center;justify-content:center;gap:8px;max-width:330px;margin:21px auto 0;padding-top:21px;border-top:1px solid rgba(255,255,255,.12);font-size:15px;line-height:1.4;}
@media(max-width:1180px){
  body.site .site-nav--desktop,body.site .site-action--desktop{display:none!important;}
  body.site .site-header,body.site:has(.home-v2) .site-header{height:76px;min-height:76px;flex-shrink:0;padding:0 20px;border-bottom:1px solid rgba(255,255,255,.05);background:rgba(10,12,18,.86);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);}
  body.site:has(.home-v2) .site-header{position:fixed;top:0;left:0;right:0;}
  body.site .site-header__inner,body.site:has(.home-v2) .site-header__inner{position:relative;z-index:2;width:100%;height:100%;display:flex;align-items:center;gap:12px;}
  body.site .site-brand{height:44px;align-items:center;flex:none;}
  body.site .site-brand__word,body.site:has(.home-v2) .site-brand__word{font-size:14px;font-weight:700;line-height:1;letter-spacing:.28em;}
  body.site .site-header__actions{gap:9px;margin-left:auto;}
  body.site .site-action--mobile{display:flex;align-items:center;}
  body.site .site-action--mobile .locale-selector__trigger{height:44px;border-radius:15px;}
  body.site .site-burger{display:flex!important;width:44px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid rgba(255,255,255,.16);border-radius:15px;background:rgba(255,255,255,.045);box-shadow:none;color:#f3f4f7;}
  body.site .site-burger span{width:19px;height:1.5px;margin:0;transition:transform .18s ease,opacity .14s ease;}
  body.site .site-burger[aria-expanded="true"] span:first-child{transform:translateY(6.5px) rotate(45deg);}
  body.site .site-burger[aria-expanded="true"] span:nth-child(2){opacity:0;}
  body.site .site-burger[aria-expanded="true"] span:last-child{transform:translateY(-6.5px) rotate(-45deg);}
  body.site .site-burger:focus-visible,body.site .locale-selector__trigger:focus-visible,body.site .site-mobile-menu a:focus-visible,body.site .site-mobile-menu button:focus-visible{outline:2px solid rgba(191,204,235,.82);outline-offset:3px;}
  body.site.site-menu-open{overflow:hidden;}
  body.site.site-menu-open .site-header,body.site.site-menu-open:has(.home-v2) .site-header{border:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;}
  body.site.site-menu-open .site-action--mobile{visibility:hidden;pointer-events:none;}
  body.site.site-menu-open .site-burger{border-color:transparent;background:transparent;}
  body.site .site-mobile-menu{position:fixed;inset:0;z-index:1;width:100%;height:100vh;height:100dvh;margin:0;padding:0;overflow-y:auto;overscroll-behavior:contain;border:0;border-radius:0;background:radial-gradient(ellipse 75% 50% at 2% 24%,rgba(30,38,69,.43),transparent 75%),radial-gradient(ellipse 72% 47% at 100% 18%,rgba(80,45,29,.27),transparent 78%),#0d0e13;box-shadow:none;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease,visibility .18s;}
  body.site .site-mobile-menu.is-open{opacity:1;visibility:visible;transform:none;}
  body.site .site-mobile-menu__nav{box-sizing:border-box;display:flex;width:min(100%,540px);min-height:100%;margin:0 auto;padding:104px 28px max(30px,env(safe-area-inset-bottom));flex-direction:column;gap:0;}
  body.site .site-mobile-menu__links{display:grid;gap:2px;}
  body.site .site-mobile-menu__nav .site-mobile-menu__links a{position:relative;display:grid;min-height:62px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:17px;padding:0 15px;border-radius:5px;color:rgba(243,244,248,.78);font-size:17px;font-weight:400;line-height:1.3;letter-spacing:0;text-decoration:none;}
  body.site .site-mobile-menu__nav .site-mobile-menu__links a:hover,body.site .site-mobile-menu__nav .site-mobile-menu__links a.is-active{background:linear-gradient(90deg,rgba(255,255,255,.045),transparent 72%);color:#f5f6f9;}
  body.site .site-mobile-menu__nav .site-mobile-menu__links a.is-active:before{content:"";position:absolute;left:-12px;top:15px;bottom:15px;width:2px;border-radius:2px;background:#c9876d;}
  body.site .site-mobile-menu__links svg{display:block;width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;}
  body.site .site-mobile-menu__utilities{display:grid;gap:2px;margin:23px 3px 0;padding:17px 0 0;border-top:1px solid rgba(255,255,255,.14);}
  body.site .site-mobile-menu__utility,body.site .site-mobile-menu__utilities .locale-selector__trigger{box-sizing:border-box;display:grid;width:100%;min-height:52px;grid-template-columns:30px minmax(0,1fr) auto 14px;align-items:center;gap:17px;padding:0 15px;border:0;border-radius:6px;background:transparent;color:rgba(241,243,249,.68);font-size:15px;font-weight:400;letter-spacing:0;text-align:left;text-decoration:none;box-shadow:none;}
  body.site .site-mobile-menu__utility:hover,body.site .site-mobile-menu__utilities .locale-selector__trigger:hover,body.site .site-mobile-menu__utilities .locale-selector__trigger[aria-expanded="true"]{background:rgba(255,255,255,.045);color:#f4f5f8;}
  body.site .site-mobile-menu__utility svg,body.site .site-mobile-menu__utilities .locale-selector__trigger>svg:first-child{width:21px;height:21px;}
  body.site .site-mobile-menu__utilities .locale-selector{display:block;z-index:auto;}
  body.site .site-mobile-menu__utilities .locale-selector__name{grid-column:2;}
  body.site .site-mobile-menu__utilities .locale-selector__code{grid-column:3;color:rgba(241,243,249,.45);font-size:11px;}
  body.site .site-mobile-menu__utilities .locale-selector__chevron{grid-column:4;}
  body.site .site-mobile-menu__utilities .locale-selector__menu{position:static;width:calc(100% - 47px);max-height:min(430px,calc(100dvh - 210px));margin:1px 0 8px 47px;padding:2px 0 2px 12px;overflow-y:auto;border:0;border-left:1px solid rgba(255,255,255,.12);border-radius:0;background:transparent;box-shadow:none;}
  body.site .site-mobile-menu__utilities .locale-selector__option{min-height:45px;padding-left:13px;}
  body.site .site-mobile-menu__logout{grid-template-columns:30px 1fr;}
  body.site .site-mobile-menu__logout span{grid-column:2;}
  body.site .site-mobile-menu__brand-detail{margin-top:auto;padding:24px 3px 0;border-top:1px solid rgba(255,255,255,.14);color:rgba(244,245,248,.5);font-size:12px;line-height:1.75;letter-spacing:.34em;text-transform:uppercase;}
}
@media(max-width:620px){
  body.site .site-header,body.site:has(.home-v2) .site-header{height:72px;min-height:72px;padding:0 16px;}
  body.site .site-header__actions{gap:7px;}
  body.site .site-action--mobile .locale-selector__trigger{min-width:68px;height:42px;padding:0 9px;border-radius:14px;}
  body.site .site-burger{width:42px;height:42px;border-radius:14px;}
  body.site .site-mobile-menu__nav{padding:98px 24px max(26px,env(safe-area-inset-bottom));}
  body.site .auth-wrap--auth-family{box-sizing:border-box;display:block;width:min(480px,calc(100% - 44px));min-height:calc(100svh - 72px);margin:0 auto;padding:clamp(54px,8svh,85px) 0 62px;}
  body.site .auth-wrap--auth-family .auth-head h1{max-width:12ch;margin:0 auto 23px;color:#f2f3f8;font-size:clamp(42px,11.7vw,52px);font-weight:700;line-height:1.06;letter-spacing:-.045em;}
}
@media(max-width:380px){
  body.site .site-brand__word,body.site:has(.home-v2) .site-brand__word{font-size:13px;letter-spacing:.24em;}
  body.site .site-action--mobile .locale-selector__trigger{min-width:64px;padding:0 8px;}
  body.site .site-header__actions{gap:6px;}
  body.site .auth-wrap--auth-family{width:calc(100% - 36px);}
  body.site .auth-wrap--auth-family .auth-head h1{font-size:clamp(39px,11.5vw,44px);}
  body.site .auth-wrap--auth-family .auth-head p{font-size:15px;}
  body.site .site-mobile-menu__nav{padding-bottom:12px;}
}
@media(max-height:690px) and (max-width:960px){
  body.site .site-mobile-menu__brand-detail{display:none;}
  body.site .site-mobile-menu__nav{padding-top:84px;padding-bottom:18px;}
  body.site .site-mobile-menu__nav .site-mobile-menu__links a{min-height:54px;}
}
@media(prefers-reduced-motion:reduce){body.site .site-mobile-menu,body.site .site-burger span{transition:none;}}
@media(max-width:620px){.privacy-banner{bottom:10px;align-items:stretch;flex-direction:column;gap:16px;padding:18px;border-radius:16px;}.privacy-banner__actions{flex-direction:row;min-width:0;}.privacy-banner__actions .privacy-choice{flex:1;}.privacy-dialog__panel{padding:22px;}}
@media(max-width:360px){.privacy-banner{width:calc(100% - 16px);bottom:8px;padding:15px;}.privacy-banner__actions{flex-direction:column;}.privacy-dialog__panel{padding:18px;}.privacy-dialog__bottom{align-items:stretch;flex-direction:column;}}

/* Shared customer-facing form controls */
body.site{
  --form-control-height:46px;
  --form-control-radius:12px;
  --form-control-border:rgba(255,255,255,.13);
  --form-control-border-hover:rgba(255,255,255,.24);
  --form-control-surface:rgba(8,10,16,.34);
  --form-control-focus:rgba(173,189,227,.7);
  --form-control-ring:rgba(124,147,204,.13);
  --form-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%23c9cdd7' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m2.5 4.5 3.5 3 3.5-3'/%3E%3C/svg%3E");
}
body.site select.form-control{
  appearance:none;
  -webkit-appearance:none;
  min-width:0;
  height:var(--form-control-height);
  padding:0 43px 0 13px;
  border-color:var(--form-control-border);
  border-radius:var(--form-control-radius);
  background-color:var(--form-control-surface);
  background-image:var(--form-chevron);
  background-repeat:no-repeat;
  background-position:right 15px center;
  background-size:12px 12px;
  color:var(--text);
  font-family:inherit;
  font-size:14px;
  font-weight:500;
  line-height:1.2;
  cursor:pointer;
}
body.site select.form-control:hover{border-color:var(--form-control-border-hover);background-color:rgba(15,18,27,.48);}
body.site select.form-control:focus,
body.site select.form-control:focus-visible{
  border-color:var(--form-control-focus);
  background-color:rgba(9,12,19,.52);
  background-image:var(--form-chevron);
  background-repeat:no-repeat;
  background-position:right 15px center;
  background-size:12px 12px;
  box-shadow:0 0 0 3px var(--form-control-ring);
  outline:none;
}
body.site select.form-control:disabled{
  border-color:rgba(255,255,255,.08);
  background-color:rgba(8,10,16,.2);
  color:rgba(242,243,255,.38);
  cursor:not-allowed;
  opacity:.72;
}
body.site .has-error select.form-control,
body.site select.form-control:user-invalid{
  border-color:rgba(255,120,120,.55);
  box-shadow:0 0 0 3px rgba(255,120,120,.1);
}
body.site label>span em{
  margin-left:4px;
  color:rgba(255,255,255,.4);
  font-style:normal;
  font-size:.9em;
  font-weight:400;
}
body.site input[type="checkbox"]:not([data-privacy-analytics]){
  appearance:none;
  -webkit-appearance:none;
  position:relative;
  box-sizing:border-box;
  width:19px;
  height:19px;
  flex:0 0 19px;
  margin:0;
  border:1px solid rgba(255,255,255,.27);
  border-radius:5px;
  background:rgba(8,10,16,.48);
  cursor:pointer;
  transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;
}
body.site input[type="checkbox"]:not([data-privacy-analytics]):hover{border-color:rgba(255,255,255,.46);}
body.site input[type="checkbox"]:not([data-privacy-analytics])::after{
  content:"";
  position:absolute;
  left:5px;
  top:2px;
  width:5px;
  height:9px;
  border:solid #f7f8fb;
  border-width:0 1.8px 1.8px 0;
  opacity:0;
  transform:rotate(45deg) scale(.65);
  transition:opacity .12s ease,transform .12s ease;
}
body.site input[type="checkbox"]:not([data-privacy-analytics]):checked{
  border-color:rgba(198,137,111,.86);
  background:rgba(175,101,73,.88);
}
body.site input[type="checkbox"]:not([data-privacy-analytics]):checked::after{opacity:1;transform:rotate(45deg) scale(1);}
body.site input[type="checkbox"]:not([data-privacy-analytics]):focus-visible,
body.site .privacy-category input:focus-visible{
  outline:2px solid rgba(191,204,235,.82);
  outline-offset:3px;
}
body.site input[type="checkbox"]:not([data-privacy-analytics]):disabled{cursor:not-allowed;opacity:.45;}
body.site input[type="checkbox"]:not([data-privacy-analytics]):user-invalid{border-color:rgba(255,120,120,.72);box-shadow:0 0 0 3px rgba(255,120,120,.1);}
body.site .business-authority{
  display:flex;
  min-height:44px;
  align-items:flex-start;
  gap:12px;
  cursor:pointer;
}
body.site .business-authority input{margin-top:1px;}
body.site .business-authority>span{min-width:0;padding-top:1px;}
