@import url('https://fonts.googleapis.com/css2?family=Anton&family=Space+Mono:wght@400;700&display=swap');

    :root {
      --neon: #7a1025;
      --bg: #050405;
      --text: #f4f4ed;
      --muted: #aaa99e;
      --line: rgba(255,255,255,.12);
    }

    * { box-sizing: border-box; margin: 0; padding: 0; }

    html {
      scroll-behavior: smooth;
    }

    html, body {
      user-select: none;
      -webkit-user-select: none;
    }

    img {
      -webkit-user-drag: none;
    }

    html { background: var(--bg); }
    body {
      min-height: 100vh;
      background:
        radial-gradient(circle at 35% 45%, rgba(122,16,37,.13), transparent 35%),
        linear-gradient(110deg, #050505 0%, #090506 55%, #030203 100%);
      color: var(--text);
      font-family: Arial, Helvetica, sans-serif;
    }

    .page {
      width: min(1650px, 100%);
      min-height: calc(100vh - 122px);
      margin: auto;
      display: grid;
      grid-template-columns: 1fr 600px;
      gap: 80px;
      align-items: stretch;
      align-content: start;
      padding: 40px 65px 40px;
    }

    /* ===== ÁREA ESQUERDA ===== */
    .content {
      max-width: 760px;
    }

    .headline {
      font-family: Anton, Impact, sans-serif;
      font-size: clamp(52px, 4.6vw, 92px);
      line-height: 1.1;
      letter-spacing: -1px;
      text-transform: uppercase;
      text-align: left;
    }

    .headline .headline-nowrap { display: inline-block; white-space: nowrap; }
    .headline .neon { color: var(--neon); }
    .headline .headline-sub {
      display: block;
      margin: 0;
      font-size: 0.4em;
      letter-spacing: 0.4px;
      word-spacing: 0.15em;
      line-height: 1.3;
    }

    .description {
      margin-top: 34px;
      max-width: 680px;
      color: var(--muted);
      font-size: 20px;
      line-height: 1.55;
      font-weight: 600;
    }

    .price {
      margin-top: 38px;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 9px;
    }

    .price-main {
      display: flex;
      align-items: baseline;
      color: var(--neon);
      line-height: .9;
      column-gap: 14px;
      flex-wrap: wrap;
    }

    .old-price {
      color: #776f73;
      font-size: 16px;
      text-decoration: line-through;
      margin-bottom: 0;
      white-space: nowrap;
    }

    .price-row {
      display: flex;
      align-items: baseline;
      color: var(--neon);
      line-height: .9;
    }

    .currency {
      font-family: "Space Mono", monospace;
      font-size: 19px;
      font-weight: 700;
      margin-right: 5px;
    }

    .price-row strong,
    .price-main strong {
      font-family: Anton, Impact, sans-serif;
      font-size: 62px;
      letter-spacing: -1px;
    }

    .price-label {
      display: flex;
      align-items: center;
      gap: 6px;
      color: #92868c;
      font-family: "Space Mono", monospace;
      font-size: 10px;
      font-weight: 700;
      letter-spacing: 2px;
      text-transform: uppercase;
    }

    .price-label::before {
      content: "";
      width: 14px;
      height: 1px;
      background: rgba(122,16,37,.6);
    }

    .cta {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 390px;
      height: 58px;
      margin-top: 48px;
      padding: 0 32px;
      border-radius: 40px;
      background: var(--neon);
      color: #080405;
      text-decoration: none;
      font-family: "Space Mono", monospace;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 1px;
      box-shadow: 0 0 28px rgba(122,16,37,.22);
      transition: transform .2s, box-shadow .2s;
    }

    .cta-big {
      min-width: 520px;
      height: 82px;
      margin-top: 44px;
      padding: 0 44px;
      font-size: 18px;
      letter-spacing: 1.4px;
      box-shadow: 0 0 40px rgba(122,16,37,.32);
    }

    .cta:hover {
      transform: translateY(-2px);
      box-shadow: 0 0 38px rgba(122,16,37,.38);
    }

    .access-modal { display:none; position:fixed; inset:0; z-index:20; align-items:center; justify-content:center; padding:20px; background:rgba(3,2,3,.86); backdrop-filter:blur(7px); }
    .access-modal.show { display:flex; }
    .access-dialog {
      width:min(540px,100%); max-height:92vh; overflow:auto;
      background:linear-gradient(180deg,#140b0e,#0c0709 55%);
      border:1px solid rgba(152,29,56,.55); border-top:2px solid var(--neon);
      border-radius:20px;
      box-shadow:0 30px 90px rgba(0,0,0,.65), 0 0 60px rgba(122,16,37,.16);
    }
    .access-dialog::-webkit-scrollbar { width:8px; }
    .access-dialog::-webkit-scrollbar-thumb { background:rgba(152,29,56,.5); border-radius:8px; }
    .access-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding:26px 26px 20px; border-bottom:1px solid rgba(255,255,255,.08); }
    .access-eyebrow { display:block; margin-bottom:8px; color:#e7b6c2; font-family:"Space Mono",monospace; font-size:10px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; }
    .access-head h2 { color:var(--text); font-family:Anton,Impact,sans-serif; font-size:30px; font-weight:400; text-transform:uppercase; line-height:1.05; }
    .access-head p { margin-top:8px; color:#9a9195; font-size:12.5px; line-height:1.55; max-width:38ch; }
    .access-close {
      flex-shrink:0; width:36px; height:36px; display:flex; align-items:center; justify-content:center;
      border:1px solid rgba(255,255,255,.14); border-radius:10px; background:#14090d; color:#ddd;
      font-size:18px; line-height:1; cursor:pointer; transition:background .15s ease,border-color .15s ease,color .15s ease;
    }
    .access-close:hover { background:#2a0712; border-color:var(--neon); color:#fff; }
    .access-form { display:grid; gap:16px; padding:24px 26px 28px; }
    .access-fields { display:grid; gap:18px; }
    .access-form label { display:grid; gap:7px; color:#cfc7ca; font-family:"Space Mono",monospace; font-size:10.5px; text-transform:uppercase; letter-spacing:.08em; }
    .access-form input {
      width:100%; padding:13px 14px; border:1px solid rgba(255,255,255,.12); border-radius:11px;
      background:#0f0a0c; color:var(--text); outline:0; font-size:14px; font-family:inherit;
      transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
    }
    .access-form input::placeholder { color:#6b6265; }
    .access-form input:focus { border-color:var(--neon); background:#130c0f; box-shadow:0 0 0 3px rgba(122,16,37,.2); }
    .nickname-status { display:block; min-height:14px; font-size:10px; text-transform:none; letter-spacing:0; font-family:Arial,sans-serif; }
    .nickname-status.checking { color:#8a8286; }
    .nickname-status.available { color:#79e5ac; }
    .nickname-status.taken { color:#ff9cab; }
    .terms-box { overflow:hidden; padding:0; border:1px solid rgba(255,255,255,.1); border-radius:12px; background:#0f0a0c; }
    .terms-toggle { width:100%; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:13px 15px; border:0; background:transparent; cursor:pointer; text-align:left; }
    .terms-toggle strong { display:flex; align-items:center; gap:7px; color:#f4f4ed; font-family:"Space Mono",monospace; font-size:11px; letter-spacing:.06em; text-transform:uppercase; }
    .terms-toggle strong::before { content:"⚠"; color:#e7b6c2; font-size:12px; }
    .terms-toggle-label { flex-shrink:0; color:#e7b6c2; font-family:"Space Mono",monospace; font-size:9.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
    .terms-box.open .terms-toggle-label { color:#79e5ac; }
    .terms-box.open .terms-toggle { border-bottom:1px solid rgba(255,255,255,.08); }
    .terms-content { max-height:0; overflow:hidden; padding:0 15px; color:#a79ea1; font-family:"Space Mono",monospace; font-size:10px; line-height:1.7; transition:max-height .3s ease, padding .3s ease; }
    .terms-box.open .terms-content { max-height:260px; padding:12px 15px 15px; overflow-y:auto; }
    .terms-content::-webkit-scrollbar { width:6px; }
    .terms-content::-webkit-scrollbar-thumb { background:rgba(152,29,56,.5); border-radius:6px; }
    .terms-list { list-style:none; counter-reset:terms-counter; margin:0; padding:0; display:grid; gap:12px; }
    .terms-list li { counter-increment:terms-counter; position:relative; padding-left:22px; }
    .terms-list li::before { content:counter(terms-counter) "."; position:absolute; left:0; top:0; color:#e7b6c2; font-weight:700; }
    .terms-list strong { display:block; margin-bottom:3px; color:#f4f4ed; font-size:10.5px; letter-spacing:.04em; text-transform:uppercase; }
    .terms-list p { margin:0; color:#a79ea1; font-size:10px; line-height:1.65; }
    .access-actions { display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin-top:4px; }
    .terms-check { display:flex!important; align-items:flex-start; flex:1 1 220px; min-width:200px; gap:10px!important; padding-top:2px; color:#b8b0b3!important; font-family:Arial,sans-serif!important; font-size:11.5px!important; line-height:1.5; text-transform:none!important; letter-spacing:0!important; transition:opacity .15s ease; }
    .terms-check.disabled { opacity:.4; }
    .terms-check.disabled span { cursor:not-allowed; }
    .terms-check input {
      appearance:none; -webkit-appearance:none; width:18px; height:18px; min-width:18px; margin-top:1px;
      border:1px solid rgba(255,255,255,.25); border-radius:5px; background:#0f0a0c; cursor:pointer; position:relative;
      transition:background .15s ease, border-color .15s ease;
    }
    .terms-check input:disabled { cursor:not-allowed; }
    .terms-check input:checked { background:var(--neon); border-color:var(--neon); }
    .terms-check input:checked::after { content:"✓"; position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:#fff; font-size:12px; }
    .access-submit {
      flex:0 0 auto; border:0; border-radius:12px; padding:15px 22px; white-space:nowrap;
      background:linear-gradient(135deg,var(--neon),#981d38); color:#fff;
      font-family:"Space Mono",monospace; font-weight:700; letter-spacing:.06em; font-size:13px;
      cursor:pointer; box-shadow:0 16px 34px rgba(122,16,37,.35);
      transition:transform .15s ease, box-shadow .15s ease, opacity .15s ease;
    }
    .access-submit:hover { transform:translateY(-2px); box-shadow:0 20px 44px rgba(122,16,37,.45); }
    .access-submit:active { transform:translateY(0); }
    .access-submit:disabled { opacity:.5; cursor:not-allowed; transform:none; box-shadow:none; }
    .access-status { display:none; padding:13px 14px; border-radius:11px; background:rgba(54,206,136,.1); border:1px solid rgba(54,206,136,.25); color:#79e5ac; font-size:12.5px; line-height:1.6; }
    .access-status.show { display:block; }
    .pix-result { display:none; gap:14px; padding:18px; border:1px solid rgba(54,206,136,.3); border-radius:14px; background:rgba(54,206,136,.05); }
    .pix-result.show { display:grid; }
    .pix-result h3 { color:#79e5ac; font-size:15px; letter-spacing:.03em; text-transform:uppercase; }
    .pix-qr { width:220px; height:220px; margin:auto; background:#fff; border-radius:10px; object-fit:contain; padding:10px; }
    .pix-code { width:100%; min-height:78px; resize:vertical; padding:12px; border:1px solid rgba(255,255,255,.12); border-radius:10px; background:#0f0a0c; color:#ddd; font:11px/1.5 "Space Mono",monospace; }
    .pix-copy { border:1px solid rgba(54,206,136,.4); border-radius:10px; padding:12px; background:rgba(54,206,136,.12); color:#c9ffe0; font-weight:700; letter-spacing:.04em; cursor:pointer; transition:background .15s ease; }
    .pix-copy:hover { background:rgba(54,206,136,.2); }

    .micro {
      margin-top: 18px;
      display: flex;
      gap: 42px;
      color: #aaa99e;
      font-family: "Space Mono", monospace;
      font-size: 13px;
      letter-spacing: 1px;
    }

    .micro span::before {
      content: "→";
      color: var(--neon);
      margin-right: 7px;
    }

    .stats {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 28px;
      margin-top: 52px;
      padding-top: 36px;
      border-top: 1px solid var(--line);
    }

    .stat {
      padding-left: 24px;
      border-left: 1px solid var(--line);
    }

    .stat:first-child {
      padding-left: 0;
      border-left: 0;
    }

    .stat strong {
      display: block;
      font-family: Anton, Impact, sans-serif;
      color: var(--neon);
      font-size: 42px;
      letter-spacing: -0.5px;
      line-height: 1;
      text-transform: uppercase;
      margin-bottom: 12px;
    }

    .stat span {
      display: block;
      color: #85857d;
      font-family: "Space Mono", monospace;
      font-size: 10.5px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 1.4px;
    }

    /* ===== CARROSSEL ===== */
    .gallery {
      position: relative;
      width: 100%;
      height: 100%;
      overflow: hidden;
      border: 1px solid rgba(122,16,37,.55);
      border-radius: 18px;
      background: #111;
      box-shadow: 0 24px 55px rgba(0,0,0,.42), 0 0 34px rgba(122,16,37,.14);
    }

    .slides {
      width: 100%;
      height: 100%;
      position: relative;
    }

    .slide {
      position: absolute;
      inset: 0;
      opacity: 0;
      transition: opacity .45s ease;
      pointer-events: none;
    }

    .slide.active {
      opacity: 1;
      pointer-events: auto;
    }

    .slide img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
      object-position: center center;
    }

    /* Enquadra a primeira foto no rosto sem cortar o coque. */
    .slide:first-child img { object-position: center top; }

    .arrow {
      position: absolute;
      z-index: 5;
      top: 50%;
      transform: translateY(-50%);
      width: 42px;
      height: 42px;
      border: 0;
      border-radius: 50%;
      background: rgba(0,0,0,.48);
      color: white;
      cursor: pointer;
      font-size: 27px;
      line-height: 42px;
    }

    .arrow:hover { background: rgba(0,0,0,.7); }
    .prev { left: 14px; }
    .next { right: 14px; }

    .image-counter {
      position: absolute;
      top: 18px;
      right: 20px;
      z-index: 6;
      font-family: "Space Mono", monospace;
      font-size: 10px;
      letter-spacing: 4px;
      color: white;
    }

    .dots {
      position: absolute;
      z-index: 6;
      bottom: 13px;
      left: 50%;
      transform: translateX(-50%);
      display: flex;
      gap: 8px;
    }

    .dot {
      width: 7px;
      height: 5px;
      border: 0;
      background: #777;
      cursor: pointer;
    }

    .dot.active {
      width: 19px;
      background: var(--neon);
    }

    .bottom-line {
      position: absolute;
      z-index: 7;
      left: 0;
      bottom: 0;
      height: 2px;
      width: 100%;
      background: var(--neon);
    }

    /* ===== RESPONSIVO ===== */
    @media (max-width: 1050px) {
      .page {
        grid-template-columns: 1fr;
        gap: 55px;
        padding: 45px 35px;
      }

      .content { max-width: 800px; }
      .headline { font-size: clamp(30px, 5.6vw, 48px); }
      .gallery {
        width: min(520px, 100%);
        aspect-ratio: 2 / 3;
        height: auto;
        margin: auto;
      }
    }

    @media (max-width: 600px) {
      .headline {
        text-align: center;
      }
      .page { padding: 32px 20px 45px; }

      .headline {
        font-size: 43px;
      }

      .description {
        margin-top: 25px;
        font-size: 15px;
      }

      .price-row strong, .price-main strong { font-size: 52px; }

      .cta {
        width: 100%;
        min-width: 0;
        margin-top: 32px;
        font-size: 11px;
      }

      .micro {
        gap: 15px;
        flex-wrap: wrap;
        font-size: 9px;
      }

      .stats {
        gap: 10px;
      }

      .stat strong { font-size: 26px; }
      .stat span { font-size: 7px; }

      .gallery {
        width: 100%;
      }
    }


    /* ===== NOVAS SEÇÕES ===== */

    .section {
      width: min(1450px, 100%);
      margin: 0 auto;
      padding: 120px 65px;
    }

    .section-kicker {
      color: var(--neon);
      font-family: "Space Mono", monospace;
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 2.2px;
      text-transform: uppercase;
      margin-bottom: 20px;
    }

    .section-title {
      max-width: 1000px;
      font-family: Anton, Impact, sans-serif;
      font-size: clamp(52px, 4.6vw, 92px);
      line-height: .98;
      text-transform: uppercase;
    }

    .section-title .neon {
      color: var(--neon);
    }

    .section-text {
      max-width: 680px;
      margin-top: 26px;
      color: var(--muted);
      font-size: 20px;
      line-height: 1.6;
      font-weight: 600;
    }

    .cards {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 22px;
      margin-top: 64px;
    }

    .card {
      min-height: 250px;
      padding: 36px;
      border: 1px solid var(--line);
      background: rgba(255,255,255,.025);
      transition: transform .2s, border-color .2s, background .2s;
    }

    .card:hover {
      transform: translateY(-5px);
      border-color: rgba(122,16,37,.45);
      background: rgba(122,16,37,.05);
    }

    .card-number {
      color: var(--neon);
      font-family: "Space Mono", monospace;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 2.2px;
    }

    .card h3 {
      margin-top: 32px;
      color: var(--text);
      font-family: Anton, Impact, sans-serif;
      font-size: 36px;
      line-height: 1;
      text-transform: uppercase;
    }

    .card p {
      margin-top: 16px;
      color: #85857d;
      font-size: 16px;
      line-height: 1.55;
    }

    .dark-band {
      width: 100%;
      border-top: 1px solid var(--line);
      border-bottom: 1px solid var(--line);
      background: rgba(0,0,0,.22);
    }

    .steps {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 1px;
      margin-top: 64px;
      border: 1px solid var(--line);
      background: var(--line);
    }

    .step {
      padding: 44px 34px;
      background: #090507;
    }

    .step strong {
      color: var(--neon);
      font-family: Anton, Impact, sans-serif;
      font-size: 56px;
      line-height: 1;
    }

    .step h3 {
      margin-top: 24px;
      font-family: Anton, Impact, sans-serif;
      font-size: 32px;
      text-transform: uppercase;
    }

    .step p {
      margin-top: 14px;
      color: #85857d;
      font-size: 16px;
      line-height: 1.55;
    }

    .offer {
      display: grid;
      grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
      max-width: 1180px;
      margin: 0 auto;
      gap: 48px 72px;
      align-items: center;
      text-align: left;
      border: 1px solid rgba(122,16,37,.24);
      border-radius: 18px;
      background:
        radial-gradient(circle at 50% 0%, rgba(122,16,37,.10), transparent 45%),
        rgba(255,255,255,.02);
      padding: 68px 72px;
      box-shadow: 0 20px 55px rgba(0,0,0,.24);
    }

    .offer .section-title {
      margin: 0;
    }

    .offer .section-text {
      margin: 22px 0 0;
    }

    .offer-copy .section-kicker {
      margin-bottom: 18px;
    }

    .offer-action {
      display: flex;
      flex-direction: column;
      align-items: center;
      width: 100%;
      padding: 32px;
      border: 1px solid rgba(122,16,37,.42);
      border-radius: 14px;
      background: rgba(122,16,37,.10);
    }

    .offer .price {
      margin: 0;
      grid-template-columns: auto;
      justify-content: center;
      text-align: center;
    }

    .offer .price-row strong {
      font-size: clamp(74px, 7vw, 104px);
    }

    .offer .price-row .currency {
      font-size: 22px;
    }

    .offer .cta {
      width: 100%;
      min-width: 0;
      margin-top: 28px;
    }

    .faq {
      margin-top: 45px;
      border-top: 1px solid var(--line);
    }

    .faq-item {
      padding: 28px 0;
      border-bottom: 1px solid var(--line);
    }

    .faq-item h3 {
      font-family: "Space Mono", monospace;
      font-size: 16px;
      color: var(--text);
    }

    .faq-item p {
      max-width: 800px;
      margin-top: 12px;
      color: #85857d;
      font-size: 16px;
      line-height: 1.6;
    }

    .final-cta {
      text-align: center;
      padding-bottom: 120px;
      display: flex;
      flex-direction: column;
      align-items: center;
    }

    .final-cta .cta {
      align-self: center;
      margin-left: auto;
      margin-right: auto;
    }

    .final-cta .section-kicker,
    .final-cta .section-title,
    .final-cta .section-text {
      margin-left: auto;
      margin-right: auto;
    }

    @media (max-width: 800px) {
      .section {
        padding: 80px 25px;
      }

      .cards,
      .steps {
        grid-template-columns: 1fr;
      }

      .offer {
        padding: 55px 20px;
        grid-template-columns: 1fr;
        gap: 35px;
        text-align: center;
      }

      .offer-action {
        padding: 28px 22px;
      }

      .offer .section-text {
        margin-left: auto;
        margin-right: auto;
      }
    }

    @media (max-width: 600px) {
      .section {
        padding: 65px 20px;
      }

      .section-title {
        font-size: 40px;
      }

      .card {
        min-height: 0;
        padding: 25px;
      }

      .step {
        padding: 30px 25px;
      }

      .final-cta {
        padding-bottom: 80px;
      }
    }


    .logo-area {
      width: min(1450px, 100%);
      margin: 0 auto;
      padding: 22px 65px 0;
      display: flex;
      justify-content: center;
      align-items: center;
    }

    .logo-placeholder {
      width: 100px;
      height: 100px;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
    }

    .logo-placeholder img {
      width: 100%;
      height: 100%;
      object-fit: contain;
      display: block;
    }

    @media (max-width: 600px) {
      .logo-area { padding: 16px 20px 0; }
      .logo-placeholder { width: 82px; height: 82px; }

      body { overflow-x: hidden; }
      .page { gap: 38px; }
      .content { width: 100%; }
      .description { text-align: center; }
      .price { justify-content: center; }
      .stats { grid-template-columns: repeat(2, 1fr); margin-top: 35px; padding-top: 25px; row-gap: 24px; }
      .stat { text-align: center; padding-left: 0; border-left: 0; }
      .gallery { max-height: none; }
      .arrow { width: 38px; height: 38px; font-size: 24px; }
      .prev { left: 9px; }
      .next { right: 9px; }
      .access-modal { padding: 12px; align-items: end; }
      .access-dialog { max-height: calc(100vh - 24px); border-radius: 16px; }
      .access-head, .access-form { padding-left: 16px; padding-right: 16px; }
      .pix-qr { width: min(220px, 100%); height: auto; aspect-ratio: 1; }
    }
