/* Progressive enhancement: all content remains readable without JavaScript. */
:root{--ease-out:cubic-bezier(.22,1,.36,1)}
.count-value{font:inherit;font-variant-numeric:tabular-nums;display:inline-block;min-width:1.72em;vertical-align:baseline}
.motion-active [data-reveal]{opacity:0;transform:translate3d(0,38px,0);transition:opacity .85s var(--ease-out),transform .95s var(--ease-out);transition-delay:var(--reveal-delay,0ms)}
.motion-active [data-reveal].is-visible{opacity:1;transform:translate3d(0,0,0)}
.motion-active .hero-stage{perspective:1100px}
.motion-active .phone-front{transform:translate3d(calc(var(--pointer-x,0) * 12px),calc(var(--pointer-y,0) * 9px + var(--hero-scroll,0) * -70px),0) rotate(calc(8deg - var(--hero-scroll,0) * 8deg));transition:transform .35s var(--ease-out)}
.motion-active .phone-back{transform:translate3d(calc(var(--pointer-x,0) * -8px),calc(var(--pointer-y,0) * -7px + var(--hero-scroll,0) * 34px),0) rotate(calc(-10deg + var(--hero-scroll,0) * 10deg));transition:transform .4s var(--ease-out)}
.motion-active .stage-surface{transform:scale(calc(1 + var(--hero-scroll,0) * .08));transition:transform .5s var(--ease-out)}
.site-header{transition:top .4s var(--ease-out)}
.navigation{transition:background .4s,border-radius .4s,box-shadow .4s;position:relative}
.is-scrolled .navigation{background:rgba(250,252,255,.78);box-shadow:0 9px 35px #283b5911,inset 0 1px 0 #fff}
.nav-links{position:relative;isolation:isolate}
.nav-links a{position:relative;z-index:1}
.nav-links a[aria-current=location]{color:#204a85}
.nav-current{position:absolute;left:0;top:2px;height:calc(100% - 4px);background:linear-gradient(150deg,#fff9,#c6d5eb68);box-shadow:inset 0 0 0 1px #fff9,inset 0 1px 3px #fff;border-radius:12px;pointer-events:none;opacity:0;transition:opacity .2s}
.nav-current.is-active{opacity:1}
.composition-control{isolation:isolate;background:rgba(247,252,255,.42);border-color:#ffffffe0;box-shadow:inset 0 1px 0 #fff,0 9px 22px #162d4220}
.composition-control button{position:relative;z-index:1;transition:color .3s,transform .2s;touch-action:manipulation}
.composition-control.has-liquid button[aria-pressed=true]{background:transparent;box-shadow:none}
.composition-control button:active{transform:scale(.94)}
.liquid-selection{position:absolute;left:0;top:5px;height:calc(100% - 10px);border-radius:14px;pointer-events:none;background:linear-gradient(145deg,#fff .5%,#ffffffb3 45%,#ffffff6e);border:1px solid #fff;box-shadow:inset 1px 1px 2px #fff,inset -1px -1px 4px #92b5c448,0 3px 9px #18354414;overflow:hidden}
.liquid-selection:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,#fff8 48%,transparent 76%);transform:translateX(-110%);opacity:.6}
.liquid-selection.is-moving:after{animation:liquid-light .65s var(--ease-out)}
@keyframes liquid-light{to{transform:translateX(110%)}}
.composition-demo .scene-stem,.composition-demo .focus-mark{transition:left .65s var(--ease-out),top .65s var(--ease-out),opacity .4s}
.composition-demo .scene-sun{transition:transform .8s var(--ease-out)}
.composition-demo[data-mode=center] .scene-sun{transform:translate(16px,3px)}
.composition-demo[data-mode=horizon] .scene-sun{transform:translate(-10px,8px)}
.motion-active .studio-figure{transform:perspective(1200px) translate3d(0,calc((1 - var(--studio-progress,0)) * 65px),0) rotateX(calc((1 - var(--studio-progress,0)) * 11deg)) scale(calc(.86 + var(--studio-progress,0) * .14));transform-origin:center 80%;will-change:transform}
.studio-figure img{border-color:#ffffff2b}
.studio-pin{position:relative}
.motion-active .download-section{position:relative;z-index:2;background:var(--paper);border-radius:40px 40px 0 0;width:100%;padding-inline:max(48px,calc((100% - 1120px) / 2));margin-top:-40px;box-shadow:0 -18px 40px #0000000a}
.download-row{transition:background .35s,transform .35s var(--ease-out)}
.download-row:hover{background:#edf0f780;transform:translateX(4px)}
.button,.nav-download{position:relative;overflow:hidden}
.button:after,.nav-download:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,#fff2 48%,transparent 76%);transform:translateX(-110%);transition:transform .65s var(--ease-out);pointer-events:none}
.button:hover:after,.nav-download:hover:after{transform:translateX(110%)}
.button:active,.nav-download:active{transform:scale(.97)}
.button svg,.button>span,.nav-download>span{transition:transform .3s var(--ease-out)}
.button:hover svg,.button:hover>span,.nav-download:hover>span{transform:translate(2px,-2px)}
@media(min-width:761px) and (min-height:800px){
  .motion-active .studio-section{height:165svh;min-height:1080px;padding:0;overflow:visible;border-radius:36px 36px 0 0;position:relative}
  .motion-active .studio-pin{position:sticky;top:0;height:100svh;min-height:800px;padding:110px 0 30px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
  .motion-active .studio-top h2{font-size:clamp(36px,4.1vw,58px)}
  .motion-active .studio-top .eyebrow{margin-bottom:13px}
  .motion-active .studio-description{margin-top:16px}
  .motion-active .studio-figure{width:min(1000px,calc(100% - 96px),calc((100svh - 480px) * 1.62));margin-top:30px}
  .motion-active .studio-figure figcaption{margin-top:14px}
  .motion-active .studio-disciplines{padding-top:26px}
}
@media(max-width:760px){
  .nav-current{border-radius:10px}
  .motion-active .download-section{padding-inline:20px;margin-top:-24px;border-radius:25px 25px 0 0}
  .motion-active .studio-section{padding-bottom:64px;border-radius:26px 26px 0 0}
  .motion-active .phone-front{transform:translate3d(0,calc(var(--hero-scroll,0) * -35px),0) rotate(calc(8deg - var(--hero-scroll,0) * 6deg))}
  .motion-active .phone-back{transform:translate3d(0,calc(var(--hero-scroll,0) * 20px),0) rotate(calc(-10deg + var(--hero-scroll,0) * 6deg))}
  .motion-active [data-reveal]{transform:translate3d(0,24px,0)}
  .motion-active [data-reveal].is-visible{transform:none}
  .download-row:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){
  .motion-active [data-reveal]{opacity:1;transform:none}
  .motion-active .studio-section{height:auto;min-height:0;padding:100px 0 60px}
  .motion-active .studio-pin{height:auto;min-height:0;position:relative;padding:0}
  .motion-active .studio-figure{transform:none;will-change:auto}
  .button:after,.nav-download:after,.liquid-selection:after{display:none}
  .button:hover,.button:active,.nav-download:active,.download-row:hover{transform:none}
}

.screen-reader-only,.large-number>.screen-reader-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(prefers-reduced-motion:reduce){.composition-control button:active,.button:hover svg,.button:hover>span,.nav-download:hover>span,.scene-sun{transform:none!important}.scene-stem,.focus-mark,.scene-sun{transition:none!important}}

.category-list p [data-count]{color:#6e7682;font-variant-numeric:tabular-nums}
