*{
   box-sizing: border-box;
   margin: 0;
   padding: 0;
}
html, body{
   display: block;
   width: 100%;
   height: 100%;
   font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
   color: var(--text-color);
   line-height: 1.6;
}
section{
   width: 100%;
   padding: 5% 15%;
}
:root{
   --primary: #a78f37;
   --secondary: #fff59d;
   --text-color: #3E3E3E;
   --back-light: #FFFFFF;
   --back-dark: #f5f5f5; 
}
.navbar {
   background-color: var(--back-light);
   box-shadow: 0 2px 10px rgba(0,0,0,0.1);
   position: fixed;
   width: 100%;
   height: 10vh;
   top: 0;
   z-index: 1000;
}
.nav-container {
   padding: 0 15%;
   display: flex;
   justify-content: space-between;
   align-items: center;
   height: 100%;
}
.nav-logo {
   width: 20%;
   height: 100%;
   display: flex;
   justify-content: center;
   align-items: center;
   color: var(--primary);
   text-decoration: none;
}
.nav-logo img{
   width: 100%;
   min-height: 90%;
   max-height: 10vh;
}
.nav-menu {
   display: flex;
   gap: 30px;
}
.nav-link {
   color: var(--text-color);
   text-decoration: none;
   font-weight: 500;
   transition: color 0.3s;
   position: relative;
}
.nav-link:hover, .nav-link.active {
   color: var(--primary);
}
.nav-link.active::after {
   content: '';
   position: absolute;
   bottom: 0px;
   left: 0;
   width: 100%;
   height: 2px;
   background-color: var(--primary);
}
.hamburger {
   display: none;
   cursor: pointer;
}
.bar {
   display: block;
   width: 25px;
   height: 3px;
   margin: 5px auto;
   transition: all 0.3s ease;
   background-color: var(--text-color);
}
.light-bg {
   background-color: var(--back-dark);
}
@media screen and (max-width: 900px) {
   .hamburger {
      display: block;
   }
   .hamburger.active .bar:nth-child(2) {
      opacity: 0;
   }
   .hamburger.active .bar:nth-child(1) {
      transform: translateY(8px) rotate(45deg);
   }
   .hamburger.active .bar:nth-child(3) {
      transform: translateY(-8px) rotate(-45deg);
   }
   .nav-menu {
      position: fixed;
      left: -100%;
      top: 70px;
      gap: 0;
      flex-direction: column;
      background-color: var(--back-light);
      width: 100%;
      text-align: center;
      transition: 0.3s;
      box-shadow: 0 10px 10px rgba(0,0,0,0.1);
   }
   .nav-menu.active {
      left: 0;
   }
   .nav-link {
      padding: 15px 0;
      width: 100%;
      display: block;
   }
   .nav-logo{
      width: 40%;
      min-height: 90%;
   }
}
@media screen and (max-width: 400px){
   .nav-logo{
      min-width: 60%;
   }
}
/* Elite Footer Styles */
footer {
   background-color: var(--text-color);
   color: var(--back-light);
   padding: 80px 15% 30px;
   position: relative;
   border-top: 3px solid var(--primary);
}
.footer-container {
   max-width: 1200px;
   margin: 0 auto;
   display: grid;
   grid-template-columns: 1fr 1fr 1fr 1fr;
   gap: 50px;
   margin-bottom: 50px;
}
.footer-section h3 {
   margin-bottom: 25px;
   color: var(--secondary);
   font-size: 1.3rem;
   font-weight: 600;
   letter-spacing: 0.5px;
   position: relative;
   padding-bottom: 12px;
}
.footer-section h3::after {
   content: '';
   position: absolute;
   bottom: 0;
   left: 0;
   width: 40px;
   height: 2px;
   background: var(--primary);
}
.contact-info {
   display: flex;
   flex-direction: column;
   gap: 18px;  
}
.contact-item {
   display: flex;
   align-items: flex-start;
   gap: 15px;
   transition: transform 0.3s ease;
}
.contact-item:hover {
   transform: translateX(5px);
}
.contact-item svg {
   color: var(--primary);
   flex-shrink: 0;
   margin-top: 2px;
   transition: color 0.3s ease;
}
.contact-item:hover svg {
   color: var(--secondary);
}
.contact-item span {
   line-height: 1.5;
   font-size: 0.95rem;
}
.social-links {
   display: flex;
   gap: 12px;
   margin-top: 25px;
}
.social-link {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 44px;
   height: 44px;
   background: rgba(255, 255, 255, 0.05);
   border: 1px solid rgba(255, 255, 255, 0.1);
   border-radius: 8px;
   transition: all 0.3s ease;
   position: relative;
   overflow: hidden;
}
.social-link:hover {
   background: rgba(167, 143, 55, 0.1);
   border-color: var(--primary);
   transform: translateY(-2px);
   box-shadow: 0 5px 15px rgba(167, 143, 55, 0.2);
}
.social-link svg {
   color: var(--back-light);
   transition: color 0.3s ease;
}
.social-link:hover svg {
   color: var(--secondary);
}
.footer-nav {
   display: flex;
   flex-direction: column;
   gap: 12px;
   list-style-type: none;
}
.footer-nav li {
   margin-bottom: 0;
}
.footer-nav a {
   color: var(--back-light);
   text-decoration: none;
   font-size: 0.95rem;
   transition: all 0.3s ease;
   padding: 8px 0;
   position: relative;
   display: block;
}
.footer-nav a::before {
   content: '';
   position: absolute;
   bottom: 0;
   left: 0;
   width: 0;
   height: 1px;
   background: var(--primary);
   transition: width 0.3s ease;
}
.footer-nav a:hover {
   color: var(--secondary);
}
.footer-nav a:hover::before {
   width: 30px;
}
.business-info {
   display: flex;
   flex-direction: column;
   gap: 12px;
}
.business-info p {
   margin-bottom: 0;
   line-height: 1.5;
   font-size: 0.95rem;
   position: relative;
   padding-left: 15px;
}
.business-info p::before {
   content: '•';
   position: absolute;
   left: 0;
   color: var(--primary);
}
.business-info p:first-child {
   font-size: 1rem;
   font-weight: 600;
   color: var(--secondary);
   padding-left: 0;
}
.business-info p:first-child::before {
   display: none;
}
.opening-hours {
   display: flex;
   flex-direction: column;
   gap: 12px;
}
.hours-item {
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding: 12px 0;
   border-bottom: 1px solid rgba(255, 255, 255, 0.1);
   transition: border-color 0.3s ease;
}
.hours-item:hover {
   border-bottom-color: var(--primary);
}
.hours-item:last-child {
   border-bottom: none;
}
.hours-item span:first-child {
   color: var(--back-light);
   font-size: 0.95rem;
}
.hours-item span:last-child {
   color: var(--secondary);
   font-weight: 500;
   font-size: 0.9rem;
}
.footer-bottom {
   max-width: 1200px;
   margin: 0 auto;
   padding-top: 30px;
   border-top: 1px solid rgba(255, 255, 255, 0.1);
   text-align: center;
   font-size: 0.9rem;
   color: rgba(255, 255, 255, 0.7);
   position: relative;
}
.developer-credit {
   margin-top: 8px;
   font-size: 0.8rem;
   color: rgba(255, 255, 255, 0.5);
}
.developer-credit a {
   color: var(--primary);
   text-decoration: none;
   transition: all 0.3s ease;
   font-weight: 500;
   position: relative;
}
.developer-credit a::after {
   content: '';
   position: absolute;
   bottom: -2px;
   left: 0;
   width: 0;
   height: 1px;
   background: var(--secondary);
   transition: width 0.3s ease;
}
.developer-credit a:hover {
   color: var(--secondary);
}
.developer-credit a:hover::after {
   width: 100%;
}
@media screen and (max-width: 768px) {
   .developer-credit {
      font-size: 0.75rem;
   }
}
@media screen and (max-width: 1024px) {
   .footer-container {
      grid-template-columns: 1fr 1fr;
      gap: 40px;
   }
}
@media screen and (max-width: 768px) {
   footer {
      padding: 60px 10% 25px;
   }
   .footer-container {
      grid-template-columns: 1fr;
      gap: 35px;
      text-align: center;
   }
   .footer-section h3::after {
      left: 50%;
      transform: translateX(-50%);
   }
   .contact-item {
      justify-content: center;
      text-align: center;
   }
   .social-links {
      justify-content: center;
   }
   .footer-nav a:hover {
      padding-left: 0;
   }
   .business-info p {
      padding-left: 0;
   }  
   .business-info p::before {
      display: none;
   }
}
@media screen and (max-width: 480px) {
   footer {
      padding: 50px 5% 20px;
   }
   .footer-container {
      gap: 30px;
   }
   .footer-section h3 {
      font-size: 1.2rem;
   }
   .contact-item {
      flex-direction: column;
      gap: 8px;
   }
   .hours-item {
      flex-direction: column;
      gap: 5px;
      text-align: center;
   }
}
footer a{
   color: var(--back-dark);
   text-decoration: none;
}