*,
    *::before,
    *::after {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
      overflow-wrap: break-word;
      min-width: 0
    }

    :root {
      --black: #0a0a0a;
      --white: #f5f2ed;
      --accent: #c8ff00;
      --red: #ff4444;
      --gray: #141414;
      --gray-mid: #222;
      --gray-light: #777;
      --font-display: 'Syne', sans-serif;
      --font-body: 'DM Sans', sans-serif
    }

    html {
      scroll-behavior: smooth
    }

    html {
      overflow-x: hidden
    }

    body {
      background: var(--black);
      color: var(--white);
      font-family: var(--font-body);
      font-size: 16px;
      line-height: 1.6;
      overflow-x: hidden
    }

    /* NAV */
    nav {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 100;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 1rem;
      padding: 1.1rem 4rem;
      background: rgba(10, 10, 10, .96);
      backdrop-filter: blur(16px);
      border-bottom: 1px solid rgba(255, 255, 255, .05)
    }

    .logo {
      font-family: var(--font-display);
      font-size: 1.35rem;
      font-weight: 800;
      letter-spacing: -.02em;
      color: var(--white);
      text-decoration: none;
      flex-shrink: 0
    }

    .logo span {
      color: var(--accent)
    }

    .nav-links {
      flex: 1;
      display: flex;
      justify-content: center;
      gap: 2rem;
      list-style: none
    }

    .nav-links a {
      color: var(--gray-light);
      text-decoration: none;
      font-size: .85rem;
      transition: color .2s
    }

    .nav-links a:hover {
      color: var(--white)
    }

    .nav-right {
      display: flex;
      align-items: center;
      gap: 1.2rem;
      flex-shrink: 0
    }

    .lang-switcher {
      position: relative
    }

    .lang-btn {
      background: rgba(255, 255, 255, .06);
      border: 1px solid rgba(255, 255, 255, .1);
      color: var(--white);
      padding: .35rem .8rem;
      border-radius: 100px;
      font-family: var(--font-body);
      font-size: .78rem;
      cursor: pointer;
      display: flex;
      align-items: center;
      gap: .35rem;
      transition: background .2s;
      white-space: nowrap
    }

    .lang-btn:hover {
      background: rgba(255, 255, 255, .1)
    }

    .lang-dropdown {
      position: absolute;
      top: calc(100% + 8px);
      right: 0;
      background: #1a1a1a;
      border: 1px solid rgba(255, 255, 255, .1);
      border-radius: 12px;
      overflow: hidden;
      min-width: 155px;
      display: none;
      flex-direction: column;
      z-index: 200;
      box-shadow: 0 8px 32px rgba(0, 0, 0, .6)
    }

    .lang-dropdown.open {
      display: flex
    }

    .lang-option {
      padding: .65rem 1rem;
      font-size: .82rem;
      cursor: pointer;
      display: flex;
      align-items: center;
      gap: .55rem;
      color: var(--gray-light);
      transition: background .15s, color .15s
    }

    .lang-option:hover {
      background: rgba(255, 255, 255, .05);
      color: var(--white)
    }

    .lang-option.active {
      color: var(--accent)
    }

    .nav-cta {
      background: var(--accent);
      color: var(--black);
      padding: .5rem 1.2rem;
      border-radius: 100px;
      font-weight: 700;
      font-size: .82rem;
      text-decoration: none;
      transition: background .2s, transform .15s;
      white-space: nowrap
    }

    .nav-cta:hover {
      background: #d4ff1a;
      transform: translateY(-1px)
    }

    .nav-cta-mob {
      display: none
    }

    /* HERO */
    .hero {
      min-height: 100svh;
      display: grid;
      grid-template-columns: 1fr;
      align-items: center;
      padding: 8rem 4rem 5rem;
      position: relative;
      overflow: hidden;
      background-image: linear-gradient(rgba(200, 255, 0, .02) 1px, transparent 1px), linear-gradient(90deg, rgba(200, 255, 0, .02) 1px, transparent 1px);
      background-size: 64px 64px
    }

    .hero-content {
      display: flex;
      flex-direction: column;
      max-width: 580px;
      position: relative;
      z-index: 1;
      overflow: hidden
    }

    .hero-content::before {
      content: '';
      position: absolute;
      inset: -4rem -5rem -4rem -6rem;
      background: radial-gradient(ellipse 110% 120% at 5% 50%, rgba(10, 10, 10, .88) 28%, rgba(10, 10, 10, .55) 58%, transparent 100%);
      z-index: -1;
      pointer-events: none
    }

    .hero-tag {
      display: inline-flex;
      align-items: center;
      gap: .5rem;
      font-size: .75rem;
      font-weight: 600;
      letter-spacing: .1em;
      text-transform: uppercase;
      padding: .4rem 1rem;
      border-radius: 100px;
      margin-bottom: 1.8rem;
      width: fit-content
    }

    .hero-tag::before {
      content: '';
      width: 5px;
      height: 5px;
      border-radius: 50%
    }

    .hero-tag.accent {
      background: rgba(200, 255, 0, .1);
      border: 1px solid rgba(200, 255, 0, .25);
      color: var(--accent)
    }

    .hero-tag.accent::before {
      background: var(--accent);
      animation: pulse 2s infinite
    }

    .hero-tag.red {
      background: rgba(255, 68, 68, .1);
      border: 1px solid rgba(255, 68, 68, .3);
      color: var(--red)
    }

    .hero-tag.red::before {
      background: var(--red);
      animation: pulse 2s infinite
    }

    @keyframes pulse {

      0%,
      100% {
        opacity: 1;
        transform: scale(1)
      }

      50% {
        opacity: .4;
        transform: scale(.7)
      }
    }

    .hero h1 {
      font-family: var(--font-display);
      font-size: clamp(2.6rem, 5.5vw, 5rem);
      font-weight: 800;
      line-height: .96;
      letter-spacing: -.04em;
      margin-bottom: 1.6rem;
      max-width: 780px
    }

    .hero h1 em {
      font-style: normal;
      color: var(--accent)
    }

    .hero-sub {
      font-size: 1.05rem;
      color: #c8c8c8;
      max-width: 500px;
      font-weight: 300;
      margin-bottom: 1.5rem;
      line-height: 1.8
    }

    .hero-proof {
      display: flex;
      align-items: center;
      gap: .55rem;
      font-size: .78rem;
      color: rgba(245, 242, 237, .72);
      margin-bottom: 2rem;
      flex-wrap: wrap
    }

    .hero-proof-stars {
      color: var(--accent);
      letter-spacing: .06em;
      font-size: .82rem
    }

    .hero-actions {
      display: flex;
      gap: 1rem;
      align-items: center;
      flex-wrap: wrap
    }

    .btn-primary {
      background: var(--accent);
      color: var(--black);
      font-family: var(--font-body);
      font-size: .92rem;
      font-weight: 700;
      padding: .85rem 2rem;
      border-radius: 100px;
      border: none;
      cursor: pointer;
      text-decoration: none;
      transition: background .2s, transform .15s;
      display: inline-flex;
      align-items: center;
      gap: .5rem
    }

    .btn-primary:hover {
      background: #d4ff1a;
      transform: translateY(-2px)
    }

    .btn-secondary {
      background: transparent;
      color: var(--white);
      font-family: var(--font-body);
      font-size: .92rem;
      font-weight: 400;
      padding: .85rem 2rem;
      border-radius: 100px;
      border: 1px solid rgba(255, 255, 255, .15);
      cursor: pointer;
      text-decoration: none;
      transition: border-color .2s, background .2s
    }

    .btn-secondary:hover {
      border-color: rgba(255, 255, 255, .35);
      background: rgba(255, 255, 255, .04)
    }

    .hero-scroll {
      position: absolute;
      bottom: 2rem;
      left: 4rem;
      display: flex;
      align-items: center;
      gap: .7rem;
      color: var(--gray-light);
      font-size: .72rem;
      letter-spacing: .1em;
      text-transform: uppercase
    }

    .scroll-line {
      width: 36px;
      height: 1px;
      background: var(--gray-light)
    }

    /* HERO VISUAL (Three.js) */
    .hero-visual {
      position: absolute;
      inset: 0;
      height: auto;
      min-height: 0;
      overflow: hidden;
      z-index: 0;
      pointer-events: none
    }

    .hero-visual::before {
      content: '';
      position: absolute;
      inset: 0;
      background: radial-gradient(ellipse 70% 60% at 65% 50%, rgba(200, 255, 0, .04) 0%, transparent 70%);
      pointer-events: none;
      z-index: 0
    }

    #hero-canvas {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      z-index: 1;
      display: block
    }

    /* STATS */
    .stats-bar {
      border-top: 1px solid rgba(255, 255, 255, .06);
      border-bottom: 1px solid rgba(255, 255, 255, .06);
      padding: 2.2rem 4rem;
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 1.5rem
    }

    .stat {
      text-align: center;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: .3rem
    }

    .stat-num {
      font-family: var(--font-body);
      font-size: 2.4rem;
      font-weight: 700;
      letter-spacing: -.02em;
      color: var(--accent);
      line-height: 1;
      white-space: nowrap
    }

    .stat-num.zero {
      color: var(--red)
    }

    .stat-label {
      font-size: .75rem;
      color: var(--gray-light);
      font-weight: 300;
      line-height: 1.3;
      text-align: center;
      max-width: 120px
    }

    /* SECTIONS */
    section {
      padding: 5.5rem 4rem
    }

    .section-tag {
      font-size: .7rem;
      letter-spacing: .14em;
      text-transform: uppercase;
      font-weight: 600;
      margin-bottom: .9rem
    }

    .section-tag.accent {
      color: var(--accent)
    }

    .section-tag.red {
      color: var(--red)
    }

    .section-title {
      font-family: var(--font-display);
      font-size: clamp(1.9rem, 3.5vw, 2.8rem);
      font-weight: 700;
      letter-spacing: -.03em;
      line-height: 1.08;
      margin-bottom: 1.3rem;
      max-width: 700px
    }

    .section-sub {
      color: #999;
      max-width: 520px;
      font-weight: 300;
      font-size: .95rem;
      line-height: 1.75
    }

    /* PROBLEM */
    #problem {
      background: var(--gray)
    }

    .problem-inner {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 5rem;
      align-items: start
    }

    .pain-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 1rem;
      margin-top: 2.5rem
    }

    .pain-card {
      background: rgba(0, 0, 0, .4);
      border: 1px solid rgba(255, 255, 255, .06);
      border-left: 3px solid var(--red);
      border-radius: 12px;
      padding: 1.4rem 1.6rem
    }

    .pain-icon {
      font-size: 1.3rem;
      margin-bottom: .7rem
    }

    .pain-title {
      font-family: var(--font-display);
      font-size: .9rem;
      font-weight: 700;
      margin-bottom: .4rem;
      color: var(--white)
    }

    .pain-desc {
      font-size: .83rem;
      color: #999;
      line-height: 1.65;
      font-weight: 300
    }

    /* SAVINGS CALCULATOR */
    .calc-wrap {
      margin-top: 1.5rem
    }

    .calc-header {
      margin-bottom: 1.4rem
    }

    .calc-header .section-tag {
      margin-bottom: .7rem
    }

    .calc-title {
      font-family: var(--font-display);
      font-size: clamp(1.35rem, 2.2vw, 1.75rem);
      font-weight: 700;
      letter-spacing: -.03em;
      line-height: 1.15;
      margin-bottom: .65rem;
      color: var(--white)
    }

    .calc-sub {
      color: #999;
      font-size: .85rem;
      font-weight: 300;
      line-height: 1.65;
      max-width: 420px
    }

    .calc-card {
      background: rgba(255, 68, 68, .05);
      border: 1px solid rgba(255, 68, 68, .18);
      border-radius: 18px;
      padding: 2rem 2rem 1.8rem;
      position: relative;
      overflow: hidden
    }

    .calc-card::before {
      content: '';
      position: absolute;
      top: -40%;
      right: -20%;
      width: 280px;
      height: 280px;
      background: radial-gradient(circle, rgba(255, 68, 68, .08) 0%, transparent 70%);
      pointer-events: none
    }

    .calc-progress {
      display: flex;
      gap: .45rem;
      margin-bottom: 1.8rem
    }

    .calc-progress-seg {
      flex: 1;
      height: 3px;
      background: rgba(255, 255, 255, .08);
      border-radius: 100px;
      overflow: hidden;
      transition: background .3s
    }

    .calc-progress-seg.done {
      background: rgba(255, 68, 68, .35)
    }

    .calc-progress-fill {
      height: 100%;
      width: 0;
      background: var(--red);
      border-radius: 100px;
      transition: width .45s cubic-bezier(.4, 0, .2, 1)
    }

    .calc-progress-seg.active .calc-progress-fill {
      width: 100%
    }

    .calc-steps {
      position: relative;
      min-height: 280px
    }

    .calc-step {
      position: absolute;
      inset: 0;
      opacity: 0;
      visibility: hidden;
      transform: translateX(24px);
      transition: opacity .4s cubic-bezier(.4, 0, .2, 1), transform .4s cubic-bezier(.4, 0, .2, 1), visibility .4s;
      text-align: left
    }

    .calc-step.active {
      position: relative;
      opacity: 1;
      visibility: visible;
      transform: translateX(0)
    }

    .calc-step.exit-left {
      transform: translateX(-24px);
      opacity: 0
    }

    .calc-step-label {
      font-size: .68rem;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: var(--red);
      font-weight: 600;
      margin-bottom: .35rem
    }

    .calc-step-title {
      font-family: var(--font-display);
      font-size: 1.05rem;
      font-weight: 700;
      margin-bottom: 1.2rem;
      letter-spacing: -.02em
    }

    .calc-types {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: .75rem
    }

    .calc-type-card {
      background: rgba(0, 0, 0, .35);
      border: 1px solid rgba(255, 255, 255, .07);
      border-radius: 12px;
      padding: 1.1rem 1rem;
      cursor: pointer;
      transition: border-color .25s, background .25s, transform .2s;
      text-align: left;
      display: flex;
      flex-direction: column;
      gap: .35rem
    }

    .calc-type-card:hover {
      border-color: rgba(255, 68, 68, .35);
      background: rgba(255, 68, 68, .04);
      transform: translateY(-2px)
    }

    .calc-type-card.selected {
      border-color: rgba(255, 68, 68, .55);
      background: rgba(255, 68, 68, .08);
      box-shadow: 0 0 24px rgba(255, 68, 68, .08)
    }

    .calc-type-icon {
      font-size: 1.35rem;
      line-height: 1
    }

    .calc-type-name {
      font-family: var(--font-display);
      font-size: .82rem;
      font-weight: 700;
      color: var(--white)
    }

    .calc-type-hint {
      font-size: .7rem;
      color: #777;
      font-weight: 300;
      line-height: 1.4
    }

    .calc-slider-wrap {
      margin-bottom: 1.4rem
    }

    .calc-slider-head {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: .65rem;
      gap: .5rem
    }

    .calc-slider-label {
      font-size: .82rem;
      color: var(--white);
      font-weight: 500
    }

    .calc-slider-val {
      font-family: var(--font-display);
      font-size: .95rem;
      font-weight: 700;
      color: var(--accent)
    }

    .calc-slider {
      -webkit-appearance: none;
      appearance: none;
      width: 100%;
      height: 4px;
      background: rgba(255, 255, 255, .1);
      border-radius: 100px;
      outline: none;
      cursor: pointer
    }

    .calc-slider::-webkit-slider-thumb {
      -webkit-appearance: none;
      width: 18px;
      height: 18px;
      border-radius: 50%;
      background: var(--red);
      border: 2px solid var(--black);
      box-shadow: 0 0 12px rgba(255, 68, 68, .4);
      cursor: pointer;
      transition: transform .15s
    }

    .calc-slider::-webkit-slider-thumb:hover {
      transform: scale(1.1)
    }

    .calc-slider::-moz-range-thumb {
      width: 18px;
      height: 18px;
      border-radius: 50%;
      background: var(--red);
      border: 2px solid var(--black);
      box-shadow: 0 0 12px rgba(255, 68, 68, .4);
      cursor: pointer
    }

    .calc-checks {
      display: flex;
      flex-direction: column;
      gap: .55rem
    }

    .calc-check {
      display: flex;
      align-items: flex-start;
      gap: .75rem;
      padding: .75rem .9rem;
      background: rgba(0, 0, 0, .3);
      border: 1px solid rgba(255, 255, 255, .06);
      border-radius: 10px;
      cursor: pointer;
      transition: border-color .2s, background .2s
    }

    .calc-check:hover {
      border-color: rgba(255, 255, 255, .12);
      background: rgba(255, 255, 255, .03)
    }

    .calc-check.checked {
      border-color: rgba(200, 255, 0, .25);
      background: rgba(200, 255, 0, .04)
    }

    .calc-check input {
      position: absolute;
      opacity: 0;
      pointer-events: none
    }

    .calc-check-box {
      width: 18px;
      height: 18px;
      border: 1.5px solid rgba(255, 255, 255, .2);
      border-radius: 5px;
      flex-shrink: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: all .2s;
      margin-top: 1px
    }

    .calc-check.checked .calc-check-box {
      background: var(--accent);
      border-color: var(--accent)
    }

    .calc-check.checked .calc-check-box::after {
      content: '✓';
      font-size: .65rem;
      font-weight: 800;
      color: var(--black);
      line-height: 1
    }

    .calc-check-text {
      flex: 1
    }

    .calc-check-name {
      font-size: .82rem;
      font-weight: 500;
      color: var(--white);
      margin-bottom: .1rem
    }

    .calc-check-desc {
      font-size: .72rem;
      color: #777;
      font-weight: 300;
      line-height: 1.45
    }

    .calc-radio-group {
      display: flex;
      flex-direction: column;
      gap: .55rem
    }

    .calc-radio {
      display: flex;
      align-items: center;
      gap: .75rem;
      padding: .8rem .95rem;
      background: rgba(0, 0, 0, .3);
      border: 1px solid rgba(255, 255, 255, .06);
      border-radius: 10px;
      cursor: pointer;
      transition: border-color .2s, background .2s
    }

    .calc-radio:hover {
      border-color: rgba(255, 255, 255, .12)
    }

    .calc-radio.selected {
      border-color: rgba(255, 68, 68, .35);
      background: rgba(255, 68, 68, .05)
    }

    .calc-radio input {
      position: absolute;
      opacity: 0;
      pointer-events: none
    }

    .calc-radio-dot {
      width: 16px;
      height: 16px;
      border: 1.5px solid rgba(255, 255, 255, .25);
      border-radius: 50%;
      flex-shrink: 0;
      position: relative;
      transition: border-color .2s
    }

    .calc-radio.selected .calc-radio-dot {
      border-color: var(--red)
    }

    .calc-radio.selected .calc-radio-dot::after {
      content: '';
      position: absolute;
      inset: 3px;
      background: var(--red);
      border-radius: 50%
    }

    .calc-radio-text {
      font-size: .84rem;
      font-weight: 500;
      color: var(--white)
    }

    .calc-nav {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-top: 1.5rem;
      padding-top: 1.2rem;
      border-top: 1px solid rgba(255, 255, 255, .06);
      gap: 1rem
    }

    .calc-back {
      background: transparent;
      border: 1px solid rgba(255, 255, 255, .12);
      color: var(--gray-light);
      padding: .55rem 1.1rem;
      border-radius: 100px;
      font-family: var(--font-body);
      font-size: .78rem;
      cursor: pointer;
      transition: border-color .2s, color .2s;
      opacity: 0;
      pointer-events: none
    }

    .calc-back.visible {
      opacity: 1;
      pointer-events: auto
    }

    .calc-back:hover {
      border-color: rgba(255, 255, 255, .3);
      color: var(--white)
    }

    .calc-next {
      background: var(--red);
      color: var(--white);
      border: none;
      padding: .65rem 1.4rem;
      border-radius: 100px;
      font-family: var(--font-body);
      font-size: .82rem;
      font-weight: 700;
      cursor: pointer;
      transition: background .2s, transform .15s, opacity .2s;
      margin-left: auto
    }

    .calc-next:hover:not(:disabled) {
      background: #ff5c5c;
      transform: translateY(-1px)
    }

    .calc-next:disabled {
      opacity: .35;
      cursor: not-allowed
    }

    .calc-result {
      text-align: center
    }

    .calc-savings-num {
      font-family: var(--font-display);
      font-size: 3.4rem;
      font-weight: 800;
      color: var(--red);
      letter-spacing: -.04em;
      line-height: 1;
      margin-bottom: .35rem;
      transition: transform .5s cubic-bezier(.4, 0, .2, 1)
    }

    .calc-savings-num.pop {
      animation: calcPop .6s cubic-bezier(.4, 0, .2, 1)
    }

    @keyframes calcPop {
      0% {
        transform: scale(.85);
        opacity: .5
      }

      60% {
        transform: scale(1.04)
      }

      100% {
        transform: scale(1);
        opacity: 1
      }
    }

    .calc-savings-label {
      font-size: .88rem;
      color: var(--white);
      font-weight: 500;
      margin-bottom: 1.4rem
    }

    .calc-compare {
      width: 100%;
      border-collapse: collapse;
      margin-bottom: 1.3rem;
      font-size: .8rem
    }

    .calc-compare th,
    .calc-compare td {
      padding: .65rem .5rem;
      text-align: center;
      border-bottom: 1px solid rgba(255, 255, 255, .06)
    }

    .calc-compare th {
      font-size: .65rem;
      letter-spacing: .08em;
      text-transform: uppercase;
      color: var(--gray-light);
      font-weight: 500
    }

    .calc-compare td {
      color: var(--white);
      font-weight: 400
    }

    .calc-compare .col-de {
      color: #aaa
    }

    .calc-compare .col-us {
      color: var(--accent);
      font-weight: 600
    }

    .calc-compare .col-save {
      color: var(--red);
      font-weight: 700;
      font-size: .92rem
    }

    .calc-compare tr:last-child td {
      border-bottom: none
    }

    .calc-perks {
      display: flex;
      flex-wrap: wrap;
      gap: .45rem;
      justify-content: center;
      margin-bottom: 1.2rem
    }

    .calc-perk {
      font-size: .7rem;
      padding: .35rem .75rem;
      background: rgba(200, 255, 0, .06);
      border: 1px solid rgba(200, 255, 0, .15);
      border-radius: 100px;
      color: rgba(200, 255, 0, .85);
      font-weight: 500
    }

    .calc-speed {
      font-size: .82rem;
      color: #aaa;
      line-height: 1.6;
      margin-bottom: 1.4rem;
      font-weight: 300
    }

    .calc-speed strong {
      color: var(--white);
      font-weight: 500
    }

    .calc-cta {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: .4rem;
      background: var(--accent);
      color: var(--black);
      font-family: var(--font-body);
      font-size: .88rem;
      font-weight: 700;
      padding: .85rem 1.6rem;
      border-radius: 100px;
      border: none;
      cursor: pointer;
      text-decoration: none;
      transition: background .2s, transform .15s;
      width: 100%;
      max-width: 360px
    }

    .calc-cta:hover {
      background: #d4ff1a;
      transform: translateY(-2px)
    }

    .calc-disclaimer {
      font-size: .68rem;
      color: #666;
      text-align: center;
      margin-top: 1rem;
      line-height: 1.5;
      font-weight: 300
    }

    .calc-restart {
      background: transparent;
      border: none;
      color: var(--gray-light);
      font-size: .72rem;
      cursor: pointer;
      margin-top: .8rem;
      text-decoration: underline;
      text-underline-offset: 3px;
      transition: color .2s
    }

    .calc-restart:hover {
      color: var(--white)
    }

    /* CASES */
    #cases {
      background: var(--black)
    }

    .cases-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 1.5rem;
      margin-top: 3.5rem
    }

    .case-card {
      background: var(--gray);
      border: 1px solid rgba(255, 255, 255, .07);
      border-radius: 16px;
      padding: 2rem;
      transition: border-color .3s, transform .3s;
      cursor: default;
      display: flex;
      flex-direction: column;
      justify-content: space-between
    }

    .case-card:hover {
      border-color: rgba(200, 255, 0, .3);
      transform: translateY(-4px)
    }

    .case-card:active {
      transform: scale(0.97)
    }

    .case-niche {
      font-size: .68rem;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: var(--accent);
      font-weight: 600;
      margin-bottom: .9rem
    }

    .case-title {
      font-family: var(--font-display);
      font-size: 1rem;
      font-weight: 700;
      margin-bottom: .7rem;
      letter-spacing: -.01em;
      line-height: 1.25
    }

    .case-desc {
      color: #999;
      font-size: .88rem;
      line-height: 1.7;
      font-weight: 300;
      margin-bottom: 0;
      flex: 1
    }

    .case-results {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: .5rem;
      border-top: 1px solid rgba(255, 255, 255, .08);
      padding-top: 1.2rem;
      margin-top: 1.5rem;
      text-align: center
    }

    .case-result-num {
      font-family: var(--font-body);
      font-size: 1.3rem;
      font-weight: 700;
      color: var(--accent);
      line-height: 1.15
    }

    .case-result-text {
      color: var(--gray-light);
      font-size: .72rem;
      font-weight: 300;
      line-height: 1.3;
      margin-top: .2rem
    }

    /* CTA2 */
    #cta2 {
      background: var(--gray)
    }

    .cta2-inner {
      max-width: 700px;
      margin: 0 auto;
      text-align: center
    }

    .cta2-inner .section-title {
      max-width: none;
      margin-bottom: 1.2rem
    }

    .cta2-sub {
      color: #999;
      font-size: .98rem;
      line-height: 1.8;
      font-weight: 300;
      margin-bottom: 2.2rem
    }

    .cta2-guarantee {
      display: inline-flex;
      align-items: center;
      gap: .5rem;
      font-size: .8rem;
      color: rgba(245, 242, 237, .45);
      margin-top: 1.2rem
    }

    .cta2-guarantee::before {
      content: '✓';
      color: var(--accent);
      font-weight: 700;
      font-size: .85rem
    }

    /* SERVICES */
    #services {
      background: var(--black)
    }

    .services-header {
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      margin-bottom: 3.5rem;
      gap: 2rem;
      flex-wrap: wrap
    }

    .services-desc {
      color: #999;
      max-width: 360px;
      font-weight: 300;
      font-size: .9rem;
      line-height: 1.7
    }

    .services-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 1px;
      background: rgba(255, 255, 255, .06);
      border: 1px solid rgba(255, 255, 255, .06);
      border-radius: 16px;
      overflow: hidden
    }

    .service-card {
      background: var(--gray);
      padding: 2rem;
      transition: background .3s;
      position: relative;
      overflow: hidden;
      cursor: default
    }

    .service-card::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      height: 2px;
      background: var(--accent);
      transform: scaleX(0);
      transform-origin: left;
      transition: transform .35s
    }

    .service-card:hover {
      background: var(--gray-mid)
    }

    .service-card:hover::after {
      transform: scaleX(1)
    }

    .service-icon {
      width: 42px;
      height: 42px;
      background: rgba(200, 255, 0, .1);
      border-radius: 10px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 1.2rem;
      font-size: 1.2rem
    }

    .service-title {
      font-family: var(--font-display);
      font-size: .95rem;
      font-weight: 700;
      margin-bottom: .5rem;
      letter-spacing: -.01em
    }

    .service-desc {
      color: #999;
      font-size: .88rem;
      line-height: 1.7;
      font-weight: 300
    }

    /* PROCESS */
    #process {
      background: var(--gray)
    }

    .process-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 1.5rem;
      margin-top: 3.5rem;
      align-items: start
    }

    .process-step {
      position: relative;
      display: flex;
      flex-direction: column;
      padding: .5rem;
      border-radius: 12px;
      transition: background .3s
    }

    .process-step:hover {
      background: rgba(200, 255, 0, .03)
    }

    .process-step:not(:last-child)::after {
      content: '→';
      position: absolute;
      top: 1.2rem;
      right: -1rem;
      color: var(--accent);
      font-size: 1rem;
      opacity: 0;
      transition: opacity .3s, transform .3s
    }

    .process-step:hover:not(:last-child)::after {
      opacity: 1;
      transform: translateX(4px)
    }

    .step-num {
      font-family: var(--font-body);
      font-size: 2.8rem;
      font-weight: 700;
      color: rgba(200, 255, 0, .3);
      line-height: 1;
      margin-bottom: 1rem;
      letter-spacing: -.04em;
      transition: color .3s
    }

    .process-step:hover .step-num {
      color: rgba(200, 255, 0, .65)
    }

    .step-title {
      font-family: var(--font-display);
      font-size: .9rem;
      font-weight: 700;
      margin-bottom: .45rem
    }

    .step-desc {
      color: #999;
      font-size: .88rem;
      line-height: 1.65;
      font-weight: 300
    }

    /* CONTACT */
    #contact {
      background: var(--black)
    }

    .contact-inner {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 5rem;
      align-items: start
    }

    .contact-info {
      margin-top: 1.8rem;
      display: flex;
      flex-direction: column;
      gap: .8rem
    }

    .contact-item {
      display: flex;
      align-items: center;
      gap: .9rem;
      font-size: .86rem
    }

    .contact-item a,
    .contact-item span {
      color: var(--white);
      text-decoration: none;
      transition: color .2s
    }

    .contact-item a:hover {
      color: var(--accent)
    }

    .contact-item-icon {
      width: 32px;
      height: 32px;
      background: rgba(255, 255, 255, .05);
      border-radius: 8px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--accent);
      flex-shrink: 0
    }

    .contact-form {
      display: flex;
      flex-direction: column;
      gap: 1rem
    }

    .form-group {
      display: flex;
      flex-direction: column;
      gap: .4rem
    }

    .form-label {
      font-size: .68rem;
      letter-spacing: .07em;
      text-transform: uppercase;
      color: var(--gray-light);
      font-weight: 500
    }

    .form-input,
    .form-select,
    .form-textarea {
      background: rgba(255, 255, 255, .05);
      border: 1px solid rgba(255, 255, 255, .08);
      border-radius: 10px;
      padding: .75rem .95rem;
      color: var(--white);
      font-family: var(--font-body);
      font-size: .86rem;
      font-weight: 300;
      outline: none;
      transition: border-color .2s, background .2s;
      width: 100%;
      max-width: 100%
    }

    .form-input:focus,
    .form-select:focus,
    .form-textarea:focus {
      border-color: rgba(200, 255, 0, .4);
      background: rgba(200, 255, 0, .03)
    }

    .form-select option {
      background: #111
    }

    .contact-form,
    .contact-form * {
      min-width: 0
    }

    .form-label {
      overflow-wrap: break-word;
      word-break: normal
    }

    .form-textarea {
      min-height: 110px;
      resize: vertical
    }

    .form-submit {
      background: var(--accent);
      color: var(--black);
      font-family: var(--font-body);
      font-size: .92rem;
      font-weight: 700;
      padding: .95rem;
      border-radius: 100px;
      border: none;
      cursor: pointer;
      transition: background .2s, transform .15s;
      width: 100%;
      margin-top: .2rem
    }

    .form-submit:hover {
      background: #d4ff1a;
      transform: translateY(-1px)
    }

    .form-submit:disabled {
      opacity: .6;
      cursor: not-allowed;
      transform: none
    }

    .form-note {
      font-size: .72rem;
      color: var(--gray-light);
      text-align: center;
      margin-top: .3rem
    }

    .success-msg {
      display: none;
      background: rgba(200, 255, 0, .06);
      border: 1px solid rgba(200, 255, 0, .2);
      border-radius: 14px;
      padding: 2.5rem;
      text-align: center
    }

    .success-msg.show {
      display: block
    }

    .success-icon {
      font-size: 2.2rem;
      margin-bottom: .6rem
    }

    .success-title {
      font-family: var(--font-display);
      font-size: 1.1rem;
      font-weight: 700;
      color: var(--accent);
      margin-bottom: .35rem
    }

    .success-sub {
      color: var(--gray-light);
      font-size: .85rem;
      line-height: 1.6
    }

    /* FOOTER */
    footer {
      border-top: 1px solid rgba(255, 255, 255, .06);
      padding: 2rem 4rem;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 1rem;
      background: var(--black)
    }

    .footer-copy {
      color: var(--gray-light);
      font-size: .78rem;
      font-weight: 300
    }

    .footer-links {
      display: flex;
      gap: 1.8rem;
      list-style: none
    }

    .footer-links a {
      color: var(--gray-light);
      text-decoration: none;
      font-size: .78rem;
      transition: color .2s
    }

    .footer-links a:hover {
      color: var(--white)
    }

    /* TOAST */
    .toast {
      position: fixed;
      bottom: 1.5rem;
      right: 1.5rem;
      background: #1c1c1c;
      border: 1px solid rgba(200, 255, 0, .25);
      border-radius: 12px;
      padding: .9rem 1.3rem;
      font-size: .84rem;
      color: var(--white);
      z-index: 999;
      transform: translateY(80px);
      opacity: 0;
      transition: all .3s;
      max-width: min(280px, calc(100vw - 2rem));
      pointer-events: none
    }

    .toast.show {
      transform: translateY(0);
      opacity: 1
    }

    /* REVEAL */
    .reveal {
      opacity: 0;
      transform: translateY(36px);
      transition: opacity .7s cubic-bezier(.4, 0, .2, 1), transform .7s cubic-bezier(.4, 0, .2, 1)
    }

    .reveal.visible {
      opacity: 1;
      transform: translateY(0)
    }

    /* MOBILE */
    @media(max-width:900px) {
      nav {
        padding: .85rem 1.2rem
      }

      .nav-links {
        display: none
      }

      .nav-cta {
        display: none
      }

      .nav-cta-mob {
        display: flex;
        background: var(--accent);
        color: var(--black);
        padding: .35rem .75rem;
        border-radius: 100px;
        font-weight: 700;
        font-size: .73rem;
        text-decoration: none;
        white-space: nowrap;
        max-width: 44vw;
        overflow: hidden;
        text-overflow: ellipsis
      }

      .nav-right {
        gap: .5rem;
        flex-shrink: 0
      }

      .logo {
        max-width: 44vw;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
      }

      .lang-btn {
        padding: .3rem .45rem;
        font-size: .72rem;
        gap: .2rem
      }

      .lang-dropdown {
        min-width: 140px
      }

      .hero {
        padding: 5.5rem 1.2rem 3rem;
        min-height: 60vh;
        grid-template-columns: 1fr;
        gap: 0
      }

      .hero-visual {
        display: block;
        opacity: .55
      }

      .hero-scroll {
        display: none
      }

      .hero h1 {
        font-size: clamp(2.2rem, 9vw, 3rem);
        margin-bottom: 1.2rem
      }

      .hero-sub {
        font-size: .95rem;
        margin-bottom: 1.2rem;
        max-width: 100%
      }

      .hero-actions {
        flex-direction: column;
        align-items: stretch
      }

      .btn-primary,
      .btn-secondary {
        text-align: center;
        justify-content: center;
        padding: .85rem 1.5rem;
        font-size: .9rem
      }

      .stats-bar {
        grid-template-columns: repeat(2, 1fr);
        padding: 1.8rem 1.2rem;
        gap: 1.2rem
      }

      .stat-num {
        font-size: 2.2rem;
        white-space: normal
      }

      .stat-label {
        max-width: none
      }

      .calc-savings-num {
        font-size: 2.5rem
      }

      .calc-types {
        grid-template-columns: 1fr
      }

      .calc-card {
        padding: 1.5rem 1.2rem 1.3rem
      }

      .calc-steps {
        min-height: 300px
      }

      .calc-compare {
        font-size: .75rem
      }

      .calc-compare th,
      .calc-compare td {
        padding: .5rem .3rem
      }

      .calc-compare {
        font-size: .68rem
      }

      .calc-perk {
        font-size: .65rem;
        padding: .3rem .55rem
      }

      .calc-nav {
        flex-wrap: wrap
      }

      .calc-next {
        width: 100%;
        justify-content: center
      }

      .calc-back.visible {
        width: 100%;
        text-align: center
      }

      section {
        padding: 3.5rem 1.2rem
      }

      .problem-inner {
        grid-template-columns: 1fr;
        gap: 2.5rem
      }

      .pain-grid {
        grid-template-columns: 1fr
      }

      .cases-grid {
        grid-template-columns: 1fr
      }

      .case-results {
        grid-template-columns: repeat(3, 1fr)
      }

      .services-header {
        flex-direction: column;
        margin-bottom: 2rem
      }

      .services-grid {
        grid-template-columns: 1fr
      }

      .service-card {
        padding: 1.6rem
      }

      .process-grid {
        grid-template-columns: 1fr 1fr;
        gap: 1.2rem
      }

      .process-step:not(:last-child)::after {
        display: none
      }

      .step-num {
        font-size: 2.2rem
      }

      .contact-inner {
        grid-template-columns: 1fr;
        gap: 2.5rem
      }

      footer {
        flex-direction: column;
        align-items: flex-start;
        padding: 1.8rem 1.2rem
      }

      .footer-links {
        flex-wrap: wrap;
        gap: 1.2rem
      }
    }

    @media(max-width:480px) {
      .logo {
        font-size: 1.1rem
      }

      .process-grid {
        grid-template-columns: 1fr
      }

      .case-results {
        grid-template-columns: 1fr
      }
    }

    @media(max-width:640px) {
      .nav-links {
        display: none
      }

      .nav-cta {
        display: none
      }

      .logo {
        font-size: 14px
      }
    }

    @media(max-width:420px) {
      nav {
        padding: .6rem .75rem
      }

      .logo {
        max-width: 40vw
      }

      .nav-cta-mob {
        font-size: .68rem;
        padding: .28rem .55rem;
        max-width: 40vw
      }
    }
