:root{--sidebar-width: 40px;--sidebar-width-desktop: 64px;--sidebar-gap: 0;--sidebar-line-thickness: var(--border-width-thin);--sidebar-line-style: var(--border-style-solid);--sidebar-line-color: var(--ava-border-base);--sidebar-bg: #000000;--sidebar-text-color: #FFFFFF;--sidebar-hover-bg: rgba(255, 255, 255, .05);--sidebar-hover-blur: 50px;--sidebar-noise-opacity: .15;--sidebar-logo-size: 1.75rem;--sidebar-logo-weight: 500;--sidebar-nav-size: 1.125rem;--sidebar-nav-weight: 300;--sidebar-cell-height: 9rem;--sidebar-cell-min-height: 75px;--sidebar-nav-min-height: 60px;--sidebar-transition-duration: .2s}.sidebar{position:sticky;top:0;left:0;width:var(--sidebar-width);max-width:var(--sidebar-width);min-width:var(--sidebar-width);height:100vh;height:100dvh;background:var(--sidebar-bg);z-index:10;border-right:var(--sidebar-line-thickness) var(--sidebar-line-style) var(--sidebar-line-color);box-sizing:border-box;overflow:hidden;flex-shrink:0}.sidebar__grid{display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr auto auto;height:100%;width:100%;gap:var(--sidebar-gap);box-sizing:border-box}.sidebar__cell{position:relative;display:flex;align-items:center;justify-content:center;border-bottom:var(--sidebar-line-thickness) var(--sidebar-line-style) var(--sidebar-line-color);padding:0;margin:0;height:auto}.sidebar__cell:last-child{border-bottom:var(--sidebar-line-thickness) var(--sidebar-line-style) var(--sidebar-line-color)}.sidebar__logo-cell{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);font-size:var(--sidebar-logo-size);font-weight:var(--sidebar-logo-weight);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--sidebar-text-color);text-decoration:none;white-space:nowrap;height:var(--sidebar-cell-height);min-height:var(--sidebar-cell-min-height);display:flex;align-items:center;justify-content:center;text-align:center;position:relative;z-index:2;grid-row:1;width:100%}.sidebar__spacer-cell{height:auto;min-height:0;padding:0;margin:0;border-top:var(--sidebar-line-thickness) var(--sidebar-line-style) var(--sidebar-line-color);border-bottom:none;grid-row:2}.sidebar__nav-cell{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);text-decoration:none;color:var(--sidebar-text-color);font-size:var(--sidebar-nav-size);font-weight:var(--sidebar-nav-weight);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1;white-space:nowrap;height:var(--sidebar-cell-height);min-height:var(--sidebar-nav-min-height);display:flex;align-items:center;justify-content:center;text-align:center;padding:0;margin:0;position:relative;z-index:2;width:100%}.sidebar__nav-cell:nth-of-type(3){grid-row:4}.sidebar__nav-cell:nth-of-type(4){grid-row:3}.sidebar__logo-cell.sidebar__cell--active,.sidebar__logo-cell:hover,.sidebar__logo-cell:focus-visible,.sidebar__nav-cell.sidebar__cell--active,.sidebar__nav-cell:hover,.sidebar__nav-cell:focus-visible{background-color:var(--sidebar-hover-bg);-webkit-backdrop-filter:blur(var(--sidebar-hover-blur));backdrop-filter:blur(var(--sidebar-hover-blur));outline:none}.sidebar__logo-cell:focus-visible,.sidebar__nav-cell:focus-visible{outline:2px solid rgba(255,255,255,.5);outline-offset:-2px}:is(.sidebar__logo-cell:hover,.sidebar__logo-cell:focus-visible,.sidebar__logo-cell.sidebar__cell--active,.sidebar__nav-cell:hover,.sidebar__nav-cell:focus-visible,.sidebar__nav-cell.sidebar__cell--active):before{content:"";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='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");opacity:var(--sidebar-noise-opacity);pointer-events:none;z-index:0}.main-content{flex:1;display:flex;flex-direction:column;position:relative;z-index:1;margin-inline-end:0;padding-inline:0;max-width:100%;overflow-x:hidden}.full-width-behind-sidebar{position:relative;width:100vw;margin-left:calc(-1 * var(--sidebar-width))}.full-width-behind-sidebar--padded{padding-inline-start:calc(4rem + var(--sidebar-width))}@media(min-width:1024px){:root{--sidebar-width: var(--sidebar-width-desktop)}}.newsletter-signup{width:100%}.newsletter-signup__container{display:flex;flex-direction:column;gap:0}.newsletter-signup__input-wrapper{position:relative;display:flex;align-items:stretch;gap:0;background:transparent;border:1px solid rgba(255,255,255,.28);padding:0;transition:border-color .2s ease}.newsletter-signup__input-wrapper:focus-within{border-color:#ffffff80}.newsletter-signup__icon{display:none}.newsletter-signup__input{flex:1;background:transparent!important;border:none;color:#fff;font-size:.875rem;font-weight:300;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;padding:1rem;outline:none;min-width:0;-webkit-box-shadow:0 0 0 1000px transparent inset!important;-webkit-text-fill-color:#ffffff!important}.newsletter-signup__input::placeholder{color:#fff6}.newsletter-signup__input:disabled{opacity:.6;cursor:not-allowed}.newsletter-signup__input:-webkit-autofill,.newsletter-signup__input:-webkit-autofill:hover,.newsletter-signup__input:-webkit-autofill:focus,.newsletter-signup__input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px transparent inset!important;-webkit-text-fill-color:#ffffff!important;background:transparent!important;transition:background-color 5000s ease-in-out 0s}.newsletter-signup__button{background:transparent;color:#fff;border:none;border-left:1px solid rgba(255,255,255,.28);padding:1rem 1.5rem;font-weight:300;font-size:.875rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;cursor:pointer;transition:all .2s ease;white-space:nowrap;display:flex;align-items:center;justify-content:center;min-width:100px}.newsletter-signup__button:hover:not(:disabled){background:#ffffff0d}.newsletter-signup__button:active:not(:disabled){background:#ffffff1a}.newsletter-signup__button:disabled{opacity:.5;cursor:not-allowed}.newsletter-signup__loader{width:1rem;height:1rem;animation:spin 1s linear infinite}.newsletter-signup__check{width:1rem;height:1rem;color:#10b981}.newsletter-signup__consent{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer;padding:.75rem 0}.newsletter-signup__checkbox{width:1rem;height:1rem;margin-top:.125rem;cursor:pointer;flex-shrink:0;accent-color:#ffffff}.newsletter-signup__consent-text{font-size:.75rem;color:#fff9;font-weight:300;line-height:1.4}.newsletter-signup__message{font-size:.75rem;padding:.5rem 0;text-align:left;font-weight:300}.newsletter-signup__message--success{color:#ffffffb3}.newsletter-signup__message--error{color:#ffffff80}@media(max-width:640px){.newsletter-signup__input-wrapper{flex-direction:column}.newsletter-signup__input{width:100%;padding:.875rem}.newsletter-signup__button{width:100%;padding:.875rem;border-left:none;border-top:1px solid rgba(255,255,255,.28)}}.footer{width:100%;padding-block:3rem;padding-inline:2rem;font-size:.875rem;background-color:#131210;color:#999;border-top:var(--sidebar-line-thickness) solid var(--sidebar-line-color)}.footer__content{display:grid;grid-template-columns:1fr auto 1fr;gap:2rem;align-items:start;width:100%}.footer__newsletter{display:flex;flex-direction:column;gap:1.25rem}.footer__newsletter-copy{display:flex;flex-direction:column;gap:.5rem;max-width:420px}.footer__newsletter-eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;color:#ffffffa6;margin:0}.footer__newsletter-title{font-size:1.25rem;font-weight:400;color:#fff;margin:0}.footer__newsletter-subtitle,.footer__newsletter-promise{font-size:.9rem;line-height:1.5;color:#ffffffb3;margin:0}.footer__newsletter-promise{color:#ffffff8c}.footer__newsletter-form{width:100%;max-width:400px}.footer__links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--spacing-6);row-gap:var(--spacing-3);align-items:start;justify-items:start;width:100%;max-width:var(--container-xs)}.footer__links-group{display:flex;flex-direction:column;gap:var(--spacing-2)}.footer__links-heading{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:#fff9;font-weight:600;margin:0}.footer__link-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-2)}.footer__link{color:#999;text-decoration:none;transition:color .2s}.footer__link:hover{color:#fff}.footer__company{display:flex;align-items:flex-end;justify-content:flex-end}.footer__company-details{display:flex;flex-direction:column;gap:.25rem;text-align:right}.footer__company-name{color:#fff9;font-size:.75rem;margin:0}.footer__company-legal{color:#fff6;font-size:.625rem;margin:0}@media(max-width:1024px){.footer{padding-block:2rem;padding-inline:2rem;display:flex;justify-content:center}.footer__content{grid-template-columns:1fr;gap:2rem;text-align:center;align-items:center;justify-items:center;max-width:600px;width:100%}.footer__newsletter{width:100%;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.footer__newsletter-copy{align-items:center;text-align:center}.footer__newsletter-form{width:100%;max-width:400px}.footer__links{grid-template-columns:1fr;row-gap:var(--spacing-4);column-gap:0;justify-items:center;align-items:center;width:100%;max-width:100%}.footer__links-group,.footer__link-list{align-items:center}.footer__company{align-items:center;justify-content:center;width:100%}.footer__company-details{text-align:center}}@media(max-width:640px){.footer{padding-block:1.5rem;padding-inline:1rem}.footer__links{row-gap:var(--spacing-3)}}.hero{display:flex;align-items:center;justify-content:center;padding-block:4rem;padding-inline:4rem;min-height:100vh}.hero__grid{container-type:inline-size;container-name:hero-grid;width:100%;height:100%;max-width:80rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4rem;align-items:center}@container hero-grid (max-width: 768px){.hero__grid{grid-template-columns:1fr;gap:2rem}}.hero__image-container{display:flex;align-items:center;justify-content:center;height:100%}.hero__image{width:100%;height:100%;object-fit:contain}.hero__content{display:flex;flex-direction:column;gap:2rem}.hero__subtitle{font-size:1.25rem;color:#4b5563}.hero__contact-links{padding-block-start:4rem;display:flex;align-items:center;justify-content:space-between;font-size:.875rem;color:#6b7280}.hero__contact-link{color:#6b7280;text-decoration:none;transition:color .2s}.hero__contact-link:hover{color:#1f2937}.content-section{max-width:64rem;margin:0 auto}:where(.content-section__subtitle){font-size:1.5rem;color:#4b5563;line-height:1.5}:where(.content-section__text){font-size:1.125rem;color:#374151;line-height:1.75}.about-grid{container-type:inline-size;container-name:about-grid;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem;padding-top:2rem;border-top:1px solid #e5e7eb}@container about-grid (max-width: 768px){.about-grid{grid-template-columns:1fr;gap:2rem}}.about-grid__section{display:flex;flex-direction:column;gap:1rem}:where(.about-grid__heading){font-size:1.25rem;font-weight:500;color:#1f2937}:where(.about-grid__label){color:#374151}:where(.about-grid__detail){color:#4b5563;font-size:.875rem}.about-grid__link{display:inline;color:#fff;text-decoration:underline;text-underline-offset:2px;transition:color .2s}.about-grid__link:hover{color:#ffffffb3}.legal-page{max-width:64rem;margin:0 auto}.legal-page__date{color:#4b5563}.legal-page__text{color:#374151;line-height:1.75}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.space-y-8>*+*{margin-top:2rem}.space-y-16>*+*{margin-top:4rem}.skip-link{position:absolute;top:-100px;left:0;z-index:10000;padding:1rem 1.5rem;background:var(--color-accent-01);color:#fff;text-decoration:none;font-weight:var(--font-weight-medium);border-radius:0 0 .5rem;transition:top .2s ease}.skip-link:focus{top:0;outline:3px solid #ffffff;outline-offset:2px}.cookie-consent-banner{position:fixed;bottom:0;left:0;right:0;z-index:50;background-color:#131210;border-top:1px solid rgba(255,255,255,.1);box-shadow:0 -4px 12px #0000004d}.cookie-consent-banner__container{max-width:80rem;margin-inline:auto;padding-block:1rem;padding-inline:1.5rem}.cookie-consent-banner__content{display:flex;flex-direction:column;gap:1rem;align-items:flex-start}@media(min-width:640px){.cookie-consent-banner__content{flex-direction:row;align-items:center;gap:1.5rem}}.cookie-consent-banner__info{display:flex;align-items:flex-start;gap:.75rem;flex:1;min-width:0}@media(min-width:640px){.cookie-consent-banner__info{align-items:center}}.cookie-consent-banner__icon{flex-shrink:0;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center}.cookie-consent-banner__icon-svg{width:1.25rem;height:1.25rem;color:#999}.cookie-consent-banner__text{flex:1;min-width:0}.cookie-consent-banner__title{font-size:.875rem;font-weight:600;color:#fff;margin:0;margin-block-end:.25rem}@media(min-width:640px){.cookie-consent-banner__title{font-size:1rem}}.cookie-consent-banner__description{font-size:.75rem;color:#999;line-height:1.5;margin:0}@media(min-width:640px){.cookie-consent-banner__description{font-size:.875rem}}.cookie-consent-banner__actions{display:flex;flex-direction:column;gap:.5rem;width:100%}@media(min-width:475px){.cookie-consent-banner__actions{flex-direction:row;width:auto;margin-inline-start:auto}}.cookie-consent-banner__button{padding-block:.5rem;padding-inline:.75rem;font-size:.75rem;font-weight:500;border-radius:.5rem;border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem}@media(min-width:640px){.cookie-consent-banner__button{font-size:.875rem;padding-block:.5rem;padding-inline:.75rem}}.cookie-consent-banner__button--primary{background-color:#fff;color:#131210;order:1}.cookie-consent-banner__button--primary:hover{background-color:#ffffffe6}.cookie-consent-banner__button--secondary{background-color:transparent;color:#999;order:2}.cookie-consent-banner__button--secondary:hover{color:#fff;border-color:#fff3}.cookie-consent-banner__button--customize{order:3}@media(min-width:475px){.cookie-consent-banner__button--customize{order:1}.cookie-consent-banner__button--primary{order:3}}.cookie-consent-banner__button-icon{width:.875rem;height:.875rem}@media(min-width:640px){.cookie-consent-banner__button-icon{width:1rem;height:1rem}}.cookie-consent-banner__button-text--mobile{display:inline}.cookie-consent-banner__button-text--desktop{display:none}@media(min-width:475px){.cookie-consent-banner__button-text--mobile{display:none}.cookie-consent-banner__button-text--desktop{display:inline}}.cookie-settings-overlay{position:fixed;inset:0;z-index:50;background-color:#000000b3;display:flex;align-items:flex-end;justify-content:center;padding:0}@media(min-width:640px){.cookie-settings-overlay{align-items:center;padding:1rem}}.cookie-settings-modal{background-color:#131210;border-top-left-radius:1rem;border-top-right-radius:1rem;width:100%;max-height:var(--modal-max-height-mobile);overflow-y:auto;border:1px solid rgba(255,255,255,.1)}@media(min-width:640px){.cookie-settings-modal{max-width:28rem;border-radius:1rem;max-height:var(--modal-max-height)}}.cookie-settings-modal__content{padding:1rem}@media(min-width:640px){.cookie-settings-modal__content{padding:1.5rem}}.cookie-settings-modal__header{display:flex;align-items:center;justify-content:space-between;margin-block-end:1rem}@media(min-width:640px){.cookie-settings-modal__header{margin-block-end:1.5rem}}.cookie-settings-modal__header-left{display:flex;align-items:center;gap:.75rem}.cookie-settings-modal__icon{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}@media(min-width:640px){.cookie-settings-modal__icon{width:2.5rem;height:2.5rem}}.cookie-settings-modal__icon-svg{width:1rem;height:1rem;color:#999}@media(min-width:640px){.cookie-settings-modal__icon-svg{width:1.25rem;height:1.25rem}}.cookie-settings-modal__title{font-size:1.125rem;font-weight:600;color:#fff;margin:0}@media(min-width:640px){.cookie-settings-modal__title{font-size:1.25rem}}.cookie-settings-modal__close{color:#fff9;background:transparent;border:none;padding:.25rem;cursor:pointer;transition:color .2s}.cookie-settings-modal__close:hover{color:#fff}.cookie-settings-modal__close-icon{width:1.25rem;height:1.25rem}.cookie-settings-modal__options{display:flex;flex-direction:column;gap:.75rem}@media(min-width:640px){.cookie-settings-modal__options{gap:1rem}}.cookie-settings-option{display:flex;align-items:flex-start;justify-content:space-between;padding:.75rem;border:1px solid rgba(255,255,255,.1);border-radius:.5rem}@media(min-width:640px){.cookie-settings-option{padding:1rem}}.cookie-settings-option--disabled{background-color:#ffffff0d;opacity:.7}.cookie-settings-option__content{flex:1;padding-inline-end:.75rem}.cookie-settings-option__title{font-size:.875rem;font-weight:500;color:#fff;margin:0;margin-block-end:.25rem}@media(min-width:640px){.cookie-settings-option__title{font-size:1rem}}.cookie-settings-option__description{font-size:.75rem;color:#999;line-height:1.5;margin:0}@media(min-width:640px){.cookie-settings-option__description{font-size:.875rem}}.cookie-settings-option__control{margin-inline-start:.5rem;flex-shrink:0}@media(min-width:640px){.cookie-settings-option__control{margin-inline-start:1rem}}.cookie-settings-option__checkbox-label{cursor:pointer}.cookie-settings-option__checkbox{width:1rem;height:1rem;cursor:pointer;accent-color:#ffffff}.cookie-settings-modal__footer{display:flex;flex-direction:column;gap:.75rem;margin-block-start:1rem}@media(min-width:640px){.cookie-settings-modal__footer{flex-direction:row;margin-block-start:1.5rem}}.cookie-settings-modal__button{flex:1;padding-block:.5rem;padding-inline:1rem;font-size:.875rem;font-weight:500;border-radius:.5rem;border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:all .2s}@media(min-width:640px){.cookie-settings-modal__button{padding-block:.75rem}}.cookie-settings-modal__button--cancel{background-color:transparent;color:#999}.cookie-settings-modal__button--cancel:hover{color:#fff;border-color:#fff3}.cookie-settings-modal__button--save{background-color:#fff;color:#131210}.cookie-settings-modal__button--save:hover{background-color:#ffffffe6}.loading-screen{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--colour-industrial-bg-dark);display:flex;align-items:center;justify-content:center;z-index:99999;animation:fadeOut .3s ease-out 1.3s forwards}@keyframes fadeOut{to{opacity:0;visibility:hidden;pointer-events:none;background:transparent}}.loading-screen__container{display:flex;flex-direction:column;align-items:center;gap:2rem}.loading-screen__progress{position:relative;width:120px;height:120px}.loading-screen__svg{position:absolute;width:100%;height:100%}.loading-screen__circle-bg{stroke:var(--colour-industrial-border);opacity:.3}.loading-screen__circle-progress{stroke:var(--colour-industrial-accent);stroke-linecap:round;transition:stroke-dashoffset .1s linear}.loading-screen__percentage{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--font-family-primary);font-size:2rem;font-weight:var(--font-weight-semibold);color:var(--colour-industrial-text-light);line-height:1}.loading-screen__label{font-family:var(--font-family-primary);font-size:.875rem;font-weight:var(--font-weight-normal);color:var(--colour-industrial-text-medium);text-transform:uppercase;letter-spacing:.1em;opacity:.7}@media(max-width:768px){.loading-screen__progress{width:100px;height:100px}.loading-screen__percentage{font-size:1.75rem}}@layer tokens{:root{--colour-primary: #4a4a4a;--colour-primary-light: #6a6a6a;--colour-primary-dark: #2a2a2a;--colour-accent: #5a5a5a;--colour-accent-light: #7a7a7a;--colour-accent-dark: #3a3a3a;--colour-neutral-50: #fafafa;--colour-neutral-100: #f5f5f5;--colour-neutral-200: #e5e5e5;--colour-neutral-300: #d4d4d4;--colour-neutral-400: #a3a3a3;--colour-neutral-500: #737373;--colour-neutral-600: #525252;--colour-neutral-700: #404040;--colour-neutral-800: #262626;--colour-neutral-900: #171717;--colour-success: #10B981;--colour-warning: #F59E0B;--colour-error: #EF4444;--colour-info: #3B82F6;--colour-tech-accessible: #10B981;--colour-tech-moderate: #F59E0B;--colour-tech-advanced: #F97316;--colour-tech-expert: #EF4444;--colour-tech-cutting-edge: #8B5CF6;--colour-bg-primary: hsl(0, 0%, 100%);--colour-bg-secondary: hsl(0, 0%, 98%);--colour-bg-tertiary: hsl(0, 0%, 96%);--colour-surface: hsl(0, 0%, 100%);--colour-surface-raised: hsl(0, 0%, 100%);--colour-text-primary: #4a4a4a;--colour-text-secondary: #6a6a6a;--colour-text-tertiary: #8a8a8a;--colour-text-inverse: #ffffff;--colour-text-disabled: #a0a0a0;--colour-border-primary: hsl(0, 0%, 89.8%);--colour-border-secondary: hsl(0, 0%, 95%);--colour-border-focus: hsl(0, 0%, 3.9%);--colour-industrial-bg-dark: #0a0a0a;--colour-industrial-bg-medium: #1a1a1a;--colour-industrial-text-light: #e8e8e8;--colour-industrial-text-medium: #c0c0c0;--colour-industrial-accent: #8B7355;--colour-industrial-accent-subtle: #6a5a48;--colour-industrial-border: rgba(255, 255, 255, .08);--colour-industrial-border-focus: rgba(139, 115, 85, .4);--font-family-primary: "Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-display: "Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-mono: "Monaco", "Courier New", monospace;--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: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--font-weight-thin: 100;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--line-height-loose: 2;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--spacing-0: 0;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--spacing-20: 5rem;--spacing-24: 6rem;--spacing-32: 8rem;--container-xs: 480px;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--container-2xl: 1536px;--size-button-sm: 2rem;--size-button-md: 2.5rem;--size-button-lg: 3rem;--size-icon-sm: 1rem;--size-icon-md: 1.5rem;--size-icon-lg: 2rem;--border-width-hairline: .5px;--border-width-thin: 1px;--border-width-base: 1px;--border-width-medium: 2px;--border-width-thick: 3px;--border-width-heavy: 4px;--border-style-solid: solid;--border-style-dashed: dashed;--border-style-dotted: dotted;--border-light-10: rgba(255, 255, 255, .1);--border-light-15: rgba(255, 255, 255, .15);--border-light-20: rgba(255, 255, 255, .2);--border-light-30: rgba(255, 255, 255, .3);--border-light-40: rgba(255, 255, 255, .4);--border-dark-10: rgba(0, 0, 0, .1);--border-dark-20: rgba(0, 0, 0, .2);--border-dark-30: rgba(0, 0, 0, .3);--border-subtle: var(--border-width-thin) var(--border-style-solid) var(--border-light-10);--border-base: var(--border-width-thin) var(--border-style-solid) var(--border-light-20);--border-strong: var(--border-width-thin) var(--border-style-solid) var(--border-light-30);--border-emphasis: var(--border-width-medium) var(--border-style-solid) var(--border-light-30);--radius-none: 0;--radius-sm: .125rem;--radius-base: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-3xl: 1.5rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-base: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-2xl: 0 50px 100px -20px rgba(0, 0, 0, .25);--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, .06);--shadow-industrial-subtle: 0 2px 8px 0 rgba(0, 0, 0, .3);--shadow-industrial-medium: 0 4px 20px 0 rgba(0, 0, 0, .4);--shadow-industrial-deep: 0 8px 40px 0 rgba(0, 0, 0, .6);--z-index-base: 0;--z-index-dropdown: 1000;--z-index-sticky: 1020;--z-index-fixed: 1030;--z-index-modal-backdrop: 1040;--z-index-modal: 1050;--z-index-popover: 1060;--z-index-tooltip: 1070;--transition-fast: .15s;--transition-base: .25s;--transition-slow: .35s;--transition-slower: .5s;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--scrollbar-width: 8px;--scrollbar-radius: var(--radius-base);--scrollbar-track-colour: var(--colour-neutral-100);--scrollbar-thumb-colour: var(--colour-neutral-400);--scrollbar-thumb-hover-colour: var(--colour-neutral-500);--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--focus-ring-width: 2px;--focus-ring-offset: 2px;--focus-ring-colour: var(--colour-border-focus);--tap-target-min-size: 44px;--animation-spin: spin 1s linear infinite;--animation-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite;--animation-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--animation-bounce: bounce 1s infinite}.dark{--colour-bg-primary: hsl(0, 0%, 3.9%);--colour-bg-secondary: hsl(0, 0%, 7%);--colour-bg-tertiary: hsl(0, 0%, 10%);--colour-surface: hsl(0, 0%, 3.9%);--colour-surface-raised: hsl(0, 0%, 7%);--colour-text-primary: hsl(0, 0%, 98%);--colour-text-secondary: hsl(0, 0%, 63.9%);--colour-text-tertiary: hsl(0, 0%, 45%);--colour-text-inverse: hsl(0, 0%, 3.9%);--colour-border-primary: hsl(0, 0%, 14.9%);--colour-border-secondary: hsl(0, 0%, 10%);--scrollbar-track-colour: var(--colour-neutral-800);--scrollbar-thumb-colour: var(--colour-neutral-600);--scrollbar-thumb-hover-colour: var(--colour-neutral-500)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ping{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,to{transform:translateY(0);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(-25%);animation-timing-function:cubic-bezier(0,0,.2,1)}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}body{font-family:var(--font-family-primary);color:var(--colour-text-primary);background:var(--colour-bg-primary)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb-colour) var(--scrollbar-track-colour)}*::-webkit-scrollbar-track{background:var(--scrollbar-track-colour)}*::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb-colour);border-radius:var(--scrollbar-radius)}*::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover-colour)}:root{--background: 0 0% 0%;--foreground: 0 0% 3.9%;--card: 0 0% 100%;--card-foreground: 0 0% 3.9%;--popover: 0 0% 100%;--popover-foreground: 0 0% 3.9%;--primary: 0 0% 9%;--primary-foreground: 0 0% 98%;--secondary: 0 0% 96.1%;--secondary-foreground: 0 0% 9%;--muted: 0 0% 96.1%;--muted-foreground: 0 0% 45.1%;--accent: 0 0% 96.1%;--accent-foreground: 0 0% 9%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 0 0% 98%;--border: 0 0% 89.8%;--input: 0 0% 89.8%;--ring: 0 0% 3.9%;--chart-1: 12 76% 61%;--chart-2: 173 58% 39%;--chart-3: 197 37% 24%;--chart-4: 43 74% 66%;--chart-5: 27 87% 67%;--radius: .5rem;--sidebar-background: 0 0% 98%;--sidebar-foreground: 240 5.3% 26.1%;--sidebar-primary: 240 5.9% 10%;--sidebar-primary-foreground: 0 0% 98%;--sidebar-accent: 240 4.8% 95.9%;--sidebar-accent-foreground: 240 5.9% 10%;--sidebar-border: 220 13% 91%;--sidebar-ring: 217.2 91.2% 59.8%}*{border-color:hsl(var(--border));outline-color:hsl(var(--ring) / .5)}body{background-color:hsl(var(--background));color:hsl(var(--foreground))}.pointer-events-auto{pointer-events:auto}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.bottom-0{bottom:0}.left-0{left:0}.left-\[50\%\]{left:50%}.right-0{right:0}.right-2{right:.5rem}.right-4{right:1rem}.top-0{top:0}.top-2{top:.5rem}.top-4{top:1rem}.top-\[50\%\]{top:50%}.z-50{z-index:50}.z-\[100\]{z-index:100}.block{display:block}.inline-flex{display:inline-flex}.table{display:table}.hidden{display:none}.h-10{height:2.5rem}.h-12{height:3rem}.h-4{height:1rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[1px\]{height:1px}.h-full{height:100%}.max-h-screen{max-height:100vh}.w-12{width:3rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[1px\]{width:1px}.w-full{width:100%}.max-w-lg{max-width:32rem}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.flex-col-reverse{flex-direction:column-reverse}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-16>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(4rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(4rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded-full{border-radius:9999px}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-destructive{border-color:hsl(var(--destructive))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-input{border-color:hsl(var(--input))}.border-t-gray-600{--tw-border-opacity: 1;border-top-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.bg-background{background-color:hsl(var(--background))}.bg-black\/80{background-color:#000c}.bg-border{background-color:hsl(var(--border))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-primary{background-color:hsl(var(--primary))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-transparent{background-color:transparent}.p-1{padding:.25rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.pr-8{padding-right:2rem}.text-center{text-align:center}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-foreground\/50{color:hsl(var(--foreground) / .5)}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.duration-200{animation-duration:.2s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary:hover{background-color:hsl(var(--secondary))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:opacity-100{opacity:1}.group.destructive .group-\[\.destructive\]\:border-muted\/40{border-color:hsl(var(--muted) / .4)}.group.destructive .group-\[\.destructive\]\:text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover{border-color:hsl(var(--destructive) / .3)}.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover{background-color:hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:hover\:text-destructive-foreground:hover{color:hsl(var(--destructive-foreground))}.group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover{--tw-text-opacity: 1;color:rgb(254 242 242 / var(--tw-text-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus{--tw-ring-color: hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus{--tw-ring-offset-color: #dc2626}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x: var(--radix-toast-swipe-end-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x: var(--radix-toast-swipe-move-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:hsl(var(--secondary))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity: .8}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y: 100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x: -100%}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed],.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed]{--tw-exit-translate-x: 100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y: -100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y: 100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x: -100%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x: 100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=closed\]\:duration-300[data-state=closed]{animation-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{animation-duration:.5s}@media(min-width:640px){.sm\:bottom-0{bottom:0}.sm\:right-0{right:0}.sm\:top-auto{top:auto}.sm\:max-w-sm{max-width:24rem}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:justify-end{justify-content:flex-end}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:text-left{text-align:left}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y: 100%}}@media(min-width:768px){.md\:max-w-\[420px\]{max-width:420px}.md\:text-sm{font-size:.875rem;line-height:1.25rem}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}@font-face{font-family:Space Grotesk;src:url(/fonts/SpaceGrotesk-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/SpaceGrotesk-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/SpaceGrotesk-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/SpaceGrotesk-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/SpaceGrotesk-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1440px;--color-background: #FFFFFF;--color-background-body: #000000;--color-surface: #f8fafc;--color-text-primary: #FFFFFF;--color-text-secondary: #1f2937;--color-text-muted: #4b5563;--color-accent-primary: #0066ff;--color-accent-secondary: #8b5cf6;--color-accent-success: #00ff88;--color-accent-warning: #f59e0b;--color-accent-danger: #ef4444;--color-accent-01: #0066ff;--color-accent: #0066ff;--color-accent-green: #00ff88;--color-border-light: #e5e7eb;--color-border-dark: #d1d5db;--color-white: #FFFFFF;--color-white-transparent-10: rgba(255, 255, 255, .1);--color-white-transparent-28: rgba(255, 255, 255, .28);--color-white-transparent-70: rgba(255, 255, 255, .7);--color-gold: #facc15;--blur-strong: 50px;--noise-opacity: .15;--dark-background: #1f2937;--dark-text: #f8fafc;--dark-sub-text: #6b7280;--shadow-light: #ffffff;--shadow-dark: rgba(248, 250, 252, .6);--font-family-heading: "Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-primary: "Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-mono: "JetBrains Mono", "Monaco", "Courier New", monospace;--font-family-base: var(--font-family-primary);--font-weight-light: 300;--font-weight-normal: 400;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--leading-tight: 1.2;--leading-normal: 1.5;--leading-relaxed: 1.6;--line-height-tight: var(--leading-tight);--line-height-normal: var(--leading-normal);--line-height-relaxed: 1.75;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--font-size-hero: 4.5rem;--font-size-xlarge: var(--text-4xl);--font-size-large: var(--text-2xl);--font-size-medium: var(--text-base);--font-size-small: var(--text-sm);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--spacing-xs: var(--space-2);--spacing-sm: var(--space-4);--spacing-md: var(--space-6);--spacing-lg: var(--space-8);--spacing-xl: var(--space-16);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-3xl: 2rem;--radius-full: 9999px;--max-width-sm: 24rem;--max-width-content: 64rem;--max-width-md: 28rem;--max-width-lg: 32rem;--max-width-xl: 36rem;--max-width-2xl: 42rem;--max-width-3xl: 48rem;--max-width-4xl: 56rem;--max-width-5xl: 64rem;--max-width-6xl: 72rem;--max-width-7xl: 100rem;--container-padding: var(--space-3);--container-padding-sm: var(--space-4);--cell-height: 9.5rem;--container-padding-lg: var(--space-6);--container-padding-mobile: var(--space-4);--container-padding-mobile-lg: var(--space-6);--touch-target-min: 44px;--touch-target-medium: 48px;--touch-target-large: 56px;--button-height: 2.5rem;--button-height-lg: 3rem;--button-height-mobile: 3rem;--button-height-mobile-lg: 3.5rem;--ava-info-panel-width: 600px;--ava-cta-stock-min-width: 12.5rem;--scrollbar-width: 6px;--scrollbar-radius: 3px;--scrollbar-hide-offset: -12px;--modal-max-height: 80vh;--modal-max-height-mobile: 85vh;--border-width-hairline: .5px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .15);--shadow-xl: 0 20px 50px rgba(0, 0, 0, .2);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--transition-duration: .2s;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}*{box-sizing:border-box;margin:0;padding:0}img,video,iframe,embed,object,table{max-width:100%;height:auto}html{scroll-behavior:smooth;width:100%;max-width:100%;overflow-x:clip}body{font-family:var(--font-family-primary);color:var(--color-text-primary);background:#131210;line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;margin:0;padding:0;width:100%;max-width:100%}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-heading);font-weight:var(--font-weight-medium);line-height:var(--leading-tight);color:var(--color-text-primary)}h1{font-size:4.75rem;font-weight:400;letter-spacing:-.025em;line-height:1.2;color:#4c412e;background:none;-webkit-background-clip:unset;-webkit-text-fill-color:unset;background-clip:unset}@media(min-width:768px){h1{font-size:4.75rem}}@media(max-width:767px){h1{font-size:3rem;line-height:1.1}}@media(max-width:480px){h1{font-size:2.5rem;line-height:1.2}}h2{font-size:2.25rem;font-weight:500;letter-spacing:-.02em;line-height:1.3;color:#4c412e;margin-bottom:1.5rem}@media(min-width:768px){h2{font-size:3rem;margin-bottom:2rem}}@media(max-width:767px){h2{font-size:2rem}}@media(max-width:480px){h2{font-size:1.75rem}}h3{font-size:1.875rem;font-weight:500;color:#4c412e;line-height:1.4}h4{font-size:1.5rem;font-weight:500;color:#4c412e;line-height:1.4}h5{font-size:1.25rem;font-weight:500;color:#4c412e;line-height:1.5}h6{font-size:1rem;font-weight:500;color:#4c412e;line-height:1.5}.subtitle{font-size:var(--text-base);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin-bottom:var(--space-3)}.description-text{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-relaxed);font-weight:var(--font-weight-normal)}@media(max-width:767px){.subtitle{font-size:var(--text-lg);margin-bottom:var(--space-2)}}@media(max-width:480px){.subtitle{font-size:var(--text-base)}}p{margin-bottom:var(--space-4);color:var(--color-text-secondary)}a{color:inherit;text-decoration:none;transition:box-shadow .25s ease,background-color .25s ease,color .25s ease}a{color:var(--color-accent)}a:hover,a:focus-visible{color:var(--color-text-primary);outline:none}a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:2px}a[href^=http]:not([href*="ueno.com.au"]):not([href*="oudesignlab.com"]):hover,a[href^=http]:not([href*="ueno.com.au"]):not([href*="oudesignlab.com"]):focus-visible{color:var(--color-accent)}.project-item:has(.featured):before,.project-item.featured:before{content:"★";position:absolute;inset-block-start:.5rem;inset-inline-end:.5rem;color:var(--color-accent);font-size:.875rem}.shop-item-container:has(.featured):before,.shop-item-container.featured:before{content:"★";position:absolute;inset-block-start:.5rem;inset-inline-end:.5rem;color:var(--color-accent);font-size:.875rem}label{color:var(--color-text-primary);font-weight:var(--font-weight-medium)}label:focus-within{color:var(--color-accent)}.success-message{color:var(--color-accent);border:1px solid var(--color-accent);background:#64748b1a}.loading-spinner{border-color:var(--color-accent);border-top-color:transparent}.text-secondary,.description-text{color:var(--color-accent)}.caption-text{color:var(--color-accent);font-size:var(--text-sm)}.meta-text{color:var(--color-accent);font-size:var(--text-xs)}.container{max-width:var(--max-width-7xl);margin-block:0;margin-inline:auto;padding:0}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mt-10{margin-top:var(--space-10)}.mt-12{margin-top:var(--space-12)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.mb-10{margin-bottom:var(--space-10)}.mb-12{margin-bottom:var(--space-12)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.p-10{padding:var(--space-10)}.p-12{padding:var(--space-12)}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:640px){.grid-cols-2,.grid-cols-3,.sm\:grid-cols-2,.sm\:grid-cols-3,.md\:grid-cols-2,.md\:grid-cols-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}}@media(min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.page-section{display:flex;align-items:center;justify-content:center;padding-block:var(--space-2);padding-inline:var(--space-2);box-sizing:border-box}@media(min-width:768px){.page-section{padding-block:var(--space-2);padding-inline:var(--space-3)}}.hero-section{min-height:100vh;height:100vh;padding:var(--space-2)!important;position:relative;overflow:hidden}@media(max-width:768px){.hero-section{min-height:100vh;height:100vh;padding:var(--space-2)!important}}.hero-section .section-content{height:100%;width:100%;max-width:none;margin:0;padding-block:var(--space-12);padding-inline:var(--space-8);position:relative;z-index:10;overflow:hidden;background-image:url(/Untitled-optimized.webp);background-size:cover;background-repeat:no-repeat;background-position:center center}.section-content{width:100%;max-width:var(--max-width-7xl);margin-block:0;margin-inline:auto;padding-block:var(--space-12);padding-inline:var(--space-8);display:flex;flex-direction:column;justify-content:center;background:#ffffffe6;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-3xl)}@media(max-width:768px){.section-content{padding-block:var(--space-8);padding-inline:var(--space-6)}}.work-container{width:100%;max-width:var(--max-width-7xl);margin-block:0;margin-inline:auto;padding-block:0;padding-inline:var(--space-4);box-sizing:border-box}@media(min-width:1440px){.work-container{padding:0}}.content-padding{padding-block:0;padding-inline:var(--space-4);box-sizing:border-box}@media(min-width:1440px){.content-padding{padding:0}}.no-padding{padding:0!important}@media(max-height:999px){.section-content{height:auto;min-height:auto;justify-content:flex-start}}@media(min-width:1024px){.page-section-single .section-content{height:auto;min-height:auto;justify-content:flex-start}}*{scrollbar-width:thin;scrollbar-color:rgba(248,250,252,.8) transparent}*::-webkit-scrollbar{width:var(--scrollbar-width)}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background-color:var(--color-accent);border-radius:3px}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none;margin-top:-12px;margin-bottom:-12px;padding-top:12px;padding-bottom:12px}.scrollbar-hide::-webkit-scrollbar{display:none}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes gradientMove{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.gradient-placeholder{background:linear-gradient(135deg,var(--color-accent),color-mix(in srgb,var(--color-accent) 70%,white),var(--color-accent),color-mix(in srgb,var(--color-accent) 50%,black));background-size:200% 200%;animation:gradientMove 4s ease-in-out infinite;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:500}.gradient-placeholder-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.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}:is(button,a,input,textarea,select):focus{outline:none}:is(button,a,input,textarea,select):focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn-primary,.btn-primary-lg{background:transparent;color:var(--color-text-primary);border:var(--border-width-hairline) solid var(--color-border-dark);border-radius:9999px;padding:0 var(--space-6);height:var(--button-height);font-size:var(--text-sm);font-weight:var(--font-weight-light);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;transition:all .25s ease}@media(max-width:768px){.btn-primary,.btn-primary-lg{height:var(--button-height-mobile);padding:0 var(--space-8);font-size:var(--text-base);min-width:48px}.btn-primary-lg{height:var(--button-height-mobile-lg);padding:0 var(--space-10)}}.btn-primary-lg{height:var(--button-height-lg);font-size:var(--text-base);padding:0 var(--space-8)}.btn-primary:hover,.btn-primary-lg:hover{box-shadow:0 8px 16px #00000026}.btn-secondary{background:transparent;color:var(--color-text-primary);border:none;border-radius:9999px;padding:0 var(--space-4);height:var(--button-height);font-size:var(--text-sm);font-weight:var(--font-weight-light);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;position:relative;transition:all .25s ease}@media(max-width:768px){.btn-secondary{height:var(--button-height-mobile);padding:0 var(--space-6);font-size:var(--text-base);min-width:48px}}.btn-secondary:after{content:"";position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:0;height:.5px;background-color:var(--color-border-dark);transition:width .25s ease}.btn-secondary:hover:after{width:calc(100% - var(--space-8))}.btn-secondary.active:after{width:calc(100% - var(--space-8))}.btn-dynamic-primary{background:var(--color-accent-01);color:#fff;border:none;border-radius:9999px;padding:var(--space-3) var(--space-6);font-size:var(--text-sm);font-weight:var(--font-weight-medium);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;position:relative;overflow:hidden;transition:all .3s ease;box-shadow:0 4px 15px #0066ff4d;min-width:fit-content;width:auto}.btn-dynamic-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #06f6;background:#0052e6}.btn-dynamic-primary:active{transform:translateY(0);box-shadow:0 4px 15px #0066ff4d}.btn-dynamic-secondary{background:var(--color-accent-green);color:#000;border:none;border-radius:9999px;padding:var(--space-3) var(--space-6);font-size:var(--text-sm);font-weight:var(--font-weight-medium);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;position:relative;overflow:hidden;transition:all .3s ease;box-shadow:0 4px 15px #00ff884d;min-width:fit-content;width:auto}.btn-dynamic-secondary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0f86;background:#00e677}.btn-dynamic-secondary:active{transform:translateY(0);box-shadow:0 4px 15px #00ff884d}.section-title.accent{background:linear-gradient(135deg,var(--color-text-primary) 0%,var(--color-accent-01) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section-title-large{font-size:var(--text-6xl);font-weight:var(--font-weight-light);color:var(--color-text-primary);text-align:center;margin-bottom:var(--space-4);letter-spacing:-.025em;line-height:1.1}.text-accent-01{color:var(--color-accent-01)}.text-accent-green{color:var(--color-accent-green)}.border-accent-01{border-color:var(--color-accent-01)}.border-accent-green{border-color:var(--color-accent-green)}:is(button:not([style*=transition]),a.button,[role=button]:not([style*=transition])){transition:box-shadow .25s ease,background-color .25s ease,color .25s ease}.btn-primary,.btn-primary-lg,.btn-secondary,.btn-dynamic-primary,.btn-dynamic-secondary,.hero-button-primary,.hero-button-secondary,.shop-featured-button-primary,.shop-featured-button-secondary,.work-filter-button,.contact-form-button,.nav-link,.nav-email{transition:box-shadow .25s ease,background-color .25s ease,color .25s ease}.tech-slider-container,.tech-slider-track,.tech-slider-thumb{box-shadow:none!important}.shop-item-container,.work-item-container{background:#f8fafc66;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-2xl);border:var(--border-width-hairline) solid var(--color-border-dark);box-shadow:0 4px 12px #00000014;padding:var(--space-4);cursor:pointer;transition:all .25s ease;text-decoration:none;color:inherit}@media(max-width:640px){.shop-item-container,.work-item-container{padding:var(--space-3);margin-bottom:var(--space-3);border-radius:var(--radius-xl)}}@media(min-width:640px){.shop-item-container,.work-item-container{padding:var(--space-5)}}@media(min-width:768px){.shop-item-container,.work-item-container{padding:var(--space-6)}}.shop-item-container:hover,.work-item-container:hover{box-shadow:0 8px 16px #00000026;border:var(--border-width-hairline) solid var(--color-border-dark);text-decoration:none;color:inherit}.shop-featured,.shop-featured:hover{text-decoration:none;color:inherit}.project-item:not(.work-item-container){box-shadow:var(--shadow-md);transition:box-shadow .25s ease}.project-item:not(.work-item-container):hover{box-shadow:var(--shadow-lg)}@media print{.no-print{display:none!important}body{background:#fff!important;color:#000!important}}.navbar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffc;border-bottom:1px solid rgba(255,255,255,.2)}:is(input,textarea,select){background:#f8fafccc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(100,116,139,.2);transition:all .25s ease}:is(input,textarea,select):focus{background:#f8fafc;border-color:var(--color-accent);box-shadow:0 0 0 3px #64748b1a}.project-modal-container{background:#f8fafc99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:var(--border-width-hairline) solid var(--color-border-dark);box-shadow:0 4px 12px #00000014}.modal-scroll-container{overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.modal-scroll-container::-webkit-scrollbar{display:none}.project-modal-header{background:#f8fafc99;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-bottom-color:var(--color-border-dark)}.work-loading,.project-showcase-loading,.state-container{background:#f8fafc99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:var(--border-width-hairline) solid var(--color-border-dark);border-radius:var(--radius-2xl);box-shadow:0 4px 12px #00000014;padding:var(--space-8) var(--space-6);max-width:fit-content;margin:0 auto}.work-no-results,.empty-state-container{background:#f8fafc99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:var(--border-width-hairline) solid var(--color-border-dark);border-radius:var(--radius-2xl);box-shadow:0 4px 12px #00000014;padding:var(--space-8) var(--space-6);text-align:center;max-width:400px;margin:0 auto}.modal-sidebar-section{background:#f8fafc99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:var(--border-width-hairline) solid var(--color-border-dark);border-radius:var(--radius-2xl);box-shadow:0 4px 12px #00000014;padding:var(--space-6)}.modal-links-section{padding:var(--space-4) var(--space-6)!important}.modal-description-section{background:#f8fafc99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:var(--border-width-hairline) solid var(--color-border-dark);border-radius:var(--radius-2xl);box-shadow:0 4px 12px #00000014;padding:var(--space-6)}.modal-content-grid{display:grid;gap:var(--space-6);margin-top:var(--space-8)}@media(max-width:768px){.modal-content-grid{grid-template-areas:"mobile-project-details" "mobile-technical-challenge" "mobile-links" "description";grid-template-columns:1fr}.modal-mobile-project-details{grid-area:mobile-project-details}.modal-mobile-technical-challenge{grid-area:mobile-technical-challenge}.modal-mobile-links{grid-area:mobile-links}.modal-description-column{grid-area:description;display:flex;flex-direction:column;gap:var(--space-6)}.modal-desktop-sidebar{display:none}}@media(min-width:769px){.modal-content-grid{grid-template-areas:"description sidebar";grid-template-columns:2fr 1fr;align-items:start}.modal-mobile-project-details,.modal-mobile-technical-challenge,.modal-mobile-links{display:none}.modal-description-column{grid-area:description;display:flex;flex-direction:column;gap:var(--space-6)}.modal-desktop-sidebar{grid-area:sidebar;display:flex;flex-direction:column;gap:var(--space-6)}}h2.modal-title{font-size:var(--text-3xl)!important;font-weight:var(--font-weight-light)!important;color:var(--color-text-primary)!important;line-height:var(--leading-tight)!important;letter-spacing:-.025em!important;background:linear-gradient(135deg,#374151 0%,var(--color-accent-01) 100%)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important;margin:0!important;padding:0!important;max-width:none!important;word-wrap:break-word!important;overflow-wrap:break-word!important}@media(max-width:768px){h2.modal-title{font-size:var(--text-2xl)!important;line-height:1.3!important}}.page-section{width:100%;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-block:0;margin-inline:auto;padding-block:var(--space-2);padding-inline:var(--space-2);gap:var(--space-4);overflow:visible}.page-section-bg-transparent{background:transparent}.section-template{width:100%;min-height:100vh;height:100vh;position:relative;overflow:hidden}.page-container{min-height:100vh;position:relative;display:flex;flex-direction:column;width:100%;max-width:100vw}.page-container__top{display:flex;position:relative;width:100%;min-height:100vh}.page-container{margin-inline:0;padding-block:0}.global-page-layout{min-height:100vh;display:flex;flex-direction:column}.global-page-layout .navbar-sticky{flex-shrink:0}html{scroll-behavior:smooth}@media(max-width:768px){.section-template{height:100vh}.header-modal,.footer-modal{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}}@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-reduced-motion:reduce){button:hover,a:hover{transition:opacity .15s ease}}
