/* ============================================================
   銘印鑽石 IMPRINT DIAMOND｜官網前端樣式
   品牌色：薄荷藍綠 #8eedf0／深咖啡黑 #2B2320
   字體：標題 Noto Serif TC（襯線）／內文 Noto Sans TC
============================================================ */

:root{
  --ink:        #2B2320;
  --ink-soft:   #5C534E;
  --ink-faint:  #8A817B;
  --mint:       #8eedf0;
  --mint-deep:  #52c4c8;
  --mint-soft:  #F0FBFB;
  --mint-line:  #D8F2F2;
  --paper:      #FDFCFA;
  --paper-warm: #F7F4F1;
  --gold:       #C4B49E;
  --gold-soft:  #EFE8DC;
  --serif: "Noto Serif TC", "PMingLiU", serif;
  --sans:  "Noto Sans TC", "Microsoft JhengHei", sans-serif;
  --shadow-soft: 0 20px 60px rgba(43,35,32,.08);
  --ease: cubic-bezier(.22,.61,.36,1);
  --radius-ui: 8px;
}

*{ margin:0; padding:0; box-sizing:border-box; }
html{ scroll-behavior:smooth; }
html.site-layout-ready .topbar,
html.site-layout-ready .nav,
html.site-layout-ready .footer,
html.site-layout-ready .site-footer{ opacity:1; transition:opacity .15s ease; }
body{
  font-family:var(--sans);
  color:var(--ink);
  background:var(--paper);
  line-height:1.9;
  letter-spacing:.05em;
  -webkit-font-smoothing:antialiased;
}
img, svg{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
ul{ list-style:none; }
button{ font-family:inherit; background:none; border:none; cursor:pointer; }

body .container{ width:min(1160px, 92vw); margin:0 auto; }

/* ---------- 通用元件 ---------- */
.eyebrow{
  font-size:12px; letter-spacing:.38em; color:var(--mint-deep);
  text-transform:uppercase; margin-bottom:16px; font-weight:500;
}
.section-title{
  font-family:var(--serif);
  font-size:clamp(26px, 3.4vw, 38px);
  font-weight:600; letter-spacing:.1em; line-height:1.6;
}
.section-lead{
  font-size:15px; color:var(--ink-soft); line-height:2.2;
  max-width:640px; margin-top:20px;
}
.btn{
  display:inline-block; font-size:14.5px; letter-spacing:.18em;
  padding:15px 42px; border-radius:var(--radius-ui); transition:all .35s var(--ease);
  white-space:nowrap;
}
.btn-dark{ background:var(--mint); color:var(--ink); }
.btn-dark:hover{ background:color-mix(in srgb,var(--mint) 65%,#fff); transform:translateY(-2px); }
.btn-mint{ background:var(--mint); color:var(--ink); font-weight:500; }
.btn-mint:hover{ background:color-mix(in srgb,var(--mint) 65%,#fff); transform:translateY(-2px); }
.btn-line{ border:1px solid var(--ink); color:var(--ink); }
.btn-line:hover{ background:var(--ink); color:#fff; }

button,
input[type="submit"],
input[type="button"],
input[type="reset"]{
  border-radius:var(--radius-ui);
}
.btn-ghost-light{ border:1px solid rgba(255,255,255,.5); color:#fff; }
.btn-ghost-light:hover{ background:rgba(255,255,255,.12); }

/* 進場顯示動畫（transform/opacity only — IntersectionObserver in main.js） */
.reveal{
  opacity:0;
  transform:translate3d(0,28px,0);
  transition:opacity .85s var(--ease), transform .85s var(--ease);
}
.reveal.is-in{ opacity:1; transform:none; }
.reveal-d1{ transition-delay:.12s; } .reveal-d2{ transition-delay:.24s; }
.reveal-d3{ transition-delay:.36s; } .reveal-d4{ transition-delay:.48s; }

@media (prefers-reduced-motion: reduce){
  .reveal,
  .reveal.is-in{
    opacity:1;
    transform:none;
    transition:none;
  }
  .reveal-d1, .reveal-d2, .reveal-d3, .reveal-d4{ transition-delay:0s; }
}

/* ---------- 頂部公告列 ---------- */
.topbar{
  background:var(--ink); color:#CFC6BF;
  font-size:12px; letter-spacing:.14em; text-align:center;
  padding:9px 16px;
}
.topbar b{ color:var(--mint); font-weight:500; }

.site-chrome{
  position:sticky;
  top:0;
  z-index:100;
}
