:root {
  --grey: #EAEAEA;
  --red: #DB0008;
}

.grey-bg {background: var(--grey);}

.brinly {font-family: "Plus Jakarta Sans", sans-serif;}
.brinly .button {box-sizing: border-box; border: 1px solid #D9D9D9; font-size: 16px; font-weight: 700; text-transform: uppercase; color: #fff; background: var(--red); display: inline-block; padding: 15px 35px; transition: 0.3s;}
.brinly .button.light {background: var(--grey); color: var(--red);}
.brinly .button.grey {background: #D3D3D3; color: var(--red);}
.brinly .button.light:hover, .brinly .button.grey:hover {background: var(--red); color: #fff;}

.brinly h3 {font-size: 40px; color: var(--red); font-weight: 700; margin-bottom: 50px;}
.brinly p {font-size: 22px; line-height: 1.3;}

.why-choose h3 {color: #000;}

.banner {position: relative; display: grid; grid-template-columns: 1fr 2fr; align-items: center; grid-gap: 75px;}
.banner article {margin-left: 7.5vw;}
.banner article h1 {font-size: 56px; line-height: 60px; font-weight: 800; margin-bottom: 2vw; color: #8E8E8E; text-transform: uppercase;}
.banner article img {width: 400px; display: block; margin-bottom: 2vw;}
.banner figure {width: 100%; height: auto;}
.banner figure img {width: 100%; height: 100%; object-fit: cover;}
.banner .tags {position: absolute; left: 50%; transform: translateX(-50%); bottom: 3vw; display: flex; align-items: center; color: #fff; font-size: 24px; font-weight: 700; gap: 30px;}
.banner .tags img {width: 190px; display: inline-block;}

.banner .mobile {display: none;}
.banner .desktop {display: block;}

.center {text-align: center;}

.content {margin: 100px 0;}
.content.padding {margin: 0; padding: 100px 0;}

.grid {display: grid; grid-template-columns: 1fr 1fr; grid-gap: 30px;}
.grid-4 {display: grid; grid-template-columns: repeat(4,1fr); grid-gap: 15px;}
.grid-5 {display: grid; grid-template-columns: repeat(5,1fr); grid-gap: 15px;}

.wrapper {width: 85%; max-width: 85%; margin: 0 auto;}
.wrapper-sml {width: 85%; max-width: 1200px;}

.intro {box-shadow: 0 -20px 30px -20px #0005; margin: 0 0 50px; padding: 50px 0 0;}
.intro .grid-3 {grid-gap: 45px;}
.intro .grid-3 figure {width: 100%;}
.intro .grid-3 figure img {width: 100%; height: 100%; object-fit: cover;}
.intro p {margin: 50px auto 100px; max-width: 1180px;}
.intro .button {display: none;}

.why-choose .grid-4 {margin: 50px auto 100px;}
.why-choose .grid-4 {grid-gap: 60px;}

.featured-products .grid-5 {margin: 100px auto;}
.featured-products h3, #product-container h1 {color: var(--red);}

.product-tile {background: #fff; border-radius: 14px; padding: 0 0 20px; overflow: hidden; display: block; box-sizing: border-box; text-align: left;}
.product-tile figure {position: relative; height: 0; padding-bottom: 100%;}
.product-tile figure img {position: absolute; width: 100%; height: 100%; object-fit: cover;}
.product-tile .title {font-size: 26px; font-weight: 700; margin: 20px 25px; line-height: 1;}
.product-tile span {position: relative; font-size: 16px; font-weight: 700; color: #A8A8A8; padding-right: 25px; margin: 0px 25px;}
.product-tile span::after {content: ''; display: block; position: absolute; top: 50%; transform: translateY(-50%); right: 0; height: 12px; width: 16px; background: #A8A8A8; mask-repeat: no-repeat; mask-size:contain; mask-position: center; mask-image: url('/images/brands/brinly/arrow.svg');}

.info-tile {text-align: left;}
.info-tile img {width: 160px; height: 160px; margin-bottom: 20px; display: block;}
.info-tile h4 {text-transform: uppercase; font-size: 20px; font-weight: 700; margin-bottom: 15px; color: var(--red);}
.info-tile p {font-size: 18px; font-weight: 400;}

.made-in-usa {display: grid; grid-template-columns: 1.1fr 2fr;}
.made-in-usa .content {position: relative; box-shadow: inset 0 18px 28px -18px #0005; display: flex;}
.made-in-usa .content article {width: 80%; margin: auto;}
.made-in-usa .content article h3 {color: #8E8E8E; text-transform: uppercase; font-size: 40px; margin-bottom: 30px;}
.made-in-usa .content article p {max-width: 450px; margin-bottom: 50px;}
.made-in-usa .content article img {width: 275px; display: block; margin-bottom: 50px;}
.made-in-usa .content > img {position: absolute; width: 200px; height: 200px; top: 50%; transform: translateY(-50%); right: -100px;}

.gradient-bg {padding-top: 100px; background: linear-gradient(180deg,rgba(234, 234, 234, 1) 0%, rgba(255, 255, 255, 1) 100%);}
.gradient-bg .content:first-child {margin-top: 0;}

.testimonials p {max-width: 1180px; margin: 0 auto 20px;}
.testimonials p:last-child {margin: 0 auto;}
.testimonials .button {margin-top: 50px;}

.custom-prev, .custom-next {display: block; position: absolute; top: 50%; transform: translateY(-50%); left: 5%; height: 120px; width: 60px; background: #CCCCCC; mask-repeat: no-repeat; mask-size:contain; mask-position: center; mask-image: url('/images/brands/brinly/arrow-large.svg');}
.custom-next {transform: translateY(-50%) rotate(180deg); left: auto; right: 5%;}

.product-details h1 {max-width: 85%;}
.product-details h2 {color: var(--red); font-size: 18px; text-transform: uppercase;}
.product-details h3 {font-weight: 400; color: #000; font-size: 40px; margin-bottom: 30px;}
.product-details h3 small {font-size: 22px;}
.product-details .button-row .button:last-child {background: #818181; color: #fff;}
.product-details ul li::before {background: var(--red);}

.product-details .description {margin: 50px 0;}

.product-images .custom-next::after, .product-images .custom-prev::after  {background: #454545;}

.product-banner ~ .testimonials h3 {color: #000;}

.button-controls .button.light-grey.active:hover, .button-controls .button.light-grey:hover {background: var(--red)}

.product-images .custom-next:hover, .product-images .custom-prev:hover {background: var(--red);}

.tab-section.downloads article a::before {background: var(--red);}

@media screen and (max-width: 1750px) {

  .banner article img {width: 250px;}
  .banner article h1 {font-size: 40px; line-height: 45px;}

  .brinly h3 {font-size: 35px;}

  .brinly p, .info-tile h4 {font-size: 18px;}

  .intro p {max-width: 900px;}

  .featured-products .grid-5 {margin: 50px auto;}

  .product-tile .title {font-size: 20px; margin-bottom: 5px;}
  .product-tile span {font-size: 12px; padding-right: 20px;}
  .product-tile span::after {height: 10px; width: 14px;}

  .info-tile img {width: 140px; height: 140px;}
  .info-tile p {font-size: 16px;}

  .award-winning .grid img {width: 250px;}

  .custom-prev, .custom-next {width: 40px; height: 100px;}

  .made-in-usa .content > img {width: 150px; height: 150px; right: -75px;}
  .made-in-usa .content article img {width: 225px; margin-bottom: 30px;}
  .made-in-usa .content article h3 {font-size: 35px; margin-bottom: 20px;}
  .made-in-usa .content article p { max-width: 350px; margin-bottom: 30px;}

  .testimonials p {max-width: 1000px;}

}

@media screen and (max-width: 1400px) {

  .wrapper-sml {max-width: 1000px;}

  header .menu ul li a, header .menu ul li span {font-size: 14px;}

  .banner article h1 {font-size: 35px; line-height: 40px; margin-bottom: 30px;}
  .banner .tags {gap: 15px;}
  .banner .tags img {width: 150px;}

  .intro .grid-3 {grid-gap: 30px;}
  .intro p, .why-choose .grid-4 {margin: 30px auto 50px;}

  .content {margin: 60px 0;}
  .content.padding {padding: 60px 0;}

  .brinly .button {font-size: 14px;}

  .why-choose .grid-4 {grid-gap: 30px;}

  .brinly p, .info-tile h4, .made-in-usa .content article p { font-size: 16px; }

  .brinly h3 {font-size: 30px; margin-bottom: 30px;}

  .product-tile .title {font-size: 18px;}
  .product-tile span::after {height: 8px; width: 12px;}

  .info-tile img { width: 120px; height: 120px; margin-bottom: 10px; }

  .award-winning .grid p { max-width: 335px; }

  .testimonials p {max-width: 900px;}

  .custom-prev, .custom-next { width: 30px; height: 70px; }

  .made-in-usa .content article img {width: 200px; margin-bottom: 20px;}
  .made-in-usa .content article h3 {font-size: 30px;}
  .made-in-usa .content article p {max-width: 330px;}

  .made-in-usa figure {height: 100%;}
  .made-in-usa figure img {height: 100%; width: 100%; object-fit: cover;}

  .gradient-bg {padding-top: 60px;}

}

@media screen and (max-width: 1250px) {

  header .menu ul li a, header .menu ul li span {font-size: 13px;}

  .find-dealer, .dealer-login { padding: 12px 15px 12px 35px; font-size: 11px; }
  .find-dealer::before, .dealer-login::before {width: 15px; height: 15px; left: 10px;}

  .made-in-usa .content > img { width: 124px; height: 124px; right: -67px; }
  .made-in-usa .content article img {width: 175px;}
  .made-in-usa .content article h3 {font-size: 25px;}

  .made-in-usa {grid-template-columns: 1fr 1.5fr;}

  .testimonials p {max-width: 700px;}

  .product-tile .title {margin: 15px 15px 5px;}
  .product-tile span {margin: 0 15px;}

  .product-tile {border-radius: 10px; padding-bottom: 15px;}

  .banner {grid-gap: 40px;}
  .banner article {margin-left: 5vw;}

  .product-images .swiper figure {padding-bottom: 85%;}
  .product-details .logo-wrapper img { max-width: 150px; }

  .product-details h2 {font-size: 18px; margin-bottom: 10px;}
  .product-details h1 {font-size: 35px; margin-bottom: 20px;}

}

@media screen and (max-width: 1100px) {

  .banner article img { width: 175px; }
  .banner article h1 {font-size: 30px; line-height: 35px;}

  .banner .tags img { width: 125px;}
  .brinly p, .info-tile h4, .made-in-usa .content article p { font-size: 14px; }

  .made-in-usa .content article p {max-width: 290px;}

  .intro p {max-width: 650px;}

  .content {margin: 50px 0;}
  .content.padding {padding: 50px 0;}

  .intro .grid-3 { grid-gap: 15px; }

  .intro p, .why-choose .grid-4 {margin: 15px auto 30px;}

  .brinly h3 {font-size: 25px;}

  .brinly .button { font-size: 12px;}

  .product-tile .title { font-size: 16px; margin-bottom: 0;}

  .info-tile img { width: 100px; height: 100px; margin-bottom: 0px; }

  .award-winning .grid img { width: 200px; }

  .testimonials p { max-width: 700px; }

  .testimonials .button {margin-top: 30px;}

  .custom-prev, .custom-next { width: 20px; height: 60px; }

  footer .footer-grid {grid-gap: 30px; grid-template-columns: 1fr auto;}
  footer .footer-right {gap: 50px; justify-content: space-between;}


}

@media screen and (max-width: 900px) {

  .banner {grid-gap: 0; grid-template-columns: 1fr 1.5fr;}
  .banner article {padding: 60px 0;}
  .banner figure {height: 100%;}

  .testimonials p {max-width: 500px;}

  .made-in-usa { grid-template-columns: 1fr 1fr; }

  footer .footer-grid {grid-template-columns: 1fr;}

  .product-details .description p {font-size: 15px;}

  .product-details h2 {font-size: 28px; margin-bottom: 30px;}
  .product-details h3 {font-size: 28px;}
  .product-details h3 small {font-size: 15px;}

}

@media screen and (max-width: 767px) {

    .find-dealer, .dealer-login {font-size: 15px;}

  .banner {grid-template-columns: 1fr;}
  .banner .mobile {display: block; width: 100%;}
  .banner .desktop {display: none;}

  .brinly h3 {font-size: 30px;}
  .brinly p {font-size: 16px;}
  .brinly .button {font-size: 16px;}
  h3 span {display: none;}

  .content {margin: 30px 0;}
  .content.padding {padding: 30px 0;}

  .banner {margin-top: 0px;}
  .banner article {width: 90%; text-align: center; margin: 0 auto; padding: 40px 0 0; position: relative;}
  .banner article img {max-width: 260px; width: 85%; margin: 0 auto 30px;}
  .banner article h1 {font-size: 20px; line-height: 25px; max-width: 210px; margin: 0 auto 30px;}
  .banner article .button {display: none;}
  .banner .tags {bottom: 30px; left: 30px; display: block; transform: none;}
  .banner .tags img {width: 142px; margin-bottom: 20px;}
  .banner .tags p {font-size: 15px;}

  .intro {text-align: left; margin: 0 auto; width: 100%; display: grid; align-items: flex-start; padding-top: 30px;}
  .intro .grid-3 {grid-template-columns: 1fr; width: 100%; max-width: 100%; order: 2; margin: 30px 0 0; grid-gap: 10px;}
  .intro .button {display: inline-block; margin: 15px auto 0; width: fit-content;}
  .intro p {max-width: 90%; margin: 0 auto 15px; font-weight: 600;}

  .featured-products .grid-5, .why-choose .grid-4 {grid-template-columns: 1fr;}

  .featured-products .button {margin: 0px 0 30px;}

  .product-tile {padding: 0 0 20px; border-radius: 14px;}
  .product-tile .title {margin: 25px 25px 5px; font-size: 26px;}
  .product-tile span {margin: 0 25px; font-size: 16px;}
  .product-tile span::after {width: 14px; height: 12px;}

  .why-choose {margin: 50px 0;}
  .why-choose h3 {color: #000;}
  .why-choose .grid-4 {grid-gap: 30px;}
  .why-choose .button {margin: 10px auto 0}

  .info-tile {text-align: center;}
  .info-tile img {margin: 0 auto 10px; width: 133px; height: 133px;}
  .info-tile h4 {font-size: 20px;}
  .info-tile p {max-width: 250px; margin: 0 auto; font-size: 18px;}

  .made-in-usa {display: none;}

  .testimonials {margin: 0; padding: 0 0 60px; color: #000; background: #EAEAEA;}
  .testimonials h3 {color: #000; max-width: 235px; margin: 0 auto 20px;}
  .testimonials p {max-width: 95%;}
  .testimonials p:last-child {font-weight: 700;}
  .testimonials .button {display: none;}
  .testimonials + .content {margin-top: 0;}

  .custom-prev, .custom-next {display: none;}

  .product-details h2 {font-size: 28px; margin-bottom: 20px;}
  .product-details h3 {font-size: 28px;}
  .product-details h3 small {font-size: 15px;}

  .info-box:last-child {background: #959595;}
  .info-box:last-child figure img {mix-blend-mode: multiply;}

  .specs-list li {grid-template-columns: 1fr 1fr;}
  .tab-section li p {padding: 10px 15px; font-size: 14px;}

}
