@import "https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@400;500;600;700&display=swap";:root{--bg-color:#fcfdfe;--bg-subtle:#f8fafc;--surface-color:#fff;--surface-alt:#f1f5f9;--text-main:#0f172a;--text-muted:#475569;--text-light:#64748b;--accent-teal:#0d9488;--accent-teal-dark:#0f766e;--accent-mint:#10b981;--accent-mint-subtle:#ecfdf5;--accent-blue:#3b82f6;--accent-blue-subtle:#eff6ff;--accent-lavender:#8b5cf6;--accent-lavender-subtle:#f5f3ff;--border-color:#e2e8f0;--border-subtle:#cbd5e1;--shadow-sm:0 2px 8px #0f172a0a;--shadow-md:0 8px 24px -4px #0f172a0f, 0 2px 6px -1px #0f172a08;--shadow-lg:0 16px 36px -6px #0f172a14, 0 4px 12px -2px #0f172a0a;--shadow-panel:0 20px 40px -8px #0f172a17, 0 1px 3px #0f172a0a;--shadow-hover:0 14px 30px -4px #0f172a1a, 0 4px 10px -2px #0f172a0a;--font-serif:"DM Serif Display", Georgia, serif;--font-sans:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--header-height:76px;--max-width:1200px;--focus-ring:#0d9488}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-sans);background-color:var(--bg-color);color:var(--text-main);scroll-behavior:smooth;line-height:1.6;overflow-x:hidden}[id]{scroll-margin-top:calc(var(--header-height) + 2rem)}body{width:100%;margin:0;padding:0;overflow-x:hidden}h1,h2,h3,h4,p,ul,ol,figure{margin:0;padding:0}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,[tabindex="0"]:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.site-container{max-width:var(--max-width);width:100%;margin:0 auto;padding:0 1.5rem}.site-header{border-bottom:1px solid var(--border-color);z-index:100;background-color:#fff;position:sticky;top:0;box-shadow:0 1px 3px #0f172a05}.header-inner{min-height:var(--header-height);justify-content:space-between;align-items:center;padding:1.15rem 0;display:flex}.brand-link{font-family:var(--font-serif);letter-spacing:-.01em;color:var(--text-main);align-items:center;gap:.6rem;font-size:1.35rem;transition:opacity .15s;display:flex}.brand-link:hover{opacity:.85}.brand-dot{background:linear-gradient(135deg, var(--accent-teal), var(--accent-lavender));border-radius:50%;width:9px;height:9px;display:inline-block}.site-nav{align-items:center;gap:2rem;display:flex}.nav-link{color:var(--text-muted);padding:.35rem 0;font-size:.95rem;font-weight:500;transition:color .15s,border-color .15s;position:relative}.nav-link:hover{color:var(--accent-teal)}.nav-link.active{color:var(--accent-teal);border-bottom:2px solid var(--accent-teal);font-weight:600}.btn-primary{background-color:var(--accent-teal);color:#fff;font-family:var(--font-sans);cursor:pointer;border:none;border-radius:9999px;justify-content:center;align-items:center;gap:.45rem;padding:.8rem 1.6rem;font-size:.95rem;font-weight:600;transition:background-color .2s,transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 4px 12px #0d948838}.btn-primary:hover{background-color:var(--accent-teal-dark);color:#fff;transform:translateY(-1px);box-shadow:0 6px 18px #0d948852}.btn-primary .btn-arrow,.btn-secondary .btn-arrow{transition:transform .2s cubic-bezier(.16,1,.3,1);display:inline-block}.btn-primary:hover .btn-arrow,.btn-secondary:hover .btn-arrow{transform:translate(3px)}.btn-secondary{color:var(--text-main);border:1px solid var(--border-color);font-family:var(--font-sans);box-shadow:var(--shadow-sm);cursor:pointer;background-color:#fff;border-radius:9999px;justify-content:center;align-items:center;gap:.45rem;padding:.8rem 1.6rem;font-size:.95rem;font-weight:600;transition:background-color .2s,border-color .2s,color .2s,transform .2s,box-shadow .2s;display:inline-flex}.btn-secondary:hover{background-color:var(--surface-alt);border-color:var(--border-subtle);color:var(--accent-teal);box-shadow:var(--shadow-md);transform:translateY(-1px)}.editorial-title{font-family:var(--font-serif);letter-spacing:-.015em;color:var(--text-main);font-weight:400}.project-badge{text-transform:uppercase;letter-spacing:.05em;background-color:var(--accent-mint-subtle);color:var(--accent-teal);border-radius:9999px;align-self:flex-start;margin-bottom:.85rem;padding:.3rem .65rem;font-size:.75rem;font-weight:600;display:inline-block}.project-badge.concept-badge{color:#475569;background-color:#f1f5f9;border:1px solid #e2e8f0}.status-badge{color:var(--text-light);background-color:var(--surface-alt);border:1px dashed var(--border-color);border-radius:9999px;align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.8rem;font-weight:500;display:inline-flex}.status-badge .status-dot{background-color:var(--text-light);border-radius:50%;width:6px;height:6px}.js-reveal-ready .reveal-on-scroll{opacity:0;will-change:opacity, transform;transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}.js-reveal-ready .reveal-from-left{transform:translate(-28px)}.js-reveal-ready .reveal-from-right{transform:translate(28px)}.js-reveal-ready .reveal-from-up{transform:translateY(28px)}.js-reveal-ready .reveal-stagger-1{transition-delay:70ms}.js-reveal-ready .reveal-stagger-2{transition-delay:.14s}.js-reveal-ready .reveal-stagger-3{transition-delay:.2s}.js-reveal-ready .reveal-on-scroll.is-revealed{opacity:1;transform:translate(0)}.interactive-card{transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s,border-color .25s}.interactive-card:hover{box-shadow:var(--shadow-hover);border-color:#cbd5e1;transform:translateY(-4px)}.image-zoom-container{position:relative;overflow:hidden}.image-zoom-container img{transition:transform .35s cubic-bezier(.16,1,.3,1)}.interactive-card:hover .image-zoom-container img{transform:scale(1.035)}.site-footer{border-top:1px solid var(--border-color);text-align:center;color:var(--text-muted);background-color:#fff;margin-top:5rem;padding:3.5rem 0;font-size:.9rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important;transform:none!important}.js-reveal-ready .reveal-on-scroll{opacity:1!important;transform:none!important}}@media (width<=768px){.header-inner{flex-direction:column;align-items:flex-start;gap:1rem}.site-nav{flex-wrap:wrap;gap:1.25rem}}
