.portfolio-page{--pf-bg:#09111c;--pf-panel:#101d2d;--pf-line:#344355;--pf-text:#f7f5f0;--pf-muted:#bac5d1;--accent-text:#ff9a57;--muted:var(--pf-muted);background:var(--pf-bg);color:var(--pf-text);color-scheme:dark;padding-bottom:1px}.portfolio-page :is(h1,h2,h3,p){overflow-wrap:break-word}.portfolio-page :is(a,button):focus-visible{outline:3px solid #ff9a57;outline-offset:5px}.portfolio-page [hidden]{display:none!important}.portfolio-page :is(section,article)[id]{scroll-margin-top:6.5rem}.portfolio-page .eyebrow{color:#ff9a57}.pf-link{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;padding-block:.4rem;font-size:.84rem;font-weight:750;text-underline-offset:6px}.pf-link span{transition:transform .2s ease}.pf-link:hover span{transform:translate(2px,-2px)}.pf-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1.75rem 3rem;align-items:center;padding-top:clamp(2rem,4vw,3.5rem);padding-bottom:1.5rem}.pf-hero>*{min-width:0}.pf-hero h1{font-size:clamp(2.4rem,4vw,3.75rem);line-height:1.07;letter-spacing:-.055em;margin-bottom:1.3rem}.pf-hero__copy>p:not(.eyebrow){max-width:38ch;font-size:1.02rem;color:var(--pf-muted);line-height:1.65}.pf-hero__actions{display:flex;flex-wrap:wrap;gap:.6rem 1.25rem;margin-top:1.5rem}.pf-stage a{text-decoration:none;display:block;min-width:0}.pf-stage__main{border:1px solid #526171;background:#101b29;box-shadow:0 18px 55px #0003}.pf-window{display:flex;align-items:center;gap:5px;min-height:26px;padding:6px 10px;background:#18283b;color:#c1ccda;border-bottom:1px solid #465568;font-size:.49rem;font-weight:750;letter-spacing:.06em}.pf-window i{width:5px;height:5px;background:#ff9a57;border-radius:50%;flex-shrink:0}.pf-window i:nth-child(2){background:#98a4b1}.pf-window i:nth-child(3){background:#536579}.pf-window span{margin-left:6px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.pf-stage__main picture,.pf-stage__main img{display:block;width:100%}.pf-stage__main img{aspect-ratio:1.85;object-fit:cover;object-position:top}.pf-stage__caption{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border-top:1px solid var(--pf-line);font-size:.8rem}.pf-stage__caption small{color:var(--pf-muted);font-size:.64rem}.pf-stage__support{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.75rem}.pf-stage__support>a{display:grid;grid-template-columns:75px minmax(0,1fr);align-items:center;border:1px solid var(--pf-line);background:var(--pf-panel);overflow:hidden;transition:border-color .2s ease,transform .2s ease}.pf-stage__support picture,.pf-stage__support img{display:block;width:100%;height:100%}.pf-stage__support img{aspect-ratio:1;object-fit:cover;object-position:top left}.pf-stage__support>a>span{padding:.65rem}.pf-stage__support b,.pf-stage__support small{display:block}.pf-stage__support b{font-size:.8rem}.pf-stage__support small{font-size:.62rem;color:var(--pf-muted);margin-top:.25rem}.pf-stage a:hover{border-color:#ff9a57}.pf-stage__support>a:hover{transform:translateY(-3px)}.pf-hero__footer{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem 1.5rem;padding-top:1rem;border-top:1px solid var(--pf-line);font-size:.75rem;color:var(--pf-muted)}.pf-hero__footer b{color:#ff9a57;font-size:1rem;margin-right:.3rem}.pf-hero__footer a{display:inline-flex;min-height:44px;align-items:center;font-weight:700;color:var(--pf-text)}.pf-index{padding-block:clamp(2rem,4vw,3rem) clamp(3rem,5vw,4.5rem)}.pf-section-heading{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:end;gap:1.5rem 3rem;margin-bottom:1.75rem}.pf-section-heading .eyebrow{margin-bottom:.75rem}.pf-section-heading h2{font-size:clamp(2rem,3.6vw,3.3rem);line-height:1.08;margin:0}.pf-section-heading>p{margin:0;color:var(--pf-muted);font-size:.95rem;max-width:38ch;line-height:1.65}.pf-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-top:1px solid var(--pf-line);padding-block:1rem 1.5rem}.pf-filters{display:flex;flex-wrap:wrap;gap:.5rem}.pf-filters button,.pf-scene-controls button{border:1px solid #526171;min-height:44px;background:transparent;color:var(--pf-text);font:inherit;font-size:.77rem;font-weight:700;padding:.65rem .85rem;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.pf-filters button[aria-pressed=true],.pf-scene-controls button[aria-selected=true]{background:#fd6900;color:#09111c;border-color:#fd6900}.pf-filters button:hover,.pf-scene-controls button:hover{border-color:#ff9a57}.pf-filters button>span{font-size:.65rem;margin-left:.6rem;opacity:.8}.pf-count{font-size:.75rem;color:var(--pf-muted);margin:0}.pf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.pf-card{min-width:0;border:1px solid var(--pf-line);background:var(--pf-panel);display:flex;flex-direction:column;transition:transform .25s ease,border-color .25s ease}.pf-card:hover,.pf-card:focus-within{border-color:#a16b45}.pf-card__visual{position:relative;display:block;overflow:hidden;border-bottom:1px solid var(--pf-line);background:#1a2839;text-decoration:none}.pf-card__visual picture,.pf-card__visual img{display:block;width:100%}.pf-card__visual img{aspect-ratio:1.6;object-fit:cover;object-position:top;transition:transform .45s cubic-bezier(.22,.72,.25,1)}.pf-card__inspect{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;gap:1rem;padding:.8rem 1rem;background:#09111cf2;font-size:.72rem;color:#f7f5f0;line-height:1.5;opacity:0;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease}.pf-card:hover .pf-card__inspect,.pf-card:focus-within .pf-card__inspect{opacity:1;transform:none}.pf-card:hover .pf-card__visual img{transform:scale(1.025)}.pf-card__body{padding:1.25rem;display:flex;flex-direction:column;align-items:flex-start;flex:1}.pf-card__discipline{font-size:.61rem;color:var(--pf-muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:.7rem}.pf-badge{display:inline-flex;align-items:center;border:1px solid #5b6a7b;padding:.28rem .5rem;font-size:.63rem;font-weight:700;line-height:1.5;letter-spacing:.025em;color:#d4deea;margin:0 0 .8rem}.pf-badge--live{color:#bce8d8;border-color:#568f7e}.pf-badge--live:before{content:"";width:5px;height:5px;background:#8bd8ba;border-radius:50%;margin-right:.4rem}.pf-card h3{font-size:1.65rem;line-height:1.12;margin-bottom:.65rem}.pf-card__body>p:last-of-type{color:var(--pf-muted);font-size:.85rem;line-height:1.65;margin-bottom:1.2rem}.pf-card__actions{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap;width:100%;border-top:1px solid var(--pf-line);padding-top:.45rem}.pf-card__actions .pf-link{font-size:.75rem}.pf-story-link{display:inline-flex;align-items:center;min-height:44px;font-size:.73rem;color:var(--pf-muted)}.pf-evidence-note{color:var(--pf-muted);max-width:100%;font-size:.75rem;line-height:1.75;margin:1.5rem 0 0}.pf-stories{padding-top:clamp(2rem,4vw,3.5rem);border-top:1px solid var(--pf-line)}.pf-stories>.pf-section-heading{margin-bottom:2.5rem}.pf-story{padding:clamp(2rem,5vw,4rem) 0}.pf-story__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--pf-line);padding-top:1rem;margin-bottom:2rem;font-size:.66rem;font-weight:750;letter-spacing:.08em}.pf-story__header .pf-badge{margin:0;flex-shrink:0}.pf-story__layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,4vw,4rem);align-items:center}.pf-story__layout>*{min-width:0}.pf-story__media{border:1px solid var(--pf-line);background:#101d2d;overflow:hidden}.pf-story__media picture,.pf-story__media img{display:block;width:100%}.pf-story__media img{aspect-ratio:1.35;object-fit:cover;object-position:top}.pf-media-note{font-size:.65rem;color:var(--pf-muted);padding:.8rem 1rem;margin:0;line-height:1.6}.pf-story__copy h3,.pf-nara-intro h3{font-size:clamp(2rem,3.7vw,3.5rem);line-height:1.06;margin-bottom:1.25rem}.pf-story__copy>p:not(.eyebrow){font-size:.94rem;color:var(--pf-muted);line-height:1.75}.pf-decisions{margin:1.5rem 0}.pf-decisions>div{border-top:1px solid var(--pf-line);padding:.8rem 0;display:grid;grid-template-columns:85px minmax(0,1fr);gap:1rem}.pf-decisions dt{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800;color:#ff9a57}.pf-decisions dd{margin:0;color:#d0dae5;font-size:.83rem;line-height:1.65}.pf-story__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.25rem}.pf-story__actions .button{font-size:.8rem}.pf-story__actions .pf-link{font-size:.78rem}.pf-story--nara{background:#141d20}.pf-nara-intro{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:2rem;margin-bottom:2rem}.pf-nara-intro h3{font-size:clamp(2.8rem,5.5vw,4.5rem);margin:0}.pf-nara-intro>p{font-size:1rem;color:#c4d0d3;line-height:1.8;margin:0;max-width:48ch}.pf-nara-visual{display:block;position:relative;border:1px solid #667774;overflow:hidden;text-decoration:none}.pf-nara-visual picture,.pf-nara-visual img{display:block;width:100%}.pf-nara-visual img{aspect-ratio:1.85;object-fit:cover;object-position:top;transition:transform .6s ease}.pf-nara-visual:hover img{transform:scale(1.015)}.pf-nara-visual>span{position:absolute;bottom:1rem;right:1rem;padding:.75rem 1rem;background:#09111cf2;border:1px solid #728178;display:flex;gap:2rem;align-items:center;font-size:.8rem;font-weight:750;min-height:44px}.pf-decisions--columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.pf-decisions--columns>div{display:block}.pf-decisions--columns dt{margin-bottom:.6rem}.pf-story--software .pf-story__layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.pf-scene-controls{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.pf-scene-controls button{font-size:.7rem;padding:.65rem}.pf-scene{margin:0 0 1.5rem;border:1px solid var(--pf-line);background:var(--pf-panel)}.pf-scene:last-child{margin-bottom:0}.pf-scene picture,.pf-scene img{display:block;width:100%}.pf-scene img{aspect-ratio:1.5;object-fit:cover;object-position:top}.pf-scene figcaption{padding:1rem;border-top:1px solid var(--pf-line)}.pf-scene figcaption strong{display:block;font-size:1.05rem;margin-bottom:.45rem}.pf-scene figcaption p{font-size:.83rem;color:var(--pf-muted);margin-bottom:.65rem;line-height:1.65}.pf-scene figcaption small{font-size:.63rem;color:#a8bacb}.pf-close{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;padding-block:clamp(3rem,6vw,5rem);border-top:1px solid var(--pf-line)}.pf-close h2{font-size:clamp(2.1rem,4vw,3.5rem);line-height:1.08}.pf-close p:not(.eyebrow){color:var(--pf-muted);max-width:55ch;line-height:1.75}.pf-close>div:last-child{display:grid;justify-items:start;gap:.8rem}@media(min-width:981px){.pf-card:hover{transform:translateY(-4px)}}@media(max-width:980px){.pf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pf-hero{gap:1.5rem}.pf-stage__support>a{grid-template-columns:55px minmax(0,1fr)}.pf-stage__caption{display:block}.pf-stage__caption small{display:block;margin-top:.25rem}}@media(max-width:850px){.pf-story__layout,.pf-story--software .pf-story__layout{grid-template-columns:1fr}.pf-story__media img{aspect-ratio:1.6}.pf-story__copy{max-width:65ch}.pf-section-heading{grid-template-columns:1fr;gap:.8rem}.pf-section-heading>p{max-width:55ch}.pf-nara-intro{grid-template-columns:1fr;gap:1rem}.pf-close{grid-template-columns:1fr}.pf-stage__support>a{grid-template-columns:1fr}.pf-stage__support img{aspect-ratio:3;height:auto}.pf-stage__support picture{height:auto}}@media(max-width:760px){.pf-hero{grid-template-columns:1fr;padding-top:1.75rem;gap:1.35rem}.pf-hero h1{font-size:clamp(2.15rem,7.8vw,3.5rem);max-width:18ch;margin-bottom:1rem}.pf-hero__copy>p:not(.eyebrow){font-size:.9rem;line-height:1.6;margin-bottom:0;max-width:50ch}.pf-hero__actions{margin-top:1rem;gap:.4rem 1rem}.pf-hero__actions .button{font-size:.8rem;padding:.7rem .9rem}.pf-hero__actions .pf-link{font-size:.74rem}.pf-stage__caption{display:flex;padding:.65rem .75rem;font-size:.73rem;gap:.5rem}.pf-stage__caption small{font-size:.6rem;margin:0}.pf-stage__support>a{grid-template-columns:65px minmax(0,1fr)}.pf-stage__support img{aspect-ratio:1;height:100%}.pf-stage__support picture{height:100%}.pf-stage__support small{font-size:.57rem}.pf-stage__support b{font-size:.75rem}.pf-hero__footer{gap:.5rem 1rem;font-size:.67rem}.pf-hero__footer>span:nth-child(2){display:none}.pf-hero__footer a{font-size:.68rem}.pf-decisions--columns{grid-template-columns:1fr;gap:0}.pf-decisions--columns>div{display:grid}.pf-nara-visual img{aspect-ratio:1.5}.pf-story__header{font-size:.6rem;letter-spacing:.035em;align-items:start;gap:.75rem}.pf-story__header .pf-badge{font-size:.58rem}.pf-nara-visual>span{bottom:.6rem;right:.6rem;padding:.6rem .8rem;font-size:.7rem}}@media(max-width:600px){.pf-grid{grid-template-columns:1fr;gap:1rem}.pf-card__body{padding:1.1rem}.pf-card__visual img{aspect-ratio:1.65}.pf-card__inspect{position:static;opacity:1;transform:none;font-size:.68rem;padding:.65rem .85rem;min-height:44px;border-top:1px solid var(--pf-line)}.pf-card h3{font-size:1.75rem}.pf-filters{display:grid;grid-template-columns:1fr 1fr;width:100%}.pf-filters button{display:flex;justify-content:space-between;align-items:center;text-align:left;font-size:.72rem}.pf-filter-bar{gap:.7rem;padding-bottom:1rem}.pf-section-heading h2{font-size:2rem}.pf-card__body>p:last-of-type{font-size:.86rem}.pf-stage__main img{aspect-ratio:1.65}.pf-story__header{flex-wrap:wrap}.pf-story__header>span:first-child{max-width:30ch}.pf-decisions>div{grid-template-columns:70px minmax(0,1fr);gap:.75rem}.pf-decisions dd{font-size:.82rem}.pf-story__copy h3{font-size:2.2rem}.pf-evidence-note{font-size:.7rem}.pf-scene-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.pf-scene-controls button{font-size:.61rem;padding:.6rem .35rem}.pf-scene img{aspect-ratio:1.35;object-fit:contain;background:#f8f8f6}.pf-nara-visual img{aspect-ratio:1.4}.pf-story__actions{gap:.6rem 1rem}}@media(max-width:360px){.pf-stage__caption{display:block}.pf-stage__caption small{margin-top:.25rem}.pf-stage__support>a{grid-template-columns:45px minmax(0,1fr)}.pf-stage__support>a>span{padding:.5rem}.pf-stage__support small{font-size:.53rem}.pf-stage__support b{font-size:.66rem}.pf-hero h1{font-size:2.1rem}.pf-hero__footer{font-size:.62rem}.pf-scene-controls button{font-size:.56rem}.pf-stage__main img{aspect-ratio:1.7}}@media(prefers-reduced-motion:no-preference){.pf-card.is-revealed{animation:pf-arrive .45s both;animation-delay:var(--card-delay,0ms)}.pf-scene.is-active{animation:pf-arrive .3s both}@keyframes pf-arrive{0%{opacity:.65;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}}@media(prefers-reduced-motion:reduce){.portfolio-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.pf-card:hover,.pf-card:hover img,.pf-nara-visual:hover img,.pf-stage__support>a:hover{transform:none}}.pf-show-more{display:flex;align-items:center;justify-content:center;gap:1.5rem;min-height:48px;width:100%;margin-top:1.25rem;border:1px solid #687a90;background:#101d2d;color:#f7f5f0;font:inherit;font-size:.85rem;font-weight:750;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.pf-show-more:hover{border-color:#ff9a57;background:#182a3f}@media(max-width:850px){.pf-software-viewer{order:-1}}
