@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./space-grotesk-vietnamese-wght-normal.D0rl6rjA.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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./space-grotesk-latin-ext-wght-normal.D9tNdqV9.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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./space-grotesk-latin-wght-normal.BhU9QXUp.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}.contact-modal.svelte-1btwglb{width:min(46rem,calc(100% - 2rem));max-height:calc(100svh - 2rem);margin:auto;padding:0;overflow:visible;border:1px solid var(--color-glass-border);border-radius:var(--radius-card);background:transparent;color:var(--color-white)}.contact-modal.svelte-1btwglb::backdrop{background:#05080ac7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.contact-modal__panel.svelte-1btwglb{position:relative;max-height:calc(100svh - 2rem);padding:clamp(1.5rem,4vw,3rem);overflow-y:auto;border-radius:inherit;background:var(--gradient-hero);box-shadow:var(--shadow-xl)}.contact-modal__close.svelte-1btwglb{position:absolute;top:1rem;right:1rem;display:grid;place-items:center;width:2.75rem;height:2.75rem;border:1px solid var(--color-glass-border);border-radius:50%;background:var(--color-glass);color:var(--color-white);font-size:1.75rem;cursor:pointer}h2.svelte-1btwglb{max-width:34rem;margin:0 0 .75rem;font-size:clamp(2rem,5vw,3.25rem)}.contact-modal__intro.svelte-1btwglb{margin:0 0 2rem;color:var(--color-white-muted)}.contact-modal__details.svelte-1btwglb{margin:1.5rem 0 0;color:var(--color-white-muted)}.contact-modal__details.svelte-1btwglb a:where(.svelte-1btwglb){color:var(--color-primary-lime)}.contact-modal .contact-form label span{color:var(--color-white-strong)}.contact-modal .contact-form input,.contact-modal .contact-form textarea{border-color:var(--color-glass-border);background:var(--color-glass);color:var(--color-white)}:root{--font-sans: "Space Grotesk Variable", "Space Grotesk", sans-serif;--color-night: #13161b;--color-night-deep: #101318;--color-night-green: #151d07;--color-ink: #171b14;--color-ink-soft: #2c3325;--color-body: #3b4335;--color-muted: #59624f;--color-muted-soft: #68715e;--color-footer-muted: #848d7f;--color-field-muted: #8b9486;--color-placeholder: #9aa290;--color-primary-dark: #4c661b;--color-primary-deep: #5c7d18;--color-primary-strong: #6f9226;--color-primary: #8fb339;--color-primary-bright: #a3cf43;--color-primary-lime: #a8d84a;--color-primary-pale: #c6e26a;--color-primary-border: #c9d9a0;--color-surface: #f8faf4;--color-surface-muted: #eef2e6;--color-surface-subtle: #f0f3ea;--color-border: #e5e9de;--color-field-border: #dce2d3;--color-white: #ffffff;--color-danger: #b0512c;--color-danger-pale: #eccfc4;--color-danger-soft: rgba(197, 90, 54, .12);--color-glass: rgba(15, 18, 14, .72);--color-glass-border: rgba(255, 255, 255, .09);--color-white-strong: rgba(255, 255, 255, .92);--color-white-muted: rgba(255, 255, 255, .72);--color-white-faint: rgba(255, 255, 255, .08);--color-white-glow: rgba(255, 255, 255, .22);--color-white-line: rgba(255, 255, 255, .07);--color-primary-faint: rgba(143, 179, 57, .08);--color-primary-soft: rgba(143, 179, 57, .14);--color-primary-focus: rgba(143, 179, 57, .18);--color-primary-border-alpha: rgba(143, 179, 57, .4);--color-ink-alpha: rgba(21, 29, 7, .75);--color-ink-border: rgba(21, 29, 7, .35);--color-image-overlay: rgba(16, 19, 12, .58);--color-hairline: rgba(23, 27, 20, .06);--gradient-primary: linear-gradient(120deg, var(--color-primary-bright), var(--color-primary));--gradient-text: linear-gradient(92deg, var(--color-primary-pale), var(--color-primary));--gradient-text-deep: linear-gradient(92deg, var(--color-primary-strong), var(--color-primary));--gradient-score: linear-gradient(90deg, var(--color-primary), var(--color-primary-pale));--gradient-avatar: linear-gradient(135deg, var(--color-primary), var(--color-primary-deep));--gradient-primary-deep: linear-gradient( 130deg, var(--color-primary), var(--color-primary-strong) );--gradient-dark: linear-gradient(150deg, var(--color-night), #1e2417);--gradient-hero: radial-gradient(1000px 620px at 78% 8%, rgba(143, 179, 57, .17), transparent 62%), radial-gradient(800px 560px at 6% 94%, rgba(143, 179, 57, .08), transparent 60%), var(--color-night);--gradient-image: linear-gradient(180deg, transparent, var(--color-image-overlay));--shadow-glow: 0 0 26px rgba(143, 179, 57, .4);--shadow-dot: 0 0 12px rgba(168, 216, 74, .9);--shadow-glow-strong: 0 0 44px rgba(143, 179, 57, .7);--shadow-card: 0 22px 54px rgba(120, 150, 60, .16);--shadow-image: 0 30px 80px rgba(23, 27, 20, .16);--shadow-dark: 0 14px 40px rgba(21, 29, 7, .3);--shadow-focus: 0 0 0 3px var(--color-primary-focus);--radius-sm: 12px;--radius-card: 18px;--radius-lg: 22px;--radius-image: 24px;--radius-hero: 28px;--radius-pill: 999px;--space-1: .5rem;--space-2: .75rem;--space-3: 1rem;--space-4: 1.5rem;--space-5: 2rem;--space-6: 3rem;--space-7: 4rem;--space-8: 6rem;--space-section: clamp(5rem, 9vw, 8.75rem);--container: 80rem;--container-article: 60rem;--container-prose: 47.5rem;--transition: .18s ease;--transition-slow: .3s ease;--ease-spring: cubic-bezier(.22, .75, .3, 1)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;overflow-x:hidden;background:var(--color-surface);color:var(--color-ink);font-family:var(--font-sans);line-height:1.6;text-rendering:optimizeLegibility}img{display:block;max-width:100%;height:auto}@keyframes word-in{0%{opacity:0;transform:translateY(26px) skewY(3deg)}to{opacity:1;transform:translateY(0) skewY(0)}}@keyframes spin-slow{to{transform:rotate(360deg)}}@keyframes orb-float{0%,to{transform:translate(0) scale(1)}50%{transform:translate(30px,-24px) scale(1.08)}}@keyframes rise-in{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.text-gradient{color:var(--color-primary);background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.text-gradient--deep{background:var(--gradient-text-deep);-webkit-background-clip:text;background-clip:text}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:var(--color-primary-deep);text-underline-offset:.18em}a:hover{color:var(--color-primary-strong)}:focus-visible{outline:3px solid var(--color-primary-lime);outline-offset:4px}h1,h2,h3,h4,p{text-wrap:pretty}h1,h2,h3,h4{margin-top:0;line-height:1.12;letter-spacing:-.025em}.container{width:min(calc(100% - 2rem),var(--container));margin-inline:auto}.skip-link{position:fixed;inset:var(--space-3) auto auto var(--space-3);transform:translateY(-180%);z-index:200;padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);background:var(--color-white);color:var(--color-ink)}.skip-link:focus{transform:translateY(0)}.site-header{position:fixed;inset:1.25rem 1.75rem auto;z-index:100}.site-header .container{width:100%;max-width:none}.site-nav{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:4.25rem;padding:.55rem .9rem .55rem 1.6rem;border:1px solid var(--color-glass-border);border-radius:var(--radius-pill);background:var(--color-glass);box-shadow:var(--shadow-dark);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:.75rem;color:var(--color-white);font-weight:700;font-size:1.05rem;text-decoration:none;white-space:nowrap}.brand:hover{color:var(--color-white)}.brand__mark{width:2.15rem;height:2.15rem;object-fit:contain}.site-nav__menu{display:flex;align-items:center;gap:.25rem}.site-nav__menu>a:not(.button),.software-menu>summary{padding:.65rem .9rem;border-radius:var(--radius-pill);color:var(--color-white-muted);font-weight:500;font-size:.9rem;text-decoration:none;cursor:pointer;list-style:none;transition:color var(--transition),background var(--transition)}.software-menu>summary::-webkit-details-marker{display:none}.site-nav__menu>a:not(.button):hover,.software-menu>summary:hover{color:var(--color-white);background:var(--color-white-faint)}.nav-toggle{display:none;width:2.8rem;height:2.8rem;border:0;border-radius:50%;background:var(--color-white-faint);cursor:pointer}.nav-toggle span{display:block;width:1.2rem;height:2px;margin:.25rem auto;background:var(--color-white);transition:transform var(--transition),opacity var(--transition)}.nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(.375rem) rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-.375rem) rotate(-45deg)}.software-menu{position:relative}.software-menu__panel{position:absolute;top:calc(100% + 1rem);right:-10rem;display:none;width:min(52rem,calc(100vw - 3.5rem));grid-template-columns:repeat(4,1fr);gap:1.5rem;padding:1.75rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-white);box-shadow:var(--shadow-image)}.software-menu[open] .software-menu__panel{display:grid;animation:rise-in .22s var(--ease-spring) both}.software-menu[open]>summary{color:var(--color-white);background:var(--color-white-faint)}.software-menu__panel section{min-width:0}.software-menu__panel h2{margin-bottom:.75rem;color:var(--color-ink);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}.software-menu__panel a{display:block;padding:.3rem 0;color:var(--color-muted);font-size:.85rem;text-decoration:none;overflow-wrap:anywhere}.software-menu__all{grid-column:1 / -1;color:var(--color-primary-deep)!important;font-weight:700}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.75rem 1.55rem;border:1px solid transparent;border-radius:var(--radius-pill);font-weight:600;text-decoration:none;cursor:pointer;transition:transform var(--transition),box-shadow var(--transition),background var(--transition)}.button--primary{background:var(--gradient-primary);color:var(--color-night-green);box-shadow:var(--shadow-glow)}.button--primary:hover{color:var(--color-night-green);box-shadow:var(--shadow-glow-strong);transform:translateY(-2px)}.button--secondary{border-color:var(--color-ink-border);background:transparent;color:var(--color-ink)}.button--secondary:hover{background:var(--color-white-strong);color:var(--color-ink)}.button--glass{border-color:var(--color-primary-border-alpha);background:var(--color-white-faint);color:var(--color-primary-lime)}.button--glass:hover{background:var(--color-primary-soft);color:var(--color-primary-lime)}.button--text{min-height:auto;padding-inline:0;border-radius:0;color:var(--color-primary-dark)}.button--text:hover{color:var(--color-primary-deep);transform:translate(.2rem)}.button:disabled{cursor:wait;opacity:.65}.button-row{display:flex;flex-wrap:wrap;gap:var(--space-3)}.eyebrow{margin:0 0 1rem;color:var(--color-primary-dark);font-weight:700;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase}.section{padding-block:var(--space-section);background:var(--color-surface)}.section--muted{background:var(--color-surface-muted)}.section--dark{background:var(--color-night);color:var(--color-white)}.section--dark .eyebrow{color:var(--color-primary-lime)}.section--dark p{color:var(--color-footer-muted)}.section-heading{max-width:48rem;margin-bottom:clamp(2rem,5vw,3.5rem)}.section-heading--center{margin-inline:auto;text-align:center}.section-heading h2{margin-bottom:1rem;font-size:clamp(2.2rem,5vw,3.4rem)}.section-heading>p:last-child{margin:0;color:var(--color-muted);font-size:1.08rem}.section--dark .section-heading>p:last-child{color:var(--color-footer-muted)}.home-hero{position:relative;display:grid;min-height:100svh;overflow:hidden;background:var(--gradient-hero);color:var(--color-white)}.home-hero:after{content:"";position:absolute;inset:auto 0 0;height:13rem;background:linear-gradient(transparent,var(--color-night))}.home-hero .container{position:relative;z-index:2;display:grid;align-items:center;padding-top:11rem;padding-bottom:7rem}.home-hero__copy{max-width:62rem}.hero-ornaments{position:absolute;inset:0;overflow:hidden;pointer-events:none}.hero-spin{position:absolute;top:6.875rem;right:-10rem;width:42.5rem;max-width:none;opacity:.07;animation:spin-slow 90s linear infinite}.hero-orb{position:absolute;top:5rem;right:16%;width:21.25rem;height:21.25rem;border-radius:50%;background:radial-gradient(circle,var(--color-primary-border-alpha),transparent 70%);filter:blur(50px);animation:orb-float 9s ease-in-out infinite}.home-hero__copy .eyebrow{display:flex;align-items:center;gap:1rem;color:var(--color-primary-lime)}.home-hero__copy .eyebrow:before{content:"";width:2.8rem;height:2px;background:var(--color-primary)}.home-hero h1{margin-bottom:2.75rem;font-size:clamp(3.3rem,7.2vw,6.5rem);line-height:1.04;letter-spacing:-.045em}.home-hero__copy>p:not(.eyebrow){max-width:42rem;color:var(--color-white-muted);font-size:1.15rem}.rotating-word{display:inline-block;color:var(--color-primary-lime)}.rotating-word__inner{display:inline-block;animation:word-in .55s var(--ease-spring) both}.home-hero__visual{display:grid;place-items:center;opacity:.17}.home-hero__visual img{width:34rem;max-width:none}.home-mission{text-align:center}.home-mission .section-heading{margin-bottom:1rem}.sectors-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(3rem,8vw,5.5rem);align-items:start}.sector-list{margin:0;padding:0;list-style:none}.sector-list li{display:grid;grid-template-columns:2.3rem 1fr;gap:1rem;padding:1.75rem .5rem;border-bottom:1px solid var(--color-field-border);border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:background var(--transition-slow),padding var(--transition-slow)}.sector-list li:hover{background:var(--color-primary-faint);padding-left:1.5rem}.sector-list li>span{color:var(--color-primary-dark);font-weight:700}.sector-list h3{margin-bottom:.5rem;font-size:1.55rem}.sector-list p{margin:0;color:var(--color-muted)}.headache-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}.headache-grid article{display:flex;min-height:17rem;flex-direction:column;padding:1.8rem;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-white);transition:transform var(--transition),box-shadow var(--transition)}.headache-grid article:hover{transform:translateY(-5px);box-shadow:var(--shadow-card)}.headache-icon{width:2.75rem;height:2.75rem;margin-bottom:1.2rem;border:1px solid var(--color-primary-border-alpha);border-radius:50%}.headache-icon:after{content:"";display:block;width:.65rem;height:.65rem;margin:1rem;border-radius:50%;background:var(--color-primary);box-shadow:var(--shadow-glow)}.headache-grid h3{margin-bottom:.65rem;font-size:1.15rem}.headache-grid p{color:var(--color-muted-soft)}.headache-grid a{display:flex;justify-content:space-between;margin-top:auto;color:var(--color-ink);font-size:.88rem;text-decoration:none}.work-section .content-card{color:var(--color-ink)}.work-section .content-card .eyebrow{color:var(--color-primary-dark)}.section--dark .button--text{color:var(--color-primary-lime)}.page-hero{padding:11rem 0 6.5rem;background:var(--color-surface)}.page-hero .container{max-width:var(--container-article)}.page-hero h1{max-width:54rem;margin-bottom:1.5rem;font-size:clamp(3rem,6.5vw,5.5rem)}.page-hero__intro{max-width:48rem;margin:0;color:var(--color-muted);font-size:clamp(1.15rem,2vw,1.4rem)}.page-hero__actions{margin-top:2rem}.page-hero--dark{position:relative;overflow:hidden;padding:13.75rem 0 8rem;background:var(--gradient-hero);color:var(--color-white)}.page-hero--dark .container{position:relative;z-index:2;max-width:var(--container)}.page-hero--dark .eyebrow{color:var(--color-primary-lime)}.page-hero--dark .page-hero__intro{color:var(--color-footer-muted)}.feature-grid,.three-up{display:grid;grid-template-columns:repeat(3,1fr);gap:1.15rem}.feature-grid article,.three-up article{padding:2rem;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-white);transition:transform var(--transition-slow),box-shadow var(--transition-slow),border-color var(--transition-slow)}.feature-grid article:hover{transform:translateY(-5px);border-color:var(--color-primary-border);box-shadow:var(--shadow-card)}.three-up article:hover{transform:translateY(-5px);border-color:var(--color-primary);box-shadow:var(--shadow-card)}.feature-grid article>span{color:var(--color-primary-strong);font-weight:700}.feature-grid h3,.three-up h3{margin:1rem 0 .75rem;font-size:1.25rem}.feature-grid p,.three-up p{margin:0;color:var(--color-muted-soft)}.section--dark .feature-grid article{border-color:var(--color-white-line);background:var(--color-white-faint)}.section--dark .feature-grid p{color:var(--color-footer-muted)}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.card-grid--posts>:first-child{grid-column:span 2}.card{min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-white);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.card:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-card);transform:translateY(-4px)}.content-card{display:flex;flex-direction:column}.content-card__media{display:block;aspect-ratio:16 / 9;overflow:hidden;background:var(--color-surface-muted)}.content-card__media img,.content-card__media .media-fallback{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.content-card:hover .content-card__media img{transform:scale(1.025)}.content-card__body{display:flex;flex:1;flex-direction:column;padding:1.75rem}.content-card h3{margin-bottom:.75rem;font-size:1.35rem;overflow-wrap:anywhere}.content-card h3 a{color:var(--color-ink);text-decoration:none}.content-card p{color:var(--color-muted-soft)}.content-card__meta{margin-top:auto;margin-bottom:0;font-size:.85rem}.tag-list{display:flex;flex-wrap:wrap;gap:.5rem;margin:auto 0 0;padding:0;list-style:none}.tag-list li{padding:.35rem .7rem;border-radius:var(--radius-pill);background:var(--color-surface-subtle);color:var(--color-muted);font-size:.78rem}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.work-grid>:first-child{grid-column:1 / -1}.case-study-card{position:relative}.case-study-card--featured{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(20rem,.75fr);min-height:31rem}.case-study-card--featured .content-card__media{height:100%;aspect-ratio:auto}.case-study-card--featured .content-card__body{padding:clamp(2rem,4vw,3.5rem)}.case-study-card--featured h3{margin-top:2.5rem;font-size:clamp(2rem,3.2vw,3rem);line-height:1.08}.case-study-card__client{display:flex;gap:.8rem;align-items:center}.case-study-card__client img{width:2.75rem;height:2.75rem;border:1px solid var(--color-border);border-radius:.5rem;object-fit:contain;padding:.25rem;background:var(--color-white)}.case-study-card__client span,.case-study-card__client small{display:block}.case-study-card__client span{color:var(--color-ink);font-weight:700}.case-study-card__client small{margin-top:.1rem;color:var(--color-muted-soft);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}.case-study-card__link{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--color-border);color:var(--color-primary-strong);font-weight:700;text-decoration:none}.case-study-card__link span{font-size:1.15rem;transition:transform var(--transition)}.case-study-card:hover .case-study-card__link span{transform:translate(.15rem,-.15rem)}@media(max-width:760px){.work-grid{grid-template-columns:1fr}.work-grid>:first-child{grid-column:auto}.case-study-card--featured{display:flex;min-height:0}.case-study-card--featured .content-card__media{height:auto;aspect-ratio:16 / 9}}.media-fallback{display:grid;place-items:center;min-height:6rem;background:var(--gradient-primary-deep);color:var(--color-night-green);font-size:clamp(2rem,8vw,5rem);font-weight:700}.software-group+.software-group{margin-top:4rem}.software-group>header{display:flex;align-items:baseline;gap:.75rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.software-group>header h2{margin:0;font-size:2rem}.software-group>header span{color:var(--color-muted-soft)}.software-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:1.25rem}.software-card a{display:flex;align-items:center;gap:1rem;padding:1.1rem;color:var(--color-ink);text-decoration:none}.software-card img,.software-card .media-fallback{width:3.5rem;height:3.5rem;flex:none;border-radius:var(--radius-sm);object-fit:contain;font-size:1.3rem}.software-card span{min-width:0}.software-card small,.software-card strong{display:block;overflow-wrap:anywhere}.software-card small{color:var(--color-muted-soft);font-size:.7rem;text-transform:uppercase}.article-page,.case-study-page,.review-page{padding:9.5rem 0 7rem;background:var(--color-surface)}.article-page .container{max-width:var(--container-article)}.article-header{margin-bottom:2.75rem}.back-link{display:inline-flex;margin-bottom:1.5rem;font-weight:500;text-decoration:none}.article-header h1{max-width:none;margin-bottom:1.5rem;font-size:clamp(2.7rem,5.5vw,3.5rem)}.article-header__dek{max-width:none;color:var(--color-muted);font-size:1.22rem}.article-meta{display:flex;flex-wrap:wrap;gap:.65rem 1rem;color:var(--color-muted-soft);font-size:.9rem}.article-meta--author{align-items:center}.author-chip{display:inline-grid;place-items:center;width:3rem;height:3rem;border-radius:50%;background:var(--gradient-avatar);color:var(--color-night-green);font-weight:700;font-size:1rem}.article-featured-media{position:relative;aspect-ratio:16 / 9;overflow:hidden;border-radius:var(--radius-image);box-shadow:var(--shadow-image)}.article-featured-media:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--color-hairline);pointer-events:none}.article-featured-media img,.article-featured-media .media-fallback{width:100%;height:100%;object-fit:cover}.article-layout{padding-top:4.5rem}.article-layout .prose{width:100%;max-width:none}.article-author-note{display:flex;gap:1.25rem;align-items:center;margin-top:4rem;padding-top:2rem;border-top:1px solid var(--color-hairline)}.article-author-note img,.article-author-note .author-chip{width:4.5rem;height:4.5rem;flex:0 0 4.5rem;border-radius:50%;object-fit:cover}.article-author-note p{margin:0;color:var(--color-muted);font-style:italic;line-height:1.7}.share-rail{display:flex;flex-direction:column;gap:.5rem;color:var(--color-muted-soft);font-size:.78rem}.prose{min-width:0;color:var(--color-body);font-size:1.12rem;line-height:1.75;overflow-wrap:anywhere}.prose>:first-child{margin-top:0}.prose p{margin:0 0 1.5rem}.prose h2{margin:3.25rem 0 1.25rem;color:var(--color-ink);font-size:2rem}.prose h3{margin:2.5rem 0 1rem;color:var(--color-ink);font-size:1.45rem}.prose blockquote{margin:2rem 0;padding:1.6rem 2rem;border-left:4px solid var(--color-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--color-primary-faint);color:var(--color-ink-soft);font-size:1.2rem;font-style:italic}.prose pre{max-width:100%;overflow:auto;padding:1rem;border-radius:var(--radius-sm);background:var(--color-night);color:var(--color-white)}.prose table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}.prose th,.prose td{padding:.65rem;border:1px solid var(--color-border)}.case-study-hero{display:grid;grid-template-columns:minmax(0,1fr) 22rem;align-items:center;gap:4rem}.case-study-hero h1{font-size:clamp(2.8rem,5vw,4.8rem)}.case-study-hero>.media-fallback,.case-study-hero>img{width:100%;border-radius:var(--radius-image)}.case-study-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:4rem 0;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-border)}.case-study-facts div{padding:1.5rem;background:var(--color-white)}.case-study-facts span,.case-study-facts strong{display:block}.case-study-facts span{color:var(--color-muted-soft);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.case-study-content{max-width:var(--container-prose);margin-inline:auto}.case-study-content>section{padding-block:2.5rem}.carousel{margin-top:4rem}.carousel figure{display:grid;margin:0;overflow:hidden;border-radius:var(--radius-image);background:var(--color-surface-muted)}.carousel figure img{grid-area:1 / 1;width:100%;aspect-ratio:16 / 9;object-fit:cover}.carousel figcaption{grid-area:2 / 1;padding:.75rem 1rem;color:var(--color-muted)}.carousel__controls{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem}.carousel__controls>button{width:2.75rem;height:2.75rem;border:1px solid var(--color-border);border-radius:50%;background:var(--color-white);color:var(--color-ink);cursor:pointer;transition:border-color var(--transition),box-shadow var(--transition)}.carousel__controls>button:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-card)}.carousel__dots{display:flex;align-items:center;gap:.5rem}.carousel__dot{width:.6rem;height:.6rem;padding:0;border:0;border-radius:50%;background:var(--color-field-border);cursor:pointer;transition:background var(--transition),transform var(--transition)}.carousel__dot:hover{transform:scale(1.25)}.carousel__dot--active{background:var(--color-primary)}.review-hero{position:relative;min-height:27rem;display:grid;grid-template-columns:10rem minmax(0,1fr) 11rem;align-items:end;gap:2rem;overflow:hidden;padding:3rem;border-radius:var(--radius-hero);background:var(--gradient-dark);color:var(--color-white);box-shadow:var(--shadow-image)}.review-hero:before{content:"";position:absolute;inset:0;background:var(--gradient-image),url(../../../review-hero.jpg) center / cover;opacity:.88}.review-hero>*{position:relative;z-index:1}.review-hero__logo img,.review-hero__logo .media-fallback{width:8rem;height:8rem;border-radius:var(--radius-card);object-fit:contain}.review-hero h1{margin-bottom:.75rem;font-size:clamp(3rem,6vw,5rem)}.review-hero .eyebrow{color:var(--color-white)}.review-hero .back-link,.review-hero .article-meta{color:var(--color-white-strong)}.review-hero__verdict{max-width:42rem;font-size:1.2rem}.score-card{padding:1.25rem;border-radius:var(--radius-card);background:var(--color-glass);text-align:center}.score-card strong{font-size:3rem;line-height:1}.score-card span,.score-card small{display:block}.score-card small{color:var(--color-white-muted);font-size:.72rem}.score-bar{height:8px;margin:.85rem 0 .6rem;border-radius:var(--radius-pill);background:var(--color-white-faint);overflow:hidden}.score-bar>span{display:block;height:100%;border-radius:inherit;background:var(--gradient-score);transform-origin:left;animation:bar-grow .7s .2s var(--ease-spring) both}@keyframes bar-grow{0%{transform:scaleX(0)}}.review-layout{display:grid;grid-template-columns:minmax(0,1fr) 20rem;gap:2.5rem;align-items:start;margin-top:4rem}.review-content{grid-column:1;grid-row:1}.review-sidebar{position:sticky;top:7rem;grid-column:2;grid-row:1;min-width:0}.review-content{min-width:0}.review-sidebar nav a{overflow-wrap:anywhere}.review-sidebar nav,.review-sidebar dl,.review-content>section{margin:0 0 1.5rem;padding:2rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-white)}.review-sidebar h2{font-size:1rem;text-transform:uppercase;letter-spacing:.1em}.review-sidebar nav a{display:block;padding:.3rem 0;color:var(--color-muted);font-size:.88rem;text-decoration:none;transition:color var(--transition)}.review-sidebar nav a:hover{color:var(--color-primary-deep)}.review-sidebar dl div{padding:.75rem 0;border-bottom:1px solid var(--color-surface-muted)}.review-sidebar dt{color:var(--color-muted);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}.review-sidebar dd{margin:.2rem 0 0}.review-content>section>h2{font-size:1.7rem}.flags-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.flag-list{padding:1.5rem;border:1px solid var(--color-primary-border);border-radius:var(--radius-card);background:var(--color-white)}.flag-list--red{border-color:var(--color-danger-pale)}.flag-list h3{display:flex;align-items:center;gap:.6rem}.flag-chip{display:inline-grid;place-items:center;width:2.125rem;height:2.125rem;border-radius:50%;background:var(--color-primary-soft);color:var(--color-primary-deep);font-size:.95rem}.flag-list--red .flag-chip{background:var(--color-danger-soft);color:var(--color-danger)}.flag-list ul{margin:0;padding:0;list-style:none}.flag-list{min-width:0}.flag-list li{position:relative;padding-left:1.1rem;overflow-wrap:anywhere}.flag-list li:before{content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;border-radius:50%;background:var(--color-primary-strong)}.flag-list--red li:before{background:var(--color-danger)}.flag-list li+li{margin-top:.75rem}.resource-links ul{padding-left:1.2rem}.split-intro,.editorial-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,8vw,6rem);align-items:start}.process-list{margin:0;padding:0;list-style:none}.process-list li{position:relative;display:grid;grid-template-columns:5.5rem 1fr;gap:1.5rem;padding:0 0 2.75rem}.process-list li:last-child{padding-bottom:0}.process-list li:before{content:"";position:absolute;left:2rem;top:4.25rem;bottom:.5rem;width:1.5px;background:linear-gradient(180deg,var(--color-primary-border-alpha),var(--color-primary-faint))}.process-list li:last-child:before{display:none}.process-step{display:grid;place-items:center;width:4rem;height:4rem;border:1.5px solid var(--color-primary-border-alpha);border-radius:50%;background:var(--color-white);box-shadow:var(--shadow-card);color:var(--color-primary-deep);font-weight:700}.process-list h3{margin:.9rem 0 .5rem;font-size:1.4rem}.process-list p{max-width:44rem;margin:0;color:var(--color-muted)}.stats-section{background:radial-gradient(800px 460px at 50% 120%,var(--color-primary-soft),transparent 65%),var(--color-surface-muted)}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.15rem}.stat-card{padding:2.75rem 2rem;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-white);text-align:center;transition:border-color var(--transition-slow),box-shadow var(--transition-slow)}.stat-card:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-card)}.stat-card strong{display:block;margin-bottom:.5rem;font-size:clamp(3rem,6vw,4.5rem);line-height:1;letter-spacing:-.03em}.stat-card span{color:var(--color-muted)}.contact-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(18rem,.7fr);gap:2rem;align-items:start}.contact-layout>*{min-width:0}.contact-hero{padding-top:8.75rem;background:var(--color-surface)}.contact-hero__image{position:relative;display:flex;min-height:26rem;align-items:flex-end;overflow:hidden;border-radius:var(--radius-hero);box-shadow:var(--shadow-image)}.contact-hero__image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.contact-hero__image:after{content:"";position:absolute;inset:0;background:var(--gradient-image)}.contact-hero__image>div{position:relative;z-index:1;max-width:50rem;padding:clamp(2rem,6vw,3.75rem);color:var(--color-white)}.contact-hero__image .eyebrow{color:var(--color-primary-lime)}.contact-hero__image h1{margin-bottom:.75rem;font-size:clamp(3rem,7vw,5rem)}.contact-hero__image p:last-child{margin:0;color:var(--color-white-strong);font-size:1.2rem}.contact-form,.contact-details{padding:clamp(1.5rem,4vw,3rem);border:1px solid var(--color-border);border-radius:var(--radius-hero);background:var(--color-white);box-shadow:var(--shadow-card)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-form label{display:block;margin-bottom:1rem;color:var(--color-ink);font-weight:600}.contact-form label span{display:block;margin-bottom:.45rem}.contact-form label small{color:var(--color-muted-soft);font-weight:400}.contact-form input,.contact-form textarea{width:100%;padding:.9rem 1rem;border:1px solid var(--color-field-border);border-radius:var(--radius-sm);outline:none;color:var(--color-ink);background:var(--color-white);transition:border-color .2s ease,box-shadow .2s ease}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.honeypot{position:absolute;left:-10000px}.cf-turnstile{min-height:4.1rem;margin-bottom:1rem;max-width:100%;overflow:hidden}.form-status{margin-bottom:0;margin-top:1rem;padding:1rem 1.25rem;border-radius:var(--radius-sm);background:var(--color-primary-soft);color:var(--color-primary-dark);font-weight:600;animation:rise-in .3s var(--ease-spring) both}.form-status--error{background:var(--color-danger-pale);color:var(--color-danger)}.contact-details{background:var(--gradient-dark);border-color:var(--color-white-line);color:var(--color-white)}.contact-details .eyebrow{color:var(--color-primary-lime)}.contact-details dl{margin:0}.contact-details dl div{position:relative;padding:1rem 0 1rem 3.6rem}.contact-details dl div+div{margin-top:.75rem}.contact-details dl div:before{content:"";position:absolute;left:0;top:1.05rem;width:2.625rem;height:2.625rem;border-radius:var(--radius-sm);background:var(--color-primary-soft);border:1px solid var(--color-primary-border-alpha)}.contact-details dl div:after{content:"";position:absolute;left:calc(1.3125rem - 4.5px);top:calc(2.3625rem - 4.5px);width:9px;height:9px;border-radius:50%;background:var(--color-primary-lime);box-shadow:var(--shadow-dot)}.contact-details dt{color:var(--color-field-muted);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase}.contact-details dd{margin:.25rem 0 0;font-weight:600;overflow-wrap:anywhere}.contact-details dd a{color:var(--color-white);text-decoration:none;transition:color var(--transition)}.contact-details dd a:hover{color:var(--color-primary-lime)}.contact-details__meeting{margin-top:2rem;padding-top:1.75rem;border-top:1px solid var(--color-white-line)}.contact-details__meeting p{margin:0 0 1.1rem;color:var(--color-footer-muted)}.legal-page{padding:0 0 var(--space-section)}.legal-page .container{max-width:var(--container-prose)}.empty-state{padding:4rem;border:1px dashed var(--color-border);border-radius:var(--radius-card);text-align:center;color:var(--color-muted)}.error-page{min-height:70svh;padding:12rem 0 7rem}.error-page h1{max-width:50rem;font-size:clamp(3rem,8vw,6rem)}.cta-band{position:relative;overflow:hidden;padding:clamp(5rem,9vw,7.5rem) 0;background:var(--gradient-primary-deep);color:var(--color-night-green)}.cta-band .container{position:relative;display:flex;align-items:center;justify-content:space-between;gap:3rem}.cta-band__ornaments{position:absolute;inset:0;overflow:hidden;pointer-events:none}.cta-band__orb{position:absolute;top:-7.5rem;right:-5rem;width:26.25rem;height:26.25rem;border-radius:50%;background:radial-gradient(circle,var(--color-white-glow),transparent 70%);filter:blur(30px);animation:orb-float 8s ease-in-out infinite}.cta-band__mark{position:absolute;left:-6.875rem;bottom:-8.75rem;width:26.25rem;max-width:none;opacity:.14;filter:brightness(0) invert(1)}.cta-band h2{margin-bottom:.75rem;font-size:clamp(2.2rem,5vw,3.25rem)}.cta-band p{margin:0;color:var(--color-ink-alpha);font-size:1.12rem}.cta-band .button--primary{background:var(--color-night-green);color:var(--color-white);box-shadow:var(--shadow-dark)}.cta-band .button--secondary{border-color:var(--color-ink-border);color:var(--color-night-green)}.cta-band__actions{display:flex;flex-wrap:wrap;gap:1rem;flex:none}.site-footer{padding:4.5rem 0 2rem;background:var(--color-night-deep);color:var(--color-white)}.site-footer .container{display:grid;grid-template-columns:1.2fr 2fr;gap:4rem}.site-footer__lead p{max-width:22rem;color:var(--color-footer-muted)}.site-footer__lead>a:last-child{color:var(--color-primary-lime)}.site-footer__links{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.site-footer__links h2{font-size:.85rem;letter-spacing:.1em;text-transform:uppercase}.site-footer__links a{display:block;margin:.55rem 0;color:var(--color-footer-muted);font-size:.9rem;text-decoration:none;transition:color var(--transition)}.site-footer__links a:hover{color:var(--color-primary-lime)}.site-footer__lead>a:last-child{transition:color var(--transition)}.site-footer__base{grid-column:1 / -1;display:flex;justify-content:space-between;padding-top:1.5rem;border-top:1px solid var(--color-white-line);color:var(--color-footer-muted);font-size:.8rem}@media(max-width:1000px){.site-header{inset:.8rem .8rem auto}.nav-toggle{display:block}.site-nav__menu{position:absolute;top:calc(100% + .65rem);right:0;left:0;display:none;max-height:calc(100vh - 7rem);overflow-y:auto;padding:1rem;border:1px solid var(--color-glass-border);border-radius:var(--radius-lg);background:var(--color-night);box-shadow:var(--shadow-image)}.site-nav__menu.open{display:flex;flex-direction:column;align-items:stretch;animation:rise-in .25s var(--ease-spring) both}.site-nav__menu>a:not(.button),.software-menu>summary{padding:.9rem}.software-menu__panel{position:static;width:100%;grid-template-columns:1fr 1fr;margin-top:.75rem;box-shadow:none}.hero-spin{right:-14rem;width:34rem}.software-grid{grid-template-columns:repeat(3,1fr)}.review-hero{grid-template-columns:7rem 1fr}.review-hero .score-card{grid-column:2;justify-self:start}.review-layout{grid-template-columns:minmax(0,1fr) 17rem}}@media(max-width:760px){.container{width:min(calc(100% - 1.25rem),var(--container))}.brand{font-size:.95rem}.brand__mark{width:2rem;height:2rem}.software-menu__panel{grid-template-columns:1fr}.home-hero .container{padding-top:9rem;padding-bottom:5rem}.home-hero h1{font-size:clamp(3rem,15vw,4.5rem)}.page-hero{padding:9rem 0 4.5rem}.feature-grid,.three-up,.card-grid,.software-grid,.case-study-facts,.split-intro,.editorial-layout,.contact-layout,.flags-grid,.sectors-layout,.headache-grid,.stat-grid{grid-template-columns:1fr}.process-list li{grid-template-columns:3.5rem 1fr;gap:1rem}.process-step{width:3rem;height:3rem}.process-list li:before{left:1.5rem;top:3.25rem}.card-grid--posts>:first-child{grid-column:auto}.software-grid{gap:.75rem}.article-page,.case-study-page,.review-page{padding-top:8.5rem}.article-layout{grid-template-columns:1fr;padding-top:3rem}.share-rail{flex-direction:row}.article-header h1{font-size:clamp(2.45rem,11vw,3.5rem)}.case-study-hero{grid-template-columns:1fr;gap:2rem}.case-study-hero>.media-fallback,.case-study-hero>img{max-width:16rem}.review-hero{min-height:33rem;grid-template-columns:4.5rem 1fr;padding:1.5rem}.review-hero__logo img,.review-hero__logo .media-fallback{width:4.5rem;height:4.5rem}.review-hero .score-card{grid-column:1 / -1}.review-layout{grid-template-columns:1fr}.review-content,.review-sidebar{grid-column:1;grid-row:auto}.review-sidebar{position:static;order:-1}.form-grid{grid-template-columns:1fr}.cta-band .container,.site-footer__base{align-items:flex-start;flex-direction:column}.cta-band .container{display:flex}.cta-band__actions{width:100%}.cta-band__actions .button{flex:1}.site-footer .container{grid-template-columns:1fr;gap:2.5rem}.site-footer__links{grid-template-columns:1fr 1fr}.site-footer__base{grid-column:1;gap:.25rem}}@media(max-width:420px){.site-nav{padding-left:.85rem}.brand span:last-child{max-width:7rem;white-space:normal;line-height:1.05}.software-grid,.site-footer__links{grid-template-columns:1fr}.button-row,.cta-band__actions{flex-direction:column}.button-row .button,.cta-band__actions .button{width:100%}.review-hero{display:block}.review-hero__logo{margin-bottom:1rem}.score-card{margin-top:1.5rem}.contact-form,.contact-details,.review-content>section,.review-sidebar nav,.review-sidebar dl{padding:1.25rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
