/*
Theme Name: Sports Lab Lincoln
Theme URI: https://sportslablincoln.com/
Author: Sports Lab-Lincoln
Description: A responsive, single-page Sports Lab-Lincoln homepage based on the approved facility vision design.
Version: 1.9.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: sports-lab-lincoln
*/
:root{--red:#ed101b;--black:#08090b;--silver:#d9dce0;--white:#fff;--muted:#bfc2c7;--max:1500px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#050607;color:#fff;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.sll-site{overflow:hidden;background:#050607}.sll-wrap{width:min(100% - 38px,var(--max));margin:auto}.sll-header{height:auto;min-height:76px;background:#050607;border-bottom:3px solid var(--red);display:flex;align-items:center;gap:18px;padding:8px clamp(14px,3vw,42px);position:relative;z-index:5}.sll-brand{display:flex;align-items:center;gap:10px;flex:0 0 auto}.sll-brand img{width:62px;height:62px;object-fit:contain;border-radius:50%;border:2px solid var(--red)}.sll-brand span{font-weight:900;letter-spacing:.06em;line-height:1.05}.sll-brand small{display:block;color:#ef2730;font-size:10px;letter-spacing:.2em;margin-top:4px}.sll-nav{display:flex;align-items:center;justify-content:center;gap:clamp(7px,1.1vw,18px);flex:1}.sll-nav a{font-size:clamp(10px,.78vw,13px);font-weight:800;text-transform:uppercase;white-space:nowrap;padding:13px 2px}.sll-nav a:hover,.sll-nav a:focus{color:#ff3039}.sll-nav a:first-child{background:var(--red);padding:15px 16px}.sll-interest{background:linear-gradient(#ff2630,#bd0009);padding:14px 18px;border-radius:5px;font-size:12px;font-weight:900;text-transform:uppercase;white-space:nowrap;box-shadow:0 0 16px #e0000040}.sll-menu{display:none;background:#17191c;border:1px solid #555;color:white;border-radius:4px;padding:10px 13px;font-size:20px}.sll-hero{min-height:570px;position:relative;display:flex;align-items:flex-end;justify-content:center;text-align:center;background:#08090b url('assets/facility-hero.jpg') center 42%/cover no-repeat;padding:300px 22px 30px}.sll-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,.08) 40%,rgba(0,0,0,.88) 76%,#050607 100%)}.sll-hero-inner{position:relative;max-width:1120px}.sll-eyebrow{font-size:12px;letter-spacing:.25em;color:#ff343c;font-weight:900;text-transform:uppercase}.sll-hero h1{font-size:clamp(34px,5.1vw,76px);line-height:.98;margin:12px 0 8px;font-weight:1000;font-style:italic;text-transform:uppercase;text-shadow:0 4px 10px #000}.sll-hero h1 span{color:#f01924}.sll-tagline{font-size:clamp(15px,2vw,25px);font-weight:900;letter-spacing:.32em;margin:8px 0 12px}.sll-tagline b{color:var(--red);padding:0 9px}.sll-hero p{font-size:clamp(13px,1.2vw,17px);line-height:1.5;margin:0 auto 18px;max-width:1000px;text-shadow:0 2px 5px #000}.sll-actions{display:flex;gap:18px;justify-content:center;flex-wrap:wrap}.sll-btn{display:inline-flex;align-items:center;justify-content:center;min-width:235px;padding:14px 22px;border-radius:9px;border:1px solid #fff;font-weight:900;text-transform:uppercase;font-size:16px;letter-spacing:.02em;transition:.2s}.sll-btn:hover{transform:translateY(-3px);filter:brightness(1.15)}.sll-btn.red{background:linear-gradient(#ff2732,#b90009);border-color:#f33}.sll-btn.silver{background:linear-gradient(#fff,#aeb2b7);color:#111;border-color:#eee}.sll-section-title{text-align:center;text-transform:uppercase;font-weight:1000;font-size:clamp(25px,3vw,39px);margin:0 0 8px}.sll-section-title span{color:var(--red)}.sll-sports{padding:26px 18px 30px;background:linear-gradient(180deg,#090a0c,#101114)}.sll-sport-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;max-width:1500px;margin:auto}.sll-sport{position:relative;min-height:175px;overflow:hidden;border:2px solid #3c3c3c;border-bottom:5px solid var(--red);transform:skew(-5deg);background:#151515;transition:.22s}.sll-sport:hover{transform:skew(-5deg) translateY(-6px);border-color:#ff3039;box-shadow:0 8px 24px #e0000050}.sll-sport img{width:100%;height:118px;object-fit:cover;display:block;transform:skew(5deg) scale(1.08)}.sll-sport:after{content:"";position:absolute;inset:65px 0 0;background:linear-gradient(transparent,#000)}.sll-sport strong,.sll-sport small{position:absolute;z-index:1;left:8px;right:8px;text-align:center;text-transform:uppercase;text-shadow:0 2px 4px #000;transform:skew(5deg)}.sll-sport strong{bottom:29px;font-size:clamp(11px,1vw,15px)}.sll-sport small{bottom:9px;font-size:10px;color:#eee}.sll-benefits{background:#050607;border-top:1px solid #333;border-bottom:2px solid #333;padding:20px 12px;display:grid;grid-template-columns:repeat(5,1fr);max-width:1500px;margin:auto}.sll-benefit{display:flex;align-items:center;justify-content:center;gap:12px;padding:5px 12px;border-right:1px solid var(--red)}.sll-benefit:last-child{border:0}.sll-benefit i{font-style:normal;color:var(--red);font-size:34px}.sll-benefit strong{display:block;font-size:13px;text-transform:uppercase}.sll-benefit small{display:block;color:#c5c5c5;font-size:11px;margin-top:4px}.sll-facility{padding:28px 18px 42px;background:linear-gradient(120deg,#090a0c,#151515);display:grid;grid-template-columns:1fr 2.1fr;gap:20px;align-items:center}.sll-facility-copy h2{font-size:clamp(27px,3vw,42px);margin:0 0 4px;text-transform:uppercase}.sll-facility-copy h3{font-size:clamp(17px,1.7vw,25px);color:var(--red);margin:0 0 12px;text-transform:uppercase}.sll-facility-copy p{line-height:1.55;color:#e2e2e2;font-size:15px}.sll-facility-images{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.sll-facility-images img{width:100%;height:220px;object-fit:cover;border:2px solid #555;border-radius:4px}.sll-footer{border-top:3px solid var(--red);padding:22px;text-align:center;color:#bbb;font-size:12px;background:#030405}.sll-footer strong{color:#fff;letter-spacing:.1em}.sll-footer span{color:var(--red);margin-left:15px}.sll-anchor{scroll-margin-top:25px}
@media(max-width:1100px){.sll-header{flex-wrap:wrap}.sll-nav{order:3;flex-basis:100%;flex-wrap:wrap;gap:8px}.sll-nav a{font-size:11px}.sll-sport-grid{grid-template-columns:repeat(3,1fr)}.sll-sport{min-height:190px}.sll-sport img{height:140px}}
@media(max-width:650px){.sll-header{min-height:68px;justify-content:space-between}.sll-brand img{width:50px;height:50px}.sll-brand span{font-size:13px}.sll-menu{display:block}.sll-nav{display:none;flex-direction:column;align-items:stretch;gap:0}.sll-nav.is-open{display:flex}.sll-nav a{padding:11px 8px;border-bottom:1px solid #333;font-size:12px}.sll-nav a:first-child{padding:11px 8px}.sll-interest{font-size:10px;padding:11px 12px}.sll-hero{min-height:550px;padding:230px 16px 28px;background-position:center top}.sll-hero h1{font-size:37px}.sll-tagline{letter-spacing:.12em}.sll-actions{gap:9px}.sll-btn{width:100%;min-width:0;padding:13px;font-size:14px}.sll-sports{padding:25px 12px}.sll-sport-grid{grid-template-columns:repeat(2,1fr);gap:9px}.sll-sport{min-height:160px}.sll-sport img{height:118px}.sll-benefits{grid-template-columns:1fr 1fr;gap:0}.sll-benefit{justify-content:flex-start;border-right:0;border-bottom:1px solid #333;padding:12px 8px}.sll-benefit:last-child{grid-column:1/-1}.sll-facility{grid-template-columns:1fr;padding:28px 15px}.sll-facility-images{grid-template-columns:1fr}.sll-facility-images img{height:190px}}
/* v1.2 refinements: show the full approved facility illustration before the headline */
.sll-hero{display:block;min-height:0;padding:0;background:#050607;text-align:center}
.sll-hero:before{display:none}
.sll-hero-image{display:block;width:100%;height:auto;max-height:620px;object-fit:contain;object-position:center top}
.sll-hero-inner{max-width:1500px;margin:0 auto;padding:12px 22px 22px;background:linear-gradient(180deg,#050607,#111)}
.sll-hero h1{font-size:clamp(30px,3.4vw,54px);line-height:1.02;margin:0 auto 5px;white-space:nowrap}
.sll-hero p{max-width:1100px;margin:0 auto 13px;font-size:clamp(13px,1vw,16px)}
.sll-tagline{margin:4px 0 8px;font-size:clamp(15px,1.55vw,22px)}
.sll-actions{gap:14px}
.sll-btn{min-width:225px;padding:12px 18px}
.sll-sports{padding-top:18px}
.sll-sport{min-height:185px;clip-path:polygon(9% 0,100% 0,91% 100%,0 100%);transform:none;border:0;border-bottom:5px solid var(--red)}
.sll-sport:hover{transform:translateY(-5px);border-color:#ff3039}
.sll-sport img{height:135px;transform:none}
.sll-sport strong,.sll-sport small{transform:none}
.sll-benefits{padding:24px 14px;gap:0}
.sll-benefit{gap:14px;padding:8px 16px}
.sll-benefit i{font-size:40px;min-width:40px;text-align:center}
.sll-benefit strong{font-size:clamp(11px,.95vw,14px)}
.sll-benefit small{font-size:12px;line-height:1.3}
@media(max-width:1100px){.sll-hero h1{white-space:normal}.sll-sport{min-height:190px}.sll-sport img{height:140px}}
@media(max-width:650px){.sll-hero-image{max-height:none}.sll-hero-inner{padding:16px 14px 20px}.sll-hero h1{font-size:34px;white-space:normal}.sll-hero p{font-size:13px}.sll-actions{gap:9px}.sll-btn{width:100%;min-width:0}.sll-sport{min-height:160px}.sll-sport img{height:118px}.sll-benefit i{font-size:32px;min-width:32px}.sll-benefit small{font-size:10px}}

/* Responsive overflow correction for WordPress Customizer and narrow screens */
html, body, .sll-site, .sll-site main {max-width:100%; overflow-x:hidden !important;}
.sll-hero {width:100% !important; max-width:100% !important; overflow:hidden !important; padding:0 !important; margin:0 !important;}
.sll-hero-image {display:block !important; width:100% !important; max-width:100% !important; height:auto !important; max-height:none !important; object-fit:contain !important; object-position:center top !important;}
.sll-hero-inner {width:100% !important; max-width:100% !important; min-width:0 !important; padding:clamp(12px,2vw,24px) clamp(12px,3vw,32px) !important; overflow:hidden !important;}
.sll-hero h1 {display:block !important; width:100% !important; max-width:100% !important; white-space:normal !important; overflow-wrap:break-word !important; word-break:normal !important; font-size:clamp(25px,4.1vw,58px) !important; line-height:1.04 !important;}
.sll-hero h1 span {display:inline;}
.sll-hero p {width:100%; max-width:1050px;}
.sll-header {width:100%; max-width:100%; flex-wrap:wrap;}
.sll-nav {min-width:0; flex-wrap:wrap;}
@media (max-width:1100px) {
 .sll-header {gap:10px;}
 .sll-nav {order:3; flex:1 1 100%; justify-content:center;}
 .sll-hero h1 {white-space:normal !important; font-size:clamp(25px,4vw,42px) !important;}
 .sll-sport-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:650px) {
 .sll-header {display:flex;}
 .sll-nav {display:none;}
 .sll-nav.is-open {display:flex;}
 .sll-hero-image {width:100% !important; height:auto !important;}
 .sll-hero h1 {font-size:clamp(24px,7vw,36px) !important;}
 .sll-sport-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* v1.4: hard reset the homepage hero so the approved panorama is shown once,
   at its natural wide aspect ratio, with all five facility areas visible. */
html body .sll-site main #home.sll-hero {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  text-align: center !important;
  background: #050607 !important;
  background-image: none !important;
  position: relative !important;
}
html body .sll-site main #home.sll-hero > img.sll-hero-image {
  display: block !important;
  position: relative !important;
  inset: auto !important;
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: 1536 / 352 !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 auto !important;
  padding: 0 !important;
  transform: none !important;
}
html body .sll-site main #home.sll-hero > .sll-hero-inner {
  display: block !important;
  position: relative !important;
  inset: auto !important;
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0 auto !important;
  padding: clamp(14px, 2vw, 26px) clamp(12px, 3vw, 36px) 24px !important;
  overflow: visible !important;
  text-align: center !important;
  box-sizing: border-box !important;
  background: linear-gradient(180deg,#08090b,#111) !important;
  transform: none !important;
}
html body .sll-site main #home.sll-hero .sll-hero-inner h1 {
  display: block !important;
  position: static !important;
  width: 100% !important;
  max-width: 1200px !important;
  min-width: 0 !important;
  margin: 0 auto 8px !important;
  padding: 0 !important;
  font-size: clamp(25px, 4vw, 58px) !important;
  line-height: 1.04 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  text-align: center !important;
  transform: none !important;
}
html body .sll-site main #home.sll-hero .sll-hero-inner h1 span { display: inline !important; }
html body .sll-site main #home.sll-hero .sll-hero-inner .sll-tagline,
html body .sll-site main #home.sll-hero .sll-hero-inner p,
html body .sll-site main #home.sll-hero .sll-hero-inner .sll-actions {
  position: static !important;
  width: 100% !important;
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  transform: none !important;
  text-align: center !important;
}
html body .sll-site main #home.sll-hero .sll-hero-inner .sll-actions { display:flex !important; flex-wrap:wrap !important; justify-content:center !important; }
@media (max-width: 700px) {
  html body .sll-site main #home.sll-hero > img.sll-hero-image { aspect-ratio: 1536 / 352 !important; }
  html body .sll-site main #home.sll-hero .sll-hero-inner h1 { font-size: clamp(24px, 7vw, 38px) !important; }
  html body .sll-site main #home.sll-hero .sll-hero-inner .sll-actions { flex-direction: column !important; align-items: stretch !important; }
  html body .sll-site main #home.sll-hero .sll-hero-inner .sll-btn { width: 100% !important; min-width: 0 !important; }
}

/* v1.5: force the panorama to render at the full available viewport width.
   WordPress themes can constrain or enlarge images inside their content wrappers. */
html body .sll-site,
html body .sll-site > main {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  overflow-x: clip !important;
}
html body .sll-site main #home.sll-hero {
  display: flex !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  align-items: stretch !important;
  flex-direction: column !important;
}
html body .sll-site main #home.sll-hero > img.sll-hero-image {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: fill !important;
  object-position: center top !important;
  position: static !important;
  inset: auto !important;
  transform: none !important;
}
html body .sll-site main #home.sll-hero > .sll-hero-inner {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: clamp(12px, 1.6vw, 22px) clamp(12px, 2.5vw, 32px) 22px !important;
  overflow: visible !important;
  transform: none !important;
}
html body .sll-site main #home.sll-hero > .sll-hero-inner h1 {
  width: 100% !important;
  max-width: 1400px !important;
  margin: 0 auto 7px !important;
  padding: 0 !important;
  font-size: clamp(24px, 3.2vw, 50px) !important;
  line-height: 1.02 !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  text-align: center !important;
  transform: none !important;
}
html body .sll-site main #home.sll-hero > .sll-hero-inner h1 span { display: inline !important; }
@media (max-width: 700px) {
  html body .sll-site main #home.sll-hero > img.sll-hero-image {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
  }
  html body .sll-site main #home.sll-hero > .sll-hero-inner h1 {
    font-size: clamp(23px, 6vw, 36px) !important;
  }
}


/* v1.6: clean, cache-busted responsive hero layout */
html, body { max-width:100%; overflow-x:hidden !important; }
.sll-site, .sll-site main { width:100%; max-width:100%; min-width:0; overflow-x:hidden; }
.sll-header { width:100%; max-width:100%; box-sizing:border-box; }
.sll-hero {
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  justify-content:flex-start !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  position:relative !important;
  text-align:center !important;
  background:#050607 !important;
}
.sll-hero:before { display:none !important; content:none !important; }
.sll-hero > img.sll-hero-image {
  display:block !important;
  position:static !important;
  float:none !important;
  inset:auto !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:1536 / 352 !important;
  object-fit:contain !important;
  object-position:center top !important;
  margin:0 auto !important;
  padding:0 !important;
  transform:none !important;
}
.sll-hero > .sll-hero-inner {
  display:block !important;
  position:static !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:auto !important;
  box-sizing:border-box !important;
  margin:0 auto !important;
  padding:clamp(14px,2vw,26px) clamp(12px,3vw,36px) 24px !important;
  overflow:visible !important;
  text-align:center !important;
  transform:none !important;
  background:linear-gradient(180deg,#08090b,#111) !important;
}
.sll-hero-inner h1 {
  display:block !important;
  position:static !important;
  width:100% !important;
  max-width:1400px !important;
  min-width:0 !important;
  margin:0 auto 8px !important;
  padding:0 !important;
  font-size:clamp(24px,3.5vw,54px) !important;
  line-height:1.04 !important;
  white-space:normal !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  text-align:center !important;
  transform:none !important;
}
.sll-hero-inner h1 span { display:inline !important; }
.sll-hero-inner .sll-tagline,
.sll-hero-inner p,
.sll-hero-inner .sll-actions {
  position:static !important;
  width:100% !important;
  max-width:1100px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  transform:none !important;
  text-align:center !important;
}
.sll-hero-inner .sll-actions {
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  gap:14px !important;
}
.sll-sport-grid { grid-template-columns:repeat(6,minmax(0,1fr)); }
@media(max-width:1100px) {
  .sll-nav { min-width:0; flex-wrap:wrap; }
  .sll-hero-inner h1 { font-size:clamp(24px,4vw,42px) !important; }
  .sll-sport-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:700px) {
  .sll-hero > img.sll-hero-image { width:100% !important; height:auto !important; aspect-ratio:1536 / 352 !important; object-fit:contain !important; }
  .sll-hero-inner h1 { font-size:clamp(23px,6vw,36px) !important; }
  .sll-hero-inner .sll-actions { flex-direction:column !important; align-items:stretch !important; }
  .sll-hero-inner .sll-btn { width:100% !important; min-width:0 !important; }
  .sll-sport-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}


/* v1.7 official header logo replacement */
.sll-header {
  min-height:88px !important;
  height:auto !important;
  align-items:center !important;
  gap:clamp(10px,1.4vw,22px) !important;
}
.sll-brand {
  display:flex !important;
  flex:0 0 82px !important;
  width:82px !important;
  min-width:82px !important;
  height:82px !important;
  align-items:center !important;
  justify-content:center !important;
  gap:0 !important;
  overflow:visible !important;
}
.sll-brand img {
  display:block !important;
  width:78px !important;
  height:78px !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  padding:0 !important;
  box-shadow:none !important;
}
.sll-brand span, .sll-brand small { display:none !important; }
.sll-nav { min-width:0 !important; flex-wrap:nowrap !important; gap:clamp(5px,.75vw,13px) !important; }
.sll-nav a { font-size:clamp(9px,.68vw,12px) !important; padding-left:1px !important; padding-right:1px !important; }
.sll-nav a:first-child { padding:13px 12px !important; }
.sll-interest { font-size:clamp(9px,.65vw,11px) !important; padding:12px 13px !important; }
@media(max-width:900px) {
 .sll-header { min-height:72px !important; }
 .sll-brand { flex-basis:66px !important; width:66px !important; min-width:66px !important; height:66px !important; }
 .sll-brand img { width:64px !important; height:64px !important; }
}


/* v1.8: show the complete facility panorama with breathing room on every side */
html body .sll-site main #home.sll-hero {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:auto !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 auto !important;
  overflow:hidden !important;
  background:#050607 !important;
  text-align:center !important;
}
html body .sll-site main #home.sll-hero > img.sll-hero-image {
  display:block !important;
  width:96% !important;
  max-width:1600px !important;
  min-width:0 !important;
  height:auto !important;
  max-height:none !important;
  aspect-ratio:1536 / 352 !important;
  object-fit:contain !important;
  object-position:center center !important;
  margin:0 auto !important;
  padding:0 !important;
  transform:none !important;
}
@media(max-width:650px) {
  html body .sll-site main #home.sll-hero > img.sll-hero-image {
    width:98% !important;
    max-width:100% !important;
    height:auto !important;
    aspect-ratio:1536 / 352 !important;
    object-fit:contain !important;
  }
}


/* v1.9: restore the Sports Lab-Lincoln wordmark beside the official header emblem */
.sll-header {
  gap: clamp(8px,1vw,16px) !important;
  padding-left: clamp(12px,2vw,30px) !important;
  padding-right: clamp(12px,2vw,30px) !important;
}
.sll-brand {
  display:flex !important;
  flex:0 1 auto !important;
  width:auto !important;
  min-width:0 !important;
  height:82px !important;
  gap:12px !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-decoration:none !important;
  overflow:visible !important;
}
.sll-brand img {
  flex:0 0 76px !important;
  width:76px !important;
  height:76px !important;
  object-fit:contain !important;
}
.sll-brand .sll-wordmark {
  display:block !important;
  color:#fff !important;
  font-size:clamp(17px,1.65vw,29px) !important;
  font-weight:1000 !important;
  line-height:1 !important;
  letter-spacing:.025em !important;
  white-space:nowrap !important;
  padding:0 0 8px !important;
  border-bottom:3px solid #ed101b !important;
}
.sll-brand .sll-wordmark-dash { color:#ed101b !important; }
.sll-brand .sll-wordmark em {
  color:#ed101b !important;
  font-style:normal !important;
}
.sll-nav { flex:1 1 auto !important; min-width:0 !important; }
@media(max-width:1250px) {
  .sll-header { flex-wrap:wrap !important; }
  .sll-nav { order:3 !important; flex:1 1 100% !important; justify-content:center !important; flex-wrap:wrap !important; }
}
@media(max-width:650px) {
  .sll-brand { height:58px !important; gap:8px !important; }
  .sll-brand img { flex-basis:52px !important; width:52px !important; height:52px !important; }
  .sll-brand .sll-wordmark { font-size:17px !important; padding-bottom:5px !important; }
}


/* v2.0: final header emblem polish — use the full official circular mark cleanly */
.sll-header {
  min-height:104px !important;
  display:flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  gap:clamp(10px,1.1vw,20px) !important;
  padding:8px clamp(14px,2.4vw,36px) !important;
}
.sll-brand {
  display:flex !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:max-content !important;
  height:90px !important;
  gap:14px !important;
  align-items:center !important;
  justify-content:flex-start !important;
}
.sll-brand img {
  display:block !important;
  flex:0 0 88px !important;
  width:88px !important;
  height:88px !important;
  max-width:88px !important;
  max-height:88px !important;
  object-fit:contain !important;
  object-position:center !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  padding:0 !important;
  box-shadow:0 0 12px rgba(220,0,18,.28) !important;
  image-rendering:auto !important;
}
.sll-brand .sll-wordmark {
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  color:#fff !important;
  font-size:clamp(20px,1.8vw,32px) !important;
  font-weight:900 !important;
  line-height:1.05 !important;
  letter-spacing:.025em !important;
  white-space:nowrap !important;
  padding:0 0 8px !important;
  border-bottom:3px solid #ed101b !important;
  text-shadow:0 2px 4px #000 !important;
}
.sll-brand .sll-wordmark-dash,
.sll-brand .sll-wordmark em { color:#ed101b !important; }
.sll-brand .sll-wordmark em { font-style:normal !important; }
.sll-nav { flex:1 1 auto !important; min-width:0 !important; }
@media(max-width:1250px) {
 .sll-header { flex-wrap:wrap !important; }
 .sll-nav { order:3 !important; flex:1 1 100% !important; justify-content:center !important; flex-wrap:wrap !important; }
}
@media(max-width:650px) {
 .sll-header { min-height:72px !important; }
 .sll-brand { height:62px !important; gap:8px !important; }
 .sll-brand img { flex-basis:58px !important; width:58px !important; height:58px !important; max-width:58px !important; max-height:58px !important; }
 .sll-brand .sll-wordmark { font-size:18px !important; padding-bottom:5px !important; }
}

/* v2.1: reduce the SPORTS LAB-LINCOLN header lettering while keeping the emblem unchanged */
.sll-brand .sll-wordmark {
  font-size:clamp(16px,1.35vw,24px) !important;
  letter-spacing:.02em !important;
}
@media(max-width:650px) {
  .sll-brand .sll-wordmark { font-size:15px !important; }
}

/* v2.2: compact header wordmark beside the unchanged circular logo */
.sll-brand .sll-wordmark {
  font-size: clamp(11px, 1vw, 16px) !important;
  letter-spacing: .035em !important;
  line-height: 1 !important;
  padding-bottom: 5px !important;
  border-bottom-width: 2px !important;
}
@media (max-width: 1100px) and (min-width: 651px) {
  .sll-brand .sll-wordmark { font-size: 13px !important; }
}
@media (max-width: 650px) {
  .sll-brand .sll-wordmark { font-size: 12px !important; }
}

/* v2.3: explicitly show the hyphen between LAB and LINCOLN */
.sll-brand .sll-wordmark-dash { display:inline !important; color:#ed101b !important; }

/* v2.4: social media icons placed immediately after CONTACT in the top navigation */
.sll-socials { display:inline-flex !important; align-items:center !important; gap:7px !important; flex:0 0 auto !important; margin-left:5px !important; }
.sll-social { width:23px !important; height:23px !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; border-radius:5px !important; background:#f4f4f4 !important; color:#090909 !important; transition:transform .18s ease, background .18s ease !important; }
.sll-social svg { display:block !important; width:16px !important; height:16px !important; fill:currentColor !important; }
.sll-social.facebook { background:#1877f2 !important; color:#fff !important; }
.sll-social.snapchat { background:#fffc00 !important; color:#000 !important; }
.sll-social.youtube { background:#ff0033 !important; color:#fff !important; }
.sll-social.instagram { background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045) !important; color:#fff !important; }
.sll-social:hover { transform:translateY(-2px) scale(1.08) !important; }
@media (max-width:1250px) { .sll-socials { margin:8px 0 !important; } }
@media (max-width:650px) { .sll-socials { justify-content:center !important; padding:8px 0 12px !important; } .sll-social { width:30px !important; height:30px !important; } .sll-social svg { width:19px !important; height:19px !important; } }

/* v2.5: reliable visible Facebook f mark */
.sll-social.facebook { background:#1877f2 !important; color:#fff !important; }
.sll-social.facebook .sll-facebook-f { display:block !important; color:#fff !important; font-family:Arial,Helvetica,sans-serif !important; font-size:22px !important; font-weight:800 !important; line-height:1 !important; transform:translateY(2px) !important; }

/* v2.6: use the official Facebook brand glyph rather than a typed letter */
.sll-social.facebook { width:25px !important; height:25px !important; border-radius:5px !important; background:#1877f2 !important; color:#fff !important; }
.sll-social.facebook .sll-facebook-mark { display:block !important; width:12px !important; height:19px !important; fill:#fff !important; }
.sll-social.facebook .sll-facebook-f { display:none !important; }

/* v2.7: render Facebook mark as text to avoid SVG sizing/rendering conflicts */
.sll-social.facebook { width:25px !important; height:25px !important; min-width:25px !important; min-height:25px !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; overflow:hidden !important; background:#1877f2 !important; color:#fff !important; }
.sll-social.facebook::before { content:none !important; }
.sll-social.facebook .sll-facebook-f { display:block !important; position:relative !important; width:auto !important; height:auto !important; margin:0 !important; padding:0 0 0 1px !important; color:#fff !important; font-family:Arial,Helvetica,sans-serif !important; font-size:21px !important; font-weight:900 !important; line-height:25px !important; text-align:center !important; transform:none !important; }
.sll-social.facebook svg { display:none !important; }

/* v2.8: monochrome social icons to match supplied header reference */
.sll-socials { gap:12px !important; margin-left:10px !important; }
.sll-social { width:22px !important; height:24px !important; min-width:22px !important; border-radius:0 !important; background:transparent !important; color:#fff !important; box-shadow:none !important; }
.sll-social svg { width:19px !important; height:19px !important; fill:currentColor !important; }
.sll-social.facebook { background:transparent !important; color:#fff !important; }
.sll-social.facebook .sll-facebook-f { display:none !important; }
.sll-social.snapchat { display:none !important; }
.sll-social.instagram { background:transparent !important; color:#fff !important; }
.sll-social.youtube { background:transparent !important; color:#fff !important; }
.sll-social:hover { transform:translateY(-1px) !important; opacity:.82 !important; }

/* v2.9: high-contrast Facebook and Snapchat marks */
.sll-socials { display:inline-flex !important; align-items:center !important; gap:10px !important; }
.sll-social.facebook, .sll-social.snapchat { display:inline-flex !important; align-items:center !important; justify-content:center !important; width:22px !important; height:24px !important; min-width:22px !important; min-height:24px !important; background:transparent !important; color:#fff !important; border:0 !important; box-shadow:none !important; }
.sll-social.facebook svg, .sll-social.snapchat svg { display:block !important; width:21px !important; height:21px !important; max-width:21px !important; max-height:21px !important; }
.sll-social.facebook svg circle { fill:#fff !important; }
.sll-social.facebook svg path { fill:#080808 !important; }
.sll-social.snapchat svg path { fill:#fff !important; }
.sll-social.facebook .sll-facebook-f { display:none !important; }

/* v3.0: final override - explicit Facebook circle and visible Snapchat ghost */
.sll-nav .sll-socials { display:inline-flex !important; visibility:visible !important; opacity:1 !important; align-items:center !important; gap:10px !important; flex:0 0 auto !important; }
.sll-nav .sll-social.facebook { display:inline-flex !important; visibility:visible !important; opacity:1 !important; align-items:center !important; justify-content:center !important; width:22px !important; min-width:22px !important; height:24px !important; min-height:24px !important; padding:0 !important; margin:0 !important; border:0 !important; border-radius:50% !important; background:#fff !important; color:#080808 !important; overflow:hidden !important; }
.sll-nav .sll-social.facebook svg { display:none !important; }
.sll-nav .sll-social.facebook .sll-facebook-f { display:block !important; visibility:visible !important; opacity:1 !important; color:#080808 !important; font-family:Arial,Helvetica,sans-serif !important; font-size:20px !important; font-weight:900 !important; line-height:24px !important; width:22px !important; height:24px !important; text-align:center !important; padding:0 0 0 1px !important; margin:0 !important; transform:none !important; }
.sll-nav .sll-social.snapchat { display:inline-flex !important; visibility:visible !important; opacity:1 !important; align-items:center !important; justify-content:center !important; width:22px !important; min-width:22px !important; height:24px !important; min-height:24px !important; padding:0 !important; margin:0 !important; border:0 !important; background:transparent !important; color:#fff !important; }
.sll-nav .sll-social.snapchat svg { display:block !important; visibility:visible !important; width:20px !important; height:20px !important; }
.sll-nav .sll-social.youtube, .sll-nav .sll-social.instagram { display:inline-flex !important; visibility:visible !important; opacity:1 !important; background:transparent !important; color:#fff !important; }

/* v3.1: restore a clear, balanced Sports Lab-Lincoln header brand */
.sll-header .sll-brand {
  display:flex !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:max-content !important;
  height:72px !important;
  gap:9px !important;
  align-items:center !important;
  justify-content:flex-start !important;
  overflow:visible !important;
}
.sll-header .sll-brand img {
  display:block !important;
  flex:0 0 62px !important;
  width:62px !important;
  height:62px !important;
  max-width:62px !important;
  max-height:62px !important;
  object-fit:contain !important;
  object-position:center !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  padding:0 !important;
  box-shadow:0 0 8px rgba(220,0,18,.22) !important;
}
.sll-header .sll-brand .sll-wordmark {
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:clamp(15px,1.05vw,18px) !important;
  font-weight:900 !important;
  letter-spacing:.015em !important;
  line-height:1 !important;
  white-space:nowrap !important;
  padding:0 0 5px !important;
  border-bottom:2px solid #ed101b !important;
  text-shadow:0 1px 3px #000 !important;
}
.sll-header .sll-brand .sll-wordmark-dash,
.sll-header .sll-brand .sll-wordmark em { color:#ed101b !important; }
@media(max-width:900px) {
  .sll-header .sll-brand { height:64px !important; gap:7px !important; }
  .sll-header .sll-brand img { flex-basis:56px !important; width:56px !important; height:56px !important; max-width:56px !important; max-height:56px !important; }
  .sll-header .sll-brand .sll-wordmark { font-size:15px !important; }
}
@media(max-width:650px) {
  .sll-header .sll-brand { height:56px !important; }
  .sll-header .sll-brand img { flex-basis:48px !important; width:48px !important; height:48px !important; max-width:48px !important; max-height:48px !important; }
  .sll-header .sll-brand .sll-wordmark { font-size:13px !important; }
}

/* v3.4: cache-busted full facility image, including all parked cars and foreground. */
html body .sll-site main section#home.sll-hero > img.sll-hero-image {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
}


/* v3.5: place the game/skills headline directly on the facility image,
   centered below the main entrance logo in the foreground parking area. */
.sll-hero { position: relative !important; }
.sll-hero .sll-image-title {
  position: absolute !important;
  z-index: 5 !important;
  left: 50% !important;
  bottom: 16px !important;
  transform: translateX(-50%) !important;
  width: calc(100% - 36px) !important;
  max-width: 1050px !important;
  margin: 0 !important;
  padding: 8px 16px !important;
  text-align: center !important;
  color: #fff !important;
  font-size: clamp(18px, 2.4vw, 34px) !important;
  line-height: 1.05 !important;
  font-weight: 1000 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 7px #000, 0 0 14px #000 !important;
  background: rgba(0,0,0,.42) !important;
  border-bottom: 3px solid #ed1c2b !important;
  border-radius: 4px !important;
  pointer-events: none !important;
}
.sll-hero .sll-image-title span { color: #f01924 !important; }
.sll-sports .sll-section-title { display: none !important; }
@media (max-width: 600px) {
  .sll-hero .sll-image-title {
    bottom: 8px !important;
    width: calc(100% - 20px) !important;
    padding: 6px 8px !important;
    font-size: clamp(14px, 4vw, 21px) !important;
  }
}


/* v3.6: anchor the headline to the facility image itself, below the central entrance sign. */
html body .sll-site main section#home.sll-hero {
  position: relative !important;
}
html body .sll-site main section#home.sll-hero > .sll-image-title {
  top: 77% !important;
  bottom: auto !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: min(92%, 1050px) !important;
  max-width: 1050px !important;
  z-index: 10 !important;
  margin: 0 !important;
  text-align: center !important;
  color: #fff !important;
  background: rgba(0,0,0,.58) !important;
  border-bottom: 3px solid #ed1c2b !important;
  padding: 8px 14px !important;
  text-shadow: 0 2px 8px #000, 0 0 14px #000 !important;
  pointer-events: none !important;
}
@media (max-width: 600px) {
  html body .sll-site main section#home.sll-hero > .sll-image-title {
    top: 77% !important;
    width: 94% !important;
    padding: 5px 7px !important;
    font-size: clamp(13px, 3.8vw, 20px) !important;
  }
}


/* v3.7: match the supplied approved homepage reference composition. */
.sll-site { position:relative !important; }
.sll-header {
  position:absolute !important;
  top:0 !important; left:0 !important; right:0 !important;
  z-index:30 !important;
  background:rgba(3,4,6,.90) !important;
  border-bottom:2px solid #ed1c2b !important;
}
html body .sll-site main section#home.sll-hero {
  display:block !important;
  position:relative !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:none !important;
  text-align:center !important;
}
html body .sll-site main section#home.sll-hero:before {
  content:none !important;
  display:none !important;
}
html body .sll-site main section#home.sll-hero > img.sll-hero-image {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
}
html body .sll-site main section#home.sll-hero > .sll-hero-inner {
  position:absolute !important;
  z-index:8 !important;
  left:50% !important;
  bottom:38% !important;
  transform:translateX(-50%) !important;
  width:min(94%,1300px) !important;
  max-width:1300px !important;
  margin:0 !important;
  padding:0 12px !important;
  box-sizing:border-box !important;
  text-align:center !important;
  background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.35)) !important;
}
html body .sll-site main section#home.sll-hero .sll-hero-inner h1 {
  margin:0 0 5px !important;
  font-size:clamp(25px,4.2vw,64px) !important;
  line-height:1 !important;
  white-space:normal !important;
  text-shadow:0 3px 10px #000,0 0 12px #000 !important;
}
html body .sll-site main section#home.sll-hero .sll-tagline {
  margin:5px 0 7px !important;
  font-size:clamp(12px,1.55vw,23px) !important;
  letter-spacing:.25em !important;
  text-shadow:0 2px 7px #000 !important;
}
html body .sll-site main section#home.sll-hero .sll-hero-inner p {
  max-width:1100px !important;
  margin:0 auto 12px !important;
  font-size:clamp(10px,1vw,15px) !important;
  line-height:1.25 !important;
  text-shadow:0 2px 7px #000 !important;
}
html body .sll-site main section#home.sll-hero .sll-actions {
  gap:14px !important;
  justify-content:center !important;
}
html body .sll-site main section#home.sll-hero .sll-btn {
  min-width:0 !important;
  padding:9px 20px !important;
  font-size:clamp(10px,.95vw,15px) !important;
  border-radius:7px !important;
}
.sll-sports { padding-top:16px !important; }
.sll-sports .sll-section-title, .sll-hero .sll-image-title { display:none !important; }

@media (max-width:900px) {
  .sll-header { position:relative !important; }
  html body .sll-site main section#home.sll-hero > .sll-hero-inner {
    position:relative !important;
    left:auto !important; bottom:auto !important;
    transform:none !important;
    width:100% !important;
    padding:18px 14px 22px !important;
    background:#050607 !important;
  }
  html body .sll-site main section#home.sll-hero .sll-hero-inner h1 {
    font-size:clamp(25px,5vw,42px) !important;
  }
  html body .sll-site main section#home.sll-hero .sll-actions { gap:8px !important; }
  html body .sll-site main section#home.sll-hero .sll-btn { padding:10px 12px !important; }
}
@media (max-width:600px) {
  .sll-header { position:relative !important; }
  html body .sll-site main section#home.sll-hero .sll-tagline { letter-spacing:.1em !important; }
  html body .sll-site main section#home.sll-hero .sll-actions { flex-direction:column !important; }
}


/* v3.8: lower the hero wording and buttons slightly within the facility rendering. */
@media (min-width: 901px) {
  html body .sll-site main section#home.sll-hero > .sll-hero-inner {
    bottom: 30% !important;
  }
}


/* v3.9: move the complete hero copy substantially lower to match the supplied reference. */
@media (min-width: 901px) {
  html body .sll-site main section#home.sll-hero > .sll-hero-inner {
    bottom: 11% !important;
  }
}


/* v4.0: final small downward adjustment to hero wording group. */
@media (min-width: 901px) {
  html body .sll-site main section#home.sll-hero > .sll-hero-inner {
    bottom: 6% !important;
  }
}
