/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:"IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--font-serif:"IBM Plex Serif", ui-serif, Georgia, serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-ink:#2d3142;--color-slate:#4f5d75;--color-silver:#bfc0c0;--color-coral:#ef8354;--color-paper:#fff;--color-paper-2:#f1f2f3;--radius-card:2px;--ink-soft:#2d3142bd;--rule:3px solid var(--color-ink);--rule-2:2px solid var(--color-ink);--hair:1px solid #2d314233;--shadow-ink:6px 6px 0 0 var(--color-ink);--shadow-coral:6px 6px 0 0 var(--color-coral);--shadow-paper:6px 6px 0 0 var(--color-paper);--wrap:1180px;--menu-w:210px;--menu-gap:14px;--gutter:clamp(20px, 5vw, 56px);--sec-y:clamp(56px, 7vw, 104px)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}ul,ol{padding:0;list-style:none}img{max-width:100%;height:auto;display:block}html{-webkit-text-size-adjust:100%}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-sans);font-size:1.0625rem;font-weight:400;line-height:1.65;overflow-x:hidden}a{color:inherit}h1{letter-spacing:-.02em;text-wrap:balance;font-size:clamp(2.4rem,1.5rem + 3.4vw,4.6rem);font-weight:700;line-height:1.02}h2{letter-spacing:-.015em;text-wrap:balance;font-size:clamp(1.7rem,1.2rem + 1.6vw,2.6rem);font-weight:700;line-height:1.12}h3{font-size:clamp(1.15rem,1rem + .6vw,1.45rem);font-weight:600;line-height:1.25}p{max-width:68ch}.lead{color:var(--ink-soft);font-size:clamp(1.05rem,1rem + .5vw,1.32rem);line-height:1.55}.band--hero .lead,.band--ink .lead{color:#ffffffd1}.eyebrow,.label,.badge,.btn,.markers__num,.step__index,.steps .step__index{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.16em;font-size:.8125rem;font-weight:500}.eyebrow{color:var(--color-coral);margin-bottom:18px}.accent{font-family:var(--font-serif);color:var(--color-coral);font-style:italic;font-weight:400}strong{font-weight:600}.wrap{max-width:var(--wrap);padding-inline:var(--gutter);margin-inline:auto}.band{padding-block:var(--sec-y)}.band--hero{background:var(--color-ink);color:var(--color-paper);padding-block:clamp(72px,9vw,132px)}.band--hero h1{max-width:22ch}.band--hero .lead{max-width:52ch;margin-top:26px}.cta-row{margin-top:34px}.band--tint{background:var(--color-paper-2)}.band--ink{background:var(--color-ink);color:var(--color-paper)}.band--ink h2{max-width:24ch}.band--ink .btn--primary{box-shadow:var(--shadow-paper)}.band--ink .btn--primary:hover{box-shadow:2px 2px 0 0 var(--color-paper)}.band--hero .btn--primary{box-shadow:var(--shadow-paper)}.band--hero .btn--primary:hover{box-shadow:2px 2px 0 0 var(--color-paper)}.band--contact{background:var(--color-paper-2)}.band__title{margin-bottom:clamp(22px,3vw,34px)}.divider{width:100%}.divider--stripes{border-block:var(--rule);background:repeating-linear-gradient(45deg,var(--color-ink) 0 9px,var(--color-coral) 9px 18px);height:18px}.divider--dots{border-top:var(--rule-2);background:radial-gradient(var(--color-silver) 1.4px,transparent 1.5px) 0 0/12px 12px;height:22px}.divider--checks{border-block:var(--rule-2);background:repeating-conic-gradient(from 0deg,var(--color-ink) 0 25%,var(--color-paper) 0 50%) 0 0/16px 16px;height:16px}.band--parallax{background:var(--color-paper-2);position:relative;overflow:hidden}.parallax__layer{z-index:0;will-change:transform;opacity:.6;background:radial-gradient(var(--color-silver) 1.5px,transparent 1.6px) 0 0/22px 22px, repeating-linear-gradient(-45deg,#4f5d7524 0 1px,transparent 1px 14px);height:130%;position:absolute;inset:-15% 0}.band--parallax>.wrap{z-index:1;position:relative}.btn{border:var(--rule);border-radius:var(--radius-card);box-shadow:var(--shadow-ink);background:var(--color-paper);color:var(--color-ink);letter-spacing:.14em;cursor:pointer;align-items:center;gap:10px;padding:15px 24px;line-height:1;text-decoration:none;transition:transform .12s,box-shadow .12s;display:inline-flex}.btn:hover{box-shadow:2px 2px 0 0 var(--color-ink);transform:translate(2px,2px)}.btn:focus-visible{outline:3px solid var(--color-coral);outline-offset:3px}.btn--primary{background:var(--color-coral);color:var(--color-ink)}.btn[disabled]{opacity:.55;cursor:default}.skip{z-index:100;background:var(--color-ink);color:var(--color-paper);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.16em;padding:12px 18px;font-size:.8125rem;text-decoration:none;position:absolute;top:0;left:-9999px}.skip:focus{left:0}.nav{z-index:50;background:var(--color-paper);border-bottom:var(--rule);position:sticky;top:0}.nav__bar{height:clamp(64px,7vw,76px);max-width:var(--wrap);padding-inline:var(--gutter);align-items:center;gap:clamp(16px,3vw,40px);margin-inline:auto;display:flex}.brand{align-items:center;gap:14px;margin-right:auto;text-decoration:none;display:flex}.brand__logo{object-fit:contain;border:0;width:78px;height:44px}.brand__word{letter-spacing:-.03em;color:var(--color-ink);font-size:1.35rem;font-weight:700}.nav__links{align-items:center;gap:clamp(14px,2.4vw,34px);display:flex}.nav__link,.nav__trigger{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--color-ink);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:6px 0;font-size:.8125rem;font-weight:500;line-height:1.4;text-decoration:none;display:inline-block}.nav__link:hover,.nav__trigger:hover,.nav__menu-link:hover,.nav__link[aria-current=page],.nav__menu-link[aria-current=page]{border-color:var(--color-coral)}.nav__group{position:relative}.nav__group:has(.nav__menu-link[aria-current=page]) .nav__trigger{border-color:var(--color-coral)}.nav__trigger span{font-size:.7em}.nav__menu{left:50%;top:calc(100% + var(--menu-gap));background:var(--color-paper);border:var(--rule);box-shadow:var(--shadow-ink);min-width:var(--menu-w);padding:6px;display:none;position:absolute;transform:translate(-50%)}.nav__menu[data-open],.nav__group:hover .nav__menu,.nav__group:focus-within .nav__menu{display:block}.nav__group:hover:after{content:"";width:var(--menu-w);height:var(--menu-gap);position:absolute;top:100%;left:50%;transform:translate(-50%)}.nav__menu-link{color:var(--color-ink);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;border-bottom:3px solid #0000;padding:11px 14px;font-size:.8125rem;font-weight:500;text-decoration:none;display:block}.nav__menu-link:hover{background:var(--color-paper-2)}.nav__burger{border:var(--rule-2);border-radius:var(--radius-card);cursor:pointer;background:0 0;flex-direction:column;justify-content:center;gap:5px;width:46px;height:40px;padding:0 9px;display:none}.nav__burger span{background:var(--color-ink);height:3px;display:block}.nav__burger:focus-visible{outline:3px solid var(--color-coral);outline-offset:2px}.nav__panel{border-bottom:var(--rule);background:var(--color-paper)}.nav__panel[hidden]{display:none}.nav__panel ul{padding:8px var(--gutter) 22px}.nav__panel a{color:var(--color-ink);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;border-bottom:var(--hair);padding:13px 0;font-size:.8125rem;font-weight:500;text-decoration:none;display:block}.nav__panel a[aria-current=page]{color:var(--color-coral)}.nav__details summary{cursor:pointer;color:var(--color-ink);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;border-bottom:var(--hair);padding:13px 0;font-size:.8125rem;font-weight:500}.nav__details ul{padding:0 0 0 18px}.footer{background:var(--color-ink);color:var(--color-paper);border-top:var(--rule);padding-block:clamp(48px,6vw,80px)}.footer__grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:clamp(28px,4vw,48px);display:grid}.footer__logo{object-fit:contain;border:0;width:171px;height:96px}.footer__word{letter-spacing:-.03em;margin-top:14px;font-size:1.35rem;font-weight:700}.footer__head{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.16em;color:var(--color-coral);margin-bottom:16px;font-size:.8125rem;font-weight:500}.footer__col ul{flex-direction:column;gap:10px;display:flex}.footer__col a{color:#ffffffdb;border-bottom:2px solid #0000;padding-bottom:2px;text-decoration:none}.footer__col a:hover{color:var(--color-paper);border-color:var(--color-coral)}.footer__badges{flex-flow:wrap;gap:8px}.badge{border:2px solid var(--color-silver);border-radius:var(--radius-card);color:var(--color-paper);padding:5px 9px;font-size:.75rem;display:inline-block}.footer__bottom{border-top:1px solid #ffffff42;margin-top:clamp(34px,5vw,56px);padding-top:20px}.footer__copy{font-family:var(--font-mono);letter-spacing:.08em;color:#fffc;font-size:.8125rem}.markers{grid-template-columns:repeat(4,1fr);gap:26px;display:grid}.markers li{border-left:var(--rule-2);padding-left:22px}.markers li:first-child{border-left:0;padding-left:0}.markers__num{color:var(--color-coral);margin-bottom:12px;font-weight:700;display:block}.markers p{color:var(--color-ink);font-size:1rem;line-height:1.5}.cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px;display:grid}.cards>li{display:flex}.card{color:var(--color-ink);background:var(--color-paper);border:var(--rule);border-radius:var(--radius-card);box-shadow:var(--shadow-ink);flex:1;padding:30px;text-decoration:none;transition:transform .12s,box-shadow .12s;display:block}.card:hover{box-shadow:var(--shadow-coral);transform:translate(-2px,-2px)}.card:focus-visible{outline:3px solid var(--color-coral);outline-offset:3px}.card h3{margin-bottom:14px}.card p{color:var(--ink-soft)}.rows .row{border-top:var(--rule-2);grid-template-columns:minmax(0,34%) minmax(0,1fr);gap:clamp(24px,4vw,56px);padding-block:44px;display:grid}.rows .row:last-child{border-bottom:var(--rule-2)}.rows .row>div{max-width:64ch}.deliverables__label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.16em;color:var(--color-coral);margin:22px 0 10px;font-size:.8125rem;font-weight:500}.deliverables li{padding-left:22px;position:relative}.deliverables li:before{content:"▪";color:var(--color-coral);margin-right:10px;position:absolute;left:0}.stack-dl .pair,.qa .pair{border-top:var(--rule-2)}.stack-dl .pair{grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:clamp(16px,3vw,40px);padding-block:22px;display:grid}.stack-dl dt{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.16em;color:var(--color-coral);font-size:.8125rem;font-weight:500}.stack-dl dd{max-width:70ch}.qa .pair{padding-block:24px}.qa dt{margin-bottom:10px;font-size:1.15rem;font-weight:600}.qa dd{color:var(--ink-soft);max-width:70ch}.bullets{flex-direction:column;gap:18px;max-width:78ch;display:flex}.bullets li{padding-left:26px;position:relative}.bullets li:before{content:"";background:var(--color-coral);width:11px;height:11px;position:absolute;top:.62em;left:0}.lead+.bullets{margin-top:22px}.one-liners li{border-top:var(--hair);grid-template-columns:180px 1fr;align-items:baseline;gap:24px;padding-block:20px;display:grid}.one-liners li:last-child{border-bottom:var(--hair)}.one-liners a{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.16em;color:var(--color-coral);font-size:.8125rem;font-weight:500;text-decoration:none}.one-liners a:hover{text-decoration:underline}.one-liners p{color:var(--ink-soft)}.steps{grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,48px);display:grid}.steps li{border-top:var(--rule);padding-top:22px}.steps .step__index{color:var(--color-coral);margin-bottom:14px;font-weight:700;display:block}.steps h3{margin-bottom:12px}.steps p{color:var(--ink-soft)}.step-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:start;gap:28px;display:grid}.step-cards>li{background:var(--color-paper);border:var(--rule);border-radius:var(--radius-card);box-shadow:var(--shadow-ink);padding:26px}.step-cards .step__index{color:var(--color-coral);margin-bottom:14px;font-weight:700;display:block}.step-cards h3{margin-bottom:18px}.step-cards .pair{border-top:var(--rule-2)}.step-cards dt{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.16em;color:var(--color-slate);margin-bottom:6px;font-size:.8125rem;font-weight:500}.step-cards .pair:first-of-type dt{margin-top:16px}.step-cards dd{margin-bottom:16px}.step-cards dd p+p{margin-top:.85em}.step-cards .pair:last-child dd{margin-bottom:0}.prose{flex-direction:column;gap:22px;display:flex}.prose p{max-width:68ch;font-size:clamp(1.05rem,1rem + .4vw,1.22rem);line-height:1.6}.band--tint .prose p{color:var(--ink-soft)}.prose-row{grid-template-columns:minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,56px);display:grid}.prose-row--portrait{grid-template-columns:minmax(0,320px) minmax(0,1fr)}.portrait img{border:var(--rule);border-radius:var(--radius-card);box-shadow:var(--shadow-coral)}.contact-form{grid-template-columns:repeat(3,1fr);gap:22px;max-width:760px;margin-top:36px;display:grid}.contact-form .field{flex-direction:column;gap:9px;display:flex}.contact-form .field--wide{grid-column:1/-1}.contact-form label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.16em;color:var(--color-slate);font-size:.8125rem;font-weight:500}.contact-form input,.contact-form textarea{background:var(--color-paper);border:var(--rule-2);border-radius:var(--radius-card);font:inherit;color:var(--color-ink);resize:vertical;width:100%;padding:14px 16px}.contact-form input:focus-visible,.contact-form textarea:focus-visible{border-color:var(--color-coral);outline:3px solid var(--color-coral);outline-offset:1px}.contact-form :is(input,textarea):user-invalid{border-color:var(--color-coral);box-shadow:var(--shadow-coral)}.contact-form .btn{grid-column:1/-1;justify-self:start;margin-top:4px}.contact__reassurance{color:var(--ink-soft);grid-column:1/-1;max-width:62ch}.form-status{color:var(--color-ink);border-left:var(--rule);border-color:var(--color-coral);grid-column:1/-1;padding-left:18px;font-size:1.15rem;font-weight:600}.form-status:empty{display:none}.contact-form .errorlist{color:var(--color-coral);font-family:var(--font-mono);margin:0;padding:0;font-size:.8125rem;list-style:none}.contact-form .field--error input,.contact-form .field--error textarea{border-color:var(--color-coral)}.contact-form .hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.contact-form[aria-busy=true] .btn{opacity:.55}@media (max-width:980px){.nav__links{display:none}.nav__burger{display:flex}.markers{grid-template-columns:repeat(2,1fr);gap:30px 26px}.markers li:nth-child(odd){border-left:0;padding-left:0}.footer__grid{grid-template-columns:1fr 1fr;gap:36px}.rows .row{grid-template-columns:1fr;gap:18px;padding-block:36px}.stack-dl .pair{grid-template-columns:1fr;gap:8px}.one-liners li{grid-template-columns:150px 1fr}.steps{grid-template-columns:1fr;gap:26px}.prose-row--portrait{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.markers{grid-template-columns:1fr}.markers li{border-left:0;padding-left:0}.footer__grid,.contact-form{grid-template-columns:1fr}.one-liners li{grid-template-columns:1fr;gap:8px}.band--hero{padding-block:56px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}}@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.underline{text-decoration-line:underline}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}