	:root{
		--bg:#0c1035;
		--bg2:#111640;
		--bg3:#0a0d28;
		--navy:#161a4a;
		--red:#c0291f;
		--red2:#9e1f16;
		--white:#ffffff;
		--gray:#8a90b8;
		--line:rgba(255,255,255,0.1);
		--card:#141843;
		--tab-active:#1d2358;
		--accent:#e8f200;
	}

	html{scroll-behavior:smooth;}
	body{background:var(--bg);color:var(--white) !important;-webkit-font-smoothing:antialiased;}
	a{text-decoration:none;color:inherit;}

	h1, h2, h3, h4, h5, h6,
	.footer {
		color: var(--white);
	}
	.page-hero {
		position: relative;
	}
	.page-hero h3 {
		color: var(--color-blue) !important;
	}
	.page-hero__image {
		position: absolute;
		right: 0;
		top: 0;
	}
	.wrap{max-width:1320px;margin:0 auto;padding:0 28px;}
	.btn-red{display:inline-flex;align-items:center;justify-content:center;padding:11px 22px;font-size:11.5px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;border:none;cursor:pointer;background:var(--red);color:var(--white);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);transition:opacity .2s;}
	.btn-red:hover{opacity:.85;}

	/* ===== PAGE HERO ===== */
	.page-hero{background:var(--white);overflow:hidden;}
	.page-hero-inner{display:flex;align-items:stretch;min-height:96px;}
	.page-hero-title{background:var(--white);display:flex;align-items:center;padding:22px 50px 22px 28px;position:relative;flex-shrink:0;}
	.page-hero-title h1{font-size:30px;font-weight:800;font-style:italic;color:var(--bg);text-transform:uppercase;white-space:nowrap;}
	.page-hero-title::after{content:"";position:absolute;right:-36px;top:0;bottom:0;width:72px;background:var(--white);clip-path:polygon(0 0,50% 0,100% 100%,0 100%);}
	.page-hero-red{background:var(--red);width:70px;flex-shrink:0;clip-path:polygon(0 0,100% 0,60% 100%,0 100%);}
	.page-hero-dark{flex:1;background:var(--bg2);}

	/* tabs row */
	.tabs-bar{
		background:var(--bg3);
		border-bottom:1px solid var(--line);
	}
	.tabs{display:flex;gap:0;}
	.tab-btn,
	.news-btn{
		padding:15px 26px;
		font-size:13px;font-weight:600;letter-spacing:0.3px;
		color:rgba(255,255,255,0.5);
		background:transparent;border:none;cursor:pointer;
		border-bottom:2px solid transparent;
		transition:color .2s, border-color .2s, background .2s;
	}
	.tab-btn.active{
		color:var(--white);
		background:var(--tab-active);
		border-bottom:2px solid var(--red);
	}
	.tab-btn:hover{color:rgba(255,255,255,.8);}

	/* =========== SECTIONS =========== */
	.tab-content{display:none;}
	.tab-content.active{display:block;}

	section.content-section{padding:48px 0 60px;}

	/* =========== ACADEMY TAB =========== */
	.academy-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}
	.academy-text p,
	.another-text p{
		font-size:14px;line-height:1.85;color:rgba(255,255,255,0.72);
		margin-bottom:14px;
	}
	.academy-text p:last-child{margin-bottom:0;}
	.academy-visual{
		background:var(--card);
		border:1px solid var(--line);
		border-radius:4px;
		overflow:hidden;
	}
	.academy-visual svg{width:100%;display:block;}

	/* stats row at bottom */
	.stats-strip{
		margin-top:36px;
		display:grid;grid-template-columns:repeat(3,1fr);
		gap:0;
		border:1px solid var(--line);
		border-radius:4px;
		overflow:hidden;
		background:var(--card);
	}
	.stat-box{
		padding:22px 24px;
		border-right:1px solid var(--line);
		display:flex;align-items:center;gap:16px;
	}
	.stat-box:last-child{border-right:none;}
	.stat-box .sico{
		flex-shrink:0;
		width:44px;height:44px;
		display:flex;align-items:center;justify-content:center;
		opacity:.8;
	}
	.stat-box .sval{
		font-size:20px;font-weight:800;font-style:italic;color:var(--white);
		line-height:1.1;
	}
	.stat-box .slabel{
		font-size:11px;font-weight:500;color:var(--gray);
		margin-top:3px;letter-spacing:0.2px;
	}

	/* =========== INFRA TAB =========== */
	.infra-content{
		display:grid;grid-template-columns:1fr 1fr;gap:16px;
	}
	.infra-section-title{
		font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;
		color:var(--gray);margin-bottom:8px;padding-left:2px;
	}
	.infra-list{display:flex;flex-direction:column;gap:8px;}
	.infra-item{
		background:var(--card);
		border:1px solid var(--line);
		border-radius:3px;
		padding:14px 18px;
		display:flex;align-items:center;gap:14px;
		transition:border-color .2s;
		cursor:default;
	}
	.infra-item:hover{border-color:rgba(255,255,255,.25);}
	.infra-item .ii-icon{
		width:36px;height:36px;flex-shrink:0;
		background:rgba(255,255,255,.05);
		border-radius:3px;
		display:flex;align-items:center;justify-content:center;
	}
	.infra-item .ii-text{font-size:13.5px;font-weight:600;color:var(--white);}
	.infra-stats{
		margin-top:32px;
		display:grid;grid-template-columns:repeat(3,1fr);gap:0;
		border:1px solid var(--line);border-radius:4px;overflow:hidden;
		background:var(--card);
	}
	/* reuse .stat-box */

	/* =========== COURTS TAB =========== */
	.courts-header{
		display:flex;align-items:center;justify-content:space-between;
		margin-bottom:24px;
	}
	.courts-lead{
		font-size:14px;line-height:1.75;color:rgba(255,255,255,.7);
		max-width:540px;margin-bottom:28px;
	}
	.courts-grid-stats{
		display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px;
	}
	.court-count-card{
		background:var(--card);
		border:1px solid var(--line);
		border-radius:4px;
		padding:22px 26px;
		display:flex;align-items:center;gap:18px;
	}
	.court-count-card .cc-num{
		font-size:52px;font-weight:800;font-style:italic;color:var(--white);line-height:1;
	}
	.court-count-card .cc-label{
		font-size:12.5px;font-weight:600;color:var(--gray);letter-spacing:.2px;
		line-height:1.4;
	}
	.court-count-card .cc-badge{
		display:inline-block;margin-top:6px;
		background:var(--red);color:var(--white);
		font-size:10px;font-weight:700;letter-spacing:.4px;
		padding:3px 10px;border-radius:20px;text-transform:uppercase;
	}
	.court-gallery{
		display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;
		margin-bottom:28px;
	}
	.court-card{
		background:var(--card);border:1px solid var(--line);border-radius:4px;overflow:hidden;
	}
	.court-card .cc-img{
		position:relative;overflow:hidden;
	}
	.court-card .cc-img svg{width:100%;display:block;}
	.court-card .cc-body{padding:14px 16px 16px;}
	.court-card .cc-name{
		font-size:13px;font-weight:700;text-transform:uppercase;
		letter-spacing:.3px;margin-bottom:5px;
	}
	.court-card .cc-price{
		font-size:12px;color:var(--gray);margin-bottom:10px;
	}
	.court-card .cc-btn{
		display:block;text-align:center;
		background:var(--red);color:var(--white);
		font-size:11px;font-weight:700;letter-spacing:.3px;
		text-transform:uppercase;padding:8px;
		clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px);
	}
	/* stats strip at bottom */
	.courts-stats{
		display:grid;grid-template-columns:repeat(3,1fr);gap:0;
		border:1px solid var(--line);border-radius:4px;overflow:hidden;
		background:var(--card);
	}
	.footer {
		border-top: 1px solid rgba(255, 255, 255, .15);
	}

	/* =========== RESPONSIVE =========== */
	@media(max-width:900px){
		nav ul{display:none;}
		.academy-grid{grid-template-columns:1fr;}
		.infra-content{grid-template-columns:1fr;}
		.courts-grid-stats{grid-template-columns:1fr;}
		.court-gallery{grid-template-columns:1fr 1fr;}
		.stats-strip,.infra-stats,.courts-stats{grid-template-columns:1fr;}
		.stat-box{border-right:none;border-bottom:1px solid var(--line);}
		.stat-box:last-child{border-bottom:none;}
		.page-hero-title h1{font-size:22px;}

		.rules-grid{grid-template-columns:1fr;}
	}
	@media(max-width:600px){
		.court-gallery{grid-template-columns:1fr;}
		.tab-btn{padding:12px 14px;font-size:12px;}
	}

	/* ===== RULES SECTION ===== */
	.rules-section{padding:0 0 60px;}
	.rules-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
	.rule-card{
		background:var(--card);border:1px solid var(--line);border-radius:4px;
		padding:24px 24px;display:flex;gap:16px;align-items:flex-start;
	}
	.rule-card .ric{
		width:38px;height:38px;flex-shrink:0;border-radius:8px;
		background:rgba(192,41,31,.1);border:1px solid rgba(192,41,31,.2);
		display:flex;align-items:center;justify-content:center;
	}
	.rule-card p{font-size:13.5px;line-height:1.7;color:rgba(255,255,255,.75);}

		/* ===== GROUP TITLE ===== */
	.group-label{
		font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;
		color:var(--gray);margin-bottom:14px;padding-left:2px;
		display:flex;align-items:center;gap:10px;
	}
	.group-label::after{content:"";flex:1;height:1px;background:var(--line);}
	/* ===== INFRA CARDS — БОЛЬШОЕ ФОТО ===== */
	.infra-group{margin-bottom:44px;}
	.infra-group:last-child{margin-bottom:0;}

	/* 3 колонки для групп с 3 картами */
	.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
	/* 2 колонки для групп с 2 картами */
	.cards-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}

	.icard{
		background:var(--card);border:1px solid var(--line);border-radius:4px;
		overflow:hidden;transition:border-color .25s,transform .25s;
	}
	.icard:hover{border-color:rgba(192,41,31,.5);transform:translateY(-3px);}

	/* фото */
.icard-img {
		position: relative;
		overflow: hidden;
		height: 220px;
}
.icard-img img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
		filter: brightness(.75);
		transition: filter .35s, transform .45s;
}

.icard-img-inner {
		position: absolute;
		inset: 0;
		overflow: hidden;
}

.icard-img-inner img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;

		filter: brightness(.75);
		transition: filter .35s, transform .45s;
}

.icard:hover .icard-img-inner img {
		filter: brightness(.9);
		transform: scale(1.04);
}

.icard-img::after {
		content: "";
		position: absolute;
		z-index: 2;
		inset: auto 0 0;
		height: 80px;
		pointer-events: none;
		background: linear-gradient(transparent, var(--card));
}

	/* тело карточки */
	.icard-body{padding:18px 20px 22px;}
	.icard-name{font-size:15px;font-weight:700;color:var(--white);margin-bottom:6px;}
	.icard-desc{font-size:12.5px;line-height:1.65;color:var(--gray);}


	/* ===== INTRO STRIP ===== */
	.intro-section{padding:0 0 8px;}
	.intro-grid{
		display:grid;grid-template-columns:1.1fr 0.9fr;gap:40px;align-items:center;
	}
	.intro-text p{font-size:15px;line-height:1.85;color:rgba(255,255,255,.75);margin-bottom:18px;}
	.intro-conditions{
		background:var(--card);border:1px solid var(--line);border-radius:4px;
		padding:26px 28px;
	}
	.intro-conditions h3{
		font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;
		color:var(--gray);margin-bottom:16px;padding-bottom:14px;
		border-bottom:1px solid var(--line);
	}
	.cond-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:13.5px;color:rgba(255,255,255,.85);}
	.cond-row:last-child{border-bottom:none;}
	.cond-row .cico{
		width:32px;height:32px;flex-shrink:0;border-radius:6px;
		background:rgba(192,41,31,.12);display:flex;align-items:center;justify-content:center;
	}

	/* ===== STATS STRIP (reused look) ===== */
	.stats-strip{
		display:grid;grid-template-columns:repeat(3,1fr);
		border:1px solid var(--line);border-radius:4px;overflow:hidden;
		background:var(--card);margin:36px 0 0;
	}
	.stat-box{padding:22px 24px;border-right:1px solid var(--line);display:flex;align-items:center;gap:16px;}
	.stat-box:last-child{border-right:none;}
	.stat-box .sico{width:44px;height:44px;display:flex;align-items:center;justify-content:center;opacity:.7;flex-shrink:0;}
	.stat-box .sval{font-size:22px;font-weight:800;font-style:italic;color:var(--white);line-height:1.1;}
	.stat-box .slabel{font-size:11px;color:var(--gray);margin-top:3px;}

	/* ===== COURTS GRID ===== */
	.courts-section{padding:60px 0;}
	.section-eyebrow{font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--red);margin-bottom:10px;}
	.section-heading{font-size:32px;font-weight:800;font-style:italic;line-height:1.1;margin-bottom:14px;}
	.section-sub{font-size:14px;line-height:1.7;color:var(--gray);max-width:580px;margin-bottom:40px;}

	.courts-grid{
		display:grid;grid-template-columns:repeat(2,1fr);gap:20px;
	}
	.court-card{
		background:var(--card);border:1px solid var(--line);border-radius:4px;overflow:hidden;
		transition:border-color .2s,transform .2s;
	}
	.court-card:hover{border-color:rgba(192,41,31,.45);transform:translateY(-3px);}
	.court-card .cc-img{position:relative;overflow:hidden;height:190px;}
	.court-card .cc-img img{width:100%;height:100%;object-fit:cover;filter:brightness(.7);transition:transform .4s,filter .3s;}
	.court-card:hover .cc-img img{transform:scale(1.04);filter:brightness(.8);}
	.court-card .cc-img-placeholder{width:100%;height:100%;}
	.court-card .cc-badge{
		position:absolute;top:14px;left:14px;z-index:2;
		background:rgba(10,13,40,.85);backdrop-filter:blur(6px);
		border:1px solid rgba(255,255,255,.2);
		font-size:10px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;
		padding:5px 11px;border-radius:20px;color:rgba(255,255,255,.85);
	}
	.court-card .cc-body{padding:20px 22px 22px;}
	.court-card .cc-name{font-size:16px;font-weight:700;color:var(--white);margin-bottom:6px;}
	.court-card .cc-price{font-size:18px;font-weight:800;font-style:italic;color:var(--white);margin-bottom:4px;}
	.court-card .cc-price span{font-size:11.5px;font-weight:500;font-style:normal;color:var(--gray);margin-left:4px;}
	.court-card .cc-divider{height:1px;background:var(--line);margin:16px 0;}
	.court-card .cc-btn{
		display:block;text-align:center;
		background:var(--red);color:var(--white);
		font-size:11.5px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;
		padding:11px;
		clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);
		transition:opacity .2s;
	}
	.court-card .cc-btn:hover{opacity:.85;}

@media (max-width: 1199.98px) {
	.tab-btn,
	.news-btn {
		padding: 15px 20px;
	}
}
@media (max-width: 991.98px) {
	.tab-btn,
	.news-btn {
        padding: 15px 10px;
        font-size: 11px;
    }
}

@media (max-width: 767.98px) {
	.stats-strip{
		margin: 36px 0;
		display:grid;grid-template-columns:repeat(1,1fr);
	}
	.cards-3 {
	    grid-template-columns: repeat(2, 1fr);
	}
	.intro-grid {
	    grid-template-columns: 1fr;
	}
	.tabs {
	    flex-wrap: wrap;
	}
}

@media (max-width: 575.98px) {
	.cards-2,
	.cards-3,
	.courts-grid,
	.rules-grid {
	    grid-template-columns: repeat(1, 1fr);
	}
}