:root{--ink:#1b1610;--ink-soft:#48402f;--ink-faint:#867a5f;--red:#a5341f;--red-deep:#87281a;--red-soft:#a5341f5c;--gold:#c29a44;--gold-bright:#dab45e;--gold-line:#c29a445c;--paper:#f3e7d0;--paper-2:#ecdfc5;--card:#faf3e2;--hero-home:image-set(url(/images/hero-home.webp) type("image/webp"), url(/images/hero-home.jpg) type("image/jpeg"));--maxw:1200px;--read:760px;--nav-h:68px;--f-serif:"Songti TC","STSongti","STSong","Noto Serif TC","PingFang TC",serif;--f-sans:"PingFang TC","Heiti TC",-apple-system,"Segoe UI",sans-serif;--ease:cubic-bezier(.22,.61,.36,1);--t-label:.78rem;--t-sm:.94rem;--t-body:1.0625rem;--t-lead:1.19rem;--t-h4:1.19rem;--t-h3:1.34rem;--t-title:clamp(1.6rem,2.4vw,2.05rem);--t-hero:clamp(2.5rem,4.8vw,3.6rem);--sp-sec:clamp(4.5rem,9vh,7rem);--sp-head:clamp(2.75rem,5vw,3.75rem)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--f-sans);color:var(--ink);background:var(--paper);font-size:var(--t-body);letter-spacing:.01em;-webkit-font-smoothing:antialiased;line-height:1.9;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(24px,5vw,56px)}[data-reveal]{opacity:0;transition:opacity .8s var(--ease),transform .8s var(--ease);transform:translateY(26px)}[data-reveal].in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transition:none;transform:none}}.kicker{font-family:var(--f-sans);font-size:var(--t-label);letter-spacing:.28em;color:var(--red);font-weight:600;display:inline-block}.btn{font-family:var(--f-sans);letter-spacing:.06em;cursor:pointer;transition:.24s var(--ease);white-space:nowrap;border:1px solid #0000;border-radius:3px;padding:14px 30px;font-size:.96rem;display:inline-block}.btn-red{background:var(--red);color:#f7f0e2;font-weight:600;box-shadow:0 8px 22px -12px #9e3b2c99}.btn-red:hover{background:var(--red-deep);transform:translateY(-2px)}.btn-ghost{border-color:var(--gold-line);color:var(--ink)}.btn-ghost:hover{border-color:var(--gold);background:#b08a3e14}.btn-ink{border-color:var(--ink);color:var(--ink)}.btn-ink:hover{background:var(--ink);color:var(--paper)}.seal{border:2px solid var(--red);width:74px;height:74px;color:var(--red);text-align:center;font-family:var(--f-serif);letter-spacing:.06em;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.92rem;font-weight:700;line-height:1.3;display:flex;transform:rotate(-4deg)}.band{padding:var(--sp-sec) 0;scroll-margin-top:var(--nav-h);position:relative}.band.tint{background:var(--paper-2)}.sec-head{text-align:center;max-width:640px;margin:0 auto var(--sp-head)}.sec-head .en{font-family:var(--f-sans);letter-spacing:.34em;color:var(--gold);text-transform:uppercase;margin-bottom:14px;font-size:.74rem;font-weight:600;display:block}.sec-head .line{background:var(--gold);opacity:.7;width:36px;height:1px;margin:20px auto 0}.sec-title{font-family:var(--f-serif);font-weight:600;font-size:var(--t-title);letter-spacing:.02em;color:var(--ink);line-height:1.5}.sec-intro{color:var(--ink-soft);font-size:var(--t-body);margin-top:16px;line-height:1.9}nav{z-index:50;height:var(--nav-h);align-items:center;transition:background .3s,box-shadow .3s,backdrop-filter .3s;display:flex;position:fixed;top:0;left:0;right:0}nav.scrolled{backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--gold-line);background:#f4eddedb}nav .in{max-width:var(--maxw);justify-content:space-between;align-items:center;width:100%;margin:0 auto;padding:0 clamp(24px,5vw,56px);display:flex}nav .logo{font-family:var(--f-serif);letter-spacing:.12em;color:#fbf4e4;text-shadow:0 1px 12px #140e088c;font-size:1.06rem;font-weight:700}nav .links{align-items:center;gap:19px;display:flex}nav .links a{color:#f3e7d0;letter-spacing:.04em;white-space:nowrap;text-shadow:0 1px 10px #140e0880;font-size:.9rem;transition:color .2s}nav .links a:hover{color:#fff}nav .links a.navcta{color:#fff;text-shadow:none;padding:9px 22px;font-size:.9rem}nav .social{align-items:center;gap:12px;margin-left:4px;display:flex}nav .social a{color:#f3e7d0;filter:drop-shadow(0 1px 8px #140e0880);transition:color .2s;display:flex}nav .social a:hover{color:#fff}nav .social svg{width:18px;height:18px;display:block}nav.scrolled .logo{color:var(--ink);text-shadow:none}nav.scrolled .links a{color:var(--ink-soft);text-shadow:none}nav.scrolled .links a:hover{color:var(--red)}nav.scrolled .links a.navcta{color:#fff}nav.scrolled .social a{color:var(--ink-soft);filter:none}.navtoggle{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;padding:9px;display:none}.navtoggle span{width:100%;height:2px;transition:transform .28s var(--ease),opacity .2s;background:#f3e7d0;border-radius:2px;display:block;box-shadow:0 1px 4px #140e0880}nav.scrolled .navtoggle span,nav.menu-open .navtoggle span{background:var(--ink);box-shadow:none}nav.menu-open .navtoggle span:first-child{transform:translateY(7px)rotate(45deg)}nav.menu-open .navtoggle span:nth-child(2){opacity:0}nav.menu-open .navtoggle span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}nav.menu-open{backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--gold-line);background:#f4eddefa}.mobmenu{top:var(--nav-h);backdrop-filter:blur(12px);border-top:1px solid var(--gold-line);background:#f4eddefa;flex-direction:column;padding:8px clamp(24px,5vw,56px) 24px;display:none;position:absolute;left:0;right:0;box-shadow:0 22px 40px -22px #3c281473}nav.menu-open .mobmenu{display:flex}.mobmenu a{color:var(--ink-soft);border-bottom:1px solid var(--gold-line);letter-spacing:.04em;padding:16px 4px;font-size:1.05rem}.mobmenu a:hover{color:var(--red)}.mobmenu a.btn{text-align:center;color:#f7f0e2;border-bottom:none;margin-top:16px}.mobmenu .mobsocial{gap:24px;margin-top:20px;display:flex}.mobmenu .mobsocial a{color:var(--ink-soft);border:none;padding:0;display:flex}.mobmenu .mobsocial svg{width:22px;height:22px}@media (width<=900px){nav .links{display:none}.navtoggle{display:flex}}.hero{min-height:88vh;padding:calc(var(--nav-h) + 40px) 0 60px;background:var(--hero-home) center/cover no-repeat;align-items:center;display:flex;position:relative;overflow:hidden}.hero:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(100deg,#f5eddce6 0%,#f5eddc9e 32%,#f5eddc00 60%);position:absolute;inset:0}.hero .wrap{z-index:1;width:100%;position:relative}.hero .col{text-align:left;max-width:600px}.hero .kicker{margin-bottom:24px}.hero h1{font-family:var(--f-serif);letter-spacing:.03em;color:var(--ink);font-size:clamp(1.8rem,3.1vw,2.5rem);font-weight:700;line-height:1.5}.hero h1 em{color:var(--red);font-style:normal}.hero .lede{max-width:40ch;color:var(--ink-soft);font-size:var(--t-body);margin:24px 0 0;line-height:1.95}.hero .cta-row{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:14px;margin-top:38px;display:flex}.scrollcue{color:var(--ink-faint);letter-spacing:.3em;writing-mode:vertical-rl;z-index:2;align-items:center;gap:12px;font-size:.72rem;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.scrollcue:after{content:"";background:linear-gradient(var(--gold),transparent);width:1px;height:40px;animation:cue 2s var(--ease) infinite}@keyframes cue{0%{opacity:.2;transform:scaleY(.4)}50%{opacity:1}to{opacity:.2;transform:scaleY(1)}}.svc3{grid-template-columns:repeat(3,1fr);gap:18px;max-width:1000px;margin:0 auto;display:grid}.s3card{background:var(--card);border:1px solid var(--gold-line);text-align:center;transition:transform .3s var(--ease),box-shadow .3s var(--ease);border-radius:12px;flex-direction:column;padding:clamp(30px,3vw,40px);display:flex}.s3card:hover{transform:translateY(-5px);box-shadow:0 24px 44px -28px #3c28146b}.s3card .ic{border:1px solid var(--red-soft);width:60px;height:60px;color:var(--red);font-family:var(--f-serif);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 20px;font-size:1.6rem;font-weight:700;display:flex}.s3card h3{font-family:var(--f-serif);font-weight:600;font-size:var(--t-h3);color:var(--ink);margin-bottom:12px}.s3card p{color:var(--ink-soft);font-size:var(--t-body);flex:1;line-height:1.9}.s3card .pr{color:var(--red);font-family:var(--f-serif);margin:16px 0 4px;font-size:1.16rem;font-weight:700}.s3card .more{color:var(--red);letter-spacing:.04em;margin-top:16px;font-size:.92rem;font-weight:600}.about{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(32px,5vw,64px);max-width:1060px;margin:0 auto;display:grid}.about .aside{top:calc(var(--nav-h) + 30px);position:sticky}.about .qcard{border:1px solid var(--gold-line);background:linear-gradient(180deg,#b08a3e0f,var(--card));border-radius:10px;padding:clamp(30px,3vw,42px)}.about .qcard .seal{margin-bottom:24px}.about .qcard q{font-family:var(--f-serif);quotes:none;color:var(--red);font-size:clamp(1.3rem,2.2vw,1.7rem);font-weight:700;line-height:1.62;display:block}.about .qcard .who{border-top:1px solid var(--gold-line);color:var(--ink);font-family:var(--f-serif);letter-spacing:.06em;margin-top:22px;padding-top:18px;font-size:1rem}.about .body .sub-k{font-family:var(--f-serif);color:var(--red);letter-spacing:.1em;margin:0 0 14px;font-size:1.02rem;font-weight:700}.about .body p{color:var(--ink-soft);font-size:var(--t-lead);margin-bottom:16px;line-height:2.1}.about .body p.lead{color:var(--ink);font-family:var(--f-serif);font-weight:500}.about .body b{color:var(--red);font-weight:700}.about .cta-row{margin-top:14px}.grid-4{grid-template-columns:repeat(4,1fr);gap:18px;max-width:1080px;margin:0 auto;display:grid}.fcard{background:var(--card);border:1px solid var(--gold-line);transition:transform .3s var(--ease),box-shadow .3s var(--ease);border-radius:12px;overflow:hidden}.fcard:hover{transform:translateY(-5px);box-shadow:0 24px 44px -28px #3c28146b}.fcard .top{color:#fff;background:linear-gradient(135deg,#e6d3a6,#c9a45c);justify-content:center;align-items:center;height:90px;display:flex}.fcard:nth-child(2) .top{background:linear-gradient(135deg,#d8b98a,#b0782e)}.fcard:nth-child(3) .top{background:linear-gradient(135deg,#c9a887,#9c7440)}.fcard:nth-child(4) .top{background:linear-gradient(135deg,#cbb7a0,#8a6d4e)}.fcard .top span{font-family:var(--f-serif);text-shadow:0 2px 10px #3c28144d;font-size:1.7rem;font-weight:700}.fcard .in{padding:24px clamp(20px,2vw,26px) 28px}.fcard h3{font-family:var(--f-serif);font-weight:600;font-size:var(--t-h3);color:var(--ink);margin-bottom:10px;line-height:1.5}.fcard p{color:var(--ink-soft);font-size:var(--t-sm);line-height:1.85}.stars{color:var(--gold);letter-spacing:3px;text-align:center;margin-bottom:22px;font-size:1rem}.shots{grid-template-columns:repeat(2,1fr);gap:clamp(20px,3vw,36px);max-width:720px;margin:0 auto;display:grid}.shot{border:1px solid var(--gold-line);background:var(--card);border-radius:14px;margin:0;overflow:hidden;box-shadow:0 26px 54px -32px #3c28148c}.shot img{width:100%;display:block}.shot figcaption{text-align:center;font-family:var(--f-serif);color:var(--ink);letter-spacing:.08em;border-top:1px solid var(--gold-line);padding:15px 16px;font-size:1rem}.shot figcaption .st{color:var(--gold);letter-spacing:2px;margin-top:6px;font-size:.86rem;display:block}.shotnote{text-align:center;color:var(--ink-faint);letter-spacing:.04em;margin:0 auto 30px;font-size:.86rem}.agrid{grid-template-columns:repeat(3,1fr);gap:24px;max-width:1080px;margin:0 auto;display:grid}.acard{background:var(--card);border:1px solid var(--gold-line);transition:transform .3s var(--ease),box-shadow .3s var(--ease);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.acard:hover{transform:translateY(-5px);box-shadow:0 26px 46px -28px #3c281473}.acard .thumb{background:linear-gradient(135deg,#e6d3a6,#c9a45c);align-items:flex-end;height:160px;padding:16px;display:flex;position:relative}.acard .thumb.b{background:linear-gradient(135deg,#d8b98a,#b0782e)}.acard .thumb.c{background:linear-gradient(135deg,#cbb7a0,#8a6d4e)}.acard .cat{font-family:var(--f-sans);letter-spacing:.14em;color:#fff;backdrop-filter:blur(4px);background:#1b16106b;border-radius:999px;padding:5px 12px;font-size:.72rem}.acard .in{flex-direction:column;flex:1;padding:22px clamp(20px,2vw,26px) 26px;display:flex}.acard .date{font-family:var(--f-sans);letter-spacing:.1em;color:var(--ink-faint);margin-bottom:10px;font-size:.78rem}.acard h3{font-family:var(--f-serif);color:var(--ink);margin-bottom:12px;font-size:1.16rem;font-weight:600;line-height:1.55}.acard p{color:var(--ink-soft);font-size:var(--t-sm);flex:1;line-height:1.8}.acard .more{color:var(--red);letter-spacing:.04em;margin-top:18px;font-size:.9rem;font-weight:600}.colnote{text-align:center;margin-top:34px}.colnote a{color:var(--red);letter-spacing:.04em;font-size:.92rem;font-weight:600}.linebox{text-align:center;border:1px solid var(--gold-line);background:var(--card);border-radius:14px;max-width:660px;margin:0 auto;padding:clamp(34px,4vw,52px);box-shadow:0 26px 54px -34px #3c281480}.linebox .seal{margin:0 auto 24px}.linebox h2{font-family:var(--f-serif);color:var(--ink);margin-bottom:14px;font-size:clamp(1.5rem,2.6vw,2rem);font-weight:700;line-height:1.5}.linebox p{color:var(--ink-soft);font-size:var(--t-body);max-width:40ch;margin:0 auto;line-height:1.9}.linebox .qr{border:1px dashed var(--red-soft);width:172px;height:172px;color:var(--ink-faint);text-align:center;background:#ffffff73;border-radius:12px;justify-content:center;align-items:center;margin:28px auto 24px;padding:12px;font-size:.78rem;line-height:1.7;display:flex}.linebox .id{color:var(--ink-faint);letter-spacing:.06em;margin-top:18px;font-size:.9rem}footer{border-top:1px solid var(--gold-line);text-align:center;padding:44px 0}footer .logo{font-family:var(--f-serif);letter-spacing:.14em;color:var(--red);font-size:1.06rem;font-weight:700}footer .fnav{flex-wrap:wrap;justify-content:center;gap:22px;margin-top:18px;display:flex}footer .fnav a{color:var(--ink-soft);letter-spacing:.04em;font-size:.9rem;transition:color .2s}footer .fnav a:hover{color:var(--red)}footer .fsocial{justify-content:center;gap:18px;margin-top:18px;display:flex}footer .fsocial a{color:var(--ink-faint);transition:color .2s}footer .fsocial a:hover{color:var(--red)}footer .fsocial svg{width:20px;height:20px}footer p{color:var(--ink-faint);letter-spacing:.1em;margin-top:18px;font-size:.82rem}.mobcta{z-index:40;padding:12px 16px calc(12px + env(safe-area-inset-bottom));backdrop-filter:blur(12px);border-top:1px solid var(--gold-line);background:#f4eddef0;display:none;position:fixed;bottom:0;left:0;right:0}.mobcta a{text-align:center;display:block}@media (width<=960px){.about{grid-template-columns:1fr;gap:36px}.about .aside{position:static}.grid-4,.agrid{grid-template-columns:repeat(2,1fr)}}@media (width<=720px){.hero{min-height:70vh;padding:calc(var(--nav-h) + 48px) 0 56px;background-position:32%}.hero:before{background:linear-gradient(#f5eddcf0 34%,#f5eddc80)}.hero .col{text-align:center;max-width:none}.hero h1{font-size:clamp(1.55rem,6.4vw,2rem)}.hero .lede{margin-left:auto;margin-right:auto}.hero .lede br.dbr{display:none}.hero .cta-row{justify-content:center}.svc3,.grid-4,.agrid,.shots{grid-template-columns:1fr!important}.shots{max-width:360px}.scrollcue{display:none}.mobcta{display:block}footer{padding-bottom:90px}}
