:root {
  --color-primary: #f58a1f;
  --color-secondary: #272727;
  --color-accent: #8b765f;
  --color-dark: #121212;
  --color-light: #f6efe6;
  --color-text: #1e1e1e;
  --color-muted: #525252;
  --color-border: #d5c7b8;
  --color-page-bg-start: #f2e8dc;
  --color-page-bg-end: #e8dbcc;
  --color-section-bg: #f7f1e9;
  --shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  --radius: 16px;
  --maxw: 1200px;
}

.site-header {
  background-color: rgba(248, 241, 233, 0.92);
}

.brand-logo-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: min(180px, 38vw);
  height: 56px;
  padding: 0.2rem 0.4rem;
  border: 1px solid rgba(213, 199, 184, 0.55);
  border-radius: 12px;
  background: rgba(255, 249, 241, 0.45);
  overflow: hidden;
}

.brand-logo {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain;
  object-position: left center;
}

.site-header .menu-toggle {
  background: rgba(255, 249, 241, 0.65) !important;
  border-color: rgba(203, 188, 168, 0.8) !important;
}

.site-header .menu-toggle:focus-visible {
  outline: 2px solid var(--color-primary) !important;
  outline-offset: 2px !important;
  box-shadow: none !important;
}

.trust-dot:before {
  background: #d89445 !important;
}

:focus-visible {
  outline-color: var(--color-primary) !important;
}

@media (max-width: 1023px) {
  .main-nav {
    transform: translateY(calc(-100% - 78px)) !important;
  }

  .main-nav.is-open {
    transform: translateY(0) !important;
  }
}

body {
  background: linear-gradient(180deg, var(--color-page-bg-start) 0%, var(--color-page-bg-end) 100%) !important;
}

main > section.bg-white {
  background-color: var(--color-section-bg) !important;
}
