
:root{
--ink:#102033;
--navy:#071a2d;
--blue:#146BFF;
--cyan:#12BFEA;
--lime:#B7E43F;
--orange:#FF7A1A;
--bg:#F7FAFD;
--white:#FFFFFF;
--muted:#62748A;
--line:#DDE7F1;
--soft:#EEF7FF;
--shadow:0 22px 60px rgba(7,26,45,.11);
--radius:20px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.65}a{text-decoration:none;color:inherit}.container{width:min(1180px,92%);margin:auto}
.site{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(16,32,51,.08)}nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}.logo{font-weight:950;letter-spacing:-1px;font-size:20px}.logo span{color:var(--blue)}.navlinks{display:flex;align-items:center;gap:21px;color:#41536a;font-size:13px;font-weight:750}.navlinks a:hover{color:var(--blue)}.navcta{background:var(--blue);color:#fff;padding:11px 17px;border-radius:11px;font-weight:900;box-shadow:0 9px 24px rgba(17,103,232,.20)}.mobile{display:none}
.hero{position:relative;overflow:hidden;padding:92px 0 86px;background:radial-gradient(circle at 82% 18%,rgba(18,191,234,.14),transparent 30%),radial-gradient(circle at 12% 88%,rgba(183,228,63,.10),transparent 28%),linear-gradient(180deg,#fff 0,#f5f9fd 100%)}.hero:after{content:"";position:absolute;width:560px;height:560px;border:1px solid rgba(17,103,232,.08);border-radius:50%;right:-260px;top:-280px;box-shadow:0 0 0 55px rgba(17,103,232,.025),0 0 0 115px rgba(17,103,232,.015)}.heroGrid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:62px;align-items:center}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2.4px;color:var(--blue);font-weight:950}.hero h1{font-size:clamp(44px,6.2vw,76px);line-height:.99;letter-spacing:-4px;margin:15px 0 24px}.hero h1 em{font-style:normal;color:var(--blue)}.lead{font-size:19px;color:var(--muted);max-width:700px}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btnBlue{display:inline-block;background:var(--blue);color:#fff;padding:14px 21px;border-radius:11px;font-weight:900;box-shadow:0 11px 26px rgba(17,103,232,.18)}.btnGhost{display:inline-block;background:#fff;border:1px solid #cdd9e6;color:var(--ink);padding:13px 20px;border-radius:11px;font-weight:850}
.heroVisual{min-height:450px;border:1px solid #d9e3ed;border-radius:28px;background:linear-gradient(145deg,#fff,#f0f6fc);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.heroVisual:before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(17,103,232,.15),transparent 68%)}.tilegrid{position:relative;z-index:2;width:390px;height:390px;display:grid;grid-template-columns:repeat(5,1fr);gap:5px;transform:perspective(700px) rotateX(55deg) rotateZ(-25deg)}.tile{background:linear-gradient(135deg,#1F78FF 0%,#0B55C9 58%,#083D96 100%);border:1px solid rgba(255,255,255,.75);box-shadow:inset 0 0 14px rgba(255,255,255,.18),0 4px 10px rgba(15,62,120,.15)}.visualBadge{position:absolute;z-index:3;top:20px;right:20px;padding:8px 12px;border-radius:99px;background:#f2f9dc;color:#567500;border:1px solid #d9e9a8;font-size:10px;font-weight:950;letter-spacing:1px}
section{padding:82px 0}.soft{background:var(--soft)}.sectionHead{max-width:780px;margin-bottom:38px}.sectionHead:after{content:"";display:block;width:52px;height:3px;border-radius:4px;background:var(--blue);margin-top:22px}.sectionHead h2{font-size:clamp(31px,4vw,49px);line-height:1.08;letter-spacing:-2px;margin:9px 0 14px}.sectionHead p{color:var(--muted);font-size:17px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px;box-shadow:0 8px 25px rgba(25,55,85,.045);transition:.22s}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#c8d8e8}.card p{color:var(--muted);font-size:14px}.number{color:var(--blue);font-weight:950;font-size:12px;letter-spacing:1px}
.sports{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.sport{min-height:165px;background:#fff;border:1px solid var(--line);border-radius:19px;padding:23px;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 8px 25px rgba(25,55,85,.045);transition:.22s}.sport:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.sport strong{font-size:19px}.sport span{color:var(--muted);font-size:13px;margin-top:4px}
.pageHero{padding:56px 0 64px;background:#fff;border-bottom:1px solid var(--line)}.breadcrumb{font-size:12px;color:#75869a;margin-bottom:22px}.pageHero h1{font-size:clamp(40px,5vw,58px);letter-spacing:-2.5px;line-height:1.05;margin:8px 0 16px}.pageHero .lead{max-width:800px}
.pill{display:inline-block;padding:7px 12px;border:1px solid #cdd9e6;background:#fff;color:#4c6077;border-radius:99px;font-size:12px;margin:4px}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.media{margin:0;border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 8px 25px rgba(25,55,85,.045)}.mediaBox{aspect-ratio:16/10;background:linear-gradient(135deg,#eef5fc,#dbe9f7);display:flex;align-items:center;justify-content:center;color:#8092a7;font-weight:850}.media figcaption{padding:13px 15px;color:#41556b;font-size:13px}
.form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form .full{grid-column:1/-1}label{display:block;font-size:12px;font-weight:900;color:#40546a;margin-bottom:6px}input,select,textarea{width:100%;border:1px solid #cbd7e4;border-radius:11px;background:#fff;padding:13px 14px;font:inherit;color:var(--ink)}textarea{min-height:135px;resize:vertical}
.cta{background:linear-gradient(135deg,#146BFF 0%,#12BFEA 72%);color:#fff;border-radius:24px;padding:42px;display:flex;align-items:center;justify-content:space-between;gap:25px;box-shadow:0 22px 55px rgba(17,103,232,.18)}.cta h2{margin:0;font-size:34px;letter-spacing:-1px}.cta p{margin:8px 0 0;color:#e8f6ff}.cta .btn{background:var(--lime);color:#17220a;box-shadow:none}
.faq details{background:#fff;border:1px solid var(--line);border-radius:13px;padding:17px 18px;margin:10px 0}.faq summary{font-weight:900;cursor:pointer}.faq p{color:var(--muted)}
footer{background:#fff;border-top:1px solid var(--line);padding:48px 0;color:var(--muted);font-size:13px}.footerGrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}.footerTitle{font-weight:950;color:var(--ink);margin-bottom:10px}
@media(max-width:880px){.navlinks{display:none}.mobile{display:block}.heroGrid{grid-template-columns:1fr}.grid3,.grid4,.sports,.gallery{grid-template-columns:1fr 1fr}.form{grid-template-columns:1fr}.form .full{grid-column:auto}.footerGrid{grid-template-columns:1fr 1fr}.cta{display:block}.cta .btn{margin-top:18px}}
@media(max-width:560px){.grid3,.grid4,.sports,.gallery,.footerGrid{grid-template-columns:1fr}.hero{padding-top:65px}.hero h1{letter-spacing:-2.5px}.heroVisual{min-height:330px}.tilegrid{width:280px;height:280px}.cta{padding:28px}.cta h2{font-size:28px}}

/* SEO authority / conversion blocks */
.proof{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.proof .card{padding:20px}.stat{font-size:28px;font-weight:950;color:var(--blue);letter-spacing:-1px}.micro{font-size:12px;color:var(--muted)}
.checklist{display:grid;grid-template-columns:1fr 1fr;gap:10px}.check{background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px 15px;font-size:14px;color:#40546a}.check:before{content:"✓";color:var(--blue);font-weight:950;margin-right:8px}
.intent{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.intent a{background:#fff;border:1px solid var(--line);padding:18px;border-radius:15px}.intent a:hover{border-color:#b9cde1;box-shadow:var(--shadow)}
.author{display:flex;gap:14px;align-items:flex-start;padding:18px;background:#fff;border:1px solid var(--line);border-radius:15px}.authorMark{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--soft);color:var(--blue);font-weight:950}
@media(max-width:850px){.proof,.intent{grid-template-columns:1fr 1fr}}@media(max-width:560px){.proof,.intent,.checklist{grid-template-columns:1fr}}

/* Premium sports palette accents */
.logo span{color:var(--blue)}
.navcta,.btnBlue{background:var(--blue)}
.btnBlue:hover,.navcta:hover{background:#0757D8}
.eyebrow{color:var(--blue)}
.sectionHead:after{background:linear-gradient(90deg,var(--blue),var(--cyan))}
.sport:nth-child(1){border-top:4px solid var(--blue)}
.sport:nth-child(2){border-top:4px solid var(--orange)}
.sport:nth-child(3){border-top:4px solid var(--lime)}
.sport:nth-child(4){border-top:4px solid #23B66F}
.sport:nth-child(5){border-top:4px solid var(--cyan)}
.sport:nth-child(6){border-top:4px solid #7B61FF}
.sport:nth-child(1) strong{color:#0E5FE5}
.sport:nth-child(2) strong{color:#D95F00}
.sport:nth-child(3) strong{color:#648500}
.sport:nth-child(4) strong{color:#168451}
.sport:nth-child(5) strong{color:#078EAF}
.sport:nth-child(6) strong{color:#6248D8}
.pill:nth-child(4n+1){border-color:#BDD3FF;background:#F1F6FF;color:#1557B8}
.pill:nth-child(4n+2){border-color:#D9ECA4;background:#F5FBE5;color:#5D7900}
.pill:nth-child(4n+3){border-color:#FFD0B1;background:#FFF5ED;color:#A94A00}
.pill:nth-child(4n+4){border-color:#AFE7F4;background:#EFFBFE;color:#087C99}
.card:hover{border-color:#BCD2E8}
.number{color:var(--blue)}
.check:before{color:var(--lime)}
.cta .btn{background:var(--lime);color:#152000}

/* Premium hero video */
.heroVideoWrap{position:relative;min-height:500px;overflow:hidden;border-radius:26px;background:#071a2d;box-shadow:0 30px 80px rgba(7,26,45,.20)}
.heroVideo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.heroVideoShade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,26,45,.10) 0%,rgba(7,26,45,.08) 45%,rgba(7,26,45,.72) 100%),linear-gradient(90deg,rgba(7,26,45,.20),transparent 55%);pointer-events:none}
.heroVideoTag{position:absolute;top:22px;left:22px;z-index:2;background:rgba(255,255,255,.94);color:var(--navy);border:1px solid rgba(255,255,255,.8);backdrop-filter:blur(8px)}
.heroVideoCaption{position:absolute;left:26px;right:26px;bottom:25px;z-index:2;color:#fff;display:flex;flex-direction:column;gap:6px;text-shadow:0 2px 14px rgba(0,0,0,.35)}
.heroVideoCaption strong{font-size:22px;letter-spacing:-.3px}.heroVideoCaption span{font-size:13px;opacity:.9}
@media(max-width:900px){.heroVideoWrap{min-height:420px}.heroGrid{grid-template-columns:1fr}.heroVideoCaption strong{font-size:19px}}
@media(max-width:560px){.heroVideoWrap{min-height:340px;border-radius:18px}.heroVideoTag{top:14px;left:14px;font-size:10px}.heroVideoCaption{left:16px;right:16px;bottom:16px}.heroVideoCaption strong{font-size:17px}.heroVideoCaption span{font-size:11px}.hero .buttons{display:grid;grid-template-columns:1fr;gap:10px}.hero .buttons a{text-align:center}}
@media(prefers-reduced-motion:reduce){.heroVideo{display:none}.heroVideoWrap{background:url('../assets/images/pp-sports-flooring-hero-poster.jpg') center/cover no-repeat}.heroVideoShade{background:linear-gradient(180deg,rgba(7,26,45,.12),rgba(7,26,45,.72))}}

/* Full-page premium hero video */
.fullpageHero{position:relative;min-height:100svh;height:100svh;overflow:hidden;display:flex;align-items:center;background:#071a2d;color:#fff}
.fullpageHeroVideo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.fullpageHeroOverlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(7,26,45,.88) 0%,rgba(7,26,45,.60) 43%,rgba(7,26,45,.18) 100%),linear-gradient(0deg,rgba(7,26,45,.45),transparent 38%)}
.fullpageHeroContent{position:relative;z-index:2;width:min(1180px,calc(100% - 40px));margin:auto;padding:90px 0 70px}
.fullpageHeroContent h1{max-width:780px;font-size:clamp(42px,6vw,82px);line-height:.98;letter-spacing:-2.8px;margin:14px 0 22px;color:#fff}
.fullpageHeroContent p{max-width:700px;font-size:clamp(17px,2vw,22px);line-height:1.55;color:rgba(255,255,255,.92);margin:0 0 30px}
.fullpageHero .eyebrow{color:var(--lime);font-weight:900;letter-spacing:.13em}
.heroActions{display:flex;flex-wrap:wrap;gap:12px}
.fullpageHero .btn{border-radius:999px;padding:14px 22px;text-decoration:none;font-weight:850;display:inline-flex;align-items:center;justify-content:center}
.fullpageHero .btnBlue{background:var(--blue);color:#fff}
.fullpageHero .btnWhatsApp{background:var(--lime);color:#152000}
.fullpageHero .btnCall{background:#fff;color:var(--navy)}
.heroScroll{position:absolute;z-index:2;bottom:25px;left:50%;transform:translateX(-50%);color:#fff;text-decoration:none;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.9}
@media(max-width:700px){
 .fullpageHero{min-height:100svh;height:100svh;align-items:flex-end}
 .fullpageHeroVideo{object-position:center}
 .fullpageHeroOverlay{background:linear-gradient(0deg,rgba(7,26,45,.92) 0%,rgba(7,26,45,.58) 55%,rgba(7,26,45,.15) 100%)}
 .fullpageHeroContent{width:calc(100% - 28px);padding:70px 0 72px}
 .fullpageHeroContent h1{font-size:clamp(38px,11vw,58px);letter-spacing:-1.8px}
 .fullpageHeroContent p{font-size:16px;line-height:1.45}
 .heroActions{display:grid;grid-template-columns:1fr;gap:9px}
 .fullpageHero .btn{width:100%}
 .heroScroll{display:none}
}
@media(prefers-reduced-motion:reduce){
 .fullpageHeroVideo{display:none}
 .fullpageHero{background:#071a2d url('assets/images/pp-sports-flooring-hero-poster.jpg') center/cover no-repeat}
}


/* Homepage court carousel — CSS only, no JavaScript dependency */
.courtCarousel{position:relative!important;overflow:hidden!important;min-height:620px!important;height:calc(100svh - 78px)!important;padding:0!important;background:#071a2d!important}
.courtSlides{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;overflow:hidden!important;z-index:0!important}
.courtSlide{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;visibility:hidden!important;transform:scale(1.08)!important;animation:courtSlideShow 18s infinite ease-in-out!important}
.courtSlide img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
.courtSlide1{animation-delay:0s!important}
.courtSlide2{animation-delay:6s!important}
.courtSlide3{animation-delay:12s!important}
@keyframes courtSlideShow{
  0%{opacity:0;visibility:hidden;transform:scale(1.08)}
  4%{opacity:1;visibility:visible;transform:scale(1.06)}
  29%{opacity:1;visibility:visible;transform:scale(1.00)}
  33.333%{opacity:0;visibility:hidden;transform:scale(.99)}
  100%{opacity:0;visibility:hidden;transform:scale(.99)}
}
.courtCarousel .fullpageHeroOverlay{position:absolute!important;inset:0!important;z-index:1!important}
.courtCarousel .fullpageHeroContent{position:relative!important;z-index:2!important}
@media(max-width:700px){
  .courtCarousel{min-height:560px!important;height:calc(100svh - 68px)!important}
  .courtSlide img{object-position:center!important}
}
@media(prefers-reduced-motion:reduce){
  .courtSlide{animation:none!important;opacity:0!important}
  .courtSlide1{opacity:1!important;visibility:visible!important;transform:none!important}
}

/* Final reliable hero carousel fallback */
.courtSlide.jsActive{opacity:1!important;visibility:visible!important;transform:scale(1)!important;animation:courtZoomOutJS 6s ease-out!important}
@keyframes courtZoomOutJS{from{opacity:0;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}
