/* 高階・滿版大圖：開場整頁照片、上方選單浮在照片上、區塊之間穿插整條大照片（捲動時照片不動）。 */
.s-fullbleed { --bg: #fbfaf7; --bg2: #f1eee7; --fg: #1d2420; --muted: #66706a; --line: #e2ded4; --accent: #2f5d50; --on-accent: #fff; --card: #fff;
  --radius: 4px; --radius-btn: 999px; --font-head: var(--serif); --h1: clamp(2.8rem, 9vw, 6.2rem); }
.s-fullbleed .top { position: absolute; left: 0; right: 0; top: auto; background: linear-gradient(180deg, rgba(0,0,0,.45), transparent); border: 0; backdrop-filter: none; color: #fff; }
.s-fullbleed .top .brand small, .s-fullbleed .top .nav a { color: rgba(255,255,255,.85); }
.s-fullbleed .top .nav .nav-cta { background: #fff; color: var(--fg); }
.hero-full { min-height: 100svh; display: grid; place-items: center; text-align: center; color: #fff;
  background: #2f3b35 var(--hero) center / cover no-repeat; position: relative; overflow: hidden; }
.hero-full::before { content: ""; position: absolute; inset: 0; background: radial-gradient(ellipse at center, rgba(0,0,0,.25), rgba(0,0,0,.6)); }
.hero-full .hero-txt { position: relative; padding: 20px; max-width: 900px; }
.hero-full .hero-en { color: rgba(255,255,255,.85); letter-spacing: .5em; }
.hero-full h1 { text-shadow: 0 4px 30px rgba(0,0,0,.4); letter-spacing: .12em; }
.hero-full .hero-lede { color: rgba(255,255,255,.9); margin-inline: auto; font-size: 1.15rem; }
.hero-full .hero-act { justify-content: center; }
.hero-full .btn { background: #fff; color: var(--fg); border-color: #fff; }
.hero-full .btn-2 { background: transparent; color: #fff; }
.hero-down { position: absolute; bottom: 28px; left: 50%; width: 28px; height: 44px; margin-left: -14px; border: 2px solid rgba(255,255,255,.8); border-radius: 20px; }
.hero-down::after { content: ""; position: absolute; left: 50%; top: 8px; width: 4px; height: 8px; margin-left: -2px; background: #fff; border-radius: 2px; animation: scrolldot 1.6s infinite; }
@keyframes scrolldot { 0% { opacity: 1; transform: none; } 100% { opacity: 0; transform: translateY(14px); } }
@media (prefers-reduced-motion: no-preference) { .hero-full { animation: kenburns 18s ease-out both; background-size: 115%; } }
@keyframes kenburns { from { background-size: 125%; } to { background-size: 108%; } }
@media (max-width: 860px) { @keyframes kenburns { from { background-size: cover; } to { background-size: cover; } } }
/* 整條大照片：電腦上照片固定不動，內容捲過去（手機不支援 fixed，就一般捲動） */
.band { height: clamp(260px, 55vh, 520px); background: var(--band) center / cover no-repeat; }
@media (min-width: 1024px) and (hover: hover) { .band { background-attachment: fixed; } }
.s-fullbleed .sec { text-align: center; }
.s-fullbleed .sec-h { font-size: clamp(1.8rem, 4vw, 2.6rem); letter-spacing: .2em; }
.s-fullbleed .sec-h::after { content: ""; display: block; width: 1px; height: 40px; background: var(--accent); margin: 18px auto 0; }
.s-fullbleed .menu, .s-fullbleed .about, .s-fullbleed .info, .s-fullbleed .days { margin-inline: auto; text-align: left; max-width: 720px; }
.s-fullbleed .sec-act { justify-content: center; }
.s-fullbleed .pic { border-radius: 0; }
.s-fullbleed .pic img { aspect-ratio: 3 / 4; }
