/*
Theme Name: Jovirelith
Theme URI: https://jovirelith.com/
Author: Jovirelith
Author URI: https://jovirelith.com/
Version: 2.0
*/

/*--------------------------------------------------------------
This is main CSS file that contains custom style rules used by the site
--------------------------------------------------------------*/

/*------------------------------------*\
    Table of contents
\*------------------------------------*/

/*------------------------------------------------

CSS STRUCTURE:

1. VARIABLES

2. GENERAL TYPOGRAPHY
  2.1 General Styles
  2.2 Background Color
  2.3 Section
    - Section Paddings
    - Section Margins
    - Section Title
  2.4 Buttons
    - Primary Buttons
    - Button Hover Effect

3. CONTENT ELEMENTS
  - Dropdown
  - Breadcrumb
  - Pagination
  - Accordion
  - Form
  - Swiper
  - Modal Video

4. SITE STRUCTURE
  4.1 Header
  4.2 Brand Section
  4.3 About Section
  4.4 Services Section
  4.5 Project Section
  4.6 CTA Section

5. PAGES STYLE
  5.1 Projects Page
  5.2 Pricing page 
  5.3 Reviews page
    

  
/*--------------------------------------------------------------
/** 1. VARIABLES
--------------------------------------------------------------*/
:root {
  --primary-color: #4dc876;
  --secondary-color: #050708;
  --black-color: #0B0D10;
  --light-black-color: #161A1C;
  --dark-color: #101315;
  --body-color: #4D5658;
  --gray-color: #6F7C7E;
  --light-color: #FBF8EF;
  --aurora-color: #7ADDC4;
  --ice-color: #B9E7F2;
  --bronze-color: #4dc876;
  --ivory-color: #4dc876;

  /* Bootstrap Theme Color  */
  --bs-gray-100: #F1EFE7;
  --bs-gray-300: #D8D2C4;
  --bs-primary-text-emphasis: var(--primary-color);
  --bs-body-color-rgb: 90, 90, 90;
  --bs-light-rgb: rgba(255, 255, 255, 1);
  --bs-dark-rgb: 41, 41, 41;
  --bs-primary-rgb: 200, 162, 77;
}

/* Fonts */
:root {
  --heading-font: "Poppins", sans-serif;
  --body-font: "Poppins", sans-serif;
}

/*----------------------------------------------*/
/* 2 GENERAL TYPOGRAPHY
/*----------------------------------------------*/

/* 2.1 General Styles
/*----------------------------------------------*/
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  box-sizing: border-box;
}

body {
  background-color: var(--light-color);
  font-family: var(--body-font);
  font-size: 16px;
  font-weight: 400;
  line-height: 164%;
  letter-spacing: 0.32px;
  color: var(--body-color);
  margin: 0;
}

p {
  color: var(--body-color);
}

a {
  color: inherit;
  text-decoration: none;
  transition: 0.3s ease-in-out;
}

a:hover {
  color: var(--primary-color);
}

.eQEYydJSG {
  color: var(--light-color) !important;
}

.fQfByk {
  color: var(--primary-color) !important;
}

.VWqHaGT2 {
  color: var(--black-color) !important;
}

/* 2.2 Background Color
/*----------------------------------------------*/
.GPBzyy8Db {
  background-color: var(--light-color) !important;
}

.jcAFMPZ78F {
  background-color: var(--primary-color) !important;
}

.f45mfKoWdZ {
  background-color: var(--secondary-color) !important;
}

.HXmqxew3 {
  background-color: var(--bs-gray-100) !important;
}


/*--------------------------------------------------------------
/** 2.3 Section
--------------------------------------------------------------*/
/* - Section Padding
--------------------------------------------------------------*/
.TdhLhT {
  padding-top: 8em;
  padding-bottom: 8em;
}

.wGZB4W {
  padding-top: 10em;
  padding-bottom: 10em;
}

.SGmgYBpo {
  padding-top: 12em;
  padding-bottom: 12em;
}

@media only screen and (max-width: 990px) {
  .TdhLhT {
    padding-top: 6em;
    padding-bottom: 6em;
  }
}

/* - Section Margin
--------------------------------------------------------------*/
.Vt4fbHKX5v {
  margin-top: 8.125em;
  margin-bottom: 8.125em;
}

.L2VUm7cK9 {
  margin-top: 10em;
  margin-bottom: 10em;
}

.xnJgHamDI {
  margin-top: 12em;
  margin-bottom: 12em;
}


/* - Section Title
--------------------------------------------------------------*/
h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--dark-color);
  font-family: var(--heading-font);
  text-transform: capitalize;
  font-weight: 600;
  letter-spacing: 0.84px;
  line-height: 115%;
}

h6 {
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.3rem;
}

/* - Content width
--------------------------------------------------------------*/
.T9tpJn6i {
  max-width: 1465px;
}

.GNd4TOZ8wi {
  max-width: 1750px;
}

/* Animation */
@media (min-width: 200px) {
  .animate {
    animation-duration: 0.3s;
    -webkit-animation-duration: 0.3s;
    animation-fill-mode: both;
    -webkit-animation-fill-mode: both;
  }
}

/* Animate Slide */
@keyframes slide {
  0% {
    transform: translateY(1rem);
    opacity: 0;
  }

  100% {
    transform: translateY(0rem);
    opacity: 1;
  }

  0% {
    transform: translateY(1rem);
    opacity: 0;
  }
}

@-webkit-keyframes slide {
  0% {
    -webkit-transform: transform;
    -webkit-opacity: 0;
  }

  100% {
    -webkit-transform: translateY(0);
    -webkit-opacity: 1;
  }

  0% {
    -webkit-transform: translateY(1rem);
    -webkit-opacity: 0;
  }
}

.slide {
  -webkit-animation-name: slide;
  animation-name: slide;
}

/*--------------------------------------------------------------
/** 2.4 Buttons
--------------------------------------------------------------*/

.btn {
  --bs-btn-padding-x: 2rem;
  --bs-btn-padding-y: 1rem;
  --bs-btn-font-size: 1rem;
  --bs-btn-font-weight: 500;
  text-transform: uppercase;
  border-radius: 0px;
  transition: all 0.5s ease-in-out;
}

/* - Primary Buttons
--------------------------------------------------------------*/
.zVF8yzp7G {
  --bs-btn-color: var(--light-color);
  --bs-btn-bg: var(--primary-color);
  --bs-btn-border-color: var(--primary-color);
  --bs-btn-hover-color: var(--light-color);
  --bs-btn-hover-bg: var(--primary-color);
  --bs-btn-hover-border-color: var(--primary-color);
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  --bs-btn-active-color: var(--light-color);
  --bs-btn-active-bg: var(--primary-color);
  --bs-btn-active-border-color: var(--primary-color);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: var(--light-color);
  --bs-btn-disabled-bg: var(--primary-color);
  --bs-btn-disabled-border-color: var(--primary-color);
}

/* - Button Hover Effect
--------------------------------------------------------------*/
.C0UMLB.bkO3UiiV4 {
  background-color: var(--light-color);
}

.C0UMLB {
  position: relative;
  display: inline-block;
  border: none;
  cursor: pointer;
  background-color: var(--secondary-color);
}

.C0UMLB.TZYTTvRJe::before {
  top: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 3%;
  position: absolute;
  content: "";
  background-color: var(--primary-color);
  transition: 0.3s ease-in-out;
}

.C0UMLB span {
  position: relative;
  display: inline-block;
  top: 0;
  left: 0;
  width: 100%;
  transition: 0.3s;
  font-weight: 600;
}

.C0UMLB.TZYTTvRJe:hover::before {
  width: 100%;
}

.C0UMLB.TZYTTvRJe:hover span {
  color: var(--light-color);
}

/*--------------------------------------------------------------
/** 3.CONTENT ELEMENTS
--------------------------------------------------------------*/

/* Dropdown
------------------------------------------------------------- */
.dropdown-item {
  text-transform: uppercase;
  font-weight: 500;
  color: var(--dark-color);
  font-family: var(--heading-font);
}

.dropdown-item.active,
.dropdown-item:hover,
.dropdown-item:active {
  color: var(--dark-color);
  background-color: var(--bs-gray-300);
}

.dropdown-toggle::after {
  border: none;
  margin-left: 0em;
  vertical-align: 0em;
}


/* Breadcrumb
------------------------------------------------------------- */
.y9K4eVWV9R+.y9K4eVWV9R::before {
  color: var(--bs-light);
  position: relative;
}


/* Pagination
------------------------------------------------------------- */
.pagination {
  --bs-pagination-color: var(--black-color);
  --bs-pagination-hover-color: #fff;
  --bs-pagination-hover-bg: var(--primary-color);
  --bs-pagination-hover-border-color: var(--primary-color);
  --bs-pagination-focus-color: #fff;
  --bs-pagination-focus-bg: var(--primary-color);
  --bs-pagination-focus-box-shadow: none;
  --bs-pagination-active-bg: var(--primary-color);
  --bs-pagination-active-border-color: var(--primary-color);
}


/* Accordion
------------------------------------------------------------- */
.vyWOjeu {
  --bs-accordion-btn-icon: none;
  --bs-accordion-btn-active-icon: none;
  --bs-accordion-border-radius: 0px;
}

.roHnG1z:focus {
  box-shadow: none;
}

.roHnG1z:not(.collapsed) {
  background-color: transparent;
  box-shadow: none;
}


/* Form
------------------------------------------------------------- */
.gyEBPcJZNA:focus {
  border: 1px solid #acacac;
  box-shadow: none;
}


/* Swiper
------------------------------------------------------------- */
.UlUiJL2xqkG>.WRfqE8MFGYY .eCurtUVe,
.Lxpn2uaf2o.WRfqE8MFGYY .eCurtUVe {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 8px);
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 12px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 12px));
}

.eCurtUVe.YupTlOF {
  background: var(--dark-color);
}


/* Modal Video
------------------------------------------------------------- */
.modal-dialog {
  max-width: 800px;
  margin: auto;
  height: 100vh;
  display: flex;
  align-items: center;
}

.qIDc9xPLAd {
  padding: 0;
  background-color: #f5f3ef;
  border: none;
  border-radius: 0
}



/*----------------------------------------------*/
/* 4 SITE STRUCTURE */
/*----------------------------------------------*/

/* 4.1 Header
/*----------------------------------------------*/
a.nav-link {
  text-transform: capitalize;
  font-weight: 500;
  color: var(--dark-color);
  font-family: var(--heading-font);
  transition: all 0.3s ease-in-out;
}

a.nav-link::after {
  content: "";
  text-align: center;
  display: block;
  width: 0;
  height: 2px;
  background: var(--primary-color);
  transition: width 0.9s;
}

a.nav-link.active::after,
a.nav-link:focus::after,
a.nav-link:hover::after {
  width: 100%;
  transition: width 0.9s;
}

#primary-header .dropdown .ov7Oju::after {
  content: none;
}

#primary-header .gnNvqpq00OH .dropdown-menu {
  width: 260px;
}

#primary-header .gnNvqpq00OH .dropdown-menu input {
  min-width: 100%;
}

#primary-header .gnNvqpq00OH .dropdown-menu button {
  padding: 0 12px;
  min-height: -webkit-fill-available;
  border-radius: 0.25rem;
}

@media only screen and (max-width: 990px) {
  a.nav-link {
    font-size: 1.5rem;
  }

  a.nav-link.active::after,
  a.nav-link:focus::after,
  a.nav-link:hover::after {
    width: 0%;
  }

  a.nav-link.active,
  a.nav-link:focus,
  a.nav-link:hover {
    color: var(--primary-color) !important;
  }
}


/* 4.2 Brand Section
/*----------------------------------------------*/
img.MHstR0KKT {
  filter: contrast(0);
  transition: all 0.3s ease-in;
}

img.MHstR0KKT:hover {
  filter: contrast(1);
}


/* 4.3 About Section 
/*----------------------------------------------*/
svg.vrVwru {
  animation: play 1.5s alternate infinite ease-in;
}

@keyframes play {
  0% {
    transform: scale(.8);
  }

  100% {
    transform: scale(1.1);
  }
}



/* 4.4 Services Section
/*----------------------------------------------*/
/* Jarallax */
.jarallax {
  min-height: 350px;
  transition: all 0.5s ease-in-out;
}

.jYeoPKDeu1 {
  transition: all 0.5s ease-in-out;
}

.jYeoPKDeu1:hover .jarallax {
  opacity: 0;
}

.O7rb3JNH {
  transition: all 0.5s ease-in-out;
}

.jYeoPKDeu1:hover .O7rb3JNH {
  color: var(--dark-color);
  background-color: var(--primary-color);
  border-color: var(--primary-color);
}


/* 4.5 Project Section
/*----------------------------------------------*/
.WQVHGY6lH.xjDbXQwK {
  width: auto !important;
}

.OgDcbhI .zZeg5zdLpL {
  transition: all 0.5s ease-in-out;
}

.OgDcbhI:hover .zZeg5zdLpL {
  opacity: 0.3;
}

.tk5yAkeJwYv {
  opacity: 0;
  transition: all 0.5s ease-in-out;
}

.OgDcbhI:hover .tk5yAkeJwYv {
  opacity: 1;
}



/* 4.6 CTA Section
/*----------------------------------------------*/
.YHu8DqH {
  border: 2px dashed rgba(255, 255, 255, 0.5);
}






/*----------------------------------------------*/
/* 5 PAGES STYLE */
/*----------------------------------------------*/


/* 5.1 Projects Page
/*----------------------------------------------*/

button.filter-button {
  border: 0;
  background: transparent;
  text-transform: uppercase;
  transition: all 0.5s ease-in-out;
  border-radius: 20px;
}

button.filter-button.active,
button.filter-button:hover {
  color: var(--bs-light);
  background: var(--primary-color);
}


/*--------------------------------------------------------------
 5.2 Pricing page 
  --------------------------------------------------------------*/
.N6btlRcXmb2 {
  border: 1px solid var(--secondary-color);
}

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

.bnpD9U {
  height: 300px;
}


/*--------------------------------------------------------------
 5.3 Reviews page
--------------------------------------------------------------*/

.rwJdti {
  box-shadow: 0px 12px 90px rgba(12, 12, 12, 0.06);
}

iconify-icon.YGRv2FABWoI {
  font-size: 60px;
  color: var(--primary-color);
}

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

/* Jovirelith adaptation
--------------------------------------------------------------*/
body {
  background-color: var(--ivory-color);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  text-transform: none;
}

h6 {
  letter-spacing: 0.18rem;
}

.VWqHaGT2 {
  color: var(--black-color) !important;
}

.TlWMZLfsY {
  color: rgba(251, 248, 239, 0.72) !important;
}

#header {
  background-color: var(--ivory-color);
  position: relative;
  z-index: 10;
}

.xEliX0pi7s {
  gap: 1rem;
}

.gefJoT {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  color: var(--black-color);
  font-family: var(--heading-font);
  font-weight: 800;
  letter-spacing: 0;
}

.gefJoT:hover {
  color: var(--black-color);
}

.sZaGPYz8u {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border: 2px solid var(--primary-color);
  color: var(--aurora-color);
  background: var(--secondary-color);
  font-size: 1rem;
  font-weight: 800;
}

.offcanvas {
  background-color: var(--ivory-color);
}

a.nav-link {
  text-transform: none;
}

#billboard {
  background:
    radial-gradient(circle at 15% 18%, rgba(122, 221, 196, 0.16), transparent 32%),
    radial-gradient(circle at 74% 26%, rgba(185, 231, 242, 0.12), transparent 28%),
    var(--secondary-color);
}

.TtnJnTQ {
  max-width: 760px;
}

.odRV1klFIt {
  width: 100%;
  min-height: 680px;
  object-fit: cover;
}

.Rsia4UZf {
  width: 100%;
  min-height: 420px;
  object-fit: cover;
}

.BXMOAXsMg {
  background:
    linear-gradient(135deg, rgba(122, 221, 196, 0.14), rgba(185, 231, 242, 0.2)),
    var(--ivory-color);
}

.r9x1qud {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 84px;
  min-height: 42px;
  padding: 0.5rem 1rem;
  border: 1px solid var(--primary-color);
  background: var(--secondary-color);
  color: var(--aurora-color);
  font-weight: 800;
  letter-spacing: 0;
}

.y1CGQg {
  min-height: 520px;
  background-color: var(--secondary-color);
}

.y1CGQg .jarallax {
  min-height: 520px;
}

.y1CGQg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(5, 7, 8, 0.08), rgba(5, 7, 8, 0.84));
  pointer-events: none;
}

.y1CGQg .q59ilzWMq {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}

.B8AuVXh,
.IWZgg1 {
  background-color: #fffdf7;
  border: 1px solid rgba(154, 106, 58, 0.22);
  box-shadow: 0 20px 70px rgba(11, 13, 16, 0.08);
}

.B8AuVXh {
  overflow: hidden;
}

.B8AuVXh img {
  width: 100%;
  height: 270px;
  object-fit: cover;
}

.IWZgg1 {
  padding: 2rem;
}

.EuU64s {
  border-left: 5px solid var(--primary-color);
  background:
    linear-gradient(135deg, rgba(122, 221, 196, 0.12), rgba(185, 231, 242, 0.08)),
    var(--secondary-color);
  color: var(--ivory-color);
  padding: 2rem;
}

.EuU64s h2,
.EuU64s h3,
.EuU64s h4,
.EuU64s p {
  color: var(--ivory-color);
}

.kSb8eDwBV {
  position: relative;
}

.kSb8eDwBV::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(5, 7, 8, 0.72);
}

.kSb8eDwBV .container {
  position: relative;
  z-index: 1;
}

.Zz83SA li {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  margin-bottom: 1rem;
  color: var(--black-color);
  font-weight: 500;
}

.Av1eXrUjsDZ .gyEBPcJZNA,
.Av1eXrUjsDZ .Nwbe9xr {
  border-radius: 0;
  border-color: rgba(154, 106, 58, 0.32);
}

.cL7q9i h2 {
  margin-top: 2.25rem;
  margin-bottom: 0.85rem;
}

.cL7q9i h2:first-child {
  margin-top: 0;
}

.cL7q9i p {
  font-size: 1.04rem;
}

.YYVkoEkswr {
  background-color: transparent;
  border-color: rgba(154, 106, 58, 0.24);
}

.roHnG1z::after {
  content: "+";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--primary-color);
  font-size: 1.75rem;
  font-weight: 500;
  background-image: none !important;
  transform: none !important;
}

.roHnG1z:not(.collapsed)::after {
  content: "-";
}

.rwJdti {
  background-color: #fffdf7;
}

#footer {
  background-color: var(--secondary-color);
}

#footer h5,
#footer a,
#footer p,
#footer li {
  color: var(--ivory-color);
}

#footer .gefJoT {
  color: var(--ivory-color);
}

#footer .bExQHjcyo {
  color: var(--ice-color);
  font-weight: 600;
}

.iGr7Sh p,
.iGr7Sh a {
  color: rgba(251, 248, 239, 0.78) !important;
}

.hdUojiuh {
  position: fixed;
  right: 1.25rem;
  bottom: 1.25rem;
  left: 1.25rem;
  z-index: 1080;
  display: none;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  max-width: 1060px;
  margin: 0 auto;
  padding: 1rem 1.25rem;
  background: rgba(5, 7, 8, 0.96);
  border: 1px solid rgba(200, 162, 77, 0.5);
  color: var(--ivory-color);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34);
}

.hdUojiuh.is-visible {
  display: flex;
}

.hdUojiuh p,
.hdUojiuh strong {
  color: var(--ivory-color);
}

.fNt7oSu {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: flex-end;
}

@media only screen and (max-width: 990px) {
  .xEliX0pi7s {
    align-items: flex-start !important;
    flex-direction: column;
  }

  .info {
    justify-content: flex-start !important;
    gap: 0.75rem;
  }

  .info li {
    margin-left: 0 !important;
  }

  .odRV1klFIt {
    min-height: 360px;
  }

  .Rsia4UZf {
    min-height: 320px;
  }

  .hdUojiuh {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media only screen and (max-width: 575px) {
  .gefJoT {
    font-size: 1rem;
  }

  .sZaGPYz8u {
    width: 44px;
    height: 44px;
  }

  .btn {
    --bs-btn-padding-x: 1.15rem;
    --bs-btn-padding-y: 0.85rem;
  }
}

