@font-face {
  font-family: "Forum";

  src: url("../fonts/forum/Forum-Regular.ttf") format("truetype");

  font-weight: 400;

  font-style: normal;

  font-display: swap;
}

*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

.tw-h1 {
  font-family: Forum, serif;
  font-size: 40px;
  line-height: 1.1;
  font-weight: 400;
  --tw-text-opacity: 1;
  color: rgb(74 78 84 / var(--tw-text-opacity, 1));
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

@media (min-width: 992px) {
  .tw-h1 {
    font-size: 64px;
    line-height: 1.1;
    font-weight: 400;
  }
}

@media (min-width: 1200px) {
  .tw-h1 {
    font-size: 70px;
    line-height: 1.05;
    font-weight: 400;
  }
}

@media (min-width: 1920px) {
  .tw-h1 {
    font-size: 80px;
    line-height: 1.05;
    font-weight: 400;
  }
}

.tw-h2 {
  font-family: Forum, serif;
  font-size: 32px;
  line-height: 1.0;
  font-weight: 400;
  --tw-text-opacity: 1;
  color: rgb(74 78 84 / var(--tw-text-opacity, 1));
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

@media (min-width: 992px) {
  .tw-h2 {
    font-size: 38px;
    line-height: 1.1;
    font-weight: 400;
  }
}

@media (min-width: 1200px) {
  .tw-h2 {
    font-size: 40px;
    line-height: 1.2;
    font-weight: 400;
  }
}

@media (min-width: 1920px) {
  .tw-h2 {
    font-size: 45px;
    line-height: 1.2;
    font-weight: 400;
  }
}

.tw-h3 {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.4;
  font-weight: 400;
  --tw-text-opacity: 1;
  color: rgb(74 78 84 / var(--tw-text-opacity, 1));
}

@media (min-width: 992px) {
  .tw-h3 {
    font-size: 18px;
    line-height: 1.4;
    font-weight: 400;
  }
}

@media (min-width: 1920px) {
  .tw-h3 {
    font-size: 20px;
    line-height: 1.4;
    font-weight: 400;
  }
}

.tw-h4 {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.4;
  font-weight: 400;
  --tw-text-opacity: 1;
  color: rgb(74 78 84 / var(--tw-text-opacity, 1));
}

@media (min-width: 992px) {
  .tw-h4 {
    font-size: 16px;
    line-height: 1.4;
    font-weight: 400;
  }
}

@media (min-width: 1920px) {
  .tw-h4 {
    font-size: 16px;
    line-height: 1.4;
    font-weight: 400;
  }
}

.tw-body-text {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.4;
  font-weight: 400;
  --tw-text-opacity: 1;
  color: rgb(74 78 84 / var(--tw-text-opacity, 1));
}

.tw-caption {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 400;
}

.tw-container-px {
  padding-left: 1rem;
  padding-right: 1rem;
}

@media (min-width: 360px) {
  .tw-container-px {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

@media (min-width: 992px) {
  .tw-container-px {
    padding-left: 100px;
    padding-right: 100px;
  }
}

@media (min-width: 1200px) {
  .tw-container-px {
    padding-left: 150px;
    padding-right: 150px;
  }
}

@media (min-width: 1920px) {
  .tw-container-px {
    padding-left: 300px;
    padding-right: 300px;
  }
}

.tw-pointer-events-none {
  pointer-events: none;
}

.tw-pointer-events-auto {
  pointer-events: auto;
}

.tw-visible {
  visibility: visible;
}

.tw-invisible {
  visibility: hidden;
}

.tw-fixed {
  position: fixed;
}

.tw-absolute {
  position: absolute;
}

.tw-relative {
  position: relative;
}

.tw-inset-0 {
  inset: 0px;
}

.tw-inset-x-0 {
  left: 0px;
  right: 0px;
}

.tw-bottom-0 {
  bottom: 0px;
}

.tw-left-0 {
  left: 0px;
}

.tw-left-1\/2 {
  left: 50%;
}

.tw-left-3 {
  left: 0.75rem;
}

.tw-right-0 {
  right: 0px;
}

.tw-right-3 {
  right: 0.75rem;
}

.tw-right-4 {
  right: 1rem;
}

.tw-right-5 {
  right: 1.25rem;
}

.tw-top-0 {
  top: 0px;
}

.tw-top-1\/2 {
  top: 50%;
}

.tw-top-3 {
  top: 0.75rem;
}

.tw-top-4 {
  top: 1rem;
}

.tw-top-\[calc\(100\%\+8px\)\] {
  top: calc(100% + 8px);
}

.tw-top-full {
  top: 100%;
}

.tw-isolate {
  isolation: isolate;
}

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

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

.tw-z-20 {
  z-index: 20;
}

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

.tw-order-1 {
  order: 1;
}

.tw-order-11 {
  order: 11;
}

.tw-order-2 {
  order: 2;
}

.tw-order-3 {
  order: 3;
}

.tw-order-4 {
  order: 4;
}

.tw-order-5 {
  order: 5;
}

.tw-order-6 {
  order: 6;
}

.tw-order-7 {
  order: 7;
}

.tw-order-8 {
  order: 8;
}

.tw-order-9 {
  order: 9;
}

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

.tw-col-span-2 {
  grid-column: span 2 / span 2;
}

.tw-col-span-6 {
  grid-column: span 6 / span 6;
}

.tw-m-0 {
  margin: 0px;
}

.tw-mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.tw-my-3 {
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}

.tw-my-5 {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}

.tw-mb-3 {
  margin-bottom: 0.75rem;
}

.tw-mb-7 {
  margin-bottom: 1.75rem;
}

.tw-mb-8 {
  margin-bottom: 2rem;
}

.tw-ml-0\.5 {
  margin-left: 0.125rem;
}

.tw-mt-0\.5 {
  margin-top: 0.125rem;
}

.tw-mt-1 {
  margin-top: 0.25rem;
}

.tw-mt-1\.5 {
  margin-top: 0.375rem;
}

.tw-mt-10 {
  margin-top: 2.5rem;
}

.tw-mt-2 {
  margin-top: 0.5rem;
}

.tw-mt-3 {
  margin-top: 0.75rem;
}

.tw-mt-4 {
  margin-top: 1rem;
}

.tw-mt-5 {
  margin-top: 1.25rem;
}

.tw-mt-6 {
  margin-top: 1.5rem;
}

.tw-mt-8 {
  margin-top: 2rem;
}

.tw-mt-\[20px\] {
  margin-top: 20px;
}

.tw-mt-\[6px\] {
  margin-top: 6px;
}

.tw-mt-\[clamp\(24px\,calc\(2\.08px_\+_6\.09vw\)\,119px\)\] {
  margin-top: clamp(24px, calc(2.08px + 6.09vw), 119px);
}

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

.tw-block {
  display: block;
}

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

.tw-flex {
  display: flex;
}

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

.tw-grid {
  display: grid;
}

.tw-contents {
  display: contents;
}

.tw-hidden {
  display: none;
}

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

.tw-aspect-\[419\/332\] {
  aspect-ratio: 419/332;
}

.tw-aspect-\[420\/360\] {
  aspect-ratio: 420/360;
}

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

.tw-aspect-\[997\/604\] {
  aspect-ratio: 997/604;
}

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

.tw-size-3 {
  width: 0.75rem;
  height: 0.75rem;
}

.tw-h-0\.5 {
  height: 0.125rem;
}

.tw-h-10 {
  height: 2.5rem;
}

.tw-h-11 {
  height: 2.75rem;
}

.tw-h-12 {
  height: 3rem;
}

.tw-h-14 {
  height: 3.5rem;
}

.tw-h-2 {
  height: 0.5rem;
}

.tw-h-24 {
  height: 6rem;
}

.tw-h-3 {
  height: 0.75rem;
}

.tw-h-3\.5 {
  height: 0.875rem;
}

.tw-h-4 {
  height: 1rem;
}

.tw-h-5 {
  height: 1.25rem;
}

.tw-h-6 {
  height: 1.5rem;
}

.tw-h-8 {
  height: 2rem;
}

.tw-h-9 {
  height: 2.25rem;
}

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

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

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

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

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

.tw-h-\[clamp\(16px\,calc\(12\.31px_\+_1\.026vw\)\,32px\)\] {
  height: clamp(16px, calc(12.31px + 1.026vw), 32px);
}

.tw-h-\[clamp\(40px\,calc\(30\.77px_\+_2\.564vw\)\,80px\)\] {
  height: clamp(40px, calc(30.77px + 2.564vw), 80px);
}

.tw-h-auto {
  height: auto;
}

.tw-h-full {
  height: 100%;
}

.tw-max-h-10 {
  max-height: 2.5rem;
}

.tw-max-h-full {
  max-height: 100%;
}

.tw-min-h-0 {
  min-height: 0px;
}

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

.tw-w-0 {
  width: 0px;
}

.tw-w-10 {
  width: 2.5rem;
}

.tw-w-11 {
  width: 2.75rem;
}

.tw-w-12 {
  width: 3rem;
}

.tw-w-14 {
  width: 3.5rem;
}

.tw-w-2 {
  width: 0.5rem;
}

.tw-w-3 {
  width: 0.75rem;
}

.tw-w-3\.5 {
  width: 0.875rem;
}

.tw-w-4 {
  width: 1rem;
}

.tw-w-5 {
  width: 1.25rem;
}

.tw-w-6 {
  width: 1.5rem;
}

.tw-w-8 {
  width: 2rem;
}

.tw-w-9 {
  width: 2.25rem;
}

.tw-w-\[260px\] {
  width: 260px;
}

.tw-w-\[265px\] {
  width: 265px;
}

.tw-w-\[280px\] {
  width: 280px;
}

.tw-w-\[35px\] {
  width: 35px;
}

.tw-w-\[calc\(100\%-20px\)\] {
  width: calc(100% - 20px);
}

.tw-w-\[clamp\(16px\,calc\(12\.31px_\+_1\.026vw\)\,32px\)\] {
  width: clamp(16px, calc(12.31px + 1.026vw), 32px);
}

.tw-w-\[clamp\(28px\,calc\(21\.77px_\+_1\.731vw\)\,55px\)\] {
  width: clamp(28px, calc(21.77px + 1.731vw), 55px);
}

.tw-w-\[clamp\(40px\,calc\(30\.77px_\+_2\.564vw\)\,80px\)\] {
  width: clamp(40px, calc(30.77px + 2.564vw), 80px);
}

.tw-w-auto {
  width: auto;
}

.tw-w-fit {
  width: -moz-fit-content;
  width: fit-content;
}

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

.tw-min-w-0 {
  min-width: 0px;
}

.tw-max-w-2xl {
  max-width: 42rem;
}

.tw-max-w-3xl {
  max-width: 48rem;
}

.tw-max-w-\[1200px\] {
  max-width: 1200px;
}

.tw-max-w-\[1320px\] {
  max-width: 1320px;
}

.tw-max-w-\[160px\] {
  max-width: 160px;
}

.tw-max-w-\[220px\] {
  max-width: 220px;
}

.tw-max-w-\[240px\] {
  max-width: 240px;
}

.tw-max-w-\[320px\] {
  max-width: 320px;
}

.tw-max-w-\[620px\] {
  max-width: 620px;
}

.tw-max-w-\[640px\] {
  max-width: 640px;
}

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

.tw-max-w-sm {
  max-width: 24rem;
}

.tw-max-w-xl {
  max-width: 36rem;
}

.tw-flex-1 {
  flex: 1 1 0%;
}

.tw-flex-none {
  flex: none;
}

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

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

.tw-origin-top-right {
  transform-origin: top right;
}

.-tw-translate-y-1\/2 {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.tw--translate-x-1\/2 {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.tw--translate-y-1\/2 {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.tw-scale-100 {
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.tw-scale-105 {
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.tw-scale-90 {
  --tw-scale-x: .9;
  --tw-scale-y: .9;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.tw-scale-95 {
  --tw-scale-x: .95;
  --tw-scale-y: .95;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.tw-cursor-default {
  cursor: default;
}

.tw-cursor-pointer {
  cursor: pointer;
}

.tw-select-none {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.tw-snap-x {
  scroll-snap-type: x var(--tw-scroll-snap-strictness);
}

.tw-snap-mandatory {
  --tw-scroll-snap-strictness: mandatory;
}

.tw-snap-start {
  scroll-snap-align: start;
}

.tw-snap-center {
  scroll-snap-align: center;
}

.tw-scroll-mt-24 {
  scroll-margin-top: 6rem;
}

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

.tw-appearance-none {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.tw-columns-1 {
  -moz-columns: 1;
       columns: 1;
}

.tw-break-inside-avoid {
  -moz-column-break-inside: avoid;
       break-inside: avoid;
}

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

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

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

.tw-grid-cols-\[clamp\(56px\,calc\(40px_\+_4vw\)\,110px\)_1fr\] {
  grid-template-columns: clamp(56px, calc(40px + 4vw), 110px) 1fr;
}

.tw-flex-row {
  flex-direction: row;
}

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

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

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

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

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

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

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

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

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

.tw-gap-0\.5 {
  gap: 0.125rem;
}

.tw-gap-1 {
  gap: 0.25rem;
}

.tw-gap-1\.5 {
  gap: 0.375rem;
}

.tw-gap-2 {
  gap: 0.5rem;
}

.tw-gap-3 {
  gap: 0.75rem;
}

.tw-gap-4 {
  gap: 1rem;
}

.tw-gap-5 {
  gap: 1.25rem;
}

.tw-gap-6 {
  gap: 1.5rem;
}

.tw-gap-8 {
  gap: 2rem;
}

.tw-gap-\[45px\] {
  gap: 45px;
}

.tw-gap-\[7px\] {
  gap: 7px;
}

.tw-gap-x-10 {
  -moz-column-gap: 2.5rem;
       column-gap: 2.5rem;
}

.tw-gap-x-3 {
  -moz-column-gap: 0.75rem;
       column-gap: 0.75rem;
}

.tw-gap-x-5 {
  -moz-column-gap: 1.25rem;
       column-gap: 1.25rem;
}

.tw-gap-x-6 {
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}

.tw-gap-x-8 {
  -moz-column-gap: 2rem;
       column-gap: 2rem;
}

.tw-gap-y-1 {
  row-gap: 0.25rem;
}

.tw-gap-y-2 {
  row-gap: 0.5rem;
}

.tw-gap-y-3 {
  row-gap: 0.75rem;
}

.tw-gap-y-4 {
  row-gap: 1rem;
}

.tw-gap-y-6 {
  row-gap: 1.5rem;
}

.tw-gap-y-7 {
  row-gap: 1.75rem;
}

.tw-space-y-1\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));
}

.tw-self-start {
  align-self: flex-start;
}

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

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

.tw-overflow-y-auto {
  overflow-y: auto;
}

.tw-overflow-y-visible {
  overflow-y: visible;
}

.tw-scroll-smooth {
  scroll-behavior: smooth;
}

.tw-whitespace-nowrap {
  white-space: nowrap;
}

.tw-rounded {
  border-radius: 0.25rem;
}

.tw-rounded-2xl {
  border-radius: 1rem;
}

.tw-rounded-\[20px\] {
  border-radius: 20px;
}

.tw-rounded-\[28px\] {
  border-radius: 28px;
}

.tw-rounded-full {
  border-radius: 9999px;
}

.tw-rounded-xl {
  border-radius: 0.75rem;
}

.tw-rounded-t-\[30px\] {
  border-top-left-radius: 30px;
  border-top-right-radius: 30px;
}

.tw-border {
  border-width: 1px;
}

.tw-border-0 {
  border-width: 0px;
}

.tw-border-2 {
  border-width: 2px;
}

.tw-border-x {
  border-left-width: 1px;
  border-right-width: 1px;
}

.tw-border-t {
  border-top-width: 1px;
}

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

.tw-border-\[\#D8E4F5\] {
  --tw-border-opacity: 1;
  border-color: rgb(216 228 245 / var(--tw-border-opacity, 1));
}

.tw-border-\[\#FFFFFF99\] {
  border-color: #FFFFFF99;
}

.tw-border-\[\#e6e6e6\] {
  --tw-border-opacity: 1;
  border-color: rgb(230 230 230 / var(--tw-border-opacity, 1));
}

.tw-border-arrow {
  --tw-border-opacity: 1;
  border-color: rgb(157 181 211 / var(--tw-border-opacity, 1));
}

.tw-border-inactive\/60 {
  border-color: rgb(174 187 207 / 0.6);
}

.tw-border-primary {
  --tw-border-opacity: 1;
  border-color: rgb(238 47 83 / var(--tw-border-opacity, 1));
}

.tw-border-white\/70 {
  border-color: rgb(255 255 255 / 0.7);
}

.tw-border-white\/80 {
  border-color: rgb(255 255 255 / 0.8);
}

.tw-bg-\[\#7C8A9D80\] {
  background-color: #7C8A9D80;
}

.tw-bg-\[\#D6E4F4\] {
  --tw-bg-opacity: 1;
  background-color: rgb(214 228 244 / var(--tw-bg-opacity, 1));
}

.tw-bg-\[\#D8E4F5\] {
  --tw-bg-opacity: 1;
  background-color: rgb(216 228 245 / var(--tw-bg-opacity, 1));
}

.tw-bg-\[\#F7F5EE\] {
  --tw-bg-opacity: 1;
  background-color: rgb(247 245 238 / var(--tw-bg-opacity, 1));
}

.tw-bg-arrow {
  --tw-bg-opacity: 1;
  background-color: rgb(157 181 211 / var(--tw-bg-opacity, 1));
}

.tw-bg-bg {
  --tw-bg-opacity: 1;
  background-color: rgb(248 252 255 / var(--tw-bg-opacity, 1));
}

.tw-bg-black\/80 {
  background-color: rgb(0 0 0 / 0.8);
}

.tw-bg-primary {
  --tw-bg-opacity: 1;
  background-color: rgb(238 47 83 / var(--tw-bg-opacity, 1));
}

.tw-bg-secondary {
  --tw-bg-opacity: 1;
  background-color: rgb(236 104 131 / var(--tw-bg-opacity, 1));
}

.tw-bg-text {
  --tw-bg-opacity: 1;
  background-color: rgb(74 78 84 / var(--tw-bg-opacity, 1));
}

.tw-bg-tile {
  --tw-bg-opacity: 1;
  background-color: rgb(214 228 244 / var(--tw-bg-opacity, 1));
}

.tw-bg-transparent {
  background-color: transparent;
}

.tw-bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.tw-bg-white\/0 {
  background-color: rgb(255 255 255 / 0);
}

.tw-bg-white\/10 {
  background-color: rgb(255 255 255 / 0.1);
}

.tw-bg-gradient-to-r {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}

.tw-bg-gradient-to-t {
  background-image: linear-gradient(to top, var(--tw-gradient-stops));
}

.tw-bg-none {
  background-image: none;
}

.tw-from-black\/70 {
  --tw-gradient-from: rgb(0 0 0 / 0.7) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.tw-from-text\/75 {
  --tw-gradient-from: rgb(74 78 84 / 0.75) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(74 78 84 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.tw-from-text\/90 {
  --tw-gradient-from: rgb(74 78 84 / 0.9) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(74 78 84 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.tw-via-black\/10 {
  --tw-gradient-to: rgb(0 0 0 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(0 0 0 / 0.1) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.tw-via-text\/70 {
  --tw-gradient-to: rgb(74 78 84 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(74 78 84 / 0.7) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.tw-to-text\/30 {
  --tw-gradient-to: rgb(74 78 84 / 0.3) var(--tw-gradient-to-position);
}

.tw-to-transparent {
  --tw-gradient-to: transparent var(--tw-gradient-to-position);
}

.tw-fill-primary {
  fill: #EE2F53;
}

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

.tw-object-center {
  -o-object-position: center;
     object-position: center;
}

.tw-object-right {
  -o-object-position: right;
     object-position: right;
}

.tw-object-top {
  -o-object-position: top;
     object-position: top;
}

.tw-p-0 {
  padding: 0px;
}

.tw-p-1\.5 {
  padding: 0.375rem;
}

.tw-p-4 {
  padding: 1rem;
}

.tw-p-5 {
  padding: 1.25rem;
}

.tw-p-6 {
  padding: 1.5rem;
}

.tw-px-10 {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.tw-px-3 {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.tw-px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.tw-px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.tw-px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.tw-px-8 {
  padding-left: 2rem;
  padding-right: 2rem;
}

.tw-px-\[calc\(50\%-140px\)\] {
  padding-left: calc(50% - 140px);
  padding-right: calc(50% - 140px);
}

.tw-py-1 {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

.tw-py-10 {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.tw-py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.tw-py-2\.5 {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}

.tw-py-3 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.tw-py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.tw-py-6 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.tw-py-8 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.tw-pb-4 {
  padding-bottom: 1rem;
}

.tw-pb-8 {
  padding-bottom: 2rem;
}

.tw-pl-2 {
  padding-left: 0.5rem;
}

.tw-pl-3 {
  padding-left: 0.75rem;
}

.tw-pr-1 {
  padding-right: 0.25rem;
}

.tw-pr-12 {
  padding-right: 3rem;
}

.tw-pr-6 {
  padding-right: 1.5rem;
}

.tw-pt-0\.5 {
  padding-top: 0.125rem;
}

.tw-pt-\[60px\] {
  padding-top: 60px;
}

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

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

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

.tw-font-heading {
  font-family: Forum, serif;
}

.tw-font-sans {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

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

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

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

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

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

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

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

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

.tw-text-\[clamp\(\.\.\.\)\] {
  font-size: clamp(...);
}

.tw-text-\[clamp\(12px\,calc\(11\.54px_\+_0\.128vw\)\,14px\)\] {
  font-size: clamp(12px, calc(11.54px + 0.128vw), 14px);
}

.tw-text-\[clamp\(14px\,calc\(13\.54px_\+_0\.128vw\)\,16px\)\] {
  font-size: clamp(14px, calc(13.54px + 0.128vw), 16px);
}

.tw-text-\[clamp\(16px\,calc\(15\.08px_\+_0\.256vw\)\,18px\)\] {
  font-size: clamp(16px, calc(15.08px + 0.256vw), 18px);
}

.tw-text-\[clamp\(16px\,calc\(15\.08px_\+_0\.256vw\)\,20px\)\] {
  font-size: clamp(16px, calc(15.08px + 0.256vw), 20px);
}

.tw-text-\[clamp\(28px\,calc\(21\.77px_\+_1\.731vw\)\,55px\)\] {
  font-size: clamp(28px, calc(21.77px + 1.731vw), 55px);
}

.tw-text-\[clamp\(28px\,calc\(24\.08px_\+_1\.09vw\)\,45px\)\] {
  font-size: clamp(28px, calc(24.08px + 1.09vw), 45px);
}

.tw-text-\[clamp\(40px\,calc\(30\.77px_\+_2\.564vw\)\,80px\)\] {
  font-size: clamp(40px, calc(30.77px + 2.564vw), 80px);
}

.tw-text-\[clamp\(40px\,calc\(31\.46px_\+_2\.372vw\)\,77px\)\] {
  font-size: clamp(40px, calc(31.46px + 2.372vw), 77px);
}

.tw-text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}

.tw-text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.tw-text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.tw-text-text {
  font-size: 14px;
  line-height: 1.4;
  font-weight: 400;
}

.tw-text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}

.tw-font-bold {
  font-weight: 500;
}

.tw-font-medium {
  font-weight: 500;
}

.tw-font-normal {
  font-weight: 400;
}

.tw-font-semibold {
  font-weight: 400;
}

.tw-uppercase {
  text-transform: uppercase;
}

.tw-leading-6 {
  line-height: 1.5rem;
}

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

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

.tw-leading-\[1\.2\] {
  line-height: 1.2;
}

.tw-leading-\[1\.35\] {
  line-height: 1.35;
}

.tw-leading-\[1\.4\] {
  line-height: 1.4;
}

.tw-leading-\[1\.5\] {
  line-height: 1.5;
}

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

.tw-leading-relaxed {
  line-height: 1.625;
}

.tw-leading-snug {
  line-height: 1.375;
}

.tw-leading-tight {
  line-height: 1.25;
}

.tw-tracking-normal {
  letter-spacing: 0em;
}

.tw-tracking-wide {
  letter-spacing: 0.025em;
}

.tw-text-arrow {
  --tw-text-opacity: 1;
  color: rgb(157 181 211 / var(--tw-text-opacity, 1));
}

.tw-text-primary {
  --tw-text-opacity: 1;
  color: rgb(238 47 83 / var(--tw-text-opacity, 1));
}

.tw-text-secondary {
  --tw-text-opacity: 1;
  color: rgb(236 104 131 / var(--tw-text-opacity, 1));
}

.tw-text-text {
  --tw-text-opacity: 1;
  color: rgb(74 78 84 / var(--tw-text-opacity, 1));
}

.tw-text-text\/40 {
  color: rgb(74 78 84 / 0.4);
}

.tw-text-text\/50 {
  color: rgb(74 78 84 / 0.5);
}

.tw-text-text\/55 {
  color: rgb(74 78 84 / 0.55);
}

.tw-text-text\/60 {
  color: rgb(74 78 84 / 0.6);
}

.tw-text-text\/70 {
  color: rgb(74 78 84 / 0.7);
}

.tw-text-text\/75 {
  color: rgb(74 78 84 / 0.75);
}

.tw-text-text\/80 {
  color: rgb(74 78 84 / 0.8);
}

.tw-text-text\/85 {
  color: rgb(74 78 84 / 0.85);
}

.tw-text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.tw-text-white\/80 {
  color: rgb(255 255 255 / 0.8);
}

.tw-no-underline {
  text-decoration-line: none;
}

.tw-opacity-0 {
  opacity: 0;
}

.tw-opacity-100 {
  opacity: 1;
}

.tw-opacity-90 {
  opacity: 0.9;
}

.tw-shadow-\[0_1px_0_rgba\(174\,187\,207\,0\.18\)\] {
  --tw-shadow: 0 1px 0 rgba(174,187,207,0.18);
  --tw-shadow-colored: 0 1px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.tw-shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.tw-shadow-none {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.tw-outline-none {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

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

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

.tw-backdrop-blur-\[40px\] {
  --tw-backdrop-blur: blur(40px);
  -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);
}

.tw-backdrop-blur-md {
  --tw-backdrop-blur: blur(12px);
  -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);
}

.tw-transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.tw-transition-\[width\] {
  transition-property: width;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.tw-transition-all {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.tw-transition-colors {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.tw-transition-opacity {
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.tw-transition-transform {
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

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

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

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

.tw-ease-out {
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.\[-ms-overflow-style\:none\] {
  -ms-overflow-style: none;
}

.\[code\:protected\] {
  code: protected;
}

.\[container-type\:inline-size\] {
  container-type: inline-size;
}

.\[file\:protected\] {
  file: protected;
}

.\[line\:protected\] {
  line: protected;
}

.\[message\:protected\] {
  message: protected;
}

.\[scrollbar-color\:\#EE2F53_transparent\] {
  scrollbar-color: #EE2F53 transparent;
}

.\[scrollbar-width\:none\] {
  scrollbar-width: none;
}

.\[scrollbar-width\:thin\] {
  scrollbar-width: thin;
}

/*
  Кастомные select-дропдауны (js-clinic-select, js-video-type-select и
  подобные): рисуем свою SVG-стрелку рядом, а нативную скрываем через
  tw-appearance-none. Но в IE/Edge нативная стрелка рисуется отдельным
  псевдоэлементом ::-ms-expand и appearance:none её не убирает — из-за
  этого рядом с нашим шевроном вылезал ещё маленький треугольник. Прибиваем
  его явно.
*/

select.tw-appearance-none::-ms-expand {
  display: none;
}

/*
  Найден точный источник "треугольника, который появляется через секунду":
  bitrix/templates/cmt-new/template_styles.css содержит правило
  `.bx-chrome select{background:url(.../Arrow_small.svg)...}`. Класс
  .bx-chrome Bitrix вешает на <body> только когда залогинен админ и
  прогрузилась панель редактирования (отсюда и задержка ~1с). Специфичность
  этого правила (класс+тег) выше нашего одного класса tw-bg-none, поэтому
  оно побеждает несмотря на то что применяется позже. Перебиваем явно, не
  трогая сам template_styles.css (он управляется визуальным редактором
  Bitrix и может перезаписаться).
*/

.bx-chrome select.tw-appearance-none {
  background-image: none !important;
}

/*
  ВАЖНО про tw-text-[#4A4E54] ниже: в tailwind.config.js есть одноимённые
  ключи colors.text (#4A4E54) и fontSize.text (14px) — оба порождают один
  и тот же класс "tw-text-text", но с разными наборами свойств (цвет vs
  font-size/line-height/font-weight). Если использовать tw-text-text здесь
  ради цвета, он ПОПУТНО тянет за собой font-size:14px, который в
  скомпилированном CSS идёт позже tw-text-h1-xs/h2-xs/h3-xs/h4-xs (ключ
  "text" в fontSize объявлен ниже h1/h2/h3/h4) и перебивает нужный размер —
  именно так H1 на мобилке внезапно становился 14px. Поэтому цвет здесь
  задаём напрямую через arbitrary value, а не через tw-text-text.
*/

/*
  Боковые отступы общего контейнера контента — один класс на все секции
  главной (баннер, врачи, отзывы, новости, услуги, видео, статистика,
  форма записи и т.д.), вместо того чтобы в каждом файле по отдельности
  прописывать "tw-px-4 xs:tw-px-6 md:tw-px-... 2xl:tw-px-...". Значение
  меняется только тут — не нужно искать и править 16 файлов.
  mx-auto/max-w-[1200px] остаются в самих компонентах как были (там, где
  секция full-bleed по фону, а контент внутри — уже центрируется).
*/

/* Легаси-тема (bitrix/templates/cmt-new/assets/styles/layout.css) задаёт
   "body{background:#fff;...}" — специфичность (0,0,1), та же, что была бы
   у обычного "body{background:#F8FCFF}", а порядок подключения файлов
   в <head> не гарантирован (Tailwind регистрируется через AddHeadString
   в OnProlog, легаси-стили — отдельно, через штатный конвейер шаблона),
   поэтому при равной специфичности мог победить любой из них в зависимости
   от порядка. Поднимаем специфичность до (0,0,2), чтобы фон страницы
   гарантированно был #F8FCFF независимо от порядка подключения. */

html body {
  background: #F8FCFF;
}

/* Forum — довольно контрастный serif, и без сглаживания браузер (особенно Chrome/Safari
   на Retina) рендерит его заметно жирнее, чем показывает Figma. Включаем antialiased —
   это не меняет font-weight, только способ отрисовки, буквы становятся тоньше/чётче. */

.tw-font-heading {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* Легаси-тема (bitrix/templates/cmt-new/assets/styles/layout.css) вешает
   ".main-v2_1 h1/h2/h3..." с font-weight/font-size/line-height (в т.ч. отдельно
   под свои медиа-запросы) — у пары класс+тег специфичность (0,1,1), она выше
   одиночного tw-класса (0,1,0) и перебивает наши размеры/жирность даже в пределах
   Tailwind-блоков. Решаем не через !important (хрупко и не всегда подхватывается
   JIT-сборкой), а явно поднимаем специфичность до (0,2,1) точечно для заголовка
   блока "Цифровая статистика" (.stats2-title) — так побеждаем легаси независимо
   от порядка подключения файлов и брейкпоинтов легаси-темы.
   ВАЖНО: значения здесь продублированы из stats.php (font-size — тот же fluid
   clamp(), что в tw-text-[clamp(...)] у .stats2-title, чтобы заголовок одинаково
   плавно масштабировался и под легаси-правилом). Если понадобится починить так же
   другой Tailwind-заголовок (например h1 в hero-banner.php) — не расширяйте этот
   селектор на h1/h3/h4 огулом, а добавьте отдельное точно такое же по духу, но
   со СВОИМИ значениями правило. */

.main-v2_1 h2.stats2-title {
  margin: 0;
  font-weight: 400;
  font-size: clamp(28px, calc(24.08px + 1.09vw), 45px);
  line-height: 1.2;
}

/* Тот же легаси-конфликт (см. комментарий выше), теперь для заголовка блока
   "Поиск услуг" (.service-search-title). Значения продублированы из
   service-search.php: tw-text-[28px]/md:tw-text-[34px], tw-font-normal,
   tw-leading-tight (line-height: 1.25 — стандартный Tailwind leading-tight). */

.main-v2_1 h2.service-search-title {
  margin: 0;
  font-weight: 400;
  font-size: 28px;
  line-height: 1.25;
}

@media (min-width: 992px) {
  .main-v2_1 h2.service-search-title {
    font-size: 34px;
  }
}

/* Тот же легаси-конфликт, теперь для заголовка блока "Ведущие специалисты"
   (.staff-title). Значения продублированы из main-page-staff/template.php:
   tw-text-[28px]/md:tw-text-h2 (45px/1.15 — так задан fontSize.h2 в
   tailwind.config.js), tw-font-normal, tw-leading-tight (1.25) на мобиле. */

.main-v2_1 h2.staff-title {
  margin: 0;
  font-weight: 400;
  font-size: 28px;
  line-height: 1.25;
}

@media (min-width: 992px) {
  .main-v2_1 h2.staff-title {
    font-size: 45px;
    line-height: 1.15;
  }
}

/* Тот же легаси-конфликт, теперь для заголовка блока "Видео о Клиниках СМТ"
   (.video-title). Значения продублированы из video-block.php: tw-text-[28px]/
   md:tw-text-h2 (45px/1.15), tw-font-normal, tw-leading-tight (1.25) на мобиле. */

.main-v2_1 h2.video-title {
  margin: 0;
  font-weight: 400;
  font-size: 28px;
  line-height: 1.25;
}

@media (min-width: 992px) {
  .main-v2_1 h2.video-title {
    font-size: 45px;
    line-height: 1.15;
  }
}

/* Тот же легаси-конфликт, теперь для заголовка блока "Отзывы пациентов"
   (.reviews-title). Значения продублированы из main-page-reviews-tw/template.php:
   tw-text-[28px]/md:tw-text-h2 (45px/1.15), tw-font-normal, tw-leading-tight
   (1.25) на мобиле. */

.main-v2_1 h2.reviews-title {
  margin: 0;
  font-weight: 400;
  font-size: 28px;
  line-height: 1.25;
}

@media (min-width: 992px) {
  .main-v2_1 h2.reviews-title {
    font-size: 45px;
    line-height: 1.15;
  }
}

/* Тот же легаси-конфликт (на всякий случай — прямого ".main-v2_1 h1" правила
   в легаси-теме не нашлось, но заголовок баннера тоже h1.tw-font-heading,
   так что чиним на всякий случай тем же приёмом, что и остальные заголовки).
   Значения продублированы из main-page-big-banners-tw/template.php:
   tw-text-[44px], tw-font-normal, tw-uppercase, tw-leading-[1.05] на мобиле;
   80.5px/109%/uppercase на десктопе — точно по макету. */

.main-v2_1 h1.hero-title {
  margin: 0;
  font-weight: 400;
  font-size: 44px;
  line-height: 1.05;
  text-transform: uppercase;
  letter-spacing: 0;
}

@media (min-width: 992px) {
  .main-v2_1 h1.hero-title {
    font-size: 80.5px;
    line-height: 1.09;
  }
}

/* Плавное появление блоков на скролле (по аналогии с https://hm.clinic) —
   ТОЛЬКО на главной странице (.main-v2_1 существует только там, т.к. cmt-new
   подключается лишь к index.php/index1.php). Класс js-scroll-reveal вешается
   через JS (см. bitrix/templates/cmt-new/footer.php, скрипт перед </body>) на
   каждый прямой дочерний блок <main class="main-v2_1"> — т.е. на каждую секцию
   (баннер/статистика/поиск услуг/врачи/акции/видео/отзывы/новости/запись/адреса).
   ВАЖНО: opacity:0 задаём через ОБЫЧНЫЙ CSS-класс (а не инлайн-стиль,
   выставляемый JS-ом) — это гарантирует, что блок скрыт СРАЗУ при первой
   отрисовке страницы, ещё до того как JS вообще успел выполниться, и не
   будет "мигания" (сначала видно — потом резко прячется). JS лишь добавляет
   .is-revealed, когда блок попал во вьюпорт — тогда включается transition. */

.js-scroll-reveal {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: opacity, transform;
}

.js-scroll-reveal.is-revealed {
  opacity: 1;
  transform: translateY(0);
}

/* Если у пользователя в ОС включено "уменьшить анимацию" — просто показываем
   блоки сразу, без сдвига/прозрачности (доступность). */

@media (prefers-reduced-motion: reduce) {
  .js-scroll-reveal {
    transition: none;
    opacity: 1;
    transform: none;
  }
}

/* Страховка на случай, если JS по какой-то причине не выполнится (ошибка,
   отключённый JS, отсутствие IntersectionObserver в очень старом браузере):
   скрипт в footer.php сам добавляет этот класс на <main> как фолбэк и снимает
   анимацию со всех блоков, чтобы контент точно остался доступен. */

.js-scroll-reveal-fallback .js-scroll-reveal {
  opacity: 1;
  transform: none;
  transition: none;
}

/* Отдельная анимация появления ЗАГОЛОВКОВ блоков главной (h2/h3/h4/h5/h6,
   КРОМЕ h1 — у h1 в баннере своя анимация/логика, его не трогаем). По
   аналогии с заголовком "Медицинские услуги Heartman Clinic в Москве" на
   https://hm.clinic — появление снизу вверх + fade. Это ДОПОЛНИТЕЛЬНО поверх
   .js-scroll-reveal у самого блока (см. выше): блок-обёртка проявляется
   целиком, а вложенный в него заголовок ЕЩЁ И сам едет чуть снизу — эффект
   лёгкого расслоения по времени, а не два одинаковых сдвига в одну кучу
   (смещение у заголовка меньше, чем у блока: 28px против 40px). Класс вешает
   JS (см. bitrix/templates/cmt-new/footer.php) на каждый h2–h6 внутри
   <main class="main-v2_1">, кроме h1. opacity:0 задаётся обычным CSS-классом
   (не инлайн-стилем) — чтобы не было мигания до выполнения JS, как и у
   .js-scroll-reveal. */

.js-heading-reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: opacity, transform;
}

.js-heading-reveal.is-revealed {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .js-heading-reveal {
    transition: none;
    opacity: 1;
    transform: none;
  }
}

.js-scroll-reveal-fallback .js-heading-reveal {
  opacity: 1;
  transform: none;
  transition: none;
}

/* Виджет коллтрекинга Callibri (cdn.callibri.ru/callibri.js, подключён в
   footer.php и cmt-new, и aspro-medc2) подменяет телефон в шапке (и везде,
   где используется CMedc2::ShowHeaderPhones с классом call_phone_3) на
   подменный номер для отслеживания звонков — так работает вообще любой
   коллтрекинг, это ожидаемо и трогать нельзя. НО делает он это, вставляя
   СВОЙ собственный <a>, из-за чего наши tw-классы (tw-text-text,
   tw-no-underline, tw-font-semibold и т.д.) слетают с элемента — отсюда
   стандартный дефолтный вид Callibri "синий + подчёркнутый" вместо нашего.
   Бить напрямую по .call_phone_3 нельзя — это ИМЕННО тот класс, который
   Callibri ищет и подменяет, гарантий, что он останется на новом элементе,
   нет. Вместо этого используем стабильного родителя — div.phone, который
   рендерит CMedc2::ShowHeaderPhones (bitrix/modules/aspro.medc2/classes/
   general/CMedc2.php) и который Callibri не трогает (меняет только сам
   номер/ссылку внутри). !important — потому что у виджетов коллтрекинга
   свои стили почти всегда идут с !important. */

.phone a[href^="tel:"] {
  color: inherit !important;
  font: inherit !important;
  text-decoration: none !important;
}

.title-h2 {
  color: #9db5d3 !important;
}

.placeholder\:tw-text-primary::-moz-placeholder {
  --tw-text-opacity: 1;
  color: rgb(238 47 83 / var(--tw-text-opacity, 1));
}

.placeholder\:tw-text-primary::placeholder {
  --tw-text-opacity: 1;
  color: rgb(238 47 83 / var(--tw-text-opacity, 1));
}

.placeholder\:tw-text-text\/40::-moz-placeholder {
  color: rgb(74 78 84 / 0.4);
}

.placeholder\:tw-text-text\/40::placeholder {
  color: rgb(74 78 84 / 0.4);
}

.placeholder\:tw-text-text\/50::-moz-placeholder {
  color: rgb(74 78 84 / 0.5);
}

.placeholder\:tw-text-text\/50::placeholder {
  color: rgb(74 78 84 / 0.5);
}

.hover\:tw-scale-105:hover {
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:tw-border-primary:hover {
  --tw-border-opacity: 1;
  border-color: rgb(238 47 83 / var(--tw-border-opacity, 1));
}

.hover\:tw-border-white:hover {
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}

.hover\:tw-bg-\[\#D8E4F5\]:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(216 228 245 / var(--tw-bg-opacity, 1));
}

.hover\:tw-bg-primary:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(238 47 83 / var(--tw-bg-opacity, 1));
}

.hover\:tw-bg-secondary:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(236 104 131 / var(--tw-bg-opacity, 1));
}

.hover\:tw-bg-white:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.hover\:tw-bg-white\/20:hover {
  background-color: rgb(255 255 255 / 0.2);
}

.hover\:tw-text-text:hover {
  font-size: 14px;
  line-height: 1.4;
  font-weight: 400;
}

.hover\:tw-text-primary:hover {
  --tw-text-opacity: 1;
  color: rgb(238 47 83 / var(--tw-text-opacity, 1));
}

.hover\:tw-text-secondary:hover {
  --tw-text-opacity: 1;
  color: rgb(236 104 131 / var(--tw-text-opacity, 1));
}

.hover\:tw-text-text:hover {
  --tw-text-opacity: 1;
  color: rgb(74 78 84 / var(--tw-text-opacity, 1));
}

.hover\:tw-text-white:hover {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.hover\:tw-opacity-80:hover {
  opacity: 0.8;
}

.hover\:tw-shadow-lg:hover {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.focus\:tw-outline-none:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

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

.focus\:tw-ring-primary\/40:focus {
  --tw-ring-color: rgb(238 47 83 / 0.4);
}

.disabled\:tw-cursor-not-allowed:disabled {
  cursor: not-allowed;
}

.disabled\:tw-border-arrow\/30:disabled {
  border-color: rgb(157 181 211 / 0.3);
}

.disabled\:tw-text-arrow\/30:disabled {
  color: rgb(157 181 211 / 0.3);
}

.disabled\:hover\:tw-border-arrow\/30:hover:disabled {
  border-color: rgb(157 181 211 / 0.3);
}

.disabled\:hover\:tw-text-arrow\/30:hover:disabled {
  color: rgb(157 181 211 / 0.3);
}

.tw-group:hover .group-hover\:tw-scale-110 {
  --tw-scale-x: 1.1;
  --tw-scale-y: 1.1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.tw-group:hover .group-hover\:tw-fill-secondary {
  fill: #EC6883;
}

.tw-peer:checked ~ .peer-checked\:tw-border-primary {
  --tw-border-opacity: 1;
  border-color: rgb(238 47 83 / var(--tw-border-opacity, 1));
}

.tw-peer:checked ~ .peer-checked\:tw-bg-primary {
  --tw-bg-opacity: 1;
  background-color: rgb(238 47 83 / var(--tw-bg-opacity, 1));
}

@media (min-width: 360px) {
  .xs\:tw-right-6 {
    right: 1.5rem;
  }

  .xs\:tw-w-\[300px\] {
    width: 300px;
  }

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

  .xs\:tw-px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .xs\:tw-px-\[calc\(50\%-150px\)\] {
    padding-left: calc(50% - 150px);
    padding-right: calc(50% - 150px);
  }
}

@media (min-width: 600px) {
  .min-\[600px\]\:tw-absolute {
    position: absolute;
  }

  .min-\[600px\]\:tw-relative {
    position: relative;
  }

  .min-\[600px\]\:tw-inset-0 {
    inset: 0px;
  }

  .min-\[600px\]\:tw-mb-0 {
    margin-bottom: 0px;
  }

  .min-\[600px\]\:tw-mb-\[30px\] {
    margin-bottom: 30px;
  }

  .min-\[600px\]\:tw-ml-auto {
    margin-left: auto;
  }

  .min-\[600px\]\:tw-mt-0 {
    margin-top: 0px;
  }

  .min-\[600px\]\:tw-block {
    display: block;
  }

  .min-\[600px\]\:tw-flex {
    display: flex;
  }

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

  .min-\[600px\]\:tw-h-full {
    height: 100%;
  }

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

  .min-\[600px\]\:tw-w-\[54\%\] {
    width: 54%;
  }

  .min-\[600px\]\:tw-w-\[calc\(\(100\%-40px\)\/2\)\] {
    width: calc((100% - 40px) / 2);
  }

  .min-\[600px\]\:tw-w-\[clamp\(\.\.\.\)\] {
    width: clamp(...);
  }

  .min-\[600px\]\:tw-w-\[clamp\(380px\2c calc\(-961\.83px_\+_135\.27vw\)\2c 660px\)\] {
    width: clamp(380px, calc(-961.83px + 135.27vw), 660px);
  }

  .min-\[600px\]\:tw-flex-col {
    flex-direction: column;
  }

  .min-\[600px\]\:tw-items-stretch {
    align-items: stretch;
  }

  .min-\[600px\]\:tw-justify-end {
    justify-content: flex-end;
  }

  .min-\[600px\]\:tw-gap-y-6 {
    row-gap: 1.5rem;
  }

  .min-\[600px\]\:tw-rounded-none {
    border-radius: 0px;
  }

  .min-\[600px\]\:tw-bg-\[linear-gradient\(to_right\2c rgba\(248\2c 252\2c 255\2c 0\)_15\%\2c \#F8FCFF_100\%\)\] {
    background-image: linear-gradient(to right,rgba(248,252,255,0) 15%,#F8FCFF 100%);
  }

  .min-\[600px\]\:tw-object-contain {
    -o-object-fit: contain;
       object-fit: contain;
  }

  .min-\[600px\]\:tw-object-left {
    -o-object-position: left;
       object-position: left;
  }

  .min-\[600px\]\:tw-py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .min-\[600px\]\:tw-py-8 {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

@media (min-width: 640px) {
  .sm\:tw-mt-0 {
    margin-top: 0px;
  }

  .sm\:tw-mt-8 {
    margin-top: 2rem;
  }

  .sm\:tw-block {
    display: block;
  }

  .sm\:tw-inline {
    display: inline;
  }

  .sm\:tw-flex {
    display: flex;
  }

  .sm\:tw-hidden {
    display: none;
  }

  .sm\:tw-h-\[380px\] {
    height: 380px;
  }

  .sm\:tw-w-\[300px\] {
    width: 300px;
  }

  .sm\:tw-w-auto {
    width: auto;
  }

  .sm\:tw-columns-2 {
    -moz-columns: 2;
         columns: 2;
  }

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

  .sm\:tw-flex-row {
    flex-direction: row;
  }

  .sm\:tw-flex-wrap {
    flex-wrap: wrap;
  }

  .sm\:tw-items-center {
    align-items: center;
  }

  .sm\:tw-gap-3 {
    gap: 0.75rem;
  }

  .sm\:tw-rounded-full {
    border-radius: 9999px;
  }

  .sm\:tw-bg-secondary {
    --tw-bg-opacity: 1;
    background-color: rgb(236 104 131 / var(--tw-bg-opacity, 1));
  }

  .sm\:tw-py-2 {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }

  .sm\:tw-pl-2 {
    padding-left: 0.5rem;
  }

  .sm\:tw-pr-8 {
    padding-right: 2rem;
  }

  .sm\:tw-text-center {
    text-align: center;
  }

  .sm\:tw-text-sm {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }

  .sm\:tw-font-semibold {
    font-weight: 400;
  }

  .sm\:hover\:tw-bg-primary:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(238 47 83 / var(--tw-bg-opacity, 1));
  }
}

@media (min-width: 992px) {
  .md\:tw-absolute {
    position: absolute;
  }

  .md\:tw-inset-0 {
    inset: 0px;
  }

  .md\:tw-right-10 {
    right: 2.5rem;
  }

  .md\:tw-top-8 {
    top: 2rem;
  }

  .md\:tw-order-none {
    order: 0;
  }

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

  .md\:tw-col-span-4 {
    grid-column: span 4 / span 4;
  }

  .md\:tw-col-start-1 {
    grid-column-start: 1;
  }

  .md\:tw-col-start-2 {
    grid-column-start: 2;
  }

  .md\:tw-col-start-3 {
    grid-column-start: 3;
  }

  .md\:tw-col-start-4 {
    grid-column-start: 4;
  }

  .md\:tw-row-start-1 {
    grid-row-start: 1;
  }

  .md\:tw-row-start-2 {
    grid-row-start: 2;
  }

  .md\:tw-row-start-3 {
    grid-row-start: 3;
  }

  .md\:tw-row-start-4 {
    grid-row-start: 4;
  }

  .md\:tw-mx-auto {
    margin-left: auto;
    margin-right: auto;
  }

  .md\:tw-mb-0 {
    margin-bottom: 0px;
  }

  .md\:tw-ml-auto {
    margin-left: auto;
  }

  .md\:tw-mt-0 {
    margin-top: 0px;
  }

  .md\:tw-mt-1 {
    margin-top: 0.25rem;
  }

  .md\:tw-mt-10 {
    margin-top: 2.5rem;
  }

  .md\:tw-mt-6 {
    margin-top: 1.5rem;
  }

  .md\:tw-mt-8 {
    margin-top: 2rem;
  }

  .md\:tw-mt-\[30px\] {
    margin-top: 30px;
  }

  .md\:tw-mt-\[60px\] {
    margin-top: 60px;
  }

  .md\:tw-mt-\[80px\] {
    margin-top: 80px;
  }

  .md\:tw-mt-\[clamp\(40px\2c calc\(-0\.85px_\+_11\.346vw\)\2c 217px\)\] {
    margin-top: clamp(40px, calc(-0.85px + 11.346vw), 217px);
  }

  .md\:tw-block {
    display: block;
  }

  .md\:tw-flex {
    display: flex;
  }

  .md\:tw-hidden {
    display: none;
  }

  .md\:tw-aspect-auto {
    aspect-ratio: auto;
  }

  .md\:tw-h-\[420px\] {
    height: 420px;
  }

  .md\:tw-h-\[clamp\(222px\2c calc\(196\.62px_\+_7\.051vw\)\2c 332px\)\] {
    height: clamp(222px, calc(196.62px + 7.051vw), 332px);
  }

  .md\:tw-h-full {
    height: 100%;
  }

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

  .md\:tw-min-h-\[620px\] {
    min-height: 620px;
  }

  .md\:tw-w-\[360px\] {
    width: 360px;
  }

  .md\:tw-w-\[54\%\] {
    width: 54%;
  }

  .md\:tw-w-\[calc\(\(100\%-40px\)\/3\)\] {
    width: calc((100% - 40px) / 3);
  }

  .md\:tw-w-\[clamp\(280px\2c calc\(247\.92px_\+_8\.9103vw\)\2c 419px\)\] {
    width: clamp(280px, calc(247.92px + 8.9103vw), 419px);
  }

  .md\:tw-w-auto {
    width: auto;
  }

  .md\:tw-max-w-\[1200px\] {
    max-width: 1200px;
  }

  .md\:tw-max-w-\[454px\] {
    max-width: 454px;
  }

  .md\:tw-max-w-\[576px\] {
    max-width: 576px;
  }

  .md\:tw-max-w-\[660px\] {
    max-width: 660px;
  }

  .md\:tw-flex-1 {
    flex: 1 1 0%;
  }

  .md\:tw-snap-start {
    scroll-snap-align: start;
  }

  .md\:tw-columns-3 {
    -moz-columns: 3;
         columns: 3;
  }

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

  .md\:tw-grid-cols-\[1\.3fr_0\.9fr_0\.9fr_1fr\] {
    grid-template-columns: 1.3fr 0.9fr 0.9fr 1fr;
  }

  .md\:tw-grid-cols-\[570px_minmax\(0\2c 1fr\)\] {
    grid-template-columns: 570px minmax(0,1fr);
  }

  .md\:tw-flex-row {
    flex-direction: row;
  }

  .md\:tw-items-start {
    align-items: flex-start;
  }

  .md\:tw-items-baseline {
    align-items: baseline;
  }

  .md\:tw-justify-start {
    justify-content: flex-start;
  }

  .md\:tw-justify-between {
    justify-content: space-between;
  }

  .md\:tw-gap-4 {
    gap: 1rem;
  }

  .md\:tw-gap-6 {
    gap: 1.5rem;
  }

  .md\:tw-gap-\[22px\] {
    gap: 22px;
  }

  .md\:tw-gap-x-4 {
    -moz-column-gap: 1rem;
         column-gap: 1rem;
  }

  .md\:tw-gap-x-8 {
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }

  .md\:tw-gap-x-\[clamp\(24px\2c calc\(17\.08px_\+_1\.923vw\)\2c 54px\)\] {
    -moz-column-gap: clamp(24px, calc(17.08px + 1.923vw), 54px);
         column-gap: clamp(24px, calc(17.08px + 1.923vw), 54px);
  }

  .md\:tw-gap-y-0 {
    row-gap: 0px;
  }

  .md\:tw-gap-y-6 {
    row-gap: 1.5rem;
  }

  .md\:tw-justify-self-end {
    justify-self: end;
  }

  .md\:tw-rounded-3xl {
    border-radius: 1.5rem;
  }

  .md\:tw-rounded-\[32px\] {
    border-radius: 32px;
  }

  .md\:tw-rounded-none {
    border-radius: 0px;
  }

  .md\:tw-border-l {
    border-left-width: 1px;
  }

  .md\:tw-border-inactive\/40 {
    border-color: rgb(174 187 207 / 0.4);
  }

  .md\:tw-bg-transparent {
    background-color: transparent;
  }

  .md\:tw-bg-\[linear-gradient\(to_right\2c rgba\(248\2c 252\2c 255\2c 0\)_45\%\2c \#F8FCFF_100\%\)\] {
    background-image: linear-gradient(to right,rgba(248,252,255,0) 45%,#F8FCFF 100%);
  }

  .md\:tw-p-12 {
    padding: 3rem;
  }

  .md\:tw-p-8 {
    padding: 2rem;
  }

  .md\:tw-px-0 {
    padding-left: 0px;
    padding-right: 0px;
  }

  .md\:tw-px-10 {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  .md\:tw-px-5 {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .md\:tw-px-8 {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .md\:tw-py-0 {
    padding-top: 0px;
    padding-bottom: 0px;
  }

  .md\:tw-py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .md\:tw-py-14 {
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
  }

  .md\:tw-py-16 {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .md\:tw-py-4 {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .md\:tw-py-8 {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .md\:tw-pb-10 {
    padding-bottom: 2.5rem;
  }

  .md\:tw-text-left {
    text-align: left;
  }

  .md\:tw-text-\[20px\] {
    font-size: 20px;
  }

  .md\:tw-text-\[28px\] {
    font-size: 28px;
  }

  .md\:tw-text-\[34px\] {
    font-size: 34px;
  }

  .md\:tw-text-\[80\.5px\] {
    font-size: 80.5px;
  }

  .md\:tw-text-base {
    font-size: 1rem;
    line-height: 1.5rem;
  }

  .md\:tw-text-h1 {
    font-size: 80px;
    line-height: 1.05;
    font-weight: 400;
  }

  .md\:tw-text-h2 {
    font-size: 45px;
    line-height: 1.2;
    font-weight: 400;
  }

  .md\:tw-text-sm {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }

  .md\:tw-leading-\[1\.09\] {
    line-height: 1.09;
  }

  .md\:tw-leading-\[1\.4\] {
    line-height: 1.4;
  }

  .md\:tw-shadow-none {
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  }

  .md\:first\:tw-border-l-0:first-child {
    border-left-width: 0px;
  }
}

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

  .lg\:tw-grid-cols-\[260px_360px_1fr\] {
    grid-template-columns: 260px 360px 1fr;
  }

  .lg\:tw-items-start {
    align-items: flex-start;
  }

  .lg\:tw-gap-8 {
    gap: 2rem;
  }
}

@media (min-width: 1200px) {
  .xl\:tw-ml-auto {
    margin-left: auto;
  }

  .xl\:tw-mt-\[clamp\(40px\2c calc\(-0\.85px_\+_11\.346vw\)\2c 217px\)\] {
    margin-top: clamp(40px, calc(-0.85px + 11.346vw), 217px);
  }

  .xl\:tw-mt-auto {
    margin-top: auto;
  }

  .xl\:tw-block {
    display: block;
  }

  .xl\:tw-hidden {
    display: none;
  }

  .xl\:tw-h-auto {
    height: auto;
  }

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

  .xl\:tw-w-auto {
    width: auto;
  }

  .xl\:tw-max-w-\[613px\] {
    max-width: 613px;
  }

  .xl\:tw-max-w-\[660px\] {
    max-width: 660px;
  }

  .xl\:tw-max-w-none {
    max-width: none;
  }

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

  .xl\:tw-items-start {
    align-items: flex-start;
  }

  .xl\:tw-object-cover {
    -o-object-fit: cover;
       object-fit: cover;
  }

  .xl\:tw-object-center {
    -o-object-position: center;
       object-position: center;
  }

  .xl\:tw-py-0 {
    padding-top: 0px;
    padding-bottom: 0px;
  }

  .xl\:tw-py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .xl\:tw-pb-14 {
    padding-bottom: 3.5rem;
  }
}

@media (min-width: 1920px) {
  .\32xl\:tw-mx-0 {
    margin-left: 0px;
    margin-right: 0px;
  }

  .\32xl\:tw-w-\[calc\(\(100\%-60px\)\/4\)\] {
    width: calc((100% - 60px) / 4);
  }

  .\32xl\:tw-max-w-\[735px\] {
    max-width: 735px;
  }
}

.\[\&\:\:-webkit-scrollbar-thumb\]\:tw-rounded-full::-webkit-scrollbar-thumb {
  border-radius: 9999px;
}

.\[\&\:\:-webkit-scrollbar-thumb\]\:tw-bg-\[\#EE2F53\]::-webkit-scrollbar-thumb {
  --tw-bg-opacity: 1;
  background-color: rgb(238 47 83 / var(--tw-bg-opacity, 1));
}

.\[\&\:\:-webkit-scrollbar\]\:tw-hidden::-webkit-scrollbar {
  display: none;
}

.\[\&\:\:-webkit-scrollbar\]\:tw-w-1::-webkit-scrollbar {
  width: 0.25rem;
}

.\[\&_a\:hover\]\:tw-text-primary a:hover {
  --tw-text-opacity: 1;
  color: rgb(238 47 83 / var(--tw-text-opacity, 1));
}

.\[\&_a\]\:tw-mb-3 a {
  margin-bottom: 0.75rem;
}

.\[\&_a\]\:tw-ml-auto a {
  margin-left: auto;
}

.\[\&_a\]\:tw-block a {
  display: block;
}

.\[\&_a\]\:tw-w-fit a {
  width: -moz-fit-content;
  width: fit-content;
}

.\[\&_a\]\:tw-max-w-full a {
  max-width: 100%;
}

.\[\&_a\]\:tw-text-right a {
  text-align: right;
}

.\[\&_a\]\:tw-text-sm a {
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.\[\&_a\]\:tw-text-text a {
  font-size: 14px;
  line-height: 1.4;
  font-weight: 400;
}

.\[\&_a\]\:tw-text-xs a {
  font-size: 0.75rem;
  line-height: 1rem;
}

.\[\&_a\]\:tw-text-text a {
  --tw-text-opacity: 1;
  color: rgb(74 78 84 / var(--tw-text-opacity, 1));
}

.\[\&_a\]\:tw-text-text\/60 a {
  color: rgb(74 78 84 / 0.6);
}

.\[\&_a\]\:tw-no-underline a {
  text-decoration-line: none;
}

.\[\&_a\]\:tw-transition-colors a {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

@media (min-width: 992px) {
  .\[\&_a\]\:md\:tw-ml-0 a {
    margin-left: 0px;
  }

  .\[\&_a\]\:md\:tw-text-left a {
    text-align: left;
  }
}

.\[\&_p\]\:tw-m-0 p {
  margin: 0px;
}

.\[\&_span\]\:tw-mb-3 span {
  margin-bottom: 0.75rem;
}

.\[\&_span\]\:tw-ml-auto span {
  margin-left: auto;
}

.\[\&_span\]\:tw-block span {
  display: block;
}

.\[\&_span\]\:tw-w-fit span {
  width: -moz-fit-content;
  width: fit-content;
}

.\[\&_span\]\:tw-max-w-full span {
  max-width: 100%;
}

.\[\&_span\]\:tw-text-right span {
  text-align: right;
}

.\[\&_span\]\:tw-text-sm span {
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.\[\&_span\]\:tw-text-text\/60 span {
  color: rgb(74 78 84 / 0.6);
}

@media (min-width: 992px) {
  .\[\&_span\]\:md\:tw-ml-0 span {
    margin-left: 0px;
  }

  .\[\&_span\]\:md\:tw-text-left span {
    text-align: left;
  }
}
