    /* Reset & base */
    *, *::before, *::after {
      box-sizing: border-box;
    }
    body {
      margin: 0;
      font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
      background-color: #fff;
      color: #333;
      line-height: 1.5;
    }
    a {
      color: inherit;
      text-decoration: none;
      cursor: pointer;
    }
    a:hover, a:focus {
      text-decoration: underline;
    }

    /* Utilidade */
    .container {
      max-width: 1140px;
      margin-left: auto;
      margin-right: auto;
      padding-left: 16px;
      padding-right: 16px;
    }
    .text-center {
      text-align: center;
    }
    .bold {
      font-weight: 700;
    }
    .underline-yellow {
      text-decoration-color: #ffcc00;
      text-decoration-thickness: 3px;
    }
    .btn-yellow {
      background-color: #ffcc00;
      color: #0033a0;
      font-weight: 700;
      border: none;
      padding: 0.75rem 1.6rem;
      border-radius: 6px;
      cursor: pointer;
      transition: background-color 0.3s ease;
      display: inline-block;
      font-size: 1rem;
      user-select: none;
    }
    .btn-yellow:hover, .btn-yellow:focus {
      background-color: #e6b800;
      outline: none;
    }
    .highlight-yellow {
      color: #ffcc00;
      font-weight: 700;
    }
    .highlight-blue {
      color: #005bcc;
      font-weight: 700;
    }
    .flex {
      display: flex;
    }
    .flex-center {
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .flex-wrap {
      flex-wrap: wrap;
    }
    .gap-24 {
      gap: 24px;
    }
    .gap-48 {
      gap: 48px;
    }
    .gap-12 {
      gap: 12px;
    }
    .mb-24 {
      margin-bottom: 24px;
    }
    .mb-48 {
      margin-bottom: 48px;
    }
    .mb-8 {
      margin-bottom: 8px;
    }
    .mb-4 {
      margin-bottom: 4px;
    }
    .mt-48 {
      margin-top: 48px;
    }
    .mt-24 {
      margin-top: 24px;
    }
    .mt-12 {
      margin-top: 12px;
    }
    .rounded-lg {
      border-radius: 10px;
    }
    .shadow-soft {
      box-shadow: 0 8px 20px rgb(0 0 0 / 0.1);
    }
    .uppercase {
      text-transform: uppercase;
      font-weight: 600;
    }
    .blue-text {
      color: #005bcc;
    }
    .pointer {
      cursor: pointer;
    }
    section {
      scroll-margin-top: 80px;
    }

    /* Seção Header */
    header {
      background: #005bcc;
      color: white;
      position: relative;
      padding: 40px 16px 80px 16px;
      overflow: hidden;
    }
    header .container {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      max-width: 1200px;
    }
    header .logo {
      font-family: 'Pacifico', cursive;
      font-weight: 900;
      font-size: 2.3rem;
      letter-spacing: -0.05em;
      user-select: none;
      color: #ffcc00;
      display: flex;
      align-items: baseline;
      gap: 3px;
    }
    header .logo span {
      font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
      font-weight: 700;
      color: white;
      font-size: 2rem;
      user-select: none;
    }
    header nav {
      font-weight: 600;
      font-size: 1rem;
    }
    header nav a {
      color: white;
      letter-spacing: 0.02em;
      padding: 6px 8px;
      border-bottom: 2px solid transparent;
      transition: border-color 0.3s ease;
      display: inline-flex;
      align-items: center;
      gap: 6px;
    }
    header nav a:hover,
    header nav a:focus {
      border-color: #ffcc00;
      outline: none;
    }
    header nav a svg {
      fill: #ffcc00;
      width: 18px;
      height: 18px;
    }

    /* Main Hero Content */
    .hero-content {
      flex: 1 1 480px;
      max-width: 600px;
      color: white;
      z-index: 2;
    }
    .hero-content h1 {
      font-weight: 900;
      font-size: 2.3rem;
      line-height: 1.2;
      margin-bottom: 20px;
    }
    .hero-content h1 .highlight-yellow {
      font-weight: 900;
    }
    .hero-content p {
      font-weight: 400;
      font-size: 1rem;
      line-height: 1.5;
      margin-bottom: 24px;
      max-width: 480px;
      color: #e4e9f0;
    }

    /* Hero Button */
    .hero-content .btn-yellow {
      font-size: 1.1rem;
      padding: 12px 28px;
      min-width: 220px;
    }

    /* Hero Image */
    .hero-image-wrapper {
      flex: 1 1 320px;
      max-width: 400px;
      margin-left: 40px;
      position: relative;
      z-index: 2;
    }
    .hero-image-wrapper img {
      width: 100%;
      max-width: 400px;
      height: auto;
      border-radius: 0;
      box-shadow: none;
      user-select: none;
      pointer-events: none;
    }

    /* WhatsApp */
    .whatsapp-button {
      position: fixed;
      bottom: 24px;
      right: 24px;
      background-color: #25D366;
      width: 60px;
      height: 60px;
      border-radius: 50%;
      box-shadow: 0 4px 12px rgb(37 211 102 / 0.7);
      display: flex;
      justify-content: center;
      align-items: center;
      cursor: pointer;
      z-index: 9999;
      transition: background-color 0.3s ease;
    }
    .whatsapp-button svg {
      width: 30px;
      height: 30px;
      fill: white;
    }
    .whatsapp-button:hover {
      background-color: #1ebe57;
      outline: none;
    }

    /* Hero background shapes */
    header::before {
      content: "";
      position: absolute;
      top: 10%;
      right: 0;
      width: 300px;
      height: 300px;
      background: radial-gradient(circle at center, #0046b8, transparent 80%);
      opacity: 0.5;
      border-radius: 50%;
      z-index: 1;
    }
    header::after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 0;
      width: 300px;
      height: 400px;
      background: radial-gradient(circle at center, #003c92, transparent 85%);
      opacity: 0.7;
      border-radius: 50%;
      z-index: 1;
    }