@font-face { font-family: "Open Sans"; src: url(../fonts/OpenSans-Variable.ttf) format("truetype"); font-weight: 300 800; font-display: swap; }
@font-face { font-family: "Merriweather"; src: url(../fonts/Merriweather-Variable.ttf) format("truetype"); font-weight: 300 900; font-display: swap; }
@font-face { font-family: "Kalam"; src: url(../fonts/Kalam-Regular.ttf) format("truetype"); font-display: swap; }
@font-face { font-family: "Homemade Apple"; src: url(../fonts/HomemadeApple-Regular.ttf) format("truetype"); font-display: swap; }
/* ===== v5 — oferta, pacote e checkout iguais ao original ===== */
:root { --o5-laranja: #ff7a00; --o5-verde: #16a34a; --o5-tinta: #1f2937; --o5-cinza: #6b7280; --o5-serif: "Merriweather", "Source Serif Pro", Georgia, serif; --o5-sans: "Open Sans", "Libre Franklin", system-ui, sans-serif; }

/* Íris recortada no topo da entrada (como a Tina "saindo" do card) */
.hero-iris-v4 { background: #fff; overflow: visible; }
.hero-iris-v4 .iris-foto.iris-recorte { width: auto; height: 200px; object-fit: contain; object-position: center bottom; margin-top: -40px; box-shadow: none; border-radius: 0; position: relative; z-index: 1; }
.hero-iris-v4 .placa { z-index: 2; }

/* ---------- OFERTA ---------- */
.o5 { background: #fff; color: var(--o5-tinta); font-family: var(--o5-sans); }
.o5 h1, .o5 h2 { font-family: var(--o5-serif); color: var(--o5-tinta); text-align: center; }
.o5 h2 { font-size: clamp(22px, 3.4vw, 26px); font-weight: 700; margin: 0 0 6px; }
.o5-wrap { width: min(680px, calc(100% - 32px)); margin: 0 auto; }
.o5-wrap-m { width: min(780px, calc(100% - 32px)); margin: 0 auto; }
.o5-wrap-l { width: min(920px, calc(100% - 32px)); margin: 0 auto; }
.o5-lead { text-align: center; color: var(--o5-cinza); font-size: 14px; margin: 0 0 24px; }
.o5-cinza { background: #f7f8fa; padding: 48px 0; }
.o5-branco { background: #fff; padding: 48px 0; }
.o5-sem-topo { padding-top: 24px; }

.o5-hero { text-align: center; padding: 48px 16px 48px; }
.o5-oi { color: var(--o5-cinza); margin: 0 0 4px; font-size: 16px; }
.o5-hero h1 { font-size: clamp(28px, 5vw, 38px); line-height: 1.15; max-width: 16ch; margin: 0 auto 14px; }
.o5-hero h1 em { color: var(--o5-laranja); font-style: normal; }
.o5-sub { color: #4b5563; max-width: 44ch; margin: 0 auto 22px; font-size: 16px; }

.o5-criativo { position: relative; width: min(450px, 100%); aspect-ratio: 1/1; margin: 0 auto; border-radius: 8px; overflow: hidden;
  background: radial-gradient(circle at 30% 30%, #1b2f6e 0 8%, transparent 9%), radial-gradient(circle at 75% 70%, #1b2f6e 0 10%, transparent 11%), radial-gradient(circle at 60% 20%, #233a82 0 7%, transparent 8%), radial-gradient(circle at 15% 80%, #233a82 0 9%, transparent 10%), linear-gradient(135deg, #0d1a45, #142a66 45%, #0b173d); box-shadow: 0 6px 24px rgba(0,0,0,.18); }
.o5-logo { position: absolute; left: 6%; top: 4%; color: #fff; text-align: center; line-height: 1; }
.o5-logo svg { width: 46px; height: 46px; display: block; margin: 0 auto 4px; }
.o5-logo b { font-family: "Homemade Apple", "Dancing Script", cursive; font-size: 24px; display: block; }
.o5-logo small { font-size: 7px; letter-spacing: .12em; }
.o5-cr-retrato { position: absolute; right: 8%; top: 2%; width: 31%; transform: rotate(4deg); border: 3px solid #fff; box-shadow: 0 4px 10px rgba(0,0,0,.4); }
.o5-cr-seta { position: absolute; left: 36%; top: 9%; width: 25%; }
.o5-cr-casal { position: absolute; left: 3%; top: 29%; width: 41%; transform: rotate(-3deg); border: 3px solid #fff; box-shadow: 0 4px 10px rgba(0,0,0,.4); }
.o5-criativo blockquote { position: absolute; right: 4%; top: 47%; width: 52%; margin: 0; color: #fff; text-align: center; font-family: "Kalam", "Comic Neue", cursive; font-size: clamp(12px, 2.6vw, 17px); line-height: 1.25; }
.o5-criativo blockquote strong { display: block; font-weight: 400; margin-bottom: 8px; letter-spacing: .02em; }
.o5-criativo blockquote em { display: block; text-align: right; font-style: normal; margin-top: 14px; }
.o5-legenda { color: #9ca3af; font-style: italic; font-size: 11px; margin: 8px 0 14px; }
.o5-confianca { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px 16px; font-size: 12px; color: #4b5563; margin-bottom: 20px; }
.o5-confianca i { font-style: normal; color: var(--o5-verde); font-size: 11px; }
.o5-confianca i.cor { color: #e11d48; }
.o5-btn { display: inline-block; background: var(--o5-laranja); color: #fff !important; text-decoration: none; font-family: var(--o5-sans); font-weight: 800; font-size: 19px; letter-spacing: .01em; padding: 16px 28px 12px; border-radius: 8px; min-width: min(450px, 100%); box-shadow: 0 6px 16px rgba(255,122,0,.3); line-height: 1.2; }
.o5-btn small { display: block; font-weight: 500; font-size: 13px; margin-top: 2px; }
.o5-btn-m { min-width: 300px; font-size: 18px; }

.o5-itens { display: grid; gap: 12px; margin: 24px 0 20px; }
.o5-item { display: grid; grid-template-columns: 40px 1fr auto; gap: 12px; align-items: start; background: #fff; border-radius: 10px; padding: 16px; box-shadow: 0 1px 4px rgba(0,0,0,.06); }
.o5-item h3 { font-family: var(--o5-sans); font-size: 14.5px; font-weight: 700; margin: 0 0 2px; }
.o5-item p { margin: 0; font-size: 14px; color: #4b5563; }
.o5-ico { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; font-size: 16px; }
.o5-ico.roxo { background: #f5ecff; } .o5-ico.azul { background: #eaf2ff; color: #3b6fd8; } .o5-ico.rosa { background: #fdeef3; } .o5-ico.verde { background: #e8f8ee; color: var(--o5-verde); }
.o5-ancora { color: #b0b4bb; font-size: 13px; white-space: nowrap; }
.o5-total { background: #fff; border: 2px solid #b8ebc9; border-radius: 10px; text-align: center; padding: 18px 12px; }
.o5-total p { margin: 0; color: var(--o5-cinza); font-size: 14px; }
.o5-total .grande { font-family: var(--o5-sans); font-size: 30px; font-weight: 800; color: var(--o5-tinta); margin: 4px 0; }
.o5-total .grande b { color: var(--o5-verde); }
.o5-total .eco { color: var(--o5-verde); font-weight: 700; font-size: 13px; }

.o5-recebeu { display: grid; grid-template-columns: 1fr; gap: 16px; }
@media (min-width: 720px) { .o5-recebeu { grid-template-columns: 1fr 1fr; } }
.o5-recebeu img { width: 100%; display: block; border-radius: 8px; box-shadow: 0 3px 12px rgba(0,0,0,.12); }

.o5-cta { text-align: center; padding: 24px 16px 40px; }
.o5-cta p { margin: 0; color: #4b5563; font-size: 14px; }
.o5-just { font-family: var(--o5-sans); font-size: 32px !important; font-weight: 800; color: var(--o5-tinta) !important; margin: 2px 0 14px !important; }
.o5-just b, .o5-fecho .preco b { color: var(--o5-verde); }
.o5-protegido { font-size: 11px !important; color: #9ca3af !important; margin-top: 10px !important; }

.o5-depo { background: #fff; border-radius: 12px; box-shadow: 0 2px 10px rgba(0,0,0,.08); padding: 22px 22px 18px; margin: 18px auto 0; max-width: 620px; }
.o5-depo .citacao { font-family: var(--o5-serif); font-style: italic; font-weight: 700; font-size: 18px; text-align: center; margin: 0 0 16px; }
.o5-depo-corpo { display: grid; grid-template-columns: 56px 1fr; gap: 12px; align-items: start; }
.o5-depo-corpo img { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; }
.o5-depo .meta { margin: 0 0 4px; font-size: 13px; }
.o5-depo .estr { color: #f5b800; letter-spacing: 1px; }
.o5-depo .verif { color: var(--o5-verde); border: 1px solid #b8ebc9; border-radius: 10px; padding: 0 6px; font-size: 11px; margin-left: 6px; }
.o5-depo .texto { margin: 0; font-style: italic; color: #4b5563; font-size: 13.5px; line-height: 1.5; }

/* Cards estilo Facebook */
.fb-grid { display: grid; grid-template-columns: 1fr; gap: 16px; align-items: start; }
@media (min-width: 760px) { .fb-grid { grid-template-columns: 1fr 1fr; } }
.fb-card { background: #fff; border-radius: 8px; box-shadow: 0 1px 4px rgba(0,0,0,.15); font-family: Helvetica, Arial, sans-serif; color: #050505; overflow: hidden; }
.fb-head { display: flex; align-items: center; gap: 8px; padding: 10px 12px 6px; }
.fb-av { width: 36px; height: 36px; border-radius: 50%; object-fit: cover; }
.fb-nome { margin: 0; font-size: 13px; } .fb-data { margin: 0; font-size: 11px; color: #65676b; }
.fb-dots { margin-left: auto; color: #65676b; font-weight: 700; }
.fb-txt { font-size: 13.5px; line-height: 1.4; margin: 0; padding: 4px 12px 10px; }
.fb-foto { width: 100%; display: block; }
.fb-stats { display: flex; justify-content: space-between; font-size: 12px; color: #65676b; padding: 8px 12px; }
.fb-reac { font-style: normal; font-size: 11px; }
.fb-acoes { display: flex; justify-content: space-around; border-top: 1px solid #ced0d4; border-bottom: 1px solid #ced0d4; margin: 0 12px; padding: 6px 0; font-size: 13px; color: #65676b; font-weight: 600; }
.fb-acao { color: #1877f2; } .fb-acao.amei { color: #f33e58; }
.fb-mais { font-size: 12.5px; color: #65676b; font-weight: 600; margin: 8px 12px 6px; }
.fb-coment, .fb-escrever { display: flex; gap: 6px; padding: 0 12px 8px; align-items: flex-start; }
.fb-av-p { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; }
.fb-bolha { background: #f0f2f5; border-radius: 14px; padding: 6px 10px; font-size: 12.5px; position: relative; }
.fb-bolha b { display: block; color: #385898; font-size: 12px; }
.fb-verif { background: #1877f2; color: #fff; font-style: normal; border-radius: 50%; font-size: 8px; padding: 0 3px; }
.fb-like { position: absolute; right: -6px; bottom: -8px; background: #fff; border-radius: 10px; box-shadow: 0 1px 2px rgba(0,0,0,.2); font-size: 10px; padding: 0 4px; }
.fb-meta { font-size: 11px; color: #65676b; margin: 4px 0 0 8px; font-weight: 600; }
.fb-escrever span { flex: 1; background: #f0f2f5; border-radius: 16px; font-size: 12px; color: #65676b; padding: 6px 10px; }

.o5-bio { text-align: center; }
.o5-bio img { width: 100px; height: 100px; border-radius: 50%; object-fit: cover; display: block; margin: 12px auto 16px; }
.o5-bio p { max-width: 54ch; margin: 0 auto; color: #4b5563; font-size: 14px; line-height: 1.6; }

.o5-faq { display: grid; gap: 8px; margin-top: 20px; }
.o5-faq details { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; padding: 0 14px; }
.o5-faq summary { cursor: pointer; padding: 14px 0; font-size: 14px; font-weight: 600; list-style: none; display: flex; justify-content: space-between; }
.o5-faq summary::after { content: "⌄"; color: #9ca3af; }
.o5-faq .resp { padding: 0 0 14px; font-size: 14px; color: #4b5563; }

.o5-fecho { background: #111827; color: #fff; text-align: center; padding: 48px 16px 40px; font-family: var(--o5-sans); }
.o5-fecho p { margin: 0; }
.o5-fecho .pequeno { color: #9ca3af; font-size: 13px; margin-bottom: 10px; }
.o5-fecho .medio { font-size: 18px; }
.o5-fecho .preco { font-size: 36px; font-weight: 800; margin: 4px 0; }
.o5-fecho .preco b { color: #4ade80; }
.o5-fecho .garantia { color: #4ade80; font-size: 13px; margin-bottom: 18px; }
.o5-fecho .o5-btn { min-width: 0; }
.o5-rodape { background: #f3f4f6; text-align: center; padding: 22px 16px; font-size: 12px; color: #6b7280; }
.o5-rodape nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 14px; margin-bottom: 10px; }
.o5-rodape a { color: #6b7280; text-decoration: none; }
.o5-rodape p { margin: 4px 0; }

/* ---------- PACOTE ---------- */
.b5 { width: min(440px, calc(100% - 24px)); margin: 0 auto; padding: 40px 0 48px; text-align: center; font-family: var(--o5-sans); color: #111827; position: relative; }
.b5-fechar { position: fixed; right: 20px; top: 54px; width: 30px; height: 30px; border-radius: 50%; background: #f3f4f6; color: #555; text-decoration: none; display: grid; place-items: center; font-size: 20px; }
.b5-parabens { color: var(--o5-verde); font-weight: 800; font-size: 20px; margin: 0; }
.b5 h1 { font-family: var(--o5-sans); font-size: 22px; font-weight: 800; margin: 4px 0 16px; line-height: 1.3; }
.b5-arte { border-radius: 6px; overflow: hidden; background: linear-gradient(#dff4fd, #c9ecfb); box-shadow: 0 2px 10px rgba(0,0,0,.12); font-family: "Arial Black", Arial, sans-serif; }
.b5-arte p { margin: 0; line-height: 1.05; }
.b5-a1 { padding-top: 14px; font-size: 30px; } .b5-a1 .v { color: #22b622; } .b5-a1 .n { color: #0b1f5e; }
.b5-a2 { font-size: 46px; color: #0b1f5e; }
.b5-a3 { font-size: 30px; } .b5-a3 .v { color: #22b622; } .b5-a3 .a { color: #2563eb; }
.b5-a-imgs { display: flex; align-items: center; justify-content: center; gap: 4px; padding: 10px 8px 8px; }
.b5-a-imgs figure { margin: 0; width: 30%; }
.b5-a-imgs img { width: 100%; border-radius: 6px; border: 2px solid #fff; display: block; }
.b5-a-imgs figcaption { font-size: 8px; color: #0b1f5e; margin-top: 3px; font-family: Arial, sans-serif; font-weight: 800; }
.b5-a-imgs .mais { color: #f5c400; font-size: 28px; font-weight: 900; }
.b5-a-lista { list-style: none; margin: 0; padding: 10px 8px 12px; background: #0b1f5e; color: #fff; text-align: left; font-family: Arial, sans-serif; font-weight: 800; font-size: 14px; line-height: 1.5; }
.b5-amarelo { background: #fffbea; border: 1px solid #f7e3a1; border-radius: 6px; padding: 12px; font-size: 12.5px; font-weight: 600; margin: 14px 0; }
.b5-itens { display: grid; gap: 8px; }
.b5-item { display: grid; grid-template-columns: 24px 1fr; gap: 6px; text-align: left; background: #f8f9fa; border-radius: 6px; padding: 10px 12px; font-size: 12.5px; }
.b5-item p { margin: 0; color: #4b5563; } .b5-item b { color: #111827; } .b5-item small { color: #9ca3af; font-size: 10.5px; }
.b5-item .ico { color: var(--o5-verde); }
.b5-verde { background: #f0fdf4; border: 1px solid #bbf7d0; border-radius: 6px; padding: 12px; font-size: 12.5px; margin: 14px 0; }
.b5-verde b { color: var(--o5-verde); }
.b5-demanda { margin: 8px 0 0; font-size: 13px; font-weight: 600; } .b5-demanda b { color: #dc2626; }
.b5-vaga { margin: 0; color: #dc2626; font-weight: 800; font-size: 17px; }
.b5-seta { color: var(--o5-laranja); font-size: 22px; margin: 4px 0 0; line-height: 1; }
.b5-escolha { font-weight: 700; font-size: 14px; margin: 6px 0 14px; }
.b5-pac { text-align: left; border-radius: 8px; padding: 16px 12px; }
.b5-pac.rec { border: 2px solid #4caf50; background: #fff; }
.b5-pac.basico { border: 1px solid #e5e7eb; background: #f9fafb; }
.b5-pac header { display: flex; justify-content: space-between; align-items: center; }
.b5-pac h3 { font-family: var(--o5-sans); font-size: 16px; font-weight: 700; margin: 0; }
.b5-pac.basico h3 { color: #4b5563; font-size: 14px; }
.b5-pac .tag { background: #4caf50; color: #fff; font-weight: 800; font-size: 12px; border-radius: 12px; padding: 3px 9px; }
.b5-pac .tag.cinza { background: #d1d5db; color: #374151; }
.b5-pac .rec-txt { color: var(--o5-verde); font-size: 12px; font-weight: 600; margin: 6px 0 8px; }
.b5-pac .perde { color: #9ca3af; font-size: 12px; margin: 6px 0 8px; }
.b5-pac ul { list-style: none; margin: 0 0 12px; padding: 0; font-size: 12.5px; }
.b5-pac li { padding: 3px 0 3px 20px; position: relative; color: #374151; }
.b5-pac li.ok::before { content: "✓"; position: absolute; left: 0; color: var(--o5-verde); border: 1px solid var(--o5-verde); border-radius: 50%; width: 13px; height: 13px; font-size: 9px; text-align: center; line-height: 13px; top: 4px; }
.b5-pac li.no { color: #9ca3af; } .b5-pac li.no::before { content: "✕"; position: absolute; left: 0; color: #f87171; font-size: 11px; }
.b5-btn { width: 100%; background: #4caf50; color: #fff; border: 0; border-radius: 6px; padding: 14px; font-size: 14px; font-weight: 600; cursor: pointer; }
.b5-link { width: 100%; background: none; border: 0; color: #6b7280; text-decoration: underline; font-size: 11.5px; cursor: pointer; }
.b5-garantia { font-size: 11px; color: #6b7280; margin: 12px 0 6px; }
.b5-ou { color: #9ca3af; font-size: 12px; margin: 6px 0 10px; }
.b5-seguro { font-size: 11px; color: #9ca3af; margin: 18px 0 8px; }
.b5-voltar { font-size: 12px; color: #6b7280; text-decoration: none; }

/* ---------- CHECKOUT ---------- */
.chk-topo { min-height: 120px; }
.chk-iris-mini.chk-recorte { width: auto; height: 130px; border-radius: 0; object-fit: contain; top: 0; right: 24px; }
.chk-placa { display: none; position: absolute; right: 18px; top: 104px; background: #2b6cb0; color: #fff; font-family: "Homemade Apple", cursive; font-size: 12px; padding: 2px 10px; border-radius: 3px; line-height: 1.3; }
.chk-placa small { display: block; font-family: var(--o5-sans); font-size: 8px; letter-spacing: .1em; }
@media (min-width: 720px) { .chk-placa { display: block; } .chk-topo { padding-right: 150px; padding-left: 150px; } }
.bump-thumb { padding: 0; overflow: hidden; background: #fff; border: 1px solid #e6d9a8; }
.bump-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.selo-mp { display: flex; gap: 10px; align-items: center; background: #f1fbf4; border: 1px solid #bfe8cc; border-radius: 8px; padding: 10px 12px; margin-top: 12px; text-align: left; }
.selo-mp svg { width: 26px; height: 26px; flex: none; }
.selo-mp p { margin: 0; font-size: 13px; color: #24543a; line-height: 1.35; }
.chk-contador { text-align: center; font-size: 12px; color: #6b7280; margin: 10px 0 0; }
