@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-cyrillic-ext-wght-normal.d45eAU9y.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-cyrillic-wght-normal.BAAhND-U.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-greek-wght-normal.CmyJS8uq.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-vietnamese-wght-normal.Dg1JeJN0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-latin-ext-wght-normal.CIII54If.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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 Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-latin-wght-normal.IvpUvPa2.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-cyrillic-ext-wght-normal.c-5QAGAI.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-cyrillic-wght-normal.BMDVbyM7.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-greek-ext-wght-normal.BXZfsJY4.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-greek-wght-normal.Cc-u-6OI.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-vietnamese-wght-normal.BDs68eHQ.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-latin-ext-wght-normal.C8iNium2.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-latin-wght-normal.Bo_j9asI.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Sans 3 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-cyrillic-ext-wght-italic.F_qGh3gi.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Sans 3 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-cyrillic-wght-italic.BqzjwPnH.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Sans 3 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-greek-ext-wght-italic.DBLPjGyR.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:"Source Sans 3 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-greek-wght-italic.CXgqVJLg.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Sans 3 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-vietnamese-wght-italic.Obd_lscc.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Sans 3 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-latin-ext-wght-italic.B1mMy0tD.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-sans-3-latin-wght-italic.DLiStKT6.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--color-canvas: #050a30;--color-surface: #0e1438;--color-raised: #0b1137;--color-ink: #f4f2ff;--color-accent: #8d51ff;--color-brand: #b99aff;--color-brand-hover: #d0baff;--color-button: #7840db;--color-button-hover: #8548e6;--color-on-button: #ffffff;--color-muted: #adb2d0;--color-line: #30375c;--color-line-soft: rgba(116, 124, 159, .2);--color-line-strong: rgba(185, 154, 255, .55);--color-panel: #11183e;--color-outline: #747c9f;--color-selection: #58358e;--violet-glow: rgba(141, 81, 255, .24);--violet-tint: rgba(141, 81, 255, .13);--card-sheen: linear-gradient(180deg, rgba(255, 255, 255, .035), rgba(255, 255, 255, 0) 55%);--shadow-card: inset 0 1px 0 rgba(255, 255, 255, .05), 0 24px 48px -28px rgba(0, 0, 0, .8);--font-heading: "IBM Plex Sans Variable", "IBM Plex Sans", sans-serif;--font-body: "Source Sans 3 Variable", "Source Sans 3", sans-serif;--radius: 12px;--radius-lg: 20px;--space-section: clamp(4rem, 8vw, 6.5rem);--ease-out: cubic-bezier(.2, .7, .2, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;overflow-x:clip;background:var(--color-canvas);color:var(--color-ink);font-family:var(--font-body);font-size:1.0625rem;-webkit-font-smoothing:antialiased}main{overflow-x:clip}::-moz-selection{background:var(--color-selection);color:var(--color-ink)}::selection{background:var(--color-selection);color:var(--color-ink)}a{color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--color-brand);outline-offset:4px;border-radius:4px}img,svg{max-width:100%}.shell{width:min(100% - 2.5rem,1160px);margin-inline:auto}.section{position:relative;padding-block:var(--space-section)}.section-line{border-top:1px solid var(--color-line-soft)}.section-tint{background:linear-gradient(180deg,#11183e8c,#11183e00)}.section-intro{max-width:720px}.eyebrow{display:flex;width:-moz-fit-content;width:fit-content;align-items:center;gap:.6rem;margin:0 0 1.25rem;color:var(--color-brand);font-size:.78rem;line-height:1.5;font-weight:650;letter-spacing:.14em;text-transform:uppercase}.eyebrow:before{content:"";width:1.25rem;height:1px;background:currentColor;opacity:.7}.text-center .eyebrow{margin-inline:auto}.display,h1,h2,h3{font-family:var(--font-heading);font-weight:600}h1,h2,h3,p{margin-top:0}h1,h2,h3{text-wrap:balance}h1{font-size:clamp(2.75rem,6vw,4.75rem);line-height:1.04;letter-spacing:-.04em;margin-bottom:1.5rem}h2{font-size:clamp(2rem,4vw,3.1rem);line-height:1.1;letter-spacing:-.03em;margin-bottom:1.25rem}h3{font-size:1.4rem;line-height:1.25;letter-spacing:-.015em;margin-bottom:.65rem}p{line-height:1.7}.lede{color:var(--color-muted);font-size:clamp(1.125rem,1.6vw,1.25rem);line-height:1.65;max-width:640px;margin-bottom:0;text-wrap:pretty}.text-link{color:var(--color-brand);text-decoration-thickness:1px;text-underline-offset:5px;font-weight:600;transition:color .18s}.text-link:hover{color:var(--color-brand-hover)}.small{font-size:.875rem;color:var(--color-muted)}.body-copy{color:var(--color-muted);font-size:1.0625rem}.body-copy p:last-child{margin-bottom:0}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:.85rem 1.25rem;margin-top:2.25rem}.button{min-height:46px;display:inline-flex;justify-content:center;align-items:center;gap:.6rem;padding:.75rem 1.2rem;border:1px solid transparent;border-radius:8px;font-size:.9375rem;font-weight:600;text-decoration:none;line-height:1.3;transition:background-color .18s,border-color .18s,color .18s,transform .18s var(--ease-out),box-shadow .18s}.button svg{width:18px;height:18px;flex-shrink:0;transition:transform .18s var(--ease-out)}.button-primary{background:var(--color-button);color:var(--color-on-button);box-shadow:inset 0 1px #ffffff29}.button-primary:hover{background:var(--color-button-hover)}.button-secondary{background:#ffffff05;border-color:var(--color-outline);color:var(--color-ink)}.button-secondary:hover{background:var(--color-panel);border-color:var(--color-brand)}.button-ghost{color:var(--color-brand);padding-inline:.2rem}.button-lg{min-height:52px;padding:.9rem 1.45rem;font-size:1rem}.skip-link{position:fixed;top:-100px;left:1rem;z-index:100;background:var(--color-button);color:var(--color-on-button);padding:.8rem 1rem;border-radius:6px}.skip-link:focus{top:1rem}a.arrow-link,.back-link,.actions .text-link,.cta-actions .text-link{padding-block:.75rem;margin-block:-.75rem}.card{position:relative;background:var(--card-sheen),var(--color-raised);border:1px solid var(--color-line);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:clamp(1.5rem,2.4vw,2rem)}a.card{display:flex;flex-direction:column;text-decoration:none;transition:border-color .2s,transform .25s var(--ease-out)}a.card:hover{border-color:var(--color-line-strong)}.glow{position:relative;isolation:isolate}.glow:before{content:"";position:absolute;z-index:-1;pointer-events:none;top:-18rem;left:50%;width:min(1200px,140vw);aspect-ratio:1.7;transform:translate(-62%);background:radial-gradient(closest-side,var(--violet-glow),rgba(141,81,255,0))}.pill{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .7rem;border:1px solid var(--color-line);border-radius:999px;color:var(--color-muted);font-size:.78rem;line-height:1.3;font-weight:550}.pill-accent{border-color:#b99aff59;background:var(--violet-tint);color:var(--color-brand)}.icon-tile{width:46px;height:46px;display:grid;place-items:center;border-radius:10px;border:1px solid rgba(185,154,255,.28);background:var(--violet-tint);color:var(--color-brand);margin-bottom:1.4rem}.icon-tile svg{width:23px;height:23px}.arrow-link{display:inline-flex;align-items:center;gap:.45rem;color:var(--color-brand);font-size:.9375rem;font-weight:600;text-decoration:none}.arrow-link svg{width:18px;height:18px;transition:transform .2s var(--ease-out)}.arrow-link:hover{color:var(--color-brand-hover)}.js [data-reveal]{opacity:0;transform:translateY(14px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out);transition-delay:var(--reveal-delay, 0ms)}.js [data-reveal].is-visible{opacity:1;transform:none}.site-header{position:sticky;top:0;z-index:50;background:#050a30c7;border-bottom:1px solid var(--color-line-soft);-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%);transition:border-color .25s,background-color .25s}.site-header[data-scrolled]{background:#050a30e6;border-bottom-color:var(--color-line)}.nav-row{position:relative;min-height:68px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0}.brand-lockup{display:inline-flex;align-items:center;gap:.8rem;text-decoration:none;color:var(--color-accent)}a.brand-lockup{min-height:44px}.brand-lockup .mountain-mark{width:36px;height:36px}.wordmark{color:var(--color-ink);font-family:var(--font-heading);font-size:1.7rem;font-weight:500;letter-spacing:-.03em;line-height:1}.menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-width:46px;min-height:44px;padding:.5rem .9rem;border:1px solid var(--color-outline);border-radius:8px;background:transparent;color:var(--color-ink);font:inherit;font-size:.9rem;font-weight:550}.menu-toggle[aria-expanded=true]{border-color:var(--color-brand);background:var(--violet-tint)}.nav-items{display:none;width:100%;padding:.25rem 0 1rem}.nav-items[data-open]{display:block}.nav-items ul{margin:0;padding:.5rem;list-style:none;display:flex;flex-direction:column;align-items:stretch;gap:.25rem;border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-raised)}.nav-link{display:block;padding:.85rem 1rem;border-radius:8px;color:var(--color-muted);font-size:1.05rem;font-weight:500;text-decoration:none;transition:color .18s,background-color .18s}.nav-link:hover{color:var(--color-ink);background:#ffffff0d}.nav-link[aria-current=page]{color:var(--color-ink);background:var(--violet-tint);box-shadow:inset 0 0 0 1px #b99aff40}.nav-items .button{width:100%;margin-top:.35rem}.hero{position:relative;isolation:isolate;padding-block:clamp(3.5rem,7vw,6rem) clamp(4rem,8vw,6.5rem)}.hero:before{content:"";position:absolute;z-index:-1;pointer-events:none;top:-24rem;left:-20rem;width:1100px;aspect-ratio:1.3;background:radial-gradient(closest-side,#8d51ff33,#8d51ff00)}.hero-grid{display:grid;grid-template-columns:1fr;gap:2.75rem;align-items:center}.hero h1{max-width:550px;font-size:clamp(3.1rem,13vw,4.8rem);line-height:1.01;letter-spacing:-.05em}.hero h1 span{color:var(--color-brand)}.hero .lede{max-width:540px}.hero .actions{flex-direction:column;align-items:stretch}.hero-art{position:relative;isolation:isolate;aspect-ratio:1;width:100%;border:1px solid var(--color-line);border-radius:var(--radius-lg);overflow:hidden;background:linear-gradient(180deg,#080e34,#0d1340);box-shadow:var(--shadow-card)}.hero-rings{position:absolute;inset:0;width:100%;height:100%;z-index:-1;color:var(--color-brand)}.hero-dawn{position:absolute;z-index:-1;left:50%;bottom:-38%;width:135%;aspect-ratio:1.15;transform:translate(-50%);background:radial-gradient(closest-side,#8d51ff8c,#7840db2e 55%,#8d51ff00)}.hero-horizon{position:absolute;left:0;right:0;bottom:36%;height:1px;background:linear-gradient(90deg,#b99aff00,#b99aff8c,#b99aff00)}.hero-mark{position:absolute;left:50%;bottom:36%;width:44%;transform:translate(-50%,9%);color:var(--color-accent)}.hero-chips{position:absolute;left:.9rem;right:.9rem;bottom:.9rem;display:grid;grid-template-columns:1fr 1fr;gap:.6rem;list-style:none;margin:0;padding:0}.hero-chip{display:flex;flex-direction:column;gap:.2rem;height:100%;padding:.75rem .85rem;border:1px solid rgba(185,154,255,.22);border-radius:var(--radius);background:#090e32c7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 18px 36px -18px #000c;text-decoration:none;transition:border-color .2s,transform .25s var(--ease-out)}.hero-chip:hover{border-color:var(--color-line-strong)}.hero-chip-kind{display:inline-flex;align-items:center;gap:.45rem;color:var(--color-brand);font-size:.75rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase}.hero-chip-kind:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-accent)}.hero-chip strong{font-family:var(--font-heading);font-size:.95rem;font-weight:600;letter-spacing:-.01em}.hero-chip-meta{display:none;color:var(--color-muted);font-size:.8rem}.section-heading-row{display:flex;flex-direction:column;align-items:start;justify-content:space-between;gap:1rem;margin-bottom:2.75rem}.section-heading-row h2{margin-bottom:0}.project-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}.project-card{padding:.75rem;min-width:0}.project-media{position:relative;border-radius:8px;overflow:hidden;background:var(--color-panel);aspect-ratio:16 / 11;box-shadow:inset 0 0 0 1px #ffffff0f}.project-media>img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:left top;object-position:left top;transition:transform .5s var(--ease-out)}.project-copy{display:flex;flex-direction:column;flex:1;padding:1.4rem .9rem .9rem}.project-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.project-copy h2,.project-copy h3{font-size:1.75rem;line-height:1.2;margin-bottom:.6rem}.project-copy p{color:var(--color-muted);font-size:1rem;max-width:540px;margin-bottom:1.25rem}.project-copy .arrow-link{margin-top:auto}.project-card.project-card-large{display:grid;grid-template-columns:1fr;align-items:center;gap:1.5rem}.project-card-large .project-copy .arrow-link{margin-top:0}.project-stack{display:grid;gap:1.75rem}.post-list{display:grid;gap:1rem;max-width:820px}.post-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(290px,100%),1fr));gap:1.5rem}.post-card{min-width:0}.post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;color:var(--color-muted);font-size:.85rem;margin-bottom:1rem}.post-meta span:first-child{color:var(--color-brand);font-weight:600}.post-meta span+span:before{content:"·";margin-right:1rem;color:var(--color-outline)}.post-card h2,.post-card h3{font-size:1.5rem;line-height:1.25;margin-bottom:.65rem}.post-grid .post-card h3{font-size:1.35rem}.post-card p{color:var(--color-muted);font-size:1rem;margin-bottom:1.4rem}.post-card .arrow-link{margin-top:auto}.post-empty{color:var(--color-muted);max-width:820px}.post-header{padding-top:2rem}.post-header .eyebrow{margin-top:2.5rem}.post-header .eyebrow a{text-decoration:none}.post-header .eyebrow a:hover{text-decoration:underline;text-underline-offset:4px}.post-header .small{margin:1.25rem 0 0}.post-body{padding-block:3rem var(--space-section)}.back-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--color-muted);font-size:.9rem;font-weight:550;text-decoration:none;transition:color .18s}.back-link:hover{color:var(--color-brand)}.back-link svg{width:18px;height:18px}.product-graphic{position:relative;isolation:isolate;overflow:hidden;width:100%;height:100%;min-height:0;padding:clamp(1.25rem,3vw,2.75rem);background:linear-gradient(180deg,#0a1037,#10163f);color:var(--color-ink);display:flex;flex-direction:column;justify-content:space-between;gap:1rem}.product-graphic:before{content:"";position:absolute;inset:0;z-index:-2;background-image:linear-gradient(rgba(185,154,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(185,154,255,.07) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(ellipse at 50% 55%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse at 50% 55%,#000 20%,transparent 75%)}.product-graphic:after{content:"";position:absolute;z-index:-1;left:50%;top:55%;width:120%;aspect-ratio:1.6;transform:translate(-50%,-50%);background:radial-gradient(closest-side,#8d51ff52,#8d51ff00)}.product-graphic-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;color:var(--color-muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.product-graphic-top .mountain-mark{width:28px;height:28px}.product-graphic-name{font-family:var(--font-heading);font-size:clamp(2.2rem,11vw,4.5rem);font-weight:600;letter-spacing:-.045em;line-height:1.02}.product-graphic-bottom{display:flex;flex-wrap:wrap;gap:.5rem}.service-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:2.75rem}.service-item p{color:var(--color-muted);font-size:1rem;margin-bottom:1.4rem}.service-item .arrow-link{margin-top:auto}.service-list{display:grid;gap:1.5rem;padding-bottom:var(--space-section)}.service-detail{display:grid;grid-template-columns:1fr;gap:clamp(1.5rem,4vw,3.5rem);padding:clamp(1.5rem,3.5vw,3rem);scroll-margin-top:7rem}.service-detail h2{font-size:clamp(1.9rem,3.4vw,2.6rem)}.service-detail p{color:var(--color-muted)}.service-detail .small strong{color:var(--color-ink);font-weight:600}.service-includes{border:1px solid var(--color-line-soft);border-radius:10px;background:#050a308c;padding:1.5rem 1.6rem;align-self:start}.service-includes .eyebrow{margin-bottom:.75rem}.check-list{list-style:none;padding:0;margin:0}.check-list li{display:flex;gap:.8rem;padding-block:.55rem;line-height:1.55}.check-list li+li{border-top:1px solid var(--color-line-soft)}.check-list svg{width:18px;height:18px;color:var(--color-brand);flex-shrink:0;margin-top:.2rem}.process-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;list-style:none;padding:0;margin:2.75rem 0 0;counter-reset:step}.process-grid li{counter-increment:step}.process-grid li:before{content:counter(step,decimal-leading-zero);display:block;margin-bottom:1.5rem;color:var(--color-brand);font-family:var(--font-heading);font-size:2.25rem;font-weight:600;letter-spacing:-.03em;line-height:1}.process-grid h3{font-size:1.25rem;margin-top:0}.process-grid p{font-size:1rem;color:var(--color-muted);margin-bottom:0}.faq{margin-top:2.75rem;max-width:820px;padding:.5rem clamp(1.25rem,3vw,2rem)}.faq details+details{border-top:1px solid var(--color-line-soft)}.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-block:1.3rem;font-size:1.0625rem;font-weight:600;transition:color .18s}.faq summary:hover{color:var(--color-brand-hover)}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"";flex-shrink:0;width:9px;height:9px;margin-right:.35rem;border-right:2px solid var(--color-brand);border-bottom:2px solid var(--color-brand);transform:translateY(-3px) rotate(45deg);transition:transform .25s var(--ease-out)}.faq details[open] summary:after{transform:translateY(2px) rotate(-135deg)}.faq details p{margin:-.25rem 2rem 1.4rem 0;color:var(--color-muted);font-size:1rem}.cta{padding-block:clamp(2rem,5vw,4rem) var(--space-section)}.cta-panel{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:2.5rem;padding:clamp(2rem,5vw,4rem);border:1px solid rgba(185,154,255,.28);border-radius:var(--radius-lg);background:linear-gradient(180deg,#0c1239,#121a48);box-shadow:var(--shadow-card)}.cta-panel:before{content:"";position:absolute;z-index:-1;left:30%;bottom:-120%;width:120%;aspect-ratio:1.6;transform:translate(-50%);background:radial-gradient(closest-side,#8d51ff73,#8d51ff00)}.cta-mark{position:absolute;z-index:-1;right:-2%;bottom:-14%;width:200px;color:var(--color-accent);opacity:.12}.cta-panel h2{margin-bottom:.85rem;font-size:clamp(2rem,4.2vw,3.25rem)}.cta-panel p{color:var(--color-muted);font-size:1.125rem;max-width:560px;margin-bottom:0}.cta-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;flex-shrink:0;width:100%}.cta-actions .button{width:100%}.cta-actions .text-link{font-size:.95rem}.site-footer{position:relative;isolation:isolate;overflow:hidden;border-top:1px solid var(--color-line-soft);padding:4rem 0 0;background:linear-gradient(180deg,#11183e73,#050a3000 70%)}.site-footer:before{content:"";position:absolute;z-index:-1;top:-1px;left:50%;width:min(900px,90%);height:1px;transform:translate(-50%);background:linear-gradient(90deg,#b99aff00,#b99aff99,#b99aff00)}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem 1rem;padding-bottom:3.5rem}.footer-grid>div:first-child{grid-column:1 / -1}.footer-description{color:var(--color-muted);font-size:1rem;max-width:320px;margin:1.25rem 0 0}.footer-title{font-family:var(--font-body);color:var(--color-ink);font-size:.78rem;font-weight:650;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1.1rem}.footer-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0;font-size:.975rem;color:var(--color-muted)}.footer-list li{display:flex;align-items:center;min-height:44px}.footer-list a{display:flex;align-items:center;align-self:stretch;text-decoration:none;transition:color .18s}.footer-list a:hover{color:var(--color-brand)}.footer-bottom{display:flex;flex-direction:column;justify-content:space-between;gap:1rem;border-top:1px solid var(--color-line-soft);padding-block:1.6rem;color:var(--color-muted);font-size:.85rem}.footer-bottom p{margin-bottom:0}.footer-bottom-links{display:flex;flex-wrap:wrap;gap:0 1.4rem}.footer-bottom a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;transition:color .18s}.footer-bottom a:hover{color:var(--color-brand)}.two-column{display:grid;grid-template-columns:1fr;gap:3rem}.value-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:2.75rem}.value-grid p{color:var(--color-muted);margin-bottom:0}.stack-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;margin-top:2.75rem}.stack-card{display:flex;flex-direction:column}.stack-card h3{margin-bottom:.5rem;font-size:1.25rem}.stack-card p{margin-bottom:1.25rem;color:var(--color-muted);font-size:1rem}.stack-list{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;margin:auto 0 0;padding:1.25rem 0 0;border-top:1px solid var(--color-line-soft)}.stack-list li{padding:.35rem .75rem;border-radius:8px;background:var(--violet-tint);color:var(--color-ink);font-size:.9rem;font-weight:550;line-height:1.3}.testimonial{margin:2.5rem 0 0;overflow:hidden;isolation:isolate;border-color:#b99aff47}.testimonial-mark{position:absolute;z-index:-1;top:1.25rem;right:1.25rem;width:44px;height:44px;color:var(--color-brand);opacity:.35}.testimonial blockquote{margin:0 0 1.25rem;max-width:820px}.testimonial blockquote p{margin:0;font-family:var(--font-heading);font-size:clamp(1.2rem,2.4vw,1.5rem);line-height:1.45;font-weight:500;color:var(--color-ink)}.testimonial figcaption{display:flex;flex-direction:column}.testimonial-name{font-weight:650}.testimonial-source{display:inline-flex;align-items:center;min-height:44px;width:-moz-fit-content;width:fit-content;color:var(--color-muted);font-size:.9375rem;text-decoration:underline;text-decoration-color:var(--color-line);text-underline-offset:4px}.testimonial-source:hover{color:var(--color-brand)}.contact-grid{display:grid;grid-template-columns:1fr;gap:clamp(2.5rem,6vw,5rem);align-items:start}.contact-subhead{font-size:1.4rem;margin-bottom:.5rem}.contact-socials{display:flex;flex-wrap:wrap;gap:.75rem}.note-panel{align-self:start;overflow:hidden;isolation:isolate}.note-panel:before{content:"";position:absolute;z-index:-1;top:-55%;right:-40%;width:120%;aspect-ratio:1;background:radial-gradient(closest-side,#8d51ff38,#8d51ff00)}.note-panel p{color:var(--color-muted);font-size:1rem}.note-panel-footer{margin:1.75rem 0 0;padding-top:1.5rem;border-top:1px solid var(--color-line-soft)}.case-header{padding-top:2.5rem}.case-header .eyebrow{margin-top:2.5rem}.case-visual{position:relative;margin-top:3rem;padding:.5rem;border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--card-sheen),var(--color-raised);box-shadow:var(--shadow-card)}.case-visual>img,.case-visual>.product-graphic{border-radius:10px}.case-visual>img{width:100%;height:auto;display:block}.case-visual .product-graphic{min-height:300px;padding:1.75rem}.case-visual .product-graphic-name{font-size:clamp(3.5rem,8vw,7rem)}.case-body{display:grid;grid-template-columns:1fr;gap:3rem;padding-block:var(--space-section)}.case-facts{display:grid;grid-template-columns:1fr 1fr;-moz-column-gap:1.25rem;column-gap:1.25rem;margin:0;padding:.5rem 1.5rem}.case-facts>div{padding-block:1rem}.case-facts>div:nth-child(n+3){border-top:1px solid var(--color-line-soft)}.case-facts dt,.fact-list dt{font-size:.78rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase;color:var(--color-brand);margin-bottom:.35rem}.case-facts dd,.fact-list dd{margin:0;font-size:1rem;line-height:1.55}.fact-list{max-width:820px;margin:2.5rem 0 0;padding:.5rem 1.5rem}.fact-list>div{padding-block:1rem}.fact-list>div+div{border-top:1px solid var(--color-line-soft)}.reading{max-width:740px;margin-inline:auto}.prose{--tw-prose-body: #c3c7df;--tw-prose-headings: var(--color-ink);--tw-prose-links: var(--color-brand);--tw-prose-bold: var(--color-ink);--tw-prose-bullets: var(--color-brand);--tw-prose-counters: var(--color-brand);--tw-prose-hr: var(--color-line);--tw-prose-quotes: var(--color-ink);--tw-prose-quote-borders: var(--color-accent);--tw-prose-code: var(--color-ink);--tw-prose-th-borders: var(--color-line);--tw-prose-td-borders: var(--color-line-soft);max-width:none;line-height:1.8;overflow-wrap:break-word}.prose h2{font-size:1.9rem;letter-spacing:-.025em}.prose h3{font-size:1.4rem}.prose a{text-underline-offset:4px;text-decoration-thickness:1px}.prose a:hover{color:var(--color-brand-hover)}.prose blockquote{font-style:normal;font-weight:500;border-left-width:3px}.prose :where(code):not(:where(pre *)){padding:.15em .4em;border-radius:5px;background:var(--color-panel);border:1px solid var(--color-line-soft);font-weight:500}.prose :where(code):not(:where(pre *)):before,.prose :where(code):not(:where(pre *)):after{content:none}.prose pre{background:var(--color-raised);border:1px solid var(--color-line);border-radius:var(--radius)}.prose img{border-radius:var(--radius)}.prose>:first-child{margin-top:0}.product-hero{display:grid;grid-template-columns:1fr;gap:clamp(2.5rem,5vw,4.5rem);align-items:center}.product-hero h1{font-size:clamp(2.75rem,5.2vw,4.4rem)}.product-hero .project-media{aspect-ratio:16 / 12;border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.product-hero .product-shot{aspect-ratio:16 / 11}.product-hero .product-shot>img{-o-object-position:center;object-position:center}.app-store-badge{display:inline-flex;flex-shrink:0;border-radius:9px;line-height:0;transition:transform .2s var(--ease-out)}.app-store-badge img{height:50px;width:auto}.app-store-badge:focus-visible{outline:2px solid var(--color-brand);outline-offset:3px}.screen-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:2.75rem;max-width:22rem;margin-inline:auto}.screen{margin:0}.screen img{display:block;width:100%;height:auto;border-radius:28px;border:1px solid var(--color-line);box-shadow:var(--shadow-card)}.screen figcaption{margin-top:1rem;color:var(--color-muted);font-size:1rem;line-height:1.5}.screen figcaption strong{display:block;color:var(--color-ink);font-family:var(--font-heading);font-size:1.1rem;font-weight:600}.status{display:inline-flex;align-items:center;gap:.55rem;padding:.35rem .8rem;border:1px solid rgba(185,154,255,.35);border-radius:999px;background:var(--violet-tint);color:var(--color-brand);font-size:.85rem;font-weight:600;margin-bottom:1.5rem}.status:before{content:"";height:7px;width:7px;border-radius:50%;background:var(--color-brand);box-shadow:0 0 0 4px #b99aff2e}.feature-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;margin-top:2.75rem}.feature-grid h3{font-size:1.25rem}.feature-grid p{font-size:1rem;color:var(--color-muted);margin-bottom:0}.tier-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:2.75rem}.tier-panel h3{display:flex;align-items:center;justify-content:space-between;gap:1rem}.tier-panel ul{padding-left:1.1rem;color:var(--color-muted);font-size:1rem;line-height:1.7;margin-bottom:0}.tier-panel li+li{margin-top:.5rem}.tier-panel li::marker{color:var(--color-brand)}.tier-panel-accent{border-color:#b99aff66;background:var(--card-sheen),linear-gradient(180deg,#120f45,#0d1340)}.tier-panel-accent:before{content:"";position:absolute;top:-1px;left:1.5rem;right:1.5rem;height:2px;border-radius:2px;background:var(--color-accent)}.product-intro{padding-top:clamp(2rem,5vw,var(--space-section))}.product-hero .status{margin-bottom:1.25rem}.product-hero .product-for{margin:1rem 0 0;font-size:1rem}.product-hero .actions{margin-top:1.75rem}.offer-panel{display:flex;flex-direction:column;align-items:flex-start;gap:1.25rem;margin-top:1.5rem}.offer-panel p{margin:0}.offer-panel p+p{margin-top:.5rem}.offer-panel strong{color:var(--color-ink);font-weight:600}.offer-panel .app-store-badge{flex-shrink:0}.not-found{min-height:60vh;padding-block:var(--space-section)}.tool-grid{list-style:none;display:grid;gap:1.25rem;margin:2.75rem 0 0;padding:0}.tool-grid>li{display:flex}.tool-card{flex:1}.tool-card h2,.tool-card h3{margin-bottom:.6rem;font-size:1.5rem}.tool-grid-home{margin-top:0}.tool-card p{margin-bottom:1.25rem;color:var(--color-muted)}.tool-meta{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.5rem;padding:0}.tool-card .arrow-link{margin-top:auto;width:-moz-fit-content;width:fit-content}.tool-card-next{border-style:dashed;background:transparent;box-shadow:none}.tool-layout{display:grid;gap:1.5rem;align-items:start}.tool-form{display:grid;gap:1.75rem}.tool-form fieldset{border:0;margin:0;padding:0;display:grid;gap:.5rem;min-width:0}.tool-form legend{margin-bottom:.5rem;color:var(--color-brand);font-size:.78rem;font-weight:650;letter-spacing:.14em;text-transform:uppercase}.field{display:grid;gap:.35rem;font-size:.9375rem;font-weight:600}.field input,.field select{width:100%;min-height:44px;padding:.55rem .8rem;border:1px solid var(--color-outline);border-radius:8px;background:var(--color-canvas);color:var(--color-ink);font:inherit;font-weight:400}.field input:focus,.field select:focus{border-color:var(--color-brand);outline:none;box-shadow:0 0 0 2px var(--color-selection)}.choice{display:flex;align-items:center;gap:.7rem;min-height:44px;font-size:1rem;cursor:pointer}.choice input{width:20px;height:20px;flex-shrink:0;accent-color:var(--color-accent)}.tool-output{display:grid;gap:1rem;min-width:0}.tool-actions{display:flex;flex-wrap:wrap;gap:.6rem}.tool-actions .button{min-height:44px;font:inherit;font-size:.9375rem;font-weight:600;cursor:pointer}.tool-notice{padding:1rem 1.25rem;border:1px solid var(--color-line-strong);border-radius:var(--radius);background:var(--violet-tint);font-size:.9375rem;color:var(--color-ink)}.tool-notice p{margin:0 0 .5rem}.tool-notice ul{margin:0;padding-left:1.2rem;list-style:disc;color:var(--color-muted)}.tool-notice a{color:var(--color-brand);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.tool-next{padding:1rem 1.25rem;border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-raised);font-size:.9375rem}.tool-next p{margin:0 0 .75rem;color:var(--color-muted)}.tool-next p strong{color:var(--color-ink)}.tool-next p a{color:var(--color-brand);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.tool-next-links{display:flex;flex-wrap:wrap;gap:.25rem 1.5rem}.money-input{display:flex;align-items:center;gap:.5rem;padding-left:.8rem;border:1px solid var(--color-outline);border-radius:8px;background:var(--color-canvas);font-weight:400;color:var(--color-muted)}.money-input-suffix{padding:0 .8rem 0 0}.money-input:focus-within{border-color:var(--color-brand);box-shadow:0 0 0 2px var(--color-selection)}.field .money-input input{border:0;padding-left:0;background:transparent;box-shadow:none}.field .money-input-suffix input{padding-left:.8rem}.field-hint{color:var(--color-muted);font-size:.875rem;font-weight:400}.tool-more summary{display:flex;align-items:center;min-height:44px;cursor:pointer;color:var(--color-brand);font-weight:600}.tool-more fieldset{margin-top:.75rem}.fee-form{gap:1.25rem}.fee-pair{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.fee-pair .field{min-width:0}.fee-form .field>span:first-child{font-size:.875rem;color:var(--color-muted);font-weight:600}.field-hero .money-input{border-color:var(--color-line-strong)}.field-hero .money-input input{font-family:var(--font-heading);font-size:1.25rem;font-weight:600}.fee-form .field-hint{margin:.1rem 0 0}.fee-more{display:grid;gap:.75rem;padding-top:.25rem;border-top:1px solid var(--color-line-soft)}.fee-more fieldset{gap:.6rem}.fee-more fieldset[hidden]{display:none}.fee-more-toggle{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15rem .6rem;min-height:44px;padding:.5rem 0;border:0;background:none;color:var(--color-brand);font:inherit;font-weight:600;text-align:left;cursor:pointer}.fee-more-toggle:after{content:"";align-self:center;width:14px;height:14px;margin-left:auto;background:linear-gradient(currentColor,currentColor) center / 14px 2px no-repeat,linear-gradient(currentColor,currentColor) center / 2px 14px no-repeat;transition:transform .25s var(--ease-out)}.fee-more-toggle[aria-expanded=true]:after{transform:rotate(45deg)}.fee-more-hint{color:var(--color-muted);font-size:.875rem;font-weight:400}.switch{position:relative;display:flex;align-items:center;gap:.75rem;min-height:44px;font-size:.9375rem;cursor:pointer}.switch input{position:absolute;opacity:0;width:44px;height:26px;margin:0;cursor:pointer}.switch-track{flex-shrink:0;width:44px;height:26px;padding:3px;border-radius:999px;background:var(--color-line);transition:background-color .2s}.switch-track span{display:block;width:20px;height:20px;border-radius:50%;background:var(--color-ink);transition:transform .2s var(--ease-out)}.switch input:checked+.switch-track{background:var(--color-button)}.switch input:checked+.switch-track span{transform:translate(18px)}.switch input:focus-visible+.switch-track{box-shadow:0 0 0 2px var(--color-canvas),0 0 0 4px var(--color-brand)}.fee-verdict{position:relative;overflow:hidden;padding:1.35rem 1.5rem;border-color:var(--color-line-strong);background:radial-gradient(120% 140% at 100% 0%,var(--violet-glow),transparent 60%),var(--color-surface)}.fee-verdict p{margin:0}.fee-verdict-label{color:var(--color-brand);font-size:.8rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase}.fee-verdict-amount{margin:.2rem 0 .35rem!important;font-family:var(--font-heading);font-size:clamp(2.5rem,9vw,3.25rem);font-weight:600;line-height:1.05;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.fee-verdict-note{color:var(--color-muted);font-size:.9375rem}.fee-verdict-note strong{color:var(--color-ink)}.is-loss{color:var(--color-muted)!important}.fee-rank{list-style:none;display:grid;gap:.6rem;margin:0;padding:0;counter-reset:none}.fee-row{padding:0;overflow:hidden;transition:border-color .2s}.fee-row-best{border-color:#b99aff73}.fee-row-head{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"rank name money" "bar bar bar";align-items:center;gap:.55rem .75rem;width:100%;min-height:44px;padding:.9rem 1.1rem;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.fee-row-head:hover .fee-row-name{color:var(--color-brand)}.fee-row-head:focus-visible{outline:2px solid var(--color-brand);outline-offset:-2px;border-radius:var(--radius)}.fee-row-rank{grid-area:rank;display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:50%;background:var(--color-raised);border:1px solid var(--color-line);color:var(--color-muted);font-size:.8rem;font-weight:650}.fee-row-best .fee-row-rank{background:var(--color-button);border-color:transparent;color:var(--color-on-button)}.fee-row-name{grid-area:name;min-width:0;font-family:var(--font-heading);font-weight:600;font-size:1.05rem;transition:color .2s}.fee-row-last{white-space:nowrap}.fee-row-chevron{display:inline-block;width:7px;height:7px;margin:0 0 .2rem .55rem;border:solid var(--color-muted);border-width:0 2px 2px 0;transform:rotate(45deg);vertical-align:middle;transition:transform .25s var(--ease-out)}.fee-row-head[aria-expanded=true] .fee-row-chevron{transform:translateY(3px) rotate(-135deg)}.fee-row-money{grid-area:money;display:grid;justify-items:end;line-height:1.2}.fee-row-profit{font-family:var(--font-heading);font-size:1.2rem;font-weight:600;font-variant-numeric:tabular-nums}.fee-row-sub{color:var(--color-muted);font-size:.8rem;font-variant-numeric:tabular-nums}.fee-bar{grid-area:bar;display:flex;height:8px;overflow:hidden;border-radius:999px;background:var(--color-raised)}.fee-bar>span{height:100%;transition:width .45s var(--ease-out)}.fee-bar-profit{background:var(--color-brand)}.fee-bar-fees{background:#e0697d}.fee-bar-label{background:#6f7ab8}.fee-bar-cost{background:#3c4573}.fee-row-body{padding:0 1.1rem 1rem;animation:fee-open .25s var(--ease-out)}.fee-row-body[hidden]{display:none}@keyframes fee-open{0%{opacity:0;transform:translateY(-4px)}}.fee-legend{display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin:0;color:var(--color-muted);font-size:.8125rem}.fee-legend span{display:inline-flex;align-items:center;gap:.4rem}.fee-legend i{width:10px;height:10px;border-radius:3px}.fee-lines{display:grid;gap:.3rem;margin:0 0 .75rem;padding-top:.75rem;border-top:1px solid var(--color-line-soft);font-size:.9375rem}.fee-lines div{display:flex;justify-content:space-between;gap:1rem}.fee-lines dt{color:var(--color-muted)}.fee-lines dd{margin:0;font-variant-numeric:tabular-nums}.fee-lines .fee-subtotal{padding-top:.3rem;border-top:1px solid var(--color-line-soft);color:var(--color-ink);font-weight:600}.fee-lines .fee-subtotal dt{color:var(--color-ink)}.fee-rule{margin:0;color:var(--color-muted);font-size:.875rem}.fee-rule a{color:var(--color-brand);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;white-space:nowrap}.fee-dock{position:fixed;left:50%;bottom:calc(.75rem + env(safe-area-inset-bottom));z-index:40;display:flex;align-items:center;gap:.75rem;width:min(calc(100% - 2rem),26rem);min-height:52px;padding:.55rem .65rem .55rem 1rem;border:1px solid var(--color-line-strong);border-radius:999px;background:#0e1438eb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 18px 40px -16px #000000e6;color:var(--color-ink);font:inherit;cursor:pointer;opacity:0;pointer-events:none;transform:translate(-50%,120%);transition:transform .35s var(--ease-out),opacity .25s}.fee-dock.is-shown{opacity:1;pointer-events:auto;transform:translate(-50%)}.fee-dock-label{min-width:0;overflow:hidden;color:var(--color-muted);font-size:.875rem;white-space:nowrap;text-overflow:ellipsis}.fee-dock-amount{font-family:var(--font-heading);font-size:1.15rem;font-weight:600;font-variant-numeric:tabular-nums}.fee-dock-cta{margin-left:auto;padding:.45rem .8rem;border-radius:999px;background:var(--color-button);color:var(--color-on-button);font-size:.8125rem;font-weight:650;white-space:nowrap}@media (min-width: 961px){.fee-dock{display:none}}.fee-app{margin-top:1.5rem}.fee-app .actions{margin-top:0}.tool-preview{font-size:1rem}.tool-preview h2{margin-top:0;font-size:1.6rem}.tool-preview h3{margin-top:1.75rem;font-size:1.15rem}@media (min-width: 441px){.hero .actions{flex-direction:row;align-items:center}.hero-chip-meta{display:block}.process-grid,.feature-grid{grid-template-columns:1fr 1fr}.screen-grid{grid-template-columns:1fr 1fr;max-width:none;gap:1.25rem}.cta-actions,.cta-actions .button{width:auto}.product-graphic-top{letter-spacing:.12em}}@media (min-width: 761px){.shell{width:min(100% - 3rem,1160px)}.nav-row{min-height:76px;flex-wrap:nowrap;gap:2rem}.menu-toggle{display:none}.nav-items,.nav-items[data-open]{display:block;width:auto;padding:0}.nav-items ul{flex-direction:row;align-items:center;gap:.35rem;padding:0;border:0;border-radius:0;background:none}.nav-items li:last-child{margin-left:.9rem}.nav-link{padding:.5rem .9rem;border-radius:999px;font-size:.95rem}.nav-items .button{width:auto;margin-top:0}.hero-grid{grid-template-columns:1.2fr 1fr;gap:2.5rem}.hero h1{max-width:700px;font-size:clamp(3rem,7vw,4.5rem)}.hero-art{aspect-ratio:5 / 6;max-height:600px}.hero-horizon{bottom:30%}.hero-mark{width:52%;bottom:30%}.hero-chips{position:static;display:block}.hero-chip{position:absolute;height:auto;padding:.9rem 1.1rem}.hero-chip-kind{letter-spacing:.08em}.hero-chip strong{font-size:1.05rem}.hero-chips li:nth-child(1) .hero-chip{top:1.5rem;left:1.5rem}.hero-chips li:nth-child(2) .hero-chip{right:1.5rem;bottom:1.5rem}.section-heading-row{flex-direction:row;align-items:end;gap:2rem}.project-grid,.two-column,.value-grid,.tier-grid,.stack-grid{grid-template-columns:1fr 1fr}.project-card.project-card-large{grid-template-columns:1.25fr 1fr}.project-card-large .project-copy{padding:1.5rem 1.75rem 1.5rem .75rem}.product-graphic-name{font-size:clamp(2.7rem,5vw,4.5rem)}.service-detail{grid-template-columns:1.05fr 1fr}.contact-grid{grid-template-columns:1.2fr 1fr}.product-hero{grid-template-columns:1.15fr 1fr}.product-hero .project-media{aspect-ratio:1}.product-hero .product-shot{aspect-ratio:16 / 11}.screen-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem}.offer-panel{flex-direction:row;align-items:center;justify-content:space-between;gap:2rem}.post-header{padding-top:2.5rem}.case-visual{padding:.75rem}.case-visual .product-graphic{min-height:380px;padding:3rem 4rem}.case-body{grid-template-columns:1fr 2.3fr;gap:2.5rem}.case-facts{display:block;position:sticky;top:7rem}.case-facts>div+div{border-top:1px solid var(--color-line-soft)}.fact-list>div{display:grid;grid-template-columns:11rem 1fr;gap:1.5rem;align-items:baseline}.fact-list dt{margin-bottom:0}.cta-mark{width:300px}.footer-grid{grid-template-columns:1.6fr 1fr 1fr;gap:3rem}.footer-grid>div:first-child{grid-column:auto}.footer-list{gap:.75rem}.footer-list li{min-height:0}.footer-bottom{flex-direction:row}.footer-bottom-links{gap:.5rem 1.4rem}.footer-bottom a,a.brand-lockup{min-height:0}}@media (min-width: 961px){.tool-layout{grid-template-columns:minmax(300px,380px) 1fr}.tool-output{position:sticky;top:6rem}.tool-grid{grid-template-columns:repeat(2,1fr)}.stack-grid{grid-template-columns:repeat(3,1fr)}.hero-grid{grid-template-columns:1.3fr 1fr;gap:clamp(2.5rem,5vw,4.5rem)}.hero h1{font-size:clamp(3.3rem,6.6vw,5.6rem)}.hero-chip{min-width:210px}.service-grid{grid-template-columns:repeat(3,1fr)}.process-grid{grid-template-columns:repeat(4,1fr)}.feature-grid{grid-template-columns:repeat(3,1fr)}.case-body{gap:4rem}.cta-panel{flex-direction:row;align-items:center}.cta-actions{flex-direction:column;flex-wrap:nowrap;align-items:flex-start;gap:1rem}}@media (hover: hover){.button-primary:hover{transform:translateY(-1px)}.button:hover svg[data-icon="uil:arrow-right"]{transform:translate(3px)}a.card:hover{transform:translateY(-3px)}.hero-chip:hover,.app-store-badge:hover{transform:translateY(-2px)}.project-card:hover .project-media>img{transform:scale(1.025)}a:hover>.arrow-link svg,.arrow-link:hover svg{transform:translate(3px)}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js [data-reveal]{opacity:1;transform:none}}
