@charset "UTF-8";
/* A quieter optical layer lets the architecture and real interactions lead. */
:root {
  --ui-feedback: 180ms;
  --ui-content: 360ms;
  --ui-camera: 760ms;
  --ui-settle: cubic-bezier(.22,1,.36,1);
}
.cine-world-orbits { opacity:.16; }
.cine-world-orbits .cine-orbit-secondary { opacity:.35; stroke-dasharray:none; }
.cine-world-registration { opacity:.38; }
.world-grid { opacity:.055; background-size:64px 64px; }
.world-orbit { opacity:.3; }
.sequence-on .world-grid {
  opacity:calc(.055 * var(--world-labels,0) * max(0,1 - var(--world-exit,0) * 2));
}
.sequence-on .world-orbit {
  opacity:calc(.3 * var(--world-labels,0) * max(0,1 - var(--world-exit,0) * 2));
}
.cine-world-foreground>i { background-image:url("assets/refinement-2026/port.webp"); opacity:.5; }
.cine-contact-arcs { opacity:.12; }
.cine-registration { opacity:.55; }
.cine-image-frame { opacity:.7; }
.scene-toggle { height:44px; top:calc(50% - 22px); transition:transform var(--ui-content) var(--ui-settle); }
.hero-action, .text-link, .case-links a { min-height:44px; align-items:center; }
.case-links a { display:inline-flex; }
.hero-action svg, .text-link svg, .resume-link svg, .button svg {
  transition:transform var(--ui-content) var(--ui-settle);
}
.button, .text-link, .resume-link {
  transition-duration:var(--ui-feedback);
  transition-timing-function:var(--ui-settle);
}
.cine-image-hover img { transition-duration:.76s; }
.cine-magnetic { transition-timing-function:var(--ui-settle); }
.sequence-on #world .world-visual.is-webgl-ready .world-flight-layer {
  transform:translate(calc(var(--world-camera-x,0) * 1%),calc(var(--world-camera-y,0) * 1%))
    scale(var(--world-camera-zoom,1));
  transform-origin:50% 50%;
}
.character-shell {
  background:radial-gradient(ellipse at 77% 49%,rgba(100,84,149,.2),transparent 52%),
    linear-gradient(115deg,rgba(16,17,20,.97) 15%,rgba(16,17,20,.87) 62%,rgba(16,17,20,.94)),
    url("assets/refinement-2026/port.webp") center/cover;
}
.skills p { color:#606068; }
@media(max-width:820px) {
  .cine-world-orbits { opacity:.1; }
  .cine-world-registration { opacity:.25; }
  .cine-world-foreground>i { opacity:.38; }
  .sequence-on .world-orbit {
    opacity:calc(.18 * var(--world-labels,0) * max(0,1 - var(--world-exit,0) * 2));
  }
  .cine-contact-arcs { opacity:.09; }
  .hero-description { font-size:12px; line-height:1.75; }
  .world-copy>p:nth-child(2) { font-size:13px; line-height:1.75; }
  .skills p { font-size:13px; line-height:1.85; }
  .case-status, .authorship-note, .case-result, .case-links { font-size:13px; line-height:1.8; }
}
@media(prefers-reduced-motion:reduce) {
  .scene-toggle, .hero-action svg, .text-link svg, .resume-link svg, .button svg,
  .button, .text-link, .resume-link, .cine-image-hover img, .cine-magnetic {
    transition:none; transform:none;
  }
}
