.ws{--w-bg:#f6f3ec;--w-band:#ece7dc;--w-ink:#16181b;--w-ink-soft:#4a4d4f;--w-line:rgba(22,24,27,0.16);--w-accent:#7a5b2e;background:var(--w-bg);color:var(--w-ink);font-size:16px;line-height:1.95}.ws a:hover{color:var(--w-accent)}.ws .header a:hover{color:var(--gold)}.ws .header{color:var(--ink);background:rgba(11,12,14,.94)}.ws-section{padding-top:clamp(64px,8vw,112px);padding-bottom:clamp(64px,8vw,112px)}.ws-band{background:var(--w-band)}.ws-eyebrow{margin-bottom:18px;font-size:13px;font-weight:700;letter-spacing:.2em;color:var(--w-accent)}.ws-h2{margin-bottom:clamp(28px,4vw,48px);font-family:var(--serif-ja);font-weight:600;font-size:clamp(24px,3.2vw,38px);line-height:1.55;letter-spacing:.04em;text-wrap:balance}.ws-h2 small{display:block;margin-top:12px;font-family:var(--sans);font-weight:400;font-size:15px;letter-spacing:.02em}.ws-h2 small,.ws-note{color:var(--w-ink-soft)}.ws-note{margin-top:16px;font-size:13px;line-height:1.8}.ws-hero{padding-top:66px;background:linear-gradient(180deg,#fbf9f4 0,var(--w-bg) 100%);border-bottom:1px solid var(--w-line)}.ws-hero__inner{padding-top:clamp(56px,8vw,112px);padding-bottom:clamp(48px,6vw,88px)}.ws-hero__title{font-family:var(--serif-ja);font-weight:600;font-size:clamp(30px,5.2vw,64px);line-height:1.45;letter-spacing:.03em;text-wrap:balance}.ws-hero__lead{max-width:38em;margin-top:28px;color:var(--w-ink-soft);text-wrap:pretty}.ws-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 32px;margin-top:36px}.ws-btn{display:inline-flex;align-items:center;gap:12px;padding:18px 34px;border-radius:999px;font-size:16px;font-weight:700;letter-spacing:.08em}.ws-btn--solid{background:var(--w-ink);color:#fbf9f4}.ws .ws-btn--solid:hover{background:var(--w-accent);color:#fbf9f4}.ws-link{display:inline-flex;align-items:center;gap:10px;padding-bottom:4px;border-bottom:1px solid var(--w-line);font-size:15px}.ws-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));margin-top:clamp(44px,6vw,72px);border-top:1px solid var(--w-ink)}.ws-facts>div{padding:22px 24px 22px 0;border-bottom:1px solid var(--w-line)}.ws-facts dt{font-size:13px;letter-spacing:.14em;color:var(--w-ink-soft)}.ws-facts dd{margin-top:4px;font-size:16px;line-height:1.4}.ws-facts strong{font-family:var(--serif-en);font-weight:500;font-size:clamp(40px,5vw,60px);letter-spacing:.01em;margin-right:4px}.ws-facts small{display:block;margin-top:4px;font-size:13px;color:var(--w-ink-soft)}.ws-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));grid-gap:20px;gap:20px}.ws-card{padding:clamp(24px,3vw,36px);background:#fbf9f4;border:1px solid var(--w-line);border-radius:4px}.ws-card__no{font-family:var(--serif-en);font-size:26px;line-height:1;color:var(--w-accent)}.ws-card__title{margin:16px 0 12px;font-size:18px;font-weight:700;line-height:1.6}.ws-card__body{font-size:15px;color:var(--w-ink-soft);text-wrap:pretty}.ws-included{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));grid-column-gap:clamp(24px,4vw,56px);column-gap:clamp(24px,4vw,56px);border-top:1px solid var(--w-ink)}.ws-included li{position:relative;padding:22px 0 22px 34px;border-bottom:1px solid var(--w-line)}.ws-included li:before{content:"";position:absolute;left:4px;top:31px;width:14px;height:7px;border-left:2px solid var(--w-accent);border-bottom:2px solid var(--w-accent);transform:rotate(-45deg)}.ws-included h3{font-size:17px;font-weight:700;line-height:1.6}.ws-included p{margin-top:4px;font-size:15px;line-height:1.85;color:var(--w-ink-soft)}.ws-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));grid-gap:clamp(32px,5vw,80px);gap:clamp(32px,5vw,80px);align-items:start}.ws-prose{display:grid;grid-gap:20px;gap:20px;color:var(--w-ink-soft)}.ws-prose p{text-wrap:pretty}.ws-compare{font-size:15px}.ws-compare__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.15fr);grid-gap:12px;gap:12px;padding:16px 0;border-bottom:1px solid var(--w-line);line-height:1.7}.ws-compare__row--head{padding-top:0;border-bottom:1px solid var(--w-ink);font-size:13px;letter-spacing:.08em;color:var(--w-ink-soft)}.ws-compare__row [role=rowheader]{font-size:14px;color:var(--w-ink-soft)}.ws-compare__ours{font-weight:700}.ws-case{max-width:52em}.ws-case .ws-h2{margin-bottom:20px}.ws-case__body{color:var(--w-ink-soft);text-wrap:pretty}.ws-flow{display:grid;border-top:1px solid var(--w-ink)}.ws-flow li{display:grid;grid-template-columns:clamp(52px,8vw,96px) minmax(0,1fr);grid-gap:8px;gap:8px;padding:24px 0;border-bottom:1px solid var(--w-line)}.ws-flow__step{font-family:var(--serif-en);font-size:clamp(28px,3.4vw,40px);line-height:1.1;color:var(--w-accent)}.ws-flow h3{font-size:18px;font-weight:700;line-height:1.6}.ws-flow p{margin-top:4px;max-width:44em;font-size:15px;color:var(--w-ink-soft)}.ws-spot{border-top:1px solid var(--w-ink)}.ws-spot>div{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px 24px;padding:18px 0;border-bottom:1px solid var(--w-line)}.ws-spot dt{font-size:15px}.ws-spot dd{font-weight:700;white-space:nowrap}.ws-faq{border-top:1px solid var(--w-ink);max-width:56em}.ws-faq details{border-bottom:1px solid var(--w-line)}.ws-faq summary{position:relative;padding:22px 44px 22px 0;font-size:17px;font-weight:700;line-height:1.7;cursor:pointer;list-style:none}.ws-faq summary::-webkit-details-marker{display:none}.ws-faq summary:after{content:"+";position:absolute;right:6px;top:18px;font-family:var(--serif-en);font-size:28px;font-weight:300;color:var(--w-accent);transition:transform .3s var(--ease)}.ws-faq details[open] summary:after{transform:rotate(45deg)}.ws-faq summary:focus-visible{outline:2px solid var(--w-accent);outline-offset:2px}.ws-faq details p{padding:0 0 26px;color:var(--w-ink-soft);text-wrap:pretty}.ws-contact-wrap{padding-top:clamp(24px,4vw,48px);padding-bottom:clamp(64px,8vw,112px)}.ws-contact{padding:clamp(40px,6vw,88px);background:var(--bg);color:var(--ink);border-radius:4px}.ws-contact__title{font-family:var(--serif-ja);font-weight:600;font-size:clamp(24px,3.2vw,38px);line-height:1.55;letter-spacing:.04em;text-wrap:balance}.ws-contact__lead{max-width:36em;margin:22px 0 40px;color:var(--ink-72)}.ws-contact__mail{display:inline-block;max-width:100%;overflow-wrap:anywhere;padding-bottom:10px;border-bottom:1px solid rgba(241,237,228,.4);font-family:var(--serif-en);font-size:clamp(22px,3.6vw,44px);letter-spacing:.05em;color:var(--ink)}.ws .ws-contact__mail:hover{color:var(--gold);border-bottom-color:var(--gold)}.footer__inner--light{border-top-color:var(--w-line);color:var(--w-ink-soft)}