.site-nav{z-index:var(--z-nav);height:72px;transition:background-color var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out);border-bottom:1px solid #0000;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.site-nav.scrolled{-webkit-backdrop-filter:blur(12px);border-bottom-color:var(--border);background:#0f172ad9}.nav-inner{justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;display:flex}.logo{align-items:center;gap:var(--space-2);min-height:44px;display:inline-flex}.logo-icon-pill{border:1px solid var(--border-accent);background:var(--accent-dim);border-radius:999px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.logo-icon-inner{border-radius:50%;display:inline-flex;overflow:hidden}.logo-icon{object-fit:contain;width:30px;height:30px;display:block}.logo-wordmark{font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);letter-spacing:-.01em;white-space:nowrap}.logo-amp{color:var(--accent)}.logo-ideas{color:var(--text-muted)}.nav-links{align-items:center;gap:var(--space-2);display:none}.nav-links a{min-height:44px;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-muted);border-radius:var(--radius);transition:color var(--duration-fast) var(--ease-out);align-items:center;padding:0 14px;display:inline-flex}.nav-links a:hover,.nav-links a.nav-active{color:var(--text)}.nav-links a.nav-active{color:var(--soft-green)}.nav-links a.nav-book{margin-left:var(--space-2);background:var(--accent);color:var(--accent-text);transition:background-color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);padding:0 20px;font-weight:500}.nav-links a.nav-book:hover{background:var(--soft-green)}.nav-links a.nav-book:active{transform:scale(.98)}.hamburger{border:1px solid var(--border);border-radius:var(--radius);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;display:inline-flex}.hamburger-line{background:var(--text);width:18px;height:2px;transition:transform var(--duration-base) var(--ease-out), opacity var(--duration-base) var(--ease-out);border-radius:1px}.hamburger-line.open:first-child{transform:translateY(7px)rotate(45deg)}.hamburger-line.open:nth-child(2){opacity:0}.hamburger-line.open:nth-child(3){transform:translateY(-7px)rotate(-45deg)}@media (width>=900px){.nav-links{display:flex}.hamburger{display:none}}.mobile-menu{z-index:var(--z-menu);-webkit-backdrop-filter:blur(8px);opacity:0;visibility:hidden;transition:opacity var(--duration-base) var(--ease-out), visibility var(--duration-base) var(--ease-out);background:#0f172afa;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.mobile-menu.open{opacity:1;visibility:visible}.mobile-close{border:1px solid var(--border);border-radius:var(--radius);width:44px;height:44px;color:var(--text);background:0 0;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:16px;right:24px}.mobile-nav-links{align-items:center;gap:var(--space-4);text-align:center;flex-direction:column;display:flex}.mobile-nav-links a{min-height:44px;font-family:var(--font-display);font-size:var(--text-xl);color:var(--text);justify-content:center;align-items:center;padding:0 16px;font-weight:600;display:inline-flex}.mobile-nav-links a.nav-active{color:var(--soft-green)}.mobile-nav-links a.mobile-book{margin-top:var(--space-3);background:var(--accent);color:var(--accent-text);border-radius:var(--radius);font-family:var(--font-mono);font-size:var(--text-base);padding:0 28px}footer{border-top:1px solid var(--border);background:var(--surface)}.footer-main{gap:var(--space-6);padding-top:var(--space-7);padding-bottom:var(--space-7);display:grid}@media (width>=768px){.footer-main{grid-template-columns:2fr 1fr auto;align-items:start}}.footer-brand{gap:var(--space-3);flex-direction:column;align-items:flex-start;display:flex}.footer-logo-pill{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);display:inline-flex}.footer-logo-img{width:140px;height:auto}.footer-tagline{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-muted)}.footer-location{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.05em;color:var(--text-muted)}.footer-location:before{content:"// ";color:var(--text-faint)}.footer-nav ul{gap:var(--space-2);flex-direction:column;display:flex}.footer-nav a{min-height:44px;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-muted);transition:color var(--duration-fast) var(--ease-out);align-items:center;display:inline-flex}.footer-nav a:hover{color:var(--soft-green)}.social-link{border:1px solid var(--border);border-radius:var(--radius);width:44px;height:44px;color:var(--text-muted);transition:color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);justify-content:center;align-items:center;display:inline-flex}.social-link:hover{color:var(--soft-green);border-color:var(--border-accent)}.footer-bottom{border-top:1px solid var(--border);padding:var(--space-4) 0}.footer-copy{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted)}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/public-sans-vietnamese-wght-normal-CtlIRbEm.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/public-sans-latin-ext-wght-normal-MQgHevqp.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/public-sans-latin-wght-normal-DdeTHZLK.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0f172a;--surface:#111827;--surface-2:#1a2440;--accent:#22c55e;--accent-dim:#22c55e14;--accent-text:#0f172a;--blue:#3b82f6;--soft-green:#4ade80;--gradient:linear-gradient(135deg, #3b82f6, #22c55e);--text:#f8fafc;--text-muted:#94a3b8;--text-faint:#64748b;--border:#64748b2e;--border-accent:#22c55e4d;--radius:4px;--font-display:"Bricolage Grotesque Variable", "Avenir Next", "Segoe UI", sans-serif;--font-body:"Public Sans Variable", "Helvetica Neue", "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", "SF Mono", "Cascadia Mono", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:clamp(1.75rem, 3.5vw, 2.5rem);--text-display:clamp(2.75rem, 8.5vw, 6.5rem);--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--space-6:48px;--space-7:64px;--space-8:96px;--space-9:128px;--z-nav:40;--z-menu:50;--z-skip:100;--ease-out:cubic-bezier(.16, 1, .3, 1);--duration-fast:.15s;--duration-base:.25s;--duration-slow:.4s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}::selection{background:var(--accent);color:var(--accent-text)}button,[role=button],summary{cursor:pointer}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{font-family:var(--font-body);font-size:var(--text-base);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;line-height:1.05}a{color:inherit;text-decoration:none}ul[role=list],ol[role=list]{list-style:none}img{max-width:100%;height:auto}.container{max-width:1200px;margin:0 auto;padding:0 24px}@media (width>=768px){.container{padding:0 48px}}section{padding:var(--space-8) 0}section[id]{scroll-margin-top:88px}@keyframes section-rise{0%{transform:translateY(20px)}to{transform:none}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.section-header,.service-card,.step,.trust-item,.contact-grid{animation:section-rise 1ms var(--ease-out) both;animation-timeline:view();animation-range:entry 10% entry 45%}}}.skip-link{z-index:var(--z-skip);background:var(--accent);color:var(--accent-text);border-radius:var(--radius);padding:12px 20px;font-weight:600;position:absolute;top:-100%;left:16px}.skip-link:focus{top:16px}.section-header{margin-bottom:var(--space-7)}.section-label{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--accent);letter-spacing:.08em;text-transform:lowercase;margin-bottom:var(--space-3);display:inline-block}.section-label:before{content:"// ";color:var(--text-faint)}.section-title{font-size:var(--text-2xl);font-weight:700}.section-title em{color:var(--accent);font-style:normal}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius);min-height:48px;font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.03em;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);padding:12px 28px;font-weight:500;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background:var(--accent);color:var(--accent-text);border:1px solid var(--accent)}.btn-primary:hover{background:var(--soft-green);border-color:var(--soft-green)}.btn-ghost{color:var(--text);border:1px solid var(--border);background:0 0}.btn-ghost:hover{border-color:var(--border-accent);color:var(--soft-green)}.not-found,.error-page{align-items:center;min-height:60vh;display:flex}.not-found h1,.error-page h1{font-size:var(--text-2xl);margin-bottom:var(--space-3)}.not-found p,.error-page p{color:var(--text-muted);margin-bottom:var(--space-4)}.cta-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}
