:root{color-scheme:light;--paper:#f7f7f3;--ink:#30372d;--muted:#666b62;--line:#d9dcd3}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"Noto Sans",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:5px}a:focus-visible,summary:focus-visible{outline:2px solid var(--ink);outline-offset:6px}.header,main,footer{max-width:1440px;margin:auto;padding-inline:24px}.header{display:flex;align-items:center;justify-content:space-between;padding-block:20px;gap:20px}.brand{display:block;width:190px}.brand img{display:block;width:100%;height:auto;mix-blend-mode:multiply}.languages{position:relative;font-size:13px}.languages summary{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;min-height:44px}.languages summary::-webkit-details-marker{display:none}.languages nav{position:absolute;right:0;top:100%;background:var(--paper);border:1px solid var(--line);padding:8px;min-width:160px;z-index:2;box-shadow:0 8px 24px #30372d12}.languages nav a{display:block;padding:12px;text-decoration:none}.languages nav a:hover,.languages nav a[aria-current]{background:#e9ece3}.hero{padding-top:46px}.eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;line-height:1.6;margin:0 0 22px}h1,h2,blockquote{font-family:Georgia,"Times New Roman",serif;font-weight:400}h1{font-size:clamp(44px,6vw,78px);line-height:1.04;letter-spacing:-.035em;margin:0 0 28px;max-width:620px}.intro{font-size:16px;line-height:1.75;max-width:440px;margin:0 0 28px;color:var(--muted)}.button{background:var(--ink);color:var(--paper);display:inline-flex;justify-content:space-between;align-items:center;gap:24px;min-height:56px;padding:17px 22px;text-decoration:none;font-size:14px;line-height:1.5}.button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;flex-shrink:0}.button:hover{background:#495140}.portfolio{display:block;width:fit-content;font-size:13px;margin-top:23px;line-height:1.6}figure{margin:46px 0 0}figure img{width:100%;height:auto;display:block}figcaption{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:12px;text-align:right}.conversation{border-top:1px solid var(--line);margin-top:65px;padding:55px 0 60px;display:grid;gap:50px}blockquote{font-size:28px;line-height:1.4;letter-spacing:-.015em;margin:0;max-width:550px}h2{font-size:29px;line-height:1.2;margin:0 0 20px}.next p{font-size:15px;line-height:1.8;color:var(--muted)}.text-link{display:inline-block;font-size:14px;margin-top:12px;line-height:1.8}.next .email{font-size:12px;margin-top:30px}.email a{display:inline-block}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-block:25px 35px;font-size:11px;color:var(--muted)}@media(min-width:850px){.header,main,footer{padding-inline:64px}.header{padding-block:24px}.brand{width:230px}.hero{display:grid;grid-template-columns:1fr 1.06fr;gap:60px;align-items:center;padding-top:75px;padding-bottom:30px}figure{margin:0}.conversation{grid-template-columns:1fr 1fr;gap:100px;margin-top:90px;padding-block:70px 90px}.next{max-width:440px;padding-top:38px}blockquote{font-size:36px}}@media(max-width:380px){.header,main,footer{padding-inline:20px}.brand{width:160px}h1{font-size:40px}.button{width:100%;gap:12px;font-size:13px}}@media(prefers-reduced-motion:no-preference){a{transition:background-color .2s ease}}html[lang=ja] h1,html[lang=zh-Hans] h1{line-height:1.3;letter-spacing:0}html[lang=ja] blockquote,html[lang=zh-Hans] blockquote{line-height:1.7}
