/*! tailwindcss v4.1.10 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: "DM Sans", ui-sans-serif, system-ui, sans-serif;
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --spacing: 0.25rem;
    --container-xl: 36rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-7xl: 80rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.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;
    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-relaxed: 1.625;
    --radius-3xl: 1.5rem;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: "DM Sans", ui-sans-serif, system-ui, sans-serif;
    --default-mono-font-family: var(--font-mono);
    --font-display: "Manrope", ui-sans-serif, system-ui, sans-serif;
    --color-background: var(--background);
    --color-foreground: var(--foreground);
    --color-primary: var(--primary);
    --color-primary-foreground: var(--primary-foreground);
    --color-primary-deep: var(--primary-deep);
    --color-ice: var(--ice);
    --color-sky: var(--sky);
    --color-border: var(--border);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    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;
    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 {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.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 {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :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)) {
        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, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .inset-x-0 {
    inset-inline: calc(var(--spacing) * 0);
  }
  .-top-20 {
    top: calc(var(--spacing) * -20);
  }
  .-top-40 {
    top: calc(var(--spacing) * -40);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-1\/2 {
    top: calc(1/2 * 100%);
  }
  .top-6 {
    top: calc(var(--spacing) * 6);
  }
  .-right-20 {
    right: calc(var(--spacing) * -20);
  }
  .-right-40 {
    right: calc(var(--spacing) * -40);
  }
  .right-0 {
    right: calc(var(--spacing) * 0);
  }
  .-bottom-5 {
    bottom: calc(var(--spacing) * -5);
  }
  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }
  .-left-5 {
    left: calc(var(--spacing) * -5);
  }
  .left-0 {
    left: calc(var(--spacing) * 0);
  }
  .left-1\/2 {
    left: calc(1/2 * 100%);
  }
  .left-6 {
    left: calc(var(--spacing) * 6);
  }
  .z-50 {
    z-index: 50;
  }
  .mx-auto {
    margin-inline: auto;
  }
  .mt-0\.5 {
    margin-top: calc(var(--spacing) * 0.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-14 {
    margin-top: calc(var(--spacing) * 14);
  }
  .mt-16 {
    margin-top: calc(var(--spacing) * 16);
  }
  .mt-20 {
    margin-top: calc(var(--spacing) * 20);
  }
  .mt-28 {
    margin-top: calc(var(--spacing) * 28);
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border-radius: 999px;
    padding: 0.9rem 1.6rem;
    font-weight: 500;
    font-size: 0.95rem;
    background: var(--color-primary-deep);
    color: var(--color-primary-foreground);
    transition: transform 250ms, box-shadow 250ms, background 250ms;
    &:hover {
      background: oklch(0.4 0.07 228);
      transform: translateY(-1px);
      box-shadow: var(--shadow-lift);
    }
  }
  .btn-light {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border-radius: 999px;
    padding: 0.9rem 1.6rem;
    font-weight: 500;
    font-size: 0.95rem;
    background: var(--color-background);
    color: var(--color-primary-deep);
    transition: transform 250ms, background 250ms;
    &:hover {
      background: var(--color-ice);
      transform: translateY(-1px);
    }
  }
  .btn-ghost {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border-radius: 999px;
    padding: 0.9rem 1.6rem;
    font-weight: 500;
    font-size: 0.95rem;
    border: 1px solid var(--color-primary-deep);
    @supports (color: color-mix(in lab, red, red)) {
      border: 1px solid color-mix(in oklab, var(--color-primary-deep) 35%, transparent);
    }
    color: var(--color-primary-deep);
    transition: background 250ms, border-color 250ms;
    &:hover {
      background: var(--color-sky);
      @supports (color: color-mix(in lab, red, red)) {
        background: color-mix(in oklab, var(--color-sky) 30%, transparent);
      }
      border-color: var(--color-primary);
    }
  }
  .block {
    display: block;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline-block {
    display: inline-block;
  }
  .aspect-\[4\/5\] {
    aspect-ratio: 4/5;
  }
  .aspect-square {
    aspect-ratio: 1 / 1;
  }
  .h-2\.5 {
    height: calc(var(--spacing) * 2.5);
  }
  .h-4 {
    height: calc(var(--spacing) * 4);
  }
  .h-10 {
    height: calc(var(--spacing) * 10);
  }
  .h-11 {
    height: calc(var(--spacing) * 11);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-\[2px\] {
    height: 2px;
  }
  .h-\[76px\] {
    height: 76px;
  }
  .h-\[360px\] {
    height: 360px;
  }
  .h-\[520px\] {
    height: 520px;
  }
  .h-\[calc\(100dvh-76px\)\] {
    height: calc(100dvh - 76px);
  }
  .h-full {
    height: 100%;
  }
  .h-px {
    height: 1px;
  }
  .w-2\/3 {
    width: calc(2/3 * 100%);
  }
  .w-4 {
    width: calc(var(--spacing) * 4);
  }
  .w-4\/5 {
    width: calc(4/5 * 100%);
  }
  .w-10 {
    width: calc(var(--spacing) * 10);
  }
  .w-11 {
    width: calc(var(--spacing) * 11);
  }
  .w-11\/12 {
    width: calc(11/12 * 100%);
  }
  .w-12 {
    width: calc(var(--spacing) * 12);
  }
  .w-\[360px\] {
    width: 360px;
  }
  .w-\[520px\] {
    width: 520px;
  }
  .w-full {
    width: 100%;
  }
  .w-px {
    width: 1px;
  }
  .max-w-2xl {
    max-width: var(--container-2xl);
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .max-w-7xl {
    max-width: var(--container-7xl);
  }
  .max-w-\[150px\] {
    max-width: 150px;
  }
  .max-w-\[520px\] {
    max-width: 520px;
  }
  .max-w-xl {
    max-width: var(--container-xl);
  }
  .flex-1 {
    flex: 1;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .origin-left {
    transform-origin: left;
  }
  .origin-top {
    transform-origin: top;
  }
  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .rotate-45 {
    rotate: 45deg;
  }
  .animate-float {
    animation: float-slow 7s ease-in-out infinite;
  }
  .animate-orbit {
    animation: spin-slow 60s linear infinite;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .flex-col {
    flex-direction: column;
  }
  .place-items-center {
    place-items: center;
  }
  .items-center {
    align-items: center;
  }
  .items-start {
    align-items: flex-start;
  }
  .justify-between {
    justify-content: space-between;
  }
  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-5 {
    gap: calc(var(--spacing) * 5);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }
  .gap-10 {
    gap: calc(var(--spacing) * 10);
  }
  .gap-14 {
    gap: calc(var(--spacing) * 14);
  }
  .gap-16 {
    gap: calc(var(--spacing) * 16);
  }
  .space-y-1 {
    :where(& > :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)));
    }
  }
  .space-y-2\.5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-4 {
    :where(& > :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)));
    }
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .rounded-2xl {
    border-radius: calc(var(--radius) + 8px);
  }
  .rounded-3xl {
    border-radius: var(--radius-3xl);
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-xl {
    border-radius: calc(var(--radius) + 4px);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-l-2 {
    border-left-style: var(--tw-border-style);
    border-left-width: 2px;
  }
  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }
  .border-border {
    border-color: var(--border);
  }
  .border-border\/60 {
    border-color: var(--border);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--border) 60%, transparent);
    }
  }
  .border-border\/80 {
    border-color: var(--border);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--border) 80%, transparent);
    }
  }
  .border-input {
    border-color: var(--input);
  }
  .border-lavender {
    border-color: var(--lavender);
  }
  .border-primary {
    border-color: var(--primary);
  }
  .border-primary-foreground\/10 {
    border-color: var(--primary-foreground);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--primary-foreground) 10%, transparent);
    }
  }
  .border-primary-foreground\/15 {
    border-color: var(--primary-foreground);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--primary-foreground) 15%, transparent);
    }
  }
  .border-primary\/40 {
    border-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--primary) 40%, transparent);
    }
  }
  .bg-background {
    background-color: var(--background);
  }
  .bg-background\/90 {
    background-color: var(--background);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--background) 90%, transparent);
    }
  }
  .bg-blush {
    background-color: var(--blush);
  }
  .bg-blush\/50 {
    background-color: var(--blush);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--blush) 50%, transparent);
    }
  }
  .bg-blush\/60 {
    background-color: var(--blush);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--blush) 60%, transparent);
    }
  }
  .bg-border {
    background-color: var(--border);
  }
  .bg-card {
    background-color: var(--card);
  }
  .bg-card\/60 {
    background-color: var(--card);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--card) 60%, transparent);
    }
  }
  .bg-ice {
    background-color: var(--ice);
  }
  .bg-primary {
    background-color: var(--primary);
  }
  .bg-primary-foreground\/\[0\.06\] {
    background-color: var(--primary-foreground);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--primary-foreground) 6%, transparent);
    }
  }
  .bg-primary\/20 {
    background-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--primary) 20%, transparent);
    }
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-hero {
    background-image: var(--gradient-hero);
  }
  .bg-petrol {
    background-image: var(--gradient-petrol);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-7 {
    padding: calc(var(--spacing) * 7);
  }
  .p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-5 {
    padding-inline: calc(var(--spacing) * 5);
  }
  .\!py-2\.5 {
    padding-block: calc(var(--spacing) * 2.5) !important;
  }
  .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-6 {
    padding-block: calc(var(--spacing) * 6);
  }
  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }
  .py-24 {
    padding-block: calc(var(--spacing) * 24);
  }
  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }
  .pt-5 {
    padding-top: calc(var(--spacing) * 5);
  }
  .pt-6 {
    padding-top: calc(var(--spacing) * 6);
  }
  .pt-32 {
    padding-top: calc(var(--spacing) * 32);
  }
  .pb-6 {
    padding-bottom: calc(var(--spacing) * 6);
  }
  .pb-20 {
    padding-bottom: calc(var(--spacing) * 20);
  }
  .pl-6 {
    padding-left: calc(var(--spacing) * 6);
  }
  .pl-20 {
    padding-left: calc(var(--spacing) * 20);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .font-display {
    font-family: "Manrope", ui-sans-serif, system-ui, sans-serif;
  }
  .\!text-sm {
    font-size: var(--text-sm) !important;
    line-height: var(--tw-leading, var(--text-sm--line-height)) !important;
  }
  .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-5xl {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--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));
  }
  .eyebrow {
    font-size: 0.75rem;
    letter-spacing: 0.18em;
    font-weight: 600;
    text-transform: uppercase;
    color: var(--color-primary-deep);
  }
  .text-\[2\.6rem\] {
    font-size: 2.6rem;
  }
  .leading-\[1\.1\] {
    --tw-leading: 1.1;
    line-height: 1.1;
  }
  .leading-\[1\.02\] {
    --tw-leading: 1.02;
    line-height: 1.02;
  }
  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }
  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }
  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }
  .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-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .tracking-\[0\.16em\] {
    --tw-tracking: 0.16em;
    letter-spacing: 0.16em;
  }
  .text-destructive {
    color: var(--destructive);
  }
  .text-foreground\/75 {
    color: var(--foreground);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--foreground) 75%, transparent);
    }
  }
  .text-foreground\/80 {
    color: var(--foreground);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--foreground) 80%, transparent);
    }
  }
  .text-ink {
    color: var(--ink);
  }
  .text-lavender {
    color: var(--lavender);
  }
  .text-muted-foreground {
    color: var(--muted-foreground);
  }
  .text-primary {
    color: var(--primary);
  }
  .text-primary-deep {
    color: var(--primary-deep);
  }
  .text-primary-foreground {
    color: var(--primary-foreground);
  }
  .text-primary-foreground\/75 {
    color: var(--primary-foreground);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--primary-foreground) 75%, transparent);
    }
  }
  .text-primary-foreground\/80 {
    color: var(--primary-foreground);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--primary-foreground) 80%, transparent);
    }
  }
  .text-sky {
    color: var(--sky);
  }
  .uppercase {
    text-transform: uppercase;
  }
  .underline {
    text-decoration-line: underline;
  }
  .underline-offset-4 {
    text-underline-offset: 4px;
  }
  .accent-primary-deep {
    accent-color: var(--primary-deep);
  }
  .opacity-70 {
    opacity: 70%;
  }
  .shadow-lift {
    box-shadow: var(--shadow-lift);
  }
  .shadow-soft {
    box-shadow: var(--shadow-soft);
  }
  .backdrop-blur {
    --tw-backdrop-blur: blur(8px);
    -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-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-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-300 {
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
  .group-hover\:translate-x-0\.5 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-x: calc(var(--spacing) * 0.5);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:bg-primary-deep {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        background-color: var(--primary-deep);
      }
    }
  }
  .group-hover\:text-primary-foreground {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--primary-foreground);
      }
    }
  }
  .placeholder\:text-muted-foreground\/60 {
    &::placeholder {
      color: var(--muted-foreground);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--muted-foreground) 60%, transparent);
      }
    }
  }
  .hover\:-translate-y-1 {
    &:hover {
      @media (hover: hover) {
        --tw-translate-y: calc(var(--spacing) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .hover\:border-primary\/40 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--primary);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--primary) 40%, transparent);
        }
      }
    }
  }
  .hover\:border-primary\/50 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--primary);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--primary) 50%, transparent);
        }
      }
    }
  }
  .hover\:border-sky\/50 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--sky);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--sky) 50%, transparent);
        }
      }
    }
  }
  .hover\:bg-primary-foreground\/\[0\.1\] {
    &:hover {
      @media (hover: hover) {
        background-color: var(--primary-foreground);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--primary-foreground) 10%, transparent);
        }
      }
    }
  }
  .hover\:text-primary-deep {
    &:hover {
      @media (hover: hover) {
        color: var(--primary-deep);
      }
    }
  }
  .hover\:shadow-lift {
    &:hover {
      @media (hover: hover) {
        box-shadow: var(--shadow-lift);
      }
    }
  }
  .focus\:not-sr-only {
    &:focus {
      position: static;
      width: auto;
      height: auto;
      padding: 0;
      margin: 0;
      overflow: visible;
      clip: auto;
      white-space: normal;
    }
  }
  .focus\:border-primary {
    &:focus {
      border-color: var(--primary);
    }
  }
  .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-sky\/60 {
    &:focus {
      --tw-ring-color: var(--sky);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--sky) 60%, transparent);
      }
    }
  }
  .focus\:outline-none {
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .sm\:col-span-2 {
    @media (width >= 40rem) {
      grid-column: span 2 / span 2;
    }
  }
  .sm\:mt-0 {
    @media (width >= 40rem) {
      margin-top: calc(var(--spacing) * 0);
    }
  }
  .sm\:grid-cols-2 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .sm\:grid-cols-3 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .sm\:flex-row {
    @media (width >= 40rem) {
      flex-direction: row;
    }
  }
  .sm\:items-center {
    @media (width >= 40rem) {
      align-items: center;
    }
  }
  .sm\:justify-center {
    @media (width >= 40rem) {
      justify-content: center;
    }
  }
  .sm\:gap-6 {
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 6);
    }
  }
  .sm\:p-10 {
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 10);
    }
  }
  .sm\:px-8 {
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 8);
    }
  }
  .sm\:pl-10 {
    @media (width >= 40rem) {
      padding-left: calc(var(--spacing) * 10);
    }
  }
  .sm\:text-3xl {
    @media (width >= 40rem) {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
  }
  .sm\:text-4xl {
    @media (width >= 40rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }
  .sm\:text-6xl {
    @media (width >= 40rem) {
      font-size: var(--text-6xl);
      line-height: var(--tw-leading, var(--text-6xl--line-height));
    }
  }
  .md\:grid-cols-3 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .lg\:relative {
    @media (width >= 64rem) {
      position: relative;
    }
  }
  .lg\:mt-8 {
    @media (width >= 64rem) {
      margin-top: calc(var(--spacing) * 8);
    }
  }
  .lg\:block {
    @media (width >= 64rem) {
      display: block;
    }
  }
  .lg\:flex {
    @media (width >= 64rem) {
      display: flex;
    }
  }
  .lg\:hidden {
    @media (width >= 64rem) {
      display: none;
    }
  }
  .lg\:inline-flex {
    @media (width >= 64rem) {
      display: inline-flex;
    }
  }
  .lg\:grid-cols-3 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-4 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-\[0\.8fr_1\.2fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 0.8fr 1.2fr;
    }
  }
  .lg\:grid-cols-\[0\.9fr_1\.1fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 0.9fr 1.1fr;
    }
  }
  .lg\:grid-cols-\[1\.1fr_1fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 1.1fr 1fr;
    }
  }
  .lg\:grid-cols-\[1fr_1\.1fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 1fr 1.1fr;
    }
  }
  .lg\:grid-cols-\[1fr_1\.15fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 1fr 1.15fr;
    }
  }
  .lg\:gap-8 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .lg\:gap-20 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 20);
    }
  }
  .lg\:p-10 {
    @media (width >= 64rem) {
      padding: calc(var(--spacing) * 10);
    }
  }
  .lg\:py-32 {
    @media (width >= 64rem) {
      padding-block: calc(var(--spacing) * 32);
    }
  }
  .lg\:pt-40 {
    @media (width >= 64rem) {
      padding-top: calc(var(--spacing) * 40);
    }
  }
  .lg\:pb-28 {
    @media (width >= 64rem) {
      padding-bottom: calc(var(--spacing) * 28);
    }
  }
  .lg\:pl-0 {
    @media (width >= 64rem) {
      padding-left: calc(var(--spacing) * 0);
    }
  }
  .lg\:text-5xl {
    @media (width >= 64rem) {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }
  .lg\:text-7xl {
    @media (width >= 64rem) {
      font-size: var(--text-7xl);
      line-height: var(--tw-leading, var(--text-7xl--line-height));
    }
  }
}
:root {
  --radius: 0.875rem;
  --background: oklch(0.966 0.012 60);
  --foreground: oklch(0.27 0.012 240);
  --ink: oklch(0.22 0.01 240);
  --card: oklch(0.99 0.004 60);
  --card-foreground: var(--foreground);
  --popover: var(--card);
  --popover-foreground: var(--foreground);
  --primary: oklch(0.6 0.085 225);
  --primary-deep: oklch(0.45 0.075 228);
  --primary-foreground: oklch(0.99 0 0);
  --secondary: oklch(0.935 0.02 220);
  --secondary-foreground: var(--foreground);
  --ice: oklch(0.935 0.02 220);
  --sky: oklch(0.86 0.07 215);
  --lavender: oklch(0.77 0.035 290);
  --blush: oklch(0.93 0.017 0);
  --muted: oklch(0.94 0.012 60);
  --muted-foreground: oklch(0.48 0.012 240);
  --accent: var(--sky);
  --accent-foreground: var(--ink);
  --destructive: oklch(0.55 0.2 27);
  --destructive-foreground: oklch(0.99 0 0);
  --border: oklch(0.88 0.012 60);
  --input: oklch(0.86 0.012 60);
  --ring: oklch(0.6 0.085 225);
  --gradient-hero: radial-gradient(60% 60% at 80% 30%, var(--sky), transparent 70%),
    radial-gradient(40% 50% at 95% 85%, var(--blush), transparent 70%);
  @supports (color: color-mix(in lab, red, red)) {
    --gradient-hero: radial-gradient(60% 60% at 80% 30%, color-mix(in oklab, var(--sky) 45%, transparent), transparent 70%),
    radial-gradient(40% 50% at 95% 85%, color-mix(in oklab, var(--blush) 90%, transparent), transparent 70%);
  }
  --gradient-petrol: linear-gradient(150deg, oklch(0.42 0.07 228), oklch(0.52 0.085 222) 60%, oklch(0.47 0.06 250));
  --shadow-soft: 0 1px 2px oklch(0.3 0.02 240 / 0.04), 0 12px 32px -12px oklch(0.3 0.04 230 / 0.12);
  --shadow-lift: 0 2px 4px oklch(0.3 0.02 240 / 0.05), 0 24px 48px -16px oklch(0.35 0.06 225 / 0.22);
}
@layer base {
  * {
    border-color: var(--color-border);
  }
  html {
    scroll-behavior: smooth;
    scroll-padding-top: 88px;
  }
  body {
    background-color: var(--color-background);
    color: var(--color-foreground);
    font-family: var(--font-sans);
    -webkit-font-smoothing: antialiased;
  }
  h1, h2, h3 {
    font-family: var(--font-display);
    letter-spacing: -0.025em;
  }
  :focus-visible {
    outline: 2px solid var(--color-primary);
    outline-offset: 3px;
    border-radius: 6px;
  }
  @media (prefers-reduced-motion: reduce) {
    html {
      scroll-behavior: auto;
    }
    *, *::before, *::after {
      animation-duration: 0.01ms !important;
      transition-duration: 0.01ms !important;
    }
  }
}
@keyframes float-slow {
  0%,100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
}
@keyframes spin-slow {
  to {
    transform: rotate(360deg);
  }
}
@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-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-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-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: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@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-space-y-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: 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-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;
    }
  }
}

/* WordPress standalone landing integration */
.wv-site{margin:0!important;overflow-x:hidden}
.wv-logo{width:auto;height:52px;max-width:226px;object-fit:contain}
.wv-site footer .wv-logo{height:62px}
.wv-site header{isolation:isolate}
.wv-mobile-nav{background:var(--color-background);padding:20px 24px 30px;box-shadow:0 20px 40px #0002;border-top:1px solid var(--color-border);max-height:calc(100dvh - 76px);overflow:auto}
.wv-mobile-nav[hidden]{display:none!important}
.wv-mobile-nav a{display:block;padding:13px 8px;font-weight:600;color:var(--color-ink);border-bottom:1px solid var(--color-border)}
.wv-mobile-nav a:last-child{background:var(--color-primary-deep);border:0;border-radius:99px;color:white;text-align:center;margin-top:18px}
.wv-faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .32s cubic-bezier(.2,.8,.2,1),opacity .2s ease;opacity:0}
.wv-faq-answer>p{min-height:0;overflow:hidden;margin:0}
.wv-faq-answer.is-open{grid-template-rows:1fr;opacity:1}
.wv-site button{cursor:pointer}
.wv-site .wv-header-scrolled{border-bottom:1px solid var(--color-border)!important;background:color-mix(in srgb,var(--color-background) 94%,transparent)!important;backdrop-filter:blur(15px)}
@media(max-width:1023px){.wv-site header .wv-logo{height:46px;max-width:190px}}
@media(max-width:420px){.wv-site header .wv-logo{height:40px;max-width:158px}}
@media(prefers-reduced-motion:reduce){.wv-faq-answer{transition:none}}
/* Subtle entrance motion – does not interfere with accessibility. */
@keyframes wv-intro { from { opacity:0;transform:translateY(14px) } to { opacity:1;transform:translateY(0) } }
@media(prefers-reduced-motion:no-preference){
  .wv-site #top h1{animation:wv-intro .65s ease-out both}
  .wv-site #top p{animation:wv-intro .7s .12s ease-out both}
  .wv-site #top a.btn-primary{animation:wv-intro .7s .22s ease-out both}
  .wv-site.wv-animate-ready .wv-reveal{opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1)}
  .wv-site.wv-animate-ready .wv-reveal.is-visible{opacity:1;transform:translateY(0)}
}

/* Workplace Vitality v2: dual-line conversion buttons and responsive header */
.wv-site .wv-cta{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:57px;padding:12px 23px;text-align:center;line-height:1.2;white-space:normal;text-decoration:none}
.wv-site .wv-cta-title{display:block;font-size:14px;line-height:1.3;font-weight:750}
.wv-site .wv-cta-subtitle{display:block;font-size:11px;line-height:1.3;font-weight:500;opacity:.83;letter-spacing:.015em}
.wv-site header .wv-cta-title{font-size:12px}
.wv-site header .wv-cta-subtitle{font-size:10px}
.wv-header-actions{display:none;align-items:center;gap:10px;margin-left:8px;flex-shrink:0}
.wv-site .wv-header-secondary{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:10px 16px;border:1px solid var(--color-primary);border-radius:99px;color:var(--color-primary-deep);font-size:12px;font-weight:700;white-space:nowrap;background:color-mix(in srgb,var(--color-background) 85%,transparent);transition:background .2s,transform .2s}
.wv-site .wv-header-secondary:hover{background:var(--color-ice);transform:translateY(-1px)}
@media(min-width:1024px){.wv-header-actions{display:flex}.wv-site header .wv-header-nav{gap:13px}.wv-site header .wv-header-nav a{font-size:12px}.wv-site header .wv-logo{max-width:170px;height:43px}}
@media(min-width:1340px){.wv-site header .wv-header-nav{gap:24px}.wv-site header .wv-header-nav a{font-size:14px}.wv-site header .wv-logo{max-width:212px;height:52px}.wv-site header .wv-cta-title{font-size:13px}}
.wv-site .wv-mobile-secondary{border:1px solid var(--color-border)!important;border-radius:14px!important;color:var(--color-primary-deep)!important;text-align:center!important;margin-top:13px!important;background:var(--color-background)!important}
.wv-site .wv-mobile-cta{display:flex!important;flex-direction:column!important;border-radius:16px!important;background:var(--color-primary-deep)!important;color:#fff!important;margin-top:10px!important;padding:14px!important;border:0!important}
.wv-site .wv-vita-link{display:inline-flex;align-items:center;color:var(--color-primary-deep);font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:4px;margin-top:12px}
.wv-site .wv-vita-link:hover{text-decoration-thickness:2px}

/* WordPress media slots */
.wv-site .wv-hero-media-slot{border-radius:26px;isolation:isolate}
.wv-site .wv-hero-upload{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:26px;box-shadow:0 20px 60px rgba(29,95,108,.16);z-index:8}
.wv-site .wv-portrait-slot{overflow:hidden}
.wv-site .wv-portrait-upload{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:5}
.wv-site .wv-reference-photo:empty{display:none}
.wv-site .wv-reference-photo{display:block;flex:none;width:42px;height:42px;border-radius:50%;overflow:hidden;background:var(--color-ice)}
.wv-site .wv-reference-upload{width:100%;height:100%;object-fit:cover}
.wv-site .wv-reference-photo:not(:empty)+span{display:none}

/* The old embedded form has become an inviting three-step preview card. */
.wv-site .wv-contact-teaser{height:100%}
.wv-site .wv-teaser-title{color:var(--color-ink);font-size:clamp(23px,3vw,31px);font-weight:650;line-height:1.2;margin:14px 0 26px}
.wv-site .wv-teaser-steps{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:18px}
.wv-site .wv-teaser-steps li{display:flex;align-items:flex-start;gap:15px;padding-bottom:16px;border-bottom:1px solid var(--color-border)}
.wv-site .wv-teaser-steps li>span{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:15px;background:var(--color-ice);color:var(--color-primary-deep);font-weight:700;font-size:13px}
.wv-site .wv-teaser-steps strong,.wv-site .wv-teaser-steps small{display:block}
.wv-site .wv-teaser-steps strong{font-weight:700;margin-bottom:4px}
.wv-site .wv-teaser-steps small{font-size:13px;color:var(--color-muted-foreground);line-height:1.55}
.wv-site .wv-teaser-cta{width:100%}

/* High-quality accessible 3-step form dialog */
.wv-site [hidden]{display:none!important}
.wv-site.wv-modal-open{overflow:hidden!important}
.wv-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:24px;isolation:isolate}
.wv-modal[hidden]{display:none!important}
.wv-modal-backdrop{position:absolute;inset:0;background:rgba(19,42,54,.65);backdrop-filter:blur(8px);cursor:pointer}
.wv-dialog{position:relative;z-index:2;width:min(100%,570px);max-height:min(94dvh,860px);overflow-y:auto;overscroll-behavior:contain;background:#fff;border:1px solid #e5eced;border-radius:28px;padding:34px 39px 30px;box-shadow:0 32px 100px rgba(18,45,58,.32);outline:0;animation:wv-modal-in .33s cubic-bezier(.2,.8,.2,1) both}
@keyframes wv-modal-in{from{opacity:0;transform:translateY(18px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
.wv-modal-close{position:absolute;top:16px;right:17px;width:36px;height:36px;border-radius:50%;background:#eef7f8;border:1px solid #deebef;display:grid;place-items:center;color:#335d6c;font:300 27px/1 system-ui;transition:background .2s,transform .2s}
.wv-modal-close:hover{background:#d8f0f3;transform:rotate(90deg)}
.wv-dialog-eyebrow{display:block;font-size:10px;letter-spacing:.18em;font-weight:800;color:#3f8fa9;padding-right:50px;margin:2px 0 12px}
.wv-dialog h2{font-size:clamp(28px,4vw,37px);line-height:1.17;letter-spacing:-.035em;color:#213844;font-weight:650;margin:0 40px 8px 0}
.wv-dialog-description{font-size:14px;line-height:1.6;color:#65737c;margin-bottom:20px}
.wv-progress{display:flex;align-items:center;gap:16px;margin-bottom:20px}
.wv-progress-track{display:block;height:5px;border-radius:100px;background:#e6eef0;flex:1;overflow:hidden}
.wv-progress-bar{display:block;width:33.333%;height:100%;background:linear-gradient(90deg,#3f8fa9,#74bcd0);transition:width .35s ease;border-radius:100px}
.wv-progress-count{font-size:12px;font-weight:700;color:#4b7480;white-space:nowrap}
.wv-form-step{animation:wv-step-in .24s ease both}
@keyframes wv-step-in{from{opacity:.35;transform:translateX(8px)}to{opacity:1;transform:translateX(0)}}
.wv-form-step[hidden]{display:none!important}
.wv-step-tag{display:block;font-size:12px;color:#3f8fa9;font-weight:750;letter-spacing:.08em;margin-bottom:8px}
.wv-form-step h3{font:650 22px/1.25 var(--font-display,system-ui);letter-spacing:-.025em;color:#253a47;margin-bottom:18px}
.wv-form-step>p{font-size:14px;color:#607785;margin:0 0 20px;line-height:1.6}
.wv-form-step label:not(.wv-consent){display:block;font-size:13px;color:#294350;font-weight:700;margin:16px 0 8px}
.wv-form-step label span:not(.wv-consent span){color:#a54545}
.wv-form-step input:not([type="checkbox"]){display:block;width:100%;height:51px;padding:13px 15px;border:1px solid #cadbdc;border-radius:13px;background:#fbfefe;color:#1e3a48;font:500 15px/1.2 system-ui;transition:border-color .2s,box-shadow .2s}
.wv-form-step input:not([type="checkbox"]):focus{border-color:#3f8fa9;box-shadow:0 0 0 3px #a0e0f166;outline:0}
.wv-form-step input[aria-invalid="true"]{border-color:#bd5d60;box-shadow:0 0 0 2px #f3caca}
.wv-form-step input::placeholder{color:#8b9da5;font-weight:400}
.wv-form-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.wv-quick-label{font-size:12px;font-weight:700;color:#637e85;margin:23px 0 10px}
.wv-employee-shortcuts{display:flex;flex-wrap:wrap;gap:9px}
.wv-employee-shortcuts button{min-width:55px;padding:9px 13px;border-radius:12px;border:1px solid #d5e3e6;background:#f4fafb;font-size:14px;font-weight:650;color:#3d7283;transition:background .2s,border-color .2s}
.wv-employee-shortcuts button:hover,.wv-employee-shortcuts button[aria-pressed="true"]{background:#c8edf4;border-color:#3f8fa9}
.wv-consent{display:flex;gap:12px;align-items:flex-start;margin-top:22px;font-size:12px;line-height:1.55;font-weight:500;color:#556971;cursor:pointer}
.wv-consent input{flex:0 0 19px;width:19px;height:19px;accent-color:#3f8fa9;margin-top:2px}
.wv-consent a{color:#226f87;text-decoration:underline;text-underline-offset:3px;font-weight:700}
.wv-consent strong{color:#ad4b51}
.wv-form-error{background:#fff1f0;color:#8f3039;border:1px solid #eec2c5;border-radius:12px;padding:11px 13px;margin:17px 0 0;font-size:13px;line-height:1.5}
.wv-form-error[hidden]{display:none!important}
.wv-form-controls{display:flex;justify-content:flex-end;gap:12px;align-items:center;margin-top:25px}
.wv-form-controls button{min-height:48px;padding:11px 22px;border-radius:13px;font-size:14px;font-weight:750;transition:background .2s,transform .2s}
.wv-form-controls button:hover{transform:translateY(-1px)}
.wv-back{margin-right:auto;color:#4d6672;border:1px solid #d5e1e4;background:#fff}
.wv-next,.wv-submit{background:#3f8fa9;color:#fff;border:1px solid #3f8fa9}
.wv-next:hover,.wv-submit:hover{background:#2d7891}
.wv-submit{display:inline-flex;flex-direction:column;gap:1px;align-items:center;text-align:center;min-height:57px!important;padding-inline:17px!important;line-height:1.25}
.wv-submit .wv-cta-title{font-size:13px;font-weight:750}
.wv-submit .wv-cta-subtitle{font-size:10px;font-weight:500;opacity:.88}
.wv-submit:disabled{cursor:progress;opacity:.65}
.wv-form-hint{font-size:11px;line-height:1.55;color:#74898f;text-align:center;margin:14px 0 0}
.wv-honeypot{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.wv-success{text-align:center;padding:15px 5px 5px}
.wv-success[hidden]{display:none!important}
.wv-success-icon{width:68px;height:68px;border-radius:50%;background:#d3f3eb;color:#2f887c;display:grid;place-items:center;font-size:38px;font-weight:700;margin:0 auto 22px}
.wv-success h3{font-size:24px;color:#21424c;font-weight:700;margin:0 0 14px}
.wv-success p{font-size:15px;line-height:1.65;color:#61727a;margin-bottom:25px}
.wv-success button{margin:0 auto}
@media(max-width:640px){
  .wv-modal{padding:10px}
  .wv-dialog{border-radius:21px;padding:25px 19px 21px;max-height:calc(100dvh - 20px)}
  .wv-modal-close{top:11px;right:11px;width:32px;height:32px}
  .wv-dialog h2{font-size:28px;margin-right:22px}
  .wv-dialog-description{font-size:13px}
  .wv-form-columns{grid-template-columns:1fr;gap:0}
  .wv-form-step input:not([type="checkbox"]){height:47px}
  .wv-form-controls{gap:8px}
  .wv-form-controls button{padding:10px 14px}
  .wv-submit .wv-cta-title{font-size:12px}
}
@media(max-width:380px){.wv-dialog h2{font-size:25px}.wv-submit .wv-cta-title{font-size:11px}}
@media(prefers-reduced-motion:reduce){.wv-dialog,.wv-form-step{animation:none}.wv-progress-bar{transition:none}}
/* Persisted visual-editor line breaks retain their layout for visitors. */
.wv-site [data-wv-edit]{white-space:pre-line}


/* Workplace Vitality 3.3.0 – Schriftgrößen gemäß Auftrag */
/* Hero-Hauptüberschrift 65px auf großen Displays, mobil flüssig verkleinert. */
.wv-site #top h1 {
  font-size: 65px;
  line-height: 1.07;
}
@media (max-width: 1023px) {
  .wv-site #top h1 {
    font-size: clamp(38px, 6vw, 60px);
  }
}
/* Reguläre Fließtexte: 16px. Überschriften, Eyebrows, Zitate und
   bewusst kleinere Formular-/Button-Beschriftungen bleiben unverändert. */
.wv-site main section p:not(.eyebrow):not(.font-display),
.wv-site footer p:not(.eyebrow) {
  font-size: 16px;
}


/* Workplace Vitality 3.4.0 – Professioneller Foto-Hero mit ruhiger Lesefläche. */
.wv-site #top {
  background-color: #edf2f3;
  background-image:
    linear-gradient(90deg,
      rgba(249, 246, 242, .96) 0%,
      rgba(246, 246, 244, .92) 24%,
      rgba(239, 246, 246, .77) 42%,
      rgba(227, 240, 241, .18) 65%,
      rgba(230, 242, 245, .05) 100%),
    var(--wv-hero-image, url('hero-workplace-vitality.webp')) !important;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  min-height: 710px;
  isolation: isolate;
}
/* The photograph itself is the right-side visual; don't obscure the presenter
   with the older abstract animated diagram. Uploads still work as backgrounds
   via Einstellungen > Workplace Vitality > Hero-Hintergrund. */
.wv-site #top .wv-hero-media-slot {
  display: none !important;
}
.wv-site #top > div:first-child > div:first-child {
  position: relative;
  z-index: 1;
}
.wv-site #top h1 {
  max-width: 690px;
  text-wrap: balance;
}
.wv-site #top .text-muted-foreground {
  color: #33444b;
}
.wv-site #top .text-foreground\/80 {
  color: #354a50;
}
@media (max-width: 1023px) {
  .wv-site #top {
    background-position: 66% center;
    background-image:
      linear-gradient(90deg,
        rgba(249, 246, 242, .96) 0%,
        rgba(246, 248, 247, .90) 50%,
        rgba(231, 243, 245, .57) 100%),
      var(--wv-hero-image, url('hero-workplace-vitality.webp')) !important;
  }
}
@media (max-width: 640px) {
  .wv-site #top {
    background-position: 63% center;
    background-image:
      linear-gradient(180deg,
        rgba(249, 246, 242, .97) 0%,
        rgba(249, 246, 242, .93) 49%,
        rgba(233, 246, 247, .84) 100%),
      var(--wv-hero-image, url('hero-workplace-vitality.webp')) !important;
    min-height: 0;
  }
}


/* Workplace Vitality 3.5.0 – calm, accessible scroll motion
   All content remains visible when JavaScript is disabled. */
@media (prefers-reduced-motion: no-preference) {
  .wv-site.wv-animate-ready :is(.wv-reveal, .wv-scroll-motion) {
    opacity: 0;
    transform: translate3d(var(--wv-enter-x, 0px), var(--wv-enter-y, 22px), 0)
               scale(var(--wv-enter-scale, 1));
    transition:
      opacity 720ms cubic-bezier(.22,1,.36,1),
      transform 800ms cubic-bezier(.22,1,.36,1);
    transition-delay: var(--wv-scroll-delay, 0ms);
    will-change: opacity, transform;
  }
  .wv-site.wv-animate-ready :is(.wv-reveal, .wv-scroll-motion).is-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    will-change: auto;
  }
  .wv-site .wv-motion-left { --wv-enter-x: -24px; --wv-enter-y: 8px; }
  .wv-site .wv-motion-right { --wv-enter-x: 24px; --wv-enter-y: 8px; }
  .wv-site .wv-motion-soft { --wv-enter-y: 14px; --wv-enter-scale: .985; }
  /* Keep the existing interaction affordance of service / problem / USP cards. */
  .wv-site.wv-animate-ready :is(#herausforderung,#leistungen,#warum) li.wv-scroll-motion.is-visible:hover,
  .wv-site.wv-animate-ready #leistungen article.wv-scroll-motion.is-visible:hover {
    transform: translate3d(0, -4px, 0) scale(1);
    transition-delay: 0ms;
  }
  /* The timeline steps softly light up as they enter the viewport. */
  .wv-site #leistungen .wv-scroll-steps > li.wv-scroll-motion > span:first-child {
    transition: background-color 350ms ease, border-color 350ms ease, box-shadow 350ms ease;
  }
  .wv-site #leistungen .wv-scroll-steps > li.wv-scroll-motion.is-visible > span:first-child {
    border-color: rgba(63, 143, 169, .55);
    box-shadow: 0 0 0 6px rgba(160, 224, 241, .17);
  }
  @media(min-width: 1024px) {
    .wv-site #top { background-position: center calc(50% + var(--wv-hero-shift, 0px)); }
  }
}
@media(prefers-reduced-motion: reduce) {
  .wv-site :is(.wv-reveal, .wv-scroll-motion) {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }
}
