@import url('https://fonts.googleapis.com/css2?family=Playwrite+GB+S:ital,wght@0,100..400;1,100..400&display=swap');


* {
 padding: 0;
 margin: 0;
 box-sizing: border-box;
 text-decoration: none;
}

:root {
 --white-color: #fff;
 --dark-color: #252525;
 --primary-color: #3b141c;
 --secondary-color: #f3961c;
 --light-pink-color: #faf4f5;
 --medium-gray-color: #ccc;

 --font-size-s: 0.9rem;
 --font-size-n: 1rem;
 --font-size-m: 1.12rem;
 --font-size-l: 1.5rem;
 --font-size-xl: 2rem;
 --font-size-xxl: 2.3rem;


 --font-weight-normal: 400;
 --font-weight-medium: 500;
 --font-weight-semibold: 600;
 --font-weight-bold: 700;


 --border-radius-s: 8px;
 --border-radius-m: 30px;
 --border-radius-circle: 50%;


 --site-max-width: 1300px;

}

html {
 scroll-behavior: smooth;
}

ul {
 list-style: none;
}

a {
 text-decoration: none;
}

button {
 cursor: pointer;
 border: none;
 background: none;
}

img {
 width: 100%;
}

.section-content {
 margin: 0 auto;
 padding: 0 20px;
 max-width: var(--site-max-width);
}


/*nav bar     */
header {
 background: var(--primary-color);
 position: fixed;
 width: 100%;
 z-index: 5;
}

.navbar #menu-close-button,
.navbar #menu-open-button {
 display: none;
}

header .navbar {
 display: flex;
 align-items: center;
 justify-content: space-between;
 padding: 10px;

}

.navbar .nav-logo .logo-text {
 color: var(--white-color);
 font-size: var(--font-size-xl);
 font-weight: var(--font-weight-semibold);

}

.navbar .nav-menu {
 display: flex;
 gap: 10px;
}

.navbar .nav-menu .nav-link {
 color: var(--white-color);
 padding: 10px 18px;
 font-size: var(--font-size-m);
 border-radius: var(--border-radius-m);
 transition: 0.3s ease;
}

.navbar .nav-menu .nav-link:hover {
 color: var(--primary-color);
 background: var(--secondary-color);
}

/*    hero section      */
.hero-section {

 background: var(--primary-color);
}

.hero-section .section-content {
 display: flex;
 justify-content: space-between;
 align-items: center;
 min-height: 50vh;
 color: var(--white-color);

}

.hero-section .hero-details .title {
 font-size: var(--font-size-x);
 color: var(--secondary-color);
 font-family: "Playwrite GB S", cursive;

}

.hero-section .hero-details .subtitle {
 margin-top: 5px;
 max-width: 70%;
 font-size: var(--font-size-xl);
 font-weight: var(--font-weight-semibold);

}

.hero-section .hero-details .description {
 font-size: var(--font-size-m);
 max-width: 70%;
 margin: 24px 0 40px;

}

.hero-section .hero-details .buttons {
 display: flex;
 gap: 23px;
}

.hero-section .hero-details .button {
 padding: 10px 26px;
 border: 2px solid transparent;
 color: var(--primary-color);
 border-radius: var(--border-radius-m);
 background: var(--secondary-color);
 font-weight: var(--font-weight-meidium);
 transition: 0.3s ease;

}

.hero-section .hero-image-wrapper {
 max-width: 500px;
 margin-right: 30px;


}

.hero-section .hero-details .button:hover,
.hero-section .hero-details .contact-us {
 color: var(--white-color);
 border-color: var(--white-color);
 background: transparent;
}

.hero-section .hero-details .contact-us:hover {
 color: var(--primary-color);
 border-color: var(--secondary-color);
 background: var(--secondary-color);
}

/*     about styling*/
.section-title {
 text-align: center;
 padding: 60px 0 100px;
 text-transform: uppercase;
 font-size: var(--font-size-xl);

}

.section-title::after {
 content: "";
 width: 80px;
 height: 5px;
 display: block;
 margin: 10px auto 0;
 border-radius: var(--border-radius-s);
 background: var(--secondary-color);
}

.about-section {
 padding: 120px 0;
 background: var(--light-pink-color);
}

.about-section .section-content {
 display: flex;
 gap: 50px;
 align-items: center;
 justify-content: space-between;
}

.about-section .about-image-wrapper .about-image {
 width: 400px;
 height: 400px;
 object-fit: cover;
 border-radius: var(--border-radius-circle);

}

.about-section .about-details .section-title {
 padding: 0;
}

.about-section .about-details {
 max-width: 80%;
}

.about-section .about-details .text {
 line-height: 30px;
 margin: 50px 3px 30px;
 text-align: center;
 font-size: var(--font-size-m);

}

.about-section .social-link-list {
 display: flex;
 gap: 25px;
 justify-content: center;

}

.about-section,
.social-link-list .social-link {
 color: var(--primary-color);
 font-size: var(--font-size-l);
 transition: 0.2s ease;

}

.about-section .social-link-list:hover {
 color: var(--secondary-color);
}

/*     menu section style*/
.menu-section .menu-list {
 display: flex;
 flex-wrap: wrap;
 align-items: center;
 gap: 110px;
 justify-content: space-between;
}

.menu-section .menu-list .menu-item {
 display: flex;
 align-items: center;
 flex-direction: column;
 width: calc(100% / 3 - 110px);
 justify-content: space-between;
 text-align: center;
}

.menu-section .menu-list .menu-item .menu-img {
 max-width: 83%;
 aspect-ratio: 1;
 margin-bottom: 15px;
 object-fit: content;

}

.menu-section {
 color: var(--white-color);
 background: var(--dark-color);
 padding: 50px 0 100px;

}

.menu-section .menu-list .menu-item .name {
 margin: 12px 0;
 font-size: var(--font-size-l);
 font-weight: var(--font-weight-semibold);

}

.menu-section .menu-list .menu-item .text {
 font-size: var(--font-size-m);
}

/* testimonials style*/
.testimonials-section {
 padding: 50px 0 100px;
 background: var(--light-pink-color);

}

.testimonials-section .testimonial {
 user-select: none;
 display: flex;
 padding: 35px;
 text-align: center;
 flex-direction: column;
 align-items: center;
}

.testimonials-section .testimonial .user-img {
 width: 180px;
 height: 180px;
 object-fit: cover;
 margin-bottom: 50px;
 border-radius: var(--border-radius-circle);
}

#DD910C .testimonials-section .testimonial .name {
 margin-bottom: 16px;
 font-size: var(--font-size-m);
}

.testimonials-section .testimonial .feedback {
 line-height: 25px;
}

.testimonials-section .swiper-pagination-bullet {
 width: 15px;
 height: 15px;
 background: var(--secondary-color);
 opacity: 1;
}

.testimonials-section .swiper-slide-button {
 color: var(--secondary-color);
 margin-top: -50px;
 transition: 0.3s ease;
}

.testimonials-section .swiper-slide-button:hover {
 color: var(--primary-color);
}

.testimonials-section .slider-wrapper {
 overflow: hidden;
 margin: 0 60px 50px;
}


/*      gallery style     */
.gallery-section {
 padding: 50px 0 100px;
}

.gallery-section .gallery-list {
 display: flex;
 flex-wrap: wrap;
 gap: 32px;
}

.gallery-section .gallery-list .gallery-item {
 border-radius: var(--border-radius-s);
 overflow: hidden;
 width: calc(100% / 3 - 32px);

}

.gallery-section .gallery-item .gallery-img {
 width: 100%;
 height: 100%;
 cursor: zoom-in;
 transition: 0.3s ease;
}

.gallery-section .gallery-item:hover .gallery-img {
 transform: scale(1.3);
}

/*    contact us     */
.contact-section {
 padding: 50px 0 300px;
 background: var(--light-pink-color);


}

.contact-section .section-content {
 display: flex;
 gap: 48px;
 align-items: flex-start;
 justify-content: space-between;
}

.contact-section .contact-info-list .contact-info {
 display: flex;
 gap: 20px;
 margin: 20px 0;
 align-items: center;
}

.contact-section .contact-info-list .contact-info i {
 font-size: var(--font-size-m);
}

.contact-section .contact-form .form-input {
 width: 100%;
 height: 50%;
 padding: 12px;
 outline: none;
 margin-bottom: 10px;
 background: var(--white-color);
 border-radius: var(--border-radius-s);
 border: 1px solid var(--medium-gray-color);
}

.contact-section .contact-form .form-input:focus {
 border-color: var(--secondary-color);
}

.contact-section .contact-form textarea.form-input {
 height: 100px;
 padding: 12px;
 resize: vertical;
}

.contact-section .contact-form .submit-button {
 padding: 10px 26px;
 margin-top: 12px;
 color: var(--white-color);
 font-size: var(--font-size-m);
 font-weight: var(--font-weight-medium);
 background: var(--primary-color);
 border-radius: var(--border-radius-m);
 border: 1px solid var(--primary-color);
 transition: 0.3s ease;
}

.contact-section .contact-form .submit-button:hover {
 color: var(--primary-color);
 background: transparent;
}

.contact-section .contact-form {
 max-width: 50%;
}

/*      footer style   */
.footer-section {
 padding: 20px 0;
 background: var(--dark-color);

}

.footer-section .section-content {
 display: flex;
 align-items: center;
 justify-content: space-between;
}

.footer-section :where(.copyright-text, .policy-link, .social-link i) {
 color: var(--white-color);
 transition: 0.3s ease;
}

.footer-section .social-link-list {
 font-size: var(--font-size-l);
 display: flex;
 gap: 25px;
 justify-content: center;
}

.footer-section .social-link-list .social-link i:hover,
.footer-section .policy-text .policy-link:hover {
 color: var(--secondary-color);

}

.footer-section .policy-text .separator {
 margin: 50px;
 color: var(--white-color);
}



/*  900px    responsiv web sied*/
@media screen and (max-width: 900px) {
 :root {
  --font-size-n: 1rem;
  --font-size-m: 1.3rem;
  --font-size-l: 1.5rem;
  --font-size-xl: 1.8rem;
 }

 body.show-mobile-menu header::before {
  content: "";
  position: fixed;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  backdrop-filter: blur(5px);
  background: rgba(0, 0, 0, 0.2);
 }

 .navbar .nav-menu #menu-close-button,
 .navbar #menu-open-button {
  display: block;
  font-size: var(--font-size-l);

 }

 .navbar #menu-open-button {
  color: var(--white-color);
 }

 .navbar #menu-close-button {
  right: 300px;
  top: 30px;
  color: var(--secondary-color);

 }

 .navbar .nav-menu {
  display: block;
  position: fixed;
  left: -300px;
  top: 0;
  width: 300px;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 100px;
  background: var(--white-color);
  transition: left 0.3s ease;
 }

 body.show-mobile-menu .navbar .nav-menu {
  left: 0;
  background: rgba(0, 0, 0, 0.8);
 }

 .navbar .nav-menu .nav-link {
  color: var(--secondary-color);
  display: block;
  margin-top: 17px;
  font-size: var(--font-size-l);

 }

 .hero-section .section-content {
  gap: 50px;
  text-align: center;
  padding: 30px 20px 20px;
  flex-direction: column-reverse;
  justify-content: center;
 }

 .hero-section .hero-details .subtitle,
 .hero-section .hero-details .description,
 .about-section .about-details,
 .contact-section .contact-form {
  max-width: 100%;
 }

 .hero-section .hero-details .buttons {
  justify-content: center;

 }

 .hero-section .hero-image-wrapper {
  max-width: 270px;
  margin-right: 0;
 }

 /*    about section responsiv*/

 .about-section .section-content {
  gap: 70px;
  flex-direction: column;
 }

 .about-section .about-image-wrapper .about-image {
  width: 100%;
  height: 100%;
  max-width: 250px;
  aspect-ratio: 1;
 }

 /*    menu responsiv*/
 .menu-section .menu-list {
  gap: 30px;

 }

 .menu-section .menu-list .menu-item {
  width: calc(100% / 2 - 30px);
 }

 .menu-section .menu-list .menu-item .menu-img {
  max-width: 200px;
 }

 /*   galley responshiv*/
 .gallery-section .gallery-list .gallery-item {
  width: calc(100% / 2 - 30px);
 }

 .gallery-section .gallery-list {
  gap: 30px;
 }

 /*   responsiv contact section*/
 .contact-section .section-content {
  flex-direction: column-reverse;
  align-items: center;
 }
}


/*    1024px responsiv web*/
@media screen and (max-width: 1024) {
 .menu-section .menu-list {
  gap: 60px;
 }

 .menu-section .menu-list .menu-item {
  width: calc(100% / 3 - 60px);
 }
}



/*   responsiv in 640px*/
@media screen and (max-width:640px) {
 .menu-section .menu-list {
  gap: 60px;

 }

 .menu-section .menu-list .menu-item {
  width: 100%;
 }

 .testimonials-section .swiper-slide-button {
  display: none;
 }

 .testimonials-section .slider-wrapper {
  margin: 0 0 30px;
 }

 /*   gallery responciv*/
 .gallery-section .gallery-list .gallery-item {
  width: 100%;
 }

 /*   footer    */
 .footer-section .section-content {
  flex-direction: column;
  gap: 20px;
 }
}