@media (max-width:768px){.header-search-form{max-width:160px}
.header-search-form input{padding:6px 10px;font-size:0.8rem}
.header-search-form button{padding:6px 10px}
}

@media (max-width:480px){.header-search-form{max-width:120px}
.header-search-form input{padding:5px 8px;font-size:0.75rem}
.header-search-form button{padding:5px 8px}
.header-search-form button svg{display:none}
.header-search-form button::after{content:"🔍"}
}

@media (max-width:1100px){.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(2,1fr) !important}
}

@media (max-width:480px){.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:1fr !important}
}

@media (max-width:768px){}

@media (max-width:991px){.site-header .main-nav{display:none !important;opacity:0 !important;visibility:hidden !important}
.desktop-search{display:none !important}
.menu-toggle{display:block !important;position:absolute !important;right:20px !important;top:50% !important;transform:translateY(-50%) !important;z-index:1001 !important;background:var(--white);border:1px solid var(--color-border-medium);border-radius:5px;padding:12px !important;box-shadow:0 2px 5px rgba(0,0,0,0.1)}
.menu-toggle span{display:block;width:25px;height:3px;background:var(--dark-gray);margin:5px 0;border-radius:2px;transition:all 0.3s ease}
.menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,6px)}
.menu-toggle.active span:nth-child(2){opacity:0}
.menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-6px)}
.header-main{position:relative;padding:15px 50px 15px 0 !important}
.site-logo{position:relative;z-index:1}
}

@media (max-width:991px){.footer-widgets{grid-template-columns:repeat(2,1fr)}
.blog-grid{grid-template-columns:repeat(2,1fr)}
.school-grid{grid-template-columns:repeat(2,1fr)}
.team-grid{grid-template-columns:repeat(2,1fr)}
.contact-grid{grid-template-columns:1fr}
.location-grid{grid-template-columns:1fr}
}

@media (max-width:768px){.container{padding:0 15px}
.section{padding:40px 0}
.page-header{padding:35px 0}
.page-header h1{font-size:1.4rem}
.header-top-content{flex-direction:column;gap:8px;text-align:center}
.desktop-search{display:none !important}
.hero{min-height:60vh;padding:60px 15px}
.hero-content h1,.hero-content h2{font-size:1.8rem}
.hero-content p{font-size:1rem}
.hero-buttons{flex-direction:column;gap:12px}
.section-title h2{font-size:1.5rem}
.section-header{flex-direction:column;align-items:center}
.blog-grid,.news-grid,.school-grid,.team-grid,.testimonials-grid{grid-template-columns:1fr}
.products-grid:not(.shop-grid):not(#productsGrid){grid-template-columns:1fr}
.shop-controls{flex-direction:column;align-items:stretch}
.shop-search{width:100%}
.shop-search input{width:100%}
.footer-widgets{grid-template-columns:1fr;text-align:center}
.footer-bottom{flex-direction:column;gap:10px}
.events-list .event-item{grid-template-columns:70px 1fr}
.event-details-col{grid-column:1 / -1}
.error-content h1{font-size:4rem}
.cta-buttons{flex-direction:column}
.cta-buttons .btn{width:100%}
}

@media (max-width:480px){.site-logo img{max-height:45px}
.header-main{padding:10px 0}
.hero-content h1,.hero-content h2{font-size:1.5rem}
.hero-stats{gap:20px}
.hero-stat-number{font-size:1.5rem}
.join-banner{padding:30px 20px}
.join-banner h2{font-size:1.5rem}
}

@media (max-width:991px) and (min-width:601px){.interviews-grid{grid-template-columns:repeat(2,1fr)}
.interview-card:last-child:nth-child(odd){grid-column:span 2;aspect-ratio:16/7}
.interview-card-link{opacity:1;transform:none}
}

@media (max-width:600px){.interviews-grid{grid-template-columns:1fr;gap:14px}
.interview-card{aspect-ratio:16/10}
.interview-card-link{opacity:1;transform:none}
}

@media (max-width:768px){.shop-features-bar{flex-direction:column;border-radius:12px}
.shop-feature{border-right:none;border-bottom:1px solid #f0f0f0;padding:14px 18px}
.shop-feature:last-child{border-bottom:none}
}

@media (max-width:900px){.product-page-grid{grid-template-columns:1fr;gap:24px}
.product-gallery-col{position:static}
.product-main-image{aspect-ratio:4/3}
.product-title{font-size:1.5rem}
.btn-atc{min-height:46px;font-size:0.95rem}
}

@media (max-width:600px){.product-info-col{padding:22px 18px}
.product-cart-row{flex-direction:column}
.btn-atc{padding:14px}
.shop-controls{flex-direction:column;align-items:stretch}
.shop-search{max-width:100%}
.products-grid{grid-template-columns:repeat(2,1fr);gap:14px}
.product-card .product-image{height:160px}
}

@media (max-width:400px){.products-grid{grid-template-columns:1fr}
}

@media (max-width:900px){.news-newspaper{grid-template-columns:1fr}
.news-small-col{flex-direction:row;flex-wrap:wrap}
.news-small{flex:1 1 calc(50% - 8px);min-width:0}
.news-big-img-wrap{height:240px}
}

@media (max-width:600px){
/* La noticia grande ocupa todo el ancho */
.news-big-img-wrap{height:200px}
.news-big-title{font-size:1.2rem}
.news-big-body{padding:16px 18px 20px}
.news-big-excerpt{display:none} /* ocultar en móvil para ahorrar espacio */

/* Noticias pequeñas: carrusel horizontal deslizable */
.news-small-col{
    display:flex;
    flex-direction:row;
    flex-wrap:nowrap;
    overflow-x:auto;
    overflow-y:visible;
    gap:14px;
    padding:4px 2px 16px;
    margin:0 -15px;          /* sangrar hasta el borde de la pantalla */
    padding-left:15px;
    padding-right:15px;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;    /* Firefox */
}
.news-small-wrap{position:relative;overflow:hidden}
.news-small-col::-webkit-scrollbar{display:none}

/* Cada tarjeta: vertical, ancho fijo para que se vea el siguiente */
.news-small{
    flex:0 0 72vw;           /* 72% del ancho → se asoma el siguiente */
    max-width:280px;
    min-width:200px;
    flex-direction:column;   /* imagen arriba, texto abajo */
    padding:0;
    scroll-snap-align:start;
    border-radius:var(--radius-md);
    overflow:hidden;
}

/* Imagen ocupa el ancho completo de la tarjeta */
.news-small .news-small-img{
    display:block;
    width:100%;
    height:140px;
    overflow:hidden;
    flex-shrink:0;
}
.news-small .news-small-img img,
.news-small .news-no-img-sm{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:0;
}

/* Cuerpo de texto con padding interno */
.news-small-body{
    padding:12px 14px 16px;
    flex:1;
}
.news-small-body h3{
    font-size:.9rem;
    -webkit-line-clamp:3;
}
}

@media (max-width:768px){.interviews-row{grid-template-columns:1fr 1fr;gap:14px}
}

@media (max-width:480px){.interviews-row{grid-template-columns:1fr}
.interview-item-img-wrap{height:160px}
}

@media (max-width:991px){.header-top{display:none !important}
.site-header{position:fixed !important;top:0 !important;left:0 !important;right:0 !important;width:100% !important;z-index:9000 !important;box-shadow:0 2px 12px rgba(0,0,0,0.12) !important;background:var(--white) !important;transition:transform 0.3s ease,box-shadow 0.3s ease !important}
.site-header.header-hidden{transform:translateY(-100%) !important}
}

@media (max-width:1100px){.shop-hero-title{font-size:2.6rem}
.sp-grid{gap:32px}
}

@media (max-width:900px){.shop-hero-perks{display:none}
.shop-hero-title{font-size:2.2rem}
.shop-grid,.products-grid.shop-grid,#productsGrid{grid-template-columns:repeat(2,1fr)}
.sp-grid{grid-template-columns:1fr}
.sp-gallery{position:static}
.sp-info{padding:28px 24px}
.sp-title{font-size:1.6rem}
.shop-grid-list .shop-card{flex-direction:column;height:auto}
.shop-grid-list .shop-card-media{width:100%;height:220px;border-radius:16px 16px 0 0}
}

@media (max-width:600px){.shop-hero{padding:46px 0 40px}
.shop-hero-title{font-size:1.8rem}
.shop-toolbar-inner{flex-wrap:wrap;gap:10px}
.shop-search-field{flex:1;min-width:0}
.shop-search-field input{width:100%}
.shop-filters{order:3;width:100%}
.shop-grid,.products-grid.shop-grid,#productsGrid{grid-template-columns:repeat(2,1fr);gap:12px}
.shop-card-media{height:170px}
.sp-buy-row{flex-direction:column}
.sp-atc-btn{min-height:48px}
}

@media (max-width:400px){.shop-grid,.products-grid.shop-grid,#productsGrid{grid-template-columns:1fr}
}

@media print{.site-header,.site-footer,.back-to-top,.mobile-menu,.mobile-menu-overlay,#pwa-install-banner,#pwa-ios-guide,.skip-to-content,.hero-buttons,.join-banner,.cta-section,.shop-toolbar,.shop-hero-perks,.sp-buy-row,.sp-share,.sp-guarantees,.sp-zoom-btn,.sp-lightbox,.shop-card-actions,.sponsors-marquee-wrap,.btn-add-cart,.btn-atc,.filter-btn,.shop-filter-pill,nav,iframe{display:none !important}
body{padding-top:0 !important;font-size:12pt;color:#000;background:var(--white)}
.container{max-width:100%;padding:0}
main{padding:20pt 0}
.news-newspaper,.products-grid,.sp-grid{display:block !important}
.news-big,.shop-card,.sp-info{width:100% !important;box-shadow:none !important;border:1px solid var(--color-border-medium)}
a[href]::after{content:" (" attr(href) ")";font-size:9pt;color:var(--color-muted)}
a[href^="#"]::after,a[href^="javascript"]::after{content:""}
article,.news-small,.team-card,.testimonial-card{break-inside:avoid;page-break-inside:avoid}
body::before{content:"Club de Atletismo Playas de Cartaya";display:block;text-align:center;font-size:18pt;font-weight:bold;color:#E31E24;padding-bottom:16pt;border-bottom:2pt solid #E31E24;margin-bottom:20pt}
}

@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;gap:32px}
.footer-widget-brand{grid-column:span 2}
}

@media (max-width:600px){.site-footer{padding:40px 0 0}
.footer-grid{grid-template-columns:1fr !important;gap:28px !important}
.footer-widget-brand{grid-column:span 1 !important}
.footer-widget h3{font-size:0.9rem;margin-bottom:14px}
.footer-bottom{flex-direction:column;text-align:center;gap:6px;padding:18px 0}
.social-links{justify-content:flex-start}
}

@media (max-width:700px){.events-list .event-item{display:flex !important;flex-direction:column !important;gap:12px !important;padding:16px !important;align-items:flex-start !important}
.event-date-col{display:flex !important;flex-direction:row !important;align-items:center !important;gap:10px !important;background:transparent !important;padding:0 !important;border-radius:0 !important;min-width:auto !important;width:100% !important}
.event-date-col::before{content:'';display:block;width:4px;height:36px;background:var(--primary-red);border-radius:2px;flex-shrink:0}
.event-weekday{font-size:0.72rem !important;color:#888 !important;font-weight:600 !important;text-transform:uppercase;letter-spacing:0.5px}
.event-day-num{font-size:1.4rem !important;font-weight:900 !important;color:var(--primary-red) !important;line-height:1 !important}
.event-info-col{width:100% !important}
.event-title{font-size:0.95rem !important;margin:0 0 4px !important}
.event-location{font-size:0.8rem !important;margin:0 !important}
.event-details-col{display:flex !important;flex-wrap:wrap !important;gap:6px !important;width:100% !important;grid-column:unset !important}
.event-action-col{width:100% !important}
.event-action-col .btn{width:100% !important;text-align:center !important;padding:10px !important}
.events-filter{display:flex !important;flex-wrap:wrap !important;gap:8px !important;margin-bottom:20px !important}
.events-filter .filter-btn{flex:1 1 auto !important;min-width:80px !important;text-align:center !important;font-size:0.8rem !important;padding:8px 12px !important}
}

@media (max-width:991px){.shop-toolbar{position:static !important;top:auto !important}
.shop-toolbar-inner{flex-direction:column !important;align-items:stretch !important;gap:10px !important;padding:14px !important}
.shop-search-field{max-width:100% !important;width:100% !important}
.shop-filters{justify-content:flex-start !important}
.shop-toolbar-right{margin-left:0 !important}
.shop-hero-title{font-size:2rem !important}
}

@media (max-width:600px){.news-big-title{font-size:1.35rem !important;line-height:1.3 !important}
.news-big-excerpt{font-size:0.9rem !important}
.news-big-img-wrap{height:220px !important}
.news-big-body{padding:18px 16px 20px !important}
}

@media (max-width:900px){.destaca-card{grid-template-columns:1fr;gap:0}
.destaca-img-wrap{height:260px}
.destaca-body{padding:24px 22px 28px}
.destaca-title{font-size:1.4rem}
}

@media (max-width:480px){.destaca-img-wrap{height:200px}
.destaca-title{font-size:1.2rem}
.destaca-body{padding:18px 16px 22px;gap:10px}
}

@media (max-width:768px){.next-event-card{grid-template-columns:90px 1fr}
.next-event-cta{display:none}
.next-event-date{min-height:120px;padding:20px 12px}
.next-event-day{font-size:2.2rem}
.next-event-body{padding:18px 18px}
.next-event-title{font-size:1.35rem}
.next-event-all-btn{width:100%;text-align:center}
}

@media screen and (max-width:782px){.admin-bar .site-header{top:46px}
}

@media (max-width:1100px){.entrenadores-grid{grid-template-columns:repeat(2,1fr)}
.entrenador-perfil-inner{grid-template-columns:240px 1fr;gap:36px}
}

@media (max-width:991px){.entrenadores-header h1{font-size:2rem}
.entrenadores-cta{grid-template-columns:1fr;text-align:center;padding:32px 28px}
.entrenador-perfil-inner{grid-template-columns:1fr}
.entrenador-perfil-foto{max-width:260px;margin:0 auto;aspect-ratio:1/1}
.entrenador-perfil-nombre{font-size:2rem}
.entrenador-perfil-layout{grid-template-columns:1fr}
.entrenador-perfil-sidebar{position:static}
.entrenadores-header-stats{gap:28px}
}

@media (max-width:600px){.entrenadores-grid{grid-template-columns:1fr;gap:20px}
.entrenador-foto{height:240px}
.entrenador-perfil-header{padding:48px 0}
.entrenador-perfil-nombre{font-size:1.7rem}
.entrenadores-header-stat strong{font-size:1.8rem}
}

@media (max-width:600px){.entrenadores-share{gap:8px}
.ent-share-btn{width:34px !important;height:34px !important}
.ent-share-btn svg{width:15px !important;height:15px !important}
.entrenador-perfil-share{flex-direction:column;align-items:flex-start}
.ent-card-share-btn{width:30px !important;height:30px !important}
.ent-card-share-btn svg{width:12px !important;height:12px !important}
}

@media (max-width:600px){.ac-share{gap:8px;flex-wrap:wrap}
.ac-share-btns{gap:7px}
.ac-share-btn{width:32px;height:32px}
.ac-share-btn svg{width:14px !important;height:14px !important}
.ac-share--over-red .ac-share-btn{width:34px;height:34px}
.ac-share--over-red .ac-share-btn svg{width:15px !important;height:15px !important}
.ac-share--card .ac-share-btn{width:28px;height:28px}
.ac-share--card .ac-share-btn svg{width:12px !important;height:12px !important}
.ac-share--card{gap:8px;padding:10px 12px 12px}
}

@media (max-width:900px){.contact-layout{grid-template-columns:1fr}
.contact-info{position:static}
}

@media (max-width:600px){.contact-form-wrap{padding:24px 18px}
.contact-form-row{grid-template-columns:1fr}
.contact-info{padding:24px 18px}
}

@media (max-width:600px){.ac-breadcrumb{padding:8px 0;font-size:0.76rem}
.ac-breadcrumb-list{gap:3px;flex-wrap:nowrap;overflow:hidden}
.ac-breadcrumb-item:not(:first-child):not(:last-child),.ac-breadcrumb-sep:not(:last-of-type){display:none}
.ac-breadcrumb-item:last-child::before{content:'… › ';color:#9ca3af}
.ac-breadcrumb-item:first-child:last-child::before{content:none}
.ac-breadcrumb-item span[aria-current]{max-width:55vw;font-size:0.76rem}
}

@media (prefers-reduced-motion:reduce){.ac-reveal{opacity:1;transform:none;transition:none}
}

@media (max-width:1000px){.gallery-grid{grid-template-columns:repeat(3,1fr);gap:10px}
}

@media (max-width:650px){.gallery-grid{grid-template-columns:repeat(2,1fr);gap:8px}
.gallery-item:nth-child(5n + 1){grid-column:span 2;aspect-ratio:16 / 9}
.gallery-filters{gap:7px}
.gallery-filters .filter-btn{padding:7px 14px;font-size:0.8rem}
.gallery-overlay{opacity:1;background:linear-gradient(to top,rgba(0,0,0,0.58) 0,rgba(0,0,0,0) 55%)}
}

@media (max-width:400px){.gallery-grid{grid-template-columns:1fr}
.gallery-item:nth-child(5n + 1){grid-column:span 1;aspect-ratio:4 / 3}
}

@media (max-width:600px){.event-calendar-actions{flex-direction:column;align-items:flex-start}
.event-cal-btns{width:100%}
.event-cal-btn{flex:1;justify-content:center}
}

@media (max-width:600px){.ac-lightbox-inner{padding:56px 16px 48px}
.ac-lightbox-nav{width:40px;height:40px}
.ac-lightbox-prev{left:6px}
.ac-lightbox-next{right:6px}
.ac-lightbox-img{max-width:96vw;max-height:78vh}
.ac-lightbox-caption{font-size:0.82rem;bottom:14px}
}

@media (max-width:860px){.lp-main{grid-template-columns:1fr}
.lp-brand{display:none}
.lp-form-panel{min-height:100vh;padding:36px 24px;background:#fff}
.lp-mobile-header{display:block}
.lp-form-wrap{max-width:360px}
.lp-title{font-size:1.7rem}
}

@media (max-width:420px){.lp-form-panel{padding:28px 18px}
.lp-row{flex-direction:column;align-items:flex-start;gap:10px}
.lp-title{font-size:1.5rem}
}

@media (max-width:600px){.coming-soon-logo{width:100px;margin-bottom:20px}
.coming-soon-title{font-size:1.8rem;margin-bottom:15px}
.coming-soon-text{font-size:1rem;margin-bottom:25px}
.timer-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:25px}
.timer-item{padding:12px 8px}
.timer-number{font-size:1.5rem}
.timer-label{font-size:0.65rem}
.coming-soon-page .social-links{margin-bottom:25px;gap:10px}
.coming-soon-page .social-link{width:40px;height:40px}
.coming-soon-page .social-link svg{width:16px;height:16px}
.cs-newsletter-form p{font-size:1rem;margin-bottom:12px}
.cs-newsletter-input input,.cs-newsletter-input button{padding:12px 18px;font-size:0.9rem}
}

@media (max-width:1100px){.shop-body .container > #productsGrid,.shop-body .container > .products-grid.shop-grid{grid-template-columns:repeat(2,1fr) !important}
}

@media (max-width:500px){.shop-body .container > #productsGrid,.shop-body .container > .products-grid.shop-grid{grid-template-columns:1fr !important;gap:14px !important}
}

@media (max-width:900px){.rk-hero-inner{flex-direction:column}
.rk-hero-counters{width:100%;justify-content:flex-start}
.rk-filters-form{gap:10px}
.rk-filter-search{min-width:140px}
.rk-filter-search input{width:110px}
.rk-cards-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
}

@media (max-width:600px){.rk-hero{padding:40px 0 36px}
.rk-filters-bar{position:static}
.rk-filters-form{flex-direction:column;align-items:stretch}
.rk-filter-search,.rk-filter-search input{width:100%}
.rk-pill-group{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}
.rk-clear-btn{margin-left:0}
.rk-table thead th:nth-child(n+6),.rk-table td:nth-child(n+6){display:none}
.rk-cards-grid{grid-template-columns:1fr}
.rk-section-head{flex-direction:column}
}

@media (max-width:600px){.eq-hero-inner{flex-direction:column}
.eq-grid{grid-template-columns:1fr}
.eq-card-photo{height:180px}
}

@media (max-width:960px){.cq-count-4{grid-template-columns:repeat(2,1fr)}
.cq-count-3{grid-template-columns:repeat(2,1fr)}
.cq-card-featured{transform:none}
.cq-card-featured:hover{transform:translateY(-6px)}
.cq-info-grid{grid-template-columns:1fr;gap:20px}
.cq-contact-inner{flex-direction:column;text-align:center}
.cq-contact-actions{justify-content:center}
}

@media (max-width:560px){.cq-count-2,.cq-count-3,.cq-count-4{grid-template-columns:1fr}
}

@media (max-width:900px){.footer-widgets-area{grid-template-columns:1fr 1fr;gap:32px}
.footer-col-brand{grid-column:1/-1}
}

@media (max-width:560px){.footer-widgets-area{grid-template-columns:1fr;gap:28px}
.footer-col-brand{grid-column:auto}
}

@media (max-width:900px){.ins-layout{grid-template-columns:1fr}
.ins-sidebar{position:static}
.ins-hero-inner{flex-direction:column}
.ins-hero-steps{width:100%}
}

@media (max-width:560px){.ins-form-card{padding:24px 18px}
.ins-fields-grid{grid-template-columns:1fr;gap:16px}
.ins-step-arrow{display:none}
.ins-hero-steps{flex-direction:column;align-items:flex-start;gap:8px}
}

@media (max-width:960px){.atl-prof-hero-inner{grid-template-columns:200px 1fr;gap:28px}
}

@media (max-width:768px){.atl-hero-inner{flex-direction:column}
.atl-filters-bar{position:static}
.atl-filters-form{flex-direction:column;align-items:stretch;gap:10px}
.atl-filter-search,.atl-filter-search input{width:100%}
.atl-pill-row{overflow-x:auto;flex-wrap:nowrap}
.atl-prof-hero-inner{grid-template-columns:1fr}
.atl-prof-photo-col{max-width:240px;margin:0 auto}
.atl-prof-layout{grid-template-columns:1fr}
.atl-prof-sidebar{position:static}
.atl-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}
}

@media (max-width:480px){.atl-grid{grid-template-columns:1fr 1fr;gap:12px}
.atl-featured-grid{grid-template-columns:1fr}
.atl-prof-kpis{gap:10px}
.atl-marks-table thead th:nth-child(n+4),.atl-marks-table td:nth-child(n+4){display:none}
.atl-lb-prev{left:8px}
.atl-lb-next{right:8px}
}

@media(max-width:900px){
    .ev-next-card{grid-template-columns:160px 1fr}
    .ev-next-img{display:none}
}

@media(max-width:600px){
    .ev-next-card{grid-template-columns:1fr}
    .ev-next-date-block{flex-direction:row;justify-content:flex-start;gap:14px;padding:16px 20px}
    .ev-next-daynum{font-size:2rem}
    .ev-next-countdown{margin-top:0}
    .ev-next-info{padding:16px 20px}
    .ev-next-title{font-size:1.1rem}
    .ev-controls{flex-direction:column;align-items:stretch}
    .ev-search-wrap{max-width:none}
    .ev-cal-dropdown{right:auto;left:0}
}

@media(max-width:768px){
    .sponsors-section{padding:36px 0}
    .sponsors-principal-row{gap:16px;padding-bottom:24px;margin-bottom:20px}
    .sp-logo--principal img{max-width:160px;max-height:72px}
    .sp-logo img{max-width:120px;max-height:54px}
    .sponsors-marquee-track{animation-duration:50s !important;gap:16px}
    .sp-logo-inner{padding:12px 16px}
}

@media(max-width:480px){
    .sponsors-marquee-wrap{-webkit-mask-image:linear-gradient(to right,transparent 0,#000 40px,#000 calc(100% - 40px),transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 40px,#000 calc(100% - 40px),transparent 100%)}
    .sponsors-marquee-track{animation-duration:45s !important;gap:12px}
    .sp-logo img{max-width:90px;max-height:44px}
    .sp-logo-inner{padding:10px 12px}
}

@media (min-width:601px){.news-small-scroll-hint{display:none}}

@media(max-width:640px){
    .blog-card{grid-template-columns:1fr}
    .blog-card-image{min-height:180px;height:180px}
    .blog-card-content{padding:16px 18px}
    .blog-card-content h3{font-size:1.05rem}
}

@media(max-width:600px){
    .section-title h2{font-size:var(--text-2xl)}
    .join-banner{padding:36px 24px}
    .footer-bottom-inner{flex-direction:column;text-align:center}
}

@media(max-width:768px){
    .mi-area-content{padding:18px 16px}
    .mi-area-tabs{gap:4px}
    .mi-area-tab{padding:7px 12px;font-size:.8rem}
    .est-charts-grid{grid-template-columns:1fr}
    .est-card--wide{grid-column:auto}
    .mi-area-perfil-grid{grid-template-columns:1fr}
    .conv-card-footer{flex-direction:column;align-items:flex-start}
    .gal-foto-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
    .ac-lb-prev,.ac-lb-next{font-size:1.8rem;width:36px;height:60px}
}

@media print {
    body { padding: 0; }
    .pdf-page { padding: 20px; }
    .no-print { display: none; }
    .session-card { page-break-inside: avoid; }
  }

@media (prefers-color-scheme: dark) {
    :root {
        --bg:          #0d0d10;
        --card-bg:     #18181c;
        --card-border: #2a2a30;
        --text:        #f1f1f3;
        --text-muted:  #9ca3af;
        --gray-50:     #18181c;
        --gray-100:    #222228;
        --gray-200:    #36363f;
        --shadow-sm:   0 1px 3px rgba(0,0,0,.4);
        --shadow:      0 4px 12px rgba(0,0,0,.5);
        --shadow-lg:   0 12px 32px rgba(0,0,0,.6);
    }
    .ct-input, .ct-session-content, .ct-rpe-label, .ct-week-day.has-session {
        background: #222228; color: var(--text); border-color: var(--gray-200);
    }
}

@media (max-width: 640px) {
    .ct-wrap { padding: 0 12px 60px; }
    .ct-session-title { font-size: 20px; }
    .ct-card { padding: 18px 16px; }
    .ct-session-specs { gap: 14px; }
    .ct-feed-item { flex-direction: column; }
    .ct-feed-action { padding: 0 18px 16px; justify-content: flex-end; }
    /* Stats grid: 2 columnas en móvil */
    .ct-stats-grid { grid-template-columns: repeat(2, 1fr); }
    /* 2-col grid pasa a 1 columna */
    .ct-2col { grid-template-columns: 1fr; }
    /* Calendario: ocultar cuadrícula, mostrar lista en móvil */
    .ct-cal-grid-wrap { display: none !important; }
    .ct-cal-list-wrap { display: block !important; }
    /* Cabecera mes: apilada verticalmente en móvil */
    .ct-cal-header { flex-direction: column; align-items: flex-start !important; gap: 10px; }
    .ct-cal-nav { justify-content: flex-start; }
    /* Nav items wrap on mobile */
    .ct-nav { flex-wrap: wrap; gap: 6px; }
    .ct-nav a, .ct-nav button { font-size: 12px !important; padding: 7px 10px !important; }
}

@media (min-width: 641px) {
    /* Calendario: mostrar cuadrícula, ocultar lista en desktop */
    .ct-cal-grid-wrap { display: block !important; }
    .ct-cal-list-wrap { display: none !important; }
}

@media print {
    .ct-nav, nav, .ct-notif-panel, #ct-unavail-modal, #ct-strava-modal,
    .ct-btn-ghost, form.ct-feedback-form, .ct-chat-wrap,
    [onclick], button:not(.ct-kudos-btn) { display: none !important; }
    .ct-wrap { padding: 0 !important; }
    .ct-card {
        box-shadow: none !important;
        border: 1px solid #d1d5db !important;
        break-inside: avoid;
        margin-bottom: 12px;
    }
    .ct-session-title { font-size: 22px !important; }
    .ct-session-specs { gap: 16px; padding: 12px 0; }
    .ct-progress-bar, .ct-progress-fill { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
    a[href]::after { content: none !important; } /* suppress URL printing */
    .ct-session-header-actions { display: none !important; }
    .ct-strava-row { break-inside: avoid; }
    body { font-size: 13px; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
    .ct-skeleton { animation: none; background: #f0f0f0; }
    .ct-progress-fill { transition: none; }
}

@media (max-width: 480px) {
        .ct-login-card { padding: 36px 24px 28px; }
        .ct-login-club { font-size: 19px; }
    }

@media(max-width:480px){
    .fc-trigger{bottom:20px;right:16px;width:50px;height:50px}
    .fc-panel{width:100%;max-width:100%}
}

@media(max-width:560px){.shop-js-pagination{justify-content:center}.shop-page-info{width:100%;text-align:center}}