/* ============================================================
   GPT製サイト（tilto-recruiting）の 01〜07 を移植したときのCSS。
   出どころ: https://tilto-recruiting.haruka-namasute.chatgpt.site
   303KB から、移植した節が実際に使う規則だけを機械で抜いた。

   ⚠️ 元サイトの html / body / * の指定は**節の中に閉じ込めてある**。
      そのまま持ってくると、うちのFV（WebGL・反転カーソル・帯）の土台が壊れる。
   ============================================================ */

/* ── 土台: 移植した節が画面幅いっぱいに並ぶようにする ────────────────
   🔴 ベンダーCSSの `.site-shell { width:100vw; height:100svh; display:grid;
      place-items:start center; overflow:hidden }` が効いたままだと、
      ・高さが1画面で止まり、FVから下がスクロールで出てこない
      ・grid項目が縮んで、節の幅が0になる（place-items:start center のため）
   ⚠️ 横の切りは `clip`。`hidden` にすると片方の軸が auto に計算されて
      スクロール容器になり、sticky が壊れる（2026-08-27に一度やった）
   ⚠️ `width: 100%` にしない。スクロールバーぶん（15px）はみ出す
   ------------------------------------------------------------------ */
html,
body {
    height: auto;
    overflow: visible
}

.site-shell {
    width: auto;
    height: auto;
    min-height: 100svh;
    overflow-x: clip;
    overflow-y: visible;
    /* 列を画面幅（スクロールバーを除く）に固定する。これを書かないと、
       FVが `width: min(100vw, …)` で 100vw を要求するせいで列が 1440px になり、
       下の節まで15px広く伸びて右端が切れる。FVは自前の幅指定があるので影響しない */
    grid-template-columns: minmax(0, 1fr)
}

.reference-about, .process-section, .works-showroom, .blueprint-trust, .reference-price-faq, .reference-contact {
    justify-self: stretch;
    width: auto
}

.reference-about, .process-section, .works-showroom, .blueprint-trust, .reference-price-faq, .reference-contact {
    --black:#111;
    --paper:#f7f4ee;
    --fog:#f7f4ee;
    --line:#d8d6d0;
    --coral:#ff4d4f;
    --font-mincho:"Yu Mincho", "Hiragino Mincho ProN", "Noto Serif JP", serif;
    --font-ui:Arial, sans-serif;
    --blue:#111;
    --lime:#f7f4ee;
    --yellow:#ff4d4f;
    --black:#191714;
    --paper:#f8f6f0;
    --paper-deep:#eee8dd;
    --fog:#f3efe7;
    --line:#cfc7b9;
    --coral:#b95f43;
    --blue:#162634;
    --lime:#d8d0bc;
    --yellow:#d7b56d;
    --paper:#fff;
    --paper-deep:#f8f7f3;
    --fog:#fbfaf7;
    --line:#ddd9d1;
    --reference-red:#ff4d4f;
    --tone-paper:#f7f4ee;
    --tone-sumi:#111;
    --tone-coral:#ff4d4f;
    --tone-rule:#1111113d;
    --tone-gutter:clamp(22px, 2.2vw, 42px);
}
.reference-about, .process-section, .works-showroom, .blueprint-trust, .reference-price-faq, .reference-contact {
    color: var(--tone-sumi);
    font-family: Hiragino Kaku Gothic ProN, Yu Gothic, Noto Sans JP, sans-serif;
    font-feature-settings: "palt";
    letter-spacing: .025em
}
.reference-about *, .process-section *, .works-showroom *, .blueprint-trust *, .reference-price-faq *, .reference-contact * { box-sizing: border-box }
.reference-about a, .process-section a, .works-showroom a, .blueprint-trust a, .reference-price-faq a, .reference-contact a { color: inherit; text-decoration: none }
.reference-about img, .process-section img, .works-showroom img, .blueprint-trust img, .reference-price-faq img, .reference-contact img { width: 100%; display: block }

@keyframes works-flow-left{0%{transform:translate(0)}to{transform:translate(-50%)}}
@keyframes works-flow-right{0%{transform:translate(-50%)}to{transform:translate(0)}}
@keyframes works-color-release{0%{filter:grayscale()contrast(1.05);opacity:.72}to{filter:grayscale(0)contrast();opacity:1}}
@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}
.scroll-progress{z-index:110;pointer-events:none;background:#1d1b1914;width:100%;height:2px;position:fixed;top:75px;left:0;overflow:hidden}
.scroll-progress i{width:100%;height:100%;transform:scaleX(var(--page-progress,0));transform-origin:0;will-change:transform;background:linear-gradient(90deg,#1d1b19 0 82%,#b75f47 82% 100%);display:block}
@media (max-width: 900px){.scroll-progress{top:67px}}
@media (prefers-reduced-motion:reduce){.scroll-progress{display:none}[data-motion],[data-motion] *{opacity:1!important;translate:none!important;rotate:none!important;scale:none!important}}
.contact-cta{z-index:4;color:#27231f;clip-path:polygon(1% 7%,7% 2%,15% 6%,25% 2%,35% 6%,45% 1%,55% 6%,65% 2%,76% 7%,87% 1%,99% 6%,100% 94%,88% 99%,76% 95%,63% 99%,50% 94%,37% 99%,24% 95%,12% 99%,0 94%);cursor:pointer;background:#f4eee3;border:0;justify-content:space-between;align-items:center;width:min(300px,24vw);min-height:72px;padding:18px 24px;font:500 15px/1.5 Yu Mincho,serif;transition:transform .25s,background .25s,color .25s;display:flex;position:absolute;top:50%;right:13%;transform:translateY(-45%)rotate(-1deg);box-shadow:5px 7px 15px #301f1821}
.contact-cta span{color:#b75f47;font-size:20px}
.contact-cta:hover{color:#fff;background:#211f1d;transform:translateY(-50%)rotate(0)}
@media (max-width: 900px){.contact-cta{width:100%;min-height:76px;margin-top:34px;position:relative;top:auto;right:auto;transform:rotate(-.5deg)}.contact-cta:hover{transform:rotate(0)}}
.site-header a,.hero-method,.hero-consult,.header-cta,.section-label,.showroom-filters button,.contact-cta{white-space:nowrap}
.process-section{--process-before-opacity:1;--process-organize:0;--process-reveal:0;--process-after-opacity:0;--process-wire-opacity:0;--process-site-clip:100%;--process-site-y:0%;--process-guide-offset:1;--process-progress-x:0%;color:#111;background:#f7f4ee;height:210vh;min-height:1500px;position:relative}
.process-stage{isolation:isolate;background:#f7f4ee;height:100svh;min-height:680px;position:sticky;top:0;overflow:hidden}
.process-stage:before{content:"";z-index:1;border-left:1px solid #1111111f;position:absolute;top:0;bottom:0;left:35.8%}
.process-label{z-index:30;grid-template-rows:38px 22px 1fr;grid-template-columns:70px 1fr;column-gap:16px;width:250px;min-height:84px;font-family:Arial,sans-serif;display:grid;position:absolute;top:clamp(94px,18vh,174px);left:3.4vw}
.process-label b{letter-spacing:-.05em;grid-row:1/3;font-size:36px;line-height:1}
.process-label span{color:#ff4d4f;letter-spacing:.04em;grid-area:2/2;font-size:10px;font-weight:800}
.process-label-after{opacity:var(--process-after-opacity)}
.process-label-before{opacity:var(--process-before-opacity)}
.process-label i{background:#111;width:1px;height:54px;position:absolute;top:0;left:70px}
.process-label small{grid-area:1/2;font-size:10px;font-weight:700;line-height:1.65}
.process-copy{z-index:28;pointer-events:none;width:31vw;position:absolute;top:clamp(300px,40vh,420px);left:3.4vw}
.process-copy h2{letter-spacing:-.045em;margin:0;font:500 clamp(37px,4.1vw,70px)/1.42 Yu Mincho,Hiragino Mincho ProN,serif}
.process-copy p{letter-spacing:.045em;margin:clamp(25px,4.2vh,44px) 0 0;font-size:clamp(10px,.78vw,13px);font-weight:600;line-height:2.05}
.process-copy-before{opacity:var(--process-before-opacity);transform:translateY(calc((1 - var(--process-before-opacity)) * -18px))}
.process-copy-after{opacity:var(--process-after-opacity);transform:translateY(calc((1 - var(--process-after-opacity)) * 18px))}
.process-canvas{z-index:3;position:absolute;inset:0}
.process-before-reference{z-index:2;object-fit:cover;object-position:center;clip-path:inset(0 0 0 35.9%);width:100%;height:100%;opacity:calc(var(--process-before-opacity) * .82);transform:translateX(calc(var(--process-organize) * 2.5vw)) scale(calc(1 - var(--process-organize) * .015));filter:grayscale(.18)contrast(.97);position:absolute;inset:0}
.process-paper-field{z-index:7;pointer-events:none;position:absolute;inset:0}
.process-paper{color:#111;transform-origin:50%;will-change:transform, opacity;background:#f7f4ee;border:1px solid #1111111f;place-items:center;width:clamp(148px,16vw,280px);min-height:clamp(96px,13vh,154px);margin:0;padding:clamp(18px,2vw,34px);display:grid;position:absolute;box-shadow:7px 9px 18px #11111124}
.process-paper b{z-index:2;text-align:center;font:500 clamp(15px,1.45vw,25px)/1.75 Yu Mincho,serif;position:relative}
.process-paper b span{white-space:nowrap;display:block}
.process-paper b span:last-child{text-underline-offset:10px;-webkit-text-decoration:underline #ff4d4f;text-decoration:underline #ff4d4f;text-decoration-thickness:1px}
.process-paper-photo{width:clamp(170px,18vw,310px);padding:10px 10px 34px;overflow:hidden}
.process-paper-photo img{object-fit:cover;object-position:58% 16%;filter:grayscale()contrast(1.06);width:calc(100% - 20px);height:calc(100% - 44px);position:absolute;inset:10px 10px 34px}
.process-paper-photo:nth-of-type(8) img{object-position:81% 82%}
.process-paper-photo b{letter-spacing:.15em;align-self:end;margin-bottom:-28px;font:700 7px/1 Arial,sans-serif}
.process-paper-photo b span:last-child{text-decoration:none}
.process-paper-question{outline-offset:-18px;outline:2px solid #ff4d4f}
.process-paper-list b{text-align:left;font-size:clamp(12px,1vw,17px)}
.process-paper-list b span{margin:3px 0}
.process-paper-wire{align-content:start}
.process-wire-mini{grid-template-columns:1fr 1fr;gap:7px;width:100%;display:grid}
.process-wire-mini i{border:1px solid #111;height:23px}
.process-wire-mini i:first-child{grid-column:1/-1;height:42px}
.process-paper-wire b{letter-spacing:.14em;margin-top:12px;font:700 7px/1 Arial,sans-serif}
.process-paper-wire b span:last-child{text-decoration:none}
.process-guide{z-index:8;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}
.process-guide path,.process-guide circle{fill:none;stroke:#ff4d4f;stroke-width:1.35px;stroke-dasharray:1;stroke-dashoffset:var(--process-guide-offset);vector-effect:non-scaling-stroke}
.process-edit-words{z-index:14;color:#ff4d4f;opacity:var(--process-wire-opacity);letter-spacing:.15em;align-items:center;gap:12px;font:700 8px/1 Arial,sans-serif;display:flex;position:absolute;bottom:11vh;right:7.5vw}
.process-edit-words i{font-style:normal}
.process-site-assembly{z-index:18;width:58vw;height:69vh;min-height:460px;opacity:calc(.12 + var(--process-reveal) * .88);transform:translateY(calc((1 - var(--process-reveal)) * 32px)) scale(calc(.95 + var(--process-reveal) * .05));transform-origin:100%;pointer-events:none;position:absolute;top:14vh;right:3.5vw}
.process-site-frame{background:#f7f4ee;border:1px solid #111;width:100%;height:100%;position:relative;overflow:hidden;box-shadow:14px 16px #1111111f}
.process-site-chrome{z-index:8;background:#f7f4ee;border-bottom:1px solid #1113;align-items:center;gap:6px;height:30px;padding:0 12px;display:flex;position:absolute;top:0;left:0;right:0}
.process-site-chrome i{background:#ff4d4f;border-radius:50%;width:6px;height:6px}
.process-site-chrome i:nth-child(2),.process-site-chrome i:nth-child(3){opacity:.22;background:#111}
.process-site-chrome span{letter-spacing:.15em;margin-left:auto;font:700 6px/1 Arial,sans-serif}
.process-wireframe{z-index:6;opacity:var(--process-wire-opacity);background:#f7f4ee;position:absolute;inset:30px 0 0}
.process-wireframe span{border:1px solid #111;display:block;position:absolute}
.wf-nav{height:7%;top:4%;left:4%;right:4%}
.wf-copy{width:34%;height:7%;top:18%;left:7%}
.wf-copy-short{width:22%;height:3%;top:29%}
.wf-visual{width:50%;height:47%;top:15%;right:5%}
.wf-section{width:42%;height:23%;bottom:7%;left:5%}
.wf-section-2{width:42%;left:auto;right:5%}
.process-site-scroll{z-index:4;clip-path:inset(var(--process-site-clip) 0 0 0);background:#f7f4ee;position:absolute;inset:30px 0 0;overflow:hidden}
.process-final-image{width:145%;max-width:none;height:auto;transform:translateY(var(--process-site-y));will-change:transform;position:absolute;top:-12%;right:0}
.process-site-assembly>small{text-align:right;letter-spacing:.17em;margin-top:10px;font:700 6px/1 Arial,sans-serif;display:block}
.process-progress{z-index:40;color:#11111180;letter-spacing:.14em;grid-template-columns:repeat(4,1fr);font:700 7px/1 Arial,sans-serif;display:grid;position:absolute;bottom:24px;left:3.4vw;right:3.4vw}
.process-progress span{border-top:1px solid #11111140;padding-top:10px}
.process-progress i{width:var(--process-progress-x);background:#ff4d4f;height:2px;position:absolute;top:0;left:0;transform:translateY(-1px)}
@media (max-width: 900px){.process-section{height:205vh;min-height:1380px}.process-stage{min-height:650px}.process-stage:before{display:none}.process-label{grid-template-columns:55px 1fr;width:215px;top:86px;left:20px}.process-label b{font-size:29px}.process-label i{height:48px;left:55px}.process-label small{font-size:8px}.process-copy{width:calc(100vw - 40px);top:170px;left:20px}.process-copy h2{font-size:clamp(31px,9vw,48px);line-height:1.4}.process-copy p{margin-top:16px;font-size:9px;line-height:1.9}.process-canvas{inset:0}.process-before-reference{clip-path:inset(0);object-position:70% center;height:56%;top:39%}.process-paper{width:138px;min-height:86px;padding:14px}.process-paper b{font-size:12px}.process-paper:nth-child(n+6){display:none}.process-site-assembly{width:calc(100vw - 28px);height:47vh;min-height:305px;top:43%;right:14px}.process-final-image{width:170%;top:-7%}.process-edit-words{gap:6px;font-size:6px;bottom:11%;right:20px}.process-progress{font-size:5px;bottom:16px;left:20px;right:20px}}
@media (prefers-reduced-motion:reduce){.process-section{height:100svh;min-height:720px}.process-before-reference,.process-paper-field,.process-guide,.process-edit-words,.process-copy-before,.process-label-before{display:none}.process-copy-after,.process-label-after,.process-site-assembly{opacity:1;transform:none}.process-site-scroll{clip-path:inset(0)}}
.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
.reference-about,.reference-price-faq,.reference-contact{box-sizing:border-box;position:relative;overflow:hidden}
.reference-about{color:#111;background:#f7f4ee;border-top:1px solid #05050514;height:clamp(430px,33.93vw,520px)}
.reference-about:before{content:"";z-index:7;width:calc(100% - var(--hero-bridge-progress,0) * 78%);height:max(1px, calc(56px - var(--hero-bridge-progress,0) * 55px));transform-origin:0 0;background:#ff4d4f;position:absolute;top:0;left:0}
.reference-about:after{content:"";z-index:8;left:calc(5.02vw + var(--hero-bridge-progress,0) * 5.86vw);width:calc(12vw + var(--hero-bridge-progress,0) * 20vw);height:1px;opacity:var(--hero-bridge-progress,0);background:#111;position:absolute;top:0}
.reference-section-label{z-index:5;gap:.72vw;font-family:Arial,sans-serif;display:grid;position:absolute;top:3.68vw;left:5.02vw}
.reference-section-label b{letter-spacing:-.035em;font-size:clamp(31px,2.78vw,42px);line-height:1}
.reference-section-label span{font-size:clamp(10px,.99vw,15px);font-weight:700;line-height:1}
.reference-about-vertical{writing-mode:vertical-rl;font:700 clamp(12px,1.15vw,17px)/1 Arial,sans-serif;position:absolute;top:20.45vw;left:4.42vw;rotate:180deg}
.reference-about-copy{position:absolute;top:12.18vw;left:10.88vw}
.reference-about-copy h2{letter-spacing:-.045em;margin:0;font:500 clamp(48px,4.98vw,76px)/1.18 Yu Mincho,Hiragino Mincho ProN,serif}
.reference-about-copy p{letter-spacing:.015em;margin:2.28vw 0 0 .18vw;font:500 clamp(12px,1.25vw,19px)/1.7 Yu Mincho,Hiragino Mincho ProN,serif}
.reference-about-facts{width:16.05vw;min-width:224px;margin:0;font-family:Arial,sans-serif;position:absolute;top:11.62vw;right:4.95vw}.reference-about-facts:before{content:'RECRUITMENT CHANGES.';color:#111;letter-spacing:.145em;background:radial-gradient(circle closest-side,#ff4d4f 100%,#0000 0) 0 24px/5px 5px no-repeat;padding-bottom:31px;font:700 clamp(9px,.77vw,11px)/1.45 var(--font-ui);position:absolute;top:-6.92vw;left:0}.reference-about-facts:after{content:'SO DOES THE SITE.';color:#111;letter-spacing:.145em;font:700 clamp(9px,.77vw,11px)/1.45 var(--font-ui);position:absolute;top:-3.52vw;left:0}
.reference-about-facts>div{border-bottom:1px solid #1a1a1a;justify-content:space-between;align-items:flex-start;gap:18px;min-height:60px;margin-bottom:19px;padding:0 0 13px;display:flex}
.reference-about-facts>div:nth-child(n+3){border-bottom:1px solid #1a1a1a;min-height:41px;margin-bottom:0}
.reference-about-facts>div:last-child{border-bottom:0;padding-top:18px}
.reference-about-facts dt,.reference-about-facts dd{white-space:nowrap;margin:0;font-size:clamp(10px,.94vw,14px);font-weight:700;line-height:1.25}
.reference-contact{color:#f7f4ee;background:var(--reference-red);height:clamp(500px,36.33vw,560px)}
.reference-contact-label{gap:.55vw;font-family:Arial,sans-serif;display:grid;position:absolute;top:2.65vw;left:4.65vw}
.reference-contact-label b{font-size:clamp(21px,1.78vw,27px);line-height:1}
.reference-contact-label span{font-size:clamp(9px,.78vw,12px)}
.reference-contact>h2{letter-spacing:-.06em;margin:0;font:500 clamp(70px,7.45vw,114px)/1.18 Yu Mincho,Hiragino Mincho ProN,serif;position:absolute;top:5.8vw;left:10.7vw}
.reference-contact>.contact-cta{color:#f7f4ee;cursor:pointer;background:#111;border:0;justify-content:space-between;align-items:center;width:33.6vw;height:9.55vw;min-height:125px;padding:0 3.1vw;font:500 clamp(17px,1.55vw,24px)/1 Yu Mincho,serif;display:flex;position:absolute;top:9.75vw;right:4.85vw}
.reference-contact>.contact-cta b{font:300 clamp(38px,4vw,62px)/1 Arial,sans-serif}
.reference-contact-bottom{grid-template-columns:15% 38% 29% 18%;align-items:end;gap:0;font-family:Arial,sans-serif;display:grid;position:absolute;bottom:3.65vw;left:4.55vw;right:4.55vw}
.reference-contact-brand{color:#f7f4ee;letter-spacing:-.06em;font:500 clamp(42px,4vw,61px)/1 Arial,sans-serif}
.reference-contact-brand span{vertical-align:top;font-size:.45em}
.reference-contact-bottom nav{align-items:flex-end;gap:clamp(16px,2.1vw,32px);padding-bottom:.5vw;display:flex}
.reference-contact-bottom nav a{color:#f7f4ee;font-size:clamp(9px,.8vw,12px)}
.reference-contact-bottom address{padding-bottom:.25vw;font-size:clamp(9px,.75vw,11px);font-style:normal;line-height:1.75}
.reference-contact-bottom>small{white-space:nowrap;justify-self:end;padding-bottom:.35vw;font-size:clamp(8px,.75vw,11px)}
@media (max-width: 900px){.reference-about{height:720px}.reference-section-label{gap:9px;top:40px;left:22px}.reference-section-label b{font-size:34px}.reference-about-vertical{top:248px;left:20px}.reference-about-copy{top:160px;left:55px;right:22px}.reference-about-copy h2{font-size:clamp(34px,9.5vw,48px);line-height:1.45}.reference-about-copy p{margin-top:25px;font-size:12px;line-height:1.9}.reference-about-facts{width:auto;min-width:0;top:465px;left:55px;right:22px}.reference-about-facts:before{background-position:0 22px;padding-bottom:26px;font-size:10px;letter-spacing:.12em;top:-401px}.reference-about-facts:after{font-size:10px;letter-spacing:.12em;top:-365px}.reference-about-facts>div{min-height:42px;margin-bottom:11px;padding-bottom:8px}.reference-about-facts>div:nth-child(n+3){min-height:28px}.reference-about-facts>div:last-child{padding-top:10px}.reference-contact{height:720px}.reference-contact-label{top:34px;left:22px}.reference-contact>h2{font-size:clamp(57px,16.5vw,78px);line-height:1.25;top:105px;left:35px}.reference-contact>.contact-cta{width:auto;height:105px;min-height:0;padding:0 25px;top:355px;left:35px;right:35px}.reference-contact-bottom{grid-template-columns:1fr auto;row-gap:22px;bottom:26px;left:22px;right:22px}.reference-contact-brand{font-size:47px}.reference-contact-bottom nav{display:none}.reference-contact-bottom address{text-align:right;grid-area:1/1/auto/-1;justify-self:end;font-size:9px}.reference-contact-bottom>small{grid-area:2/2;font-size:8px}}
.works-showroom{color:#111;isolation:isolate;background:#ff4d4f;height:clamp(760px,56.28vw,941px);min-height:760px;position:relative;overflow:hidden}
.works-intro{z-index:20;pointer-events:none;width:min(610px,43vw);position:absolute;top:clamp(26px,1.8vw,30px);left:clamp(32px,2.87vw,48px)}
.works-intro:before{content:"";z-index:-1;background:#ff4d4f;width:calc(100% + 36px);height:570px;position:absolute;top:-12px;left:-18px}
.works-brand{letter-spacing:.08em;font:800 clamp(16px,1.25vw,21px)/1 Arial,sans-serif;display:block}
.works-intro h2{white-space:nowrap;border-bottom:1px solid #111;gap:25px;width:216px;margin:31px 0 0;padding-bottom:17px;font:700 clamp(17px,1.2vw,20px)/1 Arial,sans-serif;display:flex}
.works-intro h2 span{font-weight:800}
.works-filters{pointer-events:auto;gap:11px;width:min(650px,52vw);margin-top:20px;display:flex}
.works-filters button{color:#f7f4ee;cursor:pointer;background:0 0;border:1px solid #ffffff8c;border-radius:999px;flex:none;height:30px;padding:0 16px;font:500 12px/1 Arial,sans-serif;transition:color .25s,background-color .25s,border-color .25s}
.works-filters button:hover{border-color:#f7f4ee}
.works-filters button[aria-pressed=true]{color:#f7f4ee;background:#111;border-color:#111}
.works-intro h3{letter-spacing:-.03em;margin:31px 0 0;font:500 clamp(58px,4.2vw,72px)/1.25 Yu Mincho,Hiragino Mincho ProN,serif}
.works-intro>p{margin:19px 0 0;font:600 clamp(13px,.96vw,16px)/1.8 Yu Mincho,Hiragino Mincho ProN,serif}
.works-intro>small{letter-spacing:.05em;margin-top:52px;font:800 clamp(12px,.9vw,15px)/1.55 Arial,sans-serif;display:block}
.works-moving-field{z-index:5;position:absolute;inset:0;overflow:hidden}
.works-lane{width:100%;height:270px;position:absolute;left:0;overflow:visible}
.works-lane-1{top:78px}
.works-lane-2{top:355px}
.works-lane-3{top:620px}
.works-track{will-change:transform;width:max-content;height:100%;animation:works-flow-left var(--lane-duration) linear infinite;align-items:center;display:flex}
.works-lane-1 .works-track{--lane-duration:50s}
.works-lane-2 .works-track{--lane-duration:60s;animation-name:works-flow-right}
.works-lane-3 .works-track{--lane-duration:45s}
.works-track-group{align-items:center;height:100%;display:flex}
.works-tile{width:var(--tile-width);height:var(--tile-height);margin:0 var(--tile-gap) 0 0;transform:translateY(var(--tile-y)) rotate(var(--tile-rotate));cursor:pointer;background:#f7f4ee;border:2px solid #0000;flex:none;padding:0;transition:opacity .65s,transform .65s cubic-bezier(.22,1,.36,1),border-color .25s,box-shadow .35s;position:relative;box-shadow:0 12px 22px #11111138}
.works-tile:after{content:"";z-index:1;pointer-events:none;opacity:0;mix-blend-mode:multiply;background:#ff4d4f;transition:opacity .45s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}
.works-tile img{object-fit:cover;filter:grayscale()contrast(1.06);width:100%;height:100%;transition:filter .45s cubic-bezier(.22,1,.36,1);display:block}
.works-tile[data-tone=paper] img{filter:grayscale()contrast(1.02)brightness(1.09)}
.works-tile[data-tone=sumi] img{filter:grayscale()contrast(1.22)brightness(.78)}
.works-tile[data-tone=coral]:after{opacity:.3}
.works-tile[data-muted=true]{opacity:.15;transform:translateY(var(--tile-y)) rotate(var(--tile-rotate)) scale(.96)}
.works-tile:hover,.works-tile:focus-visible{z-index:10;transform:translateY(var(--tile-y)) rotate(0deg) scale(1.05);border-color:#f7f4ee;outline:none;box-shadow:0 19px 32px #1111114d}
.works-tile:hover:after,.works-tile:focus-visible:after,.works-tile[data-selected=true]:after{opacity:.5}
.works-tile:hover img,.works-tile:focus-visible img,.works-tile[data-selected=true] img{filter:grayscale()contrast(1.24)brightness(.92)}
.works-tile[data-selected=true]{z-index:11;border-color:#f7f4ee;box-shadow:0 0 0 3px #ff4d4f,0 0 0 5px #f7f4ee,0 20px 34px #11111152}
.works-tile>span{z-index:2;color:#f7f4ee;opacity:0;text-align:left;background:#111;grid-template-columns:1fr auto;gap:4px 12px;padding:8px 9px;transition:opacity .25s,translate .25s;display:grid;position:absolute;bottom:8px;left:8px;right:8px;translate:0 6px}
.works-tile:hover>span,.works-tile:focus-visible>span{opacity:1;translate:0}
.works-tile>span small{letter-spacing:.08em;grid-column:1/-1;font:700 7px/1 Arial,sans-serif}
.works-tile>span b{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:500 12px/1.25 Yu Mincho,serif;overflow:hidden}
.works-tile>span i{align-self:end;font:700 7px/1 Arial,sans-serif}
.works-lane-1:has(.works-tile:hover) .works-track{animation-duration:166s}
.works-lane-2:has(.works-tile:hover) .works-track{animation-duration:200s}
.works-lane-3:has(.works-tile:hover) .works-track{animation-duration:150s}
.works-showroom[data-drawer-open=true] .works-lane-1 .works-track{animation-duration:175s}
.works-showroom[data-drawer-open=true] .works-lane-2 .works-track{animation-duration:210s}
.works-showroom[data-drawer-open=true] .works-lane-3 .works-track{animation-duration:157s}
.works-scroll-cue{z-index:22;color:#111;letter-spacing:.1em;align-items:center;gap:20px;font:700 10px/1 Arial,sans-serif;display:flex;position:absolute;bottom:12px;left:50%;translate:-50%}
.works-scroll-cue i{font-size:24px;font-style:normal}
.works-drawer{z-index:50;color:#111;overscroll-behavior:contain;pointer-events:none;background:#f7f4ee;width:30%;padding:32px;transition:transform .65s cubic-bezier(.22,1,.36,1);position:absolute;top:0;bottom:0;right:0;overflow:auto;transform:translate(100%);box-shadow:-12px 0 30px #11111129}
.works-showroom[data-drawer-open=true] .works-drawer{pointer-events:auto;transform:translate(0)}
.works-drawer-close{color:#111;cursor:pointer;background:0 0;border:0;place-items:center;width:40px;height:40px;padding:0;font:300 36px/1 Arial,sans-serif;display:grid;position:absolute;top:20px;right:27px}
.works-drawer-close:hover,.works-drawer-close:focus-visible{color:#ff4d4f;outline:1px solid #ff4d4f}
.works-drawer-content{min-height:100%;padding-top:32px}
.works-drawer-kicker{color:#ff4d4f;letter-spacing:.08em;font:700 11px/1 Arial,sans-serif}
.works-drawer-content>h3{margin:15px 0 8px;font:500 clamp(30px,2.15vw,38px)/1.2 Yu Mincho,serif}
.works-drawer-industry{margin:0;font:500 14px/1.5 Yu Mincho,serif}
.works-selected-preview{aspect-ratio:16/9;border:1px solid #1113;width:100%;margin-top:26px;position:relative;overflow:hidden;box-shadow:0 8px 18px #11111121}
.works-selected-preview:after{content:"";pointer-events:none;border:2px solid #ff4d4f;position:absolute;inset:0}
.works-selected-preview>small{z-index:2;color:#f7f4ee;letter-spacing:.1em;background:#111;padding:7px 8px;font:700 7px/1 Arial,sans-serif;position:absolute;top:9px;left:9px}
.works-selected-preview img{object-fit:cover;width:100%;height:100%;animation:.72s cubic-bezier(.22,1,.36,1) both works-color-release}
.works-drawer-description{border-bottom:1px solid #1111114d;margin:25px 0 24px;padding-bottom:24px;font:500 12px/1.8 Yu Mincho,serif}
.works-inner-pages{grid-template-columns:1fr 1fr;gap:14px 12px;display:grid}
.works-inner-pages figure{min-width:0;margin:0}
.works-inner-pages figcaption{margin-bottom:8px;font:600 10px/1 Arial,sans-serif}
.works-inner-pages img{aspect-ratio:16/9;object-fit:cover;filter:none;border:1px solid #1111112e;width:100%;animation:.72s cubic-bezier(.22,1,.36,1) both works-color-release;display:block}
.works-inner-pages figure:nth-child(2) img{animation-delay:60ms}
.works-inner-pages figure:nth-child(3) img{animation-delay:.12s}
.works-inner-pages figure:nth-child(4) img{animation-delay:.18s}
.works-inside-button{color:#f7f4ee;cursor:pointer;background:#ff4d4f;border:0;justify-content:center;align-items:center;gap:24px;width:100%;height:50px;margin-top:24px;padding:0 22px;font:700 14px/1 Yu Mincho,serif;display:flex}
.works-inside-button:hover,.works-inside-button:focus-visible{color:#ff4d4f;background:#111;outline:none}
.works-inside-button b{margin-left:auto;font:400 20px/1 Arial,sans-serif}
.works-inside-label{text-align:center;letter-spacing:.14em;margin-top:10px;font:700 8px/1 Arial,sans-serif;display:block}
@media (max-width: 900px){.works-showroom{height:980px;min-height:980px}.works-intro{width:calc(100% - 40px);top:24px;left:20px}.works-intro:before{width:calc(100% + 16px);height:450px;left:-8px}.works-brand{font-size:16px}.works-intro h2{width:206px;margin-top:25px;font-size:16px}.works-filters{flex-wrap:wrap;gap:7px;width:100%;margin-top:16px}.works-filters button{height:28px;padding-inline:12px;font-size:10px}.works-intro h3{margin-top:25px;font-size:clamp(45px,13vw,61px)}.works-intro>p{margin-top:14px;font-size:11px}.works-intro>small{margin-top:20px;font-size:10px}.works-lane-1{top:420px}.works-lane-2{top:625px}.works-lane-3{top:810px}.works-lane{height:190px}.works-tile{width:calc(var(--tile-width) * .7);height:calc(var(--tile-height) * .7);margin-right:calc(var(--tile-gap) * .7)}.works-scroll-cue{bottom:8px}.works-drawer{z-index:120;width:min(92vw,470px);padding:24px;position:fixed}.works-drawer-close{top:12px;right:16px}.works-drawer-content{padding-top:26px;padding-bottom:28px}}
@media (prefers-reduced-motion:reduce){.works-track{animation:none}.works-lane-1 .works-track{transform:translate(-15%)}.works-lane-2 .works-track{transform:translate(-38%)}.works-lane-3 .works-track{transform:translate(-7%)}.works-tile,.works-drawer{transition:none}.works-selected-preview img,.works-inner-pages img{animation:none}}
.blueprint-trust{--bp-paper:#f7f4ee;--bp-black:#111;--bp-coral:#ff4d4f;--bp-intro:0;--bp-foundation:0;--bp-information:0;--bp-ui:0;--bp-wire:0;--bp-content:0;--bp-visual:0;--bp-notes:0;--bp-kpi:0;--bp-settle:0;--bp-grid-opacity:.08;--bp-axis-offset:1;--bp-leader-offset:1;--bp-chart-offset:1;--bp-dimension-offset:1;--bp-note-1:0;--bp-note-2:0;--bp-note-3:0;--bp-note-4:0;--bp-note-5:0;--bp-note-6:0;--bp-note-7:0;--bp-note-8:0;--bp-parallax-back:0px;--bp-parallax-front:0px;height:260svh;min-height:1870px;color:var(--bp-paper);background:var(--bp-black);position:relative}
.blueprint-stage{background:var(--bp-black);isolation:isolate;height:100svh;min-height:720px;position:sticky;top:0;overflow:hidden}
.bp-section-head{z-index:20;width:20.5vw;opacity:calc(.48 + var(--bp-intro) * .52);letter-spacing:.12em;align-items:center;gap:1.3vw;font:700 clamp(9px,.72vw,13px)/1 Arial,sans-serif;display:flex;position:absolute;top:3.1vh;left:2.3vw}
.bp-section-head i{background:var(--bp-paper);opacity:.62;flex:1;height:1px}
.bp-vertical{z-index:20;letter-spacing:.08em;writing-mode:vertical-rl;height:20vh;opacity:calc(.35 + var(--bp-intro) * .65);border-left:1px solid #f7f4eeb3;padding-top:1px;font:700 clamp(8px,.66vw,12px)/1 Arial,sans-serif;position:absolute;top:18vh;left:2.25vw}
.bp-copy{z-index:22;width:28vw;opacity:var(--bp-intro);transform:translateY(calc((1 - var(--bp-intro)) * 20px));position:absolute;bottom:7.3vh;left:2.45vw}
.bp-copy .bp-phase{color:var(--bp-coral);letter-spacing:.08em;margin:0 0 18px;font:700 11px/1 Arial,sans-serif;display:none}
.bp-copy h2{color:var(--bp-paper);letter-spacing:-.055em;margin:0;font:500 clamp(37px,3.55vw,68px)/1.35 Yu Mincho,Hiragino Mincho ProN,serif}
.bp-copy h3{letter-spacing:.02em;margin:2.8vh 0 0;font:500 clamp(14px,1.08vw,21px)/1.65 Yu Mincho,Hiragino Mincho ProN,serif}
.bp-description{letter-spacing:.025em;margin:2.3vh 0 0;font:500 clamp(10px,.75vw,14px)/1.85 Yu Mincho,Hiragino Mincho ProN,serif}
.bp-closing{color:var(--bp-coral);opacity:var(--bp-settle);letter-spacing:.09em;margin:2.2vh 0 0;font:700 clamp(9px,.66vw,12px)/1 Arial,sans-serif}
.bp-board{z-index:5;width:min(72vw,1380px);height:91vh;min-height:650px;color:var(--bp-paper);font-family:Arial,sans-serif;position:absolute;top:3.5vh;right:1.25vw}
.bp-grid{width:96%;height:94%;color:var(--bp-paper);opacity:var(--bp-grid-opacity);transform:translateY(var(--bp-parallax-back));position:absolute;inset:4% 0 0 3%}
.bp-axis{fill:none;stroke:var(--bp-coral);stroke-width:1px;stroke-dasharray:1;stroke-dashoffset:var(--bp-axis-offset)}
.bp-grid-numbers{fill:var(--bp-paper);letter-spacing:.12em;font:8px Arial,sans-serif}
.bp-plane{background:var(--bp-black);transform-origin:50% 100%;border:1px solid #f7f4ee9e;position:absolute;box-shadow:10px 12px #111111bf}
.bp-plane-head{letter-spacing:.13em;border-bottom:1px solid #f7f4ee80;justify-content:space-between;align-items:center;height:23px;padding:0 10px;font:700 7px/1 Arial,sans-serif;display:flex}
.bp-base{z-index:2;width:61%;height:43%;opacity:var(--bp-foundation);transform:translateY(calc((1 - var(--bp-foundation)) * 40px + var(--bp-parallax-back))) rotate(3deg) skewX(-4deg) scale(calc(.985 + var(--bp-foundation) * .015));top:46%;left:25%}
.bp-base-columns{grid-template-columns:repeat(12,1fr);gap:6px;display:grid;position:absolute;inset:40px 22px 22px}
.bp-base-columns i{background:#f7f4ee06;border:1px solid #f7f4ee29;display:block}
.bp-dim{color:var(--bp-coral);letter-spacing:.1em;font:700 7px Arial,sans-serif;position:absolute}
.bp-dim:before,.bp-dim:after{content:"";background:var(--bp-coral);position:absolute}
.bp-dim-x{text-align:center;border-top:1px solid var(--bp-coral);padding-top:3px;bottom:8px;left:13%;right:13%}
.bp-dim-y{border-left:1px solid var(--bp-coral);padding:25% 0 0 3px;top:20%;bottom:20%;right:7px}
.bp-information{z-index:4;width:55%;height:34%;opacity:var(--bp-information);transform:translateY(calc((1 - var(--bp-information)) * 40px + 7px)) rotate(3deg) skewX(-4deg) scale(calc(.985 + var(--bp-information) * .015));top:41%;left:29%}
.bp-sitemap{text-align:center;grid-template-columns:repeat(4,1fr);grid-auto-rows:32px;align-content:center;gap:36px 20px;display:grid;position:absolute;inset:39px 28px 22px}
.bp-sitemap span{letter-spacing:.1em;border:1px solid #f7f4ee9e;place-content:center;font:700 6px Arial,sans-serif;display:grid}
.bp-sitemap .is-root{grid-column:2/4}
.bp-information svg{pointer-events:none;width:calc(100% - 56px);height:calc(100% - 60px);position:absolute;inset:40px 28px 20px}
.bp-information svg path{fill:none;stroke:var(--bp-coral);stroke-width:1px;opacity:.8}
.bp-ui{z-index:6;width:58%;height:32%;opacity:var(--bp-ui);transform:translateY(calc((1 - var(--bp-ui)) * 40px + 4px)) rotate(3deg) skewX(-4deg) scale(calc(.985 + var(--bp-ui) * .015));top:36%;left:27%}
.bp-ui-grid{grid-template-columns:1.2fr 1fr .65fr 1fr;gap:12px;height:calc(100% - 23px);padding:17px;display:grid}
.bp-ui-grid>div{border:1px solid #f7f4ee5e;min-width:0;padding:10px}
.bp-ui-grid small{color:var(--bp-coral);letter-spacing:.11em;margin-bottom:8px;font:700 6px Arial,sans-serif;display:block}
.bp-ui-type strong{font:500 42px/1 Yu Mincho,serif;display:block}
.bp-ui-type i,.bp-ui-type b{margin-top:5px;font:400 6px Arial,sans-serif;display:block}
.bp-ui-buttons span{border:1px solid #f7f4ee8c;margin:5px 0;padding:6px;font:700 6px Arial,sans-serif;display:block}
.bp-ui-buttons .is-coral{border-color:var(--bp-coral);color:var(--bp-coral)}
.bp-ui-color i{border:1px solid var(--bp-paper);background:var(--bp-paper);height:22px;margin-bottom:7px;display:block}
.bp-ui-color i:nth-of-type(2){background:var(--bp-black)}
.bp-ui-color i:nth-of-type(3){border-color:var(--bp-coral);background:var(--bp-coral)}
.bp-ui-menu b{border-bottom:1px solid #f7f4ee66;padding:6px 0;font:700 6px Arial,sans-serif;display:block}
.bp-wireframe{z-index:8;width:57%;height:36%;color:var(--bp-black);border-color:var(--bp-paper);background:var(--bp-paper);opacity:var(--bp-wire);transform:translateY(calc((1 - var(--bp-wire)) * 40px)) rotate(3deg) skewX(-4deg) scale(calc(.985 + var(--bp-wire) * .015));top:28%;left:29%}
.bp-wireframe .bp-plane-head{border-bottom-color:#11111180}
.bp-wire-layout{grid-template-rows:22px 1fr .6fr;grid-template-columns:1.25fr .75fr;gap:8px;display:grid;position:absolute;inset:34px 20px 16px}
.bp-wire-nav{border:1px solid;grid-column:1/3;align-items:center;gap:12px;padding:0 8px;font:700 6px Arial;display:flex}
.bp-wire-nav i{background:var(--bp-black);opacity:.5;width:30px;height:1px}
.bp-wire-nav i:first-of-type{margin-left:auto}
.bp-wire-nav b{color:var(--bp-paper);background:var(--bp-black);padding:4px 7px}
.bp-wire-hero,.bp-wire-copy,.bp-wire-cards{border:1px solid;padding:11px}
.bp-wire-hero{grid-row:2/4;position:relative}
.bp-wire-hero strong{font:500 clamp(13px,1vw,20px)/1.45 Yu Mincho,serif}
.bp-wire-hero span{border:1px solid;width:33%;height:56%;position:absolute;top:17%;right:8%}
.bp-wire-hero span:after,.bp-wire-hero span:before{content:"";background:var(--bp-black);width:1px;height:114%;position:absolute;top:-7%;left:50%;rotate:34deg}
.bp-wire-hero span:after{rotate:-34deg}
.bp-wire-hero em{font:700 6px Arial;position:absolute;bottom:10px;left:11px}
.bp-wire-copy b{font:700 6px Arial;display:block}
.bp-wire-copy i{background:var(--bp-black);height:1px;margin-top:9px;display:block}
.bp-wire-copy i:last-child{width:66%}
.bp-wire-cards{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}
.bp-wire-cards span{border:1px solid}
.bp-content{z-index:10;width:53%;height:29%;opacity:var(--bp-content);transform:translateY(calc((1 - var(--bp-content)) * 40px - 3px)) rotate(3deg) skewX(-4deg) scale(calc(.985 + var(--bp-content) * .015));top:22%;left:34%}
.bp-content-map{grid-template-columns:1.25fr 1fr 1fr;gap:10px;height:calc(100% - 23px);padding:14px;display:grid}
.bp-content-map>div{border:1px solid #f7f4ee73;padding:10px}
.bp-content-map small{color:var(--bp-coral);letter-spacing:.1em;font:700 6px Arial}
.bp-content-map strong{margin-top:12px;font:500 clamp(12px,1.1vw,21px)/1.4 Yu Mincho,serif;display:block}
.bp-content-map p{margin:10px 0 0;font:500 clamp(7px,.5vw,10px)/1.8 Yu Mincho,serif}
.bp-visual{z-index:12;width:54%;height:34%;color:var(--bp-black);border-color:var(--bp-paper);background:var(--bp-paper);opacity:var(--bp-visual);transform:translateY(calc((1 - var(--bp-visual)) * 40px + var(--bp-parallax-front))) rotate(3deg) skewX(-4deg) scale(calc(.985 + var(--bp-visual) * .015));top:7%;left:34%}
.bp-site-nav{letter-spacing:.09em;border-bottom:1px solid;align-items:center;gap:18px;height:27px;padding:0 12px;font:700 6px Arial;display:flex}
.bp-site-nav span{margin-left:auto}
.bp-site-nav i{color:var(--bp-paper);background:var(--bp-coral);padding:5px 7px;font-style:normal}
.bp-site-hero{grid-template-columns:1.25fr .75fr;height:calc(100% - 50px);padding:19px 28px 8px;display:grid}
.bp-site-hero small{letter-spacing:.11em;font:700 6px Arial}
.bp-site-hero strong{letter-spacing:-.06em;margin-top:9px;font:500 clamp(18px,1.7vw,33px)/1.28 Yu Mincho,serif;display:block}
.bp-site-hero p{color:var(--bp-coral);margin:10px 0 0;font:500 7px/1.6 Yu Mincho,serif}
.bp-site-hero svg{align-self:center;width:100%;max-height:90%}
.bp-site-hero .bp-branch{fill:none;stroke:var(--bp-black);stroke-width:2px}
.bp-site-hero circle{fill:var(--bp-coral)}
.bp-site-hero .bp-cube path{stroke:var(--bp-black);stroke-width:1.5px}
.bp-site-foot{letter-spacing:.1em;border-top:1px solid;justify-content:space-between;align-items:center;height:23px;padding:0 12px;font:700 6px Arial;display:flex}
.bp-leaders{z-index:14;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}
.bp-leaders path{fill:none;stroke:var(--bp-paper);stroke-width:.9px;stroke-dasharray:1;stroke-dashoffset:var(--bp-leader-offset)}
.bp-leaders circle{fill:var(--bp-coral);opacity:var(--bp-notes)}
.bp-annotations{z-index:15;pointer-events:none;position:absolute;inset:0}
.bp-note{width:17%;opacity:var(--bp-notes);transform:translateY(calc((1 - var(--bp-notes)) * 8px));position:absolute}
.bp-note b{letter-spacing:.08em;font:700 clamp(7px,.64vw,12px)/1.05 Arial;display:block}
.bp-note p{margin:6px 0 0;font:500 clamp(6px,.48vw,9px)/1.65 Yu Mincho,serif}
.bp-note-research{top:18%;left:3%}
.bp-note-language{top:31%;left:0}
.bp-note-structure{top:45%;left:3%}
.bp-note-architecture{top:59%;left:5%}
.bp-note-flow{top:23%;right:0}
.bp-note-visual{top:42%;right:0}
.bp-note-measure{top:62%;right:0}
.bp-note-improve{top:76%;right:0}
.bp-kpi{z-index:13;background:var(--bp-black);width:48%;height:21%;opacity:var(--bp-kpi);transform:translateY(calc((1 - var(--bp-kpi)) * 18px + var(--bp-parallax-back))) rotate(3deg) skewX(-4deg);border:1px solid #f7f4eea6;position:absolute;bottom:7%;left:36%}
.bp-kpi-head{letter-spacing:.12em;border-bottom:1px solid #f7f4ee80;justify-content:space-between;align-items:center;height:23px;padding:0 10px;font:700 6px Arial;display:flex}
.bp-kpi-body{grid-template-columns:1.1fr 1fr .65fr;gap:14px;height:calc(100% - 23px);padding:10px;display:grid}
.bp-kpi-funnel{align-content:center;gap:6px;display:grid}
.bp-kpi-funnel div{grid-template-columns:46px 1fr 22px;align-items:center;gap:7px;font:700 6px Arial;display:grid}
.bp-kpi-funnel i{width:var(--value);background:var(--bp-paper);height:4px;display:block}
.bp-kpi-funnel div:last-child i{background:var(--bp-coral)}
.bp-chart{align-self:center;width:100%}
.bp-chart-grid{fill:none;stroke:var(--bp-paper);stroke-width:.5px;opacity:.18}
.bp-chart-line{fill:none;stroke:var(--bp-coral);stroke-width:2px;stroke-dasharray:1;stroke-dashoffset:var(--bp-chart-offset)}
.bp-chart circle{fill:var(--bp-coral)}
.bp-score{place-items:center;display:grid;position:relative}
.bp-score svg{width:min(74px,5vw);rotate:-90deg}
.bp-score circle{fill:none;stroke-width:7px}
.bp-score-base{stroke:#f7f4ee29}
.bp-score-value{stroke:var(--bp-coral);stroke-dasharray:72.5 100;stroke-dashoffset:calc(var(--bp-chart-offset) * 72.5)}
.bp-score strong{font:700 clamp(9px,.75vw,14px) Arial;position:absolute;top:35%}
.bp-score small{text-align:center;letter-spacing:.08em;font:700 5px/1.3 Arial;position:absolute;bottom:-3px}
.bp-design-system{z-index:16;opacity:var(--bp-kpi);grid-template-columns:1.2fr 1fr;gap:18px;font-family:Arial,sans-serif;display:grid;position:absolute}
.bp-type-spec{gap:5px;display:grid}
.bp-type-spec span{font-size:6px;line-height:1.45}
.bp-type-spec b{margin-right:7px;font:500 20px/1 Yu Mincho,serif;display:inline-block}
.bp-type-spec span:last-child b{font-family:Arial,sans-serif}
.bp-type-spec small{opacity:.72;margin-left:31px;font-size:5px}
.bp-color-spec{letter-spacing:.08em;gap:5px;font:700 6px/1 Arial,sans-serif;display:grid}
.bp-color-spec strong{color:var(--bp-coral);margin-bottom:2px}
.bp-color-spec span{align-items:center;gap:7px;display:flex}
.bp-color-spec i{border:1px solid var(--bp-paper);width:16px;height:10px}
.bp-color-spec .is-coral{border-color:var(--bp-coral);background:var(--bp-coral)}
.bp-color-spec .is-paper{background:var(--bp-paper)}
.bp-color-spec .is-sumi{background:var(--bp-black)}
.bp-title-block{z-index:16;background:var(--bp-black);width:23%;height:9%;opacity:calc(.18 + var(--bp-settle) * .82);border:1px solid #f7f4eeb8;font-family:Arial,sans-serif;position:absolute;bottom:1%;right:0}
.bp-title-block>div{border-bottom:1px solid #f7f4ee73;grid-template-columns:1fr 1fr;align-items:center;height:50%;padding:0 9px;display:grid}
.bp-title-block>div:last-child{border:0;grid-template-columns:auto 1fr auto 1fr}
.bp-title-block b,.bp-title-block span{letter-spacing:.08em;font-size:clamp(5px,.48vw,9px)}
.bp-title-block small{color:var(--bp-coral);font-size:clamp(5px,.4vw,7px)}
.bp-title-block div:last-child b{padding-left:6px}
.bp-ref{z-index:16;border:1px solid var(--bp-paper);text-align:center;width:24px;height:24px;opacity:var(--bp-notes);border-radius:50%;padding-top:3px;font:700 7px/1 Arial;position:absolute}
.bp-ref small{width:42px;margin:6px 0 0 -10px;font-size:5px;display:block}
.bp-ref-a{top:7%;left:22%}
.bp-ref-b{top:57%;right:5%}
.bp-ref-c{bottom:1%;left:31%}
.bp-progress{z-index:25;color:var(--bp-paper);letter-spacing:.13em;align-items:center;gap:13px;font:700 6px Arial;display:flex;position:absolute;bottom:2.2vh;left:34%;right:3%}
.bp-progress i{background:#f7f4ee38;flex:1;height:1px}
.bp-progress b{width:calc(var(--bp-progress) * 100%);background:var(--bp-coral);height:1px;display:block}
.bp-progress em{font-style:normal}
@media (min-width: 1001px){.blueprint-stage{background:#090909}.bp-section-head{gap:1.5vw;width:20.573vw;font-size:clamp(11px,.846vw,15px);top:3.125vh;left:1.888vw}.bp-section-head i{flex:none;width:10.091vw}.bp-vertical{height:25.116vh;font-size:clamp(9px,.716vw,13px);top:20.139vh;left:1.823vw}.bp-copy{width:27.995vw;top:61.574vh;bottom:auto;left:2.409vw}.bp-copy h2{letter-spacing:-.02em;font-size:clamp(48px,3.516vw,68px);line-height:1.45}.bp-copy h3{margin-top:1.95vh;font-size:clamp(18px,1.302vw,25px);line-height:1.5}.bp-description{opacity:.88;width:14.323vw;margin-top:2.2vh;font-size:clamp(11px,.814vw,15px);line-height:1.65}.bp-closing{display:none}.bp-board{perspective:1200px;width:66.406vw;height:91.435vh;min-height:0;top:4.861vh;left:30.599vw;right:auto}.bp-grid{width:74.02%;height:51.899%;inset:45.316% auto auto 5.392%}.bp-base{width:74.02%;height:46.835%;opacity:calc(.06 + var(--bp-foundation) * .49);transform:translateY(calc((1 - var(--bp-foundation)) * 35px - var(--bp-foundation) * 4px)) rotate(6deg) skewX(-4deg) scale(calc(.97 + var(--bp-foundation) * .03));top:45.316%;left:5.392%}.bp-information{width:64.706%;height:31.646%;opacity:calc(.06 + var(--bp-information) * .94);transform:translateY(calc((1 - var(--bp-information)) * 45px - var(--bp-information) * 10px)) rotate(6deg) skewX(-4deg) scale(calc(.97 + var(--bp-information) * .03));top:46.835%;left:11.275%}.bp-ui{width:54.902%;height:27.848%;opacity:calc(.06 + var(--bp-ui) * .84);transform:translateY(calc((1 - var(--bp-ui)) * 50px - var(--bp-ui) * 12px)) rotate(6deg) skewX(-4deg) scale(calc(.97 + var(--bp-ui) * .03));top:49.367%;left:18.039%}.bp-wireframe{width:45.098%;height:21.519%;opacity:calc(.06 + var(--bp-wire) * .94);transform:translateY(calc((1 - var(--bp-wire)) * 60px - var(--bp-wire) * 16px)) rotate(6deg) skewX(-4deg) scale(calc(.97 + var(--bp-wire) * .03));top:31.519%;left:21.569%}.bp-content{width:49.02%;height:22.785%;opacity:calc(.06 + var(--bp-content) * .94);transform:translateY(calc((1 - var(--bp-content)) * 60px - var(--bp-content) * 23px)) rotate(6deg) skewX(-4deg) scale(calc(.97 + var(--bp-content) * .03));top:42.405%;left:16.667%}.bp-visual{width:58.824%;height:29.114%;opacity:calc(.06 + var(--bp-visual) * .94);transform:translateY(calc((1 - var(--bp-visual)) * 75px - var(--bp-visual) * 32px + var(--bp-parallax-front))) rotate(6deg) skewX(-4deg) scale(calc(.97 + var(--bp-visual) * .03));top:6.835%;left:19.118%}.bp-site-hero .bp-branch{stroke:var(--bp-coral)}.bp-site-hero .bp-cube path:first-child{fill:var(--bp-black)}.bp-site-hero .bp-cube path:nth-child(2){fill:none}.bp-site-hero .bp-cube path:nth-child(3){fill:#1111111f}.bp-note{width:18.2%}.bp-note b{font-size:clamp(13px,.977vw,18px);line-height:1.05}.bp-note p{font-size:clamp(10px,.749vw,14px);line-height:1.5}.bp-note-research{opacity:var(--bp-note-1);transform:translateX(calc((1 - var(--bp-note-1)) * -10px));top:11.392%;left:5.588%}.bp-note-language{opacity:var(--bp-note-2);transform:translateX(calc((1 - var(--bp-note-2)) * -10px));top:25.949%;left:-1.471%}.bp-note-structure{opacity:var(--bp-note-3);transform:translateX(calc((1 - var(--bp-note-3)) * -10px));top:40.253%;left:-4.902%}.bp-note-architecture{opacity:var(--bp-note-4);transform:translateX(calc((1 - var(--bp-note-4)) * -10px));top:52.152%;left:-2.157%}.bp-note-flow{opacity:var(--bp-note-5);transform:translateX(calc((1 - var(--bp-note-5)) * 10px));top:31.392%;left:88.922%;right:auto}.bp-note-visual{opacity:var(--bp-note-6);transform:translateX(calc((1 - var(--bp-note-6)) * 10px));top:51.266%;left:85.49%;right:auto}.bp-note-measure{opacity:var(--bp-note-7);transform:translateX(calc((1 - var(--bp-note-7)) * 10px));top:69.114%;left:82.745%;right:auto}.bp-note-improve{opacity:var(--bp-note-8);transform:translateX(calc((1 - var(--bp-note-8)) * 10px));top:79.747%;left:78.627%;right:auto}.bp-leaders path:first-child{stroke-dashoffset:calc(1 - var(--bp-note-1))}.bp-leaders path:nth-child(2){stroke-dashoffset:calc(1 - var(--bp-note-2))}.bp-leaders path:nth-child(3){stroke-dashoffset:calc(1 - var(--bp-note-3))}.bp-leaders path:nth-child(4){stroke-dashoffset:calc(1 - var(--bp-note-4))}.bp-leaders path:nth-child(5){stroke-dashoffset:calc(1 - var(--bp-note-5))}.bp-leaders path:nth-child(6){stroke-dashoffset:calc(1 - var(--bp-note-6))}.bp-leaders path:nth-child(7){stroke-dashoffset:calc(1 - var(--bp-note-7))}.bp-leaders path:nth-child(8){stroke-dashoffset:calc(1 - var(--bp-note-8))}.bp-ref-a{top:3.544%;left:18.627%}.bp-ref-b{top:64.051%;left:92.941%;right:auto}.bp-ref-c{top:94.684%;bottom:auto;left:31.667%}.bp-kpi{width:35.784%;height:15.823%;opacity:var(--bp-kpi);transform:translateY(calc((1 - var(--bp-kpi)) * 18px)) rotate(6deg) skewX(-4deg);top:76.962%;bottom:auto;left:28.431%}.bp-kpi-funnel{gap:3px}.bp-kpi-funnel i{transform:scaleX(var(--bp-kpi));transform-origin:0}.bp-design-system{width:23%;top:84.937%;left:6.373%}.bp-title-block{width:28.431%;height:9.873%;opacity:var(--bp-kpi);inset:90.38% auto auto 72.745%}.bp-dim-x{transform:scaleX(calc(1 - var(--bp-dimension-offset)));transform-origin:0}.bp-dim-y{transform:scaleY(calc(1 - var(--bp-dimension-offset)));transform-origin:top}.bp-progress{display:none}}
@media (min-width: 1001px) and (max-width: 1440px){.bp-board{transform-origin:0 0;transform:scale(.95)}}
@media (max-width: 1000px){.blueprint-trust{height:240svh;min-height:1600px}.blueprint-stage{min-height:650px}.bp-copy{width:42vw;top:12vh;bottom:auto;left:5vw}.bp-copy h2{font-size:clamp(30px,4.8vw,48px)}.bp-description{display:none}.bp-board{transform-origin:100% 100%;width:108vw;height:76vh;top:19vh;right:-12vw;transform:scale(.83)}.bp-vertical{display:none}.bp-progress{left:5vw}}
@media (max-width: 680px){.blueprint-trust{height:220svh;min-height:1480px}.blueprint-stage{min-height:680px}.bp-section-head{width:64vw;left:5vw}.bp-copy{width:85vw;top:9vh}.bp-copy .bp-phase{display:block}.bp-copy h2{font-size:clamp(30px,9.5vw,48px);line-height:1.32}.bp-copy h3{margin-top:13px;font-size:14px}.bp-board{width:165vw;height:66vh;top:31vh;right:-37vw;transform:scale(.65)}.bp-note p{display:none}.bp-progress{left:5vw;right:5vw}}
@media (prefers-reduced-motion:reduce){.blueprint-trust{--bp-intro:1;--bp-foundation:1;--bp-information:1;--bp-ui:1;--bp-wire:1;--bp-content:1;--bp-visual:1;--bp-notes:1;--bp-kpi:1;--bp-settle:1;--bp-grid-opacity:.28;--bp-axis-offset:0;--bp-leader-offset:0;--bp-chart-offset:0;--bp-dimension-offset:0;--bp-note-1:1;--bp-note-2:1;--bp-note-3:1;--bp-note-4:1;--bp-note-5:1;--bp-note-6:1;--bp-note-7:1;--bp-note-8:1;--bp-progress:1;height:100svh;min-height:720px}}
.reference-about,.process-section,.works-showroom,.blueprint-trust,.reference-price-faq,.reference-contact{border-top:1px solid}
.reference-about-copy h2,.process-copy h2,.works-intro h3,.bp-copy h2,.bp-copy h3,.reference-contact>h2{font-family:var(--font-mincho);font-weight:500}
.reference-section-label,.reference-about-nav,.reference-about-discipline,.reference-about-facts,.process-label,.process-progress,.works-brand,.works-intro h2,.works-filters,.works-intro>small,.bp-section-head,.bp-phase,.reference-price-label,.reference-faq,.reference-contact-label,.reference-contact-bottom{font-family:var(--font-ui)}
.reference-about-brand{z-index:12;left:var(--tone-gutter);color:var(--tone-sumi);letter-spacing:-.055em;font:800 clamp(20px,1.55vw,27px)/1 Arial,sans-serif;position:absolute;top:22px}
.reference-about-brand span{vertical-align:top;font-size:.44em}
.reference-about-nav{z-index:10;left:var(--tone-gutter);letter-spacing:.04em;gap:7px;font-size:7px;font-weight:700;display:grid;position:absolute;top:82px}
.reference-about-nav a{border-bottom:1px solid #0000;width:fit-content}
.reference-about-nav a:hover,.reference-about-nav a:focus-visible{border-color:var(--tone-coral);outline:none}
.reference-about-discipline{z-index:10;right:var(--tone-gutter);text-align:right;letter-spacing:.04em;font-size:7px;font-weight:700;line-height:1.45;position:absolute;top:24px}
.reference-about-copy h2{text-wrap:balance}
.reference-about-facts dt{letter-spacing:.02em}
.reference-about-facts dd{color:#111111ad;letter-spacing:.04em;font-size:clamp(8px,.7vw,11px)}
.process-section{border-top-color:var(--tone-rule);border-bottom:1px solid var(--tone-sumi)}
.process-stage:after{content:"EDIT / SELECT / STRUCTURE / FORM";z-index:42;right:var(--tone-gutter);color:#11111194;letter-spacing:.15em;font:700 7px/1 Arial,sans-serif;position:absolute;top:22px}
.works-showroom{border-top-color:var(--tone-sumi);border-bottom:1px solid var(--tone-sumi)}
.works-brand,.works-intro h2,.works-intro h3,.works-intro>p,.works-intro>small{color:var(--tone-paper)}
.works-intro h2{border-bottom-color:var(--tone-paper)}
.works-intro:after{content:"EVERY COMPANY / AN ORIGINAL VOICE";color:#f7f4eeb8;letter-spacing:.13em;font:700 7px/1 Arial,sans-serif;position:absolute;top:153px;left:0}
.works-intro h3{margin-top:40px}
.works-tile{box-shadow:8px 10px #1111112e}
.works-tile:hover,.works-tile:focus-visible{box-shadow:12px 15px #11111145}
.works-scroll-cue{color:var(--tone-paper)}
.blueprint-trust{border-top-color:var(--tone-paper);border-bottom:1px solid var(--tone-paper)}
.bp-section-head{letter-spacing:.1em}
.bp-copy h2{text-wrap:balance}
.reference-contact{color:var(--tone-sumi);border-top-color:var(--tone-sumi)}
.reference-contact>h2,.reference-contact-label,.reference-contact-brand,.reference-contact-bottom nav a,.reference-contact-bottom address,.reference-contact-bottom>small{color:var(--tone-sumi)}
.reference-contact>.contact-cta{color:var(--tone-paper);background:var(--tone-sumi)}
.reference-contact>.contact-cta:hover,.reference-contact>.contact-cta:focus-visible{color:var(--tone-sumi);background:var(--tone-paper)}
@media (max-width: 900px){.reference-about-brand{top:20px;left:22px}.reference-about .reference-section-label{top:72px}.reference-about-nav,.reference-about-discipline{display:none}.process-stage:after{font-size:5px;top:18px;right:20px}.works-intro:after,.reference-price-faq:before{display:none}}
@media (prefers-reduced-motion:reduce){.works-tile,.works-tile:hover,.works-tile:focus-visible{box-shadow:8px 10px #1111112e}}