/* Launch storytelling, scoped to the homepage; shared support pages keep their layout. */
.launch { --muted:#75685f; --wrap:1160px; }
.launch .hero {padding:76px 0 70px; overflow:hidden; background:radial-gradient(ellipse at 85% 30%,#ffe1a6 0,transparent 48%);}
.launch .hero__grid {grid-template-columns:1.05fr 1fr;gap:54px;align-items:center;}
.launch h1 {font-size:clamp(2.9rem,5.4vw,4.9rem);line-height:1.18;letter-spacing:-.035em;max-width:11ch; margin:18px 0 24px;}
.launch:lang(zh) h1 {line-height:1.32;letter-spacing:0;}
.launch h1 em {font-style:normal;color:#a64230;}
.launch .lede {color:#65574d;max-width:49ch;}
.eyebrow {font-size:.8rem;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:#885224;}
.hero-art {position:relative;min-height:620px;display:grid;place-items:center;}
.hero-art::before {content:'';position:absolute;width:470px;height:470px;background:#efb84b;border-radius:50%;opacity:.45;}
.launch .hero-art .phone {width:278px;transform:rotate(5deg);border:7px solid #fff;border-radius:35px;box-shadow:0 28px 65px #56351130;position:relative;z-index:1;}
.launch .phone__screen {border-radius:27px;overflow:hidden;}
.launch .phone img {display:block;width:100%;height:auto;}
.launch .hero__note {font-size:.85rem;color:#75685f;}

.launch .section {padding:80px 0;}
/* Carry the hero into setup without a separate banner or a large gap. */
.launch .hero + #how {padding-top:clamp(24px,4vw,56px);}
.launch h2 {font-size:clamp(2rem,3.5vw,3rem);line-height:1.15;letter-spacing:-.02em;}
.launch .steps {gap:30px;margin-top:36px;}
.launch .step {background:transparent;border:0;box-shadow:none;padding:0;}
.launch .step__num {background:#f5cb69;color:#503822;border-radius:14px;width:44px;height:44px;}
.story-heading {display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:34px;}
.story-heading p {max-width:34ch;color:#75685f;}
.story-tabs {display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px;}
.story-tabs button {font:inherit;font-size:.9rem;font-weight:800;border:1px solid #ddcebd;border-radius:99px;background:transparent;padding:10px 20px;color:#65574d;cursor:pointer;}
.story-tabs button[aria-selected=true] {background:#38302a;color:#fff;border-color:#38302a;}
.story-track {display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:22px;scrollbar-width:thin;padding:0 0 18px;}
.story-card {flex:0 0 100%;scroll-snap-align:start;display:grid;grid-template-columns:1fr 1fr;align-items:center;border-radius:32px;background:#f4dfb9;min-height:570px;overflow:hidden;}
.story-card:nth-child(2) {background:#d9eee1;}.story-card:nth-child(3) {background:#e0e5f5;}.story-card:nth-child(4) {background:#f3dacf;}
.story-copy {padding:48px;}.story-copy h3 {font-size:clamp(2rem,3vw,2.8rem);line-height:1.12;margin:15px 0;}.story-copy p {max-width:34ch;}
.story-art {align-self:stretch;display:flex;justify-content:center;align-items:flex-start;padding:40px 30px 0;max-height:580px;overflow:hidden;}
.story-art img {width:280px;max-width:100%;height:auto;border-radius:24px 24px 0 0;box-shadow:0 20px 40px #3c302826;display:block;}
.feature-mosaic {display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px;}
.feature-mosaic article {padding:30px;background:#fff;border:1px solid #eee2d7;border-radius:24px;}
.feature-mosaic h3 {margin:12px 0 10px;}.feature-mosaic p {margin:0;color:#75685f;font-size:1rem;}
.feature-symbol {font-size:1.8rem;}
.launch-faq {display:grid;grid-template-columns:1fr 1fr;gap:0 34px;margin-top:30px;}
.launch-faq details {border-bottom:1px solid #dbcdbf;padding:20px 0;}.launch-faq summary {font-weight:800;cursor:pointer;}.launch-faq p {color:#65574d;}
.launch-cta {padding:54px;border-radius:32px;background:#38302a;color:#fff;text-align:center;}.launch-cta p {color:#eee0cd;max-width:52ch;margin:20px auto;}.launch-cta h2 {color:#fff;}
.launch a:focus-visible,.launch button:focus-visible,.launch summary:focus-visible {outline:3px solid #a64230;outline-offset:5px;}
@media(prefers-reduced-motion:no-preference) {.hero-art .phone{animation:arrive .8s ease-out both;} @keyframes arrive {from{opacity:0;translate:0 22px;}to{opacity:1;translate:0 0;}}}
@media(max-width:760px) {.launch .hero{padding:36px 0;}.launch .hero__grid{grid-template-columns:1fr;gap:10px;}.launch h1{max-width:14ch;font-size:clamp(2.5rem,13vw,3.35rem);}.hero-art{min-height:560px;}.hero-art::before{width:340px;height:340px;}.launch .hero-art .phone{width:235px;}.launch .section{padding:48px 0;}.story-heading{display:block;}.story-card{grid-template-columns:1fr;min-height:0;}.story-copy{padding:28px;}.story-art{max-height:390px;padding:8px 20px 0;}.story-art img{width:260px;}.feature-mosaic{grid-template-columns:1fr;gap:12px;}.feature-mosaic article{padding:24px;}.launch-faq{grid-template-columns:1fr;}.launch-cta{padding:32px 22px;}.story-tabs{gap:8px;}.story-tabs button{padding:9px 14px;font-size:.85rem;}}

/* Motion belongs to the real screens; never place callouts over app content. */
.launch .hero-art .phone {transform:translateY(var(--screen-lift,0px)) rotate(var(--screen-turn,5deg));}
.launch h1 {max-width:15ch;}
@media(prefers-reduced-motion:no-preference) {
  .story-art img {transform:translateY(28px) rotate(3deg) scale(.96);transition:transform .75s cubic-bezier(.22,1,.36,1);transform-origin:50% 85%;}
  .story-card.is-active .story-art img {transform:translateY(0) rotate(0) scale(1);}
  .story-track.has-arrived .story-card.is-active .story-art img {animation:screen-arrive .85s cubic-bezier(.22,1,.36,1) both;}
  .feature-mosaic article.has-arrived,.step.has-arrived {animation:content-arrive .55s ease-out both;}
  .story-tabs button {transition:background .2s,color .2s;}
  @keyframes screen-arrive {from{transform:translateY(50px) rotate(5deg) scale(.94);}to{transform:translateY(0) rotate(0) scale(1);}}
  @keyframes content-arrive {from{opacity:.5;translate:0 18px;}to{opacity:1;translate:0 0;}}
}
@media(prefers-reduced-motion:reduce) {
  .launch .hero-art .phone {transform:rotate(5deg);}
  .story-track {scroll-behavior:auto;}
}

/* Anonymous, source-backed early feedback, separate from product claims. */
.launch .testimonials {background:#fff8ec;border-block:1px solid #eee2d7;}
.testimonials__note {max-width:70ch;color:#75685f;font-size:.9rem;margin-top:18px;}
#testimonials-title {scroll-margin-top:120px;}
.testimonial-track {display:flex;gap:18px;overflow-x:auto;margin-top:30px;scrollbar-width:none;mask-image:linear-gradient(to right,transparent,#000 18px,#000 calc(100% - 18px),transparent);}
.tester-quote {box-sizing:border-box;flex:0 0 clamp(250px,30vw,310px);margin:0;padding:26px;background:#fff;border:1px solid #eee2d7;border-radius:20px;display:flex;flex-direction:column;justify-content:center;align-items:stretch;}
.tester-quote blockquote {margin:0;}
.tester-quote blockquote p {margin:0;font-size:1rem;line-height:1.7;color:#38302a;}
.testimonial-controls:not([hidden]) {display:flex;align-items:center;justify-content:center;gap:14px;margin-top:22px;}
.testimonial-controls button {font:inherit;font-size:.85rem;font-weight:700;min-width:44px;min-height:44px;padding:8px 16px;border:1px solid #ddcebd;border-radius:99px;background:#fff;color:#38302a;cursor:pointer;}
.testimonial-track::-webkit-scrollbar {display:none;}

.story-card--widget {grid-template-columns:1fr;background:#e2edf5;}
.story-card--widget .story-copy {padding-bottom:24px;}
.story-card--widget .story-copy p {max-width:64ch;}
.story-card--widget .story-art {padding:0 32px 36px;max-height:none;}
.story-card--widget .story-art img {width:100%;max-width:780px;border-radius:20px;}
@media(max-width:760px) {.story-card--widget .story-art{padding:0 16px 24px;}}

.platform-downloads {display:flex;flex-wrap:wrap;gap:12px;justify-content:inherit;}
.platform-download {gap:10px;}
.platform-download svg {width:22px;height:24px;flex:none;--platform-eye:#dc6050;}
.launch-cta .platform-downloads {justify-content:center;}


.language-picker {position:relative;text-align:left;font-size:.9rem;}
.language-picker summary {display:flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:1px solid #e7d9ce;border-radius:24px;cursor:pointer;list-style:none;background:#fff;}
.language-picker summary::-webkit-details-marker {display:none;}
.language-picker__menu {position:absolute;right:0;top:calc(100% + 8px);min-width:150px;padding:6px;background:#fff;border:1px solid #e7d9ce;border-radius:16px;box-shadow:0 8px 24px #302a241a;z-index:100;}
.language-picker__menu a {display:block;padding:12px;border-radius:10px;}
.language-picker__menu a:hover,.language-picker__menu a[aria-current] {background:#fbf3e9;}


.platform-label-short {display:none;}
@media(max-width:760px) {
  .site-header .nav>.btn {display:none;}
  .site-header>.wrap {gap:12px;}
  .site-header .nav {flex:0 0 auto;}
  .platform-downloads {gap:10px;}
  .platform-download {min-height:46px;padding:0 20px;font-size:.95rem;gap:8px;}
  .platform-download svg {width:20px;height:22px;}
  .platform-label-full {display:none;}
  .platform-label-short {display:inline;}
  .hero__copy .btn-row {gap:8px 16px;}
  .hero__copy .btn-row>.btn--ghost {min-height:44px;padding:0;background:none;border:0;box-shadow:none;text-decoration:underline;text-underline-offset:4px;font-size:.95rem;}
}
