/* ============================================================
   HK Padel · Sitio público (inicio, jugadores, organizadores, clubes, planes)
   Dirección «La cancha»: azul marino del logo + azul cancha + lima de marca + papel cálido.
   Independiente de hk.css / hk-tokens.css (las apps no se tocan).
   ============================================================ */
:root{--sec:104px}
html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;touch-action:manipulation;scroll-behavior:smooth}
body{margin:0;background:#07111c;font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#0b1826;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}
a{text-decoration:none;color:inherit}
img{max-width:100%}
h1,h2,h3,p{margin:0}
button,[role=button]{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.sora{font-family:'Sora','Inter',sans-serif}
.mono{font-family:ui-monospace,Menlo,monospace}
.wrap{max-width:1240px;margin:0 auto;padding:0 40px}

/* botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:'Sora',sans-serif;font-weight:700;font-size:15px;border-radius:999px;padding:14px 26px;min-height:50px;transition:transform 160ms cubic-bezier(.23,1,.32,1),box-shadow 160ms,background 160ms,color 160ms}
.btn:active{transform:scale(.97);transition-duration:80ms}
.btn-lime{background:#b4e21f;color:#10200a}
.btn-line{background:transparent;color:#f4f1e8;box-shadow:inset 0 0 0 1.5px rgba(244,241,232,.35)}
.btn-navy{background:#0b1826;color:#f4f1e8}
.btn-paper{background:#f4f1e8;color:#0b1826}
.btn-sm{padding:10px 18px;min-height:44px;font-size:14px}
@media (hover:hover) and (pointer:fine){
  .btn-lime:hover{box-shadow:0 14px 34px -10px rgba(180,226,31,.55)}
  .btn-line:hover{box-shadow:inset 0 0 0 1.5px #b4e21f;color:#b4e21f}
  .btn-navy:hover{background:#12263a}
  .btn-paper:hover{background:#fff}
  .nav-links a.lnk:hover{color:#f4f1e8}
}
a:focus-visible,summary:focus-visible{outline:3px solid #b4e21f;outline-offset:3px;border-radius:8px}
section[id]{scroll-margin-top:76px}

/* tipografía y piezas */
.kicker{font-family:ui-monospace,Menlo,monospace;font-size:12px;letter-spacing:.18em;text-transform:uppercase}
.ic{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.num{font-family:'Sora',sans-serif;font-weight:800;letter-spacing:-.04em}
.glass{background:rgba(18,38,58,.72);backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);border:1px solid rgba(143,163,184,.25);border-radius:20px;color:#f4f1e8}
.lstep{display:flex;gap:16px;align-items:flex-start;padding:18px 0;border-top:1px solid rgba(244,241,232,.2)}
.lstep .n{font-family:'Sora',sans-serif;font-weight:800;font-size:15px;color:#b4e21f;width:28px;flex:none;padding-top:2px}
.lstep h3{font-family:'Sora',sans-serif;font-size:18px;font-weight:700;letter-spacing:-.02em;margin-bottom:4px}
.lstep p{font-size:14.5px;line-height:1.5;opacity:.78}
.pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:600}
.paper-card{background:#fff;border:1px solid #e0dccd;border-radius:24px;box-shadow:0 24px 48px -32px rgba(11,24,38,.35)}
.fcap{display:flex;gap:14px;align-items:flex-start}
.fcap .i{width:44px;height:44px;border-radius:14px;background:#0b1826;color:#b4e21f;display:grid;place-items:center;flex:none}
.fcap h3{font-family:'Sora',sans-serif;font-size:16px;font-weight:700;letter-spacing:-.01em;margin-bottom:4px}
.fcap p{font-size:14.5px;line-height:1.5;color:#51606f}
.planc{border-radius:26px;padding:28px;display:flex;flex-direction:column;background:#0f2133;border:1px solid #1f3750;color:#f4f1e8}
.planc ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:11px;flex:1}
.planc li{font-size:14px;color:#8fa3b8;line-height:1.4;display:flex;gap:8px}
.planc li b{color:#f4f1e8;font-weight:600}
.dk{background:#141416;border:1px solid #2a2a30;border-radius:22px;color:#e8e8e6}
.mrow{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:#1c1c20;font-size:13px;color:#e8e8e6}
.dot-live{width:8px;height:8px;border-radius:50%;background:#b4e21f;box-shadow:0 0 10px #b4e21f;flex:none}
.tag-live{margin-left:auto;background:#b4e21f;color:#10200a;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:700}
.tag{display:inline-flex;font-size:11px;font-weight:700;border-radius:999px;padding:3px 10px;background:#b4e21f;color:#10200a}

/* preguntas frecuentes */
.faq{border-top:1px solid #e0dccd}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:16px;padding:22px 0;font-family:'Sora',sans-serif;font-weight:700;font-size:18px;letter-spacing:-.02em;min-height:56px}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pm{margin-left:auto;width:32px;height:32px;border-radius:50%;background:#0b1826;color:#b4e21f;display:grid;place-items:center;flex:none;transition:transform 200ms cubic-bezier(.23,1,.32,1)}
.faq[open] summary .pm{transform:rotate(45deg)}
.faq p{padding:0 48px 22px 0;font-size:16px;line-height:1.6;color:#51606f;max-width:720px}

/* llave completa */
.bcol{position:relative;display:flex;flex-direction:column;justify-content:space-around;gap:16px}
.bpair{position:relative;display:flex;flex-direction:column;justify-content:space-around;gap:16px;flex:1}
.bpair::after{content:'';position:absolute;right:-14px;top:25%;bottom:25%;width:2px;background:rgba(244,241,232,.55)}
.bpair::before{content:'';position:absolute;right:-28px;top:50%;width:14px;height:2px;background:rgba(244,241,232,.55)}
.bm{position:relative;background:rgba(7,17,28,.62);border:1px solid rgba(244,241,232,.16);border-radius:14px;padding:8px 10px;font-size:12.5px;color:#f4f1e8}
.bst::after{content:'';position:absolute;right:-14px;top:50%;width:14px;height:2px;background:rgba(244,241,232,.55)}
.bm .t{display:flex;justify-content:space-between;gap:8px;padding:3px 0;color:#a9c0da}
.bm .t.w{color:#f4f1e8;font-weight:700}
.bm .t.w .sc{color:#b4e21f}
.bm .sc{font-family:'Sora',sans-serif;font-weight:700;letter-spacing:.04em;white-space:nowrap}

/* barra superior (vidrio esmerilado) */
.nav{position:sticky;top:0;z-index:30;background:rgba(7,17,28,.7);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(143,163,184,.18);padding-top:env(safe-area-inset-top)}
.nav-in{display:flex;align-items:center;gap:28px;height:72px;position:relative}
.nav-logo img{height:34px;width:auto;display:block}
.nav-links{display:flex;gap:24px;margin-left:14px;font-size:14px;font-weight:500;color:#8fa3b8}
.nav-links a.lnk{padding:10px 0;transition:color 150ms}
.nav-links a[aria-current=page]{color:#f4f1e8;border-bottom:2px solid #b4e21f}
.nav-cta{margin-left:auto;display:flex;gap:10px}
.nav-m{display:none}
.nav-m summary{list-style:none;cursor:pointer;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:#f4f1e8}
.nav-m summary::-webkit-details-marker{display:none}
.nav-m-panel{position:absolute;left:0;right:0;top:100%;background:#07111c;border-bottom:1px solid rgba(143,163,184,.18);padding:8px 16px 16px;display:flex;flex-direction:column}
.nav-m-panel a{padding:14px 4px;font-family:'Sora',sans-serif;font-weight:700;font-size:17px;color:#f4f1e8;border-top:1px solid rgba(143,163,184,.18)}
.nav-m-panel a[aria-current=page]{color:#b4e21f}
.nav-m-panel a.nav-m-cta{color:#b4e21f;display:none}
@media (max-width:350px){.nav-cta .btn-line{display:none}.nav-m-panel a.nav-m-cta{display:block}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .btn:active{transform:none;opacity:.7}
  .faq summary .pm{transition:none}
}
@media (prefers-reduced-transparency:reduce){
  .nav{backdrop-filter:none;-webkit-backdrop-filter:none;background:#07111c}
  .glass{backdrop-filter:none;-webkit-backdrop-filter:none;background:#12263a}
}

/* ---------- celular y pantallas angostas ---------- */
.bhint{display:none}
@media (max-width:960px){
  :root{--sec:56px}
  .wrap{padding:0 16px}
  .g2,.g3,.g4{grid-template-columns:1fr!important}
  .netbadge{display:none!important}
  .nav-in{gap:6px;height:60px}
  .nav-logo img{height:24px}
  .nav-links{display:none}
  .nav-cta{margin-left:auto;gap:6px}
  .nav-cta .btn{padding:9px 11px;font-size:12.5px;min-height:44px;white-space:nowrap}
  .nav-m summary{width:40px}
  header .btn{width:100%}
  .xp-row{flex-wrap:wrap}
  a[style*="min-height:400px"]{min-height:0!important}
  .nav-m{display:block}
  [data-hero]{min-height:0!important;padding-top:28px!important;padding-bottom:16px!important}
  .court-vis{height:440px!important}
  .court3d{width:190px!important;height:345px!important;transform:translate(-50%,-50%) perspective(900px) rotateX(52deg) rotateZ(-26deg)!important}
  .gl1{width:170px!important;top:6px!important;padding:12px 14px!important}
  .gl2{width:210px!important;top:104px!important;padding:12px 14px!important}
  .gl3{width:190px!important;left:8px!important;bottom:6px!important}
  .lado-r{border-left:0!important;border-top:3px dashed rgba(244,241,232,.55)}
  .lado-p{padding:28px 22px!important}
  .pcomp{height:auto!important;display:flex!important;flex-direction:column;gap:12px}
  .pcomp>*{position:static!important;width:auto!important}
  [style*="padding:36px 40px 32px"]{padding:24px 16px!important}
  .bscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -16px;padding:0 16px 8px}
  .bgrid{min-width:880px}
  .faq summary{font-size:16.5px;padding:18px 0}
  .faq p{padding-right:8px;font-size:15px}
  .bhint{display:block}
  .cl-head{flex-wrap:wrap}
  .cl-head>span:last-child{margin-left:0!important}
  .cl-stats>div{padding:12px 8px!important}
  footer nav{gap:0 22px!important}
  footer nav a{display:inline-block;padding:14px 0}
}

.ej{font-size:12px;line-height:1.4;opacity:.62;letter-spacing:.01em}
