@layer reset,tokens,base,components,layouts,pages,states,responsive,utilities;@font-face{font-family:Acme;src:url(/fonts/Acme/Acme-Regular.woff2) format("woff2"),url(/fonts/Acme/Acme-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inconsolata;src:url(/fonts/Inconsolata/Inconsolata-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inconsolata;src:url(/fonts/Inconsolata/Inconsolata-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@layer reset{*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}[hidden]{display:none!important}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;scroll-behavior:smooth;-moz-text-size-adjust:100%;text-size-adjust:100%;scrollbar-color:rgba(var(--text-rgb, 25, 25, 25),.7) transparent}::selection{background-color:var(--color-brand-red);color:var(--color-neutral-100)}::-moz-selection{background-color:var(--color-brand-red);color:var(--color-neutral-100)}body{font-family:var( --font-family-body, "Inconsolata", ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, monospace );font-weight:500;line-height:1.4;margin:0;padding:0;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-display:swap}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;line-height:1.2;margin:0}p{margin:0;line-height:1.6}ul,ol{list-style:none;margin:0;padding:0}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle;max-width:100%;height:auto}button svg,.btn svg,[type=button] svg,[type=submit] svg{color:inherit}img{border-style:none}table{border-collapse:collapse;border-spacing:0}a{color:inherit;text-decoration:inherit}a:hover{text-decoration:underline}nav a:hover,.sidebar a:hover,.portal-global-header a:hover,.portal-tabs a:hover,.tab-list a:hover,.stat-card a:hover,.btn-primary:hover,.btn-secondary:hover,.btn-sm:hover{text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus{outline:none}:focus-visible{outline:none;box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring-color)}:focus:not(:focus-visible){outline:none}details{border-radius:var(--border-radius-lg, 12px)}summary{display:flex;align-items:center;gap:var(--icon-gap-md);cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.portal :is(button,a,.btn,.btn-primary,.btn-secondary,.btn-outline):not(.icon-btn):not(.nav-btn)>.btn-icon{width:1em;height:1em;flex-shrink:0}.portal :is(button,a,.btn):hover>svg,.portal :is(button,a,.btn):hover>.btn-icon{color:inherit}.portal svg{color:var(--color-text-primary);align-self:center}.portal button svg,.portal a svg{color:inherit}details:focus-within{outline:2px solid var(--color-brand-red);outline-offset:-2px}details>summary:focus-visible{outline:none;box-shadow:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(prefers-contrast:high){:root{--color-shadow: rgba(0, 0, 0, .8)}}@media print{*{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}body{font-size:12pt;line-height:1.5}}}@layer tokens;@layer tokens;@layer tokens{:root{--nav-overlay-rgb: 25, 25, 25;--nav-overlay-alpha: .25;--overlay-backdrop: rgba(var(--nav-overlay-rgb), var(--nav-overlay-alpha));--color-brand-red: #b91c1c;--color-brand-red-rgb: 185, 28, 28;--color-ink-on-fill: #ffffff;--color-brand-secondary: #10b981;--color-gray-50: #fafafa;--color-gray-100: #f5f5f5;--color-gray-200: #e0e0e0;--color-gray-300: #d4d4d4;--color-gray-400: #a3a3a3;--color-gray-500: #737373;--color-gray-600: #525252;--color-gray-700: #404040;--color-gray-800: #262626;--color-gray-900: #171717;--portal-neutral-0: #000000;--color-off-white: #e0e0e0;--color-bg-primary: var(--color-off-white);--color-bg-secondary: var(--color-gray-100);--color-bg-tertiary: var(--color-gray-200);--color-bg-raised: var(--color-gray-300);--color-bg-elevated: var(--color-gray-400);--color-bg-prominent: var(--color-gray-500);--color-bg-hover: var(--color-gray-100);--color-bg-readonly: var(--color-bg-primary);--color-text-primary: var(--color-gray-900);--text-rgb: 23, 23, 23;--color-text-secondary: var(--color-gray-700);--color-text-tertiary: var(--color-gray-600);--color-text-muted: var(--color-text-tertiary);--color-text-inverse: var(--color-off-white);--color-nav-text: #333333;--color-border-primary: var(--color-gray-300);--color-border-secondary: var(--color-gray-200);--color-border-focus: var(--color-brand-red);--color-state-hover: rgba(0, 0, 0, .05);--color-shadow-sm: rgba(0, 0, 0, .05);--color-shadow-md: rgba(0, 0, 0, .1);--color-shadow-xl: rgba(0, 0, 0, .25);--color-shadow-2xl: rgba(0, 0, 0, .3);--color-shadow-3xl: rgba(0, 0, 0, .5);--color-overlay-light: rgba(0, 0, 0, .5);--color-overlay-heavy: rgba(0, 0, 0, .8)}html[data-theme=dark]{--nav-overlay-rgb: 0, 0, 0;--nav-overlay-alpha: .9;--color-bg-primary: var(--color-gray-900);--color-bg-secondary: var(--color-gray-800);--color-bg-tertiary: var(--color-gray-700);--color-text-primary: var(--color-gray-50);--text-rgb: 250, 250, 250;--color-text-secondary: var(--color-gray-200);--color-text-tertiary: var(--color-gray-400);--color-text-inverse: var(--color-gray-900);--color-nav-text: var(--color-gray-50);--color-border-primary: var(--color-text-primary);--color-border-secondary: var(--color-gray-700);--color-state-hover: rgba(255, 255, 255, .1);--color-shadow-sm: rgba(0, 0, 0, .3);--color-shadow-md: rgba(0, 0, 0, .5);--color-shadow-xl: rgba(0, 0, 0, .9)}@media(prefers-contrast:high){:root{--color-text-primary: #000000;--color-text-secondary: #000000;--color-border-primary: #000000;--color-shadow-md: rgba(0, 0, 0, .5)}html[data-theme=dark]{--color-text-primary: #ffffff;--color-text-secondary: #ffffff;--color-border-primary: #ffffff}}:root,html[data-theme=light]{--color-neutral-100: #fffdfc;--color-neutral-300: #e0e0e0;--color-neutral-400: var(--color-gray-400);--color-neutral-500: var(--color-gray-500);--color-neutral-600: var(--color-gray-600);--color-neutral-700: var(--color-gray-700);--color-neutral-800: var(--color-gray-800);--color-dark: #333333;--color-light: #ffffff;--color-primary: var(--color-text-primary);--color-secondary: var(--color-brand-secondary);--color-border: #000000;--color-text-on-light: #191a0b;--color-shadow: rgba(0, 0, 0, .2);--color-label-ink: var(--color-gray-900);--color-success: #065f46;--color-warning: #92400e;--color-error: #be123c;--color-error-rgb: 190, 18, 60;--color-error-light: #ffe4e6;--color-info: #1e40af;--color-purple: #c084fc;--color-pink: #f472b6;--color-cyan: #22d3ee;--color-admin-purple: #a855f7;--status-active: #1e40af;--status-pending: #92400e;--status-completed: #065f46;--status-completed-bg: rgba(var(--color-success-rgb), .15);--status-cancelled: var(--color-error);--status-cancelled-bg: rgba(var(--color-error-rgb), .15);--status-qualified: #6d28d9;--status-inactive: #4b5563;--status-new: #155e75;--status-on-hold: #9a3412;--color-terminal-bg: #000000;--color-terminal-bg-light: #0d0d0d;--color-terminal-bg-panel: #0a0a0a;--color-terminal-bg-hover: #1a1a1a;--color-terminal-bg-dark: #222222;--color-terminal-border: #2a2a2a;--color-terminal-green: #7ff709;--color-terminal-green-dark: #5cb800;--color-terminal-blue: #268bd2;--color-terminal-cyan: #88def2;--color-terminal-red: #ff4444;--color-terminal-pink: #ec4891;--color-terminal-text: #e0e8f0;--color-terminal-text-muted: #808080;--color-terminal-text-dim: #606060;--color-terminal-text-dimmer: #404040;--color-terminal-scrollbar: #2a2a2a;--color-terminal-scrollbar-hover: #3a3a3a;--color-mac-close: #ff5f56;--color-mac-close-rgb: 255, 95, 86;--color-mac-minimize: #ffbd2e;--color-mac-maximize: #27ca40;--color-success-rgb: 6, 95, 70;--color-skeleton-base: #2a2a2a;--color-skeleton-highlight: #3a3a3a;--color-card-bg: var(--color-off-white);--color-card-bg-gradient-end: #f8f9fa;--color-card-text: #333333}html[data-theme=dark]{--color-warning: #fbbf24;--color-success: #34d399;--color-info: #60a5fa;--status-active: #60a5fa;--status-pending: #fbbf24;--status-completed: #34d399;--status-qualified: #a78bfa;--status-inactive: #9ca3af;--status-new: #22d3ee;--status-on-hold: #fb923c;--color-brand-red: #f87171;--color-brand-red-rgb: 248, 113, 113;--color-ink-on-fill: #171717;--color-error: #fda4af;--color-error-rgb: 253, 164, 175;--color-success-rgb: 52, 211, 153;--color-neutral-300: #333333;--color-neutral-100: #3a3a3a;--color-neutral-700: #d0d0d0;--color-neutral-800: #f0f0f0;--color-dark: #e0e0e0;--color-light: #1a1a1a;--color-secondary: var(--color-brand-secondary);--color-shadow: rgba(0, 0, 0, 1);--color-card-bg: var(--color-gray-200);--color-card-bg-gradient-end: var(--color-gray-300)}}@layer tokens;@layer tokens{:root{--font--acme: "Acme", sans-serif;--font-family-acme: var(--font--acme);--font-family-sans: "Inconsolata", ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, monospace;--font-family-serif: var(--font-family-mono);--font-family-mono: "Inconsolata", ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, monospace;--font-family-display: var(--font-family-mono);--font-family-body: "Inconsolata", ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, monospace;--font-size-2xs: clamp(.625rem, .6rem + .125vw, .6875rem);--font-size-xs: clamp(.75rem, .7rem + .25vw, .875rem);--font-size-sm: clamp(.875rem, .825rem + .25vw, 1rem);--font-size-md: clamp(1rem, .95rem + .25vw, 1.125rem);--font-size-lg: clamp(1.125rem, 1.05rem + .375vw, 1.25rem);--font-size-xl: clamp(1.25rem, 1.125rem + .625vw, 1.5rem);--font-size-2xl: clamp(1.5rem, 1.25rem + 1.25vw, 2rem);--font-size-3xl: clamp(1.875rem, 1.5rem + 1.875vw, 2.5rem);--font-size-4xl: clamp(2.25rem, 1.75rem + 2.5vw, 3rem);--font-size-5xl: clamp(3rem, 2rem + 5vw, 4rem);--section-heading-size: var(--font-size-5xl);--font-size-base: var(--font-size-md);--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-none: 1;--line-height-tight: 1.25;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--letter-spacing-tightest: -.09em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--letter-spacing-widest: .1em;--letter-spacing-label: var(--letter-spacing-wider);--letter-spacing-title: var(--letter-spacing-wide);--label-font-size: var(--font-size-sm);--label-font-weight: var(--font-weight-bold);--label-letter-spacing: var(--letter-spacing-label);--label-text-transform: uppercase;--field-label-value-gap: calc(var(--space-px) * 2);--portal-field-label-gap: var(--field-label-value-gap);--heading-page-font-size: var(--font-size-xl);--heading-page-font-weight: var(--font-weight-semibold);--heading-page-color: var(--color-text-primary);--heading-card-font-size: var(--font-size-lg);--heading-card-font-weight: var(--font-weight-bold);--heading-card-color: var(--color-text-primary);--heading-card-letter-spacing: var(--letter-spacing-label);--heading-section-font-size: var(--font-size-base);--heading-section-font-weight: var(--font-weight-bold);--heading-section-color: var(--color-text-primary);--heading-section-letter-spacing: var(--letter-spacing-label);--heading-text-transform: uppercase;--heading-font-family: var(--font-family-acme);--portal-subtab-family: var(--font-family-mono);--portal-subtab-size: var(--font-size-base);--portal-subtab-weight: var(--font-weight-medium);--portal-subtab-transform: uppercase;--portal-subtab-spacing: var(--letter-spacing-label)}:root{--font-mono: var(--font-family-mono)}}@layer tokens{:root{--space-base: .5rem;--space-0: 0;--space-px: 1px;--space-0-25: calc(var(--space-base) * .25);--space-0-5: calc(var(--space-base) * .5);--space-1: var(--space-base);--space-1-5: calc(var(--space-base) * 1.5);--space-2: calc(var(--space-base) * 2);--space-2-5: calc(var(--space-base) * 2.5);--space-3: calc(var(--space-base) * 3);--space-3-5: calc(var(--space-base) * 3.5);--space-4: calc(var(--space-base) * 4);--space-4-5: calc(var(--space-base) * 4.5);--space-5: calc(var(--space-base) * 5);--space-6: calc(var(--space-base) * 6);--space-7: calc(var(--space-base) * 7);--space-8: calc(var(--space-base) * 8);--space-10: calc(var(--space-base) * 10);--space-12: calc(var(--space-base) * 12);--space-20: calc(var(--space-base) * 20);--space-fluid-sm: clamp(.5rem, 2vw, 1rem);--space-fluid-md: clamp(1rem, 3vw, 1.5rem);--space-fluid-lg: clamp(1.5rem, 4vw, 2rem);--icon-gap-xs: 8px;--icon-gap-sm: 10px;--icon-gap-md: 12px;--icon-gap-xl: 20px;--icon-gap: clamp(8px, .75vw, 10px);--content-gutter: var(--space-2);--portal-section-gap: var(--space-3);--portal-stack-gap: var(--space-5);--portal-table-stack-gap: var(--space-8)}}@layer tokens{:root{--shadow-lg: 0 10px 15px -3px var(--color-shadow-md), 0 4px 6px -4px var(--color-shadow-sm);--shadow-2xl: 0 25px 50px -12px var(--color-shadow-xl);--shadow-modal: var(--shadow-2xl)}:root{--shadow-inset-light: inset 2px 2px 6px rgba(0, 0, 0, .3), inset -1px -1px 3px rgba(0, 0, 0, .15);--shadow-elevated-sm: 0 4px 12px rgba(0, 0, 0, .15);--shadow-terminal: 4px 4px 10px rgba(0, 0, 0, .3), 0 8px 32px rgba(0, 0, 0, .4)}@media(prefers-contrast:high){:root{--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .3)}}}@layer tokens{:root{--border-width-thin: 1px;--border-width: 2px;--border-width-thick: 3px;--border-width-heavy: 4px;--svg-stroke-width: 2.5;--svg-stroke-width-bold: 2.75;--border-radius-xs: 0;--border-radius-sm: 0;--border-radius-md: 0;--border-radius-lg: 0;--border-radius-full: 9999px}:root{--focus-ring-color: var(--color-brand-red);--focus-ring-width: 2px}:root{--focus-ring-width-thick: 2px;--focus-ring-offset-sm: 2px}}@layer tokens{:root{--duration-faster: .15s;--duration-fast: .2s;--duration-medium: .3s;--transition-faster: .15s ease;--transition-fast: .2s ease;--transition-slow: .4s ease;--cubic-default: cubic-bezier(.4, 0, .2, 1);--cubic-menu: cubic-bezier(.65, .05, 0, 1);--page-blur-amount: 12px;--transition-theme: .4s;--transition-mouse: .2s;--transition-normal: .3s;--transition-length: .5s;--easing-linear: linear;--easing-ease-in-out: ease-in-out;--easing-decelerated: cubic-bezier(0, 0, .2, 1);--animation-spinner: 1s var(--easing-linear) infinite;--animation-spinner-fast: .8s var(--easing-linear) infinite;--animation-pulse-skeleton: 2s var(--easing-ease-in-out) infinite;--animation-skeleton-shimmer: 1.5s var(--easing-ease-in-out) infinite}}@layer tokens;@layer tokens{:root{--z-index-1: 1;--z-index-10: 10;--z-index-20: 20;--z-index-50: 50;--z-index-dropdown: 100;--z-index-modal: 500;--z-index-overlay: 900;--z-index-max: 999;--z-index-behind: -1;--z-index-base: 0;--z-index-content: 1;--z-index-elevated: 10;--z-index-skip-link: 9999;--z-header: var(--z-index-elevated);--z-nav: var(--z-index-nav);--z-modal: var(--z-index-portal-modal);--z-index-nav: 100;--z-index-nav-overlay: 115;--z-index-nav-menu: 120;--z-index-nav-menu-content: 125;--z-index-nav-header: 130;--z-index-business-card: 50;--z-index-loading: 999;--z-index-portal-overlay: 9500;--z-index-portal-modal: 9600;--z-index-portal-dropdown: 9700;--z-index-portal-toast: 9800}}@layer tokens{[data-page=admin],[data-page=client],[data-page=auth]{--portal-btn-padding-y: var(--space-2);--portal-btn-padding-x: var(--space-4);--portal-btn-padding: var(--portal-btn-padding-y) var(--portal-btn-padding-x);--portal-btn-min-height: var(--space-5);--portal-btn-font-family: "Inconsolata", ui-monospace, monospace;--portal-btn-font-size: .875rem;--portal-btn-font-weight: 500;--portal-btn-letter-spacing: .03em;--portal-btn-text-transform: uppercase;--portal-btn-border-width: 2px;--portal-btn-border-bottom-width: var(--portal-btn-border-width);--portal-btn-border-radius: 0;--portal-btn-border-color: var(--color-text-primary);--portal-btn-color: var(--color-text-primary);--portal-btn-hover-bg: var(--color-text-primary);--portal-btn-hover-color: var(--color-bg-primary);--portal-btn-hover-border: var(--color-text-primary);--portal-btn-danger-color: var(--color-error);--portal-btn-danger-border: var(--color-error);--portal-btn-danger-hover-bg: var(--color-error);--portal-btn-danger-hover-color: var(--color-ink-on-fill);--portal-btn-danger-hover-border: var(--color-error);--portal-btn-transition: all var(--transition-fast);--portal-btn-sm-font-size: .8rem;--portal-btn-sm-min-height: var(--space-4);--portal-btn-icon-size: calc(var(--space-4) + var(--space-0-5));--portal-btn-icon-size-sm: var(--space-4);--portal-btn-icon-size-xs: calc(var(--space-3) + var(--space-0-5));--portal-btn-icon-size-2xs: var(--space-3);--portal-btn-icon-inner-size: var(--icon-size-lg)}html[data-theme=light] body[data-page=client],html[data-theme=light] body[data-page=admin],html[data-theme=light] [data-page=client],html[data-theme=light] [data-page=admin]{--portal-btn-border-color: var(--color-gray-900);--portal-btn-color: var(--color-gray-900);--portal-btn-hover-bg: var(--color-gray-900);--portal-btn-hover-color: var(--color-off-white);--portal-btn-hover-border: var(--color-gray-900)}}@layer tokens{:root{--header-height: 60px;--footer-height: 40px;--size-container: min(1200px, 100vw - 2rem);--container-padding: clamp(1rem, 4vw, 2rem);--gap: clamp(.75rem, 3vw, 1.5rem);--modal-width-sm: 400px;--modal-width-md: 560px;--modal-width-lg: 860px;--icon-size-xs: 12px;--icon-size-sm: 14px;--icon-first-line-box: calc(var(--font-size-base) * var(--line-height-normal));--icon-size-md: 16px;--icon-size-lg: 20px;--icon-size-xl: 24px;--icon-size-2xl: 32px;--portal-nav-font-size: 1.25rem;--sidebar-icon-size: 20px;--dropdown-caret-size: var(--icon-size-xs);--dropdown-caret-gap: var(--space-2);--select-caret: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--select-caret-light: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23404040' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--status-dot-size: 8px;--menu-padding: clamp(.5rem, 2vw, 1rem);--menu-heading-size: clamp(2.5rem, 6vw, 4rem);--menu-width-desktop: 35rem;--menu-width-tablet: 32rem;--menu-width-mobile: 100vw;--menu-border-radius: 1.25rem;--contact-input-height: clamp(52px, 14vw, 60px);--contact-input-width: min(520px, 100%);--contact-textarea-height: 175px;--contact-textarea-width: min(520px, 100%);--contact-field-border-width: var(--border-width);--contact-field-border-color: var(--color-text-primary);--terminal-font-family: "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;--terminal-line-height: 1.7;--terminal-font-size: var(--font-size-base);--sidebar-width-open: 212px;--header-search-width: 18rem;--aside-width-narrow: 240px;--aside-width-medium: 280px;--aside-width-wide: 320px;--icon-btn-size-md: 36px;--icon-btn-size-lg: 40px;--icon-btn-size-xl: 48px;--icon-size-4xl: 96px;--form-section-max-width: 48rem;--divider-size: 2px;--indicator-dot-md: 10px;--indicator-dot-sm: 6px;--search-input-max-width: 20rem;--progress-bar-height: 16px;--toast-min-width: 250px;--toast-max-width: 400px}:root{--min-height-textarea-lg: 80px;--search-font-size: var(--font-size-sm);--search-icon-gap: var(--space-1-5);--search-icon-inset: var(--space-1)}}@layer tokens{*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-family-sans);font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-family-body);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.focus\:outline-none:focus{outline:none}.focus\:ring:focus{outline:2px solid transparent;box-shadow:0 0 0 2px var(--color-border-focus)}.disabled,[disabled]{opacity:.5;cursor:not-allowed;pointer-events:none}@media(prefers-contrast:high){.card,.btn,.input{border-width:2px}}@media(prefers-reduced-motion:reduce){.card,.btn,.input{transition:none;transform:none;animation:none}}}@layer tokens{:root{--font-size-2xs: .625rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem}:root{--letter-spacing-label: .05em;--letter-spacing-title: .02em;--letter-spacing-wide: .08em}:root{--color-shadow: rgba(0, 0, 0, .5)}*{box-sizing:border-box}html{scroll-behavior:smooth;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-text-size-adjust:100%}body{font-family:var( --font-family-body, "Inconsolata", ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, monospace );font-size:var(--font-size-base);line-height:1.6;margin:0;padding:0;color:var(--color-text-primary);transition:background-color var(--duration-fast) ease,color var(--duration-fast) ease}body:is([data-page=admin],[data-page=client]){font-family:var(--font-family-mono, "Inconsolata", monospace)}.header,main,section,.footer{transition:background-color var(--duration-fast) ease,color var(--duration-fast) ease}.container{width:100%;max-width:var(--size-container);margin:0 auto;padding:0 var(--container-padding)}img{max-width:100%;height:auto;display:block}}@layer base{body:not([data-page=admin]):not([data-page=client]) :is(h1,h2,h3,h4,h5,h6){line-height:1.2;text-transform:uppercase;text-shadow:0 2px 4px var(--color-shadow);margin:0;color:var(--color-dark)}body:not([data-page=admin]):not([data-page=client]) :is(h1,h2,h3){font-family:var(--font-family-acme)}body:not([data-page=admin]):not([data-page=client]) :is(h4,h5,h6){font-size:var(--heading-section-font-size);font-weight:var(--heading-section-font-weight);letter-spacing:var(--heading-section-letter-spacing);text-shadow:none}body:not([data-page=admin]):not([data-page=client]) .section-heading{line-height:var(--line-height-none)}h1,.h1{font-size:clamp(2rem,5vw,4rem)}h2,.h2{font-size:clamp(1.5rem,4vw,3rem);letter-spacing:.1em}h3,.h3{font-size:clamp(1.25rem,3vw,2rem)}h4,.h4{font-size:clamp(1.125rem,2.5vw,1.5rem)}h5,.h5{font-size:clamp(1rem,2vw,1.25rem)}h6,.h6{font-size:clamp(.875rem,1.5vw,1rem)}p{line-height:1.6;margin:0}hr{border:none;height:4px;border-radius:var(--border-radius-xs, 2px) 0 var(--border-radius-sm, 4px) var(--border-radius-xs, 2px);background-color:var(--color-dark);margin:0 0 var(--space-3) 0;width:100%}section h2{text-align:left;width:100%;margin:0;margin-bottom:var(--space-1);padding:0}section h2+hr{margin-top:0;margin-left:0;margin-right:auto;margin-bottom:var(--space-2)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.italic{font-style:italic}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.p-small{font-size:clamp(.75rem,1.5vw,.875rem);text-shadow:0 1px 2px var(--color-shadow)}.p-large{font-size:clamp(1rem,2.5vw,1.25rem);font-weight:600}p a{font-weight:600;text-decoration:none;position:relative;color:var(--color-primary, currentColor);padding:0 2px;white-space:nowrap}p a:before{content:"";position:absolute;width:100%;height:33%;border-radius:var(--border-radius-xs, 2px);background-color:currentColor;opacity:.3;bottom:10%;left:0;transform-origin:right;transform:scaleX(0);transition:transform var(--transition-length, .5s) cubic-bezier(.3,.9,.3,.9)}p a:hover:before,p a:focus:before{transform-origin:left;transform:scaleX(1)}.text-link{text-decoration:none;position:relative;color:inherit;padding:0 2px;white-space:nowrap;transition:color var(--transition-mouse, var(--duration-fast)) cubic-bezier(.3,.9,.3,.9)}.text-link:before{content:"";position:absolute;width:100%;height:33%;border-radius:var(--border-radius-xs, 2px);background-color:currentColor;opacity:.3;bottom:10%;left:0;transform-origin:right;transform:scaleX(0);transition:transform var(--transition-length, .5s) cubic-bezier(.3,.9,.3,.9)}.text-link:hover:before,.text-link:focus:before{transform-origin:left;transform:scaleX(1)}@media(hover:hover){.text-link:hover{text-decoration:underline}}@media(max-width:767px){h1,.h1{font-size:clamp(1.5rem,6vw,2.5rem)}h2,.h2{font-size:clamp(1.25rem,5vw,2rem)}h3,.h3{font-size:clamp(1.125rem,4vw,1.5rem)}}@media(max-width:479px){h1,.h1{font-size:clamp(1.25rem,7vw,2rem)}h2,.h2{font-size:clamp(1.125rem,6vw,1.75rem)}}}@layer base{@media(max-width:1023px){:root{--header-height: calc(50px + env(safe-area-inset-top, 0px)) }}@media(max-width:767px){:root{--header-height: calc(45px + env(safe-area-inset-top, 0px)) }}.header{height:var(--header-height);position:fixed;top:0;left:0;right:0;z-index:var(--z-index-nav-header);opacity:1;visibility:visible}.header{transition:transform var(--transition-normal, var(--duration-medium)) ease,opacity var(--transition-normal, var(--duration-medium)) ease}.header.header--scrolled,.intro-loading .header.header--scrolled,.intro-complete .header.header--scrolled,.intro-complete.intro-finished .header.header--scrolled,.paw-exit .header.header--scrolled{transform:translateY(-100%);opacity:0;pointer-events:none;visibility:hidden;transition:transform var(--transition-normal, var(--duration-medium)) ease,opacity var(--transition-normal, var(--duration-medium)) ease,visibility 0s linear var(--transition-normal, var(--duration-medium))}@media(prefers-reduced-motion:reduce){.header{transition:none}}.section-heading{font-size:var(--section-heading-size)}@media(max-width:1100px){:root{--section-heading-size: var(--font-size-4xl)}}main{position:fixed;top:var(--header-height);bottom:var(--footer-height);left:0;right:0;width:100vw;height:calc(100vh - var(--header-height) - var(--footer-height));padding:0;margin:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column}.business-card-section,.about-section,body main>section:not(.contact-section):not(.tech-stack-section){display:flex;flex-direction:column;justify-content:safe center;align-items:center;padding:clamp(var(--space-2),4vw,var(--space-4));box-sizing:border-box;flex:1 0 100%;width:100%;position:relative;overflow:hidden}.contact-section{padding:clamp(var(--space-2),4vw,var(--space-4));box-sizing:border-box;flex:1 0 100%;width:100%;position:relative}body:not([data-page=admin]):not([data-page=client]) section{flex:1 0 100%;width:100%;display:flex;flex-direction:column;justify-content:safe center;align-items:center;padding:var(--space-2);position:relative;box-sizing:border-box;overflow:hidden;min-height:0}section.contact-section.page-active,section.about-section.page-active{display:grid}@media(min-width:768px){.business-card-section{order:1}.about-section{order:3}.contact-section{order:4}}.container,.section-content{max-width:min(1000px,90vw);width:100%;margin:0 auto;padding:var(--space-2);box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--space-2)}.section-content{height:100%;transform-origin:center center;font-size:clamp(.875rem,2vw,1.125rem)}.grid{display:grid;gap:var(--gap)}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.static{position:static}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}body{font-family:var( --font-family-body, "Inconsolata", ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, monospace );line-height:1.4}main{position:fixed;top:var(--header-height);bottom:var(--footer-height);left:0;right:0;overflow-y:auto}@keyframes intro-fallback-show{0%,90%{background:transparent}to{background:var(--color-neutral-300)}}main{opacity:1;visibility:visible}@media(min-width:768px){.intro-loading main{opacity:0;visibility:hidden}.intro-complete main,.intro-finished main{opacity:1;visibility:visible}}.intro-loading .header,.intro-complete .header,.intro-complete.intro-finished .header,.paw-exit .header{opacity:1;visibility:visible}.intro-complete .header{transition:opacity var(--transition-slow) ease-in-out}.intro-complete.intro-finished .header{transition:opacity 0s,visibility 0s}.paw-exit .header{transition:none}@media(max-width:767px){.header,.intro-loading .header,.intro-complete .header,.intro-complete.intro-finished .header,.intro-loading .business-card-section,.intro-loading .business-card-container,.intro-loading .business-card,.intro-loading .business-card-inner,.intro-loading .business-card-front,.intro-loading .business-card-back{opacity:1;visibility:visible}.intro-loading main{opacity:1;visibility:visible}}@media(max-width:1023px){main{top:var(--header-height);height:calc(100vh - var(--header-height) - var(--footer-height))}body:not([data-page=admin]):not([data-page=client]) section{padding:var(--space-3)}.section-content{max-width:min(900px,92vw);padding:var(--space-1-5)}}@media(max-width:767px){.section-content{max-width:95vw;padding:var(--space-1);font-size:clamp(.8rem,2.5vw,1rem)}.container{max-width:95vw}}@media(max-width:479px){body:not([data-page=admin]):not([data-page=client]) section{padding:var(--space-1-5)}.section-content{max-width:98vw;padding:var(--space-0-5)}.container{max-width:98vw}}[data-page-transitioning] *::-webkit-scrollbar{width:0;height:0}[data-page-transitioning] *{scrollbar-width:none}}@layer utilities{.flex{display:flex}.hidden{display:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.grow{flex-grow:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.w-full{width:100%}.min-w-0{min-width:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}html[data-wireframe=true]{filter:grayscale(100%)}html[data-wireframe=true] *:focus-visible{outline-color:var(--color-gray-700)}}@layer components{.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@layer components{input[name=bot-field]{display:none!important}input[type=radio]{opacity:0!important;position:absolute!important;z-index:var(--z-index-behind)!important}}@layer components{.portal :is(.field-label,.label,.notification-option-label,.section-label,.stat-label,.snapshot-field-label,.qform-question-number,.milestone-title,.payment-plans-section h4,.project-notes h4){font-family:var(--font-family-sans);font-size:var(--label-font-size);font-weight:var(--label-font-weight);--svg-stroke-width: var(--svg-stroke-width-bold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:var(--label-letter-spacing)}html[data-theme=light] .portal :is(.field-label,.label,.notification-option-label,.section-label,.stat-label,.snapshot-field-label,.qform-question-number,.milestone-title,.payment-plans-section h4,.project-notes h4){color:var(--color-label-ink)}.field-label,.label,.stat-label{font-size:var(--label-font-size);font-weight:var(--label-font-weight);--svg-stroke-width: var(--svg-stroke-width-bold);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:var(--label-letter-spacing)}.field-label,.label{display:block;margin-bottom:var(--portal-field-label-gap);line-height:var(--line-height-tight);white-space:nowrap!important}.field-label--inline{display:inline;margin-bottom:0}.field-label svg,.label svg,.section-label svg{display:inline-block;vertical-align:middle;margin-right:var(--icon-gap)}.stat-label{margin:0}.portal :has(>:is(.field-label,.label,.section-label,.option-label,.notification-option-label)){--svg-stroke-width: var(--svg-stroke-width-bold)}.portal :is(h1,h2,h3,h4),.portal :has(>:is(h1,h2,h3,h4)){--svg-stroke-width: var(--svg-stroke-width-bold)}.portal :is(.option-label,.notification-item-title,.content-item-title,.help-featured-card-title){font-weight:var(--font-weight-bold);color:var(--color-text-primary);--svg-stroke-width: var(--svg-stroke-width-bold)}.portal :is(.command-palette-section-label,.shortcuts-group-title){font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-label)}.portal .row-hover-card dt{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-label)}.meta-value{font-size:var(--font-size-base);font-weight:var(--font-weight-regular);color:var(--color-text-primary);line-height:var(--line-height-snug)}.meta-value a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}.meta-value a:hover{color:var(--color-brand-red);text-decoration:underline}.meta-item{display:flex;flex-direction:column;gap:var(--portal-field-label-gap)}.meta-item .field-label,.meta-item .label{margin-bottom:0}.pd-highlight-value{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.pd-hint{font-size:var(--font-size-sm);white-space:nowrap}.pd-mt-2{margin-top:var(--space-2)}}@layer components{.btn:not(.icon-btn):not(.nav-btn),.login-btn,.btn-primary:not(.icon-btn):not(.nav-btn),.btn-secondary:not(.icon-btn):not(.nav-btn),.btn-outline:not(.icon-btn):not(.nav-btn){display:inline-flex;align-items:center;justify-content:center;gap:var(--icon-gap-md, var(--space-1));padding:var(--portal-btn-padding, 8px 18px);border:var(--portal-btn-border-width, 2px) solid var(--portal-btn-border-color, var(--color-dark));border-bottom-width:var(--portal-btn-border-bottom-width, 2px);border-radius:var(--portal-btn-border-radius, 0);font-size:var(--portal-btn-font-size, var(--font-size-sm));font-weight:var(--portal-btn-font-weight, 600);font-family:var(--portal-btn-font-family, inherit);letter-spacing:var(--portal-btn-letter-spacing, normal);text-transform:var(--portal-btn-text-transform, uppercase);cursor:pointer;background:inherit;color:var(--portal-btn-color, var(--color-dark));box-shadow:none;transition:var(--portal-btn-transition, all var(--duration-fast) ease);text-decoration:none;white-space:nowrap;text-shadow:none;box-sizing:border-box}.btn:not(.icon-btn):not(.nav-btn) svg,.login-btn svg,.btn-primary:not(.icon-btn):not(.nav-btn) svg,.btn-secondary:not(.icon-btn):not(.nav-btn) svg,.btn-outline:not(.icon-btn):not(.nav-btn) svg,button.btn svg,button.btn-primary svg,button.btn-secondary svg{color:inherit}.btn:not(.icon-btn):not(.nav-btn):hover,.login-btn:hover,.btn-primary:not(.icon-btn):not(.nav-btn):hover,.btn-secondary:not(.icon-btn):not(.nav-btn):hover,.btn-outline:not(.icon-btn):not(.nav-btn):hover{background:var(--portal-btn-hover-bg, var(--color-dark));color:var(--portal-btn-hover-color, var(--color-light));border-color:var(--portal-btn-hover-border, var(--color-dark));box-shadow:none}.btn:not(.icon-btn):not(.nav-btn):focus,.btn:not(.icon-btn):not(.nav-btn):focus-visible,.login-btn:focus,.login-btn:focus-visible{outline:2px solid var(--color-off-white);outline-offset:2px;box-shadow:none}.btn-primary.form-valid,.login-btn.form-valid{background:var(--portal-btn-hover-bg, var(--color-dark));color:var(--portal-btn-hover-color, var(--color-light));border-color:var(--portal-btn-hover-border, var(--color-dark))}input[type=submit]:focus,input[type=submit]:active{outline:2px solid var(--color-off-white);outline-offset:2px;box-shadow:none}input[type=submit].form-valid{background:var(--portal-btn-hover-bg, var(--color-dark));color:var(--portal-btn-hover-color, var(--color-light));border-color:var(--portal-btn-hover-border, var(--color-dark))}@media(max-width:479px){.btn:not(.nav-btn),.login-btn{padding:clamp(6px,1.5vw,10px) clamp(12px,3vw,20px);font-size:clamp(.7rem,2.5vw,.9rem)}}@media(prefers-contrast:high){.btn:not(.nav-btn),.login-btn{border-width:var(--border-width-thick)}}@media(prefers-reduced-motion:reduce){.btn:not(.nav-btn),.login-btn{transition:none}}}@layer components{.form-input.error,.form-textarea.error{border-color:var(--color-error);background-color:rgba(var(--color-error-rgb, 239, 68, 68),.05)}.error-message{margin:0;color:var(--color-error);font-size:var(--font-size-sm);display:none}.error-message.show{display:block}.field-error{color:var(--color-error);font-size:var(--font-size-sm);min-height:1.2em;margin-top:var(--space-0-5);display:none}}@layer components{.loading-spinner{display:inline-block;width:20px;height:20px;border:var(--border-width) solid var(--color-border);border-top-color:var(--color-brand-red);border-radius:var(--border-radius-full, 50%);animation:spin var(--animation-spinner-fast)}.loading-spinner--small{width:14px;height:14px;border-width:2px}.loading-spinner--large{width:32px;height:32px;border-width:var(--border-width-thick)}@keyframes spin{to{transform:rotate(360deg)}}button[aria-busy=true],input[type=submit][aria-busy=true]{cursor:wait;opacity:.8}button[aria-busy=true] .loading-spinner,button[aria-busy=true] .btn-loading-text{display:inline-block;vertical-align:middle}button[aria-busy=true] .loading-spinner{margin-right:var(--space-1)}.btn-loading-text{font-size:inherit}.loading-row.loading-state{text-align:center;padding:var(--space-4) var(--space-2)}.loading-row.loading-state .loading-spinner{margin-right:var(--space-1);vertical-align:middle}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(var(--space-2),3vw,var(--space-4));min-height:150px;gap:clamp(12px,2vw,20px);color:inherit;font-size:inherit}.loading-state .loading-spinner,.loading-state .loading-message{margin:0;padding:0}.skeleton-item,.skeleton-card{padding:var(--space-2);background:var(--color-bg-secondary);border-radius:var(--border-radius-md, 8px);margin-bottom:var(--space-1)}.skeleton-line{height:12px;background:linear-gradient(90deg,var(--color-skeleton-base) 25%,var(--color-skeleton-highlight) 50%,var(--color-skeleton-base) 75%);background-size:200% 100%;border-radius:var(--border-radius-sm, 4px);animation:skeleton-shimmer var(--animation-skeleton-shimmer)}.skeleton-line--title{height:16px;width:60%;margin-bottom:var(--space-1-5)}.skeleton-line--text{width:100%;margin-bottom:var(--space-1)}.skeleton-line--text:last-child{margin-bottom:0}.skeleton-line--short{width:40%}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-chart{padding:var(--space-2);min-height:200px;display:flex;align-items:flex-end;justify-content:center}.skeleton-chart-bars{display:flex;gap:var(--space-2);align-items:flex-end;height:150px;width:100%;max-width:300px}.skeleton-bar{flex:1;background:linear-gradient(90deg,var(--color-skeleton-base) 25%,var(--color-skeleton-highlight) 50%,var(--color-skeleton-base) 75%);background-size:200% 100%;border-radius:var(--border-radius-sm, 4px) var(--border-radius-sm, 4px) 0 0;animation:skeleton-shimmer var(--animation-skeleton-shimmer)}@media(prefers-reduced-motion:reduce){.loading-spinner{animation:none;border-top-color:var(--color-brand-red);opacity:.7}.skeleton-line,.skeleton-bar{animation:none;background:var(--color-skeleton-base)}}tr.error-row td,tr.loading-row td,tr.empty-row td,td.error-row,td.loading-row,td.empty-row,div.empty-row,div.loading-row,div.error-row,.portal .data-table td.error-row,.portal .data-table td.loading-row,.portal .data-table td.empty-row,.portal .data-table tr.error-row td,.portal .data-table tr.loading-row td,.portal .data-table tr.empty-row td,.portal .data-table tbody td[colspan],.portal table td[colspan]{text-align:center;color:inherit;padding:clamp(var(--space-2),3vw,var(--space-3));font-size:inherit;background:transparent}tr.loading-row,tr.error-row,tr.empty-row{width:100%}tr.loading-row>td,tr.error-row>td,tr.empty-row>td{width:100%}td.error-row,td.loading-row,td.empty-row{border-bottom-left-radius:0;border-bottom-right-radius:0}.error-state,.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(12px,2vw,20px);padding:clamp(var(--space-2),3vw,var(--space-4));width:100%;height:100%;min-height:60px;flex:1 1 auto;box-sizing:border-box;text-align:center;margin:0 auto;color:var(--color-text-primary, inherit);font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.empty-state--compact{min-height:auto;padding:var(--space-2);gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-text-secondary, inherit)}.empty-state--full{flex:1}.empty-state--compact:before{content:"";display:block;width:16px;height:16px;background-color:currentColor;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='22 12 16 12 14 15 10 15 8 12 2 12'/%3E%3Cpath d='M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z'/%3E%3C/svg%3E");mask-size:contain;mask-repeat:no-repeat;mask-position:center;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='22 12 16 12 14 15 10 15 8 12 2 12'/%3E%3Cpath d='M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z'/%3E%3C/svg%3E");-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;flex-shrink:0}td .loading-state,td .error-state,td .empty-state,td[colspan] .loading-state,td[colspan] .error-state,td[colspan] .empty-state{padding:var(--space-2) var(--space-3)}@layer utilities{@media(min-width:701px){.data-table tbody td[colspan],.portal table td[colspan]{display:table-cell;text-align:center;vertical-align:middle;min-height:120px;padding:var(--space-4)}.data-table tbody td[colspan] .empty-state,.data-table tbody td[colspan] .loading-state,.data-table tbody td[colspan] .error-state,.portal table td[colspan] .empty-state,.portal table td[colspan] .loading-state,.portal table td[colspan] .error-state{width:-moz-max-content;width:max-content;max-width:100%;min-width:0;height:auto;min-height:60px;margin-left:auto;margin-right:auto}}@media(max-width:700px){.data-table td[colspan]{justify-content:center;align-items:center;flex-direction:column}.data-table td[colspan] .empty-state,.data-table td[colspan] .loading-state,.data-table td[colspan] .error-state{width:-moz-max-content;width:max-content;max-width:100%;min-width:0;height:auto}}}.loading-state p,.error-state p,.empty-state p{margin:0;padding:0;text-align:center;line-height:var(--line-height-snug);font-style:normal;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary, inherit)}td.loading-state,td.loading-row.loading-state{display:table-cell;text-align:center;vertical-align:middle}td.loading-state p,td.loading-row.loading-state p{margin:0;display:inline-block}p.empty-state{display:block;padding:var(--space-4)}[class$=-list]:has(.empty-state,.loading-state,.error-state),[id$=-list]:has(.empty-state,.loading-state,.error-state){display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:120px}[class$=-list]>.empty-state,[id$=-list]>.empty-state{min-height:80px;padding:var(--space-4)}.loading-state:before{content:"";display:block;width:24px;height:24px;border:var(--border-width-thick) solid var(--color-border);border-top-color:var(--color-brand-red);border-radius:var(--border-radius-full, 50%);animation:spin var(--animation-spinner-fast);flex-shrink:0}.loading-state:has(.loading-spinner):before,.loading-state:has(svg):before{display:none}.error-state:before{content:"";display:block;width:24px;height:24px;background-color:var(--color-error);mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'/%3E%3Cline x1='12' y1='9' x2='12' y2='13'/%3E%3Cline x1='12' y1='17' x2='12.01' y2='17'/%3E%3C/svg%3E");mask-size:contain;mask-repeat:no-repeat;mask-position:center;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'/%3E%3Cline x1='12' y1='9' x2='12' y2='13'/%3E%3Cline x1='12' y1='17' x2='12.01' y2='17'/%3E%3C/svg%3E");-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;flex-shrink:0}.error-state:has(.error-state-icon):before,.error-state:has(.error-icon):before,.error-state:has(svg):before{display:none}.error-icon,.error-state-icon{width:24px;height:24px;color:var(--color-error);flex-shrink:0}.error-icon svg,.error-state-icon svg{width:24px;height:24px}.empty-state:before{content:"";display:block;width:24px;height:24px;background-color:currentColor;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='22 12 16 12 14 15 10 15 8 12 2 12'/%3E%3Cpath d='M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z'/%3E%3C/svg%3E");mask-size:contain;mask-repeat:no-repeat;mask-position:center;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='22 12 16 12 14 15 10 15 8 12 2 12'/%3E%3Cpath d='M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z'/%3E%3C/svg%3E");-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;flex-shrink:0}.empty-state:has(.empty-icon):before,.empty-state:has(svg):before{display:none}.empty-icon{width:var(--icon-size-xl);height:var(--icon-size-xl);color:inherit;flex-shrink:0}.empty-state>svg,.loading-state>svg,.error-state>svg,.empty-icon>svg,.error-state-icon>svg{width:var(--icon-size-xl);height:var(--icon-size-xl);flex-shrink:0;color:inherit;stroke:currentColor}.error-message,.error-state-message,.empty-state-message,.loading-message{color:var(--color-text-primary, inherit);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);font-style:normal;margin:0}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(var(--space-2),3vw,var(--space-4));min-height:150px;gap:clamp(12px,2vw,20px);text-align:center;color:inherit;font-size:inherit}.btn-retry,.error-state-retry{margin-top:var(--space-1, var(--space-1))}.error-inline{color:var(--color-error);font-size:var(--font-size-base);display:block;margin-top:var(--space-0-5)}.error-notification{position:fixed;bottom:1rem;right:1rem;display:flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1-5) var(--space-2);background:var(--color-bg-secondary);border:var(--border-width) solid var(--color-error);border-radius:var(--border-radius-md, 8px);box-shadow:var(--shadow-elevated-sm);z-index:var(--z-index-loading)}.error-notification .error-icon{font-size:var(--font-size-sm)}.error-notification .error-message{color:var(--color-text-primary)}.error-dismiss{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-lg);cursor:pointer;padding:0 var(--space-0-5);line-height:1}.error-dismiss:hover{color:var(--color-text-primary)}.empty-state-cta{margin-top:var(--space-1)}.error-state-actions{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1)}.error-state-secondary{padding:var(--space-0-5, .375rem) var(--space-1-5, var(--space-1-5));font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);background:transparent;color:var(--color-text-primary);border:var(--border-width) solid var(--color-border);cursor:pointer;transition:all var(--transition-fast, var(--duration-fast) ease)}.error-state-secondary:hover{background:var(--color-bg-hover, var(--color-state-hover));border-color:var(--color-text-primary, var(--color-text-inverse));color:var(--color-text-primary, var(--color-text-inverse))}.skeleton-container{display:flex;flex-direction:column;gap:var(--space-1);width:100%;padding:var(--space-2)}.loading-state--skeleton:before{display:none}.skeleton-line--full{width:100%;height:12px;background:linear-gradient(90deg,var(--color-skeleton-base) 25%,var(--color-skeleton-highlight) 50%,var(--color-skeleton-base) 75%);background-size:200% 100%;border-radius:var(--border-radius-sm, 4px);animation:skeleton-shimmer var(--animation-skeleton-shimmer)}.skeleton-row{display:flex;gap:var(--space-2);padding:var(--space-1) 0}.skeleton-row .skeleton-line{flex:1}.spinning,.loading-spin{animation:spin var(--animation-spinner-fast)}@media(max-width:767px){.empty-state,.loading-state,.error-state{min-width:100%;box-sizing:border-box}.empty-state p,.loading-state p,.error-state p{white-space:normal;word-break:normal;overflow-wrap:break-word}}@media(prefers-reduced-motion:reduce){.skeleton-line--full{animation:none;background:var(--color-skeleton-base)}.spinning,.loading-spin{animation:none;opacity:.7}}}@layer components{.toast-container{position:fixed;top:var(--space-4);right:var(--space-4);z-index:var(--z-index-portal-toast);display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none;max-width:var(--toast-max-width)}.toast{display:flex;align-items:center;gap:var(--icon-gap-md);background:var(--color-bg-secondary);border:var(--border-width) solid var(--color-border);box-shadow:none;color:var(--color-text-primary);font-size:var(--font-size-sm);line-height:var(--line-height-normal);pointer-events:auto;opacity:0;transform:translate(100%);transition:opacity var(--transition-normal) ease,transform var(--transition-normal) ease;min-width:var(--toast-min-width);max-width:var(--toast-max-width)}.portal .toast{border-color:var(--color-border-primary)}.toast-show{opacity:1;transform:translate(0)}.toast-hide{opacity:0;transform:translate(100%)}.toast-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--icon-size-lg);height:var(--icon-size-lg)}.toast-icon svg{width:100%;height:100%}.toast-message{flex:1;word-wrap:break-word}.toast-action{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);text-decoration:none;border-bottom:var(--border-width) solid transparent;transition:border-color var(--transition-fast) ease,color var(--transition-fast) ease;white-space:nowrap}.toast-action:hover{color:var(--color-brand-red);border-color:var(--color-brand-red)}.toast-close{background:none;border:none;cursor:pointer;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast) ease,color var(--transition-fast) ease;flex-shrink:0;width:var(--icon-size-xl);height:var(--icon-size-xl)}.toast-close:hover{background:var(--color-bg-raised);color:var(--color-text-primary)}.toast-close svg{width:var(--icon-size-md);height:var(--icon-size-md)}@media(max-width:767px){.toast-container{top:var(--space-2);right:var(--space-2);left:var(--space-2);max-width:none}.toast{min-width:auto;max-width:none;transform:translateY(-100%)}.toast-show{transform:translateY(0)}.toast-hide{transform:translateY(-100%)}}}@layer layouts;@layer layouts{.grid-2col{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,max(18rem,calc((100% - var(--space-3)) / 2))),1fr));gap:var(--space-3)}.form-grid-2col{display:grid;gap:var(--space-4);grid-template-columns:repeat(2,1fr)}}@layer layouts{.layout-row{display:flex;align-items:center;gap:var(--space-3)}.layout-row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.layout-row-top{display:flex;align-items:flex-start;gap:var(--space-3)}.flex-fill{flex:1;min-width:0}.layout-stack{display:flex;flex-direction:column;gap:var(--space-3)}}@layer states{.is-disabled,[disabled]{pointer-events:none;opacity:.5;cursor:not-allowed}.is-error,.has-error{border-color:var(--color-error);color:var(--color-error)}.is-success{border-color:var(--color-success);color:var(--color-success)}.is-open{display:block;visibility:visible;opacity:1}.is-dragging{opacity:.8;cursor:grabbing}}@layer responsive{@media(max-width:767px){.form-grid-2col,.cards-grid{grid-template-columns:1fr}}@media(max-width:479px){[data-page=admin] .data-table tbody td:empty{display:none}}@media(max-width:767px){.portal-header{padding:var(--space-2) var(--space-3)}}@media(max-width:767px){.portal .sidebar{width:56px;min-width:56px;max-width:56px}.portal .sidebar.collapsed{width:0;min-width:0;max-width:0;overflow:hidden;padding:0}.portal .sidebar .sidebar-buttons .nav-btn .nav-label{display:none}.portal .sidebar .sidebar-buttons .nav-btn{justify-content:center}.portal .portal-body .dashboard-content{width:100%;flex:1}}@media print{.sidebar,.btn,button,.dropdown-toggle{display:none}.main-content,.dashboard-content{width:100%;margin:0;padding:0}.card,.portal-card{-moz-column-break-inside:avoid;break-inside:avoid}}@media(prefers-contrast:high){.card,.portal-card,.btn{border-width:2px}:focus-visible{outline-width:3px;outline-offset:3px}}}@layer components{.skip-link{position:absolute;top:calc(-1 * var(--space-8));left:var(--space-2);z-index:var(--z-index-skip-link);padding:var(--space-1) var(--space-2);background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-family-body);font-size:var(--font-size-sm);text-decoration:none;border:var(--border-width) solid var(--color-dark)}.skip-link:focus{top:var(--space-2)}*{box-sizing:border-box}.container{z-index:var(--z-index-content);max-width:var(--size-container);padding-left:var(--container-padding);padding-right:var(--container-padding);width:100%;margin-left:auto;margin-right:auto;position:relative}.container.is--full{max-width:100%}li{display:list-item;text-align:-webkit-match-parent;unicode-bidi:isolate}.header{z-index:var( --z-index-nav-header );font-family:var(--font-family-acme);padding:0;padding-top:env(safe-area-inset-top,0);position:fixed;top:0;left:0;right:0;width:100%;background-color:transparent}.header .container{padding:0 var(--container-padding)}.nav-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;width:100%;min-height:40px;flex-wrap:nowrap}.nav-logo-row{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--color-nav-text);font-weight:600;font-size:20px;pointer-events:auto;text-shadow:0 2px 4px var(--color-shadow);text-transform:uppercase;white-space:nowrap;flex-shrink:0;position:relative;transition:color var(--transition-mouse) ease;-webkit-tap-highlight-color:transparent;z-index:var(--z-index-nav-menu-content)}.nav-logo-row:visited{color:var(--color-nav-text)}.nav-logo-row:hover,.nav-logo-row:active{color:var(--color-brand-red);text-decoration:none}.nav-logo-row:focus{color:var(--color-nav-text);text-decoration:none;outline:none}.nav-logo-row:focus-visible{color:var(--color-brand-red);outline:none;box-shadow:none}.nav-row__right{display:flex;align-items:center;gap:16px;pointer-events:auto;flex-shrink:0;white-space:nowrap;position:relative;z-index:var( --z-index-nav-menu-content )}.nav{z-index:var(--z-index-nav-menu);width:100%;height:100dvh;max-height:100dvh;margin-left:auto;margin-right:auto;display:none;position:fixed;inset:0%;pointer-events:auto}.nav[data-nav=open]{display:block}.overlay{z-index:var(--z-index-nav-overlay);cursor:pointer;background-color:var(--overlay-backdrop);width:100vw;height:100vh;position:fixed;top:0;left:0;opacity:0;visibility:hidden;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);transition:opacity var(--transition-length, .5s) cubic-bezier(.3,.9,.3,.9),visibility var(--transition-length, .5s),backdrop-filter var(--transition-length, .5s)}.nav[data-nav=open] .overlay,.overlay.visible{opacity:1;visibility:visible;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.menu{z-index:var(--z-index-nav-menu-content);grid-column-gap:5em;grid-row-gap:5em;flex-flow:column;justify-content:flex-start;align-items:flex-start;position:relative;overflow-y:auto;overflow-x:hidden;padding-top:calc(3 * var(--menu-padding));padding-bottom:var(--menu-padding);width:var(--menu-width-desktop);height:100%;max-height:100dvh;margin-left:auto;transform:translate(120%)}.menu-bg{z-index:var(--z-index-content);position:absolute;inset:0%}.menu-inner{z-index:var(--z-index-content);grid-column-gap:5em;grid-row-gap:5em;padding-right:0rem;flex-flow:column;justify-content:space-between;align-items:flex-start;height:100%;display:flex;position:relative;overflow:auto}.bg-panel{z-index:var(--z-index-content);background-color:var(--color-neutral-100);border-top-left-radius:var(--menu-border-radius);border-bottom-left-radius:var(--menu-border-radius);position:absolute;inset:0%}.bg-panel.first{background-color:var(--color-brand-red)}.bg-panel.second{background-color:var(--color-neutral-300)}.menu-list{flex-flow:column;width:100%;margin-bottom:0;padding:0;list-style:none;display:flex}.menu-list-item{position:relative;overflow:hidden}.menu-link{padding-top:.75em;padding-bottom:.75em;padding-left:var(--container-padding);padding-right:var(--menu-padding);gap:.75em;width:100%;text-decoration:none;display:flex;color:inherit;position:relative;overflow:hidden;border:none;outline:none;text-transform:uppercase;align-items:center;justify-content:flex-start;min-height:0}.menu-link-heading{text-shadow:0 1em 0 var(--color-neutral-100),0 2px 4px var(--color-shadow);z-index:var(--z-index-content);text-transform:uppercase;font-family:var(--font-family-acme);font-weight:700;line-height:.9;position:relative;font-size:var(--menu-heading-size);letter-spacing:.1em;display:inline-block;transform:translateY(-100%);transition:transform .4s var(--cubic-menu);flex:0 1 auto;text-align:left;white-space:nowrap}@media(max-width:479px)and (hover:none){.menu-link-heading{text-shadow:none;transform:none;transition:none}}.menu-link-bg{z-index:var(--z-index-base);background-color:var(--color-dark);transform-origin:50% 100%;transform-style:preserve-3d;position:absolute;inset:0%;transform:scale3d(1,0,1);transition:transform .4s var(--cubic-menu);pointer-events:none}.menu-link.disabled{opacity:.5;pointer-events:none;cursor:not-allowed;position:relative}.menu-link.disabled .menu-link-heading{color:var(--color-neutral-800);opacity:.6}.menu-link.disabled .eyebrow{opacity:.4}.menu .menu-link.disabled:hover .menu-link-bg{transform:scale3d(1,0,1)}.menu-link.current,.menu-link[aria-current=page]{opacity:.5;cursor:default;pointer-events:none}.menu-link.current .menu-link-heading,.menu-link[aria-current=page] .menu-link-heading{color:var(--color-text-secondary)}.menu-link.current .menu-link-bg,.menu-link[aria-current=page] .menu-link-bg{display:none}.coming-soon-banner{position:absolute;top:50%;right:40%;transform:translateY(-40%);background:var(--color-brand-red);color:var(--color-dark);padding:var(--space-1) var(--space-3);border-radius:1rem;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;z-index:var(--z-index-elevated);font-family:monospace;text-shadow:none;box-shadow:0 2px 8px rgba(var(--color-brand-red-rgb),.3)}html[data-theme=dark] .coming-soon-banner{color:var(--color-neutral-100);background:var(--color-brand-red)}.menu-link .eyebrow{z-index:var(--z-index-content);color:var(--color-brand-red);text-transform:uppercase;font-family:var(--font-family-mono);font-weight:400;position:relative;text-shadow:none;font-size:var(--font-size-sm);flex-shrink:0}.social-icon{width:1em;height:1em;flex-shrink:0;vertical-align:middle;margin-right:.35em}.text-link{display:inline-flex;align-items:center;gap:.25em;text-decoration:none;position:relative;color:inherit;text-transform:uppercase}@media(hover:hover){.text-link:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--color-brand-red);transform-origin:right center;transform:scaleX(0);transition:transform .4s var(--cubic-default)}.text-link:hover:after{transform-origin:left center;transform:scaleX(1)}}.theme-button,.menu-button{display:flex;align-items:center;gap:12px;background:none;border:none;cursor:pointer;padding:8px 0;min-height:40px;color:inherit;text-transform:uppercase;flex-shrink:0;font-family:inherit;font-size:inherit;line-height:inherit;text-shadow:0 2px 4px var(--color-shadow);transition:color var(--transition-mouse) ease}.theme-button:hover,.theme-button:active,.menu-button:hover,.menu-button:active{color:var(--color-brand-red)}.theme-button:focus-visible,.menu-button:focus-visible{color:var(--color-brand-red);background-color:rgba(var(--color-brand-red-rgb),.1);outline:none;box-shadow:none}.theme-button:focus,.menu-button:focus{outline:none}.theme-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--border-radius-full);transition:background-color var(--transition-mouse) ease}.menu-button-icon{width:16px;height:16px;transition:transform var(--transition-normal) ease;filter:drop-shadow(0 2px 4px var(--color-shadow))}.menu-button-text{flex-flow:column;justify-content:flex-start;align-items:flex-start;height:20px;display:flex;overflow:hidden;text-transform:uppercase}.menu-button-text p{margin:0;padding:0;line-height:1;font-size:var(--font-size-xl);font-weight:600;white-space:nowrap;font-family:var(--font-family-acme, "Acme", sans-serif)}.menu-details{padding-left:var(--container-padding);grid-column-gap:1.25em;grid-row-gap:1.25em;flex-flow:column;justify-content:flex-start;align-items:flex-start;display:flex;text-transform:uppercase}.socials-row{grid-column-gap:var(--space-6);grid-row-gap:var(--space-6);flex-flow:row;display:flex}.p-small{font-size:.875em;font-family:var(--font-family-acme);text-transform:uppercase}.p-large{font-size:1.125em;font-family:var(--font-family-acme);text-transform:uppercase}.icon-wrap{display:flex;align-items:center;justify-content:center;transform:rotate(0);width:24px;height:24px;position:relative;transition:all var(--transition-normal) var(--cubic-default)}.theme-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:var(--icon-size-lg);height:var(--icon-size-lg);color:currentColor;transition:opacity var(--transition-normal) ease;filter:drop-shadow(0 2px 4px var(--color-shadow))}[data-theme=light] .sun-icon{opacity:1}[data-theme=light] .moon-icon,[data-theme=dark] .sun-icon{opacity:0}[data-theme=dark] .moon-icon{opacity:1}@supports (-webkit-appearance: none){.menu{-webkit-overflow-scrolling:touch}.menu-link-heading{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@-moz-document url-prefix(){.menu-link-bg{transform-style:flat}}html[data-theme=dark] .nav-logo-row,html[data-theme=dark] h1,html[data-theme=dark] h2,html[data-theme=dark] h3,html[data-theme=dark] h4,html[data-theme=dark] h5,html[data-theme=dark] h6{text-shadow:0 2px 4px var(--color-shadow)}html[data-theme=dark] .theme-button,html[data-theme=dark] .menu-button{background:transparent;border:none;box-shadow:none}html[data-theme=dark] .theme-button:hover,html[data-theme=dark] .menu-button:hover{background:transparent;border:none;box-shadow:none;color:var(--color-brand-red)}html[data-theme=dark] .menu-link-heading{text-shadow:0 1em 0 var(--color-neutral-300)}html[data-theme=dark] .bg-panel{background-color:var(--color-bg-secondary)}html[data-theme=dark] .bg-panel.first{background-color:var(--color-brand-red)}html[data-theme=dark] .bg-panel.second{background-color:var(--color-neutral-100)}}@layer components{.nav[data-nav=open] .overlay{opacity:1;visibility:visible}.nav[data-nav=open] .menu{transform:translate(0)}.nav[data-nav=open] .menu-link-heading{transform:translateY(0)}.nav[data-nav=open] .menu-button-icon{transform:rotate(45deg)}@media(hover:hover){.menu-button:hover .icon-wrap{transform:rotate(90deg)}.theme-button:hover .icon-wrap{transform:scale(1.1)}.menu-link:hover .menu-link-heading{transform:translateY(-100%)}.menu-link:hover .menu-link-heading:before{transform:translateY(-100%)}.menu-link:hover .menu-link-bg{transform:scale(1)}.text-link:hover{transform:scale(1.05)}}.nav[data-nav=closed] .menu-link-heading{transform:none;transition:none}.nav.nav[data-nav=closed] .menu-link-heading:before{transform:translateY(0);transition:none}.menu-link-heading{transform-origin:center center}@media(hover:hover){.menu-button:hover .icon-wrap{transform:rotate(90deg)}.theme-button:hover .icon-wrap{transform:scale(1.1)}.nav[data-nav=open] .menu-link:hover .menu-link-heading{transform:translateY(-100%)}.nav[data-nav=open] .menu-link:hover .menu-link-heading:before{transform:translateY(-100%)}.nav[data-nav=open] .menu-link:hover .menu-link-bg{transform:scale(1)}.nav.nav[data-nav=closed] .menu-link:hover .menu-link-heading,.nav.nav[data-nav=closed] .menu-link:hover .menu-link-heading:before{transform:none;transition:none}.text-link:hover{transform:scale(1.05)}}.menu-link.touch-active .menu-link-heading{transform:translateY(-100%)}.menu-link.touch-active .menu-link-heading:before{transform:translateY(-100%)}.menu-link.touch-active .menu-link-bg{transform:scale(1)}}@layer components{@media(max-width:991px){.menu{width:var(--menu-width-tablet);padding-top:calc(4 * var(--menu-padding))}.bg-panel{border-top-left-radius:calc(var(--menu-border-radius) * .8);border-bottom-left-radius:calc(var(--menu-border-radius) * .8)}.nav-logo-row{width:auto;font-size:var(--font-size-xl);gap:var(--icon-gap-sm)}}@media(max-width:767px){:root{--menu-padding: clamp(.75rem, 3vw, 1.5rem);--menu-heading-size: clamp(5rem, 18vw, 8rem)}.portal-button{opacity:0;visibility:hidden;pointer-events:none;margin-left:var(--space-1-5)}.header{position:static}.nav-logo-row{font-size:var(--font-size-xl);gap:var(--icon-gap-xs);min-width:auto;text-shadow:0 2px 4px var(--color-shadow)}.menu-button-text{text-shadow:0 2px 4px var(--color-shadow)}.nav-row__right{grid-column-gap:.5rem;grid-row-gap:.5rem;flex-shrink:0}.menu{padding-top:calc(5 * var(--menu-padding))}.menu{width:var(--menu-width-mobile)}.bg-panel{border-top-left-radius:0;border-bottom-left-radius:0}.menu-list{padding-top:var(--space-4)}.menu-list-item{min-height:clamp(4rem,10vw,5.5rem)}.menu .menu-link .menu-link-heading{font-size:clamp(3rem,12vw,4.5rem)}.menu-link{padding-top:1em;padding-bottom:1em}.socials-row{grid-column-gap:clamp(1rem,3vw,1.5rem);grid-row-gap:clamp(1rem,3vw,1.5rem);flex-flow:row;display:flex;padding-bottom:var(--menu-padding)}.p-large.text-link{font-size:clamp(.9rem,2vw,1rem)}}@media(max-width:767px)and (hover:none){.menu .menu-link .menu-link-heading{text-shadow:none;transform:none;transition:none}}@media(max-width:479px){:root{--menu-padding: clamp(.5rem, 2vw, 1rem);--menu-heading-size: clamp(1.8rem, 5vw, 3.5rem)}.menu{padding-top:calc(6 * var(--menu-padding));padding-bottom:calc(1.5 * var(--menu-padding))}.menu-list-item{min-height:clamp(2.5rem,6vw,3.5rem)}.nav-row__right{grid-column-gap:.25rem;grid-row-gap:.25rem}}@media(min-width:1200px){:root{--menu-padding: clamp(1rem, 2.5vh, 2.5rem);--menu-heading-size: min(5.5rem, 11dvh)}.menu{width:40rem}}@media(min-width:1400px){:root{--menu-padding: clamp(1rem, 3vh, 3rem);--menu-heading-size: min(6rem, 12dvh)}}.nav .menu-link:focus,.nav .menu-button:focus,.nav .theme-button:focus,.nav .menu-link:active,.nav .menu-button:active,.nav .theme-button:active,.nav .menu-link.active,.nav .menu-button.active,.nav .theme-button.active{border:none;outline:none}@media(hover:none)and (pointer:coarse){.menu-link,.menu-button,.theme-button{min-height:44px;min-width:44px}.menu-link-heading{font-size:clamp(2rem,5vw,4rem)}}@media(min-resolution:192dpi){.menu-button-icon{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}@media(max-width:767px){.theme-button{display:flex;width:36px;height:36px}}@media print{.nav,.header,.menu-button,.theme-button{display:none!important}}.menu,.bg-panel,.menu-link-heading,.menu-link-bg,.menu-button-icon,.icon-wrap{will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.menu-inner{contain:layout style paint}}@layer components{.portal-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--border-radius-full, 50%);background:none;border:none;cursor:pointer;padding:var(--space-2) 0;color:inherit;text-transform:uppercase;flex-shrink:0;font-family:inherit;font-size:inherit;line-height:inherit;text-shadow:0 2px 4px var(--color-shadow);transition:color var(--duration-fast) ease,background-color var(--duration-fast) ease}.portal-button:hover{color:var(--color-brand-red)}.portal-button:focus{outline:none}.portal-button:focus-visible{color:var(--color-brand-red);background-color:rgba(var(--color-error-rgb),.1);outline:none;box-shadow:none}.portal-button .icon-wrap{display:flex;align-items:center;justify-content:center;width:24px;height:24px;position:relative}.portal-button .icon-wrap svg{width:var(--icon-size-lg);height:var(--icon-size-lg);color:currentColor;filter:drop-shadow(0 2px 4px var(--color-shadow))}@media(hover:hover){.portal-button:hover .icon-wrap{transform:scale(1.1)}}.portal-backdrop{display:none;position:fixed;inset:0;width:100vw;height:100vh;background:var(--overlay-backdrop);z-index:var(--z-index-portal-overlay);pointer-events:auto;isolation:isolate}.portal-backdrop.open{display:block}.portal-dropdown{position:fixed;top:70px;right:20px;width:320px;background:var(--color-neutral-300);border:var(--border-width-thick) solid var(--color-dark);padding:var(--space-3);z-index:var(--z-index-portal-dropdown);opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity var(--duration-fast) ease,transform var(--duration-fast) ease,visibility var(--duration-fast) ease;box-shadow:0 10px 40px var(--color-shadow-2xl);isolation:isolate;color:var(--color-dark)}.portal-dropdown.open{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.portal-dropdown:before{content:"";position:absolute;top:-12px;left:var(--caret-left, 20px);border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:10px solid var(--color-dark)}.portal-dropdown:after{content:"";position:absolute;top:-6px;left:calc(var(--caret-left, 20px) + 2px);border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:8px solid var(--color-neutral-300)}.portal-dropdown-header{font-family:var(--font-family-sans);font-size:var(--font-size-xl);text-transform:uppercase;margin-bottom:var(--space-2);color:var(--color-dark)}.portal-dropdown .portal-auth-toggle{display:flex;width:100%;height:44px;border:var(--border-width-thick) solid var(--color-dark);border-radius:0;margin-bottom:var(--space-2);box-sizing:border-box;overflow:hidden}.portal-dropdown .portal-toggle-btn{flex:1;height:100%;padding:0 var(--space-2);background:transparent;border:none;font-family:var(--font-family-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);line-height:40px;text-transform:uppercase;color:var(--color-dark);cursor:pointer;transition:background-color var(--duration-fast) ease,color var(--duration-fast) ease}.portal-dropdown .portal-toggle-btn:first-child{border-right:var(--border-width-thick) solid var(--color-dark)}.portal-dropdown .portal-toggle-btn.active{background:var(--color-dark);color:var(--color-light)}.portal-dropdown-form{display:none}.portal-dropdown-form.form-active{display:block}.portal-dropdown .dropdown-input,.auth-gate-form .form-input{width:100%;height:48px;background:inherit;border:var(--border-width) solid var(--color-dark);border-radius:0;padding:0 var(--space-2);font-size:var(--font-size-xs);color:var(--color-dark);margin-bottom:var(--space-1-5);box-sizing:border-box}.portal-dropdown .dropdown-input::-moz-placeholder,.auth-gate-form .form-input::-moz-placeholder{color:var(--color-dark);opacity:.5}.portal-dropdown .dropdown-input::placeholder,.auth-gate-form .form-input::placeholder{color:var(--color-dark);opacity:.5}.portal-dropdown .dropdown-input:focus,.auth-gate-form .form-input:focus{outline:none;border-color:var(--color-brand-red)}.portal-dropdown .password-field,.auth-gate-form .password-input-wrapper{position:relative}.portal-dropdown .password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:var(--space-0-5);color:var(--color-dark);display:flex;align-items:center;justify-content:center;margin-top:-.375rem}.portal-dropdown .password-toggle:hover{color:var(--color-brand-red)}.portal-dropdown .password-toggle .password-icon-hide,.portal-dropdown .password-toggle.showing .password-icon-show{display:none}.portal-dropdown .password-toggle.showing .password-icon-hide{display:block}.portal-dropdown .dropdown-submit{width:100%;height:48px;background:inherit;color:inherit;border:var(--portal-btn-border-width, 2px) solid currentColor;border-bottom-width:var(--portal-btn-border-bottom-width, var(--portal-btn-border-width, 2px));border-radius:0;font-family:var(--portal-btn-font-family, inherit);font-size:var(--font-size-base);text-transform:uppercase;cursor:pointer;transition:filter var(--duration-fast) ease}.portal-dropdown .dropdown-submit:hover,.portal-dropdown .dropdown-submit:focus{filter:brightness(1.15)}.portal-dropdown .dropdown-submit.valid{background:var(--color-brand-red);color:var(--color-bg-primary);opacity:1}.portal-dropdown .dropdown-submit.valid:hover,.portal-dropdown .dropdown-submit.valid:focus{background:var(--color-brand-red);color:var(--color-bg-primary);filter:brightness(1.1)}.portal-dropdown .dropdown-link{display:block;margin-top:var(--space-1-5);font-size:var(--font-size-xs);color:var(--color-dark);text-decoration:underline;text-underline-offset:2px;text-align:center}.portal-dropdown .dropdown-link:hover{color:var(--color-brand-red)}.portal-dropdown button.dropdown-link{background:none;border:none;padding:0;cursor:pointer;font-family:inherit;width:100%}.portal-dropdown .magic-info{font-size:var(--font-size-xs);color:var(--color-dark);opacity:.7;margin-top:var(--space-1);text-align:center}.portal-dropdown .forgot-info{font-size:var(--font-size-sm);color:var(--color-dark);margin-bottom:var(--space-2);text-align:left;line-height:var(--line-height-snug)}.portal-dropdown .reset-sent-icon{display:flex;justify-content:center;margin-bottom:var(--space-2);color:var(--color-brand-red)}.portal-dropdown .reset-sent-message{font-size:var(--font-size-sm);color:var(--color-dark);text-align:center;line-height:var(--line-height-normal);margin-bottom:var(--space-2)}@media(max-width:479px){.portal-dropdown{position:fixed;inset:auto 0 0;width:100%;border-left:none;border-right:none;border-bottom:none;transform:translateY(100%)}.portal-dropdown.open{transform:translateY(0)}.portal-dropdown:before,.portal-dropdown:after{display:none}}@media(max-width:767px){.portal-button{width:36px;height:36px}}.portal-login-section{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - var(--header-height, 60px));padding:var(--space-4) var(--space-2)}.portal-login-content{display:flex;flex-direction:column;align-items:center;width:100%;max-width:420px}.portal-login-card{width:100%;border:var(--border-width-thick) solid var(--color-dark);padding:var(--space-4);background:transparent}.portal-login-header{margin-bottom:var(--space-3)}.portal-login-logo{display:block;width:var(--icon-size-4xl);height:var(--icon-size-4xl);margin:0 auto var(--space-2-5)}.portal-login-header h2{font-family:var(--font-family-sans);font-size:var(--font-size-3xl);text-transform:uppercase;color:var(--color-dark);margin:0 0 var(--space-0-5) 0;letter-spacing:var(--letter-spacing-label);text-align:center}.portal-login-subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0;text-align:center}.terminal-window--auth{--terminal-window-flex: 0 1 auto;--terminal-window-min-width: 0;--terminal-window-max-height: none;--terminal-window-bg: transparent}.terminal-window--auth .portal-login-card{border:none}.terminal-auth-prompt{margin:0 0 var(--space-2-5);font-family:var(--font-family-mono);font-size:var(--font-size-sm)}.terminal-auth-prompt-sigil{color:var(--color-text-secondary)}.terminal-auth-prompt-command{color:var(--color-text-primary)}.terminal-auth-prompt-caret{color:var(--color-success);font-weight:var(--font-weight-bold)}.portal-form-stack{display:grid;align-items:start}.portal-form-stack>*{grid-area:1 / 1}.portal-form-stack>.is-inactive{visibility:hidden}.portal-page-form{display:flex;flex-direction:column;gap:var(--space-2)}.portal-page-field{display:flex;flex-direction:column}.password-requirements{margin-top:var(--space-2, 8px);padding:var(--space-3, 12px);background:var(--color-bg-raised, #f5f5f5);border-radius:var(--border-radius-sm, 4px);font-size:var(--font-size-sm, 13px)}.requirements-title{margin:0 0 var(--space-2, 8px) 0;font-weight:var(--font-weight-medium, 500);color:var(--color-text-secondary, #666)}.requirements-list{margin:0;padding-left:var(--space-4, 16px);list-style:none}.requirement{position:relative;padding-left:var(--space-3, 12px);margin-bottom:var(--space-1, 4px);color:var(--color-text-tertiary, #999);transition:color var(--duration-fast) ease}.requirement:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6px;height:6px;border-radius:50%;background:var(--color-text-tertiary, #999);transition:background var(--duration-fast) ease}.requirement.valid{color:var(--color-success)}.requirement.valid:before{background:var(--color-success)}[data-theme=dark] .password-requirements{background:var(--color-bg-secondary, #2a2a2a)}[data-theme=dark] .requirements-title{color:var(--color-text-primary, #e0e0e0)}.portal-page-input{width:100%;padding:var(--space-1-5) var(--space-2);border:var(--border-width) solid var(--color-dark);background:transparent;color:var(--color-dark);font-size:var(--font-size-base);font-family:inherit;outline:none;transition:border-color var(--transition-fast) ease;box-sizing:border-box}.portal-page-input::-moz-placeholder{color:var(--color-dark);opacity:.5}.portal-page-input::placeholder{color:var(--color-dark);opacity:.5}.portal-page-input:-webkit-autofill,.portal-page-input:-webkit-autofill:hover,.portal-page-input:-webkit-autofill:focus,.portal-page-input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px var(--color-neutral-300) inset!important;-webkit-text-fill-color:var(--color-dark)!important;-webkit-transition:background-color 9999s ease-in-out 0s;transition:background-color 9999s ease-in-out 0s;caret-color:var(--color-dark)}.portal-page-input:focus{border-color:var(--color-brand-red)}.portal-page-pw-wrapper{position:relative}.portal-page-pw-wrapper .portal-page-input{padding-right:2.75rem}.portal-page-pw-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--color-dark);padding:var(--space-0-5);display:flex;align-items:center;justify-content:center}.portal-page-pw-toggle:hover{opacity:.7}.portal-page-error{font-size:var(--font-size-sm);color:var(--color-error);margin:0}.portal-page-error:empty{display:none}.portal-page-submit{width:100%;padding:var(--space-1-5);background:inherit;color:inherit;border:var(--portal-btn-border-width, 2px) solid currentColor;border-bottom-width:var(--portal-btn-border-bottom-width, var(--portal-btn-border-width, 2px));border-radius:0;font-family:var(--portal-btn-font-family, inherit);font-size:var(--font-size-base);text-transform:uppercase;letter-spacing:var(--letter-spacing-label);cursor:pointer;transition:filter var(--duration-fast) ease}.portal-page-submit:hover:not(:disabled){filter:brightness(1.15)}.portal-page-submit:disabled{opacity:.6;cursor:not-allowed}.portal-page-success{border:var(--border-width-thick) solid var(--color-dark);padding:var(--space-2);font-size:var(--font-size-sm);color:var(--color-dark);text-align:center}.portal-page-footer{display:flex;align-items:center;justify-content:center;gap:var(--space-1);text-align:center;margin-top:var(--space-1)}.portal-page-divider{font-size:var(--font-size-sm);color:var(--color-dark);opacity:.4}.portal-page-link{font-size:var(--font-size-sm);color:var(--color-dark);text-decoration:underline;cursor:pointer}.portal-page-link:hover{opacity:.7}.intake-modal-backdrop{display:none;position:fixed;inset:0;width:100vw;height:100vh;background:var(--overlay-backdrop);z-index:var(--z-index-portal-overlay, 9500);pointer-events:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.intake-modal-backdrop.open{display:block}.intake-modal.intake-modal{display:none;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90vw;max-width:900px;height:92vh;max-height:92vh;z-index:var(--z-index-portal-modal, 9600);border-radius:var(--border-radius-md, 8px);overflow:hidden;border:var(--border-width) solid var(--color-dark);box-shadow:none;background-color:var(--color-terminal-bg)}.intake-modal.open{display:block}.intake-modal-close{position:absolute;top:10px;right:10px;z-index:var(--z-index-elevated);background:var(--color-overlay-light);border:none;border-radius:var(--border-radius-full, 50%);width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-text-tertiary);transition:color var(--duration-fast) ease,background var(--duration-fast) ease}.intake-modal-close:hover{color:var(--color-light);background:rgba(var(--color-mac-close-rgb, 255, 95, 86),.8)}.intake-modal-container{width:100%;height:100%;overflow:hidden}.intake-modal.intake-modal .terminal-intake-container,.intake-modal.intake-modal .terminal-intake{height:100%;max-height:100%;width:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;background-color:var(--color-terminal-bg)}.intake-modal.intake-modal .terminal-window{flex:1;width:100%;max-width:100%;max-height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;margin:0}.intake-modal.intake-modal .terminal-chat{flex:1;min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain}html.intake-open main#main-content{overflow:hidden}.intake-modal-backdrop,.intake-modal{overscroll-behavior:contain}.intake-modal.intake-modal .terminal-header,.intake-modal.intake-modal .terminal-progress,.intake-modal.intake-modal .terminal-input-area{flex-shrink:0}.intake-modal .intake-modal-container{background-color:var(--color-terminal-bg)}.intake-modal.intake-modal.open .intake-modal-container>*{opacity:1;visibility:visible}@media(max-width:767px){.intake-modal{width:100vw;height:100vh;max-width:100%;max-height:100%;top:0;left:0;transform:none}.intake-modal-close{top:15px;right:15px;width:44px;height:44px}}}@layer components{@media(min-width:768px){.business-card-section{flex:0 0 auto;min-height:calc(100vh - var(--header-height) - var(--footer-height));height:calc(100vh - var(--header-height) - var(--footer-height));display:grid;place-content:center;place-items:center;padding:0;box-sizing:border-box;width:100%;position:relative;overflow:visible;background:var(--color-neutral-300);z-index:var(--z-index-content);margin-top:0}.business-card-section .intro-nav{position:absolute;top:calc(50% + 147.095px + 1rem);left:50%;transform:translate(-50%)}}.business-card-container{display:flex;flex-direction:column;align-items:center;justify-content:center;position:static;z-index:var(--z-index-business-card);perspective:1000px;width:525px;height:294.19px;min-width:525px;min-height:294.19px;max-width:525px;max-height:294.19px;margin:0 auto;contain:layout style size;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;outline:none;background:transparent;border:none;box-shadow:none;padding:0}@media(max-width:767px){.business-card-container{width:380px;height:213px}}@media(max-width:479px){.business-card-container{width:315px;height:177px}}.business-card-container *{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.business-card{width:100%;height:100%;position:relative;perspective:1000px;cursor:pointer;outline:none;opacity:1;transform:scale(1);display:block;visibility:visible;transition:none;background:transparent;border:none;box-shadow:none}.business-card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:none;will-change:transform;backface-visibility:hidden}.business-card-front,.business-card-back{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;opacity:1;visibility:visible;backface-visibility:hidden;transform-style:preserve-3d;pointer-events:none;background:linear-gradient(135deg,var(--color-card-bg) 0%,var(--color-card-bg-gradient-end) 100%);color:var(--color-card-text);box-shadow:0 10px 30px var(--color-shadow);flex-direction:column;justify-content:center;align-items:center;text-align:center;overflow:visible;padding:0;box-sizing:border-box;font-family:var(--font-family-acme, "Courier New", monospace)}.business-card-front{transform:rotateY(0);z-index:var(--z-index-content)}.business-card-back{transform:rotateY(180deg);z-index:var(--z-index-content)}.card-svg{max-width:100%;max-height:100%;width:100%;height:100%;display:block;-o-object-fit:contain;object-fit:contain;pointer-events:none;transform-style:preserve-3d;transform-origin:center center}.business-card-front .card-svg,.business-card-back .card-svg{width:100%;height:100%;max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.business-card-front:empty:before,.business-card-back:empty:before{content:"Business Card - Content Missing";color:var(--color-text-tertiary);font-size:var(--font-size-sm);display:flex;align-items:center;justify-content:center;width:100%;height:100%;background-color:var(--color-card-bg);border:var(--border-width) dashed var(--color-border-secondary)}@media(max-width:767px){.business-card-container{width:380px;height:213px;min-width:380px;min-height:213px;max-width:380px;max-height:213px}.business-card-front,.business-card-back{padding:0}.intro-loading .business-card-inner{transform:rotateY(180deg)}}@media(max-width:479px){.business-card-container{width:315px;height:177px;min-width:315px;min-height:177px;max-width:315px;max-height:177px}.business-card-front,.business-card-back{padding:0}}@media(prefers-reduced-motion:reduce){.business-card-inner{transition:none!important}.business-card,.business-card-inner{transform:none!important}.business-card-container{perspective:none}}@media(prefers-contrast:high){.business-card-inner{box-shadow:0 0 0 2px var(--color-text-primary)}.business-card-front,.business-card-back{background:var(--color-card-bg);color:var(--color-text-primary);box-shadow:0 0 0 1px var(--color-text-primary),0 10px 30px var(--color-shadow)}}@media print{.business-card-container{width:3.5in;height:2in;perspective:none}.business-card,.business-card-inner{transform:none!important;box-shadow:none;border:1pt solid var(--color-dark);background-color:var(--color-card-bg)}.business-card-front,.business-card-back{box-shadow:none;border:none;background:var(--color-card-bg);color:var(--color-text-primary)}.business-card-back{display:none}}html[data-theme=dark] .business-card-front,html[data-theme=dark] .business-card-back{box-shadow:0 8px 32px var(--color-shadow-xl)}html[data-theme=dark] .business-card-container{background:radial-gradient(circle at center,rgba(255,255,255,.02),transparent)}}@layer components{.intro-nav{display:flex;align-items:center;justify-content:space-between;width:525px;max-width:525px;margin-top:var(--space-2);padding:var(--space-3) var(--space-3);box-sizing:border-box;opacity:0}.intro-nav-link{font-family:var(--font-family-acme),"Acme",sans-serif;font-size:clamp(1.5rem,4vw,2rem);font-weight:var(--font-weight-regular);line-height:var(--line-height-tight);text-transform:uppercase;opacity:0;text-shadow:0 2px 4px var(--color-shadow);letter-spacing:var(--letter-spacing-widest);color:var(--color-dark);text-decoration:none;padding:var(--space-3) 0;transition:color var(--transition-fast) var(--cubic-default);position:relative}.intro-nav-link:hover{color:var(--color-brand-red);opacity:.9}.intro-nav-link:focus{outline:none;box-shadow:none;border:none}.intro-nav-link:focus-visible{outline-offset:4px}@media(max-width:767px){.intro-nav{width:380px;max-width:380px;margin-top:var(--space-1-5);padding:var(--space-1) var(--space-2-5)}.intro-nav-link{font-size:clamp(1.25rem,5vw,2rem)}}@media(max-width:479px){.intro-nav{width:315px;max-width:315px;margin-top:var(--space-1);padding:var(--space-1) var(--space-2)}.intro-nav-link{font-size:clamp(1.125rem,6vw,1.75rem);letter-spacing:var(--letter-spacing-widest)}}}@layer components{.intro-morph-overlay{position:fixed;top:var(--header-height);left:0;width:100vw;height:calc(100vh - var(--header-height) - var(--footer-height));z-index:var(--z-index-50);background-color:var(--color-neutral-300);display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:1;visibility:visible;will-change:opacity}.intro-complete .intro-morph-overlay,.intro-finished .intro-morph-overlay{opacity:0;visibility:hidden}.paw-exit .intro-morph-overlay{top:var(--header-height);height:calc(100vh - var(--header-height) - var(--footer-height))}.intro-morph-overlay.hidden{opacity:0;visibility:hidden}.intro-morph-svg{position:absolute;top:0;left:0;width:100%;height:100%;overflow:visible}.morph-paw{fill:var(--color-text-primary);stroke:none;transform-origin:center center;will-change:transform,opacity}@media(max-width:767px){html.intro-loading .intro-morph-overlay{display:flex;opacity:1;visibility:visible}}@media(max-width:479px){.intro-morph-overlay,.paw-exit .intro-morph-overlay{top:var(--header-height);height:calc(100dvh - var(--header-height))}}@media(prefers-reduced-motion:reduce){.intro-morph-overlay{display:none;opacity:0;visibility:hidden}}}@layer components{.arrow-callout{--callout-width: clamp(320px, 32vw, 470px);--callout-aspect: 540 / 500;--callout-gap-x: 1vw;--callout-gap-y: 1vh;--callout-z: 9999;--callout-text-left: 10%;--callout-text-top: 7%;--callout-text-width: 60%;--callout-text-height: 47%;--callout-close-top: 2%;--callout-close-left: 73%;--callout-close-size: 1.6rem;--callout-font: system-ui, -apple-system, "Segoe UI", sans-serif;--callout-font-size: clamp(.5rem, .82vw, .78rem);--callout-font-weight: 600;--callout-line-height: 1.18;--callout-text-color: #191a0b;--callout-close-bg: #f8eddc;--callout-close-ink: #5c4a3d;--callout-close-border-width: 1px;--callout-transition: .15s ease;--callout-enter-offset: calc(100% + var(--callout-gap-y) + 1rem);--callout-enter-duration: .42s;--callout-enter-ease: cubic-bezier(.34, 1.4, .64, 1);--callout-exit-duration: .32s;--callout-exit-ease: cubic-bezier(.55, .055, .675, .19);position:fixed;right:var(--callout-gap-x);bottom:var(--callout-gap-y);width:var(--callout-width);aspect-ratio:var(--callout-aspect);pointer-events:none;z-index:var(--callout-z)}.arrow-callout--anchored{position:absolute}.arrow-callout:not(.is-active) .arrow-callout__mascot,.arrow-callout:not(.is-active) .arrow-callout__mascot-img{display:none}.arrow-callout__mascot{position:absolute;left:var(--callout-mascot-left, 52%);top:var(--callout-mascot-top, 35%);width:var(--callout-mascot-width, 48%);height:var(--callout-mascot-height, 65%);display:block;margin:0;padding:0;border:none;background:none;cursor:pointer;pointer-events:auto;z-index:2}.arrow-callout__bubble-img{display:block;width:100%;height:100%}.arrow-callout__mascot-img{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none}.arrow-callout__bubble{position:absolute;inset:0;pointer-events:none;z-index:var(--z-index-1)}.arrow-callout:not(.is-blurb-open) .arrow-callout__bubble{display:none}.arrow-callout__text{position:absolute;left:var(--callout-text-left);top:var(--callout-text-top);width:var(--callout-text-width);height:var(--callout-text-height);margin:0;display:flex;flex-direction:column;justify-content:center;text-align:left;white-space:pre-line;font-family:var(--callout-font);font-weight:var(--callout-font-weight);font-size:var(--callout-font-size);line-height:var(--callout-line-height);color:var(--callout-text-color);z-index:2}.arrow-callout__close{position:absolute;top:var(--callout-close-top);left:var(--callout-close-left);z-index:3;display:flex;align-items:center;justify-content:center;width:var(--callout-close-size);height:var(--callout-close-size);padding:0;border:var(--callout-close-border-width) solid var(--callout-close-ink);border-radius:50%;background-color:var(--callout-close-bg);color:var(--callout-close-ink);cursor:pointer;pointer-events:auto;transition:background-color var(--callout-transition),color var(--callout-transition)}.arrow-callout__close:hover{background-color:var(--callout-close-ink);color:var(--callout-close-bg)}@media(prefers-reduced-motion:reduce){.arrow-callout__close{transition:none}}.arrow-callout--manual{transform:translateY(var(--callout-enter-offset));opacity:0;visibility:hidden;transition:transform var(--callout-exit-duration) var(--callout-exit-ease),opacity var(--callout-exit-duration) var(--callout-exit-ease),visibility 0s linear var(--callout-exit-duration)}.arrow-callout--manual.is-active{transform:translateY(0);opacity:1;visibility:visible;transition:transform var(--callout-enter-duration) var(--callout-enter-ease),opacity var(--callout-enter-duration) var(--callout-enter-ease),visibility 0s linear 0s}.arrow-callout--manual.is-active.is-leaving{transform:translateY(var(--callout-enter-offset));opacity:0;transition:transform var(--callout-exit-duration) var(--callout-exit-ease),opacity var(--callout-exit-duration) var(--callout-exit-ease)}@media(prefers-reduced-motion:reduce){.arrow-callout--manual,.arrow-callout--manual.is-active,.arrow-callout--manual.is-active.is-leaving{transform:none;transition:opacity var(--callout-transition),visibility 0s}}}@layer components{.arrow-callout--contact{--callout-font: var(--terminal-font-family);--callout-font-size: var(--font-size-sm);--callout-font-weight: var(--font-weight-regular);--callout-line-height: var(--terminal-line-height);--callout-text-color: var(--color-text-on-light);--callout-close-bg: var(--color-bg-primary);--callout-close-ink: var(--color-text-primary);--callout-mascot-left: 52.6%;--callout-mascot-top: 35.6%;--callout-mascot-width: 45%;--callout-mascot-height: 63.6%;--callout-text-left: 12%;--callout-text-top: 8%;--callout-text-width: 52%;--callout-text-height: 45%;--callout-z: var(--z-index-elevated)}@media(min-width:1180px){.arrow-callout--contact{--callout-form-edge: calc(50% + (var(--contact-content-max-width, 580px) / 2));--callout-gutter: calc(50vw - (var(--contact-content-max-width, 580px) / 2) - 2.5rem);--callout-width: min(380px, var(--callout-gutter));--callout-form-overlap: 5rem;left:calc(var(--callout-form-edge) - var(--callout-form-overlap));right:auto;--callout-gap-y: 12vh;bottom:calc(var(--callout-gap-y) + var(--footer-curtain-lift, 0px))}}@media(max-width:767px){.arrow-callout--contact{--callout-width: min(78vw, 340px);--callout-gap-x: .75rem;--callout-gap-y: 10vh;bottom:calc(var(--callout-gap-y) + var(--footer-curtain-lift, 0px));--callout-font-size: var(--font-size-xs)}}@media(min-width:1180px){.arrow-callout--contact[data-arrow-size=short]{--callout-width: min(300px, var(--callout-gutter))}.arrow-callout--contact[data-arrow-size=medium]{--callout-width: min(360px, var(--callout-gutter))}.arrow-callout--contact[data-arrow-size=long]{--callout-width: min(430px, var(--callout-gutter))}}@media(max-width:767px){.arrow-callout--contact[data-arrow-size=short]{--callout-width: min(64vw, 280px)}.arrow-callout--contact[data-arrow-size=medium]{--callout-width: min(74vw, 320px)}.arrow-callout--contact[data-arrow-size=long]{--callout-width: min(86vw, 370px)}}.arrow-callout--contact{transition:transform var(--callout-exit-duration) var(--callout-exit-ease),opacity var(--callout-exit-duration) var(--callout-exit-ease),visibility 0s linear var(--callout-exit-duration),width var(--callout-enter-duration) var(--callout-enter-ease)}.arrow-callout--contact.is-active:not(.is-blurb-open):not(.is-leaving):has(.arrow-callout__text:empty){transform:translateY(calc(28% + var(--callout-gap-y) + var(--footer-curtain-lift, 0px)));transition:transform var(--callout-enter-duration) var(--callout-enter-ease),opacity var(--callout-enter-duration) var(--callout-enter-ease)}.arrow-callout--contact:has(.arrow-callout__text:empty) .arrow-callout__mascot{visibility:hidden}.arrow-callout--contact[data-arrow-peek=high].is-active:not(.is-blurb-open):not(.is-leaving):has(.arrow-callout__text:empty){transform:translateY(calc(14% + var(--callout-gap-y) + var(--footer-curtain-lift, 0px)))}@media(prefers-reduced-motion:reduce){.arrow-callout--contact.is-active:not(.is-blurb-open):not(.is-leaving):has(.arrow-callout__text:empty),.arrow-callout--contact[data-arrow-peek=high].is-active:not(.is-blurb-open):not(.is-leaving):has(.arrow-callout__text:empty){transition:none}}}@layer components{[data-page=client] .footer:not(.portal-footer),[data-page=admin] .footer:not(.admin-footer){display:none}body[data-page=not-found] .footer,body[data-page=design-system] .footer{position:static;height:auto;padding:0;width:100%;flex:0 0 auto;display:block}body[data-page=not-found] .footer-curtain,body[data-page=design-system] .footer-curtain{position:static;height:auto;min-height:var(--footer-curtain-height);transform:none;visibility:visible}.footer-curtain{visibility:hidden}.footer--curtain-open .footer-curtain{visibility:visible}:root{--curtain-avatar-height: clamp(88px, 16vh, 150px);--curtain-avatar-width: calc(var(--curtain-avatar-height) * .809);--curtain-avatar-trim: calc(var(--curtain-avatar-height) * .107);--curtain-mark-gap: var(--space-1);--curtain-credit-pull: var(--space-1-5);--curtain-credit-leading: 1.6;--curtain-credit-size: calc(var(--curtain-wordmark-size) * .64);--curtain-wordmark-size: calc(var(--curtain-avatar-height) * .195);--curtain-year-size: calc(var(--curtain-wordmark-size) * .9735);--curtain-year-lift: calc(var(--space-2) + var(--space-0-5));--curtain-year-nudge: var(--space-0-25);--curtain-inset: calc(var(--container-padding) + var(--space-2));--curtain-credit-height: calc( var(--curtain-credit-size) * var(--curtain-credit-leading) * 2 - var(--curtain-credit-pull) + var(--curtain-mark-gap) + var(--curtain-year-size) * 1.4 - var(--curtain-year-lift) );--footer-curtain-height: calc( var(--curtain-avatar-height) + var(--curtain-credit-height) + var(--curtain-inset) * 2 );--footer-curtain-bg: var(--color-gray-900);--footer-curtain-text: var(--color-off-white);--footer-curtain-text-muted: var(--color-gray-400)}.footer{position:fixed;bottom:0;left:0;right:0;height:var(--footer-height, 40px);background:transparent;padding:0 var(--space-4);font-size:var(--font-size-sm);color:var(--color-dark);text-align:right;z-index:var(--z-index-base);display:flex;align-items:center;justify-content:flex-end;pointer-events:none;opacity:1;visibility:visible}.intro-loading .footer,.intro-complete .footer,.intro-complete.intro-finished .footer,.paw-exit .footer{opacity:1;visibility:visible}[data-theme=dark] .footer{background:transparent;color:var(--color-dark)}.footer-curtain{position:fixed;bottom:0;left:0;right:0;height:var(--footer-curtain-height);z-index:var(--z-index-base);background:var(--footer-curtain-bg);color:var(--footer-curtain-text);text-align:left;pointer-events:auto;overflow:hidden}.intro-loading .footer-curtain,.paw-exit .footer-curtain{visibility:hidden}.footer-curtain__inner{height:100%;padding:var(--curtain-inset);display:grid;grid-template-columns:1fr;grid-template-rows:1fr;align-content:stretch;position:relative;will-change:transform}.footer-curtain__mark{align-self:center;justify-self:end;display:grid;grid-template-columns:auto auto;gap:var(--curtain-mark-gap);min-width:0}.footer-curtain__lockup{grid-column:2;grid-row:2;display:flex;flex-direction:column;align-items:flex-start}.footer-curtain__brand{display:flex;align-items:center;gap:var(--space-2);min-width:0;text-decoration:none;color:inherit;transition:opacity var(--transition-mouse, var(--duration-medium)) ease}.footer-curtain__brand:hover,.footer-curtain__brand:focus-visible{opacity:.75}.footer-curtain__avatar{display:block;height:var(--curtain-avatar-height);width:auto;margin-right:calc(var(--curtain-avatar-trim) * -1);filter:invert(.878)}.footer-curtain__wordmark{width:-moz-min-content;width:min-content;margin:var(--space-1) 0 0;font-family:var(--font-family-acme);font-weight:600;font-size:var(--curtain-wordmark-size);line-height:.95;letter-spacing:.01em;text-transform:uppercase;color:var(--footer-curtain-text)}.footer-curtain__credit,.footer-curtain__year{margin:0;line-height:1.4;white-space:nowrap;color:var(--footer-curtain-text-muted)}.footer-curtain__credit{grid-column:1;grid-row:1;justify-self:start;font-size:var(--curtain-credit-size);line-height:var(--curtain-credit-leading);margin-bottom:calc(var(--curtain-credit-pull) * -1);text-transform:uppercase;letter-spacing:var(--letter-spacing-widest)}.footer-curtain__year{margin-left:calc(var(--curtain-avatar-width) - var(--curtain-avatar-trim) + var(--space-2) + var(--curtain-year-nudge));text-align:left;font-size:var(--curtain-year-size);margin-top:calc(var(--curtain-year-lift) * -1)}@media(min-width:480px)and (max-width:767px){.footer{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-index-base);background:transparent}}@media(max-width:479px){.footer{position:fixed;bottom:0;left:0;right:0;width:100%;height:var(--footer-height, 40px);z-index:var(--z-index-base);margin-top:0;background:transparent;padding-bottom:env(safe-area-inset-bottom,0px)}.footer-curtain{padding-bottom:env(safe-area-inset-bottom,0px)}}@media(prefers-reduced-motion:reduce){.footer-curtain,.footer-curtain__inner{will-change:auto}}@media(max-width:991px){.footer-curtain__mark{justify-self:center}}@media(max-width:500px){.footer-curtain__mark{grid-template-columns:auto}.footer-curtain__credit{grid-column:1;grid-row:1;justify-self:end;text-align:left}.footer-curtain__lockup{grid-column:1;grid-row:2}}}@layer pages{@media(min-width:768px){.about-section{--about-section-padding: clamp(2rem, 4vw, 4rem);min-height:calc(100vh - var(--header-height) - var(--footer-height));display:grid;grid-template-columns:minmax(0,1fr);align-items:safe center;justify-items:center;padding:var(--about-section-padding);box-sizing:border-box;width:100%;position:relative}.about-content{display:block;max-width:100%;width:100%;margin:0 auto;padding:0;box-sizing:border-box}.about-layout{display:flex;gap:var(--space-2);align-items:center;width:-moz-fit-content;width:fit-content;max-width:100%;margin-inline:auto}.about-image-column{flex-shrink:0}.about-photo-picture{display:block}.about-photo{width:300px;height:auto;border:var(--border-width-heavy) solid var(--color-dark);display:block}.about-text-column{display:flex;flex-direction:column;flex:1;max-width:700px;gap:0;padding-top:0}.about-section .section-heading{margin-bottom:var(--space-1)}.about-section .section-divider{width:95%}.about-text-column p{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--color-dark);margin:0 0 var(--space-2-5) 0}.about-text-column p:last-child{margin-bottom:0}}@media(min-width:1200px){.about-layout{gap:var(--space-4)}}.about-marquee{--about-marquee-duration: 92s;--about-marquee-glyph-duration: 9s;--about-marquee-fade: 6%;--about-marquee-gap: var(--space-fluid-sm);overflow:hidden;padding-block:var(--space-fluid-md);margin-inline:calc(-1 * var(--container-padding));align-self:stretch;-webkit-mask-image:linear-gradient(90deg,transparent,#000 var(--about-marquee-fade),#000 calc(100% - var(--about-marquee-fade)),transparent);mask-image:linear-gradient(90deg,transparent,#000 var(--about-marquee-fade),#000 calc(100% - var(--about-marquee-fade)),transparent)}.about-marquee__track{display:inline-flex;gap:var(--about-marquee-gap);white-space:nowrap;will-change:transform;animation:about-marquee-scroll var(--about-marquee-duration) linear infinite}.about-marquee__item{flex:none;display:inline-flex;align-items:center;gap:var(--about-marquee-gap);font-family:var(--font-family-acme);text-transform:uppercase;font-size:var(--font-size-3xl);color:var(--color-dark)}.about-marquee__item:before{content:"";flex-shrink:0;width:.9em;height:.9em;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 201 201'%3E%3Cpath d='M100.5 3L114.058 58.7724L157.809 21.6208L135.996 74.7109L193.228 70.3708L144.375 100.5L193.228 130.629L135.996 126.289L157.809 179.379L114.058 142.228L100.5 198L86.9419 142.228L43.1909 179.379L65.0044 126.289L7.77197 130.629L56.625 100.5L7.77197 70.3708L65.0044 74.7109L43.1909 21.6208L86.9419 58.7724L100.5 3Z'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 201 201'%3E%3Cpath d='M100.5 3L114.058 58.7724L157.809 21.6208L135.996 74.7109L193.228 70.3708L144.375 100.5L193.228 130.629L135.996 126.289L157.809 179.379L114.058 142.228L100.5 198L86.9419 142.228L43.1909 179.379L65.0044 126.289L7.77197 130.629L56.625 100.5L7.77197 70.3708L65.0044 74.7109L43.1909 21.6208L86.9419 58.7724L100.5 3Z'/%3E%3C/svg%3E") center / contain no-repeat;animation:about-marquee-glyph-spin var(--about-marquee-glyph-duration) linear infinite}@keyframes about-marquee-scroll{to{transform:translate(-50%)}}@keyframes about-marquee-glyph-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.about-marquee__track,.about-marquee__item:before{animation:none}}@media(min-width:768px){.about-content{display:flex;flex-direction:column;align-self:stretch}.about-layout{margin-block:auto}.about-marquee{margin-inline:calc(-1 * var(--about-section-padding));margin-top:var(--space-fluid-lg)}}}@layer pages{.contact-section{--contact-content-max-width: 580px;min-height:calc(100vh - var(--header-height) - var(--footer-height));height:calc(100vh - var(--header-height) - var(--footer-height));display:flex;flex-direction:column;justify-content:safe center;align-items:center;width:100%;padding:var(--space-3);box-sizing:border-box;position:relative;overflow:visible}.contact-content{display:flex;flex-direction:column;width:100%;max-width:var(--contact-content-max-width);margin:0 auto;padding:0;box-sizing:border-box}section.contact-section .section-heading{overflow:visible;position:relative}.contact-layout{display:block;width:100%;margin-top:0;overflow:visible}.contact-form-column{width:100%;position:relative;z-index:var(--z-index-content)}p.contact-options{display:block;margin-bottom:var(--space-2);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--color-text-primary);text-align:left;overflow-wrap:break-word}.contact-form{width:100%;margin:0;padding:0;border:none;border-radius:0;background-color:transparent;box-sizing:border-box;box-shadow:none;overflow:visible;display:flex;flex-direction:column;gap:0}.submit-row{position:relative;display:flex;align-items:center;margin-top:var(--space-2)}@media(max-width:1100px){.contact-section{padding:var(--space-4)}}@media(min-width:1200px){.contact-section{padding:var(--space-4)}}.contact-option-link{font-weight:var(--font-weight-extrabold);text-decoration:underline}.input-wrapper{overflow:hidden;position:relative;padding:0;width:100%;box-sizing:border-box;display:flex;flex-direction:column}.contact-form .input-wrapper:first-of-type{border:var(--contact-field-border-width) solid var(--contact-field-border-color)}.contact-form .input-wrapper+.input-wrapper{border:var(--contact-field-border-width) solid var(--contact-field-border-color);border-top:none}.contact-form .input-wrapper:has(>.input-item.error){border-color:var(--color-brand-red);box-shadow:inset 4px 0 0 0 var(--color-brand-red)}.contact-form .input-item.error input::-moz-placeholder,.contact-form .input-item.error textarea::-moz-placeholder{color:var(--color-brand-red);opacity:var(--placeholder-opacity, 1)}.contact-form .input-item.error input::placeholder,.contact-form .input-item.error textarea::placeholder{color:var(--color-brand-red);opacity:var(--placeholder-opacity, 1)}.contact-form .input-item{display:flex;flex-direction:column;position:relative;overflow:visible;max-width:100%}.contact-form label.text-small{display:none}.input-item input,.input-item textarea{background:inherit;border:none;border-radius:0;color:var(--color-text-primary);caret-color:var(--color-brand-red);font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-weight-regular);box-sizing:border-box;outline:none;box-shadow:none;position:relative;z-index:var(--z-index-base);-webkit-appearance:none;--placeholder-opacity: 1}.input-item input{width:100%;height:var(--contact-input-height);padding:.78rem .85rem;line-height:var(--line-height-normal)}.input-item textarea{width:100%;max-width:100%;min-height:var(--contact-textarea-height, 175px);height:auto;resize:none;overflow:hidden;padding:.78rem .85rem;line-height:var(--line-height-normal)}.input-item input::-moz-placeholder,.input-item textarea::-moz-placeholder{color:var(--color-text-tertiary);opacity:var(--placeholder-opacity, 1);font-style:normal}.input-item input::placeholder,.input-item textarea::placeholder{color:var(--color-text-tertiary);opacity:var(--placeholder-opacity, 1);font-style:normal}.contact-form .input-wrapper:focus-within{z-index:var(--z-index-content);position:relative}.contact-form .input-item input:focus,.contact-form .input-item input:focus-visible,.contact-form .input-item textarea:focus,.contact-form .input-item textarea:focus-visible{outline:none;box-shadow:none}.contact-form input:-webkit-autofill,.contact-form input:-webkit-autofill:hover,.contact-form input:-webkit-autofill:focus,.contact-form input:-webkit-autofill:active{-webkit-text-fill-color:var(--color-text-primary)!important;box-shadow:0 0 0 100px var(--color-bg-primary) inset!important;-webkit-box-shadow:0 0 0px 100px var(--color-bg-primary) inset!important}.submit-button{display:inline-flex;align-items:center;gap:.55rem;background:inherit;border:var(--portal-btn-border-width, 2px) solid currentColor;border-bottom-width:var(--portal-btn-border-bottom-width, var(--portal-btn-border-width, 2px));border-radius:0;box-shadow:none;padding:.9375rem 1.875rem;font-family:var(--font-family-body, inherit);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide, .04em);color:var(--color-text-primary);cursor:pointer;z-index:var(--z-index-20);overflow:visible}.submit-button:focus,.submit-button:focus-visible{outline:2px solid var(--color-text-primary);outline-offset:2px}.submit-button span{font-size:inherit;font-weight:inherit;color:inherit}.contact-form .submit-button.form-sent span{font-size:inherit;font-weight:inherit}.contact-form .submit-button.form-sent svg{display:none}.submit-button.loading{pointer-events:none}.submit-button .btn-icon{width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;overflow:visible}.submit-button .btn-icon .arrow-group,.submit-button .btn-icon .bow-group{transform-origin:center center}html[data-theme=dark] .input-item input,html[data-theme=dark] .input-item textarea{color:var(--color-text-primary);caret-color:var(--color-brand-red);-webkit-text-fill-color:var(--color-text-primary)}.form-error-tooltip{position:absolute;top:50%;transform:translateY(-50%);background:var(--color-error);color:var(--color-gray-50);padding:var(--space-1) var(--space-1-5);font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-weight-regular);border:1px solid var(--color-error);border-radius:0;white-space:nowrap;z-index:var(--z-index-20, 20)}.form-error-tooltip:before{content:"";position:absolute;top:-6px;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid var(--color-error)}.form-error-tooltip ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.15rem}.form-error-tooltip li:before{content:"*";margin-right:.4rem;font-weight:var(--font-weight-bold);font-size:1.2em}section.contact-section .contact-form input.error,section.contact-section .contact-form textarea.error{border-color:var(--color-error);background-color:inherit}@media(prefers-contrast:high){.input-item input,.input-item textarea,.submit-button{border-width:var(--border-width-thick)}}@media(prefers-reduced-motion:reduce){.input-item input,.input-item textarea,.submit-button,label.text-small{transition:none!important;animation:none!important}.submit-button{opacity:1;transform:translate(0)}.input-item{transform:translateY(0)}}.contact-addresses{display:flex;flex-wrap:wrap;gap:var(--space-1, var(--space-1)) var(--space-3, var(--space-3));margin-top:var(--space-2, var(--space-2));font-size:var(--font-size-sm, .9rem)}.contact-address{white-space:nowrap}}@layer pages{.project-card-title{display:flex;align-items:center;gap:var(--space-1);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-dark);margin:0 -30px 0 0;line-height:var(--line-height-snug);flex:1;min-width:0;overflow:hidden;transform:translate(-30px);transition:transform var(--transition-mouse, var(--duration-fast))}.work-half-wrapper{width:100%}@media(min-width:768px){.work-half-wrapper{width:100%}}.work-card{overflow:hidden}.card-container{height:90px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;pointer-events:auto;border-bottom:var(--border-width) solid var(--color-dark);transition:border-color var(--transition-theme, .4s)}.card-container.leaving{pointer-events:none}.project-card-title svg{height:50px;width:50px;fill:var(--color-dark);flex-shrink:0;transition:fill var(--transition-theme, .4s)}.card-container:hover .project-card-title,.card-container:focus .project-card-title{transform:translate(0)}.card-container .project-card-title h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-dark);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color var(--transition-theme, .4s)}.card-right-content{display:flex;align-items:center;gap:var(--space-2);white-space:nowrap;transform-origin:right;transition:transform var(--transition-mouse, var(--duration-fast));flex-shrink:0;margin-left:var(--space-6)}.card-container:hover .card-right-content,.card-container:focus .card-right-content{transform:translate(-10px)}.card-category{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-dark);transition:color var(--transition-theme, .4s)}.projects-section .heading-divider{background-color:var(--color-dark);height:4px;border-radius:var(--border-radius-xs, 2px) 0 var(--border-radius-sm, 4px) var(--border-radius-xs, 2px);transform-origin:bottom left;transition:background-color var(--transition-theme, .4s)}@media(min-width:600px)and (max-width:1100px){.projects-section .section-heading{margin-top:0;margin-bottom:var(--space-0-5)}.projects-section .section-divider{margin-bottom:var(--space-4)}.wip-sign{width:70vw;max-width:none;margin:var(--space-20) auto 0}.card-container .project-card-title h3{font-size:var(--font-size-xl)}.card-category{font-size:var(--font-size-sm)}}@media(max-width:767px){.projects-content{flex-direction:column;gap:0;padding:0;align-items:stretch;width:100%;max-width:100%}.work-half-wrapper{width:100%}.card-container{height:80px}.project-card-title svg{height:40px;width:40px}.card-container .project-card-title h3{font-size:var(--font-size-lg)}.card-container:hover .card-right-content,.card-container:focus .card-right-content{transform:none}.card-category{font-size:var(--font-size-sm)}.wip-sign-container{max-width:100%;width:100vw;display:flex;justify-content:center;align-items:center;align-self:center;padding:0;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%)}.wip-sign{width:70vw;max-width:none;margin:var(--space-20) auto 0;display:block;transform:translate(8%) scale(1.15)}}@media(max-width:479px){.projects-content{gap:0;padding:0}.card-container{height:70px}.project-card-title svg{height:35px;width:35px}.card-container .project-card-title h3{font-size:var(--font-size-base)}.card-category{font-size:var(--font-size-xs)}.wip-sign-container{width:100vw;align-self:center;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%)}.wip-sign{width:70vw;max-width:none;margin:var(--space-20) auto 0;display:block;transform:translate(8%) scale(1.2)}}.crt-tv{display:block}@media(max-width:767px){.projects-tv-wrap{padding:0}.crt-tv__channel-row>.crt-tv__channel-meta:last-child{display:none}.crt-tv__guide-info-line{overflow:visible;text-overflow:clip}.crt-tv__guide-info{position:relative;z-index:2}.crt-tv__guide-feature{position:relative;z-index:var(--z-index-1)}.crt-tv__channel-title{white-space:normal}.crt-tv__panel,.crt-tv__panel-body{line-height:1.5}.crt-tv__panel-details dt,.crt-tv__panel-details{grid-template-columns:max-content 1fr;gap:.5em 1em}.crt-tv__panel-details dd{white-space:pre-line;word-break:normal;overflow-wrap:break-word;line-height:1.15}.crt-tv__panel-cta{white-space:nowrap}}.crt-tv__wrapper{position:relative;width:100%}.crt-tv__screen-bg{position:absolute;inset:0;width:100%;height:100%;z-index:var(--z-index-1)}.crt-tv__screen-glass{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}.crt-tv__screen{position:absolute;container-type:size;container-name:crt-screen;top:8.737%;left:6.421%;width:73.018%;height:70.311%;overflow:hidden;z-index:var(--z-index-1)}.crt-tv__frame-picture,.crt-tv__screen-bg-picture,.crt-tv__screen-glass-picture{display:contents}.crt-tv__frame{position:relative;width:100%;height:auto;aspect-ratio:1426 / 1093;display:block;z-index:var(--z-index-10);pointer-events:none;filter:drop-shadow(0 14px 16px var(--color-shadow))}[data-theme=light] .crt-tv__frame{filter:drop-shadow(0 12px 12px var(--color-shadow-3xl))}.crt-tv__channel-display{position:absolute;inset:0;width:100%;height:100%;z-index:11;pointer-events:none}.crt-tv__btn{position:absolute;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:0;margin:0;cursor:pointer;z-index:12}.crt-tv__btn:focus-visible{outline:1.5px solid #fff;outline-offset:0;border-radius:9999px}.crt-tv__btn--power{top:25.39%;left:87.12%;width:10.74%;height:2.06%}.crt-tv__btn--channel-down{top:29.51%;left:87.12%;width:5.37%;height:2.06%}.crt-tv__btn--channel-up{top:29.51%;left:92.49%;width:5.37%;height:2.06%}.crt-tv__btn--volume-down{top:33.76%;left:87.12%;width:5.37%;height:2.01%}.crt-tv__btn--volume-up{top:33.76%;left:92.49%;width:5.37%;height:2.01%}.crt-tv__btn--channel-down:focus-visible,.crt-tv__btn--volume-down:focus-visible{border-radius:9999px 0 0 9999px}.crt-tv__btn--channel-up:focus-visible,.crt-tv__btn--volume-up:focus-visible{border-radius:0 9999px 9999px 0}.crt-tv__btn--volume-down.is-at-min,.crt-tv__btn--volume-up.is-at-max{pointer-events:none;cursor:default}.crt-tv__mute-indicator{position:absolute;top:10%;right:7%;width:clamp(16px,5%,28px);aspect-ratio:1;color:#ffffff73;filter:drop-shadow(0 0 3px rgba(255,255,255,.18));z-index:5;opacity:0;pointer-events:none;transition:opacity var(--duration-faster) ease}.crt-tv__mute-indicator>svg{width:100%;height:100%;display:block}.crt-tv.is-muted:not(.is-powered-off) .crt-tv__mute-indicator{opacity:1}.projects-tv-controls{display:none}@media(max-width:479px){.projects-tv-wrap{flex-direction:column;align-items:stretch}.projects-tv-controls{display:block;position:relative;width:min(48vw,180px);aspect-ratio:153 / 133;margin:clamp(var(--space-5),7vh,var(--space-8)) auto 0}.projects-tv-controls-img{display:block;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.projects-tv-control-btn{position:absolute;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:0;margin:0;cursor:pointer}.projects-tv-control-btn--power{left:0;width:100%;top:14.3%;height:17.3%}.projects-tv-control-btn--channel-down{left:0;width:50%;top:48.1%;height:17.3%}.projects-tv-control-btn--channel-up{left:50%;width:50%;top:48.1%;height:17.3%}.projects-tv-control-btn--volume-down{left:0;width:50%;top:83.5%;height:16.5%}.projects-tv-control-btn--volume-up{left:50%;width:50%;top:83.5%;height:16.5%}.projects-tv-control-btn:focus-visible{outline:2px solid var(--color-text-primary);outline-offset:1px;border-radius:2px}}.crt-tv.is-powered-off .crt-tv__screen,.crt-tv.is-powered-off .crt-tv__channel-display,.crt-tv.is-powered-off .crt-tv__image{visibility:hidden}.crt-tv__screen-bg{pointer-events:none}.crt-tv__image{position:absolute;inset:0;width:100%;height:100%;z-index:var(--z-index-1);opacity:0;pointer-events:none}.crt-tv__title-text{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4cqw;padding:4cqw 6cqw;text-align:center;color:var(--card-color, #fff);opacity:0;pointer-events:none}.crt-tv__title-primary,.crt-tv__title-secondary{margin:0;font-family:var(--font-family-acme, sans-serif);text-transform:uppercase;text-wrap:balance}.crt-tv__title-primary{font-size:calc(var(--card-primary-pt, 90) * .13cqw);line-height:.98;letter-spacing:.01em;text-shadow:0 .03em .12em rgba(0,0,0,.35)}.crt-tv__title-secondary{font-size:calc(var(--card-secondary-pt, 38) * .13cqw);line-height:1.15;letter-spacing:.14em;text-shadow:0 .03em .1em rgba(0,0,0,.3)}.crt-tv__title-line{display:block}.crt-tv__scanlines{position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.1) 0px,rgba(0,0,0,.1) 1px,transparent 1px,transparent 2px);pointer-events:none}.crt-tv__static{position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");opacity:0;pointer-events:none}.crt-tv__glare{position:absolute;inset:0;background:radial-gradient(ellipse at 30% 30%,rgba(255,255,255,.08) 0%,transparent 50%);pointer-events:none}.crt-tv__tunein{position:absolute;inset:0;display:block;container-type:size;container-name:crt-screen;z-index:3}.crt-tv:has(.crt-tv__tunein:not([aria-hidden=true])) .crt-tv__channel-list{pointer-events:none}.crt-tv__tunein[aria-hidden=true]{pointer-events:none}.crt-tv__panels{position:absolute;inset:0}.crt-tv__panel{padding-inline:var(--tv-guide-pad-x, 4cqw);position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:6cqw 7cqw;opacity:0;pointer-events:none;color:var(--tunein-color, #fff);font-family:var(--font-family-mono, monospace);font-size:3.3cqw;line-height:1.45}.crt-tv__panel-heading{margin:0 0 .6em;text-align:center;font-family:var(--font-family-acme, sans-serif);font-size:7cqw;letter-spacing:.04em;text-transform:uppercase;color:var(--tunein-color, #fff)}.crt-tv__panel.is-heading-only .crt-tv__panel-body,.crt-tv__panel.is-body-only .crt-tv__panel-heading{display:none}.crt-tv__panel-heading--stacked{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:11cqw;line-height:.95;letter-spacing:.03em}.crt-tv__panel-heading--stacked>span{display:block}.crt-tv__panel-tagline{margin:0;text-align:center;font-family:var(--font-family-acme, sans-serif);font-size:8.5cqw;font-style:italic;line-height:1.05;opacity:1}.crt-tv__panel-tagline>span{display:inline-block;transform-origin:center}.crt-tv__panel-body{margin:0}.crt-tv__panel-list{margin:0;padding:0;list-style:none;display:grid;gap:.45em}.crt-tv__panel-list li{position:relative;padding-left:1.2em}.crt-tv__panel-list li:before{content:"•";position:absolute;left:0;opacity:.7}.crt-tv__panel-details{margin:0;align-self:center;max-width:100%;display:grid;grid-template-columns:max-content minmax(0,1fr);gap:.6em 1.5em;align-items:baseline}.crt-tv__panel-details dt{margin:0;font-family:var(--font-family-acme, sans-serif);font-size:4.5cqw;letter-spacing:.05em;text-transform:uppercase;color:var(--tunein-color, #fff)}.crt-tv__panel-details dd{margin:0;min-width:0;overflow-wrap:break-word;font-family:var(--font-family-mono, monospace);font-size:4.5cqw}.crt-tv__panel[data-panel-key=details]{padding:6cqw 4cqw}.crt-tv__panel-tools{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.5em}.crt-tv__panel-tools .tool-tag{background:#1a1a1a;color:#fff;padding:.3em .8em;border-radius:var(--border-radius-sm, 4px);font-family:var(--font-family-mono, monospace);font-size:.85em;font-weight:var(--font-weight-medium, 500)}.crt-tv__panel--outro{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:1em}.crt-tv__panel-cta{font-family:var(--font-family-acme, sans-serif);font-size:5.7cqw;text-transform:uppercase;letter-spacing:.05em;color:inherit;text-decoration:none;border-bottom:2px solid currentColor;padding-bottom:.15em;transition:opacity var(--duration-fast) ease}.crt-tv__panel-cta:hover,.crt-tv__panel-cta:focus-visible{opacity:.7}.crt-tv__panel-link{color:inherit;text-decoration:underline;text-underline-offset:.18em;font-size:.95em;opacity:.85;display:inline-block;max-width:100%}.crt-tv__panel-link--pending{text-decoration:none;opacity:.5;cursor:default}.crt-tv__panel-hint{margin:0;font-size:.8em;opacity:.55;letter-spacing:.02em}.crt-tv__hint-mobile{display:none}@media(max-width:767px){.crt-tv__hint-desktop{display:none}.crt-tv__hint-mobile{display:inline}.crt-tv__panel{font-size:4.6cqw}.crt-tv__panel-hint{font-size:3.4cqw;opacity:.75}.crt-tv__panel-link{font-size:3.8cqw}}.projects-section .projects-content>.section-heading,.projects-section .projects-content>.section-divider,.projects-section .projects-content>hr{display:none}.projects-tv-wrap{display:flex;justify-content:center;align-items:center;width:100%;padding:clamp(var(--space-0-5),.75vh,var(--space-1-5)) var(--space-1)}.projects-tv-wrap .crt-tv{--tv-available-height: calc(100dvh - 170px) ;--tv-edge-gutter: 2rem;width:min(1240px,calc(var(--tv-available-height) * var(--tv-aspect, 1.249)),calc(100vw - var(--tv-edge-gutter)));max-width:100%}.crt-tv__channel-list{--tv-guide-scale: 1;--tv-guide-rule: 1px solid rgba(255, 255, 255, .18);--tv-guide-rule-major: 2px solid rgba(255, 255, 255, .34);--tv-guide-pad-x: calc(8cqw * var(--tv-guide-pad-scale, 1));--tv-guide-pad-top: calc(3.5cqw * var(--tv-guide-scale, 1));position:absolute;inset:0;display:flex;flex-direction:column;padding:var(--tv-guide-pad-top) var(--tv-guide-pad-x) 0;color:#fff;font-family:var(--font-family-mono, monospace);text-shadow:0 0 4px rgba(255,255,255,.3);z-index:2;pointer-events:auto}.crt-tv__guide-channel-mobile{display:none}@media(max-width:767px){.crt-tv__guide-channel-desktop{display:none}.crt-tv__guide-channel-mobile{display:inline}.crt-tv__guide-avatar{max-width:62%;max-height:62%;margin-inline-start:auto}}.crt-tv__guide-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(var(--space-1),2cqw,var(--space-2));flex:0 0 45%;min-height:0;align-items:stretch;padding-bottom:clamp(.4rem,1.6cqw,.8rem);border-bottom:var(--tv-guide-rule-major);margin-inline:calc(var(--tv-guide-pad-x) * -1);padding-inline:var(--tv-guide-pad-x)}.crt-tv__guide-info{display:flex;flex-direction:column;justify-content:center;gap:clamp(.4rem,1.4cqw,.9rem);font-family:var(--font-family-mono, monospace);color:#fff;text-shadow:0 0 4px rgba(255,255,255,.35);letter-spacing:.04em;padding:0 clamp(var(--space-0-5),1cqw,.6rem);min-width:0}.crt-tv__guide-info-line{display:block;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:clip}@media(max-width:767px){.crt-tv__guide-top .crt-tv__guide-info-line{overflow:visible;text-overflow:clip}.crt-tv__guide-top .crt-tv__guide-avatar{opacity:.55}.crt-tv__guide-bottom{padding-top:clamp(.7rem,2.4cqw,1.2rem)}}.crt-tv__guide-info-brand{font-size:calc(2.86cqw * var(--tv-guide-scale, 1));font-weight:var(--font-weight-semibold, 600);text-transform:uppercase;letter-spacing:.08em}.crt-tv__guide-info-show{font-size:calc(3.38cqw * var(--tv-guide-scale, 1));font-style:italic}.crt-tv__guide-info-channel{font-size:calc(2.86cqw * var(--tv-guide-scale, 1));opacity:1}.crt-tv__guide-feature{display:flex;align-items:center;justify-content:center;min-width:0;min-height:0}.crt-tv__guide-avatar{width:100%;height:100%;max-width:100%;max-height:100%;fill:#fff}.crt-tv__guide-avatar-body{fill:#3a3a3a}.crt-tv__guide-avatar-eye{fill:#fff;filter:url(#tv-guide-eye-glow);opacity:1}.crt-tv__guide-bottom{flex:1 1 auto;min-height:0;overflow:hidden;position:relative;padding-top:clamp(.4rem,1.6cqw,.8rem);margin-inline:calc(var(--tv-guide-pad-x) * -1)}.crt-tv__channel-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;will-change:transform}.crt-tv__channel-row-item{list-style:none;border-top:var(--tv-guide-rule)}.crt-tv__channel-band-gap{height:var(--space-4)}.crt-tv__channel-row{display:grid;grid-template-columns:auto 1fr auto;gap:clamp(var(--space-1-5),2.4cqw,var(--space-2-5));align-items:start;width:100%;padding:var(--space-1) var(--tv-guide-pad-x);margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:inherit;font:inherit;text-align:left;cursor:pointer;font-size:calc(3cqw * var(--tv-guide-scale, 1));line-height:1.2;white-space:nowrap;border-radius:0;transition:background-color var(--duration-faster) ease,color var(--duration-faster) ease}.crt-tv__channel-text{display:flex;flex-direction:column;gap:.15em;min-width:0}.crt-tv__channel-category{font-size:.85em;letter-spacing:.05em;text-transform:uppercase}.crt-tv__channel-row:hover,.crt-tv__channel-row:focus-visible{background-color:#ffffff1a}.crt-tv__channel-row--guide{cursor:default}.crt-tv__channel-row--guide:hover{background-color:transparent}.crt-tv__channel-row:focus-visible{outline:2px solid #fff;outline-offset:-2px}.crt-tv__channel-number{font-family:var(--font-family-mono, monospace);font-variant-numeric:tabular-nums;font-weight:var(--font-weight-semibold, 600);letter-spacing:.05em;padding-right:clamp(var(--space-1),1.6cqw,.9rem);border-right:1px solid rgba(255,255,255,.18);align-self:stretch}@media(min-width:992px){.crt-tv__channel-number{padding-left:clamp(.4rem,1cqw,var(--space-1-5));padding-right:clamp(.9rem,2cqw,1.4rem)}}.crt-tv__channel-title{font-weight:var(--font-weight-semibold, 600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crt-tv__channel-meta{font-size:.85em;opacity:1;text-transform:uppercase;letter-spacing:.05em}@media(max-width:479px){.crt-tv__channel-list{--tv-guide-scale: 1.6;--tv-guide-pad-scale: .8}.crt-tv__frame{aspect-ratio:auto}.crt-tv__screen{top:7.553%;left:7.376%;width:83.555%;height:60.464%}.crt-tv__btn--power{top:78.97%;left:51.13%;width:15.97%;height:4.4%}.crt-tv__btn--channel-down{top:83.62%;left:51.13%;width:7.99%;height:4.4%}.crt-tv__btn--channel-up{top:83.62%;left:59.12%;width:7.99%;height:4.4%}.crt-tv__btn--volume-down{top:88.42%;left:51.13%;width:7.99%;height:4.4%}.crt-tv__btn--volume-up{top:88.42%;left:59.12%;width:7.99%;height:4.4%}.projects-tv-controls{display:none}.crt-tv__channel-list{--tv-guide-rule: .5px solid rgba(255, 255, 255, .18);--tv-guide-rule-major: 1px solid rgba(255, 255, 255, .34)}}}:root{--project-detail-content-max-width: 1160px;--project-detail-back-btn-size: 80px;--project-detail-image-phone-max: 300px;--project-detail-image-phone-max-xs: 250px;--project-detail-image-app-icon-max: 200px;--project-detail-image-medium-max: 640px}.project-detail-section{display:flex!important;flex-direction:column;align-items:center;justify-content:flex-start;padding:var(--space-4);box-sizing:border-box;overflow-y:auto;-webkit-overflow-scrolling:touch}.worksub-wrapper{width:100%;max-width:var(--project-detail-content-max-width);margin-inline:auto;justify-self:center;align-self:center;--worksub-wrapper-pad: var(--space-6);padding:var(--worksub-wrapper-pad);display:flex;flex-direction:column;gap:var(--portal-stack-gap);border:none;border-radius:0;box-sizing:border-box}.project-detail-section.page-active{grid-template-columns:minmax(0,var(--project-detail-content-max-width));justify-content:center}.project-detail-breadcrumbs{width:100%;max-width:var(--project-detail-content-max-width);margin-inline:auto;padding:0 0 var(--space-2);box-sizing:border-box;font-size:var(--font-size-sm);color:var(--color-text-primary)}.project-detail-breadcrumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2, var(--space-1));list-style:none;margin:0;padding:0}.project-detail-breadcrumb-link{color:inherit;text-decoration:none;font-family:var(--font-family-acme);text-transform:uppercase;letter-spacing:var(--letter-spacing-label, .04em);transition:color var(--duration-fast) ease}.project-detail-breadcrumb-link:hover,.project-detail-breadcrumb-link:focus-visible{color:var(--color-brand-red);outline:none}.project-detail-breadcrumb-separator{opacity:.5}.project-detail-breadcrumb-current{font-weight:var(--font-weight-medium);color:var(--color-dark)}@media(min-width:768px){.project-detail-section{padding:clamp(var(--space-1),2vw,var(--space-2)) clamp(var(--space-4),8vw,8%)}.worksub-wrapper{--worksub-wrapper-pad: var(--space-7);padding:var(--worksub-wrapper-pad)}}.back-button{position:fixed;left:3%;top:50%;width:var(--project-detail-back-btn-size);height:var(--project-detail-back-btn-size);border-radius:0;background-color:var(--color-dark);box-shadow:none;cursor:pointer;border:var(--border-width) solid var(--color-dark);display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-theme, .4s),box-shadow var(--transition-theme, .4s);z-index:var(--z-index-elevated)}.back-button svg{width:var(--icon-btn-size-lg);height:var(--icon-btn-size-lg);stroke:var(--color-light);transform:rotate(9deg);transition:transform var(--transition-mouse, var(--duration-fast)) cubic-bezier(.25,.1,.25,3.5),stroke var(--transition-theme, .4s)}.back-button:hover svg{transform:rotate(0)}.back-button:focus-visible{outline:2px solid var(--color-brand-red);outline-offset:2px}.back-button.leaving{pointer-events:none}@media(max-width:1399px){.back-button{display:none}}.worksub-header{width:100%;display:flex;flex-direction:column;gap:var(--portal-stack-gap);align-items:stretch}@media(min-width:768px){.worksub-header{flex-direction:row;align-items:flex-start;gap:var(--portal-stack-gap)}}.worksub-header figure{margin:0;position:relative;overflow:hidden;border-radius:0;border:var(--border-width) solid var(--color-dark);box-shadow:none;flex-shrink:0}@media(min-width:768px){.worksub-header figure{width:40%;max-width:40%}}.worksub-hero-img{width:100%;height:auto;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;display:block;border-radius:inherit}.worksub-header-info{display:flex;flex-direction:column;gap:var(--content-gutter)}@media(min-width:768px){.worksub-header-info{flex:1;align-self:flex-start}}.worksub-header-info .project-tagline{margin:0}.worksub-header-description,.worksub-description{margin:0;font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-dark)}.worksub-description{width:100%;margin-top:0}.worksub-hero-img.placeholder{background:linear-gradient(135deg,var(--color-neutral-400) 0%,var(--color-neutral-500) 100%);display:flex;align-items:center;justify-content:center}.worksub-figure--card{aspect-ratio:16 / 10}.worksub-figure--card .worksub-hero-img{position:absolute;width:139.024%;max-width:none;height:auto;left:-10.488%;top:-25.005%}.worksub-hero-card{position:absolute;top:-10.098%;left:-1.561%;width:101.512%;height:119.961%;container-type:size;pointer-events:none}.worksub-hero-card .crt-tv__title-text{opacity:1}.worksub-intro{display:flex;flex-direction:column;gap:var(--portal-stack-gap)}.worksub-intro h1,.worksub-header-info h1{font-size:var(--font-size-2xl);font-family:var(--font-family-acme);font-weight:var(--font-weight-bold);text-transform:uppercase;color:var(--color-dark);margin:0 0 var(--space-2);line-height:var(--line-height-tight)}.project-title-link{display:inline-flex;align-items:center;gap:var(--space-1);color:inherit;text-decoration:none;transition:color var(--transition-mouse, var(--duration-fast))}.project-title-link:hover,.project-title-link:focus-visible{color:var(--color-brand-red, var(--color-dark));text-decoration:none}.project-title-link:focus-visible{outline:2px solid var(--color-brand-red, var(--color-dark));outline-offset:4px;border-radius:var(--border-radius-sm)}.project-title-icon{display:inline-flex;align-items:center}.project-title-icon svg{width:.6em;height:.6em;stroke:var(--color-dark);stroke-width:2.5}.intro-content{display:flex;flex-direction:column;gap:var(--portal-stack-gap)}.intro-left{display:flex;flex-direction:column;gap:var(--portal-section-gap);width:100%;margin-top:var(--space-2);flex-shrink:0}@media(min-width:768px){.intro-left-row{display:grid;grid-template-columns:repeat(3,max-content);-moz-column-gap:var(--space-6);column-gap:var(--space-6);align-items:start;width:auto}}.intro-left-group{display:flex;flex-direction:column;gap:var(--portal-field-label-gap)}.intro-left-row{display:flex;gap:var(--portal-section-gap);width:100%}.intro-left-row>.intro-left-group{flex:1 1 0;min-width:0}.intro-left-group .text-medium{color:var(--color-dark);font-weight:var(--font-weight-medium)}[data-theme=dark] .intro-left-group .text-medium{color:var(--color-dark)}.project-pricing-note{font-size:var(--font-size-sm);color:var(--color-text-muted, rgba(0, 0, 0, .6))}.tools-section{display:flex;flex-direction:column;gap:var(--content-gutter);margin-top:0}.tools-list{display:flex;flex-wrap:wrap;gap:var(--content-gutter)}.tools-list .tool-tag{background:var(--color-dark);color:var(--color-light);padding:var(--space-1) var(--space-2-5);border-radius:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:var(--letter-spacing-label);transition:background-color var(--transition-theme, .4s),color var(--transition-theme, .4s)}.intro-content>p{color:var(--color-dark);font-size:var(--font-size-md);line-height:1.5;margin:0;flex:1}@media(max-width:767px){.intro-content>p{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}}.worksub-divider{width:100%;height:var(--border-width);border:none;background-color:var(--color-dark);margin:0;border-radius:0;transition:background-color var(--transition-theme, .4s)}.worksub-info{display:flex;flex-direction:column;gap:var(--portal-stack-gap);margin:0}.worksub-info section{display:flex;flex-direction:column;gap:var(--content-gutter)}.worksub-info figure{margin:0;display:flex;flex-direction:column;gap:var(--content-gutter)}.worksub-info figure img{width:100%;border-radius:0;box-shadow:none}.worksub-info figure video{display:block;width:100%;border-radius:0;box-shadow:none;background:var(--color-dark)}.worksub-info figure img.phone-screen{max-width:var(--project-detail-image-phone-max);margin:0 auto;border-radius:0}#project-info{display:flex;flex-direction:column;align-items:center;gap:var(--portal-stack-gap)}.worksub-header figure,#project-walkthrough .project-media,#project-deepdive-video .project-media,#project-info .project-media{border:var(--border-width, 2px) solid var(--color-dark);overflow:hidden}#project-info .project-media{margin:0}#project-info .project-media--video{width:100%}#project-info .project-media--video video{display:block;width:100%}#project-info .project-media--image{width:100%}#project-info .project-media--image:has(img.phone-screen){max-width:var(--project-detail-image-phone-max, 320px)}#project-info .project-doc-row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:center;gap:var(--portal-section-gap);width:100%;margin-top:calc(var(--portal-table-stack-gap) - var(--portal-stack-gap))}#project-info .project-doc-row .project-media--image{flex:1 1 220px;width:auto}#project-info .project-media--image img{display:block;width:100%;margin:0}.worksub-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-4) 0;border-top:var(--border-width) solid var(--color-dark)}.worksub-links a{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);background-color:var(--color-dark);color:var(--color-light);border-radius:var(--border-radius-full, 9999px);font-weight:var(--font-weight-semibold);text-decoration:none;transition:transform var(--transition-mouse, var(--duration-fast)),background-color var(--transition-theme, .4s),color var(--transition-theme, .4s)}.worksub-links a:hover{transform:translateY(-2px)}.worksub-links a svg{width:var(--icon-size-lg);height:var(--icon-size-lg);stroke:currentColor}.worksub-links .project-link--pending{display:inline-flex;align-items:center;gap:var(--icon-gap);padding:0;background-color:transparent;border:none;border-radius:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted, rgba(0, 0, 0, .4));cursor:default;position:relative}.worksub-links .project-link--pending svg{width:var(--icon-size-sm);height:var(--icon-size-sm);stroke:currentColor}.worksub-links .project-link--pending{position:relative}.worksub-links .project-link--pending:after{content:attr(data-tip);position:absolute;bottom:calc(100% + var(--space-2));left:50%;transform:translate(-50%);padding:var(--space-2) var(--space-3);background-color:var(--color-dark);color:var(--color-light);border-radius:var(--border-radius-sm, 4px);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s ease}.worksub-links .project-link--pending:hover:after,.worksub-links .project-link--pending:focus:after,.worksub-links .project-link--pending:focus-visible:after{opacity:1}.worksub-links.worksub-links--inline{justify-content:flex-start;padding:0;border-top:none;margin-top:0;gap:var(--space-3)}.worksub-links.worksub-links--inline a{padding:0;background-color:transparent;color:var(--color-dark);border-radius:0;border:none;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);gap:var(--icon-gap)}.worksub-links.worksub-links--inline a:hover{transform:none;color:var(--color-brand-red, var(--color-dark));opacity:.7}.worksub-links.worksub-links--inline a svg{width:var(--icon-size-sm);height:var(--icon-size-sm);stroke-width:var(--svg-stroke-width-bold)}[data-theme=dark] .worksub-links.worksub-links--inline a{color:var(--color-dark)}.worksub-links:empty{display:none}@media(max-width:767px){.project-detail-section{padding:var(--space-3) var(--space-4)}.worksub-wrapper{--worksub-wrapper-pad: var(--space-5);padding:var(--worksub-wrapper-pad);gap:var(--space-4)}.worksub-divider{display:none}.title-row{flex-direction:row;align-items:center;justify-content:center;text-align:center;gap:var(--space-2);margin-bottom:0;flex-wrap:wrap}.worksub-intro h1{font-size:var(--font-size-2xl);margin-bottom:0}.title-row .project-status-badge{flex-shrink:0}.worksub-intro .project-tagline{margin:0 0 var(--space-2);font-size:15px;color:var(--color-text-muted)}.intro-left-group{flex-direction:row;align-items:baseline;gap:var(--space-2)}#project-pricing-group{flex-direction:column;align-items:flex-start}.intro-left-group .text-medium{font-size:var(--font-size-sm)}.intro-content>p,.intro-content>.text-medium{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}.tools-section,.tools-list{gap:var(--space-1)}.tools-list .tool-tag{font-size:var(--font-size-xs);padding:var(--space-1-5) var(--space-2-5)}.intro-content{gap:var(--space-3)}.intro-left{flex-direction:row;flex-wrap:wrap;gap:var(--space-4)}.intro-left-row{flex-wrap:wrap;gap:var(--space-3) var(--space-4);min-width:0}.intro-left-group{min-width:0}.worksub-case-study{gap:var(--space-3);margin:0}.case-study-section{gap:var(--space-2);padding:var(--space-4)}.case-study-heading{padding-bottom:0}.case-study-text{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}.case-study-list li{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);padding-left:var(--space-4)}.worksub-info{gap:var(--space-6);margin:0}.worksub-info section{gap:var(--space-3)}.worksub-links{border-top:none;padding-top:0;margin-top:0;gap:var(--space-2);flex-wrap:nowrap}.worksub-links a{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);flex:1;justify-content:center}.worksub-links a svg{width:16px;height:16px}.project-nav{margin-top:0;padding:0 0 var(--space-4);gap:var(--space-2)}.project-nav-next{margin-left:auto;align-items:flex-end;text-align:right}}@media(max-width:400px){.project-detail-section{padding:var(--space-2) var(--space-3)}.worksub-info figure img.phone-screen{max-width:var(--project-detail-image-phone-max-xs)}}[data-theme=dark] .worksub-intro h1{color:var(--color-dark)}[data-theme=dark] .intro-content>p{color:var(--color-dark)}[data-theme=dark] .worksub-links{border-top-color:var(--color-dark)}[data-theme=dark] .worksub-divider{background-color:var(--color-dark)}.worksub-case-study{display:grid;grid-template-columns:1fr;row-gap:var(--portal-table-stack-gap);-moz-column-gap:var(--portal-section-gap);column-gap:var(--portal-section-gap);margin:0}@media(min-width:768px){.worksub-case-study{grid-template-columns:repeat(2,1fr);align-items:start}}.case-study-section{display:flex;flex-direction:column;gap:var(--content-gutter);padding:0;background-color:transparent;border:none;border-radius:0}#project-overview-section,#project-walkthrough,#project-deepdive-section{grid-column:1 / -1}#project-walkthrough .project-media,#project-deepdive-video .project-media{width:100%;margin:0}#project-walkthrough video,#project-deepdive-video video,#project-deepdive-video img{width:100%;height:auto;display:block}#project-walkthrough .project-media+.project-media{margin-top:var(--portal-section-gap)}#project-walkthrough .project-media--phone,#project-info .project-media--phone{max-width:var(--project-detail-image-phone-max);margin-inline:auto}@media(max-width:400px){#project-walkthrough .project-media--phone,#project-info .project-media--phone{max-width:var(--project-detail-image-phone-max-xs)}}#project-deepdive-section{border-top:var(--border-width) solid var(--color-dark);padding-top:var(--space-4);margin-top:var(--space-2);transition:border-color var(--transition-theme, .4s)}.case-study-heading{font-family:var(--font-family-body);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-dark);text-transform:uppercase;text-align:left;text-shadow:none;letter-spacing:var(--letter-spacing-title);line-height:var(--line-height-none);margin:0;padding:0;border:none}.case-study-text{font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-dark);margin:0;white-space:pre-line}[data-theme=dark] .case-study-text{color:var(--color-dark)}.case-study-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-1)}.case-study-list li{position:relative;padding-left:var(--space-4);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-dark)}[data-theme=dark] .case-study-list li{color:var(--color-dark)}.case-study-list li:before{content:"";position:absolute;left:0;top:.5em;width:var(--indicator-dot-sm);height:var(--indicator-dot-sm);background-color:var(--color-dark);border-radius:var(--border-radius-full, 50%);transition:background-color var(--transition-theme, .4s)}[data-theme=dark] .case-study-list li:before{background-color:var(--color-dark)}.results-list li:before{content:"";width:var(--indicator-dot-sm);height:var(--indicator-dot-sm);background-color:var(--color-dark);border-radius:var(--border-radius-full, 50%)}[data-theme=dark] .results-list li:before{background-color:var(--color-dark)}@media(max-width:767px){.case-study-list{gap:0}.case-study-text,#project-description{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}.case-study-list li{font-size:var(--font-size-sm)}}.title-row{display:flex;align-items:center;-moz-column-gap:var(--space-3);column-gap:var(--space-3);row-gap:var(--space-2);flex-wrap:wrap;margin-bottom:0}.title-row h1{margin:0}.project-tagline{font-size:var(--font-size-lg);color:var(--color-text-muted, rgba(0, 0, 0, .6));margin:var(--space-2) 0 var(--space-6) 0;font-style:italic}[data-theme=dark] .project-tagline{color:var(--color-neutral-700)}.project-status-badge{display:inline-flex;align-items:center;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-label);white-space:nowrap}.project-status-badge.status-in-progress{color:var(--status-active)}.project-status-badge.status-completed,.project-status-badge.status-live{color:var(--status-completed)}.project-status-badge.status-planned,.project-status-badge.status-coming-soon{color:var(--status-new)}.project-nav{display:flex;justify-content:space-between;align-items:stretch;gap:var(--space-4);padding-top:var(--space-4);border-top:var(--border-width) solid var(--color-dark)}[data-theme=dark] .project-nav{border-top-color:var(--color-dark)}.project-nav-link{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);padding:var(--space-4) var(--space-6);text-decoration:none;color:var(--color-dark);background-color:transparent;border:var(--border-width) solid var(--color-dark);border-radius:var(--border-radius-lg, 12px);transition:background-color var(--transition-fast, var(--duration-fast)),transform var(--transition-fast, var(--duration-fast)),border-color var(--transition-fast, var(--duration-fast));flex:1;max-width:45%}.project-nav-link:hover{background-color:#0000000d;transform:translateY(-2px)}.project-nav-link svg{width:var(--icon-size-lg);height:var(--icon-size-lg);stroke:currentColor;flex-shrink:0}.project-nav-prev{align-items:flex-start}.project-nav-prev svg{margin-bottom:var(--space-2)}.project-nav-next{align-items:flex-end;text-align:right;margin-left:auto}.project-nav-next svg{margin-bottom:var(--space-2)}.project-nav-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-widest);font-weight:var(--font-weight-semibold);color:#00000080}.project-nav-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-dark)}[data-theme=dark] .project-nav-link{background-color:transparent;border-color:var(--color-dark);color:var(--color-dark)}[data-theme=dark] .project-nav-link:hover{background-color:#ffffff0d}[data-theme=dark] .project-nav-label{color:var(--color-neutral-700)}[data-theme=dark] .project-nav-title{color:var(--color-dark)}@media(max-width:767px){.title-row{flex-direction:row;align-items:center;gap:var(--space-2);flex-wrap:wrap}.project-nav{border-top:none}.project-nav-link{padding:var(--space-1-5) var(--space-2-5);border-radius:var(--border-radius-md, 8px);gap:var(--space-1);display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto}.project-nav-link svg{width:var(--icon-size-sm);height:var(--icon-size-sm);margin-bottom:0}.project-nav-prev svg{order:0;grid-row:1;grid-column:1;align-self:center}.project-nav-prev .project-nav-label{order:1;grid-row:1;grid-column:2}.project-nav-prev .project-nav-title{order:2;grid-row:2;grid-column:1 / -1}.project-nav-next{grid-template-columns:1fr auto;text-align:right}.project-nav-next .project-nav-label{order:0;grid-row:1;grid-column:1}.project-nav-next svg{order:1;grid-row:1;grid-column:2;align-self:center}.project-nav-next .project-nav-title{order:2;grid-row:2;grid-column:1 / -1}.project-nav-title{font-size:var(--font-size-sm)}.project-nav-label{font-size:var(--font-size-xs)}}.project-detail-section{padding-top:calc(var(--map-header-inset, 0px) + var(--map-tile-pad-y, 0px));padding-bottom:calc(var(--map-header-inset, 0px) + var(--map-tile-pad-y, 0px))}.project-media--image{cursor:zoom-in}.project-media--image:fullscreen{display:flex;align-items:center;justify-content:center;border:none;background:var(--color-neutral-300, #e0e0e0);cursor:zoom-out}.project-media--image:fullscreen img{width:auto;height:auto;max-width:100vw;max-height:100vh;-o-object-fit:contain;object-fit:contain}.project-media--image.project-media--expanded{position:fixed;inset:0;z-index:var(--z-index-modal, 1000);margin:0;display:flex;align-items:center;justify-content:center;border:none;background:var(--color-neutral-300, #e0e0e0);cursor:zoom-out;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0)}.project-media--image.project-media--expanded img{width:auto;height:auto;max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}body.has-expanded-media{overflow:hidden}@layer pages{.terminal{font-family:var(--terminal-font-family);background-color:var(--color-terminal-bg);color:var(--color-terminal-green);display:flex;flex-direction:column;padding:0;margin:0;overflow:visible;--terminal-lh: 1.25;--terminal-lh-prose: 1.45;font-size:var(--terminal-font-size);font-weight:var(--font-weight-medium);line-height:var(--terminal-lh);width:100%;min-width:100%}.terminal-window{flex:var(--terminal-window-flex, 1);display:flex;flex-direction:column;width:100%;min-width:var(--terminal-window-min-width, 100%);min-height:0;max-height:var(--terminal-window-max-height, 100%);background:var(--terminal-window-bg, var(--color-terminal-bg-panel));border:var(--border-width) solid var(--color-terminal-border);border-radius:var(--border-radius-md);overflow:hidden;box-shadow:var(--shadow-terminal)}.terminal-header{background:var(--color-terminal-bg-light);border-bottom:var(--border-width) solid var(--color-terminal-border);padding:var(--space-0-5) var(--space-1-5);display:flex;align-items:center;gap:var(--space-1)}.terminal-buttons{display:flex;gap:var(--space-1)}.terminal-btn{width:12px;height:12px;border-radius:var(--border-radius-full);border:none;cursor:default}.terminal-btn.close{background:var(--color-mac-close);cursor:pointer;transition:transform .1s ease,filter .1s ease}.terminal-btn.close:hover{transform:scale(1.1);filter:brightness(1.1)}.terminal-btn.close:active{transform:scale(.95)}.terminal-btn.minimize{background:var(--color-mac-minimize)}.terminal-btn.maximize{background:var(--color-mac-maximize)}.terminal-title{color:var(--color-terminal-text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-tight);flex:1;text-align:center;font-family:inherit}.terminal-window::-webkit-scrollbar{width:8px}.terminal-window::-webkit-scrollbar-track{background:var(--color-terminal-bg-panel)}.terminal-window::-webkit-scrollbar-thumb{background:var(--color-terminal-scrollbar);border-radius:var(--border-radius-sm)}.terminal-window::-webkit-scrollbar-thumb:hover{background:var(--color-terminal-scrollbar-hover)}.terminal-input-area{border-top:var(--border-width) solid var(--color-terminal-border);padding:var(--space-1) var(--space-1-5);background:var(--color-terminal-bg-panel);display:flex;align-items:center;gap:var(--icon-gap-xl)}.terminal-prompt{color:var(--color-terminal-blue);font-weight:var(--font-weight-bold);white-space:nowrap}input.terminal-input,.terminal-input{flex:1;background:transparent;background-color:transparent;border:none;color:var(--color-terminal-text);font-family:var(--terminal-font-family);font-size:var(--terminal-font-size);font-weight:var(--font-weight-regular);outline:none;caret-color:transparent;box-shadow:none;padding:var(--space-1) 0}input.terminal-input::-moz-placeholder,.terminal-input::-moz-placeholder{color:var(--color-terminal-text-dimmer);font-weight:var(--font-weight-regular)}input.terminal-input::placeholder,.terminal-input::placeholder{color:var(--color-terminal-text-dimmer);font-weight:var(--font-weight-regular)}input.terminal-input:hover,input.terminal-input:focus,input.terminal-input:active,input.terminal-input:focus-visible,.terminal-input:hover,.terminal-input:focus,.terminal-input:active,.terminal-input:focus-visible{background:transparent;background-color:transparent;border:none;outline:none;outline-offset:0;box-shadow:none;caret-color:transparent}input.terminal-input:-webkit-autofill,.terminal-input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--color-terminal-bg) inset;-webkit-text-fill-color:var(--color-terminal-text);background-color:transparent}.terminal-input:disabled{opacity:.5;cursor:not-allowed}.terminal-input-wrapper{position:relative;flex:1;display:flex;align-items:center}.terminal-input-cursor{position:absolute;left:0;top:50%;transform:translateY(-50%);width:.6em;height:1.2em;background-color:var(--color-terminal-green);pointer-events:none}.terminal-input-measurer{position:absolute;visibility:hidden;white-space:pre;font-family:var(--terminal-font-family);font-size:var(--terminal-font-size);pointer-events:none}.terminal-send{background:var(--color-terminal-green-dark);color:var(--color-terminal-bg);border:none;padding:var(--space-0-5) var(--space-2);line-height:var(--line-height-tight);font-family:inherit;font-weight:var(--font-weight-bold);cursor:pointer;transition:all var(--transition-mouse);border-radius:var(--border-radius-sm)}.terminal-send:hover:not(:disabled){background:var(--color-terminal-green)}.terminal-send:disabled{background:var(--color-terminal-bg-dark);color:var(--color-terminal-text-dim);cursor:not-allowed}.terminal-cursor{color:var(--color-terminal-green);font-weight:var(--font-weight-bold)}.typing-cursor{display:inline;margin-left:var(--space-0-5);color:var(--color-terminal-green)}.typing-indicator{display:flex;align-items:center;gap:0;padding:var(--space-2) 0;color:var(--color-terminal-green-dark)}.typing-indicator:before{content:"❯ ";color:var(--color-terminal-green);font-weight:var(--font-weight-bold)}.typing-indicator:after{content:"█";color:var(--color-terminal-green);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.typing-indicator span{display:none}.terminal .terminal-progress,.terminal-intake .terminal-progress,.terminal-progress{padding:var(--space-1) var(--space-2);background:var(--color-terminal-bg-panel);border-bottom:var(--border-width) solid var(--color-terminal-border);display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:var(--space-1-5)}.terminal-progress .progress-label{color:var(--color-terminal-text-muted);font-size:var(--font-size-sm);white-space:nowrap;flex-shrink:0}.terminal-progress .progress-bar{flex:1 1 auto;width:auto;min-width:0;height:6px;background:var(--color-terminal-border);border-radius:var(--border-radius-xs);overflow:hidden;display:block;border:none;box-shadow:none}.terminal-progress .progress-fill{height:100%;background:linear-gradient(90deg,var(--color-terminal-green-dark),var(--color-terminal-green));border-radius:var(--border-radius-xs);transition:width var(--transition-normal) ease}.terminal-progress .progress-percent{color:var(--color-terminal-green);font-size:var(--font-size-sm);min-width:40px;text-align:right}html[data-theme=dark] .terminal,html[data-theme=light] .terminal,html[data-theme=dark] .terminal-intake,html[data-theme=light] .terminal-intake{background-color:var(--color-terminal-bg)}.terminal-intake{font-family:var(--terminal-font-family);background-color:var(--color-terminal-bg);color:var(--color-terminal-green);display:flex;flex-direction:column;padding:0;margin:0;overflow:hidden;--terminal-lh: 1.25;--terminal-lh-prose: 1.45;font-size:var(--terminal-font-size);font-weight:var(--font-weight-medium);line-height:var(--terminal-lh);width:100%;height:100%}body[data-page=client-intake] .terminal-intake{min-height:calc(100vh - var(--header-height, 60px) - var(--footer-height, 60px))}body[data-page=client-intake] .terminal-window{max-width:900px;margin:0 auto}.portal #tab-new-project.is-active{display:flex;flex-direction:column;height:calc(100vh - 6rem)}.portal .terminal-intake-container{flex:1;display:flex;flex-direction:column;align-items:center;min-height:0;width:100%}.terminal-login-info{padding:0 0 var(--space-1) 0;color:var(--color-terminal-text-muted);font-size:var(--terminal-font-size);line-height:var(--terminal-lh-prose);background:transparent}.terminal-prompt-line{color:var(--color-terminal-text-muted)}.terminal-typing-text{color:var(--color-terminal-text)}.terminal-chat{flex:1;overflow-y:auto;padding:var(--space-1-5);display:flex;flex-direction:column;justify-content:flex-start;gap:0;min-height:0}.terminal-chat:focus-visible{outline:2px solid var(--color-brand-red);outline-offset:-2px}.terminal-chat>*{width:100%}.terminal-chat::-webkit-scrollbar{width:8px}.terminal-chat::-webkit-scrollbar-track{background:var(--color-terminal-bg-panel)}.terminal-chat::-webkit-scrollbar-thumb{background:var(--color-terminal-scrollbar);border-radius:var(--border-radius-sm)}.terminal-chat::-webkit-scrollbar-thumb:hover{background:var(--color-terminal-scrollbar-hover)}.chat-message{margin-top:var(--space-1-5);margin-bottom:var(--space-1)}.chat-message.clickable-message{cursor:pointer;transition:background-color var(--transition-mouse) ease;padding:var(--space-0-5) var(--space-1);margin-left:calc(-1 * var(--space-1));border-radius:var(--border-radius-xs)}.chat-message.clickable-message:hover{background-color:var(--color-terminal-bg-hover)}.chat-message.clickable-message:hover:after{content:" [click to edit]";color:var(--color-terminal-text-dim);font-size:var(--font-size-sm);font-style:italic}.terminal .message-content,.terminal-intake .message-content,.terminal-chat .message-content,.terminal-window .message-content,.chat-message .message-content,.portal .terminal .message-content,.portal .terminal-intake .message-content,.portal .terminal-chat .message-content,.portal .chat-message .message-content{background:transparent;background-color:transparent;border:none;box-shadow:none;outline:none;padding:0;max-width:none;color:inherit;display:inline}.chat-message.ai .message-content{color:var(--color-terminal-green);font-size:var(--font-size-base);line-height:var(--terminal-lh-prose)}.chat-message.ai .message-content:before{content:"❯ ";color:var(--color-terminal-green);font-weight:var(--font-weight-bold)}.chat-message.user{margin-bottom:var(--space-3)}.terminal .chat-message.user .message-content,.terminal-intake .chat-message.user .message-content{color:var(--color-terminal-blue)}.chat-message.user .message-content:before{content:"$ ";color:var(--color-terminal-green);font-weight:var(--font-weight-bold)}.chat-message.system .message-content{color:var(--color-terminal-green);font-size:var(--font-size-base);font-style:normal;white-space:pre-wrap;word-break:break-word;line-height:var(--terminal-lh-prose);padding:var(--space-2) 0}.chat-message.system .summary-value{color:var(--color-terminal-blue);display:inline;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit}.chat-message.error .message-content{color:var(--color-terminal-red)}.chat-message.error .message-content:before{content:"[ERROR] ";color:var(--color-terminal-pink)}.chat-message.success .message-content{color:var(--color-terminal-cyan);white-space:pre-line}.chat-message.success .message-content:before{content:"✓ ";color:var(--color-terminal-green)}.boot-line{color:var(--color-terminal-text-muted);font-size:var(--terminal-font-size);line-height:var(--terminal-lh-prose)}.boot-line+.boot-line:not(:empty){padding-left:var(--space-1-5)}.boot-line+.boot-line:not(:empty):before{content:"├─ ";color:var(--color-terminal-text-dim)}.boot-line+.boot-line:not(:empty):has(+.boot-line:empty):before,.boot-line+.boot-line:not(:empty):last-child:before{content:"└─ "}.boot-line:empty{height:1em}.chat-options{display:flex;flex-direction:column;gap:0;margin-top:var(--space-1);margin-bottom:var(--space-1);padding-left:var(--space-3)}.chat-option{background:transparent;border:none;color:var(--color-terminal-blue);padding:0;font-family:inherit;font-size:var(--terminal-font-size);cursor:pointer;transition:color var(--transition-mouse);text-align:left}.chat-option:hover{color:var(--color-terminal-text)}.chat-option.selected{color:var(--color-terminal-green)}.chat-option.selected:before{content:"> ";color:var(--color-terminal-green)}.chat-options.multi-select .chat-option:before{content:"[ ] ";color:var(--color-terminal-green-dark)}.chat-options.multi-select .chat-option.selected:before{content:"[x] ";color:var(--color-terminal-green)}.terminal .confirm-btn{background:var(--color-terminal-green-dark);border:none;color:var(--color-terminal-bg);padding:var(--space-2) var(--space-4);font-family:inherit;font-size:var(--terminal-font-size);font-weight:var(--font-weight-bold);cursor:pointer;text-align:left;border-radius:var(--border-radius-sm, 4px)}.terminal .confirm-btn:hover{background:var(--color-terminal-green);color:var(--color-terminal-bg)}.terminal-avatar-intro{width:100%;display:flex;justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;margin:0}.terminal-avatar-copy{margin:0;max-width:44ch;color:var(--color-terminal-green);font-size:var(--terminal-font-size);line-height:var(--terminal-lh-prose)}@media(max-width:767px){.terminal-avatar-intro{flex-direction:column;gap:var(--space-1-5)}.terminal-avatar-copy{text-align:center}}.terminal-avatar-wrapper{position:relative;display:inline-block}.terminal-avatar-img{width:150px;height:auto;display:block}svg.terminal-avatar-img image{filter:brightness(0) invert(1) brightness(.9)}svg.terminal-avatar-img #Head{filter:brightness(0) invert(1) brightness(.9)}svg.terminal-avatar-img #Ear{filter:brightness(0) invert(1) brightness(.9)}svg.terminal-avatar-img #Nose{filter:brightness(0) invert(1) brightness(.9)}svg.terminal-avatar-img #Eye,svg.terminal-avatar-img #Eye image{filter:brightness(0)}.terminal-avatar-wrapper:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.08;pointer-events:none;mix-blend-mode:overlay}@media(max-width:767px){.terminal-window{border-left:none;border-right:none}.terminal svg.terminal-avatar-img image,.terminal svg.terminal-avatar-img #Head,.terminal svg.terminal-avatar-img #Head image,.terminal svg.terminal-avatar-img #Ear,.terminal svg.terminal-avatar-img #Ear image,.terminal svg.terminal-avatar-img #Nose,.terminal svg.terminal-avatar-img #Nose image{filter:brightness(0) invert(1) brightness(.9);-webkit-filter:brightness(0) invert(1) brightness(.9)}.terminal svg.terminal-avatar-img #Eye,.terminal svg.terminal-avatar-img #Eye image{filter:brightness(0);-webkit-filter:brightness(0)}body[data-page=client-intake] #main-content{padding:0;margin:0}.terminal-intake-container,.terminal-intake{padding:0;margin:0;width:100%}.terminal-window{max-width:100%;width:100%;margin:0}.terminal-chat{padding:var(--space-1);max-height:calc(100vh - 280px)}.chat-message .message-content{max-width:95%}.chat-options{flex-direction:column}.chat-option{width:100%;text-align:left}}@media(max-width:479px){.terminal-intake-container{padding:var(--space-3)}.terminal-header{padding:var(--space-1-5) var(--space-3)}.terminal-title{font-size:var(--font-size-xs)}.terminal-input-area{padding:var(--space-3)}.terminal-prompt{display:none}}}@layer pages{.not-found-section{display:flex;align-items:center;justify-content:center;width:100%;min-height:calc(100vh - var(--header-height, 50px) - 40px);min-height:calc(100dvh - var(--header-height, 50px) - 40px);padding:clamp(var(--space-3),5vw,var(--space-6));position:relative;overflow:hidden;isolation:isolate}.not-found-section:before{content:"";position:absolute;z-index:var(--z-index-behind);left:50%;bottom:0;translate:-50% 0;width:min(120vmin,60rem);aspect-ratio:450 / 444;background:url(/images/tunnel_404.svg) no-repeat center bottom / contain;opacity:.12;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 62%,transparent 96%);mask-image:linear-gradient(to bottom,#000 0%,#000 62%,transparent 96%);pointer-events:none}:root[data-theme=dark] .not-found-section:before{opacity:.32}@media(prefers-reduced-motion:no-preference){.not-found-section:before{animation:not-found-tunnel-in 1.2s ease-out both}}@keyframes not-found-tunnel-in{0%{opacity:0;scale:1.04}}.not-found-content{width:min(100%,40rem);display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(var(--space-2-5),3vw,var(--space-4))}.not-found-sign{width:min(100%,22rem);height:auto;transform-origin:70% 100%;animation:not-found-sway 5.5s ease-in-out infinite}@keyframes not-found-sway{0%,to{transform:rotate(-1.6deg) translateY(0)}50%{transform:rotate(1.8deg) translateY(-.35rem)}}@media(prefers-reduced-motion:reduce){.not-found-sign{animation:none}}.not-found-copy{display:flex;flex-direction:column;gap:var(--space-3, var(--space-1-5));max-width:28rem}.not-found-eyebrow{font-family:var(--font-family-acme, "Acme", sans-serif);font-size:var(--font-size-sm, .85rem);letter-spacing:.18em;text-transform:uppercase;color:var(--color-brand-red, #b91c1c);margin:0}.not-found-title{font-family:var(--font-family-acme, "Acme", sans-serif);font-size:clamp(2rem,6vw,3.25rem);line-height:1.05;letter-spacing:.02em;text-transform:uppercase;color:var(--color-dark);margin:0}.not-found-body{font-size:clamp(.95rem,2.2vw,1.1rem);line-height:1.55;color:var(--color-dark);opacity:.72;margin:0}.not-found-actions{display:flex;flex-wrap:wrap;gap:var(--space-3, var(--space-1-5));justify-content:center}.not-found-btn{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.65rem 1.35rem;border:1.5px solid var(--color-dark);text-decoration:none;font-family:var(--font-family-acme, "Acme", sans-serif);font-size:1rem;letter-spacing:.04em;text-transform:uppercase;transition:transform .18s ease,background-color var(--transition-theme, .35s),color var(--transition-theme, .35s),border-color var(--transition-theme, .35s)}.not-found-btn--primary{background:var(--color-dark);color:var(--color-light)}.not-found-btn--ghost{background:transparent;color:var(--color-dark)}.not-found-btn:hover{transform:translateY(-2px)}.not-found-btn--ghost:hover{border-color:var(--color-brand-red, #b91c1c);color:var(--color-brand-red, #b91c1c)}@media(max-width:767px){.not-found-section{padding:var(--space-2-5) var(--space-2) var(--space-4)}.not-found-sign{width:min(100%,16rem)}.not-found-section:before{width:190vmin}}}@layer pages{.design-system-section{padding:0;--ds-measure: 100%;background:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-family-mono);line-height:var(--line-height-normal)}.design-system-content{max-width:1180px;margin:0 auto;width:100%;min-width:0;padding:calc(var(--header-height) + var(--map-tile-pad-y, var(--space-6))) var(--space-3) calc(var(--header-height) + var(--space-6))}.design-system-section code{font-family:var(--font-family-mono);font-size:1em}.design-system-section .mast{border-bottom:var(--border-width) solid var(--color-dark)}.design-system-section .mast-in{display:flex;flex-direction:column;gap:var(--space-3-5);padding:var(--space-3) 0 var(--space-5)}.design-system-section .lede{font-size:var(--font-size-base);color:var(--color-text-secondary);max-width:var(--ds-measure);margin:0}.design-system-section .lede b{color:var(--color-text-primary)}.design-system-section .stats{display:flex;flex-wrap:wrap;gap:var(--space-3)}.design-system-section .stat{flex:1 1 150px;padding:var(--space-2) var(--space-2-5);border:var(--border-width) solid var(--color-dark)}.design-system-section .stat b{display:block;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);line-height:1;font-variant-numeric:tabular-nums;color:var(--color-brand-red)}.design-system-section .stat span{font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;color:var(--color-text-tertiary)}.design-system-section .arch{padding:var(--space-6) 0}.design-system-section .arch p{color:var(--color-text-secondary);max-width:var(--ds-measure)}.design-system-section .layers{display:flex;flex-direction:column;gap:var(--space-0-5);margin:var(--space-3) 0 0;counter-reset:l}.design-system-section .layer{display:flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1) var(--space-2);background:var(--color-bg-secondary);border:var(--border-width) solid var(--color-dark);font-size:var(--font-size-base)}.design-system-section .layer:before{counter-increment:l;content:counter(l);font-variant-numeric:tabular-nums;color:var(--color-text-tertiary);font-size:var(--font-size-xs);min-width:1em}.design-system-section .layer.tk{border-color:var(--color-brand-red);box-shadow:inset 3px 0 0 var(--color-brand-red)}.design-system-section .layer em{margin-left:auto;font-style:normal;color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.design-system-section .pull{margin:var(--space-3) 0 0;padding:var(--space-2) var(--space-3);border-left:var(--border-width) solid var(--color-brand-red);background:var(--color-bg-secondary);font-size:var(--font-size-base);color:var(--color-text-secondary)}.design-system-section .pull b{color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.design-system-section .rules{padding:0 0 var(--space-6)}.design-system-section .rules p{color:var(--color-text-secondary);max-width:var(--ds-measure)}.design-system-section .rules p+p{margin-top:var(--space-2)}.design-system-section .rules h4{margin:var(--space-4) 0 var(--space-1);font-size:var(--font-size-base);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;color:var(--color-text-primary)}.design-system-section .ramp{display:flex;flex-direction:column;gap:var(--space-0-5);max-width:min(var(--ds-measure),100%);margin:var(--space-2) 0 var(--space-3)}.design-system-section .ramp-step{display:flex;align-items:center;gap:var(--space-1-5);padding:var(--space-0-5) var(--space-1);font-size:var(--font-size-sm)}.design-system-section .ramp-bar{flex:none;height:10px;background:var(--color-text-tertiary)}.design-system-section .ramp-step code{min-width:9ch;color:var(--color-text-secondary)}.design-system-section .ramp-step b{min-width:5ch;font-variant-numeric:tabular-nums;font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.design-system-section .ramp-step.is-default{background:var(--color-bg-secondary);box-shadow:inset 3px 0 0 var(--color-brand-red)}.design-system-section .ramp-step.is-default .ramp-bar{background:var(--color-brand-red)}@media(max-width:480px){.design-system-section .ramp-step code{min-width:8ch}}.design-system-section .docs-jump{position:sticky;top:0;z-index:var(--z-index-10);padding-top:var(--header-height);background:var(--color-bg-primary);border-bottom:var(--border-width) solid var(--color-dark)}.design-system-section .docs-jump-in{display:flex;gap:2px;overflow-x:auto;padding:var(--space-1) 0}.design-system-section .lede a{color:inherit;text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:from-font}.design-system-section .lede a:hover,.design-system-section .lede a:focus-visible{text-decoration-thickness:var(--border-width)}.design-system-section .docs-jump a{flex:0 0 auto;display:flex;align-items:baseline;gap:var(--space-0-5);padding:var(--space-0-5) var(--space-1-5);text-decoration:none;font-family:var(--portal-subtab-family);font-size:var(--portal-subtab-size);font-weight:var(--portal-subtab-weight);text-transform:var(--portal-subtab-transform);letter-spacing:var(--portal-subtab-spacing);color:var(--color-text-secondary);white-space:nowrap}.design-system-section .docs-jump a:hover,.design-system-section .docs-jump a:focus-visible{background:var(--color-bg-secondary);color:var(--color-text-primary)}.design-system-section .docs-jump a span{font-size:var(--font-size-xs);color:var(--color-text-tertiary);font-variant-numeric:tabular-nums}.design-system-section .file{padding:var(--space-6) 0;border-bottom:var(--border-width) solid var(--color-dark);scroll-margin-top:calc(var(--header-height) + var(--space-6))}.design-system-section .file-head h3{margin:0 0 var(--space-0-5);text-transform:capitalize}.design-system-section .blurb{margin:0;color:var(--color-text-secondary);max-width:var(--ds-measure)}.design-system-section .count{margin:var(--space-1) 0 0;font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.design-system-section .count span{color:var(--color-brand-red);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums}.design-system-section .group{margin-top:var(--space-4)}.design-system-section .group h4{margin:0 0 var(--space-1)}.design-system-section .tw{overflow-x:auto;border:var(--border-width) solid var(--color-dark);background:var(--color-bg-secondary)}.design-system-section table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.design-system-section tr{border-bottom:var(--border-width) solid var(--color-dark)}.design-system-section tr:last-child{border-bottom:0}.design-system-section td{padding:var(--space-1) var(--space-1-5);vertical-align:middle}.design-system-section .c-prev{width:56px}.design-system-section .c-name{white-space:nowrap}.design-system-section .c-name code{color:var(--color-text-primary)}.design-system-section .c-val code{color:var(--color-text-secondary)}.design-system-section .c-note{color:var(--color-text-tertiary);font-size:var(--font-size-xs);max-width:30ch}.design-system-section .alias{display:block;color:var(--color-text-tertiary);font-size:var(--font-size-xs)}.design-system-section .sw{display:block;width:32px;height:20px;border:var(--border-width) solid var(--color-dark)}.design-system-section .sw-shadow{background:var(--color-bg-secondary)}.design-system-section .sw-type{font-size:var(--font-size-lg);color:var(--color-text-primary)}.design-system-section .sw-bar.is-capped{mask-image:linear-gradient(to right,#000 calc(100% - 12px),transparent 100%);-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 12px),transparent 100%)}.design-system-section .sw-bar{display:block;height:8px;max-width:100%;background:var(--color-brand-red);min-width:2px}.design-system-section .sw-img{display:block;width:32px;height:20px;border:var(--border-width) solid var(--color-dark);background-color:var(--color-bg-secondary);background-repeat:no-repeat;background-position:center;background-size:contain}.design-system-section .sw-dur{font-size:var(--font-size-xs);color:var(--color-text-tertiary);font-variant-numeric:tabular-nums}.design-system-section .docs-note{padding:var(--space-5) 0 var(--space-3);color:var(--color-text-tertiary);font-size:var(--font-size-base)}.design-system-section .docs-note b{color:var(--color-text-primary);font-weight:var(--font-weight-medium)}}@layer pages{.ground-truth-section{padding:0;background:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-family-mono);line-height:var(--line-height-relaxed)}.ground-truth-content{max-width:68ch;margin:0 auto;width:100%;min-width:0;padding:calc(var(--header-height) + var(--map-tile-pad-y, var(--space-6))) var(--space-3) calc(var(--header-height) + var(--space-6))}.ground-truth-section .intro-left{margin-bottom:var(--space-4)}.ground-truth-section p{margin:0 0 var(--space-2-5)}.gt-lede{font-size:var(--font-size-lg);color:var(--color-text-primary)}.gt-standfirst{color:var(--color-text-secondary)}.gt-heading{margin:var(--space-5) 0 var(--space-2);font-size:var(--font-size-base);text-transform:uppercase;letter-spacing:var(--letter-spacing-label);color:var(--color-text-primary)}.gt-list,.gt-tools{margin:0 0 var(--space-2-5);padding-left:var(--space-3)}.gt-list li{margin-bottom:var(--space-1)}.gt-tools{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-2);padding-left:0;list-style:none;color:var(--color-text-secondary)}.gt-tools li:after{content:"·";margin-left:var(--space-2);color:var(--color-text-secondary)}.gt-tools li:last-child:after{content:none}}@layer states{section.page-hidden:not([data-map-tile]){display:none;opacity:0;visibility:hidden;pointer-events:none;z-index:var(--z-index-behind)}section.page-entering{visibility:hidden;opacity:0}section.page-active:not(.contact-section):not(.about-section):not(.business-card-section){display:block;pointer-events:auto;z-index:var(--z-index-nav)}section.contact-section.page-active{display:grid;pointer-events:auto;z-index:var(--z-index-nav)}section.about-section.page-active{display:grid;pointer-events:auto;z-index:var(--z-index-nav)}section.projects-section.page-active{display:flex;pointer-events:auto;z-index:var(--z-index-nav)}section.project-detail-section.page-active{display:flex;pointer-events:auto;z-index:var(--z-index-nav)}section.admin-login-section.page-active{display:grid;place-items:center;pointer-events:auto;z-index:var(--z-index-nav)}main[data-virtual-pages]>section.contact-section.page-active,main[data-virtual-pages]>section.about-section.page-active{display:grid;pointer-events:auto;z-index:var(--z-index-nav)}@media(max-width:767px){section#about.about-section.page-active,section.about-section#about.page-active{overflow-y:scroll;overflow-x:hidden;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior-y:contain}}section#intro,section.business-card-section{z-index:var(--z-index-10)}section#intro.page-active,section.business-card-section.page-active{z-index:var(--z-index-50)}section#intro.page-hidden,section.business-card-section.page-hidden{display:none;visibility:hidden;opacity:0;pointer-events:none;z-index:var(--z-index-behind)}section#intro.page-hidden .business-card-container,section#intro.page-hidden .business-card,section#intro.page-hidden .intro-nav,section.business-card-section.page-hidden .business-card-container,section.business-card-section.page-hidden .business-card,section.business-card-section.page-hidden .intro-nav{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}@media(min-width:768px){main[data-virtual-pages]{position:fixed;top:var(--header-height);bottom:var(--footer-height);left:0;right:0;width:100%;height:calc(100vh - var(--header-height) - var(--footer-height));height:calc(100dvh - var(--header-height) - var(--footer-height));overflow:hidden;background-color:var(--color-neutral-300)}main[data-virtual-pages]>.projects-section[data-page].page-active{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;overflow:hidden;box-sizing:border-box;padding:clamp(var(--space-2),4vw,var(--space-4))}main[data-virtual-pages]>.projects-section[data-page].page-active>.projects-content{margin-block:auto;width:100%}main[data-virtual-pages]>.project-detail-section[data-page].page-active{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;padding:clamp(var(--space-2),4vw,var(--space-4));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;box-sizing:border-box}main[data-virtual-pages]>.design-system-section[data-page].page-active{position:absolute;top:0;left:0;width:100%;height:100%;display:block;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;box-sizing:border-box}main[data-virtual-pages]>section[data-page]:not(.contact-section):not(.about-section):not(.business-card-section):not(.projects-section):not(.project-detail-section):not(.design-system-section){position:absolute;top:0;left:0;width:100%;height:100%;display:grid;place-items:center;overflow:hidden;box-sizing:border-box}main[data-virtual-pages]>.business-card-section[data-page]{position:absolute;top:0;left:0;width:100%;height:100%;padding:0;margin:0;overflow:visible;box-sizing:border-box;display:block}main[data-virtual-pages]>.business-card-section[data-page]>.business-card-container{position:absolute;top:calc(50% - 147.1px);left:calc(50% - 262.5px);transform:none;margin:0;display:block}main[data-virtual-pages]>.business-card-section .intro-nav{position:absolute;top:calc(50% + 147.095px + 1rem);left:50%;transform:translate(-50%);z-index:var(--z-index-dropdown);pointer-events:auto}main[data-virtual-pages]>.business-card-section .intro-nav-link{pointer-events:auto;cursor:pointer}main[data-virtual-pages]>.about-section[data-page].page-active{position:absolute;top:0;left:0;width:100%;height:100%;min-height:100%;display:grid;place-items:center;overflow:hidden;box-sizing:border-box;padding:clamp(var(--space-2),4vw,var(--space-4));pointer-events:auto}main[data-virtual-pages]>.about-section .about-content{max-width:min(1000px,90vw);overflow:hidden;align-self:center;justify-self:center}main[data-virtual-pages]>.contact-section[data-page].page-active{position:absolute;top:0;left:0;width:100%;height:100%;min-height:100%;display:grid;place-content:center center;overflow:visible;box-sizing:border-box;padding:clamp(var(--space-2),4vw,var(--space-4));pointer-events:auto}main[data-virtual-pages]>.admin-login-section[data-page].page-active{position:absolute;top:0;left:0;width:100%;height:100%;min-height:100%;display:grid;place-content:center center;overflow:visible;box-sizing:border-box;padding:clamp(var(--space-2),4vw,var(--space-4));pointer-events:auto}section[data-page]>*{will-change:transform,opacity,filter}}.page-entering{opacity:0;filter:blur(var(--page-blur-amount))}section.project-detail-section.page-active{z-index:var(--z-index-dropdown)}section[data-page].page-hidden{display:none!important;visibility:hidden!important;opacity:0!important;z-index:var(--z-index-behind)!important;pointer-events:none!important}html[data-initial-page=intro]:not(.js-ready) section#intro.page-hidden,html[data-initial-page=about]:not(.js-ready) section#about.page-hidden,html[data-initial-page=projects]:not(.js-ready) section#projects.page-hidden,html[data-initial-page=contact]:not(.js-ready) section#contact.page-hidden{display:grid!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}@media(prefers-reduced-motion:reduce){:root{--page-blur-amount: 0}.page-entering{transition:none!important;animation:none!important}}}@layer states{.site-map{position:relative;width:100%;height:100%;flex:1 1 0;min-height:0;will-change:transform}.site-map>[data-map-tile]{position:absolute;top:0;left:0;width:100%;height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-top:calc(var(--map-header-inset, 0px) + var(--map-tile-pad-y, 0px))}.site-map>[data-map-tile=center]{top:0;left:0;--map-header-inset: 0px;--map-tile-pad-y: 0px}.site-map>[data-map-tile=up]{top:-100%;left:0}.site-map>[data-map-tile=down]{top:100%;left:0}.site-map>[data-map-tile=right]{top:0;left:100%}.site-map>[data-map-tile=detail]{top:100%;left:100%}.site-map[data-map-camera=center]{transform:translate(0)}.site-map[data-map-camera=up]{transform:translateY(100%)}.site-map[data-map-camera=down]{transform:translateY(-100%)}.site-map[data-map-camera=detail]{transform:translate(-100%,-100%)}.site-map[data-map-camera=left]{transform:translate(100%)}.site-map[data-map-camera=right]{transform:translate(-100%)}html[data-initial-page=hero]:not(.js-ready) .site-map{transform:translate(100%)}html[data-initial-page=about]:not(.js-ready) .site-map{transform:translateY(100%)}html[data-initial-page=projects]:not(.js-ready) .site-map{transform:translate(-100%)}html[data-initial-page=contact]:not(.js-ready) .site-map{transform:translateY(-100%)}main#main-content{overflow-x:hidden;overflow-y:hidden;top:0;--map-header-inset: var(--header-height);--map-tile-pad-y: var(--space-6);bottom:0;height:auto;z-index:var(--z-index-content);background:var(--color-neutral-300)}main#main-content[data-active-page=portal-login],main#main-content[data-active-page=not-found],main#main-content[data-active-page=design-system],html[data-initial-page=portal-login]:not(.js-ready) main#main-content,html[data-initial-page=not-found]:not(.js-ready) main#main-content{overflow-y:auto}body[data-page=not-found] main#main-content{display:block}@media(prefers-reduced-motion:reduce){.site-map{will-change:auto}}.map-compass{position:fixed;inset:0;pointer-events:none;z-index:var(--z-index-elevated);display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:1fr auto 1fr;grid-template-areas:". up    ." "left .  right" ". down  .";padding:clamp(var(--space-1),2vw,var(--space-3))}.map-compass__cue{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:var(--space-2);margin:0;cursor:pointer;font-family:var(--font-family-mono, monospace);font-size:clamp(1rem,1.5vw,1.25rem);line-height:1;color:var(--color-dark);opacity:0;pointer-events:none;transition:opacity var(--duration-medium) ease,transform var(--duration-medium) ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.map-compass__cue:focus-visible{outline:2px solid var(--color-brand-red, var(--color-dark));outline-offset:4px;border-radius:4px}.map-compass__cue--up{grid-area:up;align-self:start;justify-self:center}.map-compass__cue--down{grid-area:down;align-self:end;justify-self:center}.map-compass__cue--left{grid-area:left;align-self:center;justify-self:start}.map-compass__cue--right{grid-area:right;align-self:center;justify-self:end}@media(min-width:992px){.map-compass{inset:0;z-index:var(--z-index-overlay)}}.map-compass__cue[data-can=true]{opacity:.4;pointer-events:auto}.map-compass__cue[data-can=true]:hover{opacity:.9}.map-compass.is-idle .map-compass__cue[data-can=true]{opacity:0}.map-compass:focus-within .map-compass__cue[data-can=true]{opacity:.4}.map-compass:focus-within .map-compass__cue[data-can=true]:focus-visible{opacity:.9}.map-compass.is-idle .map-compass__cue[data-can=true]:hover{opacity:.9}.map-compass.is-hinting .map-compass__cue[data-can=true]{animation:map-compass-pulse 1.6s ease-in-out 3}@keyframes map-compass-pulse{0%,to{opacity:.4;transform:translate(0)}50%{opacity:.85}}.map-compass.is-hinting .map-compass__cue--up{animation-name:map-compass-pulse-up}.map-compass.is-hinting .map-compass__cue--down{animation-name:map-compass-pulse-down}.map-compass.is-hinting .map-compass__cue--left{animation-name:map-compass-pulse-left}.map-compass.is-hinting .map-compass__cue--right{animation-name:map-compass-pulse-right}@keyframes map-compass-pulse-up{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:.85;transform:translateY(-4px)}}@keyframes map-compass-pulse-down{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:.85;transform:translateY(4px)}}@keyframes map-compass-pulse-left{0%,to{opacity:.4;transform:translate(0)}50%{opacity:.85;transform:translate(-4px)}}@keyframes map-compass-pulse-right{0%,to{opacity:.4;transform:translate(0)}50%{opacity:.85;transform:translate(4px)}}@media(prefers-reduced-motion:reduce){.map-compass.is-hinting .map-compass__cue[data-can=true]{animation:none;opacity:.6}}.map-compass__cue--in-content{position:absolute;left:50%;transform:translate(-50%);z-index:var(--z-index-elevated)}.map-compass__cue--in-content.map-compass__cue--up{top:var(--space-4);bottom:auto}.map-compass__cue--in-content.map-compass__cue--down{bottom:var(--space-6);top:auto}.map-compass__cue--in-content[data-can=true]{pointer-events:auto}}@layer responsive;@layer responsive{@media(max-width:767px){body{margin:0;padding:0;height:100vh;height:100dvh;overflow:hidden}html[data-theme=dark] body{--color-neutral-300: var(--color-gray-700);background-color:var(--color-neutral-300)}main{position:fixed;inset:0;width:100%;height:auto;overflow:hidden;-webkit-overflow-scrolling:touch}main[data-virtual-pages]>section{position:absolute;top:0;left:0;width:100%;height:100%;padding:var(--map-tile-pad-y, var(--space-2)) var(--container-padding);box-sizing:border-box;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.site-map>[data-map-tile]{padding-top:calc(var(--map-header-inset, 0px) + var(--map-tile-pad-y, var(--space-2)))}.section-content{max-width:95vw;padding:var(--space-1);font-size:clamp(.8rem,2.5vw,1rem)}.about-content{max-width:95vw;gap:.8rem}.business-card-section{flex:0 0 auto;display:grid;place-content:center;place-items:center;padding:0;margin:0;overflow:visible}.business-card-section.page-active{z-index:var(--z-index-50)}.business-card-section .intro-nav{position:absolute;top:calc(50% + 106.5px + .75rem);left:50%;transform:translate(-50%)}.project-detail-section{overflow-y:scroll;overflow-x:hidden;-webkit-overflow-scrolling:touch;touch-action:pan-y;height:100%;box-sizing:border-box;padding:var(--space-3) var(--container-padding) var(--space-6)}.about-section,section.about-section,section.about-section.page-active,.about-section.page-active,#about.about-section,section#about{padding:calc(var(--map-header-inset, 0px) + var(--map-tile-pad-y, var(--space-2))) 0 0;margin:0;display:block;overflow-y:scroll;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;touch-action:pan-y;box-sizing:border-box}.about-section .about-content{display:flex;flex-direction:column;padding:0 var(--container-padding);gap:var(--map-tile-pad-y, var(--space-3));max-width:100%;width:100%;min-height:100%;height:auto;box-sizing:border-box;align-items:center;justify-content:safe center;pointer-events:auto}.about-section .about-content *,.about-section .about-layout{touch-action:pan-y;pointer-events:auto}.about-layout{display:flex;flex-direction:column;align-items:center;gap:var(--map-tile-pad-y, var(--space-3));width:100%}.about-image-column{display:flex;justify-content:center;width:100%;margin-top:0}.about-photo-picture{display:block}.about-photo{display:block;width:clamp(180px,50vw,240px);height:auto;border:var(--border-width-heavy) solid var(--color-dark);margin:0 auto}.about-text-column{display:flex;flex-direction:column;width:100%;text-align:left}.about-text-column .section-heading{letter-spacing:.2em;margin-top:0;margin-bottom:var(--space-0-5)}.about-section .section-divider{width:100%}.about-text-column p{max-width:100%;margin-bottom:var(--space-2)}.about-text-column p:last-child{margin-bottom:0}:root{--section-heading-size: clamp(2.5rem, 10vw, 4rem)}.section-heading{line-height:1.1;margin-top:var(--space-3);margin-bottom:var(--space-0-5);text-align:left}.section-divider{margin-top:0;margin-bottom:var(--space-2)}.tech-stack-section{display:none}.contact-section{min-height:calc(100vh - var(--header-height) - var(--footer-height));min-height:calc(100dvh - var(--header-height) - var(--footer-height));height:auto;max-height:none;flex:0 0 auto;padding:var(--space-3) var(--container-padding);display:flex;flex-direction:column;justify-content:flex-start;align-items:center;overflow:visible;box-sizing:border-box}.container{max-width:95vw}}@media(max-width:767px){.projects-section{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0}.projects-section .crt-tv__btn{padding:1% 0;box-sizing:content-box}.projects-section .projects-content{align-self:stretch;width:100%;max-width:100%}.projects-section .card-category{display:inline}}@media(max-width:479px){html{overflow-x:hidden;overscroll-behavior:none}body{height:100dvh;overflow:hidden;overscroll-behavior:none;padding-top:0}main{position:fixed;--map-header-inset: var(--header-height);--map-tile-pad-y: 2rem;inset:0;width:100%;height:auto;overflow:hidden}.site-map>[data-map-tile]{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:env(safe-area-inset-bottom,0px)}.business-card-section{background:transparent!important}.nav-portal,.nav-base{will-change:auto!important}.nav-base,.nav-portal{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.about-section,section.about-section,.contact-section,section.contact-section{overflow-y:auto!important;overflow-x:hidden!important;height:100%!important;max-height:none!important;-webkit-overflow-scrolling:touch}.contact-section,section.contact-section{padding-bottom:calc(var(--footer-height) + env(safe-area-inset-bottom,0px) + var(--space-2))!important}.projects-section,section.projects-section{position:relative!important;height:100%!important;display:block!important;padding:0!important}.projects-section .projects-tv-wrap{position:absolute;top:calc(50% + (var(--header-height, 0px) / 2));left:50%;transform:translate(-50%,-50%);width:100%;max-width:100%;padding:0;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.projects-section .projects-tv-controls{position:relative;margin-bottom:env(safe-area-inset-bottom,0px)}.section-content{max-width:98vw;padding:var(--space-0-5)}.container{max-width:98vw}.business-card-section .intro-nav{top:calc(50% + 88.5px + .5rem)}}@media(max-width:400px){main>section{padding:var(--map-tile-pad-y, var(--space-1)) var(--container-padding)}.site-map>[data-map-tile]{padding-top:calc(var(--map-header-inset, 0px) + var(--map-tile-pad-y, var(--space-1)))}.project-detail-section{padding-left:var(--container-padding);padding-right:var(--container-padding)}.header .container{max-width:100%;padding-left:var(--container-padding);padding-right:var(--container-padding)}:root{--section-heading-size: var(--font-size-2xl)}.section-heading{margin-top:var(--space-2)}}@media(max-width:479px){.projects-section .crt-tv__btn{padding:0;box-sizing:border-box}}.about-section,.contact-section,.projects-section,.project-detail-section,.portal-login-section,.not-found-section{padding-bottom:calc(var(--map-tile-pad-y, var(--space-2)) + var(--consent-banner-height, 0px))}.map-compass__cue--down{margin-bottom:var(--consent-banner-height, 0px)}.contact-section .contact-content{padding-bottom:var(--consent-banner-height, 0px)}.footer-curtain{bottom:var(--consent-banner-height, 0px)}@media(max-width:767px){.projects-section .projects-content{padding-bottom:var(--consent-banner-height, 0px)}}@media(max-width:767px){body:has(main[data-active-page=intro]) .map-compass{grid-template-rows:70% auto 1fr}}}@layer responsive{@media(max-width:767px){br.mobile-only{display:block}.contact-section{height:auto;min-height:calc(100dvh - var(--header-height) - var(--footer-height));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;justify-content:flex-start;padding-top:var(--space-4)}.contact-content{margin-block:auto}}@media(max-width:479px){.contact-content{flex:0 0 auto;min-height:0}.contact-layout,.contact-form-column{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.contact-form{flex:1 1 auto;min-height:0}.contact-form .input-wrapper:last-of-type{flex:1 1 auto;min-height:0}.contact-form .input-wrapper:last-of-type .input-item,.contact-form .input-wrapper:last-of-type .input-item textarea{flex:1 1 auto;height:100%;min-height:0}.contact-form .input-item input,.contact-form .input-item textarea{--placeholder-opacity: 1}}@media(max-width:400px){.contact-section{padding-top:var(--space-1);padding-bottom:var(--space-1)}.input-item input,.input-item textarea{padding:clamp(.375rem,1.5vw,var(--space-1)) clamp(.625rem,2vw,var(--space-1-5))}.submit-button{padding:clamp(var(--space-1),2vw,.625rem) clamp(var(--space-2),3vw,var(--space-2-5))}}}@layer responsive{@media(hover:hover){.portal :is(.btn,.btn-primary,.btn-secondary,.btn-outline,button[type=submit]):hover{background:var(--portal-btn-hover-bg, var(--color-dark));color:var(--portal-btn-hover-color, var(--color-light));box-shadow:none}.portal .sidebar-buttons .nav-btn:hover,.portal .sidebar-buttons .nav-btn:hover .nav-icon{color:var(--color-brand-red)}.portal-modal-close:hover{color:var(--color-text-primary)}.portal .data-table tbody tr:hover td{background:var(--color-bg-hover, var(--color-state-hover))}.portal-card:hover{border-color:var(--color-border-primary, var(--color-border-primary))}.folder-item:hover{background:var(--color-bg-hover, var(--color-state-hover))}.detail-value a:hover{text-decoration:underline}.toast-close:hover{opacity:1}.btn-export:hover{background:var(--color-bg-hover, var(--color-state-hover));border-color:var(--color-border-primary, var(--color-border-primary))}}@media(hover:none){.portal :is(.btn,.btn-primary,.btn-secondary,.btn-outline,button[type=submit]):active{background:var(--portal-btn-hover-bg, var(--color-dark));color:var(--portal-btn-hover-color, var(--color-light));transform:scale(.98)}.portal .data-table tbody tr:hover td{background:transparent}.portal .data-table tbody tr:active td{background:var(--color-bg-hover, var(--color-state-hover))}}@media(pointer:coarse){.portal-modal-close,.toast-close{min-width:44px;min-height:44px;padding:var(--space-2)}.portal .sidebar.collapsed .sidebar-buttons .nav-btn,.portal .sidebar.collapsed .sidebar-footer .nav-btn{width:44px;height:44px;min-width:44px;min-height:44px}.portal-subtab{min-height:44px;padding-top:var(--space-2);padding-bottom:var(--space-2)}input[type=checkbox],input[type=radio]{min-width:24px;min-height:24px}.portal-checkbox{min-height:44px;display:flex;align-items:center;padding:var(--space-1) 0}}.portal-modal{max-width:min(var(--modal-width-md, 560px),calc(100vw - 2 * var(--space-4, 16px)))}.portal-modal.portal-modal--wide{max-width:min(var(--modal-width-lg, 860px),calc(100vw - 2 * var(--space-4, 16px)))}.invoice-modal-content,.invoice-edit-modal{max-width:min(var(--modal-width-lg, 800px),calc(100vw - 2 * var(--space-4, 16px)))}@media(max-width:479px){.portal-modal,.invoice-modal-content,.invoice-edit-modal{max-width:100%;width:100%;margin:0}.portal-modal-overlay{padding:0;align-items:flex-start}.portal-modal{min-height:100vh;min-height:100dvh;max-height:100vh;max-height:100dvh}}@media(max-width:767px){.data-table-container,.data-table-scroll-wrapper{width:100%;overflow:visible}.data-table-container>.data-table,.data-table-scroll-wrapper>.data-table{min-width:0;width:100%}.invoice-line-items-section{-webkit-overflow-scrolling:touch}.invoice-line-items{min-width:500px}.files-table-wrapper{-webkit-overflow-scrolling:touch}}@media(max-width:479px){.data-table-container>.data-table{min-width:0;width:100%}.invoice-line-items{min-width:0;width:100%}}.portal-modal-overlay{min-height:100vh;min-height:100dvh}@media(max-width:479px){.portal-modal{max-height:100vh;max-height:100dvh;min-height:100vh;min-height:100dvh}}.auth-gate{min-height:calc(100vh - var(--header-height, 60px) - var(--footer-height, 40px));min-height:calc(100dvh - var(--header-height, 60px) - var(--footer-height, 40px))}@media(max-width:767px){.portal main{min-height:100vh;min-height:100dvh}}@media(pointer:coarse){.btn,.sidebar-buttons .nav-btn{-webkit-user-select:none;-moz-user-select:none;user-select:none}}@media(pointer:coarse){.btn,.folder-item{-webkit-tap-highlight-color:rgba(var(--color-brand-red-rgb, 220, 38, 38),.1)}}@supports (padding: max(0px)){.portal-modal{padding-left:max(var(--space-5),env(safe-area-inset-left));padding-right:max(var(--space-5),env(safe-area-inset-right))}@media(max-width:479px){.portal-modal-overlay{padding-bottom:env(safe-area-inset-bottom)}}}}html,body{background-color:var(--color-neutral-300);color:var(--color-dark)}html.intro-loading body{overflow:hidden;touch-action:none;overscroll-behavior:none}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.06;background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,color-mix(in srgb,var(--color-dark) 12%,transparent) 2px,color-mix(in srgb,var(--color-dark) 12%,transparent) 3px),repeating-linear-gradient(90deg,transparent,transparent 4px,color-mix(in srgb,var(--color-dark) 8%,transparent) 4px,color-mix(in srgb,var(--color-dark) 8%,transparent) 5px),repeating-linear-gradient(45deg,transparent,transparent 6px,color-mix(in srgb,var(--color-dark) 4%,transparent) 6px,color-mix(in srgb,var(--color-dark) 4%,transparent) 7px)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(var(--text-rgb),.7);border-radius:var(--border-radius-sm, 4px)}::-webkit-scrollbar-thumb:hover{background:rgba(var(--text-rgb),.9)}
