:root{--paper:#f3efe5;--ink:#161512;--red:#b33122;--line:#cfc7b8;--muted:#6c675f;--serif:"Iowan Old Style","Baskerville","Noto Serif SC",serif;--sans:"Avenir Next","PingFang SC",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans)}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.22;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E")}.shell{width:min(1180px,calc(100% - 40px));margin:auto}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:2}.wordmark{font-family:var(--serif);font-size:22px;font-weight:700;color:inherit;text-decoration:none}.wordmark span{display:inline-grid;place-items:center;background:var(--red);color:white;width:34px;height:34px;margin-right:5px}.nav nav{display:flex;gap:30px}.nav nav a,.site-footer a{color:var(--muted);text-decoration:none;font-size:13px;letter-spacing:.08em}.hero{min-height:720px;padding:110px 0 90px;position:relative;overflow:hidden}.eyebrow,.section-no{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--red);font-weight:700}.hero h1{font-family:var(--serif);font-size:clamp(55px,8vw,112px);line-height:.98;letter-spacing:-.05em;margin:30px 0;max-width:980px;font-weight:500}.hero h1 em{color:var(--red);font-style:italic}.lead{max-width:550px;color:var(--muted);font-size:17px;line-height:1.9}.hero-actions{display:flex;gap:12px;margin-top:36px}.button{padding:14px 24px;text-decoration:none;font-weight:700;font-size:14px}.button.dark{background:var(--ink);color:var(--paper)}.button.line{border:1px solid var(--ink);color:var(--ink)}.orbit{position:absolute;right:20px;bottom:70px;width:290px;height:290px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;animation:turn 30s linear infinite}.orbit:after{content:"椒";font:100px var(--serif);color:var(--red)}.orbit span{position:absolute;font-size:11px;letter-spacing:.12em;background:var(--paper);padding:4px}.orbit span:nth-child(1){top:-10px}.orbit span:nth-child(2){bottom:20px;right:-10px}.orbit span:nth-child(3){left:-30px;top:50%}@keyframes turn{to{transform:rotate(360deg)}}.about{border-top:1px solid var(--line);padding:100px 0;display:grid;grid-template-columns:1fr 2fr;gap:50px}.about h2{font:clamp(40px,5vw,70px)/1 var(--serif);margin:0 0 32px}.about div p{max-width:720px;color:var(--muted);line-height:2;font-size:17px}.services{padding:100px 0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--ink);margin-top:40px}.service-grid article{min-height:390px;padding:36px;display:flex;flex-direction:column;border-right:1px solid var(--ink);transition:.25s}.service-grid article:last-child{border:0}.service-grid article:hover{background:#fffaf0;transform:translateY(-8px)}.service-grid article>span{font-size:11px;letter-spacing:.17em;color:var(--red)}.service-grid h3{font:32px/1.2 var(--serif);margin:60px 0 20px}.service-grid p{line-height:1.8;color:var(--muted)}.service-grid footer{margin-top:auto;border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;align-items:center}.service-grid b{font:28px var(--serif)}.service-grid a{color:var(--red);font-weight:700;text-decoration:none;font-size:13px}.site-footer{border-top:1px solid var(--line);min-height:100px;display:flex;align-items:center;gap:40px;font-size:13px}.site-footer a:first-of-type{margin-left:auto}@media(max-width:800px){.orbit{opacity:.25;right:-140px}.about{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;border-bottom:1px solid var(--ink)}.nav nav a:not(:last-child){display:none}.hero{min-height:620px}.hero h1{font-size:53px}.site-footer{flex-wrap:wrap;padding:30px 0}.site-footer a:first-of-type{margin-left:0}}
