/* Shintaku AI – shintaku-oracle.com. No web fonts, no external requests. */
:root{--night:#1d1430;--plum:#2c1d47;--dusk:#4a2f63;--gold:#f2c46d;--gold2:#ffe2a0;--ink:#fff6ee;--soft:#e8dcef;--sakura:#ffc9dc;--line:rgba(255,226,160,.22);--card:rgba(255,255,255,.06)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--night);color:var(--ink);font:16px/1.75 "Hiragino Maru Gothic ProN","Hiragino Sans","PingFang TC","Noto Sans JP","Noto Sans TC","Microsoft JhengHei","Yu Gothic",system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--gold2)}a:hover{color:#fff}
img{max-width:100%;height:auto}
.wrap{max-width:1080px;margin:0 auto;padding:0 22px}
.site-head{position:sticky;top:0;z-index:10;background:rgba(29,20,48,.86);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;height:60px;gap:12px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.brand img{border-radius:50%;border:1px solid var(--line)}
.brand b{font-size:18px;letter-spacing:.02em;color:var(--gold2)}
.brand small{display:block;font-size:10px;letter-spacing:.18em;opacity:.7;line-height:1}
.head-nav{display:flex;gap:16px;align-items:center;font-size:14px}
.head-nav a{text-decoration:none;color:var(--soft)}.head-nav a:hover{color:#fff}
.head-nav .lang{border:1px solid var(--line);border-radius:999px;padding:3px 10px}
.hero{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(29,20,48,.25),var(--night) 92%),url(/assets/img/shrine.webp) center/cover no-repeat;padding:64px 0 40px}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:center}
.hero h1{font-size:clamp(28px,4.2vw,44px);line-height:1.3;margin:10px 0 16px;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.45)}
.hero .lead{font-size:17px;color:var(--soft);max-width:36em;text-shadow:0 1px 10px rgba(0,0,0,.5)}
.hero-logo{display:flex;align-items:center;gap:14px}
.hero-logo img{border-radius:50%;border:2px solid var(--gold);box-shadow:0 0 30px rgba(242,196,109,.35)}
.hero-logo b{font-size:28px;color:var(--gold2);letter-spacing:.03em}.hero-logo small{display:block;font-size:12px;letter-spacing:.2em;opacity:.8}
.hero-visual{display:flex;justify-content:center}
.hero-visual img{max-height:520px;width:auto;filter:drop-shadow(0 18px 40px rgba(0,0,0,.55))}
.stores{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:22px}
.store{display:inline-flex;flex-direction:column;justify-content:center;min-width:170px;padding:9px 18px;border-radius:14px;background:#000;border:1px solid rgba(255,255,255,.25);color:#fff;text-decoration:none;line-height:1.25}
.store span{font-size:11px;opacity:.75}.store strong{font-size:19px}
.store.soon{opacity:.75}.note{font-size:13px;color:var(--gold2)}
.block{padding:64px 0}.block.alt{background:linear-gradient(180deg,var(--plum),var(--night))}
.kicker{color:var(--gold);letter-spacing:.14em;font-size:13px;font-weight:700;margin:0 0 6px;text-transform:uppercase}
h2{font-size:clamp(24px,3.6vw,34px);line-height:1.35;margin:0 0 14px;color:#fff}
.split{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
.split.flip>div:first-child{order:2}
.chips{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.chips li{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:4px 12px;font-size:14px}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.cards figure{margin:0;text-align:center;font-size:13px;color:var(--soft)}
.cards img{border-radius:12px;box-shadow:0 10px 26px rgba(0,0,0,.45)}
.bubble{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px 18px;margin:10px 0;font-size:15px}
.bubble.me{background:rgba(242,196,109,.14);margin-left:18%}
.bubble b{display:block;font-size:12px;color:var(--gold);letter-spacing:.06em}
.assure{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.assure li{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px;display:flex;gap:10px;align-items:center;font-weight:700}
.assure .ic{font-size:22px}
.small{font-size:13px;color:var(--soft);opacity:.9}
.page{max-width:820px;margin:0 auto;padding:44px 22px 70px}
.page h1{font-size:clamp(26px,4vw,36px);margin:0 0 6px;color:var(--gold2)}
.page .meta{font-size:14px;color:var(--soft);margin-bottom:22px}
.box{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 24px;margin:0 0 18px}
.box h2{font-size:22px}.box h3{font-size:17px;margin:22px 0 6px;color:var(--gold2)}
.mail{display:inline-block;font-size:19px;font-weight:700;margin:6px 0 10px}
details{border-top:1px solid var(--line);padding:12px 0}details:first-of-type{border-top:0}
summary{cursor:pointer;font-weight:700}
.site-foot{border-top:1px solid var(--line);padding:28px 0 40px;font-size:14px;color:var(--soft)}
.site-foot nav{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:10px}
.site-foot a{color:var(--soft);text-decoration:none}.site-foot a:hover{color:#fff}
@media (max-width:820px){.hero .wrap,.split{grid-template-columns:1fr}.split.flip>div:first-child{order:0}.hero-visual img{max-height:380px}.cards{grid-template-columns:repeat(4,1fr);gap:8px}.assure{grid-template-columns:1fr 1fr}.hide-sm{display:none}}
@media (max-width:480px){.cards{grid-template-columns:repeat(2,1fr)}.assure{grid-template-columns:1fr}.bubble.me{margin-left:8%}}
