@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700;800&display=swap');

:root {
  --bg: #050719;
  --bg-soft: #0b0f2d;
  --text: #f5f4fb;
  --muted: #c8c6db;
  --muted-soft: #a7a4bf;
  --gold: #efc86c;
  --gold-strong: #ffdd8d;
  --purple: #9f58ff;
  --pink: #ff64cf;
  --cyan: #33d9ff;
  --navy: #091233;
  --border: rgba(255, 255, 255, 0.14);
  --glass: rgba(9, 12, 36, 0.56);
  --glass-strong: rgba(7, 9, 28, 0.72);
  --shadow: 0 28px 80px rgba(0, 0, 0, 0.3);
  --radius-xl: 36px;
  --radius-lg: 24px;
  --radius-md: 18px;
  --max: 1240px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: 'Inter', system-ui, sans-serif;
  color: var(--text);
  /* A natural night-sky atmosphere: broad, irregular pools of slightly
     lighter and darker navy instead of one flat digital gradient. */
  background:
    radial-gradient(ellipse 92% 54% at 18% 8%, rgba(72, 84, 146, 0.16) 0%, rgba(36, 43, 88, 0.08) 38%, transparent 72%),
    radial-gradient(ellipse 70% 48% at 82% 20%, rgba(28, 92, 126, 0.10) 0%, rgba(13, 38, 70, 0.05) 42%, transparent 76%),
    radial-gradient(ellipse 96% 62% at 48% 48%, rgba(18, 25, 62, 0.18) 0%, transparent 68%),
    radial-gradient(ellipse 76% 50% at 12% 76%, rgba(46, 31, 87, 0.10) 0%, transparent 72%),
    radial-gradient(ellipse 82% 58% at 88% 88%, rgba(8, 12, 34, 0.34) 0%, transparent 70%),
    linear-gradient(180deg, #070a1a 0%, #05081a 32%, #080b20 58%, #040615 100%);
  background-attachment: fixed;
  overflow-x: hidden;
}

a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
p { margin: 0 0 1rem; line-height: 1.7; }
h1, h2, h3, h4, h5, h6 { margin: 0 0 1rem; line-height: 1.05; }
ul { margin: 0; padding: 0; }
button, input, select, textarea { font: inherit; }

.skip-link {
  position: absolute;
  left: 14px;
  top: -48px;
  background: #fff;
  color: #000;
  padding: 10px 14px;
  z-index: 999;
  border-radius: 10px;
}
.skip-link:focus { top: 14px; }
.hidden { display: none; }

#starfield {
  position: fixed;
  inset: 0;
  z-index: -4;
  pointer-events: none;
}

.ambient,
.mouse-glow {
  position: fixed;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(70px);
  z-index: -3;
}
.ambient-one {
  width: 520px;
  height: 520px;
  left: -140px;
  top: 60px;
  background: rgba(163, 82, 255, 0.16);
}
.ambient-two {
  width: 420px;
  height: 420px;
  right: -100px;
  top: 22%;
  background: rgba(41, 212, 255, 0.11);
}
.mouse-glow {
  width: 240px;
  height: 240px;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(255, 217, 116, 0.12), rgba(145, 63, 255, 0.06), transparent 70%);
  z-index: -1;
}

.section {
  width: min(calc(100% - 48px), var(--max));
  margin: 0 auto;
  position: relative;
}

.site-header {
  position: sticky;
  top: 14px;
  z-index: 40;
}
.nav-shell {
  width: min(calc(100% - 24px), 1280px);
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 14px 20px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 22px;
  background: rgba(7, 9, 27, 0.48);
  backdrop-filter: blur(20px);
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.22);
}
.brand {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  font-family: 'Playfair Display', serif;
  font-size: 26px;
  white-space: nowrap;
}
.brand-l {
  font-size: 46px;
  line-height: 0.8;
  background: linear-gradient(180deg, #fff0a6 0%, #f6c453 38%, #c78616 72%, #7a4808 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.brand i {
  color: var(--gold-strong);
  font-style: normal;
  margin-left: 4px;
}
.brand small {
  margin-left: 10px;
  font-family: 'Inter', sans-serif;
  font-size: 11px;
  letter-spacing: 0.44em;
  color: var(--gold);
}
.nav-links {
  display: flex;
  align-items: center;
  gap: 26px;
  margin-left: auto;
}
.nav-links a {
  color: #dcdaea;
  font-size: 14px;
  transition: color .25s ease, transform .25s ease;
}
.nav-links a:hover,
.nav-links a:focus-visible {
  color: #fff;
  transform: translateY(-1px);
}
.menu-toggle {
  display: none;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px 22px;
  border-radius: 999px;
  font-weight: 600;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease, background .28s ease;
}
.button:hover,
.button:focus-visible {
  transform: translateY(-2px);
}
.button span { font-size: 0.96em; }
.button-small {
  padding: 11px 18px;
  font-size: 13px;
}
.button-primary {
  color: #0a0c1b;
  background: linear-gradient(135deg, #ffd66b 0%, #f3bf5b 55%, #f7df95 100%);
  box-shadow: 0 14px 34px rgba(249, 206, 93, 0.32), 0 0 0 1px rgba(255, 255, 255, 0.15) inset;
}
.button-secondary,
.nav-cta {
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(16px);
}
.button-secondary:hover,
.nav-cta:hover,
.button-secondary:focus-visible,
.nav-cta:focus-visible {
  box-shadow: 0 16px 40px rgba(133, 78, 255, 0.18);
  border-color: rgba(255, 255, 255, 0.28);
}

.hero {
  min-height: 92vh;
  display: flex;
  align-items: stretch;
  padding: 120px 0 68px;
  overflow: clip;
  isolation: isolate;
}
.hero-bg {
  position: absolute;
  inset: 0;
  z-index: -2;
  border-radius: 40px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: var(--shadow);
}
.hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform: scale(1.02);
}
.hero-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3, 6, 19, 0.88) 0%, rgba(4, 7, 22, 0.72) 32%, rgba(6, 8, 25, 0.35) 56%, rgba(5, 7, 20, 0.76) 100%),
    linear-gradient(180deg, rgba(6, 9, 22, 0.36) 0%, rgba(4, 6, 18, 0.14) 52%, rgba(6, 8, 23, 0.78) 100%);
}
.hero-content {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(300px, 0.88fr);
  gap: 34px;
  align-items: end;
  padding: 36px;
}
.hero-copy,
.hero-side {
  position: relative;
  z-index: 2;
}
.hero-copy {
  max-width: 650px;
  padding: clamp(24px, 4vw, 38px);
  align-self: center;
}
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 22px;
  padding: 11px 16px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: #e4e1ef;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.eyebrow span {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: radial-gradient(circle, #fff6be 0%, var(--gold) 50%, rgba(255, 214, 105, 0.1) 100%);
  box-shadow: 0 0 18px rgba(255, 210, 90, 0.8);
}
#hero-title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(4rem, 7vw, 7.4rem);
  letter-spacing: -0.05em;
  margin-bottom: 22px;
}
.shimmer {
  display: inline-block;
  background: linear-gradient(110deg, #ffffff 12%, #f7cf66 24%, #ffffff 38%, #f2d987 48%, #fff 62%);
  background-size: 220% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: shimmer 4.2s linear infinite;
}
.gradient-text {
  display: inline-block;
  background: linear-gradient(90deg, #ffd46b 0%, #ff87df 28%, #b16eff 56%, #4e86ff 78%, #49dcff 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: gradientMove 8s linear infinite alternate;
}
.hero-copy > p {
  font-size: clamp(1rem, 1.5vw, 1.2rem);
  color: #e5e3f3;
  max-width: 620px;
}
.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 30px;
}
.trust-line {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 24px;
  color: #cecadd;
  font-size: 14px;
}
.spark-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: radial-gradient(circle, #fff 0%, #ffde84 40%, #ffa7f0 100%);
  box-shadow: 0 0 18px rgba(255, 211, 117, 0.7);
}
.hero-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}
.hero-tags span {
  padding: 9px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.08);
  color: #efeef8;
  font-size: 13px;
}

.hero-side {
  display: grid;
  gap: 18px;
  align-self: end;
}
.hero-panel {
  padding: 24px 24px 22px;
  border-radius: 24px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: linear-gradient(145deg, rgba(12, 15, 44, 0.68), rgba(255, 255, 255, 0.04));
  backdrop-filter: blur(22px);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.26);
}
.panel-kicker,
.kicker {
  margin-bottom: 16px;
  color: var(--gold);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.18em;
}
.hero-panel h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(1.8rem, 2.6vw, 2.45rem);
  letter-spacing: -0.03em;
  margin-bottom: 12px;
}
.hero-panel p,
.section-heading > p,
.about-copy > p:not(.kicker),
.contact-copy > p:not(.kicker),
.timeline p,
.service-card p {
  color: var(--muted);
}
.hero-panel-services ul {
  list-style: none;
  display: grid;
  gap: 14px;
}
.hero-panel-services li {
  display: grid;
  gap: 4px;
  padding: 14px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.09);
}
.hero-panel-services li:first-child { border-top: 0; padding-top: 0; }
.hero-panel-services strong {
  font-size: 15px;
  color: #fff;
}
.hero-panel-services span {
  font-size: 14px;
  color: #bdbad2;
}

.hero-floats {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}
.hero-badge {
  position: absolute;
  min-width: 140px;
  padding: 14px 18px;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(10, 12, 34, 0.6);
  backdrop-filter: blur(16px);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.24);
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.hero-badge b { color: #fff; font-size: 13px; }
.hero-badge span { color: #b8b5ce; font-size: 12px; }
.badge-one { top: 17%; right: 8%; animation: float 6s ease-in-out infinite; }
.badge-two { bottom: 20%; right: 34%; animation: float 7s ease-in-out infinite .8s; }
.badge-three { top: 54%; left: 5.5%; animation: float 7.4s ease-in-out infinite 1.2s; }

.scroll-cue {
  position: absolute;
  left: 50%;
  bottom: 26px;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 10px;
  color: #c3bfd7;
  font-size: 10px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  z-index: 3;
}
.scroll-cue span {
  width: 1px;
  height: 34px;
  background: linear-gradient(var(--gold), transparent);
  animation: scrollLine 2s infinite;
}

.intro {
  padding: 132px 0 24px;
  text-align: center;
}
.intro h2,
.section-heading h2,
.about h2,
.contact h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(2.8rem, 5vw, 4.4rem);
  letter-spacing: -0.04em;
  margin-bottom: 20px;
}
.lead {
  font-size: clamp(1.05rem, 1.7vw, 1.24rem);
  color: #d7d4e4;
}
.intro .lead {
  max-width: 900px;
  margin-inline: auto;
  color: #c7c4da;
}

.services,
.process,
.about,
.contact {
  padding: 120px 0;
}
.section-heading {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 38px;
  margin-bottom: 54px;
}
.section-heading > p {
  max-width: 430px;
  margin-bottom: 8px;
}

.service-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.service-card {
  position: relative;
  min-height: 500px;
  display: flex;
  flex-direction: column;
  padding: 34px;
  border-radius: 28px;
  border: 1px solid var(--border);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.02));
  backdrop-filter: blur(18px);
  overflow: hidden;
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
  box-shadow: 0 20px 70px rgba(0, 0, 0, 0.15);
}
.service-card::before {
  content: '';
  position: absolute;
  width: 180px;
  height: 180px;
  right: -100px;
  top: -90px;
  border-radius: 50%;
  background: rgba(159, 88, 255, 0.34);
  filter: blur(70px);
  opacity: 0.24;
  transition: opacity .35s ease;
}
.service-card:hover {
  transform: translateY(-10px);
  border-color: rgba(255, 255, 255, 0.24);
  box-shadow: 0 36px 96px rgba(0, 0, 0, 0.32);
}
.service-card:hover::before { opacity: 0.5; }
.service-card.featured {
  background: linear-gradient(145deg, rgba(116, 67, 208, 0.24), rgba(255, 255, 255, 0.04));
  border-color: rgba(239, 200, 108, 0.28);
}
.service-number {
  font-size: 11px;
  letter-spacing: 0.2em;
  color: #8f8ba6;
}
.service-icon {
  margin: 44px 0 20px;
  font-size: 36px;
  color: var(--gold);
  text-shadow: 0 0 30px rgba(255, 199, 79, 0.45);
}
.service-card h3 {
  font-family: 'Playfair Display', serif;
  font-size: 30px;
  margin-bottom: 14px;
}
.service-card ul {
  list-style: none;
  margin-top: 6px;
  color: #d8d5e5;
  font-size: 14px;
}
.service-card li {
  padding: 9px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}
.service-card li::before {
  content: '✦';
  font-size: 8px;
  color: var(--gold);
  margin-right: 10px;
}
.service-card a {
  margin-top: auto;
  color: #f6d480;
  font-size: 14px;
}
.service-card a span { float: right; }
.popular {
  position: absolute;
  right: 22px;
  top: 22px;
  padding: 7px 11px;
  border-radius: 999px;
  border: 1px solid rgba(239, 200, 108, 0.33);
  color: #efd18b;
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.process {
  isolation: isolate;
}
.process-glow {
  position: absolute;
  inset: 20% 5% auto;
  height: 54%;
  z-index: -1;
  background: radial-gradient(ellipse, rgba(92, 36, 175, 0.19), transparent 66%);
  filter: blur(46px);
}
.timeline {
  list-style: none;
  margin: 10px 0 0;
  position: relative;
}
.timeline::before {
  content: '';
  position: absolute;
  left: 45px;
  top: 52px;
  bottom: 52px;
  width: 1px;
  background: linear-gradient(transparent, var(--purple), var(--cyan), transparent);
}
.timeline li {
  display: grid;
  grid-template-columns: 90px 1fr;
  gap: 30px;
  padding: 32px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.timeline li > span {
  width: 90px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  background: rgba(16, 13, 56, 0.8);
  color: #e6c97f;
  font-size: 11px;
  letter-spacing: 0.2em;
  position: relative;
  z-index: 2;
}
.timeline h3 {
  font-family: 'Playfair Display', serif;
  font-size: 30px;
  margin-bottom: 7px;
}
.timeline p {
  max-width: 720px;
  margin: 0;
}

.about {
  display: grid;
  grid-template-columns: 1fr 0.95fr;
  gap: 90px;
  align-items: center;
}
.about-portrait {
  position: relative;
  min-height: 650px;
  display: flex;
  align-items: end;
}
.about-portrait img {
  position: relative;
  z-index: 2;
  width: 100%;
  filter: none;
  mask-image:
    linear-gradient(to bottom, #000 0 78%, transparent 99%),
    radial-gradient(ellipse, #000 60%, transparent 100%);
  -webkit-mask-composite: source-in;
  mask-composite: intersect;
}
.portrait-halo {
  position: absolute;
  inset: 10% 3% 7%;
  border-radius: 50%;
  background: radial-gradient(circle at 55% 40%, rgba(255, 199, 88, 0.25), rgba(159, 72, 255, 0.22) 30%, transparent 70%);
  filter: blur(20px);
}
.founder-tag {
  position: absolute;
  left: 2%;
  bottom: 8%;
  z-index: 3;
  display: flex;
  flex-direction: column;
  padding: 15px 20px;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  background: rgba(8, 8, 31, 0.66);
  backdrop-filter: blur(16px);
  box-shadow: var(--shadow);
}
.founder-tag span {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: #e9c978;
}
.founder-tag strong {
  font-family: 'Playfair Display', serif;
  font-size: 18px;
}
.about-copy blockquote {
  margin: 34px 0 0;
  padding-left: 22px;
  border-left: 1px solid var(--gold);
  font-family: 'Playfair Display', serif;
  font-size: 21px;
  font-style: italic;
  color: #ede8f4;
}

.contact-panel {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: 75px;
  padding: 64px;
  border-radius: var(--radius-xl);
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: linear-gradient(125deg, rgba(75, 42, 141, 0.22), rgba(255, 255, 255, 0.035));
  backdrop-filter: blur(20px);
  box-shadow: var(--shadow);
}
.contact-panel::after {
  content: '';
  position: absolute;
  width: 420px;
  height: 420px;
  right: -170px;
  bottom: -220px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(29, 191, 231, 0.2), transparent 68%);
  pointer-events: none;
}
.contact-note {
  margin-top: 35px;
  display: flex;
  align-items: center;
  gap: 14px;
}
.contact-note > span {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: var(--gold);
  border: 1px solid rgba(247, 198, 93, 0.3);
  box-shadow: 0 0 20px rgba(247, 198, 93, 0.12);
}
.contact-note div {
  display: flex;
  flex-direction: column;
}
.contact-note small { color: #9d9ab2; }
.contact-form {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 17px;
}
.field-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.contact-form label {
  display: grid;
  gap: 7px;
  color: #cbc9da;
  font-size: 12px;
}
.contact-form input,
.contact-form textarea,
.contact-form select {
  width: 100%;
  padding: 13px 14px;
  color: #fff;
  border-radius: 13px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(4, 6, 24, 0.6);
  outline: none;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.contact-form option { background: #090b26; }
.contact-form input:focus,
.contact-form textarea:focus,
.contact-form select:focus {
  border-color: #b17dff;
  box-shadow: 0 0 0 3px rgba(177, 125, 255, 0.12);
}
.form-button {
  width: 100%;
  margin-top: 5px;
  border: 0;
}

.footer {
  padding: 70px 0 35px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 30px;
  border-top: 1px solid rgba(255, 255, 255, 0.09);
}
.footer-brand p {
  margin-top: 20px;
  color: #aaa7bd;
  font-family: 'Playfair Display', serif;
  font-style: italic;
}
.footer-links {
  display: flex;
  gap: 25px;
  color: #bcb9cd;
  font-size: 13px;
}
.footer-bottom {
  grid-column: 1 / -1;
  display: flex;
  justify-content: space-between;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  color: #77758c;
  font-size: 11px;
}

.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity .85s cubic-bezier(.2, .8, .2, 1), transform .85s cubic-bezier(.2, .8, .2, 1);
}
.reveal.visible {
  opacity: 1;
  transform: none;
}

@keyframes shimmer {
  to { background-position: -250% center; }
}
@keyframes gradientMove {
  to { background-position: 220% center; }
}
@keyframes float {
  50% { transform: translateY(-12px) rotate(0.4deg); }
}
@keyframes scrollLine {
  0%, 100% {
    opacity: 0.2;
    transform: scaleY(0.5);
    transform-origin: top;
  }
  50% {
    opacity: 1;
    transform: scaleY(1);
  }
}

@media (max-width: 1100px) {
  .hero-content {
    grid-template-columns: 1fr;
    gap: 22px;
    align-items: center;
  }
  .hero-copy,
  .hero-side {
    max-width: 100%;
  }
  .hero-side {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .badge-one { right: 4%; top: 14%; }
  .badge-two { right: 24%; bottom: 14%; }
  .badge-three { left: 4%; top: 60%; }
  .about {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .about-portrait {
    max-width: 650px;
    margin-inline: auto;
  }
  .contact-panel {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}

@media (max-width: 980px) {
  .nav-links {
    display: none;
    position: absolute;
    top: 78px;
    left: 0;
    right: 0;
    margin: 0;
    padding: 22px;
    flex-direction: column;
    align-items: flex-start;
    border-radius: 20px;
    border: 1px solid var(--border);
    background: rgba(5, 7, 28, 0.96);
  }
  .nav-links.open { display: flex; }
  .menu-toggle {
    margin-left: auto;
    display: grid;
    gap: 6px;
    border: 0;
    background: transparent;
  }
  .menu-toggle span {
    display: block;
    width: 23px;
    height: 1px;
    background: #fff;
  }
  .nav-cta { display: none; }
  .hero {
    min-height: auto;
    padding-top: 118px;
  }
  .hero-bg { border-radius: 32px; }
  .hero-content { padding: 20px; }
  .hero-copy {
    text-align: center;
    padding: 22px;
    margin-inline: auto;
  }
  .eyebrow,
  .trust-line,
  .hero-actions,
  .hero-tags {
    justify-content: center;
  }
  .hero-side {
    grid-template-columns: 1fr;
  }
  .scroll-cue { display: none; }
  .service-grid { grid-template-columns: 1fr; }
  .service-card { min-height: auto; }
  .section-heading {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
}

@media (max-width: 640px) {
  .section {
    width: min(calc(100% - 28px), var(--max));
  }
  .site-header { top: 10px; }
  .nav-shell {
    width: calc(100% - 20px);
    padding: 13px 16px;
  }
  .brand { font-size: 21px; }
  .brand-l { font-size: 36px; }
  .hero {
    padding-top: 108px;
    padding-bottom: 28px;
  }
  .hero-bg img {
    object-position: 64% center;
  }
  .hero-overlay {
    background:
      linear-gradient(180deg, rgba(4, 6, 18, 0.8) 0%, rgba(5, 8, 24, 0.54) 45%, rgba(5, 8, 24, 0.88) 100%),
      linear-gradient(90deg, rgba(4, 6, 19, 0.86) 0%, rgba(4, 7, 22, 0.18) 100%);
  }
  .hero-content {
    padding: 16px;
    gap: 16px;
  }
  .hero-copy {
    text-align: left;
    padding: 18px 12px 12px;
  }
  .eyebrow,
  .trust-line,
  .hero-actions,
  .hero-tags {
    justify-content: flex-start;
  }
  #hero-title {
    font-size: clamp(3.2rem, 15vw, 4.4rem);
  }
  .hero-actions {
    flex-direction: column;
  }
  .hero-actions .button {
    width: 100%;
  }
  .hero-panel {
    padding: 20px;
    border-radius: 20px;
  }
  .hero-floats {
    display: none;
  }
  .intro,
  .services,
  .process,
  .about,
  .contact {
    padding: 84px 0;
  }
  .intro {
    padding-top: 96px;
    padding-inline: 0;
  }
  .intro h2,
  .section-heading h2,
  .about h2,
  .contact h2 {
    font-size: 42px;
  }
  .lead { font-size: 17px; }
  .service-card {
    padding: 27px;
  }
  .timeline::before { left: 22px; }
  .timeline li {
    grid-template-columns: 46px 1fr;
    gap: 17px;
  }
  .timeline li > span {
    width: 46px;
    height: 35px;
    font-size: 9px;
  }
  .timeline h3 { font-size: 25px; }
  .about-portrait { min-height: 420px; }
  .contact-panel {
    padding: 28px 20px;
    border-radius: 25px;
  }
  .field-row {
    grid-template-columns: 1fr;
  }
  .footer {
    grid-template-columns: 1fr;
  }
  .footer-links {
    flex-wrap: wrap;
  }
  .footer-bottom {
    flex-direction: column;
    gap: 7px;
  }
  .mouse-glow { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  .reveal {
    opacity: 1;
    transform: none;
  }
}

/* Brilliance signature package emphasis */
.service-card.featured {
  position: relative;
  isolation: isolate;
  border-color: rgba(255, 222, 137, 0.68);
  background:
    linear-gradient(145deg, rgba(111, 65, 221, 0.4), rgba(25, 28, 78, 0.8)),
    radial-gradient(circle at 50% 0%, rgba(255, 226, 145, 0.2), transparent 46%);
  box-shadow:
    0 36px 110px rgba(102, 57, 218, 0.38),
    0 0 44px rgba(255, 213, 110, 0.2),
    inset 0 0 0 1px rgba(255, 255, 255, 0.08);
  transform: translateY(-8px);
}
.service-card.featured::before {
  width: 280px;
  height: 280px;
  right: -95px;
  top: -120px;
  background: radial-gradient(circle, rgba(255, 229, 150, 0.58), rgba(204, 101, 255, 0.36) 42%, transparent 72%);
  filter: blur(46px);
  opacity: 0.78;
  animation: brilliancePulse 4.8s ease-in-out infinite;
}
.service-card.featured::after {
  content: '';
  position: absolute;
  inset: -2px;
  z-index: -1;
  border-radius: inherit;
  padding: 2px;
  background: linear-gradient(120deg, transparent 10%, rgba(255,255,255,.72) 28%, rgba(255,218,112,.92) 42%, rgba(176,103,255,.86) 60%, transparent 82%);
  background-size: 240% 100%;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  animation: brillianceSweep 5.5s linear infinite;
  pointer-events: none;
}
.service-card.featured .service-icon {
  color: #ffe69d;
  text-shadow:
    0 0 14px rgba(255, 236, 169, 0.95),
    0 0 42px rgba(255, 202, 91, 0.62),
    0 0 72px rgba(172, 91, 255, 0.56);
  animation: brillianceStar 3s ease-in-out infinite;
}
.service-card.featured h3 {
  background: linear-gradient(90deg, #fff 0%, #ffe8a7 32%, #fff 50%, #d8b8ff 76%, #fff 100%);
  background-size: 220% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: brillianceText 4.2s linear infinite;
}
.service-card.featured .popular {
  background: rgba(255, 218, 113, 0.12);
  border-color: rgba(255, 229, 157, 0.72);
  color: #ffeaad;
  box-shadow: 0 0 24px rgba(255, 218, 113, 0.24);
}
.service-card.featured:hover {
  transform: translateY(-14px) scale(1.012);
  box-shadow:
    0 46px 130px rgba(102, 57, 218, 0.48),
    0 0 58px rgba(255, 213, 110, 0.3);
}
@keyframes brilliancePulse {
  0%, 100% { transform: scale(.9); opacity: .58; }
  50% { transform: scale(1.08); opacity: .95; }
}
@keyframes brillianceSweep {
  to { background-position: -240% 0; }
}
@keyframes brillianceStar {
  0%, 100% { transform: scale(1) rotate(0deg); }
  50% { transform: scale(1.13) rotate(5deg); }
}
@keyframes brillianceText {
  to { background-position: -220% 0; }
}
@media (max-width: 980px) {
  .service-card.featured { transform: none; }
  .service-card.featured:hover { transform: translateY(-8px); }
}

/* Services package title update — final */
.service-subtitle {
  margin: .45rem 0 .9rem;
  font-size: .96rem;
  line-height: 1.55;
  opacity: .92;
}
.service-card.featured {
  isolation: isolate;
  border-color: rgba(255, 215, 128, .72);
  box-shadow: 0 0 0 1px rgba(255, 224, 154, .22), 0 22px 65px rgba(106, 57, 184, .28), 0 0 48px rgba(255, 201, 92, .16);
  background: linear-gradient(145deg, rgba(255,255,255,.13), rgba(154,101,224,.12), rgba(255,205,111,.08));
  background-size: 220% 220%;
  animation: brillianceGradient 8s ease infinite;
}
.service-card.featured::after {
  content: "";
  position: absolute;
  inset: -28px;
  z-index: -1;
  border-radius: inherit;
  background: radial-gradient(circle, rgba(255,206,111,.2), transparent 68%);
  filter: blur(18px);
  pointer-events: none;
}
.service-card.featured h3 {
  background: linear-gradient(90deg, #fff4c5, #d9a94f, #fff9dd, #c78d2d, #fff4c5);
  background-size: 250% auto;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: brillianceTitle 4.2s linear infinite;
  text-shadow: 0 0 24px rgba(255,210,118,.18);
}
.service-card.featured .popular { animation: brillianceBadge 2.8s ease-in-out infinite; }
.service-card.featured:hover { transform: translateY(-10px) scale(1.018); box-shadow: 0 0 0 1px rgba(255,224,154,.35), 0 30px 85px rgba(106,57,184,.38), 0 0 62px rgba(255,201,92,.24); }
.brilliance-sparkles { position:absolute; inset:0; overflow:hidden; border-radius:inherit; pointer-events:none; }
.brilliance-sparkles span { position:absolute; opacity:.15; animation: brillianceTwinkle 3.2s ease-in-out infinite; }
.brilliance-sparkles span:nth-child(1){top:12%;left:13%}.brilliance-sparkles span:nth-child(2){top:25%;right:10%;animation-delay:.7s}.brilliance-sparkles span:nth-child(3){top:55%;left:8%;animation-delay:1.4s}.brilliance-sparkles span:nth-child(4){bottom:18%;right:12%;animation-delay:2.1s}.brilliance-sparkles span:nth-child(5){bottom:9%;left:43%;animation-delay:2.7s}
@keyframes brillianceGradient { 0%,100%{background-position:0% 50%} 50%{background-position:100% 50%} }
@keyframes brillianceTitle { to{background-position:250% center} }
@keyframes brillianceBadge { 0%,100%{transform:scale(1);box-shadow:0 0 0 rgba(255,215,128,0)} 50%{transform:scale(1.04);box-shadow:0 0 20px rgba(255,215,128,.28)} }
@keyframes brillianceTwinkle { 0%,100%{opacity:.08;transform:scale(.7) rotate(0)} 50%{opacity:.75;transform:scale(1.2) rotate(18deg)} }
@media (prefers-reduced-motion: reduce) { .service-card.featured,.service-card.featured h3,.service-card.featured .popular,.brilliance-sparkles span{animation:none!important} }

/* Homepage composition correction: keep Lumi fully visible and remove overlay cards. */
.hero-content {
  grid-template-columns: minmax(0, 680px) 1fr;
  align-items: center;
  padding: clamp(28px, 4vw, 52px);
}
.hero-copy {
  max-width: 680px;
  padding: clamp(20px, 3vw, 34px) 0;
}
.hero-overlay {
  background:
    linear-gradient(90deg, rgba(3, 6, 19, 0.9) 0%, rgba(4, 7, 22, 0.68) 34%, rgba(5, 8, 24, 0.2) 57%, rgba(5, 7, 20, 0.06) 100%),
    linear-gradient(180deg, rgba(6, 9, 22, 0.25) 0%, rgba(4, 6, 18, 0.04) 55%, rgba(6, 8, 23, 0.58) 100%);
}
.hero-bg img {
  object-position: center center;
}

/* Founder portrait correction: preserve the original square proportions. */
.about-portrait {
  min-height: 0;
  align-items: center;
  justify-content: center;
}
.about-portrait img {
  width: min(100%, 560px);
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  object-position: center;
  border-radius: 30px;
  mask-image: none;
  -webkit-mask-image: none;
}
.portrait-halo {
  inset: 8% 8%;
}
.founder-tag {
  left: max(2%, calc(50% - 280px));
  bottom: 4%;
}

@media (max-width: 980px) {
  .hero-content {
    grid-template-columns: 1fr;
    align-items: end;
  }
  .hero-copy {
    max-width: 640px;
  }
  .hero-overlay {
    background:
      linear-gradient(90deg, rgba(3, 6, 19, 0.88) 0%, rgba(4, 7, 22, 0.54) 58%, rgba(5, 7, 20, 0.1) 100%),
      linear-gradient(180deg, rgba(6, 9, 22, 0.2) 0%, rgba(4, 6, 18, 0.08) 48%, rgba(6, 8, 23, 0.72) 100%);
  }
  .about-portrait img {
    width: min(100%, 620px);
  }
  .founder-tag {
    left: 4%;
  }
}

@media (max-width: 640px) {
  .hero {
    min-height: 780px;
    padding-top: 100px;
  }
  .hero-content {
    padding: 24px;
    align-items: end;
  }
  .hero-bg img {
    object-position: 61% center;
  }
  .hero-overlay {
    background:
      linear-gradient(180deg, rgba(5, 7, 20, 0.08) 0%, rgba(5, 7, 20, 0.18) 35%, rgba(4, 6, 18, 0.9) 73%, rgba(4, 6, 18, 0.96) 100%);
  }
  .about-portrait {
    min-height: 0;
  }
  .about-portrait img {
    width: 100%;
    border-radius: 24px;
  }
  .founder-tag {
    left: 14px;
    right: 14px;
    bottom: 14px;
  }
}

/* Complimentary Spark Session badge */
.service-card .complimentary {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin-bottom: 1rem;
  padding: 0.42rem 0.78rem;
  border: 1px solid rgba(255, 223, 159, 0.38);
  border-radius: 999px;
  background: rgba(255, 218, 137, 0.08);
  color: #ffe0a3;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.subscription-badge{position:absolute;top:18px;right:18px;min-width:168px;height:42px;padding:0 20px;border-radius:999px;background:rgba(8,12,38,.28);border:1px solid rgba(242,210,122,.92);color:#f2d27a;font-size:11px;font-weight:800;letter-spacing:.12em;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1;white-space:nowrap;box-shadow:0 0 14px rgba(242,210,122,.18),inset 0 0 12px rgba(242,210,122,.05);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);}
.service-card{position:relative;}


/* Final mobile homepage correction: remove Lumi on phones while preserving the cosmic brand atmosphere. */
.contact-email {
  margin-top: 1rem;
  color: rgba(255,255,255,.78);
}
.contact-email a {
  color: var(--gold, #ffd77a);
  font-weight: 700;
  text-decoration: none;
  overflow-wrap: anywhere;
}
.contact-email a:hover,
.contact-email a:focus-visible {
  text-decoration: underline;
}

@media (max-width: 640px) {
  .hero-bg {
    background:
      radial-gradient(circle at 82% 24%, rgba(117, 73, 255, .34), transparent 28%),
      radial-gradient(circle at 16% 58%, rgba(243, 176, 82, .16), transparent 24%),
      radial-gradient(circle at 55% 42%, rgba(56, 157, 255, .16), transparent 34%),
      linear-gradient(160deg, #07081f 0%, #111047 48%, #090a25 100%);
  }
  .hero-bg img {
    display: none !important;
  }
  .hero-bg::before,
  .hero-bg::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
  }
  .hero-bg::before {
    opacity: .7;
    background-image:
      radial-gradient(circle, rgba(255,255,255,.9) 0 1px, transparent 1.5px),
      radial-gradient(circle, rgba(255,218,142,.8) 0 1px, transparent 1.5px);
    background-size: 42px 42px, 67px 67px;
    background-position: 8px 12px, 27px 31px;
  }
  .hero-bg::after {
    background: linear-gradient(180deg, rgba(5,7,20,.06) 0%, rgba(4,6,18,.46) 58%, rgba(4,6,18,.9) 100%);
  }
  .hero-overlay {
    background: linear-gradient(180deg, rgba(5,7,20,.04) 0%, rgba(4,6,18,.25) 55%, rgba(4,6,18,.72) 100%);
  }
}

/* Premium branded consultation confirmation page */
.form-status{margin:.8rem 0 0;color:#ffd89a;font-size:.92rem;line-height:1.5}
.form-button:disabled{opacity:.72;cursor:wait}
.thank-you-page{min-height:100svh;overflow-x:hidden;background:radial-gradient(circle at 50% -10%,#262066 0,rgba(19,15,61,.72) 28%,#07091d 66%,#03040e 100%);color:#fff}
.thank-you-page #starfield{position:fixed;inset:0;z-index:0;pointer-events:none}
.thank-you-orb{position:fixed;border-radius:999px;filter:blur(90px);opacity:.22;pointer-events:none;z-index:0}
.thank-you-orb-one{width:360px;height:360px;right:-100px;top:10%;background:#8f50ff}
.thank-you-orb-two{width:300px;height:300px;left:-100px;bottom:4%;background:#f6b84f}
.thank-you-shell{position:relative;z-index:1;min-height:100svh;display:grid;place-items:center;padding:40px 20px}
.thank-you-card{width:min(900px,100%);padding:clamp(34px,6vw,72px);text-align:center;border:1px solid rgba(255,220,154,.22);border-radius:32px;background:linear-gradient(145deg,rgba(16,18,51,.88),rgba(8,10,31,.78));box-shadow:0 35px 100px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.08);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.thank-you-brand{display:inline-flex;margin-bottom:24px}
.thank-you-brand img{width:min(280px,72vw);height:auto;display:block;filter:drop-shadow(0 8px 30px rgba(247,195,84,.14))}
.thank-you-icon{width:74px;height:74px;margin:0 auto 22px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(255,221,152,.56);background:radial-gradient(circle at 35% 30%,rgba(255,236,190,.28),rgba(249,181,70,.1));box-shadow:0 0 40px rgba(246,183,75,.2)}
.thank-you-icon span{font-size:31px;color:#ffd77b;font-weight:700}
.thank-you-kicker{margin:0 0 14px;color:#d3a7ff;font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.thank-you-card h1{margin:0;font-family:var(--font-display,Georgia,serif);font-size:clamp(42px,7vw,76px);line-height:1.02;font-weight:500;letter-spacing:-.035em;background:linear-gradient(95deg,#fff 16%,#ffe0a2 51%,#d7a8ff 92%);-webkit-background-clip:text;background-clip:text;color:transparent}
.thank-you-lead{max-width:680px;margin:22px auto 34px;color:rgba(255,255,255,.76);font-size:clamp(1rem,2vw,1.15rem);line-height:1.75}
.thank-you-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 auto 34px;text-align:left}
.thank-you-steps>div{min-height:156px;padding:22px;border:1px solid rgba(255,255,255,.09);border-radius:20px;background:rgba(255,255,255,.035)}
.thank-you-steps>div>span{display:block;margin-bottom:16px;color:#ffd47d;font-size:.75rem;font-weight:900;letter-spacing:.14em}
.thank-you-steps p{margin:0}
.thank-you-steps strong{display:block;margin-bottom:8px;color:#fff;font-size:.98rem}
.thank-you-steps small{display:block;color:rgba(255,255,255,.62);font-size:.84rem;line-height:1.55}
.thank-you-actions{display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap}
.thank-you-email{color:#f4d288;text-decoration:none;font-weight:700;overflow-wrap:anywhere}
.thank-you-email:hover,.thank-you-email:focus-visible{text-decoration:underline}
.thank-you-signoff{margin:34px 0 0;color:rgba(255,255,255,.47);font-family:Georgia,serif;font-style:italic}
.thank-you-signoff span{color:#f5c35e;margin-left:5px}
@media(max-width:760px){.thank-you-shell{padding:18px 12px}.thank-you-card{padding:34px 20px;border-radius:24px}.thank-you-steps{grid-template-columns:1fr}.thank-you-steps>div{min-height:0}.thank-you-actions{flex-direction:column;gap:16px}}


/* 2026 package and pricing update */
.package-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; }
.package-grid .service-card { min-height: 690px; }
.investment { margin: -4px 0 16px; color: #d8d5e5 !important; font-size: 14px; }
.investment strong { color: #ffe09a; font-size: 17px; }
.role-note { margin-top: 14px; color: #f6d480 !important; font-size: 13px; font-style: italic; }
.luxury-badge { position:absolute; right:22px; top:22px; padding:7px 11px; border-radius:999px; border:1px solid rgba(176,211,255,.38); color:#dcecff; font-size:10px; letter-spacing:.12em; text-transform:uppercase; background:rgba(102,151,226,.10); }
.radiance-card { border-color: rgba(174,211,255,.25); background: linear-gradient(145deg, rgba(66,104,171,.18), rgba(255,255,255,.035)); }
.spark-feature { display:grid; grid-template-columns:1.1fr .9fr auto; gap:32px; align-items:center; margin-bottom:70px; padding:34px; border-radius:28px; border:1px solid rgba(255,218,137,.25); background:linear-gradient(120deg,rgba(255,218,137,.09),rgba(134,76,220,.10)); box-shadow:0 24px 70px rgba(0,0,0,.18); }
.spark-feature .complimentary { display:inline-flex; padding:.42rem .78rem; border:1px solid rgba(255,223,159,.38); border-radius:999px; background:rgba(255,218,137,.08); color:#ffe0a3; font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; margin-bottom:14px; }
.spark-feature h3,.package-heading h3,.ala-carte h3,.pricing-notice h3 { font-family:'Playfair Display',serif; }
.spark-feature h3 { font-size:clamp(2rem,3vw,3rem); margin-bottom:10px; }
.spark-feature ul { list-style:none; color:#ddd9ea; }
.spark-feature li { padding:8px 0; }
.spark-feature li::before { content:'✦'; color:var(--gold); font-size:8px; margin-right:10px; }
.spark-feature .button { white-space:nowrap; }
.package-heading { margin:0 0 28px; text-align:center; }
.package-heading h3 { font-size:clamp(2rem,3vw,3rem); }
.ala-carte { margin-top:76px; padding:clamp(28px,5vw,56px); border-radius:32px; border:1px solid rgba(255,255,255,.12); background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.018)); }
.ala-carte-intro { max-width:720px; margin-bottom:36px; }
.ala-carte-intro h3 { font-size:clamp(2rem,3.5vw,3.2rem); margin-bottom:10px; }
.addon-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.addon-group { padding:24px; border-radius:22px; border:1px solid rgba(255,255,255,.10); background:rgba(5,8,28,.38); }
.addon-group h4 { margin-bottom:16px; color:#f6d480; font-size:16px; letter-spacing:.04em; }
.addon-group p { display:flex; justify-content:space-between; gap:18px; padding:11px 0; border-bottom:1px solid rgba(255,255,255,.07); color:#d8d5e5; font-size:14px; }
.addon-group p:last-child { border-bottom:0; }
.addon-group strong { color:#fff; text-align:right; white-space:nowrap; }
.pricing-notice { display:flex; gap:20px; align-items:flex-start; margin-top:28px; padding:26px 30px; border-radius:22px; border:1px solid rgba(255,218,137,.22); background:rgba(255,218,137,.055); }
.pricing-notice > span { color:var(--gold); font-size:24px; text-shadow:0 0 22px rgba(255,199,79,.65); }
.pricing-notice h3 { margin-bottom:6px; font-size:22px; }
.pricing-notice p { color:var(--muted); font-size:14px; }
@media (max-width: 1050px) { .package-grid { grid-template-columns:1fr; } .package-grid .service-card { min-height:auto; } .spark-feature { grid-template-columns:1fr; } .spark-feature .button { width:fit-content; } }
@media (max-width: 700px) { .addon-grid { grid-template-columns:1fr; } .ala-carte { padding:24px 18px; } .addon-group p { align-items:flex-start; } .spark-feature { padding:24px 20px; } .pricing-notice { padding:22px 18px; } }

/* Spark Session booking confirmation */
.spark-prep{max-width:720px;margin:0 auto 24px;padding:24px 26px;border:1px solid rgba(255,215,123,.18);border-radius:20px;background:linear-gradient(145deg,rgba(246,184,79,.08),rgba(153,92,255,.06));text-align:left}
.spark-prep h2{margin:0 0 10px;color:#fff;font-family:var(--font-display,Georgia,serif);font-size:clamp(1.35rem,3vw,1.8rem);font-weight:500}
.spark-prep p{margin:0;color:rgba(255,255,255,.7);line-height:1.7}
.spark-reassurance{max-width:690px;margin:0 auto 30px;color:rgba(255,255,255,.7);line-height:1.7}
.spark-reassurance strong{color:#f6d58d}
.spark-change-note{margin:24px 0 0;color:rgba(255,255,255,.56);font-size:.9rem}

/* Premium services refresh — July 2026 */
.customize-note{margin:2rem 0 0;font-size:1.05rem;line-height:1.75;color:var(--text, #f5f2ff);max-width:760px}
.contact-booking-button{margin:1.25rem 0 1.5rem;display:inline-flex}
.addon-group p{justify-content:flex-start}
.service-card .role-note{margin-top:1.25rem;font-size:.88rem;line-height:1.6;opacity:.78}


/* Embedded Spark Session and refined premium service presentation */
.booking { position:relative; padding-top:90px; padding-bottom:90px; }
.booking-shell { width:min(1180px,calc(100% - 40px)); margin:0 auto; padding:clamp(26px,4vw,50px); border:1px solid rgba(255,220,154,.18); border-radius:32px; background:linear-gradient(145deg,rgba(18,20,54,.92),rgba(7,9,29,.88)); box-shadow:0 30px 90px rgba(0,0,0,.3); }
.booking-heading { max-width:760px; margin:0 auto 30px; text-align:center; }
.booking-heading h2 { margin:.35rem 0 1rem; font-family:'Playfair Display',serif; font-size:clamp(2.4rem,5vw,4.8rem); line-height:1.04; }
.booking-heading p:last-child { color:#bbb8c9; line-height:1.75; }
.calendly-frame { overflow:hidden; min-height:760px; border:1px solid rgba(255,255,255,.1); border-radius:24px; background:#07091d; }
.calendly-inline-widget { width:100%; }

/* Compact additional services block */
.ala-carte { margin-top:42px; padding:26px 30px; border-radius:22px; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr); gap:28px; align-items:center; }
.ala-carte-intro { max-width:none; margin:0; }
.ala-carte-intro h3 { margin:.25rem 0 .5rem; font-size:clamp(1.65rem,2.5vw,2.35rem); }
.ala-carte-intro p:last-child { margin:0; font-size:.94rem; line-height:1.65; color:#aaa7ba; }
.customize-note { margin:0; padding:18px 20px; border-left:2px solid #e7bd69; border-radius:0 14px 14px 0; background:rgba(231,189,105,.065); font-size:.92rem; line-height:1.65; }

/* Logo treatment that blends into confirmation pages */
.confirmation-brand { position:relative; display:inline-grid; grid-template-columns:auto auto auto; align-items:end; justify-content:center; gap:0; margin:0 auto 30px; padding:0; background:transparent; border:0; box-shadow:none; text-decoration:none; color:#fff; filter:drop-shadow(0 8px 24px rgba(247,195,84,.12)); }
.confirmation-brand .brand-l { font-family:'Playfair Display',Georgia,serif; font-size:3.25rem; line-height:.8; color:#f4d17d; }
.confirmation-brand > span:not(.brand-l) { font-family:'Playfair Display',Georgia,serif; font-size:2.2rem; line-height:1; letter-spacing:-.04em; }
.confirmation-brand i { margin-left:.18rem; color:#f4d17d; font-size:1.25rem; font-style:normal; align-self:start; }
.confirmation-brand small { grid-column:1 / -1; margin-top:.48rem; color:rgba(255,255,255,.68); font-size:.64rem; font-weight:800; letter-spacing:.42em; text-indent:.42em; }

@media (max-width:760px) {
  .booking { padding-top:64px; padding-bottom:64px; }
  .booking-shell { width:min(100% - 20px,1180px); padding:20px 10px 10px; border-radius:22px; }
  .booking-heading { padding:0 10px; }
  .calendly-frame { border-radius:18px; }
  .ala-carte { grid-template-columns:1fr; gap:16px; padding:22px 20px; }
}


/* ===== Luminous v17: stacked logo, eight point star, active sparkle halo ===== */
.brand {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 3px;
  text-decoration: none;
  overflow: visible;
}
.brand-word {
  display: inline-flex;
  align-items: baseline;
  color: #f8f5ff;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 28px;
  line-height: .9;
  letter-spacing: -0.04em;
  overflow: visible;
}
.brand-l {
  display: inline-block;
  margin-right: 1px;
  font-size: 47px;
  line-height: .78;
  background: linear-gradient(180deg, #fff8c9 0%, #f5cf68 42%, #b97916 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.brand-rest { color: #f8f5ff; }
.brand-i {
  position: relative;
  display: inline-block;
  color: #f8f5ff;
  overflow: visible;
}
.brand-star {
  position: absolute;
  left: 50%;
  top: -0.54em;
  width: .62em;
  height: .62em;
  transform: translateX(-50%);
  filter: drop-shadow(0 0 5px rgba(255,255,255,.95)) drop-shadow(0 0 10px rgba(255,214,102,.9)) drop-shadow(0 0 18px rgba(255,112,226,.55));
  animation: luminousLogoTwinkle 2.15s ease-in-out infinite;
}
.brand-star::before,
.brand-star::after {
  content: '';
  position: absolute;
  inset: 0;
  margin: auto;
  background: linear-gradient(180deg,#fffef3 0%,#ffe27a 52%,#eba62f 100%);
  clip-path: polygon(50% 0%, 60% 39%, 100% 50%, 60% 61%, 50% 100%, 40% 61%, 0% 50%, 40% 39%);
}
.brand-star::after { transform: rotate(45deg) scale(.72); opacity: .95; }
.brand small {
  margin: 0 0 0 7px;
  font-family: 'Inter', sans-serif;
  font-size: 9px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: .48em;
  color: rgba(255,255,255,.72);
}
.confirmation-brand {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 7px !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}
.confirmation-brand .brand-word { font-size: 2.2rem; }
.confirmation-brand .brand-l { font-size: 3.25rem; }
.confirmation-brand small { margin-left:.48em; }
.footer-brand .brand { align-items:flex-start; }
@keyframes luminousLogoTwinkle {
  0%,100% { opacity:.82; transform:translateX(-50%) scale(.82) rotate(0deg); }
  42% { opacity:1; transform:translateX(-50%) scale(1.18) rotate(9deg); }
  58% { opacity:.94; transform:translateX(-50%) scale(.98) rotate(-5deg); }
}

/* Buttons remain clickable while sparkles trace the complete pill perimeter on hover */
.button,
button[type="submit"],
.menu-toggle {
  position: relative;
  overflow: visible;
  isolation: isolate;
}
.sparkle-halo {
  position: absolute;
  inset: -13px;
  pointer-events: none;
  z-index: 5;
  opacity: 0;
  transition: opacity .14s ease;
}
.button:hover .sparkle-halo,
.button:focus-visible .sparkle-halo,
button[type="submit"]:hover .sparkle-halo,
button[type="submit"]:focus-visible .sparkle-halo,
.menu-toggle:hover .sparkle-halo,
.menu-toggle:focus-visible .sparkle-halo { opacity: 1; }
.sparkle-halo i {
  --size: 8px;
  position: absolute;
  width: var(--size);
  height: var(--size);
  left: var(--x,50%);
  top: var(--y,50%);
  opacity: 0;
  transform: translate(-50%,-50%) scale(.25) rotate(var(--turn,0deg));
  animation: perimeterSparkle 1.05s ease-in-out infinite;
  animation-delay: var(--delay,0s);
  filter: drop-shadow(0 0 5px rgba(255,255,255,.95)) drop-shadow(0 0 9px currentColor);
}
.sparkle-halo i::before,
.sparkle-halo i::after {
  content:'';
  position:absolute;
  inset:0;
  background: currentColor;
  clip-path: polygon(50% 0%, 60% 39%, 100% 50%, 60% 61%, 50% 100%, 40% 61%, 0% 50%, 40% 39%);
}
.sparkle-halo i::after { transform:rotate(45deg) scale(.72); }
.sparkle-halo i:nth-child(3n+1){color:#ffe582}
.sparkle-halo i:nth-child(3n+2){color:#9beaff}
.sparkle-halo i:nth-child(3n){color:#ff9ce7}
@keyframes perimeterSparkle {
  0%,100% { opacity:0; transform:translate(-50%,-50%) scale(.15) rotate(var(--turn)); }
  18% { opacity:1; }
  48% { opacity:.98; transform:translate(calc(-50% + var(--jx,0px)),calc(-50% + var(--jy,0px))) scale(1.18) rotate(calc(var(--turn) + 20deg)); }
  76% { opacity:.38; transform:translate(-50%,-50%) scale(.65) rotate(calc(var(--turn) + 40deg)); }
}
.button:hover,
button[type="submit"]:hover {
  box-shadow: 0 14px 34px rgba(247,195,84,.25), 0 0 0 1px rgba(255,231,150,.16), 0 0 34px rgba(255,118,225,.15);
}
@media (max-width:760px){
  .brand-word{font-size:24px}.brand-l{font-size:40px}.brand small{font-size:8px}
}
@media (prefers-reduced-motion: reduce), (hover: none) {
  .brand-star { animation: none; }
  .sparkle-halo { display:none; }
}

/* ===== v20 definitive font clipping fix ===== */
#hero-title {
  line-height: 1.18 !important;
  padding: 0.08em 0.08em 0.22em 0.04em !important;
  margin-left: -0.04em;
  overflow: visible !important;
}
#hero-title .shimmer,
#hero-title .gradient-text {
  display: inline-block !important;
  line-height: 1.18 !important;
  padding: 0.04em 0.075em 0.22em 0.04em !important;
  margin: 0 !important;
  overflow: visible !important;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
.hero-copy,
.hero-content {
  overflow: visible !important;
}

.brand {
  overflow: visible !important;
  padding: 0.12em 0.08em 0.16em 0.04em;
}
.brand-word {
  align-items: baseline !important;
  line-height: 1.12 !important;
  padding: 0.12em 0.06em 0.18em 0.04em !important;
  overflow: visible !important;
}
.brand-l {
  line-height: 1.08 !important;
  padding: 0.08em 0.035em 0.16em 0.025em !important;
  margin: -0.08em 0 -0.12em 0 !important;
  overflow: visible !important;
}
.brand-i,
.brand-rest {
  line-height: 1.12 !important;
  padding-bottom: 0.08em;
}
.brand small {
  margin-top: 0 !important;
}
.site-header,
.nav-shell,
.footer-brand,
.confirmation-brand {
  overflow: visible !important;
}


/* Luminous v21 — Glow monthly consulting and readable Calendly embed */
.glow-membership {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: clamp(30px, 5vw, 72px);
  align-items: center;
  margin-top: 44px;
  padding: clamp(30px, 5vw, 58px);
  border: 1px solid rgba(143, 224, 255, .24);
  border-radius: 30px;
  background:
    radial-gradient(circle at 12% 18%, rgba(76, 211, 255, .13), transparent 34%),
    radial-gradient(circle at 88% 82%, rgba(183, 111, 255, .12), transparent 38%),
    linear-gradient(135deg, rgba(15, 31, 62, .94), rgba(15, 12, 43, .96));
  box-shadow: 0 26px 72px rgba(0, 0, 0, .28);
}
.glow-membership::after {
  content: '✦';
  position: absolute;
  right: 30px;
  top: 22px;
  color: #bdefff;
  font-size: 2rem;
  opacity: .7;
  text-shadow: 0 0 20px rgba(119, 221, 255, .8);
}
.membership-badge {
  display: inline-flex;
  width: fit-content;
  margin-bottom: 20px;
  padding: 8px 13px;
  border: 1px solid rgba(158, 225, 255, .34);
  border-radius: 999px;
  color: #d9f5ff;
  background: rgba(71, 188, 224, .09);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.glow-membership h3 {
  margin: .25rem 0 .7rem;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(2.6rem, 5vw, 4.7rem);
  line-height: 1;
}
.glow-membership .service-subtitle {
  color: #e9e4f7;
  font-size: 1.08rem;
  line-height: 1.65;
}
.glow-membership-copy > p:last-child,
.glow-scope-note {
  color: #aaa8bd;
  line-height: 1.72;
}
.glow-membership-details ul {
  display: grid;
  gap: 13px;
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
}
.glow-membership-details li {
  position: relative;
  padding-left: 25px;
  color: #eeebf7;
  line-height: 1.55;
}
.glow-membership-details li::before {
  content: '✦';
  position: absolute;
  left: 0;
  top: .05em;
  color: #8fe5ff;
  font-size: .82rem;
}
.glow-scope-note {
  margin: 0 0 24px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.1);
  font-size: .84rem;
}
.glow-membership .button-secondary {
  border-color: rgba(143, 229, 255, .34);
  background: rgba(93, 202, 235, .08);
}

/* Calendly's fields are rendered inside a cross-origin iframe, so use its light theme
   parameters to guarantee dark, readable type inside white input fields. */
.calendly-frame {
  background: #fdfbf7;
  border-color: rgba(230, 184, 92, .32);
}

@media (max-width: 820px) {
  .glow-membership { grid-template-columns: 1fr; gap: 24px; }
}

/* Luminous v22 — three monthly memberships and dark Calendly surround */
.membership-section {
  position: relative;
  margin-top: 48px;
  padding: clamp(30px, 5vw, 58px);
  border: 1px solid rgba(143, 224, 255, .2);
  border-radius: 30px;
  background:
    radial-gradient(circle at 10% 12%, rgba(76, 211, 255, .12), transparent 32%),
    radial-gradient(circle at 88% 86%, rgba(183, 111, 255, .11), transparent 34%),
    linear-gradient(135deg, rgba(15, 31, 62, .96), rgba(15, 12, 43, .98));
  box-shadow: 0 26px 72px rgba(0, 0, 0, .28);
}
.membership-intro {
  max-width: 780px;
  margin-bottom: 34px;
}
.membership-intro h3 {
  margin: .3rem 0 .8rem;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(2.25rem, 4vw, 4rem);
  line-height: 1.08;
}
.membership-intro > p:last-child {
  color: #aaa8bd;
  line-height: 1.72;
}
.membership-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.membership-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 28px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 24px;
  background: rgba(7, 9, 29, .58);
}
.membership-card.featured-membership {
  border-color: rgba(230, 184, 92, .48);
  background:
    radial-gradient(circle at 50% 0%, rgba(230, 184, 92, .12), transparent 40%),
    rgba(7, 9, 29, .76);
  box-shadow: 0 18px 44px rgba(0,0,0,.22);
}
.membership-tier-number {
  color: rgba(255,255,255,.35);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .18em;
}
.membership-card h4 {
  margin: 14px 0 8px;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(2rem, 3vw, 2.8rem);
  line-height: 1.05;
}
.membership-subtitle {
  min-height: 5.1em;
  color: #e9e4f7;
  line-height: 1.6;
}
.membership-card ul {
  display: grid;
  gap: 11px;
  margin: 18px 0 26px;
  padding: 0;
  list-style: none;
}
.membership-card li {
  position: relative;
  padding-left: 23px;
  color: #d9d6e5;
  line-height: 1.5;
}
.membership-card li::before {
  content: '✦';
  position: absolute;
  left: 0;
  top: .08em;
  color: #8fe5ff;
  font-size: .76rem;
}
.membership-card .button {
  align-self: flex-start;
  margin-top: auto;
}
.membership-popular {
  position: absolute;
  top: 20px;
  right: 20px;
  padding: 7px 10px;
  border: 1px solid rgba(230,184,92,.42);
  border-radius: 999px;
  background: rgba(230,184,92,.08);
  color: #f3cf7e;
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.membership-scope-note {
  margin: 28px 0 0;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.1);
  color: #aaa8bd;
  font-size: .84rem;
  line-height: 1.65;
}

/* Calendly itself is cross-origin, so its field colors must come from Calendly's
   theme settings. Keep a black website surround while using Calendly's light
   internal canvas so white form fields render dependable black text. */
.calendly-frame {
  padding: 10px;
  background: #07091d !important;
  border-color: rgba(230, 184, 92, .28) !important;
}
.calendly-inline-widget {
  overflow: hidden;
  border-radius: 16px;
  background: #fdfbf7;
}

@media (max-width: 980px) {
  .membership-grid { grid-template-columns: 1fr; }
  .membership-subtitle { min-height: 0; }
}

/* ===== Luminous v23: refined hero spacing and unified package cards ===== */
#hero-title {
  line-height: .92 !important;
  padding-top: .05em !important;
  padding-bottom: .16em !important;
  margin-bottom: 22px !important;
}
#hero-title .shimmer,
#hero-title .gradient-text {
  line-height: 1.02 !important;
  padding-top: .02em !important;
  padding-bottom: .12em !important;
}
#hero-title .gradient-text {
  margin-top: -.09em !important;
}

.membership-section {
  margin-top: 76px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.membership-intro {
  max-width: 820px;
  margin: 0 auto 28px;
  text-align: center;
}
.membership-intro > p:last-child {
  max-width: 720px;
  margin: 12px auto 0;
  color: var(--muted);
  line-height: 1.72;
}
.membership-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 18px;
}
.membership-grid .membership-card {
  min-height: 610px;
}
.membership-grid .service-icon {
  margin-top: 44px;
}
.membership-scope-note {
  max-width: 860px;
  margin: 28px auto 0;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.1);
  color: #aaa8bd;
  font-size: .84rem;
  line-height: 1.65;
  text-align: center;
}
@media (max-width: 1050px) {
  .membership-grid { grid-template-columns: 1fr; }
  .membership-grid .membership-card { min-height: auto; }
}

/* v25 — polished section notes and refined branded navigation */
.section-heading > p {
  position: relative;
  max-width: 420px;
  margin: 0 0 6px;
  padding: 16px 20px 16px 25px;
  border: 1px solid rgba(246, 196, 83, 0.20);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255,255,255,0.075), rgba(255,255,255,0.025));
  box-shadow: 0 14px 38px rgba(0,0,0,0.16), inset 0 1px 0 rgba(255,255,255,0.06);
  backdrop-filter: blur(16px);
  color: #d5d2e2;
  line-height: 1.65;
}
.section-heading > p::before {
  content: '';
  position: absolute;
  left: 0;
  top: 14px;
  bottom: 14px;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, #fff0a6, #f6c453 48%, #9e62ff);
  box-shadow: 0 0 15px rgba(246,196,83,.45);
}
.section-heading > p::after {
  content: '✦';
  position: absolute;
  right: 13px;
  top: -10px;
  color: #f6c453;
  font-size: 13px;
  text-shadow: 0 0 12px rgba(246,196,83,.8);
}

.nav-shell {
  width: min(calc(100% - 32px), 1120px);
  gap: 18px;
  padding: 10px 14px 10px 16px;
  border-radius: 18px;
}
.nav-links {
  gap: 8px;
}
.nav-links a {
  position: relative;
  padding: 9px 13px;
  border-radius: 999px;
  color: #e6e2ef;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: .01em;
  transition: color .25s ease, transform .25s ease, background .25s ease, box-shadow .25s ease;
}
.nav-links a::before {
  content: '✦';
  display: inline-block;
  margin-right: 7px;
  color: rgba(246,196,83,.78);
  font-size: 8px;
  vertical-align: 2px;
  transition: transform .25s ease, color .25s ease;
}
.nav-links a:hover,
.nav-links a:focus-visible {
  color: #fff;
  background: rgba(255,255,255,.07);
  box-shadow: inset 0 0 0 1px rgba(246,196,83,.13);
  transform: translateY(-1px);
}
.nav-links a:hover::before,
.nav-links a:focus-visible::before {
  color: #ffe69b;
  transform: rotate(45deg) scale(1.12);
}
.nav-cta.button-small {
  padding: 10px 16px;
}

@media (max-width: 980px) {
  .nav-links { gap: 4px; }
  .nav-links a { width: 100%; padding: 11px 12px; }
  .section-heading > p { max-width: 100%; margin-top: 10px; }
}

@media (max-width: 640px) {
  .nav-shell { width: calc(100% - 20px); padding: 10px 13px; }
  .section-heading > p { padding: 15px 18px 15px 22px; border-radius: 16px; }
}


/* ===== Luminous v28: full first-screen hero + integrated support options ===== */
.one-time-hr {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(24px, 4vw, 54px);
  margin-top: 28px;
  padding: clamp(24px, 3vw, 36px);
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 24px;
  background: rgba(255, 255, 255, .045);
}
.one-time-hr > div { max-width: 760px; }
.one-time-hr h3 {
  margin: .2rem 0 .7rem;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(1.8rem, 3vw, 2.7rem);
}
.one-time-hr p:last-child { margin-bottom: 0; color: var(--muted); }
.one-time-hr .button { flex: 0 0 auto; }

/* Calendly should visually continue the website's deep-navy background. */
.calendly-frame,
.calendly-inline-widget {
  background: var(--bg) !important;
}

/* On desktop, the complete hero fits inside the first visible screen while
   retaining the original two-column composition and background artwork. */
@media (min-width: 901px) {
  .hero {
    height: calc(100svh - 88px);
    min-height: 620px;
    max-height: 900px;
    padding: 18px 0 18px;
  }
  .hero-content {
    height: 100%;
    padding: clamp(18px, 2.2vw, 30px);
    align-items: center;
  }
  .hero-copy {
    padding: clamp(16px, 2.5vw, 28px);
  }
  .eyebrow { margin-bottom: 12px; }
  #hero-title {
    font-size: clamp(3.45rem, 6.1vw, 6.4rem);
    margin-bottom: 10px;
  }
  .hero-copy > p { line-height: 1.55; }
  .hero-actions { margin-top: 18px; }
  .trust-line { margin-top: 14px; }
  .hero-tags { margin-top: 12px; }
  .scroll-cue { bottom: 8px; }
}

@media (min-width: 901px) and (max-height: 720px) {
  .hero {
    height: calc(100svh - 78px);
    min-height: 560px;
    padding-block: 10px;
  }
  #hero-title { font-size: clamp(3rem, 5.6vw, 5.35rem); }
  .eyebrow { padding: 8px 13px; margin-bottom: 8px; }
  .hero-copy > p { font-size: 1rem; }
  .hero-actions { margin-top: 12px; }
  .trust-line { margin-top: 10px; }
  .hero-tags { margin-top: 8px; }
  .hero-tags span { padding: 7px 11px; }
  .scroll-cue { display: none; }
}

@media (max-width: 760px) {
  .one-time-hr { align-items: flex-start; flex-direction: column; }
  .one-time-hr .button { width: 100%; justify-content: center; }
}

/* ===== Luminous v35: uniform clean backgrounds ===== */
/* Remove ambient blobs, mouse-follow glow, and any light washes behind content boxes. */
.ambient,
.mouse-glow {
  display: none !important;
  opacity: 0 !important;
  background: none !important;
  box-shadow: none !important;
  filter: none !important;
}

/* Keep all content sections on one uninterrupted deep-navy canvas. */
body {
  background: #050719 !important;
}
.process,
.services,
.about,
.booking,
.contact,
.footer {
  background: #050719 !important;
  background-image: none !important;
}
.process::before,
.process::after,
.services::before,
.services::after,
.about::before,
.about::after,
.booking::before,
.booking::after,
.contact::before,
.contact::after,
.footer::before,
.footer::after {
  content: none !important;
  display: none !important;
  background: none !important;
  box-shadow: none !important;
  filter: none !important;
}

/* Remove the idle spotlight from featured middle packages. All package light is hover-only. */
.service-card,
.service-card.featured,
.membership-card,
.membership-card.featured {
  background-image: none !important;
  background-color: rgba(255,255,255,.035) !important;
}
.service-card.featured::before,
.membership-card.featured::before {
  opacity: .28 !important;
  filter: none !important;
}

/* Hover/focus remains the only time a package illuminates or sweeps. */
.service-card:hover,
.service-card:focus-within,
.membership-card:hover,
.membership-card:focus-within {
  background-color: rgba(255,255,255,.055) !important;
  background-image: radial-gradient(circle at 50% 82%, rgba(239,200,108,.13), transparent 52%) !important;
}

/* Prevent large exterior glows from spilling into the space around cards. */
.service-card,
.spark-feature,
.ala-carte,
.one-time-hr,
.booking-shell,
.contact-panel {
  box-shadow: 0 18px 48px rgba(0,0,0,.20) !important;
}
.service-card:hover,
.service-card:focus-within {
  box-shadow: 0 24px 62px rgba(0,0,0,.28), 0 0 0 1px rgba(239,200,108,.12) !important;
}

/* ===== Luminous v36: final consistency polish ===== */
:root {
  --section-space: clamp(88px, 9vw, 124px);
  --card-radius: 24px;
  --card-border: rgba(255, 255, 255, 0.14);
  --card-shadow: 0 18px 48px rgba(0, 0, 0, 0.20);
  --card-shadow-hover: 0 24px 62px rgba(0, 0, 0, 0.28), 0 0 0 1px rgba(239, 200, 108, 0.12);
  --ease-premium: cubic-bezier(.22, .72, .22, 1);
  --button-speed: .32s;
}

/* Consistent vertical rhythm across all major homepage sections. */
.intro,
.process,
.services,
.about,
.booking,
.contact {
  padding-top: var(--section-space) !important;
  padding-bottom: var(--section-space) !important;
}
.intro { padding-bottom: clamp(42px, 5vw, 64px) !important; }
.section-heading { margin-bottom: clamp(42px, 5vw, 58px); }
.package-heading { margin-bottom: 32px; }
.membership-section { margin-top: clamp(48px, 6vw, 72px); }
.one-time-hr { margin-top: 32px; }

/* Intentional, repeatable typography hierarchy. */
.intro h2,
.section-heading h2,
.about h2,
.contact h2 {
  font-size: clamp(2.75rem, 4.8vw, 4.25rem);
  line-height: 1.03;
  letter-spacing: -0.042em;
  margin-bottom: 18px;
}
.section-heading h2,
.about-copy h2,
.contact-copy h2 { max-width: 760px; }
.package-heading h3,
.membership-intro h3,
.spark-feature h3,
.one-time-hr h3 {
  line-height: 1.08;
  letter-spacing: -0.028em;
}
.service-card h3,
.membership-card h4,
.timeline h3 {
  line-height: 1.12;
  letter-spacing: -0.022em;
}
p,
.service-card li,
.membership-card li,
.timeline p {
  line-height: 1.68;
}
.kicker,
.panel-kicker,
.eyebrow,
.popular,
.membership-popular,
.complimentary {
  line-height: 1.3;
}

/* One shared card language across the site. */
.service-card,
.membership-card,
.spark-feature,
.one-time-hr,
.booking-shell,
.contact-panel,
.hero-panel,
.section-heading > p,
.spark-prep,
.ala-carte {
  border-radius: var(--card-radius) !important;
  border-color: var(--card-border) !important;
  box-shadow: var(--card-shadow) !important;
}
.service-card,
.membership-card {
  transition:
    transform .38s var(--ease-premium),
    box-shadow .38s var(--ease-premium),
    border-color .38s var(--ease-premium),
    background-color .38s var(--ease-premium) !important;
}
.service-card:hover,
.service-card:focus-within,
.membership-card:hover,
.membership-card:focus-within {
  transform: translateY(-7px) !important;
  border-color: rgba(239, 200, 108, .28) !important;
  box-shadow: var(--card-shadow-hover) !important;
}

/* Every button now uses the same motion, lift, easing, and timing. */
.button,
button[type="submit"],
.nav-cta {
  transition:
    transform var(--button-speed) var(--ease-premium),
    box-shadow var(--button-speed) var(--ease-premium),
    border-color var(--button-speed) var(--ease-premium),
    background-color var(--button-speed) var(--ease-premium),
    color var(--button-speed) var(--ease-premium) !important;
}
.button:hover,
.button:focus-visible,
button[type="submit"]:hover,
button[type="submit"]:focus-visible,
.nav-cta:hover,
.nav-cta:focus-visible {
  transform: translateY(-2px) !important;
}
.button:active,
button[type="submit"]:active,
.nav-cta:active {
  transform: translateY(0) scale(.985) !important;
  transition-duration: .12s !important;
}
.sparkle-halo { transition: opacity .22s var(--ease-premium) !important; }

/* Slower, smoother scroll reveals with a restrained travel distance. */
.reveal {
  opacity: 0;
  transform: translateY(20px);
  transition:
    opacity .72s var(--ease-premium),
    transform .72s var(--ease-premium) !important;
  will-change: opacity, transform;
}
.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

/* Subtle navigation interaction: quiet background, gold underline, no jumpiness. */
.nav-links a {
  position: relative;
  transition:
    color .28s var(--ease-premium),
    background-color .28s var(--ease-premium),
    box-shadow .28s var(--ease-premium) !important;
  transform: none !important;
}
.nav-links a::after {
  content: '';
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 5px;
  height: 1px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(246,196,83,.82), transparent);
  opacity: 0;
  transform: scaleX(.45);
  transition: opacity .28s var(--ease-premium), transform .28s var(--ease-premium);
}
.nav-links a:hover,
.nav-links a:focus-visible {
  color: #fff;
  background: rgba(255,255,255,.055);
  box-shadow: inset 0 0 0 1px rgba(246,196,83,.10);
}
.nav-links a:hover::after,
.nav-links a:focus-visible::after {
  opacity: 1;
  transform: scaleX(1);
}

@media (max-width: 760px) {
  :root { --section-space: 76px; }
  .section-heading { margin-bottom: 34px; }
}

@media (prefers-reduced-motion: reduce) {
  .reveal,
  .button,
  button[type="submit"],
  .nav-cta,
  .nav-links a,
  .nav-links a::after,
  .service-card,
  .membership-card {
    transition-duration: .01ms !important;
  }
}

/* v41 — restrained hero parallax: image 5%, atmosphere 3%, copy remains fixed. */
.hero-bg img {
  transform: scale(1.08) translate3d(0, var(--hero-image-parallax, 0px), 0);
  will-change: transform;
}
.hero-overlay {
  transform: scale(1.04) translate3d(0, var(--hero-background-parallax, 0px), 0);
  transform-origin: center;
  will-change: transform;
}
@media (prefers-reduced-motion: reduce), (max-width: 820px) {
  .hero-bg img {
    transform: scale(1.02);
    will-change: auto;
  }
  .hero-overlay {
    transform: none;
    will-change: auto;
  }
}

/* v46 — tiny cutout Lumi cursor with button-matched sparkle trail emitted from Lumi's right side. */
@media (hover: hover) and (pointer: fine) {
  html.lumi-cursor-active,
  html.lumi-cursor-active body,
  html.lumi-cursor-active a,
  html.lumi-cursor-active button,
  html.lumi-cursor-active [role="button"] {
    cursor: none !important;
  }

  html.lumi-cursor-active input,
  html.lumi-cursor-active textarea,
  html.lumi-cursor-active select {
    cursor: text !important;
  }

  .lumi-cursor {
    position: fixed;
    left: -80px;
    top: -80px;
    width: 34px;
    height: 32px;
    z-index: 2147483647;
    pointer-events: none;
    opacity: 0;
    transform: translate(-10px, -16px) rotate(-8deg) scale(.92);
    transition: opacity .14s ease, transform .18s cubic-bezier(.22,.8,.24,1);
    will-change: left, top, transform;
  }

  .lumi-cursor.is-visible { opacity: 1; }
  .lumi-cursor.is-hovering {
    transform: translate(-10px, -16px) rotate(-3deg) scale(1.12);
  }
  .lumi-cursor.is-over-field { opacity: 0; }

  .lumi-cursor img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: transparent;
    border: 0;
    filter:
      drop-shadow(0 0 3px rgba(255, 231, 157, .95))
      drop-shadow(0 0 7px rgba(255, 193, 75, .58))
      drop-shadow(0 0 10px rgba(122, 103, 255, .32));
  }

  .lumi-cursor-glow {
    position: fixed;
    left: -120px;
    top: -120px;
    width: 94px;
    height: 94px;
    z-index: 2147483200;
    pointer-events: none;
    opacity: 0;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: radial-gradient(circle,
      rgba(255, 235, 174, .14) 0%,
      rgba(229, 127, 255, .07) 36%,
      rgba(84, 154, 255, .035) 56%,
      transparent 73%);
    mix-blend-mode: screen;
    transition: opacity .18s ease;
  }
  .lumi-cursor-glow.is-visible { opacity: .72; }
  .lumi-cursor-glow.is-hovering { opacity: .92; }

  .lumi-cursor-sparkle {
    --spark-size: 7px;
    position: fixed;
    z-index: 2147483300;
    width: var(--spark-size);
    height: var(--spark-size);
    pointer-events: none;
    opacity: 0;
    transform: translate(-50%, -50%) scale(.2) rotate(var(--spark-turn, 0deg));
    animation: lumiCursorSparkle .74s ease-out forwards;
    filter:
      drop-shadow(0 0 5px rgba(255,255,255,.95))
      drop-shadow(0 0 9px currentColor);
    will-change: transform, opacity;
  }

  .lumi-cursor-sparkle::before,
  .lumi-cursor-sparkle::after {
    content: '';
    position: absolute;
    inset: 0;
    background: currentColor;
    clip-path: polygon(50% 0%, 60% 39%, 100% 50%, 60% 61%, 50% 100%, 40% 61%, 0% 50%, 40% 39%);
  }

  .lumi-cursor-sparkle::after {
    transform: rotate(45deg) scale(.72);
  }

  @keyframes lumiCursorSparkle {
    0% {
      opacity: 0;
      transform: translate(-50%, -50%) scale(.18) rotate(var(--spark-turn, 0deg));
    }
    18% {
      opacity: 1;
    }
    48% {
      opacity: .98;
      transform: translate(
        calc(-50% + var(--spark-drift-x, 12px)),
        calc(-50% + var(--spark-drift-y, 0px))
      ) scale(1.15) rotate(calc(var(--spark-turn, 0deg) + 22deg));
    }
    100% {
      opacity: 0;
      transform: translate(
        calc(-50% + var(--spark-drift-x, 12px)),
        calc(-50% + var(--spark-drift-y, 0px))
      ) scale(.35) rotate(calc(var(--spark-turn, 0deg) + 48deg));
    }
  }

}

@media (prefers-reduced-motion: reduce), (hover: none), (pointer: coarse) {
  .lumi-cursor,
  .lumi-cursor-glow,
  .lumi-cursor-sparkle { display: none !important; }
}


/* ===== v48 exact transparent logo + repaired gold L ===== */
.brand,
.confirmation-brand {
  display:inline-flex !important;
  align-items:center !important;
  width:auto;
  max-width:min(360px, 42vw);
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.logo-image-wrap { position:relative; display:block; width:100%; line-height:0; }
.logo-image { display:block; width:100%; height:auto; object-fit:contain; background:transparent; }
/* The shimmer sits over the existing star; it does not replace or redraw the logo. */
.logo-star-shimmer {
  position:absolute;
  left:50.9%;
  top:18.8%;
  width:4.4%;
  aspect-ratio:1;
  transform:translate(-50%,-50%) scale(.78);
  border-radius:50%;
  pointer-events:none;
  opacity:0;
  background:radial-gradient(circle, rgba(255,255,255,.98) 0 7%, rgba(255,222,112,.82) 14%, rgba(255,197,61,.22) 38%, transparent 68%);
  filter:drop-shadow(0 0 4px rgba(255,238,167,.9)) drop-shadow(0 0 12px rgba(245,190,54,.72));
  animation:logoStarSoftShine 4.2s ease-in-out infinite;
}
@keyframes logoStarSoftShine {
  0%,70%,100% { opacity:0; transform:translate(-50%,-50%) scale(.72); }
  78% { opacity:.72; transform:translate(-50%,-50%) scale(1.12); }
  86% { opacity:.18; transform:translate(-50%,-50%) scale(.9); }
}
.footer-brand .brand { max-width:min(430px, 88vw); }
.confirmation-brand { max-width:min(560px, 88vw); margin:0 auto 28px !important; }
@media (max-width:760px){
  .brand { max-width:230px; }
  .footer-brand .brand,.confirmation-brand { max-width:min(430px,92vw); }
}
@media (prefers-reduced-motion:reduce){ .logo-star-shimmer{animation:none;display:none;} }

/* ===== v56 compact desktop menu + brighter animated logo star ===== */
@media (min-width: 981px) {
  .site-header .nav-shell {
    width: min(calc(100% - 28px), 760px) !important;
    gap: 8px !important;
    padding: 7px 10px 7px 12px !important;
    border-radius: 16px !important;
  }
  .site-header .brand {
    max-width: 184px !important;
    flex: 0 0 184px !important;
  }
  .site-header .nav-links {
    gap: 1px !important;
    margin-left: auto !important;
  }
  .site-header .nav-links a {
    padding: 7px 8px !important;
    font-size: 12px !important;
    letter-spacing: 0 !important;
  }
  .site-header .nav-links a::before {
    display: none !important;
  }
  .site-header .nav-cta.button-small {
    padding: 8px 11px !important;
    font-size: 11px !important;
    white-space: nowrap !important;
  }
}

/* Animated shine centered on the star that is already above the i. */
.logo-star-shimmer {
  left: 50.9% !important;
  top: 18.8% !important;
  width: 5.4% !important;
  opacity: .28;
  overflow: visible;
  background: radial-gradient(circle,
    rgba(255,255,255,1) 0 8%,
    rgba(255,241,173,.98) 12%,
    rgba(255,204,60,.7) 25%,
    rgba(255,190,36,.18) 49%,
    transparent 72%) !important;
  filter: drop-shadow(0 0 5px rgba(255,248,203,1))
          drop-shadow(0 0 13px rgba(255,204,65,.95))
          drop-shadow(0 0 24px rgba(244,174,20,.65)) !important;
  animation: logoStarSparkleV56 2.6s ease-in-out infinite !important;
}
.logo-star-shimmer::before,
.logo-star-shimmer::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 225%;
  height: 225%;
  transform: translate(-50%,-50%);
  pointer-events: none;
  background:
    linear-gradient(transparent 47%, rgba(255,246,191,.98) 49%, rgba(255,255,255,1) 50%, rgba(255,246,191,.98) 51%, transparent 53%),
    linear-gradient(90deg, transparent 47%, rgba(255,246,191,.98) 49%, rgba(255,255,255,1) 50%, rgba(255,246,191,.98) 51%, transparent 53%);
  filter: drop-shadow(0 0 5px rgba(255,220,100,.9));
  animation: logoStarRaysV56 2.6s ease-in-out infinite;
}
.logo-star-shimmer::after {
  width: 165%;
  height: 165%;
  transform: translate(-50%,-50%) rotate(45deg);
  opacity: .8;
  animation-delay: .18s;
}
@keyframes logoStarSparkleV56 {
  0%, 100% { opacity:.22; transform:translate(-50%,-50%) scale(.72) rotate(0deg); }
  18% { opacity:.95; transform:translate(-50%,-50%) scale(1.24) rotate(8deg); }
  31% { opacity:.42; transform:translate(-50%,-50%) scale(.88) rotate(-4deg); }
  48% { opacity:1; transform:translate(-50%,-50%) scale(1.42) rotate(10deg); }
  66% { opacity:.3; transform:translate(-50%,-50%) scale(.8) rotate(0deg); }
  82% { opacity:.82; transform:translate(-50%,-50%) scale(1.08) rotate(-8deg); }
}
@keyframes logoStarRaysV56 {
  0%,100% { opacity:.1; transform:translate(-50%,-50%) scale(.55) rotate(0deg); }
  18% { opacity:1; transform:translate(-50%,-50%) scale(1.12) rotate(12deg); }
  31% { opacity:.2; transform:translate(-50%,-50%) scale(.7) rotate(20deg); }
  48% { opacity:.95; transform:translate(-50%,-50%) scale(1.28) rotate(36deg); }
  66% { opacity:.12; transform:translate(-50%,-50%) scale(.62) rotate(44deg); }
  82% { opacity:.7; transform:translate(-50%,-50%) scale(1) rotate(55deg); }
}
@media (prefers-reduced-motion: reduce) {
  .logo-star-shimmer,
  .logo-star-shimmer::before,
  .logo-star-shimmer::after { animation: none !important; }
}

/* ===== v57 full-width, slim navigation + star-aligned shimmer ===== */
@media (min-width: 981px) {
  .site-header {
    top: 8px !important;
  }
  .site-header .nav-shell {
    width: calc(100% - 24px) !important;
    max-width: 1480px !important;
    min-height: 0 !important;
    gap: 18px !important;
    padding: 5px 16px !important;
    border-radius: 15px !important;
  }
  .site-header .brand {
    max-width: 188px !important;
    flex: 0 0 188px !important;
  }
  .site-header .nav-links {
    gap: 8px !important;
    margin-left: auto !important;
  }
  .site-header .nav-links a {
    padding: 6px 10px !important;
    font-size: 12px !important;
  }
  .site-header .nav-cta.button-small {
    padding: 8px 14px !important;
    font-size: 11px !important;
  }
}

/* Center the animated glow directly behind the baked-in logo star. */
.logo-star-shimmer {
  left: 52.15% !important;
  top: 30.86% !important;
  width: 10.2% !important;
  aspect-ratio: 1 !important;
  z-index: -1 !important;
  opacity: 0;
  transform: translate(-50%, -50%) scale(.62) !important;
  background: radial-gradient(circle,
    rgba(255,255,255,.98) 0 5%,
    rgba(255,244,177,.94) 10%,
    rgba(255,209,66,.68) 22%,
    rgba(255,188,22,.25) 43%,
    transparent 72%) !important;
  filter: drop-shadow(0 0 5px rgba(255,250,218,1))
          drop-shadow(0 0 14px rgba(255,216,89,.95))
          drop-shadow(0 0 28px rgba(245,178,20,.72)) !important;
  animation: logoStarAlignedShine 2.8s ease-in-out infinite !important;
}
.logo-star-shimmer::before,
.logo-star-shimmer::after {
  content: "";
  position: absolute;
  inset: 50% auto auto 50%;
  width: 165%;
  height: 2px;
  transform: translate(-50%, -50%);
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(255,249,215,.95), transparent);
  opacity: .8;
}
.logo-star-shimmer::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
@keyframes logoStarAlignedShine {
  0%, 58%, 100% { opacity: 0; transform: translate(-50%, -50%) scale(.55) rotate(0deg); }
  68% { opacity: .95; transform: translate(-50%, -50%) scale(1.12) rotate(4deg); }
  78% { opacity: .42; transform: translate(-50%, -50%) scale(.84) rotate(-3deg); }
  87% { opacity: .82; transform: translate(-50%, -50%) scale(1.02) rotate(2deg); }
}

/* ===== v58 shorter vertical navigation while preserving full-screen width ===== */
@media (min-width: 981px) {
  .site-header {
    top: 5px !important;
  }

  .site-header .nav-shell {
    width: calc(100% - 24px) !important;
    max-width: 1480px !important;
    height: 58px !important;
    min-height: 58px !important;
    padding: 3px 14px !important;
    gap: 16px !important;
    border-radius: 14px !important;
    overflow: visible !important;
  }

  /* Crop the transparent space around the source logo so the header stays thin. */
  .site-header .brand {
    width: 152px !important;
    max-width: 152px !important;
    height: 50px !important;
    flex: 0 0 152px !important;
    overflow: visible !important;
  }
  .site-header .logo-image-wrap {
    position: relative !important;
    display: block !important;
    width: 152px !important;
    height: 50px !important;
    overflow: hidden !important;
  }
  .site-header .logo-image {
    position: absolute !important;
    width: 220px !important;
    max-width: none !important;
    height: auto !important;
    left: -35px !important;
    top: -34px !important;
  }

  .site-header .nav-links a {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .site-header .nav-cta.button-small {
    padding-top: 7px !important;
    padding-bottom: 7px !important;
  }

  /* Shine is centered directly behind the baked-in star after the logo crop. */
  .site-header .logo-star-shimmer {
    left: 52.6% !important;
    top: 22.2% !important;
    width: 15px !important;
    height: 15px !important;
    z-index: 0 !important;
  }
}


/* ===== v59 brighter, constant logo-star sparkle =====
   Keeps the animated light directly behind the star embedded above the i. */
.logo-star-shimmer {
  left: 50.9% !important;
  top: 18.8% !important;
  width: 6.8% !important;
  opacity: .82 !important;
  background: radial-gradient(circle,
    #ffffff 0 7%,
    rgba(255,255,255,1) 8% 12%,
    rgba(255,238,151,1) 16%,
    rgba(255,202,45,.94) 28%,
    rgba(255,183,24,.5) 46%,
    rgba(255,180,20,.16) 64%,
    transparent 76%) !important;
  filter:
    drop-shadow(0 0 5px rgba(255,255,255,1))
    drop-shadow(0 0 12px rgba(255,232,140,1))
    drop-shadow(0 0 25px rgba(255,198,40,.98))
    drop-shadow(0 0 42px rgba(255,169,16,.72)) !important;
  animation: logoStarConstantV59 1.05s ease-in-out infinite !important;
  will-change: transform, opacity, filter;
}
.logo-star-shimmer::before,
.logo-star-shimmer::after {
  width: 270% !important;
  height: 270% !important;
  opacity: .92 !important;
  background:
    linear-gradient(transparent 47.5%, rgba(255,235,145,.98) 49%, #fff 50%, rgba(255,235,145,.98) 51%, transparent 52.5%),
    linear-gradient(90deg, transparent 47.5%, rgba(255,235,145,.98) 49%, #fff 50%, rgba(255,235,145,.98) 51%, transparent 52.5%) !important;
  filter:
    drop-shadow(0 0 5px rgba(255,255,255,1))
    drop-shadow(0 0 11px rgba(255,210,62,.96)) !important;
  animation: logoStarRaysConstantV59 1.05s linear infinite !important;
}
.logo-star-shimmer::after {
  width: 210% !important;
  height: 210% !important;
  opacity: .78 !important;
  animation-duration: .72s !important;
  animation-direction: reverse !important;
}
@keyframes logoStarConstantV59 {
  0%,100% { opacity:.72; transform:translate(-50%,-50%) scale(.96) rotate(0deg); }
  25% { opacity:1; transform:translate(-50%,-50%) scale(1.28) rotate(5deg); }
  50% { opacity:.84; transform:translate(-50%,-50%) scale(1.08) rotate(-3deg); }
  75% { opacity:1; transform:translate(-50%,-50%) scale(1.38) rotate(4deg); }
}
@keyframes logoStarRaysConstantV59 {
  0% { opacity:.58; transform:translate(-50%,-50%) scale(.82) rotate(0deg); }
  25% { opacity:1; transform:translate(-50%,-50%) scale(1.16) rotate(22deg); }
  50% { opacity:.72; transform:translate(-50%,-50%) scale(.96) rotate(45deg); }
  75% { opacity:1; transform:translate(-50%,-50%) scale(1.22) rotate(67deg); }
  100% { opacity:.58; transform:translate(-50%,-50%) scale(.82) rotate(90deg); }
}

/* ===== v60 ultra-thin menu + unmistakable continuous logo sparkle ===== */
@media (min-width: 981px) {
  .site-header {
    top: 3px !important;
  }

  .site-header .nav-shell {
    height: 46px !important;
    min-height: 46px !important;
    padding: 2px 12px !important;
    gap: 12px !important;
    border-radius: 12px !important;
  }

  .site-header .brand {
    width: 140px !important;
    max-width: 140px !important;
    height: 40px !important;
    flex: 0 0 140px !important;
  }

  .site-header .logo-image-wrap {
    width: 140px !important;
    height: 40px !important;
    overflow: hidden !important;
  }

  .site-header .logo-image {
    width: 190px !important;
    left: -24px !important;
    top: -31px !important;
  }

  .site-header .nav-links a {
    padding: 3px 8px !important;
    font-size: 11px !important;
  }

  .site-header .nav-cta.button-small {
    padding: 6px 12px !important;
    font-size: 10px !important;
  }

  /* Exact position of the baked-in star after the tighter logo crop. */
  .site-header .logo-star-shimmer {
    left: 53.6% !important;
    top: 26% !important;
    width: 25px !important;
    height: 25px !important;
    z-index: 6 !important;
    opacity: 1 !important;
    mix-blend-mode: screen;
    pointer-events: none;
    border-radius: 50%;
    background:
      radial-gradient(circle,
        rgba(255,255,255,1) 0 9%,
        rgba(255,255,255,.98) 10% 16%,
        rgba(255,245,170,1) 22%,
        rgba(255,207,45,.98) 36%,
        rgba(255,174,0,.74) 52%,
        rgba(255,162,0,.32) 68%,
        transparent 82%) !important;
    box-shadow:
      0 0 4px 2px rgba(255,255,255,1),
      0 0 10px 5px rgba(255,239,151,.98),
      0 0 19px 9px rgba(255,201,38,.9),
      0 0 31px 13px rgba(255,168,0,.65) !important;
    filter:
      drop-shadow(0 0 5px #fff)
      drop-shadow(0 0 12px rgba(255,238,133,1))
      drop-shadow(0 0 24px rgba(255,190,12,1)) !important;
    animation: logoStarBlazeV60 .68s ease-in-out infinite alternate !important;
  }

  .site-header .logo-star-shimmer::before,
  .site-header .logo-star-shimmer::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 440% !important;
    height: 440% !important;
    opacity: 1 !important;
    border-radius: 0 !important;
    background:
      linear-gradient(transparent 48.8%, rgba(255,226,95,.78) 49.3%, #fff 49.8% 50.2%, rgba(255,226,95,.78) 50.7%, transparent 51.2%),
      linear-gradient(90deg, transparent 48.8%, rgba(255,226,95,.78) 49.3%, #fff 49.8% 50.2%, rgba(255,226,95,.78) 50.7%, transparent 51.2%) !important;
    filter:
      drop-shadow(0 0 3px #fff)
      drop-shadow(0 0 8px rgba(255,213,68,1)) !important;
    animation: logoStarCrossV60 .8s linear infinite !important;
  }

  .site-header .logo-star-shimmer::after {
    width: 315% !important;
    height: 315% !important;
    opacity: .96 !important;
    animation: logoStarDiamondV60 .54s ease-in-out infinite alternate !important;
  }
}

@keyframes logoStarBlazeV60 {
  0% {
    opacity: .88;
    transform: translate(-50%, -50%) scale(.92) rotate(-4deg);
    box-shadow:
      0 0 4px 2px rgba(255,255,255,1),
      0 0 9px 4px rgba(255,239,151,.96),
      0 0 18px 8px rgba(255,201,38,.86),
      0 0 28px 11px rgba(255,168,0,.58);
  }
  100% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1.45) rotate(5deg);
    box-shadow:
      0 0 7px 4px rgba(255,255,255,1),
      0 0 15px 8px rgba(255,245,174,1),
      0 0 29px 14px rgba(255,204,42,1),
      0 0 46px 20px rgba(255,164,0,.82);
  }
}

@keyframes logoStarCrossV60 {
  0%   { transform: translate(-50%, -50%) scale(.72) rotate(0deg); opacity: .68; }
  25%  { transform: translate(-50%, -50%) scale(1.16) rotate(22deg); opacity: 1; }
  50%  { transform: translate(-50%, -50%) scale(.86) rotate(45deg); opacity: .76; }
  75%  { transform: translate(-50%, -50%) scale(1.22) rotate(67deg); opacity: 1; }
  100% { transform: translate(-50%, -50%) scale(.72) rotate(90deg); opacity: .68; }
}

@keyframes logoStarDiamondV60 {
  0%   { transform: translate(-50%, -50%) scale(.82) rotate(45deg); opacity: .72; }
  100% { transform: translate(-50%, -50%) scale(1.34) rotate(135deg); opacity: 1; }
}

/* ===== v61 refined premium navigation =====
   Slightly taller for the logo, restrained star shine, elevated menu links and CTA. */
@media (min-width: 981px) {
  .site-header {
    top: 6px !important;
  }

  .site-header .nav-shell {
    height: 58px !important;
    min-height: 58px !important;
    padding: 5px 12px 5px 14px !important;
    gap: 16px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(239, 200, 108, .22) !important;
    background: linear-gradient(180deg, rgba(8, 22, 51, .97), rgba(5, 15, 37, .96)) !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255, 255, 255, .055) !important;
  }

  .site-header .brand {
    width: 164px !important;
    max-width: 164px !important;
    height: 48px !important;
    flex: 0 0 164px !important;
  }

  .site-header .logo-image-wrap {
    width: 164px !important;
    height: 48px !important;
    overflow: hidden !important;
  }

  .site-header .logo-image {
    width: 214px !important;
    left: -25px !important;
    top: -34px !important;
  }

  .site-header .nav-links {
    gap: 5px !important;
    align-items: center !important;
  }

  .site-header .nav-links a:not(.button) {
    padding: 8px 12px !important;
    border-radius: 999px !important;
    font-size: 11.5px !important;
    font-weight: 620 !important;
    letter-spacing: .045em !important;
    color: rgba(255, 255, 255, .78) !important;
    text-transform: none !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    transition: color .22s ease, background .22s ease, border-color .22s ease, transform .22s ease, box-shadow .22s ease !important;
  }

  .site-header .nav-links a:not(.button)::before,
  .site-header .nav-links a:not(.button)::after {
    display: none !important;
  }

  .site-header .nav-links a:not(.button):hover,
  .site-header .nav-links a:not(.button):focus-visible,
  .site-header .nav-links a.active:not(.button) {
    color: #fff !important;
    background: linear-gradient(180deg, rgba(255,255,255,.075), rgba(239,200,108,.055)) !important;
    border-color: rgba(239, 200, 108, .23) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 6px 16px rgba(0,0,0,.14) !important;
    transform: translateY(-1px) !important;
    text-shadow: none !important;
  }

  .site-header .nav-cta.button-small {
    position: relative !important;
    overflow: hidden !important;
    padding: 10px 17px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 760 !important;
    letter-spacing: .035em !important;
    color: #08142f !important;
    border: 1px solid rgba(255, 244, 190, .95) !important;
    background: linear-gradient(135deg, #fff2b5 0%, #edc468 45%, #d6a93e 100%) !important;
    box-shadow: 0 8px 22px rgba(212, 164, 55, .28), inset 0 1px 0 rgba(255,255,255,.9), inset 0 -1px 0 rgba(117,75,0,.2) !important;
    text-shadow: 0 1px 0 rgba(255,255,255,.35) !important;
    transition: transform .22s ease, box-shadow .22s ease, filter .22s ease !important;
  }

  .site-header .nav-cta.button-small::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(110deg, transparent 25%, rgba(255,255,255,.72) 46%, transparent 65%) !important;
    transform: translateX(-130%) !important;
    animation: premiumCtaSweepV61 4.2s ease-in-out infinite !important;
    pointer-events: none !important;
  }

  .site-header .nav-cta.button-small::after {
    content: "✦" !important;
    position: static !important;
    display: inline-block !important;
    margin-left: 7px !important;
    font-size: 10px !important;
    line-height: 1 !important;
    color: #6f4b00 !important;
    opacity: .82 !important;
    transform: none !important;
  }

  .site-header .nav-cta.button-small:hover,
  .site-header .nav-cta.button-small:focus-visible {
    transform: translateY(-2px) scale(1.018) !important;
    filter: saturate(1.08) brightness(1.045) !important;
    box-shadow: 0 12px 28px rgba(212, 164, 55, .39), inset 0 1px 0 rgba(255,255,255,.95), 0 0 0 3px rgba(239,200,108,.12) !important;
  }

  /* Restrained, isolated shine centered on the actual logo star. */
  .site-header .logo-star-shimmer {
    left: 53.45% !important;
    top: 25.5% !important;
    width: 13px !important;
    height: 13px !important;
    z-index: 6 !important;
    opacity: .92 !important;
    mix-blend-mode: screen !important;
    border-radius: 50% !important;
    background: radial-gradient(circle,
      rgba(255,255,255,1) 0 12%,
      rgba(255,248,202,.98) 20%,
      rgba(246,208,104,.78) 42%,
      rgba(239,188,60,.28) 62%,
      transparent 76%) !important;
    box-shadow: 0 0 4px rgba(255,255,255,.95), 0 0 9px rgba(247,213,119,.68), 0 0 15px rgba(222,169,53,.34) !important;
    filter: none !important;
    animation: refinedStarPulseV61 1.9s ease-in-out infinite !important;
  }

  .site-header .logo-star-shimmer::before,
  .site-header .logo-star-shimmer::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 250% !important;
    height: 250% !important;
    border-radius: 0 !important;
    background:
      linear-gradient(transparent 48.7%, rgba(255,239,174,.68) 49.4%, #fff 50%, rgba(255,239,174,.68) 50.6%, transparent 51.3%),
      linear-gradient(90deg, transparent 48.7%, rgba(255,239,174,.68) 49.4%, #fff 50%, rgba(255,239,174,.68) 50.6%, transparent 51.3%) !important;
    filter: drop-shadow(0 0 3px rgba(255,232,151,.68)) !important;
    animation: refinedStarRaysV61 1.9s ease-in-out infinite !important;
  }

  .site-header .logo-star-shimmer::after {
    width: 185% !important;
    height: 185% !important;
    opacity: .72 !important;
    animation-delay: -.95s !important;
    transform: translate(-50%, -50%) rotate(45deg) !important;
  }
}

@keyframes refinedStarPulseV61 {
  0%, 100% { opacity: .72; transform: translate(-50%, -50%) scale(.9); }
  45% { opacity: 1; transform: translate(-50%, -50%) scale(1.18); }
  60% { opacity: .9; transform: translate(-50%, -50%) scale(1.04); }
}

@keyframes refinedStarRaysV61 {
  0%, 100% { opacity: .4; transform: translate(-50%, -50%) scale(.82) rotate(0deg); }
  45% { opacity: .95; transform: translate(-50%, -50%) scale(1.12) rotate(12deg); }
  60% { opacity: .65; transform: translate(-50%, -50%) scale(.96) rotate(18deg); }
}

@keyframes premiumCtaSweepV61 {
  0%, 68% { transform: translateX(-130%); opacity: 0; }
  73% { opacity: .85; }
  88% { transform: translateX(135%); opacity: 0; }
  100% { transform: translateX(135%); opacity: 0; }
}

/* ===== v62 definitive navigation refresh ===== */
@media (min-width: 981px) {
  .site-header {
    top: 8px !important;
  }

  .site-header .nav-shell {
    width: calc(100% - 28px) !important;
    max-width: 1480px !important;
    height: 66px !important;
    min-height: 66px !important;
    padding: 6px 12px 6px 16px !important;
    border-radius: 18px !important;
    background: rgba(6, 18, 43, .97) !important;
    border: 1px solid rgba(239, 200, 108, .28) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.06) !important;
  }

  .site-header .brand {
    width: 184px !important;
    max-width: 184px !important;
    height: 54px !important;
    flex: 0 0 184px !important;
  }

  .site-header .logo-image-wrap {
    width: 184px !important;
    height: 54px !important;
    overflow: hidden !important;
  }

  .site-header .logo-image {
    width: 236px !important;
    left: -26px !important;
    top: -38px !important;
  }

  .site-header .nav-links {
    gap: 4px !important;
  }

  .site-header .nav-links a:not(.button) {
    position: relative !important;
    padding: 10px 13px !important;
    border-radius: 10px !important;
    color: rgba(255,255,255,.82) !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    letter-spacing: .025em !important;
    border: 1px solid transparent !important;
    background: transparent !important;
    transition: all .22s ease !important;
  }

  .site-header .nav-links a:not(.button)::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 14px !important;
    right: 14px !important;
    bottom: 6px !important;
    height: 1px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, transparent, #f0cb72, transparent) !important;
    opacity: 0 !important;
    transform: scaleX(.35) !important;
    transition: opacity .22s ease, transform .22s ease !important;
  }

  .site-header .nav-links a:not(.button):hover,
  .site-header .nav-links a:not(.button):focus-visible,
  .site-header .nav-links a.active:not(.button) {
    color: #fff !important;
    background: rgba(255,255,255,.055) !important;
    border-color: rgba(239,200,108,.18) !important;
    transform: translateY(-1px) !important;
  }

  .site-header .nav-links a:not(.button):hover::after,
  .site-header .nav-links a:not(.button):focus-visible::after,
  .site-header .nav-links a.active:not(.button)::after {
    opacity: 1 !important;
    transform: scaleX(1) !important;
  }

  .site-header .nav-cta.button-small {
    min-height: 44px !important;
    padding: 12px 20px !important;
    border-radius: 999px !important;
    font-size: 11.5px !important;
    font-weight: 800 !important;
    letter-spacing: .03em !important;
    color: #07152f !important;
    background: linear-gradient(135deg, #fff7cf 0%, #f4d780 36%, #e7b84e 72%, #cf9430 100%) !important;
    border: 1px solid rgba(255,247,207,.98) !important;
    box-shadow: 0 9px 24px rgba(229,178,66,.34), inset 0 1px 0 rgba(255,255,255,.95), inset 0 -1px 0 rgba(112,72,0,.24) !important;
  }

  .site-header .nav-cta.button-small::before {
    animation: premiumCtaSweepV62 3.4s ease-in-out infinite !important;
  }

  .site-header .nav-cta.button-small:hover,
  .site-header .nav-cta.button-small:focus-visible {
    transform: translateY(-2px) scale(1.025) !important;
    box-shadow: 0 14px 34px rgba(229,178,66,.48), 0 0 0 4px rgba(240,203,114,.12), inset 0 1px 0 rgba(255,255,255,1) !important;
  }

  /* Obvious but contained glow directly over the artwork star. */
  .site-header .logo-star-shimmer {
    left: 52.8% !important;
    top: 26.4% !important;
    width: 18px !important;
    height: 18px !important;
    opacity: 1 !important;
    border-radius: 50% !important;
    background: radial-gradient(circle, #fff 0 10%, #fff8cf 20%, rgba(248,211,100,.95) 38%, rgba(236,177,45,.48) 58%, transparent 72%) !important;
    box-shadow: 0 0 5px 2px rgba(255,255,255,.95), 0 0 11px 4px rgba(255,226,132,.78), 0 0 18px 6px rgba(232,177,55,.36) !important;
    filter: none !important;
    animation: logoStarGlowV62 1.45s ease-in-out infinite !important;
  }

  .site-header .logo-star-shimmer::before,
  .site-header .logo-star-shimmer::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 38px !important;
    height: 38px !important;
    background:
      linear-gradient(transparent 48.9%, rgba(255,241,181,.78) 49.5%, #fff 50%, rgba(255,241,181,.78) 50.5%, transparent 51.1%),
      linear-gradient(90deg, transparent 48.9%, rgba(255,241,181,.78) 49.5%, #fff 50%, rgba(255,241,181,.78) 50.5%, transparent 51.1%) !important;
    transform: translate(-50%,-50%) rotate(0deg) scale(.88) !important;
    filter: drop-shadow(0 0 4px rgba(255,224,122,.72)) !important;
    opacity: .78 !important;
    animation: logoStarRaysV62 1.45s ease-in-out infinite !important;
  }

  .site-header .logo-star-shimmer::after {
    width: 28px !important;
    height: 28px !important;
    transform: translate(-50%,-50%) rotate(45deg) scale(.86) !important;
    opacity: .62 !important;
    animation-delay: -.72s !important;
  }
}

@keyframes logoStarGlowV62 {
  0%, 100% { transform: translate(-50%,-50%) scale(.94); opacity: .82; }
  48% { transform: translate(-50%,-50%) scale(1.16); opacity: 1; }
  62% { transform: translate(-50%,-50%) scale(1.04); opacity: .94; }
}

@keyframes logoStarRaysV62 {
  0%, 100% { opacity: .46; transform: translate(-50%,-50%) rotate(0deg) scale(.78); }
  48% { opacity: .96; transform: translate(-50%,-50%) rotate(8deg) scale(1.08); }
  62% { opacity: .7; transform: translate(-50%,-50%) rotate(13deg) scale(.94); }
}

@keyframes premiumCtaSweepV62 {
  0%, 58% { transform: translateX(-135%); opacity: 0; }
  64% { opacity: .9; }
  82% { transform: translateX(140%); opacity: 0; }
  100% { transform: translateX(140%); opacity: 0; }
}

/* ===== v64: comfortable premium navigation, contained logo glow, luxury 3D CTA ===== */
.skip-link {
  position: fixed !important;
  left: 12px !important;
  top: -80px !important;
  z-index: 99999 !important;
}
.skip-link:focus { top: 12px !important; }

@media (min-width: 981px) {
  .site-header .nav-shell {
    min-height: 72px !important;
    padding: 9px 18px !important;
    border-radius: 20px !important;
    gap: 14px !important;
    background: linear-gradient(180deg, rgba(10,25,55,.96), rgba(5,16,39,.94)) !important;
    border: 1px solid rgba(244,211,133,.24) !important;
    box-shadow: 0 16px 44px rgba(1,8,24,.34), inset 0 1px 0 rgba(255,255,255,.055) !important;
  }

  .site-header .brand {
    max-width: 210px !important;
    flex: 0 0 210px !important;
  }

  .site-header .nav-links {
    gap: 6px !important;
  }

  .site-header .nav-links a:not(.button) {
    position: relative !important;
    padding: 10px 15px !important;
    border-radius: 999px !important;
    color: rgba(255,255,255,.8) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: .045em !important;
    border: 1px solid rgba(255,255,255,.055) !important;
    background: linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,.008)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035) !important;
    transition: transform .22s ease, color .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease !important;
  }

  .site-header .nav-links a:not(.button)::after {
    content: "" !important;
    position: absolute !important;
    left: 18px !important;
    right: 18px !important;
    bottom: 6px !important;
    height: 1px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, transparent, #f7d887, transparent) !important;
    opacity: 0 !important;
    transform: scaleX(.35) !important;
    transition: opacity .22s ease, transform .22s ease !important;
  }

  .site-header .nav-links a:not(.button):hover,
  .site-header .nav-links a:not(.button):focus-visible,
  .site-header .nav-links a.active:not(.button) {
    color: #fff !important;
    transform: translateY(-1px) !important;
    border-color: rgba(247,216,135,.26) !important;
    background: linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.025)) !important;
    box-shadow: 0 8px 20px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.08) !important;
  }

  .site-header .nav-links a:not(.button):hover::after,
  .site-header .nav-links a:not(.button):focus-visible::after,
  .site-header .nav-links a.active:not(.button)::after {
    opacity: 1 !important;
    transform: scaleX(1) !important;
  }

  .site-header .nav-cta.button-small {
    min-height: 48px !important;
    padding: 13px 22px !important;
    border-radius: 999px !important;
    color: #10213f !important;
    font-size: 11.5px !important;
    font-weight: 900 !important;
    letter-spacing: .025em !important;
    text-shadow: 0 1px 0 rgba(255,255,255,.72) !important;
    border: 1px solid #fff0b1 !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,.62) 0%, rgba(255,255,255,0) 34%),
      linear-gradient(135deg, #fff9d9 0%, #f6da82 28%, #e8b94e 58%, #c98a23 100%) !important;
    box-shadow:
      0 4px 0 #9a6418,
      0 12px 26px rgba(222,166,49,.36),
      inset 0 2px 0 rgba(255,255,255,.95),
      inset 0 -2px 0 rgba(116,72,6,.3) !important;
    transform: translateY(-2px) !important;
    overflow: visible !important;
  }

  .site-header .nav-cta.button-small::before {
    content: "" !important;
    position: absolute !important;
    inset: 2px 10px auto !important;
    height: 42% !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.05)) !important;
    opacity: .78 !important;
    transform: none !important;
    animation: none !important;
    pointer-events: none !important;
  }

  .site-header .nav-cta.button-small::after {
    content: "" !important;
    position: absolute !important;
    top: 5px !important;
    bottom: 5px !important;
    left: -35% !important;
    width: 26% !important;
    border-radius: 999px !important;
    background: linear-gradient(110deg, transparent, rgba(255,255,255,.88), transparent) !important;
    transform: skewX(-16deg) !important;
    opacity: 0 !important;
    transition: left .58s ease, opacity .18s ease !important;
    pointer-events: none !important;
  }

  .site-header .nav-cta.button-small:hover,
  .site-header .nav-cta.button-small:focus-visible {
    transform: translateY(-4px) scale(1.025) !important;
    box-shadow:
      0 6px 0 #895714,
      0 18px 38px rgba(230,175,58,.52),
      0 0 0 4px rgba(248,218,136,.12),
      inset 0 2px 0 #fff,
      inset 0 -2px 0 rgba(112,67,4,.32) !important;
  }

  .site-header .nav-cta.button-small:hover::after,
  .site-header .nav-cta.button-small:focus-visible::after {
    left: 112% !important;
    opacity: 1 !important;
  }

  .site-header .nav-cta.button-small:active {
    transform: translateY(0) scale(.99) !important;
    box-shadow: 0 2px 0 #895714, 0 8px 18px rgba(216,158,42,.34), inset 0 2px 0 rgba(255,255,255,.8) !important;
  }

  /* Glow stays tightly centered on the existing star in the logo artwork. */
  .site-header .logo-star-shimmer {
    left: 52.8% !important;
    top: 26.4% !important;
    width: 12px !important;
    height: 12px !important;
    opacity: 1 !important;
    border-radius: 50% !important;
    background: radial-gradient(circle,
      #fff 0 12%,
      #fff9d9 20%,
      rgba(255,226,137,.98) 38%,
      rgba(242,191,65,.62) 56%,
      rgba(236,176,40,.18) 72%,
      transparent 78%) !important;
    box-shadow:
      0 0 3px 1px rgba(255,255,255,.98),
      0 0 8px 3px rgba(255,229,145,.84),
      0 0 13px 4px rgba(237,184,55,.36) !important;
    filter: none !important;
    animation: logoStarContainedGlowV64 1.9s ease-in-out infinite !important;
  }

  .site-header .logo-star-shimmer::before,
  .site-header .logo-star-shimmer::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 24px !important;
    height: 24px !important;
    background:
      linear-gradient(transparent 48.5%, rgba(255,246,194,.9) 49.5%, #fff 50%, rgba(255,246,194,.9) 50.5%, transparent 51.5%),
      linear-gradient(90deg, transparent 48.5%, rgba(255,246,194,.9) 49.5%, #fff 50%, rgba(255,246,194,.9) 50.5%, transparent 51.5%) !important;
    transform: translate(-50%,-50%) scale(.78) !important;
    filter: drop-shadow(0 0 3px rgba(255,222,119,.75)) !important;
    opacity: .72 !important;
    animation: logoStarContainedRaysV64 1.9s ease-in-out infinite !important;
  }

  .site-header .logo-star-shimmer::after {
    width: 18px !important;
    height: 18px !important;
    transform: translate(-50%,-50%) rotate(45deg) scale(.8) !important;
    opacity: .56 !important;
    animation-delay: -.95s !important;
  }

  .site-header .nav-cta .sparkle-halo {
    inset: -15px !important;
  }
  .site-header .nav-cta:hover .sparkle-halo i,
  .site-header .nav-cta:focus-visible .sparkle-halo i {
    filter: drop-shadow(0 0 5px rgba(255,255,255,1)) drop-shadow(0 0 10px currentColor) !important;
  }
}

@keyframes logoStarContainedGlowV64 {
  0%,100% { transform: translate(-50%,-50%) scale(.92); opacity: .78; }
  45% { transform: translate(-50%,-50%) scale(1.15); opacity: 1; }
  62% { transform: translate(-50%,-50%) scale(1.03); opacity: .92; }
}

@keyframes logoStarContainedRaysV64 {
  0%,100% { opacity: .34; transform: translate(-50%,-50%) scale(.68) rotate(0deg); }
  45% { opacity: .86; transform: translate(-50%,-50%) scale(1) rotate(8deg); }
  62% { opacity: .58; transform: translate(-50%,-50%) scale(.84) rotate(13deg); }
}

/* ===== v65 — animated twinkle for the contained logo light ===== */
@media (min-width:981px){
  .site-header .logo-star-shimmer{
    animation: logoStarTwinkleV65 2.35s ease-in-out infinite !important;
    transform-origin: 50% 50% !important;
  }

  .site-header .logo-star-shimmer::before{
    animation: logoStarMainSparkV65 2.35s cubic-bezier(.4,0,.2,1) infinite !important;
    transform-origin: 50% 50% !important;
  }

  .site-header .logo-star-shimmer::after{
    animation: logoStarDiagonalSparkV65 2.35s cubic-bezier(.4,0,.2,1) infinite !important;
    animation-delay: -.12s !important;
    transform-origin: 50% 50% !important;
  }
}

@keyframes logoStarTwinkleV65{
  0%,24%,100%{
    transform:translate(-50%,-50%) scale(.94);
    opacity:.82;
    box-shadow:0 0 3px 1px rgba(255,255,255,.92),0 0 7px 2px rgba(255,229,145,.68),0 0 11px 3px rgba(237,184,55,.28);
  }
  31%{
    transform:translate(-50%,-50%) scale(1.08);
    opacity:1;
    box-shadow:0 0 4px 2px rgba(255,255,255,1),0 0 10px 4px rgba(255,235,166,.9),0 0 15px 5px rgba(237,184,55,.42);
  }
  38%{
    transform:translate(-50%,-50%) scale(.98);
    opacity:.9;
  }
  47%{
    transform:translate(-50%,-50%) scale(1.14);
    opacity:1;
    box-shadow:0 0 5px 2px rgba(255,255,255,1),0 0 11px 4px rgba(255,239,183,.94),0 0 16px 5px rgba(237,184,55,.46);
  }
  58%{
    transform:translate(-50%,-50%) scale(.96);
    opacity:.84;
  }
}

@keyframes logoStarMainSparkV65{
  0%,24%,100%{opacity:.35;transform:translate(-50%,-50%) scale(.66) rotate(0deg);}
  31%{opacity:1;transform:translate(-50%,-50%) scale(1.08) rotate(8deg);}
  38%{opacity:.42;transform:translate(-50%,-50%) scale(.72) rotate(14deg);}
  47%{opacity:.92;transform:translate(-50%,-50%) scale(1) rotate(22deg);}
  58%{opacity:.4;transform:translate(-50%,-50%) scale(.7) rotate(30deg);}
}

@keyframes logoStarDiagonalSparkV65{
  0%,28%,100%{opacity:.2;transform:translate(-50%,-50%) rotate(45deg) scale(.56);}
  35%{opacity:.88;transform:translate(-50%,-50%) rotate(57deg) scale(1.02);}
  44%{opacity:.28;transform:translate(-50%,-50%) rotate(66deg) scale(.62);}
  52%{opacity:.74;transform:translate(-50%,-50%) rotate(76deg) scale(.9);}
  63%{opacity:.22;transform:translate(-50%,-50%) rotate(86deg) scale(.58);}
}

@media (prefers-reduced-motion:reduce){
  .site-header .logo-star-shimmer,
  .site-header .logo-star-shimmer::before,
  .site-header .logo-star-shimmer::after{animation:none !important;}
}


/* ===== v66 — unmistakable animated logo twinkle (kept tightly around star) ===== */
@media (min-width:981px){
  .site-header .logo-star-shimmer{
    width:12px !important;
    height:12px !important;
    opacity:1 !important;
    animation:logoStarPulseV66 1.6s ease-in-out infinite !important;
    will-change:transform,opacity,box-shadow !important;
  }
  .site-header .logo-star-shimmer::before{
    width:26px !important;
    height:26px !important;
    opacity:.35 !important;
    animation:logoStarCrossV66 1.6s ease-in-out infinite !important;
    will-change:transform,opacity !important;
  }
  .site-header .logo-star-shimmer::after{
    width:20px !important;
    height:20px !important;
    opacity:.18 !important;
    animation:logoStarDiamondV66 1.6s ease-in-out infinite .18s !important;
    will-change:transform,opacity !important;
  }
}

@keyframes logoStarPulseV66{
  0%,18%,100%{
    transform:translate(-50%,-50%) scale(.88);
    opacity:.78;
    box-shadow:0 0 3px 1px rgba(255,255,255,.9),0 0 7px 2px rgba(255,226,132,.58),0 0 10px 3px rgba(231,172,39,.20);
  }
  28%{
    transform:translate(-50%,-50%) scale(1.22);
    opacity:1;
    box-shadow:0 0 5px 2px rgba(255,255,255,1),0 0 11px 4px rgba(255,238,175,.95),0 0 16px 5px rgba(236,181,48,.45);
  }
  38%{
    transform:translate(-50%,-50%) scale(.95);
    opacity:.86;
  }
  50%{
    transform:translate(-50%,-50%) scale(1.12);
    opacity:1;
    box-shadow:0 0 4px 2px rgba(255,255,255,1),0 0 10px 3px rgba(255,232,151,.88),0 0 14px 4px rgba(236,181,48,.38);
  }
  62%{
    transform:translate(-50%,-50%) scale(.9);
    opacity:.8;
  }
}

@keyframes logoStarCrossV66{
  0%,18%,100%{opacity:.18;transform:translate(-50%,-50%) scale(.5) rotate(0deg);}
  28%{opacity:1;transform:translate(-50%,-50%) scale(1.08) rotate(12deg);}
  38%{opacity:.3;transform:translate(-50%,-50%) scale(.62) rotate(19deg);}
  50%{opacity:.86;transform:translate(-50%,-50%) scale(.96) rotate(31deg);}
  62%{opacity:.2;transform:translate(-50%,-50%) scale(.55) rotate(40deg);}
}

@keyframes logoStarDiamondV66{
  0%,23%,100%{opacity:.08;transform:translate(-50%,-50%) rotate(45deg) scale(.42);}
  33%{opacity:.88;transform:translate(-50%,-50%) rotate(62deg) scale(1.05);}
  45%{opacity:.16;transform:translate(-50%,-50%) rotate(70deg) scale(.5);}
  56%{opacity:.68;transform:translate(-50%,-50%) rotate(84deg) scale(.88);}
  68%{opacity:.08;transform:translate(-50%,-50%) rotate(96deg) scale(.44);}
}

/* Keep the logo twinkle active even when the device requests reduced motion. */
@media (prefers-reduced-motion:reduce) and (min-width:981px){
  .site-header .logo-star-shimmer{animation:logoStarPulseV66 1.6s ease-in-out infinite !important;}
  .site-header .logo-star-shimmer::before{animation:logoStarCrossV66 1.6s ease-in-out infinite !important;}
  .site-header .logo-star-shimmer::after{animation:logoStarDiamondV66 1.6s ease-in-out infinite .18s !important;}
}

/* ===== v68 — constant premium pulse with obvious eye-catching twinkle ===== */
.site-header .logo-star-shimmer {
  display:block !important;
  z-index:5 !important;
  left:52.8% !important;
  top:26.4% !important;
  width:12px !important;
  height:12px !important;
  aspect-ratio:auto !important;
  border-radius:50% !important;
  pointer-events:none !important;
  transform-origin:center;
  background:radial-gradient(circle,
    #ffffff 0 15%,
    #fffef0 16% 27%,
    rgba(255,236,165,.98) 28% 44%,
    rgba(246,194,55,.72) 45% 60%,
    rgba(236,170,25,.24) 61% 74%,
    transparent 75%);
  animation:luminousStarPulseV68 1.55s cubic-bezier(.45,0,.2,1) infinite;
  will-change:transform,opacity,box-shadow,filter;
}

.site-header .logo-star-shimmer::before,
.site-header .logo-star-shimmer::after {
  content:"";
  display:block !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  pointer-events:none !important;
  transform-origin:center;
  border-radius:50%;
  will-change:transform,opacity,filter;
}

/* Main four-point glint: quick, bright, and confined to the logo star. */
.site-header .logo-star-shimmer::before {
  width:29px !important;
  height:29px !important;
  background:
    linear-gradient(transparent 47.4%, rgba(255,239,166,.58) 48.3%, #fff 49.8%, #fff 50.2%, rgba(255,239,166,.58) 51.7%, transparent 52.6%),
    linear-gradient(90deg, transparent 47.4%, rgba(255,239,166,.58) 48.3%, #fff 49.8%, #fff 50.2%, rgba(255,239,166,.58) 51.7%, transparent 52.6%);
  animation:luminousStarGlintV68 1.55s cubic-bezier(.45,0,.2,1) infinite;
}

/* Smaller diagonal glint adds the unmistakable twinkle without enlarging the glow. */
.site-header .logo-star-shimmer::after {
  width:21px !important;
  height:21px !important;
  background:
    linear-gradient(transparent 47.6%, rgba(255,249,213,.45) 48.6%, #fff 49.8%, #fff 50.2%, rgba(255,249,213,.45) 51.4%, transparent 52.4%),
    linear-gradient(90deg, transparent 47.6%, rgba(255,249,213,.45) 48.6%, #fff 49.8%, #fff 50.2%, rgba(255,249,213,.45) 51.4%, transparent 52.4%);
  animation:luminousStarDiagonalV68 1.55s cubic-bezier(.45,0,.2,1) infinite .10s;
}

@keyframes luminousStarPulseV68 {
  0%,100% {
    opacity:.78;
    transform:translate(-50%,-50%) scale(.84);
    box-shadow:
      0 0 2px 1px rgba(255,255,255,.92),
      0 0 6px 2px rgba(255,235,154,.62),
      0 0 10px 3px rgba(239,177,31,.22);
    filter:brightness(1);
  }
  22% {
    opacity:.95;
    transform:translate(-50%,-50%) scale(1.02);
    box-shadow:
      0 0 3px 1px rgba(255,255,255,1),
      0 0 8px 3px rgba(255,239,174,.82),
      0 0 13px 4px rgba(244,190,47,.38);
    filter:brightness(1.08);
  }
  36% {
    opacity:1;
    transform:translate(-50%,-50%) scale(1.20);
    box-shadow:
      0 0 5px 2px rgba(255,255,255,1),
      0 0 10px 4px rgba(255,246,204,.98),
      0 0 16px 5px rgba(247,196,58,.52);
    filter:brightness(1.22);
  }
  49% {
    opacity:.88;
    transform:translate(-50%,-50%) scale(.94);
    box-shadow:
      0 0 3px 1px rgba(255,255,255,.94),
      0 0 7px 2px rgba(255,237,164,.70),
      0 0 11px 3px rgba(242,183,39,.29);
    filter:brightness(1.03);
  }
  68% {
    opacity:1;
    transform:translate(-50%,-50%) scale(1.10);
    box-shadow:
      0 0 4px 2px rgba(255,255,255,1),
      0 0 9px 3px rgba(255,242,187,.90),
      0 0 14px 4px rgba(245,191,49,.43);
    filter:brightness(1.15);
  }
  82% {
    opacity:.82;
    transform:translate(-50%,-50%) scale(.88);
    box-shadow:
      0 0 2px 1px rgba(255,255,255,.90),
      0 0 6px 2px rgba(255,234,151,.60),
      0 0 10px 3px rgba(239,177,31,.22);
    filter:brightness(1);
  }
}

@keyframes luminousStarGlintV68 {
  0%,16%,100% { opacity:.16; transform:translate(-50%,-50%) scale(.56) rotate(0deg); filter:drop-shadow(0 0 1px rgba(255,225,105,.35)); }
  25% { opacity:.42; transform:translate(-50%,-50%) scale(.76) rotate(5deg); }
  34% { opacity:1; transform:translate(-50%,-50%) scale(1.12) rotate(12deg); filter:drop-shadow(0 0 4px rgba(255,225,105,.95)); }
  42% { opacity:.28; transform:translate(-50%,-50%) scale(.66) rotate(17deg); }
  62% { opacity:.28; transform:translate(-50%,-50%) scale(.64) rotate(25deg); }
  69% { opacity:.82; transform:translate(-50%,-50%) scale(.96) rotate(31deg); filter:drop-shadow(0 0 3px rgba(255,225,105,.78)); }
  77% { opacity:.18; transform:translate(-50%,-50%) scale(.58) rotate(38deg); }
}

@keyframes luminousStarDiagonalV68 {
  0%,22%,100% { opacity:.06; transform:translate(-50%,-50%) rotate(45deg) scale(.42); filter:drop-shadow(0 0 1px rgba(255,239,170,.25)); }
  31% { opacity:.28; transform:translate(-50%,-50%) rotate(51deg) scale(.62); }
  38% { opacity:.86; transform:translate(-50%,-50%) rotate(58deg) scale(1.02); filter:drop-shadow(0 0 3px rgba(255,239,170,.86)); }
  47% { opacity:.11; transform:translate(-50%,-50%) rotate(67deg) scale(.46); }
  66% { opacity:.18; transform:translate(-50%,-50%) rotate(76deg) scale(.55); }
  73% { opacity:.58; transform:translate(-50%,-50%) rotate(84deg) scale(.84); filter:drop-shadow(0 0 2px rgba(255,239,170,.66)); }
  81% { opacity:.06; transform:translate(-50%,-50%) rotate(94deg) scale(.43); }
}

@media (max-width:980px){
  .site-header .logo-star-shimmer{
    left:52.8% !important;
    top:26.4% !important;
    width:11px !important;
    height:11px !important;
  }
  .site-header .logo-star-shimmer::before{width:27px !important;height:27px !important;}
  .site-header .logo-star-shimmer::after{width:19px !important;height:19px !important;}
}

/* Preserve the branded animation even when reduced-motion is requested. */
@media (prefers-reduced-motion:reduce){
  .site-header .logo-star-shimmer{animation:luminousStarPulseV68 1.55s cubic-bezier(.45,0,.2,1) infinite !important;}
  .site-header .logo-star-shimmer::before{animation:luminousStarGlintV68 1.55s cubic-bezier(.45,0,.2,1) infinite !important;}
  .site-header .logo-star-shimmer::after{animation:luminousStarDiagonalV68 1.55s cubic-bezier(.45,0,.2,1) infinite .10s !important;}
}

/* ===== v69 — moving star sparkle + corrected footer/confirmation alignment ===== */
/* Header keeps its crop-specific alignment. */
.site-header .logo-star-shimmer{
  left:52.8% !important;
  top:26.4% !important;
  animation:luminousStarPulseV69 1.7s ease-in-out infinite !important;
}
.site-header .logo-star-shimmer::before{
  animation:luminousStarTravelV69 1.7s ease-in-out infinite !important;
}
.site-header .logo-star-shimmer::after{
  animation:luminousStarOrbitV69 1.7s ease-in-out infinite .08s !important;
}

/* Footer and confirmation logos show the uncropped image, so use the star's true image coordinates. */
.footer-brand .logo-star-shimmer,
.confirmation-brand .logo-star-shimmer{
  display:block !important;
  left:52.1% !important;
  top:32.6% !important;
  width:3.15% !important;
  height:auto !important;
  aspect-ratio:1 !important;
  z-index:5 !important;
  opacity:.92 !important;
  border-radius:50% !important;
  pointer-events:none !important;
  background:radial-gradient(circle,
    #fff 0 14%,
    #fffde7 15% 27%,
    rgba(255,234,151,.96) 28% 43%,
    rgba(246,191,45,.60) 44% 60%,
    rgba(236,170,25,.18) 61% 74%,
    transparent 75%) !important;
  animation:luminousStarPulseV69 1.7s ease-in-out infinite !important;
  will-change:transform,opacity,box-shadow,filter;
}
.footer-brand .logo-star-shimmer::before,
.footer-brand .logo-star-shimmer::after,
.confirmation-brand .logo-star-shimmer::before,
.confirmation-brand .logo-star-shimmer::after{
  content:"";
  display:block !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  pointer-events:none !important;
  transform-origin:center;
  border-radius:50%;
}
.footer-brand .logo-star-shimmer::before,
.confirmation-brand .logo-star-shimmer::before{
  width:250% !important;
  height:250% !important;
  background:
    linear-gradient(transparent 47.4%, rgba(255,239,166,.58) 48.3%, #fff 49.8%, #fff 50.2%, rgba(255,239,166,.58) 51.7%, transparent 52.6%),
    linear-gradient(90deg, transparent 47.4%, rgba(255,239,166,.58) 48.3%, #fff 49.8%, #fff 50.2%, rgba(255,239,166,.58) 51.7%, transparent 52.6%) !important;
  animation:luminousStarTravelV69 1.7s ease-in-out infinite !important;
}
.footer-brand .logo-star-shimmer::after,
.confirmation-brand .logo-star-shimmer::after{
  width:175% !important;
  height:175% !important;
  background:
    linear-gradient(transparent 47.6%, rgba(255,249,213,.42) 48.6%, #fff 49.8%, #fff 50.2%, rgba(255,249,213,.42) 51.4%, transparent 52.4%),
    linear-gradient(90deg, transparent 47.6%, rgba(255,249,213,.42) 48.6%, #fff 49.8%, #fff 50.2%, rgba(255,249,213,.42) 51.4%, transparent 52.4%) !important;
  animation:luminousStarOrbitV69 1.7s ease-in-out infinite .08s !important;
}

@keyframes luminousStarPulseV69{
  0%,100%{
    opacity:.78;
    transform:translate(-50%,-50%) scale(.84);
    box-shadow:0 0 2px 1px rgba(255,255,255,.9),0 0 6px 2px rgba(255,235,154,.58),0 0 10px 3px rgba(239,177,31,.18);
    filter:brightness(1);
  }
  25%{
    opacity:.96;
    transform:translate(-50%,-50%) scale(1.04);
    box-shadow:0 0 3px 1px rgba(255,255,255,1),0 0 8px 3px rgba(255,239,174,.8),0 0 13px 4px rgba(244,190,47,.34);
    filter:brightness(1.09);
  }
  43%{
    opacity:1;
    transform:translate(-50%,-50%) scale(1.18);
    box-shadow:0 0 5px 2px rgba(255,255,255,1),0 0 10px 4px rgba(255,246,204,.94),0 0 16px 5px rgba(247,196,58,.48);
    filter:brightness(1.2);
  }
  66%{
    opacity:.88;
    transform:translate(-50%,-50%) scale(.94);
    box-shadow:0 0 3px 1px rgba(255,255,255,.94),0 0 7px 2px rgba(255,237,164,.68),0 0 11px 3px rgba(242,183,39,.26);
    filter:brightness(1.03);
  }
  82%{
    opacity:1;
    transform:translate(-50%,-50%) scale(1.08);
    box-shadow:0 0 4px 2px rgba(255,255,255,1),0 0 9px 3px rgba(255,242,187,.86),0 0 14px 4px rgba(245,191,49,.40);
    filter:brightness(1.14);
  }
}

/* The larger four-point glint visibly travels diagonally across the star. */
@keyframes luminousStarTravelV69{
  0%,12%,100%{opacity:.10;transform:translate(calc(-50% - 7px),calc(-50% + 6px)) scale(.46) rotate(-10deg);filter:drop-shadow(0 0 1px rgba(255,225,105,.25));}
  24%{opacity:.42;transform:translate(calc(-50% - 4px),calc(-50% + 3px)) scale(.72) rotate(-2deg);}
  38%{opacity:1;transform:translate(-50%,-50%) scale(1.10) rotate(8deg);filter:drop-shadow(0 0 4px rgba(255,232,135,.98));}
  50%{opacity:.56;transform:translate(calc(-50% + 4px),calc(-50% - 3px)) scale(.82) rotate(17deg);}
  61%{opacity:.10;transform:translate(calc(-50% + 7px),calc(-50% - 6px)) scale(.46) rotate(26deg);}
  72%{opacity:.18;transform:translate(calc(-50% - 3px),calc(-50% + 2px)) scale(.58) rotate(34deg);}
  84%{opacity:.76;transform:translate(calc(-50% + 1px),calc(-50% - 1px)) scale(.94) rotate(43deg);filter:drop-shadow(0 0 3px rgba(255,232,135,.78));}
  93%{opacity:.12;transform:translate(calc(-50% + 5px),calc(-50% - 4px)) scale(.48) rotate(50deg);}
}

/* A smaller sparkle circles the center, making the motion unmistakable but compact. */
@keyframes luminousStarOrbitV69{
  0%,100%{opacity:.08;transform:translate(calc(-50% + 4px),calc(-50% + 1px)) rotate(45deg) scale(.42);}
  18%{opacity:.32;transform:translate(calc(-50% + 2px),calc(-50% + 4px)) rotate(55deg) scale(.62);}
  34%{opacity:.82;transform:translate(calc(-50% - 2px),calc(-50% + 3px)) rotate(66deg) scale(.90);filter:drop-shadow(0 0 3px rgba(255,239,170,.82));}
  51%{opacity:.16;transform:translate(calc(-50% - 4px),calc(-50% - 1px)) rotate(78deg) scale(.48);}
  68%{opacity:.38;transform:translate(calc(-50% - 1px),calc(-50% - 4px)) rotate(90deg) scale(.68);}
  82%{opacity:.72;transform:translate(calc(-50% + 3px),calc(-50% - 2px)) rotate(103deg) scale(.86);filter:drop-shadow(0 0 2px rgba(255,239,170,.68));}
  94%{opacity:.10;transform:translate(calc(-50% + 4px),calc(-50% + 1px)) rotate(114deg) scale(.44);}
}

@media (max-width:760px){
  .footer-brand .logo-star-shimmer,
  .confirmation-brand .logo-star-shimmer{
    left:52.1% !important;
    top:32.6% !important;
    width:3.15% !important;
  }
}

@media (prefers-reduced-motion:reduce){
  .site-header .logo-star-shimmer,
  .footer-brand .logo-star-shimmer,
  .confirmation-brand .logo-star-shimmer{animation:luminousStarPulseV69 1.7s ease-in-out infinite !important;display:block !important;}
  .site-header .logo-star-shimmer::before,
  .footer-brand .logo-star-shimmer::before,
  .confirmation-brand .logo-star-shimmer::before{animation:luminousStarTravelV69 1.7s ease-in-out infinite !important;}
  .site-header .logo-star-shimmer::after,
  .footer-brand .logo-star-shimmer::after,
  .confirmation-brand .logo-star-shimmer::after{animation:luminousStarOrbitV69 1.7s ease-in-out infinite .08s !important;}
}


/* ===== v70 REAL centered logo twinkle — inline backup also added ===== */
.logo-image-wrap{position:relative!important;overflow:visible!important;isolation:isolate!important}
.logo-image-wrap>.logo-image{position:relative!important;z-index:2!important}
.logo-image-wrap>.logo-star-shimmer{z-index:1!important;display:block!important;visibility:visible!important;pointer-events:none!important}

/* Exact center of the baked-in star in the cropped header logo */
.site-header .logo-image-wrap>.logo-star-shimmer{
  left:52.8%!important;
  top:26.4%!important;
  width:13px!important;
  height:13px!important;
}

/* Exact center of the baked-in star in the full footer/confirmation logo */
.footer-brand .logo-image-wrap>.logo-star-shimmer,
.confirmation-brand .logo-image-wrap>.logo-star-shimmer{
  left:52.08%!important;
  top:32.52%!important;
  width:clamp(12px,3.2%,18px)!important;
  height:auto!important;
  aspect-ratio:1!important;
}

.site-header .logo-image-wrap>.logo-star-shimmer,
.footer-brand .logo-image-wrap>.logo-star-shimmer,
.confirmation-brand .logo-image-wrap>.logo-star-shimmer{
  position:absolute!important;
  transform:translate(-50%,-50%) scale(.84)!important;
  transform-origin:50% 50%!important;
  border-radius:50%!important;
  opacity:.72!important;
  background:radial-gradient(circle,
    rgba(255,255,255,1) 0 10%,
    rgba(255,251,221,.98) 11% 25%,
    rgba(255,229,128,.82) 26% 47%,
    rgba(247,192,43,.35) 48% 66%,
    transparent 67%)!important;
  box-shadow:
    0 0 3px 1px rgba(255,255,255,.95),
    0 0 8px 3px rgba(255,232,145,.72),
    0 0 14px 5px rgba(240,179,34,.28)!important;
  filter:none!important;
  animation:luminousTruePulseV70 1.45s ease-in-out infinite!important;
  will-change:transform,opacity,box-shadow!important;
}

.site-header .logo-image-wrap>.logo-star-shimmer::before,
.site-header .logo-image-wrap>.logo-star-shimmer::after,
.footer-brand .logo-image-wrap>.logo-star-shimmer::before,
.footer-brand .logo-image-wrap>.logo-star-shimmer::after,
.confirmation-brand .logo-image-wrap>.logo-star-shimmer::before,
.confirmation-brand .logo-image-wrap>.logo-star-shimmer::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  pointer-events:none!important;
  transform-origin:50% 50%!important;
  border-radius:50%!important;
  opacity:.2!important;
  background:
    linear-gradient(transparent 47%,rgba(255,244,190,.72) 48.5%,#fff 49.75%,#fff 50.25%,rgba(255,244,190,.72) 51.5%,transparent 53%),
    linear-gradient(90deg,transparent 47%,rgba(255,244,190,.72) 48.5%,#fff 49.75%,#fff 50.25%,rgba(255,244,190,.72) 51.5%,transparent 53%)!important;
  filter:drop-shadow(0 0 3px rgba(255,226,116,.88))!important;
  animation:luminousTrueTwinkleV70 1.45s cubic-bezier(.4,0,.2,1) infinite!important;
  will-change:transform,opacity!important;
}

.site-header .logo-image-wrap>.logo-star-shimmer::before{width:31px!important;height:31px!important}
.site-header .logo-image-wrap>.logo-star-shimmer::after{width:22px!important;height:22px!important;animation-delay:-.18s!important}
.footer-brand .logo-image-wrap>.logo-star-shimmer::before,
.confirmation-brand .logo-image-wrap>.logo-star-shimmer::before{width:250%!important;height:250%!important}
.footer-brand .logo-image-wrap>.logo-star-shimmer::after,
.confirmation-brand .logo-image-wrap>.logo-star-shimmer::after{width:175%!important;height:175%!important;animation-delay:-.18s!important}

@keyframes luminousTruePulseV70{
  0%,100%{opacity:.68!important;transform:translate(-50%,-50%) scale(.80)!important;box-shadow:0 0 2px 1px rgba(255,255,255,.88),0 0 7px 2px rgba(255,231,143,.58),0 0 12px 4px rgba(240,179,34,.20)!important}
  26%{opacity:.9!important;transform:translate(-50%,-50%) scale(1.00)!important;box-shadow:0 0 4px 2px rgba(255,255,255,1),0 0 10px 4px rgba(255,239,170,.82),0 0 16px 5px rgba(240,179,34,.36)!important}
  43%{opacity:1!important;transform:translate(-50%,-50%) scale(1.22)!important;box-shadow:0 0 5px 2px rgba(255,255,255,1),0 0 12px 5px rgba(255,246,203,.96),0 0 19px 6px rgba(244,190,45,.48)!important}
  60%{opacity:.78!important;transform:translate(-50%,-50%) scale(.90)!important;box-shadow:0 0 3px 1px rgba(255,255,255,.92),0 0 8px 3px rgba(255,234,153,.64),0 0 13px 4px rgba(240,179,34,.25)!important}
  78%{opacity:.96!important;transform:translate(-50%,-50%) scale(1.10)!important;box-shadow:0 0 4px 2px rgba(255,255,255,1),0 0 11px 4px rgba(255,241,184,.88),0 0 17px 5px rgba(242,185,40,.40)!important}
}

@keyframes luminousTrueTwinkleV70{
  0%,18%,100%{opacity:.10!important;transform:translate(-50%,-50%) scale(.44) rotate(0deg)!important}
  29%{opacity:.48!important;transform:translate(-50%,-50%) scale(.72) rotate(7deg)!important}
  42%{opacity:1!important;transform:translate(-50%,-50%) scale(1.10) rotate(16deg)!important}
  51%{opacity:.22!important;transform:translate(-50%,-50%) scale(.56) rotate(24deg)!important}
  70%{opacity:.40!important;transform:translate(-50%,-50%) scale(.70) rotate(33deg)!important}
  79%{opacity:.90!important;transform:translate(-50%,-50%) scale(.98) rotate(43deg)!important}
  90%{opacity:.12!important;transform:translate(-50%,-50%) scale(.48) rotate(52deg)!important}
}

/* Keep the branded twinkle running regardless of OS reduced-motion settings. */
@media (prefers-reduced-motion:reduce){
  .site-header .logo-image-wrap>.logo-star-shimmer,
  .footer-brand .logo-image-wrap>.logo-star-shimmer,
  .confirmation-brand .logo-image-wrap>.logo-star-shimmer{animation:luminousTruePulseV70 1.45s ease-in-out infinite!important}
  .site-header .logo-image-wrap>.logo-star-shimmer::before,
  .site-header .logo-image-wrap>.logo-star-shimmer::after,
  .footer-brand .logo-image-wrap>.logo-star-shimmer::before,
  .footer-brand .logo-image-wrap>.logo-star-shimmer::after,
  .confirmation-brand .logo-image-wrap>.logo-star-shimmer::before,
  .confirmation-brand .logo-image-wrap>.logo-star-shimmer::after{animation:luminousTrueTwinkleV70 1.45s cubic-bezier(.4,0,.2,1) infinite!important}
}

/* v106 mobile header refinement */
@media (max-width:640px){
.site-header{top:8px!important}
.site-header .nav-shell{padding:8px 14px!important;min-height:68px!important}
.site-header .brand{max-width:220px!important;width:220px!important;display:flex!important;justify-content:center}
.site-header .logo-image{width:100%!important;height:auto!important;object-fit:contain!important}
.nav-links a{padding:10px 0!important}
}


/* Luminous v114 — requested dark Calendly canvas with black widget text.
   Calendly controls the internal field styles through its embed parameters. */
.calendly-frame,
.calendly-inline-widget {
  background: #050719 !important;
}


/* v121 — visible but restrained natural night-sky variation.
   Large feathered cloud bands create organic lighter and darker areas
   without looking like a bright digital gradient. */
.sky-atmosphere {
  position: fixed;
  inset: -12%;
  z-index: -3;
  pointer-events: none;
  opacity: .92;
  background:
    radial-gradient(ellipse 48% 34% at 14% 12%, rgba(83, 101, 171, .24) 0%, rgba(43, 54, 108, .13) 42%, transparent 74%),
    radial-gradient(ellipse 42% 28% at 74% 15%, rgba(31, 92, 130, .18) 0%, rgba(18, 48, 79, .10) 46%, transparent 76%),
    radial-gradient(ellipse 60% 38% at 52% 44%, rgba(39, 47, 99, .20) 0%, rgba(17, 22, 56, .08) 50%, transparent 78%),
    radial-gradient(ellipse 46% 32% at 22% 72%, rgba(60, 43, 104, .17) 0%, rgba(31, 24, 65, .08) 48%, transparent 76%),
    radial-gradient(ellipse 52% 36% at 88% 76%, rgba(4, 7, 22, .64) 0%, rgba(4, 7, 22, .22) 46%, transparent 76%),
    radial-gradient(ellipse 38% 26% at 58% 92%, rgba(72, 83, 142, .14) 0%, transparent 72%);
  filter: blur(18px) saturate(.9);
  transform: scale(1.04);
}

/* Keep the sky variation visible behind sections that previously used a flat fill. */
main,
.hero,
.section,
.services,
.process,
.about,
.contact,
.book-spark-section {
  background-color: transparent !important;
}

@media (max-width: 700px) {
  .sky-atmosphere {
    opacity: .82;
    inset: -20%;
    filter: blur(14px) saturate(.88);
  }
}

/* v123 — stronger realistic atmospheric night sky.
   More visible broad cloud banks, cool moonlit haze, and deep shadow pockets
   while preserving the premium navy palette and readable content. */
body {
  background:
    radial-gradient(ellipse 105% 58% at 8% 3%, rgba(100, 121, 194, .25) 0%, rgba(49, 62, 126, .14) 34%, transparent 67%),
    radial-gradient(ellipse 82% 52% at 94% 14%, rgba(35, 105, 146, .20) 0%, rgba(18, 54, 91, .11) 42%, transparent 72%),
    radial-gradient(ellipse 105% 66% at 50% 48%, rgba(30, 39, 91, .28) 0%, rgba(11, 16, 48, .10) 52%, transparent 77%),
    radial-gradient(ellipse 88% 56% at 5% 78%, rgba(74, 49, 119, .20) 0%, rgba(36, 27, 76, .10) 46%, transparent 73%),
    radial-gradient(ellipse 90% 60% at 98% 88%, rgba(1, 4, 18, .78) 0%, rgba(3, 6, 25, .34) 46%, transparent 74%),
    linear-gradient(180deg, #080c22 0%, #05081a 30%, #0a0e2a 57%, #040616 100%);
  background-attachment: fixed;
}

.sky-atmosphere {
  inset: -16%;
  z-index: -3;
  opacity: 1;
  background:
    radial-gradient(ellipse 56% 35% at 9% 8%, rgba(123, 145, 224, .36) 0%, rgba(69, 83, 157, .21) 34%, rgba(35, 45, 101, .08) 57%, transparent 76%),
    radial-gradient(ellipse 48% 30% at 78% 10%, rgba(50, 124, 165, .27) 0%, rgba(24, 67, 105, .16) 42%, transparent 74%),
    radial-gradient(ellipse 68% 40% at 48% 37%, rgba(55, 67, 138, .29) 0%, rgba(25, 33, 83, .13) 47%, transparent 78%),
    radial-gradient(ellipse 50% 34% at 16% 68%, rgba(92, 63, 147, .25) 0%, rgba(45, 32, 93, .12) 46%, transparent 76%),
    radial-gradient(ellipse 58% 39% at 91% 73%, rgba(0, 3, 18, .86) 0%, rgba(3, 7, 28, .42) 48%, transparent 77%),
    radial-gradient(ellipse 43% 28% at 59% 91%, rgba(95, 111, 181, .22) 0%, rgba(47, 57, 117, .08) 48%, transparent 73%),
    linear-gradient(122deg, transparent 6%, rgba(112, 130, 204, .11) 26%, transparent 47%, rgba(0,0,0,.22) 68%, transparent 88%);
  filter: blur(24px) saturate(.96) contrast(1.08);
  transform: scale(1.08) rotate(-1deg);
}

/* A second very soft atmospheric veil gives the sky more natural variation
   rather than reading as simple circles or a flat gradient. */
body::before {
  content: "";
  position: fixed;
  inset: -18%;
  z-index: -2;
  pointer-events: none;
  opacity: .78;
  mix-blend-mode: screen;
  background:
    radial-gradient(ellipse 72% 18% at 23% 26%, rgba(126, 146, 218, .18), transparent 72%),
    radial-gradient(ellipse 66% 16% at 76% 52%, rgba(55, 93, 153, .13), transparent 74%),
    radial-gradient(ellipse 74% 19% at 36% 82%, rgba(90, 66, 145, .13), transparent 74%),
    linear-gradient(160deg, transparent 20%, rgba(255,255,255,.035) 39%, transparent 55%);
  filter: blur(42px);
  transform: rotate(-6deg) scale(1.12);
}

@media (max-width: 700px) {
  .sky-atmosphere {
    inset: -28%;
    opacity: 1;
    filter: blur(19px) saturate(.94) contrast(1.06);
  }
  body::before {
    inset: -26%;
    opacity: .70;
    filter: blur(34px);
  }
}
