:root{
  --ink:#07070c;--paper:#f5f5f8;--white:#fff;--muted:#666677;--line:#d9d9e2;
  --coral:#ff4820;--amber:#ff9500;--gold:#ffd166;--cyan:#0f8195;--green:#18734c;
  --display:'IBM Plex Serif',Georgia,serif;--body:'DM Sans',sans-serif;--mono:'JetBrains Mono',monospace;
  --max:1120px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.68}
a{color:inherit}img{display:block;max-width:100%}
.skip{position:absolute;left:-999px;top:8px}.skip:focus{left:8px;z-index:99;background:#fff;padding:10px 14px}
.shell{width:min(var(--max),calc(100% - 40px));margin-inline:auto}
.site-nav{position:sticky;top:0;z-index:20;background:rgba(245,245,248,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.nav-inner{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.wordmark img{width:116px;height:auto}.nav-links{display:flex;align-items:center;gap:26px;font-size:14px;font-weight:600}
.nav-links a{text-decoration:none}.nav-links a:hover,.nav-links a:focus-visible{color:#a52c12}
.nav-links .lang-link{font-family:var(--mono);font-size:11px;color:var(--amber);padding-inline:4px}
.nav-cta{background:var(--ink);color:#fff!important;padding:10px 16px;border-radius:5px}
.mobile-menu{display:none}.mobile-menu summary{cursor:pointer;font-family:var(--mono);font-size:12px}
@media(max-width:900px){.nav-links{display:none}.mobile-menu{display:block;position:relative}.mobile-menu[open] nav{position:absolute;z-index:20;right:0;top:34px;width:260px;background:#fff;border:1px solid var(--line);padding:14px;box-shadow:0 15px 30px rgba(0,0,0,.14)}.mobile-menu nav a{display:block;padding:9px;text-decoration:none}}
.hero{min-height:620px;display:grid;align-items:center;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:72px 72px;opacity:.28;pointer-events:none}
.hero-inner{position:relative;padding:84px 0 72px;max-width:920px}.hero-mark{width:66px;margin-bottom:30px}
.eyebrow{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:11px;text-transform:uppercase;color:#9c2d16;letter-spacing:.12em}
.eyebrow::before{content:'';width:28px;height:2px;background:var(--coral)}
h1,h2,h3{font-family:var(--display);letter-spacing:0;line-height:1.08;margin:0}
h1{font-size:clamp(2.8rem,7vw,5.8rem);max-width:930px;margin-top:24px}.hero p{font-size:clamp(1.08rem,2vw,1.35rem);max-width:760px;color:#4f4f5d;margin:28px 0 0}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 19px;border:1px solid var(--ink);border-radius:5px;text-decoration:none;font-weight:700;font-size:14px}
.button.primary{background:var(--ink);color:#fff}.button.secondary{background:transparent}.button:hover,.button:focus-visible{transform:translateY(-1px);box-shadow:0 6px 0 var(--gold)}
.proof-strip{background:var(--ink);color:#fff}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#2a2a34}.proof-item{background:var(--ink);padding:24px}.proof-item strong{display:block;font-family:var(--display);font-size:1.25rem}.proof-item span{display:block;color:#a8a8ba;font-size:13px;margin-top:4px}
.band{padding:88px 0;border-bottom:1px solid var(--line)}.band.white{background:var(--white)}.band.dark{background:var(--ink);color:#fff}.band-head{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;margin-bottom:52px}.kicker{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#a43119}.dark .kicker{color:var(--gold)}.band h2{font-size:clamp(2rem,4vw,3.6rem)}.band-intro{font-size:1.12rem;color:var(--muted);margin:0;max-width:720px}.dark .band-intro{color:#aaaabc}
.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:70px 1fr 1.1fr 34px;gap:30px;align-items:start;padding:32px 0;border-bottom:1px solid var(--line);text-decoration:none}.service-row:hover h3,.service-row:focus-visible h3{color:#a52c12}.service-n{font-family:var(--mono);font-size:12px;color:#a52c12}.service-row h3{font-size:1.65rem}.service-row p{margin:0;color:var(--muted)}.service-arrow{font-size:24px;color:var(--coral)}
.deliverables{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}.deliverable{background:var(--white);padding:30px}.deliverable h3{font-size:1.28rem;margin-bottom:10px}.deliverable p{margin:0;color:var(--muted);font-size:.96rem}
.steps{counter-reset:step;border-top:1px solid #30303c}.step{counter-increment:step;display:grid;grid-template-columns:72px .8fr 1.2fr;gap:30px;padding:28px 0;border-bottom:1px solid #30303c}.step::before{content:'0' counter(step);font-family:var(--mono);color:var(--gold)}.step h3{font-size:1.32rem}.step p{margin:0;color:#aaaabc}
.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px}.checklist{list-style:none;margin:24px 0 0;padding:0;border-top:1px solid var(--line)}.checklist li{position:relative;padding:15px 0 15px 28px;border-bottom:1px solid var(--line)}.checklist li::before{content:'+';position:absolute;left:0;color:var(--coral);font-family:var(--mono);font-weight:700}
.questions{max-width:860px}.questions details{border-top:1px solid var(--line);padding:20px 0}.questions details:last-child{border-bottom:1px solid var(--line)}.questions summary{cursor:pointer;font-family:var(--display);font-size:1.22rem;font-weight:700}.questions p{color:var(--muted);margin:12px 0 0}
.cta-band{background:var(--gold);padding:72px 0}.cta-inner{display:grid;grid-template-columns:1.4fr .6fr;align-items:end;gap:40px}.cta-inner h2{font-size:clamp(2.2rem,5vw,4.4rem)}.cta-inner p{margin:18px 0 0;max-width:680px}.cta-actions{display:flex;flex-direction:column;gap:10px}
.footer{background:var(--ink);color:#fff;padding:48px 0}.footer-inner{display:grid;grid-template-columns:1fr 2fr;gap:40px}.footer img{width:116px}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.footer h3{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#aaaabc;margin-bottom:12px}.footer a{display:block;color:#d8d8e1;text-decoration:none;font-size:14px;margin:7px 0}.legal{border-top:1px solid #30303c;margin-top:36px;padding-top:22px;color:#88889a;font-size:12px}
@media(max-width:760px){
  body{font-size:16px}.shell{width:min(100% - 32px,var(--max))}.nav-links{display:none}.mobile-menu{display:block;position:relative}.mobile-menu[open] nav{position:absolute;right:0;top:34px;width:260px;background:#fff;border:1px solid var(--line);padding:14px;box-shadow:0 15px 30px rgba(0,0,0,.14)}.mobile-menu nav a{display:block;padding:9px;text-decoration:none}
  .hero{min-height:auto}.hero-inner{padding:64px 0}.hero-mark{width:52px}.proof-grid{grid-template-columns:1fr 1fr}.band{padding:64px 0}.band-head,.fit-grid,.cta-inner,.footer-inner{grid-template-columns:1fr;gap:26px}.service-row{grid-template-columns:42px 1fr 24px;gap:14px}.service-row p{grid-column:2/4}.deliverables{grid-template-columns:1fr}.step{grid-template-columns:42px 1fr}.step p{grid-column:2}.footer-links{grid-template-columns:1fr 1fr}.cta-actions{align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button:hover{transform:none}}

/* Component refinement: shared by the Portuguese and English service surfaces. */
a:focus-visible,
button:focus-visible,
summary:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }

.nav-links a { position: relative; transition: color .18s ease; }
.nav-links a[aria-current="page"]::after {
  content: '';
  position: absolute;
  right: 0;
  bottom: -9px;
  left: 0;
  height: 2px;
  background: var(--coral);
}
.nav-cta { transition: transform .18s ease, box-shadow .18s ease; }
.nav-cta:hover,
.nav-cta:focus-visible { transform: translateY(-1px); box-shadow: 0 4px 0 var(--gold); }

.hero-mark { animation: lumina-breathe 4.2s ease-in-out infinite; }
.button { transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }

.proof-item { position: relative; transition: background .18s ease; }
.proof-item::before {
  content: '';
  position: absolute;
  top: 0;
  right: 24px;
  left: 24px;
  height: 2px;
  background: var(--gold);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .22s ease;
}
.proof-item:hover::before { transform: scaleX(1); }

.service-arrow { transition: transform .18s ease; }
.service-row:hover .service-arrow,
.service-row:focus-visible .service-arrow { transform: translateX(5px); }

.checklist li { transition: color .18s ease, padding-left .18s ease; }
.checklist li:hover { padding-left: 32px; color: #2f2f3c; }

.questions summary {
  position: relative;
  list-style: none;
  padding-right: 42px;
}
.questions summary::-webkit-details-marker { display: none; }
.questions summary::after {
  content: '+';
  position: absolute;
  top: 50%;
  right: 4px;
  color: var(--coral);
  font-family: var(--mono);
  font-size: 1.2rem;
  transform: translateY(-50%);
}
.questions details[open] summary::after { content: '\2212'; }
.questions details[open] summary { color: #8d2b17; }
.questions p { max-width: 740px; }

.cta-band { position: relative; overflow: hidden; }
.cta-band::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(6,6,11,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(6,6,11,.06) 1px, transparent 1px);
  background-size: 48px 48px;
  pointer-events: none;
}
.cta-inner { position: relative; }
.cta-actions > a:not(.button) { width: max-content; text-underline-offset: 4px; }

.footer a { transition: color .18s ease; }
.footer a:hover,
.footer a:focus-visible { color: var(--gold); }

@keyframes lumina-breathe {
  0%, 100% { filter: drop-shadow(0 0 8px rgba(255,149,0,.18)); }
  50% { filter: drop-shadow(0 0 20px rgba(255,149,0,.42)); }
}

@media(max-width:760px) {
  .mobile-menu summary { list-style: none; min-width: 52px; padding: 10px 0; text-align: right; }
  .mobile-menu summary::-webkit-details-marker { display: none; }
  .mobile-menu[open] nav { border-radius: 5px; }
  .mobile-menu nav a { border-bottom: 1px solid rgba(128,128,144,.18); }
  .mobile-menu nav a:last-child { border-bottom: 0; }
  .proof-item::before { right: 18px; left: 18px; }
}

@media(prefers-reduced-motion:reduce) {
  .hero-mark { animation: none; }
  .nav-cta:hover,
  .service-row:hover .service-arrow,
  .service-row:focus-visible .service-arrow { transform: none; }
}
