@charset "UTF-8";
:root{--ink:#10141c;--paper:#ecf1f7;--blue:#88b6ff;--muted:#aeb9ca;--pad:clamp(22px,4.5vw,88px);font-family:Arial,Helvetica,sans-serif;color:var(--paper);background:var(--ink);font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit;cursor:pointer}a,button{touch-action:manipulation}button,a,input,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--blue);outline-offset:6px}p,h1,h2,h3,figure{margin:0}h1,h2,h3{font-weight:400}button{border:0;background:none}::selection{background:var(--blue);color:var(--ink)}[hidden]{display:none!important}.sr-only,.source-image{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:16px;left:20px;padding:16px;background:var(--blue);color:var(--ink);z-index:100;transform:translateY(-200%)}.skip:focus{transform:none}.header{position:absolute;top:0;left:0;right:0;z-index:20;height:102px;padding:0 var(--pad);display:flex;align-items:center;gap:25px}.brand{font-size:36px;font-weight:700;letter-spacing:-.1em;display:flex;align-items:center;gap:16px}.brand span{font-weight:400;font-size:30px;color:var(--blue);letter-spacing:0}.header-note{font:9px/1.7 ui-monospace,monospace;letter-spacing:.08em;color:#b7c1cf}.header nav{margin-left:auto;display:flex;gap:34px;align-items:center;font-size:13px}.contact-link{background:#dfeaf7;color:#182333;border-radius:30px;padding:13px 20px;display:flex;gap:35px}.contact-link:hover{background:var(--blue)}.hero-story{position:relative}.hero-pin{min-height:800px;height:100svh;position:relative;background:var(--ink);transform-origin:50% 100%;overflow:hidden}.hero-stage{height:calc(100% - 155px);min-height:600px;position:relative;overflow:hidden;isolation:isolate;touch-action:pan-y;outline-offset:-8px!important;--lens-x:32%;--lens-y:55%;--lens-radius:170px}.portrait-composition{position:absolute;inset:0;background:radial-gradient(ellipse at 72% 55%,#223145,#10141c 70%)}.composition-type{position:absolute;top:23%;left:4.5%;font-size:clamp(80px,14vw,240px);font-weight:700;line-height:.88;letter-spacing:-.085em}.composition-type span{display:block}.composition-type span:last-child{color:#92b9f4;font-size:1.45em}.fallback-portrait{position:absolute;inset:11% 0 0 42%;background:url('/assets/johannes-portrait-960.webp') center 31%/cover no-repeat;filter:grayscale(1);-webkit-mask-image:linear-gradient(90deg,transparent,#000 23%,#000 75%,transparent),linear-gradient(0deg,transparent,#000 30%,#000 87%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent,#000 23%,#000 75%,transparent),linear-gradient(0deg,transparent,#000 30%,#000 87%,transparent);mask-composite:intersect}.composition-coordinates{position:absolute;right:4.5%;bottom:7%;font:10px ui-monospace,monospace;color:#aac2df;letter-spacing:.13em}.reveal-composition{position:absolute;inset:0;background:#bcd6f3;visibility:hidden;clip-path:circle(var(--lens-radius) at var(--lens-x) var(--lens-y));color:#12357a}.reveal-grid{position:absolute;inset:0;background-image:linear-gradient(#17478319 1px,transparent 1px),linear-gradient(90deg,#17478319 1px,transparent 1px);background-size:60px 60px}.reveal-type{position:absolute;top:22%;left:5%;font-size:clamp(80px,15vw,240px);line-height:.84;letter-spacing:-.08em;font-weight:bold}.reveal-photo{position:absolute;inset:10% 0 0 40%;background:url('/assets/johannes-speaking-864.webp') center 21%/cover no-repeat;filter:grayscale(1);-webkit-mask-image:linear-gradient(90deg,transparent,#000 22%,#000 80%,transparent);mask-image:linear-gradient(90deg,transparent,#000 22%,#000 80%,transparent)}#lens-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:0}.canvas-ready #lens-canvas{opacity:1}.lens-rim{display:none;position:absolute;left:var(--lens-x);top:var(--lens-y);width:calc(var(--lens-radius)*2);height:calc(var(--lens-radius)*2);transform:translate(-50%,-50%);pointer-events:none;border:1px solid #d9ebffb0;border-radius:50%;box-shadow:inset 1px 2px 9px #e5f3ff80,4px 13px 35px #0006,inset -7px -10px 20px #1a274347}.lens-rim span{position:absolute;bottom:-24px;left:50%;color:#a4c9fa;font-size:14px}.lens-fallback .reveal-composition{visibility:visible}.lens-fallback .lens-rim{display:block}.hero-caption{position:absolute;bottom:24px;left:var(--pad);font:9px ui-monospace,monospace;letter-spacing:.08em;display:flex;align-items:center;gap:10px;color:#b2c3d8;pointer-events:none}.status-dot{display:inline-block;width:5px;height:5px;background:#8bbaff;border-radius:50%}.hero-footer{height:155px;margin:0 var(--pad);border-top:1px solid #36404e;display:flex;align-items:center;justify-content:space-between;gap:28px;position:relative;z-index:3}.hero-intro{min-width:0}.hero-intro .disciplines{font-size:15px;letter-spacing:-.015em;color:#e5edf8;margin-bottom:11px}.hero-intro>p:last-child{font-size:13px;line-height:1.55;color:#abb9cc}.lens-controls{align-self:center}.lens-controls p{font:9px/1.5 ui-monospace,monospace;color:#a9bed9;letter-spacing:.015em;margin-bottom:12px}.touch-hint{display:none}.control-row{display:flex;gap:11px;align-items:center}.control-row input{width:115px;min-width:65px;accent-color:var(--blue);cursor:ew-resize;height:24px}.control-row button{font:10px ui-monospace,monospace;border:1px solid #475a72;padding:8px 11px;border-radius:22px;min-height:34px;color:#c5d4e8}.control-row #expand-lens{font:19px Arial;line-height:1;width:34px;padding:0}.control-row button:hover,.control-row button[aria-pressed=true]{background:#abcdf8;color:#142036}.scroll-link{display:flex;gap:25px;align-items:center;font:9px/1.7 ui-monospace,monospace;letter-spacing:.07em;flex-shrink:0}.scroll-arrow{border:1px solid #7691b9;border-radius:50%;width:54px;height:54px;display:flex;align-items:center;justify-content:center;font-size:25px;color:var(--blue);transition:background .25s,transform .25s}.scroll-link:hover .scroll-arrow{background:#abcdf8;color:#142036;transform:translateY(3px)}.experience-enhanced .hero-story{height:155svh;min-height:1130px}.experience-enhanced .hero-pin{position:sticky;top:0;transform:scale(calc(1 - var(--hero-progress,0)*.09));border-radius:calc(var(--hero-progress,0)*40px)}
.projects{background:var(--paper);color:#15243b;position:relative;z-index:5;border-radius:28px 28px 0 0;padding:50px 0 65px;margin-top:-24px;overflow:hidden}.section-top{margin-inline:var(--pad);display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid #a6b6ca;padding-bottom:23px;font:9px/1.5 ui-monospace,monospace;letter-spacing:.07em;color:#4e6580}.projects-heading{padding:44px var(--pad) 42px;display:flex;justify-content:space-between;gap:30px;align-items:flex-end}.projects-heading h2{font-size:clamp(36px,5.4vw,88px);line-height:1.02;letter-spacing:-.065em}.projects-heading h2 em{font-style:normal;color:#4a71a9}.projects-heading p{font-size:13px;line-height:1.55;color:#566983;margin-bottom:3px;max-width:240px}.gallery-shell{--card-width:min(62vw,780px)}.gallery{display:flex;gap:35px;padding:35px calc((100% - var(--card-width))/2) 50px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:calc((100% - var(--card-width))/2);scrollbar-width:none;touch-action:pan-x pan-y;cursor:grab;perspective:1700px;overscroll-behavior-x:contain;outline-offset:-8px!important}.gallery::-webkit-scrollbar{display:none}.gallery.is-dragging{cursor:grabbing;scroll-snap-type:none}.project-card{flex:0 0 var(--card-width);height:600px;min-width:0;border-radius:6px;position:relative;isolation:isolate;overflow:hidden;scroll-snap-align:center;transform:rotateY(calc(var(--card-offset,0)*-14deg)) scale(calc(1 - var(--card-distance,0)*.055));transform-origin:center;transition:box-shadow .2s;user-select:none;-webkit-user-drag:none;color:#f1f6ff;background:#1b4e93;box-shadow:0 26px 26px -24px #10264180}.project-card:focus-visible{outline-color:#125cae;outline-offset:5px}.project-card:hover{box-shadow:0 28px 36px -24px #102641c0}.project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,#fff1,transparent 35%,#0003);pointer-events:none}.card-topline{position:absolute;inset:28px 28px auto;display:flex;justify-content:space-between;align-items:center;font:10px ui-monospace,monospace;letter-spacing:.07em;z-index:5}.card-topline>span:last-child{font:23px Arial}.card-copy{position:absolute;bottom:30px;left:30px;right:30px;z-index:5}.card-copy>span:first-child{font:9px ui-monospace,monospace;letter-spacing:.07em;color:#c3d8f1}.card-copy h3{font-size:clamp(33px,3.8vw,57px);line-height:1.04;letter-spacing:-.06em;margin-top:12px}.card-open{position:absolute;right:0;bottom:2px;display:flex;gap:20px;align-items:center;font-size:12px;padding-bottom:7px;border-bottom:1px solid #90aed4}.card-open i{font-style:normal;font-size:20px}.site-sculpture{position:absolute;top:16%;left:18%;width:64%;height:48%;perspective:1000px;transform:rotate(-8deg) translateX(calc(var(--card-offset,0)*12px));transform-style:preserve-3d}.sculpture-sheet{position:absolute;inset:0;border:1px solid #a8ceffb0;box-shadow:0 20px 55px #06102a55;background:#163b6b}.sheet-back{transform:translate(-35px,-22px) rotateY(-14deg) rotateX(15deg);opacity:.5}.sheet-mid{transform:translate(-16px,-10px) rotateY(-14deg) rotateX(15deg);opacity:.8;background:#2f5c99}.sheet-front{background:linear-gradient(140deg,#d8eaff,#a0c3ee);color:#17345d;transform:rotateY(-14deg) rotateX(15deg)}.sheet-toolbar{display:flex;gap:5px;align-items:center;padding:14px;border-bottom:1px solid #7f9fc7}.sheet-toolbar i{width:4px;height:4px;border-radius:50%;background:#426a9c}.sheet-toolbar span{margin-left:auto;font:7px ui-monospace,monospace}.sheet-word{font-size:clamp(25px,3.5vw,52px);line-height:1;letter-spacing:-.065em;padding:20px 22px}.sheet-rule{height:1px;background:#7f9fc7;margin:0 22px 14px}.sheet-blocks{display:flex;gap:8px;margin:0 22px}.sheet-blocks i{height:35px;flex:1;background:linear-gradient(120deg,#709cd4,#aac9ee)}.sculpture-caption{position:absolute;bottom:-31px;left:0;font:7px ui-monospace,monospace;letter-spacing:.12em;color:#c0d8f6}.card-people{background:#15243a}.card-people>img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;filter:grayscale(1);pointer-events:none;transform:scale(1.03)}.card-people:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,#0e213d 0%,#102b4840 60%,#061c3990)}.people-number{position:absolute;right:6%;top:20%;font-size:clamp(95px,14vw,210px);line-height:1;letter-spacing:-.09em;font-weight:700;color:#d1e3fb8c;z-index:2}.people-number>span{font-weight:400;color:#87baff}.card-projects{background:#11223b}.planning-sculpture{position:absolute;top:4%;left:10%;right:10%;height:65%;perspective:700px;transform-style:preserve-3d;transform:rotateZ(-15deg)}.orbit{border:1px solid #a1c7ff80;position:absolute;inset:12% 8%;border-radius:50%;transform:rotateX(58deg) rotateY(15deg);box-shadow:inset 0 0 0 8px #6ca3f217,0 0 0 1px #0b37666b}.orbit-2{inset:18% 14%;transform:rotateX(38deg) rotateY(-48deg);border-width:18px;border-color:#6497e147;box-shadow:inset 0 0 0 1px #a2caff9e,0 0 0 1px #b4c9ff60}.orbit-3{inset:26% 22%;transform:rotateX(55deg) rotateY(54deg);border-color:#abcfff;border-width:7px}.orbit-core{position:absolute;width:64px;height:64px;top:calc(50% - 32px);left:calc(50% - 32px);border-radius:50%;background:radial-gradient(circle at 30% 26%,#e8f2ff,#699edf 35%,#102948 72%);box-shadow:0 0 80px #5e9ffa50}.orbit-label{position:absolute;font:9px ui-monospace,monospace;color:#aecbf1;transform:rotate(15deg);letter-spacing:.1em}.label-1{left:10%;top:24%}.label-2{right:7%;top:43%}.label-3{left:30%;bottom:10%}.gallery-controls{margin:0 var(--pad);display:flex;gap:18px;align-items:center;color:#3b5678;font:10px ui-monospace,monospace}.gallery-hint{margin-right:15px;letter-spacing:.07em}.gallery-progress{height:2px;flex:1;background:#b3c3d7;max-width:300px;margin-right:auto;overflow:hidden}.gallery-progress>span{display:block;background:#305b97;height:2px;width:33.333%;transform:translateX(calc(var(--gallery-progress,0)*200%));transition:transform .15s}.gallery-controls button{width:48px;height:48px;border:1px solid #839bb9;border-radius:50%;font:21px Arial;color:#21456f;display:flex;align-items:center;justify-content:center}.gallery-controls button:hover{background:#1b3d6d;color:#fff}.gallery-controls button:disabled{opacity:.3;cursor:default}.gallery-controls #previous-project{margin-left:12px}.case-disclosures{margin:65px var(--pad) 0;max-width:1120px}.case-disclosures details{border-top:1px solid #a5b7cf;padding:23px 0}.case-disclosures details:last-child{border-bottom:1px solid #a5b7cf}.case-disclosures summary{cursor:pointer;position:relative;padding-right:50px;font-size:20px;letter-spacing:-.03em;list-style:none;line-height:1.25}.case-disclosures summary::-webkit-details-marker{display:none}.case-disclosures summary br{display:none}.case-disclosures summary span{position:absolute;right:5px;top:0;font:25px Arial;color:#597eb2}.case-disclosures details[open] summary>span{transform:rotate(45deg)}.case-content{max-width:760px;padding:30px 0 5px;color:#354e6d;font-size:16px;line-height:1.65}.case-content>p{margin-bottom:18px}.case-content .role-label,.case-content .case-scope{font:10px/1.7 ui-monospace,monospace}.case-content dl{margin:20px 0}.case-content dt{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#4a6382;margin:20px 0 8px}.case-content dd{margin:0}.case-content .case-stat{display:flex;gap:25px;align-items:center;margin:20px 0}.case-content .case-stat strong{font-size:75px;line-height:1;letter-spacing:-.06em;font-weight:400}.case-content .case-stat p{font-size:14px;line-height:1.4}.prototype-footer{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:32px var(--pad);font:10px ui-monospace,monospace;letter-spacing:.04em;color:#b9cae0}.prototype-footer>a:first-child{font-weight:700}.prototype-footer>span{color:#8092ac}
@media(min-width:1700px){.hero-stage{min-height:710px}.hero-pin{min-height:900px}.project-card{height:660px}}
@media(max-width:1000px){.header{height:88px}.hero-pin{min-height:760px}.hero-stage{min-height:575px;height:calc(100% - 185px)}.hero-footer{height:185px;gap:20px}.hero-intro .disciplines{font-size:13px}.hero-intro>p:last-child{font-size:12px}.scroll-link>span:first-child{display:none}.scroll-arrow{width:44px;height:44px}.control-row{gap:8px}.lens-controls p{font-size:8px}.control-row input{width:90px}.gallery-shell{--card-width:73vw}.project-card{height:560px}.card-open{position:static;display:inline-flex;margin-top:20px}.card-copy h3{font-size:42px}.site-sculpture{height:42%}.gallery-hint{font-size:8px}.projects-heading p{font-size:12px}}
@media(max-width:700px){:root{--pad:22px}.header{height:77px;gap:15px}.brand{font-size:28px;gap:10px}.brand span{font-size:23px}.header-note{font-size:7px;line-height:1.6;letter-spacing:.035em}.header nav{gap:18px;font-size:11px}.contact-link{padding:10px 13px;gap:15px}.hero-pin{height:auto;min-height:0;overflow:hidden}.hero-stage{height:620px;height:max(530px,76svh);min-height:0}.experience-enhanced .hero-story{height:auto;min-height:0}.experience-enhanced .hero-pin{position:relative;transform:none;border-radius:0}.hero-caption{bottom:20px;font-size:8px}.hero-footer{height:auto;min-height:0;padding:23px 0 34px;display:grid;grid-template-columns:1fr 50px;gap:24px 15px}.hero-intro{grid-column:1/-1}.hero-intro .disciplines{font-size:14px;margin-bottom:10px}.hero-intro>p:last-child{font-size:13px}.lens-controls{grid-column:1}.lens-controls p{font-size:8px;margin-bottom:10px}.control-row{gap:10px}.control-row input{width:105px;min-width:70px}.control-row button{min-height:40px;padding:8px 12px}.control-row #expand-lens{width:40px;min-width:40px}.scroll-link{grid-column:2;grid-row:2;align-self:end;padding-bottom:0}.scroll-arrow{height:44px;width:44px}.desktop-hint{display:none}.touch-hint{display:inline}.composition-type{top:22%;font-size:18vw}.composition-type span:last-child{font-size:2.05em}.fallback-portrait{inset:30% -20% 0 15%}.composition-coordinates{font-size:8px}.reveal-type{top:20%;font-size:26vw}.reveal-photo{inset:28% -15% 0 5%}.projects{padding-top:30px;margin-top:0;border-radius:22px 22px 0 0;padding-bottom:40px}.section-top{font-size:8px;padding-bottom:20px}.projects-heading{display:block;padding-top:30px;padding-bottom:15px}.projects-heading h2{font-size:38px}.projects-heading p{margin-top:20px;font-size:12px}.projects-heading p br{display:none}.gallery-shell{--card-width:82vw}.gallery{gap:17px;padding-top:30px;padding-bottom:33px;perspective:1000px}.project-card{height:480px;border-radius:5px}.card-topline{inset:20px 20px auto;font-size:8px}.card-topline>span:last-child{font-size:20px}.card-copy{left:22px;right:22px;bottom:25px}.card-copy h3{font-size:38px}.card-copy>span:first-child{font-size:8px}.card-open{font-size:11px;margin-top:18px;gap:30px}.site-sculpture{top:20%;left:14%;width:70%;height:36%}.sheet-word{font-size:30px;padding:14px 15px}.sheet-toolbar{padding:10px}.sheet-toolbar span{font-size:5px}.sheet-blocks{margin:0 15px;gap:5px}.sheet-blocks i{height:25px}.sheet-rule{margin:0 15px 10px}.sheet-back{transform:translate(-19px,-18px) rotateY(-14deg) rotateX(15deg)}.sheet-mid{transform:translate(-9px,-8px) rotateY(-14deg) rotateX(15deg)}.sculpture-caption{font-size:6px;bottom:-25px}.people-number{top:24%;font-size:125px}.planning-sculpture{top:5%;height:54%;left:6%;right:6%}.orbit-core{width:44px;height:44px;left:calc(50% - 22px);top:calc(50% - 22px)}.orbit-label{font-size:7px}.gallery-controls{gap:12px;flex-wrap:wrap}.gallery-hint{flex-basis:100%;font-size:7px;letter-spacing:.08em;margin:0 0 1px}.gallery-progress{max-width:none}.gallery-controls button{width:42px;height:42px}.gallery-controls #previous-project{margin-left:0}.gallery-controls #gallery-count{font-size:9px}.case-disclosures{margin-top:40px}.case-disclosures summary{font-size:17px;line-height:1.4;padding-right:30px}.case-disclosures summary br{display:block}.case-disclosures summary span{right:0}.case-content{font-size:15px;padding-top:25px}.prototype-footer{flex-wrap:wrap;font-size:9px;padding-block:25px;gap:20px}.prototype-footer>span{order:3;flex-basis:100%;font-size:8px}}
@media(max-width:370px){:root{--pad:18px}.header-note{display:none}.header nav{gap:19px}.hero-stage{height:max(490px,72svh)}.hero-footer{grid-template-columns:1fr;gap:22px}.hero-intro>p:last-child{font-size:12px}.lens-controls{grid-column:1}.scroll-link{position:absolute;right:0;top:22px}.hero-intro{padding-right:0}.scroll-link .scroll-arrow{width:32px;height:32px;font-size:19px}.hero-intro .disciplines{font-size:12px;padding-right:35px}.projects-heading h2{font-size:33px}.project-card{height:445px}.card-copy h3{font-size:33px}.sheet-word{font-size:26px}.sculpture-caption{font-size:5px}.section-top{font-size:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.experience-enhanced .hero-story{height:auto;min-height:0}.experience-enhanced .hero-pin{position:relative;transform:none;border-radius:0}.project-card{transform:none!important}}
.motion-off{scroll-behavior:auto}.motion-off .hero-story{height:auto;min-height:0}.motion-off .hero-pin{position:relative;transform:none;border-radius:0}.motion-off .project-card{transform:none}.motion-off *, .motion-off *:before,.motion-off *:after{transition:none!important;animation:none!important}
@media print{.header,.hero-stage,.lens-controls,.scroll-link,.gallery-controls{display:none!important}.hero-story,.hero-pin{height:auto!important;min-height:0!important;position:static!important;transform:none!important}.hero-footer{display:block;height:auto}.gallery{display:block;overflow:visible;padding:0}.project-card{display:block;height:400px;width:100%;break-inside:avoid;transform:none!important;margin:20px 0}.case-disclosures details{display:block}.prototype-footer{display:none}}

/* Separate the glass-like sheets along the depth axis. */
.sheet-back{transform:translate(-35px,-22px) rotateY(-14deg) rotateX(15deg) translateZ(-45px)}.sheet-mid{transform:translate(-16px,-10px) rotateY(-14deg) rotateX(15deg) translateZ(-20px)}.sheet-front{transform:rotateY(-14deg) rotateX(15deg) translateZ(15px)}
@media(max-width:700px){.sheet-back{transform:translate(-19px,-18px) rotateY(-14deg) rotateX(15deg) translateZ(-35px)}.sheet-mid{transform:translate(-9px,-8px) rotateY(-14deg) rotateX(15deg) translateZ(-15px)}}

.lens-invite{display:none;position:absolute;left:var(--lens-x);top:calc(var(--lens-y) + var(--lens-radius) + 17px);transform:translateX(-50%);font:9px ui-monospace,monospace;letter-spacing:.08em;color:#d7e8ff;align-items:center;gap:12px;pointer-events:none}.experience-enhanced .lens-invite{display:flex}.has-played .lens-invite{display:none}.lens-invite span{font:16px Arial}.people-number small{display:block;font:8px/1.6 ui-monospace,monospace;color:#d6e7ff;letter-spacing:.05em;margin:12px 0 0 13px}.people-number{top:16%}
@media(max-width:700px){.lens-invite{font-size:7px;top:calc(var(--lens-y) + var(--lens-radius) + 12px);gap:7px}.people-number{top:20%}.people-number small{font-size:6px;margin-left:7px}}
/* Study 02: a stable professional proposition, evidence-led transition and AI practice. */
.hero-pin{--hero-footer-height:292px;min-height:850px}.hero-stage{height:calc(100% - var(--hero-footer-height));min-height:500px}.hero-positioning{position:absolute;left:var(--pad);bottom:121px;width:44%;z-index:4;pointer-events:none}.positioning-label{font:9px/1.6 ui-monospace,monospace;color:#a6bedc;letter-spacing:.07em;margin-bottom:18px}.hero-positioning h1{font-size:clamp(35px,3.7vw,62px);line-height:1.04;letter-spacing:-.05em}.hero-positioning h1 em{font-style:normal;color:var(--blue)}.hero-footer{height:var(--hero-footer-height);display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 62px;gap:0 6%;padding-top:22px}.hero-intro{grid-column:2;align-self:center}.hero-intro>p:first-child{font-size:17px;line-height:1.55;max-width:520px;color:#d3dfed;margin:0 0 19px}.hero-actions{display:flex;align-items:center;gap:21px;flex-wrap:wrap}.primary-action{display:inline-flex;align-items:center;gap:25px;padding:14px 19px;border-radius:28px;background:#a7cbff;color:#142338;font-size:13px;line-height:1.2;white-space:nowrap}.primary-action span{font-size:19px;line-height:1}.primary-action:hover{background:#d1e3ff}.quiet-action{display:inline-flex;gap:15px;align-items:center;padding:12px 0;border-bottom:1px solid #607b9e;font-size:12px;white-space:nowrap}.quiet-action:hover{color:#a7cbff}.hero-ai-link{display:inline-flex;gap:9px;align-items:center;color:#aecdf7;font-size:12px;margin-top:20px;text-underline-offset:4px}.hero-ai-link:hover{text-decoration:underline}.ai-spark{font-size:18px;line-height:1}.hero-proof{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #344459;font-size:11px;color:#92a8c3;align-self:stretch}.hero-proof strong{font-weight:400;color:#c2d1e6}.hero-proof>a{display:inline-flex;align-items:center;gap:18px;color:#c4d7ef;white-space:nowrap;padding:14px 0}.hero-stage .lens-controls{position:absolute;right:var(--pad);bottom:22px;z-index:6}.hero-stage .lens-controls p{font-size:8px;color:#bfd2eb}.hero-stage .control-row button{background:#101b2cbb;backdrop-filter:blur(10px)}.hero-stage .control-row button:hover,.hero-stage .control-row button[aria-pressed=true]{background:#abcdf8;color:#142036}.hero-stage .control-row{gap:10px}.hero-stage .control-row input{width:95px}
.contribution{position:relative;z-index:5;margin-top:-24px;padding:65px var(--pad) 35px;background:var(--paper);color:#15243b;border-radius:28px 28px 0 0}.section-kicker{font:9px/1.6 ui-monospace,monospace;letter-spacing:.08em;color:#577195;margin-bottom:24px}.contribution-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:0 9%;align-items:end;margin-bottom:48px}.contribution-heading>.section-kicker{grid-column:1/-1}.contribution-heading h2{font-size:clamp(36px,4.8vw,74px);line-height:1.055;letter-spacing:-.06em}.contribution-heading h2 em{font-style:normal;color:#4a71a9}.contribution-intro{font-size:16px;line-height:1.65;max-width:370px;color:#4a617e;margin-bottom:4px}.contribution-list{list-style:none;margin:0;padding:0}.contribution-list li{display:grid;grid-template-columns:44px .95fr 1fr;align-items:start;gap:26px;padding:29px 0;border-top:1px solid #a6b9d1}.contribution-number{font:12px/1.5 ui-monospace,monospace;color:#5978a4;padding-top:4px}.contribution-role>p{font:9px/1.5 ui-monospace,monospace;letter-spacing:.07em;color:#476c9b;margin-bottom:15px}.contribution-role h3{font-size:clamp(22px,2.1vw,32px);letter-spacing:-.04em;line-height:1.18}.contribution-detail>p{font-size:16px;line-height:1.65;max-width:480px;color:#405976;margin-bottom:15px}.contribution-detail>a{font-size:11px;line-height:1.6;color:#20558f;text-underline-offset:4px;display:inline-flex;gap:13px;align-items:center;padding-bottom:3px;border-bottom:1px solid #91abc9}.contribution-detail>a:hover{color:#0d2d53;border-color:#0d2d53}.contribution-detail>a>span{font-size:17px}.projects{margin-top:0;border-radius:0;padding-top:22px}.projects-heading h2{font-size:clamp(36px,4.8vw,72px)}.projects-heading p{font-size:14px;line-height:1.65}.card-copy h3{font-size:clamp(30px,3.4vw,52px)}.card-open{position:static;display:inline-flex;margin-top:20px}.card-copy>span:first-child{font-size:10px}.card-topline{font-size:9px}.section-top{font-size:10px}
.ai-section{padding:90px var(--pad) 70px;background:radial-gradient(ellipse at 90% 20%,#22497c55,transparent 60%),#111c2c}.ai-heading{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end;margin-bottom:44px}.ai-heading .section-kicker{color:#91afd8}.ai-heading h2{font-size:clamp(40px,5.1vw,79px);letter-spacing:-.055em;line-height:1.035}.ai-heading h2 em{color:#a3c9ff;font-style:normal}.ai-heading>p{font-size:17px;line-height:1.65;color:#bdcce1;max-width:430px;margin-bottom:4px}.ai-workbench{border:1px solid #446083;border-radius:4px;background:linear-gradient(145deg,#1a2b43,#132239);overflow:hidden}.ai-choices{display:flex;border-bottom:1px solid #446083}.ai-choices button{flex:1;display:flex;align-items:center;gap:16px;padding:23px 25px;font:10px ui-monospace,monospace;letter-spacing:.015em;text-align:left;color:#98afd0;border-right:1px solid #365071;border-top:2px solid transparent}.ai-choices button:last-child{border-right:0}.ai-choices button>span{font:14px Arial;letter-spacing:0;flex:1;color:#c3d5ed}.ai-choices button[aria-pressed=true]{background:#244770;border-top-color:#a3c9ff;color:#c7dfff}.ai-choices button[aria-pressed=true]>span{color:#f0f5ff}.ai-choices button:hover{background:#223c5f}.ai-panel{padding:38px;display:grid;grid-template-columns:.9fr 1.1fr;gap:22px 7%}.ai-panel+.ai-panel{border-top:1px solid #446083}.ai-example-label{font:9px/1.65 ui-monospace,monospace;letter-spacing:.045em;color:#9dc0ef;grid-column:1;align-self:end}.ai-panel h3{font-size:clamp(26px,2.5vw,39px);letter-spacing:-.04em;line-height:1.15;grid-column:1;align-self:start}.ai-panel dl{margin:0;grid-column:2;grid-row:1/span 2}.ai-panel dl>div+div{border-top:1px solid #3e5575;margin-top:22px;padding-top:22px}.ai-panel dt{font:10px/1.5 ui-monospace,monospace;color:#a1badd;text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}.ai-panel dd{margin:0;font-size:15px;line-height:1.7;color:#bdcfe5}.ai-panel .human-part dt{color:#b6d5ff}.ai-panel .human-part dd{color:#f0f5fc}.ai-output{grid-column:1/-1;margin-top:5px;border-top:1px solid #557297;padding-top:22px;font-size:16px;color:#d9e9ff;line-height:1.55}.ai-output>span{display:block;font:8px ui-monospace,monospace;letter-spacing:.08em;color:#98b9e6;margin-bottom:9px}.ai-enhanced .ai-panel{min-height:345px;border-top:0}.ai-practice{display:grid;grid-template-columns:40px 1fr .7fr;gap:27px;margin-top:33px;align-items:start}.ai-practice-icon{font-size:38px;color:#9dc8ff;line-height:1}.ai-practice .section-kicker{font-size:8px;color:#95b6e2;margin-bottom:10px}.ai-practice>div>p:not(.section-kicker){font-size:15px;line-height:1.55;color:#d7e5f6;max-width:510px}.ai-practice a{display:inline-flex;gap:20px;padding:12px 0 3px;font-size:12px;color:#a3c9ff;border-bottom:1px solid #648bbd}.ai-practice .ai-principle{font-size:12px;line-height:1.65;color:#94aac7;max-width:330px}.next-conversation{padding:65px var(--pad);background:#1b3d6a;display:grid;grid-template-columns:1fr auto;gap:0 40px;align-items:center}.next-conversation .section-kicker{grid-column:1/-1;color:#b4cbed}.next-conversation h2{font-size:clamp(34px,4.6vw,68px);line-height:1.08;letter-spacing:-.05em}.next-conversation .primary-action{padding:18px 25px;font-size:15px}.next-conversation>p:last-child{grid-column:2;font-size:12px;margin-top:18px;color:#c2d6f0}
@media(min-width:1700px){.hero-pin{--hero-footer-height:310px;min-height:910px}.hero-stage{min-height:560px}.hero-positioning{bottom:125px}.hero-intro>p:first-child{font-size:20px}.hero-ai-link{font-size:14px}.hero-proof{font-size:13px}}
@media(max-width:1050px){.hero-pin{--hero-footer-height:305px}.hero-positioning{bottom:126px;width:42%}.hero-positioning h1{font-size:36px}.positioning-label{font-size:8px;letter-spacing:.03em}.hero-intro>p:first-child{font-size:15px}.hero-actions{gap:10px 17px}.hero-ai-link{font-size:11px}.primary-action{font-size:12px;padding:13px 16px;gap:18px}.quiet-action{font-size:11px;gap:10px}.hero-footer{gap:0 5%}.hero-proof{font-size:10px}.contribution-list li{grid-template-columns:26px .9fr 1fr;gap:20px}.contribution-detail>p{font-size:15px}.contribution-role h3{font-size:24px}.ai-choices button{padding:19px 17px;gap:11px}.ai-choices button>span{font-size:12px}.ai-panel{padding:30px}.ai-practice{grid-template-columns:35px 1fr .75fr;gap:22px}}
@media(max-width:700px){.header-note{display:none}.header nav{gap:22px}.hero-pin{height:auto;min-height:0}.hero-positioning{position:relative;left:auto;bottom:auto;width:auto;padding:106px var(--pad) 20px;pointer-events:auto}.positioning-label{font-size:8px;margin-bottom:13px;letter-spacing:.055em}.hero-positioning h1{font-size:clamp(31px,9.4vw,56px);line-height:1.06}.hero-stage{height:405px;height:max(360px,46svh);min-height:0}.hero-stage .lens-controls{right:var(--pad);bottom:13px}.hero-stage .lens-controls p{font-size:7px;margin-bottom:8px}.hero-stage .control-row{gap:9px}.hero-stage .control-row input{width:88px}.hero-stage .control-row button{min-height:40px}.hero-caption{bottom:82px;font-size:7px}.hero-footer{height:auto;display:block;padding:24px 0 0;margin:0 var(--pad);border-top:1px solid #33475f}.hero-intro{padding:0}.hero-intro>p:first-child{font-size:16px;line-height:1.6;margin-bottom:18px;max-width:none}.hero-actions{gap:15px;flex-wrap:wrap}.primary-action{font-size:12px;padding:14px 17px;gap:22px}.quiet-action{font-size:12px;gap:13px}.hero-ai-link{font-size:11px;margin-top:20px;gap:7px}.hero-proof{display:block;margin-top:23px;padding:17px 0 24px;font-size:11px;line-height:1.65}.hero-proof>p{max-width:300px}.hero-proof>a{font-size:11px;padding:12px 0 0;gap:13px}.contribution{margin-top:0;padding:42px var(--pad) 25px;border-radius:22px 22px 0 0}.section-kicker{font-size:8px;margin-bottom:19px}.contribution-heading{display:block;margin-bottom:30px}.contribution-heading h2{font-size:36px;line-height:1.08}.contribution-intro{font-size:15px;line-height:1.6;margin-top:22px;max-width:460px}.contribution-list li{grid-template-columns:25px 1fr;gap:13px;padding:25px 0}.contribution-role{grid-column:2}.contribution-role>p{font-size:8px;margin-bottom:11px}.contribution-role h3{font-size:24px;line-height:1.2}.contribution-detail{grid-column:2}.contribution-detail>p{font-size:15px;margin:4px 0 14px;line-height:1.65}.contribution-detail>a{font-size:10px;gap:8px;line-height:1.7}.contribution-number{font-size:11px;padding-top:0}.projects{padding-top:20px}.section-top{font-size:8px}.projects-heading h2{font-size:36px}.projects-heading p{font-size:13px}.card-copy h3{font-size:31px;line-height:1.07}.card-topline{font-size:7px;gap:20px}.card-copy>span:first-child{font-size:8px}.card-open{font-size:11px;margin-top:17px}.ai-section{padding:55px var(--pad) 42px}.ai-heading{display:block;margin-bottom:28px}.ai-heading h2{font-size:42px}.ai-heading>p{font-size:15px;line-height:1.65;margin-top:23px}.ai-choices{display:block}.ai-choices button{width:100%;padding:15px 18px;border-right:0;border-top:0;border-left:2px solid transparent;border-bottom:1px solid #365071;gap:16px;font-size:9px;min-height:50px}.ai-choices button:last-child{border-bottom:0}.ai-choices button[aria-pressed=true]{border-left-color:#a3c9ff}.ai-choices button>span{font-size:13px}.ai-panel{display:block;padding:27px 22px}.ai-enhanced .ai-panel{min-height:0}.ai-example-label{font-size:8px;margin-bottom:16px}.ai-panel h3{font-size:29px;line-height:1.15;margin-bottom:25px}.ai-panel dl{margin:0}.ai-panel dd{font-size:14px;line-height:1.7}.ai-panel dt{font-size:9px}.ai-panel dl>div+div{margin-top:20px;padding-top:20px}.ai-output{font-size:14px;margin-top:25px;padding-top:22px}.ai-output>span{font-size:7px}.ai-practice{grid-template-columns:27px 1fr;gap:17px;margin-top:28px}.ai-practice-icon{font-size:28px}.ai-practice>div>p:not(.section-kicker){font-size:14px}.ai-practice .ai-principle{grid-column:2;max-width:none;font-size:12px}.ai-practice a{font-size:11px}.next-conversation{display:block;padding:46px var(--pad)}.next-conversation h2{font-size:36px}.next-conversation .primary-action{padding:16px 22px;font-size:14px;margin-top:27px}.next-conversation>p:last-child{margin-top:17px;font-size:12px}}
@media(max-width:370px){.header nav{gap:15px}.header .contact-link{padding:10px 12px;gap:13px}.hero-positioning{padding-top:101px}.hero-positioning h1{font-size:31px}.positioning-label{font-size:7px}.hero-stage{height:350px}.hero-intro>p:first-child{font-size:15px}.hero-actions{gap:15px}.hero-ai-link{font-size:10px}.contribution-heading h2,.projects-heading h2{font-size:31px}.contribution-list li{grid-template-columns:20px 1fr;gap:10px}.contribution-role h3{font-size:22px}.contribution-detail>p{font-size:14px}.contribution-detail>a{font-size:9px}.card-copy h3{font-size:28px}.card-topline{font-size:6px}.ai-heading h2{font-size:37px}.ai-panel{padding:24px 18px}.ai-panel h3{font-size:27px}.next-conversation h2{font-size:32px}}
@media print{.hero-positioning{position:static;width:auto;padding:20px 0;color:#111}.hero-footer{display:block;height:auto}.hero-intro{max-width:none}.hero-proof{display:block}.contribution,.ai-section,.next-conversation{background:#fff;color:#111;padding:25px 0}.ai-choices{display:none!important}.ai-panel[hidden]{display:block!important}.ai-heading,.ai-practice,.contribution-heading{display:block}.ai-panel{display:block;break-inside:avoid}.ai-panel h3{margin:15px 0}.ai-panel dd,.ai-output,.ai-heading>p{color:#222}.ai-workbench{border:1px solid #888;background:#fff}}
/* Full site: the approved experience with working method, person and contact. */
.ai-choices button{min-width:0;flex:1 1 0;padding-inline:20px;gap:12px}.ai-choices button>span{min-width:0;line-height:1.35}
.thinking{padding:90px var(--pad);background:#10141c}.thinking .section-heading{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:10%;margin-bottom:45px}.thinking h2,.about h2{font-size:clamp(37px,4.8vw,70px);line-height:1.07;letter-spacing:-.055em}.thinking .section-heading>p{font-size:16px;line-height:1.65;color:#afc1d9;margin-bottom:5px}.thinking .section-kicker,.about .section-kicker{color:#8fafd9}.thinking-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0 60px}.thinking-steps li{display:grid;grid-template-columns:34px 1fr;gap:13px;padding:30px 0;border-top:1px solid #385271}.step-number{font:12px/1.6 ui-monospace,monospace;color:#99c0f6}.thinking-steps h3{font-size:24px;letter-spacing:-.035em;line-height:1.25;margin-bottom:16px}.thinking-steps p{font-size:15px;line-height:1.7;color:#b9c8dc;max-width:470px}.step-outcome{grid-column:2;font:10px/1.5 ui-monospace,monospace;color:#95bbef;margin-top:5px}.about{padding:70px var(--pad) 90px;display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid #283b54;background:radial-gradient(ellipse at 0 100%,#1d3f6630,transparent 65%),#10141c}.about h2 em{font-style:normal;color:#88b6ff}.about-signature{display:block;font-size:70px;letter-spacing:-.08em;color:#7c9cc533;margin-top:40px}.about-copy{padding-top:37px}.about-copy p{font-size:15px;line-height:1.75;color:#b7c7dc;margin-bottom:20px;max-width:550px}.about-copy .about-lead{font-size:21px;line-height:1.5;color:#e4edfa}.about-copy .quiet-action{font-size:13px}.contact-details{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #52729a;margin-top:35px;padding-top:23px;font-size:13px;color:#cfddf0}.contact-details a{text-underline-offset:5px}.contact-details a:hover{text-decoration:underline}.site-footer{padding:32px var(--pad);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;font:10px/1.6 ui-monospace,monospace;color:#bbcee7}.site-footer>a{font-weight:700}.site-footer nav{display:flex;gap:25px}.site-footer a:hover{color:#fff}.site-footer>span{color:#95abc9}
/* Embedded legal copy is only used in the downloadable review HTML. */
.preview-legal{padding:30px var(--pad);background:#10141c;color:#d5e1f0;font-size:15px;line-height:1.7}.preview-legal summary{cursor:pointer;padding:10px 0;font-size:20px}.preview-legal h2{font-size:22px;margin:28px 0 12px}.preview-legal p{max-width:900px;margin:12px 0}.preview-legal a{text-decoration:underline;text-underline-offset:4px}
@media(min-width:701px) and (max-width:1000px){.ai-choices{display:grid;grid-template-columns:1fr 1fr}.ai-choices button{border-bottom:1px solid #365071}.thinking-steps{gap:0 30px}}
@media(max-width:700px){.ai-choices button{padding:15px 18px;gap:16px}.thinking{padding:52px var(--pad) 30px}.thinking .section-heading{display:block;margin-bottom:30px}.thinking h2,.about h2{font-size:36px}.thinking .section-heading>p{font-size:15px;margin-top:23px}.thinking-steps{display:block}.thinking-steps li{grid-template-columns:26px 1fr;gap:12px;padding:25px 0}.thinking-steps h3{font-size:23px}.thinking-steps p{font-size:15px}.about{display:block;padding:48px var(--pad)}.about-signature{display:none}.about-copy{padding-top:27px}.about-copy .about-lead{font-size:20px}.contact-details{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-top:30px;font-size:12px}.site-footer{display:grid;grid-template-columns:1fr auto;gap:25px 15px;padding-block:28px;font-size:10px}.site-footer nav{grid-column:1/-1;flex-wrap:wrap;gap:25px}.site-footer>span{grid-column:2;grid-row:1}.preview-legal{font-size:14px}}
@media(max-width:370px){.thinking h2,.about h2{font-size:31px}.thinking-steps h3{font-size:21px}}
@media print{.thinking,.about{background:#fff;color:#111;padding:25px 0;display:block}.thinking-steps{display:block}.thinking-steps p,.thinking .section-heading>p,.about-copy p{color:#222}.site-footer{color:#111}.contact-details{color:#222}}
