/* MKW Mechanical Worx — site styles */

body{margin:0;background:#FFFFFF}
a{color:#E21F26}a:hover{color:#B3151B}
.pg{font-family:Inter,system-ui,sans-serif;color:#141416;font-size:17px;line-height:1.6;background:#FFFFFF;overflow-x:clip}
.pg p{margin:0}
.w{max-width:1240px;margin:0 auto;padding:0 32px;box-sizing:border-box}
.sec{padding:104px 0;position:relative;isolation:isolate}
.sec-s{padding:64px 0;position:relative;isolation:isolate}
.dk{background:#0F1012;color:#FFFFFF}
.gr{background:#F3F4F6}
.rd{background:#E21F26;color:#FFFFFF}
.h1{margin:0;font-family:Oswald,Impact,sans-serif;font-weight:700;text-transform:uppercase;font-size:70px;line-height:1.02;letter-spacing:.005em}
.h2{margin:0;font-family:Oswald,Impact,sans-serif;font-weight:700;text-transform:uppercase;font-size:50px;line-height:1.06}
.h3{margin:0;font-family:Oswald,Impact,sans-serif;font-weight:600;text-transform:uppercase;font-size:22px;line-height:1.2;letter-spacing:.02em}
.red{color:#E21F26}
.eb{display:inline-flex;align-items:center;gap:12px;font-family:Oswald,Impact,sans-serif;font-weight:600;font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:#E21F26}
.eb:before{content:"";width:30px;height:3px;background:#E21F26;border-radius:2px}
.lead{font-size:19px;color:#3B3E45}
.mut{color:#4A4E57}
.dk .lead,.dk .mut{color:#B9BDC5}
.note{font-size:14px;color:#5E636C}
.dk .note{color:#9EA3AC}
.stack{display:flex;flex-direction:column;gap:20px}
.head{display:flex;flex-direction:column;gap:14px;max-width:760px}
.g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.g4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:64px;align-items:center}
.btns{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 28px;border-radius:10px;font-family:Oswald,Impact,sans-serif;font-weight:600;font-size:16px;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;box-sizing:border-box;border:0;cursor:pointer;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn-r{background:#E21F26;color:#FFFFFF;box-shadow:0 10px 24px rgba(226,31,38,.32)}.btn-r:hover{background:#C3171D;color:#FFFFFF}
.btn-d{background:#141416;color:#FFFFFF}.btn-d:hover{background:#000000;color:#FFFFFF}
.btn-o{background:transparent;color:#141416;box-shadow:inset 0 0 0 2px #141416}.btn-o:hover{color:#141416}
.dk .btn-o,.rd .btn-o{color:#FFFFFF;box-shadow:inset 0 0 0 2px rgba(255,255,255,.85)}
.rd .btn-d{background:#0F1012}
.card{background:#FFFFFF;border:1px solid #E5E7EB;border-radius:18px;padding:28px;display:flex;flex-direction:column;gap:12px;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(15,16,18,.10);border-color:#E21F26}
.dk .card{background:#17181C;border-color:#2A2C32}
.ic{width:52px;height:52px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:#FDECEC;color:#E21F26;flex:none;transition:transform .3s ease,background-color .3s ease,color .3s ease}
.card:hover .ic{background:#E21F26;color:#FFFFFF;transform:rotate(-6deg)}
.dk .ic{background:rgba(226,31,38,.16);color:#FF5A5F}
.ticks{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.ticks li{position:relative;padding-left:34px}
.ticks li:before{content:"";position:absolute;left:0;top:.2em;width:22px;height:22px;border-radius:6px;background:#E21F26}
.ticks li:after{content:"";position:absolute;left:8px;top:calc(.2em + 4px);width:5px;height:10px;border:solid #FFFFFF;border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
.hz{height:12px;background:repeating-linear-gradient(135deg,#E21F26 0 16px,#0F1012 16px 32px)}
.tchip{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;font-size:14px;font-weight:600;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#FFFFFF}
.tchip i{width:8px;height:8px;border-radius:50%;background:#22C55E;box-shadow:0 0 0 4px rgba(34,197,94,.18)}
.ph{position:relative;border-radius:20px;overflow:hidden;background:#1B1C20 repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 18px,transparent 18px 36px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#9EA3AC;font-size:14px;text-align:center;padding:24px;box-sizing:border-box}
.ph b{color:#FFFFFF;font-family:Oswald,Impact,sans-serif;font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:15px}
.gr .ph,.ph.lt{background:#E9EBEE repeating-linear-gradient(135deg,rgba(15,16,18,.04) 0 18px,transparent 18px 36px);color:#5E636C}
.gr .ph b,.ph.lt b{color:#141416}
/* header */
.top{background:#0F1012;color:#C9CDD3;font-size:14px}
.top .w{display:flex;justify-content:space-between;gap:16px;min-height:42px;align-items:center;flex-wrap:wrap}
.top b{color:#FFFFFF}.top .sos{color:#FF5A5F;font-weight:700}
.hd{background:#FFFFFF;border-bottom:1px solid #E5E7EB;position:sticky;top:0;z-index:40}
.hd-in{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:84px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:#141416}
.logo img{height:64px;width:auto;display:block}
.logo span{font-family:Oswald,Impact,sans-serif;font-weight:700;font-size:20px;letter-spacing:.06em;text-transform:uppercase;line-height:1}
.logo small{display:block;font-family:Inter,sans-serif;font-weight:600;font-size:11px;letter-spacing:.14em;color:#E21F26;margin-top:4px}
.nl{display:flex;gap:28px;align-items:center}
.nl a{font-family:Oswald,Impact,sans-serif;font-weight:500;font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:#3B3E45;text-decoration:none;min-height:44px;display:inline-flex;align-items:center;border-bottom:3px solid transparent}
.nl a:hover{color:#E21F26}
.nl a[aria-current]{color:#141416;border-bottom-color:#E21F26}
.hd-btns{display:flex;gap:10px}
.hd-btns .btn{min-height:46px;padding:0 20px;font-size:15px}
.mnav{display:none;position:relative}
.mnav summary{list-style:none;cursor:pointer;min-height:46px;display:inline-flex;align-items:center;gap:8px;padding:0 16px;border-radius:10px;background:#141416;color:#FFFFFF;font-family:Oswald,Impact,sans-serif;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.mnav summary::-webkit-details-marker{display:none}
.mnav-p{position:absolute;right:0;top:56px;width:280px;background:#FFFFFF;border:1px solid #E5E7EB;border-radius:16px;padding:10px;display:flex;flex-direction:column;box-shadow:0 24px 48px rgba(15,16,18,.18)}
.mnav-p a{padding:12px 14px;border-radius:10px;color:#141416;text-decoration:none;font-family:Oswald,Impact,sans-serif;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.mnav-p a:hover{background:#F3F4F6}
.mnav-p .btn{margin-top:8px;color:#FFFFFF}
/* footer */
.ft{background:#0A0B0C;color:#9EA3AC;font-size:15px;padding:72px 0 28px}
.ft-in{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:40px}
.ft h4{margin:0 0 14px;color:#FFFFFF;font-family:Oswald,Impact,sans-serif;font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:15px}
.ft a{color:#C9CDD3;text-decoration:none;display:block;padding:4px 0}.ft a:hover{color:#FFFFFF}
.ft-logo{background:#FFFFFF;border-radius:14px;padding:10px;display:inline-flex}
.ft-logo img{height:84px;width:auto;display:block}
.ft-b{border-top:1px solid #24262B;margin-top:48px;padding-top:20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px}
/* motion */
@keyframes mUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.a1{animation:mUp .7s cubic-bezier(.2,.7,.2,1) both}.a2{animation:mUp .7s .1s cubic-bezier(.2,.7,.2,1) both}.a3{animation:mUp .7s .2s cubic-bezier(.2,.7,.2,1) both}.a4{animation:mUp .7s .3s cubic-bezier(.2,.7,.2,1) both}
@keyframes mGlow{from{transform:translate(0,0) scale(1)}to{transform:translate(-80px,60px) scale(1.2)}}
.glow:before{content:"";position:absolute;z-index:-1;width:620px;height:620px;right:-160px;top:-200px;border-radius:50%;background:radial-gradient(circle,rgba(226,31,38,.38),transparent 65%);animation:mGlow 12s ease-in-out infinite alternate;pointer-events:none}
.glow{overflow:hidden}
.grid-tx:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px) 0 0/56px 56px,linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px) 0 0/56px 56px;-webkit-mask:radial-gradient(ellipse 70% 80% at 80% 20%,#000,transparent 75%);mask:radial-gradient(ellipse 70% 80% at 80% 20%,#000,transparent 75%)}
.dots-tx:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(#CDD2D9 1.2px,transparent 1.6px) 0 0/22px 22px;-webkit-mask:linear-gradient(160deg,#000,transparent 50%);mask:linear-gradient(160deg,#000,transparent 50%)}
/* responsive */
@media (max-width:1100px){.nl,.hd-btns{display:none}.mnav{display:block}}
@media (max-width:900px){
.w{padding:0 22px}.sec{padding:72px 0}
.h1{font-size:46px}.h2{font-size:36px}
.split,.g2{grid-template-columns:minmax(0,1fr);gap:40px}
.g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}
.ft-in{grid-template-columns:repeat(2,minmax(0,1fr))}
.top .hide-m{display:none}
}
@media (max-width:560px){
.w{padding:0 20px}.sec{padding:60px 0}
.h1{font-size:40px}.h2{font-size:32px}.lead{font-size:17px}.pg{font-size:16px}
.g3,.g4{grid-template-columns:minmax(0,1fr)}
.btns .btn{flex:1 1 auto}
.card{padding:22px}
.logo img{height:52px}.logo span{font-size:17px}
.ft-in{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){.pg *,.pg *:before,.pg *:after{animation:none !important;transition:none !important}}
/* realistic app mockups — 1em = 1/56 of the mockup width */
.mk{position:relative;container-type:inline-size;width:100%;max-width:600px;margin:0 auto}
.mk-in{position:relative;font-size:calc(100cqw / 56);height:46em;font-family:Inter,system-ui,sans-serif;line-height:1.35;color:#141416}
.mk-in span{line-height:1.3}
.mk-win{position:absolute;background:#FFFFFF;border-radius:1.4em;overflow:hidden;box-shadow:0 3em 6em rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.06);animation:mkIn .9s cubic-bezier(.2,.7,.2,1) both}
.mk-bar{height:3.2em;display:flex;align-items:center;gap:.55em;padding:0 1.2em;background:#F3F4F6;border-bottom:1px solid #E5E7EB}
.mk-bar>i{width:.9em;height:.9em;border-radius:50%;background:#FF5F57}.mk-bar>i:nth-child(2){background:#FEBC2E}.mk-bar>i:nth-child(3){background:#28C840}
.mk-bar b{font-size:1.15em;font-weight:600;color:#3B3E45;margin-left:.5em}
.mk-tag{margin-left:auto;font-size:.95em;font-weight:600;color:#E21F26;background:#FDECEC;padding:.25em .7em;border-radius:1em}
.mk-pad{padding:1.4em 1.6em;display:flex;flex-direction:column;gap:1em}
.mk-row{display:flex;align-items:center;gap:.9em}
.mk-col{display:flex;flex-direction:column;min-width:0}
.mk-t{font-size:1.15em;font-weight:700}
.mk-s{font-size:.95em;color:#5E636C}
.mk-pill{font-size:.85em;font-weight:700;padding:.3em .75em;border-radius:1em;white-space:nowrap}
.mk-av{display:inline-grid;place-items:center;width:2.8em;height:2.8em;border-radius:.9em;flex:none;background:#141416;color:#FFFFFF}
.mk-av svg{width:58%;height:58%}
.mk-phone{position:absolute;width:20em;height:40em;border-radius:3em;background:linear-gradient(145deg,#2E3036,#0B0C0E);padding:.75em;box-sizing:border-box;box-shadow:0 3.5em 7em rgba(0,0,0,.55),inset 0 0 0 1px rgba(255,255,255,.12);animation:mkUp 1s .25s cubic-bezier(.2,.7,.2,1) both,mkBob 7s 1.4s ease-in-out infinite;z-index:2}
.mk-scr{position:relative;width:100%;height:100%;background:#F6F7F9;border-radius:2.4em;overflow:hidden}
.mk-scr:after{content:"";position:absolute;inset:0;z-index:6;pointer-events:none;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.35) 48%,transparent 60%);transform:translateX(-120%);animation:mkGlare 7s 2.5s ease-in-out infinite}
.mk-notch{position:absolute;left:50%;top:.7em;width:6em;height:1.6em;border-radius:1em;background:#0B0C0E;transform:translateX(-50%);z-index:5}
.mk-apph{background:#141416;color:#FFFFFF;padding:3.4em 1.2em 1.2em;display:flex;align-items:center;gap:.8em}
.mk-apph b{font-size:1.3em;font-family:Oswald,Impact,sans-serif;letter-spacing:.04em;text-transform:uppercase}
.mk-body{padding:1em;display:flex;flex-direction:column;gap:.8em}
.mk-box{background:#FFFFFF;border-radius:1em;padding:.9em;box-shadow:0 .3em .9em rgba(15,16,18,.06)}
.mk-chips{display:flex;gap:.45em;flex-wrap:wrap}
.mk-chip{font-size:.9em;font-weight:600;padding:.45em .8em;border-radius:2em;background:#FFFFFF;border:1px solid #E5E7EB;color:#3B3E45}
.mk-chip.on{background:#E21F26;border-color:#E21F26;color:#FFFFFF;animation:mkTap 6s 1.8s ease-in-out infinite}
.mk-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:.25em;text-align:center}
.mk-cal span{font-size:.85em;padding:.35em 0;border-radius:.6em;color:#3B3E45}
.mk-cal .dh{color:#9EA3AC;font-weight:600}
.mk-cal .off{color:#C6CAD0}
.mk-cal .sel{background:#E21F26;color:#FFFFFF;font-weight:700;animation:mkSel 6s 1s ease-in-out infinite}
.mk-slots{display:flex;gap:.4em}
.mk-slots span{flex:1;text-align:center;font-size:.85em;font-weight:600;padding:.5em 0;border-radius:.6em;background:#F3F4F6;color:#3B3E45}
.mk-slots .on{background:#141416;color:#FFFFFF}
.mk-cta{background:#E21F26;color:#FFFFFF;border-radius:.9em;padding:.95em;text-align:center;font-family:Oswald,Impact,sans-serif;font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:1.1em;box-shadow:0 .8em 1.6em rgba(226,31,38,.35);animation:mkPress 6s ease-in-out infinite}
.mk-toast{position:absolute;display:flex;align-items:center;gap:.9em;background:#FFFFFF;border-radius:1.2em;padding:1em 1.3em;box-shadow:0 2em 4em rgba(0,0,0,.45);box-sizing:border-box;animation:mkPop .7s cubic-bezier(.2,.9,.3,1.3) both,mkFloat 6s 1.5s ease-in-out infinite;z-index:4}
.mk-ti{display:inline-grid;place-items:center;width:3em;height:3em;border-radius:.9em;flex:none}
.mk-ti svg{width:55%;height:55%}
.mk-steps{display:flex;flex-direction:column;gap:.2em}
.mk-step{display:flex;align-items:center;gap:.9em;padding:.65em 0;position:relative}
.mk-dot{width:1.9em;height:1.9em;border-radius:50%;display:grid;place-items:center;flex:none;background:#E5E7EB;color:#FFFFFF}
.mk-dot svg{width:60%;height:60%}
.mk-step.done .mk-dot{background:#16A34A}
.mk-step.now .mk-dot{background:#E21F26;box-shadow:0 0 0 .4em rgba(226,31,38,.18);animation:mkRing 1.6s ease-in-out infinite}
.mk-step:not(:last-child):after{content:"";position:absolute;left:.9em;top:2.4em;width:2px;height:1.2em;background:#E5E7EB}
.mk-step.done:not(:last-child):after{background:#16A34A}
.mk-prog{height:.7em;border-radius:1em;background:#EEF0F3;overflow:hidden}
.mk-prog i{display:block;height:100%;width:64%;border-radius:1em;background:linear-gradient(90deg,#E21F26,#FF6A6F);animation:mkFill 6s ease-in-out infinite}
/* map */
.mk-map{position:relative;border-radius:1.6em;overflow:hidden;background:#EEF0F2;box-shadow:0 3em 6em rgba(0,0,0,.35);height:44em}
.mk-map svg.roads{position:absolute;inset:0;width:100%;height:100%}
.mk-route{stroke-dasharray:10 10;animation:mkDash 1s linear infinite}
.mk-van{position:absolute;left:12%;top:86%;width:3.4em;height:3.4em;margin:-1.7em 0 0 -1.7em;border-radius:50%;background:#141416;display:grid;place-items:center;box-shadow:0 .6em 1.4em rgba(0,0,0,.35);animation:mkDrive 9s ease-in-out infinite;z-index:3}
.mk-van svg{width:55%;height:55%}
.mk-pin{position:absolute;left:74%;top:33%;transform:translate(-50%,-100%);z-index:3}
.mk-pin b{display:grid;place-items:center;width:3.6em;height:3.6em;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#E21F26;box-shadow:0 .6em 1.4em rgba(226,31,38,.45)}
.mk-pin b svg{width:50%;height:50%;transform:rotate(45deg)}
.mk-pin:before{content:"";position:absolute;left:50%;bottom:-1.2em;width:6em;height:6em;margin-left:-3em;border-radius:50%;background:rgba(226,31,38,.25);animation:mkPulse 2s ease-out infinite}
.mk-sheet{position:absolute;left:1.2em;right:1.2em;bottom:1.2em;background:#FFFFFF;border-radius:1.4em;padding:1.2em;box-shadow:0 1.4em 3em rgba(0,0,0,.25);display:flex;flex-direction:column;gap:.9em;z-index:4}
.mk-search{position:absolute;left:1.2em;right:1.2em;top:1.2em;background:#FFFFFF;border-radius:1em;padding:.9em 1.1em;display:flex;align-items:center;gap:.7em;box-shadow:0 .8em 2em rgba(0,0,0,.15);z-index:4}
/* table-like rows */
.mk-tr{display:grid;grid-template-columns:2.4fr 1.6fr 1.3fr;gap:.8em;align-items:center;padding:.8em 0;border-bottom:1px solid #F0F1F3}
.mk-tr.h{font-size:.85em;font-weight:700;color:#9EA3AC;text-transform:uppercase;letter-spacing:.06em;padding-top:0}
.mk-code{font-family:'JetBrains Mono',monospace;font-size:.95em;font-weight:600;color:#141416}
.mk-new{animation:mkNew 5s 1.5s ease-in-out infinite;border-radius:.8em}
@keyframes mkIn{from{opacity:0;transform:translateY(2em) scale(.97)}to{opacity:1;transform:none}}
@keyframes mkUp{from{opacity:0;transform:translateY(3em)}to{opacity:1;transform:none}}
@keyframes mkBob{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-.9em) rotate(-.6deg)}}
@keyframes mkGlare{0%,70%{transform:translateX(-120%)}85%,100%{transform:translateX(120%)}}
@keyframes mkPop{from{opacity:0;transform:translateY(1em) scale(.92)}to{opacity:1;transform:none}}
@keyframes mkFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-.8em)}}
@keyframes mkTap{0%,40%,48%,100%{transform:scale(1)}44%{transform:scale(.9)}}
@keyframes mkSel{0%,100%{box-shadow:0 0 0 0 rgba(226,31,38,.4)}50%{box-shadow:0 0 0 .45em rgba(226,31,38,0)}}
@keyframes mkPress{0%,70%,78%,100%{transform:scale(1);filter:none}74%{transform:scale(.95);filter:brightness(.85)}}
@keyframes mkRing{0%,100%{box-shadow:0 0 0 .2em rgba(226,31,38,.25)}50%{box-shadow:0 0 0 .7em rgba(226,31,38,0)}}
@keyframes mkFill{0%{width:38%}60%,100%{width:72%}}
@keyframes mkDash{to{stroke-dashoffset:-20}}
@keyframes mkDrive{0%{left:12%;top:86%}22%{left:22%;top:68%}45%{left:40%;top:58%}68%{left:58%;top:45%}85%,100%{left:70%;top:37%}}
@keyframes mkPulse{0%{transform:scale(.4);opacity:.9}100%{transform:scale(1.6);opacity:0}}
@keyframes mkNew{0%,70%,100%{background:transparent}80%{background:#FDECEC}}
@container (max-width:430px){
.mk-in{font-size:calc(100cqw / 30);height:auto;display:flex;flex-direction:column;align-items:center;gap:1.2em;padding:.4em 0 1em}
.mk-win,.mk-phone,.mk-toast{position:relative !important;left:auto !important;top:auto !important;right:auto !important}
.mk-phone{width:21em !important;height:41em !important}
.mk-win{width:100% !important;height:auto !important}
.mk-toast{width:auto !important;max-width:100%;margin-top:0}
.mk-phone+.mk-toast{margin-top:-3.2em}
.mk-map{height:40em}
.mk-tr{grid-template-columns:2fr 1.3fr}
.mk-tr>:nth-child(2){display:none}
}
@media (prefers-reduced-motion:reduce){.mk *,.mk *:before,.mk *:after{animation:none !important}}
.mk{color:#141416}
.mk-search>span:first-child{width:1.6em;height:1.6em;display:inline-flex;flex:none}
@container (max-width:430px){.mk-hero .mk-in{font-size:calc(100cqw / 30)}}

/* hero: a booking being placed (10s loop) */
.mk-hero .mk-scr{position:relative}
.mk-tapdot{position:absolute;z-index:7;width:2.6em;height:2.6em;margin:-1.3em 0 0 -1.3em;border-radius:50%;background:rgba(20,20,22,.28);box-shadow:0 0 0 .35em rgba(255,255,255,.7);left:60%;top:110%;animation:mkTapMove 10s ease-in-out infinite,mkTapPress 10s infinite}
@keyframes mkTapMove{0%{left:60%;top:110%}8%,14%{left:17.3%;top:35.1%}22%,28%{left:38.4%;top:65.5%}34%,40%{left:50%;top:79.3%}46%,52%{left:50%;top:88.3%}60%,100%{left:70%;top:112%}}
@keyframes mkTapPress{0%,9%,12%,23%,26%,35%,38%,47%,50%,100%{transform:scale(1)}10.5%,24.5%,36.5%,48.5%{transform:scale(.7)}}
.mk-o1{animation:mkPick1 10s infinite !important}
@keyframes mkPick1{0%,10%{background:#FFFFFF;border-color:#E5E7EB;color:#3B3E45}11%,92%{background:#E21F26;border-color:#E21F26;color:#FFFFFF}96%,100%{background:#FFFFFF;border-color:#E5E7EB;color:#3B3E45}}
.mk-o2{animation:mkPick2 10s infinite !important}
@keyframes mkPick2{0%,24%{background:transparent;color:#3B3E45;font-weight:400}25%,92%{background:#E21F26;color:#FFFFFF;font-weight:700}96%,100%{background:transparent;color:#3B3E45;font-weight:400}}
.mk-o3{animation:mkPick3 10s infinite}
@keyframes mkPick3{0%,36%{background:#F3F4F6;color:#3B3E45}37%,92%{background:#141416;color:#FFFFFF}96%,100%{background:#F3F4F6;color:#3B3E45}}
.mk-o4{animation:mkPick4 10s infinite !important}
@keyframes mkPick4{0%,47%,51%,100%{transform:scale(1);filter:none}49%{transform:scale(.94);filter:brightness(.82)}}
.mk-done{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.7em;padding:2em;background:#FFFFFF;opacity:0;animation:mkDoneIn 10s infinite}
.mk-done .mk-okc{display:grid;place-items:center;width:5em;height:5em;border-radius:50%;background:#16A34A;color:#FFFFFF;font-style:normal;box-shadow:0 0 0 .8em rgba(22,163,74,.15);animation:mkOkPop 10s infinite}
.mk-done .mk-okc svg{width:55%;height:55%}
@keyframes mkDoneIn{0%,52%{opacity:0}55%,90%{opacity:1}94%,100%{opacity:0}}
@keyframes mkOkPop{0%,53%{transform:scale(0)}58%{transform:scale(1.15)}61%,100%{transform:scale(1)}}
.mk-o5{animation:mkToast5 10s infinite !important}
@keyframes mkToast5{0%,56%{opacity:0;transform:translateY(1em) scale(.92)}60%,90%{opacity:1;transform:none}95%,100%{opacity:0;transform:none}}
.mk-hero .mk-cal .sel{box-shadow:none}
@media (prefers-reduced-motion:reduce){.mk-tapdot,.mk-done{display:none}}
@container (max-width:430px){.mk-map{height:32em}}

/* ---- hero: full booking flow, 18s loop ---- */
.bk-steps{display:flex;gap:.35em;padding:0 1.1em .8em;background:#141416}
.bk-steps i{flex:1;height:.35em;border-radius:1em;background:#3B3E45;position:relative;overflow:hidden}
.bk-steps i:after{content:"";position:absolute;inset:0;background:#E21F26;transform:scaleX(0);transform-origin:left}
.bk-s1:after{animation:bkS1 18s infinite}.bk-s2:after{animation:bkS2 18s infinite}.bk-s3:after{animation:bkS3 18s infinite}.bk-s4:after{animation:bkS4 18s infinite}.bk-s5:after{animation:bkS5 18s infinite}
@keyframes bkS1{0%{transform:scaleX(.15)}14%,97%{transform:scaleX(1)}99%,100%{transform:scaleX(.15)}}
@keyframes bkS2{0%,15%{transform:scaleX(0)}32%,97%{transform:scaleX(1)}99%,100%{transform:scaleX(0)}}
@keyframes bkS3{0%,33%{transform:scaleX(0)}50%,97%{transform:scaleX(1)}99%,100%{transform:scaleX(0)}}
@keyframes bkS4{0%,51%{transform:scaleX(0)}67%,97%{transform:scaleX(1)}99%,100%{transform:scaleX(0)}}
@keyframes bkS5{0%,68%{transform:scaleX(0)}79%,97%{transform:scaleX(1)}99%,100%{transform:scaleX(0)}}
.bk-view{position:absolute;left:0;right:0;top:8.4em;bottom:0;overflow:hidden}
.bk-track{display:flex;width:500%;height:100%;animation:bkSlide 18s infinite}
@keyframes bkSlide{0%,15%{transform:translateX(0)}17%,33%{transform:translateX(-20%)}35%,51%{transform:translateX(-40%)}53%,68%{transform:translateX(-60%)}70%,98%{transform:translateX(-80%)}99%,100%{transform:translateX(0)}}
.bk-track{animation-timing-function:cubic-bezier(.6,0,.3,1)}
.bk-pane{width:20%;height:100%;box-sizing:border-box;padding:.9em 1em 1em;display:flex;flex-direction:column;gap:.6em}
.bk-k{font-size:.75em;font-weight:700;color:#E21F26;letter-spacing:.08em;text-transform:uppercase}
.bk-h{font-family:Oswald,Impact,sans-serif;font-weight:700;font-size:1.45em;text-transform:uppercase;line-height:1.1;margin-bottom:.2em}
.bk-opt{display:flex;align-items:center;gap:.7em;background:#FFFFFF;border:1.5px solid #E5E7EB;border-radius:.9em;padding:.65em .75em}
.bk-opt b{font-size:.95em}.bk-opt .mk-s{font-size:.78em}
.bk-radio{margin-left:auto;width:1.2em;height:1.2em;border-radius:50%;border:2px solid #E21F26;box-sizing:border-box;position:relative;flex:none}
.bk-radio:after{content:"";position:absolute;inset:.18em;border-radius:50%;background:#E21F26;animation:bkPickDot 18s infinite}
.bk-radio.off{border-color:#CDD2D8}.bk-radio.off:after{display:none}
@keyframes bkPickDot{0%,4%{transform:scale(0)}5%,100%{transform:scale(1)}}
.bk-pick1{animation:bkPick1 18s infinite}
@keyframes bkPick1{0%,4%{border-color:#E5E7EB;background:#FFFFFF}5%,100%{border-color:#E21F26;background:#FFF5F5}}
.bk-add{font-size:.85em;font-weight:700;color:#E21F26}
.bk-go{margin-top:auto;background:#E21F26;color:#FFFFFF;border-radius:.9em;padding:.9em;text-align:center;font-family:Oswald,Impact,sans-serif;font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:1.05em;box-shadow:0 .7em 1.4em rgba(226,31,38,.3)}
.bk-go1{animation:bkPress1 18s infinite}.bk-go2{animation:bkPress2 18s infinite}.bk-go3{animation:bkPress3 18s infinite}.bk-go4{animation:bkPress4 18s infinite}.bk-go5{animation:bkPress5 18s infinite;background:#16A34A;box-shadow:0 .7em 1.4em rgba(22,163,74,.3)}
@keyframes bkPress1{0%,11%,13%,100%{transform:scale(1);filter:none}12%{transform:scale(.94);filter:brightness(.85)}}
@keyframes bkPress2{0%,30%,32%,100%{transform:scale(1);filter:none}31%{transform:scale(.94);filter:brightness(.85)}}
@keyframes bkPress3{0%,48%,50%,100%{transform:scale(1);filter:none}49%{transform:scale(.94);filter:brightness(.85)}}
@keyframes bkPress4{0%,65.5%,67.5%,100%{transform:scale(1);filter:none}66.5%{transform:scale(.94);filter:brightness(.85)}}
@keyframes bkPress5{0%,76%,78%,100%{transform:scale(1);filter:none}77%{transform:scale(.94);filter:brightness(.85)}}
.bk-grid{display:grid;grid-template-columns:1fr 1fr;gap:.45em}
.bk-c{font-size:.82em;font-weight:600;text-align:center;padding:.65em .3em;border-radius:.7em;background:#FFFFFF;border:1.5px solid #E5E7EB;color:#3B3E45}
.bk-pick2{animation:bkPick2 18s infinite}
@keyframes bkPick2{0%,20%{background:#FFFFFF;border-color:#E5E7EB;color:#3B3E45}21%,100%{background:#E21F26;border-color:#E21F26;color:#FFFFFF}}
.bk-field{display:flex;align-items:center;min-height:2.6em;background:#FFFFFF;border:1.5px solid #DCE1E8;border-radius:.7em;padding:.55em .75em;box-sizing:border-box}
.bk-lab{font-size:.78em;font-weight:700;color:#5E636C;margin-bottom:-.35em}
.bk-type{font-weight:500;font-size:.88em;color:#141416;clip-path:inset(0 100% 0 0)}
.bk-t1{animation:bkT1 18s steps(24) infinite}.bk-t2{animation:bkT2 18s steps(12) infinite}.bk-t3{animation:bkT3 18s steps(14) infinite}.bk-t4{animation:bkT4 18s steps(16) infinite}
@keyframes bkT1{0%,22%{clip-path:inset(0 100% 0 0)}29%,100%{clip-path:inset(0 0 0 0)}}
@keyframes bkT2{0%,54%{clip-path:inset(0 100% 0 0)}57.5%,100%{clip-path:inset(0 0 0 0)}}
@keyframes bkT3{0%,58%{clip-path:inset(0 100% 0 0)}61.5%,100%{clip-path:inset(0 0 0 0)}}
@keyframes bkT4{0%,62%{clip-path:inset(0 100% 0 0)}65%,100%{clip-path:inset(0 0 0 0)}}
.bk-t1{display:block;white-space:normal;clip-path:none;-webkit-mask:linear-gradient(90deg,#000 50%,transparent 50%) 100% 0/200% 100% no-repeat;mask:linear-gradient(90deg,#000 50%,transparent 50%) 100% 0/200% 100% no-repeat;animation:bkM1 18s infinite}
@keyframes bkM1{0%,22%{-webkit-mask-position:100% 0;mask-position:100% 0}29%,100%{-webkit-mask-position:0 0;mask-position:0 0}}
.bk-pane .mk-cal span{font-size:.8em;padding:.3em 0}
.bk-pick3{animation:bkPick3 18s infinite;border-radius:.6em}
@keyframes bkPick3{0%,38%{background:transparent;color:#3B3E45;font-weight:400}39%,100%{background:#E21F26;color:#FFFFFF;font-weight:700}}
.bk-pick4{animation:bkPick4 18s infinite}
@keyframes bkPick4{0%,42%{background:#F3F4F6;color:#3B3E45}43%,100%{background:#141416;color:#FFFFFF}}
.bk-seg{display:flex;background:#EEF0F3;border-radius:.8em;padding:.25em;gap:.25em}
.bk-seg span{flex:1;text-align:center;font-size:.78em;font-weight:600;padding:.55em 0;border-radius:.6em;color:#5E636C}
.bk-seg .bk-on{background:#FFFFFF;color:#141416;box-shadow:0 .2em .5em rgba(0,0,0,.08)}
.bk-sum{display:flex;flex-direction:column;gap:.1em;padding:.4em .9em}
.bk-sum div{display:flex;justify-content:space-between;gap:.6em;padding:.5em 0;border-bottom:1px solid #F0F1F3;font-size:.85em}
.bk-sum div:last-child{border-bottom:0}
.bk-sum span{color:#5E636C}
.bk-tap{position:absolute;z-index:7;width:2.6em;height:2.6em;margin:-1.3em 0 0 -1.3em;border-radius:50%;background:rgba(20,20,22,.28);box-shadow:0 0 0 .35em rgba(255,255,255,.75);left:70%;top:110%;animation:bkTapM 18s ease-in-out infinite,bkTapP 18s infinite}
.bk-done{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.7em;padding:2em;background:#FFFFFF;opacity:0;pointer-events:none;animation:bkDone 18s infinite}
.bk-done .mk-okc{display:grid;place-items:center;width:5em;height:5em;border-radius:50%;background:#16A34A;color:#FFFFFF;font-style:normal;box-shadow:0 0 0 .8em rgba(22,163,74,.15);animation:bkOk 18s infinite}
.bk-done .mk-okc svg{width:55%;height:55%}
@keyframes bkDone{0%,78.5%{opacity:0}80%,97%{opacity:1}99%,100%{opacity:0}}
@keyframes bkOk{0%,79%{transform:scale(0)}82%{transform:scale(1.15)}84%,100%{transform:scale(1)}}
.bk-toast{animation:bkToast 18s infinite !important}
@keyframes bkToast{0%,80%{opacity:0;transform:translateY(1em) scale(.92)}83%,96%{opacity:1;transform:none}99%,100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.bk-tap,.bk-done{display:none}.bk-type,.bk-t1{clip-path:none;-webkit-mask:none;mask:none}}
@keyframes bkTapM{0%{left:70%;top:108%}3%,6%{left:50%;top:39.4%}9.5%,13%{left:50%;top:93.4%}18%,22%{left:27%;top:37.5%}24%,28%{left:86%;top:61.4%}29.5%,32%{left:50%;top:93.4%}37%,40%{left:38.1%;top:51.2%}41.5%,44%{left:50%;top:58.9%}47%,50%{left:50%;top:93.4%}54%,63%{left:86%;top:41.2%}64.5%,67.5%{left:50%;top:93.4%}72%,78.5%{left:50%;top:93.4%}82%,100%{left:72%;top:110%}}
@keyframes bkTapP{0%,4%,6%,11%,13%,20%,22%,30%,32%,38%,40%,42%,44%,48%,50%,65.5%,67.5%,76%,78%,100%{transform:scale(1)}5%,12%,21%,31%,39%,43%,49%,66.5%,77%{transform:scale(.7)}}
/* page sections */
.hero{padding:88px 0 120px}
.hero .split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.hero .h1 em{font-style:normal;color:#E21F26}
.tchips{display:flex;flex-wrap:wrap;gap:10px}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:#141416;border-radius:20px;overflow:hidden;margin-top:-56px;position:relative;z-index:2;box-shadow:0 24px 50px rgba(15,16,18,.25)}
.stat{padding:30px 28px;display:flex;flex-direction:column;gap:4px;color:#FFFFFF;border-right:1px solid #2A2C32}
.stat:last-child{border-right:0}
.stat b{font-family:Oswald,Impact,sans-serif;font-weight:700;font-size:40px;line-height:1;letter-spacing:.01em}
.stat b i{font-style:normal;color:#E21F26}
.stat span{color:#9EA3AC;font-size:14px}
.svc{display:flex;align-items:center;gap:16px;padding:20px 22px;text-decoration:none;color:#141416}
.svc .mk-col{gap:2px;flex:1}
.svc .h3{font-size:19px}
.svc .avail{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#16A34A}
.svc .avail:before{content:"";width:7px;height:7px;border-radius:50%;background:#16A34A}
.svc .go{width:40px;height:40px;border-radius:50%;border:1.5px solid #D5D8DD;display:grid;place-items:center;color:#141416;flex:none;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}
.svc:hover .go{background:#E21F26;border-color:#E21F26;color:#FFFFFF;transform:translateX(4px)}
.svc p.mut{font-size:15px}
.step3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;counter-reset:s}
.step3 .card{position:relative;padding-top:40px}
.step3 .n{position:absolute;top:-22px;left:26px;width:46px;height:46px;border-radius:12px;background:#E21F26;color:#FFFFFF;display:grid;place-items:center;font-family:Oswald,Impact,sans-serif;font-weight:700;font-size:22px;box-shadow:0 10px 20px rgba(226,31,38,.35)}
.why{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.brands{display:flex;flex-wrap:wrap;gap:10px}
.brands span{padding:12px 20px;border-radius:12px;background:#FFFFFF;border:1px solid #E5E7EB;font-family:Oswald,Impact,sans-serif;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#3B3E45;font-size:15px}
.rev .stars{display:flex;gap:3px;color:#F5B301}
.rev .stars svg{fill:#F5B301}
.rev .who{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:8px}
.rev .who i{width:44px;height:44px;border-radius:50%;background:#E5E7EB;display:grid;place-items:center;font-style:normal;font-weight:700;color:#5E636C}
.faq{display:flex;flex-direction:column;gap:12px}
.faq details{background:#FFFFFF;border:1px solid #E5E7EB;border-radius:14px;padding:0 22px}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:64px;font-weight:700;font-size:17px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";font-family:Oswald,Impact,sans-serif;font-size:26px;color:#E21F26;transition:transform .2s ease}
.faq details[open] summary:after{transform:rotate(45deg)}
.faq details p{padding:0 0 20px;color:#4A4E57}
.cta{border-radius:24px;padding:56px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;position:relative;overflow:hidden;isolation:isolate}
.cta:after{content:"";position:absolute;right:-40px;top:0;bottom:0;width:260px;z-index:-1;background:repeating-linear-gradient(135deg,rgba(0,0,0,.18) 0 22px,transparent 22px 44px)}
.pagehero{padding:80px 0 96px}
.svc-nav{display:flex;flex-wrap:wrap;gap:10px}
.svc-nav a{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.18);color:#FFFFFF;text-decoration:none;font-weight:600;font-size:15px;background:rgba(255,255,255,.04)}
.svc-nav a:hover{background:#E21F26;border-color:#E21F26;color:#FFFFFF}
.svc-nav svg{color:#FF5A5F}.svc-nav a:hover svg{color:#FFFFFF}
.svc-full{gap:14px}
.svc-full .signs{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.svc-full .signs span{font-size:13px;font-weight:600;padding:5px 10px;border-radius:999px;background:#F3F4F6;color:#4A4E57}
.svc-full ul{margin:0;padding-left:18px;color:#4A4E57;font-size:15px;display:grid;gap:4px}
.form{display:flex;flex-direction:column;gap:22px}
.fstep{display:flex;flex-direction:column;gap:14px;padding-bottom:22px;border-bottom:1px solid #E5E7EB}
.fstep:last-of-type{border-bottom:0;padding-bottom:0}
.fstep-h{display:flex;align-items:center;gap:12px}
.fstep-h b{width:34px;height:34px;border-radius:10px;background:#141416;color:#FFFFFF;display:grid;place-items:center;font-family:Oswald,Impact,sans-serif;font-size:17px;flex:none}
.fl{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:15px}
.fl small{font-weight:400;color:#5E636C;font-size:13px}
.fld{min-height:52px;padding:0 16px;border:1.5px solid #D5D8DD;border-radius:10px;font:inherit;font-weight:400;background:#FFFFFF;color:#141416;box-sizing:border-box;width:100%}
.fld:focus{outline:none;border-color:#E21F26;box-shadow:0 0 0 3px rgba(226,31,38,.18)}
textarea.fld{padding:12px 16px;min-height:120px;resize:vertical}
.f2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.f3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opt{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1.5px solid #E5E7EB;border-radius:999px;background:#FFFFFF;font-size:15px;cursor:pointer}
.opt:has(input:checked){border-color:#E21F26;background:#FDECEC;font-weight:600}
.opt input{accent-color:#E21F26;width:16px;height:16px;margin:0}
.calbox{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;text-align:center}
.calbox span{font-size:14px;padding:8px 0;border-radius:8px}
.calbox .dh{color:#9EA3AC;font-weight:600;font-size:12px;text-transform:uppercase}
.calbox .off{color:#C6CAD0}
.calbox .sel{background:#E21F26;color:#FFFFFF;font-weight:700}
.calbox .av{background:#F3F4F6;font-weight:600}
.slots{display:flex;flex-wrap:wrap;gap:8px}
.slots label{display:inline-flex;align-items:center;justify-content:center;min-width:92px;min-height:44px;padding:0 12px;border-radius:10px;border:1.5px solid #E5E7EB;font-weight:600;font-size:15px;cursor:pointer}
.slots label:has(input:checked){background:#141416;border-color:#141416;color:#FFFFFF}
.slots input{position:absolute;opacity:0;pointer-events:none}
.sumcard{position:sticky;top:110px}
.info{display:flex;gap:16px;align-items:flex-start}
.team{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media (max-width:900px){
.stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:-40px}
.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid #2A2C32}
.step3,.why,.team{grid-template-columns:minmax(0,1fr)}
.why{grid-template-columns:repeat(2,minmax(0,1fr))}
.cta{grid-template-columns:minmax(0,1fr);padding:36px}
.hero{padding:56px 0 96px}
.sumcard{position:static}
}
@media (max-width:560px){
.why{grid-template-columns:minmax(0,1fr)}
.stat{padding:22px 18px}.stat b{font-size:30px}
.f2,.f3{grid-template-columns:minmax(0,1fr)}
.cta{padding:28px}
}
.card.svc{flex-direction:row;align-items:flex-start}
.ft-logo{align-self:flex-start}
.mk-hero .mk-in{font-size:calc(100cqw / 46)}
.mk-hero{max-width:640px}
@media (max-width:900px){.hero .split{grid-template-columns:minmax(0,1fr)}}
@container (max-width:430px){.mk-hero .mk-in{font-size:calc(100cqw / 30)}}
.bookgrid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:32px;align-items:start}
.dtgrid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px}
@media (max-width:900px){.bookgrid,.dtgrid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.card.form{padding:22px !important}.h1[style*="58px"]{font-size:38px !important}}
@media (max-width:560px){.h1[style*="font-size"]{font-size:38px !important}}
@media (max-width:900px) and (min-width:561px){.team,.step3{grid-template-columns:repeat(3,minmax(0,1fr))}.step3 .card{padding:40px 18px 20px}}
@media (max-width:560px){.team,.step3{grid-template-columns:minmax(0,1fr)}}
/* tablet + mobile: card grids become swipe rows (keeps pages short) */
@media (max-width:900px){
.g3:has(>.card),.why,.team{display:flex !important;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 -22px;padding:8px 22px 20px;scroll-padding:0 22px;scrollbar-width:none}
.g3:has(>.card)::-webkit-scrollbar,.why::-webkit-scrollbar,.team::-webkit-scrollbar{display:none}
.g3>.card,.why>.card,.team>.card{flex:0 0 44%;scroll-snap-align:start}
.swipe-note{display:flex}
}
@media (max-width:560px){
.g3:has(>.card),.why,.team{margin:0 -20px;padding:8px 20px 20px}
.g3>.card,.why>.card,.team>.card{flex-basis:82%}
}
.swipe-note{display:none;align-items:center;gap:8px;font-family:Oswald,Impact,sans-serif;font-weight:600;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#5E636C;margin-top:-24px}
.dk .swipe-note{color:#9EA3AC}
.swipe-note b{display:inline-block;color:#E21F26;animation:swNudge 1.4s ease-in-out infinite}
@keyframes swNudge{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}
@media (max-width:900px){
.step3{display:flex !important;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 -22px;padding:30px 22px 20px;scroll-padding:0 22px;scrollbar-width:none}
.step3::-webkit-scrollbar{display:none}
.step3>.card{flex:0 0 44%;scroll-snap-align:start}
.sec.gr .stack[style*="gap: 56px"]{gap:28px !important}
.faq details:nth-child(n+5){display:none}
.sec{padding:60px 0}
}
@media (max-width:560px){.step3{margin:0 -20px;padding:30px 20px 20px}.step3>.card{flex-basis:82%}.sec{padding:52px 0}}
@media (max-width:560px){
.brands,.tchips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -20px;padding:0 20px 6px}
.brands::-webkit-scrollbar,.tchips::-webkit-scrollbar{display:none}
.brands span,.tchip{flex:none}
.faq details:nth-child(n+4){display:none}
.sec .split{gap:28px}
}
@media (max-width:560px){
.ft{padding:52px 0 24px}
.ft-in{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}
.ft-in>:first-child{grid-column:1/-1}
.ft-in>:last-child{grid-column:1/-1}
.ft-b{margin-top:28px}
.ft-logo img{height:64px}
}

/* videos */
.bgvid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3;opacity:.7;pointer-events:none}
.bgvid-ov{position:absolute;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(90deg,rgba(15,16,18,.94) 0%,rgba(15,16,18,.72) 50%,rgba(15,16,18,.4) 100%)}
.reel-wrap{display:flex;justify-content:center}
.reel{position:relative;width:min(340px,100%);aspect-ratio:9/16;border-radius:40px;padding:12px;background:linear-gradient(145deg,#2E3036,#0B0C0E);box-shadow:0 40px 80px rgba(15,16,18,.35),inset 0 0 0 1px rgba(255,255,255,.12);box-sizing:border-box;animation:reelBob 7s ease-in-out infinite}
.reel video{width:100%;height:100%;object-fit:cover;border-radius:30px;display:block;background:#0F1012}
.reel:before{content:"";position:absolute;left:50%;top:22px;width:90px;height:24px;margin-left:-45px;border-radius:14px;background:#0B0C0E;z-index:2}
@keyframes reelBob{0%,100%{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-10px) rotate(-.5deg)}}
.vid16{border-radius:20px;overflow:hidden;aspect-ratio:16/9;box-shadow:0 24px 50px rgba(15,16,18,.18);background:#E4E6EA}
.vid16 video{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:900px){.reel{width:min(300px,80%)}}
@media (prefers-reduced-motion:reduce){.bgvid{display:none}.reel{animation:none}}
@media (max-width:900px){.reel-sec .split{gap:28px}}

@container (min-width:431px){.mk-solo .mk-in{font-size:calc(100cqw / 40);height:44em}.mk-solo .mk-phone{left:9.75em !important}.mk-solo .mk-toast{left:0 !important;top:35em !important}}
.hero-sp{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px}
.hero-sp .svc-nav{max-width:640px}
@media (max-width:900px){.hero-sp{grid-template-columns:minmax(0,1fr)}.hero-ph{max-width:420px;margin:0 auto;width:100%}}
@media (max-width:900px){.g4.svc-g{display:flex !important;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 -22px;padding:8px 22px 20px;scrollbar-width:none}.g4.svc-g>.card{flex:0 0 44%;scroll-snap-align:start}}
@media (max-width:560px){.g4.svc-g{margin:0 -20px;padding:8px 20px 20px}.g4.svc-g>.card{flex-basis:82%}}
.team2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px}
/* ---- site-wide motion ---- */
@keyframes hzMove{to{background-position:45.25px 0}}
.hz{animation:hzMove 1.6s linear infinite}
.cta:after{animation:hzMove 2.4s linear infinite}
@keyframes logoIn{0%{opacity:0;transform:translateX(-14px) scale(.92)}100%{opacity:1;transform:none}}
.logo img{animation:logoIn .8s cubic-bezier(.2,.7,.2,1) both;transition:transform .3s ease}
.logo:hover img{transform:rotate(-4deg) scale(1.05)}
.btn-r{position:relative;overflow:hidden}
.btn-r:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-120%);animation:btnShine 4.5s 1.5s ease-in-out infinite}
@keyframes btnShine{0%,70%{transform:translateX(-120%)}90%,100%{transform:translateX(120%)}}
.top .sos{animation:sosBlink 2.4s ease-in-out infinite}
@keyframes sosBlink{0%,100%{opacity:1}50%{opacity:.55}}
.tchip i{animation:dotPulse 2s ease-in-out infinite}
@keyframes dotPulse{0%,100%{box-shadow:0 0 0 3px rgba(34,197,94,.2)}50%{box-shadow:0 0 0 7px rgba(34,197,94,0)}}
.eb:before{transform-origin:left;animation:ebLine .9s .2s cubic-bezier(.2,.7,.2,1) both}
@keyframes ebLine{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.stat b{animation:statPop .7s cubic-bezier(.2,.9,.3,1.3) both}
.stat:nth-child(2) b{animation-delay:.1s}.stat:nth-child(3) b{animation-delay:.2s}.stat:nth-child(4) b{animation-delay:.3s}
@keyframes statPop{from{opacity:0;transform:translateY(12px) scale(.9)}to{opacity:1;transform:none}}
.svc .go svg,.btn svg{transition:transform .25s ease}
.btn:hover svg{transform:translateX(3px)}
/* road lines in the hero */
.road{position:absolute;left:0;right:0;bottom:0;height:150px;z-index:-1;pointer-events:none;perspective:300px;overflow:hidden;-webkit-mask:linear-gradient(0deg,#000,transparent);mask:linear-gradient(0deg,#000,transparent)}
.road i{position:absolute;left:-20%;right:-20%;bottom:-40px;height:260px;transform:rotateX(68deg);transform-origin:bottom;background:linear-gradient(90deg,transparent calc(50% - 3px),rgba(255,255,255,.35) calc(50% - 3px),rgba(255,255,255,.35) calc(50% + 3px),transparent calc(50% + 3px)) 0 0/100% 60px,repeating-linear-gradient(0deg,transparent 0 30px,rgba(15,16,18,1) 30px 60px),linear-gradient(90deg,transparent 18%,rgba(226,31,38,.5) 18.3%,transparent 18.6%,transparent 81.4%,rgba(226,31,38,.5) 81.7%,transparent 82%);animation:roadMove .6s linear infinite}
@keyframes roadMove{to{background-position:0 60px,0 60px,0 0}}
/* scroll reveal (scroll-driven, no JS) */
@keyframes rvIn{from{opacity:0;translate:0 44px}to{opacity:1;translate:0 0}}
@keyframes rvL{from{opacity:0;translate:-50px 0}to{opacity:1;translate:0 0}}
@keyframes rvR{from{opacity:0;translate:50px 0}to{opacity:1;translate:0 0}}
@keyframes rvZ{from{opacity:0;scale:.92}to{opacity:1;scale:1}}
@supports (animation-timeline: view()){
.sec:not(.hero):not(.pagehero) .head,.sec:not(.hero):not(.pagehero) .card,.sec .brands span,.faq details,.cta,.stats{animation:rvIn linear both;animation-timeline:view();animation-range:entry 0% cover 22%}
.sec:not(.hero):not(.pagehero) .split>:first-child{animation:rvL linear both;animation-timeline:view();animation-range:entry 0% cover 25%}
.sec:not(.hero):not(.pagehero) .split>:last-child{animation:rvR linear both;animation-timeline:view();animation-range:entry 0% cover 25%}
.sec:not(.hero):not(.pagehero) .mk,.sec .mk-map{animation:rvZ linear both;animation-timeline:view();animation-range:entry 0% cover 30%}
.g3>:nth-child(3n+2),.g4>:nth-child(4n+2),.why>:nth-child(2),.step3>:nth-child(2),.team>:nth-child(2){animation-range:entry 6% cover 28% !important}
.g3>:nth-child(3n),.g4>:nth-child(4n+3),.why>:nth-child(3),.step3>:nth-child(3),.team>:nth-child(3){animation-range:entry 12% cover 34% !important}
.g4>:nth-child(4n),.why>:nth-child(4){animation-range:entry 18% cover 40% !important}
}
@media (prefers-reduced-motion:reduce){.road{display:none}}

/* ---------- WordPress extras ---------- */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.mkw-msg{display:none;padding:12px 16px;border-radius:10px;font-size:15px}
.mkw-msg.err{display:block;background:#FDECEC;color:#9B1C1C}
.mkw-done{display:none}
.mkw-form.is-sent{display:none}
.mkw-form.is-sent+.mkw-done{display:flex}
.btn[disabled]{opacity:.6;cursor:wait}
.fld.bad{border-color:#E21F26;box-shadow:0 0 0 3px rgba(226,31,38,.15)}
.cal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.cal-nav{display:flex;gap:6px}
.cal-nav button{width:36px;height:36px;border-radius:8px;border:1.5px solid #E5E7EB;background:#FFFFFF;font-size:18px;line-height:1;cursor:pointer;color:#141416}
.cal-nav button:disabled{opacity:.35;cursor:default}
.calbox button{font:inherit;font-size:14px;padding:8px 0;border-radius:8px;border:0;background:#F3F4F6;font-weight:600;color:#141416;cursor:pointer}
.calbox button:hover{background:#FDECEC}
.calbox button.sel{background:#E21F26;color:#FFFFFF}
.calbox button:disabled{background:transparent;color:#C6CAD0;font-weight:400;cursor:default}
.entry{max-width:820px;margin:0 auto;padding:72px 0}
.entry h1,.entry h2{font-family:Oswald,Impact,sans-serif;text-transform:uppercase}

/* Customer reviews */
.mkw-review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px}
.mkw-review-card{min-width:0;overflow-wrap:anywhere}
.mkw-review-quote{font-size:17px}
.mkw-review-quote p + p{margin-top:.8em}
.mkw-review-card .who{margin-top:auto}
.mkw-review-photo{width:48px;height:48px;flex:none;border-radius:50%;object-fit:cover}
.post-type-archive-mkw_review .page-numbers{display:inline-block;padding:6px 10px}
.post-type-archive-mkw_review .page-numbers.current{font-weight:700}
