/* [next]/internal/font/google/inter_2fe1ab3d.module.css [app-client] (css) */
@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2") format("woff2");
  unicode-range: U+1F??;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/5476f68d60460930-s.0wxq9webf.ew4.woff2") format("woff2");
  unicode-range: U+370-377, U+37A-37F, U+384-38A, U+38C, U+38E-3A1, U+3A3-3FF;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/1bffadaabf893a1e-s.16ipb6fqu393i.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Inter Fallback;
  src: local(Arial);
  ascent-override: 90.44%;
  descent-override: 22.52%;
  line-gap-override: 0.0%;
  size-adjust: 107.12%;
}

.inter_2fe1ab3d-module__-T-KAq__className {
  font-family: Inter, Inter Fallback;
  font-style: normal;
}

.inter_2fe1ab3d-module__-T-KAq__variable {
  --font-inter: "Inter", "Inter Fallback";
}

/* [next]/internal/font/google/space_grotesk_59d6dcf5.module.css [app-client] (css) */
@font-face {
  font-family: Space Grotesk;
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("../media/32687112bd2dd8db-s.0gspg~~t9nou8.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Space Grotesk;
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("../media/28868e710e86be81-s.0rx81dn62y51_.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Space Grotesk;
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("../media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Space Grotesk Fallback;
  src: local(Arial);
  ascent-override: 89.71%;
  descent-override: 26.62%;
  line-gap-override: 0.0%;
  size-adjust: 109.69%;
}

.space_grotesk_59d6dcf5-module__z_Ctiq__className {
  font-family: Space Grotesk, Space Grotesk Fallback;
  font-style: normal;
}

.space_grotesk_59d6dcf5-module__z_Ctiq__variable {
  --font-space-grotesk: "Space Grotesk", "Space Grotesk Fallback";
}

/* [project]/src/app/globals.css [app-client] (css) */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-border-style: solid;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-red-600: #e40014;
    --color-emerald-50: #ecfdf5;
    --color-emerald-100: #d0fae5;
    --color-emerald-200: #a4f4cf;
    --color-emerald-300: #5ee9b5;
    --color-emerald-400: #00d294;
    --color-emerald-500: #00bb7f;
    --color-emerald-600: #009767;
    --color-emerald-700: #007956;
    --color-emerald-800: #005f46;
    --color-emerald-900: #004e3b;
    --color-emerald-950: #002c22;
    --color-gray-400: #99a1af;
    --color-gray-500: #6a7282;
    --color-gray-600: #4a5565;
    --color-gray-900: #101828;
    --color-black: #000;
    --color-white: #fff;
    --spacing: .25rem;
    --container-xs: 20rem;
    --container-md: 28rem;
    --container-lg: 32rem;
    --container-xl: 36rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-5xl: 64rem;
    --container-7xl: 80rem;
    --text-xs: .75rem;
    --text-xs--line-height: calc(1 / .75);
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25 / .875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-5xl: 3rem;
    --text-5xl--line-height: 1;
    --text-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --text-7xl: 4.5rem;
    --text-7xl--line-height: 1;
    --text-8xl: 6rem;
    --text-8xl--line-height: 1;
    --font-weight-light: 300;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --font-weight-black: 900;
    --tracking-tighter: -.05em;
    --tracking-tight: -.025em;
    --tracking-wide: .025em;
    --tracking-wider: .05em;
    --tracking-widest: .1em;
    --leading-tight: 1.25;
    --leading-relaxed: 1.625;
    --leading-loose: 2;
    --radius-lg: .5rem;
    --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
    --blur-sm: 8px;
    --aspect-video: 16 / 9;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --color-primary-50: #ecfdf5;
    --color-primary-100: #d1fae5;
    --color-primary-200: #a7f3d0;
    --color-primary-500: #065f46;
    --color-primary-600: #064e3b;
    --color-primary-700: #004532;
    --color-primary-900: #002820;
    --color-accent-500: #10b981;
    --color-surface: #f7faf8;
    --color-surface-low: #f1f4f2;
    --color-outline: #6b7c72;
    --color-outline-variant: #bec9c2;
    --font-heading: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;
  }

  @supports (color: lab(0% 0 0)) {
    :root, :host {
      --color-red-600: lab(48.4493% 77.4328 61.5452);
      --color-emerald-50: lab(97.8462% -6.94966 1.85487);
      --color-emerald-100: lab(94.9004% -17.0769 5.63836);
      --color-emerald-200: lab(90.2247% -31.039 9.47084);
      --color-emerald-300: lab(83.9203% -48.7124 13.8849);
      --color-emerald-400: lab(75.0771% -60.7313 19.4147);
      --color-emerald-500: lab(66.9756% -58.27 19.5419);
      --color-emerald-600: lab(55.0481% -49.9246 15.93);
      --color-emerald-700: lab(44.4871% -41.0396 11.0361);
      --color-emerald-800: lab(35.3675% -33.1188 8.04002);
      --color-emerald-900: lab(28.8637% -26.9249 5.45986);
      --color-emerald-950: lab(15.0582% -17.9507 2.38369);
      --color-gray-400: lab(65.9269% -.832707 -8.17473);
      --color-gray-500: lab(47.7841% -.393182 -10.0268);
      --color-gray-600: lab(35.6337% -1.58697 -10.8425);
      --color-gray-900: lab(8.11897% .811279 -12.254);
    }
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }

  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }

  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }

  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

  sub, sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

  ol, ul, menu {
    list-style: none;
  }

  img, svg, video, canvas, audio, iframe, embed, object {
    vertical-align: middle;
    display: block;
  }

  img, video {
    max-width: 100%;
    height: auto;
  }

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }

  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }

  ::file-selector-button {
    margin-inline-end: 4px;
  }

  ::placeholder {
    opacity: 1;
  }

  @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }

  textarea {
    resize: vertical;
  }

  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }

  ::-webkit-datetime-edit {
    display: inline-flex;
  }

  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

  :-moz-ui-invalid {
    box-shadow: none;
  }

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }

  ::file-selector-button {
    appearance: button;
  }

  ::-webkit-inner-spin-button {
    height: auto;
  }

  ::-webkit-outer-spin-button {
    height: auto;
  }

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}

@layer components;

@layer utilities {
  .pointer-events-none {
    pointer-events: none;
  }

  .visible {
    visibility: visible;
  }

  .absolute {
    position: absolute;
  }

  .fixed {
    position: fixed;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .sticky {
    position: sticky;
  }

  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }

  .start {
    inset-inline-start: var(--spacing);
  }

  .end {
    inset-inline-end: var(--spacing);
  }

  .-top-px {
    top: -1px;
  }

  .top-0 {
    top: calc(var(--spacing) * 0);
  }

  .top-4 {
    top: calc(var(--spacing) * 4);
  }

  .top-6 {
    top: calc(var(--spacing) * 6);
  }

  .top-\[40px\] {
    top: 40px;
  }

  .-right-8 {
    right: calc(var(--spacing) * -8);
  }

  .-right-px {
    right: -1px;
  }

  .right-0 {
    right: calc(var(--spacing) * 0);
  }

  .right-4 {
    right: calc(var(--spacing) * 4);
  }

  .right-\[-10\%\] {
    right: -10%;
  }

  .-bottom-6 {
    bottom: calc(var(--spacing) * -6);
  }

  .-bottom-8 {
    bottom: calc(var(--spacing) * -8);
  }

  .-bottom-px {
    bottom: -1px;
  }

  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }

  .bottom-4 {
    bottom: calc(var(--spacing) * 4);
  }

  .bottom-\[-10\%\] {
    bottom: -10%;
  }

  .-left-6 {
    left: calc(var(--spacing) * -6);
  }

  .-left-px {
    left: -1px;
  }

  .left-0 {
    left: calc(var(--spacing) * 0);
  }

  .left-4 {
    left: calc(var(--spacing) * 4);
  }

  .z-0 {
    z-index: 0;
  }

  .z-10 {
    z-index: 10;
  }

  .z-50 {
    z-index: 50;
  }

  .col-span-1 {
    grid-column: span 1 / span 1;
  }

  .col-span-12 {
    grid-column: span 12 / span 12;
  }

  .col-span-full {
    grid-column: 1 / -1;
  }

  .container {
    width: 100%;
  }

  @media (min-width: 40rem) {
    .container {
      max-width: 40rem;
    }
  }

  @media (min-width: 48rem) {
    .container {
      max-width: 48rem;
    }
  }

  @media (min-width: 64rem) {
    .container {
      max-width: 64rem;
    }
  }

  @media (min-width: 80rem) {
    .container {
      max-width: 80rem;
    }
  }

  @media (min-width: 96rem) {
    .container {
      max-width: 96rem;
    }
  }

  .-mx-4 {
    margin-inline: calc(var(--spacing) * -4);
  }

  .mx-2 {
    margin-inline: calc(var(--spacing) * 2);
  }

  .mx-12 {
    margin-inline: calc(var(--spacing) * 12);
  }

  .mx-auto {
    margin-inline: auto;
  }

  .my-2 {
    margin-block: calc(var(--spacing) * 2);
  }

  .mt-0\.5 {
    margin-top: calc(var(--spacing) * .5);
  }

  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }

  .mt-1\.5 {
    margin-top: calc(var(--spacing) * 1.5);
  }

  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }

  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }

  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }

  .mt-5 {
    margin-top: calc(var(--spacing) * 5);
  }

  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }

  .mt-8 {
    margin-top: calc(var(--spacing) * 8);
  }

  .mt-10 {
    margin-top: calc(var(--spacing) * 10);
  }

  .mt-12 {
    margin-top: calc(var(--spacing) * 12);
  }

  .mt-16 {
    margin-top: calc(var(--spacing) * 16);
  }

  .mt-auto {
    margin-top: auto;
  }

  .mb-1 {
    margin-bottom: calc(var(--spacing) * 1);
  }

  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }

  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }

  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }

  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }

  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }

  .mb-10 {
    margin-bottom: calc(var(--spacing) * 10);
  }

  .mb-12 {
    margin-bottom: calc(var(--spacing) * 12);
  }

  .mb-16 {
    margin-bottom: calc(var(--spacing) * 16);
  }

  .mb-20 {
    margin-bottom: calc(var(--spacing) * 20);
  }

  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }

  .ml-4 {
    margin-left: calc(var(--spacing) * 4);
  }

  .ml-12 {
    margin-left: calc(var(--spacing) * 12);
  }

  .block {
    display: block;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

  .inline-block {
    display: inline-block;
  }

  .inline-flex {
    display: inline-flex;
  }

  .table {
    display: table;
  }

  .aspect-\[4\/3\] {
    aspect-ratio: 4 / 3;
  }

  .aspect-square {
    aspect-ratio: 1;
  }

  .aspect-video {
    aspect-ratio: var(--aspect-video);
  }

  .h-1 {
    height: calc(var(--spacing) * 1);
  }

  .h-1\.5 {
    height: calc(var(--spacing) * 1.5);
  }

  .h-2 {
    height: calc(var(--spacing) * 2);
  }

  .h-3 {
    height: calc(var(--spacing) * 3);
  }

  .h-3\.5 {
    height: calc(var(--spacing) * 3.5);
  }

  .h-4 {
    height: calc(var(--spacing) * 4);
  }

  .h-5 {
    height: calc(var(--spacing) * 5);
  }

  .h-6 {
    height: calc(var(--spacing) * 6);
  }

  .h-7 {
    height: calc(var(--spacing) * 7);
  }

  .h-8 {
    height: calc(var(--spacing) * 8);
  }

  .h-10 {
    height: calc(var(--spacing) * 10);
  }

  .h-12 {
    height: calc(var(--spacing) * 12);
  }

  .h-14 {
    height: calc(var(--spacing) * 14);
  }

  .h-16 {
    height: calc(var(--spacing) * 16);
  }

  .h-20 {
    height: calc(var(--spacing) * 20);
  }

  .h-\[2px\] {
    height: 2px;
  }

  .h-full {
    height: 100%;
  }

  .h-px {
    height: 1px;
  }

  .min-h-12 {
    min-height: calc(var(--spacing) * 12);
  }

  .min-h-\[600px\] {
    min-height: 600px;
  }

  .min-h-\[819px\] {
    min-height: 819px;
  }

  .min-h-screen {
    min-height: 100vh;
  }

  .w-0\.5 {
    width: calc(var(--spacing) * .5);
  }

  .w-1\.5 {
    width: calc(var(--spacing) * 1.5);
  }

  .w-1\/3 {
    width: 33.3333%;
  }

  .w-2 {
    width: calc(var(--spacing) * 2);
  }

  .w-3 {
    width: calc(var(--spacing) * 3);
  }

  .w-3\.5 {
    width: calc(var(--spacing) * 3.5);
  }

  .w-4 {
    width: calc(var(--spacing) * 4);
  }

  .w-5 {
    width: calc(var(--spacing) * 5);
  }

  .w-6 {
    width: calc(var(--spacing) * 6);
  }

  .w-7 {
    width: calc(var(--spacing) * 7);
  }

  .w-8 {
    width: calc(var(--spacing) * 8);
  }

  .w-10 {
    width: calc(var(--spacing) * 10);
  }

  .w-12 {
    width: calc(var(--spacing) * 12);
  }

  .w-14 {
    width: calc(var(--spacing) * 14);
  }

  .w-16 {
    width: calc(var(--spacing) * 16);
  }

  .w-20 {
    width: calc(var(--spacing) * 20);
  }

  .w-24 {
    width: calc(var(--spacing) * 24);
  }

  .w-72 {
    width: calc(var(--spacing) * 72);
  }

  .w-full {
    width: 100%;
  }

  .max-w-2xl {
    max-width: var(--container-2xl);
  }

  .max-w-3xl {
    max-width: var(--container-3xl);
  }

  .max-w-4xl {
    max-width: var(--container-4xl);
  }

  .max-w-5xl {
    max-width: var(--container-5xl);
  }

  .max-w-7xl {
    max-width: var(--container-7xl);
  }

  .max-w-full {
    max-width: 100%;
  }

  .max-w-lg {
    max-width: var(--container-lg);
  }

  .max-w-md {
    max-width: var(--container-md);
  }

  .max-w-none {
    max-width: none;
  }

  .max-w-xl {
    max-width: var(--container-xl);
  }

  .max-w-xs {
    max-width: var(--container-xs);
  }

  .flex-1 {
    flex: 1;
  }

  .shrink {
    flex-shrink: 1;
  }

  .shrink-0 {
    flex-shrink: 0;
  }

  .flex-grow, .grow {
    flex-grow: 1;
  }

  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-12 {
    --tw-translate-x: calc(var(--spacing) * 12);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .rotate-12 {
    rotate: 12deg;
  }

  .skew-x-12 {
    --tw-skew-x: skewX(12deg);
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

  .transform {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

  .animate-pulse {
    animation: var(--animate-pulse);
  }

  .cursor-pointer {
    cursor: pointer;
  }

  .list-none {
    list-style-type: none;
  }

  .appearance-none {
    appearance: none;
  }

  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .grid-cols-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }

  .flex-col {
    flex-direction: column;
  }

  .flex-wrap {
    flex-wrap: wrap;
  }

  .content-center {
    align-content: center;
  }

  .items-center {
    align-items: center;
  }

  .items-end {
    align-items: flex-end;
  }

  .items-start {
    align-items: flex-start;
  }

  .justify-around {
    justify-content: space-around;
  }

  .justify-between {
    justify-content: space-between;
  }

  .justify-center {
    justify-content: center;
  }

  .justify-end {
    justify-content: flex-end;
  }

  .gap-0 {
    gap: calc(var(--spacing) * 0);
  }

  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }

  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }

  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }

  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }

  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }

  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }

  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }

  .gap-10 {
    gap: calc(var(--spacing) * 10);
  }

  .gap-12 {
    gap: calc(var(--spacing) * 12);
  }

  .gap-16 {
    gap: calc(var(--spacing) * 16);
  }

  .gap-px {
    gap: 1px;
  }

  :where(.space-y-1 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-2 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-3 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-4 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-6 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-8 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-10 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 10) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 10) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-12 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 12) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse)));
  }

  .gap-x-12 {
    column-gap: calc(var(--spacing) * 12);
  }

  :where(.space-x-2 > :not(:last-child)) {
    --tw-space-x-reverse: 0;
    margin-inline-start: calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));
    margin-inline-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)));
  }

  :where(.space-x-8 > :not(:last-child)) {
    --tw-space-x-reverse: 0;
    margin-inline-start: calc(calc(var(--spacing) * 8) * var(--tw-space-x-reverse));
    margin-inline-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-x-reverse)));
  }

  .gap-y-8 {
    row-gap: calc(var(--spacing) * 8);
  }

  .overflow-hidden {
    overflow: hidden;
  }

  .overflow-x-auto {
    overflow-x: auto;
  }

  .overflow-x-hidden {
    overflow-x: hidden;
  }

  .rounded {
    border-radius: .25rem;
  }

  .rounded-full {
    border-radius: 3.40282e38px;
  }

  .rounded-lg {
    border-radius: var(--radius-lg);
  }

  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }

  .border-y {
    border-block-style: var(--tw-border-style);
    border-block-width: 1px;
  }

  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }

  .border-t-2 {
    border-top-style: var(--tw-border-style);
    border-top-width: 2px;
  }

  .border-t-4 {
    border-top-style: var(--tw-border-style);
    border-top-width: 4px;
  }

  .border-t-8 {
    border-top-style: var(--tw-border-style);
    border-top-width: 8px;
  }

  .border-r {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }

  .border-r-2 {
    border-right-style: var(--tw-border-style);
    border-right-width: 2px;
  }

  .border-r-8 {
    border-right-style: var(--tw-border-style);
    border-right-width: 8px;
  }

  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }

  .border-b-2 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 2px;
  }

  .border-l {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }

  .border-l-2 {
    border-left-style: var(--tw-border-style);
    border-left-width: 2px;
  }

  .border-l-4 {
    border-left-style: var(--tw-border-style);
    border-left-width: 4px;
  }

  .border-l-8 {
    border-left-style: var(--tw-border-style);
    border-left-width: 8px;
  }

  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }

  .border-none {
    --tw-border-style: none;
    border-style: none;
  }

  .border-accent-500 {
    border-color: var(--color-accent-500);
  }

  .border-accent-500\/30 {
    border-color: #10b9814d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-accent-500\/30 {
      border-color: color-mix(in oklab, var(--color-accent-500) 30%, transparent);
    }
  }

  .border-emerald-100 {
    border-color: var(--color-emerald-100);
  }

  .border-emerald-200 {
    border-color: var(--color-emerald-200);
  }

  .border-emerald-300 {
    border-color: var(--color-emerald-300);
  }

  .border-emerald-400 {
    border-color: var(--color-emerald-400);
  }

  .border-emerald-400\/30 {
    border-color: #00d2944d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-emerald-400\/30 {
      border-color: color-mix(in oklab, var(--color-emerald-400) 30%, transparent);
    }
  }

  .border-emerald-500 {
    border-color: var(--color-emerald-500);
  }

  .border-emerald-500\/50 {
    border-color: #00bb7f80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-emerald-500\/50 {
      border-color: color-mix(in oklab, var(--color-emerald-500) 50%, transparent);
    }
  }

  .border-emerald-800 {
    border-color: var(--color-emerald-800);
  }

  .border-emerald-800\/30 {
    border-color: #005f464d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-emerald-800\/30 {
      border-color: color-mix(in oklab, var(--color-emerald-800) 30%, transparent);
    }
  }

  .border-emerald-800\/50 {
    border-color: #005f4680;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-emerald-800\/50 {
      border-color: color-mix(in oklab, var(--color-emerald-800) 50%, transparent);
    }
  }

  .border-emerald-900 {
    border-color: var(--color-emerald-900);
  }

  .border-emerald-900\/50 {
    border-color: #004e3b80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-emerald-900\/50 {
      border-color: color-mix(in oklab, var(--color-emerald-900) 50%, transparent);
    }
  }

  .border-outline-variant {
    border-color: var(--color-outline-variant);
  }

  .border-outline-variant\/10 {
    border-color: #bec9c21a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-outline-variant\/10 {
      border-color: color-mix(in oklab, var(--color-outline-variant) 10%, transparent);
    }
  }

  .border-outline-variant\/20 {
    border-color: #bec9c233;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-outline-variant\/20 {
      border-color: color-mix(in oklab, var(--color-outline-variant) 20%, transparent);
    }
  }

  .border-outline-variant\/30 {
    border-color: #bec9c24d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-outline-variant\/30 {
      border-color: color-mix(in oklab, var(--color-outline-variant) 30%, transparent);
    }
  }

  .border-primary-700 {
    border-color: var(--color-primary-700);
  }

  .border-white\/10 {
    border-color: #ffffff1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/10 {
      border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }

  .border-white\/20 {
    border-color: #fff3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/20 {
      border-color: color-mix(in oklab, var(--color-white) 20%, transparent);
    }
  }

  .border-white\/30 {
    border-color: #ffffff4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/30 {
      border-color: color-mix(in oklab, var(--color-white) 30%, transparent);
    }
  }

  .bg-accent-500 {
    background-color: var(--color-accent-500);
  }

  .bg-accent-500\/5 {
    background-color: #10b9810d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-accent-500\/5 {
      background-color: color-mix(in oklab, var(--color-accent-500) 5%, transparent);
    }
  }

  .bg-accent-500\/10 {
    background-color: #10b9811a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-accent-500\/10 {
      background-color: color-mix(in oklab, var(--color-accent-500) 10%, transparent);
    }
  }

  .bg-black\/20 {
    background-color: #0003;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/20 {
      background-color: color-mix(in oklab, var(--color-black) 20%, transparent);
    }
  }

  .bg-emerald-50 {
    background-color: var(--color-emerald-50);
  }

  .bg-emerald-100\/50 {
    background-color: #d0fae580;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-100\/50 {
      background-color: color-mix(in oklab, var(--color-emerald-100) 50%, transparent);
    }
  }

  .bg-emerald-400 {
    background-color: var(--color-emerald-400);
  }

  .bg-emerald-400\/10 {
    background-color: #00d2941a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-400\/10 {
      background-color: color-mix(in oklab, var(--color-emerald-400) 10%, transparent);
    }
  }

  .bg-emerald-400\/20 {
    background-color: #00d29433;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-400\/20 {
      background-color: color-mix(in oklab, var(--color-emerald-400) 20%, transparent);
    }
  }

  .bg-emerald-500 {
    background-color: var(--color-emerald-500);
  }

  .bg-emerald-600 {
    background-color: var(--color-emerald-600);
  }

  .bg-emerald-900 {
    background-color: var(--color-emerald-900);
  }

  .bg-emerald-900\/20 {
    background-color: #004e3b33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-900\/20 {
      background-color: color-mix(in oklab, var(--color-emerald-900) 20%, transparent);
    }
  }

  .bg-emerald-900\/40 {
    background-color: #004e3b66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-900\/40 {
      background-color: color-mix(in oklab, var(--color-emerald-900) 40%, transparent);
    }
  }

  .bg-emerald-900\/50 {
    background-color: #004e3b80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-900\/50 {
      background-color: color-mix(in oklab, var(--color-emerald-900) 50%, transparent);
    }
  }

  .bg-emerald-950 {
    background-color: var(--color-emerald-950);
  }

  .bg-outline-variant\/20 {
    background-color: #bec9c233;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-outline-variant\/20 {
      background-color: color-mix(in oklab, var(--color-outline-variant) 20%, transparent);
    }
  }

  .bg-outline-variant\/30 {
    background-color: #bec9c24d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-outline-variant\/30 {
      background-color: color-mix(in oklab, var(--color-outline-variant) 30%, transparent);
    }
  }

  .bg-primary-50 {
    background-color: var(--color-primary-50);
  }

  .bg-primary-200 {
    background-color: var(--color-primary-200);
  }

  .bg-primary-500 {
    background-color: var(--color-primary-500);
  }

  .bg-primary-700 {
    background-color: var(--color-primary-700);
  }

  .bg-primary-700\/40 {
    background-color: #00453266;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-primary-700\/40 {
      background-color: color-mix(in oklab, var(--color-primary-700) 40%, transparent);
    }
  }

  .bg-primary-700\/60 {
    background-color: #00453299;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-primary-700\/60 {
      background-color: color-mix(in oklab, var(--color-primary-700) 60%, transparent);
    }
  }

  .bg-primary-900 {
    background-color: var(--color-primary-900);
  }

  .bg-red-600 {
    background-color: var(--color-red-600);
  }

  .bg-surface {
    background-color: var(--color-surface);
  }

  .bg-surface-low {
    background-color: var(--color-surface-low);
  }

  .bg-transparent {
    background-color: #0000;
  }

  .bg-white {
    background-color: var(--color-white);
  }

  .bg-white\/5 {
    background-color: #ffffff0d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/5 {
      background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
    }
  }

  .bg-white\/10 {
    background-color: #ffffff1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/10 {
      background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }

  .bg-white\/90 {
    background-color: #ffffffe6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/90 {
      background-color: color-mix(in oklab, var(--color-white) 90%, transparent);
    }
  }

  .bg-gradient-to-br {
    --tw-gradient-position: to bottom right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }

  .from-primary-900 {
    --tw-gradient-from: var(--color-primary-900);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .via-primary-700 {
    --tw-gradient-via: var(--color-primary-700);
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }

  .to-primary-600 {
    --tw-gradient-to: var(--color-primary-600);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .object-cover {
    object-fit: cover;
  }

  .p-1 {
    padding: calc(var(--spacing) * 1);
  }

  .p-2 {
    padding: calc(var(--spacing) * 2);
  }

  .p-4 {
    padding: calc(var(--spacing) * 4);
  }

  .p-5 {
    padding: calc(var(--spacing) * 5);
  }

  .p-6 {
    padding: calc(var(--spacing) * 6);
  }

  .p-8 {
    padding: calc(var(--spacing) * 8);
  }

  .p-10 {
    padding: calc(var(--spacing) * 10);
  }

  .p-12 {
    padding: calc(var(--spacing) * 12);
  }

  .px-0 {
    padding-inline: calc(var(--spacing) * 0);
  }

  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }

  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }

  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }

  .px-5 {
    padding-inline: calc(var(--spacing) * 5);
  }

  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }

  .px-8 {
    padding-inline: calc(var(--spacing) * 8);
  }

  .px-12 {
    padding-inline: calc(var(--spacing) * 12);
  }

  .py-0\.5 {
    padding-block: calc(var(--spacing) * .5);
  }

  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }

  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }

  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }

  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }

  .py-3\.5 {
    padding-block: calc(var(--spacing) * 3.5);
  }

  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }

  .py-5 {
    padding-block: calc(var(--spacing) * 5);
  }

  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }

  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }

  .py-12 {
    padding-block: calc(var(--spacing) * 12);
  }

  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }

  .py-20 {
    padding-block: calc(var(--spacing) * 20);
  }

  .py-24 {
    padding-block: calc(var(--spacing) * 24);
  }

  .py-32 {
    padding-block: calc(var(--spacing) * 32);
  }

  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }

  .pt-6 {
    padding-top: calc(var(--spacing) * 6);
  }

  .pt-8 {
    padding-top: calc(var(--spacing) * 8);
  }

  .pt-12 {
    padding-top: calc(var(--spacing) * 12);
  }

  .pb-1 {
    padding-bottom: calc(var(--spacing) * 1);
  }

  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }

  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }

  .pb-5 {
    padding-bottom: calc(var(--spacing) * 5);
  }

  .pb-6 {
    padding-bottom: calc(var(--spacing) * 6);
  }

  .pl-6 {
    padding-left: calc(var(--spacing) * 6);
  }

  .pl-10 {
    padding-left: calc(var(--spacing) * 10);
  }

  .text-center {
    text-align: center;
  }

  .text-left {
    text-align: left;
  }

  .text-right {
    text-align: right;
  }

  .font-\[\'Inter\'\] {
    font-family: Inter;
  }

  .font-\[\'Space_Grotesk\'\] {
    font-family: Space Grotesk;
  }

  .font-heading {
    font-family: var(--font-heading);
  }

  .font-mono {
    font-family: var(--font-mono);
  }

  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }

  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }

  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }

  .text-5xl {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }

  .text-6xl {
    font-size: var(--text-6xl);
    line-height: var(--tw-leading, var(--text-6xl--line-height));
  }

  .text-8xl {
    font-size: var(--text-8xl);
    line-height: var(--tw-leading, var(--text-8xl--line-height));
  }

  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }

  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }

  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .text-\[10px\] {
    font-size: 10px;
  }

  .text-\[13px\] {
    font-size: 13px;
  }

  .text-\[180px\] {
    font-size: 180px;
  }

  .text-\[240px\] {
    font-size: 240px;
  }

  .leading-\[0\.9\] {
    --tw-leading: .9;
    line-height: .9;
  }

  .leading-\[1\.05\] {
    --tw-leading: 1.05;
    line-height: 1.05;
  }

  .leading-loose {
    --tw-leading: var(--leading-loose);
    line-height: var(--leading-loose);
  }

  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }

  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }

  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }

  .font-black {
    --tw-font-weight: var(--font-weight-black);
    font-weight: var(--font-weight-black);
  }

  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }

  .font-extrabold {
    --tw-font-weight: var(--font-weight-extrabold);
    font-weight: var(--font-weight-extrabold);
  }

  .font-light {
    --tw-font-weight: var(--font-weight-light);
    font-weight: var(--font-weight-light);
  }

  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .tracking-\[0\.2em\] {
    --tw-tracking: .2em;
    letter-spacing: .2em;
  }

  .tracking-\[0\.3em\] {
    --tw-tracking: .3em;
    letter-spacing: .3em;
  }

  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }

  .tracking-tighter {
    --tw-tracking: var(--tracking-tighter);
    letter-spacing: var(--tracking-tighter);
  }

  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }

  .tracking-wider {
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
  }

  .tracking-widest {
    --tw-tracking: var(--tracking-widest);
    letter-spacing: var(--tracking-widest);
  }

  .break-all {
    word-break: break-all;
  }

  .text-accent-500 {
    color: var(--color-accent-500);
  }

  .text-accent-500\/50 {
    color: #10b98180;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-accent-500\/50 {
      color: color-mix(in oklab, var(--color-accent-500) 50%, transparent);
    }
  }

  .text-emerald-50 {
    color: var(--color-emerald-50);
  }

  .text-emerald-50\/80 {
    color: #ecfdf5cc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-emerald-50\/80 {
      color: color-mix(in oklab, var(--color-emerald-50) 80%, transparent);
    }
  }

  .text-emerald-50\/90 {
    color: #ecfdf5e6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-emerald-50\/90 {
      color: color-mix(in oklab, var(--color-emerald-50) 90%, transparent);
    }
  }

  .text-emerald-100 {
    color: var(--color-emerald-100);
  }

  .text-emerald-100\/30 {
    color: #d0fae54d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-emerald-100\/30 {
      color: color-mix(in oklab, var(--color-emerald-100) 30%, transparent);
    }
  }

  .text-emerald-100\/50 {
    color: #d0fae580;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-emerald-100\/50 {
      color: color-mix(in oklab, var(--color-emerald-100) 50%, transparent);
    }
  }

  .text-emerald-100\/70 {
    color: #d0fae5b3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-emerald-100\/70 {
      color: color-mix(in oklab, var(--color-emerald-100) 70%, transparent);
    }
  }

  .text-emerald-100\/80 {
    color: #d0fae5cc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-emerald-100\/80 {
      color: color-mix(in oklab, var(--color-emerald-100) 80%, transparent);
    }
  }

  .text-emerald-200 {
    color: var(--color-emerald-200);
  }

  .text-emerald-400 {
    color: var(--color-emerald-400);
  }

  .text-emerald-400\/70 {
    color: #00d294b3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-emerald-400\/70 {
      color: color-mix(in oklab, var(--color-emerald-400) 70%, transparent);
    }
  }

  .text-emerald-400\/80 {
    color: #00d294cc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-emerald-400\/80 {
      color: color-mix(in oklab, var(--color-emerald-400) 80%, transparent);
    }
  }

  .text-emerald-500 {
    color: var(--color-emerald-500);
  }

  .text-emerald-600 {
    color: var(--color-emerald-600);
  }

  .text-emerald-700 {
    color: var(--color-emerald-700);
  }

  .text-emerald-800 {
    color: var(--color-emerald-800);
  }

  .text-emerald-800\/70 {
    color: #005f46b3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-emerald-800\/70 {
      color: color-mix(in oklab, var(--color-emerald-800) 70%, transparent);
    }
  }

  .text-emerald-900 {
    color: var(--color-emerald-900);
  }

  .text-emerald-900\/80 {
    color: #004e3bcc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-emerald-900\/80 {
      color: color-mix(in oklab, var(--color-emerald-900) 80%, transparent);
    }
  }

  .text-emerald-950 {
    color: var(--color-emerald-950);
  }

  .text-gray-400 {
    color: var(--color-gray-400);
  }

  .text-gray-500 {
    color: var(--color-gray-500);
  }

  .text-gray-600 {
    color: var(--color-gray-600);
  }

  .text-gray-900 {
    color: var(--color-gray-900);
  }

  .text-outline {
    color: var(--color-outline);
  }

  .text-outline-variant {
    color: var(--color-outline-variant);
  }

  .text-outline-variant\/30 {
    color: #bec9c24d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-outline-variant\/30 {
      color: color-mix(in oklab, var(--color-outline-variant) 30%, transparent);
    }
  }

  .text-primary-100 {
    color: var(--color-primary-100);
  }

  .text-primary-200 {
    color: var(--color-primary-200);
  }

  .text-primary-500 {
    color: var(--color-primary-500);
  }

  .text-primary-600 {
    color: var(--color-primary-600);
  }

  .text-primary-700 {
    color: var(--color-primary-700);
  }

  .text-primary-700\/15 {
    color: #00453226;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-primary-700\/15 {
      color: color-mix(in oklab, var(--color-primary-700) 15%, transparent);
    }
  }

  .text-primary-900 {
    color: var(--color-primary-900);
  }

  .text-white {
    color: var(--color-white);
  }

  .text-white\/30 {
    color: #ffffff4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-white\/30 {
      color: color-mix(in oklab, var(--color-white) 30%, transparent);
    }
  }

  .text-white\/40 {
    color: #fff6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-white\/40 {
      color: color-mix(in oklab, var(--color-white) 40%, transparent);
    }
  }

  .text-white\/60 {
    color: #fff9;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-white\/60 {
      color: color-mix(in oklab, var(--color-white) 60%, transparent);
    }
  }

  .text-white\/70 {
    color: #ffffffb3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-white\/70 {
      color: color-mix(in oklab, var(--color-white) 70%, transparent);
    }
  }

  .text-white\/80 {
    color: #fffc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-white\/80 {
      color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }
  }

  .uppercase {
    text-transform: uppercase;
  }

  .italic {
    font-style: italic;
  }

  .underline {
    text-decoration-line: underline;
  }

  .decoration-2 {
    text-decoration-thickness: 2px;
  }

  .underline-offset-4 {
    text-underline-offset: 4px;
  }

  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  .opacity-5 {
    opacity: .05;
  }

  .opacity-10 {
    opacity: .1;
  }

  .opacity-20 {
    opacity: .2;
  }

  .opacity-50 {
    opacity: .5;
  }

  .opacity-80 {
    opacity: .8;
  }

  .opacity-90 {
    opacity: .9;
  }

  .mix-blend-screen {
    mix-blend-mode: screen;
  }

  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring-4 {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring-primary-100 {
    --tw-ring-color: var(--color-primary-100);
  }

  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }

  .blur {
    --tw-blur: blur(8px);
    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, );
  }

  .brightness-75 {
    --tw-brightness: brightness(75%);
    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, );
  }

  .brightness-125 {
    --tw-brightness: brightness(125%);
    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, );
  }

  .contrast-125 {
    --tw-contrast: contrast(125%);
    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, );
  }

  .grayscale {
    --tw-grayscale: grayscale(100%);
    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, );
  }

  .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, );
  }

  .backdrop-blur-sm {
    --tw-backdrop-blur: blur(var(--blur-sm));
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .duration-50 {
    --tw-duration: 50ms;
    transition-duration: 50ms;
  }

  .duration-75 {
    --tw-duration: 75ms;
    transition-duration: 75ms;
  }

  .duration-200 {
    --tw-duration: .2s;
    transition-duration: .2s;
  }

  .duration-300 {
    --tw-duration: .3s;
    transition-duration: .3s;
  }

  .duration-500 {
    --tw-duration: .5s;
    transition-duration: .5s;
  }

  .duration-700 {
    --tw-duration: .7s;
    transition-duration: .7s;
  }

  .ease-linear {
    --tw-ease: linear;
    transition-timing-function: linear;
  }

  .\[mm\:ss\] {
    mm: ss;
  }

  .group-open\:rotate-45:is(:where(.group):is([open], :popover-open, :open) *) {
    rotate: 45deg;
  }

  .group-open\:rotate-180:is(:where(.group):is([open], :popover-open, :open) *) {
    rotate: 180deg;
  }

  @media (hover: hover) {
    .group-hover\:translate-x-2:is(:where(.group):hover *) {
      --tw-translate-x: calc(var(--spacing) * 2);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }

  @media (hover: hover) {
    .group-hover\:rotate-45:is(:where(.group):hover *) {
      rotate: 45deg;
    }
  }

  @media (hover: hover) {
    .group-hover\:gap-2:is(:where(.group):hover *) {
      gap: calc(var(--spacing) * 2);
    }
  }

  @media (hover: hover) {
    .group-hover\:bg-emerald-500:is(:where(.group):hover *) {
      background-color: var(--color-emerald-500);
    }
  }

  @media (hover: hover) {
    .group-hover\:bg-emerald-900:is(:where(.group):hover *) {
      background-color: var(--color-emerald-900);
    }
  }

  @media (hover: hover) {
    .group-hover\:bg-transparent:is(:where(.group):hover *) {
      background-color: #0000;
    }
  }

  @media (hover: hover) {
    .group-hover\:text-accent-500:is(:where(.group):hover *) {
      color: var(--color-accent-500);
    }
  }

  @media (hover: hover) {
    .group-hover\:text-emerald-100\/70:is(:where(.group):hover *) {
      color: #d0fae5b3;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .group-hover\:text-emerald-100\/70:is(:where(.group):hover *) {
        color: color-mix(in oklab, var(--color-emerald-100) 70%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .group-hover\:text-emerald-400:is(:where(.group):hover *) {
      color: var(--color-emerald-400);
    }
  }

  @media (hover: hover) {
    .group-hover\:text-emerald-600:is(:where(.group):hover *) {
      color: var(--color-emerald-600);
    }
  }

  @media (hover: hover) {
    .group-hover\:text-white:is(:where(.group):hover *) {
      color: var(--color-white);
    }
  }

  @media (hover: hover) {
    .group-hover\:opacity-40:is(:where(.group):hover *) {
      opacity: .4;
    }
  }

  .selection\:bg-emerald-500 ::selection, .selection\:bg-emerald-500::selection {
    background-color: var(--color-emerald-500);
  }

  .selection\:text-white ::selection, .selection\:text-white::selection {
    color: var(--color-white);
  }

  .placeholder\:text-outline-variant\/50::placeholder {
    color: #bec9c280;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .placeholder\:text-outline-variant\/50::placeholder {
      color: color-mix(in oklab, var(--color-outline-variant) 50%, transparent);
    }
  }

  @media (hover: hover) {
    .hover\:border-accent-500\/30:hover {
      border-color: #10b9814d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-accent-500\/30:hover {
        border-color: color-mix(in oklab, var(--color-accent-500) 30%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:border-accent-500\/40:hover {
      border-color: #10b98166;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-accent-500\/40:hover {
        border-color: color-mix(in oklab, var(--color-accent-500) 40%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:border-emerald-300:hover {
      border-color: var(--color-emerald-300);
    }
  }

  @media (hover: hover) {
    .hover\:border-emerald-600:hover {
      border-color: var(--color-emerald-600);
    }
  }

  @media (hover: hover) {
    .hover\:border-emerald-950:hover {
      border-color: var(--color-emerald-950);
    }
  }

  @media (hover: hover) {
    .hover\:border-primary-700:hover {
      border-color: var(--color-primary-700);
    }
  }

  @media (hover: hover) {
    .hover\:bg-accent-500\/90:hover {
      background-color: #10b981e6;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-accent-500\/90:hover {
        background-color: color-mix(in oklab, var(--color-accent-500) 90%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-emerald-300:hover {
      background-color: var(--color-emerald-300);
    }
  }

  @media (hover: hover) {
    .hover\:bg-emerald-400:hover {
      background-color: var(--color-emerald-400);
    }
  }

  @media (hover: hover) {
    .hover\:bg-emerald-400\/10:hover {
      background-color: #00d2941a;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-emerald-400\/10:hover {
        background-color: color-mix(in oklab, var(--color-emerald-400) 10%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-emerald-900:hover {
      background-color: var(--color-emerald-900);
    }
  }

  @media (hover: hover) {
    .hover\:bg-emerald-900\/50:hover {
      background-color: #004e3b80;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-emerald-900\/50:hover {
        background-color: color-mix(in oklab, var(--color-emerald-900) 50%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-emerald-950:hover {
      background-color: var(--color-emerald-950);
    }
  }

  @media (hover: hover) {
    .hover\:bg-surface-low:hover {
      background-color: var(--color-surface-low);
    }
  }

  @media (hover: hover) {
    .hover\:bg-white\/10:hover {
      background-color: #ffffff1a;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-white\/10:hover {
        background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:text-accent-500:hover {
      color: var(--color-accent-500);
    }
  }

  @media (hover: hover) {
    .hover\:text-emerald-50:hover {
      color: var(--color-emerald-50);
    }
  }

  @media (hover: hover) {
    .hover\:text-emerald-200:hover {
      color: var(--color-emerald-200);
    }
  }

  @media (hover: hover) {
    .hover\:text-emerald-400:hover {
      color: var(--color-emerald-400);
    }
  }

  @media (hover: hover) {
    .hover\:text-emerald-950:hover {
      color: var(--color-emerald-950);
    }
  }

  @media (hover: hover) {
    .hover\:text-primary-600:hover {
      color: var(--color-primary-600);
    }
  }

  @media (hover: hover) {
    .hover\:text-white:hover {
      color: var(--color-white);
    }
  }

  @media (hover: hover) {
    .hover\:grayscale-0:hover {
      --tw-grayscale: grayscale(0%);
      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, );
    }
  }

  .focus\:ring-0:focus {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .focus\:ring-2:focus {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .focus\:ring-emerald-400:focus {
    --tw-ring-color: var(--color-emerald-400);
  }

  .active\:scale-95:active {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  @media (min-width: 40rem) {
    .sm\:left-1\/2 {
      left: 50%;
    }
  }

  @media (min-width: 40rem) {
    .sm\:ml-0 {
      margin-left: calc(var(--spacing) * 0);
    }
  }

  @media (min-width: 40rem) {
    .sm\:block {
      display: block;
    }
  }

  @media (min-width: 40rem) {
    .sm\:-translate-x-px {
      --tw-translate-x: -1px;
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }

  @media (min-width: 40rem) {
    .sm\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 40rem) {
    .sm\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (min-width: 40rem) {
    .sm\:flex-row {
      flex-direction: row;
    }
  }

  @media (min-width: 40rem) {
    .sm\:flex-row-reverse {
      flex-direction: row-reverse;
    }
  }

  @media (min-width: 40rem) {
    .sm\:items-center {
      align-items: center;
    }
  }

  @media (min-width: 40rem) {
    .sm\:justify-center {
      justify-content: center;
    }
  }

  @media (min-width: 40rem) {
    .sm\:gap-4 {
      gap: calc(var(--spacing) * 4);
    }
  }

  @media (min-width: 40rem) {
    .sm\:gap-12 {
      gap: calc(var(--spacing) * 12);
    }
  }

  @media (min-width: 40rem) {
    .sm\:px-6 {
      padding-inline: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 40rem) {
    .sm\:text-right {
      text-align: right;
    }
  }

  @media (min-width: 40rem) {
    .sm\:text-4xl {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }

  @media (min-width: 40rem) {
    .sm\:text-5xl {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:col-span-4 {
      grid-column: span 4 / span 4;
    }
  }

  @media (min-width: 48rem) {
    .md\:col-span-5 {
      grid-column: span 5 / span 5;
    }
  }

  @media (min-width: 48rem) {
    .md\:col-span-6 {
      grid-column: span 6 / span 6;
    }
  }

  @media (min-width: 48rem) {
    .md\:col-span-7 {
      grid-column: span 7 / span 7;
    }
  }

  @media (min-width: 48rem) {
    .md\:col-span-8 {
      grid-column: span 8 / span 8;
    }
  }

  @media (min-width: 48rem) {
    .md\:mb-0 {
      margin-bottom: calc(var(--spacing) * 0);
    }
  }

  @media (min-width: 48rem) {
    .md\:block {
      display: block;
    }
  }

  @media (min-width: 48rem) {
    .md\:flex {
      display: flex;
    }
  }

  @media (min-width: 48rem) {
    .md\:w-1\/2 {
      width: 50%;
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-5 {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-12 {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:flex-row {
      flex-direction: row;
    }
  }

  @media (min-width: 48rem) {
    .md\:items-center {
      align-items: center;
    }
  }

  @media (min-width: 48rem) {
    .md\:px-20 {
      padding-inline: calc(var(--spacing) * 20);
    }
  }

  @media (min-width: 48rem) {
    .md\:text-2xl {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:text-5xl {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:text-6xl {
      font-size: var(--text-6xl);
      line-height: var(--tw-leading, var(--text-6xl--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:text-7xl {
      font-size: var(--text-7xl);
      line-height: var(--tw-leading, var(--text-7xl--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:text-8xl {
      font-size: var(--text-8xl);
      line-height: var(--tw-leading, var(--text-8xl--line-height));
    }
  }

  @media (min-width: 64rem) {
    .lg\:col-span-4 {
      grid-column: span 4 / span 4;
    }
  }

  @media (min-width: 64rem) {
    .lg\:col-span-5 {
      grid-column: span 5 / span 5;
    }
  }

  @media (min-width: 64rem) {
    .lg\:col-span-7 {
      grid-column: span 7 / span 7;
    }
  }

  @media (min-width: 64rem) {
    .lg\:col-span-8 {
      grid-column: span 8 / span 8;
    }
  }

  @media (min-width: 64rem) {
    .lg\:mt-10 {
      margin-top: calc(var(--spacing) * 10);
    }
  }

  @media (min-width: 64rem) {
    .lg\:block {
      display: block;
    }
  }

  @media (min-width: 64rem) {
    .lg\:w-1\/2 {
      width: 50%;
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-6 {
      grid-template-columns: repeat(6, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-12 {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-\[2fr_1fr\] {
      grid-template-columns: 2fr 1fr;
    }
  }

  @media (min-width: 64rem) {
    .lg\:flex-row {
      flex-direction: row;
    }
  }

  @media (min-width: 64rem) {
    .lg\:items-start {
      align-items: flex-start;
    }
  }

  @media (min-width: 64rem) {
    .lg\:p-10 {
      padding: calc(var(--spacing) * 10);
    }
  }

  @media (min-width: 64rem) {
    .lg\:px-8 {
      padding-inline: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 64rem) {
    .lg\:py-20 {
      padding-block: calc(var(--spacing) * 20);
    }
  }

  @media (min-width: 64rem) {
    .lg\:py-24 {
      padding-block: calc(var(--spacing) * 24);
    }
  }

  @media (min-width: 64rem) {
    .lg\:py-28 {
      padding-block: calc(var(--spacing) * 28);
    }
  }

  @media (min-width: 64rem) {
    .lg\:text-5xl {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }

  @media (min-width: 64rem) {
    .lg\:text-7xl {
      font-size: var(--text-7xl);
      line-height: var(--tw-leading, var(--text-7xl--line-height));
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-black {
      background-color: var(--color-black);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-emerald-950 {
      background-color: var(--color-emerald-950);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-emerald-50 {
      color: var(--color-emerald-50);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-emerald-400 {
      color: var(--color-emerald-400);
    }
  }
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--font-sans);
}

.cad-grid {
  background-image: linear-gradient(to right, #bec9c21f 1px, #0000 1px), linear-gradient(#bec9c21f 1px, #0000 1px);
  background-size: 60px 60px;
}

.technical-line {
  border-color: #bec9c233;
}

.corner-marks {
  position: relative;
}

.corner-marks:before, .corner-marks:after {
  content: "";
  pointer-events: none;
  width: 16px;
  height: 16px;
  position: absolute;
}

.corner-marks:before {
  border-top: 2px solid #bec9c266;
  border-left: 2px solid #bec9c266;
  top: 0;
  left: 0;
}

.corner-marks:after {
  border-bottom: 2px solid #bec9c266;
  border-right: 2px solid #bec9c266;
  bottom: 0;
  right: 0;
}

.brushed-steel {
  background: linear-gradient(135deg, #004532, #065f46);
}

.ghost-border {
  border: 1px solid #bec9c24d;
}

body {
  font-family: var(--font-inter, "Inter"), sans-serif;
  font-size: 16px;
}

h1, h2, h3, .font-heading {
  font-family: var(--font-space-grotesk, "Space Grotesk"), sans-serif;
}

:focus-visible {
  outline-offset: 5px;
  outline: 3px solid #07986f;
}

.industrial-dark :focus-visible, .industrial-hero :focus-visible, .industrial-header :focus-visible, .industrial-footer :focus-visible, .industrial-callout :focus-visible {
  outline-color: #6ee7b7;
}

[id] {
  scroll-margin-top: 90px;
}

.skip-link {
  z-index: 100;
  color: #002820;
  background: #fff;
  padding: 12px 20px;
  position: fixed;
  top: 8px;
  left: 8px;
  transform: translateY(-160%);
}

.skip-link:focus {
  transform: none;
}

.industrial-page {
  color: #10252d;
  background: #f7faf8;
}

.industrial-container {
  width: min(100% - 96px, 1280px);
  margin-inline: auto;
}

.industrial-page h1, .industrial-page h2, .industrial-page h3 {
  letter-spacing: -.035em;
  text-wrap: balance;
  font-weight: 600;
}

.industrial-page h1 {
  font-size: clamp(2.35rem, 3.65vw, 3.6rem);
  line-height: 1.09;
}

.industrial-page h2 {
  font-size: clamp(1.8rem, 2.6vw, 2.65rem);
  line-height: 1.16;
}

.industrial-page h3 {
  font-size: 1.24rem;
  line-height: 1.3;
}

.industrial-page p {
  line-height: 1.65;
}

.industrial-eyebrow {
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #047857;
  margin: 0 0 14px;
  font-size: .8rem;
  font-weight: 700;
  line-height: 1.5 !important;
}

.industrial-dark .industrial-eyebrow, .industrial-hero .industrial-eyebrow, .industrial-callout .industrial-eyebrow {
  color: #48e0b5;
}

.industrial-section {
  padding-block: 72px;
}

.industrial-dark {
  color: #fff;
  background: #003d30;
}

.industrial-muted {
  background: #edf3f0;
}

.industrial-section-heading {
  justify-content: space-between;
  align-items: end;
  gap: 60px;
  margin-bottom: 32px;
  display: flex;
}

.industrial-section-heading > div:first-child {
  max-width: 770px;
}

.industrial-heading-intro {
  color: #425b60;
  flex-shrink: 0;
  max-width: 370px;
}

.industrial-dark .industrial-heading-intro {
  color: #d2e7df;
}

.industrial-button {
  color: #002820;
  background: #17d4a2;
  justify-content: center;
  align-items: center;
  gap: 16px;
  min-height: 48px;
  padding: 14px 23px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  transition: background .15s;
  display: inline-flex;
}

.industrial-button:hover {
  background: #63edc6;
}

.industrial-link {
  text-underline-offset: 6px;
  align-items: center;
  gap: 16px;
  min-height: 44px;
  font-weight: 600;
  display: inline-flex;
}

.industrial-link:hover {
  text-decoration: underline;
}

.industrial-link svg {
  flex-shrink: 0;
}

.industrial-actions {
  flex-wrap: wrap;
  align-items: center;
  gap: 16px 28px;
  margin-top: 28px;
  display: flex;
}

.industrial-hero {
  color: #fff;
  background-color: #004333;
  background-image: linear-gradient(110deg, #00433344, #002e26b0), linear-gradient(#9ad5be0b 1px, #0000 1px), linear-gradient(90deg, #9ad5be0b 1px, #0000 1px);
  background-size: auto, 48px 48px, 48px 48px;
  overflow: hidden;
}

.industrial-home-hero {
  padding-top: 64px;
}

.industrial-hero-grid {
  grid-template-columns: 1.08fr 1fr;
  align-items: center;
  gap: 30px;
  display: grid;
}

.industrial-hero-copy {
  z-index: 1;
  padding-block: 20px;
  position: relative;
}

.industrial-lead {
  color: #ecf8f2;
  max-width: 540px;
  margin-top: 23px;
  font-size: 1.16rem;
}

.industrial-hero-promise {
  color: #47dfb3;
  font: 600 1.65rem/1.25 var(--font-space-grotesk, sans-serif);
  max-width: 520px;
  margin-top: 18px;
}

.industrial-home-hero .industrial-button {
  background: #fff;
}

.industrial-home-hero .industrial-actions .industrial-link {
  border: 1px solid #99bbad;
  padding: 11px 18px;
}

.industrial-hero-benefits {
  border-top: 1px solid #ffffff40;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 34px;
  padding: 28px 0;
  display: grid;
}

.industrial-hero-benefits span {
  justify-content: center;
  align-items: center;
  gap: 22px;
  padding: 8px 20px;
  font-size: 1rem;
  display: flex;
}

.industrial-hero-benefits span + span {
  border-left: 1px solid #ffffff40;
}

.industrial-hero-benefits svg {
  color: #b5d9ca;
  flex-shrink: 0;
  width: 30px;
  height: 30px;
}

.cylinder-figure {
  isolation: isolate;
  min-width: 0;
  position: relative;
}

.cylinder-image {
  z-index: 1;
  filter: drop-shadow(0 20px 30px #001d2080);
  width: 120%;
  max-width: none;
  height: auto;
  margin-left: -10%;
  position: relative;
}

.cylinder-figure figcaption {
  text-align: right;
  color: #d3e8df;
  z-index: 2;
  font-size: .8rem;
  position: relative;
}

.blueprint-ring {
  z-index: 0;
  border: 1px solid #9cc9b45e;
  border-radius: 50%;
  width: 160px;
  height: 160px;
  position: absolute;
  top: 0;
  left: 8%;
}

.blueprint-ring:before {
  content: "";
  border: 1px solid #9cc9b45e;
  border-radius: 50%;
  position: absolute;
  inset: 13px;
}

.blueprint-ring:after {
  content: "";
  background: linear-gradient(90deg, #0000 calc(50% - .5px), #9cc9b45e 50%, #0000 calc(50% + 1px)), linear-gradient(#0000 calc(50% - .5px), #9cc9b45e 50%, #0000 calc(50% + 1px));
  position: absolute;
  inset: -25px;
}

.blueprint-ring-two {
  width: 110px;
  height: 110px;
  inset: auto 5% 0 auto;
}

.industrial-service-cards {
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  display: grid;
}

.industrial-service-card {
  text-align: center;
  background: #fff;
  border: 1px solid #dce6e1;
  flex-direction: column;
  align-items: center;
  padding: 24px;
  transition: border-color .15s;
  display: flex;
}

.industrial-service-card:hover {
  border-color: #059669;
}

.industrial-card-number {
  color: #047857;
  align-items: center;
  gap: 16px;
  width: 100%;
  font-size: 1.15rem;
  font-weight: 600;
  display: flex;
}

.industrial-card-number:after {
  content: "";
  background: #d0dfd7;
  flex: 1;
  height: 1px;
}

.industrial-service-icon {
  margin: 28px 0 24px;
}

.industrial-service-card p {
  color: #496266;
  margin-top: 14px;
}

.industrial-card-link {
  align-items: center;
  gap: 20px;
  margin-top: auto;
  padding-top: 24px;
  font-weight: 600;
  display: flex;
}

.industrial-sector-cards {
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  display: grid;
}

.industrial-sector-card {
  border: 1px solid #d5e1da;
  flex-direction: column;
  justify-content: space-between;
  gap: 20px;
  padding: 25px;
  display: flex;
}

.industrial-sector-card:hover {
  border-color: #059669;
}

.industrial-sector-card > span {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  font-weight: 600;
  display: flex;
}

.industrial-sector-card > span svg {
  flex-shrink: 0;
}

.sector-photos .industrial-sector-card {
  aspect-ratio: 4 / 3;
  background: #004532;
  border: 0;
  justify-content: end;
  padding: 20px;
  position: relative;
  overflow: hidden;
}

.sector-photos .industrial-sector-card:after {
  content: "";
  pointer-events: none;
  background: linear-gradient(#0000, #002820f2);
  position: absolute;
  inset: 25% 0 0;
}

.sector-photos .industrial-sector-card > span {
  z-index: 2;
  position: relative;
}

.sector-atlas {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.sector-atlas img {
  width: 200%;
  max-width: none;
  height: 200%;
  position: absolute;
}

.sector-atlas-0 img {
  top: 0;
  left: 0;
}

.sector-atlas-1 img {
  top: 0;
  right: 0;
}

.sector-atlas-2 img {
  bottom: 0;
  left: 0;
}

.sector-atlas-3 img {
  bottom: 0;
  right: 0;
}

.industrial-image-note {
  text-align: right;
  color: #d2e7df;
  margin-top: 12px;
  font-size: .8rem;
}

.industrial-steps {
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  padding: 0;
  list-style: none;
  display: grid;
}

.industrial-steps li {
  border-left: 1px solid #c2d5cb;
  padding-left: 24px;
}

.industrial-step-number {
  font: 600 2rem/1.2 var(--font-space-grotesk, sans-serif);
  color: #008663;
  margin-bottom: 10px;
  display: block;
}

.industrial-steps p {
  color: #425b60;
  margin-top: 10px;
}

.industrial-home-process .industrial-link {
  margin-top: 28px;
}

.industrial-callout {
  color: #fff;
  background: linear-gradient(110deg, #004532, #007d61);
  padding-block: 38px;
}

.industrial-callout .industrial-container {
  justify-content: space-between;
  align-items: center;
  gap: 40px;
  display: flex;
}

.industrial-callout h2 {
  max-width: 700px;
}

.industrial-callout .industrial-button {
  flex-shrink: 0;
}

.industrial-editorial {
  background: #f7faf8;
  padding-block: 44px;
}

.industrial-editorial .industrial-container {
  grid-template-columns: minmax(0, 1fr) 260px;
  align-items: center;
  gap: 70px;
  display: grid;
}

.industrial-editorial h2 {
  font-size: 1.65rem;
}

.industrial-prose p {
  color: #425b60;
  margin-top: 15px;
}

.industrial-editorial nav {
  border-left: 1px solid #bdd3c7;
  flex-direction: column;
  gap: 10px;
  padding-left: 28px;
  display: flex;
}

.industrial-breadcrumb {
  color: #d7ebe2;
  padding-top: 30px;
  font-size: .875rem;
  line-height: 1.6;
}

.industrial-breadcrumb ol {
  flex-wrap: wrap;
  column-gap: 8px;
  display: flex;
}

.industrial-breadcrumb li + li:before {
  content: "/";
  color: #92bbaa;
  margin-right: 8px;
}

.industrial-breadcrumb a {
  text-underline-offset: 3px;
  text-decoration: underline;
}

.industrial-service-hero {
  padding-bottom: 55px;
}

.industrial-service-hero .industrial-hero-grid {
  align-items: start;
  padding-top: 25px;
}

.industrial-service-hero h1 {
  text-transform: uppercase;
  font-size: clamp(2.3rem, 3.4vw, 3.3rem);
}

.industrial-service-hero .industrial-hero-copy {
  padding-top: 24px;
}

.project-brief {
  z-index: 2;
  background: #00382bc9;
  border: 1px solid #b7dbcc;
  width: 75%;
  margin: 0 0 0 auto;
  padding: 22px;
  position: relative;
}

.project-brief .industrial-eyebrow {
  color: #e0f0e8;
  font-size: .75rem;
}

.project-brief > div {
  border-top: 1px solid #d0e9dd45;
  align-items: center;
  gap: 18px;
  padding-block: 12px;
  display: flex;
}

.industrial-engineering {
  grid-template-columns: 1.1fr 1fr;
  align-items: center;
  gap: 70px;
  display: grid;
}

.industrial-engineering .cylinder-detail {
  margin-top: 20px;
}

.industrial-technical-details details {
  border-top: 1px solid #c3e1d277;
}

.industrial-technical-details details:last-child {
  border-bottom: 1px solid #c3e1d277;
}

.industrial-technical-details summary {
  cursor: pointer;
  align-items: center;
  gap: 16px;
  padding: 22px 0;
  font-weight: 600;
  list-style: none;
  display: flex;
}

.industrial-technical-details summary::-webkit-details-marker {
  display: none;
}

.industrial-technical-details summary > span {
  margin-left: auto;
  font-size: 1.4rem;
}

.industrial-technical-details details[open] summary > span {
  transform: rotate(45deg);
}

.industrial-technical-details p {
  color: #d5e8df;
  padding-bottom: 22px;
}

.industrial-faq {
  gap: 8px;
  display: grid;
}

.industrial-faq details {
  background: #f9fcfa;
  border: 1px solid #c4d6cb;
}

.industrial-faq summary {
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 18px 22px;
  font-weight: 600;
  list-style: none;
  display: flex;
}

.industrial-faq summary::-webkit-details-marker {
  display: none;
}

.industrial-faq summary span {
  font-size: 1.5rem;
  line-height: 1;
}

.industrial-faq details[open] summary span {
  transform: rotate(45deg);
}

.industrial-faq details p {
  color: #425b60;
  max-width: 1050px;
  padding: 0 22px 22px;
}

.industrial-content-grid {
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  display: grid;
}

.industrial-content-grid article {
  border-top: 1px solid #c4d7cd;
  padding-top: 22px;
}

.industrial-content-grid p {
  color: #425b60;
  margin-top: 12px;
}

.industrial-dark .industrial-content-grid p {
  color: #d5e8df;
}

.industrial-hub-sections {
  gap: 0;
  display: grid;
}

.industrial-hub-section {
  border-top: 1px solid #c4d7cd;
  grid-template-columns: .9fr 1.1fr;
  gap: 60px;
  padding-block: 38px;
  display: grid;
}

.industrial-hub-section p + p {
  margin-top: 12px;
}

.industrial-hub-section .industrial-link {
  margin-top: 16px;
}

.industrial-anchor-nav {
  border-bottom: 1px solid #c4d7cd;
  flex-wrap: wrap;
  gap: 12px 24px;
  padding: 22px 0;
  display: flex;
}

.industrial-anchor-nav a {
  text-underline-offset: 5px;
  align-items: center;
  min-height: 44px;
  text-decoration: underline;
  display: inline-flex;
}

.industrial-header {
  z-index: 50;
  color: #fff;
  background: #003d30;
  border-bottom: 1px solid #a3d1ba17;
  position: sticky;
  top: 0;
}

.industrial-header-inner {
  justify-content: space-between;
  align-items: center;
  gap: 22px;
  min-height: 78px;
  display: flex;
}

.industrial-brand {
  font: 700 1.35rem/1.2 var(--font-space-grotesk, sans-serif);
  letter-spacing: -.055em;
  text-transform: uppercase;
  white-space: nowrap;
}

.industrial-desktop-nav {
  align-items: center;
  gap: 22px;
  display: flex;
}

.industrial-desktop-nav > a, .industrial-nav-group summary {
  cursor: pointer;
  align-items: center;
  gap: 5px;
  min-height: 44px;
  font-size: .9rem;
  display: flex;
}

.industrial-desktop-nav a:hover, .industrial-nav-group summary:hover {
  color: #6ee7b7;
}

.industrial-nav-group {
  position: relative;
}

.industrial-nav-group summary {
  list-style: none;
}

.industrial-nav-group summary::-webkit-details-marker {
  display: none;
}

.industrial-dropdown {
  background: #002e25;
  border: 1px solid #9bc3af55;
  width: 295px;
  padding: 12px;
  position: absolute;
  top: 100%;
  left: -20px;
  box-shadow: 0 15px 30px #001d2029;
}

.industrial-dropdown a {
  padding: 12px;
  line-height: 1.4;
  display: block;
}

.industrial-dropdown a:hover {
  background: #004532;
}

.industrial-header-cta {
  min-height: 44px;
  padding: 12px 20px;
  font-size: .875rem;
}

.industrial-mobile-menu {
  display: none;
}

.industrial-footer {
  color: #ecf6f1;
  background: #002e25;
  padding-block: 45px 20px;
  font-size: 1rem;
}

.industrial-footer-main {
  grid-template-columns: 1.2fr 1.1fr .8fr 1.1fr;
  gap: 35px;
  padding-bottom: 35px;
  display: grid;
}

.industrial-footer-main > div:first-child p {
  color: #c4dcd0;
  margin-top: 18px;
  line-height: 1.6;
}

.industrial-footer nav {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.industrial-footer nav a, .industrial-footer-contact a {
  align-items: center;
  gap: 14px;
  min-height: 44px;
  line-height: 1.4;
  display: flex;
}

.industrial-footer a:hover {
  text-underline-offset: 5px;
  text-decoration: underline;
}

.industrial-footer-contact p {
  align-items: center;
  gap: 14px;
  min-height: 44px;
  display: flex;
}

.industrial-footer-contact svg {
  flex-shrink: 0;
}

.industrial-subfooter {
  color: #c4dcd0;
  border-top: 1px solid #c3e1d240;
  justify-content: space-between;
  gap: 20px;
  padding-top: 22px;
  display: flex;
}

@media (max-width: 1150px) {
  .industrial-container {
    width: calc(100% - 64px);
  }

  .industrial-desktop-nav {
    gap: 14px;
  }

  .industrial-header-cta {
    display: none;
  }

  .industrial-heading-intro {
    max-width: 300px;
  }

  .industrial-service-card {
    padding: 20px 16px;
  }
}

@media (max-width: 767px) {
  .industrial-container {
    width: calc(100% - 40px);
  }

  .industrial-page h1 {
    font-size: clamp(2rem, 7.8vw, 2.8rem);
  }

  .industrial-page h2 {
    font-size: clamp(1.7rem, 6.3vw, 2.2rem);
  }

  .industrial-section {
    padding-block: 40px;
  }

  .industrial-section-heading {
    margin-bottom: 25px;
    display: block;
  }

  .industrial-heading-intro {
    max-width: none;
    margin-top: 20px;
  }

  .industrial-eyebrow {
    letter-spacing: .1em;
    margin-bottom: 10px;
    font-size: .75rem;
  }

  .industrial-home-hero {
    padding-top: 26px;
  }

  .industrial-hero-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .industrial-hero-copy {
    padding: 0;
  }

  .industrial-hero-promise {
    margin-top: 16px;
    font-size: 1.2rem;
  }

  .industrial-lead {
    margin-top: 17px;
    font-size: 1rem;
  }

  .industrial-actions {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    margin-top: 22px;
    display: flex;
  }

  .industrial-actions .industrial-link {
    justify-content: space-between;
  }

  .industrial-home-hero .industrial-button {
    background: #17d4a2;
  }

  .industrial-home-hero .industrial-actions .industrial-link {
    border: 0;
    padding: 10px 0;
  }

  .cylinder-image {
    width: 100%;
    margin-left: 0;
  }

  .cylinder-figure {
    padding-bottom: 5px;
  }

  .blueprint-ring {
    width: 100px;
    height: 100px;
  }

  .blueprint-ring-two {
    width: 75px;
    height: 75px;
  }

  .industrial-hero-benefits {
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 20px;
    padding: 12px 0 20px;
  }

  .industrial-hero-benefits span {
    justify-content: start;
    padding: 12px 0;
  }

  .industrial-hero-benefits span + span {
    border-top: 1px solid #ffffff20;
    border-left: 0;
  }

  .industrial-hero-benefits svg {
    width: 24px;
    height: 24px;
  }

  .industrial-service-cards {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .industrial-service-card {
    text-align: left;
    background: none;
    border: 0;
    border-top: 1px solid #c4d7cd;
    grid-template-columns: 28px 38px 1fr 20px;
    align-items: center;
    gap: 10px 14px;
    padding: 20px 0;
    display: grid;
  }

  .industrial-card-number {
    font-size: 1rem;
  }

  .industrial-card-number:after {
    display: none;
  }

  .industrial-service-icon {
    width: 34px;
    height: 34px;
    margin: 0;
  }

  .industrial-service-card h3 {
    font-size: 1.08rem;
  }

  .industrial-service-card p {
    grid-column: 3 / 5;
    margin: 0;
    font-size: 1rem;
  }

  .industrial-card-link {
    grid-area: 1 / 4;
    margin: 0;
    padding: 0;
    font-size: 0;
  }

  .industrial-sector-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .industrial-sector-card {
    padding: 18px 12px;
  }

  .industrial-sector-card > span {
    flex-wrap: wrap;
    gap: 5px;
    font-size: 1rem;
  }

  .sector-photos .industrial-sector-card {
    aspect-ratio: 4 / 3;
    padding: 10px;
  }

  .sector-photos .industrial-sector-card > span {
    font-size: .94rem;
  }

  .sector-photos .industrial-sector-card > span svg {
    width: 16px;
  }

  .industrial-steps {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .industrial-steps li {
    border: 0;
    border-top: 1px solid #c4d7cd;
    grid-template-columns: 40px 1fr;
    gap: 20px;
    padding: 20px 0;
    display: grid;
  }

  .industrial-steps li > div {
    border-left: 1px solid #c4d7cd;
    padding-left: 20px;
  }

  .industrial-step-number {
    font-size: 1.8rem;
  }

  .industrial-steps p {
    margin-top: 8px;
  }

  .industrial-callout .industrial-container {
    flex-direction: column;
    align-items: stretch;
    gap: 22px;
  }

  .industrial-editorial {
    padding-block: 32px;
  }

  .industrial-editorial .industrial-container {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .industrial-editorial h2 {
    font-size: 1.5rem;
  }

  .industrial-editorial nav {
    border-left: 0;
    gap: 0;
    padding-left: 0;
  }

  .industrial-breadcrumb {
    padding-top: 20px;
    font-size: .8125rem;
  }

  .industrial-service-hero {
    padding-bottom: 30px;
  }

  .industrial-service-hero .industrial-hero-grid {
    gap: 18px;
    padding-top: 20px;
  }

  .industrial-service-hero .industrial-hero-copy {
    padding: 0;
  }

  .industrial-service-hero h1 {
    text-transform: none;
    font-size: clamp(2rem, 7.8vw, 2.8rem);
  }

  .project-brief {
    width: 100%;
    margin-top: 15px;
    padding: 20px;
  }

  .industrial-engineering {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .industrial-engineering .cylinder-detail {
    max-width: 420px;
    margin-inline: auto;
  }

  .industrial-content-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .industrial-hub-section {
    grid-template-columns: 1fr;
    gap: 20px;
    padding-block: 30px;
  }

  .industrial-faq summary {
    padding: 16px;
  }

  .industrial-faq details p {
    padding: 0 16px 20px;
  }

  .industrial-header-inner {
    min-height: 64px;
  }

  .industrial-brand {
    font-size: 1.2rem;
  }

  .industrial-desktop-nav {
    display: none;
  }

  .industrial-mobile-menu {
    display: block;
  }

  .industrial-mobile-menu > summary {
    cursor: pointer;
    justify-content: center;
    align-items: center;
    min-width: 44px;
    min-height: 44px;
    list-style: none;
    display: flex;
  }

  .industrial-mobile-menu > summary::-webkit-details-marker {
    display: none;
  }

  .industrial-mobile-menu > summary span {
    clip-path: inset(50%);
    width: 1px;
    height: 1px;
    position: absolute;
    overflow: hidden;
  }

  .industrial-mobile-menu > nav {
    background: #00362a;
    border-bottom: 1px solid #b0d4c366;
    max-height: calc(100dvh - 64px);
    padding: 20px;
    position: absolute;
    inset: 64px 0 auto;
    overflow: auto;
    box-shadow: 0 20px 30px #001d2040;
  }

  .industrial-mobile-menu nav a {
    align-items: center;
    min-height: 44px;
    padding: 12px 0;
    line-height: 1.4;
    display: flex;
  }

  .industrial-mobile-menu nav > div {
    border-bottom: 1px solid #ffffff25;
    padding-block: 6px;
  }

  .industrial-mobile-menu nav > div > a {
    font-weight: 700;
  }

  .industrial-mobile-menu ul {
    padding-left: 18px;
  }

  .industrial-mobile-menu ul a {
    color: #d3e9de;
  }

  .industrial-mobile-menu .industrial-button {
    margin-top: 14px;
  }

  .industrial-footer {
    padding-block: 32px 20px;
  }

  .industrial-footer-main {
    grid-template-columns: 1fr 1fr;
    gap: 25px 20px;
  }

  .industrial-footer-main > div:first-child, .industrial-footer-contact {
    grid-column: 1 / -1;
  }

  .industrial-subfooter {
    flex-direction: column;
    gap: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *, :before, :after {
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}

.industrial-process-intro {
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 40px;
  display: grid;
}

.industrial-process-intro .cylinder-figure {
  max-height: 220px;
}

.industrial-process-intro .cylinder-image {
  filter: drop-shadow(0 14px 20px #00362a22);
  width: 85%;
  margin: -12% 0 -7% auto;
}

.industrial-process-intro .cylinder-figure figcaption {
  color: #486258;
}

.industrial-process-intro .blueprint-ring {
  border-color: #548f7650;
}

.industrial-process-intro + .industrial-steps {
  margin-top: 25px;
}

@media (max-width: 767px) {
  .industrial-process-intro {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .industrial-process-intro .industrial-section-heading {
    margin-bottom: 0;
  }

  .industrial-process-intro .cylinder-figure {
    max-width: 380px;
    max-height: none;
    margin-inline: auto;
  }

  .industrial-process-intro .cylinder-image {
    width: 100%;
    margin: 0;
  }
}

.cro-container {
  width: min(1280px, 100% - 64px);
  margin-inline: auto;
}

.cro-section h2 {
  font-family: var(--font-space-grotesk), sans-serif;
  color: #00362a;
  max-width: 900px;
  margin-bottom: 32px;
  font-size: clamp(28px, 3vw, 44px);
  line-height: 1.15;
}

.cro-section p {
  max-width: 80ch;
  margin: 18px 0;
  line-height: 1.8;
}

.cro-section.muted {
  background: #e0e3e1;
}

.cro-section.dark, .cro-hero {
  color: #fff;
  background-color: #00362a;
}

.cro-section.dark h2 {
  color: #fff;
}

.cro-hero {
  background-image: linear-gradient(#ffffff06 1px, #0000 1px), linear-gradient(90deg, #ffffff06 1px, #0000 1px);
  background-size: 24px 24px;
  padding: 80px 0;
}

.cro-split {
  grid-template-columns: 1fr 1fr;
  align-items: start;
  gap: 48px;
  display: grid;
}

.cro-hero .cro-split {
  align-items: center;
}

.cro-hero h1 {
  font: 700 clamp(36px, 4.2vw, 66px) / 1.06 var(--font-space-grotesk),
    sans-serif;
  letter-spacing: -.035em;
  margin: 25px 0;
}

.cro-hero p {
  margin: 24px 0;
  line-height: 1.7;
}

.cro-eyebrow {
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 13px;
}

.cro-lead {
  font-size: 26px;
  font-weight: 600;
}

.cro-placeholder {
  color: #385a4e;
  outline-offset: -14px;
  background: #f4f6f3;
  border: 1px solid #77998c;
  outline: 1px solid #a8bcb1;
  flex-direction: column;
  justify-content: center;
  min-height: 270px;
  padding: 35px;
  display: flex;
  position: relative;
}

.cro-placeholder span {
  letter-spacing: .16em;
  font-size: 11px;
}

.cro-placeholder p {
  font: 500 22px/1.4 var(--font-space-grotesk),
    sans-serif;
}

.cro-placeholder small {
  font-size: 12px;
}

.cro-actions {
  flex-wrap: wrap;
  gap: 14px;
  margin: 24px 0;
  display: flex;
}

.cro-button {
  color: #00362a;
  cursor: pointer;
  background: #10b981;
  border: 1px solid #0000;
  justify-content: center;
  align-items: center;
  min-height: 48px;
  padding: 15px 22px;
  font-weight: 700;
  text-decoration: none;
  display: inline-flex;
}

.cro-button:hover {
  background: #6ee7b7;
}

.cro-button.secondary {
  color: inherit;
  background: none;
  border-color: currentColor;
}

.cro-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  display: grid;
}

.cro-card {
  color: #00362a;
  background: #fafbf8;
  border: 1px solid #bdcbc3;
  min-width: 0;
  padding: 28px;
  display: block;
}

.cro-card:hover {
  border-color: #00362a;
}

.cro-card h3 {
  font: 500 24px/1.25 var(--font-space-grotesk),
    sans-serif;
  margin: 24px 0 12px;
}

.cro-card p {
  font-size: 15px;
}

.cro-index {
  letter-spacing: .1em;
  font-size: 12px;
}

.cro-proofs {
  border-bottom: 1px solid #b8c9bf;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  padding-block: 38px;
  display: grid;
}

.cro-proofs strong, .cro-proofs span {
  display: block;
}

.cro-proofs strong {
  font: 600 30px var(--font-space-grotesk),
    sans-serif;
  color: #00362a;
}

.cro-proofs span {
  margin-top: 10px;
  font-size: 14px;
}

.cro-two-panels {
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  display: grid;
}

.cro-two-panels > a {
  color: #00362a;
  background: #e0e3e1;
  padding: 40px;
}

.cro-two-panels > a:nth-child(2) {
  color: #fff;
  background: #00362a;
}

.cro-two-panels h3 {
  font: 500 34px/1.2 var(--font-space-grotesk),
    sans-serif;
  margin: 25px 0;
}

.cro-method {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.cro-method button {
  cursor: pointer;
  border: 1px solid #80998d;
  padding: 16px;
}

.cro-method button[aria-selected="true"] {
  color: #fff;
  background: #00362a;
}

.cro-method-panel {
  min-height: 140px;
  padding: 32px 0;
}

.cro-method-panel h3 {
  font-size: 26px;
}

.cro-faq details {
  border-bottom: 1px solid #94a89b;
  padding: 22px 0;
}

.cro-faq summary {
  cursor: pointer;
  font-size: 20px;
  font-weight: 600;
}

.cro-form {
  color: #00362a;
  background: #f7f8f5;
  border: 1px solid #b5c6ba;
  min-width: 0;
  padding: 30px;
}

.cro-form h3 {
  margin: 22px 0;
  font-size: 24px;
}

.cro-form fieldset {
  border: 0;
}

.cro-form legend {
  margin: 12px 0;
}

.cro-fields {
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  display: grid;
}

.cro-form label, .cro-fields label {
  font-size: 15px;
  font-weight: 600;
  display: block;
}

.cro-form input:not([type="radio"]):not([type="checkbox"]), .cro-form select, .cro-fields select {
  background: #fff;
  border: 1px solid #839b8c;
  width: 100%;
  min-width: 0;
  min-height: 48px;
  margin: 8px 0 15px;
  padding: 12px;
  font-weight: 400;
  display: block;
}

.cro-form .cro-choice {
  border: 1px solid #b1c3b6;
  align-items: center;
  gap: 12px;
  margin: 12px 0;
  padding: 16px;
  display: flex;
}

.cro-choice input {
  accent-color: #00362a;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}

.cro-steps {
  flex-wrap: wrap;
  gap: 12px;
  padding: 0;
  font-size: 12px;
  list-style: none;
  display: flex;
}

.cro-steps [aria-current] {
  border-bottom: 2px solid #00362a;
  font-weight: bold;
}

.cro-notice {
  background: #e8eee8;
  border-left: 3px solid #54755e;
  margin: 20px 0;
  padding: 16px;
  font-size: 14px;
  line-height: 1.6;
}

.cro-phone {
  color: #00362a;
  margin: 24px 0;
  font-size: 28px;
  display: block;
}

.cro-breadcrumb {
  color: #39584a;
  padding-block: 22px;
  font-size: 13px;
}

.cro-breadcrumb a, .cro-text-link {
  text-underline-offset: 5px;
  text-decoration: underline;
}

.cro-text-link {
  margin-top: 24px;
  display: inline-block;
}

.cro-page-title {
  padding-block: 60px;
}

.cro-page-title h1 {
  font: 600 clamp(36px, 4vw, 60px) / 1.12 var(--font-space-grotesk),
    sans-serif;
  color: #00362a;
  max-width: 1000px;
}

.cro-header {
  z-index: 20;
  background: #fff;
  border-bottom: 1px solid #d1ddd5;
  align-items: center;
  gap: 22px;
  padding: 20px 32px;
  display: flex;
  position: relative;
}

.cro-brand {
  font: 700 29px/1 var(--font-space-grotesk),
    sans-serif;
  letter-spacing: -.06em;
  color: inherit;
  display: block;
}

.cro-brand span {
  font: 400 12px/1.4 var(--font-inter),
    sans-serif;
  letter-spacing: 0;
  text-align: right;
  display: block;
}

.cro-desktop {
  gap: 18px;
  margin-left: auto;
  font-size: 14px;
  display: flex;
}

.cro-header-phone {
  white-space: nowrap;
  font-size: 14px;
}

.cro-footer {
  color: #fff;
  background: #00362a;
  padding: 60px 0;
}

.cro-footer h2 {
  margin-bottom: 20px;
  font-size: 17px;
}

.cro-footer a:not(.cro-brand) {
  padding: 6px 0;
  font-size: 14px;
  display: block;
}

.cro-footer p {
  margin-top: 25px;
  font-size: 14px;
  line-height: 1.7;
}

.cro-mobile-menu, .cro-mobile-bar {
  display: none;
}

:where(a, button, input, select, summary):focus-visible {
  outline-offset: 4px;
  outline: 3px solid #bf7915;
}

.cro-form [role="alert"] {
  color: #9f241b;
}

.cro-form [hidden] {
  display: none;
}

@media (max-width: 1150px) {
  .cro-desktop, .cro-header-phone {
    display: none;
  }

  .cro-mobile-menu {
    display: block;
  }

  .cro-header > .cro-button {
    margin-left: auto;
  }

  .cro-mobile-menu summary {
    cursor: pointer;
    padding: 12px;
  }

  .cro-mobile-menu nav {
    background: #fff;
    border-bottom: 1px solid #9cad9f;
    padding: 25px;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    box-shadow: 0 12px 25px #0002;
  }

  .cro-mobile-menu nav a {
    padding: 12px;
    display: block;
  }

  .cro-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .cro-container {
    width: calc(100% - 36px);
  }

  .cro-section {
    padding: 52px 0;
  }

  .cro-hero {
    padding: 40px 0;
  }

  .cro-split, .cro-grid, .cro-two-panels, .cro-fields {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .cro-proofs {
    grid-template-columns: 1fr 1fr;
  }

  .cro-header {
    gap: 10px;
    padding: 16px 18px;
  }

  .cro-header > .cro-button {
    display: none;
  }

  .cro-mobile-menu {
    margin-left: auto;
  }

  .cro-placeholder {
    min-height: 240px;
  }

  .cro-form {
    padding: 20px;
  }

  .cro-mobile-bar {
    z-index: 30;
    color: #fff;
    padding-bottom: env(safe-area-inset-bottom);
    background: #00362a;
    grid-template-columns: 1fr 1fr;
    display: grid;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
  }

  .cro-mobile-bar a {
    text-align: center;
    padding: 16px;
  }

  .cro-mobile-bar a:last-child {
    color: #00362a;
    background: #10b981;
    font-weight: 700;
  }

  body {
    padding-bottom: 56px;
  }

  .cro-footer .cro-grid {
    grid-template-columns: 1fr 1fr;
  }

  .cro-footer .cro-grid > div:first-child {
    grid-column: 1 / -1;
  }

  .cro-two-panels > a {
    padding: 28px;
  }

  .cro-actions .cro-button {
    width: 100%;
  }
}

@media (min-width: 1000px) {
  #fabrications .cro-grid {
    grid-template-rows: repeat(3, 1fr);
    grid-template-columns: 1.2fr 1fr;
  }

  #fabrications .cro-card:first-child {
    color: #fff;
    background: #00362a;
    flex-direction: column;
    grid-row: 1 / 4;
    justify-content: center;
    min-height: 420px;
    display: flex;
  }

  #fabrications .cro-card:first-child h3 {
    font-size: 42px;
  }

  #fabrications .cro-card:not(:first-child) h3 {
    margin: 8px 0;
  }

  #secteurs .cro-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  #secteurs .cro-card {
    padding: 22px;
  }

  #secteurs .cro-card h3 {
    font-size: 21px;
  }

  #questions > .cro-container {
    grid-template-columns: 1fr 1.5fr;
    gap: 80px;
    display: grid;
  }
}

:root {
  --cro-paper: #f7faf8;
  --cro-ink: #0f1f1a;
}

body {
  background: var(--cro-paper);
  color: var(--cro-ink);
  font-size: 17px;
}

.cro-container {
  width: min(1280px, 100% - 64px);
}

.cro-section {
  padding: 104px 0;
}

.cro-section h2 {
  max-width: none;
  margin-bottom: 40px;
  font-size: 54px;
  font-weight: 500;
}

.dimension-title {
  align-items: center;
  gap: 24px;
  display: flex;
}

.dimension-title > span {
  background: #10b981;
  flex: 1;
  min-width: 50px;
  height: 1px;
  position: relative;
}

.dimension-title > span:before, .dimension-title > span:after {
  content: "↔";
  color: #10b981;
  position: absolute;
  top: -12px;
}

.dimension-title > span:after {
  right: 0;
}

.cro-hero h1 {
  font-size: 72px;
  font-weight: 500;
}

.cro-hero .cro-lead {
  font-size: 30px;
  line-height: 1.3;
}

.cro-hero .cro-split {
  gap: 24px;
}

.asset-frame {
  min-width: 0;
  margin: 0;
}

.asset-window {
  aspect-ratio: 1.5;
  color: #5b6b65;
  background-color: #fff;
  background-image: linear-gradient(#00362a05 1px, #0000 1px), linear-gradient(90deg, #00362a05 1px, #0000 1px);
  background-size: 24px 24px;
  border: 1px solid #c9d1cd;
  justify-content: center;
  align-items: center;
  padding: 24px;
  display: flex;
  position: relative;
}

.asset-window:before, .asset-window:after {
  content: "";
  pointer-events: none;
  z-index: 1;
  width: 22px;
  height: 22px;
  position: absolute;
}

.asset-window:before {
  border-top: 2px solid #00362a;
  border-left: 2px solid #00362a;
  top: 16px;
  left: 16px;
}

.asset-window:after {
  border-bottom: 2px solid #00362a;
  border-right: 2px solid #00362a;
  bottom: 16px;
  right: 16px;
}

.asset-window img {
  object-fit: contain;
  width: 100%;
  height: 100%;
  padding: 24px;
  position: absolute;
  inset: 0;
}

.asset-empty {
  text-align: center;
  font-size: 14px;
}

.asset-frame figcaption {
  padding-top: 12px;
  font-size: 14px;
  line-height: 1.5;
}

.hero-asset .asset-window {
  aspect-ratio: 1.6;
}

.cro-proofs {
  text-align: center;
  border: 0;
  gap: 24px;
  padding: 64px 0 40px;
  position: relative;
}

.cro-proofs:after {
  content: "";
  background: #10b981;
  height: 1px;
  position: absolute;
  top: 119px;
  left: 0;
  right: 0;
}

.cro-proofs strong {
  padding-bottom: 32px;
  font-size: 26px;
  font-weight: 500;
  position: relative;
}

.cro-proofs strong:after {
  content: "";
  background: #00362a;
  width: 1px;
  height: 24px;
  position: absolute;
  bottom: 9px;
  left: 50%;
}

.cro-proofs span {
  font-size: 17px;
}

.partner-slots {
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
  padding-bottom: 24px;
  display: grid;
}

.partner-slots > div {
  text-align: center;
  color: #5b6b65;
  background: #e0e3e1;
  padding: 30px 10px;
}

.entry-panel {
  background: #fff;
  border: 1px solid #c9d1cd;
  padding: 40px;
}

.entry-panel:nth-child(2) {
  color: #fff;
  background: #00362a;
}

.entry-panel h3 {
  min-height: 108px;
  font-size: 48px;
  font-weight: 500;
  line-height: 1.1;
}

.entry-panel .asset-window {
  aspect-ratio: 1.7;
  background-color: #0000;
  border: 0;
}

.entry-panel:nth-child(2) .asset-window {
  color: #c9d1cd;
}

.entry-links {
  margin: 24px 0;
}

.entry-links a {
  border-bottom: 1px solid #9aafa2;
  padding: 16px 0;
  font-size: 22px;
  display: block;
}

.improvement-grid {
  grid-template-columns: 1fr 1fr 1.1fr;
  align-items: stretch;
  gap: 24px;
  display: grid;
}

.improvement-grid .asset-window {
  aspect-ratio: .9;
}

.improvement-levers {
  border-left: 1px solid #10b981;
  padding-left: 30px;
}

.improvement-levers > div {
  align-items: start;
  gap: 16px;
  margin: 22px 0;
  display: flex;
}

.improvement-levers b {
  border: 1px solid #fff;
  padding: 12px;
  font-size: 25px;
  font-weight: 500;
}

.improvement-levers h3 {
  font-size: 24px;
}

.improvement-levers p {
  margin: 4px 0;
  line-height: 1.5;
}

.fabrication-mosaic {
  grid-template-columns: 1fr 1.25fr;
  gap: 16px;
  display: grid;
}

.fabrication-mosaic > a {
  background: #fff;
  border: 1px solid #c9d1cd;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  display: grid;
}

.fabrication-mosaic > a:first-child {
  grid-row: 1 / 4;
  display: block;
}

.fabrication-mosaic > a > div {
  padding: 24px;
}

.fabrication-mosaic h3 {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.3;
}

.fabrication-mosaic > a:first-child h3 {
  font-size: 36px;
}

.fabrication-mosaic .asset-window {
  aspect-ratio: 1.4;
  border: 0;
}

.fabrication-mosaic > a:first-child .asset-window {
  aspect-ratio: 1;
}

.fabrication-mosaic p {
  font-size: 16px;
}

.sector-home {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  display: grid;
}

.sector-home .cro-grid {
  display: contents;
}

.sector-home .cro-card {
  min-height: 220px;
  padding: 24px;
}

.sector-home h3 {
  font-size: 25px !important;
}

.sector-more {
  color: #fff;
  background: #00362a;
  padding: 24px;
}

.sector-more h3 {
  line-height: 1.2;
}

.sector-more .cro-button {
  padding: 12px;
  font-size: 14px;
}

.cro-method {
  grid-template-columns: repeat(5, 1fr);
  gap: 4px;
  display: grid;
}

.cro-method button {
  text-align: left;
  background: #fff;
  align-items: center;
  gap: 16px;
  padding: 20px;
  font-size: 20px;
  display: flex;
}

.cro-method button b {
  border: 1px solid;
  padding: 14px;
  font-size: 24px;
  font-weight: 500;
}

.cro-method-panel {
  background: #fff;
  border: 1px solid #80998d;
  grid-template-columns: .85fr 1.4fr;
  gap: 32px;
  min-height: 470px;
  margin-top: 16px;
  padding: 32px;
  display: grid;
}

.cro-method-panel h3 {
  font-size: 32px;
  line-height: 1.2;
}

.cro-method-panel h4 {
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #356c59;
  margin-top: 28px;
  font-size: 14px;
}

.cro-method-panel .asset-window {
  aspect-ratio: 1;
  height: 100%;
}

.quote-band {
  color: #fff;
  background-color: #00362a;
  background-image: linear-gradient(#ffffff05 1px, #0000 1px), linear-gradient(90deg, #ffffff05 1px, #0000 1px);
  background-position: 0 0;
  background-repeat: repeat;
  background-size: 24px 24px;
  background-attachment: scroll;
  background-origin: padding-box;
  background-clip: border-box;
  padding: 80px 0;
}

.quote-mark {
  color: #10b981;
  float: left;
  margin-right: 20px;
  font-size: 100px;
  line-height: 1;
}

.quote-text {
  max-width: 1000px;
  font-size: 60px;
  line-height: 1.15;
  font-family: var(--font-space-grotesk);
}

.quote-author {
  align-items: center;
  gap: 24px;
  margin-top: 40px;
  display: flex;
}

.quote-author .asset-frame {
  width: 100px;
}

.quote-author .asset-window {
  aspect-ratio: 1;
  padding: 8px;
}

.quote-author p {
  font-size: 22px;
}

.case-heading {
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 24px;
  display: flex;
}

.case-grid h3, .blog-cards h3 {
  margin: 20px 0;
  font-size: 28px;
  line-height: 1.2;
}

.blog-cards > a {
  background: #fff;
  border: 1px solid #c9d1cd;
}

.blog-cards > a > div:not(.formula-card) {
  padding: 24px;
}

.formula-card {
  aspect-ratio: 1.5;
  color: #fff;
  background: #00362a;
  justify-content: center;
  align-items: center;
  font-size: 48px;
  display: flex;
}

.blog-cards + .cro-button {
  margin-top: 32px;
}

.cro-faq details {
  background: #fff;
  border: 1px solid #c9d1cd;
  margin-bottom: 20px;
  padding: 24px;
}

.cro-faq summary {
  font-size: 25px;
  font-weight: 500;
  line-height: 1.3;
}

.faq-contact > div {
  background: #fff;
  border: 1px solid #c9d1cd;
  margin-top: 32px;
  padding: 24px;
}

.faq-contact h3 {
  font-size: 25px;
}

.faq-contact a {
  margin-top: 24px;
  display: block;
}

#questions > .cro-container {
  grid-template-columns: 1fr 2fr;
  gap: 32px;
}

#questions h2 {
  grid-area: 1 / 1;
  margin-bottom: 0;
}

#questions .faq-contact {
  grid-area: 2 / 1;
}

#questions .cro-faq {
  grid-area: 1 / 2 / 3;
}

#demande h2 {
  text-align: center;
  justify-content: center;
}

#demande h2 > span {
  display: none;
}

.demand-intro {
  text-align: center;
  margin-inline: auto !important;
}

.demand-intro a {
  display: block;
}

#demande .cro-form {
  background: #fff;
  max-width: 1000px;
  margin: 40px auto 0;
  padding: 40px;
}

#demande .cro-form h3 {
  font: 500 40px/1.2 var(--font-space-grotesk);
}

.cro-steps {
  border-bottom: 1px solid #10b981;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  padding-bottom: 24px;
  font-size: 16px;
  display: grid;
}

.cro-fields {
  gap: 24px;
}

.cro-form .cro-actions {
  justify-content: space-between;
}

.cro-form .cro-actions button {
  min-width: 40%;
}

.cro-header {
  gap: 16px;
}

.cro-brand img {
  width: 160px;
  height: auto;
}

.cro-header-phone {
  font-size: 13px;
}

@media (max-width: 1100px) {
  .cro-hero h1 {
    font-size: 54px;
  }

  .cro-method button {
    padding: 12px;
    display: block;
  }

  .cro-method button b {
    margin-bottom: 8px;
    display: inline-block;
  }

  .cro-method button span {
    display: block;
  }

  .cro-section h2 {
    font-size: 40px;
  }

  .improvement-grid {
    grid-template-columns: 1fr 1fr;
  }

  .improvement-levers {
    grid-column: 1 / -1;
  }

  .sector-home {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 700px) {
  .cro-container {
    width: calc(100% - 32px);
  }

  .cro-section {
    padding: 64px 0;
  }

  .cro-section h2 {
    font-size: 36px;
    line-height: 1.12;
  }

  .dimension-title > span {
    display: none;
  }

  .cro-hero h1 {
    font-size: 40px;
  }

  .cro-hero .cro-lead {
    font-size: 22px;
  }

  .cro-hero {
    padding: 40px 0 56px;
  }

  .cro-proofs {
    text-align: left;
    gap: 24px;
    padding: 40px 0;
  }

  .cro-proofs:after, .cro-proofs strong:after {
    display: none;
  }

  .cro-proofs strong {
    padding-bottom: 6px;
    font-size: 22px;
  }

  .cro-proofs span {
    font-size: 15px;
  }

  .partner-slots {
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
  }

  .partner-slots > div {
    padding: 18px;
  }

  .partner-slots > div:last-child {
    grid-column: 1 / -1;
  }

  .entry-panel {
    padding: 24px;
  }

  .entry-panel h3 {
    min-height: 0;
    font-size: 36px;
  }

  .entry-links a {
    font-size: 19px;
  }

  .improvement-grid {
    gap: 12px;
  }

  .improvement-levers {
    border: 0;
    margin-top: 24px;
    padding: 0;
  }

  .fabrication-mosaic {
    display: block;
  }

  .fabrication-mosaic > a {
    margin-bottom: 16px;
    display: block;
  }

  .fabrication-mosaic > a:first-child .asset-window {
    aspect-ratio: 1.3;
  }

  .fabrication-mosaic h3, .fabrication-mosaic > a:first-child h3 {
    font-size: 27px;
  }

  .sector-home {
    grid-template-columns: 1fr;
  }

  .sector-home .cro-card {
    min-height: 170px;
  }

  .cro-method {
    gap: 8px;
  }

  .cro-method button {
    text-align: center;
    padding: 6px;
    font-size: 12px;
  }

  .cro-method button b {
    border: 0;
    padding: 8px 0;
    font-size: 20px;
  }

  .cro-method-panel {
    padding: 24px;
    display: block;
  }

  .cro-method-panel h3 {
    font-size: 30px;
  }

  .cro-method-panel .asset-frame {
    margin-top: 32px;
  }

  .quote-band {
    padding: 56px 0;
  }

  .quote-text {
    font-size: 38px;
  }

  .quote-mark {
    font-size: 60px;
  }

  .case-heading {
    display: block;
  }

  .case-grid {
    gap: 32px;
  }

  #questions > .cro-container {
    flex-direction: column;
    gap: 24px;
    display: flex;
  }

  #questions .faq-contact {
    order: 2;
  }

  #questions .cro-faq {
    order: 1;
  }

  .cro-faq summary {
    font-size: 22px;
  }

  #demande .cro-form {
    padding: 20px;
  }

  #demande .cro-form h3 {
    font-size: 30px;
  }

  .cro-steps {
    gap: 8px;
    font-size: 12px;
  }

  .cro-form .cro-actions button {
    width: 100%;
  }

  .cro-brand img {
    width: 145px;
  }
}

.footer-columns {
  grid-template-columns: 1.1fr 1fr 1.5fr 1.1fr;
  gap: 28px;
  display: grid;
}

.footer-columns > div + div {
  border-left: 1px solid #ffffff30;
  padding-left: 24px;
}

.footer-columns .cro-brand {
  background: #fff;
  padding: 12px;
  display: inline-block;
}

.footer-sectors {
  grid-template-columns: 1fr 1fr;
  gap: 0 16px;
  display: grid;
}

.footer-legal {
  border-top: 1px solid #ffffff50;
  align-items: center;
  gap: 24px;
  margin-top: 64px;
  padding-top: 24px;
  display: flex;
}

.footer-legal span {
  margin-left: auto;
  font-size: 14px;
}

.cro-footer {
  background-image: linear-gradient(#ffffff05 1px, #0000 1px), linear-gradient(90deg, #ffffff05 1px, #0000 1px);
  background-size: 24px 24px;
  padding: 80px 0;
}

.cro-footer a:not(.cro-brand) {
  font-size: 15px;
  line-height: 1.5;
}

@media (max-width: 900px) {
  .footer-columns {
    grid-template-columns: 1fr 1fr;
  }

  .footer-columns > div + div {
    border: 0;
    padding: 0;
  }

  .footer-legal {
    flex-wrap: wrap;
  }
}

@media (max-width: 500px) {
  .footer-columns {
    grid-template-columns: 1fr;
  }

  .footer-sectors {
    grid-template-columns: 1fr 1fr;
  }

  .footer-legal span {
    margin-left: 0;
  }
}

.skip-link {
  clip-path: inset(100%);
  white-space: nowrap;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  transform: none;
}

.skip-link:focus-visible {
  clip-path: none;
  width: auto;
  height: auto;
  padding: 12px 20px;
  overflow: visible;
}

.skip-link:focus:not(:focus-visible) {
  clip-path: inset(100%);
}

.dimension-title > .dimension-line, .dimension-line {
  background: linear-gradient(#10b981, #10b981) center / 100% 1px no-repeat;
  border-left: 1px solid #10b981;
  border-right: 1px solid #10b981;
  flex: 1;
  min-width: 60px;
  height: 24px;
  display: block;
  position: relative;
}

.dimension-title > .dimension-line:before, .dimension-title > .dimension-line:after {
  display: none;
}

.dimension-arrow {
  border-bottom: 1px solid #10b981;
  border-left: 1px solid #10b981;
  width: 8px;
  height: 8px;
  position: absolute;
  top: 8px;
}

.dimension-arrow.start {
  left: 2px;
  transform: rotate(45deg);
}

.dimension-arrow.end {
  right: 2px;
  transform: rotate(225deg);
}

.hero-eyebrow {
  align-items: center;
  gap: 24px;
  display: flex;
}

.cro-hero h1 {
  letter-spacing: -.045em;
  font-size: 62px;
}

.cro-hero h1 span {
  display: block;
}

.cro-hero {
  padding: 64px 0;
}

.cro-hero p {
  margin: 20px 0;
}

.cro-proofs {
  gap: 24px;
  padding-top: 48px;
  position: relative;
}

.cro-proofs > div:not(.proof-rule) {
  min-width: 0;
}

.cro-proofs strong {
  justify-content: center;
  align-items: center;
  height: 100px;
  padding: 0 0 36px;
  font-size: 25px;
  line-height: 1.2;
  display: flex;
}

.cro-proofs strong:after {
  height: 24px;
  bottom: 0;
}

.cro-proofs:after {
  display: none;
}

.cro-proofs .proof-rule {
  height: 24px;
  display: block;
  position: absolute;
  top: 123px;
  left: 0;
  right: 0;
}

.proof-rule > .dimension-line {
  width: 100%;
  height: 24px;
}

.proof-rule > span:first-child, .proof-rule > span:last-child {
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 11px;
  position: absolute;
  top: -24px;
}

.proof-rule > span:last-child {
  right: 0;
}

.cro-proofs > div > span {
  margin-top: 12px;
}

.cro-method-panel {
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.4fr);
  align-items: center;
  min-height: 0;
}

.cro-method-panel > * {
  min-width: 0;
}

.cro-method-panel .asset-window {
  aspect-ratio: 1.4;
  width: 100%;
  height: auto;
}

.cro-method-panel p {
  margin: 14px 0;
  font-size: 16px;
}

.cro-method-panel h4 {
  margin-top: 22px;
}

.cro-method button {
  gap: 12px;
  min-width: 0;
  padding: 16px;
}

.cro-method button b {
  padding: 12px;
}

.cro-method button span {
  min-width: 0;
}

.cro-method button small {
  margin-top: 6px;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.3;
  display: block;
}

.cro-form {
  position: relative;
}

.cro-form:before, .cro-form:after {
  content: "";
  pointer-events: none;
  width: 22px;
  height: 22px;
  position: absolute;
}

.cro-form:before {
  border-top: 2px solid #00362a;
  border-left: 2px solid #00362a;
  top: 16px;
  left: 16px;
}

.cro-form:after {
  border-bottom: 2px solid #00362a;
  border-right: 2px solid #00362a;
  bottom: 16px;
  right: 16px;
}

.cro-steps {
  border: 0;
  gap: 12px;
  padding: 8px 0 24px;
  position: relative;
}

.cro-steps:before {
  content: "";
  border-top: 1px solid #10b981;
  position: absolute;
  top: 30px;
  left: 0;
  right: 0;
}

.cro-steps li {
  z-index: 1;
  text-align: center;
  border: 0 !important;
  font-weight: 400 !important;
}

.cro-steps b {
  background: #fff;
  border: 1px solid #c9d1cd;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  margin: 0 auto 12px;
  font-size: 20px;
  font-weight: 500;
  display: flex;
}

.cro-steps [aria-current] b {
  color: #00362a;
  background: #10b981;
  border-color: #10b981;
}

.cro-steps span {
  font-size: 15px;
  display: block;
}

.cro-steps [aria-current] span {
  font-weight: 600;
}

@media (min-width: 1200px) {
  .cro-hero h1 span {
    white-space: nowrap;
  }

  .cro-hero .cro-lead {
    font-size: 27px;
  }
}

@media (max-width: 1100px) {
  .cro-hero h1 {
    font-size: 46px;
  }

  .cro-method button {
    padding: 12px 8px;
  }

  .cro-method button small {
    font-size: 12px;
  }

  .cro-method-panel {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  }
}

@media (max-width: 700px) {
  .cro-hero h1 {
    font-size: 40px;
  }

  .cro-hero h1 span {
    display: inline;
  }

  .hero-eyebrow .dimension-line {
    display: none;
  }

  .cro-proofs strong {
    height: auto;
    padding: 0;
    font-size: 22px;
    display: block;
  }

  .cro-proofs .proof-rule {
    display: none;
  }

  .cro-method-panel {
    display: block;
  }

  .cro-method-panel .asset-window {
    aspect-ratio: 1.3;
  }

  .cro-method button small {
    display: none;
  }

  .cro-method button {
    font-size: 11px;
  }

  .cro-steps span {
    font-size: 12px;
  }

  .cro-steps b {
    width: 36px;
    height: 36px;
  }

  .cro-steps:before {
    top: 26px;
  }

  .cro-form:before, .cro-form:after {
    width: 12px;
    height: 12px;
    top: 8px;
    left: 8px;
  }

  .cro-form:after {
    inset: auto 8px 8px auto;
  }
}

[data-review-id="V03"] > .cro-container > .dimension-title {
  clip-path: inset(100%);
  white-space: nowrap;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.sector-home .cro-card {
  flex-direction: column;
  display: flex;
}

.sector-home .cro-card > span:last-child {
  align-self: flex-end;
  margin-top: auto;
}

.sector-home .cro-card p {
  margin-top: 0;
}

.cro-faq summary {
  padding-right: 34px;
  list-style: none;
  position: relative;
}

.cro-faq summary::-webkit-details-marker {
  display: none;
}

.cro-faq summary:after {
  content: "+";
  font-size: 30px;
  font-weight: 400;
  line-height: 1;
  position: absolute;
  top: 0;
  right: 0;
}

.cro-faq details[open] > summary:after {
  content: "−";
}

.cro-desktop {
  gap: 12px;
  font-size: 14px;
}

.cro-header .cro-brand img {
  width: 145px;
}

.cro-header {
  padding-inline: 24px;
}

.cro-header > .cro-button {
  padding-inline: 12px;
  font-size: 13px;
}

.file-remove {
  text-underline-offset: 3px;
  cursor: pointer;
  min-width: 44px;
  min-height: 44px;
  margin-left: 12px;
  padding: 8px 16px;
  text-decoration: underline;
}

.cro-form input[type="file"] {
  white-space: normal;
}

.cro-form li {
  overflow-wrap: normal;
}

@media (max-width: 700px) {
  .sector-home {
    display: block;
  }

  .sector-home .cro-card {
    grid-template-columns: 24px minmax(0, 1fr) 24px;
    align-items: center;
    gap: 4px 12px;
    min-height: 80px;
    margin-bottom: 8px;
    padding: 16px 12px;
    display: grid;
  }

  .sector-home .cro-card .cro-index {
    grid-area: 1 / 1 / 3;
    font-size: 12px;
  }

  .sector-home .cro-card h3 {
    grid-area: 1 / 2;
    margin: 0;
    line-height: 1.2;
    font-size: 20px !important;
  }

  .sector-home .cro-card p {
    grid-area: 2 / 2;
    margin: 0;
    font-size: 14px;
    line-height: 1.4;
  }

  .sector-home .cro-card > span:last-child {
    grid-area: 1 / 3 / 3;
    align-self: center;
    margin: 0;
    font-size: 24px;
  }

  .sector-home .sector-more {
    margin-top: 16px;
    display: block;
  }

  .sector-home .sector-more h3 {
    font-size: 28px !important;
  }
}

.company-timeline {
  border-top: 1px solid #10b981;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  padding-top: 32px;
  display: grid;
}

.company-timeline strong {
  font: 500 40px var(--font-space-grotesk);
  margin-bottom: 16px;
  display: block;
}

.company-timeline span {
  display: block;
}

.company-panel {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: 40px;
  display: grid;
}

.document-frame {
  background: #fff;
  border: 1px solid #80998d;
  flex-direction: column;
  justify-content: center;
  gap: 24px;
  min-height: 260px;
  padding: 40px;
  display: flex;
}

.document-frame strong {
  font-size: 30px;
}

.document-frame span {
  font-size: 14px;
}

.company-group {
  align-items: center;
  gap: 40px;
  display: flex;
}

.company-group strong, .company-group span {
  border: 1px solid #80998d;
  padding: 30px;
  font-size: 25px;
}

.contact-details > div {
  border-top: 1px solid #80998d;
  padding-top: 24px;
}

.contact-details h3 {
  margin-bottom: 20px;
  font-size: 24px;
}

.contact-details a {
  text-decoration: underline;
}

@media (max-width: 700px) {
  .company-panel {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .company-group {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
  }

  .company-timeline {
    gap: 20px;
  }

  .company-timeline strong {
    font-size: 28px;
  }
}

.service-proofs {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  display: grid;
}

.service-proofs > div {
  border-top: 1px solid #10b981;
  padding-top: 24px;
}

.service-proofs strong {
  font: 500 26px/1.2 var(--font-space-grotesk);
}

@media (max-width: 700px) {
  .service-proofs {
    grid-template-columns: 1fr;
  }
}

.cro-split {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.cro-split > * {
  min-width: 0;
}

@media (max-width: 700px) {
  .cro-split {
    grid-template-columns: minmax(0, 1fr);
  }

  .dimension-title > .dimension-line {
    display: none;
  }

  .cro-hero:not([data-review-id]) h1 {
    overflow-wrap: break-word;
    font-size: 36px;
  }

  .cro-section h2 {
    overflow-wrap: break-word;
  }
}

@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false
}

@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-gradient-position {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-stops {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}

@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}

@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-leading {
  syntax: "*";
  inherits: false
}

@property --tw-font-weight {
  syntax: "*";
  inherits: false
}

@property --tw-tracking {
  syntax: "*";
  inherits: false
}

@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-ring-inset {
  syntax: "*";
  inherits: false
}

@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}

@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-blur {
  syntax: "*";
  inherits: false
}

@property --tw-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-invert {
  syntax: "*";
  inherits: false
}

@property --tw-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-duration {
  syntax: "*";
  inherits: false
}

@property --tw-ease {
  syntax: "*";
  inherits: false
}

@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@keyframes pulse {
  50% {
    opacity: .5;
  }
}

/*# sourceMappingURL=%5Broot-of-the-server%5D__0_2refd._.css.map*/