 
/* Css For Potu */

/************ TABLE OF CONTENTS ***************
1. Fonts
2. Reset
3. Global
4. Main Header/style-one/style-two
5. Main Slider/style-one/style-two
6. Intro Section
7. Welcome Section
9. Cta Section
8. Research Fields
10. Testimonial Section
11. Researches Section
12. Team Section
14. Video
15. Fact Counter
16. News Section
19. Clients Section
20. Main Footer
21. Footer Bottom
22. Research Style Two
23. Innovative Solution
24. Discover Section
25. Testimonial Section
26. Chooseus Section
27. News Style Two
28. Page Title
29. Research Page Section
30. Research Details
31. Professor Page Section
32. Professor Details
33. About Section
34. Error Section
35. Blog Page Section
36. Blog Details
37. Blog Sidebar
38. Contact Section
39. Google Map


**********************************************/



/*** 

====================================================================
  Reset
====================================================================

 ***/
* {
  margin:0px;
  padding:0px;
  border:none;
  outline:none;
}


/*** 

====================================================================
  Global Settings
====================================================================

 ***/


:root{
  --theme-color: #CFA144;
  --theme-color-2: #cbab82;
  --secondary-color: #313131;
  --text-color: #404040;
  --title-color: #101010;
  --text-font: 'Open Sans', sans-serif;
  --title-font: 'Sifonn-Basic', sans-serif;
}





body {
  font-size: 14px;
  color: var(--text-color);
  line-height: 22px;
  font-weight: 300;
  font-family: 'OpenSans-Light-webfont', 'Open Sans', sans-serif;
  background: #f2f2f2;
  -webkit-font-smoothing: antialiased;
  text-shadow: 1px 1px 1px rgba(0,0,0,0.004);
  -webkit-text-size-adjust: 100%;
}

.light_bg{
  background-color: #f2f2f2;
}

  @media (min-width:1200px) {
  .container {
    max-width: 1200px;
    padding: 0px 15px;
  }
}

.large-container{
  max-width: 1470px;
  padding: 0px 15px;
  margin: 0 auto;
}

.container-fluid{
  padding: 0px;
}

.auto-container{
  position:static;
  max-width:1470px;
  padding:0px 15px;
  margin:0 auto;
}

.small-container{
  max-width:680px;
  margin:0 auto;
}

.boxed_wrapper{
  position: relative;
  margin: 0 auto;
  overflow: hidden !important;
  width: 100%;
  min-width: 300px;
}


a{
  text-decoration:none;
  transition: all 0.3s linear;
}

a:hover{
  text-decoration:none;
  outline:none;
  color: var(--theme-color);
}

input,button,select,textarea{
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  font-size: 13px;
  background: transparent;
}

::-webkit-input-placeholder {
  color: inherit;
}

::-moz-input-placeholder {
  color: inherit;
}

::-ms-input-placeholder {
  color: inherit;
}

ul,li{
  list-style:none;
  padding:0px;
  margin:0px; 
}

input{
  transition: all 0.3s linear;
}

button:focus,
input:focus,
textarea:focus{
  outline: none;
  box-shadow: 0 0 10px rgba(60, 60, 60, 0.2);
  transition: all 0.3s linear;
}

p{
  position: relative;
  font-family: 'OpenSans-Light-webfont', 'Open Sans', sans-serif;
  color: var(--text-color);
  font-size: 14px;
  line-height: 22px;
  font-weight: 300;
  margin: 0px;
  transition: all 0.3s linear;
}

p.lead {
  font-size: 21px;
  line-height: 27px;
  color: #777;
}

h1,h2,h3,h4,h5,h6{
  position:relative;
  font-family: 'Sifonn-Basic', sans-serif;
  font-weight: normal;
  color: var(--title-color);
  text-align: center;
  text-transform: uppercase;
  margin: 0px;
  transition: all 0.3s linear;
}
h1 { font-size: 38px; line-height: 38px; }
h2 { font-size: 36px; line-height: 36px; }
h3 { font-size: 32px; line-height: 32px; }
h4 { font-size: 28px; line-height: 28px; }
h5 { font-size: 18px; line-height: 18px; }
h6 { font-size: 16px; line-height: 16px; }

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { font-weight: inherit; }

strong { font-weight: 600; }
em { font-style: italic; }
small { font-size: 80%; }

/*	Blockquotes  */
blockquote, blockquote p { font-size: 17px; line-height: 24px; color: #777; }
blockquote { margin: 0 0 20px; padding: 9px 20px 0 19px; border-left: 3px solid var(--theme-color); }
blockquote cite { display: block; font-size: 12px; color: #555; }
blockquote cite:before { content: "\2014 \0020"; }

hr { border: solid #323a3d; border-width: 1px 0 0; clear: both; margin: 0 10px; height: 0; position: relative; }

li { line-height: 18px; }

/* Preloader */

.handle-preloader {
  align-items: center;
  -webkit-align-items: center;
  display: flex;
  display: -ms-flexbox;
  height: 100%;
  justify-content: center;
  -webkit-justify-content: center;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 9999999;
  background: #000;
}

.preloader-close{
  position: fixed;
  z-index: 99999999;
  font-size: 14px;
  background: #fff;
  color: red;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  border-radius: 50%;
  cursor: pointer;
  right: 30px;
  top: 30px;
  font-weight: 400;
}

.handle-preloader .animation-preloader {
  position: absolute;
  z-index: 100;
}

.handle-preloader .animation-preloader .spinner{
  animation: spinner 1s infinite linear;
  border-radius: 50%;
  height: 150px;
  margin: 0 auto 45px auto;
  width: 150px;
}

.handle-preloader .animation-preloader .txt-loading {
  text-align: center;
  user-select: none;
}

.handle-preloader .animation-preloader .txt-loading .letters-loading:before{
  animation: letters-loading 4s infinite;
  content: attr(data-text-preloader);
  left: 0;
  opacity: 0;
  top:0;
  position: absolute;
}

.handle-preloader .animation-preloader .txt-loading .letters-loading{
  font-family: var(--title-font);
  font-weight: 500;
  letter-spacing: 15px;
  display: inline-block;
  position: relative;
  font-size: 70px;
  line-height: 70px;
  text-transform: uppercase;
  color: transparent;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: rgba(255, 255, 255, 0.30);
}

.handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(2):before {animation-delay: 0.2s;}
.handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(3):before {animation-delay: 0.4s;}
.handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(4):before {animation-delay: 0.6s;}
.handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(5):before {animation-delay: 0.8s;}
.handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(6):before { animation-delay: 1s;}
.handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(7):before { animation-delay: 1.2s;}
.handle-preloader .animation-preloader .txt-loading .letters-loading:nth-child(8):before { animation-delay: 1.4s;}
.handle-preloader .loader-section {
  background-color: #ffffff;
  height: 100%;
  position: fixed;
  top: 0;
  width: calc(50% + 1px);
}

.preloader .loaded .animation-preloader {
  opacity: 0;
  transition: 0.3s ease-out;
}

.handle-preloader .animation-preloader .txt-loading .letters-loading:before{
  color: #ffffff;
}

.handle-preloader .animation-preloader .spinner{
  border: 3px solid #ffffff;
  border-top-color: rgba(255, 255, 255, 0.5); 
}

/* AnimaciÃ³n del preloader */
@keyframes spinner {
  to {
    transform: rotateZ(360deg);
  }
}
@keyframes letters-loading {
  0%,
  75%,
  100% {
    opacity: 0;
    transform: rotateY(-90deg);
  }

  25%,
  50% {
    opacity: 1;
    transform: rotateY(0deg);
  }
}

@media screen and (max-width: 767px) {
  .handle-preloader .animation-preloader .spinner {
    height: 8em;
    width: 8em;
  }
}
@media screen and (max-width: 500px) {
  .handle-preloader .animation-preloader .spinner {
    height: 7em;
    width: 7em;
  }
  .handle-preloader .animation-preloader .txt-loading .letters-loading {font-size: 40px; letter-spacing: 10px;}
}


.centred{
  text-align: center;
}

.pull-left{
  float: left;
}

.pull-right{
  float: right;
}


figure{
  margin: 0px;
}

img {
  display: inline-block;
  max-width: 100%;
  height: auto;
  transition-delay: .1s;
  transition-timing-function: ease-in-out;
  transition-duration: .7s;
  transition-property: all;
}

.row{
  --bs-gutter-x: 30px;
}

/** button **/


.theme-btn{
  position: relative;
  display: inline-block;
  overflow: hidden;
  vertical-align: middle;
  font-size: 16px;
  line-height: normal;
  font-weight: 400;
  font-family: 'Lato', sans-serif;
  color: #dfdfdf;
  text-align: center;
  border-radius: 0;
  padding: 15px 25px;
  background: #363636;
  border: none;
  z-index: 1;
  text-transform: uppercase;
  letter-spacing: 1px;
  cursor: pointer;
  transition: all 0.3s linear;
}

.theme-btn:hover{
  background: #292929;
  color: var(--theme-color);
}

.theme-btn span{
  position: relative;
  padding-right: 40px;
}

.theme-btn span:before{
  position: absolute;
  content: '\e900';
  font-family: 'icomoon';
  font-size: 16px;
  top: -2px;
  right: 0px;
  transition: all 500ms ease;
}

.theme-btn:hover span:before{
  transform: rotate(45deg);
}

.theme-btn-three{
  position: relative;
  display: inline-block;
  overflow: hidden;
  vertical-align: middle;
  font-size: 18px;
  line-height: 24px;
  font-weight: 500;
  font-family: var(--text-font);
  color: #fff;
  background: #B9916E;
  text-align: center;
  padding: 15.5px 40px;
  z-index: 1;
  transition: all 500ms ease;
}

.theme-btn-three:hover{
  color: #fff;
}

.theme-btn-three span {
  position: absolute;
  width: 25%;
  height: 100%;
  transform: translateY(150%);
  border-radius: 50%;
  left: calc((var(--n) - 1) * 25%);
  transition: 0.5s;
  transition-delay: calc((var(--n) - 1) * 0.1s);
  z-index: -1;
  background: var(--secondary-color);
}

.theme-btn-three:hover span {
  transform: translateY(0) scale(2);
}

.theme-btn-three span:nth-child(1) {
  --n: 1;
}

.theme-btn-three span:nth-child(2) {
  --n: 2;
}

.theme-btn-three span:nth-child(3) {
  --n: 3;
}

.theme-btn-three span:nth-child(4) {
  --n: 4;
}


/* ==========================================================================
   Ananke Button & Link Styles
   ========================================================================== */

/* Submit button style (Ananke ajax form) */
.btn-submit,
.contact-section input[type="submit"] {
  background: rgba(60, 60, 60, 0.85);
  color: #fff;
  font-size: 13px;
  font-family: 'Lato', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  line-height: 43px;
  height: 43px;
  padding: 0 25px;
  border: none;
  cursor: pointer;
  transition: all 0.3s linear;
}

.btn-submit:hover,
.contact-section input[type="submit"]:hover {
  background: rgba(60, 60, 60, 1);
}

/* CTA link style */
.cta-link {
  display: inline-block;
  font-family: 'Lato', sans-serif;
  font-style: italic;
  font-size: 16px;
  font-weight: 400;
  color: var(--theme-color);
  letter-spacing: 0.5px;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  padding-bottom: 3px;
  transition: all 0.3s linear;
}

.cta-link:hover {
  color: var(--title-color);
  border-bottom-color: var(--title-color);
}


/* ==========================================================================
   Ananke Form Input Styles
   ========================================================================== */

.form-group input[type='text'],
.form-group input[type='email'],
.form-group input[type='tel'],
.form-group input[type='url'],
.form-group input[type='search'],
.form-group textarea {
  font-family: 'Open Sans', sans-serif;
  font-size: 13px;
  line-height: 22px;
  color: #404040;
  width: 96%;
  padding: 10px 0;
  background: #fff;
  border: none;
  border-bottom: 1px solid rgba(0,0,0,0.1);
  transition: all 0.3s linear;
}

.form-group textarea {
  line-height: 24px;
  resize: vertical;
}

.form-group input:focus,
.form-group textarea:focus {
  border-bottom-color: var(--theme-color);
  box-shadow: 0 0 10px rgba(60, 60, 60, 0.2);
}

.form-group label {
  font-family: 'OpenSans-Light-webfont', 'Open Sans', sans-serif;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 1px;
  color: #404040;
}


.parallax-bg{
  position: absolute;
  left: 0px;
  top: -15%;
  width: 100%;
  height: calc(100% + 30%);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}


/** styled-pagination */

.pagination{
  position: relative;
  display: block;
}

.pagination li{
  position: relative;
  display: inline-block;
  margin: 0px 2px;
}

.pagination li a{
  position: relative;
  display: inline-block;
  font-size: 14px;
  height: 50px;
  width: 50px;
  line-height: 50px;
  background: #FFF9F7;
  text-align: center;
  color: #656565;
  border-radius: 50%;
  z-index: 1;
  transition: all 500ms ease;
}

.pagination li a:hover,
.pagination li a.current{
  color: #fff;
  background: #1F1F1F;
}

.sec-pad{
  padding: 142px 0px 150px 0px;
}

.mr-0{
  margin: 0px !important;
}



@-webkit-keyframes ripple {
  70% {
    -webkit-box-shadow: 0 0 0 30px rgba(255, 255, 255, 0);
            box-shadow: 0 0 0 30px rgba(255, 255, 255, 0);
  }
  100% {
    -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
            box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}
@keyframes ripple {
  70% {
    -webkit-box-shadow: 0 0 0 30px rgba(255, 255, 255, 0);
            box-shadow: 0 0 0 30px rgba(255, 255, 255, 0);
  }
  100% {
    -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
            box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}



.sec-title{
  position: relative;
  display: block;
  padding-bottom: 30px;
}

.sec-title:before{
  position: absolute;
  content: '';
  background-image: url(../images/shape/shape-10.png);
  width: 261px;
  height: 23px;
  left: 0px;
  bottom: 0px;
  background-repeat: no-repeat;
}

.sec-title h2{
  position: relative;
  display: block;
  font-size: 90px;
  line-height: 100px;
  font-weight: 500;
}

.sec-title h2 span{
  display: block;
  opacity: 0.4;
}

.sec-title.light h2{
  color: #fff;
}





/*** 

====================================================================
                        Home-Page-One
====================================================================

***/





.hamburger {
  position: relative;
  display: inline-block;
  width: 71px;
  height: 50px;
  line-height: 50px;
  background: #fff;
  border-radius: 40px;
  text-align: center;
  border: solid;
  border-width: 2px;
  border-color: var(--secondary-color);
  padding: 14px 21px;
  cursor: pointer;
  overflow: hidden;
  top: 4px;
  transition: all 500ms ease;
}

.hamburger:hover{

}

.hamburger:hover .hamburger__inner {
  transform: translate(-51px, 50%);
  opacity: 0;
}

.hamburger:hover .hamburger__inner::before, .hamburger:hover .hamburger__inner::after {
  transform: translate(102px, 0);
  opacity: 0;
}

.hamburger__container {
  width: 23px;
  height: 16px;
  position: relative;
}

.hamburger__inner {
  width: 100%;
  height: 2px;
  background-color: #000;
  position: absolute;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.4s;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 1;
}

.hamburger__inner::before {
  top: -8px;
}

.hamburger__inner::after {
  top: 8px;
}

.hamburger__inner::before, .hamburger__inner::after {
  width: 100%;
  height: 2px;
  background-color: #000;
  position: absolute;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.4s;
  content: "";
  opacity: 1;
  transform: translate(-10px, 0);
}

.hamburger__hidden {
  opacity: 0;
  width: 100%;
  height: 2px;
  position: absolute;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.4s;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.hamburger:hover .hamburger__hidden {
  opacity: 1;
  transform: translate(-50%, -50%);
}

.hamburger:hover .hamburger__hidden::before, .hamburger:hover .hamburger__hidden::after {
  opacity: 1;
  transform: translate(0, 0);
}

.hamburger__hidden::before {
  top: -8px;
}

.hamburger__hidden::before, .hamburger__hidden::after {
  width: 100%;
  height: 2px;
  position: absolute;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.4s;
  content: "";
  transform: translate(102px, 0);
  left: 0px;
}

.hamburger__hidden::after {
  top: 8px;
}




.owl-dots-none .owl-dots,
.owl-nav-none .owl-nav{
  display: none !important;
}

.owl-nav button{
  background: transparent;
}

.float-bob-y {
  animation-name: float-bob-y;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  -webkit-animation-name: float-bob-y;
  -webkit-animation-duration: 2s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  -moz-animation-name: float-bob-y;
  -moz-animation-duration: 2s;
  -moz-animation-iteration-count: infinite;
  -moz-animation-timing-function: linear;
  -ms-animation-name: float-bob-y;
  -ms-animation-duration: 2s;
  -ms-animation-iteration-count: infinite;
  -ms-animation-timing-function: linear;
  -o-animation-name: float-bob-y;
  -o-animation-duration: 2s;
  -o-animation-iteration-count: infinite;
  -o-animation-timing-function: linear;
}

.float-bob-x{
  animation-name: float-bob-x;
  animation-duration: 15s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  -webkit-animation-name: float-bob-x;
  -webkit-animation-duration: 15s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  -moz-animation-name: float-bob-x;
  -moz-animation-duration: 15s;
  -moz-animation-iteration-count: infinite;
  -moz-animation-timing-function: linear;
  -ms-animation-name: float-bob-x;
  -ms-animation-duration: 15s;
  -ms-animation-iteration-count: infinite;
  -ms-animation-timing-function: linear;
  -o-animation-name: float-bob-x;
  -o-animation-duration: 15s;
  -o-animation-iteration-count: infinite;
  -o-animation-timing-function: linear;
}


/** demo-switch **/

.demo-switch{
  position: fixed;
  top: 390px;
  left: 10px;
  z-index: 9999;
}

.demo-switch button{
  position: absolute;
  display: inline-block;
  left: 0px;
  top: 0px;
  width: 30px;
  height: 30px;
  line-height: 28px;
  border-radius: 50%;
  font-size: 16px;
  color: #fff;
  border: 1px solid #fff;
  opacity: 0;
}

.light_bg .demo-switch .demo-dark-bg button{
  opacity: 1;
}

.dark_bg .demo-switch .demo-dark-bg button{
  opacity: 0;
}

.light_bg .demo-switch .demo-light-bg button{
  opacity: 0;
}

.dark_bg .demo-switch .demo-light-bg button{
  opacity: 1;
}







.lenis.lenis-smooth {
  scroll-behavior: auto;
}

html.lenis {
  height: auto;
}




.nav-style-one .owl-nav button span{
  display: none !important;
}

.nav-style-one .owl-nav button{
  position: relative;
  display: inline-block;
  width: 74px;
  height: 74px;
  line-height: 74px;
  border-radius: 50%;
  text-align: center;
  transition: all 500ms ease;
}

.nav-style-one .owl-nav button:hover{
  background: var(--secondary-color);
}

.nav-style-one .owl-nav button.owl-prev:before{
  position: absolute;
  content: '\e907';
  font-family: 'icomoon';
  font-size: 14px;
  color: var(--title-color);
  width: 100%;
  height: 100%;
  left: 0px;
  top: 0px;
  transition: all 500ms ease;
}

.nav-style-one .owl-nav button.owl-next:before{
  position: absolute;
  content: '\e907';
  font-family: 'icomoon';
  font-size: 14px;
  color: var(--title-color);
  width: 100%;
  height: 100%;
  left: 0px;
  top: 1px;
  transform: rotate(180deg);
  transition: all 500ms ease;
}

.nav-style-one .owl-nav button.owl-prev:hover:before{
  transform: scale(0,0);
}

.nav-style-one .owl-nav button.owl-next:hover:before{
  transform: rotate(180deg) scale(0,0);
}

.nav-style-one .owl-nav button.owl-prev:after{
  position: absolute;
  content: '\e906';
  font-family: 'icomoon';
  font-size: 12px;
  color: #fff;
  width: 100%;
  height: 100%;
  left: 0px;
  top: 0px;
  transform: rotate(180deg) scale(0,0);
  transition: all 500ms ease;
}

.nav-style-one .owl-nav button.owl-prev:hover:after{
  transform: rotate(180deg) scale(1,1);
}

.nav-style-one .owl-nav button.owl-next:after{
  position: absolute;
  content: '\e906';
  font-family: 'icomoon';
  font-size: 12px;
  color: #fff;
  width: 100%;
  height: 100%;
  left: 0px;
  top: 0px;
  transform: scale(0,0);
  transition: all 500ms ease;
}

.nav-style-one .owl-nav button.owl-next:hover:after{
  transform: scale(1,1);
}


@keyframes marqueslide {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-100%);
    }
}

.dots-style-one .owl-dots{
  position: relative;
  display: inline-block;
  min-height: 30px;
  counter-reset: slides-num;
}

.dots-style-one .owl-dots::after {
  position: absolute;
  right: 0px;
  top: -14px;
  content: "/ 0" counter(slides-num);
  display: inline-block;
  font-size: 20px;
  line-height: 30px;
  color: rgba(0, 0, 0, 0.30);
  font-weight: 700;
  font-family: var(--text-font);
}

.dots-style-one .owl-dots button{
  position: absolute;
  top: -14px;
  right: 58px;
  counter-increment: slides-num;
  font-size: 20px;
  line-height: 30px;
  font-family: var(--text-font);
  color: var(--title-color);
}

.dots-style-one .owl-dots button.active:before{
  position: absolute;
  content: counter(slides-num);
}

.dots-style-one .owl-dots button.active:after{
  position: absolute;
  content: '0';
  top: 0px;
  right: 0px;
}

.dots-style-one .owl-dots button span{
  display: none !important;
}

.social-style-one{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: right;
}

.social-style-one li{
  display: inline-block;
  margin-right: 12px;
}

.social-style-one li:last-child{
  margin: 0px !important;
}

.social-style-one li a{
  position: relative;
  display: inline-block;
  width: 65px;
  height: 65px;
  line-height: 65px;
  text-align: center;
  border: solid;
  border-width: 1px;
  border-radius: 50%;
  border-color: var(--secondary-color);
  font-size: 20px;
  font-weight: 700;
  color: var(--title-color);
  z-index: 1;
}

.social-style-one li a:hover{
  color: #fff;
  background: var(--secondary-color);
  font-size: 24px;
}

.social-style-one li a:before{
  position: absolute;
  content: '';
  background: var(--secondary-color);
  width: 100%;
  height: 100%;
  left: 0px;
  top: 0px;
  z-index: -1;
  transform: scale(0,0);
  border-radius: 50%;
  transition: all 500ms ease;
}

.social-style-one li a:hover:before{
  transform: scale(1,1);
}


/** slide-text-box **/

.slide-text-box{
  position: relative;
  background: #FBF5F1;
  padding: 0px;
}

.slide-text-box .text-list{
  position: relative;
  display: flex;
  align-items: center;
  width: max-content;
  animation: 135s marqueslide infinite linear;
}

.slide-text-box .text-list li{
  position: relative;
  display: inline-block;
  font-size: 220px;
  line-height: 277px;
  font-family: var(--title-font);
  color: #fff;
  font-weight: 600;
  text-transform: uppercase;
  margin-right: 317px;
}

.slide-text-box .text-list li:last-child{
  margin: 0px;
}

.slide-text-box .text-list li:before{
  position: absolute;
  content: '';
  background: var(--secondary-color);
  width: 1px;
  height: 172px;
  top: 52px;
  right: -160px;
}

.slide-text-box .text-list li:last-child:before{
  display: none;
}


.slide-text-box.st-2 .text{
  position: relative;
  display: block;
  width: max-content;
  font-size: 200px;
  line-height: 270px;
  color: var(--title-color);
  font-weight: 700;
  animation: 135s marqueslide infinite linear;
}

.tabs-box .tab{
  position:relative;
  display:none;
  transition: all 900ms ease;
  -moz-transition: all 900ms ease;
  -webkit-transition: all 900ms ease;
  -ms-transition: all 900ms ease;
  -o-transition: all 900ms ease;
}

.tabs-box .tab.active-tab{
  display:block;  
}

.tabs-box .tab{
  transform:scale(0.9,0.9) translateY(0px);
}

.tabs-box .tab.active-tab{
  transform:scale(1) translateY(0px);
}

.mt_250{
  margin-top: 250px;
}

@-webkit-keyframes ripple {
  70% {
    -webkit-box-shadow: 0 0 0 40px rgba(255, 255, 255, 0);
            box-shadow: 0 0 0 40px rgba(255, 255, 255, 0);
  }
  100% {
    -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
            box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}
@keyframes ripple {
  70% {
    -webkit-box-shadow: 0 0 0 40px rgba(255, 255, 255, 0);
            box-shadow: 0 0 0 40px rgba(255, 255, 255, 0);
  }
  100% {
    -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
            box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}

.big-image-box .image{
  position: relative;
  display: block;
  overflow: hidden;
}

.big-image-box .image img{
  width: 100%;
  transition: all 15s ease;
}

.big-image-box .image:hover img{
  transform: scale(1.5);
}

/** follow-section **/

.follow-section{
  position: relative;
  background: #F6EFE9;
}

.follow-section .outer-container{
  position: relative;
  padding: 0px 125px;
}

.follow-section .content-box{
  position: relative;
  border-top: solid;
  border-bottom: solid;
  border-width: 1px;
  border-color: var(--secondary-color);
  padding: 67px 0px;
}

.follow-section .content-box p{
  font-size: 20px;
  line-height: 50px;
  font-weight: 500;
  color: var(--title-color);
}

.follow-section .content-box p a{
  display: inline-block;
  font-weight: 700;
  text-decoration: underline;
  color: var(--title-color);
}

.follow-section .content-box p a:hover{

}

/* Ananke contact-style button: transparent with border */
.theme-btn-two{
  position: relative;
  display: inline-block;
  font-size: 12px;
  line-height: normal;
  color: #313131;
  font-weight: 700;
  font-family: 'Lato', sans-serif;
  background: transparent;
  border: 2px solid #313131;
  padding: 10px 45px;
  text-transform: uppercase;
  letter-spacing: 1px;
  z-index: 1;
  transition: all 0.3s linear;
}

.theme-btn-two:hover{
  color: var(--theme-color);
  border-color: var(--theme-color);
}

.theme-btn-two:before{
  display: none;
}

.theme-btn-two:hover:before{
  display: none;
}

.list-style-one li{
  position: relative;
  display: block;
  font-size: 20px;
  line-height: 48px;
  font-weight: 500;
  color: var(--title-color);
  padding-left: 30px;
}

.list-style-one li:before{
  position: absolute;
  content: '\e90b';
  font-family: 'icomoon';
  font-size: 16px;
  left: 0px;
  top: 0px;
}


/** text-overlay-animation **/

.overlay-anim-black-bg,
.overlay-anim-red-bg,
.overlay-anim-white-bg {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

.overlay-anim-black-bg:after,
.overlay-anim-red-bg:after,
.overlay-anim-white-bg:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  -webkit-transition: 1s cubic-bezier(.858, .01, .068, .99);
  -o-transition: 1s cubic-bezier(.858, .01, .068, .99);
  transition: 1s cubic-bezier(.858, .01, .068, .99);
  z-index: 1;
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);       
}

.overlay-anim-black-bg:after{
  background: #222;
}

.overlay-anim-white-bg:after{
  background: #fff;
}

.overlay-anim-black-bg.overlay-animation:after,
.overlay-anim-red-bg.overlay-animation:after,
.overlay-anim-white-bg.overlay-animation:after {
  -webkit-transform: translateX(110%);
  -ms-transform: translateX(110%);
  transform: translateX(110%);
}


@-webkit-keyframes bounceSlide {
    0%,20%,50%,80%,100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    60% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px)
    }
}

@keyframes bounceSlide {
    0%,20%,50%,80%,100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    60% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px)
    }
}

.bounce-slide {
    -webkit-animation-duration: 2.5s;
    animation-duration: 2.5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-name: bounceSlide;
    animation-name: bounceSlide
}



.scroll-to-top {
  position: fixed;
  right: 30px;
  bottom: 30px;
  height: 46px;
  width: 46px;
  cursor: pointer;
  display: block;
  box-shadow: inset 0 0 0 2px rgba(255,111,15,.2);
  border-radius: 50%;
  z-index: 90000;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(15px);
  -ms-transform: translateY(15px);
  transform: translateY(15px);
  -webkit-transition: all 200ms linear;
  transition: all 200ms linear
}

.scroll-to-top.scroll-top-active {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0)
}

.scroll-to-top::after {
  position: absolute;
  content: "\e91d";
  font-family: 'icomoon';
  text-align: center;
  line-height: 46px;
  font-size: 12px;
  color: var(--theme-color);
  left: 0;
  top: 0;
  height: 46px;
  width: 46px;
  cursor: pointer;
  display: block;
  z-index: 2;
  -webkit-transition: all 200ms linear;
  transition: all 200ms linear
}

.scroll-to-top:hover::after {
  color: var(--theme-color)
}

.scroll-to-top:hover::before {
  opacity: 1
}

.scroll-to-top .scroll-top-inner path {
  stroke: var(--theme-color);
  stroke-width: 4;
  fill: transparent;
  box-sizing: border-box;
  -webkit-transition: all 200ms linear;
  transition: all 200ms linear;
}


.anim-icons {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  margin: 0 auto;
}

.about-style-four .odometer.odometer-auto-theme .odometer-digit, 
.about-style-four .odometer.odometer-theme-default .odometer-digit{
  letter-spacing: 6px;
}

.about-style-five .odometer.odometer-auto-theme, 
.about-style-five .odometer.odometer-theme-default{
  letter-spacing: 3px;
}

.about-style-seven .left-content .count-outer span{
  display: inline-block;
  letter-spacing: 3px;
}

.feature-section .odometer.odometer-auto-theme .odometer-digit,
.odometer.odometer-auto-theme .odometer-digit{
  letter-spacing: 2px;
}

.about-style-ten .funfact-inner .single-item .count-outer span,
.about-style-four .funfact-inner .single-item .count-outer span,
.about-style-12 .funfact-inner .single-item .count-outer span,
.service-details-two .funfact-block-one .inner-box .count-outer span{
  display: inline-block;
}

@-moz-keyframes scroll-top1 {
    0% {
        -moz-transform: translateY(0%);
    }

    100% {
        -moz-transform: translateY(-100%);
    }
}

@-webkit-keyframes scroll-top1 {
    0% {
        -webkit-transform: translateY(0%);
    }

    100% {
        -webkit-transform: translateY(-100%);
    }
}




@keyframes marqueeinvert {
    0% {
        transform: translateY(-100%);
    }

    100% {
        transform: translateY(0%);
    }
}

@-moz-keyframes marqueeinvert {
    0% {
        transform: translateY(-100%);
    }

    100% {
        transform: translateY(0%);
    }
}

@-webkit-keyframes marqueeinvert {
    0% {
        transform: translateY(-100%);
    }

    100% {
        transform: translateY(0%);
    }
}


/* ==========================================================================
   Ananke Section Header — Shadow text + heading pattern
   ========================================================================== */

.header-text {
  position: relative;
  z-index: 2;
  width: 100%;
  padding-bottom: 50px;
}

.header-text h1 {
  position: absolute;
  text-align: center;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 200;
}

.header-shadow-text {
  position: absolute;
  text-align: center;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 1;
  margin-top: -20px;
  font-family: 'Sifonn-Basic', sans-serif;
  font-size: 70px;
  line-height: 70px;
  color: rgba(60, 60, 60, 0.08);
  text-transform: uppercase;
}

.header-text p {
  padding-top: 60px;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 2px;
  color: var(--text-color);
}


/* ==========================================================================
   About Section — Ananke aboutbox pattern
   ========================================================================== */

.about-section {
  background: #fff;
  margin: 0 auto;
  width: 100%;
  padding: 60px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.about-section.alt-bg {
  background: #f2f2f2;
}

.about-what-we-do {
  margin-bottom: 30px;
}

.icon-left1 {
  display: inline-block;
  position: relative;
  line-height: 32px;
  font-size: 22px;
  z-index: 6;
  width: 22px;
  height: 32px;
  text-align: left;
  vertical-align: top;
  color: var(--theme-color);
}

.about-what-we-do h5 {
  display: inline-block;
  padding-bottom: 25px;
  text-align: left;
  position: relative;
  padding-left: 15px;
  vertical-align: top;
}

.about-what-we-do p {
  text-align: left;
  margin-bottom: 20px;
}

.about-what-we-do p:last-child {
  margin-bottom: 0;
}


/* ==========================================================================
   Services Section — Ananke servicebox pattern
   ========================================================================== */

.services-section {
  background: #f2f2f2;
  margin: 0 auto;
  width: 100%;
  padding: 60px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.services-section .row {
  display: flex;
  flex-wrap: wrap;
}

.services-section .row > [class*="col-"] {
  display: flex;
}

.services-offer {
  margin: 0 auto 30px;
  width: 100%;
  border-radius: 5px;
  background: #f1f1f1;
  padding: 30px 20px;
  text-align: center;
  transition: all 0.3s linear;
  height: calc(100% - 30px);
  display: flex;
  flex-direction: column;
  align-items: center;
}

.services-offer:hover {
  background: #fff;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
}

.services-offer i {
  font-size: 48px;
  color: var(--theme-color);
  display: block;
  margin-bottom: 20px;
  line-height: 1;
}

.services-offer h5 {
  margin-bottom: 15px;
}

.services-offer p {
  margin-bottom: 0;
  font-size: 13px;
  line-height: 22px;
}


/* ==========================================================================
   Facts/Counter Section — Solid dark background with counter circles
   ========================================================================== */

.facts-section {
  position: relative;
  padding: 100px 0;
  overflow: hidden;
  z-index: 2;
  background: #fff;
}

.facts-wrap {
  margin-bottom: 30px;
}

.facts-wrap-num {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 0 30px rgba(0, 0, 0, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
}

.facts-wrap-num .odometer,
.facts-wrap-num span {
  font-family: 'Lato', sans-serif;
  font-weight: 300;
  font-size: 48px;
  line-height: 1;
  color: var(--title-color);
}

.facts-plus {
  font-size: 30px !important;
  margin-left: 2px;
}

.facts-wrap h5 {
  color: var(--title-color);
  font-family: 'Lato', sans-serif;
  font-weight: 400;
  font-size: 13px;
  line-height: 20px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.facts-card {
  background: #fff;
  padding: 30px;
  border-radius: 5px;
  height: 100%;
  display: flex;
  align-items: center;
}


/* ==========================================================================
   CTA Section — Ananke callto pattern
   ========================================================================== */

.cta-section {
  background: #fff;
  padding: 60px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.cta-section h6 {
  font-family: 'Lato', sans-serif;
  font-style: italic;
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  color: var(--text-color);
  text-transform: none;
  margin-bottom: 15px;
}

.link-work .cta-link {
  font-size: 18px;
  color: var(--title-color);
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  padding-bottom: 5px;
}

.link-work .cta-link:hover {
  color: var(--theme-color);
  border-bottom-color: var(--theme-color);
}


/* ==========================================================================
   Parallax Page Header — Ananke inner page header pattern
   ========================================================================== */

.parallax-section {
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  padding-top: 150px;
  padding-bottom: 150px;
  width: 100%;
  z-index: 2;
}

.parallax-blog {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-attachment: fixed;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center 30%;
}

.overlay-blog {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.55);
}

.parallax-section .container {
  position: relative;
  z-index: 3;
}

.parallax-section h1 {
  color: #fff;
  text-align: center;
  font-family: 'Sifonn-Basic', sans-serif;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.parallax-section .sub-text {
  text-align: center;
  font-family: 'Lato', sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.7);
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 0;
}


/* ==========================================================================
   Team Section — Ananke memberItem pattern
   ========================================================================== */

.team-section {
  background: #fff;
  padding: 60px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.team-wrap {
  background: #f2f2f2;
  padding-bottom: 20px;
  position: relative;
  margin: 0 auto;
  z-index: 2;
  width: 100%;
  overflow: hidden;
}

.team-wrap img {
  width: 100%;
  height: auto;
  display: block;
  box-shadow: 0 8px 6px -6px rgba(60, 60, 60, 0.3);
}

.team-wrap h5 {
  padding-top: 20px;
  text-align: center;
}

.team-wrap > p {
  padding-bottom: 20px;
  font-family: 'Lato', sans-serif;
  font-weight: 400;
  font-size: 10px;
  line-height: 10px;
  padding-top: 10px;
  text-transform: uppercase;
  text-align: center;
}

.team-line {
  margin: 0 auto 20px;
  height: 1px;
  width: 50px;
  background: var(--theme-color);
}

.team-desc {
  padding: 0 15px;
}

.team-desc p {
  text-transform: none;
  font-size: 13px;
  line-height: 22px;
  text-align: left;
}

.team-social {
  text-align: center;
  padding: 15px 0 5px;
}

.team-social li {
  display: inline-block;
  padding: 0;
  width: 24px;
  cursor: pointer;
  transition: all 0.3s linear;
}

.team-social li a {
  font-size: 16px;
  line-height: 16px;
  color: #404040;
  transition: all 0.3s linear;
}

.team-social li a:hover {
  color: var(--theme-color);
}


/* ==========================================================================
   Contact Info Blocks — Ananke cinfo2 pattern
   ========================================================================== */

.contact-section {
  background: #fff;
  padding: 60px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.contact-det {
  position: relative;
  margin-bottom: 30px;
  text-align: center;
}

.contact-det i {
  font-size: 28px;
  color: var(--theme-color);
  display: block;
  margin-bottom: 15px;
  line-height: 1;
}

.contact-det h6 {
  font-family: 'Lato', sans-serif;
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 8px;
}

.contact-det p {
  font-size: 14px;
  line-height: 22px;
}

.contact-form-section {
  background: #f2f2f2;
  padding: 60px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.map-section {
  position: relative;
  z-index: 2;
}

.map-section iframe {
  width: 100%;
  height: 400px;
  border: 0;
  display: block;
}


/* ==========================================================================
   Portfolio Filter — Ananke Isotope filter bar
   ========================================================================== */

#portfolio-filter {
  width: 100%;
  position: relative;
  text-align: center;
  margin-bottom: 40px;
}

#filter {
  padding: 0;
  margin: 0;
}

#filter li {
  display: inline-block;
}

#filter li a {
  position: relative;
  font-family: 'Lato', sans-serif;
  font-weight: 400;
  font-size: 12px;
  color: #706e6e;
  text-decoration: none;
  margin-left: 8px;
  margin-right: 8px;
  margin-bottom: 20px;
  display: inline-block;
  text-transform: uppercase;
  letter-spacing: 1px;
  transition: all 0.3s linear;
}

#filter li a:after {
  content: '::::';
  padding-left: 20px;
  font-family: 'Lato', sans-serif;
  font-size: 12px;
  color: #706e6e;
  opacity: 0.5;
}

#filter li:last-child a:after {
  display: none;
}

#filter li a:hover,
#filter li a.current {
  color: var(--theme-color);
}

.portfolio-page-section {
  background: #fff;
  padding: 60px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}


/* ==========================================================================
   Featured Projects — Video sections & project text
   ========================================================================== */

.featured-section {
  background: #fff;
  padding: 60px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.video-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  margin-bottom: 30px;
}

.video-grid .video-item {
  flex: 1 1 300px;
  max-width: 100%;
}

.video-grid video {
  width: 100%;
  height: auto;
  display: block;
  background: #000;
}

.project-text-section {
  background: #f2f2f2;
  padding: 60px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.project-text-section h5 {
  text-align: left;
  margin-bottom: 20px;
}

.project-text-section p {
  margin-bottom: 15px;
}

.project-text-section p:last-child {
  margin-bottom: 0;
}

.project-text-section a {
  color: var(--theme-color);
}

.project-text-section blockquote {
  margin: 20px 0;
}

.project-text-section .disclaimer {
  font-size: 12px;
  line-height: 20px;
  color: #777;
  font-style: italic;
  margin-top: 20px;
  padding: 15px;
  background: rgba(0, 0, 0, 0.03);
  border-left: 3px solid var(--theme-color);
}


/* ==========================================================================
   COVID-19 Parallax Section — Portfolio page
   ========================================================================== */

.covid-parallax-section {
  position: relative;
  padding: 80px 0;
  z-index: 2;
  overflow: hidden;
}

.covid-parallax-section .overlay-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.45);
  z-index: 1;
}

.covid-parallax-section .container {
  position: relative;
  z-index: 2;
}

.covid-parallax-section .header-text h1 {
  color: #fff;
}

.covid-parallax-section .header-shadow-text {
  color: rgba(255, 255, 255, 0.08);
}

.covid-parallax-section .header-text p {
  color: rgba(255, 255, 255, 0.7);
}

.covid-content-card {
  background: rgba(255, 255, 255, 0.95);
  border-radius: 5px;
  padding: 40px 45px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
}

.covid-content-card p {
  margin-bottom: 15px;
  color: #404040;
  font-size: 14px;
  line-height: 22px;
}

.covid-content-card p:last-child {
  margin-bottom: 0;
}

.covid-content-card a {
  color: var(--theme-color);
}

.covid-content-card blockquote {
  margin: 20px 0;
  padding: 20px 25px;
  background: rgba(0, 0, 0, 0.03);
  border-left: 3px solid var(--theme-color);
  font-style: italic;
}

.covid-content-card blockquote p {
  font-size: 13px;
  line-height: 21px;
  color: #555;
  margin-bottom: 0;
}

.covid-content-card .disclaimer {
  font-size: 12px;
  line-height: 20px;
  color: #777;
  font-style: italic;
  margin-top: 20px;
  padding: 15px;
  background: rgba(0, 0, 0, 0.03);
  border-left: 3px solid var(--theme-color);
}


/* ==========================================================================
   Testimonials Section — Ananke-styled quote cards
   ========================================================================== */

.testimonials-section {
  background: #f2f2f2;
  padding: 60px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.testimonial-card {
  position: relative;
  background: #fff;
  padding: 40px 40px 30px;
  margin-bottom: 30px;
  border-left: 3px solid var(--theme-color);
  transition: all 0.3s linear;
}

.testimonial-card:hover {
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
}

.testimonial-card .quote-mark {
  font-size: 28px;
  color: var(--theme-color);
  margin-bottom: 15px;
  line-height: 1;
}

.testimonial-quote {
  font-family: 'Lato', sans-serif;
  font-style: italic;
  font-size: 18px;
  line-height: 28px;
  color: #555;
  margin-bottom: 20px;
  text-align: left;
}

.testimonial-author {
  font-family: 'Lato', sans-serif;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--title-color);
}

.testimonial-title {
  font-family: 'Lato', sans-serif;
  font-size: 11px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #777;
  margin-top: 4px;
}

.testimonial-card.featured {
  border-left-width: 4px;
  background: #fff;
}

.testimonial-card.featured .testimonial-quote {
  font-size: 20px;
  line-height: 30px;
}


/* ==========================================================================
   Software Experience List — Ananke inline pill style
   ========================================================================== */

.software-list {
  padding: 30px 0 0;
}

.software-list h5 {
  font-family: 'Lato', sans-serif;
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 20px;
  color: var(--title-color);
}

.software-list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.software-list ul li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Lato', sans-serif;
  font-size: 13px;
  font-weight: 400;
  color: var(--text-color);
  background: #f2f2f2;
  padding: 8px 18px;
  border-radius: 3px;
  transition: all 0.3s linear;
}

.software-list ul li:hover {
  background: #fff;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
}

.software-list ul li i {
  color: var(--theme-color);
  font-size: 12px;
}

.about-section .software-list ul li {
  background: #e8e8e8;
}

.about-section .software-list ul li:hover {
  background: #f2f2f2;
}

.mt_40 {
  margin-top: 40px;
}


/* ==========================================================================
   Featured Projects Preview — Lead section on portfolio page
   ========================================================================== */

.featured-preview-section {
  background: #fff;
  padding: 70px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.featured-preview-content {
  padding-left: 20px;
  border-left: 3px solid var(--theme-color);
}

.featured-preview-content h5 {
  font-family: 'Sifonn-Basic', sans-serif;
  font-size: 22px;
  line-height: 22px;
  text-transform: uppercase;
  text-align: left;
  margin-bottom: 0;
}

.featured-preview-line {
  width: 50px;
  height: 1px;
  background: var(--theme-color);
  margin: 20px 0;
}

.featured-preview-content p {
  font-size: 14px;
  line-height: 24px;
  margin-bottom: 30px;
}

.featured-preview-content .theme-btn-two i {
  margin-left: 8px;
  font-size: 11px;
  transition: transform 0.3s linear;
}

.featured-preview-content .theme-btn-two:hover i {
  transform: translateX(4px);
}

.featured-preview-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px;
}

.featured-preview-thumb {
  display: block;
  overflow: hidden;
  position: relative;
}

.featured-preview-thumb img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.4s ease, opacity 0.3s ease;
}

.featured-preview-thumb:hover img {
  transform: scale(1.08);
  opacity: 0.85;
}


/* ==========================================================================
   Services Section — Parallax Background Overlay
   ========================================================================== */

.services-section .overlay-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.55);
  z-index: 1;
}

.services-section .container {
  position: relative;
  z-index: 2;
}

.services-section .header-text h1 {
  color: #fff;
}

.services-section .header-shadow-text {
  color: rgba(255, 255, 255, 0.08);
}

.services-section .header-text p {
  color: rgba(255, 255, 255, 0.7);
}

/* Light variant — dark headings on light background (e.g. about page specialties) */
.services-section.services-section--light .header-text h1 {
  color: var(--title-color);
}

.services-section.services-section--light .header-shadow-text {
  color: rgba(0, 0, 0, 0.04);
}

.services-section.services-section--light .header-text p {
  color: var(--text-color);
}

/* Alt variant — manufacturing services on homepage (no parallax bg) */
.services-section.services-section--alt {
  background: #f2f2f2;
}

.services-section.services-section--alt .header-text h1 {
  color: var(--title-color);
}

.services-section.services-section--alt .header-shadow-text {
  color: rgba(0, 0, 0, 0.04);
}

.services-section.services-section--alt .header-text p {
  color: var(--text-color);
}

.services-section.services-section--alt .cta-link {
  color: var(--theme-color);
  border-bottom-color: var(--theme-color);
}

.services-section.services-section--alt .cta-link:hover {
  color: var(--title-color);
  border-bottom-color: var(--title-color);
}

.from-concept {
  padding: 30px;
  background: rgba(0, 0, 0, 0.02);
  border-radius: 5px;
}

.from-concept h5 {
  font-family: var(--title-font);
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 16px;
  margin-bottom: 10px;
  color: var(--theme-color);
}

.from-concept p {
  margin-bottom: 0;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}

.services-section .cta-link {
  color: #fff;
  border-bottom-color: rgba(255, 255, 255, 0.4);
}

.services-section .cta-link:hover {
  color: var(--theme-color);
  border-bottom-color: var(--theme-color);
}


/* ==========================================================================
   Portfolio Section — Parallax Background Overlay
   ========================================================================== */

.portfolio-section .overlay-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: 1;
}

.portfolio-section .container,
.portfolio-section .portfolio-grid {
  position: relative;
  z-index: 2;
}

.portfolio-section .header-text h1 {
  color: #fff;
}

.portfolio-section .header-shadow-text {
  color: rgba(255, 255, 255, 0.08);
}

.portfolio-section .header-text p {
  color: rgba(255, 255, 255, 0.7);
}

.portfolio-section > .container:last-of-type .cta-link {
  color: #fff;
  border-bottom-color: rgba(255, 255, 255, 0.4);
}

.portfolio-section > .container:last-of-type .cta-link:hover {
  color: var(--theme-color);
  border-bottom-color: var(--theme-color);
}


/* ==========================================================================
   Home Contact Section — Compact contact strip on homepage
   ========================================================================== */

.home-contact-section {
  background: #fff;
  padding: 60px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}


/* ==========================================================================
   Select Element — Ananke form style
   ========================================================================== */

.form-group select {
  font-family: 'Open Sans', sans-serif;
  font-size: 13px;
  line-height: 22px;
  color: #404040;
  width: 96%;
  padding: 10px 0;
  background: #fff;
  border: none;
  border-bottom: 1px solid rgba(0,0,0,0.1);
  transition: all 0.3s linear;
}

.form-group select:focus {
  border-bottom-color: var(--theme-color);
  box-shadow: 0 0 10px rgba(60, 60, 60, 0.2);
}


/* ==========================================================================
   Consultation Info Section — Appointment page
   ========================================================================== */

.consultation-info-section {
  background: #fff;
  padding: 60px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.consultation-price {
  margin-bottom: 30px;
}

.consultation-price .price {
  font-family: 'Lato', sans-serif;
  font-size: 60px;
  font-weight: 300;
  color: var(--theme-color);
  line-height: 1;
  display: block;
  margin-bottom: 10px;
}

.consultation-price .duration {
  font-family: 'Lato', sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: var(--title-color);
  text-transform: uppercase;
  letter-spacing: 2px;
}

.schedule-note {
  font-family: 'Lato', sans-serif;
  font-size: 14px;
  color: var(--text-color);
  margin-bottom: 30px;
  text-transform: none;
}

.schedule-note i {
  color: var(--theme-color);
  margin-right: 8px;
}

.consultation-includes h5 {
  font-family: 'Lato', sans-serif;
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 20px;
}

.included-list {
  display: inline-block;
  text-align: left;
  padding: 0;
  margin: 0;
}

.included-list li {
  font-family: 'Lato', sans-serif;
  font-size: 14px;
  line-height: 20px;
  color: var(--text-color);
  padding: 10px 0;
  border-bottom: 1px solid rgba(0,0,0,0.05);
}

.included-list li:last-child {
  border-bottom: none;
}

.included-list li i {
  color: var(--theme-color);
  margin-right: 12px;
  font-size: 12px;
}


/* ==========================================================================
   Sign Up Form Section — Appointment page
   ========================================================================== */

.signup-form-section {
  background: #f2f2f2;
  padding: 60px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}


/* ==========================================================================
   Existing Design Support Note
   ========================================================================== */

.existing-note {
  background: rgba(207, 161, 68, 0.1);
  border-left: 3px solid var(--theme-color);
  padding: 20px;
  margin-bottom: 30px;
}

.existing-note i {
  color: var(--theme-color);
  font-size: 18px;
  margin-bottom: 10px;
  display: block;
}

.existing-note p {
  font-size: 13px;
  line-height: 22px;
}


/* ==========================================================================
   Calendly Section — Appointment page
   ========================================================================== */

.calendly-section {
  background: #fff;
  padding: 60px 0;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.calendly-note {
  margin-top: 15px;
  color: #777;
}

.calendly-note small {
  font-size: 12px;
  font-style: italic;
}


/* ==========================================================================
   Index-Alt: Parallax Band Separators
   ========================================================================== */

.parallax-band {
  position: relative;
  overflow: hidden;
  padding: 120px 0;
  z-index: 2;
}

.parallax-band .container {
  position: relative;
  z-index: 2;
}

/* --- Parallax band: Floating white card (Structura "cube" style) --- */
.parallax-band-card {
  background: #fff;
  padding: 50px 45px;
  max-width: 480px;
  position: relative;
  z-index: 3;
}

/* --- Parallax band: Quote variant --- */
.parallax-band-quote {
  font-family: 'Lato', sans-serif;
  font-style: italic;
  font-size: 24px;
  line-height: 38px;
  color: var(--text-color);
  margin: 0 0 20px;
}

.parallax-band-author {
  font-family: 'Lato', sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: var(--theme-color);
  text-transform: uppercase;
  letter-spacing: 1px;
}

.parallax-band-title {
  font-family: 'Lato', sans-serif;
  font-size: 12px;
  color: #777;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-top: 4px;
}

/* --- Parallax band: CTA variant --- */
.parallax-band-heading {
  font-family: var(--title-font);
  font-size: 36px;
  line-height: 42px;
  color: var(--title-color);
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 25px;
  text-align: left;
}

.parallax-band .cta-link {
  color: var(--title-color);
  border-bottom-color: rgba(0, 0, 0, 0.2);
}

.parallax-band .cta-link:hover {
  color: var(--theme-color);
  border-bottom-color: var(--theme-color);
}

/* --- Parallax band card: Facts/Counter overrides --- */
.parallax-band-card .facts-wrap-num {
  border-color: rgba(0, 0, 0, 0.15);
  box-shadow: none;
}

.parallax-band-card .facts-wrap-num .odometer,
.parallax-band-card .facts-wrap-num span {
  color: var(--title-color);
}

.parallax-band-card .facts-wrap h5 {
  color: var(--text-color);
}

.parallax-band-card .facts-plus {
  color: var(--theme-color);
}


/* ==========================================================================
   Index-Alt: Dramatic Parallax Modifier
   ========================================================================== */

.parallax-dramatic {
  top: -25%;
  height: calc(100% + 50%);
}


/* ==========================================================================
   Index-Alt: 50/50 Split Section
   ========================================================================== */

.split-section .split-image {
  min-height: 450px;
  overflow: hidden;
  position: relative;
}

.split-section .split-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  position: absolute;
  top: 0;
  left: 0;
}

.split-section .split-content {
  padding: 80px 60px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.split-section .split-content h5 {
  font-family: var(--title-font);
  font-size: 28px;
  line-height: 32px;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--title-color);
  margin-bottom: 20px;
}

.split-line {
  width: 50px;
  height: 2px;
  background: var(--theme-color);
  margin-bottom: 20px;
}

.split-section .split-content p {
  margin-bottom: 15px;
}


/* ==========================================================================
   Index-Alt: Compact Testimonials (Structura horizontal style)
   ========================================================================== */

.alt-testimonials-section {
  padding: 50px 0;
  background: #fff;
  position: relative;
  z-index: 2;
  border-bottom: 1px solid #eee;
}

.alt-testimonials-section h3 {
  text-align: left;
  font-size: 24px;
  line-height: 28px;
  margin-bottom: 10px;
}

.testimonials-subtitle {
  font-family: 'Lato', sans-serif;
  font-size: 13px;
  color: #999;
}

.testimonial-card-mini p {
  font-family: 'Lato', sans-serif;
  font-style: italic;
  font-size: 14px;
  line-height: 24px;
  color: var(--text-color);
  margin-bottom: 15px;
}

.testimonial-card-author h6 {
  text-align: left;
  font-family: 'Lato', sans-serif;
  font-weight: 700;
  font-size: 13px;
  text-transform: none;
  letter-spacing: 0;
  color: var(--title-color);
  margin-bottom: 2px;
}

.testimonial-card-author span {
  font-family: 'Lato', sans-serif;
  font-size: 12px;
  color: #999;
}


/* ==========================================================================
   Index-Alt: White-background Portfolio Overrides
   ========================================================================== */

.alt-portfolio-section {
  background: #f9f9f9;
  position: relative;
  z-index: 2;
}

.alt-portfolio-section .header-shadow-text {
  color: rgba(0, 0, 0, 0.04);
}

.alt-portfolio-section .header-text h1 {
  color: var(--title-color);
}

.alt-portfolio-section .header-text p {
  color: var(--text-color);
}

.alt-portfolio-section .cta-link {
  color: var(--title-color);
  border-bottom-color: rgba(0, 0, 0, 0.2);
}

.alt-portfolio-section .cta-link:hover {
  color: var(--theme-color);
  border-bottom-color: var(--theme-color);
}


/* ==========================================================================
   Index-Alt: Services Section — Structura Editorial Layout
   ========================================================================== */

.alt-services-section {
  background: #fff;
  position: relative;
  z-index: 2;
  padding: 60px 0;
  text-align: left;
}

/* --- Services intro: 3-column heading + text --- */
.services-intro {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 40px;
  margin-bottom: 40px;
}

.services-intro-heading h2 {
  font-family: var(--title-font);
  font-size: 36px;
  line-height: 44px;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--title-color);
  text-align: left;
  margin: 0;
}

.services-intro-text p {
  font-size: 14px;
  line-height: 24px;
  color: var(--text-color);
  margin-bottom: 20px;
}

/* --- Services grid heading (Design / Manufacturing labels) --- */
.services-grid-heading {
  margin-bottom: 10px;
}

.services-grid-heading h3 {
  font-family: var(--title-font);
  font-size: 18px;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--theme-color);
  margin-bottom: 5px;
}

.services-grid-heading p {
  font-size: 13px;
  color: #777;
  margin-bottom: 0;
}

/* --- Services minimal grid: Structura 3-column pattern --- */
.services-grid-minimal {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.services-grid-minimal .service-item {
  padding: 25px 20px 25px 0;
  border-top: 1px solid #eee;
}

.services-grid-minimal .service-item h5 {
  font-family: var(--title-font);
  font-size: 15px;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--title-color);
  margin-bottom: 8px;
  text-align: left;
}

.services-grid-minimal .service-item p {
  font-size: 13px;
  line-height: 20px;
  color: #777;
  margin-bottom: 0;
}


/* ==========================================================================
   Index-Alt: Portfolio 2x2 Grid
   ========================================================================== */

.alt-portfolio-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 4px;
}

.alt-portfolio-grid .portfolio-box {
  width: auto;
  padding: 0;
}


/* ==========================================================================
   Index-Alt: Parallax Band Card — Right-aligned Variant
   ========================================================================== */

.parallax-band-card-right {
  margin-left: auto;
}


/* ==========================================================================
   Index-Alt: CTA Contact Items (stacked inside parallax band card)
   ========================================================================== */

.cta-contact-item {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  margin-bottom: 20px;
}

.cta-contact-item:last-child {
  margin-bottom: 0;
}

.cta-contact-item i {
  color: var(--theme-color);
  font-size: 18px;
  width: 20px;
  text-align: center;
  flex-shrink: 0;
  margin-top: 2px;
}

.cta-contact-item h6 {
  font-family: 'Lato', sans-serif;
  font-weight: 700;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 3px;
  color: var(--title-color);
}

.cta-contact-item p {
  font-size: 14px;
  line-height: 20px;
  margin-bottom: 0;
}

.cta-contact-item p a {
  color: var(--text-color);
  transition: color 0.3s linear;
}

.cta-contact-item p a:hover {
  color: var(--theme-color);
}


/* ==========================================================================
   Index-Alt: Testimonial Carousel
   ========================================================================== */

.testimonial-carousel {
  max-width: 700px;
  margin: 0 auto 50px;
}

.testimonial-slide {
  padding: 20px 10px;
  text-align: center;
}

.testimonial-slide .fa-quote-left {
  font-size: 24px;
  color: var(--theme-color);
  margin-bottom: 20px;
  display: block;
}

.testimonial-text {
  font-family: 'Lato', sans-serif;
  font-style: italic;
  font-size: 20px;
  line-height: 34px;
  color: var(--text-color);
  margin-bottom: 20px;
}

.testimonial-author {
  font-family: 'Lato', sans-serif;
  font-weight: 700;
  font-size: 14px;
  color: var(--theme-color);
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 4px;
}

.testimonial-role {
  font-family: 'Lato', sans-serif;
  font-size: 12px;
  color: #777;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* Owl dots for testimonials */
.testimonial-carousel .owl-dots {
  text-align: center;
  margin-top: 25px;
}

.testimonial-carousel .owl-dot span {
  width: 10px;
  height: 10px;
  background: #ddd;
  border-radius: 50%;
  margin: 0 5px;
  transition: all 0.3s linear;
}

.testimonial-carousel .owl-dot.active span {
  background: var(--theme-color);
}


/* ==========================================================================
   Index-Alt: Combined Contact Section (with testimonials)
   ========================================================================== */

.alt-contact-section {
  background: #f9f9f9;
  padding: 60px 0;
  position: relative;
  z-index: 2;
}

.section-divider {
  width: 60px;
  height: 1px;
  background: #ddd;
  margin: 0 auto 50px;
}

.alt-contact-section .contact-det {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 5px;
  padding: 30px 20px;
  transition: all 0.3s linear;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.alt-contact-section .contact-det:hover {
  box-shadow: 0 5px 20px rgba(0,0,0,0.08);
  border-color: var(--theme-color);
}

.alt-contact-section .contact-det i {
  width: 50px;
  height: 50px;
  line-height: 50px;
  border-radius: 50%;
  border: 1px solid var(--theme-color);
  font-size: 18px;
  display: inline-block;
  margin-bottom: 15px;
}

.alt-contact-section .header-shadow-text {
  color: rgba(0, 0, 0, 0.04);
}

.alt-contact-section .header-text h1 {
  color: var(--title-color);
}

.alt-contact-section .header-text p {
  color: var(--text-color);
}

.alt-contact-section .cta-link {
  color: var(--title-color);
  border-bottom-color: rgba(0, 0, 0, 0.2);
}

.alt-contact-section .cta-link:hover {
  color: var(--theme-color);
  border-bottom-color: var(--theme-color);
}
























