*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
  :root {
    --paper:#F9FAFB; --paper-2:#F1ECF0; --ink:#0C0E11; --ink-2:#0b0c11;
    --pink:#ff66c4; --pink-deep:#c01e83; --pink-ink:#7a0d54; --pink-light:#ff8fd4;
    --muted:#5B6470; --muted-d:#9aa3b2; --line:rgba(12,14,17,0.1); --line-soft:rgba(12,14,17,0.06); --wa:#25D366;
    --display:'Inter',sans-serif; --sans:'Inter',sans-serif;
    --dot:radial-gradient(circle, rgba(12,14,17,0.05) 1px, transparent 1.5px);
  }
  html { scroll-behavior:smooth; }
  /* Desktop density: base 12px = the "75% zoom" look; mobile keeps 16px for readability */
  @media (min-width:941px) { html { font-size:12px; } .os-stage { zoom:.75; } }
  body { font-family:var(--sans); background:var(--paper); color:var(--ink); font-size:1rem; line-height:1.6; overflow-x:hidden; -webkit-font-smoothing:antialiased; }
  ::selection { background:var(--pink); color:#fff; }
  .wrap { max-width:1005px; margin:0 auto; }
  img { max-width:100%; display:block; }

  /* SCROLL RAIL */
  .scroll-rail { position:fixed; left:0; top:0; height:3px; width:100%; z-index:200; background:transparent; }
  .scroll-fill { height:100%; width:0; background:linear-gradient(90deg,var(--pink-deep),var(--pink)); box-shadow:0 0 12px rgba(255,102,196,.5); }

  /* NAV */
  nav { position:fixed; top:0; left:0; right:0; z-index:100; display:flex; align-items:center; justify-content:space-between; padding:1.1rem 3rem; background:rgba(249,250,251,0.72); backdrop-filter:blur(14px); border-bottom:1px solid var(--line); transition:padding .3s ease, box-shadow .3s ease, background .3s ease; }
  nav.scrolled { padding-top:.65rem; padding-bottom:.65rem; box-shadow:0 4px 24px rgba(12,14,17,0.06); background:rgba(249,250,251,0.9); }
  .nav-logo { display:flex; align-items:center; text-decoration:none; opacity:0; animation:fadeUp .6s ease .1s forwards; }
  .nav-logo img { height:20px; width:auto; display:block; transition:transform .3s ease; }
  .nav-logo:hover img { transform:scale(1.05); }
  .nav-links { display:flex; gap:2.25rem; list-style:none; }
  .nav-links a { font-size:.85rem; color:var(--muted); text-decoration:none; transition:color .2s; position:relative; }
  .nav-links a::after { content:''; position:absolute; left:0; bottom:-4px; width:0; height:1.5px; background:var(--pink); transition:width .25s ease; }
  .nav-links a:hover, .nav-links a.active { color:var(--ink); }
  .nav-links a.active::after { width:100%; }
  .nav-cta { font-size:.85rem; font-weight:500; background:var(--pink-deep); color:#fff; padding:.6rem 1.3rem; border-radius:10px; text-decoration:none; transition:background .2s, transform .15s, box-shadow .2s; box-shadow:0 6px 18px -6px rgba(192,30,131,.6); }
  .nav-cta:hover { background:var(--pink-ink); transform:translateY(-2px); box-shadow:0 10px 26px -6px rgba(192,30,131,.7); }

  /* HERO */
  .hero { position:relative; min-height:100vh; display:grid; grid-template-columns:1.05fr 0.95fr; align-items:center; gap:3rem; padding:9rem 3rem 4rem; max-width:1005px; margin:0 auto; background-image:var(--dot); background-size:26px 26px; overflow:hidden; }
  .blob { position:absolute; border-radius:50%; filter:blur(70px); opacity:.5; z-index:0; pointer-events:none; }
  .blob.b1 { width:320px; height:320px; background:radial-gradient(circle,rgba(255,102,196,.35),transparent 70%); top:-60px; right:-40px; animation:drift1 14s ease-in-out infinite; }
  .blob.b2 { width:260px; height:260px; background:radial-gradient(circle,rgba(255,143,212,.28),transparent 70%); bottom:-40px; left:10%; animation:drift2 18s ease-in-out infinite; }
  @keyframes drift1 { 0%,100%{ transform:translate(0,0);} 50%{ transform:translate(-40px,50px);} }
  @keyframes drift2 { 0%,100%{ transform:translate(0,0);} 50%{ transform:translate(50px,-30px);} }
  .hero-left { position:relative; z-index:2; max-width:580px; }
  .hero-tag { display:inline-flex; align-items:center; gap:.55rem; font-size:.78rem; font-weight:500; color:var(--pink-deep); background:rgba(255,102,196,0.12); padding:.4rem .9rem; border-radius:100px; margin-bottom:1.75rem; opacity:0; animation:fadeUp .6s ease .05s forwards; }
  .hero-tag .live { width:7px; height:7px; border-radius:50%; background:var(--pink); box-shadow:0 0 0 0 rgba(255,102,196,.6); animation:pulseDot 2s ease-out infinite; }
  @keyframes pulseDot { 0%{ box-shadow:0 0 0 0 rgba(255,102,196,.6);} 70%{ box-shadow:0 0 0 8px rgba(255,102,196,0);} 100%{ box-shadow:0 0 0 0 rgba(255,102,196,0);} }
  @keyframes fadeUp { from{ opacity:0; transform:translateY(12px);} to{ opacity:1; transform:none;} }
  .hero h1 { font-family:var(--display); font-weight:700; font-size:clamp(2.9rem,6.2vw,5.4rem); line-height:1.02; letter-spacing:-.03em; color:var(--ink); }
  .hero h1 .w { display:inline-block; opacity:0; transform:translateY(20px) rotate(2deg); animation:wordIn .7s cubic-bezier(.16,1,.3,1) forwards; }
  .hero h1 em { font-style:normal; background:linear-gradient(120deg,var(--pink-deep),var(--pink)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
  @keyframes wordIn { to{ opacity:1; transform:none;} }
  .hero-sub { font-size:1.1rem; font-weight:300; color:var(--muted); margin-top:1.75rem; max-width:460px; line-height:1.75; opacity:0; animation:fadeUp .6s ease .9s forwards; }
  .hero-actions { display:flex; align-items:center; gap:.85rem; margin-top:2.25rem; flex-wrap:wrap; opacity:0; animation:fadeUp .6s ease 1.05s forwards; }

  .btn-primary { font-family:var(--sans); font-size:.9rem; font-weight:500; background:var(--ink); color:var(--paper); padding:.95rem 1.9rem; border-radius:12px; text-decoration:none; display:inline-flex; align-items:center; gap:.5rem; border:none; cursor:pointer; transition:background .2s, transform .15s; }
  .btn-primary:hover { background:#23262b; transform:translateY(-2px); }
  .btn-primary .arr { transition:transform .2s; }
  .btn-primary:hover .arr { transform:translateX(4px); }
  .btn-whatsapp { font-family:var(--sans); font-size:.9rem; font-weight:500; color:var(--ink); padding:.95rem 1.5rem; border:1px solid var(--line); border-radius:12px; text-decoration:none; display:inline-flex; align-items:center; gap:.5rem; transition:border-color .2s, color .2s; background:#fff; }
  .btn-whatsapp:hover { border-color:var(--wa); color:#1FAF53; }
  .btn-whatsapp svg { width:16px; height:16px; }

  /* HERO DIAGRAM */
  .hero-visual { position:relative; z-index:2; opacity:0; animation:fadeUp .7s ease .3s forwards, floaty 7s ease-in-out 1.4s infinite; }
  @keyframes floaty { 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(-12px);} }
  .routing { width:100%; height:auto; overflow:visible; }
  .route-path { fill:none; stroke:var(--pink); stroke-width:1.6; stroke-linecap:round; opacity:.35; stroke-dasharray:760; stroke-dashoffset:760; animation:draw 1.4s cubic-bezier(.16,1,.3,1) .3s forwards; }
  .route-path.p2 { animation-delay:.48s; } .route-path.p3 { animation-delay:.66s; } .route-path.p4 { animation-delay:.84s; }
  @keyframes draw { to{ stroke-dashoffset:0; } }
  .flow-dot { fill:var(--pink); filter:drop-shadow(0 0 3px rgba(255,102,196,.8)); }
  .src-node { opacity:0; animation:pop .5s ease forwards; transform-box:fill-box; }
  .src-node.s1 { animation-delay:.4s; } .src-node.s2 { animation-delay:.58s; } .src-node.s3 { animation-delay:.76s; } .src-node.s4 { animation-delay:.94s; }
  @keyframes pop { from{ opacity:0; transform:translateX(-10px);} to{ opacity:1; transform:translateX(0);} }
  .src-chip { fill:#fff; stroke:var(--line); stroke-width:1; filter:drop-shadow(0 6px 16px rgba(12,14,17,.06)); }
  .src-badge { fill:rgba(255,102,196,0.14); }
  .src-label { font-family:var(--sans); font-size:13px; font-weight:600; fill:var(--ink); }
  .src-glyph { font-size:16px; }
  .hub-ring { fill:none; stroke:var(--pink); stroke-width:1.5; opacity:0; transform-origin:390px 210px; transform-box:view-box; }
  .hub-ring.r1 { animation:ring 2.6s ease-out 1.2s infinite; }
  .hub-ring.r2 { animation:ring 2.6s ease-out 2.1s infinite; }
  @keyframes ring { 0%{ opacity:.55; transform:scale(.55);} 70%,100%{ opacity:0; transform:scale(1.7);} }
  .hub-core { fill:url(#hubGrad); opacity:0; animation:pop .6s ease 1.15s forwards; filter:drop-shadow(0 10px 30px rgba(255,102,196,.5)); }
  .hub-label { font-family:var(--display); font-size:14px; font-weight:700; fill:#fff; opacity:0; animation:pop .5s ease 1.3s forwards; }
  .hub-sub { font-family:var(--sans); font-size:11px; font-weight:400; fill:rgba(255,255,255,.85); opacity:0; animation:pop .5s ease 1.4s forwards; }

  /* MARQUEE */
  .marquee { border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft); background:#fff; overflow:hidden; padding:1.1rem 0; }
  .marquee-track { display:flex; gap:3.5rem; width:max-content; animation:scrollx 26s linear infinite; }
  .marquee-item { display:flex; align-items:center; gap:.6rem; font-family:var(--display); font-weight:500; font-size:.92rem; color:var(--muted); white-space:nowrap; }
  .marquee-item b { color:var(--pink-deep); }
  .marquee-item::before { content:''; width:6px; height:6px; border-radius:50%; background:var(--pink); }
  @keyframes scrollx { to{ transform:translateX(-50%); } }

  /* SECTIONS */
  section { padding:7rem 3rem; }
  .section-tag { display:inline-flex; align-items:center; gap:.55rem; font-size:.78rem; font-weight:500; letter-spacing:.08em; text-transform:uppercase; color:var(--pink-deep); margin-bottom:1.1rem; }
  .section-tag::before { content:''; width:18px; height:1.5px; background:var(--pink); }
  .section-title { font-family:var(--display); font-weight:700; font-size:clamp(2.1rem,4.6vw,3.9rem); line-height:1.04; letter-spacing:-.03em; color:var(--ink); }
  .section-title em { font-style:normal; color:var(--pink-deep); }

  /* PAIN / EMPATHY */
  #pain { background-color:var(--paper-2); background-image:var(--dot); background-size:24px 24px; }
  .pain-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:3.5rem; }
  .pain-card { background:#fff; border:1px solid var(--line); border-radius:16px; padding:1.9rem; transition:transform .3s cubic-bezier(.16,1,.3,1), box-shadow .3s, border-color .3s; }
  .pain-card:hover { transform:translateY(-4px); box-shadow:0 18px 42px rgba(12,14,17,.07); border-color:rgba(255,102,196,.3); }
  .pain-ic { width:40px; height:40px; border-radius:12px; background:rgba(255,102,196,.12); display:flex; align-items:center; justify-content:center; font-size:18px; }
  .pain-card h3 { font-family:var(--display); font-weight:600; font-size:1.08rem; color:var(--ink); margin:.95rem 0 .45rem; }
  .pain-card p { font-size:.85rem; font-weight:300; color:var(--muted); line-height:1.7; }
  .pain-out { text-align:center; margin-top:3.25rem; }
  .pain-out .line { font-family:var(--display); font-weight:600; font-size:clamp(1.15rem,2vw,1.5rem); color:var(--ink); }
  .pain-out .line em { font-style:normal; color:var(--pink-deep); }
  .pain-out p { font-size:.9rem; font-weight:300; color:var(--muted); margin-top:.5rem; }

  /* TESTIMONIALS */
  #testi { background:var(--paper); }
  .testi-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:3.5rem; }
  .testi-card { background:#fff; border:1px solid var(--line); border-radius:18px; padding:2rem; display:flex; flex-direction:column; transition:transform .3s cubic-bezier(.16,1,.3,1), box-shadow .3s; }
  .testi-card:hover { transform:translateY(-4px); box-shadow:0 20px 46px rgba(12,14,17,.07); }
  .testi-head { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:.15rem; }
  .tp-stars { display:flex; gap:2px; }
  .tp-stars span { width:17px; height:17px; background:#00B67A; display:flex; align-items:center; justify-content:center; }
  .tp-stars svg { width:11px; height:11px; fill:#fff; }
  .tp-logo { display:flex; align-items:center; gap:5px; flex-shrink:0; }
  .tp-logo svg { width:13px; height:13px; fill:#00B67A; }
  .tp-logo span { font-size:.72rem; font-weight:600; color:var(--ink); letter-spacing:-.01em; }
  .tp-readall { display:inline-flex; align-items:center; gap:6px; margin-top:1rem; font-size:.88rem; font-weight:500; color:var(--muted); text-decoration:none; transition:color .2s; }
  .tp-readall svg { width:16px; height:16px; fill:#00B67A; margin-left:2px; }
  .tp-readall span { font-weight:600; color:var(--ink); }
  .tp-readall:hover { color:var(--ink); }
  .tp-readall:hover span { color:#00B67A; }
  .testi-quote { font-size:.95rem; font-weight:300; color:#374151; line-height:1.75; margin:.9rem 0 1.4rem; }
  .testi-foot { margin-top:auto; display:flex; align-items:center; gap:.75rem; border-top:1px solid var(--line-soft); padding-top:1.1rem; }
  .testi-ava { width:38px; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-family:var(--display); font-weight:700; font-size:.85rem; color:#fff; flex-shrink:0; overflow:hidden; background:#f1f2f4; }
  .testi-ava img { width:100%; height:100%; object-fit:cover; display:block; pointer-events:none; user-select:none; -webkit-user-select:none; -webkit-touch-callout:none; -webkit-user-drag:none; }
  .testi-name b { display:block; font-size:.88rem; font-weight:600; color:var(--ink); }
  .testi-name span { font-size:.72rem; color:var(--muted); }
  .testi-badge { margin-left:auto; font-size:.62rem; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--pink-deep); background:rgba(255,102,196,.1); padding:.3rem .6rem; border-radius:100px; white-space:nowrap; }
  .stagger.visible > *:nth-child(5){ transition-delay:.32s; }
  .stagger.visible > *:nth-child(6){ transition-delay:.4s; }

  /* INSTAGRAM */
  #ig { background-color:var(--paper-2); background-image:var(--dot); background-size:24px 24px; }
  .ig-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:3.5rem; }
  .ig-card { background:#fff; border:1px solid var(--line); border-radius:18px; overflow:hidden; transition:transform .3s cubic-bezier(.16,1,.3,1), box-shadow .3s; }
  .ig-card:hover { transform:translateY(-5px); box-shadow:0 22px 50px rgba(12,14,17,.09); }
  .ig-head { display:flex; align-items:center; gap:.6rem; padding:.85rem 1rem; }
  .ig-ava { width:28px; height:28px; border-radius:50%; background:#fff; border:1px solid var(--line); overflow:hidden; flex-shrink:0; }
  .ig-ava img { width:100%; height:100%; object-fit:cover; }
  .ig-head b { font-size:.78rem; font-weight:600; color:var(--ink); }
  .ig-verified { width:13px; height:13px; flex-shrink:0; margin-left:-2px; }
  .ig-multi { margin-left:auto; font-size:.9rem; color:var(--muted); }
  .ig-slides { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; aspect-ratio:4/5; background:var(--paper-2); }
  .ig-slides::-webkit-scrollbar { display:none; }
  .ig-slide { flex:0 0 100%; scroll-snap-align:start; position:relative; display:flex; align-items:center; justify-content:center; }
  .ig-slide::before { content:attr(data-file); position:absolute; font-size:.72rem; color:var(--muted); text-align:center; padding:1rem; }
  .ig-slide img { position:relative; width:100%; height:100%; object-fit:cover; z-index:1; }
  .ig-foot { display:flex; align-items:center; padding:.75rem 1rem .9rem; gap:.6rem; }
  .ig-dots { display:flex; gap:5px; }
  .ig-dots i { width:6px; height:6px; border-radius:50%; background:var(--line); transition:background .2s; }
  .ig-dots i.on { background:var(--pink-deep); }
  .ig-view { margin-left:auto; font-family:var(--display); font-weight:600; font-size:.78rem; color:var(--pink-deep); text-decoration:none; }
  .ig-view:hover { text-decoration:underline; text-underline-offset:3px; }
  .ig-cta { text-align:center; margin-top:2.75rem; }
  @media (max-width:940px){ .pain-grid, .testi-grid, .ig-grid { grid-template-columns:1fr; } }

  /* DARK STATS BAND */
  #metrics { background:var(--ink-2); color:#fff; position:relative; overflow:hidden; }
  #metrics::before { content:''; position:absolute; inset:0; background:radial-gradient(600px circle at 80% 0%, rgba(255,102,196,.16), transparent 60%), radial-gradient(500px circle at 0% 100%, rgba(255,102,196,.1), transparent 55%); pointer-events:none; }
  #metrics .inner { position:relative; z-index:2; }
  #metrics .section-tag { color:var(--pink-light); }
  #metrics .section-tag::before { background:var(--pink); }
  #metrics .m-title { font-family:var(--display); font-weight:700; font-size:clamp(2rem,4vw,3.2rem); letter-spacing:-.03em; color:#fff; }
  #metrics .m-title em { font-style:normal; color:var(--pink); }
  .metric-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:3.5rem; }
  .metric { background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.09); border-radius:18px; padding:2.6rem 2rem; transition:border-color .3s, transform .3s; }
  .metric:hover { border-color:rgba(255,102,196,.35); transform:translateY(-4px); }
  .metric .num { font-family:var(--display); font-weight:700; font-size:clamp(3.4rem,6vw,5rem); line-height:1; color:var(--pink); text-shadow:0 0 40px rgba(255,102,196,.4); letter-spacing:-.02em; }
  .metric .lbl { font-size:1rem; color:var(--muted-d); margin-top:.6rem; font-weight:300; }
  .metric .lbl { color:var(--muted-d); }

  /* CASE STUDIES */
  #results { background:var(--paper); }
  .results-sub { font-size:1.05rem; font-weight:300; color:var(--muted); max-width:480px; margin-top:1.25rem; line-height:1.7; }
  .case-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:3.5rem; }
  .case { background:#fff; border:1px solid var(--line); border-radius:22px; padding:2.25rem; position:relative; overflow:hidden; transition:transform .3s cubic-bezier(.16,1,.3,1), border-color .3s, box-shadow .3s; }
  .case::after { content:''; position:absolute; inset:0; border-radius:22px; padding:1px; background:linear-gradient(140deg,var(--pink),transparent 50%); -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); -webkit-mask-composite:xor; mask-composite:exclude; opacity:0; transition:opacity .3s; pointer-events:none; }
  .case:hover { transform:translateY(-8px); box-shadow:0 26px 60px rgba(12,14,17,0.1); }
  .case:hover::after { opacity:1; }
  .case-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:1.4rem; }
  .case-badge { font-size:.72rem; font-weight:600; text-transform:uppercase; letter-spacing:.06em; color:var(--pink-deep); background:rgba(255,102,196,.1); padding:.35rem .7rem; border-radius:100px; }
  .case-avatar { width:40px; height:40px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-family:var(--display); font-weight:700; font-size:.9rem; color:#fff; }
  .case .from { font-size:.82rem; color:var(--muted); }
  .case .from s { text-decoration-color:rgba(12,14,17,.3); }
  .case .to { font-family:var(--display); font-weight:700; font-size:3.4rem; line-height:1; margin:.15rem 0 .1rem; background:linear-gradient(120deg,var(--pink-deep),var(--pink)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
  .case .time { font-family:var(--display); font-weight:500; font-size:.9rem; color:var(--ink); }
  .spark { width:100%; height:52px; margin:1.2rem 0 .2rem; overflow:visible; }
  .spark-line { fill:none; stroke:var(--pink); stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; stroke-dasharray:300; stroke-dashoffset:300; }
  .case.visible .spark-line { transition:stroke-dashoffset 1.5s ease .3s; stroke-dashoffset:0; }
  .spark-area { fill:url(#sparkFill); opacity:0; transition:opacity .6s ease .8s; }
  .case.visible .spark-area { opacity:1; }
  .case .desc { font-size:.85rem; font-weight:300; color:var(--muted); line-height:1.7; border-top:1px solid var(--line-soft); padding-top:1.1rem; margin-top:.4rem; }
  .case-proof { margin-top:1rem; }
  .case-proof summary { list-style:none; cursor:pointer; font-family:var(--display); font-weight:600; font-size:.85rem; color:var(--pink-deep); display:inline-flex; align-items:center; gap:.4rem; }
  .case-proof summary::-webkit-details-marker { display:none; }
  .case-proof summary::after { content:'→'; transition:transform .25s ease; }
  .case-proof[open] summary::after { transform:rotate(90deg); }
  .proof-body { padding-top:1rem; display:flex; flex-direction:column; gap:.8rem; animation:revealDown .3s ease; }
  @keyframes revealDown { from{ opacity:0; transform:translateY(-6px);} to{ opacity:1; transform:none;} }
  .proof-img { aspect-ratio:16/10; border:1.5px dashed var(--line); border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:.78rem; color:var(--muted); background:rgba(255,102,196,.04); text-align:center; padding:1rem; overflow:hidden; }
  .proof-img img { width:100%; height:100%; object-fit:cover; border-radius:11px; }
  .proof-img.has-shot { aspect-ratio:auto; border-style:solid; border-color:var(--line); background:#fff; padding:0; }
  .proof-img.has-shot img { height:auto; object-fit:contain; }
  .proof-text { font-size:.82rem; color:var(--muted); font-weight:300; line-height:1.65; }
  .proof-strip { margin-top:2.25rem; border:1px solid var(--line); border-radius:16px; background:#fff; padding:1.25rem 1.5rem; display:flex; align-items:center; gap:1.5rem; flex-wrap:wrap; }
  .proof-strip-label { font-family:var(--display); font-weight:700; font-size:.95rem; letter-spacing:-.01em; white-space:nowrap; }
  .proof-strip-links { display:flex; gap:1.5rem; flex-wrap:wrap; }
  .proof-strip-links a { font-size:.88rem; font-weight:600; color:var(--pink-deep); text-decoration:none; display:inline-flex; align-items:center; gap:.35rem; }
  .proof-strip-links a::after { content:'→'; transition:transform .2s ease; }
  .proof-strip-links a:hover::after { transform:translateX(3px); }
  @media(max-width:640px){ .proof-strip { flex-direction:column; align-items:flex-start; gap:.9rem; } .proof-strip-links { flex-direction:column; gap:.7rem; } }

  /* SERVICES */
  #services { background-color:var(--paper-2); background-image:var(--dot); background-size:24px 24px; }
  .services-sub { font-size:1.05rem; font-weight:300; color:var(--muted); max-width:480px; margin-top:1.25rem; line-height:1.7; }
  .service-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; align-items:stretch; margin-top:3.5rem; }
  .service-card { background:#fff; padding:2.25rem; border-radius:18px; border:1px solid var(--line); display:flex; flex-direction:column; gap:.9rem; position:relative; overflow:hidden; transition:transform .3s cubic-bezier(.16,1,.3,1), border-color .3s, box-shadow .3s; }
  .service-card::before { content:''; position:absolute; top:0; left:0; width:100%; height:3px; background:linear-gradient(90deg,var(--pink-deep),var(--pink)); transform:scaleX(0); transform-origin:left; transition:transform .4s cubic-bezier(.16,1,.3,1); z-index:2; }
  .service-card:hover { transform:translateY(-5px); box-shadow:0 20px 46px rgba(12,14,17,0.07); }
  .service-card:hover::before { transform:scaleX(1); }
  .service-label { display:flex; align-items:center; gap:.75rem; }
  .service-icon { width:44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:20px; flex-shrink:0; background:linear-gradient(140deg,rgba(255,102,196,.18),rgba(255,102,196,.06)); }
  .service-name { font-family:var(--display); font-weight:600; font-size:1.22rem; color:var(--ink); }
  .service-tagline { font-size:.86rem; font-weight:300; color:var(--muted); line-height:1.7; }
  .service-deliverables { list-style:none; display:flex; flex-direction:column; gap:.45rem; margin-top:.2rem; }
  .service-deliverables li { font-size:.82rem; color:var(--muted); display:flex; align-items:flex-start; gap:.55rem; line-height:1.5; }
  .service-deliverables li::before { content:''; width:5px; height:5px; border-radius:50%; background:var(--pink-light); flex-shrink:0; margin-top:7px; }
  .why-drop { margin-top:auto; border-top:1px solid var(--line-soft); padding-top:.3rem; }
  .why-drop > summary { list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:.5rem; padding-top:.85rem; font-family:var(--display); font-weight:600; font-size:.85rem; color:var(--pink-deep); }
  .why-drop > summary::-webkit-details-marker { display:none; }
  .why-drop > summary::after { content:'+'; font-family:var(--display); font-size:1.3rem; font-weight:400; color:var(--pink); line-height:1; transition:transform .3s ease; }
  .why-drop[open] > summary::after { transform:rotate(45deg); }
  .why-drop-body { font-size:.85rem; font-weight:300; color:var(--muted); line-height:1.75; padding-top:.8rem; }

  /* OS SHOWCASE */
  #os { background:var(--paper); overflow:hidden; }
  .os-layout { display:grid; grid-template-columns:1fr 1.1fr; gap:4rem; align-items:center; margin-top:0; }
  .os-copy .section-title { max-width:12ch; }
  .os-points { list-style:none; margin-top:2rem; display:flex; flex-direction:column; gap:1.1rem; }
  .os-points li { display:flex; gap:.9rem; align-items:flex-start; }
  .os-points .pt-ic { width:38px; height:38px; border-radius:11px; background:rgba(255,102,196,.12); display:flex; align-items:center; justify-content:center; font-size:17px; flex-shrink:0; }
  .os-points b { display:block; font-weight:600; font-size:.98rem; }
  .os-points span { font-size:.86rem; font-weight:300; color:var(--muted); line-height:1.6; }
  .os-note { margin-top:1.75rem; font-size:.78rem; color:var(--muted); }

  .os-stage { position:relative; min-height:640px; display:flex; align-items:center; justify-content:center; }
  .os-stage::before { content:''; position:absolute; width:480px; height:480px; border-radius:50%; background:radial-gradient(circle,rgba(255,102,196,.16),transparent 65%); filter:blur(30px); }

  /* phone */
  .phone { position:relative; z-index:3; width:300px; background:linear-gradient(145deg,#4a4f5c,#23262e 30%,#181a20 70%,#3a3e49); border-radius:54px; padding:4px; box-shadow:0 60px 110px -20px rgba(12,14,17,.5); animation:floaty 7s ease-in-out infinite; }
  .phone-inner { background:#000; border-radius:50px; padding:10px; }
  /* side buttons */
  .phone::before { content:''; position:absolute; left:-2.5px; top:120px; width:3px; height:30px; border-radius:2px 0 0 2px; background:linear-gradient(#5a5f6c,#2a2d35); box-shadow:0 44px 0 #3a3e49, 0 100px 0 0 #3a3e49; }
  .phone::after { content:''; position:absolute; right:-2.5px; top:170px; width:3px; height:62px; border-radius:0 2px 2px 0; background:linear-gradient(#5a5f6c,#2a2d35); }
  .phone-screen { position:relative; border-radius:40px; overflow:hidden; background:#08090e; font-family:var(--sans); }
  .phone-screen::after { content:''; position:absolute; inset:0; border-radius:40px; background:linear-gradient(118deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,.015) 22%, transparent 40%); pointer-events:none; }
  .p-status { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; padding:11px 22px 2px; }
  .p-time { font-size:12.5px; font-weight:600; color:#e8eaf0; letter-spacing:.02em; }
  .p-island { width:88px; height:25px; border-radius:100px; background:#000; border:1px solid #16181d; position:relative; }
  .p-island::after { content:''; position:absolute; right:9px; top:50%; transform:translateY(-50%); width:9px; height:9px; border-radius:50%; background:radial-gradient(circle at 35% 35%, #1e2836, #05070a 65%); }
  .p-sig { display:flex; align-items:center; justify-content:flex-end; gap:5px; }
  .p-sig .bars { display:flex; align-items:flex-end; gap:1.5px; }
  .p-sig .bars i { width:3px; border-radius:1px; background:#e8eaf0; }
  .p-batt { width:22px; height:11px; border:1px solid rgba(232,234,240,.5); border-radius:3.5px; position:relative; }
  .p-batt::before { content:''; position:absolute; inset:1.5px; right:5px; background:#e8eaf0; border-radius:1.5px; }
  .p-batt::after { content:''; position:absolute; right:-3px; top:3px; width:1.5px; height:4px; background:rgba(232,234,240,.5); border-radius:0 1px 1px 0; }
  .p-head { display:flex; align-items:center; justify-content:space-between; padding:12px 18px 4px; }
  .p-head .p-hi { font-size:12.5px; color:#8b92a5; }
  .p-head .p-name { font-size:15px; font-weight:600; color:#e8eaf0; }
  .p-ava { width:32px; height:32px; border-radius:50%; background:linear-gradient(135deg,#ff8fd4,#c01e83); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:13px; color:#fff; }
  .p-card { margin:10px 14px; background:#161b24; border:1px solid #1e2430; border-radius:16px; padding:14px 15px; }
  .p-lbl { font-size:10.5px; letter-spacing:.06em; text-transform:uppercase; color:#555e72; font-weight:600; }
  .p-big { font-size:26px; font-weight:700; color:#e8eaf0; margin-top:3px; letter-spacing:-.02em; }
  .p-big small { font-size:12px; font-weight:500; color:#ff66c4; margin-left:6px; }
  .p-bars { display:flex; align-items:flex-end; gap:5px; height:46px; margin-top:12px; }
  .p-bars span { flex:1; border-radius:3px 3px 0 0; background:linear-gradient(#ff66c4,#c01e83); opacity:.85; transform:scaleY(0); transform-origin:bottom; transition:transform .6s cubic-bezier(.16,1,.3,1); }
  .os-stage.visible .p-bars span { transform:scaleY(1); }
  .os-stage.visible .p-bars span:nth-child(2){transition-delay:.06s}.os-stage.visible .p-bars span:nth-child(3){transition-delay:.12s}
  .os-stage.visible .p-bars span:nth-child(4){transition-delay:.18s}.os-stage.visible .p-bars span:nth-child(5){transition-delay:.24s}
  .os-stage.visible .p-bars span:nth-child(6){transition-delay:.3s}.os-stage.visible .p-bars span:nth-child(7){transition-delay:.36s}
  .p-row { display:flex; gap:10px; margin:0 14px 10px; }
  .p-row .p-card { flex:1; margin:0; }
  .p-mini { font-size:16px; font-weight:700; color:#e8eaf0; margin-top:2px; }
  .p-mini em { font-style:normal; font-size:10.5px; font-weight:600; color:#ff66c4; margin-left:4px; }
  .p-task { display:flex; align-items:center; gap:8px; padding:8px 0; border-bottom:1px solid #1e2430; }
  .p-task:last-child { border-bottom:0; padding-bottom:2px; }
  .p-check { font-size:12px; flex-shrink:0; line-height:1; }
  .p-task span { font-size:11.5px; color:#c3c9d6; }
  .p-nav { display:flex; justify-content:space-around; padding:10px 8px 16px; border-top:1px solid #1e2430; margin-top:8px; }
  .p-nav div { font-size:9px; color:#555e72; text-align:center; }
  .p-nav div.on { color:#ff66c4; }
  .p-nav i { font-style:normal; display:block; font-size:14px; margin-bottom:2px; }

  /* report card behind phone */
  .report { position:absolute; z-index:2; right:0; top:50%; transform:translateY(-58%) rotate(3deg); width:330px; background:#fff; border:1px solid var(--line); border-radius:18px; box-shadow:0 34px 80px rgba(12,14,17,.16); padding:1.2rem 1.3rem; animation:floaty 8s ease-in-out .8s infinite; }
  .r-head { display:flex; align-items:center; gap:.5rem; margin-bottom:.8rem; }
  .r-dots { display:flex; gap:5px; }
  .r-dots span { width:9px; height:9px; border-radius:50%; background:var(--line); }
  .r-dots span:first-child { background:#ff8fd4; }
  .r-title { font-size:.78rem; font-weight:600; color:var(--muted); margin-left:.3rem; }
  .r-badge { margin-left:auto; font-size:.65rem; font-weight:700; color:var(--pink-deep); background:rgba(255,102,196,.12); padding:.25rem .6rem; border-radius:100px; }
  .r-chart { width:100%; height:88px; }
  .r-stats { display:flex; gap:.6rem; margin-top:.9rem; }
  .r-stats div { flex:1; background:var(--paper); border:1px solid var(--line-soft); border-radius:10px; padding:.55rem .7rem; }
  .r-stats b { display:block; font-size:.95rem; font-weight:700; color:var(--ink); }
  .r-stats span { font-size:.62rem; color:var(--muted); }
  .r-stats b em { font-style:normal; color:var(--pink-deep); font-size:.62rem; margin-left:3px; }

  /* notif chip */
  .os-chip { position:absolute; z-index:4; left:0; top:3.5%; background:#fff; border:1px solid var(--line); border-radius:14px; box-shadow:0 20px 50px rgba(12,14,17,.14); padding:.7rem .9rem; display:flex; gap:.6rem; align-items:center; animation:floaty 6s ease-in-out .4s infinite; }
  .os-chip .c-ic { width:30px; height:30px; border-radius:9px; background:linear-gradient(135deg,#ff8fd4,#c01e83); display:flex; align-items:center; justify-content:center; font-size:14px; }
  .os-chip b { display:block; font-size:.72rem; font-weight:600; color:var(--ink); }
  .os-chip span { font-size:.65rem; color:var(--muted); }

  @media (max-width:1100px){ .report { right:-20px; width:300px; } }
  @media (max-width:940px){
    .os-layout { grid-template-columns:1fr; gap:2.5rem; }
    .os-stage { min-height:auto; padding:2rem 0 1rem; }
    .report { display:none; }
    .os-chip { left:0; top:4%; }
  }

  /* HOW */
  #how { background:var(--paper); }
  .how-layout { display:grid; grid-template-columns:1fr 1.9fr; gap:5rem; align-items:start; margin-top:3.5rem; }
  .how-sticky { position:sticky; top:6.5rem; }
  .how-desc { font-size:.98rem; font-weight:300; color:var(--muted); margin-top:1.25rem; line-height:1.8; }
  .steps { display:flex; flex-direction:column; gap:14px; position:relative; }
  .steps::before { content:''; position:absolute; left:calc(1.9rem + 6px); top:2.1rem; bottom:2.1rem; width:2px; transform:translateX(-50%); background:rgba(255,102,196,0.22); z-index:1; }
  .steps-fill { position:absolute; left:calc(1.9rem + 6px); top:2.1rem; width:2px; height:0; transform:translateX(-50%); background:linear-gradient(var(--pink-deep),var(--pink)); z-index:1; transition:height .12s linear; }
  .step { display:grid; grid-template-columns:52px 1fr; gap:1.5rem; padding:1.9rem; align-items:start; background:#fff; border:1px solid var(--line); border-radius:16px; position:relative; transition:transform .2s, border-color .2s, box-shadow .2s; }
  .step::before { content:''; position:absolute; left:calc(1.9rem + 6px); top:2.15rem; width:11px; height:11px; border-radius:50%; background:rgba(255,102,196,0.35); border:2.5px solid #fff; transform:translate(-50%,-50%); z-index:2; transition:background .3s ease, box-shadow .3s ease; }
  .step.reached::before { background:var(--pink); box-shadow:0 0 0 4px rgba(255,102,196,0.2); }
  .step:hover { transform:translateX(6px); box-shadow:0 14px 34px rgba(12,14,17,0.06); }
  .step-num { font-family:var(--display); font-weight:700; font-size:1.5rem; color:var(--pink-deep); line-height:1; padding-left:22px; }
  .step-title { font-family:var(--display); font-weight:600; font-size:1.2rem; color:var(--ink); margin-bottom:.45rem; }
  .step-body { font-size:.88rem; font-weight:300; color:var(--muted); line-height:1.75; }

  /* WHY */
  #why { background-color:var(--paper-2); background-image:var(--dot); background-size:24px 24px; }
  .why-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:3.5rem; }
  .why-card { background:#fff; padding:2.25rem 1.9rem; border-radius:18px; border:1px solid var(--line); transition:transform .3s, border-color .25s, box-shadow .3s; }
  .why-card:hover { transform:translateY(-5px); box-shadow:0 20px 46px rgba(12,14,17,0.07); }
  .why-num { font-family:var(--display); font-weight:700; font-size:2.6rem; line-height:1; margin-bottom:1rem; background:linear-gradient(120deg,var(--pink-deep),var(--pink)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
  .why-title { font-family:var(--display); font-weight:600; font-size:1.15rem; color:var(--ink); margin-bottom:.5rem; }
  .why-body { font-size:.85rem; font-weight:300; color:var(--muted); line-height:1.75; }

  /* TEAM */
  .team-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; margin-top:3rem; }
  .team-photo, .mini-photo, .more-team img, .team-all img { pointer-events:none; -webkit-touch-callout:none; -webkit-user-select:none; user-select:none; -webkit-user-drag:none; }
  .team-all { margin-top:22px; display:flex; align-items:center; gap:1.25rem; background:linear-gradient(135deg,rgba(255,102,196,.09),rgba(192,30,131,.05)); border:1px solid var(--line); border-radius:16px; padding:1.3rem 1.7rem; transition:transform .3s, box-shadow .3s; }
  .team-all, .team-all:hover, .team-all:hover .t, .team-all:hover .s { text-decoration:none; }
  .team-all:hover { transform:translateY(-3px); box-shadow:0 16px 36px rgba(12,14,17,.07); }
  .team-all .stack { display:flex; flex-shrink:0; }
  .team-all .stack img { width:38px; height:38px; border-radius:50%; border:2px solid #fff; object-fit:cover; margin-left:-10px; }
  .team-all .stack img:first-child { margin-left:0; }
  .team-all .stack .plus { width:38px; height:38px; border-radius:50%; border:2px solid #fff; margin-left:-10px; background:linear-gradient(135deg,var(--pink-deep),var(--pink)); color:#fff; font-family:var(--display); font-weight:700; font-size:.68rem; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .team-all .t { font-family:var(--display); font-weight:600; color:var(--ink); font-size:.98rem; }
  .team-all .s { font-size:.78rem; color:var(--muted); font-weight:400; margin-top:.15rem; }
  .team-all .arrow { margin-left:auto; color:var(--pink-deep); font-weight:700; font-size:1.2rem; }
  .team-card { background:#fff; border:1px solid var(--line); border-radius:18px; padding:2rem 1.9rem; display:flex; gap:1.4rem; align-items:flex-start; transition:transform .3s, box-shadow .3s; }
  .team-card:hover { transform:translateY(-5px); box-shadow:0 20px 46px rgba(12,14,17,0.07); }
  .team-photo { width:86px; height:86px; border-radius:50%; object-fit:cover; flex-shrink:0; background:#fff; }
  .team-avatar { width:86px; height:86px; border-radius:18px; flex-shrink:0; background:linear-gradient(135deg,rgba(255,102,196,.18),rgba(192,30,131,.12)); color:var(--pink-deep); display:flex; align-items:center; justify-content:center; font-family:var(--display); font-weight:700; font-size:1.9rem; border:1px solid var(--line); }
  .team-name { font-family:var(--display); font-weight:600; font-size:1.1rem; }
  .team-role { font-size:.78rem; font-weight:600; color:var(--pink-deep); text-transform:uppercase; letter-spacing:.05em; margin:.15rem 0 .6rem; }
  .team-bio { font-size:.85rem; font-weight:300; color:var(--muted); line-height:1.7; }
  .team-mini-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:14px; max-width:760px; }
  .mini-card { background:#fff; border:1px solid var(--line); border-radius:14px; padding:1.1rem 1rem; display:flex; gap:.8rem; align-items:center; transition:transform .3s, box-shadow .3s; }
  .mini-card:hover { transform:translateY(-4px); box-shadow:0 14px 32px rgba(12,14,17,0.07); }
  .mini-photo { width:46px; height:46px; border-radius:50%; object-fit:cover; flex-shrink:0; background:#fff; }
  .mini-name { font-family:var(--display); font-weight:600; font-size:.92rem; line-height:1.3; }
  .mini-role { font-size:.7rem; font-weight:600; color:var(--pink-deep); text-transform:uppercase; letter-spacing:.04em; margin-top:.1rem; }
  .mini-more { background:linear-gradient(135deg,rgba(255,102,196,.1),rgba(192,30,131,.06)); border:1px dashed rgba(192,30,131,.35); }
  .mini-more .mini-num { font-family:var(--display); font-weight:800; font-size:1.5rem; color:var(--pink-deep); flex-shrink:0; }
  .mini-more .mini-role { text-transform:none; letter-spacing:0; color:var(--muted); font-weight:400; font-size:.72rem; line-height:1.5; }
  .team-compact { padding:1.5rem 1.7rem; }
  .team-compact .team-photo { width:64px; height:64px; }
  .team-compact .team-bio { font-size:.8rem; }
  .more-team { grid-column:1/-1; background:linear-gradient(135deg,rgba(255,102,196,.09),rgba(192,30,131,.05)); border:1px solid var(--line); border-radius:16px; padding:1.5rem 1.7rem; display:flex; align-items:center; gap:1.75rem; }
  .more-team img { width:120px; height:120px; border-radius:50%; object-fit:cover; flex-shrink:0; }
  .more-team .mini-num { font-family:var(--display); font-weight:800; font-size:2rem; color:var(--pink-deep); line-height:1; margin-bottom:.2rem; }
  .more-team .mini-name { font-size:1.05rem; }
  .more-note { display:block; font-size:.62rem; color:var(--muted); margin-top:.55rem; opacity:.75; }
  @media(max-width:560px){ .more-team { flex-direction:column; text-align:center; } }
  @media(max-width:760px){ .team-grid { grid-template-columns:1fr; } .team-mini-grid { grid-template-columns:1fr 1fr; } .team-all { flex-direction:column; align-items:flex-start; gap:1rem; padding:1.5rem 1.4rem; } .team-all .arrow { margin-left:0; } }
  @media(max-width:520px){ .team-mini-grid { grid-template-columns:1fr; } }

  /* FAQ */
  #faq { background:var(--paper); }
  .faq-list { margin:3.5rem auto 0; max-width:615px; }
  /* plain-DOM accordion: answers stay normal text nodes so text extractors and AI crawlers read them */
  .faq-list .faq-item { background:#fff; border:1px solid var(--line); border-radius:16px; padding:1.4rem 1.7rem; margin-bottom:12px; transition:border-color .2s, box-shadow .2s; }
  .faq-list .faq-item.open { box-shadow:0 14px 34px rgba(12,14,17,0.05); border-color:rgba(255,102,196,.35); }
  .faq-list .faq-q { width:100%; background:none; border:0; padding:0; text-align:left; font-family:var(--display); font-weight:600; font-size:1.08rem; color:var(--ink); cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:1rem; transition:color .2s; }
  .faq-list .faq-q:hover { color:var(--pink-deep); }
  .faq-list .faq-q::after { content:'+'; font-family:var(--display); font-size:1.5rem; font-weight:400; color:var(--pink); transition:transform .3s; line-height:1; }
  .faq-list .faq-item.open .faq-q::after { transform:rotate(45deg); }
  .faq-list .faq-wrap { max-height:0; overflow:hidden; transition:max-height .3s ease; }
  .faq-list .faq-item.open .faq-wrap { max-height:60rem; }
  .faq-list .faq-wrap > .faq-answer { margin-top:1rem; }
  .faq-answer { margin-top:1rem; color:var(--muted); font-weight:300; font-size:.92rem; line-height:1.75; max-width:700px; transition:margin-top .3s ease; }

  /* CTA */
  #cta { background:linear-gradient(150deg,#a8186f 0%, #d42b93 50%, #ff66c4 100%); color:#fff; text-align:center; display:flex; flex-direction:column; align-items:center; position:relative; overflow:hidden; }
  #cta::before { content:''; position:absolute; inset:0; background:radial-gradient(circle at 50% 120%, rgba(255,255,255,0.16), transparent 60%); pointer-events:none; }
  .cta-pre { font-size:.78rem; font-weight:500; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,0.8); margin-bottom:1.25rem; position:relative; z-index:2; }
  .cta-title { font-family:var(--display); font-weight:700; font-size:clamp(2.2rem,5vw,4rem); line-height:1.02; letter-spacing:-.03em; color:#fff; max-width:16ch; margin-bottom:1.25rem; position:relative; z-index:2; }
  .cta-sub { font-size:1rem; font-weight:300; color:rgba(255,255,255,0.9); margin-bottom:2.5rem; max-width:360px; position:relative; z-index:2; }
  .apply-card { position:relative; z-index:2; background:#fff; border-radius:24px; padding:2.5rem; max-width:390px; width:100%; text-align:left; box-shadow:0 40px 90px rgba(12,14,17,0.3); }
  .form { display:flex; flex-direction:column; gap:.85rem; }
  .form .row { display:grid; grid-template-columns:1fr 1fr; gap:.85rem; }
  .form input, .form textarea { font-family:var(--sans); background:var(--paper); border:1px solid var(--line); border-radius:12px; padding:.9rem 1rem; color:var(--ink); font-size:.9rem; width:100%; transition:border-color .2s, box-shadow .2s; }
  .form input:focus, .form textarea:focus { outline:none; border-color:var(--pink); box-shadow:0 0 0 4px rgba(255,102,196,.12); }
  .form .btn-primary { background:var(--pink-deep); justify-content:center; padding:1.05rem; font-size:.95rem; }
  .form .btn-primary:hover { background:var(--pink-ink); }
  .form .disc { font-size:.72rem; color:var(--muted); line-height:1.5; }
  .cta-alt { position:relative; z-index:2; margin-top:1.6rem; display:flex; gap:.7rem; justify-content:center; flex-wrap:wrap; }
  .cta-btn { display:inline-flex; align-items:center; gap:.5rem; font-size:.85rem; font-weight:500; color:#fff; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.35); padding:.62rem 1.15rem; border-radius:100px; text-decoration:none; backdrop-filter:blur(6px); transition:background .2s, transform .2s, border-color .2s; }
  .cta-btn:hover { background:rgba(255,255,255,.24); border-color:rgba(255,255,255,.6); transform:translateY(-2px); }
  .cta-btn svg { width:16px; height:16px; flex-shrink:0; }

  /* FOOTER */
  footer { background:var(--paper); border-top:1px solid var(--line); padding:2.25rem 3rem; display:flex; align-items:center; justify-content:space-between; gap:1.5rem; flex-wrap:wrap; }
  .footer-logo img { height:18px; width:auto; display:block; }
  .footer-links { display:flex; gap:1.75rem; list-style:none; }
  .footer-links a { font-size:.8rem; color:var(--muted); text-decoration:none; transition:color .2s; }
  .footer-links a:hover { color:var(--ink); }
  .footer-copy { font-size:.78rem; color:var(--muted); }
  .footer-disc { max-width:1005px; margin:1.5rem auto 0; padding:0 3rem 2.5rem; font-size:.72rem; color:var(--muted); line-height:1.6; text-align:center; }
  .footer-guides { max-width:1005px; margin:0 auto; padding:2.75rem 3rem 2.75rem; border-top:1px solid var(--line-soft); display:grid; grid-template-columns:1fr 1fr; gap:2.5rem 4rem; }
  .footer-guides b { display:block; font-family:var(--display); font-size:.8rem; font-weight:600; color:var(--ink); margin-bottom:.9rem; }
  .footer-guides ul { list-style:none; display:flex; flex-direction:column; gap:.55rem; }
  .footer-guides a { font-size:.8rem; color:var(--muted); text-decoration:none; transition:color .2s; }
  .footer-guides a:hover { color:var(--pink-deep); }
  .footer-guides .soon { font-size:.8rem; color:var(--muted); opacity:.6; }
  @media(max-width:760px){ .footer-guides { grid-template-columns:1fr; gap:1.75rem; padding:2.25rem 1.25rem 2.25rem; } }

  /* REVEAL */
  .reveal { opacity:0; transform:translateY(22px); transition:opacity .7s cubic-bezier(.16,1,.3,1), transform .7s cubic-bezier(.16,1,.3,1); }
  .reveal.visible { opacity:1; transform:none; }
  .stagger > * { opacity:0; transform:translateY(22px); transition:opacity .6s cubic-bezier(.16,1,.3,1), transform .6s cubic-bezier(.16,1,.3,1); }
  .stagger.visible > * { opacity:1; transform:none; }
  .stagger.visible > *:nth-child(2){ transition-delay:.08s; }
  .stagger.visible > *:nth-child(3){ transition-delay:.16s; }
  .stagger.visible > *:nth-child(4){ transition-delay:.24s; }
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation:none !important; }
    .reveal, .stagger > * { opacity:1; transform:none; transition:none; }
    .route-path { stroke-dashoffset:0; }
    .flow-dot, .hub-ring { display:none; }
    .metric .bar span { width:var(--w); transition:none; }
    .spark-line { stroke-dashoffset:0; }
  }

  /* MOBILE */
  @media (max-width:940px) {
    nav { padding:1rem 1.25rem; }
    .nav-links { display:none; }
    .hero { grid-template-columns:1fr; gap:3rem; padding:7rem 1.25rem 4rem; min-height:auto; }
    .hero-visual { order:2; max-width:520px; }
    .hero-sub { max-width:100%; }
    .hero-actions { width:100%; }
    .btn-primary, .btn-whatsapp { flex:1; justify-content:center; min-width:140px; }
    section { padding:4.5rem 1.25rem; }
    .metric-grid, .case-grid, .service-grid, .why-grid { grid-template-columns:1fr; gap:20px; }
    .how-layout { grid-template-columns:1fr; gap:2.5rem; margin-top:2.5rem; }
    .how-sticky { position:static; }
    .step { padding:1.6rem; gap:1rem; grid-template-columns:42px 1fr; }
    .steps::before, .steps-fill { left:calc(1.6rem + 6px); }
    .step::before { left:calc(1.6rem + 6px); top:1.95rem; }
    .step-num { padding-left:20px; }
    .apply-card { padding:1.75rem; }
    .form .row { grid-template-columns:1fr; }
    footer { padding:2.25rem 1.25rem; flex-direction:column; text-align:center; align-items:center; }
    .footer-links { flex-wrap:wrap; justify-content:center; gap:1.1rem; }
    .footer-disc { padding:0 1.25rem 2rem; text-align:center; }
  }
