body:has(main .prose) .nav {
  background: rgba(244, 234, 215, 0.97) !important;
  border-bottom: 1px solid rgba(42, 33, 24, 0.12);
  box-shadow: 0 8px 28px rgba(42, 33, 24, 0.06);
  backdrop-filter: blur(12px);
}

body:has(main .prose) .nav .title,
body:has(main .prose) .nav .nav-links a {
  color: #2a2118 !important;
}

body:has(main .prose) .nav .nav-cta {
  color: #7b2d26 !important;
  border-color: rgba(123, 45, 38, 0.4) !important;
}

body:has(main .prose) main {
  padding-top: 5rem;
}

.prose {
  color: #352b22;
  font-size: 1.0625rem;
  line-height: 1.86;
}

.prose p {
  margin: 1.05em 0;
}

.prose h2 {
  margin: 2.1em 0 0.65em;
  color: #2a2118;
  font-family: Georgia, "Noto Serif TC", "Songti TC", serif;
  font-size: clamp(1.4rem, 2vw, 1.75rem);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: -0.01em;
}

.prose h3 {
  margin: 1.7em 0 0.55em;
  color: #2a2118;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.45;
}

.prose ul,
.prose ol {
  margin: 1em 0;
  padding-left: 1.5em;
}

.prose ul {
  list-style: disc;
}

.prose ol {
  list-style: decimal;
}

.prose li {
  margin: 0.45em 0;
  padding-left: 0.2em;
}

.prose a {
  color: #7b2d26;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}

.prose strong {
  color: #2a2118;
  font-weight: 700;
}

@media (max-width: 768px) {
  body:has(main .prose) main {
    padding-top: 4.5rem;
  }

  body:has(main .prose) .nav .hamb span {
    background: #2a2118;
  }

  .prose {
    font-size: 1rem;
    line-height: 1.8;
  }

  .nav .hamb {
    position: relative !important;
    z-index: 1002 !important;
  }

  .nav .nav-links.open {
    z-index: 1001 !important;
  }

  .nav:has(.nav-links.open) .hamb span {
    background: #2a2118 !important;
    transform-origin: center;
    transition: transform 180ms ease, opacity 180ms ease;
  }

  .nav:has(.nav-links.open) .hamb span:first-child {
    transform: translateY(7px) rotate(45deg);
  }

  .nav:has(.nav-links.open) .hamb span:nth-child(2) {
    opacity: 0;
  }

  .nav:has(.nav-links.open) .hamb span:last-child {
    transform: translateY(-7px) rotate(-45deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  .nav .hamb span {
    transition: none !important;
  }
}
