/* Build entry for the site stylesheet. */
/* Frozen baseline snapshot for the current utility layer and design tokens. */

/* Legacy visual baseline imported from the original implementation.
   Keep new structural work around this file until the style system is rebuilt from source. */
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap");
/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root,
  :host {
    --font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;
    --font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, monospace;
    --color-red-100: oklch(93.6% 0.032 17.717);
    --color-red-700: oklch(50.5% 0.213 27.518);
    --color-green-100: oklch(96.2% 0.044 156.743);
    --color-green-700: oklch(52.7% 0.154 150.069);
    --color-blue-100: oklch(93.2% 0.032 255.585);
    --color-blue-700: oklch(48.8% 0.243 264.376);
    --color-gray-50: oklch(98.5% 0.002 247.839);
    --color-gray-100: oklch(96.7% 0.003 264.542);
    --color-gray-200: oklch(92.8% 0.006 264.531);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-sm: 24rem;
    --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: 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;
    --text-8xl: 6rem;
    --text-8xl--line-height: 1;
    --font-weight-medium: 500;
    --font-weight-bold: 700;
    --font-weight-black: 900;
    --tracking-tighter: -0.05em;
    --tracking-tight: -0.025em;
    --tracking-wide: 0.025em;
    --tracking-wider: 0.05em;
    --tracking-widest: 0.1em;
    --leading-tight: 1.25;
    --leading-relaxed: 1.625;
    --radius-sm: 0.25rem;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --radius-2xl: 1rem;
    --radius-3xl: 1.5rem;
    --drop-shadow-sm: 0 1px 2px rgb(0 0 0 / 0.15);
    --drop-shadow-lg: 0 4px 4px rgb(0 0 0 / 0.15);
    --animate-ping: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
    --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    --blur-sm: 8px;
    --blur-3xl: 64px;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --color-brand-black: #171717;
    --color-brand-paper: #f5f0e8;
    --color-brand-coral: #ff5a36;
    --color-brand-lime: #c9ff3b;
    --color-brand-gray: #8b867e;
    /* Canonical grounded volume treatment.
       Use this for blocks that should feel like they lie directly on the canvas:
       the green contour cards in "Что вы получите" and the "Запуск частной практики" block. */
    --volume-grounded-green-fill: linear-gradient(
      to left bottom,
      rgb(181, 217, 84) 0px,
      rgb(156, 194, 60) 20px,
      rgb(156, 194, 60) calc(50% - 30px),
      rgb(79, 104, 21) 50%,
      rgb(122, 154, 40) calc(50% + 30px),
      rgb(122, 154, 40) calc(100% - 20px),
      rgb(141, 176, 48) 100%
    );
    --volume-grounded-coral-fill: linear-gradient(
      to left bottom,
      rgb(255, 139, 106) 0px,
      rgb(222, 74, 42) 20px,
      rgb(222, 74, 42) calc(50% - 30px),
      rgb(154, 48, 25) 50%,
      rgb(195, 60, 31) calc(50% + 30px),
      rgb(195, 60, 31) calc(100% - 20px),
      rgb(242, 107, 78) 100%
    );
    --volume-grounded-ink-fill: linear-gradient(
      to left bottom,
      rgb(51, 51, 51) 0px,
      rgb(34, 34, 34) 20px,
      rgb(34, 34, 34) calc(50% - 30px),
      rgb(17, 17, 17) 50%,
      rgb(26, 26, 26) calc(50% + 30px),
      rgb(26, 26, 26) calc(100% - 20px),
      rgb(51, 51, 51) 100%
    );
    --volume-grounded-shadow: drop-shadow(6px 6px 2px rgba(0, 0, 0, 0.15));
  }
}
@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;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-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 {
  .pointer-events-none {
    pointer-events: none;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .start {
    inset-inline-start: var(--spacing);
  }
  .end {
    inset-inline-end: var(--spacing);
  }
  .-top-3 {
    top: calc(var(--spacing) * -3);
  }
  .-top-4 {
    top: calc(var(--spacing) * -4);
  }
  .-top-8 {
    top: calc(var(--spacing) * -8);
  }
  .-top-\[16\.5px\] {
    top: calc(16.5px * -1);
  }
  .-top-\[16px\] {
    top: calc(16px * -1);
  }
  .-top-\[20\%\] {
    top: calc(20% * -1);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-1\/2 {
    top: calc(1 / 2 * 100%);
  }
  .top-4 {
    top: calc(var(--spacing) * 4);
  }
  .top-10 {
    top: calc(var(--spacing) * 10);
  }
  .top-\[-100px\] {
    top: -100px;
  }
  .-right-3 {
    right: calc(var(--spacing) * -3);
  }
  .-right-24 {
    right: calc(var(--spacing) * -24);
  }
  .-right-\[10\%\] {
    right: calc(10% * -1);
  }
  .-right-\[16\.5px\] {
    right: calc(16.5px * -1);
  }
  .-right-\[16px\] {
    right: calc(16px * -1);
  }
  .right-0 {
    right: calc(var(--spacing) * 0);
  }
  .right-6 {
    right: calc(var(--spacing) * 6);
  }
  .right-10 {
    right: calc(var(--spacing) * 10);
  }
  .-bottom-24 {
    bottom: calc(var(--spacing) * -24);
  }
  .-bottom-\[16\.5px\] {
    bottom: calc(16.5px * -1);
  }
  .-bottom-\[16px\] {
    bottom: calc(16px * -1);
  }
  .-bottom-\[20\%\] {
    bottom: calc(20% * -1);
  }
  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }
  .bottom-6 {
    bottom: calc(var(--spacing) * 6);
  }
  .bottom-\[-100px\] {
    bottom: -100px;
  }
  .-left-3 {
    left: calc(var(--spacing) * -3);
  }
  .-left-4 {
    left: calc(var(--spacing) * -4);
  }
  .-left-8 {
    left: calc(var(--spacing) * -8);
  }
  .-left-\[10\%\] {
    left: calc(10% * -1);
  }
  .-left-\[16\.5px\] {
    left: calc(16.5px * -1);
  }
  .-left-\[16px\] {
    left: calc(16px * -1);
  }
  .left-0 {
    left: calc(var(--spacing) * 0);
  }
  .left-1\/2 {
    left: calc(1 / 2 * 100%);
  }
  .left-4 {
    left: calc(var(--spacing) * 4);
  }
  .left-6 {
    left: calc(var(--spacing) * 6);
  }
  .left-8 {
    left: calc(var(--spacing) * 8);
  }
  .-z-10 {
    z-index: calc(10 * -1);
  }
  .-z-20 {
    z-index: calc(20 * -1);
  }
  .z-0 {
    z-index: 0;
  }
  .z-10 {
    z-index: 10;
  }
  .z-20 {
    z-index: 20;
  }
  .z-30 {
    z-index: 30;
  }
  .z-40 {
    z-index: 40;
  }
  .z-50 {
    z-index: 50;
  }
  .col-span-1 {
    grid-column: span 1 / span 1;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .mx-auto {
    margin-inline: auto;
  }
  .my-4 {
    margin-block: calc(var(--spacing) * 4);
  }
  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-8 {
    margin-top: calc(var(--spacing) * 8);
  }
  .mt-16 {
    margin-top: calc(var(--spacing) * 16);
  }
  .mt-20 {
    margin-top: calc(var(--spacing) * 20);
  }
  .mt-auto {
    margin-top: auto;
  }
  .-mr-8 {
    margin-right: calc(var(--spacing) * -8);
  }
  .-mb-\[1px\] {
    margin-bottom: calc(1px * -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-1 {
    margin-left: calc(var(--spacing) * 1);
  }
  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }
  .ml-auto {
    margin-left: auto;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .aspect-\[4\/3\] {
    aspect-ratio: 4/3;
  }
  .aspect-\[16\/9\] {
    aspect-ratio: 16/9;
  }
  .aspect-square {
    aspect-ratio: 1 / 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-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-14 {
    height: calc(var(--spacing) * 14);
  }
  .h-16 {
    height: calc(var(--spacing) * 16);
  }
  .h-20 {
    height: calc(var(--spacing) * 20);
  }
  .h-24 {
    height: calc(var(--spacing) * 24);
  }
  .h-48 {
    height: calc(var(--spacing) * 48);
  }
  .h-96 {
    height: calc(var(--spacing) * 96);
  }
  .h-\[63\.5px\] {
    height: 63.5px;
  }
  .h-\[72\.5px\] {
    height: 72.5px;
  }
  .h-\[72px\] {
    height: 72px;
  }
  .h-\[81px\] {
    height: 81px;
  }
  .h-\[100\%\] {
    height: 100%;
  }
  .h-\[150\%\] {
    height: 150%;
  }
  .h-auto {
    height: auto;
  }
  .h-full {
    height: 100%;
  }
  .min-h-screen {
    min-height: 100vh;
  }
  .w-1\.5 {
    width: calc(var(--spacing) * 1.5);
  }
  .w-2 {
    width: calc(var(--spacing) * 2);
  }
  .w-3 {
    width: calc(var(--spacing) * 3);
  }
  .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-48 {
    width: calc(var(--spacing) * 48);
  }
  .w-96 {
    width: calc(var(--spacing) * 96);
  }
  .w-\[40\%\] {
    width: 40%;
  }
  .w-\[50\%\] {
    width: 50%;
  }
  .w-\[231px\] {
    width: 231px;
  }
  .w-\[240px\] {
    width: 240px;
  }
  .w-\[271px\] {
    width: 271px;
  }
  .w-\[280px\] {
    width: 280px;
  }
  .w-\[311px\] {
    width: 311px;
  }
  .w-\[320px\] {
    width: 320px;
  }
  .w-\[500px\] {
    width: 500px;
  }
  .w-\[calc\(100\%-6rem\)\] {
    width: calc(100% - 6rem);
  }
  .w-auto {
    width: auto;
  }
  .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-4xl {
    max-width: var(--container-4xl);
  }
  .max-w-5xl {
    max-width: var(--container-5xl);
  }
  .max-w-7xl {
    max-width: var(--container-7xl);
  }
  .max-w-\[600px\] {
    max-width: 600px;
  }
  .max-w-lg {
    max-width: var(--container-lg);
  }
  .max-w-md {
    max-width: var(--container-md);
  }
  .max-w-none {
    max-width: none;
  }
  .max-w-sm {
    max-width: var(--container-sm);
  }
  .max-w-xl {
    max-width: var(--container-xl);
  }
  .flex-1 {
    flex: 1;
  }
  .flex-shrink-0 {
    flex-shrink: 0;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .flex-grow {
    flex-grow: 1;
  }
  .origin-bottom-right {
    transform-origin: 100% 100%;
  }
  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[-2px\] {
    --tw-translate-x: -2px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[1px\] {
    --tw-translate-x: 1px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[2px\] {
    --tw-translate-x: 2px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[3px\] {
    --tw-translate-x: 3px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[4px\] {
    --tw-translate-x: 4px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[5px\] {
    --tw-translate-x: 5px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[6px\] {
    --tw-translate-x: 6px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[7px\] {
    --tw-translate-x: 7px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[8px\] {
    --tw-translate-x: 8px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[9px\] {
    --tw-translate-x: 9px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[10\%\] {
    --tw-translate-x: 10%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[10px\] {
    --tw-translate-x: 10px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[11px\] {
    --tw-translate-x: 11px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[12px\] {
    --tw-translate-x: 12px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[14px\] {
    --tw-translate-x: 14px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-\[16px\] {
    --tw-translate-x: 16px;
    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);
  }
  .translate-y-\[-2px\] {
    --tw-translate-y: -2px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[1px\] {
    --tw-translate-y: 1px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[2px\] {
    --tw-translate-y: 2px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[3px\] {
    --tw-translate-y: 3px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[4px\] {
    --tw-translate-y: 4px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[5px\] {
    --tw-translate-y: 5px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[6px\] {
    --tw-translate-y: 6px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[7px\] {
    --tw-translate-y: 7px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[8px\] {
    --tw-translate-y: 8px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[9px\] {
    --tw-translate-y: 9px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[10\%\] {
    --tw-translate-y: 10%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[10px\] {
    --tw-translate-y: 10px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[11px\] {
    --tw-translate-y: 11px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[12px\] {
    --tw-translate-y: 12px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[14px\] {
    --tw-translate-y: 14px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-\[16px\] {
    --tw-translate-y: 16px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .scale-105 {
    --tw-scale-x: 105%;
    --tw-scale-y: 105%;
    --tw-scale-z: 105%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }
  .-rotate-1 {
    rotate: calc(1deg * -1);
  }
  .-rotate-2 {
    rotate: calc(2deg * -1);
  }
  .-rotate-3 {
    rotate: calc(3deg * -1);
  }
  .-rotate-6 {
    rotate: calc(6deg * -1);
  }
  .-rotate-12 {
    rotate: calc(12deg * -1);
  }
  .rotate-2 {
    rotate: 2deg;
  }
  .rotate-3 {
    rotate: 3deg;
  }
  .rotate-12 {
    rotate: 12deg;
  }
  .rotate-45 {
    rotate: 45deg;
  }
  .rotate-180 {
    rotate: 180deg;
  }
  .rotate-\[-1deg\] {
    rotate: -1deg;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,)
      var(--tw-skew-y,);
  }
  .animate-ping {
    animation: var(--animate-ping);
  }
  .animate-pulse {
    animation: var(--animate-pulse);
  }
  .cursor-default {
    cursor: default;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-center {
    align-items: center;
  }
  .items-start {
    align-items: flex-start;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .justify-start {
    justify-content: flex-start;
  }
  .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);
  }
  .space-y-3 {
    :where(& > :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)));
    }
  }
  .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)));
    }
  }
  .space-y-8 {
    :where(& > :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)));
    }
  }
  .space-y-12 {
    :where(& > :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-8 {
    column-gap: calc(var(--spacing) * 8);
  }
  .gap-y-12 {
    row-gap: calc(var(--spacing) * 12);
  }
  .divide-brand-black\/10 {
    :where(& > :not(:last-child)) {
      border-color: color-mix(in srgb, #171717 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-brand-black) 10%, transparent);
      }
    }
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }
  .rounded-3xl {
    border-radius: var(--radius-3xl);
  }
  .rounded-\[2rem\] {
    border-radius: 2rem;
  }
  .rounded-\[11\.5px\] {
    border-radius: 11.5px;
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .rounded-md {
    border-radius: var(--radius-md);
  }
  .rounded-sm {
    border-radius: var(--radius-sm);
  }
  .rounded-xl {
    border-radius: var(--radius-xl);
  }
  .rounded-t-lg {
    border-top-left-radius: var(--radius-lg);
    border-top-right-radius: var(--radius-lg);
  }
  .rounded-t-xl {
    border-top-left-radius: var(--radius-xl);
    border-top-right-radius: var(--radius-xl);
  }
  .rounded-b-none {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
  }
  .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-r {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-b-0 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  .border-l {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }
  .border-\[\#9C9382\] {
    border-color: #9c9382;
  }
  .border-\[\#9FD01C\] {
    border-color: #9fd01c;
  }
  .border-\[\#333\] {
    border-color: #333;
  }
  .border-\[\#373737\] {
    border-color: #373737;
  }
  .border-\[\#404040\] {
    border-color: #404040;
  }
  .border-\[\#B8B0A0\] {
    border-color: #b8b0a0;
  }
  .border-\[\#DE4A2A\] {
    border-color: #de4a2a;
  }
  .border-\[\#E6502E\] {
    border-color: #e6502e;
  }
  .border-\[\#FF6C4C\] {
    border-color: #ff6c4c;
  }
  .border-brand-black {
    border-color: var(--color-brand-black);
  }
  .border-brand-black\/5 {
    border-color: color-mix(in srgb, #171717 5%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-brand-black) 5%, transparent);
    }
  }
  .border-brand-black\/10 {
    border-color: color-mix(in srgb, #171717 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-brand-black) 10%, transparent);
    }
  }
  .border-brand-black\/20 {
    border-color: color-mix(in srgb, #171717 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-brand-black) 20%, transparent);
    }
  }
  .border-brand-gray\/30 {
    border-color: color-mix(in srgb, #8b867e 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-brand-gray) 30%, transparent);
    }
  }
  .border-brand-lime {
    border-color: var(--color-brand-lime);
  }
  .border-brand-lime\/20 {
    border-color: color-mix(in srgb, #c9ff3b 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-brand-lime) 20%, transparent);
    }
  }
  .border-gray-200 {
    border-color: var(--color-gray-200);
  }
  .border-transparent {
    border-color: transparent;
  }
  .border-white\/5 {
    border-color: color-mix(in srgb, #fff 5%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 5%, transparent);
    }
  }
  .border-white\/10 {
    border-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
  .border-b-white {
    border-bottom-color: var(--color-white);
  }
  .bg-\[\#8DB030\]\/20 {
    background-color: color-mix(in oklab, #8db030 20%, transparent);
  }
  .bg-\[\#9C9382\]\/20 {
    background-color: color-mix(in oklab, #9c9382 20%, transparent);
  }
  .bg-\[\#171717\] {
    background-color: #171717;
  }
  .bg-\[\#BEED45\] {
    background-color: #beed45;
  }
  .bg-\[\#FF6B4A\] {
    background-color: #ff6b4a;
  }
  .bg-\[\#FF6C4C\] {
    background-color: #ff6c4c;
  }
  .bg-\[\#FF6C4C\]\/10 {
    background-color: color-mix(in oklab, #ff6c4c 10%, transparent);
  }
  .bg-\[\#FF6C4C\]\/20 {
    background-color: color-mix(in oklab, #ff6c4c 20%, transparent);
  }
  .bg-\[\#FFFCF5\] {
    background-color: #fffcf5;
  }
  .bg-blue-100 {
    background-color: var(--color-blue-100);
  }
  .bg-brand-black {
    background-color: var(--color-brand-black);
  }
  .bg-brand-black\/5 {
    background-color: color-mix(in srgb, #171717 5%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-brand-black) 5%, transparent);
    }
  }
  .bg-brand-coral {
    background-color: var(--color-brand-coral);
  }
  .bg-brand-coral\/5 {
    background-color: color-mix(in srgb, #ff5a36 5%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-brand-coral) 5%, transparent);
    }
  }
  .bg-brand-coral\/20 {
    background-color: color-mix(in srgb, #ff5a36 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-brand-coral) 20%, transparent);
    }
  }
  .bg-brand-coral\/70 {
    background-color: color-mix(in srgb, #ff5a36 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-brand-coral) 70%, transparent);
    }
  }
  .bg-brand-lime {
    background-color: var(--color-brand-lime);
  }
  .bg-brand-lime\/5 {
    background-color: color-mix(in srgb, #c9ff3b 5%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-brand-lime) 5%, transparent);
    }
  }
  .bg-brand-lime\/10 {
    background-color: color-mix(in srgb, #c9ff3b 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-brand-lime) 10%, transparent);
    }
  }
  .bg-brand-lime\/20 {
    background-color: color-mix(in srgb, #c9ff3b 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-brand-lime) 20%, transparent);
    }
  }
  .bg-brand-lime\/40 {
    background-color: color-mix(in srgb, #c9ff3b 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-brand-lime) 40%, transparent);
    }
  }
  .bg-brand-lime\/70 {
    background-color: color-mix(in srgb, #c9ff3b 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-brand-lime) 70%, transparent);
    }
  }
  .bg-brand-paper {
    background-color: var(--color-brand-paper);
  }
  .bg-brand-paper\/95 {
    background-color: color-mix(in srgb, #f5f0e8 95%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-brand-paper) 95%, transparent);
    }
  }
  .bg-gray-100 {
    background-color: var(--color-gray-100);
  }
  .bg-green-100 {
    background-color: var(--color-green-100);
  }
  .bg-red-100 {
    background-color: var(--color-red-100);
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-white\/5 {
    background-color: color-mix(in srgb, #fff 5%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
    }
  }
  .bg-white\/10 {
    background-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
  .bg-white\/50 {
    background-color: color-mix(in srgb, #fff 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 50%, transparent);
    }
  }
  .bg-white\/90 {
    background-color: color-mix(in srgb, #fff 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 90%, transparent);
    }
  }
  .bg-white\/95 {
    background-color: color-mix(in srgb, #fff 95%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 95%, transparent);
    }
  }
  .bg-gradient-to-br {
    --tw-gradient-position: to bottom right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .from-white\/40 {
    --tw-gradient-from: color-mix(in srgb, #fff 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-white) 40%, transparent);
    }
    --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)
    );
  }
  .to-transparent {
    --tw-gradient-to: transparent;
    --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)
    );
  }
  .fill-current {
    fill: currentcolor;
  }
  .object-contain {
    object-fit: contain;
  }
  .object-cover {
    object-fit: cover;
  }
  .object-right {
    object-position: right;
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .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);
  }
  .px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .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);
  }
  .py-0\.5 {
    padding-block: calc(var(--spacing) * 0.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-2\.5 {
    padding-block: calc(var(--spacing) * 2.5);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-5 {
    padding-block: calc(var(--spacing) * 5);
  }
  .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-0 {
    padding-top: calc(var(--spacing) * 0);
  }
  .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);
  }
  .pt-20 {
    padding-top: calc(var(--spacing) * 20);
  }
  .pt-24 {
    padding-top: calc(var(--spacing) * 24);
  }
  .pr-4 {
    padding-right: calc(var(--spacing) * 4);
  }
  .pr-6 {
    padding-right: calc(var(--spacing) * 6);
  }
  .pr-8 {
    padding-right: calc(var(--spacing) * 8);
  }
  .pb-0\.5 {
    padding-bottom: calc(var(--spacing) * 0.5);
  }
  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }
  .pb-6 {
    padding-bottom: calc(var(--spacing) * 6);
  }
  .pb-16 {
    padding-bottom: calc(var(--spacing) * 16);
  }
  .pl-0 {
    padding-left: calc(var(--spacing) * 0);
  }
  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .font-sans {
    font-family: var(--font-sans);
  }
  .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-7xl {
    font-size: var(--text-7xl);
    line-height: var(--tw-leading, var(--text-7xl--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;
  }
  .leading-\[1\.1\] {
    --tw-leading: 1.1;
    line-height: 1.1;
  }
  .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-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .tracking-\[0\.2em\] {
    --tw-tracking: 0.2em;
    letter-spacing: 0.2em;
  }
  .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);
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .text-\[\#6A8A20\] {
    color: #6a8a20;
  }
  .text-\[\#8DB030\] {
    color: #8db030;
  }
  .text-\[\#9FD01C\] {
    color: #9fd01c;
  }
  .text-\[\#171717\] {
    color: #171717;
  }
  .text-\[\#DE4A2A\] {
    color: #de4a2a;
  }
  .text-\[\#FF6C4C\] {
    color: #ff6c4c;
  }
  .text-blue-700 {
    color: var(--color-blue-700);
  }
  .text-brand-black {
    color: var(--color-brand-black);
  }
  .text-brand-black\/40 {
    color: color-mix(in srgb, #171717 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-brand-black) 40%, transparent);
    }
  }
  .text-brand-black\/50 {
    color: color-mix(in srgb, #171717 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-brand-black) 50%, transparent);
    }
  }
  .text-brand-black\/60 {
    color: color-mix(in srgb, #171717 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-brand-black) 60%, transparent);
    }
  }
  .text-brand-black\/70 {
    color: color-mix(in srgb, #171717 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-brand-black) 70%, transparent);
    }
  }
  .text-brand-black\/80 {
    color: color-mix(in srgb, #171717 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-brand-black) 80%, transparent);
    }
  }
  .text-brand-coral {
    color: var(--color-brand-coral);
  }
  .text-brand-gray {
    color: var(--color-brand-gray);
  }
  .text-brand-lime {
    color: var(--color-brand-lime);
  }
  .text-brand-paper {
    color: var(--color-brand-paper);
  }
  .text-brand-paper\/70 {
    color: color-mix(in srgb, #f5f0e8 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-brand-paper) 70%, transparent);
    }
  }
  .text-green-700 {
    color: var(--color-green-700);
  }
  .text-red-700 {
    color: var(--color-red-700);
  }
  .text-white {
    color: var(--color-white);
  }
  .text-white\/70 {
    color: color-mix(in srgb, #fff 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 70%, transparent);
    }
  }
  .text-white\/80 {
    color: color-mix(in srgb, #fff 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }
  }
  .text-white\/90 {
    color: color-mix(in srgb, #fff 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 90%, transparent);
    }
  }
  .uppercase {
    text-transform: uppercase;
  }
  .line-through {
    text-decoration-line: line-through;
  }
  .decoration-2 {
    text-decoration-thickness: 2px;
  }
  .opacity-10 {
    opacity: 10%;
  }
  .opacity-20 {
    opacity: 20%;
  }
  .opacity-40 {
    opacity: 40%;
  }
  .opacity-50 {
    opacity: 50%;
  }
  .opacity-60 {
    opacity: 60%;
  }
  .opacity-75 {
    opacity: 75%;
  }
  .opacity-80 {
    opacity: 80%;
  }
  .opacity-100 {
    opacity: 100%;
  }
  .mix-blend-multiply {
    mix-blend-mode: multiply;
  }
  .shadow-2xl {
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[0px_0px_10px_rgba\(201\,255\,59\,0\.3\)\] {
    --tw-shadow: 0px 0px 10px var(--tw-shadow-color, rgba(201, 255, 59, 0.3));
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[2px_2px_0px_0px_rgba\(23\,23\,23\,1\)\] {
    --tw-shadow: 2px 2px 0px 0px var(--tw-shadow-color, rgba(23, 23, 23, 1));
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[4px_4px_0px_0px_rgba\(23\,23\,23\,0\.1\)\] {
    --tw-shadow: 4px 4px 0px 0px var(--tw-shadow-color, rgba(23, 23, 23, 0.1));
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[4px_4px_0px_0px_rgba\(23\,23\,23\,1\)\] {
    --tw-shadow: 4px 4px 0px 0px var(--tw-shadow-color, rgba(23, 23, 23, 1));
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[4px_4px_0px_0px_rgba\(201\,255\,59\,1\)\] {
    --tw-shadow: 4px 4px 0px 0px var(--tw-shadow-color, rgba(201, 255, 59, 1));
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[4px_4px_0px_0px_rgba\(255\,255\,255\,0\.2\)\] {
    --tw-shadow: 4px 4px 0px 0px var(--tw-shadow-color, rgba(255, 255, 255, 0.2));
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-lg {
    --tw-shadow:
      0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)),
      0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-md {
    --tw-shadow:
      0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)),
      0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-none {
    --tw-shadow: 0 0 #0000;
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-sm {
    --tw-shadow:
      0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)),
      0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-xl {
    --tw-shadow:
      0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)),
      0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
      var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-black {
    --tw-shadow-color: #000;
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(
        in oklab,
        var(--color-black) var(--tw-shadow-alpha),
        transparent
      );
    }
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .blur-3xl {
    --tw-blur: blur(var(--blur-3xl));
    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,);
  }
  .drop-shadow-\[4px_4px_2px_rgba\(0\,0\,0\,0\.15\)\] {
    --tw-drop-shadow-size: drop-shadow(
      4px 4px 2px var(--tw-drop-shadow-color, rgba(0, 0, 0, 0.15))
    );
    --tw-drop-shadow: var(--tw-drop-shadow-size);
    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,);
  }
  .drop-shadow-\[6px_6px_2px_rgba\(0\,0\,0\,0\.15\)\] {
    --tw-drop-shadow-size: drop-shadow(
      6px 6px 2px var(--tw-drop-shadow-color, rgba(0, 0, 0, 0.15))
    );
    --tw-drop-shadow: var(--tw-drop-shadow-size);
    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,);
  }
  .drop-shadow-lg {
    --tw-drop-shadow-size: drop-shadow(0 4px 4px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.15)));
    --tw-drop-shadow: drop-shadow(var(--drop-shadow-lg));
    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,);
  }
  .drop-shadow-sm {
    --tw-drop-shadow-size: drop-shadow(0 1px 2px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.15)));
    --tw-drop-shadow: drop-shadow(var(--drop-shadow-sm));
    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-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-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .duration-300 {
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
  .duration-500 {
    --tw-duration: 500ms;
    transition-duration: 500ms;
  }
  .duration-700 {
    --tw-duration: 700ms;
    transition-duration: 700ms;
  }
  .group-hover\:translate-x-1 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-x: calc(var(--spacing) * 1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-x-\[2px\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-x: 2px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-x-\[3px\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-x: 3px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-x-\[4px\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-x: 4px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-x-\[5px\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-x: 5px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-x-\[6px\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-x: 6px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-x-\[7px\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-x: 7px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-y-\[2px\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-y: 2px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-y-\[3px\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-y: 3px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-y-\[4px\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-y: 4px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-y-\[5px\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-y: 5px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-y-\[6px\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-y: 6px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-y-\[7px\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-y: 7px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:scale-105 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-scale-x: 105%;
        --tw-scale-y: 105%;
        --tw-scale-z: 105%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
      }
    }
  }
  .group-hover\:bg-brand-lime {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        background-color: var(--color-brand-lime);
      }
    }
  }
  .group-hover\:text-brand-black {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-brand-black);
      }
    }
  }
  .group-hover\:text-brand-coral {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-brand-coral);
      }
    }
  }
  .group-hover\:text-brand-lime {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-brand-lime);
      }
    }
  }
  .group-hover\:text-white {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-white);
      }
    }
  }
  .group-active\:translate-x-\[4px\] {
    &:is(:where(.group):active *) {
      --tw-translate-x: 4px;
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .group-active\:translate-x-\[9px\] {
    &:is(:where(.group):active *) {
      --tw-translate-x: 9px;
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .group-active\:translate-y-\[4px\] {
    &:is(:where(.group):active *) {
      --tw-translate-y: 4px;
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .group-active\:translate-y-\[9px\] {
    &:is(:where(.group):active *) {
      --tw-translate-y: 9px;
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .selection\:bg-brand-lime {
    & *::selection {
      background-color: var(--color-brand-lime);
    }
    &::selection {
      background-color: var(--color-brand-lime);
    }
  }
  .selection\:text-brand-black {
    & *::selection {
      color: var(--color-brand-black);
    }
    &::selection {
      color: var(--color-brand-black);
    }
  }
  .before\:absolute {
    &::before {
      content: var(--tw-content);
      position: absolute;
    }
  }
  .before\:inset-0 {
    &::before {
      content: var(--tw-content);
      inset: calc(var(--spacing) * 0);
    }
  }
  .before\:ml-\[38px\] {
    &::before {
      content: var(--tw-content);
      margin-left: 38px;
    }
  }
  .before\:h-full {
    &::before {
      content: var(--tw-content);
      height: 100%;
    }
  }
  .before\:w-1 {
    &::before {
      content: var(--tw-content);
      width: calc(var(--spacing) * 1);
    }
  }
  .before\:-translate-x-px {
    &::before {
      content: var(--tw-content);
      --tw-translate-x: -1px;
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .before\:bg-brand-black\/10 {
    &::before {
      content: var(--tw-content);
      background-color: color-mix(in srgb, #171717 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-brand-black) 10%, transparent);
      }
    }
  }
  .first\:pl-0 {
    &:first-child {
      padding-left: calc(var(--spacing) * 0);
    }
  }
  .last\:pr-0 {
    &:last-child {
      padding-right: calc(var(--spacing) * 0);
    }
  }
  .hover\:translate-x-\[2px\] {
    &:hover {
      @media (hover: hover) {
        --tw-translate-x: 2px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .hover\:-translate-y-0\.5 {
    &:hover {
      @media (hover: hover) {
        --tw-translate-y: calc(var(--spacing) * -0.5);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .hover\:translate-y-\[-2px\] {
    &:hover {
      @media (hover: hover) {
        --tw-translate-y: -2px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .hover\:translate-y-\[2px\] {
    &:hover {
      @media (hover: hover) {
        --tw-translate-y: 2px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .hover\:scale-\[1\.02\] {
    &:hover {
      @media (hover: hover) {
        scale: 1.02;
      }
    }
  }
  .hover\:border-brand-black {
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-brand-black);
      }
    }
  }
  .hover\:border-brand-black\/30 {
    &:hover {
      @media (hover: hover) {
        border-color: color-mix(in srgb, #171717 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--color-brand-black) 30%, transparent);
        }
      }
    }
  }
  .hover\:border-brand-lime\/50 {
    &:hover {
      @media (hover: hover) {
        border-color: color-mix(in srgb, #c9ff3b 50%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--color-brand-lime) 50%, transparent);
        }
      }
    }
  }
  .hover\:bg-black\/5 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #000 5%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-black) 5%, transparent);
        }
      }
    }
  }
  .hover\:bg-brand-black {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-brand-black);
      }
    }
  }
  .hover\:bg-brand-black\/5 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #171717 5%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-brand-black) 5%, transparent);
        }
      }
    }
  }
  .hover\:bg-brand-black\/90 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #171717 90%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-brand-black) 90%, transparent);
        }
      }
    }
  }
  .hover\:bg-brand-lime\/90 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #c9ff3b 90%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-brand-lime) 90%, transparent);
        }
      }
    }
  }
  .hover\:bg-gray-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gray-50);
      }
    }
  }
  .hover\:bg-white\/10 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #fff 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
        }
      }
    }
  }
  .hover\:text-brand-coral {
    &:hover {
      @media (hover: hover) {
        color: var(--color-brand-coral);
      }
    }
  }
  .hover\:text-brand-lime {
    &:hover {
      @media (hover: hover) {
        color: var(--color-brand-lime);
      }
    }
  }
  .hover\:text-white {
    &:hover {
      @media (hover: hover) {
        color: var(--color-white);
      }
    }
  }
  .hover\:underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .hover\:shadow-\[2px_2px_0px_0px_rgba\(23\,23\,23\,0\.1\)\] {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 2px 2px 0px 0px var(--tw-shadow-color, rgba(23, 23, 23, 0.1));
        box-shadow:
          var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
          var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:shadow-\[2px_2px_0px_0px_rgba\(23\,23\,23\,1\)\] {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 2px 2px 0px 0px var(--tw-shadow-color, rgba(23, 23, 23, 1));
        box-shadow:
          var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
          var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:shadow-\[2px_2px_0px_0px_rgba\(201\,255\,59\,1\)\] {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 2px 2px 0px 0px var(--tw-shadow-color, rgba(201, 255, 59, 1));
        box-shadow:
          var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
          var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:shadow-\[4px_4px_0px_0px_rgba\(0\,0\,0\,0\.2\)\] {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 4px 4px 0px 0px var(--tw-shadow-color, rgba(0, 0, 0, 0.2));
        box-shadow:
          var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
          var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:shadow-lg {
    &:hover {
      @media (hover: hover) {
        --tw-shadow:
          0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)),
          0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow:
          var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow),
          var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:shadow-sm {
    &:hover {
      @media (hover: hover) {
        --tw-shadow:
          0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)),
          0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        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-brand-lime {
    &:focus {
      --tw-ring-color: var(--color-brand-lime);
    }
  }
  .focus\:ring-offset-2 {
    &:focus {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width)
        var(--tw-ring-offset-color);
    }
  }
  .focus\:outline-none {
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .active\:scale-\[0\.98\] {
    &:active {
      scale: 0.98;
    }
  }
  .sm\:col-span-2 {
    @media (width >= 40rem) {
      grid-column: span 2 / span 2;
    }
  }
  .sm\:grid-cols-2 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .sm\:flex-row {
    @media (width >= 40rem) {
      flex-direction: row;
    }
  }
  .sm\:items-center {
    @media (width >= 40rem) {
      align-items: center;
    }
  }
  .sm\:items-start {
    @media (width >= 40rem) {
      align-items: flex-start;
    }
  }
  .md\:absolute {
    @media (width >= 48rem) {
      position: absolute;
    }
  }
  .md\:inset-0 {
    @media (width >= 48rem) {
      inset: calc(var(--spacing) * 0);
    }
  }
  .md\:top-\[-120px\] {
    @media (width >= 48rem) {
      top: -120px;
    }
  }
  .md\:top-\[180px\] {
    @media (width >= 48rem) {
      top: 180px;
    }
  }
  .md\:right-\[-5\%\] {
    @media (width >= 48rem) {
      right: -5%;
    }
  }
  .md\:left-24 {
    @media (width >= 48rem) {
      left: calc(var(--spacing) * 24);
    }
  }
  .md\:left-\[0\%\] {
    @media (width >= 48rem) {
      left: 0%;
    }
  }
  .md\:left-\[40\%\] {
    @media (width >= 48rem) {
      left: 40%;
    }
  }
  .md\:order-1 {
    @media (width >= 48rem) {
      order: 1;
    }
  }
  .md\:col-span-2 {
    @media (width >= 48rem) {
      grid-column: span 2 / span 2;
    }
  }
  .md\:mt-32 {
    @media (width >= 48rem) {
      margin-top: calc(var(--spacing) * 32);
    }
  }
  .md\:block {
    @media (width >= 48rem) {
      display: block;
    }
  }
  .md\:flex {
    @media (width >= 48rem) {
      display: flex;
    }
  }
  .md\:hidden {
    @media (width >= 48rem) {
      display: none;
    }
  }
  .md\:w-\[280px\] {
    @media (width >= 48rem) {
      width: 280px;
    }
  }
  .md\:w-\[600px\] {
    @media (width >= 48rem) {
      width: 600px;
    }
  }
  .md\:w-\[calc\(50\%-4rem\)\] {
    @media (width >= 48rem) {
      width: calc(50% - 4rem);
    }
  }
  .md\:grid-cols-2 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-3 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-4 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .md\:flex-row {
    @media (width >= 48rem) {
      flex-direction: row;
    }
  }
  .md\:justify-normal {
    @media (width >= 48rem) {
      justify-content: normal;
    }
  }
  .md\:gap-0 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 0);
    }
  }
  .md\:gap-12 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 12);
    }
  }
  .md\:divide-x {
    @media (width >= 48rem) {
      :where(& > :not(:last-child)) {
        --tw-divide-x-reverse: 0;
        border-inline-style: var(--tw-border-style);
        border-inline-start-width: calc(1px * var(--tw-divide-x-reverse));
        border-inline-end-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
      }
    }
  }
  .md\:p-8 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .md\:p-10 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 10);
    }
  }
  .md\:p-12 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 12);
    }
  }
  .md\:p-16 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 16);
    }
  }
  .md\:px-8 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 8);
    }
  }
  .md\:px-12 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 12);
    }
  }
  .md\:py-24 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 24);
    }
  }
  .md\:py-32 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 32);
    }
  }
  .md\:pt-32 {
    @media (width >= 48rem) {
      padding-top: calc(var(--spacing) * 32);
    }
  }
  .md\:text-2xl {
    @media (width >= 48rem) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  .md\:text-3xl {
    @media (width >= 48rem) {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
  }
  .md\:text-4xl {
    @media (width >= 48rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }
  .md\:text-5xl {
    @media (width >= 48rem) {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }
  .md\:text-6xl {
    @media (width >= 48rem) {
      font-size: var(--text-6xl);
      line-height: var(--tw-leading, var(--text-6xl--line-height));
    }
  }
  .md\:text-8xl {
    @media (width >= 48rem) {
      font-size: var(--text-8xl);
      line-height: var(--tw-leading, var(--text-8xl--line-height));
    }
  }
  .md\:text-xl {
    @media (width >= 48rem) {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
  .md\:text-xs {
    @media (width >= 48rem) {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
    }
  }
  .md\:group-odd\:-translate-x-1\/2 {
    @media (width >= 48rem) {
      &:is(:where(.group):nth-child(odd) *) {
        --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .md\:group-even\:translate-x-1\/2 {
    @media (width >= 48rem) {
      &:is(:where(.group):nth-child(even) *) {
        --tw-translate-x: calc(1 / 2 * 100%);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .md\:before\:mx-auto {
    @media (width >= 48rem) {
      &::before {
        content: var(--tw-content);
        margin-inline: auto;
      }
    }
  }
  .md\:before\:translate-x-0 {
    @media (width >= 48rem) {
      &::before {
        content: var(--tw-content);
        --tw-translate-x: calc(var(--spacing) * 0);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .md\:odd\:flex-row-reverse {
    @media (width >= 48rem) {
      &:nth-child(odd) {
        flex-direction: row-reverse;
      }
    }
  }
  .lg\:col-span-5 {
    @media (width >= 64rem) {
      grid-column: span 5 / span 5;
    }
  }
  .lg\:col-span-7 {
    @media (width >= 64rem) {
      grid-column: span 7 / span 7;
    }
  }
  .lg\:mb-20 {
    @media (width >= 64rem) {
      margin-bottom: calc(var(--spacing) * 20);
    }
  }
  .lg\:block {
    @media (width >= 64rem) {
      display: block;
    }
  }
  .lg\:w-\[700px\] {
    @media (width >= 64rem) {
      width: 700px;
    }
  }
  .lg\:w-auto {
    @media (width >= 64rem) {
      width: auto;
    }
  }
  .lg\:max-w-full {
    @media (width >= 64rem) {
      max-width: 100%;
    }
  }
  .lg\:origin-right {
    @media (width >= 64rem) {
      transform-origin: 100%;
    }
  }
  .lg\:-translate-y-4 {
    @media (width >= 64rem) {
      --tw-translate-y: calc(var(--spacing) * -4);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .lg\:-translate-y-12 {
    @media (width >= 64rem) {
      --tw-translate-y: calc(var(--spacing) * -12);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .lg\:scale-110 {
    @media (width >= 64rem) {
      --tw-scale-x: 110%;
      --tw-scale-y: 110%;
      --tw-scale-z: 110%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }
  .lg\:grid-cols-2 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-12 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
  }
  .lg\:items-end {
    @media (width >= 64rem) {
      align-items: flex-end;
    }
  }
  .lg\:justify-end {
    @media (width >= 64rem) {
      justify-content: flex-end;
    }
  }
  .lg\:gap-12 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 12);
    }
  }
  .lg\:gap-16 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 16);
    }
  }
  .lg\:p-16 {
    @media (width >= 64rem) {
      padding: calc(var(--spacing) * 16);
    }
  }
  .lg\:px-12 {
    @media (width >= 64rem) {
      padding-inline: calc(var(--spacing) * 12);
    }
  }
  .lg\:pt-0 {
    @media (width >= 64rem) {
      padding-top: calc(var(--spacing) * 0);
    }
  }
  .lg\:pl-16 {
    @media (width >= 64rem) {
      padding-left: calc(var(--spacing) * 16);
    }
  }
  .lg\:text-6xl {
    @media (width >= 64rem) {
      font-size: var(--text-6xl);
      line-height: var(--tw-leading, var(--text-6xl--line-height));
    }
  }
  .lg\:text-7xl {
    @media (width >= 64rem) {
      font-size: var(--text-7xl);
      line-height: var(--tw-leading, var(--text-7xl--line-height));
    }
  }
  .xl\:w-\[800px\] {
    @media (width >= 80rem) {
      width: 800px;
    }
  }
  .xl\:-translate-y-16 {
    @media (width >= 80rem) {
      --tw-translate-y: calc(var(--spacing) * -16);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .xl\:scale-125 {
    @media (width >= 80rem) {
      --tw-scale-x: 125%;
      --tw-scale-y: 125%;
      --tw-scale-z: 125%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }
  .xl\:px-16 {
    @media (width >= 80rem) {
      padding-inline: calc(var(--spacing) * 16);
    }
  }
}
body {
  background-color: var(--color-brand-paper);
  color: var(--color-brand-black);
  font-family: var(--font-sans);
  overflow-x: hidden;
}
.writing-vertical {
  writing-mode: vertical-rl;
  text-orientation: mixed;
}
.no-scrollbar::-webkit-scrollbar {
  display: none;
}
.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.shadow-lime {
  box-shadow:
    8px 8px 0px 0px #c9ff3b,
    8px 8px 0px 1px #171717;
}
.shadow-coral {
  box-shadow:
    8px 8px 0px 0px #ff5a36,
    8px 8px 0px 1px #171717;
}
.shadow-black {
  box-shadow: 8px 8px 0px 0px #171717;
}
.bg-dots-lime {
  background-image: radial-gradient(#c9ff3b 2px, transparent 2px);
  background-size: 20px 20px;
}
.bg-dots-black {
  background-image: radial-gradient(rgba(23, 23, 23, 0.2) 2px, transparent 2px);
  background-size: 20px 20px;
}
.marker-highlight {
  background: linear-gradient(120deg, transparent 0%, transparent 100%);
  background-repeat: no-repeat;
  background-size: 100% 40%;
  background-position: 0 88%;
  transition: background-size 0.3s ease;
}
.marker-highlight-lime {
  background-image: linear-gradient(120deg, #c9ff3b 0%, #c9ff3b 100%);
}
.marker-highlight-coral {
  background-image: linear-gradient(120deg, #ff5a36 0%, #ff5a36 100%);
}
.folder-tab-container {
  position: relative;
  border-radius: 8px;
}
.folder-tab-top {
  position: absolute;
  top: -32px;
  left: 0;
  height: 32px;
  padding: 0 24px;
  background-color: inherit;
  border: 1px solid #171717;
  border-bottom: none;
  border-radius: 8px 8px 0 0;
  display: flex;
  align-items: center;
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  z-index: 1;
}
.editorial-grid {
  background-image:
    linear-gradient(#171717 1px, transparent 1px),
    linear-gradient(90deg, #171717 1px, transparent 1px);
  background-size:
    100% 1px,
    1px 100%;
  background-repeat: no-repeat;
  background-position:
    center top,
    center top;
  background-size:
    100% 1px,
    0px 0px;
}
@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-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;
}
@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-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: 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;
}
@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-content {
  syntax: "*";
  initial-value: "";
  inherits: false;
}
@property --tw-divide-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@keyframes ping {
  75%,
  100% {
    transform: scale(2);
    opacity: 0;
  }
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@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-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --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-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-content: "";
      --tw-divide-x-reverse: 0;
    }
  }
}


:root {
  --service-overview-point-fill: #faf6ed;
  --service-overview-point-fill-hover: #fffaf2;
}

﻿/* Editable site-specific styles layered on top of the baseline snapshot. */

:root {
  --color-brand-paper: #fffcf5;
}

.site-header {
  transition:
    background-color 180ms ease,
    padding 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease,
    backdrop-filter 180ms ease;
}

.site-header__inner {
  min-height: 3.75rem;
  gap: clamp(0.9rem, 1.7vw, 1.6rem);
}

.site-header__brand {
  flex: 0 0 auto;
}

.site-header__logo {
  display: block;
  width: clamp(6.8rem, 8vw, 7.9rem);
  height: auto;
}

.site-header__nav {
  flex: 1 1 auto;
  justify-content: center;
  min-width: 0;
  padding-inline: clamp(0.5rem, 1vw, 1.4rem);
  gap: clamp(1rem, 1.55vw, 2rem);
}

.site-header__nav-link {
  white-space: nowrap;
  line-height: 1;
  font-size: clamp(0.72rem, 0.78vw, 0.84rem);
  letter-spacing: 0.045em;
}

.site-header__utilities {
  flex: 0 0 auto;
  gap: clamp(0.75rem, 1.1vw, 1.2rem);
}

.site-header__status {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  color: rgba(23, 23, 23, 0.62);
  line-height: 1;
  white-space: nowrap;
}

.site-header__status-dot {
  background-color: #97c11e;
  box-shadow: 0 0 0 0.22rem rgba(151, 193, 30, 0.24);
}

.site-header__cta {
  min-height: 2.8rem;
  white-space: nowrap;
}

.site-header__toggle {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.9rem;
  height: 2.9rem;
  padding: 0;
  border: 1px solid rgba(23, 23, 23, 0.14);
  border-radius: 1rem;
  background: rgba(255, 252, 245, 0.88);
  color: #171717;
  box-shadow: 0 1px 0 rgba(23, 23, 23, 0.06);
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
  transition:
    transform 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.site-header__toggle:hover {
  background: rgba(255, 255, 255, 0.94);
  border-color: rgba(23, 23, 23, 0.22);
}

.site-header__toggle:focus-visible {
  outline: 2px solid #171717;
  outline-offset: 3px;
}

.site-header__toggle svg {
  width: 1.28rem;
  height: 1.28rem;
}

.site-header.is-scrolled {
  background: rgba(244, 240, 232, 0.95);
  backdrop-filter: blur(12px);
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  box-shadow: 0 10px 28px rgba(23, 23, 23, 0.08);
}

.is-static-state {
  opacity: 1;
  transform: none;
}

.is-static-opaque {
  opacity: 1;
}

.is-static-open {
  height: auto;
  opacity: 1;
}

.service-cta-section {
  background-color: #f4f0e8;
}

.service-cta-pattern {
  background-color: var(--color-brand-paper);
  background-image: radial-gradient(rgb(190, 237, 69) 1px, transparent 1px);
  background-size: 40px 40px;
}

.progress-fill--75 {
  width: 75%;
}

.monday-effect-orb {
  opacity: 1;
  transform: translateY(-7.52552px) rotate(4.97743deg);
}

body.menu-open {
  overflow: hidden;
}

.page-financial-service {
  width: 100%;
  max-width: 100vw;
  overflow-x: hidden;
}

.page-financial-service #root,
.page-financial-service .min-h-screen,
.page-financial-service main {
  width: 100%;
  max-width: 100vw;
  overflow-x: clip;
}

.page-about {
  width: 100%;
  max-width: 100vw;
  overflow-x: hidden;
}

.page-about #root,
.page-about .min-h-screen,
.page-about main {
  width: 100%;
  max-width: 100vw;
  overflow-x: clip;
}

.mobile-menu {
  position: fixed;
  inset: 0;
  z-index: 60;
  display: block;
  padding: max(1rem, env(safe-area-inset-top)) max(0.9rem, env(safe-area-inset-right))
    max(1rem, env(safe-area-inset-bottom)) max(0.9rem, env(safe-area-inset-left));
  background: rgba(244, 240, 232, 0.64);
  backdrop-filter: blur(12px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  overflow-y: auto;
  overscroll-behavior: contain;
  transition:
    opacity 180ms ease,
    visibility 180ms ease;
}

.mobile-menu.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.mobile-menu__panel {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: min(100%, 26rem);
  max-height: calc(100dvh - max(2rem, env(safe-area-inset-top) + env(safe-area-inset-bottom)));
  margin-inline: auto;
  padding: 1rem;
  border: 1px solid rgba(23, 23, 23, 0.12);
  border-radius: 1.5rem;
  background: linear-gradient(180deg, rgba(255, 252, 245, 0.98) 0%, rgba(244, 240, 232, 0.98) 100%);
  box-shadow: 0 20px 56px rgba(23, 23, 23, 0.12);
  overflow: visible;
}

.mobile-menu__topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(23, 23, 23, 0.08);
}

.mobile-menu__brand {
  flex: 0 0 auto;
}

.mobile-menu__logo {
  display: block;
  width: 7rem;
  height: auto;
}

.mobile-menu__close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  border: 1px solid rgba(23, 23, 23, 0.14);
  border-radius: 0.95rem;
  background: #fffaf2;
  color: #171717;
  transition:
    transform 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease;
}

.mobile-menu__close:focus-visible {
  outline: 2px solid #171717;
  outline-offset: 3px;
}

.mobile-menu__content {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  overflow-y: auto;
  padding-top: 1.1rem;
  padding-bottom: 0.35rem;
}

.mobile-menu__status {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: 0.5rem;
  padding: 0.45rem 0.72rem;
  border: 1px solid rgba(23, 23, 23, 0.08);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  color: rgba(23, 23, 23, 0.64);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1;
}

.mobile-menu__status-dot {
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 999px;
  background: #beed45;
  box-shadow: 0 0 0 0.22rem rgba(190, 237, 69, 0.18);
}

.mobile-menu__nav {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  margin-top: 1.1rem;
  text-align: left;
}

.mobile-menu__link {
  display: block;
  padding: 0.95rem 0.15rem;
  border-bottom: 1px solid rgba(23, 23, 23, 0.08);
  color: #171717;
  font-size: clamp(1.18rem, 4.9vw, 1.48rem);
  font-weight: 800;
  line-height: 1.08;
  text-decoration: none;
  text-wrap: balance;
}

.mobile-menu__actions {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 1rem;
  margin-top: 0;
  padding-right: 0.18rem;
  padding-bottom: 0.18rem;
  padding-top: 1.35rem;
  border-top: 1px solid rgba(23, 23, 23, 0.1);
}

.mobile-menu__button {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 100%;
  min-height: 3.25rem;
  padding: 0.875rem 1rem;
  border: 2px solid #171717;
  background: #c9ff3b;
  color: #171717;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 2px 2px 0 0 #171717;
  border-radius: 1rem;
}

.service-hero-mobile-sticky-cta {
  display: none;
}

@media (min-width: 68.75rem) {
  .mobile-menu {
    display: none !important;
  }
}

@media (min-width: 768px) and (max-width: 1099px) {
  .site-header {
    padding-top: 0.52rem;
    padding-bottom: 0.52rem;
  }

  .site-header.is-scrolled {
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
  }

  .site-header__nav {
    display: none !important;
  }

  .site-header__utilities {
    display: flex !important;
    margin-left: auto;
  }

  .site-header__inner {
    min-height: 2.85rem;
    gap: 0.8rem;
  }

  .site-header__logo {
    width: 6.45rem;
  }

  .site-header__status {
    display: none;
  }

  .site-header__utilities {
    gap: 0.6rem;
  }

  .site-header__cta {
    min-height: 2.45rem;
    padding-inline: 0.9rem;
    font-size: 0.8rem;
  }

  .site-header__toggle {
    width: 2.58rem;
    height: 2.58rem;
  }
}

@media (min-width: 1100px) and (max-width: 1279px) {
  .site-header__nav {
    gap: 1rem;
  }

  .site-header__nav-link {
    font-size: 0.73rem;
  }
}

@media (min-width: 1100px) {
  .site-header {
    padding-top: 0.55rem;
    padding-bottom: 0.55rem;
  }

  .site-header.is-scrolled {
    padding-top: 0.42rem;
    padding-bottom: 0.42rem;
  }

  .site-header__inner {
    min-height: 2.95rem;
    gap: clamp(0.8rem, 1.35vw, 1.35rem);
  }

  .site-header__toggle {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .site-header {
    padding-top: 0.72rem;
    padding-bottom: 0.72rem;
  }

  .site-header.is-scrolled {
    padding-top: 0.58rem;
    padding-bottom: 0.58rem;
  }

  .site-header__inner {
    min-height: 2.75rem;
    gap: 0.75rem;
  }

  .site-header__logo {
    width: 6.2rem;
  }

  .site-header__toggle {
    width: 2.72rem;
    height: 2.72rem;
    margin-right: -0.05rem;
  }

  .mobile-menu {
    padding: 0 max(0.75rem, env(safe-area-inset-right)) 0 max(0.75rem, env(safe-area-inset-left));
  }

  .mobile-menu__panel {
    width: 100%;
    min-height: 100dvh;
    max-height: 100dvh;
    padding-top: max(0.95rem, env(safe-area-inset-top));
    padding-right: 0.95rem;
    padding-bottom: max(0.95rem, env(safe-area-inset-bottom));
    padding-left: 0.95rem;
    border-radius: 1.3rem;
  }

  .mobile-menu__content {
    padding-top: 1rem;
    padding-bottom: 0.45rem;
  }

  .mobile-menu__nav {
    margin-top: 1rem;
  }

  .mobile-menu__link {
    padding-block: 0.88rem;
  }

  .mobile-menu__button {
    min-height: 3.5rem;
  }
}

.offer-section {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.private-practice-section {
  padding-top: clamp(7.25rem, 9vw, 9.5rem);
  padding-bottom: clamp(7.25rem, 9vw, 9.5rem);
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background-color: #fff8ef;
  background-image:
    radial-gradient(
      46rem 34rem at 15% 16%,
      rgba(214, 251, 94, 0.34) 0%,
      rgba(214, 251, 94, 0.17) 24%,
      rgba(214, 251, 94, 0.055) 48%,
      rgba(214, 251, 94, 0) 76%
    ),
    radial-gradient(
      40rem 30rem at 6% 48%,
      rgba(247, 218, 202, 0.34) 0%,
      rgba(247, 218, 202, 0.16) 26%,
      rgba(247, 218, 202, 0.045) 50%,
      rgba(247, 218, 202, 0) 76%
    ),
    radial-gradient(
      44rem 32rem at 90% 70%,
      rgba(217, 248, 110, 0.3) 0%,
      rgba(217, 248, 110, 0.15) 24%,
      rgba(217, 248, 110, 0.045) 48%,
      rgba(217, 248, 110, 0) 76%
    ),
    radial-gradient(
      38rem 26rem at 90% 14%,
      rgba(245, 247, 224, 0.45) 0%,
      rgba(245, 247, 224, 0.2) 28%,
      rgba(245, 247, 224, 0.06) 52%,
      rgba(245, 247, 224, 0) 78%
    ),
    radial-gradient(
      42rem 28rem at 48% 37%,
      rgba(255, 211, 199, 0.34) 0%,
      rgba(255, 211, 199, 0.16) 26%,
      rgba(255, 211, 199, 0.045) 50%,
      rgba(255, 211, 199, 0) 76%
    ),
    radial-gradient(
      40rem 28rem at 59% 70%,
      rgba(249, 202, 182, 0.24) 0%,
      rgba(249, 202, 182, 0.11) 28%,
      rgba(249, 202, 182, 0.03) 52%,
      rgba(249, 202, 182, 0) 78%
    ),
    radial-gradient(
      34rem 24rem at 71% 35%,
      rgba(252, 249, 244, 0.46) 0%,
      rgba(252, 249, 244, 0.2) 28%,
      rgba(252, 249, 244, 0.055) 52%,
      rgba(252, 249, 244, 0) 78%
    ),
    radial-gradient(
      32rem 22rem at 75% 78%,
      rgba(255, 255, 255, 0.44) 0%,
      rgba(255, 255, 255, 0.16) 28%,
      rgba(255, 255, 255, 0.04) 52%,
      rgba(255, 255, 255, 0) 78%
    ),
    radial-gradient(
      34rem 24rem at 15% 81%,
      rgba(240, 247, 205, 0.24) 0%,
      rgba(240, 247, 205, 0.11) 28%,
      rgba(240, 247, 205, 0.03) 52%,
      rgba(240, 247, 205, 0) 78%
    ),
    linear-gradient(180deg, #fff8ef 0%, #fff8ef 100%);
}

.private-practice-section::before {
  content: none;
}

.private-practice-section::after {
  content: none;
}

.deliverables-tabs-section {
  background: #fffcf5;
}

.deliverables-tabs-head {
  margin-bottom: clamp(2rem, 4vw, 3rem);
  max-width: 54rem;
}

.deliverables-tabs-head .section-title {
  max-width: 48rem;
}

.deliverables-tabs-block {
  position: relative;
  --deliverables-panel-radius: 1.6rem;
  --deliverables-tab-radius: 1.25rem;
  --deliverables-tab-depth-x: 0.55rem;
  --deliverables-tab-volume-clearance: 0px;
  --deliverables-tab-visible-width: clamp(8.65rem, 12vw, 10.75rem);
  --deliverables-first-tab-overlap: 0px;
  --deliverables-tab-depth-y: 0.75rem;
  --deliverables-seam-overlap: 1px;
}

.deliverables-tabs-toolbar {
  position: relative;
  display: flex;
  width: 100%;
  align-items: flex-end;
  justify-content: space-between;
  gap: 0.85rem;
}

.deliverables-tabs-nav {
  position: relative;
  z-index: 14;
  display: flex;
  align-items: flex-end;
  gap: 0.85rem;
  overflow-x: auto;
  overflow-y: hidden;
  margin-bottom: calc(-1 * var(--deliverables-seam-overlap));
  padding: 0 0.25rem var(--deliverables-tab-volume-clearance) var(--deliverables-first-tab-overlap);
  min-width: 0;
  flex: 1 1 auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.deliverables-tabs-nav::-webkit-scrollbar {
  display: none;
}

.deliverables-tabs-mobile-sticky {
  display: none;
}

.deliverables-tab-shell {
  --deliverables-tab-corner-radius: var(--deliverables-tab-radius) var(--deliverables-tab-radius) 0
    0;
  --grounded-volume-radius: var(--deliverables-tab-corner-radius);
  position: relative;
  isolation: isolate;
  flex: 0 0 auto;
  width: var(--deliverables-tab-visible-width);
  min-width: var(--deliverables-tab-visible-width);
  max-width: none;
  overflow: visible;
}

.deliverables-tab-shell .grounded-volume-shell__layer {
  --deliverables-layer-shift: 0px;
  border-radius: var(--deliverables-tab-corner-radius);
  transform: translate(var(--deliverables-layer-shift), var(--deliverables-layer-shift));
  clip-path: inset(0 0 var(--deliverables-layer-shift) 0);
  transition:
    transform 200ms ease,
    clip-path 200ms ease;
}

.deliverables-tab-shell .grounded-volume-shell__layer--1 {
  --deliverables-layer-shift: 1px;
  z-index: 6;
}

.deliverables-tab-shell .grounded-volume-shell__layer--2 {
  --deliverables-layer-shift: 2px;
  z-index: 5;
}

.deliverables-tab-shell .grounded-volume-shell__layer--3 {
  --deliverables-layer-shift: 3px;
  z-index: 4;
}

.deliverables-tab-shell .grounded-volume-shell__layer--4 {
  --deliverables-layer-shift: 4px;
  z-index: 3;
}

.deliverables-tab-shell .grounded-volume-shell__layer--5 {
  --deliverables-layer-shift: 5px;
  z-index: 2;
}

.deliverables-tab-shell .grounded-volume-shell__layer--6 {
  --deliverables-layer-shift: 6px;
  z-index: 1;
  clip-path: inset(0 -0.75rem var(--deliverables-layer-shift) 0);
}

.deliverables-tab-shell:first-child {
  --deliverables-tab-corner-radius: var(--deliverables-panel-radius) var(--deliverables-tab-radius)
    0 0;
}

.deliverables-tab-shell.is-active {
  z-index: 1;
}

.deliverables-tab-shell.is-active .grounded-volume-shell__layer {
  transform: translate(var(--deliverables-layer-shift), var(--deliverables-layer-shift));
  clip-path: inset(0 0 var(--deliverables-layer-shift) 0);
  transition: none;
}

.deliverables-tab-shell.is-active .grounded-volume-shell__layer--6 {
  clip-path: inset(0 -0.75rem var(--deliverables-layer-shift) 0);
}

.deliverables-tabs-trigger {
  --deliverables-tab-padding-bottom: 0.98rem;
  position: relative;
  z-index: 11;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: none;
  box-sizing: border-box;
  min-height: 4.35rem;
  padding: 1rem 1.45rem var(--deliverables-tab-padding-bottom);
  border: 1px solid #9fd01c;
  border-radius: var(--deliverables-tab-corner-radius);
  background: #beed45;
  color: #171717;
  font-size: clamp(1.05rem, 1.14vw, 1.34rem);
  font-weight: 800;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  cursor: pointer;
  transition:
    transform 200ms ease,
    background-color 140ms ease,
    color 140ms ease,
    border-color 140ms ease,
    opacity 140ms ease;
}

.deliverables-tabs-trigger:hover {
  background: #d5ff49;
}

.deliverables-tab-shell:not(:has(> .deliverables-tabs-trigger.is-active)):hover
  .grounded-volume-shell__layer--1,
.deliverables-tab-shell:not(:has(> .deliverables-tabs-trigger.is-active)):hover
  .grounded-volume-shell__layer--2,
.deliverables-tab-shell:not(:has(> .deliverables-tabs-trigger.is-active)):hover
  .grounded-volume-shell__layer--3 {
  transform: translate(4px, 4px);
  clip-path: inset(0 0 4px 0);
}

.deliverables-tab-shell:hover > .deliverables-tabs-trigger:not(.is-active) {
  transform: translate(4px, 4px);
}

.deliverables-tabs-trigger:focus-visible {
  outline: 3px solid rgba(201, 255, 59, 0.8);
  outline-offset: 3px;
}

.deliverables-tabs-trigger.is-active {
  z-index: 20;
  transform: none;
  background: #ffffff;
  border-color: #9fd01c;
  border-bottom: none;
  padding-bottom: calc(var(--deliverables-tab-padding-bottom) + 1px);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  transition:
    background-color 140ms ease,
    color 140ms ease,
    border-color 140ms ease,
    opacity 140ms ease;
}

.deliverables-tabs-trigger.is-active::after {
  content: "";
  position: absolute;
  left: -1px;
  right: -1px;
  bottom: calc(-1 * (var(--deliverables-seam-overlap) + 1px));
  height: calc(var(--deliverables-seam-overlap) + 2px);
  background:
    linear-gradient(#9fd01c 0 0) left / 1px 100% no-repeat,
    linear-gradient(#9fd01c 0 0) right / 1px 100% no-repeat,
    #ffffff;
  pointer-events: none;
  z-index: 1;
}

.deliverables-tabs-controls {
  display: flex;
  flex: 0 0 auto;
  margin-left: auto;
  align-self: flex-start;
  align-items: center;
  gap: 0.55rem;
  padding-bottom: 0;
}

.deliverables-tabs-nav-button-shell {
  --grounded-volume-radius: 0.88rem;
  position: relative;
  isolation: isolate;
  z-index: 1;
  flex: 0 0 auto;
}

.deliverables-tabs-nav-button-shell .grounded-volume-shell__layer {
  border-radius: var(--grounded-volume-radius);
  transition: transform 200ms ease;
}

.deliverables-tabs-nav-button {
  position: relative;
  z-index: 20;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.72rem;
  height: 2.72rem;
  border: 1px solid #9fd01c;
  border-radius: var(--grounded-volume-radius);
  background: #ffffff;
  color: #171717;
  cursor: pointer;
  transition:
    transform 200ms ease,
    background-color 150ms ease,
    border-color 150ms ease,
    color 150ms ease;
}

.deliverables-tabs-nav-icon {
  width: 1.08rem;
  height: 1.08rem;
  stroke: currentColor;
  stroke-width: 2.25;
  stroke-linecap: round;
  stroke-linejoin: round;
  overflow: visible;
}

.deliverables-tabs-nav-button:hover {
  background: #fff8ef;
}

.deliverables-tabs-nav-button-shell:hover > .deliverables-tabs-nav-button {
  transform: translate(4px, 4px);
}

.deliverables-tabs-nav-button-shell:hover .grounded-volume-shell__layer--1,
.deliverables-tabs-nav-button-shell:hover .grounded-volume-shell__layer--2,
.deliverables-tabs-nav-button-shell:hover .grounded-volume-shell__layer--3 {
  transform: translate(4px, 4px);
}

.deliverables-tabs-nav-button-shell:has(> .deliverables-tabs-nav-button:active)
  .grounded-volume-shell__layer {
  transform: translate(9px, 9px);
}

.deliverables-tabs-nav-button:active {
  transform: translate(9px, 9px);
}

.deliverables-tabs-nav-button:focus-visible {
  outline: 3px solid rgba(201, 255, 59, 0.8);
  outline-offset: 3px;
}

.deliverables-tabs-shell {
  --grounded-volume-radius: var(--deliverables-panel-radius);
  position: relative;
  z-index: 12;
}

.deliverables-tabs-shell .grounded-volume-shell__layer {
  border-radius: 0 var(--deliverables-panel-radius) var(--deliverables-panel-radius)
    var(--deliverables-panel-radius);
}

.deliverables-tabs-surface {
  display: grid;
  gap: clamp(1.6rem, 2.2vw, 2.4rem);
  position: relative;
  z-index: 12;
  overflow: hidden;
  min-height: clamp(28rem, 44vw, 38rem);
  padding: clamp(1.35rem, 2.2vw, 2rem) clamp(0.82rem, 1.25vw, 1.35rem)
    clamp(1.55rem, 2.35vw, 2.2rem);
  border: 1px solid #9fd01c;
  border-radius: 0 var(--deliverables-panel-radius) var(--deliverables-panel-radius)
    var(--deliverables-panel-radius);
  background: #ffffff;
}

.deliverables-tab-panel[hidden] {
  display: none !important;
}

.deliverables-tab-panel {
  display: grid;
  gap: clamp(1.4rem, 2.1vw, 2.35rem);
  max-width: none;
  margin: 0;
  min-width: 0;
}

.deliverables-tab-panel.is-active {
  animation: deliverables-panel-reveal 260ms ease both;
}

.deliverables-tab-panel:focus-visible {
  outline: 3px solid rgba(159, 208, 28, 0.38);
  outline-offset: 0.35rem;
  border-radius: 1rem;
}

@keyframes deliverables-panel-reveal {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .deliverables-tab-panel.is-active {
    animation: none;
  }
}

.deliverables-panel-intro {
  margin: 0;
  max-width: 67rem;
  color: rgba(23, 23, 23, 0.92);
  font-size: clamp(1.22rem, 1.75vw, 1.75rem);
  line-height: 1.24;
  letter-spacing: -0.02em;
  text-wrap: balance;
}

.deliverables-pnl-layout {
  display: grid;
  gap: clamp(1.75rem, 2.7vw, 3.2rem);
  align-items: start;
}

.deliverables-pnl-compare {
  display: grid;
  gap: 1rem;
}

.deliverables-pnl-compare-group {
  display: grid;
  gap: 1rem;
  align-items: center;
}

.deliverables-pnl-card {
  display: grid;
  gap: 0.85rem;
  align-content: start;
  min-width: 0;
  padding: 0.95rem;
  border: 1px solid rgba(23, 23, 23, 0.1);
  border-radius: 1.25rem;
  background: linear-gradient(180deg, #fffdf8 0%, #f6f1e8 100%);
}

.deliverables-pnl-card-label {
  display: inline-flex;
  width: fit-content;
  padding: 0.45rem 0.75rem;
  border-radius: 0.5rem;
  color: #171717;
  font-size: 1rem;
  font-weight: 800;
  line-height: 1;
}

.deliverables-pnl-card-label--coral {
  background: rgba(255, 108, 76, 0.7);
}

.deliverables-pnl-card-label--lime {
  background: rgba(201, 255, 59, 0.7);
}

.deliverables-pnl-sheet {
  display: grid;
  gap: 0.65rem;
  min-height: 14rem;
  padding: 0.8rem;
  border: 1px solid rgba(23, 23, 23, 0.08);
  border-radius: 0.95rem;
  background: #ffffff;
}

.deliverables-pnl-sheet-head {
  display: grid;
  gap: 0.45rem;
}

.deliverables-pnl-sheet-head--report {
  grid-template-columns: 1.4fr 0.9fr;
}

.deliverables-pnl-sheet-head span,
.deliverables-pnl-analysis-filters span {
  display: block;
  height: 0.8rem;
  border-radius: 999px;
  background: rgba(23, 23, 23, 0.12);
}

.deliverables-pnl-analysis-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.deliverables-pnl-analysis-filters span {
  width: 4.4rem;
  height: 1.2rem;
  background: rgba(23, 23, 23, 0.08);
}

.deliverables-pnl-sheet-table {
  display: grid;
  gap: 0.45rem;
}

.deliverables-pnl-sheet-line {
  display: block;
  width: 86%;
  height: 0.72rem;
  border-radius: 999px;
  background: rgba(23, 23, 23, 0.14);
}

.deliverables-pnl-sheet-line--muted {
  background: rgba(23, 23, 23, 0.18);
}

.deliverables-pnl-sheet-line.is-wide {
  width: 100%;
}

.deliverables-pnl-sheet-line.is-short {
  width: 62%;
}

.deliverables-pnl-sheet-line.is-highlight-lime {
  background: rgba(201, 255, 59, 0.85);
}

.deliverables-pnl-sheet-line.is-highlight-coral {
  background: rgba(255, 108, 76, 0.58);
}

.deliverables-pnl-analysis-footer {
  display: flex;
  gap: 0.45rem;
  margin-top: auto;
}

.deliverables-pnl-analysis-pill {
  display: block;
  width: 4.25rem;
  height: 0.6rem;
  border-radius: 999px;
}

.deliverables-pnl-analysis-pill--lime {
  background: rgba(201, 255, 59, 0.85);
}

.deliverables-pnl-analysis-pill--coral {
  background: rgba(255, 108, 76, 0.65);
}

.deliverables-pnl-foot {
  display: grid;
  justify-items: center;
  gap: 0.35rem;
  padding: 0.8rem 0.6rem;
  border-radius: 0.9rem;
  background: rgba(23, 23, 23, 0.05);
  color: rgba(23, 23, 23, 0.75);
  font-size: 0.92rem;
  line-height: 1.35;
  text-align: center;
}

.deliverables-pnl-cross {
  color: #ff5a36;
  font-size: 2.25rem;
  font-weight: 900;
  line-height: 1;
}

.deliverables-pnl-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  border: 1px solid rgba(23, 23, 23, 0.08);
  border-radius: 999px;
  background: linear-gradient(180deg, #fff8ef 0%, #ebe1d3 100%);
  color: #c48a3b;
  font-size: 2rem;
  line-height: 1;
}

.deliverables-pnl-caption {
  margin: 0;
  color: #171717;
  font-size: clamp(1.1rem, 1.6vw, 1.5rem);
  font-weight: 700;
  line-height: 1.35;
}

.deliverables-pnl-benefits {
  display: grid;
  gap: 1.25rem;
  align-content: start;
  padding-top: 0.25rem;
}

.deliverables-pnl-benefit {
  margin: 0;
  color: rgba(23, 23, 23, 0.84);
  font-size: clamp(1.02rem, 1.45vw, 1.3rem);
  line-height: 1.55;
}

.deliverables-pnl-benefit strong {
  color: #171717;
  font-weight: 800;
}

.deliverables-panel-intro--legacy,
.deliverables-pnl-layout--legacy {
  display: none;
}

.deliverables-pnl-layout--reworked {
  display: grid;
  gap: clamp(2.15rem, 3vw, 3.45rem);
}

.deliverables-panel-intro--reworked {
  margin: 0;
  max-width: 65rem;
  font-size: clamp(1.35rem, 2.05vw, 2.08rem);
  line-height: 1.18;
  letter-spacing: -0.028em;
  color: rgba(23, 23, 23, 0.94);
}

.deliverables-pnl-showcase {
  --deliverables-pnl-mockup-height: clamp(22rem, 34vw, 30rem);
  display: grid;
  gap: clamp(1.35rem, 2vw, 2.2rem);
  align-items: start;
}

.deliverables-pnl-side {
  display: grid;
  gap: clamp(0.9rem, 1.25vw, 1.2rem);
  min-width: 0;
  align-self: start;
}

.deliverables-pnl-side--report {
  justify-items: stretch;
}

.deliverables-pnl-side--analysis {
  justify-items: stretch;
}

.deliverables-pnl-side-title {
  margin: 0;
  width: 100%;
  color: #171717;
  font-size: clamp(1.52rem, 2.1vw, 2.26rem);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -0.03em;
  text-align: center;
  text-wrap: balance;
}

.deliverables-pnl-mockup {
  position: relative;
  isolation: isolate;
  display: grid;
  place-items: center;
  width: auto;
  max-width: 100%;
  height: var(--deliverables-pnl-mockup-height);
  margin: 0 auto;
  padding: 0;
  border: none;
  border-radius: 0;
  overflow: visible;
  background: transparent;
  box-shadow: none;
}

.deliverables-pnl-mockup--report {
  aspect-ratio: 512 / 664;
}

.deliverables-pnl-report-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.85rem;
  margin-bottom: 0.78rem;
  color: #171717;
}

.deliverables-pnl-report-year {
  max-width: 7rem;
  font-size: 1.02rem;
  font-weight: 700;
  line-height: 1.12;
}

.deliverables-pnl-report-name {
  flex: 1;
  font-size: 0.92rem;
  font-weight: 700;
  line-height: 1.16;
  text-align: center;
}

.deliverables-pnl-report-meta {
  display: grid;
  gap: 0.34rem;
  margin-bottom: 0.8rem;
}

.deliverables-pnl-report-meta-row {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  gap: 0.5rem;
  align-items: end;
  color: rgba(23, 23, 23, 0.82);
  font-size: 0.62rem;
  line-height: 1.14;
}

.deliverables-pnl-report-meta-row span:last-child {
  display: block;
  min-width: 0;
  border-bottom: 1px solid rgba(23, 23, 23, 0.55);
}

.deliverables-pnl-report-table,
.deliverables-pnl-business-table {
  width: 100%;
  border-collapse: collapse;
  color: #171717;
  table-layout: fixed;
}

.deliverables-pnl-report-table {
  font-size: 0.69rem;
  line-height: 1.18;
}

.deliverables-pnl-report-col-note {
  width: 10%;
}

.deliverables-pnl-report-col-label {
  width: 46%;
}

.deliverables-pnl-report-col-value {
  width: 22%;
}

.deliverables-pnl-report-table th,
.deliverables-pnl-report-table td {
  padding: 0.26rem 0.32rem;
  border: 1px solid rgba(23, 23, 23, 0.5);
  vertical-align: top;
}

.deliverables-pnl-report-table thead th {
  font-weight: 800;
  text-align: center;
  background: rgba(23, 23, 23, 0.03);
}

.deliverables-pnl-report-table tbody th {
  font-weight: 500;
  text-align: left;
}

.deliverables-pnl-report-table tbody td:first-child {
  color: rgba(23, 23, 23, 0.5);
  text-align: center;
}

.deliverables-pnl-report-table tbody td:nth-child(3),
.deliverables-pnl-report-table tbody td:nth-child(4) {
  text-align: right;
}

.deliverables-pnl-report-table .is-negative {
  color: #ff4f3b;
}

.deliverables-pnl-arrow--reworked {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  justify-self: center;
  width: clamp(3.9rem, 5vw, 4.8rem);
  height: clamp(3.9rem, 5vw, 4.8rem);
  border: 1px solid rgba(221, 205, 176, 0.95);
  border-radius: 999px;
  background: linear-gradient(180deg, #f5efe4 0%, #eee4d5 100%);
  color: #b8db19;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.9),
    0 0.45rem 0.95rem rgba(133, 113, 72, 0.18);
  filter: none;
}

.deliverables-pnl-arrow-icon {
  display: block;
  width: 56%;
  height: auto;
  overflow: visible;
}

.deliverables-pnl-mockup--analysis {
  aspect-ratio: 653 / 663;
}

.deliverables-pnl-mockup-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: fill;
  object-position: center;
}

.deliverables-pnl-mockup--report > :not(.deliverables-pnl-mockup-image),
.deliverables-pnl-mockup--analysis > :not(.deliverables-pnl-mockup-image) {
  display: none !important;
}

.deliverables-pnl-business-top {
  display: grid;
  grid-template-columns: minmax(0, 48%) minmax(0, 52%);
  border-bottom: 1px solid rgba(23, 23, 23, 0.36);
}

.deliverables-pnl-business-selects {
  display: grid;
  border-right: 1px solid rgba(23, 23, 23, 0.36);
}

.deliverables-pnl-business-select {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 1.46rem;
  padding: 0 1.28rem 0 0.72rem;
  border-bottom: 1px solid rgba(23, 23, 23, 0.3);
  color: rgba(23, 23, 23, 0.78);
  font-size: 0.71rem;
  font-style: italic;
  line-height: 1.05;
}

.deliverables-pnl-business-select:last-child {
  border-bottom: none;
}

.deliverables-pnl-business-select::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.6rem;
  width: 0;
  height: 0;
  border-left: 0.28rem solid transparent;
  border-right: 0.28rem solid transparent;
  border-top: 0.45rem solid rgba(23, 23, 23, 0.8);
  transform: translateY(-30%);
}

.deliverables-pnl-business-months {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.deliverables-pnl-business-months span {
  display: grid;
  gap: 0.12rem;
  justify-items: center;
  align-content: center;
  min-height: 2.74rem;
  border-left: 1px solid rgba(23, 23, 23, 0.24);
  color: rgba(23, 23, 23, 0.9);
}

.deliverables-pnl-business-months strong,
.deliverables-pnl-business-months em {
  font-style: normal;
  line-height: 1;
}

.deliverables-pnl-business-months strong {
  font-size: 0.71rem;
  font-weight: 700;
}

.deliverables-pnl-business-months em {
  font-size: 1.02rem;
  font-weight: 700;
}

.deliverables-pnl-business-title {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.85rem;
  border-bottom: 1px solid rgba(23, 23, 23, 0.4);
  color: #171717;
  font-size: 1.62rem;
  font-weight: 900;
  line-height: 1.04;
}

.deliverables-pnl-business-table {
  font-size: 0.74rem;
  line-height: 1.16;
}

.deliverables-pnl-business-col-label {
  width: 48%;
}

.deliverables-pnl-business-col-value {
  width: 10.4%;
}

.deliverables-pnl-business-table th,
.deliverables-pnl-business-table td {
  padding: 0.27rem 0.34rem;
  border-right: 1px solid rgba(23, 23, 23, 0.22);
  border-bottom: 1px solid rgba(23, 23, 23, 0.22);
}

.deliverables-pnl-business-table tr > *:last-child {
  border-right: none;
}

.deliverables-pnl-business-table th {
  font-weight: 700;
  text-align: left;
}

.deliverables-pnl-business-table td {
  text-align: right;
  font-weight: 600;
}

.deliverables-pnl-business-table .is-summary th,
.deliverables-pnl-business-table .is-summary td {
  font-weight: 800;
}

.deliverables-pnl-business-table .is-detail th {
  font-weight: 500;
  font-style: italic;
  color: rgba(23, 23, 23, 0.9);
}

.deliverables-pnl-business-table .is-section {
  background: rgba(23, 23, 23, 0.08);
}

.deliverables-pnl-business-table .is-accent-lime {
  background: rgba(201, 255, 59, 0.86);
}

.deliverables-pnl-business-table .is-accent-coral {
  background: rgba(255, 142, 116, 0.84);
}

.deliverables-pnl-points {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(0.9rem, 1.3vw, 1.2rem);
  margin: 0;
  padding: 0;
  list-style: none;
}

.deliverables-pnl-point {
  margin: 0;
  padding: clamp(0.8rem, 1.05vw, 1.05rem) clamp(0.9rem, 1.25vw, 1.15rem);
  border: 1px solid rgba(23, 23, 23, 0.1);
  border-radius: 0.95rem;
  background: rgba(255, 255, 255, 0.84);
  box-shadow: 0 0.45rem 0.95rem rgba(51, 38, 14, 0.06);
  color: rgba(23, 23, 23, 0.9);
  font-size: clamp(0.98rem, 1.08vw, 1.16rem);
  line-height: 1.48;
}

.deliverables-pnl-point strong {
  display: inline-block;
  margin-right: 0.2rem;
  font-weight: 800;
}

@media (min-width: 72rem) {
  .deliverables-pnl-showcase {
    grid-template-columns: max-content clamp(3.2rem, 3.8vw, 4rem) max-content;
    justify-content: end;
    column-gap: clamp(0.35rem, 0.7vw, 0.65rem);
  }

  .deliverables-pnl-side-title {
    white-space: nowrap;
  }
}

@media (min-width: 82rem) {
  .deliverables-pnl-layout--reworked {
    grid-template-columns: minmax(0, 1fr) minmax(18rem, 22rem);
    grid-template-areas:
      "intro intro"
      "showcase points";
    column-gap: clamp(0.8rem, 1.2vw, 1.2rem);
    row-gap: clamp(1.2rem, 1.8vw, 1.8rem);
    align-items: start;
  }

  .deliverables-panel-intro--reworked {
    grid-area: intro;
  }

  .deliverables-pnl-showcase {
    grid-area: showcase;
    justify-content: end;
  }

  .deliverables-pnl-points {
    grid-area: points;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.75rem;
    margin-top: clamp(3rem, 4.2vw, 3.8rem);
    align-content: start;
  }

  .deliverables-pnl-point {
    padding: 0.8rem 0.9rem;
    font-size: clamp(0.95rem, 0.9vw, 1.02rem);
    line-height: 1.42;
  }
}

@media (max-width: 71.999rem) {
  .deliverables-pnl-showcase {
    justify-items: center;
  }

  .deliverables-pnl-side--report,
  .deliverables-pnl-side--analysis {
    justify-items: center;
  }

  .deliverables-pnl-arrow--reworked {
    transform: rotate(90deg);
  }

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

@media (max-width: 47.999rem) {
  .deliverables-panel-intro--reworked {
    font-size: 1.2rem;
    line-height: 1.28;
    letter-spacing: -0.016em;
  }

  .deliverables-pnl-side-title {
    font-size: 1.56rem;
    line-height: 1.14;
  }

  .deliverables-pnl-mockup--report,
  .deliverables-pnl-mockup--analysis {
    max-width: none;
  }

  .deliverables-pnl-showcase {
    --deliverables-pnl-mockup-height: clamp(18rem, 78vw, 23rem);
  }

  .deliverables-pnl-report-year {
    font-size: 1.02rem;
  }

  .deliverables-pnl-report-name {
    font-size: 0.82rem;
  }

  .deliverables-pnl-report-table {
    font-size: 0.57rem;
    line-height: 1.2;
  }

  .deliverables-pnl-report-meta-row {
    font-size: 0.52rem;
    gap: 0.38rem;
  }

  .deliverables-pnl-business-top {
    grid-template-columns: 1fr;
  }

  .deliverables-pnl-business-selects {
    border-right: none;
    border-bottom: 1px solid rgba(23, 23, 23, 0.36);
  }

  .deliverables-pnl-business-months span {
    min-height: 2.4rem;
  }

  .deliverables-pnl-business-title {
    min-height: 2.5rem;
    font-size: 1.42rem;
  }

  .deliverables-pnl-business-table {
    font-size: 0.62rem;
    line-height: 1.18;
  }

  .deliverables-pnl-points {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.85rem;
  }

  .deliverables-pnl-point {
    padding: 0.72rem 0.78rem;
    font-size: 0.95rem;
    line-height: 1.44;
  }
}

/* Deliverables PnL surface redesign (aligned with service-overview stage rhythm). */
.deliverables-tabs-surface {
  gap: clamp(1.45rem, 1.95vw, 2.15rem);
  min-height: clamp(29rem, 42vw, 40rem);
  padding: clamp(2rem, 2.8vw, 2.7rem) clamp(1.1rem, 2vw, 2rem) clamp(2.15rem, 2.95vw, 2.75rem);
  background: #ffffff;
}

.deliverables-tab-panel {
  gap: 0;
  align-content: start;
}

.deliverables-pnl-layout--reworked {
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas:
    "header"
    "content";
  gap: 0;
}

.deliverables-pnl-header {
  grid-area: header;
  display: grid;
  align-content: start;
  gap: clamp(1rem, 1.3vw, 1.24rem);
  max-width: min(100%, 53rem);
  padding-top: clamp(0.2rem, 0.4vw, 0.32rem);
  margin-bottom: clamp(1.45rem, 1.95vw, 1.85rem);
}

.deliverables-pnl-main-title {
  grid-area: auto;
  margin: 0;
  max-width: 13.8ch;
  color: #111111;
  font-size: clamp(2.08rem, 3vw, 2.98rem);
  font-weight: 900;
  line-height: 0.97;
  letter-spacing: -0.045em;
  text-wrap: balance;
}

.deliverables-panel-intro--reworked {
  grid-area: auto;
  max-width: 46rem;
  margin: 0;
  color: rgba(17, 17, 17, 0.78);
  font-size: clamp(1.03rem, 1.08vw, 1.14rem);
  line-height: 1.56;
  letter-spacing: -0.012em;
  text-wrap: pretty;
}

.deliverables-pnl-content {
  grid-area: content;
  --deliverables-pnl-panel-bg: #faf6ed;
  --deliverables-pnl-panel-border: rgba(168, 149, 107, 0.28);
  display: grid;
  width: 100%;
  max-width: 100%;
  grid-template-columns: minmax(0, 1fr) minmax(18.5rem, 21rem);
  gap: clamp(0.9rem, 1.15vw, 1.2rem);
  align-items: start;
  justify-self: stretch;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.deliverables-pnl-showcase {
  grid-area: auto;
  --deliverables-pnl-mockup-height: clamp(21rem, 26vw, 29rem);
  --deliverables-pnl-showcase-gap: clamp(0.3rem, 0.55vw, 0.5rem);
  display: grid;
  width: fit-content;
  max-width: 100%;
  grid-template-columns: max-content max-content max-content;
  grid-template-rows: auto auto;
  column-gap: var(--deliverables-pnl-showcase-gap);
  row-gap: 1rem;
  padding: clamp(1rem, 1.35vw, 1.2rem);
  border: 1px solid var(--deliverables-pnl-panel-border);
  border-radius: 1.2rem;
  background: var(--deliverables-pnl-panel-bg);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.68),
    0 10px 24px rgba(69, 52, 24, 0.05);
  align-items: start;
  justify-content: start;
  justify-items: start;
  min-width: 0;
}

.deliverables-pnl-side {
  display: grid;
  gap: clamp(0.65rem, 0.9vw, 0.85rem);
  min-width: 0;
  align-content: start;
}

.deliverables-pnl-side-title {
  width: fit-content;
  max-width: min(100%, 18rem);
  margin: 0 auto;
  padding: 0.34rem 0.95rem 0.42rem;
  border: 1px solid rgba(164, 145, 102, 0.16);
  border-radius: 0.4rem;
  font-size: clamp(1.02rem, 1.08vw, 1.22rem);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -0.02em;
  text-align: center;
  text-wrap: balance;
}

.deliverables-pnl-side--report .deliverables-pnl-side-title {
  background: rgba(255, 142, 116, 0.3);
  border-color: rgba(239, 120, 92, 0.18);
}

.deliverables-pnl-side--analysis .deliverables-pnl-side-title {
  background: rgba(201, 255, 59, 0.8);
  border-color: rgba(159, 208, 28, 0.18);
}

.deliverables-pnl-mockup {
  display: grid;
  place-items: start;
  width: auto;
  max-width: 100%;
  margin: 0;
  height: auto;
  overflow: visible;
  background: transparent;
  box-shadow: none;
}

.deliverables-pnl-mockup--report {
  aspect-ratio: auto;
  border: none;
  border-radius: 0;
  overflow: visible;
  background: transparent;
  box-shadow: none;
}

.deliverables-pnl-mockup--analysis {
  aspect-ratio: auto;
  border: none;
  border-radius: 0;
  overflow: visible;
  background: transparent;
  box-shadow: none;
}

.deliverables-pnl-mockup-image {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: var(--deliverables-pnl-mockup-height);
  object-fit: contain;
  object-position: top left;
}

.deliverables-pnl-arrow--reworked {
  width: clamp(3.3rem, 4vw, 4rem);
  height: clamp(3.3rem, 4vw, 4rem);
  justify-self: center;
  transform: none;
  border-color: rgba(165, 145, 103, 0.5);
  background: #efe6d7;
  color: #6f8f14;
  box-shadow: 0 6px 14px rgba(84, 65, 32, 0.1);
  z-index: 4;
}

@media (min-width: 48rem) {
  .deliverables-pnl-side {
    display: contents;
  }

  .deliverables-pnl-side--report .deliverables-pnl-side-title {
    grid-column: 1;
    grid-row: 1;
    justify-self: center;
  }

  .deliverables-pnl-side--analysis .deliverables-pnl-side-title {
    grid-column: 3;
    grid-row: 1;
    justify-self: center;
  }

  .deliverables-pnl-mockup--report {
    grid-column: 1;
    grid-row: 2;
  }

  .deliverables-pnl-arrow--reworked {
    grid-column: 2;
    grid-row: 2;
    align-self: center;
  }

  .deliverables-pnl-mockup--analysis {
    grid-column: 3;
    grid-row: 2;
  }
}

.deliverables-pnl-aside {
  grid-area: auto;
  display: grid;
  align-content: start;
  gap: 0.7rem;
  min-width: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.deliverables-pnl-aside-label {
  margin: 0 0 0.1rem;
  color: transparent;
  font-size: 0;
  line-height: 0;
}

.deliverables-pnl-aside-label::before {
  content: "Что вы получаете";
  display: block;
  color: rgba(17, 17, 17, 0.56);
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.15;
  text-transform: uppercase;
}

.deliverables-pnl-points {
  grid-area: auto;
  display: grid;
  gap: 0.7rem;
  margin: 0;
  width: 100%;
  padding: 0;
  list-style: none;
  align-content: start;
  min-width: 0;
  max-width: none;
  justify-self: stretch;
  align-self: stretch;
  overflow: visible;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.deliverables-pnl-points::before {
  content: none;
}

.deliverables-pnl-points--duo {
  gap: 0.8rem;
}

.deliverables-pnl-point {
  position: relative;
  display: grid;
  gap: 0.32rem;
  margin: 0;
  padding: 0.95rem 1rem 1rem;
  border: 1px solid rgba(168, 149, 107, 0.22);
  border-radius: 0.9rem;
  background: var(--deliverables-pnl-panel-bg);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
  color: rgba(17, 17, 17, 0.78);
  font-size: clamp(0.97rem, 0.94vw, 1.02rem);
  line-height: 1.52;
  letter-spacing: -0.008em;
  text-wrap: pretty;
}

.deliverables-pnl-points--duo .deliverables-pnl-point {
  min-height: clamp(6.8rem, 8vw, 7.8rem);
}

.deliverables-pnl-point::before {
  content: none;
}

.deliverables-pnl-point + .deliverables-pnl-point {
  border-top: none;
}

.deliverables-pnl-point strong {
  display: block;
  position: relative;
  width: auto;
  max-width: 100%;
  margin: 0 0 0.28rem;
  padding: 0 0 0 1.2rem;
  border-radius: 0;
  background: transparent;
  color: #111111;
  font-size: 1.02em;
  font-weight: 800;
  line-height: 1.16;
  letter-spacing: -0.014em;
  text-wrap: balance;
}

.deliverables-pnl-point strong::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0.02rem;
  color: #8fb321;
  font-size: 0.92em;
  font-weight: 900;
  line-height: 1;
}

.deliverables-pnl-point strong::before {
  content: "\2713";
}

#deliverables-panel-plan .deliverables-pnl-showcase {
  --deliverables-pnl-mockup-height: clamp(11.15rem, 19.1vw, 13.35rem);
}

@media (min-width: 70rem) {
  .deliverables-pnl-header {
    gap: clamp(1.05rem, 1.35vw, 1.3rem);
    max-width: min(100%, 54rem);
    padding-top: clamp(0.3rem, 0.65vw, 0.52rem);
    margin-bottom: clamp(1.55rem, 2.05vw, 1.95rem);
  }

  .deliverables-pnl-main-title {
    max-width: 14.2ch;
    font-size: clamp(2.14rem, 3vw, 3rem);
    line-height: 1.08;
  }

  .deliverables-panel-intro--reworked {
    max-width: 47rem;
    font-size: clamp(1.03rem, 1.1vw, 1.16rem);
    line-height: 1.55;
  }

  .deliverables-pnl-mockup-image {
    width: auto;
    height: var(--deliverables-pnl-mockup-height);
    max-height: none;
  }

  .deliverables-pnl-content {
    grid-template-columns: max-content minmax(21rem, 1fr);
    gap: clamp(1rem, 1.2vw, 1.25rem);
  }

  #deliverables-panel-pnl .deliverables-pnl-aside {
    align-self: start;
  }

  #deliverables-panel-pnl .deliverables-pnl-points {
    gap: 0.58rem;
  }

  #deliverables-panel-pnl .deliverables-pnl-point {
    padding: 0.78rem 0.92rem 0.84rem;
    font-size: clamp(0.95rem, 0.9vw, 0.99rem);
    line-height: 1.42;
  }

  #deliverables-panel-causes .deliverables-pnl-aside {
    align-self: start;
  }

  #deliverables-panel-causes .deliverables-pnl-points {
    gap: 0.85rem;
  }

  #deliverables-panel-causes .deliverables-pnl-point {
    padding: 0.9rem 1rem 0.95rem;
    line-height: 1.44;
  }

  #deliverables-panel-plan .deliverables-pnl-showcase {
    --deliverables-pnl-mockup-height: clamp(11.15rem, 12.85vw, 13.35rem);
    row-gap: 0.64rem;
    padding: 0.85rem 0.95rem 0.95rem;
  }
}

@media (min-width: 70rem) and (max-width: 82rem) {
  .deliverables-pnl-content {
    grid-template-columns: minmax(0, 1fr) minmax(17.5rem, 18.75rem);
    gap: clamp(0.8rem, 0.95vw, 1rem);
  }

  .deliverables-pnl-showcase {
    --deliverables-pnl-mockup-height: clamp(15.3rem, 19vw, 18.4rem);
    width: 100%;
    grid-template-columns: minmax(0, 0.88fr) auto minmax(0, 1.08fr);
    column-gap: clamp(0.22rem, 0.34vw, 0.36rem);
    row-gap: 0.9rem;
    padding: 0.92rem 0.9rem 0.96rem;
    justify-content: stretch;
    justify-items: stretch;
  }

  .deliverables-pnl-side-title {
    max-width: min(100%, 14.4rem);
    font-size: clamp(0.96rem, 0.92vw, 1.06rem);
    padding: 0.32rem 0.8rem 0.38rem;
  }

  .deliverables-pnl-arrow--reworked {
    width: clamp(2.8rem, 3vw, 3.35rem);
    height: clamp(2.8rem, 3vw, 3.35rem);
  }

  .deliverables-pnl-mockup,
  .deliverables-pnl-mockup--report,
  .deliverables-pnl-mockup--analysis {
    width: 100%;
    min-width: 0;
  }

  .deliverables-pnl-mockup-image {
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: var(--deliverables-pnl-mockup-height);
    object-position: top center;
  }

  .deliverables-pnl-aside {
    width: 100%;
    max-width: 18.75rem;
    justify-self: stretch;
  }

  .deliverables-pnl-points,
  .deliverables-pnl-points--duo {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.7rem;
  }

  .deliverables-pnl-point,
  .deliverables-pnl-points--duo .deliverables-pnl-point {
    min-height: 0;
    padding: 0.84rem 0.9rem 0.9rem;
    font-size: clamp(0.93rem, 0.86vw, 0.98rem);
    line-height: 1.44;
  }

  #deliverables-panel-plan .deliverables-pnl-showcase {
    --deliverables-pnl-mockup-height: clamp(10.9rem, 12.8vw, 12.9rem);
  }
}

@media (max-width: 69.999rem) {
  .deliverables-pnl-content {
    width: 100%;
    grid-template-columns: minmax(0, 1fr);
  }

  .deliverables-pnl-showcase {
    width: 100%;
    grid-template-columns: max-content max-content max-content;
  }

  .deliverables-pnl-side--report,
  .deliverables-pnl-side--analysis {
    justify-items: center;
  }

  .deliverables-pnl-aside {
    gap: 0.7rem;
    padding: 0;
  }
}

@media (min-width: 48.125rem) and (max-width: 64rem) {
  .deliverables-tabs-mobile-sticky {
    --deliverables-mobile-sticky-top: 4rem;
    position: fixed;
    top: calc(var(--deliverables-mobile-sticky-top) + env(safe-area-inset-top));
    right: 0;
    left: 0;
    z-index: 34;
    display: block;
    padding-inline: max(1rem, env(safe-area-inset-left)) max(1rem, env(safe-area-inset-right));
    opacity: 0;
    visibility: hidden;
    transform: translateY(-0.72rem);
    transition:
      opacity 180ms ease,
      transform 180ms ease,
      visibility 180ms step-end;
    pointer-events: none;
    overflow: visible;
  }

  .deliverables-tabs-mobile-sticky.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition:
      opacity 180ms ease,
      transform 180ms ease,
      visibility 0s linear;
  }

  .deliverables-tabs-mobile-sticky::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 5.35rem;
    background: linear-gradient(
      180deg,
      rgba(215, 205, 191, 0.88) 0%,
      rgba(233, 226, 214, 0.58) 26%,
      rgba(238, 233, 223, 0.28) 54%,
      rgba(244, 240, 232, 0) 100%
    );
    pointer-events: none;
  }

  .deliverables-tabs-mobile-sticky__inner {
    --deliverables-mobile-sticky-volume-clearance: 0.9rem;
    width: min(100%, 23.2rem);
    margin-inline: auto;
    padding: 0 0.44rem 0;
    position: relative;
    z-index: 1;
    pointer-events: auto;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .deliverables-tabs-mobile-sticky__inner::-webkit-scrollbar {
    display: none;
  }

  .deliverables-tabs-mobile-sticky__nav {
    display: inline-flex;
    gap: 0.56rem;
    align-items: flex-start;
    min-width: 100%;
    width: max-content;
    overflow: visible;
    margin-top: -1px;
    padding: 0 0 var(--deliverables-mobile-sticky-volume-clearance);
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .deliverables-tabs-mobile-sticky__nav::-webkit-scrollbar {
    display: none;
  }

  .deliverables-tabs-mobile-sticky__tab-shell {
    --deliverables-mobile-sticky-tab-radius-size: 0.98rem;
    --deliverables-mobile-sticky-tab-radius: 0 0 0.98rem 0.98rem;
    --deliverables-tab-corner-radius: var(--deliverables-mobile-sticky-tab-radius);
    --grounded-volume-radius: var(--deliverables-mobile-sticky-tab-radius);
    flex: 0 0 auto;
    width: auto;
    min-width: max-content;
    max-width: none;
    overflow: visible;
  }

  .deliverables-tabs-mobile-sticky__tab-shell:first-child {
    --deliverables-tab-corner-radius: var(--deliverables-mobile-sticky-tab-radius);
  }

  .deliverables-tabs-mobile-sticky__tab-shell .grounded-volume-shell__layer {
    inset: calc(1px - var(--deliverables-layer-shift)) 0 0 0;
    border-radius: var(--deliverables-tab-corner-radius);
    transform: translate(var(--deliverables-layer-shift), var(--deliverables-layer-shift));
    clip-path: none;
    transition: transform 200ms ease;
  }

  .deliverables-tabs-mobile-sticky__tab-shell .grounded-volume-shell__layer--1 {
    --deliverables-layer-shift: 1px;
  }

  .deliverables-tabs-mobile-sticky__tab-shell .grounded-volume-shell__layer--2 {
    --deliverables-layer-shift: 2px;
  }

  .deliverables-tabs-mobile-sticky__tab-shell .grounded-volume-shell__layer--3 {
    --deliverables-layer-shift: 3px;
  }

  .deliverables-tabs-mobile-sticky__tab-shell .grounded-volume-shell__layer--4 {
    --deliverables-layer-shift: 4px;
  }

  .deliverables-tabs-mobile-sticky__tab-shell .grounded-volume-shell__layer--5 {
    --deliverables-layer-shift: 5px;
  }

  .deliverables-tabs-mobile-sticky__tab-shell .grounded-volume-shell__layer--6 {
    --deliverables-layer-shift: 6px;
    clip-path: none;
    filter: none;
  }

  .deliverables-tabs-mobile-sticky__button {
    --deliverables-tab-font-size: 1rem;
    --deliverables-tab-min-height: 2.35rem;
    --deliverables-tab-padding-top: 0.38rem;
    --deliverables-tab-padding-bottom: 0.43rem;
    min-height: var(--deliverables-tab-min-height);
    padding: var(--deliverables-tab-padding-top) 0.82rem var(--deliverables-tab-padding-bottom);
    border-top: none;
    border-radius: var(--deliverables-tab-corner-radius);
    font-size: var(--deliverables-tab-font-size);
    line-height: 1;
    letter-spacing: -0.018em;
  }

  .deliverables-tabs-mobile-sticky__button:focus-visible {
    outline: 3px solid rgba(201, 255, 59, 0.8);
    outline-offset: 3px;
  }

  .deliverables-tabs-mobile-sticky__tab-shell:not(
      :has(> .deliverables-tabs-trigger.is-active)
    ):hover
    .grounded-volume-shell__layer--1,
  .deliverables-tabs-mobile-sticky__tab-shell:not(
      :has(> .deliverables-tabs-trigger.is-active)
    ):hover
    .grounded-volume-shell__layer--2,
  .deliverables-tabs-mobile-sticky__tab-shell:not(
      :has(> .deliverables-tabs-trigger.is-active)
    ):hover
    .grounded-volume-shell__layer--3 {
    transform: translate(4px, 4px);
    clip-path: none;
  }

  .deliverables-tabs-mobile-sticky__tab-shell:hover
    > .deliverables-tabs-mobile-sticky__button.deliverables-tabs-trigger:not(.is-active) {
    transform: translate(4px, 4px);
  }

  .deliverables-tabs-mobile-sticky__button.is-active {
    background: #fffdf8;
    border-color: #9fd01c;
    border-top: none;
    border-bottom: 1px solid #9fd01c;
    padding-top: var(--deliverables-tab-padding-top);
    padding-bottom: var(--deliverables-tab-padding-bottom);
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--deliverables-mobile-sticky-tab-radius-size);
    border-bottom-right-radius: var(--deliverables-mobile-sticky-tab-radius-size);
  }

  .deliverables-tabs-mobile-sticky__button.is-active::before {
    content: none;
  }

  .deliverables-tabs-mobile-sticky__tab-shell.is-active .grounded-volume-shell__layer {
    transform: translate(var(--deliverables-layer-shift), var(--deliverables-layer-shift));
    clip-path: none;
    transition: none;
  }

  .deliverables-tabs-mobile-sticky__tab-shell.is-active .grounded-volume-shell__layer--6 {
    clip-path: none;
  }

  body.menu-open .deliverables-tabs-mobile-sticky {
    opacity: 0;
    visibility: hidden;
    transform: translateY(-0.8rem);
    pointer-events: none;
  }
}

@media (max-width: 47.999rem) {
  .deliverables-tabs-mobile-sticky {
    --deliverables-mobile-sticky-top: 4rem;
    position: fixed;
    top: calc(var(--deliverables-mobile-sticky-top) + env(safe-area-inset-top));
    right: 0;
    left: 0;
    z-index: 34;
    display: block;
    padding-inline: max(1rem, env(safe-area-inset-left)) max(1rem, env(safe-area-inset-right));
    opacity: 0;
    visibility: hidden;
    transform: translateY(-0.72rem);
    transition:
      opacity 180ms ease,
      transform 180ms ease,
      visibility 180ms step-end;
    pointer-events: none;
    overflow: visible;
  }

  .deliverables-tabs-mobile-sticky.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition:
      opacity 180ms ease,
      transform 180ms ease,
      visibility 0s linear;
  }

  .deliverables-tabs-mobile-sticky::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 5.35rem;
    background: linear-gradient(
      180deg,
      rgba(215, 205, 191, 0.88) 0%,
      rgba(233, 226, 214, 0.58) 26%,
      rgba(238, 233, 223, 0.28) 54%,
      rgba(244, 240, 232, 0) 100%
    );
    pointer-events: none;
  }

  .deliverables-tabs-mobile-sticky__inner {
    --deliverables-mobile-sticky-volume-clearance: 0.9rem;
    width: min(100%, 23.2rem);
    margin-inline: auto;
    padding: 0 0.44rem 0;
    position: relative;
    z-index: 1;
    pointer-events: auto;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .deliverables-tabs-mobile-sticky__inner::-webkit-scrollbar {
    display: none;
  }

  .deliverables-tabs-mobile-sticky__nav {
    display: inline-flex;
    gap: 0.56rem;
    align-items: flex-start;
    min-width: 100%;
    width: max-content;
    overflow: visible;
    margin-top: -1px;
    padding: 0 0 var(--deliverables-mobile-sticky-volume-clearance);
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .deliverables-tabs-mobile-sticky__nav::-webkit-scrollbar {
    display: none;
  }

  .deliverables-tabs-mobile-sticky__tab-shell {
    --deliverables-mobile-sticky-tab-radius-size: 0.98rem;
    --deliverables-mobile-sticky-tab-radius: 0 0 0.98rem 0.98rem;
    --deliverables-tab-corner-radius: var(--deliverables-mobile-sticky-tab-radius);
    --grounded-volume-radius: var(--deliverables-mobile-sticky-tab-radius);
    flex: 0 0 auto;
    width: auto;
    min-width: max-content;
    max-width: none;
    overflow: visible;
  }

  .deliverables-tabs-mobile-sticky__tab-shell:first-child {
    --deliverables-tab-corner-radius: var(--deliverables-mobile-sticky-tab-radius);
  }

  .deliverables-tabs-mobile-sticky__tab-shell .grounded-volume-shell__layer {
    inset: calc(1px - var(--deliverables-layer-shift)) 0 0 0;
    border-radius: var(--deliverables-tab-corner-radius);
    transform: translate(var(--deliverables-layer-shift), var(--deliverables-layer-shift));
    clip-path: none;
    transition: transform 200ms ease;
  }

  .deliverables-tabs-mobile-sticky__tab-shell .grounded-volume-shell__layer--1 {
    --deliverables-layer-shift: 1px;
  }

  .deliverables-tabs-mobile-sticky__tab-shell .grounded-volume-shell__layer--2 {
    --deliverables-layer-shift: 2px;
  }

  .deliverables-tabs-mobile-sticky__tab-shell .grounded-volume-shell__layer--3 {
    --deliverables-layer-shift: 3px;
  }

  .deliverables-tabs-mobile-sticky__tab-shell .grounded-volume-shell__layer--4 {
    --deliverables-layer-shift: 4px;
  }

  .deliverables-tabs-mobile-sticky__tab-shell .grounded-volume-shell__layer--5 {
    --deliverables-layer-shift: 5px;
  }

  .deliverables-tabs-mobile-sticky__tab-shell .grounded-volume-shell__layer--6 {
    --deliverables-layer-shift: 6px;
    clip-path: none;
    filter: none;
  }

  .deliverables-tabs-mobile-sticky__button {
    --deliverables-tab-font-size: 1rem;
    --deliverables-tab-min-height: 2.35rem;
    --deliverables-tab-padding-top: 0.38rem;
    --deliverables-tab-padding-bottom: 0.43rem;
    min-height: var(--deliverables-tab-min-height);
    padding: var(--deliverables-tab-padding-top) 0.82rem var(--deliverables-tab-padding-bottom);
    border-top: none;
    border-radius: var(--deliverables-tab-corner-radius);
    font-size: var(--deliverables-tab-font-size);
    line-height: 1;
    letter-spacing: -0.018em;
  }

  .deliverables-tabs-mobile-sticky__button:focus-visible {
    outline: 3px solid rgba(201, 255, 59, 0.8);
    outline-offset: 3px;
  }

  .deliverables-tabs-mobile-sticky__tab-shell:not(
      :has(> .deliverables-tabs-trigger.is-active)
    ):hover
    .grounded-volume-shell__layer--1,
  .deliverables-tabs-mobile-sticky__tab-shell:not(
      :has(> .deliverables-tabs-trigger.is-active)
    ):hover
    .grounded-volume-shell__layer--2,
  .deliverables-tabs-mobile-sticky__tab-shell:not(
      :has(> .deliverables-tabs-trigger.is-active)
    ):hover
    .grounded-volume-shell__layer--3 {
    transform: translate(4px, 4px);
    clip-path: none;
  }

  .deliverables-tabs-mobile-sticky__tab-shell:hover
    > .deliverables-tabs-mobile-sticky__button.deliverables-tabs-trigger:not(.is-active) {
    transform: translate(4px, 4px);
  }

  .deliverables-tabs-mobile-sticky__button.is-active {
    background: #fffdf8;
    border-color: #9fd01c;
    border-top: none;
    border-bottom: 1px solid #9fd01c;
    padding-top: var(--deliverables-tab-padding-top);
    padding-bottom: var(--deliverables-tab-padding-bottom);
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--deliverables-mobile-sticky-tab-radius-size);
    border-bottom-right-radius: var(--deliverables-mobile-sticky-tab-radius-size);
  }

  .deliverables-tabs-mobile-sticky__button.is-active::before {
    content: none;
  }

  .deliverables-tabs-mobile-sticky__tab-shell.is-active .grounded-volume-shell__layer {
    transform: translate(var(--deliverables-layer-shift), var(--deliverables-layer-shift));
    clip-path: none;
    transition: none;
  }

  .deliverables-tabs-mobile-sticky__tab-shell.is-active .grounded-volume-shell__layer--6 {
    clip-path: none;
  }

  body.menu-open .deliverables-tabs-mobile-sticky {
    opacity: 0;
    visibility: hidden;
    transform: translateY(-0.8rem);
    pointer-events: none;
  }

  .deliverables-tabs-section {
    padding-top: 4.45rem;
    padding-bottom: 5rem;
  }

  .deliverables-tabs-head {
    max-width: 54rem;
    margin-bottom: 0.52rem;
  }

  .deliverables-tabs-head .section-title {
    max-width: 14.6ch;
    font-size: clamp(2rem, 8.2vw, 2.22rem);
    line-height: 1.02;
    letter-spacing: -0.038em;
  }

  .deliverables-tabs-surface {
    gap: 1.28rem;
    padding: 1.18rem 0.98rem 1.42rem;
    border-radius: 0 1.1rem 1.1rem 1.1rem;
  }

  .deliverables-pnl-header {
    gap: 1.05rem;
    max-width: none;
    padding-top: 1.05rem;
    margin-bottom: 1.22rem;
  }

  .deliverables-pnl-main-title {
    max-width: min(100%, 16.6ch);
    font-size: clamp(1.39rem, 5.92vw, 1.54rem);
    line-height: 1.04;
    letter-spacing: -0.032em;
    text-wrap: balance;
  }

  .deliverables-panel-intro--reworked {
    max-width: min(100%, 34ch);
    font-size: 0.96rem;
    line-height: 1.56;
    letter-spacing: -0.008em;
  }

  .deliverables-tab-panel {
    gap: 1.28rem;
  }

  .deliverables-pnl-content {
    gap: 1.16rem;
    justify-items: center;
  }

  .deliverables-pnl-showcase {
    --deliverables-pnl-mockup-height: clamp(12.75rem, 58vw, 15.5rem);
    width: min(100%, 22.4rem);
    grid-template-columns: minmax(0, 1fr);
    justify-items: stretch;
    row-gap: 0.88rem;
    padding: 0.92rem 0.9rem 0.96rem;
    border-radius: 1rem;
    justify-self: center;
  }

  .deliverables-pnl-side {
    gap: 0.68rem;
    width: 100%;
    justify-items: center;
  }

  .deliverables-pnl-side-title {
    font-size: 0.97rem;
    max-width: 13.8rem;
    margin: 0 auto;
    justify-self: center;
    padding: 0.34rem 0.78rem 0.39rem;
    line-height: 1.12;
    text-align: center;
  }

  .deliverables-pnl-arrow--reworked {
    width: 1.39rem;
    height: 1.39rem;
    justify-self: center;
    transform: rotate(90deg);
    margin-block: 0.16rem;
  }

  .deliverables-pnl-mockup {
    width: 100%;
    max-width: 19.75rem;
    place-items: center;
    justify-self: center;
  }

  .deliverables-pnl-mockup-image {
    width: 100%;
    object-position: top center;
  }

  .deliverables-pnl-point {
    gap: 0.3rem;
    padding: 0.9rem 0.94rem 0.96rem;
    border-radius: 0.9rem;
    font-size: 0.92rem;
    line-height: 1.48;
  }

  .deliverables-pnl-point strong {
    margin-bottom: 0.24rem;
  }

  .deliverables-pnl-point strong::before {
    top: 0;
  }

  .deliverables-pnl-points {
    gap: 0.74rem;
    padding: 0;
    max-width: none;
  }

  .deliverables-pnl-points--duo .deliverables-pnl-point {
    min-height: 0;
  }

  .deliverables-pnl-points::before {
    content: none;
  }

  .deliverables-pnl-aside {
    width: min(100%, 22.4rem);
    gap: 0.78rem;
    margin-top: 0.18rem;
    padding: 0;
    border-radius: 0;
    justify-self: center;
  }

  .deliverables-pnl-aside-label {
    font-size: 0;
  }

  .deliverables-pnl-aside-label::before {
    font-size: 0.8rem;
    letter-spacing: 0.07em;
  }

  #deliverables-panel-plan .deliverables-pnl-showcase {
    --deliverables-pnl-mockup-height: clamp(10.9rem, 52vw, 12.8rem);
  }
}

.deliverables-placeholder {
  display: grid;
  align-content: center;
  gap: 1rem;
  min-height: clamp(18rem, 32vw, 23rem);
  max-width: 36rem;
}

.deliverables-placeholder-title {
  margin: 0;
  color: #171717;
  font-size: clamp(1.4rem, 2.4vw, 2.1rem);
  font-weight: 800;
  line-height: 1.2;
}

.deliverables-placeholder-text {
  margin: 0;
  color: rgba(23, 23, 23, 0.72);
  font-size: 1.05rem;
  line-height: 1.6;
}

.deliverables-placeholder-points {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  padding-top: 0.35rem;
}

.deliverables-placeholder-point {
  display: inline-flex;
  align-items: center;
  min-height: 2.6rem;
  padding: 0.7rem 1rem;
  border: 1px solid rgba(23, 23, 23, 0.08);
  border-radius: 999px;
  background: #fff8ef;
  color: #171717;
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.2;
}

@media (min-width: 48rem) {
  .deliverables-pnl-compare-group {
    grid-template-columns: minmax(0, 0.86fr) auto minmax(0, 1fr);
  }
}

@media (min-width: 64.0625rem) {
  .deliverables-pnl-layout--legacy {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.95fr);
  }
}

@media (min-width: 48.125rem) and (max-width: 64rem) {
  .deliverables-tabs-toolbar {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 0;
    margin-bottom: 0;
  }

  .deliverables-tabs-toolbar::after {
    content: none;
  }

  .deliverables-tabs-nav {
    gap: 0.66rem;
    width: 100%;
    padding: 0 0.1rem var(--deliverables-tab-volume-clearance) var(--deliverables-first-tab-overlap);
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 0.1rem;
    scroll-padding-inline-end: calc(0.88rem + var(--deliverables-panel-radius));
    -webkit-mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 1) 0%,
      rgba(0, 0, 0, 1) calc(100% - 1.3rem),
      rgba(0, 0, 0, 0.84) calc(100% - 0.72rem),
      rgba(0, 0, 0, 0) 100%
    );
    mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 1) 0%,
      rgba(0, 0, 0, 1) calc(100% - 1.3rem),
      rgba(0, 0, 0, 0.84) calc(100% - 0.72rem),
      rgba(0, 0, 0, 0) 100%
    );
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }

  .deliverables-tabs-nav::after {
    content: "";
    flex: 0 0 calc(0.88rem + var(--deliverables-panel-radius));
  }

  .deliverables-tab-shell {
    --deliverables-tab-corner-radius: var(--deliverables-tab-radius) var(--deliverables-tab-radius)
      0 0;
    width: auto;
    min-width: max-content;
    scroll-snap-align: start;
  }

  .deliverables-tab-shell:first-child {
    --deliverables-tab-corner-radius: var(--deliverables-panel-radius)
      var(--deliverables-tab-radius) 0 0;
  }

  .deliverables-tabs-trigger {
    --deliverables-tab-padding-bottom: 0.76rem;
    min-height: 3.08rem;
    padding: 0.74rem 0.74rem 0.72rem;
    font-size: 0.91rem;
    white-space: nowrap;
  }

  .deliverables-tabs-block {
    --deliverables-panel-radius: 1.2rem;
    --deliverables-tab-radius: 0.96rem;
    --deliverables-tab-depth-x: 0.32rem;
    --deliverables-tab-volume-clearance: 0px;
    --deliverables-tab-visible-width: auto;
    --deliverables-tab-depth-y: 0.55rem;
    --deliverables-seam-overlap: 1px;
  }

  .deliverables-tabs-trigger.is-active {
    border-bottom: none;
    padding-bottom: calc(var(--deliverables-tab-padding-bottom) + 1px);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }

  .deliverables-tabs-trigger.is-active::after {
    content: "";
    position: absolute;
    left: -1px;
    right: -1px;
    bottom: calc(-1 * (var(--deliverables-seam-overlap) + 1px));
    height: calc(var(--deliverables-seam-overlap) + 2px);
    background:
      linear-gradient(#9fd01c 0 0) left / 1px 100% no-repeat,
      linear-gradient(#9fd01c 0 0) right / 1px 100% no-repeat,
      #ffffff;
    pointer-events: none;
    z-index: 1;
  }

  .deliverables-tabs-controls {
    display: none;
  }

  .deliverables-tabs-shell .grounded-volume-shell__layer,
  .deliverables-tabs-shell:first-child .grounded-volume-shell__layer,
  .deliverables-tabs-shell .grounded-volume-shell__layer--6,
  .deliverables-tabs-shell:first-child .grounded-volume-shell__layer--6 {
    border-radius: 0 0 var(--deliverables-panel-radius) var(--deliverables-panel-radius);
  }

  .deliverables-tabs-surface {
    min-height: auto;
    border-radius: 0 0 var(--deliverables-panel-radius) var(--deliverables-panel-radius);
  }

  .deliverables-pnl-header {
    gap: 0.95rem;
    max-width: none;
    padding-top: 0.95rem;
    margin-bottom: 1.12rem;
  }

  .deliverables-pnl-main-title {
    max-width: min(100%, 14.5ch);
    font-size: clamp(1.72rem, 3.25vw, 2.04rem);
    line-height: 1.03;
    text-wrap: balance;
  }

  .deliverables-panel-intro--reworked {
    max-width: min(100%, 44ch);
    font-size: clamp(1rem, 1.28vw, 1.08rem);
    line-height: 1.5;
  }

  .deliverables-pnl-content {
    gap: 1.16rem;
    justify-items: center;
  }

  .deliverables-pnl-showcase {
    --deliverables-pnl-mockup-height: clamp(12.85rem, 31vw, 16rem);
    width: min(100%, 29.75rem);
    min-width: 0;
    box-sizing: border-box;
    grid-template-columns: minmax(0, 1fr);
    justify-items: stretch;
    row-gap: 0.9rem;
    padding: 0.94rem 0.9rem 0.98rem;
    border-radius: 1.02rem;
    justify-self: center;
  }

  .deliverables-pnl-side {
    display: grid;
    gap: 0.66rem;
    width: 100%;
    min-width: 0;
    justify-items: center;
  }

  .deliverables-pnl-side--report,
  .deliverables-pnl-side--analysis {
    justify-items: stretch;
  }

  .deliverables-pnl-side--report .deliverables-pnl-side-title,
  .deliverables-pnl-side--analysis .deliverables-pnl-side-title,
  .deliverables-pnl-mockup--report,
  .deliverables-pnl-arrow--reworked,
  .deliverables-pnl-mockup--analysis {
    grid-column: auto;
    grid-row: auto;
  }

  .deliverables-pnl-side-title {
    width: fit-content;
    max-width: min(100%, 14rem);
    margin: 0 auto;
    justify-self: center;
    font-size: 1rem;
    padding: 0.35rem 0.82rem 0.4rem;
    line-height: 1.1;
    text-align: center;
  }

  .deliverables-pnl-arrow--reworked {
    width: 1.45rem;
    height: 1.45rem;
    justify-self: center;
    align-self: center;
    transform: rotate(90deg);
    margin-block: 0.08rem;
  }

  .deliverables-pnl-mockup,
  .deliverables-pnl-mockup--report,
  .deliverables-pnl-mockup--analysis {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    place-items: center;
    justify-self: center;
  }

  .deliverables-pnl-mockup {
    max-width: 25.75rem;
  }

  .deliverables-pnl-mockup-image {
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: var(--deliverables-pnl-mockup-height);
    object-fit: contain;
    object-position: top center;
  }

  .deliverables-pnl-aside {
    width: 100%;
    gap: 0.8rem;
    margin-top: 0.16rem;
    justify-self: stretch;
  }

  .deliverables-pnl-points {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.78rem;
  }

  .deliverables-pnl-points--duo {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .deliverables-pnl-point,
  .deliverables-pnl-points--duo .deliverables-pnl-point {
    min-height: 0;
  }

  #deliverables-panel-plan .deliverables-pnl-showcase {
    --deliverables-pnl-mockup-height: clamp(10.9rem, 27vw, 13.2rem);
  }
}

@media (max-width: 47.999rem) {
  .deliverables-tabs-toolbar {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 0;
    margin-bottom: 0;
  }

  .deliverables-tabs-toolbar::after {
    content: none;
  }

  .deliverables-tabs-nav {
    gap: 0.66rem;
    width: 100%;
    padding: 0 0.1rem var(--deliverables-tab-volume-clearance) var(--deliverables-first-tab-overlap);
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 0.1rem;
    scroll-padding-inline-end: calc(0.88rem + var(--deliverables-panel-radius));
    -webkit-mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 1) 0%,
      rgba(0, 0, 0, 1) calc(100% - 1.3rem),
      rgba(0, 0, 0, 0.84) calc(100% - 0.72rem),
      rgba(0, 0, 0, 0) 100%
    );
    mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 1) 0%,
      rgba(0, 0, 0, 1) calc(100% - 1.3rem),
      rgba(0, 0, 0, 0.84) calc(100% - 0.72rem),
      rgba(0, 0, 0, 0) 100%
    );
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }

  .deliverables-tabs-nav::after {
    content: "";
    flex: 0 0 calc(0.88rem + var(--deliverables-panel-radius));
  }

  .deliverables-tab-shell {
    --deliverables-tab-corner-radius: var(--deliverables-tab-radius) var(--deliverables-tab-radius)
      0 0;
    width: auto;
    min-width: max-content;
    scroll-snap-align: start;
  }

  .deliverables-tab-shell:first-child {
    --deliverables-tab-corner-radius: var(--deliverables-panel-radius)
      var(--deliverables-tab-radius) 0 0;
  }

  .deliverables-tabs-trigger {
    --deliverables-tab-padding-bottom: 0.76rem;
    min-height: 3.08rem;
    padding: 0.74rem 0.74rem 0.72rem;
    font-size: 0.91rem;
    white-space: nowrap;
  }

  .deliverables-tabs-block {
    --deliverables-panel-radius: 1.2rem;
    --deliverables-tab-radius: 0.96rem;
    --deliverables-tab-depth-x: 0.32rem;
    --deliverables-tab-volume-clearance: 0px;
    --deliverables-tab-visible-width: auto;
    --deliverables-tab-depth-y: 0.55rem;
    --deliverables-seam-overlap: 1px;
  }

  .deliverables-tabs-trigger.is-active {
    border-bottom: none;
    padding-bottom: calc(var(--deliverables-tab-padding-bottom) + 1px);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }

  .deliverables-tabs-trigger.is-active::after {
    content: "";
    position: absolute;
    left: -1px;
    right: -1px;
    bottom: calc(-1 * (var(--deliverables-seam-overlap) + 1px));
    height: calc(var(--deliverables-seam-overlap) + 2px);
    background:
      linear-gradient(#9fd01c 0 0) left / 1px 100% no-repeat,
      linear-gradient(#9fd01c 0 0) right / 1px 100% no-repeat,
      #ffffff;
    pointer-events: none;
    z-index: 1;
  }

  .deliverables-tabs-controls {
    display: none;
  }

  .deliverables-tabs-nav-button-shell {
    --grounded-volume-radius: 0.72rem;
  }

  .deliverables-tabs-nav-button {
    width: 2.22rem;
    height: 2.22rem;
  }

  .deliverables-tabs-nav-icon {
    width: 0.92rem;
    height: 0.92rem;
    stroke-width: 2.15;
  }

  .deliverables-tabs-shell .grounded-volume-shell__layer,
  .deliverables-tabs-shell:first-child .grounded-volume-shell__layer,
  .deliverables-tabs-shell .grounded-volume-shell__layer--6,
  .deliverables-tabs-shell:first-child .grounded-volume-shell__layer--6 {
    border-radius: 0 0 var(--deliverables-panel-radius) var(--deliverables-panel-radius);
  }

  .deliverables-tabs-surface {
    min-height: auto;
    border-radius: 0 0 var(--deliverables-panel-radius) var(--deliverables-panel-radius);
  }

  .deliverables-panel-intro {
    font-size: 0.98rem;
    line-height: 1.54;
  }

  .deliverables-pnl-arrow {
    justify-self: center;
    width: 2.9rem;
    height: 2.9rem;
    transform: rotate(90deg);
    font-size: 1.6rem;
  }

  .deliverables-pnl-caption {
    font-size: 0.88rem;
    line-height: 1.38;
  }

  .deliverables-pnl-benefits {
    gap: 0.9rem;
    padding-top: 0.1rem;
  }

  .deliverables-pnl-benefit {
    font-size: 0.95rem;
    line-height: 1.5;
  }
}

@media (max-width: 389px) {
  .deliverables-tabs-mobile-sticky__inner {
    --deliverables-mobile-sticky-volume-clearance: 0.8rem;
    width: min(100%, 21.8rem);
    padding: 0 0.38rem 0;
  }

  .deliverables-tabs-mobile-sticky__nav {
    gap: 0.44rem;
  }

  .deliverables-tabs-mobile-sticky__button {
    --deliverables-tab-font-size: 0.95rem;
    --deliverables-tab-min-height: 2.16rem;
    --deliverables-tab-padding-top: 0.34rem;
    --deliverables-tab-padding-bottom: 0.38rem;
    min-height: var(--deliverables-tab-min-height);
    padding: var(--deliverables-tab-padding-top) 0.72rem var(--deliverables-tab-padding-bottom);
    font-size: var(--deliverables-tab-font-size);
  }

  .deliverables-tabs-section {
    padding-top: 4.05rem;
    padding-bottom: 4.55rem;
  }

  .deliverables-tabs-head {
    max-width: 54rem;
    margin-bottom: 0.44rem;
  }

  .deliverables-tabs-head .section-title {
    max-width: 14.1ch;
    font-size: clamp(1.72rem, 8.1vw, 1.88rem);
    line-height: 1.02;
  }

  .deliverables-tabs-toolbar {
    margin-bottom: 0;
  }

  .deliverables-tabs-toolbar::after {
    content: none;
  }

  .deliverables-tabs-nav {
    gap: 0.56rem;
    scroll-padding-inline-end: calc(0.74rem + var(--deliverables-panel-radius));
    -webkit-mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 1) 0%,
      rgba(0, 0, 0, 1) calc(100% - 1.08rem),
      rgba(0, 0, 0, 0.82) calc(100% - 0.6rem),
      rgba(0, 0, 0, 0) 100%
    );
    mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 1) 0%,
      rgba(0, 0, 0, 1) calc(100% - 1.08rem),
      rgba(0, 0, 0, 0.82) calc(100% - 0.6rem),
      rgba(0, 0, 0, 0) 100%
    );
  }

  .deliverables-tabs-nav::after {
    flex-basis: calc(0.74rem + var(--deliverables-panel-radius));
  }

  .deliverables-tabs-trigger {
    min-height: 2.96rem;
    padding: 0.68rem 0.66rem 0.66rem;
    font-size: 0.86rem;
  }

  .deliverables-tabs-controls {
    gap: 0.36rem;
  }

  .deliverables-tabs-nav-button {
    width: 2.08rem;
    height: 2.08rem;
  }

  .deliverables-tabs-nav-icon {
    width: 0.86rem;
    height: 0.86rem;
  }

  .deliverables-tabs-surface {
    gap: 1.16rem;
    padding: 1.06rem 0.9rem 1.24rem;
  }

  .deliverables-pnl-main-title {
    max-width: min(100%, 15.9ch);
    font-size: 1.26rem;
    line-height: 1.04;
    text-wrap: balance;
  }

  .deliverables-panel-intro--reworked {
    max-width: min(100%, 32ch);
    font-size: 0.92rem;
    line-height: 1.54;
  }

  .deliverables-pnl-showcase {
    --deliverables-pnl-mockup-height: clamp(11.6rem, 62vw, 14rem);
    width: min(100%, 21.3rem);
    row-gap: 0.78rem;
    padding: 0.8rem 0.78rem 0.84rem;
  }

  .deliverables-pnl-side-title {
    max-width: 13.2rem;
    font-size: 0.92rem;
    padding: 0.31rem 0.68rem 0.36rem;
  }

  .deliverables-pnl-arrow--reworked {
    width: 1.27rem;
    height: 1.27rem;
  }

  .deliverables-pnl-point {
    font-size: 0.88rem;
    line-height: 1.46;
    padding: 0.82rem 0.84rem 0.88rem;
  }

  .deliverables-pnl-caption {
    font-size: 0.84rem;
  }

  .deliverables-pnl-benefit {
    font-size: 0.92rem;
  }
}

/* =========================================
   GLOBAL DESIGN SYSTEM (TYPOGRAPHY)
   ========================================= */
.section-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1.25rem;
  margin-bottom: 4rem;
  max-width: 48rem;
  margin-left: auto;
  margin-right: auto;
}

.section-head--left {
  align-items: flex-start;
  text-align: left;
  margin-left: 0;
  max-width: 52rem;
}

.section-kicker {
  display: inline-block;
  color: rgba(17, 17, 17, 0.54);
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  margin-bottom: 0.25rem;
}

.section-kicker--coral {
  color: #ff5a36;
}

.section-title {
  margin: 0;
  color: #111111;
  font-size: clamp(2.5rem, 5vw, 4rem);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.03em;
}

/* Цветовые акценты (подсветки) внутри заголовка */
.section-title-highlight {
  position: relative;
  display: inline-block;
  padding: 0 0.5rem;
  margin-top: 0.5rem;
}

.section-title-highlight__bg {
  position: absolute;
  inset: 0;
  border-radius: 0.5rem;
  z-index: 0;
}

.section-title-highlight__bg--lime {
  background-color: rgba(201, 255, 59, 0.7);
  transform: rotate(-2deg);
}

.section-title-highlight__bg--coral {
  background-color: rgba(255, 108, 76, 0.7);
  transform: rotate(2deg);
}

.section-title-highlight__text {
  position: relative;
  z-index: 1;
  color: #111111;
}

.section-lead {
  margin: 0;
  color: rgba(17, 17, 17, 0.7);
  font-size: 1.125rem;
  line-height: 1.6;
}

.section-lead-highlight {
  display: inline;
  padding: 0 0.28em 0.04em;
  border-radius: 0.35rem;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  color: #111111;
}

.section-lead-highlight--lime {
  background-color: rgba(201, 255, 59, 0.7);
}

.section-lead-highlight--coral {
  background-color: rgba(255, 108, 76, 0.7);
}

@media (min-width: 768px) {
  .section-lead {
    font-size: 1.25rem;
  }
}

.service-hero-section {
  padding-top: clamp(6.75rem, 11vw, 8.75rem);
  padding-bottom: clamp(4.5rem, 7vw, 7rem);
}

.service-hero-container {
  padding-inline: clamp(1rem, 4vw, 3rem);
}

.service-hero-mobile {
  display: none;
}

.service-hero-desktop {
  display: block;
}

.service-hero-mobile-shell {
  width: min(100%, 22.5rem);
  margin-inline: auto;
}

.service-hero-mobile-lead,
.service-hero-mobile-note {
  margin: 0;
}

.service-hero-mobile-actions {
  display: grid;
}

.service-hero-mobile-visual {
  width: 100%;
}

.service-hero-grid {
  display: grid;
  align-items: center;
  gap: clamp(2.5rem, 6vw, 5rem);
}

.service-hero-copy {
  position: relative;
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  width: 100%;
  max-width: 48rem;
}

.service-hero-eyebrow {
  margin-bottom: clamp(1rem, 1.8vw, 1.35rem);
}

.service-hero-eyebrow-legacy {
  max-width: 100%;
}

.service-hero-eyebrow-chip {
  max-width: 100%;
}

.service-hero-eyebrow-label {
  min-width: 0;
}

.service-hero-eyebrow-shell {
  --grounded-volume-radius: 1rem;
  display: inline-block;
  max-width: min(100%, 32rem);
  padding-right: 6px;
  padding-bottom: 6px;
  transform: rotate(-1deg);
}

.service-hero-eyebrow-surface {
  position: relative;
  z-index: 20;
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  max-width: 100%;
  padding: 0.85rem 1rem;
  border: 1px solid #9fd01c;
  border-radius: 1rem;
  background: #beed45;
  color: #171717;
  font-size: clamp(0.72rem, 1.7vw, 0.875rem);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-wrap: balance;
}

.service-hero-eyebrow-dot {
  flex: 0 0 auto;
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 999px;
  background: #171717;
}

.service-hero-eyebrow-text {
  min-width: 0;
}

.service-hero-title {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  max-width: none;
  font-size: clamp(2.3rem, 7.6vw, 4.6rem);
  margin-bottom: clamp(1.25rem, 2vw, 2.5rem);
  line-height: 1.02;
}

.service-hero-title-line {
  display: block;
  white-space: nowrap;
}

.service-hero-title .section-title-highlight {
  padding: 0 0.35rem;
  margin-top: 0;
}

.service-hero-title .section-title-highlight__bg {
  border-radius: 0.6rem;
}

.service-hero-lead {
  margin-bottom: clamp(1rem, 1.8vw, 1.5rem);
  width: 100%;
  max-width: 38rem;
  font-size: clamp(1rem, 2.2vw, 1.28rem);
  line-height: 1.65;
  text-wrap: pretty;
}

.service-hero-note {
  margin: 0 0 clamp(1.75rem, 3vw, 2.75rem);
  width: 100%;
  max-width: 30rem;
  color: rgba(23, 23, 23, 0.72);
  font-size: clamp(0.98rem, 1.6vw, 1.125rem);
  line-height: 1.55;
}

.service-hero-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
  width: 100%;
  max-width: none;
}

.service-hero-cta {
  position: relative;
}

.service-hero-cta--primary {
  width: 280px;
  max-width: 100%;
}

.service-hero-cta--secondary {
  width: 240px;
  max-width: 100%;
}

.service-hero-cta > div,
.service-hero-cta > a,
.service-hero-cta > button {
  width: calc(100% - 9px);
  height: calc(100% - 8.5px);
}

.service-hero-action-shell {
  --grounded-volume-radius: 1rem;
  width: 100%;
  padding-right: 6px;
  padding-bottom: 6px;
}

.service-hero-action-shell--secondary {
  --grounded-volume-fill: linear-gradient(
    to left bottom,
    rgb(208, 200, 184) 0px,
    rgb(184, 176, 160) 20px,
    rgb(184, 176, 160) calc(50% - 30px),
    rgb(133, 125, 110) 50%,
    rgb(159, 151, 136) calc(50% + 30px),
    rgb(159, 151, 136) calc(100% - 20px),
    rgb(208, 200, 184) 100%
  );
}

.service-hero-action {
  position: relative;
  z-index: 20;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  width: 100%;
  min-height: 4rem;
  padding: 0.95rem 1.2rem;
  border: 1px solid var(--service-hero-action-border, transparent);
  border-radius: 1rem;
  background: var(--service-hero-action-bg, #ffffff);
  color: var(--service-hero-action-color, #171717);
  font-size: clamp(1rem, 1.45vw, 1.1rem);
  font-weight: 800;
  line-height: 1.15;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition:
    transform 200ms ease,
    background-color 200ms ease,
    color 200ms ease,
    border-color 200ms ease;
}

.service-hero-action:focus-visible {
  outline: 2px solid #171717;
  outline-offset: 4px;
}

.service-hero-action-shell:hover .service-hero-action,
.service-hero-action-shell:focus-within .service-hero-action {
  transform: translate(4px, 4px);
}

.service-hero-action--primary {
  --service-hero-action-bg: #beed45;
  --service-hero-action-border: #9fd01c;
  --service-hero-action-color: #171717;
}

.service-hero-action--secondary {
  --service-hero-action-bg: #fffaf2;
  --service-hero-action-border: #b8b0a0;
  --service-hero-action-color: #171717;
}

.service-hero-action-icon {
  flex: 0 0 auto;
  width: 1.2rem;
  height: 1.2rem;
  transition: transform 200ms ease;
}

.service-hero-action-shell:hover .service-hero-action-icon,
.service-hero-action-shell:focus-within .service-hero-action-icon {
  transform: translateX(0.2rem);
}

.service-hero-visual-column {
  min-width: 0;
  width: 100%;
}

.service-hero-visual-stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(1rem, 1.8vw, 1.4rem);
  width: 100%;
  max-width: 42rem;
  margin-inline: auto;
}

.service-hero-visual-shell {
  --grounded-volume-radius: 1.25rem;
  width: 100%;
}

.service-hero-visual-frame {
  position: relative;
  z-index: 20;
  overflow: hidden;
  border: 1px solid rgba(23, 23, 23, 0.12);
  border-radius: 1.25rem;
  background: #ffffff;
  padding: clamp(0.5rem, 1vw, 0.7rem);
}

.service-hero-visual-image {
  display: block;
  width: 100%;
  height: auto;
}

.service-hero-visual-caption {
  width: 100%;
  max-width: 34rem;
  margin: 0;
  color: rgba(23, 23, 23, 0.74);
  font-size: clamp(0.98rem, 1.5vw, 1.08rem);
  line-height: 1.6;
  text-align: center;
  text-wrap: pretty;
}

@media (min-width: 640px) {
  .service-hero-actions {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1.5rem;
    width: auto;
    max-width: none;
  }

  .service-hero-eyebrow-surface {
    padding: 0.9rem 1.15rem;
  }
}

@media (min-width: 768px) {
  .service-hero-section {
    padding-top: clamp(7.25rem, 10vw, 9rem);
    padding-bottom: clamp(5rem, 7vw, 7.5rem);
  }

  .service-hero-grid {
    gap: clamp(3rem, 6vw, 5.25rem);
  }

  .service-hero-title {
    font-size: clamp(3rem, 6vw, 4.6rem);
  }

  .service-hero-visual-caption {
    max-width: 32rem;
    text-align: left;
  }
}

@media (min-width: 960px) and (max-width: 1199px) {
  .service-hero-grid {
    grid-template-columns: minmax(0, 1.02fr) minmax(0, 0.98fr);
    gap: clamp(2rem, 3.8vw, 3.25rem);
  }

  .service-hero-copy {
    max-width: 35rem;
  }

  .service-hero-title {
    font-size: clamp(2.9rem, 4.7vw, 3.85rem);
  }

  .service-hero-lead {
    max-width: 31rem;
  }

  .service-hero-actions {
    max-width: none;
  }

  .service-hero-visual-column {
    display: flex;
    justify-content: flex-end;
  }

  .service-hero-visual-stack {
    max-width: 29rem;
    margin-inline: 0;
  }

  .service-hero-visual-caption {
    max-width: 27rem;
    font-size: 1rem;
    text-align: left;
  }
}

@media (min-width: 1200px) {
  .service-hero-grid {
    grid-template-columns: minmax(0, 1.04fr) minmax(0, 0.96fr);
    gap: clamp(2.5rem, 4.2vw, 4.75rem);
  }

  .service-hero-copy {
    max-width: 43rem;
  }

  .service-hero-actions {
    width: auto;
    max-width: none;
  }

  .service-hero-visual-column {
    display: flex;
    justify-content: flex-end;
  }

  .service-hero-visual-stack {
    max-width: 39rem;
    margin-inline: 0;
  }
}

@media (min-width: 1200px) and (max-width: 1439px) {
  .service-hero-grid {
    grid-template-columns: minmax(0, 1.16fr) minmax(0, 0.84fr);
    gap: clamp(2.1rem, 3.5vw, 3.75rem);
  }

  .service-hero-copy {
    max-width: 45.5rem;
  }

  .service-hero-title {
    font-size: clamp(3.1rem, 4.2vw, 4.15rem);
  }

  .service-hero-visual-stack {
    max-width: 35rem;
  }

  .service-hero-visual-caption {
    max-width: 29rem;
  }
}

@media (min-width: 960px) and (max-width: 1280px) {
  .service-hero-container {
    max-width: clamp(56rem, 94vw, 72rem);
    padding-inline: clamp(1rem, 1.6vw, 1.5rem);
  }

  .service-hero-grid {
    align-items: start;
    grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr);
    gap: clamp(1.4rem, 2.3vw, 2.3rem);
  }

  .service-hero-copy {
    max-width: 29rem;
    padding-top: clamp(0.2rem, 0.7vw, 0.5rem);
  }

  .service-hero-title {
    max-width: 28rem;
    font-size: clamp(2.65rem, 3.55vw, 3.35rem);
    line-height: 0.98;
    margin-bottom: clamp(0.9rem, 1.15vw, 1.25rem);
  }

  .service-hero-lead {
    max-width: 27rem;
    font-size: clamp(1rem, 1.16vw, 1.12rem);
    line-height: 1.52;
    margin-bottom: clamp(0.8rem, 1vw, 1rem);
  }

  .service-hero-note {
    max-width: 21rem;
    font-size: clamp(0.98rem, 1vw, 1.06rem);
    line-height: 1.45;
    margin-bottom: clamp(1rem, 1.35vw, 1.2rem);
  }

  .service-hero-actions {
    gap: 0.82rem;
    width: 100%;
    max-width: 17.5rem;
  }

  .service-hero-visual-column {
    align-items: flex-start;
    justify-content: flex-end;
    padding-top: clamp(1.75rem, 3vw, 2.7rem);
  }

  .service-hero-visual-stack {
    width: 100%;
    max-width: 34rem;
    gap: clamp(0.8rem, 1vw, 1rem);
    margin-inline: 0;
  }

  .service-hero-visual-caption {
    max-width: 31rem;
    margin: 0;
    font-size: clamp(0.95rem, 0.98vw, 1rem);
    line-height: 1.5;
  }
}

@media (min-width: 1440px) {
  .service-hero-grid {
    grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.88fr);
    gap: clamp(1.25rem, 1.4vw, 2rem);
  }

  .service-hero-copy {
    max-width: 46rem;
  }

  .service-hero-visual-stack {
    max-width: 46rem;
  }
}

@media (min-width: 1151px) and (max-width: 1539px) {
  .service-hero-section {
    padding-top: clamp(6rem, 6.6vw, 7rem);
    padding-bottom: clamp(4rem, 4.8vw, 4.9rem);
  }

  .service-hero-actions {
    width: max-content;
    max-width: 100%;
    flex-wrap: nowrap;
    gap: 1rem;
  }
}

@media (min-width: 1151px) and (max-width: 1279px) {
  .service-hero-container {
    max-width: min(74rem, calc(100vw - 2.5rem));
    padding-inline: clamp(1rem, 1.4vw, 1.25rem);
  }

  .service-hero-grid {
    align-items: start;
    grid-template-columns: minmax(0, 1.02fr) minmax(0, 0.98fr);
    gap: clamp(1.25rem, 1.7vw, 1.8rem);
  }

  .service-hero-copy {
    max-width: 33rem;
    padding-top: 0.25rem;
  }

  .service-hero-title {
    max-width: 31rem;
    font-size: clamp(3rem, 4vw, 3.35rem);
    line-height: 0.98;
    margin-bottom: 1rem;
  }

  .service-hero-lead {
    max-width: 28.5rem;
    font-size: clamp(1.03rem, 1.18vw, 1.12rem);
    line-height: 1.55;
    margin-bottom: 0.95rem;
  }

  .service-hero-note {
    max-width: 23rem;
    font-size: 1rem;
    line-height: 1.48;
    margin-bottom: 1rem;
  }

  .service-hero-visual-column {
    align-items: flex-start;
    justify-content: flex-end;
    padding-top: clamp(0.75rem, 1.7vw, 1.2rem);
  }

  .service-hero-visual-stack {
    max-width: 35rem;
    gap: 0.85rem;
  }

  .service-hero-visual-caption {
    max-width: 28rem;
    margin: 0;
    font-size: 0.96rem;
    line-height: 1.48;
  }
}

@media (min-width: 1280px) and (max-width: 1439px) {
  .service-hero-grid {
    align-items: start;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
    gap: clamp(1.5rem, 1.9vw, 2.1rem);
  }

  .service-hero-copy {
    max-width: 34rem;
    padding-top: 0.15rem;
  }

  .service-hero-title {
    max-width: 33rem;
    font-size: clamp(3.15rem, 3.65vw, 3.7rem);
    line-height: 0.99;
    margin-bottom: 1rem;
  }

  .service-hero-lead {
    max-width: 30.5rem;
    font-size: clamp(1.05rem, 1.1vw, 1.14rem);
    line-height: 1.56;
    margin-bottom: 0.95rem;
  }

  .service-hero-note {
    max-width: 23rem;
    line-height: 1.48;
    margin-bottom: 1rem;
  }

  .service-hero-visual-column {
    align-items: flex-start;
    justify-content: flex-end;
    padding-top: 0.8rem;
  }

  .service-hero-visual-stack {
    max-width: 36rem;
    gap: 0.9rem;
  }

  .service-hero-visual-caption {
    max-width: 30rem;
    margin: 0;
    font-size: 0.97rem;
    line-height: 1.5;
  }
}

@media (min-width: 1440px) and (max-width: 1539px) {
  .service-hero-grid {
    align-items: start;
    grid-template-columns: minmax(0, 1.02fr) minmax(0, 0.98fr);
    gap: clamp(1.4rem, 1.6vw, 1.8rem);
  }

  .service-hero-copy {
    max-width: 36rem;
    padding-top: 0.2rem;
  }

  .service-hero-title {
    max-width: 34rem;
    font-size: clamp(3.35rem, 3.45vw, 3.8rem);
    line-height: 0.99;
    margin-bottom: 1rem;
  }

  .service-hero-lead {
    max-width: 31rem;
    font-size: 1.1rem;
    line-height: 1.58;
    margin-bottom: 1rem;
  }

  .service-hero-note {
    max-width: 23.5rem;
    font-size: 1.02rem;
    line-height: 1.48;
    margin-bottom: 1rem;
  }

  .service-hero-visual-column {
    align-items: flex-start;
    justify-content: flex-end;
    padding-top: 0.75rem;
  }

  .service-hero-visual-stack {
    max-width: 38rem;
    gap: 0.95rem;
  }

  .service-hero-visual-caption {
    max-width: 31rem;
    margin: 0;
    font-size: 1rem;
    line-height: 1.5;
  }
}

@media (max-width: 767px) {
  .page-financial-service main {
    width: 100vw;
    max-width: 100vw;
    margin-inline: calc(50% - 50vw);
    padding-top: calc(3.85rem + env(safe-area-inset-top));
    padding-bottom: calc(7.15rem + env(safe-area-inset-bottom));
    overflow-x: hidden;
  }

  .service-hero-section {
    position: relative;
    width: 100vw;
    margin-inline: calc(50% - 50vw);
    padding-top: 1.05rem;
    padding-bottom: 3.9rem;
    overflow: hidden;
  }

  .service-hero-section::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 28rem;
    background:
      radial-gradient(circle at 0% 10%, rgba(190, 237, 69, 0.24) 0, rgba(190, 237, 69, 0) 46%),
      radial-gradient(circle at 100% 22%, rgba(255, 123, 91, 0.18) 0, rgba(255, 123, 91, 0) 38%),
      linear-gradient(180deg, rgba(255, 255, 255, 0.26) 0%, rgba(255, 255, 255, 0) 100%);
    pointer-events: none;
  }

  .service-hero-container {
    padding-left: max(1rem, env(safe-area-inset-left));
    padding-right: max(1rem, env(safe-area-inset-right));
  }

  .service-hero-mobile {
    display: block;
    width: 100%;
    box-sizing: border-box;
    margin-inline: auto;
  }

  .service-hero-desktop {
    display: none;
  }

  .service-hero-mobile-shell {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 1.64rem;
    width: min(100%, 22.9rem);
    margin-inline: auto;
  }

  .service-hero-mobile-copy {
    display: grid;
    order: 1;
    gap: 0;
    width: 100%;
  }

  .service-hero-mobile-conversion {
    display: grid;
    order: 3;
    gap: 0.9rem;
    width: 100%;
  }

  .service-hero-mobile-media {
    display: grid;
    order: 2;
    gap: 0.8rem;
    width: 100%;
    padding-top: 0.14rem;
  }

  .service-hero-mobile-eyebrow {
    width: 100%;
    margin-bottom: 1.65rem;
  }

  .service-hero-mobile .service-hero-eyebrow {
    margin: 0;
    width: 100%;
  }

  .service-hero-mobile-copy > .service-hero-title,
  .service-hero-mobile-copy > .service-hero-mobile-lead,
  .service-hero-mobile-conversion > .service-hero-mobile-note,
  .service-hero-mobile-conversion > .service-hero-mobile-actions,
  .service-hero-mobile-media > .service-hero-mobile-visual {
    margin: 0;
  }

  .service-hero-mobile .service-hero-eyebrow-legacy {
    display: inline-flex;
    max-width: 100%;
  }

  .service-hero-mobile .service-hero-eyebrow-chip {
    width: auto;
    max-width: 100%;
    align-items: flex-start;
    gap: 0.44rem 0.58rem;
    padding: 0.62rem 0.96rem;
    font-size: 0.64rem;
    letter-spacing: 0.05em;
    line-height: 1.12;
  }

  .service-hero-mobile .service-hero-eyebrow-chip > span:first-child {
    width: 0.46rem;
    height: 0.46rem;
    margin-top: 0.06rem;
  }

  .service-hero-mobile .service-hero-eyebrow-label {
    flex: 1 1 14rem;
    white-space: normal;
    text-wrap: balance;
  }

  .service-hero-mobile .service-hero-title {
    width: 100%;
    max-width: none;
    margin: 0 0 1.38rem;
    font-size: 2.24rem;
    line-height: 1.1;
    letter-spacing: -0.042em;
    text-wrap: balance;
  }

  .service-hero-mobile .service-hero-title-line {
    white-space: nowrap;
  }

  .service-hero-mobile .service-hero-title .section-title-highlight {
    padding: 0 0.08rem;
  }

  .service-hero-mobile .service-hero-title .section-title-highlight__bg {
    border-radius: 0.55rem;
  }

  .service-hero-mobile .service-hero-mobile-lead {
    max-width: 21.55rem;
    margin: 0;
    font-size: 1rem;
    line-height: 1.56;
    color: rgba(23, 23, 23, 0.9);
    text-wrap: pretty;
  }

  .service-hero-mobile .service-hero-mobile-visual {
    width: 100%;
  }

  .service-hero-mobile .service-hero-visual-stack {
    align-items: stretch;
    width: 100%;
    max-width: none;
    margin-inline: 0;
    gap: 0.7rem;
  }

  .service-hero-mobile .service-hero-visual-shell {
    --grounded-volume-radius: 1.05rem;
    width: 100%;
  }

  .service-hero-mobile .service-hero-visual-frame {
    border-radius: 1.05rem;
    padding: 0.44rem;
  }

  .service-hero-mobile .service-hero-visual-caption {
    width: 100%;
    max-width: none;
    box-sizing: border-box;
    padding-inline: 1rem 0.18rem;
    font-size: 0.84rem;
    line-height: 1.46;
    text-align: left;
    color: rgba(23, 23, 23, 0.68);
  }

  .service-hero-mobile .service-hero-mobile-note {
    max-width: 20.8rem;
    margin: 0;
    font-size: 0.95rem;
    font-weight: 500;
    line-height: 1.42;
    color: rgba(23, 23, 23, 0.82);
  }

  .service-hero-mobile .service-hero-mobile-actions {
    display: grid;
    justify-items: center;
    gap: 0.82rem;
    width: 100%;
    max-width: none;
  }

  .service-hero-mobile .service-hero-mobile-actions .service-hero-cta {
    width: min(100%, 22.9rem);
    max-width: none;
    margin-inline: auto;
  }

  .service-hero-mobile .service-hero-mobile-actions .service-hero-cta--primary {
    display: none;
  }

  .service-hero-mobile .service-hero-mobile-actions .service-hero-cta--secondary {
    width: min(100%, 22.9rem);
    height: 3.9rem;
    max-width: none;
    margin-inline: auto;
  }

  .service-hero-mobile .service-hero-mobile-actions .service-hero-cta--secondary span {
    font-size: 1rem;
  }

  .service-hero-mobile .service-hero-mobile-actions .service-hero-cta > div,
  .service-hero-mobile .service-hero-mobile-actions .service-hero-cta > a,
  .service-hero-mobile .service-hero-mobile-actions .service-hero-cta > button {
    width: calc(100% - 9px);
    height: calc(100% - 8.5px);
  }

  .service-hero-mobile-sticky-cta {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 39;
    display: block;
    padding: 0.82rem max(0.88rem, env(safe-area-inset-right))
      calc(0.5rem + env(safe-area-inset-bottom)) max(0.88rem, env(safe-area-inset-left));
    transition:
      opacity 180ms ease,
      transform 180ms ease;
    pointer-events: none;
  }

  .service-hero-mobile-sticky-cta::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: calc(5.35rem + env(safe-area-inset-bottom));
    background:
      linear-gradient(
        180deg,
        rgba(244, 240, 232, 0) 0%,
        rgba(244, 240, 232, 0) 5%,
        rgba(238, 233, 223, 0.28) 18%,
        rgba(233, 226, 214, 0.58) 42%,
        rgba(215, 205, 191, 0.88) 74%,
        rgba(185, 175, 157, 0.98) 100%
      ),
      linear-gradient(
        180deg,
        rgba(23, 23, 23, 0) 0%,
        rgba(23, 23, 23, 0) 5%,
        rgba(23, 23, 23, 0.02) 24%,
        rgba(23, 23, 23, 0.058) 58%,
        rgba(23, 23, 23, 0.16) 100%
      );
    pointer-events: none;
  }

  .deliverables-tabs-mobile-sticky__button.is-active::after {
    content: none;
  }

  .deliverables-tabs-mobile-sticky__tab-shell,
  .deliverables-tabs-mobile-sticky__tab-shell:first-child {
    --deliverables-tab-corner-radius: 0 0 var(--deliverables-mobile-sticky-tab-radius-size)
      var(--deliverables-mobile-sticky-tab-radius-size);
    --grounded-volume-radius: var(--deliverables-tab-corner-radius);
  }

  .deliverables-tabs-mobile-sticky__button,
  .deliverables-tabs-mobile-sticky__button.is-active {
    min-height: var(--deliverables-tab-min-height);
    border-top: none;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--deliverables-mobile-sticky-tab-radius-size);
    border-bottom-right-radius: var(--deliverables-mobile-sticky-tab-radius-size);
    font-size: var(--deliverables-tab-font-size);
    padding-top: var(--deliverables-tab-padding-top);
    padding-bottom: var(--deliverables-tab-padding-bottom);
  }

  .deliverables-tabs-mobile-sticky__button::before,
  .deliverables-tabs-mobile-sticky__button.is-active::before {
    content: none;
  }

  .service-hero-mobile-sticky-cta__inner {
    position: relative;
    z-index: 1;
    width: min(100%, 22.9rem);
    margin-inline: auto;
    pointer-events: auto;
  }

  .service-hero-mobile-sticky-cta .service-hero-cta {
    width: 100%;
    max-width: none;
    height: 3.9rem;
    margin-inline: 0;
  }

  .service-hero-mobile-sticky-cta .service-hero-cta > div,
  .service-hero-mobile-sticky-cta .service-hero-cta > a,
  .service-hero-mobile-sticky-cta .service-hero-cta > button {
    width: calc(100% - 9px);
    height: calc(100% - 8.5px);
  }

  .service-hero-mobile-sticky-cta .service-hero-cta > a,
  .service-hero-mobile-sticky-cta .service-hero-cta > button {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }

  .service-hero-mobile-sticky-cta .service-hero-cta span {
    gap: 0.55rem;
    font-size: 1rem;
  }

  .service-hero-mobile-sticky-cta .service-hero-cta svg {
    width: 1.1rem;
    height: 1.1rem;
  }

  body.menu-open .service-hero-mobile-sticky-cta {
    opacity: 0;
    transform: translateY(1rem);
    pointer-events: none;
  }
}

@media (min-width: 48.125rem) and (max-width: 64rem) {
  .deliverables-tabs-mobile-sticky__button.is-active::after {
    content: none;
  }

  .deliverables-tabs-mobile-sticky__tab-shell,
  .deliverables-tabs-mobile-sticky__tab-shell:first-child {
    --deliverables-tab-corner-radius: 0 0 var(--deliverables-mobile-sticky-tab-radius-size)
      var(--deliverables-mobile-sticky-tab-radius-size);
    --grounded-volume-radius: var(--deliverables-tab-corner-radius);
  }

  .deliverables-tabs-mobile-sticky__button,
  .deliverables-tabs-mobile-sticky__button.is-active {
    min-height: var(--deliverables-tab-min-height);
    border-top: none;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--deliverables-mobile-sticky-tab-radius-size);
    border-bottom-right-radius: var(--deliverables-mobile-sticky-tab-radius-size);
    font-size: var(--deliverables-tab-font-size);
    padding-top: var(--deliverables-tab-padding-top);
    padding-bottom: var(--deliverables-tab-padding-bottom);
  }

  .deliverables-tabs-mobile-sticky__button::before,
  .deliverables-tabs-mobile-sticky__button.is-active::before {
    content: none;
  }
}

@media (max-width: 479px) {
  .service-hero-container {
    padding-left: max(0.88rem, env(safe-area-inset-left));
    padding-right: max(0.88rem, env(safe-area-inset-right));
  }

  .service-hero-section {
    padding-top: 0.92rem;
    padding-bottom: 3.4rem;
  }

  .service-hero-mobile-shell {
    gap: 1.56rem;
  }

  .service-hero-mobile-copy {
    gap: 0;
  }

  .service-hero-mobile .service-hero-title {
    margin-bottom: 1.42rem;
    font-size: 2.18rem;
  }

  .service-hero-mobile .service-hero-title .section-title-highlight {
    padding: 0 0.06rem;
  }

  .service-hero-mobile .service-hero-mobile-lead {
    max-width: 21.1rem;
    font-size: 0.98rem;
  }

  .service-hero-mobile .service-hero-mobile-note {
    max-width: none;
    font-size: 0.93rem;
  }

  .service-hero-mobile .service-hero-eyebrow-chip {
    padding: 0.58rem 0.84rem;
    font-size: 0.63rem;
    letter-spacing: 0.045em;
  }

  .service-hero-mobile .service-hero-visual-shell {
    --grounded-volume-radius: 1rem;
  }

  .service-hero-mobile .service-hero-visual-frame {
    border-radius: 1rem;
    padding: 0.42rem;
  }

  .service-hero-mobile .service-hero-visual-caption {
    padding-inline: 0.92rem 0.14rem;
    max-width: none;
    font-size: 0.82rem;
    line-height: 1.44;
  }

  .service-hero-mobile .service-hero-mobile-actions .service-hero-cta--secondary {
    height: 3.78rem;
  }

  .service-hero-mobile .service-hero-mobile-actions .service-hero-cta--secondary span {
    font-size: 0.96rem;
  }

  .service-hero-mobile-sticky-cta .service-hero-cta {
    height: 3.78rem;
  }

  .service-hero-mobile-sticky-cta .service-hero-cta span {
    font-size: 0.96rem;
  }
}

@media (max-width: 389px) {
  .service-hero-mobile-shell {
    gap: 1.4rem;
  }

  .service-hero-mobile .service-hero-title {
    margin-bottom: 1.28rem;
    font-size: 2.06rem;
  }

  .service-hero-mobile .service-hero-eyebrow-chip {
    gap: 0.36rem 0.46rem;
    padding: 0.52rem 0.74rem;
    font-size: 0.58rem;
  }

  .service-hero-mobile .service-hero-eyebrow-chip > span:first-child {
    width: 0.44rem;
    height: 0.44rem;
  }

  .service-hero-mobile .service-hero-mobile-lead {
    font-size: 0.95rem;
  }

  .service-hero-mobile .service-hero-mobile-note {
    font-size: 0.89rem;
  }

  .service-hero-mobile .service-hero-visual-caption {
    padding-inline: 0.84rem 0.12rem;
    font-size: 0.79rem;
  }

  .service-hero-mobile .service-hero-mobile-actions .service-hero-cta--secondary {
    height: 3.66rem;
  }

  .service-hero-mobile .service-hero-mobile-actions .service-hero-cta--secondary span {
    font-size: 0.92rem;
  }

  .service-hero-mobile-sticky-cta {
    padding-top: 0.72rem;
    padding-bottom: calc(0.42rem + env(safe-area-inset-bottom));
  }

  .service-hero-mobile-sticky-cta .service-hero-cta {
    height: 3.66rem;
  }

  .service-hero-mobile-sticky-cta .service-hero-cta span {
    font-size: 0.92rem;
  }
}
/* ========================================= */

/* Reference implementation for new grounded-volume blocks.
   Reuse the fill/shadow tokens below when a block needs the same "лежит на полотне" feeling. */
.offer-shell {
  position: relative;
  isolation: isolate;
}

.grounded-volume-shell {
  position: relative;
  isolation: isolate;
}

.grounded-volume-shell__layer {
  position: absolute;
  inset: 0;
  border-radius: var(--grounded-volume-radius, 1.25rem);
  background: var(--grounded-volume-fill);
  pointer-events: none;
}

.grounded-volume-shell__layer--1 {
  transform: translate(1px, 1px);
  z-index: 10;
}

.grounded-volume-shell__layer--2 {
  transform: translate(2px, 2px);
  z-index: 9;
}

.grounded-volume-shell__layer--3 {
  transform: translate(3px, 3px);
  z-index: 8;
}

.grounded-volume-shell__layer--4 {
  transform: translate(4px, 4px);
  z-index: 7;
}

.grounded-volume-shell__layer--5 {
  transform: translate(5px, 5px);
  z-index: 6;
}

.grounded-volume-shell__layer--6 {
  transform: translate(6px, 6px);
  z-index: 5;
  filter: var(--volume-grounded-shadow);
}

.grounded-volume-shell--lime {
  --grounded-volume-fill: var(--volume-grounded-green-fill);
}

.grounded-volume-shell--coral {
  --grounded-volume-fill: var(--volume-grounded-coral-fill);
}

.grounded-volume-shell--ink {
  --grounded-volume-fill: var(--volume-grounded-ink-fill);
}

.offer-surface {
  position: relative;
  z-index: 20;
  overflow: hidden;
  border: 1px solid #9fd01c;
  border-radius: 1.25rem;
  background: #beed45;
  box-shadow: none;
  padding: 1.25rem 1.5rem 1.5rem;
}

.offer-surface::before,
.offer-surface::after {
  display: none;
}

.offer-surface::before {
  top: -12%;
  right: -8%;
  width: 32rem;
  height: 18rem;
  background: rgba(255, 255, 255, 0.24);
  transform: rotate(10deg);
}

.offer-surface::after {
  bottom: -20%;
  left: -8%;
  width: 20rem;
  height: 12rem;
  background: rgba(245, 240, 232, 0.22);
  transform: rotate(-12deg);
}

.service-overview-section {
  position: relative;
  --service-overview-card-bg: #faf6ed;
  --service-overview-card-bg-hover: #fffaf2;
}

.service-overview-stage {
  position: relative;
  isolation: isolate;
}

.service-overview-layout {
  --service-overview-radius: 1.65rem;
  --service-overview-tab-depth-x: 0.55rem;
  --service-overview-tab-depth-y: 0.5rem;
  --service-overview-seam-overlap: 1px;
  --service-overview-tab-visible-width: 17.2rem;
  --service-overview-tab-corner-radius: var(--service-overview-radius) 0 0
    var(--service-overview-radius);
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(12.5rem, var(--service-overview-tab-visible-width)) minmax(0, 1fr);
  gap: 0;
  align-items: stretch;
  overflow: visible;
}

.service-overview-rail {
  min-width: 0;
  position: relative;
  align-self: start;
}

.service-overview-tabs {
  display: grid;
  gap: 0.95rem;
  position: relative;
}

.service-overview-mobile-sticky {
  display: none;
}

@keyframes service-overview-tabs-hint {
  0%,
  100% {
    transform: translate3d(0, -50%, 0);
    opacity: 0.48;
  }

  50% {
    transform: translate3d(0.22rem, -50%, 0);
    opacity: 0.84;
  }
}

.service-overview-tab-shell {
  --grounded-volume-radius: var(--service-overview-tab-corner-radius);
  position: relative;
  isolation: auto;
  width: calc(
    var(--service-overview-tab-visible-width) + var(--service-overview-tab-depth-x) +
      var(--service-overview-seam-overlap)
  );
  max-width: none;
  overflow: visible;
}

.service-overview-tab-shell .grounded-volume-shell__layer {
  border-radius: var(--service-overview-tab-corner-radius);
  transition: transform 200ms ease;
}

.service-overview-tab-shell .grounded-volume-shell__layer--1 {
  z-index: 6;
}

.service-overview-tab-shell .grounded-volume-shell__layer--2 {
  z-index: 5;
}

.service-overview-tab-shell .grounded-volume-shell__layer--3 {
  z-index: 4;
}

.service-overview-tab-shell .grounded-volume-shell__layer--4 {
  z-index: 3;
}

.service-overview-tab-shell .grounded-volume-shell__layer--5 {
  z-index: 2;
}

.service-overview-tab-shell .grounded-volume-shell__layer--6 {
  z-index: 1;
}

.service-overview-tab {
  position: relative;
  z-index: 11;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.1rem;
  width: calc(100% - var(--service-overview-tab-depth-x));
  max-width: calc(100% - var(--service-overview-tab-depth-x));
  box-sizing: border-box;
  min-height: 6.15rem;
  padding: 0.95rem 1.05rem;
  border: 1px solid #9fd01c;
  border-radius: var(--service-overview-tab-corner-radius);
  background: #beed45;
  color: #171717;
  font-size: clamp(0.95rem, 1.02vw, 1.28rem);
  font-weight: 700;
  line-height: 1.14;
  text-align: center;
  cursor: pointer;
  transition:
    transform 200ms ease,
    background-color 140ms ease,
    color 140ms ease,
    border-color 140ms ease,
    opacity 140ms ease;
}

.service-overview-tab span {
  display: block;
}

.service-overview-tab:hover {
  background: #d5ff49;
}

.service-overview-tab-shell:not(.is-active):hover .grounded-volume-shell__layer--1,
.service-overview-tab-shell:not(.is-active):hover .grounded-volume-shell__layer--2,
.service-overview-tab-shell:not(.is-active):hover .grounded-volume-shell__layer--3 {
  transform: translate(4px, 4px);
}

.service-overview-tab-shell:not(.is-active):hover > .service-overview-tab {
  transform: translate(4px, 4px);
}

.service-overview-tab-shell:not(.is-active):has(> .service-overview-tab:active)
  .grounded-volume-shell__layer {
  transform: translate(9px, 9px);
}

.service-overview-tab:not(.is-active):active {
  transform: translate(9px, 9px);
}

.service-overview-tab:focus-visible {
  outline: 3px solid rgba(201, 255, 59, 0.72);
  outline-offset: 3px;
}

.service-overview-tab.is-active {
  z-index: 20;
  background: #ffffff;
  border-right-color: #ffffff;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.service-overview-tab.is-active::after {
  content: "";
  position: absolute;
  top: -1px;
  right: calc(-1 * var(--service-overview-seam-overlap));
  bottom: -1px;
  width: calc(var(--service-overview-seam-overlap) + 1px);
  background:
    linear-gradient(#9fd01c 0 0) top / 100% 1px no-repeat,
    linear-gradient(#9fd01c 0 0) bottom / 100% 1px no-repeat,
    #ffffff;
  pointer-events: none;
  z-index: 1;
}

.service-overview-content-shell {
  --grounded-volume-radius: 0 var(--service-overview-radius) var(--service-overview-radius) 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-self: stretch;
  position: relative;
  z-index: 12;
  margin-left: 0;
}

.service-overview-content-shell .grounded-volume-shell__layer {
  border-radius: 0 var(--service-overview-radius) var(--service-overview-radius) 0;
}

.service-overview-content-surface {
  position: relative;
  z-index: 20;
  flex: 1 1 auto;
  overflow: hidden;
  min-height: clamp(31rem, 37vw, 40rem);
  border: 1px solid #9fd01c;
  border-radius: 0 var(--service-overview-radius) var(--service-overview-radius) 0;
  background: #ffffff;
}

.service-overview-content {
  min-width: 0;
  padding: clamp(1.4rem, 2.2vw, 2rem) clamp(1.4rem, 2.6vw, 2.8rem) clamp(1.4rem, 2.2vw, 2rem);
}

.service-overview-panel[hidden] {
  display: none !important;
}

.service-overview-panel {
  display: grid;
  gap: 1.5rem;
  align-content: start;
}

.service-overview-panel-head {
  display: grid;
  gap: 0.85rem;
}

.service-overview-panel-title {
  margin: 0;
  color: #111111;
  font-size: clamp(2rem, 4vw, 3.35rem);
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: -0.05em;
}

.service-overview-panel-lead {
  margin: 0;
  max-width: 48rem;
  color: rgba(17, 17, 17, 0.72);
  font-size: 1.08rem;
  line-height: 1.55;
}

.service-overview-panel-lead-accent {
  display: block;
  margin-top: 0.9rem;
  color: #111111;
  font-weight: 700;
}

.service-overview-panel--why {
  position: relative;
  gap: 1.35rem;
  padding-top: 0.15rem;
}

.service-overview-panel--why > * {
  position: relative;
  z-index: 1;
}

.service-overview-why-layout {
  display: grid;
  gap: 1.2rem;
}

.service-overview-panel-head--why {
  width: 100%;
  max-width: none;
  gap: 0.7rem;
  padding: 0 0 1.05rem;
}

.service-overview-panel-head--why .section-kicker {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  width: fit-content;
  max-width: 100%;
  margin: 0;
  padding: 0.42rem 0.72rem 0.46rem;
  border: 1px solid rgba(23, 23, 23, 0.07);
  border-radius: 999px;
  background: #fffdf7;
  color: rgba(17, 17, 17, 0.56);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.94);
}

.service-overview-panel-head--why::before {
  content: none;
}

.service-overview-panel-head--why .section-kicker::before {
  content: "";
  width: 0.42rem;
  height: 0.42rem;
  border-radius: 999px;
  background: #c9ff3b;
  box-shadow: 0 0 0 3px rgba(201, 255, 59, 0.18);
}

.service-overview-panel-head--why::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  margin-top: 0.1rem;
  background: linear-gradient(
    90deg,
    rgba(201, 255, 59, 0.46) 0%,
    rgba(17, 17, 17, 0.09) 18%,
    rgba(17, 17, 17, 0.06) 44%,
    rgba(17, 17, 17, 0.02) 100%
  );
}

.service-overview-panel--why .service-overview-panel-title {
  max-width: 18ch;
  font-size: clamp(2rem, 2.95vw, 2.68rem);
  line-height: 0.98;
  text-wrap: balance;
}

.service-overview-points {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.1rem;
  align-items: stretch;
  grid-auto-rows: 1fr;
}

.service-overview-point {
  position: relative;
  display: grid;
  grid-template-rows: 1fr;
  height: 100%;
  min-height: 14.5rem;
  padding: 1.35rem 1.45rem 1.45rem;
  overflow: hidden;
  border: 1px solid rgba(164, 145, 102, 0.22);
  border-radius: 1.5rem;
  background: var(--service-overview-point-fill);
  transition:
    border-color 180ms ease,
    background-color 180ms ease;
}

.service-overview-point::after {
  content: none;
}

.service-overview-point:hover {
  border-color: rgba(164, 145, 102, 0.3);
  background: var(--service-overview-point-fill-hover);
}

.service-overview-point-head {
  display: flex;
  align-items: center;
  gap: 0.95rem;
  position: relative;
  z-index: 1;
}

.service-overview-point-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.3rem;
  height: 3.3rem;
  flex: 0 0 3.3rem;
  border: 1px solid rgba(164, 145, 102, 0.18);
  border-radius: 1rem;
  background: #fffaf1;
  color: #111111;
}

.service-overview-point-icon svg {
  width: 1.62rem;
  height: 1.62rem;
}

.service-overview-point:nth-child(1) .service-overview-point-icon {
  border-color: rgba(159, 208, 28, 0.34);
  background: #eff8cf;
  color: #5f7d10;
}

.service-overview-point:nth-child(2) .service-overview-point-icon {
  border-color: rgba(142, 167, 92, 0.3);
  background: #eef5dd;
  color: #6f8332;
}

.service-overview-point:nth-child(3) .service-overview-point-icon {
  border-color: rgba(130, 156, 65, 0.3);
  background: #edf4d7;
  color: #597224;
}

.service-overview-point:nth-child(4) .service-overview-point-icon {
  border-color: rgba(214, 173, 78, 0.28);
  background: #fff0cd;
  color: #a06f12;
}

.service-overview-point-copy {
  position: relative;
  z-index: 1;
  display: grid;
  align-content: start;
  gap: 1rem;
}

.service-overview-point-title {
  margin: 0;
  max-width: none;
  color: #111111;
  font-size: clamp(1.26rem, 1.45vw, 1.5rem);
  font-weight: 900;
  line-height: 1.03;
  letter-spacing: -0.03em;
  text-wrap: balance;
}

.service-overview-point-title .section-lead-highlight {
  padding: 0 0.18em 0.02em;
  border-radius: 0.32rem;
}

.service-overview-point-text {
  margin: 0;
  max-width: 34rem;
  color: rgba(23, 23, 23, 0.78);
  font-size: 1.03rem;
  line-height: 1.7;
  text-wrap: pretty;
}

.service-overview-point-text .section-lead-highlight {
  font-weight: 600;
}

.service-overview-inline-underline {
  color: #111111;
  background-image: linear-gradient(rgba(201, 255, 59, 0.95), rgba(201, 255, 59, 0.95));
  background-repeat: no-repeat;
  background-size: 100% 2px;
  background-position: 0 calc(100% - 0.08em);
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

.service-overview-list-shell {
  display: grid;
  gap: 1rem;
}

.service-overview-list-intro {
  margin: 0;
  color: #111111;
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: 0.01em;
}

.service-overview-list {
  display: grid;
  gap: 0.85rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.service-overview-list li {
  position: relative;
  padding: 0.95rem 1rem 0.95rem 3.2rem;
  border: 1px solid rgba(23, 23, 23, 0.08);
  border-radius: 1rem;
  background: var(--service-overview-card-bg);
  color: #171717;
  font-size: 1rem;
  line-height: 1.5;
}

.service-overview-list li::before {
  content: "";
  position: absolute;
  left: 1rem;
  top: 1.05rem;
  width: 1.15rem;
  height: 1.15rem;
  border-radius: 999px;
  border: 1px solid rgba(159, 208, 28, 0.65);
  background: rgba(201, 255, 59, 0.5);
  box-shadow: inset 0 0 0 0.18rem #ffffff;
}

.service-overview-list--coral li {
  background: var(--service-overview-card-bg);
}

.service-overview-list--coral li::before {
  border-color: rgba(255, 90, 54, 0.4);
  background: rgba(255, 90, 54, 0.22);
}

.service-overview-steps {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.95rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.service-overview-step {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.9rem;
  padding: 1rem 1rem 1.05rem;
  border: 1px solid rgba(23, 23, 23, 0.08);
  border-radius: 1rem;
  background: var(--service-overview-card-bg);
}

.service-overview-step-index {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 999px;
  background: #c9ff3b;
  color: #111111;
  font-size: 0.9rem;
  font-weight: 900;
  line-height: 1;
}

.service-overview-step-copy {
  display: grid;
  gap: 0.45rem;
}

.service-overview-step-copy h4 {
  margin: 0;
  color: #111111;
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.25;
}

.service-overview-step-copy p {
  margin: 0;
  color: rgba(17, 17, 17, 0.78);
  font-size: 0.95rem;
  line-height: 1.5;
}

.service-overview-editorial {
  display: grid;
  gap: 1rem;
  max-width: 57rem;
}

.service-overview-editorial p {
  margin: 0;
  color: rgba(17, 17, 17, 0.84);
  font-size: 1.02rem;
  line-height: 1.62;
}

.service-overview-editorial-lead {
  color: #111111 !important;
  font-size: 1.1rem !important;
  font-weight: 700;
}

.service-overview-editorial-emphasis {
  color: #111111 !important;
  font-weight: 800;
}

.service-overview-quote {
  width: fit-content;
  max-width: 100%;
  padding: 0.95rem 1.1rem;
  border: 1px solid rgba(159, 208, 28, 0.28);
  border-radius: 1rem;
  background: var(--service-overview-card-bg);
}

.service-overview-quote p {
  color: #111111;
  font-size: 1.18rem;
  font-weight: 800;
  line-height: 1.35;
}

.service-overview-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  padding-top: 0.25rem;
}

.service-overview-actions-hero {
  display: none;
}

.service-overview-action-shell {
  --grounded-volume-radius: 1rem;
  position: relative;
  isolation: isolate;
  flex: 0 0 auto;
  box-sizing: border-box;
}

.service-overview-action-shell--secondary {
  --grounded-volume-fill: linear-gradient(
    to left bottom,
    rgb(208, 200, 184) 0px,
    rgb(184, 176, 160) 20px,
    rgb(184, 176, 160) calc(50% - 30px),
    rgb(133, 125, 110) 50%,
    rgb(159, 151, 136) calc(50% + 30px),
    rgb(159, 151, 136) calc(100% - 20px),
    rgb(208, 200, 184) 100%
  );
}

.service-overview-action-shell .grounded-volume-shell__layer {
  border-radius: var(--grounded-volume-radius);
}

.service-overview-action {
  position: relative;
  z-index: 20;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.85rem;
  min-width: 13.5rem;
  min-height: 3.6rem;
  padding: 0.95rem 1.35rem;
  border: 1px solid #9fd01c;
  border-radius: var(--grounded-volume-radius);
  color: #171717;
  font-size: 1rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition:
    background-color 140ms ease,
    color 140ms ease,
    border-color 140ms ease;
}

.service-overview-action--primary {
  background: #c9ff3b;
  border-color: #9fd01c;
  color: #171717;
}

.service-overview-action--primary:hover {
  background: #d5ff49;
  color: #171717;
  opacity: 0.93;
}

.service-overview-action--secondary {
  background: #fffaf2;
  border-color: #b8b0a0;
  color: #171717;
}

.service-overview-action--secondary:hover {
  background: #fff8ef;
}

.service-overview-action:focus-visible {
  outline: 3px solid rgba(201, 255, 59, 0.72);
  outline-offset: 3px;
}

.service-overview-panel-head--fit,
.service-overview-panel-head--unfit,
.service-overview-panel-head--process,
.service-overview-panel-head--values,
.service-overview-panel-head--experience {
  gap: 0.8rem;
}

.service-overview-panel-head--fit::after,
.service-overview-panel-head--unfit::after,
.service-overview-panel-head--process::after,
.service-overview-panel-head--values::after,
.service-overview-panel-head--experience::after {
  content: "";
  display: block;
  width: min(100%, 15rem);
  height: 1px;
  background: linear-gradient(
    90deg,
    rgba(201, 255, 59, 0.58) 0%,
    rgba(255, 108, 76, 0.22) 52%,
    rgba(17, 17, 17, 0.05) 100%
  );
}

.service-overview-panel-head--fit .service-overview-panel-title,
.service-overview-panel-head--unfit .service-overview-panel-title,
.service-overview-panel-head--process .service-overview-panel-title,
.service-overview-panel-head--values .service-overview-panel-title,
.service-overview-panel-head--experience .service-overview-panel-title {
  max-width: 12ch;
  font-size: clamp(1.9rem, 3vw, 2.7rem);
  line-height: 0.98;
}

.service-overview-panel--fit,
.service-overview-panel--unfit,
.service-overview-panel--process,
.service-overview-panel--values,
.service-overview-panel--experience {
  gap: 1.6rem;
}

.service-overview-points {
  counter-reset: service-overview-point;
  gap: 1.15rem;
}

.service-overview-point {
  counter-increment: service-overview-point;
  padding-top: 1.6rem;
  border-color: rgba(164, 145, 102, 0.18);
  background: var(--service-overview-card-bg);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.service-overview-point::before {
  content: none;
}

.service-overview-point::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, rgba(201, 255, 59, 0.88), rgba(201, 255, 59, 0.16));
}

.service-overview-point:nth-child(2)::after {
  background: linear-gradient(90deg, rgba(150, 178, 90, 0.84), rgba(150, 178, 90, 0.14));
}

.service-overview-point:nth-child(3)::after {
  background: linear-gradient(90deg, rgba(130, 156, 65, 0.84), rgba(130, 156, 65, 0.14));
}

.service-overview-point:nth-child(4)::after {
  background: linear-gradient(90deg, rgba(240, 191, 78, 0.82), rgba(240, 191, 78, 0.14));
}

.service-overview-point:hover {
  border-color: rgba(164, 145, 102, 0.3);
  background: var(--service-overview-card-bg-hover);
}

.service-overview-point-copy {
  gap: 1.05rem;
}

.service-overview-point-title {
  line-height: 1.04;
}

.service-overview-fit-layout,
.service-overview-unfit-layout,
.service-overview-process-shell,
.service-overview-experience-layout {
  display: grid;
  gap: 1.2rem;
}

.service-overview-panel-head--fit,
.service-overview-panel-head--unfit,
.service-overview-experience-highlight {
  position: relative;
  isolation: isolate;
}

.service-overview-panel-head--fit::before,
.service-overview-panel-head--unfit::before,
.service-overview-experience-highlight::before {
  content: "";
  position: absolute;
  inset: auto -12% -28% auto;
  width: 14rem;
  height: 14rem;
  border-radius: 999px;
  pointer-events: none;
  z-index: 0;
}

.service-overview-panel-head--fit > *,
.service-overview-panel-head--unfit > *,
.service-overview-experience-highlight > * {
  position: relative;
  z-index: 1;
}

.service-overview-panel-head--fit {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.service-overview-panel-head--fit::before {
  content: none;
}

.service-overview-list-shell--fit .service-overview-list-intro {
  display: block;
  max-width: 34rem;
  padding: 0 0 0.9rem;
  border: 0;
  border-bottom: 1px solid rgba(17, 17, 17, 0.08);
  background: transparent;
  font-size: 1.02rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  text-wrap: pretty;
}

.service-overview-panel-head--unfit {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.service-overview-panel-head--unfit::before {
  content: none;
}

.service-overview-list-shell--fit,
.service-overview-list-shell--unfit {
  gap: 1rem;
}

.service-overview-list--fit,
.service-overview-list--unfit {
  gap: 1rem;
  counter-reset: service-overview-list;
}

.service-overview-list--fit li,
.service-overview-list--unfit li {
  counter-increment: service-overview-list;
  min-height: 9.4rem;
  padding: 1.15rem 1.15rem 1.2rem 4.2rem;
  border-radius: 1.2rem;
  font-size: 1rem;
  line-height: 1.58;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.service-overview-list--fit li {
  border-color: rgba(164, 145, 102, 0.14);
  background: var(--service-overview-card-bg);
}

.service-overview-list--fit li::before,
.service-overview-list--unfit li::before {
  display: grid;
  place-items: center;
  width: 2.35rem;
  height: 2.35rem;
  top: 1.05rem;
  left: 1rem;
  border-width: 1px;
  font-size: 1.08rem;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.service-overview-list--fit li::before {
  content: "✓";
  border-color: rgba(159, 208, 28, 0.6);
  background: rgba(201, 255, 59, 0.56);
  color: #173703;
}

.service-overview-list--unfit li {
  border-color: rgba(255, 108, 76, 0.18);
  background: var(--service-overview-card-bg);
}

.service-overview-list--unfit li::before {
  content: "–";
  border-color: rgba(255, 108, 76, 0.4);
  background: rgba(255, 108, 76, 0.2);
  color: #b84427;
}

.service-overview-list--unfit li:last-child {
  min-height: 0;
}

.service-overview-process-shell .service-overview-panel-head--process {
  padding-bottom: 0.3rem;
}

.service-overview-panel--process .service-overview-steps {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.9rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.service-overview-panel--process .service-overview-steps::before {
  content: "";
  position: absolute;
  top: 1.2rem;
  bottom: 1.2rem;
  left: 1.28rem;
  width: 2px;
  background: linear-gradient(180deg, rgba(159, 208, 28, 0.48), rgba(255, 108, 76, 0.28));
}

.service-overview-panel--process .service-overview-step {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 1rem;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

.service-overview-panel--process .service-overview-step::before,
.service-overview-panel--process .service-overview-step::after {
  content: none;
}

.service-overview-panel--process .service-overview-step-index {
  position: relative;
  z-index: 2;
  width: 2.6rem;
  height: 2.6rem;
  margin-top: 0.45rem;
  border: 1px solid rgba(159, 208, 28, 0.46);
  background: #c9ff3b;
  box-shadow:
    0 0 0 0.34rem #fffcf5,
    0 0 0 0.42rem rgba(159, 208, 28, 0.14);
}

.service-overview-panel--process .service-overview-step-copy {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 0.6rem;
  padding: 1rem 1.15rem 1.05rem;
  border: 1px solid rgba(23, 23, 23, 0.08);
  border-radius: 1.15rem;
  background: var(--service-overview-card-bg);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.service-overview-panel--process .service-overview-step-copy::before {
  content: "";
  position: absolute;
  top: 1.18rem;
  left: -0.42rem;
  width: 0.8rem;
  height: 0.8rem;
  border-left: 1px solid rgba(23, 23, 23, 0.08);
  border-bottom: 1px solid rgba(23, 23, 23, 0.08);
  background: var(--service-overview-card-bg);
  transform: rotate(45deg);
}

.service-overview-panel--process .service-overview-step-copy h4 {
  margin: 0;
  color: #111111;
  font-size: 1.08rem;
  font-weight: 800;
  line-height: 1.28;
}

.service-overview-panel--process .service-overview-step-copy p {
  margin: 0;
  color: rgba(17, 17, 17, 0.78);
  font-size: 0.98rem;
  line-height: 1.6;
}

.service-overview-editorial--values {
  max-width: 58rem;
  gap: 0;
}

.service-overview-values-essay {
  position: relative;
  display: grid;
  gap: 1.15rem;
  max-width: 56rem;
  padding-left: 1.5rem;
}

.service-overview-values-essay::before {
  content: "";
  position: absolute;
  top: 0.3rem;
  bottom: 0.3rem;
  left: 0;
  width: 2px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(159, 208, 28, 0.92), rgba(255, 108, 76, 0.42));
}

.service-overview-values-essay > .service-overview-values-standfirst {
  margin: 0;
  color: #111111;
  font-size: clamp(1.45rem, 2.2vw, 2rem);
  font-weight: 800;
  line-height: 1.14;
  max-width: 24ch;
}

.service-overview-values-body {
  display: grid;
}

.service-overview-values-body p {
  margin: 0;
  color: rgba(17, 17, 17, 0.84);
  font-size: 1.03rem;
  line-height: 1.68;
}

.service-overview-values-body p + p {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(17, 17, 17, 0.08);
}

.service-overview-values-essay > .service-overview-values-conclusion {
  margin: 0.15rem 0 0;
  padding-top: 1rem;
  border-top: 1px solid rgba(17, 17, 17, 0.12);
  color: #111111;
  font-size: 1.08rem;
  font-weight: 800;
  line-height: 1.5;
}

.service-overview-editorial-hero,
.service-overview-editorial-grid,
.service-overview-editorial-closing,
.service-overview-experience-grid {
  display: grid;
  gap: 1rem;
}

.service-overview-editorial-card {
  position: relative;
  overflow: hidden;
  padding: 1.25rem 1.25rem 1.35rem;
  border: 1px solid rgba(164, 145, 102, 0.18);
  border-radius: 1.35rem;
  background: var(--service-overview-card-bg);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.service-overview-editorial-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, rgba(201, 255, 59, 0.82), rgba(255, 108, 76, 0.46));
}

.service-overview-editorial-card--soft {
  border-color: rgba(159, 208, 28, 0.22);
  background: var(--service-overview-card-bg);
}

.service-overview-editorial-card--accent {
  border-color: rgba(255, 108, 76, 0.2);
  background: var(--service-overview-card-bg);
}

.service-overview-editorial-card p + p {
  margin-top: 0.9rem;
  padding-top: 0.9rem;
  border-top: 1px solid rgba(17, 17, 17, 0.08);
}

.service-overview-quote {
  padding: 1.05rem 1.2rem;
  border: 1px solid rgba(159, 208, 28, 0.28);
  border-radius: 1.2rem;
  background: var(--service-overview-card-bg);
}

.service-overview-quote p {
  font-size: clamp(1.12rem, 1.35vw, 1.32rem);
}

.service-overview-editorial-emphasis {
  display: block;
  padding: 1.05rem 1.15rem 1.12rem;
  border-radius: 1.15rem;
  background: #171717;
  color: #ffffff !important;
  line-height: 1.55;
  box-shadow: inset 0 0 0 1px rgba(201, 255, 59, 0.18);
}

.service-overview-experience-highlight {
  border: 1px solid rgba(159, 208, 28, 0.34);
  background: var(--service-overview-card-bg);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.94);
}

.service-overview-experience-highlight::before {
  content: none;
}

.service-overview-experience-essay {
  position: relative;
  display: grid;
  gap: 1.15rem;
  max-width: 56rem;
  padding-left: 1.5rem;
}

.service-overview-experience-essay::before {
  content: "";
  position: absolute;
  top: 0.3rem;
  bottom: 0.3rem;
  left: 0;
  width: 2px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255, 108, 76, 0.58), rgba(159, 208, 28, 0.92));
}

.service-overview-experience-essay > .service-overview-experience-standfirst {
  margin: 0;
  color: #111111;
  font-size: clamp(1.32rem, 2.05vw, 1.84rem);
  font-weight: 800;
  line-height: 1.3;
}

.service-overview-experience-brands {
  font-weight: 800;
  box-shadow: inset 0 -0.46em 0 rgba(201, 255, 59, 0.3);
}

.service-overview-experience-body {
  display: grid;
}

.service-overview-experience-body p {
  margin: 0;
  color: rgba(17, 17, 17, 0.84);
  font-size: 1.03rem;
  line-height: 1.68;
}

.service-overview-experience-body p + p {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(17, 17, 17, 0.08);
}

.service-overview-experience-body .service-overview-experience-strength {
  color: #111111;
  font-weight: 700;
}

.service-overview-experience-essay > .service-overview-experience-conclusion {
  margin: 0.15rem 0 0;
  padding-top: 1rem;
  border-top: 1px solid rgba(17, 17, 17, 0.12);
  color: #111111;
  font-size: 1.08rem;
  font-weight: 800;
  line-height: 1.5;
}

@media (min-width: 64.0625rem) {
  .service-overview-list--fit,
  .service-overview-list--unfit,
  .service-overview-editorial-grid,
  .service-overview-experience-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .service-overview-list--unfit li:last-child {
    grid-column: 1 / -1;
  }

  .service-overview-editorial-hero {
    grid-template-columns: minmax(17rem, 0.72fr) minmax(0, 1.28fr);
    align-items: start;
  }
}

@media (max-width: 74rem) {
  .service-overview-layout {
    --service-overview-tab-visible-width: 13.45rem;
  }

  .service-overview-content-surface {
    min-height: auto;
  }

  .service-overview-panel--why .service-overview-panel-title {
    max-width: 20.5ch;
  }
}

@media (max-width: 64rem) {
  .service-overview-layout {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .service-overview-rail {
    min-width: 0;
    padding: 0;
  }

  .service-overview-tabs {
    display: flex;
    gap: 0.75rem;
    overflow-x: auto;
    padding: 0 0.1rem 0.2rem;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .service-overview-tabs::-webkit-scrollbar {
    display: none;
  }

  .service-overview-tab-shell {
    --grounded-volume-radius: var(--service-overview-radius);
    flex: 0 0 auto;
    min-width: 11rem;
    width: auto;
    overflow: hidden;
  }

  .service-overview-tab-shell .grounded-volume-shell__layer {
    border-radius: var(--service-overview-radius);
    clip-path: none;
  }

  .service-overview-tab-shell.is-active {
    margin-bottom: -1px;
    z-index: 1;
  }

  .service-overview-tab {
    width: 100%;
    max-width: none;
    min-height: 4.85rem;
    padding: 0.85rem 0.95rem;
    border-radius: var(--service-overview-radius);
    font-size: 0.98rem;
  }

  .service-overview-tab.is-active {
    border-right-color: #9fd01c;
    border-bottom-color: #ffffff;
    border-top-right-radius: var(--service-overview-radius);
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
  }

  .service-overview-tab.is-active::after {
    top: auto;
    left: -1px;
    right: -1px;
    bottom: -1px;
    width: auto;
    height: 2px;
  }

  .service-overview-content {
    padding: 1.2rem 1.1rem 1.25rem;
  }

  .service-overview-content-shell {
    margin-left: 0;
    z-index: auto;
  }

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

  .service-overview-fit-layout,
  .service-overview-unfit-layout,
  .service-overview-process-shell,
  .service-overview-experience-layout {
    gap: 1rem;
  }

  .service-overview-list--fit li,
  .service-overview-list--unfit li {
    min-height: 0;
  }

  .service-overview-panel--process .service-overview-steps::before {
    left: 1.2rem;
  }
}

@media (min-width: 48.125rem) and (max-width: 64rem) {
  .service-overview-layout {
    --service-overview-radius: 1.35rem;
    --service-overview-tab-padding-bottom: 0.8rem;
    --service-overview-mobile-tab-face-height: 4.14rem;
    gap: 0;
  }

  .service-overview-rail {
    position: relative;
    isolation: isolate;
    z-index: 14;
    margin-bottom: 0;
  }

  .service-overview-content-shell {
    --grounded-volume-radius: 0 0 var(--service-overview-radius) var(--service-overview-radius);
  }

  .service-overview-content-shell .grounded-volume-shell__layer {
    border-radius: 0 0 var(--service-overview-radius) var(--service-overview-radius);
  }

  .service-overview-content-surface {
    border-radius: 0 0 var(--service-overview-radius) var(--service-overview-radius);
  }

  .service-overview-tabs {
    position: relative;
    z-index: 14;
    display: flex;
    align-items: flex-end;
    gap: 0.66rem;
    overflow-x: auto;
    overflow-y: hidden;
    margin-bottom: calc(-1 * var(--service-overview-seam-overlap));
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
    scroll-padding-inline: 0 1.7rem;
    scroll-snap-type: none;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .service-overview-tabs::-webkit-scrollbar {
    display: none;
  }

  .service-overview-rail.has-overflow-right .service-overview-tabs {
    -webkit-mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 1) 0%,
      rgba(0, 0, 0, 1) calc(100% - 1.34rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.7rem),
      rgba(0, 0, 0, 0) 100%
    );
    mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 1) 0%,
      rgba(0, 0, 0, 1) calc(100% - 1.34rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.7rem),
      rgba(0, 0, 0, 0) 100%
    );
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }

  .service-overview-rail.has-overflow-left.has-overflow-right .service-overview-tabs {
    -webkit-mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 0.82) 0.82rem,
      rgba(0, 0, 0, 1) 1.4rem,
      rgba(0, 0, 0, 1) calc(100% - 1.34rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.7rem),
      rgba(0, 0, 0, 0) 100%
    );
    mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 0.82) 0.82rem,
      rgba(0, 0, 0, 1) 1.4rem,
      rgba(0, 0, 0, 1) calc(100% - 1.34rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.7rem),
      rgba(0, 0, 0, 0) 100%
    );
  }

  .service-overview-rail::before {
    content: none;
  }

  .service-overview-rail::after {
    content: "";
    position: absolute;
    top: calc(var(--service-overview-mobile-tab-face-height) * 0.5);
    right: 0.24rem;
    width: 0.82rem;
    height: 0.68rem;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 16' fill='none'%3E%3Cpath d='M2 2l6 6-6 6M10 2l6 6-6 6' stroke='%23111111' stroke-opacity='.52' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
      center / 100% 100% no-repeat;
    opacity: 0;
    pointer-events: none;
    z-index: 18;
    transition: opacity 160ms ease;
    transform: translateY(-50%);
  }

  .service-overview-rail.has-overflow-right:not(.has-overflow-left)::after {
    opacity: 0.52;
    animation: service-overview-tabs-hint 1.7s ease-in-out infinite;
  }

  .service-overview-tabs::after {
    content: "";
    flex: 0 0 2.12rem;
  }

  .service-overview-tab-shell {
    --service-overview-tab-corner-radius: var(--service-overview-radius)
      var(--service-overview-radius) 0 0;
    --grounded-volume-radius: var(--service-overview-tab-corner-radius);
    flex: 0 0 auto;
    width: auto;
    min-width: clamp(8.95rem, 39vw, 10.1rem);
    overflow: visible;
    scroll-snap-align: none;
  }

  .service-overview-tab {
    min-height: 4.14rem;
    padding: 0.72rem 0.84rem var(--service-overview-tab-padding-bottom);
    border-radius: var(--service-overview-tab-corner-radius);
    font-size: 0.91rem;
    line-height: 1.08;
    letter-spacing: -0.018em;
  }

  .service-overview-tab-shell .grounded-volume-shell__layer {
    border-radius: var(--service-overview-tab-corner-radius);
  }

  .service-overview-tab-shell.is-active {
    margin-bottom: -1px;
    z-index: 2;
  }

  .service-overview-tab.is-active {
    border-bottom: none;
    padding-bottom: calc(var(--service-overview-tab-padding-bottom) + 1px);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }

  .service-overview-tab.is-active::after {
    content: "";
    position: absolute;
    left: -1px;
    right: -1px;
    bottom: calc(-1 * (var(--service-overview-seam-overlap) + 1px));
    height: calc(var(--service-overview-seam-overlap) + 2px);
    background:
      linear-gradient(#9fd01c 0 0) left / 1px 100% no-repeat,
      linear-gradient(#9fd01c 0 0) right / 1px 100% no-repeat,
      #ffffff;
    pointer-events: none;
    z-index: 1;
  }

  .service-overview-actions {
    display: none;
  }

  .service-overview-actions-hero {
    display: grid;
    gap: 0.9rem;
    width: 100%;
    padding-top: 0.2rem;
  }

  .service-overview-actions-hero .service-hero-cta {
    width: 100%;
    max-width: none;
    height: 3.9rem;
    margin-inline: 0;
  }

  .service-overview-actions-hero .service-hero-cta > div,
  .service-overview-actions-hero .service-hero-cta > a,
  .service-overview-actions-hero .service-hero-cta > button {
    width: calc(100% - 9px);
    height: calc(100% - 8.5px);
  }

  .service-overview-actions-hero .service-hero-cta > a,
  .service-overview-actions-hero .service-hero-cta > button {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }

  .service-overview-actions-hero .service-hero-cta span {
    gap: 0.55rem;
    font-size: 1rem;
  }

  .service-overview-actions-hero .service-hero-cta svg {
    width: 1.1rem;
    height: 1.1rem;
  }
}

@media (max-width: 47.999rem) {
  .section-head.section-head--left.deliverables-tabs-head {
    max-width: 54rem;
    margin-bottom: 1rem;
  }

  .service-overview-layout {
    --service-overview-radius: 1.35rem;
    --service-overview-tab-padding-bottom: 0.8rem;
    --service-overview-mobile-tab-face-height: 4.14rem;
    gap: 0;
  }

  .service-overview-rail {
    position: relative;
    isolation: isolate;
    z-index: 14;
    margin-bottom: 0;
  }

  .service-overview-content-shell {
    --grounded-volume-radius: 0 0 var(--service-overview-radius) var(--service-overview-radius);
  }

  .service-overview-content-shell .grounded-volume-shell__layer {
    border-radius: 0 0 var(--service-overview-radius) var(--service-overview-radius);
  }

  .service-overview-content-surface {
    border-radius: 0 0 var(--service-overview-radius) var(--service-overview-radius);
  }

  .service-overview-content {
    padding: 1.28rem 1.14rem 1.34rem;
  }

  .service-overview-panel {
    gap: 1.28rem;
  }

  .service-overview-panel-head {
    gap: 0.72rem;
  }

  .service-overview-panel-title {
    font-size: clamp(1.39rem, 5.92vw, 1.54rem);
    line-height: 1.04;
    letter-spacing: -0.032em;
    text-wrap: balance;
  }

  .service-overview-panel-head--fit .service-overview-panel-title,
  .service-overview-panel-head--unfit .service-overview-panel-title,
  .service-overview-panel-head--process .service-overview-panel-title,
  .service-overview-panel-head--values .service-overview-panel-title,
  .service-overview-panel-head--experience .service-overview-panel-title {
    max-width: none;
    font-size: clamp(1.39rem, 5.92vw, 1.54rem);
    line-height: 1.04;
    letter-spacing: -0.032em;
  }

  .service-overview-panel--why {
    gap: 1.2rem;
  }

  .service-overview-panel-head--why {
    gap: 0.66rem;
    padding-bottom: 0.86rem;
  }

  .service-overview-panel--why .service-overview-panel-title {
    max-width: none;
    font-size: clamp(1.39rem, 5.92vw, 1.54rem);
    line-height: 1.04;
    letter-spacing: -0.032em;
  }

  .service-overview-tabs {
    position: relative;
    z-index: 14;
    align-items: flex-end;
    gap: 0.66rem;
    overflow-y: hidden;
    margin-bottom: calc(-1 * var(--service-overview-seam-overlap));
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
    scroll-padding-inline: 0 1.7rem;
    scroll-snap-type: none;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
  }

  .service-overview-rail.has-overflow-right .service-overview-tabs {
    -webkit-mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 1) 0%,
      rgba(0, 0, 0, 1) calc(100% - 1.34rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.7rem),
      rgba(0, 0, 0, 0) 100%
    );
    mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 1) 0%,
      rgba(0, 0, 0, 1) calc(100% - 1.34rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.7rem),
      rgba(0, 0, 0, 0) 100%
    );
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }

  .service-overview-rail.has-overflow-left.has-overflow-right .service-overview-tabs {
    -webkit-mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 0.82) 0.82rem,
      rgba(0, 0, 0, 1) 1.4rem,
      rgba(0, 0, 0, 1) calc(100% - 1.34rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.7rem),
      rgba(0, 0, 0, 0) 100%
    );
    mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 0.82) 0.82rem,
      rgba(0, 0, 0, 1) 1.4rem,
      rgba(0, 0, 0, 1) calc(100% - 1.34rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.7rem),
      rgba(0, 0, 0, 0) 100%
    );
  }

  .service-overview-rail::before {
    content: none;
  }

  .service-overview-rail::after {
    content: "";
    position: absolute;
    top: calc(var(--service-overview-mobile-tab-face-height) * 0.5);
    right: 0.24rem;
    width: 0.82rem;
    height: 0.68rem;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 16' fill='none'%3E%3Cpath d='M2 2l6 6-6 6M10 2l6 6-6 6' stroke='%23111111' stroke-opacity='.52' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
      center / 100% 100% no-repeat;
    opacity: 0;
    pointer-events: none;
    z-index: 18;
    transition: opacity 160ms ease;
    transform: translateY(-50%);
  }

  .service-overview-rail.has-overflow-right:not(.has-overflow-left)::after {
    opacity: 0.52;
    animation: service-overview-tabs-hint 1.7s ease-in-out infinite;
  }

  .service-overview-tabs::after {
    content: "";
    flex: 0 0 2.12rem;
  }

  .service-overview-tab-shell {
    --service-overview-tab-corner-radius: var(--service-overview-radius)
      var(--service-overview-radius) 0 0;
    --grounded-volume-radius: var(--service-overview-tab-corner-radius);
    min-width: clamp(8.95rem, 39vw, 10.1rem);
    overflow: visible;
    scroll-snap-align: none;
  }

  .service-overview-tab {
    min-height: 4.14rem;
    padding: 0.72rem 0.84rem var(--service-overview-tab-padding-bottom);
    border-radius: var(--service-overview-tab-corner-radius);
    font-size: 0.91rem;
    line-height: 1.08;
    letter-spacing: -0.018em;
  }

  .service-overview-tab-shell .grounded-volume-shell__layer {
    border-radius: var(--service-overview-tab-corner-radius);
  }

  .service-overview-tab-shell.is-active {
    margin-bottom: -1px;
    z-index: 2;
  }

  .service-overview-tab.is-active {
    border-bottom: none;
    padding-bottom: calc(var(--service-overview-tab-padding-bottom) + 1px);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }

  .service-overview-tab.is-active::after {
    content: "";
    position: absolute;
    left: -1px;
    right: -1px;
    bottom: calc(-1 * (var(--service-overview-seam-overlap) + 1px));
    height: calc(var(--service-overview-seam-overlap) + 2px);
    background:
      linear-gradient(#9fd01c 0 0) left / 1px 100% no-repeat,
      linear-gradient(#9fd01c 0 0) right / 1px 100% no-repeat,
      #ffffff;
    pointer-events: none;
    z-index: 1;
  }

  .service-overview-points {
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
  }

  .service-overview-panel-lead,
  .service-overview-point-text,
  .service-overview-editorial p,
  .service-overview-values-body p,
  .service-overview-experience-body p {
    font-size: 0.98rem;
    line-height: 1.6;
  }

  .service-overview-panel-lead-accent {
    margin-top: 0.72rem;
  }

  .service-overview-point,
  .service-overview-list li,
  .service-overview-step {
    border-radius: 0.95rem;
  }

  .service-overview-experience-highlight,
  .service-overview-editorial-card {
    padding: 1rem;
    border-radius: 1.05rem;
  }

  .service-overview-values-essay {
    gap: 1rem;
    padding-left: 1rem;
  }

  .service-overview-experience-essay {
    gap: 1rem;
    padding-left: 1rem;
  }

  .service-overview-values-essay > .service-overview-values-standfirst {
    font-size: clamp(1.25rem, 7vw, 1.65rem);
  }

  .service-overview-experience-essay > .service-overview-experience-standfirst {
    font-size: 1rem;
    line-height: 1.6;
  }

  .service-overview-values-body p,
  .service-overview-values-essay > .service-overview-values-conclusion {
    font-size: 1rem;
  }

  .service-overview-experience-body p,
  .service-overview-experience-essay > .service-overview-experience-conclusion {
    font-size: 1rem;
  }

  .service-overview-point {
    gap: 0.88rem;
    padding: 1rem 1rem 1.05rem;
    min-height: 0;
  }

  .service-overview-point-head {
    align-items: flex-start;
    gap: 0.78rem;
  }

  .service-overview-point-icon {
    width: 2.72rem;
    height: 2.72rem;
    flex-basis: 2.72rem;
    border-radius: 0.84rem;
  }

  .service-overview-point-icon svg {
    width: 1.3rem;
    height: 1.3rem;
  }

  .service-overview-point-copy {
    grid-template-rows: auto auto;
    gap: 0.82rem;
  }

  .service-overview-point-divider {
    min-width: 3.5rem;
  }

  .service-overview-point-title {
    min-height: 0;
    font-size: 1.08rem;
    line-height: 1.09;
  }

  .service-overview-point::before {
    top: 0.85rem;
    right: 0.9rem;
  }

  .service-overview-list-shell--fit,
  .service-overview-list-shell--unfit {
    gap: 0.82rem;
  }

  .service-overview-list--fit li,
  .service-overview-list--unfit li {
    padding: 0.95rem 0.95rem 1rem 3.55rem;
    font-size: 0.97rem;
    line-height: 1.58;
  }

  .service-overview-list--fit li::before,
  .service-overview-list--unfit li::before {
    top: 0.92rem;
    left: 0.9rem;
    width: 2.18rem;
    height: 2.18rem;
    font-size: 1rem;
  }

  .service-overview-panel--process .service-overview-steps {
    grid-template-columns: 1fr;
    gap: 0.8rem;
  }

  .service-overview-panel--process .service-overview-step {
    gap: 0.85rem;
  }

  .service-overview-panel--process .service-overview-step-index {
    width: 2.35rem;
    height: 2.35rem;
    margin-top: 0.35rem;
    box-shadow:
      0 0 0 0.28rem #fffcf5,
      0 0 0 0.36rem rgba(159, 208, 28, 0.12);
  }

  .service-overview-panel--process .service-overview-step-copy {
    padding: 0.9rem 0.95rem 0.95rem;
    border-radius: 1rem;
  }

  .service-overview-panel--process .service-overview-step-copy::before {
    top: 1.02rem;
    left: -0.38rem;
    width: 0.72rem;
    height: 0.72rem;
  }

  .service-overview-panel--process .service-overview-step-copy h4 {
    font-size: 1rem;
  }

  .service-overview-panel--process .service-overview-step-copy p {
    font-size: 0.95rem;
    line-height: 1.55;
  }

  .service-overview-list--fit li,
  .service-overview-list--unfit li {
    padding: 0.95rem 0.95rem 1rem 3.55rem;
  }

  .service-overview-list--fit li::before,
  .service-overview-list--unfit li::before {
    top: 0.92rem;
    left: 0.9rem;
    width: 2.18rem;
    height: 2.18rem;
  }

  .service-overview-quote {
    padding: 0.95rem 1rem;
    border-radius: 1.05rem;
  }

  .service-overview-editorial-emphasis {
    padding: 1rem 1rem 1.05rem;
    border-radius: 1.05rem;
  }

  .service-overview-tab-shell {
    min-width: clamp(8.95rem, 39vw, 10.1rem);
  }

  .service-overview-actions {
    display: none;
  }

  .service-overview-actions-hero {
    display: grid;
    gap: 0.9rem;
    width: 100%;
    padding-top: 0.2rem;
  }

  .service-overview-actions-hero .service-hero-cta {
    width: 100%;
    max-width: none;
    height: 3.9rem;
    margin-inline: 0;
  }

  .service-overview-actions-hero .service-hero-cta > div,
  .service-overview-actions-hero .service-hero-cta > a,
  .service-overview-actions-hero .service-hero-cta > button {
    width: calc(100% - 9px);
    height: calc(100% - 8.5px);
  }

  .service-overview-actions-hero .service-hero-cta > a,
  .service-overview-actions-hero .service-hero-cta > button {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }

  .service-overview-actions-hero .service-hero-cta span {
    gap: 0.55rem;
    font-size: 1rem;
  }

  .service-overview-actions-hero .service-hero-cta svg {
    width: 1.1rem;
    height: 1.1rem;
  }
}

@media (min-width: 48.125rem) and (max-width: 64rem) {
  .service-overview-mobile-sticky {
    --service-overview-mobile-sticky-top: 4rem;
    --service-overview-mobile-sticky-tab-face-height: 3.02rem;
    position: fixed;
    top: calc(var(--service-overview-mobile-sticky-top) + env(safe-area-inset-top));
    right: 0;
    left: 0;
    z-index: 33;
    display: block;
    padding-inline: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-0.72rem);
    transition:
      opacity 180ms ease,
      transform 180ms ease,
      visibility 180ms step-end;
    pointer-events: none;
    overflow: visible;
  }

  .service-overview-mobile-sticky.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition:
      opacity 180ms ease,
      transform 180ms ease,
      visibility 0s linear;
  }

  .service-overview-mobile-sticky::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 5.75rem;
    background: linear-gradient(
      180deg,
      rgba(215, 205, 191, 0.88) 0%,
      rgba(233, 226, 214, 0.58) 28%,
      rgba(238, 233, 223, 0.26) 56%,
      rgba(244, 240, 232, 0) 100%
    );
    pointer-events: none;
  }

  .service-overview-mobile-sticky__inner {
    --service-overview-mobile-sticky-volume-clearance: 0.86rem;
    width: 100%;
    margin-inline: 0;
    padding: 0;
    position: relative;
    isolation: isolate;
    z-index: 1;
    pointer-events: auto;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: none;
    scroll-padding-inline: max(1rem, env(safe-area-inset-left))
      max(1rem, env(safe-area-inset-right));
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .service-overview-mobile-sticky.has-overflow-right .service-overview-mobile-sticky__inner {
    -webkit-mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 1) 0%,
      rgba(0, 0, 0, 1) calc(100% - 1.24rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.66rem),
      rgba(0, 0, 0, 0) 100%
    );
    mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 1) 0%,
      rgba(0, 0, 0, 1) calc(100% - 1.24rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.66rem),
      rgba(0, 0, 0, 0) 100%
    );
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }

  .service-overview-mobile-sticky.has-overflow-left.has-overflow-right
    .service-overview-mobile-sticky__inner {
    -webkit-mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 0.82) 0.82rem,
      rgba(0, 0, 0, 1) 1.4rem,
      rgba(0, 0, 0, 1) calc(100% - 1.24rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.66rem),
      rgba(0, 0, 0, 0) 100%
    );
    mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 0.82) 0.82rem,
      rgba(0, 0, 0, 1) 1.4rem,
      rgba(0, 0, 0, 1) calc(100% - 1.24rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.66rem),
      rgba(0, 0, 0, 0) 100%
    );
  }

  .service-overview-mobile-sticky__inner::-webkit-scrollbar {
    display: none;
  }

  .service-overview-mobile-sticky__inner::before {
    content: none;
  }

  .service-overview-mobile-sticky__inner::after {
    content: "";
    position: absolute;
    top: calc(var(--service-overview-mobile-sticky-tab-face-height) * 0.5);
    right: 0.18rem;
    width: 0.76rem;
    height: 0.62rem;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 16' fill='none'%3E%3Cpath d='M2 2l6 6-6 6M10 2l6 6-6 6' stroke='%23111111' stroke-opacity='.5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
      center / 100% 100% no-repeat;
    opacity: 0;
    pointer-events: none;
    z-index: 5;
    transition: opacity 160ms ease;
    transform: translateY(-50%);
  }

  .service-overview-mobile-sticky.has-overflow-right:not(.has-overflow-left)
    .service-overview-mobile-sticky__inner::after {
    opacity: 0.48;
    animation: service-overview-tabs-hint 1.7s ease-in-out infinite;
  }

  .service-overview-mobile-sticky__nav {
    display: inline-flex;
    gap: 0.56rem;
    align-items: flex-start;
    min-width: 100%;
    width: max-content;
    margin-top: -1px;
    padding: 0 max(1rem, env(safe-area-inset-right))
      var(--service-overview-mobile-sticky-volume-clearance) max(1rem, env(safe-area-inset-left));
    overflow: visible;
  }

  .service-overview-mobile-sticky__tab-shell {
    --service-overview-mobile-sticky-tab-radius-size: 0.98rem;
    --service-overview-mobile-sticky-tab-radius: 0 0
      var(--service-overview-mobile-sticky-tab-radius-size)
      var(--service-overview-mobile-sticky-tab-radius-size);
    --service-overview-tab-corner-radius: var(--service-overview-mobile-sticky-tab-radius);
    --grounded-volume-radius: var(--service-overview-mobile-sticky-tab-radius);
    flex: 0 0 auto;
    width: auto;
    min-width: clamp(8.3rem, 36vw, 9.15rem);
    max-width: none;
    overflow: visible;
    scroll-snap-align: start;
  }

  .service-overview-mobile-sticky__tab-shell .grounded-volume-shell__layer {
    inset: calc(1px - var(--service-overview-layer-shift)) 0 0 0;
    border-radius: var(--service-overview-tab-corner-radius);
    transform: translate(var(--service-overview-layer-shift), var(--service-overview-layer-shift));
    clip-path: none;
    transition: transform 200ms ease;
  }

  .service-overview-mobile-sticky__tab-shell .grounded-volume-shell__layer--1 {
    --service-overview-layer-shift: 1px;
  }

  .service-overview-mobile-sticky__tab-shell .grounded-volume-shell__layer--2 {
    --service-overview-layer-shift: 2px;
  }

  .service-overview-mobile-sticky__tab-shell .grounded-volume-shell__layer--3 {
    --service-overview-layer-shift: 3px;
  }

  .service-overview-mobile-sticky__tab-shell .grounded-volume-shell__layer--4 {
    --service-overview-layer-shift: 4px;
  }

  .service-overview-mobile-sticky__tab-shell .grounded-volume-shell__layer--5 {
    --service-overview-layer-shift: 5px;
  }

  .service-overview-mobile-sticky__tab-shell .grounded-volume-shell__layer--6 {
    --service-overview-layer-shift: 6px;
    clip-path: none;
    filter: none;
  }

  .service-overview-mobile-sticky__button.service-overview-tab,
  .service-overview-mobile-sticky__button.service-overview-tab.is-active {
    min-height: 3.02rem;
    width: 100%;
    max-width: none;
    padding: 0.44rem 0.8rem 0.52rem;
    border-top: none;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--service-overview-mobile-sticky-tab-radius-size);
    border-bottom-right-radius: var(--service-overview-mobile-sticky-tab-radius-size);
    font-size: 0.86rem;
    line-height: 1.08;
    letter-spacing: -0.018em;
  }

  .service-overview-mobile-sticky__button.service-overview-tab.is-active {
    border-right-color: #9fd01c;
    border-bottom-color: #9fd01c;
  }

  .service-overview-mobile-sticky__button.service-overview-tab::after,
  .service-overview-mobile-sticky__button.service-overview-tab.is-active::after {
    content: none;
  }

  .service-overview-mobile-sticky__button.service-overview-tab:focus-visible {
    outline: 3px solid rgba(201, 255, 59, 0.8);
    outline-offset: 3px;
  }
}

@media (max-width: 47.999rem) {
  .service-overview-mobile-sticky {
    --service-overview-mobile-sticky-top: 4rem;
    --service-overview-mobile-sticky-tab-face-height: 3.02rem;
    position: fixed;
    top: calc(var(--service-overview-mobile-sticky-top) + env(safe-area-inset-top));
    right: 0;
    left: 0;
    z-index: 33;
    display: block;
    padding-inline: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-0.72rem);
    transition:
      opacity 180ms ease,
      transform 180ms ease,
      visibility 180ms step-end;
    pointer-events: none;
    overflow: visible;
  }

  .service-overview-mobile-sticky.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition:
      opacity 180ms ease,
      transform 180ms ease,
      visibility 0s linear;
  }

  .service-overview-mobile-sticky::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 5.75rem;
    background: linear-gradient(
      180deg,
      rgba(215, 205, 191, 0.88) 0%,
      rgba(233, 226, 214, 0.58) 28%,
      rgba(238, 233, 223, 0.26) 56%,
      rgba(244, 240, 232, 0) 100%
    );
    pointer-events: none;
  }

  .service-overview-mobile-sticky__inner {
    --service-overview-mobile-sticky-volume-clearance: 0.86rem;
    width: 100%;
    margin-inline: 0;
    padding: 0;
    position: relative;
    isolation: isolate;
    z-index: 1;
    pointer-events: auto;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: none;
    scroll-padding-inline: max(1rem, env(safe-area-inset-left))
      max(1rem, env(safe-area-inset-right));
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .service-overview-mobile-sticky.has-overflow-right .service-overview-mobile-sticky__inner {
    -webkit-mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 1) 0%,
      rgba(0, 0, 0, 1) calc(100% - 1.24rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.66rem),
      rgba(0, 0, 0, 0) 100%
    );
    mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 1) 0%,
      rgba(0, 0, 0, 1) calc(100% - 1.24rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.66rem),
      rgba(0, 0, 0, 0) 100%
    );
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }

  .service-overview-mobile-sticky.has-overflow-left.has-overflow-right
    .service-overview-mobile-sticky__inner {
    -webkit-mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 0.82) 0.82rem,
      rgba(0, 0, 0, 1) 1.4rem,
      rgba(0, 0, 0, 1) calc(100% - 1.24rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.66rem),
      rgba(0, 0, 0, 0) 100%
    );
    mask-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 0.82) 0.82rem,
      rgba(0, 0, 0, 1) 1.4rem,
      rgba(0, 0, 0, 1) calc(100% - 1.24rem),
      rgba(0, 0, 0, 0.9) calc(100% - 0.66rem),
      rgba(0, 0, 0, 0) 100%
    );
  }

  .service-overview-mobile-sticky__inner::-webkit-scrollbar {
    display: none;
  }

  .service-overview-mobile-sticky__inner::before {
    content: none;
  }

  .service-overview-mobile-sticky__inner::after {
    content: "";
    position: absolute;
    top: calc(var(--service-overview-mobile-sticky-tab-face-height) * 0.5);
    right: 0.18rem;
    width: 0.76rem;
    height: 0.62rem;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 16' fill='none'%3E%3Cpath d='M2 2l6 6-6 6M10 2l6 6-6 6' stroke='%23111111' stroke-opacity='.5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
      center / 100% 100% no-repeat;
    opacity: 0;
    pointer-events: none;
    z-index: 5;
    transition: opacity 160ms ease;
    transform: translateY(-50%);
  }

  .service-overview-mobile-sticky.has-overflow-right:not(.has-overflow-left)
    .service-overview-mobile-sticky__inner::after {
    opacity: 0.48;
    animation: service-overview-tabs-hint 1.7s ease-in-out infinite;
  }

  .service-overview-mobile-sticky__nav {
    display: inline-flex;
    gap: 0.56rem;
    align-items: flex-start;
    min-width: 100%;
    width: max-content;
    margin-top: -1px;
    padding: 0 max(1rem, env(safe-area-inset-right))
      var(--service-overview-mobile-sticky-volume-clearance) max(1rem, env(safe-area-inset-left));
    overflow: visible;
  }

  .service-overview-mobile-sticky__tab-shell {
    --service-overview-mobile-sticky-tab-radius-size: 0.98rem;
    --service-overview-mobile-sticky-tab-radius: 0 0
      var(--service-overview-mobile-sticky-tab-radius-size)
      var(--service-overview-mobile-sticky-tab-radius-size);
    --service-overview-tab-corner-radius: var(--service-overview-mobile-sticky-tab-radius);
    --grounded-volume-radius: var(--service-overview-mobile-sticky-tab-radius);
    flex: 0 0 auto;
    width: auto;
    min-width: clamp(8.3rem, 36vw, 9.15rem);
    max-width: none;
    overflow: visible;
    scroll-snap-align: start;
  }

  .service-overview-mobile-sticky__tab-shell .grounded-volume-shell__layer {
    inset: calc(1px - var(--service-overview-layer-shift)) 0 0 0;
    border-radius: var(--service-overview-tab-corner-radius);
    transform: translate(var(--service-overview-layer-shift), var(--service-overview-layer-shift));
    clip-path: none;
    transition: transform 200ms ease;
  }

  .service-overview-mobile-sticky__tab-shell .grounded-volume-shell__layer--1 {
    --service-overview-layer-shift: 1px;
  }

  .service-overview-mobile-sticky__tab-shell .grounded-volume-shell__layer--2 {
    --service-overview-layer-shift: 2px;
  }

  .service-overview-mobile-sticky__tab-shell .grounded-volume-shell__layer--3 {
    --service-overview-layer-shift: 3px;
  }

  .service-overview-mobile-sticky__tab-shell .grounded-volume-shell__layer--4 {
    --service-overview-layer-shift: 4px;
  }

  .service-overview-mobile-sticky__tab-shell .grounded-volume-shell__layer--5 {
    --service-overview-layer-shift: 5px;
  }

  .service-overview-mobile-sticky__tab-shell .grounded-volume-shell__layer--6 {
    --service-overview-layer-shift: 6px;
    clip-path: none;
    filter: none;
  }

  .service-overview-mobile-sticky__button.service-overview-tab,
  .service-overview-mobile-sticky__button.service-overview-tab.is-active {
    min-height: 3.02rem;
    width: 100%;
    max-width: none;
    padding: 0.44rem 0.8rem 0.52rem;
    border-top: none;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--service-overview-mobile-sticky-tab-radius-size);
    border-bottom-right-radius: var(--service-overview-mobile-sticky-tab-radius-size);
    font-size: 0.86rem;
    line-height: 1.08;
    letter-spacing: -0.018em;
  }

  .service-overview-mobile-sticky__button.service-overview-tab.is-active {
    border-right-color: #9fd01c;
    border-bottom-color: #9fd01c;
  }

  .service-overview-mobile-sticky__button.service-overview-tab::after,
  .service-overview-mobile-sticky__button.service-overview-tab.is-active::after {
    content: none;
  }

  .service-overview-mobile-sticky__button.service-overview-tab:focus-visible {
    outline: 3px solid rgba(201, 255, 59, 0.8);
    outline-offset: 3px;
  }
}

@media (max-width: 389px) {
  .section-head.section-head--left.deliverables-tabs-head {
    max-width: 54rem;
    margin-bottom: 1rem;
  }

  .service-overview-panel-title {
    font-size: 1.26rem;
    line-height: 1.04;
  }

  .service-overview-panel-head--fit .service-overview-panel-title,
  .service-overview-panel-head--unfit .service-overview-panel-title,
  .service-overview-panel-head--process .service-overview-panel-title,
  .service-overview-panel-head--values .service-overview-panel-title,
  .service-overview-panel-head--experience .service-overview-panel-title {
    font-size: 1.26rem;
    line-height: 1.04;
    letter-spacing: -0.032em;
  }

  .service-overview-panel--why .service-overview-panel-title {
    font-size: 1.26rem;
    line-height: 1.04;
    letter-spacing: -0.032em;
  }

  .service-overview-mobile-sticky__inner {
    --service-overview-mobile-sticky-volume-clearance: 0.78rem;
  }

  .service-overview-mobile-sticky__tab-shell {
    min-width: clamp(7.95rem, 37vw, 8.75rem);
  }

  .service-overview-mobile-sticky__button.service-overview-tab,
  .service-overview-mobile-sticky__button.service-overview-tab.is-active {
    min-height: 2.84rem;
    padding-top: 0.4rem;
    padding-bottom: 0.48rem;
    font-size: 0.82rem;
  }

  .service-overview-actions-hero .service-hero-cta {
    height: 3.78rem;
  }

  .service-overview-actions-hero .service-hero-cta span {
    font-size: 0.96rem;
  }
}

.offer-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  align-items: start;
}

.offer-copy {
  min-width: 0;
  display: grid;
  gap: 0.9rem;
  align-content: start;
}

.offer-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  width: fit-content;
  max-width: 100%;
  margin-bottom: 0.25rem;
  padding: 0.7rem 1rem;
  border: 1px solid rgba(23, 23, 23, 0.12);
  border-radius: 999px;
  background: #f5f0e8;
  color: rgba(17, 17, 17, 0.9);
  font-size: 0.88rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  box-shadow: none;
}

.offer-badge-dot {
  position: relative;
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 999px;
  background: #9fd01c;
  box-shadow: none;
  animation: offer-dot-glow 1.9s ease-in-out infinite;
}

.offer-badge-dot::after {
  content: "";
  position: absolute;
  inset: -0.35rem;
  border-radius: inherit;
  background: rgba(159, 208, 28, 0.32);
  animation: offer-dot-pulse 1.9s ease-out infinite;
}

.offer-title {
  margin: 0;
  max-width: none;
  width: 100%;
  color: #111111;
  font-size: clamp(2.35rem, 4vw, 3.8rem);
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: -0.05em;
}

.offer-title span {
  display: inline;
  padding: 0;
  border-radius: 0;
  background: transparent;
}

.offer-description {
  max-width: 40rem;
  margin: 0;
  color: rgba(17, 17, 17, 0.78);
  font-size: 1.08rem;
  line-height: 1.5;
}

.offer-meta {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.75rem;
  max-width: none;
  margin-bottom: 0;
}

.offer-meta-item {
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.95rem;
  border: 1px solid rgba(23, 23, 23, 0.12);
  border-radius: 0.95rem;
  background: #d8ef7c;
  box-shadow: none;
}

.offer-meta-label {
  color: rgba(17, 17, 17, 0.54);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.offer-meta-value {
  color: #111111;
  font-size: 1.12rem;
  font-weight: 700;
  line-height: 1.25;
}

.offer-benefits {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.9rem;
  max-width: none;
}

.offer-benefit {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  padding: 0.95rem 1rem;
  border: 1px solid rgba(23, 23, 23, 0.12);
  border-radius: 0.95rem;
  background: #f5f0e8;
  box-shadow: none;
  transition: none;
}

.offer-benefit:hover {
  transform: none;
  border-color: rgba(23, 23, 23, 0.12);
  background: #f5f0e8;
}

.offer-benefit-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 999px;
}

.offer-benefit-icon--lime {
  color: #6f8d15;
  background: transparent;
}

.offer-benefit-icon--coral {
  color: #ff5a36;
  background: transparent;
}

.offer-benefit-text {
  color: #111111;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
}

.offer-pricing {
  position: relative;
  width: min(100%, 22.75rem);
  justify-self: center;
  border: 1px solid rgba(137, 184, 25, 0.85);
  border-radius: 1.1rem;
  background: #ffffff;
  box-shadow: none;
  overflow: hidden;
}

.offer-pricing::before {
  content: none;
}

.offer-pricing-inner {
  display: flex;
  flex-direction: column;
  gap: 1.15rem;
  min-height: 100%;
  padding: 1.5rem 1.4rem 1.35rem;
  text-align: center;
}

.offer-pricing-main {
  display: grid;
  flex: 1 1 auto;
  gap: 0.9rem;
  align-content: center;
  justify-items: center;
}

.offer-pricing-footer {
  display: grid;
  gap: 0.85rem;
}

.offer-pricing-kicker {
  display: inline-flex;
  align-self: center;
  justify-self: center;
  padding: 0.7rem 1rem;
  border: 1px solid rgba(159, 208, 28, 0.5);
  border-radius: 999px;
  background: #dced98;
  color: rgba(17, 17, 17, 0.82);
  font-size: 0.86rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

.offer-price-label {
  margin: 0;
  color: rgba(17, 17, 17, 0.56);
  font-size: 0.92rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.offer-price-old {
  display: inline-flex;
  align-items: baseline;
  justify-self: center;
  gap: 0.65rem;
  margin: 0;
  color: rgba(17, 17, 17, 0.46);
  font-size: 1.85rem;
  font-weight: 800;
  line-height: 1;
}

.offer-price-old-value {
  text-decoration: line-through;
  text-decoration-thickness: 2px;
}

.offer-price-old-discount {
  color: #ff5a36;
  font-size: 1.05rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  line-height: 1;
}

.offer-price-current {
  margin: 0;
  color: #111111;
  font-size: clamp(3.8rem, 5.6vw, 4.7rem);
  font-weight: 900;
  line-height: 0.92;
  letter-spacing: -0.05em;
}

.offer-price-note {
  margin: 0;
  color: rgba(17, 17, 17, 0.66);
  max-width: 20rem;
  justify-self: center;
  font-size: 0.98rem;
  line-height: 1.46;
}

.offer-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.875rem;
  width: 100%;
  min-height: 3.85rem;
  border: 0;
  border-radius: 1rem;
  background: #111111;
  color: #ffffff;
  font-size: 1.1rem;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
  box-shadow: none;
  transition: opacity 180ms ease;
}

.offer-cta:hover {
  transform: none;
  background: #111111;
  box-shadow: none;
  opacity: 0.92;
}

.offer-cta:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(17, 17, 17, 0.16);
}

.offer-availability {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  width: 100%;
  min-height: 2.85rem;
  padding: 0.75rem 0.9rem;
  border: 1px solid rgba(255, 90, 54, 0.24);
  border-radius: 999px;
  background: #ffe2d8;
  color: #111111;
  font-size: 0.88rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.offer-availability-dot {
  position: relative;
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 999px;
  background: #ff5a36;
  box-shadow: none;
  animation: offer-dot-glow 1.7s ease-in-out infinite;
}

.offer-availability-dot::after {
  content: "";
  position: absolute;
  inset: -0.35rem;
  border-radius: inherit;
  background: rgba(255, 90, 54, 0.28);
  animation: offer-dot-pulse 1.7s ease-out infinite;
}

@media (max-width: 47.999rem) {
  .private-practice-section {
    padding-top: 4.7rem;
    padding-bottom: 4.9rem;
  }

  .offer-surface {
    padding: 1.05rem 1rem 1.08rem;
  }

  .offer-grid {
    gap: 1.15rem;
  }

  .offer-copy {
    display: contents;
  }

  .offer-copy > .section-head {
    order: 1;
    gap: 0.9rem;
    max-width: none;
    margin-bottom: 0 !important;
  }

  .offer-copy > .section-head .section-kicker {
    margin-bottom: 0;
    font-size: 0.72rem;
    letter-spacing: 0.12em;
  }

  .offer-copy > .section-head .section-title {
    width: 100%;
    max-width: none;
    font-size: clamp(1.39rem, 5.92vw, 1.54rem);
    line-height: 1.04;
    letter-spacing: -0.032em;
    text-wrap: pretty;
  }

  .offer-copy > .section-head .section-title span {
    display: inline;
  }

  .offer-copy > .section-head .section-lead {
    max-width: none;
    color: rgba(17, 17, 17, 0.76);
    font-size: 0.98rem;
    line-height: 1.55;
  }

  .offer-pricing {
    order: 2;
    width: 100%;
    max-width: none;
    margin-top: 0.1rem;
    justify-self: stretch;
  }

  .offer-pricing-inner {
    gap: 0.95rem;
    padding: 1.15rem 1rem 1rem;
  }

  .offer-pricing-main {
    gap: 0.74rem;
  }

  .offer-pricing-footer {
    gap: 0.72rem;
  }

  .offer-pricing-kicker {
    padding: 0.58rem 0.8rem;
    font-size: 0.74rem;
    letter-spacing: 0.06em;
  }

  .offer-price-label {
    font-size: 0.78rem;
    letter-spacing: 0.07em;
  }

  .offer-price-old {
    gap: 0.5rem;
    font-size: 1.52rem;
  }

  .offer-price-old-discount {
    font-size: 0.92rem;
  }

  .offer-price-current {
    font-size: clamp(3.05rem, 13vw, 3.55rem);
    line-height: 0.94;
  }

  .offer-price-note {
    max-width: 18.25rem;
    font-size: 0.92rem;
    line-height: 1.48;
  }

  .offer-cta {
    gap: 0.72rem;
    min-height: 3.5rem;
    font-size: 1.02rem;
  }

  .offer-availability {
    min-height: 2.56rem;
    padding: 0.68rem 0.84rem;
    font-size: 0.78rem;
    letter-spacing: 0.06em;
  }

  .offer-meta {
    order: 3;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.66rem;
  }

  .offer-meta-item {
    gap: 0.28rem;
    min-height: 4rem;
    padding: 0.72rem 0.8rem;
  }

  .offer-meta-label {
    font-size: 0.68rem;
    letter-spacing: 0.07em;
  }

  .offer-meta-value {
    font-size: 0.98rem;
    line-height: 1.28;
  }

  .offer-benefits {
    order: 4;
    gap: 0.72rem;
  }

  .offer-benefit {
    align-items: flex-start;
    gap: 0.72rem;
    padding: 0.84rem 0.9rem;
  }

  .offer-benefit-icon {
    width: 1.5rem;
    height: 1.5rem;
    margin-top: 0.08rem;
  }

  .offer-benefit-text {
    font-size: 0.96rem;
    line-height: 1.4;
  }
}

@media (max-width: 389px) {
  .private-practice-section {
    padding-top: 4.35rem;
    padding-bottom: 4.55rem;
  }

  .offer-copy > .section-head .section-title {
    width: 100%;
    max-width: none;
    font-size: 1.26rem;
    line-height: 1.04;
    letter-spacing: -0.032em;
  }

  .offer-meta {
    grid-template-columns: 1fr;
    gap: 0.56rem;
  }

  .offer-price-current {
    font-size: 2.86rem;
  }

  .offer-pricing-kicker {
    font-size: 0.7rem;
  }

  .offer-availability {
    font-size: 0.74rem;
  }
}

@keyframes offer-dot-pulse {
  0% {
    transform: scale(0.72);
    opacity: 0.75;
  }

  70% {
    transform: scale(1.75);
    opacity: 0;
  }

  100% {
    transform: scale(1.75);
    opacity: 0;
  }
}

@keyframes offer-dot-glow {
  0%,
  100% {
    transform: scale(1);
    opacity: 1;
  }

  50% {
    transform: scale(1.08);
    opacity: 0.88;
  }
}

@media (min-width: 768px) {
  .offer-surface {
    padding: 1.5rem 1.75rem 1.75rem;
  }

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

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

  .offer-benefit--wide {
    grid-column: 1 / -1;
  }
}

@media (min-width: 1024px) {
  .offer-title {
    white-space: nowrap;
  }

  .offer-grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(22.75rem, 24rem);
    gap: 2rem;
    align-items: stretch;
  }

  .offer-pricing {
    width: 100%;
    max-width: 24rem;
    justify-self: stretch;
    align-self: stretch;
    margin-top: 0;
    min-height: 100%;
  }

  .offer-pricing-inner {
    height: 100%;
    padding: 1.7rem 1.5rem 1.35rem;
  }
}

@media (min-width: 1280px) {
  .offer-grid {
    grid-template-columns: minmax(0, 1.04fr) minmax(23rem, 24.5rem);
    gap: 2.25rem;
  }
}

.service-audience-section {
  position: relative;
  background: #fffcf5;
}

.service-audience-shell {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 4rem;
  max-width: none;
  margin: 0;
}

.service-audience-hero-shell,
.service-audience-overview-shell,
.service-audience-card-shell,
.service-audience-note-shell,
.service-audience-unfit-panel-shell {
  position: relative;
  isolation: isolate;
}

.service-audience-hero-shell {
  --grounded-volume-radius: 1.5rem;
}

.service-audience-overview-shell {
  --grounded-volume-radius: 1.35rem;
}

.service-audience-card-shell,
.service-audience-note-shell {
  --grounded-volume-radius: 1.25rem;
}

.service-audience-unfit-panel-shell {
  --grounded-volume-radius: 1.35rem;
}

.service-audience-hero {
  position: relative;
  z-index: 20;
  display: grid;
  gap: 2rem;
  padding: 2rem;
  border: 1px solid #d1c8bb;
  border-radius: 1.5rem;
  background: #ffffff;
}

.service-audience-copy {
  display: grid;
  gap: 1.1rem;
  align-content: start;
}

.service-audience-copy .section-head {
  margin-bottom: 0;
}

.service-audience-visual {
  width: min(100%, 28rem);
  margin: 0;
  justify-self: start;
}

.service-audience-visual-image {
  display: block;
  width: 100%;
  height: auto;
}

.service-audience-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  width: fit-content;
  max-width: 100%;
  padding: 0.75rem 1rem;
  border: 1px solid #d1c8bb;
  border-radius: 999px;
  background: #ffffff;
  color: #171717;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1;
  text-transform: uppercase;
}

.service-audience-eyebrow-dot {
  width: 0.65rem;
  height: 0.65rem;
  border-radius: 999px;
  background: #c9ff3b;
  box-shadow: 0 0 0 0.25rem rgba(201, 255, 59, 0.28);
}

.service-audience-title {
  margin: 0;
  max-width: 10ch;
  color: #111111;
  font-size: clamp(2.35rem, 4vw, 3.8rem);
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: -0.05em;
}

.service-audience-title span {
  position: relative;
  display: inline-block;
}

.service-audience-title span::before {
  content: "";
  position: absolute;
  left: -0.08em;
  right: -0.08em;
  bottom: 0.06em;
  z-index: -1;
  height: 0.34em;
  border-radius: 999px;
  background: #c9ff3b;
}

.service-audience-lead {
  max-width: 40rem;
  margin: 0;
  color: rgba(17, 17, 17, 0.72);
  font-size: 1.12rem;
  line-height: 1.55;
}

.service-audience-overview-shell {
  height: 100%;
}

.service-audience-overview {
  position: relative;
  z-index: 20;
  display: grid;
  gap: 1rem;
  min-height: 100%;
  padding: 1.4rem;
  border: 1px solid #9fd01c;
  border-radius: 1.35rem;
  background: #c9ff3b;
  color: #111111;
}

.service-audience-overview-label {
  margin: 0;
  color: rgba(17, 17, 17, 0.62);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1;
  text-transform: uppercase;
}

.service-audience-overview-title {
  max-width: 20rem;
  margin: 0;
  font-size: 1.45rem;
  font-weight: 900;
  line-height: 1.15;
  color: #111111;
}

.service-audience-overview-list {
  display: grid;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.service-audience-overview-list li {
  display: grid;
  gap: 0.18rem;
  padding: 0.85rem 0.95rem;
  border: 1px solid rgba(17, 17, 17, 0.12);
  border-radius: 1rem;
  background: rgba(255, 252, 245, 0.36);
}

.service-audience-overview-key {
  color: rgba(23, 55, 3, 0.9);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.service-audience-overview-value {
  color: rgba(17, 17, 17, 0.9);
  font-size: 0.96rem;
  font-weight: 600;
  line-height: 1.35;
}

.service-audience-fit,
.service-audience-unfit {
  display: grid;
  gap: 1.6rem;
}

.service-audience-fit {
  margin-top: clamp(0.75rem, 1.2vw, 1.1rem);
}

.service-audience-unfit {
  padding-top: 3.5rem;
  border-top: 1px solid rgba(23, 23, 23, 0.12);
}

.service-audience-head,
.service-audience-unfit-head {
  display: grid;
  gap: 1rem;
  align-items: end;
}

.service-audience-kicker {
  margin: 0 0 0.6rem;
  color: rgba(17, 17, 17, 0.56);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1;
  text-transform: uppercase;
}

.service-audience-kicker .section-lead-highlight {
  padding: 0.14rem 0.42rem 0.18rem;
}

.service-audience-kicker--coral {
  color: #d1482a;
}

.service-audience-subtitle {
  margin: 0;
  max-width: 100%;
  color: #111111;
  font-size: clamp(2rem, 3.5vw, 3.35rem);
  font-weight: 900;
  line-height: 0.96;
  letter-spacing: -0.05em;
}

.service-audience-subtitle span {
  color: #ff5a36;
}

.service-audience-subtitle .service-audience-marker-highlight__text {
  color: #111111;
}

.service-audience-marker-highlight__bg {
  top: 0.18em;
  right: 0;
  bottom: 0.08em;
  left: 0;
}

.service-audience-head-note {
  max-width: 34rem;
  margin: 0;
  color: rgba(17, 17, 17, 0.66);
  font-size: 1rem;
  line-height: 1.55;
}

.service-audience-fit .service-audience-head {
  grid-template-columns: 1fr;
}

.service-audience-fit .service-audience-subtitle {
  max-width: min(100%, 48rem);
}

.service-audience-fit .service-audience-head-note {
  max-width: 100%;
}

.service-audience-signals-shell {
  position: relative;
  isolation: isolate;
}

.service-audience-signals {
  position: relative;
  z-index: 20;
  display: grid;
  gap: 0;
  padding: 1.25rem;
  border: 1px solid rgba(159, 208, 28, 0.88);
  border-radius: 1.35rem;
  background: #ffffff;
}

.service-audience-signals-head {
  display: none;
}

.service-audience-signals-kicker,
.service-audience-signals-note {
  display: none;
}

.service-audience-signals-head {
  gap: 0.75rem;
  padding-bottom: 1rem;
  border-bottom: 1px dashed rgba(17, 17, 17, 0.16);
}

.service-audience-signals-kicker {
  margin: 0;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  width: fit-content;
  max-width: 100%;
  padding: 0.6rem 0.8rem;
  border: 1px solid rgba(159, 208, 28, 0.44);
  border-radius: 999px;
  background: #f8f4ec;
  color: rgba(17, 17, 17, 0.72);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1;
  text-transform: uppercase;
}

.service-audience-signals-kicker::before {
  content: "";
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 999px;
  background: #9fd01c;
  box-shadow: 0 0 0 0.18rem rgba(159, 208, 28, 0.18);
  flex: 0 0 auto;
}

.service-audience-signals-note {
  margin: 0;
  max-width: 56rem;
  padding: 0.95rem 1.05rem;
  border: 1px dashed rgba(17, 17, 17, 0.16);
  border-radius: 1rem;
  background: #fbf8f1;
  color: rgba(17, 17, 17, 0.68);
  font-size: 0.98rem;
  font-weight: 500;
  line-height: 1.55;
}

.service-audience-signals-grid {
  position: relative;
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.service-audience-signal {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
  align-items: start;
  padding: 1rem 0;
  border-bottom: 1px dashed rgba(17, 17, 17, 0.16);
}

.service-audience-signals-grid > li:last-child {
  border-bottom: 0;
}

.service-audience-signal-index {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.95rem;
  height: 2.95rem;
  padding: 0 0.75rem;
  border: 1px solid rgba(159, 208, 28, 0.88);
  border-radius: 0.95rem;
  background: #c9ff3b;
  color: #111111;
  font-size: 0.96rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.06em;
}

.service-audience-signal-text {
  margin: 0;
  color: rgba(17, 17, 17, 0.82);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.58;
}

.service-audience-grid {
  display: grid;
  gap: 1.4rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.service-audience-grid--fit {
  grid-template-columns: 1fr;
}

.service-audience-grid--unfit {
  grid-template-columns: 1fr;
}

.service-audience-unfit-panel {
  position: relative;
  z-index: 20;
  overflow: hidden;
  gap: 0;
  padding: 0.95rem 1.1rem;
  border: 1px solid #ff6c4c;
  border-radius: 1.35rem;
  background: #ffffff;
}

.service-audience-unfit-panel > .service-audience-card-shell {
  position: static;
  height: auto;
}

.service-audience-unfit-panel > .service-audience-card-shell .grounded-volume-shell__layer {
  display: none;
}

.service-audience-unfit-panel > .service-audience-card-shell.offer-shell {
  isolation: auto;
}

.service-audience-unfit-panel > .service-audience-card-shell .service-audience-card {
  min-height: 0;
  padding: 0.95rem 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  transition: none;
}

.service-audience-unfit-panel > .service-audience-card-shell .service-audience-card--unfit {
  gap: 1rem;
  align-items: flex-start;
  border-color: transparent;
  border-bottom: 1px dashed rgba(17, 17, 17, 0.16);
}

.service-audience-unfit-panel
  > .service-audience-card-shell:last-child
  .service-audience-card--unfit {
  border-bottom: 0;
}

.service-audience-unfit-panel > .service-audience-card-shell .service-audience-card-text {
  color: rgba(17, 17, 17, 0.84);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.55;
}

.service-audience-card-shell {
  height: 100%;
}

.service-audience-card {
  position: relative;
  z-index: 20;
  min-height: 100%;
  padding: 1.15rem;
  border: 1px solid #9fd01c;
  border-radius: 1.25rem;
  background: #ffffff;
  transition: transform 180ms ease;
}

#experience .service-audience-card-shell.offer-shell:hover .service-audience-card,
#experience .service-audience-card-shell.offer-shell .service-audience-card {
  transform: none;
  transition: none;
}

#experience {
  overflow: hidden;
}

#experience .experience-shell {
  display: grid;
  gap: clamp(1.8rem, 3vw, 2.75rem);
}

#experience .experience-head {
  gap: 1rem;
  max-width: 48rem;
}

#experience .experience-head .service-audience-head-note {
  max-width: 41rem;
  font-size: 1.05rem;
  line-height: 1.68;
}

#experience .experience-layout {
  display: grid;
  gap: 1.25rem;
}

#experience .experience-main-shell,
#experience .experience-it-shell,
#experience .experience-why-shell {
  position: relative;
  isolation: isolate;
}

#experience .experience-main-shell {
  --grounded-volume-radius: 1.55rem;
}

#experience .experience-it-shell,
#experience .experience-why-shell {
  --grounded-volume-radius: 1.35rem;
}

#experience .experience-main-card,
#experience .experience-it-card,
#experience .experience-why-card {
  position: relative;
  z-index: 20;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  height: 100%;
}

#experience .experience-main-card {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding: 1.5rem;
  border: 1px solid #d0c7ba;
  border-radius: 1.55rem;
  background: #ffffff;
}

#experience .experience-main-copy {
  display: flex;
  flex-direction: column;
}

#experience .experience-main-intro {
  color: #111111;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.6;
}

#experience .experience-metrics-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  margin-top: 1.5rem;
}

#experience .experience-metric-block {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.5rem;
  background: #fdfdfc;
  border: 1px solid rgba(17, 17, 17, 0.08);
  border-radius: 1.25rem;
  padding: 1.5rem 1.25rem;
  box-shadow: 0 4px 20px -10px rgba(17, 17, 17, 0.05);
}

#experience .metric-value {
  margin: 0;
  color: #111111;
  font-size: 1.45rem;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

#experience .metric-label {
  margin: 0;
  color: rgba(17, 17, 17, 0.55);
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: 1.4;
}

#experience .experience-main-intro,
#experience .experience-main-text,
#experience .experience-main-foot-text {
  margin: 0;
  color: rgba(17, 17, 17, 0.82);
  line-height: 1.65;
}

#experience .experience-main-intro {
  color: #111111;
  font-size: 1.15rem;
  font-weight: 500;
  line-height: 1.6;
}

#experience .experience-main-foot-text {
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 1.6;
}

#experience .experience-capability-head {
  display: grid;
  gap: 0.35rem;
  margin-top: 2.5rem;
  padding-top: 1.85rem;
  border-top: 1px solid rgba(17, 17, 17, 0.08);
}

#experience .experience-capability-kicker,
#experience .experience-main-foot-label,
#experience .experience-principles-label,
#experience .experience-why-note-label {
  margin: 0;
  color: rgba(17, 17, 17, 0.52);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1;
  text-transform: uppercase;
}

#experience .experience-capability-note {
  margin: 0;
  color: rgba(17, 17, 17, 0.64);
  font-size: 0.95rem;
  font-weight: 500;
  line-height: 1.5;
}

#experience .experience-capability-grid {
  display: grid;
  gap: 1.6rem;
}

#experience .experience-capability {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1.15rem;
  align-items: start;
  padding: 0;
}

#experience .experience-capability-text {
  margin: 0;
  color: #111111;
  font-size: 1.05rem;
  font-weight: 500;
  line-height: 1.5;
}

#experience .experience-bottom {
  display: grid;
  gap: 1.25rem;
}

#experience .experience-main-foot {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.5rem 1.5rem 1.5rem 1.85rem;
  margin-top: 3.5rem;
  border-left: 3px solid #9fd01c;
  background: #fdfcf9;
  border-radius: 0 1rem 1rem 0;
}

#experience .experience-it-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  gap: 1.05rem;
  padding: 1.4rem;
  border: 1px solid #171717;
  border-radius: 1.25rem;
  background: #ffffff;
}

#experience .experience-deco-icon {
  position: absolute;
  top: 1rem;
  right: 1.4rem;
  width: 150px;
  height: 150px;
  object-fit: cover;
  pointer-events: none;
  z-index: 10;
}

#experience .experience-deco-main {
  width: 220px;
  height: 220px;
  top: 1.5rem;
  right: 1.5rem;
}

#experience .experience-it-text,
#experience .experience-why-text {
  margin: 0;
  padding-right: 120px;
  color: rgba(17, 17, 17, 0.84);
  font-size: 0.98rem;
  font-weight: 500;
  line-height: 1.62;
}

#experience .experience-it-list-shell,
#experience .experience-principles-shell {
  display: grid;
  gap: 0.8rem;
  margin-top: 1.5rem;
}

#experience .experience-principles-label {
  margin: 0;
  color: rgba(17, 17, 17, 0.52);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

#experience .experience-it-list,
#experience .experience-principles {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

#experience .experience-it-list li,
#experience .experience-principles li {
  position: relative;
  margin: 0;
  padding: 0 0 0 1.25rem;
  color: rgba(17, 17, 17, 0.9);
  font-size: 0.96rem;
  font-weight: 500;
  line-height: 1.45;
  text-decoration: underline;
  text-decoration-color: #9fd01c;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}

#experience .experience-it-list li::before,
#experience .experience-principles li::before {
  content: "";
  position: absolute;
  top: 0.55rem;
  left: 0;
  width: 0.35rem;
  height: 0.35rem;
  border-radius: 999px;
  background: #111111;
}

#experience .experience-why-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  gap: 1.05rem;
  padding: 1.55rem;
  border: 1px solid #9fd01c;
  border-radius: 1.35rem;
  background: #ffffff;
}

#experience .experience-why-title {
  margin: 0;
  color: #111111;
  max-width: 8ch;
  font-size: clamp(1.42rem, 1.85vw, 1.78rem);
  font-weight: 800;
  line-height: 0.98;
  letter-spacing: -0.04em;
}

#experience .experience-why-note {
  display: grid;
  gap: 0.35rem;
  margin-top: auto;
  padding-top: 1rem;
  border-top: 1px dotted rgba(17, 17, 17, 0.15);
  color: #111111;
  font-size: 0.96rem;
  font-weight: 500;
  line-height: 1.48;
}

#experience .experience-why-note-label {
  color: #9fd01c;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.service-audience-card--fit {
  display: grid;
  gap: 0.9rem;
  align-content: start;
}

.service-audience-card-index {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.85rem;
  min-width: 2.85rem;
  height: 2.85rem;
  border: 1px solid #9fd01c;
  border-radius: 0.95rem;
  background: #ffffff;
  color: #111111;
  font-size: 0.98rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1;
}

.service-audience-card-text {
  margin: 0;
  color: rgba(17, 17, 17, 0.82);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.55;
}

.service-audience-card--unfit {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  border-color: #ff6c4c;
}

.service-audience-card-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 0.95rem;
  background: #ff5a36;
  color: #ffffff;
  border: 1px solid #de4a2a;
}

.service-audience-card-icon svg {
  width: 1.1rem;
  height: 1.1rem;
}

.service-audience-note-shell {
  position: relative;
  isolation: isolate;
}

.service-audience-note {
  position: relative;
  z-index: 20;
  display: grid;
  gap: 1rem;
  padding: 1.35rem;
  border: 1px solid #171717;
  border-radius: 1.25rem;
  background: #ffffff;
}

.service-audience-note-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 0.95rem;
  background: #171717;
  color: #c9ff3b;
  font-size: 1.1rem;
  font-weight: 800;
}

.service-audience-note-label {
  margin: 0 0 0.4rem;
  color: rgba(17, 17, 17, 0.54);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1;
  text-transform: uppercase;
}

.service-audience-note-text {
  margin: 0;
  color: rgba(17, 17, 17, 0.8);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.6;
}

.service-process-section {
  overflow: hidden;
}

.service-process-shell {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 3.25rem;
}

.service-process-list {
  position: relative;
  display: grid;
  gap: 1.25rem;
  --service-process-road-x: 50%;
  --service-process-road-w: 16px;
  --service-process-road-start: 0;
}

.service-process-road {
  position: absolute;
  top: var(--service-process-road-start);
  bottom: 0;
  left: var(--service-process-road-x);
  width: var(--service-process-road-w);
  border-radius: 999px;
  background: #ff6c4c;
  transform: translateX(-50%);
  pointer-events: none;
  z-index: 0;
}

.service-process-item {
  position: relative;
  padding-top: 0;
}

.service-process-pin-shell {
  position: absolute;
  top: calc(50% + (var(--service-process-card-offset, 1.95rem) / 2));
  left: var(--service-process-road-x);
  transform: translate(calc(-50% - 3px), calc(-50% - 3px));
  z-index: 40;
  width: 5.75rem;
  min-height: 5.1rem;
  height: auto;
  isolation: isolate;
  --grounded-volume-radius: 1.05rem;
}

@media (min-width: 768px) {
  .service-process-pin-shell {
    width: 6.2rem;
    min-height: 5.35rem;
  }

  .service-process-item {
    padding-top: 0;
  }
}

.service-process-pin-surface {
  position: relative;
  z-index: 20;
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 0.12rem;
  min-height: 100%;
  padding: 0.52rem 0.55rem 0.58rem;
  border: 1px solid #9fd01c;
  border-radius: 1.05rem;
  background: #c9ff3b;
  text-align: center;
}

@media (min-width: 768px) {
  .service-process-pin-surface {
    padding: 0.58rem 0.7rem 0.66rem;
  }
}

.service-process-pin {
  position: relative;
  display: grid;
  place-items: center;
  width: auto;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  color: #173703;
  line-height: 1;
  font-size: 1rem;
  font-weight: 900;
}

.service-process-pin::before {
  content: none;
}

.service-process-pin-num {
  font-size: 1.95rem;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.05em;
  display: block;
  text-align: center;
  color: #173703;
  margin: 0;
  padding: 0;
}

.service-process-pin-date {
  position: relative;
  display: block;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: rgba(23, 55, 3, 0.82);
  font-size: 0.68rem;
  font-weight: 800;
  line-height: 1.12;
  text-align: center;
  letter-spacing: 0.02em;
  text-transform: none;
  box-shadow: none;
  margin: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

.service-process-item > div.w-\[calc\(100\%-6rem\)\] {
  position: static;
}

.service-process-item > div {
  position: static;
}

.service-process-pin--lime {
  background: transparent;
  border: 0;
  color: #173703;
}

.service-process-pin--coral {
  background: transparent;
  border: 0;
  color: #173703;
}

.service-process-pin--ink {
  background: transparent;
  border: 0;
  color: #173703;
}

.service-process-pin-shell--lime {
  --service-process-pin-border: #9fd01c;
  --service-process-pin-text: #173703;
}

.service-process-pin-shell--coral {
  --service-process-pin-border: #9fd01c;
  --service-process-pin-text: #173703;
}

.service-process-pin-shell--ink {
  --service-process-pin-border: #9fd01c;
  --service-process-pin-text: #173703;
}

.service-process-pin-shell {
  --grounded-volume-fill: var(--volume-grounded-green-fill);
}

.service-process-card-shell {
  position: relative;
  isolation: isolate;
  margin-top: var(--service-process-card-offset, 1.95rem);
  --grounded-volume-radius: 1.15rem;
}

.service-process-card {
  position: relative;
  z-index: 20;
  padding: 1.1rem 1.2rem 1.25rem;
  border: 1px solid #b8b0a0;
  border-radius: 1.15rem;
  min-height: 100%;
  background: #ffffff;
  transition:
    transform 180ms ease,
    box-shadow 180ms ease;
}

.service-process-card-shell--lime .service-process-card {
  border-color: #9fd01c;
}

.service-process-card-shell--coral .service-process-card {
  border-color: #ff7d62;
}

.service-process-card-shell--ink .service-process-card {
  border-color: #171717;
}

.service-process-phase {
  margin: 0 0 0.45rem;
  color: rgba(17, 17, 17, 0.57);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.service-process-card h3 {
  margin: 0 0 0.6rem;
  color: #111111;
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

.service-process-card-text {
  margin: 0;
  color: rgba(17, 17, 17, 0.8);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.55;
}

@media (min-width: 768px) {
  /* --- Правильный S-образный таймлайн --- */

  /* --- Монолитная архитектура зигзага (сближенные пины) --- */

  .service-process-list {
    display: grid !important;
    grid-auto-rows: 1fr;
    gap: 6rem !important; /* Увеличен зазор для дополнительного воздуха */
    position: relative;
    padding-bottom: 2rem;
  }

  /* Сбрасываем старую прямую дорогу */
  .service-process-road {
    display: none !important;
  }

  /* Каждая строка - равной высоты (1fr). Внутри неё контент (карточка) центрируется по вертикали */
  .service-process-item {
    display: flex !important;
    align-items: center;
    position: relative;
    width: 100%;
    margin-bottom: 0 !important; /* Зазоры управляются gap в .service-process-list */
    padding-top: 0 !important;
  }

  /* Карточки занимают ровно 55% экрана. Обертка static, чтобы пины позиционировались от всей ширины */
  .service-process-item > div.w-\[calc\(100\%-6rem\)\] {
    width: 55% !important;
    position: static !important; /* КРИТИЧНО: высвобождает пины из обертки карточки */
    margin: 0 !important;
    z-index: 10;
  }

  /* Левые карточки (odd) */
  .service-process-item:nth-of-type(odd) > div.w-\[calc\(100\%-6rem\)\] {
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  /* Правые карточки (even) */
  .service-process-item:nth-of-type(even) > div.w-\[calc\(100\%-6rem\)\] {
    margin-left: auto !important;
    margin-right: 0 !important;
  }

  /* Позиционирование Пинов. Выносим их близко к краю карточек */
  .service-process-pin-shell {
    position: absolute !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    margin: 0 !important;
    z-index: 40;
  }

  /* Pin 1 (odd) - Центр на 62% */
  .service-process-item:nth-of-type(odd) .service-process-pin-shell {
    left: 62% !important;
    right: auto !important;
  }

  /* Pin 2 (even) - Центр на 38% */
  .service-process-item:nth-of-type(even) .service-process-pin-shell {
    left: 38% !important;
    right: auto !important;
  }

  /* --- Отрисовка дороги теперь обрабатывается JS через единый #service-process-svg-road --- */
  /* --- Конец архитектуры зигзага --- */
  /* --- Конец S-образного таймлайна --- */

  .service-process-kicker,
  .service-process-title,
  .service-process-lead {
    text-align: left;
  }

  .service-process-head {
    justify-items: start;
  }

  .service-process-pin-shell {
    width: 5rem;
    min-height: 5rem;
    height: 5rem;
  }

  .service-audience-grid--fit,
  .service-audience-grid--unfit {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .service-audience-unfit-panel {
    padding: 1.05rem 1.35rem;
    column-gap: 1.8rem;
  }

  .service-audience-unfit-panel::before {
    content: "";
    position: absolute;
    top: 1rem;
    bottom: 1rem;
    left: 50%;
    border-left: 1px dashed rgba(17, 17, 17, 0.12);
    transform: translateX(-50%);
  }

  .service-audience-unfit-panel
    > .service-audience-card-shell:nth-last-child(-n + 2)
    .service-audience-card--unfit {
    border-bottom: 0;
  }

  .service-audience-note {
    grid-template-columns: auto 1fr;
    padding: 1.5rem;
  }

  #experience .experience-main-card {
    padding: 3rem 4rem;
  }

  #experience .experience-main-intro {
    font-size: 1.45rem;
  }

  #experience .experience-metrics-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 2.5rem;
    gap: 1.25rem;
  }

  #experience .experience-deco-main {
    top: 2rem;
    right: 2.5rem;
    width: 420px;
    height: 420px;
  }

  #experience .experience-deco-icon:not(.experience-deco-main) {
    top: 2rem;
    right: 2rem;
    width: 250px;
    height: 250px;
  }

  #experience .experience-side-head {
    padding-right: 0;
    max-width: 50%;
  }

  #experience .experience-it-text,
  #experience .experience-why-text {
    padding-right: 0;
    max-width: 52%;
  }

  #experience .experience-it-card,
  #experience .experience-why-card {
    padding: 2.5rem;
  }

  .service-audience-signals {
    padding: 1.45rem 1.45rem 1.5rem 1.65rem;
  }

  .service-audience-signals-head {
    grid-template-columns: minmax(0, 16rem) minmax(0, 1fr);
    align-items: start;
    column-gap: 1.35rem;
  }

  .service-audience-signals-note {
    align-self: stretch;
  }

  .service-audience-signals-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 1.9rem;
  }

  .service-audience-signals-grid::before {
    content: "";
    position: absolute;
    top: 0.25rem;
    bottom: 0.25rem;
    left: 50%;
    border-left: 1px dashed rgba(17, 17, 17, 0.12);
    transform: translateX(-50%);
  }

  .service-audience-signals-grid > li:nth-last-child(-n + 2) {
    border-bottom: 0;
  }

  #experience .experience-capability-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem 1.8rem;
  }
}

@media (min-width: 1024px) {
  .service-audience-shell {
    gap: 4.25rem;
  }

  .service-audience-hero {
    grid-template-columns: minmax(0, 1.18fr) minmax(22rem, 0.82fr);
    gap: 2.4rem;
    padding: 2.25rem;
  }

  .service-audience-unfit-head {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
    gap: 2rem;
  }

  .service-audience-grid--fit {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .service-audience-unfit-panel {
    padding: 1.15rem 1.5rem;
    column-gap: 2rem;
  }

  .service-audience-signals {
    padding: 1.65rem 1.75rem 1.75rem 1.85rem;
  }

  .service-audience-signals-head {
    grid-template-columns: minmax(0, 17rem) minmax(0, 1fr);
    column-gap: 1.6rem;
  }

  .service-audience-signal {
    gap: 1.1rem;
    padding: 1.05rem 0;
  }

  #experience .experience-layout {
    gap: 1.4rem;
  }

  #experience .experience-main-shell {
    display: flex;
    flex-direction: column;
    height: 100%;
  }

  #experience .experience-bottom {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.4rem;
    align-items: stretch;
  }

  #experience .experience-main-card,
  #experience .experience-it-card,
  #experience .experience-why-card {
    padding: 2.5rem;
  }

  #experience .experience-side-title {
    max-width: 13ch;
  }

  #experience .experience-main-intro {
    font-size: 1.15rem;
  }

  #experience .experience-why-title {
    max-width: 8ch;
  }
}

/* --- Volume Depth Effects (replaces multi-layer divs) --- */
.volume-depth-base {
  position: relative;
  z-index: 10;
  --volume-depth-offset: 6px;
  --volume-shadow-offset: var(--volume-depth-offset);
}
.volume-depth-base::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  transition: transform 200ms ease;
  pointer-events: none;
  transform: translate(var(--volume-depth-offset), var(--volume-depth-offset));
  filter: drop-shadow(
    var(--volume-shadow-offset) var(--volume-shadow-offset) 2px rgba(0, 0, 0, 0.15)
  );
}

/* Colors */
.volume-depth--lime::before {
  background: var(--volume-grounded-green-fill);
}
.volume-depth--coral::before {
  background: var(--volume-grounded-coral-fill);
}
.volume-depth--ink::before {
  background: var(--volume-grounded-ink-fill);
}
.volume-depth--paper::before {
  background: linear-gradient(
    to left bottom,
    rgb(208, 200, 184) 0px,
    rgb(184, 176, 160) 20px,
    rgb(184, 176, 160) calc(50% - 30px),
    rgb(133, 125, 110) 50%,
    rgb(159, 151, 136) calc(50% + 30px),
    rgb(159, 151, 136) calc(100% - 20px),
    rgb(208, 200, 184) 100%
  );
}

/* Depths */
.volume-depth--4 {
  --volume-depth-offset: 4px;
  --volume-card-hover-offset: 5px;
}
.volume-depth--6 {
  --volume-depth-offset: 6px;
  --volume-card-hover-offset: 7px;
}
.volume-depth--7 {
  --volume-depth-offset: 7px;
  --volume-card-hover-offset: 8px;
}
.volume-depth--9 {
  --volume-depth-offset: 9px;
  --volume-btn-hover-offset: 5px;
}
.volume-depth--12 {
  --volume-depth-offset: 12px;
  --volume-card-hover-offset: 14px;
}
.volume-depth-no-shadow::before {
  filter: none;
}

/* Background utilities */
.bg-volume-lime {
  background: var(--volume-grounded-green-fill);
}
.bg-volume-coral {
  background: var(--volume-grounded-coral-fill);
}
.bg-volume-ink {
  background: var(--volume-grounded-ink-fill);
}
.bg-volume-paper {
  background: linear-gradient(
    to left bottom,
    rgb(208, 200, 184) 0px,
    rgb(184, 176, 160) 20px,
    rgb(184, 176, 160) calc(50% - 30px),
    rgb(133, 125, 110) 50%,
    rgb(159, 151, 136) calc(50% + 30px),
    rgb(159, 151, 136) calc(100% - 20px),
    rgb(208, 200, 184) 100%
  );
}

/* Interactive elements */
.volume-btn {
  cursor: pointer;
  transition: transform 200ms ease;
  --volume-btn-hover-translate: 4px;
  --volume-btn-active-translate: var(--volume-depth-offset);
}
.volume-btn:hover {
  transform: translate(var(--volume-btn-hover-translate), var(--volume-btn-hover-translate));
}
.volume-btn:hover::before {
  transform: translate(
    var(--volume-btn-hover-offset, var(--volume-btn-hover-translate)),
    var(--volume-btn-hover-offset, var(--volume-btn-hover-translate))
  );
}
.volume-btn:active {
  transform: translate(var(--volume-btn-active-translate), var(--volume-btn-active-translate));
}
.volume-btn:active::before {
  transform: translate(0px, 0px);
}

.volume-btn--compact {
  --volume-btn-hover-translate: 2px;
  --volume-btn-hover-offset: 2px;
  --volume-btn-active-translate: 4px;
}

.volume-card {
  cursor: var(--volume-card-cursor, default);
}

.volume-card--interactive {
  --volume-card-cursor: pointer;
}
.volume-card .volume-card-front {
  transition: transform 300ms ease;
}
.volume-card:hover .volume-card-front {
  transform: translate(2px, 2px);
}
.volume-card:hover::before {
  transform: translate(
    var(--volume-card-hover-offset, var(--volume-depth-offset)),
    var(--volume-card-hover-offset, var(--volume-depth-offset))
  );
}

/* =========================================
   ABOUT PAGE
   ========================================= */

.page-about {
  width: 100%;
  max-width: 100vw;
  overflow-x: hidden;
}

.page-about #root,
.page-about .min-h-screen,
.page-about main {
  width: 100%;
  max-width: 100vw;
  overflow-x: clip;
}

.about-page-main {
  position: relative;
  overflow: hidden;
  display: block;
  padding-top: calc(5.85rem + env(safe-area-inset-top));
  padding-bottom: clamp(3.35rem, 5.6vw, 5.2rem);
  background: #f4f0e8;
}

.about-editorial {
  position: relative;
  padding-top: clamp(0.95rem, 1.9vw, 1.55rem);
  padding-bottom: clamp(3.6rem, 6vw, 5.8rem);
}

.about-editorial__container {
  position: relative;
  display: grid;
  min-width: 0;
  gap: clamp(2.25rem, 3.4vw, 3.5rem);
}

.about-editorial__hero {
  display: grid;
  gap: clamp(2.1rem, 3.8vw, 4.6rem);
  align-items: center;
  min-width: 0;
  max-width: min(100%, 74rem);
}

.about-editorial__hero-media {
  position: relative;
  min-width: 0;
  width: min(100%, 29rem);
}

.about-editorial__portrait-shell {
  --grounded-volume-radius: 1.55rem;
  position: relative;
  margin: 0;
  max-width: min(100%, 27.5rem);
}

.about-editorial__portrait-card {
  position: relative;
  z-index: 20;
  overflow: hidden;
  border-radius: 1.55rem;
  background: #f8efe9;
  padding: clamp(0.95rem, 1.35vw, 1.12rem);
}

.about-editorial__portrait-frame {
  position: relative;
  overflow: hidden;
  border-radius: 1.18rem;
  aspect-ratio: 4 / 5.15;
  background: linear-gradient(180deg, #f8d2be 0%, #f4c3ab 100%);
}

.about-editorial__portrait-frame::after {
  content: "";
  position: absolute;
  inset: 0.8rem;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 0.82rem;
  pointer-events: none;
}

.about-editorial__portrait-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 14%;
  transform: scale(1.03);
}

.about-editorial__metric {
  position: absolute;
  right: clamp(-0.85rem, -1vw, -0.55rem);
  bottom: clamp(-1.1rem, -1.7vw, -0.8rem);
  z-index: 25;
  display: grid;
  gap: 0.22rem;
  min-width: 8.6rem;
  padding: 0.9rem 1rem 0.88rem;
  border-radius: 1rem;
  background: #d4ff33;
  box-shadow: 0 24px 36px rgba(33, 36, 30, 0.08);
}

.about-editorial__metric-kicker {
  color: rgba(33, 36, 30, 0.72);
  font-size: 0.66rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.about-editorial__metric-value {
  color: #21241e;
  font-size: clamp(1.5rem, 2vw, 1.92rem);
  font-weight: 800;
  line-height: 0.95;
  letter-spacing: -0.04em;
}

.about-editorial__metric-label {
  color: rgba(33, 36, 30, 0.84);
  font-size: 0.92rem;
  font-weight: 600;
  line-height: 1.1;
}

.about-editorial__hero-copy {
  position: relative;
  min-width: 0;
  max-width: min(100%, 40rem);
  padding-bottom: clamp(0.2rem, 0.6vw, 0.45rem);
}

.about-editorial__eyebrow {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  margin: 0 0 1.35rem;
  color: #a36b57;
  font-size: 0.75rem;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: 0.17em;
  text-transform: uppercase;
  text-wrap: balance;
}

.about-editorial__eyebrow::before {
  content: "";
  display: block;
  width: 2.7rem;
  height: 1px;
  background: rgba(163, 107, 87, 0.7);
}

.about-editorial__title {
  margin: 0;
  max-width: 8.4ch;
  color: #2a2d27;
  font-size: clamp(4rem, 7vw, 6.25rem);
  font-weight: 900;
  line-height: 0.9;
  letter-spacing: -0.08em;
  text-wrap: balance;
}

.about-editorial__title-line {
  display: block;
}

.about-editorial__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin-top: clamp(1.6rem, 2.4vw, 2rem);
}

.about-editorial__chip {
  display: inline-flex;
  align-items: center;
  min-height: 2.05rem;
  padding: 0.44rem 0.92rem;
  border-radius: 999px;
  background: #ebe7df;
  color: rgba(42, 45, 39, 0.72);
  font-size: 0.74rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.about-editorial__narrative {
  display: grid;
  gap: clamp(2rem, 3vw, 2.75rem);
  min-width: 0;
  max-width: min(100%, 66rem);
}

.about-editorial__section {
  position: relative;
}

.about-editorial__feature-shell,
.about-editorial__summary-shell {
  position: relative;
  min-width: 0;
}

.about-editorial__feature-shell {
  --grounded-volume-radius: 1.4rem;
  max-width: min(100%, 58rem);
}

.about-editorial__feature-card {
  position: relative;
  z-index: 20;
  overflow: hidden;
  border-radius: 1.4rem;
  background: #efede7;
  padding: clamp(1.85rem, 2.8vw, 2.4rem) clamp(1.95rem, 3vw, 2.75rem);
}

.about-editorial__feature-card::before {
  content: "";
  position: absolute;
  inset: 0;
  width: 0.24rem;
  background: rgba(244, 164, 139, 0.9);
}

.about-editorial__summary {
  display: grid;
  gap: clamp(1.4rem, 2.2vw, 1.95rem);
  min-width: 0;
  max-width: min(100%, 66rem);
  padding-top: clamp(0.5rem, 0.9vw, 0.85rem);
}

.about-editorial__summary-shell {
  --grounded-volume-radius: 1.35rem;
}

.about-editorial__summary-card {
  position: relative;
  z-index: 20;
  display: grid;
  align-content: start;
  gap: 1.05rem;
  min-height: 18rem;
  overflow: hidden;
  border-radius: 1.35rem;
  padding: clamp(1.65rem, 2.4vw, 2.15rem) clamp(1.5rem, 2.3vw, 1.95rem);
}

.about-editorial__summary-card--light {
  background: #efede7;
}

.about-editorial__summary-card--dark {
  background: #646163;
}

.about-editorial__summary-head {
  display: grid;
  gap: 1rem;
}

.about-editorial__summary-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.85rem;
  height: 2.85rem;
  border-radius: 0.95rem;
}

.about-editorial__summary-icon svg {
  width: 1.35rem;
  height: 1.35rem;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
}

.about-editorial__summary-icon--peach {
  background: rgba(244, 164, 139, 0.18);
  color: #b77458;
}

.about-editorial__summary-icon--lime {
  background: rgba(212, 255, 51, 0.16);
  color: #d4ff33;
}

.about-editorial__summary-mark {
  display: block;
  width: 0.28rem;
  height: 0.28rem;
  margin-bottom: 0.4rem;
  border-radius: 999px;
}

.about-editorial__summary-mark--peach {
  background: #b77458;
  box-shadow:
    0.48rem 0 #b77458,
    0 0.48rem #b77458,
    0.48rem 0.48rem #b77458,
    0.96rem 0.14rem #b77458;
}

.about-editorial__summary-mark--lime {
  background: #d4ff33;
  box-shadow:
    0.48rem 0 #d4ff33,
    0 0.48rem #d4ff33,
    0.48rem 0.48rem #d4ff33,
    0.96rem 0.14rem #d4ff33;
}

.about-editorial__summary-title {
  margin: 0;
  color: #2a2d27;
  font-size: clamp(1.5rem, 1.95vw, 1.95rem);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.04em;
}

.about-editorial__summary-title--dark {
  color: #ffffff;
}

.about-editorial__text {
  margin: 0;
  color: rgba(42, 45, 39, 0.9);
  font-size: clamp(1.16rem, 1.34vw, 1.34rem);
  line-height: 1.58;
  text-wrap: pretty;
}

.about-editorial__text--lead {
  max-width: 55ch;
  color: #2a2d27;
  font-size: clamp(1.28rem, 1.58vw, 1.62rem);
  line-height: 1.54;
}

.about-editorial__text--body {
  max-width: 54ch;
  font-size: clamp(1.22rem, 1.52vw, 1.58rem);
  line-height: 1.54;
}

.about-editorial__text--feature {
  max-width: 41ch;
  color: rgba(42, 45, 39, 0.64);
  font-size: clamp(1.26rem, 1.74vw, 1.7rem);
  line-height: 1.56;
  font-style: italic;
}

.about-editorial__text--summary {
  max-width: 31ch;
  color: rgba(42, 45, 39, 0.94);
  font-size: clamp(1.04rem, 1.18vw, 1.2rem);
  line-height: 1.62;
}

.about-editorial__text--summary-dark {
  color: rgba(255, 255, 255, 0.92);
}

.about-editorial__highlight {
  display: inline;
  padding: 0 0.2rem;
  border-radius: 0.18rem;
  font-weight: 600;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

.about-editorial__highlight--lime {
  background: #d4ff33;
  color: #21241e;
}

.about-editorial__highlight--peach {
  background: #f6c7b2;
  color: #21241e;
}

@media (min-width: 768px) {
  .about-page-main {
    padding-top: calc(6.05rem + env(safe-area-inset-top));
  }

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

@media (min-width: 1024px) {
  .about-editorial__hero {
    grid-template-columns: minmax(19rem, 28rem) minmax(0, 1fr);
    column-gap: clamp(2.6rem, 4.5vw, 5rem);
  }

  .about-editorial__hero-copy {
    align-self: end;
    padding-bottom: 0.8rem;
  }

  .about-editorial__narrative {
    padding-left: clamp(5.6rem, 7.4vw, 7rem);
  }

  .about-editorial__section--lead {
    max-width: 60rem;
  }

  .about-editorial__section--education,
  .about-editorial__section--it {
    max-width: 58rem;
  }

  .about-editorial__feature-shell {
    margin-top: 0.25rem;
  }

  .about-editorial__summary {
    padding-left: clamp(5.6rem, 7.4vw, 7rem);
    column-gap: clamp(1.6rem, 2.4vw, 2.2rem);
  }
}

@media (max-width: 767px) {
  .about-page-main {
    padding-top: calc(4.85rem + env(safe-area-inset-top));
    padding-bottom: calc(2.5rem + env(safe-area-inset-bottom));
  }

  .about-editorial {
    padding-top: 0.55rem;
    padding-bottom: 2.8rem;
  }

  .about-editorial__hero {
    gap: 1.85rem;
  }

  .about-editorial__hero-media {
    justify-self: center;
    width: min(100%, 20.75rem);
  }

  .about-editorial__metric {
    right: 0.25rem;
    bottom: -0.7rem;
    max-width: calc(100% - 0.5rem);
    min-width: 7.45rem;
    padding: 0.8rem 0.88rem 0.78rem;
  }

  .about-editorial__metric-value {
    font-size: 1.34rem;
  }

  .about-editorial__metric-label {
    font-size: 0.82rem;
  }

  .about-editorial__eyebrow {
    margin-bottom: 1rem;
    font-size: 0.72rem;
    letter-spacing: 0.13em;
  }

  .about-editorial__eyebrow::before {
    width: 2rem;
  }

  .about-editorial__title {
    max-width: none;
    font-size: clamp(3.15rem, 12vw, 4.5rem);
  }

  .about-editorial__portrait-card {
    border-radius: 1.3rem;
    padding: 0.88rem;
  }

  .about-editorial__portrait-frame {
    border-radius: 1rem;
    aspect-ratio: 4 / 5;
  }

  .about-editorial__portrait-frame::after {
    inset: 0.7rem;
    border-radius: 0.7rem;
  }

  .about-editorial__narrative {
    gap: 1.55rem;
  }

  .about-editorial__feature-card,
  .about-editorial__summary-card {
    border-radius: 1.15rem;
    padding: 1.2rem 1rem 1.15rem;
  }

  .about-editorial__chip {
    min-height: 1.95rem;
    padding: 0.42rem 0.8rem;
    font-size: 0.76rem;
  }

  .about-editorial__text {
    font-size: 1rem;
    line-height: 1.64;
  }

  .about-editorial__text--lead {
    font-size: 1.1rem;
    line-height: 1.56;
  }

  .about-editorial__text--body {
    font-size: 1.04rem;
    line-height: 1.58;
  }

  .about-editorial__text--feature {
    font-size: 1.04rem;
    line-height: 1.6;
  }

  .about-editorial__text--summary {
    font-size: 0.98rem;
    line-height: 1.58;
  }

  .about-editorial__text--lead,
  .about-editorial__text--body,
  .about-editorial__text--feature,
  .about-editorial__text--summary {
    max-width: none;
  }
}

/* =========================================
   ABOUT PAGE REDO
   ========================================= */

.about-page-main {
  position: relative;
  display: block;
  overflow: clip;
  padding-top: calc(5.4rem + env(safe-area-inset-top));
  padding-bottom: calc(clamp(3rem, 5vw, 4.5rem) + env(safe-area-inset-bottom));
  background:
    radial-gradient(circle at top right, rgba(246, 199, 178, 0.3), transparent 32rem),
    radial-gradient(circle at bottom left, rgba(212, 255, 51, 0.16), transparent 28rem), #f4f0e8;
}

.about-stitch {
  position: relative;
  padding-top: clamp(0.9rem, 1.8vw, 1.4rem);
  color: #111111;
  --about-stitch-body-font-size: clamp(1.14rem, 1.52vw, 1.32rem);
  --about-stitch-body-line-height: 1.58;
}

.about-stitch__container {
  position: relative;
  display: grid;
  justify-items: center;
  gap: clamp(2.1rem, 4vw, 4.2rem);
  min-width: 0;
}

.about-stitch__hero,
.about-stitch__narrative,
.about-stitch__summary {
  width: 100%;
  min-width: 0;
  max-width: min(100%, 74rem);
}

.about-stitch__hero {
  display: grid;
  gap: clamp(1.25rem, 2vw, 2.4rem);
  align-items: center;
  max-width: min(100%, 78rem);
}

.about-stitch__media,
.about-stitch__intro {
  min-width: 0;
}

.about-stitch__media {
  position: relative;
  width: min(100%, 21.45rem);
  margin: 0;
}

.about-stitch__portrait-shell {
  position: relative;
  padding: clamp(0.8rem, 1.2vw, 1rem);
  border-radius: 1.65rem;
  background: linear-gradient(180deg, rgba(249, 236, 228, 0.95) 0%, rgba(247, 228, 217, 0.88) 100%);
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.5) inset,
    0 28px 52px rgba(33, 36, 30, 0.08);
}

.about-stitch__portrait-shell::before {
  content: "";
  position: absolute;
  inset: 0.75rem;
  border-radius: 1.2rem;
  background: linear-gradient(180deg, rgba(247, 212, 192, 0.9), rgba(247, 233, 223, 0.25));
  pointer-events: none;
}

.about-stitch__portrait-frame {
  position: relative;
  z-index: 1;
  overflow: hidden;
  border-radius: 1.18rem;
  background: transparent;
}

.about-stitch__portrait-image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: initial;
  object-position: initial;
}

.about-stitch__metric {
  position: absolute;
  right: -0.6rem;
  bottom: -0.6rem;
  z-index: 2;
  display: grid;
  gap: 0.22rem;
  max-width: 8.25rem;
  padding: 0.72rem 0.78rem 0.68rem;
  border-radius: 0.9rem;
  background: #d4ff33;
  box-shadow:
    0 22px 40px rgba(33, 36, 30, 0.12),
    0 1px 0 rgba(255, 255, 255, 0.32) inset;
}

.about-stitch__metric-kicker,
.about-stitch__metric-label {
  display: block;
}

.about-stitch__metric-kicker {
  color: #111111;
  font-size: 0.56rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  line-height: 1.25;
  text-transform: uppercase;
}

.about-stitch__metric-value {
  color: #111111;
  font-size: clamp(1.05rem, 1.5vw, 1.35rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.05em;
  font-variant-numeric: tabular-nums;
}

.about-stitch__metric-label {
  color: #111111;
  font-size: 0.68rem;
  line-height: 1.2;
}

.about-stitch__intro {
  display: grid;
  gap: 1.02rem;
  max-width: min(100%, 39rem);
  align-self: center;
}

.about-stitch__expert-name {
  margin: 0;
  padding-left: 3.2rem;
  color: #111111;
  font-size: 1.24rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.about-stitch__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  max-width: min(100%, 29rem);
  margin: 0;
  color: #94b710;
  font-size: 0.84rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  line-height: 1.42;
  text-transform: uppercase;
  text-wrap: balance;
}

.about-stitch__eyebrow::before {
  content: "";
  width: 2.4rem;
  height: 1px;
  flex: 0 0 auto;
  background: currentColor;
  opacity: 0.55;
}

.about-stitch__eyebrow .section-lead-highlight {
  padding: 0.34rem 0.62rem 0.38rem;
  border-radius: 0.55rem;
  color: #314631;
}

.about-stitch__title {
  width: fit-content;
  max-width: 100%;
  margin: 0;
  color: #111111;
  font-size: clamp(3.2rem, 5.6vw, 5.7rem);
  font-weight: 900;
  line-height: 0.88;
  letter-spacing: -0.05em;
  text-wrap: unset;
}

.about-stitch__title-line {
  display: block;
  white-space: nowrap;
}

.about-stitch__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
  align-items: flex-start;
  min-width: 0;
}

.about-stitch__chip {
  display: inline-flex;
  align-items: center;
  min-height: 2.05rem;
  padding: 0.45rem 0.9rem;
  border-radius: 999px;
  background: rgba(47, 52, 45, 0.07);
  color: #111111;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  line-height: 1;
  text-transform: uppercase;
}

.about-stitch__narrative {
  display: grid;
  gap: clamp(1.25rem, 2.3vw, 1.8rem);
}

.about-stitch__section {
  min-width: 0;
}

.about-stitch__text,
.about-stitch__text--lead,
.about-stitch__text--feature,
.about-stitch__card-text {
  margin: 0;
  color: #111111;
  font-size: var(--about-stitch-body-font-size);
  line-height: var(--about-stitch-body-line-height);
  text-wrap: pretty;
  font-style: normal;
  font-weight: 400;
}

.about-stitch__text--lead {
  color: #111111;
}

.about-stitch__text--feature {
  color: #111111;
}

.about-stitch__highlight {
  display: inline;
  padding: 0;
  border-radius: 0;
  font-weight: 600;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

.about-stitch__highlight--lime {
  background: transparent;
  color: inherit;
}

.about-stitch__highlight--peach {
  background: transparent;
  color: inherit;
}

.about-stitch__feature {
  position: relative;
  overflow: hidden;
  border-radius: 1.55rem;
  margin: 0;
  padding: clamp(1.55rem, 3vw, 2.55rem) clamp(1.3rem, 2.8vw, 2.55rem);
  background: #faf6ed;
  box-shadow: none;
}

.about-stitch__feature::before {
  content: "";
  position: absolute;
  inset: 0;
  background: none;
  pointer-events: none;
}

.about-stitch__summary {
  display: grid;
  gap: 1.2rem;
}

.about-stitch__card {
  display: grid;
  gap: 1rem;
  min-width: 0;
  min-height: 100%;
  padding: clamp(1.45rem, 2.2vw, 2rem);
  border-radius: 1.4rem;
  box-shadow: none;
}

.about-stitch__card--light {
  background: #faf2e1;
}

.about-stitch__card--dark {
  background: #c2ed31;
}

.about-stitch__card-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 0.9rem;
}

.about-stitch__card-icon svg {
  width: 1.25rem;
  height: 1.25rem;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
}

.about-stitch__card-icon--peach {
  background: rgba(244, 164, 139, 0.16);
  color: #b77458;
}

.about-stitch__card-icon--lime {
  background: #6f8e1f;
  color: #f3ffd2;
}

.about-stitch__card-title {
  margin: 0;
  color: #111111;
  font-size: clamp(1.45rem, 1.85vw, 1.85rem);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.04em;
  text-wrap: balance;
}

.about-stitch__card-title--dark {
  color: #111111;
}

.about-stitch__card-text {
  max-width: 34ch;
  font-size: clamp(1rem, 1.1vw, 1.14rem);
}

.about-stitch__card-text--dark {
  color: #111111;
}

@media (min-width: 768px) {
  .about-page-main {
    padding-top: calc(5.85rem + env(safe-area-inset-top));
  }

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

@media (min-width: 1024px) {
  .about-stitch__hero {
    grid-template-columns: minmax(16.5rem, 22.05rem) minmax(0, 1fr);
  }

  .about-stitch__intro {
    align-self: end;
    padding-bottom: 0.35rem;
  }

  .about-stitch__narrative,
  .about-stitch__summary {
    padding-left: clamp(5rem, 7vw, 6.8rem);
  }

  .about-stitch__narrative {
    gap: clamp(1.5rem, 2.5vw, 2rem);
  }
}

@media (max-width: 767px) {
  .about-page-main {
    padding-top: calc(4.9rem + env(safe-area-inset-top));
    padding-bottom: calc(2.5rem + env(safe-area-inset-bottom));
  }

  .about-stitch {
    padding-top: 0.45rem;
  }

  .about-stitch__hero {
    gap: 1.7rem;
    max-width: min(100%, 74rem);
  }

  .about-stitch__media {
    width: min(100%, 20.5rem);
  }

  .about-stitch__portrait-shell {
    border-radius: 1.35rem;
    padding: 0.78rem;
  }

  .about-stitch__portrait-frame {
    border-radius: 1rem;
  }

  .about-stitch__metric {
    right: 0.15rem;
    bottom: -0.75rem;
    max-width: calc(100% - 0.3rem);
    padding: 0.8rem 0.88rem 0.74rem;
  }

  .about-stitch__metric-kicker {
    font-size: 0.62rem;
  }

  .about-stitch__metric-value {
    font-size: 1.28rem;
  }

  .about-stitch__metric-label {
    font-size: 0.78rem;
  }

  .about-stitch__intro {
    gap: 1rem;
    max-width: none;
  }

  .about-stitch__expert-name {
    padding-left: 2.5rem;
    font-size: 1rem;
    line-height: 1.18;
  }

  .about-stitch__eyebrow {
    gap: 0.65rem;
    max-width: 17.25rem;
    font-size: 0.67rem;
    letter-spacing: 0.14em;
  }

  .about-stitch__eyebrow .section-lead-highlight {
    padding: 0.3rem 0.48rem 0.28rem;
    border-radius: 0.45rem;
  }

  .about-stitch__eyebrow::before {
    width: 1.85rem;
  }

  .about-stitch__title {
    width: 100%;
    font-size: clamp(2.65rem, 10vw, 3.6rem);
    line-height: 0.96;
  }

  .about-stitch__title-line {
    display: block;
    white-space: normal;
  }

  .about-stitch__chip {
    min-height: 1.92rem;
    padding: 0.42rem 0.76rem;
    font-size: 0.64rem;
    letter-spacing: 0.09em;
  }

  .about-stitch__narrative {
    gap: 1.05rem;
  }

  .about-stitch__text,
  .about-stitch__text--lead,
  .about-stitch__text--feature,
  .about-stitch__card-text {
    font-size: 1.02rem;
    line-height: var(--about-stitch-body-line-height);
  }

  .about-stitch__text--lead {
  }

  .about-stitch__text--feature {
    font-size: 1rem;
  }

  .about-stitch__feature,
  .about-stitch__card {
    border-radius: 1.15rem;
    padding: 1.2rem 1rem 1.12rem;
  }

  .about-stitch__card-title {
    font-size: 1.35rem;
  }
}

/* Flat background overrides */

:root {
  --volume-grounded-green-fill: #a9ce45;
  --volume-grounded-coral-fill: #ef8b70;
  --volume-grounded-ink-fill: #3a3a3a;
}

body,
.service-cta-section,
.private-practice-section,
.deliverables-tabs-section,
.about-page-main {
  background: #fffcf5;
}

.site-header.is-scrolled {
  background: rgba(255, 252, 245, 0.95);
}

.mobile-menu {
  background: rgba(255, 252, 245, 0.72);
}

.mobile-menu__panel {
  background: #fffcf5;
}

.service-cta-pattern,
.private-practice-section,
.bg-dots-lime,
.bg-dots-black,
.editorial-grid {
  background-image: none;
}

.monday-effect-orb {
  display: none;
}

.service-hero-section::before,
.deliverables-tabs-mobile-sticky::before,
.service-hero-mobile-sticky-cta::before,
.service-overview-mobile-sticky::before,
.about-stitch__portrait-shell::before,
.about-stitch__feature::before {
  content: none;
}

.deliverables-pnl-card,
.deliverables-pnl-arrow,
.deliverables-pnl-arrow--reworked,
.about-stitch__feature {
  background: #faf6ed;
}

.deliverables-pnl-arrow,
.deliverables-pnl-arrow--reworked {
  box-shadow: none;
}

.about-stitch__portrait-shell {
  background: #f7e8db;
}

.about-stitch__portrait-frame {
  background: #f3d8ca;
}

.about-stitch__card--dark {
  background: #c2ed31;
}

.volume-depth--paper::before,
.bg-volume-paper {
  background: #d0c8b8;
}

.service-overview-action-shell--secondary {
  --grounded-volume-fill: #d0c8b8;
}

.service-overview-panel-head--why::after,
.service-overview-panel-head--fit::after,
.service-overview-panel-head--unfit::after,
.service-overview-panel-head--process::after,
.service-overview-panel-head--values::after,
.service-overview-panel-head--experience::after {
  background: rgba(17, 17, 17, 0.12);
}

.service-overview-point::after {
  background: rgba(201, 255, 59, 0.88);
}

.service-overview-point:nth-child(2)::after {
  background: rgba(150, 178, 90, 0.84);
}

.service-overview-point:nth-child(3)::after {
  background: rgba(130, 156, 65, 0.84);
}

.service-overview-point:nth-child(4)::after {
  background: rgba(240, 191, 78, 0.82);
}

.service-overview-panel--process .service-overview-steps::before {
  background: rgba(159, 208, 28, 0.46);
}

.service-overview-values-essay::before,
.service-overview-editorial-card::before {
  background: rgba(201, 255, 59, 0.82);
}

.service-overview-experience-essay::before {
  background: rgba(255, 108, 76, 0.72);
}

.service-overview-inline-underline {
  background-image: none;
  text-decoration: underline;
  text-decoration-color: rgba(201, 255, 59, 0.95);
  text-decoration-thickness: 2px;
  text-underline-offset: 0.12em;
}

body *,
body *::before,
body *::after {
  box-shadow: none !important;
  text-shadow: none !important;
}

.volume-depth::before {
  filter: none !important;
}

/* Contacts page */

.page-contacts {
  width: 100%;
  max-width: 100vw;
  overflow-x: hidden;
}

.page-contacts #root,
.page-contacts .min-h-screen,
.page-contacts main {
  width: 100%;
  max-width: 100vw;
  overflow-x: clip;
}

.contacts-page-main {
  position: relative;
  overflow: clip;
  padding: calc(5.25rem + env(safe-area-inset-top)) 0 calc(4.25rem + env(safe-area-inset-bottom));
  background: #fffcf5;
}

.contacts-page {
  width: min(100%, 74rem);
  margin-inline: auto;
  padding-inline: clamp(1rem, 3vw, 1.5rem);
}

.contacts-shell {
  display: grid;
  gap: clamp(1.4rem, 2.5vw, 2rem);
}

.contacts-intro {
  display: grid;
  gap: 0.85rem;
  max-width: 46rem;
}

.contacts-eyebrow,
.contacts-panel__eyebrow,
.contacts-channel__eyebrow {
  margin: 0;
  color: #98b90f;
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1.25;
  text-transform: uppercase;
}

.contacts-title {
  margin: 0;
  color: #171717;
  font-size: clamp(2.45rem, 6.2vw, 4.2rem);
  font-weight: 900;
  line-height: 0.96;
  letter-spacing: -0.06em;
  text-wrap: balance;
}

.contacts-lead,
.contacts-panel__lead,
.contacts-channel__text,
.contacts-form__note {
  margin: 0;
  color: rgba(23, 23, 23, 0.78);
  font-size: clamp(1rem, 1.25vw, 1.1rem);
  line-height: 1.6;
  text-wrap: pretty;
}

.contacts-layout {
  display: grid;
  gap: 1rem;
}

.contacts-panel {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(23, 23, 23, 0.12);
  border-radius: 1.5rem;
  padding: clamp(1.25rem, 2vw, 1.8rem);
  background: #faf6ed;
}

.contacts-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  width: 0.22rem;
  background: linear-gradient(180deg, #beed45 0%, #f4a48b 100%);
}

.contacts-panel__head {
  display: grid;
  gap: 0.65rem;
  margin-bottom: 1rem;
}

.contacts-panel__title {
  margin: 0;
  color: #171717;
  font-size: clamp(1.4rem, 1.95vw, 1.82rem);
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -0.05em;
  text-wrap: balance;
}

.contacts-form {
  display: grid;
  gap: 1rem;
}

.contacts-form__grid {
  display: grid;
  gap: 0.95rem;
}

.contacts-field {
  display: grid;
  gap: 0.42rem;
}

.contacts-field span {
  color: rgba(23, 23, 23, 0.86);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  line-height: 1.25;
  text-transform: uppercase;
}

.contacts-input,
.contacts-textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(23, 23, 23, 0.14);
  border-radius: 1rem;
  background: #ffffff;
  color: #171717;
  font: inherit;
  line-height: 1.5;
  transition:
    border-color 140ms ease,
    background-color 140ms ease,
    transform 140ms ease;
}

.contacts-input {
  min-height: 3.2rem;
  padding: 0.88rem 0.95rem;
}

.contacts-textarea {
  min-height: 9rem;
  padding: 0.95rem 1rem;
  resize: vertical;
}

.contacts-input::placeholder,
.contacts-textarea::placeholder {
  color: rgba(23, 23, 23, 0.44);
}

.contacts-input:focus-visible,
.contacts-textarea:focus-visible {
  outline: 2px solid #171717;
  outline-offset: 2px;
  border-color: rgba(23, 23, 23, 0.32);
}

.contacts-form__actions {
  display: grid;
  gap: 0.65rem;
  margin-top: 0.1rem;
}

.contacts-honeypot {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.contacts-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3.25rem;
  padding: 0.88rem 1.05rem;
  border: 1px solid transparent;
  border-radius: 1rem;
  color: #171717;
  font-size: 1rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  transition:
    transform 160ms ease,
    background-color 160ms ease,
    border-color 160ms ease;
}

.contacts-action:hover {
  transform: translate(2px, 2px);
}

.contacts-action:focus-visible {
  outline: 2px solid #171717;
  outline-offset: 3px;
}

.contacts-action--primary {
  width: 100%;
  background: #beed45;
  border-color: #9fd01c;
}

.contacts-action--dark {
  background: #171717;
  border-color: #333333;
  color: #ffffff;
}

.contacts-action--lime {
  background: #c9ff3b;
  border-color: #9fd01c;
}

.contacts-form__note {
  font-size: 0.96rem;
}

.contacts-form__note a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 0.12em;
}

.contacts-form__status {
  margin: 0;
  font-size: 0.96rem;
  line-height: 1.5;
}

.contacts-form__status[data-tone="success"] {
  color: #4f6815;
}

.contacts-form__status[data-tone="error"] {
  color: #b33f26;
}

.contacts-panel--channels {
  display: grid;
  gap: 0.85rem;
}

.contacts-channel {
  display: grid;
  gap: 0.95rem;
  padding: 1.05rem 1rem 1.1rem;
  border: 1px solid rgba(23, 23, 23, 0.1);
  border-radius: 1.15rem;
  background: #ffffff;
}

.contacts-channel__meta {
  display: grid;
  gap: 0.45rem;
}

.contacts-channel__title {
  margin: 0;
  color: #171717;
  font-size: clamp(1.2rem, 1.8vw, 1.55rem);
  font-weight: 900;
  line-height: 1.05;
  letter-spacing: -0.04em;
}

.contacts-channel__text {
  font-size: 0.98rem;
}

@media (min-width: 768px) {
  .contacts-layout {
    grid-template-columns: minmax(0, 1.15fr) minmax(18rem, 0.85fr);
    align-items: start;
  }

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

  .contacts-field--full {
    grid-column: 1 / -1;
  }

  .contacts-action {
    width: fit-content;
    min-width: 14rem;
  }
}

@media (max-width: 767px) {
  .contacts-page-main {
    padding-top: calc(4.75rem + env(safe-area-inset-top));
    padding-bottom: calc(3.5rem + env(safe-area-inset-bottom));
  }

  .contacts-title {
    font-size: clamp(2.2rem, 10.5vw, 3.05rem);
    line-height: 1;
  }

  .contacts-panel {
    border-radius: 1.25rem;
    padding: 1.1rem 0.95rem 1rem;
  }

  .contacts-channel {
    border-radius: 1.05rem;
    padding: 1rem 0.9rem;
  }

  .contacts-action {
    width: 100%;
  }
}
