/* Reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background-color: #ffffff;
  font-family: "Poppins", Arial, sans-serif; /* Consistent Font Family */
  color: #1C1C1C;
}

/* Header */
.site-header {
  width: 100%;
  padding: 12px 5%; /* 5% horizontal padding for desktop */
  border-bottom: 1px solid #f0f0f0;
  background: none;
}

.logo-section {
  display: flex;
  align-items: center;
  gap: 12px;
}

/* Updated Structure for Tagline:
   - The logo section now contains the logo and a new div.
*/
.logo-section > div {
    display: flex;
    flex-direction: column; /* Stack the Title and Tagline vertically */
    justify-content: center;
}

.logo {
  height: 48px;
  width: auto;
}

/* Tagline Styling - Updated to Dark Gray and Bold */
.tagline {
    font-size: 0.9rem;
    font-weight: 700; /* Set to Bold for contrast */
    color: #666666; /* Changed to Dark Gray for better contrast (retains metallic feel) */
    margin-top: 2px; /* Small gap between title and tagline */
    font-family: inherit;
}


/* Title */
.site-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: 1px;
  /* Prevents wrapping to ensure single-line layout */
  white-space: nowrap; 
}

/* Individual text styles */
.himari {
  color: #E6A800; /* Darker Sunflower Yellow */
  font-weight: 700;
}

.brand-rest {
  color: #6A0DAD; /* Vibrant Purple */
  font-weight: 600;
}

.divider {
  color: #C0C0C0; /* Original Silver */
  margin: 0 2px; /* UPDATED: Reduced from 3px to 2px for tighter spacing */
}

.location {
  color: #0078AA; /* Darker Sky Blue */
  font-weight: 700;
}

/* Responsive for common mobile screens (less than 600px) */
@media (max-width: 600px) {
  .site-header { padding: 10px 4%; } /* Sets 4% horizontal padding */
  .logo { height: 40px; }
  .site-title { 
    font-size: 1.1rem; 
    gap: 6px; 
  }
  .tagline {
      font-size: 0.75rem; /* Reduce tagline size on mobile */
  }
}

/* Responsive for very narrow mobile screens (less than 400px) - Ensures padding and reduces font size */
@media (max-width: 400px) {
  .site-header { padding: 10px 4%; } /* Explicitly ensures 4% horizontal padding for smallest screen */
  .site-title { 
    font-size: 0.95rem; /* Further reduced font size to fit within padding */
  }
}