* {
   font-family: 'Caveat Brush';
   color: black;
}
.logo {
   list-style: none;
   text-decoration: none;
   color: black;
}

/* Login and Sign up*/
.log-in {
   font-size: 35px;
   margin-left: 48%;
   margin-top: 5rem;
}

.login-wrapper {
   margin-left: 35%;
   width: 30%;
   align-content: center;
   border: 1px solid black;
   margin-bottom: 5rem;
   padding: 15px;

}
.login-label {
   color: black;
   font-size: 20px;
   margin-left: 7%;
}

.login_message {
   font-size: 20px;
}

.form-group > input {
   width: 20rem;
   color: black;
   margin-left: 7%;
   margin-bottom: 2rem;
   height: 2rem;
}

.btn-top {
   font-family: 'Caveat Brush';
   margin-left: 30%;
   font-size: 30px;
   color: white;
   background-color: black;
   border: none;
   border-radius: .3rem;
   cursor: pointer;
   width: 30%;
   margin-bottom: 3rem;
   margin-top: 2rem;
}

.register-link {
   font-size: 20px;
   margin-bottom: 1rem;
}
/* End of login/sign up */

/* navbar */
.container {
   display: grid;
   grid-template-columns: minmax(6rem, 1fr) repeat(8, minmax(min-content, 16rem)) minmax(6rem, 1fr);
   grid-template-rows: repeat(3, min-content);
   grid-row-gap: 0.8rem;
   margin-top: 1.5rem;
}

.site-logo {
   grid-column: 2 / 4;
   grid-row: 1 / 2;
   list-style: none;
   align-items: center;
}

.site-logo li {
   font-size: 2.8rem;
   font-family: 'Caveat Brush';
   font-weight: bold;
}

.first-nav {
   grid-column: 8 / 10;
   grid-row: 1 / 2;
}

.first-nav-list {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(4rem, 1fr));
   list-style: none;
}

.first-nav-link {
   text-decoration: none;
   font-size: 1.4rem;
   color: black;
   display: inline-block;
   width: 100%;
   text-align: center;
   color: black;
   font-family: 'Caveat Brush';
}

.first-nav-link::after {
   content: "";
   width: 0;
   height: .1rem;
   background-color: #e3cab3;
   display: block;
}

.first-nav-link:hover::after {
   width: 100%;
   transition: width .2s;
}

.search {
   grid-column: 8 / 10;
   grid-row: 2 / 3;
}

.search-form {
   display: grid;
   grid-template-columns: repeat(10, 10%);
}

.search-input {
   grid-column: 3 / 9;
   grid-row: 1 / 2;
   padding: .3rem .4rem;
   font-size: 1rem;
   border: none;
   border-bottom: .1rem solid black;
   outline: none;
   font-family: 'Caveat Brush'
}

.search-btn {
   grid-column: 8 / 9;
   grid-row: 1 / 2;
   border: none;
   background-color: transparent;
   cursor: pointer;
}

/* second nav bar */
.second-nav {
   grid-column: 2 / 10;
   grid-row: 3 / 4;
   border-bottom: .1rem solid black;

}

.second-nav-list {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
   list-style: none;

}

.second-nav-link {
   text-align: center;
   display: grid;
   text-transform: uppercase;
   text-decoration: none;
   font-size: 1.4rem;
   color: black;
   padding: .8rem 0;
   font-family: 'Caveat Brush';
}

.second-nav-item:hover .second-nav-link, .first-nav-item:hover .first-nav-link {
   transition: all .5s;
}


.second-nav-link::after {
   content: "";
   width: 0;
   height: .1rem;
   background-color: #e3cab3;
   display: block;
   transition: width .3s;
}

.second-nav-item:hover .second-nav-link::before,
.second-nav-item:hover .second-nav-link::after {
   width: 100%;
   background-color: #e3cab3;

}

.second-nav-item, .first-nav-item {
   position: relative;
}

.dropdown-list {
   position: absolute;
   top: 100%;
   width: 12rem;
   background-color: #f2eeeb;
   padding: 1rem;
   visibility: hidden;
   opacity: 0;
}

.dropdown-list-item {
   list-style: none;
}

.dropdown-list-link {
   font-size: 1.3rem;
   text-decoration: none;
   text-transform: uppercase;
   color: black;
   font-family: 'Caveat Brush';
   margin: 0 0 1rem 1.3rem;
   display: block;
}

.dropdown-list-link:hover {
   color: #e3cab3;
}

.second-nav-item:hover .dropdown-list, .first-nav-item:hover .dropdown-list {
   visibility: visible;
   opacity: 1;
   transition: all 1s;
   z-index: 999;
}

/* homepage */
.image-container {
   width: 100%;
   padding-top: 20px;
   padding-bottom: 20px;
   display: flex;
   margin-left: 3%;
}

.image-gallery {
   border: none;
}

.image1 {
   width: 40%;
   position: relative;
}

.image2 {
   margin-left: 10%;
   width: 45%;
   position: relative;
}

.shop-btn {
   position: absolute;
   top: 80%;
   left: 50%;
   transform: translate(-50%, -50%);
   -ms-transform: translate(-50%, -50%);
   background-color: #eee;
   color: black;
   font-size: 16px;
   padding: 12px 24px;
   border: none;
   cursor: pointer;
   border-radius: 5px;
}

/* footer */
.contact {
   grid-column: 1 / -1;
   grid-row: 5 / -1;
   display: flex;
   background-color: #eee;
}

.customer-support {
   font-family: 'Caveat Brush';
   font-size: 1.2rem;
   display: grid;
   align-items : center;
   margin-left: 20%;
   margin-top: 3rem;
   margin-bottom: 3rem;
}

.find-us {
   font-family: 'Caveat Brush';
   font-size: 1.2rem;
   display: grid;
   margin-left: 25%;
   margin-top: 3rem;
   margin-bottom: 3rem;
}

.customer-support-element {
   text-decoration: none;
   color: black;
}
.customer-support-element:hover {
   color: tan;
}


.clothing-products {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   grid-gap: 3rem;
   margin-top: 5rem;
   margin-bottom: 3rem;
}

.product {
    margin-left: 2rem;
    margin-right: 2rem;
}

.product-details {
   font-family: 'Caveat Brush';
   font-size: 20px;
   color: black;
   text-decoration: none;
}

.clothing-img {
    border: none;
    border-radius: .3rem .3rem 0 0;
    height: 450px;
}

#clothing-title:hover {
   text-decoration: underline;
}

.step-links {
   margin-left: 45%;
   font-size: 20px;
}

.product_description_page {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   grid-template-rows: repeat(8, 1fr);
}

.clothing-details-img {
   grid-columns: 1 / 2;
   width: 70%;
   grid-row: 2 / 6;
   margin-left: auto;
   margin-right: auto;
   margin-bottom: 2rem;
}

.details {
   grid-columns: 2 / -1;
   grid-row: 2 / 3;
   font-size: 40px;
   margin-right: auto;
   margin-left: auto;
   display: block;
   font-family: 'Caveat Brush';
}

#sizes {
   width: 20rem;
   height: 3.5rem;
   margin-top: 1rem;
}

.add-to-bag {
   grid-column: 2 / -1;
   grid-row: 3 / 5;
   width: 50%;
   margin-right: auto;
   margin-left: auto;
   height: 40%;
   color: white;
   font-family: 'Caveat Brush';
   font-size: 25px;
   cursor: pointer;
}

.cart-form {
   font-size: 20px;
}

.bag-btn {
   font-family: 'Caveat Brush';
   background-color: black;
   margin-top: 1rem;
   border: none;
   color: white;
   font-size: 20px;
   cursor: pointer;
   width: 20rem;
   height: 4rem;
}


.clothing-details {
   grid-column: 1 / -1;
   grid-row: 6 / 7;
   margin-left: auto;
   margin-right: auto;
   margin-top: 2rem;
   font-family: 'Caveat Brush';
   font-size: 35px;
   text-transform: uppercase;
}

hr {
   grid-row: 6 / 7;
   grid-column: 1 / -1;
   margin-right: 10rem;
   margin-left: 10rem;
   margin-bottom: 2rem;
   border-bottom: none;
   border-left: none;
   border-right: none;
}

.title {
   font-family: 'Caveat Brush';
   font-size: 40px;
   margin-left: 50%;
}

.item {
   display: flex;
   flex-direction: row;
}
.cart-img {
   margin-left: 5rem;
   width: 30%;
}

.cart-product {
   display: flex;
   flex-direction: column;
   margin-top: 4rem;
}

.cart-title {
   margin-left: 70%;
   top: 50%;
   font-family: 'Caveat Brush';
   font-size: 25px;
}

.cart-price, .cart-size, .cart-quantity {
   margin-left: 70%;
   font-family: 'Caveat Brush';
   font-size: 25px;
}

.remove-btn {
   margin-left: 10rem;
   font-family: 'Caveat Brush';
   font-size: 25px;
   background-color: black;
   color: white;
   padding: 4px;
   text-decoration: none;
   border: none;
   border-radius: .3rem;
   cursor: pointer;
}

#cart {
   cursor: pointer;
}

.cart-total {
   margin-left: 70%;
   font-size: 30px;
}

/* personal details */
.proceed-btn {
   margin-top: 2rem;
   margin-bottom: 4rem;
}

.checkout {
   font-family: 'Caveat Brush';
   font-size: 35px;
   margin-left: 70%;
   padding: 7px;
   color: white;
   background-color: black;
   border: none;
   border-radius: .3rem;
   cursor: pointer;
   text-decoration: none;
}

.checkout-container {
   display: flex;
   justify-content: flex-start;
   margin-left: 7rem;
   margin-bottom: 3rem;
}

form {
    margin: 1rem 0;
}

fieldset {
    border: none;
    margin-bottom: 0;
}

.checkout-labels {
    font-size: 25px;
}

.field {
    display: flex;
    flex-flow: column-reverse;
    margin-bottom: 1rem;
    width: 53rem;
}

label {
   font-family: 'Caveat Brush';
}
label, .input-details {
    transition: all 0.2s;
    touch-action: manipulation;
}


.input-details {
    font-size: 1.0rem;
    border: 1px solid #ccc;
    border-radius: 3px;
    padding: .8rem;
    cursor: text;
    color: #707070;
    width: 55%;
}

.input-details:focus {
    outline: 0;
    border-bottom: 1px solid black;;
}

label {
    color: black;
    font-size: 10px;
}


.input-details:placeholder-shown + label {
    cursor: text;
    max-width: 66.66%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transform-origin: left bottom;
    transform-origin: .25em -1em;
    transform: translate(0, 2.125rem) scale(1.25);
    padding: 0 .5em 0;
}

::-webkit-input-placeholder {
    opacity: 0;
    transition: inherit;
 }

.input-details:focus::-webkit-input-placeholder {
     opacity: 1;
}

.input-details:not(:placeholder-shown) + label,
.input-details:focus + label
 {
    transform: translate(0, 0) scale(1);
    cursor: pointer;
}

#email-login, #password-login {
   width: 35%;
   margin-left: 2rem;
}

#email-label, #password-label {
   margin-left: 2rem;
}

.order-summary {
   margin-top: 1.6rem;
}

.order {
   font-family: 'Caveat Brush';
   font-size: 30px;
}

.order-title, .order-price {
   font-family: 'Caveat Brush';
   font-size: 20px;
}

.order-info {
   margin-bottom: 1rem;
}

.order-info > h3 {
   font-size: 25px;
}
.order-details {
   list-style: none;
   font-size: 20px;
}

.order-info > p {
   font-size: 25px;
}
.subtotal, .shipping {
   font-family: 'Caveat Brush';
   font-size: 30px;
}

.total {
   font-family: 'Caveat Brush';
   font-size: 35px;
}


.formBtn {
   font-family: 'Caveat Brush';
   margin-left: 30%;
   font-size: 20px;
   color: white;
   background-color: black;
   border: none;
   border-radius: .3rem;
   cursor: pointer;
   text-decoration: none;
   padding: 0.3rem;
}

#placeOrder {
   margin-left: 35%;
}

/* payment */
fieldset {
   border: none;
}

fieldset > legend {
   margin-left: 17rem;
   font-family: 'Caveat Brush';
   font-size: 35px;
}

fieldset > p {
   margin-left: 10rem;
   font-family: 'Caveat Brush';
   margin-top: 2rem;
}

.customRadioBtn > label {
   margin-left: 10rem;
   font-size: 20px;
}

#payment .field {
    position: relative;
}

.fieldIcon {
    position: absolute;
    top: 40%;
    right: 37%;
    color: #aaa;
}


.billingAddress.customRadioBtn label.radioLabel {
    border-bottom: none;
    margin-bottom: 2rem;
    margin-left: 5rem;
    font-size: 20px;
}

.field input {
   margin-left: 10rem;
   width: 23rem;
   padding: 0.8rem;
   height: 0.8rem;
   margin-bottom: 1.7rem;
}

.field label {
   margin-left: 10rem;
   font-size: 15px;
   color: gray;
}


/* helper text */
.fieldAndHelper {
    position: relative;
}

.helperText {
    background-color: #e2fcfd;
    border: solid 1px #26a3a8;
    border-radius: 6px;
    font-family: 'Open Sans', sans-serif;
    line-height: 1.2;
    color: #333;
    padding: 1em .75em .5em;
    font-size: .8em;
    position: absolute;
    top: -170px;
    left: 3px;
    width: 900%;
}

.helperText i.fas.fa-caret-down {
    position: absolute;
    left: 10px;
    bottom: -9px;
    color: #26a3a8;
}

.helperText i.fas.fa-times-circle.close {
    position: absolute;
    right: -9px;
    top: -7px;
    color: #26a3a8;
}

.hide {
    display: none;
}
.show {
   display: block;
}
/* end helper text */

#diffAddress {
   display: none;
}

.complete-order-btn {
   font-family: 'Caveat Brush';
   margin-left: 20%;
   margin-top: 2rem;
   font-size: 20px;
   color: white;
   background-color: black;
   border: none;
   border-radius: .3rem;
   cursor: pointer;
   text-decoration: none;
   padding: 0.3rem;
}

/* animation for main header */
@keyframes grow {
                from {
                    font-size: 30px;
                }
                to {
                    font-size: 50px;
                }
            }

            .logo {
                animation-name: grow;
                animation-duration: 2s;
                animation-fill-mode: forwards;
            }


@media(min-width: 1000px) {
   .container {
      grid-template-columns: minmax(4rem, 1fr)
      repeat(8, minmax(min-content, 16rem)) minmax(4rem, 1fr);
   }
}

@media(min-width: 600px) {
   .container {
      grid-template-columns: minmax(1rem, 1fr)
      repeat(8, minmax(min-content, 16rem)) minmax(1rem, 1fr);
   }

   .checkout-container {
      display: flex;
      justify-content: flex-start;
      margin-left: 1.5rem;
      margin-bottom: 3rem;
   }
}
