.wrap{max-width:1200px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.top{display:flex;align-items:center;gap:22px;padding-block:18px}
.top nav{display:flex;gap:22px;font-weight:600}
.top nav a{text-decoration:none}
.sp{flex:1}
.tag{display:inline-flex;align-items:center;gap:6px;font:700 12px var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}

.hero{position:relative;background:#fff;border-radius:32px;box-shadow:0 18px 40px -28px #2D304766;display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden;min-height:470px;margin-top:6px}
.hero .l{padding:56px 48px;display:flex;flex-direction:column;gap:20px;justify-content:center;position:relative;z-index:2}
.hero h1{margin:0;font:800 64px/1.02 var(--display);text-wrap:balance}
.hero h1 span{color:var(--terra)}
.hero p{margin:0;font-size:19px;color:var(--muted);max-width:500px}
.hero .cta-row{display:flex;gap:12px;flex-wrap:wrap}
.hero .r{position:relative;min-height:420px;background:radial-gradient(circle at 60% 40%,#FFF1EA,#FFF8F4 70%)}
.scene{position:absolute;left:0;top:30px;width:600px;height:470px;transform-origin:0 0}
.scene-svg{position:absolute;left:0;top:0}
.walker-lf{position:absolute;left:0;top:0;width:74px;height:74px;offset-path:path("M140 150 L236 150 Q246 134 254 192 Q268 176 284 248 Q298 230 314 304 Q328 286 344 360 Q360 344 376 388 L398 388 Q470 272 542 388 L680 388");offset-rotate:0deg;offset-distance:4%;animation:go 12s linear infinite}
@keyframes go{0%{offset-distance:0%;opacity:0}3%{opacity:1}14%{offset-distance:12%}46%{offset-distance:46%}84%{offset-distance:86%}92%{offset-distance:100%;opacity:1}93%,100%{offset-distance:100%;opacity:0}}
@keyframes sq{0%{stroke-dashoffset:120}40%,70%{stroke-dashoffset:0}100%{stroke-dashoffset:-120}}.sq{stroke-dasharray:120;animation:sq 4s ease-in-out infinite}
@keyframes up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.hero h1,.hero p,.hero .cta-row{animation:up .7s cubic-bezier(.2,.8,.2,1) both}.hero p{animation-delay:.1s}.hero .cta-row{animation-delay:.2s}

section{margin-top:56px}
h2{margin:0 0 20px;font:800 36px/1.1 var(--display);text-wrap:balance}
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.tile{border-radius:24px;padding:22px;min-height:170px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;transition:transform .2s}
.tile:hover{transform:translateY(-3px)}
.tile b{font:800 26px var(--display);position:relative;z-index:1}.tile span{font-size:15px;position:relative;z-index:1;max-width:150px}
.tile svg{position:absolute;right:14px;bottom:12px}

.ask{background:#fff;border-radius:28px;box-shadow:0 18px 40px -28px #2D304766;display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:40px;align-items:center}
.ask h2{margin-bottom:10px}.ask p{margin:0;font-size:17px;color:var(--muted);max-width:460px}
.offers{display:flex;flex-direction:column;gap:10px}
.of{background:var(--soft);border-radius:18px;padding:12px 14px;display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:center;animation:inx .6s cubic-bezier(.2,.8,.2,1) both}
.of:nth-child(2){animation-delay:.2s}.of:nth-child(3){animation-delay:.4s}
@keyframes inx{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:none}}
.of .im{height:52px;border-radius:12px;background:radial-gradient(#C8553D44 2px,transparent 2.5px) 0 0/10px 10px,#fff}
.chip{display:inline-block;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:#fff;color:var(--terra)}
.price{font:800 18px var(--display)}

.meet{background:var(--navy);color:#fff;border-radius:32px;padding:44px;display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;align-items:center;overflow:hidden;position:relative}
.meet h2{color:#fff}.meet p{margin:0 0 18px;font-size:18px;opacity:.85;max-width:520px}
.meet .big{width:min(260px,100%);aspect-ratio:1;margin:auto}
.meet .row{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;max-width:560px}
.meet .row .lf{width:100%;aspect-ratio:1}

.tracks{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.track{background:#fff;border-radius:24px;padding:8px 24px 14px;box-shadow:0 1px 3px #0000000f}
.track h3{margin:16px 0 6px;font:700 22px var(--display)}
.step{display:grid;grid-template-columns:44px 1fr;gap:12px;padding:14px 0;border-top:1.5px solid var(--line)}
.step:first-of-type{border-top:0}
.n{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font:800 16px var(--display);color:#fff}
.faq{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.faq div{background:#fff;border-radius:20px;padding:20px 22px;display:flex;flex-direction:column;gap:6px;box-shadow:0 1px 3px #0000000f}
.final{background:var(--teal);color:#fff;border-radius:32px;padding:48px;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.final h2{margin:0;color:#fff;position:relative;z-index:1}.final p{margin:0;font-size:18px;position:relative;z-index:1}
.final .dec{position:absolute;right:0;top:0;width:230px;height:230px;border-radius:0 0 0 230px;background:var(--terra)}
.final .dec2{position:absolute;right:240px;bottom:-60px;width:140px;height:140px;border-radius:50%;background:var(--tang)}
footer{display:flex;gap:22px;align-items:center;flex-wrap:wrap;padding-block:26px;margin-top:40px;border-top:1.5px solid var(--line);font-size:14px}
footer a{text-decoration:none}

@media (max-width:900px){
  .top nav{display:none}
  .hero{grid-template-columns:1fr}
  .hero .l{padding:32px 24px 8px}
  .hero h1{font-size:44px}
  .hero .r{min-height:0;aspect-ratio:600/470}
  .scene{top:0}
  .tiles{grid-template-columns:1fr 1fr}
  .ask,.meet,.tracks,.faq{grid-template-columns:1fr}
  .ask,.meet,.final{padding:28px 22px}
  .tile{min-height:150px}.tile svg{width:40px;height:40px;right:12px;bottom:12px}.tile span{max-width:68%}.tile b{font-size:21px}
  .final .dec{width:120px;height:120px;border-radius:0 0 0 120px}.final .dec2{display:none}
  .meet .row{grid-template-columns:repeat(4,1fr)}
  h2{font-size:30px}
}
@media (max-width:420px){.top .btn-ghost{display:none}.tile b{font-size:22px}}
