:root{
  --marca:#3a3835; --marca-fd:#282725; --acento:#CDA57A; --acento-esc:#7A4F2B;
  --papel:#EFEBE1; --papel2:#E6E1D4; --greige:#D6CFBF; --tinta:#232120; --muted:#5A554E;
  --serif:"Poppins","Jost",system-ui,sans-serif; --sans:"Jost",system-ui,sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:72px;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);font-weight:400;font-size:17px;line-height:1.6;color:var(--tinta);background:var(--papel);overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
.wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:8px;background:var(--acento);color:var(--tinta);padding:10px 14px;z-index:100}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--acento);outline-offset:3px}
.sec--papel :focus-visible,.sec--papel2 :focus-visible,.sec--greige :focus-visible{outline-color:var(--marca)}

/* topo */
.topo{position:sticky;top:0;z-index:50;background:var(--marca);color:#fff;border-bottom:1px solid rgba(205,165,122,.35)}
.topo__in{display:flex;align-items:center;justify-content:space-between;height:64px}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none}
.marca__img{width:40px;height:40px;border:1px solid rgba(205,165,122,.5)}
.marca__nome{display:flex;flex-direction:column;font-family:var(--serif);font-size:clamp(20px,5.6vw,26px);line-height:1;font-weight:600;letter-spacing:-.03em;text-transform:lowercase;max-width:calc(100vw - 150px)}
.marca__nome small{font:400 9px/1 var(--sans);letter-spacing:.42em;margin-top:4px;opacity:.85}
.nav{display:none}
.nav a{text-decoration:none;font-size:14px;letter-spacing:.08em;text-transform:uppercase;padding:8px 2px;position:relative;color:#EDEBE6}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:var(--acento);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.nav a:hover::after,.nav a.on::after{transform:scaleX(1)}
.nav a.on{color:var(--acento)}
.nav__cta{border:1px solid var(--acento);padding:8px 16px!important;color:var(--acento)!important}
.nav__cta::after{display:none}
.nav__cta:hover{background:var(--acento);color:var(--marca-fd)!important}
.burger{width:44px;height:44px;background:none;border:1px solid rgba(205,165,122,.5);display:grid;place-content:center;gap:6px;cursor:pointer}
.burger span{display:block;width:20px;height:2px;background:var(--acento);transition:transform .3s var(--ease)}
.burger[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}
.burger[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.nav.aberto{display:flex;flex-direction:column;position:absolute;top:64px;left:0;right:0;background:var(--marca-fd);padding:12px 20px 20px;gap:2px;border-bottom:1px solid rgba(205,165,122,.35);animation:desce .3s var(--ease)}
.nav.aberto a{padding:14px 2px;border-bottom:1px solid rgba(255,255,255,.08)}
.nav.aberto .nav__cta{text-align:center;margin-top:10px}
@keyframes desce{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:12px 26px;font:500 15px/1.2 var(--sans);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .25s var(--ease),background .25s,color .25s,box-shadow .25s}
.btn:active{transform:scale(.97)}
.btn--acento{background:var(--acento);color:var(--marca-fd)}
.btn--acento:hover{background:#dbc7a8;transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.2)}
.btn--linha{border-color:var(--acento);color:var(--acento)}
.btn--linha:hover{background:rgba(205,165,122,.12);transform:translateY(-2px)}
.btn--cheio{width:100%}

/* hero */
.hero{--d-foto:1.1s;--a-foto:.15s;--a-h1:.45s;--a-cta:1s;position:relative;background:var(--marca);color:#fff;overflow:hidden}
.hero__in{display:flex;flex-direction:column;padding-bottom:44px}
.hero__foto{order:-1;margin:0 -20px;position:relative;aspect-ratio:4/3.1;overflow:hidden;animation:foto var(--d-foto) var(--ease) var(--a-foto) both}
.hero__foto img{width:100%;height:100%;object-fit:cover;object-position:35% 50%;animation:escala 1.6s var(--ease) var(--a-foto) both}
.hero__foto::after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(transparent,var(--marca))}
.hero__foto figcaption{position:absolute;left:20px;bottom:10px;z-index:1;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--acento)}
@keyframes foto{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes escala{from{scale:1.12}to{scale:1}}
.hero__txt{padding-top:6px;position:relative;z-index:1}
.eyebrow{font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--acento);margin-bottom:14px;font-weight:500}
.eyebrow--esc{color:var(--acento-esc)}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.12;letter-spacing:-.025em}
h1{font-size:clamp(29px,8vw,58px);margin-bottom:18px;line-height:1.14}
h1 em{color:var(--acento);font-style:normal}
.ln{display:block;overflow:hidden;padding:.14em .06em .18em;margin:-.14em -.06em -.18em}
.ln>span{display:block;animation:sobe .95s var(--ease) calc(var(--a-h1) + var(--i,0)*.13s) both}
.ln:nth-child(2)>span{--i:1}.ln:nth-child(3)>span{--i:2}
@keyframes sobe{from{transform:translateY(118%)}to{transform:none}}
.eyebrow--hero{animation:surge .7s var(--ease) calc(var(--a-h1) - .1s) both}
.hero__sub{animation:surge .8s var(--ease) var(--a-cta) both}
.hero__cta{animation:surge .8s var(--ease) calc(var(--a-cta) + .1s) both}
.marca{animation:surge .6s var(--ease) both}
@keyframes surge{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.hero__sub{max-width:520px;color:#DAD8D3;margin-bottom:26px}
.hero__cta{display:flex;flex-direction:column;gap:12px}
.hero__aro{position:absolute;right:-60px;top:70px;width:240px;opacity:.1;fill:none;stroke:var(--acento);stroke-width:.6;pointer-events:none}

/* seções */
.sec{padding:64px 0}
.sec--papel{background:var(--papel)}.sec--papel2{background:var(--papel2)}.sec--greige{background:var(--greige)}
.sec--marca{background:var(--marca-fd);color:#fff}
.sec__cab{margin-bottom:30px;max-width:720px}
h2{font-size:clamp(25px,5.6vw,40px);margin-bottom:12px}
.sec__sub{color:var(--muted)}
.sec__cab--claro .sec__sub,.sec--marca .sec__sub{color:#CDD0D4}

/* filtros e grade */
.filtros{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 14px;margin:0 -20px 14px;padding-inline:20px;scrollbar-width:none}
.filtros::-webkit-scrollbar{display:none}
.filtro{flex:0 0 auto;min-height:44px;padding:8px 20px;border:1px solid var(--marca);background:transparent;color:var(--marca);font:500 14px var(--sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .25s,color .25s}
.filtro:hover{background:rgba(58,56,53,.1)}
.filtro[aria-selected=true]{background:var(--marca);color:#fff}
.filtro small{opacity:.7;margin-left:6px}
.grade{display:grid;grid-template-columns:1fr 1fr;gap:12px;grid-auto-flow:dense}
.card{position:relative;display:block;width:100%;padding:0;border:0;background:var(--marca);cursor:pointer;overflow:hidden;aspect-ratio:3/4;text-align:left;color:#fff;animation:entra .5s var(--ease) both}
.card.larg{grid-column:span 2;aspect-ratio:16/10}
.card img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.card__vel{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;padding:14px;background:linear-gradient(transparent 45%,rgba(16,20,26,.88))}
.card__cat{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--acento)}
.card__tit{font:500 15px/1.25 var(--serif);letter-spacing:-.01em}
.card__mais{position:absolute;top:12px;right:12px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;background:rgba(40,39,37,.8);padding:4px 8px;color:var(--acento)}
.card::after{content:"";position:absolute;inset:10px;border:1px solid var(--acento);opacity:0;transform:scale(1.04);transition:opacity .4s,transform .5s var(--ease);pointer-events:none}
.card:hover img,.card:focus-visible img{transform:scale(1.05)}
.card:hover::after,.card:focus-visible::after{opacity:.8;transform:none}
@keyframes entra{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* vídeos */
.videos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.vid{position:relative;aspect-ratio:9/16;background:#000;overflow:hidden}
.vid video,.vid img{width:100%;height:100%;object-fit:cover}
.vid__btn{position:absolute;inset:0;width:100%;border:0;background:linear-gradient(transparent 50%,rgba(0,0,0,.65));color:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;padding:10px;font:500 12px var(--sans);letter-spacing:.1em;text-transform:uppercase}
.vid__play{width:46px;height:46px;border-radius:50%;border:1px solid var(--acento);display:grid;place-content:center;background:rgba(40,39,37,.7);transition:transform .3s var(--ease)}
.vid__play::before{content:"";border-left:13px solid var(--acento);border-top:8px solid transparent;border-bottom:8px solid transparent;margin-left:4px}
.vid__btn:hover .vid__play{transform:scale(1.1)}
.vid.on .vid__btn{display:none}

/* educativo */
.det__lista{list-style:none;padding:0;display:grid;gap:0;counter-reset:d;border-top:1px solid var(--greige)}
.det__lista li{counter-increment:d;display:grid;grid-template-columns:52px 1fr;gap:6px 14px;padding:22px 0;border-bottom:1px solid var(--greige)}
.det__lista li::before{content:counter(d,decimal-leading-zero);font:500 26px/1 var(--serif);color:var(--acento-esc);grid-row:span 2}
.det__lista h3{font-size:20px}
.det__lista p{color:var(--muted)}

/* linha do tempo */
.linha{list-style:none;padding:0 0 0 30px;position:relative;max-width:760px}
.linha::before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:1px;background:var(--marca);transform-origin:top;transform:scaleY(var(--p,0));transition:transform .3s linear}
.linha li{position:relative;padding:0 0 34px;opacity:.35;transition:opacity .6s var(--ease)}
.linha li.ve{opacity:1}
.linha li::before{content:"";position:absolute;left:-30px;top:8px;width:15px;height:15px;background:var(--greige);border:1px solid var(--marca);border-radius:50%;transition:background .5s}
.linha li.ve::before{background:var(--marca)}
.linha h3{font-size:22px;margin-bottom:4px}
.linha p{color:#38414B;max-width:560px}

/* sobre */
.sobre{display:grid;gap:30px}
.sobre p{margin-bottom:14px;color:var(--muted);max-width:560px}
.link-seta{font-weight:500;letter-spacing:.06em;text-transform:uppercase;font-size:14px;color:var(--marca);text-decoration:none;border-bottom:1px solid var(--acento-esc);padding-bottom:3px}
.sobre__foto{overflow:hidden;max-width:520px}
.sobre__foto img{width:100%;aspect-ratio:1;object-fit:cover}

/* faq */
.faqbox{max-width:820px}
.faq__it{border-bottom:1px solid #C9C5B9}
.faq__q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:left;padding:20px 0;min-height:56px;background:none;border:0;cursor:pointer;font:500 24px/1.15 var(--serif);color:var(--tinta)}
.faq__q::after{content:"+";font:300 30px/1 var(--sans);color:var(--acento-esc);transition:transform .35s var(--ease)}
.faq__q[aria-expanded=true]::after{transform:rotate(45deg)}
.faq__a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--ease)}
.faq__a.on{grid-template-rows:1fr}
.faq__a>div{overflow:hidden}
.faq__a p{padding:0 0 20px;color:var(--muted);max-width:640px}

/* orçamento */
.orc{display:grid;gap:34px}
.orc__txt{color:#CDD0D4;margin-bottom:20px}
.orc__nota{font-size:14px;color:#B0B6BD;margin-top:18px;border-left:2px solid var(--acento);padding-left:12px}
.contatos{margin-top:22px;display:grid;gap:10px}
.contatos div{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid rgba(205,165,122,.35);padding:12px 14px}
.contatos dt{font:600 18px var(--serif)}
.contatos dd a{color:var(--acento);text-decoration:none;font-weight:500;letter-spacing:.04em}
.form{background:var(--papel);color:var(--tinta);padding:24px 20px;display:grid;gap:16px}
.form label,.form legend{font-size:14px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:#38414B}
.campo{display:grid;gap:6px}
.form input[type=text],.form select,.form textarea{width:100%;min-height:48px;padding:11px 12px;border:1px solid #A9A598;background:#fff;font:400 16px var(--sans);color:var(--tinta);border-radius:0}
.form textarea{resize:vertical}
.form input:focus,.form select:focus,.form textarea:focus{outline:3px solid var(--acento);outline-offset:0;border-color:var(--marca)}
.duo{display:grid;gap:16px}
.form__quem{border:0;padding:0;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.form__quem legend{width:100%;margin-bottom:8px;float:left}
.radio{flex:1 1 130px}
.radio input{position:absolute;opacity:0}
.radio span{display:flex;justify-content:center;align-items:center;min-height:48px;border:1px solid var(--marca);font:500 16px var(--sans)!important;text-transform:none!important;letter-spacing:0!important;cursor:pointer;transition:background .2s}
.radio input:checked+span{background:var(--marca);color:#fff}
.radio input:focus-visible+span{outline:3px solid var(--acento);outline-offset:2px}
.check{display:flex;gap:10px;align-items:center;min-height:44px;cursor:pointer}
.check input{width:22px;height:22px;accent-color:var(--marca);flex:0 0 auto}
.check span{text-transform:none;letter-spacing:0;font-size:16px;font-weight:400}
.check--conversa{background:var(--papel2);padding:6px 12px}
.previa{background:#fff;border:1px dashed #A9A598;padding:12px 14px}
.previa__tit{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--acento-esc);margin-bottom:4px;font-weight:500}
.previa__msg{font-size:15px;white-space:pre-line;color:#38414B;word-break:break-word}

/* rodapé */
.rodape{background:var(--marca);color:#E4E3DF;padding:36px 0 96px;border-top:1px solid rgba(205,165,122,.35)}
.rodape__in{display:grid;gap:20px}
.rodape__marca{display:flex;gap:12px;align-items:center}
.rodape__marca img{border:1px solid rgba(205,165,122,.5)}
.rodape__end{font-style:normal;font-size:15px}
.rodape a{color:var(--acento)}
.rodape__demo{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#9AA3AD}

/* flutuante */
.flutua{position:fixed;right:16px;bottom:16px;z-index:40;display:flex;align-items:center;gap:8px;min-height:52px;padding:0 18px;background:var(--acento);color:#282725;border:2px solid #282725;font:600 15px var(--sans);text-decoration:none;border-radius:30px;box-shadow:0 6px 18px rgba(0,0,0,.3);transition:transform .25s var(--ease)}
.flutua:hover{transform:translateY(-3px)}
.flutua span{display:none}
.flutua{width:56px;padding:0;justify-content:center;border-radius:50%;height:56px}

/* lightbox */
.lb{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center}
.lb[hidden]{display:none}
.lb__fundo{position:absolute;inset:0;background:rgba(10,12,16,.98);animation:fade .3s both}
.lb__caixa{position:relative;width:100%;height:100%;display:flex;flex-direction:column;animation:zoom .4s var(--ease) both}
@keyframes fade{from{opacity:0}}
@keyframes zoom{from{opacity:0;transform:scale(.97) translateY(10px)}}
.lb__x{position:absolute;top:8px;right:8px;z-index:3;width:48px;height:48px;border:1px solid rgba(205,165,122,.6);background:rgba(40,39,37,.8);color:#fff;font-size:30px;line-height:1;cursor:pointer}
.lb__palco{position:relative;flex:1 1 auto;min-height:0;display:flex;align-items:center;justify-content:center;padding:56px 0 8px;touch-action:pan-y}
.lb__img{max-width:100%;max-height:100%;object-fit:contain;transition:opacity .25s;user-select:none}
.lb__img.troca{opacity:0}
.lb__seta{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:44px;height:56px;border:0;background:rgba(40,39,37,.7);color:var(--acento);font-size:38px;cursor:pointer}
.lb__seta--e{left:0}.lb__seta--d{right:0}
.lb__seta[disabled]{opacity:.25;cursor:default}
.lb__rodape{flex:0 0 auto;display:grid;gap:10px;padding:10px 16px 16px;background:var(--marca-fd);color:#fff;max-height:48vh;overflow:auto}
.lb__cat{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--acento)}
.lb__rodape h3{font-size:24px}
.lb__txt{font-size:15px;color:#CED2D6}
.lb__cont{font-size:13px;color:var(--acento)}
.lb__thumbs{display:flex;gap:6px;overflow-x:auto}
.lb__thumbs button{flex:0 0 auto;width:56px;height:56px;padding:0;border:2px solid transparent;background:none;cursor:pointer;opacity:.6}
.lb__thumbs button[aria-current=true]{border-color:var(--acento);opacity:1}
.lb__thumbs img{width:100%;height:100%;object-fit:cover}
body.trava{overflow:hidden}

/* revelações */

@media (min-width:640px){
  .hero__cta{flex-direction:row}
  .duo{grid-template-columns:1fr 1fr}
  .flutua{width:auto;border-radius:30px;padding:0 20px}
  .flutua span{display:inline}
  .grade{grid-template-columns:repeat(3,1fr);gap:14px}
  .card.larg{grid-column:span 2;aspect-ratio:auto}
  .form{padding:30px}
  .videos{gap:16px}
}
@media (min-width:900px){
  body{font-size:18px}
  .wrap{padding:0 40px}
  .topo__in{height:72px}
  .burger{display:none}
  .nav{display:flex;gap:26px;align-items:center}
  html{scroll-padding-top:84px}
  .hero__in{display:grid;grid-template-columns:1.02fr 1fr;align-items:center;gap:56px;padding-block:72px}
  .hero__foto{order:0;margin:0;aspect-ratio:4/4.3;clip-path:none}
  .hero__foto img{object-position:30% 50%}
  .hero__foto::after{display:none}
  .hero__foto figcaption{left:14px;bottom:12px;background:rgba(40,39,37,.8);padding:4px 10px}
  h1{font-size:clamp(36px,3.4vw,54px)}
  .hero__aro{width:420px;right:auto;left:38%;top:-120px}
  .sec{padding:104px 0}
  .filtros{margin:0 0 20px;padding-inline:0;flex-wrap:wrap;overflow:visible}
  .grade{grid-template-columns:repeat(4,1fr);gap:16px}
  .card.larg{grid-column:span 2}
  .card__tit{font-size:17px}
  .det{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
  .sobre{grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}
  .orc{grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}
  .rodape__in{grid-template-columns:1fr 1.4fr auto;align-items:center}
  .rodape{padding-bottom:60px}
  .lb__caixa{flex-direction:row;max-width:1280px;margin:auto;height:92vh}
  .lb__palco{flex:1 1 auto;padding:16px 56px}
  .lb__rodape{flex:0 0 340px;max-height:none;padding:56px 22px 22px;align-content:start}
  .lb__rodape .btn{margin-top:6px}
  .lb__seta{background:transparent}
}
@media (min-width:1500px){
  .wrap{max-width:1360px}
  .grade{grid-template-columns:repeat(5,1fr)}
}

/* ===== v2: acabamento, atalhos, reveals, lightbox ===== */
html{-webkit-tap-highlight-color:transparent}
.card,.btn,.filtro,.faq__q,.vid__btn,.lb__seta,.lb__x,.lb__img,.lb__thumbs button,.flutua,.burger,.radio span,.atalhos a{-webkit-user-select:none;user-select:none}
.card img,.lb__img,.lb__thumbs img,.vid img{-webkit-user-drag:none;user-drag:none}

/* atalhos por ambiente */
.atalhos{background:var(--marca-fd);color:#fff;border-bottom:1px solid rgba(205,165,122,.25)}
.atalhos__in{display:flex;align-items:center;gap:14px;padding-top:12px;padding-bottom:12px;overflow-x:auto;scrollbar-width:none}
.atalhos__in::-webkit-scrollbar{display:none}
.atalhos__t{flex:0 0 auto;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--acento)}
.atalhos__l{display:flex;gap:8px}
.atalhos a{flex:0 0 auto;display:inline-flex;align-items:center;min-height:40px;padding:6px 16px;border:1px solid rgba(205,165,122,.45);text-decoration:none;font-size:14px;letter-spacing:.06em;color:#EDEBE6;transition:background .25s,color .25s,transform .25s var(--ease)}
.atalhos a:hover{background:var(--acento);color:var(--marca-fd);transform:translateY(-2px)}

/* grade: transição de filtro */
.grade{transition:opacity .18s ease,transform .18s ease}
.grade.sai{opacity:0;transform:translateY(8px)}
.card__ico{position:absolute;right:12px;bottom:12px;width:34px;height:34px;border:1px solid var(--acento);border-radius:50%;display:grid;place-content:center;background:rgba(40,39,37,.7);transition:transform .45s var(--ease),background .3s}
.card__ico::before,.card__ico::after{content:"";grid-area:1/1;width:12px;height:1.5px;background:var(--acento);transition:background .3s}
.card__ico::after{transform:rotate(90deg)}
.card:hover .card__ico,.card:focus-visible .card__ico{transform:rotate(90deg) scale(1.08);background:var(--acento)}
.card:hover .card__ico::before,.card:hover .card__ico::after,.card:focus-visible .card__ico::before,.card:focus-visible .card__ico::after{background:var(--marca-fd)}
.card__vel{padding-right:56px}
.card:active img{transform:scale(1.02)}

/* reveals variados, estado oculto só com JS ativo */
.rev.pre{opacity:0;will-change:transform,opacity;transition:opacity .75s var(--ease) var(--rd,0s),transform .85s var(--ease) var(--rd,0s),clip-path .95s var(--ease) var(--rd,0s)}
.rev-up.pre{transform:translateY(22px)}
.rev-left.pre{transform:translateX(-22px)}
.rev-scale.pre{transform:scale(.97) translateY(14px)}
.rev-mask.pre{transform:none;clip-path:inset(0 0 100% 0)}
.rev.pre.ve{opacity:1;transform:none;clip-path:inset(0 0 0 0)}
.rev.pre.ve{will-change:auto}

/* forms */
.campo.preenchido>label:first-child{color:var(--marca)}
.campo.preenchido input[type=text],.campo.preenchido select,.campo.preenchido textarea{border-color:var(--marca);box-shadow:inset 3px 0 0 var(--acento-esc)}
.radio input:checked+span::before{content:"✓";margin-right:8px;color:var(--acento)}
.radio span{transition:background .25s,color .25s,transform .2s}
.radio span:hover{background:rgba(58,56,53,.08)}
.radio input:checked+span:hover{background:var(--marca)}
.check span{transition:color .2s}
.check input:checked+span{font-weight:500}
.status{min-height:1.4em;font-size:14px;color:var(--marca);text-align:center}

/* lightbox v2 */
.lb__img{transition:opacity .28s ease,transform .38s var(--ease)}
.lb__img.troca-d{opacity:0;transform:translateX(-24px)}
.lb__img.troca-e{opacity:0;transform:translateX(24px)}
.lb__img.entra-d{opacity:0;transform:translateX(24px);transition:none}
.lb__img.entra-e{opacity:0;transform:translateX(-24px);transition:none}
.lb__rodape{max-height:none;overflow:visible;gap:8px}
.lb__txt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lb__meta{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.lb__thumbs button{width:48px;height:48px}
body.trava .flutua{visibility:hidden}
@media (max-height:700px){.lb__txt{display:none}.lb__rodape h3{font-size:21px}.lb__palco{padding-top:52px}}
@media (min-width:900px){.lb__txt{display:block;-webkit-line-clamp:unset}.lb__thumbs button{width:56px;height:56px}}

/* desktop: sequência marca > headline > foto > CTAs */
@media (max-width:640px){.hero{--d-foto:.8s;--a-foto:.1s;--a-h1:.35s;--a-cta:.8s}.ln>span{animation-duration:.75s}.rev.pre{transition-duration:.5s,.55s,.6s}}
@media (min-width:900px){.hero{--a-h1:.3s;--a-foto:.85s;--d-foto:1.2s;--a-cta:1.45s}.hero__foto{will-change:transform}.hero__foto img{translate:0 var(--py,0px);height:calc(100% + 40px);margin-top:-40px}}
@media (min-width:900px){.det .sec__cab{position:sticky;top:110px;align-self:start}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .rev.pre{opacity:1;transform:none;clip-path:none}
  .linha li{opacity:1}
  .linha::before{transform:none}
}

@media (max-width:370px){.marca__img{width:36px;height:36px}.wrap{padding:0 16px}.hero__foto{margin:0 -16px}.hero__foto figcaption{left:16px}.filtros{margin-inline:-16px;padding-inline:16px}}

.marca__img{background:#EDE9DE;border-radius:50%}
.btn--copia{margin-top:8px}
.previa__ajuda{font-size:13px;color:var(--muted);margin-top:6px}
.btn--escuro{background:transparent;border-color:var(--marca);color:var(--marca)}
.btn--escuro:hover{background:rgba(58,56,53,.08);transform:translateY(-2px)}
.orc>*{min-width:0}
.contatos div{flex-wrap:wrap}
.contatos dd a{overflow-wrap:anywhere}
