/* SCAFFOLDING
-------------------------------------------------- */
*, ::after, ::before {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  outline: transparent;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Mulish', sans-serif;
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  position: relative;
}

h1, h2, h3, h4, h5, h6, p, ul {
  margin: 0;
  padding: 0;
}

h1 {
  font-size: 30px;
  line-height: 38px;
}

h2 {
  font-size: 38px;
  line-height: 53px;
  font-weight: 900;
}

h3 {
  font-size: 20px;
  line-height: 22px;
}

h4 {
  font-size: 16px;
  line-height: 24px;
}

hr {
  margin-top: 2rem;
  margin-bottom: 2rem;
  border: 0;
  border-top: 1px solid rgb(0 0 0 / 13%);
}

a {
  color: #757575;
  text-decoration: none;
}

a:hover {
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -ms-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  text-decoration: underline;
  color: #757575;
}

a[href^="tel:"] {
  color: #757575;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #757575;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #757575;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #757575;
}
:-moz-placeholder { /* Firefox 18- */
  color: #757575;
}

.form-control:focus {
  border-color: #004483;
  box-shadow: inset 0 0 0 1px rgba(0,68,131,1);
}

div img {
  line-height: 0;
}

img {
  width: 100%;
}

picture {
  display: block;
  background-color: rgba(0,0,0,.125);
}

.aspect-ratio-auto,
picture.aspect-ratio-auto img {
  aspect-ratio: auto;
}

.aspect-ratio-1-1,
picture.aspect-ratio-1-1 img {
  aspect-ratio: 1 / 1;
}

.aspect-ratio-3-2,
picture.aspect-ratio-3-2 img {
  aspect-ratio: 3 / 2;
}

.aspect-ratio-16-9,
picture.aspect-ratio-16-9 img {
  aspect-ratio: 16 / 9;
}

i {
  font-weight: normal;
  display: inline-block;
}

button:focus {
  outline: transparent;
}

section {
  padding: 120px 0;
  position: relative;
}

.btn {
  border: 2px solid transparent;
  border-radius: 0;
  cursor: pointer;
  display: inline-block;
  font-weight: 700;
  font-size: 14px;
  line-height: 16px;
  overflow: hidden;
  padding: 12px 16px;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: all 0.5s;
  z-index: 1;
}

.btn.btn-mango {
  background-color: #D6A319;
  color: #ffffff;
}

.btn.btn-mango:hover {
  background-color: rgb(214 163 25 / 80%);
}

.btn.btn-mango-tr {
  background-color: transparent;
  border-color: #D6A319;
  color: #D6A319;
}

.btn.btn-mango-tr:hover {
  background-color: #D6A319;
  color: #ffffff;
}

.btn.btn-mango-br {
  background-color: #f4bb10;
  color: #ffffff;
}

.btn.btn-mango-br:hover {
  background-color: #ffc107;
}

.btn.btn-blue {
  background-color: #004483;
  color: #ffffff;
}

.btn.btn-blue-tr {
  background-color: transparent;
  border-color: #004483;
  color: #004483;
}

.btn.btn-blue-tr:hover {
  background-color: #004483;
  color: #ffffff;
}

.btn.btn-white-tr {
  background-color: transparent;
  border-color: #ffffff;
  color: #ffffff;
}

.btn.btn-white-tr:hover {
  background-color: #ffffff;
  color: #333333;
}

.text-link {
  color: inherit;
  border-bottom: 1px solid transparent;
  display: inline;
  text-decoration: none;
  word-break: break-word;
}

a.text-link {
  color: #6c757d;
  text-decoration: none;
}

.text-link:hover,
a.text-link:hover {
  border-bottom: 1px solid #004483;
  color: #004483;
}

.f12 {
  font-size: 12px;
  line-height: 20px;
}

.f14 {
  font-size: 14px;
  line-height: 22px;
}

.f16 {
  font-size: 16px;
  line-height: 24px;
}

.f18 {
  font-size: 18px;
  line-height: 26px;
}

.f20 {
  font-size: 20px;
  line-height: 28px;
}

.f22 {
  font-size: 22px;
  line-height: 30px;
}

.f24 {
  font-size: 24px;
  line-height: 32px;
}

.f300 {
  font-weight: 300;
}

.f400 {
  font-weight: 400;
}

.f500 {
  font-weight: 500;
}

.f600 {
  font-weight: 600;
}

.f700 {
  font-weight: 700;
}

.f800 {
  font-weight: 800;
}

.f900 {
  font-weight: 900;
}

.white {
  background-color: #ffffff;
}

.grey {
  background-color: #f3f6fb;
}

.blue {
  background-color: #004483;
}

.yellow {
  background-color: #f4bb10;
}

.text-grey {
  color: #757575;
}

.text-blue {
  color: #004483;
}

.text-mango {
  color: #D6A319;
}

.form-control {
  border-radius: 0;
}

.heading-text {
  font-family: 'Frank Ruhl Libre', serif;
}

.heading {
  margin-bottom: 25px;
}

.heading h2 {
  /*color: #004483;*/
  margin-bottom: 8px;
}

/* Arrow */
@media (max-width: 767.98px) {
  .heading {
    margin-bottom: 30px;
  }
}

/* NAVIGATION
-------------------------------------------------- */
.navbar {
  background-color: #004483;
  border-top: 1px solid transparent;
  border-bottom: 1px solid rgb(227 228 229 / 50%);
  padding: 0;
  height: 100px;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1040;
  transition: 0.4s all ease;
}

.scroll-down {
  transform:translateY(-100%); transition: all 0.3s ease-in-out;
  box-shadow: none;
}

.scroll-up {
  transform:translateY(0); transition: all 0.3s ease-in-out;
}

.navbar .navbar-nav {
  transition: 0.4s all ease;
}

.navbar-expand-xl .navbar-nav .nav-link {
  padding: 0;
  margin: 0 15px;
  color: #e3e4e5;
  font-size: 14px;
  line-height: 100px;
  font-weight: 700;
  text-transform: uppercase;
}

.navbar .brand-xs {
  display: none;
  transition: 0.4s all ease;
}

.navbar .nav-wrap {
  position: relative;
  width: 100%;
}

.navbar .navbar-brand {
  display: block;
  position: absolute;
  left: 0;
  top: 10px;
  width: 110px;
  transition: 0.4s all ease;
  padding: 0;
}

.navbar .navbar-brand img {
  border: 1px solid #ffffff;
}

.navbar a.nav-cta {
  background-color: transparent;
  border-radius: 0;
  border: 2px solid #e3e4e5;
  color: #e3e4e5;
  display: block;
  padding: 12px 16px;
  font-weight: 700;
  position: absolute;
  right: 0;
  top: 29px;
  font-size: 14px;
  line-height: 16px;
  text-decoration: none;
  text-transform: uppercase;
}

.navbar a.nav-cta:hover {
  background-color: #ffffff;
  border: 2px solid #ffffff;
  color: #004483;
}

.navbar .dropdown-toggle::after {
  display: none;
}

.dropdown-item:focus, .dropdown-item:hover,
.dropdown-item.active, .dropdown-item:active {
  background-color: #f3f6fb;
  color: #004483;
}

/* Disclaimer Pop-up */
.modal-header, .modal-content {
  border-radius: 0;
}

.modal-header, .modal-body {
  padding: 30px 30px;
}

.modal a {
  text-decoration: underline;
}

.modal-header .close {
  color: #ffffff;
  text-shadow: none;
  font-size: 14px;
  line-height: inherit;
}

@media (min-width: 1200px) {
  .navbar .dropdown-menu-end {
    right: 0;
    left: auto;
  }

  .navbar .nav-item .dropdown-menu {
    display: block;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
    margin-top: 0;
    font-size: 14px;
  }

  .navbar .nav-item:hover .nav-link {
    color: #f4bb10;
  }

  .navbar .nav-item:hover .nav-link i {
    transform: rotate(180deg);
    vertical-align: middle;
    transition: transform 0.3s ease;
  }

  .navbar .dropdown-menu.fade-down {
    top: 80%;
    transform: rotateX(-75deg);
    transform-origin: 0% 0%;
  }

  .navbar .dropdown-menu.fade-up {
    top: 100%;
  }

  .navbar .nav-item:hover .dropdown-menu {
    border: 1px solid #eeeeee;
    border-top: 0;
    border-radius: 0;
    transition: .3s;
    opacity: 1;
    visibility: visible;
    top: 100%;
    transform: rotateX(0deg);
  }

  .navbar .nav-item:hover .dropdown-toggle::after {
    transform: rotate(-90deg);
  }

  .navbar .nav-footer {
    display: none;
  }
}

@media (max-width: 1199.98px) {
  .navbar {
    padding: 0 5px;
  }

  .navbar.fixed-top .navbar-brand {
    display: block;
  }

  .navbar-expand-xl .navbar-nav .nav-link {
    margin-right: 25px;
  }

  .navbar-expand-xl .navbar-nav {
    background-color: #ffffff;
    border-top: 1px solid #ececec;
    height: 100vh;
    margin-top: -1px;
  }

  .navbar-expand-xl .navbar-nav .nav-item {
    border-bottom: 1px solid #ececec;
    color: #004483;
  }

  .navbar-expand-xl .navbar-nav .nav-link {
    color: #333333;
    line-height: 40px;
    margin-left: 0;
    margin-right: 0;
    padding: 5px 20px;
    font-weight: 400;
  }

  .navbar a.nav-cta {
    right: 60px;
  }

  .navbar-toggler {
    padding: 0;
    position: absolute;
    top: 38px;
    right: 15px;
  }

  .navbar .nav-footer {
    display: block;
    color: #333333;
    padding: 40px 20px 0;
  }

  .navbar .nav-footer ul {
    margin-bottom: 15px;
  }

  .navbar .nav-footer li {
    display: inline-block;
    margin-right: 20px;
  }

  .navbar .nav-footer li:last-child {
    margin-right: 0;
  }

  .navbar .nav-footer a {
    color: #333333;
    border-bottom-color: transparent;
  }

  .navbar .nav-footer i {
    color: rgb(51 51 51 / 60%);
    vertical-align: bottom;
  }

  .hamburger {
    padding: 0;
    display: inline-block;
    cursor: pointer;
    transition-property: opacity, filter;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    font: inherit;
    color: inherit;
    text-transform: none;
    background-color: transparent;
    border: 0;
    margin: 0;
    overflow: visible;
  }

  .hamburger.is-active .hamburger-inner,
  .hamburger.is-active .hamburger-inner::before,
  .hamburger.is-active .hamburger-inner::after {
    background-color: #e3e4e5;
  }

  .hamburger-box {
    width: 26px;
    height: 18px;
    display: inline-block;
    position: relative;
  }

  .hamburger-inner {
    display: block;
    top: 50%;
    margin-top: -2px;
  }

  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 26px;
    height: 2px;
    background-color: #e3e4e5;
    border-radius: 0;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease;
  }

  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block;
  }

  .hamburger-inner::before {
    top: -10px;
  }

  .hamburger-inner::after {
    bottom: -10px;
  }

  .hamburger--spring .hamburger-inner {
    top: 5px;
    transition: background-color 0s 0.13s linear;
  }

  .hamburger--spring .hamburger-inner::before {
    top: 8px;
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  .hamburger--spring .hamburger-inner::after {
    top: 16px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  .hamburger--spring.is-active .hamburger-inner {
    transition-delay: 0.22s;
    background-color: transparent !important;
  }

  .hamburger--spring.is-active .hamburger-inner::before {
    top: 0;
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 10px, 0) rotate(45deg);
  }

  .hamburger--spring.is-active .hamburger-inner::after {
    top: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 10px, 0) rotate(-45deg);
  }

  .hamburger--spring-r .hamburger-inner {
    top: auto;
    bottom: 0;
    transition-duration: 0.13s;
    transition-delay: 0s;
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  .hamburger--spring-r .hamburger-inner::after {
    top: -20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear;
  }

  .hamburger--spring-r .hamburger-inner::before {
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  .hamburger--spring-r.is-active .hamburger-inner {
    transform: translate3d(0, -10px, 0) rotate(-45deg);
    transition-delay: 0.22s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  .hamburger--spring-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear;
  }

  .hamburger--spring-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(90deg);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  .navbar {
    transition: all 0.5s;
    padding: 0;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
  }

  .navbar .container {
    min-width: 100%;
  }

  .navbar.fixed-top .navbar-nav {
    padding-left: 0;
  }

  .navbar .nav-item .nav-link i {
    float: right;
    transform: rotate(-90deg);
    line-height: 40px;
    transition: transform 0.3s ease;
  }

  .navbar .nav-item.show .nav-link i {
    transform: rotate(0deg);
  }

  .navbar-nav .dropdown-menu {
    background-color: #f3f6fb;
    margin: 0 15px 15px 15px;
    border-radius: 0;
    border: 0;
    font-size: 14px;
  }

  .navbar-nav .dropdown-menu .dropdown-item {
    padding: .25rem 1rem;
  }

  .navbar .navbar-brand {
    display: block;
    position: relative;
    left: 0;
    top: 0;
    width: 95px;
    transition: 0.4s all ease;
    margin-left: 15px;
    line-height: 100px;
  }

  .modal-header, .modal-body {
    padding: 16px 16px;
  }
}

@media (max-width: 767.98px) {
  .navbar a.nav-cta {
    border-color: transparent;
    color: #e3e4e5;
    font-size: 24px;
    line-height: 48px;
    padding: 0;
    top: 36px;
  }

  .navbar a.nav-cta:hover {
    background-color: transparent;
    color: #e3e4e5;
  }

  .navbar .navbar-brand {
    width: 85px;
    line-height: 99px;
    margin-left: 20px;
  }

  .navbar-toggler {
    right: 20px;
  }

  #disclaimerModal .modal-body {
    height: 280px;
    overflow-y: auto;
  }
}

/* Sprite
-------------------------------------------------- */
.sprite-icon {
  background-image: url("../images/sprite-1x.png");
  background-repeat: no-repeat;
  background-size: 100px;
  max-width: 100%;
  display: block;
}

.sprite-icon-banking {
  height: 80px;
  background-position: 10px 0;
}

.sprite-icon-drafting {
  height: 80px;
  background-position: 7.25px -170px;
}

.sprite-icon-real-estate {
  height: 80px;
  background-position: 0 -340px;
}

.sprite-icon-arbitration {
  height: 80px;
  background-position: 10px -510px;
}

.sprite-icon-litigation {
  height: 80px;
  background-position: 10px -680px;
}

.sprite-icon-ipr {
  height: 80px;
  background-position: 20px -850px;
}

.sprite-icon-consumer {
  height: 80px;
  background-position: 10px -1020px;
}

.sprite-icon-corporate {
  height: 80px;
  background-position: 10px -1185px;
}

.sprite-icon-trust {
  height: 80px;
  background-position: 20px -1360px;
}

@media (max-width: 767.98px) {
  .sprite-icon {
    background-image: url(../images/sprite-2x.png);
  }
}

/* HOMEPAGE
-------------------------------------------------- */
.section-banner.main-banner {
  background: url("../images/banner.jpg") right top no-repeat;
  background-size: cover;
  height: calc(100vh - 100px);
  padding: 90px 0 100px;
  position: relative;
  margin-top: 100px;
}

.section-banner.main-banner .banner-wrap {
  padding: 8% 0 0 0;
}

.section-banner.main-banner .banner-content {
  color: #757575;
}

.section-banner.main-banner .banner-content h1 {
  font-size: 52px;
  line-height: 68px;
  font-weight: 900;
  color: #004483;
  margin-bottom: 35px;
}

.section-banner.main-banner .banner-content p.main {
  font-size: 18px;
  line-height: 28px;
  margin-bottom: 55px;
}

.section-banner.main-banner .banner-detail {
  position: relative;
  padding-left: 35px;
  margin-bottom: 55px;
}

.section-banner.main-banner .banner-detail i {
  position: absolute;
  left: 0;
  top: 5px;
  font-size: 20px;
  width: 20px;
  height: 20px;
  line-height: 20px;
}

@media (max-width: 1199.98px) {
  .section-banner.main-banner .banner-content h1 {
    font-size: 40px;
    line-height: 56px;
  }
}

@media (max-width: 991.98px) {
  .section-banner.main-banner .banner-wrap {
    padding: 0;
  }
}

@media (max-width: 991.98px) and (min-width: 768px) {
  .section-banner.main-banner .banner-content p.main,
  .section-banner.main-banner .banner-detail {
    margin-bottom: 35px;
  }
}

@media (max-width: 767.98px) {
  .section-banner.main-banner {
    background: #e9ecef;
    padding: 0;
    height: auto;
  }

  .section-banner.main-banner .banner-wrap {
    padding: 45px 5px;
  }

  .section-banner.main-banner .banner-content h1 {
    font-size: 30px;
    line-height: 46px;
  }

  .section-banner.main-banner .banner-content p {
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 28px;
  }

  .section-banner.main-banner .banner-detail {
    margin-bottom: 45px;
  }
}

@media (max-width: 320px) {
  .section-banner.main-banner .banner-wrap {
    padding: 50px 5px;
  }
}

/* SERVICES - PRACTICE AREAS */
.service-box {
  background-color: #f7f7f7;
  color: rgba(50, 56, 72, 0.6);
  cursor: pointer;
  padding: 26px 15px;
  position: relative;
  -webkit-transition: all .3s;
  transition: all .3s;
  z-index: 1;
  height: 100%;
}

.service-box::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background-color: #004483;
}

.service-box::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background-color: #004483;

}

.service-box h3.service-box-title,
.service-box .service-box-link {
  font-size: 16px;
}

.service-box .service-box-title a {
  margin-bottom: 32px;
  color: #14171e;
  line-height: 27px;
  font-weight: 600;
  -webkit-transition: color .3s;
  transition: color .3s;
  display: block;
  text-decoration: none;
}

.service-box .service-box-img-container {
  display: block;
  width: 100px;
  height: 80px;
  margin: 0 auto 35px;
}

.service-box .service-box-link {
  color: rgba(50, 56, 72, 0.6);
  -webkit-transition: color .3s;
  transition: color .3s;
}

.service-box:hover, .service-box:focus {
  background-color: #f4bb10;
  color: rgb(255 255 255 / 60%)
}

.service-box:hover .service-box-title a,
.service-box:focus .service-box-title a,
.service-box:hover .service-box-link,
.service-box:focus .service-box-link {
  color: rgb(255 255 255 / 100%)
}

.service-box:hover .sprite-icon-banking {
  background-position: 10px -85px;
}

.service-box:hover .sprite-icon-drafting {
  background-position: 7.25px -255px;
}

.service-box:hover .sprite-icon-real-estate {
  background-position: 0 -425px;
}

.service-box:hover .sprite-icon-arbitration {
  background-position: 10px -595px;
}

.service-box:hover .sprite-icon-litigation {
  background-position: 10px -765px;
}

.service-box:hover .sprite-icon-ipr {
  background-position: 20px -935px;
}

.service-box:hover .sprite-icon-consumer {
  background-position: 10px -1105px;
}

.service-box:hover .sprite-icon-corporate {
  background-position: 10px -1270px;
}

.service-box:hover .sprite-icon-trust {
  background-position: 20px -1445px;
}

.page-inner .section-services {
  padding-bottom: 90px;
}

.page-inner .service-box {
  height: auto;
  margin-bottom: 30px;
}

.page-inner .service-box::before,
.page-inner .service-box::after {
  display: none;
}

.page-inner .service-box .service-box-title a {
  margin-bottom: 15px;
}

@media (max-width: 767.98px) {
  .service-box h3.service-box-title {
    font-size: 16px;
  }

  .service-box .service-box-title a {
    min-height: 55px;
  }

  .page-inner .section-services {
    padding: 45px 10px 15px;
  }
}

@media (max-width: 420px) {
  .service-box {
    padding: 20px 15px;
  }

  .service-box h3.service-box-title,
  .service-box .service-box-link {
    font-size: 14px;
  }
}

.section-cta {
  background: #dddddd url(../images/cta.jpg) center top no-repeat;
  background-size: cover;
  padding: 80px 0;
}

@media (max-width: 767.98px) {
  .section-cta {
    background: #dddddd url(../images/sidebar-m.jpg) center top no-repeat;
    padding: 50px 5px;
  }
}

/* PROCESS */
.list-bullet li,
.list-items li {
  position: relative;
  padding-left: 25px;
  margin-bottom: 25px;
}

.list-items li {
  padding-left: 35px;
}

.list-items li i {
  position: absolute;
  top: 4px;
  left: 0;
  font-size: 18px;
  line-height: 18px;
}

.list-bullet li:last-child,
.list-items li:last-child {
  margin-bottom: 0;
}

.list-bullet li::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50px;
  background-color: #f4bb10;
  position: absolute;
  top: 8px;
  left: 0;
}

.list-line li {
  position: relative;
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px solid #dee2e6;
}

.list-line li:last-child {
  padding-bottom: 15px;
  border-bottom: 1px solid #dee2e6;
}

.section-content picture,
.section-content img {
  border-radius: 0;
}

@media (max-width: 767.98px) {
  .section-content picture {
    margin-bottom: 25px;
  }

  .list-line li:last-child {
    margin-bottom: 30px;
  }
}

/* FOOTER
-------------------------------------------------- */
.footer {
  background-color: #e9ecef;
}

.footer, .footer a {
  color: #757575;
}

.footer a:hover {
  color: #757575;
}

.footer .footer-content {
  padding: 100px 0 90px;
}

.footer .footer-content p,
.footer .footer-content a {
  font-size: 14px;
}

.footer .footer-content i {
  font-size: 16px;
  width: 20px;
}

.footer .footer-content i.fa-whatsapp {
  font-size: 18px;
}

.footer .footer-brand {
  display: block;
  width: 80%;
}

.footer .footer-menu {
  margin-bottom: 30px;
}

.footer .footer-menu .footer-menu-title {
  font-weight: 700;
  margin-bottom: 20px;
  text-transform: uppercase;
}

.footer .footer-menu .footer-menu-list li {
  margin-bottom: 10px;
}

.footer .brand-line {
  height: 5px;
}

.footer .footer-address {
  border-top: 1px solid rgb(0 0 0 / 13%);
  padding-top: 30px;
}

.footer .footer-address p {
  margin-bottom: 15px;
  position: relative;
  padding-left: 25px;
}

.footer .footer-address p i {
  position: absolute;
  left: 0;
  top: 4px;
}

.footer .footer-address a {
  border-bottom: 1px solid transparent;
}

.footer .footer-address a:hover {
  border-bottom: 1px solid #757575;
}

.footer .footer-social {
  padding-top: 30px;
}

.footer .footer-social li {
  float: left;
}

.footer .footer-social a {
  margin-right: 10px;
}

.footer .footer-social i {
  font-size: 28px;
}

.footer .copyright-content {
  background-color: #dee1e4;
  padding: 18px 0 8px;
}

.footer .copyright-content p {
  margin-bottom: 10px;
}

@media (max-width: 1199.98px) {
  .footer .footer-content {
    padding: 100px 0 20px;
  }

  .footer .footer-brand {
    width: 50%;
    padding-bottom: 50px;
  }

  .footer .footer-brand img {
    width: 180px;
  }
}

@media (max-width: 991.98px) {
  .footer .footer-social i {
    font-size: 24px;
    line-height: 26px;
  }
}

@media (max-width: 767.98px) {
  h1 {
    font-size: 26px;
    line-height: 32px;
  }

  h2 {
    font-size: 22px;
    line-height: 30px;
  }

  section {
    padding: 45px 5px;
  }

  .footer {
    padding: 0;
  }

  .footer .footer-content {
    padding-top: 45px;
  }

  .footer .footer-brand {
    width: 100%;
  }

  .footer .footer-menu {
    margin-bottom: 30px;
  }

  .footer .footer-menu .footer-menu-title {
    margin-bottom: 5px;
  }

  .footer .footer-menu .footer-menu-list li {
    margin-bottom: 0;
  }

  .footer .footer-address {
    margin-top: 15px;
  }

  .footer .footer-social {
    padding-top: 15px;
  }
}

/* Inner Pages
-------------------------------------------------- */
.page-inner .heading {
    margin-bottom: 15px;
}

.page-inner .section-banner {
  background: #dddddd url(../images/inner-banner.jpg) center bottom no-repeat;
  background-size: cover;
  border-bottom: 1px solid #dee2e6;
  color: #ffffff;
  height: auto;
  margin-top: 100px;
  padding: 132px  0;
  position: relative;
}

.page-inner .section-banner h1 {
  font-size: 44px;
  line-height: 52px;
  font-weight: 900;
  margin-bottom: 15px;
  color: #004483;
}

.page-inner .breadcrumb {
  margin-bottom: 0;
  padding: 0;
  background: transparent;
}

.page-inner .breadcrumb li {
  font-size: 14px;
  line-height: 36px;
}

.page-inner .breadcrumb a,
.breadcrumb-item.active,
.breadcrumb-item+.breadcrumb-item::before {
}

.page-inner .breadcrumb a {
  position: relative;
}

.page-inner .breadcrumb-item.home a {
  padding-left: 15px;
}

.page-inner .breadcrumb a i {
  position: absolute;
  left: 0;
  top: 0;
}

.page-inner .section-service-detail {
  border-bottom: 1px solid #eeeeee;
}

.page-inner .heading.inner-heading h2 {
  font-size: 24px;
  line-height: 32px;
}

.page-about .section-service-detail .img-wrap {
  border: 2px solid #dee2e6;
}

.page-about .section-service-detail .img-content {
  padding: 15px;
}

@media (max-width: 1199.98px) {
  .page-inner .section-banner {
    margin-top: 100px;
  }
}

@media (max-width: 767.98px) {
  .page-inner .section-banner {
    background-position: center;
    padding: 50px 5px;
  }

  .page-inner .section-banner h1 {
    font-size: 28px;
    line-height: 36px;
    margin-bottom: 8px;
  }

  .page-inner .breadcrumb {
    float: none;
  }

  .page-inner .heading {
    margin-bottom: 15px;
  }

  .page-inner .section-service-detail .img-wrap {
    margin-bottom: 20px;
  }

  .page-inner .heading.inner-heading h2 {
    font-size: 18px;
    line-height: 26px;
  }

  .page-about .section-service-detail .img-wrap {
    width: 280px;
  }
}

/* SIDEBAR
-------------------------------------------------- */
.section-sidebar {
  height: 100%;
  padding: 0;
  position: relative;
  background: url("../images/sidebar.jpg") center bottom no-repeat;
  background-size: cover;
}

.section-sidebar .sidebar-element {
  margin-bottom: 0;
  padding: 25px;
}

.section-sidebar .sidebar-element p,
.section-sidebar .sidebar-element li {
  margin-bottom: 30px;
}

.section-sidebar a.text-link.social-link:hover{
  border-bottom: 1px solid transparent;
}

.section-sidebar .sidebar-element li:last-child {
  margin-bottom: 0;
}

.section-sidebar .sidebar-element .title {
  border-bottom: 1px solid #dddddd;
  padding-bottom: 8px;
}

@media (max-width: 1199.98px) {
  .section-sidebar {
    margin-left: 0;
  }

  .section-sidebar .sidebar-element {
    padding: 20px;
  }

  .section-sidebar .sidebar-element .title {
    margin-bottom: 15px;
  }
}

@media (min-width: 768px) {
  .section-sidebar .sidebar-wrap {
    position: sticky;
    top: 80px;
  }
}

@media (max-width: 767.98px) {
  .section-sidebar {
    background: url("../images/sidebar-m.jpg") center center no-repeat;
    background-size: cover;
  }
}

/* CONTACT PAGE
-------------------------------------------------- */
.page-contact iframe {
  width: 100%;
  height: 100%;
  display: block;
  /*-webkit-box-shadow: 0 2px 6px rgba(0,0,0,.3);
  box-shadow: 0 2px 6px rgba(0,0,0,.3);*/
  border: 1px solid rgba(0,0,0,.3);
}

.page-contact .contact-link a {
  text-decoration: underline;
}

@media (max-width: 767.98px) {
  .page-contact iframe {
    height: 300px;
    margin-top: 50px;
  }
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="search"],
input[type="url"],
textarea,
.input {
  border: 1px solid #C8C8C8;
  font-weight: 400;
  font-size: 16px;
  color: #6c757d;
  border-radius: 0;
  letter-spacing: 0;
  line-height: 20px;
  box-sizing: border-box;
  background-color: white;
  outline: none;
  padding-left: 10px;
  padding-right: 10px;
  background: white;
  box-shadow: inset 0 0 0 1px rgba(0,0,0,0);
  transition: all 250ms ease-in-out;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="search"]:focus,
input[type="url"]:focus,
textarea:focus,
.input:focus,
input[type="text"]:active,
input[type="email"]:active,
input[type="password"]:active,
input[type="number"]:active,
input[type="tel"]:active,
input[type="search"]:active,
input[type="url"]:active,
textarea:active,
.input:active {
  border: 1px solid #004483;
  box-shadow: inset 0 0 0 1px rgba(0,68,131,1);
}

input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="password"]::placeholder,
input[type="number"]::placeholder,
input[type="tel"]::placeholder,
input[type="search"]::placeholder,
input[type="url"]::placeholder,
textarea::placeholder,
.input::placeholder{
  color: rgba(255,255,255,0);
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="search"],
input[type="url"],
.input {
  border-radius: 0;
  height: 52px;
  padding: 25px 10px 5px 10px;
  width: 100%;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type="number"] {
  -moz-appearance: textfield;
}

textarea {
  resize: none;
  border-radius: 0;
}

.input-field {
  position: relative;
  font-size: 18px;
  letter-spacing: 0;
  line-height: 20px;
  margin: 0;
  margin-bottom: 20px;
}

.input-field > label {
  position: absolute;
  top: 0;
  left: 2px;
  background-color: rgba(255,255,255,0);
  padding: 0 9px;
  box-sizing: border-box;
  cursor: text;
  text-align: left;
  transition: all 250ms ease-in-out;
  font-weight: 400;
  font-size: 16px;
  color: #757575;
  letter-spacing: 0;
  line-height: 52px;
  z-index: 1;
}

.input-field.focus > label, .input-field.active > label {
  font-size: 12px;
  letter-spacing: 0.2px;
  line-height: 14px;
  top: 2px;
  padding-top: 9px;
  border-radius: 0;
}

.input-field.textarea.focus > label, .input-field.textarea.active > label {
  background-color: rgba(255,255,255,1);
  width: calc(100% - 4px);
}

.input-field textarea {
  padding: 25px 10px 5px 10px;
  height: 150px;
  width: 100%;
  border-radius: 0;
}

.input-field.focus input[type="text"],
.input-field.focus input[type="email"],
.input-field.focus input[type="password"],
.input-field.focus input[type="number"],
.input-field.focus input[type="tel"],
.input-field.focus input[type="search"],
.input-field.focus input[type="url"],
.input-field.focus textarea,
.input-field.focus .input {
  box-shadow: inset 0 0 0 1px rgba(0,68,131,1);
}

.input-field.active input[type="text"],
.input-field.active input[type="email"],
.input-field.active input[type="password"],
.input-field.active input[type="number"],
.input-field.active input[type="tel"],
.input-field.active input[type="search"],
.input-field.active input[type="url"],
.input-field.active textarea,
.input-field.active .input {
  box-shadow: inset 0 0 0 1px rgba(0,0,0,0);
  border-color: #004483;
}

.form-control:disabled, .form-control[readonly] {
  padding-top: 5px;
}

.invalid-feedback {
  visibility: hidden;
  display: unset!important;
}

.is-invalid~.invalid-feedback, .is-invalid~.invalid-tooltip, .was-validated :invalid~.invalid-feedback, .was-validated :invalid~.invalid-tooltip {
  visibility: visible;
  display: unset!important;
}

/* RESPONSIVE CSS
-------------------------------------------------- */
@media (max-width: 767.98px) {
  .input-field > label {
    font-size: 14px;
  }
}