/* ===============================
   GLOBAL
================================ */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700&family=Open+Sans:wght@400;600;700&display=swap');

:root{
  --black:#000;
  --green:#00AA4E;
  --white:#fff;
  --gray:#f5f5f5;
}

body{
  font-family:'Open Sans', sans-serif;
  font-size:16px;
  color:#000;
}

/* ===============================
   NAVBAR
================================ */
.navbar-nav>li>a{
  font-family:'Poppins',sans-serif;
  font-weight:600;
  font-size:14px;
  text-transform:uppercase;
  color:#fff;
}
.navbar-nav>li>a:hover{
  color:var(--green);
}

/* ===============================
   BUTTONS (GLOBAL)
================================ */
.btn-primary,
.product-button,
.shop-checkout-button,
.shop-payment-button,
.btn.shop-button.shop-add-to-cart-button{
  background:var(--black);
  color:var(--white);
  border:1px solid var(--black);
  border-radius:0;
  padding:10px 25px;
  font-weight:600;
  transition:.2s;
}

.btn-primary:hover,
.product-button:hover,
.shop-checkout-button:hover,
.shop-payment-button:hover{
  background:var(--green);
  border-color:var(--green);
  color:#fff;
}

/* Secondary */
.secondary-button{
  background:none;
  border:1px solid var(--green);
  color:var(--green);
  padding:10px;
  font-weight:600;
  border-radius:0;
}

/* ===============================
   PRODUCT LIST
================================ */
.item-container{
  background:#fff;
  box-shadow:0 2px 8px rgb(0 0 0 / 8%);
  padding:15px;
  display:flex;
  flex-direction:column;
  flex:1 20%;
}

.product-price{
  font-weight:700;
  font-size:14px;
  text-align:center;
}

.description-header,
.description-header a{
  font-family:'Open Sans',sans-serif;
  font-size:15px;
  text-align:center;
  color:#000;
}

/* ===============================
   CART
================================ */
.cart-title{
  font-family:'Poppins',sans-serif;
  font-size:36px;
  text-align:center;
}

.cart-product-name,
.flex-1,
.lead{
  font-weight:700;
}

.flex.quantity-controls{
  border:1px solid #ccc;
  padding:5px;
}

.cart-item-count.badge{
  background:var(--green);
  color:#fff;
}

/* ===============================
   CHECKOUT
================================ */
.table-responsive,
.panel,
.checkout-box{
  background:#fff;
  padding:30px;
  border:2px solid var(--green);
  box-shadow:0 4px 10px rgb(0 0 0 / 5%);
}

.panel-heading{
  background:var(--black);
  color:#fff;
  border-radius:0;
  font-family:'Open Sans',sans-serif;
}

/* ===============================
   FORMS
================================ */
.form-control,
.select2-selection{
  font-family:'Open Sans',sans-serif;
  border-radius:0;
}

/* ===============================
   IMAGES
================================ */
.img-fluid{
  transition:.3s;
}
.img-fluid:hover{
  opacity:.9;
}

/* ===============================
   OWL CAROUSEL
================================ */
.owl-nav button{
  background:var(--green);
  border-radius:50%;
  width:24px;
  height:24px;
}
.owl-dots .owl-dot{
  background:#fff;
  opacity:.5;
}
.owl-dots .owl-dot.active{
  opacity:1;
}

/* ===============================
   AUTH BUTTONS
================================ */
a.signin.no-auth{
  background:var(--green);
  color:#000;
  padding:10px 20px;
  font-weight:600;
  border:2px solid var(--green);
}

a.signup.no-auth{
  background:none;
  color:#fff;
  border:2px solid var(--green);
  padding:10px 20px;
}

/* ===============================
   MOBILE
================================ */
@media(max-width:768px){
  h1{font-size:32px;}
  h2{font-size:26px;}

  .item-container{
    flex:1 100%;
    max-width:100%;
  }

  .cart-title{
    font-size:28px;
  }
}
