/* Shared artwork for the two portfolio design studies. */
.design-preview{--art-blue:#b5d4ff;--art-mid:#839bb7;--art-slate:#53677f;--art-cream:#eee3d4;--art-ink:#172330}
.design-switch{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 32px;background:var(--bg);border-bottom:1px solid var(--line);font-size:11px;color:var(--muted)}
.design-switch>span{letter-spacing:.08em}.design-switch nav{display:flex;gap:20px}.design-switch a{padding:5px 0}.design-switch a[aria-current]{color:var(--blue);border-bottom:1px solid currentColor}
.design-preview .hero{grid-template-columns:1.2fr 1fr;min-height:410px;align-items:center;padding-block:38px 28px;gap:40px}
.design-preview .hero h1{font-size:clamp(44px,5.4vw,78px);max-width:630px;line-height:1.02;margin-block:24px}.design-preview .hero p{max-width:490px;font-size:16px}
.orbit-hero{max-width:490px;width:100%;justify-self:end;color:var(--art-blue)}.orbit-field{position:relative;aspect-ratio:1.5}.orbit-point{position:absolute;padding:0;background:none;border:0;cursor:pointer;color:var(--art-ink);transition:transform .8s cubic-bezier(.22,1,.36,1);animation:orbit-enter 1.4s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--i)*90ms)}
.orbit-point i{display:grid;place-items:center;width:100%;height:100%;background:var(--tone);border-radius:50%;font:500 12px Roboto,Arial;transition:transform .35s,opacity .35s;animation:orbit-drift 7s ease-in-out infinite alternate;animation-delay:calc(var(--i)*-.9s)}
.orbit-point:hover i{transform:scale(1.045)}.orbit-field:hover i{animation-play-state:paused}
.orbit-point:focus-visible{outline:2px solid white;outline-offset:10px;border-radius:50%}.orbit-point:nth-child(1){width:31%;height:46.5%;left:35%;top:7%}.orbit-point:nth-child(2){width:23%;height:34.5%;left:9%;top:27%}.orbit-point:nth-child(3){width:17%;height:25.5%;left:25%;top:65%}.orbit-point:nth-child(4){width:24%;height:36%;left:48%;top:60%}.orbit-point:nth-child(5){width:20%;height:30%;left:70%;top:22%}.orbit-point:nth-child(6){width:9%;height:13.5%;left:77%;top:64%}
.orbit-caption{display:flex;justify-content:space-between;gap:15px;margin-top:20px;border-top:1px solid #303b48;padding-top:16px;font-size:12px}.orbit-caption>span{color:#bac3d0;font-size:10px;letter-spacing:.05em}.orbit-caption a{font-weight:500}.orbit-caption b{margin-left:12px;font-weight:400}
@keyframes orbit-enter{from{opacity:0;transform:translateY(20px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes orbit-drift{from{transform:translateY(-3px)}to{transform:translateY(4px)}}
.design-preview .approach-section{display:grid;grid-template-columns:.85fr 1.4fr;gap:8%;padding-block:72px}.approach-copy h2,.number-copy h2,.construction-intro h2{font:clamp(34px,3.6vw,54px)/1.04 'League Gothic',sans-serif;margin:22px 0}.approach-copy>p,.number-copy>p,.construction-intro>p{font-size:15px;line-height:1.65;color:var(--muted);max-width:390px}
.family-controls{margin-top:34px}.family-controls button{width:100%;display:grid;grid-template-columns:25px 1fr 20px;text-align:left;align-items:center;gap:14px;background:none;border:0;border-top:1px solid var(--line);padding:18px 0;color:var(--muted);font:500 19px Roboto,Arial;cursor:pointer}.family-controls button:last-child{border-bottom:1px solid var(--line)}.family-controls button span{font-size:11px}.family-controls button b{font-weight:400;transition:transform .3s}.family-controls button[aria-pressed=true]{color:var(--blue)}.family-controls button[aria-pressed=true] b{transform:rotate(45deg)}.family-description{min-height:74px;margin-top:22px}
.family-art{display:flex;flex-direction:column;justify-content:center;min-width:0}.family-shapes{position:relative;aspect-ratio:1.3;isolation:isolate}.family-node{position:absolute;left:0;top:0;width:42%;aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:var(--tone);color:var(--art-ink);border-radius:50%;padding:18px;box-sizing:border-box;transition:transform .9s cubic-bezier(.22,1,.36,1),opacity .35s;gap:13px}.family-node span{font-size:11px}.family-node strong{font:500 clamp(16px,1.6vw,24px)/1.2 Roboto,Arial;max-width:180px}.family-node b{font:400 25px Roboto}.family-node:focus-visible{outline:2px solid var(--blue);outline-offset:7px}.family-node[hidden]{display:none!important}.family-satellite{position:absolute;width:16px;height:16px;background:var(--art-cream);border-radius:50%;right:7%;top:13%}.family-satellite:last-child{width:9px;height:9px;left:4%;top:74%;background:var(--blue)}.art-footnote{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between}
.design-preview .feature-slide .regime-visual,.design-preview .feature-slide .feature-graphic{visibility:hidden}.morph-art{position:absolute;left:0;right:0;top:210px;height:150px;pointer-events:none;color:var(--blue)}.morph-art svg{width:100%;height:112px;overflow:visible}.morph-piece{transition:transform 1s cubic-bezier(.22,1,.36,1),opacity .5s;transform-origin:0 0}.morph-labels{display:flex;justify-content:space-between;gap:10px;margin-top:9px;font-size:10px;color:var(--muted)}
.design-preview .statement-section{padding-block:82px 78px;display:grid;grid-template-columns:1fr 1fr;column-gap:8%}.statement-section .eyebrow{grid-column:1/-1;margin-bottom:28px}.statement-section p{font:500 clamp(25px,3.2vw,47px)/1.2 Roboto,Arial;letter-spacing:-.03em;margin:0}.statement-section p span{color:var(--muted)}.word-stage{align-self:end;display:flex;justify-content:space-between;align-items:center;color:var(--blue);font:clamp(40px,5.4vw,76px)/1 'League Gothic',sans-serif;min-height:92px;border-bottom:1px solid var(--line);overflow:hidden}.word-stage i{width:28px;height:28px;background:var(--blue);border-radius:50%;margin-right:7px}
.design-preview .number-section{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:10%;padding-block:80px}.number-art{position:relative;aspect-ratio:1.15;display:grid;place-items:center}.giant-number{font:400 clamp(140px,23vw,310px)/1 'League Gothic',sans-serif;letter-spacing:-.025em;color:var(--blue);z-index:1;pointer-events:none}.catalog-marks{position:absolute;inset:0}.catalog-mark{position:absolute;width:clamp(10px,2.2vw,28px);height:clamp(10px,2.2vw,28px);border-radius:50%;background:var(--tone);opacity:0;transform:translateY(30px) scale(.5);transition:transform .9s cubic-bezier(.22,1,.36,1),opacity .8s;transition-delay:calc(var(--i)*30ms)}.number-section.in-view .catalog-mark{opacity:1;transform:translateY(0) scale(1)}.family-counts{display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;margin:30px 0}.family-counts div{display:flex;gap:10px;align-items:center;font-size:13px}.family-counts i{width:8px;height:8px;background:var(--tone);border-radius:50%}.family-counts b{margin-left:auto;font-variant-numeric:tabular-nums;font-weight:500}.text-link{font-size:13px;color:var(--blue)}
.design-preview .construction-section{padding-block:80px;display:grid;grid-template-columns:.8fr 1.3fr;gap:10%;align-items:start}.construction-intro{position:sticky;top:100px}.construction-intro small{display:block;font-size:11px;color:var(--muted);margin-top:25px}.construction-story{min-width:0}.construction-canvas{position:sticky;top:65px;background:var(--bg);z-index:2;padding-top:15px}.construction-canvas svg{display:block;width:100%;height:auto;max-height:250px}.construction-caption{font-size:11px;color:var(--blue);padding:15px 0;border-bottom:1px solid var(--line)}.construction-steps article{padding:45px 0 60px;min-height:190px;box-sizing:border-box;opacity:.55;transition:opacity .35s}.construction-steps article.is-current{opacity:1}.construction-steps article span{font-size:10px;color:var(--blue)}.construction-steps article h3{font-size:23px;font-weight:500;margin:15px 0}.construction-steps article p{font-size:14px;line-height:1.65;color:var(--muted);max-width:380px}.construction-piece{transition:transform .9s cubic-bezier(.22,1,.36,1),opacity .65s;transform-origin:0 0}
@media(max-width:900px){.design-preview .hero{gap:20px;grid-template-columns:1fr 1fr;min-height:350px}.orbit-caption{flex-direction:column;gap:8px}.design-preview .hero h1{font-size:48px}.design-preview .approach-section{gap:5%;grid-template-columns:1fr 1.1fr}.family-controls button{font-size:16px}.family-node{gap:8px;padding:10px}.family-node strong{font-size:15px}.family-node span{font-size:9px}.family-node b{font-size:18px}.design-preview .construction-section{gap:6%;grid-template-columns:.8fr 1.2fr}}
@media(max-width:640px){.design-switch{padding:10px 20px;align-items:flex-start;font-size:10px}.design-switch nav{gap:12px;flex-wrap:wrap;justify-content:flex-end}.design-switch>span{white-space:nowrap;font-size:9px;padding-top:5px}.design-preview .hero{grid-template-columns:1fr;padding-block:30px}.design-preview .hero h1{font-size:50px}.design-preview .hero p{font-size:14px}.orbit-hero{max-width:370px;justify-self:center}.orbit-caption{flex-direction:row}.design-preview .approach-section,.design-preview .number-section,.design-preview .construction-section{grid-template-columns:1fr;gap:30px;padding-block:46px}.approach-copy h2 br{display:none}.family-description{min-height:0}.family-shapes{max-width:470px;width:100%;align-self:center}.family-node strong{font-size:18px}.design-preview .statement-section{grid-template-columns:1fr;padding-block:46px;gap:24px}.word-stage{min-height:70px;font-size:58px}.number-art{max-width:420px;width:100%;justify-self:center}.giant-number{font-size:220px}.catalog-mark{width:18px;height:18px}.construction-intro{position:static}.construction-canvas{top:58px}.construction-steps article{min-height:230px}.morph-labels{font-size:10px}}
@media(prefers-reduced-motion:reduce){.design-preview *, .design-preview *::before{animation:none!important;transition:none!important}.catalog-mark{opacity:1;transform:none}.construction-steps article{opacity:1}}
/* Motion study: responsive artwork with spring movement and staged reveals. */
.orbit-field{touch-action:pan-y}.orbit-point{transition:none}.orbit-point i{animation:none;transition:scale .45s cubic-bezier(.2,.8,.2,1),outline-color .3s}.orbit-point:hover i{transform:none;scale:1.08}.orbit-point:active i{scale:.94}.orbit-caption a b{display:inline-block;transition:transform .3s}.orbit-caption a:hover b{transform:translate(3px,-3px)}
.orbit-hint{display:flex;justify-content:space-between;gap:15px;font-size:10px;letter-spacing:.02em;color:#bac3d0;margin-top:13px}.orbit-hint i{font-style:normal;color:var(--art-blue)}
.family-node{transition:transform 1.15s cubic-bezier(.16,1,.3,1),opacity .4s;will-change:transform}.family-node strong,.family-node span,.family-node b{transition:transform .4s}.family-node:hover strong{transform:translateY(-3px)}.family-node:hover b{transform:translate(5px,-5px)}.family-controls button{position:relative;overflow:hidden}.family-controls button::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--blue);transform:scaleX(0);transform-origin:left;opacity:.55}.family-controls button[aria-pressed=true]::after{animation:family-progress 7.5s linear forwards}.approach-section:hover .family-controls button::after,.approach-section:focus-within .family-controls button::after{animation-play-state:paused}
@keyframes family-progress{to{transform:scaleX(1)}}
.motion-reveal{opacity:.1;transform:translateY(30px);transition:opacity .85s ease,transform 1s cubic-bezier(.16,1,.3,1)}.motion-reveal.motion-visible{opacity:1;transform:translateY(0)}
.catalog-marks{transition:transform 1.2s cubic-bezier(.16,1,.3,1)}.number-art:hover .catalog-marks{transform:rotate(12deg)}.family-counts button{display:flex;align-items:center;gap:10px;font:inherit;background:transparent;border:0;padding:8px 0;color:var(--text);text-align:left;width:100%;cursor:pointer;border-bottom:1px solid transparent}.family-counts button[aria-pressed=true]{border-bottom-color:var(--blue);color:var(--blue)}.family-counts div{display:block}.catalog-mark{transition:transform .9s cubic-bezier(.22,1,.36,1),opacity .5s;transition-delay:calc(var(--i)*12ms)}.number-section.in-view .catalog-mark.is-muted{opacity:.12}.number-section.in-view .catalog-mark.is-emphasized{transform:scale(1.45)}.number-selection{font-size:12px;color:var(--muted);min-height:18px;margin-top:18px}.word-stage i{transition:transform .8s cubic-bezier(.16,1,.3,1),border-radius .8s}.construction-caption{position:relative}.construction-caption::after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--blue);transform:scaleX(var(--build-progress,.25));transform-origin:left;transition:transform .85s cubic-bezier(.16,1,.3,1)}
@media(prefers-reduced-motion:reduce){.motion-reveal{opacity:1;transform:none}.design-preview .family-controls button::after{animation:none}.catalog-marks{transform:none!important}.family-node{will-change:auto}}
/* Connected scenes and deliberate transition timing. */
.journey-layer{position:fixed;top:0;left:0;width:100%;height:100vh;height:100lvh;z-index:3;pointer-events:none;visibility:hidden;contain:strict}
.strategy-list .strategy-row{grid-template-columns:minmax(0,1fr) auto;gap:12px}.strategy-preview{display:grid;grid-template-columns:25px minmax(0,1fr);gap:14px;align-items:center;text-align:left;background:none;border:0;color:inherit;padding:0;cursor:pointer;min-width:0;font:inherit}.strategy-preview>span{font-size:11px;color:var(--muted)}.strategy-preview h3{transition:color .25s,transform .5s cubic-bezier(.16,1,.3,1)}.strategy-preview:hover h3,.strategy-preview:focus-visible h3{color:var(--blue);transform:translateX(4px)}.strategy-preview:focus-visible{outline:1px solid var(--blue);outline-offset:8px}.strategy-open{font-size:11px;color:var(--blue);display:flex;align-items:center;gap:10px;padding:10px 0 10px 5px}.strategy-open b{font-size:21px;font-weight:400;display:block;transition:transform .4s}.strategy-open:hover b{transform:translate(3px,-3px)}.strategy-open span{opacity:.65}.strategy-row.is-featured .strategy-preview>span{color:var(--blue)}.strategy-row.is-featured .strategy-open span{opacity:1}.morph-piece,.construction-piece{transition:none}.morph-labels span{display:inline-block}.family-node{transition:transform 1.2s cubic-bezier(.22,1.12,.36,1),opacity .4s}
.design-b .hero{min-height:620px;grid-template-columns:.9fr 1.2fr;padding-block:34px 24px;gap:0}.design-b .hero h1{font-size:clamp(65px,7.6vw,112px);line-height:.97;margin:24px 0}.design-b .hero>div:first-child{position:relative;z-index:1}.design-b .orbit-hero{max-width:720px;width:100%;padding-top:10px}.design-b .orbit-field{overflow:clip;aspect-ratio:1.5}.design-b .orbit-point:nth-child(1){width:46%;height:69%;left:22%;top:-9%}.design-b .orbit-point:nth-child(2){width:26%;height:39%;left:0%;top:41%}.design-b .orbit-point:nth-child(3){width:15%;height:22.5%;left:33%;top:72%}.design-b .orbit-point:nth-child(4){width:31%;height:46.5%;left:57%;top:61%}.design-b .orbit-point:nth-child(5){width:30%;height:45%;left:80%;top:6%}.design-b .orbit-point:nth-child(6){width:11%;height:16.5%;left:70%;top:36%}.design-b .orbit-caption,.design-b .orbit-hint{margin-inline:20px}.design-b .orbit-caption{margin-top:25px}.design-b .family-shapes{aspect-ratio:1.4}
.design-b .perspective-section{position:relative;isolation:isolate;min-height:640px;width:100vw;margin-inline:calc(50% - 50vw);padding:92px max(32px,calc((100vw - 1480px)/2));box-sizing:border-box;overflow:clip;display:grid;grid-template-columns:1fr 1fr;align-items:center;background:var(--panel)}.perspective-orb{position:absolute;width:min(66vw,950px);aspect-ratio:1;left:-15vw;top:11%;border-radius:50%;background:var(--art-cream);color:var(--art-ink);display:flex;flex-direction:column;align-items:flex-end;justify-content:center;padding:8%;box-sizing:border-box;gap:25px;transform-origin:center}.perspective-orb>span{font:clamp(65px,9vw,130px)/1 'League Gothic',sans-serif}.perspective-orb small{font-size:10px;letter-spacing:.04em}.perspective-copy{grid-column:2;position:relative;z-index:1;padding-left:9%;max-width:560px}.perspective-copy h2{font:clamp(50px,6.5vw,94px)/.98 'League Gothic',sans-serif;margin:28px 0}.perspective-copy p{font-size:15px;line-height:1.65;max-width:320px;color:var(--muted);margin-bottom:25px}.perspective-dot{position:absolute;display:block;border-radius:50%;background:var(--art-blue)}.dot-one{width:84px;height:84px;left:43%;top:15%}.dot-two{width:26px;height:26px;right:4%;bottom:10%;background:var(--art-mid)}
@media(max-width:900px){.design-b .hero{min-height:490px}.design-b .hero h1{font-size:68px}.strategy-open span{display:none}.strategy-list .strategy-row{gap:6px}.perspective-orb small{max-width:110px;line-height:1.5}.design-b .perspective-section{min-height:530px}.perspective-copy h2{font-size:58px}.perspective-copy .eyebrow{font-size:9px}.perspective-copy p{font-size:13px}}
@media(max-width:640px){.design-b .hero{grid-template-columns:1fr;padding-block:28px;gap:20px}.design-b .hero h1{font-size:76px}.design-b .orbit-hero{max-width:520px}.design-b .hero p{max-width:350px}.design-b .perspective-section{min-height:760px;display:flex;align-items:flex-start;padding:44px 24px}.perspective-copy{padding:0 0 0 22%;max-width:100%}.perspective-copy h2{font-size:58px}.perspective-copy p{max-width:240px}.perspective-orb{width:105vw;left:-32vw;top:61%;padding:18%;justify-content:flex-start;align-items:center;gap:15px}.perspective-orb>span{font-size:74px}.perspective-orb small{max-width:none;font-size:9px}.dot-one{width:46px;height:46px;left:8%;top:7%}.dot-two{right:8%;bottom:14%}.design-b .family-node strong{font-size:16px}.design-b .family-node span{font-size:8px}}
@media(prefers-reduced-motion:reduce){.journey-layer{display:none!important}.journey-active .family-node,.journey-active .family-satellite{opacity:1!important;pointer-events:auto}.design-preview .morph-piece,.design-preview .construction-piece{transition:none!important}}

/* B: one explorer, with the supporting artwork folded into the useful sections. */
.design-condensed .approach-section{display:block;padding-block:48px}
.design-condensed .section-heading h2{font-size:34px}
.design-condensed .explorer-controls{display:grid;grid-template-columns:1.12fr 1fr;gap:48px;align-items:center;margin-bottom:26px}
.design-condensed .family-controls{display:flex;margin:0;gap:24px}
.design-condensed .family-controls button{width:auto;flex:1;grid-template-columns:18px 1fr 14px;gap:8px;font-size:15px;padding:14px 0;border-top:0;border-bottom:1px solid var(--line)}
.design-condensed .family-description{min-height:44px;margin:0;font-size:13px;line-height:1.6;color:var(--muted);max-width:460px}
.design-condensed .collection-grid{grid-template-columns:1.12fr 1fr;gap:48px;align-items:stretch;min-height:640px}
.design-condensed .family-art{justify-content:center;padding:30px 0}
.design-condensed .family-node strong{font-size:clamp(18px,1.7vw,25px)}
.design-condensed .family-node span{font-size:10px}
.design-condensed .explorer-workspace{min-width:0;display:grid;grid-template-rows:min-content min-content;align-content:start;min-height:640px;gap:18px}
.design-condensed .strategy-list .strategy-row{padding:14px 12px;min-height:72px;box-sizing:border-box}
.design-condensed .strategy-preview h3{font-size:17px;margin-bottom:5px}
.design-condensed .strategy-preview p{font-size:12px}
.design-condensed .lead-strategy{padding:20px 24px}
.design-condensed .feature-slide{grid-template-rows:14px 65px 42px 110px 46px}
.design-condensed .feature-slide h3{font-size:29px;line-height:1.02;margin:8px 0}
.design-condensed .feature-slide p{font-size:13px;line-height:1.5}
.design-condensed .feature-slide .lead-footer{padding-top:14px;font-size:11px;gap:8px;align-items:start;flex-direction:row}
.design-condensed .feature-slide .lead-footer>span{max-width:56%;line-height:1.5}
.design-condensed .morph-art{top:128px;height:100px}
.design-condensed .morph-art svg{height:77px}
.design-condensed .morph-labels{font-size:10px;margin-top:7px}
.design-condensed .feature-controls{margin-top:12px;padding-top:0;min-height:24px}
.design-condensed .performance-status{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:-4px 0 26px;font-size:11px;color:var(--muted)}
.design-condensed #feed-state{color:var(--blue);display:flex;align-items:center;gap:7px}
.design-condensed #feed-state::before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}
.design-condensed #retry{background:none;border:0;padding:0;color:var(--blue);font:inherit;text-decoration:underline;cursor:pointer}
.design-condensed #comparison,.design-condensed #directory,.design-condensed .methodology-section{padding-block:46px}
.design-condensed .number-section{display:grid;grid-template-columns:180px 1fr;gap:42px;padding:0 0 32px;align-items:center}
.design-condensed .number-art{width:180px;aspect-ratio:1;justify-self:start}
.design-condensed .giant-number{font-size:114px}
.design-condensed .catalog-mark{width:9px;height:9px}
.design-condensed .number-copy h2{font-size:34px;margin:8px 0 12px}
.design-condensed .number-copy>p{max-width:none;margin:0;font-size:13px}
.design-condensed .family-counts{display:flex;flex-wrap:wrap;gap:14px 28px;margin:20px 0 12px}
.design-condensed .family-counts>div{display:flex;gap:8px;font-size:12px}
.design-condensed .family-counts b{margin-left:4px}
.design-condensed #result-count{font-size:11px;color:var(--muted)}
.design-condensed .methodology-grid{display:grid;grid-template-columns:.8fr 1.25fr;gap:8%;align-items:start}
.design-condensed .construction-canvas{position:static;padding:0;background:none;max-width:440px;width:100%}
.design-condensed .construction-canvas svg{max-height:205px}
.design-condensed .construction-caption{padding-block:10px}
.design-condensed .construction-canvas small{display:block;margin-top:12px;font-size:10px;color:var(--muted)}
.design-condensed .methodology-notes details{border-bottom:1px solid var(--line)}
.design-condensed .methodology-notes summary{display:flex;align-items:center;gap:18px;padding:18px 0;list-style:none;cursor:pointer;font-size:17px;font-weight:500}
.design-condensed .methodology-notes summary::-webkit-details-marker{display:none}
.design-condensed .methodology-notes summary>span{font-size:11px;color:var(--blue);font-weight:400}
.design-condensed .methodology-notes summary>b{font-size:20px;color:var(--blue);font-weight:400;margin-left:auto;transition:transform .3s}
.design-condensed .methodology-notes details[open] summary>b{transform:rotate(45deg)}
.design-condensed .method-detail{padding:0 0 20px 32px}
.design-condensed .method-detail p{font-size:13px;line-height:1.65;color:var(--muted);max-width:500px;margin:14px 0 0}
.design-condensed .method-step-description{min-height:44px}
.design-condensed .method-step-controls{display:flex;gap:8px;flex-wrap:wrap}
.design-condensed .method-step-controls button{border:1px solid var(--line);background:transparent;color:var(--muted);font:500 12px Roboto,Arial;padding:8px 13px;border-radius:3px;cursor:pointer}
.design-condensed .method-step-controls button[aria-pressed=true]{background:var(--blue-soft);color:var(--blue);border-color:var(--blue)}
@media(max-width:1000px){.design-condensed .collection-grid,.design-condensed .explorer-controls{grid-template-columns:1fr 1.1fr;gap:28px}.design-condensed .family-controls{gap:14px}.design-condensed .family-controls button{grid-template-columns:1fr auto;font-size:14px;gap:6px}.design-condensed .family-controls button>span{display:none}.design-condensed .feature-slide .lead-footer{flex-direction:column;gap:5px}.design-condensed .feature-slide .lead-footer>span{max-width:none}.design-condensed .feature-slide{grid-template-rows:14px 65px 48px 110px 62px}.design-condensed .morph-art{top:135px}.design-condensed .family-node strong{font-size:20px}.design-condensed .family-node span{font-size:9px}}
@media(max-width:700px){.design-condensed .approach-section{padding-block:34px}.design-condensed .explorer-controls{grid-template-columns:1fr;gap:16px;margin-bottom:8px}.design-condensed .family-controls button{grid-template-columns:16px 1fr 12px;font-size:13px}.design-condensed .family-controls button>span{display:block;font-size:10px}.design-condensed .family-description{max-width:none;min-height:42px;font-size:12px}.design-condensed .collection-grid{grid-template-columns:1fr;gap:24px}.design-condensed .family-art{padding:6px 0 0;max-width:450px;width:100%;justify-self:center}.design-condensed .family-shapes{aspect-ratio:1.6}.design-condensed .art-footnote{padding-top:10px}.design-condensed .explorer-workspace{gap:12px}.design-condensed .lead-strategy{padding:20px}.design-condensed .section-heading h2,.design-condensed .number-copy h2{font-size:30px}.design-condensed .number-section{grid-template-columns:105px 1fr;gap:18px;padding-bottom:28px}.design-condensed .number-art{width:105px}.design-condensed .giant-number{font-size:67px}.design-condensed .catalog-mark{width:6px;height:6px}.design-condensed .number-copy .eyebrow{font-size:9px}.design-condensed .number-copy>p{font-size:12px;line-height:1.5}.design-condensed .family-counts{gap:8px 16px;margin:15px 0 10px}.design-condensed .family-counts>div{font-size:11px;gap:5px}.design-condensed .family-counts i{width:6px;height:6px}.design-condensed .methodology-grid{grid-template-columns:1fr;gap:20px}.design-condensed .construction-canvas{max-width:400px;justify-self:center}.design-condensed .construction-canvas svg{max-height:150px}.design-condensed .methodology-notes summary{font-size:16px}.design-condensed .method-detail{padding-left:29px}.design-condensed .method-step-controls{gap:6px}.design-condensed .method-step-controls button{padding:8px 10px}.design-condensed .method-step-description{min-height:64px}}
.design-condensed .feature-controls{height:24px}
.design-condensed .feature-controls[hidden]{display:flex!important;visibility:hidden}
@media(max-width:700px){.design-condensed .collection-grid{min-height:0}}

/* Each scene fades as one unit; bubble text never has a separate opacity timeline. */
.portfolio-motion .family-shapes{opacity:0}
.journey-active .family-node{transition:none}
.portfolio-arrow{display:inline-block;width:1em;height:1em;flex:none;vertical-align:-.14em;overflow:visible}
@media(prefers-reduced-motion:reduce){.portfolio-motion .orbit-field,.portfolio-motion .family-shapes{opacity:1!important}}

/* Give the official portfolio hero more presence beside the introduction. */
@media(min-width:1100px){
  .portfolio-home .orbit-hero{max-width:560px;margin-inline-end:36px}
}
