/* ==========================================================================
   遇幸福・電子喜帖工作室 — 版型 02 基礎排版與色彩變數系統 (base.css)
   Morandi Classic Silk & Wax-Seal Edition
   ========================================================================== */

:root {
  --wine: #865d4c;
  --mc-accent: var(--wine, #865d4c);
  --mc-accent-soft: #b89886;
  --mc-crimson: #b8333a;
  --mc-crimson-deep: #871f25;
  --mc-crimson-glow: rgba(184, 51, 58, 0.22);
  --mc-champagne: #c8a46e;
  --mc-champagne-light: #e5d1af;
  --mc-font-display: 'Cormorant Garamond', 'Noto Serif TC', Georgia, serif;
  --mc-font-serif: 'Noto Serif TC', serif;
  --mc-font-sans: 'Noto Sans TC', sans-serif;
  --mc-surface-bg: #fbf7f2;
  --mc-surface-alt: #f2eae2;
  --mc-surface-card: #fffdf9;
  --mc-pocket-main: #efe3d4;
  --mc-pocket-wing: #e7d8c6;
  --mc-pocket-base: #ecdecb;
  --mc-pocket-lid: #e2d0ba;
  --mc-pocket-liner: #d2beaa;
  --mc-ink: #2e2420;
  --mc-ink-muted: #75635a;
  --mc-frosted-bg: rgba(255, 255, 255, 0.85);
  --mc-frosted-border: #cbb999;
  --mc-corner-radius: 2px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 80px;
  font-size: 14px;
}

html,
body {
  margin: 0;
  padding: 0;
  height: auto;
  overflow-x: clip;
  color: var(--mc-ink);
  background-color: var(--mc-surface-bg);
  font-family: var(--mc-font-sans);
  -webkit-font-smoothing: antialiased;
}

body.is-prelude-locked {
  overflow: hidden;
}

h1,
h2,
h3 {
  margin-top: 0;
  font-weight: 400;
  font-family: var(--mc-font-serif);
}

h2 {
  font-size: 34px;
  letter-spacing: 0.09em;
  line-height: 1.65;
  margin: 18px 0;
}

p {
  color: inherit;
  font-size: 14px;
  line-height: 2;
}

a {
  color: inherit;
  text-decoration: none;
  transition: color 0.25s ease, opacity 0.25s ease;
}

button,
input,
select,
textarea {
  font: inherit;
}

button {
  cursor: pointer;
}

img {
  max-width: 100%;
  display: block;
}

[hidden] {
  display: none !important;
}

:focus-visible {
  outline: 2px solid var(--mc-crimson);
  outline-offset: 4px;
}

.mc-skip-anchor {
  position: absolute;
  left: -9999px;
}

.mc-skip-anchor:focus {
  left: 12px;
  top: 12px;
  background: #ffffff;
  color: var(--mc-ink);
  z-index: 1200;
  padding: 12px 16px;
  border-radius: 8px;
}
