.kkset-home { overflow: hidden; background: #fff; }
.kkset-home *, .kkset-home *::before, .kkset-home *::after { box-sizing: border-box; }
.kkset-home h1, .kkset-home h2, .kkset-home h3, .kkset-home p { margin-top: 0; }
.kkset-home h1, .kkset-home h2, .kkset-home h3 { color: var(--kkset-navy, #071d49); }
.kkset-home h1 { max-width: 850px; margin-bottom: 24px; font-size: clamp(48px, 6vw, 88px); line-height: .98; letter-spacing: -.055em; }
.kkset-home h2 { margin-bottom: 14px; font-size: clamp(32px, 4vw, 54px); line-height: 1.04; letter-spacing: -.035em; }
.kkset-home h3 { font-size: 20px; }
.kkset-eyebrow { margin-bottom: 14px; color: #0b56f0; font-size: 12px; font-weight: 900; letter-spacing: .17em; text-transform: uppercase; }
.kkset-section { padding-block: 94px; }
.kkset-section-head { display: flex; justify-content: space-between; align-items: end; gap: 50px; margin-bottom: 38px; }
.kkset-section-head > p { max-width: 540px; margin-bottom: 4px; color: #65728a; line-height: 1.75; }
.kkset-text-link { color: #0b56f0; font-weight: 850; text-decoration: none; white-space: nowrap; }

.kkset-hero { position: relative; min-height: 720px; display: grid; align-items: center; color: #0d203d; background: radial-gradient(circle at 80% 30%, rgba(31,111,255,.2), transparent 35%), linear-gradient(118deg, #fff 0 52%, #eaf2ff 52% 100%); }
.kkset-hero::after { content: ''; position: absolute; inset: auto 0 0; height: 110px; background: linear-gradient(transparent, rgba(255,255,255,.85)); pointer-events: none; }
.kkset-hero-grid { min-height: 720px; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 30px; }
.kkset-hero-copy { position: relative; z-index: 3; padding-block: 78px; }
.kkset-hero-lead { max-width: 720px; margin-bottom: 32px; color: #54637c; font-size: 19px; line-height: 1.75; }
.kkset-hero-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-bottom: 30px; }
.kkset-button { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; padding: 0 24px; border-radius: 9px; font-size: 13px; font-weight: 900; letter-spacing: .035em; text-decoration: none; text-transform: uppercase; }
.kkset-button-primary { color: #fff; background: #0b56f0; box-shadow: 0 13px 30px rgba(11,86,240,.25); }
.kkset-button-primary:hover { color: #fff; background: #0043c7; }
.kkset-button-ghost { color: #071d49; border: 1px solid #bfc9da; background: #fff; }
.kkset-button-light { color: #071d49; background: #fff; }
.kkset-hero-points { display: flex; flex-wrap: wrap; gap: 12px 28px; margin: 0; padding: 0; color: #465873; list-style: none; font-size: 13px; font-weight: 700; }
.kkset-hero-points li::before { content: '✓'; margin-right: 8px; color: #0b56f0; font-weight: 900; }

.kkset-hero-art { position: relative; height: 650px; transform: translateX(35px); }
.kkset-stadium-glow { position: absolute; inset: 55px 5% 30px 4%; border-radius: 50% 50% 24% 24%; background: radial-gradient(circle at 50% 20%, rgba(255,255,255,.98), rgba(74,139,255,.35) 34%, rgba(7,29,73,.94) 72%); box-shadow: inset 0 0 80px rgba(255,255,255,.5), 0 35px 80px rgba(6,40,103,.25); }
.kkset-stadium-glow::before { content: ''; position: absolute; inset: 12% 8% auto; height: 7px; border-radius: 99px; background: repeating-linear-gradient(90deg,#fff 0 6px, transparent 6px 17px); box-shadow: 0 0 30px #fff; }
.kkset-shirt { position: absolute; width: 220px; height: 300px; clip-path: polygon(18% 0,35% 8%,65% 8%,82% 0,100% 18%,87% 38%,78% 32%,78% 100%,22% 100%,22% 32%,13% 38%,0 18%); border-radius: 18px; filter: drop-shadow(0 25px 30px rgba(0,0,0,.25)); }
.kkset-shirt::before { content: ''; position: absolute; inset: 0; background: linear-gradient(110deg, rgba(255,255,255,.24), transparent 35% 70%, rgba(255,255,255,.14)), repeating-linear-gradient(90deg, transparent 0 27px, rgba(255,255,255,.08) 27px 29px); }
.kkset-shirt::after { content: ''; position: absolute; left: 40%; top: 4px; width: 20%; height: 26px; border: 5px solid rgba(255,255,255,.85); border-top: 0; border-radius: 0 0 50% 50%; }
.kkset-shirt span { position: absolute; left: 28%; top: 42%; z-index: 2; color: rgba(255,255,255,.9); font-size: 25px; font-weight: 950; transform: rotate(-5deg); }
.kkset-shirt-one { right: 43%; top: 190px; transform: rotate(-9deg) scale(.9); background: linear-gradient(145deg,#020b20,#0b56f0); }
.kkset-shirt-two { right: 24%; top: 115px; z-index: 2; transform: scale(1.12); background: linear-gradient(150deg,#fff,#dbe8ff); }
.kkset-shirt-two span { color: #0b56f0; }
.kkset-shirt-three { right: 2%; top: 185px; transform: rotate(8deg); background: linear-gradient(145deg,#0b56f0,#051739); }
.kkset-ball-art { position: absolute; right: 7%; bottom: 55px; z-index: 4; width: 120px; height: 120px; display: grid; place-items: center; border: 14px double #0b56f0; border-radius: 50%; color: #0b56f0; background: #fff; box-shadow: 0 20px 35px rgba(0,0,0,.25); font-size: 24px; font-weight: 950; transform: rotate(-12deg); }

.kkset-benefit-strip { position: relative; z-index: 5; margin-top: -28px; }
.kkset-benefit-grid { display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid #e1e8f3; border-radius: 18px; background: #fff; box-shadow: 0 22px 55px rgba(7,29,73,.1); }
.kkset-benefit-grid a { min-height: 110px; display: flex; flex-direction: column; justify-content: center; padding: 24px 28px; border-right: 1px solid #e5eaf2; color: #071d49; text-decoration: none; }
.kkset-benefit-grid a:last-child { border-right: 0; }
.kkset-benefit-grid strong { font-size: 15px; }
.kkset-benefit-grid span { margin-top: 6px; color: #65728a; font-size: 12px; }

.kkset-section-categories { padding-top: 115px; }
.kkset-category-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; }
.kkset-category-card { min-height: 205px; position: relative; display: flex; flex-direction: column; justify-content: space-between; padding: 27px; overflow: hidden; border: 1px solid #e2e8f1; border-radius: 18px; color: #fff; background: #071d49; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.kkset-category-card:hover { color: #fff; transform: translateY(-5px); box-shadow: 0 22px 45px rgba(7,29,73,.2); }
.kkset-category-card:nth-child(2n) { background: linear-gradient(145deg,#0b56f0,#042a80); }
.kkset-category-card:nth-child(3n) { background: linear-gradient(145deg,#fff,#e7efff); color: #071d49; }
.kkset-category-card:nth-child(3n):hover { color: #071d49; }
.kkset-category-icon { width: 62px; height: 62px; display: grid; place-items: center; border-radius: 16px; background: rgba(255,255,255,.12); }
.kkset-category-card:nth-child(3n) .kkset-category-icon { background: #fff; box-shadow: 0 12px 30px rgba(7,29,73,.1); }
.kkset-category-icon svg { width: 38px; height: 38px; fill: none; stroke: currentColor; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.kkset-category-copy { display: flex; flex-direction: column; gap: 7px; }
.kkset-category-copy strong { font-size: 23px; letter-spacing: -.025em; }
.kkset-category-copy small { max-width: 245px; color: currentColor; opacity: .72; line-height: 1.5; }
.kkset-card-arrow { position: absolute; right: 22px; top: 25px; font-size: 22px; }

.kkset-section-teams { background: #f6f8fc; }
.kkset-team-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 13px; }
.kkset-team-card { min-height: 155px; display: flex; flex-direction: column; justify-content: end; position: relative; padding: 22px; border: 1px solid #dfe6f1; border-radius: 15px; color: #071d49; background: #fff; text-decoration: none; overflow: hidden; }
.kkset-team-card::after { content: attr(data-code); }
.kkset-team-card span { position: absolute; right: 14px; top: 10px; color: #dbe5f7; font-size: 44px; font-weight: 950; letter-spacing: -.08em; }
.kkset-team-card strong { position: relative; z-index: 2; font-size: 18px; }
.kkset-team-card small { margin-top: 6px; color: #65728a; }
.kkset-team-card:hover { border-color: #0b56f0; box-shadow: 0 12px 26px rgba(7,29,73,.1); }

.kkset-products-section ul.products { display: grid !important; grid-template-columns: repeat(4,1fr); gap: 24px; }
.kkset-products-section ul.products::before, .kkset-products-section ul.products::after { display: none !important; }
.kkset-products-section ul.products li.product { width: auto !important; margin: 0 !important; padding-bottom: 18px; border: 1px solid #e2e8f1; border-radius: 16px; overflow: hidden; background: #fff; }
.kkset-products-section ul.products li.product img { aspect-ratio: 1/1; object-fit: cover; margin-bottom: 16px !important; background: #f5f7fb; }
.kkset-products-section ul.products li.product .woocommerce-loop-product__title, .kkset-products-section ul.products li.product .price, .kkset-products-section ul.products li.product .button { margin-inline: 18px !important; }
.kkset-products-section ul.products li.product .woocommerce-loop-product__title { color: #071d49; font-size: 15px !important; line-height: 1.4; }
.kkset-products-section ul.products li.product .price { color: #0b56f0 !important; font-weight: 900; }
.kkset-product-placeholders { display: grid; grid-template-columns: repeat(4,1fr); gap: 24px; }
.kkset-product-placeholders article { min-height: 350px; display: flex; flex-direction: column; justify-content: end; padding: 22px; border: 1px dashed #b8c4d8; border-radius: 16px; background: linear-gradient(#f4f7fc 0 72%, #fff 72%); }
.kkset-product-placeholders span { margin-bottom: auto; padding-top: 42%; text-align: center; color: #9aa8bf; font-size: 12px; font-weight: 850; }
.kkset-product-placeholders strong { color: #071d49; font-size: 15px; }

.kkset-feature-pair { padding-top: 20px; }
.kkset-feature-pair-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.kkset-feature-card { min-height: 490px; position: relative; display: flex; align-items: end; padding: 48px; overflow: hidden; border-radius: 22px; color: #fff; background: #071d49; }
.kkset-feature-card::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 82% 25%, rgba(35,119,255,.85), transparent 33%), repeating-linear-gradient(120deg, transparent 0 45px, rgba(255,255,255,.025) 45px 47px); }
.kkset-feature-retro { background: #18335d; }
.kkset-feature-retro::before { background: radial-gradient(circle at 85% 15%, rgba(255,255,255,.25), transparent 28%), repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 2px, transparent 2px 32px); }
.kkset-feature-card > div { position: relative; z-index: 2; max-width: 500px; }
.kkset-feature-card h2 { color: #fff; }
.kkset-feature-card p:not(.kkset-eyebrow) { color: #d2dced; line-height: 1.8; }
.kkset-feature-number { position: absolute; right: 25px; top: 0; color: rgba(255,255,255,.07); font-size: 230px; font-weight: 950; line-height: 1; }

.kkset-guide-section { background: #f6f8fc; }
.kkset-guide-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 17px; }
.kkset-guide-grid a { min-height: 285px; display: flex; flex-direction: column; padding: 28px; border: 1px solid #e0e6ef; border-radius: 18px; color: #071d49; background: #fff; text-decoration: none; }
.kkset-guide-grid span { width: 44px; height: 44px; display: grid; place-items: center; margin-bottom: 38px; border-radius: 50%; color: #fff; background: #0b56f0; font-size: 12px; font-weight: 900; }
.kkset-guide-grid p { color: #65728a; line-height: 1.7; }
.kkset-guide-grid strong { margin-top: auto; color: #0b56f0; }

.kkset-process-section { color: #fff; background: #071d49; }
.kkset-process-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 90px; align-items: center; }
.kkset-process-grid h2 { color: #fff; }
.kkset-process-grid > div > p:not(.kkset-eyebrow) { color: #c9d5e8; line-height: 1.8; }
.kkset-process-grid ol { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 0; padding: 0; list-style: none; }
.kkset-process-grid li { min-height: 140px; display: flex; flex-direction: column; justify-content: space-between; padding: 24px; border: 1px solid rgba(255,255,255,.14); border-radius: 16px; background: rgba(255,255,255,.05); }
.kkset-process-grid li span { color: #4b8cff; font-size: 12px; font-weight: 950; }
.kkset-process-grid li strong { max-width: 180px; color: #fff; font-size: 17px; }

.kkset-faq-layout { display: grid; grid-template-columns: .75fr 1.25fr; gap: 90px; }
.kkset-faq-layout > div:first-child > p:not(.kkset-eyebrow) { color: #65728a; line-height: 1.8; }
.kkset-accordion details { border-bottom: 1px solid #dfe5ef; }
.kkset-accordion summary { position: relative; padding: 24px 44px 24px 0; color: #071d49; font-size: 18px; font-weight: 850; cursor: pointer; list-style: none; }
.kkset-accordion summary::-webkit-details-marker { display: none; }
.kkset-accordion summary::after { content: '+'; position: absolute; right: 3px; top: 21px; color: #0b56f0; font-size: 25px; }
.kkset-accordion details[open] summary::after { content: '−'; }
.kkset-accordion details p { max-width: 770px; padding-bottom: 24px; color: #65728a; line-height: 1.8; }

.kkset-seo-section { padding-top: 60px; background: #f6f8fc; }
.kkset-seo-copy { max-width: 1120px; }
.kkset-seo-copy h2 { max-width: 900px; }
.kkset-seo-columns { columns: 3; column-gap: 44px; color: #65728a; line-height: 1.9; }
.kkset-seo-columns p { break-inside: avoid; }

.kkset-contact-cards { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; margin: 32px 0; }
.kkset-contact-cards > div { padding: 25px; border: 1px solid #e0e6ef; border-radius: 14px; background: #f8faff; }

@media (max-width: 1100px) {
  .kkset-hero-grid { grid-template-columns: 1fr; }
  .kkset-hero { background: linear-gradient(180deg,#fff 0 52%,#eaf2ff 52% 100%); }
  .kkset-hero-art { height: 520px; transform: none; }
  .kkset-hero-copy { padding-bottom: 0; }
  .kkset-category-grid, .kkset-products-section ul.products, .kkset-product-placeholders, .kkset-guide-grid { grid-template-columns: repeat(2,1fr) !important; }
  .kkset-team-grid { grid-template-columns: repeat(5,1fr); }
  .kkset-process-grid, .kkset-faq-layout { grid-template-columns: 1fr; gap: 48px; }
}

@media (max-width: 760px) {
  .kkset-section { padding-block: 68px; }
  .kkset-section-head { align-items: flex-start; flex-direction: column; gap: 10px; margin-bottom: 28px; }
  .kkset-hero, .kkset-hero-grid { min-height: auto; }
  .kkset-hero-copy { padding-top: 62px; }
  .kkset-home h1 { font-size: clamp(42px, 13vw, 62px); }
  .kkset-hero-art { height: 390px; }
  .kkset-shirt { width: 150px; height: 210px; }
  .kkset-shirt-one { right: 50%; top: 120px; }
  .kkset-shirt-two { right: 28%; top: 75px; }
  .kkset-shirt-three { right: 4%; top: 120px; }
  .kkset-ball-art { width: 80px; height: 80px; right: 6%; bottom: 25px; border-width: 9px; font-size: 17px; }
  .kkset-benefit-grid { grid-template-columns: 1fr 1fr; }
  .kkset-benefit-grid a:nth-child(2) { border-right: 0; }
  .kkset-benefit-grid a:nth-child(-n+2) { border-bottom: 1px solid #e5eaf2; }
  .kkset-category-grid, .kkset-products-section ul.products, .kkset-product-placeholders, .kkset-guide-grid, .kkset-feature-pair-grid { grid-template-columns: 1fr !important; }
  .kkset-team-grid { grid-template-columns: 1fr 1fr; }
  .kkset-feature-card { min-height: 430px; padding: 32px; }
  .kkset-process-grid ol { grid-template-columns: 1fr; }
  .kkset-seo-columns { columns: 1; }
  .kkset-contact-cards { grid-template-columns: 1fr; }
}
