/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
.site-main{
	max-width: 90% !important;
}

/* header------------ */
.ditty-item__content p {
    margin-block-end: 0 !important;
}

.elementskit-navbar-nav > li > a {
    position: relative;
}

.elementskit-navbar-nav > li > a::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 25%;
    height: 2px;
    background-color: currentColor;
    transform: translateX(-50%) scaleX(0);
    transform-origin: center;
    transition: transform 0.3s ease;
}

.elementskit-navbar-nav > li:hover > a::after,
.elementskit-navbar-nav > li.current-menu-item > a::after {
    transform: translateX(-50%) scaleX(1);
}

/*---------*/

.bdt-prime-slider-content{
	background-color: #9999998c;
    padding: 25px;
}

/*Fixture Homepage style*/
 .frozen-speed-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.fixture-card {
    background: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 20px;
    padding: 25px;
    height: 325px;
    display: flex;
    flex-direction: column;
    justify-content: normal;
    box-shadow: 0 5px 15px rgba(0,0,0,.05);
    transition: .3s;
}
.fixture-card:hover{
    transform:translateY(-6px);
    box-shadow:0 15px 35px rgba(0,0,0,.12);
}

/* Tournament Badge */

.fixture-top-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 0px;
    flex-wrap: wrap;
}

.tournament-badge{
    background:#19398A;
    color:#fff;
    padding:8px 16px;
    border-radius:30px;
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    white-space:nowrap;
}
.fixture-meta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin: 0px 0 0px;
}
.fixture-date-item,
.fixture-time-item{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:14px;
    font-weight:500;
    color:#222;
    white-space:nowrap;
}

.fixture-date-item i,
.fixture-time-item i{
    color:#19398A;
    font-size:16px;
}

.fixture-divider{
    width:1px;
    height:30px;
    background:#d9d9d9;
}
/* Teams */

.fixture-match {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-top: 13px;
}

.team{
    flex:1;
    text-align:center;
}
.team img {
    width: 65px;
    height: 65px;
    object-fit: contain;
}

.team-name{
    margin-top:10px;
    font-size:14px;
    font-weight:600;
    color:#000;
    line-height:1.4;
}

/* VS Circle */

.vs-circle{
    width:70px;
    height:70px;
    min-width:70px;
    border-radius:50%;
    background:#f3f5f9;
    border:3px solid #19398A;
    color:#19398A;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:20px;
    font-weight:800;
}

/* Venue */

.fixture-info {
    text-align: center;
    margin-top: 20px;
    color: #666;
    font-size: 14px;
    margin-bottom: 10px;
}

/* Button */

.fixture-btn{
    margin-top:auto;
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:55px;
    background:#19398A;
    color:#fff !important;
    text-decoration:none;
    border-radius:12px;
    font-weight:700;
    transition:.3s;
}

.fixture-btn:hover{
    background:#0047d6;
}





/**  Points table homepage */

.points-section{
    padding:40px 0;
    font-family:'Poppins',sans-serif;
}

.section-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:25px;
}

.section-header h2{
    margin:0;
    font-size:42px;
    font-weight:700;
    color:#07162f;
}

.nav-btns{
    display:flex;
    gap:10px;
}

.nav-btns button{
    width:42px;
    height:42px;
    border:1px solid #ddd;
    background:#fff;
    border-radius:50%;
    cursor:pointer;
    font-size:22px;
}

.points-slider{
    display:flex;
    gap:20px;
    overflow-x:auto;
    padding-bottom:10px;
}

.points-slider::-webkit-scrollbar{
    height:6px;
}

.team-card{
    min-width:320px;
    background:#fff;
    border:1px solid #e5e5e5;
    border-radius:18px;
    padding:20px;
    flex-shrink:0;
    transition:.3s;
}

.team-card:hover{
    transform:translateY(-4px);
    box-shadow:0 15px 30px rgba(0,0,0,.08);
}

.card-top{
    display:flex;
    align-items:flex-start;
    gap:15px;
    margin-bottom:25px;
}

.rank-block{
    position:relative;
    width:55px;
    height:70px;
    flex-shrink:0;
}

.rank-shadow{
    position:absolute;
    left:5px;
    top:5px;

    font-size:72px;
    line-height:1;
    font-weight:900;

    color:#d9d9d9;
    z-index:1;
}

.rank-number{
    position:absolute;
    left:0;
    top:0;

    font-size:72px;
    line-height:1;
    font-weight:900;

    color:#07111f;
    z-index:2;
}

.card-top h3{
    margin-top:12px;
    font-size:24px;
    line-height:1.1;
    font-weight:700;
    color:#20242b;
}
.team-logo{
    text-align:center;
    margin:25px 0;
}

.team-logo img{
    width:110px;
    height:110px;
    object-fit:contain;
}

.stats-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px 5px;
    padding-top:20px;
    border-top:1px solid #d9d9d9;
}

.stat{
    text-align:center;
}

.stat strong{
    display:block;
    font-size:22px;
    font-weight:700;
    color:#111827;
    line-height:1;
}

.stat span{
    display:block;
    margin-top:5px;
    font-size:12px;
    color:#7b7b7b;
    text-transform:uppercase;
}

.highlight strong{
    color:#0a7a28;
    font-size:26px;
}
 

.fixtures-page .page-header .tpg-widget-heading{
	color:#061E59
}

.fixtures-page .page-header  .tpg-widget-heading-wrapper.heading-style4::before,.fixtures-page .page-header  .tpg-widget-heading-wrapper.heading-style4::after{
	background-color:#E52E32
}
.fixtures-filters{
    display:flex;
    gap:20px;
    margin-bottom:40px;
    
}
.fixture-not-found {
    text-align: center;
    font-size: 1.2rem;
    font-weight: bold;
    color: #E52E32;
}
.fixtures-filters select {
    min-width: 250px;
    height: 50px;
    padding: 0 15px;
    border: 1px solid #ddd;
    border-radius: 6px;
    margin: 15px 0;
}
.fixtures-page .fixture-top-bar{
	display: inline;
}
.fixtures-page  .tournament-badge {
    text-align: center;
    margin-bottom: 10px;
}
.fixture-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.loading{
    text-align:center;
    padding:50px;
}

.fixture-pagination{
    text-align:center;
    margin-top:40px;
}

.fixture-page{
    display:inline-block;
    padding:10px 15px;
    border:1px solid #ddd;
    margin:0 5px;
}

.fixture-page.active{
    background:#0e2b63;
    color:#fff;
}


.points-table-wrapper{
    overflow-x:auto;
    margin:30px 0;
}

.hockey-points-table{
    width:100%;
    border-collapse:collapse;
    background:#fff;
    min-width:900px;
}

.hockey-points-table thead th{
    background:#001b4e;
    color:#fff;
    padding:15px 10px;
    text-align:center;
    font-size:14px;
    font-weight:600;
}

.hockey-points-table tbody td{
    padding:14px 10px;
    border-bottom:1px solid #e5e5e5;
    text-align:center;
}

.hockey-points-table tbody tr:nth-child(even){
    background:#f8f9fc;
}

.hockey-points-table tbody tr:hover{
    background:#eef4ff;
}

.team-column{
    display:flex;
    align-items:center;
    gap:10px;
    text-align:left;
}

.team-column img{
    width:40px;
    height:40px;
    object-fit:contain;
}

.points-cell{
    font-weight:700;
    color:#001b4e;
}


/* Responsive */




@media screen and (max-width: 1024px) {
	.elementskit-navbar-nav > li > a::after {
		content: "";
		position: absolute;
		left: 10%;
		bottom: 0;
		width: 5%;
		height: 2px;
		background-color: currentColor;
		transform: translateX(-50%) scaleX(0);
		transform-origin: center;
		transition: transform 0.3s ease;
	}
	.fixture-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .fixtures-filters select {
        min-width: 220px;
    }
}
@media(max-width:991px){

    .frozen-speed-grid{
        grid-template-columns:repeat(2,1fr);
    }

}
@media (max-width: 820px) {
    .fixture-grid {
        grid-template-columns: 1fr;
    }
}


@media(max-width:768px){

    .hockey-points-table{
        min-width:700px;
    }

    .hockey-points-table th,
    .hockey-points-table td{
        padding:10px 6px;
        font-size:13px;
    }

    .team-column img{
        width:30px;
        height:30px;
    }
}
@media(max-width:767px){

    .frozen-speed-grid{
        grid-template-columns:1fr;
    }

    .fixture-card{
        height:auto;
    }
.fixture-meta{
        gap:12px;
    }

    .fixture-date-item,
    .fixture-time-item{
        font-size:14px;
    }

    .fixture-date-item i,
    .fixture-time-item i{
        font-size:16px;
    }

    .fixture-divider{
        height:20px;
    }
	.fixture-top-bar{
        justify-content:center;
        gap:10px;
    }

    .tournament-badge{
        width:100%;
        text-align:center;
    }
	
	 .fixtures-filters {
        flex-direction: column;
        gap: 12px;
    }

    .fixtures-filters select {
        width: 100%;
        min-width: 100%;
    }

    .fixture-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .fixture-match {
        gap: 10px;
    }

    .team img {
        max-width: 70px;
    }

    .team-name {
        font-size: 14px;
    }

    .vs,
    .vs-image {
        max-width: 40px;
    }

    .fixture-page {
        padding: 8px 12px;
        margin: 3px;
    }
}
 @media (max-width: 480px) {

    .team img {
        max-width: 60px;
    }

    .team-name {
        font-size: 13px;
    }

    .fixture-date,
    .fixture-location {
        font-size: 13px;
    }
}