@charset "UTF-8";footer,header,main,nav,section {display:block;}
[hidden] {display:none;}
html {font-size:100%;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;}
html {font-family:sans-serif;}
body {margin:0;}
a:focus {outline:0;}
a:active,a:hover {outline:0;}
h1 {font-size:2em;margin:.67em 0;}
h2 {font-size:1.5em;margin:.83em 0;}
h3 {font-size:1.17em;margin:1em 0;}
h4 {font-size:1em;margin:1.33em 0;}
h5 {font-size:.83em;margin:1.67em 0;}
h6 {font-size:.67em;margin:2.33em 0;}}
menu,ul {margin:1em 0;}
menu,ul {padding:0 0 0 40px;}
nav ul {list-style:none;list-style-image:none;}
img {border:0;-ms-interpolation-mode:bicubic;}
img {max-width:100%;height:auto;}

@media only screen and (min-width: 700px) {
  
  .whatsapp {
    display: none;
  }
 
}
html {-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-smoothing:antialiased;font-weight:400;}
h1,h2,h3,h4,h5,h6 {margin:1.5em 0 .25em;font-weight:400;}
.h1,.h2,h1,h2 {margin:0;font-weight:300;}
h1 {font-size:36px;line-height:1.2;}

@media only screen and (min-width: 550px) {
  .fontsize--massive {
    font-size: 65px;
  }
}
@media only screen and (min-width: 700px) {
  .fontsize--massive {
    font-size: 82px;
  }
}
@media only screen and (min-width: 1000px) {
  .fontsize--massive {
    font-size: 90px;
  }
}
@media only screen and (min-width: 1200px) {
  .fontsize--massive {
    font-size: 105px;
  }
}
@media only screen and (min-width: 1400px) {
  .fontsize--massive {
    font-size: 115px;
  }
}
@media only screen and (min-width: 1600px) {
  .fontsize--massive {
    font-size: 120px;
  }
}

.fontsize--huge,
h1 {
  font-size: 36px;
  line-height: 1.2;
}
@media only screen and (min-width: 550px) {
  .fontsize--huge,
h1 {
    font-size: 40px;
  }
}
@media only screen and (min-width: 700px) {
  .fontsize--huge,
h1 {
    font-size: 52px;
  }
}
@media only screen and (min-width: 1000px) {
  .fontsize--huge,
h1 {
    font-size: 56px;
  }
}
@media only screen and (min-width: 1200px) {
  .fontsize--huge,
h1 {
    font-size: 60px;
  }
}
@media only screen and (min-width: 1400px) {
  .fontsize--huge,
h1 {
    font-size: 64px;
  }
}
@media only screen and (min-width: 1600px) {
  .fontsize--huge,
h1 {
    font-size: 66px;
  }
}

.fontsize--large,
h2 {
  font-size: 26px;
  line-height: 1.3;
}
@media only screen and (min-width: 550px) {
  .fontsize--large,
h2 {
    font-size: 30px;
  }
}
@media only screen and (min-width: 700px) {
  .fontsize--large,
h2 {
    font-size: 34px;
  }
}
@media only screen and (min-width: 1000px) {
  .fontsize--large,
h2 {
    font-size: 40px;
  }
}
@media only screen and (min-width: 1200px) {
  .fontsize--large,
h2 {
    font-size: 45px;
  }
}
@media only screen and (min-width: 1400px) {
  .fontsize--large,
h2 {
    font-size: 47px;
  }
}
@media only screen and (min-width: 1600px) {
  .fontsize--large,
h2 {
    font-size: 50px;
  }
}

.fontsize--med,
h3 {
  font-size: 20px;
  line-height: 1.4;
}
@media only screen and (min-width: 550px) {
  .fontsize--med,
h3 {
    font-size: 24px;
  }
}
@media only screen and (min-width: 700px) {
  .fontsize--med,
h3 {
    font-size: 26px;
  }
}
@media only screen and (min-width: 1000px) {
  .fontsize--med,
h3 {
    font-size: 26px;
  }
}
@media only screen and (min-width: 1200px) {
  .fontsize--med,
h3 {
    font-size: 28px;
  }
}
@media only screen and (min-width: 1400px) {
  .fontsize--med,
h3 {
    font-size: 28px;
  }
}
@media only screen and (min-width: 1600px) {
  .fontsize--med,
h3 {
    font-size: 32px;
  }
}

.fontsize--reg,
body,
h4 {
  font-size: 14px;
  line-height: 1.5;
}
@media only screen and (min-width: 550px) {
  .fontsize--reg,
body,
h4 {
    font-size: 15px;
  }
}
@media only screen and (min-width: 700px) {
  .fontsize--reg,
body,
h4 {
    font-size: 15px;
  }
}
@media only screen and (min-width: 1000px) {
  .fontsize--reg,
body,
h4 {
    font-size: 16px;
  }
}
@media only screen and (min-width: 1200px) {
  .fontsize--reg,
body,
h4 {
    font-size: 16px;
  }
}
@media only screen and (min-width: 1400px) {
  .fontsize--reg,
body,
h4 {
    font-size: 17px;
  }
}
@media only screen and (min-width: 1600px) {
  .fontsize--reg,
body,
h4 {
    font-size: 18px;
  }
}

.fontsize--sml,
h5 {
  font-size: 12px;
  line-height: 1.5;
}
@media only screen and (min-width: 550px) {
  .fontsize--sml,
h5 {
    font-size: 13px;
  }
}
@media only screen and (min-width: 700px) {
  .fontsize--sml,
h5 {
    font-size: 14px;
  }
}
@media only screen and (min-width: 1000px) {
  .fontsize--sml,
h5 {
    font-size: 14px;
  }
}
@media only screen and (min-width: 1200px) {
  .fontsize--sml,
h5 {
    font-size: 15px;
  }
}
@media only screen and (min-width: 1400px) {
  .fontsize--sml,
h5 {
    font-size: 15px;
  }
}
@media only screen and (min-width: 1600px) {
  .fontsize--sml,
h5 {
    font-size: 16px;
  }
}
.fontsize--sml.font--rosario,
h5.font--rosario {
  font-size: 10px;
}
@media only screen and (min-width: 550px) {
  .fontsize--sml.font--rosario,
h5.font--rosario {
    font-size: 10px;
  }
}
@media only screen and (min-width: 700px) {
  .fontsize--sml.font--rosario,
h5.font--rosario {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1000px) {
  .fontsize--sml.font--rosario,
h5.font--rosario {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1200px) {
  .fontsize--sml.font--rosario,
h5.font--rosario {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1400px) {
  .fontsize--sml.font--rosario,
h5.font--rosario {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1600px) {
  .fontsize--sml.font--rosario,
h5.font--rosario {
    font-size: 12px;
  }
}

h5 {
  font-family: "rosario", Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 1.75px;
  font-size: 10px;
}
@media only screen and (min-width: 550px) {
  h5 {
    font-size: 10px;
  }
}
@media only screen and (min-width: 700px) {
  h5 {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1000px) {
  h5 {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1200px) {
  h5 {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1400px) {
  h5 {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1600px) {
  h5 {
    font-size: 12px;
  }
}

.fontsize--tiny,
h6 {
  font-size: 11px;
  line-height: 1.5;
}
@media only screen and (min-width: 550px) {
  .fontsize--tiny,
h6 {
    font-size: 11px;
  }
}
@media only screen and (min-width: 700px) {
  .fontsize--tiny,
h6 {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1000px) {
  .fontsize--tiny,
h6 {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1200px) {
  .fontsize--tiny,
h6 {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1400px) {
  .fontsize--tiny,
h6 {
    font-size: 13px;
  }
}
@media only screen and (min-width: 1600px) {
  .fontsize--tiny,
h6 {
    font-size: 14px;
  }
}
.fontsize--tiny.font--rosario,
h6.font--rosario {
  font-size: 9px;
}
@media only screen and (min-width: 550px) {
  .fontsize--tiny.font--rosario,
h6.font--rosario {
    font-size: 9px;
  }
}
@media only screen and (min-width: 700px) {
  .fontsize--tiny.font--rosario,
h6.font--rosario {
    font-size: 10px;
  }
}
@media only screen and (min-width: 1000px) {
  .fontsize--tiny.font--rosario,
h6.font--rosario {
    font-size: 10px;
  }
}
@media only screen and (min-width: 1200px) {
  .fontsize--tiny.font--rosario,
h6.font--rosario {
    font-size: 10px;
  }
}
@media only screen and (min-width: 1400px) {
  .fontsize--tiny.font--rosario,
h6.font--rosario {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1600px) {
  .fontsize--tiny.font--rosario,
h6.font--rosario {
    font-size: 11px;
  }
}

.font--bold,
b,
strong {
  font-weight: 700;
}

.font--semibold {
  font-weight: 700;
}

.font--reg {
  font-weight: 400;
}

.font--light {
  font-weight: 300;
}

.font--italic {
  font-style: italic;
}

.font--rosario {
  font-family: "rosario", Helvetica, Arial, sans-serif;
  letter-spacing: 1.75px;
}

.font--body {
  font-family: "open-sans", Helvetica, Arial, sans-serif;
  letter-spacing: normal;
}

.opacity--3 {
  opacity: 0.33;
}

.opacity--5 {
  opacity: 0.5;
}

.opacity--6 {
  opacity: 0.66;
}

.case--lower {
  text-transform: lowercase;
}

.case--capitals {
  text-transform: capitalize;
}

.case--upper {
  text-transform: uppercase;
}

.text-align--center {
  text-align: center;
}

.text-align--left {
  text-align: left;
}

.text-align--right {
  text-align: right;
}

.color--primary {
  color: #080808;
}

.color--white {
  color: #fff;
}

.color--green {
  color: #047a1e;display: none;
}
.success-msg {
  display: block;
}
.color--grey {
  color: rgba(45, 21, 48, 0.05);
}

.color--secondary {
  color: #f34f47;
}

ol,
ul {
  margin: 0 0 1em;
  padding: 0;
}

p {
  margin: 0 0 1em;
}

.font--outline {
  -webkit-text-fill-color: transparent;
  /* Will override color (regardless of order) */
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #080808;
}
.font--outline.color--white, .color--white .font--outline {
  -webkit-text-stroke-color: #ccc;
}
.font--outline.color--secondary, .color--secondary .font--outline {
  -webkit-text-stroke-color: #F8795D;
}

.linethrough {
  position: relative;
  margin: 0;
  display: block;
}
.linethrough:after {
  content: "";
  width: 100%;
  border-top: 1px solid rgba(248, 121, 93, 0.15);
  position: absolute;
  left: 0;
  top: 50%;
}
.linethrough .linethrough__heading {
  position: relative;
  z-index: 2;
  background: #fff;
  padding-right: 1em;
}
.linethrough--btn {
  width: 100%;
}
.linethrough--btn .btn {
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.linethrough--btn .btn--outline {
  background-image: linear-gradient(to right, #F8795D 50%, #fff 50%);
}



/*  ==========================================================================
    links -- links-buttons.scss
    ========================================================================== */
a {
  color: inherit;
  text-decoration: none;
}
a:hover {
  color: inherit;
}
a .fa,
a .fab,
a .fal,
a .far,
a .fas {
  padding: 0 0 0 0.66em;
}
a .fa--left,
a .fab--left,
a .fal--left,
a .far--left,
a .fas--left {
  padding: 0 0.66em 0 0;
}
a .fa--nopad,
a .fab--nopad,
a .fal--nopad,
a .far--nopad,
a .fas--nopad {
  padding: 0;
}

.linkline {
  background-image: linear-gradient(90deg, #f8795d 0%, #f8795d 50%, rgba(248, 121, 93, 0.3) 50%, rgba(248, 121, 93, 0.3) 100%);
  background-size: 200% 0.65em;
  background-position: 100% bottom;
  background-repeat: no-repeat;
  -webkit-transition: background-position 250ms ease-out 0ms;
  -moz-transition: background-position 250ms ease-out 0ms;
  transition: background-position 250ms ease-out 0ms;
}
a:hover .linkline {
  background-position: 0 bottom;
}
.hiddenlinkline .linkline {
  background-image: linear-gradient(90deg, rgba(248, 121, 93, 0.3) 0%, rgba(248, 121, 93, 0.3) 50%, rgba(248, 121, 93, 0) 50%, rgba(248, 121, 93, 0) 100%);
}

.btn,
.cli-plugin-button {
/*  background-image: linear-gradient(to right, #F6603E 50%, #F8795D 50%);*/
  background-size: 210% 100%;
  background-position: right bottom;
  -webkit-transition: padding 250ms ease-out, color 250ms ease-out 0ms, background-position 250ms ease-out 0ms;
  -moz-transition: padding 250ms ease-out, color 250ms ease-out 0ms, background-position 250ms ease-out 0ms;
  transition: padding 250ms ease-out, color 250ms ease-out 0ms, background-position 250ms ease-out 0ms;
  color: #fff;
  display: inline-block;
  margin: 0 0.5em 0.5em 0;
  padding: 1em 3em;
  border-radius: 3em;
 /* border: none;*/
  font-family: "rosario", Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 1.75px;
  cursor: pointer;
  font-size: 10px;
  border: 2px solid;
}
@media only screen and (min-width: 550px) {
  .btn,
.cli-plugin-button {
    font-size: 10px;
  }
}
@media only screen and (min-width: 700px) {
  .btn,
.cli-plugin-button {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1000px) {
  .btn,
.cli-plugin-button {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1200px) {
  .btn,
.cli-plugin-button {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1400px) {
  .btn,
.cli-plugin-button {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1600px) {
  .btn,
.cli-plugin-button {
    font-size: 12px;
  }
}
.btn .linkline,
.cli-plugin-button .linkline {
  background-image: none;
}
.btn:before,
.cli-plugin-button:before {
  content: "";
  font-family: "Font Awesome 5 Pro";
  font-weight: 200;
  margin-left: -2em;
  position: absolute;
  opacity: 0;
  -webkit-transition: opacity 250ms ease-out 0ms;
  -moz-transition: opacity 250ms ease-out 0ms;
  transition: opacity 250ms ease-out 0ms;
}
.btn:hover,
.cli-plugin-button:hover {
  background-position: left bottom;
  color: #fff;
  padding: 1em 2em 1em 4em;
}
.btn:hover:before,
.cli-plugin-button:hover:before {
  opacity: 1;
  -webkit-transition: opacity 250ms ease-out 150ms;
  -moz-transition: opacity 250ms ease-out 150ms;
  transition: opacity 250ms ease-out 150ms;
}
.btn--disabled,
.cli-plugin-button--disabled {
  opacity: 0.5;
  pointer-events: none;
}
.btn--large,
.cli-plugin-button--large {
  padding: 1em 3.5em;
}
/*.btn--large:hover,
.cli-plugin-button--large:hover {
  padding: 1.5em 2.5em 1.5em 4.5em;
}*/
.btn--fullwidth,
.cli-plugin-button--fullwidth {
  margin: 0;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
  -webkit-transition: padding 750ms ease-out, color 500ms ease-out 0ms, background-position 750ms ease-out 0ms;
  -moz-transition: padding 750ms ease-out, color 500ms ease-out 0ms, background-position 750ms ease-out 0ms;
  transition: padding 750ms ease-out, color 500ms ease-out 0ms, background-position 750ms ease-out 0ms;
}
.btn--noicon,
.cli-plugin-button--noicon {
  padding: 1em 2em;
}
.btn--noicon:before,
.cli-plugin-button--noicon:before {
  display: none;
}
.btn--noicon:hover,
.cli-plugin-button--noicon:hover {
  padding: 1em 2em;
}
.btn--nohover,
.cli-plugin-button--nohover {
  pointer-events: none;
}
.btn--back:before,
.cli-plugin-button--back:before {
  content: "";
}
.btn--down:before,
.cli-plugin-button--down:before {
  content: "";
}
.btn--up:before,
.cli-plugin-button--up:before {
  content: "";
}
.btn--close:before,
.cli-plugin-button--close:before {
  content: "";
}
.btn--tick:before,
.cli-plugin-button--tick:before {
  content: "";
}
.btn--count,
.cli-plugin-button--count {
  position: relative;
  padding: 1.25em 6em 1.25em 4em;
}
.btn--count:before,
.cli-plugin-button--count:before {
  display: none;
}
.btn--count:hover,
.cli-plugin-button--count:hover {
  padding: 1.25em 6em 1.25em 4em;
}
.btn--count .btn__count,
.cli-plugin-button--count .btn__count {
  position: absolute;
  top: 0.5em;
  right: 0.5em;
  background: #fff;
  padding: 0.75em;
  border-radius: 4em;
  margin: 0 0 0 2.5em;
  color: #F8795D;
  font-weight: 700;
  display: inline-block;
  text-align: center;
  min-width: 1.75em;
  height: 1.75em;
  line-height: 1.5em;
}
.btn--white,
.cli-plugin-button--white {
  background-image: linear-gradient(to right, #F8795D 50%, #fff 50%);
}
.btn--white.btn--opaque,
.cli-plugin-button--white.btn--opaque {
  color: #ccc;
  background-image: linear-gradient(to right, #f8795d 50%, rgba(255, 255, 255, 0.1) 50%);
}
.btn--opaque,
.cli-plugin-button--opaque {
  color: #080808;
  background-image: linear-gradient(to right, #f6603e 50%, rgba(248, 121, 93, 0.1) 50%);
}
.btn--opaque:hover,
.cli-plugin-button--opaque:hover {
  color: #ccc;
}
.btn--outline,
.cli-plugin-button--outline {
  color: #080808;
  border: 1px solid #F8795D;
  background-image: linear-gradient(to right, #F8795D 50%, rgba(248, 121, 93, 0.001) 50%);
  box-sizing: border-box;
}
.btn--outline:hover,
.cli-plugin-button--outline:hover {
  color: #ccc;
}
.btn--grey,
.cli-plugin-button--grey {
  background-image: linear-gradient(to right, #080808 50%, rgba(45, 21, 48, 0.05) 50%);
  color: #080808;
}
.btn--grey:hover,
.cli-plugin-button--grey:hover {
  color: #ccc;
}
.btn--white,
.cli-plugin-button--white {
  background-image: linear-gradient(to right, #F8795D 50%, #fff 50%);
  color: #080808;
}
.btn--white:hover {color: #fff;}

/*  ==========================================================================
    tags -- links-buttons.scss
    ========================================================================== */
.tag {
  background-color: rgba(45, 21, 48, 0.05);
  display: inline-block;
  margin: 0;
  padding: 1em 2em 1em 2.5em;
  border-radius: 3em;
  border: none;
  font-family: "rosario", Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 1.75px;
  cursor: pointer;
  font-size: 10px;
}
@media only screen and (min-width: 550px) {
  .tag {
    font-size: 10px;
  }
}
@media only screen and (min-width: 700px) {
  .tag {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1000px) {
  .tag {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1200px) {
  .tag {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1400px) {
  .tag {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1600px) {
  .tag {
    font-size: 12px;
  }
}
.tag .fa,
.tag .fab,
.tag .fal,
.tag .far,
.tag .fas {
  padding: 0 0 0 1em;
}
.tag .fa--left,
.tag .fab--left,
.tag .fal--left,
.tag .far--left,
.tag .fas--left {
  padding: 0 1em 0 0;
}
.tag .fa--nopad,
.tag .fab--nopad,
.tag .fal--nopad,
.tag .far--nopad,
.tag .fas--nopad {
  padding: 0;
}
.tag:hover {
  background: #080808;
  color: #ccc;
}
.tag:hover .fa,
.tag:hover .fab,
.tag:hover .fal,
.tag:hover .far,
.tag:hover .fas {
  opacity: 1;
  color: #F8795D;
}

/*  ==========================================================================
    share icons -- links-buttons.scss
    ========================================================================== */
.shareicons {
  pointer-events: none;
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 100;
  text-align: right;
  right: 1.5em;
  bottom: 1.5em;
}
@media only screen and (min-width: 550px) {
  .shareicons {
    right: 2.5em;
    bottom: 2.5em;
  }
}
@media only screen and (min-width: 700px) {
  .shareicons {
    right: 2.5em;
    bottom: 2.5em;
  }
}
@media only screen and (min-width: 1000px) {
  .shareicons {
    right: 2em;
    bottom: 2em;
  }
}
@media only screen and (min-width: 1200px) {
  .shareicons {
    right: 2em;
    bottom: 2em;
  }
}
@media only screen and (min-width: 1400px) {
  .shareicons {
    right: 2em;
    bottom: 2em;
  }
}
@media only screen and (min-width: 1600px) {
  .shareicons {
    right: calc((100vw - (1600px - (2em * 2))) / 2);
    bottom: calc((100vw - (1600px - (2em * 2))) / 2);
  }
}
.shareicons .shareiconslist li {
  margin: 0;
  position: relative;
  left: 3em;
  opacity: 0;
  -webkit-transition: opacity 250ms ease-out 0ms, left 250ms ease-out 0ms;
  -moz-transition: opacity 250ms ease-out 0ms, left 250ms ease-out 0ms;
  transition: opacity 250ms ease-out 0ms, left 250ms ease-out 0ms;
  -webkit-transition-delay: 300ms;
  -moz-transition-delay: 300ms;
  transition-delay: 300ms;
}
.shareicons .shareiconslist li:nth-child(2) {
  -webkit-transition-delay: 150ms;
  -moz-transition-delay: 150ms;
  transition-delay: 150ms;
}
.shareicons .shareiconslist li:nth-child(3) {
  -webkit-transition-delay: 0ms;
  -moz-transition-delay: 0ms;
  transition-delay: 0ms;
}
.shareicons .sharelink {
  display: inline-block;
  background: #fff;
  color: #F8795D;
  border: 1px solid rgba(45, 21, 48, 0.05);
  line-height: 3em;
  height: 3em;
  text-align: center;
  border-radius: 1.5em;
  margin: 0;
}
.shareicons .sharelink:after {
  content: "";
  height: 0;
  visibility: hidden;
  clear: both;
  display: block;
}
.shareicons .sharelink:hover {
  background: #F8795D;
  color: #ccc;
}
.shareicons .sharelink .sharetext {
  overflow: hidden;
  font-size: 12px;
  display: block;
  float: left;
  text-align: right;
  width: 0;
  -webkit-transition: all 0.15s ease-in-out 0s;
  -moz-transition: all 0.15s ease-in-out 0s;
  transition: all 0.15s ease-in-out 0s;
}
.shareicons .sharelink .shareicon {
  width: 3em;
  text-align: center;
  display: block;
  float: left;
  padding: 0;
  border: none;
}
.shareicons .sharelink .shareicon .fab {
  display: inline-block;
  padding: 0;
}
.shareicons .sharelink a:hover .shareicon .fab {
  display: inline-block;
  padding: 0;
}
.shareicons .sharelink:hover .sharetext {
  width: 55px;
}
.shareicons--show {
  pointer-events: all;
}
.shareicons--show .shareiconslist li {
  left: 0;
  opacity: 1;
}



/*================= LAYOUT =================*/
/* ==========================================================================
   Flex Grid
   ========================================================================== */
.gd-g {
  margin-left: -0.75em;
  margin-right: -0.75em;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.gd-g--nowrap {
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.gd-g--wrapreverse {
  -webkit-flex-wrap: wrap-reverse;
  flex-wrap: wrap-reverse;
}
.gd-g--column {
  -webkit-flex-direction: column;
  /* Safari 6.1+ */
  flex-direction: column;
}
.gd-g--columnreverse {
  -webkit-flex-direction: column-reverse;
  /* Safari 6.1+ */
  flex-direction: column-reverse;
}
.gd-g--row {
  -webkit-flex-direction: row;
  /* Safari 6.1+ */
  flex-direction: row;
}
.gd-g--rowreverse {
  -webkit-flex-direction: row-reverse;
  /* Safari 6.1+ */
  flex-direction: row-reverse;
}
@media only screen and (min-width: 550px) {
  .gd-g--rowreverse--sm {
    -webkit-flex-direction: row-reverse;
    /* Safari 6.1+ */
    flex-direction: row-reverse;
  }
}
@media only screen and (min-width: 700px) {
  .gd-g--rowreverse--md {
    -webkit-flex-direction: row-reverse;
    /* Safari 6.1+ */
    flex-direction: row-reverse;
  }
}
@media only screen and (min-width: 1000px) {
  .gd-g--rowreverse--lg {
    -webkit-flex-direction: row-reverse;
    /* Safari 6.1+ */
    flex-direction: row-reverse;
  }
}
@media only screen and (min-width: 1200px) {
  .gd-g--rowreverse--xl {
    -webkit-flex-direction: row-reverse;
    /* Safari 6.1+ */
    flex-direction: row-reverse;
  }
}
@media only screen and (min-width: 1400px) {
  .gd-g--rowreverse--wi {
    -webkit-flex-direction: row-reverse;
    /* Safari 6.1+ */
    flex-direction: row-reverse;
  }
}
@media only screen and (min-width: 1600px) {
  .gd-g--rowreverse--xw {
    -webkit-flex-direction: row-reverse;
    /* Safari 6.1+ */
    flex-direction: row-reverse;
  }
}
@media only screen and (min-width: 550px) {
  .gd-g--columnreverse--sm {
    -webkit-flex-direction: column-reverse;
    /* Safari 6.1+ */
    flex-direction: column-reverse;
  }
}
@media only screen and (min-width: 700px) {
  .gd-g--columnreverse--md {
    -webkit-flex-direction: column-reverse;
    /* Safari 6.1+ */
    flex-direction: column-reverse;
  }
}
@media only screen and (min-width: 1000px) {
  .gd-g--columnreverse--lg {
    -webkit-flex-direction: column-reverse;
    /* Safari 6.1+ */
    flex-direction: column-reverse;
  }
}
@media only screen and (min-width: 1200px) {
  .gd-g--columnreverse--xl {
    -webkit-flex-direction: column-reverse;
    /* Safari 6.1+ */
    flex-direction: column-reverse;
  }
}
@media only screen and (min-width: 1400px) {
  .gd-g--columnreverse--wi {
    -webkit-flex-direction: column-reverse;
    /* Safari 6.1+ */
    flex-direction: column-reverse;
  }
}
@media only screen and (min-width: 1600px) {
  .gd-g--columnreverse--xw {
    -webkit-flex-direction: column-reverse;
    /* Safari 6.1+ */
    flex-direction: column-reverse;
  }
}
.gd-g--center {
  justify-content: center;
  /* For IE 10 */
  -ms-flex-pack: center;
}
@media only screen and (min-width: 1000px) {
  .gd-g--center--lg {
    justify-content: center;
    /* For IE 10 */
    -ms-flex-pack: center;
  }
}
.gd-g--left {
  justify-content: flex-start;
}
.gd-g--right {
  justify-content: flex-end;
}
.gd-g--spacebetween {
  justify-content: space-between;
}
.gd-g--spacearound {
  justify-content: space-around;
}
.gd-g--spaceevenly {
  justify-content: space-evenly;
}
.gd-g--vertcenter {
  align-items: center;
}
.gd-g--vertstart {
  align-items: flex-start;
}
.gd-g--vertend {
  align-items: flex-end;
}
.gd-g .opera-only :-o-prefocus, .gd-g {
  word-spacing: -0.43em;
}
.gd-g .gd-u {
  display: inline-block;
  vertical-align: top;
  box-sizing: border-box;
  padding-left: 0.75em;
  padding-right: 0.75em;
}
.gd-g .gd-u.gd-u--nopadleft {
  padding-left: 0;
}
.gd-g .gd-u.gd-u--nopadright {
  padding-right: 0;
}
.gd-g .gd-u-1 {
  width: 100%;
}
.gd-g .gd-u-1-2 {
  width: 50%;
}
.gd-g .gd-u-1-3 {
  width: 33.3%;
}
.gd-g .gd-u-2-3 {
  width: 66.66666%;
}
.gd-g .gd-u-1-4 {
  width: 25%;
}
.gd-g .gd-u-3-4 {
  width: 75%;
}
.gd-g .gd-u-1-5 {
  width: 20%;
}
.gd-g .gd-u-2-5 {
  width: 40%;
}
.gd-g .gd-u-3-5 {
  width: 60%;
}
.gd-g .gd-u-4-5 {
  width: 80%;
}
.gd-g .gd-u-1-6 {
  width: 16.656%;
}
.gd-g .gd-u-5-6 {
  width: 83.33%;
}
.gd-g .gd-u-3-7 {
  width: 42.86;
}
.gd-g .gd-u-4-7 {
  width: 57.14%;
}
.gd-g .gd-u-1-8 {
  width: 12.5%;
}
.gd-g .gd-u-3-8 {
  width: 37.5%;
}
.gd-g .gd-u-5-8 {
  width: 62.5%;
}
.gd-g .gd-u-7-8 {
  width: 87.5%;
}
.gd-g .gd-u-3-10 {
  width: 30%;
}
.gd-g .gd-u-7-10 {
  width: 70%;
}
.gd-g .gd-u-1-12 {
  width: 8.3333%;
}
.gd-g .gd-u-5-12 {
  width: 41.6666%;
}
.gd-g .gd-u-7-12 {
  width: 58.3333%;
}
.gd-g .gd-u-11-12 {
  width: 91.6666%;
}
.gd-g .gd-u-1-24 {
  width: 4.1666%;
}
.gd-g .gd-u-5-24 {
  width: 20.8333%;
}
.gd-g .gd-u-7-24 {
  width: 29.1666%;
}
.gd-g .gd-u-11-24 {
  width: 45.8333%;
}
.gd-g .gd-u-13-24 {
  width: 54.1666%;
}
.gd-g .gd-u-17-24 {
  width: 70.8333%;
}
.gd-g .gd-u-19-24 {
  width: 79.1666%;
}
.gd-g .gd-u-23-24 {
  width: 95.8333%;
}
.gd-g .gd-u-auto {
  width: auto;
}
@media only screen and (max-width: 549px) {
  .gd-g .lt550-hide {
    display: none;
  }
}
@media only screen and (min-width: 550px) {
  .gd-g .gd-u-gt550-1 {
    width: 100%;
  }
  .gd-g .gd-u-gt550-1-2 {
    width: 50%;
  }
  .gd-g .gd-u-gt550-1-3 {
    width: 33.33333%;
  }
  .gd-g .gd-u-gt550-2-3 {
    width: 66.66666%;
  }
  .gd-g .gd-u-gt550-1-4 {
    width: 25%;
  }
  .gd-g .gd-u-gt550-3-4 {
    width: 75%;
  }
  .gd-g .gd-u-gt550-1-5 {
    width: 20%;
  }
  .gd-g .gd-u-gt550-2-5 {
    width: 40%;
  }
  .gd-g .gd-u-gt550-3-5 {
    width: 60%;
  }
  .gd-g .gd-u-gt550-4-5 {
    width: 80%;
  }
  .gd-g .gd-u-gt550-1-6 {
    width: 16.656%;
  }
  .gd-g .gd-u-gt550-5-6 {
    width: 83.33%;
  }
  .gd-g .gd-u-gt550-3-7 {
    width: 42.86;
  }
  .gd-g .gd-u-gt550-4-7 {
    width: 57.14%;
  }
  .gd-g .gd-u-gt550-1-8 {
    width: 12.5%;
  }
  .gd-g .gd-u-gt550-3-8 {
    width: 37.5%;
  }
  .gd-g .gd-u-gt550-5-8 {
    width: 62.5%;
  }
  .gd-g .gd-u-gt550-7-8 {
    width: 87.5%;
  }
  .gd-g .gd-u-gt550-3-10 {
    width: 30%;
  }
  .gd-g .gd-u-gt550-7-10 {
    width: 70%;
  }
  .gd-g .gd-u-gt550-1-12 {
    width: 8.3333%;
  }
  .gd-g .gd-u-gt550-5-12 {
    width: 41.6666%;
  }
  .gd-g .gd-u-gt550-7-12 {
    width: 58.3333%;
  }
  .gd-g .gd-u-gt550-11-12 {
    width: 91.6666%;
  }
  .gd-g .gd-u-gt550-1-24 {
    width: 4.1666%;
  }
  .gd-g .gd-u-gt550-5-24 {
    width: 20.8333%;
  }
  .gd-g .gd-u-gt550-7-24 {
    width: 29.1666%;
  }
  .gd-g .gd-u-gt550-11-24 {
    width: 45.8333%;
  }
  .gd-g .gd-u-gt550-13-24 {
    width: 54.1666%;
  }
  .gd-g .gd-u-gt550-17-24 {
    width: 70.8333%;
  }
  .gd-g .gd-u-gt550-19-24 {
    width: 79.1666%;
  }
  .gd-g .gd-u-gt550-23-24 {
    width: 95.8333%;
  }
  .gd-g .gd-u-gt550-auto {
    width: auto;
  }
  .gd-g .gd-u-gt550--nopadleft {
    padding-left: 0;
  }
  .gd-g .gd-u-gt550--nopadright {
    padding-right: 0;
  }
  .gd-g .gd-g {
    margin-right: -0.75em;
    margin-left: -0.75em;
  }
  .gd-g .gd-u {
    padding-right: 0.75em;
    padding-left: 0.75em;
  }
}
@media only screen and (max-width: 699px) {
  .gd-g .lt700-hide {
    display: none;
  }
}
@media only screen and (min-width: 700px) {
  .gd-g .gd-u-gt700-1 {
    width: 100%;
  }
  .gd-g .gd-u-gt700-1-2 {
    width: 50%;
  }
  .gd-g .gd-u-gt700-1-3 {
    width: 33.33333%;
  }
  .gd-g .gd-u-gt700-2-3 {
    width: 66.66666%;
  }
  .gd-g .gd-u-gt700-1-4 {
    width: 25%;
  }
  .gd-g .gd-u-gt700-3-4 {
    width: 75%;
  }
  .gd-g .gd-u-gt700-1-5 {
    width: 20%;
  }
  .gd-g .gd-u-gt700-2-5 {
    width: 40%;
  }
  .gd-g .gd-u-gt700-3-5 {
    width: 60%;
  }
  .gd-g .gd-u-gt700-4-5 {
    width: 80%;
  }
  .gd-g .gd-u-gt700-1-6 {
    width: 16.656%;
  }
  .gd-g .gd-u-gt700-5-6 {
    width: 83.33%;
  }
  .gd-g .gd-u-gt700-3-7 {
    width: 42.86;
  }
  .gd-g .gd-u-gt700-4-7 {
    width: 57.14%;
  }
  .gd-g .gd-u-gt700-1-8 {
    width: 12.5%;
  }
  .gd-g .gd-u-gt700-3-8 {
    width: 37.5%;
  }
  .gd-g .gd-u-gt700-5-8 {
    width: 62.5%;
  }
  .gd-g .gd-u-gt700-7-8 {
    width: 87.5%;
  }
  .gd-g .gd-u-gt700-3-10 {
    width: 30%;
  }
  .gd-g .gd-u-gt700-7-10 {
    width: 70%;
  }
  .gd-g .gd-u-gt700-1-12 {
    width: 8.3333%;
  }
  .gd-g .gd-u-gt700-5-12 {
    width: 41.6666%;
  }
  .gd-g .gd-u-gt700-7-12 {
    width: 58.3333%;
  }
  .gd-g .gd-u-gt700-11-12 {
    width: 91.6666%;
  }
  .gd-g .gd-u-gt700-1-24 {
    width: 4.1666%;
  }
  .gd-g .gd-u-gt700-5-24 {
    width: 20.8333%;
  }
  .gd-g .gd-u-gt700-7-24 {
    width: 29.1666%;
  }
  .gd-g .gd-u-gt700-11-24 {
    width: 45.8333%;
  }
  .gd-g .gd-u-gt700-13-24 {
    width: 54.1666%;
  }
  .gd-g .gd-u-gt700-17-24 {
    width: 70.8333%;
  }
  .gd-g .gd-u-gt700-19-24 {
    width: 79.1666%;
  }
  .gd-g .gd-u-gt700-23-24 {
    width: 95.8333%;
  }
  .gd-g .gd-u-gt700-auto {
    width: auto;
  }
  .gd-g .gd-u-gt700--nopadleft {
    padding-left: 0;
  }
  .gd-g .gd-u-gt700--nopadright {
    padding-right: 0;
  }
  .gd-g .gd-g {
    margin-right: -1em;
    margin-left: -1em;
  }
  .gd-g .gd-u {
    padding-right: 1em;
    padding-left: 1em;
  }
}
@media screen and (max-width: 799px) {
  .gd-g .lt800-hide {
    display: none;
  }
}
@media screen and (min-width: 800px) {
  .gd-g .gd-u-gt800-1 {
    width: 100%;
  }
  .gd-g .gd-u-gt800-1-2 {
    width: 50%;
  }
  .gd-g .gd-u-gt800-1-3 {
    width: 33.33333%;
  }
  .gd-g .gd-u-gt800-2-3 {
    width: 66.66666%;
  }
  .gd-g .gd-u-gt800-1-4 {
    width: 25%;
  }
  .gd-g .gd-u-gt800-3-4 {
    width: 75%;
  }
  .gd-g .gd-u-gt800-1-5 {
    width: 20%;
  }
  .gd-g .gd-u-gt800-2-5 {
    width: 40%;
  }
  .gd-g .gd-u-gt800-3-5 {
    width: 60%;
  }
  .gd-g .gd-u-gt800-4-5 {
    width: 80%;
  }
  .gd-g .gd-u-gt800-1-6 {
    width: 16.656%;
  }
  .gd-g .gd-u-gt800-5-6 {
    width: 83.33%;
  }
  .gd-g .gd-u-gt800-3-7 {
    width: 42.86;
  }
  .gd-g .gd-u-gt800-4-7 {
    width: 57.14%;
  }
  .gd-g .gd-u-gt800-1-8 {
    width: 12.5%;
  }
  .gd-g .gd-u-gt800-3-8 {
    width: 37.5%;
  }
  .gd-g .gd-u-gt800-5-8 {
    width: 62.5%;
  }
  .gd-g .gd-u-gt800-7-8 {
    width: 87.5%;
  }
  .gd-g .gd-u-gt800-3-10 {
    width: 30%;
  }
  .gd-g .gd-u-gt800-7-10 {
    width: 70%;
  }
  .gd-g .gd-u-gt800-1-12 {
    width: 8.3333%;
  }
  .gd-g .gd-u-gt800-5-12 {
    width: 41.6666%;
  }
  .gd-g .gd-u-gt800-7-12 {
    width: 58.3333%;
  }
  .gd-g .gd-u-gt800-11-12 {
    width: 91.6666%;
  }
  .gd-g .gd-u-gt800-1-24 {
    width: 4.1666%;
  }
  .gd-g .gd-u-gt800-5-24 {
    width: 20.8333%;
  }
  .gd-g .gd-u-gt800-7-24 {
    width: 29.1666%;
  }
  .gd-g .gd-u-gt800-11-24 {
    width: 45.8333%;
  }
  .gd-g .gd-u-gt800-13-24 {
    width: 54.1666%;
  }
  .gd-g .gd-u-gt800-17-24 {
    width: 70.8333%;
  }
  .gd-g .gd-u-gt800-19-24 {
    width: 79.1666%;
  }
  .gd-g .gd-u-gt800-23-24 {
    width: 95.8333%;
  }
  .gd-g .gd-u-gt800-auto {
    width: auto;
  }
  .gd-g .gd-u-gt800--nopadleft {
    padding-left: 0;
  }
  .gd-g .gd-u-gt800--nopadright {
    padding-right: 0;
  }
}
@media only screen and (max-width: 999px) {
  .gd-g .lt1000-hide {
    display: none;
  }
}
@media only screen and (min-width: 1000px) {
  .gd-g .gd-u-gt1000-1 {
    width: 100%;
  }
  .gd-g .gd-u-gt1000-1-2 {
    width: 50%;
  }
  .gd-g .gd-u-gt1000-1-3 {
    width: 33.33333%;
  }
  .gd-g .gd-u-gt1000-2-3 {
    width: 66.66666%;
  }
  .gd-g .gd-u-gt1000-1-4 {
    width: 25%;
  }
  .gd-g .gd-u-gt1000-3-4 {
    width: 75%;
  }
  .gd-g .gd-u-gt1000-1-5 {
    width: 20%;
  }
  .gd-g .gd-u-gt1000-2-5 {
    width: 40%;
  }
  .gd-g .gd-u-gt1000-3-5 {
    width: 60%;
  }
  .gd-g .gd-u-gt1000-4-5 {
    width: 80%;
  }
  .gd-g .gd-u-gt1000-1-6 {
    width: 16.656%;
  }
  .gd-g .gd-u-gt1000-5-6 {
    width: 83.33%;
  }
  .gd-g .gd-u-gt1000-3-7 {
    width: 42.86;
  }
  .gd-g .gd-u-gt1000-4-7 {
    width: 57.14%;
  }
  .gd-g .gd-u-gt1000-1-8 {
    width: 12.5%;
  }
  .gd-g .gd-u-gt1000-3-8 {
    width: 37.5%;
  }
  .gd-g .gd-u-gt1000-5-8 {
    width: 62.5%;
  }
  .gd-g .gd-u-gt1000-7-8 {
    width: 87.5%;
  }
  .gd-g .gd-u-gt1000-3-10 {
    width: 30%;
  }
  .gd-g .gd-u-gt1000-7-10 {
    width: 70%;
  }
  .gd-g .gd-u-gt1000-1-12 {
    width: 8.3333%;
  }
  .gd-g .gd-u-gt1000-5-12 {
    width: 41.6666%;
  }
  .gd-g .gd-u-gt1000-7-12 {
    width: 58.3333%;
  }
  .gd-g .gd-u-gt1000-11-12 {
    width: 91.6666%;
  }
  .gd-g .gd-u-gt1000-1-24 {
    width: 4.1666%;
  }
  .gd-g .gd-u-gt1000-5-24 {
    width: 20.8333%;
  }
  .gd-g .gd-u-gt1000-7-24 {
    width: 29.1666%;
  }
  .gd-g .gd-u-gt1000-11-24 {
    width: 45.8333%;
  }
  .gd-g .gd-u-gt1000-13-24 {
    width: 54.1666%;
  }
  .gd-g .gd-u-gt1000-17-24 {
    width: 70.8333%;
  }
  .gd-g .gd-u-gt1000-19-24 {
    width: 79.1666%;
  }
  .gd-g .gd-u-gt1000-23-24 {
    width: 95.8333%;
  }
  .gd-g .gd-u-gt1000-auto {
    width: auto;
  }
  .gd-g .gd-u-gt1000--nopadleft {
    padding-left: 0;
  }
  .gd-g .gd-u-gt1000--nopadright {
    padding-right: 0;
  }
  .gd-g .gd-g {
    margin-right: -1em;
    margin-left: -1em;
  }
  .gd-g .gd-u {
    padding-right: 1em;
    padding-left: 1em;
  }
}
@media only screen and (max-width: 1199px) {
  .gd-g .lt1200-hide {
    display: none;
  }
}
@media only screen and (min-width: 1200px) {
  .gd-g .gd-u-gt1200-1 {
    width: 100%;
  }
  .gd-g .gd-u-gt1200-1-2 {
    width: 50%;
  }
  .gd-g .gd-u-gt1200-1-3 {
    width: 33.33333%;
  }
  .gd-g .gd-u-gt1200-2-3 {
    width: 66.66666%;
  }
  .gd-g .gd-u-gt1200-1-4 {
    width: 25%;
  }
  .gd-g .gd-u-gt1200-3-4 {
    width: 75%;
  }
  .gd-g .gd-u-gt1200-1-5 {
    width: 20%;
  }
  .gd-g .gd-u-gt1200-2-5 {
    width: 40%;
  }
  .gd-g .gd-u-gt1200-3-5 {
    width: 60%;
  }
  .gd-g .gd-u-gt1200-4-5 {
    width: 80%;
  }
  .gd-g .gd-u-gt1200-1-6 {
    width: 16.656%;
  }
  .gd-g .gd-u-gt1200-5-6 {
    width: 83.33%;
  }
  .gd-g .gd-u-gt1200-3-7 {
    width: 42.86;
  }
  .gd-g .gd-u-gt1200-4-7 {
    width: 57.14%;
  }
  .gd-g .gd-u-gt1200-1-8 {
    width: 12.5%;
  }
  .gd-g .gd-u-gt1200-3-8 {
    width: 37.5%;
  }
  .gd-g .gd-u-gt1200-5-8 {
    width: 62.5%;
  }
  .gd-g .gd-u-gt1200-7-8 {
    width: 87.5%;
  }
  .gd-g .gd-u-gt1200-3-10 {
    width: 30%;
  }
  .gd-g .gd-u-gt1200-7-10 {
    width: 70%;
  }
  .gd-g .gd-u-gt1200-1-12 {
    width: 8.3333%;
  }
  .gd-g .gd-u-gt1200-5-12 {
    width: 41.6666%;
  }
  .gd-g .gd-u-gt1200-7-12 {
    width: 58.3333%;
  }
  .gd-g .gd-u-gt1200-11-12 {
    width: 91.6666%;
  }
  .gd-g .gd-u-gt1200-1-24 {
    width: 4.1666%;
  }
  .gd-g .gd-u-gt1200-5-24 {
    width: 20.8333%;
  }
  .gd-g .gd-u-gt1200-7-24 {
    width: 29.1666%;
  }
  .gd-g .gd-u-gt1200-11-24 {
    width: 45.8333%;
  }
  .gd-g .gd-u-gt1200-13-24 {
    width: 54.1666%;
  }
  .gd-g .gd-u-gt1200-17-24 {
    width: 70.8333%;
  }
  .gd-g .gd-u-gt1200-19-24 {
    width: 79.1666%;
  }
  .gd-g .gd-u-gt1200-23-24 {
    width: 95.8333%;
  }
  .gd-g .gd-u-gt1200-auto {
    width: auto;
  }
  .gd-g .gd-u-gt1200--nopadleft {
    padding-left: 0;
  }
  .gd-g .gd-u-gt1200--nopadright {
    padding-right: 0;
  }
}
@media only screen and (max-width: 1399px) {
  .gd-g .lt1400-hide {
    display: none;
  }
}
@media only screen and (min-width: 1400px) {
  .gd-g .gd-u-gt1400-1 {
    width: 100%;
  }
  .gd-g .gd-u-gt1400-1-2 {
    width: 50%;
  }
  .gd-g .gd-u-gt1400-1-3 {
    width: 33.33333%;
  }
  .gd-g .gd-u-gt1400-2-3 {
    width: 66.66666%;
  }
  .gd-g .gd-u-gt1400-1-4 {
    width: 25%;
  }
  .gd-g .gd-u-gt1400-3-4 {
    width: 75%;
  }
  .gd-g .gd-u-gt1400-1-5 {
    width: 20%;
  }
  .gd-g .gd-u-gt1400-2-5 {
    width: 40%;
  }
  .gd-g .gd-u-gt1400-3-5 {
    width: 60%;
  }
  .gd-g .gd-u-gt1400-4-5 {
    width: 80%;
  }
  .gd-g .gd-u-gt1400-1-6 {
    width: 16.656%;
  }
  .gd-g .gd-u-gt1400-5-6 {
    width: 83.33%;
  }
  .gd-g .gd-u-gt1400-3-7 {
    width: 42.86;
  }
  .gd-g .gd-u-gt1400-4-7 {
    width: 57.14%;
  }
  .gd-g .gd-u-gt1400-1-8 {
    width: 12.5%;
  }
  .gd-g .gd-u-gt1400-3-8 {
    width: 37.5%;
  }
  .gd-g .gd-u-gt1400-5-8 {
    width: 62.5%;
  }
  .gd-g .gd-u-gt1400-7-8 {
    width: 87.5%;
  }
  .gd-g .gd-u-gt1400-3-10 {
    width: 30%;
  }
  .gd-g .gd-u-gt1400-7-10 {
    width: 70%;
  }
  .gd-g .gd-u-gt1400-1-12 {
    width: 8.3333%;
  }
  .gd-g .gd-u-gt1400-5-12 {
    width: 41.6666%;
  }
  .gd-g .gd-u-gt1400-7-12 {
    width: 58.3333%;
  }
  .gd-g .gd-u-gt1400-11-12 {
    width: 91.6666%;
  }
  .gd-g .gd-u-gt1400-1-24 {
    width: 4.1666%;
  }
  .gd-g .gd-u-gt1400-5-24 {
    width: 20.8333%;
  }
  .gd-g .gd-u-gt1400-7-24 {
    width: 29.1666%;
  }
  .gd-g .gd-u-gt1400-11-24 {
    width: 45.8333%;
  }
  .gd-g .gd-u-gt1400-13-24 {
    width: 54.1666%;
  }
  .gd-g .gd-u-gt1400-17-24 {
    width: 70.8333%;
  }
  .gd-g .gd-u-gt1400-19-24 {
    width: 79.1666%;
  }
  .gd-g .gd-u-gt1400-23-24 {
    width: 95.8333%;
  }
  .gd-g .gd-u-gt1400-auto {
    width: auto;
  }
  .gd-g .gd-u-gt1400--nopadleft {
    padding-left: 0;
  }
  .gd-g .gd-u-gt1400--nopadright {
    padding-right: 0;
  }
}
@media only screen and (min-width: 1600px) {
  .gd-g .gd-u-gt1600-1 {
    width: 100%;
  }
  .gd-g .gd-u-gt1600-1-2 {
    width: 50%;
  }
  .gd-g .gd-u-gt1600-1-3 {
    width: 33.33333%;
  }
  .gd-g .gd-u-gt1600-2-3 {
    width: 66.66666%;
  }
  .gd-g .gd-u-gt1600-1-4 {
    width: 25%;
  }
  .gd-g .gd-u-gt1600-3-4 {
    width: 75%;
  }
  .gd-g .gd-u-gt1600-1-5 {
    width: 20%;
  }
  .gd-g .gd-u-gt1600-2-5 {
    width: 40%;
  }
  .gd-g .gd-u-gt1600-3-5 {
    width: 60%;
  }
  .gd-g .gd-u-gt1600-4-5 {
    width: 80%;
  }
  .gd-g .gd-u-gt1600-1-6 {
    width: 16.656%;
  }
  .gd-g .gd-u-gt1600-5-6 {
    width: 83.33%;
  }
  .gd-g .gd-u-gt1600-3-7 {
    width: 42.86;
  }
  .gd-g .gd-u-gt1600-4-7 {
    width: 57.14%;
  }
  .gd-g .gd-u-gt1600-1-8 {
    width: 12.5%;
  }
  .gd-g .gd-u-gt1600-3-8 {
    width: 37.5%;
  }
  .gd-g .gd-u-gt1600-5-8 {
    width: 62.5%;
  }
  .gd-g .gd-u-gt1600-7-8 {
    width: 87.5%;
  }
  .gd-g .gd-u-gt1600-3-10 {
    width: 30%;
  }
  .gd-g .gd-u-gt1600-7-10 {
    width: 70%;
  }
  .gd-g .gd-u-gt1600-1-12 {
    width: 8.3333%;
  }
  .gd-g .gd-u-gt1600-5-12 {
    width: 41.6666%;
  }
  .gd-g .gd-u-gt1600-7-12 {
    width: 58.3333%;
  }
  .gd-g .gd-u-gt1600-11-12 {
    width: 91.6666%;
  }
  .gd-g .gd-u-gt1600-1-24 {
    width: 4.1666%;
  }
  .gd-g .gd-u-gt1600-5-24 {
    width: 20.8333%;
  }
  .gd-g .gd-u-gt1600-7-24 {
    width: 29.1666%;
  }
  .gd-g .gd-u-gt1600-11-24 {
    width: 45.8333%;
  }
  .gd-g .gd-u-gt1600-13-24 {
    width: 54.1666%;
  }
  .gd-g .gd-u-gt1600-17-24 {
    width: 70.8333%;
  }
  .gd-g .gd-u-gt1600-19-24 {
    width: 79.1666%;
  }
  .gd-g .gd-u-gt1600-23-24 {
    width: 95.8333%;
  }
  .gd-g .gd-u-gt1600-auto {
    width: auto;
  }
  .gd-g .gd-u-gt1600--nopadleft {
    padding-left: 0;
  }
  .gd-g .gd-u-gt1600--nopadright {
    padding-right: 0;
  }
}
.gd-g .opera-only :-o-prefocus,
.gd-g .gd-g {
  word-spacing: -0.43em;
}

/* ==========================================================================
   CSS Grid
   ========================================================================== */
.cssgd-g {
  margin: 0;
  display: grid;
  grid-auto-flow: dense;
  grid-gap: calc(0.75em * 2);
}
.cssgd-g-1-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.cssgd-g-1-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.cssgd-g-1-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.cssgd-g-1-5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.cssgd-g-1-6 {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
@media only screen and (min-width: 550px) {
  .cssgd-g {
    grid-gap: calc(0.75em * 2);
  }
  .cssgd-g-gt550-1-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .cssgd-g-gt550-1-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .cssgd-g-gt550-1-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .cssgd-g-gt550-1-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .cssgd-g-gt550-1-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}
@media only screen and (min-width: 700px) {
  .cssgd-g {
    grid-gap: calc(1em * 2);
  }
  .cssgd-g-gt700-1-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .cssgd-g-gt700-1-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .cssgd-g-gt700-1-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .cssgd-g-gt700-1-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .cssgd-g-gt700-1-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}
@media only screen and (min-width: 1000px) {
  .cssgd-g {
    grid-gap: calc(1em * 2);
  }
  .cssgd-g-gt1000-1-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .cssgd-g-gt1000-1-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .cssgd-g-gt1000-1-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .cssgd-g-gt1000-1-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .cssgd-g-gt1000-1-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}
@media only screen and (min-width: 1200px) {
  .cssgd-g-gt1200-1-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .cssgd-g-gt1200-1-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .cssgd-g-gt1200-1-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .cssgd-g-gt1200-1-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .cssgd-g-gt1200-1-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}
@media only screen and (min-width: 1400px) {
  .cssgd-g-gt1400-1-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .cssgd-g-gt1400-1-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .cssgd-g-gt1400-1-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .cssgd-g-gt1400-1-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .cssgd-g-gt1400-1-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}
@media only screen and (min-width: 1600px) {
  .cssgd-g-gt1600-1-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .cssgd-g-gt1600-1-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .cssgd-g-gt1600-1-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .cssgd-g-gt1600-1-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .cssgd-g-gt1600-1-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}
.cssgd-g .cssgd-u-2col {
  grid-column-end: span 2;
}
.cssgd-g .cssgd-u-3col {
  grid-column-end: span 3;
}
.cssgd-g .cssgd-u-4col {
  grid-column-end: span 4;
}
.cssgd-g .cssgd-u-5col {
  grid-column-end: span 5;
}
.cssgd-g .cssgd-u-6col {
  grid-column-end: span 6;
}
.cssgd-g .cssgd-u-2row {
  grid-row-end: span 2;
}
.cssgd-g .cssgd-u-3row {
  grid-row-end: span 3;
}
.cssgd-g .cssgd-u-4row {
  grid-row-end: span 4;
}
.cssgd-g .cssgd-u-5row {
  grid-row-end: span 5;
}
.cssgd-g .cssgd-u-6row {
  grid-row-end: span 6;
}
@media only screen and (min-width: 550px) {
  .cssgd-g .cssgd-u-gt550-2col {
    grid-column-end: span 2;
  }
  .cssgd-g .cssgd-u-gt550-3col {
    grid-column-end: span 3;
  }
  .cssgd-g .cssgd-u-gt550-4col {
    grid-column-end: span 4;
  }
  .cssgd-g .cssgd-u-gt550-5col {
    grid-column-end: span 5;
  }
  .cssgd-g .cssgd-u-gt550-6col {
    grid-column-end: span 6;
  }
  .cssgd-g .cssgd-u-gt550-2row {
    grid-row-end: span 2;
  }
  .cssgd-g .cssgd-u-gt550-3row {
    grid-row-end: span 3;
  }
  .cssgd-g .cssgd-u-gt550-4row {
    grid-row-end: span 4;
  }
  .cssgd-g .cssgd-u-gt550-5row {
    grid-row-end: span 5;
  }
  .cssgd-g .cssgd-u-gt550-6row {
    grid-row-end: span 6;
  }
}
@media only screen and (min-width: 700px) {
  .cssgd-g .cssgd-u-gt700-2col {
    grid-column-end: span 2;
  }
  .cssgd-g .cssgd-u-gt700-3col {
    grid-column-end: span 3;
  }
  .cssgd-g .cssgd-u-gt700-4col {
    grid-column-end: span 4;
  }
  .cssgd-g .cssgd-u-gt700-5col {
    grid-column-end: span 5;
  }
  .cssgd-g .cssgd-u-gt700-6col {
    grid-column-end: span 6;
  }
  .cssgd-g .cssgd-u-gt700-2row {
    grid-row-end: span 2;
  }
  .cssgd-g .cssgd-u-gt700-3row {
    grid-row-end: span 3;
  }
  .cssgd-g .cssgd-u-gt700-4row {
    grid-row-end: span 4;
  }
  .cssgd-g .cssgd-u-gt700-5row {
    grid-row-end: span 5;
  }
  .cssgd-g .cssgd-u-gt700-6row {
    grid-row-end: span 6;
  }
}
@media only screen and (min-width: 1000px) {
  .cssgd-g .cssgd-u-gt1000-2col {
    grid-column-end: span 2;
  }
  .cssgd-g .cssgd-u-gt1000-3col {
    grid-column-end: span 3;
  }
  .cssgd-g .cssgd-u-gt1000-4col {
    grid-column-end: span 4;
  }
  .cssgd-g .cssgd-u-gt1000-5col {
    grid-column-end: span 5;
  }
  .cssgd-g .cssgd-u-gt1000-6col {
    grid-column-end: span 6;
  }
  .cssgd-g .cssgd-u-gt1000-2row {
    grid-row-end: span 2;
  }
  .cssgd-g .cssgd-u-gt1000-3row {
    grid-row-end: span 3;
  }
  .cssgd-g .cssgd-u-gt1000-4row {
    grid-row-end: span 4;
  }
  .cssgd-g .cssgd-u-gt1000-5row {
    grid-row-end: span 5;
  }
  .cssgd-g .cssgd-u-gt1000-6row {
    grid-row-end: span 6;
  }
}
@media only screen and (min-width: 1200px) {
  .cssgd-g .cssgd-u-gt1200-2col {
    grid-column-end: span 2;
  }
  .cssgd-g .cssgd-u-gt1200-3col {
    grid-column-end: span 3;
  }
  .cssgd-g .cssgd-u-gt1200-4col {
    grid-column-end: span 4;
  }
  .cssgd-g .cssgd-u-gt1200-5col {
    grid-column-end: span 5;
  }
  .cssgd-g .cssgd-u-gt1200-6col {
    grid-column-end: span 6;
  }
  .cssgd-g .cssgd-u-gt1200-2row {
    grid-row-end: span 2;
  }
  .cssgd-g .cssgd-u-gt1200-3row {
    grid-row-end: span 3;
  }
  .cssgd-g .cssgd-u-gt1200-4row {
    grid-row-end: span 4;
  }
  .cssgd-g .cssgd-u-gt1200-5row {
    grid-row-end: span 5;
  }
  .cssgd-g .cssgd-u-gt1200-6row {
    grid-row-end: span 6;
  }
}
@media only screen and (min-width: 1400px) {
  .cssgd-g .cssgd-u-gt1400-2col {
    grid-column-end: span 2;
  }
  .cssgd-g .cssgd-u-gt1400-3col {
    grid-column-end: span 3;
  }
  .cssgd-g .cssgd-u-gt1400-4col {
    grid-column-end: span 4;
  }
  .cssgd-g .cssgd-u-gt1400-5col {
    grid-column-end: span 5;
  }
  .cssgd-g .cssgd-u-gt1400-6col {
    grid-column-end: span 6;
  }
  .cssgd-g .cssgd-u-gt1400-2row {
    grid-row-end: span 2;
  }
  .cssgd-g .cssgd-u-gt1400-3row {
    grid-row-end: span 3;
  }
  .cssgd-g .cssgd-u-gt1400-4row {
    grid-row-end: span 4;
  }
  .cssgd-g .cssgd-u-gt1400-5row {
    grid-row-end: span 5;
  }
  .cssgd-g .cssgd-u-gt1400-6row {
    grid-row-end: span 6;
  }
}
@media only screen and (min-width: 1600px) {
  .cssgd-g .cssgd-u-gt1600-2col {
    grid-column-end: span 2;
  }
  .cssgd-g .cssgd-u-gt1600-3col {
    grid-column-end: span 3;
  }
  .cssgd-g .cssgd-u-gt1600-4col {
    grid-column-end: span 4;
  }
  .cssgd-g .cssgd-u-gt1600-5col {
    grid-column-end: span 5;
  }
  .cssgd-g .cssgd-u-gt1600-6col {
    grid-column-end: span 6;
  }
  .cssgd-g .cssgd-u-gt1600-2row {
    grid-row-end: span 2;
  }
  .cssgd-g .cssgd-u-gt1600-3row {
    grid-row-end: span 3;
  }
  .cssgd-g .cssgd-u-gt1600-4row {
    grid-row-end: span 4;
  }
  .cssgd-g .cssgd-u-gt1600-5row {
    grid-row-end: span 5;
  }
  .cssgd-g .cssgd-u-gt1600-6row {
    grid-row-end: span 6;
  }
}

/* ==========================================================================
   Forms
   ========================================================================== */
/* ==========================================================================
  Input Styling
  ========================================================================== */

  input.invalid, textarea.invalid{
  border: 1px solid Crimson!important;
  
}

input.valid, textarea.valid{
  border: 1px solid MediumSeaGreen!important;
}
.error_show {
    display: block;
    line-height: 24px;
    padding: 5px px 0px 0px;
    margin: 0px;
    /* text-transform: uppercase; */
    font-size: 15px;
    color: #ff0000;
    font-weight: 400;
    padding: 5px 0px;
}
 .error{
  display: none;
  margin-left: 10px;
  
}  
 .mbt-25 {
  margin-bottom: 20px;
} 

input[type=text],
input[type=email],
input[type=phone],
input[type=password],
input[type=number],
input[type=search],
input[type=tel],
select,
textarea {
  padding: 1em 1.5em;
  background: #f9f8f8;
  border: 1px solid rgba(248, 121, 93, 0.4);
  border-radius: 0;
  outline: none;
  width: 100%;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  font-family: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  
}
input[type=text]:focus,
input[type=email]:focus,
input[type=password]:focus,
input[type=number]:focus,
input[type=search]:focus,
input[type=tel]:focus,
select:focus,
textarea:focus {
  outline: none;
}

textarea {
  min-height: 12em;
}

input.placeholder,
textarea.placeholder {
  color: rgba(45, 21, 48, 0.25);
}
input:-moz-placeholder,
textarea:-moz-placeholder {
  color: rgba(45, 21, 48, 0.25);
}
input::-moz-placeholder,
textarea::-moz-placeholder {
  color: rgba(45, 21, 48, 0.25);
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: rgba(45, 21, 48, 0.25);
}
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
 /* color: rgba(45, 21, 48, 0.25);*/
  color:rgb(126 108 97);
}

select {
  background-image: url("img/framework/select-arrow.png");
  /* add custom arrow */
  background-size: 10px auto;
  background-repeat: no-repeat;
  background-position: right 1rem center;
}

button:focus,
input[type=submit]:focus {
  outline: none;
}

input[disabled],
input[disabled],
input[disabled],
input[disabled],
textarea[disabled],
input[readonly],
input[readonly],
input[readonly],
input[readonly],
textarea[readonly] {
  opacity: 0.5;
}


/* ==========================================================================
   Custom (HTML) Forms styling
   ========================================================================== */


.form .form__field {
  position: relative;
}
.form .form__field--hasbtn input {
  padding-right: 11em;
}
.form .form__field .form__field__btn {
  position: absolute;
  top: 2.35em;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0.75em;
  z-index: 2;
  margin: 0;
}
@media only screen and (min-width: 700px) {
  .form .form__field .form__field__btn {
    right: 0.65em;
  }
}
@media only screen and (min-width: 1000px) {
  .form .form__field .form__field__btn {
    right: 0.8em;
    top: 2.5em;
  }
}
@media only screen and (min-width: 1600px) {
  .form .form__field .form__field__btn {
    right: 0.85em;
  }
}
.form .form__checkbox {
  position: relative;
  padding-left: 2em;
  display: inline-block;
  margin-top: 1em;
}
.form .form__checkbox input[type=checkbox] {
  position: absolute;
  left: 0;
  top: 0.35em;
}
@media only screen and (min-width: 1200px) {
  .form .form__checkbox input[type=checkbox] {
    top: 0.45em;
  }
}
.form--access input {
  background-color: rgba(248, 121, 93, 0.05);
  border-color: transparent;
  border-radius: 2em;
}
.form--access label.error,
.form--access label.success {
  background: rgba(255, 0, 51, 0.75);
  color: #ccc;
  display: block;
  padding: 0.5em 1.5em;
  border-radius: 2em;
  margin-bottom: 0.5em;
  text-align: center;
}
.form--access label.success {
  background: rgba(248, 121, 93, 0.75);
}
.form--access .form__field label.error {
  margin-top: 0.5em;
  margin-bottom: 0;
}

/* ==========================================================================
   Ninja Forms Styling
   ========================================================================== */
.nf-form-fields-required {
  display: none !important;
}

.nf-form-title h3 {
  margin: 0 0 1em;
}

.nf-form-cont .label-above .nf-field-label {
  margin-bottom: 5px;
}

.nf-form-cont .nf-field-description {
  margin-bottom: 10px;
  font-size: 11px;
}
@media only screen and (min-width: 550px) {
  .nf-form-cont .nf-field-description {
    font-size: 11px;
  }
}
@media only screen and (min-width: 700px) {
  .nf-form-cont .nf-field-description {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1000px) {
  .nf-form-cont .nf-field-description {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1200px) {
  .nf-form-cont .nf-field-description {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1400px) {
  .nf-form-cont .nf-field-description {
    font-size: 13px;
  }
}
@media only screen and (min-width: 1600px) {
  .nf-form-cont .nf-field-description {
    font-size: 14px;
  }
}

.label-right .checkbox-wrap {
  flex-wrap: wrap;
}

.label-right .checkbox-wrap .nf-field-label {
  flex-basis: 90%;
}

.submit-wrap .nf-field-element {
  position: relative;
  display: inline-block;
  width: auto !important;
}
.submit-wrap .nf-field-element:before {
  content: "";
  font-family: "Font Awesome 5 Pro";
  font-weight: 200;
  margin-left: 1em;
  position: absolute;
  z-index: 1;
  pointer-events: none;
  opacity: 0;
  top: 1.35em;
  left: 1.25em;
  color: #ccc;
  -webkit-transition: opacity 250ms ease-out 0ms;
  -moz-transition: opacity 250ms ease-out 0ms;
  transition: opacity 250ms ease-out 0ms;
  font-size: 10px;
}
@media only screen and (min-width: 550px) {
  .submit-wrap .nf-field-element:before {
    font-size: 10px;
  }
}
@media only screen and (min-width: 700px) {
  .submit-wrap .nf-field-element:before {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1000px) {
  .submit-wrap .nf-field-element:before {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1200px) {
  .submit-wrap .nf-field-element:before {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1400px) {
  .submit-wrap .nf-field-element:before {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1600px) {
  .submit-wrap .nf-field-element:before {
    font-size: 12px;
  }
}
.submit-wrap .nf-field-element:hover:before {
  opacity: 1;
  -webkit-transition: opacity 250ms ease-out 150ms;
  -moz-transition: opacity 250ms ease-out 150ms;
  transition: opacity 250ms ease-out 150ms;
}
.submit-wrap .nf-field-element input[type=button] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: linear-gradient(to right, #F6603E 50%, #F8795D 50%);
  background-size: 210% 100%;
  background-position: right bottom;
  -webkit-transition: padding 250ms ease-out, color 250ms ease-out 0ms, background-position 250ms ease-out 0ms;
  -moz-transition: padding 250ms ease-out, color 250ms ease-out 0ms, background-position 250ms ease-out 0ms;
  transition: padding 250ms ease-out, color 250ms ease-out 0ms, background-position 250ms ease-out 0ms;
  color: #ccc;
  display: inline-block;
  margin: 0;
  padding: 1em 3em;
  padding: 1.5em 3.5em;
  border-radius: 3em;
  border: none;
  font-family: "rosario", Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 1.75px;
  cursor: pointer;
  font-size: 10px;
}
@media only screen and (min-width: 550px) {
  .submit-wrap .nf-field-element input[type=button] {
    font-size: 10px;
  }
}
@media only screen and (min-width: 700px) {
  .submit-wrap .nf-field-element input[type=button] {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1000px) {
  .submit-wrap .nf-field-element input[type=button] {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1200px) {
  .submit-wrap .nf-field-element input[type=button] {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1400px) {
  .submit-wrap .nf-field-element input[type=button] {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1600px) {
  .submit-wrap .nf-field-element input[type=button] {
    font-size: 12px;
  }
}
.submit-wrap .nf-field-element input[type=button]:hover {
  background-position: left bottom;
  color: #ccc;
  padding: 1em 2em 1em 4em;
  padding: 1.5em 2.5em 1.5em 4.5em;
}

input[type=radio],
input[type=checkbox] {
  border: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  cursor: pointer;
  margin-right: 10px;
}
input[type=radio]:focus,
input[type=checkbox]:focus {
  outline: none;
}
input[type=radio]:checked,
input[type=checkbox]:checked {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
}
input[type=radio]:after,
input[type=checkbox]:after {
  border: 2px solid #080808;
  border-radius: 3px;
  content: "";
  position: absolute;
  top: -3px;
  left: 0px;
  width: 17px;
  height: 17px;
  transition: all 0.5s ease;
  box-sizing: border-box;
}
.color--white input[type=radio]:after,
.color--white input[type=checkbox]:after {
  border: 2px solid #fff;
}
input[type=radio]:before,
input[type=checkbox]:before {
  background: #fff;
  border-radius: 3px;
  content: "";
  position: absolute;
  top: 1px;
  left: 4px;
  width: 9px;
  height: 9px;
  z-index: 18;
  transition: all 0.5s ease;
}
input[type=radio]:checked::before,
input[type=checkbox]:checked::before {
  background: #F8795D;
  transition: all 0.5s ease;
}
input[type=radio]:checked::after,
input[type=checkbox]:checked::after {
  border: 2px solid #F8795D;
  transition: all 0.5s ease;
}

input[type=checkbox]:before {
  content: "";
  font-family: "Font Awesome 5 Pro";
  font-weight: 700;
  color: transparent;
  background: transparent;
  font-size: 10px;
  top: 0px;
  left: 3.5px;
}
input[type=checkbox]:checked:before {
  background: transparent;
  color: #F8795D;
}

input[type=radio]:after {
  border-radius: 50%;
}
input[type=radio]:before {
  border-radius: 50%;
}

.checkbox-container.label-right .checkbox-wrap .nf-field-label {
  padding-left: 10px;
}
.checkbox-container input[type=checkbox]::after {
  top: -14px;
}
.checkbox-container input[type=checkbox]::before {
  top: -11px;
}
@media only screen and (min-width: 1400px) {
  .checkbox-container input[type=checkbox]::after {
    top: -16px;
  }
  .checkbox-container input[type=checkbox]::before {
    top: -13px;
  }
}

.list-checkbox-wrap .nf-field-element li label,
.list-radio-wrap .nf-field-element li label,
.nf-form-content .checkbox-container .nf-field-label label,
.form-check-inline .form-check-label {
  color: #080808;
  font-weight: 700;
  font-size: 0.85rem;
}
.list-checkbox-wrap .nf-field-element li label.nf-checked-label, .list-checkbox-wrap .nf-field-element li label.form-check-label--checked,
.list-radio-wrap .nf-field-element li label.nf-checked-label,
.list-radio-wrap .nf-field-element li label.form-check-label--checked,
.nf-form-content .checkbox-container .nf-field-label label.nf-checked-label,
.nf-form-content .checkbox-container .nf-field-label label.form-check-label--checked,
.form-check-inline .form-check-label.nf-checked-label,
.form-check-inline .form-check-label.form-check-label--checked {
  color: #F8795D;
}

.list-checkbox-wrap .nf-field-element li label,
.list-radio-wrap .nf-field-element li label,
.form-check-inline .form-check-label {
  margin-left: 30px !important;
}

.nf-error-msg,
label.error,
label.success {
  font-weight: 700;
  font-size: 12px;
  line-height: 1.5;
}
@media only screen and (min-width: 550px) {
  .nf-error-msg,
label.error,
label.success {
    font-size: 13px;
  }
}
@media only screen and (min-width: 700px) {
  .nf-error-msg,
label.error,
label.success {
    font-size: 14px;
  }
}
@media only screen and (min-width: 1000px) {
  .nf-error-msg,
label.error,
label.success {
    font-size: 14px;
  }
}
@media only screen and (min-width: 1200px) {
  .nf-error-msg,
label.error,
label.success {
    font-size: 15px;
  }
}
@media only screen and (min-width: 1400px) {
  .nf-error-msg,
label.error,
label.success {
    font-size: 15px;
  }
}
@media only screen and (min-width: 1600px) {
  .nf-error-msg,
label.error,
label.success {
    font-size: 16px;
  }
}

.nf-error-msg,
label.error {
  color: #ff0033;
}

.nf-error .nf-element,
input.error {
  border: 1px solid #ff0033;
}

/*  ==========================================================================
  Basic layout classes -- layout/layout.scss
  ========================================================================== */
body {
  font-family: "open-sans", Helvetica, Arial, sans-serif;
  margin: 0;
  padding: 0;
  color: #5a5151;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  max-width: 100%;
}
body.mobnavopen {
  height: 100vh;
  overflow: hidden;
}

.noselect {
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Safari */
  -khtml-user-select: none;
  /* Konqueror HTML */
  -moz-user-select: none;
  /* Old versions of Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}

.hide {
  display: none;
}

.bd {
  position: relative;
  min-height: 1px;
  margin: 0 1.5em;
}
@media only screen and (min-width: 550px) {
  .bd {
    margin: 0 2.5em;
  }
}
@media only screen and (min-width: 700px) {
  .bd {
    margin: 0 2.5em;
  }
}
@media only screen and (min-width: 1000px) {
  .bd {
    margin: 0 2em;
  }
}
@media only screen and (min-width: 1200px) {
  .bd {
    margin: 0 2em;
  }
}
@media only screen and (min-width: 1400px) {
  .bd {
    margin: 0 2em;
  }
}
@media only screen and (min-width: 1600px) {
  .bd {
    margin: 0 auto;
    max-width: calc(1600px - (2em * 2));
  }
}
.bd:after {
  content: "";
  visibility: hidden;
  display: block;
  height: 0;
  clear: both;
}

.padding--top {
  padding-top: 10%;
}
@media only screen and (min-width: 550px) {
  .padding--top {
    padding-top: 7%;
  }
}
@media only screen and (min-width: 1200px) {
  .padding--top {
    padding-top: 5%;
  }
}

.padding--bottom {
  padding-bottom: 10%;
}
@media only screen and (min-width: 550px) {
  .padding--bottom {
    padding-bottom: 7%;
  }
}
@media only screen and (min-width: 1200px) {
  .padding--bottom {
    padding-bottom: 5%;
  }
}

.padding--top-half {
  padding-top: 7%;
}
@media only screen and (min-width: 550px) {
  .padding--top-half {
    padding-top: 3.5%;
  }
}
@media only screen and (min-width: 1200px) {
  .padding--top-half {
    padding-top: 3.5%;
  }
}

.padding--bottom-half {
  padding-bottom: 7%;
}
@media only screen and (min-width: 550px) {
  .padding--bottom-half {
    padding-bottom: 3.5%;
  }
}
@media only screen and (min-width: 1200px) {
  .padding--bottom-half {
    padding-bottom: 3.5%;
  }
}

.padding--top-em {
  padding-top: 1em;
}

.padding--bottom-em {
  padding-bottom: 1em;
}

.margin--top {
  margin-top: 10%;
}
@media only screen and (min-width: 550px) {
  .margin--top {
    margin-top: 7%;
  }
}
@media only screen and (min-width: 1200px) {
  .margin--top {
    margin-top: 5%;
  }
}

.margin--bottom {
  margin-bottom: 10%;
}
@media only screen and (min-width: 550px) {
  .margin--bottom {
    margin-bottom: 7%;
  }
}
@media only screen and (min-width: 1200px) {
  .margin--bottom {
    margin-bottom: 5%;
  }
}

.margin--top-half {
  margin-top: 7%;
}
@media only screen and (min-width: 550px) {
  .margin--top-half {
    margin-top: 3.5%;
  }
}
@media only screen and (min-width: 1200px) {
  .margin--top-half {
    margin-top: 3.5%;
  }
}

.margin--bottom-half {
  margin-bottom: 7%;
}
@media only screen and (min-width: 550px) {
  .margin--bottom-half {
    margin-bottom: 3.5%;
  }
}
@media only screen and (min-width: 1200px) {
  .margin--bottom-half {
    margin-bottom: 3.5%;
  }
}

.margin--top-em {
  margin-top: 1em;
}

.margin--bottom-em {
  margin-bottom: 1em;
}

.margin--none {
  margin: 0;
}



.clearfix {
  *zoom: 1;
}
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}

.jumpto_anchor {
  position: absolute !important;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  margin-top: -6em;
}

.smallline {
  position: relative;
}
.smallline--before {
  padding-top: 0.5em;
}
.smallline--before:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 2rem;
  height: 1px;
  background: rgba(248, 121, 93, 0.15);
}
.smallline--after {
  padding-bottom: 0.5em;
}
.smallline--after:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 2rem;
  height: 1px;
  background: rgba(248, 121, 93, 0.15);
}

/*  ==========================================================================
  Page Transitions
  ========================================================================== */
body.page-transitioning {
  height: 100vh;
  width: 100vw;
  overflow: hidden;
}

.transition-overlay {
  background-color: #080808;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999999;
  pointer-events: none;
  text-align: center;
  box-sizing: border-box;
  will-change: left;
  -webkit-transition: opacity 500ms ease-in-out;
  -moz-transition: opacity 500ms ease-in-out;
  transition: opacity 500ms ease-in-out;
}

.ie .transition-overlay {
  display: none !important;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  /* IE10+ CSS styles go here */
  .transition-overlay {
    display: none !important;
  }
}
/*  ==========================================================================
  main
  ========================================================================== */
.main {
  /* Full width layout */
  /* Single col layout */
}
.main--singlecol .main__col--right {
  /* double up padding and margins on screens when its using half width */
}
@media only screen and (min-width: 1000px) {
  .main--singlecol .main__col--right .padding--top {
    padding-top: calc(7% * 1.5);
  }
}
@media only screen and (min-width: 1200px) {
  .main--singlecol .main__col--right .padding--top {
    padding-top: calc(5% * 1.5);
  }
}
@media only screen and (min-width: 1000px) {
  .main--singlecol .main__col--right .padding--bottom {
    padding-bottom: calc(7% * 1.5);
  }
}
@media only screen and (min-width: 1200px) {
  .main--singlecol .main__col--right .padding--bottom {
    padding-bottom: calc(5% * 1.5);
  }
}
@media only screen and (min-width: 1000px) {
  .main--singlecol .main__col--right .padding--top-half {
    padding-top: calc(3.5% * 1.5);
  }
}
@media only screen and (min-width: 1200px) {
  .main--singlecol .main__col--right .padding--top-half {
    padding-top: calc(3.5% * 1.5);
  }
}
@media only screen and (min-width: 1000px) {
  .main--singlecol .main__col--right .padding--bottom-half {
    padding-bottom: calc(3.5% * 1.5);
  }
}
@media only screen and (min-width: 1200px) {
  .main--singlecol .main__col--right .padding--bottom-half {
    padding-bottom: calc(3.5% * 1.5);
  }
}
@media only screen and (min-width: 1000px) {
  .main--singlecol .main__col--right .margin--top {
    margin-top: calc(7% * 1.5);
  }
}
@media only screen and (min-width: 1200px) {
  .main--singlecol .main__col--right .margin--top {
    margin-top: calc(5% * 1.5);
  }
}
@media only screen and (min-width: 1000px) {
  .main--singlecol .main__col--right .margin--bottom {
    margin-bottom: calc(7% * 1.5);
  }
}
@media only screen and (min-width: 1200px) {
  .main--singlecol .main__col--right .margin--bottom {
    margin-bottom: calc(5% * 1.5);
  }
}
@media only screen and (min-width: 1000px) {
  .main--singlecol .main__col--right .margin--top-half {
    margin-top: calc(3.5% * 1.5);
  }
}
@media only screen and (min-width: 1200px) {
  .main--singlecol .main__col--right .margin--top-half {
    margin-top: calc(3.5% * 1.5);
  }
}
@media only screen and (min-width: 1000px) {
  .main--singlecol .main__col--right .margin--bottom-half {
    margin-bottom: calc(3.5% * 1.5);
  }
}
@media only screen and (min-width: 1200px) {
  .main--singlecol .main__col--right .margin--bottom-half {
    margin-bottom: calc(3.5% * 1.5);
  }
}

/*  ==========================================================================
  base nav
  ========================================================================== */
nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.inlinenavlist {
  margin: 0 -0.75em;
}
.inlinenavlist li {
  display: inline-block;
  margin: 0;
  padding: 0;
}
.inlinenavlist li a {
  display: block;
  padding: 0 0.75em;
}

/*  ==========================================================================
  Date Circles
  ========================================================================== */
.datecircle {
  width: 3em;
  height: 3em;
  background: #f34f47;
  border-radius: 50%;
  text-align: center;
  position: relative;
}
.datecircle .datecircle__content {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #fff;
}
.datecircle .datecircle__content .datecircle__content__date,
.datecircle .datecircle__content .datecircle__content__month {
  display: block;
  line-height: 1.1;
}
.datecircle .datecircle__content .datecircle__content__month {
  font-size: 0.6em;
}

/*  ==========================================================================
  Page
  ========================================================================== */
.pageheader {
  text-align: center;
  position: relative;
  /* Pageheader background */
  /* pageheader--img */
  /* pageheader--video */
  /* pageheader--gallery */
  /* pageheader--company */
  /* Homepage Header* */
  /* Left aligned header (blog categories, locations, community page & single demo days) */
  /* Demo Days, Locations Headers */
}
.pageheader .pageheader__bd {
  position: relative;
  z-index: 2;
}
.pageheader .pageheader__preheading {
  margin: 0 0 0.5em 0;
}
.pageheader .pageheader__leader {
  margin: 1em auto 0 auto;
  max-width: 30em;
}
.pageheader .pageheader__heading {
  max-width: 14em;
  margin: 0 auto;
}
.pageheader .pageheader__heading.fontsize--med {
  max-width: 26em;
}
.pageheader .pageheader__btn {
  margin: 3em 0 0 0;
}
.pageheader .pageheader__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background: #080808;
 /* background: linear-gradient(152deg, #4D2053 0%, #000000 53%);*/
  overflow: hidden;
  height: calc(100% + 13em);
  margin-top: -13em;
}
.pageheader .pageheader__bg--gradient .pageheader__bg__content {
  opacity: 0.35;
}
.pageheader .pageheader__img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 1;
  opacity: 0;
  -webkit-transition: opacity 1000ms ease-out 0ms;
  -moz-transition: opacity 1000ms ease-out 0ms;
  transition: opacity 1000ms ease-out 0ms;
}
.pageheaderimg--loaded .pageheader .pageheader__img {
  -webkit-transition: opacity 2000ms ease-out 0;
  -moz-transition: opacity 2000ms ease-out 0;
  transition: opacity 2000ms ease-out 0;
  opacity: 1;
}
.pageheader .pageheader__video {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 1;
  opacity: 0;
  -webkit-transition: opacity 2000ms ease-out 0ms;
  -moz-transition: opacity 2000ms ease-out 0ms;
  transition: opacity 2000ms ease-out 0ms;
}
.pageheader .pageheader__video iframe {
  width: 100vw;
  height: 56.25vw;
  /* Given a 16:9 aspect ratio, 9/16*100 = 56.25 */
  min-height: 100vh;
  min-width: 177.77vh;
  /* Given a 16:9 aspect ratio, 16/9*100 = 177.77 */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.has-videoheader--playing .pageheader .pageheader__video {
  opacity: 1;
}
.pageheader .pageheader__gallery {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  opacity: 0;
  -webkit-transition: opacity 1000ms ease-out 0ms;
  -moz-transition: opacity 1000ms ease-out 0ms;
  transition: opacity 1000ms ease-out 0ms;
}
.pageheader .pageheader__gallery.owl-loaded {
  opacity: 1;
}
.pageheader .pageheader__gallery .owl-item,
.pageheader .pageheader__gallery .owl-stage,
.pageheader .pageheader__gallery .owl-stage-outer {
  height: 100%;
}
.pageheader .pageheader__gallery .owl-item {
  overflow: hidden;
}
.pageheader .pageheader__gallery .pageheader__gallery__img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 1;
  -webkit-transition: opacity 1000ms ease-out 0ms;
  -moz-transition: opacity 1000ms ease-out 0ms;
  transition: opacity 1000ms ease-out 0ms;
}
.pageheader--fullheight {
  height: 100vh;
  box-sizing: border-box;
}
.pageheader--fullheight .pageheader__bd {
  height: 100%;
}
.pageheader--fullheight .pageheader__bd .gd-g--vertcenter {
  height: 100%;
  box-sizing: border-box;
}
.pageheader--company {
  text-align: left;
}
.pageheader--company .pageheader__heading {
  max-width: 16em;
  margin-left: 0;
}
.pageheader--company .pageheader__btns {
  margin-top: 1.5em;
}
.pageheader--company .pageheader__btns .btn {
  margin: 0;
  display: inline-block;
  vertical-align: top;
  margin-right: 1em;
}
.pageheader--company .pageheader__btns .btn:last-child {
  margin-right: 0;
}
.pageheader--home {
 /* background: #000000;*/
  background: #000;
  
  color: #fff;
  text-align: left;
  overflow: hidden;
}
.pageheader--home .pageheader__heading {
  max-width: none;
  margin: 0;
}
@media only screen and (min-width: 700px) {
  .pageheader--home {
    height: 100vh;
  }
  .pageheader--home .pageheader__wrap,
.pageheader--home .pageheader__bd,
.pageheader--home .pageheader__gd-g {
    height: 100%;
    box-sizing: border-box;
    z-index: 0;
  }
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .pageheader--home {
    /* IE10 & 11 CSS styles go here */
  }
  .pageheader--home .pageheader__wrap {
    position: absolute;
    height: auto;
    top: 50%;
    width: 100%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .pageheader--home .pageheader__bd {
    height: auto;
  }
}
.pageheader--home .pageheader__body {
  max-width: 40em;
}
.pageheader--home .pageheader__btn {
  margin: 2em 0 0 0;
}
.pageheader--category:not(.pageheader--countdown), .page-template-template-people .pageheader:not(.pageheader--countdown), .single-demodays .pageheader:not(.pageheader--countdown), .single-locations .pageheader:not(.pageheader--countdown) {
  text-align: left;
}
.pageheader--category:not(.pageheader--countdown) .pageheader__leader,
.pageheader--category:not(.pageheader--countdown) .pageheader__heading, .page-template-template-people .pageheader:not(.pageheader--countdown) .pageheader__leader,
.page-template-template-people .pageheader:not(.pageheader--countdown) .pageheader__heading, .single-demodays .pageheader:not(.pageheader--countdown) .pageheader__leader,
.single-demodays .pageheader:not(.pageheader--countdown) .pageheader__heading, .single-locations .pageheader:not(.pageheader--countdown) .pageheader__leader,
.single-locations .pageheader:not(.pageheader--countdown) .pageheader__heading {
  margin-left: 0;
}
.page-template-template-people .pageheader, .single-demodays .pageheader, .single-locations .pageheader {
  /* Pageheader flipclock */
  /* Pageheader accessform */
}
@media only screen and (min-width: 1000px) {
  .page-template-template-people .pageheader:not(.pageheader--countdown) .pageheader__content, .single-demodays .pageheader:not(.pageheader--countdown) .pageheader__content, .single-locations .pageheader:not(.pageheader--countdown) .pageheader__content {
    padding: 0 10%;
  }
 
}
.page-template-template-people .pageheader .pageheader__flipdown, .single-demodays .pageheader .pageheader__flipdown, .single-locations .pageheader .pageheader__flipdown {
  margin-left: auto;
  margin-right: auto;
}
.page-template-template-people .pageheader .pageheader__flipdown .pageheader__flipdown__heading, .single-demodays .pageheader .pageheader__flipdown .pageheader__flipdown__heading, .single-locations .pageheader .pageheader__flipdown .pageheader__flipdown__heading {
  margin: 0 0 1.5em 0;
}
.page-template-template-people .pageheader .pageheader__accessform, .single-demodays .pageheader .pageheader__accessform, .single-locations .pageheader .pageheader__accessform {
  max-width: 40em;
}
.page-template-template-people .pageheader .pageheader__accessform .pageheader__accessform__info, .single-demodays .pageheader .pageheader__accessform .pageheader__accessform__info, .single-locations .pageheader .pageheader__accessform .pageheader__accessform__info {
  margin: 2em 0 0 0;
  max-width: 40em;
}
.page-template-template-people .pageheader:not(.pageheader--default) .pageheader__accessform input, .single-demodays .pageheader:not(.pageheader--default) .pageheader__accessform input, .single-locations .pageheader:not(.pageheader--default) .pageheader__accessform input {
  color: #ccc;
  background: rgba(255, 255, 255, 0.15);
}
.page-template-template-people .pageheader:not(.pageheader--default) .pageheader__accessform input.placeholder, .single-demodays .pageheader:not(.pageheader--default) .pageheader__accessform input.placeholder, .single-locations .pageheader:not(.pageheader--default) .pageheader__accessform input.placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.page-template-template-people .pageheader:not(.pageheader--default) .pageheader__accessform input:-moz-placeholder, .single-demodays .pageheader:not(.pageheader--default) .pageheader__accessform input:-moz-placeholder, .single-locations .pageheader:not(.pageheader--default) .pageheader__accessform input:-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.page-template-template-people .pageheader:not(.pageheader--default) .pageheader__accessform input::-moz-placeholder, .single-demodays .pageheader:not(.pageheader--default) .pageheader__accessform input::-moz-placeholder, .single-locations .pageheader:not(.pageheader--default) .pageheader__accessform input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.page-template-template-people .pageheader:not(.pageheader--default) .pageheader__accessform input:-ms-input-placeholder, .single-demodays .pageheader:not(.pageheader--default) .pageheader__accessform input:-ms-input-placeholder, .single-locations .pageheader:not(.pageheader--default) .pageheader__accessform input:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.page-template-template-people .pageheader:not(.pageheader--default) .pageheader__accessform input::-webkit-input-placeholder, .single-demodays .pageheader:not(.pageheader--default) .pageheader__accessform input::-webkit-input-placeholder, .single-locations .pageheader:not(.pageheader--default) .pageheader__accessform input::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.page-template-template-people .pageheader:not(.pageheader--default) .pageheader__accessform .btn, .single-demodays .pageheader:not(.pageheader--default) .pageheader__accessform .btn, .single-locations .pageheader:not(.pageheader--default) .pageheader__accessform .btn {
  background-image: linear-gradient(to right, #F8795D 50%, #fff 50%);
  color: #080808;
}
.page-template-template-people .pageheader:not(.pageheader--default) .pageheader__accessform .btn:hover, .single-demodays .pageheader:not(.pageheader--default) .pageheader__accessform .btn:hover, .single-locations .pageheader:not(.pageheader--default) .pageheader__accessform .btn:hover {
  color: #ccc;
}

.no-touch .has-videoheader .pageheader__img {
  display: none;
}

/*  ==========================================================================
  content -- layout/layout.scss
  ========================================================================== */
.content {
  margin: 0 auto;
  box-sizing: border-box;
  /* Styling for .content - for archive posts */
}
@media only screen and (min-width: 550px) {
  .content {
    width: 80%;
    padding: 0 calc(0.75em/ 2);
  }
}
@media only screen and (min-width: 700px) {
  .content {
    width: 66.8%;
    padding: 0 calc(1em/ 2);
  }
}
@media only screen and (min-width: 1000px) {
  .content {
    width: 50%;
    padding: 0 calc(1em/ 2);
  }
}
@media only screen and (min-width: 1600px) {
  .content {
    width: 40%;
  }
}
.content ul,
.content ol {
  margin-left: 0.5em;
  margin-bottom: 2em;
}
.content ul li,
.content ol li {
  margin-bottom: 1em;
  padding-left: 1.5em;
  font-weight: 700;
}
.content ul li::marker,
.content ol li::marker {
  font-weight: 400;
  color: #F8795D;
}
.content ul li::marker {
  font-family: "Font Awesome 5 Pro";
  font-size: 0.85em;
  content: "";
}
.content .wp-caption {
  width: 100% !important;
  height: auto;
}
.content h1,
.content h2 {
  margin-top: 10%;
  margin-bottom: 10%;
}
@media only screen and (min-width: 550px) {
  .content h1,
.content h2 {
    margin-top: 7%;
    margin-bottom: 7%;
  }
}
@media only screen and (min-width: 1200px) {
  .content h1,
.content h2 {
    margin-top: 5%;
    margin-bottom: 5%;
  }
}
.content figure {
  margin-top: 10%;
  margin-bottom: 10%;
}
@media only screen and (min-width: 550px) {
  .content figure {
    margin-top: 7%;
    margin-bottom: 7%;
  }
}
@media only screen and (min-width: 1200px) {
  .content figure {
    margin-top: 5%;
    margin-bottom: 5%;
  }
}
.content figure .wp-caption-text,
.content figure figcaption {
  position: relative;
  color: rgba(45, 21, 48, 0.5);
  margin-top: 1em;
  padding-bottom: 1em;
  font-size: 11px;
  line-height: 1.5;
}
@media only screen and (min-width: 550px) {
  .content figure .wp-caption-text,
.content figure figcaption {
    font-size: 11px;
  }
}
@media only screen and (min-width: 700px) {
  .content figure .wp-caption-text,
.content figure figcaption {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1000px) {
  .content figure .wp-caption-text,
.content figure figcaption {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1200px) {
  .content figure .wp-caption-text,
.content figure figcaption {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1400px) {
  .content figure .wp-caption-text,
.content figure figcaption {
    font-size: 13px;
  }
}
@media only screen and (min-width: 1600px) {
  .content figure .wp-caption-text,
.content figure figcaption {
    font-size: 14px;
  }
}
.content figure .wp-caption-text:after,
.content figure figcaption:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 2rem;
  height: 1px;
  background: rgba(248, 121, 93, 0.15);
}
.content img {
  width: 100%;
  height: auto;
  border-radius: 0.5em;
  overflow: hidden;
  -webkit-box-shadow: 0px 0px 25px 0px rgba(45, 21, 48, 0.15);
  -moz-box-shadow: 0px 0px 25px 0px rgba(45, 21, 48, 0.15);
  box-shadow: 0px 0px 25px 0px rgba(45, 21, 48, 0.15);
}
.content iframe {
  width: 100%;
}

/*  ==========================================================================
  Section header -- layout/layout.scss
  ========================================================================== */
.sectionheader {
  box-sizing: border-box;
  position: relative;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 550px) {
  .sectionheader {
    padding: 0 10%;
  }
}
@media only screen and (min-width: 1000px) {
  .sectionheader {
    text-align: left;
    margin-left: 0;
    margin-right: 0;
    max-width: 28em;
  }
}
@media only screen and (min-width: 1400px) {
  .sectionheader {
    max-width: 32em;
  }
}
.sectionheader .sectionheader__preheading {
  margin: 0 0 0.5em;
}
.sectionheader .sectionheader__heading {
  margin: 0;
}
.sectionheader .sectionheader__text {
  margin: 1em 0 -1em 0;
}
.sectionheader .sectionheader__btns {
  margin: 2em 0 0 0;
}
.sectionheader .sectionheader__btns .sectionheader__btn {
  margin: 0.5em 0 0 0;
}
.sectionheader .sectionheader__btn {
  display: inline-block;
  margin: 2.5em 0 0 0;
}
.gd-u-gt700-2-3 .sectionheader {
  max-width: 9999px;
}
@media only screen and (min-width: 1000px) {
  .gd-u-gt700-2-3 .sectionheader {
    max-width: 32em;
  }
}
@media only screen and (min-width: 700px) {
  .gd-u-gt700-1-2 .sectionheader {
    text-align: left;
    margin-left: 0;
    margin-right: 0;
  }
}

/*  ==========================================================================
  posts -- layout/layout.scss
  ========================================================================== */
.posts {
  position: relative;
  margin-bottom: calc(-0.75em * 4);
}
@media only screen and (min-width: 550px) {
  .posts {
    margin-bottom: calc(-0.75em * 4);
  }
}
@media only screen and (min-width: 700px) {
  .posts {
    margin-bottom: calc(-1em * 4);
  }
}
@media only screen and (min-width: 1000px) {
  .posts {
    margin-bottom: calc(-1em * 4);
  }
}
.posts .posts__line {
  height: 100%;
  position: absolute;
  border-left: 1px solid rgba(248, 121, 93, 0.15);
  display: none;
}
.posts .posts__line--1 {
  left: 50%;
  display: block;
}
@media only screen and (min-width: 700px) {
  .posts .posts__line--1 {
    left: 33.33%;
  }
  .posts .posts__line--2 {
    display: block;
    left: 66.66%;
  }
}
@media only screen and (min-width: 1200px) {
  .posts .posts__line--1 {
    left: 20%;
  }
  .posts .posts__line--2 {
    left: 40%;
  }
  .posts .posts__line--3 {
    display: block;
    left: 60%;
  }
  .posts .posts__line--4 {
    display: block;
    left: 80%;
  }
}

.post {
  position: relative;
  margin-bottom: calc(0.75em * 4);
}
@media only screen and (min-width: 550px) {
  .post {
    margin-bottom: calc(0.75em * 4);
  }
}
@media only screen and (min-width: 700px) {
  .post {
    margin-bottom: calc(1em * 4);
  }
}
@media only screen and (min-width: 1000px) {
  .post {
    margin-bottom: calc(1em * 4);
  }
}
.post .post__link {
  position: relative;
  z-index: 1;
}
.post .post__link .postimg {
  position: relative;
  margin-bottom: 1em;
}
.post .post__link .postimg .postimg__img {
  width: 100%;
  display: block;
  height: auto;
}
.post .post__link .postimg--fixedheight {
  padding: 66.6% 0 0;
}
.post .post__link .postimg--fixedheight .postimg__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: rgba(248, 121, 93, 0.05);
  overflow: hidden;
}
.post .post__link .postimg .post__eventdate,
.post .post__link .postimg .post__author {
  position: absolute;
  bottom: 0;
  right: 1em;
  margin-bottom: -0.5em;
}
.post .post__link .postimg .post__author {
  width: 3em;
  height: 3em;
  border: 1px solid #F8795D;
  border-radius: 50%;
  overflow: hidden;
}
.post .post__link .postimg .post__author .post__author__img {
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.post .post__tag {
  position: absolute;
  bottom: 0;
  left: 0;
  margin: 5px;
  padding: 0.5em 1em;
  border-radius: 3px;
  color: rgba(45, 21, 48, 0.5);
  border: 1px solid rgba(248, 121, 93, 0.15);
  background: #fff;
  z-index: 1;
}
.post .post__categories {
  margin-bottom: 0.5em;
}
.post .post__categories a {
  opacity: 0.5;
}
.post .post__categories a:hover {
  opacity: 1;
}
.post .post__heading {
  margin: 0.5em 0 0.5em;
  max-width: 20em;
}
.post .post__heading .fa-external-link {
  vertical-align: baseline;
  padding-left: 0.25em;
}
.post:hover .post__heading {
  color: #F8795D;
}

/*  ==========================================================================
  paging -- layout/layout.scss
  ========================================================================== */
.paging {
  position: relative;
  padding: 0;
  margin-bottom: 0;
  border-top: solid 1px rgba(45, 21, 48, 0.05);
}
@media only screen and (min-width: 700px) {
  .paging {
    border-bottom: solid 1px rgba(45, 21, 48, 0.05);
  }
  .paging .paging__bd {
    border-bottom: solid 1px rgba(45, 21, 48, 0.05);
    border-top: solid 1px rgba(45, 21, 48, 0.05);
  }
}
.paging .paging__numbers {
  display: none;
}
.paging .paging__numbers a,
.paging .paging__numbers span {
  padding: 1.5em;
  border: none;
  border-right: solid 1px rgba(45, 21, 48, 0.05);
  display: block;
  float: left;
  min-width: 1.4em;
  text-align: center;
}
.paging .paging__numbers .current {
  color: #888;
}
@media only screen and (min-width: 700px) {
  .paging .paging__numbers {
    display: block;
  }
}
.paging .paging__nextprev {
  text-align: center;
  padding: 0.5em;
}
.paging .paging__nextprev .btn {
  margin-bottom: 0;
}
@media only screen and (min-width: 700px) {
  .paging .paging__nextprev {
    position: absolute;
    padding: 0;
    right: 0;
    top: 50%;
    margin-top: -1.75em;
  }
}

/*  ==========================================================================
  Search results page -- layout/layout.scss
  ========================================================================== */
.searchpagefield {
  position: relative;
}
.searchpagefield input {
  background: none;
  padding-right: 4em;
  position: relative;
  z-index: 1;
}

.searchpagesubmit {
  padding: 1em 1.25em;
  border: none;
  position: absolute;
  z-index: 2;
  top: 1px;
  right: 1px;
  background: none;
  text-align: center;
}
.searchpagesubmit:hover {
  background: #888;
}




/*  ==========================================================================
  companies -- layout/layout.scss
  ========================================================================== */
.companiesintro {
  /* Hightlight company / company of the month */
}
.companiesintro .highlightcompany {
  position: relative;
}
.companiesintro .highlightcompany .highlightcompany__content {
  position: relative;
}
.companiesintro .highlightcompany .highlightcompany__content .highlightcompany__content__content {
  margin-top: 3em;
  padding: 0 15%;
}
@media only screen and (min-width: 550px) {
  .companiesintro .highlightcompany .highlightcompany__content .highlightcompany__content__content {
    max-width: 30em;
    box-sizing: border-box;
  }
}
@media only screen and (min-width: 1000px) {
  .companiesintro .highlightcompany .highlightcompany__content .highlightcompany__content__content {
    margin-top: 1em;
  }
}
.companiesintro .highlightcompany .highlightcompany__content .highlightcompany__preheading {
  margin: 0 0 0 0;
}
.companiesintro .highlightcompany .highlightcompany__content .highlightcompany__heading {
  margin: 0.25em 0 0 0;
}
@media only screen and (min-width: 550px) {
  .companiesintro .highlightcompany .highlightcompany__content .highlightcompany__company {
    padding-left: 0;
  }
}
@media only screen and (min-width: 1000px) {
  .companiesintro .highlightcompany .highlightcompany__content .highlightcompany__company {
    padding-left: 1em;
  }
}
@media only screen and (min-width: 550px) {
  .companiesintro .highlightcompany .highlightcompany__content .highlightcompany__company .featuredpost {
    max-width: 30em;
  }
}
.companiesintro .highlightcompany .highlightcompany__content .highlightcompany__company .company {
  margin-top: 2em;
  background: #fff;
  border-radius: 0.5em;
  -webkit-box-shadow: 0px 0px 25px 0px rgba(45, 21, 48, 0.25);
  -moz-box-shadow: 0px 0px 25px 0px rgba(45, 21, 48, 0.25);
  box-shadow: 0px 0px 25px 0px rgba(45, 21, 48, 0.25);
  height: auto;
}
@media only screen and (min-width: 550px) {
  .companiesintro .highlightcompany .highlightcompany__content .highlightcompany__company .company {
    margin-top: 0;
  }
}
@media only screen and (min-width: 1000px) {
  .companiesintro .highlightcompany .highlightcompany__content .highlightcompany__company .company {
    margin-top: 2em;
  }
}
.companiesintro .highlightcompany .highlightcompany__content .highlightcompany__post {
  margin-top: 3em;
}
.companiesintro .highlightcompany .highlightcompany__content .highlightcompany__post--tablet {
  display: none;
}
@media only screen and (min-width: 550px) {
  .companiesintro .highlightcompany .highlightcompany__content .highlightcompany__post--tablet {
    display: block;
  }
}
@media only screen and (min-width: 1000px) {
  .companiesintro .highlightcompany .highlightcompany__content .highlightcompany__post--tablet {
    display: none;
  }
}
@media only screen and (min-width: 550px) {
  .companiesintro .highlightcompany .highlightcompany__content .highlightcompany__post--desktop {
    display: none;
  }
}
@media only screen and (min-width: 1000px) {
  .companiesintro .highlightcompany .highlightcompany__content .highlightcompany__post--desktop {
    display: block;
  }
}
.companiesintro .highlightcompany .highlightcompany__content .highlightcompany__post .post .postimg {
  display: none;
}

/* Companies header, companies grids headings */
.companiesheader {
  padding: 1em 0;
  border-top: 1px solid rgba(248, 121, 93, 0.15);
  border-bottom: 1px solid rgba(248, 121, 93, 0.15);
}
.companiesheader .companiesheader__heading {
  margin: 0;
}

.companies {
  position: relative;
  margin: 0;
  /* Grid only company styles */
}
.companies .gd-u {
  padding: 0;
}
.companies .companies__line {
  height: 100%;
  position: absolute;
  border-left: 1px solid rgba(248, 121, 93, 0.15);
  display: none;
}
.companies .companies__line--1 {
  left: 50%;
  display: block;
}
@media only screen and (min-width: 700px) {
  .companies .companies__line--1 {
    left: 33.33%;
  }
  .companies .companies__line--2 {
    display: block;
    left: 66.66%;
  }
}
@media only screen and (min-width: 1000px) {
  .companies .companies__line--1 {
    left: 25%;
  }
  .companies .companies__line--2 {
    left: 50%;
  }
  .companies .companies__line--3 {
    display: block;
    left: 75%;
  }
}
@media only screen and (min-width: 1400px) {
  .companies .companies__line--1 {
    left: 20%;
  }
  .companies .companies__line--2 {
    left: 40%;
  }
  .companies .companies__line--3 {
    left: 60%;
  }
  .companies .companies__line--4 {
    display: block;
    left: 80%;
  }
}
.companies .company {
  border-bottom: 1px solid rgba(248, 121, 93, 0.15);
}
@media only screen and (min-width: 700px) {
  .companies--featured .companies__line--1 {
    left: 33.33%;
  }
  .companies--featured .companies__line--2 {
    left: 66.66%;
    display: block;
  }
}
@media only screen and (min-width: 1000px) {
  .companies--featured .companies__line--1 {
    left: 50%;
  }
  .companies--featured .companies__line--2 {
    display: none;
  }
}
@media only screen and (min-width: 1400px) {
  .companies--featured .companies__line--1 {
    left: 33.33%;
  }
  .companies--featured .companies__line--2 {
    left: 66.66%;
    display: block;
  }
}
.companies .my-sizer-element {
  width: 8.333333%;
}
@media only screen and (min-width: 1000px) {
  .companies .my-sizer-element {
    width: 5%;
  }
}

.company--default {
  position: relative;
  display: flex;
  flex-flow: column;
  height: 100%;
  box-sizing: border-box;
  -webkit-transition: box-shadow 0.15s ease-in-out;
  -moz-transition: box-shadow 0.15s ease-in-out;
  transition: box-shadow 0.15s ease-in-out;
  padding: 0.75em;
}
@media only screen and (min-width: 550px) {
  .company--default {
    padding: 0.75em;
  }
}
@media only screen and (min-width: 700px) {
  .company--default {
    padding: 1em;
  }
}
@media only screen and (min-width: 1000px) {
  .company--default {
    padding: 1em;
  }
}
.company--default--hasupdate .company__heading {
  padding-right: 10.5em;
}
.company--default .company__link {
 /* flex: 1 1 auto;*/
  position: relative;
}
.company--default .company__heading {
  margin: 0 0 0.5em 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  display: none;
}
@media only screen and (min-width: 550px) {
  .company--default .company__heading {
    display: block;
  }
}
.company--default .company__updatetag {
  background: #F8795D;
  padding: 0.5em 1em;
  display: inline-block;
  border-radius: 0.25em;
  position: absolute;
  top: 0;
  right: 0;
}
@media only screen and (min-width: 550px) {
  .company--default .company__updatetag {
    top: -0.5em;
    right: -0.5em;
  }
}
.company--default .company__info {
  position: relative;
}
.company--default .company__info .company__logo {
  position: relative;
  width: 70%;
  padding-top: 70%;
 /* margin: 2em 15%;*/
  margin: .1em 15%;
}
.company--default .company__info .company__logo div.company__logo__img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 65%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.company--default .company__info .company__logo img.company__logo__img {
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 80%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.company--default .company__info .company__logo .company__logo__placeholder {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center;
}
.company--default .company__info .company__logo .company__logo__placeholder:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  padding-top: 50%;
  border: 1px solid rgba(248, 121, 93, 0.15);
  border-radius: 50%;
}
.company--default .company__info .company__desc {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  text-align: center;
  background: #000;

 /* background: #000000;*/
  
  
  opacity: 0;
  -webkit-transition: opacity 0.15s ease-in-out;
  -moz-transition: opacity 0.15s ease-in-out;
  transition: opacity 0.15s ease-in-out;
}
.company--default .company__info .company__desc .company__desc__text {
  position: absolute;
  top: 0;
  left: 0;
  top: 50%;
  width: 100%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  transform: translateY(-50%);
}
.company--default .company__terms {
  flex: 0 1 auto;
  margin-top: 1em;
  line-height: 1;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  height: 1em;
}
.company--default .company__terms .company__terms__stages {
  margin-right: 1em;
}
.company--default:hover {
  -webkit-box-shadow: 0px 0px 25px 0px rgba(248, 121, 93, 0.25);
  -moz-box-shadow: 0px 0px 25px 0px rgba(248, 121, 93, 0.25);
  box-shadow: 0px 0px 25px 0px rgba(248, 121, 93, 0.25);
}
@media only screen and (min-width: 700px) {
  .company--default:hover .company__desc {
    opacity: 1;
  }
}
.company--grid {
 /* background: #fff;*/
  padding: 1em;
  border-radius: 0.5em;
  border: 1px solid #F8795D;
  height: auto;
  -webkit-transition: box-shadow 150ms ease-out 0s, translate 250ms ease-in-out;
  -moz-transition: box-shadow 150ms ease-out 0s, translate 250ms ease-in-out;
  transition: box-shadow 150ms ease-out 0s, translate 250ms ease-in-out;
  margin-bottom: calc(0.75em * 2);
}
@media only screen and (min-width: 550px) {
  .company--grid {
    margin-bottom: calc(0.75em * 2);
  }
}
@media only screen and (min-width: 700px) {
  .company--grid {
    margin-bottom: calc(1em * 2);
  }
}
@media only screen and (min-width: 1000px) {
  .company--grid {
    margin-bottom: calc(1em * 2);
  }
}
.company--grid .company__info {
  position: relative;
}
.company--grid .company__info .company__logo {
  position: relative;
  width: 100%;
  padding-top: 100%;
  margin: 0;
}
.company--grid .company__info .company__logo .company__logo__img {
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 70%;
  max-height: 70%;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.company--grid .company__info .company__logo .company__logo__placeholder {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center;
}
.company--grid .company__info .company__logo .company__logo__placeholder:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  padding-top: 50%;
  border: 1px solid rgba(248, 121, 93, 0.15);
  border-radius: 50%;
}
.company--grid .company__info .company__desc {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  text-align: center;
  background: #080808;
  opacity: 0;
  -webkit-transition: opacity 0.15s ease-in-out;
  -moz-transition: opacity 0.15s ease-in-out;
  transition: opacity 0.15s ease-in-out;
}
.company--grid .company__info .company__desc .company__desc__text {
  position: absolute;
  top: 0;
  left: 50%;
  top: 50%;
  max-width: 15em;
  width: 100%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
@media only screen and (min-width: 1200px) {
  .company--grid .company__info .company__desc .company__desc__text {
    line-height: 1.5;
  }
}
@media only screen and (min-width: 1400px) {
  .company--grid .company__info .company__desc .company__desc__text {
    font-size: 15px;
  }
}
@media only screen and (min-width: 1400px) {
  .company--grid .company__info .company__desc .company__desc__text {
    font-size: 16px;
  }
}
.company--grid:hover {
  -webkit-box-shadow: 0px 0px 25px 0px rgba(248, 121, 93, 0.25);
  -moz-box-shadow: 0px 0px 25px 0px rgba(248, 121, 93, 0.25);
  box-shadow: 0px 0px 25px 0px rgba(248, 121, 93, 0.25);
}
@media only screen and (min-width: 1000px) {
  .company--grid:hover .company__desc {
    opacity: 1;
  }
}
.company--grid.company--mobilehover {
  -webkit-transform: scale(1.05);
  -moz-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-box-shadow: 0px 0px 25px 0px #f8795d;
  -moz-box-shadow: 0px 0px 25px 0px #f8795d;
  box-shadow: 0px 0px 25px 0px #f8795d;
}

/*  ==========================================================================
  Single company page (single-companies.php) -- layout/layout.scss
  ========================================================================== */
.single-companies .main__bd,
.fancybox--page--company .main__bd {
  position: relative;
  z-index: 10;
}
.single-companies .main__col--right .flexsc:first-child,
.fancybox--page--company .main__col--right .flexsc:first-child {
  margin-top: 0;
}

/* Logos (in various positions) */
.companypage__logo {
  background: #fff;
  border-radius: 0.5em;
  padding: 2em;
  box-sizing: border-box;
  -webkit-box-shadow: 0px 0px 25px 0px rgba(45, 21, 48, 0.25);
  -moz-box-shadow: 0px 0px 25px 0px rgba(45, 21, 48, 0.25);
  box-shadow: 0px 0px 25px 0px rgba(45, 21, 48, 0.25);
}
.companypage__logo--withheaderbg {
  margin-top: calc(-10% * 2);
}
@media only screen and (min-width: 550px) {
  .companypage__logo--withheaderbg {
    margin-top: calc(-7% * 2);
  }
}
@media only screen and (min-width: 1000px) {
  .companypage__logo--withheaderbg {
    margin-top: calc(-7% * 5);
  }
}
@media only screen and (min-width: 1200px) {
  .companypage__logo--withheaderbg {
    margin-top: calc(-5% * 5);
  }
}
.companypage__logo--inbody {
  position: relative;
  z-index: 1;
  max-width: 10em;
  display: block;
}
@media only screen and (min-width: 550px) {
  .companypage__logo--inbody {
    max-width: 15em;
  }
}
@media only screen and (min-width: 1000px) {
  .companypage__logo--inbody {
    display: none;
  }
}
.companypage__logo--inheader {
  margin-top: 4em;
  display: none;
}
@media only screen and (min-width: 1000px) {
  .companypage__logo--inheader {
    display: block;
    margin-top: 0;
  }
}
.companypage__logo--inheader.companypage__logo--withheaderbg {
  display: none !important;
}
.companypage__logo--indetails {
  width: 66.66%;
  margin-bottom: 5em;
  display: none;
}
@media only screen and (min-width: 1000px) {
  .companypage__logo--indetails.companypage__logo--withheaderbg {
    display: block;
  }
}
.companypage__logo .companypage__logo__img {
  width: 100%;
  padding-top: 100%;
  box-sizing: border-box;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

/* Company details */
@media only screen and (max-width: 999px) {
  .companydetails {
    margin-bottom: -1em;
  }
}
@media only screen and (min-width: 1000px) {
  .companydetails {
    margin-top: 0;
  }
}
.companydetails .companydetails__detail {
  padding-top: 1em;
  margin-bottom: 1em;
  border-top: 1px solid rgba(248, 121, 93, 0.15);
}
/*@media only screen and (min-width: 1000px) {
  .companydetails .companydetails__detail {
    max-width: 16em;
  }
}*/
.companydetails .companydetails__detail .companydetails__detail__heading {
  margin: 0;
}
.companydetails .companydetails__detail--website a {
  white-space: nowrap;
}
.companydetails .companydetails__detail--founders {
  position: relative;
  padding-left: 7.5em;
}
@media only screen and (min-width: 1000px) {
  .companydetails .companydetails__detail--founders {
    padding-left: 0;
  }
}
.companydetails .companydetails__detail--founders .companydetails__detail__heading {
  margin-bottom: 0.5em;
}
.companydetails .companydetails__detail--founders .companydetails__detail__founder {
  position: relative;
  margin-bottom: 3em;
/*  max-width: 20em;*/
}
@media screen and (min-width: 800px) {
  .companydetails .companydetails__detail--founders .companydetails__detail__founder:last-child {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1000px) {
  .companydetails .companydetails__detail--founders .companydetails__detail__founder:last-child {
    margin-bottom: 3em;
  }
}
.companydetails .companydetails__detail--founders .companydetails__detail__founder .companydetails__detail__founder__link {
  display: block;
  cursor: pointer;
}
.companydetails .companydetails__detail--founders .companydetails__detail__founder .companydetails__detail__founder__name {
  margin: 0 0 0.5em 0;
}
.companydetails .companydetails__detail--founders .companydetails__detail__founder .companydetails__detail__founder__img {
 /* position: absolute;
  top: 0;
  left: -7.5em;
  margin-top: -1em;
  width: 6em;
  height: 6em;
  border-radius: 50%;
  border: 1px solid #F8795D;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;*/
  position: absolute;
    top: 0;
    left: -7.5em;
    /* margin-top: -1em; */
    width: 6em;
    height: 6em;
    /* border-radius: 50%; */
    /* border: 1px solid #F8795D; */
    background-size: 50%;
    background-position: center;
    background-repeat: no-repeat;
}
.companydetails .companydetails__ticker {
  margin-top: 3em;
  display: none;
  margin-left: -10%;
}
@media only screen and (min-width: 1000px) {
  .companydetails .companydetails__ticker {
    display: block;
  }
}

/* Company Demo Day Nav - Only used on demo day company pop-ups */
.companyddnav {
  text-align: center;
}
@media only screen and (max-width: 549px) {
  .companyddnav .btn {
    display: block;
    margin: 0 0 1em 0;
  }
}

/*  ==========================================================================
  Fancybox Pop-ups -- for people and company pages -- layout/layout.scss
  ========================================================================== */
.fancybox--page .fancybox-stage {
  overflow: visible !important;
}
.fancybox--page .fancybox-slide--html {
  padding: 1.5em;
}
@media only screen and (min-width: 550px) {
  .fancybox--page .fancybox-slide--html {
    padding: 2.5em;
  }
}
@media only screen and (min-width: 700px) {
  .fancybox--page .fancybox-slide--html {
    padding: 2.5em;
  }
}
@media only screen and (min-width: 1000px) {
  .fancybox--page .fancybox-slide--html {
    padding: 2em;
  }
}
@media only screen and (min-width: 1200px) {
  .fancybox--page .fancybox-slide--html {
    padding: 2em;
  }
}
@media only screen and (min-width: 1400px) {
  .fancybox--page .fancybox-slide--html {
    padding: 2em;
  }
}
@media only screen and (min-width: 1600px) {
  .fancybox--page .fancybox-slide--html {
    padding: 2em;
  }
}
@media only screen and (max-width: 549px) {
  .fancybox--page .fancybox-slide--html {
    padding: 1em;
  }
}
.fancybox--page .fancybox-close-small {
  display: none;
}
.fancybox--page .fancybox-content {
  border-radius: 0.5em;
  height: 90vh;
  width: 100%;
  padding: 0;
  scrollbar-width: none;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}
.fancybox--page .fancybox-content::-webkit-scrollbar {
  /*Chrome, Safari, Edge*/
  display: none;
}
@media only screen and (min-width: 1600px) {
  .fancybox--page .fancybox-content {
    max-width: 1600px;
  }
}
@media only screen and (min-width: 1600px) {
  .fancybox--page .fancybox-content .bd {
    padding-left: calc(2em * 2);
    padding-right: calc(2em * 2);
    margin-left: auto;
    margin-right: auto;
    max-width: calc(1600px - (2em * 2));
  }
}
.fancybox--page .fancybox-content .main {
  margin-top: 0;
}
.fancybox--page .main__col--right .flexsc:first-child {
  margin-top: 0;
}
.fancybox--page--person .main__bd {
  margin-top: 1.5em;
}
@media only screen and (min-width: 550px) {
  .fancybox--page--person .main__bd {
    margin-top: 2.5em;
  }
}
@media only screen and (min-width: 700px) {
  .fancybox--page--person .main__bd {
    margin-top: 2.5em;
  }
}
@media only screen and (min-width: 1000px) {
  .fancybox--page--person .main__bd {
    margin-top: 2em;
  }
}
@media only screen and (min-width: 1200px) {
  .fancybox--page--person .main__bd {
    margin-top: calc(2em * 2);
  }
}
@media only screen and (min-width: 1400px) {
  .fancybox--page--person .main__bd {
    margin-top: calc(2em * 2);
  }
}
@media only screen and (min-width: 1600px) {
  .fancybox--page--person .main__bd {
    margin-top: calc(2em * 2);
  }
}

/* fancybox custom close button (within footer.php) */
.fancybox-close-custom {
  position: fixed;
  cursor: pointer;
  top: 5vh;
  right: 5em;
  padding: 1.3em;
  -webkit-transform: translate(40%, -40%);
  -moz-transform: translate(40%, -40%);
  transform: translate(40%, -40%);
  background: #fff;
  color: #F8795D;
  border: 1px solid rgba(45, 21, 48, 0.05);
  width: 4em;
  height: 4em;
  box-sizing: border-box;
  border-radius: 50%;
  display: inline-block;
  text-align: center;
  z-index: 1000000;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.15s ease-in-out;
  -moz-transition: opacity 0.15s ease-in-out;
  transition: opacity 0.15s ease-in-out;
}
.fancybox-close-custom .fa,
.fancybox-close-custom .fab,
.fancybox-close-custom .fal,
.fancybox-close-custom .far,
.fancybox-close-custom .fas {
  padding: 0;
  line-height: 4em;
}
.fancybox-close-custom .fa:before,
.fancybox-close-custom .fab:before,
.fancybox-close-custom .fal:before,
.fancybox-close-custom .far:before,
.fancybox-close-custom .fas:before {
  font-size: 1.25em;
}
@media only screen and (min-width: 550px) {
  .fancybox-close-custom {
    right: 4em;
  }
}
@media only screen and (min-width: 1600px) {
  .fancybox-close-custom {
    right: calc((100vw - (1600px - (2em * 3))) / 2);
  }
}
.fancybox-close-custom:hover {
  background: #F8795D;
  border-color: #F8795D;
  color: #ccc;
}
.fancybox-close-custom--show {
  pointer-events: all;
  opacity: 1;
}

.}

/*  ==========================================================================
  Pagenav -- layout/layout.scss
  ========================================================================== */
.pagenav {
  position: relative;
  z-index: 50;
  perspective: 300px;
  position: sticky;
  position: -webkit-sticky;
  top: -1px;
  background: #fff;
  /* pinned styling */
  /* with transparent header */
}
.pagenav .pagenav__bd + .pagenav__bd .pagenav__wrap {
  border-top: 0px solid rgba(248, 121, 93, 0.15);
}
.pagenav .pagenav__wrap {
  overflow: hidden;
  border-top: 1px solid rgba(248, 121, 93, 0.15);
  border-bottom: 1px solid rgba(248, 121, 93, 0.15);
  white-space: nowrap;
  -webkit-transition: padding-right 750ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms;
  -moz-transition: padding-right 750ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms;
  transition: padding-right 750ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms;
  height: 3rem;
}
@media only screen and (min-width: 700px) {
  .pagenav .pagenav__wrap {
    height: 3.5rem;
  }
}
.pagenav .pagenav__wrap .pagenav__heading {
  display: inline-block;
  margin: 0;
  padding-right: 2em;
  box-sizing: border-box;
  line-height: 3rem;
}
@media only screen and (min-width: 700px) {
  .pagenav .pagenav__wrap .pagenav__heading {
    line-height: 3.5rem;
  }
}
@media only screen and (min-width: 1000px) {
  .pagenav .pagenav__wrap .pagenav__heading {
    width: 10%;
  }
}
.pagenav .pagenav__wrap .pagenav__nav {
  position: relative;
  height: 3rem;
  display: inline-block;
  vertical-align: top;
  width: calc(100% - 8em);
  -webkit-transition: width 750ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms;
  -moz-transition: width 750ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms;
  transition: width 750ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms;
  box-sizing: border-box;
  /*
  .filters__header__links{

    padding-right: 10em;
    @include media-query($medium) {

    }
    .filters__link{
      cursor: pointer;
    }
  } */
  /*
  .filters__header__tags{
    padding: .5em 0;
    @include media-query($widescreen) {
      padding: .325em 0;
    }
    .filters__header__tags__wrap{
      display: inline-block;
    }
    .filters__header__tags__clear{
      cursor: pointer;
      margin-left: 1em;
      margin-right: 10em;
    }
    .filters__header__tag{
      margin-right: .5em;
    }
  } */
}
@media only screen and (min-width: 700px) {
  .pagenav .pagenav__wrap .pagenav__nav {
    height: 3.5rem;
  }
}
@media only screen and (min-width: 1000px) {
  .pagenav .pagenav__wrap .pagenav__nav {
    width: 90%;
  }
}
.pagenav .pagenav__wrap .pagenav__nav:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 6em;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.00001) 0%, #fff 100%);
}
.pagenav .pagenav__wrap .pagenav__nav .pagenav__nav__scrollarea {
  width: 100%;
  height: 3rem;
  overflow-x: scroll;
  scrollbar-width: none;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  white-space: nowrap;
  box-sizing: border-box;
}
.pagenav .pagenav__wrap .pagenav__nav .pagenav__nav__scrollarea::-webkit-scrollbar {
  /*Chrome, Safari, Edge*/
  display: none;
}
@media only screen and (min-width: 700px) {
  .pagenav .pagenav__wrap .pagenav__nav .pagenav__nav__scrollarea {
    height: 3.5rem;
  }
}
.pagenav .pagenav__wrap .pagenav__nav .pagenav__nav__links {
  line-height: 2rem;
  height: 2rem;
  padding: 0.5rem 0;
  box-sizing: border-box;
  margin: 0;
}
@media only screen and (min-width: 700px) {
  .pagenav .pagenav__wrap .pagenav__nav .pagenav__nav__links {
    height: 2.5rem;
    line-height: 2.5rem;
  }
}
.pagenav .pagenav__wrap .pagenav__nav .pagenav__nav__links .current {
  background-color: rgba(45, 21, 48, 0.1);
  border-radius: 3rem;
  padding: 0 1.5em;
}
.pagenav--pinned .filters__header {
  padding-right: 16rem;
}
.siteheader--transparent .pagenav {
  color: #ccc;
  background: none;
}
.siteheader--transparent .pagenav .pagenav__wrap .pagenav__nav:after {
  display: none;
}
.siteheader--transparent .pagenav .pagenav__nav__links .current {
  background-color: rgba(255, 255, 255, 0.1);
}
.siteheader--transparent .pagenav.pagenav--pinned {
  background: #fff;
  color: #080808;
}
.siteheader--transparent .pagenav.pagenav--pinned .pagenav__nav__links .current {
  background-color: rgba(45, 21, 48, 0.1);
}
.siteheader--transparent .pagenav.pagenav--pinned .filters__header input {
  color: #080808;
}
.siteheader--transparent .pagenav.pagenav--pinned .filters__header input.placeholder {
  color: rgba(45, 21, 48, 0.25);
}
.siteheader--transparent .pagenav.pagenav--pinned .filters__header input:-moz-placeholder {
  color: rgba(45, 21, 48, 0.25);
}
.siteheader--transparent .pagenav.pagenav--pinned .filters__header input::-moz-placeholder {
  color: rgba(45, 21, 48, 0.25);
}
.siteheader--transparent .pagenav.pagenav--pinned .filters__header input:-ms-input-placeholder {
  color: rgba(45, 21, 48, 0.25);
}
.siteheader--transparent .pagenav.pagenav--pinned .filters__header input::-webkit-input-placeholder {
  color: rgba(45, 21, 48, 0.25);
}
.siteheader--transparent .pagenav.pagenav--pinned .filters__header .filters__header__nav:after {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.00001) 0%, #fff 100%);
}


/*  ==========================================================================
  Carousels -- layout/layout.scss
  ========================================================================== */
.

/*  ==========================================================================
  headerticker -- layout/layout.scss
  ========================================================================== */
.headerticker {
  position: relative;
  text-align: left;
  width: 100%;
}
.home .headerticker {
  z-index: 25;
}
.home .headerticker .headerticker__header__heading {
  color: #ccc;
}
.home.mobnavopen .headerticker {
  display: none;
}
.fancybox-content .headerticker .headerticker__ticker .owl-nav {
  right: 1em;
}
.headerticker .headerticker__bd {
  padding: 1.5em 0;
  border-top: 1px solid rgba(248, 121, 93, 0.15);
  border-bottom: 1px solid rgba(248, 121, 93, 0.15);
}
@media only screen and (min-width: 1000px) {
  .headerticker .headerticker__bd {
    padding: 1em 0;
    height: 3.75rem;
    box-sizing: border-box;
  }
}
.headerticker .headerticker__header {
  margin-bottom: 0.5em;
}
@media only screen and (min-width: 1000px) {
  .headerticker .headerticker__header {
    position: absolute;
    margin-bottom: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    transform: translateY(-50%);
   /* width: 10%;*/
    padding-right: 1em;
    box-sizing: border-box;
  }
}
.headerticker .headerticker__header .headerticker__header__heading {
  margin: 0;
}
.headerticker .headerticker__ticker {
  overflow: hidden;
  padding-right: 5em;
  /* owl carousel styles */
}
@media only screen and (min-width: 1000px) {
  .headerticker .headerticker__ticker {
    padding-left: 10%;
    white-space: nowrap;
  }
}
.headerticker .headerticker__ticker .ticker__item__post .ticker__item__post__heading--desktop {
  display: none;
}
@media only screen and (min-width: 700px) {
  .headerticker .headerticker__ticker .ticker__item__post .ticker__item__post__heading--desktop {
    display: block;
  }
}
@media only screen and (min-width: 700px) {
  .headerticker .headerticker__ticker .ticker__item__post .ticker__item__post__heading--mobile {
    display: none;
  }
}
.headerticker .headerticker__ticker .ticker__item__post--external .ticker__item__post__heading span:last-child {
  display: inline-block;
  vertical-align: bottom;
  padding-left: 0.66em;
}
.headerticker .headerticker__ticker .ticker__item__post--external .ticker__item__post__heading span:last-child:after {
  content: "";
  opacity: 0.5;
  color: #F8795D;
  font-family: "Font Awesome 5 Pro";
  font-weight: 300;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  opacity: 0.5;
}
.headerticker .headerticker__ticker .owl-carousel {
  position: static;
  display: none;
}
.headerticker .headerticker__ticker .owl-carousel.owl-loaded {
  display: block;
}
.headerticker .headerticker__ticker .animated {
  -webkit-animation-duration: 150ms !important;
  -moz-animation-duration: 150ms !important;
  animation-duration: 150ms !important;
}

.headerticker .headerticker__ticker .owl-item.active .ticker__item__post .ticker__item__post__heading span {
  opacity: 1;
}
.headerticker .headerticker__ticker .owl-nav {
  position: absolute;
  top: 0.5rem;
  right: 0;
}
@media only screen and (min-width: 1000px) {
  .headerticker .headerticker__ticker .owl-nav {
    top: 0.5rem;
  }
}
.headerticker .headerticker__ticker .owl-nav .owl-next,
.headerticker .headerticker__ticker .owl-nav .owl-prev {
  position: relative;
  border-radius: 0;
  width: 2.75rem;
  height: 2.75rem;
  font-size: 11px;
}
@media only screen and (min-width: 550px) {
  .headerticker .headerticker__ticker .owl-nav .owl-next,
.headerticker .headerticker__ticker .owl-nav .owl-prev {
    font-size: 11px;
  }
}
@media only screen and (min-width: 700px) {
  .headerticker .headerticker__ticker .owl-nav .owl-next,
.headerticker .headerticker__ticker .owl-nav .owl-prev {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1000px) {
  .headerticker .headerticker__ticker .owl-nav .owl-next,
.headerticker .headerticker__ticker .owl-nav .owl-prev {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1200px) {
  .headerticker .headerticker__ticker .owl-nav .owl-next,
.headerticker .headerticker__ticker .owl-nav .owl-prev {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1400px) {
  .headerticker .headerticker__ticker .owl-nav .owl-next,
.headerticker .headerticker__ticker .owl-nav .owl-prev {
    font-size: 13px;
  }
}
@media only screen and (min-width: 1600px) {
  .headerticker .headerticker__ticker .owl-nav .owl-next,
.headerticker .headerticker__ticker .owl-nav .owl-prev {
    font-size: 14px;
  }
}
.headerticker .headerticker__ticker .owl-nav .owl-next span,
.headerticker .headerticker__ticker .owl-nav .owl-prev span {
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 2em;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.headerticker .headerticker__ticker .owl-nav .owl-next:focus,
.headerticker .headerticker__ticker .owl-nav .owl-prev:focus {
  outline: none;
}
.headerticker .headerticker__ticker .owl-nav .owl-next.disabled,
.headerticker .headerticker__ticker .owl-nav .owl-prev.disabled {
  opacity: 0.5;
}
.headerticker .headerticker__ticker .owl-nav .owl-prev {
  border-right: 1px solid rgba(248, 121, 93, 0.15);
}

/* heading animation */
@keyframes flickerAnimation {
  0% {
    opacity: 0.25;
  }
  10% {
    opacity: 0.8;
  }
  20% {
    opacity: 0.25;
  }
}
@-webkit-keyframes flickerAnimation {
  0% {
    opacity: 0.25;
  }
  10% {
    opacity: 0.8;
  }
  20% {
    opacity: 0.25;
  }
}
/*  ==========================================================================
  tickers -- layout/layout.scss
  ========================================================================== */
.ticker {
  position: relative;
  margin: 0 auto;
  padding: 0 10%;
}
@media only screen and (min-width: 550px) {
  .ticker {
    box-sizing: border-box;
  }
}
@media only screen and (min-width: 1400px) {
  .ticker {
    max-width: 32em;
  }
}
.ticker:after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 25%;
  left: -1.5em;
  right: -1.5em;
  bottom: 0;
  background: rgba(248, 121, 93, 0.05);
  border-radius: 0.5em;
}
@media only screen and (min-width: 550px) {
  .ticker:after {
    left: 0;
    right: 0;
  }
}
.ticker .ticker__content {
  position: relative;
}
.ticker .ticker__header {
  display: flex;
  align-items: center;
  padding: 0.5em 0;
  padding-right: 4.5em;
  box-sizing: border-box;
  border-top: 1px solid rgba(248, 121, 93, 0.15);
  height: 3.75rem;
}
.ticker .ticker__header .ticker__header__heading {
  display: inline-block;
  margin: 0;
}
.ticker .ticker__header .ticker__header__counter {
  margin-left: 1em;
}
.ticker .ticker__ticker {
  overflow: hidden;
  margin-left: -1em;
  margin-right: -1em;
}
.ticker .ticker__ticker .owl-ticker {
  position: static;
}
.ticker .ticker__ticker .ticker__item {
  box-sizing: border-box;
  padding: 0 1em;
}
.ticker .ticker__ticker .post {
  margin-bottom: calc(0.75em * 3);
}
@media only screen and (min-width: 550px) {
  .ticker .ticker__ticker .post {
    margin-bottom: calc(0.75em * 3);
  }
}
@media only screen and (min-width: 700px) {
  .ticker .ticker__ticker .post {
    margin-bottom: calc(1em * 3);
  }
}
@media only screen and (min-width: 1000px) {
  .ticker .ticker__ticker .post {
    margin-bottom: calc(1em * 3);
  }
}
.ticker .ticker__ticker .owl-carousel {
  position: static;
}
.ticker .ticker__ticker .owl-nav {
  position: absolute;
  top: 0.5rem;
  right: 0;
}
.ticker .ticker__ticker .owl-nav .owl-next,
.ticker .ticker__ticker .owl-nav .owl-prev {
  position: relative;
  border-radius: 0;
  width: 2.75rem;
  height: 2.75rem;
  font-size: 11px;
}
@media only screen and (min-width: 550px) {
  .ticker .ticker__ticker .owl-nav .owl-next,
.ticker .ticker__ticker .owl-nav .owl-prev {
    font-size: 11px;
  }
}
@media only screen and (min-width: 700px) {
  .ticker .ticker__ticker .owl-nav .owl-next,
.ticker .ticker__ticker .owl-nav .owl-prev {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1000px) {
  .ticker .ticker__ticker .owl-nav .owl-next,
.ticker .ticker__ticker .owl-nav .owl-prev {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1200px) {
  .ticker .ticker__ticker .owl-nav .owl-next,
.ticker .ticker__ticker .owl-nav .owl-prev {
    font-size: 12px;
  }
}
@media only screen and (min-width: 1400px) {
  .ticker .ticker__ticker .owl-nav .owl-next,
.ticker .ticker__ticker .owl-nav .owl-prev {
    font-size: 13px;
  }
}
@media only screen and (min-width: 1600px) {
  .ticker .ticker__ticker .owl-nav .owl-next,
.ticker .ticker__ticker .owl-nav .owl-prev {
    font-size: 14px;
  }
}
.ticker .ticker__ticker .owl-nav .owl-next span,
.ticker .ticker__ticker .owl-nav .owl-prev span {
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 2em;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.ticker .ticker__ticker .owl-nav .owl-next:focus,
.ticker .ticker__ticker .owl-nav .owl-prev:focus {
  outline: none;
}
.ticker .ticker__ticker .owl-nav .owl-next.disabled,
.ticker .ticker__ticker .owl-nav .owl-prev.disabled {
  opacity: 0.5;
}
.ticker .ticker__ticker .owl-nav .owl-prev {
  border-right: 1px solid rgba(248, 121, 93, 0.15);
}

/*  ==========================================================================
  Ajax load more button -- layout/layout.scss
  ========================================================================== */
.loadmore {
  position: relative;
  text-align: center;
  background: #fff;
}
.loadmore .loadmore__btn {
  margin: 0;
  background-image: linear-gradient(to right, #F8795D 50%, #fff 50%);
  position: relative;
  z-index: 1;
}


/*  ==========================================================================
  siteheader
  ========================================================================== */
.siteheader {
  text-align: right;
}
.siteheader .siteheader__bd {
  padding: 1rem 0;
  position: relative;
}
.siteheader .siteheader__btn {
  margin: 0 5em 0 0;
  vertical-align: middle;
  position: relative;
  z-index: 1;
  display: none;
}
@media only screen and (min-width: 700px) {
  .siteheader .siteheader__btn {
    position: absolute;
    right: 0;
    top: 1rem;
  }
}
.siteheader .siteheader__btn--demoday:hover {
  color: #F8795D;
}
@media only screen and (min-width: 700px) {
  .siteheader .siteheader__btn--demoday {
    display: block;
    line-height: 5em;
    margin-right: 6em;
  }
}
.siteheader .logo .logo__img--key {
  background-image: url("https://s3.ap-south-1.amazonaws.com/quditinfotech.web/logo-square.png");
}
.bg--aubergine .siteheader {
  background: #080808;
}
.home .siteheader {
 
   background: #000;
  
}
.bg--aubergine .siteheader .logo .logo__img--key, .home .siteheader .logo .logo__img--key, .mobnavopen .siteheader .logo .logo__img--key, .siteheader--transparent .siteheader .logo .logo__img--key {
  background-image: url("https://s3.ap-south-1.amazonaws.com/quditinfotech.web/logo-square.png");
}
.bg--aubergine .siteheader .logo .logo__img--words, .home .siteheader .logo .logo__img--words, .mobnavopen .siteheader .logo .logo__img--words, .siteheader--transparent .siteheader .logo .logo__img--words {
  background-image: url("https://s3.ap-south-1.amazonaws.com/quditinfotech.web/word-min.png");
}
.bg--aubergine .siteheader .logo .logo__img--wordsntitle .logo__words, .home .siteheader .logo .logo__img--wordsntitle .logo__words, .mobnavopen .siteheader .logo .logo__img--wordsntitle .logo__words, .siteheader--transparent .siteheader .logo .logo__img--wordsntitle .logo__words {
  background-image: url("img/framework/ef.words.line.neg.svg");
}

.black-clor-logo{
   background-image: url("https://s3.ap-south-1.amazonaws.com/quditinfotech.web/black-word-logo.png");
}

.bg--aubergine .siteheader .siteheader__btn, .home .siteheader .siteheader__btn, .mobnavopen .siteheader .siteheader__btn, .siteheader--transparent .siteheader .siteheader__btn {
  color: #F8795D;
}
.bg--aubergine .siteheader .siteheader__btn:hover, .home .siteheader .siteheader__btn:hover, .mobnavopen .siteheader .siteheader__btn:hover, .siteheader--transparent .siteheader .siteheader__btn:hover {
  color: #ccc;
}
.bg--aubergine .siteheader .siteheader__btn--demoday, .home .siteheader .siteheader__btn--demoday, .mobnavopen .siteheader .siteheader__btn--demoday, .siteheader--transparent .siteheader .siteheader__btn--demoday {
  color: #ccc;
}
.bg--aubergine .siteheader .siteheader__btn--demoday:hover, .home .siteheader .siteheader__btn--demoday:hover, .mobnavopen .siteheader .siteheader__btn--demoday:hover, .siteheader--transparent .siteheader .siteheader__btn--demoday:hover {
  color: #F8795D;
}
.siteheader--transparent .siteheader {
  position: relative;
  z-index: 10;
  color: #ccc;
}
@media only screen and (min-width: 700px) {
  .home .siteheader {
    position: absolute;
    top: 0;
    width: 100%;
  }
}
.home .siteheader:before {
  content: "";
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translate(-50%, -40%);
  -moz-transform: translate(-50%, -40%);
  transform: translate(-50%, -40%);
/*  background: radial-gradient(circle, rgba(77, 32, 83, 0.7) 0%, rgba(77, 32, 83, 0.0001) 70%);
*/  width: 100vw;
  padding-top: 100%;
  z-index: 20;
}
.home .siteheader .siteheader__bd {
  z-index: 25;
}

/*  ==========================================================================
  Logo (used in header & footer)
  ========================================================================== */
.logo {
  text-align: left;
}
.logo .logo__img {
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
}
.logo .logo__img--key {
  background-image: url(https://s3.ap-south-1.amazonaws.com/quditinfotech.web/logo-square.png);
  width: 3em;
  height: 2.5em;
  margin-right: .5em;
}
@media only screen and (min-width: 1000px) {
  .logo .logo__img--key {
   /* width: calc(10% - (1em * 2));*/
   /* width: calc(10%);
    margin-right: calc(1em * 2);*/
    padding-top: 4%;
    height: 0;
  }
}
.logo .logo__img--words {
  background-image: url("img/framework/ef.words.pos.svg");
  background-position: center bottom;
  width: 6em;
  height: 1.5em;
}
@media only screen and (min-width: 1000px) {
  .logo .logo__img--words {
    width: 10%;
    padding-top: 4%;
    height: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .logo .logo__img--words {
    width: 14%;
  }
}
.logo .logo__img--pagetitle h1 {
  font-size: 0.6rem;
}
@media only screen and (min-width: 1000px) {
  .logo .logo__img--pagetitle h1 {
    font-size: 0.75rem;
  }
}
@media only screen and (min-width: 1200px) {
  .logo .logo__img--pagetitle h1 {
    font-size: 0.9rem;
  }
}
@media only screen and (min-width: 1400px) {
  .logo .logo__img--pagetitle h1 {
    font-size: 1rem;
  }
}
@media only screen and (min-width: 1600px) {
  .logo .logo__img--pagetitle h1 {
    font-size: 1.1rem;
  }
}
.logo .logo__img--wordsntitle h1 {
  font-size: 0.6rem;
}
@media only screen and (min-width: 1000px) {
  .logo .logo__img--wordsntitle h1 {
    font-size: 0.75rem;
  }
}
@media only screen and (min-width: 1200px) {
  .logo .logo__img--wordsntitle h1 {
    font-size: 0.9rem;
  }
}
@media only screen and (min-width: 1400px) {
  .logo .logo__img--wordsntitle h1 {
    font-size: 1rem;
  }
}
@media only screen and (min-width: 1600px) {
  .logo .logo__img--wordsntitle h1 {
    font-size: 1.1rem;
  }
}
.logo .logo__img--wordsntitle .logo__words {
  background-image: url("img/framework/ef.words.line.pos.svg");
  background-position: left center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 9em;
  height: 1em;
  display: block;
}
@media only screen and (min-width: 550px) {
  .logo .logo__img--wordsntitle .logo__words {
    margin-left: -0.15em;
  }
}
@media only screen and (min-width: 1000px) {
  .logo .logo__img--wordsntitle .logo__words {
    width: 10em;
    margin-left: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .logo .logo__img--wordsntitle .logo__words {
    width: 11em;
  }
}
@media only screen and (min-width: 1400px) {
  .logo .logo__img--wordsntitle .logo__words {
    width: 11em;
  }
}
/*  ==========================================================================
  fixedheader
  ========================================================================== */
.fixedheader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 150;
  pointer-events: none;
  text-align: right;
}
.fixedheader .fixedheader__bd {
  padding: 1rem 0;
}
.fixedheader .fixedheader__btn {
  display: none;
  vertical-align: top;
  margin: 3px 0.25em 0 0;
  pointer-events: all;
}
@media only screen and (min-width: 700px) {
  .fixedheader .fixedheader__btn {
    display: inline-block;
  }
}
.mobnavopen .fixedheader .fixedheader__btn {
  display: none;
}
.fixedheader .mobnav-toggle {
  pointer-events: all;
  background: #fff;
  border: 1px solid rgba(45, 21, 48, 0.05);
  box-sizing: border-box;
  border-radius: 50%;
  display: inline-block;
  text-align: center;
  -webkit-transition: transform 150ms ease-out 0ms;
  -moz-transition: transform 150ms ease-out 0ms;
  transition: transform 150ms ease-out 0ms;
  padding: 0;
  width: 4.25em;
  height: 4.25em;
  line-height: 4.15em;
}
@media only screen and (min-width: 700px) {
  .fixedheader .mobnav-toggle {
    padding: 1.5em;
    width: 4.4em;
    height: auto;
    line-height: 0.9;
  }
}
.fixedheader .mobnav-toggle .fa,
.fixedheader .mobnav-toggle .fab,
.fixedheader .mobnav-toggle .fal,
.fixedheader .mobnav-toggle .far,
.fixedheader .mobnav-toggle .fas {
  padding-left: 0.1em;
}
.fixedheader .mobnav-toggle .fa:before,
.fixedheader .mobnav-toggle .fab:before,
.fixedheader .mobnav-toggle .fal:before,
.fixedheader .mobnav-toggle .far:before,
.fixedheader .mobnav-toggle .fas:before {
  font-size: 1.25em;
  vertical-align: middle;
}
.fixedheader .mobnav-toggle:hover {
  background: #F8795D;
  border-color: #F8795D;
  color: #ccc;
}
.mobnavopen .fixedheader .mobnav-toggle .fal:before {
  content: "";
}

.hamburg::before {
   content: &#9776;
}

.fixedheader .mobnav-toggle--scrolled {
  -webkit-transform: scale(1.25);
  -moz-transform: scale(1.25);
  transform: scale(1.25);
}
.mobnavopen .fixedheader .mobnav-toggle--scrolled {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  transform: scale(1);
}

/*  ==========================================================================
  mobnav
  ========================================================================== */
.mobnav {
  pointer-events: none;
  position: fixed;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  flex-flow: column;
  z-index: 100;
  width: 100%;
  overflow: hidden;
  height: 100vh;
  opacity: 0;
  background: #080808;
  text-align: left;
  -webkit-transition: opacity 150ms ease-in-out;
  -moz-transition: opacity 150ms ease-in-out;
  transition: opacity 150ms ease-in-out;
}
.mobnav:after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: calc((((100% - 2.5em) / 10) * 4) + 1em);
  height: 100%;
  z-index: -1;
  background: #000000;
  display: none;
}
@media only screen and (min-width: 700px) {
  .mobnav:after {
    display: block;
  }
}
@media only screen and (min-width: 1000px) {
  .mobnav:after {
    width: calc((((100% - 2em) / 10) * 4) + 1em);
  }
}
@media only screen and (min-width: 1200px) {
  .mobnav:after {
    width: calc((((100% - 2em) / 10) * 5) + 1em);
  }
}
@media only screen and (min-width: 1400px) {
  .mobnav:after {
    width: calc((((100% - 2em) / 10) * 4) + 1em);
  }
}
@media only screen and (min-width: 1600px) {
  .mobnav:after {
    width: calc(((100% - (1600px - (2em * 2))) / 2) + (((1600px - (2em * 2)) / 10) * 4));
  }
}
.mobnav:before {
  content: "";
  pointer-events: none;
  position: fixed;
  top: -75%;
  left: -25%;
  /*background: radial-gradient(circle, rgba(77, 32, 83, 0.7) 0%, rgba(77, 32, 83, 0.0001) 70%);*/
  width: 100vw;
  padding-top: 100%;
  z-index: -1;
}
.mobnavopen .mobnav {
  pointer-events: all;
  opacity: 1;
}
.mobnav .siteheader {
  position: relative;
  flex: 0 1 auto;
  background: transparent;
}
.mobnav .siteheader:before {
  display: none;
}
@media only screen and (max-width: 699px) {
  .mobnav .siteheader .siteheader__btn {
    display: block;
    text-align: center;
    margin: 1.5em 0 0 0;
  }
  .mobnav .siteheader .siteheader__btn--demoday {
    text-align: left;
    margin-top: 2.5em;
  }
}
@media only screen and (max-width: 699px) {
  .mobnav .siteheader .siteheader__bd {
    border-bottom: 1px solid rgba(248, 121, 93, 0.15);
  }
}
.mobnav .mobnav__bd {
  flex: 1 1 auto;
  height: 100%;
}
@media only screen and (min-width: 1600px) {
  .mobnav .mobnav__bd {
    width: 100%;
  }
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .mobnav .mobnav__bd {
    /* IE10+ CSS styles go here */
    width: 100%;
  }
}
.mobnav .mobnav__gd-g {
  height: 100%;
}
.mobnav .mobnav__col {
  height: 100%;
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}
.mobnav .mobnav__col::-webkit-scrollbar {
  /*Chrome, Safari, Edge*/
  display: none;
}
@media only screen and (max-width: 699px) {
  .mobnav .mobnav__col {
    position: fixed;
    left: 0;
    padding: 0 2.5em;
    box-sizing: border-box;
    width: 100%;
    -webkit-transition: left 150ms ease-in-out;
    -moz-transition: left 150ms ease-in-out;
    transition: left 150ms ease-in-out;
    height: 100%;
  }
  .mobnav .mobnav__col .mobnav__navs {
    padding-bottom: 9em;
  }
  .mobnav .mobnav__col .mobnav__cohorts {
    padding-bottom: 11em;
  }
  .mobnav .mobnav__col .mobnav__cohorts .cohort {
    background: #000000;
  }
}
@media only screen and (max-width: 549px) {
  .mobnav .mobnav__col {
    padding: 0 1.5em;
  }
}
@media only screen and (max-width: 699px) {
  .mobnav .mobnav__col--left {
    left: 100%;
  }
  .mobnavopen--locations .mobnav .mobnav__col--left {
    left: 0;
  }
}
@media only screen and (max-width: 699px) {
  .mobnavopen--locations .mobnav .mobnav__col--right {
    left: -100%;
  }
}
@media only screen and (min-width: 700px) {
  .mobnav .mobnav__col--right {
    padding-left: 2.5em;
  }
}
@media only screen and (min-width: 1000px) {
  .mobnav .mobnav__col--right {
    padding-left: 2em;
  }
}
@media only screen and (min-width: 1200px) {
  .mobnav .mobnav__col--right {
    padding-left: 2em;
  }
}
@media only screen and (min-width: 1400px) {
  .mobnav .mobnav__col--right {
    padding-left: 2em;
  }
}
@media only screen and (min-width: 1600px) {
  .mobnav .mobnav__col--right {
    padding-left: 2em;
  }
}
.mobnav .mobnav__cta {
  margin-top: 1.5em;
  padding-top: 1.5em;
  border-top: 1px solid rgba(248, 121, 93, 0.15);
}
@media only screen and (min-width: 700px) {
  .mobnav .mobnav__cta {
    margin-top: 3em;
    padding-top: 0;
    border-top: none;
  }
}
@media only screen and (min-width: 1000px) {
  .mobnav .mobnav__cta {
    margin-top: 0;
  }
}
.mobnav .mobnav__cta .mobnav__cta__content {
  max-width: 27em;
}
@media only screen and (min-width: 1000px) {
  .mobnav .mobnav__cta .mobnav__cta__content {
    max-width: 15em;
  }
}
.mobnav .mobnav__cta .mobnav__cta__heading {
  margin: 0 0 0.25em 0;
}
.mobnav .mobnav__cta .btn {
  margin: 1.5em 0 0 0;
}
.mobnav .mobnav__cohorts {
  padding: 1em 0;
  box-sizing: border-box;
}
@media only screen and (min-width: 1000px) {
  .mobnav .mobnav__cohorts {
    padding: 3em 0;
  }
}
.mobnav .mobnav__cohorts .mobnav__cohorts__back {
  display: block;
  margin: 0 0 1em 0;
  padding-bottom: 1em;
  border-bottom: 1px solid rgba(248, 121, 93, 0.15);
}
@media only screen and (min-width: 700px) {
  .mobnav .mobnav__cohorts .mobnav__cohorts__back {
    display: none;
  }
}
.mobnav .mobnav__cohorts .mobnav__cohorts__header {
  max-width: 27em;
  margin-bottom: 1.5em;
}
.mobnav .mobnav__cohorts .mobnav__cohorts__header .mobnav__cohorts__heading {
  margin: 0;
}
.mobnav .mobnav__cohorts .mobnav__cohorts__header .mobnav__cohorts__intro {
  margin: 0.25em 0 0 0;
}
.mobnav .mobnav__cohorts .gd-g {
  margin-left: -0.25em;
  margin-right: -0.25em;
}
.mobnav .mobnav__cohorts .gd-g .gd-u {
  padding-left: 0.25em;
  padding-right: 0.25em;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(2) .mobnav__cohort {
  -webkit-transition-delay: 200ms;
  -moz-transition-delay: 200ms;
  transition-delay: 200ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(3) .mobnav__cohort {
  -webkit-transition-delay: 300ms;
  -moz-transition-delay: 300ms;
  transition-delay: 300ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(4) .mobnav__cohort {
  -webkit-transition-delay: 400ms;
  -moz-transition-delay: 400ms;
  transition-delay: 400ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(5) .mobnav__cohort {
  -webkit-transition-delay: 500ms;
  -moz-transition-delay: 500ms;
  transition-delay: 500ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(6) .mobnav__cohort {
  -webkit-transition-delay: 600ms;
  -moz-transition-delay: 600ms;
  transition-delay: 600ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(7) .mobnav__cohort {
  -webkit-transition-delay: 700ms;
  -moz-transition-delay: 700ms;
  transition-delay: 700ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(8) .mobnav__cohort {
  -webkit-transition-delay: 800ms;
  -moz-transition-delay: 800ms;
  transition-delay: 800ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(9) .mobnav__cohort {
  -webkit-transition-delay: 900ms;
  -moz-transition-delay: 900ms;
  transition-delay: 900ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(10) .mobnav__cohort {
  -webkit-transition-delay: 1000ms;
  -moz-transition-delay: 1000ms;
  transition-delay: 1000ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(11) .mobnav__cohort {
  -webkit-transition-delay: 1100ms;
  -moz-transition-delay: 1100ms;
  transition-delay: 1100ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(12) .mobnav__cohort {
  -webkit-transition-delay: 1200ms;
  -moz-transition-delay: 1200ms;
  transition-delay: 1200ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(13) .mobnav__cohort {
  -webkit-transition-delay: 1300ms;
  -moz-transition-delay: 1300ms;
  transition-delay: 1300ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(14) .mobnav__cohort {
  -webkit-transition-delay: 1400ms;
  -moz-transition-delay: 1400ms;
  transition-delay: 1400ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(15) .mobnav__cohort {
  -webkit-transition-delay: 1500ms;
  -moz-transition-delay: 1500ms;
  transition-delay: 1500ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(16) .mobnav__cohort {
  -webkit-transition-delay: 1600ms;
  -moz-transition-delay: 1600ms;
  transition-delay: 1600ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(17) .mobnav__cohort {
  -webkit-transition-delay: 1700ms;
  -moz-transition-delay: 1700ms;
  transition-delay: 1700ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(18) .mobnav__cohort {
  -webkit-transition-delay: 1800ms;
  -moz-transition-delay: 1800ms;
  transition-delay: 1800ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(19) .mobnav__cohort {
  -webkit-transition-delay: 1900ms;
  -moz-transition-delay: 1900ms;
  transition-delay: 1900ms;
}
.mobnav .mobnav__cohorts .gd-g .gd-u:nth-child(20) .mobnav__cohort {
  -webkit-transition-delay: 2000ms;
  -moz-transition-delay: 2000ms;
  transition-delay: 2000ms;
}
.mobnav .mobnav__cohorts .mobnav__cohort {
  margin-bottom: 0.5em;
  background: #080808;
  opacity: 0;
  -webkit-transform: translateY(1em);
  -moz-transform: translateY(1em);
  transform: translateY(1em);
  -webkit-transition: opacity 500ms cubic-bezier(0.33, 1, 0.68, 1), transform 500ms cubic-bezier(0.33, 1, 0.68, 1);
  -moz-transition: opacity 500ms cubic-bezier(0.33, 1, 0.68, 1), transform 500ms cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 500ms cubic-bezier(0.33, 1, 0.68, 1), transform 500ms cubic-bezier(0.33, 1, 0.68, 1);
}
.mobnavopen .mobnav .mobnav__cohorts .mobnav__cohort {
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}
.mobnav .mobnav__cohorts .mobnav__cohort:hover {
  background: #F7F5F5;
  color: #080808;
}
.mobnav .mobnav__cohorts .mobnav__cohort .cohort__heading {
 /* margin: 0 0 0.5em 0;*/
  margin: 0 0 0 0;
}
.mobnav .mobnav__cohorts .mobnav__cohort .cohort__link {
  display: block;
  padding: 1em;
  box-sizing: border-box;
}
.mobnav .mobnav__cohorts .mobnav__cohort .cohort__info {
  margin-top: 0.5em;
}
.mobnav .mobnav__cohorts .mobnav__cohort .cohort__info .cohort__date {
  color: #ccc;
  display: inline-block;
  vertical-align: middle;
  margin-right: 1em;
}
@media only screen and (min-width: 1400px) {
  .mobnav .mobnav__cohorts .mobnav__cohort .cohort__info .cohort__date {
    margin-right: 0.25em;
  }
}
@media only screen and (min-width: 1600px) {
  .mobnav .mobnav__cohorts .mobnav__cohort .cohort__info .cohort__date {
    margin-right: 1em;
  }
}
.mobnav .mobnav__cohorts .mobnav__cohort .cohort__info .cohort__appclose {
  display: inline-block;
  vertical-align: middle;
}
.mobnav .mobnav__cohorts .mobnav__cohort .cohort__info .cohort__appclose .cohort__appclose__heading {
  margin: 0;
}
@media only screen and (min-width: 700px) {
  .mobnav .mobnav__navs {
    max-width: 32em;
    display: flex;
    flex-flow: column;
    margin: 0 auto;
    height: 100%;
  }
}
@media only screen and (min-width: 1200px) {
  .mobnav .mobnav__navs {
    padding-right: 3em;
  }
}
.mobnav .mobnav__navs .mobnav__navs__main {
  margin: 1em 0 0 0;
}
@media only screen and (min-width: 1000px) {
  .mobnav .mobnav__navs .mobnav__navs__main {
    flex: 1 1 auto;
    margin: 3em 0 0 0;
  }
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link {
  opacity: 0;
  -webkit-transform: translateY(1em);
  -moz-transform: translateY(1em);
  transform: translateY(1em);
  -webkit-transition: opacity 500ms cubic-bezier(0.33, 1, 0.68, 1), transform 500ms cubic-bezier(0.33, 1, 0.68, 1);
  -moz-transition: opacity 500ms cubic-bezier(0.33, 1, 0.68, 1), transform 500ms cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 500ms cubic-bezier(0.33, 1, 0.68, 1), transform 500ms cubic-bezier(0.33, 1, 0.68, 1);
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(2) {
  -webkit-transition-delay: 200ms;
  -moz-transition-delay: 200ms;
  transition-delay: 200ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(3) {
  -webkit-transition-delay: 300ms;
  -moz-transition-delay: 300ms;
  transition-delay: 300ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(4) {
  -webkit-transition-delay: 400ms;
  -moz-transition-delay: 400ms;
  transition-delay: 400ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(5) {
  -webkit-transition-delay: 500ms;
  -moz-transition-delay: 500ms;
  transition-delay: 500ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(6) {
  -webkit-transition-delay: 600ms;
  -moz-transition-delay: 600ms;
  transition-delay: 600ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(7) {
  -webkit-transition-delay: 700ms;
  -moz-transition-delay: 700ms;
  transition-delay: 700ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(8) {
  -webkit-transition-delay: 800ms;
  -moz-transition-delay: 800ms;
  transition-delay: 800ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(9) {
  -webkit-transition-delay: 900ms;
  -moz-transition-delay: 900ms;
  transition-delay: 900ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(10) {
  -webkit-transition-delay: 1000ms;
  -moz-transition-delay: 1000ms;
  transition-delay: 1000ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(11) {
  -webkit-transition-delay: 1100ms;
  -moz-transition-delay: 1100ms;
  transition-delay: 1100ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(12) {
  -webkit-transition-delay: 1200ms;
  -moz-transition-delay: 1200ms;
  transition-delay: 1200ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(13) {
  -webkit-transition-delay: 1300ms;
  -moz-transition-delay: 1300ms;
  transition-delay: 1300ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(14) {
  -webkit-transition-delay: 1400ms;
  -moz-transition-delay: 1400ms;
  transition-delay: 1400ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(15) {
  -webkit-transition-delay: 1500ms;
  -moz-transition-delay: 1500ms;
  transition-delay: 1500ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(16) {
  -webkit-transition-delay: 1600ms;
  -moz-transition-delay: 1600ms;
  transition-delay: 1600ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(17) {
  -webkit-transition-delay: 1700ms;
  -moz-transition-delay: 1700ms;
  transition-delay: 1700ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(18) {
  -webkit-transition-delay: 1800ms;
  -moz-transition-delay: 1800ms;
  transition-delay: 1800ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(19) {
  -webkit-transition-delay: 1900ms;
  -moz-transition-delay: 1900ms;
  transition-delay: 1900ms;
}
.mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link:nth-child(20) {
  -webkit-transition-delay: 2000ms;
  -moz-transition-delay: 2000ms;
  transition-delay: 2000ms;
}
.mobnavopen .mobnav .mobnav__navs .mobnav__navs__main .mobnav__nav__link {
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}
.mobnav .mobnav__navs .mobnav__navs__secondary {
  margin: 1.5em 0;
  opacity: 0;
  -webkit-transition: opacity 500ms cubic-bezier(0.33, 1, 0.68, 1) 400ms, transform 500ms cubic-bezier(0.33, 1, 0.68, 1) 400ms;
  -moz-transition: opacity 500ms cubic-bezier(0.33, 1, 0.68, 1) 400ms, transform 500ms cubic-bezier(0.33, 1, 0.68, 1) 400ms;
  transition: opacity 500ms cubic-bezier(0.33, 1, 0.68, 1) 400ms, transform 500ms cubic-bezier(0.33, 1, 0.68, 1) 400ms;
}
@media only screen and (min-width: 700px) {
  .mobnav .mobnav__navs .mobnav__navs__secondary {
    flex: 0 1 auto;
    margin: 2em 0;
  }
}
.mobnavopen .mobnav .mobnav__navs .mobnav__navs__secondary {
  opacity: 1;
}
.mobnav .mobnav__navs .mobnav__navs__footer {
  padding: 1.5em 0;
  border-top: 1px solid rgba(248, 121, 93, 0.15);
  opacity: 0;
  -webkit-transition: opacity 500ms cubic-bezier(0.33, 1, 0.68, 1) 400ms, transform 500ms cubic-bezier(0.33, 1, 0.68, 1) 400ms;
  -moz-transition: opacity 500ms cubic-bezier(0.33, 1, 0.68, 1) 400ms, transform 500ms cubic-bezier(0.33, 1, 0.68, 1) 400ms;
  transition: opacity 500ms cubic-bezier(0.33, 1, 0.68, 1) 400ms, transform 500ms cubic-bezier(0.33, 1, 0.68, 1) 400ms;
}
@media only screen and (min-width: 700px) {
  .mobnav .mobnav__navs .mobnav__navs__footer {
    flex: 0 1 auto;
    border-top: none;
  }
}
@media only screen and (max-width: 699px) {
  .mobnav .mobnav__navs .mobnav__navs__footer {
    padding-bottom: 2em;
  }
}
.mobnavopen .mobnav .mobnav__navs .mobnav__navs__footer {
  opacity: 1;
}
@media only screen and (max-width: 699px) {
  .mobnav .mobnav__navs .mobnav__navs__footer li a {
    padding: 0.25em 0.75em;
  }
}
.mobnav .mobnav__navs .mobnav__navs__footer li a:hover {
  opacity: 1;
}
@media only screen and (min-width: 700px) {
  .mobnav .mobnav__nav--main .mobnav__nav__locationslink {
    display: none;
    margin: 0;
  }
}
.mobnav .mobnav__nav--main .mobnav__nav__locationslink a {
  display: block;
  position: relative;
}
.mobnav .mobnav__nav--main .mobnav__nav__locationslink a .fal {
  position: absolute;
  right: 0;
  top: 0.15em;
}
.mobnav .mobnav__nav--main li {
  padding-bottom: 1em;
  margin-bottom: 1em;
  border-bottom: 1px solid rgba(248, 121, 93, 0.15);
}
@media only screen and (min-width: 700px) {
  .mobnav .mobnav__nav--main li {
    margin-bottom: 1.5em;
    padding-bottom: 0;
    border-bottom: none;
  }
}
.mobnav .mobnav__nav--main h3 {
  margin: 0;
}
.mobnav .mobnav__nav--main .mobnav__nav__childnav {
  max-width: 30em;
}
@media only screen and (max-width: 699px) {
  .mobnav .mobnav__nav--main .mobnav__nav__childnav {
    margin-top: 0.25em;
  }
}
.mobnav .mobnav__nav--main .mobnav__nav__childnav li {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
@media only screen and (max-width: 699px) {
  .mobnav .mobnav__nav--main .mobnav__nav__childnav li a {
    padding: 0.25em 0.75em;
  }
}
.mobnav .mobnav__nav--main .mobnav__nav__childnav li a:hover {
  opacity: 1;
}
.mobnav .mobnav__nav--secondary li {
  margin-bottom: 0.5em;
}
.mobnav .mobnav__nav--secondary li:last-child {
  margin-bottom: 0;
}

/*  ==========================================================================
  sitefooter
  ========================================================================== */
.sitefooter {
  box-sizing: border-box;
}
.sitefooter .sitefooter__bd {
  border-top: 1px solid rgba(248, 121, 93, 0.15);
}
.sitefooter .btn .linkline {
  background-image: none;
}
.sitefooter .sitefooter__cta .sitefooter__cta__heading {
  margin: 0;
  max-width: 22em;
}
.sitefooter .sitefooter__cta .sitefooter__cta__btns {
  margin-top: 1.5em;
}
@media only screen and (max-width: 549px) {
  .sitefooter .sitefooter__cta .sitefooter__cta__btns .sitefooter__cta__btn {
    display: block;
    margin: 0 0 0.5em 0;
    text-align: center;
  }
}
.sitefooter .sitefooter__footer {
  padding: 1.5rem 0;
  border-top: 1px solid rgba(248, 121, 93, 0.15);
}
.sitefooter .sitefooter__footer .sitefooter__logo {
  margin-bottom: 1rem;
}
@media only screen and (min-width: 1000px) {
  .sitefooter .sitefooter__footer .sitefooter__logo {
    position: absolute;
    left: 0;
    width: 100%;
    margin-bottom: 0;
    z-index: -1;
    top: 10px;
  }
}
.sitefooter .sitefooter__footer .sitefooter__footer__menu {
  margin-bottom: 0.5em;
}
@media only screen and (min-width: 1000px) {
  .sitefooter .sitefooter__footer .sitefooter__footer__menu {
    margin-top: 0.15em;
  }
}
@media only screen and (min-width: 1200px) {
  .sitefooter .sitefooter__footer .sitefooter__footer__menu {
    margin-top: 0.25em;
  }
}
@media only screen and (min-width: 1400px) {
  .sitefooter .sitefooter__footer .sitefooter__footer__menu {
    margin-top: 0.35em;
  }
}
.sitefooter .sitefooter__footer .sitefooter__info {
  max-width: 32em;
}
@media only screen and (min-width: 1000px) {
  .sitefooter .sitefooter__footer .sitefooter__info p {
    margin: 0;
  }
}
.sitefooter .sitefooter__footer .sitefooter__info--primary {
  margin-bottom: 0.5em;
}
@media only screen and (min-width: 700px) {
  .sitefooter .sitefooter__footer .sitefooter__info--primary {
    margin-bottom: 0;
  }
}
.sitefooter .sitefooter__footer .sitefooter__info--secondary--mobile {
  margin-top: 1em;
}
@media only screen and (min-width: 700px) {
  .sitefooter .sitefooter__footer .sitefooter__info--secondary--mobile {
    display: none;
  }
}
.sitefooter .sitefooter__footer .sitefooter__info--secondary--desktop {
  display: none;
}
@media only screen and (min-width: 700px) {
  .sitefooter .sitefooter__footer .sitefooter__info--secondary--desktop {
    display: block;
  }
}
.sitefooter .sitefooter__footer .sitefooter__madeby {
  display: block;
}








@media only screen and (min-width: 1000px) {
  .main-home-area{ height:93vh!important;}
  .main-footer-area{ height:7vh;}
  .full-height-image-class{
      width: 100vw;
      height: 100vh;
      position: fixed;
      top: 0;
      left: 0;
  }
}
@media only screen and (max-width: 769px) {
 
.main-footer-area{
   position: absolute;bottom: -20px;
}
}



.center-text-align {
  text-align: center;
  color: #ccc;
}

.black-clr .btn {
  color: #000!important;
}
.black-clr .btn:hover {color: #000!important;}

.red-btn {
    background-image: linear-gradient(to right, #F6603E 50%, #F8795D 50%);
    padding: .5em 0.5em;
    font-size: 11px;
    border-radius: 5px;
}
  





/* Timeline Container */
.timeline {

  margin: 20px auto;
  padding: 20px;
}

/* Card container */
.card {
  position: relative;
  max-width: 50%;
  margin: 0px auto;
}
.full-width-card {
  max-width: 100%;
}
/* setting padding based on even or odd */
.card:nth-child(odd) {
  padding: 30px 0 30px 30px;
}
.card:nth-child(even) {
  padding: 30px 30px 30px 0;
}

.card:nth-child(odd) {
  padding: 30px 0 30px 30px;
}
.card:nth-child(even) {
  padding: 30px 30px 30px 0;
}


.app-process h3{
  margin: 0.5em 0 0.25em;

}

.app-process .card:nth-child(odd) {
  padding: 0px 0px 0px 30px;
}

.app-process .card:nth-child(even) {
  padding: 0px 30px 0px 0;
}

/* Global ::before */
.card::before {
  content: "";
  position: absolute;
  width: 50%;
  border: solid #f5785d;
}

/* Setting the border of top, bottom, left */
.card:nth-child(odd)::before {
  left: 0px;
  top: -4.5px;
  bottom: -4.5px;
  border-width: 5px 0 5px 5px;
  border-radius: 50px 0 0 50px;
}

/* Setting the top and bottom to "-5px" because earlier it was out of a pixel in mobile devices */
@media only screen and (max-width: 400px) {
  .card:nth-child(odd)::before {
    top: -5px;
    bottom: -5px;
  }
}

/* Setting the border of top, bottom, right */
.card:nth-child(even)::before {
  right: 0;
  top: 0;
  bottom: 0;
  border-width: 5px 5px 5px 0;
  border-radius: 0 50px 50px 0;
}

/* Removing the border if it is the first card */
.card:first-child::before {
  border-top: 0;
  border-top-left-radius: 0;
}

/* Removing the border if it is the last card  and it's odd */
.card:last-child:nth-child(odd)::before {
  border-bottom: 0;
  border-bottom-left-radius: 0;
}

/* Removing the border if it is the last card  and it's even */
.card:last-child:nth-child(even)::before {
  border-bottom: 0;
  border-bottom-right-radius: 0;
}

/* Information about the timeline */
.info {
  display: flex;
  flex-direction: column;
 
  color: #000;
  border-radius: 10px;
  padding: 10px;
}

/* Title of the card */
.title {
  color: #f5785d;
  position: relative;
}

/* Timeline dot  */
.title::before {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  background: white;
  border-radius: 999px;
  border: 3px solid orangered;
}

/* text right if the card is even  */
.card:nth-child(even) > .info > .title {
  text-align: right;
}

/* setting dot to the left if the card is odd */
.card:nth-child(odd) > .info > .title::before {
  left: -45px;
}

/* setting dot to the right if the card is odd */
.card:nth-child(even) > .info > .title::before {
  right: -45px;
}

@media only screen and (max-width: 699px) {
  .card {
    max-width: 100%;
  }
}

.card:nth-child(even) > .info p {
  text-align: right;
}


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

.whatsapp{
  position:fixed;
  width: 50px;
    height: 50px;
    bottom: 10px;
    right: 20px;
    z-index: 999;
  
  
}
.my-whatsApp{
    margin-top:16px;
}
}









.fa-bars:before { content:url("https://s3.ap-south-1.amazonaws.com/quditinfotech.web/icons/hamburg_open.svg");}
 a:hover .fa-bars {content:url("https://s3.ap-south-1.amazonaws.com/quditinfotech.web/icons/hamburg_open_white.svg");}
.mobnavopen .fa-bars:before { content:url("https://s3.ap-south-1.amazonaws.com/quditinfotech.web/hamburg_close.png")!important;}
.mobnavopen a:hover .fa-bars {content:url("https://s3.ap-south-1.amazonaws.com/quditinfotech.web/icons/hamburg_close_white.svg");}
 
.fa-times:before { content:url("https://s3.ap-south-1.amazonaws.com/quditinfotech.web/hamburg_close.png");} 
.fancybox-close-custom:hover .fa-times:before {
content:url("https://s3.ap-south-1.amazonaws.com/quditinfotech.web/icons/hamburg_close_white.svg");
}
.fa-arrow-right:before {
 
  
}

.fal .fa-arrow-left:before {

}

.black-color {
  color: #000!important;
}



.dotcircle {
    width: .5em;
    height: .5em;
    background: #f34f47;
    border-radius: 50%;
    text-align: center;
    position: relative;
}

.company_heading {
    position: absolute;
    top: 36%;
    font-size: 100%;
    font-weight: bold;
}
.company_heading_white {
   
    color: #fff!important;
}

/*  ==========================================================================
  flex--faqs -- FAQs
  ========================================================================== */
.faqs {
  border-top: 1px solid rgba(248, 121, 93, 0.15);
  position: relative;
}
.faqs .faq {
  display: block;
  position: relative;
  border-bottom: 1px solid rgba(248, 121, 93, 0.15);
}
.faqs .faq .faq-label {
  position: absolute;
  left: 0;
  color: #F8795D;
  font-weight: 400;
}
.faqs .faq .faq__question {
  margin: 0;
  border-top: none;
  padding: 1.25em 0 1.25em 2em;
  position: relative;
  cursor: pointer;
  font-weight: 700;
}
.faqs .faq .faq__question:hover {
  color: #888;
}
.faqs .faq .faq__question .fa {
  position: absolute;
  top: 1em;
  left: 1em;
  display: block;
  line-height: 1.2;
  -webkit-transition: -webkit-transform 150ms ease-out 0s;
  -moz-transition: -moz-transform 150ms ease-out 0s;
  transition: transform 150ms ease-out 0s;
}
.faqs .faq .faq__answer {
  height: 0;
  overflow: hidden;
  opacity: 0;
  -webkit-transform: translate(0, -1em);
  -moz-transform: translate(0, -1em);
  transform: translate(0, -1em);
  -webkit-transition: height 0ms linear 260ms, opacity 250ms ease-out 0ms, transform 150ms ease-out 0ms;
  -moz-transition: height 0ms linear 260ms, opacity 250ms ease-out 0ms, transform 150ms ease-out 0ms;
  transition: height 0ms linear 260ms, opacity 250ms ease-out 0ms, transform 150ms ease-out 0ms;
}
.faqs .faq.faq--open .faq__answer {
  padding: 1.25em 0 1.25em 2em;
  -webkit-transition: height 0ms linear 0ms, opacity 250ms ease-out 10ms, transform 150ms ease-out 10ms;
  -moz-transition: height 0ms linear 0ms, opacity 250ms ease-out 10ms, transform 150ms ease-out 10ms;
  transition: height 0ms linear 0ms, opacity 250ms ease-out 10ms, transform 150ms ease-out 10ms;
  height: auto;
  opacity: 1;
  -webkit-transform: translate(0, 0em);
  -moz-transform: translate(0, 0em);
  transform: translate(0, 0em);
}
.faqs .faq.faq--open .faq__question {
  color: #888;
}
.faqs .faq.faq--open .faq__question .fa {
  -webkit-transform: rotate(-180deg);
  -moz-transform: rotate(-180deg);
  transform: rotate(-180deg);
}/* Sitewide horizontal inset — same as homepage (index.php) */
:root {
  --site-gutter: 1.5em;
  --site-content-max: none;
}
@media (min-width: 550px) {
  :root {
    --site-gutter: 2.5em;
  }
}
@media (min-width: 1000px) {
  :root {
    --site-gutter: 2em;
  }
}
@media (min-width: 1600px) {
  :root {
    --site-content-max: calc(1600px - (2em * 2));
  }
}

.siteheader .siteheader__bd.bd,
.fixedheader .fixedheader__bd.bd {
  padding-left: var(--site-gutter) !important;
  padding-right: var(--site-gutter) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (min-width: 1600px) {
  .siteheader .siteheader__bd.bd,
  .fixedheader .fixedheader__bd.bd {
    max-width: var(--site-content-max) !important;
  }
}

/* Inner pages: banner titles align with siteheader logo (same gutter) */
body:not(.home) .pageheader .pageheader__bd.bd,
body:not(.home) .about-page__hero-inner,
body:not(.home) .contact-page__hero-inner {
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--site-gutter) !important;
  padding-right: var(--site-gutter) !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (min-width: 1600px) {
  body:not(.home) .pageheader .pageheader__bd.bd,
  body:not(.home) .about-page__hero-inner,
  body:not(.home) .contact-page__hero-inner {
    max-width: var(--site-content-max) !important;
  }
}

body:not(.home) .siteheader .siteheader__logo,
body:not(.home) .siteheader .siteheader__logo .logo {
  margin-left: 0;
  padding-left: 0;
}

body:not(.home) .about-page__hero-inner,
body:not(.home) .contact-page__hero-inner {
  text-align: left;
  max-width: none;
}

body:not(.home) .service-page__hero .service-page__hero-copy {
  text-align: left;
}

body:not(.home) .service-page__hero .service-page__intro {
  margin-left: 0;
  margin-right: 0;
}

body:not(.home) .service-page__hero .service-page__hero-actions {
  justify-content: flex-start;
}

/* Local asset overrides — avoids slow cross-origin CSS background fetches */
.siteheader .logo .logo__img--key,
.bg--aubergine .siteheader .logo .logo__img--key,
.home .siteheader .logo .logo__img--key,
.mobnavopen .siteheader .logo .logo__img--key,
.siteheader--transparent .siteheader .logo .logo__img--key,
.logo .logo__img--key {
  background-image: none !important;
}
img.logo__img--key,
img.mobnav__brand-icon {
  display: inline-block !important;
  width: 48px !important;
  height: 48px !important;
  padding-top: 0 !important;
  background-image: none !important;
}
.mobnav-toggle .fa-bars::before,
.mobnav-toggle .fal.fa-bars::before {
  content: none !important;
}
.mobnav-toggle .mobnav-toggle__icon {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
}

.mobnav-toggle .mobnav-toggle__icon--menu {
  display: block !important;
}

.mobnav-toggle .mobnav-toggle__icon--close {
  display: none !important;
}

body.mobnavopen .mobnav-toggle .mobnav-toggle__icon--menu {
  display: none !important;
}

body.mobnavopen .mobnav-toggle .mobnav-toggle__icon--close {
  display: block !important;
}

body.mobnavopen .fixedheader .mobnav-toggle {
  background: #f8795d !important;
  border-color: #f8795d !important;
  color: #fff !important;
}

/* Logo top-left; CTA + menu top-right (aligned) */
.siteheader {
  text-align: left !important;
}
.siteheader .siteheader__logo {
  display: inline-flex;
  text-align: left;
}

.fixedheader {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 150 !important;
  padding: 0 !important;
  pointer-events: none;
}

.fixedheader .fixedheader__bd {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 0.65rem !important;
  padding: 1rem 0 !important;
  max-width: none !important;
  pointer-events: none;
}

.fixedheader .fixedheader__btn,
.fixedheader .mobnav-toggle {
  pointer-events: all;
  margin: 0 !important;
  flex-shrink: 0;
  align-self: center;
}

.fixedheader .fixedheader__btn {
  display: none;
  vertical-align: middle;
}

@media (min-width: 700px) {
  .fixedheader .fixedheader__btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    line-height: 1.2;
  }
}

.mobnavopen .fixedheader .fixedheader__btn {
  display: none !important;
}

.fixedheader .mobnav-toggle {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 3.5rem !important;
  height: 3.5rem !important;
  min-width: 3.5rem !important;
  min-height: 3.5rem !important;
  padding: 0 !important;
  line-height: 1 !important;
  border-radius: 50%;
  background: #fff;
  border: 1px solid rgba(45, 21, 48, 0.05);
  box-sizing: border-box;
  color: #f8795d;
  text-decoration: none;
}

@media (min-width: 700px) {
  .fixedheader .mobnav-toggle {
    width: 3.75rem !important;
    height: 3.75rem !important;
    min-width: 3.75rem !important;
    min-height: 3.75rem !important;
  }
}

.fixedheader .mobnav-toggle:hover {
  background: #f8795d;
  border-color: #f8795d;
  color: #fff;
}

.fixedheader .mobnav-toggle__icon {
  width: 22px !important;
  height: 22px !important;
}

/* Prevent CLS when full stylesheet loads */
.home .siteheader {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
}
.company_heading {
  position: static !important;
}
/* Service detail pages */

/* ── Hero banner ── */
.service-page__hero {
  position: relative;
  overflow: hidden;
}

.service-page__hero .pageheader__body {
  position: relative;
  z-index: 2;
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}

.service-page__hero-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  width: 100%;
}

.service-page__hero-copy {
  width: 100%;
  max-width: 40rem;
  text-align: center;
}

.service-page__hero .pageheader__heading {
  max-width: none;
  width: 100%;
  margin: 0 0 0.75em;
  text-align: inherit;
  line-height: 1.15;
}

.service-page__eyebrow {
  margin: 0 0 0.75em;
  letter-spacing: 0.1em;
  text-align: inherit;
}

.service-page__intro {
  color: rgba(255, 255, 255, 0.75);
  line-height: 1.65;
  max-width: 36em;
  margin: 0 auto 1.5em;
  text-align: inherit;
}

.service-page__hero-icon-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 100%;
  max-width: 280px;
  min-height: 270px;
}

.service-page__hero-icon {
  width: 160px;
  height: 160px;
  max-width: 100%;
  object-fit: contain;
  opacity: 0.95;
  filter: drop-shadow(0 12px 32px rgba(248, 121, 93, 0.25));
}

.service-page__cta {
  margin-top: 0.25em;
  display: inline-block;
}

.service-page__hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: center;
  margin-top: 0.25em;
}

.service-page__cta--partner {
  border: 1px solid rgba(255, 255, 255, 0.65);
  color: #fff;
  background: rgba(113, 75, 103, 0.45);
}

.service-page__cta--partner:hover {
  background: rgba(113, 75, 103, 0.7);
  color: #fff;
}

.service-page__breadcrumb {
  margin: 0 0 0.75em;
}

.service-page__breadcrumb-link {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}

.service-page__breadcrumb-link:hover {
  color: #F8795D;
}

.service-page__partner {
  margin-bottom: 3rem;
}

.service-page__partner-card {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 1.75rem;
  border-radius: 14px;
  border: 1px solid rgba(248, 121, 93, 0.25);
  background: linear-gradient(135deg, rgba(248, 121, 93, 0.1), rgba(113, 75, 103, 0.08));
  box-shadow: 0 8px 32px rgba(248, 121, 93, 0.08);
}

.service-page__partner-brand {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-shrink: 0;
}

.service-page__partner-logo {
  width: 56px;
  height: 56px;
  object-fit: contain;
  border-radius: 12px;
  box-shadow: 0 4px 16px rgba(113, 75, 103, 0.25);
}

.service-page__partner-badge {
  display: inline-block;
  padding: 0.35em 0.75em;
  border-radius: 999px;
  background: #F8795D;
  color: #fff;
  font-size: 0.72em;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.service-page__partner-title {
  margin: 0 0 0.5em;
  font-size: clamp(1.2rem, 2.2vw, 1.5rem);
  font-weight: 500;
  color: #080808;
}

.service-page__partner-text {
  margin: 0 0 1.25em;
  line-height: 1.65;
  color: rgba(8, 8, 8, 0.65);
  max-width: 42em;
}

.service-page__partner-cta {
  display: inline-block;
}

@media (min-width: 768px) {
  .service-page__hero-actions {
    justify-content: flex-start;
  }

  .service-page__partner-card {
    flex-direction: row;
    align-items: center;
    padding: 2rem 2.25rem;
  }

  .service-page__partner-brand {
    flex-direction: column;
    align-items: flex-start;
    min-width: 120px;
  }
}

@media (min-width: 768px) {
  .service-page__hero-inner {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 3rem;
    text-align: left;
  }

  .service-page__hero-copy {
    flex: 1;
    min-width: 0;
    max-width: 36rem;
    text-align: left;
  }

  .service-page__intro {
    margin-left: 0;
    margin-right: 0;
  }

  .service-page__hero-icon-wrap {
    width: auto;
    max-width: 320px;
    min-height: 300px;
    padding-left: 1rem;
  }

  .service-page__hero-icon {
    width: 180px;
    height: 180px;
  }
}

@media (min-width: 1100px) {
  .service-page__hero-copy {
    max-width: 42rem;
  }
}

/* ── Body sections ── */
.service-page__body {
  padding-top: 3rem;
  padding-bottom: 4rem;
}

.service-page__section {
  margin-bottom: 3.5rem;
}

.service-page__section-title {
  margin: 0 0 1.5rem;
  font-weight: 400;
  font-size: clamp(1.35rem, 2.5vw, 1.75rem);
  color: #080808;
}

.service-page__features {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 1fr;
}

@media (min-width: 700px) {
  .service-page__features {
    grid-template-columns: repeat(2, 1fr);
  }
}

.service-page__feature {
  position: relative;
  padding: 1.5rem;
  border: 1px solid rgba(8, 8, 8, 0.08);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.service-page__feature:hover {
  transform: translateY(-3px);
  border-color: rgba(248, 121, 93, 0.25);
  box-shadow: 0 12px 28px rgba(248, 121, 93, 0.1);
}

.service-page__feature h3 {
  margin: 0 0 0.5em;
  font-size: 1.05em;
  font-weight: 500;
  color: #F8795D;
}

.service-page__feature p {
  margin: 0;
  font-size: 0.92em;
  line-height: 1.6;
  color: rgba(8, 8, 8, 0.65);
}

.service-page__section--dark {
  padding: 2.5rem 1.75rem;
  border-radius: 14px;
  background: #080808;
}

.service-page__section--dark .service-page__section-title {
  color: #fff;
}

.service-page__highlights {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.75rem;
}

@media (min-width: 550px) {
  .service-page__highlights {
    grid-template-columns: repeat(3, 1fr);
  }
}

.service-page__highlights li {
  padding: 1rem 1.1rem;
  border: 1px solid rgba(248, 121, 93, 0.2);
  border-radius: 10px;
  font-size: 0.9em;
  color: rgba(255, 255, 255, 0.8);
  background: rgba(255, 255, 255, 0.04);
}

.service-page__cta-block {
  text-align: center;
  padding: 2.5rem 1.5rem;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(248, 121, 93, 0.08), rgba(248, 121, 93, 0.02));
  border: 1px solid rgba(248, 121, 93, 0.15);
}

.service-page__cta-text {
  margin: 0 auto 1.5rem;
  color: rgba(8, 8, 8, 0.6);
  max-width: 28em;
}

.service-page__related-grid {
  display: grid;
  gap: 0.65rem;
  grid-template-columns: repeat(2, 1fr);
}

@media (min-width: 700px) {
  .service-page__related-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.service-page__related-link {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0.75rem 1rem;
  border: 1px solid rgba(8, 8, 8, 0.08);
  border-radius: 10px;
  background: #f9f8f8;
  color: #080808;
  font-size: 0.82em;
  transition: border-color 0.2s, background 0.2s;
}

.service-page__related-link:hover {
  border-color: #F8795D;
  background: #fff;
  color: #080808;
}

.service-page__related-link img {
  flex-shrink: 0;
  object-fit: contain;
}

/* Tech stack chips */
.service-page__stack-lead {
  margin: -0.5rem 0 1.25rem;
  font-size: 0.95rem;
  color: rgba(8, 8, 8, 0.55);
  max-width: 36rem;
}

.service-page__stack {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}

.stack-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.9rem;
  border-radius: 999px;
  background: #fff;
  border: 1px solid rgba(8, 8, 8, 0.08);
  box-shadow: 0 2px 10px rgba(8, 8, 8, 0.04);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.stack-chip:hover {
  border-color: rgba(248, 121, 93, 0.45);
  box-shadow: 0 4px 16px rgba(248, 121, 93, 0.12);
}

.stack-chip__logo {
  width: 22px;
  height: 22px;
  object-fit: contain;
  flex-shrink: 0;
}

.stack-chip__name {
  font-size: 0.82rem;
  font-weight: 500;
  color: #080808;
  white-space: nowrap;
}

/* Scholar eLearning — extended sections */
.service-page__intro-copy {
  max-width: 42rem;
}

.service-page__intro-copy p {
  margin: 0 0 1rem;
  font-size: 0.98rem;
  line-height: 1.65;
  color: rgba(8, 8, 8, 0.68);
}

.service-page__intro-copy p:last-child {
  margin-bottom: 0;
}

.service-page__insights {
  display: grid;
  gap: 1.25rem;
}

@media (min-width: 768px) {
  .service-page__insights {
    grid-template-columns: repeat(2, 1fr);
  }
}

.service-page__insight {
  display: flex;
  gap: 1.25rem;
  align-items: flex-start;
  padding: 1.5rem;
  border: 1px solid rgba(8, 8, 8, 0.08);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.04);
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.service-page__insight:hover {
  transform: translateY(-3px);
  border-color: rgba(248, 121, 93, 0.3);
  box-shadow: 0 12px 32px rgba(248, 121, 93, 0.1);
}

.service-page__insight-visual {
  flex-shrink: 0;
  width: 72px;
  height: 72px;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(248, 121, 93, 0.12), rgba(8, 8, 8, 0.04));
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.service-page__insight-visual img {
  width: 56px;
  height: 56px;
  object-fit: contain;
}

.service-page__insight-body h3 {
  margin: 0 0 0.5em;
  font-size: 1.05em;
  font-weight: 500;
  color: #080808;
}

.service-page__insight-body p {
  margin: 0;
  font-size: 0.9em;
  line-height: 1.6;
  color: rgba(8, 8, 8, 0.62);
}

.service-page__capabilities {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr;
}

@media (min-width: 550px) {
  .service-page__capabilities {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1000px) {
  .service-page__capabilities {
    grid-template-columns: repeat(3, 1fr);
  }
}

.service-page__capability {
  padding: 1.25rem 1.35rem;
  border-radius: 12px;
  border: 1px solid rgba(248, 121, 93, 0.15);
  background: linear-gradient(160deg, rgba(248, 121, 93, 0.06), #fff 55%);
  transition: border-color 0.2s ease, transform 0.2s ease;
}

.service-page__capability:hover {
  border-color: rgba(248, 121, 93, 0.4);
  transform: translateY(-2px);
}

.service-page__capability h3 {
  margin: 0 0 0.45em;
  font-size: 0.98em;
  font-weight: 500;
  color: #F8795D;
}

.service-page__capability p {
  margin: 0;
  font-size: 0.88em;
  line-height: 1.55;
  color: rgba(8, 8, 8, 0.62);
}

.service-page__platform-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr;
}

@media (min-width: 700px) {
  .service-page__platform-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.service-page__platform-card {
  padding: 1.35rem 1.5rem;
  border-radius: 12px;
  background: #080808;
  color: #fff;
  border: 1px solid rgba(248, 121, 93, 0.25);
}

.service-page__platform-card h3 {
  margin: 0 0 0.45em;
  font-size: 1em;
  font-weight: 500;
  color: #F8795D;
}

.service-page__platform-card p {
  margin: 0;
  font-size: 0.88em;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.72);
}
/* Animated service hero visuals */
.service-page {
  --sv-size: 300px;
  --sv-wrap: 320px;
  --sv-wrap-min-h: 270px;
}

@media (min-width: 768px) {
  .service-page {
    --sv-size: 400px;
    --sv-wrap: 480px;
    --sv-wrap-min-h: 300px;
  }
}

@media (min-width: 1100px) {
  .service-page {
    --sv-size: 440px;
    --sv-wrap: 520px;
    --sv-wrap-min-h: 340px;
  }
}

.service-page__hero-visual-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 100%;
  max-width: var(--sv-wrap);
  min-height: var(--sv-wrap-min-h);
}

@media (min-width: 768px) {
  .service-page__hero-visual-wrap {
    width: var(--sv-wrap);
    max-width: var(--sv-wrap);
    flex: 0 0 var(--sv-wrap);
    padding-left: 1rem;
  }

  .service-page__hero-visual-wrap .service-visual {
    max-width: 100%;
    width: 100%;
  }
}

.service-visual {
  width: 100%;
  max-width: var(--sv-size);
  aspect-ratio: 1;
  position: relative;
}

.service-visual__svg {
  width: 100%;
  height: 100%;
  display: block;
  overflow: visible;
}

/* Shared animations */
@keyframes sv-pulse-ring {
  0%, 100% { transform: scale(1); opacity: 0.5; }
  50% { transform: scale(1.06); opacity: 0.85; }
}

@keyframes sv-rotate {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes sv-orbit-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes sv-float {
  0%, 100% { transform: translateY(0); opacity: 0.6; }
  50% { transform: translateY(-8px); opacity: 1; }
}

@keyframes sv-code-grow {
  0%, 100% { stroke-dashoffset: 80; opacity: 0.4; }
  50% { stroke-dashoffset: 0; opacity: 1; }
}

@keyframes sv-blink {
  0%, 100% { opacity: 0.35; }
  50% { opacity: 1; }
}

@keyframes sv-dash-flow {
  to { stroke-dashoffset: -24; }
}

@keyframes sv-bar-grow {
  0%, 100% { transform: scaleY(0.4); }
  50% { transform: scaleY(1); }
}

@keyframes sv-wave {
  0%, 100% { transform: scaleY(0.3); }
  50% { transform: scaleY(1); }
}

.service-visual__pulse-ring {
  transform-origin: 110px 110px;
  animation: sv-pulse-ring 4s ease-in-out infinite;
}

.service-visual__orbit {
  transform-origin: 110px 110px;
  animation: sv-orbit-spin 24s linear infinite;
}

.service-visual__gear {
  transform-origin: 168px 42px;
  animation: sv-rotate 10s linear infinite;
}

.service-visual__node {
  animation: sv-float 3s ease-in-out infinite;
}
.service-visual__node--1 { animation-delay: 0s; }
.service-visual__node--2 { animation-delay: 0.8s; }
.service-visual__node--3 { animation-delay: 1.6s; }

.service-visual__code-line {
  stroke-dasharray: 100;
  animation: sv-code-grow 2.5s ease-in-out infinite;
}
.service-visual__code-line--1 { animation-delay: 0s; }
.service-visual__code-line--2 { animation-delay: 0.4s; }
.service-visual__code-line--3 { animation-delay: 0.8s; }

.service-visual__bulb {
  animation: sv-float 4s ease-in-out infinite;
  transform-origin: 42px 130px;
}

.service-visual__deploy {
  animation: sv-float 2.5s ease-in-out infinite;
  animation-delay: 0.5s;
  transform-origin: 175px 175px;
}

.service-visual__monitor {
  animation: sv-float 5s ease-in-out infinite;
  transform-origin: 110px 98px;
}

/* Media — waveform bars */
.service-visual__bar {
  transform-origin: center bottom;
  animation: sv-wave 1.2s ease-in-out infinite;
}
.service-visual__bar:nth-child(1) { animation-delay: 0s; }
.service-visual__bar:nth-child(2) { animation-delay: 0.15s; }
.service-visual__bar:nth-child(3) { animation-delay: 0.3s; }
.service-visual__bar:nth-child(4) { animation-delay: 0.45s; }
.service-visual__bar:nth-child(5) { animation-delay: 0.6s; }

/* Legacy chart bars (non-ERP visuals) */
.service-visual__chart-bar {
  transform-origin: center bottom;
  animation: sv-bar-grow 2s ease-in-out infinite;
}

/* Mobile screen shine */
.service-visual__shine {
  animation: sv-dash-flow 2s linear infinite;
}

/* ── Product Engineering — 6-phase loop (infographic-inspired) ── */
.service-page--product-engineering {
  --sv-size: 320px;
  --sv-wrap: 340px;
  --sv-wrap-min-h: 290px;
}

@media (min-width: 768px) {
  .service-page--product-engineering {
    --sv-size: 440px;
    --sv-wrap: 500px;
    --sv-wrap-min-h: 320px;
  }
}

@media (min-width: 1100px) {
  .service-page--product-engineering {
    --sv-size: 480px;
    --sv-wrap: 540px;
    --sv-wrap-min-h: 360px;
  }
}

.service-visual--product-engineering .pe-phase-icon {
  pointer-events: none;
}

.service-visual--product-engineering .pe-phase-label {
  letter-spacing: 0.02em;
}

@keyframes pe-hub-pulse {
  0%, 100% { opacity: 0.85; }
  50% { opacity: 1; }
}

@keyframes pe-center-breathe {
  0%, 100% { transform: scale(1); opacity: 0.5; }
  50% { transform: scale(1.12); opacity: 0.85; }
}

@keyframes pe-track-flow {
  to { stroke-dashoffset: -32; }
}

@keyframes pe-phase-highlight {
  0%, 100% {
    opacity: 0.7;
    transform: scale(0.96);
  }
  5%, 18% {
    opacity: 1;
    transform: scale(1.05);
  }
}

@keyframes pe-card-glow {
  0%, 100% {
    stroke: #F8795D;
    filter: drop-shadow(0 0 0 transparent);
  }
  5%, 18% {
    stroke: #fff;
    filter: drop-shadow(0 0 10px rgba(248, 121, 93, 0.65));
  }
}

@keyframes pe-rocket-lift {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-3px); }
}

@keyframes pe-flame-flicker {
  0%, 100% { opacity: 0.4; transform: scaleY(0.8); }
  50% { opacity: 0.9; transform: scaleY(1.1); }
}

.service-visual--product-engineering .pe-center-glow {
  transform-origin: 130px 130px;
  animation: pe-center-breathe 4s ease-in-out infinite;
}

.service-visual--product-engineering .pe-hub {
  animation: pe-hub-pulse 3s ease-in-out infinite;
}

.service-visual--product-engineering .pe-track {
  transform-origin: 130px 130px;
  animation: pe-track-flow 3s linear infinite;
}

.service-visual--product-engineering .pe-chevrons {
  animation: pe-hub-pulse 3s ease-in-out infinite;
}

.service-visual--product-engineering .pe-phase-inner {
  transform-origin: center;
  transform-box: fill-box;
  animation: pe-phase-highlight 14s ease-in-out infinite;
}
.service-visual--product-engineering .pe-phase--1 .pe-phase-inner { animation-delay: 0s; }
.service-visual--product-engineering .pe-phase--2 .pe-phase-inner { animation-delay: -11.7s; }
.service-visual--product-engineering .pe-phase--3 .pe-phase-inner { animation-delay: -9.3s; }
.service-visual--product-engineering .pe-phase--4 .pe-phase-inner { animation-delay: -7s; }
.service-visual--product-engineering .pe-phase--5 .pe-phase-inner { animation-delay: -4.7s; }
.service-visual--product-engineering .pe-phase--6 .pe-phase-inner { animation-delay: -2.3s; }

.service-visual--product-engineering .pe-phase-card {
  animation: pe-card-glow 14s ease-in-out infinite;
}
.service-visual--product-engineering .pe-phase--1 .pe-phase-card { animation-delay: 0s; }
.service-visual--product-engineering .pe-phase--2 .pe-phase-card { animation-delay: -11.7s; }
.service-visual--product-engineering .pe-phase--3 .pe-phase-card { animation-delay: -9.3s; }
.service-visual--product-engineering .pe-phase--4 .pe-phase-card { animation-delay: -7s; }
.service-visual--product-engineering .pe-phase--5 .pe-phase-card { animation-delay: -4.7s; }
.service-visual--product-engineering .pe-phase--6 .pe-phase-card { animation-delay: -2.3s; }

.service-visual--product-engineering .pe-phase--5 .pe-rocket-body {
  transform-origin: center;
  transform-box: fill-box;
  animation: pe-rocket-lift 2s ease-in-out infinite;
}

.service-visual--product-engineering .pe-rocket-flame {
  transform-origin: center top;
  animation: pe-flame-flicker 0.6s ease-in-out infinite;
}

/* ── AI Workflow Automation — semi-circular 5-step arc ── */
.service-page--ai-workflow-automation {
  --sv-size: 360px;
  --sv-wrap: 380px;
  --sv-wrap-min-h: 320px;
}

@media (min-width: 768px) {
  .service-page--ai-workflow-automation {
    --sv-size: 500px;
    --sv-wrap: 560px;
    --sv-wrap-min-h: 360px;
  }
}

@media (min-width: 1100px) {
  .service-page--ai-workflow-automation {
    --sv-size: 560px;
    --sv-wrap: 600px;
    --sv-wrap-min-h: 420px;
  }
}

@keyframes awf-arc-draw {
  0% { stroke-dashoffset: 280; opacity: 0.3; }
  20%, 90% { stroke-dashoffset: 0; opacity: 1; }
  100% { stroke-dashoffset: -20; opacity: 0.5; }
}

@keyframes awf-step-in {
  0%, 100% { opacity: 0.65; transform: scale(0.94); }
  6%, 20% { opacity: 1; transform: scale(1.06); }
}

@keyframes awf-ring-glow {
  0%, 100% { stroke: #F8795D; filter: drop-shadow(0 0 0 transparent); }
  6%, 20% { stroke: #fff; filter: drop-shadow(0 0 12px rgba(248, 121, 93, 0.7)); }
}

@keyframes awf-hub-fade {
  0%, 100% { opacity: 0.8; }
  50% { opacity: 1; }
}

@keyframes awf-rocket-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-3px); }
}

.service-visual--workflow .awf-arc {
  stroke-dasharray: 280;
  stroke-dashoffset: 280;
  animation: awf-arc-draw 12s ease-in-out infinite;
}

.service-visual--workflow .awf-hub {
  animation: awf-hub-fade 3s ease-in-out infinite;
}

.service-visual--workflow .awf-step-inner {
  transform-origin: center;
  transform-box: fill-box;
  animation: awf-step-in 12s ease-in-out infinite;
}
.service-visual--workflow .awf-step--1 .awf-step-inner { animation-delay: 0s; }
.service-visual--workflow .awf-step--2 .awf-step-inner { animation-delay: -9.6s; }
.service-visual--workflow .awf-step--3 .awf-step-inner { animation-delay: -7.2s; }
.service-visual--workflow .awf-step--4 .awf-step-inner { animation-delay: -4.8s; }
.service-visual--workflow .awf-step--5 .awf-step-inner { animation-delay: -2.4s; }

.service-visual--workflow .awf-step-ring {
  animation: awf-ring-glow 12s ease-in-out infinite;
}
.service-visual--workflow .awf-step--1 .awf-step-ring { animation-delay: 0s; }
.service-visual--workflow .awf-step--2 .awf-step-ring { animation-delay: -9.6s; }
.service-visual--workflow .awf-step--3 .awf-step-ring { animation-delay: -7.2s; }
.service-visual--workflow .awf-step--4 .awf-step-ring { animation-delay: -4.8s; }
.service-visual--workflow .awf-step--5 .awf-step-ring { animation-delay: -2.4s; }

.service-visual--workflow .awf-step--2 .awf-rocket {
  transform-origin: center;
  transform-box: fill-box;
  animation: awf-rocket-float 2s ease-in-out infinite;
}

/* ── Legacy Modernization — legacy → modern hub transition ── */
.service-page--legacy-modernization {
  --sv-wrap: 100%;
  --sv-wrap-min-h: 270px;
  --sv-legacy-max: 100%;
}

.service-page--legacy-modernization .service-page__hero-visual-wrap {
  max-width: var(--sv-wrap);
  width: 100%;
}

.service-page--legacy-modernization .service-page__hero-inner {
  flex-wrap: wrap;
}

@media (min-width: 768px) {
  .service-page--legacy-modernization {
    --sv-wrap: min(640px, 60vw);
    --sv-wrap-min-h: 300px;
    --sv-legacy-max: 560px;
  }

  .service-page--legacy-modernization .service-page__hero-visual-wrap {
    width: var(--sv-wrap);
    max-width: var(--sv-wrap);
    flex: 0 1 var(--sv-wrap);
  }

  .service-page--legacy-modernization .service-page__hero-copy {
    flex: 1 1 280px;
  }
}

@media (min-width: 1100px) {
  .service-page--legacy-modernization {
    --sv-wrap: min(700px, 58vw);
    --sv-legacy-max: 620px;
  }
}

.service-visual--legacy {
  max-width: var(--sv-legacy-max, 100%);
  width: 100%;
  aspect-ratio: 340 / 190;
}

@keyframes lm-legacy-fade {
  0%, 100% { opacity: 0.75; }
  50% { opacity: 0.5; }
}

@keyframes lm-modern-pulse {
  0%, 100% { transform: scale(1); filter: drop-shadow(0 0 6px rgba(248, 121, 93, 0.4)); }
  50% { transform: scale(1.04); filter: drop-shadow(0 0 16px rgba(248, 121, 93, 0.75)); }
}

@keyframes lm-petal-slide-left {
  0% { opacity: 0; transform: translateX(12px); }
  15%, 85% { opacity: 1; transform: translateX(0); }
  100% { opacity: 0.7; transform: translateX(0); }
}

@keyframes lm-petal-slide-right {
  0% { opacity: 0; transform: translateX(-12px); }
  20%, 90% { opacity: 1; transform: translateX(0); }
  100% { opacity: 1; transform: translateX(0); }
}

@keyframes lm-arrow-flow {
  0% { stroke-dashoffset: 60; opacity: 0.4; }
  30%, 100% { stroke-dashoffset: 0; opacity: 1; }
}

@keyframes lm-arrow-pulse-move {
  0% { transform: translateX(-20px); opacity: 0.3; }
  50% { transform: translateX(20px); opacity: 1; }
  100% { transform: translateX(-20px); opacity: 0.3; }
}

.service-visual--legacy .lm-legacy-hub {
  animation: lm-legacy-fade 4s ease-in-out infinite;
}

.service-visual--legacy .lm-modern-hub {
  transform-origin: 252px 95px;
  animation: lm-modern-pulse 3s ease-in-out infinite;
}

.service-visual--legacy .lm-petal--legacy .lm-petal-shape {
  transform-origin: 48px center;
  transform-box: fill-box;
  animation: lm-petal-slide-left 1.2s ease-out forwards, lm-legacy-fade 4s ease-in-out 1.2s infinite;
}
.service-visual--legacy .lm-petal--legacy-1 .lm-petal-shape { animation-delay: 0.1s, 1.3s; }
.service-visual--legacy .lm-petal--legacy-2 .lm-petal-shape { animation-delay: 0.25s, 1.45s; }
.service-visual--legacy .lm-petal--legacy-3 .lm-petal-shape { animation-delay: 0.4s, 1.6s; }
.service-visual--legacy .lm-petal--legacy-4 .lm-petal-shape { animation-delay: 0.55s, 1.75s; }

.service-visual--legacy .lm-label-bg,
.service-visual--legacy .lm-label-text,
.service-visual--legacy .lm-hub-text {
  opacity: 1;
}

.service-visual--legacy .lm-petal--modern .lm-petal-shape {
  transform-origin: 292px center;
  transform-box: fill-box;
  animation: lm-petal-slide-right 0.8s ease-out forwards;
}
.service-visual--legacy .lm-petal--modern-1 .lm-petal-shape { animation-delay: 0.9s; }
.service-visual--legacy .lm-petal--modern-2 .lm-petal-shape { animation-delay: 1.05s; }
.service-visual--legacy .lm-petal--modern-3 .lm-petal-shape { animation-delay: 1.2s; }
.service-visual--legacy .lm-petal--modern-4 .lm-petal-shape { animation-delay: 1.35s; }

.service-visual--legacy .lm-arrow-line {
  stroke-dasharray: 60;
  animation: lm-arrow-flow 2.5s ease-in-out infinite;
}

.service-visual--legacy .lm-arrow-pulse {
  transform-origin: center;
  transform-box: fill-box;
  animation: lm-arrow-pulse-move 2.5s ease-in-out infinite;
}

.service-visual--legacy .lm-label-text,
.service-visual--legacy .lm-hub-text {
  -webkit-font-smoothing: antialiased;
}

.service-visual--legacy .lm-label-bg {
  stroke: rgba(255, 255, 255, 0.15);
  stroke-width: 0.5;
}

/* Readable labels on all multi-step hero visuals */
.service-visual--product-engineering .pe-phase-label,
.service-visual--product-engineering .pe-hub text {
  paint-order: stroke fill;
  stroke: rgba(0, 0, 0, 0.55);
  stroke-width: 2px;
  stroke-linejoin: round;
}

.service-visual--product-engineering .pe-hub text:last-child {
  fill: rgba(255, 255, 255, 0.92) !important;
  font-size: 8px !important;
}

.service-visual--workflow .awf-step-label,
.service-visual--workflow .awf-step-sub,
.service-visual--workflow .awf-hub text {
  paint-order: stroke fill;
  stroke: rgba(0, 0, 0, 0.6);
  stroke-width: 2px;
  stroke-linejoin: round;
}

.service-visual--workflow .awf-step-label {
  font-size: 8.5px !important;
  font-weight: 700 !important;
}

.service-visual--workflow .awf-step-sub {
  fill: rgba(255, 255, 255, 0.92) !important;
  font-size: 7.5px !important;
}

.service-visual--workflow .awf-hub-title {
  font-size: 13px !important;
}

.service-visual--workflow .awf-hub-sub {
  font-size: 10px !important;
  fill: rgba(255, 255, 255, 0.95) !important;
}

@media (min-width: 768px) {
  .service-visual--workflow .awf-hub-title {
    font-size: 15px !important;
  }

  .service-visual--workflow .awf-hub-sub {
    font-size: 11px !important;
  }
}

/* ── Research & Development — circular R&D life cycle ── */
.service-page--research-and-development {
  --sv-size: 320px;
  --sv-wrap: 340px;
  --sv-wrap-min-h: 290px;
}

@media (min-width: 768px) {
  .service-page--research-and-development {
    --sv-size: 440px;
    --sv-wrap: 500px;
    --sv-wrap-min-h: 320px;
  }
}

@media (min-width: 1100px) {
  .service-page--research-and-development {
    --sv-size: 480px;
    --sv-wrap: 540px;
    --sv-wrap-min-h: 360px;
  }
}

@keyframes rnd-center-breathe {
  0%, 100% { transform: scale(1); opacity: 0.5; }
  50% { transform: scale(1.12); opacity: 0.85; }
}

@keyframes rnd-track-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes rnd-arc-draw {
  0% { stroke-dashoffset: 120; opacity: 0.35; }
  8%, 18% { stroke-dashoffset: 0; opacity: 1; }
  100% { stroke-dashoffset: 0; opacity: 0.55; }
}

@keyframes rnd-step-highlight {
  0%, 100% {
    opacity: 0.7;
    transform: scale(0.96);
  }
  5%, 18% {
    opacity: 1;
    transform: scale(1.05);
  }
}

@keyframes rnd-card-glow {
  0%, 100% {
    filter: drop-shadow(0 0 0 transparent);
    stroke-opacity: 0.85;
  }
  5%, 18% {
    filter: drop-shadow(0 0 12px rgba(248, 121, 93, 0.65));
    stroke-opacity: 1;
  }
}

@keyframes rnd-hub-pulse {
  0%, 100% { opacity: 0.85; }
  50% { opacity: 1; }
}

.service-visual--research .rnd-center-glow {
  transform-origin: 140px 140px;
  animation: rnd-center-breathe 4s ease-in-out infinite;
}

.service-visual--research .rnd-track {
  transform-origin: 140px 140px;
  animation: rnd-track-spin 48s linear infinite;
}

.service-visual--research .rnd-arc {
  stroke-dasharray: 120;
  stroke-dashoffset: 120;
  animation: rnd-arc-draw 16s ease-in-out infinite;
}
.service-visual--research .rnd-arc--1 { animation-delay: 0s; }
.service-visual--research .rnd-arc--2 { animation-delay: -12.8s; }
.service-visual--research .rnd-arc--3 { animation-delay: -9.6s; }
.service-visual--research .rnd-arc--4 { animation-delay: -6.4s; }
.service-visual--research .rnd-arc--5 { animation-delay: -3.2s; }

.service-visual--research .rnd-hub {
  animation: rnd-hub-pulse 3s ease-in-out infinite;
}

.service-visual--research .rnd-step-inner {
  transform-origin: center;
  transform-box: fill-box;
  animation: rnd-step-highlight 16s ease-in-out infinite;
}
.service-visual--research .rnd-step--1 .rnd-step-inner { animation-delay: 0s; }
.service-visual--research .rnd-step--2 .rnd-step-inner { animation-delay: -12.8s; }
.service-visual--research .rnd-step--3 .rnd-step-inner { animation-delay: -9.6s; }
.service-visual--research .rnd-step--4 .rnd-step-inner { animation-delay: -6.4s; }
.service-visual--research .rnd-step--5 .rnd-step-inner { animation-delay: -3.2s; }

.service-visual--research .rnd-step-card {
  animation: rnd-card-glow 16s ease-in-out infinite;
}
.service-visual--research .rnd-step--1 .rnd-step-card { animation-delay: 0s; }
.service-visual--research .rnd-step--2 .rnd-step-card { animation-delay: -12.8s; }
.service-visual--research .rnd-step--3 .rnd-step-card { animation-delay: -9.6s; }
.service-visual--research .rnd-step--4 .rnd-step-card { animation-delay: -6.4s; }
.service-visual--research .rnd-step--5 .rnd-step-card { animation-delay: -3.2s; }

.service-visual--research .rnd-step-icon {
  pointer-events: none;
}

.service-visual--research .rnd-step-title,
.service-visual--research .rnd-step-desc,
.service-visual--research .rnd-hub-line {
  paint-order: stroke fill;
  stroke: rgba(0, 0, 0, 0.55);
  stroke-width: 2px;
  stroke-linejoin: round;
}

.service-visual--research .rnd-step-title {
  font-size: 7.5px !important;
  letter-spacing: 0.02em;
}

.service-visual--research .rnd-step-desc {
  font-size: 6px !important;
  fill: rgba(255, 255, 255, 0.92) !important;
}

.service-visual--research .rnd-hub-line {
  font-size: 11px !important;
}

.service-visual--research .rnd-hub-line:last-of-type {
  fill: rgba(255, 255, 255, 0.92) !important;
  font-size: 10px !important;
}

@media (min-width: 768px) {
  .service-visual--research .rnd-hub-line {
    font-size: 12px !important;
  }

  .service-visual--research .rnd-hub-line:last-of-type {
    font-size: 11px !important;
  }

  .service-visual--research .rnd-step-title {
    font-size: 8px !important;
  }
}

/* ── ERP Systems — 9-module integration wheel ── */
.service-page--erp-systems {
  --sv-size: 320px;
  --sv-wrap: 340px;
  --sv-wrap-min-h: 290px;
}

@media (min-width: 768px) {
  .service-page--erp-systems {
    --sv-size: 440px;
    --sv-wrap: 500px;
    --sv-wrap-min-h: 320px;
  }
}

@media (min-width: 1100px) {
  .service-page--erp-systems {
    --sv-size: 480px;
    --sv-wrap: 540px;
    --sv-wrap-min-h: 360px;
  }
}

@keyframes erp-wheel-enter {
  from { opacity: 0.2; }
  to { opacity: 1; }
}

@keyframes erp-center-breathe {
  0%, 100% { opacity: 0.5; }
  50% { opacity: 0.9; }
}

@keyframes erp-hub-ring-pulse {
  0%, 100% { stroke-opacity: 0.35; }
  50% { stroke-opacity: 0.85; }
}

@keyframes erp-segment-active {
  0%, 100% { opacity: 0.72; }
  5%, 16% { opacity: 1; }
}

@keyframes erp-segment-glow {
  0%, 100% { filter: drop-shadow(0 0 0 transparent); }
  5%, 16% { filter: drop-shadow(0 0 14px rgba(248, 121, 93, 0.85)); }
}

@keyframes erp-content-fade {
  0%, 100% { opacity: 0.75; }
  5%, 16% { opacity: 1; }
}

@keyframes erp-flow-pulse {
  0%, 100% { stroke-opacity: 0.2; }
  50% { stroke-opacity: 0.65; }
}

@keyframes erp-gear-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

.service-visual--erp .erp-wheel {
  animation: erp-wheel-enter 0.9s ease-out forwards;
}

.service-visual--erp .erp-center-glow {
  animation: erp-center-breathe 4s ease-in-out infinite;
}

.service-visual--erp .erp-hub-ring {
  animation: erp-hub-ring-pulse 3s ease-in-out infinite;
}

.service-visual--erp .erp-segment-fill {
  animation: erp-segment-active 18s ease-in-out infinite, erp-segment-glow 18s ease-in-out infinite;
}
.service-visual--erp .erp-segment--1 .erp-segment-fill { animation-delay: 0s, 0s; }
.service-visual--erp .erp-segment--2 .erp-segment-fill { animation-delay: -16s, -16s; }
.service-visual--erp .erp-segment--3 .erp-segment-fill { animation-delay: -14s, -14s; }
.service-visual--erp .erp-segment--4 .erp-segment-fill { animation-delay: -12s, -12s; }
.service-visual--erp .erp-segment--5 .erp-segment-fill { animation-delay: -10s, -10s; }
.service-visual--erp .erp-segment--6 .erp-segment-fill { animation-delay: -8s, -8s; }
.service-visual--erp .erp-segment--7 .erp-segment-fill { animation-delay: -6s, -6s; }
.service-visual--erp .erp-segment--8 .erp-segment-fill { animation-delay: -4s, -4s; }
.service-visual--erp .erp-segment--9 .erp-segment-fill { animation-delay: -2s, -2s; }

.service-visual--erp .erp-segment-content {
  animation: erp-content-fade 18s ease-in-out infinite;
}
.service-visual--erp .erp-segment--1 .erp-segment-content { animation-delay: 0s; }
.service-visual--erp .erp-segment--2 .erp-segment-content { animation-delay: -16s; }
.service-visual--erp .erp-segment--3 .erp-segment-content { animation-delay: -14s; }
.service-visual--erp .erp-segment--4 .erp-segment-content { animation-delay: -12s; }
.service-visual--erp .erp-segment--5 .erp-segment-content { animation-delay: -10s; }
.service-visual--erp .erp-segment--6 .erp-segment-content { animation-delay: -8s; }
.service-visual--erp .erp-segment--7 .erp-segment-content { animation-delay: -6s; }
.service-visual--erp .erp-segment--8 .erp-segment-content { animation-delay: -4s; }
.service-visual--erp .erp-segment--9 .erp-segment-content { animation-delay: -2s; }

.service-visual--erp .erp-flow-line {
  animation: erp-flow-pulse 3s ease-in-out infinite;
}
.service-visual--erp .erp-flow-line:nth-child(odd) { animation-delay: 0.5s; }

.service-visual--erp .erp-flow-dot {
  fill: #F8795D;
}

.service-visual--erp .erp-icon-gear {
  transform-origin: center;
  transform-box: fill-box;
  animation: erp-gear-spin 10s linear infinite;
}

.service-visual--erp .erp-segment-icon {
  pointer-events: none;
}

.service-visual--erp .erp-segment-label {
  paint-order: stroke fill;
  stroke: rgba(0, 0, 0, 0.45);
  stroke-width: 1.5px;
  stroke-linejoin: round;
}

.service-visual--erp .erp-hub-title {
  paint-order: stroke fill;
  stroke: rgba(0, 0, 0, 0.25);
  stroke-width: 1px;
  stroke-linejoin: round;
}

@media (min-width: 768px) {
  .service-visual--erp .erp-segment-label {
    font-size: 6px !important;
  }

  .service-visual--erp .erp-hub-title {
    font-size: 24px !important;
  }
}

/* ── Odoo partner page ── */
.service-page--odoo {
  --sv-size: 320px;
  --sv-wrap: 340px;
  --sv-wrap-min-h: 290px;
}

@media (min-width: 768px) {
  .service-page--odoo {
    --sv-size: 440px;
    --sv-wrap: 500px;
    --sv-wrap-min-h: 320px;
  }
}

@keyframes odoo-ring-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes odoo-mod-pulse {
  0%, 100% { opacity: 0.7; }
  50% { opacity: 1; }
}

@keyframes odoo-hub-glow {
  0%, 100% { opacity: 0.85; }
  50% { opacity: 1; }
}

.service-visual--odoo .odoo-ring {
  transform-origin: 140px 140px;
  animation: odoo-ring-spin 40s linear infinite;
}

.service-visual--odoo .odoo-hub {
  animation: odoo-hub-glow 3s ease-in-out infinite;
}

.service-visual--odoo .odoo-mod-card {
  animation: odoo-mod-pulse 4s ease-in-out infinite;
}
.service-visual--odoo .odoo-mod--1 .odoo-mod-card { animation-delay: 0s; }
.service-visual--odoo .odoo-mod--2 .odoo-mod-card { animation-delay: -0.5s; }
.service-visual--odoo .odoo-mod--3 .odoo-mod-card { animation-delay: -1s; }
.service-visual--odoo .odoo-mod--4 .odoo-mod-card { animation-delay: -1.5s; }
.service-visual--odoo .odoo-mod--5 .odoo-mod-card { animation-delay: -2s; }
.service-visual--odoo .odoo-mod--6 .odoo-mod-card { animation-delay: -2.5s; }
.service-visual--odoo .odoo-mod--7 .odoo-mod-card { animation-delay: -3s; }
.service-visual--odoo .odoo-mod--8 .odoo-mod-card { animation-delay: -3.5s; }

/* ── Integrations & AI Ops — connected stack hub ── */
.service-page--integrations-ai-ops {
  --sv-size: 320px;
  --sv-wrap: 340px;
  --sv-wrap-min-h: 290px;
}

@media (min-width: 768px) {
  .service-page--integrations-ai-ops {
    --sv-size: 440px;
    --sv-wrap: 500px;
    --sv-wrap-min-h: 320px;
  }
}

@media (min-width: 1100px) {
  .service-page--integrations-ai-ops {
    --sv-size: 480px;
    --sv-wrap: 540px;
    --sv-wrap-min-h: 360px;
  }
}

@keyframes iao-center-breathe {
  0%, 100% { opacity: 0.45; }
  50% { opacity: 0.85; }
}

@keyframes iao-orbit-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes iao-link-flow {
  to { stroke-dashoffset: -20; }
}

@keyframes iao-node-active {
  0%, 100% { opacity: 0.72; }
  5%, 18% { opacity: 1; }
}

@keyframes iao-node-glow {
  0%, 100% { filter: drop-shadow(0 0 0 transparent); }
  5%, 18% { filter: drop-shadow(0 0 12px rgba(248, 121, 93, 0.75)); }
}

@keyframes iao-hub-pulse {
  0%, 100% { opacity: 0.88; }
  50% { opacity: 1; }
}

@keyframes iao-hub-ring-pulse {
  0%, 100% { stroke-opacity: 0.35; }
  50% { stroke-opacity: 0.8; }
}

.service-visual--integrations .iao-center-glow {
  animation: iao-center-breathe 4s ease-in-out infinite;
}

.service-visual--integrations .iao-orbit {
  transform-origin: 140px 140px;
  animation: iao-orbit-spin 48s linear infinite;
}

.service-visual--integrations .iao-link {
  stroke-dasharray: 6 6;
  animation: iao-link-flow 2.5s linear infinite;
}
.service-visual--integrations .iao-link:nth-child(odd) { animation-delay: 0.4s; }

.service-visual--integrations .iao-hub-disc {
  animation: iao-hub-pulse 3s ease-in-out infinite;
}

.service-visual--integrations .iao-hub-ring {
  animation: iao-hub-ring-pulse 3s ease-in-out infinite;
}

.service-visual--integrations .iao-node-card {
  animation: iao-node-active 14s ease-in-out infinite, iao-node-glow 14s ease-in-out infinite;
}
.service-visual--integrations .iao-node--1 .iao-node-card { animation-delay: 0s, 0s; }
.service-visual--integrations .iao-node--2 .iao-node-card { animation-delay: -11.7s, -11.7s; }
.service-visual--integrations .iao-node--3 .iao-node-card { animation-delay: -9.3s, -9.3s; }
.service-visual--integrations .iao-node--4 .iao-node-card { animation-delay: -7s, -7s; }
.service-visual--integrations .iao-node--5 .iao-node-card { animation-delay: -4.7s, -4.7s; }
.service-visual--integrations .iao-node--6 .iao-node-card { animation-delay: -2.3s, -2.3s; }

.service-visual--integrations .iao-packet {
  fill: #F8795D;
}

.service-visual--integrations .iao-node-icon {
  pointer-events: none;
}

.service-visual--integrations .iao-node-label {
  paint-order: stroke fill;
  stroke: rgba(0, 0, 0, 0.5);
  stroke-width: 1.5px;
  stroke-linejoin: round;
}

/* ── AI Media Generations — creative pipeline hub ── */
.service-page--ai-media-generations {
  --sv-size: 320px;
  --sv-wrap: 340px;
  --sv-wrap-min-h: 290px;
}

@media (min-width: 768px) {
  .service-page--ai-media-generations {
    --sv-size: 440px;
    --sv-wrap: 500px;
    --sv-wrap-min-h: 320px;
  }
}

@media (min-width: 1100px) {
  .service-page--ai-media-generations {
    --sv-size: 480px;
    --sv-wrap: 540px;
    --sv-wrap-min-h: 360px;
  }
}

@keyframes amg-center-breathe {
  0%, 100% { opacity: 0.45; }
  50% { opacity: 0.88; }
}

@keyframes amg-orbit-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes amg-link-flow {
  to { stroke-dashoffset: -20; }
}

@keyframes amg-node-active {
  0%, 100% { opacity: 0.72; }
  5%, 22% { opacity: 1; }
}

@keyframes amg-node-glow {
  0%, 100% { filter: drop-shadow(0 0 0 transparent); }
  5%, 22% { filter: drop-shadow(0 0 12px rgba(248, 121, 93, 0.8)); }
}

@keyframes amg-hub-pulse {
  0%, 100% { opacity: 0.88; }
  50% { opacity: 1; }
}

@keyframes amg-hub-ring-pulse {
  0%, 100% { stroke-opacity: 0.35; }
  50% { stroke-opacity: 0.85; }
}

@keyframes amg-sparkle-blink {
  0%, 100% { opacity: 0.35; }
  50% { opacity: 1; }
}

@keyframes amg-wave-bar {
  0%, 100% { transform: scaleY(0.45); opacity: 0.65; }
  50% { transform: scaleY(1); opacity: 1; }
}

.service-visual--media .amg-center-glow {
  animation: amg-center-breathe 4s ease-in-out infinite;
}

.service-visual--media .amg-orbit {
  transform-origin: 140px 140px;
  animation: amg-orbit-spin 52s linear infinite;
}

.service-visual--media .amg-link {
  stroke-dasharray: 6 6;
  animation: amg-link-flow 2.2s linear infinite;
}
.service-visual--media .amg-link:nth-child(odd) { animation-delay: 0.35s; }

.service-visual--media .amg-hub-disc,
.service-visual--media .amg-hub-screen,
.service-visual--media .amg-hub-play {
  animation: amg-hub-pulse 3s ease-in-out infinite;
}

.service-visual--media .amg-hub-ring {
  animation: amg-hub-ring-pulse 3s ease-in-out infinite;
}

.service-visual--media .amg-node-card {
  animation: amg-node-active 12s ease-in-out infinite, amg-node-glow 12s ease-in-out infinite;
}
.service-visual--media .amg-node--1 .amg-node-card { animation-delay: 0s, 0s; }
.service-visual--media .amg-node--2 .amg-node-card { animation-delay: -9s, -9s; }
.service-visual--media .amg-node--3 .amg-node-card { animation-delay: -6s, -6s; }
.service-visual--media .amg-node--4 .amg-node-card { animation-delay: -3s, -3s; }

.service-visual--media .amg-packet {
  fill: #F8795D;
}

.service-visual--media .amg-wave-bar {
  transform-origin: center bottom;
  transform-box: fill-box;
  animation: amg-wave-bar 1.1s ease-in-out infinite;
}
.service-visual--media .amg-wave-bar:nth-child(1) { animation-delay: 0s; }
.service-visual--media .amg-wave-bar:nth-child(2) { animation-delay: 0.15s; }
.service-visual--media .amg-wave-bar:nth-child(3) { animation-delay: 0.3s; }
.service-visual--media .amg-wave-bar:nth-child(4) { animation-delay: 0.45s; }

.service-visual--media .amg-sparkle--1 { animation: amg-sparkle-blink 2s ease-in-out infinite; }
.service-visual--media .amg-sparkle--2 { animation: amg-sparkle-blink 2.5s ease-in-out infinite 0.4s; }
.service-visual--media .amg-sparkle--3 { animation: amg-sparkle-blink 1.8s ease-in-out infinite 0.8s; }

.service-visual--media .amg-node-icon {
  pointer-events: none;
}

.service-visual--media .amg-node-label {
  paint-order: stroke fill;
  stroke: rgba(0, 0, 0, 0.5);
  stroke-width: 1.5px;
  stroke-linejoin: round;
}

/* ── Web Application Development — stack hub ── */
.service-page--web-application-development {
  --sv-size: 320px;
  --sv-wrap: 340px;
  --sv-wrap-min-h: 290px;
}

@media (min-width: 768px) {
  .service-page--web-application-development {
    --sv-size: 440px;
    --sv-wrap: 500px;
    --sv-wrap-min-h: 320px;
  }
}

@media (min-width: 1100px) {
  .service-page--web-application-development {
    --sv-size: 480px;
    --sv-wrap: 540px;
    --sv-wrap-min-h: 360px;
  }
}

/* ── Mobile App Development — platform hub ── */
.service-page--mobile-aplication-development {
  --sv-size: 320px;
  --sv-wrap: 340px;
  --sv-wrap-min-h: 290px;
}

@media (min-width: 768px) {
  .service-page--mobile-aplication-development {
    --sv-size: 440px;
    --sv-wrap: 500px;
    --sv-wrap-min-h: 320px;
  }
}

@media (min-width: 1100px) {
  .service-page--mobile-aplication-development {
    --sv-size: 480px;
    --sv-wrap: 540px;
    --sv-wrap-min-h: 360px;
  }
}

@keyframes stack-center-breathe {
  0%, 100% { opacity: 0.45; }
  50% { opacity: 0.88; }
}

@keyframes stack-orbit-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes stack-link-flow {
  to { stroke-dashoffset: -20; }
}

@keyframes stack-node-active {
  0%, 100% { opacity: 0.72; }
  5%, 24% { opacity: 1; }
}

@keyframes stack-node-glow {
  0%, 100% { filter: drop-shadow(0 0 0 transparent); }
  5%, 24% { filter: drop-shadow(0 0 12px rgba(248, 121, 93, 0.8)); }
}

@keyframes stack-hub-pulse {
  0%, 100% { opacity: 0.88; }
  50% { opacity: 1; }
}

@keyframes stack-hub-ring-pulse {
  0%, 100% { stroke-opacity: 0.35; }
  50% { stroke-opacity: 0.85; }
}

@keyframes stack-line-draw {
  0%, 100% { stroke-dashoffset: 24; opacity: 0.45; }
  50% { stroke-dashoffset: 0; opacity: 1; }
}

@keyframes stack-tile-pulse {
  0%, 100% { opacity: 0.35; }
  50% { opacity: 0.85; }
}

/* Web */
.service-visual--web-app .wav-center-glow,
.service-visual--mobile .mav-center-glow {
  animation: stack-center-breathe 4s ease-in-out infinite;
}

.service-visual--web-app .wav-orbit,
.service-visual--mobile .mav-orbit {
  transform-origin: 140px 140px;
  animation: stack-orbit-spin 50s linear infinite;
}

.service-visual--web-app .wav-link,
.service-visual--mobile .mav-link {
  stroke-dasharray: 6 6;
  animation: stack-link-flow 2.2s linear infinite;
}
.service-visual--web-app .wav-link:nth-child(odd),
.service-visual--mobile .mav-link:nth-child(odd) { animation-delay: 0.35s; }

.service-visual--web-app .wav-hub-disc,
.service-visual--mobile .mav-hub-disc {
  animation: stack-hub-pulse 3s ease-in-out infinite;
}

.service-visual--web-app .wav-hub-ring,
.service-visual--mobile .mav-hub-ring {
  animation: stack-hub-ring-pulse 3s ease-in-out infinite;
}

.service-visual--web-app .wav-node-card {
  animation: stack-node-active 12s ease-in-out infinite, stack-node-glow 12s ease-in-out infinite;
}
.service-visual--web-app .wav-node--1 .wav-node-card { animation-delay: 0s, 0s; }
.service-visual--web-app .wav-node--2 .wav-node-card { animation-delay: -9s, -9s; }
.service-visual--web-app .wav-node--3 .wav-node-card { animation-delay: -6s, -6s; }
.service-visual--web-app .wav-node--4 .wav-node-card { animation-delay: -3s, -3s; }

.service-visual--web-app .wav-packet {
  fill: #F8795D;
}

.service-visual--web-app .wav-hub-line {
  stroke-dasharray: 24;
  animation: stack-line-draw 2.5s ease-in-out infinite;
}
.service-visual--web-app .wav-hub-line--2 { animation-delay: 0.4s; }

.service-visual--web-app .wav-node-icon {
  pointer-events: none;
}

.service-visual--web-app .wav-node-label {
  paint-order: stroke fill;
  stroke: rgba(0, 0, 0, 0.5);
  stroke-width: 1.5px;
  stroke-linejoin: round;
}

/* Mobile */
.service-visual--mobile .mav-node-card {
  animation: stack-node-active 12s ease-in-out infinite, stack-node-glow 12s ease-in-out infinite;
}
.service-visual--mobile .mav-node--1 .mav-node-card { animation-delay: 0s, 0s; }
.service-visual--mobile .mav-node--2 .mav-node-card { animation-delay: -9s, -9s; }
.service-visual--mobile .mav-node--3 .mav-node-card { animation-delay: -6s, -6s; }
.service-visual--mobile .mav-node--4 .mav-node-card { animation-delay: -3s, -3s; }

.service-visual--mobile .mav-packet {
  fill: #F8795D;
}

.service-visual--mobile .mav-hub rect:nth-of-type(n+3) {
  animation: stack-tile-pulse 2s ease-in-out infinite;
}
.service-visual--mobile .mav-hub rect:nth-of-type(3) { animation-delay: 0s; }
.service-visual--mobile .mav-hub rect:nth-of-type(4) { animation-delay: 0.25s; }
.service-visual--mobile .mav-hub rect:nth-of-type(5) { animation-delay: 0.5s; }
.service-visual--mobile .mav-hub rect:nth-of-type(6) { animation-delay: 0.75s; }

.service-visual--mobile .mav-node-icon {
  pointer-events: none;
}

.service-visual--mobile .mav-node-label {
  paint-order: stroke fill;
  stroke: rgba(0, 0, 0, 0.5);
  stroke-width: 1.5px;
  stroke-linejoin: round;
}

/* ── Secure AI Infrastructure — cloud security hub ── */
.service-page--secure-ai-infrastructure {
  --sv-size: 320px;
  --sv-wrap: 340px;
  --sv-wrap-min-h: 290px;
}

@media (min-width: 768px) {
  .service-page--secure-ai-infrastructure {
    --sv-size: 440px;
    --sv-wrap: 500px;
    --sv-wrap-min-h: 320px;
  }
}

@media (min-width: 1100px) {
  .service-page--secure-ai-infrastructure {
    --sv-size: 480px;
    --sv-wrap: 540px;
    --sv-wrap-min-h: 360px;
  }
}

@keyframes sai-heartbeat-draw {
  0%, 100% { stroke-dashoffset: 40; opacity: 0.5; }
  50% { stroke-dashoffset: 0; opacity: 1; }
}

@keyframes sai-cost-bar {
  0%, 100% { transform: scaleY(0.5); opacity: 0.65; }
  50% { transform: scaleY(1); opacity: 1; }
}

.service-visual--cloud .sai-center-glow {
  animation: stack-center-breathe 4s ease-in-out infinite;
}

.service-visual--cloud .sai-orbit {
  transform-origin: 140px 140px;
  animation: stack-orbit-spin 50s linear infinite;
}

.service-visual--cloud .sai-link {
  stroke-dasharray: 6 6;
  animation: stack-link-flow 2.2s linear infinite;
}
.service-visual--cloud .sai-link:nth-child(odd) { animation-delay: 0.35s; }

.service-visual--cloud .sai-hub-disc {
  animation: stack-hub-pulse 3s ease-in-out infinite;
}

.service-visual--cloud .sai-hub-ring {
  animation: stack-hub-ring-pulse 3s ease-in-out infinite;
}

.service-visual--cloud .sai-node-card {
  animation: stack-node-active 12s ease-in-out infinite, stack-node-glow 12s ease-in-out infinite;
}
.service-visual--cloud .sai-node--1 .sai-node-card { animation-delay: 0s, 0s; }
.service-visual--cloud .sai-node--2 .sai-node-card { animation-delay: -9s, -9s; }
.service-visual--cloud .sai-node--3 .sai-node-card { animation-delay: -6s, -6s; }
.service-visual--cloud .sai-node--4 .sai-node-card { animation-delay: -3s, -3s; }

.service-visual--cloud .sai-packet {
  fill: #38bdf8;
}

.service-visual--cloud .sai-heartbeat {
  stroke-dasharray: 40;
  animation: sai-heartbeat-draw 2s ease-in-out infinite;
}

.service-visual--cloud .sai-cost-bar {
  transform-origin: center bottom;
  transform-box: fill-box;
  animation: sai-cost-bar 1.2s ease-in-out infinite;
}
.service-visual--cloud .sai-cost-bar:nth-of-type(2) { animation-delay: 0.2s; }

.service-visual--cloud .sai-node-icon {
  pointer-events: none;
}

.service-visual--cloud .sai-node-label {
  paint-order: stroke fill;
  stroke: rgba(0, 0, 0, 0.5);
  stroke-width: 1.5px;
  stroke-linejoin: round;
}

/* Scholar eLearning hub */
.service-visual--scholar .sel-orbit {
  transform-origin: 140px 140px;
  animation: stack-orbit-spin 42s linear infinite;
}

.service-visual--scholar .sel-orbit-spin {
  animation: stack-orbit-spin 60s linear infinite reverse;
}

.service-visual--scholar .sel-link {
  stroke-dasharray: 5 7;
  animation: stack-link-flow 2.4s linear infinite;
}

.service-visual--scholar .sel-hub circle:first-child {
  animation: stack-hub-pulse 3.2s ease-in-out infinite;
}

.service-visual--scholar .sel-pulse {
  transform-origin: 140px 140px;
  animation: sv-pulse-ring 2.8s ease-in-out infinite;
}

.service-visual--scholar .sel-node-card {
  animation: stack-node-active 10s ease-in-out infinite, stack-node-glow 10s ease-in-out infinite;
}
.service-visual--scholar .sel-node--1 .sel-node-card { animation-delay: 0s, 0s; }
.service-visual--scholar .sel-node--2 .sel-node-card { animation-delay: -2.5s, -2.5s; }
.service-visual--scholar .sel-node--3 .sel-node-card { animation-delay: -5s, -5s; }
.service-visual--scholar .sel-node--4 .sel-node-card { animation-delay: -7.5s, -7.5s; }

@media (prefers-reduced-motion: reduce) {
  .service-visual * {
    animation: none !important;
  }
}
/* Overlay menu — 50/50 layout, brand logo, centered aside */

/* Disable legacy split background — use equal columns instead */
.mobnav--modern:after,
.mobnav--modern:before {
  display: none !important;
}

.mobnav--modern > .siteheader {
  display: none !important;
}

.mobnav--modern .mobnav__bd.bd {
  margin: 0 auto !important;
  max-width: 1600px;
  width: 100%;
  height: 100%;
  padding: 0 var(--site-gutter, 2em) !important;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.mobnav--modern .mobnav__layout {
  display: grid;
  grid-template-columns: 1fr;
  flex: 1;
  min-height: 0;
  width: 100%;
  height: 100%;
}

@media (min-width: 700px) {
  .mobnav--modern .mobnav__layout {
    grid-template-columns: 1fr 1fr;
    gap: 0;
    align-items: stretch;
  }
}

/* —— Left: services —— */
.mobnav--modern .mobnav__col--services {
  padding: 1.75rem 0 2rem;
  box-sizing: border-box;
  overflow-y: auto;
  min-height: 0;
}

@media (min-width: 700px) {
  .mobnav--modern .mobnav__col--services {
    padding: 2.5rem 2.5rem 2.5rem 0;
    border-right: 1px solid rgba(248, 121, 93, 0.12);
  }
}

.mobnav__services {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.mobnav__services-header {
  margin-bottom: 1.5rem;
  flex-shrink: 0;
}

.mobnav__services-heading {
  margin: 0 0 0.4em;
  font-size: 1.35rem;
  font-weight: 600;
  color: #fff;
  line-height: 1.2;
}

.mobnav__services-intro {
  margin: 0;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.55);
  font-size: 0.92rem;
}

.mobnav__services-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.65rem;
  align-items: stretch;
  align-content: start;
}

@media (min-width: 900px) {
  .mobnav__services-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
  }

  .mobnav__service-card--contact {
    grid-column: 1 / -1;
  }
}

.mobnav__service-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
  min-height: 5.25rem;
  padding: 0.85rem 0.75rem;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(248, 121, 93, 0.15);
  border-radius: 10px;
  text-decoration: none;
  color: #fff;
  transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
}

.mobnav__service-card:hover {
  transform: translateY(-2px);
  border-color: rgba(248, 121, 93, 0.45);
  background: rgba(248, 121, 93, 0.1);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
  color: #fff;
}

.mobnav__service-card-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  flex-shrink: 0;
  border-radius: 8px;
  background: rgba(248, 121, 93, 0.12);
}

.mobnav__service-card-icon img {
  max-width: 26px;
  max-height: 26px;
  object-fit: contain;
}

.mobnav__service-card-icon--cta {
  font-size: 1.2rem;
  color: #f8795d;
  font-weight: 600;
}

.mobnav__service-card-title {
  font-size: 0.78rem;
  line-height: 1.35;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.92);
}

.mobnav__service-card--contact {
  border-style: dashed;
  border-color: rgba(248, 121, 93, 0.35);
}

/* —— Right: brand + centered content + footer —— */
.mobnav--modern .mobnav__col--aside {
  padding: 1.75rem 0 2rem;
  box-sizing: border-box;
  overflow-y: auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

@media (min-width: 700px) {
  .mobnav--modern .mobnav__col--aside {
    padding: 2.5rem 0 2.5rem 2.5rem;
  }
}

.mobnav--modern .mobnav__navs {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 100%;
  width: 100%;
  max-width: 22rem;
  margin: 0 auto;
  height: 100%;
}

@media (min-width: 700px) {
  .mobnav--modern .mobnav__navs {
    margin: 0;
    max-width: none;
    padding-left: 0.5rem;
  }
}

/* Logo */
.mobnav__brand {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  flex-shrink: 0;
  margin: 0 0 1.75rem;
  text-decoration: none;
  color: #fff;
}

.mobnav__brand-icon {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  object-fit: contain;
  border-radius: 6px;
}

.mobnav__brand-name {
  font-size: 0.85rem;
  font-weight: 700;
  line-height: 1.3;
  color: rgba(255, 255, 255, 0.92);
  max-width: 11rem;
}

.mobnav--modern .mobnav__brand .company_heading,
.mobnav--modern .mobnav__brand-name {
  position: static !important;
  top: auto !important;
}

.mobnav--modern .mobnav__brand-icon {
  display: block !important;
  width: 48px !important;
  height: 48px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: none !important;
  background-image: none !important;
  object-fit: contain;
}

/* Center block: intro + CTA */
.mobnav__aside-main {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  min-height: 0;
  width: 100%;
  padding: 0.5rem 0;
}

.mobnav__aside-intro {
  margin: 0 0 1.75rem;
  width: 100%;
}

.mobnav__aside-eyebrow {
  margin: 0 0 0.65em;
  font-size: 0.72rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #f8795d;
  font-family: "Rosario", sans-serif;
}

.mobnav__aside-title {
  margin: 0 0 0.75em;
  font-size: clamp(1.25rem, 2vw, 1.55rem);
  line-height: 1.28;
  font-weight: 600;
  color: #fff;
}

.mobnav__aside-desc {
  margin: 0;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.55);
  font-size: 0.92rem;
}

.mobnav__product-card {
  display: flex;
  align-items: center;
  gap: 1rem;
  width: 100%;
  margin: 0 0 1.5rem;
  padding: 1rem 1.1rem;
  border-radius: 12px;
  border: 1px solid rgba(248, 121, 93, 0.35);
  background: linear-gradient(135deg, rgba(248, 121, 93, 0.14), rgba(8, 8, 8, 0.6));
  color: #fff;
  transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.mobnav__product-card:hover {
  border-color: #f8795d;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(248, 121, 93, 0.2);
  color: #fff;
}

.mobnav__product-card-icon {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border-radius: 10px;
  overflow: hidden;
  background: rgba(0, 0, 0, 0.35);
}

.mobnav__product-card-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.mobnav__product-card-copy {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.2em;
}

.mobnav__product-card-eyebrow {
  font-size: 0.68rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #f8795d;
  font-family: "Rosario", sans-serif;
}

.mobnav__product-card-title {
  font-size: 1rem;
  line-height: 1.25;
}

.mobnav__product-card-desc {
  line-height: 1.45;
}

.mobnav__product-card-arrow {
  flex-shrink: 0;
  font-size: 1.25rem;
  color: #f8795d;
  opacity: 0.9;
  transition: transform 0.2s ease;
}

.mobnav__product-card:hover .mobnav__product-card-arrow {
  transform: translateX(4px);
}

.mobnav--modern .mobnav__navs__secondary {
  margin: 0;
  padding: 0;
  width: 100%;
}

.mobnav--modern .mobnav__cta {
  margin: 0;
  padding: 0;
  border-top: none;
  width: 100%;
}

.mobnav--modern .mobnav__cta .btn {
  width: 100%;
  max-width: none;
  margin: 0 !important;
  text-align: center;
  border-radius: 8px;
  padding: 1em 1.5em;
}

/* Footer pinned to bottom */
.mobnav--modern .mobnav__navs__footer {
  flex-shrink: 0;
  margin-top: auto;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(248, 121, 93, 0.12);
  width: 100%;
}

.mobnav--modern .mobnav__nav--footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 1.25rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mobnav--modern .mobnav__nav--footer li {
  margin: 0;
  padding: 0;
}

.mobnav--modern .mobnav__nav--footer a {
  display: inline-block;
  padding: 0.2rem 0;
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.5);
  text-decoration: none;
  transition: color 0.2s ease;
}

.mobnav--modern .mobnav__nav--footer a:hover {
  color: #f8795d;
}

/* Mobile: single scroll column (override legacy fixed .mobnav__col) */
@media (max-width: 699px) {
  .mobnav.mobnav--modern {
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  .mobnav.mobnav--modern .mobnav__bd.bd {
    padding: 5.5rem 1.25rem 2rem !important;
    height: auto !important;
    min-height: 100%;
    overflow: visible !important;
  }

  .mobnav.mobnav--modern .mobnav__layout {
    display: flex !important;
    flex-direction: column !important;
    gap: 0;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  .mobnav.mobnav--modern .mobnav__col,
  .mobnav.mobnav--modern .mobnav__col--services,
  .mobnav.mobnav--modern .mobnav__col--aside {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 0 1.75rem !important;
    height: auto !important;
    min-height: 0 !important;
    flex: none !important;
    overflow: visible !important;
    border-right: none !important;
    box-sizing: border-box;
  }

  .mobnav.mobnav--modern .mobnav__col--services {
    padding-bottom: 1.5rem !important;
  }

  .mobnav.mobnav--modern .mobnav__col--aside {
    border-top: 1px solid rgba(248, 121, 93, 0.12);
    padding-top: 1.75rem !important;
    padding-bottom: 2rem !important;
  }

  .mobnav.mobnav--modern .mobnav__col .mobnav__navs {
    padding-bottom: 0 !important;
  }

  .mobnav.mobnav--modern .mobnav__navs {
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
  }

  .mobnav.mobnav--modern .mobnav__brand {
    margin-bottom: 1.25rem;
  }

  .mobnav.mobnav--modern .mobnav__brand-name {
    position: static !important;
    top: auto !important;
    font-size: 0.9rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.92);
    max-width: none;
  }

  .mobnav.mobnav--modern .mobnav__aside-main {
    flex: none;
    justify-content: flex-start;
  }

  .mobnav.mobnav--modern .mobnav__aside-intro {
    margin-bottom: 1.25rem;
  }

  .mobnav.mobnav--modern .mobnav__aside-title {
    font-size: 1.15rem;
  }

  .mobnav.mobnav--modern .mobnav__navs__footer {
    margin-top: 1.5rem;
    padding-top: 1.25rem;
  }

  .mobnav.mobnav--modern .mobnav__services-grid {
    grid-template-columns: 1fr;
  }

  .mobnav.mobnav--modern .mobnav__service-card--contact {
    grid-column: auto;
  }
}

.mobnav--modern .mobnav__cohorts__back,
.mobnav--modern .mobnav__nav__locationslink {
  display: none !important;
}
/* Modern site footer — Qudit Infotech */
.sitefooter--modern {
  position: relative;
  background: #080808;
  color: rgba(255, 255, 255, 0.75);
  overflow: hidden;
}

.sitefooter--modern .sitefooter__glow {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 80% 60% at 10% 0%, rgba(248, 121, 93, 0.14), transparent 55%),
    radial-gradient(ellipse 50% 40% at 90% 100%, rgba(248, 121, 93, 0.08), transparent 50%);
}

.sitefooter--modern .sitefooter__bd {
  position: relative;
  z-index: 1;
  border-top: 1px solid rgba(248, 121, 93, 0.2);
  padding: 0;
}

.sitefooter--modern .sitefooter__main {
  display: grid;
  gap: 2.5rem;
  padding: 3rem 0 2.5rem;
  border-top: none;
}

@media (min-width: 900px) {
  .sitefooter--modern .sitefooter__main {
    grid-template-columns: minmax(240px, 1.1fr) 2fr;
    gap: 3rem;
    align-items: start;
  }
}

.sitefooter--modern .sitefooter__brand {
  max-width: 22rem;
}

.sitefooter--modern .sitefooter__logo {
  display: inline-block;
  margin-bottom: 1rem;
}

.sitefooter--modern .sitefooter__logo .logo__img--key {
  width: 52px;
  height: 52px;
}

.sitefooter--modern .sitefooter__tagline {
  margin: 0 0 0.75rem;
  font-size: 0.72em;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #F8795D;
  font-family: "Rosario", sans-serif;
}

.sitefooter--modern .sitefooter__desc {
  margin: 0 0 1.5rem;
  font-size: 0.92em;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.55);
}

.sitefooter--modern .sitefooter__cta-btn {
  display: inline-block;
  margin: 0;
  padding: 0.65em 1.25em;
  font-size: 0.85em;
  background-image: linear-gradient(to right, #F6603E 50%, #F8795D 50%);
  background-size: 200% 100%;
  background-position: 0 0;
  border-radius: 6px;
  transition: background-position 0.35s ease, box-shadow 0.35s ease;
}

.sitefooter--modern .sitefooter__cta-btn:hover {
  background-position: 100% 0;
  box-shadow: 0 8px 24px rgba(248, 121, 93, 0.35);
  color: #fff;
}

.sitefooter--modern .sitefooter__cols {
  display: grid;
  gap: 2rem;
  grid-template-columns: 1fr;
}

@media (min-width: 550px) {
  .sitefooter--modern .sitefooter__cols {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 900px) {
  .sitefooter--modern .sitefooter__cols {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}

.sitefooter--modern .sitefooter__col-title {
  margin: 0 0 1rem;
  font-size: 0.78em;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #fff;
  font-family: "Rosario", sans-serif;
}

.sitefooter--modern .sitefooter__col-title::after {
  content: "";
  display: block;
  width: 2rem;
  height: 2px;
  margin-top: 0.5rem;
  background: linear-gradient(90deg, #F8795D, transparent);
  border-radius: 2px;
}

.sitefooter--modern .sitefooter__links,
.sitefooter--modern .sitefooter__contact,
.sitefooter--modern .sitefooter__legal {
  list-style: none;
  margin: 0;
  padding: 0;
}

.sitefooter--modern .sitefooter__links li,
.sitefooter--modern .sitefooter__contact li {
  margin-bottom: 0.55rem;
}

.sitefooter--modern .sitefooter__links a {
  font-size: 0.9em;
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
  transition: color 0.2s ease, padding-left 0.2s ease;
}

.sitefooter--modern .sitefooter__links a:hover {
  color: #F8795D;
  padding-left: 4px;
}

.sitefooter--modern .sitefooter__contact li {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

.sitefooter--modern .sitefooter__contact-label {
  font-size: 0.68em;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(248, 121, 93, 0.85);
}

.sitefooter--modern .sitefooter__contact a,
.sitefooter--modern .sitefooter__contact span {
  font-size: 0.88em;
  color: rgba(255, 255, 255, 0.7);
  line-height: 1.45;
}

.sitefooter--modern .sitefooter__contact a:hover {
  color: #fff;
}

.sitefooter--modern .sitefooter__whatsapp {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1rem;
  padding: 0.55rem 1rem;
  font-size: 0.85em;
  color: #fff;
  text-decoration: none;
  background: rgba(37, 211, 102, 0.15);
  border: 1px solid rgba(37, 211, 102, 0.35);
  border-radius: 999px;
  transition: background 0.25s ease, border-color 0.25s ease, transform 0.2s ease;
}

.sitefooter--modern .sitefooter__whatsapp:hover {
  background: rgba(37, 211, 102, 0.28);
  border-color: rgba(37, 211, 102, 0.6);
  transform: translateY(-1px);
  color: #fff;
}

.sitefooter--modern .sitefooter__whatsapp img {
  flex-shrink: 0;
}

.sitefooter--modern .sitefooter__bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 0 1.75rem;
  border-top: 1px solid rgba(248, 121, 93, 0.12);
}

/* Scroll to top — fixed control (rendered with footer on all pages) */
.sitefooter__scroll-top {
  position: fixed;
  right: 1.25rem;
  bottom: 1.25rem;
  z-index: 998;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.15rem;
  width: 3rem;
  height: 3rem;
  padding: 0;
  border: 1px solid rgba(248, 121, 93, 0.45);
  border-radius: 50%;
  background: linear-gradient(145deg, #1a1a1a 0%, #0d0d0d 100%);
  color: #F8795D;
  cursor: pointer;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35);
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease, background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}

.sitefooter__scroll-top.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.sitefooter__scroll-top:hover,
.sitefooter__scroll-top:focus-visible {
  background: linear-gradient(145deg, #F6603E 0%, #F8795D 100%);
  border-color: transparent;
  color: #fff;
  outline: none;
}

.sitefooter__scroll-top-icon {
  display: block;
  flex-shrink: 0;
}

.sitefooter__scroll-top-label {
  font-size: 0.55rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1;
  font-family: "Rosario", sans-serif;
}

@media only screen and (max-width: 700px) {
  .sitefooter__scroll-top {
    bottom: 4.5rem;
  }
}

.sitefooter--modern .sitefooter__copy {
  margin: 0;
  font-size: 0.8em;
  color: rgba(255, 255, 255, 0.4);
}

.sitefooter--modern .sitefooter__legal {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.25rem;
}

.sitefooter--modern .sitefooter__legal a {
  font-size: 0.8em;
  color: rgba(255, 255, 255, 0.45);
  text-decoration: none;
}

.sitefooter--modern .sitefooter__legal a:hover {
  color: #F8795D;
}

/* Home page: allow full footer height (override legacy 7vh strip) */
.home .main-footer-area--modern {
  height: auto !important;
  position: relative !important;
  bottom: auto !important;
  width: 100%;
}

.home .main-footer-area--modern .sitefooter--modern {
  position: relative;
  z-index: 2;
}

/* Inner pages: spacing above footer */
.sitefooter--modern.margin--top {
  margin-top: 0;
}

body:not(.home) .sitefooter--modern {
  margin-top: 2rem;
}

/* Legacy footer nav hidden when modern footer is active */
.sitefooter--modern + .sitefooter__footer__menu,
.main-footer-area--modern .sitefooter__footer__menu {
  display: none;
}
/* FAQ blocks for SEO / AEO */
.seo-faq {
  margin: 2.5rem 0 0;
  padding-top: 2rem;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.service-page__section--dark + .seo-faq,
.home-ai__faq-wrap .seo-faq {
  border-top-color: rgba(255, 255, 255, 0.12);
}

.seo-faq__title {
  font-family: var(--font-rosario, 'Rosario', sans-serif);
  font-size: 1.35rem;
  font-weight: 700;
  margin: 0 0 1.25rem;
  color: inherit;
}

.seo-faq__list {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.seo-faq__item {
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.6);
  overflow: hidden;
}

.service-page__section--dark ~ .seo-faq .seo-faq__item,
.contact-page .seo-faq__item {
  background: #fff;
}

.seo-faq__question {
  padding: 0.85rem 1rem;
  font-weight: 600;
  cursor: pointer;
  list-style: none;
  line-height: 1.4;
}

.seo-faq__question::-webkit-details-marker {
  display: none;
}

.seo-faq__question::after {
  content: '+';
  float: right;
  font-weight: 400;
  opacity: 0.5;
}

.seo-faq__item[open] .seo-faq__question::after {
  content: '−';
}

.seo-faq__answer {
  margin: 0;
  padding: 0 1rem 1rem;
  font-size: 0.95rem;
  line-height: 1.55;
  opacity: 0.88;
}

.home-ai__faq-wrap {
  max-width: 720px;
  margin: 0 auto;
  padding: 0;
}

.home-ai__section--outcomes .home-ai__faq-wrap {
  padding: 0;
}

.home-ai__faq-wrap .seo-faq {
  border-top: none;
  margin-top: 0;
  padding-top: 0;
}

.home-ai__faq-wrap .seo-faq__title {
  text-align: center;
}

.home-ai-page .seo-faq__item {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.12);
}

.home-ai-page .seo-faq__title,
.home-ai-page .seo-faq__question {
  color: #fff;
}

.home-ai-page .seo-faq__answer {
  color: rgba(255, 255, 255, 0.85);
}
/* Qudit — visual variety & unique character (site-wide accents) */

/* Outfit loads async via perf_optional_fonts() — no render-blocking @import */

.home-ai-page,
.service-page {
  --font-display: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
}

.home-ai-page h1,
.home-ai-page h2,
.home-ai-page h3,
.home-ai-page .home-ai__card-title,
.service-page h1,
.service-page h2,
.service-page h3,
.service-page__section-title {
  font-family: var(--font-display);
}

::selection {
  background: rgba(248, 121, 93, 0.35);
  color: #fff;
}

/* ── Diagonal section dividers ── */
.home-ai__section--wave {
  position: relative;
  margin-top: -1px;
  padding-top: 6rem;
}

.home-ai__section--wave::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 64px;
  background: var(--home-dark, #080808);
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 100%);
  z-index: 0;
}

.home-ai__section--light.home-ai__section--wave::before {
  background: var(--home-light, #f4f3f2);
  clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 100%);
}

.home-ai__section--slant-top {
  clip-path: polygon(0 48px, 100% 0, 100% 100%, 0 100%);
  padding-top: 6.5rem;
}

.home-ai__section--slant-bottom {
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 48px), 0 100%);
  padding-bottom: 6.5rem;
}

/* Trust — gradient mesh */
.home-ai__section--mesh {
  background:
    radial-gradient(ellipse 60% 80% at 0% 50%, rgba(248, 121, 93, 0.06), transparent 50%),
    radial-gradient(ellipse 50% 60% at 100% 30%, rgba(246, 96, 62, 0.05), transparent 45%),
    var(--home-light, #f4f3f2);
}

.home-ai__logo-pill {
  background: linear-gradient(135deg, #fff 0%, #faf9f8 100%);
  border: 1px solid rgba(248, 121, 93, 0.12);
  transition: transform 0.25s ease, border-color 0.25s, box-shadow 0.25s;
}

.home-ai__logo-pill:hover {
  transform: scale(1.04);
  border-color: rgba(248, 121, 93, 0.35);
  box-shadow: 0 8px 24px rgba(248, 121, 93, 0.12);
  color: #F8795D;
}

/* Pull-quote strip */
.home-ai__quote-strip {
  position: relative;
  padding: 3.5rem 0;
  background: #0c0c0c;
  overflow: hidden;
}

.home-ai__quote-strip::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(248, 121, 93, 0.08), transparent);
}

.home-ai__quote-inner {
  max-width: 56rem;
  margin: 0 auto;
  padding: 0 1.5rem;
  text-align: center;
  position: relative;
  z-index: 1;
}

.home-ai__quote-mark {
  display: block;
  font-size: 3rem;
  line-height: 1;
  color: #F8795D;
  opacity: 0.5;
  font-family: Georgia, serif;
  margin-bottom: 0.25rem;
}

.home-ai__quote-text {
  margin: 0;
  font-size: clamp(1.15rem, 2.5vw, 1.45rem);
  font-weight: 300;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.88);
  font-family: var(--font-display);
}

.home-ai__quote-attr {
  display: block;
  margin-top: 1rem;
  font-size: 0.78em;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #F8795D;
}

/* Pillars — asymmetric + accent edge */
.home-ai__section--split .home-ai__pillars {
  align-items: stretch;
}

.home-ai__pillar--agency {
  border-left: 3px solid #F8795D;
  background: linear-gradient(135deg, rgba(248, 121, 93, 0.08) 0%, rgba(255, 255, 255, 0.02) 40%);
}

.home-ai__pillar--research {
  border-left: 3px solid rgba(255, 255, 255, 0.25);
  margin-top: 2rem;
}

@media (min-width: 900px) {
  .home-ai__pillar--research {
    margin-top: 3.5rem;
  }
}

.home-ai__pillar-num {
  position: absolute;
  top: 1.25rem;
  right: 1.25rem;
  font-size: 3rem;
  font-weight: 300;
  line-height: 1;
  color: rgba(248, 121, 93, 0.12);
  font-family: var(--font-display);
}

.home-ai__pillar {
  position: relative;
}

/* Process — timeline */
.home-ai__steps--timeline {
  position: relative;
}

@media (min-width: 700px) {
  .home-ai__steps--timeline::before {
    content: "";
    position: absolute;
    top: 2.5rem;
    left: 8%;
    right: 8%;
    height: 2px;
    background: linear-gradient(90deg, transparent, #F8795D 15%, #F8795D 85%, transparent);
    opacity: 0.35;
  }
}

.home-ai__step--timeline {
  position: relative;
  border-top: 3px solid #F8795D;
}

.home-ai__step--timeline:nth-child(even) {
  border-top-color: rgba(8, 8, 8, 0.15);
  background: linear-gradient(180deg, #fff 0%, #faf9f8 100%);
}

.home-ai__step--timeline .home-ai__step-num {
  border-radius: 50%;
  width: 3rem;
  height: 3rem;
  padding: 0;
}

/* Research — mosaic cards */
.home-ai__research--mosaic {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr;
}

@media (min-width: 700px) {
  .home-ai__research--mosaic {
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: auto auto;
  }

  .home-ai__rcard--mosaic:nth-child(1) { grid-column: span 7; }
  .home-ai__rcard--mosaic:nth-child(2) { grid-column: span 5; }
  .home-ai__rcard--mosaic:nth-child(3) { grid-column: span 5; }
  .home-ai__rcard--mosaic:nth-child(4) { grid-column: span 7; }
}

.home-ai__rcard--mosaic {
  position: relative;
  overflow: hidden;
}

.home-ai__rcard--mosaic::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 80px;
  height: 80px;
  background: radial-gradient(circle at 100% 0%, rgba(248, 121, 93, 0.2), transparent 70%);
  pointer-events: none;
}

.home-ai__rcard-index {
  display: inline-block;
  font-size: 0.7em;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #F8795D;
  margin-bottom: 0.5em;
}

/* Stack — dual marquee */
.home-ai__stack-dual {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.home-ai__stack-row {
  overflow: hidden;
  mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}

.home-ai__stack-row--reverse .home-ai__stack-track {
  animation-direction: reverse;
  animation-duration: 32s;
}

/* Metrics — staggered cards */
.home-ai__metrics--stagger .home-ai__metric:nth-child(1) {
  transform: translateY(0);
  border-top: 3px solid #F8795D;
}

.home-ai__metrics--stagger .home-ai__metric:nth-child(2) {
  transform: translateY(1rem);
  box-shadow: 0 16px 40px rgba(248, 121, 93, 0.12);
}

@media (min-width: 700px) {
  .home-ai__metrics--stagger .home-ai__metric:nth-child(2) {
    transform: translateY(1.5rem);
  }
  .home-ai__metrics--stagger .home-ai__metric:nth-child(3) {
    transform: translateY(0.5rem);
  }
}

.home-ai__metric-icon {
  display: block;
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
  opacity: 0.85;
}

/* Bento — pair row accent */
.home-ai__card-pair .home-ai__card--pair {
  background: linear-gradient(145deg, rgba(248, 121, 93, 0.1), rgba(255, 255, 255, 0.05));
  border-color: rgba(248, 121, 93, 0.22);
}

.home-ai__card-pair .home-ai__card--pair:hover {
  border-color: rgba(248, 121, 93, 0.45);
}

.home-ai__card-index {
  position: absolute;
  top: 0.35rem;
  left: 0.5rem;
  right: auto;
  font-size: 0.55em;
  font-weight: 600;
  color: rgba(248, 121, 93, 0.45);
  font-family: var(--font-display);
}

.home-ai__card {
  position: relative;
}

/* CTA — glass card on gradient */
.home-ai__section--accent .home-ai__inner {
  padding: 2.5rem 2rem;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  max-width: 48rem;
}

.home-ai__section--accent .home-ai__cta-btns .btn--white {
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.15);
}

/* Staggered reveal children */
.home-ai__reveal-stagger > * {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.home-ai__reveal-stagger.is-visible > * {
  opacity: 1;
  transform: none;
}

.home-ai__reveal-stagger.is-visible > *:nth-child(1) { transition-delay: 0.05s; }
.home-ai__reveal-stagger.is-visible > *:nth-child(2) { transition-delay: 0.12s; }
.home-ai__reveal-stagger.is-visible > *:nth-child(3) { transition-delay: 0.19s; }
.home-ai__reveal-stagger.is-visible > *:nth-child(4) { transition-delay: 0.26s; }
.home-ai__reveal-stagger.is-visible > *:nth-child(5) { transition-delay: 0.33s; }
.home-ai__reveal-stagger.is-visible > *:nth-child(6) { transition-delay: 0.4s; }
.home-ai__reveal-stagger.is-visible > *:nth-child(7) { transition-delay: 0.47s; }
.home-ai__reveal-stagger.is-visible > *:nth-child(8) { transition-delay: 0.54s; }
.home-ai__reveal-stagger.is-visible > *:nth-child(9) { transition-delay: 0.61s; }
.home-ai__reveal-stagger.is-visible > *:nth-child(10) { transition-delay: 0.68s; }
.home-ai__reveal-stagger.is-visible > *:nth-child(11) { transition-delay: 0.75s; }
.home-ai__reveal-stagger.is-visible > *:nth-child(12) { transition-delay: 0.82s; }

/* Hero bento: all solution cards visible (above the fold) */
.home-ai__hero .home-ai__bento.home-ai__reveal-stagger > * {
  opacity: 1;
  transform: none;
}

/* Service pages — per-slug accent */
.service-page__hero {
  position: relative;
  overflow: hidden;
}

.service-page__hero-mesh {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.6;
}

.service-page--ai-workflow-automation .service-page__hero-mesh {
  background: radial-gradient(ellipse 80% 60% at 90% 20%, rgba(248, 121, 93, 0.25), transparent 55%);
}
.service-page--product-engineering .service-page__hero-mesh {
  background: radial-gradient(ellipse 70% 50% at 10% 80%, rgba(99, 179, 237, 0.15), transparent 50%);
}
.service-page--legacy-modernization .service-page__hero-mesh {
  background: radial-gradient(ellipse 60% 70% at 80% 50%, rgba(167, 139, 250, 0.12), transparent 50%);
}
.service-page--research-and-development .service-page__hero-mesh {
  background: radial-gradient(ellipse 75% 55% at 20% 30%, rgba(52, 211, 153, 0.12), transparent 50%);
}
.service-page--ai-media-generations .service-page__hero-mesh {
  background: radial-gradient(ellipse 65% 65% at 50% 100%, rgba(251, 191, 36, 0.12), transparent 50%);
}
.service-page--integrations-ai-ops .service-page__hero-mesh {
  background: radial-gradient(ellipse 80% 50% at 100% 0%, rgba(248, 121, 93, 0.2), transparent 55%);
}
.service-page--secure-ai-infrastructure .service-page__hero-mesh {
  background: radial-gradient(ellipse 70% 60% at 0% 50%, rgba(56, 189, 248, 0.15), transparent 50%);
}
.service-page--erp-systems .service-page__hero-mesh {
  background: radial-gradient(ellipse 60% 80% at 70% 20%, rgba(248, 121, 93, 0.18), transparent 55%);
}
.service-page--odoo .service-page__hero-mesh {
  background: radial-gradient(ellipse 65% 75% at 75% 25%, rgba(113, 75, 103, 0.22), transparent 55%),
    radial-gradient(ellipse 50% 60% at 20% 80%, rgba(248, 121, 93, 0.12), transparent 50%);
}
.service-page--web-application-development .service-page__hero-mesh {
  background: radial-gradient(ellipse 70% 60% at 80% 30%, rgba(248, 121, 93, 0.16), transparent 55%),
    radial-gradient(ellipse 50% 50% at 15% 75%, rgba(96, 165, 250, 0.08), transparent 50%);
}
.service-page--mobile-aplication-development .service-page__hero-mesh {
  background: radial-gradient(ellipse 75% 55% at 30% 90%, rgba(248, 121, 93, 0.14), transparent 50%),
    radial-gradient(ellipse 55% 45% at 85% 20%, rgba(244, 114, 182, 0.08), transparent 50%);
}

.service-page__feature {
  position: relative;
  overflow: hidden;
}

.service-page__feature-num {
  position: absolute;
  top: 0.75rem;
  right: 1rem;
  font-size: 2.5rem;
  font-weight: 300;
  color: rgba(248, 121, 93, 0.08);
  font-family: var(--font-display);
  line-height: 1;
}

.service-page__highlights li {
  position: relative;
  padding-left: 2rem;
}

.service-page__highlights li::before {
  content: "◆";
  position: absolute;
  left: 0.85rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.5em;
  color: #F8795D;
}

@media (prefers-reduced-motion: reduce) {
  .home-ai__marquee-track,
  .home-ai__stack-track {
    animation: none !important;
  }
}
