
/* Global */

:root {
   --principalColor: #092958;
   --secondaryColor: #3acbcb;
   --lightColor: #ffffff;
   --darkColor: #000000;
}

/* Settings */

body {
   font-family: 'Source Sans Pro', sans-serif;
}

.container-custom {
   /* max-width: 1280px; */
   max-width: 94vw;
   margin-left: auto;
   margin-right: auto;
}

@media screen and (max-width: 768px) {
   .container-custom {
      max-width: 88vw;
   }
}

img {
   display: block;
}

a {
   text-decoration: none;
}

ul {
   margin-top: 0;
}

/* Navbar */

.navigation {
   height: 13vh;
   background-color: var(--principalColor);
}

.navigation .container-custom {
   display: grid;
   grid-template-columns: auto 1fr;
   grid-column-gap: 1rem;
   align-items: center;
   height: 100%;
}

.logo__image {
   width: 12rem;
}

.menu {
   list-style: none;
   display: flex;
   justify-content: flex-end;
   flex-wrap: wrap;
   margin-bottom: 0;
   padding-left: 0;
}

.menu__item {
   margin-right: 1rem;
}

.menu__item:last-of-type {
   margin-right: 0 !important;
}

.menu__link {
   color: var(--lightColor);
   text-transform: uppercase;
   font-size: 0.9rem;
}

.menu__link:hover {
   color: var(--secondaryColor);
   text-decoration: none;
}

.menu__image {
   width: 6rem;
}

.bars-button__toggle {
   display: none;
   /**/
   border: none;
   background-color: transparent;
   color: var(--lightColor);
   font-size: 1.25rem;
}

.bars-button__toggle:focus,
.bars-button__toggle:active,
.bars-button__toggle:hover {
   outline: none;
}

/* Header */

.header {
   padding: 3rem;
   background-image: url('../images/header.jpg');
   background-repeat: no-repeat;
   background-position: center;
   background-size: cover;
   position: relative;
   z-index: 1;
}

@media screen and (max-width: 768px) {
   .header {
      display: none;
   }
}

.header .container-custom {
   width: 76%;
}

.header:before {
   content: '';
   display: block;
   width: 100%;
   height: 100%;
   position: absolute;
   top: 0;
   left: 0;
   background-color: rgba(76, 221, 226, 0.3);
   z-index: -1;
}

.header__grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   border: 1px solid var(--principalColor);
   background-color: rgba(9, 41, 88, 0.5);
}

.header__link {
   display: block;
   border: 1px solid var(--principalColor);
   padding: 4rem 2rem;
   /* background-color: red; */
   text-align: center;
   text-transform: uppercase;
   color: var(--lightColor);
   font-weight: 700;
   font-size: 1.25rem;
   transition: all 300ms ease;
}

@media screen and (max-width: 992px) {
   .header .container-custom {
      width: 85%;
   }
}


@media screen and (max-width: 768px) {
   .header .container-custom {
      width: 90%;
   }
   
   .menu {
      display: none;
   }
   
   .header__grid {
      grid-template-columns: repeat(2, 1fr);
   }

   .header {
      padding: 2rem 1rem;
   }

   .header__link {
      padding: 2rem;
   }
}

@media screen and (max-width: 768px) {
   .header__grid {
      grid-template-columns: 1fr;
   }
}

.header__link:hover {
   text-decoration: none;
   color: var(--secondaryColor);
   background-color: var(--principalColor);
}

/* Card Loan */

.card-loan {
   margin-top: 4rem;
   margin-bottom: 4rem;
}

.card-loan__body {
   max-width: 900px;
   margin-left: auto;
   margin-right: auto;
}

.card-loan__title {
   text-transform: uppercase;
   font-weight: 700;
   font-size: 1.7rem;
   color: var(--principalColor);
   margin-bottom: 2rem;
   text-align: center;
}

.card-loan__item {
   background: rgb(58,203,203);
   background: linear-gradient(90deg, rgba(58,203,203,1) 22%, rgba(20,76,113,1) 70%, rgba(9,41,88,1) 100%);

   display: grid;
   grid-template-columns: 1.25fr 1fr;
   grid-column-gap: 4rem;
   padding: 1.5rem 3rem;
   align-items: center;
   position: relative;
   margin-bottom: 1.5rem;
}

.card-loan__item:before {
   content: '';
   display: block;
   background-color: var(--secondaryColor);
   /* background-color: red; */
   clip-path: polygon(0 0, 66% 0, 62% 15%, 0 15%);
   position: absolute;
   top: -0.5rem;
   left: -0.5px;
   width: 31rem;
   height: 20rem;
}

.card-loan__picture {
   z-index: 10;
}

.card-loan__image {
   max-width: 30rem;
   width: 100%;
}

@media screen and (max-width: 768px) {
   .card-loan__image {
      max-width: 100%;
   }
}

.card-loan__info {
   color: var(--lightColor);
}

.card-loan__name {
   text-transform: uppercase;
   font-weight: 700;
   font-size: 1.5rem;
}

.card-loan__description {
   font-size: 1rem;
   /* padding-right: 2rem; */
}

.card-loan__action {
   margin-top: 1.5rem;
}

.card-loan__button {
   display: inline-block;
   padding: 0.5rem 1.7rem;
   background-color: var(--secondaryColor);
   color: var(--lightColor);
   font-weight: 700;
   text-transform: uppercase;
   transition: all 300ms ease;
}

.card-loan__button:hover {
   text-decoration: none;
   color: var(--principalColor);
}

@media screen and (max-width: 768px) {
   .card-loan__body {
      max-width: 100%;
   }
   
   .card-loan__item {
      grid-template-columns: 1fr;
      grid-row-gap: 1rem;
      padding: 1rem;
   }

   .card-loan__item:before {
      width: 20rem;
   }

   .card-loan__button {
      background-color: var(--principalColor);
   }

   .card-loan__button:hover {
      background-color: var(--principalColor);
      color: var(--lightColor);
   }
}

.card-loan__detail {
   margin-top: 5rem;
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   grid-gap: 2rem;
}

@media screen and (max-width: 768px) {
   .card-loan__detail {
      grid-template-columns: 1fr;
   }
}

.card-loan__box {
   -webkit-box-shadow: 10px 10px 10px -10px rgba(0,0,0,0.5);
   -moz-box-shadow: 10px 10px 10px -10px rgba(0,0,0,0.5);
   box-shadow: 10px 10px 10px -10px rgba(0,0,0,0.5);
   padding: 2rem 1rem;
}

.card-loan__box:nth-child(1) {
   grid-row: 1 / 3;
}

.card-loan__box:nth-child(3) {
   grid-row: 1 / 2;
}

.card-loan__box:nth-child(3) {
   grid-column: 2 / 3;
   grid-row: 2 / 3;
}


@media screen and (max-width: 768px) {
   .card-loan__detail {
      grid-template-columns: 1fr;
      grid-template-rows: repeat(3, auto);
   }

   .card-loan__box:nth-child(1) {
      grid-column: 1 / 2;
      grid-row: 1 / 2;
   }

   .card-loan__box:nth-child(2) {
      grid-column: 1 / 2;
      grid-row: 2 / 3;
   }

   .card-loan__box:nth-child(3) {
      grid-column: 1 / 2;
      grid-row: 3 / 4;
   }
}

.card-loan__title-detail {
   text-align: center;
   color: var(--secondaryColor);
   text-transform: uppercase;
   font-size: 1.5rem;
   margin-bottom: 2rem;
}

.card-loan__list {
   list-style: none;
   padding-left: 0.5rem;
}

.card-loan__item-detail {
   margin-bottom: 0.5rem;
   color: #444;
   position: relative;
   line-height: 1.5;
}

.card-loan__item-detail a {
   color: var(--secondaryColor);
   text-decoration: none;
}


.card-loan__item-detail:before {
   content: '';
   display: block;
   width: 5px;
   height: 5px;
   background-color: var(--secondaryColor);
   position: absolute;
   top: 0.6rem;
   left: -0.8rem;
   border-radius: 50%;
}

/* Calculator */

.calculator {
   display: grid;
   grid-template-columns: 1.75fr 1fr;
   grid-column-gap: 2rem;
   margin-top: 3rem;
   background-color: hsl(0, 0%, 96%);
   padding-left: 2rem;
}

.calculator__form {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   grid-gap: 2rem;
   padding-top: 6rem;
   padding-bottom: 3rem;
   position: relative;
}

.calculator__title {
   position: absolute;
   top: 1rem;
   left: -2.5rem;
   font-weight: 700;
   font-size: 1.5rem;
   color: var(--lightColor);
   background-color: var(--secondaryColor);
   padding: 0.5rem 1.2rem;
}

.calculator__input {
   display: block;
   width: 100%;
   border: 1px solid var(--principalColor);
   height: 2rem;
   padding-left: 0.5rem;
}

.calculator__span {
   display: block;
   color: #444;
   font-size: 0.9rem;
   margin-bottom: 0.35rem;
}

.calculator__select {
   display: block;
   width: 100%;
   height: 2rem;
   border: 1px solid var(--principalColor);
   background-color: var(--lightColor);
}

.calculator__select:focus,
.calculator__select:active,
.calculator__select:hover {
   outline: none;
}

.calculator__input:focus,
.calculator__input:active,
.calculator__input:hover {
   outline: none;
}

.calculator__button {
   display: block;
   width: 100%;
   border: none;
   background-color: var(--principalColor);
   color: var(--lightColor);
   padding: 0.6rem;
   text-align: left;
   transition: all 300ms ease;
   text-align: center;
   font-weight: 700;
   text-transform: uppercase;
}

.calculator__button:hover {
   background-color: rgba(9,41,88,0.9);
}

.calculator__image {
   width: 100%;
   object-fit: cover;
   height: 100%;
}

.calculator__group--result {
   display: flex;
   align-items: center;
   color: var(--principalColor);
   font-size: 1.15rem;
}

.calculator__result {
   display: block;
}

.calculator__footer {
   padding: 2rem 3rem;
   text-align: center;
   font-size: 0.8rem;
   margin-top: 1.5rem;
   background-color: rgba(58, 203, 203, 0.35);
   margin-top: 0;
   margin-bottom: 0;
}

.calculator__footer:last-of-type {
   padding-top: 0;
}

.calculator-credit__action {
   display: flex;
   justify-content: center;
   margin-top: 2rem;
}

.calculator-credit__button {
   background-color: var(--principalColor);
   text-decoration: none;
   padding: 0.7rem 2.5rem;
   color: var(--lightColor);
   font-weight: 700;
   text-transform: uppercase;
   border: none;
}

.calculator-credit__button:hover {
   text-decoration: none;
   background-color: rgba(9,41,88,0.9);
}

.calculator-credit__button:focus,
.calculator-credit__button:active,
.calculator-credit__button:hover {
   outline: none;
}

@media screen and (max-width: 768px) {
   .calculator {
      grid-template-columns: 1fr;
      padding-right: 2rem;
   }

   .calculator__form {
      grid-template-columns: 1fr;
   }
}

/* Modal Credit */

.modal-custom {
   position: fixed;
   top: 50%;
   left: 50%;
   width: 55%;
   height: 90%;
   transform: translate(-50%, -2000px);
   background-color: var(--lightColor);
   z-index: 100;
   transition: 300ms;
   overflow-y: scroll;
   padding-bottom: 2rem;
}

@media screen and (min-width: 1400px) {
   .modal-custom {
      height: auto;
      overflow-y: initial;
   }
}

@media screen and (max-width: 768px) {
   .modal-custom {
      width: 95%;
   }
}

.modal-custom.active {
   transform: translate(-50%, -50%);
}

.overlay {
   position: fixed;
   top: 0;
   left: 0;
   z-index: 10;
}

.overlay.active {
   background-color: rgba(0,0,0,0.4);
   width: 100vw;
   height: 100vh;
}

/* Modal Custom */

.modal-header {
   height: 100px;
   background: rgb(58,203,203);
   background: linear-gradient(90deg, rgba(58,203,203,1) 22%, rgba(20,76,113,1) 70%, rgba(9,41,88,1) 100%);
   display: flex;
   justify-content: center;
   align-items: center;
   padding: 0;
   position: relative;
   z-index: 1;
}

.modal-header:before {
   content: '';
   display: block;
   width: 28vw;
   height: 6.5rem;
   background-color: var(--secondaryColor);
   position: absolute;
   top: -1rem;
   left: 0;
   clip-path: polygon(0 0, 82% 0, 73% 100%, 0 100%);
   z-index: -10;
}

.modal-header__title {
   margin: 0;
   text-transform: uppercase;
   color: var(--lightColor);
   font-weight: 700;
   font-size: 1.75rem;
}

.modal-main {
   padding-top: 1.5rem;
}

@media screen and (min-width: 1400px) {
   .modal-main {
      padding-bottom: 2rem;
   }
}

.modal-main__title {
   text-align: center;
   font-weight: 500;
   color: var(--secondaryColor);
}

.modal-form {
   padding: 0 4rem;
}

@media screen and (max-width: 768px) {
   .modal-form {
      padding: 0 2rem;
   }
}

.modal-form__title {
   display: block;
   font-size: 0.9rem;
   color: rgb(105, 105, 105);
}

.modal-group-custom {
   margin-bottom: 1rem;
}

.modal-form__input {
   display: block;
   width: 100%;
   height: 2.2rem;
   border: 1px solid var(--principalColor);
   padding-left: 0.5rem;
   background-color: inherit;
}

.modal-form__input:focus,
.modal-form__input:focus:active {
   outline: none;
}

.modal-action-custom {
   display: flex;
   justify-content: center;
   margin-top: 2rem;
}

.modal-submit {
   display: inline-block;
   background-color: var(--secondaryColor);
   color: var(--lightColor);
   padding: 0.7rem 1.5rem;
   border: none;
   cursor: pointer;
}

.modal-submit:active,
.modal-submit:focus {
   outline: none;
}