.ann{background:var(--teal);color:var(--cream);font-size:12px;text-align:center;padding:9px 16px}
.ann a{color:var(--lilac);text-decoration:none}.ann a:hover{text-decoration:underline;color:#fff}
.h2-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:clamp(32px,5vw,72px);align-items:center;padding:clamp(40px,6vw,88px) 0 clamp(56px,7vw,96px)}
@media(max-width:900px){.h2-hero{grid-template-columns:1fr}}
.echo{font-family:var(--sans);font-weight:500;font-size:clamp(56px,8.4vw,120px);line-height:.95;letter-spacing:-.05em;color:var(--ink)}
.echo span{display:block}
.echo .e1{opacity:.12}.echo .e2{opacity:.28}.echo .e3{opacity:.55}
.echo .last{font-size:clamp(34px,4.4vw,60px);line-height:1.05;margin-top:14px;font-style:italic;color:var(--ink);opacity:1}
.phone{position:relative;width:min(340px,100%);margin:0 auto;aspect-ratio:9/18.5;border-radius:44px;background:var(--dark);padding:12px;box-shadow:var(--sh2)}
.phone-in{position:relative;width:100%;height:100%;border-radius:34px;overflow:hidden;background:var(--bg)}
.phone-in image-slot{position:absolute;inset:0}
.bubbles{position:absolute;left:14px;right:14px;bottom:86px;display:flex;flex-direction:column;gap:8px;pointer-events:none}
.bub{align-self:flex-start;max-width:82%;background:#fff;border-radius:16px 16px 16px 4px;padding:10px 14px;font-size:12.5px;line-height:1.45;color:var(--ink);box-shadow:0 4px 18px rgba(35,39,31,.08);animation:bub .5s ease both}
.bub.me{align-self:flex-end;background:var(--teal);color:#fff;border-radius:16px 16px 4px 16px}
@keyframes bub{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
.phone-bar{position:absolute;left:14px;right:14px;bottom:16px;display:flex;gap:8px;align-items:center;justify-content:center;pointer-events:none}
.phone-bar span{width:44px;height:44px;border-radius:50%;background:#fff;display:grid;place-items:center;color:var(--green);box-shadow:0 4px 18px rgba(35,39,31,.08)}
.phone-bar span.end{background:var(--green);color:var(--cream);width:auto;padding:0 18px;border-radius:24px;font-size:12px;font-weight:500}
.mini-orb{position:absolute;top:22px;left:50%;transform:translateX(-50%);width:64px;height:64px;pointer-events:none}
.mini-orb::before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--lilac);opacity:.8;animation:breath 5.5s ease-in-out infinite}
.mini-orb::after{content:"";position:absolute;inset:8px;border-radius:50%;border:2px solid var(--plum);animation:ring 1.6s ease-in-out infinite}
.trust-row{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;padding:8px 0 clamp(48px,6vw,80px)}
.faces{display:flex}.faces>*{width:40px;height:40px;border-radius:50%;border:2px solid var(--bg);margin-left:-10px;overflow:hidden;background:var(--bg2);display:grid;place-items:center;font-family:var(--serif);font-size:15px;color:var(--ink3);flex:none}
.faces>*:first-child{margin-left:0}
.feat{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,96px);align-items:center;padding:clamp(64px,9vw,128px) 0}
.feat.rev>:first-child{order:2}
@media(max-width:900px){.feat{grid-template-columns:1fr}.feat.rev>:first-child{order:0}}
.feat h2{font-family:var(--sans);font-weight:500;letter-spacing:-.035em;font-size:clamp(34px,4.2vw,56px);line-height:1.1;text-wrap:balance}.feat h2 em,.final h2 em,.echo em{font-family:var(--serif);font-weight:400;letter-spacing:-.01em}
.stage{position:relative;border-radius:28px;background:var(--bg2);aspect-ratio:1/1.05;overflow:hidden}
.stage>image-slot{position:absolute;inset:0}
.float-card{position:absolute;background:#fff;border-radius:14px;padding:16px 18px;box-shadow:0 12px 40px rgba(35,39,31,.12);pointer-events:auto}
.marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.marquee-t{display:flex;gap:8px;width:max-content;animation:mq 40s linear infinite}
.marquee.rev .marquee-t{animation-direction:reverse;animation-duration:48s}
.marquee:hover .marquee-t{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-50%)}}
.orbit{position:relative;aspect-ratio:1;width:100%;max-width:520px;margin:0 auto}
.orbit .ring{position:absolute;border:1px dashed var(--border);border-radius:50%}
.orbit .node{position:absolute;width:64px;height:64px;border-radius:50%;overflow:hidden;background:#fff;border:3px solid var(--bg);box-shadow:var(--sh2);display:grid;place-items:center;font-family:var(--serif);font-size:20px;color:var(--ink3);transform:translate(-50%,-50%)}
.orbit .node.lg{width:88px;height:88px}
.big-free{text-align:center;padding:clamp(72px,10vw,140px) 0}
.big-free .n{font-family:var(--serif);font-weight:300;font-size:clamp(120px,22vw,300px);line-height:1;margin-top:8px;color:var(--green);letter-spacing:-.04em}
.vids{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,1fr);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:6px}
.vids::-webkit-scrollbar{display:none}
.vid{scroll-snap-align:start;position:relative;aspect-ratio:9/14;border-radius:18px;overflow:hidden;background:var(--bg2)}
.vid>image-slot{position:absolute;inset:0}
.vid-cap{position:absolute;left:12px;right:12px;bottom:12px;background:rgba(255,255,255,.94);border-radius:12px;padding:10px 14px;pointer-events:none}
.vid-play{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.94);display:grid;place-items:center;color:var(--green);pointer-events:none}
.quote-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:16px;scroll-snap-align:start}
.fund-slots .slot-t{flex:none;width:180px;height:64px;border:1.5px dashed var(--border);border-radius:12px;display:grid;place-items:center;font-size:11px;color:var(--ink3);background:rgba(255,255,255,.4)}
.faq{border-top:1px solid var(--border)}
.faq button{display:flex;width:100%;justify-content:space-between;align-items:center;gap:16px;background:none;border:0;padding:22px 0;text-align:left;font-family:var(--serif);font-size:clamp(20px,2vw,24px);color:var(--green)}
.faq p{padding:0 0 24px;max-width:680px}
.final{border-radius:24px;background:var(--dark);color:var(--cream);padding:clamp(48px,8vw,112px) clamp(24px,5vw,72px);text-align:center;position:relative;overflow:hidden}
.final h2{font-family:var(--sans);font-weight:500;letter-spacing:-.045em;font-size:clamp(44px,7vw,96px);line-height:1.06}
.final em{color:var(--pink)}
.final .btn{background:var(--pink);color:var(--ink);border-color:var(--pink)}.final .btn:hover{background:#fff;color:var(--ink)}
.steps3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media(max-width:760px){.steps3{grid-template-columns:1fr}}
.step-v{display:flex;flex-direction:column;gap:14px}
.step-v .ph{aspect-ratio:4/3;border-radius:16px;overflow:hidden;background:var(--bg2);position:relative}
.step-v .ph image-slot{position:absolute;inset:0}
