:root{--blue:#052275;--blue-dark:#052275;--blue-fg:#052275;--red:#c8161d;--ink:#171927;--band:#171927;--header-bg:rgba(255,255,255,.92);--muted:#626778;--paper:#f6f7fa;--white:#fff;--line:#dfe2ea;--bg:#ffffff;--surface:#ffffff;--sans:"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;--serif:"Yu Mincho","Hiragino Mincho ProN",serif}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--bg);font-family:var(--sans);font-size:16px;line-height:1.85}a{color:inherit;text-decoration:none}button{font:inherit}.shell{width:min(1180px,calc(100% - 48px));margin:auto}.eyebrow{font-size:.75rem;letter-spacing:.18em;font-weight:700;text-transform:uppercase;color:var(--blue)}.kicker{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.08em}.kicker:before{content:"";width:28px;height:3px;background:var(--red);flex:0 0 auto}.definition .kicker{color:rgba(255,255,255,.72)}
    header{position:fixed;inset:0 0 auto;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);border-bottom:1px solid transparent;transition:.2s}header.scrolled{border-color:var(--line)}.nav{height:78px;display:flex;align-items:center;justify-content:space-between}.logo img{display:block;width:230px;height:auto}.links{display:flex;align-items:center;gap:28px;font-size:.75rem;font-weight:700;letter-spacing:.07em}.contact-link{background:var(--blue);color:white;padding:12px 19px}.menu{display:none;border:0;background:none;font-size:1.5rem;color:var(--blue)}
    .hero{min-height:94svh;padding:148px 0 82px;display:flex;align-items:center;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr;gap:48px;position:relative;z-index:1}.hero-copy{position:relative;z-index:1}.hero-mark{position:absolute;z-index:-1;right:-6vw;top:50%;width:min(51vw,700px);transform:translateY(-48%) rotate(-4deg);margin:0;pointer-events:none;opacity:.09;mix-blend-mode:multiply}.hero-mark img{display:block;width:100%;height:auto}.hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(3.4rem,6.3vw,5rem);line-height:1.2;letter-spacing:-.055em;margin:24px 0 34px;text-wrap:pretty;word-break:auto-phrase;line-break:strict}.hero h1 span{color:var(--blue)}.lead{font-size:clamp(1.05rem,1.45vw,1.25rem);max-width:760px;line-height:2}.hero-side{border-top:4px solid var(--red);padding-top:25px;width:min(520px,100%);margin-left:auto}.hero-side strong{display:block;font-size:1.25rem;line-height:1.65;margin-bottom:12px}.hero-side p{margin:0;color:var(--muted)}
    section{padding:112px 0}.section-head{display:grid;grid-template-columns:220px 1fr;gap:50px;margin-bottom:65px}.section-head h2{font-family:var(--serif);font-weight:600;font-size:clamp(2.4rem,4vw,3.9rem);line-height:1.32;letter-spacing:-.045em;margin:0;text-wrap:pretty;word-break:auto-phrase;line-break:strict}.section-head p{max-width:650px;margin:17px 0 0;color:var(--muted)}
    .definition{background:var(--blue-dark);color:white;position:relative;overflow:hidden}.definition:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 58%,rgba(255,255,255,.05) 58%)}.definition .eyebrow{color:rgba(255,255,255,.68)}.definition-copy{font-family:var(--serif);font-size:clamp(2.15rem,4vw,3.9rem);line-height:1.48;letter-spacing:-.04em;max-width:1050px;margin:0;position:relative;text-wrap:pretty;word-break:auto-phrase;line-break:strict}.definition-copy em{font-style:normal;color:#fff}.definition-note{max-width:760px;color:rgba(255,255,255,.75);margin:36px 0 0;font-size:1.05rem;position:relative}
    .strengths{background:var(--paper)}.strength-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.strength{background:var(--surface);border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:38px;min-height:300px}.strength-no{color:var(--red);font-size:.74rem;letter-spacing:.15em;font-weight:700}.strength h3{font-family:var(--serif);font-size:1.85rem;line-height:1.45;margin:52px 0 16px}.strength p{margin:0;color:var(--muted)}
    .case-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:start}.formula{position:sticky;top:115px;background:var(--blue);color:white;padding:42px}.formula-label{font-size:.73rem;letter-spacing:.14em}.formula strong{display:block;font-family:var(--serif);font-size:clamp(2rem,4vw,3.7rem);line-height:1.4;margin:42px 0}.formula span{display:block;border-top:1px solid rgba(255,255,255,.35);padding-top:18px;color:#d8ddff}.case-copy h2{font-family:var(--serif);font-size:clamp(2.4rem,4.5vw,4.1rem);line-height:1.35;letter-spacing:-.04em;margin:18px 0 34px}.case-copy p{font-size:1.04rem}.options{margin-top:38px;border-top:1px solid var(--line)}.option{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:21px 0;border-bottom:1px solid var(--line)}.option b{color:var(--blue)}.option p{margin:0;color:var(--muted)}
    .domains{background:var(--band);color:white}.domains .section-head p{color:#b8bdcb}.domains .eyebrow{color:rgba(255,255,255,.68)}.domain-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.domain{border:1px solid rgba(255,255,255,.18);padding:27px;min-height:210px}.domain h3{font-size:1.05rem;margin:0 0 25px}.domain ul{list-style:none;padding:0;margin:0;color:#b8bdcb;font-size:.88rem}.domain li{padding:3px 0}.domain li:before{content:"—";margin-right:8px;color:var(--red)}
    .approach-section{background:var(--paper)}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.approach{padding:35px 28px;border-top:4px solid var(--blue);background:var(--surface);min-height:300px}.approach:nth-child(2){border-color:var(--red)}.approach h3{font-family:var(--serif);font-size:1.8rem;margin:58px 0 14px}.approach p{color:var(--muted);margin:0}.step{font-size:.72rem;letter-spacing:.16em;color:var(--blue)}
    .projects{background:var(--bg)}.project-hub{display:grid;grid-template-columns:.72fr 1.28fr;background:var(--paper);overflow:hidden;position:relative;isolation:isolate}.project-hub:after{content:"";position:absolute;right:-70px;bottom:-110px;width:360px;aspect-ratio:1;background:url('../images/decisionmake-symbol.png') center/contain no-repeat;opacity:.045;z-index:-1;transform:rotate(-5deg)}.project-mark{background:var(--blue);color:#fff;padding:54px 44px;display:flex;flex-direction:column;justify-content:space-between;min-height:360px}.project-mark span{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;opacity:.72}.project-mark strong{font-size:clamp(3.2rem,5vw,5.2rem);line-height:.98;letter-spacing:-.08em;transition:letter-spacing .35s ease,transform .35s ease}.project-copy{padding:54px 58px}.project-copy h2{font-family:var(--serif);font-size:clamp(2.1rem,3.5vw,3.4rem);line-height:1.38;letter-spacing:-.04em;margin:12px 0 20px;text-wrap:pretty;word-break:auto-phrase}.project-copy p{color:var(--muted);max-width:680px;margin:0}.project-more{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:24px 32px;border-top:1px solid var(--line);background:#fff;color:var(--blue);font-weight:700}.project-more small{color:var(--muted);font-weight:400}.project-arrow{font-size:2rem;transition:transform .25s ease}.project-hub:hover .project-mark strong{letter-spacing:-.045em;transform:translateX(4px)}.project-hub:hover .project-arrow{transform:translateX(7px)}
    .origin{background:var(--paper)}.origin-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:7vw}.origin-title h2{font-family:var(--serif);font-size:clamp(2.5rem,4vw,3.8rem);line-height:1.34;letter-spacing:-.045em;margin:18px 0;text-wrap:pretty;word-break:auto-phrase;line-break:strict}.origin-copy{border-top:4px solid var(--red);padding-top:30px}.origin-copy p:first-child{font-size:1.15rem;color:var(--ink)}.origin-copy p{color:var(--muted)}.origin-quote{font-family:var(--serif);font-size:1.55rem!important;color:var(--blue)!important;margin-top:35px!important}
    .company-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:9vw}.company-intro .eyebrow{margin-bottom:28px}.company-intro img{width:100%;max-width:430px;height:auto}.company-intro p{margin-top:32px;color:var(--muted)}.company-list{border-top:1px solid var(--line)}.company-list dl{display:grid;grid-template-columns:140px 1fr;margin:0;padding:17px 0;border-bottom:1px solid var(--line);font-size:.9rem}.company-list dt{color:var(--muted)}.company-list dd{margin:0}
    .cta{background:var(--blue);color:white;text-align:center;position:relative;overflow:hidden}.cta h2{font-family:var(--serif);font-size:clamp(2.5rem,4.6vw,4.4rem);line-height:1.35;letter-spacing:-.045em;margin:16px auto 22px;max-width:1050px;text-wrap:pretty;word-break:auto-phrase;line-break:strict}.cta p{color:rgba(255,255,255,.78)}.cta-btn{display:inline-flex;align-items:center;gap:45px;background:white;color:var(--blue);font-weight:700;padding:17px 22px;margin-top:24px}.cta-btn span{font-size:1.25rem}
    footer{padding:38px 0;background:var(--bg)}.footer-grid{display:flex;justify-content:space-between;align-items:center}.footer-logo{width:230px}.footer-small{text-align:right;color:var(--muted);font-size:.72rem}.footer-small a{text-decoration:underline;text-underline-offset:4px}
    [data-reveal]{opacity:0;transform:translateY(22px);transition:.7s ease}[data-reveal].show{opacity:1;transform:none}
    @media(max-width:820px){.shell{width:min(100% - 28px,1180px)}.nav{height:68px}.logo img{width:190px}.links{position:fixed;inset:68px 0 auto;background:var(--bg);padding:25px 20px;display:none;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.links.open{display:flex}.menu{display:block}.hero{min-height:auto;padding:112px 0 68px}.hero-grid,.section-head,.case-grid,.origin-grid,.company-grid{grid-template-columns:1fr}.hero-mark{position:relative;z-index:0;right:auto;top:auto;width:calc(100% + 28px);margin:8px -14px 12px;transform:rotate(-4deg);opacity:1;mix-blend-mode:multiply;overflow:hidden}.hero-mark img{width:112%;max-width:none;margin-left:-12%;clip-path:inset(4% 0 5% 0)}.hero h1{font-size:clamp(2.15rem,9.8vw,2.8rem);line-height:1.42;margin-bottom:16px}.hero h1 br,.section-head h2 br,.definition-copy br,.origin-title h2 br,.cta h2 br,.project-copy h2 br{display:none}.hero .lead{font-size:1rem;line-height:1.9}.hero-side{margin-top:0}section{padding:72px 0}main>section:not(.hero){border-top:12px solid #e9ebf1}.definition,.domains,.cta{border-top-color:var(--red)!important}.section-head{gap:18px;margin-bottom:42px;padding-left:18px;border-left:4px solid var(--blue)}.section-head.editorial-head{padding-left:0;border-left:0}.domains .section-head{border-left-color:var(--red)}.section-head h2,.definition-copy,.origin-title h2,.cta h2,.case-copy h2,.project-copy h2{font-size:clamp(2rem,8.8vw,2.65rem);line-height:1.48;text-wrap:pretty;word-break:auto-phrase}.strength-grid,.domain-list,.approach-grid{grid-template-columns:1fr}.strength{min-height:auto;padding:30px 26px}.strength h3{margin-top:32px}.case-section{padding-top:0}.formula{position:static;margin:0 -14px;padding:38px 28px}.case-copy{padding-top:52px}.domain{min-height:auto}.approach{min-height:auto}.project-hub{grid-template-columns:1fr}.project-mark{min-height:190px;padding:30px 26px}.project-mark strong{font-size:3.5rem}.project-copy{padding:36px 26px}.project-more{grid-column:auto;align-items:flex-end;padding:22px 26px}.project-more small{display:none}.origin-title{padding-left:18px;border-left:4px solid var(--blue)}.company-section{background:#fff}.company-intro img{max-width:320px}.footer-grid{display:block}.footer-logo{width:220px}.footer-small{text-align:left;margin-top:24px}.company-list dl{grid-template-columns:105px 1fr}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}[data-reveal]{opacity:1;transform:none}}
    @media(max-width:820px){.hero-mark{width:100%;margin:12px 0 18px;transform:rotate(-3deg);overflow:visible}.hero-mark img{display:block;width:92%;max-width:100%;margin:0 auto;clip-path:none}}
    .hero-information{width:min(760px,100%);margin-left:0;padding-top:18px}.information-label{color:var(--blue);font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px}.hero-information ul{list-style:none;margin:0;padding:0}.hero-information li{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:12px 0;border-top:1px solid var(--line);font-size:.92rem}.hero-information time{color:var(--muted);font-size:.8rem;letter-spacing:.04em}.project-mark strong{font-size:clamp(2.7rem,4.3vw,4.6rem)}
    .hero-information{border-top:0}
    @media(max-width:820px){.hero-information li{grid-template-columns:1fr;gap:2px}.project-mark strong{font-size:2.8rem}}
