/* Líder Identidade — sistema visual (v2)
   Tinta azul-petróleo (herdeira do turquesa da marca original) sobre papel frio;
   amarelo-ipê como única nota saturada, reservada à ação. Display: Big Shoulders 800. Texto: Public Sans. */

@font-face{font-family:"Big Shoulders";font-weight:800;font-style:normal;font-display:swap;src:url(../fonts/big-shoulders-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/public-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-weight:400;font-style:italic;font-display:swap;src:url(../fonts/public-sans-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-weight:600;font-style:normal;font-display:swap;src:url(../fonts/public-sans-latin-600-normal.woff2) format("woff2")}

:root{
  --bg:#f4f5f2; --surface:#e6e9e5; --surface-2:#d9ded9;
  --ink:#0c2b33; --muted:#475a5f; --accent:#f2b705; --accent-ink:#0c2b33;
  --margin:clamp(1rem,3.2vw,2.5rem);
  --gap-section:clamp(5rem,12vw,10rem);
  --step-small:clamp(.875rem,.85rem + .1vw,.9375rem);
  --step-body:clamp(1.0625rem,1rem + .25vw,1.1875rem);
  --step-lead:clamp(1.25rem,1.1rem + .7vw,1.625rem);
  --step-head:clamp(2.25rem,1.3rem + 3.6vw,4.25rem);
  --step-display:clamp(3.25rem,1rem + 8.6vw,9rem);
  --display:"Big Shoulders","Arial Narrow",Impact,sans-serif;
  --text:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --ease:cubic-bezier(.16,1,.3,1);
  --ease-out-fast:cubic-bezier(.3,0,.2,1);
  --danger:#9b1c1c;
  --danger-bg:#fdeaea;
  accent-color:var(--ink);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:5.5rem;scrollbar-color:var(--ink) var(--surface)}
input,textarea{caret-color:var(--ink)}
.facts dt,table{font-variant-numeric:tabular-nums}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--bg);color:var(--ink);font:400 var(--step-body)/1.55 var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%;height:auto}
h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd{margin:0}
ul[class],ol[class]{list-style:none;padding:0}
a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:.07em}
a:hover{text-decoration-thickness:.14em}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
::selection{background:var(--accent);color:var(--ink)}
main:focus{outline:none}

.frame{width:100%;max-width:92rem;margin-inline:auto;padding-inline:var(--margin)}
.skip{position:absolute;left:-999px;top:0}
.skip:focus{left:var(--margin);top:.5rem;z-index:100;background:var(--accent);padding:.6rem 1rem;font-weight:600}

/* Tipografia */
.display,h1,h2{font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:-.005em;line-height:.9}
h1{font-size:var(--step-display)}
h2{font-size:var(--step-head);max-width:24ch}
main p{max-width:68ch}
h3{font-family:var(--text);font-weight:600;font-size:var(--step-lead);line-height:1.2;letter-spacing:-.01em}
.lead{font-size:var(--step-lead);line-height:1.38;max-width:38ch}
.small,small{font-size:var(--step-small)}
.muted{color:var(--muted)}
.prose p,.prose ul,.prose ol{max-width:68ch}
.prose > * + *{margin-top:1.1em}
.prose h2{font-size:var(--step-head);margin-top:1.6em;max-width:24ch}
.prose h3{margin-top:1.8em}
.prose li + li{margin-top:.4em}
.prose strong{font-weight:600}
.prose a{font-weight:600}

/* Botões — cantos retos, decidido uma vez */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:3rem;padding:.8rem 1.4rem;background:var(--accent);color:var(--accent-ink);font:600 1rem/1.25 var(--text);text-decoration:none;border:2px solid var(--accent);cursor:pointer;transition:transform .15s var(--ease),background-color .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease)}
.btn[aria-busy=true]{cursor:progress;opacity:.75}
.btn:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.btn:active{transform:translateY(1px) scale(.98)}
.btn-sm{min-height:2.75rem;padding:.55rem 1rem;font-size:.9375rem}
.btn-ink{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.btn-ink:hover{background:var(--bg);color:var(--ink);border-color:var(--ink)}
.btn-line{background:transparent;border-color:var(--ink);color:var(--ink)}
.btn-line:hover{background:var(--ink);color:var(--bg)}
.link-arrow{font-weight:600;display:inline-flex;align-items:center;min-height:2.75rem;text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.28em;transition:text-decoration-color .2s var(--ease),text-underline-offset .2s var(--ease)}
.link-arrow:hover{text-decoration-thickness:.16em;text-underline-offset:.2em;text-decoration-color:var(--accent)}
.field-yellow .link-arrow:hover{text-decoration-color:var(--ink)}
.actions{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;align-items:center}

/* Cabeçalho */
.top{position:sticky;top:0;z-index:50;background:var(--bg)}
.top.is-scrolled{background:var(--surface)}
.top-bar{display:flex;align-items:center;gap:1.5rem;min-height:4.5rem}
.brand{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none;font:800 1.35rem/1 var(--display);text-transform:uppercase;letter-spacing:.01em;white-space:nowrap}
.brand-inv .mark rect{fill:var(--bg)}
.brand-inv .mark path:last-child{fill:var(--ink)}
.nav{margin-left:auto}
.nav ul{display:flex;gap:clamp(.8rem,1.6vw,1.6rem);list-style:none;margin:0;padding:0}
.nav a{text-decoration:none;font-size:.9375rem;font-weight:600;padding:.6rem 0;display:inline-block}
.nav a:hover,.nav a[aria-current=page]{text-decoration:underline;text-decoration-thickness:.12em}
.nav-toggle,.nav-cta-mobile{display:none}
@media (max-width:1060px){
  .top-bar{gap:.75rem}
  .top-bar > .btn{display:none}
  .nav-toggle{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1rem;background:var(--ink);color:var(--bg);border:0;font:600 1rem var(--text);cursor:pointer}
  .nav ul{position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;background:var(--surface);padding:.5rem var(--margin) 1.25rem;display:none}
  .nav ul.open{display:flex}
  .nav a{font-size:1.125rem;padding:.75rem 0;width:100%}
  .nav-cta-mobile{display:block}
}

.crumbs{padding-top:1.25rem;font-size:var(--step-small)}
.crumbs ol{display:flex;flex-wrap:wrap;gap:.25rem .5rem;list-style:none;padding:0;margin:0}
.crumbs li+li::before{content:"/";margin-right:.5rem;color:var(--muted)}
.crumbs a{color:var(--muted)}

/* Seções */
.section{padding-block:var(--gap-section)}
.section-tight{padding-block:clamp(3.5rem,8vw,6rem)}
.field-yellow{background:var(--accent);color:var(--ink)}
.field-ink{background:var(--ink);color:var(--bg)}
.field-ink a{color:var(--bg)}
.field-ink .muted{color:#b7cdd1}
.field-ink :focus-visible{outline-color:var(--accent)}
.field-surface{background:var(--surface)}

/* HERO da home — a frase é o layout */
.hero{min-height:calc(100svh - 4.5rem);display:flex;flex-direction:column;justify-content:center;padding-block:clamp(2.5rem,6vw,4rem)}
.hero h1{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:.18em;row-gap:.02em}
.hero h1 .w{display:inline-block}
.slot{display:inline-block;height:.86em;width:2.5em;align-self:center;position:relative;overflow:hidden;background:#fff;text-transform:none;letter-spacing:0;line-height:1.35}
.slot .ui-serp{position:absolute;left:0;top:0;width:calc(100% / .86);transform:scale(.86);transform-origin:0 0}
.hero-sub{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);margin-top:clamp(2rem,4vw,3.25rem);align-items:start}
.hero-sub .lead{grid-column:1 / span 6}
.hero-sub .actions{grid-column:8 / span 5;justify-content:flex-end}
.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem 2rem;margin-top:clamp(2.5rem,5vw,4rem);background:var(--surface);padding:1.25rem 1.5rem}
.facts dt{font:600 var(--step-lead)/1.2 var(--text)}
.facts dd{font-size:var(--step-small);margin-top:.35rem;color:var(--muted)}
@media (max-width:820px){
  .hero{min-height:auto}
  .hero h1{display:block;font-size:clamp(3rem,15.5vw,6rem)}
  .hero h1 .w{display:block}
  .slot{display:block;width:100%;height:auto;margin:.12em 0 .18em}
  .slot .ui-serp{position:static;transform:none!important;width:auto}
  .hero-sub .lead,.hero-sub .actions{grid-column:1 / -1}
  .hero-sub .actions{justify-content:flex-start;margin-top:1.5rem}
  .facts{grid-template-columns:1fr;padding:1rem 1.25rem}
}

/* Afirmação com prova ao lado */
.claim{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);row-gap:2.5rem;align-items:start}
.claim > .claim-text{grid-column:1 / span 6}
.claim > .claim-proof{grid-column:8 / span 5}
.claim-text > * + *{margin-top:1.25rem}
.statement{font-size:var(--step-lead);line-height:1.3;max-width:34ch;font-weight:400}
@media (max-width:900px){.claim > .claim-text,.claim > .claim-proof{grid-column:1 / -1}}

/* Serviços — linhas presas a um eixo, com fragmento de interface na margem */
.svc-head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);margin-bottom:clamp(3rem,7vw,6rem)}
.svc-head h2{grid-column:5 / span 8}
.svc-head p{grid-column:5 / span 6;margin-top:1.25rem}
.svc-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);align-items:start}
.svc-row + .svc-row{margin-top:clamp(4.5rem,8vw,7.5rem)}
.svc-row .svc-body{grid-column:5 / span 4}
.svc-row .svc-pic{grid-column:10 / span 3}
.svc-row:nth-child(3n+2) .svc-pic{grid-column:9 / span 4}
.svc-row:nth-child(3n) .svc-pic{grid-column:10 / span 2}
.svc-body h3{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:var(--step-head);line-height:.92;letter-spacing:0}
.svc-body h3 a{text-decoration:none}
.svc-body h3 a:hover{text-decoration:underline;text-decoration-thickness:.06em}
.svc-body dl{margin-top:1.25rem;display:grid;gap:.9rem}
.svc-body dt{font-weight:600}
.svc-body dd{margin-top:.1rem}
.svc-body .actions{margin-top:1.5rem}
@media (max-width:900px){
  .svc-head h2,.svc-head p{grid-column:1 / -1}
  .svc-row .svc-body,.svc-row .svc-pic,.svc-row:nth-child(n) .svc-pic{grid-column:1 / -1}
  .svc-row .svc-pic{margin-top:2rem;max-width:26rem}
  .svc-row:nth-child(2n) .svc-pic{margin-left:auto;max-width:20rem}
}

/* Fragmentos de interface (data-ui): ilustram o tipo de entrega; não são projetos de clientes */
[data-ui]{font-family:var(--text);color:#1b1b1b;background:#fff;line-height:1.35;font-size:14px}
.ui-frame{border:1px solid #d6d9d6} /* taste-skill-ignore: data-ui */
.ui-cap{font-size:var(--step-small);color:var(--muted);margin-top:.6rem}
.field-ink .ui-cap{color:#b7cdd1}
.ui-browser{display:flex;gap:6px;align-items:center;padding:8px 10px;background:#eef0ee;border-bottom:1px solid #d6d9d6} /* taste-skill-ignore: data-ui */
.ui-browser i{width:8px;height:8px;border-radius:50%;background:#c4c9c5;display:block}
.ui-browser span{margin-left:8px;flex:1;background:#fff;border:1px solid #d6d9d6;font-size:12px;padding:2px 8px;color:#55605a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} /* taste-skill-ignore: data-ui */
.ui-serp,.ui-serp .t,.ui-serp .d{display:block}
.ui-serp{padding:14px 16px;background:#fff;font-family:var(--text);text-transform:none;letter-spacing:0}
.ui-serp .u{display:flex;gap:8px;align-items:center;font-size:12px;color:#202124}
.ui-serp .u b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#e8ecea;font-size:12px}
.ui-serp .u small{display:block;color:#4d5156;font-size:12px}
.ui-serp .t{color:#1a0dab;font-size:19px;line-height:1.3;margin-top:6px;overflow-wrap:anywhere;transition:opacity .25s var(--ease-out-fast),background-color .6s var(--ease)}
.ui-serp .t.flash{background-color:#fff3c4}
.ui-serp .swap{opacity:0}
.ui-serp .d{color:#474747;font-size:13.5px;line-height:1.5;margin-top:3px;overflow-wrap:anywhere;transition:opacity .25s var(--ease-out-fast)}
.ui-page{padding:16px}
.ui-page .nav-ui{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#4d5853}
.ui-page .nav-ui strong{color:#1b1b1b;font-size:12px}
.ui-page .h{font-weight:700;font-size:20px;line-height:1.3;margin:18px 0 8px;color:#0c2b33}
.ui-page p{font-size:12px;color:#4b4b4b}
.ui-page .cta-ui{display:inline-block;margin-top:12px;background:#0c2b33;color:#fff;font-size:12px;padding:7px 10px}
.ui-blocks{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-top:16px}
.ui-blocks span{height:44px;background:#eef0ee;font-size:12px;padding:6px;color:#4d5853}
.ui-form{display:grid;gap:6px;margin-top:12px}
.ui-form span{border:1px solid #d6d9d6;padding:6px 8px;font-size:12px;color:#4d5853} /* taste-skill-ignore: data-ui */
.ui-form em{font-style:normal;background:#f2b705;color:#0c2b33;text-align:center;padding:7px;font-size:12px;font-weight:700}
.ui-store{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.ui-store div{font-size:12px}
.ui-store div span{display:block;aspect-ratio:1;background:#e5e9e6;margin-bottom:5px}
.ui-store div:nth-child(2) span{background:#d9e2dc}
.ui-store div:nth-child(3) span{background:#eceade}
.ui-store b{display:block;font-size:12px}
.ui-chat{padding:12px;background:#ecebe5;display:grid;gap:8px}
.ui-chat p{max-width:85%;padding:8px 10px;font-size:12.5px;background:#fff}
.ui-chat p.me{justify-self:end;background:#d9f2cf}
.ui-chat p small{display:block;color:#4f4f4f;font-size:12px;text-align:right;margin-top:2px}
.ui-chat .opts{display:flex;flex-wrap:wrap;gap:6px}
.ui-chat .opts span{background:#fff;border:1px solid #c9d3cc;font-size:12px;padding:5px 8px;color:#0b5a3a} /* taste-skill-ignore: data-ui */

/* Ferramenta: prévia do resultado no Google */
.sim{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);row-gap:2.5rem;align-items:start}
.sim-head{grid-column:1 / span 5}
.sim-head > * + *{margin-top:1.25rem}
.sim-form{grid-column:1 / span 5;display:grid;gap:1rem}
.sim-out{grid-column:7 / span 6;grid-row:1 / span 2}
.sim-out .ui-serp{padding:22px 24px}
.meter{display:flex;justify-content:space-between;gap:1rem;font-size:var(--step-small);margin-top:.75rem}
.meter [data-state=long]{font-weight:600;text-decoration:underline}
.sim-note{margin-top:1rem;font-size:var(--step-small)}
@media (max-width:900px){.sim-head,.sim-form,.sim-out{grid-column:1 / -1;grid-row:auto;position:static}}

/* Formulários */
.field{display:grid;gap:.4rem}
.field label{font-weight:600;font-size:1rem}
.field .hint{font-size:var(--step-small);color:var(--muted)}
.field-yellow .field .hint{color:#3b3410}
input,select,textarea{font:inherit;font-size:1rem;color:var(--ink);background:#fff;border:2px solid var(--ink);border-radius:0;padding:.75rem .85rem;width:100%;min-height:3rem}
textarea{min-height:7.5rem;resize:vertical}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--ink);outline-offset:2px;background:#fff8e1}
[aria-invalid=true]{border-color:var(--danger);background:#fff6f6}
.err{color:var(--danger);font-size:var(--step-small);font-weight:600}
.form-status{padding:1rem 1.25rem;font-weight:600}
.form-status[data-kind=ok]{background:var(--ink);color:var(--bg)}
.form-status[data-kind=error]{background:var(--danger-bg);color:#7a1515}
.req{color:var(--danger)}

/* Tabela comparativa */
.table-wrap{overflow-x:auto;margin-top:2.5rem}
table{border-collapse:collapse;width:100%;min-width:40rem;font-size:1rem}
th,td{text-align:left;vertical-align:top;padding:1rem 1rem 1rem 0;border-bottom:1px solid rgba(12,43,51,.22)}
thead th{font-weight:600;font-size:var(--step-body);border-bottom:3px solid var(--ink)}
tbody th{font-weight:600;width:28%}

/* Processo — um verbo por vez */
.verb{padding-block:clamp(3rem,6vw,5rem)}
.verb-in{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);align-items:center}
.verb:nth-child(odd){background:var(--surface)}
.verb:nth-child(3){background:var(--accent)}
.verb-word{grid-column:1 / span 7;font:800 var(--step-display)/.86 var(--display);text-transform:uppercase;letter-spacing:-.005em;overflow-wrap:anywhere}
.verb-body{grid-column:8 / span 5;padding-top:.6rem}
.verb-body > * + *{margin-top:1rem}
.verb-body h3{font-size:var(--step-lead)}
@media (max-width:820px){
  .verb{min-height:auto}
  .verb-word,.verb-body{grid-column:1 / -1;position:static}
  .verb-body{margin-top:1.25rem}
}

video.loop-video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:var(--surface)}

/* Lista do que o cliente recebe / fornece */
.two-lists{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);row-gap:3rem}
.two-lists > div{grid-column:span 6}
.two-lists ul{margin-top:1.25rem;padding-left:1.2em}
.two-lists li + li{margin-top:.6rem}
@media (max-width:820px){.two-lists > div{grid-column:1 / -1}}

/* Sobre — retrato como capitular */
.about{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);row-gap:2rem}
.about-facts{grid-column:1 / span 2;display:grid;gap:1.25rem;align-content:start;font-size:var(--step-small)}
.about-facts dt{font-weight:600}
.about-text{grid-column:3 / span 10}
.about-text h2{margin-bottom:2rem}
.about-text p{font-size:var(--step-lead);line-height:1.35;max-width:44ch}
.about-text p + p{margin-top:1.1em;color:var(--muted)}
.portrait{float:left;width:4.6em;height:4.6em;margin:.1em .75em .25em 0;border-radius:50%;overflow:hidden;shape-outside:circle(50%);shape-margin:.5em;background:var(--surface)}
.portrait img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}
@media (max-width:820px){
  .about-facts,.about-text{grid-column:1 / -1}
  .about-facts{order:2;grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* FAQ — perguntas grandes, respostas abertas ao lado */
.faq{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);row-gap:clamp(3rem,5.5vw,5rem)}
.faq h2{grid-column:1 / span 6;color:var(--muted)}
.faq .q{grid-column:1 / span 6;font-weight:600;font-size:var(--step-lead);line-height:1.2;max-width:28ch}
.faq .a{grid-column:8 / span 5;max-width:44ch}
.faq .a > * + *{margin-top:.8rem}
@media (max-width:820px){.faq h2,.faq .q,.faq .a{grid-column:1 / -1}.faq .a{margin-top:-2rem}}

/* Chamada final */
.closing{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);row-gap:2rem;align-items:end}
.closing h2{grid-column:1 / span 7;font-size:var(--step-display);max-width:12ch}
.closing .closing-body{grid-column:9 / span 4}
.closing-body > * + *{margin-top:1.25rem}
.closing ol{padding-left:1.2em}
.closing ol li + li{margin-top:.5rem}
@media (max-width:900px){.closing h2,.closing .closing-body{grid-column:1 / -1}}

/* Cabeçalho de páginas internas */
.page-head{padding-block:clamp(2.5rem,6vw,5rem) clamp(3rem,7vw,6rem)}
.page-head h1{font-size:var(--step-display);max-width:16ch}
.page-head .page-sub{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);row-gap:1.5rem;margin-top:clamp(1.75rem,3vw,2.5rem)}
.page-head .page-sub .lead{grid-column:1 / span 7}
.page-head .page-sub .actions{grid-column:9 / span 4;justify-content:flex-end;align-self:end}
@media (max-width:900px){.page-head .page-sub .lead,.page-head .page-sub .actions{grid-column:1 / -1;justify-content:flex-start}}

.split{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);row-gap:2.5rem}
.split > .main{grid-column:1 / span 7}
.split > .aside{grid-column:9 / span 4}
.aside-box{position:sticky;top:6rem;background:var(--surface);padding:1.5rem}
.aside-box > * + *{margin-top:1rem}
.aside-box h2{font-size:var(--step-lead);font-family:var(--text);text-transform:none;line-height:1.2}
.aside-box ul{padding-left:1.1em}
@media (max-width:900px){.split > .main,.split > .aside{grid-column:1 / -1}.aside-box{position:static}}

/* Resposta direta (primeiro bloco das páginas de serviço) */
.answer{background:var(--surface);padding:1.5rem 1.75rem}
.answer h2{font-family:var(--text);text-transform:none;font-weight:600;font-size:var(--step-lead);line-height:1.2;margin-top:0;max-width:none}
.answer p{margin-top:.75rem}
.prose .answer + *{margin-top:2rem}
.fact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 2.5rem;margin-top:2.5rem}
.fact-list dt{font-weight:600}
.fact-list dd{margin-top:.25rem;max-width:48ch}
@media (max-width:820px){.fact-list{grid-template-columns:1fr}}

/* Portfólio */
.work-list{display:grid;gap:clamp(4rem,8vw,7rem)}
.work{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);row-gap:2rem;align-items:start}
.work-pic{grid-column:1 / span 7}
.work-info{grid-column:9 / span 4}
.work:nth-child(even) .work-pic{grid-column:6 / span 7;order:2}
.work:nth-child(even) .work-info{grid-column:1 / span 4;order:1}
.work-info h2{font-size:var(--step-head)}
.work-info dl{margin-top:1.25rem;display:grid;gap:.8rem}
.work-info dt{font-weight:600}
.tag{display:inline-block;background:var(--accent);padding:.15rem .5rem;font-weight:600;font-size:var(--step-small);margin-bottom:.9rem}
@media (max-width:900px){.work-pic,.work-info,.work:nth-child(even) .work-pic,.work:nth-child(even) .work-info{grid-column:1 / -1;order:0}}

/* Blog */
.post-list{display:grid;gap:clamp(3rem,6vw,5rem)}
.post-item{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);row-gap:1rem}
.post-item h2{grid-column:1 / span 7;font-size:var(--step-head);max-width:none}
.post-item h2 a{text-decoration:none}
.post-item h2 a:hover{text-decoration:underline;text-decoration-thickness:.05em}
.post-item p{grid-column:9 / span 4}
@media (max-width:900px){.post-item h2,.post-item p{grid-column:1 / -1}}
.article-head h1{font-size:var(--step-display);max-width:20ch}
.article-meta{margin-top:1.5rem;font-size:var(--step-small);color:var(--muted)}
.callout{background:var(--accent);padding:1.5rem;max-width:68ch}
.callout > * + *{margin-top:.75rem}

/* Rodapé */
.foot{padding-block:clamp(3rem,6vw,5rem) 2rem;margin-top:0}
.foot-notes{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,2rem);row-gap:1rem;font-size:var(--step-small)}
.foot-notes p:nth-child(1){grid-column:1 / span 3}
.foot-notes p:nth-child(2){grid-column:4 / span 4}
.foot-notes p:nth-child(3){grid-column:8 / span 3}
.foot-notes p:nth-child(4){grid-column:11 / span 2;text-align:right}
.foot-line{margin-top:clamp(5rem,14vw,12rem)}
.foot-cta{font:800 var(--step-display)/.9 var(--display);text-transform:uppercase;text-decoration:none;display:inline-block;max-width:14ch}
.foot-cta:hover{color:var(--accent);text-decoration:none}
.foot-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem 2rem;margin-top:clamp(2.5rem,5vw,4rem);font-size:var(--step-small)}
.foot-meta ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.25rem 1.25rem}
.foot-meta ul a{display:inline-block;padding:.35rem 0}
.foot-meta p:last-child{text-align:right}
@media (max-width:820px){
  .foot-notes p:nth-child(n){grid-column:1 / -1;text-align:left}
  .foot-meta{grid-template-columns:1fr}
  .foot-meta p:last-child{text-align:left}
}
.preview-flag{position:fixed;left:0;right:0;bottom:0;z-index:60;background:#7a1515;color:#fff;font-size:.875rem;padding:.5rem var(--margin);text-align:center}

/* 404 */
.nf h1{font-size:var(--step-display)}

/* Movimento
   Momento autoral: o resultado de busca dentro do título é revelado e passa por exemplos reais de segmentos.
   Apoio: entrada das listas (serviços, etapas, projetos), o verbo de cada etapa revelado por máscara,
   feedback em controles. Conteúdo é visível sem JS. */
@keyframes menu-in{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
@media (prefers-reduced-motion:no-preference){
  .nav ul.open{animation:menu-in .28s var(--ease)}
  .js .verb .verb-word{clip-path:inset(0 100% 0 0);transition:clip-path .8s var(--ease)}
  .js .verb.in .verb-word{clip-path:inset(0 0 0 0)}
  .js [data-reveal] > *{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
  .js [data-reveal].in > *{opacity:1;transform:none}
  .js [data-reveal].in > *:nth-child(2){transition-delay:.08s}
  .js [data-reveal].in > *:nth-child(3){transition-delay:.16s}
  .js [data-reveal].in > *:nth-child(4){transition-delay:.24s}
  .js [data-reveal].in > *:nth-child(5){transition-delay:.32s}
  .js .slot.shutter{clip-path:inset(0 100% 0 0)}
  .js .slot.shutter .ui-serp{transform:scale(1.12)}
  .js .slot.shutter.open{clip-path:inset(0 0 0 0);transition:clip-path 1.1s var(--ease)}
  .js .slot.shutter.open .ui-serp{transform:scale(.86);transition:transform 1.3s var(--ease)}
  @media (max-width:820px){.js .slot.shutter .ui-serp,.js .slot.shutter.open .ui-serp{transform:none}}
  .svc-pic [data-ui]{transition:transform .5s var(--ease)}
  .svc-row:hover .svc-pic [data-ui]{transform:translateY(-6px)}
}
@media (prefers-reduced-motion:reduce){
  .ui-serp .t,.ui-serp .d{transition:opacity .2s linear}
}

@media print{.top,.foot,.preview-flag{display:none}body{background:#fff}}

/* Tabela vira lista no celular */
@media (max-width:700px){
  table{min-width:0}
  thead{position:absolute;left:-9999px}
  tbody tr{display:block;padding:1rem 0;border-bottom:3px solid var(--ink)}
  tbody th,tbody td{display:block;border:0;padding:.2rem 0;width:auto}
  tbody th{font-size:var(--step-lead);padding-bottom:.5rem}
  tbody td::before{content:attr(data-label) ": ";font-weight:600}
}

/* v3 — telas de projeto, listas compactas e perguntas em acordeão */
.shot-frame{background:#fff;border:1px solid #d6d9d6;box-shadow:0 1px 0 rgba(12,43,51,.04),0 24px 48px -24px rgba(12,43,51,.35);overflow:hidden}
.shot-frame .ui-browser{font-family:var(--text);line-height:1.35}
.shot-frame img{display:block;width:100%;height:auto}
.svc-pic .shot-frame,.claim-proof .shot-frame{transition:transform .5s var(--ease)}
@media (prefers-reduced-motion:no-preference){.svc-row:hover .svc-pic .shot-frame,.work:hover .shot-frame{transform:translateY(-6px)}.work .shot-frame{transition:transform .5s var(--ease)}}
.svc-row .svc-pic{grid-column:9 / span 4}
.svc-row:nth-child(3n+2) .svc-pic{grid-column:9 / span 4}
.svc-row:nth-child(3n) .svc-pic{grid-column:9 / span 4}
.svc-line{margin-top:1rem;font-size:var(--step-lead);line-height:1.35;max-width:32ch}
.svc-for{margin-top:.9rem;font-size:var(--step-small);color:var(--muted)}
.svc-for span{display:inline-block;background:var(--surface);color:var(--ink);font-weight:600;padding:.1rem .45rem;margin-right:.35rem}
@media (max-width:900px){.svc-row .svc-pic,.svc-row:nth-child(n) .svc-pic{grid-column:1 / -1;max-width:34rem;margin-left:0}}

.prose ul.incl{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;max-width:none}
.prose ul.incl li{margin:0;background:var(--surface);padding:1rem 1.1rem;border-left:4px solid var(--accent);font-size:var(--step-small);color:var(--muted);line-height:1.45}
.prose ul.incl strong{display:block;color:var(--ink);font-size:1rem;margin-bottom:.15rem}
.prose ul.chips-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.prose ul.chips-list li{margin:0;border:2px solid var(--ink);padding:.35rem .8rem;font-weight:600;font-size:var(--step-small)}
.prose ol.steps{list-style:none;padding:0;counter-reset:st;display:grid;gap:.25rem}
.prose ol.steps li{counter-increment:st;display:grid;grid-template-columns:2.5rem 1fr;column-gap:.75rem;padding:.9rem 0;border-top:1px solid rgba(12,43,51,.18);margin:0;color:var(--muted);font-size:var(--step-small)}
.prose ol.steps li::before{content:counter(st,decimal-leading-zero);grid-row:span 2;font:800 1.6rem/1 var(--display);color:var(--ink)}
.prose ol.steps strong{color:var(--ink);font-size:1rem}
.prose .note{font-size:var(--step-small);color:var(--muted);border-top:3px solid var(--ink);padding-top:1rem}
.prose .note a{color:var(--ink)}
@media (max-width:820px){.prose ul.incl{grid-template-columns:1fr}}

.faq{grid-template-columns:repeat(12,minmax(0,1fr));row-gap:0}
.faq h2{grid-column:1 / span 4;grid-row:1 / span 40;align-self:start;position:sticky;top:6rem}
.faq details.qa{grid-column:6 / -1;border-top:1px solid rgba(12,43,51,.22)}
.faq details.qa:last-of-type{border-bottom:1px solid rgba(12,43,51,.22)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.15rem 0;min-height:3rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;display:grid;place-items:center;width:2.25rem;height:2.25rem;background:var(--ink);color:var(--bg);font:600 1.35rem/1 var(--text);transition:transform .25s var(--ease),background-color .2s var(--ease)}
.faq details[open] summary::after{content:"−";background:var(--accent);color:var(--ink)}
.faq summary:hover .q{text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.2em}
.faq details .q{font-size:var(--step-body);max-width:none;grid-column:auto}
.faq details .a{grid-column:auto;max-width:60ch;margin:0;padding:0 3.5rem 1.4rem 0}
@media (max-width:820px){.faq h2{grid-column:1 / -1;grid-row:auto;position:static;margin-bottom:1.5rem}.faq details.qa{grid-column:1 / -1}.faq details .a{margin-top:0;padding-right:0}}
