/**
 * alertifyjs 1.11.3 http://alertifyjs.com
 * AlertifyJS is a javascript framework for developing pretty browser dialogs and notifications.
 * Copyright 2019 Mohammad Younes <Mohammad@alertifyjs.com> (http://alertifyjs.com) 
 * Licensed under GPL 3 <https://opensource.org/licenses/gpl-3.0>*/
.alertify .ajs-dimmer {
  position: fixed;
  z-index: 1981;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0;
  margin: 0;
  background-color: #252525;
  opacity: .5;
}
.alertify .ajs-modal {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  padding: 0;
  overflow-y: auto;
  z-index: 1981;
}
.alertify .ajs-dialog {
  position: relative;
  margin: 5% auto;
  min-height: 110px;
  max-width: 500px;
  padding: 24px 24px 0 24px;
  outline: 0;
  background-color: #fff;
}
.alertify .ajs-dialog.ajs-capture:before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  z-index: 1;
}
.alertify .ajs-reset {
  position: absolute !important;
  display: inline !important;
  width: 0 !important;
  height: 0 !important;
  opacity: 0 !important;
}
.alertify .ajs-commands {
  position: absolute;
  right: 4px;
  margin: -14px 24px 0 0;
  z-index: 2;
}
.alertify .ajs-commands button {
  display: none;
  width: 10px;
  height: 10px;
  margin-left: 10px;
  padding: 10px;
  border: 0;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  cursor: pointer;
}
.alertify .ajs-commands button.ajs-close {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNy8xMy8xNOrZqugAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzbovLKMAAAAh0lEQVQYlY2QsQ0EIQwEB9cBAR1CJUaI/gigDnwR6NBL/7/xWLNrZ2b8EwGotVpr7eOitWa1VjugiNB7R1UPrKrWe0dEAHBbXUqxMQbeewDmnHjvyTm7C3zDwAUd9c63YQdUVdu6EAJzzquz7HXvTiklt+H9DQFYaxFjvDqllFyMkbXWvfpXHjJrWFgdBq/hAAAAAElFTkSuQmCC);
}
.alertify .ajs-commands button.ajs-maximize {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNy8xMy8xNOrZqugAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzbovLKMAAAAOUlEQVQYlWP8//8/AzGAhYGBgaG4uBiv6t7eXkYmooxjYGAgWiELsvHYFMCcRX2rSXcjoSBiJDbAAeD+EGu+8BZcAAAAAElFTkSuQmCC);
}
.alertify .ajs-header {
  margin: -24px;
  margin-bottom: 0;
  padding: 16px 24px;
  background-color: #fff;
}
.alertify .ajs-body {
  min-height: 56px;
}
.alertify .ajs-body .ajs-content {
  padding: 16px 24px 16px 16px;
}
.alertify .ajs-footer {
  padding: 4px;
  margin-left: -24px;
  margin-right: -24px;
  min-height: 43px;
  background-color: #fff;
}
.alertify .ajs-footer .ajs-buttons.ajs-primary {
  text-align: right;
}
.alertify .ajs-footer .ajs-buttons.ajs-primary .ajs-button {
  margin: 4px;
}
.alertify .ajs-footer .ajs-buttons.ajs-auxiliary {
  float: left;
  clear: none;
  text-align: left;
}
.alertify .ajs-footer .ajs-buttons.ajs-auxiliary .ajs-button {
  margin: 4px;
}
.alertify .ajs-footer .ajs-buttons .ajs-button {
  min-width: 88px;
  min-height: 35px;
}
.alertify .ajs-handle {
  position: absolute;
  display: none;
  width: 10px;
  height: 10px;
  right: 0;
  bottom: 0;
  z-index: 1;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNy8xMS8xNEDQYmMAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzbovLKMAAAAQ0lEQVQYlaXNMQoAIAxD0dT7H657l0KX3iJuUlBUNOsPPCGJm7VDp6ryeMxMuDsAQH7owW3pyn3RS26iKxERMLN3ugOaAkaL3sWVigAAAABJRU5ErkJggg==);
  -webkit-transform: scaleX(1) /*rtl:scaleX(-1)*/;
          transform: scaleX(1) /*rtl:scaleX(-1)*/;
  cursor: se-resize;
}
.alertify.ajs-no-overflow .ajs-body .ajs-content {
  overflow: hidden !important;
}
.alertify.ajs-no-padding.ajs-maximized .ajs-body .ajs-content {
  left: 0;
  right: 0;
  padding: 0;
}
.alertify.ajs-no-padding:not(.ajs-maximized) .ajs-body {
  margin-left: -24px;
  margin-right: -24px;
}
.alertify.ajs-no-padding:not(.ajs-maximized) .ajs-body .ajs-content {
  padding: 0;
}
.alertify.ajs-no-padding.ajs-resizable .ajs-body .ajs-content {
  left: 0;
  right: 0;
}
.alertify.ajs-maximizable .ajs-commands button.ajs-maximize,
.alertify.ajs-maximizable .ajs-commands button.ajs-restore {
  display: inline-block;
}
.alertify.ajs-closable .ajs-commands button.ajs-close {
  display: inline-block;
}
.alertify.ajs-maximized .ajs-dialog {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
  top: 0 !important;
  left: 0 !important;
}
.alertify.ajs-maximized.ajs-modeless .ajs-modal {
  position: fixed !important;
  min-height: 100% !important;
  max-height: none !important;
  margin: 0 !important;
}
.alertify.ajs-maximized .ajs-commands button.ajs-maximize {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNy8xMy8xNOrZqugAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzbovLKMAAAASklEQVQYlZWQ0QkAMQhDtXRincOZX78KVtrDCwgqJNEoIB3MPLj7lRUROlpyVXGzby6zWuY+kz6tj5sBMTMAyVV3/595RbOh3cAXsww1raeiOcoAAAAASUVORK5CYII=);
}
.alertify.ajs-resizable .ajs-dialog,
.alertify.ajs-maximized .ajs-dialog {
  padding: 0;
}
.alertify.ajs-resizable .ajs-commands,
.alertify.ajs-maximized .ajs-commands {
  margin: 14px 24px 0 0;
}
.alertify.ajs-resizable .ajs-header,
.alertify.ajs-maximized .ajs-header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0;
  padding: 16px 24px;
}
.alertify.ajs-resizable .ajs-body,
.alertify.ajs-maximized .ajs-body {
  min-height: 224px;
  display: inline-block;
}
.alertify.ajs-resizable .ajs-body .ajs-content,
.alertify.ajs-maximized .ajs-body .ajs-content {
  position: absolute;
  top: 50px;
  right: 24px;
  bottom: 50px;
  left: 24px;
  overflow: auto;
}
.alertify.ajs-resizable .ajs-footer,
.alertify.ajs-maximized .ajs-footer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
}
.alertify.ajs-resizable:not(.ajs-maximized) .ajs-dialog {
  min-width: 548px;
}
.alertify.ajs-resizable:not(.ajs-maximized) .ajs-handle {
  display: block;
}
.alertify.ajs-movable:not(.ajs-maximized) .ajs-header {
  cursor: move;
}
.alertify.ajs-modeless .ajs-dimmer,
.alertify.ajs-modeless .ajs-reset {
  display: none;
}
.alertify.ajs-modeless .ajs-modal {
  overflow: visible;
  max-width: none;
  max-height: 0;
}
.alertify.ajs-modeless.ajs-pinnable .ajs-commands button.ajs-pin {
  display: inline-block;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNy8xMy8xNOrZqugAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzbovLKMAAAAQklEQVQYlcWPMQ4AIAwCqU9u38GbcbHRWN1MvKQDhQFMEpKImGJA0gCgnYw0V0rwxseg5erT4oSkQVI5d9f+e9+xA0NbLpWfitPXAAAAAElFTkSuQmCC);
}
.alertify.ajs-modeless.ajs-unpinned .ajs-modal {
  position: absolute;
}
.alertify.ajs-modeless.ajs-unpinned .ajs-commands button.ajs-pin {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNy8xMy8xNOrZqugAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzbovLKMAAAAO0lEQVQYlWP8//8/AzGAiShV6AqLi4txGs+CLoBLMYbC3t5eRmyaWfBZhwwYkX2NTxPRvibKjRhW4wMAhxkYGbLu3pEAAAAASUVORK5CYII=);
}
.alertify.ajs-modeless:not(.ajs-unpinned) .ajs-body {
  max-height: 500px;
  overflow: auto;
}
.alertify.ajs-basic .ajs-header {
  opacity: 0;
}
.alertify.ajs-basic .ajs-footer {
  visibility: hidden;
}
.alertify.ajs-frameless .ajs-header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  min-height: 60px;
  margin: 0;
  padding: 0;
  opacity: 0;
  z-index: 1;
}
.alertify.ajs-frameless .ajs-footer {
  display: none;
}
.alertify.ajs-frameless .ajs-body .ajs-content {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.alertify.ajs-frameless:not(.ajs-resizable) .ajs-dialog {
  padding-top: 0;
}
.alertify.ajs-frameless:not(.ajs-resizable) .ajs-dialog .ajs-commands {
  margin-top: 0;
}
.ajs-no-overflow {
  overflow: hidden !important;
  outline: none;
}
.ajs-no-overflow.ajs-fixed {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow-y: scroll!important;
}
.ajs-no-selection,
.ajs-no-selection * {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
@media screen and (max-width: 568px) {
  .alertify .ajs-dialog {
    min-width: 150px;
  }
  .alertify:not(.ajs-maximized) .ajs-modal {
    padding: 0 5%;
  }
  .alertify:not(.ajs-maximized).ajs-resizable .ajs-dialog {
    min-width: initial;
    min-width: auto /*IE fallback*/;
  }
}
@-moz-document url-prefix() {
  .alertify button:focus {
    outline: 1px dotted #3593D2;
  }
}
.alertify .ajs-dimmer,
.alertify .ajs-modal {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition-property: opacity, visibility;
  transition-property: opacity, visibility;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transition-duration: 250ms;
          transition-duration: 250ms;
}
.alertify.ajs-hidden .ajs-dimmer,
.alertify.ajs-hidden .ajs-modal {
  visibility: hidden;
  opacity: 0;
}
.alertify.ajs-in:not(.ajs-hidden) .ajs-dialog {
  -webkit-animation-duration: 500ms;
          animation-duration: 500ms;
}
.alertify.ajs-out.ajs-hidden .ajs-dialog {
  -webkit-animation-duration: 250ms;
          animation-duration: 250ms;
}
.alertify .ajs-dialog.ajs-shake {
  -webkit-animation-name: ajs-shake;
          animation-name: ajs-shake;
  -webkit-animation-duration: .1s;
          animation-duration: .1s;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
}
@-webkit-keyframes ajs-shake {
  0%,
  100% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
            transform: translate3d(-10px, 0, 0);
  }
  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0);
  }
}
@keyframes ajs-shake {
  0%,
  100% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
            transform: translate3d(-10px, 0, 0);
  }
  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0);
  }
}
.alertify.ajs-slide.ajs-in:not(.ajs-hidden) .ajs-dialog {
  -webkit-animation-name: ajs-slideIn;
          animation-name: ajs-slideIn;
  -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
          animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.alertify.ajs-slide.ajs-out.ajs-hidden .ajs-dialog {
  -webkit-animation-name: ajs-slideOut;
          animation-name: ajs-slideOut;
  -webkit-animation-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
          animation-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
}
.alertify.ajs-zoom.ajs-in:not(.ajs-hidden) .ajs-dialog {
  -webkit-animation-name: ajs-zoomIn;
          animation-name: ajs-zoomIn;
}
.alertify.ajs-zoom.ajs-out.ajs-hidden .ajs-dialog {
  -webkit-animation-name: ajs-zoomOut;
          animation-name: ajs-zoomOut;
}
.alertify.ajs-fade.ajs-in:not(.ajs-hidden) .ajs-dialog {
  -webkit-animation-name: ajs-fadeIn;
          animation-name: ajs-fadeIn;
}
.alertify.ajs-fade.ajs-out.ajs-hidden .ajs-dialog {
  -webkit-animation-name: ajs-fadeOut;
          animation-name: ajs-fadeOut;
}
.alertify.ajs-pulse.ajs-in:not(.ajs-hidden) .ajs-dialog {
  -webkit-animation-name: ajs-pulseIn;
          animation-name: ajs-pulseIn;
}
.alertify.ajs-pulse.ajs-out.ajs-hidden .ajs-dialog {
  -webkit-animation-name: ajs-pulseOut;
          animation-name: ajs-pulseOut;
}
.alertify.ajs-flipx.ajs-in:not(.ajs-hidden) .ajs-dialog {
  -webkit-animation-name: ajs-flipInX;
          animation-name: ajs-flipInX;
}
.alertify.ajs-flipx.ajs-out.ajs-hidden .ajs-dialog {
  -webkit-animation-name: ajs-flipOutX;
          animation-name: ajs-flipOutX;
}
.alertify.ajs-flipy.ajs-in:not(.ajs-hidden) .ajs-dialog {
  -webkit-animation-name: ajs-flipInY;
          animation-name: ajs-flipInY;
}
.alertify.ajs-flipy.ajs-out.ajs-hidden .ajs-dialog {
  -webkit-animation-name: ajs-flipOutY;
          animation-name: ajs-flipOutY;
}
@-webkit-keyframes ajs-pulseIn {
  0%,
  20%,
  40%,
  60%,
  80%,
  100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
            transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
            transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
            transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
            transform: scale3d(0.97, 0.97, 0.97);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}
@keyframes ajs-pulseIn {
  0%,
  20%,
  40%,
  60%,
  80%,
  100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
            transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
            transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
            transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
            transform: scale3d(0.97, 0.97, 0.97);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}
@-webkit-keyframes ajs-pulseOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
            transform: scale3d(0.9, 0.9, 0.9);
  }
  50%,
  55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
            transform: scale3d(1.1, 1.1, 1.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3);
  }
}
@keyframes ajs-pulseOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
            transform: scale3d(0.9, 0.9, 0.9);
  }
  50%,
  55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
            transform: scale3d(1.1, 1.1, 1.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3);
  }
}
@-webkit-keyframes ajs-zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.25, 0.25, 0.25);
            transform: scale3d(0.25, 0.25, 0.25);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}
@keyframes ajs-zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.25, 0.25, 0.25);
            transform: scale3d(0.25, 0.25, 0.25);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}
@-webkit-keyframes ajs-zoomOut {
  0% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.25, 0.25, 0.25);
            transform: scale3d(0.25, 0.25, 0.25);
  }
}
@keyframes ajs-zoomOut {
  0% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.25, 0.25, 0.25);
            transform: scale3d(0.25, 0.25, 0.25);
  }
}
@-webkit-keyframes ajs-fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes ajs-fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes ajs-fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes ajs-fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes ajs-flipInX {
  0% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
            transition-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-transition-timing-function: ease-in;
            transition-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  100% {
    -webkit-transform: perspective(400px);
            transform: perspective(400px);
  }
}
@keyframes ajs-flipInX {
  0% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
            transition-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-transition-timing-function: ease-in;
            transition-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  100% {
    -webkit-transform: perspective(400px);
            transform: perspective(400px);
  }
}
@-webkit-keyframes ajs-flipOutX {
  0% {
    -webkit-transform: perspective(400px);
            transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
@keyframes ajs-flipOutX {
  0% {
    -webkit-transform: perspective(400px);
            transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
@-webkit-keyframes ajs-flipInY {
  0% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
            transition-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-transition-timing-function: ease-in;
            transition-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  100% {
    -webkit-transform: perspective(400px);
            transform: perspective(400px);
  }
}
@keyframes ajs-flipInY {
  0% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
            transition-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-transition-timing-function: ease-in;
            transition-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  100% {
    -webkit-transform: perspective(400px);
            transform: perspective(400px);
  }
}
@-webkit-keyframes ajs-flipOutY {
  0% {
    -webkit-transform: perspective(400px);
            transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
@keyframes ajs-flipOutY {
  0% {
    -webkit-transform: perspective(400px);
            transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
@-webkit-keyframes ajs-slideIn {
  0% {
    margin-top: -100%;
  }
  100% {
    margin-top: 5%;
  }
}
@keyframes ajs-slideIn {
  0% {
    margin-top: -100%;
  }
  100% {
    margin-top: 5%;
  }
}
@-webkit-keyframes ajs-slideOut {
  0% {
    margin-top: 5%;
  }
  100% {
    margin-top: -100%;
  }
}
@keyframes ajs-slideOut {
  0% {
    margin-top: 5%;
  }
  100% {
    margin-top: -100%;
  }
}
.alertify-notifier {
  position: fixed;
  width: 0;
  overflow: visible;
  z-index: 1982;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.alertify-notifier .ajs-message {
  position: relative;
  width: 260px;
  max-height: 0;
  padding: 0;
  opacity: 0;
  margin: 0;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition-duration: 250ms;
          transition-duration: 250ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
.alertify-notifier .ajs-message.ajs-visible {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
          transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
  opacity: 1;
  max-height: 100%;
  padding: 15px;
  margin-top: 10px;
}
.alertify-notifier .ajs-message.ajs-success {
  background: rgba(91, 189, 114, 0.95);
}
.alertify-notifier .ajs-message.ajs-error {
  background: #dc3545;
}
.alertify-notifier .ajs-message.ajs-warning {
  background: rgba(252, 248, 215, 0.95);
}
.alertify-notifier .ajs-message .ajs-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 16px;
  height: 16px;
  cursor: pointer;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAABGdBTUEAALGPC/xhBQAAAFBJREFUGBl1j0EKADEIA+ve/P9f9bh1hEihNBfjVCO1v7RKVqJK4h8gM5cAPR42AkQEpSXPwMTyoi13n5N9YqJehm3Fnr7nL1D0ZEbD5OubGyC7a9gx+9eNAAAAAElFTkSuQmCC);
  background-repeat: no-repeat;
  background-position: center center;
  background-color: rgba(0, 0, 0, 0.5);
  border-top-right-radius: 2px;
}
.alertify-notifier.ajs-top {
  top: 10px;
}
.alertify-notifier.ajs-bottom {
  bottom: 10px;
}
.alertify-notifier.ajs-right {
  right: 10px;
}
.alertify-notifier.ajs-right .ajs-message {
  right: -320px;
}
.alertify-notifier.ajs-right .ajs-message.ajs-visible {
  right: 290px;
}
.alertify-notifier.ajs-left {
  left: 10px;
}
.alertify-notifier.ajs-left .ajs-message {
  left: -300px;
}
.alertify-notifier.ajs-left .ajs-message.ajs-visible {
  left: 0;
}
.alertify-notifier.ajs-center {
  left: 50%;
}
.alertify-notifier.ajs-center .ajs-message {
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.alertify-notifier.ajs-center .ajs-message.ajs-visible {
  left: 50%;
  -webkit-transition-timing-function: cubic-bezier(0.57, 0.43, 0.1, 0.65);
          transition-timing-function: cubic-bezier(0.57, 0.43, 0.1, 0.65);
}
.alertify-notifier.ajs-center.ajs-top .ajs-message {
  top: -300px;
}
.alertify-notifier.ajs-center.ajs-top .ajs-message.ajs-visible {
  top: 0;
}
.alertify-notifier.ajs-center.ajs-bottom .ajs-message {
  bottom: -300px;
}
.alertify-notifier.ajs-center.ajs-bottom .ajs-message.ajs-visible {
  bottom: 0;
}
@charset "UTF-8";
:root {
  --ctw-crimson: #DB073C;
  --ctw-crimson-600: #C10634;
  --ctw-crimson-700: #A8052D;
  --ctw-crimson-50: #FDEEF2;
  --ctw-crimson-100: #F3C7D2;
  --ctw-dark: #1D2326;
  --ctw-darker: #16191B;
  --ctw-steel: #6B818C;
  --ctw-steel-400: #8B99A0;
  --ctw-steel-300: #9AA7AD;
  --ctw-white: #FFFFFF;
  --ctw-indigo: #445CAD;
  --ctw-indigo-deep: #2F3F86;
  --ctw-indigo-deeper: #26346F;
  --ctw-on-indigo: #C9D2FF;
  --ctw-on-indigo-muted: #C4CBE6;
  --ctw-teal: #2EC4B6;
  --ctw-green: #1F9D6B;
  --ctw-teal-50: #E7F8F6;
  --ctw-teal-ink: #12857A;
  --ctw-amber: #E6A429;
  --ctw-amber-700: #B8801A;
  --ctw-amber-50: #FBF1DD;
  --ctw-surface: #FFFFFF;
  --ctw-surface-alt: #F4F6F7;
  --ctw-surface-hover: #F7F8F9;
  --ctw-line: #E6EAEC;
  --ctw-line-soft: #F0F2F3;
  --ctw-line-dark: rgba(255, 255, 255, .08);
  --ctw-text: var(--ctw-dark);
  --ctw-text-muted: var(--ctw-steel);
  --ctw-text-body: #4A565B;
  --ctw-text-subtle: var(--ctw-steel-300);
  --ctw-text-on-dark: #9AA7AD;
  --ctw-font: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --ctw-font-mono: 'IBM Plex Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
  --ctw-radius-sm: 10px;
  --ctw-radius: 12px;
  --ctw-radius-card: 16px;
  --ctw-radius-lg: 22px;
  --ctw-radius-pill: 999px;
  --ctw-shadow-cta: 0 12px 28px rgba(219, 7, 60, .3);
  --ctw-shadow-cta-sm: 0 6px 16px rgba(219, 7, 60, .28);
  --ctw-shadow-card: 0 20px 50px rgba(29, 35, 38, .08);
  --ctw-shadow-pop: 0 30px 70px rgba(29, 35, 38, .18);
  --ctw-w-content: 1160px;
  --ctw-w-medium: 1100px;
  --ctw-w-narrow: 800px;
  --ctw-gutter: 40px;
  --ctw-nav-h: 73px;
  --ctw-ease: cubic-bezier(.2, .7, .2, 1);
  --ctw-fast: .15s;
  --ctw-base: .22s;
}
@media (max-width: 760px) {
  :root {
    --ctw-gutter: 20px;
    --ctw-nav-h: 64px;
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scroll-padding-top: calc(var(--ctw-nav-h) + 16px);
}

body.ctw {
  margin: 0;
  font-family: var(--ctw-font);
  font-size: 16px;
  line-height: 1.55;
  color: var(--ctw-text);
  background: var(--ctw-surface);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
body.ctw.ctw-no-scroll {
  overflow: hidden;
}

:where(.ctw) img,
:where(.ctw) svg,
:where(.ctw) video {
  display: block;
  max-width: 100%;
}
:where(.ctw) img {
  height: auto;
}
:where(.ctw) a {
  color: inherit;
}
:where(.ctw) button,
:where(.ctw) input,
:where(.ctw) select,
:where(.ctw) textarea {
  font: inherit;
  color: inherit;
}
:where(.ctw) button {
  cursor: pointer;
}
:where(.ctw) hr {
  border: 0;
  border-top: 1px solid var(--ctw-line);
  margin: 32px 0;
}
:where(.ctw) :focus-visible {
  outline: 2px solid var(--ctw-crimson);
  outline-offset: 3px;
}
:where(.ctw) ::selection {
  background: var(--ctw-crimson-100);
}

.ctw [hidden] {
  display: none !important;
}

.ctw-sr-only {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.ctw-skip {
  position: absolute;
  top: -100px;
  left: 16px;
  z-index: 2000;
  padding: 10px 16px;
  border-radius: var(--ctw-radius-sm);
  background: var(--ctw-dark);
  color: #fff !important;
  font-weight: 600;
  text-decoration: none;
}
.ctw-skip:focus {
  top: 12px;
}

@media (prefers-reduced-motion: reduce) {
  .ctw *,
  .ctw *::before,
  .ctw *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
:where(.ctw) h1,
:where(.ctw) h2,
:where(.ctw) h3,
:where(.ctw) h4,
:where(.ctw) h5,
:where(.ctw) h6 {
  margin: 0 0 0.5em;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.06;
  color: inherit;
}
:where(.ctw) p {
  margin: 0 0 1em;
}

.ctw-display {
  font-size: clamp(42px, 6.4vw, 76px);
  line-height: 1;
  letter-spacing: -0.04em;
  font-weight: 800;
}

.ctw-h1 {
  font-size: clamp(36px, 5vw, 58px);
}

.ctw-h2 {
  font-size: clamp(28px, 3.4vw, 40px);
}

.ctw-h3 {
  font-size: clamp(22px, 2.4vw, 26px);
  letter-spacing: -0.02em;
  line-height: 1.2;
}

.ctw-h4 {
  font-size: 18px;
  letter-spacing: -0.01em;
  line-height: 1.3;
  font-weight: 700;
}

.ctw-accent {
  color: var(--ctw-crimson);
}
.ctw-accent--amber {
  color: var(--ctw-amber-700);
}
.ctw-accent--teal {
  color: var(--ctw-green);
}

.ctw-lead {
  font-size: clamp(16px, 1.4vw, 18px);
  line-height: 1.6;
  color: var(--ctw-text-body);
}

.ctw-muted {
  color: var(--ctw-text-muted);
}

.ctw-small {
  font-size: 13px;
  line-height: 1.5;
}

.ctw-kicker {
  display: inline-block;
  margin-bottom: 18px;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}
.ctw-kicker--plain {
  text-transform: none;
  letter-spacing: 0.01em;
  font-size: 14px;
}

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

.ctw-prose {
  max-width: 72ch;
  font-size: 16px;
  line-height: 1.7;
  color: #3A454A;
}
.ctw-prose h2 {
  margin-top: 2em;
  font-size: 26px;
  letter-spacing: -0.02em;
  color: var(--ctw-text);
}
.ctw-prose h3 {
  margin-top: 1.6em;
  font-size: 19px;
  letter-spacing: -0.01em;
  color: var(--ctw-text);
}
.ctw-prose a {
  color: var(--ctw-crimson);
  text-underline-offset: 3px;
}
.ctw-prose ul,
.ctw-prose ol {
  padding-left: 1.3em;
  margin: 0 0 1em;
}
.ctw-prose li + li {
  margin-top: 0.35em;
}

.ctw-container {
  width: 100%;
  max-width: calc(var(--ctw-w-content) + var(--ctw-gutter) * 2);
  margin: 0 auto;
  padding: 0 var(--ctw-gutter);
}
.ctw-container--medium {
  max-width: calc(var(--ctw-w-medium) + var(--ctw-gutter) * 2);
}
.ctw-container--narrow {
  max-width: calc(var(--ctw-w-narrow) + var(--ctw-gutter) * 2);
}

.ctw-section {
  padding: clamp(56px, 7vw, 88px) 0;
}
.ctw-section--tight {
  padding: clamp(40px, 6vw, 72px) 0;
}
.ctw-section--alt {
  background: var(--ctw-surface-alt);
}
.ctw-section--brand {
  --ctw-text-on-dark: var(--ctw-on-indigo-muted);
  background: var(--ctw-indigo-deep);
  color: #fff;
}
.ctw-section--brand .ctw-lead,
.ctw-section--brand .ctw-muted {
  color: var(--ctw-on-indigo-muted);
}
.ctw-section--dark {
  background: var(--ctw-dark);
  color: #fff;
}
.ctw-section--dark .ctw-lead,
.ctw-section--dark .ctw-muted {
  color: var(--ctw-text-on-dark);
}

.ctw-section-head {
  max-width: 720px;
  margin: 0 auto clamp(36px, 5vw, 56px);
  text-align: center;
}
.ctw-section-head .ctw-lead {
  margin: 0 auto;
  max-width: 600px;
}
.ctw-section-head--left {
  margin-left: 0;
  text-align: left;
}
.ctw-section-head--left .ctw-lead {
  margin-left: 0;
}

.ctw-grid {
  display: grid;
  gap: 16px;
}
.ctw-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}
@media (max-width: 760px) {
  .ctw-grid--2 {
    grid-template-columns: minmax(0, 1fr);
  }
}
.ctw-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 1023px) {
  .ctw-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .ctw-grid--3 {
    grid-template-columns: minmax(0, 1fr);
  }
}
.ctw-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media (max-width: 1023px) {
  .ctw-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 480px) {
  .ctw-grid--4 {
    grid-template-columns: minmax(0, 1fr);
  }
}

.ctw-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}
@media (max-width: 1024px) {
  .ctw-split {
    grid-template-columns: minmax(0, 1fr);
  }
}

.ctw-stack {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.ctw-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}

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

.ctw-icon {
  display: inline-block;
  flex: none;
  width: 1.25em;
  height: 1.25em;
  vertical-align: -0.25em;
}
.ctw-icon svg {
  width: 100%;
  height: 100%;
}
.ctw-icon--sm {
  width: 16px;
  height: 16px;
}
.ctw-icon--md {
  width: 20px;
  height: 20px;
}
.ctw-icon--lg {
  width: 24px;
  height: 24px;
}

.ctw-icon-tile {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: var(--ctw-crimson-50);
  color: var(--ctw-crimson);
}
.ctw-icon-tile .ctw-icon {
  width: 22px;
  height: 22px;
}
.ctw-icon-tile--sm {
  width: 36px;
  height: 36px;
  border-radius: 10px;
}
.ctw-icon-tile--sm .ctw-icon {
  width: 18px;
  height: 18px;
}
.ctw-icon-tile--teal {
  background: var(--ctw-teal-50);
  color: var(--ctw-green);
}
.ctw-icon-tile--amber {
  background: var(--ctw-amber-50);
  color: var(--ctw-amber-700);
}
.ctw-icon-tile--indigo {
  background: #EEF1FB;
  color: var(--ctw-indigo);
}
.ctw-icon-tile--dark {
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
}

.ctw-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 13px 24px;
  border: 1px solid transparent;
  border-radius: var(--ctw-radius);
  font-family: var(--ctw-font);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color var(--ctw-fast) ease, border-color var(--ctw-fast) ease, color var(--ctw-fast) ease, box-shadow var(--ctw-base) ease, transform var(--ctw-base) var(--ctw-ease);
}
.ctw-btn:hover {
  transform: translateY(-1px);
}
.ctw-btn:active {
  transform: translateY(0);
}
.ctw-btn[disabled], .ctw-btn.is-disabled {
  opacity: 0.5;
  pointer-events: none;
}
.ctw-btn .ctw-icon {
  width: 18px;
  height: 18px;
}
.ctw-btn--primary {
  background: var(--ctw-crimson);
  color: #fff !important;
  box-shadow: var(--ctw-shadow-cta);
}
.ctw-btn--primary:hover {
  background: var(--ctw-crimson-600);
}
.ctw-btn--secondary {
  background: #fff;
  border-color: #D7DDE0;
  color: var(--ctw-dark) !important;
}
.ctw-btn--secondary:hover {
  border-color: var(--ctw-dark);
}
.ctw-btn--dark {
  background: var(--ctw-indigo);
  color: #fff !important;
}
.ctw-btn--dark:hover {
  background: var(--ctw-indigo-deep);
}
.ctw-btn--light {
  background: #fff;
  color: var(--ctw-dark) !important;
}
.ctw-btn--light:hover {
  background: var(--ctw-crimson-50);
}
.ctw-btn--ghost {
  background: transparent;
  color: var(--ctw-dark) !important;
  padding-left: 12px;
  padding-right: 12px;
}
.ctw-btn--ghost:hover {
  background: var(--ctw-surface-alt);
  transform: none;
}
.ctw-btn--sm {
  min-height: 40px;
  padding: 10px 18px;
  font-size: 14px;
  border-radius: var(--ctw-radius-sm);
}
.ctw-btn--lg {
  min-height: 56px;
  padding: 17px 30px;
  font-size: 16px;
}
.ctw-btn--pill {
  border-radius: var(--ctw-radius-pill);
}
.ctw-btn--block {
  display: flex;
  width: 100%;
}

.ctw-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 700;
  color: var(--ctw-crimson) !important;
  text-decoration: none;
}
.ctw-link .ctw-icon {
  width: 16px;
  height: 16px;
  transition: transform var(--ctw-base) var(--ctw-ease);
}
.ctw-link:hover .ctw-icon {
  transform: translateX(3px);
}

.ctw-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border: 1px solid var(--ctw-crimson-100);
  border-radius: var(--ctw-radius-pill);
  background: var(--ctw-crimson-50);
  color: var(--ctw-crimson);
  font-family: var(--ctw-font-mono);
  font-size: 10.5px;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.4;
  white-space: nowrap;
}
.ctw-badge--neutral {
  border-color: var(--ctw-line);
  background: var(--ctw-surface-alt);
  color: var(--ctw-steel);
}
.ctw-badge--teal {
  border-color: #BFEDE8;
  background: var(--ctw-teal-50);
  color: var(--ctw-green);
}
.ctw-badge--amber {
  border-color: #F1DDB0;
  background: var(--ctw-amber-50);
  color: var(--ctw-amber-700);
}
.ctw-badge--dark {
  border-color: rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.06);
  color: #fff;
}

.ctw-lang {
  display: inline-flex;
  gap: 2px;
  padding: 3px;
  margin: 0;
  list-style: none;
  border-radius: var(--ctw-radius-pill);
  background: #F0F2F3;
}
.ctw-lang a,
.ctw-lang span {
  display: block;
  padding: 6px 11px;
  border-radius: var(--ctw-radius-pill);
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
  color: var(--ctw-steel);
  transition: color var(--ctw-fast) ease;
}
.ctw-lang a:hover {
  color: var(--ctw-dark);
}
.ctw-lang .is-selected {
  background: var(--ctw-dark);
  color: #fff;
}
.ctw-lang--dark {
  background: transparent;
  gap: 8px;
  padding: 0;
}
.ctw-lang--dark a,
.ctw-lang--dark span {
  border: 1px solid rgba(255, 255, 255, 0.18);
  color: var(--ctw-text-on-dark);
}
.ctw-lang--dark a:hover {
  color: #fff;
}
.ctw-lang--dark .is-selected {
  background: #fff;
  color: var(--ctw-dark);
}

.ctw-field {
  display: flex;
  flex-direction: column;
  gap: 7px;
  margin-bottom: 16px;
}

.ctw-label {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--ctw-dark);
}

.ctw-input,
.ctw-select,
.ctw-textarea {
  width: 100%;
  min-height: 48px;
  padding: 12px 14px;
  border: 1px solid #D7DDE0;
  border-radius: var(--ctw-radius-sm);
  background: #fff;
  font-size: 15px;
  line-height: 1.4;
  color: var(--ctw-dark);
  transition: border-color var(--ctw-fast) ease, box-shadow var(--ctw-fast) ease;
}
.ctw-input::placeholder,
.ctw-select::placeholder,
.ctw-textarea::placeholder {
  color: var(--ctw-steel-300);
}
.ctw-input:hover,
.ctw-select:hover,
.ctw-textarea:hover {
  border-color: #B9C3C8;
}
.ctw-input:focus,
.ctw-select:focus,
.ctw-textarea:focus {
  outline: none;
  border-color: var(--ctw-crimson);
  box-shadow: 0 0 0 4px rgba(219, 7, 60, 0.12);
}
.ctw-input.error,
.ctw-select.error,
.ctw-textarea.error {
  border-color: var(--ctw-crimson);
  background: #FFFBFC;
}

.ctw-textarea {
  min-height: 120px;
  resize: vertical;
}

.ctw-select {
  appearance: none;
  padding-right: 40px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256' fill='%236B818C'%3E%3Cpath d='M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  background-size: 14px;
}

.ctw label.error,
.ctw-error {
  display: block;
  margin-top: 2px;
  font-size: 12.5px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--ctw-crimson);
}

.ctw-help {
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--ctw-steel);
}

.ctw-check {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 13.5px;
  line-height: 1.45;
  color: #3A454A;
  cursor: pointer;
}
.ctw-check input[type=checkbox],
.ctw-check input[type=radio] {
  appearance: none;
  flex: none;
  width: 20px;
  height: 20px;
  margin: 0;
  border: 1.5px solid #B9C3C8;
  border-radius: 6px;
  background: #fff;
  cursor: pointer;
  transition: background-color var(--ctw-fast) ease, border-color var(--ctw-fast) ease;
}
.ctw-check input[type=checkbox]:checked,
.ctw-check input[type=radio]:checked {
  border-color: var(--ctw-crimson);
  background: var(--ctw-crimson) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256' fill='%23fff'%3E%3Cpath d='M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z'/%3E%3C/svg%3E") center/13px no-repeat;
}
.ctw-check input[type=checkbox]:focus-visible,
.ctw-check input[type=radio]:focus-visible {
  outline: 2px solid var(--ctw-crimson);
  outline-offset: 2px;
}
.ctw-check input[type=radio] {
  border-radius: 50%;
}
.ctw-check a {
  color: var(--ctw-crimson);
}

.ctw-switch {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}
.ctw-switch input {
  appearance: none;
  position: relative;
  flex: none;
  width: 44px;
  height: 26px;
  margin: 0;
  border-radius: var(--ctw-radius-pill);
  background: #D7DDE0;
  cursor: pointer;
  transition: background-color var(--ctw-base) ease;
}
.ctw-switch input::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  transition: transform var(--ctw-base) var(--ctw-ease);
}
.ctw-switch input:checked {
  background: var(--ctw-crimson);
}
.ctw-switch input:checked::after {
  transform: translateX(18px);
}

.ctw-inline-form {
  display: flex;
  gap: 8px;
}
.ctw-inline-form .ctw-input {
  flex: 1;
  min-width: 0;
}
@media (max-width: 480px) {
  .ctw-inline-form {
    flex-direction: column;
  }
}

.ctw .shake {
  animation: ctw-shake 0.4s ease;
}

@keyframes ctw-shake {
  0%, 100% {
    transform: translateX(0);
  }
  20%, 60% {
    transform: translateX(-6px);
  }
  40%, 80% {
    transform: translateX(6px);
  }
}
.ctw-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 26px;
  border: 1px solid var(--ctw-line);
  border-radius: var(--ctw-radius-card);
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: border-color var(--ctw-base) ease, box-shadow var(--ctw-base) ease, transform var(--ctw-base) var(--ctw-ease);
}
.ctw-card h3,
.ctw-card h4 {
  margin: 4px 0 0;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1.3;
}
.ctw-card p {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: var(--ctw-steel);
}
a.ctw-card:hover {
  border-color: transparent;
  box-shadow: var(--ctw-shadow-card);
  transform: translateY(-3px);
}

.ctw-card--soft {
  border-color: transparent;
  background: var(--ctw-surface-alt);
}
.ctw-card--dark {
  border-color: rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.04);
  color: #fff;
}
.ctw-card--dark p {
  color: var(--ctw-text-on-dark);
}
.ctw-card--lg {
  padding: clamp(28px, 4vw, 40px);
  border-radius: var(--ctw-radius-lg);
}

.ctw-stats {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(20px, 4vw, 44px);
  margin: 0;
  padding: 28px 0 0;
  border-top: 1px solid var(--ctw-line);
  list-style: none;
}
.ctw-stats strong {
  display: block;
  font-size: clamp(24px, 2.6vw, 30px);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.1;
}
.ctw-stats span {
  font-size: 13px;
  color: var(--ctw-steel);
}

.ctw-logos {
  --ctw-logo-scale: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 20px 44px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-logos li {
  display: contents;
}
.ctw-logos img {
  display: block;
  width: auto;
  height: calc(var(--ctw-logo-h, 30px) * var(--ctw-logo-scale));
  opacity: 0.78;
  filter: saturate(0.9);
  transition: opacity var(--ctw-fast) ease;
}
.ctw-logos img:hover {
  opacity: 1;
}
@media (max-width: 760px) {
  .ctw-logos {
    --ctw-logo-scale: .8;
    gap: 18px 30px;
  }
}

.ctw-guides-popup .ctw-logos,
.ctw-cat-hero__logos .ctw-logos {
  --ctw-logo-scale: .72;
}

.ctw-dialog {
  width: min(640px, 100vw - 32px);
  max-height: calc(100dvh - 48px);
  padding: 0;
  border: 0;
  border-radius: var(--ctw-radius-lg);
  background: #fff;
  color: var(--ctw-text);
  box-shadow: var(--ctw-shadow-pop);
  overflow: auto;
}
.ctw-dialog::backdrop {
  background: rgba(22, 25, 27, 0.55);
  backdrop-filter: blur(3px);
}
.ctw-dialog[open] {
  animation: ctw-dialog-in var(--ctw-base) var(--ctw-ease);
}
.ctw-dialog--lg {
  width: min(920px, 100vw - 32px);
}
.ctw-dialog--video {
  width: min(1040px, 100vw - 32px);
  background: #000;
  overflow: visible;
}
.ctw-dialog--video iframe {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
  height: auto;
  border: 0;
  border-radius: var(--ctw-radius-lg);
}
.ctw-dialog--video .ctw-dialog__close {
  top: -48px;
  right: 0;
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
}
.ctw-dialog--video .ctw-dialog__close:hover {
  background: rgba(255, 255, 255, 0.22);
}

.ctw-dialog__body {
  padding: clamp(28px, 5vw, 48px);
}

.ctw-dialog__close {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: var(--ctw-surface-alt);
  color: var(--ctw-dark);
  transition: background-color var(--ctw-fast) ease;
}
.ctw-dialog__close:hover {
  background: var(--ctw-line);
}
.ctw-dialog__close .ctw-icon {
  width: 18px;
  height: 18px;
}

@keyframes ctw-dialog-in {
  from {
    opacity: 0;
    transform: translateY(12px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.ctw-guides-popup {
  text-align: center;
}
.ctw-guides-popup h2 {
  font-size: clamp(26px, 3.4vw, 34px);
  max-width: 520px;
  margin: 0 auto 12px;
}
.ctw-guides-popup .ctw-lead {
  max-width: 480px;
  margin: 0 auto 26px;
}
.ctw-guides-popup .ctw-logos {
  margin-top: 16px;
  gap: 16px 26px;
}
.ctw-guides-popup .ctw-logos li {
  width: 96px;
  height: 26px;
}

.ctw-guides-popup__trust {
  margin: 32px 0 0 !important;
  padding-top: 28px;
  border-top: 1px solid var(--ctw-line);
  font-family: var(--ctw-font-mono);
  font-size: 10.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ctw-steel);
}

.ctw .alertify .ajs-dimmer {
  background: #16191B;
  opacity: 0.55;
}
.ctw .alertify .ajs-dialog {
  max-width: 480px;
  padding: 0;
  border-radius: var(--ctw-radius-lg);
  box-shadow: var(--ctw-shadow-pop);
  overflow: hidden;
}
.ctw .alertify .ajs-header {
  display: none;
}
.ctw .alertify .ajs-body {
  padding: 32px 32px 8px;
  font-family: var(--ctw-font);
  font-size: 16px;
  line-height: 1.55;
  color: var(--ctw-dark);
}
.ctw .alertify .ajs-body .ajs-content {
  padding: 0;
}
.ctw .alertify .ajs-footer {
  padding: 16px 32px 28px;
  border-top: 0;
  background: #fff;
}
.ctw .alertify .ajs-footer .ajs-buttons {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}
.ctw .alertify .ajs-footer .ajs-buttons .ajs-button {
  min-width: 0;
  margin: 0;
}
.ctw .alertify .ajs-commands {
  display: none;
}

.ctw .alertify-notifier .ajs-message {
  width: auto;
  min-width: 260px;
  max-width: 380px;
  padding: 14px 18px;
  border: 0;
  border-radius: var(--ctw-radius);
  background: var(--ctw-dark);
  color: #fff;
  font-family: var(--ctw-font);
  font-size: 14.5px;
  line-height: 1.45;
  text-shadow: none;
  box-shadow: var(--ctw-shadow-pop);
}
.ctw .alertify-notifier .ajs-message.ajs-success {
  border-left: 4px solid var(--ctw-teal);
}
.ctw .alertify-notifier .ajs-message.ajs-error {
  border-left: 4px solid var(--ctw-crimson);
}
.ctw .alertify-notifier .ajs-message.ajs-warning {
  border-left: 4px solid var(--ctw-amber);
}

.ctw-header {
  position: sticky;
  top: 0;
  z-index: 900;
  background: rgba(255, 255, 255, 0.86);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--ctw-line);
}

.ctw-nav {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  height: var(--ctw-nav-h);
  padding: 0 var(--ctw-gutter);
}

.ctw-nav__brand {
  display: flex;
  align-items: center;
  gap: 18px;
  flex: none;
}
.ctw-nav__brand .ctw-badge {
  padding: 4px 9px;
  font-size: 10px;
}

.ctw-nav__logo {
  display: block;
  line-height: 0;
}
.ctw-nav__logo img {
  height: 30px;
  width: auto;
}

.ctw-nav__panel {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.ctw-nav__links {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  gap: 30px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ctw-nav__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0;
  border: 0;
  background: none;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.2;
  color: var(--ctw-dark);
  text-decoration: none;
  white-space: nowrap;
  transition: color var(--ctw-fast) ease;
}
.ctw-nav__link:hover {
  color: var(--ctw-crimson);
}
.ctw-nav__link.is-current {
  color: var(--ctw-crimson);
}
.ctw-nav__link .ctw-icon {
  width: 10px;
  height: 10px;
  transition: transform var(--ctw-base) var(--ctw-ease);
}
.ctw-nav__link[aria-expanded=true] {
  color: var(--ctw-crimson);
}
.ctw-nav__link[aria-expanded=true] .ctw-icon {
  transform: rotate(180deg);
}

.ctw-nav__link--menu {
  font-weight: 600;
}

.ctw-nav__actions {
  display: flex;
  align-items: center;
  gap: 14px;
  flex: none;
}

.ctw-nav__login {
  font-size: 14px;
  font-weight: 600;
  color: var(--ctw-dark);
  text-decoration: none;
}
.ctw-nav__login:hover {
  color: var(--ctw-crimson);
}

.ctw-nav__actions .ctw-btn--sm {
  padding: 11px 18px;
  box-shadow: var(--ctw-shadow-cta-sm);
}

.ctw-nav__user-inner {
  display: flex;
  align-items: center;
  gap: 14px;
}

.ctw-nav__user-name {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  max-width: 180px;
  font-size: 14px;
  font-weight: 600;
  color: var(--ctw-dark);
}
.ctw-nav__user-name span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ctw-nav__user-name .ctw-icon {
  width: 20px;
  height: 20px;
  color: var(--ctw-steel);
}

.ctw-nav__logout {
  font-size: 13.5px;
  font-weight: 500;
  color: var(--ctw-steel);
  text-decoration: none;
}
.ctw-nav__logout:hover {
  color: var(--ctw-dark);
}

.ctw-nav__burger {
  display: none;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-right: -8px;
  padding: 0;
  border: 0;
  border-radius: var(--ctw-radius-sm);
  background: none;
  color: var(--ctw-dark);
}
.ctw-nav__burger .ctw-icon {
  width: 24px;
  height: 24px;
}
.ctw-nav__burger .ctw-nav__burger-close {
  display: none;
}
.ctw-nav__burger[aria-expanded=true] .ctw-nav__burger-open {
  display: none;
}
.ctw-nav__burger[aria-expanded=true] .ctw-nav__burger-close {
  display: inline-block;
}

.ctw-mega {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  display: none;
  justify-content: center;
  padding: 14px var(--ctw-gutter) 0;
}
.ctw-mega.is-open {
  display: flex;
}

.ctw-mega__inner {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  max-width: 1080px;
  border: 1px solid var(--ctw-line);
  border-radius: 20px;
  background: #fff;
  box-shadow: var(--ctw-shadow-pop);
  overflow: hidden;
  animation: ctw-mega-in 0.18s var(--ctw-ease);
}

.ctw-mega__col {
  padding: 28px;
  border-right: 1px solid var(--ctw-line-soft);
}
.ctw-mega__col:last-child {
  border-right: 0;
}

.ctw-mega__head {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 16px;
  color: inherit;
  text-decoration: none;
}
.ctw-mega__head strong {
  display: block;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: -0.01em;
  line-height: 1.25;
}
.ctw-mega__head small {
  display: block;
  font-size: 11.5px;
  color: var(--ctw-steel-300);
}
.ctw-mega__head .ctw-icon-tile {
  width: 40px;
  height: 40px;
  border-radius: 11px;
}
.ctw-mega__head .ctw-icon-tile .ctw-icon {
  width: 22px;
  height: 22px;
}

.ctw-mega__desc {
  margin: 0 0 16px !important;
  font-size: 13px;
  line-height: 1.5;
  color: var(--ctw-steel);
}

.ctw-mega__links {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 0 -10px;
  padding: 0;
  list-style: none;
}
.ctw-mega__links a {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 9px 10px;
  border-radius: var(--ctw-radius-sm);
  color: var(--ctw-dark);
  text-decoration: none;
  transition: background-color var(--ctw-fast) ease;
}
.ctw-mega__links a:hover {
  background: var(--ctw-surface-hover);
}
.ctw-mega__links .ctw-icon {
  width: 18px;
  height: 18px;
  color: var(--ctw-crimson);
}
.ctw-mega__links strong {
  display: block;
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1.2;
}
.ctw-mega__links small {
  display: block;
  font-size: 11.5px;
  line-height: 1.3;
  color: var(--ctw-steel-300);
}

.ctw-mega__col--teal .ctw-mega__links .ctw-icon {
  color: var(--ctw-green);
}

.ctw-mega__col--amber .ctw-mega__links .ctw-icon {
  color: var(--ctw-amber-700);
}

.ctw-scrim {
  position: fixed;
  inset: var(--ctw-nav-h) 0 0 0;
  z-index: 800;
  background: rgba(29, 35, 38, 0.28);
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--ctw-base) ease, visibility var(--ctw-base) ease;
}
.ctw-has-mega .ctw-scrim {
  opacity: 1;
  visibility: visible;
}

@keyframes ctw-mega-in {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@media (max-width: 1023px) {
  .ctw-header.has-panel-open {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    background: #fff;
  }
  .ctw-nav__burger {
    display: inline-flex;
  }
  .ctw-nav__brand .ctw-badge {
    display: none;
  }
  .ctw-nav__panel {
    position: fixed;
    top: var(--ctw-nav-h);
    left: 0;
    right: 0;
    bottom: 0;
    display: none;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;
    padding: 12px var(--ctw-gutter) 32px;
    background: #fff;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .ctw-nav__panel.is-open {
    display: flex;
    animation: ctw-mega-in 0.18s var(--ctw-ease);
  }
  .ctw-nav__links {
    flex: none;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
  .ctw-nav__links > li {
    border-bottom: 1px solid var(--ctw-line-soft);
  }
  .ctw-nav__link {
    justify-content: space-between;
    width: 100%;
    padding: 18px 2px;
    border-radius: 0;
    font-size: 17px;
    font-weight: 600;
  }
  .ctw-nav__link:hover {
    background: none;
  }
  .ctw-nav__link .ctw-icon {
    width: 14px;
    height: 14px;
  }
  .ctw-mega {
    position: static;
    padding: 0 0 12px;
  }
  .ctw-mega__inner {
    grid-template-columns: minmax(0, 1fr);
    border: 0;
    border-radius: 0;
    box-shadow: none;
    animation: none;
  }
  .ctw-mega__col {
    padding: 14px 0;
    border-right: 0;
    border-bottom: 1px solid var(--ctw-line-soft);
  }
  .ctw-mega__col:last-child {
    border-bottom: 0;
  }
  .ctw-mega__desc {
    display: none;
  }
  .ctw-nav__actions {
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
    margin-top: 24px;
  }
  .ctw-nav__actions .ctw-lang {
    align-self: flex-start;
  }
  .ctw-nav__actions #login-menu-signup .ctw-btn {
    display: flex;
    width: 100%;
  }
  .ctw-nav__actions .ctw-nav__login {
    display: block;
    padding: 12px 0;
    font-size: 16px;
    text-align: center;
  }
  .ctw-nav__user-inner {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }
  .ctw-nav__user-inner .ctw-btn {
    display: flex;
    width: 100%;
  }
  .ctw-nav__user-name {
    max-width: none;
  }
  .ctw-nav__logout {
    padding: 6px 0;
    text-align: center;
  }
  .ctw-scrim {
    display: none;
  }
}
.ctw-header--minimal {
  position: relative;
  background: #fff;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
.ctw-header--minimal .ctw-nav {
  justify-content: space-between;
}

.ctw-footer {
  position: relative;
  background: var(--ctw-darker);
  color: var(--ctw-text-on-dark);
  overflow: hidden;
}
.ctw-footer a {
  color: var(--ctw-text-on-dark);
  text-decoration: none;
  transition: color var(--ctw-fast) ease;
}
.ctw-footer a:hover {
  color: #fff;
}

.ctw-footer__top {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
  gap: 36px;
  align-items: center;
  padding: 46px 0;
  border-bottom: 1px solid var(--ctw-line-dark);
}
@media (max-width: 760px) {
  .ctw-footer__top {
    grid-template-columns: minmax(0, 1fr);
  }
}

.ctw-footer__news-title {
  margin: 0 0 14px;
  font-size: 19px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #fff;
}

.ctw-footer__news {
  max-width: 440px;
}
.ctw-footer__news .ctw-input {
  border-color: rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.05);
  color: #fff;
}
.ctw-footer__news .ctw-input::placeholder {
  color: var(--ctw-steel);
}
.ctw-footer__news .ctw-input:focus {
  border-color: var(--ctw-crimson);
  box-shadow: 0 0 0 4px rgba(219, 7, 60, 0.25);
}
.ctw-footer__news > p {
  margin: 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--ctw-teal);
}

.ctw-footer__consent {
  margin: 10px 0 0;
  font-size: 11.5px;
  line-height: 1.5;
  color: var(--ctw-steel);
}

.ctw-footer__capterra {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
}
@media (min-width: 761px) {
  .ctw-footer__capterra {
    align-items: flex-end;
  }
}
.ctw-footer__capterra img {
  height: 54px;
  width: auto;
}

.ctw-footer__label {
  font-family: var(--ctw-font-mono);
  font-size: 10.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ctw-steel);
}

.ctw-footer__cols {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) repeat(4, minmax(0, 1fr));
  gap: 30px;
  padding: 60px 0 44px;
}
@media (max-width: 1024px) {
  .ctw-footer__cols {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .ctw-footer__cols .ctw-footer__about {
    grid-column: 1/-1;
  }
}
@media (max-width: 760px) {
  .ctw-footer__cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px 20px;
  }
}

.ctw-footer__about img {
  height: 28px;
  width: auto;
}
.ctw-footer__about p {
  max-width: 250px;
  margin: 18px 0 20px;
  font-size: 13.5px;
  line-height: 1.55;
}

.ctw-footer__col-title {
  margin: 0 0 14px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #fff;
}

.ctw-footer__links {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-footer__links li + li {
  margin-top: 9px;
}
.ctw-footer__links a {
  font-size: 13.5px;
  line-height: 1.4;
}

.ctw-footer__social {
  display: flex;
  margin-top: 12px !important;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-footer__social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 50%;
}
.ctw-footer__social a:hover {
  border-color: rgba(255, 255, 255, 0.4);
}
.ctw-footer__social .ctw-icon {
  width: 17px;
  height: 17px;
}

.ctw-footer__bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 18px 32px;
  padding: 22px 0 40px;
  border-top: 1px solid #2A2F32;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  color: var(--ctw-steel);
}

.ctw-footer__legal {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ctw-footer__seals {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.ctw-footer__seals a,
.ctw-footer__seals span {
  display: inline-flex;
  padding: 6px 10px;
  border-radius: 8px;
  background: #fff;
}
.ctw-footer__seals img {
  height: 34px;
  width: auto;
}

.ctw-sec-hero {
  padding: clamp(44px, 7vw, 88px) 0 clamp(48px, 6vw, 80px);
  overflow: hidden;
}
.ctw-sec-hero--dark {
  background: var(--ctw-dark);
  color: #fff;
}
.ctw-sec-hero--dark .ctw-lead {
  color: var(--ctw-text-on-dark);
}

.ctw-sec-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: clamp(36px, 5vw, 64px);
  align-items: center;
}
@media (max-width: 1023px) {
  .ctw-sec-hero__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.ctw-sec-hero__title {
  margin: 0 0 22px !important;
  font-size: clamp(38px, 5.6vw, 64px);
  line-height: 1.02;
  letter-spacing: -0.04em;
}

.ctw-sec-hero__title .ctw-sec-hero__kicker {
  display: block;
  width: fit-content;
  line-height: 1.4;
}
.ctw-sec-hero--text .ctw-sec-hero__title .ctw-sec-hero__kicker {
  margin-left: auto;
  margin-right: auto;
}

.ctw-sec-hero__copy .ctw-lead {
  max-width: 560px;
  margin-bottom: 30px;
}

@media (max-width: 480px) {
  .ctw-sec-hero__actions {
    flex-direction: column;
    align-items: stretch;
  }
}

.ctw-sec-hero__visual:empty {
  display: none;
}

.ctw-sec-cards__card h3 {
  font-size: 17px;
}
.ctw-sec-cards__card p {
  flex: 1;
}

.ctw-sec-cards__tile--dark {
  background: rgba(219, 7, 60, 0.14);
  color: #FF5C84;
}

.ctw-sec-cards__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 4px;
  font-size: 13.5px;
  font-weight: 700;
}
.ctw-sec-cards__link .ctw-icon {
  width: 15px;
  height: 15px;
  color: var(--ctw-crimson);
  transition: transform var(--ctw-base) var(--ctw-ease);
}
.ctw-card:hover .ctw-sec-cards__link .ctw-icon {
  transform: translateX(3px);
}

.ctw-card--dark .ctw-sec-cards__link .ctw-icon {
  color: #FF5C84;
}

.ctw-sec-split__copy .ctw-lead {
  margin: 14px 0 26px;
}
.ctw-sec-split__copy h2 {
  margin: 0 !important;
}

.ctw-sec-split--reverse .ctw-sec-split__copy {
  order: 2;
}
@media (max-width: 1023px) {
  .ctw-sec-split--reverse .ctw-sec-split__copy {
    order: 0;
  }
}

.ctw-sec-checklist {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 22px;
  border: 1px solid var(--ctw-line);
  border-radius: var(--ctw-radius-lg);
  background: var(--ctw-surface-alt);
  list-style: none;
}
.ctw-sec-checklist li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid var(--ctw-line);
  border-radius: var(--ctw-radius);
  background: #fff;
  font-size: 15px;
  font-weight: 600;
}
.ctw-sec-checklist span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 26px;
  height: 26px;
  border-radius: 8px;
  background: var(--ctw-crimson-50);
  color: var(--ctw-crimson);
}
.ctw-sec-checklist span .ctw-icon {
  width: 15px;
  height: 15px;
}

.ctw-sec-stats {
  padding: 24px;
  border-radius: var(--ctw-radius-lg);
  background: var(--ctw-dark);
  color: #fff;
  box-shadow: 0 30px 70px rgba(29, 35, 38, 0.22);
}

.ctw-sec-stats__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
  font-family: var(--ctw-font-mono);
  font-size: 10.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ctw-steel-300);
}
.ctw-sec-stats__head em {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border: 1px solid rgba(46, 196, 182, 0.3);
  border-radius: var(--ctw-radius-pill);
  background: rgba(46, 196, 182, 0.12);
  font-style: normal;
  text-transform: none;
  letter-spacing: 0;
  color: var(--ctw-teal);
}
.ctw-sec-stats__head i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  animation: ctw-home-pulse 1.4s infinite;
}

.ctw-sec-stats__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.ctw-sec-stats__grid div {
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--ctw-radius);
  background: rgba(255, 255, 255, 0.04);
}
.ctw-sec-stats__grid strong {
  display: block;
  font-size: clamp(24px, 3vw, 30px);
  font-weight: 800;
  letter-spacing: -0.03em;
}
.ctw-sec-stats__grid span {
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ctw-steel-300);
}

.ctw-sec-stats__bar {
  height: 6px;
  margin-top: 18px;
  overflow: hidden;
  border-radius: var(--ctw-radius-pill);
  background: rgba(255, 255, 255, 0.08);
}
.ctw-sec-stats__bar i {
  display: block;
  width: 66%;
  height: 100%;
  background: linear-gradient(90deg, var(--ctw-crimson), var(--ctw-indigo));
}

.ctw-sec-stats__funnel {
  display: grid;
  gap: 10px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}
.ctw-sec-stats__funnel li {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr) 44px;
  align-items: center;
  gap: 12px;
  font-size: 12.5px;
  color: var(--ctw-steel-300);
}
.ctw-sec-stats__funnel i {
  height: 10px;
  overflow: hidden;
  border-radius: var(--ctw-radius-pill);
  background: rgba(255, 255, 255, 0.08);
}
.ctw-sec-stats__funnel b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--ctw-crimson), var(--ctw-indigo));
}
.ctw-sec-stats__funnel strong {
  text-align: right;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  color: #fff;
}

.ctw-sec-ai-wrap {
  padding-top: clamp(48px, 6vw, 80px);
}

.ctw-sec-ai {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(28px, 4vw, 48px);
  align-items: center;
  padding: clamp(28px, 4vw, 44px);
  overflow: hidden;
  border-radius: var(--ctw-radius-lg);
  background: radial-gradient(60% 90% at 90% 0%, rgba(219, 7, 60, 0.35), transparent 60%), var(--ctw-dark);
  color: #fff;
}
.ctw-sec-ai .ctw-lead {
  margin: 14px 0 24px;
  color: var(--ctw-text-on-dark);
}
.ctw-sec-ai h2 {
  margin: 0 !important;
}
@media (max-width: 1023px) {
  .ctw-sec-ai {
    grid-template-columns: minmax(0, 1fr);
  }
}

.ctw-sec-ai__badge {
  margin-bottom: 18px;
  text-transform: uppercase;
}
.ctw-sec-ai__badge .ctw-icon {
  width: 12px;
  height: 12px;
}

.ctw-sec-ai__items {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-sec-ai__items li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--ctw-radius);
  background: rgba(255, 255, 255, 0.05);
  font-size: 14.5px;
  font-weight: 600;
}
.ctw-sec-ai__items span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 26px;
  height: 26px;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-indigo));
}
.ctw-sec-ai__items span .ctw-icon {
  width: 13px;
  height: 13px;
}

.ctw-sec-ai__chat {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.ctw-sec-ai__bubble {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  max-width: 88%;
  margin: 0 !important;
  padding: 14px 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px 16px 16px 4px;
  background: rgba(255, 255, 255, 0.05);
  font-size: 14.5px;
  line-height: 1.5;
  color: #fff;
}
.ctw-sec-ai__bubble--user {
  align-self: flex-end;
  border-color: transparent;
  border-radius: 16px 16px 4px 16px;
  background: var(--ctw-crimson);
}
.ctw-sec-ai__bubble span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 26px;
  height: 26px;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-indigo));
}
.ctw-sec-ai__bubble span .ctw-icon {
  width: 13px;
  height: 13px;
}

.ctw-sec-final__lead {
  max-width: 480px;
  margin: 0 auto 30px;
}

.ctw-sec-final__actions {
  justify-content: center;
}
@media (max-width: 480px) {
  .ctw-sec-final__actions {
    flex-direction: column;
    align-items: stretch;
  }
}

.ctw-sec-hero--dark {
  position: relative;
  background: radial-gradient(50% 70% at 85% 10%, rgba(68, 92, 173, 0.35), transparent 60%), var(--ctw-dark);
}
.ctw-sec-hero--dark .ctw-accent {
  background: linear-gradient(90deg, var(--ctw-crimson), #7F93DB 55%, var(--ctw-teal));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.ctw-sec-mentions {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-sec-mentions li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 12px;
  align-items: center;
  padding: 11px 13px;
  border: 1px solid var(--ctw-line);
  border-radius: 10px;
  background: #fff;
}
.ctw-sec-mentions .ctw-sec-mentions__meta {
  grid-column: 1;
  margin: 0 0 3px !important;
  font-size: 12.5px;
}
.ctw-sec-mentions .ctw-sec-mentions__meta span {
  margin-left: 8px;
  font-size: 11px;
  color: var(--ctw-steel);
}
.ctw-sec-mentions .ctw-sec-mentions__text {
  grid-column: 1;
  margin: 0 !important;
  font-size: 13px;
  line-height: 1.45;
}

.ctw-sec-mentions__tag {
  grid-column: 2;
  grid-row: 1/span 2;
  padding: 3px 9px;
  border: 1px solid currentColor;
  border-radius: var(--ctw-radius-pill);
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  white-space: nowrap;
}
.ctw-sec-mentions__tag--positive {
  color: var(--ctw-green);
}
.ctw-sec-mentions__tag--alert {
  color: var(--ctw-crimson);
}
.ctw-sec-mentions__tag--neutral {
  color: var(--ctw-steel);
}

.ctw-sec-feed {
  padding: 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--ctw-radius-lg);
  background: rgba(255, 255, 255, 0.04);
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.35);
}
.ctw-sec-feed .ctw-sec-stats__head {
  margin-bottom: 12px;
}
.ctw-sec-feed .ctw-sec-mentions li {
  border-color: rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.06);
  color: #fff;
}
.ctw-sec-feed .ctw-sec-mentions__meta span {
  color: var(--ctw-steel-300);
}
.ctw-sec-feed .ctw-sec-mentions__tag--positive {
  color: var(--ctw-teal);
}
.ctw-sec-feed .ctw-sec-mentions__tag--alert {
  color: #FF5C84;
}
.ctw-sec-feed .ctw-sec-mentions__tag--neutral {
  color: var(--ctw-steel-300);
}

.ctw-sec-numbered {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ctw-sec-numbered__n {
  font-size: 30px;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1;
  color: var(--ctw-crimson);
}

.ctw-sec-features {
  --ctw-sec-tone: var(--ctw-crimson);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--ctw-line);
  border-radius: var(--ctw-radius-lg);
  background: var(--ctw-line);
  gap: 1px;
  list-style: none;
}
.ctw-sec-features--teal {
  --ctw-sec-tone: var(--ctw-teal);
}
.ctw-sec-features--amber {
  --ctw-sec-tone: var(--ctw-amber);
}
.ctw-sec-features li {
  padding: 24px;
  background: #fff;
}
.ctw-sec-features h3 {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 8px !important;
  font-size: 15.5px !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
}
.ctw-sec-features h3::before {
  content: "";
  flex: none;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--ctw-sec-tone);
}
.ctw-sec-features p {
  margin: 0 !important;
  font-size: 13.5px;
  line-height: 1.55;
  color: var(--ctw-steel);
}
@media (max-width: 1023px) {
  .ctw-sec-features {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 480px) {
  .ctw-sec-features {
    grid-template-columns: minmax(0, 1fr);
  }
}

.ctw-sec-tagged__tag {
  font-family: var(--ctw-font-mono);
  font-size: 10.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}
.ctw-card--dark .ctw-sec-tagged__tag {
  color: var(--ctw-steel-300);
}

.ctw-sec-tagged .ctw-card h3 {
  font-size: 16.5px;
}
.ctw-sec-tagged .ctw-card p {
  flex: 1;
}

.ctw-sec-features--cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media (max-width: 1023px) {
  .ctw-sec-features--cols-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 480px) {
  .ctw-sec-features--cols-4 {
    grid-template-columns: minmax(0, 1fr);
  }
}

.ctw-sec-features .ctw-sec-features__cta {
  display: flex;
  padding: 0;
  background: var(--ctw-indigo-deep);
}
.ctw-sec-features .ctw-sec-features__cta a {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 24px;
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
  transition: background-color var(--ctw-fast) ease;
}
.ctw-sec-features .ctw-sec-features__cta a:hover {
  background: #000;
}
.ctw-sec-features .ctw-sec-features__cta .ctw-icon {
  width: 16px;
  height: 16px;
}

.ctw-sec-tabs {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 26px;
  padding: 4px;
  border-radius: var(--ctw-radius-pill);
  background: var(--ctw-surface-alt);
}
.ctw-sec-tabs button {
  padding: 10px 18px;
  border: 0;
  border-radius: var(--ctw-radius-pill);
  background: none;
  font-size: 14px;
  font-weight: 700;
  color: var(--ctw-steel);
  transition: background-color var(--ctw-fast) ease, color var(--ctw-fast) ease;
}
.ctw-sec-tabs button.is-active {
  background: #fff;
  color: var(--ctw-dark);
  box-shadow: 0 2px 10px rgba(29, 35, 38, 0.1);
}
@media (max-width: 480px) {
  .ctw-sec-tabs {
    display: flex;
    border-radius: var(--ctw-radius);
  }
  .ctw-sec-tabs button {
    flex: 1 1 100%;
    border-radius: 10px;
  }
}

.ctw-sec-tabpanel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(28px, 4vw, 56px);
  align-items: center;
}
.ctw-sec-tabpanel h3 {
  margin: 10px 0 12px !important;
  font-size: clamp(22px, 2.6vw, 28px);
  letter-spacing: -0.02em;
}
@media (max-width: 1023px) {
  .ctw-sec-tabpanel {
    grid-template-columns: minmax(0, 1fr);
  }
}

.ctw-sec-pillars {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-sec-pillars li {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 20px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--ctw-radius-card);
  background: rgba(255, 255, 255, 0.05);
}
.ctw-sec-pillars strong {
  display: block;
  margin-bottom: 4px;
  font-size: 16px;
}
.ctw-sec-pillars p {
  margin: 0 !important;
  font-size: 14px;
  color: var(--ctw-text-on-dark);
}

.ctw-sec-hero--text .ctw-sec-hero__grid {
  grid-template-columns: minmax(0, 1fr);
  max-width: calc(880px + var(--ctw-gutter) * 2);
  text-align: center;
}
.ctw-sec-hero--text .ctw-sec-hero__copy .ctw-lead {
  margin-left: auto;
  margin-right: auto;
}
.ctw-sec-hero--text .ctw-sec-hero__actions {
  justify-content: center;
}

.ctw-sec-rows {
  display: flex;
  flex-direction: column;
  gap: clamp(40px, 6vw, 72px);
}

.ctw-sec-row h3 {
  margin: 0 0 12px !important;
}

.ctw-sec-row__image img {
  width: 100%;
  border-radius: var(--ctw-radius-lg);
  box-shadow: 0 30px 70px rgba(29, 35, 38, 0.18);
}

.ctw-sec-steps {
  display: grid;
  grid-template-columns: repeat(var(--ctw-steps, 5), minmax(0, 1fr));
  gap: 0;
  margin: 0;
  padding: 0;
  border-top: 2px solid var(--ctw-dark);
  list-style: none;
}
.ctw-sec-steps li {
  padding: 26px 18px 8px 0;
}
.ctw-sec-steps span {
  display: block;
  margin-bottom: 14px;
  font-size: 40px;
  font-weight: 800;
  letter-spacing: -0.04em;
  line-height: 1;
  color: var(--ctw-crimson);
}
.ctw-sec-steps h3 {
  margin: 0 0 8px !important;
  font-size: 17px !important;
}
.ctw-sec-steps p {
  margin: 0 !important;
  font-size: 14px;
  color: var(--ctw-steel);
}
@media (max-width: 1023px) {
  .ctw-sec-steps {
    grid-template-columns: minmax(0, 1fr);
  }
  .ctw-sec-steps li {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    column-gap: 14px;
    padding: 20px 0;
    border-bottom: 1px solid var(--ctw-line);
  }
  .ctw-sec-steps span {
    grid-row: span 2;
    margin: 0;
    font-size: 32px;
  }
}

.ctw-sec-steps--amber span {
  color: var(--ctw-amber-700);
}

.ctw-sec-path {
  gap: 14px;
}
.ctw-sec-path h3 {
  margin: 0 !important;
}
.ctw-sec-path .ctw-sec-checklist {
  margin: 6px 0 8px;
}
.ctw-sec-path .ctw-btn {
  align-self: flex-start;
}
.ctw-sec-path--alt {
  border-color: transparent;
  background: var(--ctw-surface-alt);
}

.ctw-sec-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px 24px;
  margin: 12px 0 26px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--ctw-line);
}

.ctw-sec-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.ctw-sec-filter {
  padding: 9px 16px;
  border: 1px solid var(--ctw-line);
  border-radius: var(--ctw-radius-pill);
  background: #fff;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--ctw-dark);
  transition: background-color var(--ctw-fast) ease, border-color var(--ctw-fast) ease, color var(--ctw-fast) ease;
}
.ctw-sec-filter:hover {
  border-color: var(--ctw-dark);
}
.ctw-sec-filter.is-active {
  border-color: var(--ctw-indigo);
  background: var(--ctw-indigo);
  color: #fff;
}

.ctw-sec-count {
  margin: 0 !important;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  letter-spacing: 0.04em;
  color: var(--ctw-steel);
}

.ctw-home-window {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--ctw-line);
  border-radius: var(--ctw-radius-lg);
  background: #fff;
  box-shadow: 0 30px 70px rgba(29, 35, 38, 0.16);
}

.ctw-home-window__bar,
.ctw-home-builder__bar {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--ctw-line-soft);
}
.ctw-home-window__bar > span,
.ctw-home-builder__bar > span {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--ctw-crimson);
}
.ctw-home-window__bar > span:nth-child(2),
.ctw-home-builder__bar > span:nth-child(2) {
  background: var(--ctw-amber);
}
.ctw-home-window__bar > span:nth-child(3),
.ctw-home-builder__bar > span:nth-child(3) {
  background: var(--ctw-teal);
}
.ctw-home-window__bar em,
.ctw-home-builder__bar em {
  margin-left: auto;
  font-family: var(--ctw-font-mono);
  font-size: 10.5px;
  font-style: normal;
  color: var(--ctw-steel);
}

.ctw-home-ai-tag {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 !important;
  font-family: var(--ctw-font-mono);
  font-size: 10.5px;
  letter-spacing: 0.06em;
  color: #A4B0F5;
}
.ctw-home-ai-tag > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 7px;
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-indigo));
  color: #fff;
}
.ctw-home-ai-tag > span .ctw-icon {
  width: 12px;
  height: 12px;
}

.ctw-home-dots {
  display: inline-flex;
  gap: 3px;
}
.ctw-home-dots i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  animation: ctw-home-pulse 1s infinite;
}
.ctw-home-dots i:nth-child(2) {
  animation-delay: 0.2s;
}
.ctw-home-dots i:nth-child(3) {
  animation-delay: 0.4s;
}

.ctw-home-caret {
  display: inline-block;
  width: 7px;
  height: 14px;
  margin-left: 2px;
  vertical-align: -2px;
  background: var(--ctw-crimson);
  animation: ctw-home-blink 1s step-end infinite;
}

.ctw-home-split-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px 40px;
  margin-bottom: clamp(32px, 4vw, 44px);
}
.ctw-home-split-head > div,
.ctw-home-split-head > h2 {
  max-width: 680px;
}
.ctw-home-split-head h2 {
  margin: 0;
}
.ctw-home-split-head > .ctw-lead {
  max-width: 360px;
  margin: 0;
  font-size: 16px;
}
.ctw-home-split-head .ctw-lead {
  margin-bottom: 0;
}
.ctw-home-split-head h2 + .ctw-lead {
  margin-top: 16px;
}

.ctw-link--light {
  color: #fff !important;
}

.ctw-home-hero {
  padding: clamp(40px, 6vw, 80px) 0 clamp(48px, 5vw, 64px);
  overflow: hidden;
}
.ctw-home-hero .ctw-kicker {
  margin-bottom: 22px;
  font-size: 13px;
  letter-spacing: 0.02em;
}

.ctw-home-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 56px;
  align-items: center;
}
@media (max-width: 1023px) {
  .ctw-home-hero__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.ctw-home-hero__title {
  margin: 0 0 24px !important;
  font-size: clamp(40px, 8.5vw, 74px);
  line-height: 0.96;
  letter-spacing: -0.035em;
}
.ctw-home-hero__title span {
  display: block;
}

.ctw-home-hero__lead {
  max-width: 520px;
  margin-bottom: 34px !important;
  font-size: 19px;
  line-height: 1.55;
  color: #4A565B;
  text-wrap: pretty;
}

.ctw-home-hero__actions {
  gap: 14px;
}
.ctw-home-hero__actions .ctw-btn {
  min-height: 0;
  padding: 16px 26px;
}
.ctw-home-hero__actions .ctw-btn--primary {
  box-shadow: 0 12px 28px rgba(219, 7, 60, 0.32);
}
.ctw-home-hero__actions .ctw-home-demo {
  padding: 16px 22px;
  border-width: 1.5px;
  background: transparent;
  font-weight: 600;
}

.ctw-home-hero__stats {
  gap: 38px;
  margin-top: 48px;
  padding-top: 30px;
}
.ctw-home-hero__stats span {
  display: block;
  margin-top: 4px;
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
@media (max-width: 480px) {
  .ctw-home-hero__stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
}

.ctw-home-demo__play {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--ctw-dark);
  color: #fff;
}
.ctw-home-demo__play .ctw-icon {
  width: 10px;
  height: 10px;
  margin-left: 2px;
}

.ctw-home-ticket {
  position: relative;
  margin: 0 0 26px;
}
@media (max-width: 1023px) {
  .ctw-home-ticket {
    max-width: 560px;
    margin: 0 auto 26px;
  }
}

.ctw-home-ticket__body {
  padding: 22px;
  background: linear-gradient(180deg, #FBFBFA, #fff);
}

.ctw-home-ticket__kicker {
  margin: 0 0 8px !important;
  font-family: var(--ctw-font-mono);
  font-size: 10.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}

.ctw-home-ticket__title {
  margin: 0 0 18px !important;
  font-size: 17px;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.25;
}

.ctw-home-ticket__scan {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  gap: 16px;
}

.ctw-home-receipt {
  position: relative;
  min-height: 132px;
  padding: 10px 9px;
  overflow: hidden;
  border: 1px solid var(--ctw-line);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 4px 12px rgba(29, 35, 38, 0.08);
}
.ctw-home-receipt i {
  display: block;
  height: 3px;
  margin-bottom: 6px;
  border-radius: 2px;
  background: #E2E6E8;
}
.ctw-home-receipt i:first-child {
  width: 64%;
  height: 5px;
  margin: 0 auto 9px;
  background: var(--ctw-dark);
}
.ctw-home-receipt i:nth-child(2) {
  width: 90%;
}
.ctw-home-receipt i:nth-child(3) {
  width: 78%;
}
.ctw-home-receipt i:nth-child(4) {
  width: 86%;
}
.ctw-home-receipt i:nth-child(5) {
  width: 70%;
}
.ctw-home-receipt i:nth-child(6) {
  width: 84%;
}
.ctw-home-receipt i:nth-child(7) {
  width: 50%;
  height: 5px;
  margin-top: 10px;
  background: var(--ctw-crimson);
}
.ctw-home-receipt b {
  position: absolute;
  left: 0;
  right: 0;
  top: 6px;
  height: 22px;
  background: linear-gradient(180deg, transparent, rgba(46, 196, 182, 0.55), transparent);
  box-shadow: 0 0 12px rgba(46, 196, 182, 0.5);
  animation: ctw-home-scan 2.2s ease-in-out infinite;
}

.ctw-home-ticket__fields {
  display: flex;
  flex-direction: column;
  gap: 7px;
  margin: 0;
}

.ctw-home-ticket__field {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 11px;
  border: 1px solid #ECEEF0;
  border-radius: 9px;
  background: #fff;
}
.ctw-home-ticket__field dt {
  font-family: var(--ctw-font-mono);
  font-size: 9.5px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ctw-steel);
}
.ctw-home-ticket__field dd {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  text-align: right;
}
.ctw-home-ticket__field dd i {
  font-style: normal;
  font-weight: 800;
  color: var(--ctw-teal);
}
.ctw-home-ticket__field--amount dd {
  color: var(--ctw-crimson);
}

.ctw-home-ticket__status {
  display: flex;
  width: fit-content;
  align-items: center;
  gap: 9px;
  margin: 16px 0 0 !important;
  padding: 8px 14px;
  border: 1px solid #DBE1F7;
  border-radius: var(--ctw-radius-pill);
  background: #EEF1FB;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--ctw-indigo);
}

.ctw-home-ai-bubble {
  position: absolute;
  bottom: -26px;
  left: -26px;
  width: 250px;
  padding: 14px 16px;
  border-radius: var(--ctw-radius-card);
  background: var(--ctw-dark);
  color: #fff;
  box-shadow: 0 20px 44px rgba(29, 35, 38, 0.32);
  animation: ctw-home-float 5s ease-in-out infinite;
}
.ctw-home-ai-bubble .ctw-home-ai-tag {
  margin-bottom: 8px !important;
}
@media (max-width: 1023px) {
  .ctw-home-ai-bubble {
    left: 12px;
  }
}
@media (max-width: 480px) {
  .ctw-home-ai-bubble {
    position: relative;
    bottom: auto;
    left: auto;
    width: auto;
    margin: -18px 14px 0;
    animation: none;
  }
}

.ctw-home-ai-bubble__text {
  margin: 0 !important;
  font-size: 13px;
  line-height: 1.45;
  color: #DFE3E5;
}

@media (max-width: 480px) {
  .ctw-home-ticket {
    margin-bottom: 0;
  }
  .ctw-home-ticket__scan {
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 12px;
  }
}
.ctw-home-brands {
  padding: 26px 0 64px;
}

.ctw-home-brands__title {
  margin: 0 0 26px !important;
  font-family: var(--ctw-font-mono);
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-align: center;
  text-transform: uppercase;
  color: var(--ctw-steel);
}

.ctw-home-game {
  padding: clamp(56px, 7vw, 92px) 0;
}
.ctw-home-game .ctw-section-head .ctw-lead {
  max-width: none;
}
.ctw-home-game .ctw-section-head {
  max-width: 680px;
  margin-bottom: 24px;
}
.ctw-home-game .ctw-h2 {
  margin-bottom: 14px;
  font-size: clamp(28px, 4vw, 40px);
  line-height: 1.05;
}
.ctw-home-game .ctw-lead {
  font-size: 17px;
  line-height: 1.55;
  text-wrap: pretty;
}

.ctw-home-live {
  margin-bottom: 18px;
  font-size: 11px;
  text-transform: uppercase;
}
.ctw-home-live i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--ctw-crimson);
  animation: ctw-home-pulse 1.4s infinite;
}

.ctw-home-game__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
@media (max-width: 480px) {
  .ctw-home-game__tabs {
    flex-wrap: nowrap;
    gap: 6px;
  }
}
.ctw-home-game__tabs {
  margin-bottom: 18px;
}
.ctw-home-game__tabs button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 18px;
  border: 1px solid var(--ctw-line);
  border-radius: 11px;
  background: #fff;
  font-size: 14px;
  font-weight: 700;
  color: var(--ctw-dark);
  transition: background-color var(--ctw-fast) ease, color var(--ctw-fast) ease;
}
.ctw-home-game__tabs button.is-active {
  border-color: var(--ctw-indigo);
  background: var(--ctw-indigo);
  color: #fff;
}
@media (max-width: 480px) {
  .ctw-home-game__tabs button {
    flex: 1 1 0;
    justify-content: center;
    gap: 5px;
    min-width: 0;
    padding: 10px 6px;
    font-size: 13px;
  }
  .ctw-home-game__tabs button .ctw-icon {
    width: 15px;
    height: 15px;
  }
}

.ctw-home-game__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 40px;
  align-items: center;
  padding: clamp(24px, 4vw, 40px);
  border: 1px solid var(--ctw-line);
  border-radius: 28px;
  background: linear-gradient(180deg, #fff, #F6F8F9);
}
@media (max-width: 1023px) {
  .ctw-home-game__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.ctw-home-game__demo {
  display: flex;
  justify-content: center;
  min-height: 420px;
}
.ctw-home-game__demo [role=tabpanel][hidden],
.ctw-home-game__demo [data-ctw-play-step][hidden],
.ctw-home-game__demo [data-ctw-quiz-question][hidden] {
  display: none;
}

.ctw-home-wheel {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 22px;
}

.ctw-home-wheel__frame {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(300px, 78vw);
  aspect-ratio: 1;
}

.ctw-home-wheel__pointer {
  position: absolute;
  top: -6px;
  left: 50%;
  z-index: 4;
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-top: 26px solid var(--ctw-dark);
  transform: translateX(-50%);
  filter: drop-shadow(0 3px 4px rgba(0, 0, 0, 0.2));
}

.ctw-home-wheel__disc {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: conic-gradient(var(--ctw-crimson) 0 45deg, var(--ctw-indigo) 45deg 90deg, var(--ctw-teal) 90deg 135deg, var(--ctw-amber) 135deg 180deg, var(--ctw-crimson) 180deg 225deg, var(--ctw-indigo) 225deg 270deg, var(--ctw-teal) 270deg 315deg, var(--ctw-amber) 315deg 360deg);
  box-shadow: 0 24px 60px rgba(29, 35, 38, 0.25), inset 0 0 0 12px #fff, inset 0 0 0 13px var(--ctw-line);
  transition: transform 3.6s cubic-bezier(0.15, 0.62, 0.3, 1);
}

.ctw-home-wheel__label {
  display: none;
}

.ctw-home-wheel__hub {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 6px 16px rgba(29, 35, 38, 0.22);
}

.ctw-home-wheel__hub i {
  width: 30px;
  height: 34px;
  background: var(--ctw-crimson);
  clip-path: polygon(50% 0, 100% 25%, 100% 75%, 50% 100%, 0 75%, 0 25%);
}

.ctw-home-play {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  width: 100%;
  max-width: 380px;
}

.ctw-home-play__title {
  margin: 0 0 4px !important;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -0.02em;
  text-align: center;
}

.ctw-home-quizdemo {
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 100%;
}

.ctw-home-quizdemo__question {
  padding: 22px;
  border: 1px solid var(--ctw-line);
  border-radius: 20px;
  background: #fff;
  box-shadow: var(--ctw-shadow-card);
  animation: ctw-home-pop 0.4s ease both;
}

.ctw-home-quizdemo__step {
  margin: 0 0 6px !important;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}

.ctw-home-quizdemo__text {
  margin: 0 0 16px !important;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.35;
}

.ctw-home-quizdemo__answers {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.ctw-home-quizdemo__answers button {
  padding: 13px 16px;
  border: 1.5px solid var(--ctw-line);
  border-radius: 12px;
  background: #fff;
  font-size: 15px;
  font-weight: 600;
  text-align: left;
  color: var(--ctw-dark);
  transition: border-color var(--ctw-fast) ease, background-color var(--ctw-fast) ease;
}
.ctw-home-quizdemo__answers button:hover {
  border-color: var(--ctw-crimson);
  background: var(--ctw-crimson-50);
}

.ctw-home-photodemo {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  width: 100%;
}

.ctw-home-photodemo__drop {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(260px, 70vw);
  aspect-ratio: 1;
  border: 2px dashed var(--ctw-steel-300);
  border-radius: 22px;
  background: #fff;
}

.ctw-home-photodemo__empty .ctw-icon {
  width: 56px;
  height: 56px;
  color: var(--ctw-steel-300);
}

.ctw-home-photodemo__polaroid {
  position: absolute;
  inset: 14px;
  display: none;
  flex-direction: column;
  margin: 0;
  padding: 10px 10px 0;
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(29, 35, 38, 0.22);
  transform: rotate(-3deg);
  animation: ctw-home-pop 0.5s ease both;
}
.ctw-home-photodemo__polaroid span {
  flex: 1;
  border-radius: 3px;
  background: radial-gradient(circle at 50% 72%, #FFD27A 0 13%, transparent 14%), linear-gradient(180deg, #F5A65B 0%, #E5636B 46%, #6B5BA8 47%, #2E4C8F 100%);
}
.ctw-home-photodemo__polaroid figcaption {
  padding: 9px 0 11px;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-align: center;
  color: var(--ctw-dark);
}
.is-uploaded .ctw-home-photodemo__polaroid {
  display: flex;
}

.ctw-home-photodemo.is-uploaded .ctw-home-photodemo__empty {
  visibility: hidden;
}

.ctw-home-play__form {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  padding: 22px;
  border: 1px solid var(--ctw-line);
  border-radius: 20px;
  background: #fff;
  box-shadow: var(--ctw-shadow-card);
  animation: ctw-home-pop 0.4s ease both;
}

.ctw-home-play__register {
  margin: 0 0 4px !important;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
}

.ctw-home-play__field {
  display: flex;
  flex-direction: column;
  gap: 5px;
  font-size: 13px;
  font-weight: 600;
}
.ctw-home-play__field input {
  padding: 11px 13px;
  border: 1px solid var(--ctw-line);
  border-radius: 10px;
  font: inherit;
  font-size: 15px;
  font-weight: 400;
}
.ctw-home-play__field input:focus {
  border-color: var(--ctw-crimson);
  outline: none;
}

.ctw-home-play__consent {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--ctw-text-body);
}
.ctw-home-play__consent input {
  margin-top: 2px;
  accent-color: var(--ctw-crimson);
}

.ctw-home-lead {
  width: 100%;
  padding: 22px;
  border-radius: 20px;
  background: var(--ctw-dark);
  color: #fff;
  box-shadow: 0 24px 50px rgba(29, 35, 38, 0.28);
  animation: ctw-home-pop 0.45s ease both;
}

.ctw-home-lead__title {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 14px !important;
  font-size: 17px;
  font-weight: 800;
}
.ctw-home-lead__title .ctw-icon {
  width: 24px;
  height: 24px;
  color: var(--ctw-teal);
}

.ctw-home-lead__data {
  display: flex;
  flex-direction: column;
  margin: 0 0 16px;
}
.ctw-home-lead__data div {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 9px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 13.5px;
}
.ctw-home-lead__data dt {
  color: var(--ctw-text-on-dark);
}
.ctw-home-lead__data dd {
  margin: 0;
  font-weight: 600;
  text-align: right;
  overflow-wrap: anywhere;
}

.ctw-home-lead__ok {
  color: var(--ctw-teal);
}

.ctw-home-lead__crm {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 8px;
  margin: 0 0 14px !important;
  padding: 11px 13px;
  border-radius: 12px;
  background: rgba(46, 196, 182, 0.12);
  font-size: 13px;
}
.ctw-home-lead__crm .ctw-icon {
  width: 16px;
  height: 16px;
  color: var(--ctw-teal);
}
.ctw-home-lead__crm span {
  color: var(--ctw-text-on-dark);
}

.ctw-home-play__again {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0;
  border: 0;
  background: none;
  font-size: 13px;
  font-weight: 600;
  color: #fff;
  opacity: 0.8;
}
.ctw-home-play__again .ctw-icon {
  width: 15px;
  height: 15px;
}
.ctw-home-play__again:hover {
  opacity: 1;
}

.ctw-home-play__real {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--ctw-crimson);
  text-decoration: none;
}
.ctw-home-play__real .ctw-icon {
  width: 15px;
  height: 15px;
}

.ctw-home-flow {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
}
.ctw-home-flow li {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 14px 16px;
  border: 1px solid transparent;
  border-radius: 14px;
  color: var(--ctw-steel);
  transition: background-color var(--ctw-base) ease, border-color var(--ctw-base) ease, color var(--ctw-base) ease;
}
.ctw-home-flow li strong {
  display: block;
  margin-bottom: 2px;
  font-size: 16px;
  color: var(--ctw-dark);
}
.ctw-home-flow li > span:last-child {
  font-size: 14px;
  line-height: 1.45;
}
.ctw-home-flow li.is-active {
  border-color: var(--ctw-line);
  background: #fff;
  box-shadow: 0 10px 26px rgba(29, 35, 38, 0.07);
  color: var(--ctw-text-body);
}
.ctw-home-flow li.is-active .ctw-home-flow__num {
  background: var(--ctw-crimson);
  color: #fff;
}

.ctw-home-flow__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--ctw-line-soft);
  font-family: var(--ctw-font-mono);
  font-size: 13px;
  font-weight: 700;
  color: var(--ctw-steel);
  transition: background-color var(--ctw-base) ease, color var(--ctw-base) ease;
}

.ctw-home-checks {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
}
.ctw-home-checks li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 15px;
  line-height: 1.45;
}
.ctw-home-checks i {
  margin-top: 1px;
  font-style: normal;
  font-weight: 800;
  color: var(--ctw-teal);
}

.ctw-home-way {
  display: flex;
  flex-direction: column;
  min-height: 280px;
  padding: 28px;
  border: 1px solid;
  border-radius: 18px;
  border-color: rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.07);
  color: #fff !important;
  text-decoration: none;
  transition: border-color var(--ctw-base) ease, transform var(--ctw-base) var(--ctw-ease);
}
@media (max-width: 760px) {
  .ctw-home-way {
    min-height: 0;
  }
}
.ctw-home-way:hover {
  border-color: #4A555B;
  transform: translateY(-3px);
}
.ctw-home-way h3 {
  margin: 0 0 10px !important;
  font-size: 23px;
  font-weight: 700;
  letter-spacing: -0.02em;
}
.ctw-home-way p {
  margin: 0 0 16px !important;
  font-size: 14.5px;
  line-height: 1.5;
  color: var(--ctw-text-on-dark);
}

.ctw-home-way__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  margin-bottom: auto;
  border-radius: 12px;
  background: var(--ctw-crimson);
}
.ctw-home-way__icon .ctw-icon {
  width: 22px;
  height: 22px;
}
.ctw-home-way--indigo .ctw-home-way__icon {
  background: #fff;
  color: var(--ctw-indigo);
}
.ctw-home-way--teal .ctw-home-way__icon {
  background: var(--ctw-teal);
}

.ctw-home-way__num {
  margin: 24px 0 8px;
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  letter-spacing: 0.08em;
  color: var(--ctw-steel);
}

.ctw-home-way__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-home-way__chips li {
  padding: 5px 11px;
  border: 1px solid #3A4347;
  border-radius: var(--ctw-radius-pill);
  font-size: 12px;
  font-weight: 600;
  color: #DFE3E5;
}

.ctw-home-ai-badge {
  margin-bottom: 20px;
  border-color: #DBE1F7;
  background: #EEF1FB;
  color: var(--ctw-indigo);
  font-size: 11px;
  text-transform: uppercase;
}
.ctw-home-ai-badge .ctw-icon {
  width: 13px;
  height: 13px;
}

.ctw-home-builder {
  overflow: hidden;
  border: 1px solid var(--ctw-dark);
  border-radius: var(--ctw-radius-lg);
  background: #15181A;
  color: #DFE3E5;
  box-shadow: 0 40px 90px rgba(29, 35, 38, 0.28);
}

.ctw-home-builder__bar {
  border-bottom-color: rgba(255, 255, 255, 0.08);
  padding: 15px 20px;
}
.ctw-home-builder__bar em {
  margin-left: 12px;
  color: #7D878C;
}
.ctw-home-builder__bar ul {
  display: flex;
  gap: 6px;
  margin: 0 0 0 auto;
  padding: 0;
  list-style: none;
}
.ctw-home-builder__bar li {
  padding: 5px 11px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.06);
  font-size: 11px;
  font-weight: 600;
  color: #AAB3B7;
}
@media (max-width: 760px) {
  .ctw-home-builder__bar ul {
    display: none;
  }
}

.ctw-home-builder__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}
@media (max-width: 1023px) {
  .ctw-home-builder__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.ctw-home-builder__chat {
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-height: 460px;
  padding: 24px;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.015);
}
@media (max-width: 1023px) {
  .ctw-home-builder__chat {
    min-height: 0;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }
}

.ctw-home-msg {
  max-width: 92%;
  margin: 0 !important;
  padding: 12px 14px;
  font-size: 13.5px;
  line-height: 1.5;
}
.ctw-home-msg--user {
  align-self: flex-end;
  max-width: 88%;
  border-radius: 14px 14px 4px 14px;
  background: var(--ctw-crimson);
  color: #fff;
}
.ctw-home-msg--ai {
  border-radius: 14px 14px 14px 4px;
  background: rgba(255, 255, 255, 0.07);
}

.ctw-home-builder__images {
  max-width: 92%;
}
.ctw-home-builder__images p {
  margin: 0 0 8px !important;
  font-family: var(--ctw-font-mono);
  font-size: 10.5px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #7D878C;
}
.ctw-home-builder__images div {
  display: flex;
  gap: 8px;
}
.ctw-home-builder__images i {
  flex: 1;
  height: 54px;
  border-radius: 9px;
  background: linear-gradient(110deg, #252C30, #39434A, #252C30);
  background-size: 200% 100%;
  animation: ctw-home-shimmer 1.6s linear infinite alternate;
}
.ctw-home-builder__images i:nth-child(2) {
  animation-delay: 0.3s;
}
.ctw-home-builder__images i:nth-child(3) {
  animation-delay: 0.6s;
}

.ctw-home-builder__input {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: auto 0 0 !important;
  padding: 11px 13px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 11px;
  font-size: 13px;
  color: #7D878C;
}
.ctw-home-builder__input span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  margin-left: auto;
  border-radius: 7px;
  background: var(--ctw-crimson);
  color: #fff;
}

.ctw-home-builder__preview {
  display: flex;
  flex-direction: column;
  padding: 28px;
  background: radial-gradient(120% 120% at 50% 0%, rgba(68, 92, 173, 0.14), transparent);
}
@media (max-width: 480px) {
  .ctw-home-builder__preview {
    padding: 20px 16px;
  }
}

.ctw-home-builder__preview-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
  font-family: var(--ctw-font-mono);
  font-size: 10.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #7D878C;
}

.ctw-home-builder__status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 5px 10px;
  border: 1px solid rgba(46, 196, 182, 0.3);
  border-radius: var(--ctw-radius-pill);
  background: rgba(46, 196, 182, 0.12);
  font-family: var(--ctw-font);
  font-size: 11px;
  letter-spacing: 0;
  text-transform: none;
  color: var(--ctw-teal);
}
.ctw-home-builder__status i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}

.ctw-home-quiz {
  width: 100%;
  max-width: 440px;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 18px;
  background: #fff;
  color: var(--ctw-dark);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3);
}

.ctw-home-quiz__cover {
  position: relative;
  display: flex;
  align-items: flex-end;
  height: 118px;
  padding: 14px;
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-indigo));
  color: #fff;
  font-size: 13px;
}

.ctw-home-quiz__ai {
  position: absolute;
  top: 12px;
  right: 12px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border-radius: 6px;
  background: rgba(0, 0, 0, 0.2);
  font-family: var(--ctw-font-mono);
  font-size: 10px;
}
.ctw-home-quiz__ai .ctw-icon {
  width: 11px;
  height: 11px;
}

.ctw-home-quiz__body {
  padding: 22px;
}
.ctw-home-quiz__body ul {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-home-quiz__body li {
  padding: 13px 15px;
  border: 1.5px solid #ECEEF0;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.2;
  color: #4A565B;
}
.ctw-home-quiz__body li.is-selected {
  display: flex;
  justify-content: space-between;
  border-color: var(--ctw-crimson);
  background: var(--ctw-crimson-50);
  font-weight: 600;
  color: var(--ctw-dark);
}
.ctw-home-quiz__body li.is-selected::after {
  content: "●";
  color: var(--ctw-crimson);
}

.ctw-home-quiz__step {
  margin: 0 0 8px !important;
  font-family: var(--ctw-font-mono);
  font-size: 10.5px;
  text-transform: uppercase;
  color: var(--ctw-indigo);
}

.ctw-home-quiz__question {
  margin: 0 0 16px !important;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.2;
}

.ctw-home-quiz__progress {
  height: 8px;
  margin-top: 16px;
  overflow: hidden;
  border-radius: var(--ctw-radius-pill);
  background: #ECEEF0;
}
.ctw-home-quiz__progress i {
  display: block;
  width: 60%;
  height: 100%;
  background: linear-gradient(90deg, var(--ctw-crimson), var(--ctw-indigo));
}

.ctw-home-ai-features {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 14px;
  margin-top: 24px;
}
.ctw-home-ai-features .ctw-card {
  gap: 0;
  padding: 20px;
  border-radius: 16px;
}
.ctw-home-ai-features h3 {
  margin: 0 0 5px;
  font-size: 15px;
  line-height: 1.3;
}
.ctw-home-ai-features p {
  font-size: 13px;
  line-height: 1.45;
}

.ctw-home-ai-features__icon {
  width: 36px;
  height: 36px;
  margin-bottom: 12px;
  border-radius: 10px;
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-indigo));
  color: #fff;
}
.ctw-home-ai-features__icon .ctw-icon {
  width: 18px;
  height: 18px;
}

.ctw-home-formats .ctw-section-head {
  margin-bottom: 44px;
}
.ctw-home-formats .ctw-h2 {
  max-width: 680px;
  margin: 0 auto 14px;
}
.ctw-home-formats .ctw-lead {
  max-width: 560px;
  font-size: 17px;
  line-height: 1.25;
}

.ctw-home-formats__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 14px;
}

.ctw-home-format {
  gap: 0;
  padding: 20px;
  border-radius: 14px;
}
.ctw-home-format > .ctw-icon {
  width: 30px;
  height: 30px;
  margin-bottom: 14px;
  color: var(--ctw-crimson);
}
.ctw-home-format h3 {
  margin: 0 0 5px;
  font-size: 15.5px;
}
.ctw-home-format p {
  font-size: 12.5px;
  line-height: 1.45;
}
.ctw-home-format:hover {
  box-shadow: 0 16px 34px rgba(29, 35, 38, 0.1);
  transform: translateY(-4px);
}

.ctw-home-formats__cta {
  margin: 36px 0 0 !important;
}

.ctw-home-outline-btn {
  display: inline-block;
  padding: 13px 24px;
  border: 1.5px solid var(--ctw-crimson);
  border-radius: 11px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--ctw-crimson);
  text-decoration: none;
  transition: background-color var(--ctw-fast) ease;
}
.ctw-home-outline-btn:hover {
  background: var(--ctw-crimson-50);
}

.ctw-home-how .ctw-section-head {
  margin-bottom: 48px;
}
.ctw-home-how .ctw-kicker {
  margin-bottom: 14px;
  font-size: 11px;
  letter-spacing: 0.1em;
  color: var(--ctw-steel);
}
.ctw-home-how .ctw-h2 {
  max-width: 620px;
  margin: 0;
}

.ctw-home-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 0 56px;
  margin: 0;
  padding: 0;
  border-top: 2px solid var(--ctw-dark);
  list-style: none;
}
.ctw-home-steps li {
  padding: 36px 0 12px;
}
.ctw-home-steps h3 {
  margin: 0 0 10px !important;
  font-size: 21px;
  font-weight: 700;
  letter-spacing: -0.02em;
}
.ctw-home-steps p {
  margin: 0 !important;
  font-size: 14.5px;
  line-height: 1.5;
  color: #4A565B;
}

.ctw-home-steps__num {
  display: block;
  margin-bottom: 18px;
  font-size: 54px;
  font-weight: 800;
  letter-spacing: -0.04em;
  line-height: 1.2;
  color: var(--ctw-crimson);
}

.ctw-home-quotes .ctw-h2 {
  margin-bottom: 44px;
  font-size: clamp(28px, 4.5vw, 40px);
}
.ctw-home-quotes .ctw-grid--3 {
  gap: 20px;
}

.ctw-home-quote {
  gap: 0;
  margin: 0;
  padding: 30px;
  border-color: #333B40;
  border-radius: 18px;
  background: #252C30;
}
.ctw-home-quote blockquote {
  flex: 1;
  margin: 0 0 22px;
  font-size: 16.5px;
  line-height: 1.5;
  color: #EEF1F2;
}
.ctw-home-quote figcaption {
  display: flex;
  flex-direction: column;
  font-size: 14px;
  line-height: 1.25;
}
.ctw-home-quote figcaption span {
  font-size: 13px;
  color: var(--ctw-text-on-dark);
}

.ctw-home-quote__mark {
  margin-bottom: 14px;
  font-size: 38px;
  font-weight: 800;
  line-height: 1;
  color: var(--ctw-crimson);
}

.ctw-home-final {
  padding: clamp(64px, 8vw, 100px) 0;
}
.ctw-home-final h2 {
  max-width: 780px;
  margin: 0 auto 18px !important;
  font-size: clamp(34px, 7vw, 58px);
  line-height: 1;
  letter-spacing: -0.035em;
}
.ctw-home-final .ctw-lead {
  max-width: 480px;
  margin: 0 auto 32px;
  font-size: 18px;
  line-height: 1.25;
}

.ctw-home-final__actions {
  justify-content: center;
  gap: 14px;
}
.ctw-home-final__actions .ctw-btn {
  min-height: 0;
  padding: 17px 30px;
}
.ctw-home-final__actions .ctw-btn--primary {
  box-shadow: 0 14px 30px rgba(219, 7, 60, 0.3);
}
.ctw-home-final__actions .ctw-btn--secondary {
  padding: 17px 26px;
  border-width: 1.5px;
  background: transparent;
  font-weight: 600;
}

.ctw-home-ways {
  padding: clamp(56px, 7vw, 88px) 0;
}
.ctw-home-ways .ctw-home-split-head > h2 {
  max-width: 620px;
}
.ctw-home-ways .ctw-home-split-head > .ctw-lead {
  max-width: 340px;
  line-height: 1.25;
}

.ctw-home-ways .ctw-h2,
.ctw-home-ai .ctw-h2,
.ctw-home-formats .ctw-h2,
.ctw-home-how .ctw-h2 {
  font-size: clamp(30px, 5vw, 46px);
  line-height: 1.03;
}

.ctw-home-ai {
  padding: clamp(56px, 7vw, 96px) 0;
}
.ctw-home-ai .ctw-home-split-head {
  margin-bottom: 40px;
}
.ctw-home-ai .ctw-home-split-head .ctw-lead {
  font-size: 18px;
  line-height: 1.55;
  text-wrap: pretty;
}
.ctw-home-ai .ctw-btn--dark {
  min-height: 0;
  padding: 14px 22px;
  border-radius: 11px;
}

.ctw-home-formats {
  padding: clamp(56px, 7vw, 88px) 0;
}

.ctw-home-how {
  padding: clamp(56px, 7vw, 96px) 0;
}

.ctw-home-quotes {
  padding: clamp(56px, 7vw, 88px) 0;
}

@keyframes ctw-home-float {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-12px);
  }
}
@keyframes ctw-home-pulse {
  0%, 100% {
    opacity: 0.45;
  }
  50% {
    opacity: 1;
  }
}
@keyframes ctw-home-blink {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}
@keyframes ctw-home-scan {
  0% {
    top: 6px;
  }
  50% {
    top: 100px;
  }
  100% {
    top: 6px;
  }
}
@keyframes ctw-home-shimmer {
  from {
    background-position: 0% 50%;
  }
  to {
    background-position: 100% 50%;
  }
}
@keyframes ctw-home-pop {
  0% {
    transform: scale(0.5);
    opacity: 0;
  }
  55% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
.ctw-home-platform__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 36px 32px;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 1023px) {
  .ctw-home-platform__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 480px) {
  .ctw-home-platform__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
}

.ctw-home-platform__item {
  padding-top: 20px;
  border-top: 1px solid var(--ctw-line);
}
.ctw-home-platform__item > .ctw-icon {
  width: 28px;
  height: 28px;
  margin-bottom: 12px;
  color: var(--ctw-crimson);
}
.ctw-home-platform__item h3 {
  margin: 0 0 6px;
  font-size: 16px;
  letter-spacing: -0.01em;
}
.ctw-home-platform__item p {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: var(--ctw-text-body);
}

.ctw-cases-hero {
  padding: clamp(48px, 7vw, 74px) 0 44px;
}
.ctw-cases-hero h1 {
  max-width: 800px;
  margin: 0 auto 20px;
  font-size: clamp(36px, 6vw, 56px);
  line-height: 1.04;
  letter-spacing: -0.035em;
}
.ctw-cases-hero .ctw-kicker {
  margin-bottom: 20px;
  letter-spacing: 0.04em;
}
.ctw-cases-hero .ctw-lead {
  max-width: 620px;
  margin: 0 auto 26px;
  font-size: 18px;
  line-height: 1.55;
  text-wrap: pretty;
}

.ctw-cases-jump {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 9px;
}

.ctw-cases-jump__chip {
  padding: 9px 16px;
  border: 1px solid var(--ctw-line);
  border-radius: var(--ctw-radius-pill);
  background: #fff;
  font-size: 13px;
  font-weight: 600;
  color: var(--ctw-dark);
  text-decoration: none;
  transition: border-color var(--ctw-fast) ease;
}
.ctw-cases-jump__chip:hover {
  border-color: var(--ctw-dark);
}

.ctw-cases-stats {
  padding-bottom: 40px;
}
.ctw-cases-stats ul {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 480px) {
  .ctw-cases-stats ul {
    grid-template-columns: minmax(0, 1fr);
  }
}
.ctw-cases-stats li {
  padding: 24px;
  border-radius: var(--ctw-radius-card);
  background: var(--ctw-surface-alt);
  text-align: center;
}
.ctw-cases-stats strong {
  display: block;
  font-size: 30px;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.2;
  color: var(--ctw-crimson);
}
.ctw-cases-stats span {
  display: block;
  margin-top: 5px;
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ctw-steel);
}

.ctw-cases-group {
  --ctw-cases-tone: var(--ctw-crimson);
  padding: 44px 0;
}
.ctw-cases-group--indigo {
  --ctw-cases-tone: var(--ctw-indigo);
}
.ctw-cases-group--teal {
  --ctw-cases-tone: var(--ctw-teal);
}

.ctw-cases-group__head {
  max-width: 680px;
  margin-bottom: 30px;
}
.ctw-cases-group__head h2 {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 12px;
  font-size: clamp(24px, 3.5vw, 34px);
}
.ctw-cases-group__head h2::before {
  content: "";
  flex: none;
  width: 40px;
  height: 6px;
  border-radius: var(--ctw-radius-pill);
  background: var(--ctw-cases-tone);
}
.ctw-cases-group__head .ctw-lead {
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
}

.ctw-cases-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(340px, 100%), 1fr));
  gap: 16px;
}

.ctw-cases-card {
  display: flex;
  flex-direction: column;
  padding: 28px;
  border: 1px solid var(--ctw-line);
  border-radius: 18px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: border-color var(--ctw-base) ease, box-shadow var(--ctw-base) ease;
}
.ctw-cases-card blockquote {
  margin: 0 0 16px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  color: var(--ctw-dark);
}

a.ctw-cases-card:hover {
  border-color: transparent;
  box-shadow: var(--ctw-shadow-card);
}

.ctw-cases-card__mark {
  margin-bottom: 12px;
  font-size: 30px;
  font-weight: 800;
  line-height: 1;
  color: var(--ctw-cases-tone);
}

.ctw-cases-card__action {
  flex: 1;
  margin: 0 0 18px;
  font-size: 13.5px;
  line-height: 1.55;
  color: var(--ctw-steel);
}

.ctw-cases-card__footer {
  padding-top: 14px;
  border-top: 1px solid #ECEEF0;
}
.ctw-cases-card__footer strong {
  display: block;
  font-size: 14px;
}
.ctw-cases-card__footer span {
  display: block;
  font-size: 12.5px;
  color: var(--ctw-steel);
}

.ctw-cases-trust {
  padding: 64px 0;
  background: var(--ctw-surface-alt);
  text-align: center;
}
.ctw-cases-trust .ctw-cases-trust__title {
  margin-bottom: 28px !important;
}

.ctw-cases-trust__title {
  margin: 0 0 26px !important;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-align: center;
  text-transform: uppercase;
  color: var(--ctw-steel);
}

.ctw-cases-final__lead {
  margin: 0 auto 30px;
  max-width: 480px;
}

.ctw-cases-final__actions {
  justify-content: center;
}
@media (max-width: 480px) {
  .ctw-cases-final__actions {
    flex-direction: column;
    align-items: stretch;
  }
}

.ctw-prices-wide {
  max-width: calc(1200px + var(--ctw-gutter) * 2);
}

.ctw-prices-h2 {
  margin: 0 0 36px;
  font-size: clamp(28px, 4.5vw, 40px);
  line-height: 1.04;
  letter-spacing: -0.03em;
  text-align: center;
}

.ctw-prices-hero {
  padding: 72px 0 28px;
}
.ctw-prices-hero .ctw-container {
  max-width: calc(920px + var(--ctw-gutter) * 2);
}

.ctw-prices-hero__title {
  max-width: 720px;
  margin: 0 auto 18px;
  font-size: clamp(38px, 6vw, 58px);
  line-height: 1.02;
  letter-spacing: -0.035em;
}

.ctw-prices-hero__intro {
  max-width: 620px;
  margin: 0 auto 30px;
  font-size: 18px;
  line-height: 1.55;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}

.ctw-prices-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.ctw-prices-toggle,
.ctw-prices-currency {
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 6px;
  border: 1px solid var(--ctw-line);
  border-radius: var(--ctw-radius-pill);
  background: var(--ctw-surface-alt);
}

.ctw-prices-toggle {
  gap: 12px;
}
.ctw-prices-toggle label {
  position: relative;
  cursor: pointer;
}
.ctw-prices-toggle input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.ctw-prices-toggle span {
  display: inline-flex;
  padding: 10px 22px;
  border-radius: var(--ctw-radius-pill);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--ctw-steel);
  transition: background-color var(--ctw-fast) ease, color var(--ctw-fast) ease, box-shadow var(--ctw-fast) ease;
}
.ctw-prices-toggle input:checked + span {
  background: var(--ctw-crimson);
  color: #fff;
  box-shadow: var(--ctw-shadow-cta-sm);
}
.ctw-prices-toggle input:focus-visible + span {
  outline: 2px solid var(--ctw-crimson);
  outline-offset: 2px;
}

.ctw-prices-currency {
  gap: 4px;
}
.ctw-prices-currency a {
  padding: 10px 18px;
  border-radius: var(--ctw-radius-pill);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--ctw-steel);
  text-decoration: none;
  transition: background-color var(--ctw-fast) ease, color var(--ctw-fast) ease;
}
.ctw-prices-currency a:hover {
  color: var(--ctw-dark);
}
.ctw-prices-currency a.is-active {
  background: var(--ctw-indigo);
  color: #fff;
}

.ctw-prices-saving {
  margin: 12px 0 0;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  color: var(--ctw-teal);
}

.ctw-prices-plans {
  padding: 30px 0 20px;
}

.ctw-prices-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 18px;
  align-items: start;
}

.ctw-prices-card {
  --ctw-plan: var(--ctw-steel);
  overflow: hidden;
  border: 1px solid var(--ctw-line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 2px 10px rgba(29, 35, 38, 0.05);
}
.ctw-prices-card--gold {
  --ctw-plan: var(--ctw-amber);
}
.ctw-prices-card--diamond {
  --ctw-plan: var(--ctw-indigo);
}
.ctw-prices-card--enterprise {
  --ctw-plan: var(--ctw-dark);
}
.ctw-prices-card.is-popular {
  border: 2px solid var(--ctw-crimson);
  box-shadow: 0 20px 50px rgba(219, 7, 60, 0.16);
}

.ctw-prices-card__head {
  position: relative;
  padding: 20px 24px;
  background: var(--ctw-plan);
  color: #fff;
}
.ctw-prices-card__head h2 {
  margin: 0;
  font-size: 22px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0.02em;
}

.ctw-prices-card__popular {
  position: absolute;
  top: 16px;
  right: 16px;
  padding: 4px 9px;
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: var(--ctw-radius-pill);
  background: rgba(255, 255, 255, 0.2);
  font-family: var(--ctw-font-mono);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.3;
  text-transform: uppercase;
}

.ctw-prices-card__body {
  padding: 24px;
}

.ctw-prices-card__summary {
  min-height: 40px;
  margin: 0 0 4px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
}

.ctw-prices-card__desc {
  min-height: 34px;
  margin: 0 0 18px;
  font-size: 13px;
  line-height: 1.3;
  color: var(--ctw-steel);
}

.ctw-prices-card__price {
  display: flex;
  align-items: baseline;
  gap: 4px;
  margin-bottom: 4px;
}

.ctw-prices-card__amount {
  font-size: 40px;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.03em;
}

.ctw-prices-card__suffix {
  font-size: 14px;
  font-weight: 600;
  color: var(--ctw-steel);
}

.ctw-prices-card__note {
  margin: 0 0 20px;
  font-size: 11px;
  color: var(--ctw-steel-300);
}

.ctw-prices-trial-form {
  margin: 0;
}

.ctw-prices-cta {
  min-height: 0;
  padding: 13px;
  border-radius: 11px;
  font-size: 15px;
  font-weight: 700;
}
.ctw-prices-cta--outline {
  border: 1.5px solid var(--ctw-dark);
  background: #fff;
  color: var(--ctw-dark);
}
.ctw-prices-cta--outline:hover {
  background: var(--ctw-surface-alt);
}
.ctw-prices-cta--primary {
  background: var(--ctw-crimson);
  color: #fff;
  box-shadow: 0 10px 24px rgba(219, 7, 60, 0.3);
}
.ctw-prices-cta--primary:hover {
  background: var(--ctw-crimson-600);
}
.ctw-prices-cta--dark {
  background: var(--ctw-dark);
  color: #fff;
}
.ctw-prices-cta--dark:hover {
  background: #000;
  color: #fff;
}
.ctw-prices-cta--sm {
  padding: 10px 12px;
  font-size: 13.5px;
  white-space: normal;
}

.ctw-prices-card__features {
  display: flex;
  flex-direction: column;
  gap: 11px;
  margin: 20px 0 0;
  padding: 0;
  list-style: none;
}
.ctw-prices-card__features li {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  font-size: 13px;
  line-height: 1.4;
  color: var(--ctw-dark);
}
.ctw-prices-card__features strong {
  font-weight: 400;
}
.ctw-prices-card__features a {
  color: inherit;
  text-decoration-color: var(--ctw-line);
  text-underline-offset: 3px;
}
.ctw-prices-card__features a:hover {
  color: var(--ctw-crimson);
}
.ctw-prices-card__features small {
  font-size: 12px;
  color: var(--ctw-steel);
}
.ctw-prices-card__features small::before {
  content: " ";
}

.ctw-prices-card__check {
  flex: none;
  margin-top: 1px;
  font-weight: 800;
  color: var(--ctw-teal);
}

.ctw-prices-notes {
  margin: 18px 0 0;
  font-size: 12px;
  color: var(--ctw-steel-300);
  text-align: center;
}

.ctw-prices-analytics {
  margin-top: 30px;
}

.ctw-prices-analytics__box {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 36px;
  align-items: center;
  padding: 40px;
  border-radius: 22px;
  background: var(--ctw-dark);
  color: #fff;
}
@media (max-width: 760px) {
  .ctw-prices-analytics__box {
    grid-template-columns: minmax(0, 1fr);
    padding: 32px 24px;
  }
}

.ctw-prices-analytics__kicker {
  margin: 0 0 14px;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #A4B0F5;
}

.ctw-prices-analytics__title {
  margin: 0 0 12px;
  font-size: clamp(24px, 3.2vw, 32px);
  line-height: 1.1;
  letter-spacing: -0.02em;
}

.ctw-prices-analytics__body {
  margin: 0;
  font-size: 15.5px;
  line-height: 1.55;
  color: var(--ctw-text-on-dark);
}

.ctw-prices-tiers {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ctw-prices-tiers__item {
  padding: 18px;
  border: 1px solid #333B40;
  border-radius: 14px;
  background: #252C30;
}
.ctw-prices-tiers__item strong {
  display: block;
  margin-bottom: 4px;
  font-size: 13px;
  font-weight: 800;
  color: #fff;
}
.ctw-prices-tiers__item span {
  display: block;
  font-size: 12.5px;
  line-height: 1.4;
  color: var(--ctw-text-on-dark);
}

.ctw-prices-compare {
  padding: 84px 0 0;
}

.ctw-prices-compare__head {
  margin-bottom: 36px;
  text-align: center;
}
.ctw-prices-compare__head .ctw-prices-h2 {
  margin-bottom: 12px;
}
.ctw-prices-compare__head p {
  margin: 0;
  font-size: 16px;
  color: var(--ctw-text-body);
}

.ctw-prices-table-wrap {
  overflow: hidden;
  border: 1px solid var(--ctw-line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 2px 10px rgba(29, 35, 38, 0.05);
}

.ctw-prices-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 13px;
  line-height: 1.4;
  color: var(--ctw-dark);
}
.ctw-prices-table th,
.ctw-prices-table td {
  padding: 12px 16px;
  border-bottom: 1px solid var(--ctw-line-soft);
  text-align: center;
  vertical-align: middle;
}
.ctw-prices-table th[scope=row],
.ctw-prices-table thead th:first-child {
  width: 34%;
  font-weight: 500;
  text-align: left;
}
.ctw-prices-table th[scope=row] a {
  color: inherit;
  text-decoration-color: var(--ctw-line);
  text-underline-offset: 3px;
}
.ctw-prices-table th[scope=row] a:hover {
  color: var(--ctw-crimson);
}
.ctw-prices-table thead th {
  padding-top: 18px;
  padding-bottom: 18px;
  border-bottom-color: var(--ctw-line);
}
.ctw-prices-table thead th:first-child {
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ctw-steel);
}
.ctw-prices-table tbody tr:not(.ctw-prices-table__group):hover > * {
  background: var(--ctw-surface-hover);
}
.ctw-prices-table tfoot td,
.ctw-prices-table tfoot th {
  padding-top: 20px;
  padding-bottom: 22px;
  border-bottom: 0;
  vertical-align: bottom;
}
.ctw-prices-table tfoot td {
  padding-left: 12px;
  padding-right: 12px;
}
@media (max-width: 760px) {
  .ctw-prices-table {
    font-size: 12px;
  }
  .ctw-prices-table th,
  .ctw-prices-table td {
    padding: 10px 2px;
  }
  .ctw-prices-table th[scope=row],
  .ctw-prices-table thead th:first-child {
    padding-left: 12px;
    line-height: 1.35;
  }
  .ctw-prices-table td {
    font-size: 10px;
    line-height: 1.25;
    hyphens: auto;
  }
  .ctw-prices-table tfoot {
    display: none;
  }
}

.ctw-prices-table__plan span {
  display: inline-block;
  padding: 6px 12px;
  border-radius: var(--ctw-radius-pill);
  background: var(--ctw-plan);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.02em;
  color: #fff;
}
@media (max-width: 760px) {
  .ctw-prices-table__plan span {
    padding: 4px 5px;
    font-size: 8px;
    letter-spacing: 0;
  }
}

.ctw-prices-table__plan--stone {
  --ctw-plan: var(--ctw-steel);
}
.ctw-prices-table__plan--gold {
  --ctw-plan: var(--ctw-amber);
}
.ctw-prices-table__plan--diamond {
  --ctw-plan: var(--ctw-indigo);
}
.ctw-prices-table__plan--enterprise {
  --ctw-plan: var(--ctw-dark);
}

.ctw-prices-table__group th {
  padding-top: 22px;
  background: var(--ctw-surface-alt);
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-align: left;
  text-transform: uppercase;
  color: var(--ctw-steel);
}
@media (max-width: 760px) {
  .ctw-prices-table__group th {
    padding: 16px 12px 10px;
  }
}

.ctw-prices-table__yes {
  font-size: 15px;
  font-weight: 800;
  color: var(--ctw-teal);
}

.ctw-prices-table__no {
  color: #C9D2D6;
}

.ctw-prices-table__price {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 4px;
  margin-bottom: 12px;
}
.ctw-prices-table__price > span {
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.03em;
}
.ctw-prices-table__price small {
  font-size: 12px;
  font-weight: 600;
  color: var(--ctw-steel);
}

.ctw-prices-faqs {
  padding: 84px 0;
}

.ctw-prices-faqs__inner {
  max-width: calc(760px + var(--ctw-gutter) * 2);
}

.ctw-prices-faq-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.ctw-prices-faq {
  padding: 24px 26px;
  border: 1px solid var(--ctw-line);
  border-radius: 14px;
  background: #fff;
}
.ctw-prices-faq h3 {
  margin: 0 0 8px;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.01em;
}
.ctw-prices-faq p {
  margin: 0 0 8px;
  font-size: 14.5px;
  line-height: 1.55;
  color: var(--ctw-steel);
}
.ctw-prices-faq p:last-child {
  margin-bottom: 0;
}
@media (max-width: 760px) {
  .ctw-prices-faq {
    padding: 22px;
  }
}

.ctw-prices-final {
  padding: 0 0 100px;
}

.ctw-prices-final__title {
  max-width: 680px;
  margin: 0 auto 16px;
  font-size: clamp(34px, 6vw, 52px);
  line-height: 1;
  letter-spacing: -0.035em;
}

.ctw-prices-final__lead {
  max-width: 460px;
  margin: 0 auto 30px;
  font-size: 18px;
  color: var(--ctw-text-body);
}

.ctw-prices-final__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
}
.ctw-prices-final__actions .ctw-btn--secondary {
  padding: 17px 26px;
  border-width: 1.5px;
  font-weight: 600;
}

.ctw-res-hero {
  max-width: calc(900px + var(--ctw-gutter) * 2);
  margin: 0 auto;
  padding: clamp(48px, 7vw, 74px) var(--ctw-gutter) 36px;
  text-align: center;
}

.ctw-res-hero__title {
  max-width: 760px;
  margin: 0 auto 20px;
  font-size: clamp(38px, 6vw, 58px);
  line-height: 1.02;
  letter-spacing: -0.035em;
}

.ctw-res-hero__title .ctw-res-hero__kicker {
  display: block;
  width: fit-content;
  margin: 0 auto 20px;
  line-height: 1.4;
  letter-spacing: 0.04em;
}

.ctw-res-hero__lead {
  max-width: 620px;
  margin: 0 auto;
  font-size: 18px;
  line-height: 1.55;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}

.ctw-res-library {
  padding-top: 10px;
  padding-bottom: clamp(56px, 7vw, 70px);
}

.ctw-res-filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-bottom: 32px;
}
.ctw-res-filters .ctw-sec-filter {
  font-size: 13px;
  cursor: pointer;
}

.ctw-res-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(300px, 100%), 1fr));
  gap: 18px;
}

.ctw-res-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--ctw-line);
  border-radius: 18px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.ctw-res-card[hidden] {
  display: none;
}
.ctw-res-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 34px rgba(29, 35, 38, 0.1);
}

.ctw-res-card__media {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 120px;
  color: var(--ctw-crimson);
}
.ctw-res-card__media .ctw-icon {
  width: 46px;
  height: 46px;
}
.ctw-res-card__media--crimson {
  background: var(--ctw-crimson-50);
}
.ctw-res-card__media--indigo {
  background: #EEF1FB;
}
.ctw-res-card__media--teal {
  background: var(--ctw-teal-50);
}
.ctw-res-card__media--amber {
  background: var(--ctw-amber-50);
}

.ctw-res-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 24px;
}
.ctw-res-card__body h2 {
  margin: 0 0 10px;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1.3;
}

.ctw-res-card__meta {
  margin: 0 0 10px;
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ctw-steel);
}

.ctw-res-card__text {
  flex: 1;
  margin: 0 0 18px;
  font-size: 13.5px;
  line-height: 1.5;
  color: var(--ctw-steel);
}

.ctw-res-card__cta {
  font-size: 14px;
  font-weight: 700;
  color: var(--ctw-crimson);
}
.ctw-res-card__cta small {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  font-weight: 500;
  color: var(--ctw-steel);
}

.ctw-res-help {
  background: var(--ctw-surface-alt);
}

.ctw-res-help__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
  gap: 18px;
  padding-top: clamp(56px, 7vw, 70px);
  padding-bottom: clamp(56px, 7vw, 70px);
}

.ctw-res-help__card {
  display: block;
  padding: 30px;
  border: 1px solid var(--ctw-line);
  border-radius: 18px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: box-shadow var(--ctw-base) ease;
}
.ctw-res-help__card:hover {
  box-shadow: var(--ctw-shadow-card);
}
.ctw-res-help__card h2 {
  margin: 0 0 8px;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.3;
}
.ctw-res-help__card p {
  margin: 0 0 14px;
  font-size: 14px;
  line-height: 1.5;
  color: var(--ctw-steel);
}

.ctw-res-help__card .ctw-res-help__icon {
  display: block;
  width: 28px;
  height: 28px;
  margin-bottom: 14px;
  color: var(--ctw-crimson);
}

.ctw-prod {
  line-height: normal;
}
.ctw-prod .ctw-sec-hero {
  padding: 74px 0 56px;
}
.ctw-prod .ctw-sec-hero__grid {
  grid-template-columns: repeat(auto-fit, minmax(min(360px, 100%), 1fr));
  gap: 56px;
}
.ctw-prod .ctw-sec-hero__title {
  font-size: clamp(38px, 6vw, 60px);
  line-height: 1.02;
  letter-spacing: -0.035em;
}
.ctw-prod .ctw-sec-hero__title .ctw-sec-hero__kicker {
  margin-bottom: 20px;
  line-height: normal;
  letter-spacing: 0.04em;
}
.ctw-prod .ctw-sec-hero__copy .ctw-lead {
  max-width: 520px;
  margin-bottom: 32px;
  font-size: 19px;
  line-height: 1.55;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}
.ctw-prod .ctw-sec-hero__actions,
.ctw-prod .ctw-sec-final__actions {
  gap: 14px;
}
@media (max-width: 480px) {
  .ctw-prod .ctw-sec-hero__actions,
  .ctw-prod .ctw-sec-final__actions {
    flex-direction: row;
    align-items: center;
  }
}
.ctw-prod .ctw-sec-hero__actions .ctw-btn--lg,
.ctw-prod .ctw-sec-final__actions .ctw-btn--lg {
  min-height: 0;
  border-radius: 12px;
  line-height: normal;
}
.ctw-prod .ctw-sec-hero__actions .ctw-btn--primary {
  padding: 16px 26px;
  border: 0;
  box-shadow: 0 12px 28px rgba(219, 7, 60, 0.32);
}
.ctw-prod .ctw-btn--lg.ctw-btn--secondary {
  padding: 16px 22px;
  border: 1.5px solid #D7DDE0;
  background: transparent;
  font-weight: 600;
}

.ctw-prod-section {
  padding: 80px 0;
}
.ctw-prod-section--alt {
  background: var(--ctw-surface-alt);
}
.ctw-prod-section--dark {
  --ctw-text-on-dark: var(--ctw-on-indigo-muted);
  background: var(--ctw-indigo-deep);
  color: #fff;
}

.ctw-prod-kicker {
  margin: 0 0 14px;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  line-height: normal;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}
.ctw-prod-kicker--indigo {
  color: var(--ctw-indigo);
}
.ctw-prod-kicker--lavender {
  color: #A4B0F5;
}

.ctw-prod-head {
  max-width: 640px;
  margin-bottom: 40px;
}
.ctw-prod-head--narrow {
  max-width: 560px;
}
.ctw-prod-head h2 {
  margin: 0 0 12px;
  font-size: clamp(28px, 4.5vw, 40px);
  line-height: 1.04;
  letter-spacing: -0.03em;
}
.ctw-prod-head p:last-child {
  margin: 0;
  font-size: 17px;
  color: var(--ctw-text-body);
}
.ctw-prod-section--dark .ctw-prod-head p:last-child {
  color: var(--ctw-text-on-dark);
}

.ctw-prod-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(248px, 100%), 1fr));
  gap: 16px;
}

.ctw-prod-card {
  padding: 24px;
  border: 1px solid var(--ctw-line);
  border-radius: 16px;
  background: #fff;
}
.ctw-prod-card h3 {
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 700;
  line-height: normal;
  letter-spacing: -0.01em;
}
.ctw-prod-card p {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.5;
  color: var(--ctw-steel);
}

.ctw-prod-card__icon {
  display: block;
  width: 26px;
  height: 26px;
  margin-bottom: 12px;
  color: var(--ctw-crimson);
}

.ctw-prod-split--alt {
  background: var(--ctw-surface-alt);
}

.ctw-prod-split__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(330px, 100%), 1fr));
  gap: 56px;
  align-items: center;
  padding-top: 90px;
  padding-bottom: 90px;
}

.ctw-prod-split__copy h2 {
  margin: 0 0 18px;
  font-size: clamp(28px, 4vw, 40px);
  line-height: 1.05;
  letter-spacing: -0.03em;
}
.ctw-prod-split__copy > p:not(.ctw-prod-kicker) {
  margin: 0 0 24px;
  font-size: 17px;
  line-height: 1.55;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}
.ctw-prod-split__copy .ctw-prod-kicker {
  margin-bottom: 16px;
}
.ctw-prod-split__copy--second {
  order: 2;
}

.ctw-prod-btn {
  display: inline-block;
  padding: 14px 22px;
  border-radius: 11px;
  font-size: 15px;
  font-weight: 700;
  line-height: normal;
  text-decoration: none;
  color: #fff !important;
  transition: background-color var(--ctw-fast) ease, transform var(--ctw-base) var(--ctw-ease);
}
.ctw-prod-btn:hover {
  transform: translateY(-1px);
}
.ctw-prod-btn--dark {
  background: var(--ctw-indigo);
}
.ctw-prod-btn--dark:hover {
  background: var(--ctw-indigo-deep);
}
.ctw-prod-btn--primary {
  background: var(--ctw-crimson);
}
.ctw-prod-btn--primary:hover {
  background: var(--ctw-crimson-600);
}
.ctw-prod-btn--indigo {
  background: var(--ctw-indigo);
}
.ctw-prod-btn--indigo:hover {
  background: #36498C;
}

.ctw-prod-stats {
  padding: 28px;
  border-radius: 22px;
  background: var(--ctw-dark);
  color: #fff;
}

.ctw-prod-stats__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 20px;
}
.ctw-prod-stats__head span {
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #7D878C;
}
.ctw-prod-stats__head em {
  padding: 5px 10px;
  border: 1px solid rgba(46, 196, 182, 0.3);
  border-radius: 999px;
  background: rgba(46, 196, 182, 0.12);
  font-size: 11px;
  font-style: normal;
  color: var(--ctw-teal);
}

.ctw-prod-stats__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 14px;
}
.ctw-prod-stats__grid div {
  padding: 18px;
  border: 1px solid #333B40;
  border-radius: 14px;
  background: #252C30;
}
.ctw-prod-stats__grid strong {
  display: block;
  font-size: 26px;
  font-weight: 800;
  line-height: normal;
  letter-spacing: -0.03em;
}
.ctw-prod-stats__grid span {
  display: block;
  margin-top: 5px;
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ctw-steel-300);
}

.ctw-prod-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-prod-steps li {
  padding: 24px;
  border: 1px solid var(--ctw-line);
  border-radius: 16px;
  background: #fff;
}
.ctw-prod-steps span {
  display: block;
  margin-bottom: 14px;
  font-size: 34px;
  font-weight: 800;
  line-height: normal;
  letter-spacing: -0.04em;
  color: var(--ctw-crimson);
}
.ctw-prod-steps h3 {
  margin: 0 0 7px;
  font-size: 16px;
  font-weight: 700;
  line-height: normal;
  letter-spacing: -0.01em;
}
.ctw-prod-steps p {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: var(--ctw-steel);
}

.ctw-prod-paths {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(320px, 100%), 1fr));
  gap: 18px;
}

.ctw-prod-path {
  padding: 32px;
  border: 1px solid var(--ctw-line);
  border-radius: 20px;
  background: #fff;
}
.ctw-prod-path .ctw-prod-kicker {
  margin-bottom: 12px;
  letter-spacing: 0.06em;
}
.ctw-prod-path h3 {
  margin: 0 0 12px;
  font-size: 22px;
  font-weight: 800;
  line-height: normal;
  letter-spacing: -0.02em;
}
.ctw-prod-path > p:not(.ctw-prod-kicker) {
  margin: 0 0 20px;
  font-size: 15px;
  line-height: 1.55;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}
.ctw-prod-path .ctw-prod-btn {
  padding: 13px 22px;
}
.ctw-prod-path--indigo {
  border: 2px solid var(--ctw-indigo);
}
.ctw-prod-path--dark {
  border-color: rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.07);
  color: #fff;
}
.ctw-prod-path--dark > p:not(.ctw-prod-kicker) {
  color: var(--ctw-text-on-dark);
}

.ctw-prod-path__features {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0 0 24px;
  padding: 0;
  list-style: none;
}
.ctw-prod-path__features:last-child {
  margin-bottom: 0;
}
.ctw-prod-path__features li {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  font-size: 14px;
  line-height: normal;
  color: var(--ctw-dark);
}
.ctw-prod-path--dark .ctw-prod-path__features li {
  color: #EEF1F2;
}
.ctw-prod-path__features span {
  flex: none;
  margin-top: 1px;
  font-weight: 800;
  color: var(--ctw-teal);
}

.ctw-prod-final .ctw-section {
  padding: 100px 0;
}
.ctw-prod-final .ctw-h1 {
  max-width: 760px;
  margin: 0 auto 18px;
  font-size: clamp(34px, 6vw, 56px);
  line-height: 1;
  letter-spacing: -0.035em;
}
.ctw-prod-final .ctw-sec-final__lead {
  max-width: 480px;
  margin: 0 auto 32px;
  font-size: 18px;
  line-height: normal;
  color: var(--ctw-text-body);
}
.ctw-prod-final .ctw-sec-final__actions .ctw-btn--primary {
  padding: 17px 30px;
  border: 0;
  box-shadow: 0 14px 30px rgba(219, 7, 60, 0.3);
}
.ctw-prod-final .ctw-sec-final__actions .ctw-btn--secondary {
  padding: 17px 26px;
}
.ctw-prod-final--compact .ctw-h1 {
  max-width: 640px;
  margin-bottom: 16px;
  font-size: clamp(34px, 6vw, 52px);
}
.ctw-prod-final--compact .ctw-sec-final__lead {
  margin-bottom: 30px;
}

.ctw-camp .ctw-sec-hero__title {
  font-size: clamp(38px, 6vw, 62px);
}

.ctw-camp-props {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 14px;
}
.ctw-camp-props .ctw-prod-card {
  padding: 22px;
}

.ctw-prod-card__icon.ctw-camp-props__icon {
  width: 30px;
  height: 30px;
  margin-bottom: 14px;
}

.ctw-camp-types {
  --ctw-text-on-dark: var(--ctw-on-indigo-muted);
  background: var(--ctw-indigo-deep);
  color: #fff;
}
.ctw-camp-types > .ctw-container {
  padding-top: 88px;
  padding-bottom: 88px;
}

.ctw-camp-types__head {
  margin-bottom: 48px;
  text-align: center;
}
.ctw-camp-types__head h2 {
  max-width: 640px;
  margin: 0 auto 14px;
  font-size: clamp(30px, 5vw, 46px);
  line-height: 1.04;
  letter-spacing: -0.03em;
}
.ctw-camp-types__head p:last-child {
  max-width: 520px;
  margin: 0 auto;
  font-size: 17px;
  color: var(--ctw-text-on-dark);
}

.ctw-camp-types__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(248px, 100%), 1fr));
  gap: 18px;
}

.ctw-camp-type {
  display: block;
  padding: 26px;
  border: 1px solid;
  border-radius: 18px;
  border-color: rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.07);
  color: #fff;
  text-decoration: none;
  transition: transform 0.2s, border-color 0.2s;
}
.ctw-camp-type:hover {
  border-color: var(--ctw-crimson);
  color: #fff;
  transform: translateY(-4px);
}
.ctw-camp-type h3 {
  margin: 0 0 8px;
  font-size: 19px;
  font-weight: 700;
  line-height: normal;
  letter-spacing: -0.02em;
}
.ctw-camp-type p {
  margin: 0 0 14px;
  font-size: 14px;
  line-height: 1.5;
  color: var(--ctw-text-on-dark);
}

.ctw-camp-type__tile {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  margin-bottom: 18px;
  border-radius: 13px;
  background: var(--ctw-crimson-50);
  color: var(--ctw-crimson);
}
.ctw-camp-type__tile .ctw-icon {
  width: 28px;
  height: 28px;
}

.ctw-camp-type__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 700;
}
.ctw-camp-type__link span {
  color: var(--ctw-crimson);
}

.ctw-camp-checklist {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 30px;
  border: 1px solid var(--ctw-line);
  border-radius: 22px;
  background: linear-gradient(180deg, #fff, #F6F8F9);
  list-style: none;
}
.ctw-camp-checklist li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid #ECEEF0;
  border-radius: 12px;
  background: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: normal;
}
.ctw-camp-checklist span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 26px;
  height: 26px;
  border-radius: 8px;
  background: var(--ctw-crimson-50);
  font-weight: 800;
  color: var(--ctw-crimson);
}

.ctw-camp-stats__bar {
  height: 8px;
  margin-top: 16px;
  overflow: hidden;
  border-radius: 999px;
  background: #333B40;
}
.ctw-camp-stats__bar i {
  display: block;
  width: 72%;
  height: 100%;
  background: linear-gradient(90deg, var(--ctw-crimson), var(--ctw-indigo));
}

@keyframes ctw-lw-pulse {
  0%, 100% {
    opacity: 0.5;
  }
  50% {
    opacity: 1;
  }
}
.ctw-lw {
  --lw-gap: 18px;
  --lw-body: #4A565B;
  --lw-muted: #6B818C;
  --lw-line: #E6EAEC;
  --lw-lilac: #A4B0F5;
  --lw-green: #1F9D6B;
  --lw-mint: #5FD6A0;
  --lw-indigo: #445CAD;
  --lw-teal: #2EC4B6;
  --lw-teal-ink: #12857A;
  --lw-amber: #E6A429;
  --lw-amber-ink: #B8801A;
  --lw-card-dark: #252C30;
  --lw-line-dark: #333B40;
}

.ctw-lw-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}
.ctw-lw-actions--center {
  justify-content: center;
}

.ctw-lw-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 16px 26px;
  border: 1px solid transparent;
  border-radius: 12px;
  font-family: var(--ctw-font);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  transition: transform var(--ctw-base) var(--ctw-ease), background-color var(--ctw-fast) ease, border-color var(--ctw-fast) ease, box-shadow var(--ctw-base) ease;
}
.ctw-lw-btn:hover {
  transform: translateY(-1px);
  text-decoration: none;
}
.ctw-lw-btn--lg {
  padding: 17px 30px;
}
.ctw-lw-btn--primary {
  background: var(--ctw-crimson);
  color: #fff;
  box-shadow: 0 12px 28px rgba(219, 7, 60, 0.32);
}
.ctw-lw-btn--primary:hover {
  background: var(--ctw-crimson-600);
  color: #fff;
}
.ctw-lw-btn--glow {
  box-shadow: 0 12px 28px rgba(219, 7, 60, 0.4);
}
.ctw-lw-btn--final {
  box-shadow: 0 14px 30px rgba(219, 7, 60, 0.3);
}
.ctw-lw-btn--teal.ctw-lw-btn--glow, .ctw-lw-btn--teal.ctw-lw-btn--final {
  box-shadow: 0 14px 30px rgba(46, 196, 182, 0.34);
}
.ctw-lw-btn--outline {
  padding: 16px 22px;
  border: 1.5px solid #D7DDE0;
  background: #fff;
  color: var(--ctw-dark);
  font-weight: 600;
}
.ctw-lw-btn--outline:hover {
  border-color: var(--ctw-dark);
  color: var(--ctw-dark);
}
.ctw-lw-btn--lg.ctw-lw-btn--outline {
  padding: 17px 26px;
}
.ctw-lw-btn--ghost {
  padding: 16px 22px;
  border-color: rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.04);
  color: #fff;
  font-weight: 600;
}
.ctw-lw-btn--ghost:hover {
  border-color: rgba(255, 255, 255, 0.45);
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
}
.ctw-lw-btn--teal {
  background: var(--lw-teal);
  color: var(--ctw-dark);
  box-shadow: 0 12px 28px rgba(46, 196, 182, 0.34);
}
.ctw-lw-btn--teal:hover {
  background: #27B0A3;
  color: var(--ctw-dark);
}
.ctw-lw-btn--teal.ctw-lw-btn--lg {
  box-shadow: 0 14px 30px rgba(46, 196, 182, 0.34);
}
.ctw-lw-btn--amber {
  background: var(--lw-amber);
  color: var(--ctw-dark);
  box-shadow: 0 12px 28px rgba(230, 164, 41, 0.34);
}
.ctw-lw-btn--amber:hover {
  background: #D9961C;
  color: var(--ctw-dark);
}
.ctw-lw-btn--amber.ctw-lw-btn--lg {
  box-shadow: 0 14px 30px rgba(230, 164, 41, 0.32);
}
.ctw-lw-btn--dark {
  padding: 14px 22px;
  border-radius: 11px;
  background: var(--ctw-dark);
  color: #fff;
  font-size: 15px;
}
.ctw-lw-btn--dark:hover {
  background: #000;
  color: #fff;
}

.ctw-lw-hero {
  position: relative;
  overflow: hidden;
}
.ctw-lw-hero--dark {
  background: #15181A;
  color: #fff;
}

.ctw-lw-hero__blob {
  position: absolute;
  top: -160px;
  right: -120px;
  width: 520px;
  height: 520px;
  border-radius: 999px;
  background: radial-gradient(circle, var(--lw-blob, rgba(68, 92, 173, 0.4)), transparent 68%);
  filter: blur(46px);
  pointer-events: none;
}
.ctw-lw-hero__blob--left {
  right: auto;
  left: -120px;
}

.ctw-lw-hero__grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(340px, 100%), 1fr));
  gap: 56px;
  align-items: center;
  padding-top: 80px;
  padding-bottom: 80px;
}
.ctw-lw-hero--light .ctw-lw-hero__grid {
  grid-template-columns: repeat(auto-fit, minmax(min(360px, 100%), 1fr));
  padding-top: 74px;
  padding-bottom: 56px;
}

.ctw-lw-hero__center {
  position: relative;
  max-width: calc(920px + var(--ctw-gutter) * 2);
  margin: 0 auto;
  padding: 80px var(--ctw-gutter);
  text-align: center;
}
.ctw-lw-hero__center .ctw-lw-hero__title {
  max-width: 780px;
  margin-left: auto;
  margin-right: auto;
}
.ctw-lw-hero__center .ctw-lw-hero__lead {
  max-width: 600px;
  margin: 0 auto 34px;
}
.ctw-lw-hero__center .ctw-lw-actions {
  justify-content: center;
}

.ctw-lw-hero__title {
  margin: 0 0 22px;
  font-size: clamp(38px, 6vw, 60px);
  font-weight: 800;
  line-height: 1.02;
  letter-spacing: -0.035em;
}
.ctw-lw-hero__title--62 {
  font-size: clamp(38px, 6vw, 62px);
}

.ctw-lw-hero__kicker {
  display: block;
  margin-bottom: 20px;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--lw-hero-kicker, var(--ctw-crimson));
}

.ctw-lw-grad {
  color: var(--lw-accent, var(--lw-teal));
}
.ctw-lw-hero--light .ctw-lw-grad {
  color: var(--lw-accent-ink, var(--lw-teal-ink));
}

.ctw-lw-hero__lead {
  max-width: 520px;
  margin: 0 0 32px;
  font-size: 19px;
  line-height: 1.55;
  color: var(--lw-body);
  text-wrap: pretty;
}
.ctw-lw-hero--dark .ctw-lw-hero__lead {
  color: #AAB3B7;
}

.ctw-lw-sec {
  padding: 80px 0;
}
.ctw-lw-sec--84 {
  padding: 84px 0;
}
.ctw-lw-sec--alt {
  background: var(--ctw-surface-alt);
}
.ctw-lw-sec--dark {
  background: var(--ctw-dark);
  color: #fff;
}

.ctw-lw-head {
  max-width: 640px;
  margin-bottom: 40px;
}
.ctw-lw-head--center {
  margin: 0 auto 44px;
  text-align: center;
}
.ctw-lw-head--600 {
  max-width: 600px;
}
.ctw-lw-head--560 {
  max-width: 560px;
}
.ctw-lw-head--36 {
  margin-bottom: 36px;
}
.ctw-lw-head--32 {
  margin-bottom: 32px;
}

.ctw-lw-kicker {
  margin: 0 0 14px;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}
.ctw-lw-kicker--green {
  color: var(--lw-green);
}
.ctw-lw-kicker--indigo {
  color: var(--lw-indigo);
}
.ctw-lw-kicker--amber {
  color: var(--lw-amber-ink);
}

.ctw-lw-h2 {
  margin: 0 0 12px;
  font-size: clamp(28px, 4.5vw, 40px);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -0.03em;
}
.ctw-lw-h2--42 {
  margin-bottom: 14px;
  font-size: clamp(28px, 4.5vw, 42px);
}
.ctw-lw-h2--solo {
  margin-bottom: 0;
}
.ctw-lw-h2--narrow {
  max-width: 560px;
}
.ctw-lw-h2--mb40 {
  margin-bottom: 40px;
}
.ctw-lw-h2--36 {
  margin-bottom: 16px;
  font-size: clamp(26px, 4vw, 36px);
  line-height: 1.08;
}
.ctw-lw-h2--32 {
  margin-bottom: 32px;
  font-size: clamp(24px, 3.5vw, 32px);
  line-height: 1.06;
}

.ctw-lw-lead {
  margin: 0;
  font-size: 17px;
  line-height: 1.21;
  color: var(--lw-body);
}

.ctw-lw-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(var(--lw-min, 280px), 100%), 1fr));
  gap: var(--lw-gap);
}
.ctw-lw-grid--16 {
  --lw-gap: 16px;
}

.ctw-lw-card {
  padding: 28px;
  border: 1px solid var(--lw-line);
  border-radius: 18px;
  background: #fff;
}
.ctw-lw-card h3 {
  margin: 0 0 8px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.02em;
}
.ctw-lw-card p {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: var(--lw-muted);
}
.ctw-lw-card--sm {
  padding: 24px;
  border-radius: 16px;
}
.ctw-lw-card--sm h3 {
  margin-bottom: 6px;
  font-size: 16px;
  letter-spacing: -0.01em;
}
.ctw-lw-card--sm p {
  font-size: 13.5px;
  line-height: 1.5;
}

.ctw-lw-icon {
  display: block;
  width: 26px;
  height: 26px;
  margin-bottom: 12px;
  color: var(--ctw-crimson);
}
.ctw-lw-icon--28 {
  width: 28px;
  height: 28px;
  margin-bottom: 14px;
}
.ctw-lw-icon--30 {
  width: 30px;
  height: 30px;
  margin-bottom: 14px;
}

.ctw-lw .ctw-lw-num {
  margin: 0 0 16px;
  font-family: var(--ctw-font-mono);
  font-size: 28px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--ctw-crimson);
}

.ctw-lw-help h3 {
  margin-bottom: 9px;
  font-size: 19px;
}
.ctw-lw-help p {
  font-size: 14.5px;
  line-height: 1.5;
}

.ctw-lw-tagcard {
  padding: 26px;
  background: linear-gradient(180deg, #fff, #F8F9FA);
}
.ctw-lw-tagcard h3 {
  margin-bottom: 9px;
  font-size: 17px;
}
.ctw-lw-tagcard p {
  font-size: 13.5px;
  line-height: 1.5;
}
.ctw-lw-tagcard--lg {
  padding: 30px;
  background: #fff;
}
.ctw-lw-tagcard--lg h3 {
  font-size: 19px;
}
.ctw-lw-tagcard--lg p {
  font-size: 14px;
  line-height: 1.55;
}

.ctw-lw .ctw-lw-tag {
  margin: 0 0 12px;
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}
.ctw-lw .ctw-lw-tag--green {
  color: var(--lw-green);
}

.ctw-lw-mentions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ctw-lw-mention {
  padding: 13px 15px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.05);
}
.ctw-lw-mention p {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.45;
  color: #DFE3E5;
}

.ctw-lw-mention__meta {
  display: flex;
  align-items: center;
  gap: 8px;
  line-height: 1.21;
  margin-bottom: 6px;
}
.ctw-lw-mention__meta strong {
  font-size: 13px;
  font-weight: 700;
  color: #fff;
}
.ctw-lw-mention__meta span {
  font-size: 10px;
  color: #7D878C;
}

.ctw-lw-pill {
  --pill: var(--lw-muted);
  margin-left: auto;
  padding: 2px 8px;
  border: 1px solid var(--pill);
  border-radius: 999px;
  font-family: var(--ctw-font);
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  line-height: 1.4;
  white-space: nowrap;
  color: var(--pill) !important;
}
.ctw-lw-pill--positive {
  --pill: #2EC4B6;
}
.ctw-lw-pill--alert {
  --pill: #DB073C;
}
.ctw-lw-pill--neutral {
  --pill: #6B818C;
}
.ctw-lw-pill--warn {
  --pill: #E6A429;
}

.ctw-lw-panelhead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}
.ctw-lw-panelhead > span {
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #7D878C;
}
.ctw-lw-panelhead em {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 11px;
  font-style: normal;
  color: var(--lw-teal);
}
.ctw-lw-panelhead i {
  width: 7px;
  height: 7px;
  border-radius: 99px;
  background: var(--lw-teal);
  animation: ctw-lw-pulse 1.2s infinite;
}

.ctw-lw-feed {
  padding: 20px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(10px);
}

.ctw-lw-rows {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-lw-rows li {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid #ECEEF0;
  border-radius: 10px;
  background: #F7F8F9;
}
.ctw-lw-rows span {
  flex: 1;
  font-size: 13px;
  line-height: 1.35;
  color: var(--ctw-dark);
}
.ctw-lw-rows .ctw-lw-pill {
  flex: none;
  padding: 2px 7px;
  font-size: 9px;
}

.ctw-lw-source {
  padding: 26px;
}
.ctw-lw-source p {
  margin-bottom: 18px;
}

.ctw-lw-fgrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(var(--lw-min, 280px), 100%), 1fr));
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--lw-line);
  border-radius: 18px;
  background: var(--lw-line);
}
.ctw-lw-fgrid--dark {
  border-color: var(--lw-line-dark);
  background: var(--lw-line-dark);
}
.ctw-lw-fgrid--dark .ctw-lw-fgrid__cell {
  background: var(--ctw-dark);
}
.ctw-lw-fgrid--dark p {
  color: #9AA7AD;
}

.ctw-lw-fgrid__cell {
  padding: 26px;
  background: #fff;
}
.ctw-lw-fgrid__cell p {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.5;
  color: var(--lw-muted);
}

.ctw-lw-fgrid__head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.ctw-lw-fgrid__head h3 {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.01em;
}
.ctw-lw-fgrid__head i {
  flex: none;
  width: 8px;
  height: 8px;
  border-radius: 99px;
  background: var(--ctw-crimson);
}
.ctw-lw-fgrid__head .ctw-icon {
  width: 22px;
  height: 22px;
  color: var(--ctw-crimson);
}

.ctw-lw-darkcard {
  display: flex;
  flex-direction: column;
  padding: 28px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02));
  color: #fff;
  text-decoration: none;
}
.ctw-lw-darkcard h3 {
  margin: 0 0 10px;
  font-size: 21px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.ctw-lw-darkcard p {
  flex: 1;
  margin: 0 0 18px;
  font-size: 14.5px;
  line-height: 1.5;
  color: #9AA7AD;
}
.ctw-lw-darkcard--flat {
  display: block;
  background: var(--lw-card-dark);
  border-color: var(--lw-line-dark);
}
.ctw-lw-darkcard--flat h3 {
  margin-bottom: 8px;
  font-size: 19px;
}
.ctw-lw-darkcard--flat p {
  margin-bottom: 14px;
  font-size: 14px;
}

.ctw-lw .ctw-lw-darkcard__q {
  margin: 0 0 12px;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  line-height: 1.5;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--lw-lilac);
}

.ctw-lw-arrow {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
}
.ctw-lw-arrow b {
  font-weight: 700;
  color: var(--ctw-crimson);
  transition: transform var(--ctw-base) var(--ctw-ease);
}
.ctw-lw-arrow:hover {
  color: #fff;
}
.ctw-lw-arrow:hover b, a:hover .ctw-lw-arrow b {
  transform: translateX(3px);
}
.ctw-lw-arrow--crimson {
  color: var(--ctw-crimson);
}
.ctw-lw-arrow--crimson b {
  color: inherit;
}
.ctw-lw-arrow--crimson:hover {
  color: var(--ctw-crimson);
}

a.ctw-lw-darkcard:hover,
a.ctw-lw-crosscard:hover {
  color: inherit;
  text-decoration: none;
}

a.ctw-lw-darkcard:hover .ctw-lw-arrow b,
a.ctw-lw-crosscard:hover .ctw-lw-arrow b {
  transform: translateX(3px);
}

.ctw-lw-crosscard {
  display: block;
  padding: 28px;
  border: 1px solid var(--lw-line);
  border-radius: 18px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.ctw-lw-crosscard:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 30px rgba(29, 35, 38, 0.1);
}
.ctw-lw-crosscard h3 {
  margin: 0 0 8px;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.ctw-lw-crosscard p {
  margin: 0 0 14px;
  font-size: 14px;
  line-height: 1.5;
  color: var(--lw-muted);
}

.ctw-lw-final {
  padding: 90px 0;
  text-align: center;
}
.ctw-lw-final h2 {
  max-width: 680px;
  margin: 0 auto 16px;
  font-size: clamp(34px, 6vw, 52px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.035em;
}
.ctw-lw-final p {
  max-width: 460px;
  margin: 0 auto 30px;
  font-size: 18px;
  line-height: 1.21;
  color: var(--lw-body);
}
.ctw-lw-final .ctw-lw-actions {
  justify-content: center;
}
.ctw-lw-final--sl {
  padding: 30px 0 100px;
}
.ctw-lw-final--sl h2 {
  max-width: 720px;
  font-size: clamp(34px, 6vw, 54px);
}
.ctw-lw-final--sl p {
  max-width: 480px;
}
.ctw-lw-final--flush {
  padding: 0 0 100px;
}
.ctw-lw-final--flush h2 {
  max-width: 660px;
}
.ctw-lw-final--dark {
  background: var(--ctw-dark);
  color: #fff;
}
.ctw-lw-final--dark h2 {
  max-width: 620px;
  font-size: clamp(30px, 5vw, 46px);
  line-height: 1.08;
  letter-spacing: -0.03em;
}
.ctw-lw-final--dark p {
  max-width: 500px;
  margin-bottom: 32px;
  color: #9AA7AD;
}

.ctw-lw--sl {
  --lw-hero-kicker: var(--lw-teal);
}

.ctw-lw-sec--help {
  padding: 80px 0 50px;
}

.ctw-lw--msl {
  --lw-hero-kicker: var(--lw-teal);
  --lw-blob: rgba(46, 196, 182, .3);
}

.ctw-lw-split {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(330px, 100%), 1fr));
  gap: 56px;
  align-items: center;
}
.ctw-lw-split .ctw-lw-lead {
  margin-bottom: 24px;
  line-height: 1.55;
  text-wrap: pretty;
}

.ctw-lw-trends {
  padding: 24px;
  border-radius: 20px;
  background: var(--ctw-dark);
  color: #fff;
}
.ctw-lw-trends ol {
  display: flex;
  flex-direction: column;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-lw-trends li {
  display: flex;
  align-items: center;
  gap: 12px;
  line-height: 1.21;
}
.ctw-lw-trends li span {
  flex: none;
  width: 22px;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  color: var(--lw-mint);
}
.ctw-lw-trends li strong {
  flex: 1;
  font-size: 13.5px;
  font-weight: 600;
}
.ctw-lw-trends li em {
  font-size: 11px;
  font-style: normal;
  color: #9AA7AD;
}

.ctw-lw--bm {
  --lw-hero-kicker: var(--lw-teal);
  --lw-blob: rgba(46, 196, 182, .3);
}

.ctw-lw-bento {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-lw-bento li {
  padding: 22px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.05);
}
.ctw-lw-bento li:first-child {
  grid-column: span 2;
}
.ctw-lw-bento .ctw-lw-icon {
  color: var(--lw-mint);
}
.ctw-lw-bento h3 {
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.01em;
}
.ctw-lw-bento p {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: #9AA7AD;
}
@media (max-width: 480px) {
  .ctw-lw-bento li {
    padding: 18px;
  }
}

.ctw-lw-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 24px;
}
.ctw-lw-tabs button {
  padding: 11px 18px;
  border: 1px solid var(--lw-line);
  border-radius: 11px;
  background: #fff;
  font-family: var(--ctw-font);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--ctw-dark);
  cursor: pointer;
  transition: all 0.15s;
}
.ctw-lw-tabs button:hover {
  border-color: var(--ctw-dark);
}
.ctw-lw-tabs button.is-active {
  border-color: var(--ctw-dark);
  background: var(--ctw-dark);
  color: #fff;
}

.ctw-lw-case {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
  gap: 40px;
  align-items: center;
  padding: 44px;
  border-radius: 22px;
  background: linear-gradient(135deg, #1D2326, #252C30);
  color: #fff;
}
.ctw-lw-case[hidden] {
  display: none;
}
.ctw-lw-case h3 {
  margin: 0 0 16px;
  font-size: clamp(23px, 3vw, 29px);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
}
.ctw-lw-case .ctw-lw-case__text {
  margin: 0;
  font-size: 16px;
  line-height: 1.6;
  color: #AAB3B7;
  text-wrap: pretty;
}
@media (max-width: 760px) {
  .ctw-lw-case {
    gap: 28px;
    padding: 24px;
  }
}

.ctw-lw-case__eyebrow {
  margin: 0 0 14px;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  line-height: 1.5;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lw-lilac);
}

.ctw-lw-case__mock {
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  background: rgba(0, 0, 0, 0.25);
}
.ctw-lw-case__mock .ctw-lw-panelhead {
  margin-bottom: 12px;
}
.ctw-lw-case__mock .ctw-lw-panelhead > span {
  font-size: 10px;
}
.ctw-lw-case__mock .ctw-lw-panelhead em {
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.ctw-lw-case__mock .ctw-lw-mentions {
  gap: 9px;
}
.ctw-lw-case__mock .ctw-lw-mention {
  padding: 11px 13px;
  border-radius: 11px;
}
.ctw-lw-case__mock .ctw-lw-mention p {
  font-size: 12.5px;
  line-height: 1.4;
}
.ctw-lw-case__mock .ctw-lw-mention__meta {
  margin-bottom: 5px;
}
.ctw-lw-case__mock .ctw-lw-mention__meta strong {
  font-size: 12px;
}
.ctw-lw-case__mock .ctw-lw-pill {
  font-size: 9px;
}

.ctw-lw-sec--cross {
  padding: 72px 0;
}

.ctw-lw--sa {
  --lw-hero-kicker: var(--lw-teal-ink);
}

.ctw:has(.ctw-lw--sl, .ctw-lw--msl, .ctw-lw--bm, .ctw-lw--sa) .ctw-nav__actions .ctw-btn--primary {
  background: var(--ctw-teal);
  color: var(--ctw-dark) !important;
  box-shadow: 0 6px 16px rgba(46, 196, 182, 0.32);
}
.ctw:has(.ctw-lw--sl, .ctw-lw--msl, .ctw-lw--bm, .ctw-lw--sa) .ctw-nav__actions .ctw-btn--primary:hover {
  background: #27B0A3;
}

.ctw-lw-chart {
  padding: 24px;
  border-radius: 20px;
  background: var(--ctw-dark);
  color: #fff;
  box-shadow: 0 30px 70px rgba(29, 35, 38, 0.22);
}
.ctw-lw-chart .ctw-lw-panelhead {
  margin-bottom: 18px;
}
.ctw-lw-chart .ctw-lw-panelhead em {
  font-weight: 700;
}

.ctw-lw-chart__bars {
  display: flex;
  align-items: flex-end;
  gap: 6px;
  height: 120px;
  margin-bottom: 18px;
}
.ctw-lw-chart__bars i {
  flex: 1;
  height: var(--h);
  border-radius: 5px 5px 0 0;
  background: linear-gradient(180deg, #DB073C, #445CAD);
}

.ctw-lw-chart__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-lw-chart__stats li {
  padding: 12px;
  line-height: 1.21;
  border: 1px solid var(--lw-line-dark);
  border-radius: 11px;
  background: var(--lw-card-dark);
}
.ctw-lw-chart__stats strong {
  display: block;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -0.02em;
}
.ctw-lw-chart__stats span {
  display: block;
  margin-top: 3px;
  font-family: var(--ctw-font-mono);
  font-size: 8px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #9AA7AD;
}

.ctw-lw-points {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-lw-points li {
  padding-left: 16px;
  border-left: 2px solid var(--ctw-crimson);
}
.ctw-lw-points h3 {
  margin: 0 0 5px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.01em;
}
.ctw-lw-points p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
  color: var(--lw-muted);
}

.ctw-lw-hbars {
  padding: 28px;
  border: 1px solid var(--lw-line);
  border-radius: 20px;
  background: linear-gradient(180deg, #fff, #F6F8F9);
}
.ctw-lw-hbars > p {
  margin: 0 0 14px;
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lw-muted);
}
.ctw-lw-hbars ul {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-lw-hbars li {
  display: flex;
  align-items: center;
  gap: 12px;
  line-height: 1.21;
}
.ctw-lw-hbars span {
  flex: none;
  width: 120px;
  font-size: 13px;
  color: var(--ctw-dark);
}
.ctw-lw-hbars div {
  flex: 1;
  height: 14px;
  overflow: hidden;
  border-radius: 5px;
  background: #ECEEF0;
}
.ctw-lw-hbars i {
  display: block;
  width: var(--w);
  height: 100%;
  background: linear-gradient(90deg, #DB073C, #445CAD);
}
@media (max-width: 480px) {
  .ctw-lw-hbars {
    padding: 22px;
  }
  .ctw-lw-hbars span {
    width: 80px;
  }
}

.ctw-lw-min220 {
  --lw-min: 220px;
}

.ctw-lw-min248 {
  --lw-min: 248px;
}

.ctw-lw-min260 {
  --lw-min: 260px;
}

.ctw-lw-min300 {
  --lw-min: 300px;
}

.ctw-lw-pillar {
  padding: 30px;
}
.ctw-lw-pillar h3 {
  margin-bottom: 10px;
  font-size: 19px;
}
.ctw-lw-pillar p {
  font-size: 14.5px;
}

.ctw-lw--walls {
  --lw-hero-kicker: var(--lw-amber-ink);
  --lw-accent: var(--lw-amber);
  --lw-accent-ink: var(--lw-amber-ink);
}
.ctw-lw--walls .ctw-lw-kicker {
  color: var(--lw-amber-ink);
}

.ctw:has(.ctw-lw--walls) .ctw-nav__actions .ctw-btn--primary {
  background: var(--ctw-amber);
  color: var(--ctw-dark) !important;
  box-shadow: 0 6px 16px rgba(230, 164, 41, 0.32);
}
.ctw:has(.ctw-lw--walls) .ctw-nav__actions .ctw-btn--primary:hover {
  background: #D9961C;
}

.ctw-wall-mock {
  padding: 20px;
  border-radius: 20px;
  background: var(--ctw-dark);
  box-shadow: 0 30px 70px rgba(29, 35, 38, 0.22);
}

.ctw-wall-mock__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
  line-height: 1.21;
}
.ctw-wall-mock__head strong {
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  font-weight: 400;
  color: var(--ctw-amber);
}
.ctw-wall-mock__head em {
  font-size: 10px;
  font-style: normal;
  color: var(--ctw-amber);
}

.ctw-wall-mock__grid {
  columns: 2;
  column-gap: 10px;
}

.ctw-wall-mock__post {
  break-inside: avoid;
  margin-bottom: 10px;
  padding: 13px;
  border: 1px solid #333B40;
  border-radius: 12px;
  background: #252C30;
}
.ctw-wall-mock__post--crimson {
  --tone: var(--ctw-crimson);
}
.ctw-wall-mock__post--indigo {
  --tone: var(--ctw-indigo);
}
.ctw-wall-mock__post--teal {
  --tone: var(--ctw-teal);
}
.ctw-wall-mock__post--amber {
  --tone: var(--ctw-amber);
}

.ctw-wall-mock__user {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 0 0 7px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.21;
  color: #fff;
}
.ctw-wall-mock__user span {
  flex: none;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: var(--tone, var(--ctw-crimson));
}

.ctw-wall-mock__text {
  margin: 0;
  font-size: 12px;
  line-height: 1.4;
  color: #DFE3E5;
}

.ctw-wall-sec--cream {
  background: #FBF7EE;
}

.ctw-wall-step {
  border-color: #F0E6CF;
}
.ctw-wall-step p {
  font-size: 14px;
}

.ctw-wall-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  margin-bottom: 16px;
  border-radius: 11px;
  background: var(--ctw-amber);
  font-size: 17px;
  font-weight: 800;
  color: var(--ctw-dark);
}

.ctw-wall-use {
  display: flex;
  flex-direction: column;
}
.ctw-wall-use h3 {
  margin-bottom: 10px;
  font-size: 19px;
}
.ctw-wall-use > p {
  margin-bottom: 18px;
}

.ctw-wall-checks {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: auto 0 0;
  padding: 16px 0 0;
  border-top: 1px solid var(--ctw-line);
  list-style: none;
}
.ctw-wall-checks li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
}
.ctw-wall-checks .ctw-icon {
  width: 18px;
  height: 18px;
  margin-top: 1px;
  color: var(--ctw-amber-700);
}

.ctw-wall-case {
  padding: 36px;
  border: 1px solid #333B40;
  border-radius: 20px;
  background: #252C30;
  color: #fff;
}
.ctw-wall-case h3 {
  margin: 0 0 12px;
  font-size: 22px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.ctw-wall-case p {
  margin: 0 0 20px;
  font-size: 15px;
  line-height: 1.6;
  color: #9AA7AD;
  text-wrap: pretty;
}
@media (max-width: 480px) {
  .ctw-wall-case {
    padding: 26px;
  }
}

.ctw-wall-case__tile {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin-bottom: 20px;
  border-radius: 13px;
  background: var(--ctw-amber);
  color: var(--ctw-dark);
}
.ctw-wall-case__tile .ctw-icon {
  width: 24px;
  height: 24px;
}

.ctw-wall-case__link {
  font-size: 14px;
  font-weight: 700;
  color: var(--ctw-amber);
  text-decoration: none;
}
.ctw-wall-case__link:hover {
  color: var(--ctw-amber);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.ctw-wall-rows {
  display: flex;
  flex-direction: column;
  gap: 64px;
}

.ctw-wall-row img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 20px;
  box-shadow: 0 30px 70px rgba(29, 35, 38, 0.18);
}
.ctw-wall-row:nth-child(even) > :first-child {
  order: 2;
}
@media (max-width: 760px) {
  .ctw-wall-row:nth-child(even) > :first-child {
    order: 0;
  }
}

.ctw-wall-demo {
  overflow: hidden;
  border-radius: 20px;
  background: var(--ctw-dark);
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.3);
}
.ctw-wall-demo iframe {
  display: block;
  width: 100%;
  height: min(640px, 75vh);
  border: 0;
  background: #fff;
}

.ctw-wall-h2--600 {
  max-width: 600px;
}

.ctw-lw .ctw-wall-tag {
  color: var(--ctw-amber-700);
}

.ctw-wall-steps5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.ctw-wall-steps5 .ctw-lw-card {
  padding: 24px;
}
@media (max-width: 1024px) {
  .ctw-wall-steps5 {
    grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
  }
}

.ctw-cc-editor {
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 18px;
  background: #15181A;
  box-shadow: 0 30px 70px rgba(29, 35, 38, 0.22);
}

.ctw-cc-editor__bar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 13px 16px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.ctw-cc-editor__bar span {
  width: 11px;
  height: 11px;
  border-radius: 999px;
  background: var(--ctw-crimson);
}
.ctw-cc-editor__bar span:nth-child(2) {
  background: var(--ctw-amber);
}
.ctw-cc-editor__bar span:nth-child(3) {
  background: var(--ctw-teal);
}
.ctw-cc-editor__bar em {
  margin-left: 10px;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  font-style: normal;
  color: #7D878C;
}

.ctw-cc-editor__code {
  padding: 20px;
  font-family: var(--ctw-font-mono);
  font-size: 12.5px;
  line-height: 1.7;
  color: #DFE3E5;
}
.ctw-cc-editor__code .i {
  padding-left: 18px;
}
.ctw-cc-editor__code .s {
  color: #A4B0F5;
}
.ctw-cc-editor__code .p {
  color: #7D878C;
}
.ctw-cc-editor__code .v {
  color: var(--ctw-teal);
}
.ctw-cc-editor__code .a {
  color: var(--ctw-amber);
}

.ctw-cc-editor__ai {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  color: #A4B0F5;
}
.ctw-cc-editor__ai span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border-radius: 6px;
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-indigo));
  font-family: var(--ctw-font);
  font-size: 10px;
  color: #fff;
}

.ctw-cc-build {
  padding: 84px 0;
}

.ctw-cc-build__head {
  margin-bottom: 32px;
}

.ctw-cc-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 24px;
}
.ctw-cc-tabs button {
  padding: 11px 18px;
  border: 1px solid var(--ctw-line);
  border-radius: 11px;
  background: #fff;
  font-family: var(--ctw-font);
  font-size: 14px;
  font-weight: 700;
  line-height: normal;
  color: var(--ctw-dark);
  cursor: pointer;
  transition: all 0.15s;
}
.ctw-cc-tabs button:hover {
  border-color: var(--ctw-dark);
}
.ctw-cc-tabs button.is-active {
  border-color: var(--ctw-indigo);
  background: var(--ctw-indigo);
  color: #fff;
}

.ctw-cc-panel {
  display: grid;
  overflow: hidden;
  grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
  gap: 40px;
  align-items: center;
  padding: 44px;
  border-radius: 22px;
  background: linear-gradient(135deg, var(--ctw-indigo-deep), var(--ctw-indigo-deeper));
  color: #fff;
}
.ctw-cc-panel[hidden] {
  display: none;
}
@media (max-width: 480px) {
  .ctw-cc-panel {
    padding: 28px;
  }
}

.ctw-cc-panel__copy h3 {
  margin: 0 0 16px;
  font-size: clamp(24px, 3.2vw, 30px);
  line-height: 1.15;
  letter-spacing: -0.02em;
}
.ctw-cc-panel__copy > p:not(.ctw-cc-panel__eyebrow) {
  margin: 0;
  font-size: 16px;
  line-height: 1.6;
  color: var(--ctw-on-indigo-muted);
  text-wrap: pretty;
}

.ctw-cc-panel__eyebrow {
  margin: 0 0 14px;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #A4B0F5;
}

.ctw-cc-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}
.ctw-cc-chips li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 15px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.06);
  font-size: 14px;
  font-weight: 600;
}
.ctw-cc-chips .ctw-icon {
  width: 22px;
  height: 22px;
  color: #fff;
}

.ctw-cc-shots {
  display: grid;
  align-items: center;
  gap: 14px;
}
.ctw-cc-shots img {
  position: relative;
  width: 100%;
  border: 5px solid #0E1011;
  border-radius: 24px;
  background: #0E1011;
  box-shadow: 0 24px 50px rgba(0, 0, 0, 0.35);
}
.ctw-cc-shots--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 360px;
  margin: 0 auto;
}
.ctw-cc-shots--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 480px;
  margin: 0 auto;
}
.ctw-cc-shots--3 img:nth-child(1),
.ctw-cc-shots--3 img:nth-child(3) {
  transform: scale(0.9);
  opacity: 0.9;
}
.ctw-cc-shots--3 img:nth-child(2) {
  z-index: 1;
  transform: scale(1.06);
  box-shadow: 0 34px 70px rgba(0, 0, 0, 0.5);
}

.ctw-cc-paths > .ctw-container {
  padding-bottom: 84px;
}

.ctw-cc-paths__head {
  margin-bottom: 32px;
}

.ctw-cc-final .ctw-section {
  padding-top: 0;
}

.ctw-cc-final .ctw-sec-final__lead {
  max-width: 520px;
}

.ctw-kd-logos {
  padding-bottom: clamp(40px, 6vw, 72px);
}
.ctw-kd-logos img {
  display: block;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: clamp(14px, 2.5vw, 26px) clamp(16px, 3vw, 32px);
  border: 1px solid var(--ctw-line);
  border-radius: var(--ctw-radius-lg);
  background: #fff;
}

.ctw-tpl-hero {
  text-align: center;
}
.ctw-tpl-hero > .ctw-container {
  max-width: calc(900px + var(--ctw-gutter) * 2);
  padding-top: 72px;
  padding-bottom: 36px;
}

.ctw-tpl-hero__title {
  max-width: 760px;
  margin: 0 auto 20px;
  font-size: clamp(36px, 6vw, 56px);
  line-height: 1.04;
  letter-spacing: -0.035em;
}

.ctw-tpl-hero__kicker {
  display: block;
  margin-bottom: 20px;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}

.ctw-tpl-hero__lead {
  max-width: 600px;
  margin: 0 auto 26px;
  font-size: 18px;
  line-height: 1.55;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}

.ctw-tpl-filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 9px;
}
.ctw-tpl-filters .ctw-sec-filter {
  font-size: 13px;
  line-height: normal;
}

.ctw-tpl-library > .ctw-container {
  padding-top: 32px;
  padding-bottom: 70px;
}

.ctw-tpl-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(280px, 100%), 1fr));
  gap: 18px;
}

.ctw-tpl-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--ctw-line);
  border-radius: 18px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: transform 0.2s, box-shadow 0.2s;
}
.ctw-tpl-card:hover {
  color: inherit;
  box-shadow: 0 18px 38px rgba(29, 35, 38, 0.12);
  transform: translateY(-5px);
}
.ctw-tpl-card[hidden] {
  display: none;
}

.ctw-tpl-card__cover {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 515/404;
  overflow: hidden;
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-indigo));
}
.ctw-tpl-card__cover--1 {
  background: linear-gradient(135deg, var(--ctw-amber), var(--ctw-crimson));
}
.ctw-tpl-card__cover--2 {
  background: linear-gradient(135deg, var(--ctw-indigo), var(--ctw-teal));
}
.ctw-tpl-card__cover--3 {
  background: linear-gradient(135deg, var(--ctw-teal), var(--ctw-indigo));
}
.ctw-tpl-card__cover--4 {
  background: linear-gradient(135deg, var(--ctw-dark), var(--ctw-indigo));
}
.ctw-tpl-card__cover--5 {
  background: linear-gradient(135deg, var(--ctw-indigo), var(--ctw-crimson));
}
.ctw-tpl-card__cover--6 {
  background: linear-gradient(135deg, var(--ctw-amber), var(--ctw-teal));
}
.ctw-tpl-card__cover--7 {
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-dark));
}
.ctw-tpl-card__cover--8 {
  background: linear-gradient(135deg, var(--ctw-teal), var(--ctw-dark));
}
.ctw-tpl-card__cover--image {
  align-items: flex-end;
  padding: 18px 16px 0;
}
.ctw-tpl-card__cover--image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: bottom center;
}
.ctw-tpl-card__cover--tint0 {
  background: var(--ctw-crimson-50);
}
.ctw-tpl-card__cover--tint1 {
  background: #EEF1FB;
}
.ctw-tpl-card__cover--tint2 {
  background: var(--ctw-teal-50);
}
.ctw-tpl-card__cover--tint3 {
  background: var(--ctw-amber-50);
}

.ctw-tpl-card__tile {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 62px;
  height: 62px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--ctw-crimson);
}
.ctw-tpl-card__tile .ctw-icon {
  width: 34px;
  height: 34px;
}

.ctw-tpl-card__cat {
  margin: 0 0 8px !important;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  font-weight: 600;
  line-height: normal;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}

.ctw-tpl-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 24px;
}

.ctw-tpl-card__title {
  margin: 0 0 8px;
  font-size: 17px;
  font-weight: 700;
  line-height: normal;
  letter-spacing: -0.01em;
}

.ctw-tpl-card__text {
  flex: 1;
  margin: 0 0 18px;
  font-size: 13.5px;
  line-height: 1.5;
  color: var(--ctw-steel);
}

.ctw-tpl-card__link {
  font-size: 14px;
  font-weight: 700;
  color: var(--ctw-crimson);
}

.ctw-tpl-empty {
  max-width: 560px;
  margin: 0 auto !important;
  padding: 32px;
  border: 1px dashed var(--ctw-line);
  border-radius: var(--ctw-radius-lg);
  text-align: center;
  color: var(--ctw-steel);
}

.ctw-tpl-card__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-indigo));
  color: #fff;
}
.ctw-tpl-card__placeholder .ctw-icon {
  width: 48px;
  height: 48px;
  opacity: 0.92;
}

.ctw-tpl-show__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 14px;
  padding: 0;
  list-style: none;
}
.ctw-tpl-show__tags li {
  padding: 5px 12px;
  border-radius: var(--ctw-radius-pill);
  background: #FDEEF2;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}

.ctw-tpl-show__description p {
  margin: 0 0 12px !important;
}

.ctw-tpl-show__pick {
  margin: 0;
}
@media (max-width: 480px) {
  .ctw-tpl-show__pick {
    width: 100%;
  }
  .ctw-tpl-show__pick .ctw-btn {
    width: 100%;
  }
}

.ctw-tpl-show__visual {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 320px;
  padding: clamp(20px, 4vw, 40px);
  border-radius: var(--ctw-radius-lg);
  background: var(--tpl-bg);
  box-shadow: 0 30px 70px rgba(29, 35, 38, 0.14);
}
.ctw-tpl-show__visual img {
  max-width: 100%;
  max-height: 520px;
  border-radius: var(--ctw-radius);
}
.ctw-tpl-show__visual .ctw-tpl-card__placeholder {
  width: 100%;
  min-height: 280px;
  border-radius: var(--ctw-radius);
}

.ctw-tpl-show__body {
  font-size: 16px;
  line-height: 1.7;
}
.ctw-tpl-show__body img,
.ctw-tpl-show__body iframe,
.ctw-tpl-show__body video {
  max-width: 100%;
  border-radius: var(--ctw-radius);
}
.ctw-tpl-show__body h2,
.ctw-tpl-show__body h3 {
  margin: 28px 0 12px !important;
}
.ctw-tpl-show__body p {
  margin: 0 0 14px !important;
}
.ctw-tpl-show__body img {
  height: auto;
}
.ctw-tpl-show__body [style*=justify] {
  text-align: left !important;
}
.ctw-tpl-show__body .row {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -14px;
}
.ctw-tpl-show__body .row > [class*=col-] {
  width: 100%;
  padding: 0 14px;
}
.ctw-tpl-show__body .g-4 {
  row-gap: 24px;
}
.ctw-tpl-show__body .d-flex {
  display: flex;
}
.ctw-tpl-show__body .align-items-center {
  align-items: center;
}
.ctw-tpl-show__body .flex-fill {
  flex: 1 1 auto;
}
.ctw-tpl-show__body .text-center {
  text-align: center;
}
.ctw-tpl-show__body .mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.ctw-tpl-show__body .mb-3 {
  margin-bottom: 16px;
}
.ctw-tpl-show__body .mb-5 {
  margin-bottom: 48px;
}
.ctw-tpl-show__body .order-1 {
  order: 1;
}
.ctw-tpl-show__body .order-2 {
  order: 2;
}
@media (min-width: 760px) {
  .ctw-tpl-show__body .row > .col-md-6 {
    width: 50%;
  }
  .ctw-tpl-show__body .order-md-1 {
    order: 1;
  }
  .ctw-tpl-show__body .order-md-2 {
    order: 2;
  }
  .ctw-tpl-show__body .mb-md-0 {
    margin-bottom: 0;
  }
}
@media (min-width: 1024px) {
  .ctw-tpl-show__body .row > .col-lg-3 {
    width: 25%;
  }
  .ctw-tpl-show__body .row > .col-lg-4 {
    width: 33.333%;
  }
  .ctw-tpl-show__body .row > .col-lg-8 {
    width: 66.667%;
  }
}

.ctw-co-hero {
  max-width: calc(840px + var(--ctw-gutter) * 2);
  margin: 0 auto;
  padding: clamp(48px, 7vw, 80px) var(--ctw-gutter) 50px;
  text-align: center;
}

.ctw-co-hero__title {
  margin: 0 0 24px;
  font-size: clamp(40px, 7vw, 68px);
  line-height: 1;
  letter-spacing: -0.035em;
}

.ctw-co-hero__title .ctw-co-hero__kicker {
  display: block;
  width: fit-content;
  margin: 0 auto 20px;
  line-height: 1.4;
  letter-spacing: 0.04em;
}

.ctw-co-hero__lead {
  max-width: 640px;
  margin: 0 auto;
  font-size: 18px;
  line-height: 1.6;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}

.ctw-co-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 18px;
}

.ctw-co-card {
  padding: 30px;
  border: 1px solid var(--ctw-line);
  border-radius: 18px;
  background: #fff;
}
.ctw-co-card h3 {
  margin: 0 0 10px;
  font-size: 19px;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.3;
}
.ctw-co-card p {
  margin: 0;
  font-size: 14.5px;
  line-height: 1.55;
  color: var(--ctw-steel);
}

.ctw-co-card .ctw-co-card__icon {
  display: block;
  width: 30px;
  height: 30px;
  margin-bottom: 14px;
  color: var(--ctw-crimson);
}

.ctw-co-trust {
  padding-top: clamp(48px, 7vw, 72px);
  padding-bottom: clamp(48px, 7vw, 72px);
  text-align: center;
}
.ctw-co-trust .ctw-cases-trust__title {
  margin-bottom: 30px !important;
}

.ctw-co-final {
  padding-top: clamp(56px, 8vw, 90px);
  padding-bottom: clamp(56px, 8vw, 90px);
  text-align: center;
}

.ctw-co-final__title {
  max-width: 720px;
  margin: 0 auto 16px;
  font-size: clamp(34px, 6vw, 54px);
  line-height: 1;
  letter-spacing: -0.035em;
}

.ctw-co-final__lead {
  max-width: 460px;
  margin: 0 auto 30px;
  font-size: 18px;
  line-height: 1.25;
  color: var(--ctw-text-body);
}

.ctw-co-final__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
}
.ctw-co-final__actions .ctw-btn {
  min-height: 0;
}
.ctw-co-final__actions .ctw-btn--secondary {
  padding-left: 26px;
  padding-right: 26px;
  border-width: 1.5px;
  font-weight: 600;
}

.ctw-about-hero__lead {
  font-size: 19px;
}

.ctw-about-data {
  padding: 64px 0;
  --ctw-text-on-dark: var(--ctw-on-indigo-muted);
  background: var(--ctw-indigo-deep);
  color: #fff;
}

.ctw-about-data__title {
  margin: 0 0 40px;
  font-size: clamp(22px, 3vw, 30px);
  letter-spacing: -0.02em;
  text-align: center;
}

.ctw-about-figures {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 20px;
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center;
}
.ctw-about-figures strong {
  display: block;
  font-size: clamp(40px, 5vw, 56px);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.2;
  color: #fff;
}
.ctw-about-figures span {
  display: block;
  margin-top: 6px;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #A4B0F5;
}

.ctw-about-story {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(330px, 100%), 1fr));
  gap: 56px;
  padding-top: clamp(56px, 8vw, 90px);
  padding-bottom: clamp(56px, 8vw, 90px);
}
@media (max-width: 760px) {
  .ctw-about-story {
    gap: 28px;
  }
}

.ctw-about-story__kicker {
  margin: 0 0 16px;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}

.ctw-about-story__title {
  max-width: 420px;
  margin: 0;
  font-size: clamp(28px, 4vw, 40px);
  line-height: 1.05;
}

.ctw-about-story__p {
  margin: 0 0 20px;
  font-size: 16.5px;
  line-height: 1.65;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}
.ctw-about-story__p:last-child {
  margin-bottom: 0;
}

.ctw-about-values {
  padding: clamp(56px, 8vw, 80px) 0;
  background: var(--ctw-surface-alt);
}

.ctw-about-values__title {
  margin: 0 0 40px;
  font-size: clamp(26px, 4vw, 38px);
}

.ctw-co-final.ctw-about-final {
  padding-top: 30px;
  padding-bottom: clamp(64px, 9vw, 100px);
}

.ctw-about-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-about-stats li {
  padding: clamp(22px, 3vw, 32px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--ctw-radius-lg);
  background: rgba(255, 255, 255, 0.04);
}
.ctw-about-stats strong {
  display: block;
  margin-bottom: 6px;
  font-size: clamp(30px, 4vw, 46px);
  font-weight: 800;
  letter-spacing: -0.04em;
  line-height: 1;
  color: #fff;
}
.ctw-about-stats span {
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ctw-text-on-dark);
}
@media (max-width: 1023px) {
  .ctw-about-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.ctw-partners-stats {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: clamp(32px, 4vw, 48px);
}
.ctw-partners-stats li {
  border-color: var(--ctw-line);
  background: #fff;
}
.ctw-partners-stats strong {
  color: var(--ctw-crimson);
}
.ctw-partners-stats span {
  color: var(--ctw-steel);
}
@media (max-width: 480px) {
  .ctw-partners-stats {
    grid-template-columns: minmax(0, 1fr);
  }
}

.ctw-partners-steps {
  margin-bottom: 32px;
}

.ctw-partners-cta {
  margin-top: 28px;
}

.ctw-legal-hero {
  padding: 54px 0 44px;
  border-bottom: 1px solid var(--ctw-line);
  background: var(--ctw-surface-alt);
}
.ctw-legal-hero h1 {
  margin: 0 0 12px !important;
}

.ctw-legal-wrap {
  max-width: 800px;
  margin: 0 auto;
  padding-right: 40px;
  padding-left: 40px;
}
@media (max-width: 760px) {
  .ctw-legal-wrap {
    padding-right: var(--ctw-gutter);
    padding-left: var(--ctw-gutter);
  }
}

.ctw-legal-hero__kicker {
  margin: 0 0 16px !important;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}

.ctw-legal-hero__title {
  font-size: clamp(32px, 5vw, 46px) !important;
  font-weight: 800 !important;
  letter-spacing: -0.035em !important;
  line-height: 1.05 !important;
}

.ctw-legal-hero__sub {
  margin: 0 !important;
  font-size: 16px;
  line-height: 1.55;
  color: var(--ctw-steel);
}

.ctw-legal-nav {
  margin-top: 24px;
}
.ctw-legal-nav a {
  text-decoration: none;
}

.ctw-legal {
  padding: 48px 0 90px;
}

.ctw-legal-doc {
  padding-top: 48px;
  padding-bottom: 90px;
}

.ctw-legal-body {
  max-width: 760px;
  font-size: 15.5px;
  line-height: 1.7;
  color: #33414A;
}
.ctw-legal-doc .ctw-legal-body {
  max-width: none;
}
.ctw-legal-doc .ctw-legal-body > ol > li:first-child > h2:first-child {
  margin-top: 40px !important;
}
.ctw-legal-body h2 {
  scroll-margin-top: calc(var(--ctw-nav-h) + 24px);
  margin: 40px 0 16px !important;
  padding-top: 14px;
  border-top: 1px solid var(--ctw-line);
  font-size: 22px !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.3 !important;
  color: var(--ctw-dark);
}
.ctw-legal-body h3 {
  margin: 24px 0 10px !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--ctw-dark);
}
.ctw-legal-body--privacy h2, .ctw-legal-body--cookies-terms h2 {
  margin: 38px 0 14px !important;
  font-size: 21px !important;
}
.ctw-legal-body--privacy h3, .ctw-legal-body--cookies-terms h3 {
  margin: 22px 0 10px !important;
  font-size: 16px !important;
}
.ctw-legal-body p {
  margin: 0 0 16px !important;
}
.ctw-legal-body ul {
  margin: 0 0 18px;
  padding-left: 0;
  list-style: none;
}
.ctw-legal-body ul > li {
  position: relative;
  margin: 0 0 10px;
  padding-left: 22px;
  font-size: 15px;
  line-height: 1.6;
}
.ctw-legal-body ul > li::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: var(--ctw-crimson);
}
.ctw-legal-body a {
  font-weight: 600;
  color: var(--ctw-indigo);
  text-decoration: none;
  overflow-wrap: anywhere;
}
.ctw-legal-body a:hover {
  text-decoration: underline;
}
.ctw-legal-body strong,
.ctw-legal-body b {
  font-weight: 700;
  color: var(--ctw-dark);
}
.ctw-legal-body > :first-child,
.ctw-legal-body > ol > li:first-child > h2:first-child {
  margin-top: 0 !important;
}
.ctw-legal-body ol {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-legal-body.is-numbered > ol {
  counter-reset: ctw-legal;
}
.ctw-legal-body.is-numbered > ol > li {
  counter-increment: ctw-legal;
}
.ctw-legal-body.is-numbered > ol > li > h2::before {
  content: counter(ctw-legal) ". ";
}

.ctw-legal-updated {
  margin: 32px 0 0 !important;
  padding-top: 20px;
  border-top: 1px solid var(--ctw-line);
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  line-height: 1.6;
  color: var(--ctw-steel-300);
}

.ctw-legal-cookies {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 14px;
  margin: 6px 0 24px;
}

.ctw-legal-cookie {
  overflow: hidden;
  border: 1px solid var(--ctw-line);
  border-radius: 14px;
  background: #fff;
}
.ctw-legal-cookie h3 {
  margin: 0 !important;
  padding: 14px 16px;
  border-bottom: 1px solid var(--ctw-line);
  background: var(--ctw-surface-alt);
  font-family: var(--ctw-font-mono);
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.4;
  color: var(--ctw-crimson) !important;
}
.ctw-legal-cookie p {
  margin: 0 0 6px !important;
  font-size: 13px;
  line-height: 1.5;
  color: #33414A;
}

.ctw-legal-cookie__body {
  padding: 16px;
}

.ctw-legal-cookie__desc {
  margin: 0 !important;
  color: var(--ctw-steel) !important;
}

.ctw-legal-pgp {
  max-width: 100%;
  margin: 12px 0 0;
  padding: 18px 20px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  border-radius: var(--ctw-radius);
  background: var(--ctw-dark);
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  line-height: 1.5;
  color: #DFE3E5;
}

.ctw-doc-steps {
  display: grid;
  gap: 28px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
  counter-reset: ctw-doc-step;
}
.ctw-doc-steps > li {
  position: relative;
  padding-left: 48px;
  counter-increment: ctw-doc-step;
}
.ctw-doc-steps > li::before {
  content: counter(ctw-doc-step);
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--ctw-crimson);
  font-size: 14px;
  font-weight: 700;
  color: #fff;
}
.ctw-doc-steps img {
  display: block;
  max-width: 100%;
  margin-top: 14px;
  border: 1px solid var(--ctw-line);
  border-radius: var(--ctw-radius);
  box-shadow: 0 16px 40px rgba(29, 35, 38, 0.1);
}

.ctw-auth {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  min-height: 100vh;
}
@media (max-width: 880px) {
  .ctw-auth {
    grid-template-columns: minmax(0, 1fr);
  }
}

.ctw-auth__main {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
@media (max-width: 880px) {
  .ctw-auth__main {
    min-height: 0;
  }
}

.ctw-auth__brand {
  padding: 28px 40px;
}
@media (max-width: 760px) {
  .ctw-auth__brand {
    padding: 24px var(--ctw-gutter);
  }
}

.ctw-auth__logo {
  display: inline-flex;
}
.ctw-auth__logo img {
  display: block;
  width: auto;
  height: 30px;
}

.ctw-auth__body {
  display: flex;
  flex: 1;
  align-items: flex-start;
  justify-content: center;
  padding: 8px 40px 56px;
}
@media (max-width: 760px) {
  .ctw-auth__body {
    padding: 8px var(--ctw-gutter) 48px;
  }
}

.ctw-auth__panel {
  width: 100%;
  max-width: 410px;
}

.ctw-auth__title {
  margin: 0 0 18px !important;
  font-size: 32px !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em !important;
  line-height: 1.08 !important;
  text-align: center;
}
.ctw-auth__title--indigo {
  margin: 0 !important;
  font-size: 30px !important;
  text-align: left;
  color: var(--ctw-indigo) !important;
}

.ctw-auth__head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 6px;
}

.ctw-auth__back {
  font-size: 18px;
  line-height: 1;
  color: var(--ctw-steel);
  text-decoration: none;
}
.ctw-auth__back:hover {
  color: var(--ctw-dark);
}

.ctw-auth__switch {
  padding-top: 16px;
  border-top: 1px solid var(--ctw-line);
  text-align: center;
}
.ctw-auth__switch p {
  margin: 0 0 12px !important;
  font-size: 15px;
  color: var(--ctw-steel);
}

.ctw-auth__switch-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 13px;
  border: 1.5px solid var(--ctw-line);
  border-radius: 11px;
  background: #fff;
  font-size: 15px;
  font-weight: 700;
  color: var(--ctw-dark);
  text-decoration: none;
  transition: border-color var(--ctw-fast) ease;
}
.ctw-auth__switch-btn span {
  color: var(--ctw-indigo);
}
.ctw-auth__switch-btn:hover {
  border-color: var(--ctw-dark);
  color: var(--ctw-dark);
}

.ctw-auth__lead {
  margin: 22px 0 !important;
  padding-top: 22px;
  border-top: 1px solid var(--ctw-line);
  font-size: 15px;
  line-height: 1.55;
  color: var(--ctw-text-body);
}
.ctw-auth__lead--plain {
  margin: 0 0 24px !important;
  padding-top: 0;
  border-top: 0;
  line-height: 1.5;
}

.ctw-auth__head + .ctw-auth__lead--plain {
  margin-top: 0 !important;
}

.ctw-auth__providers {
  display: grid;
  gap: 10px;
  margin-bottom: 24px;
}
.ctw-auth__providers form {
  margin: 0;
}

.ctw-auth__provider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  padding: 13px;
  border: 1.5px solid var(--ctw-line);
  border-radius: 11px;
  background: #fff;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--ctw-dark);
  cursor: pointer;
  transition: border-color var(--ctw-fast) ease, box-shadow var(--ctw-fast) ease;
}
.ctw-auth__provider:hover {
  border-color: var(--ctw-dark);
  box-shadow: 0 6px 16px rgba(29, 35, 38, 0.08);
}
.ctw-auth__provider:focus-visible {
  outline: 2px solid var(--ctw-crimson);
  outline-offset: 2px;
}

.ctw-auth__provider-icon {
  display: inline-flex;
  width: 20px;
  height: 20px;
}
.ctw-auth__provider-icon svg,
.ctw-auth__provider-icon img,
.ctw-auth__provider-icon .ctw-icon {
  width: 20px;
  height: 20px;
}

.ctw-auth__hint {
  margin: 0 0 16px !important;
  font-size: 14.5px;
  color: var(--ctw-text-body);
}

.ctw-auth__form {
  display: grid;
  gap: 16px;
}
.ctw-auth__form .ctw-field {
  margin: 0;
}
.ctw-auth__form .ctw-label {
  font-size: 13px;
}
.ctw-auth__form .ctw-input {
  min-height: 0;
  padding: 13px 15px;
  border: 1.5px solid var(--ctw-line);
  border-radius: 11px;
  font-size: 14.5px;
}
.ctw-auth__form .ctw-input:focus {
  border-color: var(--ctw-crimson);
}
.ctw-auth__form .ctw-input.error {
  border-color: var(--ctw-crimson);
}
.ctw-auth__form .ctw-btn--primary,
.ctw-auth__form .ctw-btn--secondary {
  min-height: 0;
  padding: 15px;
  border-radius: 999px;
  font-size: 16px;
}
.ctw-auth__form .ctw-btn--primary {
  box-shadow: 0 12px 28px rgba(219, 7, 60, 0.3);
}
.ctw-auth__form--register .ctw-label {
  color: var(--ctw-steel);
}

.ctw-auth__submit-row {
  margin-top: 10px;
  text-align: center;
}
.ctw-auth__submit-row .ctw-auth__submit {
  padding: 15px 44px;
}

.ctw-auth__forgot {
  justify-self: center;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--ctw-crimson);
  text-decoration: none;
}
.ctw-auth__forgot:hover {
  text-decoration: underline;
}

.ctw-auth__checks {
  display: grid;
  gap: 13px;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.ctw-auth__checks .ctw-check {
  gap: 10px;
  font-size: 13.5px;
  line-height: 1.5;
  color: var(--ctw-steel);
}
.ctw-auth__checks .ctw-check input[type=checkbox] {
  width: 16px;
  height: 16px;
  margin-top: 2px;
  border-radius: 4px;
  background-size: 11px;
}
.ctw-auth__checks a {
  font-weight: 600;
  color: var(--ctw-indigo);
  text-decoration: none;
}
.ctw-auth__checks a:hover {
  text-decoration: underline;
}
.ctw-auth__checks .is-missing input[type=checkbox] {
  border-color: var(--ctw-crimson);
  box-shadow: 0 0 0 3px rgba(219, 7, 60, 0.15);
}

.ctw-auth__form .ctw-auth__checks {
  margin-top: 6px;
}

.ctw-auth__secure {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin: 34px 0 0 !important;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  color: #C2CACD;
}
.ctw-auth__secure .ctw-icon {
  width: 13px;
  height: 13px;
}

.ctw-auth__aside {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  padding: 64px;
  background: radial-gradient(120% 120% at 80% 10%, #243089, #15181A 70%);
  color: #fff;
}
.ctw-auth__aside::before, .ctw-auth__aside::after {
  content: "";
  position: absolute;
  border-radius: 999px;
  pointer-events: none;
}
.ctw-auth__aside::before {
  top: -120px;
  right: -100px;
  width: 440px;
  height: 440px;
  background: radial-gradient(circle, rgba(219, 7, 60, 0.45), transparent 68%);
  filter: blur(46px);
}
.ctw-auth__aside::after {
  bottom: -140px;
  left: -80px;
  width: 380px;
  height: 380px;
  background: radial-gradient(circle, rgba(46, 196, 182, 0.3), transparent 70%);
  filter: blur(50px);
}
@media (max-width: 880px) {
  .ctw-auth__aside {
    display: none;
  }
}

.ctw-auth__aside-inner {
  position: relative;
  z-index: 1;
  max-width: 420px;
}
.ctw-auth__aside-inner h2 {
  margin: 0 0 18px !important;
  font-size: 38px !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em !important;
  line-height: 1.08 !important;
  color: #fff !important;
}

.ctw-auth__kicker {
  margin: 0 0 22px !important;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  letter-spacing: 0.04em;
  color: #A4B0F5;
}

.ctw-auth__aside-text {
  margin: 0 0 36px !important;
  font-size: 16.5px;
  line-height: 1.6;
  color: #AAB3B7;
  text-wrap: pretty;
}

.ctw-auth__ai {
  padding: 20px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(10px);
  animation: ctw-auth-float 6s ease-in-out infinite;
}
.ctw-auth__ai p {
  margin: 0 !important;
  font-size: 13.5px;
  line-height: 1.5;
  color: #DFE3E5;
}
.ctw-auth__ai i {
  display: inline-block;
  width: 7px;
  height: 14px;
  margin-left: 2px;
  vertical-align: -2px;
  background: #2EC4B6;
  animation: ctw-auth-caret 1s step-end infinite;
}

.ctw-auth__ai-head {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 14px;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  color: #A4B0F5;
}
.ctw-auth__ai-head span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-indigo));
  font-family: var(--ctw-font);
  font-size: 14px;
  color: #fff;
}

@keyframes ctw-auth-float {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
}
@keyframes ctw-auth-caret {
  50% {
    opacity: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ctw-auth__ai,
  .ctw-auth__ai i {
    animation: none;
  }
}
.ctw-auth__stats {
  display: flex;
  gap: 30px;
  margin: 40px 0 0;
  padding: 0;
  list-style: none;
}
.ctw-auth__stats strong {
  display: block;
  font-size: 24px;
  font-weight: 800;
  letter-spacing: -0.03em;
}
.ctw-auth__stats span {
  display: block;
  margin-top: 4px;
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #7D878C;
}

.ctw-auth__alert,
.ctw-auth__notice {
  margin: 0 0 20px;
  padding: 14px 16px;
  border-radius: 11px;
  font-size: 14px;
  line-height: 1.5;
}
.ctw-auth__alert p,
.ctw-auth__notice p {
  margin: 0 !important;
}
.ctw-auth__alert p + p,
.ctw-auth__notice p + p {
  margin-top: 8px !important;
}
.ctw-auth__alert a,
.ctw-auth__notice a {
  color: inherit;
  font-weight: 700;
}

.ctw-auth__alert {
  border: 1px solid rgba(219, 7, 60, 0.3);
  background: #FDEEF2;
  color: #9E0530;
}

.ctw-auth__notice {
  border: 1px solid var(--ctw-line);
  background: var(--ctw-surface-alt);
}
.ctw-auth__notice--warning {
  border-color: rgba(230, 164, 41, 0.4);
  background: #FFF7E6;
}

.ctw-auth__forgot-line {
  margin: 18px 0 0 !important;
  text-align: center;
}

.ctw-auth__title + form,
.ctw-auth__title + .ctw-auth__notice,
.ctw-auth__title + .ctw-auth__alert,
.ctw-auth__title + .ctw-auth__form {
  margin-top: 24px;
}

.ctw-auth__steps {
  margin-top: 24px;
  font-size: 14.5px;
}

.ctw-mgrid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(232px, 1fr));
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-mgrid > li {
  display: flex;
}
.ctw-mgrid--fit {
  grid-template-columns: repeat(auto-fit, minmax(232px, 1fr));
}

.ctw-mcard {
  display: block;
  flex: 1;
  padding: 22px;
  border: 1px solid var(--ctw-line);
  border-radius: 16px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.ctw-mcard:hover, .ctw-mcard:focus-visible {
  transform: translateY(-4px);
  box-shadow: 0 14px 30px rgba(29, 35, 38, 0.1);
}

.ctw-mcard__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  margin-bottom: 14px;
  border-radius: 12px;
  background: var(--ctw-crimson-50);
  color: var(--ctw-crimson);
}
.ctw-mcard__icon .ctw-icon {
  width: 26px;
  height: 26px;
}

.ctw-mcard__name {
  margin: 0 0 5px;
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.01em;
}

.ctw-mcard__desc {
  margin: 0;
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--ctw-steel);
}

.ctw-catx .ctw-container {
  max-width: calc(1240px + var(--ctw-gutter) * 2);
}

.ctw-catx-hero {
  padding-top: 72px;
  padding-bottom: 40px;
  text-align: center;
}
.ctw-catx-hero nav {
  max-width: 1100px;
  margin: 0 auto;
}

.ctw-catx-hero__title {
  max-width: 820px;
  margin: 0 auto 20px;
  font-size: clamp(36px, 6vw, 58px);
  font-weight: 800;
  line-height: 1.02;
  letter-spacing: -0.035em;
}

.ctw-catx-hero__kicker {
  display: block;
  margin-bottom: 20px;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}

.ctw-catx-accent {
  color: var(--ctw-crimson);
}

.ctw-catx-hero__lead {
  max-width: 600px;
  margin: 0 auto 28px;
  font-size: 18px;
  line-height: 1.55;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}

.ctw-catx-chips {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-catx-chips a {
  display: block;
  padding: 9px 15px;
  border: 1px solid var(--ctw-line);
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--ctw-text);
  text-decoration: none;
  transition: border-color var(--ctw-fast) ease, color var(--ctw-fast) ease;
}
.ctw-catx-chips a:hover {
  border-color: var(--ctw-crimson);
  color: var(--ctw-crimson);
}

.ctw-catx-cat {
  position: relative;
  padding-top: 34px;
  padding-bottom: 34px;
  scroll-margin-top: calc(var(--ctw-nav-h) + 8px);
}

.ctw-catx-anchor {
  position: absolute;
  top: 34px;
  scroll-margin-top: calc(var(--ctw-nav-h) + 8px);
}

.ctw-catx-cat__head {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 24px;
}
.ctw-catx-cat__head h2 {
  margin: 0;
  font-size: clamp(24px, 3.5vw, 32px);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.03em;
}

.ctw-catx-bar {
  flex: none;
  width: 40px;
  height: 6px;
  border-radius: 999px;
  background: var(--ctw-crimson);
}
.ctw-catx-bar--indigo {
  background: var(--ctw-indigo);
}
.ctw-catx-bar--amber {
  background: var(--ctw-amber);
}
.ctw-catx-bar--teal {
  background: var(--ctw-teal);
}

.ctw-catx-cat__desc {
  margin: 0 0 26px;
  font-size: 16px;
  line-height: 1.55;
  color: var(--ctw-text-body);
}

.ctw-catx-ai-wrap {
  margin-top: 44px;
}

.ctw-catx-ai {
  position: relative;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  align-items: center;
  gap: 36px;
  padding: 44px;
  overflow: hidden;
  border-radius: 24px;
  background: linear-gradient(135deg, #1D2326, #2A1822);
}
@media (max-width: 760px) {
  .ctw-catx-ai {
    grid-template-columns: minmax(0, 1fr);
    padding: 32px 24px;
  }
}

.ctw-catx-ai__glow,
.ctw-fi-ai__glow {
  position: absolute;
  top: -60px;
  right: -40px;
  width: 300px;
  height: 300px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(219, 7, 60, 0.5), transparent 70%);
  filter: blur(40px);
  pointer-events: none;
}

.ctw-catx-ai__copy,
.ctw-fi-ai__copy {
  position: relative;
}
.ctw-catx-ai__copy h2,
.ctw-fi-ai__copy h2 {
  margin: 0 0 14px;
  font-size: clamp(26px, 3.6vw, 36px);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.03em;
  color: #fff;
}
.ctw-catx-ai__copy p,
.ctw-fi-ai__copy p {
  margin: 0 0 24px;
  font-size: 16.5px;
  line-height: 1.55;
  color: #AAB3B7;
  text-wrap: pretty;
}

.ctw-catx-ai__copy .ctw-catx-ai__badge,
.ctw-fi-ai__copy .ctw-fi-ai__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 18px;
  padding: 6px 12px;
  border: 1px solid rgba(68, 92, 173, 0.45);
  border-radius: 999px;
  background: rgba(68, 92, 173, 0.2);
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  line-height: 1.4;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #A4B0F5;
}

.ctw-catx-ai__items {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-catx-ai__items li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.05);
  font-size: 14.5px;
  font-weight: 600;
  color: #fff;
}
.ctw-catx-ai__items span {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-indigo));
  font-size: 13px;
  color: #fff;
}

.ctw-catx-btn {
  display: inline-block;
  padding: 14px 22px;
  border-radius: 11px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
  transition: transform var(--ctw-fast) ease, box-shadow var(--ctw-fast) ease;
}
.ctw-catx-btn:hover {
  transform: translateY(-1px);
}
.ctw-catx-btn--light {
  background: #fff;
  color: var(--ctw-dark);
}
.ctw-catx-btn--lg {
  padding: 15px 26px;
  border-radius: 12px;
  white-space: nowrap;
}
.ctw-catx-btn--primary {
  padding: 17px 30px;
  border-radius: 12px;
  background: var(--ctw-crimson);
  box-shadow: 0 14px 30px rgba(219, 7, 60, 0.3);
  font-size: 16px;
  color: #fff;
}

.ctw-catx-custom-wrap {
  margin-top: 24px;
}

.ctw-catx-custom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 48px;
  border-radius: 24px;
  --ctw-text-on-dark: var(--ctw-on-indigo-muted);
  background: var(--ctw-indigo-deep);
  color: #fff;
}
.ctw-catx-custom > div {
  max-width: 560px;
}
.ctw-catx-custom h2 {
  margin: 0 0 10px;
  font-size: clamp(24px, 3.5vw, 32px);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.03em;
  color: #fff;
}
.ctw-catx-custom p {
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
  color: var(--ctw-steel-300);
}
@media (max-width: 760px) {
  .ctw-catx-custom {
    padding: 32px 24px;
  }
}

.ctw-catx-final {
  padding-top: 90px;
  padding-bottom: 90px;
  text-align: center;
}
.ctw-catx-final h2 {
  max-width: 720px;
  margin: 0 auto 16px;
  font-size: clamp(34px, 6vw, 54px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.035em;
}
.ctw-catx-final p {
  max-width: 460px;
  margin: 0 auto 30px;
  font-size: 18px;
  line-height: 1.55;
  color: var(--ctw-text-body);
}

.ctw-cat-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 24px;
  font-size: 13px;
  color: var(--ctw-steel);
}
.ctw-cat-breadcrumb a {
  color: var(--ctw-steel);
  text-decoration: none;
}
.ctw-cat-breadcrumb a:hover {
  color: var(--ctw-crimson);
}
.ctw-cat-breadcrumb [aria-current] {
  color: var(--ctw-text);
  font-weight: 600;
}

.ctw-cat-custom {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
}
.ctw-cat-custom > div {
  flex: 1;
}
.ctw-cat-custom h2,
.ctw-cat-custom p {
  margin: 0 !important;
}
.ctw-cat-custom h2 {
  margin-bottom: 6px !important;
}
@media (max-width: 760px) {
  .ctw-cat-custom {
    flex-direction: column;
    align-items: flex-start;
  }
}

.ctw-landing-header {
  background: #fff;
  border-bottom: 1px solid var(--ctw-line);
}

.ctw-landing-header__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  max-width: 1100px;
  margin: 0 auto;
  padding: 54px 40px 48px;
  text-align: center;
}
@media (max-width: 760px) {
  .ctw-landing-header__inner {
    padding: 40px 20px 36px;
  }
}

.ctw-landing-header__logo {
  display: block;
  line-height: 0;
}
.ctw-landing-header__logo img {
  display: block;
  height: 34px;
  width: auto;
}

.ctw-landing-header__claim {
  margin: 0;
  font-family: var(--ctw-font-mono);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.4;
  color: var(--ctw-crimson);
}

.ctw-landing-footer {
  position: relative;
  overflow: hidden;
  background: var(--ctw-dark);
  color: #9AA7AD;
}

.ctw-landing-footer__glow {
  position: absolute;
  bottom: -120px;
  left: 50%;
  width: 680px;
  max-width: 100%;
  height: 340px;
  border-radius: 999px 999px 0 0;
  background: radial-gradient(60% 80% at 50% 100%, rgba(219, 7, 60, 0.28), transparent 70%);
  transform: translateX(-50%);
  pointer-events: none;
}

.ctw-landing-footer__inner {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  max-width: 1100px;
  margin: 0 auto;
  padding: 54px 40px;
}
@media (max-width: 760px) {
  .ctw-landing-footer__inner {
    padding: 44px 20px;
  }
}

.ctw-landing-footer__logo {
  display: block;
  line-height: 0;
}
.ctw-landing-footer__logo img {
  display: block;
  height: 28px;
  width: auto;
}

.ctw-landing-footer__copy {
  margin: 0;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  color: var(--ctw-steel);
}

.ctw-landing-footer__langs {
  display: flex;
  gap: 10px;
  margin: 0 0 0 auto;
  padding: 0;
  list-style: none;
}
.ctw-landing-footer__langs a,
.ctw-landing-footer__langs span {
  display: inline-block;
  padding: 6px 12px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--ctw-radius-pill);
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
  color: #9AA7AD;
  text-decoration: none;
  transition: color var(--ctw-fast) ease, border-color var(--ctw-fast) ease;
}
.ctw-landing-footer__langs a:hover {
  border-color: rgba(255, 255, 255, 0.45);
  color: #fff;
}
.ctw-landing-footer__langs .is-selected {
  background: #fff;
  color: var(--ctw-dark);
}

.ctw-mr-dashboard {
  padding: 24px;
  border-radius: 20px;
  box-shadow: 0 30px 70px rgba(29, 35, 38, 0.22);
}
.ctw-mr-dashboard .ctw-prod-stats__head em {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0;
  border: 0;
  background: none;
}
.ctw-mr-dashboard .ctw-prod-stats__head i {
  width: 7px;
  height: 7px;
  border-radius: 99px;
  background: var(--ctw-teal);
}
.ctw-mr-dashboard .ctw-prod-stats__grid {
  gap: 12px;
  margin-bottom: 16px;
}
.ctw-mr-dashboard .ctw-prod-stats__grid div {
  padding: 16px;
  border-radius: 13px;
}
.ctw-mr-dashboard .ctw-prod-stats__grid strong {
  font-size: 24px;
}
.ctw-mr-dashboard .ctw-prod-stats__grid span {
  margin-top: 4px;
  font-size: 9px;
}

.ctw-mr-funnel {
  display: flex;
  flex-direction: column;
  gap: 7px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-mr-funnel li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 11px;
}
.ctw-mr-funnel span {
  flex: none;
  width: 80px;
  color: var(--ctw-steel-300);
}
.ctw-mr-funnel i {
  flex: 1;
  height: 18px;
  overflow: hidden;
  border-radius: 6px;
  background: #252C30;
}
.ctw-mr-funnel b {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--ctw-crimson), var(--ctw-indigo));
}
.ctw-mr-funnel strong {
  flex: none;
  width: 46px;
  font-weight: 700;
  text-align: right;
}

.ctw-mr-section {
  padding: 84px 0;
}

.ctw-mr-paths__head {
  margin-bottom: 36px;
}

.ctw-mr-final .ctw-section {
  padding: 90px 0;
}

.ctw-mr-final .ctw-sec-final__lead {
  max-width: 460px;
}

.ctw-contact {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(340px, 100%), 1fr));
  gap: 56px;
  align-items: start;
  padding-top: clamp(48px, 7vw, 72px);
  padding-bottom: clamp(64px, 9vw, 90px);
}
@media (max-width: 760px) {
  .ctw-contact {
    gap: 40px;
  }
}

.ctw-contact__title {
  margin: 0 0 20px;
  font-size: clamp(36px, 5.5vw, 54px);
  line-height: 1.02;
  letter-spacing: -0.035em;
}

.ctw-contact__title .ctw-contact__kicker {
  display: block;
  width: fit-content;
  margin-bottom: 20px;
  line-height: 1.4;
  letter-spacing: 0.04em;
}

.ctw-contact__lead {
  max-width: 440px;
  margin: 0 0 36px;
  font-size: 18px;
  line-height: 1.6;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}

.ctw-contact__channels {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-contact__channels li {
  display: flex;
  align-items: center;
  gap: 14px;
}

.ctw-contact__tile {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: var(--ctw-crimson-50);
  color: var(--ctw-crimson);
}
.ctw-contact__tile .ctw-icon {
  width: 22px;
  height: 22px;
}

.ctw-contact__label {
  display: block;
  font-size: 13px;
  color: var(--ctw-steel);
}

.ctw-contact__value {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--ctw-dark);
  text-decoration: none;
}
.ctw-contact__value:hover {
  color: var(--ctw-crimson);
}

.ctw-contact__panel {
  padding: clamp(24px, 4vw, 36px);
  border: 1px solid var(--ctw-line);
  border-radius: var(--ctw-radius-lg);
  background: #fff;
  box-shadow: var(--ctw-shadow-card);
}
.ctw-contact__panel h2 {
  margin: 0 0 10px;
  font-size: 22px;
  letter-spacing: -0.02em;
  line-height: 1.25;
}

.ctw-contact__panel-text {
  margin: 0 0 22px;
  font-size: 15px;
  line-height: 1.55;
  color: var(--ctw-steel);
}

.ctw-contact__field {
  display: block;
  margin-bottom: 16px;
  color: var(--ctw-dark);
  text-decoration: none;
}
.ctw-contact__field:hover .ctw-contact__field-value {
  border-color: var(--ctw-crimson);
}

.ctw-contact__field-label {
  display: block;
  margin-bottom: 7px;
  font-size: 13px;
  font-weight: 600;
}

.ctw-contact__field-value {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border: 1.5px solid var(--ctw-line);
  border-radius: 10px;
  font-size: 14px;
  transition: border-color var(--ctw-fast) ease;
}
.ctw-contact__field-value .ctw-icon {
  width: 18px;
  height: 18px;
  color: var(--ctw-steel);
}

.ctw-contact__send {
  display: block;
  padding: 15px;
  border-radius: var(--ctw-radius);
  background: var(--ctw-crimson);
  box-shadow: var(--ctw-shadow-cta);
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  color: #fff !important;
  text-decoration: none;
  transition: background-color var(--ctw-fast) ease;
}
.ctw-contact__send:hover {
  background: var(--ctw-crimson-600);
}

.ctw-contact__demo {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-top: 26px;
  padding-top: 24px;
  border-top: 1px solid var(--ctw-line);
}
.ctw-contact__demo strong {
  display: block;
  margin-bottom: 4px;
  font-size: 16px;
  letter-spacing: -0.01em;
}
.ctw-contact__demo p {
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 1.5;
  color: var(--ctw-steel);
}

.ctw-contact__demo-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  font-weight: 700;
  color: var(--ctw-crimson) !important;
  text-decoration: none;
}
.ctw-contact__demo-link .ctw-icon {
  width: 16px;
  height: 16px;
  transition: transform var(--ctw-base) var(--ctw-ease);
}
.ctw-contact__demo-link:hover .ctw-icon {
  transform: translateX(3px);
}

.ctw-contact__phone {
  margin: 22px 0 0;
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--ctw-steel);
}
.ctw-contact__phone a {
  font-weight: 600;
  color: var(--ctw-dark);
  white-space: nowrap;
}

.ctw-co-hero__title.ctw-jobs-hero__title {
  font-size: clamp(40px, 7vw, 64px);
}

.ctw-jobs-perks {
  padding-top: 20px;
  padding-bottom: clamp(56px, 7vw, 70px);
}

.ctw-co-cards.ctw-jobs-perks__grid {
  grid-template-columns: repeat(auto-fit, minmax(248px, 1fr));
  gap: 16px;
}
.ctw-co-cards.ctw-jobs-perks__grid .ctw-co-card {
  padding: 28px;
}
.ctw-co-cards.ctw-jobs-perks__grid h3 {
  margin-bottom: 8px;
  font-size: 17px;
}
.ctw-co-cards.ctw-jobs-perks__grid p {
  font-size: 14px;
}

.ctw-jobs-openings {
  background: var(--ctw-surface-alt);
}

.ctw-jobs-openings__inner {
  max-width: calc(920px + var(--ctw-gutter) * 2);
  padding-top: clamp(56px, 8vw, 80px);
  padding-bottom: clamp(56px, 8vw, 80px);
}

.ctw-jobs-openings__title {
  margin: 0 0 32px;
  font-size: clamp(28px, 4.5vw, 40px);
  line-height: 1.04;
  text-align: center;
}

.ctw-jobs-list {
  display: grid;
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ctw-jobs-card {
  padding: clamp(28px, 5vw, 48px);
  border: 1px solid var(--ctw-line);
  border-radius: 20px;
  background: #fff;
  text-align: center;
}
.ctw-jobs-card h3 {
  margin: 0 0 12px;
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.25;
}
.ctw-jobs-card p {
  max-width: 520px;
  margin: 0 auto 26px;
  font-size: 16px;
  line-height: 1.6;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}

.ctw-jobs-empty__emoji {
  margin-bottom: 16px;
  font-size: 40px;
  line-height: 1.2;
}

.ctw-jobs-card__btn {
  display: inline-block;
  padding: 14px 24px;
  border-radius: 11px;
  background: var(--ctw-crimson);
  font-size: 15px;
  font-weight: 700;
  color: #fff !important;
  text-decoration: none;
  transition: background-color var(--ctw-fast) ease;
}
.ctw-jobs-card__btn:hover {
  background: var(--ctw-crimson-600);
}

.ctw-int .ctw-int-btn {
  display: inline-block;
  padding: 16px 26px;
  border: 1.5px solid transparent;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
  transition: transform var(--ctw-base) var(--ctw-ease), background-color var(--ctw-fast) ease, border-color var(--ctw-fast) ease;
}
.ctw-int .ctw-int-btn:hover {
  transform: translateY(-1px);
}
.ctw-int .ctw-int-btn--primary {
  background: var(--ctw-crimson);
  color: #fff;
  box-shadow: 0 12px 28px rgba(219, 7, 60, 0.32);
}
.ctw-int .ctw-int-btn--primary:hover {
  background: var(--ctw-crimson-600);
}
.ctw-int .ctw-int-btn--outline {
  padding: 16px 22px;
  border-color: #D7DDE0;
  font-weight: 600;
  color: var(--ctw-dark);
}
.ctw-int .ctw-int-btn--outline:hover {
  border-color: var(--ctw-dark);
}
.ctw-int .ctw-int-btn--light {
  padding: 16px 28px;
  border: 0;
  background: #fff;
  color: var(--ctw-dark);
}
.ctw-int .ctw-int-btn--ghost {
  padding: 16px 24px;
  border: 1px solid rgba(255, 255, 255, 0.25);
  font-weight: 600;
  color: #fff;
}
.ctw-int .ctw-int-btn--ghost:hover {
  border-color: rgba(255, 255, 255, 0.6);
}

.ctw-int-hero {
  padding-top: 74px;
  padding-bottom: 56px;
}
@media (max-width: 760px) {
  .ctw-int-hero {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}

.ctw-int-hero__kicker {
  margin: 0 0 20px;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}

.ctw-int-hero__title {
  max-width: 820px;
  margin: 0 0 22px;
  font-size: clamp(38px, 6vw, 58px);
  line-height: 1.04;
  letter-spacing: -0.035em;
}

.ctw-int-hero__lead {
  max-width: 600px;
  margin: 0 0 32px;
  font-size: 19px;
  line-height: 1.55;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}

.ctw-int-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 48px;
}

.ctw-int-hero__stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 20px;
  margin: 0;
  padding: 36px 0 0;
  border-top: 1px solid var(--ctw-line);
  list-style: none;
}
.ctw-int-hero__stats strong {
  display: block;
  font-size: 34px;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.2;
  color: var(--ctw-indigo);
}
.ctw-int-hero__stats span {
  display: block;
  margin-top: 4px;
  font-size: 13px;
  color: var(--ctw-steel);
}

.ctw-int-solutions {
  background: var(--ctw-surface-alt);
}
.ctw-int-solutions > .ctw-container {
  padding-top: 80px;
  padding-bottom: 80px;
}
@media (max-width: 760px) {
  .ctw-int-solutions > .ctw-container {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}

.ctw-int-head {
  max-width: 600px;
  margin: 0 auto 44px;
  text-align: center;
}

.ctw-int-head__kicker {
  margin: 0 0 14px;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}

.ctw-int-head__title {
  margin: 0 0 12px;
  font-size: clamp(28px, 4.5vw, 40px);
  line-height: 1.04;
}

.ctw-int-head__intro {
  margin: 0;
  font-size: 17px;
  line-height: 1.5;
  color: var(--ctw-text-body);
}

.ctw-int-tabs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-bottom: 36px;
}

.ctw-int-tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  border: 2px solid var(--ctw-line);
  border-radius: var(--ctw-radius-pill);
  background: #fff;
  font-family: var(--ctw-font);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  color: var(--ctw-text-body);
  cursor: pointer;
  transition: border-color var(--ctw-fast) ease, background-color var(--ctw-fast) ease, color var(--ctw-fast) ease;
}
.ctw-int-tab:hover {
  border-color: #C2CACD;
}
.ctw-int-tab.is-active {
  border-color: var(--ctw-indigo);
  background: var(--ctw-indigo);
  color: #fff;
}

.ctw-int-tab__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: var(--ctw-radius-pill);
  background: #F0F2F3;
  font-size: 12px;
}
.is-active .ctw-int-tab__num {
  background: rgba(255, 255, 255, 0.2);
}

.ctw-int-panel {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  overflow: hidden;
  border: 1px solid var(--ctw-line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 20px 50px rgba(29, 35, 38, 0.08);
}
.ctw-int-panel[hidden] {
  display: none;
}
@media (max-width: 760px) {
  .ctw-int-panel {
    grid-template-columns: minmax(0, 1fr);
  }
}

.ctw-int-panel__visual {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 48px;
  background: linear-gradient(135deg, #445CAD, #3A4F96);
  color: #fff;
  text-align: center;
}
@media (max-width: 760px) {
  .ctw-int-panel__visual {
    padding: 36px 24px;
  }
}

.ctw-int-panel__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 96px;
  height: 96px;
  margin-bottom: 24px;
  border-radius: var(--ctw-radius-pill);
  background: rgba(255, 255, 255, 0.15);
}
.ctw-int-panel__icon .ctw-icon {
  width: 46px;
  height: 46px;
}

.ctw-int-panel__tags {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-int-panel__tags li {
  padding: 7px 14px;
  border-radius: var(--ctw-radius-pill);
  background: rgba(255, 255, 255, 0.2);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
}

.ctw-int-panel__body {
  padding: 48px;
}
@media (max-width: 760px) {
  .ctw-int-panel__body {
    padding: 32px 24px;
  }
}
.ctw-int-panel__body h3 {
  margin: 0 0 16px;
  font-size: clamp(22px, 3vw, 28px);
  line-height: 1.25;
  letter-spacing: -0.02em;
}
.ctw-int-panel__body > p {
  margin: 0 0 26px;
  font-size: 16px;
  line-height: 1.7;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}

.ctw-int-panel__features {
  display: flex;
  flex-direction: column;
  gap: 13px;
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
}
.ctw-int-panel__features li {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  font-size: 15px;
  line-height: 1.5;
  color: var(--ctw-dark);
}
.ctw-int-panel__features span {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: var(--ctw-radius-pill);
  background: var(--ctw-crimson-50);
  font-size: 13px;
  font-weight: 800;
  color: var(--ctw-crimson);
}

.ctw-int-panel__link {
  font-size: 15px;
  font-weight: 700;
  color: var(--ctw-indigo);
  text-decoration: none;
}
.ctw-int-panel__link:hover {
  text-decoration: underline;
}

.ctw-int-partners {
  padding-top: 72px;
  padding-bottom: 72px;
  text-align: center;
}
@media (max-width: 760px) {
  .ctw-int-partners {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}

.ctw-int-partners__title {
  margin: 0 0 28px;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1.5;
  text-transform: uppercase;
  color: var(--ctw-steel);
}

.ctw-int-partners__names {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 18px 36px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-int-partners__names li {
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.01em;
  line-height: 1.3;
  color: #C2CACD;
}
@media (max-width: 760px) {
  .ctw-int-partners__names {
    gap: 14px 28px;
  }
  .ctw-int-partners__names li {
    font-size: 19px;
  }
}

.ctw-int-cta {
  --ctw-text-on-dark: var(--ctw-on-indigo-muted);
  background: var(--ctw-indigo-deep);
  color: #fff;
}

.ctw-int-cta__inner {
  max-width: 900px;
  margin: 0 auto;
  padding: 90px 40px;
  text-align: center;
}
@media (max-width: 760px) {
  .ctw-int-cta__inner {
    padding: 64px 20px;
  }
}

.ctw-int-cta__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 26px;
  padding: 7px 14px;
  border: 1px solid rgba(68, 92, 173, 0.4);
  border-radius: var(--ctw-radius-pill);
  background: rgba(68, 92, 173, 0.2);
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  line-height: 1.3;
  color: #A4B0F5;
}

.ctw-int-cta__title {
  max-width: 640px;
  margin: 0 auto 16px;
  font-size: clamp(30px, 5vw, 46px);
  line-height: 1.08;
}

.ctw-int-cta__text {
  max-width: 520px;
  margin: 0 auto 32px;
  font-size: 18px;
  line-height: 1.25;
  color: #9AA7AD;
}

.ctw-int-cta__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
}

.ctw-int-resources {
  max-width: 1000px;
  margin: 0 auto;
  padding: 84px 40px;
}
@media (max-width: 760px) {
  .ctw-int-resources {
    padding: 56px 20px;
  }
}

.ctw-int-resources__title {
  margin: 0 0 8px;
  font-size: clamp(24px, 3.5vw, 32px);
  line-height: 1.15;
}

.ctw-int-resources__intro {
  margin: 0 0 28px;
  font-size: 16px;
  line-height: 1.5;
  color: var(--ctw-steel);
}

.ctw-int-resources__list {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ctw-int-resource {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 22px 26px;
  border: 1px solid var(--ctw-line);
  border-radius: 14px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.ctw-int-resource:hover {
  transform: translateX(6px);
  box-shadow: 0 10px 24px rgba(29, 35, 38, 0.08);
}
@media (max-width: 760px) {
  .ctw-int-resource {
    gap: 14px;
    padding: 18px;
  }
}

.ctw-int-resource__icon {
  display: flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 12px;
  background: #EEF1FB;
  color: var(--ctw-crimson);
}
.ctw-int-resource__icon .ctw-icon {
  width: 22px;
  height: 22px;
}

.ctw-int-resource__text {
  flex: 1;
  min-width: 0;
}
.ctw-int-resource__text h3 {
  margin: 0 0 4px;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1.3;
}
.ctw-int-resource__text p {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.45;
  color: var(--ctw-steel);
}

.ctw-int-resource__arrow {
  flex: none;
  font-size: 18px;
  color: var(--ctw-crimson);
}

@keyframes ctw-fi-bob {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-7px);
  }
}
.ctw-fi-label {
  margin: 0 0 16px;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  line-height: 1.4;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}
.ctw-fi-label--indigo {
  margin-bottom: 14px;
  color: var(--ctw-indigo);
}

.ctw-fi-h2 {
  margin: 0;
  font-size: clamp(28px, 4.5vw, 42px);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -0.03em;
}

.ctw-fi-link {
  font-size: 14px;
  font-weight: 700;
  color: var(--ctw-crimson);
  text-decoration: none;
}
.ctw-fi-link:hover {
  text-decoration: underline;
}

.ctw-fi-breadcrumb {
  padding-top: 20px;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  line-height: 1.5;
  color: var(--ctw-steel);
}
.ctw-fi-breadcrumb a {
  color: var(--ctw-steel);
  text-decoration: none;
}
.ctw-fi-breadcrumb a:hover {
  color: var(--ctw-crimson);
}
.ctw-fi-breadcrumb > span[aria-hidden] {
  margin: 0 8px;
}
.ctw-fi-breadcrumb [aria-current] {
  color: var(--ctw-crimson);
}

.ctw-fi-hero {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
  align-items: center;
  gap: 56px;
  padding-top: 40px;
  padding-bottom: 64px;
}
@media (max-width: 760px) {
  .ctw-fi-hero {
    grid-template-columns: minmax(0, 1fr);
    gap: 48px;
  }
}

.ctw-fi-hero__title {
  margin: 0 0 22px;
  font-size: clamp(38px, 6vw, 60px);
  font-weight: 800;
  line-height: 1.02;
  letter-spacing: -0.035em;
}

.ctw-fi-kicker {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 22px;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}

.ctw-fi-kicker__tile {
  display: flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 13px;
  background: var(--ctw-crimson-50);
}
.ctw-fi-kicker__tile .ctw-icon {
  width: 28px;
  height: 28px;
}

.ctw-fi-accent {
  color: var(--ctw-crimson);
}

.ctw-fi-hero__sub {
  max-width: 520px;
  margin: 0 0 32px;
  font-size: 19px;
  line-height: 1.55;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}
.ctw-fi-hero__sub br {
  display: none;
}
.ctw-fi-hero__sub b,
.ctw-fi-hero__sub strong {
  font-weight: 600;
  color: var(--ctw-text);
}

.ctw-fi-plans {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin: 18px 0 0 !important;
  font-size: 14px;
  color: var(--ctw-text-body);
}
.ctw-fi-plans .ctw-icon {
  width: 18px;
  height: 18px;
  color: var(--ctw-teal-ink);
}
.ctw-fi-plans a {
  font-weight: 600;
  color: var(--ctw-indigo);
  text-decoration: none;
}
.ctw-fi-plans a:hover {
  text-decoration: underline;
}

.ctw-fi-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}
.ctw-fi-actions--center {
  justify-content: center;
}

.ctw-fi-btn {
  display: inline-block;
  padding: 16px 26px;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
  transition: transform var(--ctw-fast) ease, border-color var(--ctw-fast) ease;
}
.ctw-fi-btn:hover {
  transform: translateY(-1px);
}
.ctw-fi-btn--primary {
  background: var(--ctw-crimson);
  box-shadow: 0 12px 28px rgba(219, 7, 60, 0.32);
  color: #fff;
}
.ctw-fi-btn--ghost {
  padding: 14.5px 22px;
  border: 1.5px solid #D7DDE0;
  font-weight: 600;
  color: var(--ctw-dark);
}
.ctw-fi-btn--ghost:hover {
  border-color: var(--ctw-dark);
}

.ctw-fi-what {
  background: var(--ctw-surface-alt);
}

.ctw-fi-what__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
  align-items: center;
  gap: 56px;
  padding-top: 80px;
  padding-bottom: 80px;
}
@media (max-width: 760px) {
  .ctw-fi-what__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 40px;
    padding-top: 64px;
    padding-bottom: 64px;
  }
}

.ctw-fi-what__title {
  margin: 0 0 18px;
  font-size: clamp(28px, 4vw, 40px);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.03em;
}

.ctw-fi-what__p {
  margin: 0 0 16px;
  font-size: 17px;
  line-height: 1.6;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}
.ctw-fi-what__p:last-child {
  margin-bottom: 0;
}
.ctw-fi-what__p b,
.ctw-fi-what__p strong {
  font-weight: 600;
  color: var(--ctw-text);
}

.ctw-fi-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.ctw-fi-stat:last-child:nth-child(odd) {
  grid-column: 1/-1;
}

.ctw-fi-stat {
  padding: 24px;
  border: 1px solid var(--ctw-line);
  border-radius: 16px;
  background: #fff;
}
.ctw-fi-stat strong {
  display: block;
  font-size: 34px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.03em;
  color: var(--ctw-crimson);
}
.ctw-fi-stat span {
  display: block;
  margin-top: 6px;
  font-size: 13.5px;
  line-height: 1.4;
  color: var(--ctw-steel);
}
@media (max-width: 480px) {
  .ctw-fi-stat {
    padding: 18px;
  }
  .ctw-fi-stat strong {
    font-size: 28px;
  }
}

.ctw-fi-features {
  padding-top: 84px;
  padding-bottom: 84px;
}
@media (max-width: 760px) {
  .ctw-fi-features {
    padding-top: 64px;
    padding-bottom: 64px;
  }
}

.ctw-fi-features__head {
  max-width: 640px;
  margin-bottom: 44px;
}

.ctw-fi-features__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 18px;
}

.ctw-fi-feature {
  padding: 28px;
  border: 1px solid var(--ctw-line);
  border-radius: 18px;
  background: #fff;
}
.ctw-fi-feature h3 {
  margin: 0 0 9px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.02em;
}
.ctw-fi-feature p {
  margin: 0;
  font-size: 14.5px;
  line-height: 1.55;
  color: var(--ctw-steel);
}

.ctw-fi-feature__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-bottom: 16px;
  border-radius: 12px;
  background: var(--ctw-crimson-50);
  color: var(--ctw-crimson);
}
.ctw-fi-feature__icon .ctw-icon {
  width: 24px;
  height: 24px;
}

.ctw-fi-steps {
  margin-top: 18px;
  padding: 28px;
  border: 1px solid var(--ctw-line);
  border-radius: 18px;
  background: var(--ctw-surface-alt);
}

.ctw-fi-steps__head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px 20px;
  margin-bottom: 18px;
}
.ctw-fi-steps__head h3 {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.02em;
}

.ctw-fi-steps__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 10px 28px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-fi-steps__list li {
  display: flex;
  align-items: baseline;
  gap: 12px;
  font-size: 14.5px;
  line-height: 1.5;
  color: var(--ctw-text-body);
}
.ctw-fi-steps__list span {
  flex: none;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  color: var(--ctw-crimson);
}
.ctw-fi-steps__list strong,
.ctw-fi-steps__list b {
  font-weight: 600;
  color: var(--ctw-text);
}

.ctw-fi-ai-wrap {
  padding-bottom: 84px;
}

.ctw-fi-ai {
  position: relative;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  align-items: center;
  gap: 36px;
  padding: 44px;
  overflow: hidden;
  border-radius: 24px;
  background: linear-gradient(135deg, #1D2326, #2A1822);
}
@media (max-width: 760px) {
  .ctw-fi-ai {
    grid-template-columns: minmax(0, 1fr);
    padding: 32px 24px;
  }
}

.ctw-fi-ai__cta {
  display: inline-block;
  padding: 14px 22px;
  border-radius: 11px;
  background: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--ctw-dark);
  text-decoration: none;
}

.ctw-fi-chat {
  position: relative;
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  background: #15181A;
}
.ctw-fi-chat p {
  margin: 0;
  padding: 9px 12px;
  font-size: 12.5px;
}

.ctw-fi-chat__head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  color: #A4B0F5;
}
.ctw-fi-chat__head span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 7px;
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-indigo));
  font-family: var(--ctw-font);
  font-size: 12px;
  color: #fff;
}

.ctw-fi-chat .ctw-fi-chat__user {
  margin-bottom: 8px;
  border-radius: 11px 11px 4px 11px;
  background: var(--ctw-crimson);
  line-height: 1.4;
  color: #fff;
}

.ctw-fi-chat__reply {
  border-radius: 11px 11px 11px 4px;
  background: rgba(255, 255, 255, 0.06);
  line-height: 1.45;
  color: #DFE3E5;
}

.ctw-fi-uses {
  padding: 84px 0;
  --ctw-text-on-dark: var(--ctw-on-indigo-muted);
  background: var(--ctw-indigo-deep);
  color: #fff;
}
@media (max-width: 760px) {
  .ctw-fi-uses {
    padding: 64px 0;
  }
}

.ctw-fi-uses__title {
  max-width: 560px;
  margin-bottom: 40px;
}

.ctw-fi-uses__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 18px;
}

.ctw-fi-use {
  padding: 28px;
  border: 1px solid;
  border-radius: 18px;
  border-color: rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.07);
}
.ctw-fi-use h3 {
  margin: 0 0 10px;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.02em;
}
.ctw-fi-use p {
  margin: 0;
  font-size: 14.5px;
  line-height: 1.55;
  color: var(--ctw-steel-300);
}

.ctw-fi-use .ctw-fi-use__tag,
.ctw-fi-cases .ctw-fi-use__tag {
  margin: 0 0 12px;
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  line-height: 1.4;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #A4B0F5;
}

.ctw-fi-cases {
  margin-top: 32px;
  padding-top: 28px;
  border-top: 1px solid #333B40;
}
.ctw-fi-cases ul {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-fi-cases a {
  font-size: 15px;
  font-weight: 600;
  line-height: 1.45;
  color: #fff;
  text-decoration: none;
}
.ctw-fi-cases a span {
  color: var(--ctw-crimson);
}
.ctw-fi-cases a:hover {
  text-decoration: underline;
}

.ctw-fi-related {
  padding-top: 84px;
  padding-bottom: 84px;
}
@media (max-width: 760px) {
  .ctw-fi-related {
    padding-top: 64px;
    padding-bottom: 64px;
  }
}

.ctw-fi-related__head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 32px;
}
.ctw-fi-related__head h2 {
  margin: 0;
  font-size: clamp(24px, 3.5vw, 32px);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.03em;
}

.ctw-fi-final {
  padding-top: 10px;
  padding-bottom: 100px;
  text-align: center;
}
.ctw-fi-final h2 {
  max-width: 720px;
  margin: 0 auto 16px;
  font-size: clamp(34px, 6vw, 54px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.035em;
}
.ctw-fi-final p {
  max-width: 480px;
  margin: 0 auto 30px;
  font-size: 18px;
  line-height: 1.55;
  color: var(--ctw-text-body);
}
.ctw-fi-final .ctw-fi-btn--primary {
  padding: 17px 30px;
  box-shadow: 0 14px 30px rgba(219, 7, 60, 0.3);
}
.ctw-fi-final .ctw-fi-btn--ghost {
  padding: 15.5px 26px;
}

.ctw-mock {
  --mock-from: var(--ctw-crimson);
  --mock-to: var(--ctw-indigo);
  position: relative;
}
.ctw-mock--luck {
  --mock-from: #E6A429;
  --mock-to: var(--ctw-crimson);
}
.ctw-mock--skill {
  --mock-from: var(--ctw-indigo);
  --mock-to: #2EC4B6;
}
.ctw-mock--prediction {
  --mock-from: #1F9D6B;
  --mock-to: var(--ctw-indigo);
}
.ctw-mock--ugc {
  --mock-from: var(--ctw-crimson);
  --mock-to: #E6A429;
}
.ctw-mock--survey {
  --mock-from: #2EC4B6;
  --mock-to: var(--ctw-indigo);
}
.ctw-mock--codes {
  --mock-from: var(--ctw-indigo);
  --mock-to: var(--ctw-crimson);
}
.ctw-mock--calendar {
  --mock-from: var(--ctw-crimson);
  --mock-to: #8E1F5E;
}

.ctw-mock__card {
  overflow: hidden;
  border: 1px solid var(--ctw-line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 30px 70px rgba(29, 35, 38, 0.16);
}

.ctw-mock__head {
  position: relative;
  display: flex;
  align-items: flex-end;
  height: 120px;
  padding: 16px 20px;
  background: linear-gradient(135deg, var(--mock-from), var(--mock-to));
}

.ctw-mock__chip {
  position: absolute;
  top: 14px;
  right: 14px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 10px;
  border-radius: 7px;
  background: rgba(0, 0, 0, 0.22);
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  line-height: 1.3;
  color: #fff;
}
.ctw-mock__chip .ctw-icon {
  width: 12px;
  height: 12px;
}

.ctw-mock__brand {
  font-size: 16px;
  font-weight: 800;
  letter-spacing: -0.01em;
  color: #fff;
}

.ctw-mock__body {
  padding: 24px;
}

.ctw-mock__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.ctw-mock__step {
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ctw-indigo);
}

.ctw-mock__score {
  font-size: 12px;
  font-weight: 700;
}

.ctw-mock__question {
  margin-bottom: 18px;
  font-size: 21px;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: -0.02em;
}

.ctw-mock__answers {
  display: grid;
  gap: 10px;
}

.ctw-mock__answer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 16px;
  border: 1.5px solid #ECEEF0;
  border-radius: 12px;
  font-size: 14.5px;
  font-weight: 500;
  color: var(--ctw-text-body);
}
.ctw-mock__answer.is-on {
  border-color: var(--ctw-teal);
  background: var(--ctw-teal-50);
  font-weight: 700;
  color: var(--ctw-text);
}
.ctw-mock__answer.is-on span {
  color: var(--ctw-teal);
}
.ctw-mock--test .ctw-mock__answer.is-on {
  border-color: var(--ctw-indigo);
  background: #EEF1FA;
}
.ctw-mock--test .ctw-mock__answer.is-on span {
  color: var(--ctw-indigo);
}

.ctw-mock__progress {
  height: 8px;
  margin-top: 18px;
  overflow: hidden;
  border-radius: 999px;
  background: #ECEEF0;
}
.ctw-mock__progress span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--ctw-crimson), var(--ctw-indigo));
}

.ctw-mock__scale {
  display: grid;
  grid-template-columns: repeat(11, minmax(0, 1fr));
  gap: 5px;
}
.ctw-mock__scale > span {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  border: 1.5px solid #ECEEF0;
  border-radius: 8px;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--ctw-text-body);
}
.ctw-mock__scale > span.is-on {
  border-color: var(--ctw-teal);
  background: var(--ctw-teal-50);
  color: var(--ctw-text);
}

.ctw-mock__entries {
  display: grid;
  gap: 10px;
  margin: 0 0 16px;
  padding: 0;
  list-style: none;
}
.ctw-mock__entries li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border: 1.5px solid #ECEEF0;
  border-radius: 12px;
}
.ctw-mock__entries li:first-child {
  border-color: var(--ctw-teal);
  background: var(--ctw-teal-50);
}
.ctw-mock__entries div {
  display: grid;
  min-width: 0;
  font-size: 13px;
  line-height: 1.35;
}
.ctw-mock__entries span:not(.ctw-mock__avatar) {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--ctw-steel);
}

.ctw-mock__avatar {
  display: flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--mock-from), var(--mock-to));
  font-size: 13px;
  font-weight: 700;
  color: #fff;
}

.ctw-mock__button {
  padding: 13px;
  border-radius: 12px;
  background: var(--ctw-dark);
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  color: #fff;
}

.ctw-mock__wheel {
  position: relative;
  width: 168px;
  height: 168px;
  margin: 0 auto 18px;
  border: 6px solid var(--ctw-dark);
  border-radius: 999px;
  background: conic-gradient(var(--ctw-crimson) 0 60deg, #FBF1DD 0 120deg, var(--ctw-indigo) 0 180deg, #FDEEF2 0 240deg, var(--ctw-amber) 0 300deg, #E7F8F6 0 360deg);
  transform: rotate(-15deg);
}

.ctw-mock__pin {
  position: absolute;
  top: -14px;
  left: 50%;
  border-top: 18px solid var(--ctw-dark);
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  transform: translateX(-50%) rotate(15deg);
}

.ctw-mock__hub {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 34px;
  height: 34px;
  border: 5px solid var(--ctw-dark);
  border-radius: 999px;
  background: #fff;
  transform: translate(-50%, -50%);
}

.ctw-mock__scratch {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 150px;
  margin-bottom: 18px;
  overflow: hidden;
  border: 2px dashed var(--ctw-line);
  border-radius: 16px;
  background: #FBF1DD;
}
.ctw-mock__scratch strong {
  font-size: 24px;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--ctw-crimson);
}

.ctw-mock__foil {
  position: absolute;
  inset: 0 0 0 46%;
  background: repeating-linear-gradient(135deg, #C9D0D4 0 8px, #B7C0C5 8px 16px);
  clip-path: polygon(14% 0, 100% 0, 100% 100%, 0 100%, 10% 80%, 2% 60%, 12% 40%, 4% 20%);
}

.ctw-mock__reels {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-bottom: 18px;
  padding: 12px;
  border-radius: 16px;
  background: var(--ctw-dark);
}
.ctw-mock__reels > span {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 96px;
  border-radius: 10px;
  background: #fff;
  color: var(--ctw-amber);
}
.ctw-mock__reels .ctw-icon {
  width: 42px;
  height: 42px;
}

.ctw-mock__gift {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 120px;
  height: 120px;
  margin: 0 auto 18px;
  border-radius: 28px;
  background: #FBF1DD;
  color: var(--ctw-crimson);
}
.ctw-mock__gift .ctw-icon {
  width: 64px;
  height: 64px;
}

.ctw-mock__prize {
  display: grid;
  gap: 4px;
  padding: 14px 16px;
  border: 1.5px solid var(--ctw-teal);
  border-radius: 12px;
  background: var(--ctw-teal-50);
  text-align: center;
}
.ctw-mock__prize strong {
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -0.02em;
}
.ctw-mock__prize span {
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  color: var(--ctw-steel);
}

.ctw-mock__cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
.ctw-mock__cards > span {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  border-radius: 10px;
  background: repeating-linear-gradient(135deg, #EEF1FA 0 6px, #E3E8F5 6px 12px);
}
.ctw-mock__cards > span.is-on {
  background: linear-gradient(135deg, var(--mock-from), var(--mock-to));
  color: #fff;
}
.ctw-mock__cards .ctw-icon {
  width: 26px;
  height: 26px;
}

.ctw-mock__scene {
  position: relative;
  height: 210px;
  overflow: hidden;
  border-radius: 14px;
  background: linear-gradient(180deg, #EEF1FA 0 72%, var(--ctw-dark) 72% 74%, #D9DEE9 74%);
}

.ctw-mock__runner {
  position: absolute;
  bottom: 26%;
  left: 14%;
  color: var(--ctw-crimson);
}
.ctw-mock__runner .ctw-icon {
  width: 64px;
  height: 64px;
}

.ctw-mock__coin {
  position: absolute;
  width: 16px;
  height: 16px;
  border: 3px solid #B8801A;
  border-radius: 999px;
  background: var(--ctw-amber);
}

.ctw-mock__block {
  position: absolute;
  bottom: 26%;
  width: 22px;
  height: 30px;
  border-radius: 4px 4px 0 0;
  background: var(--ctw-indigo);
}
.ctw-mock__block--tall {
  height: 52px;
}

.ctw-mock__puzzle {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4px;
  overflow: hidden;
  border-radius: 14px;
}
.ctw-mock__puzzle > span {
  aspect-ratio: 1.3;
  background-image: linear-gradient(135deg, var(--mock-from), var(--ctw-amber) 55%, var(--mock-to));
  background-size: 300% 300%;
}
.ctw-mock__puzzle > span.is-gap {
  background: #ECEEF0;
}

.ctw-mock__letters {
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  gap: 4px;
}
.ctw-mock__letters > span {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  border-radius: 6px;
  background: #F4F6F7;
  font-family: var(--ctw-font-mono);
  font-size: 13px;
  font-weight: 600;
  color: var(--ctw-text-body);
}
.ctw-mock__letters > span.is-on {
  background: var(--ctw-teal-50);
  box-shadow: inset 0 0 0 1.5px var(--ctw-teal);
  color: var(--ctw-text);
}

.ctw-mock__bubbles {
  position: relative;
  height: 210px;
  border-radius: 14px;
  background: #EEF1FA;
}
.ctw-mock__bubbles > span {
  position: absolute;
  border-radius: 999px;
  background: radial-gradient(circle at 30% 30%, #fff 0 12%, var(--mock-from) 13% 60%, var(--mock-to));
  opacity: 0.9;
}

.ctw-mock__matches {
  display: grid;
  gap: 10px;
  margin: 0 0 16px;
  padding: 0;
  list-style: none;
}
.ctw-mock__matches li {
  display: grid;
  grid-template-columns: 1fr 34px 10px 34px 1fr;
  align-items: center;
  gap: 6px;
  padding: 10px 12px;
  border: 1.5px solid #ECEEF0;
  border-radius: 12px;
  font-size: 13.5px;
  font-weight: 600;
}
.ctw-mock__matches li.is-on {
  border-color: var(--ctw-teal);
  background: var(--ctw-teal-50);
}
.ctw-mock__matches li span:last-child {
  text-align: right;
}
.ctw-mock__matches b {
  padding: 6px 0;
  border-radius: 8px;
  background: #fff;
  box-shadow: inset 0 0 0 1.5px #ECEEF0;
  font-size: 15px;
  text-align: center;
}
.ctw-mock__matches i {
  font-style: normal;
  text-align: center;
  color: var(--ctw-steel);
}

.ctw-mock__gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-bottom: 16px;
}

.ctw-mock__tile {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1.35;
  border-radius: 12px;
  color: rgba(255, 255, 255, 0.7);
}
.ctw-mock__tile--0 {
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-amber));
}
.ctw-mock__tile--1 {
  background: linear-gradient(135deg, var(--ctw-indigo), var(--ctw-teal));
}
.ctw-mock__tile--2 {
  background: linear-gradient(135deg, var(--ctw-amber), #F3C7D2);
}
.ctw-mock__tile--3 {
  background: linear-gradient(135deg, var(--ctw-dark), var(--ctw-indigo));
}
.ctw-mock__tile > .ctw-icon {
  width: 34px;
  height: 34px;
}
.ctw-mock__tile em {
  position: absolute;
  right: 8px;
  bottom: 8px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 8px;
  border-radius: 999px;
  background: #fff;
  font-size: 11.5px;
  font-style: normal;
  font-weight: 700;
  color: var(--ctw-text);
}
.ctw-mock__tile em .ctw-icon {
  width: 12px;
  height: 12px;
  color: var(--ctw-crimson);
}

.ctw-mock__ranking {
  display: grid;
  gap: 8px;
  margin: 0 0 16px;
  padding: 0;
  list-style: none;
}
.ctw-mock__ranking li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border: 1.5px solid #ECEEF0;
  border-radius: 12px;
  font-size: 13.5px;
  font-weight: 600;
}
.ctw-mock__ranking li.is-on {
  border-color: var(--ctw-amber);
  background: #FBF1DD;
}
.ctw-mock__ranking b {
  width: 22px;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  color: var(--ctw-crimson);
}
.ctw-mock__ranking span {
  flex: 1;
}
.ctw-mock__ranking em {
  font-size: 12px;
  font-style: normal;
  color: var(--ctw-steel);
}

.ctw-mock__quotes {
  display: grid;
  gap: 10px;
  margin-bottom: 16px;
}
.ctw-mock__quotes div {
  display: grid;
  gap: 7px;
  padding: 14px 16px;
  border: 1.5px solid #ECEEF0;
  border-radius: 12px;
}
.ctw-mock__quotes div:first-child {
  border-color: var(--ctw-teal);
  background: var(--ctw-teal-50);
}
.ctw-mock__quotes .ctw-icon {
  width: 20px;
  height: 20px;
  color: var(--ctw-crimson);
}
.ctw-mock__quotes div > span:not(.ctw-icon) {
  height: 8px;
  border-radius: 999px;
  background: #DDE2E5;
}
.ctw-mock__quotes div > span:not(.ctw-icon):last-child {
  width: 60%;
}

.ctw-mock__field {
  display: flex;
  gap: 8px;
  margin-bottom: 14px;
}
.ctw-mock__field span {
  flex: 1;
  padding: 13px 14px;
  border: 1.5px solid var(--ctw-teal);
  border-radius: 12px;
  background: var(--ctw-teal-50);
  font-family: var(--ctw-font-mono);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.08em;
}
.ctw-mock__field b {
  padding: 13px 16px;
  border-radius: 12px;
  background: var(--ctw-dark);
  font-size: 14px;
  color: #fff;
}

.ctw-mock__coupon {
  margin-bottom: 14px;
  padding: 26px 16px;
  border: 2px dashed var(--ctw-crimson);
  border-radius: 14px;
  background: var(--ctw-crimson-50);
  text-align: center;
}
.ctw-mock__coupon strong {
  font-family: var(--ctw-font-mono);
  font-size: 22px;
  letter-spacing: 0.08em;
  color: var(--ctw-crimson);
}

.ctw-mock__receipt {
  position: relative;
  display: grid;
  gap: 10px;
  width: 70%;
  margin: 0 auto 14px;
  padding: 20px 18px 26px;
  border: 1px solid var(--ctw-line);
  border-radius: 6px 6px 0 0;
  background: #F9FAFA;
  border-bottom: 2px dashed var(--ctw-line);
}
.ctw-mock__receipt > span {
  height: 8px;
  border-radius: 999px;
  background: #DDE2E5;
}
.ctw-mock__receipt > span.is-short {
  width: 50%;
  background: var(--ctw-crimson-100);
}
.ctw-mock__receipt em {
  position: absolute;
  top: 10px;
  right: -6px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 9px;
  border-radius: 999px;
  background: var(--ctw-teal);
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  font-style: normal;
  font-weight: 600;
  color: #fff;
}
.ctw-mock__receipt em .ctw-icon {
  width: 13px;
  height: 13px;
}

.ctw-mock__stamps {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
  margin-bottom: 14px;
}
.ctw-mock__stamps > span {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  border: 2px dashed var(--ctw-line);
  border-radius: 999px;
}
.ctw-mock__stamps > span.is-on {
  border: 0;
  background: linear-gradient(135deg, var(--mock-from), var(--mock-to));
  color: #fff;
}
.ctw-mock__stamps .ctw-icon {
  width: 22px;
  height: 22px;
}

.ctw-mock__ok {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 13.5px;
  font-weight: 600;
  color: #1F9D6B;
}
.ctw-mock__ok .ctw-icon {
  width: 18px;
  height: 18px;
}

.ctw-mock__days {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
.ctw-mock__days > span {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1.15;
  border: 1.5px solid #ECEEF0;
  border-radius: 12px;
  font-size: 18px;
  font-weight: 800;
  color: var(--ctw-text);
}
.ctw-mock__days > span.is-open {
  border-color: transparent;
  background: #F4F6F7;
  color: var(--ctw-steel-300);
}
.ctw-mock__days > span.is-today {
  border-color: transparent;
  background: linear-gradient(135deg, var(--mock-from), var(--mock-to));
  box-shadow: 0 10px 24px rgba(219, 7, 60, 0.3);
  color: #fff;
}

.ctw-mock__logos {
  padding: 44px 28px;
}
.ctw-mock__logos .ctw-logos {
  --ctw-logo-scale: .72;
  gap: 22px 32px;
}

.ctw-mock__badge {
  position: absolute;
  bottom: -22px;
  left: -22px;
  padding: 13px 16px;
  border-radius: 14px;
  background: var(--ctw-dark);
  box-shadow: 0 18px 40px rgba(29, 35, 38, 0.32);
  color: #fff;
  animation: ctw-fi-bob 5s ease-in-out infinite;
}
@media (max-width: 760px) {
  .ctw-mock__badge {
    left: -8px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ctw-mock__badge {
    animation: none;
  }
}

.ctw-mock__badge-label {
  margin-bottom: 3px;
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  color: #A4B0F5;
}

.ctw-mock__badge-value {
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -0.02em;
}

.ctw-fi-general {
  padding-bottom: 84px;
}
@media (max-width: 760px) {
  .ctw-fi-general {
    padding-bottom: 64px;
  }
}

.ctw-fi-general__head {
  margin-bottom: 28px;
  padding-top: 40px;
  border-top: 1px solid var(--ctw-line);
}
.ctw-fi-general__head .ctw-fi-h2 {
  font-size: clamp(24px, 2.6vw, 30px);
}

.ctw-fi-general__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px 32px;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 1023px) {
  .ctw-fi-general__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 480px) {
  .ctw-fi-general__list {
    grid-template-columns: minmax(0, 1fr);
  }
}
.ctw-fi-general__list li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 14.5px;
  line-height: 1.45;
  color: var(--ctw-text-body);
}
.ctw-fi-general__list .ctw-icon {
  flex: none;
  width: 20px;
  height: 20px;
  margin-top: 1px;
  color: var(--ctw-crimson);
}

.ctw-guide-wrap {
  max-width: 1060px;
  margin: 0 auto;
  padding-right: 40px;
  padding-left: 40px;
}
@media (max-width: 760px) {
  .ctw-guide-wrap {
    padding-right: var(--ctw-gutter);
    padding-left: var(--ctw-gutter);
  }
}

.ctw-guide-hero {
  border-bottom: 1px solid var(--ctw-line);
  background: var(--ctw-surface-alt);
}

.ctw-guide-hero__inner {
  max-width: 820px;
  margin: 0 auto;
  padding: 54px 40px 48px;
}
@media (max-width: 760px) {
  .ctw-guide-hero__inner {
    padding: 40px var(--ctw-gutter) 36px;
  }
}

.ctw-guide-crumbs {
  margin-bottom: 20px;
  font-family: var(--ctw-font-mono);
  font-size: 12px;
  line-height: 1.6;
  color: var(--ctw-steel);
}
.ctw-guide-crumbs a {
  color: var(--ctw-steel);
  text-decoration: none;
}
.ctw-guide-crumbs a:hover {
  color: var(--ctw-dark);
}
.ctw-guide-crumbs > span[aria-hidden] {
  margin: 0 8px;
}

.ctw-guide-crumbs__current {
  color: var(--ctw-crimson);
}

.ctw-guide-pill {
  display: inline-flex;
  align-items: center;
  margin: 0 0 20px !important;
  padding: 6px 12px;
  border: 1px solid #F3C7D2;
  border-radius: 999px;
  background: #FDEEF2;
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ctw-crimson);
}

.ctw-guide-hero__title {
  margin: 0 0 18px !important;
  font-size: clamp(34px, 5.5vw, 52px) !important;
  font-weight: 800 !important;
  letter-spacing: -0.035em !important;
  line-height: 1.05 !important;
}

.ctw-guide-hero__lead {
  margin: 0 0 26px !important;
  font-size: 19px;
  line-height: 1.55;
  color: var(--ctw-text-body);
  text-wrap: pretty;
}

.ctw-guide-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 20px;
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 13.5px;
  color: var(--ctw-steel);
}
.ctw-guide-meta li {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.ctw-guide-meta .ctw-icon {
  width: 16px;
  height: 16px;
}

.ctw-guide-layout {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  align-items: start;
  gap: 48px;
  max-width: 1060px;
  margin: 0 auto;
  padding: 48px 40px 0;
}
@media (max-width: 900px) {
  .ctw-guide-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }
}
@media (max-width: 760px) {
  .ctw-guide-layout {
    padding: 36px var(--ctw-gutter) 0;
  }
}

.ctw-guide-aside {
  position: sticky;
  top: 96px;
}

.ctw-guide-toc {
  margin-bottom: 24px;
}
.ctw-guide-toc ol {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  border-left: 2px solid var(--ctw-line);
  list-style: none;
}
.ctw-guide-toc a {
  display: block;
  margin-left: -2px;
  padding-left: 14px;
  border-left: 2px solid transparent;
  font-size: 13.5px;
  line-height: 1.4;
  color: var(--ctw-text-body);
  text-decoration: none;
  transition: color var(--ctw-fast) ease, border-color var(--ctw-fast) ease;
}
.ctw-guide-toc a:hover, .ctw-guide-toc a.is-active {
  border-left-color: var(--ctw-crimson);
  color: var(--ctw-crimson);
}

.ctw-guide-toc__title {
  margin: 0 0 14px !important;
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ctw-steel-300);
}

.ctw-guide-download {
  padding: 20px;
  border-radius: 16px;
  --ctw-text-on-dark: var(--ctw-on-indigo-muted);
  background: var(--ctw-indigo-deep);
  color: #fff;
}
.ctw-guide-download form {
  margin: 0;
}

.ctw-guide-download__title {
  margin: 0 0 6px !important;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #fff;
}

.ctw-guide-download__text {
  margin: 0 0 14px !important;
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--ctw-steel-300);
}
.ctw-guide-download__text strong {
  color: #fff;
}

.ctw-guide-download__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 10px;
  border: 0;
  border-radius: 9px;
  background: #fff;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
  color: var(--ctw-dark);
  cursor: pointer;
  transition: background-color var(--ctw-fast) ease;
}
.ctw-guide-download__btn .ctw-icon {
  width: 15px;
  height: 15px;
}
.ctw-guide-download__btn:hover {
  background: #E9EDEF;
}

@media (max-width: 900px) {
  .ctw-guide-aside {
    position: static;
    order: 2;
    margin-bottom: 24px;
  }
  .ctw-guide-toc {
    display: none;
  }
  .ctw-guide-download {
    padding: 24px;
  }
  .ctw-guide-download__title {
    font-size: 17px;
  }
  .ctw-guide-download__text {
    font-size: 14px;
  }
  .ctw-guide-download__btn {
    padding: 13px;
    font-size: 14px;
  }
}
.ctw-guide-body {
  min-width: 0;
  padding-bottom: 40px;
  font-size: 16.5px;
  line-height: 1.7;
  color: #33414A;
}
.ctw-guide-body h2 {
  scroll-margin-top: 90px;
  margin: 40px 0 16px !important;
  font-size: clamp(24px, 3.5vw, 30px) !important;
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.15 !important;
  color: var(--ctw-dark);
}
.ctw-guide-body h3 {
  margin: 28px 0 12px !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.25 !important;
  color: var(--ctw-dark);
}
.ctw-guide-body > :first-child,
.ctw-guide-body > :first-child > :first-child {
  margin-top: 0 !important;
}
.ctw-guide-body p {
  margin: 0 0 18px !important;
  text-wrap: pretty;
}
.ctw-guide-body strong,
.ctw-guide-body b {
  font-weight: 700;
  color: var(--ctw-dark);
}
.ctw-guide-body a {
  font-weight: 600;
  color: var(--ctw-indigo);
  text-decoration: none;
}
.ctw-guide-body a:hover {
  text-decoration: underline;
}
.ctw-guide-body img {
  max-width: 100%;
  height: auto;
}
.ctw-guide-body ul {
  display: flex;
  flex-direction: column;
  gap: 11px;
  margin: 0 0 20px;
  padding: 0;
  list-style: none;
}
.ctw-guide-body ul > li {
  position: relative;
  padding-left: 31px;
  font-size: 16px;
  line-height: 1.6;
}
.ctw-guide-body ul > li::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 0;
  width: 20px;
  height: 20px;
  background: #2EC4B6;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cpath d='M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm45.66,85.66-56,56a8,8,0,0,1-11.32,0l-24-24a8,8,0,0,1,11.32-11.32L112,148.69l50.34-50.35a8,8,0,0,1,11.32,11.32Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cpath d='M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm45.66,85.66-56,56a8,8,0,0,1-11.32,0l-24-24a8,8,0,0,1,11.32-11.32L112,148.69l50.34-50.35a8,8,0,0,1,11.32,11.32Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.ctw-guide-body ul ul {
  gap: 6px;
  margin: 6px 0 0;
}
.ctw-guide-body ul ul > li {
  padding-left: 0;
  font-size: 15px;
  color: var(--ctw-text-body);
}
.ctw-guide-body ul ul > li::before {
  content: none;
}
.ctw-guide-body ol {
  margin: 0 0 20px;
  padding-left: 22px;
}
.ctw-guide-body ol > li {
  margin-bottom: 8px;
}
.ctw-guide-body .img_right {
  float: right;
  margin: 4px 0 16px 28px;
}
.ctw-guide-body .img_right img {
  display: block;
  max-width: 200px;
  border-radius: 14px;
}
@media (max-width: 480px) {
  .ctw-guide-body .img_right {
    float: none;
    margin: 0 0 20px;
  }
}
.ctw-guide-body [style*=clear] {
  margin-top: 8px !important;
}
.ctw-guide-body .ctw-guide-tip {
  margin: 0 0 22px;
  padding: 20px 22px;
  border: 1px solid #DBE1F7;
  border-radius: 14px;
  background: #EEF1FB;
  font-size: 15px;
}

.ctw-guide-related {
  padding-top: 40px;
  padding-bottom: 20px;
}

.ctw-guide-related__title {
  margin: 0 0 24px !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em !important;
}

.ctw-guide-related__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 16px;
}

.ctw-guide-card {
  display: block;
  overflow: hidden;
  border: 1px solid var(--ctw-line);
  border-radius: 16px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: transform var(--ctw-base) ease, box-shadow var(--ctw-base) ease;
}
.ctw-guide-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 30px rgba(29, 35, 38, 0.1);
  color: inherit;
}

.ctw-guide-card__media {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 96px;
  background: #EEF1FB;
  color: var(--ctw-crimson);
}
.ctw-guide-card__media--1 {
  background: #E7F8F6;
}
.ctw-guide-card__media--2 {
  background: #FBF1DD;
}
.ctw-guide-card__media .ctw-icon {
  width: 34px;
  height: 34px;
}

.ctw-guide-card__body {
  display: block;
  padding: 20px;
}

.ctw-guide-card__cat {
  display: block;
  margin-bottom: 8px;
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ctw-steel);
}

.ctw-guide-card__title {
  display: block;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1.3;
}

.ctw-guide-final {
  padding-top: 60px;
  padding-bottom: 90px;
}
@media (max-width: 760px) {
  .ctw-guide-final {
    padding-top: 40px;
    padding-bottom: 64px;
  }
}

.ctw-guide-final__box {
  padding: 56px 40px;
  border-radius: 24px;
  --ctw-text-on-dark: var(--ctw-on-indigo-muted);
  background: var(--ctw-indigo-deep);
  color: #fff;
  text-align: center;
}
.ctw-guide-final__box h2 {
  max-width: 560px;
  margin: 0 auto 14px !important;
  font-size: clamp(28px, 4.5vw, 40px) !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em !important;
  line-height: 1.08 !important;
  color: #fff !important;
}
.ctw-guide-final__box p {
  max-width: 460px;
  margin: 0 auto 28px !important;
  font-size: 17px;
  color: var(--ctw-steel-300);
}
@media (max-width: 760px) {
  .ctw-guide-final__box {
    padding: 40px 24px;
  }
}

.ctw-guide-final__ctas {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
}

.ctw-guide-final__ghost {
  display: inline-flex;
  align-items: center;
  padding: 16px 24px;
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 12px;
  font-size: 16px;
  font-weight: 600;
  color: #fff;
  text-decoration: none;
}
.ctw-guide-final__ghost:hover {
  border-color: rgba(255, 255, 255, 0.6);
  color: #fff;
}

.ctw-sec-ai-wrap {
  padding: 84px 0;
}
.ctw-sec-ai-wrap--flush {
  padding: 0 0 20px;
}
.ctw-sec-ai-wrap--no_top {
  padding: 0 0 84px;
}
.ctw-sec-ai-wrap--compact {
  padding: 44px 0 0;
}

.ctw-sec-ai {
  position: relative;
  line-height: normal;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
  gap: 36px;
  align-items: center;
  padding: 44px;
  overflow: hidden;
  border-radius: 24px;
  background: linear-gradient(135deg, #1D2326, #2A1822);
  color: #fff;
}
.ctw-sec-ai::before {
  content: "";
  position: absolute;
  top: -60px;
  right: -40px;
  width: 300px;
  height: 300px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(219, 7, 60, 0.5), transparent 70%);
  filter: blur(40px);
  pointer-events: none;
}
@media (max-width: 480px) {
  .ctw-sec-ai {
    padding: 28px;
  }
}

.ctw-sec-ai__copy,
.ctw-sec-ai__items,
.ctw-sec-ai__chat {
  position: relative;
}

.ctw-sec-ai__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 18px;
  padding: 6px 12px;
  border: 1px solid rgba(68, 92, 173, 0.45);
  border-radius: 999px;
  background: rgba(68, 92, 173, 0.2);
  font-family: var(--ctw-font-mono);
  font-size: 11px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #A4B0F5;
}

.ctw-sec-ai__title {
  margin: 0 !important;
  font-size: clamp(26px, 3.6vw, 36px);
  line-height: 1.05;
  letter-spacing: -0.03em;
  color: #fff;
}

.ctw-sec-ai__body {
  margin: 14px 0 24px;
  font-size: 16.5px;
  line-height: 1.55;
  color: #AAB3B7;
  text-wrap: pretty;
}

.ctw-sec-ai__cta {
  display: inline-block;
  padding: 14px 22px;
  border-radius: 11px;
  background: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: normal;
  color: var(--ctw-dark) !important;
  text-decoration: none;
  transition: background-color var(--ctw-fast) ease, transform var(--ctw-base) var(--ctw-ease);
}
.ctw-sec-ai__cta:hover {
  background: var(--ctw-crimson-50);
  transform: translateY(-1px);
}

.ctw-sec-ai__items {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ctw-sec-ai__items li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.05);
  font-size: 14.5px;
  font-weight: 600;
  line-height: normal;
  color: #fff;
}
.ctw-sec-ai__items span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-indigo));
  font-size: 13px;
  font-weight: 400;
}

.ctw-sec-ai__chat {
  display: block;
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  background: #15181A;
}

.ctw-sec-ai__chat-head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  font-family: var(--ctw-font-mono);
  font-size: 10px;
  line-height: normal;
  color: #A4B0F5;
}
.ctw-sec-ai__chat-head span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 7px;
  background: linear-gradient(135deg, var(--ctw-crimson), var(--ctw-indigo));
  font-family: var(--ctw-font);
  font-size: 12px;
  color: #fff;
}

.ctw-sec-ai__bubble {
  display: block;
  max-width: none;
  margin: 0 !important;
  padding: 9px 12px;
  border: 0;
  border-radius: 11px 11px 11px 4px;
  background: rgba(255, 255, 255, 0.06);
  font-size: 12.5px;
  line-height: 1.45;
  color: #DFE3E5;
}
.ctw-sec-ai__bubble--user {
  margin-bottom: 8px !important;
  border-radius: 11px 11px 4px 11px;
  background: var(--ctw-crimson);
  line-height: 1.4;
  color: #fff;
}
@charset "UTF-8";
/*
 * Web pública. No carga Bootstrap.
 * Solo reutiliza el CSS estructural de la libreria alertify; su tema va en ctfront2/_alertify.
 *


 */
