body{line-height:1.7;}
a{color:var(--blue);text-decoration:none;}
a:hover{text-decoration:underline;}

header.page-head{max-width:820px;margin:0 auto;padding:3.5rem 1.5rem 1.5rem;}
header.page-head .tag{margin-bottom:1.1rem;}
header.page-head h1{
  font-size:clamp(2rem,5vw,3rem);font-weight:700;
  letter-spacing:-.04em;line-height:1.05;color:var(--navy);
}
header.page-head .updated{margin-top:.9rem;font-size:.85rem;color:var(--muted);}
header.page-head .lede{margin-top:.9rem;font-size:1.02rem;color:var(--muted);}

main{max-width:820px;margin:0 auto;padding:1rem 1.5rem 4rem;}
main section{margin-top:2.4rem;scroll-margin-top:var(--nav-offset);}
main h2{
  font-size:1.3rem;font-weight:700;letter-spacing:-.025em;
  color:var(--navy);margin-bottom:.7rem;padding-top:.4rem;
}
main h3{font-size:1.02rem;font-weight:700;color:var(--navy);margin:1.3rem 0 .45rem;}
main h4{font-size:.92rem;font-weight:700;color:var(--navy);margin:1rem 0 .35rem;}
main p{color:var(--muted);margin-bottom:.8rem;}
main ul,main ol{margin:.2rem 0 1rem 1.2rem;color:var(--muted);}
main li{margin-bottom:.45rem;}
main strong{color:var(--navy);font-weight:700;}
#quem-somos li a strong{color:inherit;}
main figure{margin:1.4rem 0;}
main hr{border:none;border-top:1px solid var(--border);margin:2.4rem 0;}

.toc{background:#fff;border:1px solid var(--border);border-radius:0;padding:1.2rem 1.4rem;margin-top:1.6rem;}
.toc h2{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:.6rem;padding:0;}
.toc ol{margin-left:1.1rem;color:var(--muted);font-size:.9rem;}
.toc li{margin-bottom:.25rem;}

.callout{background:rgba(8,120,255,.05);border:1px solid rgba(8,120,255,.15);border-radius:0;padding:1rem 1.2rem;margin:1.2rem 0;}
.callout p{margin:0;color:var(--navy);font-size:.92rem;}
.callout.warn{background:rgba(198,138,58,.06);border-color:rgba(198,138,58,.22);}

.sb-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem;}
.sb-card{background:#fff;border:1px solid var(--border);border-radius:0;padding:1.15rem 1.25rem;}
.sb-card h3{margin:0 0 .35rem;font-size:.95rem;font-weight:700;color:var(--navy);}
.sb-card p{margin:0;font-size:.88rem;color:var(--muted);}
.sb-card ul{margin:.5rem 0 0 1.1rem;font-size:.86rem;}
@media(max-width:700px){.sb-grid{grid-template-columns:1fr;}}

.tbl-wrap{overflow-x:auto;margin:1rem 0 1.4rem;}
table{border-collapse:collapse;width:100%;font-size:.88rem;min-width:32rem;}
th,td{text-align:left;padding:.7rem .85rem;border-bottom:1px solid var(--border);color:var(--muted);vertical-align:top;}
th{color:var(--navy);font-weight:700;background:rgba(8,120,255,.04);white-space:nowrap;}

.sv-card,.sv-steps{background:#fff;border:1px solid var(--border);border-radius:0;padding:1.5rem 1.6rem;margin-top:1.4rem;}
.sv-num{
  display:inline-flex;align-items:center;justify-content:center;
  width:2rem;height:2rem;border-radius:0;
  background:rgba(8,120,255,.08);color:var(--blue);
  font-weight:700;font-size:.9rem;margin-bottom:.9rem;
}
.sv-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#0E7C9E;margin:1.1rem 0 .35rem;}
.sv-who{margin-top:1.1rem;padding-top:.9rem;border-top:1px solid var(--border);font-size:.9rem;color:var(--muted);}

.sv-choice{margin-top:1.8rem;}
.sv-choice h2{margin:0 0 .4rem;}
.sv-choice-intro{margin:0 0 1.1rem;color:var(--muted);}
.sv-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;}
.sv-option{display:block;padding:1.1rem 1.2rem;border:1px solid var(--border);border-radius:0;background:#fff;text-decoration:none;transition:border-color .2s,transform .2s;}
.sv-option:hover{border-color:rgba(8,120,255,.35);box-shadow:none;;text-decoration:none;}
.sv-option-num{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.1em;color:var(--blue);background:var(--blue-soft);border-radius:0;padding:.15rem .4rem;}
.sv-option-name{display:block;margin:.5rem 0 .3rem;font-weight:700;color:var(--navy-full);letter-spacing:-.01em;}
.sv-option-who{display:block;font-size:.86rem;line-height:1.45;color:var(--muted);}
.sv-choice-rest{margin:1.1rem 0 0;font-size:.88rem;color:var(--muted);}
@media (max-width:640px){.sv-choice-grid{grid-template-columns:1fr;}}

.sv-top{display:flex;align-items:flex-start;gap:1.5rem;justify-content:space-between;}
.sv-photo{flex-shrink:0;width:15rem;border-radius:0;overflow:hidden;background:#EEF4FB;order:2;}
.sv-photo img{width:100%;height:10rem;object-fit:cover;display:block;}
@media (max-width:820px){
  .sv-top{flex-direction:column;gap:1.1rem;}
  .sv-photo{order:-1;width:100%;}
  .sv-photo img{height:8.5rem;}
}
.sv-ident{min-width:0;}
.sv-ident h2{margin:.5rem 0 0;}
.sv-ident .sv-who{margin:.55rem 0 0;padding:0;border:0;font-size:.92rem;}
.sv-ident .sv-who strong{color:var(--navy-full);}

.sv-intro{font-size:1.05rem;line-height:1.65;color:var(--navy);margin:1.1rem 0 0;}

.sv-double{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem;}
.sv-block{border:1px solid var(--border);border-radius:0;padding:1.1rem 1.2rem;background:#FCFDFF;}
.sv-block .sv-label{margin-top:0;}
.sv-block ul,.sv-block ol{margin:0;padding:0;list-style:none;display:grid;gap:.55rem;}
.sv-block li{font-size:.9rem;line-height:1.5;color:var(--muted);position:relative;padding-left:1.4rem;}

.sv-block-signals{background:var(--amber-soft);border-color:var(--amber-line);}
.sv-block-signals .sv-label{color:var(--amber-ink);}
.sv-block-signals li::before{content:'';position:absolute;left:.15rem;top:.45em;width:.55rem;height:.55rem;border-radius:0;border:1.6px solid var(--amber-mark);transform:rotate(45deg);}

.sv-block-receives{background:#F8FBFF;border-color:rgba(8,120,255,.18);}
.sv-block-receives li::before{content:'';position:absolute;left:.2rem;top:.32em;width:.5rem;height:.28rem;border-left:1.8px solid var(--blue);border-bottom:1.8px solid var(--blue);transform:rotate(-45deg);}

.sv-argument{margin:1.5rem 0 0;padding:1.1rem 1.3rem;border-left:3px solid var(--blue);background:var(--blue-soft);border-radius:0;}
.sv-argument .sv-label{margin-top:0;color:var(--blue-deep);}
.sv-argument p{margin:0;font-size:.95rem;line-height:1.6;color:var(--navy);}

.sv-card .sv-chips{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.55rem 1.4rem;}
.sv-card .sv-chips li{position:relative;padding-left:1.15rem;font-size:.87rem;line-height:1.45;color:var(--muted);}
.sv-card .sv-chips li::before{content:'+';position:absolute;left:0;top:0;color:var(--blue);font-weight:700;font-size:.9rem;line-height:1.55;}
.sv-card .sv-chips li strong{color:var(--navy-full);font-weight:650;}

.sv-card .sv-step-list{list-style:none;margin:0;padding:0;counter-reset:passo;display:grid;grid-template-columns:1fr 1fr;gap:.75rem;}
.sv-card .sv-step-list li{counter-increment:passo;position:relative;padding:.85rem .9rem .85rem;border:1px solid var(--border);border-radius:0;background:#fff;font-size:.83rem;line-height:1.45;color:var(--muted);}
.sv-card .sv-step-list li::before{content:counter(passo);display:flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;margin-bottom:.5rem;border-radius:0;background:var(--blue-soft);color:var(--blue-deep);font-size:.72rem;font-weight:700;}

@media (max-width:820px){
  .sv-double{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .sv-card .sv-step-list,.sv-card .sv-chips{grid-template-columns:1fr;}
}
.sv-card>h2:first-of-type,.sv-steps>h2:first-of-type{margin-top:0;padding-top:0;}

.cr-model{
  display:inline-flex;align-items:center;
  padding:.28rem .8rem;border-radius:0;
  background:rgba(8,120,255,.06);border:1px solid rgba(8,120,255,.15);
  font-size:.72rem;font-weight:700;color:var(--blue);margin-bottom:1rem;
}

.faq{margin-top:1rem;}
.faq details{
  background:#fff;border:1px solid var(--border);
  border-radius:0;margin-bottom:.7rem;overflow:hidden;
}
.faq details[open]{border-color:rgba(8,120,255,.28);}
.faq summary{
  cursor:pointer;list-style:none;
  padding:1rem 1.2rem;min-height:44px;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  font-weight:700;font-size:.95rem;color:var(--navy);
}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{
  content:'+';font-size:1.3rem;font-weight:400;color:var(--blue);
  flex-shrink:0;line-height:1;transition:transform .2s;
}
.faq details[open] summary::after{content:'\2212';}
.faq summary:hover{background:rgba(8,120,255,.03);}
.faq .faq-body{padding:0 1.2rem 1.1rem;}
.faq .faq-body p{margin-bottom:.6rem;font-size:.92rem;}
.faq .faq-body p:last-child{margin-bottom:0;}

.page-cta{
  background:linear-gradient(135deg,rgba(8,120,255,.06),rgba(43,192,192,.05));
  border:1px solid rgba(8,120,255,.14);
  border-radius:0;padding:2rem;margin-top:2.6rem;text-align:center;
}
.page-cta h2{margin-bottom:.5rem;}
.page-cta p{max-width:34rem;margin:0 auto 1.3rem;}
.page-cta .actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;}

@media(max-width:600px){
  header.page-head{padding-top:2.4rem;}
  main h2{font-size:1.18rem;}
  .page-cta{padding:1.5rem 1.15rem;}
  .page-cta .actions .btn{width:100%;}
}

.sb-thumb{display:block;margin:-1.15rem -1.25rem 1.1rem;border-radius:0;overflow:hidden;background:#EEF4FB;}
.sb-thumb img{width:100%;height:7.5rem;object-fit:cover;display:block;transition:transform .4s;}
.sb-card:hover .sb-thumb img{transform:scale(1.03);}

.about-photo{display:block;margin:0 0 2rem;border-radius:0;overflow:hidden;background:#EEF4FB;}
.about-photo img{width:100%;height:15rem;object-fit:cover;display:block;}
@media (max-width:600px){.about-photo img{height:10rem;}}

.industry-photo{display:block;margin:0 0 2rem;border-radius:0;overflow:hidden;background:#EEF4FB;}
.industry-photo img{width:100%;height:14rem;object-fit:cover;display:block;}
@media (max-width:760px){.industry-photo img{height:9.5rem;}}

.bottleneck-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-top:1.2rem;}
.bottleneck{background:var(--amber-soft);border:1px solid var(--amber-line);border-radius:0;padding:1.15rem 1.25rem;}
.bottleneck h3{margin:0 0 .4rem;font-size:1rem;color:var(--navy-full);position:relative;padding-left:1.35rem;}
.bottleneck h3::before{content:'';position:absolute;left:0;top:.42em;width:.6rem;height:.6rem;border:1.7px solid var(--amber-mark-2);border-radius:0;transform:rotate(45deg);}
.bottleneck p{margin:0;font-size:.9rem;line-height:1.55;color:var(--muted);}

.other-industries{margin-top:2.5rem;}
.other-industries h2{margin-bottom:.9rem;}
.other-industries-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;}
.other-industries-grid a{display:block;padding:.85rem 1rem;border:1px solid var(--border);border-radius:0;background:#fff;text-decoration:none;color:var(--navy-full);font-size:.9rem;font-weight:600;transition:border-color .2s,transform .2s;}
.other-industries-grid a:hover{border-color:rgba(8,120,255,.35);box-shadow:none;;text-decoration:none;}

@media (max-width:760px){
  .bottleneck-grid,.other-industries-grid{grid-template-columns:1fr;}
}

.diag-intro{font-size:1.05rem;line-height:1.65;color:var(--navy);margin:0 0 .5rem;}
.diag-how-link{margin:.9rem 0 0;font-size:.9rem;}

.diag-steps{list-style:none;margin:1.2rem 0 0;padding:0;counter-reset:diag;display:grid;gap:.85rem;}
.diag-steps li{counter-increment:diag;position:relative;padding:1.15rem 1.3rem 1.15rem 3.4rem;border:1px solid var(--border);border-radius:0;background:#fff;}
.diag-steps li::before{content:counter(diag);position:absolute;left:1.2rem;top:1.15rem;display:flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border-radius:0;background:var(--blue-soft);color:var(--blue-deep);font-size:.78rem;font-weight:700;}
.diag-steps h3{margin:0 0 .3rem;font-size:1rem;color:var(--navy-full);}
.diag-steps p{margin:0;font-size:.92rem;line-height:1.6;color:var(--muted);}

.diag-deliverable{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.6rem;}
.diag-deliverable li{position:relative;padding-left:1.6rem;font-size:.95rem;line-height:1.5;color:var(--muted);}
.diag-deliverable li::before{content:'';position:absolute;left:.2rem;top:.42em;width:.55rem;height:.3rem;border-left:2px solid var(--blue);border-bottom:2px solid var(--blue);transform:rotate(-45deg);}
.diag-note{margin-top:1.1rem;padding:.9rem 1.1rem;background:var(--blue-soft);border-radius:0;font-size:.9rem;line-height:1.55;color:var(--navy);}

.diag-help,.diag-not{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.75rem;}
.diag-help li,.diag-not li{padding:1rem 1.15rem;border-radius:0;font-size:.92rem;line-height:1.55;color:var(--muted);}
.diag-help li{background:#F8FBFF;border:1px solid rgba(8,120,255,.16);}
.diag-help li strong{display:block;color:var(--navy-full);margin-bottom:.15rem;}
.diag-not li{background:var(--amber-soft);border:1px solid var(--amber-line);}
.diag-not li strong{display:block;color:var(--navy-full);margin-bottom:.15rem;}

header.page-head h1{
  font-size:clamp(1.9rem,3.4vw,2.85rem);font-weight:600;
  letter-spacing:-.025em;line-height:1.12;color:var(--ink);
}
main h2{font-size:1.375rem;font-weight:600;letter-spacing:-.018em;color:var(--ink);}
main h3{font-size:1.0625rem;font-weight:600;color:var(--ink);}
main h4{font-size:.9375rem;font-weight:600;color:var(--ink);}
main strong{color:var(--ink);font-weight:600;}

.crumbs{max-width:820px;padding:1.25rem 1.5rem .25rem;}

.about-photo,.industry-photo,.sv-photo,.sb-thumb{border-radius:0;}

.page-cta{
  background:var(--paper);border:1px solid var(--line);
}

/* The title link ::after covers the card: a card with more than one link cannot use this pattern. */
.sb-card{position:relative;transition:border-color .18s;}
.sb-card h3 a::after{content:'';position:absolute;inset:0;z-index:1;}
.sb-card:hover{border-color:var(--ink-3);}

@media(pointer:coarse){
  main li>a:first-child,main h3>a{display:inline-block;padding:.8125rem 0;margin:-.8125rem 0;}
}
