/* Straveris Group — folha de estilo unica das paginas do site.
 *
 * Serve a raiz (Brasil) e /pt/ (Portugal), e servira os mercados seguintes.
 * Ate a v1.2 este CSS estava embutido em cada pagina; com duas paginas ja
 * tinha divergido, e uma correcao de bug obrigava a editar dois ficheiros.
 * A partir daqui existe um sitio so.
 *
 * Contem tambem os componentes que hoje so uma pagina usa (.ctx-* e' da
 * seccao do contexto portugues). E deliberado: separar folhas por mercado
 * traria de volta o problema.
 *
 * Design system: raio 0, sem sombra, sem gradiente, sem icone. Blocos
 * delimitados por filete vertical ouro.
 */

:root{
  /* Fundos */
  --navy-deep:#071828;
  --blue-corp:#0C447C;
  --blue-midnight:#1E3A5C;
  --blue-mist:#FBFDFF;
  --white:#FFFFFF;
  /* Texto */
  --pale-blue:#F4F8FD;
  --light-blue:#85B7EB;
  --mid-blue:#5F87B0;
  --steel:#5A6B7E;        /* apenas sobre fundo claro */
  --steel-web:#8496A8;    /* variante acessivel sobre navy (AA) */
  /* Accent */
  --gold:#C9A96E;
  --gold-soft:#EDD9A3;
  --line:#D5E1EF;
  --line-soft:rgba(213,225,239,0.12);
  --line-mid:rgba(213,225,239,0.22);
  /* Escala 4px */
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:20px; --s6:24px;
  --s7:28px; --s8:32px; --s10:40px; --s12:48px; --s16:64px; --s20:80px; --s24:96px;
  --nav-h:76px;
}

*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:var(--navy-deep);}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.001ms !important;transition-duration:.001ms !important;}
}
body{
  background:var(--navy-deep);
  color:var(--pale-blue);
  font-family:'DM Sans',Arial,Helvetica,sans-serif;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:700;color:var(--white);line-height:1.24;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}

:focus-visible{outline:2px solid var(--gold);outline-offset:3px;}

.skip{position:absolute;left:-9999px;top:0;background:var(--gold);color:var(--navy-deep);padding:var(--s3) var(--s5);font-weight:700;z-index:200;}
.skip:focus{left:var(--s4);top:var(--s4);}

/* ---------- primitivos de marca ---------- */
.label{font-weight:700;font-size:12px;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);}
.label.steel{color:var(--steel-web);}
/* sobretítulo da marca sobre navy: Azul Claro, não ouro nem branco (norma do logo) */
.label.marca{color:var(--light-blue);}
.rule{display:inline-block;width:40px;height:2px;background:var(--gold);margin-bottom:var(--s4);}
.rule.small{width:24px;margin:0 0 var(--s3) 0;}
.dash-list{list-style:none;}
.dash-list li{position:relative;padding-left:28px;margin-bottom:14px;font-size:16px;color:var(--pale-blue);}
.dash-list li::before{content:'—';position:absolute;left:0;top:0;color:var(--gold);font-weight:700;}
.filete{border-left:3px solid var(--gold);padding-left:var(--s6);}

.wrap{max-width:1120px;margin:0 auto;padding:0 var(--s6);}
section{padding:var(--s24) 0;position:relative;scroll-margin-top:var(--nav-h);}
.section-head{max-width:720px;margin-bottom:var(--s16);}
.section-head h2{font-size:clamp(26px,3.4vw,34px);margin:var(--s4) 0 var(--s5);}
.section-head p{font-size:17px;color:var(--pale-blue);}
/* A introducao da proposta passou a ter dois paragrafos na revisao de 30/08;
   sem esta regra eles colavam, porque `p` nao tem margem neste stylesheet. */
.section-head p + p{margin-top:var(--s5);}
.section-head p.support{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:19px;color:var(--light-blue);margin-top:var(--s2);}

.btn{
  display:inline-block;background:var(--gold);color:var(--navy-deep);
  font-weight:700;font-size:16px;padding:18px 36px;letter-spacing:0.02em;
  border:none;cursor:pointer;font-family:inherit;transition:background .18s ease;
}
.btn:hover,.btn:focus-visible{background:var(--gold-soft);}
.btn-ghost{
  display:inline-block;color:var(--gold);font-weight:700;font-size:15px;
  letter-spacing:0.04em;border-bottom:1px solid rgba(201,169,110,.45);padding-bottom:2px;
  transition:border-color .18s ease;
}
.btn-ghost:hover{border-color:var(--gold);}

/* reveal — o conteudo e visivel por omissao; a animacao so entra
   quando o JS confirma suporte, com failsafe de 2s. Nunca esconde texto. */
.rv{opacity:1;transform:none;}
.reveal-on .rv{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease;}
.reveal-on .rv.in{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){.reveal-on .rv{opacity:1;transform:none;}}

/* ---------- NAV ---------- */
/* NOTA: sem backdrop-filter — ele cria um bloco de contencao para
   descendentes com position:fixed e quebraria o painel do menu mobile. */
nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(7,24,40,.97);border-bottom:1px solid var(--line-soft);}
nav .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:var(--s5);padding-bottom:var(--s5);}
/* Lockup serifado — o tratamento que a norma prescreve para cabeçalho,
   onde não há espaço para o sobretítulo espaçado. Separador vertical AZUL;
   o ouro entra só como traço horizontal por baixo. */
.lockup{display:inline-flex;flex-direction:column;align-items:flex-start;white-space:nowrap;}
.lockup .lk{display:flex;align-items:baseline;}
.lockup .lk-a{font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:21px;color:var(--white);line-height:1.1;}
.lockup .lk-sep{width:1px;height:20px;background:#185FA5;opacity:.55;margin:0 var(--s2);align-self:center;}
.lockup .lk-b{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:400;font-size:17px;color:var(--light-blue);line-height:1.1;}
.lockup .lk-rule{display:block;width:32px;height:1.5px;background:var(--gold);margin-top:5px;}
.nav-links{display:flex;gap:26px;align-items:center;}
.nav-links .nav-cta{display:none;}
.nav-links a{white-space:nowrap;font-size:13px;letter-spacing:0.05em;color:var(--light-blue);text-transform:uppercase;padding-bottom:3px;border-bottom:1px solid transparent;transition:color .18s ease,border-color .18s ease;}
.nav-links a:hover{color:var(--white);}
.nav-links a.active{color:var(--white);border-bottom-color:var(--gold);}
.nav-cta{background:var(--gold);color:var(--navy-deep) !important;font-weight:700;font-size:12px;letter-spacing:0.08em;padding:12px 20px;text-transform:uppercase;transition:background .18s ease;}
.nav-cta:hover{background:var(--gold-soft);}
.nav-toggle{display:none;background:none;border:1px solid var(--line-mid);color:var(--pale-blue);padding:10px 14px;font:inherit;font-size:12px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;}
/* A barra passa ao menu compacto a 1120px: o menu portugues ganhou
   "Quem conduz" e deixou de caber em portateis de 1024. Nada se perde em
   conversao, porque o botao de contacto passou a ficar visivel na barra. */
@media (max-width:1280px){.nav-links{gap:20px;} .country-label{display:none;}}
@media (max-width:1120px){
  .nav-links{display:none;}
  .nav-toggle{display:block;}
  /* O botao da barra estava escondido abaixo de 980px: no telemovel o
     visitante atravessava metade da pagina (72% na portuguesa) sem via de
     contacto a vista. Fica, encurtado para caber ao lado do Menu. */
  nav .nav-cta{display:block;padding:11px 13px;font-size:11px;letter-spacing:.06em;}
  .cta-mais{display:none;}
  .nav-open .nav-links{
    display:flex;flex-direction:column;align-items:stretch;gap:0;
    position:fixed;top:var(--nav-h);left:0;right:0;bottom:0;
    background:var(--navy-deep);padding:var(--s8) var(--s6);overflow-y:auto;
  }
  .nav-open .nav-links{gap:0;}
  .nav-open .nav-links a{font-size:18px;text-transform:none;letter-spacing:0;color:var(--pale-blue);padding:var(--s5) 0;border-bottom:1px solid var(--line-soft);}
  .nav-open .nav-links .nav-cta{display:block;margin-top:var(--s8);text-align:center;text-transform:uppercase;font-size:13px;padding:18px;border-bottom:none;}
}

/* ---------- HERO ---------- */
.hero{min-height:calc(100vh - 40px);display:flex;align-items:center;padding-top:calc(var(--nav-h) + var(--s24));padding-bottom:var(--s20);overflow:hidden;}
/* Baseline §11: circulo so no diagrama FORGE. O arco decorativo do hero
   passou a filete reto em ouro discreto. */
.hero-arc{position:absolute;top:0;right:0;width:1px;height:220px;background:linear-gradient(180deg,rgba(201,169,110,.55),rgba(201,169,110,0));pointer-events:none;}
.hero-inner{max-width:800px;position:relative;z-index:2;}
.hero h1{font-size:clamp(32px,5.6vw,52px);margin-bottom:var(--s5);}
.hero h1 .gold{color:var(--gold);}
.hero p.lead{font-size:clamp(17px,2.2vw,20px);color:var(--pale-blue);max-width:620px;margin-bottom:var(--s10);}
.hero-actions{display:flex;align-items:center;gap:var(--s10);flex-wrap:wrap;}
.hero-footline{margin-top:var(--s16);font-size:14px;color:var(--mid-blue);}
.hero-footline .sep{color:var(--gold);margin:0 var(--s2);}

/* ---------- FAIXA DE CREDIBILIDADE ---------- */
.credbar{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:var(--s10) 0;}
.credbar .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--s10);}
.cred-item .k{display:block;font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:clamp(22px,2.6vw,28px);color:var(--gold);margin-bottom:var(--s1);}
.cred-item p{font-size:14px;color:var(--light-blue);line-height:1.45;}
@media (max-width:820px){.credbar .wrap{grid-template-columns:repeat(2,1fr);gap:var(--s8) var(--s6);}}

/* ---------- DESAFIO ---------- */
.desafio-item{display:flex;align-items:baseline;gap:var(--s8);padding:22px 0;border-bottom:1px solid var(--line-soft);}
.desafio-item:first-child{border-top:1px solid var(--line-soft);}
.desafio-item .n{font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:22px;color:var(--gold);width:36px;flex-shrink:0;}
.desafio-item p{font-size:clamp(16px,2vw,18px);color:var(--pale-blue);}

/* ---------- PROPOSTA ---------- */
.proposta-grid{display:flex;flex-wrap:wrap;gap:var(--s12) 0;}
.proposta-block{border-left:3px solid var(--gold);padding-left:var(--s6);padding-right:var(--s6);}
.proposta-block h3{font-family:'DM Sans',Arial,sans-serif;font-size:19px;font-weight:700;color:var(--white);margin-bottom:10px;}
.proposta-block p{font-size:15px;color:var(--light-blue);}
.proposta-a{flex:0 0 100%;}
.proposta-b{flex:0 0 55%;}
.proposta-c{flex:0 0 40%;}
@media (max-width:820px){.proposta-b,.proposta-c{flex:0 0 100%;}}

/* ---------- CASOS / RESULTADOS ---------- */
.proof-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s10);align-items:stretch;}
.proof-card{position:relative;background:rgba(30,58,92,.58);border:1px solid var(--line-mid);border-top:3px solid var(--gold);padding:var(--s8);min-width:0;display:flex;flex-direction:column;height:100%;}
.proof-card--capacity{border-top-color:var(--steel-web);}
.proof-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s4);margin-bottom:var(--s5);min-height:42px;}
.proof-type,.proof-sector{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;}
.proof-type{color:var(--gold);}
.proof-card--capacity .proof-type{color:var(--pale-blue);}
.proof-sector{color:var(--steel-web);text-align:right;}
.proof-card h3{font-size:clamp(22px,2.8vw,28px);line-height:1.2;margin-bottom:var(--s4);min-height:3.4em;}
.proof-context{font-size:15px;color:var(--light-blue);min-height:72px;}
.proof-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4);margin:var(--s8) 0 var(--s6);padding:var(--s6) 0;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);}
.proof-metric{min-width:0;}
.proof-metric .num{display:block;font-family:'Playfair Display',Georgia,serif;font-size:clamp(23px,2.7vw,31px);font-weight:700;color:var(--gold);line-height:1.05;margin-bottom:var(--s2);overflow-wrap:anywhere;}
.proof-card--capacity .proof-metric .num{color:var(--white);}
.proof-metric p{font-size:13px;color:var(--pale-blue);}
.proof-attribution{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);margin-bottom:var(--s5);min-height:44px;}
.proof-attribution span{font-size:12px;color:var(--steel-web);}
.proof-attribution span + span{position:relative;padding-left:var(--s5);}
.proof-attribution span + span::before{content:'·';position:absolute;left:7px;color:var(--gold);}
.proof-detail{border-top:1px solid var(--line-soft);margin-top:auto;}
.proof-detail summary{list-style:none;cursor:pointer;position:relative;padding:var(--s5) var(--s8) 0 0;font-size:14px;font-weight:700;color:var(--white);}
.proof-detail summary::-webkit-details-marker{display:none;}
.proof-detail summary::after{content:'+';position:absolute;right:0;color:var(--gold);font-size:20px;line-height:1;}
.proof-detail[open] summary::after{content:'–';}
.proof-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s5);padding-top:var(--s6);}
.proof-detail-block .label{display:block;margin-bottom:var(--s2);}
.proof-detail-block p,.proof-detail-block li{font-size:14px;color:var(--pale-blue);}
.proof-detail-block .dash-list{margin-top:0;}
.proof-detail-block .dash-list li{margin-bottom:var(--s2);}
.proof-detail-block--wide{grid-column:1/-1;}
.proof-dimensions{font-size:12px;color:var(--steel-web);border-top:1px solid var(--line-soft);margin-top:var(--s5);padding-top:var(--s4);}
.proof-dimensions b{color:var(--light-blue);}
.confidencial{font-size:13px;color:var(--mid-blue);border-top:1px solid var(--line-mid);padding-top:var(--s5);margin-top:var(--s16);}
@media (max-width:920px){.proof-cards{grid-template-columns:1fr;}.proof-context,.proof-card-head,.proof-card h3,.proof-attribution{min-height:0;}}
@media (max-width:560px){.proof-card{padding:var(--s6);}.proof-card-head{flex-direction:column;}.proof-sector{text-align:left;}.proof-metrics{grid-template-columns:1fr;}.proof-metric{padding-bottom:var(--s3);}.proof-detail-grid{grid-template-columns:1fr;}.proof-detail-block--wide{grid-column:auto;}.proof-attribution{display:block;}.proof-attribution span{display:block;margin-bottom:var(--s2);}.proof-attribution span + span{padding-left:0;}.proof-attribution span + span::before{display:none;}}

/* ---------- CTA INTERMEDIARIO ---------- */
.cta-band{padding:var(--s16) 0;border-top:1px solid var(--line-mid);border-bottom:1px solid var(--line-mid);}
.cta-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:var(--s10);flex-wrap:wrap;}
.cta-band h3{font-size:clamp(20px,2.6vw,26px);max-width:640px;}
.cta-band p{font-size:15px;color:var(--light-blue);margin-top:var(--s2);max-width:560px;}

/* ---------- O QUE MUDA ---------- */
.muda-row{display:flex;align-items:center;gap:var(--s6);padding:var(--s5) 0;border-bottom:1px solid var(--line-soft);}
.muda-row:first-child{border-top:1px solid var(--line-soft);}
.muda-antes{flex:0 0 34%;font-size:16px;color:var(--mid-blue);}
.muda-arrow{flex:0 0 32px;color:var(--gold);font-size:20px;text-align:center;}
.muda-depois{flex:1;font-size:17px;color:var(--white);}
@media (max-width:700px){
  .muda-row{flex-direction:column;align-items:flex-start;gap:var(--s2);}
  .muda-antes,.muda-depois{flex:none;}
  .muda-arrow{text-align:left;flex:none;line-height:1;}
}

/* ---------- FORGE ---------- */
.forge-diagram{position:relative;padding-top:var(--s16);margin-bottom:var(--s2);}
.forge-cycle-label{position:absolute;top:0;left:0;right:0;text-align:center;font-size:12px;letter-spacing:0.2em;color:var(--steel-web);text-transform:uppercase;}
.forge-cycle-arc{position:absolute;top:28px;left:8%;right:8%;height:1px;border-top:1px dashed rgba(213,225,239,.35);}
.forge-row{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s2);}
.forge-node{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;}
.forge-node .circle{width:96px;height:96px;border:1.5px solid var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:30px;color:var(--gold);margin-bottom:var(--s6);}
.forge-node .arrow{position:absolute;top:48px;left:calc(50% + 60px);width:calc(100% - 96px);height:1px;background:var(--line);opacity:.4;}
.forge-node:last-child .arrow{display:none;}
.forge-node .dim-name{font-weight:700;font-size:17px;color:var(--white);margin-bottom:var(--s2);}
.forge-node .dim-rule{width:20px;height:2px;background:var(--gold);margin-bottom:var(--s3);}
.forge-node .dim-desc{font-size:14px;color:var(--light-blue);max-width:164px;}
.forge-node .dim-why{font-size:13px;color:var(--steel-web);max-width:164px;margin-top:var(--s2);font-style:italic;}
@media (max-width:900px){
  .forge-row{flex-wrap:wrap;row-gap:var(--s12);justify-content:flex-start;}
  .forge-node{flex:0 0 calc(33.333% - var(--s2));}
  .forge-node .arrow,.forge-cycle-arc{display:none;}
}
@media (max-width:560px){.forge-node{flex:0 0 calc(50% - var(--s2));}}
.forge-tech{margin-top:var(--s20);background:var(--blue-midnight);border-left:3px solid var(--gold);padding:var(--s8) var(--s8);}
.forge-tech .label{margin-bottom:var(--s2);display:block;}
.forge-tech p{font-size:15px;color:var(--pale-blue);max-width:800px;}
.forge-close{margin-top:var(--s12);border-left:3px solid var(--gold);padding-left:var(--s7,28px);}
.forge-close p{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:clamp(17px,2.2vw,20px);color:var(--white);font-weight:600;}

/* ---------- DA ESTRATEGIA A ROTINA ---------- */
.management-map{max-width:1040px;}
.management-strategy{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:var(--s12);align-items:center;background:var(--blue-midnight);border-left:3px solid var(--gold);padding:var(--s8) var(--s10);}
.management-kicker,.commercial-kicker{display:block;margin-bottom:var(--s2);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);}
.management-strategy h3{font-size:clamp(24px,3vw,30px);}
.management-strategy p{font-size:16px;color:var(--pale-blue);max-width:620px;}
.management-bridge{position:relative;height:64px;}
.management-bridge::before{content:'';position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--line-mid);}
.management-bridge span{position:absolute;top:50%;left:calc(50% + var(--s4));transform:translateY(-50%);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--steel-web);}
.management-domains{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line-mid);border-left:1px solid var(--line-mid);}
.management-domain{position:relative;min-height:150px;padding:var(--s7) var(--s8);border-right:1px solid var(--line-mid);border-bottom:1px solid var(--line-mid);}
.management-domain::before{content:'';position:absolute;top:-1px;left:var(--s8);width:32px;height:2px;background:var(--gold);}
.management-domain h3{font-family:'DM Sans',Arial,sans-serif;font-size:17px;font-weight:700;color:var(--white);margin-bottom:var(--s2);}
.management-domain p{font-size:15px;color:var(--light-blue);max-width:420px;}
.entrega-nota{font-size:14px;color:var(--mid-blue);margin-top:var(--s12);border-top:1px solid var(--line-soft);padding-top:var(--s5);}

/* ---------- FORGE APLICADO: GESTAO COMERCIAL ---------- */
.commercial-application{background:var(--blue-midnight);}
.commercial-system{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.72fr);gap:var(--s12);align-items:stretch;}
.commercial-pillars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line-mid);border-left:1px solid var(--line-mid);}
.commercial-pillar{min-height:180px;padding:var(--s7) var(--s8);background:rgba(7,24,40,.24);border-right:1px solid var(--line-mid);border-bottom:1px solid var(--line-mid);}
.commercial-pillar h3{font-family:'DM Sans',Arial,sans-serif;font-size:17px;font-weight:700;color:var(--white);margin-bottom:var(--s2);}
.commercial-pillar p{font-size:15px;color:var(--pale-blue);}
.commercial-result{display:flex;flex-direction:column;justify-content:center;background:var(--navy-deep);border-top:3px solid var(--gold);padding:var(--s8);}
.commercial-result .label{margin-bottom:var(--s5);}
.commercial-result h3{font-size:clamp(24px,3vw,30px);margin-bottom:var(--s4);}
.commercial-result p{font-size:16px;color:var(--pale-blue);}
@media (max-width:820px){
  .management-strategy{grid-template-columns:1fr;gap:var(--s4);}
  .management-domains,.commercial-pillars{grid-template-columns:1fr;}
  .management-domain,.commercial-pillar{min-height:0;}
  .commercial-system{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .management-strategy,.management-domain,.commercial-pillar,.commercial-result{padding:var(--s6);}
  .management-bridge span{left:calc(50% + var(--s3));font-size:9px;letter-spacing:.1em;}
}

/* ---------- TECNOLOGIA (composicao 58/38, distinta da grelha de entregaveis) ---------- */
.tec-grid{display:flex;gap:var(--s16);align-items:flex-start;flex-wrap:wrap;}
.tec-col-a{flex:1 1 56%;}
.tec-col-b{flex:1 1 34%;}
.tec-item{padding:var(--s5) 0;border-bottom:1px solid var(--line-soft);}
.tec-item:first-child{border-top:1px solid var(--line-soft);}
.tec-item b{display:block;font-size:16px;font-weight:700;color:var(--white);margin-bottom:var(--s1);}
.tec-item span{font-size:15px;color:var(--light-blue);}
.tec-panel{background:var(--blue-midnight);border-left:3px solid var(--gold);padding:var(--s8);}
.tec-panel .label{display:block;margin-bottom:var(--s4);}
.tec-panel p{font-size:16px;color:var(--pale-blue);}
.tec-panel p + p{margin-top:var(--s4);color:var(--light-blue);font-size:15px;}
@media (max-width:820px){.tec-col-a,.tec-col-b{flex:1 1 100%;}}

/* ---------- citacao com atribuicao ---------- */
.principio{margin-top:var(--s16);border-left:3px solid var(--gold);padding-left:var(--s7);}
.principio p{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:clamp(17px,2.2vw,20px);color:var(--white);font-weight:600;}
.principio cite{display:block;margin-top:var(--s3);font-family:'DM Sans',Arial,sans-serif;font-style:normal;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--steel-web);}

/* ---------- SEGMENTOS ---------- */
.segmento-item{display:flex;gap:var(--s16);padding:var(--s8) 0;border-bottom:1px solid var(--line-soft);}
.segmento-item:first-child{border-top:1px solid var(--line-soft);}
.segmento-item .nome{flex:0 0 280px;font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:22px;color:var(--white);line-height:1.3;}
.segmento-item .desc{flex:1;padding-top:var(--s1);}
.segmento-item .desc p{font-size:16px;color:var(--pale-blue);max-width:580px;}
@media (max-width:760px){.segmento-item{flex-direction:column;gap:var(--s4);}.segmento-item .nome{flex:none;}}

/* ---------- PARA QUEM ---------- */
.paraquem-grid{display:flex;gap:var(--s20);}
.paraquem-col{flex:1;}
.paraquem-col .label{margin-bottom:var(--s5);display:block;}
.paraquem-note{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:17px;color:var(--white);margin-top:var(--s6);}
@media (max-width:820px){.paraquem-grid{flex-direction:column;gap:var(--s10);}}

/* ---------- PASSOS ---------- */
/* a linha conectora avanca 40px sobre o gap; sem este clip ela cria
   scroll horizontal quando a fila quebra (visivel a ~1024px). */
.passos-row{display:flex;gap:var(--s10);flex-wrap:wrap;overflow:hidden;}
.passo{flex:1;min-width:220px;position:relative;padding-top:var(--s2);}
.passo .n{font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:40px;color:var(--gold);display:block;margin-bottom:var(--s4);}
.passo .titulo{font-weight:700;font-size:17px;color:var(--white);margin-bottom:var(--s1);}
.passo .subtitulo{font-size:13px;letter-spacing:0.06em;text-transform:uppercase;color:var(--light-blue);margin-bottom:var(--s3);}
.passo p.desc{font-size:15px;color:var(--pale-blue);}
.passo-line{position:absolute;top:26px;left:60px;right:-40px;height:1px;background:var(--line);opacity:.35;}
.passo:last-child .passo-line{display:none;}
@media (max-width:900px){.passo-line{display:none;}}

/* ---------- MODELO DE ENGAJAMENTO ---------- */
.contrata{margin-top:var(--s20);}
.contrata > .label{display:block;margin-bottom:var(--s6);}
.contrata-row{display:flex;gap:var(--s12);padding:var(--s6) 0;border-bottom:1px solid var(--line-soft);}
.contrata-row:first-of-type{border-top:1px solid var(--line-soft);}
.contrata-row .fase{flex:0 0 236px;}
.contrata-row .fase b{display:block;font-family:'Playfair Display',Georgia,serif;font-size:20px;
                      font-weight:700;color:var(--white);line-height:1.3;margin-bottom:var(--s1);}
.contrata-row .fase span{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);}
/* Tres etapas sob o titulo "o que se contrata" liam-se como tres compras.
   Esta linha diz a que caminho cada uma pertence — duas delas vivem dentro
   do programa. Em minusculas e discreta, para nao competir com a etapa. */
.contrata-row .fase .via{display:block;margin-top:var(--s2);font-size:12px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--steel-web);}
.contrata-row .cols{flex:1;display:flex;gap:var(--s12);}
.contrata-row .col{flex:1;}
.contrata-row .col .k{display:block;font-size:11px;font-weight:700;letter-spacing:.14em;
                      text-transform:uppercase;color:var(--steel-web);margin-bottom:var(--s2);}
.contrata-row .col p{font-size:15px;color:var(--pale-blue);}
.contrata-row .col.exige p{color:var(--light-blue);}
.contrata-nota{font-size:14px;color:var(--mid-blue);margin-top:var(--s6);}
@media (max-width:900px){
  .contrata-row{flex-direction:column;gap:var(--s5);}
  .contrata-row .fase{flex:none;}
  .contrata-row .cols{flex-direction:column;gap:var(--s5);}
}

/* ---------- BRASIL E PORTUGAL ---------- */
/* --mid-blue e calibrado para o navy do fundo geral. Sobre o azul mais claro
   da .geo cai para 3,07:1 e reprova em AA — apanhado na varredura de
   contraste da v1.3. Dentro da .geo, as notas seguem o tom dos restantes
   paragrafos da seccao. */
.geo{background:var(--blue-midnight);}
.geo .contrata-nota,.geo .confidencial{color:var(--pale-blue);}
.geo-grid{display:flex;gap:var(--s16);flex-wrap:wrap;}
.geo-col{flex:1 1 300px;}
.geo-col h3{font-family:'DM Sans',Arial,sans-serif;font-size:18px;font-weight:700;color:var(--white);margin-bottom:var(--s3);}
.geo-col p{font-size:15px;color:var(--pale-blue);}
.geo-col .cidade{font-family:'Playfair Display',Georgia,serif;font-size:24px;color:var(--gold);margin-bottom:var(--s2);}
.presence-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s12);padding:var(--s8) 0 var(--s4);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);}
.presence-stat{padding-left:var(--s5);border-left:2px solid var(--gold);}
.presence-stat .num{display:block;font-family:'Playfair Display',Georgia,serif;font-size:clamp(28px,3.2vw,40px);font-weight:700;line-height:1.05;color:var(--white);margin-bottom:var(--s2);}
.presence-stat .k{display:block;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:var(--s3);}
.presence-stat p{font-size:15px;color:var(--pale-blue);}
@media (max-width:760px){.presence-proof{grid-template-columns:1fr;gap:var(--s8);}.presence-stat{padding-bottom:var(--s4);}}

/* ---------- QUEM CONDUZ ---------- */
#conduz{padding:0;}
.conduz-flip{display:flex;align-items:stretch;}
.conduz-col-a{flex:0 0 34%;background:var(--navy-deep);display:flex;flex-direction:column;justify-content:center;padding:var(--s24) var(--s12);}
.conduz-photo{width:168px;height:168px;object-fit:cover;object-position:center;margin-bottom:var(--s8);}
.conduz-col-a .label{margin-bottom:var(--s4);}
.conduz-col-a .nome{font-size:26px;margin-bottom:var(--s1);}
.conduz-col-a .cargo{font-size:15px;color:var(--light-blue);margin-bottom:var(--s6);}
.conduz-col-a .cred-principal{font-weight:700;font-size:15px;color:var(--gold);margin-bottom:var(--s4);}
/* marco de trajetoria: filete ouro, o idioma da marca para bloco delimitado.
   Fica entre a credencial principal e as formacoes, porque e experiencia, nao estudo. */
.conduz-col-a .marco{border-left:2px solid var(--gold);padding-left:var(--s4);margin:0 0 var(--s6);font-size:14px;line-height:1.45;color:var(--pale-blue);}
.conduz-col-a .marco b{color:var(--gold-soft);font-weight:700;}
.conduz-col-a .formacao{font-size:14px;color:var(--light-blue);margin-bottom:var(--s1);}
.conduz-col-a .li-link{margin-top:var(--s6);font-size:14px;color:var(--light-blue);border-bottom:1px solid var(--line-mid);display:inline-block;padding-bottom:2px;}
.conduz-col-a .li-link:hover{color:var(--white);border-color:var(--gold);}
.conduz-col-b{flex:1;background:var(--blue-mist);display:flex;flex-direction:column;justify-content:center;padding:var(--s24) var(--s20);}
/* sobre fundo claro o sobretitulo vai a Aco (regra de marca) — ouro a 12px
   sobre #FBFDFF fica em 2.2:1 e reprova em contraste */
.conduz-col-b .label{color:var(--steel);margin-bottom:var(--s4);}
.conduz-col-b h3{color:var(--navy-deep);font-size:clamp(24px,3vw,30px);margin-bottom:var(--s5);}
.conduz-col-b p.bio{font-size:17px;color:var(--blue-midnight);margin-bottom:var(--s8);}
.conduz-skills{display:flex;gap:var(--s12);flex-wrap:wrap;margin-bottom:var(--s8);}
.conduz-skills .dash-list{flex:1;min-width:220px;}
.conduz-skills .dash-list li{color:var(--blue-midnight);}
.conduz-close{border-left:3px solid var(--gold);padding-left:var(--s6);}
.conduz-close p{font-size:15px;color:var(--steel);font-style:italic;font-family:'Playfair Display',Georgia,serif;}
@media (max-width:860px){
  .conduz-flip{flex-direction:column;}
  .conduz-col-a,.conduz-col-b{padding:var(--s16) var(--s8);}
}

/* ---------- FAQ ---------- */
/* Atalhos do bloco "o que se contrata" (44% da pagina) para as tres
   respostas que a hesitacao pede ali — o FAQ que as contem vive a 85%. */
.contrata-atalhos{margin-top:var(--s5);font-size:14px;line-height:1.6;color:var(--steel-web);}
.contrata-atalhos a{color:var(--light-blue);border-bottom:1px solid rgba(133,183,235,.42);padding-bottom:1px;}
.contrata-atalhos a:hover{color:var(--gold-soft);border-color:var(--gold);}
/* a pergunta aberta por endereco fica sob a barra fixa sem este recuo */
.faq-item{scroll-margin-top:calc(var(--nav-h) + var(--s5));}
.faq-item{border-bottom:1px solid var(--line-soft);}
.faq-item:first-child{border-top:1px solid var(--line-soft);}
.faq-item summary{
  list-style:none;cursor:pointer;padding:var(--s6) var(--s10) var(--s6) 0;position:relative;
  font-family:'Playfair Display',Georgia,serif;font-size:clamp(17px,2.1vw,20px);font-weight:600;color:var(--white);
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:'+';position:absolute;right:0;top:50%;transform:translateY(-50%);color:var(--gold);font-size:24px;font-family:'DM Sans',Arial,sans-serif;line-height:1;}
.faq-item[open] summary::after{content:'–';}
.faq-item .faq-body{padding:0 var(--s10) var(--s6) 0;max-width:760px;}
.faq-item .faq-body p{font-size:16px;color:var(--light-blue);}
.faq-item .faq-body p + p{margin-top:var(--s3);}

/* ---------- CONTATO ---------- */
.contato{background:var(--blue-midnight);}
.contato-grid{display:flex;gap:var(--s20);align-items:flex-start;}
.contato-col-a{flex:0 0 46%;}
.contato-col-b{flex:1;}
.contato h2{font-size:clamp(26px,3.4vw,34px);margin:var(--s4) 0 var(--s5);}
.contato p.lead{font-size:17px;color:var(--pale-blue);margin-bottom:var(--s8);}
.contato-info{margin-bottom:var(--s8);}
.contato-info .linha{display:flex;gap:var(--s4);font-size:16px;margin-bottom:var(--s3);align-items:baseline;}
.contato-info .linha .k{color:var(--light-blue);text-transform:uppercase;font-size:11px;letter-spacing:0.14em;font-weight:700;width:96px;flex-shrink:0;}
.contato-info .linha a{color:var(--white);border-bottom:1px solid rgba(255,255,255,.28);padding-bottom:1px;min-width:0;overflow-wrap:anywhere;}
.contato-info .linha a:hover{border-color:var(--gold);color:var(--gold-soft);}
.ctx-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s12);}
.ctx-stat{border-left:3px solid var(--gold);padding-left:var(--s6);}
.ctx-stat .num{display:block;font-family:'Playfair Display',Georgia,serif;font-size:44px;font-weight:700;color:var(--gold);line-height:1.05;}
.ctx-stat p{margin:var(--s3) 0 0;font-size:17px;color:var(--pale-blue);}
.ctx-fonte{margin-top:var(--s10);font-size:13px;color:var(--steel-web);}
.nav-lang{color:var(--gold) !important;}

/* Arquitetura binacional */
.gateway-page{background:var(--navy-deep);}
.gateway-page #nav{position:absolute;}
.gateway-nav{display:flex;align-items:center;gap:12px;color:var(--steel-web);font-size:13px;letter-spacing:.08em;text-transform:uppercase;}
.gateway-nav a{color:var(--light-blue);text-decoration:none;border-bottom:1px solid transparent;padding:4px 0;}
.gateway-nav a:hover{color:var(--white);border-bottom-color:var(--gold);}
.gateway-hero{position:relative;overflow:hidden;min-height:760px;background:var(--navy-deep);color:var(--white);padding:170px 0 100px;}
.gateway-arc{position:absolute;width:720px;height:720px;border:1px solid rgba(201,169,110,.22);border-radius:50%;right:-310px;bottom:-390px;box-shadow:0 0 0 110px rgba(201,169,110,.035),0 0 0 230px rgba(201,169,110,.025);}
.gateway-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.08fr .92fr;gap:100px;align-items:center;}
.gateway-copy h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(50px,6vw,86px);line-height:1.02;letter-spacing:-.035em;margin:18px 0 28px;}
.gateway-copy>p{max-width:650px;color:var(--light-blue);font-size:19px;line-height:1.65;}
.market-choice{border-top:1px solid rgba(255,255,255,.18);}
.market-prompt{margin:0;padding:0 0 16px;color:var(--steel-web);font-size:12px;letter-spacing:.15em;text-transform:uppercase;}
.market-card{display:grid;grid-template-columns:58px 1fr 24px;gap:20px;align-items:center;padding:24px 0;color:var(--white);text-decoration:none;border-top:1px solid rgba(255,255,255,.18);transition:padding .18s ease,border-color .18s ease;}
.market-card:hover{padding-left:10px;border-color:var(--gold);}
.market-code{color:var(--gold);font-family:'Playfair Display',Georgia,serif;font-size:28px;}
.market-body strong{display:block;font-family:'Playfair Display',Georgia,serif;font-size:27px;}
.market-body small{display:block;margin-top:4px;color:var(--steel-web);font-size:13px;}
.market-arrow{color:var(--gold);font-size:22px;}
.market-note{max-width:520px;margin:22px 0 0;color:var(--steel-web);font-size:13px;line-height:1.55;}
.gateway-forge{background:var(--blue-midnight);color:var(--white);padding:var(--s24) 0;
  /* --steel-web e' calibrado sobre --navy-deep; sobre este painel mais claro
     cai para 3.81:1. Redefinido localmente para voltar a passar AA (4.8:1). */
  --steel-web:#97A9BC;}
.gateway-forge .section-head h2,.gateway-forge .section-head p{color:var(--white);}
.gateway-method-note{margin:var(--s6) 0 0;text-align:center;color:var(--steel-web);font-size:12px;letter-spacing:.04em;}
.country-label{font-size:10px;color:var(--steel-web);letter-spacing:.12em;margin-right:4px;}
.proof-review-note{margin:0 0 var(--s10);padding:16px 20px;border-left:2px solid var(--gold);background:var(--pale-blue);color:var(--navy-deep);font-size:13px;line-height:1.5;}
@media (max-width:900px){
  .gateway-inner{grid-template-columns:1fr;gap:56px;}
  .gateway-hero{padding-top:150px;}
}
@media (max-width:560px){
  .gateway-nav{font-size:11px;gap:8px;}
  .gateway-hero{min-height:auto;padding:112px 0 56px;}
  .gateway-inner{gap:40px;}
  .gateway-copy h1{font-size:38px;margin:14px 0 20px;}
  .gateway-copy>p{font-size:17px;line-height:1.5;}
  .market-card{grid-template-columns:48px 1fr 20px;gap:14px;}
  .market-card{padding:20px 0;}
}
@media (max-width:700px){.ctx-grid{grid-template-columns:1fr;gap:var(--s8);}.ctx-stat .num{font-size:36px;}}
.contato-qr{display:flex;align-items:center;gap:var(--s5);margin-bottom:var(--s8);}
.contato-qr img{width:144px;height:144px;flex-shrink:0;background:var(--white);padding:8px;box-sizing:content-box;}
.contato-qr p{font-size:14px;color:var(--light-blue);margin:0;max-width:200px;}
.contato-garantia{border-left:3px solid var(--gold);padding-left:var(--s6);font-size:15px;color:var(--pale-blue);}

form.lead-form{background:rgba(7,24,40,.5);border-left:3px solid var(--gold);padding:var(--s10) var(--s10);}
form.lead-form .fgroup{margin-bottom:var(--s5);}
form.lead-form label{display:block;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--light-blue);margin-bottom:var(--s2);}
form.lead-form input,form.lead-form select,form.lead-form textarea{
  width:100%;background:transparent;border:1px solid rgba(213,225,239,.34);
  color:var(--white);font-family:inherit;font-size:16px;padding:13px 14px;border-radius:0;
}
form.lead-form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 20px) 22px,calc(100% - 14px) 22px;background-size:6px 6px;background-repeat:no-repeat;}
form.lead-form select option{background:var(--navy-deep);color:var(--white);}
form.lead-form input:focus,form.lead-form select:focus,form.lead-form textarea:focus{border-color:var(--gold);}
/* O rato tem o realce da borda; o teclado precisa de um indicador proprio.
   outline:none em :focus apagava-o tambem para quem navega por tabulacao. */
form.lead-form input:focus:not(:focus-visible),form.lead-form select:focus:not(:focus-visible),form.lead-form textarea:focus:not(:focus-visible){outline:none;}
form.lead-form textarea{min-height:104px;resize:vertical;}
form.lead-form .btn{width:100%;margin-top:var(--s2);}
form.lead-form .consent{display:flex;gap:var(--s3);align-items:flex-start;font-size:13px;color:var(--light-blue);margin-bottom:var(--s5);}
form.lead-form .consent input{width:16px;height:16px;flex-shrink:0;margin-top:3px;accent-color:var(--gold);}
form.lead-form .consent a{border-bottom:1px solid rgba(133,183,235,.5);}
.form-hp{position:absolute;left:-9999px;}
.form-msg{font-size:14px;margin-top:var(--s4);color:var(--gold-soft);}
@media (max-width:900px){.contato-grid{flex-direction:column;gap:var(--s16);}.contato-col-a,.contato-col-b{flex:none;width:100%;}}

/* ---------- FOOTER ---------- */
footer{padding:var(--s16) 0 var(--s10);border-top:1px solid var(--line-soft);}
.footer-grid{display:flex;justify-content:space-between;gap:var(--s10);flex-wrap:wrap;margin-bottom:var(--s12);}
.footer-col{flex:1 1 220px;}
.footer-col .label{display:block;margin-bottom:var(--s4);color:var(--steel-web);}
.footer-col a,.footer-col p{display:block;font-size:14px;color:var(--light-blue);margin-bottom:var(--s2);}
.footer-col a:hover{color:var(--white);}
.footer-lockup{margin-bottom:var(--s5);}
.footer-lockup .lk-a{font-size:24px;}
.footer-lockup .lk-b{font-size:19px;}
.footer-lockup .lk-sep{height:23px;}
.footer-tag{font-size:14px;color:var(--mid-blue);}
.footer-base{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--s3);font-size:13px;color:var(--mid-blue);border-top:1px solid var(--line-soft);padding-top:var(--s5);}
.footer-base .sep{color:var(--gold);margin:0 var(--s3);}

@media (max-width:600px){
  section{padding:var(--s20) 0;}
  .section-head{margin-bottom:var(--s12);}
  .conduz-photo{width:136px;height:136px;}
  form.lead-form{padding:var(--s8) var(--s6);}
  /* no telemovel o link do WhatsApp esta logo acima; o QR nao tem uso. */
  .contato-qr{display:none;}
}

@media print{
  nav,.hero-arc,form.lead-form,.cta-band{display:none !important;}
  body{background:#fff;color:#000;}
  h1,h2,h3{color:#000;}
  section{padding:24px 0;}
}

/* ---- Utilitarios de espacamento ----
   Substituem os atributos style= que estavam no HTML. Existem para que
   nenhuma regra de estilo viva fora deste ficheiro. */
.mt-10{margin-top:var(--s10);}
.mt-12{margin-top:var(--s12);}
.mt-16{margin-top:var(--s16);}
.hero .label.marca{margin-bottom:20px;}
.consent label{font-size:13px;letter-spacing:0;text-transform:none;font-weight:400;color:var(--light-blue);margin:0;}
