:root{--bg:#f4f4f2;--paper:#fbfaf7;--ink:#121212;--muted:#68645f;--line:#12121224;--accent:#8f182f;--accent-dark:#5e0e1e;--chrome:#d8d8d5;--shadow:0 34px 110px #12121221;--radius:24px;--serif:Didot, "Bodoni 72", "Bodoni 72 Smallcaps", "Noto Serif TC", "Songti TC", serif;--sans:"Avenir Next", "Helvetica Neue", "Noto Sans TC", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg);font-size:17px}body{min-height:100dvh;color:var(--ink);background:radial-gradient(circle at 12% 8%, #8f182f14, transparent 24rem), radial-gradient(circle at 94% 18%, #12121214, transparent 20rem), linear-gradient(180deg, #f7f7f5 0%, var(--bg) 42%, #eeeeea 100%);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow-x:hidden}body:before{content:"";z-index:80;pointer-events:none;opacity:.2;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E");position:fixed;inset:0}::selection{background:var(--accent);color:#fff}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}main{width:100%;max-width:100%;overflow-x:hidden}.container{width:min(100% - 40px,1480px);margin-inline:auto}.narrow{width:min(100% - 40px,920px);margin-inline:auto}.site-header{z-index:60;-webkit-backdrop-filter:blur(24px)saturate(130%);backdrop-filter:blur(24px)saturate(130%);background:#fbfaf7c7;border:1px solid #1212121f;border-radius:999px;width:min(100% - 40px,1280px);height:68px;margin:14px auto 0;position:sticky;top:14px;box-shadow:0 18px 70px #1212121c}.site-header__inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:22px;height:100%;padding:0 10px 0 22px;display:grid}.brand-mark{font-family:var(--serif);letter-spacing:.04em;align-items:center;gap:12px;font-size:clamp(1.2rem,1.8vw,1.5rem);line-height:1.1;display:flex}.brand-logo{object-fit:contain;width:auto;height:38px}.brand-text{flex-direction:column;display:flex}.brand-mark small{color:var(--muted);font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;margin-top:2px;font-size:.68rem;font-weight:500;display:block}.nav-links{white-space:nowrap;justify-content:center;align-items:center;gap:clamp(14px,2.4vw,38px);display:flex}.nav-links a{letter-spacing:.04em;color:#121212b8;font-size:.92rem;transition:color .22s;position:relative}.nav-links a:after{content:"";transform-origin:0;background:var(--accent);height:1px;transition:transform .26s;position:absolute;bottom:-8px;left:0;right:0;transform:scaleX(0)}.nav-links a:hover{color:var(--ink)}.nav-links a:hover:after{transform:scaleX(1)}.header-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.btn,.button{letter-spacing:.02em;cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:44px;padding:0 20px;font-size:.92rem;font-weight:650;transition:transform .22s,background .22s,color .22s,border-color .22s;display:inline-flex}.btn:active,.button:active{transform:translateY(1px)scale(.99)}.btn-primary{background:var(--ink);color:#fff;border-color:var(--ink)}.btn-primary:hover{background:var(--accent);border-color:var(--accent)}.btn-accent{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-accent:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.btn-outline{color:var(--ink);background:#ffffff6b;border-color:#12121238}.btn-outline:hover{border-color:var(--ink);background:#fff}.hero{min-height:calc(100dvh - 90px);padding:clamp(54px,7vw,92px) 0 clamp(56px,8vw,110px);position:relative}.hero-grid{grid-template-columns:minmax(0,1.02fr) minmax(340px,.72fr);align-items:end;gap:clamp(32px,6vw,92px);display:grid}.hero-copy{padding-top:28px}.kicker{border-bottom:1px solid var(--accent);width:fit-content;color:var(--accent);letter-spacing:.2em;text-transform:uppercase;align-items:center;padding-bottom:8px;font-size:.74rem;font-weight:700;display:inline-flex}.hero h1{max-width:980px;font-family:var(--serif);letter-spacing:.01em;margin:28px 0;font-size:clamp(2.4rem,5.5vw,4rem);font-weight:400;line-height:1.25}.hero h1 span{letter-spacing:.01em;font-style:italic}.hero p{color:#121212c2;max-width:620px;margin:0 0 32px;font-size:clamp(1rem,1.3vw,1.28rem);line-height:1.82}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-media{align-self:stretch;min-height:560px;position:relative}.hero-photo{border-radius:calc(var(--radius) * 1.25);box-shadow:var(--shadow);background:#1d1d1d;position:absolute;inset:0;overflow:hidden}.hero-photo img{object-fit:cover;filter:grayscale()contrast(1.22)brightness(.72);width:100%;height:100%;transform:scale(1.03)}.hero-photo:after{content:"";background:linear-gradient(#0000000a,#00000057);position:absolute;inset:0}.editorial-panel{color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#12121294;border:1px solid #ffffff47;border-radius:22px;width:min(84%,420px);padding:22px;position:absolute;bottom:32px;left:-54px}.editorial-panel strong{font-family:var(--serif);letter-spacing:-.04em;margin-bottom:8px;font-size:1.8rem;font-weight:400;display:block}.editorial-panel p{color:#ffffffd1;margin:0;font-size:.92rem;line-height:1.7}.section{padding:clamp(92px,12vw,178px) 0}.section-tight{padding:clamp(68px,8vw,126px) 0}.section-header{max-width:760px;margin-bottom:clamp(34px,5vw,72px)}.section-header.centered{text-align:center;margin-inline:auto}.section-header h2,.page-title h1{font-family:var(--serif);letter-spacing:.01em;margin:0;font-size:clamp(1.8rem,3.8vw,2.6rem);font-weight:400;line-height:1.3}.section-header p,.page-title p{max-width:620px;color:var(--muted);margin:22px 0 0;font-size:clamp(1rem,1.2vw,1.18rem);line-height:1.8}.section-header.centered p{margin-inline:auto}.magazine-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;gap:18px;display:grid}.record-card{border-radius:var(--radius);background:var(--paper);min-height:520px;transition:transform .42s,box-shadow .42s;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 80px #1212121a}.record-card:hover{transform:translateY(-8px);box-shadow:0 36px 110px #12121229}.record-card.small{min-height:410px}.record-card.wide{grid-column:span 7}.record-card.tall{grid-area:span 2/span 5;min-height:720px}.record-card.normal{grid-column:span 4}.record-card__image{position:absolute;inset:0;overflow:hidden}.record-card__image img{object-fit:cover;filter:grayscale()contrast(1.16)brightness(.72);width:100%;height:100%;transition:transform .76s,filter .76s}.record-card:hover .record-card__image img{filter:grayscale(.68)contrast(1.2)brightness(.66);transform:scale(1.06)}.record-card__image:after{content:"";background:linear-gradient(#00000014,#000000b8);position:absolute;inset:0}.record-card__content{z-index:1;color:#fff;flex-direction:column;justify-content:flex-end;width:100%;padding:clamp(22px,3vw,42px);display:flex;position:relative}.meta-line{color:#ffffffb8;letter-spacing:.09em;flex-wrap:wrap;gap:10px 14px;margin-bottom:18px;font-size:.78rem;display:flex}.record-card h3{max-width:650px;font-family:var(--serif);letter-spacing:.01em;margin:0;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:400;line-height:1.3}.record-card.small h3,.record-card.normal h3{font-size:clamp(1.3rem,2.2vw,1.8rem)}.record-card p{color:#ffffffd1;max-width:560px;margin:18px 0 0;line-height:1.72}.category-grid{border:1px solid var(--line);border-radius:calc(var(--radius) * 1.2);background:var(--line);grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.category-card{background:#fbfaf7d1;min-height:320px;padding:26px;transition:background .28s,color .28s}.category-card:hover{background:var(--ink);color:#fff}.category-card__number{color:var(--accent);font-family:var(--serif);letter-spacing:-.08em;margin-bottom:76px;font-size:3.8rem;display:block}.category-card:hover .category-card__number{color:#fff}.category-card h3{font-family:var(--serif);letter-spacing:-.05em;margin:0 0 14px;font-size:2.1rem;font-weight:400;line-height:1}.category-card p{color:var(--muted);margin:0;line-height:1.7}.category-card:hover p{color:#ffffffb8}.split-editorial{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:start;gap:clamp(28px,5vw,82px);display:grid}.sticky-title{position:sticky;top:120px}.star-list{gap:18px;display:grid}.star-card{border:1px solid var(--line);border-radius:var(--radius);background:#fbfaf7db;grid-template-columns:170px 1fr;gap:24px;min-height:230px;transition:transform .36s,box-shadow .36s,border-color .36s;display:grid;overflow:hidden}.star-card:hover{border-color:#8f182f6b;transform:translateY(-6px);box-shadow:0 28px 90px #1212121f}.star-card__media{background:#222;overflow:hidden}.star-card__media img{object-fit:cover;filter:grayscale()contrast(1.1);width:100%;height:100%;min-height:230px;transition:transform .72s,filter .72s}.star-card:hover .star-card__media img{filter:grayscale(.48)contrast(1.08);transform:scale(1.06)}.star-card__body{flex-direction:column;justify-content:center;padding:28px 26px 28px 0;display:flex}.star-number,.service-category{color:var(--accent);letter-spacing:.08em;font-size:.84rem;font-weight:700}.star-card h3,.service-card h3{font-family:var(--serif);letter-spacing:.01em;margin:8px 0;font-size:clamp(1.4rem,2.4vw,1.9rem);font-weight:400;line-height:1.35}.star-card p,.service-card p{color:var(--muted);margin:0;line-height:1.72}.chip-row{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.chip{border:1px solid var(--line);color:#121212bd;background:#ffffff70;border-radius:999px;align-items:center;min-height:30px;padding:0 12px;font-size:.78rem;display:inline-flex}.service-scroll{grid-template-columns:repeat(4,minmax(290px,1fr));gap:18px;display:grid}.service-card{border:1px solid var(--line);border-radius:var(--radius);background:#fbfaf7d6;min-height:510px;transition:transform .36s,box-shadow .36s;position:relative;overflow:hidden}.service-card:hover{transform:translateY(-8px);box-shadow:0 28px 90px #1212121f}.service-card__image{height:230px;overflow:hidden}.service-card__image img{object-fit:cover;filter:grayscale(.8)contrast(1.12);width:100%;height:100%;transition:transform .76s}.service-card:hover .service-card__image img{transform:scale(1.06)}.service-card__body{padding:28px}.service-card__footer{color:var(--muted);justify-content:space-between;align-items:center;gap:16px;margin-top:24px;font-size:.9rem;display:flex}.manifesto{border-radius:calc(var(--radius) * 1.4);color:#fff;box-shadow:var(--shadow);background:#151515;padding:clamp(40px,8vw,96px);position:relative;overflow:hidden}.manifesto:before{content:"";pointer-events:none;background:radial-gradient(circle at 74% 16%,#8f182f66,#0000 24rem),linear-gradient(135deg,#ffffff14,#0000 48%);position:absolute;inset:0}.manifesto>*{z-index:1;position:relative}.manifesto h2{max-width:1020px;font-family:var(--serif);letter-spacing:.02em;margin:0;font-size:clamp(2rem,4.5vw,3.2rem);font-weight:400;line-height:1.35}.manifesto p{color:#ffffffb8;max-width:660px;margin:30px 0 0;font-size:clamp(1.02rem,1.35vw,1.24rem);line-height:1.85}.page-hero{padding:clamp(78px,10vw,148px) 0 clamp(60px,8vw,112px)}.page-title{max-width:1040px}.filters{flex-wrap:wrap;gap:10px;margin-top:36px;display:flex}.filter-link{border:1px solid var(--line);color:#121212b8;background:#fbfaf7b8;border-radius:999px;align-items:center;min-height:40px;padding:0 14px;transition:background .22s,color .22s,border-color .22s;display:inline-flex}.filter-link:hover,.filter-link.active{background:var(--ink);color:#fff;border-color:var(--ink)}.article-grid{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:clamp(34px,6vw,94px);display:grid}.article-cover{border-radius:calc(var(--radius) * 1.2);box-shadow:var(--shadow);margin:0 0 clamp(36px,6vw,76px);overflow:hidden}.article-cover img{aspect-ratio:16/10;object-fit:cover;filter:grayscale()contrast(1.18)brightness(.82);width:100%}.article-body{border:1px solid var(--line);border-radius:calc(var(--radius) * 1.2);background:#fbfaf7a8;padding:clamp(28px,5vw,78px)}.article-body section+section{margin-top:clamp(42px,6vw,78px)}.article-body h2{font-family:var(--serif);letter-spacing:.01em;margin:0 0 18px;font-size:clamp(1.5rem,3vw,2.2rem);font-weight:400;line-height:1.35}.article-body p{color:#121212c7;margin:0;font-size:clamp(1rem,1.25vw,1.18rem);line-height:1.96}.sidebar{gap:16px;display:grid;position:sticky;top:110px}.info-box{border:1px solid var(--line);border-radius:var(--radius);background:#fbfaf7c7;padding:24px}.info-box h3{font-family:var(--serif);letter-spacing:-.05em;margin:0 0 14px;font-size:2.1rem;font-weight:400}.info-box p,.info-box li{color:var(--muted);line-height:1.72}.info-box ul{margin:0;padding-left:18px}.profile-hero{grid-template-columns:minmax(0,.92fr) minmax(320px,.7fr);align-items:end;gap:clamp(34px,7vw,106px);display:grid}.profile-portrait{border-radius:calc(var(--radius) * 1.2);box-shadow:var(--shadow);overflow:hidden}.profile-portrait img{aspect-ratio:4/5;object-fit:cover;filter:grayscale()contrast(1.13);width:100%}.detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.detail-card{border:1px solid var(--line);border-radius:var(--radius);background:#fbfaf7c7;padding:28px}.detail-card h3{font-family:var(--serif);letter-spacing:-.05em;margin:0 0 14px;font-size:2rem;font-weight:400}.detail-card p,.detail-card li{color:var(--muted);line-height:1.74}.legal-intro{gap:18px;display:grid}.legal-meta{color:var(--muted);flex-wrap:wrap;gap:12px;font-size:.92rem;display:flex}.legal-card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fbfaf7c2;padding:clamp(28px,4vw,54px)}.legal-section+.legal-section{border-top:1px solid var(--line);margin-top:34px;padding-top:34px}.legal-section h2{font-family:var(--serif);margin:0 0 14px;font-size:clamp(1.4rem,2.2vw,2rem)}.legal-section p{color:var(--muted);margin:0;line-height:1.9}.legal-section p+p{margin-top:14px}.legal-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:14px;margin-top:40px;padding-top:30px;display:flex}.detail-card ul{margin:0;padding-left:18px}.booking-shell{grid-template-columns:minmax(0,.85fr) minmax(320px,1.15fr);align-items:start;gap:clamp(30px,6vw,88px);display:grid}.booking-card{border:1px solid var(--line);border-radius:calc(var(--radius) * 1.2);background:#fbfaf7db;padding:clamp(28px,5vw,62px);box-shadow:0 28px 90px #1212121a}.form-grid{gap:18px;display:grid}.form-row{gap:8px;display:grid}.form-row label{color:#121212d1;font-size:.92rem;font-weight:700}.form-row input,.form-row select,.form-row textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #1212122e;border-radius:16px;outline:none;padding:14px 16px;transition:border-color .22s,box-shadow .22s}.form-row textarea{resize:vertical;min-height:150px}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px #8f182f1f}.form-help{color:var(--muted);margin:0;font-size:.84rem;line-height:1.55}.checkbox-row{color:var(--muted);align-items:flex-start;gap:10px;line-height:1.6;display:flex}.checkbox-row input{width:18px;height:18px;accent-color:var(--accent);margin-top:3px}.notice{border-left:3px solid var(--accent);color:#121212cc;background:#8f182f14;border-radius:14px;padding:16px 18px;line-height:1.65}.search-box{grid-template-columns:1fr auto;gap:10px;max-width:760px;margin-top:34px;display:grid}.search-results{gap:16px;display:grid}.result-card{border:1px solid var(--line);border-radius:var(--radius);background:#fbfaf7d1;grid-template-columns:180px 1fr;gap:22px;display:grid;overflow:hidden}.result-card img{object-fit:cover;filter:grayscale()contrast(1.08);width:100%;height:100%;min-height:160px}.result-card__body{padding:24px 24px 24px 0}.result-card__body h3{font-family:var(--serif);letter-spacing:-.05em;margin:0 0 8px;font-size:2.2rem;font-weight:400}.result-card__body p{color:var(--muted);margin:0;line-height:1.72}.footer{color:#fff;background:#111;padding:70px 0 90px}.footer-grid{grid-template-columns:1.4fr repeat(3,1fr);gap:40px;display:grid}.footer h2{max-width:640px;font-family:var(--serif);letter-spacing:.02em;margin:0;font-size:clamp(1.6rem,3.2vw,2.4rem);font-weight:400;line-height:1.4}.footer p,.footer a{color:#ffffffad;line-height:1.8}.footer a:hover{color:#fff}.footer-nav{gap:10px;display:grid}.mobile-dock{display:none}.empty-state{border:1px solid var(--line);border-radius:var(--radius);background:#fbfaf7b8;padding:40px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (max-width:1120px){.hero-grid,.profile-hero,.booking-shell,.split-editorial,.article-grid{grid-template-columns:1fr}.hero-media{min-height:520px}.sticky-title,.sidebar{position:static}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-scroll,.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.record-card.wide,.record-card.tall,.record-card.normal{grid-column:span 6;min-height:520px}}@media (max-width:860px){.container,.narrow{width:min(100% - 28px,1480px)}.site-header{width:min(100% - 24px,1280px);height:62px;margin-top:10px;top:10px}.site-header__inner{grid-template-columns:1fr auto}.nav-links,.header-actions .btn-outline,.header-actions .btn-primary,.brand-mark small{display:none}.hero{min-height:auto;padding-top:54px}.hero h1{max-width:100%;font-size:clamp(2rem,8vw,2.8rem)}.hero-media{min-height:430px}.editorial-panel{width:auto;bottom:18px;left:18px;right:18px}.section{padding:86px 0}.section-tight{padding:68px 0}.magazine-grid{grid-template-columns:1fr}.record-card.wide,.record-card.tall,.record-card.normal{grid-area:auto;min-height:470px}.category-grid,.service-scroll,.detail-grid,.footer-grid{grid-template-columns:1fr}.category-card{min-height:230px}.category-card__number{margin-bottom:36px}.star-card,.result-card{grid-template-columns:1fr}.star-card__media img,.result-card img{aspect-ratio:16/10;min-height:auto}.star-card__body,.result-card__body{padding:24px}.search-box{grid-template-columns:1fr}.mobile-dock{z-index:70;-webkit-backdrop-filter:blur(24px)saturate(130%);backdrop-filter:blur(24px)saturate(130%);background:#fbfaf7db;border:1px solid #1212121f;border-radius:999px;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px;display:grid;position:fixed;bottom:14px;left:14px;right:14px;box-shadow:0 18px 80px #1212122e}.mobile-dock a{color:#121212b8;border-radius:999px;justify-content:center;align-items:center;min-height:42px;font-size:.88rem;font-weight:700;display:flex}.mobile-dock a:hover{background:var(--ink);color:#fff}}.nav-links a.active{font-weight:600;color:var(--ink)!important}.nav-links a.active:after{transform:scaleX(1)!important}.hamburger{cursor:pointer;z-index:65;background:0 0;border:none;flex-direction:column;justify-content:space-between;width:22px;height:14px;padding:0;display:none}.hamburger .line{background-color:var(--ink);transform-origin:0;width:100%;height:2px;transition:transform .3s,opacity .3s}.hamburger.is-active .line:first-child{transform:rotate(45deg)translate(1px,-1px)}.hamburger.is-active .line:nth-child(2){opacity:0}.hamburger.is-active .line:nth-child(3){transform:rotate(-45deg)translate(1px,1px)}.mobile-menu-drawer{z-index:55;-webkit-backdrop-filter:blur(24px)saturate(130%);backdrop-filter:blur(24px)saturate(130%);opacity:0;pointer-events:none;background:#fbfaf7fa;flex-direction:column;justify-content:center;align-items:center;transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .4s;display:flex;position:fixed;inset:0;transform:translateY(-100%)}.mobile-menu-drawer.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-menu-links{flex-direction:column;align-items:center;gap:24px;width:100%;padding:24px;display:flex}.mobile-link{font-family:var(--serif);color:var(--ink);opacity:0;font-size:1.8rem;text-decoration:none;transition:opacity .4s,transform .4s;transform:translateY(20px)}.mobile-menu-drawer.is-open .mobile-link{opacity:1;transform:translateY(0)}.mobile-link.active{color:var(--accent);font-style:italic}.mobile-link-secondary{font-family:var(--sans);color:var(--muted);font-size:1.05rem;font-weight:500}.mobile-booking-btn{text-align:center;justify-content:center;width:80%;max-width:260px;margin-top:20px}@media (max-width:860px){.hamburger{display:flex}}
