/******************************************************************
Site Name: YardGuard Safety Technologies | Marmon Rail Technologies
Stylesheet: Main Stylesheet
******************************************************************/
@import url(../css/bootstrap.min.css);
/******************************************************************
SCSS Variables
******************************************************************/
* {
  --primary: #F2A900;
  --secondary: #231F20;
  --brand-blue: #0032A0;
  --brand-gray: #96989B;
  --off-white: #F5F5F5;
  --shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.25);
}

@font-face {
  font-family: "Lato";
  font-weight: 100;
  font-style: normal;
  src: url("../fonts/Lato/Lato-Thin.ttf");
}

@font-face {
  font-family: "Lato";
  font-weight: 100;
  font-style: italic;
  src: url("../fonts/Lato/Lato-ThinItalic.ttf");
}

@font-face {
  font-family: "Lato";
  font-weight: 300;
  font-style: normal;
  src: url("../fonts/Lato/Lato-Light.ttf");
}

@font-face {
  font-family: "Lato";
  font-weight: 300;
  font-style: italic;
  src: url("../fonts/Lato/Lato-LightItalic.ttf");
}

@font-face {
  font-family: "Lato";
  font-weight: 400;
  font-style: normal;
  src: url("../fonts/Lato/Lato-Regular.ttf");
}

@font-face {
  font-family: "Lato";
  font-weight: 400;
  font-style: italic;
  src: url("../fonts/Lato/Lato-Italic.ttf");
}

@font-face {
  font-family: "Lato";
  font-weight: 700;
  font-style: normal;
  src: url("../fonts/Lato/Lato-Bold.ttf");
}

@font-face {
  font-family: "Lato";
  font-weight: 700;
  font-style: italic;
  src: url("../fonts/Lato/Lato-BoldItalic.ttf");
}

@font-face {
  font-family: "Lato";
  font-weight: 900;
  font-style: normal;
  src: url("../fonts/Lato/Lato-Black.ttf");
}

@font-face {
  font-family: "Lato";
  font-weight: 900;
  font-style: italic;
  src: url("../fonts/Lato/Lato-BlackItalic.ttf");
}


/* CUT FORMS */

/******************************************************************
Base Stylesheet
******************************************************************/
/*****************************************
** Base Styling 
*****************************************/
body {
  font-family: "Lato", Arial, sans-serif;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  background-color: #000;
  -webkit-transition: background-color .24s ease-in-out;
  transition: background-color .24s ease-in-out;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body.ipad-pro {
  background-color: #000;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Lato", Arial, sans-serif;
  font-weight: 700;
  color: #333333;
  line-height: 1.2;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 1.5vw;
}

h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
  white-space: nowrap;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  color: #006499;
  border-bottom: solid 1px transparent;
  -webkit-transition: color .24s ease-in-out, border-color .24s ease-in-out;
  transition: color .24s ease-in-out, border-color .24s ease-in-out;
}

h1 a:hover, h1 a:active, h1 a:focus, h1 a:active:hover, h1 a:active:focus, h2 a:hover, h2 a:active, h2 a:focus, h2 a:active:hover, h2 a:active:focus, h3 a:hover, h3 a:active, h3 a:focus, h3 a:active:hover, h3 a:active:focus, h4 a:hover, h4 a:active, h4 a:focus, h4 a:active:hover, h4 a:active:focus, h5 a:hover, h5 a:active, h5 a:focus, h5 a:active:hover, h5 a:active:focus, h6 a:hover, h6 a:active, h6 a:focus, h6 a:active:hover, h6 a:active:focus {
  text-decoration: none;
  color: #002133;
  border-color: #002133;
}

h1 {
  font-size: 3vw;
}

.ipad-pro h1 {
  font-size: 40px;
}

h1 span, h1 .subtitle {
  display: block;
  font-size: 2vw;
}

.ipad-pro h1 span,
.ipad-pro h1 .subtitle {
  font-size: 28px;
}

h1 span sup, h1 .subtitle sup {
  font-size: 55%;
  top: -.75em;
  margin-left: .2em;
}

h2 {
  font-size: 2vw;
}

.ipad-pro h2 {
  font-size: 28px;
}

h3 {
  font-size: 1.75vw;
}

h4 {
  font-size: 18px;
}

.link {
  cursor: pointer;
}

img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  border: none;
}

p, li {
  font-size: 1.2vw;
  line-height: 1.5;
}

.ipad-pro p,
.ipad-pro li {
  font-size: 20px;
}

p a, li a {
  color: #006499;
  border-bottom: solid 1px transparent;
  -webkit-transition: color .24s ease-in-out, border-color .24s ease-in-out;
  transition: color .24s ease-in-out, border-color .24s ease-in-out;
}

p a:hover, p a:active, p a:focus, p a:active:hover, p a:active:focus, li a:hover, li a:active, li a:focus, li a:active:hover, li a:active:focus {
  color: #002133;
  text-decoration: none;
  border-color: #002133;
}

p {
  margin-bottom: 1.5em;
}

p.larger {
  margin: 0;
}

.centered {
  text-align: center;
}

.pointer {
  cursor: pointer;
}

/*****************************************
** SVG Container + Functionality
*****************************************/
.svg-wrapper {
  width: 100vw;
  height: 100vh;
}

.svg-container {
  display: block;
  position: relative;
  margin: auto;
  max-width: 1920px;
  max-height: 1080px;
  box-shadow: 0 0 12px 0px rgba(0, 0, 0, 0.5);
  overflow: hidden;
}

#video-popup-container {
  position: absolute;
  aspect-ratio: 16 / 9;
  top: 0;
  padding: 3% 5%;
  width: 100%;
  z-index: 99;
  background: #000000b3;
}

#video-popup {
  aspect-ratio: 16 / 9;
  width: 100%;
  box-shadow: var(--shadow);
}

.video-popup {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 89%;
  background: #fff!important;
}

.pdf-popup {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 89%;
  background: #fff!important;
}

.pdf.text-label {
  cursor: pointer;
  color: var(--primary);
  font-weight: bold;
  padding: 1vw;
}

.pdf.text-label i {
  font-size: 2vw;
}

.ipad-pro .svg-container {
  max-width: 2420px;
  max-height: 1600px;
}

/** Loading Screen **/
#cover {
  background: url(../images/loading.svg) no-repeat scroll center center #FFF;
  position: absolute;
  width: 100vw;
  height: 100vh;
  z-index: 100;
}

.overlay {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #fff;
  /* The Fallback */
  background: rgba(255, 255, 255, 0.4);
}

.prev-product,
.next-product {
    position: absolute;
    top: 45%;
    background: #fff;
    line-height: 0;
    border-radius: 500px;
    font-size: 3vw;
    color: var(--primary);
}

.prev-product {
  left: .5%;
}

.next-product {
  right: .5%
}

.brand-banner {
  position: absolute;
  bottom: 0px;
  width: 100%;
  height: 7%;
  z-index: 15;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  justify-content: space-between;
  background-color: var(--brand-blue);
}

#intro-screen .logo {
  max-width: 234px;
  width: 11vw;
  position: absolute;
  margin-left: 4%;
  bottom: 11%;
}

#intro-screen .key-box {
  max-width: 344px;
  width: 17.9vw;
  position: absolute;
  right: 1%;
  top: 1.5%;
  box-shadow: var(--shadow);
}

#intro-screen .key-box .heading-wrap {
  background-color: var(--brand-blue);
  padding: 5% 8%;
  color: white;
  text-transform: uppercase;
  font-weight: 800;
}

#intro-screen .key-box .keys-wrap {
  background-color: var(--off-white);
  padding: 5% 8%;
}

#intro-screen .key-box .keys-wrap img {
  max-height: 28px;
  height: 1.5vw;
  width: auto;
  margin-bottom: 5%;
}

#intro-screen .key-box .keys-wrap img:last-child {
  margin-bottom: 1%;
}

.brand-banner .logo {
  height: 85%;
  padding: .7vw;
  width: 18%;
  margin-left: 1vw;
}

.brand-banner .logo img {
  height: 100%;
}

.screen.active .category-textbox {
  display: none;
}

.brand-banner .category-textbox .railserve {
  display: flex;
  align-items: center;
  gap: 0.25vw;
}

.brand-banner .category-textbox .railserve .railserve-logo{
  width: 126px;
  height: 29px;
 
}

.brand-banner .category-textbox .title {
  margin-bottom: 0;
  padding-left: 5%;
  font-size: 1.25vw;
  text-transform: none;
  color: var(--primary);
  font-weight: 800;
  letter-spacing: 2.4px;
  text-transform: uppercase;
}

.brand-banner .category-textbox .subtitle {
  margin-bottom: 0;
  margin-top: 3px;
  font-size: 1vw;
  font-style: italic;
  text-transform: none;
  color: #FFF;
  font-weight: 400;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}

.brand-banner .category-textbox {
  width: inherit;
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 1.5vw;
}

.brand-banner .category-textbox span.text-label {
  cursor: pointer;
  background-color: var(--primary);
}

.brand-banner .nav-links {
  position: absolute;
  right: 1vw;
  bottom: 0;
}

.brand-banner .nav-links button {
  font-size: 1.05vw;
  color: #fff;
  text-transform: uppercase;
  font-weight: 600;
  background-color: #006499;
  border: 0;
  padding: .4vw 1vw;
  display: block;
}

.menu {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-around;
  /* grid-gap: 4vw; */
  margin-right: 2%;
}

.menu {
  color: #FFF;
  font-size: 1.25vw;
}

#windowToggle {
  margin-right: 40px;
}

#langToggle {
  display: flex;
  align-items: center;
  gap: .5vw;
  text-transform: uppercase;
  font-weight: bold;
  min-width: 7vw;
}

#langToggle span {
  font-size: 1vw;
}

.brand-banner > .menu > span {
  cursor: pointer;
}

#btnFullscreen {}

.brand-banner-bglayer {
  position: absolute;
  background: #ffffff;
  bottom: 0px;
  width: 100%;
  height: 11%;
  z-index: 10;
}

.screen {
  position: absolute;
  top: 0;
  padding-top: 1vw;
  padding-left: 1vw;
  padding-right: 1vw;
  padding-bottom: 1vw;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 0;
  -webkit-transition: .2s opacity ease;
  transition: .2s opacity ease;
}

.screen:not(#intro-screen) {
  background: url(../images/gradient-screen-logo-white.png) no-repeat;
  background-size: contain;
}

.screen .wrapper {
  width: 100%;
  height: 100%;
}

.screen.hide #index-title.title {
  display: block !important;
}

.screen.hide .callout, .screen.hide .box-modal, .screen.hide .title {
  display: none !important;
}

.screen.in-progress .replay-index-btn, .screen.in-progress .toggle-callout {
  pointer-events: none !important;
  background-color: #627b92 !important;
}

.screen.active {
  opacity: 1;
  z-index: 10;
}

.screen.active.suspend {
  opacity: 0;
  z-index: 0;
}

.screen.active .callout {
  display: block;
}

.screen.active .callout.embedded {
  display: inline-block;
  border-bottom: 2px solid #006499;
  color: #006499;
}

.screen .category-textbox p {
  font-size: 1.3vw;
  margin-bottom: 0px;
}

.screen .box-modal {
  width: 75%;
}

.screen .product-feature img {
  opacity: 0;
  -webkit-transition: opacity .3s ease-in;
  transition: opacity .3s ease-in;
}
.video-frame-icon {
  border: 2px solid #0032A0;
  cursor: pointer;
}
.video-frame-icon:hover {
  border: 2px solid #F2A900;
}

.screen .product-feature .text-area {
  opacity: 0;
  -webkit-transition: opacity .3s ease-in;
  transition: opacity .3s ease-in;
}

.screen.active .product-feature img {
  opacity: 1;
  -webkit-transition: opacity .3s ease-in;
  transition: opacity .3s ease-in;
}

.screen.active .product-feature .text-area {
  opacity: 1;
  transition: opacity .3s ease-in;
  scrollbar-color: var(#bdbfc3) transparent;
  flex: 1 1 auto;

  font-size: .9vw !important;
  padding: 1vw 1vw 0vw 1vw;
  margin-top: 1.1vw;
}

.screen.active .product-feature .text-content {
  max-height: 40%;
  overflow-y: scroll;
  margin-bottom: 1rem;
}

.screen.active .product-feature .text-area ul,
.screen.active .product-feature .text-area ol {
  padding-left: 1vw;
}

.box-modal {
  z-index: 10;
  background: #fff;
  /* The Fallback */
  background: rgba(255, 255, 255, 0.8);
  padding: 1.7vw;
}

.box-modal ul {
  margin: 0;
  padding: 0 0 0 2vw;
}

.box-modal ul li {
  margin: 1vw 0;
}

.box-modal .row {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
}

.video-container {
  display: none;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}

.video-container #video-player {
  width: 100%;
  z-index: 0;
}

.ipad-pro .video-container #video-player {
  position: absolute;
  top: 0;
  left: -16.65%;
  height: 100%;
  width: auto;
  z-index: 0;
}

.video-container.play {
  display: block;
}

#replay,
.replay-index {
  position: absolute;
  padding: 1vw;
  z-index: 11;
}

#replay .replay-btn i,
#replay .replay-index-btn i,
.replay-index .replay-btn i,
.replay-index .replay-index-btn i {
  margin-left: 7px;
}

#replay.active,
.replay-index.active {
  display: block;
}

#replay {
  display: none;
  top: 1vw;
  right: 1vw;
}

.replay-index {
  display: block;
  top: 0vw;
  right: 0vw;
}

.replay-index.disable {
  display: none;
}

.toggle-box-modal {
  position: absolute;
  padding: 1vw;
  z-index: 11;
  display: block;
  top: 0vw;
  right: 0vw;
}

.toggle-box-modal .toggle-box-modal-btn i {
  margin-left: 7px;
}

.hide-box-modal .box-modal {
  display: none;
}

.toggle-callout {
  position: absolute;
  top: 10%;
  left: 95%;
  padding: 0.6vw 1vw !important;
}

.toggle-callout.disable {
  display: none;
}

#back {
  display: none;
  position: absolute;
  top: 1vw;
  left: 1vw;
  z-index: 10;
}

#back .back-btn {
  padding: 0.5vw 1vw;
  font-size: 1.5vw;
}

#back.active {
  display: block;
}

.pulse {
  text-indent: -9999px;
  cursor: pointer;
  transition: background-color .24s ease-in-out, color .24s ease-in-out, border-color .24s ease-in-out, transform .24s ease-in-out;
  z-index: 25;
}

.pulse:not(.disabled) {}

.pulse:not(.disabled):hover, .pulse:not(.disabled):active, .pulse:not(.disabled):focus, .pulse:not(.disabled):active:hover, .pulse:not(.disabled):active:focus {
  background-color: transparent;
  color: #fff;
  border-color: #fff;
  transform: scale(115%) translateY(-8%);
}

.pulse.arrow-up:not(.disabled):hover, .pulse.arrow-up:not(.disabled):active, .pulse.arrow-up:not(.disabled):focus, .pulse.arrow-up:not(.disabled):active:hover, .pulse.arrow-up:not(.disabled):active:focus {
  transform: scale(115%) translateY(8%);
}

.pulse.pulse-close {
  background: #006499 url("../images/icon_close.svg") no-repeat center center;
  background-size: 16px;
}

.pulse:hover, .pulse:active, .pulse:focus, .pulse:active:hover, .pulse:active:focus {
  background-color: transparent;
  -webkit-animation: none;
          animation: none;
}

/* WIP CHANGED TO MATCH VSG size */
.pulse.text-label,
.link.text-label {
  text-indent: 0px;
  width: auto !important;
  height: auto !important;
  border-radius: .75vw;
  font-size: .7vw;
  padding: 0.15vw .9vw;
  color: #fff;
  font-weight: bold;
}

.pulse.text-label {
  background: rgba(7, 52, 113, 0.7);
  background: #fff;
  color: #000;
  border: 2px solid var(--primary);
}

.link.text-label {
  background-color: var(--primary);
  font-size: 0.8vw;
  padding: 0.75vw;
  border-radius: 2vw;
  text-transform: uppercase;
  margin-right: 0.5em;
  text-align: center;
}

.pulse.text-label.reversed {
  border: 0.2vw solid #006499;
  color: #006499;
  background-color: transparent;
  padding: .4vw 1.5vw;
}

.pulse.product-button:hover, .pulse.product-button:active, .pulse.product-button:focus, .pulse.product-button:active:hover, .pulse.product-button:active:focus {
  background-color: #006499;
  text-decoration: none;
}

.pulse:not(.text-label) {
  max-width: 62px;
  width: 3.25vw;
  border-radius: 0px;
}

@-webkit-keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.4);
  }
  70% {
    box-shadow: 0 0 0 20px rgba(255, 255, 255, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.4);
  }
  70% {
    box-shadow: 0 0 0 20px rgba(255, 255, 255, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}

.pulse-ring-container {
  position: absolute;
  width: 5vw;
  height: 5vw;

  &.skewed {
    transform-style: preserve-3d;
    transform: skew(89deg, 82deg) scale(.04) !important;
  }
}

.pulse-ring:before,
.pulse-ring:after,
.pulse-ring span {
  content: '';
  width: 5vw;
  height: 5vw;
  border: 3px solid var(--primary);
  border-radius: 50%;
  position: absolute;
  animation: pulsering infinite 3s;
}

.pulse-ring span {
  animation-delay: 1s;
}

.pulse-ring:after {
  animation-delay: 2s;
}

@keyframes pulsering {
  0% {
    transform: scale(1);
    opacity: 0;
  }
  50% {
    opacity: .8;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}

@-moz-keyframes pulsering {
  0% {
    -moz-transform: scale(1);
    opacity: 0;
  }
  50% {
    opacity: .8;
  }
  100% {
    -moz-transform: scale(2);
    opacity: 0;
  }
}

@-webkit-keyframes pulsering {
  0% {
    -webkit-transform: scale(1);
    opacity: 0;
  }
  50% {
    opacity: .8;
  }
  100% {
    -webkit-transform: scale(2);
    opacity: 0;
  }
}

.solid {
  content: '';
  border-radius: 50%;
  position: absolute;
  box-shadow: 0 0 20px 13px rgb(255 0 0);
}

.flash {
  content: '';
  border-radius: 50%;
  position: absolute;
  box-shadow: 0 0 20px 13px rgb(255 0 0);
  animation: flash infinite 2s;
}

.solid.sm, .flash.sm {
  width: 0.3vw;
  height: 0.3vw;
}

.flash.lg {
  width: 1.45vw;
  height: 1.6vw;
  background: rgb(255 0 0);
}

.flash.delay-1 {
  animation-delay: 1s;
}

@keyframes flash {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  51% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

@-webkit-keyframes flash {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  51% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

/*****************************************
** SVG Styling + Touchpoints/Modals
*****************************************/
svg {
  max-width: 1920px;
  max-height: 1080px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom;
  -webkit-transition: background-image 0.2s ease-in-out;
  transition: background-image 0.2s ease-in-out;
}

svg.contained {
  height: 100%;
}

svg.intro {
  background-image: url("../images/intro-map-2026.jpg");
}

svg.modal-crossing {
  background-image: url("../images/bg-crossingguard-2026.jpg");
}
svg.modal-foul {
  background-image: url("../images/bg-foulguard-2026-02.jpg");
}
svg.modal-gap {
  background-image: url("../images/bg-gapguard-2026.jpg");
}
svg.modal-light {
  background-image: url("../images/bg-derailguard-2026.jpg");
}
svg.modal-stop {
  background-image: url("../images/bg-stopguard-2026.jpg");
}
svg.modal-watch {
  background-image: url("../images/bg-watchguard-2026.jpg");
}

.callout {
  display: none;
  cursor: pointer;
  opacity: 1;
  transition: opacity .5s ease-in 3s, background-color .24s ease-in-out, color .24s ease-in-out, border-color .24s ease-in-out, transform .24s ease-in-out;
}

.callout.hide {
  opacity: 0;
  -webkit-transition: opacity .5s ease-in;
  transition: opacity .5s ease-in;
}

.callout img {
  margin: auto;
}

#intro-callout {
  position: absolute;
  top: calc(50% - 2vw);
  left: calc(50% - 4.25vw);
  padding: 1vw 1.5vw 1vw 1.75vw;
  font-size: 2vw;
}

#index-screen #index-title {
  max-width: 36%;
}

.back-ag-products,
.back-hf-products,
.back-bg-products {
  position: absolute;
  top: 0%;
  left: 18%;
}

.back-hf-sump, .back-hf-pipingandsump {
  position: absolute;
  top: 0%;
  left: 16%;
}

.back-bg-insidesump {
  position: absolute;
  top: 0%;
  left: 19%;
}

.hide-bg {
  position: absolute;
  top: 0;
  right: 0;
}

.hide-bg .fa-check-square {
  display: initial;
}

.hide-bg .fa-square {
  display: none;
}

.toggle-show.screen.active .wrapper {
  display: none;
}

.toggle-show .hide-bg .fa-square {
  display: initial;
  opacity: .6;
}

.toggle-show .hide-bg .fa-check-square {
  display: none;
}

.row.products {
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  height: 90%;
  margin: 0vw 1vw;
}

.row.products .product {
  display: inline-block;
  background-color: rgba(0, 42, 116, .9);
  border-radius: .75vw;
  box-shadow: 0 0 4px 1px rgba(0, 0, 0, 0.2);
  color: #fff;
  text-align: center;
  padding: 1vw;
  font-weight: bold;
}

.row.products img {
  width: 100%;
}

.disabled {
  cursor: default;
}

.disabled.pulse.text-label {
  background: #004366 !important;
}

.row.product-feature {
  -webkit-box-pack: center;
  justify-content: center;
  position: relative;
  top: 2%;
  left: 2%;
  height: 88%;
  width: 30%;
  margin: 0;
  background: rgba(245, 245, 245, .95);
  box-shadow: var(--shadow);
  overflow: hidden;
}

.row.product-feature [class^=col-] {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
  padding: 1.5vw;
  height: 100%;
  
}

.row.product-feature .col-12 h1,
.row.product-feature .col-12 h2 {
  font-size: clamp(1rem, 1.7vw, 2rem);
  margin-bottom: 1.2vh;
  text-transform: none;
}
.row.product-feature .col-12 p {
  margin-bottom: 1em;
}

.row.product-feature .col-12 h1 {
  color: #333;
  margin-bottom: .25em;
}

.row.product-feature .col-12 p,
.row.product-feature .col-12 li {
  color: #333;
  font-size: clamp(.6rem, .9vw, 1rem);
}

.row.product-feature .col-12 li {
  margin-bottom: .5vw;
}

.row.product-feature .col-12 li:last-child {
  margin-bottom: 1vw;
}

.back-bar {
  background-color: var(--primary);
  color: #fff;
  width: calc(100% + 3vw);
  margin: -1.5vw -1.5vw 0.75vw;
  height: 3.5vw;
  font-size: 0.9vw;
  line-height: 3.5vw;
  font-weight: bold;
  text-transform: uppercase;
  display: flex;
  align-items: center;
}

.heading {
  margin: -1vw -1.5vw;
  padding: .75vw 2.15vw;
  background: var(--brand-blue);
}

.heading img {
  width: auto !important;
}

.text-area .btn {
  background: var(--primary);
  color: #000;
  font-weight: 700;
  text-transform: uppercase;
  font-size: .8vw;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.25);
  padding: .5vw 1.75vw;
  display: table;
  margin: 1.5vw auto;
}

.home-button {
  cursor: pointer;
  height: 100%;
  width: 100%;
  padding-left: 4.5vw;
  background-image: url('../images/icon-back-arrow.png');
  background-repeat: no-repeat;
  background-position: 1.5vw center;
  background-size: auto 60%;
  font-weight: 700;
  color: var(--secondary);
}
.home-button:hover,.home-button:focus {
  text-decoration: underline;
}

.product-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 1vw;
}

.product-footer-right img {
  height: 2.5vw;
  width: auto !important;
}
.product-footer-left {
  height: 100%;
  display: flex;
  align-items: center;
}
.product-footer-right {
  height: 100%;
  display: flex;
  align-items: center;
}


.close-toggle-btn {
  background: var(--primary);
  padding: .25vw;
  border-radius: 50%;
  position: absolute;
  margin-top: -.75%;
  margin-left: -1%;
  z-index: 9;
  cursor: pointer;
}

@media only screen and (min-width: 1920px) {
  .close-toggle-btn {
    top: 75px;
    right: 200px;
    font-size: 70px;
  }
}

.close-toggle-btn i {
  position: absolute;
  top: -2vw;
  right: -6.5vw;
  background: #fff;
  border-radius: 100px;
}

.row.product-feature .text-area {}

.row.product-feature .text-area h1 {
  font-size: 2.5vw;
  text-transform: none;
  margin-bottom: 1vw;
}

.row.product-feature .text-area h2 {
  text-transform: none;
}

.row.product-feature img {
  width: 100%;
}


@media only screen and (min-width: 576px) {
  /******************************************************************
Mobile Landscape Stylesheet
******************************************************************/
}

@media only screen and (min-width: 768px) {
  /******************************************************************
Tablet Stylesheet
******************************************************************/
}

@media only screen and (min-width: 992px) {
  /******************************************************************
Bootstrap Medium Stylesheet
******************************************************************/
}

@media only screen and (min-width: 1200px) {
  /******************************************************************
Bootstrap Large Stylesheet
******************************************************************/
}

@media only screen and (min-width: 1575px) {
  /******************************************************************
Bootstrap Large Stylesheet
******************************************************************/
}

@media only screen and (min-width: 1920px) {
  /******************************************************************
Bootstrap Large Stylesheet
******************************************************************/
  h1 {
    font-size: 60px;
  }
  p, li {
    font-size: 20px;
  }
  .pulse.text-label {
    font-size: 14px;
    padding: 3px 16px;
  }
  .brand-banner .category-textbox .title {
    font-size: 24px;
  }
  .brand-banner .category-textbox .subtitle {
    font-size: 16px;
  }
  .row.product-feature .text-area p, .row.product-feature .text-area li {
    font-size: 20px;
  }
  .back-bar {
    height: 70px;
    font-size: 16px;
    line-height: 70px;
    width: calc(100% + 60px);
    margin: -30px -30px 20px;
  }
  .product-footer {
    padding-top: 25px;
  }
  .link.text-label {
    font-size: 16px;
    padding: 14px 28px;
    border-radius: 40px;
  }

  .row.product-feature [class^=col-] {
    padding: 30px;
  }

  .home-button {
    padding-left: 85px;
    background-position: 28px center;
  }

  .heading {
    margin: -20px -30px;
    padding: 16px 40px;

    img {
      max-height: 70px;
    }
  }

} 


/* SWIPER **************************************************** */
.swiper {
  width: 100%;
}

.swiper-slide {
  text-align: center;
  font-size: 18px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.swiper-slide img {
  display: block;
  width: 100%;
}

.swiper {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.swiper-slide {
  background-size: cover;
  background-position: center;
}

.swiper-main {
  width: 100%;
}

.swiper-thumbs {
  height: 20%;
  box-sizing: border-box;
  padding: 10px 0;
}

.swiper-thumbs .swiper-slide {
  width: 25%;
  opacity: 0.4;
}

.swiper-thumbs .swiper-slide-thumb-active {
  opacity: 1;
}

.swiper-slide img {
  display: block;
  width: 100%;
}