:root{--color-bg:#fff;--color-bg-warm:#f2f0ee;--color-bg-dark:#202020;--color-text:#0a0a0a;--color-text-muted:#4a4948;--color-text-on-dark:#fff;--color-text-muted-on-dark:#ffffffa6;--color-border:#e5e5e5;--color-surface:#fafafa;--color-accent-line:#0a0a0a;--max-width:1280px;--layout-max:1280px;--layout-gutter:1.5rem;--layout-left:30%;--layout-right:70%;--section-padding:clamp(4rem, 10vw, 7rem);--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Monaco, Consolas, monospace;--font-display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.6}a{color:inherit;text-decoration:none}button,input{font:inherit}img{max-width:100%;height:auto;display:block}::selection{color:#fff;background:#0a0a0a}@media (prefers-reduced-motion:reduce){.header{animation:none}}@keyframes heroLineIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.heroLine{opacity:0;animation:.7s ease-out forwards heroLineIn;display:block}.heroLine:first-child{animation-delay:50ms}.heroLine:nth-child(2){animation-delay:.15s}.heroLine:nth-child(3){animation-delay:.25s}@media (prefers-reduced-motion:reduce){.heroLine{opacity:1;animation:none}.heroEntrance,.titleWord,.hubCore,.bracketTL,.bracketTR,.bracketBL,.bracketBR,.sheet,.satSheet,.captureFlash{opacity:1;animation:none;transform:none}}@keyframes captureSnap{0%{opacity:0;filter:brightness(1.2);transform:scale(1.06)translateY(8px)}12%{opacity:1;filter:brightness(1.35)}to{opacity:1;filter:brightness();transform:scale(1)translateY(0)}}@keyframes shutterFlash{0%{opacity:0}6%{opacity:.45}18%{opacity:0}to{opacity:0}}@keyframes viewfinderPulse{0%,to{transform:scale(1)}50%{transform:scale(.97)}}@keyframes bracketDraw{0%{opacity:0;transform:scale(1.4)}to{opacity:1;transform:scale(1)}}@keyframes floatSheet{0%,to{margin-top:0}50%{margin-top:-4px}}@keyframes fadeUpSpring{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideFromLeft{0%{opacity:0;transform:translate(-48px)}to{opacity:1;transform:translate(0)}}@keyframes scaleSettle{0%{opacity:0;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}@keyframes navFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes orbitSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes scanLine{0%{opacity:0;top:0}10%{opacity:.35}90%{opacity:.15}to{opacity:0;top:100%}}@keyframes cameraHoverFlash{0%{opacity:0}12%{opacity:.55}to{opacity:0}}@keyframes cameraClickFlash{0%{opacity:.75}to{opacity:0}}@keyframes viewfinderBracketIn{0%{opacity:0;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.camera-btn{isolation:isolate;position:relative;overflow:hidden}.camera-btn:before{content:"";pointer-events:none;z-index:2;opacity:0;background:linear-gradient(currentColor,currentColor) 0 0/.55rem 2px no-repeat,linear-gradient(currentColor,currentColor) 0 0/2px .55rem no-repeat,linear-gradient(currentColor,currentColor) 100% 0/.55rem 2px no-repeat,linear-gradient(currentColor,currentColor) 100% 0/2px .55rem no-repeat,linear-gradient(currentColor,currentColor) 0 100%/.55rem 2px no-repeat,linear-gradient(currentColor,currentColor) 0 100%/2px .55rem no-repeat,linear-gradient(currentColor,currentColor) 100% 100%/.55rem 2px no-repeat,linear-gradient(currentColor,currentColor) 100% 100%/2px .55rem no-repeat;transition:opacity .2s;position:absolute;inset:.45rem}.camera-btn:after{content:"";opacity:0;pointer-events:none;z-index:1;background:#fff;position:absolute;inset:0}.camera-btn:hover:before{opacity:.55;animation:.25s cubic-bezier(.22,1,.36,1) forwards viewfinderBracketIn}.camera-btn:hover:after{animation:.55s ease-out cameraHoverFlash}.camera-btn:active:after{animation:.18s ease-out forwards cameraClickFlash}.btnLight,.btnDark,.exploreBtn,.submit,.cta,.ctaBtn,.shareCopy{transition:transform .2s var(--ease-spring,cubic-bezier(.22, 1, .36, 1)), opacity .2s ease}.btnLight:active,.btnDark:active,.exploreBtn:active,.submit:active,.cta:active,.ctaBtn:active,.shareCopy:active{transform:scale(.98)}@media (prefers-reduced-motion:reduce){.camera-btn:before,.camera-btn:after{opacity:0!important;animation:none!important}}
