@layer base{*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-bg);min-block-size:100vh;font-family:var(--font-sans);font-size:var(--font-size-100);line-height:var(--line-height-tight);flex-direction:column;margin:0;display:flex}:where(p,ol,ul,li,dl,dt,dd,h1,h2,h3,h4,h5,h6){font-size:var(--font-size-300);margin:0;padding:0}a{color:var(--color-link);text-decoration:none;&:hover{color:var(--color-link-hover);text-decoration:underline}}:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}img{block-size:auto;max-inline-size:100%}}@layer layout{.site-header{justify-content:space-between;align-items:center;gap:var(--space-sm) var(--space-xl);min-block-size:var(--header-height);padding:var(--space-sm) var(--space-md);background:var(--color-chrome);flex-wrap:wrap;display:flex}.site-header__brand{flex:0 auto;max-inline-size:100%;display:block;& img{block-size:auto;inline-size:clamp(220px,58vw,400px);display:block}}.site-nav{flex:0 auto;& ul{gap:var(--space-3xs) var(--space-2xs);flex-wrap:wrap;justify-content:flex-end;display:flex}& li{list-style:none}& a{padding:var(--space-xs) var(--space-md) var(--space-2xs);background:var(--color-chrome);color:var(--color-chrome-text);font-size:var(--font-size-100);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;transition:var(--transition-bg);display:block;&:hover{background-color:var(--color-link);color:var(--color-text-inverse);text-decoration:none}&[aria-current=page]{background-color:var(--color-accent);color:var(--color-text-inverse)}}@media (width<=480px){inline-size:100%;& ul{justify-content:flex-start}}}.site-content{flex:1 0 auto;position:relative;& ::selection{background:var(--color-accent);color:var(--color-text-inverse)}}.site-content__primary{max-inline-size:var(--content-max-width)}.article{padding:var(--space-3xl) var(--space-5xl) var(--space-5xl);color:var(--color-ink);position:relative;@media (width<=480px){padding:var(--space-3xl) var(--space-3xl) var(--space-4xl)}& h1{font-size:var(--font-size-900);font-weight:var(--font-weight-light);line-height:var(--line-height-heading);padding-block-end:var(--space-flow-sm)}}.article__body{& h2{font-size:var(--font-size-800);font-weight:var(--font-weight-medium);line-height:var(--line-height-heading);padding-block-end:var(--space-flow-xs)}& *+h2{padding-block-start:var(--space-flow-md)}& p{background:var(--color-bg);font-size:var(--font-size-500);letter-spacing:var(--letter-spacing-tight);line-height:var(--line-height-relaxed);padding-block-end:var(--space-flow-md)}& pre{margin-block:var(--space-flow-xs) var(--space-flow-md);padding:var(--space-flow-md);background:var(--color-code-bg);font-size:var(--font-size-200);line-height:var(--line-height-relaxed);position:relative;overflow-x:auto}& :is(ul,ol){padding:0 0 var(--space-flow-md) var(--space-flow-md);font-size:var(--font-size-400);line-height:var(--line-height-normal);& :is(ul,ol){padding:var(--space-flow-2xs) 0 0 var(--space-flow-md)}}& li{padding-block-end:var(--space-flow-2xs);list-style:square}& ol>li{list-style:decimal}}.container{inline-size:100%;max-inline-size:var(--content-max-width);padding-block:var(--space-3xl) var(--space-xl);padding-inline:var(--space-5xl);@media (width<=480px){padding-inline:var(--space-3xl)}}.container--wide{max-inline-size:var(--content-max-wide)}.page-head{max-inline-size:var(--content-max-width);margin-block-end:var(--space-2xl)}.page-head__title{font-size:var(--font-size-900);font-weight:var(--font-weight-light);line-height:var(--line-height-heading);color:var(--color-ink)}.page-head__lead{font-size:var(--font-size-400);line-height:var(--line-height-relaxed);color:var(--color-muted);margin-block-start:var(--space-md)}.section-heading{font-size:var(--font-size-600);font-weight:var(--font-weight-medium);line-height:var(--line-height-heading);color:var(--color-ink);margin-block-end:var(--space-lg)}.page-cta{max-inline-size:var(--content-max-width);font-size:var(--font-size-400);line-height:var(--line-height-relaxed);color:var(--color-ink);margin-block-start:var(--space-2xl)}.hero{max-inline-size:var(--content-max-width);padding-block-end:var(--space-2xl)}.hero__title{font-size:var(--font-size-900);font-weight:var(--font-weight-light);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-tight);color:var(--color-ink);@media (width<=480px){font-size:var(--font-size-800)}}.hero__lead{margin-block-start:var(--space-xl);& p{font-size:var(--font-size-400);line-height:var(--line-height-relaxed);color:var(--color-ink);&+p{margin-block-start:var(--space-md)}}& p:first-child{font-size:var(--font-size-600);line-height:var(--line-height-normal);color:var(--color-accent)}}.hero__actions{gap:var(--space-md);flex-wrap:wrap;margin-block-start:var(--space-xl);display:flex}.home-services,.home-featured{border-block-start:1px solid var(--color-border);margin-block-start:var(--space-3xl);padding-block-start:var(--space-xl)}.home-services__grid{gap:var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));list-style:none;display:grid}.home-services__more{font-size:var(--font-size-300);margin-block-start:var(--space-lg)}.feature-card__title{font-size:var(--font-size-500);font-weight:var(--font-weight-medium);line-height:var(--line-height-heading)}.feature-card__body{font-size:var(--font-size-300);line-height:var(--line-height-normal);color:var(--color-ink);margin-block-start:var(--space-sm)}.home-featured__title{font-size:var(--font-size-800);font-weight:var(--font-weight-light);line-height:var(--line-height-heading);margin-block-start:var(--space-xs)}.home-featured__summary{margin-block:var(--space-md);max-inline-size:var(--content-max-width);font-size:var(--font-size-400);line-height:var(--line-height-relaxed);color:var(--color-ink)}.service-list{gap:var(--space-xl);list-style:none;display:grid}.service{border-block-end:1px solid var(--color-border);max-inline-size:var(--content-max-width);padding-block-end:var(--space-xl);&:last-child{border-block-end:0}}.service__title{font-size:var(--font-size-600);font-weight:var(--font-weight-medium);line-height:var(--line-height-heading)}.service__desc{font-size:var(--font-size-300);line-height:var(--line-height-relaxed);color:var(--color-ink);margin-block-start:var(--space-sm)}.service__outcome{font-size:var(--font-size-300);line-height:var(--line-height-normal);color:var(--color-muted);margin-block-start:var(--space-md)}.card-grid{gap:var(--space-xl);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));list-style:none;display:grid}.card{gap:var(--space-md);padding:var(--space-xl);background:var(--color-bg);border:1px solid var(--color-border);transition:border-color var(--duration-base) var(--ease-standard);flex-direction:column;display:flex;&:hover{border-color:var(--color-accent)}}.card__title{font-size:var(--font-size-500);font-weight:var(--font-weight-medium);line-height:var(--line-height-heading)}.card__meta{font-size:var(--font-size-100);color:var(--color-muted);margin-block-start:calc(-1 * var(--space-sm))}.card__summary{font-size:var(--font-size-300);line-height:var(--line-height-normal);color:var(--color-ink);flex:1 0 auto}.project-card--featured{border-color:var(--color-accent)}.detail{max-inline-size:var(--content-max-width);padding:0}.detail__head{margin-block-end:var(--space-xl)}.detail__summary{font-size:var(--font-size-400);line-height:var(--line-height-relaxed);color:var(--color-muted);margin-block-start:var(--space-md)}.breadcrumb{font-size:var(--font-size-100);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;margin-block-end:var(--space-lg)}.related-callout,.stack-callout{padding:var(--space-xl);max-inline-size:var(--content-max-width);background:var(--color-surface);border:1px solid var(--color-border);margin-block-start:var(--space-2xl)}.stack-callout__title{font-size:var(--font-size-300);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-muted);margin-block-end:var(--space-md)}.site-footer{justify-content:space-between;align-items:baseline;gap:var(--space-sm) var(--space-xl);padding:var(--space-xl) var(--space-5xl);background:var(--color-chrome);color:var(--color-footer-text);font-size:var(--font-size-50);line-height:var(--line-height-normal);flex-wrap:wrap;margin-block-start:auto;display:flex;& a{color:var(--color-footer-text);text-decoration:underline;&:hover{color:var(--color-text-inverse)}}@media (width<=480px){padding:var(--space-xl) var(--space-3xl);font-size:var(--font-size-100);flex-direction:column}}.site-footer__built{text-align:center;flex:auto;@media (width<=480px){text-align:start}}.site-footer__copyright{text-align:end;@media (width<=480px){text-align:start}}}@layer components{.contact-form{font-size:var(--font-size-500);letter-spacing:var(--letter-spacing-tight);line-height:var(--line-height-relaxed)}.form-field{justify-items:start;margin-block-end:var(--form-field-gap);display:grid;&:has(+.form-actions){margin-block-end:0}& label{font-size:1em}& :is(input,textarea){inline-size:var(--field-width);max-inline-size:100%;padding:var(--space-3xs);background-color:var(--color-field);color:var(--color-accent);font:inherit;letter-spacing:var(--letter-spacing-normal);line-height:var(--line-height-control);border:none}& textarea{resize:vertical}}.form-field--trap{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.form-actions{inline-size:var(--field-width);max-inline-size:100%;padding-block:var(--space-sm) var(--space-flow-md);justify-content:flex-end;display:flex;& button{padding:var(--space-2xs) var(--space-xl);background:var(--color-chrome);color:var(--color-chrome-text);font-family:inherit;font-size:1.2em;font-weight:var(--font-weight-light);letter-spacing:var(--letter-spacing-wide);line-height:var(--line-height-control);text-transform:uppercase;cursor:pointer;transition:var(--transition-bg);border:none;&:hover{background-color:var(--color-link);color:var(--color-text-inverse)}&:active{background-color:var(--color-accent);color:var(--color-text-inverse)}&:disabled{cursor:progress;opacity:.6}}}.form-status{color:var(--color-accent);&:empty{display:none}}.button{padding:var(--space-md) var(--space-xl);border:var(--border-width-focus) solid transparent;font-size:var(--font-size-200);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;cursor:pointer;transition:var(--transition-bg);text-decoration:none;display:inline-block;&:hover{text-decoration:none}}.button--primary{background:var(--color-chrome);color:var(--color-chrome-text);&:hover{background-color:var(--color-link);color:var(--color-text-inverse)}}.button--secondary{border-color:var(--color-chrome);color:var(--color-ink);&:hover{background-color:var(--color-chrome);color:var(--color-chrome-text)}}.eyebrow{font-size:var(--font-size-50);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-accent)}.text-link{font-weight:var(--font-weight-medium)}.tag-list{gap:var(--space-sm);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.tag{padding:var(--space-3xs) var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);font-size:var(--font-size-50);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-muted)}.sequence-nav{justify-content:space-between;gap:var(--space-xl);inline-size:100%;max-inline-size:var(--content-max-wide);margin-block:0 var(--space-3xl);padding-block-start:var(--space-xl);padding-inline:var(--space-5xl);border-block-start:1px solid var(--color-border);flex-wrap:wrap;display:flex;@media (width<=480px){padding-inline:var(--space-3xl)}}.sequence-nav__link{gap:var(--space-3xs);flex-direction:column;text-decoration:none;display:flex;&:hover{text-decoration:none;& .sequence-nav__label{text-decoration:underline}}}.sequence-nav__link--next{text-align:end;margin-inline-start:auto}.sequence-nav__dir{font-size:var(--font-size-50);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-muted)}.sequence-nav__label{font-size:var(--font-size-400);font-weight:var(--font-weight-medium);color:var(--color-link)}}@layer print{@media print{body{background:0 0}.site-header,.contact-form,.sequence-nav,.breadcrumb{display:none}.site-footer{border-block-start:2pt solid var(--color-print-ink);color:var(--color-print-ink);background:0 0;position:static}.article{color:var(--color-print-ink);padding:24pt 0 0}}}:root{--color-white:#fff;--color-black:#000;--color-gray-100:#f7f7f7;--color-gray-200:#eee;--color-gray-300:#d9d9d9;--color-gray-600:#595959;--color-gray-700:#444;--color-charcoal-900:#242525;--color-blue-600:#1c75bc;--color-red-500:#ed1c24;--color-pink-500:#ff00a2;--color-cyan-50:#f2fafc;--color-cyan-100:#e3fbff;--color-footer-bg:#000000bf;--font-sans:"pill-gothic-600mg-1", "pill-gothic-600mg-2", Helvetica, Arial, sans-serif;--font-size-50:.8rem;--font-size-100:1rem;--font-size-200:1.2rem;--font-size-300:1.25rem;--font-size-400:1.5rem;--font-size-500:1.6rem;--font-size-600:1.8rem;--font-size-700:2rem;--font-size-800:2.4rem;--font-size-900:3.6rem;--font-size-1000:6rem;--font-weight-light:300;--font-weight-regular:400;--font-weight-medium:500;--line-height-none:.8;--line-height-tight:1.125;--line-height-control:1.15;--line-height-heading:1.2;--line-height-normal:1.25;--line-height-relaxed:1.33;--letter-spacing-normal:normal;--letter-spacing-tight:.01em;--letter-spacing-wide:.05em;--space-0:0;--space-3xs:2px;--space-2xs:3px;--space-xs:4px;--space-sm:5px;--space-md:10px;--space-lg:15px;--space-xl:20px;--space-2xl:45px;--space-3xl:50px;--space-4xl:75px;--space-5xl:100px;--space-flow-2xs:.25em;--space-flow-xs:.5em;--space-flow-sm:.75em;--space-flow-md:1em;--space-flow-lg:2em;--border-width-focus:2px;--radius-none:0;--duration-base:.3s;--ease-standard:ease-in-out;--breakpoint-sm:480px;--content-max-width:800px;--content-max-wide:1100px;--header-height:110px;--field-width:400px;--form-field-gap:1rem;--color-bg:var(--color-white);--color-ink:var(--color-gray-700);--color-chrome:var(--color-charcoal-900);--color-chrome-text:var(--color-cyan-50);--color-link:var(--color-blue-600);--color-link-hover:var(--color-red-500);--color-accent:var(--color-pink-500);--color-field:var(--color-gray-100);--color-code-bg:var(--color-gray-200);--color-footer-text:var(--color-cyan-100);--color-text-inverse:var(--color-white);--color-print-ink:var(--color-black);--color-surface:var(--color-gray-100);--color-border:var(--color-gray-300);--color-muted:var(--color-gray-600);--focus-ring-width:var(--border-width-focus);--focus-ring-offset:var(--space-3xs);--transition-bg:background-color var(--duration-base) var(--ease-standard);--focus-ring-color:var(--color-accent)}
