/* ride cards: sharper photos framed on the riders */
.ride .pic img{object-position:center 30%}
.ride .pic::after{content:"";position:absolute;inset:auto 0 0 0;height:40%;background:linear-gradient(transparent,rgba(40,18,6,.28));pointer-events:none}

/* mobile menu */
@media (max-width:1100px){
.mnav{display:block;position:fixed;inset:0;z-index:100;padding:0;background:rgba(20,9,3,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;visibility:hidden;transform:none;transition:opacity .35s,visibility .35s;overflow:hidden}
.mnav.open{opacity:1;visibility:visible}
.mnav-in{position:absolute;inset:0 0 0 auto;width:min(420px,100%);height:100%;overflow-y:auto;padding:20px 22px 28px;display:flex;flex-direction:column;gap:16px;
 background:radial-gradient(120% 60% at 100% 0,rgba(232,169,58,.18),transparent 60%),linear-gradient(180deg,#43220e 0%,#2a1306 100%);
 transform:translateX(100%);transition:transform .45s cubic-bezier(.2,.8,.2,1);box-shadow:-20px 0 60px rgba(0,0,0,.35)}
.mnav.open .mnav-in{transform:none}
.mnav-top{display:flex;align-items:center;justify-content:space-between}
.mnav-logo{background:var(--cream-2);border-radius:16px;padding:8px 14px;display:inline-flex}
.mnav-logo img{height:52px;width:auto}
.mnav .close{float:none;width:46px;height:46px;border-radius:50%;border:1.5px solid rgba(243,236,220,.35);background:rgba(243,236,220,.06);display:grid;place-items:center;cursor:pointer;transition:.25s}
.mnav .close:hover{background:var(--gold);border-color:var(--gold)}
.mnav .close span,.mnav .close span::after{display:block;width:18px;height:2px;background:var(--cream);border-radius:2px;transform:rotate(45deg)}
.mnav .close span::after{content:"";transform:rotate(90deg)}
.mnav-tag{margin:2px 0 0;color:rgba(243,236,220,.65);font-size:.88rem}
.mnav nav{clear:none;padding:0;display:grid;gap:0;counter-reset:n}
.mnav nav a{display:flex;align-items:center;gap:14px;padding:11px 4px;border-bottom:1px solid rgba(243,236,220,.1);color:var(--cream);font-family:var(--fh);font-size:1.08rem;font-weight:600;
 opacity:0;transform:translateX(24px);transition:opacity .4s,transform .4s,color .2s;transition-delay:calc(.08s + var(--i)*.05s)}
.mnav.open nav a{opacity:1;transform:none}
.mnav nav .n{font-family:var(--fb);font-size:.72rem;font-weight:700;color:var(--gold);letter-spacing:.08em;width:22px}
.mnav nav .t{flex:1}
.mnav nav .ar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:.95rem;background:rgba(243,236,220,.06);transition:.25s}
.mnav nav a:hover .ar,.mnav nav a.active .ar{background:var(--gold);color:var(--brown)}
.mnav nav a.active{color:var(--gold)}
.mnav-cta{display:grid;gap:10px;margin-top:4px}
.mnav-cta .btn{width:100%;margin:0;padding:15px 18px}
.mnav-call{border-color:rgba(243,236,220,.3);color:var(--cream)}
.mnav-call:hover{background:var(--cream);color:var(--brown)}
.mnav-info{display:grid;grid-template-columns:1fr;gap:10px}
.mnav-info a{display:block;background:rgba(243,236,220,.06);border:1px solid rgba(243,236,220,.1);border-radius:14px;padding:12px 14px;color:var(--cream);font-size:.92rem;word-break:break-word}
.mnav-info b{display:block;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:2px}
.mnav-social{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:8px}
.mnav-social span{color:rgba(243,236,220,.6);font-size:.85rem;margin-right:auto}
.mnav-social a{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(243,236,220,.08);border:1px solid rgba(243,236,220,.14);transition:.25s}
.mnav-social a svg{width:19px;height:19px;fill:var(--cream)}
.mnav-social a:hover{background:var(--gold)}
.mnav-social a:hover svg{fill:var(--brown)}
body.menu-open .wa-float{opacity:0;pointer-events:none}
}
@media (prefers-reduced-motion:reduce){.mnav-in,.mnav nav a{transition:none}}
