/*
Theme Name: trustbiz
Template: generatepress
Theme URI: https://dengun.com
Author: Dengun
Author URI: https://dengun.com
Description: Dengun child theme for more customized development.
Version: 1.0
Tags: two-columns, three-columns, one-column, right-sidebar, left-sidebar, fluid-layout, fixed-layout, responsive-layout, flexible-header, full-width-template, buddypress, custom-header, custom-background, custom-menu, custom-colors, sticky-post, threaded-comments, translation-ready, featured-images, theme-options
*/

/*
CONTENTS:
1. Defaults
2. Header and Nav
3. Home Page
4. Content
5. Components
6. Widgets
7. Footer
8. Other
9. Animations

*/

* {
  box-sizing: border-box;
}

html,
body {
  position: absolute;
  top: 0;
  left: 0;
  display: block;

  width: 100%;
  height: 100%;
  padding: 0;

  margin: 0;
}

select {
  appearance: none;
}

/* ==========================================
=! DEFAULTS
------------------------------------------ */
:root {
  --max-content-width: 1440px;
  --main-font: 'Open Sans', sans-serif;
  --primary-btn-rgba-color: rgba(28, 56, 121, 60%);
  --secundary-btn-rgba-color: rgba(96, 126, 170, 20%);
  --desabled-button-rgba-color: rgba(97, 105, 124, 30%);
  --outline-button-rgba-color: rgba(255, 255, 255, 15%);
  --pricing-faq-section-bg: rgba(97, 105, 124, 8%);
  --comparison-table-bg: rgba(97, 105, 124, 8%);
  --content-padding: 165px;
  --content-padding-my-account-page: 62px;
  --color-secundary-rgba: 255, 84, 0;
  --neutral-3-rgba: 97, 105, 124;
  --neutral-4-rgba: 96, 126, 170;
  --neutral-5-rgba: 28, 56, 121;
  --z-index-header: 10000;
  --z-index-preloader: 20000;
  --z-index-admin-bar: 99999;
  --z-index-tidio: 999999999;
  --z-index-modal: calc(var(--z-index-tidio) + 1);

  /* based on bootstrap 4: https://getbootstrap.com/docs/4.0/layout/grid/ */
  --screen-xs-max: 575px;
  --screen-sm-min: 576px;
  --screen-sm-max: 767px;
  --screen-md-min: 768px;
  --screen-md-max: 991px;
  --screen-lg-min: 992px;
  --screen-lg-max: 1199px;
  --screen-xl-min: 1200px;
  --offset-for-fixed-header: 82px;
  --woocommerce-page-top-padding: 160px;
}

@media (min-width: 768px) and (max-width: 1280px) {
  :root {
    --content-padding: 24px;
  }
}

@media (max-width: 767px) {
  :root {
    --content-padding: 16px;
  }
}

@media (max-width: 991px) {
  :root {
    --content-padding-my-account-page: 0;
  }
}

@media screen and (max-width: 767px) {
  :root {
    --offset-for-fixed-header: 63px;
  }
}

body {
  position: relative;
}

.clearfix::after {
  display: table;
  clear: both;
  content: '';
}

@media (min-width: 768px) {
  .visible-desktop {
    display: block;
  }

  .visible-mobile {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .visible-desktop {
    display: none !important;
  }

  .visible-mobile {
    display: block;
  }
}

.gpc-underline {
  text-decoration: underline;
  text-underline-position: under;
}

/* Flex alignements */
.d-flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Typewriter text */

.gpc-type {
  display: inline-block;
  overflow: hidden;
  margin: 0 auto;
}

/* Default background colors */

.bg-primary {
  background: var(--color-primary);
}

.bg-secundary {
  background: var(--color-secundary);
}

.bg-white {
  background: var(--color-white);
}

.bg-neutral-1 {
  background: var(--neutral-1);
}

.bg-neutral-2 {
  background: var(--neutral-2);
}

.bg-neutral-3 {
  background: var(--neutral-3);
}

.bg-neutral-4 {
  background: var(--neutral-4);
}

.bg-neutral-5 {
  background: var(--neutral-5);
}

.bg-neutral-6 {
  background: var(--neutral-6);
}

.bg-neutral-7 {
  background: var(--neutral-7);
}

.bg-neutral-8 {
  background: var(--neutral-8);
}

.bg-neutral-9 {
  background: var(--neutral-9);
}

.bg-neutral-10 {
  background: var(--neutral-10);
}

/* Default colors */

.color-white {
  color: var(--color-white);
}

.color-primary {
  color: var(--color-primary);
}

.color-secundary {
  color: var(--color-secundary);
}

.color-neutral-1 {
  color: var(--neutral-1);
}

.color-neutral-2 {
  color: var(--neutral-2);
}

.color-neutral-3 {
  color: var(--neutral-3);
}

.color-neutral-4 {
  color: var(--neutral-4);
}

.color-neutral-5 {
  color: var(--neutral-5);
}

.color-neutral-6 {
  color: var(--neutral-6);
}

.color-neutral-7 {
  color: var(--neutral-7);
}

.color-neutral-8 {
  color: var(--neutral-8);
}

.color-neutral-9 {
  color: var(--neutral-9);
}

.color-neutral-10 {
  color: var(--neutral-10);
}

/* Default fonts */

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

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

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

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

.caption {
  font-weight: 400;
}

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

.has-orange-line::after {
  display: block;
  width: 16px;
  height: 2px;
  margin: 11px 0 9px;
  background: var(--color-secundary) none repeat scroll 0 0;
  content: '';
}

.mb-0 {
  margin-bottom: 0;
}

/* Buttons */

.gpc-button {
  padding: 9px 15px;
  border-radius: 40px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
}

@media (max-width: 767px) {
  .gpc-button {
    padding: 7px 30px;
    font-size: 14px;
  }
}

.gpc-primary {
  border: 1px solid var(--neutral-5);
  background-color: var(--neutral-5);
  color: var(--color-white);
}

.gpc-primary:focus,
.gpc-primary:hover {
  background-color: var(--primary-btn-rgba-color);
  color: var(--color-white);
}

.gpc-secundary {
  border: 1px solid var(--neutral-5);
  background-color: transparent;
  color: var(--neutral-5);
}

.gpc-secundary:focus,
.gpc-secundary:hover {
  border: 1px solid var(--neutral-5);
  background-color: var(--secundary-btn-rgba-color);
  color: var(--neutral-5);
}

.gpc-desabled-primary,
.gpc-desabled-secundary {
  cursor: not-allowed;
  pointer-events: none;
}

.gpc-desabled-primary {
  background-color: var(--desabled-button-rgba-color);
  color: var(--neutral-3);
}

.gpc-desabled-secundary {
  border: 1px solid var(--neutral-3);
  background-color: transparent;
  color: var(--neutral-3);
}

.gpc-outline {
  border: 1px solid var(--color-white);
  background-color: transparent;
  color: var(--color-white);
}

.gpc-outline-color {
  border: 1px solid var(--color-white);
  background-color: var(--outline-button-rgba-color);
  color: var(--color-white);
}

/* End Buttons */

/* Sections */

.no-sidebar .entry-content .alignfull {
  width: auto;
  max-width: auto !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.gpc-full-section {
  padding-right: var(--content-padding);
  padding-left: var(--content-padding);
}

.gpc-contained-section {
  position: relative;
  max-width: var(--max-content-width);
  padding-right: var(--content-padding);
  padding-left: var(--content-padding);
  margin-right: auto;
  margin-left: auto;
}

/* ==========================================
=! HOME
------------------------------------------ */
.gpc-about {
  overflow: hidden;
}

.gpc-about-content {
  position: relative;
  z-index: 1;
  padding: 104px 0 10px;
}

.gpc-about-content::after {
  position: absolute;
  z-index: 0;
  top: -110px;
  right: -80px;
  width: 1065px;
  height: 1100px;
  background: url('/wp-content/themes/trustbiz/assets/images/home-hero-bg.svg');
  background-repeat: no-repeat;
  background-size: 1100px;
  content: '';
  transform: none;
}

.gpc-about-left-col,
.gpc-about-right-col {
  position: relative;
  z-index: 1;
}

.gpc-about-left-col {
  padding-right: var(--content-padding);
  padding-left: var(--content-padding);
}

.gpc-about-left-col h1 {
  margin-bottom: 42px;
}

.gpc-about-left-col p.text2 {
  margin-bottom: 51px;
}

.gpc-about-left-col__bullet-points {
  margin: 25px 0 0;
  margin-left: 0;
  list-style: none;
}

.gpc-about-left-col__bullet-points li {
  position: relative;
  padding-bottom: 10px;
  padding-left: 23px;
  color: var(--neutral-4);
}

.gpc-about-left-col__bullet-points li::before {
  position: absolute;
  top: 6px;
  left: 0;
  width: 8px;
  height: 8px;
  background: url('/wp-content/themes/trustbiz/assets/images/bullet-points.svg');
  background-position: 0% 0%;
  background-repeat: no-repeat;
  background-size: auto;
  content: '';
}

.gpc-about-right-col .wp-block-image {
  position: relative;
  overflow: hidden;
  width: fit-content;
  margin-top: 76px;
  float: right;
}

.gpc-about-right-col .wp-block-image figure {
  margin: 0;
}

.gpc-about-right-col .wp-block-image figure::before {
  content: '';
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.gpc-about-right-col .gpc_video_link {
  position: absolute;
  top: 50%;
  left: 55%;
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  text-align: center;
  width: 120px;
  height: 120px;
  z-index: 1;
}

@media (max-width: 767px) {
  .gpc-about-right-col .gpc_video_link {
    left: 50%;
  }
}

.gpc-calendly__cta {
  margin-top: 1.5rem;
}

.gpc-calendly__cta-title {
  color: var(--color-white);
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 28px;
}

.gpc-calendly__cta .gpc-calendly {
  display: inline-block;
  background: var(--color-secundary);
  color: var(--color-white);
}

.gpc-calendly__cta .gpc-calendly:hover {
  background: var(--neutral-4);
  color: var(--color-white);
}

/* mobile */

@media (max-width: 767px) {
  .gpc-about-content {
    padding-top: 60px;
    padding-bottom: 10px;
  }

  .gpc-about-content::after {
    top: 187px;
    left: -421px;
    width: 803px;
    height: 830px;
    background-size: 830px;
    transform: scaleX(-1);
  }

  .gpc-about-left-col p.text2 {
    margin-bottom: 52px;
  }

  .gpc-about-right-col .wp-block-image {
    margin-top: 52px;
  }
}

/* desktop */

@media (min-width: 993px) {
  .gpc-about-left-col h1 {
    max-width: 445px;
  }

  .gpc-about-left-col p.text2 {
    max-width: 352px;
  }

  .gpc-about-left-col {
    width: calc(var(--max-content-width) / 2);
    padding-right: 125px;
    padding-left: var(--content-padding);
    margin-left: auto;
  }
}

/* tablet */

@media (min-width: 768px) and (max-width: 992px) {
  .gpc-about-content::after {
    top: 255px;
    left: -421px;
    transform: scaleY(-1);
  }

  .gpc-about-left-col {
    width: 100%;
    max-width: var(--max-content-width);
    padding: var(--content-padding);
    margin-right: auto;
    margin-left: auto;
  }

  .gpc-about-right-col {
    width: 100%;
    max-width: var(--max-content-width);
    padding-left: var(--content-padding);
    margin-left: auto;
  }

  .gpc-about-right-col img {
    width: 100%;
    padding-top: 0;
  }

  .gpc-about-right-col .wp-block-image {
    width: 100%;
  }

  .gpc-about-right-col .wp-block-image .alignright {
    width: 100%;
    margin: 0;
    float: none;
  }
}

/* Selling point section */

.gpc-selling-point {
  position: relative;
  z-index: 0;
  overflow: hidden;
  padding-top: 104px;
  padding-bottom: 118px;
}

.gpc-selling-point-left figure {
  position: relative;
}

.gpc-selling-point-left figure::after {
  position: absolute;
  z-index: 0;
  top: 75px;
  left: -118.5px;
  width: 237px;
  height: 261px;
  background: url('/wp-content/themes/trustbiz/assets/images/bg-circle.svg');
  background-repeat: no-repeat;
  background-size: 237px;
  content: '';
  transform: none;
}

.gpc-selling-point-left figure figcaption {
  position: absolute;
  z-index: 1;
  bottom: 44px;
  left: 44px;
  max-width: 149px;
  color: var(--color-white);
  font-family: var(--main-font);
  font-size: 51px;
  font-weight: 700;
  line-height: 64px;
}

.gpc-selling-point-right {
  position: relative;
  padding: 60px;
}

/* Tablet */
@media (min-width: 768px) and (max-width: 992px) {
  .gpc-selling-point-right {
    padding: 60px 0;
  }
}

/* End Tablet */

/* mobile */
@media (max-width: 767px) {
  .gpc-selling-point-left figure::after {
    top: 44px;
    left: -80px;
    width: 160px;
    height: 261px;
    background-size: 160px;
  }

  .gpc-selling-point-left figure figcaption {
    font-size: 38px;
    line-height: 46px;
  }

  .gpc-selling-point-right {
    padding: 58px 0;
  }
}

/* End mobile */

/* End Selling point section */

/* Pricing Section */

.gpc-pricing-inner {
  padding-right: var(--content-padding);
  padding-left: var(--content-padding);
}

.gpc-pricing-inner .text1 {
  max-width: 730px;
  margin-right: auto;
  margin-bottom: 37px;
  margin-left: auto;
}

/* End pricing Section */

/* Latest News */

.gpc-latest-news {
  padding-top: 100px;
  padding-bottom: 100px;
}

.gpc-latest-news .title-1 {
  margin-bottom: 20px;
}

.gpc-latest-news p.text1 {
  max-width: 500px;
  margin-bottom: 0;
}

.gpc-latest-news-cta {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-right: 30px;
}

/* mobile */
@media (max-width: 767px) {
  .gpc-latest-news {
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .gpc-latest-news-cta {
    display: block;
    padding-top: 28px;
  }
}

/* End mobile */

/* End Latest News */

/* ==========================================
=! ABOUT US
------------------------------------------ */

.page-about-us p,
.page-about-us p[class^='text'] {
  color: var(--neutral-3);
}

.gpc-aboutus {
  padding-top: 100px;
  padding-bottom: 100px;
  background: linear-gradient(
    to bottom,
    var(--neutral-5) 0,
    var(--neutral-5) 40%,
    var(--color-white) 40%,
    var(--color-white) 100%
  );
}

@media (max-width: 767px) {
  .gpc-aboutus {
    padding-top: 60px;
  }
}

.gpc-aboutus-icon {
  padding-bottom: 25px;
}

.gpc-aboutus-content p.text1 {
  max-width: 700px;
  padding-bottom: 60px;
  margin-right: auto;
  margin-left: auto;
  color: var(--color-white);
}

.gpc-aboutus-img {
  width: 100%;
  max-width: 1100px;
  margin-right: auto;
  margin-left: auto;
}

.gpc-aboutus-img img {
  width: 100%;
}

.gpc-aboutus-desc {
  width: 100%;
  max-width: 1100px;
  padding-top: 120px;
  margin-right: auto;
  margin-left: auto;
}

@media (max-width: 767px) {
  .gpc-aboutus-desc {
    padding-top: 60px;
  }
}

.gpc-aboutus-desc .gb-grid-column:first-child {
  padding-right: 15px;
}

.gpc-aboutus-desc .gb-grid-column:last-child {
  padding-left: 15px;
}

@media (max-width: 767px) {
  .gpc-aboutus-desc .gb-grid-column:last-child {
    padding-left: 0;
  }
}

.gpc-aboutus-mission {
  padding-top: 48px;
  padding-bottom: 48px;
}

@media (max-width: 767px) {
  .gpc-aboutus-mission {
    padding-top: 80px;
  }
}

.gpc-aboutus-mission-inner .gpc-col-left {
  position: relative;
  z-index: 2;
  max-width: calc(1440px / 2);
  margin-left: auto;
}

@media (min-width: 1024px) {
  .gpc-aboutus-mission-inner .gpc-col-right {
    position: absolute;
    top: calc(50% - 205px);
    right: 40px;
    max-width: 460px;
  }
}

@media (min-width: 1200px) {
  .gpc-aboutus-mission-inner .gpc-col-right {
    top: calc(50% - 265px);
    max-width: 595px;
  }
}

@media (min-width: 1300px) {
  .gpc-aboutus-mission-inner .gpc-col-right {
    top: calc(50% - 295px);
    max-width: 665px;
  }
}

.gpc-aboutus-mission-inner .gpc-mission-img {
  position: relative;
  overflow: hidden;
  height: 100%;
}

.gpc-aboutus-mission-inner .gpc-mission-img::before {
  position: absolute;
  z-index: 1;
  top: -18%;
  left: -84px;
  width: 100px;
  height: 135%;
  border-radius: 100%;
  background: var(--neutral-1);
  content: '';
}

@media (min-width: 1024px) {
  .gpc-aboutus-mission-inner .gpc-mission-img::before {
    top: -13%;
    left: -160px;
    width: 200px;
    height: 128%;
  }
}

// TODO: remove once new About Us page is approved
.gpc-aboutus-goals {
  padding-top: 137px;
  padding-bottom: 137px;
}

@media (max-width: 767px) {
  .gpc-aboutus-goals {
    padding-top: 65px;
    padding-bottom: 65px;
  }
}

.gpc-aboutus-intro {
  padding-top: 100px;
  padding-bottom: 100px;
  background: var(--neutral-5);
}

/* ==========================================
=! PRICING
------------------------------------------ */

.pricing-faqs__section {
  padding-top: 83px;
  padding-bottom: 83px;
  background: var(--pricing-faq-section-bg);
}

.attachment-266x266,
.thumbnail img {
  width: 100% !important;
  height: auto !important;
}

/*Out of the box*/

.gpc-noaccess-title {
  margin-top: 28px;
  margin-bottom: 12px;
}
