:root{
  --spx-green:#2ca946;
  --spx-green-light:#7ed321;
  --spx-yellow:#f8e71c;
  --spx-dark:#222222;
  --spx-dark-2:#2b2b2b;
  --spx-dark-3:#111111;
  --spx-white:#ffffff;
  --spx-max:1140px;
}

.spx-header,
.spx-header *,
.spx-footer,
.spx-footer *{
  box-sizing:border-box;
}

.spx-header,
.spx-footer{
  font-family:"Poppins",sans-serif;
}

.spx-container{
  width:100%;
  max-width:var(--spx-max);
  margin:0 auto;
  padding:0 20px;
}

/* HEADER */
.spx-header{
  position:relative;
  z-index:9999;
}

.spx-topbar{
  background:var(--spx-dark);
  padding:22px 0 18px;
  line-height:0;
}

.spx-logo{
  display:inline-block;
  text-decoration:none;
}

.spx-logo img{
  display:block;
  max-height:54px;
  width:auto;
}

.spx-strip{
  height:0px;
  background:var(--spx-green);
}

.spx-navbar{
  background:var(--spx-green);
  position:relative;
}

.spx-navwrap{
  position:relative;
  height:52px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
}

.spx-nav{
  display:block;
}

.spx-menu{
  list-style:none;
  display:flex;
  align-items:center;
  margin:0;
  padding:0;
  height:52px;
}

.spx-item{
  position:static;
  margin:0;
  padding:0;
  height:52px;
}

.spx-item > a{
  display:flex;
  align-items:center;
  height:52px;
  padding:0 18px;
  font-size:16px;
  font-weight:700;
  color:var(--spx-white);
  text-decoration:none;
  white-space:nowrap;
}

.spx-item > a:hover{
  background:rgba(255,255,255,0.10);
  color:var(--spx-white);
}

.spx-mega{
  display:none;
  position:absolute;
  left:0;
  top:100%;
  width:100%;
  min-height:350px;
  background:var(--spx-dark-2);
  padding:28px 32px;
  box-shadow:0 18px 34px rgba(0,0,0,0.22);
}

.spx-has-mega:hover > .spx-mega{
  display:block;
}

.spx-mega-columns{
  display:flex;
  align-items:flex-start;
  gap:28px;
}

.spx-mega-text{
  flex:0 0 420px;
  max-width:420px;
  min-width:420px;
  text-align:left;
}

.spx-mega-links{
  flex:0 0 220px;
  width:220px;
  min-width:220px;
}

.spx-mega-text h4,
.spx-mega-links h4{
  margin:0 0 14px 0;
  font-size:22px;
  line-height:1.2;
  font-weight:700;
  background:linear-gradient(to right,var(--spx-green-light),var(--spx-yellow));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  color:transparent;
}

.spx-mega-text p{
  margin:0 0 10px 0;
  color:var(--spx-white);
  line-height:1.6;
  font-size:16px;
}

.spx-mega-links a,
.spx-mega-links span{
  display:block;
  width:220px;
  margin:0 0 10px 0;
  color:var(--spx-white);
  text-decoration:none;
  line-height:1.45;
  font-size:16px;
}

.spx-mega-links a:hover{
  text-decoration:underline;
}

.spx-mega-links-empty span,
.spx-mega-placeholder{
  visibility:hidden;
  pointer-events:none;
  user-select:none;
}

.spx-toggle{
  display:none;
  width:44px;
  height:44px;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
  margin:0 14px 0 0;
  flex:0 0 44px;
}

.spx-toggle span{
  display:block;
  width:24px;
  height:3px;
  margin:4px auto;
  background:var(--spx-white);
}

.spx-mobile-overlay{
  display:none;
}

.spx-mobile-drawer{
  display:none;
}

/* FOOTER */
.spx-footer {
  background: #222222;
  color: #ffffff;
  padding: 48px 0 28px;
  font-family: "Poppins", sans-serif;
  border-top: 3px solid #99C336;
}

.spx-footer-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 36px;
}

.spx-footer-col h5 {
  margin: 0 0 14px 0;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.2;
  color: #9ad122;
  text-transform: uppercase;
}

.spx-footer-col a {
  display: block;
  color: #ffffff;
  text-decoration: none;
  line-height: 1.55;
  margin-bottom: 2px;
  transition: color 0.2s ease;
}

.spx-footer-col a:hover {
  color: #9ad122;
  text-decoration: none;
}

.spx-footer-line {
  margin: 34px 0 24px;
  height: 1px;
  background: rgba(255,255,255,0.5);
}

.spx-footer-bottom {
  display: grid;
  grid-template-columns: auto auto 1fr;
  align-items: center;
  gap: 20px;
}

.spx-footer-socials {
  display: flex;
  align-items: center;
  gap: 10px;
}

.spx-footer-socials a {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: rgba(255,255,255,0.08);
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease;
}

.spx-footer-socials a:hover {
  background: #9ad122;
  color: #222222;
}

.spx-footer-socials svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}

.spx-footer-logo {
  display: inline-block;
  text-decoration: none;
  line-height: 0;
}

.spx-footer-logo img {
  display: block;
  max-height: 54px;
  width: auto;
}

.spx-footer-copy {
  margin: 0;
  text-align: right;
  font-size: 14px;
  line-height: 1.5;
  color: #ffffff;
}

/* MOBILE */
@media (max-width: 991px){
  .spx-strip{
    height:0px;
  }

  .spx-nav{
    display:none;
  }

  .spx-toggle{
    display:block;
  }

  .spx-mega{
    display:none !important;
  }

  .spx-mobile-overlay{
    display:block;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,0.7);
    opacity:0;
    visibility:hidden;
    transition:opacity .25s ease, visibility .25s ease;
    z-index:10000;
  }

  .spx-mobile-overlay.is-open{
    opacity:1;
    visibility:visible;
  }

  .spx-mobile-drawer{
    display:block;
    position:fixed;
    top:0;
    left:0;
    width:min(320px,86vw);
    height:100vh;
    background:var(--spx-dark-3);
    transform:translateX(-100%);
    transition:transform .25s ease;
    z-index:10001;
    box-shadow:8px 0 30px rgba(0,0,0,0.35);
    overflow-y:auto;
  }

  .spx-mobile-drawer.is-open{
    transform:translateX(0);
  }

  .spx-mobile-header{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    min-height:56px;
    padding:0 14px;
    border-bottom:1px solid rgba(255,255,255,0.08);
  }

  .spx-mobile-close{
    border:0;
    background:transparent;
    color:var(--spx-white);
    font-size:34px;
    line-height:1;
    cursor:pointer;
    padding:0;
  }

  .spx-mobile-links{
    padding:8px 0 20px;
  }

  .spx-mobile-group{
    border-bottom:1px solid rgba(255,255,255,0.08);
  }

  .spx-mobile-parent{
    width:100%;
    text-align:left;
    border:0;
    background:transparent;
    color:var(--spx-white);
    padding:14px 20px;
    font-weight:700;
    font-size:16px;
    line-height:1.3;
    cursor:pointer;
    position:relative;
  }

  .spx-mobile-parent::after{
    content:'+';
    position:absolute;
    right:20px;
    top:50%;
    transform:translateY(-50%);
    font-size:22px;
    line-height:1;
  }

  .spx-mobile-group.is-open .spx-mobile-parent::after{
    content:'−';
  }

  .spx-mobile-submenu{
    display:none;
    padding:0 0 10px;
  }

  .spx-mobile-group.is-open .spx-mobile-submenu{
    display:block;
  }

  .spx-mobile-submenu a,
  .spx-mobile-group-single a{
    display:block;
    color:var(--spx-white);
    text-decoration:none;
    padding:12px 20px 12px 34px;
    font-weight:500;
    line-height:1.3;
    white-space:normal;
  }

  .spx-mobile-group-single a{
    padding-left:20px;
    font-weight:700;
  }

  .spx-mobile-submenu a:hover,
  .spx-mobile-group-single a:hover{
    background:rgba(255,255,255,0.06);
  }

  body.spx-mobile-open{
    overflow:hidden;
  }

  .spx-footer {
    padding: 38px 0 24px;
  }

  .spx-footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 24px;
  }

  .spx-footer-bottom {
    grid-template-columns: 1fr;
    justify-items: start;
  }

  .spx-footer-copy {
    text-align: left;
  }
}

@media (max-width: 575px){
  .spx-footer-grid {
    grid-template-columns: 1fr;
  }

  .spx-mega-text{
    flex-basis:auto;
    min-width:0;
    max-width:none;
  }

  .spx-mega-links{
    width:100%;
    min-width:0;
  }
}