/*! 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-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:-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-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--container-6xl:90rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--leading-relaxed:1.625;--radius-sm:.125rem;--radius-md:.25rem;--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-paper:#fff;--color-paper-warm:#f4f4f2;--color-ink:#0a0a0a;--color-ink-soft:#242424;--color-mute:#686868;--color-rule:#d6d6d2;--color-accent:#c8102e;--color-error:#a30d25;--font-display:"Archivo Black", sans-serif;--font-body:"Source Sans 3", sans-serif;--spacing-2xs:.25rem;--spacing-xs:.5rem;--spacing-sm:.75rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4.5rem;--spacing-4xl:7rem;--container-prose:42rem}}@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;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}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);margin:0;line-height:1.15}p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}input,textarea,select{font:inherit}img{max-width:100%;height:auto;display:block}ul,ol{margin:0;padding:0;list-style:none}}@layer components;@layer utilities{.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.top-full{top:100%}.right-0{right:0}.left-0{left:0}.container-reading{max-width:var(--container-prose);margin-inline:auto}.mx-auto{margin-inline:auto}.mt-2xl{margin-top:var(--spacing-2xl)}.mt-3xl{margin-top:var(--spacing-3xl)}.mt-lg{margin-top:var(--spacing-lg)}.mt-md{margin-top:var(--spacing-md)}.mt-sm{margin-top:var(--spacing-sm)}.mt-xl{margin-top:var(--spacing-xl)}.mt-xs{margin-top:var(--spacing-xs)}.mb-md{margin-bottom:var(--spacing-md)}.ml-0{margin-left:0}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.h-auto{height:auto}.w-16{width:calc(var(--spacing) * 16)}.w-40{width:calc(var(--spacing) * 40)}.w-44{width:calc(var(--spacing) * 44)}.w-full{width:100%}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[12ch\]{max-width:12ch}.max-w-\[13ch\]{max-width:13ch}.max-w-\[22ch\]{max-width:22ch}.max-w-\[30rem\]{max-width:30rem}.max-w-\[32rem\]{max-width:32rem}.max-w-\[34rem\]{max-width:34rem}.max-w-\[38rem\]{max-width:38rem}.max-w-\[42rem\]{max-width:42rem}.max-w-\[48rem\]{max-width:48rem}.shrink-0{flex-shrink:0}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.gap-2xl{gap:var(--spacing-2xl)}.gap-3xl{gap:var(--spacing-3xl)}.gap-lg{gap:var(--spacing-lg)}.gap-md{gap:var(--spacing-md)}.gap-sm{gap:var(--spacing-sm)}.gap-xl{gap:var(--spacing-xl)}.self-start{align-self:flex-start}.border{border-style:var(--tw-border-style);border-width:1px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-accent{border-color:var(--color-accent)}.border-rule{border-color:var(--color-rule)}.bg-ink{background-color:var(--color-ink)}.bg-paper{background-color:var(--color-paper)}.bg-paper-warm{background-color:var(--color-paper-warm)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.px-lg{padding-inline:var(--spacing-lg)}.py-2xl{padding-block:var(--spacing-2xl)}.py-3xl{padding-block:var(--spacing-3xl)}.py-4xl{padding-block:var(--spacing-4xl)}.py-lg{padding-block:var(--spacing-lg)}.py-md{padding-block:var(--spacing-md)}.py-sm{padding-block:var(--spacing-sm)}.font-display{font-family:var(--font-display)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.leading-\[1\.02\]{--tw-leading:1.02;line-height:1.02}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-\[0\.14em\]{--tw-tracking:.14em;letter-spacing:.14em}.text-accent{color:var(--color-accent)}.text-ink-soft{color:var(--color-ink-soft)}.text-mute{color:var(--color-mute)}.text-paper{color:var(--color-paper)}.text-paper\/70{color:#ffffffb3}@supports (color:color-mix(in lab,red,red)){.text-paper\/70{color:color-mix(in oklab,var(--color-paper) 70%,transparent)}}.text-paper\/80{color:#fffc}@supports (color:color-mix(in lab,red,red)){.text-paper\/80{color:color-mix(in oklab,var(--color-paper) 80%,transparent)}}.text-paper\/85{color:#ffffffd9}@supports (color:color-mix(in lab,red,red)){.text-paper\/85{color:color-mix(in oklab,var(--color-paper) 85%,transparent)}}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.decoration-accent{-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}.decoration-2{text-decoration-thickness:2px}.underline-offset-4{text-underline-offset:4px}.underline-offset-8{text-underline-offset:8px}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.peer-checked\:flex:is(:where(.peer):checked~*){display:flex}@media(hover:hover){.hover\:text-accent:hover{color:var(--color-accent)}}.focus-visible\:outline-3:focus-visible{outline-style:var(--tw-outline-style);outline-width:3px}.focus-visible\:outline-offset-4:focus-visible{outline-offset:4px}.focus-visible\:outline-accent:focus-visible{outline-color:var(--color-accent)}@media(min-width:40rem){.sm\:inline{display:inline}.sm\:w-52{width:calc(var(--spacing) * 52)}.sm\:w-auto{width:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:p-2xl{padding:var(--spacing-2xl)}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}}@media(min-width:48rem){.md\:static{position:static}.md\:right-auto{right:auto}.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-\[1\.35fr_\.7fr_\.95fr\]{grid-template-columns:1.35fr .7fr .95fr}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:gap-lg{gap:var(--spacing-lg)}.md\:border-0{border-style:var(--tw-border-style);border-width:0}.md\:bg-transparent{background-color:#0000}.md\:px-0{padding-inline:0}.md\:py-0{padding-block:0}.md\:shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media(min-width:64rem){.lg\:mx-0{margin-inline:0}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.lg\:grid-cols-\[0\.8fr_1\.2fr\]{grid-template-columns:.8fr 1.2fr}.lg\:grid-cols-\[1\.02fr_\.98fr\]{grid-template-columns:1.02fr .98fr}.lg\:grid-cols-\[1\.15fr_0\.85fr\]{grid-template-columns:1.15fr .85fr}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:items-end{align-items:flex-end}.lg\:justify-between{justify-content:space-between}.lg\:gap-3xl{gap:var(--spacing-3xl)}.lg\:self-auto{align-self:auto}.lg\:py-4xl{padding-block:var(--spacing-4xl)}.lg\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}}}.btn-primary{border-radius:var(--radius-md);padding-inline:var(--spacing-lg);padding-block:var(--spacing-md);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);border:1px solid var(--color-accent);background:var(--color-accent);color:var(--color-paper);justify-content:center;align-items:center;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex;box-shadow:0 8px 24px #c8102e3d}@supports (color:color-mix(in lab,red,red)){.btn-primary{box-shadow:0 8px 24px color-mix(in srgb,var(--color-accent) 24%,transparent)}}.btn-primary:hover:not(:disabled){border-color:var(--color-paper);background:var(--color-paper);color:var(--color-ink);transform:translateY(-2px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{border-radius:var(--radius-md);padding-inline:var(--spacing-lg);padding-block:var(--spacing-md);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);background:var(--color-paper);color:var(--color-ink);border:2px solid var(--color-ink);justify-content:center;align-items:center;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.btn-secondary:hover:not(:disabled){border-color:var(--color-ink);background:var(--color-ink);color:var(--color-paper);transform:translateY(-2px)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{border-radius:var(--radius-md);padding-inline:var(--spacing-lg);padding-block:var(--spacing-md);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--color-ink);background:0 0;justify-content:center;align-items:center;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.btn-ghost:hover:not(:disabled){background:var(--color-paper-warm)}.btn-ghost:disabled{opacity:.5;cursor:not-allowed}[data-decorative-slot]{position:relative;overflow:hidden}[data-decorative-slot]>img{object-fit:cover;width:100%;height:100%}.editorial-rule{background:var(--color-accent);opacity:.6;height:1px;margin-block:var(--spacing-lg);border:0}.site-nav{z-index:50;background:#fffffff0;position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.site-nav{background:color-mix(in srgb,var(--color-paper) 94%,transparent)}}.site-nav{-webkit-backdrop-filter:saturate(1.1)blur(8px);backdrop-filter:saturate(1.1)blur(8px);border-bottom:1px solid var(--color-rule)}.site-footer{border-top:4px solid var(--color-accent);background:var(--color-ink);color:var(--color-paper)}:focus-visible{outline:3px solid #d9586d}@supports (color:color-mix(in lab,red,red)){:focus-visible{outline:3px solid color-mix(in srgb,var(--color-accent) 70%,white)}}:focus-visible{outline-offset:3px}.btn-primary,.btn-secondary,.btn-on-dark{min-height:3.25rem;font-family:var(--font-display);letter-spacing:.02em;font-size:.875rem;transition:transform .18s,background-color .18s,border-color .18s,color .18s,box-shadow .18s}.btn-on-dark{border-radius:var(--radius-md);padding-inline:var(--spacing-lg);padding-block:var(--spacing-md);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);border:2px solid var(--color-paper);color:var(--color-paper);background:0 0;justify-content:center;align-items:center;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.btn-on-dark:hover{background:var(--color-paper);color:var(--color-ink);transform:translateY(-2px)}.eyebrow{color:var(--color-accent);font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;font-size:.78rem}.eyebrow-on-dark{color:#ff7187}.section-heading{gap:var(--spacing-md);max-width:48rem;display:grid}.section-heading h2{max-width:27ch;font-size:clamp(2rem,4vw,3rem);line-height:1.08}.section-heading>p:last-child{max-width:42rem;color:var(--color-mute);font-size:1.1rem}.home-hero,.home-cta,.page-hero,.dark-cta{background:var(--color-ink);color:var(--color-paper)}.home-hero{position:relative;overflow:hidden}.home-hero:before{background:var(--color-accent);content:"";width:.35rem;position:absolute;inset:0 auto 0 0}.hero-facts{gap:var(--spacing-sm);color:#ffffffb8;flex-wrap:wrap;display:flex}@supports (color:color-mix(in lab,red,red)){.hero-facts{color:color-mix(in srgb,var(--color-paper) 72%,transparent)}}.hero-facts{font-size:.9rem}.hero-facts span{border-left:2px solid var(--color-accent);padding-left:var(--spacing-sm)}.hero-facts strong{color:var(--color-paper)}.hero-image-frame{border:1px solid #ffffff47;margin:0;position:relative}@supports (color:color-mix(in lab,red,red)){.hero-image-frame{border:1px solid color-mix(in srgb,var(--color-paper) 28%,transparent)}}.hero-image-frame{padding:var(--spacing-sm);box-shadow:1.1rem 1.1rem 0 var(--color-accent);background:#171717}.hero-image{aspect-ratio:4/3;object-fit:cover;object-position:center;width:100%}.hero-image-frame figcaption{padding:var(--spacing-sm) var(--spacing-xs) var(--spacing-xs);color:#ffffffb8}@supports (color:color-mix(in lab,red,red)){.hero-image-frame figcaption{color:color-mix(in srgb,var(--color-paper) 72%,transparent)}}.hero-image-frame figcaption{letter-spacing:.04em;font-size:.82rem}.service-card{gap:var(--spacing-md);border:1px solid var(--color-rule);background:var(--color-paper);min-height:18rem;padding:var(--spacing-xl);flex-direction:column;transition:border-color .18s,transform .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 30px #0a0a0a0d}.service-card:before{background:var(--color-accent);content:"";height:4px;position:absolute;inset:0 0 auto}.service-card:hover{border-color:var(--color-ink);transform:translateY(-4px);box-shadow:0 18px 42px #0a0a0a1c}.service-card-number{color:var(--color-accent);font-family:var(--font-display)}.service-card h3{font-size:1.45rem}.service-card p{color:var(--color-mute)}.service-card a{color:var(--color-ink);font-family:var(--font-display);margin-top:auto;font-size:.85rem}.service-card a span{color:var(--color-accent)}.project-preview-grid{gap:var(--spacing-md);margin-top:var(--spacing-2xl);display:grid}.project-preview{border:1px solid var(--color-rule);background:var(--color-ink);min-height:25rem;color:var(--color-paper);position:relative;overflow:hidden}.project-preview img{object-fit:cover;width:100%;height:100%;transition:transform .35s}.project-preview:hover img{transform:scale(1.035)}.project-preview-shade{background:linear-gradient(#0a0a0a0a 25%,#0a0a0aeb);position:absolute;inset:0}.project-preview-index{top:var(--spacing-md);right:var(--spacing-md);background:var(--color-accent);width:2.5rem;height:2.5rem;font-family:var(--font-display);place-items:center;display:grid;position:absolute}.project-preview-copy{inset:auto var(--spacing-lg) var(--spacing-lg);gap:var(--spacing-xs);flex-direction:column;display:flex;position:absolute}.project-preview-copy small{color:#ff8a9d;letter-spacing:.13em;text-transform:uppercase;font-weight:700}.project-preview-copy strong{font-family:var(--font-display);font-size:1.2rem;line-height:1.25}.project-preview-copy>span{font-weight:700}.page-hero h1{margin-top:var(--spacing-md);max-width:17ch;font-size:clamp(2.5rem,6vw,4rem);line-height:1.03}.page-hero>div>p:last-child{margin-top:var(--spacing-lg);color:#ffffffc7;max-width:45rem}@supports (color:color-mix(in lab,red,red)){.page-hero>div>p:last-child{color:color-mix(in srgb,var(--color-paper) 78%,transparent)}}.page-hero>div>p:last-child{font-size:1.15rem}.service-list-grid{gap:var(--spacing-lg);display:grid}.service-list-card{gap:var(--spacing-md);border:1px solid var(--color-rule);border-top:4px solid var(--color-ink);background:var(--color-paper-warm);min-height:17rem;padding:var(--spacing-xl);flex-direction:column;display:flex}.service-list-top{color:var(--color-accent);font-family:var(--font-display);justify-content:space-between;display:flex}.service-list-card h2{font-size:1.75rem}.service-list-card p{color:var(--color-mute);font-size:1.05rem}.dark-cta{gap:var(--spacing-xl);border-left:6px solid var(--color-accent);padding:var(--spacing-xl);flex-direction:column;align-items:flex-start;display:flex}.dark-cta h2{margin-top:var(--spacing-sm);font-size:clamp(1.8rem,4vw,2.5rem)}.dark-cta p:last-child{margin-top:var(--spacing-sm);color:#ffffffc2;max-width:44rem}@supports (color:color-mix(in lab,red,red)){.dark-cta p:last-child{color:color-mix(in srgb,var(--color-paper) 76%,transparent)}}.about-image{border:1px solid var(--color-rule);background:var(--color-ink);padding:var(--spacing-sm);color:var(--color-paper);margin:0}.about-image img{aspect-ratio:4/3;object-fit:cover;width:100%}.about-image figcaption{padding:var(--spacing-sm) var(--spacing-xs) var(--spacing-xs);color:#ffffffbd}@supports (color:color-mix(in lab,red,red)){.about-image figcaption{color:color-mix(in srgb,var(--color-paper) 74%,transparent)}}.about-image figcaption{font-size:.875rem}.rich-copy{gap:var(--spacing-md);color:var(--color-ink-soft);font-size:1.05rem;display:grid}.about-values{gap:var(--spacing-sm);display:grid}.about-values>div{gap:var(--spacing-xs);border-left:3px solid var(--color-accent);background:var(--color-paper-warm);padding:var(--spacing-md);display:grid}.about-values strong{font-family:var(--font-display)}.about-values span{color:var(--color-mute)}.project-gallery-card{border:1px solid var(--color-rule);background:var(--color-paper);overflow:hidden;box-shadow:0 18px 48px #0a0a0a12}.project-gallery-heading{gap:var(--spacing-md);border-left:5px solid var(--color-accent);background:var(--color-paper-warm);padding:var(--spacing-xl);flex-direction:column;display:flex}.project-gallery-heading>p{max-width:42rem;color:var(--color-mute)}.project-gallery-image{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .25s}.project-gallery-card figure{overflow:hidden}.project-gallery-card figure:hover .project-gallery-image{transform:scale(1.025)}.nav-brand{align-items:center;gap:var(--spacing-sm);min-width:0;font-family:var(--font-display);font-size:clamp(.82rem,1.6vw,1rem);line-height:1.1;display:inline-flex}.nav-brand img{object-fit:contain;width:3.4rem;height:2.8rem}.nav-toggle{border:1px solid var(--color-rule);background:var(--color-paper);cursor:pointer;flex-direction:column;gap:5px;padding:.65rem;display:inline-flex}.nav-toggle span{background:var(--color-ink);width:1.45rem;height:2px;display:block}.site-nav-item a{padding-block:.35rem;font-weight:600;position:relative}.site-nav-item a:after{background:var(--color-accent);transform-origin:0;content:"";height:2px;transition:transform .15s;position:absolute;inset:auto 0 0;transform:scaleX(0)}.site-nav-item a:hover:after,.site-nav-item a:focus-visible:after{transform:scaleX(1)}.nav-phone{border:1px solid var(--color-accent);background:var(--color-accent);min-height:2.5rem;color:var(--color-paper);align-items:center;padding:.45rem .75rem;font-weight:700;display:inline-flex}.footer-heading{color:var(--color-paper);font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;font-size:.85rem}.site-footer nav a{color:#ffffffb8}@supports (color:color-mix(in lab,red,red)){.site-footer nav a{color:color-mix(in srgb,var(--color-paper) 72%,transparent)}}.site-footer nav a:hover{color:var(--color-paper);text-decoration:underline;-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent);text-underline-offset:5px}.footer-phone{color:var(--color-paper);font-family:var(--font-display);text-decoration:underline;-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent);text-underline-offset:7px;font-size:1.5rem}.footer-bottom{gap:var(--spacing-xs);color:#ffffff9e;border-top:1px solid #ffffff2b;flex-direction:column;display:flex}@supports (color:color-mix(in lab,red,red)){.footer-bottom{color:color-mix(in srgb,var(--color-paper) 62%,transparent)}}@media(min-width:48rem){.nav-toggle{display:none}.project-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-gallery-heading{flex-direction:row;justify-content:space-between;align-items:end}.footer-bottom{flex-direction:row;justify-content:space-between}}@media(min-width:64rem){.dark-cta{padding:var(--spacing-2xl);flex-direction:row;justify-content:space-between;align-items:center}}@media(max-width:47.99rem){.btn-primary,.btn-secondary,.btn-on-dark{width:100%}.hero-image-frame{box-shadow:.65rem .65rem 0 var(--color-accent)}.project-preview{min-height:21rem}}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}.nav-progress{background:var(--color-accent,currentColor);transform-origin:0;z-index:1000;pointer-events:none;opacity:0;height:2px;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}.nav-progress[data-state=loading]{opacity:1;transition:transform 1.6s cubic-bezier(.2,.8,.2,1),opacity .12s;transform:scaleX(.85)}.nav-progress[data-state=done]{opacity:0;transition:transform .2s,opacity .24s 60ms;transform:scaleX(1)}body[data-navigating=true] .product-grid{opacity:.55;pointer-events:none;transition:opacity .14s}.product-grid{transition:opacity .2s}.site-nav-item.has-submenu{position:relative}.site-nav-submenu{gap:var(--spacing-2xs);min-width:12rem;padding:var(--spacing-sm);background:var(--color-paper);border:1px solid var(--color-rule);border-radius:var(--radius-md);opacity:0;visibility:hidden;flex-direction:column;transition:opacity .16s,transform .16s,visibility .16s;display:flex;position:absolute;top:100%;left:0;transform:translateY(4px)}.site-nav-item.has-submenu:hover .site-nav-submenu,.site-nav-item.has-submenu:focus-within .site-nav-submenu{opacity:1;visibility:visible;transform:translateY(0)}.site-nav-sublink{color:var(--color-ink-soft,var(--color-mute));padding-block:var(--spacing-2xs);font-size:.875rem}.site-nav-sublink:hover,.site-nav-sublink[aria-current=page]{color:var(--color-accent)}.category-rail{background:var(--color-paper-warm);border-bottom:1px solid var(--color-rule)}.category-rail-inner{gap:var(--spacing-sm);padding-block:var(--spacing-md);flex-wrap:wrap;display:flex}.category-pill{padding:var(--spacing-2xs) var(--spacing-md);border:1px solid var(--color-rule);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--color-ink-soft,var(--color-ink));align-items:center;font-size:.8125rem;transition:border-color .16s,color .16s,background-color .16s;display:inline-flex}.category-pill:hover{border-color:var(--color-accent);color:var(--color-accent)}.category-pill[aria-current=page]{background:var(--color-ink);color:var(--color-paper);border-color:var(--color-ink)}.pagination{margin-block:var(--spacing-xl)}.pagination-inner{justify-content:space-between;gap:var(--spacing-md);display:flex}.pagination-link{color:var(--color-ink)}.pagination-link:hover{color:var(--color-accent)}.pagination-link.is-disabled{opacity:.4;pointer-events:none}.breadcrumbs{color:var(--color-mute);margin-bottom:var(--spacing-sm);font-size:.8125rem}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}.form-container{display:grid;gap:var(--spacing-lg);color:var(--color-ink)}.form-field{display:grid;gap:var(--spacing-2xs)}.form-label{color:var(--color-ink);font-family:var(--font-display);font-size:.875rem;letter-spacing:.035em;line-height:1.3}.required{color:var(--color-accent)}.form-input,.form-select,.form-textarea{width:100%;min-height:3rem;appearance:none;border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);padding:var(--spacing-sm) var(--spacing-md);transition:border-color .16s ease,box-shadow .16s ease}.form-textarea{min-height:8rem;resize:vertical}.form-select{background-image:linear-gradient(45deg,transparent 50%,var(--color-ink) 50%),linear-gradient(135deg,var(--color-ink) 50%,transparent 50%);background-position:calc(100% - 1.25rem) 52%,calc(100% - .95rem) 52%;background-repeat:no-repeat;background-size:.3rem .3rem,.3rem .3rem;padding-right:var(--spacing-3xl)}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-mute)}.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:var(--color-ink-soft)}.form-input:focus-visible,.form-select:focus-visible,.form-textarea:focus-visible,.form-button:focus-visible{outline:3px solid color-mix(in srgb,var(--color-accent) 35%,transparent);outline-offset:2px}.form-input-error,.form-field-has-error .form-select,.form-field-has-error .form-textarea{border-color:var(--color-error)}.form-field-error,.form-error,.form-field-hint{font-size:.875rem;line-height:1.4}.form-field-hint{color:var(--color-mute)}.form-field-error,.form-error{color:var(--color-error)}.form-error a{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:.2em}.form-button{justify-self:start;min-height:3rem;border:1px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-accent);color:var(--color-paper);font-family:var(--font-display);font-size:.875rem;letter-spacing:.045em;padding:var(--spacing-sm) var(--spacing-xl);transition:background-color .16s ease,border-color .16s ease,transform .16s ease}.form-button:hover:not(:disabled){border-color:var(--color-ink);background:var(--color-ink)}.form-button:active:not(:disabled){transform:translateY(1px)}.form-button:disabled{cursor:wait;opacity:.65}.form-success{display:grid;gap:var(--spacing-xs);border:1px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-paper-warm);color:var(--color-ink);padding:var(--spacing-xl)}.form-success strong{font-family:var(--font-display)}@media(max-width:42rem){.form-button{width:100%;justify-self:stretch}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
