@import url(https://db.onlinewebfonts.com/c/e8f932e5757ac3896b9fc0251be3a0c0?family=Blooms+Headline+Regular);

@font-face {
  font-family: 'Proxima Nova Rg';
  src: url('../fonts/ProximaNova-Regular.woff2') format('woff2'),
    url('../fonts/ProximaNova-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}



* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

body {
  font-family: "Proxima Nova Rg", Arial !important;
  font-size: 16px;
  margin: 0;
  padding: 0;
  background-color: #fff;
  color: #000;
}

h1,
h2,
h3 {
  font-family: "Blooms Headline Regular";
}

img {
  max-width: 100%;
  height: auto;
}

ul {
  list-style: none;
}

a {
  text-decoration: none;
}

.wrap {
  max-width: 1200px;
  width: 100%;
  /* padding: 0 20px; */
  /* padding: 0 ; */
  padding: 0 15px;
  margin: 0 auto;
}

.text-center {
  text-align: center;
}

.fw-bold {
  font-weight: bold;
}

.hide-desk {
  display: none !important;
}

/*Header*/
.header {
  background-color: #151211;
  padding: 10px 0;
  position: relative;
}

#mobMenu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  background-color: #fff;
  padding: 20px;
}

#mobMenu a {
  color: #000;
  display: block;
  text-transform: uppercase;
}

#mobMenu a:not(:last-child) {
  margin-bottom: 20px;
}

.header-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.header-inner .href-logo {
  margin: auto;
}

.header-inner a {
  color: #fff;
  font-size: 20px;
  text-transform: uppercase;
  font-family: "Blooms Headline Regular";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  column-gap: 10px;
  line-height: 1;
}

.header-logo {
  display: block;
  margin: 0 auto;
}

/*Topnav*/
.topnav {
  background-color: #333;
  padding: 10px 0;
}

.topnav nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.topnav nav a {
  color: #fff;
  font-size: 1rem;
  text-transform: uppercase;
}

/*Hero section*/
.hero-section {
  /* background-image: url('../images/bannermain.jpg'); */
  /* min-height: 411px; */
  background-color: #FD5C02;
  min-height: 370px;
  width: 100%;
  background-size: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.hero-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  /*height: 411px;*/
}

.hero-section h1,
.hero-section p {
  text-transform: uppercase;
}

.hero-section h1 {
  color: #fff;
  /* font-size: 54px; */
 font-size: clamp(20px, 4vw, 54px);
  margin-bottom: 10px;
}

.hero-section p {
  color: #333;
  /* font-size: 35px; */
  font-size: clamp(11px, 3.2vw, 35px);
  margin-bottom: 20px;
}

.hero-section ul li {
  font-family: "Blooms Headline Regular";
  /* font-size: 25px; */
  font-size: clamp(12px, 1.2vw, 25px);
  color: #fff;
  text-transform: uppercase;
}

.hero-section ul li:not(:last-child) {
  margin-bottom: 25px;
}

.hero-section .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  /* align-items: flex-end; */
  /* padding-bottom: 40px; */
  gap: 1rem;
}

.hero-section .col-md-6 {
  width: 50%;
}

.hero-section .start-here {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-left: 10px;
}

.hero-section .start-here img {
  margin-left: auto;
}

.hero-section .start-here input {
  min-width: 175px;
  max-width: 370px;
  width: 100%;
  border: 5px solid #000;
  color: #000;
  font-weight: bold;
  font-size: 31px;
  height: 60px;
  padding: 2px 10px;
  text-transform: uppercase;
  margin-bottom: 10px;
  text-align: center;
}

.hero-section .start-here input::-webkit-input-placeholder {
  color: #000;
}

.hero-section .start-here input::-moz-placeholder {
  color: #000;
}

.hero-section .start-here input:-ms-input-placeholder {
  color: #000;
}

.hero-section .start-here input::-ms-input-placeholder {
  color: #000;
}

.hero-section .start-here input::placeholder {
  color: #000;
}

/*Product specs*/
.product-specs {
  padding: 50px 0 0 0;
}

.product-specs .intro p {
  margin-bottom: 50px;
}

.product-specs .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.product-specs ul {
  margin-top: 30px;
}

.product-specs ul li:not(:last-child) {
  margin-bottom: 20px;
}

/*FAQ*/
.faq {
  /* padding: 0px 50px 50px 50px; */
}

.faq h2 {
  font-family: 'Proxima Nova Rg';
  font-size: 24px;
  color: #333;
  margin-bottom: 20px;
  margin-top: -10px !important;
}

.faq p {
  margin-bottom: 20px !important;
}

.faq p a {
  color: #333;
  text-decoration: underline;
}

/*Reviews*/
.reviews {
  /* background-color: #f2f2f5; */
  padding: 50px 0;
}

.reviews-box {
  font-family: Arial, Helvetica, sans-serif;
  color: rgb(111, 110, 110);
  background: #ffffff;
  line-height: 1.7;
  border: 1px solid #e3e3e3;
  padding: 15px 30px 25px 30px;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  margin-bottom: 30px;
}

.reviews-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 15px;
  color: #2f3334;
  padding: 15px 30px 10px 30px;
}

.reviews-name {
  font-weight: 700;
}

.reviews-date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  padding-top: 20px;
  margin: 10px 0 20px;
  border-top: 1px solid #ccc;
}

#showMoreDiv {
  display: none;
}

#showMoreBtn {
  display: inline-block;
  cursor: pointer;
}

/*Bike icons*/
.bike-icons {
  padding: 30px 0;
}

.bike-icons img {
  width: 100%;
}

/*Bike types*/
.bike-types {
  background-color: #f2f2f5;
  padding: 30px 0;
}

.bike-types img {
  display: block;
  margin: 0 auto;
}

/*how-to, about-us, contact, css*/
.site-content-contain h1 {
  color: #000 !important;
  font-weight: 800;
  margin-top: 30px;
  font-size: 60px;
}

.fittingul {
  margin-left: 30px;
  list-style: circle !important;
  margin-bottom: 10px;
}

.fittingul li {
  margin-bottom: 5px;
}

.site-content-contain {
  margin-bottom: 30px;
}

.site-content-contain h2 {
  font-weight: 100;
}
.site-content-contain .p-ul-list {
  margin-left: 10px;
}
.site-content-contain #company-info > div {
  margin-bottom: 5px !important;
}

.site-content-contain h2,
p {
  margin-bottom: 20px;
}

.site-content-contain .maincontent {
  margin-top: 15px;
}

.site-content-contain .maincontent a {
  color: black;
}

.site-content-contain .maincontent a:hover {
  color: blue;
  text-decoration: underline;
}

/*how-to, about-us, contact, css*/

/*Footer*/
.footer {
  background-color: #151211;
  padding: 70px 0 20px;
}

.footer-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.footer-links {
  width: 220px;
}

.footer-links p,
.footer-links li a {
  color: #fff;
}

.footer-links p {
  font-size: 18px;
  margin-bottom: 15px;
}

.footer-links li {
  margin-bottom: 7px;
}

#maincontent #builder-menu #builder-menu-internal #builder-reg .entries {
  border: 5px solid #FD5C02 !important;
}

#pbregletter1::placeholder {
  color: #FD5C02 !important; /* Change to your desired color */
  opacity: 1 !important;  /* Optional: make sure it's fully visible */
}

.nameplate-main-container #builder-actions {
  background-color: white !important;
}

.nameplate-main-container #maincontent {
  background-color: white !important;
}


.banner-ul li {
  position: relative;
  padding-left: 1.5em;
  /* space for asterisk */
}

.banner-ul li::before {
  content: "*";
  position: absolute;
  left: 0;
  color: white;
  /* or any color you want */
  font-weight: bold;
  font-size: 30px;
}

.banner-img{
  margin-bottom: -15px;
}

.basket-icon{
  color: white;
}

.hero-section ul li {
      font-size: clamp(12px, 3vw, 25px) !important;
}





/*PRODUCT SPECS*/
.product-specs {
    padding: 60px 20px;
    background: #f8f9fb;
}

.product-specs .wrap {
    max-width: 1200px;
    margin: 0 auto;
}

.product-specs .intro {
    text-align: center;
    max-width: 750px;
    margin: 0 auto 40px auto;
}

.product-specs .intro p {
    font-size: 18px;
    line-height: 1.6;
    color: #555;
}

/* Layout Row */
.product-specs .row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    flex-wrap: wrap;
}

/* Specs List Card */
.product-specs .list {
    /* flex: 1 1 500px; */
    background: #ffffff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.product-specs .list .fw-bold {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 15px;
}

.product-specs .list ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.product-specs .list ul li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 12px;
    color: #444;
    line-height: 1.5;
}

/* Custom bullet */
.product-specs .list ul li::before {
    content: "✔";
    position: absolute;
    left: 0;
    top: 0;
    color: #2e7d32;
    font-size: 16px;
}

/* Image Styling */
.product-specs .row img {
    flex: 1 1 400px;
    max-width: 100%;
    border-radius: 12px;
    object-fit: cover;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

/* Responsive */
@media (max-width: 768px) {
    .product-specs {
        padding: 40px 15px;
    }

    .product-specs .row {
        flex-direction: column;
        text-align: center;
    }

    .product-specs .list {
        padding: 20px;
    }
}



/*FAQ*/

/* FAQ Section */
.faq {
    padding: 60px 20px;
    background: #ffffff;
}

.faq .wrap {
    max-width: 900px;
    margin: 0 auto;
}

.faq h2 {
    text-align: center;
    margin-bottom: 40px;
    font-size: 32px;
}

/* FAQ List */
.faq ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.faq ul li {
    background: #f8f9fb;
    border-radius: 12px;
    margin-bottom: 15px;
    padding: 20px 25px;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    box-shadow: 0 5px 15px rgba(0,0,0,0.04);
}

/* Hover effect */
.faq ul li:hover {
    background: #f1f3f7;
}

/* Question */
.faq ul li .fw-bold {
    margin: 0;
    font-weight: 600;
    font-size: 16px;
    padding-right: 30px;
}

/* Arrow Icon */
.faq ul li::after {
    content: "+";
    position: absolute;
    right: 20px;
    top: 22px;
    font-size: 20px;
    font-weight: bold;
    transition: transform 0.3s ease;
}

/* Answer (hidden by default) */
.faq ul li p:not(.fw-bold) {
    max-height: 0;
    overflow: hidden;
    margin: 0;
    color: #555;
    transition: max-height 0.4s ease, margin-top 0.3s ease;
}

/* Active State */
.faq ul li.active {
    background: #ffffff;
}

.faq ul li.active::after {
    content: "−";
}

.faq ul li.active p:not(.fw-bold) {
    max-height: 500px;
    margin-top: 15px;
}




/*REVIEWS*/
/* Reviews Section */
.reviews-section {
    padding: 60px 20px;
    background: #f8f9fb;
}

.reviews-section .container {
    max-width: 1200px;
    margin: 0 auto;
}

/* Header */
.reviews-header {
    text-align: center;
    margin-bottom: 30px;
}

.reviews-section .section-title {
    margin: 0 0 10px 0;
    font-size: 32px;
}

.reviews-section .underline {
    width: 70px;
    height: 4px;
    margin: 0 auto;
    background: #111;
    border-radius: 99px;
    opacity: 0.12;
}

/* Slick spacing */
.reviews-slider {
    margin-top: 25px;
}

.reviews-slider .slick-slide {
    padding: 12px; /* space between cards */
    box-sizing: border-box;
}

/* Card */
.reviews-card {
    background: #fff;
    border-radius: 14px;
    padding: 22px 22px 18px 22px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
    border: 1px solid rgba(0,0,0,0.06);
    min-height: 170px;
}

/* Name + rating row */
.reviews-head-name-rate {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.reviews-head-name-rate p {
    margin: 0;
    font-size: 16px;
    color: #222;
}

/* Rating pill */
.reviews-rate-score {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(46, 125, 50, 0.10);
    border: 1px solid rgba(46, 125, 50, 0.25);
    white-space: nowrap;
}

.reviews-rate-score span {
    font-weight: 700;
    font-size: 13px;
    color: #2e7d32;
}

/* Review text */
.reviews-card > p {
    margin: 0;
    color: #444;
    line-height: 1.6;
    font-size: 15px;
}

/* Date */
.reviews-date {
    margin-top: 14px;
}

.reviews-date time {
    display: inline-block;
    font-size: 13px;
    color: #777;
}

/* Nav buttons wrapper */
.next-prev-wrapper {
    display: flex;
    justify-content: center;
    gap: 14px;
    margin-top: 18px;
}

/* Slick buttons */
.next-prev-wrapper .slick-prev,
.next-prev-wrapper .slick-next {
    width: 44px;
    height: 44px;
    border-radius: 999px;
    border: 1px solid rgba(0,0,0,0.10);
    background: #fff;
    box-shadow: 0 8px 20px rgba(0,0,0,0.06);
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    padding: 0;
}

.next-prev-wrapper .slick-prev:hover,
.next-prev-wrapper .slick-next:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 26px rgba(0,0,0,0.10);
}

.next-prev-wrapper .slick-prev:active,
.next-prev-wrapper .slick-next:active {
    transform: translateY(0px);
}

/* Make arrow images consistent */
.next-prev-wrapper button img {
    display: block;
    width: 18px;
    height: 18px;
}

/* Disabled slick state */
.next-prev-wrapper .slick-disabled {
    opacity: 0.45;
    cursor: not-allowed;
    box-shadow: none;
}

/* Mobile tweaks */
@media (max-width: 768px) {
    .reviews-section {
        padding: 45px 15px;
    }

    .reviews-section .section-title {
        font-size: 26px;
    }

    .reviews-card {
        padding: 18px;
        border-radius: 12px;
    }
}

a:visited{
  color:white !important;
}

.skip-link {
  position: absolute;
  left: 0.75rem;
  top: 0.75rem;
  padding: 0.75rem 1rem;
  transform: translateY(-200%);
  z-index: 10000;
}

.skip-link:focus {
  transform: translateY(0);
}


#breadcrumb {
  background: white;
  padding: 20px clamp(10px, 5vw, 50px);
  font-size: 16px;
  font-family: inherit;
}

#breadcrumb a {
  color: #003940 !important;
  text-decoration: none;
  font-weight: 600;
}

#breadcrumb a:hover {
  text-decoration: underline;
}

#breadcrumb span {
  color: #555;
}

#breadcrumb .separator {
  margin: 0 8px;
  color: #999;
}

@media (max-width: 768px) {

    .hero-section ul li {
    /* font-size: 15px !important; */
  }

  /* .hero-section p {
    font-size: 15px !important;
  } */


  .header .header-inner .basket-icon{
    display: none;
  }

  .contact-icon{
    display: none !important;
  }

  .header .header-inner .basket-icon-mobile{
    display: block !important;
  }
  .hide-desk {
    display: block !important;
  }

  /* .mob-li-banner {
    margin-left: 170px !important;
  } */

  .hero-inner {
    display: block !important;
  }

  .hide-mob {
    display: none !important;
  }

  .header-inner {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  .header-logo {
    width: 250px;
    margin: 0;
  }

  .hero-section {
    min-height: 150px;
  }

  .hero-section h1 {
    /* font-size: 30px; */
    /* max-width: 300px; */
  }

  /* .hero-section p {
    font-size: 19px;
  } */

  /* .hero-section .row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  } */

  .hero-section .start-here input {
    min-width: 120px;
    height: 40px;
    font-size: 16px;
    border-width: 2px;
  }

  .hero-section ul li {
    /* font-size: 16x; */
    line-height: 1;
  }

  .hero-section ul li:not(:last-child) {
    margin-bottom: 10px;
  }

  .product-specs .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }

  .product-specs img {
    display: block;
    margin: 20px auto 0;
  }

  .footer-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }

  .footer-links {
    margin-top: 20px;
  }

  .site-content-contain h1 {
    font-size: 30px !important;
  }

  .site-content-contain h2 {
    font-size: 18px;
  }

  .header-inner .href-logo {
    margin: 0 !important;
  }

  .builder .wrap {
    padding: 0 !important;
  }

  .hero-section {
    align-items: none !important;
  }


  .banner-ul li::before {
    font-size: 20px;
  }
}





 @media (max-width: 768px) {
    .product-specs{
    padding: 0 !important;
  }
}





 @media (max-width: 400px) {

    /* .hero-section .row {
    padding-bottom: 20px !important;
  } */
}

@media only screen and (min-width: 400px) and (max-width: 768px){
  .hero-section .row {
    padding-bottom: 1px !important;
  }
}







 @media (min-width: 1024px) {
  .hero-section .mobile-banner{
    display: none;
   }
}







 @media (max-width: 1024px) {
  .hero-section .desktop-banner{
    display:none !important;
   }
   .hero-section .mobile-banner{
    display:block !important;
   }
  
   .banner-ul{
    margin-left: unset !important;
   }

}


/* @media (max-width: 314px) {
  .hero-section ul li {
    font-size: 10px !important;
  }

  .hero-section p {
    font-size: 10px !important;
  }
} */


.banner-img picture img{
  height: 100% !important;
}
