@import url('https://fonts.googleapis.com/css2?family=Anton&family=Oswald:wght@500;600;700&family=Inter:wght@400;500;600;700&display=swap');

.p2cap{
  --navy:#1B1E4E;--navy-2:#14162E;--accent:#E4232A;--red-strong:#C41E24;--red-deep:#7D1114;--red-tint:#FBEDEE;
  --bg-2:#F5F6FA;--panel:#FFFFFF;--line:#E1E3ED;--line-soft:#ECEEF3;--text:#1B1E4E;--text-2:#565C73;--text-3:#8A90A6;--radius:8px;
  font-family:'Inter',system-ui,-apple-system,sans-serif;color:var(--text);line-height:1.55;
}
.p2cap *{box-sizing:border-box}
.p2cap .wrap{max-width:1000px;margin:0 auto;padding:0 20px}
.p2cap .ey{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:600;color:var(--accent);display:flex;align-items:center;gap:10px;margin:0}
.p2cap .ey::before{content:"";width:26px;height:2px;background:var(--accent);display:inline-block}
.p2cap .ey.light{color:rgba(255,255,255,.75)}
.p2cap h1.disp{font-family:'Anton',sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.01em;line-height:.98;font-size:clamp(32px,5vw,52px);margin:14px 0 0}
.p2cap h1.disp .hl{color:var(--accent)}
.p2cap h2.sec{font-family:'Anton',sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.01em;line-height:1;font-size:clamp(22px,3vw,32px);margin:0 0 4px}
.p2cap h2.sec .hl{color:var(--accent)}

.p2cap .hero{background:repeating-linear-gradient(115deg,rgba(255,255,255,.03) 0 2px,transparent 2px 12px),linear-gradient(135deg,var(--navy-2),var(--navy) 60%,#26295C);color:#fff;padding:46px 0 52px;border-radius:var(--radius)}
.p2cap .hero p.lead{max-width:62ch;color:rgba(255,255,255,.86);font-size:16px;margin:14px 0 0}
.p2cap .how{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}
.p2cap .how .step{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);padding:15px 16px}
.p2cap .how .n{font-family:'Anton',sans-serif;font-size:24px;color:var(--accent)}
.p2cap .how h3{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.06em;font-size:13px;margin:8px 0 4px;color:#fff}
.p2cap .how p{margin:0;font-size:13px;color:rgba(255,255,255,.75)}

.p2cap .section{padding:36px 0}
.p2cap .sportgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}
.p2cap .sportcard{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px 16px;cursor:pointer;transition:.18s;text-align:left}
.p2cap .sportcard:hover{border-color:var(--navy);background:var(--navy);transform:translateY(-4px);box-shadow:0 16px 34px rgba(27,30,78,.20)}
.p2cap .sportcard .ico{width:46px;height:46px;border-radius:8px;background:var(--red-tint);display:flex;align-items:center;justify-content:center;font-size:26px;margin-bottom:12px;transition:.18s;overflow:hidden}
.p2cap .sportcard:hover .ico{background:var(--accent)}
.p2cap .sportcard .p2cap-ico-img{transition:filter .18s}
.p2cap .sportcard.sport-track-field:hover .p2cap-ico-img{filter:brightness(0) invert(1)}
.p2cap .sportcard .ico .p2cap-ico-img{width:30px;height:30px;object-fit:contain}
.p2cap .sportcard h3{font-family:'Anton',sans-serif;font-weight:400;text-transform:uppercase;font-size:18px;margin:0 0 6px;color:var(--navy);transition:.18s}
.p2cap .sportcard:hover h3{color:#fff}
.p2cap .sportcard .pos{font-family:'Oswald',sans-serif;letter-spacing:.03em;font-size:11px;line-height:1.5;color:var(--text-3);transition:.18s}
.p2cap .sportcard:hover .pos{color:rgba(255,255,255,.72)}

.p2cap .tplhead{background:linear-gradient(135deg,var(--navy-2),var(--navy) 70%);color:#fff;padding:26px 24px;border-radius:var(--radius);margin-bottom:8px}
.p2cap .back{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:rgba(255,255,255,.75);cursor:pointer;background:none;border:none;padding:0}
.p2cap .back:hover{color:#fff}
.p2cap .sportbadge{display:inline-flex;align-items:center;gap:9px;background:var(--accent);color:#fff;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:600;padding:6px 13px;border-radius:6px;margin-top:14px}
.p2cap .sportbadge .p2cap-ico-img{width:20px;height:20px}

.p2cap .instr,.p2cap .banner{border-radius:0 var(--radius) var(--radius) 0;padding:15px 18px;margin:22px 0}
.p2cap .instr{background:var(--red-tint);border:1px solid #F3D2D4;border-left:4px solid var(--accent)}
.p2cap .instr h4{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:13px;margin:0 0 8px;color:var(--red-deep)}
.p2cap .instr ul{margin:0;padding-left:18px;color:var(--text-2);font-size:14px}
.p2cap .instr li{margin:4px 0}
.p2cap .banner{border-left:4px solid;background:#fff;border:1px solid var(--line)}
.p2cap .banner.err{background:var(--red-tint);border-left-color:var(--accent);color:var(--red-deep)}
.p2cap .banner.info{background:#eef3ff;border-left-color:#3355cc;color:#22357a}

.p2cap .card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin:16px 0}
.p2cap .cardhead{display:flex;align-items:baseline;gap:12px;margin:0 0 4px}
.p2cap .num{font-family:'Anton',sans-serif;font-size:24px;color:var(--text-3)}
.p2cap .hint{color:var(--text-2);font-size:13.5px;margin:2px 0 16px}
.p2cap .grid{display:grid;gap:14px}
.p2cap .g2{grid-template-columns:1fr 1fr}.p2cap .g3{grid-template-columns:1fr 1fr 1fr}.p2cap .g4{grid-template-columns:repeat(4,1fr)}
.p2cap .field{position:relative}
.p2cap .field label{display:block;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.07em;font-size:11px;color:var(--accent);margin:0 0 6px;font-weight:600}
.p2cap .field .sub{font-size:11px;color:var(--text-3);font-weight:400;letter-spacing:0;text-transform:none}
.p2cap input,.p2cap select,.p2cap textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:6px;font-size:15px;font-family:'Inter',sans-serif;background:#fff;color:var(--text)}
.p2cap input:focus,.p2cap select:focus,.p2cap textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(27,30,78,.08)}
.p2cap textarea{min-height:80px;resize:vertical}

.p2cap .ta-list{position:absolute;left:0;right:0;top:100%;z-index:30;background:#fff;border:1px solid var(--line);border-top:none;border-radius:0 0 6px 6px;box-shadow:0 12px 26px rgba(27,30,78,.12);max-height:220px;overflow:auto;display:none}
.p2cap .ta-list.open{display:block}
.p2cap .ta-item{padding:9px 12px;font-size:14px;cursor:pointer;border-bottom:1px solid var(--line-soft)}
.p2cap .ta-item:hover{background:var(--red-tint);color:var(--red-deep)}

.p2cap .uprow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.p2cap .uptile{border:1.5px dashed var(--line);border-radius:var(--radius);padding:22px 18px;text-align:center;background:var(--bg-2)}
.p2cap .uptile h5{font-family:'Anton',sans-serif;font-weight:400;text-transform:uppercase;font-size:20px;margin:0 0 4px;color:var(--navy)}
.p2cap .uptile p{margin:0 0 10px;font-size:12px;color:var(--text-3)}
.p2cap .uptile input[type=file]{font-size:12px}

.p2cap .sportblock{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius);padding:16px;margin:0 0 14px;background:var(--bg-2)}
.p2cap .sbh{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.p2cap .sbn{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:var(--accent);font-weight:600}
.p2cap .sbmetrics-label{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.06em;font-size:11px;color:var(--text-3);margin:16px 0 8px}

.p2cap .vslot{border:1px solid var(--line);border-radius:var(--radius);padding:15px 16px;margin:12px 0;background:#fff}
.p2cap .vtop{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.p2cap .vlabel{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.06em;font-size:12px;color:var(--navy)}
.p2cap .toggle{display:inline-flex;border:1px solid var(--line);border-radius:20px;overflow:hidden}
.p2cap .toggle button{border:none;background:#fff;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.05em;font-size:11px;padding:6px 14px;cursor:pointer;color:var(--text-2)}
.p2cap .toggle button.on{background:var(--navy);color:#fff}
.p2cap .vbody .up{display:none}
.p2cap .vbody.mode-upload .link{display:none}
.p2cap .vbody.mode-upload .up{display:block}

.p2cap .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.08em;font-weight:600;font-size:14px;border-radius:6px;padding:13px 26px;border:none;cursor:pointer}
.p2cap .btn-accent{background:var(--accent);color:#fff}.p2cap .btn-accent:hover{background:var(--red-strong)}
.p2cap .btn-ghost{background:#fff;border:1px solid var(--line);color:var(--navy)}.p2cap .btn-ghost:hover{border-color:var(--navy)}
.p2cap .addbtn{background:#fff;border:1px dashed var(--accent);color:var(--accent);font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:600;padding:10px 16px;border-radius:6px;cursor:pointer}
.p2cap .vremove{background:none;border:none;color:var(--text-3);font-size:12px;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.05em;cursor:pointer}
.p2cap .vremove:hover{color:var(--accent)}
.p2cap .consent{display:flex;gap:11px;align-items:flex-start;margin:10px 0;font-size:14px;color:var(--text-2)}
.p2cap .consent input{width:18px;height:18px;margin-top:2px;flex:none}
.p2cap .submitrow{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px;flex-wrap:wrap}
.p2cap .submitrow .note{font-size:12.5px;color:var(--text-3);max-width:52ch}
.p2cap .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.p2cap .done{text-align:center;padding:60px 0}
.p2cap .done .check{width:74px;height:74px;border-radius:50%;background:#1f9d55;color:#fff;font-size:38px;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}
.p2cap .nextcard{max-width:620px;margin:22px auto 0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px 24px;text-align:left}
.p2cap .nextcard h4{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:13px;color:var(--accent);margin:0 0 10px}
.p2cap .nextcard ol{margin:0;padding-left:20px;color:var(--text-2);font-size:14px}
.p2cap .nextcard li{margin:6px 0}

@media(max-width:820px){.p2cap .sportgrid{grid-template-columns:repeat(2,1fr)}.p2cap .how{grid-template-columns:1fr}}
@media(max-width:720px){.p2cap .g2,.p2cap .g3,.p2cap .g4,.p2cap .uprow{grid-template-columns:1fr}}
