@font-face{font-family:"Instrument Serif";src:url(/fonts/instrument-serif-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Instrument Serif";src:url(/fonts/instrument-serif-latin-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Public Sans;src:url(/fonts/public-sans-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-display:swap}:root{--font-display:"Instrument Serif",Georgia,serif;--font-body:"Public Sans",ui-sans-serif,system-ui,sans-serif;--paper:oklch(.972 .01 105);--paper-2:oklch(.94 .014 105);--ink:oklch(.24 .025 150);--ink-2:oklch(.3 .03 150);--green:oklch(.43 .11 142);--leaf:oklch(.62 .16 140);--contour:oklch(.43 .11 142 / .16);--t1:oklch(.22 .02 150);--t2:oklch(.37 .02 150);--t3:oklch(.49 .018 150);--p1:oklch(.97 .01 105);--p2:oklch(.85 .015 105);--rule:oklch(.24 .025 150 / .14);--rule-2:oklch(.24 .025 150 / .5);--ease:cubic-bezier(.16,1,.3,1);--g:clamp(18px,3.6vw,56px);--hh:80px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--hh);-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--t1);font:400 18px/1.6 var(--font-body);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 0}html.mn-lock{overflow:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit}:focus-visible{outline:2px solid var(--green);outline-offset:3px}.inv :focus-visible{outline-color:var(--p1)}.skip{position:absolute;left:12px;top:-60px;background:var(--ink);color:var(--p1);padding:10px 14px;z-index:99}.skip:focus{top:12px}.w{max-width:1440px;margin:0 auto;padding:0 var(--g)}.ref{font:600 11px/1 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--t3)}.serif{font-family:var(--font-display);font-weight:400;letter-spacing:-.015em}.site-h{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--rule)}.site-h .w{display:flex;align-items:center;gap:36px;height:var(--hh)}.brand img{height:54px;width:auto}.nav{display:flex;gap:30px;margin-left:auto;font:500 15px/1 var(--font-body)}.nav a{text-decoration:none;color:var(--t2);padding:10px 0;display:flex;gap:7px;align-items:baseline}.nav a small{font:600 10px/1 var(--font-body);color:var(--green);letter-spacing:.08em}@media(hover:hover){.nav a:hover{color:var(--green)}}.hbtn{display:inline-flex;align-items:center;min-height:46px;padding:0 20px;border:1px solid var(--ink);color:var(--ink);text-decoration:none;font:600 15px/1 var(--font-body);font-variant-numeric:tabular-nums;transition:background-color .25s var(--ease),color .25s}@media(hover:hover){.hbtn:hover{background:var(--ink);color:var(--p1)}}.mn-btn{display:none;margin-left:auto;width:48px;height:48px;border:1px solid var(--rule-2);background:var(--paper);position:relative;cursor:pointer;color:var(--ink)}.mn-btn span{position:absolute;left:12px;right:12px;height:1.5px;background:currentColor;transition:transform .3s var(--ease),opacity .2s}.mn-btn span:nth-child(1){top:17px}.mn-btn span:nth-child(2){top:23px;left:20px}.mn-btn span:nth-child(3){top:29px}.mn-btn[aria-expanded=true] span:nth-child(1){transform:translateY(6px) rotate(45deg)}.mn-btn[aria-expanded=true] span:nth-child(2){opacity:0}.mn-btn[aria-expanded=true] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.mn{position:fixed;inset:0;z-index:40;background:var(--paper);color:var(--t1);padding:calc(var(--hh) + 20px) var(--g) 24px;display:flex;flex-direction:column;opacity:0;visibility:hidden;transition:opacity .3s var(--ease),visibility 0s linear .3s;overflow-y:auto}.mn.open{opacity:1;visibility:visible;transition:opacity .3s var(--ease)}.mn ol{list-style:none;margin:14px 0 0;padding:0;border-top:1px solid var(--rule-2)}.mn li a{display:grid;grid-template-columns:52px 1fr;align-items:baseline;min-height:64px;padding:14px 0;border-bottom:1px solid var(--rule);text-decoration:none;opacity:0;transform:translateY(12px);transition:opacity .4s var(--ease),transform .4s var(--ease)}.mn li a small{font:600 12px/1 var(--font-body);color:var(--green);letter-spacing:.1em}.mn li a span{font:400 clamp(34px,9.6vw,46px)/1 var(--font-display);letter-spacing:-.015em}.mn.open li a{opacity:1;transform:none;transition-delay:calc(var(--i) * 60ms + 80ms)}.mn-foot{margin-top:auto;padding-top:24px;display:grid;gap:10px;background:var(--paper)}.mn-foot a{display:flex;justify-content:center;align-items:center;min-height:50px;text-decoration:none;font:600 16px/1 var(--font-body)}.mn-foot .a1{background:var(--ink);color:var(--p1)}.mn-foot .a2{border:1px solid var(--ink)}.mn-foot p{margin:6px 0 0;font-size:15px;color:var(--t2);line-height:1.5}.sheet{position:relative;margin:16px;border:1px solid var(--rule-2);background:var(--paper);overflow:hidden}.sheet:before{content:"";position:absolute;inset:7px;border:1px solid var(--rule);pointer-events:none}.ticks-x,.ticks-y{position:absolute;display:flex;justify-content:space-around;pointer-events:none}.ticks-x{left:0;right:0;top:0;height:7px}.ticks-y{top:0;bottom:0;left:0;width:7px;flex-direction:column}.ticks-x span,.ticks-y span{font:600 9px/1 var(--font-body);color:var(--t3);letter-spacing:.06em}.ticks-x span{transform:translateY(-1px)}.contours{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.contours path{fill:none;stroke:var(--contour);stroke-width:1.2}.contours path.idx{stroke:#265e214d;stroke-width:1.6}.js .contours path{stroke-dasharray:3000;stroke-dashoffset:3000;animation:cdraw 2.4s var(--ease) forwards;animation-delay:calc(var(--i) * 90ms)}@keyframes cdraw{to{stroke-dashoffset:0}}.sheet-body{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;padding:clamp(32px,3.4vw,56px) clamp(28px,4vw,64px) 0}.sheet .ref.k{grid-column:1/-1;margin:0 0 20px;color:var(--green)}.sheet h1{grid-column:1/span 8;margin:0;font:400 clamp(3.2rem,6.7vw,7.4rem)/.94 var(--font-display);letter-spacing:-.025em}.sheet h1 i{color:var(--green)}.lede{grid-column:1/span 5;margin:28px 0 clamp(28px,3vw,44px)}.lede p{margin:0 0 26px;color:var(--t2);font-size:clamp(17px,1.3vw,20px);max-width:32em}.lede .row{display:flex;flex-wrap:wrap;gap:12px}.b1{display:inline-flex;align-items:center;min-height:50px;padding:0 24px;background:var(--ink);color:var(--p1);text-decoration:none;font:600 15px/1 var(--font-body);transition:background-color .25s}@media(hover:hover){.b1:hover{background:var(--green)}}.b2{display:inline-flex;align-items:center;min-height:50px;padding:0 4px;color:var(--ink);text-decoration:none;font:600 15px/1 var(--font-body);border-bottom:1px solid var(--ink)}@media(hover:hover){.b2:hover{color:var(--green);border-color:var(--green)}}.viewport{grid-column:8/span 5;grid-row:3/span 1;align-self:end;margin:0 0 -1px;position:relative;border:1px solid var(--rule-2);background:var(--paper-2);padding:10px 10px 0}.viewport img{width:100%;aspect-ratio:16/11;object-fit:cover}.viewport figcaption{display:flex;justify-content:space-between;gap:12px;padding:10px 2px 12px;font:500 13px/1.35 var(--font-body);color:var(--t2)}.viewport figcaption b{font:600 11px/1.35 var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--green);white-space:nowrap}.tblock{position:relative;display:grid;grid-template-columns:2fr 1.6fr 1.2fr 1fr .8fr;border-top:1px solid var(--rule-2);background:var(--paper)}.tblock div{padding:16px 20px 18px;border-left:1px solid var(--rule)}.tblock div:first-child{border-left:0}.tblock dt{margin-bottom:6px}.tblock dd{margin:0;font:500 15.5px/1.35 var(--font-body)}.tblock dd a{text-decoration:none}@media(hover:hover){.tblock dd a:hover{color:var(--green)}}.tblock .big{font:400 26px/1 var(--font-display)}.js .tblock div{opacity:0;animation:tb .6s var(--ease) forwards;animation-delay:calc(1s + var(--i) * 80ms)}@keyframes tb{to{opacity:1}}.idx-sec{padding:clamp(80px,10vw,150px) 0}.idx-grid{display:grid;grid-template-columns:4fr 8fr;gap:clamp(32px,6vw,96px);align-items:start}.idx-head{position:sticky;top:calc(var(--hh) + 32px)}.idx-head h2{margin:14px 0 20px;font:400 clamp(2.4rem,4.6vw,4.6rem)/.98 var(--font-display);letter-spacing:-.02em}.idx-head p{margin:0;color:var(--t2)}.idx-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule-2)}.idx-list li{display:grid;grid-template-columns:72px 1fr;gap:4px 20px;padding:26px 0 28px;border-bottom:1px solid var(--rule)}.idx-list .no{font:600 13px/1.6 var(--font-body);letter-spacing:.08em;color:var(--green)}.idx-list h3{margin:0 0 8px;font:400 clamp(26px,2.4vw,34px)/1.1 var(--font-display)}.idx-list p{margin:0;color:var(--t2);font-size:16.5px;grid-column:2}.idx-list ul{grid-column:2;display:flex;flex-wrap:wrap;gap:6px 8px;list-style:none;margin:14px 0 0;padding:0}.idx-list ul li{display:block;padding:5px 10px;border:1px solid var(--rule);font-size:13.5px;color:var(--t2);background:var(--paper)}.hill{position:relative;min-height:clamp(420px,42vw,600px);display:grid;align-items:end}.hill img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hill .panel{position:relative;margin:0 var(--g) clamp(28px,4vw,56px);max-width:620px;background:var(--ink);color:var(--p1);padding:clamp(28px,3.2vw,48px)}.hill .panel .ref{color:var(--p2)}.hill blockquote{margin:14px 0 0;font:400 clamp(1.8rem,2.8vw,2.7rem)/1.12 var(--font-display);letter-spacing:-.01em}.hill blockquote i{color:#9fd780}.proj{padding:clamp(80px,10vw,150px) 0}.proj-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:36px}.proj h2{margin:12px 0 0;font:400 clamp(2.4rem,4.6vw,4.6rem)/.98 var(--font-display);letter-spacing:-.02em}.proj-head p{margin:0;max-width:28em;color:var(--t2)}.proj-grid{display:grid;grid-template-columns:8fr 4fr;gap:clamp(28px,4vw,64px);align-items:start}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}thead th{text-align:left;padding:0 12px 12px 0;border-bottom:1px solid var(--rule-2)}tbody td{padding:16px 12px 16px 0;border-bottom:1px solid var(--rule);vertical-align:baseline;font-size:16px;color:var(--t2)}tbody td:first-child{font:400 22px/1.2 var(--font-display);color:var(--t1);letter-spacing:-.005em}tbody td.sc{font-weight:600;color:var(--t1);white-space:nowrap}tbody tr{transition:background-color .2s}@media(hover:hover){tbody tr:hover{background:var(--paper-2)}}.pcard{border:1px solid var(--rule-2);background:var(--paper-2);padding:10px}.pcard img{width:100%;aspect-ratio:5/4;object-fit:cover}.pcard p{margin:12px 4px 4px;font-size:15px;color:var(--t2)}.award{display:grid;grid-template-columns:76px 1fr;gap:16px;align-items:center;margin-top:16px;padding:16px;border:1px solid var(--rule)}.award img{width:76px;height:auto}.award p{margin:0;font-size:14.5px;color:var(--t2);line-height:1.45}.award b{display:block;color:var(--t1);font:400 20px/1.15 var(--font-display);margin-bottom:4px}.off{background:var(--ink);color:var(--p1);padding:clamp(80px,10vw,140px) 0 clamp(64px,8vw,110px)}.off h2{margin:12px 0 clamp(32px,4vw,56px);font:400 clamp(2.6rem,5.6vw,5.8rem)/.95 var(--font-display);letter-spacing:-.02em;max-width:12em}.off h2 i{color:#9fd780}.off .ref{color:var(--p2)}.off-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:0;border-top:1px solid oklch(1 0 0 / .2)}.off-grid>div{padding:28px 28px 8px 0}.off-grid>div+div{padding-left:28px;border-left:1px solid oklch(1 0 0 / .14)}.off-grid h3{margin:0 0 12px;font:400 28px/1.1 var(--font-display)}.off-grid p,.off-grid address{margin:0 0 8px;font-style:normal;color:var(--p2);font-size:16.5px;line-height:1.55}.off-grid a{color:var(--p1);text-decoration:none;font-weight:600}@media(hover:hover){.off-grid a:hover{color:#9fd780}}.off-grid .tel{display:block;font:400 clamp(2rem,3.2vw,3rem)/1.05 var(--font-display);font-weight:400;margin-bottom:10px;letter-spacing:-.01em}.site-f{background:var(--ink);color:var(--p2);border-top:1px solid oklch(1 0 0 / .12);padding:28px 0 calc(92px + env(safe-area-inset-bottom));font-size:14px}.site-f .w{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px}.site-f a{color:var(--p1);text-decoration:none}.js .rv{opacity:0;transform:translateY(20px);transition:opacity .65s var(--ease),transform .65s var(--ease)}.js .rv.in{opacity:1;transform:none}@media(max-width:1180px){.viewport{grid-column:7/span 6}.lede{grid-column:1/span 6}}@media(max-width:899.98px){:root{--hh:68px}.nav,.site-h .hbtn{display:none}.mn-btn{display:block}.brand img{height:44px}.sheet{margin:10px}.ticks-y{display:none}.sheet-body{grid-template-columns:minmax(0,1fr);padding:36px 20px 0}.sheet h1,.lede,.viewport{grid-column:1/-1;grid-row:auto}.viewport{margin-bottom:28px}.tblock{grid-template-columns:1fr 1fr}.tblock div{border-left:0;border-top:1px solid var(--rule)}.tblock div:nth-child(2n){border-left:1px solid var(--rule)}.tblock div:first-child{grid-column:1/-1;border-top:0}.tblock div:nth-child(2){border-left:0}.tblock div:nth-child(3){border-left:1px solid var(--rule)}.tblock div:nth-child(4){border-left:0}.tblock div:nth-child(5){border-left:1px solid var(--rule)}.idx-grid,.proj-grid{grid-template-columns:minmax(0,1fr)}.idx-head{position:static}.idx-list li{grid-template-columns:48px 1fr}.proj-head{flex-direction:column;align-items:start}thead{display:none}tbody tr{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:14px 0;border-bottom:1px solid var(--rule)}tbody td{border:0;padding:0}tbody td:nth-child(3){grid-column:1/-1;font-size:15px}.off-grid{grid-template-columns:1fr}.off-grid>div+div{padding-left:0;border-left:0;border-top:1px solid oklch(1 0 0 / .14)}}@media(max-width:520px){.sheet h1{font-size:clamp(2.9rem,13.4vw,3.8rem)}.lede .row a{flex:1 1 auto;justify-content:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .rv{opacity:1;transform:none}.js .contours path{stroke-dashoffset:0}.js .tblock div{opacity:1}.mn li a{opacity:1;transform:none}}.pv{position:fixed;left:0;right:0;bottom:0;z-index:45;background:#dd3800;color:#fff;font:700 14px/1.3 var(--font-body);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -10px 30px -18px #290c0880;transform:translateY(105%);visibility:hidden;transition:transform .4s cubic-bezier(.16,1,.3,1),visibility 0s linear .4s}.pv.on{transform:none;visibility:visible;transition:transform .4s cubic-bezier(.16,1,.3,1)}.pv-wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding:8px clamp(16px,4vw,48px);max-width:1440px;margin:0 auto}.pv b{font-weight:700;color:#fff}.pv-claim{flex:none;display:inline-flex;align-items:center;gap:.4em;min-height:44px;padding:0 1.1em;border-radius:6px;background:#fbf7f2;color:#0b1e27;text-decoration:none;font-weight:700;transition:background-color .25s cubic-bezier(.16,1,.3,1)}@media(hover:hover){.pv-claim:hover{background:#ffe3d6}}.pv-claim:focus-visible{outline:2px solid #fff;outline-offset:3px}body:has(.pv){padding-bottom:calc(60px + env(safe-area-inset-bottom))}@media(max-width:420px){.pv{font-size:13px}.pv-wrap{gap:8px}.pv-claim{padding:0 .9em}}@media(prefers-reduced-motion:reduce){.pv,.pv.on{transition:none!important}}body:has(.pv){padding-bottom:0}
