/* Hero layout and visual treatment. */
    .hero {
      position: relative;
      padding: clamp(4.5rem, 8vw, 7.5rem) 0 clamp(5rem, 9vw, 8rem);
      overflow: hidden;
    }

    .hero::after {
      position: absolute;
      top: 8%;
      right: -15rem;
      width: 34rem;
      height: 34rem;
      border-radius: 50%;
      background: var(--lime-soft);
      content: '';
      filter: blur(4px);
      z-index: -1;
    }

    .hero-grid {
      display: grid;
      grid-template-columns: minmax(0, 0.92fr) minmax(30rem, 1.08fr);
      align-items: center;
      gap: clamp(2.5rem, 6vw, 6rem);
    }

    .hero-copy .eyebrow {
      margin-bottom: 1.5rem;
    }

    .hero-copy .display {
      max-width: 9.5ch;
    }

    .hero-lede {
      max-width: 35rem;
      margin-top: 1.75rem;
      color: var(--muted);
      font-size: clamp(1.05rem, 1.7vw, 1.22rem);
      line-height: 1.65;
    }

    .hero-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.8rem;
      margin-top: 2rem;
    }

    .hero-notes {
      display: flex;
      flex-wrap: wrap;
      gap: 0.55rem;
      margin-top: 2.1rem;
      list-style: none;
    }

    .hero-notes li {
      padding: 0.45rem 0.75rem;
      border: 1px solid var(--line);
      border-radius: 999px;
      color: var(--muted);
      background: rgba(255, 253, 248, 0.55);
      font-size: 0.78rem;
      font-weight: 600;
    }

    .hero-visual {
      position: relative;
      min-height: 32rem;
      display: grid;
      place-items: center;
      isolation: isolate;
    }

    .hero-shape {
      position: absolute;
      width: 88%;
      aspect-ratio: 1.08;
      border-radius: 48% 52% 44% 56% / 54% 42% 58% 46%;
      background: var(--lime);
      transform: rotate(-4deg);
      z-index: -1;
    }

    .hero-phones {
      width: min(100%, 43rem);
      filter: drop-shadow(0 34px 35px rgba(20, 24, 15, 0.2));
      transform: rotate(1.5deg);
    }

    .visual-note {
      position: absolute;
      right: 0;
      bottom: 1rem;
      width: min(15rem, 44%);
      padding: 1rem 1.1rem;
      border: 1px solid rgba(23, 25, 20, 0.12);
      border-radius: var(--radius-sm);
      background: rgba(255, 253, 248, 0.92);
      box-shadow: 0 16px 40px rgba(35, 39, 29, 0.14);
      font-size: 0.88rem;
      font-weight: 600;
      line-height: 1.35;
      transform: rotate(-2deg);
    }

    .visual-note span {
      display: block;
      margin-bottom: 0.3rem;
      color: var(--red);
      font-size: 0.68rem;
      font-weight: 700;
      letter-spacing: 0.11em;
      text-transform: uppercase;
    }
