:root {
  --accent: #d84738;
  --accent-dark: #ba302a;
  --text: #222;
  --muted: #666;
  --gray: #f3f3f3;
  --light: #fff7f5;
  --tint: #fee6e3;
  --radius: 22px;
  --shadow: 0 18px 45px rgba(0,0,0,.12);
}

@import url('https://mondrian.claro.com.br/tokens/claro-tokens-latest.custom-properties.css');
@import url('https://mondrian.claro.com.br/fonts/mondrian-fonts-latest.css');

* { box-sizing: border-box; }
html	{ scroll-behavior: smooth; width: 100%; height: 100%; font-family: 'AMX', sans-serif; font-size: 62.5%; }

body {
  font-family: 'AMX', sans-serif;
  background:#fff;
  max-width: 540px;
  margin: 0 auto;
  font-weight: 400; 
  line-height: 1.3;
  font-size: 1.8rem;
  color:var(--text);
}
img { max-width:100%; height:auto; display:block; }
a { color:inherit; }

h2 {
  font-size: 3.5rem;
  text-align: center;
}

button#enviar {
  cursor: pointer;
  margin: 0 auto;
  display: block;
  padding: 20px 40px;
  font-size:19px;
  letter-spacing: 3px;
  font-weight: 800;
  background-color: red;
  border-radius: 10px;
  border: 3px solid #000;
  color: #fff;
}


h4 {
  font-weight: 700;
  font-style: italic;
  font-size: 3.2rem;
  text-align: center;
  margin: 3rem 0;
}
h5 {
  font-weight: 700;
  font-size: 2.5rem;
  text-align: left;
}

article {
  display: block;
  text-align: center;
  margin-bottom: 6rem;
}
article img {
  margin: 0 auto 1rem;
  background-color: #ccc;
  border-radius: 50%;
  max-width: 100px;
  padding: 2rem;
}

.info-icon {
  max-width: 32px;
  display: inline-block;
  position: relative;
  top: 1.3rem;
  left: -1rem;
}

.hero { min-height: 80vh; background: url('../images/capamobile.png') center/cover no-repeat; color:#fff; display:grid; place-items:center; text-align:left; }
.hero-content { padding: 80px 0; }
.eyebrow { letter-spacing:.12em; text-transform:uppercase; font-weight:700; color:#ffd7d3; }
.hero h1 { font-size: clamp(4rem, 13vw, 9rem); line-height:.85; margin:.1em 0; text-transform:uppercase; }
.button { display:inline-block; margin-top:22px; padding:14px 24px; border-radius:999px; background:var(--accent); color:#fff; text-decoration:none; font-weight:800; box-shadow: var(--shadow); }
.section { padding: 5rem 2rem; }
.section-gray { background:var(--gray); }
.section-light { background:var(--light); }
.section-tint { background:var(--tint); }
.section-accent, .section-color { margin-top: 10rem; background:var(--accent-dark); color:#fff; text-align:center; }
.section-black { background:#111; color:#fff; }
.text-block { max-width: 920px; text-align:center; }
.block-heading, .container > h2 { margin: 0 0 18px; line-height:1.12; font-weight:900; }
.main-heading { font-size: clamp(2.6rem, 8vw, 5.2rem); }


.bg2 {
  background: url('bgs/bg2.jpg') no-repeat bottom center;
  background-size: 100%;
  padding: 0 2rem 20rem;
}

.image-frame { margin:0 auto; max-width:900px; }
.image-frame img { border-radius: var(--radius); box-shadow: var(--shadow); background:#fff; margin:auto; cursor: zoom-in; }
figcaption { color:var(--muted); text-align:center; margin-top:10px; }
.accordion { display:grid; gap:16px; }
.accordion-item { background:#fff; border:1px solid #eee; border-radius:18px; box-shadow:0 8px 24px rgba(0,0,0,.06); overflow:hidden; }
.accordion-item summary { cursor:pointer; padding:22px 26px; font-weight:700; color:var(--text); list-style:none; }
.accordion-item summary::-webkit-details-marker { display:none; }
.accordion-item summary::after { content:'+'; float:right; font-size:1.6rem; }
.accordion-item[open] summary::after { content:'–'; }
.accordion-body { padding:0 26px 26px; display:grid; gap:20px; grid-template-columns:minmax(220px, 420px) 1fr; align-items:start; }
.accordion-body img { border-radius:16px; box-shadow:var(--shadow); cursor:zoom-in; }
.brand-strip { margin: 0 auto 28px; width:min(360px, 80%); }



.strategy h2 { text-align:center; margin-top:28px; }
.check-list, .number-list { max-width:820px; margin:0 auto; padding:0; list-style:none; display:grid; gap:14px; }
.check-list li, .number-list li { background:#fff; border-radius:16px; padding:2rem 5rem 2rem 3rem; box-shadow:0 8px 20px rgba(0,0,0,.06); font-weight:500; display: flex; align-items: center; }
.check-list li::before { content:'✓'; color:var(--accent-dark); font-weight:900; margin-right:15px;display: block; float: left; }
.number-list { counter-reset:item; }
.number-list li { counter-increment:item; }
.number-list li::before { content:counter(item); display:inline-grid; place-items:center; width:30px; height:30px; margin-right:12px; border-radius:50%; background:#fff800; color:#111; font-weight:900; }
.flash-section { background: url('bgs/bg3.jpg') no-repeat; background-size: 100%;}
.hint { text-align:center; margin-top:5rem; opacity:.9; }
.flash-grid { grid-template-columns: repeat(auto-fit, minmax(240px,1fr)); margin-top:28px; perspective:1000px; }
.flashcard { min-height:260px; cursor:pointer; outline:none; }
.flashcard-inner { position:relative; width:100%; height:100%; min-height:260px; transition:transform .65s; transform-style:preserve-3d; }
.flashcard.is-flipped .flashcard-inner, .flashcard:focus .flashcard-inner { transform:rotateY(180deg); }
.flashcard-face { position:absolute; inset:0; padding:0 2rem; border-radius:22px; display:grid; place-items:center; text-align:center; backface-visibility:hidden; box-shadow:var(--shadow); overflow:auto; }
.flashcard-front { background:rgba(186,48,42,.95); color:#fff; font-size:2.5rem; font-weight:900; text-transform:uppercase; }
.flashcard-back { background:#fff; color:#111; transform:rotateY(180deg);place-items: initial; }
.iframe-wrap { position:relative; width:100%; aspect-ratio:16/9; background:#000; border-radius:20px; overflow:hidden; box-shadow:var(--shadow); }
.iframe-wrap iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.lightbox { position:fixed; inset:0; background:rgba(0,0,0,.86); display:none; align-items:center; justify-content:center; padding:28px; z-index:9999; }
.lightbox.is-open { display:flex; }
.lightbox img { max-height:90vh; max-width:95vw; border-radius:12px; background:#fff; }
.lightbox-close { position:absolute; top:18px; right:22px; border:0; background:#fff; color:#111; width:42px; height:42px; border-radius:50%; font-size:30px; line-height:1; cursor:pointer; }
@media (max-width: 760px) {

}


/* Utilitários extraídos do CSS inline do index.html */
.text-left { text-align: left; }
.text-center { text-align: center; }
.lh-tight { line-height: 1; }
.lh-relaxed { line-height: 1.5; }
.tracking-sm { letter-spacing: .01rem; }
.text-accent-dark { color: var(--accent-dark); font-weight:700; }
.text-danger { color: #b00606; }
.text-black { color: #000; }
.text-white { color: #fff; }
.bg-white { background-color: #fff; }
.text-lg { font-size: 1.8rem; }
.text-xl { font-size: 2rem; }
.text-2xl { font-size: 2.4rem; }
.text-2-5xl { font-size: 2.5rem; }
.text-3xl { font-size: 3rem; }
.text-3-2xl { font-size: 3.2rem; }
.text-4xl { font-size: 3.6rem; }
.text-5xl { font-size: 4.2rem; }

@media (max-width: 760px) {
  .text-lg, .text-xl, .text-2xl, .text-2-5xl,
  .text-3xl, .text-3-2xl, .text-4xl, .text-5xl {
    font-size: 1.35rem;
  }
}
