

*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    outline: none;
    /* font-family: 'SVN-Gilroy', sans-serif; */
    font-family: Arial, Helvetica, sans-serif;
}

@font-face {
    font-family: 'SVN-Gilroy';
    src: url('fonts/SVN-Gilroy-Regular.otf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'SVN-Gilroy';
    src: url('fonts/SVN-Gilroy-Semibold.otf') format('truetype');
    font-weight: 1000;
    font-style: normal;
}
.semibold-text {
    font-weight: 1000; /* Sử dụng SVN-Gilroy Semibold */
}

.regular-text {
    font-weight: normal; /* Sử dụng SVN-Gilroy Regular */
}


/* top navbar */
.top-navbar{
    display: flex;
    justify-content: space-between;
}
.top-navbar p{
    margin-top: 13px;
    margin-left: 15px;
}
.top-navbar .icons{
    margin-top: 13px;
    margin-right: 15px;
}
.top-navbar a{
    text-decoration: none;
    color: black;
    margin-left: 10px;
}
.top-navbar a img{
    margin-bottom: 3px;
}
.top-navbar a:hover{
    color: black;
}
@media screen and (max-width:400px){
    .top-navbar a{
        font-size: 13px;
    }
    .top-navbar a img{
        width: 15px;
    }
    .top-navbar p{
        font-size: 13px;
    }
}
@media screen and (max-width:320px){
    .top-navbar a{
        font-size: 10px;
    }
    .top-navbar a img{
        width: 13px;
    }
    .top-navbar p{
        font-size: 10px;
    }
}
@media screen and (max-width:318px){
    .top-navbar a{
        font-size: 8px;
        margin-left: 0;
    }
    .top-navbar a img{
        width: 10px;
        margin-left: 0;
    }
    .top-navbar p{
        font-size: 10px;
        margin-top: 20px;
    }
}
/* top navbar */

/* navbar */
#navbar{
    background-color: white;
}
#logo{
    margin-left: 15px;
    color: white;
    font-size: 25px;
    font-weight: bold;
    margin-bottom: 6px;
}
#logo span{
    color: #ffc800;
}
#logo #span1{
    font-size: 30px;
}
.navbar-nav{
    margin-left: 20px;
}
.nav-item{
    margin-left: 10px;
}
.nav-item .nav-link{
    color: black;
    margin-left: 2px;
    text-shadow: 0px 0px 1px black;
    transition: 0.5s ease;
}
.nav-item .nav-link:hover{
    color: green;
}
.dropdown-menu li a{
    color: black;
    transition: 0.5s ease;
}
.dropdown-menu li a:hover{
    background-color: rgb(0, 86, 0);
    color: white;
}
#search input{
    border-radius: 50px;
    /* border: none; */
}
#search button{
    border-radius: 50px;
    color: white;
    border: 1px solid;
    background-color: green;
}
/* navbar */

/* The Modal (background) */
.modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 1; /* Sit on top */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
    padding-top: 60px;
  }
  
  /* Modal Content/Box */
  .modal-content-1 {
    background-color: #fefefe;
    margin: 5% auto; /* 5% from the top and centered */
    padding: 20px;
    border: 1px solid #888;
    width: 50%; /* Could be more or less, depending on screen size */
  }
  .modal-content-1 .form-group a {
    display: block; /* Make the <a> tag a block element */
    text-align: center; /* Center the text */
    font-size: 18px; /* Adjust the font size */
    color: #007bff; /* Adjust the text color */
    text-decoration: none; /* Remove underline */
    margin-bottom: 10px; /* Add margin below the link */
  }

.modal-content-1 .form-group a:hover {
    text-decoration: underline; /* Optional: underline on hover */
  }

  .btn-primary {
    width: 75%;
    color: green !important;
    background-color: white !important ;
    border-color: green !important;
}
/* Center the submit button */
.modal-content-1 .btn-primary {
    display: block;
    margin: 0 auto 0 auto; /* Center horizontally with margin */
    padding: 10px 20px; /* Adjust padding if necessary */
    font-size: 14px; /* Adjust font size if necessary */
  }
  
  /* The Close Button */
  .close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
  }
  
  .close:hover,
  .close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
  }
  /* Media Queries for Mobile Devices */
@media screen and (max-width: 768px) {
    .modal-content-1 {
      width: 80%; /* Wider modal for smaller screens */
    }
  
    .form-control, .btn {
      font-size: 16px; /* Slightly larger font for readability */
    }
  
    .form-group label {
      font-size: 16px; /* Adjust label font size */
    }
  }
  
  @media screen and (max-width: 480px) {
    .modal-content-1 {
      width: 90%; /* Almost full width for very small screens */
    }
  
    .modal-content-1 h2 {
      font-size: 18px; /* Adjust heading size */
      text-align: center; /* Center the heading text */
    }
  
    .form-control, .btn {
      font-size: 16px;
      padding: 10px 12px; /* Slightly more padding for touch interfaces */
    }
  
    .close {
      font-size: 20px; /* Smaller close button */
    }
  }

/* home content */
.home {
    width: 100%;
    height: 100vh; /* Chiều cao của section chiếm toàn bộ chiều cao của viewport */
    overflow: hidden; /* Ẩn các phần ảnh vượt ra ngoài section */
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  .carousel-inner img {
    width: 100%;
    height: 100vh; /* Chiều cao của ảnh phù hợp với section */
    object-fit: cover; /* Cắt ảnh để giữ tỷ lệ mà vẫn bao phủ toàn bộ section */
  }

  .slider {
    width: 100%;
    height: auto;
    position: relative;
    overflow: hidden;
  }
  
  .slides {
    display: flex;
    width: 300%;
    animation: slide 24s infinite;
  }
  
  .slide {
    width: 100%;
    transition: 0.5s;
  }
  
  .slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  
  @keyframes slide {
    0% { transform: translateX(0); }
    33.33% { transform: translateX(-33.33%); }
    66.66% { transform: translateX(-66.66%); }
    100% { transform: translateX(0); }
  }
  /* Điều chỉnh cho các thiết bị nhỏ hơn */
 
    @media (max-width: 768px) {
    .home {
      height: 70vh; /* Giảm chiều cao section trên thiết bị di động */
    }
  
    .carousel-inner img {
      height: 70vh; /* Đảm bảo ảnh chiếm hết chiều cao section */
    }
     }
  
  @media (max-width: 576px) {
    .home {
      height: 60vh; /* Giảm chiều cao hơn nữa trên các thiết bị rất nhỏ */
    }
  
    .carousel-inner img {
      height: 60vh; /* Điều chỉnh chiều cao ảnh tương ứng */
    }
  }
.home{
    width: 100%;
    height: 130vh;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    position: relative;
    background-color: #a9a9a92b;
    z-index: 0;
}
.home .img{
    flex: 1 1 300px;
}
.home .img img{
    margin-top: 30px;
    width: 100%;
}
.home .content{
    flex: 1 1 400px;
    margin-top: 20px;
}
.content h1{
    color: rgb(67 0 86);
    font-weight: bold;
    margin-left: 23px;
    font-size: 55px;
    text-shadow: -1px 1px 1px black;
}
.content h1 span{
    color: rgb(67 0 86);
    text-shadow: 1px 1px 1px black;
}
#span2{
    color: #ffc800;
}
.content p{
    margin-left: 23px;
}
.btn{
    margin-left: 13px;
}
.btn button{
    width: 150px;
    height: 32px;
    letter-spacing: 3px;
    background-color: rgb(67 0 86);
    color: white;
    border-radius: 5px;
    border: none;
    transition: 0.5s ease;
    cursor: pointer;
}
.btn button:hover{
    background-color: #ffc800;
    color: black;
    border: none;
}
@media screen and (max-width:1200px){
    .home{
        height: 90vh;
    }
}
@media screen and (max-width:799px){
    .home{
        height: 140vh;
    }
}
@media screen and (max-width:550px){
    .home{
        height: 30vh;
    }
}
@media screen and (max-width:420px){
   .content h1{
    font-size: 45px;
   }
}
@media screen and (max-width:320px){
   .content h1{
    font-size: 36px;
   }
}
/* home content */



@media screen and (max-width: 768px) {
    nav.col-lg-2.col-md-3.col-sm-12 {
      display: none;
    }
  }




/* product cards */
#product-cards{
    margin-top: 100px;
}
#product-cards h1{
    color: rgb(14, 180, 14);
    /* text-shadow: 1px 1px 1px black; */
    border-bottom: 2px solid #51c111;
}
#product-cards .card h3{
    font-size: 20px;
    color: black;
}
#product-cards .card p{
    font-size: 10px;
    margin-top: 5px;
    color: black;
}
.star i{
    margin-left: 5px;
    font-size: 13px;
}
.checked{
    color: #ffc800;
}
#product-cards .card h2{
    font-size: 20px;
    color: black;
    margin-top: 20px;
}
#product-cards .card h2 span{
    float: right;
    color: black;
    cursor: pointer;
}
@media screen and (max-width:1000px){
    #product-cards .card h3{
        font-size: 15px;
    }
}
/* product cards */








/* other cards */
#other-cards{
    margin-top: 30px;
}
#other-cards .card{
    background-color: #a9a9a92b;
}
#other-cards .card h3{
    margin-top: 30px;
    color: black;
    margin-left: 10px;
    letter-spacing: 3px;
}
#other-cards .card h5{
    margin-top: 15px;
    font-weight: 100;
    font-size: 18px;
    color: black;
    margin-left: 10px;
    letter-spacing: 3px;
    border-bottom: 2px solid black;
    width: 220px;
}
#other-cards .card p{
    margin-top: 10px;
    font-weight: 100;
    font-size: 15px;
    color: black;
    margin-left: 10px;
    letter-spacing: 3px;
}
#shopnow{
    width: 130px;
    height: 30px;
    margin-top: 10px;
    margin-left: 10px;
    letter-spacing: 3px;
    color: white;
    background-color: black;
    font-weight: bold;
    border: none;
    cursor: pointer;
}

@media screen and (max-width:1000px){
    #other-cards .card h3{
        margin-top: 5px;
        font-size: 20px;
    }
    #other-cards .card h5{
        margin-top: 5px;
        font-size: 15px;
    }
    #other-cards .card p{
        margin-top: 0px;
    }
    #shopnow{
        margin-top: 0px;
        width: 120px;
        height: 30px;
        font-size: 16px;
    }
}
/* other cards */






/* banner */
.banner{
    margin-top: 60px;
    width: 100%;
    height: 80vh;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    position: relative;
    background-color: #a9a9a92b;
    z-index: 0;
}
.banner .img{
    flex: 1 1 300px;
}
.banner .img img{
    margin-top: 30px;
    width: 100%;
}
.banner .content{
    flex: 1 1 400px;
    margin-top: 20px;
}
.banner .content h1{
    color: rgb(67 0 86);
    font-weight: bold;
    margin-left: 23px;
    font-size: 55px;
    text-shadow: -1px 1px 1px black;
}
.banner .content h1 span{
    color: rgb(67 0 86);
    text-shadow: 1px 1px 1px black;
}
#span2{
    color: #ffc800;
}
.banner .content p{
    margin-left: 23px;
}
.btn{
    margin-left: 13px;
}
.btn button{
    width: 150px;
    height: 32px;
    letter-spacing: 3px;
    background-color: rgb(67 0 86);
    color: white;
    border-radius: 5px;
    border: none;
    transition: 0.5s ease;
    cursor: pointer;
}
.btn button:hover{
    background-color: #ffc800;
    color: black;
    border: none;
}
@media screen and (max-width:1200px){
    .banner{
        height: 90vh;
    }
}
@media screen and (max-width:799px){
    .banner{
        height: 140vh;
    }
}
@media screen and (max-width:550px){
    .banner{
        height: 110vh;
    }
}
@media screen and (max-width:420px){
   .banner .content h1{
    font-size: 45px;
   }
}
@media screen and (max-width:320px){
   .banner .content h1{
    font-size: 36px;
   }
}
/* banner */









/* other cards */
#other{
    margin-top: 50px;
}
#other .card{
    box-shadow: rgba(17,12,46, 0.15) 0px 48px 100px 0px;
}
#other .card h3{
    margin-top: 10px;
    color: white;
    text-shadow: 1px 1px 1px black;
    letter-spacing: 3px;
    font-weight: bold;
}
#other .card p{
    margin-top: 10px;
    color: white;
    text-shadow: 0px 1px 1px black;
    letter-spacing: 3px;
    font-weight: bold;
}
/* other cards */




/* offer */
#offer{
    background-color: #def7dd;
    align-items: center;
    display: flex;
    justify-content: center;
}
#offer i{
    font-size: 40px;
    color: black;
    display: flex;
    justify-content: center;
    align-items: center;
}
#offer h3{
    font-size: 25px;
    text-align: center;
}

#offer .col-md-3 {
    text-align: center;
    border: solid 1px antiquewhite;
    display: flex;
    justify-content: center;
    
  }
  
  @media (max-width: 768px) {



    #offer .col-md-3 {

      width: 100%;
      padding: 10px 0;
    }
  
    #offer i {
      font-size: 24px; /* Điều chỉnh kích thước icon */
    }
  }
/* offer */


/* carousel 2 */
.carousel {
    display: flex;
    justify-content: space-between; /* Giữa các ảnh sẽ có khoảng cách đều */
    align-items: center; /* Căn giữa theo trục dọc nếu ảnh không đều */
  }
  .carousel div {
    flex: 1;
    margin: 0 10px; /* Khoảng cách giữa các ảnh */
  }
  
.carousel img {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
  }
  .slick-prev, .slick-next {
    background-color: #ddd;
    border-radius: 50%;
    padding: 10px;
  }
  
/* carousel 2 */

/* newslater */
#newslater{
    margin-top: 100px;
}
#newslater h3{
    font-size: 25px;
    letter-spacing: 3px;
}
.input{
    margin-top: 30px;
}
.input input{
    width: 350px;
    height: 36px;
    letter-spacing: 2px;
    border-radius: 3px;
    border:  1px solid black;
    padding-left: 5px;
}
#subscribe{
    width: 200px;
    height: 36px;
    margin-left: 10px;
    border-radius: 3px;
    border: none;
    background-color: green;
    color: white;
    letter-spacing: 3px;
    font-weight: bold;
    text-shadow: 0px 0px 1px black;
}
@media screen and (max-width:465px){
    .input input{
        width: 280px;
        margin-bottom: 10px;
    }
    #subscribe{
        margin-top: 10px;
    }
}
@media screen and (max-width:250px){
    .input input{
        width: 150px;
    }
    #subscribe{
        width: 150px;
    }
}
/* newslater */


/* cta */
.fixed-cta {
    position: fixed;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    /* background-color: #faf8f8; */
    padding: 10px;
    border-radius: 0 5px 5px 0;
    z-index: 1000;
}
.fixed-cta a {
    display: block;
    margin-bottom: 10px;
    color: white;
    font-size: 18px;
    text-align: center;
    width: 40px;
    height: 40px;
    line-height: 40px;
    background-color: hwb(124 1% 30%);
    border-radius: 50%;
    transition: background-color 0.3s;
}
.fixed-cta a:hover {
    background-color: #0056b3;
}


/* cta */

/* footer */
#footer{
    padding: 0 0 30px 0px;
    color: black;
    background-color: #f8f9fa;
    font-size: 14px;
    margin-top: 100px;
}
#footer .footer-top{
    padding: 60px 0 30px 0;
    color: black;
}
#footer .footer-top .footer-contact{
    margin-bottom: 30px;
}
#footer .footer-top .footer-contact h3{
    color: black;
}
#footer .footer-top .footer-contact h4{
    font-size: 22px;
    margin: 0 0 30px 0;
    padding: 2px 0 2px 0;
    line-height: 1;
    font-weight: 700;
}
#footer .footer-top .footer-contact p{
    font-size: 14px;
    line-height: 24px;
    margin-bottom: 0;
    color: black;
}
#footer .footer-top h4{
    font-size: 16px;
    font-weight: bold;
    position: relative;
    padding-bottom: 12px;
}
#footer .footer-top .footer-links{
    margin-bottom: 30px;
    margin-top: 10px;
}
#footer .footer-top .footer-links h4{
    color: black;
}
#footer .footer-top .footer-links ul{
    list-style: none;
    padding: 0;
    margin: 0;
}
#footer .footer-top .footer-links ul li{
    padding: 10px 0;
    display: flex;
    align-items: center;
}
#footer .footer-top .footer-links ul li a{
    text-decoration: none;
    color: black;
    display: inline-block;
    line-height: 1;
    font-weight: bold;
    transition: 0.5s ease;
}
#footer .footer-top .footer-links ul li a:hover{
    color: black;
}
#footer .footer-top .socail-links a{
    font-size: 18px;
    display: inline-block;
    text-decoration: none;
    background-color: green;
    color: white;
    line-height: 1;
    padding: 8px 0;
    margin-right: 4px;
    border-radius: 50%;
    text-align: center;
    width: 36px;
    transition: 0.5s ease;
}
#footer .footer-top .socail-links a:hover{
    background-color: orange;
    color: white;
}
#footer .copyright{
    text-align: center;
    float: left;
}
#footer .credits{
    float: right;
    text-align: center;
    font-size: 13px;
}
#footer .credits a{
    color: #ffc800;
}
/* footer */




html{
    scroll-behavior: smooth;
}
.arrow{
    position: fixed;
    width: 50px;
    height: 50px;
    bottom: 50px;
    right: 50px;
    text-decoration: none;
    text-align: center;
    line-height: 50px;
}





/* login */
#login{
    width: 65%;
    height: 70vh;
    background-color: rgb(67 0 86);
    margin-top: 35px;
    border-radius: 10px;
    box-shadow: rgba(17,12, 46, 0.15) 0px 48px 100px 0px;
}
#side1 h3{
    color: #ffc800;
    font-weight: bold;
    margin-top: 200px;
}
#side2{
    background-color: white;
    height: 70vh;
    border-radius: 10px;
}
#side2 h3{
    margin-top: 30px;
    color: #ffc800;
    font-weight: bold;
    text-shadow: 0px 1px 1px black;
}
.input2 input{
    margin-top: 15px;
    width: 300px;
    border: none;
    border-bottom: 2px solid #ffc800;
}
.input2 input ::placeholder{
    font-weight: bold;
}
#btnlogin{
    padding-top: 10px;
}
#btnlogin a{
    padding: 10px;
    text-decoration: none;
    border-radius: 15px;
    background-color: #ffc800;
    color: white;
    font-weight: bold;
    border: none;
    text-shadow: 0px 0px 1px black;
}
#side2 p{
    margin-top: 10px;
}
@media screen and (max-width:991px){
    .input2 input{
        width: 250px;
    }
}
@media screen and (max-width:765px){
    .input2 input{
        width: 260px;
    }
    #side2{
        height: 60vh;
    }
}
/* login */




/* about */
#about{
    margin-top: 30px;
}
#about h3{
    font-weight: bold;
    color: #ffc800;
    text-shadow: 0px 1px 1px black;
}
#about button{
    width: 150px;
    height: 36px;
    color: white;
    background-color: rgb(67 0 86);
    border-radius: 5px;
    cursor: pointer;
}
/* about */





/* contact */
#contact{
    margin-top: 50px;
}
#contact .card{
    height: 80px;
    margin-top: 20px;
    box-shadow: rgba(100, 100, 111 ,0.2) 0px 7px 29px 0px;
}
#contact .card i{
    margin-top: 10px;
    margin-left: 10px;
    font-size: 15px;
    color: rgb(67 0 86);
    font-weight: bold;
    letter-spacing: 3px;
}
#contact .card h6{
    margin-left: 10px;
    margin-top: 10px;
    letter-spacing: 3px;
    font-weight: bold;
    color: rgb(67 0 86);
}
.messagebtn button{
    margin-top: 30px;
    width: 200px;
    height: 33px;
    background: transparent;
    border: 2px solid rgb(67 0 86);
    font-weight: bold;
    letter-spacing: 3px;
    transition: 0.5s ease;
    cursor: pointer;
}
.messagebtn button:hover{
    background-color: rgb(67 0 86);
    color: white;
}
/* contact */


.container-fluid {
    padding: 15px;
}

.product-title {
    font-size: 2em;
    font-weight: bold;
    margin-bottom: 20px;
}

.product-details {
    font-size: 1.2em;
    margin-bottom: 20px;
}

.product-specs {
    list-style-type: none;
    padding: 0;
    margin-bottom: 20px;
}

.product-specs li {
    margin-bottom: 10px;
}

.contact-button {
    font-size: 1rem;
    width: 13%;
    padding: 8px 16px;
    background-color: #007bff;
    color: #fff;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    margin-top: 10px; /* Đặt sát với thẻ div phía trên */
    display: block; /* Giữ cho nút nằm dưới các phần tử khác */
    margin-left: auto; /* Căn nút sang phải */
    margin-right: 0;
    margin-top: 0; /* Để sát với phần tử phía trên */

}

.contact-button:hover {
    background-color: #0056b3;
}



.img-fluid {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
}

@media (max-width: 768px) {
    .product-title {
        font-size: 1.5em;
    }

    .product-details {
        font-size: 1em;
    }

    .contact-button {
        width: 100%;
        font-size: 1em;
    }
}
