:root{--paper:#f3efe7;--ink:#171716;--soft:#6e6a63;--line:rgba(23,23,22,.18);--accent:#A43B35;--max:1480px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}button,input,textarea,select{font:inherit}a{color:inherit}.noise{position:fixed;inset:0;pointer-events:none;opacity:.026;z-index:100;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitchTiles'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}.shell,.site-header,.site-footer{width:min(calc(100% - 56px),var(--max));margin-inline:auto}.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:15px;text-decoration:none}.jp-mark{color:var(--accent);font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;font-size:23px;letter-spacing:-.12em}.wordmark{display:flex;align-items:center;gap:9px;font-size:15px;letter-spacing:-.025em}.wordmark i{width:27px;height:1px;background:var(--ink)}.site-nav{display:flex;align-items:center;gap:27px}.site-nav a{font-size:12px;text-decoration:none;color:var(--soft)}.site-nav a:hover{color:var(--ink)}.nav-cta,.menu-toggle{border:0;background:none;color:inherit;cursor:pointer}.nav-cta{font-size:12px;border-bottom:1px solid var(--ink);padding:3px 0}.menu-toggle{display:none}.hero{min-height:calc(100vh - 92px);display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center;padding:88px 0 70px}.eyebrow,.section-label,.card-meta,.extension-row span{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--soft)}.eyebrow{margin-bottom:28px}.hero h1,.manifesto h2,.section-head h2,.satori h2,.begin h2,.request-summary h2{font-weight:400;letter-spacing:-.065em;line-height:.94;margin:0}.hero h1{font-size:clamp(64px,7.7vw,124px);max-width:760px}.dot{display:inline-block;width:.14em;height:.14em;border-radius:50%;background:var(--accent);margin-left:.08em;vertical-align:.10em}.dot.small{width:.12em;height:.12em}.hero-lead{font-size:clamp(21px,1.75vw,28px);letter-spacing:-.025em;line-height:1.35;max-width:650px;margin:34px 0 0}.hero-note{max-width:520px;color:var(--soft);font-size:16px;margin:18px 0 0}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}.primary-link,.card-cta,.begin-cta,.submit-request{border:0;background:none;color:inherit;cursor:pointer}.primary-link{border-bottom:1px solid var(--ink);padding:0 0 5px;font-size:13px}.primary-link span,.card-cta span,.begin-cta span,.submit-request span{margin-left:15px}.secondary-link{font-size:12px;color:var(--soft);text-decoration:none}.hero-visual{min-height:540px;display:flex;flex-direction:column;justify-content:flex-end}.field{height:390px;border-bottom:1px solid var(--line);position:relative}.fragment{position:absolute;border:1px solid rgba(23,23,22,.38);transform:rotate(var(--r));opacity:.8}.f1{width:75px;height:46px;left:6%;top:53%;--r:17deg}.f2{width:35px;height:35px;left:23%;top:25%;--r:-25deg}.f3{width:93px;height:55px;left:39%;top:62%;--r:8deg}.f4{width:42px;height:75px;left:55%;top:18%;--r:31deg}.f5{width:58px;height:38px;left:68%;top:50%;--r:-11deg}.resolve-line{position:absolute;height:1px;background:var(--ink);left:7%;right:5%;top:72%;transform:rotate(-21deg);transform-origin:right center}.resolve-dot{position:absolute;right:4.1%;top:28%;width:10px;height:10px;background:var(--accent);border-radius:50%}.visual-labels{display:flex;justify-content:space-between;padding-top:14px;font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:var(--soft)}.section-rule{border-top:1px solid var(--line)}.manifesto,.work,.method,.satori,.extensions,.faq,.begin{padding:34px 0 128px}.section-label{margin:0 0 72px}.manifesto-grid,.satori-grid,.begin-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:100px;align-items:start}.manifesto h2,.satori h2{font-size:clamp(52px,6vw,94px)}.manifesto h2 span,.satori h2>span{color:#8a857d}.manifesto-copy,.satori-grid>div,.begin-grid>div{max-width:590px;padding-top:8px}.manifesto-copy p,.satori-grid p,.begin-grid p{font-size:18px;line-height:1.65;color:#5b5751}.strong-line,.equation{border-top:1px solid var(--line);padding-top:25px;margin-top:30px!important;color:var(--ink)!important}.section-head{display:grid;grid-template-columns:.28fr 1fr;gap:40px;margin-bottom:72px}.section-head .section-label{margin:8px 0 0}.section-head h2{font-size:clamp(42px,5vw,76px);max-width:990px}.section-head>div>p{font-size:17px;color:var(--soft);max-width:690px;margin:24px 0 0}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.work-card{border:1px solid var(--line);padding:28px;display:flex;flex-direction:column;min-height:720px;transition:transform .25s ease,background .25s ease}.work-card:hover{transform:translateY(-4px);background:rgba(255,255,255,.18)}.work-card.featured{background:var(--ink);color:var(--paper)}.card-meta{display:flex;justify-content:space-between;gap:20px}.featured .card-meta{color:#a6a198}.card-main{margin-top:60px}.card-main h3{font-size:clamp(44px,4vw,64px);font-weight:400;letter-spacing:-.055em;line-height:1;margin:0}.card-line{font-size:21px!important;color:var(--soft)!important;margin:16px 0 22px!important}.featured .card-line{color:#bdb8ae!important}.price{font-size:34px!important;letter-spacing:-.04em;color:inherit!important;margin:0 0 20px!important}.card-main>p:last-child{color:var(--soft);max-width:430px}.featured .card-main>p:last-child{color:#b9b5ac}.work-card ul{list-style:none;padding:0;margin:auto 0 0;border-top:1px solid var(--line)}.featured ul{border-color:rgba(243,239,231,.18)}.work-card li{padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.featured li{border-color:rgba(243,239,231,.16)}.work-card li::before{content:"·";color:var(--accent);margin-right:8px}.card-cta{display:flex;justify-content:space-between;border-top:1px solid currentColor;padding:17px 0 0;margin-top:24px;text-align:left}.scope-note{font-size:12px;color:var(--soft);text-align:right;margin:27px 0 0}.method-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.method-list li{display:grid;grid-template-columns:.12fr .28fr 1fr;gap:30px;align-items:start;padding:28px 0;border-bottom:1px solid var(--line)}.method-list li>span{font-size:10px;letter-spacing:.16em;color:var(--soft);padding-top:7px}.method-list strong{font-size:28px;font-weight:400;letter-spacing:-.04em}.method-list strong::after{content:"";display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-left:8px;vertical-align:.12em}.method-list p{margin:4px 0 0;color:var(--soft);max-width:600px}.equation{font-size:16px!important;line-height:1.55!important}.extension-row{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.extension-row>div{min-height:190px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px;display:flex;flex-direction:column}.extension-row strong{font-size:24px;font-weight:400;letter-spacing:-.035em;margin-top:44px}.extension-row em{font-style:normal;color:var(--soft);font-size:13px;margin-top:10px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;padding:24px 0;font-size:19px;letter-spacing:-.015em;display:flex;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary::after{content:"+";font-size:20px;color:var(--accent)}details[open] summary::after{content:"−"}details p{max-width:760px;color:var(--soft);padding:0 0 25px;margin:0}.begin h2{font-size:clamp(52px,6vw,92px)}.question{font-size:.75em;color:var(--ink)}.begin-grid a{display:block;font-size:12px;color:var(--soft);margin-top:18px;text-decoration:none}.begin-cta{display:flex;justify-content:space-between;width:100%;border-top:1px solid var(--ink);padding:17px 0 0;margin-top:30px;text-align:left}.site-footer{min-height:110px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:11px;color:var(--soft)}.site-footer a{text-decoration:none}.footer-symbol{display:flex;align-items:center;gap:14px;color:var(--ink)}.footer-symbol span{font-size:21px}.footer-symbol i{width:52px;height:1px;background:var(--ink);position:relative}.footer-symbol b{width:6px;height:6px;border-radius:50%;background:var(--accent);margin-left:-17px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.request-dialog{width:min(1120px,calc(100% - 28px));max-height:92vh;border:0;padding:0;background:var(--paper);color:var(--ink);box-shadow:0 20px 80px rgba(0,0,0,.22)}.request-dialog::backdrop{background:rgba(20,20,19,.58)}.dialog-close{position:absolute;right:22px;top:16px;border:0;background:none;font-size:30px;cursor:pointer;z-index:3}.dialog-grid{display:grid;grid-template-columns:.43fr .57fr;min-height:650px}.request-summary{background:var(--ink);color:var(--paper);padding:48px 42px}.request-summary .section-label{color:#a6a198;margin-bottom:70px}.request-summary h2{font-size:48px}.selected-price{font-size:20px;color:#beb9af;margin-top:18px}.request-summary>p:last-child{font-size:14px;color:#aaa69d;line-height:1.65;margin-top:28px}.request-line{height:70px;position:relative;margin-top:42px}.request-line i{position:absolute;left:0;right:0;top:50%;height:1px;background:#807b74}.request-line span{position:absolute;right:0;top:calc(50% - 5px);width:10px;height:10px;border-radius:50%;background:var(--accent)}.request-form{padding:44px;overflow:auto}.request-form>label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.11em;color:var(--soft);margin-bottom:20px}.request-form input:not([type=checkbox]),.request-form textarea,.request-form select{display:block;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);padding:10px 0;outline:none;text-transform:none;letter-spacing:0}.request-form textarea{resize:vertical}.request-form fieldset{border:1px solid var(--line);padding:18px;margin:8px 0 22px}.request-form legend{font-size:11px;text-transform:uppercase;letter-spacing:.11em}.request-form legend span{color:var(--soft);text-transform:none;letter-spacing:0}.request-form fieldset label,.consent{display:flex!important;align-items:flex-start;gap:10px;font-size:12px!important;text-transform:none!important;letter-spacing:0!important;color:var(--soft)!important;margin:8px 0!important}.submit-request{display:flex;width:100%;justify-content:space-between;border-top:1px solid var(--ink);padding:17px 0 0;margin-top:26px;text-align:left}.form-micro{font-size:10px;color:var(--soft);margin-top:14px}@media(max-width:900px){.shell,.site-header,.site-footer{width:min(calc(100% - 32px),var(--max))}.site-header{height:76px}.menu-toggle{display:block;font-size:12px}.site-nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:22px 0;flex-direction:column;align-items:flex-start}.site-nav.open{display:flex}.hero{grid-template-columns:1fr;gap:55px;padding-top:70px}.hero-visual{min-height:300px}.field{height:260px}.manifesto-grid,.satori-grid,.begin-grid,.dialog-grid{grid-template-columns:1fr;gap:50px}.section-head{grid-template-columns:1fr;gap:22px}.section-head .section-label{margin:0}.work-grid,.extension-row{grid-template-columns:1fr}.work-card{min-height:auto}.method-list li{grid-template-columns:55px 1fr}.method-list p{grid-column:2}.section-label{margin-bottom:45px}.manifesto,.work,.method,.satori,.extensions,.faq,.begin{padding-bottom:92px}.dialog-grid{display:block}.request-summary{padding:42px 28px}.request-summary .section-label{margin-bottom:38px}.request-form{padding:32px 28px}.site-footer{flex-wrap:wrap;padding:30px 0}.hero h1{font-size:clamp(58px,17vw,90px)}}

/* Requested refinement pass */
.hero-art{align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-height:540px}.line-art{width:100%;height:auto;overflow:visible}.hero-art .path{fill:none;stroke:var(--ink);stroke-width:1.45;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.5s cubic-bezier(.16,1,.3,1)}.hero-art.drawn .path{stroke-dashoffset:0}.hero-art .origin,.hero-art .destination{fill:var(--accent);stroke:none}.hero-art .pyramid{fill:rgba(23,23,22,.055);stroke:rgba(23,23,22,.52);stroke-width:1.15;vector-effect:non-scaling-stroke}.hero-art .pyramid-b{fill:rgba(23,23,22,.085);stroke:rgba(23,23,22,.66)}.hero-art .pyramid-c{fill:rgba(23,23,22,.04);stroke:rgba(23,23,22,.42)}.hero-art .pyramid-line{stroke:rgba(23,23,22,.26);stroke-width:1;vector-effect:non-scaling-stroke}.art-note{display:flex;justify-content:space-between;margin:10px 0 0;font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:var(--soft)}.method-list strong::after{display:none}.footer-brand{color:var(--ink)}.site-footer .footer-brand{text-decoration:none}.solution-choice{display:grid;grid-template-columns:1fr;gap:2px}.request-form input[type=radio]{width:auto}.solution-choice label{cursor:pointer}.begin-grid>div>a{display:none}@media(max-width:900px){.hero-art{min-height:auto}.line-art{margin-top:0}}


/* Precise refinement pass, preserves established layout */
.hero-art{align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end;min-height:500px}
.line-art{width:100%;height:auto;overflow:visible}
.hero-art .path{fill:none;stroke:var(--ink);stroke-width:1.35;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.8s cubic-bezier(.16,1,.3,1)}
.hero-art.drawn .path{stroke-dashoffset:0}
.hero-art .origin{fill:var(--paper);stroke:var(--ink);stroke-width:1.25}
.hero-art .destination{fill:var(--accent);stroke:none}
.hero-art .pyramid{fill:rgba(23,23,22,.055);stroke:rgba(23,23,22,.52);stroke-width:1.15;vector-effect:non-scaling-stroke}
.hero-art .pyramid-b{fill:rgba(23,23,22,.085);stroke:rgba(23,23,22,.66)}
.hero-art .pyramid-c{fill:rgba(23,23,22,.04);stroke:rgba(23,23,22,.42)}
.hero-art .pyramid-line{stroke:rgba(23,23,22,.26);stroke-width:1;vector-effect:non-scaling-stroke}
.art-note{display:flex;justify-content:space-between;color:var(--soft);border-top:1px solid var(--line);padding-top:14px;margin-top:0;font-size:10px;letter-spacing:.17em;text-transform:uppercase}
.manifesto h2 .dot.small{display:inline-block;vertical-align:baseline;margin-left:.08em;transform:translateY(-.04em)}
.question{color:var(--accent)}
.line-section{padding-bottom:130px}
.line-section .section-head{margin-bottom:58px}
.line-section .section-head>div>p{max-width:690px}
.line-meaning{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:62px}
.line-meaning>div{padding:28px 34px 34px 0}
.line-meaning>div+div{border-left:1px solid var(--line);padding-left:34px}
.line-meaning h3{font-size:22px;font-weight:500;letter-spacing:-.025em;margin-bottom:12px}
.line-meaning p{color:var(--soft);line-height:1.55;margin-bottom:0;max-width:330px}
.line-method strong::after{display:none!important}
.satori-grid>div p{max-width:590px}
.satori-grid>div p strong{display:block;color:var(--ink);margin-bottom:4px;font-weight:600}
.faq-list details p{max-width:760px}
@media(max-width:900px){.line-meaning{grid-template-columns:1fr}.line-meaning>div{padding:24px 0}.line-meaning>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}.hero-art{min-height:auto}}


/* Green brand refinement */
.line-section .line-head{margin-bottom:58px;max-width:1030px}.line-section .line-head .section-label{margin:0 0 18px}.line-section .line-head h2{font-weight:400;letter-spacing:-.065em;line-height:.94;margin:0;font-size:clamp(42px,5vw,76px);max-width:990px}.line-section .line-head>p:last-child{font-size:17px;color:var(--soft);max-width:690px;margin:24px 0 0}.line-meaning h3{white-space:nowrap}.request-form input[type=radio],.request-form input[type=checkbox]{accent-color:var(--accent)}
@media(max-width:900px){.line-section .line-head{margin-bottom:42px}.line-section .line-head .section-label{margin-bottom:45px}}

.line-section .line-head{padding-top:34px}.line-section .line-head .section-label{margin-bottom:72px}
