@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
.aa-projects{--ink:#f4edf9;--muted:#b8aec8;--accent:#c9b0ed;background:#090811;color:var(--ink);font:400 16px/1.6 'DM Sans',Arial,sans-serif;overflow:clip}.aa-projects *{box-sizing:border-box}.aa-projects a{color:inherit;text-decoration:none}.aa-projects button,.aa-projects input{font:inherit}.aa-projects button{cursor:pointer}.aa-projects a:focus-visible,.aa-projects button:focus-visible{outline:2px solid #e8cbff;outline-offset:7px}.ap-nav{position:absolute;z-index:20;inset:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:24px 4vw;gap:25px}.ap-nav>a img{width:155px;display:block}.ap-nav>div{display:flex;align-items:center;gap:24px;font-size:12px}.ap-nav button{background:none;border:0;color:inherit;padding:5px}.ap-nav label{display:flex;align-items:center;gap:7px;font-size:10px}.ap-nav input{width:45px;accent-color:#d5b2ec}.ap-kicker{font-size:10px;letter-spacing:.21em;text-transform:uppercase}.ap-hero{min-height:100svh;position:relative;padding:160px 7vw 45px;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(ellipse at 82% 45%,#31204477,transparent 53%);isolation:isolate}.ap-hero h1{font-size:clamp(60px,7.6vw,126px);line-height:.98;letter-spacing:-.075em;font-weight:500;margin:25px 0 50px}.ap-hero h1 em{color:#b7a0cc;font-style:normal}.ap-hero h1>span{display:block;padding-left:25vw;color:#e7cdf6}.ap-hero-bottom{display:flex;justify-content:space-between;align-items:center;max-width:1100px}.ap-hero-bottom p{font-size:14px;color:var(--muted)}.ap-hero-bottom a{display:flex;align-items:center;gap:35px;font-size:13px}.ap-hero-bottom a span{border:1px solid #756384;border-radius:50%;width:60px;height:60px;display:grid;place-items:center;font-size:22px}.ap-hero small{font-size:10px;color:#8e819b;margin-top:40px}.ap-hero-orbit{position:absolute;right:-9vw;top:15%;width:55vw;height:55vw;z-index:-1;transform:rotate(-25deg);opacity:.5}.ap-hero-orbit i{position:absolute;inset:5%;border:1px solid #b88fce44;border-radius:50%;transform:rotateX(45deg);box-shadow:0 0 80px #9d65bf15}.ap-hero-orbit i:nth-child(2){inset:16%;transform:rotateY(50deg)}.ap-hero-orbit i:nth-child(3){inset:30%;background:radial-gradient(circle at 30% 25%,#c5a6de,#362448 45%,#07060d 75%);border:0;box-shadow:-15px -10px 50px #ba80ed33}.ap-hero-orbit>span{position:absolute;right:20%;top:20%;font-size:10px;letter-spacing:.3em}.ap-flight{position:relative}.ap-stage{position:relative;isolation:isolate;overflow:hidden}.ap-stars,.ap-nebula,.ap-orbit-line,.ap-stage-label,.ap-stage-bottom,.ap-index{display:none}.ap-project{position:relative;max-width:1450px;margin:auto;padding:80px 7vw;display:grid;grid-template-columns:1.4fr 1fr;gap:7vw;align-items:center}.ap-portal{position:relative;aspect-ratio:1.3;overflow:hidden}.ap-project-photo{display:block;height:100%;position:relative}.ap-project-photo img{width:100%;height:100%;object-fit:cover;display:block}.ap-image-shade{position:absolute;inset:0;background:linear-gradient(0deg,#09081188,transparent 40%)}.ap-image-caption{position:absolute;bottom:25px;left:25px;right:25px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.15em;color:#fff}.ap-copy{position:relative;z-index:3}.ap-brand{font-size:clamp(40px,5vw,80px);line-height:1;letter-spacing:-.065em;display:block;margin-bottom:30px}.ap-copy .ap-kicker{font-size:9px;color:var(--accent)}.ap-copy h2{font-size:clamp(22px,2.5vw,36px);line-height:1.16;font-weight:400;letter-spacing:-.04em;margin:18px 0}.ap-copy>p:not(.ap-kicker){font-size:14px;color:#c5bacf;max-width:340px}.ap-copy .ap-features{font-size:11px!important;color:#95889f!important}.ap-cta{display:inline-flex;align-items:center;border-bottom:1px solid #c2a5d6;padding:12px 0;margin-top:10px;font-size:13px;transition:color .2s}.ap-cta:hover{color:var(--accent)}.ap-note{display:block;font-size:7px;letter-spacing:.12em;color:#897b95;margin-top:25px}.ap-giant{display:none}.ap-end{padding:140px 7vw;background:radial-gradient(ellipse at 50% 100%,#42265655,transparent 70%)}.ap-end h2{font-size:clamp(48px,6.5vw,100px);letter-spacing:-.065em;font-weight:400;line-height:1.05;margin:25px 0}.ap-end h2 em{font-style:normal;color:#c1a5df}.ap-end>p:not(.ap-kicker){max-width:560px;color:var(--muted);font-size:15px}.ap-end small{display:block;font-size:10px;color:#91849d;margin-top:60px}.ap-footer{border-top:1px solid #ffffff16;padding:28px 7vw;display:flex;justify-content:space-between;font-size:11px;color:#b5a5c3}
/* Native page scroll drives one continuous, perspective exhibition. */
.ap-enhanced .ap-flight{height:900svh}.ap-enhanced .ap-stage{height:100svh;position:sticky;top:0;background:#090811;--glow:#b08ccb}.ap-enhanced .ap-stars{display:block;position:absolute;inset:0;width:100%;height:100%;z-index:-2}.ap-enhanced .ap-nebula{display:block;position:absolute;inset:-30%;background:radial-gradient(ellipse at 70% 55%,var(--glow),transparent 40%),radial-gradient(ellipse at 20% 60%,#4b3c72,transparent 30%);opacity:.14;filter:blur(60px);transition:background 1s;z-index:-1;transform:rotate(-20deg)}.ap-enhanced .ap-orbit-line{display:block;position:absolute;width:125vw;height:45vw;border:1px solid #baa0d11c;border-radius:50%;left:-10vw;top:25%;transform:rotate(-28deg);pointer-events:none}.ap-enhanced .ap-depth{position:absolute;inset:0;perspective:1200px;perspective-origin:50% 50%;transform-style:preserve-3d}.ap-enhanced .ap-project{position:absolute;inset:0;width:100%;height:100%;max-width:none;padding:12vh 10vw 14vh;gap:6vw;grid-template-columns:1.3fr 1fr;will-change:transform,opacity;transform-style:preserve-3d;margin:0;visibility:hidden;pointer-events:none}.ap-enhanced .ap-project.is-current{pointer-events:auto}.ap-enhanced .ap-portal{width:100%;height:100%;max-height:65vh;aspect-ratio:auto;box-shadow:0 30px 90px #0008;border:1px solid #ffffff20;transform:rotateY(7deg)}.ap-enhanced .ap-project-photo img{height:110%;margin-top:-5%;will-change:transform}.ap-enhanced .ap-copy{transform:translateZ(55px)}.ap-enhanced .ap-giant{display:block;position:absolute;left:6vw;bottom:8vh;font-size:clamp(100px,17vw,280px);letter-spacing:-.07em;line-height:1;white-space:nowrap;color:transparent;-webkit-text-stroke:1px #e4c9f216;z-index:-1;pointer-events:none}.ap-enhanced .ap-stage-label,.ap-enhanced .ap-stage-bottom{display:flex;position:absolute;left:4vw;right:4vw;justify-content:space-between;z-index:10;pointer-events:none;font-size:8px;letter-spacing:.17em;color:#a895ba}.ap-enhanced .ap-stage-label{top:4vh}.ap-enhanced .ap-stage-bottom{bottom:3vh}.ap-enhanced .ap-index{display:flex;position:absolute;bottom:7vh;left:50%;transform:translateX(-50%);gap:6px;z-index:12;padding:6px;border:1px solid #ffffff18;border-radius:40px;background:#13101cbb;backdrop-filter:blur(14px)}.ap-index button{border:0;border-radius:25px;background:transparent;color:#aa9ab8;min-width:40px;padding:10px 12px;font-size:10px;white-space:nowrap}.ap-index button b{display:none;font-weight:400;margin-left:10px}.ap-index button[aria-current=true]{background:#e5ceef;color:#24172e}.ap-index button[aria-current=true] b{display:inline}.ap-frame-corner{position:absolute;inset:8px;border:1px solid #ffffff15;pointer-events:none}
@media(min-width:1600px){.ap-enhanced .ap-project{padding-left:15vw;padding-right:15vw}}
@media(max-width:800px){.ap-nav{padding:20px 6vw}.ap-nav>a img{width:120px}.ap-nav>div{gap:10px;font-size:10px;flex-wrap:wrap;justify-content:flex-end}.ap-nav label,.ap-nav a[href='#collection']{display:none}.ap-hero{padding:150px 7vw 40px}.ap-hero h1{font-size:clamp(56px,10vw,85px)}.ap-hero h1>span{padding-left:15vw}.ap-hero-orbit{width:100vw;height:100vw;right:-30vw;top:25%}.ap-hero-bottom{align-items:flex-start;gap:20px;flex-direction:column}.ap-project{grid-template-columns:1fr;gap:30px}.ap-enhanced .ap-project{padding:9vh 7vw 16vh;grid-template-columns:1fr;grid-template-rows:43% 1fr;gap:20px}.ap-enhanced .ap-portal{height:100%;transform:none}.ap-enhanced .ap-copy{transform:none}.ap-brand{font-size:42px;margin:0 0 10px}.ap-copy h2{font-size:24px;margin:9px 0}.ap-copy .ap-kicker{font-size:8px;margin:0}.ap-copy>p:not(.ap-kicker){font-size:12px;margin:8px 0}.ap-enhanced .ap-features,.ap-enhanced .ap-note{display:none}.ap-cta{padding:7px 0;margin-top:0;font-size:12px}.ap-enhanced .ap-index{bottom:6vh;gap:0}.ap-index button{min-width:33px;padding:8px}.ap-index button b{max-width:90px;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}.ap-stage-bottom{font-size:6px!important}.ap-image-caption{font-size:6px;bottom:15px;left:15px;right:15px}.ap-footer{gap:20px;flex-wrap:wrap}.ap-end{padding:90px 7vw}.ap-enhanced .ap-giant{font-size:24vw;bottom:12vh}}
@media(prefers-reduced-motion:reduce){.ap-project,.ap-nebula{transition:none!important}.ap-project-photo img{transform:none!important}}


/* AA v4.5.1: First "Different worlds" section now shares the EXISTING gallery's
   starfield, quiet orbit lines and deep purple light. Gallery slides untouched. */
.ap-hero {
  overflow: hidden;
  background: #090811;
  isolation: isolate;
}
.ap-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 44% 46% at 78% 46%, rgba(176,140,203,.105), transparent 76%),
    radial-gradient(ellipse 57% 40% at 12% 78%, rgba(75,60,114,.11), transparent 80%),
    url('aa-project-stars.svg') center center / cover no-repeat;
}
.ap-hero::after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
  left: -24%;
  top: 52%;
  width: 143%;
  height: 58%;
  border: 1px solid rgba(186,160,209,.10);
  border-radius: 50%;
  transform: rotate(-26deg);
}
.ap-hero > .ap-hero-orbit {
  z-index: 1;
  opacity: .56;
}
.ap-hero > :not(.ap-hero-orbit) {
  position: relative;
  z-index: 2;
}
.ap-hero-orbit i:nth-child(3) {
  background: radial-gradient(circle at 30% 24%, #8e789e 0%, #5e4a70 27%, #31243f 55%, #0a0811 83%);
  box-shadow: -16px -12px 60px rgba(186,143,224,.18), 0 0 80px rgba(136,89,174,.08);
}
@media (max-width: 800px) {
  .ap-hero::after { width: 180%; left: -55%; top: 57%; height: 38%; }
  .ap-hero::before { background-position: center, center, 61% center; }
}
@media (prefers-reduced-motion: reduce) {
  .ap-hero::before, .ap-hero::after { animation: none; }
}

/* v4.6 — keep original 3D-scroll gallery, improve obvious, usable navigation */
.ap-enhanced .ap-stage{cursor:grab}
.ap-enhanced .ap-stage.ap-dragging{cursor:grabbing;user-select:none;-webkit-user-select:none}
.ap-project-photo:focus-visible,.ap-cta:focus-visible{outline:3px solid #f1daff;outline-offset:5px}
.ap-enhanced .ap-project.is-current .ap-project-photo{cursor:pointer}
.ap-enhanced .ap-project.is-current .ap-copy,.ap-enhanced .ap-project.is-current .ap-project-photo{pointer-events:auto}
.ap-portal:after{content:'VIEW PROJECT ↗';position:absolute;top:24px;right:24px;padding:9px 13px;border-radius:24px;background:rgba(15,10,22,.75);border:1px solid rgba(255,255,255,.5);font:700 10px/1.2 'DM Sans',Arial,sans-serif;letter-spacing:.12em;color:#fff;pointer-events:none;z-index:5;backdrop-filter:blur(10px)}
.ap-gallery-arrows{position:absolute;left:4vw;bottom:7vh;z-index:13;display:flex;align-items:center;gap:11px;color:#d1bfdf}
.ap-gallery-arrows button{width:46px;height:46px;border:1px solid #d3b5ee77;border-radius:50%;background:#1b142aaf;color:#f6e9ff;font-size:20px;backdrop-filter:blur(8px)}
.ap-gallery-arrows button:disabled{opacity:.26;cursor:not-allowed}
.ap-gallery-arrows button:not(:disabled):hover{background:#e2c9f1;color:#20152b}
.ap-gallery-hint{font:500 10px/1.4 'DM Sans',Arial,sans-serif;max-width:170px;letter-spacing:.04em}
.ap-project-photo img{pointer-events:none}
@media(max-width:800px){.ap-gallery-arrows{left:6vw;bottom:3vh}.ap-gallery-hint{display:none}.ap-gallery-arrows button{width:39px;height:39px}.ap-portal:after{right:10px;top:10px;font-size:8px}}
@media(prefers-reduced-motion:reduce){.ap-gallery-arrows{display:none}}

.ap-gallery-arrows .ap-open-current{display:inline-flex;align-items:center;justify-content:center;padding:14px 18px;border-radius:24px;background:#e5cbed;color:#21152c;font:700 11px/1.2 'DM Sans',Arial,sans-serif;white-space:nowrap;border:1px solid #fff3;box-shadow:0 10px 30px #0005}
.ap-gallery-arrows .ap-open-current:hover{background:#fff;color:#24102f}
@media(max-width:800px){.ap-gallery-arrows .ap-open-current{font-size:9px;padding:11px 13px}}

/* 4.7: project cards remain the only opening links; no duplicate open-current button. */
.ap-open-current{display:none!important}
.ap-gallery-arrows .ap-gallery-hint{color:#bda8c9}

.ap-aa-software{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:85px 7vw;background:radial-gradient(ellipse at 85% 45%,#68468136,transparent 65%),#151021;border-top:1px solid #d5a7ed24}.ap-aa-software span{font-size:10px;letter-spacing:.2em;color:#c5a3d7}.ap-aa-software h2{font-size:clamp(40px,5vw,74px);font-weight:500;letter-spacing:-.05em;line-height:1.05;margin:18px 0}.ap-aa-software p{font-size:14px;color:#b6a5be;max-width:580px}.ap-aa-software a{flex:none;border:1px solid #c6a0e0;border-radius:30px;padding:14px 20px;background:#483058}@media(max-width:760px){.ap-aa-software{flex-direction:column;align-items:start}}
