.material-symbols-outlined {
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
}

body {
  background-color: #F7F9FC;
  color: #0B1F3A;
  scroll-behavior: smooth;
}

html[lang="ja"] body {
  font-family: "Hanken Grotesk", "Noto Sans JP", sans-serif;
}

html[lang="ja"] .font-headline-md,
html[lang="ja"] .font-headline-xl,
html[lang="ja"] .font-headline-lg,
html[lang="ja"] .font-headline-lg-mobile {
  font-family: "Domine", "Noto Sans JP", serif;
}

.hero-gradient {
  background: linear-gradient(
    to bottom,
    rgba(11, 31, 58, 0.55) 0%,
    rgba(11, 31, 58, 0.72) 45%,
    rgba(247, 249, 252, 0.92) 85%,
    #F7F9FC 100%
  );
}

.fire-glow {
  text-shadow: 0 0 24px rgba(201, 162, 39, 0.45), 0 2px 12px rgba(11, 31, 58, 0.5);
}

.hero-subtitle {
  text-shadow: 0 2px 8px rgba(11, 31, 58, 0.85), 0 1px 2px rgba(0, 0, 0, 0.6);
}

.hero-date {
  text-shadow: 0 2px 10px rgba(11, 31, 58, 0.9), 0 1px 3px rgba(0, 0, 0, 0.7);
}

.site-navbar {
  height: calc(5rem + env(safe-area-inset-top, 0px));
  padding-top: env(safe-area-inset-top, 0px);
}

.site-hero {
  margin-top: calc(5rem + env(safe-area-inset-top, 0px));
}

.card-hover:hover {
  transform: translateY(-8px);
  box-shadow: 0 10px 30px -10px rgba(26, 58, 107, 0.28);
}

.inner-kitchen-glow {
  box-shadow: inset 0 1px 1px rgba(107, 155, 195, 0.25);
}
