/*
 * FC-007 | Identidad gráfica de la Asociación de Fútbol Chépica.
 * Referencias: Instagram oficial @asociaciondefutbolchepica, 2026-10-22.
 * Azul/rojo/blanco del escudo son colores visuales aproximados, NO códigos Pantone certificados.
 * Amarillo es acento de grupos/jornadas. ADN deportivo y QA inspirados en CUDO V8.
 */
:root{
  --ink:#082443;--ink2:#123b65;--forest:#163b64;--gold:#f7c72e;--gold2:#ffe16b;
  --paper:#f4f6fa;--white:#fff;--mist:#eef2f8;--muted:#62748b;--line:#dce3ed;
  --warn:#7d5514;--warn-bg:#fff5da;--red:#cd2136;--red-deep:#a61830;--navy:#082443;
  --electric:#245990;
}
body{font-family:'Inter',system-ui,-apple-system,sans-serif;background:var(--paper);color:var(--navy)}
h1,h2,h3,h4,.eyebrow,.section-kicker,.identity strong,.matchday-title,.group-chip,.panel-number{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif}
.utility{background:#b92137;color:#fff;font-weight:800;letter-spacing:.07em}
.utility-inner{padding:8px 0}
.pulse,.live-led{background:var(--gold);box-shadow:0 0 0 3px #fac62635}
.top{background:#082b50;box-shadow:inset 0 -4px 0 #bc1d35}
.masthead{padding:15px 0}
.identity{gap:14px}
.identity-mark{border:2px solid #f4f7fb;background:#fff;width:65px;height:65px;border-radius:8px;overflow:hidden}
.identity-mark img{display:block;width:100%;height:100%;object-fit:contain}
.identity-kicker{color:#f4cc45;font-weight:900;font-size:11px;letter-spacing:.13em}
.identity strong{font-size:34px;font-weight:900;letter-spacing:.035em}
.identity small{color:#d4ddec;text-transform:none;letter-spacing:.02em;font-size:10px}
.social-profile{color:#fff;text-decoration:none;border-color:#6885a5;background:#ffffff13}
.social-profile:hover{background:#ffffff23;color:#fff}
.tabs{border-top:1px solid #ffffff22;gap:30px}
.tabs a{font-size:12px;min-height:49px;color:#f3f5fb}
.tabs a:hover,.tabs a:focus-visible{border-color:var(--gold);color:var(--gold)}
.hero{
 background:radial-gradient(circle at 86% 15%,#184a7a 0,transparent 40%),
   linear-gradient(122deg,#04172d 0%,#082c50 54%,#0e3b6a 100%);
 position:relative;overflow:hidden
}
.hero::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(120deg,transparent 0 88px,#ffffff06 90px 91px);pointer-events:none}
.hero::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:5px;background:linear-gradient(90deg,var(--red) 0 28%,#fff 28% 72%,var(--gold) 72% 100%)}
.hero-content{position:relative;z-index:1;grid-template-columns:minmax(0,1.13fr) minmax(290px,.87fr);align-items:center;gap:42px;padding:49px 0 55px}
.eyebrow{color:var(--gold);font-size:14px;letter-spacing:.15em;margin-bottom:13px;font-weight:900}
.hero h1{font-size:clamp(62px,7.6vw,103px);line-height:.86;letter-spacing:.005em;margin:0 0 24px;font-weight:900}
.hero h1 em{font-family:'Barlow Condensed',sans-serif;font-style:normal;font-weight:900;letter-spacing:.005em;color:var(--gold)}
.hero-copy{color:#e5edf7;max-width:520px;font-size:15px;line-height:1.65;margin:0 0 23px}
.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.hero-link{background:var(--red);color:white;font-family:'Barlow Condensed',sans-serif;font-size:19px;letter-spacing:.045em;padding:11px 22px;border-radius:5px}
.hero-link:hover{background:#e4364b}
.hero-link-alt{border:1px solid #86a4c6;background:#ffffff10;border-radius:5px;padding:12px 19px;font-family:'Barlow Condensed';font-size:18px;letter-spacing:.03em;color:white;text-decoration:none}
.hero-link-alt:hover{background:#ffffff2b}
.hero-counters{display:flex;gap:0;border-top:1px solid #d9e2ec38;margin-top:33px;padding-top:18px;color:#c5d6e9;font-size:10px;letter-spacing:.13em;font-weight:900}
.hero-counters span{padding:0 25px 0 0;margin-right:25px;border-right:1px solid #ffffff35}
.hero-counters span:last-child{border:0}
.hero-counters strong{display:block;color:white;font:900 29px/1 'Barlow Condensed',sans-serif;letter-spacing:0;margin-bottom:5px}
.hero-photo{position:relative;margin:0;min-height:340px;max-height:425px;border:1px solid #ffffff45;padding:9px;background:#ffffff10;box-shadow:0 25px 65px #0006;transform:rotate(1deg)}
.hero-photo::before{content:'';position:absolute;right:-8px;top:-8px;width:45%;height:7px;background:var(--red)}
.hero-photo img{width:100%;height:380px;object-fit:cover;display:block;filter:saturate(.85) contrast(1.06)}
.hero-photo figcaption{position:absolute;bottom:9px;left:9px;right:9px;padding:15px 17px;color:#fff;background:linear-gradient(90deg,#061e39ec,#061e3905);display:flex;flex-direction:column;gap:3px}
.hero-photo figcaption strong{font:800 19px 'Barlow Condensed';letter-spacing:.04em}
.hero-photo figcaption span{font-size:11px;color:#d9e6f7}
.source-line{background:#e8edf6;color:#1b4571;border-bottom:1px solid #d1dce9}
.source-line .shell{padding:9px 0}
.source-line #banner{font-size:12px}
.source-line .live-led{background:#2e9d6c}
.section-block{padding-top:44px}
.section-kicker{font-size:14px;color:#ba1b34;letter-spacing:.12em;margin-bottom:5px;font-weight:800}
.section-header h2{font-size:clamp(33px,4vw,47px);letter-spacing:0;font-weight:900;text-transform:uppercase}
.section-sub{color:var(--muted);line-height:1.65}
.section-symbol{color:#9aaac0}
.club-quick{background:#fff;border:1px solid #d8e2f0;border-left:5px solid var(--red);box-shadow:0 12px 30px #102b4b09}
.club-quick h2{font-size:36px;letter-spacing:0;text-transform:uppercase;font-weight:900}
.club-quick .section-kicker{font-size:13px}
.club-quick-controls label,.filter-block label,.filter-label{color:#4e6380;font-size:11px}
.club-quick-controls select,select{background:#f6f8fc;border:1px solid #cbd7e5;color:var(--navy)}
.share-button{color:var(--navy);border-color:#bfcfdf}
.my-club-row td,.my-club-row td.team{background:#fff1c7!important;color:#172e52}
.my-club-row td.team{box-shadow:inset 4px 0 0 var(--red)}
.my-club-highlight .match{border-left:4px solid var(--red)}
.pills{gap:8px}
.pill{border-radius:5px;border-color:#cbd7e5;font-weight:850;color:#264a76;background:#f0f4f9}
.pill.active,.pill[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff}
.group{border:1px solid #dce3ef;border-radius:8px;box-shadow:0 7px 20px #122b4910;padding:20px}
.group h3{font-size:27px;font-weight:900;letter-spacing:.01em;text-transform:uppercase;color:var(--navy)}
.group h4{font-size:20px;color:#18426d;font-weight:800;letter-spacing:0}
.table-scroll{border-radius:6px;border:1px solid #e6ebf2}
.table-scroll thead th{background:var(--navy);color:#fff}
.table-scroll th:nth-child(2){background:var(--navy)}
.table-scroll tbody tr:nth-child(even) td{background:#f7f9fd}
.table-scroll td{border-bottom:1px solid #e8edf4}
.table-scroll .my-club-row td{font-weight:800}
.group-heading{border-bottom:2px solid #d8e2ef}
.group-chip{font-size:19px;font-weight:900;color:var(--red)}
.matchday-title{font-size:22px;font-weight:800;color:#224d7a;text-transform:uppercase}
.match{border-radius:8px;box-shadow:0 5px 17px #19345611;border-top:4px solid var(--navy)}
.match header{font-family:'Barlow Condensed',sans-serif;font-size:20px;font-weight:800}
.match-context{color:#6b7a91}
.vs{background:#f1f3f9;color:var(--red);font-weight:900}
.team-crest-placeholder{background:#dce7f5;border-color:#cad9ea;color:#234d7e}
.series-score{font-size:17px}
.badge-official{background:#e2f3eb;color:#187552}
.info-strip{background:#e9f0fa;border:1px solid #d8e6f6}
.info-icon{color:#fff;background:#146da3}
.info-strip p{color:#476684}
.clubs-grid{gap:12px}
.club-card{border:1px solid #dbe4ed;border-radius:8px;border-left:3px solid #c5d6e8}
.club-card:hover,.club-card:focus-visible{border-left-color:var(--red);background:#eef4ff}
.club-avatar{background:#e9effa;color:#204871}
.telegram-section{background:#0c3256;border-radius:8px;border-bottom:5px solid var(--red)}
.telegram-link{background:var(--gold);color:#0b2647}
.instagram-section{background:linear-gradient(127deg,#0b3159 0%,#0a2850 58%,#c1233d 160%);color:#fff;margin-top:56px;border-radius:8px;display:grid;grid-template-columns:180px minmax(0,1fr);gap:28px;padding:30px 35px;position:relative;overflow:hidden;align-items:center;border-top:5px solid var(--red)}
.instagram-section .section-kicker{color:var(--gold);font-size:13px}
.instagram-decor{font:900 43px/.92 'Barlow Condensed',sans-serif;transform:rotate(-6deg);letter-spacing:.02em;opacity:.95;border:3px solid #fff8;padding:13px 17px;text-align:center}
.instagram-decor span{display:block;font-size:23px;margin-top:6px;color:var(--gold)}
.instagram-content h2{font-size:clamp(31px,4.5vw,50px);letter-spacing:0;margin:0 0 11px;line-height:.95;font-weight:900}
.instagram-content h2 em{font-style:normal;color:var(--gold)}
.instagram-content p{color:#dbe6f5;font-size:13px;max-width:600px;line-height:1.65}
.instagram-link{display:inline-flex;margin-top:9px;text-decoration:none;background:#fff;color:var(--navy);border-radius:4px;padding:12px 15px;font:850 18px 'Barlow Condensed';letter-spacing:.02em;align-items:center;gap:9px}
.instagram-link:hover{background:var(--gold)}
.footer{background:#061d38;border-top:4px solid var(--red)}
.footer-association-crest{width:52px;height:52px;object-fit:contain;border-radius:5px;background:#fff}
.footer-brand strong{font-family:'Barlow Condensed';font-size:23px}
.footer-bottom a{color:var(--gold)}
@media(max-width:900px){
 .hero-content{gap:20px;grid-template-columns:minmax(0,1.1fr) minmax(200px,.9fr)}
 .hero h1{font-size:clamp(57px,8vw,72px)}
 .hero-photo{min-height:280px}
 .hero-photo img{height:285px}
 .social-profile{font-size:10px;letter-spacing:0}
}
@media(max-width:760px){
 .utility-inner{font-size:9px}
 .utility-inner span:nth-child(2){display:none}
 .identity-mark{width:51px;height:51px;border-radius:6px}
 .identity strong{font-size:27px}
 .identity-kicker{font-size:9px}
 .identity small{font-size:9px}
 .masthead{padding:12px 0}
 .social-profile{display:none}
 .tabs{gap:22px}
 .tabs a{font-size:11px}
 .hero-content{display:grid;grid-template-columns:1fr;padding:26px 0 26px;gap:18px}
 .hero h1{font-size:clamp(54px,12vw,76px);margin:0 0 15px;line-height:.87}
 .eyebrow{font-size:12px;letter-spacing:.11em}
 .hero-copy{font-size:13px;margin-bottom:14px}
 .hero-actions{gap:7px}
 .hero-link,.hero-link-alt{font-size:17px;padding:10px 12px}
 .hero-counters{margin-top:16px;padding-top:12px}
 .hero-counters strong{font-size:24px}
 .hero-counters span{margin-right:12px;padding-right:12px;font-size:9px}
 .hero-photo{display:block;transform:none;min-height:150px;max-height:205px;margin:0}
 .hero-photo img{height:185px;object-position:center 45%}
 .hero-photo figcaption{padding:8px 11px}
 .hero-photo figcaption strong{font-size:16px}
 .hero-photo figcaption span{font-size:9px}
 .section-block{padding-top:32px}
 .section-header h2{font-size:35px}
 .section-kicker{font-size:12px}
 .club-quick{border-left:4px solid var(--red)}
 .club-quick h2{font-size:31px}
 .group{padding:12px}
 .group h3{font-size:24px}
 .group h4{font-size:18px}
 .match header{font-size:18px}
 .instagram-section{grid-template-columns:1fr;gap:12px;padding:22px 19px;margin-top:36px}
 .instagram-decor{display:none}
 .instagram-content h2{font-size:39px}
 .instagram-link{font-size:16px}
 .telegram-section{border-bottom:4px solid var(--red)}
 .footer-grid,.footer-bottom{flex-direction:column}
}
@media(max-width:380px){.hero h1{font-size:52px}.hero-counters span{padding-right:7px;margin-right:7px}}
/* UX cognition: avoid letting the hero consume the entire first phone viewport. */
@media(max-width:760px){
 .hero-content{padding:16px 0 18px;gap:10px}
 .hero h1{font-size:clamp(44px,11.5vw,58px);margin-bottom:11px}
 .hero-copy{font-size:12px;line-height:1.48;margin-bottom:12px}
 .hero-link,.hero-link-alt{font-size:16px;padding:9px 10px}
 .hero-counters{display:none}
 .hero-photo{height:145px;min-height:145px;max-height:145px;padding:5px}
 .hero-photo img{height:133px}
 .hero-photo figcaption{padding:5px 8px;left:5px;right:5px;bottom:5px}
 .hero-photo figcaption strong{font-size:14px}
 .hero-photo figcaption span{font-size:9px}
 .hero-photo::before{height:5px}
}
@media(max-width:380px){
 .hero h1{font-size:43px}
 .hero-photo{height:138px;min-height:138px;max-height:138px}
 .hero-photo img{height:126px}
}
/* Resumen Mi Club editorial y corto: no duplicar una tarjeta de cuatro series. */
.quick-result{padding-top:14px;margin-top:15px}
.quick-result .my-club-heading{margin-bottom:7px}
.quick-result .my-club-heading strong{font-size:15px}
.quick-result .my-club-heading small{font-weight:750;letter-spacing:.04em;font-size:10px}
.quick-matchup{display:flex;align-items:center;gap:12px;padding:6px 0 9px;font:850 23px/.95 'Barlow Condensed',sans-serif}
.quick-matchup strong{flex:1;min-width:0}
.quick-matchup strong:last-child{text-align:right}
.quick-matchup>span{color:var(--red);font-size:16px;font-weight:900}
.quick-footer{display:flex;justify-content:space-between;gap:16px;align-items:center;border-top:1px solid #e5e9f2;padding-top:7px;font-size:11px;color:var(--muted)}
.quick-footer a{text-decoration:none;color:var(--red);font:850 15px 'Barlow Condensed',sans-serif;white-space:nowrap}
@media(max-width:760px){
 .quick-matchup{font-size:19px;gap:8px}
 .quick-footer{flex-wrap:wrap;gap:6px}
}
/* Clave de lectura del campeonato en teléfono: puntos ANTES de PJ/GF:GC. */
.table-scroll .pts{color:#ad1a32;font:900 20px 'Barlow Condensed',sans-serif}
.table-scroll th:nth-child(3){background:#153e6b;color:var(--gold);min-width:43px}
.table-scroll td:nth-child(3){background:#fdfaf0}
.table-scroll table{min-width:440px}
@media(max-width:760px){
 .table-scroll td.team{min-width:115px;max-width:160px}
 .table-scroll td:nth-child(3),.table-scroll th:nth-child(3){min-width:40px;padding:9px 5px}
 .table-scroll .pts{font-size:19px}
}

/* FC-008: escudos reales obtenidos del afiche público, dimensiones pequeñas. */
.team-crest{object-fit:contain;object-position:center;flex:none}
.club-avatar{background:#fff;border:1px solid #e8ecf2}
.club-avatar .team-crest{width:34px;height:40px;max-height:40px}
.club-card .club-avatar{width:41px;height:45px}
.table-scroll .team-crest{width:24px;height:27px;object-fit:contain}
.my-club-heading .team-crest{width:37px;height:42px}
.match .team-crest{width:33px;height:37px}
@media(max-width:760px){
 .match .team-crest{width:28px;height:32px}
 .club-avatar .team-crest{width:30px;height:35px}
}
