/* hoppii — fleet page */
/* ---------- /fleet page ---------- */

/* hero */
.phero{position:relative;padding:150px 0 40px;text-align:center;overflow:hidden}
.phero .gridbg{mask-image:radial-gradient(ellipse 70% 55% at 50% 30%,#000 15%,transparent 72%)}
.phero h1{font-size:clamp(56px,8.8vw,148px);margin:22px 0 26px}
.phero h1 .ln{display:block;overflow:hidden;padding-bottom:.03em}
.phero h1 .ln>span{display:inline-block}
.js .phero h1 .ln>span{transform:translateY(105%);animation:rise 1.1s var(--ease) forwards}
.phero h1 .ln:nth-child(2)>span{animation-delay:.09s}.phero h1 .ln:nth-child(3)>span{animation-delay:.18s}
.phero .lead{font-size:19px;color:var(--soft);max-width:36em;margin:0 auto}
.phero .ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:32px}
.phero .assure{justify-content:center}

/* availability board */
.board{position:relative;max-width:1120px;margin:70px auto 0;border-radius:26px;border:1px solid var(--line-2);background:var(--panel);box-shadow:0 60px 120px -50px rgba(0,0,0,.9),0 0 120px -40px rgba(16,185,129,.35);overflow:hidden;text-align:left}
.bhead{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}
.bhead b{color:var(--text);font-size:14px}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px}
.legend span{display:inline-flex;align-items:center;gap:6px}
.legend i{width:10px;height:10px;border-radius:3px}
.bgrid{position:relative;padding:8px 20px 18px}
.bdays,.brow{display:grid;grid-template-columns:150px 1fr}
.bdays>div{display:grid;grid-template-columns:repeat(7,1fr);font-size:11.5px;color:var(--muted);text-align:center;padding:8px 0}
.bdays>div span.today{color:var(--lime);font-weight:700}
.brow{align-items:center;border-top:1px solid var(--line);min-height:46px}
.brow .veh{font-size:13px;font-weight:600;padding-right:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brow .veh small{display:block;font-size:11px;color:var(--muted);font-weight:500}
.lane{position:relative;height:46px;background-image:linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:calc(100%/7) 100%}
.bk{position:absolute;top:9px;height:28px;border-radius:8px;font-size:11.5px;font-weight:600;display:flex;align-items:center;padding:0 10px;white-space:nowrap;overflow:hidden;transform-origin:left;color:#0A0D0B}
.bk.conf{background:var(--sky)}
.bk.prog{background:var(--lime)}
.bk.pend{background:transparent;border:1.5px dashed var(--amber);color:var(--amber)}
.bk.late{background:var(--rose)}
.bk.maint{background:repeating-linear-gradient(135deg,rgba(242,245,240,.14) 0 6px,transparent 6px 12px);border:1px solid var(--line-2);color:var(--muted)}
.js .board .bk{transform:scaleX(0);transition:transform .9s var(--ease)}
.board.in .bk{transform:none}
.bk.newbk{background:var(--lime);box-shadow:0 0 24px rgba(198,244,50,.6);opacity:0;transform:translateY(-16px) scale(.9)!important;transition:opacity .4s,transform .6s var(--spring)!important}
.bk.newbk.on{opacity:1;transform:none!important}
.nowline{position:absolute;top:0;bottom:0;width:2px;background:var(--lime);box-shadow:0 0 12px var(--lime);left:calc(150px + 20px + (100% - 190px) * var(--now,.47))}
.nowline::before{content:"Now";position:absolute;top:-2px;left:6px;font-size:10px;font-weight:800;letter-spacing:.1em;color:var(--lime)}
.btoast{position:absolute;right:20px;bottom:18px;display:flex;gap:10px;align-items:center;background:var(--panel-2);border:1px solid rgba(198,244,50,.4);border-radius:14px;padding:10px 14px;font-size:12.5px;box-shadow:0 20px 40px -16px rgba(0,0,0,.8);opacity:0;transform:translateY(10px);transition:all .5s var(--ease)}
.btoast.on{opacity:1;transform:none}
.btoast i{font-style:normal;width:26px;height:26px;border-radius:8px;background:var(--lime);color:var(--lime-ink);display:grid;place-items:center;font-weight:800}
.btoast b{display:block}.btoast span{color:var(--muted);font-size:11.5px}

.types{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:40px auto 0;max-width:900px}
.types .lbl{width:100%;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.types span:not(.lbl){font-size:13px;font-weight:600;color:var(--soft);padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--panel)}


/* lifecycle */
.life{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.life .ln{position:absolute;left:8.3%;right:8.3%;top:27px;height:2px;background:var(--line)}
.life .ln i{position:absolute;inset:0;background:linear-gradient(90deg,var(--em),var(--lime));transform-origin:left;transform:scaleX(var(--p,0));box-shadow:0 0 14px rgba(198,244,50,.5)}
.node{position:relative;text-align:center}
.node .dot{position:relative;z-index:1;width:56px;height:56px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:var(--bg);border:1.5px solid var(--line-2);color:var(--muted);transition:all .5s var(--ease)}
.node .dot .icon{width:22px;height:22px}
.node.lit .dot{background:var(--lime);border-color:var(--lime);color:var(--lime-ink);box-shadow:0 0 26px -4px rgba(198,244,50,.6)}
.node b{display:block;font-family:Anton;font-weight:400;font-size:22px;text-transform:uppercase;letter-spacing:.01em}
.node span{display:block;color:var(--muted);font-size:13.5px;margin-top:6px;max-width:15em;margin-left:auto;margin-right:auto}

/* deep dives */
.deep{display:grid;grid-template-columns:1fr 1.08fr;gap:80px;align-items:center;padding:110px 0;border-top:1px solid var(--line)}
.deep.flip .copy{order:2}
.deep h2{font-size:clamp(38px,4.2vw,64px);margin:18px 0 18px}
.deep .lead{color:var(--soft);font-size:18px;max-width:30em}
.checks{list-style:none;display:grid;gap:16px;margin-top:30px}
.checks li{display:grid;grid-template-columns:24px 1fr;gap:12px}
.checks .icon{width:20px;height:20px;color:var(--lime);margin-top:2px}
.checks b{display:block;font-size:16px}
.checks span{color:var(--muted);font-size:14.5px}

.mock{position:relative;border-radius:24px;border:1px solid var(--line-2);background:var(--panel);box-shadow:0 50px 100px -50px rgba(0,0,0,.9),0 0 100px -50px rgba(16,185,129,.35);overflow:hidden}
.mh{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}
.mh b{color:var(--text);font-size:14px}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:var(--panel-2);color:var(--soft)}
.pill.lime{background:var(--lime);color:var(--lime-ink)}
.pill.sky{background:rgba(125,211,252,.15);color:var(--sky)}
.pill.amber{background:rgba(252,211,77,.14);color:var(--amber)}
.pill.rose{background:rgba(253,164,175,.14);color:var(--rose)}
.kv{display:grid;grid-template-columns:auto 1fr;gap:9px 16px;font-size:13.5px}
.kv dt{color:var(--muted)}.kv dd{text-align:right;font-weight:600}
.pop{opacity:0;transform:translateY(8px);transition:all .45s var(--ease)}
.pop.on{opacity:1;transform:none}

/* A · inbox */
.inbox{display:grid;grid-template-columns:.9fr 1.3fr}
.ilist{border-right:1px solid var(--line)}
.iitem{padding:14px 16px;border-bottom:1px solid var(--line);font-size:13px;position:relative;transition:background .3s}
.iitem.sel{background:var(--panel-2)}
.iitem.sel::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--lime)}
.iitem b{display:block;font-size:13.5px}
.iitem span{color:var(--muted);font-size:12px}
.iitem .pill{position:absolute;right:12px;top:14px}
.idet{padding:18px;display:grid;gap:14px;align-content:start}
.idet .who{display:flex;justify-content:space-between;align-items:center}
.idet .who b{font-size:16px}
.checkrow{display:flex;gap:10px;align-items:center;font-size:13px;padding:9px 12px;border-radius:12px;background:var(--panel-2)}
.checkrow i{font-style:normal;width:22px;height:22px;border-radius:7px;display:grid;place-items:center;font-size:12px;font-weight:800;background:rgba(198,244,50,.16);color:var(--lime)}
.acts{display:flex;gap:10px}
.acts span{flex:1;text-align:center;font-size:13px;font-weight:700;padding:11px 0;border-radius:12px;border:1px solid var(--line-2);color:var(--muted)}
.acts span.yes{background:var(--lime);color:var(--lime-ink);border-color:var(--lime);transition:transform .3s var(--spring),box-shadow .3s}
.acts span.yes.press{transform:scale(.95);box-shadow:0 0 30px rgba(198,244,50,.6)}

/* B · booking form */
.bform{display:grid;grid-template-columns:1fr 1fr;gap:0}
.cal{padding:18px;border-right:1px solid var(--line)}
.cal h4{font-size:13px;font-weight:600;margin-bottom:10px;display:flex;justify-content:space-between}
.cal h4 span{color:var(--muted);font-weight:500}
.cgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center;font-size:12px}
.cgrid .dn{color:var(--muted);font-size:10.5px;padding:4px 0}
.cgrid .d{padding:8px 0;border-radius:8px;color:var(--soft);transition:all .3s}
.cgrid .d.x{color:#4E5A53;background:repeating-linear-gradient(135deg,rgba(242,245,240,.06) 0 4px,transparent 4px 8px);text-decoration:line-through}
.cgrid .d.sel{background:var(--lime);color:var(--lime-ink);font-weight:700}
.cgrid .d.mid{background:rgba(198,244,50,.22);color:var(--text);border-radius:0}
.cal .hint{margin-top:12px;font-size:12px;color:var(--muted)}
.cal .hint b{color:var(--lime)}
.rail{padding:18px;display:grid;gap:10px;align-content:start;font-size:13.5px}
.rail .veh{display:flex;gap:10px;align-items:center;padding-bottom:12px;border-bottom:1px solid var(--line)}
.rail .veh i{font-style:normal;font-size:22px;width:44px;height:44px;border-radius:12px;background:var(--panel-2);display:grid;place-items:center}
.rail .veh b{display:block}.rail .veh span{font-size:12px;color:var(--muted)}
.ln2{display:flex;justify-content:space-between;color:var(--soft)}
.ln2.disc{color:var(--lime)}
.ln2.tot{border-top:1px solid var(--line);padding-top:10px;color:var(--text);font-weight:700}
.due{margin-top:4px;display:flex;justify-content:space-between;align-items:center;background:var(--lime);color:var(--lime-ink);border-radius:14px;padding:12px 14px}
.due small{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.due b{font-family:Anton;font-weight:400;font-size:26px}

/* C · check-out */
.co{padding:18px;display:grid;gap:14px}
.co .row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.box{background:var(--panel-2);border-radius:14px;padding:12px 14px}
.box small{display:block;font-size:11px;color:var(--muted);letter-spacing:.04em;margin-bottom:6px}
.box b{font-family:Anton;font-weight:400;font-size:24px}
.box span{font-size:12px;color:var(--muted)}
.fuel{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;margin:6px 0 4px}
.fuel i{height:18px;border-radius:4px;background:var(--line-2);transition:background .35s}
.fuel i.on{background:var(--lime)}
.charges{display:grid;gap:8px;font-size:13.5px}
.charges .ln2{padding:10px 12px;border-radius:12px;background:var(--panel-2)}
.charges .ln2 em{font-style:normal;color:var(--muted);font-size:12px;margin-left:6px}
.settle{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px;border-radius:14px;padding:14px;background:rgba(198,244,50,.08);border:1px solid rgba(198,244,50,.35)}
.settle small{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--lime)}
.settle b{font-family:Anton;font-weight:400;font-size:30px;color:var(--lime);grid-row:span 2}
.settle span{font-size:12.5px;color:var(--muted)}
.sig{height:54px;border-radius:12px;background:var(--panel-2);position:relative;overflow:hidden}
.sig svg{position:absolute;left:14px;top:8px;width:170px;height:40px}
.sig path{fill:none;stroke:var(--text);stroke-width:2.2;stroke-linecap:round;stroke-dasharray:420;stroke-dashoffset:420;transition:stroke-dashoffset 1.6s var(--ease)}
.sig.on path{stroke-dashoffset:0}
.sig span{position:absolute;right:14px;bottom:10px;font-size:11px;color:var(--muted)}

/* D · statement */
.stmt{padding:18px;display:grid;gap:10px;font-size:13.5px}
.stmt .ln2{padding:4px 0}
.stmt .pay{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--panel-2)}
.stmt .pay i{font-style:normal;font-size:11px;font-weight:800;letter-spacing:.06em;padding:4px 8px;border-radius:7px;background:rgba(125,211,252,.14);color:var(--sky)}
.stmt .pay span{color:var(--muted);font-size:12px}
.stmt .pay div span{display:block}
.bal{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:12px;font-weight:700}
.inv{display:flex;align-items:center;gap:12px;margin:0 18px 18px;padding:12px 14px;border-radius:14px;border:1px dashed var(--line-2)}
.inv i{font-style:normal;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--panel-2);color:var(--lime)}
.inv b{display:block;font-size:14px}.inv span{font-size:12px;color:var(--muted)}
.inv .pill{margin-left:auto}
.methods{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.methods span{font-size:12.5px;font-weight:600;padding:7px 12px;border-radius:999px;border:1px solid var(--line);color:var(--soft)}

/* E · vehicle */
.vp{padding:18px;display:grid;gap:14px}
.vp .top{display:flex;gap:14px;align-items:center}
.vp .top i{font-style:normal;width:56px;height:56px;border-radius:16px;background:var(--panel-2);display:grid;place-items:center;font-size:28px}
.vp .top b{display:block;font-size:17px}.vp .top span{font-size:12.5px;color:var(--muted)}
.figs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.figs div{background:var(--panel-2);border-radius:12px;padding:10px}
.figs small{display:block;font-size:10.5px;color:var(--muted)}
.figs b{font-family:Anton;font-weight:400;font-size:20px}
.photos{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.photos i{aspect-ratio:4/3;border-radius:10px;background:linear-gradient(135deg,#2E3C35,#171F1B);border:1px solid var(--line)}
.mlog .ln2{padding:9px 0;border-top:1px solid var(--line);font-size:13px}
.mlog .ln2 span{color:var(--muted)}

/* F · customers */
.cust{padding:18px;display:grid;gap:12px}
.cust .top{display:flex;gap:12px;align-items:center}
.cust .av{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,#2D3A34,#1B2420);display:grid;place-items:center;font-weight:700;color:var(--soft)}
.cust .top b{display:block;font-size:16px}.cust .top span{font-size:12.5px;color:var(--muted)}
.docs{display:flex;gap:8px}
.docs span{flex:1;display:flex;gap:8px;align-items:center;font-size:12.5px;padding:10px 12px;border-radius:12px;background:var(--panel-2);color:var(--soft)}
.warn{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:rgba(253,164,175,.08);border:1px solid rgba(253,164,175,.3);font-size:13px}
.warn i{font-style:normal;color:var(--rose);font-weight:800}
.warn b{color:var(--rose)}
.match{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:14px;background:rgba(198,244,50,.07);border:1px solid rgba(198,244,50,.3);font-size:13px}
.match .pill{margin-left:auto}

/* G · reports */
.rep{padding:18px;display:grid;gap:14px}
.rtiles{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.rtiles div{background:var(--panel-2);border-radius:12px;padding:10px 12px}
.rtiles small{display:block;font-size:10.5px;color:var(--muted)}
.rtiles b{font-family:Anton;font-weight:400;font-size:21px}
.util{font-size:14px;padding:12px 14px;border-radius:12px;background:var(--panel-2)}
.util b{color:var(--lime)}
.perf{display:grid;gap:8px;font-size:12.5px}
.perf div{display:grid;grid-template-columns:120px 1fr 70px;gap:10px;align-items:center}
.perf span{color:var(--soft)}
.perf i{height:8px;border-radius:9px;background:linear-gradient(90deg,var(--em),var(--lime));transform-origin:left;transform:scaleX(0);transition:transform 1s var(--ease)}
.mock.in .perf i{transform:scaleX(var(--w))}
.perf em{font-style:normal;text-align:right;color:var(--muted)}
.pack{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px 14px;border-radius:14px;border:1px dashed var(--line-2)}
.pack b{font-size:13px;margin-right:4px}
.pack span{font-size:11.5px;padding:5px 9px;border-radius:8px;background:var(--panel-2);color:var(--soft)}

/* H · team */
.team{display:grid;grid-template-columns:1.1fr 1fr}
.perm{padding:18px;border-right:1px solid var(--line)}
.perm table{width:100%;border-collapse:collapse;font-size:13px}
.perm th{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:center;padding:0 0 10px}
.perm th:first-child{text-align:left}
.perm td{padding:9px 0;border-top:1px solid var(--line)}
.perm td:not(:first-child){text-align:center}
.tg{display:inline-block;width:34px;height:20px;border-radius:99px;background:var(--line-2);position:relative;transition:background .35s}
.tg::after{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .35s var(--spring)}
.tg.on{background:var(--em)}
.tg.on::after{transform:translateX(14px)}
.feed{padding:18px;display:grid;gap:10px;align-content:start}
.feed h4{font-size:13px;font-weight:600}
.ev{display:flex;gap:10px;font-size:12.5px;padding:10px 12px;border-radius:12px;background:var(--panel-2)}
.ev i{font-style:normal;width:26px;height:26px;flex:none;border-radius:50%;background:var(--panel-3);display:grid;place-items:center;font-size:11px;font-weight:700;color:var(--soft)}
.ev span{display:block;color:var(--muted);font-size:11.5px}

/* messages */
.msgs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.mc{border-radius:var(--r);border:1px solid var(--line);background:var(--panel);padding:24px;display:flex;gap:16px;align-items:flex-start;transition:border-color .4s,transform .5s var(--ease)}
.mc:hover{border-color:var(--line-2);transform:translateY(-4px)}
.mc i{font-style:normal;width:44px;height:44px;flex:none;border-radius:14px;display:grid;place-items:center;background:var(--panel-2);font-size:20px}
.mc b{display:block;font-size:16px;margin-bottom:4px}
.mc span{color:var(--muted);font-size:14px}
.mc em{display:inline-block;margin-top:10px;font-style:normal;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--lime)}
.mc em.how{color:var(--sky)}
.fromline{text-align:center;margin-top:26px;color:var(--muted);font-size:15px}
.fromline b{color:var(--text)}

.cta h2{font-size:clamp(52px,8vw,136px)}
/* sibling-page structure (matches spaces / appointments / sessions) */
.shero{position:relative;padding:140px 0 110px;overflow:hidden}
.shero .gridbg{mask-image:radial-gradient(ellipse 70% 60% at 70% 40%,#000 15%,transparent 72%)}
.shero .glow{position:absolute;width:800px;height:800px;right:-10%;top:50%;translate:0 -50%;background:radial-gradient(circle,rgba(198,244,50,.16),transparent 62%);pointer-events:none}
.sgrid{position:relative;display:grid;grid-template-columns:1fr 1.05fr;gap:52px;align-items:center}
.brandline{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.brandline .nm{font-family:Fredoka;font-weight:600;font-size:28px}
.brandline .nm b{color:var(--lime)}
.freepill{display:inline-flex;align-items:center;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--lime-ink);background:var(--lime);border-radius:999px;padding:6px 14px}
.shero h1{font-size:clamp(50px,6vw,98px);margin:0 0 24px}
.shero h1 .ln{display:block;overflow:hidden;padding-bottom:.03em}
.shero h1 .ln>span{display:inline-block}
.js .shero h1 .ln>span{transform:translateY(105%);animation:rise 1.1s var(--ease) forwards}
.shero h1 .ln:nth-child(2)>span{animation-delay:.1s}
.shero .lead{font-size:18.5px;color:var(--soft);max-width:31em}
.shero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.shero .assure{margin-top:22px}
.bp{position:relative;border-radius:26px;border:1px solid var(--line-2);background:var(--panel);padding:18px;box-shadow:0 60px 120px -50px rgba(0,0,0,.9),0 0 120px -40px rgba(198,244,50,.3)}
.bp .bph{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted);padding:2px 4px 14px}
.bp .bph b{color:var(--text);font-size:13px}
.bp .bph em{font-style:normal;font-family:ui-monospace,Menlo,monospace;color:var(--lime);display:inline-flex;align-items:center;gap:6px}
.bp .bph em::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 10px var(--lime);animation:blinkdot 1.6s ease-in-out infinite}
@keyframes blinkdot{50%{opacity:.3}}
.bp .board{margin:0;max-width:none;border-radius:18px;box-shadow:none;border:1px solid var(--line)}
.bp .bhead{padding:10px 14px;font-size:11.5px}
.bp .bhead b{display:none}
.bp .legend{gap:10px;font-size:10.5px}
.bp .bgrid{padding:6px 14px 14px}
.bp .bdays,.bp .brow{grid-template-columns:124px 1fr}
.bp .bdays>div{font-size:10px}
.bp .brow{min-height:40px}.bp .lane{height:40px}
.bp .bk{top:7px;height:26px;font-size:10.5px;padding:0 8px}
.bp .brow .veh{font-size:12px}
.bp .nowline{left:calc(124px + 14px + (100% - 152px) * var(--now,.47))}
.bp .btoast{top:auto;right:-22px;bottom:-46px;left:auto;font-size:11.5px;z-index:3;box-shadow:0 24px 50px -16px rgba(0,0,0,.9),0 0 30px -8px rgba(198,244,50,.4)}
.bp .board{overflow:visible}
.bp .bgrid{overflow:hidden;border-radius:0 0 18px 18px}
.who{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.who span{font-size:15px;font-weight:600;padding:12px 20px;border-radius:999px;border:1px solid var(--line-2);background:var(--panel);transition:all .35s var(--ease)}
.who span:hover{border-color:var(--lime);color:var(--lime);transform:translateY(-3px)}
.pains{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.pain{border-radius:var(--r);border:1px solid var(--line);background:var(--panel);padding:30px;min-height:260px;display:flex;flex-direction:column;transition:border-color .4s,transform .5s var(--ease)}
.pain:hover{border-color:rgba(198,244,50,.5);transform:translateY(-4px)}
.pain .pn{font-family:Anton;font-size:18px;color:var(--lime);letter-spacing:.06em}
.pain h3{font-size:28px;margin:auto 0 10px}
.pain p{color:var(--muted);font-size:15px}
.pain .fix{display:flex;gap:8px;align-items:flex-start;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:14px;font-weight:600;color:var(--text)}
.pain .fix .icon{width:17px;height:17px;color:var(--lime);margin-top:2px}
.family{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.fam{border-radius:var(--r);border:1px solid var(--line);background:var(--panel);padding:26px;display:flex;flex-direction:column;gap:6px;transition:border-color .4s,transform .5s var(--ease)}
.fam:hover{transform:translateY(-4px);border-color:var(--line-2)}
.fam .fn{font-family:Fredoka;font-weight:600;font-size:24px}
.fam .fn b{color:var(--c)}
.fam .fd{color:var(--muted);font-size:14.5px}
.fam .fs{margin-top:14px;font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--c)}
@media (max-width:1100px){.sgrid{grid-template-columns:1fr}.pains,.family{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.pains,.family{grid-template-columns:1fr}.shero{padding-top:110px}.bp .legend{display:none}.bp .bdays,.bp .brow{grid-template-columns:96px 1fr}.bp .nowline{left:calc(96px + 14px + (100% - 124px) * var(--now,.47))}.bp .btoast{right:6px;left:auto}}
@media (prefers-reduced-motion:reduce){.js .shero h1 .ln>span{transform:none}}
/* pricing */
.fp-offer{display:flex;align-items:center;gap:12px;width:fit-content;max-width:100%;margin:0 auto 26px;padding:7px 16px 7px 7px;border-radius:999px;border:1px solid rgba(198,244,50,.4);background:rgba(198,244,50,.08);font-size:14.5px;font-weight:600;transition:border-color .3s,background .3s}
.fp-offer:hover{border-color:var(--lime);background:rgba(198,244,50,.14)}
.fp-offer .tp-tag{flex:none;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;background:var(--lime);color:var(--lime-ink);border-radius:999px;padding:5px 10px}
.fp-offer .icon{width:15px;height:15px;color:var(--lime);flex:none}
.fplans{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;align-items:stretch}
.fplans>*{min-width:0}
.fp{position:relative;display:flex;flex-direction:column;border-radius:var(--r);border:1px solid var(--line);background:var(--panel);padding:26px 22px 22px}
.fp.hl{border:2px solid var(--lime);box-shadow:0 0 70px -24px rgba(198,244,50,.6)}
.fp-badge{position:absolute;top:-12px;left:22px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;background:var(--lime);color:var(--lime-ink);padding:5px 11px;border-radius:999px}
.fp.hl .fp-badge{left:21px;top:-13px}
.fp:not(.hl) .fp-badge{background:var(--panel-3);color:var(--lime);border:1px solid rgba(198,244,50,.4)}
.fp h3{font-size:14px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.fp-for{font-size:14px;color:var(--muted);line-height:1.45;margin-top:6px;min-height:2.9em}
.fp-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;margin:18px 0 2px}
.fp-price b{font-family:Anton;font-weight:400;font-size:clamp(36px,3vw,46px);line-height:1}
.fp-price span{font-size:14px;color:var(--soft);font-weight:600}
.fp-unit{font-size:13px;color:var(--lime);font-weight:600}
.fp-cap{display:flex;align-items:center;gap:9px;margin:18px 0 0;padding:11px 12px;border-radius:12px;background:var(--bg-2);border:1px solid var(--line);font-size:14.5px;font-weight:700}
.fp-cap .icon{width:18px;height:18px;color:var(--lime);flex:none}
.fp ul{list-style:none;display:grid;align-content:start;gap:8px;margin:16px 0 22px;font-size:13.5px;color:var(--soft);flex:1}
.fp li{display:flex;gap:8px}
.fp li .icon{width:15px;height:15px;color:var(--lime);margin-top:3px;flex:none}
.fp .btn{padding:13px 14px;font-size:12px;width:100%}
.fpricing .every{justify-content:center;gap:12px 26px;margin-top:22px}
.fcmp{margin-top:44px;border-radius:var(--r);border:1px solid var(--line);background:var(--panel);overflow-x:auto}
.fcmp table{width:100%;min-width:720px;border-collapse:collapse;font-size:14.5px}
.fcmp th,.fcmp td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:center}
.fcmp tbody tr:last-child>*{border-bottom:0}
.fcmp th:first-child{text-align:left;font-weight:500;color:var(--soft)}
.fcmp thead th{background:var(--panel-2);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);vertical-align:bottom}
.fcmp thead th:first-child{color:var(--text)}
.fcmp thead th b{display:block;font-family:Anton;font-weight:400;font-size:22px;letter-spacing:.01em;color:var(--text);margin-top:4px}
.fcmp thead th.hl{color:var(--lime)}
.fcmp tr.diff td{font-weight:800;color:var(--text);font-size:15.5px}
.fcmp td .icon{width:18px;height:18px;color:var(--lime);stroke-width:2.6;vertical-align:middle}
.fcmp th[scope=row]{position:sticky;left:0;background:var(--panel)}

@media (max-width:1100px){
  .deep,.deep.flip{grid-template-columns:1fr;gap:44px;padding:90px 0}
  .deep.flip .copy{order:0}
  .inbox,.bform,.team{grid-template-columns:1fr}
  .ilist,.cal,.perm{border-right:0;border-bottom:1px solid var(--line)}
  .msgs{grid-template-columns:1fr 1fr}
  .life{grid-template-columns:repeat(3,1fr);row-gap:40px}.life .ln{display:none}
  .fplans{grid-template-columns:repeat(3,1fr);row-gap:24px}
}
@media (max-width:760px){
  .bdays,.brow{grid-template-columns:96px 1fr}
  .nowline{left:calc(96px + 20px + (100% - 136px) * var(--now,.47))}
  .legend{display:none}
  .btoast{left:20px;right:20px}
  .msgs{grid-template-columns:1fr}
  .life{grid-template-columns:1fr 1fr}
  .figs,.rtiles{grid-template-columns:1fr 1fr}
  .perf div{grid-template-columns:96px 1fr 60px}
  .fplans{grid-template-columns:1fr}
  .fp-for{min-height:0}
  .fcmp{display:none}
  .fp-offer{border-radius:18px;align-items:flex-start;font-size:13.5px}
  .phero{padding-top:120px}
}
@media (prefers-reduced-motion:reduce){
  .js .phero h1 .ln>span,.js .board .bk{transform:none}
  .pop{opacity:1;transform:none}
  .sig path{stroke-dashoffset:0}
  .perf i{transform:scaleX(var(--w))}
}
.mc i,.rail .veh i{color:var(--lime);font-size:22px}
.checkrow i{font-size:14px}
.inv i{font-size:20px}
.docs span .icon{color:var(--lime)}
.vp .top i{color:var(--lime)}
