/* Reset Integral e Desafio Intestino Leve (Nutrir360): jornada da participante, certificado e
   landing do desafio. Página própria fora do tema, mesmos primitivos do style.css do tema
   (camada 02) e do semaforo.css; Outfit nos títulos, Golos Text no texto, só claro. */
:root{
  --n360-cor-creme:#FAF8F2;--n360-cor-pedra-100:#EEECE6;--n360-cor-pedra-300:#D9D8D5;
  --n360-cor-tinta:#212121;--n360-cor-grafite:#444444;--n360-cor-cinza:#6B6B6B;
  --n360-cor-oliva-500:#5C6946;--n360-cor-oliva-600:#4A614A;--n360-cor-oliva-800:#35402F;
  --n360-cor-caramelo-600:#7E6342;--n360-cor-menta-100:#E0F1EA;--n360-cor-salvia:#98B880;--n360-cor-salvia-50:#E8EFDF;
  --n360-cor-creme-50:#FAF1E3;--n360-cor-rosa-50:#F8E8E3;--n360-cor-rosa-700:#9C4F3F;--n360-cor-mel-100:#FBF3E4;--n360-cor-mel-400:#D9A45B;

  --pri:var(--n360-cor-oliva-500);--pri-2:var(--n360-cor-oliva-600);--pri-fundo:var(--n360-cor-salvia-50);
  --titulo:var(--n360-cor-tinta);--texto:var(--n360-cor-grafite);--texto-2:var(--n360-cor-cinza);
  --linha:var(--n360-cor-pedra-100);--linha-forte:var(--n360-cor-pedra-300);--suave:var(--n360-cor-creme);
  --f1:var(--n360-cor-salvia);--f2:var(--n360-cor-oliva-500);--f3:var(--n360-cor-mel-400);
  --raio:16px;--raio-g:24px;--sombra:0 24px 50px -32px rgba(53,64,47,.4);--sombra-l:0 1px 2px rgba(53,64,47,.07);
  --f-titulo:Outfit,system-ui,-apple-system,"Segoe UI",sans-serif;--f-texto:"Golos Text",system-ui,-apple-system,"Segoe UI",sans-serif;
  --larg:600px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body.n360r{margin:0;font:400 16px/1.55 var(--f-texto);color:var(--texto);background:var(--suave);-webkit-font-smoothing:antialiased}
body.n360r a{color:var(--pri)}
img{max-width:100%;display:block}
button{font:inherit;cursor:pointer}
input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--n360-cor-caramelo-600);outline-offset:2px}
h1,h2,h3{font-family:var(--f-titulo);color:var(--titulo);font-weight:500;letter-spacing:-.01em;margin:0 0 8px}
p{margin:0 0 12px}
.muted{color:var(--texto-2);font-size:14px}

/* Topo e rodapé */
.topo{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;height:60px;padding:0 16px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--linha)}
.logo img{height:24px;width:auto}
.turma-tag{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:var(--pri-fundo);color:var(--n360-cor-oliva-800)}
.link-topo{border:1.5px solid var(--linha-forte);background:#fff;border-radius:999px;padding:7px 14px;font-size:14px;font-weight:600;color:var(--titulo) !important;text-decoration:none}
.rodape{max-width:var(--larg);margin:0 auto;padding:24px 16px 48px;font-size:13px;color:var(--texto-2);text-align:center}

/* Botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 22px;border-radius:999px;border:0;font:600 15.5px var(--f-titulo);text-decoration:none;transition:background .2s,transform .12s}
.btn:active{transform:scale(.985)}
.btn.pri{background:var(--pri);color:#fff !important;box-shadow:0 12px 26px -14px rgba(92,105,70,.8)}
.btn.pri:hover{background:var(--pri-2)}
.btn.sec-b{background:#fff;color:var(--titulo) !important;border:1.5px solid var(--linha-forte)}
.btn.grande{min-height:56px;width:100%;font-size:17px}

/* Jornada */
.jornada{max-width:var(--larg);margin:0 auto;padding:16px 16px 0;display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.jornada>*{min-width:0}
.card{background:#fff;border:1px solid var(--linha);border-radius:var(--raio-g);padding:20px;box-shadow:var(--sombra-l)}
.card h2{font-size:22px}
.tag{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--n360-cor-caramelo-600);margin-bottom:6px}
.flash{background:var(--n360-cor-menta-100);border:1px solid #B9DCC8;color:var(--n360-cor-oliva-800);border-radius:var(--raio);padding:14px 16px;font-weight:600}
.flash.erro{background:var(--n360-cor-rosa-50);border-color:#E9C5BC;color:var(--n360-cor-rosa-700)}
.flash.selo-novo{display:flex;gap:14px;align-items:center;background:var(--n360-cor-mel-100);border-color:#EED9B4}
.flash.selo-novo .big{font-size:40px;line-height:1}
.flash.selo-novo b{display:block;font-family:var(--f-titulo);font-size:18px}
.flash.selo-novo span{font-weight:400}

.hero-j{text-align:center;padding:20px 8px 4px}
.hero-j .ola{margin:0;color:var(--texto-2);font-weight:600}
.hero-j h1{font-size:clamp(22px,6vw,30px);line-height:1.2}
.flor-dias{width:min(300px,82vw);height:auto;margin:6px auto 4px;display:block}
.flor-dias .pet{stroke:#fff;stroke-width:1.2}
.flor-dias .feito.f1{fill:var(--f1)}.flor-dias .feito.f2{fill:var(--f2)}.flor-dias .feito.f3{fill:var(--f3)}
.flor-dias .perdido{fill:var(--n360-cor-pedra-100);stroke:var(--linha-forte);stroke-dasharray:2 2}
.flor-dias .futuro{fill:#fff;stroke:var(--linha-forte)}
.flor-dias .hoje{fill:#fff;stroke:var(--pri);stroke-width:2.4}
.flor-dias .miolo{fill:#fff;stroke:var(--linha)}
.flor-dias text{text-anchor:middle;font-family:var(--f-titulo)}
.flor-dias .n{font-size:30px;font-weight:600;fill:var(--titulo)}
.flor-dias .de{font-size:12px;fill:var(--texto-2)}
.desafio .flor-dias .feito.f1,.n360r .flor-dias .feito.f1{fill:var(--f1)}
.kpis{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.kpis li{background:#fff;border:1px solid var(--linha);border-radius:var(--raio);padding:10px 6px;font-size:12.5px;color:var(--texto-2)}
.kpis b{display:block;font:600 24px/1.1 var(--f-titulo);color:var(--titulo)}
.legenda{font-size:12.5px;color:var(--texto-2);margin:12px 0 0}
.legenda i{display:inline-block;width:10px;height:10px;border-radius:3px;margin:0 4px 0 10px;vertical-align:-1px}
.legenda .f1{background:var(--f1)}.legenda .f2{background:var(--f2)}.legenda .f3{background:var(--f3)}.legenda .perdido{background:var(--n360-cor-pedra-100);border:1px dashed var(--linha-forte)}

.missao h2{font-size:21px}
.feito{background:var(--n360-cor-menta-100);border-radius:12px;padding:10px 12px;font-weight:600;color:var(--n360-cor-oliva-800)}
details>summary{cursor:pointer;font-weight:600;color:var(--pri);padding:8px 0}
details.ontem{margin-top:8px;border-top:1px solid var(--linha);padding-top:6px}
.dica{font-size:13.5px;color:var(--texto-2);margin:12px 0 0}
.checkin fieldset{border:0;padding:0;margin:0 0 14px}
.checkin legend{font:600 15px var(--f-titulo);color:var(--titulo);margin-bottom:8px}
.checkin legend span{font-weight:400;color:var(--texto-2)}
.item{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 12px;border:1.5px solid var(--linha);border-radius:14px;margin-bottom:8px;cursor:pointer;transition:border-color .15s,background .15s}
.item input{position:absolute;opacity:0;width:1px;height:1px}
.item .caixa{flex:none;width:24px;height:24px;border-radius:8px;border:2px solid var(--linha-forte);background:#fff;display:grid;place-items:center}
.item input:checked~.caixa{background:var(--pri);border-color:var(--pri)}
.item input:checked~.caixa::after{content:"";width:10px;height:6px;border:2.5px solid #fff;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}
.item:has(input:checked){border-color:var(--pri);background:var(--pri-fundo)}
.item:has(input:focus-visible){outline:3px solid var(--n360-cor-caramelo-600);outline-offset:2px}
.bris{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.bris label{cursor:pointer}
.bris input{position:absolute;opacity:0}
.bris span{display:flex;flex-direction:column;align-items:center;gap:2px;border:1.5px solid var(--linha);border-radius:12px;padding:8px 2px;text-align:center;min-height:72px}
.bris b{font:600 18px var(--f-titulo);color:var(--titulo)}
.bris small{font-size:10px;line-height:1.15;color:var(--texto-2)}
.bris .ideal span{background:var(--n360-cor-menta-100)}
.bris input:checked+span{border-color:var(--pri);box-shadow:inset 0 0 0 1.5px var(--pri)}
.bris input:focus-visible+span{outline:3px solid var(--n360-cor-caramelo-600)}
.linha select,.linha input{min-height:46px;border:1.5px solid var(--linha-forte);border-radius:12px;padding:0 12px;background:#fff;width:100%}

.quest .esc{border:0;padding:10px 0;margin:0;border-bottom:1px solid var(--linha)}
.quest legend{font-weight:600;color:var(--titulo);padding:0;margin-bottom:8px}
.quest .esc div{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.quest label{cursor:pointer}
.quest input{position:absolute;opacity:0}
.quest span{display:grid;place-items:center;min-height:42px;border:1.5px solid var(--linha);border-radius:10px;font:600 16px var(--f-titulo)}
.quest input:checked+span{background:var(--pri);border-color:var(--pri);color:#fff}
.quest input:focus-visible+span{outline:3px solid var(--n360-cor-caramelo-600)}
.quest .btn{margin-top:16px}

.totais{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:10px;margin:8px 0}
.totais div{background:var(--suave);border-radius:14px;padding:10px;position:relative;overflow:hidden}
.totais b{display:block;font:600 26px var(--f-titulo);color:var(--titulo)}
.totais span{font-size:13px;color:var(--texto-2)}
.totais i{position:absolute;left:0;bottom:0;height:4px;width:var(--v);background:var(--n360-cor-caramelo-600)}
.comp{width:100%;border-collapse:collapse;font-size:14px;margin:8px 0 12px}
.comp th,.comp td{padding:8px 6px;border-bottom:1px solid var(--linha);text-align:center}
.comp th:first-child,.comp td:first-child{text-align:left}
.comp tr.melhor td:last-child{color:#2F7A4C;font-weight:700}
.comp tr.pior td:last-child{color:var(--n360-cor-rosa-700);font-weight:700}

.cal{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px}
.cal.curto{grid-template-columns:repeat(7,minmax(0,1fr))}
.cal li{aspect-ratio:1;border-radius:10px;border:1.5px solid var(--linha);display:flex;flex-direction:column;align-items:center;justify-content:center;font:600 14px var(--f-titulo);color:var(--texto-2);background:#fff}
.cal li{min-width:0}
.cal li small{font:500 9.5px var(--f-texto);opacity:.85}
@media (max-width:420px){.cal li{font-size:12.5px;border-radius:8px}.cal li small{font-size:8.5px}}
.cal .feito{color:#fff;border-color:transparent}
.cal .feito.f1{background:var(--f1);color:var(--n360-cor-oliva-800)}.cal .feito.f2{background:var(--f2)}.cal .feito.f3{background:var(--f3);color:#3D2A10}
.cal .perdido{background:var(--n360-cor-pedra-100);border-style:dashed}
.cal .hoje{border-color:var(--pri);border-width:2.5px;color:var(--pri)}

.selos{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}
.selos li{border:1.5px solid var(--linha);border-radius:14px;padding:12px;opacity:.5;filter:grayscale(1)}
.selos li.tem{opacity:1;filter:none;background:var(--n360-cor-mel-100);border-color:#EED9B4}
.selos .em{font-size:28px;display:block}
.selos b{display:block;font-family:var(--f-titulo);color:var(--titulo)}
.selos small{font-size:12px;color:var(--texto-2);line-height:1.3;display:block}
.reintro{list-style:none;margin:8px 0;padding:0;display:grid;gap:6px}
.reintro li{display:flex;gap:10px;padding:10px 12px;border-radius:12px;background:var(--suave)}
.reintro .r0{background:var(--n360-cor-menta-100)}.reintro .r1{background:var(--n360-cor-mel-100)}.reintro .r2{background:var(--n360-cor-rosa-50)}
.barra{height:12px;border-radius:99px;background:var(--linha);overflow:hidden;margin:8px 0 10px}
.barra i{display:block;height:100%;width:var(--v);background:linear-gradient(90deg,var(--f1),var(--f2));border-radius:99px}
.mats{list-style:none;margin:8px 0;padding:0;display:grid;gap:6px}
.mats a{display:block;padding:12px 14px;border:1.5px solid var(--linha);border-radius:12px;text-decoration:none;font-weight:600;color:var(--titulo) !important}
.mats a:hover{border-color:var(--pri)}
.mats .trancado{padding:12px 14px;border:1.5px dashed var(--linha);border-radius:12px;color:var(--texto-2)}
.fim{background:linear-gradient(160deg,#fff,var(--pri-fundo))}
.alerta{background:var(--n360-cor-rosa-50);border:1px solid #E9C5BC;border-radius:var(--raio);padding:14px 16px;font-size:14px;color:#5A2E25}

/* Certificado */
.cert-body{background:var(--pri-fundo)}
.cert{max-width:860px;margin:0 auto;padding:24px 16px;text-align:center}
.cert-folha{background:#fff;border-radius:8px;padding:56px 32px 40px;box-shadow:var(--sombra);position:relative;margin-bottom:20px;border:10px solid #fff;outline:1px solid var(--linha-forte);outline-offset:-22px}
.cert-flor{width:64px;height:64px;margin:0 auto 12px;display:block;fill:none;stroke:var(--pri);stroke-width:1.4}
.cert-flor .g{fill:var(--n360-cor-caramelo-600);stroke:none}
.cert-eyb{font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--n360-cor-caramelo-600)}
.cert h1{font-size:clamp(28px,6vw,46px);margin:8px 0 12px}
.cert-txt{font-size:18px;max-width:560px;margin:0 auto 16px}
.cert-data{color:var(--texto-2)}
.cert-ass{margin:36px auto 18px;width:240px;border-top:1px solid var(--titulo);padding-top:8px}
.cert-ass span{display:block;font:500 18px var(--f-titulo);color:var(--titulo)}
.cert-ass small{color:var(--texto-2)}
.cert-logo{height:22px;width:auto;margin:0 auto}
@media print{.cert .btn{display:none}.cert-body{background:#fff}.cert-folha{box-shadow:none}}

/* Landing do desafio */
.desafio main{max-width:760px;margin:0 auto;padding:0 16px}
.d-hero{text-align:center;padding:48px 0 32px}
.d-hero .selo{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;padding:7px 14px;border-radius:999px;background:var(--pri-fundo);color:var(--n360-cor-oliva-800)}
.d-hero .selo i{width:8px;height:8px;border-radius:50%;background:var(--pri)}
.d-hero h1{font-size:clamp(30px,7vw,48px);line-height:1.1;margin:18px auto 14px;max-width:640px}
.d-hero h1 em{font-style:normal;color:var(--pri)}
.d-hero .lead{font-size:18px;max-width:560px;margin:0 auto 22px}
.d-hero .btn{max-width:380px}
.prox{margin-top:12px;color:var(--texto-2)}
.corrente{display:flex;justify-content:center;gap:0;margin:8px auto 26px}
.corrente i{width:46px;height:26px;border:4px solid var(--pri);border-radius:999px;margin:0 -7px;background:transparent;animation:elo .5s both}
.corrente i:nth-child(even){border-color:var(--f1);transform:translateY(0)}
.corrente i:nth-child(1){animation-delay:.05s}.corrente i:nth-child(2){animation-delay:.15s}.corrente i:nth-child(3){animation-delay:.25s}.corrente i:nth-child(4){animation-delay:.35s}.corrente i:nth-child(5){animation-delay:.45s}.corrente i:nth-child(6){animation-delay:.55s}.corrente i:nth-child(7){animation-delay:.65s}
@keyframes elo{from{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.corrente i{animation:none}}
.d-sec{padding:32px 0;border-top:1px solid var(--linha)}
.d-sec h2{font-size:clamp(24px,5vw,32px);margin-bottom:16px}
.d-sec.suave{background:#fff;border:1px solid var(--linha);border-radius:var(--raio-g);padding:28px 20px;margin:16px 0}
.passos{list-style:none;counter-reset:p;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.passos li{counter-increment:p;background:#fff;border:1px solid var(--linha);border-radius:var(--raio);padding:16px}
.passos li::before{content:counter(p);display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--pri-fundo);color:var(--n360-cor-oliva-800);font:600 15px var(--f-titulo);margin-bottom:8px}
.passos b{display:block;font-family:var(--f-titulo);color:var(--titulo)}
.passos span{font-size:14.5px}
.missoes{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.missoes li{display:flex;gap:12px;align-items:baseline;padding:12px 14px;border-radius:12px;background:var(--suave)}
.missoes .dn{flex:none;font:700 12px var(--f-titulo);letter-spacing:.06em;text-transform:uppercase;color:var(--n360-cor-caramelo-600);width:48px}
.quem{display:flex;gap:20px;align-items:center}
.quem img{width:120px;height:120px;border-radius:50%;object-fit:cover;flex:none}
@media (max-width:520px){.quem{flex-direction:column;text-align:center}}
.form-d{display:grid;gap:12px;max-width:480px}
.form-d label{display:grid;gap:6px;font-weight:600;color:var(--titulo);font-size:15px}
.form-d input[type=text],.form-d input:not([type]),.form-d input[type=tel]{min-height:52px;border:1.5px solid var(--linha-forte);border-radius:14px;padding:0 14px;background:#fff;font-size:16px}
.form-d .aceite{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:13.5px;color:var(--texto)}
.form-d .aceite input{width:20px;height:20px;margin-top:2px;flex:none;accent-color:var(--pri)}
.form-d .hp{position:absolute;left:-9999px}
.faq details{border-bottom:1px solid var(--linha);padding:4px 0}
.faq summary{color:var(--titulo)}
.faq p{margin:4px 0 12px}
