/* =================== Variáveis =================== */
:root {
  --color-dark-bg: #FFFFFF;
  --color-card-bg: #f8f8f8;
  --color-header-bg: #FFFFFF;
  --color-primary: #008080;
  --color-text-dark: #333333;
  --color-text-light: #008080;
  --color-text-mid: #555555;
  --color-hover-text: #000000;

  /* Modal vars */
  --pongar-z: 9999;
  --pongar-bg: #0b0b0e99;
  --pongar-panel: #ffffff;
  --pongar-text: #1f2937;
  --pongar-muted: #6b7280;
  --pongar-primary: #0ea5e9;
  --pongar-primary-contrast: #ffffff;
  --pongar-border: #e5e7eb;
  --pongar-radius: 14px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  margin: 0; background-color: var(--color-dark-bg); color: var(--color-text-dark); line-height: 1.6;
}

/* =================== Utilitários =================== */
.container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 20px; }
h1, h2, h3 { color: var(--color-text-dark); font-weight: 700; line-height: 1.2; }
h1 { font-size: 2.2em; margin-bottom: .5em; }
h2 { font-size: 1.8em; text-align: center; margin-bottom: 1.5em; text-transform: uppercase; color: var(--color-primary); }
p { font-size: 1em; color: var(--color-text-mid); }
a { color: var(--color-primary); text-decoration: none; transition: color .3s ease; }
a:hover { color: var(--color-text-mid); }

/* =================== Header / Nav =================== */
.header { display: flex; justify-content: space-between; align-items: center; padding: 15px 20px; background-color: var(--color-header-bg); border-bottom: 1px solid #eee; position: sticky; top: 0; z-index: 100; }
.logo img { height: 30px; width: auto; display: block; }
.menu-toggle { display: block; font-size: 1.5em; cursor: pointer; color: var(--color-primary); background: transparent; border: 0; }
.nav { display: none; flex-direction: column; position: absolute; top: 60px; left: 0; width: 100%; background-color: var(--color-header-bg); box-shadow: 0 4px 8px rgba(0,0,0,.1); padding: 10px 0; border-top: 1px solid #eee; }
.nav.active { display: flex; }
.nav a { display: block; padding: 15px 20px; color: var(--color-text-dark); font-weight: 600; text-align: left; border-bottom: 1px solid #eee; margin: 0; }
.nav a:hover { background-color: #f0f0f0; color: var(--color-primary); }
.nav .btn-assinante { margin: 15px 20px; padding: 10px 15px; display: block; color: var(--color-primary); border: 1px solid var(--color-primary); border-radius: 5px; text-align: center; background-color: transparent; transition: all .3s ease; }
.nav .btn-assinante:hover { color: var(--color-dark-bg); background-color: var(--color-primary); }

/* =================== Hero =================== */
.hero { text-align: left; padding: 20px; background-color: var(--color-card-bg); border-bottom: 5px solid var(--color-primary); }
.hero h1 { color: var(--color-text-dark); text-align: left; }
.hero p { max-width: 600px; margin: 20px 0 40px; text-align: left; }

/* =================== CTA =================== */
.cta-button { display: flex; justify-content: center; align-items: center; width: 100%; box-sizing: border-box; background-color: var(--color-primary); color: var(--color-dark-bg); padding: 18px 30px; border-radius: 8px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; transition: background-color .3s ease, transform .3s ease, box-shadow .3s ease; cursor: pointer; box-shadow: 0 4px 15px rgba(0,128,128,.2); }
.cta-button i.fa-whatsapp { font-size: 3.2em; margin-right: 10px; }
.cta-button:hover { background-color: #006666; transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0,128,128,.4); color: var(--color-hover-text); }

/* =================== Planos =================== */
.plans { padding: 60px 20px; background-color: var(--color-dark-bg); }
.plans-grid { display: grid; grid-template-columns: 1fr; gap: 25px; }
.plan-card { background-color: var(--color-card-bg); padding: 30px; border-radius: 12px; text-align: center; transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; display: flex; flex-direction: column; position: relative; }
.plan-card:not(.highlight) { border: 1px solid var(--color-primary); }
.plan-card:not(.highlight):hover { border-color: var(--color-primary); box-shadow: 0 5px 15px rgba(0,128,128,.1); }
.plan-card.highlight { border: 2px solid var(--color-primary); background-color: #fff; box-shadow: 0 0 25px rgba(0,128,128,.2); transform: scale(1.03); }
.plan-card h3 { color: var(--color-text-dark); text-transform: uppercase; font-weight: 800; letter-spacing: 1px; }
.price { font-size: 2.5em; font-weight: 700; color: var(--color-primary); margin: 10px 0 20px; }
.price span { font-size: .4em; font-weight: 400; color: var(--color-text-mid); }
.plan-card ul { list-style: none; padding: 0; margin: 0 0 30px; text-align: left; flex-grow: 1; }
.plan-card ul li { margin-bottom: 12px; color: var(--color-text-dark); font-size: .95em; }
.plan-card ul li::before { content: "\f058"; font-family: "Font Awesome 6 Free"; font-weight: 900; color: var(--color-primary); margin-right: 10px; }

.popular-tag { position: absolute; top: 0; right: 0; background-color: var(--color-primary); color: var(--color-dark-bg); padding: 5px 15px; font-weight: 600; font-size: .9em; border-radius: 0 12px 0 12px; text-transform: uppercase; }
.games-tag { background-color: #FF4500; color: var(--color-dark-bg); padding: 3px 8px; font-weight: 600; font-size: .8em; border-radius: 4px; text-transform: uppercase; margin-left: 10px; display: inline-block; }

.highlight-wifi6 { background-color: #f0f8f8; color: var(--color-primary); padding: 4px 8px; border-radius: 20px; font-weight: 700; white-space: nowrap; border: 1px solid #d0e8e8; }
.highlight-gratis { background-color: #FF6666; color: #FFFFFF; padding: 3px 8px; border-radius: 5px; font-weight: 700; white-space: nowrap; }

/* =================== Features/Testemunhos =================== */
.features { padding: 60px 20px; background-color: var(--color-card-bg); }
.features-grid { display: grid; grid-template-columns: 1fr; gap: 25px; margin-top: 40px; }
.feature-item { padding: 25px; background-color: #fff; border-radius: 8px; text-align: center; border: 1px solid #eee; }
.feature-item h3 { color: var(--color-primary); }

.testimonials { padding: 60px 20px; background-color: var(--color-dark-bg); }
.testimonial-item { background-color: var(--color-card-bg); padding: 30px; border-radius: 8px; margin-top: 30px; border-left: 5px solid var(--color-primary); }
.testimonial-item blockquote { font-style: italic; margin: 0 0 15px; color: var(--color-text-dark); }
.testimonial-item cite { display: block; text-align: right; font-weight: 600; color: var(--color-primary); }

/* =================== Footer =================== */
.footer { background-color: var(--color-card-bg); padding: 30px 20px; border-top: 1px solid #eee; text-align: center; }
.footer p { color: var(--color-text-mid); margin: 5px 0; font-size: .9em; }
.social-icons { display: flex; justify-content: center; gap: 20px; margin-bottom: 15px; }
.social-icons a { font-size: 2em; transition: transform .3s ease; color: var(--color-text-mid); }
.social-icons a:hover { transform: scale(1.1); }
.social-icons .fa-whatsapp { color: #25D366; }
.social-icons .fa-telegram { color: #0088CC; }
.social-icons .fa-instagram { color: #E4405F; }

/* =================== Modal (Termos/Privacidade) =================== */
.pongar-modal-overlay{position:fixed;inset:0;background:var(--pongar-bg);display:none;align-items:center;justify-content:center;z-index:var(--pongar-z)}
.pongar-modal-overlay[aria-hidden="false"]{display:flex}
.pongar-modal{width:min(980px,95vw);max-height:90vh;background:var(--pongar-panel);color:var(--pongar-text);border-radius:var(--pongar-radius);box-shadow:0 10px 40px rgba(0,0,0,.2);display:flex;flex-direction:column}
.pongar-header{padding:18px 22px;border-bottom:1px solid var(--pongar-border);display:flex;align-items:center;justify-content:space-between}
.pongar-title{font-size:18px;font-weight:700;margin:0}
.pongar-close{appearance:none;border:0;background:transparent;font-size:22px;line-height:1;cursor:pointer;color:var(--pongar-muted)}
.pongar-tabs{display:flex;gap:6px;padding:10px;border-bottom:1px solid var(--pongar-border);flex-wrap:wrap}
.pongar-tab{appearance:none;border:1px solid var(--pongar-border);background:#fafafa;color:#111827;padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:600}
.pongar-tab[aria-selected="true"]{background:var(--pongar-primary);color:var(--pongar-primary-contrast);border-color:var(--pongar-primary)}
.pongar-body{padding:16px 18px;overflow:auto}
.pongar-section[hidden]{display:none}
.pongar-prose{line-height:1.55}
.pongar-prose h3,.pongar-prose h4{margin:.6em 0 .3em}
.pongar-prose ol{padding-left:1.2em}
.pongar-prose ul{padding-left:1.2em}
.pongar-footer{padding:14px 18px;border-top:1px solid var(--pongar-border);display:flex;gap:10px;justify-content:flex-end}
.pongar-btn{appearance:none;border:1px solid var(--pongar-border);background:#fff;color:#111827;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer}
.pongar-btn.primary{background:var(--pongar-primary);border-color:var(--pongar-primary);color:var(--pongar-primary-contrast)}
.pongar-note{font-size:12px;color:var(--pongar-muted);margin-right:auto;display:flex;align-items:center;gap:8px}
.pongar-contract-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.pongar-card{border:1px solid var(--pongar-border);border-radius:12px;padding:12px}
.pongar-card h4{margin:.2em 0 .4em}
.pongar-card a{color:var(--pongar-primary);font-weight:600;text-decoration:none}
.pongar-card a:hover{text-decoration:underline}

/* =================== MQ Tablet/Desktop =================== */
@media (min-width: 768px) {
  .header { padding: 15px 40px; justify-content: space-around; }
  .menu-toggle { display: none; }
  .nav { display: flex; flex-direction: row; position: static; width: auto; box-shadow: none; padding: 0; border: none; align-items: center; }
  .nav a { padding: 0; border: none; margin: 0 15px; color: var(--color-text-dark); }
  .nav a:hover { background-color: transparent; color: var(--color-primary); }
  .nav .btn-assinante { margin-left: 15px; padding: 8px 15px; display: inline-block; border: 1px solid var(--color-primary); border-radius: 5px; color: var(--color-primary); background-color: transparent; }
  .nav .btn-assinante:hover { color: var(--color-hover-text); background-color: var(--color-primary); }

  .hero { text-align: center; padding: 120px 20px; }
  .hero h1, .hero p { text-align: center; }
  .hero p { margin: 20px auto 40px; }
  .cta-button { display: inline-flex; width: auto; max-width: 400px; }

  .plans-grid { grid-template-columns: repeat(3, 1fr); gap: 30px; }
  .plan-card:hover { transform: translateY(-8px); border-color: var(--color-primary); box-shadow: 0 10px 30px rgba(0,128,128,.1); }
  .plan-card.highlight:hover { transform: scale(1.08) translateY(-8px) !important; }
  .plan-card:not(.highlight):hover { transform: translateY(-4px); border: 2px solid var(--color-primary); }
  .plan-card:not(.highlight) { border: 1px solid var(--color-primary); }

  .features-grid { grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 30px; }
}
