/* Adaptación responsive exclusiva del portal público. */
.public-menu-toggle{display:none}
main>section[id]{scroll-margin-top:92px}
.fixture-return-button{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));z-index:850;min-height:56px;display:inline-flex;align-items:center;gap:10px;padding:8px 18px 8px 9px;border:1px solid rgba(255,255,255,.32);border-radius:999px;background:linear-gradient(135deg,#063d35,#007a5e);color:#fff;font-size:.86rem;font-weight:800;letter-spacing:.01em;box-shadow:0 16px 38px rgba(4,45,40,.3),0 4px 12px rgba(4,45,40,.2);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(16px) scale(.94);transition:opacity .22s ease,visibility .22s ease,transform .22s ease,box-shadow .22s ease}.fixture-return-button.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}.fixture-return-button:hover{color:#fff;transform:translateY(-3px);box-shadow:0 20px 44px rgba(4,45,40,.36),0 5px 14px rgba(4,45,40,.24)}.fixture-return-button:focus-visible{outline:4px solid rgba(201,240,75,.82);outline-offset:3px}.fixture-return-icon{width:40px;height:40px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:linear-gradient(135deg,var(--lime),#9ddd38);color:#073b34;box-shadow:inset 0 0 0 1px rgba(255,255,255,.4)}.fixture-return-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.35;stroke-linecap:round;stroke-linejoin:round}

@media(max-width:900px){
  html,body{max-width:100%;overflow-x:hidden}
  .site-header .nav{min-height:72px;height:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 0}
  .site-header .brand{min-width:0}
  .site-header .brand>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .site-header .brand small{overflow:hidden;text-overflow:ellipsis}
  .public-menu-toggle{display:inline-flex;width:46px;height:46px;align-items:center;justify-content:center;border:1px solid rgba(0,122,94,.18);border-radius:13px;background:#e6f2ed;color:var(--green);font-size:1.4rem;font-weight:900;cursor:pointer}
  .public-menu-toggle:hover,.public-menu-toggle:focus-visible{background:var(--green);color:#fff;outline:3px solid rgba(201,240,75,.7);outline-offset:2px}
  .site-header .nav-links{display:none;grid-column:1/-1;width:100%;overflow:visible;padding:5px 0 2px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;white-space:normal}
  .site-header .nav.menu-open .nav-links{display:grid}
  .site-header .nav-links a{min-height:43px;display:flex;align-items:center;justify-content:center;min-width:0;padding:9px 8px;border-radius:10px;background:rgba(0,122,94,.07);text-align:center;overflow-wrap:anywhere}
  .site-header .nav-links .btn{padding:9px 10px;background:var(--green);color:#fff}
  main>section[id]{scroll-margin-top:78px}
  .section{padding:64px 0}
  .section-head{align-items:flex-start}
  .hero{min-height:0;padding:64px 0 42px}
  .hero-grid{gap:38px}
  .hero-visual{width:100%;max-width:620px;margin-inline:auto}
  .match-grid,.top-scorers{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer{padding-top:42px}
}

@media(max-width:600px){
  .container{width:min(100% - 24px,1180px)}
  .site-header .brand-mark.brand-icon{width:44px;height:44px;border-radius:13px}
  .site-header .brand>span:last-child{font-size:.9rem}
  .site-header .brand small{font-size:.74rem}
  .site-header .nav-links{grid-template-columns:repeat(2,minmax(0,1fr));max-height:calc(100vh - 90px);overflow-y:auto;overscroll-behavior:contain}
  .site-header .nav-links .btn{grid-column:1/-1}
  main>section[id]{scroll-margin-top:74px}
  .section{padding:50px 0}
  .section-head{gap:9px;margin-bottom:22px}
  .section-head h2{font-size:clamp(1.85rem,9vw,2.45rem);overflow-wrap:anywhere}
  .section-head>span{font-size:.88rem}
  .hero{padding:46px 0 32px}
  .hero-grid{gap:28px}
  .hero .hero-championship-title{font-size:clamp(2.05rem,10.8vw,3rem);line-height:1.04;overflow-wrap:anywhere}
  .hero-copy{font-size:1rem;line-height:1.65}
  .hero-actions{gap:9px;margin:22px 0}
  .hero-actions .btn{width:100%;min-height:46px}
  .hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:19px;text-align:center}
  .hero-stats>div{min-width:0;padding:0 3px}
  .hero-stats strong{font-size:1.35rem}
  .hero-stats span{display:block;font-size:.78rem;line-height:1.25;overflow-wrap:anywhere}
  .hero-visual{min-height:265px;overflow:hidden;border-radius:24px}
  .sport-card{padding:19px;border-radius:22px}
  .sport-card.football{inset:0 12% 20% 1%;transform:rotate(-2deg)}
  .sport-card.volley{inset:29% 1% 0 19%;transform:rotate(2deg)}
  .sport-icon{font-size:3.2rem}
  .sport-card h3{font-size:1.3rem}
  .live-pill{padding:6px 9px;font-size:.65rem}
  .match-grid,.top-scorers{grid-template-columns:1fr}
  .fixture-disciplines{gap:24px}
  .fixture-discipline{padding:14px;border-radius:19px}
  .fixture-discipline-head{align-items:flex-start;gap:11px;margin-bottom:16px}
  .fixture-discipline-head p{line-height:1.4}
  .public-match-card{padding:16px}
  .public-match-card .match-teams{gap:6px;margin:18px 0}
  .public-match-card .match-teams>div{min-width:0}
  .public-match-card .match-teams b{display:block;font-size:.86rem;line-height:1.25;overflow-wrap:anywhere}
  .public-match-card .score{font-size:1.35rem}
  .public-match-card .team-badge{width:42px;height:42px}
  .public-match-card .match-status{line-height:1.55;overflow-wrap:anywhere}
  .standings-discipline{padding:13px;border-radius:20px}
  .standings-discipline-head{gap:10px}
  .standings-discipline .standings-wrap{padding:9px}
  .standings-discipline .table{min-width:570px}
  .scorer{padding:18px;min-width:0}
  .scorer>div{min-width:0;overflow-wrap:anywhere}
  .scorer .goals{flex:0 0 auto}
  .champions-heading h2{font-size:clamp(1.9rem,9vw,2.55rem)}
  .champions-awaiting{gap:13px;padding:19px}
  .champions-awaiting>span{font-size:2.2rem}
  .champions-message{padding:19px}
  .gallery-heading{gap:18px}
  .gallery-filter{min-width:0;width:100%}
  .gallery{gap:10px;grid-auto-rows:170px}
  .gallery figure:first-child{height:auto}
  .gallery figcaption{padding:30px 10px 10px;font-size:.76rem;line-height:1.25}
  .gallery-lightbox figcaption{flex-direction:column;gap:5px;font-size:.88rem}
  .footer-grid{gap:30px}
  .footer-bottom{font-size:.86rem}
  .fixture-return-button{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));width:54px;min-height:54px;padding:7px;justify-content:center}.fixture-return-button>span:last-child{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.fixture-return-icon{width:40px;height:40px}
}

@media(max-width:360px){
  .site-header .brand>span:last-child{max-width:190px}
  .hero-stats{grid-template-columns:1fr}
  .hero-stats>div{padding:7px;border-radius:10px;background:rgba(255,255,255,.58)}
  .gallery{grid-template-columns:1fr;grid-auto-rows:210px}
  .gallery figure:first-child{grid-column:span 1}
  .champions-awaiting>span{display:none}
}

@media(prefers-reduced-motion:reduce){.fixture-return-button{transition:none}.fixture-return-button:hover{transform:none}}
