:root{--bg:#fafaf8;--bg-alt:#f1f0ed;--surface:#fff;--surface-2:#f2f1ee;--border:#0a0a0c1a;--text:#121210;--text-dim:#5c5b58;--text-faint:#94938f;--accent:#0c0c0b;--accent-2:#737270;--accent-soft:#0c0c0b0f;--border-strong:#0a0a0c47;color-scheme:light;--font-display:"Space Grotesk", "Inter", sans-serif;--font-body:"Inter", sans-serif;--container:1200px;--gutter:clamp(20px, 5vw, 64px);--radius:14px;--ease:cubic-bezier(.16,.84,.44,1)}.hero,.nav,.menu-overlay,.footer,.process,.work,.contact,.quote-modal{--bg:#232326;--bg-alt:#29292d;--surface:#313136;--surface-2:#38383e;--border:#ffffff17;--text:#f2f1ee;--text-dim:#a8a7a5;--text-faint:#79797a;--accent:#f5f5f3;--accent-2:#949394;--accent-soft:#f5f5f31c;--border-strong:#ffffff4d;color-scheme:dark;color:var(--text)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5;overflow-x:hidden}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-weight:600}p{margin:0}a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}img{max-width:100%;display:block}button{cursor:pointer;font-family:inherit}input,textarea{font-family:inherit}.section-inner{max-width:var(--container);padding:0 var(--gutter);margin:0 auto}.noise-overlay{pointer-events:none;z-index:1000;opacity:.035;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.cursor-glow{z-index:0;pointer-events:none;background:radial-gradient(circle, var(--accent-soft) 0%, transparent 70%);opacity:0;border-radius:50%;width:420px;height:420px;transition:opacity .3s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}@media (hover:hover){.cursor-glow.active{opacity:1}}.btn{border:1px solid var(--border);transition:transform .35s var(--ease), background .3s ease, border-color .3s ease, box-shadow .3s ease;white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:14px 26px;font-size:.95rem;font-weight:500;display:inline-flex}.btn-primary{background:var(--accent);color:var(--bg);border-color:var(--accent);box-shadow:0 0 0 0 var(--accent-soft)}.btn-primary:hover{box-shadow:0 8px 24px -6px var(--border-strong);transform:translateY(-2px)}.btn-ghost{color:var(--text);background:0 0}.btn-ghost:hover{border-color:var(--border-strong);transform:translateY(-2px)}.btn-small{padding:10px 20px;font-size:.85rem}.btn-full{justify-content:center;width:100%}.btn .arrow{transition:transform .3s var(--ease)}.btn:hover .arrow{transform:translate(4px)}.nav{z-index:350;background:#1c1c1f5c;border-bottom:1px solid #0000;transition:background .4s,border-color .4s,backdrop-filter .4s;position:fixed;top:0;left:0;right:0}.nav.scrolled{backdrop-filter:blur(14px)saturate(140%);border-bottom-color:var(--border);background:#1c1c1fc2}.nav-inner{width:100%;padding:18px var(--gutter);justify-content:space-between;align-items:center;gap:24px;display:flex}.logo{font-family:var(--font-display);letter-spacing:-.01em;font-size:1.25rem;font-weight:700}.logo-dot{color:var(--accent-2)}.nav-links{flex:1;justify-content:space-evenly;margin:0 48px;display:flex}body.menu-active .nav-links,body.menu-active .nav-cta{opacity:0;visibility:hidden;transition:opacity .2s}.nav-links a{color:var(--text-dim);font-size:.9rem;transition:color .25s;position:relative}.nav-links a:after{content:"";background:var(--text);height:1px;transition:right .3s var(--ease);position:absolute;bottom:-5px;left:0;right:100%}.nav-links a:hover{color:var(--text)}.nav-links a:hover:after,.nav-links a.active:after{right:0}.nav-links a.active{color:var(--text)}.nav-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;flex-shrink:0;justify-content:center;gap:5px;width:44px;height:44px;padding:0;display:flex}.nav-toggle span{background:var(--text);width:22px;height:2px;transition:transform .35s var(--ease), opacity .35s var(--ease);margin:0 auto;display:block}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.menu-overlay{z-index:300;background:var(--bg);opacity:0;visibility:hidden;transition:opacity .4s var(--ease), transform .4s var(--ease), visibility .4s;position:fixed;inset:0;transform:translateY(-16px)}.menu-overlay.open{opacity:1;visibility:visible;transform:translateY(0)}.menu-overlay-inner{max-width:1400px;height:100%;padding:96px var(--gutter) 0;flex-direction:column;margin:0 auto;display:flex}.menu-links{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(2px,1vh,8px);min-height:0;padding:20px 0;display:flex;overflow-y:auto}.menu-links a{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-dim);font-size:clamp(1.5rem,4vw,2.6rem);font-weight:600;line-height:1.15;transition:color .3s,transform .3s}.menu-links a:hover{color:var(--text);transform:scale(1.04)}.menu-overlay-bottom{border-top:1px solid var(--border);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:20px 32px;padding:24px 0 32px;display:flex}.menu-email{color:var(--text-dim);margin-right:auto;font-size:.95rem}.menu-lang-switch{border:1px solid var(--border);border-radius:999px;align-items:center;gap:2px;padding:3px;display:flex}.lang-btn{color:var(--text-faint);border-radius:999px;padding:5px 12px;font-size:.78rem;font-weight:600;transition:background .2s,color .2s}.lang-btn:hover{color:var(--text-dim)}.lang-btn.active{background:var(--accent);color:var(--bg)}.menu-email:hover{color:var(--text)}.menu-socials{gap:10px;display:flex}.menu-socials a{border:1px solid var(--border);width:40px;height:40px;color:var(--text-dim);border-radius:50%;justify-content:center;align-items:center;font-size:.72rem;transition:border-color .2s,color .2s;display:flex}.menu-socials a:hover{border-color:var(--accent);color:var(--accent)}.menu-legal{flex-wrap:wrap;gap:18px;display:flex}.menu-legal a{color:var(--text-faint);font-size:.82rem}.menu-legal a:hover{color:var(--text-dim)}.menu-copyright{color:var(--text-faint);order:1;width:100%;font-size:.78rem}@media (width>=640px){.menu-copyright{order:0;width:auto;margin-left:auto}}.hero{text-align:center;min-height:100svh;padding:140px var(--gutter) 80px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hero-scene{z-index:0;background:var(--bg);position:absolute;inset:0;overflow:hidden}.hero-video{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.hero-video-overlay{background:linear-gradient(#0a0a0c8c 0%,#0a0a0cb8 55%,#0a0a0cf0 100%),linear-gradient(90deg,#0a0a0c59 0%,#0a0a0c0d 30% 70%,#0a0a0c59 100%);position:absolute;inset:0}.grid-lines{background-image:linear-gradient(90deg,#ffffff0f 1px,#0000 1px),linear-gradient(#ffffff0f 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:-20% -10%;mask-image:radial-gradient(60% 50% at 50% 40%,#000 30%,#0000 75%)}.hero-content{z-index:2;max-width:780px;position:relative}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent-soft);background:var(--accent-soft);border-radius:999px;margin-bottom:22px;padding:6px 14px;font-size:.8rem;font-weight:600;display:inline-block}.hero-title{flex-direction:column;gap:2px;font-size:clamp(2.6rem,6.5vw,5.2rem);line-height:1.04;display:flex}.hero-title-accent{color:var(--text-dim);font-weight:500}.hero-sub{max-width:560px;color:var(--text-dim);margin:28px auto 0;font-size:clamp(1rem,1.6vw,1.15rem);line-height:1.6}.hero-cta{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:40px;display:flex}.hero-note{color:var(--text-faint);margin-top:24px;font-size:.85rem}.hero-note a{color:var(--text-dim);border-bottom:1px solid var(--accent-2)}.hero-note a:hover{color:var(--text)}.scroll-cue{letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);z-index:2;flex-direction:column;align-items:center;gap:10px;font-size:.72rem;display:flex;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.scroll-line{background:linear-gradient(var(--accent), transparent);width:1px;height:40px;animation:2s ease-in-out infinite scrollpulse}@keyframes scrollpulse{0%,to{opacity:.3}50%{opacity:1}}.marquee{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--bg-alt);white-space:nowrap;padding:18px 0;overflow:hidden}.marquee-track{font-family:var(--font-display);letter-spacing:.04em;color:var(--text-faint);gap:18px;font-size:.95rem;animation:32s linear infinite marquee;display:inline-flex}.marquee-track span:nth-child(2n){color:var(--accent)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.metrics{border-bottom:1px solid var(--border);padding:100px 0}.metric-grid{background:var(--border);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(4,1fr);gap:1px;display:grid;overflow:hidden}.metric{background:var(--bg);flex-direction:column;gap:6px;padding:40px 28px;display:flex}.metric-num{font-family:var(--font-display);font-size:clamp(2.2rem,4vw,3.2rem);font-weight:700;line-height:1}.metric-num .dec{color:var(--text-dim);font-size:.55em}.metric-unit{color:var(--accent);font-size:.95rem;font-weight:600}.metric p{color:var(--text-dim);margin-top:8px;font-size:.9rem}section{padding:120px 0;position:relative}.section-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:18px;font-size:.82rem;font-weight:600}.section-title{max-width:680px;font-size:clamp(1.8rem,3.6vw,2.7rem);line-height:1.15}.services{border-bottom:1px solid var(--border)}.service-list{border-top:1px solid var(--border);margin-top:56px}.service-row{border-bottom:1px solid var(--border);transition:padding-left .35s var(--ease), background .35s ease;grid-template-columns:70px 1fr auto;align-items:center;gap:32px;padding:34px 0;display:grid}.service-row:hover{background:linear-gradient(to right, var(--accent-soft), transparent 40%);padding-left:16px}.service-index{font-family:var(--font-display);color:var(--text-faint);font-size:1.1rem}.service-row:hover .service-index{color:var(--accent)}.service-body h3{margin-bottom:8px;font-size:1.4rem}.service-body p{color:var(--text-dim);max-width:520px;font-size:.98rem}.service-tags{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.service-tags span{color:var(--text-faint);border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:5px 12px;font-size:.78rem}.process{background:var(--bg);border-radius:32px;margin:28px;overflow:hidden}.process-list{flex-direction:column;margin-top:56px;display:flex}.process-step{border-top:1px solid var(--border);grid-template-columns:90px 1fr;gap:28px;padding:30px 0;display:grid;position:relative}.process-step:last-child{border-bottom:1px solid var(--border)}.process-num{font-family:var(--font-display);color:var(--surface-2);-webkit-text-stroke:1px var(--text-faint);font-size:2rem;font-weight:700}.process-body h3{flex-wrap:wrap;align-items:center;gap:12px;font-size:1.25rem;display:flex}.process-body p{color:var(--text-dim);max-width:520px;margin-top:8px}.badge{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.06em;background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:4px 10px;font-size:.68rem;font-weight:600}.materials{background-color:#0000;background-image:linear-gradient(#fafaf8de,#fafaf8de),url(/images/materials-bg.jpg);background-position:50% 35%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border-radius:32px;margin:28px;overflow:hidden}.material-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:56px;display:grid}.material-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:transform .35s var(--ease), border-color .35s ease;padding:28px}.material-card:hover{border-color:#0a0a0c2e;transform:translateY(-4px)}.material-swatch{border-radius:10px;width:40px;height:40px;margin-bottom:18px;display:block;box-shadow:inset 0 0 0 1px #0a0a0c1f}.swatch-pla{background:linear-gradient(135deg,#f2f1ee,#c7c6c3)}.swatch-petg{background:linear-gradient(135deg,#b8b7b4,#83827f)}.swatch-abs{background:linear-gradient(135deg,#4a4a4c,#232325)}.swatch-tpu{background:repeating-linear-gradient(135deg,#6b6a68 0 4px,#a3a2a0 4px 8px)}.swatch-nylon{background:linear-gradient(135deg,#fbfbfa,#dedcd9)}.material-card h3{margin-bottom:8px;font-size:1.1rem}.material-card p{color:var(--text-dim);font-size:.9rem}.work{background:var(--bg);border-radius:32px;margin:28px;overflow:hidden}.work-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:220px;gap:20px;margin-top:56px;display:grid}.work-card{border-radius:var(--radius);border:1px solid var(--border);grid-column:span 1;position:relative;overflow:hidden}.work-card-large{grid-area:span 1/span 2}.work-visual{transition:transform .5s var(--ease);position:absolute;inset:0}.work-card:hover .work-visual{transform:scale(1.06)}.visual-1{background:radial-gradient(circle at 30% 20%, #ffffff38, transparent 55%), radial-gradient(circle at 75% 70%, #ffffff1a, transparent 55%), var(--surface)}.visual-2{background:radial-gradient(circle at 50% 40%, #ffffff29, transparent 60%), var(--surface)}.visual-3{background:repeating-linear-gradient(135deg, #ffffff0f 0 2px, transparent 2px 14px), var(--surface)}.visual-4{background:radial-gradient(circle at 60% 60%, #ffffff21, transparent 60%), var(--surface)}.work-meta{background:linear-gradient(#0000,#000000a6);flex-direction:column;gap:4px;padding:20px;display:flex;position:absolute;bottom:0;left:0;right:0}.work-meta h3{font-size:1.05rem}.work-meta span{color:var(--text-dim);font-size:.8rem}.work-note{color:var(--text-faint);margin-top:28px;font-size:.9rem}.work-note a{color:var(--accent);border-bottom:1px solid}.about{border-bottom:1px solid var(--border)}.about-grid{grid-template-columns:1fr 1fr;align-items:start;gap:48px;display:grid}.about-copy p{color:var(--text-dim);margin-bottom:20px;font-size:1.02rem;line-height:1.7}.about-copy p:last-child{margin-bottom:0}.contact{background:var(--bg);border-radius:32px 32px 0 0;margin:28px 0 0;overflow:hidden}.contact-sub{color:var(--text-dim);max-width:560px;margin-top:18px}.quote-teaser{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;max-width:640px;margin-top:48px;padding:24px 28px;display:flex}.quote-teaser h3{font-size:1.1rem}.quote-teaser p{color:var(--text-dim);max-width:380px;margin-top:4px;font-size:.9rem}.contact-divider{max-width:640px;color:var(--text-faint);align-items:center;gap:16px;margin:40px 0;font-size:.85rem;display:flex}.contact-divider:before,.contact-divider:after{content:"";background:var(--border);flex:1;height:1px}.contact-form{flex-direction:column;gap:20px;max-width:640px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.field{flex-direction:column;gap:8px;display:flex}.field label{color:var(--text-dim);font-size:.85rem}.field label span{color:var(--text-faint);font-weight:400}.field input[type=text],.field input[type=email],.field textarea{background:var(--surface);border:1px solid var(--border);color:var(--text);resize:vertical;border-radius:10px;padding:14px 16px;font-size:1rem;transition:border-color .25s,background .25s}.field input:focus,.field textarea:focus{border-color:var(--accent);background:var(--surface-2);outline:none}.field-file input[type=file]{color:var(--text-dim);font-size:1rem}.field-hint{color:var(--text-faint);margin-top:4px;font-size:.78rem}.form-status{color:var(--accent-2);min-height:1.2em;font-size:.9rem}.footer{background:var(--bg);padding-top:80px}.footer-inner{border-bottom:1px solid var(--border);grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-bottom:60px;display:grid}.footer-brand p{color:var(--text-faint);margin-top:12px;font-size:.9rem}.footer-links{flex-direction:column;gap:12px;display:flex}.footer-links a{color:var(--text-dim);font-size:.92rem;transition:color .2s}.footer-links a:hover{color:var(--text)}.footer-contact{flex-direction:column;align-items:flex-start;gap:18px;display:flex}.footer-contact>a{color:var(--text-dim);font-size:.92rem}.footer-social{gap:12px;display:flex}.footer-social a{border:1px solid var(--border);width:40px;height:40px;color:var(--text-dim);border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;transition:border-color .2s,color .2s;display:flex}.footer-social a:hover{border-color:var(--accent);color:var(--accent)}.footer-bottom{color:var(--text-faint);flex-wrap:wrap;justify-content:space-between;gap:8px;padding:24px 0 40px;font-size:.82rem;display:flex}.footer-legal-btn{font-size:inherit;color:var(--text-faint);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;margin-left:14px;padding:0;text-decoration:underline}.footer-legal-btn:hover{color:var(--text-dim)}.cookie-banner{z-index:200;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);opacity:0;pointer-events:none;max-width:720px;transition:opacity .35s var(--ease), transform .35s var(--ease);margin:0 auto;padding:20px 22px;position:fixed;bottom:16px;left:16px;right:16px;transform:translateY(16px);box-shadow:0 20px 50px -12px #00000059}.cookie-banner.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.cookie-banner-inner{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.cookie-banner p{color:var(--text-dim);flex:320px;font-size:.85rem;line-height:1.55}.cookie-banner p a{color:var(--text);border-bottom:1px solid var(--accent-2)}.cookie-banner p a:hover{border-color:var(--text)}.cookie-banner-actions{flex:none;gap:10px;display:flex}@media (width<=560px){.cookie-banner{padding:18px;bottom:12px;left:12px;right:12px}.cookie-banner-actions{width:100%}.cookie-banner-actions .btn{flex:1;justify-content:center}}.reveal{opacity:0;filter:blur(6px);transition:opacity .8s var(--ease), transform .8s var(--ease), filter .8s var(--ease);transition-delay:min(calc(var(--i,0) * 70ms), .56s);transform:translateY(28px)scale(.97)}.reveal.in-view{opacity:1;filter:blur();transform:translateY(0)scale(1)}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}}@media (width<=980px){.metric-grid,.material-grid{grid-template-columns:repeat(2,1fr)}.work-grid{grid-auto-rows:200px}.work-card-large{grid-column:span 2}.about-grid{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr 1fr}}@media (width<=760px){.nav-links,.nav-inner .btn-small{display:none}.service-row{grid-template-columns:1fr;gap:12px}.service-tags{flex-flow:wrap;align-items:flex-start}.process-step{grid-template-columns:1fr;gap:10px}.material-grid{grid-template-columns:1fr}.work-grid{grid-template-columns:1fr;grid-auto-rows:200px}.work-card-large{grid-column:span 1}.form-row{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr;gap:32px}.footer-bottom{flex-direction:column;gap:8px}section{padding:80px 0}.metrics{padding:70px 0}.process,.materials,.work{border-radius:20px;margin:18px}.contact{border-radius:20px 20px 0 0;margin:18px 0 0}}.blog-hero{border-bottom:1px solid var(--border);padding-top:160px}.blog-sub{color:var(--text-dim);max-width:560px;margin-top:18px;font-size:1.05rem}.post-list{border-top:1px solid var(--border);margin-top:56px}.post-card{border-bottom:1px solid var(--border);transition:padding-left .35s var(--ease), background .35s ease;padding:32px 0;display:block}.post-card:hover{background:linear-gradient(to right, var(--accent-soft), transparent 40%);padding-left:16px}.post-card-meta{color:var(--text-faint);align-items:center;gap:14px;margin-bottom:10px;font-size:.82rem;display:flex}.post-card-meta time{font-family:var(--font-display)}.post-card h2{margin-bottom:10px;font-size:1.4rem}.post-card p{color:var(--text-dim);max-width:620px;font-size:.98rem}.post-card-tags{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.post-card-tags span{color:var(--text-faint);border:1px solid var(--border);border-radius:999px;padding:4px 11px;font-size:.75rem}.empty-state{color:var(--text-dim);border-top:1px solid var(--border);margin-top:56px;padding:40px 0}.post-header{padding:160px 0 0}.post-header .section-tag{margin-bottom:20px}.post-title{max-width:820px;font-size:clamp(2rem,4.6vw,3.2rem);line-height:1.12}.post-meta{color:var(--text-faint);align-items:center;gap:16px;margin-top:24px;font-size:.88rem;display:flex}.post-meta time{font-family:var(--font-display);color:var(--text-dim)}.post-tags{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.post-tags span{color:var(--text-faint);border:1px solid var(--border);border-radius:999px;padding:4px 11px;font-size:.75rem}.prose{max-width:720px;color:var(--text-dim);padding:56px 0 100px;font-size:1.05rem;line-height:1.75}.prose h2{color:var(--text);margin-top:48px;margin-bottom:18px;font-size:1.5rem;line-height:1.25}.prose h2:first-child{margin-top:0}.prose h3{color:var(--text);margin-top:36px;margin-bottom:14px;font-size:1.2rem}.prose p{margin-bottom:20px}.prose ul,.prose ol{margin:0 0 20px 1.3em;padding:0}.prose li{margin-bottom:8px}.prose li::marker{color:var(--accent-2)}.prose a{color:var(--text);border-bottom:1px solid var(--accent-2)}.prose a:hover{border-color:var(--text)}.prose strong{color:var(--text);font-weight:600}.prose code{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:2px 6px;font-size:.9em}.prose blockquote{border-left:2px solid var(--accent-2);color:var(--text);margin:28px 0;padding-left:20px;font-style:italic}.back-link{color:var(--text-dim);align-items:center;gap:8px;margin-bottom:40px;font-size:.9rem;transition:color .2s,gap .2s;display:inline-flex}.back-link:hover{color:var(--text);gap:12px}.post-cta{border-top:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:20px;padding:48px 0 100px;display:flex}.post-cta h3{font-size:1.4rem}.post-cta p{color:var(--text-dim);max-width:480px}.not-found{text-align:center;min-height:100svh;padding:120px var(--gutter);flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex}.not-found-code{font-family:var(--font-display);color:var(--surface-2);-webkit-text-stroke:1px var(--text-faint);font-size:5rem;font-weight:700}@media (width<=760px){.blog-hero,.post-header{padding-top:120px}.materials{background-image:linear-gradient(#fafaf8de,#fafaf8de),url(/images/materials-bg-mobile.jpg)}}.quote-modal{z-index:500;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s var(--ease), visibility .3s;justify-content:stretch;align-items:stretch;display:flex;position:fixed;inset:0}.quote-modal.open{opacity:1;visibility:visible;pointer-events:auto}.quote-modal-backdrop{backdrop-filter:blur(4px);background:#000000b8;position:absolute;inset:0}.quote-modal-panel{background:var(--surface);width:100%;height:100%;max-height:100%;transition:transform .3s var(--ease);flex-direction:column;display:flex;position:relative;overflow:hidden;transform:translateY(12px)}.quote-modal.open .quote-modal-panel{transform:translateY(0)}.quote-modal-header{flex-shrink:0;justify-content:flex-end;padding:8px 14px;display:flex}.quote-modal-close{cursor:pointer;background:0 0;border:none;flex-shrink:0;width:32px;height:32px;position:relative}.quote-modal-close span{background:var(--text);width:16px;height:2px;position:absolute;top:50%;left:50%}.quote-modal-close span:first-child{transform:translate(-50%,-50%)rotate(45deg)}.quote-modal-close span:nth-child(2){transform:translate(-50%,-50%)rotate(-45deg)}.autoquote-mount{flex:1;min-height:0;overflow-y:auto}.autoquote-mount auto-quote{min-height:100%;display:block}.autoquote-loading{min-height:380px;color:var(--text-faint);justify-content:center;align-items:center;font-size:.9rem;display:flex}
