/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/
/* =Theme customization starts here
------------------------------------------------------- */
:root {
  --all: all 300ms ease-in-out; }

body::-webkit-scrollbar-thumb {
  background-color: #ffcb2f;
  border-radius: 20px;
  border: none; }

body::-webkit-scrollbar {
  width: 3px; }

body::-webkit-scrollbar-track {
  background: #fff; }

body {
  position: relative;
  transition: var(--all);
  right: 0;
  /*Mobile menu*/
  /*Menu Footer*/
  /*Header-media*/
  /*WHITE FORM*/ }
  body.active-menu {
    height: 100vh;
    overflow: hidden;
    right: 400px; }
  body #sos-header {
    position: relative;
    transition: var(--all);
    right: 0;
    z-index: 999999999999;
    display: flex; }
    body #sos-header.active-menu {
      right: 400px; }
    body #sos-header .wrap {
      display: flex;
      width: 95%;
      max-width: 1920px;
      padding: 10px 0 10px 0;
      margin: 0 auto;
      align-items: center;
      position: relative;
      transition: var(--all);
      justify-content: space-between; }
    body #sos-header .sos-logo {
      position: relative;
      margin-right: 30px; }
      body #sos-header .sos-logo .logo {
        display: block;
        width: 170px;
        transition: var(--all); }
    body #sos-header .main-nav {
      display: flex;
      align-items: center; }
      body #sos-header .main-nav ul {
        padding: 0 !important;
        display: flex; }
        body #sos-header .main-nav ul li {
          list-style: none;
          padding: 7px 15px; }
          body #sos-header .main-nav ul li.menu-item-has-children:after {
            content: '';
            width: 7px;
            height: 7px;
            display: inline-block;
            top: -3px;
            right: -4px;
            border-bottom: 2px solid #ffcb2f;
            border-right: 2px solid #ffcb2f;
            transform: rotate(45deg);
            position: relative; }
          body #sos-header .main-nav ul li.current-menu-item > a:not[aria-current="page"] {
            color: #ffcb2f !important;
            opacity: 1; }
          body #sos-header .main-nav ul li a {
            font-family: "Metropolis Reg", Helvetica, Arial, Lucida, sans-serif;
            font-size: 14px;
            text-transform: uppercase;
            color: #ffffff;
            letter-spacing: 2px;
            transition: var(--all);
            font-weight: 600; }
            body #sos-header .main-nav ul li a:hover {
              color: #ffcb2f; }
          body #sos-header .main-nav ul li .sub-menu {
            width: fit-content;
            position: absolute;
            top: 85px;
            min-width: 216px;
            padding: 10px 0 !important;
            display: block;
            background: rgba(255, 255, 255, 0.9);
            opacity: 0;
            visibility: hidden;
            transition: var(--all);
            backdrop-filter: blur(4px);
            border-top: 3px solid #ffcb2f; }
            body #sos-header .main-nav ul li .sub-menu li {
              display: flex;
              align-items: center;
              width: 100%;
              padding: 8px 25px !important;
              transition: var(--all);
              position: relative;
              justify-content: space-between; }
              body #sos-header .main-nav ul li .sub-menu li a {
                color: #2e3853;
                opacity: 1; }
              body #sos-header .main-nav ul li .sub-menu li.current-menu-item a {
                color: #ffcb2f !important;
                opacity: 1; }
              body #sos-header .main-nav ul li .sub-menu li .sub-menu {
                top: -1px !important;
                left: 100%; }
              body #sos-header .main-nav ul li .sub-menu li:hover > .sub-menu {
                top: -13px !important; }
          body #sos-header .main-nav ul li:hover > .sub-menu {
            opacity: 1;
            visibility: visible;
            top: 90px; }
          body #sos-header .main-nav ul li.menu-button {
            padding: 0 !important;
            margin-left: 10px; }
            body #sos-header .main-nav ul li.menu-button a {
              display: block;
              width: fit-content;
              padding: 7px 20px;
              border: 3px solid #fff;
              border-radius: 10px; }
              body #sos-header .main-nav ul li.menu-button a:hover {
                border-color: #ffcb2f; }
    body #sos-header .second-nav ul {
      padding: 0 !important;
      display: flex;
      align-items: center; }
      body #sos-header .second-nav ul li {
        list-style: none;
        margin-left: 25px; }
        body #sos-header .second-nav ul li a {
          transition: var(--all);
          display: flex;
          align-items: center;
          color: #ffffff; }
          body #sos-header .second-nav ul li a .icon {
            display: inline-block;
            width: 26px;
            margin-right: 10px;
            position: relative; }
        body #sos-header .second-nav ul li.phone-number a {
          font-family: "Metropolis Bold", Helvetica, Arial, Lucida, sans-serif; }
          body #sos-header .second-nav ul li.phone-number a .icon {
            top: 2px; }
        body #sos-header .second-nav ul li.menu-button {
          padding: 0 !important; }
          body #sos-header .second-nav ul li.menu-button a {
            flex-direction: row-reverse;
            width: fit-content;
            padding: 21px 28px;
            background: #a7b6bd;
            font-family: "Metropolis Bold", Helvetica, Arial, Lucida, sans-serif;
            border: 2px solid rgba(0, 0, 0, 0.1);
            font-size: 17px;
            align-items: baseline; }
            body #sos-header .second-nav ul li.menu-button a .icon {
              width: 14px;
              margin-right: 0;
              margin-left: 5px; }
            body #sos-header .second-nav ul li.menu-button a:hover {
              background: #2e3853;
              border-color: #2e3853; }
        body #sos-header .second-nav ul li.phone-button a {
          flex-direction: row !important;
          background: #dbb427;
          border: 2px solid #ffcb2f; }
          body #sos-header .second-nav ul li.phone-button a .icon {
            margin-right: 10px;
            width: 16px; }
    body #sos-header.sticky {
      background: rgba(255, 255, 255, 0.93);
      backdrop-filter: blur(4px); }
      body #sos-header.sticky .wrap {
        padding: 7px 0 7px 0; }
      body #sos-header.sticky .sos-logo a {
        display: contents; }
        body #sos-header.sticky .sos-logo a .logo {
          width: 150px; }
      body #sos-header.sticky .main-nav ul li a {
        color: #2e3853; }
      body #sos-header.sticky .main-nav ul li.current-menu-item a {
        color: #ffcb2f !important;
        opacity: 1; }
      body #sos-header.sticky .main-nav ul li.menu-button a {
        border-color: #2e3853; }
        body #sos-header.sticky .main-nav ul li.menu-button a:hover {
          border-color: #ffcb2f; }
      body #sos-header.sticky .main-nav ul li:hover > a {
        color: #ffcb2f; }
      body #sos-header.sticky .second-nav ul li.phone-number a {
        color: #2e3853; }
    body #sos-header .burger {
      padding: 0 !important;
      cursor: pointer; }
      body #sos-header .burger li {
        list-style: none;
        height: 4px;
        width: 35px;
        margin: 5px 0;
        background: #ffcb2f;
        transition: var(--all);
        position: relative; }
        body #sos-header .burger li:nth-child(1) {
          width: 35%; }
        body #sos-header .burger li:nth-child(2) {
          width: 75%; }
        body #sos-header .burger li:hover:nth-child(1) {
          width: 35px; }
        body #sos-header .burger li:hover:nth-child(2) {
          width: 35px; }
      body #sos-header .burger.active li:nth-child(1) {
        top: 10px;
        transform: rotate(45deg);
        width: 35px; }
      body #sos-header .burger.active li:nth-child(2) {
        opacity: 0;
        visibility: hidden;
        width: 35px; }
      body #sos-header .burger.active li:nth-child(3) {
        top: -10px;
        transform: rotate(-45deg);
        width: 35px; }
    body #sos-header .account-icons {
      display: flex;
      align-items: center; }
      body #sos-header .account-icons .col {
        margin-left: 20px; }
      body #sos-header .account-icons .account {
        display: flex;
        align-items: center; }
        body #sos-header .account-icons .account .info {
          position: relative;
          top: 6px; }
        body #sos-header .account-icons .account a {
          font-weight: 600;
          font-size: 14px;
          text-transform: uppercase;
          color: #fff;
          letter-spacing: 1px;
          transition: var(--all);
          opacity: 1; }
          body #sos-header .account-icons .account a:hover {
            opacity: 0.7; }
        body #sos-header .account-icons .account .users-name {
          line-height: 37%;
          color: #fff; }
        body #sos-header .account-icons .account .login-links a {
          font-size: 12px; }
      body #sos-header .account-icons .icon {
        width: 36px;
        margin-right: 7px;
        display: block;
        line-height: 0; }
      body #sos-header .account-icons .cart-icon {
        width: 36px;
        position: relative;
        top: -2px; }
      body #sos-header .account-icons .cart {
        position: relative; }
      body #sos-header .account-icons .cart-contents-count {
        position: absolute;
        font-weight: 600;
        font-size: 15px;
        text-transform: uppercase;
        color: #fff;
        letter-spacing: 1px;
        top: 57%;
        left: 43%;
        transform: translate(-50%, -50%); }
    @media (max-width: 1672px) {
      body #sos-header .main-nav ul li {
        padding: 3px 11px; }
        body #sos-header .main-nav ul li a {
          font-size: 14px; } }
    @media (min-width: 1301px) {
      body #sos-header .menu-btn {
        display: none; } }
    @media (max-width: 1300px) {
      body #sos-header .menu-btn {
        display: block; }
      body #sos-header .main-nav ul, body #sos-header .second-nav {
        display: none; }
      body #sos-header .burger li {
        height: 3px;
        margin: 7px 0; } }
    @media (max-width: 646px) {
      body #sos-header .account-icons .account .info {
        display: none; }
      body #sos-header .account-icons .icon {
        width: 34px; }
      body #sos-header .account-icons .cart-icon {
        width: 34px;
        top: -2px; }
      body #sos-header .cart-contents-count {
        top: 57%; } }
    @media (max-width: 499px) {
      body #sos-header.active-menu {
        right: 0 !important; }
      body #sos-header .wrap {
        width: 95%;
        max-width: 95%; } }
  body #mobile-menu {
    position: fixed;
    height: 100vh;
    width: 400px;
    background: #fff;
    padding-top: 20px;
    right: -400px;
    transition: var(--all);
    top: 0;
    box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.06); }
    body #mobile-menu .menu-wrap ul {
      padding: 0 !important; }
      body #mobile-menu .menu-wrap ul li {
        list-style: none;
        padding: 15px 20px;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
        body #mobile-menu .menu-wrap ul li:last-child {
          border-bottom: none; }
        body #mobile-menu .menu-wrap ul li a {
          font-size: 20px;
          font-weight: 600;
          color: #2e3853;
          text-transform: uppercase; }
          body #mobile-menu .menu-wrap ul li a .icon {
            display: inline-block;
            width: 26px;
            margin-right: 10px;
            position: relative; }
        body #mobile-menu .menu-wrap ul li .sub-menu {
          position: absolute;
          right: -400px;
          top: 0;
          padding-top: 80px !important;
          transition: var(--all);
          background: #fff;
          height: 58vh;
          width: 100%;
          z-index: 2000000;
          overflow: hidden;
          overflow-y: scroll; }
          body #mobile-menu .menu-wrap ul li .sub-menu.active {
            right: 0; }
        body #mobile-menu .menu-wrap ul li.phone-number a {
          font-family: "Metropolis Bold", Helvetica, Arial, Lucida, sans-serif; }
          body #mobile-menu .menu-wrap ul li.phone-number a .icon {
            top: 2px; }
        body #mobile-menu .menu-wrap ul li.menu-button {
          padding: 0 20px;
          border-bottom: none !important;
          margin-bottom: 15px; }
          body #mobile-menu .menu-wrap ul li.menu-button a {
            display: flex;
            align-items: center;
            flex-direction: row-reverse;
            width: fit-content;
            padding: 21px 28px;
            background: #a7b6bd;
            font-family: "Metropolis Bold", Helvetica, Arial, Lucida, sans-serif;
            border: 2px solid rgba(0, 0, 0, 0.1);
            font-size: 17px;
            align-items: baseline;
            color: #ffffff; }
            body #mobile-menu .menu-wrap ul li.menu-button a .icon {
              width: 14px;
              margin-right: 0;
              margin-left: 5px; }
            body #mobile-menu .menu-wrap ul li.menu-button a:hover {
              background: #2e3853;
              border-color: #2e3853; }
        body #mobile-menu .menu-wrap ul li.phone-button a {
          flex-direction: row !important;
          background: #dbb427;
          border: 2px solid #ffcb2f; }
          body #mobile-menu .menu-wrap ul li.phone-button a .icon {
            margin-right: 10px;
            width: 16px; }
    body #mobile-menu.active {
      right: 0px; }
  body .open-sub-menu {
    position: absolute;
    margin-top: -7px;
    right: 20px;
    height: 40px;
    width: 40px;
    border: 1px solid #ccc;
    border-radius: 50px;
    padding: 6px;
    text-align: center;
    font-size: 32px; }
  body .go-back {
    position: absolute;
    top: 20px;
    left: 20px;
    height: 50px;
    width: 50px;
    border: 1px solid #ccc;
    border-radius: 50px; }
    body .go-back:after {
      content: '';
      width: 10px;
      height: 10px;
      display: block;
      position: relative;
      border-top: 2px solid #2e3853;
      border-left: 2px solid #2e3853;
      transform: rotate(-45deg);
      top: 40%;
      left: 43%; }
  body .menu-footer {
    position: absolute;
    z-index: 9999;
    bottom: 88px;
    padding: 30px;
    width: 100%; }
    body .menu-footer ul {
      padding: 0 !important;
      display: flex; }
      body .menu-footer ul li {
        margin-right: 10px;
        list-style: none; }
        body .menu-footer ul li a span {
          font-size: 0; }
  @media (max-width: 499px) {
    body .open-sub-menu {
      padding: 9px; }
    body #mobile-menu {
      top: auto;
      height: 92vh; }
      body #mobile-menu.active {
        right: 0;
        width: 100%; }
    body #mobile-menu .menu-wrap ul li .sub-menu {
      right: -100%; }
    body #mobile-menu .menu-wrap ul li.active {
      right: 0;
      width: 100%; } }
  body #projects article {
    display: flex;
    height: 80vh;
    justify-content: flex-end;
    position: relative; }
    body #projects article .background-wrap {
      display: block;
      position: absolute;
      width: 100%;
      height: 100%;
      z-index: 2; }
      body #projects article .background-wrap .background {
        width: 100%;
        height: 100%; }
    @media (min-width: 981px) {
      body #projects article .thumb {
        display: none; } }
    body #projects article .content {
      width: 360px;
      padding: 40px;
      display: flex;
      flex-wrap: wrap;
      align-content: end;
      background: rgba(255, 255, 255, 0.7);
      backdrop-filter: blur(4px);
      z-index: 10; }
    @media (max-width: 980px) {
      body #projects article {
        display: block;
        height: auto; }
        body #projects article .content {
          background: none;
          padding: 8% 5%;
          display: block;
          width: 100%; }
        body #projects article .background-wrap {
          display: none; } }
  body #projects.grid {
    display: flex;
    flex-wrap: wrap; }
    body #projects.grid article {
      flex: 0 0 49%;
      margin-right: 1%;
      margin-bottom: 1%;
      border-radius: 10px; }
      body #projects.grid article .content {
        padding: 25px; }
    @media (max-width: 1300px) {
      body #projects.grid {
        display: block; }
        body #projects.grid article {
          flex: none;
          margin-bottom: 30px;
          margin-right: 0; } }
    @media (max-width: 980px) {
      body #projects.grid {
        display: block; }
        body #projects.grid .content {
          padding: 8% 0px !important; } }
  body .wrap {
    width: 90%;
    max-width: 1500px;
    margin: 0 auto 40px auto; }
    body .wrap h2 {
      font-size: 60px; }
      @media (max-width: 980px) {
        body .wrap h2 {
          font-size: 50px; } }
      @media (max-width: 600px) {
        body .wrap h2 {
          font-size: 45px; } }
  body.project-template-default #projects {
    width: 90%;
    max-width: 1500px;
    margin: 0 auto 80px auto; }
  body #project-gallery {
    margin-bottom: 80px; }
    body #project-gallery .wrap {
      margin: 0 auto;
      max-width: 1500px;
      width: 90%; }
      body #project-gallery .wrap h2 {
        margin-bottom: 25px;
        font-size: 60px; }
      @media (max-width: 980px) {
        body #project-gallery .wrap h2 {
          font-size: 45px; } }
      body #project-gallery .wrap .grid-wrapper {
        display: grid;
        grid-gap: 10px;
        grid-template-columns: repeat(auto-fit, minmax(300px, 2fr));
        grid-auto-rows: 200px;
        grid-auto-flow: dense; }
        body #project-gallery .wrap .grid-wrapper > div {
          display: flex;
          justify-content: center;
          align-items: center; }
          body #project-gallery .wrap .grid-wrapper > div > img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 5px; }
          body #project-gallery .wrap .grid-wrapper > div:nth-child(2n) {
            grid-row: span 2; }
          body #project-gallery .wrap .grid-wrapper > div:nth-child(3n) {
            grid-column: span 2; }
          body #project-gallery .wrap .grid-wrapper > div:nth-child(4n) {
            grid-column: span 2;
            grid-row: span 2; }
  body .dnxt-btn-icon {
    transition: var(--all) !important; }
  body .dnxt-btn-icon i {
    position: relative !important;
    top: -3px !important;
    transform: rotate(45deg) !important; }
  body .nf-form-fields-required {
    display: none; }
  body .nf-form-content {
    max-width: 100% !important;
    padding: 0 !important; }
  body .nf-multi-cell .nf-cell {
    padding: 0 10px 0 0 !important; }
  @media (max-width: 980px) {
    body .nf-field {
      margin-bottom: 20px; } }
  body .nf-field-element input::placeholder, body .nf-field-element textarea::placeholder {
    color: #898989 !important; }
  body .nf-form-content .list-select-wrap .nf-field-element > div {
    border-radius: 50px !important; }
  body #nf-field-6-container.listselect-container .nf-field-element div {
    background: none !important;
    border-radius: 25px !important; }
  body .nf-field-element input, body .nf-field-element textarea {
    -webkit-appearance: none;
    border-radius: none !important;
    background: none !important;
    border: 2px solid #2e3853 !important;
    color: #2e3853 !important;
    border-radius: 25px !important; }
  body .nf-field-element select {
    border-radius: none !important;
    background: none !important;
    border: 2px solid #2e3853 !important;
    border-radius: 25px !important; }
  body .nf-field-element input[type="button"], body .nf-form-content input[type='submit'] {
    width: 100% !important;
    color: #2e3853 !important;
    border: 2px solid #2e3853 !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    background: none !important;
    font-size: 15px !important;
    letter-spacing: 2px !important;
    font-weight: 800 !important;
    border-radius: 25px !important; }
  body .nf-field-element input[type="button"]:hover, body .nf-form-content input[type='submit']:hover {
    background: #2e3853 !important;
    color: #fff !important;
    border-color: #2e3853 !important; }
  body .listradio-wrap .nf-field-element label.nf-checked-label:before {
    top: 5px !important; }
  body button.nf-fu-fileinput-button {
    width: auto;
    padding: 14px 18px;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 3px;
    font-weight: 600;
    background: none !important;
    color: #2e3853 !important;
    border: 1px solid #2e3853 !important;
    cursor: pointer;
    border-radius: 25px !important; }
  body button.nf-fu-fileinput-button:hover {
    background: #2e3853 !important;
    color: #fff !important;
    border-color: #2e3853 !important; }
  body .nf-error input,
  body .nf-success input {
    padding-right: 55px !important;
    border-radius: 25px !important; }
  body .listselect-container select option, body .nf-form-content select.ninja-forms-field {
    color: #2e3853 !important; }
  body .listselect-container .nf-field-element div:after {
    color: #2e3853; }
  body .listselect-container .nf-field-element div {
    border-color: #2e3853 !important;
    background: #fff !important; }
  body .nf-error.field-wrap .nf-field-element:after {
    z-index: 4000 !important; }
  body .listselect-container .nf-pass.field-wrap .nf-field-element:after {
    right: 36px !important; }
  body .white-form .nf-field-element input::placeholder, body .white-form .nf-field-element textarea::placeholder, body .white-form .nf-field-element select::placeholder {
    color: #fff !important; }
  body .white-form .nf-field-element input, body .white-form .nf-field-element textarea, body .white-form .nf-field-element select, body .white-form .nf-field-element input[type="button"], body .white-form button.nf-fu-fileinput-button {
    border-color: #fff !important;
    color: #fff !important; }
  body .white-form .nf-form-content .list-select-wrap .nf-field-element > div {
    background: none !important;
    border: none !important; }
  body .white-form .nf-field-element input[type="button"]:hover {
    background: #fff !important;
    color: #2e3853 !important;
    border-color: #fff !important; }
  body .white-form button.nf-fu-fileinput-button:hover {
    background: #fff !important;
    color: #2e3853 !important;
    border-color: #fff !important; }
  body .white-form .listselect-container .nf-field-element div:after {
    color: #fff !important; }
  body .white-form .listselect-container .nf-field-element div {
    border-color: #fff !important;
    background: #2e3853 !important; }
  body .white-form .listselect-wrap select.ninja-forms-field option {
    color: #2e3853 !important; }
  body .white-form .listselect-wrap select.ninja-forms-field ::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: #fff !important; }
  body .white-form .listselect-wrap select.ninja-forms-field::-moz-placeholder {
    /* Firefox 19+ */
    color: #fff !important; }
  body .white-form .listselect-wrap select.ninja-forms-field:-ms-input-placeholder {
    /* IE 10+ */
    color: #fff !important; }
  body .white-form .listselect-wrap select.ninja-forms-field:-moz-placeholder {
    /* Firefox 18- */
    color: #fff !important; }
  body .slick-arrow {
    display: none !important; }
  body .dd-button {
    display: block;
    width: fit-content;
    padding: 10px 24px !important;
    border: 2px solid #ffcb2f;
    margin-top: 15px;
    transition: var(--all);
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 600; }
    body .dd-button.white {
      border-color: #fff;
      color: #fff;
      backdrop-filter: blur(4px); }
    body .dd-button:hover {
      color: #2e3853 !important;
      border-color: #2e3853 !important; }
  @media (max-width: 499px) {
    body.active-menu {
      right: 0 !important; } }
  body .edit-post {
    position: absolute;
    top: 7px;
    right: 10px;
    width: 15px;
    z-index: 99; }
  body .sos-slider-nav .slider-buttons-wrap {
    display: flex;
    align-items: center; }
    body .sos-slider-nav .slider-buttons-wrap .sos-slide-button {
      font-family: FontAwesome !important;
      font-weight: 900 !important;
      color: #2e3853;
      font-size: 36px;
      cursor: pointer;
      transition: var(--all); }
      body .sos-slider-nav .slider-buttons-wrap .sos-slide-button:hover {
        color: #ffcb2f; }
      body .sos-slider-nav .slider-buttons-wrap .sos-slide-button.next-slide {
        margin-left: 50px; }
  body .for-user {
    display: none !important; }
  body.logged-in .for-guest {
    display: none !important; }
  body.logged-in .for-user {
    display: block !important; }
  body .login-as-user {
    bottom: 0 !important; }
  body .login-as-user-top {
    top: auto !important; }

.sos-button {
  display: block;
  width: fit-content;
  padding: 13px 25px;
  color: #ffffff;
  background: #dbb427;
  border: 1px solid #ffcb2f;
  transition: var(--all);
  margin-top: 10px; }
  .sos-button:hover {
    background: #2e3853;
    border-color: #2e3853; }
