

/* wide banner */
.banner{position:relative;border-radius:40px;background:var(--red);overflow:hidden;aspect-ratio:16/7}
.banner svg{position:absolute;inset:0;width:100%;height:100%}
.banner img{position:absolute;bottom:6%;width:auto;max-width:none}
.b1{left:10%;height:60%;animation:floaty 1.6s ease-in-out infinite alternate}
.b2{left:50%;height:88%;transform:translateX(-50%)}
.b3{right:8%;height:50%;animation:floaty 1.9s ease-in-out infinite alternate}
/* timeline */
.story{position:relative;overflow:hidden}
.peek{position:absolute;left:-70px;top:180px;width:240px;transform:rotate(12deg)}
.scatter{position:absolute;right:0;bottom:60px;width:240px}
.tl{position:relative;max-width:820px;margin:64px auto 0}
.tl::before{content:'';position:absolute;left:50%;top:8px;bottom:8px;width:2px;background:var(--red);transform:translateX(-50%)}
.ev{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);align-items:start;padding-bottom:72px}
.ev:last-child{padding-bottom:0}
.dot{grid-column:2;grid-row:1;justify-self:center;width:14px;height:14px;border-radius:50%;background:var(--red);margin-top:8px;box-shadow:0 0 0 6px var(--cream)}
.ev-c{grid-row:1;display:flex;flex-direction:column;gap:6px}
.ev.l .ev-c{grid-column:1;text-align:right;align-items:flex-end}
.ev.r .ev-c{grid-column:3}
.yr{font-family:var(--display);font-size:20px;color:var(--red)}
.ev h3{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(30px,3vw,40px);line-height:1;margin:0}
.ev p{font-size:18px;line-height:1.45;margin:0;max-width:340px}
/* why panel extras */
.why-s{position:absolute}
.ws1{left:7%;top:72px;width:110px;--r:-24deg;animation:floaty 3s ease-in-out infinite alternate}
.ws2{right:8%;top:170px;width:78px;--r:18deg;animation:floaty 2.6s ease-in-out infinite alternate}
.divider{border:0;border-top:2px dashed rgba(255,248,242,.45);margin:88px 0}
.nums-h{font-family:var(--display);text-transform:uppercase;font-weight:400;font-size:clamp(52px,7vw,108px);line-height:.92;text-align:center;margin:0;color:var(--cream)}
.nums{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:center;margin-top:48px}
.stat{display:flex;flex-direction:column;gap:8px;padding:28px 0;border-bottom:2px dashed rgba(255,248,242,.35)}
.stat:last-child{border-bottom:0}
.stat.rgt{text-align:right;align-items:flex-end}
.num{display:flex;align-items:center;gap:10px;font-family:var(--display);font-size:48px;line-height:1;color:var(--white)}
.num svg{width:26px;height:26px;color:#ffb98c}
.stat p{margin:0;font-size:18px;line-height:1.4;color:#fff0e6;max-width:260px}
.center-dog{position:relative;aspect-ratio:1/1;display:flex;align-items:flex-end;justify-content:center}
.center-dog::before{content:'';position:absolute;inset:8%;border-radius:50%;background:var(--deep)}
.center-dog img{position:relative;height:80%;width:auto;margin-bottom:4%}
/* crew */
.crew{position:relative;min-height:860px;display:flex;align-items:center;justify-content:center}
.crew-t{margin:0;line-height:.9;text-align:center}
.crew-t .ln{display:block;font-family:var(--display);text-transform:uppercase;font-size:clamp(60px,8vw,124px);color:var(--deep)}
.crew-t .mid{display:inline-block;background:var(--red);color:var(--white);padding:0 .14em .06em;transform:rotate(-4deg);margin:.02em 0}
.mate{position:absolute;z-index:3;width:210px;background:var(--sand);border-radius:24px;padding:10px 10px 18px;box-shadow:0 10px 26px rgba(17,17,17,.12);animation:floaty 3.2s ease-in-out infinite alternate}
.av{aspect-ratio:1/1;border-radius:16px;background:var(--deep);color:var(--cream);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;font-weight:700;font-size:14px;letter-spacing:.06em;text-transform:uppercase}
.av svg{width:52px;height:52px;color:var(--red)}
.mate b{display:block;font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:20px;margin:14px 8px 2px}
.mate small{display:block;font-size:16px;margin:0 8px;color:var(--muted)}
.m1{left:4%;top:8%;--r:-4deg}
.m2{right:6%;top:2%;--r:5deg;animation-duration:2.8s}
.m3{left:12%;bottom:4%;--r:3deg;animation-duration:3.6s}
.m4{right:2%;bottom:10%;--r:-5deg;animation-duration:3s}
@media (max-width: 1024px){
.nums{grid-template-columns:minmax(0,1fr)}
.stat.rgt{text-align:left;align-items:flex-start}
.center-dog{max-width:360px;width:100%;margin:0 auto}
.peek,.scatter{display:none}
.crew{min-height:0;flex-direction:column;gap:40px}
.mates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%}
.mate{position:static;width:auto;animation:none}
}
@media (max-width: 810px){
.banner{aspect-ratio:4/3;border-radius:28px}
.b1,.b3{display:none}
.tl::before{left:7px;transform:none}
.ev{grid-template-columns:28px minmax(0,1fr);padding-bottom:48px}
.dot{grid-column:1;justify-self:start;margin-left:0}
.ev.l .ev-c,.ev.r .ev-c{grid-column:2;text-align:left;align-items:flex-start}
.why-s{display:none}
.divider{margin:64px 0}
}
