/* =====================================================================
   The Sounding Method sales page. Page-scoped: everything hangs off
   body.sounding so nothing here touches any other page. Brand tokens
   come from styles.css :root.
   Rule of thumb for script asides: Hot Pink on dark sections, Violet on
   light ones (Hot Pink on cream fails AA, Violet passes).
   ===================================================================== */

.sounding { --sx-ink: var(--black); }
.sounding main { display: block; }
.sounding img { max-width: 100%; }

/* ---------- reusable bits ---------- */
.sounding .sx-r-l { rotate: -1.4deg; }
.sounding .sx-r-r { rotate: 1.4deg; }

/* inner-thought asides: Permanent Marker, tilted, never in the global .script rule */
.sounding .aside-script {
  display: inline-block;
  font-family: 'Permanent Marker', cursive;
  font-weight: 400;
  font-style: normal;
  text-transform: none;
  letter-spacing: 0.01em;
  line-height: 1.35;
  font-size: 1.12em;
  color: var(--violet);
  rotate: -2deg;
  transform: none;
  margin: 0.15em 0.1em;
}
.sounding .aside-script.on-dark { color: var(--hotpink); rotate: 1.6deg; }
.sounding .aside-script.aside-inline { font-size: 1em; rotate: -1deg; }
.sounding .tone-deep .aside-script,
.sounding .tone-black .aside-script { color: var(--hotpink); }
.sounding .tone-base .aside-script { color: var(--black); }

.sounding .sx-copy-lg { font-size: clamp(1.1rem, 2.1vw, 1.45rem); line-height: 1.5; font-weight: 400; }
.sounding .sx-h2-xl { font-size: clamp(2.4rem, 7vw, 5rem); }
.sounding .sx-h3-xl { font-size: clamp(1.9rem, 4.6vw, 3.2rem); margin-bottom: 1.4rem; }
.sounding .section-head { margin-bottom: 3rem; }

/* keyboard focus everywhere on this page */
.sounding a:focus-visible,
.sounding summary:focus-visible,
.sounding .btn:focus-visible {
  outline: 3px solid var(--hotpink);
  outline-offset: 4px;
}
.sounding .sx-faq a:focus-visible,
.sounding .sx-faq summary:focus-visible { outline-color: var(--violet); }

/* stickers: transparent cut-outs, tilted, overlapping their card's edge */
.sounding .sx-sticker {
  position: absolute;
  display: block;
  width: clamp(120px, 17vw, 220px);
  height: auto;
  filter: drop-shadow(0 6px 0 rgba(19, 16, 24, 0.22)) drop-shadow(0 14px 18px rgba(19, 16, 24, 0.25));
  pointer-events: none;
  z-index: 3;
}
/* labelled stand-in when a sticker file has not landed yet */
.sounding .sx-ph { box-sizing: border-box; background: rgba(242, 240, 235, 0.88); color: rgba(19, 16, 24, 0.7); margin: 0; padding: 1rem; min-height: 8rem; }
.sounding .sx-sticker.sx-ph { aspect-ratio: 1 / 1; border: 1.5px dashed rgba(19, 16, 24, 0.5); border-radius: 4px; justify-content: center; }
.sounding .sx-ph .image-placeholder-label { max-width: 18ch; color: inherit; }

/* full-bleed image bands */
.sounding .sx-bleed { position: absolute; inset: 0; z-index: 0; background: var(--black); }
.sounding .sx-bleed::after { content: ''; position: absolute; inset: 0; background: var(--wash, transparent); pointer-events: none; }
.sounding .sx-bleed-img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sounding .sx-bleed .image-placeholder-bleed,
.sounding .page-hero-photo-bleed .image-placeholder-bleed { background: linear-gradient(160deg, var(--plum), var(--black)); }
.sounding .image-placeholder-bleed .image-placeholder-tag { top: auto; bottom: 1.2rem; left: auto; right: 6vw; transform: none; }

/* inset images in rotated frames */
.sounding .sx-inset {
  margin: 0;
  padding: 0.7rem;
  background: var(--cream);
  border-radius: 3px;
  box-shadow: 10px 10px 0 0 var(--hotpink);
  rotate: 2.5deg;
}
.sounding .sx-inset img { display: block; width: 100%; height: auto; border-radius: 1px; }
.sounding .sx-inset .sx-ph { aspect-ratio: 4 / 3; width: 100%; }

/* =====================================================================
   1 · hero
   ===================================================================== */
.sounding .sx-hero {
  min-height: 100vh; justify-content: flex-end; padding-bottom: clamp(3rem, 8vh, 5rem); }
.sounding .sx-hero .page-hero-scrim {
  background: linear-gradient(0deg, rgba(19,16,24,0.94) 0%, rgba(19,16,24,0.82) 38%, rgba(19,16,24,0.15) 70%, rgba(19,16,24,0) 100%);
}
.sounding .sx-hero .sx-bleed-img { object-position: center 18%; }
@media (max-width: 780px) { .sounding .sx-hero .sx-bleed-img { object-position: 66% 10%; } }
.sounding .sx-wash-hero {
  position: absolute; inset: 0; z-index: 2; pointer-events: none;
  background: linear-gradient(120deg, rgba(85, 51, 255, 0.35) 0%, rgba(255, 51, 153, 0.12) 60%, rgba(19, 16, 24, 0) 100%);
  mix-blend-mode: multiply;
}
.sounding .sx-hero .hero-inner { max-width: var(--max); }
.sounding .sx-hero h1 { max-width: none; font-size: clamp(2.6rem, 7.4vw, 5.6rem); line-height: 0.95; white-space: normal; }
.sounding .sx-lead {
  margin-top: 1.8rem;
  max-width: 46ch;
  font-family: 'League Spartan', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: clamp(1.15rem, 2.8vw, 1.9rem);
  line-height: 1.5;
  color: var(--cream);
}
.sounding .sx-sub {
  margin-top: 1rem;
  max-width: 52ch;
  font-size: clamp(1.05rem, 2vw, 1.3rem);
  font-weight: 400;
  color: var(--cream);
}
.sounding .sx-pricechip { margin-top: 1.6rem; }
.sounding .sx-pricechip span {
  display: inline-block;
  background: var(--hotpink);
  color: var(--black);
  font-family: 'League Spartan', sans-serif;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: clamp(0.95rem, 2.4vw, 1.25rem);
  padding: 0.7rem 1.3rem;
  border-radius: 3px;
  rotate: -2deg;
  box-shadow: 5px 5px 0 0 var(--black);
}

/* =====================================================================
   2 · problem
   ===================================================================== */
.sounding .sx-problem { background: var(--cream); }
.sounding .sx-problem-top {
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  gap: clamp(2rem, 6vw, 5rem);
  align-items: center;
}
.sounding .sx-bigquote {
  font-size: clamp(2.2rem, 6vw, 4.6rem);
  line-height: 1.02;
  color: var(--violet);
  text-wrap: balance;
}
.sounding .sx-inset-clone { max-width: 420px; justify-self: center; }
.sounding .sx-problem-copy { max-width: 46rem; margin: clamp(2.5rem, 6vw, 4.5rem) 0 0 auto; }
.sounding .sx-problem-copy p + p,
.sounding .sx-broll-row + p { margin-top: 1.3rem; }
.sounding .sx-broll-row { position: relative; margin-top: 1.3rem; }
.sounding .sx-sticker-broll { left: -14.5rem; top: -1rem; rotate: -3deg; width: 200px; }
@media (max-width: 1180px) {
  .sounding .sx-sticker-broll { position: relative; left: auto; top: auto; float: right; margin: 0 0 0.6rem 1.2rem; width: clamp(110px, 22vw, 160px); rotate: 3deg; }
  .sounding .sx-broll-row::after { content: ''; display: block; clear: both; }
}
.sounding .sx-closer {
  font-family: 'League Spartan', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: clamp(1.4rem, 3.2vw, 2.2rem);
  line-height: 1.15;
  color: var(--black);
  margin-top: 2rem;
  border-left: 6px solid var(--hotpink);
  padding-left: 1.2rem;
}

/* =====================================================================
   3 · "Of course you want the shortcut." Built on the homepage #the-shift
   classes (.shift-fullbleed, .shift-scrim, .shift-text-centered, .shift-beat).
   Only page-scoped tweaks here.
   ===================================================================== */
.sounding #shortcut { min-height: 100vh; padding: 5.5rem 0 2rem; }
.sounding #shortcut .shift-photo-bleed img { object-position: center 92%; }
.sounding #shortcut .shift-text-centered { max-width: 780px; }
.sounding #shortcut h2 { color: var(--cream); font-size: clamp(2.2rem, 5vw, 3.8rem); text-shadow: 0 2px 22px rgba(19,16,24,0.6); }
.sounding #shortcut .prose p { color: rgba(242, 240, 235, 0.95); font-weight: 400; font-size: clamp(0.95rem, 1.2vw, 1.08rem); line-height: 1.55; }
.sounding #shortcut .prose p + p { margin-top: 0.9rem; }
.sounding #shortcut .prose strong { color: var(--cream); }
.sounding #shortcut .mark.is-sky { color: var(--black); }
.sounding #shortcut .aside-script { font-size: 1.2em; }
/* no JS or reduced motion: not pinned, so leave the lower part of the image clear for Barbie */
@media (prefers-reduced-motion: reduce) {
  .sounding #shortcut { padding-bottom: 50rem; }
  .sounding #shortcut .shift-scrim { background: linear-gradient(180deg, rgba(19,16,24,0.7) 0%, rgba(19,16,24,0.55) 55%, rgba(19,16,24,0) 75%); }
}
@media (max-width: 880px), (max-height: 719px) {
  .sounding #shortcut { min-height: 0; padding: 4rem 0 clamp(26rem, 112vw, 40rem); }
  .sounding #shortcut .shift-scrim { background: linear-gradient(180deg, rgba(19,16,24,0.7) 0%, rgba(19,16,24,0.55) 55%, rgba(19,16,24,0) 78%); }
}

/* =====================================================================
   4 · feel (deep, full bleed)
   ===================================================================== */
.sounding .sx-feel { background: var(--black); }
.sounding .sx-bleed-feel { --wash: linear-gradient(180deg, rgba(84, 44, 123, 0.5) 0%, rgba(19, 16, 24, 0.78) 100%); }
.sounding .sx-feel .wrap { position: relative; z-index: 2; }
.sounding .sx-feel-inner { max-width: 52rem; margin: 0 auto; text-align: center; }
.sounding .sx-feel-title { font-size: clamp(2.2rem, 6.5vw, 4.8rem); line-height: 1.35; color: var(--cream); }
.sounding .sx-feel-title .mark.is-pink { color: var(--black); }
.sounding .sx-feel-panel {
  margin-top: clamp(2rem, 5vw, 3.5rem);
  text-align: left;
  background: rgba(19, 16, 24, 0.72);
  border: 1px solid var(--line-on-dark);
  padding: clamp(1.6rem, 4vw, 2.8rem);
  border-radius: 3px;
  backdrop-filter: blur(3px);
}
.sounding .sx-feel-panel p { color: rgba(242, 240, 235, 0.92); font-weight: 400; }
.sounding .sx-feel-panel p + p { margin-top: 1.2rem; }
.sounding .sx-feel-closer {
  margin-top: clamp(2rem, 5vw, 3.5rem);
  font-family: 'League Spartan', sans-serif;
  font-weight: 800;
  text-transform: uppercase;
  font-size: clamp(1.5rem, 4.4vw, 3rem);
  line-height: 1.5;
  color: var(--cream) !important;
}

/* =====================================================================
   5 · praise (sky)
   ===================================================================== */
.sounding .sx-praise { background: var(--sky); }
.sounding .sx-praise-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2.5rem, 5vw, 4rem); align-items: start; }
.sounding .sx-qc { margin: 0; max-width: none; }
.sounding .sx-qc blockquote { margin: 0; }
.sounding .sx-qc blockquote p { margin-top: 0; font-size: clamp(1.02rem, 1.7vw, 1.2rem); font-weight: 400; color: var(--black); line-height: 1.55; }
.sounding .sx-qc cite { font-style: normal; }
.sounding .sx-cap { display: flex; align-items: center; gap: 0.85rem; margin-top: 1.3rem; }
.sounding .sx-cap .sx-avatar { flex: none; width: 48px; height: 48px; border-radius: 50%; object-fit: cover; background: var(--cream); box-shadow: 0 0 0 2px var(--cream), 0 0 0 4px var(--violet); margin: 4px; }
.sounding .sx-qc.alt .sx-cap .sx-avatar { box-shadow: 0 0 0 2px var(--cream), 0 0 0 4px var(--hotpink); }
.sounding .sx-cap .sx-who { display: block; min-width: 0; background: transparent; }
.sounding .sx-cap cite { margin-top: 0; line-height: 1.15; }
.sounding .sx-cap .sx-role { display: block; margin-top: 0.2rem; font-size: 0.85rem; line-height: 1.3; font-weight: 400; color: rgba(19, 16, 24, 0.68); }
.sounding .sx-cap.sx-who-noimg { padding-left: 0.85rem; border-left: 4px solid var(--violet); gap: 0; }
.sounding .sx-qc.alt .sx-cap.sx-who-noimg { border-left-color: var(--hotpink); }
.sounding .sx-praise-grid .sx-qc:nth-child(2) { margin-top: 3rem; }

/* =====================================================================
   6 · intro
   ===================================================================== */
.sounding .sx-intro { background: var(--cream); }
.sounding .sx-intro-head { text-align: center; max-width: 52rem; margin: 0 auto; }
.sounding .sx-introducing {
  font-family: 'Permanent Marker', cursive;
  font-size: clamp(1.6rem, 4vw, 2.4rem);
  color: var(--violet);
  rotate: -3deg;
  display: inline-block;
}
.sounding .sx-intro-head h2 { font-size: clamp(3rem, 10vw, 7rem); line-height: 0.95; color: var(--black); margin: 0.4rem 0 1.6rem; }
.sounding .sx-intro-lede {
  background: var(--violet);
  color: var(--cream);
  padding: 1.5rem 1.8rem;
  font-weight: 500;
  font-size: clamp(1.05rem, 2vw, 1.3rem);
  box-shadow: 8px 8px 0 0 var(--hotpink);
  rotate: -1deg;
  border-radius: 3px;
}
.sounding .sx-intro-cols { margin-top: clamp(3rem, 7vw, 5rem); display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 5vw, 4rem); align-items: center; }
.sounding .sx-intro-text p + p { margin-top: 1.2rem; }
.sounding .sx-journey { background: var(--black); color: var(--cream); padding: clamp(1.6rem, 4vw, 2.6rem); border-radius: 3px; rotate: 1.2deg; box-shadow: 10px 10px 0 0 var(--sky); }
.sounding .sx-journey p { color: rgba(242, 240, 235, 0.9); }
.sounding .sx-journey-big { margin: 1rem 0 1.4rem; font-family: 'League Spartan', sans-serif; font-weight: 800; text-transform: uppercase; font-size: clamp(1.7rem, 4vw, 2.7rem); line-height: 1.6; }
.sounding .sx-journey-big .mark.is-sky { color: var(--black); }
.sounding .sx-journey-big em { font-style: normal; }

/* =====================================================================
   7a · what you get (dark bento)
   ===================================================================== */
.sounding .sx-get { background: var(--jewel-1); }
.sounding .sx-bento { list-style: none; display: grid; grid-template-columns: repeat(6, 1fr); gap: 1.6rem; }
.sounding .sx-span-2 { grid-column: span 2; }
.sounding .sx-span-4 { grid-column: span 4; }
.sounding .sx-span-6 { grid-column: span 6; }
.sounding .sx-get-card { overflow: visible; padding: 2.2rem 2rem 2.2rem; }
.sounding .sx-get-card .num {
  display: block;
  font-size: clamp(3.4rem, 6vw, 5rem);
  line-height: 0.9;
  font-weight: 900;
  color: var(--accent);
  opacity: 0.95;
}
.sounding .sx-get-card h3 { margin-top: 0.5rem; }
.sounding .sx-get-card p { color: rgba(242, 240, 235, 0.86); font-weight: 400; }
.sounding .sx-get-card.sx-has-inset { padding-bottom: 2.4rem; }
.sounding .sx-get-card.accent-plum .num { color: var(--sky); }
.sounding .sx-get-card:nth-child(1),
.sounding .sx-get-card:nth-child(4) { padding-right: clamp(2rem, 26%, 17rem); }
.sounding .sx-sticker-interview { right: -1.4rem; bottom: -2rem; rotate: -3deg; width: clamp(110px, 15vw, 190px); }
.sounding .sx-get-card .sx-inset-chat { margin-top: 1.6rem; max-width: 330px; box-shadow: 8px 8px 0 0 var(--teal); rotate: -2deg; }
@media (min-width: 900px) {
  .sounding .sx-get-card .sx-inset-chat { position: absolute; right: -1.2rem; bottom: -1.6rem; margin: 0; width: 34%; }
  .sounding .sx-get-card.sx-has-inset { padding-right: 40%; }
}

/* =====================================================================
   7b · what you leave with (hot pink, paper cards)
   ===================================================================== */
.sounding .sx-leave { background: var(--hotpink); color: var(--black); }
.sounding .sx-leave h2 { color: var(--black); }
.sounding .sx-paper-grid { list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.2rem 1.8rem; }
.sounding .sx-pcard {
  position: relative;
  background: var(--cream);
  color: var(--black);
  padding: 2.4rem 1.7rem 1.9rem;
  border-radius: 3px;
  box-shadow: 8px 8px 0 0 var(--black);
}
.sounding .sx-pcard:nth-child(3n + 2) { margin-top: 1.8rem; box-shadow: 8px 8px 0 0 var(--violet); }
.sounding .sx-pcard h3 { font-size: 1.3rem; color: var(--black); }
.sounding .sx-pcard p { margin-top: 0.8rem; font-weight: 400; color: rgba(19, 16, 24, 0.82); }
.sounding .sx-stamp {
  position: absolute;
  top: -1.2rem;
  left: 1.2rem;
  display: grid;
  place-items: center;
  width: 2.8rem; height: 2.8rem;
  border-radius: 50%;
  background: var(--violet);
  color: var(--cream);
  font-family: 'League Spartan', sans-serif;
  font-weight: 800;
  font-size: 1.3rem;
  rotate: -8deg;
}
.sounding .sx-has-sticker { padding-bottom: 9rem; }
.sounding .sx-sticker-bank { right: -0.8rem; bottom: -2rem; rotate: -3deg; width: clamp(110px, 14vw, 170px); }
.sounding .sx-bonus {
  position: relative;
  max-width: 44rem;
  margin: clamp(3rem, 6vw, 4.5rem) auto 0;
  background: var(--violet);
  color: var(--cream);
  padding: clamp(1.8rem, 4vw, 2.8rem);
  border-radius: 4px;
  rotate: -2.2deg;
  border: 3px dashed var(--cream);
  box-shadow: 10px 10px 0 0 var(--black);
}
.sounding .sx-bonus h3 { color: var(--cream); font-size: clamp(1.4rem, 3vw, 2rem); }
.sounding .sx-bonus p { margin-top: 0.9rem; color: var(--cream); font-weight: 400; }
.sounding .sx-bonus { max-width: 62rem; }
.sounding .sx-bonus > h3 { text-align: center; }
.sounding .sx-bonus-grid { list-style: none; margin: 2.2rem 0 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 2.4rem 1.8rem; }
.sounding .sx-bonus-card { padding: 2.4rem 1.2rem 1.6rem; box-shadow: 8px 8px 0 0 var(--hotpink); }
.sounding .sx-bonus-card:nth-child(2) { box-shadow: 8px 8px 0 0 var(--sky, #7bc4e8); }
.sounding .sx-bonus-card h4 { margin-top: 1.1rem; font-size: 1.3rem; color: var(--black); }
.sounding .sx-bonus-card p { color: rgba(19, 16, 24, 0.82); }
.sounding .sx-bonus-img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 2px; background: #fff; }
@media (max-width: 700px) {
  .sounding .sx-bonus-grid { grid-template-columns: 1fr; }
}

/* =====================================================================
   8 · process + expect
   ===================================================================== */
.sounding .sx-process { background: var(--cream); }
.sounding .sx-steps {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem 1.7rem;
  justify-content: center;
  counter-reset: sx;
}
.sounding .sx-steps li {
  counter-increment: sx;
  position: relative;
  background: var(--sky);
  padding: 0.7rem 1.1rem;
  border-radius: 3px;
  font-family: 'League Spartan', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 0.95rem;
  box-shadow: 4px 4px 0 0 var(--violet);
}
.sounding .sx-steps li:nth-child(even) { background: var(--hotpink); rotate: 1.4deg; }
.sounding .sx-steps li:nth-child(odd) { rotate: -1.4deg; }
.sounding .sx-steps li:not(:last-child)::after {
  content: '→';
  position: absolute;
  right: -1.5rem;
  top: 50%;
  translate: 0 -50%;
  color: var(--violet);
  font-weight: 800;
}
.sounding .sx-fourteen {
  max-width: 18ch;
  margin: clamp(2.5rem, 6vw, 4rem) auto 0;
  text-align: center;
  font-size: clamp(2.2rem, 6vw, 4.4rem);
  color: var(--violet);
  text-wrap: balance;
}
.sounding .sx-expect { background: var(--jewel-3); }
.sounding .sx-expect-head { position: relative; display: grid; grid-template-columns: 1.6fr 1fr; gap: 2rem; align-items: center; }
.sounding .sx-expect-text p { color: rgba(242, 240, 235, 0.9); font-weight: 400; max-width: 52ch; }
.sounding .sx-expect-text p + p { margin-top: 1.1rem; }
.sounding .sx-lasttime { margin: clamp(2.5rem, 5vw, 4rem) 0 1.6rem; font-family: 'League Spartan', sans-serif; text-transform: uppercase; font-weight: 700; font-size: 1.1rem; letter-spacing: 0.08em; color: var(--sky) !important; }
.sounding .sx-notes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; }
.sounding .sx-qc-sm { padding: 2rem 1.6rem 1.6rem; box-shadow: 8px 8px 0 0 var(--violet); }
.sounding .sx-qc-sm.alt { box-shadow: 8px 8px 0 0 var(--hotpink); }
.sounding .sx-qc-sm:nth-child(2) { rotate: 1.6deg; }
.sounding .sx-qc-sm:nth-child(3) { rotate: -1deg; }
.sounding .sx-ick {
  margin-top: clamp(2.5rem, 5vw, 4rem);
  max-width: 34ch;
  font-family: 'Permanent Marker', cursive;
  font-size: clamp(1.4rem, 3.4vw, 2.3rem);
  line-height: 1.35;
  color: var(--hotpink) !important;
  rotate: -1.5deg;
}

/* =====================================================================
   9 · proof
   ===================================================================== */
.sounding .sx-proof { background: var(--cream); }
.sounding .sx-proof h2 { color: var(--black); }
.sounding .sx-cohort { margin: 3rem 0 3.5rem; display: grid; grid-template-columns: 1fr 1fr; gap: 1.6rem; }
.sounding .sx-cohort p { font-family: 'League Spartan', sans-serif; font-weight: 600; text-transform: uppercase; font-size: clamp(1.1rem, 2.4vw, 1.6rem); line-height: 1.2; }
.sounding .sx-bignum { display: block; font-size: clamp(5rem, 16vw, 11rem); line-height: 0.85; font-weight: 900; color: var(--violet); }
.sounding .sx-cohort p:nth-child(2) .sx-bignum { color: var(--hotpink); -webkit-text-stroke: 0; }
.sounding .sx-people { display: grid; grid-template-columns: 1fr 1fr; gap: 2.4rem; }
.sounding .sx-person { background: #fff; border: 1px solid var(--line); border-top: 6px solid var(--violet); padding: 1.8rem 1.4rem 1.2rem; border-radius: 3px; }
.sounding .sx-person:nth-child(2) { border-top-color: var(--hotpink); }
.sounding .sx-person-text { font-weight: 400; margin-bottom: 1.2rem; }
.sounding .sx-person-text strong { font-family: 'League Spartan', sans-serif; text-transform: uppercase; font-size: 1.2em; color: var(--black); font-weight: 800; }
.sounding .sx-stats { gap: 0.8rem; }
.sounding .sx-stats .stat { flex: 1 1 calc(50% - 0.8rem); padding: 1.1rem 0.5rem; background: var(--cream); }
.sounding .sx-stats .stat-num { font-size: clamp(1.8rem, 3.6vw, 2.6rem); }
.sounding .sx-stats .stat-label { font-size: 0.68rem; color: rgba(19, 16, 24, 0.78); }
.sounding .stat.accent-pink,
.sounding .stat.accent-sky { border-top-color: var(--accent); }
.sounding .sx-saw-hope { margin-top: 3rem; display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.sounding .sx-callout { padding: 1.6rem 1.8rem; border-radius: 3px; }
.sounding .sx-callout p { font-weight: 400; margin: 0; }
.sounding .sx-callout-saw { background: var(--sky); color: var(--black); rotate: -1deg; box-shadow: 8px 8px 0 0 var(--violet); }
.sounding .sx-callout-saw p { color: var(--black); }
.sounding .sx-callout-hope { background: var(--black); color: var(--cream); rotate: 1deg; box-shadow: 8px 8px 0 0 var(--hotpink); }
.sounding .sx-callout-hope p { color: var(--cream); }

/* =====================================================================
   10 · honest comparison
   ===================================================================== */
.sounding .sx-honest { background: var(--black); }
.sounding .sx-honest-title { color: var(--cream); font-size: clamp(1.8rem, 4.6vw, 3.4rem); max-width: 22ch; margin-bottom: 2.4rem; }
.sounding .sx-options { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.8rem; align-items: stretch; }
.sounding .sx-option { background: rgba(242, 240, 235, 0.07); border: 1.5px dashed rgba(242, 240, 235, 0.45); padding: 1.8rem 1.6rem; border-radius: 3px; }
.sounding .sx-option p { color: var(--cream); font-weight: 400; font-size: 1.05rem; }
.sounding .sx-option-yes { background: var(--violet); border: 1.5px solid var(--cream); box-shadow: 8px 8px 0 0 var(--hotpink); }
.sounding .sx-option-yes p { font-weight: 500; }

/* =====================================================================
   11 · price
   ===================================================================== */
.sounding .sx-price { background: var(--cream); }
.sounding .sx-soeverything { font-family: 'Permanent Marker', cursive; font-size: clamp(1.6rem, 4vw, 2.6rem); color: var(--violet); rotate: -2deg; display: inline-block; }
.sounding .sx-recap { margin-top: 1.6rem; display: grid; grid-template-columns: 1fr 1fr; gap: 1.8rem; }
.sounding .sx-recap-col { padding: 1.6rem; border-radius: 3px; }
.sounding .sx-recap-get { background: var(--black); color: var(--cream); box-shadow: 8px 8px 0 0 var(--violet); }
.sounding .sx-recap-leave { background: var(--hotpink); color: var(--black); box-shadow: 8px 8px 0 0 var(--black); }
.sounding .sx-recap-col h3 { font-size: 1.2rem; margin-bottom: 0.8rem; color: inherit; }
.sounding .sx-recap-col ul { list-style: none; }
.sounding .sx-recap-col li { padding: 0.35rem 0 0.35rem 1.4rem; position: relative; font-weight: 400; font-size: 0.98rem; }
.sounding .sx-recap-col li::before { content: ''; position: absolute; left: 0; top: 0.95em; width: 0.7rem; height: 0.7rem; background: currentColor; rotate: 8deg; }
.sounding .sx-pricebox { position: relative; margin-top: clamp(3rem, 6vw, 5rem); display: grid; grid-template-columns: auto 1fr; gap: 1rem clamp(2rem, 6vw, 5rem); align-items: center; }
.sounding .sx-pricemark { position: relative; padding: 0 0 2rem; }
.sounding .sx-price-big { font-size: clamp(4.4rem, 12vw, 8rem); line-height: 1.5; color: var(--cream); }
.sounding .sx-price-big .mark.thick.is-coral { color: var(--cream); }
.sounding .sx-pricetext p { font-weight: 400; font-size: clamp(1rem, 1.8vw, 1.2rem); }
.sounding .sx-pricetext p + p { margin-top: 1rem; }
.sounding .sx-sticker-bargain { right: -3.5rem; bottom: -3.5rem; rotate: -4deg; width: clamp(110px, 15vw, 190px); }
.sounding .sx-callout-ten { margin-top: clamp(2.5rem, 5vw, 4rem); max-width: 46rem; margin-left: auto; background: var(--plum); color: var(--cream); padding: clamp(1.6rem, 4vw, 2.4rem); border-radius: 3px; rotate: 1deg; box-shadow: 10px 10px 0 0 var(--sky); }
.sounding .sx-callout-ten h3 { color: var(--cream); font-size: clamp(1.5rem, 3.2vw, 2.2rem); margin-bottom: 0.9rem; }
.sounding .sx-callout-ten p { color: var(--cream); font-weight: 400; }

/* =====================================================================
   12 · CTA strip + buttons
   ===================================================================== */
.sounding .sx-join { background: var(--violet); text-align: center; }
.sounding .sx-bigbtn { margin-top: 0; font-size: clamp(1.1rem, 2.6vw, 1.5rem); padding: 1.3rem 3rem; background: var(--hotpink); color: var(--black); box-shadow: 7px 7px 0 0 var(--black); }
.sounding .sx-bigbtn:hover { background: var(--cream); color: var(--black); box-shadow: 3px 3px 0 0 var(--black); filter: none; }
.sounding .sx-join .sx-bigbtn { background: var(--cream); }
.sounding .sx-join .sx-bigbtn:hover { background: var(--hotpink); }

/* =====================================================================
   13 · transformation quotes
   ===================================================================== */
.sounding .sx-kind-stack { display: grid; gap: clamp(2.5rem, 5vw, 4rem); }
.sounding .sx-qc-left { margin-left: 0; max-width: 42rem; }
.sounding .sx-qc-right { margin-left: auto; max-width: 42rem; }
.sounding .sx-kind .sx-qc { padding-top: 3rem; }

/* =====================================================================
   14 · who
   ===================================================================== */
.sounding .sx-who { background: var(--cream); }
.sounding .sx-who-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(2rem, 6vw, 5rem); align-items: start; }
.sounding .sx-who-intro h2 { font-size: clamp(2.2rem, 5.4vw, 4rem); color: var(--violet); margin-bottom: 1.5rem; }
.sounding .sx-who-intro p + p { margin-top: 1.1rem; }
.sounding .sx-bios { display: grid; gap: 2rem; }
.sounding .sx-bio { padding: 1.8rem; border-radius: 3px; }
.sounding .sx-bio h3 { font-size: 1.6rem; margin-bottom: 0.7rem; }
.sounding .sx-bio p { font-weight: 400; }
.sounding .sx-bio-b { background: var(--black); color: var(--cream); box-shadow: 8px 8px 0 0 var(--hotpink); }
.sounding .sx-bio-b h3, .sounding .sx-bio-b p { color: var(--cream); }
.sounding .sx-bio-d { background: var(--sky); box-shadow: 8px 8px 0 0 var(--violet); }
.sounding .sx-bio-d p { color: var(--black); }

/* =====================================================================
   15 · fit
   ===================================================================== */
.sounding .sx-fit { background: var(--jewel-2); }
.sounding .sx-fit-grid { margin-top: 2.5rem; display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; align-items: start; }
.sounding .sx-fit-yes, .sounding .sx-fit-no { padding: clamp(1.6rem, 3vw, 2.4rem); border-radius: 3px; }
.sounding .sx-fit-yes { background: var(--cream); color: var(--black); box-shadow: 10px 10px 0 0 var(--teal); rotate: -0.8deg; }
.sounding .sx-fit-no { background: transparent; border: 2px dashed rgba(242, 240, 235, 0.55); rotate: 0.8deg; }
.sounding .sx-fit-yes h3 { color: var(--black); margin-bottom: 1rem; }
.sounding .sx-fit-no h3 { color: var(--cream); margin-bottom: 1rem; }
.sounding .sx-fit ul { list-style: none; }
.sounding .sx-fit li { position: relative; padding-left: 2rem; font-weight: 400; }
.sounding .sx-fit li + li { margin-top: 0.9rem; }
.sounding .sx-fit-yes li { color: var(--black); }
.sounding .sx-fit-no li { color: rgba(242, 240, 235, 0.92); }
.sounding .sx-fit-yes li::before { content: '✓'; position: absolute; left: 0; color: #007a7a; font-weight: 800; }
.sounding .sx-fit-no li::before { content: '✕'; position: absolute; left: 0; color: var(--hotpink); font-weight: 800; }
.sounding .sx-fit-yes .aside-script { color: var(--violet); }
.sounding .sx-putin { margin-top: clamp(3rem, 6vw, 4.5rem); text-align: center; }
.sounding .sx-putin h3 { color: var(--cream); font-size: clamp(1.8rem, 4vw, 2.8rem); margin-bottom: 1.4rem; }
.sounding .sx-tickets { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem; }
.sounding .sx-tickets li { background: var(--sky); color: var(--black); font-weight: 600; padding: 0.9rem 1.2rem; border-radius: 3px; box-shadow: 4px 4px 0 0 var(--hotpink); max-width: 15rem; }
.sounding .sx-tickets li:nth-child(odd) { rotate: -1.6deg; }
.sounding .sx-tickets li:nth-child(even) { rotate: 1.6deg; background: var(--cream); }
.sounding .sx-showup { margin-top: 2.2rem; }
.sounding .sx-showup .script { font-size: clamp(1.3rem, 3vw, 2rem); color: var(--hotpink); }

/* =====================================================================
   16 · FAQ accordion
   ===================================================================== */
.sounding .sx-faq { background: var(--cream); }
.sounding .sx-faq h2 { color: var(--black); }
.sounding .sx-faq-list { margin-top: 2rem; border-top: 1px solid var(--line-dark); }
.sounding .sx-q { border-bottom: 1px solid var(--line-dark); }
.sounding .sx-q summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.4rem 0; }
.sounding .sx-q summary::-webkit-details-marker { display: none; }
.sounding .sx-q summary h3 { font-family: 'Montserrat', sans-serif; text-transform: none; font-weight: 600; font-size: 1.1rem; line-height: 1.35; color: var(--black); }
.sounding .sx-q summary::after {
  content: '+';
  flex: none;
  display: grid; place-items: center;
  width: 2.2rem; height: 2.2rem;
  border-radius: 50%;
  background: var(--violet);
  color: var(--cream);
  font-family: 'League Spartan', sans-serif;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1;
  transition: rotate 0.3s ease;
}
.sounding .sx-q[open] summary::after { rotate: 45deg; background: var(--hotpink); color: var(--black); }
.sounding .sx-q p { padding: 0 3rem 1.6rem 0; font-weight: 400; color: rgba(19, 16, 24, 0.85); max-width: 62ch; }

/* =====================================================================
   18 · final CTA
   ===================================================================== */
.sounding .sx-final { text-align: left; }
.sounding .sx-final .cta-art-bleed { --wash: linear-gradient(180deg, rgba(85, 51, 255, 0.3), rgba(19, 16, 24, 0.55)); }
.sounding .sx-final .cta-art-bleed img { transform: none; }
.sounding .sx-final-scrim { background: linear-gradient(90deg, rgba(19, 16, 24, 0.9) 0%, rgba(19, 16, 24, 0.78) 45%, rgba(19, 16, 24, 0.3) 100%); }
.sounding .sx-final-copy { max-width: 40rem; }
.sounding .sx-final-copy .kicker { color: var(--sky); text-align: left; }
.sounding .sx-final-copy h2 { color: var(--cream); font-size: clamp(2.6rem, 8vw, 5.5rem); max-width: none; margin: 0; }
.sounding .sx-final-lead { font-family: 'League Spartan', sans-serif; font-weight: 700; text-transform: uppercase; font-size: clamp(1.3rem, 3vw, 2rem); color: var(--cream) !important; margin: 1.4rem 0 1.6rem; line-height: 1.6; }
.sounding .sx-final-copy p { color: rgba(242, 240, 235, 0.92); font-weight: 400; max-width: none; margin-left: 0; margin-right: 0; }
.sounding .sx-final-copy p + p { margin-top: 1.1rem; }
.sounding .sx-signoff { position: relative; margin: 2rem 0 2.2rem; padding-right: 9rem; min-height: 8rem; }
.sounding .sx-bigluv { font-family: 'League Spartan', sans-serif; font-weight: 700; text-transform: uppercase; font-size: clamp(1.3rem, 3vw, 1.8rem); color: var(--cream) !important; margin: 0 !important; line-height: 1.4; }
.sounding .sx-bigluv .script { font-size: 1.3em; color: var(--hotpink); }
.sounding .sx-sticker-love { right: 0; top: -1rem; rotate: 5deg; width: clamp(100px, 14vw, 160px); }
.sounding .sx-final .sx-bigbtn { margin-top: 0.5rem; }

/* =====================================================================
   Responsive
   ===================================================================== */
@media (max-width: 980px) {
  .sounding .sx-bento { grid-template-columns: 1fr 1fr; }
  .sounding .sx-span-4, .sounding .sx-span-6 { grid-column: 1 / -1; }
  .sounding .sx-span-2 { grid-column: auto; }
  .sounding .sx-paper-grid { grid-template-columns: 1fr 1fr; }
  .sounding .sx-pcard:nth-child(3n + 2) { margin-top: 0; }
  .sounding .sx-notes { grid-template-columns: 1fr; max-width: 34rem; margin: 0 auto; }
  .sounding .sx-options { grid-template-columns: 1fr; }
}
@media (max-width: 780px) {
  .sounding .sx-problem-top,
  .sounding .sx-intro-cols,
  .sounding .sx-expect-head,
  .sounding .sx-people,
  .sounding .sx-saw-hope,
  .sounding .sx-recap,
  .sounding .sx-who-grid,
  .sounding .sx-fit-grid,
  .sounding .sx-praise-grid,
  .sounding .sx-cohort { grid-template-columns: 1fr; }
  .sounding .sx-praise-grid .sx-qc:nth-child(2) { margin-top: 0; }
  .sounding .sx-pricebox { grid-template-columns: 1fr; }
  .sounding .sx-sticker-bargain { right: 0; bottom: -2.5rem; }
  .sounding .sx-pricemark { justify-self: start; }
  .sounding .sx-steps li:not(:last-child)::after { display: none; }
  .sounding .sx-qc-left, .sounding .sx-qc-right { max-width: none; }
  .sounding .sx-q p { padding-right: 0; }
  .sounding .sx-hero { min-height: 80vh; }
}
@media (max-width: 640px) {
  .sounding .sx-bento, .sounding .sx-paper-grid { grid-template-columns: 1fr; }
  .sounding .sx-span-2 { grid-column: 1 / -1; }
  .sounding .sx-get-card:nth-child(1),
  .sounding .sx-get-card:nth-child(4) { padding-right: 2rem; padding-bottom: 7rem; }
  .sounding .sx-sticker-interview { right: 0.2rem; bottom: -1.4rem; width: 120px; }
  .sounding .sx-sticker-bank { right: 0.2rem; width: 120px; }
  .sounding .sx-signoff { padding-right: 7rem; }
  .sounding .sx-sticker-love { width: 100px; }
  .sounding .sx-final-scrim { background: linear-gradient(180deg, rgba(19, 16, 24, 0.7) 0%, rgba(19, 16, 24, 0.82) 100%); }
  .sounding .sx-final .btn { width: 100%; justify-content: center; }
  .sounding .sx-join .btn { width: 100%; justify-content: center; }
  .sounding .sx-fit-yes, .sounding .sx-fit-no { rotate: 0deg; }
  .sounding .sx-pcard, .sounding .sx-journey { rotate: 0deg; }
  .sounding .sx-pcard:nth-child(even) { rotate: 0.8deg; }
  .sounding .sx-pcard:nth-child(odd) { rotate: -0.8deg; }
}

@media (prefers-reduced-motion: reduce) {
  .sounding .sx-q summary::after { transition: none; }
}

/* contrast: Hot Pink on Plum is under AA for small text, so asides sitting on plum use Sky */
.sounding .sx-get-card .aside-script,
.sounding .sx-callout-ten .aside-script { color: var(--sky); }

/* =====================================================================
   FIX ROUND: big images visible, bigger stickers, brighter asides
   ===================================================================== */

/* ---- asides: lighter pink on dark so they pass AA (4.6:1 on Plum) ---- */
.sounding { --aside-dark: #FF85C0; }
.sounding .aside-script { font-size: 1.28em; }
.sounding .aside-script.on-dark,
.sounding .tone-deep .aside-script,
.sounding .tone-black .aside-script,
.sounding .sx-callout-hope .aside-script { color: var(--aside-dark); }
.sounding .sx-get-card .aside-script,
.sounding .sx-callout-ten .aside-script { color: #9FD6F2; }
.sounding .sx-paper .aside-script,
.sounding .sx-fit-yes .aside-script { color: var(--violet); }
.sounding .sx-ick, .sounding .sx-showup .script { color: var(--aside-dark) !important; }
.sounding .sx-showup .script { color: var(--aside-dark); }
.sounding .aside-script { text-shadow: none; }

/* ---- hero: both faces visible ---- */
.sounding .sx-hero h1 { font-size: clamp(2.4rem, 5.6vw, 5rem); }
.sounding .sx-hero .sx-bleed-img { object-position: 50% 0%; }
.sounding .sx-hero .page-hero-scrim {
  background: linear-gradient(0deg, rgba(19,16,24,0.92) 0%, rgba(19,16,24,0.78) 30%, rgba(19,16,24,0) 55%);
}
.sounding .sx-wash-hero { background: linear-gradient(120deg, rgba(85,51,255,0.18) 0%, rgba(19,16,24,0) 60%); }

/* ---- feel: the image gets its own uncovered band, copy sits below ---- */
.sounding .sx-feel .sx-bleed { position: relative; inset: auto; --wash: none; background: var(--black); }
.sounding .sx-feel .sx-bleed-img { height: auto; aspect-ratio: 16 / 9; }
.sounding .sx-feel .sx-bleed::after { display: none; }
.sounding .sx-feel .wrap { padding-top: clamp(3rem, 7vw, 5.5rem); padding-bottom: clamp(4rem, 9vw, 7rem); }
.sounding .sx-feel { background: var(--jewel-3); }

/* ---- final CTA: copy over the calm sky, upper left ---- */
.sounding .sx-final { align-items: flex-start; min-height: 100vh; padding-top: clamp(6rem, 14vh, 9rem); }
.sounding .sx-final .cta-art-bleed img { object-position: 70% 100%; }
.sounding .sx-final-scrim { background: linear-gradient(100deg, rgba(19,16,24,0.55) 0%, rgba(19,16,24,0.25) 45%, rgba(19,16,24,0) 70%); }
.sounding .sx-final-copy { max-width: 36rem; text-shadow: 0 1px 14px rgba(19,16,24,0.6); }
.sounding .sx-signoff { padding-right: 0; min-height: 0; }

/* ---- stickers: 160 to 240px, mobile-first (inline in the flow, never clipped) ---- */
.sounding .sx-sticker { position: relative; right: auto; left: auto; top: auto; bottom: auto; translate: none; width: clamp(160px, 46vw, 220px); margin: 1.2rem 0 0 auto; }
.sounding .sx-broll-row .sx-sticker-broll { float: right; margin: 0 0 0.8rem 1rem; width: clamp(150px, 38vw, 200px); rotate: 3deg; }
.sounding .sx-get-card .sx-sticker,
.sounding .sx-pcard .sx-sticker { margin-top: 1rem; }
.sounding .sx-get-card:nth-child(1),
.sounding .sx-get-card:nth-child(4) { padding-right: 2rem; padding-bottom: 2.2rem; }
.sounding .sx-has-sticker { padding-bottom: 1.9rem; }
.sounding .sx-get-card .sx-inset-chat { position: relative; right: auto; bottom: auto; width: min(100%, 340px); margin: 1.4rem 0 0 auto; }
.sounding .sx-sticker-interview { rotate: -3deg; }
.sounding .sx-sticker-toedip { rotate: 3deg; }
.sounding .sx-sticker-mirror { rotate: -3deg; }
.sounding .sx-sticker-bank { rotate: -3deg; }
.sounding .sx-sticker-bargain { rotate: -4deg; margin: -0.5rem 0 0 auto; }
.sounding .sx-pricemark { display: flex; flex-direction: column; }

@media (min-width: 700px) {
  .sounding .sx-get-card .sx-sticker { position: absolute; margin: 0; width: 240px; top: 50%; translate: 0 -50%; right: 1rem; }
  .sounding .sx-get-card .sx-sticker-interview,
  .sounding .sx-get-card .sx-sticker-toedip { width: clamp(190px, 22vw, 240px); }
  .sounding .sx-get-card.sx-span-4:has(.sx-sticker),
  .sounding .sx-get-card.sx-span-6.sx-has-mirror { padding-right: clamp(14rem, 30%, 20rem); }
  .sounding .sx-get-card .sx-inset-chat { position: absolute; margin: 0; right: 1.2rem; top: 50%; translate: 0 -50%; width: 40%; max-width: 340px; }
  .sounding .sx-get-card.sx-has-inset { padding-right: clamp(14rem, 46%, 24rem); }
  .sounding .sx-sticker-bargain { position: absolute; right: -4rem; bottom: -3rem; margin: 0; width: clamp(190px, 18vw, 240px); }
  .sounding .sx-pricemark { display: block; padding-bottom: 2rem; }
}
@media (min-width: 981px) {
  .sounding .sx-has-sticker { padding-bottom: 11rem; }
  .sounding .sx-pcard .sx-sticker-bank { position: absolute; margin: 0; right: -0.5rem; bottom: -2.2rem; width: 200px; }
}
@media (min-width: 1181px) {
  .sounding .sx-broll-row .sx-sticker-broll { position: absolute; float: none; left: -17rem; top: -1rem; width: 230px; margin: 0; rotate: -3deg; }
}

/* ---- polaroid: the founders ---- */
.sounding .sx-who-top { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(2rem, 6vw, 5rem); align-items: center; margin-bottom: clamp(2.5rem, 5vw, 4rem); }
.sounding .sx-polaroid { position: relative; margin: 0; justify-self: center; width: min(100%, 400px); background: #fff; padding: 0.9rem 0.9rem 0.6rem; box-shadow: 10px 10px 0 0 var(--hotpink); rotate: 3deg; border-radius: 2px; }
.sounding .sx-polaroid::before { content: ''; position: absolute; top: -1.1rem; left: 50%; width: 7rem; height: 2rem; translate: -50% 0; rotate: -4deg; background: rgba(123, 196, 232, 0.85); }
.sounding .sx-polaroid img { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; }
.sounding .sx-polaroid figcaption { text-align: center; padding: 0.7rem 0 0.4rem; font-size: 1.5rem; color: var(--violet); rotate: -1.5deg; display: block; }
.sounding .sx-bios { grid-template-columns: 1fr 1fr; }

/* ---- price recap: compact ---- */
.sounding .sx-recap { gap: 1.2rem; }
.sounding .sx-recap-col { padding: 1.1rem 1.3rem; }
.sounding .sx-recap-col h3 { font-size: 1rem; margin-bottom: 0.4rem; }
.sounding .sx-recap-col li { padding: 0.15rem 0 0.15rem 1.2rem; font-size: 0.88rem; line-height: 1.45; }
.sounding .sx-recap-col li::before { top: 0.7em; width: 0.55rem; height: 0.55rem; }

/* ---- mobile: every big image is its own band ABOVE its copy ---- */
@media (max-width: 780px) {
  .sounding .sx-who-top, .sounding .sx-bios { grid-template-columns: 1fr; }
  .sounding .sx-hero { min-height: 0; padding: 0 0 2.5rem; justify-content: flex-start; }
  .sounding .sx-hero .page-hero-photo-bleed { position: relative; inset: auto; aspect-ratio: 4 / 3; width: 100%; margin-top: 4.6rem; }
  .sounding .sx-hero .sx-bleed-img { object-position: 50% 15%; }
  .sounding .sx-hero .page-hero-scrim, .sounding .sx-wash-hero { display: none; }
  .sounding .sx-hero .hero-inner { padding-top: 1.8rem; }
  .sounding .sx-final { display: block; min-height: 0; padding-top: 0; }
  .sounding .sx-final .cta-art-bleed { position: relative; inset: auto; aspect-ratio: 4 / 3; width: 100%; margin-bottom: 2rem; }
  .sounding .sx-final .cta-art-bleed img { object-position: 75% 85%; }
  .sounding .sx-final-scrim { display: none; }
  .sounding .sx-final { padding-bottom: 4rem; }
  .sounding .sx-final .cta-art-bleed { min-height: 0; }
  .sounding .sx-feel .sx-bleed-img { aspect-ratio: 4 / 3; object-position: 50% 40%; }
}

/* final CTA sits on a pink/purple sky: keep text and asides cream-bright and add a soft scrim behind the copy */
.sounding .sx-final-scrim { background: linear-gradient(100deg, rgba(19,16,24,0.72) 0%, rgba(19,16,24,0.45) 48%, rgba(19,16,24,0) 75%); }
.sounding .sx-final .aside-script { color: #fff; }
.sounding .sx-bigluv .script { color: #FFD6EA; }
@media (min-width: 700px) {
  .sounding .sx-get-card.sx-span-4:has(.sx-sticker),
  .sounding .sx-get-card.sx-span-6.sx-has-mirror { padding-right: 18.5rem; }
}
@media (min-width: 700px) and (max-width: 980px) {
  .sounding .sx-get-card .sx-sticker { width: 200px; }
  .sounding .sx-get-card.sx-span-4:has(.sx-sticker),
  .sounding .sx-get-card.sx-span-6.sx-has-mirror { padding-right: 15.5rem; }
}

/* =====================================================================
   ROUND 3: moved testimonials, extra CTAs, sticky bar
   ===================================================================== */
.sounding .sx-kind-grid { display: grid; gap: clamp(2rem, 4vw, 3.2rem); }
.sounding .sx-kind .sx-qc { padding-top: 3rem; }
.sounding .sx-k-ben { max-width: 42rem; }
.sounding .sx-k-zaia { max-width: 44rem; margin-left: auto; }
.sounding .sx-k-anja-row { display: grid; grid-template-columns: 1.3fr 1fr; gap: clamp(2rem, 5vw, 4rem); align-items: center; }

/* CTA rows: each takes its section's colours */
.sounding .sx-cta-wrap { margin-top: clamp(2rem, 4vw, 3rem); }
.sounding .sx-cta-row { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.6rem; }
.sounding .sx-cta-row .btn { margin-top: 0; }
.sounding .sx-price-cta { margin-top: 2.4rem; }
.sounding .sx-cta-aside { font-size: 1.25em; margin: 0; }
.sounding .sx-hero .sx-cta-wrap { margin-top: 1.8rem; }
.sounding .sx-btn-hero { background: var(--cream); color: var(--black); box-shadow: 6px 6px 0 0 var(--hotpink); }
.sounding .sx-btn-hero:hover { background: var(--hotpink); color: var(--black); box-shadow: 3px 3px 0 0 var(--cream); filter: none; }
.sounding .sx-kind .sx-cta-row { justify-content: center; }
.sounding .sx-btn-dark { background: var(--hotpink); color: var(--black); box-shadow: 7px 7px 0 0 var(--cream); }
.sounding .sx-btn-dark:hover { background: var(--cream); color: var(--black); box-shadow: 3px 3px 0 0 var(--hotpink); filter: none; }
.sounding .sx-praise .sx-cta-row { justify-content: flex-end; }
.sounding .sx-btn-sky { background: var(--black); color: var(--cream); box-shadow: 7px 7px 0 0 var(--violet); }
.sounding .sx-btn-sky:hover { background: var(--violet); color: var(--cream); box-shadow: 3px 3px 0 0 var(--black); filter: none; }
.sounding .sx-praise .sx-cta-aside { color: var(--black); rotate: -2deg; }
.sounding .sx-faq .sx-cta-wrap { text-align: left; }
.sounding .sx-btn-faq { background: var(--violet); color: var(--cream); box-shadow: 7px 7px 0 0 var(--hotpink); }
.sounding .sx-btn-faq:hover { background: var(--hotpink); color: var(--black); box-shadow: 3px 3px 0 0 var(--violet); filter: none; }
.sounding .sx-btn-hero, .sounding .sx-btn-dark, .sounding .sx-btn-sky, .sounding .sx-btn-faq { font-size: clamp(1rem, 2.2vw, 1.25rem); padding: 1.1rem 2.4rem; }

/* sticky "I'm in" bar: mobile only, appears after the hero, hides near price/final CTA */
.sounding .sx-sticky { display: none; }
@media (max-width: 780px) {
  .sounding .sx-k-anja-row { grid-template-columns: 1fr; }
  .sounding .sx-k-zaia { margin-left: 0; }
  .sounding .sx-cta-row, .sounding .sx-kind .sx-cta-row, .sounding .sx-praise .sx-cta-row { justify-content: flex-start; }
  .sounding .sx-cta-row .btn { width: 100%; justify-content: center; }
  .sounding .sx-sticky {
    display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60;
    padding: 0.7rem 1rem calc(0.7rem + env(safe-area-inset-bottom));
    background: rgba(19, 16, 24, 0.94);
    border-top: 2px solid var(--hotpink);
    transform: translateY(110%); visibility: hidden;
    transition: transform 0.3s ease, visibility 0s linear 0.3s;
  }
  .sounding .sx-sticky.is-on { transform: none; visibility: visible; transition: transform 0.3s ease; }
  .sounding .sx-sticky-link {
    display: flex; align-items: center; justify-content: center; gap: 0.8rem;
    background: var(--hotpink); color: var(--black); border-radius: 3px; padding: 0.85rem 1rem;
    font-family: 'League Spartan', sans-serif; font-weight: 800; text-transform: uppercase; letter-spacing: 0.05em; font-size: 1rem;
  }
  .sounding .sx-sticky-price { border-left: 2px solid var(--black); padding-left: 0.8rem; }
  .sounding .sx-sticky-link:focus-visible { outline: 3px solid var(--cream); outline-offset: 3px; }
}
@media (prefers-reduced-motion: reduce) { .sounding .sx-sticky, .sounding .sx-sticky.is-on { transition: none; } }

/* ROUND 4 */
.sounding .sx-k-top { display: grid; grid-template-columns: 1.4fr 1fr; gap: clamp(1.5rem, 4vw, 3rem); align-items: center; }
.sounding .sx-k-top .sx-sticker-joy { position: relative; justify-self: center; margin: 0; rotate: 4deg; width: clamp(170px, 24vw, 280px); }
.sounding .sx-k-top .sx-sticker-joy.sx-ph { aspect-ratio: 4 / 5; }
.sounding .sx-k-anja { max-width: 44rem; margin-left: auto; }
.sounding .sx-k-anna { max-width: 42rem; }
.sounding .sx-praise-one { grid-template-columns: minmax(0, 40rem); justify-content: center; }
.sounding .sx-praise-one .sx-qc:nth-child(n) { margin-top: 0; }
.sounding .sx-mini-quote { margin: 1.4rem 0 0; max-width: 26rem; background: var(--cream); color: var(--black); padding: 1rem 1.2rem; border-radius: 3px; rotate: -1.5deg; box-shadow: 5px 5px 0 0 var(--hotpink); }
.sounding .sx-mini-quote p { color: var(--black); font-weight: 400; font-size: 0.95rem; line-height: 1.5; }
.sounding .sx-mini-quote cite { display: block; margin-top: 0.5rem; font-family: 'Permanent Marker', cursive; font-style: normal; color: var(--violet); }
@media (max-width: 780px) {
  .sounding .sx-k-top { grid-template-columns: 1fr; }
  .sounding .sx-k-anja { margin-left: 0; }
  .sounding .sx-k-top .sx-sticker-joy { justify-self: end; }
}

/* ROUND 5: founders closing line */
.sounding .sx-who-intro p + p { margin-top: 1.1rem; }
.sounding .sx-who-close { margin-top: clamp(2.2rem, 4vw, 3rem); max-width: 40rem; font-family: 'League Spartan', sans-serif; font-weight: 700; text-transform: uppercase; font-size: clamp(1.25rem, 2.6vw, 1.8rem); line-height: 1.25; color: var(--violet); border-left: 6px solid var(--hotpink); padding-left: 1.2rem; }

/* feel: heading sits on the image over the calm top-left corner (clear of faces and the Earth) */
@media (max-width: 780px) {
  .sounding .sx-feel .sx-bleed { display: flex; flex-direction: column-reverse; }
    }

/* callout beat: the doom-scrolling line as a tilted cream card with a hard shadow */
.sounding #shortcut .prose p.sx-callout-beat {
  max-width: 34rem; margin: 1.3rem auto 1.3rem; padding: 1.1rem 1.4rem;
  background: var(--cream); color: var(--black); rotate: -1.4deg; border-radius: 3px;
  box-shadow: 8px 8px 0 0 var(--violet);
  font-family: 'League Spartan', sans-serif; font-weight: 700; text-transform: uppercase;
  font-size: clamp(1.05rem, 1.9vw, 1.5rem); line-height: 1.25;
}
.sounding #shortcut .prose p.sx-callout-beat + p { margin-top: 1.4rem; }

/* ROUND 10: feel merged into one cream section (framed image left, copy right, pull line under) */
.sounding .sx-feel { background: var(--cream); color: var(--black); }
.sounding .sx-feel-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(2rem, 5vw, 4.5rem); align-items: center; }
.sounding .sx-feel-frame { margin: 0; padding: 0.9rem 0.9rem 2.4rem; background: #fff; border-radius: 2px; box-shadow: 12px 12px 0 0 var(--violet); rotate: -2deg; position: relative; }
.sounding .sx-feel-frame::before { content: ''; position: absolute; top: -1.1rem; left: 50%; width: 8rem; height: 2rem; translate: -50% 0; rotate: 3deg; background: rgba(255, 51, 153, 0.8); }
.sounding .sx-feel-frame img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.sounding .sx-feel-frame .sx-ph { aspect-ratio: 16 / 9; width: 100%; }
.sounding .sx-feel-copy .sx-feel-title { font-size: clamp(2rem, 4.2vw, 3.4rem); line-height: 1.05; color: var(--black); margin-bottom: 1.4rem; text-shadow: none; position: static; width: auto; }
.sounding .sx-feel-copy p { color: rgba(19, 16, 24, 0.86); font-weight: 400; }
.sounding .sx-feel-copy p + p { margin-top: 1.1rem; }
.sounding .sx-feel-closer { margin-top: clamp(2.5rem, 6vw, 4.5rem); text-align: center; font-size: clamp(1.7rem, 5vw, 3.4rem); line-height: 1.6; color: var(--cream) !important; font-family: 'League Spartan', sans-serif; font-weight: 800; text-transform: uppercase; }
.sounding .sx-feel-closer .mark.is-coral { color: var(--cream); }
@media (max-width: 780px) { .sounding .sx-feel-grid { grid-template-columns: 1fr; } .sounding .sx-feel-frame { max-width: 520px; margin: 0 auto; } }

/* background rhythm after the moves: shortcut dark / feel cream / intro sky / quotes violet / get dark */
.sounding .sx-intro { background: var(--sky); }
.sounding .sx-journey { box-shadow: 10px 10px 0 0 var(--hotpink); }
.sounding .sx-intro-lede { box-shadow: 8px 8px 0 0 var(--black); }
.sounding .sx-kind { background: var(--violet); }
.sounding .sx-kind .sx-cta-aside { color: #fff; }
.sounding .sx-kind .sx-qc { box-shadow: 14px 14px 0 0 var(--black); }
.sounding .sx-kind .sx-qc.alt { box-shadow: 14px 14px 0 0 var(--hotpink); }
.sounding .sx-kind .quote-card .quote-mark { color: var(--hotpink); }
.sounding .sx-feel-grid { grid-template-columns: 1.3fr 1fr; }

/* background swap: feel on sky, intro back on cream */
.sounding .sx-intro { background: var(--cream); }
.sounding .sx-journey { box-shadow: 10px 10px 0 0 var(--sky); }
.sounding .sx-intro-lede { box-shadow: 8px 8px 0 0 var(--hotpink); }
.sounding .sx-feel { background: var(--sky); }
.sounding .sx-feel-copy p { color: var(--black); }
.sounding .sx-feel-copy .aside-script { color: var(--plum); }
.sounding .sx-feel-frame { box-shadow: 12px 12px 0 0 var(--black); }

/* feel text mirrors the VA section: big violet heading + framed image on top, offset copy column with a closer */
.sounding .sx-feel-top { display: grid; grid-template-columns: 1.35fr 1fr; gap: clamp(2rem, 6vw, 5rem); align-items: center; }
.sounding .sx-feel-top .sx-feel-title { font-size: clamp(2.2rem, 6vw, 4.6rem); line-height: 1.02; color: var(--violet); margin: 0; text-wrap: balance; }
.sounding .sx-feel-top .sx-feel-frame { max-width: 420px; justify-self: center; }
.sounding .sx-feel .sx-feel-copy p { color: var(--black); }
.sounding .sx-feel .sx-closer { font-size: clamp(1.1rem, 2.3vw, 1.6rem); text-transform: none; font-family: 'Montserrat', sans-serif; font-weight: 600; line-height: 1.4; }
@media (max-width: 780px) { .sounding .sx-feel-top { grid-template-columns: 1fr; } }

/* feel: deep plum palette */
.sounding .sx-feel { background: var(--plum); color: var(--cream); }
.sounding .sx-feel-top .sx-feel-title { color: var(--hotpink); }
.sounding .sx-feel .sx-feel-copy p { color: var(--cream); }
.sounding .sx-feel .sx-feel-copy .aside-script { color: #FF85C0; }
.sounding .sx-feel .sx-closer { border-left-color: var(--sky); color: var(--cream); }
.sounding .sx-feel-frame { box-shadow: 12px 12px 0 0 var(--hotpink); }
.sounding .sx-feel-frame::before { background: rgba(123, 196, 232, 0.9); }
.sounding .sx-feel-closer .mark.is-coral { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 100' preserveAspectRatio='none'%3E%3Cpath d='M4,17 L296,3 L291,89 L9,98 Z' fill='%23FF3399'/%3E%3C/svg%3E"); color: var(--black); }

/* feel: soft blush palette */
.sounding .sx-feel { background: #FBE3EE; color: var(--black); }
.sounding .sx-feel-top .sx-feel-title { color: var(--plum); }
.sounding .sx-feel .sx-feel-copy p { color: var(--black); }
.sounding .sx-feel .sx-feel-copy .aside-script { color: var(--violet); }
.sounding .sx-feel .sx-closer { border-left-color: var(--hotpink); color: var(--black); }
.sounding .sx-feel-frame { box-shadow: 12px 12px 0 0 var(--plum); }
.sounding .sx-feel-frame::before { background: rgba(255, 51, 153, 0.85); }
.sounding .sx-feel-closer .mark.is-coral { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 100' preserveAspectRatio='none'%3E%3Cpath d='M4,17 L296,3 L291,89 L9,98 Z' fill='%23542C7B'/%3E%3C/svg%3E"); color: var(--cream); }

/* feel: brand aura. Cream base with the site's .mesh drift (reused), recoloured to Hot Pink, Violet and a touch of Sky.
   Glows sit behind the polaroid and the outer edges, away from the body text. */
.sounding .sx-feel { background: var(--cream); }
.sounding .sx-feel .sx-aura {
  inset: -5%;
  background:
    radial-gradient(34% 40% at 80% 18%, rgba(255, 51, 153, 0.34), transparent 70%),
    radial-gradient(38% 42% at 6% 72%, rgba(85, 51, 255, 0.26), transparent 70%),
    radial-gradient(26% 30% at 22% 8%, rgba(123, 196, 232, 0.36), transparent 70%),
    radial-gradient(30% 30% at 96% 92%, rgba(255, 51, 153, 0.2), transparent 70%);
  background-size: 160% 160%;
  filter: blur(18px);
}
.sounding .sx-feel .sx-aura-grain {
  position: absolute; inset: 0; z-index: 0; pointer-events: none; opacity: 0.12; mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.sounding .sx-feel .wrap { position: relative; z-index: 2; }
.sounding .sx-feel .sx-aura {
  background:
    radial-gradient(40% 44% at 76% 22%, rgba(255, 51, 153, 0.5), transparent 70%),
    radial-gradient(40% 44% at 8% 80%, rgba(85, 51, 255, 0.34), transparent 70%),
    radial-gradient(28% 32% at 24% 12%, rgba(123, 196, 232, 0.4), transparent 70%),
    radial-gradient(34% 34% at 94% 90%, rgba(255, 51, 153, 0.3), transparent 70%);
}
/* deeper violet so the asides stay above AA where they cross the pink glow */
.sounding .sx-feel .sx-feel-copy .aside-script { color: #4325D9; }
.sounding .sx-feel .sx-feel-copy p.sx-feel-line { margin-top: 1.4rem; font-family: 'League Spartan', sans-serif; font-weight: 800; text-transform: uppercase; letter-spacing: 0.06em; font-size: clamp(1.15rem, 2.2vw, 1.5rem); line-height: 1.25; color: var(--plum); }
.sounding .sx-feel .sx-feel-copy p.sx-feel-line + .sx-closer { margin-top: 1.4rem; }

/* feel aura: more colour, reaching further across the section; centre-right kept softer behind body copy */
.sounding .sx-feel .sx-aura {
  inset: -8%;
  background:
    radial-gradient(46% 50% at 78% 20%, rgba(255, 51, 153, 0.7), transparent 72%),
    radial-gradient(46% 50% at 6% 82%, rgba(85, 51, 255, 0.5), transparent 72%),
    radial-gradient(34% 38% at 22% 10%, rgba(123, 196, 232, 0.6), transparent 72%),
    radial-gradient(38% 40% at 96% 88%, rgba(255, 51, 153, 0.5), transparent 72%),
    radial-gradient(26% 30% at 4% 40%, rgba(123, 196, 232, 0.5), transparent 72%),
    radial-gradient(28% 28% at 60% 98%, rgba(85, 51, 255, 0.32), transparent 72%);
}
.sounding .sx-feel .sx-feel-copy .aside-script { color: #3414B0; }

/* hero: new image has the woman on the right half and plain olive-brown space on the left, so all text lives on the left, no wash */
.sounding .sx-hero { justify-content: center; padding-top: 7rem; padding-bottom: 4rem; min-height: 100vh; }
.sounding .sx-hero .sx-bleed-img { object-position: right center; }
.sounding .sx-hero .page-hero-scrim, .sounding .sx-wash-hero { display: none; }
.sounding .sx-hero .hero-inner > * { max-width: min(44vw, 34rem); }
.sounding .sx-hero h1 { font-size: clamp(2.4rem, 5vw, 4.6rem); }
.sounding .sx-hero .sx-lead { font-size: clamp(1.05rem, 1.9vw, 1.5rem); }
.sounding .sx-hero .sx-sub { font-size: clamp(1rem, 1.5vw, 1.2rem); }
.sounding .sx-hero .sx-cta-wrap { max-width: none; }
@media (max-width: 880px) {
  .sounding .sx-hero .hero-inner > * { max-width: none; }
}
@media (max-width: 780px) {
  .sounding .sx-hero { min-height: 0; padding: 0 0 2.5rem; justify-content: flex-start; }
  .sounding .sx-hero .page-hero-photo-bleed { position: relative; inset: auto; aspect-ratio: 4 / 3; width: 100%; margin-top: 4.6rem; }
  .sounding .sx-hero .sx-bleed-img { object-position: 82% center; }
  .sounding .sx-hero h1 { font-size: clamp(2.4rem, 11vw, 3.4rem); }
}
.sounding .sx-hero .hero-inner { width: 100%; }
.sounding .sx-hero .hero-inner > * { max-width: min(36vw, 30rem); }
.sounding .sx-hero h1 { font-size: clamp(2.4rem, 4.6vw, 4.2rem); }
.sounding .sx-pricechip span { font-size: clamp(0.85rem, 1.3vw, 1.1rem); }
@media (max-width: 880px) { .sounding .sx-hero .hero-inner > * { max-width: none; } }

/* hero lockup copied from the homepage hero: .hero-lead (global class, reused as is) and the .hero-copy h1 rules */
.sounding .sx-hero .sx-eyebrow { font-family: 'Montserrat', sans-serif; font-size: var(--text-kicker); font-weight: 700; letter-spacing: 0.26em; text-transform: uppercase; line-height: 1.4; color: var(--sky); margin: 0 0 1.2rem; max-width: none; }
.sounding .sx-hero .hero-lead { max-width: none; }
.sounding .sx-hero-h1 {
  font-family: 'League Spartan', sans-serif;
  font-weight: 700;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  font-size: min(var(--text-display-hero), 2.5vw);
  line-height: 1;
  color: var(--paper);
  margin: 0;
  white-space: nowrap;
  max-width: none !important;
}
@media (max-width: 880px) {
  .sounding .sx-hero-h1 { font-size: min(var(--text-display-hero), 5.9vw); }
}
@media (max-width: 560px) { .sounding .sx-hero .hero-lead { white-space: normal; } }
.sounding .sx-hero .hero-lead { font-size: clamp(1.05rem, 1.85vw, 1.8rem); }

/* hero hierarchy: big h1, smaller lead, lockup prominent in between; all left in the empty space */
.sounding .sx-hero h1 { font-size: clamp(2.6rem, 4.8vw, 4.4rem); line-height: 0.95; margin: 0 0 1.4rem; max-width: none; }
.sounding .sx-hero .hero-lead { font-size: clamp(1.05rem, 1.75vw, 1.5rem); margin-bottom: 0.9rem; }
.sounding .sx-hero-h1 { font-size: min(var(--text-display-hero), 2.45vw); margin-bottom: 0.4rem; }
.sounding .sx-hero-h1 .mark.is-pink { color: var(--black); }
.sounding .sx-sub { margin-top: 1.3rem; }
@media (max-width: 880px) {
  .sounding .sx-hero h1 { font-size: clamp(2.4rem, 11vw, 3.4rem); }
  .sounding .sx-hero-h1 { font-size: min(var(--text-display-hero), 5.3vw); }
  .sounding .sx-hero .hero-lead { font-size: clamp(1.05rem, 4.4vw, 1.4rem); }
}
@media (min-width: 881px) { .sounding .sx-hero h1 { font-size: clamp(2.6rem, 4.2vw, 4.2rem); } }

/* hero lockup: the inline mark's two line fragments overlapped (padding taller than the line gap), so line two's
   background painted over line one's letters. One block box with its own padding fixes that at every size. */
.sounding .sx-hero-h1 { line-height: 1.15; }
.sounding .sx-hero-h1 .mark { display: block; width: fit-content; max-width: 100%; padding: 0.5em 0.8em; line-height: 1.15; box-decoration-break: slice; -webkit-box-decoration-break: slice; background-size: 100% 100%; }
.sounding .sx-hero-h1 .mark br { display: block; }

/* same left inset as the homepage hero (.hero-inner: 0 6vw, no max-width, no centring) */
.sounding .sx-hero .hero-inner { max-width: none; margin: 0; padding-left: 6vw; padding-right: 6vw; }

/* shortcut tweaks */
.sounding #shortcut .underline-accent { border-bottom-color: var(--hotpink); border-bottom-width: 0.16em; }
.sounding #shortcut .prose p .sx-script-line { display: inline-block; font-family: 'Permanent Marker', cursive; font-weight: 400; text-transform: none; letter-spacing: 0.01em; font-size: 1.28em; line-height: 1.35; color: var(--cream); rotate: -1.2deg; }
/* founders intro: asides must not stretch the line boxes, so paragraph gaps stay even */
.sounding .sx-who-intro p { line-height: 1.65; }
.sounding .sx-who-intro p + p { margin-top: 1.2rem; }
.sounding .sx-who-intro .aside-script { line-height: 1; margin: 0 0.1em; font-size: 1.15em; vertical-align: baseline; }
.sounding .sx-who-intro .aside-script { display: block; width: fit-content; margin: 0.45rem 0 0.45rem; }

/* shortcut: type scale matched to the VA section (.sx-bigquote heading, body size and 1.65 line-height, aside size); column widened to hold it */
.sounding #shortcut { padding-top: 5rem; padding-bottom: 1.5rem; }
.sounding #shortcut .shift-text-centered { max-width: 1000px; }
.sounding #shortcut h2 { font-size: clamp(2.2rem, 6vw, 4.6rem); line-height: 1.02; }
.sounding #shortcut .shift-text-centered .prose { margin-top: 1rem !important; }
.sounding #shortcut .prose p { font-size: clamp(0.95rem, 1.5vw, 1.1rem); line-height: 1.65; }
.sounding #shortcut .prose p + p { margin-top: 0.8rem; }
.sounding #shortcut .aside-script { font-size: 1.28em; }
.sounding #shortcut .prose p .sx-script-line { font-size: 1.28em; }
.sounding #shortcut .prose p.sx-callout-beat { max-width: 44rem; font-size: clamp(1.15rem, 2.1vw, 1.6rem); padding: 1rem 1.5rem; margin: 1rem auto; }
@media (max-width: 880px), (max-height: 719px) {
  .sounding #shortcut .shift-text-centered { max-width: 780px; }
  .sounding #shortcut { padding-top: 4rem; }
}

/* Ben's group chat quote as a die-cut speech-bubble sticker hanging off the card's top-right corner */
.sounding .sx-get-card .sx-quote-sticker {
  position: relative; width: min(100%, 17rem); max-width: 17rem; margin: 1.4rem 0 0 auto; padding: 1rem 1.2rem 0.9rem;
  background: var(--cream); color: var(--black); border: 5px solid #fff; border-radius: 18px; rotate: 5deg; translate: none; top: auto; right: auto; bottom: auto; left: auto;
  box-shadow: 0 0 0 2px rgba(19,16,24,0.12), 6px 8px 0 0 rgba(19,16,24,0.35); filter: none; z-index: 4;
}
.sounding .sx-quote-sticker::after { content: ''; position: absolute; left: 1.6rem; bottom: -17px; width: 22px; height: 22px; background: var(--cream); border-right: 5px solid #fff; border-bottom: 5px solid #fff; rotate: 45deg; border-bottom-right-radius: 5px; }
.sounding .sx-quote-sticker p { color: var(--black); font-weight: 500; font-size: 0.92rem; line-height: 1.45; }
.sounding .sx-quote-sticker cite { display: block; margin-top: 0.4rem; font-family: 'Permanent Marker', cursive; font-style: normal; color: var(--violet); }
@media (min-width: 700px) {
  .sounding .sx-get-card .sx-quote-sticker { position: absolute; margin: 0; top: -2.2rem; right: -1.4rem; width: 15.5rem; }
  .sounding .sx-get-card.sx-has-inset { padding-top: 2.4rem; }
}
@media (min-width: 700px) {
  .sounding .sx-get-card .sx-quote-sticker { top: -3.4rem; right: -2.2rem; width: 14.5rem; }
  .sounding .sx-get-card.sx-has-inset .sx-inset-chat { top: auto; bottom: 1.2rem; translate: none; }
}

/* shortcut: heading line break holds, whole column centred */
.sounding .sx-nowrap { white-space: nowrap; }
.sounding #shortcut .shift-text-centered { margin-left: auto; margin-right: auto; text-align: center; width: 100%; }
.sounding #shortcut .shift-grid { justify-items: center; }
.sounding #shortcut .prose { margin-left: auto; margin-right: auto; text-align: center; }
.sounding #shortcut .prose p { margin-left: auto; margin-right: auto; text-align: center; }
@media (max-width: 520px) { .sounding #shortcut h2 { font-size: 7.6vw; } }

/* kickers: violet on light, sky on dark, black on hot pink (AA) */
.sounding .sx-kicker { color: var(--violet); margin-bottom: 0.9rem; }
.sounding .sx-kicker-c { text-align: center; }
.sounding .sx-head-cell .sx-kicker { margin-bottom: 1rem; }
.sounding .sx-get .sx-kicker, .sounding .sx-fit .sx-kicker { color: var(--sky); }
.sounding .sx-leave .sx-kicker { color: var(--black); }
.sounding .sx-pricemark { position: relative; }
.sounding .sx-pricemark .sx-kicker { margin-bottom: 0; }
.sounding .sx-pricemark .sx-kicker { margin-bottom: 1.6rem; }
.sounding .sx-process .sx-kicker { margin-bottom: 1.5rem; }

/* ---- hero: column sized to the plain space left of the halo, everything scales off it ----
   Image is object-fit:cover anchored right, so its displayed width is max(100vw, 178.6vh); the halo's left edge sits
   at ~46.7% of that width from the right. --col is the room between the (homepage-matching) left inset and the halo. */
@media (min-width: 881px) {
  .sounding .sx-hero { --col: clamp(26rem, calc(100vw - max(100vw, 178.6vh) * 0.467 - 6vw - 2rem), 62rem); }
  .sounding .sx-hero .hero-inner > * { max-width: var(--col); }
  .sounding .sx-hero h1 { font-size: calc(var(--col) / 8.6); line-height: 0.95; margin: 0 0 clamp(1.4rem, 3vh, 2.2rem); }
  .sounding .sx-hero .hero-lead { font-size: calc(var(--col) / 17); margin-bottom: 0.8rem; white-space: nowrap; }
  .sounding .sx-hero-h1 { font-size: calc(var(--col) / 15.6); margin-bottom: clamp(1.6rem, 3.6vh, 2.6rem); }
  .sounding .sx-sub { font-size: calc(var(--col) / 25); max-width: 34em; margin-top: 0; }
  .sounding .sx-pricechip { margin-top: clamp(1.4rem, 3vh, 2.2rem); }
  .sounding .sx-pricechip span { font-size: calc(var(--col) / 30); }
  .sounding .sx-hero .sx-cta-wrap { margin-top: clamp(1.2rem, 2.6vh, 2rem); }
  .sounding .sx-hero .sx-bigbtn { font-size: calc(var(--col) / 28); }
}
@media (min-width: 881px) {
  .sounding .sx-hero .hero-lead { font-size: calc(var(--col) / 22); }
  .sounding .sx-hero-h1 { font-size: calc(var(--col) / 14); }
  .sounding .sx-sub { font-size: calc(var(--col) / 24); }
}
@media (min-width: 881px) {
  .sounding .sx-sub { font-size: max(1.05rem, calc(var(--col) / 24)); max-width: 30em; }
  .sounding .sx-pricechip span { font-size: max(0.95rem, calc(var(--col) / 30)); }
  .sounding .sx-hero .sx-bigbtn { font-size: max(1rem, calc(var(--col) / 28)); }
}

/* shortcut: kicker + more top room (clears the fixed nav, then the usual section gap) */
.sounding #shortcut .sx-kicker-shortcut { color: var(--sky); text-align: center; margin-bottom: 0.8rem; }
.sounding #shortcut { padding-top: calc(72px + clamp(1.2rem, 5vh, 3rem)); }
@media (max-width: 880px), (max-height: 719px) { .sounding #shortcut { padding-top: 5.5rem; } }

/* final CTA: copy sits on the calm pink/violet/peach sky (left), hands and garden stay uncovered on the right */
.sounding .sx-final .cta-art-bleed { --wash: none; }
.sounding .sx-final .cta-art-bleed img { object-position: right center; }
.sounding .sx-final-scrim { display: none; }
.sounding .sx-final { background: #c9a8d6; }
.sounding .sx-final .wrap { padding-left: 6vw; padding-right: 6vw; max-width: none; margin: 0; }
.sounding .sx-final-copy { max-width: min(46vw, 36rem); text-shadow: none; }
.sounding .sx-final-copy .kicker { color: var(--plum); }
.sounding .sx-final-copy h2 { color: var(--black); font-size: clamp(2.4rem, 5.4vw, 5rem); line-height: 1; }
.sounding .sx-final-lead { color: var(--black) !important; }
.sounding .sx-final-copy p { color: var(--black); }
.sounding .sx-final-copy .aside-script { color: #3414B0; }
.sounding .sx-bigluv { color: var(--black) !important; }
.sounding .sx-bigluv .script { color: var(--plum); }
.sounding .sx-final .btn { background: var(--violet); color: var(--cream); box-shadow: 6px 6px 0 0 var(--black); }
.sounding .sx-final .btn:hover { background: var(--black); color: var(--cream); box-shadow: 3px 3px 0 0 var(--violet); }
@media (max-width: 880px) {
  .sounding .sx-final .cta-art-bleed img { object-position: 80% center; }
  .sounding .sx-final-copy { max-width: none; }
}
@media (min-width: 881px) {
  /* hands start ~50% across the image; image height ~ section height (about 112vh with this copy) */
  .sounding .sx-final { --colf: clamp(21rem, calc(100vw - max(100vw, 199vh) * 0.5 - 6vw - 2.5rem), 36rem); min-height: 100vh; padding-top: 7rem; padding-bottom: 4rem; }
  .sounding .sx-final-copy { max-width: var(--colf); }
  .sounding .sx-final-copy h2 { font-size: clamp(2.2rem, calc(var(--colf) / 7), 4.4rem); }
  .sounding .sx-final-lead { font-size: clamp(1.15rem, calc(var(--colf) / 16), 1.8rem); margin: 1rem 0 1.1rem; }
  .sounding .sx-final-copy p { font-size: clamp(0.92rem, calc(var(--colf) / 30), 1.05rem); line-height: 1.55; }
  .sounding .sx-signoff { margin: 1.2rem 0 1.4rem; }
}

/* final CTA: brand aura (same recipe as the feel section) instead of a flat colour; shows behind the copy on mobile */
.sounding .sx-final { background: var(--cream); }
.sounding .sx-final .sx-aura-final {
  inset: -8%; filter: blur(18px); z-index: 0;
  background:
    radial-gradient(46% 40% at 80% 70%, rgba(255, 51, 153, 0.6), transparent 72%),
    radial-gradient(46% 40% at 8% 90%, rgba(85, 51, 255, 0.45), transparent 72%),
    radial-gradient(40% 30% at 20% 45%, rgba(123, 196, 232, 0.5), transparent 72%),
    radial-gradient(38% 30% at 95% 98%, rgba(85, 51, 255, 0.3), transparent 72%);
  background-size: 160% 160%;
}
.sounding .sx-final .sx-aura-final-grain { position: absolute; inset: 0; z-index: 0; pointer-events: none; opacity: 0.12; mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }

/* ===== ROUND: spread testimonials next to CTAs ===== */
.sounding .sx-process-proof { margin-top: clamp(2.5rem, 5vw, 4rem); display: grid; grid-template-columns: 1.4fr 1fr; gap: clamp(1.5rem, 4vw, 3rem); align-items: center; }
.sounding .sx-process-proof .sx-cta-wrap { margin-top: 0; }
.sounding .sx-proof-card { max-width: none; box-shadow: 12px 12px 0 0 var(--violet); }
.sounding .sx-join-grid { display: grid; grid-template-columns: 1.5fr auto; gap: clamp(1.5rem, 4vw, 3.5rem); align-items: center; }
.sounding .sx-join-card { max-width: none; margin: 0; padding-top: 3rem; }
.sounding .sx-join .sx-bigbtn { justify-self: start; }
@media (max-width: 780px) {
  .sounding .sx-process-proof, .sounding .sx-join-grid { grid-template-columns: 1fr; }
  .sounding .sx-k-top .sx-sticker-joy { display: none; }
  .sounding .sx-k-top { grid-template-columns: 1fr; }
}

/* ===== MOBILE: how-it-flows steps stacked with down arrows ===== */
@media (max-width: 780px) {
  .sounding .sx-steps { flex-direction: column; align-items: center; gap: 2.2rem; }
  .sounding .sx-steps li { width: min(100%, 20rem); text-align: center; }
  .sounding .sx-steps li:not(:last-child)::after { display: block; content: '\2193'; right: auto; left: 50%; top: auto; bottom: -2.1rem; translate: -50% 0; font-size: 1.7rem; line-height: 1; color: var(--violet); }
}

/* ===== MOBILE: shortcut beats on soft dark panels ===== */
@media (max-width: 880px), (max-height: 719px) {
  .sounding #shortcut .prose p.shift-beat:not(.sx-callout-beat) { background: rgba(19, 16, 24, 0.72); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); padding: 0.9rem 1.1rem; border-radius: 2px; }
}

/* ===== MOBILE: hero as a tall full-screen band cropped to her, headline over the lower part ===== */
@media (max-width: 780px) {
  .sounding .sx-hero { position: relative; min-height: 0; padding: 0 0 2.5rem; justify-content: flex-start; }
  .sounding .sx-hero .page-hero-photo-bleed { position: absolute; inset: 0 0 auto 0; height: 100svh; min-height: 560px; aspect-ratio: auto; width: 100%; margin-top: 0; }
  .sounding .sx-hero .sx-bleed-img { object-position: 78% center; }
  .sounding .sx-hero .page-hero-scrim { display: block; position: absolute; inset: 0 0 auto 0; height: max(100svh, 560px); z-index: 2; background: linear-gradient(180deg, rgba(19,16,24,0.35) 0%, rgba(19,16,24,0) 22%, rgba(19,16,24,0) 40%, rgba(19,16,24,0.88) 78%, rgba(19,16,24,0.95) 100%); }
  .sounding .sx-hero .hero-inner { position: relative; z-index: 3; padding-top: max(calc(100svh - 17.5rem), 330px); }
  .sounding .sx-hero .sx-sub { margin-top: 2.2rem; }
}

/* ===== MOBILE polish, round 2 ===== */
@media (max-width: 780px) {
  .sounding .sx-join-card, .sounding .sx-join-card p { text-align: left; }
  .sounding .sx-join-card { padding: 2.6rem 1.5rem 1.4rem; }
  .sounding .sx-join { padding-top: 3rem; padding-bottom: 3rem; }
  .sounding .sx-price { padding-top: 3.5rem; }
  .sounding .sx-hero .hero-inner { padding-top: max(calc(100svh - 22rem), 300px); }
}

/* ===== testimonials round: Anna beside her numbers, Zaia note on card 6 ===== */
.sounding .sx-people { grid-template-columns: 1fr; }
.sounding .sx-person-body { display: grid; grid-template-columns: 1fr 1.1fr; gap: clamp(1.5rem, 3vw, 2.5rem); align-items: center; }
.sounding .sx-anna-quote { max-width: none; margin: 0; padding: 2.6rem 1.6rem 1.4rem; box-shadow: 8px 8px 0 0 var(--violet); rotate: 1deg; }
.sounding .sx-anna-quote blockquote p { font-size: 0.98rem; }
.sounding .sx-person:nth-child(2) { margin-top: 0; }
.sounding .sx-zaia-note { margin: 1.3rem 0 0; background: var(--cream); color: var(--black); padding: 1rem 1.2rem; border-radius: 3px; rotate: 2deg; box-shadow: 5px 5px 0 0 var(--teal); border-left: 5px solid var(--hotpink); }
.sounding .sx-zaia-note p { color: var(--black); font-weight: 500; font-size: 0.9rem; line-height: 1.5; }
.sounding .sx-zaia-note cite { display: block; margin-top: 0.4rem; font-family: 'Permanent Marker', cursive; font-style: normal; color: var(--violet); }
@media (max-width: 780px) { .sounding .sx-person-body { grid-template-columns: 1fr; } }

/* ===== tidy after manual edits ===== */
@media (min-width: 700px) {
  .sounding .sx-get-card.sx-has-inset .sx-inset-chat { top: 50%; bottom: auto; translate: 0 -50%; width: 44%; max-width: 380px; right: 1.5rem; }
  .sounding .sx-get-card.sx-has-inset { padding-right: clamp(14rem, 50%, 26rem); padding-top: 2.2rem; }
}
/* Anna's stats now stand alone: four across on desktop, two by two on phones */
.sounding .sx-person-body { display: block; }
@media (min-width: 781px) { .sounding .sx-people .sx-person:first-child .sx-stats .stat { flex: 1 1 0; } }
/* the How it flows quote card needs to read as a card on the cream section */
.sounding .sx-proof-card { background: #fff; padding: 3rem 2rem 1.8rem; }
.sounding .sx-proof-card blockquote p { font-size: clamp(1rem, 1.5vw, 1.15rem); }
/* Anna's card stands alone now (no button beside it), centred */
.sounding .sx-process-proof { grid-template-columns: 1fr; justify-items: center; }
.sounding .sx-process-proof .sx-proof-card { width: 100%; max-width: 760px; }

/* #join strip now holds only the button: centred, even padding */
.sounding .sx-join { padding-top: clamp(2.5rem, 6vw, 3.5rem); padding-bottom: clamp(2.5rem, 6vw, 3.5rem); }
.sounding .sx-join-grid { display: flex; justify-content: center; }
.sounding .sx-join .sx-bigbtn { justify-self: auto; }
@media (max-width: 780px) { .sounding .sx-join-grid { display: block; } }
/* Ben's longer quote after What you leave with */
.sounding .sx-praise-one { grid-template-columns: minmax(0, 46rem); }
.sounding .sx-praise-one .sx-qc blockquote p { font-size: clamp(1rem, 1.5vw, 1.15rem); }

/* day-six beat: bigger and bolder than the other body beats */
.sounding #shortcut .prose p.sx-day-six { font-size: clamp(1.25rem, 2.2vw, 1.75rem); line-height: 1.4; font-weight: 500; }
.sounding #shortcut .sx-day-six .mark.is-pink { font-family: 'League Spartan', sans-serif; font-weight: 800; text-transform: uppercase; color: var(--black); font-size: 1.1em; }
.sounding #shortcut .sx-day-six .aside-script { font-size: 1.45em; display: inline-block; margin-top: 0.3rem; }
@media (min-width: 881px) and (min-height: 720px) {
  .sounding #shortcut { padding-top: calc(72px + clamp(0.8rem, 3vh, 2rem)); padding-bottom: 1rem; }
  .sounding #shortcut .prose p + p { margin-top: 0.6rem; }
  .sounding #shortcut .prose p.sx-callout-beat { margin: 0.7rem auto; padding: 0.8rem 1.4rem; font-size: clamp(1.05rem, 1.8vw, 1.45rem); }
  .sounding #shortcut .prose p.sx-day-six { font-size: clamp(1.2rem, 2vw, 1.6rem); }
  .sounding #shortcut h2 { font-size: clamp(2.2rem, 5vw, 4rem); }
}

/* phone: day-six beat back to body size */
@media (max-width: 780px) {
  .sounding #shortcut .prose p.sx-day-six { font-size: clamp(0.95rem, 1.5vw, 1.1rem); line-height: 1.65; font-weight: 400; }
  .sounding #shortcut .sx-day-six .mark.is-pink { font-size: 1.04em; letter-spacing: 0.01em; }
  .sounding #shortcut .sx-day-six .aside-script { font-size: 1.1em; display: inline; margin-top: 0; white-space: nowrap; }
}

/* desktop: more air between the callout card and the day-six beat; trim the heading gap to keep the pinned frame fitting */
@media (min-width: 781px) {
  .sounding #shortcut .prose p.sx-callout-beat + p.sx-day-six { margin-top: 1.7rem; }
  .sounding #shortcut .shift-text-centered .prose { margin-top: 0.6rem !important; }
}
@media (min-width: 781px) {
  .sounding #shortcut .prose p.sx-callout-beat { margin-bottom: 1.3rem; }
  .sounding #shortcut .prose p.sx-callout-beat + p.sx-day-six { margin-top: 2.1rem; }
}

/* desktop: day-six beat at the same measure as the other beats, about 1.25x body */
@media (min-width: 781px) {
  .sounding #shortcut .prose p.sx-day-six { max-width: 839px; font-size: clamp(1.1rem, 1.75vw, 1.4rem); line-height: 1.5; }
  .sounding #shortcut .sx-day-six .mark.is-pink { font-size: 1.08em; }
  .sounding #shortcut .sx-day-six .aside-script { font-size: 1.3em; }
}

/* =====================================================================
   ROUND: phone fixes + #join testimonial slider
   ===================================================================== */
/* hero: flat black on phones, photo fades into it with no seam */
@media (max-width: 780px) {
  .sounding .sx-hero { background: var(--black); }
  .sounding .sx-hero .page-hero-scrim { background: linear-gradient(180deg, rgba(19,16,24,0.35) 0%, rgba(19,16,24,0) 22%, rgba(19,16,24,0) 40%, rgba(19,16,24,0.88) 78%, rgba(19,16,24,1) 100%); }
}
/* price section head: kicker, h2, script line */
.sounding .sx-price-kicker { text-align: center; margin-bottom: 0.9rem; }
.sounding .sx-price-h2 { text-align: center; margin-bottom: 1rem; }
.sounding .sx-price .wrap > .sx-soeverything { display: block; text-align: center; margin: 0 auto 2rem; }
/* #join slider on violet */
.sounding .sx-join-slider { max-width: 46rem; margin: 0 auto clamp(2rem, 5vw, 3rem); color: var(--cream); text-align: left; }
.sounding .sx-join-slider .quote-slide { margin-bottom: 2.2rem; }
.sounding .sx-join-slider .quote-slide:last-child { margin-bottom: 0; }
.sounding .sx-join-slider .sx-qc { margin: 0; max-width: none; rotate: 0deg; box-shadow: 8px 8px 0 0 var(--black); }
.sounding .sx-join-slider .sx-qc.alt { box-shadow: 8px 8px 0 0 var(--hotpink); }
.sounding .sx-join-slider .sx-qc blockquote p { font-size: clamp(0.98rem, 1.4vw, 1.1rem); }
.sounding .sx-join-slider.is-active .quote-slide { padding: 0.5rem 14px 14px 0.5rem; }
.sounding .sx-join-slider .quote-nav { color: var(--cream); border-color: var(--cream); }
.sounding .sx-join-slider .quote-nav:hover, .sounding .sx-join-slider .quote-nav:focus-visible { background: var(--cream); color: var(--black); }
.sounding .sx-join-slider .quote-bar-wrap { background: rgba(242,240,235,0.35); }
.sounding .sx-join-slider .quote-bar-fill { background: var(--cream); }
.sounding .sx-join-slider .quote-count { color: var(--cream); }
.sounding .sx-join-slider .quote-of { opacity: 0.75; }
@media (max-width: 780px) { .sounding .sx-join-slider .sx-qc { padding: 2.6rem 1.4rem 1.4rem; } }
.sounding .sx-join-slider.is-active .quote-slide { align-items: center; }
.sounding .sx-join-slider .quote-card, .sounding .sx-join-slider .quote-card.alt { transform: none; rotate: 0deg; }
.sounding .sx-join-slider .quote-mark { color: var(--cream); }

/* #join slider: fade, one slide in flow at a time so height follows the active quote */
.sounding .sx-join-slider.is-fade .quote-slide { display: none; margin: 0; padding: 0.5rem 14px 14px 0.5rem; opacity: 1; transition: opacity 0.22s ease; }
.sounding .sx-join-slider.is-fade .quote-slide.is-cur { display: block; }
.sounding .sx-join-slider.is-fade .quote-ui { display: flex; align-items: center; justify-content: center; gap: 1.5rem; margin-top: 1.4rem; }
.sounding .sx-join-slider.is-fade .quote-bar-fill { width: 33.333%; transition: width 0.4s ease; }

/* #join heading above the slider: readable on violet */
.sounding .sx-join .sx-join-kicker { color: var(--cream); text-align: center; margin-bottom: 0.9rem; }
.sounding .sx-join .sx-join-h2 { color: var(--cream); text-align: center; font-size: clamp(1.9rem, 5.5vw, 3.2rem); max-width: 22ch; margin: 0 auto clamp(1.8rem, 4vw, 2.6rem); }
@media (max-width: 780px) { .sounding .sx-join .sx-join-kicker { letter-spacing: 0.14em; font-size: 0.78rem; text-wrap: balance; } }

/* Who's holding you, phones: photo sits directly under the heading */
@media (max-width: 780px) {
  .sounding .sx-who-top { display: flex; flex-direction: column; gap: 0; }
  .sounding .sx-who-intro { display: contents; }
  .sounding .sx-who-intro .sx-kicker { order: 1; text-align: left; align-self: flex-start; width: 100%; }
  .sounding .sx-who-intro h2 { order: 2; margin-bottom: 1.6rem; }
  .sounding .sx-who-top .sx-polaroid { order: 3; margin: 0 auto 2rem; max-width: min(100%, 22rem); }
  .sounding .sx-who-intro p { order: 4; }
  .sounding .sx-who-intro p + p { margin-top: 1.2rem; }
}

/* WhatsApp screenshot stickers: collage under the testimonial slider, single in Anna's proof */
.sounding .sx-shot { display: block; width: 100%; height: auto; background: #fff; border: 5px solid var(--cream); border-radius: 10px; box-shadow: 6px 6px 0 0 var(--black); }
.sounding .sx-collage { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1.4rem, 3vw, 2.2rem) clamp(1.2rem, 3vw, 2rem); align-items: center; max-width: 52rem; margin: clamp(2.5rem, 6vw, 3.5rem) auto clamp(2rem, 5vw, 3rem); padding: 0 10px 8px; }
.sounding .sx-collage .sx-shot:nth-child(1) { rotate: -2.5deg; }
.sounding .sx-collage .sx-shot:nth-child(2) { rotate: 2deg; box-shadow: 6px 6px 0 0 var(--hotpink); }
.sounding .sx-collage .sx-shot:nth-child(n+3) { grid-column: 1 / -1; width: 86%; }
.sounding .sx-collage .sx-shot:nth-child(3) { rotate: -1.5deg; justify-self: start; box-shadow: 6px 6px 0 0 var(--hotpink); }
.sounding .sx-collage .sx-shot:nth-child(4) { rotate: 1.5deg; justify-self: end; }
.sounding .sx-collage .sx-shot:nth-child(5) { rotate: -1deg; justify-self: start; margin-left: 6%; box-shadow: 6px 6px 0 0 var(--hotpink); }
.sounding .sx-collage .sx-shot:nth-child(6) { rotate: 1.5deg; justify-self: end; }
.sounding .sx-collage .sx-shot:nth-child(7) { rotate: -1deg; justify-self: start; margin-left: 6%; margin-top: -0.6rem; box-shadow: 6px 6px 0 0 var(--hotpink); }
.sounding .sx-shot-dm { rotate: 1.5deg; margin-top: 1.4rem; max-width: 30rem; margin-left: auto; margin-right: auto; }
@media (max-width: 560px) {
  .sounding .sx-collage { grid-template-columns: 1fr; padding: 0 8px 8px; }
  .sounding .sx-collage .sx-shot:nth-child(n+3) { width: 100%; margin-left: 0; }
}
@media (prefers-reduced-motion: reduce) { .sounding .sx-shot { rotate: 0deg !important; } }

/* "Not sure? Message us first": a quiet aside under the price box and FAQ, not a second button */
.sounding .sx-notsure { margin-top: 1.4rem; font-size: 0.95rem; font-weight: 400; opacity: 0.85; }
.sounding .sx-notsure a { color: inherit; text-decoration: underline; text-underline-offset: 3px; font-weight: 600; }
.sounding .sx-notsure a:hover, .sounding .sx-notsure a:focus-visible { text-decoration-thickness: 2px; }

/* Edit 2 (2026-10-19): who-it-is-for line above the Sound familiar kicker */
.sounding .sx-problem-who { margin: 0 0 1.4rem; }
.sounding .sx-hero .sx-sub { text-wrap: balance; }
.sounding #shortcut .prose p.sx-shortcut-who { font-size: 1.3em; line-height: 1.4; font-weight: 400; color: var(--cream); max-width: 32em; margin-inline: auto; text-wrap: balance; }

/* =====================================================================
   6 · intro promise + proof, one centred moment (replaces the two-column
   layout). The promise sits large on its own, the proof reads as a DM
   card that lands on a comment bubble.
   ===================================================================== */
.sounding .sx-intro-cols { display: block; max-width: 46rem; margin: clamp(3rem, 7vw, 5rem) auto 0; text-align: center; }
.sounding .sx-intro-text .sx-copy-lg {
  font-family: 'League Spartan', sans-serif;
  font-weight: 600;
  font-size: clamp(1.45rem, 3.4vw, 2.25rem);
  line-height: 1.25;
  color: var(--black);
  text-wrap: balance;
}
.sounding .sx-intro-text::after {
  content: "";
  display: block;
  width: 3px;
  height: clamp(2.2rem, 5vw, 3.2rem);
  margin: clamp(1.4rem, 3vw, 2rem) auto;
  background: var(--hotpink);
  border-radius: 2px;
}
.sounding .sx-journey {
  position: relative;
  max-width: 34rem;
  margin: 0 auto;
  text-align: left;
  rotate: -1deg;
  padding: clamp(1.4rem, 4vw, 2.2rem);
}
/* unread-message dot */
.sounding .sx-journey::before {
  content: "";
  position: absolute;
  top: -9px;
  right: -9px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--hotpink);
  box-shadow: 0 0 0 4px var(--cream);
}
.sounding .sx-journey .sx-journey-lead { font-size: clamp(1rem, 2vw, 1.2rem); line-height: 1.5; color: rgba(242, 240, 235, 0.9); margin: 0; }
.sounding .sx-journey .sx-journey-big {
  position: relative;
  display: block;
  width: fit-content;
  max-width: 100%;
  margin: 1.4rem 0 0.4rem auto;
  padding: 0.75rem 0.85rem;
  background: var(--cream);
  border-radius: 1.4rem 1.4rem 0.35rem 1.4rem;
  font-size: clamp(1.45rem, 5.4vw, 2.6rem);
  line-height: 1.5;
  text-align: center;
  rotate: 1.5deg;
}
.sounding .sx-journey-big .mark.thick { padding: 0.35em 0.55em; }
/* the like on the comment */
.sounding .sx-journey-big::after {
  content: "";
  position: absolute;
  left: -0.9rem;
  bottom: -0.8rem;
  width: 2.3rem;
  height: 2.3rem;
  border-radius: 50%;
  background: var(--hotpink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-7.5-4.6-9.6-9.3C.9 8.2 3.1 4.5 6.7 4.5c2.1 0 3.6 1.2 5.3 3.1 1.7-1.9 3.2-3.1 5.3-3.1 3.6 0 5.8 3.7 4.3 7.2C19.5 16.4 12 21 12 21z' fill='%23131018'/%3E%3C/svg%3E") center / 58% no-repeat;
  box-shadow: 0 0 0 3px var(--black);
}
@media (max-width: 640px) {
  .sounding .sx-journey { rotate: 0deg; }
  .sounding .sx-journey-big::after { left: -0.6rem; width: 2rem; height: 2rem; }
}

/* =====================================================================
   WHAT YOU GET, 9 cards (cohort two): call date chips + layout
   ===================================================================== */
.sounding .sx-get-sub { margin-top: 0.9rem; color: rgba(242, 240, 235, 0.86); font-weight: 400; }
.sounding .sx-get-card p { max-width: 62ch; }
.sounding .sx-call-chip {
  display: table;
  margin: 0.2rem 0 0.7rem;
  background: var(--accent);
  color: var(--accent-ink);
  font-family: 'League Spartan', sans-serif;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 0.78rem;
  line-height: 1;
  padding: 0.5rem 0.75rem 0.4rem;
  border-radius: 3px;
  rotate: -2deg;
  box-shadow: 3px 3px 0 0 var(--black);
}
.sounding .sx-call-title { display: block; }
/* the mirror lives in a narrow card: always stacked under the copy, never over it */
.sounding .sx-get-card.sx-span-2 .sx-sticker {
  position: relative; top: auto; right: auto; translate: none;
  display: block; width: clamp(160px, 62%, 220px); margin: 1.4rem 0 0 auto;
}
/* five days spans the full row on desktop, so its sticker gets the right-hand space */
@media (min-width: 700px) {
  .sounding .sx-get-card.sx-span-6.sx-has-toedip { padding-right: 18.5rem; min-height: 15rem; }
}
@media (min-width: 700px) and (max-width: 980px) {
  .sounding .sx-get-card.sx-span-6.sx-has-toedip { padding-right: 15.5rem; }
}
/* under 980px every card takes the full row, so no card is left stranded half-width */
@media (max-width: 980px) {
  .sounding .sx-bento .sx-span-2 { grid-column: 1 / -1; }
}

/* ---- What you get v2: the three live calls as their own set, then six numbered cards ---- */
.sounding .sx-get-subhead {
  font-family: 'League Spartan', sans-serif; font-weight: 900; text-transform: uppercase;
  font-size: clamp(1.5rem, 3vw, 2.1rem); color: var(--cream); letter-spacing: 0.01em; margin: 0;
}
.sounding .sx-get-subhead::after { content: ''; display: block; width: 3.2rem; height: 5px; background: var(--hotpink); margin-top: 0.6rem; rotate: -2deg; }
.sounding .sx-calls-head { margin: clamp(0.5rem, 2vw, 1.2rem) 0 1.8rem; }
.sounding .sx-calls-head .sx-get-sub { margin-top: 0.9rem; }
.sounding .sx-calls { list-style: none; display: grid; grid-template-columns: 1fr; gap: 2rem; margin: 0 0 clamp(3.5rem, 7vw, 5.5rem); padding: 0; }
.sounding .sx-callcard {
  position: relative; display: flex; flex-direction: column;
  background: var(--cream); color: var(--black);
  border: 2px solid var(--black); border-top: 8px solid var(--hotpink); border-radius: 3px;
  box-shadow: 8px 8px 0 0 var(--violet);
  padding: 1.8rem 1.6rem 1.9rem;
}
.sounding .sx-callcard h3 { color: var(--black); margin: 0 0 0.9rem; }
.sounding .sx-callcard .sx-call-title { font-size: clamp(1.45rem, 2.2vw, 1.8rem); line-height: 1.05; }
.sounding .sx-callcard p { color: #2A2530; font-weight: 400; font-size: 0.98rem; line-height: 1.6; margin: 0; }
.sounding .sx-callcard .sx-call-chip { background: var(--violet); color: var(--cream); box-shadow: 3px 3px 0 0 var(--hotpink); }
.sounding .sx-callcard .sx-sticker { position: relative; inset: auto; translate: none; margin: 1.2rem 0 -0.6rem auto; width: clamp(150px, 46vw, 200px); }
.sounding .sx-get-plus { margin-bottom: 1.8rem; }
@media (min-width: 1100px) {
  .sounding .sx-calls {
    grid-template-columns: repeat(3, 1fr); gap: 1.8rem;
  }
  .sounding .sx-get .wrap { max-width: 1360px; }
  .sounding .sx-callcard .sx-sticker { margin-top: auto; padding-top: 1rem; }
}
.sounding .sx-recap-sub { margin: 0.7rem 0 0.2rem; font-family: 'League Spartan', sans-serif; font-weight: 800; text-transform: uppercase; letter-spacing: 0.05em; font-size: 0.74rem; color: #FF85C0; }
.sounding .sx-recap-sub:first-of-type { margin-top: 0.2rem; }

/* ---- live calls v3: one shape, three colourways, progress dots 1 > 2 > 3 ---- */
.sounding .sx-callcard { border: 2px solid var(--black); border-radius: 4px; box-shadow: 8px 8px 0 0 var(--black); padding: 1.6rem 1.5rem 1.8rem; gap: 0; }
.sounding .sx-call-1 { background: var(--hotpink); color: var(--black); rotate: -0.6deg; }
.sounding .sx-call-2 { background: var(--sky); color: var(--black); rotate: 0.5deg; }
.sounding .sx-call-3 { background: var(--violet); color: var(--cream); rotate: -0.4deg; box-shadow: 8px 8px 0 0 var(--hotpink); }
.sounding .sx-callcard p { color: inherit; font-size: 0.98rem; line-height: 1.6; margin: 0 0 0.9rem; }
.sounding .sx-callcard strong { font-weight: 700; }
.sounding .sx-call-top { display: flex; align-items: center; justify-content: space-between; gap: 0.8rem; margin-bottom: 0.9rem; }
.sounding .sx-callcard .sx-call-chip { margin: 0; background: var(--black); color: var(--cream); box-shadow: 3px 3px 0 0 var(--cream); }
.sounding .sx-call-3 .sx-call-chip { background: var(--cream); color: var(--black); box-shadow: 3px 3px 0 0 var(--black); }
.sounding .sx-call-track { display: inline-flex; gap: 0.35rem; flex: none; }
.sounding .sx-call-track i { width: 0.7rem; height: 0.7rem; border-radius: 50%; border: 2px solid currentColor; display: block; }
.sounding .sx-call-track i.on { background: currentColor; }
.sounding .sx-callcard h3.sx-call-title { display: block; color: inherit; font-size: clamp(1.7rem, 2.6vw, 2.2rem); line-height: 1; margin: 0 0 1rem; }
.sounding .sx-callcard p.sx-call-lead { font-family: 'League Spartan', sans-serif; font-weight: 700; font-size: clamp(1.15rem, 1.5vw, 1.3rem); line-height: 1.3; }
.sounding .sx-call-script { font-size: 1.2em; line-height: 1; transform: rotate(-3deg); }
.sounding .sx-callcard .underline-accent { border-bottom: 0.14em solid currentColor; }
.sounding .sx-call-1 .underline-accent { border-bottom-color: var(--violet); }
.sounding .sx-call-2 .underline-accent { border-bottom-color: var(--violet); }
.sounding .sx-call-3 .underline-accent { border-bottom-color: var(--hotpink); }
.sounding .sx-callcard p.sx-call-wb { margin: 0.4rem 0 0; padding-top: 0.9rem; border-top: 2px dashed currentColor; }
.sounding .sx-wb { display: inline-block; font-family: 'League Spartan', sans-serif; font-weight: 800; text-transform: uppercase; letter-spacing: 0.05em; font-size: 0.74rem; line-height: 1; padding: 0.4rem 0.55rem 0.3rem; border: 2px solid currentColor; border-radius: 3px; rotate: -2deg; vertical-align: 0.1em; }
.sounding .sx-call-aside { font-family: 'Permanent Marker', cursive; font-size: 0.95em; line-height: 1.35; color: var(--black); }
.sounding .sx-echo-label { font-family: 'League Spartan', sans-serif; font-weight: 800; text-transform: uppercase; letter-spacing: 0.05em; font-size: 0.8rem !important; margin: 0.3rem 0 0.6rem !important; color: var(--cream); }
.sounding .sx-echo { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.5rem; }
.sounding .sx-echo li { display: grid; gap: 0.15rem; padding: 0.55rem 0.7rem 0.6rem; background: rgba(19, 16, 24, 0.28); border-left: 4px solid var(--hotpink); border-radius: 2px; font-size: 0.95rem; line-height: 1.4; }
.sounding .sx-echo-q { font-weight: 700; color: var(--cream); }
.sounding .sx-echo-a { color: rgba(242, 240, 235, 0.92); }
.sounding .sx-echo-a::before { content: '\2192\00a0' / ''; color: var(--hotpink); font-weight: 700; }
@media (prefers-reduced-motion: reduce) { .sounding .sx-callcard { rotate: 0deg; } }
.sounding .sx-callcard .mark { padding: 0.12em 0.3em; margin: 0 -0.05em; }
.sounding .sx-callcard p.sx-call-wb { margin-top: auto; }
.sounding .sx-callcard p.sx-call-wb { position: relative; }
.sounding .sx-callcard > p:nth-last-of-type(2) { margin-bottom: 1.4rem; }
.sounding .sx-call-aside { letter-spacing: 0.02em; line-height: 1.5; }
/* desktop: calls 1 and 2 side by side, call 3 (the payoff) runs the full width beneath */
@media (min-width: 900px) {
  .sounding .sx-calls { grid-template-columns: 1fr 1fr; gap: 2rem; }
  .sounding .sx-call-3 { grid-column: 1 / -1; }
  .sounding .sx-call-3 > p { max-width: 60ch; }
  .sounding .sx-call-3 .sx-echo { grid-template-columns: repeat(3, 1fr); gap: 0.8rem; }
}
@media (min-width: 900px) and (max-width: 1099px) {
  .sounding .sx-call-3 .sx-echo { grid-template-columns: 1fr 1fr; }
}
.sounding .sx-echo li { align-content: start; }
.sounding .sx-get-card.sx-has-toedip { z-index: 3; }
.sounding .sx-get-card .sx-sticker-toedip { z-index: 4; }
@media (min-width: 700px) {
  .sounding .sx-get-card.sx-has-mirror { min-height: calc(clamp(190px, 22vw, 240px) + 3rem); z-index: 3; }
  .sounding .sx-get-card .sx-sticker-mirror { width: clamp(190px, 22vw, 240px); z-index: 4; }
}
/* FAQ on a dark ground, keeping the light/dark rhythm (who: cream, faq: deep, cta: black) */
.sounding .sx-faq { background: var(--jewel-1); color: var(--cream); }
.sounding .sx-faq h2 { color: var(--cream); }
.sounding .sx-faq-list { border-top-color: var(--line-on-dark); }
.sounding .sx-faq .sx-q { border-bottom-color: var(--line-on-dark); }
.sounding .sx-faq .sx-q summary h3 { color: var(--cream); }
.sounding .sx-faq .sx-q p { color: rgba(242, 240, 235, 0.8); }
.sounding .sx-faq .sx-q summary::after { background: var(--hotpink); color: var(--black); }
.sounding .sx-faq .sx-q[open] summary::after { background: var(--sky); color: var(--black); }
.sounding .sx-faq a:focus-visible,
.sounding .sx-faq summary:focus-visible { outline-color: var(--sky); }

/* slim sales-page header: logo + one "I'm in" button, no nav links.
   On mobile the button hides: the hero has its own big CTA and the sticky bar takes over after it. */
.sounding .sx-nav .sx-nav-btn {
  margin-top: 0; padding: 0.6rem 1.3rem; gap: 0.6rem;
  font-size: 0.82rem; box-shadow: 4px 4px 0 0 var(--magenta);
}
.sounding .sx-nav .sx-nav-btn:hover { box-shadow: 2px 2px 0 0 var(--violet); }
@media (max-width: 780px) { .sounding .sx-nav .sx-nav-btn { display: none; } }
.sounding .sx-footer-home { margin-top: 0.8rem; }
.sounding .sx-footer-home a { text-decoration: underline; text-underline-offset: 3px; opacity: 0.85; }
.sounding .sx-footer-home a:hover, .sounding .sx-footer-home a:focus-visible { opacity: 1; color: var(--magenta); }

/* slim header logo link: keyboard focus ring (hover cue already comes from .nav-mark:hover) */
.sounding .sx-nav .nav-mark:focus-visible { outline: 2px solid var(--magenta); outline-offset: 4px; border-radius: 2px; }

/* back-to-main-site arrow before the logo (2026-10-20), nudges left on hover */
.sx-nav .nav-mark .sx-back-arrow { display: inline-block; margin-right: 0.45em; transition: translate 0.25s ease; }
.sx-nav .nav-mark:hover .sx-back-arrow { translate: -0.2em 0; }
@media (prefers-reduced-motion: reduce) { .sx-nav .nav-mark .sx-back-arrow { transition: none; } }
