@font-face {
  font-family: PPNeue;
  src: url("fonts/PPNeueMontreal-Variable.woff2") format("woff2");
  font-display: swap;
  font-weight: 100 900;
}
@font-face {
  font-family: Simplon;
  src: url("fonts/SimplonMono-400.woff2") format("woff2");
  font-display: swap;
}
:root {
  --brown: #3e246f;
  --cream: #f8f6f2;
  --blush: #f3e9e3;
  --dark: #2d174c;
  --ease: cubic-bezier(0.16, 1, 0.3, 1);
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  scrollbar-width: none;
}
html::-webkit-scrollbar {
  display: none;
}
body {
  margin: 0;
  color: var(--brown);
  background: #fff;
  font-family: PPNeue, Arial, sans-serif;
  font-weight: 400;
  overflow-x: hidden;
}
a {
  color: inherit;
  text-decoration: none;
}
img,
video {
  display: block;
  width: 100%;
}
button {
  font: inherit;
  color: inherit;
}
p,
h1,
h2,
h3,
blockquote {
  margin: 0;
}
.eyebrow {
  font:
    13px/1.2 Simplon,
    monospace;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.reveal {
  opacity: 0;
  transform: translateY(35px);
  filter: blur(6px);
  transition:
    opacity 0.9s var(--ease),
    transform 0.9s var(--ease),
    filter 0.9s var(--ease);
}
.reveal.in {
  opacity: 1;
  transform: none;
  filter: none;
}
.site-nav {
  position: fixed;
  z-index: 100;
  top: 32px;
  left: 32px;
  right: 32px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  pointer-events: none;
  transition: color 0.35s;
}
.site-nav > * {
  pointer-events: auto;
}
.brand {
  width: 90px;
  height: 48px;
  border: 1px solid rgba(71, 32, 28, 0.17);
  border-radius: 26px 26px 26px 0;
  display: grid;
  place-items: center;
  background: rgba(255, 255, 255, 0.14);
  backdrop-filter: blur(12px);
  font-size: 29px;
  font-weight: 650;
  letter-spacing: -2px;
}
.nav-links {
  position: absolute;
  left: 50%;
  width: 380px;
  height: 56px;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  background: rgba(107, 94, 91, 0.12);
  backdrop-filter: blur(16px);
  padding: 4px;
  border-radius: 40px;
}
.nav-links a {
  height: 48px;
  flex: 1;
  display: grid;
  place-items: center;
  font-size: 14px;
  border-radius: 30px;
  transition: background 0.25s;
}
.nav-links a:hover,
.nav-links a:focus-visible {
  background: rgba(255, 255, 255, 0.18);
}
.app-button {
  width: 158px;
  min-width: 158px;
  height: 56px;
  border-radius: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(107, 94, 91, 0.12);
  backdrop-filter: blur(16px);
  font-size: 14px;
  transition: background 0.25s;
}
.site-nav.is-dark {
  color: white;
}
.site-nav.is-dark .brand {
  border-color: rgba(255, 255, 255, 0.22);
}
.menu-button {
  display: none;
}
.hero {
  height: 280vh;
  position: relative;
  background: #15191b;
}
.hero-sticky {
  position: sticky;
  top: 0;
  height: 100vh;
  overflow: hidden;
}
.hero-clouds,
.hero-world,
.hero-world img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-clouds {
  z-index: 1;
  filter: saturate(0.75) brightness(0.58) blur(1px);
  transform: scale(1.05);
}
.hero-world {
  z-index: 2;
  opacity: 0;
  overflow: hidden;
  background: #91b1c1;
}
.world-sky {
  z-index: 0;
}
.world-lake {
  z-index: 1;
}
.world-island {
  z-index: 2;
  object-position: center 55%;
  mix-blend-mode: multiply;
}
.world-front {
  z-index: 3;
  object-position: center 74%;
}
.hero-copy {
  position: absolute;
  z-index: 4;
  inset: 0;
  display: grid;
  place-items: center;
  text-align: center;
  color: #fff;
  padding: 30px;
}
.hero h1 {
  font-size: clamp(40px, 4.35vw, 63px);
  line-height: 1.02;
  font-weight: 300;
  letter-spacing: -0.045em;
}
.hero h1 span {
  display: inline-block;
  opacity: 0;
  filter: blur(12px);
  transform: translateY(18px);
  animation: hero-in 1.1s var(--ease) forwards;
}
.hero h1 span + span {
  animation-delay: 0.16s;
}
@keyframes hero-in {
  to {
    opacity: 1;
    filter: none;
    transform: none;
  }
}
.phone {
  position: absolute;
  z-index: 5;
  left: 50%;
  top: 50%;
  width: min(304px, 45vw);
  aspect-ratio: 443/960;
  border: 6px solid #171717;
  border-radius: 52px;
  background: #111;
  overflow: hidden;
  box-shadow: 0 35px 100px #0006;
  transform: translate(-50%, 105vh) scale(2.25);
  will-change: transform;
}
.phone video {
  height: 100%;
  object-fit: cover;
}
.phone-speaker {
  position: absolute;
  z-index: 2;
  top: 11px;
  left: 50%;
  transform: translateX(-50%);
  width: 29%;
  height: 25px;
  border-radius: 16px;
  background: #111;
}
.scroll-cue {
  position: absolute;
  z-index: 6;
  left: 50%;
  bottom: 35px;
  transform: translateX(-50%);
  display: flex;
  gap: 15px;
  color: white;
  font: 12px Simplon;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  animation: float 1.8s ease-in-out infinite;
}
@keyframes float {
  50% {
    transform: translate(-50%, 7px);
  }
}
.statement {
  min-height: 635px;
  padding: 120px 8vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: 36px;
}
.statement h2 {
  max-width: 1040px;
  font-size: clamp(40px, 4vw, 58px);
  line-height: 1.05;
  font-weight: 300;
  letter-spacing: -0.035em;
}
.statement em {
  color: #9b8581;
  font-weight: 300;
}
.glass-link,
.light-pill {
  display: inline-flex;
  align-items: center;
  gap: 26px;
  border-radius: 32px;
  padding: 18px 24px;
  background: #f1eeee80;
  backdrop-filter: blur(12px);
  font-size: 16px;
  transition:
    transform 0.25s,
    background 0.25s;
}
.glass-link:hover,
.light-pill:hover {
  transform: scale(1.035);
  background: #e7dfdc;
}
.compact {
  min-height: 535px;
}
.compact h2 {
  font-size: clamp(38px, 3.6vw, 52px);
}
.media-shell {
  position: relative;
  height: calc(100vh - 16px);
  min-height: 650px;
  margin: 8px;
  border-radius: 48px;
  overflow: hidden;
  background: #222;
  color: #fff;
}
.cover-media {
  height: 100%;
  object-fit: cover;
  transition: transform 1.2s var(--ease);
}
.media-shell:hover .cover-media {
  transform: scale(1.025);
}
.media-shell:after,
.pair-card:after,
.split-media:after,
.product-visual:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, #0002, #0000 45%, #0005);
  pointer-events: none;
}
.media-copy {
  position: absolute;
  z-index: 2;
  top: 55px;
  left: 55px;
  width: min(500px, 70%);
}
.media-copy.bottom {
  top: auto;
  bottom: 55px;
}
.media-copy h2 {
  margin-top: 16px;
  font-size: clamp(37px, 3.2vw, 48px);
  line-height: 1.03;
  font-weight: 300;
  letter-spacing: -0.03em;
}
.media-copy .light-pill {
  margin-top: 28px;
  background: #ffffff25;
  color: white;
}
.paired {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding: 0 8px;
}
.pair-card {
  height: calc(100vh - 16px);
  min-height: 650px;
  position: relative;
  border-radius: 48px;
  overflow: hidden;
  background: var(--blush);
}
.pair-card > img,
.pair-card > video {
  height: 100%;
  object-fit: cover;
  transition: transform 1.2s var(--ease);
}
.pair-card:hover > img,
.pair-card:hover > video {
  transform: scale(1.025);
}
.card-copy {
  position: absolute;
  z-index: 2;
  left: 45px;
  bottom: 45px;
  width: 65%;
}
.card-copy.light {
  color: white;
}
.card-copy h2 {
  margin-top: 14px;
  font-size: clamp(32px, 2.5vw, 42px);
  line-height: 1.04;
  font-weight: 300;
  letter-spacing: -0.03em;
}
.split-section,
.products {
  display: grid;
  grid-template-columns: 3fr 2fr;
  gap: 8px;
  padding: 0 8px;
  min-height: calc(100vh - 16px);
}
.split-media,
.product-visual {
  position: relative;
  border-radius: 48px;
  overflow: hidden;
  background: var(--blush);
}
.split-media video,
.product-visual img {
  height: 100%;
  object-fit: cover;
  transition: transform 1.2s var(--ease);
}
.split-media:hover video,
.product-visual:hover img {
  transform: scale(1.02);
}
.split-copy,
.product-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 8vw;
  background: var(--cream);
  border-radius: 48px;
}
.split-copy h2,
.product-copy h2 {
  font-size: clamp(37px, 3.2vw, 48px);
  line-height: 1.03;
  font-weight: 300;
  letter-spacing: -0.035em;
  margin: 18px 0 30px;
}
.split-copy > p:last-child,
.product-copy .tab-panel > p {
  font-size: 18px;
  line-height: 1.35;
  max-width: 390px;
}
.products {
  grid-template-columns: 2fr 3fr;
}
.product-copy {
  grid-column: 1;
}
.product-visual {
  grid-column: 2;
}
.tabs {
  position: absolute;
  z-index: 3;
  top: 28px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 4px;
  padding: 4px;
  border-radius: 40px;
  background: #ffffff22;
  backdrop-filter: blur(14px);
  white-space: nowrap;
}
.tabs button {
  border: 0;
  background: transparent;
  color: white;
  padding: 14px 24px;
  border-radius: 30px;
  cursor: pointer;
}
.tabs button.is-active {
  background: #0006;
}
.tab-panel {
  animation: panel-in 0.45s var(--ease);
}
@keyframes panel-in {
  from {
    opacity: 0;
    transform: translateY(12px);
    filter: blur(4px);
  }
}
.reviews {
  background: var(--blush);
  padding: 110px 0 95px;
  overflow: hidden;
  min-height: 1065px;
}
.reviews-head {
  padding: 0 6vw 70px;
  display: flex;
  align-items: end;
  justify-content: space-between;
}
.reviews-head h2 {
  margin-top: 18px;
  font-size: clamp(42px, 4.1vw, 59px);
  font-weight: 300;
  line-height: 1.02;
  letter-spacing: -0.04em;
}
.review-controls {
  display: flex;
  gap: 8px;
}
.review-controls button {
  border: 0;
  border-radius: 50%;
  background: #fff;
  width: 55px;
  height: 55px;
  font-size: 22px;
  cursor: pointer;
  transition: transform 0.2s;
}
.review-controls button:hover {
  transform: scale(1.07);
}
.review-track {
  display: flex;
  gap: 10px;
  padding: 0 6vw;
  overflow-x: auto;
  scrollbar-width: none;
  scroll-snap-type: x mandatory;
}
.review-track::-webkit-scrollbar {
  display: none;
}
.review-card {
  flex: 0 0 min(690px, 80vw);
  height: 620px;
  background: #fff;
  border-radius: 48px;
  padding: 10px;
  display: grid;
  grid-template-columns: 48% 52%;
  grid-template-rows: 1fr auto;
  overflow: hidden;
  scroll-snap-align: center;
}
.review-card img,
.review-card video {
  grid-row: 1/3;
  height: 100%;
  object-fit: cover;
  border-radius: 40px;
}
.review-card blockquote {
  align-self: center;
  padding: 45px;
  font-size: clamp(25px, 2.2vw, 36px);
  line-height: 1.08;
  font-weight: 300;
  letter-spacing: -0.025em;
}
.review-card > p {
  padding: 0 45px 40px;
  font: 13px Simplon;
  text-transform: uppercase;
}
.feature-reel {
  height: 810px;
  background: #e4c9b7;
  overflow: hidden;
  padding: 65px 0;
}
.feature-track {
  height: 100%;
  display: flex;
  gap: 10px;
  width: max-content;
  transform: translateX(-8vw);
  will-change: transform;
}
.feature-card {
  position: relative;
  width: min(465px, 70vw);
  height: 680px;
  border-radius: 48px;
  overflow: hidden;
  background: #eee;
  color: white;
}
.feature-card img,
.feature-card video {
  height: 100%;
  object-fit: cover;
  transition: transform 1s var(--ease);
}
.feature-card:hover img,
.feature-card:hover video {
  transform: scale(1.03);
}
.feature-card:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(transparent 45%, #0008);
}
.feature-card > div {
  position: absolute;
  z-index: 2;
  left: 35px;
  right: 35px;
  bottom: 35px;
}
.feature-card h3 {
  font-size: 34px;
  font-weight: 300;
  line-height: 1.03;
  margin-top: 12px;
}
.latest {
  min-height: 337px;
  padding-top: 70px;
  padding-bottom: 70px;
}
.editorial {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding: 0 8px;
}
.editorial-card {
  height: 750px;
  position: relative;
  border-radius: 48px;
  overflow: hidden;
  background: var(--cream);
}
.editorial-card img {
  height: 55%;
  object-fit: cover;
  transition: transform 0.9s var(--ease);
}
.editorial-card:hover img {
  transform: scale(1.03);
}
.editorial-card > div {
  padding: 38px;
}
.editorial-card h2 {
  font-size: clamp(29px, 2.7vw, 42px);
  line-height: 1.04;
  font-weight: 300;
  margin: 14px 0 35px;
  max-width: 560px;
}
.editorial-card span {
  font: 13px Simplon;
  text-transform: uppercase;
}
.news {
  margin: 8px;
  height: 425px;
  border-radius: 48px;
  background: var(--brown);
  color: white;
  display: flex;
  align-items: center;
  overflow: hidden;
}
.news-track {
  display: flex;
  align-items: center;
  gap: 70px;
  width: max-content;
  animation: marquee 25s linear infinite;
}
.news-track span {
  font-size: 58px;
  font-weight: 300;
  white-space: nowrap;
}
.news-track span:after {
  content: "✦";
  font-size: 18px;
  margin-left: 70px;
  vertical-align: middle;
}
@keyframes marquee {
  to {
    transform: translateX(-50%);
  }
}
.news:hover .news-track {
  animation-play-state: paused;
}
.faq {
  min-height: 1080px;
  margin: 8px;
  padding: 110px max(7vw, 40px);
  border-radius: 48px;
  background: var(--cream);
  text-align: center;
}
.faq > h2 {
  font-size: clamp(42px, 4vw, 58px);
  font-weight: 300;
  letter-spacing: -0.04em;
  margin: 17px 0 65px;
}
.faq-list {
  max-width: 920px;
  margin: auto;
  display: flex;
  flex-direction: column;
  gap: 9px;
}
.faq-item {
  text-align: left;
  background: #fff;
  border-radius: 34px;
  overflow: hidden;
}
.faq-item button {
  width: 100%;
  min-height: 68px;
  border: 0;
  background: transparent;
  padding: 20px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  font-size: 18px;
}
.faq-item .plus {
  font-size: 25px;
  line-height: 1;
  transition: transform 0.45s var(--ease);
}
.faq-item button[aria-expanded="true"] .plus {
  transform: rotate(45deg);
}
.faq-answer {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.55s var(--ease);
}
.faq-answer p {
  overflow: hidden;
  padding: 0 28px;
  font-size: 17px;
  line-height: 1.4;
  color: #785d59;
  transition: padding 0.55s var(--ease);
}
.faq-item.open .faq-answer {
  grid-template-rows: 1fr;
}
.faq-item.open .faq-answer p {
  padding-bottom: 25px;
}
.download {
  min-height: 650px;
  margin: 8px;
  padding: 7vw;
  border-radius: 48px;
  background: var(--blush);
  display: flex;
  align-items: center;
  justify-content: space-between;
  overflow: hidden;
}
.download h2 {
  font-size: clamp(48px, 5.3vw, 76px);
  font-weight: 300;
  line-height: 0.98;
  letter-spacing: -0.05em;
  margin: 20px 0 40px;
}
.store-buttons {
  display: flex;
  gap: 8px;
}
.store-buttons a {
  background: white;
  border-radius: 30px;
  padding: 18px 24px;
  font-size: 15px;
  transition: transform 0.2s;
}
.store-buttons a:hover {
  transform: translateY(-3px);
}
.qr-wrap {
  transform: rotate(8deg);
  text-align: center;
  background: white;
  padding: 22px;
  border-radius: 28px;
  box-shadow: 0 25px 60px #6c413328;
}
.qr {
  width: 210px;
  aspect-ratio: 1;
  background: repeating-conic-gradient(#241817 0 25%, transparent 0 50%) 0/22px
    22px;
  border: 15px solid white;
  box-shadow: inset 0 0 0 8px #241817;
}
.qr-wrap p {
  font: 12px Simplon;
  margin-top: 12px;
  text-transform: uppercase;
}
.legal-notes {
  padding: 45px 8vw;
  font-size: 11px;
  line-height: 1.45;
  color: #79635f;
}
.footer {
  margin: 8px;
  background: var(--dark);
  color: white;
  border-radius: 48px 48px 0 0;
  overflow: hidden;
}
.footer-main {
  min-height: 480px;
  padding: 70px 6vw;
  display: grid;
  grid-template-columns: 2fr repeat(3, 1fr);
  gap: 50px;
}
.footer-brand {
  font-size: 78px;
  font-weight: 650;
  letter-spacing: -6px;
  align-self: start;
}
.footer-main > div {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.footer-main .eyebrow {
  color: #b7a4a0;
  margin-bottom: 10px;
}
.footer-main a:not(.footer-brand) {
  font-size: 19px;
}
.footer-main a:hover {
  opacity: 0.65;
}
.footer-bottom {
  border-top: 1px solid #ffffff26;
  padding: 28px 6vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font: 12px Simplon;
  text-transform: uppercase;
}
.footer-bottom > div {
  display: flex;
  gap: 28px;
}
.social a {
  width: 35px;
  height: 35px;
  border: 1px solid #ffffff44;
  border-radius: 50%;
  display: grid;
  place-items: center;
  text-transform: none;
}
.mobile-menu {
  display: none;
}
@media (max-width: 760px) {
  .site-nav {
    top: 16px;
    left: 16px;
    right: 16px;
    height: 48px;
  }
  .brand {
    width: 82px;
    height: 42px;
    font-size: 25px;
  }
  .nav-links,
  .app-button {
    display: none;
  }
  .menu-button {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(62, 36, 111, 0.1);
    backdrop-filter: blur(3px);
    cursor: pointer;
  }
  .hero {
    height: 250vh;
  }
  .hero h1 {
    font-size: 32.25px;
    line-height: 1.125;
    max-width: 340px;
  }
  .hero h1 span {
    display: block;
  }
  .phone {
    width: 235px;
    border-radius: 40px;
  }
  .scroll-cue {
    font-size: 10px;
  }
  .statement {
    min-height: 635px;
    padding: 90px 25px;
  }
  .statement h2 {
    font-size: 40px;
  }
  .media-shell {
    height: calc(100vh - 16px);
    min-height: 700px;
    border-radius: 34px;
  }
  .media-copy {
    left: 28px;
    top: 35px;
    width: 80%;
  }
  .media-copy.bottom {
    bottom: 35px;
  }
  .media-copy h2 {
    font-size: 37px;
  }
  .paired {
    grid-template-columns: 1fr;
  }
  .pair-card {
    height: 760px;
    min-height: 0;
    border-radius: 34px;
  }
  .card-copy {
    left: 28px;
    bottom: 30px;
    width: 80%;
  }
  .split-section,
  .products {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .split-media,
  .product-visual {
    height: 650px;
    border-radius: 34px;
  }
  .split-copy,
  .product-copy {
    padding: 85px 28px;
    border-radius: 34px;
    min-height: 560px;
  }
  .products .product-copy {
    grid-column: 1;
    grid-row: 2;
  }
  .products .product-visual {
    grid-column: 1;
    grid-row: 1;
  }
  .tabs {
    top: 18px;
    max-width: calc(100% - 22px);
    overflow: auto;
  }
  .tabs button {
    padding: 12px 16px;
    font-size: 14px;
  }
  .reviews {
    min-height: 940px;
    padding-top: 85px;
  }
  .reviews-head {
    align-items: end;
    padding: 0 25px 50px;
  }
  .reviews-head h2 {
    font-size: 42px;
  }
  .review-controls {
    display: none;
  }
  .review-track {
    padding: 0 25px;
  }
  .review-card {
    flex-basis: 88vw;
    height: 650px;
    grid-template-columns: 1fr;
    grid-template-rows: 54% auto auto;
  }
  .review-card img,
  .review-card video {
    grid-row: 1;
    grid-column: 1;
    width: 100%;
    border-radius: 38px;
  }
  .review-card blockquote {
    padding: 28px 24px 12px;
    font-size: 27px;
  }
  .review-card > p {
    padding: 0 24px 28px;
  }
  .feature-reel {
    height: 730px;
    padding: 45px 0;
  }
  .feature-card {
    height: 640px;
  }
  .latest {
    min-height: 337px;
  }
  .editorial {
    grid-template-columns: 1fr;
  }
  .editorial-card {
    height: 680px;
    border-radius: 34px;
  }
  .news {
    height: 360px;
    border-radius: 34px;
  }
  .news-track span {
    font-size: 43px;
  }
  .faq {
    padding: 85px 18px;
    min-height: 1000px;
    border-radius: 34px;
  }
  .faq > h2 {
    font-size: 40px;
  }
  .faq-item button {
    font-size: 16px;
  }
  .download {
    min-height: 760px;
    padding: 70px 28px;
    display: block;
    border-radius: 34px;
  }
  .download h2 {
    font-size: 52px;
  }
  .footer {
    border-radius: 34px 34px 0 0;
  }
  .footer-main {
    grid-template-columns: 1fr 1fr;
    padding: 55px 28px;
  }
  .footer-brand {
    grid-column: 1/3;
  }
  .footer-bottom {
    align-items: flex-start;
    gap: 25px;
    flex-wrap: wrap;
    padding: 28px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *,
  *:before,
  *:after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  .reveal {
    opacity: 1;
    transform: none;
    filter: none;
  }
}
.world-lake {
  display: none;
}
.world-island {
  object-position: center 82%;
  mix-blend-mode: normal;
}
.world-front {
  object-position: center 100%;
}
.site-nav.is-hidden {
  transform: none;
}
.nav-links {
  transition:
    opacity 0.4s var(--ease),
    transform 0.45s var(--ease),
    background 0.25s;
}
.site-nav.is-hidden .nav-links {
  opacity: 0;
  transform: translate(-50%, -28px);
  pointer-events: none;
}
.hero {
  overflow: clip;
}
.hero {
  height: 250vh;
}
main > section {
  margin-bottom: 0;
}
main > section:not(:first-child) {
  margin-top: -8px;
}

/* Reference motion and material pass */
.metallic {
  position: relative;
  isolation: isolate;
  border: 0 !important;
  background: rgba(134, 134, 134, 0.1) !important;
  box-shadow: 0 6px 12px #0000001a;
  overflow: hidden;
  transition: background 0.2s linear !important;
}
.metallic:before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(180deg, #f8f6f2 0%, #868686 41.5%, #f8f6f2 100%);
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}
.metallic:after {
  content: none;
}
.metallic > span {
  position: relative;
  z-index: 1;
}
.metallic:hover,
.metallic:focus-visible {
  /* our lavender paper tint, not Cleo's cream #f8f6f2. Alpha and the rest of the hover
     contract (no transform, 200 ms background-only) are Cleo's and unchanged. */
  background: rgba(238, 234, 229, 0.25) !important;
  transform: none !important;
}
.site-nav.is-dark .app-button,
.light-pill.metallic {
  background: rgba(62, 36, 111, 0.1) !important;
}
.site-nav.is-dark .app-button:hover,
.site-nav.is-dark .app-button:focus-visible,
.light-pill.metallic:hover,
.light-pill.metallic:focus-visible {
  background: rgba(0, 0, 0, 0.15) !important;
}
.app-button:before,
.light-pill.metallic:before {
  background: linear-gradient(
    180deg,
    transparent 0%,
    #f8f6f2 41.5%,
    transparent 100%
  );
}
.brand {
  position: relative;
  background: rgba(62, 36, 111, 0.1);
  backdrop-filter: blur(6px);
}
.brand:before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(
    180deg,
    transparent 0%,
    #f8f6f2 41.5%,
    transparent 100%
  );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}
.app-button {
  background: rgba(62, 36, 111, 0.1) !important;
  backdrop-filter: blur(3px);
}
.hero-particles {
  position: absolute;
  z-index: 2;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  mix-blend-mode: screen;
}
.hero-world {
  z-index: 3;
}
.hero-copy {
  z-index: 4;
}
.phone {
  z-index: 5;
  transform-style: preserve-3d;
  border: 1px solid #9e8f8a;
  box-shadow:
    inset 0 0 0 5px #181719,
    0 35px 100px #0006;
}
.phone:before {
  content: "";
  position: absolute;
  z-index: 4;
  inset: -1px;
  border-radius: inherit;
  border: 2px solid transparent;
  background: linear-gradient(
      125deg,
      #fff9,
      #161719 30%,
      #ece0db 52%,
      #171719 78%,
      #fff8
    )
    border-box;
  -webkit-mask:
    linear-gradient(#000 0 0) padding-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}
.phone-glare {
  position: absolute;
  z-index: 3;
  inset: 0;
  background: linear-gradient(
    112deg,
    transparent 25%,
    #ffffff3d 42%,
    transparent 58%
  );
  mix-blend-mode: screen;
  transform: translateX(-65%);
  animation: phone-glare 6s ease-in-out infinite;
  pointer-events: none;
}
@keyframes phone-glare {
  50% {
    transform: translateX(65%);
  }
}
.scroll-cue {
  align-items: center;
  font-family: PPNeue;
  text-transform: none;
  font-size: 20px;
  letter-spacing: 0;
  gap: 8px;
}
.scroll-orb {
  width: 31px;
  height: 31px;
  border-radius: 50%;
  background: radial-gradient(
      circle at 50% 50%,
      #b8e8f6 0 1px,
      transparent 1.5px
    )
    0 0/5px 5px;
  filter: drop-shadow(0 0 9px #fff);
  animation: orb-spin 4s linear infinite;
}
@keyframes orb-spin {
  50% {
    transform: rotate(180deg) scale(0.78);
  }
  to {
    transform: rotate(360deg);
  }
}
.statement-copy {
  max-width: 660px;
  color: #bba9a5;
  font-size: 18px;
  line-height: 1.3;
}
.money h2 {
  font-size: clamp(40px, 3.5vw, 52px);
}
.money .glass-link {
  min-width: 158px;
  justify-content: center;
}
.card-copy p {
  font-size: 17px;
  line-height: 1.3;
  margin-top: 10px;
}
.card-copy h2 {
  font-size: 20px;
  line-height: 1.15;
  letter-spacing: -0.01em;
}
.chat-bubble {
  position: absolute;
  z-index: 2;
  top: 10%;
  left: 10%;
  right: 10%;
  padding: 24px;
  border-radius: 28px 28px 28px 0;
  background: #ffffffad;
  backdrop-filter: blur(15px);
  font-size: 20px;
  line-height: 1.2;
  color: #6f605d;
  opacity: 0;
  transform: translateY(28px) scale(0.96);
  transition:
    opacity 1.1s var(--ease),
    transform 1.1s var(--ease);
}
.personalized-card.motion-active .chat-bubble {
  opacity: 1;
  transform: none;
}
.split-copy .glass-link {
  align-self: flex-start;
  margin-top: 30px;
  min-width: 158px;
  justify-content: center;
}
.text-link {
  display: inline-block;
  margin-top: 28px;
  font: 13px Simplon;
  text-transform: uppercase;
}
.feature-reel {
  position: relative;
  background: radial-gradient(
    circle at 48% 12%,
    #ffc697 0,
    #f0ded1 35%,
    #e7e5e2 75%
  );
}
.feature-label {
  position: absolute;
  z-index: 3;
  top: 35px;
  left: 6vw;
}
.feature-track {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  transform: none !important;
  padding: 0 6vw;
  cursor: grab;
}
.feature-track:active {
  cursor: grabbing;
}
.feature-track::-webkit-scrollbar {
  display: none;
}
.feature-card {
  flex: 0 0 min(465px, 70vw);
  scroll-snap-align: center;
}
.feature-card h3 {
  font-size: 18px;
  line-height: 1.23;
}
.feature-card h3 em {
  font-weight: 300;
  color: #fff;
  text-decoration: underline;
}
.feature-card:first-child {
  margin-left: 10vw;
}

@media (max-width: 760px) {
  .site-nav {
    top: 20px;
  }
  .site-nav.is-hidden {
    transform: none;
  }
  .brand {
    width: 82px;
    height: 42px;
    font-size: 25px;
    border-radius: 23px 23px 23px 0;
  }
  .app-button {
    min-width: 47px;
    width: 47px;
    height: 47px;
    padding: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.16) !important;
  }
  .app-label,
  .app-arrow {
    display: none;
  }
  .dot-grid {
    display: block;
    width: 18px;
    height: 18px;
    background: radial-gradient(circle, #fff 0 1px, transparent 1.5px) 0 0/4px
      4px;
  }
  .site-nav:not(.is-dark) .dot-grid {
    background: radial-gradient(circle, var(--brown) 0 1px, transparent 1.5px) 0
      0/4px 4px;
  }
  .hero h1 {
    font-size: 32px;
    max-width: none;
    white-space: nowrap;
  }
  .hero h1 span {
    display: inline;
  }
  .hero {
    height: 250vh;
  }
  .phone {
    width: 242px;
    border-radius: 38px;
  }
  .phone-speaker {
    height: 18px;
    top: 8px;
  }
  .scroll-cue {
    bottom: 33%;
    font-size: 20px;
  }
  .money {
    min-height: 461px;
    padding: 90px 24px 45px;
    gap: 30px;
  }
  .money h2 {
    font-size: 34px;
  }
  .statement-copy {
    font-size: 16px;
  }
  .media-shell {
    min-height: 0;
    height: 605px;
    border-radius: 25px;
  }
  .media-copy {
    top: 30px;
    left: 32px;
    width: 85%;
  }
  .media-copy h2 {
    font-size: 30px;
  }
  .paired {
    height: 1202px;
    display: block;
  }
  .pair-card {
    height: 593px;
    min-height: 0;
    margin-bottom: 8px;
    border-radius: 25px;
  }
  .card-copy {
    left: 32px;
    bottom: 25px;
    width: 82%;
  }
  .card-copy h2 {
    font-size: 17px;
  }
  .card-copy p {
    font-size: 16px;
  }
  .chat-bubble {
    font-size: 18px;
  }
  .compact {
    min-height: 403px;
    padding: 80px 24px;
  }
  .compact h2 {
    font-size: 34px;
  }
  .smart {
    display: block;
    padding: 0 8px;
  }
  .smart .split-media {
    height: 430px;
  }
  .smart .split-copy {
    min-height: 278px;
    height: 278px;
    text-align: center;
    align-items: center;
    padding: 32px 30px;
    background: white;
  }
  .smart .split-copy h2 {
    font-size: 30px;
    margin: 0 0 18px;
  }
  .smart .split-copy p {
    font-size: 18px;
    color: #bba9a5;
  }
  .smart .split-copy .glass-link {
    align-self: center;
    margin-top: 25px;
  }
  .products {
    display: block;
    padding: 0 8px;
  }
  .products .product-visual {
    height: 405px;
  }
  .products .product-copy {
    min-height: 344px;
    height: 344px;
    padding: 45px 32px;
    background: white;
  }
  .product-copy h2 {
    font-size: 34px;
    margin: 13px 0 17px;
  }
  .product-copy .tab-panel > p {
    font-size: 16px;
  }
  .text-link {
    margin-top: 18px;
  }
  .reviews {
    min-height: 1008px;
    height: 1008px;
  }
  .media-shell + .feature-reel {
  }
  .feature-reel {
    height: 535px;
    padding: 95px 0 50px;
  }
  .feature-label {
    top: 38px;
    left: 32px;
  }
  .feature-track {
    height: 330px;
    padding: 0 0;
    gap: 34px;
  }
  .feature-card {
    width: 319px;
    flex-basis: 319px;
    height: 319px;
    border-radius: 22px;
  }
  .feature-card:first-child {
    margin-left: 72px;
  }
  .feature-card > div {
    left: 16px;
    right: 16px;
    bottom: 14px;
  }
  .feature-card h3 {
    font-size: 17px;
  }
  .latest {
    min-height: 246px;
    height: 246px;
    padding: 45px 24px;
  }
  .latest h2 {
    font-size: 33px;
  }
  .editorial-card {
    height: 426px;
  }
  .news {
    height: 355px;
  }
  .faq {
    min-height: 855px;
    padding: 75px 18px;
  }
  .faq > h2 {
    text-align: left;
    margin: 0 0 45px;
    font-size: 38px;
  }
  .download {
    min-height: 693px;
    height: 693px;
  }
  .download h2 {
    font-size: 43px;
  }
  .footer-main {
    min-height: 650px;
  }
}
@media (max-width: 410px) {
  .hero h1 {
    font-size: 30px;
    white-space: normal;
  }
  .scroll-cue {
    bottom: 29%;
  }
}
@media (max-width: 760px) {
  .products {
    display: flex;
    flex-direction: column;
  }
  .products .product-visual {
    order: 1;
  }
  .products .product-copy {
    order: 2;
    height: 352px;
    min-height: 352px;
  }
  .editorial-card {
    height: 430.5px;
  }
  .legal-notes {
    height: 173px;
    min-height: 173px;
    display: flex;
    align-items: center;
  }
}

/* Lower-page reference correction */
.news {
  margin: 0;
  height: 355px;
  border-radius: 0;
  background: #f8f6f2;
  color: var(--brown);
  display: block;
  padding: 55px 0 65px;
  overflow: hidden;
}
.news h2 {
  font-size: clamp(31px, 3.2vw, 48px);
  font-weight: 300;
  letter-spacing: -0.04em;
  text-align: center;
  margin: 0 0 45px;
}
.news-track {
  display: flex;
  gap: 8px;
  width: auto;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  animation: none;
  padding: 0 8vw;
  scrollbar-width: none;
  cursor: grab;
}
.news-track::-webkit-scrollbar {
  display: none;
}
.news-track:active {
  cursor: grabbing;
}
.news-card {
  flex: 0 0 912px;
  height: 141px;
  border-radius: 64px;
  background: linear-gradient(
    90deg,
    rgba(134, 134, 134, 0.1) 46.861%,
    rgba(255, 184, 131, 0.6) 100%
  );
  color: var(--brown);
  padding: 40px 72px 40px 88px;
  display: grid;
  grid-template-columns: 120px 1fr;
  align-items: center;
  gap: 88px;
  scroll-snap-align: none;
}
.news-card.peach {
  background: linear-gradient(
    90deg,
    rgba(134, 134, 134, 0.1) 46.861%,
    rgba(255, 184, 131, 0.6) 100%
  );
}
.news-card span {
  font: 12px Simplon;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 14px;
}
.news-card strong {
  font-size: 27.2px;
  line-height: 30.6px;
  font-weight: 300;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.news-card span:after {
  content: none;
}
.news-track.is-looping {
  width: max-content;
  overflow: visible;
  scroll-snap-type: none;
  animation: news-loop 36s linear infinite;
  will-change: transform;
}
.news:hover .news-track.is-looping,
.news-track.is-looping:focus-visible {
  animation-play-state: paused;
}
@keyframes news-loop {
  to {
    transform: translateX(calc(-1 * var(--news-cycle, 2760px)));
  }
}
.editorial-card:hover img {
  transform: none;
}
.qr {
  display: block;
  width: 210px;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
  background: none;
  border: 0;
  box-shadow: none;
}
.footer-main h2 {
  font-size: 38px;
  font-weight: 300;
  line-height: 1.08;
  letter-spacing: -0.04em;
  margin: 0;
}
.footer-main address {
  font-style: normal;
  line-height: 1.45;
  color: #c7b8b5;
}
.footer-main > div p {
  margin: 0 0 4px;
}
.footer-main > div a {
  color: #c7b8b5;
}
@media (max-width: 760px) {
  .site-nav {
    top: 16px;
  }
  .app-button {
    width: 48px;
    min-width: 48px;
    height: 48px;
  }
  .money + .media-shell,
  .smart + .products {
    margin-top: -9px !important;
  }
  .news {
    padding: 57px 0 60px;
  }
  .news h2 {
    font-size: 31px;
    margin-bottom: 45px;
  }
  .news-track {
    padding: 0 8px;
    gap: 8px;
    transform: none;
  }
  .news-card {
    flex-basis: 374px;
    height: 139px;
    border-radius: 48px;
    padding: 32px 48px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
  }
  .news-card strong {
    font-size: 20.928px;
    line-height: 25.1136px;
  }
  .news-card span {
    font-size: 12.8px;
    line-height: 8.8px;
    margin: 0;
  }
  .download {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: 62px 22px 40px;
    text-align: center;
  }
  .download > div:first-child {
    order: 2;
  }
  .download .qr-wrap {
    order: 1;
    width: 238px;
    margin: 0 auto 48px;
    padding: 0;
    background: transparent;
    box-shadow: none;
  }
  .download .qr {
    width: 238px;
  }
  .download .qr-wrap p {
    display: none;
  }
  .download h2 {
    font-size: 36px;
    margin: 0 0 25px;
  }
  .store-buttons {
    align-items: center;
  }
  .store-buttons a {
    width: 178px;
    padding: 18px 24px;
  }
  .footer {
    margin: 0 16px;
    background: transparent;
    color: var(--brown);
    border-radius: 0;
    overflow: visible;
  }
  .footer-main {
    min-height: 740px;
    border-radius: 34px;
    background: var(--dark);
    color: white;
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 48px;
  }
  .footer-brand {
    grid-column: auto;
    align-self: flex-start;
    font-size: 34px;
    letter-spacing: -2px;
    background: #ffffff26;
    border: 1px solid #ffffff42;
    border-radius: 22px 22px 22px 0;
    padding: 5px 10px;
    line-height: 1;
  }
  .footer-main h2 {
    font-size: 28px;
    margin: 46px 0 54px;
  }
  .footer-main > div {
    gap: 10px;
    margin-bottom: 44px;
  }
  .footer-main > div p {
    font-size: 13px;
    margin-bottom: 4px;
  }
  .footer-main a:not(.footer-brand),
  .footer-main address {
    font-size: 12px;
  }
  .footer-bottom {
    border: 0;
    background: white;
    color: var(--brown);
    padding: 20px 0 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
    text-align: center;
  }
  .footer-bottom > div {
    gap: 20px;
  }
  .social a {
    border: 0;
    width: auto;
    height: auto;
    font-size: 22px;
    font-weight: 650;
  }
}

/* GrahaGuru conversion — the Cleo geometry stays authoritative; only the
   content, violet atmosphere and interaction skin change here. */
:root {
  --brown: #2e1065;
  --cream: #fff;
  --blush: #f2eefb;
  --dark: #160b2d;
  --violet: #7c3aed;
  --violet-deep: #63478f;
  --violet-soft: #b29ce0;
  --violet-tint: #f2eefb;
  --ink: #2e1065;
}
body {
  color: var(--ink);
  background: #fff;
}
.page-loader {
  position: fixed;
  z-index: 999;
  inset: 0;
  display: grid;
  place-items: center;
  background: #f5f3ff;
  transition:
    opacity 0.7s var(--ease),
    visibility 0.7s;
}
.page-loader.is-done {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.loader-mark {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 30px;
  font-weight: 600;
  letter-spacing: -0.04em;
}
.loader-mark img {
  width: 56px;
  height: 56px;
  object-fit: contain;
  animation: loader-orbit 1.8s ease-in-out infinite;
}
.loader-line {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  transform-origin: left;
  background: linear-gradient(90deg, #b29ce0, #7c3aed, #d946ef);
  animation: loader-line 1.25s var(--ease) forwards;
}
@keyframes loader-orbit {
  50% {
    transform: scale(1.045);
  }
}
@keyframes loader-line {
  from {
    transform: scaleX(0);
  }
  to {
    transform: scaleX(1);
  }
}
.gg-brand {
  width: auto !important;
  min-width: 154px;
  padding: 0 15px 0 8px;
  display: flex;
  gap: 7px;
  letter-spacing: -0.04em;
}
.site-nav .brand.gg-brand:not(:has(img)) {
  min-width: 104px;
  padding: 0 12px;
  justify-content: center;
}
.gg-brand img {
  width: 38px;
  height: 38px;
  object-fit: contain;
  filter: none !important;
}
.gg-brand span {
  font-size: 20px;
  font-weight: 650;
  background: linear-gradient(90deg, #8b5cf6, #7c3aed, #6d28d9);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.site-nav.is-dark .gg-brand span {
  background: none;
  color: #fff;
}
.site-nav.is-dark .gg-brand img,
.footer-brand.gg-brand img {
  filter: brightness(0) invert(1) !important;
}
.companion-glyph,
.companion-panel-glyph {
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #2e1065;
  color: #fff;
  font-weight: 700;
}
.companion-glyph {
  width: 44px;
  height: 44px;
  font-size: 18px;
}
.companion-panel-glyph {
  width: 74px;
  height: 74px;
  margin: 0 auto 18px;
  font-size: 28px;
}
.footer-brand.gg-brand {
  width: auto !important;
}
.footer-brand.gg-brand span {
  background: none;
  color: #fff;
}
.nav-links {
  width: 500px;
}
.nav-links a,
.nav-links button {
  border: 0;
  background: transparent;
  cursor: pointer;
  height: 48px;
  flex: 1;
  display: grid;
  place-items: center;
  border-radius: 30px;
  font-size: 14px;
  transition:
    background 0.25s,
    color 0.25s;
}
.nav-links a:hover,
.nav-links button:hover,
.nav-links a:focus-visible,
.nav-links button:focus-visible {
  background: rgba(255, 255, 255, 0.25);
}
.nav-panel {
  position: absolute;
  z-index: 2;
  top: 74px;
  left: 50%;
  width: 540px;
  padding: 14px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  transform: translate(-50%, -12px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  border: 1px solid rgba(124, 58, 237, 0.15);
  border-radius: 28px 28px 28px 0;
  background: rgba(250, 248, 255, 0.94);
  box-shadow: 0 24px 80px rgba(46, 16, 101, 0.18);
  backdrop-filter: blur(24px);
  transition: 0.35s var(--ease);
  color: #2e1065;
}
.nav-panel.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}
.nav-panel a {
  padding: 16px;
  border-radius: 18px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.nav-panel a:hover {
  background: #ede9fe;
  transform: translateY(-2px);
}
.nav-panel strong {
  font-size: 16px;
}
.nav-panel span {
  font-size: 12px;
  color: #63478f;
}
.hero {
  background: #151126;
}
.hero-clouds {
  filter: hue-rotate(40deg) saturate(0.72) brightness(0.62) blur(1px);
}
.hero-world {
  background: #b6acd6;
}
.hero-world:after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 5;
  pointer-events: none;
  background: linear-gradient(
    180deg,
    rgba(124, 58, 237, 0.08),
    transparent 50%,
    rgba(46, 16, 101, 0.12)
  );
  mix-blend-mode: color;
}
.world-sky {
  filter: hue-rotate(42deg) saturate(0.75);
}
.world-lake,
.world-back,
.world-island,
.world-front {
  will-change: transform;
  transition: filter 0.6s;
  filter: hue-rotate(22deg) saturate(0.82);
}
.scroll-cue {
  align-items: center;
  gap: 14px;
  font:
    30px/1 PPNeue,
    Arial,
    sans-serif;
  text-transform: none;
  letter-spacing: -0.035em;
}
.scroll-orb {
  width: 54px;
  height: 54px;
  display: block;
  border-radius: 50%;
  background: radial-gradient(circle, #d8caff 0 2px, transparent 2.7px) 0 0/9px
    9px;
  animation: orb-pulse 1.8s ease-in-out infinite;
  filter: drop-shadow(0 0 8px rgba(178, 156, 224, 0.45));
}
@keyframes orb-pulse {
  50% {
    transform: rotate(18deg) scale(0.88);
    filter: drop-shadow(0 0 15px rgba(216, 202, 255, 0.8));
  }
}
.vedika-demo {
  position: absolute;
  inset: 0;
  z-index: 1;
  padding: 44px 16px 15px;
  display: flex;
  flex-direction: column;
  background: linear-gradient(180deg, #f2eefb, #fff 38%, #f5f3ff);
  color: #2e1065;
  opacity: 0;
  transform: scale(0.98);
  transition:
    opacity 0.7s var(--ease),
    transform 0.7s var(--ease);
}
.phone.demo-visible .vedika-demo {
  opacity: 1;
  transform: none;
}
.phone.demo-visible .phone-nature {
  opacity: 0;
}
.phone-nature {
  height: 100%;
  object-fit: cover;
  transition: opacity 0.7s;
}
.demo-status {
  position: absolute;
  left: 20px;
  right: 20px;
  top: 18px;
  display: flex;
  justify-content: space-between;
  font-size: 10px;
}
.demo-head {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 8px 0 14px;
  border-bottom: 1px solid #e6e6e6;
}
.demo-head img {
  width: 34px;
  height: 34px;
  object-fit: contain;
}
.demo-head div {
  display: flex;
  flex-direction: column;
}
.demo-head strong {
  font-size: 15px;
}
.demo-head small {
  font-size: 7px;
  color: #767676;
}
.demo-chat {
  flex: 1;
  padding-top: 22px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.demo-chat p {
  font-size: 10px;
  line-height: 1.35;
  padding: 10px 11px;
  border-radius: 13px;
}
.user-message {
  align-self: flex-end;
  max-width: 80%;
  background: #7c3aed;
  color: #fff;
  border-bottom-right-radius: 3px !important;
}
.vedika-message {
  max-width: 86%;
  background: #fff;
  box-shadow: 0 8px 25px rgba(46, 16, 101, 0.08);
  border-bottom-left-radius: 3px !important;
}
.demo-chips {
  display: flex;
  gap: 5px;
}
.demo-chips span {
  font-size: 7px;
  padding: 6px 8px;
  border: 1px solid #b29ce0;
  border-radius: 20px;
}
.demo-composer {
  height: 33px;
  padding: 0 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #e6e6e6;
  border-radius: 20px;
  background: #fff;
  color: #767676;
  font-size: 8px;
}
.demo-composer b {
  color: #7c3aed;
}
.demo-tabs {
  display: flex;
  justify-content: space-between;
  padding-top: 11px;
}
.demo-tabs span {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  font-size: 11px;
}
.demo-tabs small {
  font-size: 5px;
}
.demo-tabs .active {
  color: #7c3aed;
}
.statement.money,
.split-copy,
.product-copy,
.faq,
.download,
.legal-notes {
  background-color: #fff;
}
.statement.money:before,
.download:before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(
      circle at 70% 42%,
      rgba(178, 156, 224, 0.28),
      transparent 35%
    ),
    linear-gradient(180deg, #fff, #f5f3ff 80%, #fff);
}
.statement.money {
  position: relative;
}
.statement.money > * {
  position: relative;
  z-index: 1;
}
.review-track {
  background: linear-gradient(
    180deg,
    transparent 0%,
    rgba(242, 238, 251, 0.84) 30%,
    rgba(237, 233, 254, 0.94) 70%,
    transparent 100%
  ) !important;
}
.reviews mark {
  color: #7c3aed;
}
.review-card img {
  filter: hue-rotate(230deg) saturate(0.66);
}
.products .product-visual {
  background: radial-gradient(
    circle at 52% 42%,
    #fff 0 8%,
    #ede9fe 38%,
    #b29ce0 100%
  );
}
.product-image {
  object-fit: contain !important;
  padding: 12%;
  filter: drop-shadow(0 30px 50px rgba(46, 16, 101, 0.24));
}
.editorial-card {
  background: #f2eefb;
}
.editorial-card img {
  object-fit: contain;
  padding: 8%;
  background: radial-gradient(circle, #fff, #ede9fe);
}
.news-card.peach {
  background: #ede9fe;
}
.feature-reel {
  background: #f5f3ff;
}
.feature-reel-bg {
  filter: hue-rotate(42deg) saturate(0.7);
  opacity: 0.78;
}
.pair-card,
.media-shell,
.editorial-card,
.news-card,
.review-card,
.feature-card {
  transition:
    transform 0.65s var(--ease),
    box-shadow 0.65s var(--ease),
    filter 0.65s var(--ease);
}
.pair-card:hover,
.media-shell:hover,
.editorial-card:hover,
.news-card:hover,
.review-card:hover,
.feature-card:hover {
  box-shadow: 0 32px 80px rgba(46, 16, 101, 0.18);
  filter: saturate(1.04);
}
.editorial-card:hover,
.news-card:hover,
.review-card:hover {
  transform: translateY(-8px);
}
.faq:before {
  background: linear-gradient(
    178deg,
    rgba(178, 156, 224, 0.12),
    rgba(124, 58, 237, 0.06)
  );
}
.faq-item {
  transition:
    transform 0.35s var(--ease),
    box-shadow 0.35s var(--ease);
}
.faq-item:hover {
  transform: translateX(8px);
  box-shadow: 0 15px 45px rgba(46, 16, 101, 0.1);
}
.faq-item .plus {
  position: relative;
  color: transparent;
}
.faq-item .plus:before {
  content: "";
  position: absolute;
  inset: 8px;
  border-radius: 50%;
  background: radial-gradient(circle, #63478f 0 1px, transparent 1.5px) 0 0/4px
    4px;
  transition: transform 0.55s var(--ease);
}
.faq-item.open .plus:before {
  transform: rotate(45deg) scale(0.8);
}
.download {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, #fff, #f2eefb 75%, #f5f3ff) !important;
}
.download > * {
  position: relative;
  z-index: 1;
}
.qr-wrap {
  will-change: transform;
  transition: filter 0.4s;
}
.qr-wrap:hover {
  filter: drop-shadow(0 28px 42px rgba(46, 16, 101, 0.25));
}
.legal-notes {
  background: #f5f3ff;
}
.footer-main {
  background: #1d0d36;
}
.footer-bottom {
  color: #2e1065;
}
.companion {
  position: fixed;
  z-index: 110;
  right: 24px;
  bottom: 24px;
  height: 58px;
  padding: 6px 18px 6px 7px;
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(124, 58, 237, 0.25);
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 14px 40px rgba(46, 16, 101, 0.18);
  backdrop-filter: blur(18px);
  cursor: pointer;
}
.companion img {
  position: relative;
  width: 44px;
  height: 44px;
  object-fit: contain;
}
.companion-orbit {
  position: absolute;
  left: 5px;
  width: 48px;
  height: 48px;
  border: 1px dashed #7c3aed;
  border-radius: 50%;
  animation: companion-orbit 9s linear infinite;
}
.companion-label {
  font-size: 14px;
  font-weight: 550;
}
@keyframes companion-orbit {
  to {
    transform: rotate(360deg);
  }
}
.companion-panel {
  position: fixed;
  z-index: 109;
  right: 24px;
  bottom: 94px;
  width: 310px;
  padding: 28px;
  border: 1px solid rgba(124, 58, 237, 0.18);
  border-radius: 32px 32px 32px 0;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 30px 90px rgba(46, 16, 101, 0.22);
  backdrop-filter: blur(22px);
  opacity: 0;
  visibility: hidden;
  transform: translateY(18px) scale(0.96);
  transition: 0.4s var(--ease);
}
.companion-panel.is-open {
  opacity: 1;
  visibility: visible;
  transform: none;
}
.companion-panel > img {
  width: 72px;
  height: 72px;
  object-fit: contain;
}
.companion-panel h2 {
  margin: 12px 0 7px;
  font-size: 25px;
}
.companion-panel p {
  margin-bottom: 20px;
  color: #63478f;
}
.companion-panel .metallic {
  height: 52px;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 28px;
}
.companion-close {
  position: absolute;
  right: 18px;
  top: 14px;
  border: 0;
  background: none;
  font-size: 24px;
  cursor: pointer;
}
@media (max-width: 760px) {
  .gg-brand {
    min-width: 130px !important;
  }
  .gg-brand span {
    font-size: 17px;
  }
  .scroll-cue {
    font-size: 25px;
  }
  .scroll-orb {
    width: 46px;
    height: 46px;
  }
  .companion {
    right: 14px;
    bottom: 14px;
  }
  .companion-label {
    display: none;
  }
  .companion {
    width: 58px;
    padding: 6px;
  }
  .companion-panel {
    right: 14px;
    bottom: 82px;
    width: calc(100% - 28px);
  }
  .nav-panel {
    display: none;
  }
  .review-card img {
    filter: hue-rotate(230deg) saturate(0.66);
  }
  .feature-track {
    overscroll-behavior-x: contain;
    touch-action: pan-x pan-y;
  }
}
@media (prefers-reduced-motion: reduce) {
  .scroll-orb,
  .loader-mark img,
  .companion-orbit {
    animation: none;
  }
  .page-loader {
    transition: none;
  }
}
.brand img,
.footer-brand img {
  display: block;
  width: 100%;
  height: auto;
  color: currentColor;
}
.brand img {
  width: 66px;
}
.footer-brand img {
  width: 62px;
}
.social svg {
  display: block;
  width: 21px;
  height: 21px;
}

/* The live skew carousel uses a full-bleed film still and perspective cards. */
@media (min-width: 761px) {
  .media-shell {
    margin: 0;
    padding: 8px;
    border-radius: 0;
    background: transparent;
  }
  .media-shell > .cover-media {
    height: 100%;
    border-radius: 40px 40px 40px 0;
  }
  .media-shell:after {
    inset: 8px;
    border-radius: 40px 40px 40px 0;
  }
}
@media (min-width: 761px) and (max-width: 1199px) {
  .media-shell > .cover-media,
  .media-shell:after {
    border-radius: 32px 32px 32px 0;
  }
  .media-shell > .media-copy:not(.bottom) {
    top: 40px;
    left: 56px;
  }
}
.feature-reel {
  isolation: isolate;
  background: #f8f6f2;
}
.feature-reel-bg {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.92;
}
.feature-label {
  z-index: 3;
}
@media (min-width: 1200px) {
  .review-track {
    top: 347px;
    height: 600px;
    padding: 140px calc((100vw - 664px) / 2);
    gap: 204px;
    background: linear-gradient(
      180deg,
      transparent 0%,
      rgba(255, 227, 209, 0.8) 30%,
      rgba(255, 227, 209, 0.8) 70%,
      transparent 100%
    );
  }
  .feature-track {
    top: 233px;
    height: 515px;
    padding: 0 0 0 513.25px;
    gap: 220px;
    overflow: visible;
    transform: none !important;
  }
  .feature-card,
  .feature-card:first-child {
    flex: 0 0 413.5px;
    width: 413.5px;
    height: 413.5px;
    margin: 0;
    border-radius: 40px;
    transform: none;
  }
  .feature-card.feature-index-1 {
    transform: perspective(2000px) rotateY(30deg) scaleY(1.125);
  }
  .feature-card.feature-index-2 {
    transform: perspective(2000px) rotateY(60deg) scaleY(1.245);
  }
  .feature-card.feature-index-3 {
    transform: perspective(2000px) rotateY(30deg) scaleY(1.125);
  }
  .feature-clone {
    position: absolute;
    left: -90px;
    top: 0;
    transform: perspective(2000px) rotateY(-30deg) scaleY(1.125) !important;
  }
}
@media (min-width: 761px) and (max-width: 1199px) {
  .feature-track {
    top: 250.25px;
    height: 487px;
    padding: 0 0 0 256.25px;
    gap: 24px;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    transform: none !important;
  }
  .feature-card,
  .feature-card:first-child {
    flex: 0 0 432.5px;
    width: 432.5px;
    height: 432.5px;
    margin: 0;
    border-radius: 32px;
    transform: none;
  }
  .feature-card.feature-index-1 {
    transform: perspective(2000px) rotateY(30deg) scaleY(1.128);
  }
  .feature-card.feature-index-2 {
    transform: perspective(2000px) rotateY(60deg) scaleY(1.25);
  }
  .feature-card.feature-index-3 {
    transform: perspective(2000px) rotateY(30deg) scaleY(1.128);
  }
  .feature-clone {
    position: absolute;
    left: -304px;
    top: 0;
    width: 400px;
    transform: perspective(2000px) rotateY(-30deg) scaleY(1.128) !important;
  }
}

/* Hero timing and camera alignment from the live scroll checkpoints */
.hero-clouds {
  filter: saturate(0.8) brightness(0.76) blur(1px);
}
.world-back {
  display: block;
  z-index: 1;
  object-position: center 80%;
  transform: none;
}
.world-island {
  display: block;
  z-index: 2;
  object-position: center 76%;
  transform: none;
}
.world-front {
  display: block;
  object-position: center 88%;
  transform: none;
}
@media (max-width: 760px) {
  .hero-copy {
    padding-bottom: 60px;
  }
  .scroll-cue {
    bottom: 35%;
  }
  .brand {
    font-size: 32px;
  }
}
main > section:nth-child(2) {
  margin-top: 0;
}

/* Global navigation and material behavior from the live reference. */
.metallic:before {
  background: linear-gradient(
    110deg,
    transparent 0%,
    rgba(238, 234, 229, 0.25) 28%,
    #f8f6f2 48%,
    rgba(134, 134, 134, 0.75) 55%,
    #f8f6f2 67%,
    transparent 100%
  );
  background-size: 260% 100%;
  background-position: 100% 0;
  transition: background-position 0.7s var(--ease);
}
.metallic:hover:before,
.metallic:focus-visible:before {
  background-position: 0 0;
}
.app-button:before,
.light-pill.metallic:before {
  background: linear-gradient(
    110deg,
    transparent 0%,
    rgba(238, 234, 229, 0.18) 31%,
    #f8f6f2 49%,
    rgba(134, 134, 134, 0.55) 57%,
    #f8f6f2 68%,
    transparent 100%
  );
  background-size: 260% 100%;
  background-position: 100% 0;
}
.site-nav:not(.is-dark) {
  color: var(--brown);
}
.site-nav:not(.is-dark) .brand,
.site-nav:not(.is-dark) .app-button {
  background: rgba(62, 36, 111, 0.1) !important;
}
.hero-particles {
  display: none;
}
.statement-copy {
  max-width: 420px;
}
.reviews {
  background: linear-gradient(
    180deg,
    #fff 0%,
    #fff 27%,
    #fff1e9 57%,
    #f7d9c7 100%
  );
}
.review-controls button {
  width: 37px;
  height: 37px;
  font-size: 14px;
  background: rgba(238, 234, 229, 0.42);
  box-shadow: 0 5px 12px rgba(71, 32, 28, 0.1);
}
.feature-reel {
  background:
    radial-gradient(
      circle at 72% 0%,
      rgba(255, 184, 131, 0.76) 0,
      rgba(255, 207, 172, 0.42) 26%,
      transparent 56%
    ),
    #f8f6f2;
}
.feature-card h3 em {
  font-style: normal;
  font-weight: 300;
  color: inherit;
  text-decoration: none;
}
.editorial-card {
  transition:
    transform 0.6s var(--ease),
    box-shadow 0.6s var(--ease);
}
.editorial-card img {
  transition:
    transform 0.7s var(--ease),
    filter 0.7s var(--ease) !important;
}
.editorial-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 22px 55px rgba(71, 32, 28, 0.12);
}
.editorial-card:hover img {
  transform: scale(1.018);
  filter: brightness(1.035);
}
.download,
.legal-notes {
  background: #f3eee8;
}
@media (min-width: 761px) {
  .hero-copy {
    padding-bottom: 76px;
  }
  .hero h1 {
    font-size: 58px;
  }
  .scroll-cue {
    top: 61.5%;
    bottom: auto;
  }
}

@media (max-width: 760px) {
  .site-nav {
    top: 16px;
    height: 48px;
  }
  .brand {
    width: 82px;
    height: 42px;
    align-self: center;
    border-radius: 23px 23px 23px 0;
    font-size: 32px;
  }
  .menu-button {
    display: grid;
    position: relative;
    background: rgba(62, 36, 111, 0.1);
  }
  .menu-button:before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    padding: 1px;
    background: linear-gradient(180deg, transparent, #f8f6f2 50%, transparent);
    -webkit-mask:
      linear-gradient(#000 0 0) content-box,
      linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
  }
  .dot-grid {
    display: block;
    width: 18px;
    height: 18px;
    background: radial-gradient(circle, var(--brown) 0 1px, transparent 1.5px) 0
      0/4px 4px;
    transition:
      transform 0.45s var(--ease),
      background 0.25s;
  }
  .site-nav.is-dark .dot-grid {
    background: radial-gradient(circle, #fff 0 1px, transparent 1.5px) 0 0/4px
      4px;
  }
  .menu-button[aria-expanded="true"] .dot-grid {
    transform: rotate(45deg) scale(0.9);
  }
  .mobile-menu {
    position: fixed;
    z-index: 90;
    inset: 0;
    display: block;
    padding: 76px 8px 8px;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    background: rgba(238, 234, 229, 0.54);
    backdrop-filter: blur(24px);
    transition:
      opacity 0.45s var(--ease),
      visibility 0.45s;
  }
  .mobile-menu.is-open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }
  .mobile-menu-panel {
    height: 100%;
    border-radius: 34px;
    background: var(--dark);
    color: white;
    padding: 98px 32px 38px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transform: translateY(-22px);
    transition: transform 0.55s var(--ease);
  }
  .mobile-menu.is-open .mobile-menu-panel {
    transform: none;
  }
  .mobile-menu nav {
    display: flex;
    flex-direction: column;
  }
  .mobile-menu nav a {
    font-size: 46px;
    font-weight: 300;
    line-height: 1.13;
    letter-spacing: -0.04em;
    padding: 10px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.18);
  }
  .mobile-app-link {
    height: 56px;
    border-radius: 32px;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, 0.14) !important;
  }
  body.menu-open {
    overflow: hidden;
  }
}

/* Live-reference measured geometry pass — 2026-08-27 */
.product-dots {
  display: none;
}
.product-dots button {
  border: 0;
  padding: 0;
  cursor: pointer;
}
.product-link {
  width: 158px;
  justify-content: center;
  margin-top: 30px;
}
.legal-notes {
  background: var(--blush);
}
.legal-notes p {
  margin: 0;
}
.media-shell {
  margin-bottom: 0;
}
.feature-reel {
  margin-bottom: 8px;
}
.statement.latest {
  margin-bottom: 8px;
}
.editorial {
  margin-bottom: 9px;
}
.news {
  margin-bottom: 8px;
}
.faq {
  margin-bottom: 8px;
}
.download {
  margin-bottom: 8px;
}

@media (min-width: 761px) {
  .statement.money {
    height: 634px;
    min-height: 634px;
    padding: 220px 32px;
    gap: 34px;
  }
  .statement.money h2,
  .compact h2,
  .media-copy h2,
  .reviews-head h2,
  .latest h2,
  .news h2,
  .faq > h2,
  .download h2 {
    font-size: 40.8px;
    line-height: 44.2px;
    letter-spacing: -0.035em;
  }
  .statement-copy {
    font-size: 17px;
    line-height: 22px;
  }
  .autopilot-shell .media-copy {
    width: 400px;
  }
  .autopilot-shell .light-pill {
    width: 144px;
    justify-content: center;
  }

  .media-shell {
    height: 900px;
    min-height: 900px;
  }
  .paired {
    height: 900px;
    padding: 8px;
  }
  .pair-card {
    height: 884px;
    min-height: 884px;
  }
  .pair-card .card-copy h2 {
    font-size: 17px;
    line-height: 20.4px;
  }
  .pair-card .card-copy p {
    font-size: 17px;
    line-height: 22px;
  }

  .statement.compact {
    height: 537px;
    min-height: 537px;
    padding: 220px 32px;
  }
  .split-section,
  .products {
    height: 900px;
    min-height: 900px;
    padding: 8px;
  }
  .split-media,
  .split-copy,
  .product-visual,
  .product-copy {
    height: 884px;
    min-height: 884px;
  }
  .smart {
    grid-template-columns: 62fr 38fr;
  }
  .products {
    grid-template-columns: 38.5fr 61.5fr;
  }
  .products {
    padding: 8px 8px 8px 0;
  }
  .products .product-copy {
    border-radius: 0;
    background: #fff;
    padding: 132px;
  }
  .split-copy,
  .product-copy {
    padding: 7vw;
  }
  .split-copy h2,
  .product-copy h2 {
    font-size: 27.2px;
    line-height: 30.6px;
    letter-spacing: -0.025em;
    margin: 14px 0 24px;
  }
  .split-copy > p:last-child,
  .product-copy .tab-panel > p {
    font-size: 17px;
    line-height: 22px;
  }
  .product-copy .tab-panel > p {
    color: #bba9a5;
  }
  .product-copy > .eyebrow:before {
    content: "■";
    font-size: 8px;
    margin-right: 12px;
    vertical-align: 2px;
  }
  .tabs {
    top: 28px;
  }
  .products .tabs {
    width: 380px;
  }
  .products .tabs button {
    flex: 1;
    padding-left: 10px;
    padding-right: 10px;
  }

  .reviews {
    position: relative;
    height: 1067px;
    min-height: 1067px;
    padding: 0;
  }
  .reviews-head {
    position: absolute;
    z-index: 2;
    top: 194px;
    left: 0;
    width: 100%;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 34px;
  }
  .review-track {
    position: absolute;
    top: 488px;
    left: 0;
    width: 100%;
    padding: 0 calc((100vw - 664px) / 2);
    gap: 204px;
  }
  .review-card {
    flex-basis: 664px;
    height: 319px;
    padding: 24px;
    border-radius: 80px;
    grid-template-columns: 47% 53%;
    grid-template-rows: 1fr auto;
  }
  .review-card img,
  .review-card video {
    border-radius: 56px;
  }
  .review-card blockquote {
    padding: 30px 32px 18px;
    font-size: 20px;
    line-height: 24px;
  }
  .review-card > p {
    padding: 0 32px 43px;
    font-size: 11px;
  }

  .feature-reel {
    height: 810px;
    padding: 0;
    background:
      radial-gradient(
        circle at 72% 0%,
        rgba(255, 166, 102, 0.92) 0,
        rgba(255, 196, 151, 0.55) 29%,
        transparent 59%
      ),
      #f8f6f2;
  }
  .feature-reel:before {
    content: none;
  }
  .feature-label {
    top: 160px;
    left: 32px;
  }
  .feature-track {
    position: absolute;
    z-index: 2;
    top: 233px;
    left: 0;
    width: 100%;
    height: 414px;
    padding: 0;
    gap: 220px;
  }
  .feature-card,
  .feature-card:first-child {
    flex: 0 0 414px;
    width: 414px;
    height: 414px;
    margin: 0;
    border-radius: 38px;
  }
  .feature-card:nth-child(odd) {
    transform: rotate(-2.2deg);
  }
  .feature-card:nth-child(even) {
    transform: rotate(1.5deg);
  }
  .feature-card > div {
    left: 40px;
    right: 72px;
    bottom: 38px;
  }
  .feature-card h3 {
    font-size: 17px;
    line-height: 20.4px;
  }
  .feature-card:nth-child(2):before {
    content: "";
    position: absolute;
    z-index: 3;
    top: 40px;
    left: 40px;
    width: 20px;
    height: 20px;
    background: radial-gradient(circle, #fff 0 1px, transparent 1.5px) 0 0/4px
      4px;
  }

  .statement.latest {
    height: 337px;
    min-height: 337px;
    padding: 120px 32px;
  }
  .editorial {
    height: 750px;
    padding: 64px 8px;
    gap: 8px;
  }
  .editorial-card {
    height: 622px;
    border-radius: 48px;
    background: rgba(134, 134, 134, 0.11);
  }
  .editorial-card img {
    height: 76.45%;
    transition: opacity 0.2s linear;
  }
  .editorial-card > div {
    height: 22.4%;
    padding: 42px 38px 20px;
    text-align: center;
  }
  .editorial-card .eyebrow {
    font-family: PPNeue, Arial, sans-serif;
    text-transform: none;
    font-size: 20px;
    line-height: 24px;
    letter-spacing: 0;
  }
  .editorial-card h2 {
    max-width: none;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: 0;
    margin: 7px 0 0;
    color: #bba9a5;
  }

  .news {
    height: 434px;
    padding: 88px 0;
  }
  .news h2 {
    margin-bottom: 68px;
  }
  .news-track {
    padding: 0 32px;
  }

  .faq {
    position: relative;
    height: 1080px;
    min-height: 1080px;
    margin: 0;
    padding: 160px 8px;
    background: #fff;
    border-radius: 0;
    overflow: hidden;
  }
  .faq {
    margin-bottom: 8px;
  }
  .faq:before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 160px;
    bottom: 160px;
    left: 50%;
    width: 704px;
    transform: translateX(-50%);
    border-radius: 80px;
    background: #f5f4f2;
  }
  .faq > h2,
  .faq-list {
    position: relative;
    z-index: 1;
  }
  .faq > h2 {
    margin: 64px 0 62px;
  }
  .faq-list {
    max-width: 530px;
    gap: 8px;
  }
  .faq-item {
    width: max-content;
    max-width: 100%;
    align-self: flex-start;
    border-radius: 0;
    background: transparent;
    overflow: visible;
  }
  .faq-item.open {
    width: 100%;
  }
  .faq-item button {
    width: auto;
    min-width: 264px;
    min-height: 54px;
    padding: 7px 8px 7px 22px;
    font-size: 13px;
    background: #fff;
    border-radius: 28px;
    box-shadow: 0 8px 15px #52352f12;
  }
  .faq-item .plus {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #eee9e7;
    box-shadow:
      inset 0 0 0 1px #fff8,
      0 2px 7px #0001;
    font-size: 20px;
  }
  .faq-answer p {
    width: 530px;
    max-width: 100%;
    margin-top: 24px;
    padding: 0 24px;
    font-size: 14px;
    line-height: 19px;
    background: #dedddd;
    border-radius: 28px;
    color: #9d817b;
  }
  .faq-item.open .faq-answer p {
    padding: 22px 24px;
  }

  .download {
    position: relative;
    display: block;
    height: 653px;
    min-height: 653px;
    margin: 0;
    padding: 0;
    border-radius: 0;
  }
  .download {
    margin-bottom: 8px;
  }
  .download h2 {
    position: absolute;
    left: 276px;
    top: 92px;
    margin: 0;
  }
  .download .store-buttons {
    position: absolute;
    left: 287px;
    top: 161px;
  }
  .download .store-buttons {
    gap: 16px;
  }
  .download .store-buttons a {
    height: 60px;
    padding: 0;
    display: grid;
    place-items: center;
  }
  .download .store-buttons a:first-child {
    width: 156.5px;
  }
  .download .store-buttons a:last-child {
    width: 168.5px;
  }
  .download .qr-wrap {
    position: absolute;
    left: 798px;
    top: 20px;
    width: 273px;
    height: 273px;
    padding: 20px;
    transform: rotate(4deg);
    box-shadow: -40px 90px 90px rgba(172, 155, 152, 0.4);
  }
  .download .qr {
    width: 231px;
  }
  .download .qr-wrap p {
    display: none;
  }
  .legal-notes {
    height: 126px;
    min-height: 126px;
    padding: 29px 32px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    font-size: 11px;
    line-height: 14px;
  }

  .footer {
    margin: 0 32px;
    background: transparent;
    color: var(--brown);
    border-radius: 0;
    overflow: visible;
  }
  .footer-main {
    height: 374px;
    min-height: 374px;
    padding: 72px 48px 52px;
    border-radius: 54px;
    background: var(--dark);
    color: #fff;
    display: grid;
    grid-template-columns: 301px 263px 262px 262px 1fr;
    grid-template-rows: 130px 1fr;
    gap: 0;
  }
  .footer-brand {
    grid-column: 1;
    grid-row: 1;
    width: 84px;
    height: 43px;
    padding: 0;
    display: grid;
    place-items: center;
    align-self: start;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 23px 23px 23px 0;
    background: rgba(255, 255, 255, 0.18);
    font-size: 34px;
    line-height: 1;
    letter-spacing: -2px;
  }
  .footer-main h2 {
    grid-column: 2/6;
    grid-row: 1;
    font-size: 27px;
    line-height: 32px;
    letter-spacing: -0.025em;
  }
  .footer-main > div {
    grid-row: 2;
    gap: 8px;
    margin: 0;
  }
  .footer-main > div:nth-of-type(1) {
    grid-column: 2;
  }
  .footer-main > div:nth-of-type(2) {
    grid-column: 3;
  }
  .footer-main > div:nth-of-type(3) {
    grid-column: 4;
  }
  .footer-main > div:nth-of-type(4) {
    grid-column: 5;
  }
  .footer-main > div p,
  .footer-main a:not(.footer-brand),
  .footer-main address {
    font-size: 12px;
    line-height: 15px;
    color: #c7b8b5;
  }
  .footer-main > div p {
    color: #fff;
    margin-bottom: 8px;
  }
  .footer-bottom {
    height: 103px;
    border: 0;
    background: #fff;
    color: var(--brown);
    padding: 34px 72px 24px;
    display: flex;
    align-items: center;
    font-family: PPNeue, Arial, sans-serif;
    font-size: 12px;
    text-transform: none;
  }
  .footer-bottom > div {
    gap: 25px;
  }
  .social a {
    width: auto;
    height: auto;
    border: 0;
    border-radius: 0;
    font-size: 22px;
    font-weight: 650;
  }
}

@media (max-width: 760px) {
  .statement.money {
    margin-bottom: -1px;
  }
  .statement.money {
    height: 461px;
    min-height: 461px;
    padding: 140px 16px;
    gap: 30px;
  }
  .statement.money h2,
  .compact h2,
  .reviews-head h2,
  .latest h2,
  .news h2,
  .faq > h2,
  .download h2 {
    font-size: 33.4848px;
    line-height: 37.6704px;
    letter-spacing: -0.035em;
  }
  .statement-copy {
    font-size: 16px;
    line-height: 20px;
  }

  .media-shell {
    height: 605px;
    min-height: 605px;
    margin-left: 8px;
    margin-right: 8px;
  }
  .media-copy h2 {
    font-size: 29.2992px;
    line-height: 33.4849px;
  }
  .paired {
    height: 1202px;
    padding: 8px;
  }
  .pair-card {
    height: 589px;
    min-height: 589px;
    margin-bottom: 8px;
  }
  .pair-card .card-copy h2 {
    font-size: 16.7424px;
    line-height: 20.928px;
  }

  .statement.compact {
    height: 403px;
    min-height: 403px;
    padding: 140px 16px;
    margin-bottom: 1px;
  }
  .smart {
    height: 708px;
    min-height: 708px;
    padding: 8px;
    margin-bottom: -1px;
  }
  .smart .split-media {
    height: 409px;
    min-height: 409px;
  }
  .smart .split-copy {
    height: 283px;
    min-height: 283px;
    padding: 26px 30px;
  }
  .smart .split-copy h2 {
    font-size: 29.2992px;
    line-height: 33.4849px;
  }
  .smart .split-copy p {
    font-size: 16px;
    line-height: 20px;
  }
  .smart .split-copy .glass-link {
    margin-top: 18px;
  }

  .products {
    height: 757px;
    min-height: 757px;
    padding: 8px;
    margin-bottom: 1px;
  }
  .products .product-visual {
    height: 401px;
    min-height: 401px;
  }
  .products .product-copy {
    height: 340px;
    min-height: 340px;
    padding: 34px 28px;
    text-align: center;
    align-items: center;
  }
  .product-copy h2 {
    font-size: 29.2992px;
    line-height: 33.4849px;
    margin: 10px 0 14px;
  }
  .product-copy .tab-panel > p {
    font-size: 16px;
    line-height: 20px;
    max-width: 300px;
    color: #bba9a5;
  }
  .tabs {
    display: none;
  }
  .product-dots {
    position: absolute;
    z-index: 3;
    left: 50%;
    bottom: 18px;
    transform: translateX(-50%);
    display: flex;
    gap: 7px;
  }
  .product-dots button {
    display: block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #fff7;
  }
  .product-dots button.is-active {
    background: #fff;
  }
  .product-link {
    margin: 20px auto 0;
    height: 56px;
  }

  .reviews {
    height: 1008px;
    min-height: 1008px;
    padding: 0;
  }
  .reviews-head {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 73px 16px 55px;
    gap: 40px;
  }
  .review-controls {
    display: flex;
  }
  .review-controls button {
    width: 37px;
    height: 37px;
    font-size: 0;
    background: #fff;
    position: relative;
  }
  .review-controls button:after {
    content: "";
    position: absolute;
    inset: 11px;
    border-radius: 50%;
    background: radial-gradient(circle, var(--brown) 0 1px, transparent 1.5px) 0
      0/4px 4px;
    opacity: 0.35;
  }
  .review-track {
    padding: 0 45px;
    gap: 10px;
  }
  .review-card {
    flex-basis: 372px;
    height: 570px;
    padding: 16px;
    border-radius: 42px;
    grid-template-rows: 343px auto auto;
  }
  .review-card img,
  .review-card video {
    border-radius: 34px;
  }
  .review-card blockquote {
    padding: 20px 0 8px;
    font-size: 20px;
    line-height: 25px;
  }
  .review-card > p {
    padding: 0 20px 22px;
  }

  .feature-reel {
    height: 535px;
    padding: 0;
    background: #f8f6f2;
  }
  .feature-reel:before {
    content: "";
    position: absolute;
    inset: -30px;
    background:
      radial-gradient(
        circle at 86% 48%,
        rgba(255, 184, 131, 0.62) 0,
        rgba(255, 184, 131, 0.3) 22%,
        transparent 52%
      ),
      #f8f6f2;
    filter: blur(34px);
    opacity: 1;
    transform: scale(1.15);
  }
  .feature-label {
    top: 100px;
    left: 32px;
  }
  .feature-track {
    position: absolute;
    left: 0;
    top: 162px;
    width: 100%;
    height: 330px;
    padding: 0;
    gap: 34px;
  }
  .feature-card,
  .feature-card:first-child {
    flex: 0 0 319px;
    width: 319px;
    height: 319px;
    margin: 0;
  }
  .feature-card {
    transform: none !important;
  }
  .feature-card:nth-child(2):before {
    content: "";
    position: absolute;
    z-index: 3;
    top: 18px;
    left: 18px;
    width: 20px;
    height: 20px;
    background: radial-gradient(circle, #fff 0 1px, transparent 1.5px) 0 0/4px
      4px;
  }

  .statement.latest {
    height: 246px;
    min-height: 246px;
    padding: 80px 16px;
    margin-bottom: 7px;
  }
  .editorial {
    height: 869px;
    padding: 36px 8px;
    gap: 8px;
  }
  .editorial-card {
    height: 394.5px;
    border-radius: 34px;
  }
  .editorial-card img {
    height: 75%;
  }
  .editorial-card {
    background: rgba(134, 134, 134, 0.11);
  }
  .editorial-card > div {
    height: 25%;
    padding: 26px 22px 14px;
    text-align: center;
  }
  .editorial-card .eyebrow {
    font-family: PPNeue, Arial, sans-serif;
    text-transform: none;
    font-size: 20px;
    line-height: 24px;
    letter-spacing: 0;
  }
  .editorial-card h2 {
    font-size: 16px;
    line-height: 20px;
    margin: 7px 0 0;
    color: #bba9a5;
  }

  .news {
    height: 355px;
    padding: 64px 0;
  }
  .news h2 {
    margin-bottom: 45px;
  }

  .faq {
    position: relative;
    height: 855px;
    min-height: 855px;
    margin: 0 0 8px;
    padding: 140px 32px 64px;
    background: #fff;
    border-radius: 0;
    overflow: hidden;
  }
  .faq:before {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 8px;
    border-radius: 48px;
    background: #f5f4f2;
  }
  .faq > h2,
  .faq-list {
    position: relative;
    z-index: 1;
  }
  .faq > h2 {
    text-align: center;
    margin: 0 0 38px;
  }
  .faq-list {
    max-width: 398px;
    gap: 8px;
  }
  .faq-item {
    width: max-content;
    max-width: 100%;
    align-self: flex-start;
    border-radius: 0;
    background: transparent;
    overflow: visible;
  }
  .faq-item.open {
    width: 100%;
  }
  .faq-item button {
    width: auto;
    min-height: 44px;
    padding: 2px 6px 2px 18px;
    font-size: 16px;
    background: #fff;
    border-radius: 24px;
    box-shadow: 0 8px 15px #52352f12;
  }
  .faq-item .plus {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #eee9e7;
    box-shadow:
      inset 0 0 0 1px #fff8,
      0 2px 7px #0001;
    font-size: 20px;
    flex: 0 0 auto;
  }
  .faq-answer p {
    width: 398px;
    max-width: 100%;
    margin-top: 0;
    padding: 0 16px;
    font-size: 16px;
    line-height: 21px;
    background: #dedddd;
    border-radius: 20px;
    color: #9d817b;
  }
  .faq-item.open .faq-answer p {
    margin-top: 22px;
    padding: 14px 16px;
  }

  .download {
    height: 693px;
    min-height: 693px;
    margin: 0 0 8px;
    padding: 71px 22px 40px;
    border-radius: 0;
  }
  .download h2 {
    margin: 0 0 25px;
  }
  .download .qr-wrap {
    width: 230px;
    margin-bottom: 74px;
    transform: rotate(4deg);
    box-shadow: -28px 62px 70px rgba(172, 155, 152, 0.32);
  }
  .download .qr {
    width: 230px;
  }
  .download .store-buttons {
    gap: 16px;
  }
  .download .store-buttons a {
    height: 60px;
  }
  .download .store-buttons a:first-child {
    width: 170px;
  }
  .download .store-buttons a:last-child {
    width: 185px;
  }
  .legal-notes {
    height: 173px;
    min-height: 173px;
    padding: 24px 16px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 7px;
    font-size: 10px;
    line-height: 13px;
  }
}

/* User-selected Uiverse material treatment, adapted to the existing link labels. */
.metallic {
  --primary: #ff5569;
  --neutral-1: #f7f8f7;
  --neutral-2: #e7e7e7;
  --radius: 32px;
  overflow: visible !important;
  color: #3e246f !important;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.16);
  box-shadow:
    0 0.5px 0.5px 1px rgba(255, 255, 255, 0.2),
    0 10px 20px rgba(0, 0, 0, 0.2),
    0 4px 5px rgba(0, 0, 0, 0.05) !important;
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease !important;
}
.site-nav .app-button.metallic,
.glass-link.metallic,
.light-pill.metallic,
.store-buttons .metallic,
.mobile-app-link.metallic {
  background: transparent !important;
}
.glass-link.metallic,
.light-pill.metallic {
  min-height: 56px;
}
.metallic::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border: 2.5px solid transparent;
  border-radius: inherit;
  background:
    linear-gradient(var(--neutral-1), var(--neutral-2)) padding-box,
    linear-gradient(to bottom, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.45))
      border-box;
  transition:
    transform 0.4s ease,
    box-shadow 0.4s ease;
  pointer-events: none;
}
.metallic::before {
  content: "";
  position: absolute;
  inset: 7px 6px 6px;
  z-index: 2;
  padding: 0;
  border-radius: 30px;
  background: linear-gradient(to top, var(--neutral-1), var(--neutral-2));
  filter: blur(0.5px);
  -webkit-mask: none;
  mask: none;
  pointer-events: none;
}
.metallic > .button-label {
  position: absolute;
  inset: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  /* NOT flex/grid: both blockify their children, which forced every per-letter span onto its own
     line box, so copied text and some screen readers spelled labels out ("T r y  V e d i k a").
     A zero-width strut + vertical-align gives the same centring with inline letters. */
  display: block;
  text-align: center;
  white-space: nowrap;
}
.metallic > .button-label::before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}
.metallic > .button-label > span {
  display: inline-block;
  vertical-align: middle;
  transition: color 0.2s ease;
}
.metallic:hover,
.metallic:focus-visible {
  transform: scale(1.02) !important;
  box-shadow:
    0 0 1px 2px rgba(255, 255, 255, 0.3),
    0 15px 30px rgba(0, 0, 0, 0.3),
    0 10px 3px -3px rgba(0, 0, 0, 0.04) !important;
}
.metallic:active {
  transform: scale(1) !important;
  box-shadow:
    0 0 1px 2px rgba(255, 255, 255, 0.3),
    0 10px 3px -3px rgba(0, 0, 0, 0.2) !important;
}
.metallic:hover::after,
.metallic:focus-visible::after {
  transform: scale(1.05, 1.1);
  box-shadow: inset 0 -1px 3px #fff;
}
.button-outline {
  position: absolute;
  inset: -2px -3.5px;
  z-index: 1;
  border-radius: inherit;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.4s ease;
  pointer-events: none;
}
.button-outline::before {
  content: "";
  position: absolute;
  inset: -100%;
  background: conic-gradient(
    from 180deg,
    transparent 60%,
    white 80%,
    transparent 100%
  );
  animation: button-spin 2s linear infinite;
  animation-play-state: paused;
}
.metallic:hover .button-outline,
.metallic:focus-visible .button-outline {
  opacity: 1;
}
.metallic:hover .button-outline::before,
.metallic:focus-visible .button-outline::before {
  animation-play-state: running;
}
.metallic:hover > .button-label > span,
.metallic:focus-visible > .button-label > span {
  animation: button-wave 0.5s ease forwards calc(var(--i) * 0.02s);
}
@keyframes button-spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes button-wave {
  30% {
    transform: translateY(4px);
  }
  50% {
    transform: translateY(-3px);
    color: var(--primary);
  }
  100% {
    transform: translateY(0);
  }
}

/* Reviews carousel: live-reference geometry at desktop, tablet, and mobile. */
.reviews {
  background: #fff;
}
.reviews-head > div:first-child {
  width: 100%;
}
.reviews-head h2 {
  width: calc(100% - 64px);
  margin: 0 auto;
  text-align: center;
}
.reviews-head h2 mark {
  background: transparent;
  color: inherit;
  font-style: italic;
}
.review-controls {
  position: absolute;
  top: 119px;
  left: 50%;
  transform: translateX(-50%);
  gap: 15px;
}
.review-controls button {
  width: 34px;
  height: 34px;
  font-size: 14px;
  line-height: 1;
  background: rgba(134, 134, 134, 0.1);
  box-shadow: 0 7px 18px rgba(71, 32, 28, 0.08);
  display: grid;
  place-items: center;
}
.review-card {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  grid-template-rows: 1fr auto;
  column-gap: 40px;
  padding: 24px 56px 24px 24px;
  border-radius: 88px;
}
.review-card img,
.review-card video {
  grid-column: 1;
  grid-row: 1/3;
  align-self: center;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  border-radius: 64px;
  object-fit: cover;
}
.review-card blockquote {
  grid-column: 2;
  grid-row: 1;
  align-self: stretch;
  padding: 32px 0 0;
  font-size: 20.4px;
  line-height: 23.8px;
  font-weight: 450;
  letter-spacing: -0.025em;
}
.review-card > p {
  grid-column: 2;
  grid-row: 2;
  padding: 0 0 32px;
  font:
    450 11.9px/13.6px Simplon,
    monospace;
  letter-spacing: 0.04em;
  text-transform: none;
}

@media (min-width: 761px) and (max-width: 1199px) {
  .statement.money {
    height: 482px;
    min-height: 482px;
    padding: 150px 32px;
  }
  .media-shell {
    height: 618px;
    min-height: 618px;
  }
  .paired {
    height: 618px;
  }
  .pair-card {
    height: 602px;
    min-height: 602px;
  }
  .statement.compact {
    height: 380px;
    min-height: 380px;
    padding: 128px 32px;
  }
  .split-section,
  .products {
    height: 618px;
    min-height: 618px;
  }
  .split-media,
  .split-copy,
  .product-visual,
  .product-copy {
    height: 602px;
    min-height: 602px;
  }
  .reviews {
    height: 842px;
    min-height: 842px;
  }
  .reviews-head {
    top: 128px;
    gap: 40px;
  }
  .reviews-head h2 {
    width: calc(100% - 64px);
    font-size: 41.8438px;
    line-height: 46.0281px;
  }
  .review-controls {
    top: 116px;
  }
  .review-track {
    top: 278px;
    height: 484px;
    padding: 80px calc((100vw - 627.656px) / 2);
    gap: 86.609px;
    background: linear-gradient(
      180deg,
      transparent 0%,
      rgba(255, 227, 209, 0.8) 30%,
      rgba(255, 227, 209, 0.8) 70%,
      transparent 100%
    );
  }
  .review-card {
    flex-basis: 627.656px;
    height: 323.82px;
    column-gap: 32px;
    padding: 24px 48px 24px 24px;
    border-radius: 56px;
  }
  .review-card img,
  .review-card video {
    border-radius: 32px;
  }
  .review-card blockquote {
    font-size: 20.9219px;
    line-height: 25.1063px;
  }
  .review-card > p {
    font-size: 10.4609px;
    line-height: 16.7375px;
  }
  .feature-reel {
    height: 763px;
  }
  .statement.latest {
    height: 260px;
    min-height: 260px;
    padding: 80px 32px;
  }
  .editorial {
    height: 513px;
    padding: 52px 8px;
  }
  .editorial-card {
    height: 409px;
    padding: 8px 8px 0;
    border-radius: 24px 24px 24px 0;
    background: rgba(134, 134, 134, 0.21);
  }
  .news {
    height: 419px;
    padding: 80px 0;
  }
  .news-track {
    padding: 0 24px;
  }
  .news-card {
    flex-basis: 768.88px;
    height: 148.83px;
    border-radius: 56px;
    padding: 32px 56px;
    grid-template-columns: 120px 1fr;
    gap: 16px;
  }
  .faq {
    height: 970px;
    min-height: 970px;
    padding-top: 120px;
    padding-bottom: 120px;
  }
  .faq:has(.faq-item.open) {
    height: 970px;
    min-height: 970px;
  }
  .faq:before {
    top: 120px;
    bottom: 0;
    width: calc(100% - 77px);
    border-radius: 80px 80px 0;
  }
  .faq > h2 {
    width: calc(100% - 220.74px);
    margin: 80px auto 56px;
    font-size: 58.581px;
    line-height: 41.883px;
  }
  .faq-list {
    width: calc(100% - 220.74px);
    max-width: none;
    gap: 12px;
  }
  .faq-item {
    padding: 1px;
    border-radius: 20px 24px 24px 0;
  }
  .faq-item.open {
    width: 100%;
    padding-bottom: 0;
  }
  .faq-item button {
    width: max-content;
    min-width: 0;
    min-height: 42px;
    height: 42px;
    padding: 4px 4px 4px 24px;
    gap: 12px;
    border-radius: 20px 24px 24px 0;
    font-size: 16.6667px;
    line-height: 20.8333px;
    letter-spacing: -0.13px;
  }
  .faq-item .plus {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    font-size: 18px;
  }
  .faq-answer {
    width: calc(100% + 2px);
    margin-left: -1px;
    overflow: hidden;
  }
  .faq-answer p {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0 24px;
    font-size: 16.6667px;
    line-height: 20.8333px;
    border-radius: 24px 24px 0;
    background: rgba(134, 134, 134, 0.2);
    color: #9d817b;
  }
  .faq-item.open .faq-answer {
    padding-bottom: 24px;
  }
  .faq-item.open .faq-answer p {
    margin-top: 25px;
    padding: 23px 24px;
  }
  .download {
    height: 591px;
    min-height: 591px;
    background: linear-gradient(180deg, transparent, #f3e9e3);
  }
  .download h2 {
    left: 118px;
    top: 195px;
  }
  .download .store-buttons {
    left: 121px;
    top: 263px;
    gap: 12px;
  }
  .download .store-buttons a:first-child {
    width: 170px;
  }
  .download .store-buttons a:last-child {
    width: 185px;
  }
  .download .qr-wrap {
    left: auto;
    right: 109.6px;
    top: 141px;
    width: 229.18px;
    height: 229.18px;
    padding: 0;
    background: transparent;
    box-shadow: none;
    transform: rotate(4deg);
  }
  .download .qr {
    width: 100%;
    height: 100%;
    object-fit: fill;
  }
  .legal-notes {
    height: 151px;
    min-height: 151px;
  }
  .footer {
    width: 100%;
    height: 573px;
    margin: 0;
  }
  .footer-main {
    position: relative;
    display: block;
    width: calc(100% - 64px);
    height: 488px;
    min-height: 488px;
    margin: 0 32px;
    padding: 0;
    border-radius: 48px 48px 48px 0;
  }
  .footer-brand {
    position: absolute;
    left: 56px;
    top: 56px;
    width: 85px;
    height: 43px;
  }
  .footer-main h2 {
    position: absolute;
    left: 448.5px;
    top: 56px;
    width: 320px;
    height: 43px;
  }
  .footer-main > div {
    position: absolute;
    width: 200px;
    height: auto;
    gap: 8px;
    margin: 0;
  }
  .footer-main > div:nth-of-type(1) {
    left: 56px;
    top: 179px;
  }
  .footer-main > div:nth-of-type(2) {
    left: 448.5px;
    top: 179px;
  }
  .footer-main > div:nth-of-type(3) {
    left: 56px;
    top: 320px;
  }
  .footer-main > div:nth-of-type(4) {
    left: 448.5px;
    top: 320px;
  }
  .footer-bottom {
    width: 100%;
    height: 85px;
    padding: 32px 88px;
  }
}

@media (min-width: 761px) and (max-width: 900px) {
  .faq:before {
    width: calc(100% - 25.8px);
  }
  .faq > h2,
  .faq-list {
    width: calc(100% - 169.8px);
  }
  .faq > h2 {
    font-size: 57.6333px;
    line-height: 41.2031px;
  }
  .faq-item button {
    font-size: 16.4667px;
    line-height: 20.5833px;
  }
  .faq-answer p {
    font-size: 16.4667px;
    line-height: 20.5833px;
  }
  .download h2 {
    left: 100.54px;
  }
  .download .store-buttons {
    left: 101.99px;
  }
  .download .store-buttons a:first-child {
    width: 168.81px;
  }
  .download .store-buttons a:last-child {
    width: 183.21px;
  }
  .download .qr-wrap {
    right: 107.73px;
    width: 208.55px;
    height: 208.55px;
  }
}

/* Live navigation breakpoints and geometry. */
@media (min-width: 1280px) {
  .site-nav {
    top: 32px;
    height: 57px;
  }
  .brand {
    width: 91.914px;
    height: 47px;
    border-radius: 32px 32px 32px 0;
    transform: translateY(1px);
    font-size: 32px;
  }
  .nav-links {
    width: 397.578px;
    height: 57px;
    padding: 9.5px 11px 7.5px;
    gap: 4px;
    border-radius: 28px;
  }
  .nav-links a {
    flex: 0 0 auto;
    height: 40px;
    border-radius: 20px;
    font-size: 15.6444px;
    line-height: 19.5556px;
  }
  .nav-links a:nth-child(1) {
    width: 136.516px;
  }
  .nav-links a:nth-child(2) {
    width: 116.539px;
  }
  .nav-links a:nth-child(3) {
    width: 114.523px;
  }
  .app-button {
    width: 168.344px;
    min-width: 168.344px;
    height: 56px;
    border-radius: 28px;
    font-size: 15.6444px;
    line-height: 19.5556px;
  }
}

@media (min-width: 761px) and (max-width: 1279px) {
  .site-nav {
    top: 30px;
    left: 32px;
    right: 32px;
    height: 60px;
  }
  .brand {
    width: 91.914px;
    height: 47px;
    border-radius: 32px 32px 32px 0;
    transform: translateY(1px);
    font-size: 32px;
  }
  .nav-links,
  .app-button {
    display: none;
  }
  .menu-button {
    position: relative;
    width: 60px;
    height: 60px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(62, 36, 111, 0.1);
    backdrop-filter: blur(8px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
    cursor: pointer;
    outline: none;
  }
  .menu-button:before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    padding: 1px;
    background: linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.2),
      #f8f6f2 50%,
      rgba(255, 255, 255, 0.05)
    );
    -webkit-mask:
      linear-gradient(#000 0 0) content-box,
      linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
  }
  .dot-grid {
    display: block;
    width: 22px;
    height: 22px;
    background: radial-gradient(circle, var(--brown) 0 1px, transparent 1.5px) 0
      0/4px 4px;
    transition:
      transform 0.45s var(--ease),
      background 0.25s;
  }
  .site-nav.is-dark .dot-grid {
    background: radial-gradient(circle, #fff 0 1px, transparent 1.5px) 0 0/4px
      4px;
  }
  .menu-button[aria-expanded="true"] .dot-grid {
    transform: rotate(45deg) scale(0.9);
  }
  .mobile-menu {
    position: fixed;
    z-index: 90;
    inset: 0;
    display: block;
    padding: 152px 32px 24px;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    background: rgba(43, 58, 66, 0.62);
    backdrop-filter: blur(24px);
    transition:
      opacity 0.45s var(--ease),
      visibility 0.45s;
  }
  .mobile-menu.is-open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }
  .mobile-menu-panel {
    height: 100%;
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background: transparent;
    transform: translateY(-18px);
    transition: transform 0.55s var(--ease);
  }
  .mobile-menu.is-open .mobile-menu-panel {
    transform: none;
  }
  .mobile-menu nav {
    height: 231px;
    padding: 8.5px 10px;
    gap: 16.835px;
    display: flex;
    flex-direction: column;
    border: 1px solid rgba(238, 234, 229, 0.18);
    border-radius: 40px;
    overflow: hidden;
    background: rgba(71, 32, 28, 0.1);
    box-shadow: 0 14px 35px rgba(0, 0, 0, 0.12);
  }
  .mobile-menu nav a {
    position: relative;
    flex: 0 0 60px;
    height: 60px;
    padding: 0 20px;
    display: flex;
    align-items: center;
    border: 0;
    border-radius: 30px;
    color: #fff;
    font-size: 16.4667px;
    line-height: 20.5833px;
  }
  .mobile-menu nav a:not(:last-child):before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -8.418px;
    border-bottom: 1px solid rgba(238, 234, 229, 0.12);
  }
  .mobile-menu nav a:after {
    content: "";
    position: absolute;
    right: 31px;
    width: 22px;
    height: 22px;
    background: radial-gradient(circle, #fff 0 1px, transparent 1.5px) 0 0/4px
      4px;
  }
  .mobile-menu nav a:last-child:after {
    content: "›";
    height: auto;
    background: none;
    font-size: 28px;
    line-height: 1;
  }
  .mobile-app-link {
    width: 100%;
    height: 60px;
    border-radius: 30px;
    display: grid;
    place-items: center;
    color: #fff;
    background: rgba(71, 32, 28, 0.34) !important;
  }
  body.menu-open {
    overflow: hidden;
  }
}

@media (max-width: 760px) {
  .reviews {
    background: linear-gradient(
      180deg,
      #fff 0%,
      #fff 15%,
      #fff3eb 31%,
      #f7d9c7 63%,
      #fff 100%
    );
  }
  .reviews-head h2 {
    width: 100%;
  }
  .review-controls {
    position: static;
    transform: none;
  }
  .review-card {
    column-gap: 0;
    padding: 16px;
    border-radius: 42px;
  }
  .review-card img,
  .review-card video {
    border-radius: 34px;
  }
  .review-card blockquote {
    padding: 20px 0 8px;
  }
  .review-card > p {
    padding: 0 20px 22px;
  }
}

/* Final cascade authority for the measured skew reel and desktop review track. */
@media (min-width: 1200px) {
  .review-track {
    top: 347px;
    height: 600px;
    padding: 140px calc((100vw - 664px) / 2);
    gap: 204px;
    background: linear-gradient(
      180deg,
      transparent 0%,
      rgba(255, 227, 209, 0.8) 30%,
      rgba(255, 227, 209, 0.8) 70%,
      transparent 100%
    );
  }
  .feature-track {
    top: 233px;
    height: 515px;
    padding: 0 0 0 513.25px;
    gap: 220px;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    transform: none !important;
  }
  .feature-card,
  .feature-card:first-child {
    flex: 0 0 413.5px;
    width: 413.5px;
    height: 413.5px;
    margin: 0;
    border-radius: 40px;
    transform: none !important;
  }
  .feature-card.feature-index-1,
  .feature-card.feature-index-3 {
    transform: perspective(2000px) rotateY(30deg) scaleX(1.0667) scaleY(1.125) !important;
  }
  .feature-card.feature-index-2 {
    transform: perspective(2000px) rotateY(60deg) scaleX(1.142) scaleY(1.245) !important;
  }
  .feature-clone {
    position: absolute;
    left: -120px;
    top: 0;
    transform: perspective(2000px) rotateY(-30deg) scaleX(1.0667) scaleY(1.125) !important;
  }
}
@media (min-width: 761px) and (max-width: 1199px) {
  .feature-track {
    top: 250.25px;
    height: 487px;
    padding: 0 0 0 256.25px;
    gap: 102px;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    transform: none !important;
  }
  .feature-card,
  .feature-card:first-child {
    flex: 0 0 432.5px;
    width: 432.5px;
    height: 432.5px;
    margin: 0;
    border-radius: 32px;
    transform: none !important;
  }
  .feature-card.feature-index-1 {
    left: 16px;
    transform: perspective(2000px) rotateY(30deg) scale(1.06667) !important;
  }
  .feature-card.feature-index-2 {
    left: 13px;
    transform: perspective(2000px) rotateY(60deg) scaleX(1.13333) scaleY(1.117) !important;
  }
  .feature-card.feature-index-3 {
    transform: perspective(2000px) rotateY(30deg) scale(1.06667) !important;
  }
  .feature-clone {
    position: absolute;
    left: -271.5px;
    top: 0;
    transform: perspective(2000px) rotateY(-30deg) scale(1.06667) !important;
  }
}

/* Final source-to-render parity pass. The live desktop scales between its
   1280x720 and 1440x900 layouts; it does not keep the 900px capture heights. */
@media (min-width: 1200px) and (max-width: 1439px) {
  .hero-copy {
    padding-bottom: calc(364px - 20vw);
  }
  .hero h1 {
    font-size: 4.88889vw;
    line-height: 1.0625;
    letter-spacing: 0;
  }
  .statement.money {
    height: calc(715px - 5.625vw);
    min-height: calc(715px - 5.625vw);
  }
  .media-shell {
    height: 100vh;
    min-height: 100vh;
  }
  .paired {
    height: 100vh;
  }
  .pair-card {
    height: calc(100vh - 16px);
    min-height: calc(100vh - 16px);
  }
  .statement.compact {
    height: calc(636px - 6.875vw);
    min-height: calc(636px - 6.875vw);
  }
  .split-section,
  .products {
    height: 100vh;
    min-height: 100vh;
  }
  .split-media,
  .split-copy,
  .product-visual,
  .product-copy {
    height: calc(100vh - 16px);
    min-height: calc(100vh - 16px);
  }
  .reviews {
    height: calc(995px + 5vw);
    min-height: calc(995px + 5vw);
  }
  .review-track {
    top: calc(449.6px - 7.0833vw);
    padding-left: calc((100vw - (23.875vw + 320.2px)) / 2);
    padding-right: calc((100vw - (23.875vw + 320.2px)) / 2);
    gap: calc(25vw - 155.9px);
  }
  .review-card {
    flex-basis: calc(23.875vw + 320.2px);
    height: calc(11.3125vw + 156.1px);
  }
  .feature-reel {
    height: 56.25vw;
  }
  .feature-track {
    top: calc(6.25vw + 143px);
    height: calc(28.125vw + 110.5px);
    padding-left: calc(34.375vw + 18.25px);
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
  }
  .feature-card,
  .feature-card:first-child {
    flex-basis: calc(31.5625vw - 40.5px);
    width: calc(31.5625vw - 40.5px);
    height: calc(31.5625vw - 40.5px);
  }
  .statement.latest {
    height: calc(436px - 6.875vw);
    min-height: calc(436px - 6.875vw);
  }
  .editorial {
    height: calc(300px + 31.25vw);
  }
  .editorial-card {
    height: calc(172px + 31.25vw);
  }
  .news {
    height: calc(560px - 8.75vw);
  }
  .faq {
    height: calc(1242px - 11.25vw);
    min-height: calc(1242px - 11.25vw);
  }
  .faq:before {
    width: calc(1672.4px - 67.25vw);
  }
  .faq-list {
    max-width: calc(1480.6px - 66.0156vw);
  }
  .download {
    height: calc(356px + 20.625vw);
    min-height: calc(356px + 20.625vw);
  }
  .download h2 {
    left: calc(48.75vw - 426px);
    top: calc(1220.4px - 78.36vw);
  }
  .download .store-buttons {
    left: calc(37.25vw - 249.4px);
    top: calc(1257px - 76.1vw);
  }
  .download .store-buttons a:first-child {
    width: calc(237.3px - 5.625vw);
  }
  .download .store-buttons a:last-child {
    width: calc(262.5px - 6.528vw);
  }
  .download .qr-wrap {
    left: calc(56.125vw - 10.2px);
    top: calc(1314.2px - 89.875vw);
    width: calc(24.1875vw - 75.3px);
    height: calc(24.1875vw - 75.3px);
    padding: calc(2.1875vw - 10.85px);
  }
  .download .qr {
    width: 100%;
    height: 100%;
  }
  .legal-notes {
    height: calc(171px - 3.125vw);
    min-height: calc(171px - 3.125vw);
  }
  .footer-main {
    height: calc(572.3px - 13.75vw);
    min-height: calc(572.3px - 13.75vw);
  }
  .footer-main {
    grid-template-columns:
      calc(24.375vw - 50px) calc(14.375vw + 56px) calc(13.75vw + 64px)
      calc(13.75vw + 64px) 1fr;
  }
  .footer-bottom {
    height: 101px;
  }
}

@media (min-width: 1200px) {
  .hero h1 {
    font-size: clamp(62.5778px, 4.88889vw, 70.4px);
    line-height: 1.0625;
    letter-spacing: 0;
  }
  .statement.money h2,
  .compact h2,
  .media-copy h2,
  .reviews-head h2,
  .latest h2,
  .news h2,
  .faq > h2,
  .download h2 {
    font-size: clamp(46.9333px, 3.66667vw, 52.8px);
    line-height: 1.08333;
    letter-spacing: 0;
  }
  .split-copy h2,
  .product-copy h2 {
    font-size: clamp(31.2889px, 2.44444vw, 35.2px);
    line-height: 1.125;
    letter-spacing: 0;
  }
  .media-copy {
    left: 5vw;
    width: 50.4167vw;
  }
  .autopilot-shell .media-copy {
    width: 50.4167vw;
  }
  .split-copy {
    padding: 5vw;
  }
  .products .product-copy {
    padding: 6vw;
  }
}

@media (min-width: 761px) and (max-width: 900px) {
  .statement.money h2,
  .compact h2,
  .media-copy h2,
  .reviews-head h2,
  .latest h2,
  .news h2,
  .faq > h2,
  .download h2 {
    font-size: 41.1667px;
    line-height: 45.2833px;
    letter-spacing: 0;
  }
  .paired {
    height: 586.7px;
  }
  .pair-card {
    height: 570.7px;
    min-height: 570.7px;
  }
  .reviews {
    height: 837.7px;
    min-height: 837.7px;
  }
  .feature-reel {
    height: 730.1px;
  }
  .feature-track {
    top: 170.1px;
    height: 560px;
    padding: 80px 0 80px 240px;
    gap: 112px;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
  }
  .feature-card,
  .feature-card:first-child {
    flex: 0 0 400px;
    width: 400px;
    height: 400px;
    scroll-snap-align: center;
  }
  .feature-clone {
    left: -242.5px;
  }
  .statement.latest {
    height: 258.7px;
    min-height: 258.7px;
    padding: 80px 32px;
  }
  .editorial {
    height: 489.7px;
    padding: 52px 8px;
  }
  .editorial-card {
    height: 385.7px;
  }
  .news {
    height: 417.2px;
  }
  .news-card {
    flex-basis: 712px;
  }
  .faq {
    height: 967.9px;
    min-height: 967.9px;
  }
  .faq:has(.faq-item.open) {
    height: 967.9px;
    min-height: 967.9px;
  }
  .download {
    height: 570.55px;
    min-height: 570.55px;
  }
  .download h2 {
    top: 184.55px;
  }
  .download .store-buttons {
    top: 245.98px;
  }
  .legal-notes {
    height: 166.14px;
    min-height: 166.14px;
    padding: 24px 92.9px;
    font-size: 14.4083px;
    line-height: 16.4667px;
    font-weight: 300;
  }
  .legal-notes p {
    max-width: 553px;
  }
  .footer {
    height: 580.7px;
  }
  .footer-main {
    height: 495.7px;
    min-height: 495.7px;
  }
  .footer-main h2,
  .footer-main > div:nth-of-type(2),
  .footer-main > div:nth-of-type(4) {
    left: 416px;
  }
}

@media (max-width: 760px) {
  .reviews {
    position: relative;
    height: 1008px;
    min-height: 1008px;
    background: #fff;
  }
  .reviews-head {
    position: absolute;
    z-index: 2;
    top: 96px;
    left: 16px;
    width: calc(100% - 32px);
    padding: 0;
    gap: 48px;
  }
  .reviews-head h2 {
    font-size: 27.2px;
    line-height: 30.8px;
  }
  .review-track {
    position: absolute;
    top: 237.6px;
    left: 0;
    width: 100%;
    height: 690.44px;
    padding: 60px 43.875px;
    gap: 10px;
    background: linear-gradient(
      180deg,
      transparent 0%,
      rgba(255, 227, 209, 0.82) 18%,
      rgba(247, 217, 199, 0.96) 63%,
      transparent 100%
    );
    overflow-x: auto;
    overflow-y: hidden;
  }
  .review-card {
    flex: 0 0 374.25px;
    width: 374.25px;
    height: 570.44px;
    padding: 16px 16px 48px;
    border-radius: 48px;
    grid-template-columns: 1fr;
    grid-template-rows: 342.25px auto auto;
  }
  .review-card img,
  .review-card video {
    width: 342.25px;
    height: 342.25px;
    aspect-ratio: 1;
    border-radius: 34px;
  }
  .feature-clone {
    display: none !important;
  }
  .feature-track {
    padding-left: 71.75px;
    gap: 34px;
  }
  .feature-card,
  .feature-card:first-child {
    flex-basis: 318.5px;
    width: 318.5px;
    height: 318.5px;
  }
  .faq {
    height: 855.28px;
    min-height: 855.28px;
    padding: 144px 32px 64px;
  }
  .faq:before {
    inset: 80px 8px 64px;
    border-radius: 48px 48px 0;
    background: linear-gradient(
      178deg,
      rgba(134, 134, 134, 0.086),
      rgba(71, 32, 28, 0.055)
    );
  }
  .download {
    height: 693.32px;
    min-height: 693.32px;
    background: linear-gradient(180deg, transparent, #f3e9e3);
    padding-top: 71px;
  }
  .download .qr-wrap {
    width: 224px;
    margin-bottom: 74px;
  }
  .download .qr {
    width: 224px;
  }
  .download .store-buttons {
    flex-direction: column;
    gap: 16px;
  }
  .download .store-buttons a:first-child {
    width: 170px;
  }
  .download .store-buttons a:last-child {
    width: 185px;
  }
  .legal-notes {
    height: 172.65px;
    min-height: 172.65px;
    padding: 24px 16px;
    font-size: 12.5568px;
    line-height: 16.7424px;
    font-weight: 300;
    color: rgba(62, 36, 111, 0.6);
  }
  .legal-notes p {
    max-width: 375px;
  }
  .footer {
    height: 842.15px;
  }
  .footer-main {
    height: 740.17px;
    min-height: 740.17px;
    border-radius: 32px 32px 32px 0;
    overflow: hidden;
  }
  .footer-bottom {
    height: 101.98px;
    padding-top: 20px;
    padding-bottom: 24px;
  }
}

/* Inner-component parity after the section-shell pass. */
.site-nav.is-dark .brand img,
.footer-brand img {
  filter: invert(1);
}
@media (min-width: 761px) {
  .footer-main > div p,
  .footer-main a:not(.footer-brand),
  .footer-main address {
    font-size: 14.4083px;
    line-height: 16.4667px;
    font-weight: 300;
    color: #fff;
  }
  .footer-bottom {
    font-size: 14.4083px;
    font-weight: 300;
    text-transform: none;
  }
}
@media (min-width: 761px) and (max-width: 900px) {
  .feature-track {
    padding-left: 196px;
  }
  .feature-card.feature-index-0 {
    margin-left: 44px;
  }
  .feature-card.feature-index-1 {
    left: 0;
    transform-origin: left center;
    transform: perspective(2000px) rotateY(30deg) scaleX(1.0667) scaleY(1.123) !important;
  }
  .feature-card.feature-index-2 {
    left: 0;
    transform-origin: left center;
    transform: translateX(47.7px) perspective(2000px) rotateY(60deg)
      scaleX(1.142) scaleY(1.241) !important;
  }
  .feature-card.feature-index-3 {
    transform-origin: left center;
    transform: perspective(2000px) rotateY(30deg) scaleX(1.0667) scaleY(1.123) !important;
  }
  .feature-clone {
    left: -242.5px;
    top: 80px;
    margin: 0 !important;
  }
  .faq:before {
    bottom: 120px;
    background: linear-gradient(
      178deg,
      rgba(134, 134, 134, 0.086),
      rgba(71, 32, 28, 0.055)
    );
  }
  .legal-notes {
    padding: 29px 32px;
  }
}
@media (max-width: 760px) {
  .reviews-head h2 {
    font-size: 33.4848px;
    line-height: 37.6704px;
  }
  .review-controls {
    gap: 15px;
  }
  .review-controls button {
    width: 32px;
    height: 32px;
  }
  .review-track {
    gap: 22.75px;
  }
  .review-card {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
  .review-card img,
  .review-card video {
    flex: 0 0 342.25px;
    border-radius: 32px;
  }
  .review-card blockquote {
    width: 342.25px;
    padding: 0;
    line-height: 23.08px;
  }
  .review-card > p {
    width: 342.25px;
    padding: 0 20px;
  }
  .feature-card {
    border-radius: 16px;
    transform-origin: left center !important;
  }
  .feature-card.feature-index-1 {
    transform: scaleX(0.9252) scaleY(1.111) !important;
  }
  .feature-card.feature-index-2 {
    transform: translateX(38.83px) scaleX(0.5694) scaleY(1.2173) !important;
  }
  .feature-card.feature-index-3 {
    transform: scaleX(0.9252) scaleY(1.111) !important;
  }
  .feature-clone {
    display: block !important;
    position: absolute;
    left: -256.71px;
    top: 0.88px;
    margin: 0 !important;
    transform: scaleX(0.9252) scaleY(1.111) !important;
  }
  .download .qr-wrap {
    width: 245px;
    padding: 10px;
    margin-bottom: 74px;
    transform: translateY(-7px) rotate(4deg);
  }
  .download .qr {
    width: 225px;
  }
  .download > div:first-child {
    width: 100%;
  }
  .download h2 {
    position: relative;
    left: -6px;
    top: -0.6px;
    width: calc(100% + 12px);
    text-align: left;
  }
  .download .store-buttons {
    position: relative;
    top: -15.3px;
    align-items: center;
  }
  .download .store-buttons a {
    font-size: 16.7424px;
    line-height: 20.928px;
    font-weight: 450;
  }
  .footer-main h2 {
    font-size: 29.2992px;
    line-height: 33.4849px;
  }
  .footer-bottom {
    height: 101.98px;
    padding: 24px 0 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 18px;
    text-align: center;
    font-family: PPNeue, Arial, sans-serif;
    font-size: 12.5568px;
    font-weight: 300;
    text-transform: none;
  }
  .footer-bottom > div {
    gap: 20px;
  }
  .social {
    width: 185px;
    justify-content: center;
  }
}

/* Final GrahaGuru mobile-menu authority. Five destinations must not shrink
   the custom metallic CTA or collide with the floating companion. */
@media (max-width: 760px) {
  .mobile-menu-panel {
    padding: 72px 32px 28px;
  }
  .mobile-menu nav {
    min-height: 0;
    overflow-y: auto;
  }
  .mobile-menu nav a {
    flex: 0 0 auto;
    font-size: clamp(34px, 10vw, 44px);
  }
  .mobile-app-link {
    flex: 0 0 56px;
    height: 56px;
  }
  body.menu-open .companion,
  body.menu-open .companion-panel {
    opacity: 0;
    pointer-events: none;
  }
}

/* Final measured desktop authority. */
@media (min-width: 1200px) {
  .faq::before {
    border-radius: 88px 88px 0;
    background: linear-gradient(
      178deg,
      rgba(178, 156, 224, 0.11),
      rgba(124, 58, 237, 0.055)
    );
  }
  .faq > h2 {
    width: 529.5px;
    font-size: 29.2px;
    line-height: 1;
    transform: translateY(24px);
  }
  .download h2 {
    top: 236px;
    width: 530px;
    font-size: 29.2px;
    line-height: 1;
    white-space: nowrap;
  }
  .download .store-buttons {
    top: 297px;
  }
  .download .qr-wrap {
    left: calc(56.125vw + 7.8px);
    top: 140px;
    width: 237px;
    height: 237px;
  }
}
.social a {
  display: grid;
  place-items: center;
}
.social a > span {
  font-size: 13px;
  line-height: 1;
}

/* Final reference authority: everything below wins over legacy experiments. */
:root{--paper:#fff;--well:#f5f3ff;--well-deep:#ede9fe;--violet:#7c3aed;--violet-soft:#b29ce0;--royal:#2e1065;--royal-bright:#4416a2;--muted-ink:#746487}
body{background:var(--paper);color:var(--royal)}
.site-nav{top:24px;left:24px;right:24px;height:56px}
.site-nav .brand.gg-brand{width:104px!important;min-width:104px;height:50px;padding:0 8px 0 6px;gap:4px;border-radius:27px 27px 27px 0;justify-content:flex-start;overflow:hidden}
.site-nav .brand.gg-brand img{width:30px!important;height:30px!important;flex:0 0 30px}
.site-nav .brand.gg-brand span{font-size:12px;line-height:1;letter-spacing:-.055em;white-space:nowrap}
.nav-links{width:380px;height:56px;padding:4px}.nav-links a,.nav-links button{height:48px;font-size:14px}.nav-panel{width:560px;grid-template-columns:1fr 1fr}
.site-nav.is-hidden{opacity:0;transform:translateY(-90px)!important;pointer-events:none}
.feature-reel{background:radial-gradient(circle at 72% 42%,rgba(178,156,224,.34),transparent 27%),radial-gradient(circle at 24% 68%,rgba(237,233,254,.88),transparent 31%),#fbfaff!important}
.feature-reel:before{background:radial-gradient(circle at 66% 48%,rgba(178,156,224,.26),transparent 34%)!important}.feature-card{box-shadow:0 34px 85px rgba(46,16,101,.13)}.feature-card img{filter:saturate(.88) contrast(.98)}
.products .product-visual{background:var(--well-deep)!important;overflow:hidden}.products .product-image{width:100%;height:100%;padding:0!important;object-fit:cover!important;object-position:center;filter:none!important}.products .tabs{background:rgba(255,255,255,.86);border:1px solid rgba(46,16,101,.08)}
.reviews{background:#f7f4ff!important}.review-card{background:#fff!important;border:1px solid rgba(46,16,101,.06)}.review-card img,.review-card video{background:#e8defd!important;filter:hue-rotate(18deg) saturate(.72)}.review-controls button{background:#fff;border:1px solid rgba(46,16,101,.08)}.review-controls button:hover{background:var(--royal);color:#fff;transform:translateY(-3px)}
.latest{background:#fff!important}.editorial{background:#fff;gap:8px;padding:0 8px 8px}.editorial-card{background:#efedf3!important;overflow:hidden}.editorial-card img{filter:saturate(.82) contrast(.98);transform:scale(1.035)}.editorial-card:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 52%,rgba(31,13,68,.62))}.editorial-card>div{z-index:2;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.25)}.editorial-card:hover img{transform:scale(1.075) translateY(-1.5%)}
.news{background:#fff!important;color:var(--royal)!important}.news-card,.news-card.peach{background:linear-gradient(90deg,#f4f1f7 45%,#d9ccf7 100%)!important;color:var(--royal)!important}
.faq{position:relative;min-height:1040px;margin:8px;padding:74px 7vw 100px;display:grid;grid-template-columns:minmax(130px,18vw) minmax(0,1fr);align-items:start;gap:24px;border-radius:48px;background:#fff!important;text-align:left;overflow:hidden}.faq:before{display:none!important}
.faq>h2{position:sticky!important;top:116px!important;width:auto!important;margin:26px 0 0!important;font-size:clamp(44px,4.3vw,67px)!important;line-height:1!important;color:var(--royal);letter-spacing:-.065em;text-align:left;transform:none!important}.faq>h2 span{display:inline-block;transform-origin:50% 75%}.faq>h2.is-dancing span{animation:faq-letter .72s var(--ease) both}.faq>h2.is-dancing span:nth-child(2){animation-delay:.05s}.faq>h2.is-dancing span:nth-child(3){animation-delay:.1s}.faq>h2.is-dancing span:nth-child(4){animation-delay:.15s}@keyframes faq-letter{0%{transform:translateY(18px) rotate(8deg);opacity:.35}65%{transform:translateY(-6px) rotate(-3deg)}100%{transform:none;opacity:1}}
.faq-list{max-width:none;width:100%;min-height:850px;padding:126px clamp(44px,9vw,160px) 150px;margin:0;gap:38px;border-radius:44px 44px 160px 44px;background:var(--well)}
.faq-item{width:min(620px,100%);border:1px solid rgba(46,16,101,.055);border-radius:40px;background:#fff;box-shadow:0 17px 38px rgba(46,16,101,.075);transition:transform .45s var(--ease),box-shadow .45s var(--ease),background .45s}.faq-item:nth-child(2){transform:translateX(5%)}.faq-item:nth-child(3){transform:translateX(-2%)}.faq-item:nth-child(4){transform:translateX(7%)}.faq-item:hover{transform:translateX(2%) translateY(-5px);box-shadow:0 25px 55px rgba(46,16,101,.13)}
.faq-item button{min-height:82px;padding:17px 18px 17px 31px;font-size:19px}.faq-item .plus{position:relative;width:56px;height:56px;flex:0 0 56px;display:grid;place-items:center;border-radius:50%;font-size:0;background:#f2eff5;box-shadow:inset 0 0 0 1px rgba(46,16,101,.035)}.faq-item .plus:before,.faq-item .plus:after{content:"";position:absolute;width:16px;height:2px;border-radius:2px;background:var(--royal);transition:transform .45s var(--ease)}.faq-item .plus:after{transform:rotate(90deg)}.faq-item.open .plus:before{transform:rotate(45deg)}.faq-item.open .plus:after{transform:rotate(135deg)}.faq-answer p{padding:0 31px;color:var(--muted-ink);font-size:18px}.faq-item.open{width:min(760px,100%);background:#eeebf2}.faq-item.open .faq-answer p{padding-bottom:28px}
.download{position:relative;min-height:930px!important;height:930px!important;margin:0;padding:470px 17vw 100px;border-radius:0;background:radial-gradient(circle at 66% 73%,rgba(178,156,224,.32),transparent 21%),#faf8f6!important;overflow:hidden}.download:before{display:none!important}.download>div:first-child{position:relative;z-index:2}.download h2{position:static!important;width:auto!important;font-size:clamp(48px,4.6vw,72px)!important;color:#3a1a67;margin:0 0 38px!important;white-space:normal!important}.download .store-buttons{position:static!important;gap:18px}.store-buttons a{min-width:178px;min-height:64px;display:flex;align-items:center;justify-content:center}.download .qr-wrap{position:absolute;z-index:1;left:auto!important;right:20vw;top:390px!important;width:330px!important;height:auto!important;padding:14px;border-radius:34px;background:#fff;box-shadow:0 46px 95px rgba(46,16,101,.20);transform:rotate(5deg)}.qr{width:100%!important;height:auto;aspect-ratio:1;object-fit:contain;border:0}.qr-wrap p{margin:12px 0 4px;color:var(--royal)}.legal-notes{min-height:206px;padding:62px 3vw;background:#f2ecff;color:#76658b}
.footer{margin:0 24px;background:transparent;color:#fff;border-radius:0;overflow:visible}.footer-main{min-height:500px;padding:76px 5vw 64px;grid-template-columns:1.15fr 1fr repeat(4,.72fr);gap:46px;border-radius:72px 72px 72px 0;background:radial-gradient(circle at 12% 5%,rgba(155,104,255,.42),transparent 30%),linear-gradient(135deg,#4515a1 0%,#311078 34%,#22074f 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.22)}
.footer-main .footer-brand.gg-brand{grid-column:1;width:116px!important;min-width:116px;height:52px;padding:0 9px 0 7px;gap:5px;border:1px solid rgba(255,255,255,.28);border-radius:28px 28px 28px 0;background:rgba(255,255,255,.12);align-self:start}.footer-main .footer-brand img{width:30px!important;height:30px!important}.footer-main .footer-brand span{font-size:13px;letter-spacing:-.055em}.footer-main h2{grid-column:2/7;font-size:38px;margin:3px 0 0}.footer-main>div{padding-top:154px;gap:12px}.footer-main>div p{color:#fff;font-size:14px;margin-bottom:9px}.footer-main a:not(.footer-brand){color:rgba(255,255,255,.72);font-size:14px}.footer-main a:not(.footer-brand):hover{color:#fff;opacity:1;transform:translateX(3px)}.footer-bottom{min-height:112px;padding:32px 4vw;border:0;color:var(--royal);background:#fff;text-transform:none}.social a{border:0}
.companion{width:56px!important;min-width:56px;height:56px;padding:5px;border-radius:50%;gap:0;overflow:visible}.companion img{width:44px!important;height:44px!important;object-fit:contain;border-radius:50%}.companion-label{position:absolute;right:48px;opacity:0;transform:translateX(10px);pointer-events:none;white-space:nowrap;transition:.3s var(--ease)}.companion:hover .companion-label,.companion:focus-visible .companion-label{opacity:1;transform:none;background:#fff;padding:10px 14px;border-radius:22px;box-shadow:0 12px 35px rgba(46,16,101,.14)}.companion-panel>img{width:74px;height:74px;object-fit:contain;margin:0 auto 18px}
@media(max-width:760px){.site-nav{top:14px;left:14px;right:14px}.site-nav .brand.gg-brand{width:86px!important;min-width:86px;height:44px;padding-left:5px}.site-nav .brand.gg-brand img{width:26px!important;height:26px!important;flex-basis:26px}.site-nav .brand.gg-brand span{font-size:10.5px}.faq{display:block;min-height:920px;padding:76px 10px 10px;margin:0;border-radius:0}.faq>h2{position:relative!important;top:auto!important;margin:0 0 36px 18px!important;font-size:44px!important}.faq-list{min-height:740px;padding:62px 18px 96px;border-radius:32px 32px 84px 32px;gap:18px}.faq-item,.faq-item.open{width:100%;transform:none!important}.faq-item button{min-height:72px;padding:12px 12px 12px 22px;font-size:16px}.faq-item .plus{width:48px;height:48px;flex-basis:48px}.faq-answer p{font-size:15px;padding-left:22px;padding-right:22px}.download{height:760px!important;min-height:760px!important;padding:430px 24px 44px;text-align:center;align-items:flex-start}.download h2{font-size:38px!important}.download .qr-wrap{top:78px!important;right:50%;width:244px!important;margin:0;transform:translateX(50%) rotate(4deg)}.store-buttons{justify-content:center;flex-wrap:wrap;gap:10px}.store-buttons a{min-width:164px;min-height:56px}.legal-notes{min-height:190px;padding:48px 24px}.footer{margin:0 16px}.footer-main{min-height:720px;padding:44px 34px;display:grid;grid-template-columns:1fr 1fr;gap:30px 24px;border-radius:42px 42px 42px 0}.footer-main .footer-brand.gg-brand{grid-column:1;width:108px!important;min-width:108px}.footer-main h2{grid-column:1/3;font-size:30px;margin:0 0 18px}.footer-main>div{padding-top:0;margin:0}.footer-bottom{min-height:138px;padding:26px 8px}.companion{right:18px;bottom:18px}.faq .companion{display:none}}

/* The compact mobile footer must end with its white legal/social rail. Older
   fixed-height parity layers left an extra royal block after the content. */
@media(max-width:760px){.footer{height:auto!important;min-height:0!important}.footer-main{height:auto!important;min-height:0!important}.footer-bottom{height:auto!important}}

/* Motion and color cleanup for the reference-locked block. */
.metallic{--primary:#8b5cf6!important;color:var(--royal)!important;text-shadow:none}.button-outline:before{background:conic-gradient(from 0deg,transparent 0 26%,#c4b5fd 34%,#7c3aed 42%,#fff 50%,transparent 61% 100%)!important}.metallic:hover,.metallic:focus-visible{box-shadow:0 0 0 1px rgba(255,255,255,.8),0 15px 38px rgba(46,16,101,.24),0 0 28px rgba(124,58,237,.12)!important}
.hero-world:after{background:linear-gradient(180deg,rgba(124,58,237,.025),transparent 48%,rgba(46,16,101,.055))!important;mix-blend-mode:soft-light}.world-sky,.world-lake,.world-back,.world-island,.world-front{filter:none!important}.hero-world{background:#aabfc4!important}
.demo-chat{gap:9px}.demo-chat p{font-size:9px}.demo-second,.demo-third{opacity:calc(clamp(0, (var(--demo-progress) - .36) * 5, 1));transform:translateY(calc((1 - clamp(0, (var(--demo-progress) - .36) * 5, 1)) * 14px))}.demo-third{transition-delay:.1s}.demo-chips span{background:#fff}.demo-head img{border-radius:50%;object-fit:contain;background:#fff}
.autopilot-shell{position:relative}.availability-popups{position:absolute;z-index:3;right:5.2%;bottom:7%;display:grid;grid-template-columns:auto auto;gap:8px;align-items:center}.availability-pill,.language-preview{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:1px solid rgba(255,255,255,.42);border-radius:28px;background:rgba(255,255,255,.76);color:var(--royal);backdrop-filter:blur(18px);box-shadow:0 18px 48px rgba(33,13,72,.18);font-size:14px;transform:translateY(calc((1 - var(--section-progress,0)) * 38px));opacity:clamp(0,calc(var(--section-progress,0) * 1.7),1);transition:transform .35s var(--ease),background .3s}.language-preview{grid-column:1/3;min-height:54px}.availability-pill:hover,.language-preview:hover{background:#fff;transform:translateY(-3px)}
.news-head{display:flex;align-items:center;justify-content:center;gap:34px;margin:0 8vw 42px}.news-head h2{margin:0!important}.news-controls{display:flex;gap:10px}.news-controls button{width:52px;height:52px;border:1px solid rgba(46,16,101,.08);border-radius:50%;background:#f5f3ff;color:var(--royal);cursor:pointer;transition:.3s var(--ease)}.news-controls button:hover{background:var(--royal);color:#fff;transform:translateY(-3px)}.news-track,.news-track.is-looping{width:auto!important;overflow-x:auto!important;animation:none!important;transform:none!important;scroll-snap-type:x mandatory!important}.news-card{scroll-snap-align:center!important}.editorial-card:first-child img{object-position:center 25%}.editorial-card:nth-child(2) img{object-position:center 28%}
@media(max-width:760px){.availability-popups{right:16px;bottom:16px;grid-template-columns:auto auto}.availability-pill{min-height:42px;padding:0 16px;font-size:12px}.language-preview{min-height:44px;padding:0 16px;font-size:11px}.news-head{justify-content:space-between;margin:0 24px 36px;gap:16px}.news-controls button{width:44px;height:44px}.editorial-card:first-child img,.editorial-card:nth-child(2) img{object-position:center 20%}}

/* Final geometry repairs after the desktop/mobile comparison pass. */
.faq-item button{width:100%!important}.faq-answer p{width:100%!important;max-width:none!important;margin:0!important;background:transparent!important}.faq-item .plus{background:#f2eff5!important}.faq-item .plus:before,.faq-item .plus:after{background:var(--royal)!important;opacity:1!important}
.download{padding-left:12vw!important;padding-right:12vw!important}.download>div:first-child{width:48%;max-width:650px}.download h2{max-width:610px!important;font-size:clamp(44px,4.2vw,62px)!important}.download .qr-wrap{right:17vw!important;top:330px!important;width:300px!important}
.device-popups{position:absolute;z-index:3;left:5.2%;bottom:5.2%;display:flex;align-items:flex-end;gap:12px;transform:translateY(calc((1 - var(--section-progress,0)) * 64px));opacity:clamp(0,calc((var(--section-progress,0) - .12) * 2.4),1);transition:opacity .45s var(--ease),transform .65s var(--ease)}
.mini-device{width:176px;min-height:226px;padding:16px 14px 14px;border:1px solid rgba(255,255,255,.54);border-radius:28px 28px 24px 24px;background:rgba(250,248,255,.92);color:var(--royal);backdrop-filter:blur(20px);box-shadow:0 24px 65px rgba(33,13,72,.2);display:flex;flex-direction:column;gap:12px;transform:rotate(-3deg);transition:transform .42s var(--ease),box-shadow .42s var(--ease)}.mini-device:nth-child(2){min-height:246px;transform:rotate(3deg) translateY(-10px)}.mini-device:before{content:"";align-self:center;width:48px;height:8px;border-radius:8px;background:#20102f}.mini-device:hover{transform:rotate(0) translateY(-10px);box-shadow:0 32px 80px rgba(33,13,72,.27)}.mini-device strong{font-size:16px}.mini-device p{margin:auto 0 0;padding:12px;border-radius:17px;background:#fff;font-size:12px;line-height:1.35;color:var(--royal)}.mini-device small,.device-system{font:11px/1.2 SimplonMono,monospace;letter-spacing:.08em;text-transform:uppercase;color:#765ca4}
.device-popups .availability-popups{position:static;width:216px;display:grid;grid-template-columns:1fr;gap:7px;margin-left:5px}.device-popups .availability-pill,.device-popups .language-preview{min-height:42px;padding:0 15px;font-size:12px;transform:none;opacity:1}.device-popups .language-preview{grid-column:auto}
.lower-page .companion{opacity:0!important;pointer-events:none;transform:translateY(22px)!important}
.products{position:relative;z-index:1}.product-copy{color:var(--royal)!important}.product-copy .eyebrow,.tab-panel p{color:#735f7d!important}.product-visual{overflow:hidden}.product-image{filter:saturate(.82) contrast(1.03)!important}.tabs{z-index:4!important}.tabs button{color:var(--royal)!important;text-shadow:none!important}.tabs button.is-active{background:rgba(46,16,101,.88)!important;color:#fff!important}.tabs button:hover:not(.is-active){background:rgba(255,255,255,.72)!important}
@media(max-width:760px){.download{padding-left:24px!important;padding-right:24px!important}.download>div:first-child{width:100%}.download .qr-wrap{left:calc(50% - 122px)!important;right:auto!important;top:78px!important;width:244px!important}.device-popups{left:14px;right:14px;bottom:14px;gap:7px}.mini-device{width:112px;min-height:154px;padding:10px;border-radius:20px;gap:7px}.mini-device:nth-child(2){min-height:166px}.mini-device:before{width:34px;height:5px}.mini-device strong{font-size:11px}.mini-device p{padding:8px;font-size:8.5px}.mini-device small,.device-system{font-size:7.5px}.device-popups .availability-popups{width:auto;flex:1;margin:0;gap:5px}.device-popups .availability-pill,.device-popups .language-preview{min-height:34px;padding:0 7px;font-size:8.5px}}

/* Product art uses verified GrahaGuru assets and live-style UI, not AI screenshots. */
.product-art{position:absolute;inset:0;overflow:hidden;background:#f8f6f2}.product-art[hidden]{display:none!important}.product-art.is-active{display:block}.ambassador-art{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;filter:none!important;transform:none!important}.ambassador-phone{position:absolute;right:5%;bottom:6%;width:min(250px,34%);padding:18px;border-radius:28px;background:rgba(255,255,255,.92);color:#2c1748;box-shadow:0 24px 70px rgba(46,16,101,.18);backdrop-filter:blur(20px);transform:rotate(2deg)}.ambassador-phone span{font:12px/1 SimplonMono,monospace;letter-spacing:.12em;text-transform:uppercase}.ambassador-phone p{margin:12px 0 0;padding:11px 13px;border-radius:16px;background:#f2ecff;font-size:12px;line-height:1.35}.ambassador-phone p:last-child{background:#fff;border:1px solid #e4dbf4}
.reports-art{background:radial-gradient(circle at 70% 25%,#e7dcfa,transparent 30%),#f8f6f2}.report-cover{position:absolute;width:32%;aspect-ratio:.78;padding:18px;border-radius:26px;background:#fff;box-shadow:0 28px 70px rgba(51,25,89,.13);display:grid;place-items:center;gap:10px;color:#352153;font-size:14px}.report-cover img{position:static!important;width:72%!important;height:72%!important;object-fit:contain!important;filter:none!important;transform:none!important}.report-cover-one{left:8%;top:18%;transform:rotate(-7deg)}.report-cover-two{left:31%;top:10%;transform:rotate(2deg);z-index:2}.report-cover-three{left:53%;top:21%;transform:rotate(8deg)}.report-summary{position:absolute;right:5%;bottom:7%;width:39%;padding:22px;border-radius:26px;background:rgba(255,255,255,.93);color:#2e1065;box-shadow:0 18px 54px rgba(46,16,101,.12)}.report-summary small{display:block;margin-bottom:10px;font:11px/1.2 SimplonMono,monospace;letter-spacing:.1em;text-transform:uppercase;color:#806d95}.report-summary strong{font-size:18px;line-height:1.35}
.tools-art{display:flex!important;align-items:center;justify-content:center;gap:16px;padding:12% 7%;background:radial-gradient(circle at 50% 42%,#ded1f5,transparent 40%),#f8f6f2}.tools-art[hidden]{display:none!important}.tools-art article{flex:1;min-width:0;padding:18px 12px;border-radius:30px;background:#fff;box-shadow:0 24px 68px rgba(46,16,101,.12);text-align:center;color:#2e1065;transform:translateY(var(--tool-y,0)) rotate(var(--tool-r,0));transition:transform .45s var(--ease)}.tools-art article:nth-child(1){--tool-y:15px;--tool-r:-4deg}.tools-art article:nth-child(2){--tool-y:-16px;--tool-r:2deg}.tools-art article:nth-child(3){--tool-y:12px;--tool-r:5deg}.tools-art article:hover{transform:translateY(-10px) rotate(0)}.tools-art article img{position:static!important;width:100%!important;height:auto!important;aspect-ratio:1;object-fit:contain!important;filter:none!important;transform:none!important}.tools-art article span{font:13px/1 SimplonMono,monospace;letter-spacing:.08em;text-transform:uppercase}.tools-art>p{position:absolute;left:7%;bottom:6%;margin:0;color:#57406e;font-size:16px}

/* Match the reference review stage: warm paper, brown type, clean portrait cards. */
.reviews{background:#f3e9e3!important;color:#3e246f!important}.reviews .eyebrow,.reviews h2,.reviews mark,.review-card blockquote,.review-card>p{color:#3e246f!important}.reviews mark{opacity:.62}.review-card{background:#fff!important;border-color:rgba(71,32,28,.06)!important}.review-card img{filter:grayscale(1) contrast(1.05)!important;mix-blend-mode:multiply;background:#e8def6}.review-controls button{color:#3e246f!important;border-color:rgba(71,32,28,.08)!important}.review-controls button:hover{background:#3e246f!important;color:#fff!important}.review-track{scrollbar-width:none}.review-track::-webkit-scrollbar{display:none}

/* Reference-like clean reel stage; no yellow/green landscape wash. */
.feature-reel{background:#f8f6f2!important}.feature-reel:before{background:radial-gradient(circle at 58% 42%,rgba(194,173,231,.42),transparent 26%)!important}.feature-label{color:#3e246f!important}.feature-card{box-shadow:0 26px 70px rgba(46,16,101,.10);transition:transform .45s var(--ease),box-shadow .45s var(--ease)}

/* Founder editorial matches the reference card treatment without a color veil. */
.editorial-card{background:#efede9!important}.editorial-card img{filter:none!important;object-fit:cover!important;transform:scale(1.01)!important}.editorial-card:after{background:linear-gradient(180deg,transparent 55%,rgba(38,24,28,.70))!important}.editorial-card>div{color:#fff!important}.editorial-card:hover img{transform:scale(1.055)!important}

@media(max-width:760px){.ambassador-art{object-position:61% center!important}.ambassador-phone{right:10px;bottom:74px;width:45%;padding:10px;border-radius:20px}.ambassador-phone p{font-size:9px;padding:8px}.report-cover{width:36%;padding:10px;border-radius:18px}.report-cover-one{left:3%}.report-cover-two{left:29%}.report-cover-three{left:54%}.report-summary{right:8px;bottom:70px;width:48%;padding:13px;border-radius:18px}.report-summary strong{font-size:12px}.tools-art{gap:7px;padding:20% 4%}.tools-art article{padding:10px 6px;border-radius:20px}.tools-art article span{font-size:9px}.tools-art>p{bottom:72px;font-size:12px}.reviews-head{text-align:left!important}.reviews h2{font-size:40px!important}}

/* The reference uses warm aubergine copy on light paper; violet stays an accent. */
.statement,.smart,.products,.reviews,.latest,.news,.faq,.download,.legal-notes{color:#3e246f}.statement h2,.split-copy h2,.product-copy h2,.reviews h2,.latest h2,.news h2,.faq>h2,.download h2{color:#3e246f!important}.statement-copy,.split-copy p,.tab-panel p{color:#6e686f!important}.product-copy{color:#3e246f!important}.product-copy .eyebrow{color:#6f5b55!important}.products .tabs{top:94px!important}.tabs button{color:#3e246f!important}.tabs button.is-active{background:#3e246f!important;color:#fff!important}.metallic,.metallic>.button-label{color:#3e246f!important}.metallic:hover>.button-label,.metallic:focus-visible>.button-label{color:#3e246f!important}
@media(max-width:760px){.products .tabs{top:auto!important}.tabs button.is-active{color:#fff!important}}

/* Final visibility and editorial framing. */
.site-nav .brand.gg-brand{width:132px!important;min-width:132px!important}.site-nav .brand.gg-brand span{font-size:14px!important}.device-popups{opacity:1!important}.autopilot-shell .media-copy{top:104px!important}.editorial{gap:10px!important}.editorial-card{height:620px!important;display:block!important;padding:12px 12px 0!important;background:#efede9!important}.editorial-card:after{display:none!important}.editorial-card img{position:relative!important;inset:auto!important;width:100%!important;height:76%!important;border-radius:38px!important;object-fit:cover!important;object-position:center!important}.editorial-card>div{height:24%;padding:28px 24px 20px!important;color:#3e246f!important;text-shadow:none!important;text-align:center}.editorial-card .eyebrow{color:#3e246f!important;margin:0 0 8px!important}.editorial-card h2{color:#6e686f!important;font-size:22px!important;line-height:1.2!important;margin:0!important;max-width:none!important}
@media(max-width:760px){.site-nav .brand.gg-brand{width:102px!important;min-width:102px!important}.site-nav .brand.gg-brand span{font-size:11px!important}.autopilot-shell .media-copy{top:86px!important}.editorial-card{height:520px!important}.editorial-card img{height:72%!important;border-radius:28px!important}.editorial-card>div{height:28%;padding:22px 12px!important}.editorial-card h2{font-size:18px!important}}

/* Account entry points. Kept compact so the landing nav retains its original geometry. */
.account-actions{position:absolute;right:176px;height:46px;display:flex;align-items:center;gap:3px;padding:3px;border-radius:26px;background:rgba(107,94,91,.12);backdrop-filter:blur(16px)}
.account-login,.account-signup{height:40px;display:grid;place-items:center;padding:0 17px;border-radius:22px;font-size:13px;transition:background .25s,transform .25s}
.account-signup{background:rgba(255,255,255,.62)}
.account-login:hover,.account-signup:hover,.account-login:focus-visible,.account-signup:focus-visible{transform:translateY(-1px);background:rgba(255,255,255,.82)}
.site-nav .account-user{position:absolute;right:176px}
.site-nav .account-user-trigger{height:48px;display:flex;align-items:center;gap:8px;padding:4px 15px 4px 4px;border:1px solid rgba(71,32,28,.14);border-radius:26px;background:rgba(255,255,255,.5);backdrop-filter:blur(16px);cursor:pointer}
.site-nav .account-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#2e1065;font-weight:650}
.account-menu{position:absolute;top:58px;right:0;width:230px;padding:9px;border:1px solid rgba(71,32,28,.14);border-radius:24px 24px 24px 7px;color:#2e1065;background:rgba(238,234,229,.96);box-shadow:0 20px 48px rgba(46,16,101,.14);backdrop-filter:blur(20px)}
.account-menu a,.account-menu button{width:100%;display:flex;padding:12px;border:0;border-radius:14px;background:transparent;text-align:left;cursor:pointer}
.account-menu a:hover,.account-menu button:hover,.account-menu a:focus-visible,.account-menu button:focus-visible{background:#eeeafa}
@media(max-width:760px){.account-actions,.site-nav .account-user{display:none!important}}

/* Final natural-motion and reference-geometry pass. */
.autopilot-shell .cover-media,
.media-shell > .cover-media{object-fit:cover!important;object-position:center!important}
.device-popups{bottom:32px!important;transform:translateY(calc((1 - var(--section-progress,0)) * 42px))!important}
.mini-device,
.device-popups .availability-pill,
.device-popups .language-preview{opacity:1!important;background:rgba(255,255,255,.96)!important;color:#3e246f!important;border-color:rgba(255,255,255,.72)!important}
.mini-device p{color:#3e246f!important;background:#f8f6f2!important}
.device-system,.mini-device small{color:#806d95!important}
.faq-item .plus{transform:rotate(0deg)!important}
.faq-item.open .plus{transform:rotate(45deg)!important}
.faq-item .plus:before{width:16px!important;height:2px!important;transform:none!important}
.faq-item .plus:after{width:2px!important;height:16px!important;transform:none!important}
.editorial-card{background:#f1eeea!important}
.editorial-card img{background:transparent!important;transform:none!important}
.editorial-card:first-child img{object-position:center 43%!important}
.editorial-card:nth-child(2) img{object-position:center 42%!important}
.editorial-card:hover img{transform:scale(1.025)!important}
.ambassador-art{object-position:center!important}
@media(max-width:760px){
  .device-popups{bottom:24px!important}
  .editorial-card:first-child img{object-position:center 42%!important}
  .editorial-card:nth-child(2) img{object-position:center 40%!important}
}

/* GrahaGuru refined Shared Ga lockup. Keep the Vedika avatar separate. */
.site-nav .brand.gg-brand{width:112px!important;min-width:112px!important;height:50px!important;padding:0 9px 0 7px!important;gap:5px!important}
.site-nav .brand.gg-brand img{width:26px!important;height:26px!important;flex:0 0 26px!important;object-fit:contain!important}
.site-nav .brand.gg-brand span{font-size:12px!important;font-weight:600!important;letter-spacing:-.035em!important}
.site-nav.is-dark .brand.gg-brand img,.footer-brand.gg-brand img{filter:none!important}

/* Product truth and Vedika chat — final local composition. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.reports-art{background:radial-gradient(circle at 76% 18%,rgba(209,191,243,.9),transparent 31%),linear-gradient(145deg,#f8f6f2 0%,#eee9f8 100%)!important}
.products .product-visual:after{display:none!important}
.report-cover{place-items:start!important;align-content:center!important;gap:11px!important;padding:clamp(17px,2vw,28px)!important;color:#2f155a!important;border:1px solid rgba(81,43,141,.09)!important;background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(247,242,255,.96))!important;box-shadow:0 28px 70px rgba(51,25,89,.13),inset 0 1px 0 #fff!important;transition:transform .45s var(--ease),box-shadow .45s var(--ease)!important}
.report-cover:hover{box-shadow:0 34px 80px rgba(51,25,89,.2),inset 0 1px 0 #fff!important}
.report-cover strong{font-size:clamp(17px,1.5vw,24px);font-weight:420;letter-spacing:-.025em}
.report-cover small{max-width:19ch;color:#806f8c;font:10px/1.45 SimplonMono,monospace;text-transform:uppercase;letter-spacing:.05em}
.report-symbol{width:72px;height:72px;display:grid;place-items:center;border-radius:22px 22px 22px 6px;color:#fff;background:linear-gradient(145deg,#8157d5,#35106e);font:15px/1 SimplonMono,monospace;box-shadow:0 14px 26px rgba(53,16,110,.22),inset 0 1px 0 rgba(255,255,255,.45)}
.report-symbol-score{border-radius:50%;font-size:22px}
.report-summary a{display:inline-block;margin-top:14px;color:#35106e;font:11px/1.2 SimplonMono,monospace;text-transform:uppercase;letter-spacing:.04em;text-decoration:underline;text-underline-offset:4px}

.community-copy{width:min(660px,calc(100% - 48px))!important}
.community-copy h2 span{display:inline-block;min-width:6.2ch;color:#e9dcff;transition:opacity .26s ease,transform .26s ease}.community-copy h2 span.is-changing{opacity:0;transform:translateY(7px)}
.community-chat{width:min(620px,100%);min-height:82px;margin-top:28px;padding:10px 12px;display:grid;grid-template-columns:50px minmax(0,1fr) 34px 42px;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.58);border-radius:28px 28px 28px 8px;color:#fff;background:rgba(26,17,38,.46);box-shadow:0 24px 70px rgba(17,9,27,.24),inset 0 1px 0 rgba(255,255,255,.26);backdrop-filter:blur(18px);text-align:left;cursor:pointer;transition:transform .35s var(--ease),background .35s var(--ease),box-shadow .35s var(--ease)}
.community-chat:hover,.community-chat:focus-visible{transform:translateY(-4px);background:rgba(26,17,38,.62);box-shadow:0 30px 80px rgba(17,9,27,.34),0 0 0 4px rgba(219,202,255,.15)}
.community-chat>img{width:50px;height:50px;border-radius:50%;object-fit:contain;box-shadow:0 8px 22px rgba(22,5,49,.28)}
.community-chat>span{min-width:0;display:block}.community-chat small,.community-chat strong{display:block}.community-chat small{margin-bottom:5px;color:#decfff;font:10px/1 SimplonMono,monospace;letter-spacing:.1em;text-transform:uppercase}.community-chat strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:400}
.community-chat .voice-bars{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.13)}
.community-chat .voice-bars b{display:block;width:2px;border-radius:3px;background:#fff;animation:voice-bar .9s ease-in-out infinite}.community-chat .voice-bars b:nth-child(1){height:5px}.community-chat .voice-bars b:nth-child(2){height:10px;animation-delay:-.2s}.community-chat .voice-bars b:nth-child(3){height:14px;animation-delay:-.4s}.community-chat .voice-bars b:nth-child(4){height:9px;animation-delay:-.25s}.community-chat .voice-bars b:nth-child(5){height:5px;animation-delay:-.1s}
.community-chat>em{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;color:#30135c;background:#fff;font-style:normal;font-size:20px;transition:transform .3s var(--ease)}.community-chat:hover>em{transform:translate(2px,-2px)}

.companion{border-color:rgba(113,70,181,.26)!important;background:rgba(255,255,255,.93)!important}
.companion-glyph,.companion-panel-glyph{display:grid!important;place-items:center!important;background:#fff!important;background-image:none!important}
.companion-glyph img,.companion-panel-glyph img{width:100%;height:100%;object-fit:contain!important;border-radius:50%;filter:none!important}
.companion-panel{right:24px!important;bottom:94px!important;width:min(430px,calc(100vw - 32px))!important;padding:0!important;overflow:hidden;border:1px solid rgba(111,75,167,.24)!important;border-radius:38px 38px 38px 10px!important;background:linear-gradient(180deg,rgba(252,250,255,.98),rgba(244,239,252,.98))!important;box-shadow:0 34px 110px rgba(31,13,58,.28)!important}
.companion-close{z-index:4;right:17px!important;top:14px!important;width:36px;height:36px;display:grid;place-items:center;border-radius:50%!important;color:#341363;background:rgba(255,255,255,.78)!important;font-size:23px!important}
.companion-head{min-height:96px;display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:13px;padding:19px 58px 17px 20px;color:#fff;background:linear-gradient(115deg,#341064,#7650c4)}
.companion-panel-glyph{width:56px!important;height:56px!important;border-radius:50%;box-shadow:0 9px 24px rgba(25,5,50,.28)!important}
.companion-head>span:nth-child(2) strong,.companion-head>span:nth-child(2) small{display:block}.companion-head>span:nth-child(2) strong{font-size:20px;font-weight:500}.companion-head>span:nth-child(2) small{margin-top:3px;color:rgba(255,255,255,.76);font-size:11px}.companion-head>b{padding:8px 10px;border:1px solid rgba(255,255,255,.26);border-radius:16px;background:rgba(255,255,255,.12);font:10px/1 SimplonMono,monospace;text-transform:uppercase;white-space:nowrap}
.companion-thread{height:232px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;padding:22px 19px 12px;scrollbar-width:none}.companion-thread::-webkit-scrollbar{display:none}
.companion-thread p{max-width:84%;margin:0!important;padding:13px 15px;border-radius:19px 19px 19px 5px;color:#4e3d5e!important;background:#fff;box-shadow:0 7px 22px rgba(51,25,89,.07);font-size:13px;line-height:1.4}.companion-thread .user-message{align-self:flex-end;border-radius:19px 19px 5px 19px;color:#fff!important;background:#5d30a5}.companion-thread .system-message{color:#6d587d!important;background:#eee7f9}
.companion-prompts{display:flex;gap:7px;overflow-x:auto;padding:0 19px 13px;scrollbar-width:none}.companion-prompts::-webkit-scrollbar{display:none}.companion-prompts button{flex:none;min-height:36px;padding:0 13px;border:1px solid rgba(97,55,160,.18);border-radius:18px;color:#52288c;background:#fff;font-size:10px;cursor:pointer}.companion-prompts button:hover{color:#fff;background:#5d30a5}
.companion-composer{margin:0 14px 12px;padding:7px;display:grid;grid-template-columns:minmax(0,1fr) 38px 42px;align-items:center;gap:6px;border:1px solid rgba(97,55,160,.15);border-radius:25px;background:#fff;box-shadow:0 12px 32px rgba(51,25,89,.08)}.companion-composer input{width:100%;height:42px;padding:0 10px;border:0;outline:0;color:#32145f;background:transparent;font:13px PPNeue,Arial,sans-serif}.companion-composer button{border:0;cursor:pointer}.companion-voice{height:38px;display:grid;place-items:center;border-radius:50%;color:#6840a8;background:#f0e9fa}.companion-send{width:42px;height:42px;border-radius:50%;color:#fff;background:#4a1b87;font-size:19px}.companion-foot{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 20px;border-top:1px solid rgba(97,55,160,.09);color:#806f8c;font:9px/1 SimplonMono,monospace;text-transform:uppercase}.companion-foot a{color:#482080;text-decoration:underline;text-underline-offset:3px}

@media(max-width:760px){
  .report-cover{gap:7px!important}.report-symbol{width:48px;height:48px;border-radius:15px 15px 15px 5px;font-size:10px}.report-symbol-score{font-size:15px}.report-cover strong{font-size:13px}.report-cover small{font-size:7px}.report-summary a{font-size:8px}
  .community-copy{width:calc(100% - 32px)!important}.community-note{max-width:31ch}.community-chat{min-height:72px;margin-top:20px;grid-template-columns:42px minmax(0,1fr) 38px;padding:8px 9px;border-radius:23px 23px 23px 7px}.community-chat>img{width:42px;height:42px}.community-chat strong{font-size:12px}.community-chat .voice-bars{display:none}.community-chat>em{width:38px;height:38px}
  .companion-panel{right:16px!important;bottom:84px!important;width:calc(100vw - 32px)!important;max-height:calc(100vh - 106px)}.companion-head{min-height:84px;grid-template-columns:48px 1fr auto;padding:15px 52px 14px 15px}.companion-panel-glyph{width:48px!important;height:48px!important}.companion-thread{height:210px;padding:16px 14px 10px}.companion-prompts{padding-left:14px;padding-right:14px}.companion-composer{margin-left:10px;margin-right:10px}.companion-foot{padding:0 14px}
  
}
@media(prefers-reduced-motion:reduce){.community-chat .voice-bars b{animation:none!important}}

/* Site-native identity surfaces. */
.footer-main{background-color:#25103f!important;background-image:none!important;box-shadow:0 28px 70px rgba(21,27,34,.16)!important}
@media(prefers-contrast:more),(forced-colors:active){.footer-main{background-image:none!important}}

/* Deep-plum delivery surfaces. The legal one-color masters remain flat. */
.site-nav.is-dark .brand.gg-brand,.footer,.companion-glyph,.companion-panel-glyph{background-color:#25103f!important;background-image:none!important}
.site-nav.is-dark .brand.gg-brand{border-color:rgba(239,228,255,.42)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 12px 32px rgba(15,2,29,.18)!important}
.footer{position:relative;isolation:isolate}.footer:before{display:none!important}
.companion-glyph,.companion-panel-glyph{box-shadow:inset 0 1px 0 rgba(255,255,255,.32),0 8px 22px rgba(24,4,49,.22)}
@media(prefers-contrast:more),(forced-colors:active){.site-nav.is-dark .brand.gg-brand,.footer,.companion-glyph,.companion-panel-glyph{background-image:none!important}.footer:before{display:none!important}}

/* 2026-08-28 parity pass: motion, product truth and restrained GrahaGuru colour. */
:root{
  --gg-ink:#3e246f;
  --gg-royal:#4b238a;
  --gg-royal-deep:#25103f;
  --gg-lavender:#eee8fb;
  --gg-lavender-light:#f8f5ff;
  --gg-paper:#f8f6f2;
}
.hero{height:320vh!important;background:#151b22!important}
.hero-sticky:after{
  content:"";
  position:absolute;
  z-index:7;
  inset:0;
  pointer-events:none;
  background:#f8f6f2;
  opacity:var(--hero-wash,0)
}
.hero-world:after{
  background:linear-gradient(180deg,rgba(82,49,130,.035),transparent 54%,rgba(44,23,73,.07))!important;
  mix-blend-mode:soft-light!important
}
.phone{
  background:#f8f6fb!important;
  isolation:isolate;
  border-color:rgba(20,18,22,var(--phone-frame-opacity,.12))!important;
  box-shadow:0 40px 120px rgba(15,13,21,calc(var(--phone-frame-opacity,.12)*.55))!important;
  transform-style:flat!important
}
.phone-nature{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;opacity:1!important}
.vedika-demo{
  z-index:1;
  opacity:1!important;
  clip-path:inset(0 0 var(--demo-clip,100%) 0 round 46px 46px 0 0);
  transform:none!important;
  pointer-events:none;
  background:#f8f5ff!important;
  transition:none!important
}
.phone video.vedika-film{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain;border-radius:inherit}
.phone.demo-visible .phone-nature{opacity:1!important}
.phone-glare{opacity:calc(var(--phone-frame-opacity,.12)*.72)}
.hero-copy{padding-inline:24px!important}
.hero h1{
  width:min(100%,960px)!important;
  max-width:calc(100vw - 48px)!important;
  font-size:clamp(44px,3.77778vw,54.4px)!important;
  line-height:1.0625!important;
  letter-spacing:0!important;
  text-wrap:balance;
  white-space:normal!important
}
.scroll-cue{left:50%!important;right:auto!important;top:60.23264%!important;bottom:auto!important;width:max-content!important;gap:10px!important;padding:0!important;border:0!important;font:300 27.2px/30.6px PPNeue,Arial,sans-serif!important;background:transparent!important;color:#fff!important;overflow:visible;transform:translateX(-50%)!important;white-space:nowrap!important;cursor:pointer!important}
.scroll-cue:focus-visible{outline:2px solid #fff;outline-offset:8px;border-radius:999px}
.scroll-orb{
  --led-color-on:currentColor;
  --led-color-off:rgba(255,255,255,.2);
  position:relative;width:26.5px!important;height:26.5px!important;border-radius:0!important;
  display:block!important;flex:0 0 26.5px!important;
  background:none!important;filter:none!important;animation:none!important
}
.scroll-orb:before,.scroll-orb:after{content:none!important}
.scroll-led{display:block;width:26.5px!important;height:26.5px!important;overflow:visible;fill:none;stroke:none;filter:none;animation:none!important}
.scroll-led circle[data-led="on"]{fill:var(--led-color-on)}
.scroll-led circle[data-led="off"]{fill:var(--led-color-off)}
.demo-composer{gap:7px!important;justify-content:flex-start!important;padding:0 8px 0 11px!important}
.demo-composer>span{flex:1}.demo-composer b{font-size:11px}
.demo-voice,.voice-play{border:0;background:transparent;color:inherit;cursor:pointer}
.demo-voice{width:26px;height:26px;display:flex;align-items:center;justify-content:center;gap:2px;padding:0;border-radius:50%;background:#f1ebff}
.demo-voice i,.voice-bars i{display:block;width:2px;border-radius:3px;background:currentColor;animation:voice-bar .9s ease-in-out infinite}
.demo-voice i:nth-child(1),.voice-bars i:nth-child(1){height:5px}.demo-voice i:nth-child(2),.voice-bars i:nth-child(2){height:10px;animation-delay:-.2s}.demo-voice i:nth-child(3),.voice-bars i:nth-child(3){height:14px;animation-delay:-.4s}.demo-voice i:nth-child(4),.voice-bars i:nth-child(4){height:9px;animation-delay:-.25s}.demo-voice i:nth-child(5),.voice-bars i:nth-child(5){height:5px;animation-delay:-.1s}
@keyframes voice-bar{50%{transform:scaleY(.45);opacity:.55}}

/* Generated H3 motion plates carry only atmosphere. Every readable phone
   surface is rendered in-browser, then placed inside the measured device. */
.phone-film-plate{filter:saturate(.78) brightness(.64)!important;transform:scale(1.025)!important}
.media-shell:hover .phone-film-plate{filter:saturate(.86) brightness(.69)!important;transform:scale(1.045)!important}
/* Cleo-measured device geometry (audits/pixel-parity-20260901/reference, 2026-09-03).
   On the Cleo original the phone is photographed inside the film, centred in the card,
   upright, and clipped by the card's bottom edge. Measured at 1440x900: outer 351 px wide
   on a 1424 px card (24.6%), top edge 279 px below the card top (31.6%), 0 deg rotation,
   corner radius ~14.2% of the width, bezel ~2.2% of the width. At 390x844: 184 px on a
   374 px card (49.2%), top 32.8%. Every number below is one of those ratios - do not
   re-tune it by eye, and do not add another override block further down this file. */
.phone-film-frame{
  --phone-w:min(24.4vw,351px);
  --phone-bezel:calc(var(--phone-w) * .022);
  position:absolute;z-index:3;top:31.6%;left:50%;width:var(--phone-w);aspect-ratio:430/932;
  overflow:hidden;border:1px solid rgba(255,255,255,.52);
  border-radius:calc(var(--phone-w) * .142);
  /* The bezel has to be REAL padding, not an inset shadow: the <video> fills the box and
     paints over any inset shadow, which is why this device has been rendering edge-to-edge
     with no bezel at all. Cleo's phone shows a 4-5 px dark band at 390 and 7-8 px at 1440
     (2.2% of the width at both), so that is the padding. The colour is ours, not Cleo's. */
  padding:var(--phone-bezel);
  background:#14110f;
  box-shadow:0 44px 100px rgba(22,9,42,.38);
  transform:translateX(-50%);transition:transform .8s var(--ease),box-shadow .5s var(--ease)
}
.phone-film-frame:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(105deg,rgba(255,255,255,.2),transparent 23% 76%,rgba(255,255,255,.08))}
.phone-film-frame video{width:100%;height:100%;display:block;object-fit:contain;border-radius:calc(var(--phone-w) * .142 - var(--phone-bezel))}
.media-shell:hover .phone-film-frame{transform:translateX(-50%) scale(1.018);box-shadow:0 54px 124px rgba(22,9,42,.44)}
.media-shell:has(.phone-film-frame) .media-copy{z-index:4;max-width:min(42vw,570px)}
.smart .split-media{display:grid!important;place-items:center;overflow:hidden;background:radial-gradient(circle at 62% 22%,rgba(188,154,245,.35),transparent 36%),linear-gradient(145deg,#20142f,#5b397f)!important}
.smart .split-media:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(118deg,rgba(255,255,255,.16),transparent 24% 76%,rgba(255,255,255,.06))}
.smart .split-media .phone-film-screen{position:relative!important;z-index:1;width:min(54%,430px)!important;height:auto!important;aspect-ratio:430/932;object-fit:contain!important;border:1px solid rgba(255,255,255,.5);border-radius:54px;box-shadow:0 42px 98px rgba(12,5,24,.46),inset 0 0 0 8px rgba(17,12,23,.92);transform:rotate(-2deg) scale(.96)!important;transition:transform .8s var(--ease),box-shadow .5s var(--ease)!important}
.smart .split-media:hover .phone-film-screen{transform:rotate(0deg) scale(.985)!important;box-shadow:0 52px 116px rgba(12,5,24,.52),inset 0 0 0 8px rgba(17,12,23,.92)}
@media(max-width:760px){
  .phone-film-frame{--phone-w:min(49.2vw,184px);top:32.8%;box-shadow:0 30px 72px rgba(22,9,42,.4)}
  .media-shell:has(.phone-film-frame) .media-copy{top:34px!important;left:24px!important;max-width:calc(100% - 48px)!important}
  .media-shell:has(.phone-film-frame) .media-copy h2{font-size:31px!important;line-height:1.02!important;max-width:none!important}
  .smart .split-media .phone-film-screen{width:min(61%,268px)!important;border-radius:38px;box-shadow:0 30px 72px rgba(12,5,24,.45),inset 0 0 0 5px rgba(17,12,23,.92)}
}

.autopilot-shell .media-copy{top:clamp(92px,10vw,150px)!important;max-width:580px}
.autopilot-shell .media-copy h2{max-width:560px}
.lifestyle-demo{
  position:absolute;z-index:4;left:5.2%;bottom:5.5%;width:min(480px,43vw);
  color:#fff;transform:translateY(calc((1 - var(--section-progress,0))*46px));
  opacity:clamp(0,calc((var(--section-progress,0) - .08)*2.8),1)
}
.typewriter-kicker{margin:0 0 11px;font:13px/1.2 SimplonMono,monospace;letter-spacing:.1em;text-transform:uppercase;text-shadow:0 2px 18px rgba(0,0,0,.5)}
.typewriter-kicker [data-typewriter]{color:#e4d7ff}
.voice-sheet{padding:18px 20px;border:1px solid rgba(255,255,255,.42);border-radius:28px 28px 28px 5px;background:rgba(24,15,38,.42);box-shadow:0 24px 70px rgba(18,10,30,.22);backdrop-filter:blur(18px);transition:transform .45s var(--ease),background .45s var(--ease)}
.voice-sheet:hover{transform:translateY(-5px);background:rgba(24,15,38,.54)}
.voice-sheet small{font:10px/1 SimplonMono,monospace;letter-spacing:.12em;text-transform:uppercase;color:#dfd0ff}
.voice-question{margin:13px 0 9px;color:#fff!important;opacity:1;font-size:clamp(17px,1.45vw,23px);line-height:1.15;text-shadow:0 2px 18px rgba(0,0,0,.3)}
.voice-answer{margin:0;max-width:410px;color:rgba(255,255,255,.84)!important;opacity:1;font-size:13px;line-height:1.35}
.voice-question,.voice-answer{transition:opacity .22s ease,transform .22s ease}.voice-question.is-changing,.voice-answer.is-changing{opacity:0;transform:translateY(5px)}
.voice-play{display:flex;align-items:center;gap:10px;margin-top:14px;padding:9px 13px;border:1px solid rgba(255,255,255,.34);border-radius:999px;color:#fff;background:rgba(255,255,255,.1)}
.voice-play.is-speaking{background:#fff;color:var(--gg-royal)}
.voice-bars{display:flex;align-items:center;justify-content:center;gap:2px;width:25px;height:16px}
.store-cta-row{display:flex;gap:10px;margin-top:11px}.store-cta-row .light-pill{min-width:148px;height:52px;color:var(--gg-ink)!important}

.product-art[data-product-art="save"]{background:linear-gradient(135deg,#f8f6f2 0 46%,#ede7f8 100%)!important}
.product-art[data-product-art="save"] .ambassador-art{object-position:68% center!important;opacity:.72;filter:saturate(.68) contrast(.95)!important}
.product-art[data-product-art="save"]:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f8f6f2 0 17%,rgba(238,234,229,.35) 45%,transparent 70%);pointer-events:none}
.real-app-phone{position:absolute;z-index:2;left:30%;top:11%;width:min(312px,34%);height:78%;padding:7px;border-radius:52px;background:#17151a;box-shadow:0 35px 90px rgba(35,15,67,.24);transform:rotate(-2deg);overflow:hidden;transition:transform .7s var(--ease),box-shadow .7s var(--ease)}
.real-app-phone:before{content:"";position:absolute;z-index:3;top:14px;left:50%;width:29%;height:22px;transform:translateX(-50%);border-radius:20px;background:#111}
.real-app-phone img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center top!important;border-radius:45px!important;transform:none!important;filter:none!important}
.product-art[data-product-art="save"]:hover .real-app-phone{transform:rotate(0) translateY(-7px);box-shadow:0 44px 105px rgba(35,15,67,.32)}
.product-voice-badge{position:absolute;z-index:3;left:16%;bottom:10%;display:grid;grid-template-columns:40px auto;align-items:center;gap:0 12px;padding:13px 17px;border:1px solid rgba(255,255,255,.8);border-radius:24px;background:rgba(255,255,255,.9);box-shadow:0 20px 60px rgba(46,16,101,.14);backdrop-filter:blur(18px);color:var(--gg-royal)}
.product-voice-badge .voice-bars{grid-row:1/3;width:40px;height:40px;border-radius:50%;background:#eee6ff}
.product-voice-badge strong{font-size:13px}.product-voice-badge small{font-size:10px;color:#766c7c}

.community-copy{max-width:630px!important}.community-copy h2{margin-bottom:14px}.community-copy h2 span{display:inline-block;color:#eadfff;min-width:8ch}.community-note{max-width:470px;margin:0 0 23px;color:rgba(255,255,255,.84);font-size:17px;line-height:1.35}.community-copy .light-pill{min-width:210px}
.feature-reel{background:var(--gg-paper)!important}.feature-reel:before{background:radial-gradient(circle at 62% 48%,rgba(183,159,225,.32),transparent 30%)!important}.feature-reel-bg{display:block!important;opacity:.12!important;mix-blend-mode:luminosity;filter:hue-rotate(225deg) saturate(.55)}
.feature-card{isolation:isolate}.feature-card:before{content:"";position:absolute;z-index:2;inset:0;border-radius:inherit;background:linear-gradient(115deg,transparent 28%,rgba(255,255,255,.22) 44%,transparent 61%);transform:translateX(-120%);transition:transform .9s var(--ease);pointer-events:none}.feature-card:hover:before{transform:translateX(120%)}
.feature-card img{filter:saturate(.78) contrast(1.02)!important}.feature-card:hover img{transform:scale(1.055)!important;filter:saturate(.92) contrast(1.04)!important}
.review-card{position:relative;overflow:hidden}.review-card:before{content:"";position:absolute;z-index:3;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.5) 50%,transparent 65%);transform:translateX(-125%);animation:review-scan 7s ease-in-out infinite;pointer-events:none}.review-card img{animation:portrait-breathe 6.4s ease-in-out infinite;transform-origin:center 42%}.review-card:nth-child(2n) img{animation-delay:-2.2s}.review-card:nth-child(3n) img{animation-delay:-4.1s}
@keyframes review-scan{0%,62%{transform:translateX(-125%)}82%,100%{transform:translateX(125%)}}
@keyframes portrait-breathe{0%,100%{transform:scale(1.01)}50%{transform:scale(1.035) translateY(-.6%)}}
.editorial-card{height:clamp(580px,48vw,760px)!important}.editorial-card img{height:78%!important;border-radius:40px!important;object-position:center!important}.editorial-card>div{height:22%!important;padding:24px!important}.editorial-card:hover img{transform:scale(1.035)!important}
.footer-main{background:#341069!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.2)!important}.footer-main:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(118deg,rgba(142,83,232,.24),transparent 29%);pointer-events:none}.footer-main>*{position:relative;z-index:1}

@media(max-width:760px){
  .hero{height:300vh!important}
  .hero-copy{padding-inline:24px!important;padding-bottom:60px!important}
  .hero h1{width:100%!important;max-width:342px!important;font-size:32.256px!important;line-height:36.288px!important;white-space:normal!important}
  .hero h1 span{display:inline!important}
  .scroll-cue{top:58.16232%!important;bottom:auto!important;font:300 20.16px/24.192px PPNeue,Arial,sans-serif!important}
  .scroll-orb{width:26.5px!important;height:26.5px!important;flex-basis:26.5px!important}
  .lifestyle-demo{left:16px;right:16px;bottom:18px;width:auto}.typewriter-kicker{font-size:10px}.voice-sheet{padding:13px 14px;border-radius:22px 22px 22px 5px}.voice-question{font-size:15px;margin:9px 0 6px}.voice-answer{font-size:11px}.voice-play{margin-top:9px;padding:7px 10px;font-size:10px}.store-cta-row .light-pill{min-width:0;flex:1;height:44px;font-size:11px}.autopilot-shell .media-copy{top:84px!important}.autopilot-shell .media-copy .light-pill{display:none}
  .product-art[data-product-art="save"] .ambassador-art{object-position:72% center!important;opacity:.5}.real-app-phone{left:6%;top:15%;width:47%;height:72%;border-radius:38px}.real-app-phone:before{top:11px;height:17px}.real-app-phone img{border-radius:32px!important}.product-voice-badge{left:auto;right:4%;bottom:8%;padding:9px 11px;grid-template-columns:30px auto}.product-voice-badge .voice-bars{width:30px;height:30px}.product-voice-badge strong{font-size:10px}.product-voice-badge small{font-size:8px}
  .community-copy{top:auto!important;bottom:26px!important}.community-copy h2{font-size:34px!important}.community-note{font-size:13px}.community-copy .light-pill{min-width:170px;height:48px}
  .editorial-card{height:520px!important}.editorial-card img{height:72%!important}.editorial-card>div{height:28%!important}
}
@media(prefers-reduced-motion:reduce){.demo-voice i,.voice-bars i,.review-card:before,.review-card img{animation:none!important}}
.footer-brand.gg-brand img{width:30px!important;height:30px!important;object-fit:contain!important}
.loader-mark img{animation:logo-reveal .42s cubic-bezier(.2,.75,.25,1) both!important}
@keyframes logo-reveal{from{opacity:0;transform:translateY(8px) scale(.94)}to{opacity:1;transform:none}}
@media(max-width:760px){.site-nav .brand.gg-brand{width:96px!important;min-width:96px!important;height:44px!important;padding:0 7px 0 6px!important;gap:4px!important}.site-nav .brand.gg-brand img{width:23px!important;height:23px!important;flex-basis:23px!important}.site-nav .brand.gg-brand span{font-size:10.5px!important}}
@media(prefers-reduced-motion:reduce){.loader-mark img{animation:none!important}}

/* Official Vedika badge and liquid chat controls. The filtered surface sits
   behind crisp DOM content, following the Liquid Gooey interaction model. */
.liquid-filter-defs{position:fixed;width:0;height:0;overflow:hidden;pointer-events:none}
.demo-head img,.community-chat>img,.companion-glyph img,.companion-panel-glyph img{image-rendering:auto;object-fit:contain!important}
.companion-glyph,.companion-panel-glyph{background:#fff!important}

.community-copy{
  left:50%!important;
  top:50%!important;
  width:min(920px,calc(100% - 96px))!important;
  max-width:none!important;
  transform:translate(-50%,-50%);
}
.community-copy h2,.community-copy>.eyebrow,.community-copy>.community-note{max-width:620px}
.community-chat{
  width:min(820px,100%)!important;
  min-height:142px!important;
  margin:34px auto 0!important;
  padding:16px 18px!important;
  grid-template-columns:58px minmax(0,1fr) 116px!important;
  gap:16px!important;
  border-color:rgba(236,226,255,.62)!important;
  border-radius:38px 38px 38px 12px!important;
  background:linear-gradient(135deg,rgba(31,14,69,.78),rgba(69,34,112,.68))!important;
  box-shadow:0 30px 90px rgba(20,7,47,.32),inset 0 1px 0 rgba(255,255,255,.28)!important;
  backdrop-filter:blur(24px) saturate(1.08)!important;
  -webkit-backdrop-filter:blur(24px) saturate(1.08)!important;
}
.community-chat:hover,.community-chat:focus-visible{
  transform:translateY(-4px) scale(1.005)!important;
  background:linear-gradient(135deg,rgba(35,15,78,.88),rgba(82,40,132,.78))!important;
  box-shadow:0 38px 100px rgba(20,7,47,.4),0 0 0 4px rgba(219,202,255,.13)!important;
}
.community-chat.is-liquid-active{animation:gg-liquid-press .48s cubic-bezier(.2,.9,.2,1)}
.community-chat>img{width:58px!important;height:58px!important;border-radius:50%!important;box-shadow:0 10px 28px rgba(13,4,34,.32)!important}
.community-chat-copy{min-width:0!important;display:flex!important;flex-direction:column;align-items:flex-start;gap:5px}
.community-chat-copy>small{margin:0!important;color:#ddd0ff!important}
.community-chat-copy>strong{width:100%;font-size:clamp(15px,1.2vw,18px)!important;line-height:1.22!important}
.community-reply{width:min(100%,640px);display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;margin-top:4px;padding:8px 11px;border:1px solid rgba(255,255,255,.18);border-radius:15px 15px 15px 4px;background:rgba(255,255,255,.12);color:rgba(255,255,255,.83);font-size:11px;line-height:1.3}
.community-reply b{color:#fff;font:9px/1 SimplonMono,monospace;text-transform:uppercase;letter-spacing:.08em}
.community-liquid-actions,.companion-liquid-actions{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center}
.community-liquid-actions{width:116px;height:64px;gap:8px}
.liquid-surface{position:absolute;z-index:-1;inset:0;filter:url(#gg-liquid-goo);pointer-events:none}
.liquid-surface>i{position:absolute;top:50%;width:54px;height:54px;border-radius:50%;background:#faf8ff;transform:translateY(-50%);transition:transform .58s cubic-bezier(.2,.92,.2,1),border-radius .58s cubic-bezier(.2,.92,.2,1)}
.liquid-surface>i:first-child{left:1px}.liquid-surface>i:last-child{right:1px}
.community-chat:hover .liquid-surface>i:first-child,.community-chat:focus-visible .liquid-surface>i:first-child{transform:translate(12px,-50%) scale(1.05);border-radius:48% 44% 42% 52%}
.community-chat:hover .liquid-surface>i:last-child,.community-chat:focus-visible .liquid-surface>i:last-child{transform:translate(-12px,-50%) scale(1.05);border-radius:44% 52% 48% 42%}
.community-chat .community-liquid-actions>.voice-bars,.community-chat .community-liquid-actions>em{position:relative;z-index:2;width:48px!important;height:48px!important;margin:0;border-radius:50%;background:transparent!important}
.community-chat .community-liquid-actions>.voice-bars b{background:#4d2686!important}
.community-chat .community-liquid-actions>em{color:#351268!important;font-size:22px}

.companion-composer{grid-template-columns:minmax(0,1fr) 92px!important}
.companion-liquid-actions{width:92px;height:44px;gap:4px}
.companion-liquid-actions .liquid-surface>i{width:42px;height:42px;background:#eee7fb}
.companion-liquid-actions .liquid-surface>i:first-child{left:2px}.companion-liquid-actions .liquid-surface>i:last-child{right:2px;background:#4a1b87}
.companion-liquid-actions:focus-within .liquid-surface>i:first-child,.companion-liquid-actions:hover .liquid-surface>i:first-child{transform:translate(8px,-50%) scale(1.04)}
.companion-liquid-actions:focus-within .liquid-surface>i:last-child,.companion-liquid-actions:hover .liquid-surface>i:last-child{transform:translate(-8px,-50%) scale(1.04)}
.companion-liquid-actions .companion-voice,.companion-liquid-actions .companion-send{position:relative;z-index:2;width:42px!important;height:42px!important;background:transparent!important}
.companion-liquid-actions .companion-send{color:#fff}
.companion-prompts button{position:relative;overflow:hidden;transition:transform .35s cubic-bezier(.2,.9,.2,1),background .28s,color .28s,border-radius .35s}
.companion-prompts button:hover,.companion-prompts button:focus-visible,.companion-prompts button.is-selected{transform:translateY(-2px) scale(1.025);border-radius:20px 20px 20px 7px;color:#fff;background:#5d30a5}
.companion-prompts button.is-liquid-active{animation:gg-option-travel .52s cubic-bezier(.2,.9,.2,1)}
.companion-send.is-liquid-active,.companion-voice.is-liquid-active{animation:gg-liquid-press .44s cubic-bezier(.2,.9,.2,1)}
@keyframes gg-liquid-press{0%{transform:scale(1)}38%{transform:scale(.94,1.06)}72%{transform:scale(1.025,.985)}100%{transform:scale(1)}}
@keyframes gg-option-travel{0%{transform:translateY(0) scale(1)}30%{transform:translateY(2px) scale(.95,1.06);border-radius:22px 22px 22px 5px}68%{transform:translateY(-3px) scale(1.035,.98);border-radius:20px 20px 20px 7px}100%{transform:translateY(-2px) scale(1.025);border-radius:20px 20px 20px 7px}}

@media(max-width:760px){
  .community-copy{left:16px!important;right:16px!important;top:auto!important;bottom:20px!important;width:auto!important;transform:none!important}
  .community-copy h2{font-size:31px!important}.community-note{max-width:36ch!important;margin-bottom:12px!important;font-size:12px!important}
  .community-chat{min-height:124px!important;margin-top:15px!important;padding:12px!important;grid-template-columns:44px minmax(0,1fr) 80px!important;gap:10px!important;border-radius:28px 28px 28px 9px!important}
  .community-chat>img{width:44px!important;height:44px!important}.community-chat-copy>strong{font-size:12px!important;white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .community-reply{grid-template-columns:1fr!important;gap:3px;padding:6px 8px;font-size:9px}.community-reply b{font-size:7px}
  .community-liquid-actions{width:80px;height:48px}.liquid-surface>i{width:44px;height:44px}.community-chat .community-liquid-actions>.voice-bars,.community-chat .community-liquid-actions>em{display:grid!important;width:36px!important;height:36px!important}
  .community-chat .community-liquid-actions>.voice-bars{display:flex!important}
}
@media(prefers-reduced-motion:reduce){.community-chat.is-liquid-active,.companion-prompts button.is-liquid-active,.companion-send.is-liquid-active,.companion-voice.is-liquid-active{animation:none!important}.liquid-surface>i{transition:none!important}}

/* Final Cleo-frame parity guardrails. Keep image movement inside each card,
   leave breathing room at carousel edges, and keep the longer GrahaGuru CTA
   on the same desktop line without changing the compact mobile composition. */
.feature-track{overflow-y:visible!important}
.feature-card,.feature-card:first-child{overflow:hidden!important}
.feature-card:hover img,.feature-card:focus-within img{transform:scale(1.025)!important}
@media(min-width:1000px){
  .download>div:first-child{width:min(58%,760px)!important;max-width:760px!important}
  .download h2{max-width:none!important;font-size:clamp(46px,3.55vw,56px)!important;white-space:nowrap!important}
  .download .qr-wrap{top:305px!important;right:17vw!important;width:306px!important;padding:14px!important}
}

/* Product controls keep the custom metal effect without a brown fill. */
.metallic,.metallic>.button-label{color:#3e246f!important}
.tabs button{color:#3e246f!important}
.tabs button.is-active{background:rgba(72,57,81,.64)!important;color:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.38),0 12px 34px rgba(46,16,101,.12)!important}
.tabs button:hover:not(.is-active){background:rgba(255,255,255,.82)!important;color:#3e246f!important}

/* Compact app preview. The lifestyle image stays dominant. */
.device-popups{left:5.2%!important;right:auto!important;bottom:58px!important;gap:8px!important;align-items:flex-end!important;transform:translateY(calc((1 - var(--section-progress,0)) * 36px)) scale(.82)!important;transform-origin:left bottom!important}
.mini-device{width:142px!important;min-height:184px!important;padding:12px 11px!important;border-radius:24px!important;gap:8px!important;background:rgba(252,250,255,.97)!important;box-shadow:0 18px 52px rgba(30,18,48,.2)!important}
.mini-device:nth-child(2){min-height:198px!important;transform:rotate(2deg) translateY(-5px)!important}
.mini-device:before{width:38px!important;height:6px!important}
.mini-device strong{font-size:13px!important}
.mini-device p{font-size:10px!important;padding:9px!important}
.mini-device small,.device-system{font-size:8.5px!important}
.device-popups .availability-popups{width:172px!important;gap:6px!important}
.device-popups .availability-pill,.device-popups .language-preview{min-height:38px!important;padding:0 12px!important;font-size:10px!important;white-space:nowrap!important}

/* Wide interview composition: room first, founder second, as in the reference. */
.editorial-card{height:600px!important;padding:10px 10px 0!important}
.editorial-card img{height:74%!important;border-radius:34px!important;object-fit:cover!important}
.editorial-card:first-child img{object-position:center 49%!important}
.editorial-card:nth-child(2) img{object-position:center 48%!important}
.editorial-card>div{height:26%!important;padding:30px 22px 18px!important}
.editorial-card .eyebrow{font-size:24px!important;letter-spacing:0!important;text-transform:none!important}
.editorial-card h2{font-size:17px!important;font-weight:300!important}
.faq-item .plus:before,.faq-item .plus:after{top:50%!important;left:50%!important;margin:0!important;transform:translate(-50%,-50%)!important}
.site-nav.is-dark .gg-brand img,.footer-brand.gg-brand img{filter:none!important}
.companion-glyph img,.companion-panel-glyph img{width:100%;height:100%;object-fit:cover;border-radius:50%;filter:none!important}
@media(max-width:760px){
  .device-popups{left:10px!important;bottom:36px!important;transform:translateY(calc((1 - var(--section-progress,0)) * 28px)) scale(.68)!important}
  .device-popups .availability-popups{display:none!important}
  .editorial-card{height:500px!important}
  .editorial-card img{height:72%!important}
  .editorial-card>div{height:28%!important;padding:22px 12px!important}
  .editorial-card .eyebrow{font-size:20px!important}
  .editorial-card h2{font-size:15px!important}
}

/* Shared Ga dark-surface correction must remain last in the cascade. */
.site-nav.is-dark .brand.gg-brand img,.footer-brand.gg-brand img{filter:none!important}

/* Header brand shell: measured Cleo reference material and corner geometry.
   Only the mark and name are GrahaGuru; the container is the reference shell. */
.site-nav .brand.gg-brand,.site-nav.is-dark .brand.gg-brand{
  width:91.914px!important;min-width:91.914px!important;height:47px!important;
  padding:0!important;gap:0!important;display:grid!important;place-items:center!important;
  border:1px solid rgba(71,32,28,.17)!important;
  border-radius:32px 32px 32px 0!important;
  background:rgba(62, 36, 111, .10)!important;background-image:none!important;
  box-shadow:none!important;backdrop-filter:blur(6px)!important;
  -webkit-backdrop-filter:blur(6px)!important;transform:translateY(1px);
}

/* The shared identity stacking rule is declared late in this file. Restore
   the intentional absolute layers for the multilingual film section. Geometry
   itself belongs to the single measured `.phone-film-frame` block above. */
.media-shell:has(.phone-film-frame)>.phone-film-frame{position:absolute!important;z-index:3!important}
.media-shell:has(.phone-film-frame)>.media-copy{position:absolute!important;z-index:4!important;top:55px!important;left:55px!important}

/* 2026-08-29 HOME PARITY AUTHORITY
   This block intentionally sits last. It resolves the historical cascade of
   prototype overrides without changing route-specific pages. */
.hero{height:250vh!important}

/* Staged identity loader: approved Shared Ga, then rule, then page. */
.page-loader{
  display:grid!important;place-items:center!important;align-content:center!important;gap:24px!important;
  color:#351268!important;background:#f8f6f2!important;
  opacity:1!important;visibility:visible!important;
  transition:opacity .48s cubic-bezier(.2,.75,.25,1),visibility 0s linear .48s!important;
}
.page-loader .loader-mark{display:flex!important;align-items:center!important;gap:10px!important;opacity:0;transform:translateY(10px) scale(.97);transition:opacity .38s ease,transform .48s cubic-bezier(.2,.8,.2,1)}
.page-loader .loader-mark img{width:46px!important;height:54px!important;animation:none!important;filter:none!important;object-fit:contain!important}
.page-loader .loader-mark span{font-size:23px!important;font-weight:600!important;letter-spacing:-.045em!important}
.page-loader .loader-line{position:relative!important;width:min(230px,58vw)!important;height:1px!important;overflow:hidden!important;background:rgba(53,18,104,.14)!important;transform:none!important;opacity:0!important;transition:opacity .25s ease!important}
.page-loader .loader-line:after{content:"";position:absolute;inset:0;background:#6e47b6;transform:translateX(-102%);transition:transform .52s cubic-bezier(.7,0,.25,1)}
.page-loader.is-mark .loader-mark{opacity:1;transform:none}
.page-loader.is-line .loader-line{opacity:1!important}
.page-loader.is-line .loader-line:after{transform:translateX(0)}
.page-loader.is-done{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
.page-loader.is-leaving{transition-delay:0s!important}

/* Original-style scroll cue: one dotted arrow glyph, no glow or rings. */
.scroll-cue{top:61%!important;gap:13px!important;font:300 25px/1 PPNeue,Arial,sans-serif!important;color:#fff!important;text-shadow:none!important}
.scroll-orb{width:48px!important;height:48px!important;flex:0 0 48px!important;display:grid!important;place-items:center!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;filter:none!important;animation:none!important}
.scroll-orb:before,.scroll-orb:after{display:none!important;content:none!important}
.scroll-led{width:48px!important;height:48px!important;overflow:visible;filter:none!important;animation:gg-cue-drift 1.7s cubic-bezier(.4,0,.2,1) infinite}
.scroll-led circle{fill:rgba(242,233,255,.58)!important;transition:fill .2s ease!important}
.scroll-led circle[data-led="on"]{fill:#fff!important;animation:gg-led-pulse 1.7s ease-in-out infinite}
@keyframes gg-cue-drift{0%,100%{transform:translateY(-1px)}50%{transform:translateY(2px)}}
@keyframes gg-led-pulse{0%,100%{opacity:.78}50%{opacity:1}}

/* Cleo material placement with the custom layered metal control retained. */
.metallic,.account-login,.account-signup,.review-controls button,.news-controls button{transition-duration:.2s!important}
.account-actions{gap:6px!important;align-items:center!important}
.account-login,.account-signup{display:grid!important;place-items:center!important;min-height:44px!important;padding:0 17px!important;line-height:1!important;white-space:nowrap!important}
.account-signup{border:1px solid rgba(71,32,28,.12)!important;border-radius:999px!important;background:rgba(255,255,255,.74)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important}
.site-nav.is-dark .account-signup{border-color:rgba(255,255,255,.2)!important;background:rgba(255,255,255,.12)!important}

/* Review gallery restores the reference heading, roomy carousel and motion. */
.reviews{min-height:900px!important;padding:108px 0 122px!important;background:#f1ebfa!important;color:#351268!important;overflow:hidden!important}
.reviews-head{width:auto!important;max-width:none!important;margin:0 5.5vw 70px!important;display:flex!important;align-items:flex-end!important;justify-content:space-between!important;text-align:left!important}
.reviews-head>div:first-child{width:min(760px,72vw)!important;max-width:none!important;flex:0 1 auto!important}
.reviews-head h2{font-size:clamp(48px,4.6vw,66px)!important;line-height:.98!important;letter-spacing:-.052em!important;color:#351268!important}
.reviews .eyebrow,.reviews mark,.review-card blockquote,.review-card>p{color:#351268!important}
.review-track{gap:20px!important;padding:0 5.5vw!important;scroll-padding-inline:5.5vw!important;scroll-snap-type:x mandatory!important;overflow-x:auto!important;overflow-y:hidden!important}
.review-card{flex:0 0 min(920px,82vw)!important;width:min(920px,82vw)!important;height:510px!important;padding:14px!important;display:grid!important;grid-template-columns:44% 56%!important;grid-template-rows:1fr auto!important;border-radius:64px!important;background:#fff!important;scroll-snap-align:center!important;box-shadow:0 24px 70px rgba(53,18,104,.08)!important}
.review-card img,.review-card video{grid-row:1/3!important;width:100%!important;height:100%!important;border-radius:49px!important;object-fit:cover!important;background:#e8def6!important;filter:grayscale(1) contrast(1.04)!important;mix-blend-mode:multiply!important}
.review-card blockquote{align-self:center!important;margin:0!important;padding:34px 48px 0!important;font-size:clamp(26px,2.35vw,34px)!important;line-height:1.06!important;letter-spacing:-.035em!important}
.review-card>p{align-self:end!important;margin:0!important;padding:0 48px 40px!important;font-size:12px!important;letter-spacing:.09em!important;text-transform:uppercase!important}

/* Founder films use the original room-first composition and honest crops. */
.editorial{height:auto!important;min-height:768px!important;gap:8px!important;padding:0 8px 8px!important;background:#fff!important}
.editorial-card{height:760px!important;padding:10px 10px 0!important;display:grid!important;grid-template-rows:minmax(0,1fr) 154px!important;background:#efede9!important;overflow:hidden!important}
.editorial-card img{position:relative!important;width:100%!important;height:100%!important;min-height:0!important;border-radius:40px!important;object-fit:cover!important;transform:scale(1.002)!important;transition:transform .55s var(--ease),filter .2s ease!important}
.editorial-card:first-child img{object-position:center 48%!important}
.editorial-card:nth-child(2) img{object-position:center 46%!important}
.editorial-card>div{height:auto!important;padding:27px 24px 20px!important;color:#3e246f!important;text-align:center!important;text-shadow:none!important}
.editorial-card .eyebrow{margin:0 0 8px!important;font-size:24px!important;color:#3e246f!important;letter-spacing:-.03em!important;text-transform:none!important}
.editorial-card h2{margin:0!important;font-size:17px!important;font-weight:300!important;color:#6e686f!important}
.editorial-card:hover img,.editorial-card:focus-visible img{transform:scale(1.026)!important;filter:saturate(1.02) contrast(1.01)!important}

/* QR movement is variable-driven so mobile centering cannot be overwritten. */
.download .qr-wrap{--qr-y:0px;--qr-rotate:3deg;--qr-scale:1;right:15vw!important;top:275px!important;width:342px!important;padding:14px!important;transform:translate3d(0,var(--qr-y),0) rotate(var(--qr-rotate)) scale(var(--qr-scale))!important;transform-origin:center!important;will-change:transform,opacity}
.download .qr{display:block!important;width:100%!important;height:auto!important;aspect-ratio:1!important;padding:0!important;border:0!important;object-fit:contain!important;box-shadow:none!important;background:#fff!important}

/* Footer mirrors the original roomy grid; royal purple is used once, quietly. */
.footer{margin:8px!important;border-radius:48px 48px 0 0!important;background:#fff!important;color:#fff!important;overflow:hidden!important}
.footer-main{position:relative!important;min-height:500px!important;padding:70px 5.8vw 62px!important;display:grid!important;grid-template-columns:1.16fr repeat(4,1fr)!important;grid-template-rows:auto 1fr!important;gap:42px 38px!important;border-radius:48px 48px 48px 0!important;background:#2b1150!important;background-image:none!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.13)!important}
.footer-main:before{display:none!important;content:none!important}
.footer-main .footer-brand.gg-brand{align-self:start!important;justify-self:start!important;width:126px!important;min-width:126px!important;height:62px!important;padding:0 15px!important;display:flex!important;gap:8px!important;border:1px solid rgba(255,255,255,.24)!important;border-radius:32px 32px 32px 0!important;background:rgba(255,255,255,.12)!important}
.footer-main .footer-brand img{width:31px!important;height:31px!important}.footer-main .footer-brand span{font-size:15px!important;font-weight:600!important;letter-spacing:-.04em!important}
.footer-main h2{grid-column:2/6!important;align-self:start!important;margin:8px 0 0!important;font-size:36px!important;font-weight:300!important;letter-spacing:-.04em!important}
.footer-main>div{align-self:end!important;padding:0!important;gap:12px!important}.footer-main>div p{margin:0 0 10px!important;color:#fff!important;font-size:15px!important}.footer-main>div a{font-size:16px!important;color:rgba(255,255,255,.68)!important;transition:opacity .2s ease,color .2s ease!important}.footer-main>div a:hover{color:#fff!important;opacity:1!important}
.footer-bottom{min-height:112px!important;padding:28px 5.8vw!important;border:0!important;color:#351268!important;background:#fff!important}

@media(max-width:760px){
  .hero{height:250vh!important}
  .site-nav .app-button{position:absolute!important;right:54px!important;width:92px!important;min-width:92px!important;height:42px!important;display:grid!important;place-items:center!important;border-radius:23px!important;font-size:11px!important}
  .scroll-cue{top:59%!important;gap:10px!important;font:300 20px/1 PPNeue,Arial,sans-serif!important}
  .scroll-orb{width:40px!important;height:40px!important;flex-basis:40px!important}.scroll-led{width:40px!important;height:40px!important}
  .account-login,.account-signup{min-height:40px!important;padding:0 12px!important;font-size:11px!important}
  .reviews{height:auto!important;min-height:760px!important;padding:84px 0 96px!important}.reviews-head{position:relative!important;inset:auto!important;width:auto!important;height:auto!important;margin:0 24px 54px!important;align-items:flex-end!important;transform:none!important}.reviews-head>div:first-child{width:calc(100vw - 146px)!important}.reviews-head h2{font-size:40px!important}.review-controls{gap:8px!important}.review-controls button{width:46px!important;height:46px!important}
  .review-track{position:relative!important;inset:auto!important;height:568px!important;padding:0 20px 20px!important;gap:12px!important;scroll-padding-inline:20px!important;transform:none!important}.review-card{flex:0 0 calc(100vw - 40px)!important;width:calc(100vw - 40px)!important;height:548px!important;padding:10px!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:54% auto auto!important;border-radius:42px!important}.review-card img,.review-card video{grid-column:1!important;grid-row:1!important;border-radius:32px!important}.review-card blockquote{grid-column:1!important;grid-row:2!important;padding:25px 22px 8px!important;font-size:24px!important}.review-card>p{grid-column:1!important;grid-row:3!important;padding:0 22px 24px!important;font-size:10px!important}
  .editorial{height:auto!important;min-height:0!important;display:grid!important;grid-template-columns:1fr!important}.editorial-card{height:610px!important;grid-template-rows:minmax(0,1fr) 138px!important}.editorial-card img{border-radius:30px!important}.editorial-card:first-child img{object-position:center 46%!important}.editorial-card:nth-child(2) img{object-position:center 44%!important}.editorial-card>div{padding:23px 12px!important}.editorial-card .eyebrow{font-size:20px!important}.editorial-card h2{font-size:15px!important}
  .download .qr-wrap{left:50%!important;right:auto!important;top:78px!important;width:244px!important;transform:translate3d(-50%,var(--qr-y),0) rotate(var(--qr-rotate)) scale(var(--qr-scale))!important}
  .footer{margin:8px!important}.footer-main{height:auto!important;min-height:0!important;padding:42px 28px 46px!important;grid-template-columns:1fr 1fr!important;grid-template-rows:auto auto auto auto!important;align-content:start!important;gap:28px 22px!important;border-radius:42px 42px 42px 0!important}.footer-main .footer-brand.gg-brand{grid-column:1!important;width:118px!important;min-width:118px!important;height:58px!important}.footer-main .footer-brand img{width:27px!important;height:27px!important}.footer-main .footer-brand span{font-size:13px!important}.footer-main h2{grid-column:1/3!important;margin:0!important;font-size:30px!important}.footer-main>div{align-self:start!important}.footer-main>div:nth-of-type(1),.footer-main>div:nth-of-type(2){grid-row:3!important}.footer-main>div:nth-of-type(3),.footer-main>div:nth-of-type(4){grid-row:4!important}.footer-bottom{min-height:128px!important;padding:24px 8px!important}
}
@media(prefers-reduced-motion:reduce){
  .page-loader .loader-mark,.page-loader .loader-line,.page-loader .loader-line:after{transition:none!important}.page-loader.is-mark .loader-mark{opacity:1!important;transform:none!important}.page-loader.is-line .loader-line{opacity:1!important}.page-loader.is-line .loader-line:after{transform:none!important}.scroll-cue,.scroll-led,.scroll-led circle[data-led="on"]{animation:none!important}
}
.site-nav .brand.gg-brand:before{
  content:""!important;position:absolute;inset:0;border-radius:inherit;padding:1px;
  background:linear-gradient(180deg,transparent 0%,#f8f6f2 41.5%,transparent 100%)!important;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;
  -webkit-mask-composite:xor!important;mask-composite:exclude!important;pointer-events:none;
}
.site-nav.is-dark .brand.gg-brand{
  border-color:rgba(255,255,255,.22)!important;color:#fff!important;
  background:rgba(62, 36, 111, .10)!important;background-image:none!important;box-shadow:none!important;
}
.site-nav .brand.gg-brand img{width:66px!important;height:auto!important;flex:none!important;object-fit:contain!important;filter:brightness(0) saturate(100%)!important}
.site-nav.is-dark .brand.gg-brand img{filter:brightness(0) invert(1)!important}
@media(max-width:760px){
  .site-nav .brand.gg-brand{width:82px!important;min-width:82px!important;height:42px!important;padding:0!important;border-radius:23px 23px 23px 0!important}
  .site-nav .brand.gg-brand img{width:66px!important;height:auto!important}
}

/* Cleo shell parity. The shell is neutral glass, never a purple brand button. */
.site-nav .brand.gg-brand,.site-nav.is-dark .brand.gg-brand{
  overflow:hidden!important;
  border-color:rgba(255,255,255,.26)!important;
  background:rgba(20,24,30,.10)!important;
  background-image:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16)!important;
  backdrop-filter:blur(12px) saturate(1.05)!important;
  -webkit-backdrop-filter:blur(12px) saturate(1.05)!important;
}
.site-nav .brand.gg-brand:before,.site-nav .brand.gg-brand:after{display:none!important;content:none!important}
.site-nav:not(.is-dark) .brand.gg-brand{
  border-color:rgba(30,25,40,.18)!important;
  background:rgba(255,255,255,.16)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.48)!important;
}
@media(max-width:760px){
  .site-nav .brand.gg-brand,.site-nav.is-dark .brand.gg-brand{
    width:82px!important;min-width:82px!important;height:42px!important;
    border-radius:23px 23px 23px 0!important;transform:none!important;
  }
  .site-nav .brand.gg-brand img{width:66px!important;height:auto!important}
}

/* Approved header lockup: one clear Ga mark plus live text. The glossy wide
   image lockup and experimental doubled marks are not navigation assets. */
.site-nav .brand.gg-brand,
.site-nav.is-dark .brand.gg-brand{
  width:auto!important;
  min-width:142px!important;
  padding:0 16px 0 9px!important;
  gap:8px!important;
  display:flex!important;
  justify-content:flex-start!important;
}
.site-nav .brand.gg-brand img{
  width:30px!important;
  height:30px!important;
  flex:0 0 30px!important;
  filter:none!important;
}
.site-nav .brand.gg-brand span{
  display:block!important;
  color:#18181b!important;
  background:none!important;
  font-size:17px!important;
  font-weight:650!important;
  letter-spacing:-.045em!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.site-nav.is-dark .brand.gg-brand img{filter:brightness(0) invert(1)!important}
.site-nav.is-dark .brand.gg-brand span{color:#fff!important}
@media(max-width:760px){
  .site-nav .brand.gg-brand,
  .site-nav.is-dark .brand.gg-brand{
    min-width:116px!important;
    height:42px!important;
    padding:0 12px 0 7px!important;
    gap:6px!important;
  }
  .site-nav .brand.gg-brand img{width:26px!important;height:26px!important;flex-basis:26px!important}
  .site-nav .brand.gg-brand span{font-size:14px!important}
}

/* Locked GrahaGuru identity mapping. Small trust surfaces keep the solid mark;
   large editorial surfaces can use the animated Typesetter or Moire master. */
.statement.money,.media-shell{position:relative;isolation:isolate}
.statement.money>*:not(.section-identity),.media-shell>*:not(.section-identity){position:relative;z-index:2}
.media-shell>.cover-media{z-index:1!important}.media-shell>.section-identity{z-index:2!important}.media-shell>.media-copy{z-index:3!important}
.section-identity{position:absolute!important;z-index:1!important;pointer-events:none;user-select:none;object-fit:contain}
.section-identity-typesetter{left:auto!important;right:clamp(18px,5vw,84px)!important;top:50%!important;width:clamp(230px,27vw,470px)!important;height:auto!important;opacity:.16;transform:translateY(-50%);mix-blend-mode:multiply;animation:lockedTypeFloat 8s cubic-bezier(.4,0,.2,1) infinite}
.section-identity-moire{left:auto!important;right:clamp(18px,4vw,64px)!important;top:clamp(18px,4vw,56px)!important;width:clamp(240px,29vw,500px)!important;height:auto!important;opacity:.3;filter:drop-shadow(0 0 24px rgba(185,168,222,.22));mix-blend-mode:screen;animation:lockedMoireFloat 9.4s cubic-bezier(.4,0,.2,1) infinite}
@keyframes lockedTypeFloat{0%,100%{transform:translateY(-50%) translate3d(0,0,0)}50%{transform:translateY(-50%) translate3d(-7px,-5px,0)}}
@keyframes lockedMoireFloat{0%,100%{transform:translate3d(0,0,0);filter:drop-shadow(0 0 20px rgba(185,168,222,.2))}50%{transform:translate3d(-8px,5px,0);filter:drop-shadow(0 0 34px rgba(185,168,222,.34))}}
@media(max-width:900px){.section-identity-typesetter{right:-62px;width:330px;opacity:.1}.section-identity-moire{right:-64px;width:350px;opacity:.22}}
@media(max-width:640px){.section-identity{display:none}}
@media(prefers-reduced-motion:reduce){.section-identity{animation:none!important}}

/* Final film-layer correction: keep these declarations after the generic
   identity rule above so the device and its copy remain inside the stage.
   Position only - the measured geometry stays in the one `.phone-film-frame`
   rule near the top of this section. */
.media-shell:has(.phone-film-frame)>.phone-film-frame{position:absolute!important;z-index:3!important}
.media-shell:has(.phone-film-frame)>.media-copy{position:absolute!important;z-index:4!important;top:55px!important;left:55px!important}
@media(max-width:760px){
  .media-shell:has(.phone-film-frame)>.media-copy{top:34px!important;left:24px!important}
}

/* Mobile language film: the Cleo original stacks the copy ABOVE a centred
   device, it does not push the device into the right gutter and squeeze the
   headline beside it. Measured on the Cleo reference at 390x844: device 184 px
   wide on a 374 px card (49.2%), horizontally centred, top edge 32.8% down the
   card, clipped by the card's bottom edge. */
@media(max-width:760px){
  .media-shell:has(.phone-film-frame)>.phone-film-frame{
    --phone-w:min(49.2vw,184px)!important;
    top:32.8%!important;
    left:50%!important;
    width:var(--phone-w)!important;
  }
  .media-shell:has(.phone-film-frame)>.media-copy{
    top:34px!important;
    left:24px!important;
    max-width:calc(100% - 48px)!important;
  }
  .media-shell:has(.phone-film-frame)>.media-copy h2{
    max-width:none!important;
    font-size:31px!important;
    line-height:1.02!important;
  }
}

/* 2026-08-30 measured Home parity pass. Keep this final: the reference uses
   absolute story overlays and exact scene beats, not flow content that expands
   or clips each cinematic panel. */
.media-shell>*:not(.section-identity){z-index:2}
.media-shell>.media-copy,
.media-shell>.lifestyle-demo,
.media-shell>.community-copy{position:absolute!important}
.media-shell>.media-copy{z-index:4!important}
.media-shell>.lifestyle-demo{z-index:5!important}
.media-shell>.community-copy{z-index:4!important}

.statement.money{height:634px!important;min-height:634px!important}
.media-shell{height:900px!important;min-height:900px!important}
.paired{height:900px!important;min-height:900px!important}
.statement.compact{height:537px!important;min-height:537px!important}
.smart{height:900px!important;min-height:900px!important}
.products{height:900px!important;min-height:900px!important}
.reviews{height:1067px!important;min-height:1067px!important}
.feature-reel{height:810px!important;min-height:810px!important}
.statement.latest{height:337px!important;min-height:337px!important}
.editorial{height:750px!important;min-height:750px!important}
.editorial-card{height:742px!important}
.news{height:434px!important;min-height:434px!important}
.faq{height:1080px!important;min-height:1080px!important}
.download{height:653px!important;min-height:653px!important;padding:80px 12vw!important;display:flex!important;align-items:center!important}
.download .qr-wrap{top:112px!important;right:14vw!important;width:340px!important;text-decoration:none!important}
.legal-notes{height:126px!important;min-height:126px!important;padding:30px 3vw!important}
.footer-main{height:374px!important;min-height:374px!important;padding:50px 5.8vw 42px!important}
.footer-main h2{font-size:32px!important}
.footer-bottom{height:101px!important;min-height:101px!important;padding:24px 5.8vw!important}
.review-track{gap:204px!important}
.review-card{flex-basis:664px!important;width:664px!important}

@media(max-width:760px){
  .statement.money{height:495px!important;min-height:495px!important}
  .media-shell{height:515px!important;min-height:515px!important}
  .paired{height:1021px!important;min-height:1021px!important;grid-template-rows:1fr 1fr!important}
  .paired>.pair-card{min-height:0!important;height:auto!important}
  .statement.compact{height:436px!important;min-height:436px!important}
  .smart{height:640px!important;min-height:640px!important}
  .products{height:688px!important;min-height:688px!important}
  .reviews{height:962px!important;min-height:962px!important;padding:76px 0 72px!important}
  .reviews-head{margin-bottom:42px!important}
  .feature-reel{height:481px!important;min-height:481px!important}
  .feature-track{height:100%!important;padding-top:46px!important;padding-bottom:24px!important}
  .feature-card,.feature-card:first-child{height:390px!important;min-height:390px!important}
  .statement.latest{height:243px!important;min-height:243px!important}
  .editorial{height:768px!important;min-height:768px!important;display:flex!important;grid-template-columns:none!important;gap:8px!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory!important}
  .editorial-card{flex:0 0 calc(100vw - 24px)!important;width:calc(100vw - 24px)!important;height:760px!important;scroll-snap-align:start!important}
  .news{height:352px!important;min-height:352px!important}
  .faq{height:848px!important;min-height:848px!important;padding-top:66px!important}
  .faq-list{min-height:650px!important;padding-top:46px!important;padding-bottom:64px!important}
  .download{height:651px!important;min-height:651px!important;padding:350px 24px 36px!important;display:block!important}
  .download .qr-wrap{top:58px!important;width:220px!important;left:50%!important;right:auto!important}
  .legal-notes{height:185px!important;min-height:185px!important;padding:44px 24px!important}
  .footer-main{height:720px!important;min-height:720px!important;padding:44px 28px 54px!important;align-content:start!important}
  .footer-main h2{margin-bottom:24px!important}
  .footer-main>div{margin-top:18px!important}
  .footer-bottom{height:138px!important;min-height:138px!important}
  .review-track{gap:12px!important}
}

@media(prefers-reduced-motion:reduce){
  video{animation:none!important}
  .review-track,.news-track,.editorial{scroll-behavior:auto!important}
  .qr-wrap{--qr-y:0px!important;--qr-rotate:0deg!important;--qr-scale:1!important;opacity:1!important}
}

/* Home follow-up: five truthful destinations without changing the shared
   mega-menu runtime. Route links use the same Cleo text treatment as triggers. */
.nav-links{width:auto!important;min-width:610px!important;padding-inline:22px!important;gap:2px!important}
.nav-links>a{min-height:48px;padding:0 18px;display:grid;place-items:center;color:inherit;font-size:13.6px;line-height:1;text-decoration:none;border-radius:999px;transition:background .2s ease,color .2s ease,transform .2s ease}
.nav-links>button:hover,.nav-links>a:hover,.nav-links>button:focus-visible,.nav-links>a:focus-visible{background:rgba(255,255,255,.2)!important;color:inherit!important;transform:translateY(-1px)}
.site-nav:not(.is-dark) .nav-links>button:hover,.site-nav:not(.is-dark) .nav-links>a:hover{background:rgba(53,18,104,.08)!important;color:#351268!important}
.site-nav.is-dark .account-login:hover,.site-nav.is-dark .account-signup:hover{color:#fff!important;background:rgba(255,255,255,.16)!important}
.site-nav:not(.is-dark) .account-login:hover,.site-nav:not(.is-dark) .account-signup:hover{color:#351268!important;background:rgba(255,255,255,.92)!important}

/* Muted Cleo material: lavender is an atmospheric cast, never a saturated
   royal-purple slab. The running Vedika films remain the product focus. */
.media-shell:has(.phone-film-frame){background:#918c96!important}
.media-shell:has(.phone-film-frame)>.cover-media{filter:saturate(.58) contrast(.9) brightness(1.04)!important}
.media-shell:has(.phone-film-frame):after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(108deg,rgba(84,96,84,.18),rgba(227,219,236,.12) 52%,rgba(45,37,54,.12))}
.smart .split-media{background:#8d8990!important;background-image:none!important}
.smart .split-media .phone-film-screen{width:min(49%,390px)!important;box-shadow:0 34px 80px rgba(35,29,42,.28),inset 0 0 0 7px rgba(26,22,29,.88)!important}
.reviews{background:#eeeaf0!important}

/* Horizontal rails must never depend on an enlarged hover card that gets
   clipped by the viewport. Cards stay inside their own rounded clip. */
.news-track{padding-left:5.5vw!important;padding-right:5.5vw!important;scroll-padding-inline:5.5vw!important;gap:16px!important}
.news-card,.news-card:hover,.news-card:focus-visible{flex:0 0 560px!important;width:560px!important;max-width:calc(100vw - 11vw)!important;transform:none!important;overflow:hidden!important}
.feature-track{padding-left:6vw!important;padding-right:6vw!important}
.feature-card,.feature-card:hover,.feature-card:focus-within{transform:none!important;overflow:hidden!important}
.feature-card img{animation:practiceDrift 9s cubic-bezier(.45,0,.55,1) infinite alternate;transform-origin:center!important}
.feature-card:nth-child(2) img{animation-delay:-2.2s}.feature-card:nth-child(3) img{animation-delay:-4.4s}.feature-card:nth-child(4) img{animation-delay:-6.6s}
@keyframes practiceDrift{from{transform:scale(1.015) translate3d(-.8%,0,0)}to{transform:scale(1.055) translate3d(.8%,-.8%,0)}}

/* Compact footer lockup: mark and word sit on one baseline inside the shell. */
.footer-main .footer-brand.gg-brand{align-items:center!important;justify-content:flex-start!important;overflow:hidden!important}
.footer-main .footer-brand.gg-brand img{position:static!important;width:27px!important;height:27px!important;flex:0 0 27px!important;object-fit:contain!important;margin:0!important}
.footer-main .footer-brand.gg-brand span{position:static!important;display:block!important;width:auto!important;height:auto!important;margin:0!important;font-size:13px!important;line-height:1!important;white-space:nowrap!important;align-self:center!important}
.footer-main h2{max-width:100%!important;white-space:normal!important;overflow-wrap:normal!important}

@media(max-width:1180px) and (min-width:761px){
  .nav-links{min-width:500px!important;padding-inline:10px!important}
  .nav-links>a{padding-inline:10px;font-size:12px}
  .account-login{display:none!important}
}
@media(max-width:760px){
  .nav-links{min-width:0!important}
  .news-card,.news-card:hover,.news-card:focus-visible{flex-basis:330px!important;width:330px!important;max-width:calc(100vw - 40px)!important}
  .footer-main{height:728px!important;min-height:728px!important}
  .footer-main .footer-brand.gg-brand{padding:0 12px!important;gap:7px!important}
  .footer-main h2{font-size:28px!important;line-height:1.04!important}
}
@media(prefers-reduced-motion:reduce){.feature-card img{animation:none!important;transform:none!important}}

/* Final Home visual corrections from the 1440/390 review. */
.personalized-card .card-copy{
  left:32px!important;
  right:auto!important;
  bottom:32px!important;
  width:min(42%,390px)!important;
  max-width:390px!important;
  padding:18px 20px!important;
  border:1px solid rgba(255,255,255,.32)!important;
  border-radius:24px 24px 24px 7px!important;
  background:rgba(24,51,42,.34)!important;
  box-shadow:0 18px 54px rgba(13,32,25,.2)!important;
  backdrop-filter:blur(15px) saturate(.9)!important;
  -webkit-backdrop-filter:blur(15px) saturate(.9)!important;
}
.personalized-card .card-copy h2{font-size:clamp(22px,2vw,31px)!important;line-height:1.02!important}
.personalized-card .card-copy p{max-width:32ch!important;font-size:14px!important;line-height:1.32!important}

/* Keep the hero chat as neutral glass over the photograph. The two actions
   remain discrete buttons; the old goo merge caused the white figure-eight. */
.community-chat{
  background:rgba(35,30,34,.36)!important;
  border-color:rgba(255,255,255,.46)!important;
  box-shadow:0 28px 78px rgba(18,15,18,.24),inset 0 1px 0 rgba(255,255,255,.24)!important;
  backdrop-filter:blur(20px) saturate(.84)!important;
  -webkit-backdrop-filter:blur(20px) saturate(.84)!important;
}
.community-chat:hover,.community-chat:focus-visible{
  background:rgba(35,30,34,.47)!important;
  box-shadow:0 34px 86px rgba(18,15,18,.3),0 0 0 3px rgba(255,255,255,.12)!important;
}
.community-chat-copy>small{color:rgba(255,255,255,.72)!important}
.community-reply{background:rgba(255,255,255,.11)!important;border-color:rgba(255,255,255,.22)!important}
.community-liquid-actions{gap:8px!important}
.community-liquid-actions .liquid-surface{display:none!important}
.community-chat .community-liquid-actions>.voice-bars,
.community-chat .community-liquid-actions>em{
  display:grid!important;
  place-items:center!important;
  flex:0 0 48px!important;
  width:48px!important;
  height:48px!important;
  border:1px solid rgba(255,255,255,.38)!important;
  background:rgba(255,255,255,.9)!important;
  box-shadow:0 10px 28px rgba(20,15,24,.16)!important;
}
.community-chat .community-liquid-actions>.voice-bars{display:flex!important;align-items:center!important;justify-content:center!important;gap:3px!important}
.community-chat .community-liquid-actions>.voice-bars b{background:#5d4771!important}
.community-chat .community-liquid-actions>em{color:#3b2851!important}

/* Founder framing: Abhishek is the tighter interview crop; Vansh keeps more
   room and background, matching the asymmetric reference pair. */
.editorial-card:first-child img{transform:scale(1.13)!important;object-position:center 43%!important}
.editorial-card:nth-child(2) img{transform:scale(.965)!important;object-fit:contain!important;background:#efede9!important}
.editorial-card:first-child:hover img,.editorial-card:first-child:focus-visible img{transform:scale(1.16)!important}
.editorial-card:nth-child(2):hover img,.editorial-card:nth-child(2):focus-visible img{transform:scale(.985)!important}

/* Hover never changes geometry, so the first/last item cannot be cropped. */
.news-card:hover,.news-card:focus-visible,
.feature-card:hover,.feature-card:focus-within,
.review-card:hover,.review-card:focus-within{translate:none!important}

@media(max-width:760px){
  .personalized-card .card-copy{left:18px!important;right:18px!important;bottom:18px!important;width:auto!important;max-width:none!important;padding:15px 16px!important}
  .personalized-card .card-copy h2{font-size:21px!important}
  .personalized-card .card-copy p{font-size:12px!important}
  .community-chat .community-liquid-actions>.voice-bars,
  .community-chat .community-liquid-actions>em{width:36px!important;height:36px!important}
  .editorial-card:first-child img{transform:scale(1.1)!important;object-position:center 43%!important}
  .editorial-card:nth-child(2) img{transform:scale(.96)!important;object-fit:contain!important}
}
@media(prefers-reduced-motion:reduce){
  .review-card:before,.review-card img,.feature-card img{animation:none!important}
}

/* Relationship story: a compact product preview, not a pasted screenshot.
   The image remains the hero; the glass module gives the second film a clear
   Match -> Timing -> Next step interaction and one restrained direction cue. */
.image-card>img{
  object-position:center 18%!important;
  transform:none!important;
}
.image-card:hover>img,.image-card:focus-within>img{transform:none!important}@media(max-width:760px){
  .image-card>img{
    object-position:center top!important;
    transform:none!important;
  }/* Keep the section label in its own editorial band. It must never sit on
     the first image when the rail is at its left edge. */
  .feature-reel{height:520px!important;min-height:520px!important}
  .feature-label{top:24px!important;left:22px!important;font-size:9px!important}
  .feature-track{height:100%!important;padding-top:72px!important;padding-bottom:24px!important}
  .feature-card,.feature-card:first-child{height:390px!important;min-height:390px!important}
}
@media(prefers-reduced-motion:reduce){}

/* Product stage v2: use the moving GrahaGuru story as the material layer.
   This replaces the faded ambassador collage and the old static app capture. */
.product-art[data-product-art="save"]{
  background:#d8d8cf!important;
}
.product-art[data-product-art="save"]:after{
  content:""!important;
  position:absolute!important;
  z-index:1!important;
  inset:0!important;
  pointer-events:none!important;
  background:linear-gradient(90deg,rgba(26,35,30,.2),transparent 42%,rgba(38,27,46,.12))!important;
}
.product-scene{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.68) contrast(.92) brightness(.94);
  transform:scale(1.015);
  transition:transform 1.1s var(--ease),filter .45s ease;
}
.product-art[data-product-art="save"]:hover .product-scene{
  transform:scale(1.035);
  filter:saturate(.76) contrast(.95) brightness(.96);
}
.real-app-phone{
  z-index:3!important;
  left:9%!important;
  top:158px!important;
  width:min(286px,32%)!important;
  height:auto!important;
  aspect-ratio:1/2.1044;
  padding:6px!important;
  border-radius:48px!important;
  background:#17151a!important;
  box-shadow:0 35px 90px rgba(24,26,24,.3)!important;
  transform:rotate(-1.4deg)!important;
}
.real-app-phone video{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  border-radius:42px;
}
.product-art[data-product-art="save"]:hover .real-app-phone{
  transform:rotate(0) translateY(-6px)!important;
  box-shadow:0 46px 110px rgba(24,26,24,.38)!important;
}
.product-voice-badge{
  z-index:4!important;
  left:31%!important;
  bottom:9%!important;
  background:rgba(249,248,246,.88)!important;
}

/* Reports and tools share one quiet editorial system. */
.reports-art{
  background:radial-gradient(circle at 72% 26%,rgba(214,205,229,.62),transparent 31%),linear-gradient(145deg,#ecece7,#e6e1eb)!important;
}
.report-cover{
  border-color:rgba(61,45,72,.1)!important;
  background:linear-gradient(155deg,#fdfcf9,#f1edf4)!important;
  box-shadow:0 25px 64px rgba(47,39,49,.14)!important;
}
.tools-art{
  gap:12px!important;
  padding:17% 7% 12%!important;
  background:radial-gradient(circle at 53% 40%,rgba(206,196,220,.72),transparent 38%),linear-gradient(145deg,#ecece7,#e8e3ea)!important;
}
.tools-art article{
  min-height:330px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
  padding:26px!important;
  border:1px solid rgba(55,43,65,.1);
  border-radius:34px 34px 34px 8px!important;
  color:#3b2c45!important;
  background-color:rgba(250,249,247,.94)!important;
  background-image:radial-gradient(circle,rgba(112,87,131,.14) 1px,transparent 1.2px)!important;
  background-size:15px 15px!important;
  background-position:12px 12px!important;
  box-shadow:0 24px 60px rgba(47,39,49,.13)!important;
  text-align:left!important;
}
.tools-art article:nth-child(1){--tool-y:10px!important;--tool-r:-2deg!important}
.tools-art article:nth-child(2){--tool-y:-12px!important;--tool-r:1deg!important}
.tools-art article:nth-child(3){--tool-y:8px!important;--tool-r:2deg!important}
.tool-symbol{
  margin:auto 0;
  color:#705783;
  font-family:PPNeue,Arial,sans-serif;
  font-size:74px;
  font-weight:300;
  line-height:1;
  font-style:normal;
  text-shadow:0 12px 34px rgba(74,54,88,.2);
}
.tool-symbol-palm{font-size:86px;transform:rotate(-8deg)}
.tools-art article span{font-size:12px!important;color:#3b2c45!important}
.tools-art article small{margin-top:7px;color:#887b8c;font-size:11px;line-height:1.25}
.tools-art>p{color:#675b6b!important}

/* Tone down the device-film tint so lavender behaves like reflected light,
   not a saturated purple surface. */
.phone-film-frame video,.smart .split-media .phone-film-screen{
  filter:saturate(.68) contrast(.94) brightness(1.02)!important;
}
.media-shell:has(.phone-film-frame){background:#918f91!important}
.smart .split-media{background:#858983!important}

@media(max-width:760px){
  .products .tabs{
    display:flex!important;
    top:14px!important;
    bottom:auto!important;
    left:50%!important;
    width:calc(100% - 28px)!important;
    height:48px!important;
    padding:4px!important;
    transform:translateX(-50%)!important;
    border-radius:999px!important;
    background:rgba(250,249,247,.88)!important;
    box-shadow:0 12px 35px rgba(44,35,48,.12)!important;
    backdrop-filter:blur(16px)!important;
    -webkit-backdrop-filter:blur(16px)!important;
  }
  .products .tabs button{
    flex:1!important;
    min-width:0!important;
    height:40px!important;
    padding:0 5px!important;
    font-size:11px!important;
    line-height:1!important;
  }
  .products .product-dots{display:none!important}
  .product-scene{object-position:61% center}
  .real-app-phone{left:5%!important;top:21%!important;width:min(32%,120px)!important;height:auto!important;border-radius:36px!important}
  .real-app-phone video{border-radius:31px}
  .product-voice-badge{left:auto!important;right:4%!important;bottom:8%!important}
  .tools-art{padding:22% 4% 15%!important;gap:7px!important}
  .tools-art article{min-height:250px;padding:14px 11px!important;border-radius:22px 22px 22px 6px!important}
  .tool-symbol{font-size:44px}.tool-symbol-palm{font-size:52px}
  .tools-art article span{font-size:9px!important}.tools-art article small{font-size:8px}
  .tools-art>p{left:18px!important;right:18px!important;bottom:18px!important;font-size:10px!important;text-align:center!important}
}
@media(prefers-reduced-motion:reduce){
  .product-scene,.real-app-phone,.tools-art article{transition:none!important;transform:none!important}
}

/* Final rail affordances: real review loops and mobile rails that show where
   the next story lives. The Scroll control uses its authored LED SVG below. */
.scroll-orb{width:27px!important;height:27px!important;flex-basis:27px!important}
.reviews{
  background:
    radial-gradient(circle at 18% 66%,rgba(210,198,227,.5),transparent 28%),
    linear-gradient(180deg,#f6f3f8 0%,#eeeaf0 54%,#f7f5f7 100%)!important;
}
.review-controls button{font-size:20px!important;color:#351268!important}
.review-controls button:after{display:none!important;content:none!important}
.review-card video{animation:none!important;mix-blend-mode:multiply!important}

@media(max-width:760px){
  .scroll-cue{gap:9px!important}
  .scroll-orb{width:24px!important;height:24px!important;flex-basis:24px!important}
  .footer-main{height:auto!important;min-height:0!important;padding-bottom:48px!important}
  .editorial{position:relative!important;padding-right:28px!important}
  .editorial-card{flex-basis:calc(100vw - 44px)!important;width:calc(100vw - 44px)!important}
  .feature-reel:after{
    content:"Swipe  \2192";
    position:absolute;
    z-index:6;
    top:64px;
    right:18px;
    padding:9px 13px;
    border:1px solid rgba(53,18,104,.1);
    border-radius:999px;
    background:rgba(255,255,255,.84);
    color:#351268;
    font:400 10px/1 SimplonMono,monospace;
    letter-spacing:.05em;
    text-transform:uppercase;
    pointer-events:none;
  }
}
/* Owned motion pass: three real daily-practice loops, with posters for first
   paint and a portrait founder crop that preserves the approved person. */
.feature-card video{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  transform:scale(1.01)!important;
  transform-origin:center!important;
  transition:transform .7s var(--ease),filter .45s var(--ease)!important;
  filter:saturate(.84) contrast(1.02)!important;
}
.feature-card:hover video,.feature-card:focus-within video{
  transform:scale(1.025)!important;
  filter:saturate(.92) contrast(1.035)!important;
}
.editorial-card:nth-child(2) img{
  object-fit:cover!important;
  object-position:center 48%!important;
  transform:scale(1.015)!important;
  background:#efede9!important;
}
.editorial-card:nth-child(2):hover img,.editorial-card:nth-child(2):focus-visible img{
  transform:scale(1.035)!important;
}
@media(max-width:760px){
  .editorial-card:nth-child(2) img{object-position:center 47%!important;transform:scale(1.01)!important}
}
@media(prefers-reduced-motion:reduce){
  .feature-card video{transform:none!important;transition:none!important}
}

/* Cleo reference scroll-orb parity: render the authored 37-dot LED field.
   A text-arrow fallback altered both the pattern and the measured geometry. */
.scroll-orb{width:37px!important;height:37px!important;flex:0 0 37px!important;border-radius:0!important;background:none!important;mask-image:none!important;filter:none!important;animation:none!important}
.scroll-orb:before,.scroll-orb:after{content:none!important;display:none!important}
.scroll-led{display:block!important;width:37px!important;height:37px!important;overflow:visible!important;filter:none!important;animation:gg-cue-drift 1.7s cubic-bezier(.4,0,.2,1) infinite!important}
.scroll-led circle[data-led="on"]{fill:#fff!important;animation:gg-led-pulse 1.7s ease-in-out infinite!important}
.scroll-led circle[data-led="off"]{fill:rgba(242,233,255,.58)!important}
@media (prefers-reduced-motion:reduce){.scroll-led,.scroll-led circle[data-led="on"]{animation:none!important}}

/* Cleo reference metallic-material parity: measured resting and hover fills,
   vertical cream/grey edge, 6x12 shadow, 200 ms surface change, no scaling. */
.metallic{background:rgba(134,134,134,.1)!important;box-shadow:0 6px 12px rgba(0,0,0,.1)!important;transition:background .2s linear!important;transform:none!important;text-shadow:none!important}
.site-nav .app-button.metallic,.glass-link.metallic,.light-pill.metallic,.store-buttons .metallic,.mobile-app-link.metallic{background:rgba(134,134,134,.1)!important}
.metallic::before{inset:0!important;z-index:0!important;padding:1px!important;border-radius:inherit!important;background:linear-gradient(180deg,#f8f6f2 0%,#868686 41.5%,#f8f6f2 100%)!important;filter:none!important;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;-webkit-mask-composite:xor!important;mask-composite:exclude!important}
.metallic::after{content:none!important}
.metallic:hover,.metallic:focus-visible{background:rgba(238,234,229,.25)!important;box-shadow:0 6px 12px rgba(0,0,0,.1)!important;transform:none!important}
.site-nav .app-button.metallic:hover,.site-nav .app-button.metallic:focus-visible{background:rgba(238,234,229,.25)!important}
.site-nav.is-dark .app-button,.light-pill.metallic{background:rgba(62, 36, 111, .1)!important}
.site-nav.is-dark .app-button,.site-nav.is-dark .app-button>.button-label,.light-pill.metallic,.light-pill.metallic>.button-label{color:#f8f6f2!important}
.site-nav.is-dark .app-button:hover,.site-nav.is-dark .app-button:focus-visible,.light-pill.metallic:hover,.light-pill.metallic:focus-visible{background:rgba(0,0,0,.15)!important}
.button-outline{display:none!important}
.metallic:hover>.button-label>span,.metallic:focus-visible>.button-label>span{animation:none!important}

/* Cleo reference download-CTA parity: restore the measured QR/card and
   store-button bounds after the GrahaGuru content swap enlarged them. */
.download .store-buttons a{height:60px!important;min-height:60px!important}
.download .store-buttons a:first-child{width:170px!important;min-width:170px!important}
.download .store-buttons a:last-child{width:185px!important;min-width:185px!important}
@media(min-width:761px){.download .qr-wrap{left:55.4167vw!important;right:auto!important;width:273px!important;padding:20px!important;--qr-rotate:4deg!important;box-shadow:-40px 90px 90px rgba(172,155,152,.4)!important}.download .qr{width:231px!important}}

/* Cleo reference lower-card parity: editorial imagery stays still on hover.
   The original changes no scale or color treatment on these two cards. */
.editorial-card:first-child:hover img,.editorial-card:first-child:focus-visible img{transform:scale(1.13)!important;filter:none!important}
.editorial-card:nth-child(2):hover img,.editorial-card:nth-child(2):focus-visible img{transform:scale(1.015)!important;filter:none!important}
@media(max-width:760px){.editorial-card:first-child:hover img,.editorial-card:first-child:focus-visible img{transform:scale(1.1)!important;filter:none!important}.editorial-card:nth-child(2):hover img,.editorial-card:nth-child(2):focus-visible img{transform:scale(1.01)!important;filter:none!important}}


/* Ask Vedika toggles: Cleo puts real section media behind every carousel-features panel, not a
   gradient. Panel 1 already did (.product-scene); panels 2 and 3 now use Cleo's own vendored
   section frames. The invented gradient becomes a readability scrim over the media instead of
   replacing it, so our cards keep their contrast. Palette law: scrim in our ink, not Cleo tan. */
.reports-art,
.tools-art { position: relative; overflow: hidden; }
.reports-art > .product-scene,
.tools-art > .product-scene { z-index: 0; filter: saturate(.62) contrast(.9) brightness(.97); }
.reports-art::after,
.tools-art::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(145deg, rgba(248, 246, 242, .82), rgba(238, 234, 229, .74));
  pointer-events: none;
}
.reports-art > *:not(.product-scene),
.tools-art > *:not(.product-scene) { position: relative; z-index: 2; }
@media (prefers-reduced-motion: reduce) {
  .reports-art > .product-scene,
  .tools-art > .product-scene { transition: none; transform: none; }
}

/* ---------------------------------------------------------------------------
   Cosmic-practice rail: the reference `carousel-skew` module, 1:1.

   Geometry is re-derived from the reference design tokens read live at 1440x900
   (columns 8, gutter-outer 32px, gutter-inner 24px). One column is 151px, so
   --slide-width = 2.5col + 1.5gi = 413.5px, --slide-column-gap = 1.25col +
   .25gi = 194.75px, pitch 608.25px, padding-block = .5col - .5gi = 63.5px and
   the centring pad-left = (100% - pitch)/2 = 415.875px. At 390 the mobile
   tokens (columns 4, gutters 16/16) give a 264.5px square card.

   Poses, radius, drag and the centre-only caption match the reference exactly.
   The palette does NOT: the band and the background blob carry our lavender
   (#b29ce0) instead of the reference peach, and dark captions are our ink.
   --------------------------------------------------------------------------- */
.feature-reel {
  position: relative !important;
  height: 620px !important;
  margin-bottom: 8px;
  padding: 0 !important;
  overflow: clip;
  isolation: isolate;
  background: #f8f6f2 !important;
}
.feature-reel:before { display: none !important; }
.feature-reel-bg {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  filter: hue-rotate(238deg) saturate(.9);
  pointer-events: none;
}
.feature-reel .feature-label {
  position: absolute !important;
  z-index: 3;
  top: 104px !important;
  left: 20px !important;
  margin: 0 !important;
  color: #3e246f !important;
  font: 450 10px/1 SimplonMono, ui-monospace, monospace !important;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.feature-reel .feature-track {
  --gg-columns: 4;
  --gg-gutter-outer: 16px;
  --gg-gutter-inner: 16px;
  --gg-column: calc((100vw - var(--gg-gutter-outer) * 2 - var(--gg-gutter-inner) * (var(--gg-columns) - 1)) / var(--gg-columns));
  /* Mobile slide is the reference's 3-column measure, 318px at 390 (SPEC.md
     acceptance). Expressed against the viewport so it tracks 360..430 phones. */
  --slide-width: min(318px, calc(100vw - 72px));
  --slide-column-gap: var(--gg-gutter-inner);
  --slide-pitch: calc(var(--slide-width) + var(--slide-column-gap));
  --slide-pad-block: 54px;
  --slide-radius: 16px;
  --slide-content-pad: 16px;
  --slide-title-size: 16px;
  --slide-title-width: 22ch;
  position: absolute !important;
  z-index: 2;
  top: 168px !important;
  right: 0 !important;
  bottom: auto !important;
  left: 0 !important;
  display: block !important;
  width: 100% !important;
  height: calc(var(--slide-width) + var(--slide-pad-block) * 2) !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  overflow: clip !important;
  overflow-x: clip !important;
  overflow-y: clip !important;
  background: linear-gradient(transparent, rgba(178, 156, 224, .4), transparent) !important;
  transform: none !important;
  transform-style: preserve-3d;
  scroll-snap-type: none !important;
  touch-action: pan-y !important;
  user-select: none;
  -webkit-user-select: none;
  cursor: grab;
}
.feature-reel .feature-track.is-dragging { cursor: grabbing; }
.feature-reel .feature-track:focus-visible { outline: 2px solid #7c3aed; outline-offset: -4px; }
.feature-reel .feature-slide {
  position: absolute;
  top: var(--slide-pad-block);
  left: calc((100% - var(--slide-pitch)) / 2);
  width: var(--slide-pitch);
  padding: 0 calc(var(--slide-column-gap) / 2);
  backface-visibility: hidden;
}
.feature-reel .feature-card,
.feature-reel .feature-card:first-child,
.feature-reel .feature-card.feature-index-0,
.feature-reel .feature-card.feature-index-1,
.feature-reel .feature-card.feature-index-2,
.feature-reel .feature-card.feature-index-3,
.feature-reel .feature-card.feature-index-4 {
  position: relative !important;
  inset: auto !important;
  flex: none !important;
  display: grid !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 1 / 1 !important;
  margin: 0 !important;
  border-radius: var(--slide-radius) !important;
  overflow: clip;
  background: #b29ce0 !important;
  box-shadow: none !important;
  transform-origin: center !important;
  transition: none !important;
}
.feature-reel .feature-card:hover,
.feature-reel .feature-card:focus-within { box-shadow: none !important; }
.feature-reel .feature-card:after { display: none !important; }
.feature-reel .feature-card-asset {
  grid-area: 1 / 1;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: inherit;
  filter: none !important;
  transform: none !important;
  transition: none !important;
  user-select: none;
  -webkit-user-drag: none;
}
.feature-reel .feature-card:hover .feature-card-asset,
.feature-reel .feature-card:focus-within .feature-card-asset {
  transform: none !important;
  filter: none !important;
}
.feature-reel .feature-card-content {
  position: relative !important;
  grid-area: 1 / 1;
  inset: auto !important;
  z-index: 2;
  display: grid !important;
  padding: var(--slide-content-pad) !important;
  isolation: isolate;
  opacity: 0;
}
.feature-reel .feature-card[data-tone="light"] .feature-card-content {
  --led-color-on: #fff;
  --led-color-off: #ffffff4d;
}
.feature-reel .feature-card[data-tone="dark"] .feature-card-content {
  --led-color-on: #2d174c;
  --led-color-off: #2d174c33;
}
.feature-reel .feature-led { width: 20px; height: fit-content; }
.feature-reel .feature-card .feature-card-title {
  align-self: flex-end;
  max-width: var(--slide-title-width);
  margin: 0 !important;
  font-family: PPNeueMontreal, PPNeue, Arial, sans-serif !important;
  font-size: var(--slide-title-size) !important;
  font-weight: 300 !important;
  line-height: 1.2 !important;
  letter-spacing: -.01em;
  text-wrap: pretty;
}
.feature-reel .feature-card[data-tone="light"] .feature-card-title { color: #fff !important; }
.feature-reel .feature-card[data-tone="dark"] .feature-card-title { color: #2d174c !important; }
.feature-reel .feature-card-title mark {
  background: none;
  color: inherit;
  opacity: .8;
}
@media (min-width: 768px) {
  .feature-reel { height: 810px !important; }
  .feature-reel .feature-label {
    top: 160px !important;
    left: 48px !important;
    font-size: 11.9px !important;
  }
  .feature-reel .feature-track {
    --gg-columns: 8;
    --gg-gutter-outer: 32px;
    --gg-gutter-inner: 24px;
    --slide-width: calc(var(--gg-column) * 2.5 + var(--gg-gutter-inner) * 1.5);
    --slide-column-gap: calc(var(--gg-column) * 1.25 + var(--gg-gutter-inner) * .25);
    --slide-pad-block: calc(var(--gg-column) * .5 - var(--gg-gutter-inner) * .5);
    --slide-radius: 40px;
    --slide-content-pad: 40px;
    --slide-title-size: calc(8px + .625vw);
    --slide-title-width: calc(132px + 10.3125vw);
  }
}
@media (prefers-reduced-motion: reduce) {
  .feature-reel-bg { display: none !important; }
  .feature-reel .feature-track { cursor: default; }
}

/* ---------------------------------------------------------------------------
   Report rail (item 13): a true stadium pill, and a peek that reads as a peek.

   The card is 141px tall at 1440 and 139px at 390, so a 64px radius left it
   visibly short of a capsule. `999px` clamps to half the height on both, which
   is what the reference pill geometry is. The mobile fix is two-part: the next
   card starts ~50px inside the viewport instead of ~23px, and the rail gradient
   opens on our lavender rather than near-white so the sliver carries colour.
   --------------------------------------------------------------------------- */
.news-card,
.news-card.peach { border-radius: 999px !important; }
/* The base card is a `120px 1fr` grid with a 88px gap sized for a 912px pill.
   A later rule clamps the pill to 560px, which left 192px for the title and
   collided the uppercase tag with it. Phones already use a stacked column for
   the same reason; desktop now does too, at desktop type sizes. */
.news-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: center !important;
  gap: 12px !important;
  padding: 30px 60px !important;
}
.news-card span { margin-bottom: 0 !important; white-space: nowrap; }
.news-card strong { -webkit-line-clamp: 2; }
@media (max-width: 760px) {
  .news-card { padding: 26px 34px !important; gap: 10px !important; }
  .news-card,
  .news-card:hover,
  .news-card:focus-visible {
    flex-basis: 292px !important;
    width: 292px !important;
    max-width: calc(100vw - 98px) !important;
  }
  .news-card,
  .news-card.peach {
    background: linear-gradient(90deg, #d9ccf7 0%, #b9a2ee 100%) !important;
  }
}

/* ---------------------------------------------------------------------------
   Item 16: the scroll cue is the only interactive control in the pinned hero
   choreography, and at 390 it measured 87.9x37 — under the 44px WCAG 2.5.5 /
   Apple HIG target. The visual lockup (type size, gap, LED orb) is unchanged;
   only the hit area grows, through a pseudo-element so no layout moves.
   --------------------------------------------------------------------------- */
.scroll-cue:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: max(100%, 44px);
  min-height: 44px;
  height: 100%;
  transform: translate(-50%, -50%);
}

/* 2026-09-05 HOME FILM GEOMETRY
   The four films are exported at 860x1864. Keep the visible video plane at
   that measured ratio on every viewport, and keep hover/reduced-motion states
   from moving the device. Hover may deepen the shadow, but not its geometry. */
.phone-film-frame video,
.smart .split-media .phone-film-screen,
.real-app-phone video {
  aspect-ratio: 860 / 1864 !important;
  height: auto !important;
  object-fit: contain!important;
}
.media-shell:hover .phone-film-frame {
  transform: translateX(-50%) !important;
}
.smart .split-media .phone-film-screen,
.smart .split-media:hover .phone-film-screen {
  transform: none !important;
}
.real-app-phone {
  aspect-ratio: 1 / 2.1044 !important;
  height: auto !important;
  transform: none !important;
}
.product-art[data-product-art="save"]:hover .real-app-phone {
  transform: none !important;
}
@media (prefers-reduced-motion: reduce) {
  .phone-film-frame,
  .smart .split-media .phone-film-screen,
  .real-app-phone {
    transition: none !important;
  }
}
