:root{--marrom: #2e211c; --marrom2: #221814; --tomate: #d94a2b; --mostarda: #e6a92a; --creme: #fff9f0; --creme2: #f7eee1; --areia: #efe3d2; --texto: #56463f;}
*{box-sizing: border-box;}
html{scroll-behavior: smooth; text-size-adjust: 100%;}
body{margin: 0px; background: var(--creme); color: var(--texto); font-family: Lora, Georgia, serif; font-size: 18px; line-height: 1.75; -webkit-font-smoothing: antialiased;}
a{color: inherit;}
svg{max-width: 100%;}
::selection{background: var(--tomate); color: rgb(255, 255, 255);}
:focus-visible{outline: 2px solid var(--tomate); outline-offset: 3px;}
.miolo{max-width: 1120px; margin: 0px auto; padding: 0px 26px;}
h1, h2, h3{font-family: Archivo, "Helvetica Neue", Arial, sans-serif; color: var(--marrom); font-weight: 800; line-height: 1.1; letter-spacing: -0.02em; margin: 0px 0px 18px;}
h1{font-size: 54px;}
h2{font-size: 40px; max-width: 20ch;}
h3{font-size: 20px; font-weight: 700; line-height: 1.25; margin-bottom: 9px;}
p{margin: 0px 0px 18px; max-width: 62ch;}
.tarja{display: inline-block; margin-bottom: 20px; padding: 4px 13px; background: var(--tomate); color: rgb(255, 255, 255); font-family: Archivo, sans-serif; font-size: 12.5px; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase;}
.tarja.escura{background: var(--marrom);}
.linha-fina{font-size: 20px; line-height: 1.65;}
.entrada{font-size: 19px; max-width: 60ch;}
.entrada.clara{color: rgba(255, 249, 240, 0.82);}
.barra{background: var(--marrom);}
.barra-linha{display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-top: 16px; padding-bottom: 16px;}
.logo{display: flex; align-items: center; gap: 10px; text-decoration: none;}
.logo-panela{width: 32px; height: 32px; flex: 0 0 auto;}
.logo-nome{font-family: Archivo, sans-serif; font-size: 19px; font-weight: 800; letter-spacing: -0.01em; color: var(--creme);}
.navega{display: flex; gap: 22px;}
.navega a{font-family: Archivo, sans-serif; font-size: 14px; font-weight: 500; letter-spacing: 0.04em; text-transform: uppercase; text-decoration: none; color: rgba(255, 249, 240, 0.75);}
.navega a:hover{color: var(--mostarda);}
.abertura{background: var(--creme); border-bottom: 3px solid var(--marrom);}
.abertura-grade{display: grid; grid-template-columns: 1.3fr 0.7fr; gap: 50px; align-items: center; padding-top: 74px; padding-bottom: 70px;}
.botoes{display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px;}
.botao{display: inline-block; padding: 14px 26px; background: var(--marrom); border: 2px solid var(--marrom); color: var(--creme); font-family: Archivo, sans-serif; font-size: 15px; font-weight: 700; text-decoration: none; transition: background 0.18s, color 0.18s;}
.botao:hover{background: var(--tomate); border-color: var(--tomate);}
.botao.claro{background: none; color: var(--marrom);}
.botao.claro:hover{background: var(--marrom); color: var(--creme);}
.quadro{border: 2px solid var(--marrom); background: rgb(255, 255, 255);}
.quadro-topo{padding: 12px 20px; background: var(--marrom); color: var(--creme); font-family: Archivo, sans-serif; font-size: 13px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase;}
.quadro-lista{list-style: none; margin: 0px; padding: 20px;}
.quadro-lista li{padding: 11px 0px; border-bottom: 1px dashed rgba(46, 33, 28, 0.22); font-size: 16.5px; line-height: 1.5;}
.quadro-lista li:last-child{border-bottom: 0px; padding-bottom: 0px;}
.bloco{padding: 90px 0px;}
.bloco-claro{background: rgb(255, 253, 249);}
.bloco-claro2{background: var(--creme2);}
.bloco-creme{background: var(--creme2);}
.bloco-areia{background: var(--areia);}
.bloco-escuro{background: var(--marrom); color: rgba(255, 249, 240, 0.8);}
.bloco-escuro h2, .bloco-escuro h3{color: rgb(255, 255, 255);}
.tres{display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; margin-top: 40px;}
.ficha{background: rgb(255, 255, 255); border-left: 4px solid var(--tomate); padding: 24px 24px 22px;}
.ficha p{margin: 0px; font-size: 16.5px;}
.conferencia{display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 44px; margin-top: 40px; align-items: start;}
.checklist{list-style: none; margin: 0px; padding: 0px; display: grid; grid-template-columns: 1fr 1fr; gap: 4px 24px;}
.checklist label{display: flex; align-items: center; gap: 10px; padding: 9px 0px; border-bottom: 1px solid rgba(255, 249, 240, 0.16); font-size: 16.5px; cursor: pointer;}
.checklist input{width: 17px; height: 17px; accent-color: var(--mostarda); flex: 0 0 auto;}
.checklist label:hover{color: rgb(255, 255, 255);}
.medidor{background: rgba(255, 249, 240, 0.07); border: 1px solid rgba(255, 249, 240, 0.18); padding: 26px 24px;}
.medidor-num{display: block; font-family: Archivo, sans-serif; font-size: 34px; font-weight: 800; color: var(--mostarda);}
.medidor-trilho{margin: 14px 0px 16px; height: 8px; background: rgba(255, 249, 240, 0.16); overflow: hidden;}
.medidor-barra{display: block; height: 100%; width: 0px; background: var(--tomate); transition: width 0.25s;}
.medidor-texto{margin: 0px 0px 14px; font-size: 17px; color: rgb(255, 255, 255);}
.medidor-nota{margin: 0px; font-size: 15px; line-height: 1.6; color: rgba(255, 249, 240, 0.72);}
.dias{display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin-top: 40px; background: rgba(46, 33, 28, 0.14); border: 1px solid rgba(46, 33, 28, 0.14);}
.dia{background: rgb(255, 253, 249); padding: 26px 24px;}
.dia p{margin: 0px; font-size: 16.5px;}
.dia-nome{display: block; margin-bottom: 12px; font-family: Archivo, sans-serif; font-size: 13px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--tomate);}
.frase-bloco{background: var(--mostarda); padding: 62px 0px;}
.frase{margin: 0px; max-width: 24ch; font-family: Archivo, sans-serif; font-size: 42px; font-weight: 800; line-height: 1.1; letter-spacing: -0.025em; color: rgb(61, 42, 6);}
.dupla{display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 48px; align-items: start;}
.caixa-lista{background: rgb(255, 255, 255); border: 2px solid var(--marrom); padding: 28px 26px;}
.caixa-lista.destaque{background: var(--areia);}
.caixa-titulo{display: block; margin-bottom: 14px; font-family: Archivo, sans-serif; font-size: 14px; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; color: var(--marrom);}
.lista{list-style: none; margin: 0px; padding: 0px;}
.lista li{position: relative; margin-bottom: 12px; padding-left: 24px; font-size: 16.5px; line-height: 1.6;}
.lista li::before{content: "▸"; position: absolute; left: 0px; top: 0px; color: var(--tomate);}
.faq{margin-top: 34px; border-top: 2px solid var(--marrom);}
.faq details{border-bottom: 1px solid rgba(46, 33, 28, 0.2);}
.faq summary{position: relative; list-style: none; cursor: pointer; padding: 20px 44px 20px 0px; font-family: Archivo, sans-serif; font-size: 19px; font-weight: 700; color: var(--marrom);}
.faq summary::-webkit-details-marker{display: none;}
.faq summary::after{content: "+"; position: absolute; right: 6px; top: 17px; font-size: 24px; color: var(--tomate);}
.faq details[open] summary::after{content: "–";}
.faq summary:hover{color: var(--tomate);}
.faq p{margin: 0px; padding-bottom: 22px; font-size: 17px;}
.rodape{background: var(--marrom2); color: rgba(255, 249, 240, 0.7); padding: 50px 0px 54px;}
.rodape-grade{display: flex; flex-wrap: wrap; gap: 32px; justify-content: space-between; align-items: flex-start;}
.rodape p{margin: 16px 0px 0px; max-width: 46ch; font-size: 15px; line-height: 1.65;}
.rodape-links{display: flex; flex-wrap: wrap; gap: 18px; max-width: 400px;}
.rodape-links a{font-family: Archivo, sans-serif; font-size: 13.5px; letter-spacing: 0.04em; text-transform: uppercase; text-decoration: none; color: rgba(255, 249, 240, 0.7);}
.rodape-links a:hover{color: var(--mostarda);}
.rodape-fim{margin-top: 28px; font-size: 14px; opacity: 0.7;}
.texto-pagina{max-width: 750px; padding-top: 62px; padding-bottom: 74px;}
.texto-pagina h1{font-size: 42px;}
.texto-pagina h2{font-size: 24px; margin-top: 34px; margin-bottom: 10px; max-width: none;}
.texto-pagina ul{padding-left: 20px;}
.texto-pagina li{margin-bottom: 10px; max-width: 62ch;}
.formulario{margin-top: 28px; max-width: 520px;}
.formulario label{display: block; margin-bottom: 6px; font-family: Archivo, sans-serif; font-size: 13px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--marrom);}
.formulario input, .formulario textarea{width: 100%; margin-bottom: 20px; padding: 13px 14px; border: 2px solid rgba(46, 33, 28, 0.2); background: rgb(255, 255, 255); color: var(--marrom); font-family: Lora, serif; font-size: 16px;}
.formulario textarea{min-height: 130px; resize: vertical;}
.formulario input:focus, .formulario textarea:focus{border-color: var(--tomate); outline: none;}
.formulario button{padding: 14px 30px; border: 0px; background: var(--tomate); color: rgb(255, 255, 255); font-family: Archivo, sans-serif; font-size: 15px; font-weight: 700; cursor: pointer;}
@media (max-width: 1024px){h1{font-size: 42px;}
h2{font-size: 32px;}
.frase{font-size: 32px;}
.tres, .dias{grid-template-columns: 1fr 1fr;}}
@media (max-width: 880px){.abertura-grade{grid-template-columns: 1fr; gap: 38px; padding-top: 54px;}
.conferencia{grid-template-columns: 1fr; gap: 30px;}
.dupla{grid-template-columns: 1fr; gap: 34px;}}
@media (max-width: 700px){body{font-size: 17px;}
h1{font-size: 33px;}
h2{font-size: 27px;}
.linha-fina{font-size: 18px;}
.navega{display: none;}
.bloco{padding: 58px 0px;}
.tres, .dias{grid-template-columns: 1fr;}
.checklist{grid-template-columns: 1fr;}
.frase{font-size: 26px; max-width: none;}
.texto-pagina h1{font-size: 31px;}}
@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto;}
.medidor-barra{transition: none;}}