/* Camilo Hernández · site. Sistema "O Manual de Identidade": campos chapados, Archivo em três larguras, cantos retos, sem sombras. */
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url('/fonts/Archivo-latin.woff2') format('woff2')}
:root{
  --verde:#0b3d2e;--papel:#ebe8e1;--tinta:#111110;--ac:#f2c230;--cinza:#5d5c57;
  --papel-2:#e2ded5;
  --f:'Archivo',system-ui,sans-serif;
  --m:clamp(16px,4.2vw,56px);
  --sec:clamp(64px,9vw,128px);
  --topo:64px;
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--topo) + 16px)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
body{margin:0;background:var(--papel);color:var(--tinta);font-family:var(--f);font-stretch:100%;font-weight:400;font-size:17px;line-height:1.5;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3{margin:0;font-weight:900;font-stretch:125%;letter-spacing:-.03em;line-height:.95;text-wrap:balance}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
.num{font-variant-numeric:tabular-nums}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ic{width:1.15em;height:1.15em;flex:none}
:focus-visible{outline:3px solid var(--tinta);outline-offset:3px}
.capa__campo :focus-visible,.sec--tinta :focus-visible,.sec--verde :focus-visible,.fecho :focus-visible,.plano--destaque :focus-visible,.prancha--vazia :focus-visible{outline-color:var(--ac)}
.pular{position:absolute;left:-999px;top:8px;z-index:50;background:var(--ac);padding:10px 14px;font-weight:800}
.pular:focus{left:8px}

/* ---------- botões */
.botao{display:inline-flex;align-items:center;gap:.6em;min-height:48px;padding:.8em 1.25em;border:0;border-radius:0;font-family:var(--f);font-stretch:112%;font-weight:800;font-size:16px;line-height:1.15;letter-spacing:.005em;text-decoration:none;cursor:pointer;transition:background-color .15s,color .15s}
.botao--ac{background:var(--ac);color:var(--tinta)}
.botao--ac:hover{background:#ffd447}
.botao--papel{background:var(--papel);color:var(--tinta)}
.botao--papel:hover{background:#fff}
.botao--tinta,.botao--linha{background:var(--tinta);color:var(--papel)}
.botao--tinta:hover,.botao--linha:hover{background:var(--verde)}
.botao--p{min-height:42px;padding:.6em 1em;font-size:15px}
.botao--g{min-height:56px;font-size:17px;padding:.9em 1.4em}
.botao[disabled]{opacity:.6;cursor:progress}
.link{display:inline-flex;align-items:center;gap:.35em;font-stretch:112%;font-weight:800;font-size:15px;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.link:hover{color:var(--verde)}
.link--claro:hover{color:var(--ac)}

/* ---------- topo */
.topo{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:0 12px;min-height:var(--topo);padding:0 var(--m);background:var(--papel);border-bottom:2px solid var(--tinta)}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;font-stretch:125%;font-weight:900;letter-spacing:-.02em;font-size:17px;white-space:nowrap}
.marca__m{width:30px;height:24px;color:var(--verde)}
.indice{display:flex;justify-content:center;gap:clamp(10px,1.6vw,24px);font-stretch:112%;font-weight:700;font-size:14px}
.indice a{display:flex;gap:5px;align-items:baseline;text-decoration:none;padding:6px 0;white-space:nowrap}
.indice a .num{font-size:11px;color:var(--cinza)}
.indice a:hover,.indice a[aria-current]{color:var(--verde);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.topo__lang{display:grid;place-items:center;min-width:44px;min-height:44px;font-stretch:112%;font-weight:800;font-size:14px;text-decoration:none;background:var(--papel-2)}
.topo__lang:hover{background:var(--tinta);color:var(--papel)}
.topo__wa{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;background:var(--ac);text-decoration:none;font-stretch:112%;font-weight:800;font-size:14px;white-space:nowrap}
@media (max-width:1100px){
  .topo{grid-template-columns:1fr auto auto;padding-top:6px}
  .indice{grid-column:1/-1;grid-row:2;justify-content:flex-start;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--m)*-1);padding:2px var(--m) 4px;gap:18px}
  .indice::-webkit-scrollbar{display:none}
  :root{--topo:104px}
}
@media (max-width:420px){.topo__wa span{display:none}.topo__wa{padding:0 12px}.marca{font-size:15px}}

/* ---------- capa */
.capa{display:grid;grid-template-columns:minmax(0,1fr);position:relative}
.capa__campo{position:relative;background:var(--verde);color:var(--papel);padding:clamp(28px,5vw,64px) var(--m) clamp(40px,6vw,72px);overflow:hidden}
.capa__mono{width:clamp(150px,30vw,330px);height:auto;margin-bottom:clamp(24px,4vw,48px)}
.mono__c{fill:none;stroke:rgba(235,232,225,.3);stroke-width:1.6;vector-effect:non-scaling-stroke}
.mono__f{fill:var(--papel)}
.nome{font-size:clamp(46px,10.4vw,150px);line-height:.88;letter-spacing:-.045em;margin-bottom:clamp(20px,3vw,36px)}
.nome span{display:block}
.capa__oferta{max-width:36ch;font-size:clamp(18px,1.6vw,22px);line-height:1.4}
.capa__oferta strong{display:block;margin-top:.4em;font-stretch:112%;font-weight:800;color:var(--ac)}
.capa__onde{margin-top:14px;font-stretch:112%;font-size:14px;opacity:.75}
.capa__acoes{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.capa__bloco{display:none}
.folheia{margin:0;padding:var(--m);display:grid;gap:10px;align-content:start}
.folheia__cab{display:flex;justify-content:space-between;gap:12px;font-stretch:112%;font-size:13px;font-weight:700;color:var(--cinza)}
.folheia__img{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:var(--tinta)}
.folheia__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.folheia__img img.entra{animation:entra .7s cubic-bezier(.2,.7,.2,1) both}
@keyframes entra{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0)}}
.folheia__pe{font-stretch:125%;font-weight:900;font-size:20px;letter-spacing:-.02em}
.folheia__barra{height:4px;background:var(--papel-2)}
.folheia__barra span{display:block;height:100%;width:0;background:var(--verde)}
.folheia__barra span.corre{animation:corre var(--t,3600ms) linear forwards}
@keyframes corre{to{width:100%}}
.capa__figs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:clamp(20px,3vw,36px) var(--m);border-top:2px solid var(--tinta)}
.capa__figs b{display:block;font-stretch:125%;font-weight:900;font-size:clamp(30px,5.4vw,76px);letter-spacing:-.04em;line-height:.9;color:var(--verde)}
.capa__figs span{display:block;margin-top:8px;font-stretch:112%;font-size:clamp(12px,1.2vw,14px);color:var(--cinza);max-width:20ch}
@media (min-width:960px){
  .capa{grid-template-columns:minmax(0,62fr) minmax(0,38fr);grid-template-rows:auto auto}
  .capa__campo{grid-row:1;padding-right:clamp(32px,4vw,64px)}
  .capa__mono{position:absolute;right:clamp(24px,3vw,48px);top:clamp(24px,3vw,48px);width:clamp(180px,20vw,300px);margin:0}
  .nome{margin-top:clamp(120px,14vw,220px);font-size:clamp(56px,6.5vw,124px)}
  .capa__bloco{display:block;position:absolute;width:32px;height:32px;background:var(--ac);left:calc(62% - 32px);top:0;z-index:1}
  .folheia{padding:clamp(24px,3vw,44px) var(--m) clamp(24px,3vw,44px) clamp(20px,2.4vw,36px);align-content:end}
  .folheia__img{aspect-ratio:4/5}
  .capa__figs{grid-column:1/-1}
}

/* ---------- seções */
.sec{padding:var(--sec) var(--m)}
.sec--linha{border-top:2px solid var(--tinta)}
.sec--tinta{background:var(--tinta);color:var(--papel)}
.sec--verde{background:var(--verde);color:var(--papel)}
.sec__cab{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-bottom:clamp(36px,5vw,64px);max-width:1180px}
.sec__n{font-stretch:125%;font-weight:900;font-size:15px;color:var(--verde);display:flex;align-items:center;gap:10px}
.sec__n::before{content:"";width:14px;height:14px;background:currentColor}
.sec--tinta .sec__n,.sec--verde .sec__n{color:var(--ac)}
.sec h2{font-size:clamp(34px,6vw,84px)}
.sec__lead{max-width:60ch;font-size:clamp(17px,1.4vw,19px);color:var(--cinza)}
.sec--tinta .sec__lead,.sec--verde .sec__lead{color:rgba(235,232,225,.78)}

/* listas com quadrado chapado */
.qd li{position:relative;padding-left:24px;margin-top:8px}
.qd li::before{content:"";position:absolute;left:0;top:.42em;width:12px;height:12px;background:var(--verde)}
.sec--tinta .qd li::before,.plano--destaque .qd li::before{background:var(--ac)}

/* serviços */
.serv{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:clamp(28px,4vw,48px) clamp(20px,3vw,40px)}
.serv li{padding-top:18px;border-top:6px solid var(--verde)}
.serv h3{font-size:clamp(22px,2.2vw,28px);margin-bottom:10px}
.serv p{color:var(--cinza)}

/* portfólio */
.pranchas{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:clamp(36px,4vw,56px) clamp(20px,2.4vw,32px)}
.prancha{display:flex;flex-direction:column;gap:10px}
.prancha__cab{display:flex;justify-content:space-between;gap:10px;font-stretch:112%;font-size:13px;font-weight:700;color:var(--cinza)}
.prancha__img{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--tinta)}
.prancha__img img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.prancha:hover .prancha__img img{transform:scale(1.035)}
.prancha h3{font-size:24px;margin-top:4px}
.prancha p{color:var(--cinza);font-size:15.5px}
.prancha .link{margin-top:auto;padding-top:6px}
.prancha--vazia{background:var(--verde);color:var(--papel);padding:clamp(24px,3vw,36px);justify-content:center;gap:14px}
.prancha--vazia p{color:rgba(235,232,225,.8)}
.prancha__gr{font-stretch:125%;font-weight:900;font-size:clamp(26px,2.6vw,34px);line-height:1;letter-spacing:-.03em;color:var(--papel)!important}
.prancha--vazia .botao{align-self:flex-start}

/* caso */
.caso{display:grid;gap:clamp(28px,4vw,48px)}
.caso__ficha{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:22px 32px}
.caso__ficha dt{font-stretch:112%;font-weight:800;color:var(--ac);margin-bottom:4px}
.caso__ficha dd{margin:0;color:rgba(235,232,225,.82)}
.caso__mural{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,1.4vw,18px);align-items:end}
.caso__mural img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.caso__mural img:nth-child(2){aspect-ratio:9/16}
.caso__acoes{display:flex;flex-wrap:wrap;gap:10px}

/* processo */
.passos{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:clamp(28px,3vw,40px)}
.passo__n{display:block;font-stretch:125%;font-weight:900;font-size:clamp(64px,8vw,112px);line-height:.85;letter-spacing:-.05em;color:var(--verde);margin-bottom:14px}
.passos h3{font-size:22px;margin-bottom:8px}
.passos p{color:var(--cinza)}

/* planos */
.planos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:0;margin:0 calc(var(--m)*-1);border-top:2px solid var(--tinta)}
.plano{display:flex;flex-direction:column;padding:clamp(24px,3vw,36px) var(--m);border-bottom:2px solid var(--tinta)}
@media (min-width:600px){.plano{padding:clamp(24px,3vw,36px) clamp(20px,2vw,32px)}.plano+.plano{border-left:2px solid var(--tinta)}}
.plano--destaque{background:var(--verde);color:var(--papel)}
.plano__tipo{font-stretch:112%;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--cinza)}
.plano--destaque .plano__tipo{color:var(--ac)}
.plano h3{font-size:clamp(28px,2.8vw,40px);margin:8px 0 6px}
.plano__para{font-size:15px;color:var(--cinza);min-height:2.8em}
.plano--destaque .plano__para,.plano--destaque .plano__m{color:rgba(235,232,225,.8)}
.plano__v{margin-top:22px}
.plano__v b{display:block;font-stretch:125%;font-weight:900;font-size:clamp(40px,4.4vw,60px);line-height:.9;letter-spacing:-.045em;white-space:nowrap}
.plano__v b.plano__orc{font-size:clamp(30px,3vw,40px);white-space:normal}
.plano--destaque .plano__v b{color:var(--ac)}
.plano__v>span{display:block;margin-top:6px;font-stretch:112%;font-size:13px;color:var(--cinza)}
.plano--destaque .plano__v>span{color:rgba(235,232,225,.7)}
.plano__m{margin-top:10px;font-size:15px;color:var(--cinza)}
.plano__m b{font-stretch:112%;font-weight:800;color:var(--tinta)}
.plano--destaque .plano__m b{color:var(--papel)}
.plano .qd{margin:20px 0 26px;font-size:15.5px}
.plano__acoes{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.planos__todos{margin-top:clamp(28px,3vw,40px);display:grid;gap:10px}
.planos__todos>p{font-stretch:112%;font-weight:800}
.planos__todos .qd{display:flex;flex-wrap:wrap;gap:0 28px}

/* mensalidade */
.mens{width:100%;max-width:1000px;border-collapse:collapse}
.mens th,.mens td{padding:16px 12px;text-align:left;border-bottom:1px solid rgba(235,232,225,.25)}
.mens thead th{font-stretch:112%;font-weight:700;font-size:14px;color:rgba(235,232,225,.75)}
.mens tbody th{font-stretch:125%;font-weight:900;font-size:22px;letter-spacing:-.02em}
.mens b{font-stretch:125%;font-weight:900;font-size:clamp(20px,2.2vw,30px);letter-spacing:-.03em;color:var(--ac);white-space:nowrap}
.mens td:last-child{text-align:right}
@media (max-width:700px){
  .mens thead{display:none}
  .mens,.mens tbody,.mens tr{display:block}
  .mens tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px;padding:18px 0;border-bottom:1px solid rgba(235,232,225,.25)}
  .mens th,.mens td{border:0;padding:0}
  .mens tbody th{grid-column:1/-1}
  .mens td[data-r]::before{content:attr(data-r);display:block;font-stretch:112%;font-size:12px;color:rgba(235,232,225,.7);margin-bottom:2px}
  .mens b{font-size:20px}
  .mens td:last-child{grid-column:1/-1;text-align:left;margin-top:6px}
}

/* marketing */
.mkt{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:clamp(32px,4vw,48px) clamp(20px,3vw,40px)}
.mkt li{display:flex;flex-direction:column;gap:10px;padding-top:18px;border-top:2px solid var(--tinta)}
.mkt h3{font-size:22px}
.mkt p{color:var(--cinza);font-size:15.5px}
.mkt__v{margin-top:auto;padding-top:6px}
.mkt__v b{font-stretch:125%;font-weight:900;font-size:34px;letter-spacing:-.04em;color:var(--verde)!important}
.mkt__v>span{margin-left:8px;font-stretch:112%;font-size:13px}
.mkt .botao{align-self:flex-start}

/* perguntas */
.faq{max-width:900px;border-top:2px solid var(--tinta)}
.faq details{border-bottom:2px solid var(--tinta)}
.faq summary{display:flex;justify-content:space-between;gap:20px;align-items:center;cursor:pointer;list-style:none;padding:20px 0;font-stretch:112%;font-weight:800;font-size:clamp(17px,1.6vw,20px);line-height:1.25}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;display:grid;place-items:center;width:32px;height:32px;background:var(--verde);color:var(--papel);font-weight:900;font-size:22px;line-height:1}
.faq details[open] summary::after{content:"−";background:var(--ac);color:var(--tinta)}
.faq details p{padding:0 0 22px;max-width:70ch;color:var(--cinza)}

/* orçamento */
.orc{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:18px 24px;max-width:1000px}
.orc label{display:grid;gap:6px}
.orc label>span,.paga label>span{font-stretch:112%;font-weight:700;font-size:14px}
.orc label i,.paga label i{font-style:normal;font-weight:400;opacity:.7}
.orc__msg,.orc__acoes{grid-column:1/-1}
input,select,textarea{width:100%;min-height:50px;padding:12px 14px;border:0;border-radius:0;background:var(--papel);color:var(--tinta);font-size:16px}
textarea{resize:vertical;min-height:110px}
select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--tinta) 50%),linear-gradient(135deg,var(--tinta) 50%,transparent 50%);background-position:calc(100% - 20px) 22px,calc(100% - 14px) 22px;background-size:6px 6px;background-repeat:no-repeat;padding-right:40px}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--ac);outline-offset:0}
[aria-invalid=true]{box-shadow:inset 0 -4px 0 #b3412b}
.orc__acoes{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:6px}

/* fecho */
.fecho{position:relative;overflow:hidden;background:var(--verde);color:var(--papel);padding:var(--sec) var(--m)}
.fecho__mono{position:absolute;right:-6%;bottom:-18%;width:min(70vw,620px);opacity:.55;pointer-events:none}
.fecho__mono .mono__f{fill:rgba(235,232,225,.08)}
.fecho h2{position:relative;font-size:clamp(40px,7.4vw,110px);max-width:14ch}
.fecho p{position:relative;margin-top:18px;max-width:46ch;font-size:clamp(17px,1.5vw,20px);color:rgba(235,232,225,.82)}
.fecho__acoes{position:relative;display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}
.fecho__acoes .botao span{overflow-wrap:anywhere}

/* rodapé (fólio) */
.pe{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;align-items:start;padding:28px var(--m) calc(28px + env(safe-area-inset-bottom));font-stretch:112%;font-size:13px;color:var(--cinza)}
.pe__m{grid-row:1/4;width:34px;height:28px;color:var(--verde)}
.pe b{color:var(--tinta)}
.pe a{color:var(--tinta)}
.pe__min{font-size:12px}

/* botão flutuante */
.flutua{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:15;display:grid;place-items:center;width:58px;height:58px;background:var(--ac);color:var(--tinta);transform:translateY(120px);transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.flutua .ic{width:28px;height:28px}
.flutua.on{transform:none}
@media (min-width:1101px){.flutua{display:none}}

/* caixa de pagamento */
.paga{width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;border:0;border-radius:0;background:var(--papel);color:var(--tinta)}
.paga::backdrop{background:rgba(17,17,16,.72)}
.paga__f{display:grid;gap:14px;padding:0 0 22px}
.paga__f>*:not(.paga__cab){margin:0 22px}
.paga__cab{position:relative;background:var(--verde);color:var(--papel);padding:20px 64px 20px 22px}
.paga__rot{font-stretch:112%;font-weight:700;font-size:13px;color:var(--ac)}
.paga__cab h2{font-size:clamp(22px,4.6vw,30px);margin-top:6px}
.paga__x{position:absolute;right:0;top:0;width:52px;height:52px;border:0;background:var(--tinta);color:var(--papel);font-size:28px;line-height:1;cursor:pointer}
.paga__op{border:0;padding:0;display:grid;gap:8px}
.paga__op:empty{display:none}
.paga__op label{display:grid;grid-template-columns:auto 1fr auto;gap:2px 12px;align-items:center;padding:12px 14px;background:var(--papel-2);cursor:pointer}
.paga__op input{width:20px;height:20px;min-height:0;margin:0;accent-color:var(--verde)}
.paga__op b{font-stretch:112%;font-weight:800}
.paga__op small{grid-column:2;font-size:13px;color:var(--cinza)}
.paga__op .num{grid-row:1;grid-column:3;font-stretch:125%;font-weight:900}
.paga__op label:has(input:checked){background:var(--tinta);color:var(--papel)}
.paga__op label:has(input:checked) small{color:rgba(235,232,225,.7)}
.paga__total b{font-stretch:125%;font-weight:900;font-size:clamp(40px,9vw,56px);letter-spacing:-.045em;line-height:.9;color:var(--verde)}
.paga label{display:grid;gap:6px}
.paga input:not([type=radio]){background:#fff}
.paga__nota{font-size:13.5px;color:var(--cinza)}
.paga__msg:empty{display:none}
.paga__msg{padding:12px 14px;background:var(--tinta);color:var(--papel);font-size:15px}
.paga__msg a{color:var(--ac);font-weight:800}

/* página de retorno do pagamento */
.corpo-ret{min-height:100dvh;display:flex;flex-direction:column}
.ret{flex:1;position:relative;overflow:hidden;background:var(--verde);color:var(--papel);padding:clamp(48px,8vw,120px) var(--m);display:grid;align-content:start;gap:16px}
.ret__mono{width:clamp(140px,22vw,260px);height:auto;margin-bottom:12px}
.ret__rot{font-stretch:112%;font-weight:800;color:var(--ac)}
.ret h1{font-size:clamp(40px,7vw,96px);max-width:14ch}
.ret p{max-width:52ch;font-size:clamp(17px,1.5vw,20px);color:rgba(235,232,225,.85)}
.ret__v b{font-stretch:125%;font-weight:900;font-size:clamp(36px,5vw,64px);color:var(--ac);letter-spacing:-.04em}
.ret__acoes{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:12px}
.ret{min-height:calc(100dvh - var(--topo) - 120px)}

/* ---------- por páginas */
/* abertura das páginas internas: campo verde, número da página, título grande */
.folha{position:relative;overflow:hidden;background:var(--verde);color:var(--papel);padding:clamp(40px,7vw,104px) var(--m) clamp(40px,6vw,88px)}
.folha__mono{position:absolute;right:clamp(-60px,-3vw,-20px);top:50%;transform:translateY(-50%);width:min(52vw,520px);opacity:.5;pointer-events:none}
.folha__mono .mono__f{fill:rgba(235,232,225,.07)}
.folha__n{position:relative;display:flex;gap:18px;font-stretch:112%;font-weight:800;font-size:14px;color:var(--ac);margin-bottom:clamp(20px,3vw,32px)}
.folha__n span+span{color:rgba(235,232,225,.75);font-weight:700}
.folha h1{position:relative;font-size:clamp(42px,8vw,120px);max-width:15ch;line-height:.9;letter-spacing:-.045em}
.folha__lead{position:relative;margin-top:clamp(18px,2.4vw,28px);max-width:56ch;font-size:clamp(17px,1.5vw,20px);color:rgba(235,232,225,.82)}
.folha__bloco{position:absolute;right:0;bottom:0;width:32px;height:32px;background:var(--ac)}
@media (max-width:700px){.folha__mono{width:78vw;top:auto;bottom:-14%;transform:none}}

.sec__cab--linha{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:12px 32px;max-width:none}
.sec__cab--linha h2{font-size:clamp(30px,4.6vw,60px)}
.sec--papel2{background:var(--papel-2)}

/* serviços: resumo no início e página completa */
.serv--curto li a{display:block;text-decoration:none;height:100%}
.serv--curto li:hover h3{color:var(--verde);text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px}
.serv--curto h3{font-size:clamp(20px,1.9vw,24px)}
.serv--longo li{display:flex;flex-direction:column;gap:10px;scroll-margin-top:calc(var(--topo) + 24px)}
.serv__n{font-stretch:125%;font-weight:900;font-size:15px;color:var(--verde)}
.serv--longo h2{font-size:clamp(26px,2.8vw,38px)}
.serv--longo p{font-size:17px}
.serv--longo .link{margin-top:auto;padding-top:6px}

.pranchas--3{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}

/* faixa de preço no início */
.preco{display:grid;grid-template-columns:minmax(0,1fr);gap:10px 40px;align-items:end;background:var(--verde);color:var(--papel);padding:clamp(48px,7vw,96px) var(--m)}
.preco__rot{font-stretch:112%;font-weight:800;color:var(--ac)}
.preco__v{font-stretch:125%;font-weight:900;font-size:clamp(64px,12vw,176px);line-height:.85;letter-spacing:-.05em;color:var(--ac)}
.preco__p{max-width:40ch;font-size:clamp(17px,1.5vw,20px);color:rgba(235,232,225,.82)}
.preco .botao{justify-self:start;margin-top:10px}
@media (min-width:900px){.preco{grid-template-columns:auto minmax(0,1fr)}.preco__rot{grid-column:1/-1}.preco__v{grid-row:2/4}.preco__p{grid-column:2;grid-row:2}.preco .botao{grid-column:2;grid-row:3}}

.passos--curto h3{font-size:20px}
.passos--curto .passo__n{font-size:clamp(48px,6vw,80px)}
.passos--longo h2{font-size:clamp(24px,2.4vw,30px);margin-bottom:10px}

.planos__nota{margin-top:20px;max-width:70ch;color:var(--cinza)}

/* faixa "já é cliente" e próxima página */
.faixa,.proxima{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;padding:clamp(24px,3vw,36px) var(--m);text-decoration:none}
.faixa{background:var(--tinta);color:var(--papel)}
.faixa span{color:rgba(235,232,225,.75);font-stretch:112%}
.faixa b{font-stretch:125%;font-weight:900;font-size:clamp(22px,2.6vw,32px);letter-spacing:-.02em;color:var(--ac)}
.faixa .ic{width:28px;height:28px;color:var(--ac)}
.faixa:hover b{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px}
.proxima{justify-content:space-between;border-top:2px solid var(--tinta);border-bottom:2px solid var(--tinta)}
.proxima .num{font-stretch:112%;font-size:13px;font-weight:700;color:var(--cinza);flex-basis:100%}
.proxima b{font-stretch:125%;font-weight:900;font-size:clamp(32px,5vw,64px);letter-spacing:-.04em;line-height:.95}
.proxima .ic{width:clamp(32px,4vw,52px);height:clamp(32px,4vw,52px);color:var(--verde);transition:transform .2s}
.proxima:hover .ic{transform:translateX(8px)}
.proxima:hover b{color:var(--verde)}
.pe__nav{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:0}
.pe__nav a{font-size:13px}
.pe__nav a{text-decoration:none;font-weight:700}
.pe__nav a:hover{text-decoration:underline}

/* orçamento como página: formulário em papel, contato ao lado */
.orc__sec{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(40px,5vw,72px)}
@media (min-width:1000px){.orc__sec{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}}
.orc__sec input,.orc__sec select,.orc__sec textarea{background:#fff}
.orc__sec :focus-visible{outline-color:var(--verde)}
.contato{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.contato h2{font-size:clamp(28px,3vw,40px)}
.contato p{color:var(--cinza);margin-bottom:8px}
.contato .botao span{overflow-wrap:anywhere}
.botao--papel2{background:var(--papel-2);color:var(--tinta)}
.botao--papel2:hover{background:var(--tinta);color:var(--papel)}

/* ---------- mejoras */
/* esboço ao vivo: o nome do visitante num site do ramo dele */
.vivo__g{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(24px,3vw,48px);align-items:start}
@media (min-width:960px){.vivo__g{grid-template-columns:minmax(0,1fr) minmax(0,1.7fr)}}
.vivo__f{display:grid;gap:16px}
.vivo__f label{display:grid;gap:6px}
.vivo__f label>span{font-stretch:112%;font-weight:700;font-size:14px}
.vivo__f input,.vivo__f select{background:#fff}
.vivo__f .botao{justify-self:start}
.vivo__aviso{font-size:13px;color:var(--cinza)}
.vivo__g>*{min-width:0}
@media (min-width:700px){.vivo__tela{aspect-ratio:16/10}}
.vivo__tela{position:relative;overflow:hidden;width:100%;min-height:340px;background:var(--m-esc);color:var(--m-cla);display:flex;flex-direction:column;justify-content:flex-end;gap:12px;padding:clamp(18px,3vw,40px);transition:background-color .4s}
.vivo__foto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.vivo__tela::before{content:"";position:absolute;inset:0;z-index:1;background:var(--m-esc);opacity:.66;transition:background-color .4s}
.vivo__tela>*:not(.vivo__foto){position:relative;z-index:2}
.vivo__nav{position:absolute!important;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px clamp(18px,3vw,40px);font-size:13px}
.vivo__nav b,.vivo__nome{font-stretch:var(--m-wd);font-weight:var(--m-wg);text-transform:var(--m-up);letter-spacing:var(--m-ls)}
.vivo__nav b{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:55%}
.vivo__menu{display:flex;gap:14px;opacity:.85}
@media (max-width:520px){.vivo__menu span:not(:last-child){display:none}}
.vivo__nicho{font-stretch:112%;font-weight:700;font-size:13px;color:var(--m-ac)}
.vivo__nome{font-size:clamp(34px,5.4vw,80px);line-height:.95;overflow-wrap:anywhere;transition:font-size .2s}
.vivo__tela--longo .vivo__nome{font-size:clamp(26px,3.6vw,52px)}
.vivo__btn{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;background:var(--m-ac);color:var(--m-act);font-weight:800;font-size:14px}
.vivo__nome,.vivo__nicho{animation:none}

/* qual plano é o meu? */
.qual{display:grid;gap:10px;margin-bottom:clamp(28px,3vw,40px);padding:clamp(20px,2.4vw,28px) 0;border-top:2px solid var(--tinta)}
.qual__t{font-stretch:125%;font-weight:900;font-size:clamp(22px,2.4vw,30px);letter-spacing:-.02em}
.qual__p{color:var(--cinza)}
.qual__ops{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.qual__op{min-height:44px;padding:10px 16px;border:0;border-radius:0;background:var(--papel-2);font-stretch:112%;font-weight:700;font-size:15px;cursor:pointer}
.qual__op:hover{background:var(--tinta);color:var(--papel)}
.qual__op[aria-pressed=true]{background:var(--verde);color:var(--papel)}
.qual__res:empty{display:none}
.qual__res{font-stretch:112%;font-weight:700;font-size:17px}
.plano--rec{outline:6px solid var(--ac);outline-offset:-6px}
.plano{scroll-margin-top:calc(var(--topo) + 16px);transition:outline-color .2s}

/* bolha do WhatsApp no orçamento */
.bolha{grid-column:1/-1;display:grid;gap:8px;justify-items:end;padding:18px;background:var(--papel-2)}
.bolha__t{justify-self:start;font-stretch:112%;font-weight:700;font-size:13px;color:var(--cinza)}
.bolha__msg{max-width:min(100%,460px);padding:10px 14px 12px;background:var(--verde);color:var(--papel);font-size:15px;line-height:1.45;white-space:pre-line;overflow-wrap:anywhere}

/* velocidade medida ao vivo */
.pe__vel{grid-column:2;font-size:12.5px;color:var(--verde);font-weight:700}

/* transições entre páginas */
@view-transition{navigation:auto}
.topo{view-transition-name:topo}
.folha h1,.capa .nome{view-transition-name:titulo}
::view-transition-old(root){animation:sai .22s cubic-bezier(.4,0,1,1) both}
::view-transition-new(root){animation:entra-p .34s cubic-bezier(.2,.7,.2,1) both}
::view-transition-old(titulo){animation:sai .2s both}
::view-transition-new(titulo){animation:sobe .45s cubic-bezier(.2,.7,.2,1) both}
@keyframes sai{to{opacity:0}}
@keyframes entra-p{from{opacity:0;transform:translateY(14px)}}
@keyframes sobe{from{opacity:0;transform:translateY(32px)}}
@media (prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}

/* sobre mim */
.sobre{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:start}
@media (min-width:900px){.sobre{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}
.sobre__foto{margin:0;position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--verde)}
.sobre__foto img{width:100%;height:100%;object-fit:cover}
.sobre__foto--mono{display:grid;place-items:center;color:var(--papel)}
.sobre__mono{width:72%;height:auto}
.sobre__foto--mono figcaption{position:absolute;left:clamp(16px,2vw,24px);bottom:clamp(16px,2vw,24px);font-stretch:125%;font-weight:900;font-size:clamp(20px,2.2vw,28px);letter-spacing:-.02em}
.sobre__foto::after{content:"";position:absolute;right:0;top:0;width:32px;height:32px;background:var(--ac)}
.sobre__ficha{margin:0;display:grid;gap:0;border-top:2px solid var(--tinta)}
.sobre__ficha div{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;padding:20px 0;border-bottom:2px solid var(--tinta)}
@media (min-width:600px){.sobre__ficha div{grid-template-columns:minmax(150px,1fr) minmax(0,2.4fr);gap:24px}}
.sobre__ficha dt{font-stretch:125%;font-weight:900;font-size:clamp(18px,1.6vw,22px);letter-spacing:-.02em;color:var(--verde)}
.sobre__ficha dd{margin:0;font-size:clamp(17px,1.4vw,19px)}
.sobre__acoes{display:flex;flex-wrap:wrap;gap:10px;margin-top:clamp(28px,3vw,40px)}
.sobre__acoes .botao span{overflow-wrap:anywhere}
.sobre__hist{max-width:68ch;display:grid;gap:1em;font-size:clamp(18px,1.5vw,21px);line-height:1.6}
.crer .passo__n{color:var(--ac)}
.crer p{color:rgba(235,232,225,.78)}

/* mensalidade como página: tabela sobre papel */
.sec:not(.sec--verde) .mens th,.sec:not(.sec--verde) .mens td{border-bottom-color:rgba(17,17,16,.2)}
.sec:not(.sec--verde) .mens thead th{color:var(--cinza)}
.sec:not(.sec--verde) .mens b{color:var(--verde)}
@media (max-width:700px){.sec:not(.sec--verde) .mens tr{border-bottom-color:rgba(17,17,16,.2)}.sec:not(.sec--verde) .mens td[data-r]::before{color:var(--cinza)}}

/* marca CH Digital: o ponto quadrado (pixel) depois de DIGITAL */
.px{display:inline-block;width:.22em;height:.22em;margin-left:.08em;background:var(--ac,#f2c230);vertical-align:baseline}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nome{letter-spacing:-.02em}
.topo__langs{display:flex;gap:2px}
@media (max-width:420px){.topo__langs .topo__lang{min-width:38px}}

/* páginas legais: leitura confortável, uma seção por h2 */
.legal{max-width:72ch}
.legal section+section{margin-top:clamp(28px,4vw,44px);padding-top:clamp(28px,4vw,44px);border-top:2px solid var(--tinta)}
.legal h2{font-size:clamp(22px,2.4vw,30px);letter-spacing:-.02em;margin-bottom:14px}
.legal p{margin-bottom:12px;line-height:1.6}
.legal a{color:var(--verde);font-weight:700}
.legal__data{margin-top:clamp(28px,4vw,44px);font-stretch:112%;font-size:14px;color:var(--cinza)}
.legal__ver{display:flex;flex-wrap:wrap;gap:6px 18px;font-stretch:112%}
.pe__legal a{font-weight:600}
/* moeda local: o Worker preenche e mostra; preço convertido não quebra linha */
.brl{white-space:nowrap}
.moeda-nota{margin:0 var(--m) clamp(28px,4vw,44px);max-width:72ch;font-stretch:112%;font-size:13px;color:var(--cinza)}
.nao-achei{display:grid;gap:clamp(28px,4vw,44px);grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.nao-achei h2{font-size:clamp(24px,2.6vw,32px);margin-bottom:8px}
.nao-achei p{color:var(--cinza);margin-bottom:16px}
.pg__brl{display:block;margin-top:6px;font-size:16px;letter-spacing:0;font-stretch:112%;font-weight:700;opacity:.7}
