



/*
  Template Name: Medozo - Health & Medical Premium HTML5 Template
  Theme URL: https://themeforest.net/user/dsathemes
  Description: Medozo - Health & Medical Premium HTML5 Template
  Author: DSAThemes
  Author URL: https://themeforest.net/user/dsathemes
  Version: 1.1.0
  Website: www.dsathemes.com
  Tags: DSAThemes, Medical, Health, Healthcare, Doctor, Family Doctor, Hospital, Clinic, Dental, Care
*/




/* ==========================================================================
  01. GENERAL & BASIC STYLES
  =========================================================================== */

:root {
  --main-font: "Zen Kaku Gothic New", sans-serif;
  --base-font: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  --header-color: #3db8bc;
  --text-color: #6c757d;
  --theme-color: #3282B8;
  --azure: #f2f7f8;
  --black: #233645;
  --blue: #3db8bc;
  --candy: #d23366;
  --cloud: #f2f6f9;
  --coal: #17323a;
  --cobalt: #005b96;
  --coral: #ea93af;
  --cyan: #00bde0;
  --denim: #074a74;
  --green: #8cb588;
  --ghost: #f9fcfd;
  --navy: #20265b;
  --pink: #f9669d;
  --royal: #205884;
  --sand: #f2c074;
  --seablue: #3190c4;
  --silver: #ccc;
  --sky: #d7e5ee;
  --sky-blue: #39baf5;
  --smoke: #e7e7e7;
  --sunny: #ffdf51;
  --white: #fff;
  --white-smoke: #f0f1f5;
  --yellow: #fbd043; 
  --tra-black: rgba(5, 5, 5, .05);
  --tra-gray: rgba(96, 96, 96, .13);
  --tra-white: rgba(255, 255, 255, .2);
  --usumidori: #a9d2d3；
}

html {
  font-size: 16px;
} 

body {
  font-family: var(--base-font);
  color: var(--text-color);
  line-height: 1.6666;
  font-weight: 400;
}

.main-font { 
  font-family: var(--main-font);
  font-weight: 500; 
  letter-spacing: 0;
}

.base-font { 
  font-family: var(--base-font); 
}

#page { 
  overflow: hidden; 
}

.rel,
section,
.container { 
  position: relative!important; 
  z-index: 3; 
}

.section-overlay {
  width: 100%;
  height: 100%;
}

/*------------------------------------------*/
/*  BLOCK SHADOW
/*------------------------------------------*/

.block--shadow { 
  box-shadow: 0 4px 12px 0 var(--tra-black);
}

/*------------------------------------------*/
/*  BORDER SETTINGS
/*------------------------------------------*/

.block--border {
  border: 1.5px solid var(--smoke);
}

.x-border {
  border-top: 1.5px solid var(--smoke);
  border-bottom: 1.5px solid var(--smoke);
}

.t-border {
  border-top: 1.5px solid var(--smoke);
}

.b-border {
  border-bottom: 1.5px solid var(--smoke);
}

.border-silver {
  border-color: var(--silver)!important;
}

.border-transparent {
  border-color: transparent!important;
}

/*------------------------------------------*/
/*  BORDER RADIUS SETTING
/*------------------------------------------*/ 

.r-0 { border-radius: 0px; }
.r-02 { border-radius: 2px; }
.r-04 { border-radius: 4px; }
.r-06 { border-radius: 6px; }
.r-08 { border-radius: 8px; }
.r-10 { border-radius: 10px; }
.r-12 { border-radius: 12px; }
.r-14 { border-radius: 14px; }
.r-16 { border-radius: 16px; }
.r-18 { border-radius: 18px; }
.r-20 { border-radius: 20px; }
.r-22 { border-radius: 22px; }
.r-24 { border-radius: 24px; }
.r-26 { border-radius: 26px; }
.r-28 { border-radius: 28px; }
.r-30 { border-radius: 30px; }
.r-32 { border-radius: 32px; }
.r-34 { border-radius: 34px; }
.r-36 { border-radius: 36px; }

/*------------------------------------------*/
/*  OPACITY SETTINGS
/*------------------------------------------*/

.o-0 { opacity: 0; }
.o-03 { opacity: .03; }
.o-04 { opacity: .04; }
.o-05 { opacity: .05; }
.o-06 { opacity: .06; }
.o-07 { opacity: .07; }
.o-08 { opacity: .08; }
.o-09 { opacity: .09; }
.o-10 { opacity: .1; }
.o-11 { opacity: .11; }
.o-12 { opacity: .12; }
.o-13 { opacity: .13; }
.o-14 { opacity: .14; }
.o-15 { opacity: .15; }
.o-16 { opacity: .16; }
.o-17 { opacity: .17; }
.o-18 { opacity: .18; }
.o-19 { opacity: .19; }
.o-20 { opacity: .2; }
.o-25 { opacity: .25; }
.o-30 { opacity: .3; }
.o-35 { opacity: .35; }
.o-40 { opacity: .4; }
.o-45 { opacity: .45; }
.o-50 { opacity: .5; }
.o-55 { opacity: .55; }
.o-60 { opacity: .60; }
.o-65 { opacity: .65; }
.o-70 { opacity: .7; }
.o-75 { opacity: .75; }
.o-80 { opacity: .8; }
.o-85 { opacity: .85; }
.o-90 { opacity: .9; }
.o-95 { opacity: .95; }
.o-100 { opacity: 1; }

/*------------------------------------------*/
/*  Z-INDEX SETTINGS
/*------------------------------------------*/

.z-01 { z-index: 1; }
.z-02 { z-index: 2; }
.z-03 { z-index: 3; }
.z-04 { z-index: 4; }
.z-05 { z-index: 5; }
.z-06 { z-index: 6; }
.z-07 { z-index: 7; }
.z-08 { z-index: 8; }
.z-09 { z-index: 9; }
.z-10 { z-index: 10; }

/*------------------------------------------*/
/*  SPACING & INDENTS
/*------------------------------------------*/

.py-25 { padding-top: 25px; padding-bottom: 25px; }
.py-30 { padding-top: 30px; padding-bottom: 30px; }
.py-35 { padding-top: 35px; padding-bottom: 35px; }
.py-40 { padding-top: 40px; padding-bottom: 40px; }
.py-50 { padding-top: 50px; padding-bottom: 50px; }
.py-60 { padding-top: 60px; padding-bottom: 60px; }
.py-70 { padding-top: 70px; padding-bottom: 70px; }
.py-80 { padding-top: 80px; padding-bottom: 80px; }
.py-90 { padding-top: 90px; padding-bottom: 90px; }
.py-100 { padding-top: 100px; padding-bottom: 100px; }
.py-110 { padding-top: 110px; padding-bottom: 110px; }
.py-120 { padding-top: 120px; padding-bottom: 120px; }

.pt-30 { padding-top: 30px; }
.pt-40 { padding-top: 40px; }
.pt-50 { padding-top: 50px; }
.pt-60 { padding-top: 60px; }
.pt-70 { padding-top: 70px; }
.pt-80 { padding-top: 80px; }
.pt-90 { padding-top: 90px; }
.pt-100 { padding-top: 100px; }
.pt-110 { padding-top: 110px; }
.pt-120 { padding-top: 120px; }

.pb-30 { padding-bottom: 30px; }
.pb-40 { padding-bottom: 40px; }
.pb-50 { padding-bottom: 50px; }
.pb-60 { padding-bottom: 60px; }
.pb-70 { padding-bottom: 70px; }
.pb-80 { padding-bottom: 80px; }
.pb-90 { padding-bottom: 90px; }
.pb-100 { padding-bottom: 100px; }
.pb-110 { padding-bottom: 110px; }
.pb-120 { padding-bottom: 120px; }

.px-15 { padding-left: 15px; padding-right: 15px; }
.px-20 { padding-left: 20px; padding-right: 20px; }
.px-25 { padding-left: 25px; padding-right: 25px; }
.px-30 { padding-left: 30px; padding-right: 30px; }
.px-35 { padding-left: 35px; padding-right: 35px; }

.mt-0 { margin-top: 0!important; }
.mt-15 { margin-top: 15px; }
.mt-20 { margin-top: 20px; }
.mt-25 { margin-top: 25px; }
.mt-30 { margin-top: 30px; }
.mt-40 { margin-top: 40px; }
.mt-50 { margin-top: 50px; }
.mt-60 { margin-top: 60px; }
.mt-70 { margin-top: 70px; }
.mt-80 { margin-top: 80px; }
.mt-90 { margin-top: 90px; }
.mt-100 { margin-top: 100px; }
.mt-110 { margin-top: 110px; }
.mt-120 { margin-top: 120px; }

.mb-0 { margin-bottom: 0!important; }
.mb-15 { margin-bottom: 15px; }
.mb-20 { margin-bottom: 20px; }
.mb-25 { margin-bottom: 25px; }
.mb-30 { margin-bottom: 30px; }
.mb-35 { margin-bottom: 35px; }
.mb-40 { margin-bottom: 40px; }
.mb-50 { margin-bottom: 50px; }
.mb-60 { margin-bottom: 60px; }
.mb-70 { margin-bottom: 70px; }
.mb-80 { margin-bottom: 80px; }
.mb-90 { margin-bottom: 90px; }
.mb-100 { margin-bottom: 100px; }
.mb-110 { margin-bottom: 110px; }
.mb-120 { margin-bottom: 120px; }

.mx-15 { margin-left: 15px; margin-right: 15px; }
.mx-20 { margin-left: 20px; margin-right: 20px; }
.mx-25 { margin-left: 25px; margin-right: 25px; }
.mx-30 { margin-left: 30px; margin-right: 30px; }
.mx-35 { margin-left: 35px; margin-right: 35px; }
.mx-40 { margin-left: 40px; margin-right: 40px; }
.mx-50 { margin-left: 50px; margin-right: 50px; }
.mx-60 { margin-left: 60px; margin-right: 60px; }
.mx-70 { margin-left: 70px; margin-right: 70px; }
.mx-80 { margin-left: 80px; margin-right: 80px; }

/*------------------------------------------*/
/*  BACKGROUND SETTINGS
/*------------------------------------------*/

.bg--fixed,
.bg--scroll {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.bg--fixed { background-attachment: scroll!important; }
.bg--scroll { background-attachment: fixed!important; }

/*------------------------------------------*/
/*  BACKGROUND COLORS
/*------------------------------------------*/

.bg--theme { background-color: var(--theme-color); }
.bg--azure { background-color: var(--azure); }
.bg--black { background-color: var(--black); }
.bg--blue { background-color: var(--blue); }
.bg--candy { background-color: var(--candy); }
.bg--catalina { background-color: var(--catalina); }
.bg--cloud { background-color: var(--cloud); }
.bg--cobalt { background-color: var(--cobalt); }
.bg--coal { background-color: var(--coal); }
.bg--cyan { background-color: var(--cyan); }
.bg--denim { background-color: var(--denim); }
.bg--ghost { background-color: var(--ghost); }
.bg--green { background-color: var(--green); }
.bg--pink { background-color: var(--pink); }
.bg--royal { background-color: var(--royal); }
.bg--seablue { background-color: var(--seablue); }
.bg--sky { background-color: var(--sky); }
.bg--sunny { background-color: var(--sunny); }
.bg--white { background-color: var(--white); }
.bg--whitesmoke { background-color: var(--white-smoke); }
.bg--yellow { background-color: var(--yellow); }
.bg--tra-white { background-color: var(--tra-white); }

/*------------------------------------------*/
/*  BACKGROUND SHAPE
/*------------------------------------------*/

.shape--01:after {
  position: absolute;
  width: 100%;
  height: 50%;
  bottom: 0;
  left: 0;
  content: '';
  z-index: -1;
}

.cobalt--shape:after { background-color: var(--cobalt); }
.cloud--shape:after { background-color: var(--cloud); } 
.navy--shape:after { background-color: var(--navy); } 
.royal--shape:after { background-color: var(--royal); } 

.bg-03--shape:after,
.bg-02--shape:after { 
  background-position: center center;
  background-attachment: scroll; 
  background-repeat: no-repeat;
  background-size: cover;
} 

.bg-02--shape:after { background-image: url(../images/bg-02.jpg); } 
.bg-03--shape:after { background-image: url(../images/bg-03.jpg); } 

/*------------------------------------------*/
/*  BACKGROUND IMAGE
/*------------------------------------------*/

.bg--01, 
.bg--02, 
.bg--03, 
.bg--04, 
.bg--05,
.bg--06,
.bg--07,
.bg--08 {
  background-repeat: no-repeat;
  background-position: center center;   
  background-size: cover;
}

.bg--01 { background-image: url(../images/bg-01.jpg); }
.bg--02 { background-image: url(../images/bg-02.jpg); }
.bg--03 { background-image: url(../images/bg-03.jpg); }
.bg--04 { background-image: url(../images/bg-04.jpg); }
.bg--05 { background-image: url(../images/bg-05.jpg); }
.bg--06 { background-image: url(../images/bg-06.jpg); }
.bg--07 { background-image: url(../images/bg-07.jpg); }
.bg--08 { background-image: url(../images/bg-08.jpg); }

/*------------------------------------------*/
/*  SECTION DIVIDER
/*------------------------------------------*/

hr.divider {
  width: 100%;
  height: 1px;
  background-color: transparent;
  background-image: linear-gradient(90deg, rgba(206,211,246,0) 0, #bbb 38%, #999 64%, rgba(206,211,246,0) 99%);
  opacity: .4;
  border: none;
  margin: 0;
}




/* ==========================================================================
  02. CUSTOM ANIMATION
  =========================================================================== */

.img-anim-right {
  animation: img-anim-right 1s forwards cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
  opacity: 0;
}

@keyframes img-anim-right {
  0% {
    transform: translateX(5%);
    clip-path: inset(0 0 0 100%);
    opacity: 0;
  }

  100% {
    transform: translateX(0);
    clip-path: inset(0 0 0 0);
    opacity: 1;
  }
}

.img-anim-left {
  animation: img-anim-left 1s forwards cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
  opacity: 0;
}

@keyframes img-anim-left {
  0% {
    transform: translateX(-5%);
    clip-path: inset(0 100% 0 0);
    opacity: 0;
  }

  100% {
    transform: translateX(0);
    clip-path: inset(0 0 0 0);
    opacity: 1;
  }
}

.img-anim-top {
    animation: img-anim-top 1s forwards cubic-bezier(0.645, 0.045, 0.355, 1);
    opacity: 0;
}
  
@keyframes img-anim-top {
  0% {
    transform: translateY(-5%);
    clip-path: inset(0 0 100% 0);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    clip-path: inset(0 0 0 0);
    opacity: 1;
  }
}


/*
.image-rotate {
  
}
*/
.image-rotate img {
  position: absolute;
  animation:spin 10s linear infinite;
  width: 160px;
  height: 160px;
}

@keyframes spin { 
  100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } 
}




/* ==========================================================================
  03. TYPOGRAPHY
  =========================================================================== */

/*------------------------------------------*/
/*  HEADERS
/*------------------------------------------*/

h6, h5, h4, h3, h2, h1 {  
  font-family: var(--main-font);
  color: var(--header-color);
  font-weight: 600; 
  letter-spacing: -0.25px;  
  margin-bottom: 0;
}

h6, h5, h4 {  
  letter-spacing: 0;  
}

/*------------------------------------------*/
/*  TEXT SIZE
/*------------------------------------------*/

.fs-15 { font-size: 0.9375rem; }     /* 15px */
.fs-16 { font-size: 1rem; }          /* 16px */
.fs-17 { font-size: 1.0625rem; }     /* 17px */
.fs-18 { font-size: 1.125rem; }      /* 18px */
.fs-19 { font-size: 1.1875rem; }     /* 19px */
.fs-20 { font-size: 1.25rem; }       /* 20px */
.fs-21 { font-size: 1.3125rem; }     /* 21px */
.fs-22 { font-size: 1.375rem; }      /* 22px */
.fs-23 { font-size: 1.4375rem; }     /* 23px */
.fs-24 { font-size: 1.5rem; }        /* 24px */
.fs-25 { font-size: 1.5625rem; }     /* 25px */
.fs-26 { font-size: 1.625rem; }      /* 26px */
.fs-28 { font-size: 1.75rem; }       /* 28px */
.fs-30 { font-size: 1.875rem; }      /* 30px */
.fs-32 { font-size: 2rem; }          /* 32px */
.fs-34 { font-size: 2.125rem; }      /* 34px */
.fs-36 { font-size: 2.25rem; }       /* 36px */
.fs-38 { font-size: 2.375rem; }      /* 38px */
.fs-40 { font-size: 2.5rem; }        /* 40px */
.fs-42 { font-size: 2.6255rem; }     /* 42px */
.fs-44 { font-size: 2.75rem; }       /* 44px */
.fs-46 { font-size: 2.875rem; }      /* 46px */
.fs-48 { font-size: 3rem; }          /* 48px */
.fs-50 { font-size: 3.125rem; }      /* 50px */
.fs-52 { font-size: 3.25rem; }       /* 52px */
.fs-54 { font-size: 3.375rem; }      /* 54px */
.fs-56 { font-size: 3.5rem; }        /* 56px */
.fs-58 { font-size: 3.625rem; }      /* 58px */
.fs-60 { font-size: 3.75rem; }       /* 60px */
.fs-62 { font-size: 3.875rem; }      /* 62px */
.fs-64 { font-size: 4rem; }          /* 64px */
.fs-66 { font-size: 4.125rem; }      /* 66px */
.fs-68 { font-size: 4.25rem; }       /* 68px */
.fs-70 { font-size: 4.375rem; }      /* 70px */
.fs-72 { font-size: 4.5rem; }        /* 72px */
.fs-74 { font-size: 4.625rem; }      /* 74px */
.fs-76 { font-size: 4.75rem; }       /* 76px */
.fs-78 { font-size: 4.875rem; }      /* 78px */
.fs-80 { font-size: 5rem; }          /* 80px */

/*------------------------------------------*/
/*  FONT WEIGHT
/*------------------------------------------*/

.txt-upcase { 
  text-transform: uppercase 
}

.fw-200 { font-weight: 200; }
.fw-300 { font-weight: 300; }
.fw-400 { font-weight: 400; }
.fw-500 { font-weight: 500; }
.fw-600 { font-weight: 600; }
.fw-700 { font-weight: 700; }
.fw-800 { font-weight: 800; }
.fw-900 { font-weight: 900; } 

/*------------------------------------------*/
/*  LETTERS SPACING
/*------------------------------------------*/

.ls-0d25px { letter-spacing: -0.25px; }
.ls-0d35px { letter-spacing: -0.35px; }
.ls-0d5px { letter-spacing: -0.5px; }
.ls-0d75px { letter-spacing: -0.75px; }
.ls-1px { letter-spacing: -1px; }
.ls-1d25px { letter-spacing: -1.25px; }
.ls-1d5px { letter-spacing: -1.5px; }
.ls-1d75px { letter-spacing: -1.75px; }
.ls-2px { letter-spacing: -2px; }

/*------------------------------------------*/
/*  PARAGRAPH
/*------------------------------------------*/

p { font-size: 1rem; }  /* 16px */

/*------------------------------------------*/
/*  LINK SETTINGS
/*------------------------------------------*/

a {
  color: var(--header-color);
  text-decoration: none;
  transition: all 400ms ease-in-out; 
}

a:hover {
  color: var(--header-color);
  text-decoration: none;
}

a:focus {
  outline: none;
  text-decoration: none;
}

a.tra-link {
  font-size: 1rem;
  line-height: 1;
  font-weight: 600;
}

a.tra-link:after {
  position: relative;
  font-family: Flaticon;
  font-weight: 300; 
  content: "\f141";
  font-size: 0.725rem;
  top: 1.5px;
  left: 3px;
}

a.tra-link:hover {
  color: var(--header-color)!important;
}

/*------------------------------------------*/
/*  LISTS
/*------------------------------------------*/

ul {
  margin: 0;
  padding: 0;
  list-style: none;
} 

/*------------------------------------------*/
/*  TEXT LIST
/*------------------------------------------*/

ul.simple-list {
  list-style: disc;
  margin-left: 15px;
}

ol.digit-list p,
ul.simple-list.long-list p {
  margin-bottom: 8px;
}

.content-section ul.simple-list.long-list p {
  margin-bottom: 5px;
}

/*------------------------------------------*/
/*  CHECK LIST
/*------------------------------------------*/

.check-list {
  margin: 25px 0 16px;
}

.check-list.mt-10 {
  margin: 8px 0 0;
}

.check-list li p {
  margin-bottom: 7px;
}

.check-list li p span {
  position: relative;
  top: 3px;
  margin-right: 10px;
}

.check-list.ico-20 [class^="flaticon-"]:before,
.check-list.ico-20 [class^="flaticon-"]:after {
  font-size: 1rem;
}

/*------------------------------------------*/
/*  LB LIST
/*------------------------------------------*/

.lb-list {
  position: relative;
  display: inline-block;
  width: auto;
  margin: 20px 0;
}

.list-line {
  position: absolute;
  top: -20px;
  left: 2.15rem;
  width: 3px;
  height: 113%;
  background-color: #f7d5e4;
}

.lb-list .list-item {
  padding: 14px 80px 14px 65px;
  border-top: 2px solid #d0e7f3;
}

.lb-list .list-item:last-child {
  border-bottom: 2px solid #d0e7f3;
}

.lb-list .list-item p {
  padding-left: 10px;
  margin-bottom: 0;
}

.lb-list .list-item p span {
  position: relative;
  top: 2px;
  right: 6px;
}

/*------------------------------------------*/
/*  BUTTON SETTINGS
/*------------------------------------------*/

.btn {
  font-size: 0.975rem;
  line-height: 1;
  font-weight: 600;
  background-color: transparent;
  padding: 0.8rem 1.6rem;
  border: 2px solid transparent;
  transition: all 400ms ease-in-out; 
}

.btn.btn-md {
  font-size: 1rem;
  padding: 0.9rem 1.8rem;
}

.btn.ico-20 {
  padding: 0.8rem 1.4rem;
}

.btn.btn-md.ico-20 {
  padding: 0.9rem 1.6rem;
}

.btn span {
  position: relative;
  margin-left: 4px;
  top: 3px;
}

.btn.btn-md span {
  top: 2.5px;
}

.btn.ico-20 [class*="flaticon-"]:before, 
.btn.ico-20 [class*="flaticon-"]:after { 
  font-size: 1rem; 
  line-height: 0.6rem!important; 
}

/*------------------------------------------*/
/*  THEME BUTTON
/*------------------------------------------*/

.btn--theme, .hover--theme:hover, .scroll .hover--theme:hover, .color--white .hover--theme:hover {
  color: var(--white)!important; border-color: var(--theme-color)!important; background-color: var(--theme-color)!important; 
}

.btn--tra-blue, .hover--tra-blue:hover, .color--white .btn--tra-blue {
  color: var(--theme-color)!important; background-color: transparent!important; border-color: var(--theme-color)!important; 
}

/*------------------------------------------*/
/*  WHITE BUTTON
/*------------------------------------------*/

.btn--white, 
.hover--white:hover, 
.color--white .btn--white, 
.color--white .hover--white:hover {
  color: var(--black)!important; background-color: var(--white)!important; border-color: var(--white)!important; 
}

.btn--tra-white, 
.hover--tra-white:hover, 
.color--white .hover--tra-white:hover {
  color: var(--white)!important; background-color: transparent!important; border-color: var(--white)!important; 
}

.scroll .hover--tra-white:hover {
  color: var(--black)!important; background-color: transparent!important; border-color: var(--black)!important; 
}

.scroll .hover--white:hover {
  color: var(--whte)!important; background-color: var(--black)!important; border-color: var(--black)!important; 
}

/*------------------------------------------*/
/*  BLACK BUTTON
/*------------------------------------------*/

.btn--black, 
.hover--black:hover {
  color: var(--white)!important; background-color: var(--black)!important; border-color: var(--black)!important; 
}

.btn--tra-black, 
.hover--tra-black:hover {
  color: var(--black)!important; background-color: transparent!important; border-color: var(--black)!important; 
}

/*------------------------------------------*/
/*  BLUE BUTTON
/*------------------------------------------*/

.btn--blue, .hover--blue:hover, .scroll .hover--blue:hover, .color--white .hover--blue:hover {
  color: var(--white)!important; border-color: var(--blue)!important; background-color: var(--blue)!important; 
}

.btn--tra-blue, .hover--tra-blue:hover, .color--white .btn--tra-blue {
  color: var(--blue)!important; background-color: transparent!important; border-color: var(--blue)!important; 
}



/*------------------------------------------*/
/*  CANDY BUTTON
/*------------------------------------------*/

.btn--candy, .hover--candy:hover, .scroll .hover--candy:hover, .color--white .hover--candy:hover {
  color: var(--white)!important; border-color: var(--candy)!important; background-color: var(--candy)!important; 
}

.btn--tra-candy, .hover--tra-candy:hover, .color--white .btn--tra-candy {
  color: var(--candy)!important; background-color: transparent!important; border-color: var(--candy)!important; 
}

/*------------------------------------------*/
/*  COAL BUTTON
/*------------------------------------------*/

.btn--coal, .hover--coal:hover, .scroll .hover--coal:hover, .color--white .hover--coal:hover {
  color: var(--white)!important; border-color: var(--coal)!important; background-color: var(--coal)!important; 
}

.btn--tra-coal, .hover--tra-coal:hover, .color--white .btn--tra-coal {
  color: var(--coal)!important; background-color: transparent!important; border-color: var(--coal)!important; 
}

/*------------------------------------------*/
/*  COBALT BUTTON
/*------------------------------------------*/

.btn--cobalt, .hover--cobalt:hover, .scroll .hover--cobalt:hover, .color--white .hover--cobalt:hover {
  color: var(--white)!important; border-color: var(--cobalt)!important; background-color: var(--cobalt)!important; 
}

.btn--tra-cobalt, .hover--tra-cobalt:hover, .color--white .btn--tra-cobalt {
  color: var(--cobalt)!important; background-color: transparent!important; border-color: var(--cobalt)!important; 
}

/*------------------------------------------*/
/*  CYAN BUTTON
/*------------------------------------------*/

.btn--cyan, .hover--cyan:hover, .scroll .hover--cyan:hover, .color--white .hover--cyan:hover {
  color: var(--white)!important; border-color: var(--cyan)!important; background-color: var(--cyan)!important; 
}

.btn--tra-cyan, .hover--tra-cyan:hover, .color--white .btn--tra-cyan {
  color: var(--cyan)!important; background-color: transparent!important; border-color: var(--cyan)!important; 
}

/*------------------------------------------*/
/*  DENIM BUTTON
/*------------------------------------------*/

.btn--denim, .hover--denim:hover, .scroll .hover--denim:hover, .color--white .hover--denim:hover {
  color: var(--white)!important; border-color: var(--denim)!important; background-color: var(--denim)!important; 
}

.btn--tra-denim, .hover--tra-denim:hover, .color--white .btn--tra-denim {
  color: var(--denim)!important; background-color: transparent!important; border-color: var(--denim)!important; 
}

/*------------------------------------------*/
/*  NAVY BUTTON
/*------------------------------------------*/

.btn--navy, .hover--navy:hover, .scroll .hover--navy:hover, .color--white .hover--navy:hover {
  color: var(--white)!important; border-color: var(--navy)!important; background-color: var(--navy)!important; 
}

.btn--tra-navy, .hover--tra-navy:hover, .color--white .btn--tra-navy {
  color: var(--navy)!important; background-color: transparent!important; border-color: var(--navy)!important; 
}

/*------------------------------------------*/
/*  ROYAL BUTTON
/*------------------------------------------*/

.btn--royal, .hover--royal:hover, .scroll .hover--royal:hover, .color--white .hover--royal:hover {
  color: var(--white)!important; border-color: var(--royal)!important; background-color: var(--royal)!important; 
}

.btn--tra-royal, .hover--tra-royal:hover, .color--white .btn--tra-royal {
  color: var(--royal)!important; background-color: transparent!important; border-color: var(--royal)!important; 
}

/*------------------------------------------*/
/*  SKY BUTTON
/*------------------------------------------*/

.btn--sky, .hover--sky:hover, .scroll .hover--sky:hover, .color--white .hover--sky:hover {
  color: var(--navy)!important; border-color: var(--sky)!important; background-color: var(--sky)!important; 
}

.btn--tra-sky, .hover--tra-sky:hover, .color--white .btn--tra-sky {
  color: var(--sky)!important; background-color: transparent!important; border-color: var(--sky)!important; 
}

/*------------------------------------------*/
/*  SKYBLUE BUTTON
/*------------------------------------------*/

.btn--skyblue, .hover--skyblue:hover, .scroll .hover--skyblue:hover, .color--white .hover--skyblue:hover {
  color: var(--white)!important; border-color: var(--sky-blue)!important; background-color: var(--sky-blue)!important; 
}

.btn--tra-skyblue, .hover--tra-skyblue:hover, .color--white .btn--tra-skyblue {
  color: var(--sky-blue)!important; background-color: transparent!important; border-color: var(--sky-blue)!important; 
}

/*------------------------------------------*/
/*  SUNNY BUTTON
/*------------------------------------------*/

.btn--sunny, .hover--sunny:hover, .scroll .hover--sunny:hover, .color--white .hover--sunny:hover {
  color: var(--coal)!important; border-color: var(--sunny)!important; background-color: var(--sunny)!important; 
}

/*------------------------------------------*/
/*  TEAL BUTTON
/*------------------------------------------*/

.btn--teal, .hover--teal:hover, .scroll .hover--teal:hover, .color--white .hover--teal:hover {
  color: var(--white)!important; border-color: var(--teal)!important; background-color: var(--teal)!important; 
}

.btn--tra-skyblue, .hover--tra-skyblue:hover, .color--white .btn--tra-skyblue {
  color: var(--teal)!important; background-color: transparent!important; border-color: var(--teal)!important; 
}

/*------------------------------------------*/
/*  BUTTON FOCUS
/*------------------------------------------*/

.btn:focus,
.btn.btn--black:focus {
  color: var(--white);
  box-shadow: none; 
}

.btn--tra-black:focus {
  color: var(--header-color); 
  box-shadow: none; 
}

/*------------------------------------------*/
/*  VIDEO POPUP ICON
/*------------------------------------------*/

.video-preview {
  position: relative; 
  text-align: center;
}

.video-btn {
  position: absolute!important;
  top: 50%;
  left: 50%;
  display: inline-block;
  text-align: center;
  color: var(--white);
  width: 6.25rem;
  height: 6.25rem;
  margin-top: -3.125rem;
  margin-left: -3.125rem;
  border-radius: 100%; 
}

.video-btn-sm {
  width: 4.2rem;
  height: 4.2rem;
  margin-top: -2.1rem;
  margin-left: -2.1rem;
}

.video-block-wrapper {
  transition: all 400ms ease-in-out;
}

.video-btn [class^="flaticon-"]:before, 
.video-btn [class^="flaticon-"]:after {
  font-size: 5rem;
  line-height: 6.25rem!important;   
  margin-left: 10px;
}

.video-btn.video-btn-sm [class^="flaticon-"]:before, 
.video-btn.video-btn-sm [class^="flaticon-"]:after {
  font-size: 3.25rem;
  line-height: 4.2rem!important;   
  margin-left: 7px;
}

.video-btn:hover .video-block-wrapper {
  transform: scale(0.95);
}

.video-btn:before {
  content: '';
  position: absolute;
  left: -5px;
  right: -5px;
  top: -5px;
  bottom: -5px;
  background: var(--tra-white);
  opacity: 0;
  border-radius: 50%;
  transition: all 400ms ease-in-out;
}

.video-btn:hover:before {
  opacity: .75;
  left: -1.5rem;
  right: -1.5rem;
  top: -1.5rem;
  bottom: -1.5rem;
}

.video-btn.video-btn-sm:hover:before {
  opacity: .75;
  left: -1rem;
  right: -1rem;
  top: -1rem;
  bottom: -1rem;
}


.video-btn.bg--tra-white {
  border: 3px solid var(--white);
  background-color: rgba(255, 255, 255, .005); 
}

/*------------------------------------------*/
/*  VECTOR ICONS
/*------------------------------------------*/

.ico-10 [class*="flaticon-"]:before, .ico-10 [class*="flaticon-"]:after { font-size: 0.75rem; }      /* 12px */
.ico-15 [class*="flaticon-"]:before, .ico-15 [class*="flaticon-"]:after { font-size: 0.9375rem; }    /* 15px */
.ico-20 [class*="flaticon-"]:before, .ico-20 [class*="flaticon-"]:after { font-size: 1.25rem; }      /* 20px */
.ico-25 [class*="flaticon-"]:before, .ico-25 [class*="flaticon-"]:after { font-size: 1.5625rem; }    /* 25px */
.ico-30 [class*="flaticon-"]:before, .ico-30 [class*="flaticon-"]:after { font-size: 1.875rem; }     /* 30px */
.ico-35 [class*="flaticon-"]:before, .ico-35 [class*="flaticon-"]:after { font-size: 2.1875rem; }    /* 35px */
.ico-40 [class*="flaticon-"]:before, .ico-40 [class*="flaticon-"]:after { font-size: 2.5rem; }       /* 40px */
.ico-45 [class*="flaticon-"]:before, .ico-45 [class*="flaticon-"]:after { font-size: 2.8125rem; }    /* 45px */
.ico-50 [class*="flaticon-"]:before, .ico-50 [class*="flaticon-"]:after { font-size: 3.125rem; }     /* 50px */
.ico-55 [class*="flaticon-"]:before, .ico-55 [class*="flaticon-"]:after { font-size: 3.4375rem; }    /* 55px */
.ico-60 [class*="flaticon-"]:before, .ico-60 [class*="flaticon-"]:after { font-size: 3.75rem; }      /* 60px */
.ico-65 [class*="flaticon-"]:before, .ico-65 [class*="flaticon-"]:after { font-size: 4.0625rem; }    /* 65px */
.ico-70 [class*="flaticon-"]:before, .ico-70 [class*="flaticon-"]:after { font-size: 4.375rem; }     /* 70px */
.ico-75 [class*="flaticon-"]:before, .ico-75 [class*="flaticon-"]:after { font-size: 4.6875rem; }    /* 75px */
.ico-80 [class*="flaticon-"]:before, .ico-80 [class*="flaticon-"]:after { font-size: 5rem; }         /* 80px */
.ico-85 [class*="flaticon-"]:before, .ico-85 [class*="flaticon-"]:after { font-size: 5.3125rem; }    /* 85px */
.ico-90 [class*="flaticon-"]:before, .ico-90 [class*="flaticon-"]:after { font-size: 5.625rem; }     /* 90px */
.ico-95 [class*="flaticon-"]:before, .ico-95 [class*="flaticon-"]:after { font-size: 5.9375rem; }    /* 95px */
.ico-100 [class*="flaticon-"]:before, .ico-100 [class*="flaticon-"]:after { font-size: 6.25rem; }    /* 100px */
.ico-105 [class*="flaticon-"]:before, .ico-105 [class*="flaticon-"]:after { font-size: 6.5625rem; }  /* 105px */
.ico-110 [class*="flaticon-"]:before, .ico-110 [class*="flaticon-"]:after { font-size: 6.875rem; }   /* 110px */
.ico-115 [class*="flaticon-"]:before, .ico-115 [class*="flaticon-"]:after { font-size: 7.1875rem; }  /* 115px */
.ico-120 [class*="flaticon-"]:before, .ico-120 [class*="flaticon-"]:after { font-size: 7.5rem; }     /* 120px */
.ico-125 [class*="flaticon-"]:before, .ico-125 [class*="flaticon-"]:after { font-size: 7.8125rem; }  /* 125px */

/*------------------------------------------*/
/*  IMAGE HOVER OVERLAY
/*------------------------------------------*/

.hover-overlay {
  width: 100%;
  height: auto;
  overflow: hidden;
  position: relative; 
}

.hover-overlay img {
  transform: scale(1);
  overflow: hidden;
  transition: transform 400ms;
}

/*------------------------------------------*/
/*  Overlay Background 
/*------------------------------------------*/ 

.item-overlay {
  opacity: 0;
  -moz-opacity: 0; 
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(20, 20, 20, .5);
  -webkit-transition: all 400ms ease-in-out;
  -moz-transition: all 400ms ease-in-out;
  -o-transition: all 400ms ease-in-out;
  -ms-transition: all 400ms ease-in-out;
  transition: all 400ms ease-in-out;
}

/*------------------------------------------*/
/*  MODULE SUBTITLE
/*------------------------------------------*/

.module-subtitle {
  display: block;
  font-size: 0.815rem;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 40px; 
}

.module-subtitle.bg--sunny {
  display: inline-block;
  background-color: var(--sunny);
  color: var(--denim);
  font-size: 0.735rem;
  padding: 10px 16px;
  border-radius: 8px;
}

/*------------------------------------------*/
/*  SECTION TITLE
/*------------------------------------------*/

.title-01 {
  position: relative;
  text-align: center;
}

.title-03 .section-title {
  padding-right: 15px;
}

.title-01 p {
  margin: 20px 30px 0;
}

.title-03 p {
  margin-bottom: 0;
}

.section-rating .users {
  margin-left: 25px;
}

.section-rating .users img {
  position: relative;
  max-width: inherit;
  max-height: 60px;
  top: 0;
}

.section-rating .users p {
  font-size: 0.95rem;
  display: block;
  line-height: 1.45;
  margin: 14px 0 0;
}

.section-rating .users p span {
  color: var(--header-color);
  font-weight: 600;
  display: inline-block;
}

.color--white .section-rating .users p span {
  color: var(--white);
}

/*------------------------------------------*/
/*  BLOCK INFO
/*------------------------------------------*/

.block-info {
  text-align: center;
  margin-top: 40px;
}

.block-info.mt-60 {
  margin-top: 60px;
}

.block-info.mt-75 {
  margin-top: 75px;
}

.block-info.mt-85 {
  margin-top: 85px;
}

.block-info img {
  width: auto;
  max-width: inherit;
  max-height: 75px;
  margin-right: 10px;
}

.block-info-txt {
  position: relative;
  font-size: 1.2rem;
}

.block-info-txt a {
  position: relative;
  color: var(--header-color);
  font-size: 1.175rem;
  font-weight: 600;
  padding-bottom: 8px;
  text-decoration: none;
  letter-spacing: -0.5px;
}

.block-info-txt.theme-coal a {
  color: var(--coal);
}

.block-info-txt a:after {
  content: '';
  background-color: var(--header-color);
  width: 100%;
  height: 2.25px;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  opacity: 1;
  transition: .3s all ease-in;
}

.block-info-txt.theme-coal a:after {
  background-color: var(--coal);
}

.block-info-txt a:hover:after {
  width: 60%;
  opacity: 1;
}

/*------------------------------------------*/
/*  USER AVATARS
/*------------------------------------------*/

.users img {
  position: relative;
  width: auto;
  max-width: inherit;
  max-height: 50px;
  top: -13px;
}

.users p {
  font-size: 0.925rem;
  margin-left: 5px;
  display: inline-block;
  line-height: 1.45;
  margin-bottom: 0;
}

.users p span {
  display: block;
}

/*------------------------------------------*/
/*  TEXT COLORS
/*------------------------------------------*/

.color--theme,
.color--theme a,
.color--theme :is(h1, h2, h3, h4, h5, h6) { color: var(--theme-color)!important; }

.color--white,
.color--white a,
.color--white :is(h1, h2, h3, h4, h5, h6) { color: var(--white)!important; }

.color--black,
.color--black a,
.color--black :is(h1, h2, h3, h4, h5, h6) { color: var(--black); }

.color--blue,
.color--blue a,
.color--blue :is(h1, h2, h3, h4, h5, h6) { color: var(--blue); }

.color--candy,
.color--candy a,
.color--candy :is(h1, h2, h3, h4, h5, h6) { color: var(--candy); }

.color--coal,
.color--coal a,
.color--coal :is(h1, h2, h3, h4, h5, h6) { color: var(--coal); }

.color--cobalt,
.color--cobalt a,
.color--cobalt :is(h1, h2, h3, h4, h5, h6) { color: var(--cobalt); }

.color--coral,
.color--coral a,
.color--coral :is(h1, h2, h3, h4, h5, h6) { color: var(--coral); }

.color--cyan,
.color--cyan a,
.color--cyan :is(h1, h2, h3, h4, h5, h6) { color: var(--cyan); }

.color--denim,
.color--denim a,
.color--denim :is(h1, h2, h3, h4, h5, h6) { color: var(--denim); }

.color--green,
.color--green a,
.color--green :is(h1, h2, h3, h4, h5, h6) { color: var(--green); }

.color--header,
.color--header a,
.color--header :is(h1, h2, h3, h4, h5, h6) { color: var(--header-color); }

.color--navy,
.color--navy a,
.color--navy :is(h1, h2, h3, h4, h5, h6) { color: var(--navy); }

.color--pink,
.color--pink a,
.color--pink :is(h1, h2, h3, h4, h5, h6) { color: var(--pink); }

.color--salmon,
.color--salmon a,
.color--salmon :is(h1, h2, h3, h4, h5, h6) { color: var(--salmon); }

.color--sand,
.color--sand a,
.color--sand :is(h1, h2, h3, h4, h5, h6) { color: var(--sand); }

.color--seablue,
.color--seablue a,
.color--seablue :is(h1, h2, h3, h4, h5, h6) { color: var(--seablue); }

.color--skyblue,
.color--skyblue a,
.color--skyblue :is(h1, h2, h3, h4, h5, h6) { color: var(--sky-blue); }

.color--teal,
.color--teal a,
.color--teal :is(h1, h2, h3, h4, h5, h6) { color: var(--teal); }

.color--yellow,
.color--yellow a,
.color--yellow :is(h1, h2, h3, h4, h5, h6) { color: var(--yellow); }




/* ==========================================================================
  04. PRELOADER SPINNER
  ========================================================================== */

#loading {
  background-color: var(--white);
  height: 100%;
  width: 100%;
  position: fixed;
  z-index: 99999999;
  margin-top: 0px;
  top: 0px;
}

.cssload-loader {
  position: absolute;
  left: 50%;
  top: 50%;
  margin-top: -35px;
  margin-left: -35px;
  width: 70px;
  height: 70px;
  border: 6px solid var(--theme-color);
  animation: cssload-loader 3.9s infinite ease;
}

.theme-blue .cssload-loader {
  border: 6px solid var(--blue);
}

.theme-green .cssload-loader {
  border: 6px solid var(--green);
}

.cssload-loader-inner {
  vertical-align: top;
  display: inline-block;
  width: 100%;
  background-color: var(--theme-color);
  animation: cssload-loader-inner 3.9s infinite ease-in;
}

.theme-blue .cssload-loader-inner {
  background-color: var(--blue);
}

.theme-green .cssload-loader-inner {
  background-color: var(--green);
}

@keyframes cssload-loader {
  0% {
    transform: rotate(0deg);
  }
  
  25% {
    transform: rotate(180deg);
  }
  
  50% {
    transform: rotate(180deg);
  }
  
  75% {
    transform: rotate(360deg);
  }
  
  100% {
    transform: rotate(360deg);
  }
}

@-o-keyframes cssload-loader {
  0% {
    transform: rotate(0deg);
  }
  
  25% {
    transform: rotate(180deg);
  }
  
  50% {
    transform: rotate(180deg);
  }
  
  75% {
    transform: rotate(360deg);
  }
  
  100% {
    transform: rotate(360deg);
  }
}

@-ms-keyframes cssload-loader {
  0% {
    transform: rotate(0deg);
  }
  
  25% {
    transform: rotate(180deg);
  }
  
  50% {
    transform: rotate(180deg);
  }
  
  75% {
    transform: rotate(360deg);
  }
  
  100% {
    transform: rotate(360deg);
  }
}

@-webkit-keyframes cssload-loader {
  0% {
    transform: rotate(0deg);
  }
  
  25% {
    transform: rotate(180deg);
  }
  
  50% {
    transform: rotate(180deg);
  }
  
  75% {
    transform: rotate(360deg);
  }
  
  100% {
    transform: rotate(360deg);
  }
}

@-moz-keyframes cssload-loader {
  0% {
    transform: rotate(0deg);
  }
  
  25% {
    transform: rotate(180deg);
  }
  
  50% {
    transform: rotate(180deg);
  }
  
  75% {
    transform: rotate(360deg);
  }
  
  100% {
    transform: rotate(360deg);
  }
}

@keyframes cssload-loader-inner {
  0% {
    height: 0%;
  }
  
  25% {
    height: 0%;
  }
  
  50% {
    height: 100%;
  }
  
  75% {
    height: 100%;
  }
  
  100% {
    height: 0%;
  }
}

@-o-keyframes cssload-loader-inner {
  0% {
    height: 0%;
  }
  
  25% {
    height: 0%;
  }
  
  50% {
    height: 100%;
  }
  
  75% {
    height: 100%;
  }
  
  100% {
    height: 0%;
  }
}

@-ms-keyframes cssload-loader-inner {
  0% {
    height: 0%;
  }
  
  25% {
    height: 0%;
  }
  
  50% {
    height: 100%;
  }
  
  75% {
    height: 100%;
  }
  
  100% {
    height: 0%;
  }
}

@-webkit-keyframes cssload-loader-inner {
  0% {
    height: 0%;
  }
  
  25% {
    height: 0%;
  }
  
  50% {
    height: 100%;
  }
  
  75% {
    height: 100%;
  }
  
  100% {
    height: 0%;
  }
}

@-moz-keyframes cssload-loader-inner {
  0% {
    height: 0%;
  }
  
  25% {
    height: 0%;
  }
  
  50% {
    height: 100%;
  }
  
  75% {
    height: 100%;
  }
  
  100% {
    height: 0%;
  }
}




/* ==========================================================================
  05. HEADER & NAVIGATION
  =========================================================================== */

#header {
  width: 100%;
  display: block;
  padding-top: 0px;
}

.header-wrapper {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.headerwp {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0;
}

.wsmainwp {
  max-width: 1320px;
}

.posrlt {
  position: relative;
}

/*------------------------------------------*/
/*  HEADER STRIP 
/*------------------------------------------*/

.headtoppart {
  display: block;
  width: 100%;
  height: 40px;
  margin: 0px auto;
  padding: 0;
  min-width: 320px;
}

.headertopcenter {
  width: 100%;
  float: none;
  text-align: center;
}

.headertopleft {
  width: 50%;
  float: left;
}

.headertopright {
  width: 50%;
  float: right;
  text-align: right;
}

.headertopcenter p {
  font-size: 0.8rem;
  line-height: 40px;
}

.headertopleft p,
.headertopright p {
  font-size: 0.8rem;
  line-height: 40px;
  margin: 0 28px 0 0;
}

.headertopleft p {
  margin: 0 0 0 18px;
}

.headtoppart p a {
  color: var(--text-color);
  margin-left: 12px;
}

.headtoppart .headertopcenter p a {
  margin-left: 6px;
}

.headtoppart p a:hover {
  text-decoration: underline;
}

.headtoppart span {
  position: relative;
  top: 1px;
  right: 1px;
  color: var(--header-color);
}

.headtoppart [class^="flaticon-"]:before,
.headtoppart [class^="flaticon-"]:after {
  font-size: 0.7rem;
}

.headtoppart.color--white p a,
.headtoppart.color--white span {
  color: var(--white);
} 

/*------------------------------------------*/
/*  HEADER LOGO
/*------------------------------------------*/

.desktoplogo {
  line-height: 80px;
}

.desktoplogo img {
  width: auto;
  max-width: inherit;
  max-height: 42px;
}

/*------------------------------------------*/
/*  NAVIGATION MENU
/*------------------------------------------*/

.wsmainfull {
  width: 100%;
  height: auto;
  z-index: 1031;
  transition: all 450ms ease-in-out; 
}

.tra-menu .wsmainfull {
  padding: 20px 0;
  background-color: transparent!important;
  box-shadow: none;
}

.white-menu .wsmainfull {
  padding: 6px 0;
  background-color: var(--white)!important;
  box-shadow: 0 2px 3px var(--tra-gray);
}

#header.hiddden-header {
  display: none;
}

.hidden-nav .wsmainfull {
  margin-top: -140px;
  box-shadow: 0 2px 3px var(--tra-gray);
  transition: all 400ms ease-in-out;
}

/*------------------------------------------*/
/*  HEADER LINK
/*------------------------------------------*/ 

.wsmenu > .wsmenu-list > li > a {
  display: block;
  font-size: 0.975rem;
  line-height: 60px;
  font-weight: 600;
  letter-spacing: 0;
  text-decoration: none;  
  margin: 0 8px;
  padding: 10px 15px;
}

.navbar-dark .wsmenu > .wsmenu-list > li > a.h-link {
  color: var(--black);
}

.navbar-light .wsmenu > .wsmenu-list > li > a.h-link {
  color: var(--white);
}

.wsmenu > .wsmenu-list > li > a.h-link.last-link {
  padding: 10px 0px;
  margin: 0;
}

.wsmenu > .wsmenu-list > li > a .wsarrow:after {
  border-left: 4px solid rgba(0, 0, 0, 0);
  border-right: 4px solid rgba(0, 0, 0, 0);
  border-top: 4px solid;
  content: "";
  float: right;
  right: 0;
  height: 0;
  margin: 0 0 0 17px;
  position: absolute;
  text-align: right;
  top: 40px;
  width: 0;
}

/*------------------------------------------*/
/*  HEADER BUTTON
/*------------------------------------------*/

.wsmenu > .wsmenu-list > li a.btn {
  font-size: 0.925rem;
  line-height: 30px;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  margin-top: 17px;
  padding: 7px 24px;
}

.centered-menu .wsmenu > .wsmenu-list > li a.btn {
  padding: 6px 13px 5px;
}

.nl-simple.m-left .btn {
  margin-left: 60px;
}

/*------------------------------------------*/
/*  LANGUAGE SELECT
/*------------------------------------------*/

.wsmenu > .wsmenu-list > li.lang {
  margin-right: 12px;
}

.wsmenu > .wsmenu-list > li.lang > ul.sub-menu {
  width: auto;
  min-width: 115px!important;
  padding: 8px 5px;
}

.wsmenu > .wsmenu-list > li.lang > ul.sub-menu > li > a {
  font-size: 0.875rem;
  padding: 8px 11px;
}

.wsmenu > .wsmenu-list > li.lang > ul.sub-menu > li > a:hover {
  padding: 8px 11px;
}

/*------------------------------------------*/
/*  HEADER SUBMENU
/*------------------------------------------*/

.wsmenu > .wsmenu-list > li > ul.sub-menu {
  width: auto;
  min-width: 200px;
  top: 62px;
  padding: 14px 22px;
  border-radius: 4px;
  box-shadow: 0 2px 3px var(--tra-gray);
}

.wsmenu > .wsmenu-list > li > ul.sub-menu > li > a {
  color: var(--black);
  font-size: 0.935rem;
  font-weight: 600;
  padding: 9px 0;
  transition: all 0.3s ease-in-out;
}

.wsmenu > .wsmenu-list > li > ul.sub-menu > li > a:hover {
  padding: 9px 0 9px 4px;
}

/*------------------------------------------*/
/*  HEADER SUBMENU SUBMENU
/*------------------------------------------*/

.wsmenu > .wsmenu-list > li > ul.sub-menu > li > ul.sub-menu {
  min-width: 210px;
  position: absolute;
  left: 102%;
  top: 0;
  margin: 0;
  padding: 12px 20px;
  border: none;
  border-radius: 4px;
  box-shadow: 0 2px 3px var(--tra-gray);
}

.wsmenu > .wsmenu-list > li > ul.sub-menu > li > ul.sub-menu > li {
  border-bottom: none;
}

.wsmenu > .wsmenu-list > li > ul.sub-menu > li > ul.sub-menu > li > a {
  color: var(--black);
  font-size: 0.935rem;
  font-weight: 600;
  padding: 9px 0;
  transition: all 0.3s ease-in-out;
}

.wsmenu > .wsmenu-list > li > ul.sub-menu > li > ul.sub-menu > li > a:hover {
  padding: 9px 0 9px 4px;
}

.wsmenu > .wsmenu-list > li > ul.sub-menu > li > a span {
  position: absolute;
  top: 10px;
  right: 9px;
}

.sub-menu.ico-10 [class*="flaticon-"]:before, 
.sub-menu.ico-10 [class*="flaticon-"]:after { font-size: 0.7rem; } 

/*------------------------------------------*/
/*  HALFMENU
/*------------------------------------------*/

.wsmenu > .wsmenu-list > li > .wsmegamenu {
  top: 70px;
}

.wsmenu > .wsmenu-list > li > .wsmegamenu.halfmenu {
  width: 35%;
  padding: 15px 14px;
  border-radius: 4px;
  box-shadow: 0 2px 3px var(--tra-gray);
}

.wsmenu > .wsmenu-list > li > .wsmegamenu .link-list li {
  border-bottom: none;
}

.wsmenu > .wsmenu-list > li > .wsmegamenu.w-90 ul.link-list > li > a,
.wsmenu > .wsmenu-list > li > .wsmegamenu.halfmenu ul.link-list > li > a {
  background-color: transparent;
  color: var(--black);
  font-size: 0.935rem;
  font-weight: 600;
  padding: 9px 0;
  transition: all 0.3s ease-in-out;
}

.wsmenu > .wsmenu-list > li > .wsmegamenu.w-90 ul.link-list > li > a:hover,
.wsmenu > .wsmenu-list > li > .wsmegamenu.halfmenu ul.link-list > li > a:hover {
  padding: 9px 0 9px 4px;
}

/*------------------------------------------*/
/*  MEGAMENU
/*------------------------------------------*/

.wsmenu > .wsmenu-list > li > .wsmegamenu {
  padding: 20px 22px;
  border-radius: 4px;
  box-shadow: 0 2px 3px var(--tra-gray);
}

.wsmenu > .wsmenu-list > li > .wsmegamenu.w-90 {
  width: 80%!important;
  left: 10%;
  padding: 25px;
}

.wsmegamenu.w-90 .col-lg-3 {
  width: 22%;
  padding: 0 6px;
}

.wsmegamenu.w-90 .col-lg-3.col-img {
  width: 32%;
  padding: 0;
}

.col-img .video-preview {
  margin-top: 5px;
}

/*------------------------------------------*/
/*  MEGAMENU TITLE
/*------------------------------------------*/

.wsmegamenu p.title {
  font-size: 0.8rem;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  margin: 5px 0 15px;
}

/*------------------------------------------*/
/*  NAVBAR HOVER
/*------------------------------------------*/

.navbar-light .wsmenu-list > li > a.h-link:hover {
  color: var(--smoke);
}

.navbar-dark .wsmenu-list > li > a.h-link:hover {
  color: var(--ink);
}

.wsmenu > .wsmenu-list.nav-theme > li > ul.sub-menu > li > a:hover,
.wsmenu > .wsmenu-list.nav-theme > li > ul.sub-menu > li > ul.sub-menu > li > a:hover,
.wsmenu > .wsmenu-list.nav-theme > li > .wsmegamenu.w-90 ul.link-list > li > a:hover,
.wsmenu > .wsmenu-list.nav-theme > li > .wsmegamenu.halfmenu ul.link-list > li > a:hover {
  color: var(--theme-color);
}

.wsmenu > .wsmenu-list.nav-blue > li > ul.sub-menu > li > a:hover,
.wsmenu > .wsmenu-list.nav-blue > li > ul.sub-menu > li > ul.sub-menu > li > a:hover,
.wsmenu > .wsmenu-list.nav-blue > li > .wsmegamenu.w-90 ul.link-list > li > a:hover,
.wsmenu > .wsmenu-list.nav-blue > li > .wsmegamenu.halfmenu ul.link-list > li > a:hover {
  color: var(--blue);
}

.wsmenu > .wsmenu-list.nav-candy > li > ul.sub-menu > li > a:hover,
.wsmenu > .wsmenu-list.nav-candy > li > ul.sub-menu > li > ul.sub-menu > li > a:hover,
.wsmenu > .wsmenu-list.nav-candy > li > .wsmegamenu.w-90 ul.link-list > li > a:hover,
.wsmenu > .wsmenu-list.nav-candy > li > .wsmegamenu.halfmenu ul.link-list > li > a:hover {
  color: var(--candy);
}

.wsmenu > .wsmenu-list.nav-cyan > li > ul.sub-menu > li > a:hover,
.wsmenu > .wsmenu-list.nav-cyan > li > ul.sub-menu > li > ul.sub-menu > li > a:hover,
.wsmenu > .wsmenu-list.nav-cyan > li > .wsmegamenu.w-90 ul.link-list > li > a:hover,
.wsmenu > .wsmenu-list.nav-cyan > li > .wsmegamenu.halfmenu ul.link-list > li > a:hover {
  color: var(--cyan);
}

.wsmenu > .wsmenu-list.nav-green > li > ul.sub-menu > li > a:hover,
.wsmenu > .wsmenu-list.nav-green > li > ul.sub-menu > li > ul.sub-menu > li > a:hover,
.wsmenu > .wsmenu-list.nav-green > li > .wsmegamenu.w-90 ul.link-list > li > a:hover,
.wsmenu > .wsmenu-list.nav-green > li > .wsmegamenu.halfmenu ul.link-list > li > a:hover {
  color: var(--green);
}

.wsmenu > .wsmenu-list.nav-teal > li > ul.sub-menu > li > a:hover,
.wsmenu > .wsmenu-list.nav-teal > li > ul.sub-menu > li > ul.sub-menu > li > a:hover,
.wsmenu > .wsmenu-list.nav-teal > li > .wsmegamenu.w-90 ul.link-list > li > a:hover,
.wsmenu > .wsmenu-list.nav-teal > li > .wsmegamenu.halfmenu ul.link-list > li > a:hover {
  color: var(--teal);
}

/*------------------------------------------*/
/*  HIDDEN NAVBAR SCROLL
/*------------------------------------------*/

.hidden-nav .wsmainfull.scroll {
  margin-top: 0;
}

/*------------------------------------------*/
/*  NAVBAR SCROLL
/*------------------------------------------*/

.tra-menu .wsmainfull.scroll,
.white-menu .wsmainfull.scroll {
  padding: 0;
  border: none;
  background-color: rgba(255, 255, 255, .7)!important;
  backdrop-filter: blur(20px);
  box-shadow: 0 2px 3px var(--tra-gray);
}

.tra-menu.navbar-dark .scroll .wsmenu > .wsmenu-list > li > a.h-link, 
.tra-menu.navbar-light .scroll .wsmenu > .wsmenu-list > li > a.h-link {
  color: var(--black);
}

.navbar-light .scroll .wsmenu-list > li > a.h-link:hover {
  color: var(--ink)!important;
}

/*------------------------------------------*/
/*  WHITE BUTTON
/*------------------------------------------*/

.scroll .btn--tra-white {
  color: var(--black)!important;
  border-color: var(--black)!important;
}

/*------------------------------------------*/
/*  LOGO IMAGE
/*------------------------------------------*/

.logo-white, 
.logo-black {
  display: block;
}

.navbar-dark .logo-white,
.navbar-light .logo-black,
.tra-menu.navbar-light .scroll .logo-white {
  display: none;
}

.tra-menu.navbar-light .scroll .logo-black {
  display: block;
}




/* ==========================================================================
  06. HERO
  ========================================================================== */

/*------------------------------------------*/
/*  HERO SLIDESHOW
/*------------------------------------------*/

.slideshow {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 800px;
  z-index: 1;
}

.slideshow .slideshow-inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.slideshow .slides {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 800px;
  z-index: 1;
}

.slideshow .slide {
  display: none;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.slideshow .slide.is-active {
  display: block;
}

.slideshow .slide.is-loaded {
  opacity: 1;
}

.slideshow .slide .image-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.slideshow .slide .image {
  width: 100%;
  object-fit: cover;
  height: 100%;
}

.slideshow .slide-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
}

/*------------------------------------------*/
/*  HERO SLIDER
/*------------------------------------------*/

.slider {
  overflow: hidden;
  position: relative;
  max-width: 100%;
  height: 530px;
}

.slider .slides {
  margin: 0;
  height: 530px;
}

.slider .slides li {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: inherit;
  overflow: hidden;
}

.slider .slides li img {
  height: 100%;
  width: 100%;
  background-size: cover;
  background-position: center;
}

.slider .slides li.active {
  z-index: 2;
}

/*------------------------------------------*/
/*  Slider Indicators
/*------------------------------------------*/

.slider .indicators {
  position: absolute;
  text-align: center;
  left: 0;
  right: 0;
  bottom: 20px;
  margin: 0; 
  z-index: 98;
}

.slider .indicators .indicator-item {
  display: inline-block;
  position: relative;
  cursor: pointer;
  background-color: transparent;
  height: 10px;
  width: 10px;
  border: 2px solid #fff;
  margin: 0 7px;
  opacity: .5;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
  border-radius: 50%;
}

.slider .indicators .indicator-item.active {
  background-color: #fff;
  opacity: .65;
}

/*------------------------------------------*/
/*  HERO-1
/*------------------------------------------*/

.hero-1 .caption {
  margin-top: 90px;
  padding-right: 2%;
}

.hero-1 .module-subtitle {
  font-size: 0.8rem;
  margin-bottom: 45px;
}

.hero-1 .caption h2 {
  font-size: 4.75rem;
  line-height: 1.2;
}

.hero-1 .caption p {
  margin: 22px 4% 32px 0;
}

/*------------------------------------------*/
/*  HERO-2
/*------------------------------------------*/

.hero-2 {
  position: relative;
  background-image: url(../images/hero-2.jpg);
  padding-top: 120px;
}

.hero-2-txt {
  margin: 0 0 0 10px;
}

.hero-2-txt .module-subtitle {
  font-size: 0.8rem;
  margin-bottom: 45px;
}

.hero-2-txt h2 {
  font-size: 4.5rem;
  line-height: 1.15;
}

.hero-2-txt p.fs-21 {
  margin: 22px 3% 32px 0;
}

.hero-2-img {
  margin: 0 15px 0 10px;
}

.hero-2-avatars {
  position: absolute;
  bottom: 90px;
  right: 330px;
  padding: 16px 30px 2px 17px;
  box-shadow: 0 10px 30px rgba(20, 20, 20, .15);
}

.hero-2-avatars .users img {
  max-height: 60px;
  top: -11px;
}

.hero-2-avatars .users p {
  position: relative;
  font-size: 0.9rem;
  top: 4px;
  left: 4px;
  margin: 0;
}

/*------------------------------------------*/
/*  HERO-3
/*------------------------------------------*/

.hero-3 {
  background-image: url(../images/hero-3.jpg);
  padding-top: 340px;
  padding-bottom: 100px;
}

.hero-3-title h2 {
  font-size: 5.5rem;
  line-height: 1.25;
}

.hero-3-txt p {
  margin: 0 0 20px 4%;
}

.hero-3-link {
  position: relative;
  width: 160px;
  height: 160px;
  margin-bottom: 20px;
}

.hero-3 .image-rotate img {
  width: 160px;
  height: 160px;
}

/*------------------------------------------*/
/*  HERO-4
/*------------------------------------------*/

.hero-4-wrapper {
  position: relative;
  background-image: url(../images/hero-4.jpg);
  padding: 25px;
  margin-top: 125px;
}

.hero-4-txt {
  text-align: center;
  padding: 65px 55px 55px;
  margin-right: 20px;
  box-shadow: 0 10px 30px rgba(20, 20, 20, .15);
}

.hero-4-framer {
  margin-bottom: 40px;
}

.hero-4-framer a {
  background-color: #f1f1f1;
  font-size: 0.95rem;
  padding: 10px 25px;
  border-radius: 36px;
}

.hero-4-framer span {
  position: relative;
  top: 4px;
  right: 2px;
}

.hero-4-framer.ico-15 [class*="flaticon-"]:before, 
.hero-4-framer.ico-15 [class*="flaticon-"]:after { font-size: 1.1rem; }

.hero-4-txt h2 {
  font-size: 2.85rem;
}

.hero-4-txt p.fs-17 {
  margin: 30px 0 25px;
}

.hero-4-avatars {
  position: absolute;
  bottom: 25px;
  right: 25px;
  padding: 16px 30px 2px 17px;
  box-shadow: 0 10px 30px rgba(20, 20, 20, .15);
}

.hero-4-avatars .users img {
  max-height: 60px;
  top: -11px;
}

.hero-4-avatars .users p {
  position: relative;
  font-size: 0.9rem;
  top: 4px;
  left: 4px;
  margin: 0;
}

.hero-4 .star-rating {
  margin-top: 15px;
}

.hero-4 .star-rating small {
  font-size: 0.9rem;
  margin-left: 2px;
}

.hero-4 .star-rating.ico-15 [class*="flaticon-"]:before, 
.hero-4 .star-rating.ico-15 [class*="flaticon-"]:after { position: relative; font-size: 0.915rem; top: 1.5px; }

/*------------------------------------------*/
/*  HERO-5
/*------------------------------------------*/

.hero-5 {
  padding-top: 40px;
}

.hero-5-txt {
  margin-bottom: 60px;
}

.hero-5-txt .module-subtitle {
  font-size: 0.75rem;
  margin-bottom: 45px;
}

.hero-5-txt h2 {
  font-size: 3.85rem;
}

.hero-5-txt p {
  margin: 18px 10% 30px 0;
}

/*------------------------------------------*/
/*  HERO-6
/*------------------------------------------*/

.hero-6-wrapper {
  margin-top: 125px;
}

.hero-6 .slideshow, 
.hero-6 .slideshow .slides { 
  height: 680px; 
}

.hero-6 .caption {
  margin-top: 15px;
  padding-left: 35px;
}

.hero-6 .module-subtitle {
  font-size: 0.8rem;
  margin-bottom: 42px;
}

.hero-6 .caption h2 {
  font-size: 4.35rem;
}

.hero-6 .caption p {
  margin: 20px 0 35px;
}

/*------------------------------------------*/
/*  HERO-7
/*------------------------------------------*/

.hero-7 {
  padding-top: 200px;
  padding-bottom: 100px;
}

.hero-7-txt {
  margin-top: 40px;
}

.hero-7-txt .module-subtitle {
  font-size: 0.9rem;
  margin-bottom: 40px;
}

.hero-7-txt h2 {
  font-size: 4rem;
  line-height: 1.2;
  letter-spacing: -1px;
  padding-right: 8%;
}

.hero-7-txt p {
  margin: 25px 6% 30px 0;
}

.hero-7-img {
  text-align: center;
  margin-left: 20px;
}

/*------------------------------------------*/
/*  HERO-8
/*------------------------------------------*/

.hero-8 {
  position: relative;
  background-image: url(../images/hero-8.jpg);
  padding-top: 220px; 
  padding-bottom: 100px;
}

.hero-8-title .module-subtitle {
  font-size: 0.85rem;
  margin-bottom: 45px;
}

.hero-8-title h2 {
  font-size: 4.75rem;
  line-height: 1.25;
  margin-bottom: 35px;
}

.hero-8-txt {
  margin-top: -40px;
}

.hero-8-txt p {
  margin: 0;
}

/*------------------------------------------*/
/*  HERO-9
/*------------------------------------------*/

.hero-9 {
  background-color: #f5f9fc;
  padding-top: 240px;
  margin-bottom: 80px;
}

.hero-9-title h2 {
  font-size: 3.75rem;
}

.hero-9-title h2 span {
  font-size: 3.9rem;
  padding-bottom: 2px;
  border-bottom: 5px solid var(--cobalt);
}

.hero-9 .slider {
  margin: 70px 0 -80px;
}

.hero-9-txt {
  margin-left: 30px;
}

.hero-9-txt p {
  margin-bottom: 5px;
}

/*------------------------------------------*/
/*  HERO-10
/*------------------------------------------*/

.hero-10 {
  position: relative;
  background-image: url(../images/hero-10.jpg);
  padding-top: 200px;
  padding-bottom: 120px;
}

.hero-10-txt h2 {
  font-size: 6.5rem;
  line-height: 1.1;
  font-weight: 400;
  letter-spacing: -2px;
}

.hero-10-txt h2 span {
  font-weight: 500;
}

.hero-10-txt p {
  margin: 25px 30% 35px 0;
}

.hero-10-avatars {
  position: absolute;
  bottom: 50px;
  right: 50px;
  padding: 16px 30px 2px 17px;
  box-shadow: 0 10px 30px rgba(20, 20, 20, .15);
}

.hero-10-avatars .users img {
  max-height: 60px;
  top: -11px;
}

.hero-10-avatars .users p {
  position: relative;
  font-size: 0.9rem;
  top: 4px;
  left: 4px;
  margin: 0;
}

.hero-10 .star-rating {
  margin-top: 15px;
}

.hero-10 .star-rating small {
  font-size: 0.9rem;
  margin-left: 2px;
}

.hero-10 .star-rating.ico-15 [class*="flaticon-"]:before, 
.hero-10 .star-rating.ico-15 [class*="flaticon-"]:after { position: relative; font-size: 0.915rem; top: 1.5px; }

/*------------------------------------------*/
/*  HERO-11
/*------------------------------------------*/

.hero-11 {
  padding-top: 140px;
  padding-bottom: 80px;
}

.hero-11:after {
  position: absolute;
  content: '';
  z-index: -1;
  width: 45%;
  height: 100%;
  bottom: 0;
  right: 0;
  background-color: #e3edf4;
  border-radius: 0 0 0 20px;
}

.hero-11-txt {
  padding-right: 5%;
}

.hero-avatars-widget {
  font-size: 0.975rem;
  margin-bottom: 40px;
}

.hero-avatars-widget img {
  position: relative;
  width: auto;
  max-width: inherit;
  max-height: 38px;
  margin-right: 3px;
}

.hero-avatars-widget span {
  color: var(--header-color);
  font-weight: 600;
}

.hero-11-txt h2 {
  font-size: 3.85rem;
  line-height: 1.25;
}

.hero-11-txt p {
  margin: 20px 5% 26px 0;
}

.hero-11-img {
  text-align: center;
}

/*------------------------------------------*/
/*  HERO-12
/*------------------------------------------*/

.hero-12 {
  position: relative;
  background-image: url(../images/hero-12.jpg);
  padding-top: 200px;
  padding-bottom: 110px;
}

.hero-12-txt h2 {
  font-size: 4.6rem;
  line-height: 1.2;
  font-weight: 400;
}

.hero-12-txt h2 span {
  font-weight: 700;
}

.hero-12-txt p {
  margin: 15px 8% 30px 0;
}

.hero-12-link {
  position: absolute;
  bottom: 95px;
  right: 12%;
  width: 160px;
  height: 160px;
}

.hero-12 .image-rotate img {
  width: 160px;
  height: 160px;
}




/* ==========================================================================
  07. SERVICES
  ========================================================================== */

.services-6.shape--bkg:after {
  position: absolute;
  width: 100%;
  height: 77%;
  top: 0;
  left: 0;
  content: '';
  z-index: -1;
}

.sbox-carousel {
  margin: 0 -12px;
}

/*------------------------------------------*/
/*  SERVICE BOX 
/*------------------------------------------*/

.sbox-1 {
  padding: 0 20px;
}

.sbox-4 {
  background-color: var(--white);
  padding: 40px 32px;
  border: 2px solid var(--silver);
  transition: all 400ms ease-in-out; 
}

.s4-inv .sbox-4 {
  padding: 40px 32px 30px;
}

.sbox-5 {
  background-color: var(--white);
  padding: 30px 30px 25px;
  border: 2px solid var(--silver);
  transition: all 400ms ease-in-out; 
}

.sbox-4.block--shadow,
.sbox-5.block--shadow {
  border-color: transparent;
  box-shadow: 0 8px 15px 0 var(--tra-black);
}

.sbox-4.bg--ghost,
.sbox-5.bg--ghost { 
  background-color: var(--ghost);
  border-color: rgba(231, 231, 231, .7);                        
}

.sbox-4.bg--white:hover,
.sbox-5.bg--white:hover {
  background-color: var(--theme-color);
  border-color: var(--theme-color);
}

.sbox-4.bg--white.hov-blue:hover,
.sbox-5.bg--white.hov-blue:hover {
  background-color: var(--blue);
  border-color: var(--blue);
}

.sbox-4:hover h5,
.sbox-5:hover h5,
.sbox-4:hover p,
.sbox-5:hover p,
.sbox-4:hover span,
.sbox-5:hover span {
  transition: all 400ms ease-in-out; 
}

.sbox-4.bg--white:hover h5,
.sbox-5.bg--white:hover h5,
.sbox-4.bg--white:hover p,
.sbox-5.bg--white:hover p,
.sbox-4.bg--white:hover span,
.sbox-5.bg--white:hover span {
  color: var(--white);
}

.sbox-4.border--theme:hover,
.sbox-5.border--theme:hover {
  background-color: var(--white);
  border-color: var(--theme-color);
}

.sbox-4.border--blue:hover,
.sbox-5.border--blue:hover {
  background-color: var(--white);
  border-color: var(--blue);
}

.sbox-4.bg--ghost:hover,
.sbox-5.bg--ghost:hover {
  background-color: var(--white);
  border-color: var(--blue);
}

.theme-cyan .sbox-4:hover,
.theme-cyan .sbox-5:hover {
  background-color: var(--white);
  border-color: var(--cyan);
}

.theme-green .sbox-5:hover {
  background-color: var(--white);
  border-color: var(--green);
}

.sbox-6 {
  margin: 0 12px;
}

.sbox-7 {
  overflow: hidden;
}

#sb-1-1,
#sb-1-2,
#sb-1-3 {
  border-right: 1px solid var(--silver);
}

.rows-2 #sb-4-1, 
.rows-2 #sb-4-2, 
.rows-2 #sb-4-3, 
.rows-2 #sb-4-4 { margin-bottom: 30px; }

#sb-5-4,
#sb-5-5,
#sb-5-6,
#sb-5-7 {
  margin-top: 30px;
}

/*------------------------------------------*/
/*  SERVICE BOX ICON
/*------------------------------------------*/ 

.sbox-ico {
  margin-bottom: 18px;
}

.sbox-4 .sbox-ico {
  margin-bottom: 16px;
}

.sbox-5 .sbox-ico,
.s4-inv .sbox-4 .sbox-ico {
  margin: 35px 0 0;
}

.sbox-6-txt {
  margin: 25px 0 0 15px;
}

.sbox-7-txt {
  padding: 30px 25px 25px;
}

/*------------------------------------------*/
/*  SBOX-3
/*------------------------------------------*/ 

.sbox-3-img {
  position: relative;
  z-index: -1;
}

.sbox-3-txt {
  background-color: var(--white);
  text-align: center;
  padding: 25px 20px 0;
  margin: -50px 16px 0;
  border-radius: 12px 12px 0 0;
  z-index: 2;
}

.sbox-3 h5 {
  margin-bottom: 10px;
}

.sbox-3 p {
  font-size: 0.975rem;
  margin-bottom: 0;
} 

.sb-6-data {
  position: absolute;
  width: 90%;
  left: 5%;
  bottom: 20px;
  padding: 20px 22px;
  background-color: rgba(255, 255, 255, .95);
}

.sb-6-data p {
  color: var(--text-color);
  font-size: 0.95rem;
  margin: 8px 0 0;
}

/*------------------------------------------*/
/*  SERVICE BOX TYPOGRAPHY
/*------------------------------------------*/ 

.sbox-1 h5,
.sbox-2 h5 {
  margin-bottom: 14px;
}

.sbox-4 h5,
.sbox-5 h5 {
  margin-bottom: 12px;
}

.sbox-7-txt h4 {
  margin: 40px 0 15px;
}

.sbox-1 p,
.sbox-2 p,
.sbox-4 p {
  margin-bottom: 0;
} 

.sbox-5 p {
  color: var(--text-color);
  margin-bottom: 0;
} 

.sbox-7-txt p {
  margin: 12px 0 0;
}

.sbox-7-txt .btn {
  font-size: 0.85rem;
  padding: 0.7rem 1.75rem;
}

.services-section .more-btn {
  text-align: center;
  margin-top: 55px;
}

/*------------------------------------------*/
/*  SBOX IMAGE
/*------------------------------------------*/ 

.sbox-3 .item-overlay,
.sbox-6 .item-overlay,
.sbox-7 .item-overlay {
  background: rgba(20, 20, 20, .12);
}

.sbox-3:hover img,
.sbox-6:hover img,
.sbox-7:hover img  {
  transform: scale(1.1);
}

.sbox-3:hover .item-overlay,
.sbox-6:hover .item-overlay,
.sbox-7:hover .item-overlay {
  opacity: 1; 
  -moz-opacity: 1; 
}

/*------------------------------------------*/
/*  CAROUSEL NAVIGATION
/*------------------------------------------*/ 

.sbox-6-wrapper {
  position: relative;
}

.sbox-6-wrapper .owl-theme .owl-nav { 
  position: absolute;
  top: -135px;
  right: 20px;
  margin-top: 0;
}

.sbox-6-wrapper .owl-theme.nav_center .owl-nav { 
  position: relative;
  top: 0;
  right: 0;
  margin-top: 40px;
}

.sbox-6-wrapper .owl-theme .owl-nav span { 
  background-color: transparent;
  font-size: 1.85rem;
  font-weight: 300; 
  padding: 0 16px 3px 14px;
  border: 1.5px solid var(--silver);
  width: 0;
  height: 0;
  margin: 0 6px;
  border-radius: 6px;
  transition: all 400ms ease-in-out; 
}

.sbox-6-wrapper .owl-carousel .owl-nav .owl-next span {
  padding: 0 14px 3px 16px;
}

.sbox-6-wrapper .owl-theme .owl-nav span:hover { 
  color: var(--white);
  background-color: var(--blue);
  border-color: var(--blue);
}

.sbox-6-wrapper .owl-theme.theme-cyan .owl-nav span:hover { 
  color: var(--white);
  background-color: var(--cyan);
  border-color: var(--cyan);
}

.sbox-6-wrapper .owl-theme.theme-teal .owl-nav span:hover { 
  color: var(--white);
  background-color: var(--teal);
  border-color: var(--teal);
}

.sbox-6-wrapper .owl-theme .owl-nav [class*=owl-] {
  padding: 0;
  margin: 0;
}

.sbox-6-wrapper .owl-carousel.white_nav .owl-nav button.owl-prev,
.sbox-6-wrapper .owl-carousel.white_nav .owl-nav button.owl-next {
  color: var(--white);
}

.sbox-6-wrapper .owl-theme .owl-nav [class*='owl-']:hover {
  background: transparent;
  color: inherit;
}




/* ==========================================================================
  08. SERVICE DETAILS
  ========================================================================== */

#service-page .inner-img {
  margin: 45px 0;
}

#service-page .txt-block h4.fs-26 {
  margin: 25px 0 20px;
}

/*------------------------------------------*/
/*  SIDEBAR
/*------------------------------------------*/ 

#sidebar {
  margin-right: 40px;
}

/*------------------------------------------*/
/*  SIDEBAR MENU
/*------------------------------------------*/ 

.sidebar-menu {
  padding: 40px;
}

.sidebar-menu h4 {
  margin-bottom: 15px;
}

.menu-list li {
  position: relative;
  padding: 15px 0;
  border-bottom: 1.5px solid var(--smoke);
  transition: all 400ms ease-in-out; 
}

.menu-list li:last-child {
  padding: 15px 0 0;
  border-bottom: none; 
}

.menu-list li h5 {
  color: #999;
  transition: all 400ms ease-in-out; 
}

.menu-list li:hover {
  border-color: var(--blue);
}

.menu-list li:hover h5 {
  padding-left: 10px;
}

.menu-list li:hover a {
  color: var(--blue)!important;
}

.menu-list li span {
  color: var(--navy);
  position: absolute;
  top: 12px;
  right: 0;
  transition: all 400ms ease-in-out; 
}

.menu-list li:hover span {
  color: var(--blue);
}

/*------------------------------------------*/
/*  SIDEBAR TIMETABLE
/*------------------------------------------*/ 

.sidebar-timetable {
  margin-top: 30px;
  padding: 40px;
}

.sidebar-timetable p {
  margin: 15px 0 22px;
}




/* ==========================================================================
  09. CONTENT
  ========================================================================== */

.ct-04 {
  position: relative;
  width: 100%;
  padding: 260px 0;
}

#timetable-page {
  padding-bottom: 200px;
}

/*------------------------------------------*/
/*  TEXT BLOCK
/*------------------------------------------*/ 

.txt-block.left-column {
  padding-right: 35px;
}

.txt-block.right-column {
  padding-left: 35px;
}

.ct-03-txt {
  padding: 0 65px;
}

.ct-06-wrapper {
  overflow: hidden;
  padding: 20px;
}

.ct-06-txt {
  padding: 0 30px 85px 40px;
}

/*------------------------------------------*/
/*  TEXT BLOCK TYPOGRAPHY
/*------------------------------------------*/ 

.txt-block h2,
.ct-06-txt h2 {
  margin-bottom: 22px;
}

.txt-block .btn {
  margin-top: 12px;
}

.txt-block .btn.mt-20 {
  margin-top: 20px;
}

.txt-block .btn.mt-25 {
  margin-top: 25px;
}

.txt-block .btn.mt-30 {
  margin-top: 30px;
}

.txt-block h5.fs-23,
.txt-block h5.fs-24 {
  line-height: 2;
}

.txt-block h5.fs-23 span,
.txt-block h5.fs-24 span {
  color: #777;
  margin-right: 6px;
}

.ct-03-txt h2 {
  margin-bottom: 25px;
}

.ct-03-txt .btn {
  margin-top: 10px;
}

.ct-05-txt {
  margin-bottom: 40px;
}

/*------------------------------------------*/
/*  CONTENT BOX
/*------------------------------------------*/

.cbox-1-wrapper {
  margin-top: 25px;
}

.cbox-2-wrapper {
  margin-top: 40px;
}

.cb-1a {
  margin-bottom: 10px;
}

.cbox-1 {
  display: flex;
  position: relative;
  flex-flow: row wrap;
  align-items: stretch!important;
  justify-content: flex-start;
}

.cbox-1 span {
  position: relative;
  top: 1px;
  right: 10px;
}

.cbox-1 [class*="flaticon-"]:before,
.cbox-1 [class*="flaticon-"]:after {   
  font-size: 0.85rem;
}

.cbox-1-txt {
  overflow: hidden;
  flex: 1;
  max-width: 100%;
}

.cbox-1 p {
  margin-bottom: 14px;
}

.cb-1a .cbox-1 p {
  margin-bottom: 12px;
}

.cbox-2 h5 {
  margin: 12px 0 13px;
}

.cbox-2 p {
  margin: 0;
}

/*------------------------------------------*/
/*  CONTENT BOX ICON
/*------------------------------------------*/

.cbox-3 {
  display: flex;
  position: relative;
  flex-flow: row wrap;
  align-items: stretch!important;
  justify-content: flex-start;
}

.cbox-3 .ico-wrap {
  position: relative;
  margin-right: 1.625rem;
}

.cbox-3-ico {
  text-align: center;
  position: relative;
  width: 2.5rem;
  height: 2.5rem;
  font-size: 1.125rem;
  line-height: 2.25rem;
  font-weight: 600;
  border: 3px solid transparent;
  border-radius: 100%;
  transition: all 450ms ease-in-out; 
}

.cbox-3-line {
  position: absolute;
  bottom: 14px;
  left: 50%;
  width: 2px;
  background-color: var(--smoke);
  height: calc(100% - 70px);
  transform: translateX(-50%);
}

.cbox-3:hover .cbox-3-ico {
  background-color: transparent;
}

.cbox-3:hover .cbox-3-ico.bg--theme { 
  color: var(--theme-color)!important; 
  border-color: var(--theme-color);
}

.cbox-3:hover .cbox-3-ico.bg--blue { 
  color: var(--blue)!important; 
  border-color: var(--blue);
}

.cbox-3:hover .cbox-3-ico.bg--candy { 
  color: var(--candy)!important; 
  border-color: var(--candy);
}

.cbox-3:hover .cbox-3-ico.bg--cobalt { 
  color: var(--cobalt)!important; 
  border-color: var(--cobalt);
}

.cbox-3:hover .cbox-3-ico.bg--cyan { 
  color: var(--cyan)!important; 
  border-color: var(--cyan);
}

.cbox-3:hover .cbox-3-ico.bg--denim { 
  color: var(--denim)!important; 
  border-color: var(--denim);
}

.cbox-3:hover .cbox-3-ico.bg--green { 
  color: var(--green)!important; 
  border-color: var(--green);
}

.cbox-3:hover .cbox-3-ico.bg--seablue { 
  color: var(--seablue)!important; 
  border-color: var(--seablue);
}

.cbox-3-txt {
  overflow: hidden;
  flex: 1;
  max-width: 100%;
  margin-bottom: 35px;
}

.cbox-3:last-child .cbox-3-txt {
  margin-bottom: 0;
}

.cbox-3-txt h5 {
  line-height: 1.4!important;
  margin-bottom: 15px!important;
}

.cbox-3-txt p { 
  margin-bottom: 0;
}

/*------------------------------------------*/
/*  CBOX #4
/*------------------------------------------*/ 

.cbox-4 {
  display: flex;
  position: relative;
  flex-flow: row wrap;
  align-items: stretch!important;
  justify-content: flex-start;
  padding: 22px 0;
  margin-right: 50px;
  border-top: 1px solid var(--silver);
}

.cbox-4.mt-10 {
  margin-top: 5px;
  border-top: none;
}

.cbox-4 .ico-wrap {
  position: relative;
  margin-right: 30px;
}

.cbox-4-ico span {
 position: relative;
 top: 4px;
}

.cbox-4-txt {
  overflow: hidden;
  flex: 1;
  max-width: 100%;
}

.cbox-4-txt p {
  margin: 0;
}

/*------------------------------------------*/
/*  CALL LINK 
/*------------------------------------------*/

.call-link {
  display: flex;
  position: relative;
  flex-flow: row wrap;
  align-items: stretch!important;
  justify-content: flex-start;
  border-left: 3px solid var(--blue);
  padding: 8px 0 8px 40px;
  margin: 25px 0 0 4px;
}

.call-link.theme-candy {
  border-left: 3px solid var(--candy);
}

.call-link.theme-cobalt {
  border-left: 3px solid var(--cobalt);
}

.call-link.theme-cyan {
  border-left: 3px solid var(--cyan);
}

.call-link.theme-teal {
  border-left: 3px solid var(--teal);
}

.call-link .ico-wrap {
  position: relative;
  top: 9px;
  right: 20px;
}

.call-link-txt {
  overflow: hidden;
  flex: 1;
  max-width: 100%;
  margin-top: -9px;
}

.call-link-txt span {
  color: var(--text-color);
  font-size: 0.9rem;
}

.call-link-txt p {
  font-family: var(--main-font);
  color: var(--navy);
  font-size: 1.2rem;
  line-height: 1;
  font-weight: 600;
  margin: 5px 0 0;
}

.theme-cobalt .call-link-txt p {
  color: var(--cobalt);
}

.color--white .call-link-txt p,
.color--white .call-link-txt span {
  color: var(--white);
}

/*------------------------------------------*/
/*  TEXT TABLE
/*------------------------------------------*/ 

.txt-table {
  margin-top: 25px;
  margin-right: 30px;
}

.txt-table .table {
  margin-bottom: 0;
}

.txt-table .table>:not(caption)>*>* {
  background-color: transparent!important;
}

.txt-table .table td,
.txt-table .table th {
  color: var(--header-color);
  font-size: 1.05rem;
  padding: 14px 0;
  border-top: none;
  border-bottom: 1px dashed #aaa;
}

.txt-table .table .last-tr td,
.txt-table .table .last-tr th {
  padding: 14px 0 0;
}

.txt-table .table .last-tr td,
.txt-table .table .last-tr th {
  border-bottom: none;
}

td.text-end {
  font-weight: 600;
}

.color--white .txt-table .table td {
  color: var(--white);
}

/*------------------------------------------*/
/*  ACCORDION  
/*------------------------------------------*/

.txt-block .accordion {
  margin-top: 40px;
 }

.txt-block .accordion-item {
  background-color: transparent;
  padding: 8px 0 10px;
  border: none;
  border-radius: 0 0;
}

.txt-block .accordion-thumb {
  position: relative;
  cursor: pointer;
  margin: 0;
  padding-bottom: 20px;
  border-bottom: 1px solid #ccc;
}

.txt-block .accordion-item .accordion-thumb:after,
.txt-block .accordion-item.is-active .accordion-thumb:after {
  color: #363636;
  font-family: Flaticon;
  position: absolute;
  font-weight: 300; 
}

.txt-block .theme-coal .accordion-item .accordion-thumb:after,
.txt-block .theme-coal .accordion-item.is-active .accordion-thumb:after {
  color: var(--coal);
}

.txt-block .accordion-item .accordion-thumb:after {
  content: "\f15d";
  font-size: 0.8rem;
  top: 1px;
  right: 0;
}

.txt-block .accordion-item.is-active .accordion-thumb:after {
  content: "\f15e";
}

.txt-block .accordion-panel {
  color: var(--text-color);
  margin: 0;
  padding: 18px 0 10px 0;
  display: none;
}

.txt-block .accordion-thumb h5 {
  color: var(--header-color);
  line-height: 1;
  padding-left: 3px;
  margin-bottom: 0;
}

.txt-block .theme-coal .accordion-thumb h5 {
  color: var(--coal);
}

/*------------------------------------------*/
/*  SIGNATURE
/*------------------------------------------*/ 

.signature {
  margin-top: 30px;
}

.signature img {
  width: auto;
  max-width: inherit;
  max-height: 48px;
}

.signature h6 {
  line-height: 1;
  margin: 20px 0 0 5px;
}

.signature span {
  font-family: var(--base-font);
  color: var(--text-color);
  font-size: 1.05rem;
  font-style: italic;
  line-height: 1;
  font-weight: 400;
}

/*------------------------------------------*/
/*  IMG BLOCK IMAGE
/*------------------------------------------*/ 

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

.ct-01 .img-block.right-column {
  margin-left: 25px;
}

.ct-01 .img-block.left-column {
  margin-right: 25px;
}

.ct-02 .img-block {
  margin: 0 12px;
}

#ct-05-1 {
  margin-top: -70px;
}

.ct-06-img {
  position: relative;
}

.half-img {
  width: 47%;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0; 
}

.half-img-left {
  width: 47%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0; 
}

.half-img img,
.half-img-left img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.half-img.r-20 img {
  border-radius: 20px 0 0 20px;
}

.half-img-left.r-20 img {
  border-radius: 0 20px 20px 0;
}




/* ==========================================================================
  10. TABS
  =========================================================================== */

.tabs-1 .tab-content {
  display: none;
}

.tabs-1 .tab-content.current {
  display: inherit;
}

.tabs-1 li {
  cursor: pointer;
  padding: 20px 0;
  border-bottom: 1.5px solid var(--silver);
  transition: all 400ms ease-in-out; 
}

.tabs-1 li h5 {
  color: #999;
  transition: all 400ms ease-in-out; 
}

/*------------------------------------------*/
/*  TAB LINK CURRENT
/*------------------------------------------*/

.tabs-1 li:hover,
.tabs-1 li.current,
.tabs-1 li.current:hover {
  border-color: var(--navy);
}

.tabs-1 li.current h5,
.tabs-1 li.current:hover h5 {
  color: var(--navy);
}

.tabs-1 li:hover h5 {
  color: var(--navy);
  padding-left: 10px;
}

/*------------------------------------------*/
/*  TAB IMAGES
/*------------------------------------------*/

.tabs-img {
  margin-left: 40px;
}




/* ==========================================================================
  11. LOOP TEXT
  ========================================================================== */

.loop_carousel_txt span.carousel_txt {
  font-size: 1.3125rem;
  line-height: 1;
  font-weight: 400;
  padding: 0 16px;
}

.loop_carousel_txt span.carousel_txt.fs-25 {
  font-size: 1.5625rem;
}

.loop_carousel_txt span.carousel_txt.fs-30 {
  font-size: 1.75rem;
}

.loop_carousel_txt span.carousel_txt.fs-60 {
  font-size: 8rem;
  font-weight: 600;
  letter-spacing: -1px;
  opacity: .1;
}

.loop_carousel_txt span.carousel_txt:last-child {
  padding: 0 0 0 16px;
}

.loop_carousel_txt span[class*="flaticon-"] {
  position: relative;
  top: 0.5px;
}

.loop_carousel_txt.fs-20 span[class*="flaticon-"] {
  top: 2.5px;
}

.fs-60 span[class*="flaticon-"] {
  position: relative;
  top: -20px;
  opacity: .1;
}

.fs-60 span[class*="flaticon-"]:before, 
.fs-60 span[class*="flaticon-"]:after {
  font-size: 3rem!important;
}




/* ==========================================================================
  12. STATISTIC
  =========================================================================== */

.statistic-1-wrapper {
  padding: 0 4%;
}

#stb-2-1 {
  padding-bottom: 40px;
  margin-bottom: 40px;
  border-bottom: 1px solid var(--silver);
}

.color--white #stb-2-1 {
  border-color: var(--tra-white);
}

#stb-3-1, #stb-3-2 {
  position: relative;
  padding: 100px 50px 40px;
}

/*------------------------------------------*/
/*  STATISTIC BLOCK NUMBER
/*------------------------------------------*/

h2.statistic-number {
  line-height: 1; 
  font-weight: 500;
  margin-bottom: 0;
}

.statistic-1-wrapper p {
  margin-top: 15px;
  margin-bottom: 0;
}

#stb-2-1 h5.fs-23, #stb-2-2 h5.fs-23 {
  line-height: 1.35;
  margin-bottom: -4px;
}


#stb-2-1 p, #stb-2-2 p {
  margin: 16px 0 0;
}

#stb-3-1 p, #stb-3-2 p {
  margin: 20px 0 0;
}

.stb-3-1-arrow {
  position: absolute;
  top: 30px;
  right: 35px;
}




/* ==========================================================================
  13. TESTIMONIALS
  =========================================================================== */

.reviews-3 {
  padding-bottom: 85px;
}

/*------------------------------------------*/
/*  TESTIMONIAL
/*------------------------------------------*/ 

.review-1,
.review-2 { 
  padding: 35px;
  border: 1px solid var(--silver);
  margin: 0 12px 30px;
}

.review-item { 
  position: relative;
  width: 33.33%;
  padding: 0 12px;
  margin-bottom: 25px;                           
}

.review-3 { 
  position: relative;
  padding: 40px 35px 30px;  
  border: 1.5px solid var(--smoke);                        
}

.review-1.bg--ghost,
.review-2.bg--ghost,
.review-3.bg--ghost { 
  border-color: rgba(231, 231, 231, .8);                        
}

.review-1.block--shadow,
.review-2.block--shadow,
.review-3.block--shadow { 
  border-color: var(--smoke);             
}

.reviews-4-wrapper {
  padding: 0 20px;
}

.reviews-4-txt {
  margin-left: 25px;
}

.reviews-4-txt p {
  margin: 20px 0 0;
}

.reviews-4-img {
  position: relative;
  margin-right: 5px;
}

.r4-data {
  display: inline-block;
  position: absolute;
  left: 20px;
  bottom: 22px;
  background-color: var(--white);
  padding: 15px 20px 12px;
}

.r4-data p {
  margin: 0;
}

/*------------------------------------------*/
/*  TESTIMONIAL AVATAR
/*------------------------------------------*/ 

.review-2 .author-data,
.review-3 .author-data {
  margin-bottom: 20px;
}

.review-avatar {
  margin: 0 auto; 
  float: left;
}

.review-avatar img,
.owl-item .review-avatar img {
  width: 58px;
  height: 58px;
  border-radius: 100%;
}

.reviews-2 .owl-item .review-avatar img {
  width: 55px;
  height: 55px;
}

/*------------------------------------------*/
/*  TESTIMONIAL AUTHOR
/*------------------------------------------*/ 

.review-1 h6 {
  margin-bottom: 12px;
}

.review-author {
  position: relative;
  display: inline-block;
  text-align: left;
  margin-top: 5px;
  padding: 0 0 0 20px;
}

.review-author p {
  color: var(--header-color);
  font-size: 1.05rem;
  line-height: 1;
  font-weight: 600;
  margin-bottom: 8px;
}

.theme-coal .review-author p {
  color: var(--coal);
}

.review-author span {
  display: block;
  font-size: 1rem;
  line-height: 1;
  font-weight: 500;
  margin-bottom: 0;
}

.review-txt p {
  font-size: 1rem;
  margin-bottom: 20px;
}

/*------------------------------------------*/
/*  TESTIMONIAL RATING
/*------------------------------------------*/ 

.review-1 .star-rating {
  margin-bottom: 8px;
}

.reviews-section .star-rating.ico-15 [class^="flaticon-"]:before,
.reviews-section .star-rating.ico-15 [class^="flaticon-"]:after {
  font-size: 0.9rem;
}

.reviews-section .star-rating.ico-20 [class^="flaticon-"]:before,
.reviews-section .star-rating.ico-20 [class^="flaticon-"]:after {
  font-size: 1.025rem;
}




/* ==========================================================================
  14. GALLERY
  ========================================================================== */

.gallery-1 .col {
  padding: 0 10px;
}

.gallery-image .item-overlay {
  background: rgba(35, 35, 35, .25);
}

/*------------------------------------------*/
/*  IMAGE DESCRIPTION
/*------------------------------------------*/

.image-data {
  text-align: center;
  position: absolute;
  bottom: 30px;
  left: 0;
  z-index: 20;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: all 400ms ease-in-out;
}

.gallery-link {
  width: 100%;
  position: absolute;
  top: 54%;
  transform: translateY(-50%);
}

/*------------------------------------------*/
/*  Image Hover Effect 
/*------------------------------------------*/ 

.gallery-image:hover img {
  transform: scale(1.1);
}

.gallery-image:hover .image-data,
.gallery-image:hover .item-overlay {
  opacity: 1; 
  -moz-opacity: 1; 
  bottom: 0;
}




/* ==========================================================================
  15. DOCTORS
  =========================================================================== */

.doctor-card {
  overflow: hidden;
}

.doctors-2 .doctor-card {
  margin-bottom: 50px;
}

.doctors-3 .doctor-card {
  margin-bottom: 30px;
}

/*------------------------------------------*/
/*  DOCTOR PHOTO
/*------------------------------------------*/

.doctor-photo {
  position: relative;
  text-align: center;
  overflow: hidden;
}

.doctor-card .item-overlay {
  background: rgba(20, 20, 20, .15);
}

/*------------------------------------------*/
/*  DOCTOR TYPOGRAPHY
/*------------------------------------------*/

.doctor-data {
  margin-top: 30px;
}

.doctors-3 .doctor-data {
  padding: 30px 20px 25px;
  margin: 0;
}

.doctor-data p {
  margin: 8px 0 0;
}

/*------------------------------------------*/
/*  DOCTOR RATING
/*------------------------------------------*/

.doctor-card .star-rating {
  font-size: 0.825em;
  line-height: 14px;
  vertical-align: inherit;
  margin-bottom: 14px;
}

.doctor-card .star-rating span {
  position: relative;
  color: var(--yellow);
  top: 1.5px;
}

.doctor-card [class^="flaticon-"]:before,
.doctor-card[class^="flaticon-"]:after {
  font-size: 0.85rem;
}

/*------------------------------------------*/
/*  DOCTOR SOCIAL LINKS
/*------------------------------------------*/

.tm-social ul {
  width: 100%;
  display: inline-block; 
  padding-left: 0;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 20;
  zoom: 1;
  opacity: 0;
  transition: all 400ms ease-in-out;
}

.tm-social li {
  width: auto!important;
  display: inline-block!important;
  vertical-align: top;
  clear: none !important;
  margin: 0 8px;
  padding: 0;
}

.tm-social span {
  margin-bottom: 0;
}

.tm-social.ico-25 [class*="flaticon-"]:before, 
.tm-social.ico-25 [class*="flaticon-"]:after { font-size: 1.375rem; }

/*------------------------------------------*/
/*  DOCTOR CARD HOVER
/*------------------------------------------*/

.doctor-card:hover img {
  transform: scale(1.05);
}

.doctor-card:hover .item-overlay {
  opacity: 1; 
  -moz-opacity: 1; 
}

.doctor-card:hover .tm-social ul {
  bottom: 6%;
  opacity: 1; 
  -moz-opacity: 1; 
}

.doctors-section .more-btn {
  text-align: center;
  margin-top: 60px;
}




/* ==========================================================================
  16. DOCTOR DETAILS
  =========================================================================== */

.doctor-bio {
  margin: 10px 0 0 85px;
}

/*------------------------------------------*/
/*  DOCTOR PROFILE TYPOGRAPHY
/*------------------------------------------*/

.doctor-bio h2 {
  margin-bottom: 16px;
}

.doctor-bio h5 {
  font-weight: 400;
  margin-bottom: 30px;
}

.doctor-bio h5.fs-26 {
  margin: 40px 0 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--smoke);
}

.edu-data,
.jop-position {
  margin-bottom: 20px;
}

.edu-data h6 {
  margin-bottom: 12px;
}

.edu-data p {
  margin-bottom: 0;
}

.edu-data .cbox-1 p {
  margin-bottom: 6px;
}

.jop-position h6 {
  margin-bottom: 12px;
}

.jop-position p {
  margin-bottom: 14px;
}

.jop-position .cbox-1 p {
  margin-bottom: 8px;
}

/*------------------------------------------*/
/*  DOCTOR DATA LIST
/*------------------------------------------*/

.doctor-data-list {
  margin: 35px 0 40px 15px;
  padding-bottom: 40px;
  border-bottom: 1px solid var(--silver);
}

#ddl-1-1, #ddl-1-2, #ddl-1-3, #ddl-1-4 {
  margin-bottom: 20px;
}

.doctor-data-list p {
  font-size: 0.95rem;
  line-height: 1;
  margin-bottom: 8px;
}

.doctor-data-list span {
  font-size: 1.05rem;
  color: var(--navy);
  line-height: 1;
  font-weight: 600;
}

.doctor-data-list span a:hover {
  text-decoration: underline;
}

/*------------------------------------------*/
/*  DOCTOR DATA BUTTONS
/*------------------------------------------*/

.doctor-data-links .btn {
  font-size: 0.95rem;
  padding: 0.9rem 1.75rem;
}

.doctor-data-links .btn:first-child {
  margin-right: 15px;
}




/* ==========================================================================
  17. BRANDS
  =========================================================================== */

.brands-3-wrapper {
  padding: 0 10%;
}

.brands-title {
  text-align: center;
  margin-bottom: 40px;
}

.brands-title p {
  margin-bottom: 0;
}

.brands-title h5 {
  margin-bottom: 50px;
}

.brands-title p span {
  color: var(--header-color);
  font-weight: 600;
  padding-bottom: 6px;
  border-bottom: 2.5px solid var(--header-color);
}

.loop_carousel_left {
  overflow: hidden;
}

.brands-2 .loop_carousel_left {
  margin-left: 25px;
}

.brands-4-wrapper {
  padding: 0 40px;
}

.brands-4 .col {
  padding: 0;
}

#brand-4-1, 
#brand-4-2, 
#brand-4-3 { border-bottom: 1px solid var(--silver); border-right: 1px solid var(--silver); }

#brand-4-4 { border-bottom: 1px solid var(--silver); }

#brand-4-5, 
#brand-4-6, 
#brand-4-7 { border-right: 1px solid var(--silver); }

/*------------------------------------------*/
/*  BRANDS LOGO IMAGE
/*------------------------------------------*/ 

.brands-1 .loop_carousel_left img {
  padding: 0 22px;
  height: 4rem;
  transition: all 400ms ease-in-out;
}

.brands-2 .loop_carousel_left img {
  padding: 0 20px;
  height: 4rem;
  transition: all 400ms ease-in-out;
}

.brands-1 .loop_carousel_left.o-4 img,
.brands-2 .loop_carousel_left.o-4 img {
  opacity: .4;
}

.brands-3-wrapper .brand-logo {
  padding: 0 12px;
}

.brands-4 .brand-logo {
  text-align: center;
  padding: 40px 25px;
}

.brands-4 .brand-logo img {
  width: auto;
  max-width: inherit;
  max-height: 80px;
}

.brands-1 .loop_carousel_left.o-4 img:hover,
.brands-2 .loop_carousel_left.o-4 img:hover {
  opacity: .95;
}

.brands-1 .loop_carousel_left span:last-child img {
  padding: 0 0 0 22px;
}

.brands-2 .loop_carousel_left span:last-child img {
  padding: 0 0 0 20px;
}




/* ==========================================================================
  18. PRICING
  =========================================================================== */

.pricing-1-wrapper {
  padding: 80px;
}

.pricing-1-wrapper.m-3 {
  margin: 0 3%;
}

.pricing-2-wrapper.p-3 {
  padding: 0 3%;
}

/*------------------------------------------*/
/*  PRICE TABLE
/*------------------------------------------*/

.pricing-2-table { 
  padding: 55px 60px; 
  border: 1.5px solid var(--smoke);
  margin-bottom: 30px;
}

.pricing-3-table { 
  background-color: var(--white);
  padding: 40px 35px; 
  border: 1px solid var(--smoke);
}

/*------------------------------------------*/
/*  PRICE TABLE TYPOGRAPHY
/*------------------------------------------*/

img.pricing-logo {
  width: auto;
  max-width: inherit;
  max-height: 55px;
  margin-bottom: 25px;
}

.pricing-2-table h4 {
  margin-bottom: 15px;
}

.pricing-1-txt p {
  margin: 20px 4% 25px 0;
}

.pricing-1-txt .btn,
.pricing-2-table .btn {
  margin-top: 25px;
}

/*------------------------------------------*/
/*  PRICE
/*------------------------------------------*/

.price {
  margin-top: 25px;
}

.price span {
  font-family: var(--main-font);
  font-size: 3.5rem;
  line-height: 1;
  font-weight: 600;
  letter-spacing: -1px;
} 

.pricing-3-table .price span {
  font-size: 3rem;
  font-weight: 500;
} 

.pricing-3-table .price p {
  margin-top: 15px;
}

/*------------------------------------------*/
/*  DOLLAR SIGN
/*------------------------------------------*/

.price sup {
  font-family: var(--main-font);
  font-size: 2.5rem;
  font-weight: 600;
  top: -5px;
  right: 2px;
  letter-spacing: -1px;
}

.pricing-3-table .price sup {
  font-size: 2.15rem;
  font-weight: 500;
}

/*------------------------------------------*/
/*  Validity
/*------------------------------------------*/

.price sup.validity {
  font-family: var(--main-font);
  font-size: 1.55rem;
  font-weight: 400;
  letter-spacing: -0.5px;
  top: -3px;
  left: 0;
}

.pricing-3-table .price sup.validity {
  font-size: 1.45rem;
}

/*------------------------------------------*/
/*  PRICING TABLE HORIZONTAL LINE
/*------------------------------------------*/

.pricing-3-table hr {
  margin-top: 22px;
  margin-bottom: 20px;
}


/*------------------------------------------*/
/*  PRICING FEATURES
/*------------------------------------------*/

.pricing-1-options p.fs-17 {
  font-weight: 600;
  margin: 0 0 15px;
}

.pricing-2-table p.fs-17 {
  font-weight: 600;
  margin: 25px 0 15px;
}

.pricing-2-table .cbox-1-txt p {
  margin-bottom: 8px;
}

.pricing-features li {
  padding: 10px 8px;
}

.pricing-features li p {
  line-height: 1;
  font-weight: 500;
  margin-bottom: 0;
}

.pricing-features.ico-10 li p span {
  position: relative;
  top: 0;
  right: 7px;
}

.pricing-features.ico--blue span { color: var(--blue); }
.pricing-features.ico--green span { color: var(--green); }

/*------------------------------------------*/
/*  PRICING TABLE BUTTON
/*------------------------------------------*/

.pt-btn {
  display: block;
  width: 100%;
  margin-top: 20px;
}




/* ==========================================================================
  19. BANNER
  =========================================================================== */

.banner-1 {
  padding-top: 35px;
  padding-bottom: 35px;
}

.banner-2 {
  text-align: center;
  padding-top: 120px;
  padding-bottom: 130px;
} 

.banner-3 {
  padding-top: 300px;
  padding-bottom: 100px;
}

.banner-4-wrapper {
  padding: 0 85px;
} 

.banner-4 {
  margin-top: 60px;
}

.banner-4-txt {
  padding-right: 10%;
}

.banner-5 {
  text-align: center;
  padding-top: 22px;
  padding-bottom: 22px;
}

/*------------------------------------------*/
/*  BANNER TYPOGRAPHY
/*------------------------------------------*/

.banner-2-txt h2 {
  margin-top: 35px;
}

.banner-2-txt p {
  margin: 24px 0 35px;
}

.banner-4-txt p {
  margin: 25px 0 30px;
}

.banner-section .btns-group .btn {
  margin: 0 7px;
}

/*------------------------------------------*/
/*  BANNER IMAGE
/*------------------------------------------*/

.banner-4-img {
  margin: -60px 0 0 -40px;
}




/* ==========================================================================
  20. FAQs
  =========================================================================== */

.faqs-2 .title-02 p {
  margin: 20px 0 0;
}

/*------------------------------------------*/
/*  FAQs-3 TITLE
/*------------------------------------------*/

.faq-1-title {
  padding-right: 12%;
  margin-top: 20px;
}

.faq-1-title p {
  margin-top: 20px;
  margin-bottom: 28px;
}

/*------------------------------------------*/
/*  FAQs TYPOGRAPHY
/*------------------------------------------*/

.faqs-3 .accordion-item p {
  color: var(--text-color);
}

/*------------------------------------------*/
/*  FAQS ACCORDION  
/*------------------------------------------*/

.faqs-section .accordion-item {
  background-color: transparent!important;
  border: none;
  border-bottom: 1px solid var(--silver);
}

.faqs-4.faqs-section .accordion-item {
  padding: 15px 40px;
  background-color: var(--white)!important;
  border-radius: 20px!important;
  margin-bottom: 25px;
  box-shadow: 0 1px 3px 0 var(--tra-black);
}

.faqs-4.faqs-section .accordion-item.acc-last-item {
  margin-bottom: 0;
}

/*------------------------------------------*/
/*  Question
/*------------------------------------------*/

.faqs-section .accordion-thumb {
  margin: 0;
  padding: 25px 0;
  cursor: pointer;
  position: relative;
}

.faqs-2.faqs-section .accordion-thumb {
  padding: 32px 0;
  transition: all 400ms ease-in-out; 
}

.faqs-2.faqs-section .is-active .accordion-thumb {
  padding: 32px 0 20px;
}

.faqs-4.faqs-section .accordion-thumb {
  padding: 22px 0;
}

.faqs-4.faqs-section .is-active .accordion-thumb {
  padding: 30px 0 15px;
}

.faqs-section .accordion-item .accordion-thumb:after,
.faqs-section .accordion-item.is-active .accordion-thumb:after {
  font-family: Flaticon;
  color: var(--header-color);
  font-size: 0.915rem;
  font-weight: 300; 
  content: "\f15d";
  position: absolute;
  top: 24px;
  right: 0;
}

.faqs-2.faqs-section .accordion-item .accordion-thumb:after {
  top: 46px;
}

.faqs-2.faqs-section .accordion-item.is-active .accordion-thumb:after {
  top: 47px;
}

.faqs-4.faqs-section .accordion-item .accordion-thumb:after {
  top: 15px;
  display: inline-block;
  text-align: center;
  width: 40px;
  height: 40px;
  color: var(--text-color);
  font-size: 0.8rem;
  line-height: 38px;
  font-weight: 500;
  border: 1.35px solid var(--silver);
  border-radius: 100%;
  transition: all 400ms ease-in-out; 
}

.faqs-4.faqs-section .accordion-item.is-active .accordion-thumb:after {
  top: 25px;
  color: var(--white);
  background-color: var(--seablue);
  border-color: var(--seablue);
}

.faqs-4.faqs-section .theme-coal .accordion-item.is-active .accordion-thumb:after {
  background-color: var(--coal);
  border-color: var(--coal);
}

.faqs-4.faqs-section .theme-cyan .accordion-item.is-active .accordion-thumb:after {
  background-color: var(--cyan);
  border-color: var(--cyan);
}

.faqs-4.faqs-section .theme-green .accordion-item.is-active .accordion-thumb:after {
  background-color: var(--green);
  border-color: var(--green);
}

.faqs-section .accordion-item.is-active .accordion-thumb:after {
  content: "\f15e";
}

/*------------------------------------------*/
/*  Answer
/*------------------------------------------*/

.faqs-section .accordion-panel {
  margin: 0;
  padding: 0 0 10px 0;
  display: none;
}

.faqs-section .accordion-panel p {
  color: var(--text-color);
}

.faqs-section .accordion-thumb h5,
.faqs-section .accordion-thumb h4 {
  line-height: 1;
  margin-bottom: 0;
}

.faqs-section .accordion-thumb h5 span {
  position: relative;
  display: inline-block;
  text-align: center;
  width: 56px;
  height: 56px;
  margin-right: 100px;
  color: var(--text-color);
  font-size: 1.3rem;
  line-height: 54px;
  font-weight: 500;
  border: 2px solid var(--silver);
  border-radius: 100%;
  transition: all 400ms ease-in-out; 
}

.faqs-section .is-active .accordion-thumb h5 span {
  color: var(--white);
  background-color: var(--seablue);
  border: 2px solid var(--seablue);
}

.faqs-section .theme-blue .is-active .accordion-thumb h5 span {
  color: var(--white);
  background-color: var(--blue);
  border: 2px solid var(--blue);
}

.faqs-section .accordion-thumb p {
  color: var(--header-color);
  line-height: 1;
  font-weight: 600;
  margin-bottom: 0;
}

.faqs-2.faqs-section .accordion-panel p {
 margin-left: 160px;
 margin-right: 60px;
}

.faqs-4.faqs-section .accordion-panel p {
  margin-right: 10%;
}

/*------------------------------------------*/
/*  MORE QUESTIONS BUTTON
/*------------------------------------------*/ 

.more-questions {
  text-align: center;
  margin-top: 80px;
}




/* ==========================================================================
  21. NEWSLETTER
  =========================================================================== */

.newsletter-txt p {
  margin: 12px 20% 0 0;
}

.newsletter-section .newsletter-form {
  margin: 15px 0 0 50px;
}

/*------------------------------------------*/
/*  Newsletter Form Input
/*------------------------------------------*/

.input-group {
  background-color: var(--white);
  border-radius: 36px;
  transition: all 400ms ease-in-out; 
  border: 1.5px solid var(--smoke);
}

.newsletter-section .form-control {
  height: 60px;
  background-color: transparent;
  font-size: 1rem;
  color: #20265b;
  font-weight: 400;
  padding: 0 30px;  
  margin-right: 0px;
  box-shadow: none;
  border: none;
  transition: all 400ms ease-in-out; 
}

.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

/*------------------------------------------*/
/*  Newsletter Form Input Focus
/*------------------------------------------*/

.newsletter-section .form-control:focus {
  outline: 0;
  box-shadow: none;
}

/*------------------------------------------*/
/*  Newsletter Form Input Placeholder
/*------------------------------------------*/

.newsletter-section .form-control::-moz-placeholder { color: #20265b; } 
.newsletter-section .form-control:-ms-input-placeholder { color: #20265b; } 
.newsletter-section .form-control::-webkit-input-placeholder { color: #20265b; } 

/*------------------------------------------*/
/*  Newsletter Form Button
/*------------------------------------------*/

.newsletter-section .btn {
  display: block; 
  position: relative;
  width: 100%!important;
  height: 60px;
  font-size: 0.975rem;
  padding: 0.7rem 2.75rem;
  border-radius: 36px;
}

/*------------------------------------------*/
/*  Newsletter Form Notification
/*------------------------------------------*/

.newsletter-section .form-notification {
  color: #3eb1ff;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1;
  margin-top: 15px;
  margin-left: 5px;
}

.newsletter-section .text-center .form-notification {
  margin-left: 0;
}

.newsletter-section .form-notification.error {
  color: #fc2f4b;
}

.newsletter-section .form-notification.valid,
.newsletter-section .newsletter-form.valid {
  color: #0fbc49;
}




/* ==========================================================================
  22. BLOG
  ========================================================================== */

#blog-page {
  padding-bottom: 30px;
}

.blog-1 .blog-post {
  padding: 0 10px;
}

#blog-page .blog-post {
  margin-bottom: 70px;
}

/*------------------------------------------*/
/*  POST META LIST
/*------------------------------------------*/

.post-meta-list li {
  width: auto!important;
  display: inline-block!important;
  vertical-align: top;
  clear: none!important;
  margin-left: 1px;
}

.post-meta-list li:first-child {
  margin-left: 0;
}

.post-meta-list li:not(:last-child):after {
  font-family: Flaticon;
  font-size: 1rem;   
  line-height: 0.5rem!important;
  content: "\f173";
  position: relative;
  top: -4.5px;
  left: 3px;
}

.post-meta-list li p {
  font-family: var(--alt-font);
  font-size: 0.925rem;
  line-height: 1;
  font-weight: 400;
  float: left;
  line-height: 1;
  margin: 0!important;
}

/*------------------------------------------*/
/*  BLOG POST TYPOHRAPHY
/*------------------------------------------*/ 

.blog-1 .post-link {
  line-height: 1.3;
  margin-bottom: 15px;
}

.post-link.ico-15 [class*="flaticon-"]:before, 
.post-link.ico-15 [class*="flaticon-"]:after { font-size: 0.85rem; }

/*------------------------------------------*/
/*  BLOG POST IMAGE
/*------------------------------------------*/ 

.blog-post-img {
  position: relative;
  margin-bottom: 25px;
}

.blog-post .item-overlay {
  background: rgba(10, 10, 10, .1);
}

.blog-post:hover img {
  transform: scale(1.05);
  -ms-transform: scale(1.05);
  -webkit-transform: scale(1.05);
  -o-transform: scale(1.05);
  -moz-transform: scale(1.05);
}

.blog-post:hover .item-overlay {
  opacity: 1; 
  -moz-opacity: 1; 
  bottom: 0;
}




/* ==========================================================================
  23. SINGLE BLOG POST
  ========================================================================== */

.post-content {
  padding: 0 5%;
}

/*------------------------------------------*/
/*  SINGLE POST TITLE
/*------------------------------------------*/

.single-post-title {
  text-align: center;
  margin-bottom: 50px;
}

/*------------------------------------------*/
/*  SINGLE POST DATA LIST
/*------------------------------------------*/ 

.post-data-list {
  position: relative;
  margin-top: 35px;
}

.post-data-list li {
  width: auto!important;
  display: inline-block!important;
  vertical-align: top;
  clear: none !important;
  margin-left: 5px;
}

.post-data-list li:first-child {
  margin-left: 0;
}

.post-data-list li:not(:last-child):after {
  font-family: Flaticon;
  font-size: 1.2rem;
  line-height: 1.2rem!important;
  content: "\f173";
  position: relative;
  top: -0.5px;
  left: 6px;
}

.post-data-list li p {
  font-size: 1.15rem;
  float: left;
  line-height: 1;
  margin-bottom: 0;
}

.post-data-list li p span {
  color: var(--header-color);
  font-weight: 500;
}

/*------------------------------------------*/
/*  SINGLE POST TYPOGRAPHY
/*------------------------------------------*/

.single-post-txt h5.fs-26 {
  margin: 30px 0;
}

.single-post-txt p span {
  color: var(--header-color);
  font-weight: 600;
}

.single-post-txt p a {
  color: var(--header-color);
  font-weight: 600;
  text-decoration: underline;
}

/*------------------------------------------*/
/*  SINGLE POST IMAGE
/*------------------------------------------*/

.single-post-img {
  margin-bottom: 50px;
}

.post-inner-img {
  text-align: center;
  margin: 50px 0;
}

/*------------------------------------------*/
/*  SINGLE POST SHARE LINKS
/*------------------------------------------*/

.post-share-links {
  padding-top: 80px;
  margin: 80px 0;
  border-top: 1px solid var(--silver);
}

/*------------------------------------------*/
/*  SINGLE POST TAGS
/*-----------------------------------------*/

.post-tags-list span {
  color: #555;
  background-color: #f5f5f9;
  font-size: 0.75rem;
  line-height: 1;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  padding: 11px 22px 10px;
  border-radius: 6px;
  margin-right: 5px;
}

/*------------------------------------------*/
/*  SINGLE POST SHARE ICONS
/*-----------------------------------------*/

.post-share-list {
  display: inline-block; 
  margin-top: 7px;
}

.post-share-list li {
  width: auto !important;
  display: inline-block!important;
  vertical-align: top;
  clear: none !important;
  padding: 0;
}

.post-share-list a.share-ico span {
  color: var(--text-color);
  margin-left: 18px;
  transition: all 450ms ease-in-out;
}

.post-share-list a.share-ico span:hover {
  color: var(--header-color);
}

/*------------------------------------------*/
/*  SINGLE POST NAVIGATIONS
/*-----------------------------------------*/

.post-nav-links1 .btn {
  font-size: 0.8rem;
  padding: 0.85rem 1.6rem 0.75rem;
  font-weight: 600;
}

.post-nav-btn .btn:last-child {
  margin-left: 12px;
}




/* ==========================================================================
  24. BOOKING
  ========================================================================== */

.txt-block .booking-form-wrapper {
  margin-top: 35px;
}

.txt-block .booking-form .col-md-6,
.txt-block .booking-form .col-md-12 {
  padding: 0 8px;
}

.booking-section .txt-block h2 {
  margin-bottom: 16px;
}

/*------------------------------------------*/
/*  BOOKING FORM
/*------------------------------------------*/

.booking-form .form-control,
.booking-form .form-select {
  height: 60px;
  background-color: var(--white);
  border: 1.5px solid var(--silver);
  box-shadow: 0 0 0 0;
  color: #5f5842;
  font-size: 1rem;
  line-height: 1;
  font-weight: 400;
  padding: 0 20px;
  margin-bottom: 20px;
  border-radius: 10px;
  transition: all 300ms ease-in-out;
}

.booking-form .form-select {
  color: #20265b;
}

.booking-form .form-select.valid {
  color: #20265b!important;
}

/*------------------------------------------*/
/*  Booking Form Placeholder
/*------------------------------------------*/

.booking-form .form-control::-moz-placeholder { color: #20265b; } 
.booking-form .form-control:-ms-input-placeholder { color: #20265b; } 
.booking-form .form-control::-webkit-input-placeholder { color: #20265b; } 

/*------------------------------------------*/
/*  Booking Form Input Focus
/*------------------------------------------*/

.booking-form .form-control:focus {
  outline: 0px none;
  box-shadow: none;
  background-color: var(--white);
  border-color: var(--seablue);
}

.booking-form.theme-blue .form-control:focus {
  border-color: var(--blue);
}

.booking-form.theme-cyan .form-control:focus {
  border-color: var(--cyan);
}

/*------------------------------------------*/
/*  Booking Form Button
/*------------------------------------------*/

.booking-form .btn {
  margin-top: 15px;
}

/*------------------------------------------*/
/*  Booking Form Message
/*------------------------------------------*/

.booking-form-msg {
  width: 100%!important;
  display: block;
  margin-top: 20px;
  padding-left: 0;
}

.booking-form .loading {
  color: #00b2e4;
  font-size: 1.0625rem;
  line-height: 1;
  font-weight: 500;
  padding-left: 15px;
}

.booking-form .error {
  color: #e74c3c;
  font-size: 0.85rem;
  line-height: 1;
  font-weight: 400;
  margin-bottom: 10px;
  padding-left: 10px;
}




/* ==========================================================================
  25. CONTACT
  ========================================================================== */

.contact-info p.fs-17 {
  font-size: 1rem;
  margin: 20px 5% 30px 0;
}

/*------------------------------------------*/
/*  CONTACT BOX TYPOGRAPHY
/*------------------------------------------*/

.cnt_b h5 {
  margin-bottom: 25px;
}

.contact-form-wrapper h5 {
  margin-bottom: 35px;
}

.cnt_b p {
  font-size: 1.05rem;
  margin-bottom: 6px;
}

.cnt_b p a {
  color: var(--navy);
  font-weight: 500;
}

.cnt_b p span {
  position: relative;
  top: 2px;
  right: 6px;
}

/*------------------------------------------*/
/*  CONTACT FORM
/*------------------------------------------*/

.contact-form-wrapper {
  padding: 45px 15px 0 30px;
}

.contact-form .col-md-6,
.contact-form .col-md-12 {
  padding: 0 10px;
}

/*------------------------------------------*/
/*  CONTACT FORM INPUT
/*------------------------------------------*/

.contact-form .form-control,
.contact-form .form-select {
  height: 60px;
  background-color: var(--white);
  border: 1.5px solid var(--silver);
  box-shadow: 0 0 0 0;
  color: #20265b;
  font-size: 1rem;
  line-height: 1;
  font-weight: 400;
  padding: 0 20px;
  margin-bottom: 24px;
  border-radius: 10px;
  transition: all 300ms ease-in-out;
}

.contact-form .form-select {
  color: #20265b;
}

.contact-form .form-select.valid {
  color: #20265b!important;
}

/*------------------------------------------*/
/*  Contact Form Textarea
/*------------------------------------------*/

.contact-form textarea { min-height: 240px; }
.contact-form textarea.form-control { 
  padding: 20px;
}

/*------------------------------------------*/
/*  Contact Form Button
/*------------------------------------------*/

.contact-form .form-btn { 
  margin-top: 10px;
}

/*------------------------------------------*/
/*  Contact Form Placeholder
/*------------------------------------------*/

.contact-form .form-control::-moz-placeholder { color: #20265b; } 
.contact-form .form-control:-ms-input-placeholder { color: #20265b; } 
.contact-form .form-control::-webkit-input-placeholder { color: #20265b; } 

/*------------------------------------------*/
/*  Contact Form Input Focus
/*------------------------------------------*/

.contact-form .form-control:focus {
  outline: 0px none;
  box-shadow: none;
  background-color: var(--white);
  border-color: var(--seablue);
}

/*------------------------------------------*/
/*  Contact Form Message
/*------------------------------------------*/

.contact-form-msg {
  width: 100%!important;
  display: block;
  margin-top: 20px;
  padding-left: 0;
}

.contact-form .loading {
  color: #00b2e4;
  font-size: 1.0625rem;
  line-height: 1;
  font-weight: 500;
  padding-left: 15px;
}

.contact-form  .error {
  color: #e74c3c;
  font-size: 0.85rem;
  line-height: 1;
  font-weight: 400;
  margin-bottom: 10px;
  padding-left: 10px;
}

/*------------------------------------------*/
/*  LOCATION PREVIEW
/*------------------------------------------*/ 

.location-img {
  position: relative;
  margin-bottom: 25px;
}

.location-img .item-overlay {
  background: rgba(10, 10, 10, .15);
}

.location-card:hover img {
  transform: scale(1.05);
}

.blog-post:hover .item-overlay {
  opacity: 1; 
  -moz-opacity: 1; 
  bottom: 0;
}

/*------------------------------------------*/
/*  LOCATION TYPOGRAPHY
/*------------------------------------------*/ 

.location-card h5 {
  margin-bottom: 12px;
}

.location-card p {
  margin-bottom: 2px;
}

.location-data p span {
  position: relative;
  top: 3px;
}

p.map-link a:hover {
  color: var(--navy);
}





/* ==========================================================================
  26. GOOGLE MAP
  =========================================================================== */

.google-map {
  position: relative;
  height: 0;
  overflow: hidden;
}

.gmap-1 .google-map {
  padding: 0px 0px 82%;
  margin-right: 10px;
}

.gmap-1 .google-map.left-column {
  margin-right: 10px;
}

.gmap-1 .google-map.right-column {
  margin-left: 10px;
}

.google-map iframe, 
.google-map object, 
.google-map embed {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  border:0;
}




/* ==========================================================================
  27. FOOTER
  ========================================================================== */

.footer {
  padding-bottom: 50px;
}

.footer-info,
.footer-links,
.footer-contacts,
.footer-location,
.footer-emergency,
.footer-working-hours {
  margin-bottom: 40px;
}

.footer-1 .footer-location,
.footer-1 .footer-contacts,
.footer-2 .footer-location {
  padding-left: 13%;
}

.footer-3 .footer-links,
.footer-1 .footer-working-hours,
.footer-2 .footer-working-hours {
  padding-left: 5%;
}

.footer-3 .fl-1,
.footer-3 .fl-3,
.footer-3 .fl-4 {
  padding-left: 10%;
}

.footer-title {
  margin-bottom: 70px;
}

/*------------------------------------------*/
/*  FOOTER LOGO
/*------------------------------------------*/

img.footer-logo {
  width: auto;
  max-width: inherit;
  max-height: 42px;
  margin-bottom: 20px;
}

/*------------------------------------------*/
/*  FOOTER TYPOGRAPHY
/*------------------------------------------*/

.bg--black.footer h6 {
  color: var(--white);
}

.footer h6 {
  font-size: 1.1rem;
  line-height: 1;
  margin-bottom: 20px;
}

.footer-emergency h5 {
  margin-bottom: 15px;
}

.footer a {
  color: var(--text-color);
}

.bg--black.footer p,
.bg--black.footer a {
  color: #dee7f4;
}

.footer a.color--blue {
  color: var(--blue);
}

.footer a.color--seablue {
  color: var(--seablue);
}

.footer a.color--skyblue {
  color: var(--sky-blue);
}

.footer-info p,
.footer-emergency p {
  margin-bottom: 0;
}

.footer-location p,
.footer-contacts p,
.footer-working-hours p {
  margin-bottom: 5px;
}

.footer-location p.mb-10 {
  margin-bottom: 10px;
}

.footer-emergency a.color--blue {
  color: var(--blue)!important;
}

.footer-emergency a.color--cyan {
  color: var(--cyan)!important;
}

.footer-emergency a.color--seablue {
  color: var(--seablue)!important;
}

.footer-emergency a.color--skyblue {
  color: var(--sky-blue)!important;
}

.footer-emergency a.color--teal {
  color: var(--teal)!important;
}

.footer-emergency a.color--blue:hover,
.footer-emergency a.color--cyan:hover,
.footer-emergency a.color--teal:hover,
.footer-emergency a.color--skyblue:hover {
  color: var(--white)!important;
}

/*------------------------------------------*/
/*  FOOTER SOCIAL LINKS
/*------------------------------------------*/

.foo-socials {
  display: inline-block; 
  margin-top: 15px;
}

.foo-socials li {
  width: auto !important;
  display: inline-block !important;
  vertical-align: top;
  clear: none !important;
  margin: 0 6px;
  padding: 0;
}

.foo-socials a {
  display: block;
  text-decoration: none;
}

.foo-socials.ico-20 [class*="flaticon-"]:before, 
.foo-socials.ico-20 [class*="flaticon-"]:after { font-size: 1.325rem; }

/*------------------------------------------*/
/*  FOOTER LINKS
/*------------------------------------------*/

.foo-links li {
  width: auto!important;
  display: block!important;
  vertical-align: top;
  clear: none !important;
  margin: 0;
  padding: 0;
}

.foo-links.ico-10 li span {
  position: relative;
  top: 1.5px;
  right: 4px;
}

.foo-links li p {
  font-weight: 400;
  margin-bottom: 10px;
}

.foo-links li:last-child p {
  margin-bottom: 0;
}

/*------------------------------------------*/
/*  BOTTOM FOOTER
/*------------------------------------------*/

.footer hr {
  margin-top: 30px;
  margin-bottom: 50px;
}

/*------------------------------------------*/
/*  BOTTOM FOOTER COPYRIGHT
/*------------------------------------------*/

.footer-copyright p {
  margin-bottom: 0;
}

.footer-copyright.copyright-logo p {
  display: inline-block;
  line-height: 28px;
  margin-left: 15px;
}

/*------------------------------------------*/
/*  BOTTOM FOOTER LINKS
/*------------------------------------------*/

.bottom-footer-list {
  position: relative;
  top: 6px;
}

.bottom-footer-list li,
.bottom-footer-socials li {
  width: auto!important;
  display: inline-block!important;
  vertical-align: top;
  clear: none !important;
}

.bottom-footer-list li {
  margin-left: -5px;
}

.bottom-footer-list li:first-child {
  margin-left: 0;
}

.bottom-footer-socials li {
  padding-left: 12px; 
}

.bottom-footer-list li:not(:last-child):after {
  font-family: Flaticon;
  font-size: 1.15rem; 
  line-height: 0.5rem!important;
  content: "\f173";
  position: relative;
  top: -1.5px;
}

.bg--black .bottom-footer-list li:not(:last-child):after {
  color: #dee7f4;
}

.bottom-footer-list li p {
  float: left;
  line-height: 1;
  margin-bottom: 0;
}

.bottom-footer-socials li span { 
  position: relative;
  top: 4px; 
  opacity: .7;
  transition: all 400ms ease-in-out;
}

.bottom-footer-socials li span:hover { 
  opacity: 1;
}

.bottom-footer-socials.ico-20 [class*="flaticon-"]:before, 
.bottom-footer-socials.ico-20 [class*="flaticon-"]:after { font-size: 1.15rem; }




/* ==========================================================================
  28. INNER PAGE WRAPPER
  =========================================================================== */

.pt-190 { padding-top: 190px; }
.pt-200 { padding-top: 200px; }
.pt-210 { padding-top: 210px; }
.pt-220 { padding-top: 220px; }
.pt-230 { padding-top: 230px; }
.pt-240 { padding-top: 240px; }
.pt-270 { padding-top: 270px; }

.pb-130 { padding-bottom: 130px; }
.pb-140 { padding-bottom: 140px; }
.pb-150 { padding-bottom: 150px; }

#about-page.page-hero-section {
  background-image: url(../images/about-page.jpg);
}

#contact-page.page-hero-section {
  background-image: url(../images/contact-page.jpg);
}

#services-page.page-hero-section {
  background-image: url(../images/services-page.jpg);
}

/*------------------------------------------*/
/*  INNER PAGE HERO TYPOGRAPHY
/*------------------------------------------*/

.page-hero-section h2 {
  margin-bottom: 20px;
}

.page-hero-section p.fs-18 {
  margin-bottom: 0;
}




/* ==========================================================================
  29. TERMS, PRIVACY, COOKIES PAGES
  =========================================================================== */

/*------------------------------------------*/
/*  TERMS PAGE TYPOGRAPHY
/*------------------------------------------*/

.txt-block.legal-info h5 {
  margin: 50px 0 25px;
}

.txt-block.legal-info h6 {
  margin: 25px 0;
}

.txt-block.legal-info h6 span,
.txt-block.legal-info h5 span {
  margin-right: 4px;
}

.legal-info p span {
  color: var(--header-color);
  font-weight: 700;
}

.legal-info a {
  font-weight: 600;
  text-decoration: underline;
}

.legal-info a:hover {
  color: var(--header-color);
}




/* ==========================================================================
  30. BREADCRUMB
  =========================================================================== */

.breadcrumb-nav {
  display: inline-block;
  margin: 0 auto;
}

.breadcrumb {
  padding: 0;
  margin-bottom: 0;
  background-color: transparent;
  border-radius: 0;
  width: 100%;
}

/*------------------------------------------*/
/*  BREADCRUMB TYPOGRAPHY
/*------------------------------------------*/ 

.breadcrumb-item {
  color: var(--white);
  font-size: 0.785rem;
  line-height: 1;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 4px;
}

.breadcrumb-item a {
  color: var(--white);
  border-bottom: 2px solid var(--white);
}

.breadcrumb-item.active {
  color: var(--white);
}

.breadcrumb-item + .breadcrumb-item::before {
  font-size: 0.9rem;
  display: inline-block;
  padding-right: 16px;
  margin-top: -1px;
  color: var(--white);
  content: "\00bb";
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 19px;
}




/* ==========================================================================
  31. PAGE PAGINATION
  =========================================================================== */

.page-link {
  color: var(--navy);
  font-size: 1.1rem;
  font-weight: 500;
  padding: 3px 16px;
  margin: 0 8px;
  background-color: transparent;
  border: 2px solid transparent;
  border-radius: 8px;
  transition: all 400ms ease-in-out; 
}

.pagination.ico-20 [class*="flaticon-"]:before, 
.pagination.ico-20 [class*="flaticon-"]:after { position: relative; top: 2px; font-size: 0.935rem; } 

.page-item.disabled .page-link {
  color: var(--text-color);
  background-color: transparent;
  border-color: transparent;
}

.page-link:hover {
  color: var(--navy);
  background-color: transparent;
  border-color: var(--navy);
}

.active .page-link:hover,
.page-item.active .page-link { 
  color: var(--white)!important;
  background-color: var(--seablue); 
  border-color: var(--seablue); 
}

.page-link:focus {
  color: var(--text-color);
  background-color: transparent;
  border-color: transparent;
  box-shadow: 0 0;
}



