/* ANIMUS v1.6.7a — MOBILE RESPONSIVE HOTFIX
   Mobile is a deliberate layout, not a scaled desktop page. Desktop remains untouched. */

@media (max-width: 900px){
  html,body{max-width:100%;overflow-x:hidden!important}
  body{min-width:0!important}
  .app,.public-mode .app{width:100%!important;max-width:100%!important;padding-left:12px!important;padding-right:12px!important;box-sizing:border-box!important}
  .section,.f1-home-hero,.hq-page-hero,.public-hero,.cockpit-shell,.calendar-feature,.calendar-card,.race-card{max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
  img,svg,canvas{max-width:100%}

  /* Header: keep the logo/controls usable and let the nav open as a real mobile menu. */
  .topbar{min-height:58px!important;padding:0 12px!important}
  .brand img{max-height:46px!important;width:auto!important}
  .brand{min-width:0!important}
  .nav-toggle{width:42px!important;height:42px!important;display:grid!important;place-items:center!important}
  .main-nav{left:8px!important;right:8px!important;top:56px!important;max-height:calc(100dvh - 68px)!important;overflow-y:auto!important;z-index:120!important}

  /* Live championship ribbon: fixed label + smoothly clipped/scrolling data. */
  .apex-ticker{height:32px!important;margin-left:-12px!important;margin-right:-12px!important;max-width:calc(100% + 24px)!important}
  .apex-ticker-tag{padding:0 11px!important;font-size:7px!important;letter-spacing:.11em!important;flex:0 0 auto!important}
  .apex-ticker-track{gap:18px!important}
  .apex-ticker-item{font-size:7px!important;gap:5px!important}
  .apex-ticker-item .flag{width:12px!important;height:8px!important}

  /* HOME HERO */
  .f1-home-hero{display:grid!important;grid-template-columns:minmax(0,1fr)!important;margin-left:0!important;margin-right:0!important;overflow:hidden!important}
  .f1-hero-main{min-width:0!important;padding:32px 16px 22px!important}
  .f1-hero-status{gap:7px!important;font-size:8px!important;letter-spacing:.11em!important;flex-wrap:wrap!important}
  .f1-hero-status span{width:100%!important;margin:2px 0 0 15px!important;font-size:7px!important}
  .f1-home-hero h1{max-width:100%!important;margin:18px 0 15px!important;font-size:clamp(50px,16.5vw,68px)!important;line-height:.78!important;letter-spacing:-.035em!important;overflow-wrap:normal!important}
  .f1-home-hero h1 em::after{bottom:-5px!important;height:3px!important}
  .f1-hero-main>p{max-width:100%!important;font-size:12px!important;line-height:1.55!important}
  .f1-hero-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;margin-top:20px!important}
  .f1-hero-actions .f1-btn{width:auto!important;min-width:0!important;min-height:42px!important;padding:0 10px!important;font-size:8px!important;letter-spacing:.08em!important}
  .f1-hero-actions .primary{grid-column:1/-1!important}

  /* Hero numbers: compact 2-column dashboard, no desktop-width cells. */
  .f1-hero-metrics,.f1-hero-metrics-v164,.f1-hero-metrics-v166,.f1-hero-metrics-v167{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:100%!important;margin-top:20px!important}
  .f1-hero-metrics>span{min-width:0!important;min-height:76px!important;padding:11px 10px 10px 42px!important;position:relative!important;border-bottom:1px solid rgba(201,168,76,.12)!important}
  .f1-hero-metrics>span:nth-child(2n){border-right:0!important}
  .f1-hero-metrics>span:last-child:nth-child(odd){grid-column:1/-1!important;border-right:0!important}
  .hero-metric-icon-v166{left:10px!important;top:12px!important;width:25px!important;height:25px!important;font-size:12px!important}
  .f1-hero-metrics small{font-size:6px!important;line-height:1.2!important;letter-spacing:.08em!important;white-space:normal!important}
  .f1-hero-metrics b{font-size:25px!important;margin-top:5px!important}
  .hero-metric-sub-v166{font-size:5px!important;line-height:1.3!important}

  /* Event / Race Day / Official rail stays one line and scrolls instead of crushing labels. */
  .f1-stage-rail,.hq-stage-rail{display:flex!important;gap:0!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-bottom:5px!important;scrollbar-width:none}
  .f1-stage-rail::-webkit-scrollbar,.hq-stage-rail::-webkit-scrollbar{display:none}
  .f1-stage-rail span,.hq-stage-rail span{flex:0 0 112px!important;scroll-snap-align:start;font-size:6px!important}

  /* Right-hand hero information becomes a clean second block. */
  .f1-hero-control{min-width:0!important;padding:14px!important;display:grid!important;grid-template-columns:1fr!important;gap:10px!important;border-left:0!important;border-top:1px solid rgba(201,168,76,.16)!important}

  /* Keep the sponsor/code/time utility HORIZONTAL on phones, like requested. */
  .f1-partner-clock-v165,.f1-partner-clock-v166{display:grid!important;grid-template-columns:30% 29% 41%!important;width:100%!important;min-width:0!important;min-height:62px!important;overflow:hidden!important}
  .tm-affiliate-v165,.tm-logo-v166,.tm-code-v166,.race-clock-v165,.race-clock-v166{min-width:0!important}
  .tm-logo-v166{width:auto!important;padding:8px!important;border-bottom:0!important}
  .tm-logo-v166 img{width:100%!important;height:auto!important;max-width:92px!important;max-height:28px!important;object-fit:contain!important}
  .tm-code-v166{padding:8px!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
  .tm-code-v166 small{font-size:5px!important;letter-spacing:.08em!important}
  .tm-code-v166 b{font-size:12px!important;white-space:nowrap!important}
  .tm-code-v166 em{font-size:5px!important}
  .race-clock-v166{grid-column:auto!important;border-top:0!important;padding:6px 7px!important;gap:5px!important}
  .race-clock-times-v165{min-width:0!important}
  .race-clock-times-v165 span{gap:3px!important}
  .race-clock-times-v165 small{font-size:4.5px!important;letter-spacing:.04em!important;white-space:nowrap!important}
  .race-clock-times-v165 b{font-size:11px!important;white-space:nowrap!important}
  .analog-clock-v166{display:block!important;flex:0 0 39px!important;width:39px!important;height:39px!important;min-width:39px!important;opacity:1!important;visibility:visible!important}
  .analog-clock-v166:before{font-size:3px!important}
  .clock-brand-v166{font-size:5px!important}

  .f1-leader-card,.f1-next-card{min-width:0!important;padding:17px!important}
  .f1-leader-card h2{font-size:30px!important;min-width:0!important;overflow-wrap:anywhere}
  .f1-leader-card strong{font-size:36px!important}
  .f1-next-track h2{font-size:32px!important}
  .f1-countdown{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important}
  .f1-countdown span{min-width:0!important;padding:9px 4px!important}
  .f1-countdown b{font-size:24px!important}
  .f1-next-data{grid-template-columns:1fr 1fr!important}

  /* Homepage partner network remains horizontal on mobile instead of becoming four tall blocks. */
  .home-partners-v167{grid-template-columns:1fr!important;overflow:hidden!important}
  .home-partners-title-v167{padding:14px 15px!important;border-right:0!important;border-bottom:1px solid rgba(215,184,91,.16)!important}
  .home-partners-title-v167 b{font-size:13px!important}
  .home-partners-grid-v167{display:flex!important;grid-template-columns:none!important;width:100%!important;overflow-x:auto!important;scroll-snap-type:x mandatory;scrollbar-width:none!important}
  .home-partners-grid-v167::-webkit-scrollbar{display:none}
  .home-partners-grid-v167 .partner-card-v167{flex:0 0 72%!important;min-width:235px!important;grid-template-columns:minmax(90px,1fr) minmax(90px,.8fr)!important;scroll-snap-align:start;border-right:1px solid rgba(215,184,91,.14)!important;border-bottom:0!important;padding:12px!important}
  .partner-logo-frame-v167 img{max-width:125px!important;max-height:34px!important}

  /* Paddock News: image first, readable copy underneath. */
  .f1-news-compact-v162{padding-top:12px!important}
  .f1-news-compact-head-v162{gap:8px!important;margin-bottom:10px!important}
  .f1-news-compact-head-v162 h2{font-size:34px!important}
  .f1-news-grid-v166{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .f1-news-grid-v166>a,.f1-news-grid-v166>a.lead{min-height:0!important;grid-template-columns:1fr!important;grid-template-rows:150px auto!important}
  .f1-news-media-v166{min-height:150px!important;height:150px!important}
  .f1-news-copy-v166{padding:14px 15px 16px!important}
  .f1-news-copy-v166 h3{font-size:24px!important;max-width:100%!important}
  .f1-news-copy-v166 p{font-size:10px!important;max-width:100%!important;line-height:1.5!important}

  /* Compact championship module, never wider than the phone. */
  .f1-championship{padding:15px 10px!important;overflow:hidden!important}
  .f1-championship .f1-section-title h2{font-size:36px!important}
  .f1-title-summary{grid-template-columns:1fr!important}
  .f1-title-summary>div{padding:9px!important;border-right:0!important}
  .f1-championship .interactive-chart-shell,.f1-championship .public-graph-shell{max-width:100%!important;overflow-x:auto!important}
  .f1-championship .interactive-chart-stage{height:165px!important;min-height:165px!important}
  .f1-championship .public-graph-shell{height:185px!important}
  .f1-championship .public-graph-shell svg{height:150px!important;min-width:520px!important}
  .f1-top-five{grid-template-columns:1fr!important}

  /* Reward levels: intentional horizontal card rail on mobile. */
  .apex-loop-v124,.apex-loop{overflow:hidden!important;padding-left:12px!important;padding-right:12px!important}
  .apex-tier-stage{max-width:100%!important;overflow:hidden!important}
  .apex-tier-stage-head{grid-template-columns:1fr!important;gap:12px!important}
  .apex-tier-stage-head>div:last-child{width:100%!important}
  .apex-loop-grid,.apex-tier-grid,.reward-tier-grid{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;scrollbar-width:none!important;gap:8px!important}
  .apex-loop-grid::-webkit-scrollbar,.apex-tier-grid::-webkit-scrollbar,.reward-tier-grid::-webkit-scrollbar{display:none}
  .apex-loop-grid>*,.apex-tier-grid>*,.reward-tier-grid>*{flex:0 0 82%!important;min-width:250px!important;scroll-snap-align:start}

  /* Generic public cards / Driver Hub / Race Center mobile safety. */
  .public-hero,.account-hero,.calendar-hero,.hero{padding:24px 16px!important;grid-template-columns:1fr!important}
  .public-hero h1,.account-hero h1,.calendar-hero h1,.hero h1{font-size:clamp(44px,14vw,60px)!important;line-height:.82!important}
  .public-hero-stats,.account-metrics,.cockpit-next-facts,.cockpit-season-honours,.cockpit-ranking-numbers,.cockpit-career-numbers,.cockpit-stat-grid,.cockpit-rival-facts,.cockpit-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .cockpit-welcome,.page-head-row,.championship-command-head,.hq-section-head{align-items:flex-start!important;flex-direction:column!important}
  .cockpit-tools{width:100%!important;justify-content:flex-start!important;flex-wrap:wrap!important}
  .cockpit-nav{max-width:100vw!important;overflow-x:auto!important;white-space:nowrap!important;scrollbar-width:none}
  .cockpit-nav::-webkit-scrollbar{display:none}
  .cockpit-next,.cockpit-data-grid,.cockpit-bottom,.private-split,.split,.driver-split,.chart-grid,.public-command-grid{grid-template-columns:1fr!important}
  .cockpit-next-main{padding:18px!important}
  .cockpit-next-action{border-left:0!important;border-top:1px solid #1d2a33!important;min-height:0!important;padding:18px!important}
  .registration-actions,.entry-confirm-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .registration-actions .cal-btn,.entry-confirm-actions .cal-btn{width:100%!important;min-width:0!important}

  /* Tables and charts scroll INSIDE their section instead of widening the whole page. */
  .table-wrap,.results-table-wrap,.standings-table-wrap,.race-table-wrap,.data-table-wrap,.interactive-chart-shell,.public-graph-shell{max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
  table{max-width:none}
  .interactive-chart-stage svg,.cockpit-chart svg{max-width:none!important}

  /* Full Partners page: 2-up on phones, one-up only on very narrow devices. */
  .current-partners-grid-v167{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .current-partners-grid-v167 .partner-card-v167{min-width:0!important;min-height:126px!important;padding:14px!important;border-bottom:1px solid rgba(215,184,91,.13)!important}
  .current-partners-grid-v167 .partner-logo-frame-v167{height:50px!important}
  .current-partners-grid-v167 .partner-logo-frame-v167 img{max-width:135px!important;max-height:42px!important}
  .current-partners-grid-v167 .partner-card-copy-v167 strong{font-size:13px!important}

  /* Footer */
  .footer{padding:22px 14px 32px!important;line-height:1.6!important}
}

@media (max-width: 480px){
  .app,.public-mode .app{padding-left:8px!important;padding-right:8px!important}
  .apex-ticker{margin-left:-8px!important;margin-right:-8px!important;max-width:calc(100% + 16px)!important}
  .f1-hero-main{padding:27px 13px 20px!important}
  .f1-home-hero h1{font-size:clamp(47px,15.5vw,60px)!important;margin-top:15px!important}
  .f1-hero-main>p{font-size:11px!important}
  .f1-hero-actions{grid-template-columns:1fr!important}
  .f1-hero-actions .primary{grid-column:auto!important}
  .f1-hero-metrics>span{padding-left:39px!important}
  .f1-hero-control{padding:10px!important}

  /* Utility still one horizontal row, but tighter. */
  .f1-partner-clock-v165,.f1-partner-clock-v166{grid-template-columns:28% 31% 41%!important;min-height:58px!important}
  .tm-logo-v166{padding:6px!important}
  .tm-logo-v166 img{max-width:82px!important;max-height:24px!important}
  .tm-code-v166{padding:6px!important}
  .tm-code-v166 b{font-size:10px!important}
  .race-clock-v166{padding:5px!important}
  .race-clock-times-v165 small{font-size:4px!important}
  .race-clock-times-v165 b{font-size:9px!important}
  .analog-clock-v166{flex-basis:34px!important;width:34px!important;height:34px!important;min-width:34px!important}

  .f1-leader-card h2{font-size:27px!important}
  .f1-countdown b{font-size:21px!important}
  .home-partners-grid-v167 .partner-card-v167{flex-basis:84%!important;min-width:220px!important}
  .f1-news-media-v166{height:132px!important;min-height:132px!important}
  .f1-news-grid-v166>a,.f1-news-grid-v166>a.lead{grid-template-rows:132px auto!important}
  .f1-news-copy-v166 h3{font-size:22px!important}
  .f1-championship .f1-section-title h2{font-size:33px!important}
  .public-hero-stats,.account-metrics,.cockpit-next-facts,.cockpit-season-honours,.cockpit-ranking-numbers,.cockpit-career-numbers,.cockpit-stat-grid,.cockpit-rival-facts,.cockpit-account-grid{grid-template-columns:1fr!important}
  .current-partners-grid-v167{grid-template-columns:1fr!important}
  .apex-loop-grid>*,.apex-tier-grid>*,.reward-tier-grid>*{flex-basis:88%!important;min-width:235px!important}
}

@media (max-width: 360px){
  .f1-home-hero h1{font-size:45px!important}
  .f1-hero-metrics{grid-template-columns:1fr!important}
  .f1-hero-metrics>span:last-child:nth-child(odd){grid-column:auto!important}
  .f1-partner-clock-v165,.f1-partner-clock-v166{grid-template-columns:27% 31% 42%!important}
  .analog-clock-v166{display:none!important}
  .race-clock-times-v165{width:100%!important}
}
