:root {
  --green: #008c64;
  --green-dark: #05654f;
  --green-deep: #073f34;
  --mint: #e8f4ef;
  --mint-2: #f3f8f6;
  --ink: #16211d;
  --muted: #607069;
  --line: #dce6e1;
  --soft: #f7f8f7;
  --warm: #f4f0e8;
  --white: #fff;
  --shadow: 0 22px 60px rgba(8, 49, 38, .10);
  --radius: 24px;
  --radius-sm: 16px;
  --container: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--white);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }

.container { width: min(calc(100% - 40px), var(--container)); margin: 0 auto; }
.section { padding: 104px 0; }
.section.compact { padding: 78px 0; }
.section.soft { background: var(--soft); }
.section.mint { background: var(--mint-2); }
.section.dark { background: var(--green-deep); color: #fff; }

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--green);
  text-transform: uppercase;
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .14em;
  margin-bottom: 16px;
}
.eyebrow::before { content: ""; width: 28px; height: 2px; background: currentColor; border-radius: 99px; }
.section.dark .eyebrow { color: #87d8bb; }

h1, h2, h3 { margin: 0; line-height: 1.08; letter-spacing: -.035em; }
h1 { font-size: clamp(2.8rem, 5.3vw, 5.2rem); max-width: 880px; }
h2 { font-size: clamp(2.05rem, 3.3vw, 3.55rem); }
h3 { font-size: 1.25rem; }
p { margin: 0; }
.lead { font-size: clamp(1.05rem, 1.45vw, 1.28rem); color: var(--muted); line-height: 1.65; }
.section.dark .lead { color: rgba(255,255,255,.74); }

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 22px;
  border-radius: 999px;
  font-weight: 760;
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
  border: 1px solid transparent;
}
.btn:hover { transform: translateY(-2px); }
.btn.primary { background: var(--green); color: #fff; box-shadow: 0 12px 30px rgba(0,140,100,.24); }
.btn.primary:hover { background: var(--green-dark); }
.btn.secondary { border-color: #bfd5cc; background: rgba(255,255,255,.74); color: var(--green-deep); }
.btn.secondary:hover { background: #fff; }
.btn.light { background: #fff; color: var(--green-deep); }
.link-arrow { color: var(--green-dark); font-weight: 780; display: inline-flex; gap: 8px; align-items: center; }
.link-arrow::after { content: "→"; transition: transform .2s ease; }
.link-arrow:hover::after { transform: translateX(4px); }

/* Header */
.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255,255,255,.91);
  border-bottom: 1px solid rgba(220,230,225,.8);
  backdrop-filter: blur(14px);
}
.nav { min-height: 84px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand img { width: 230px; height: auto; }
.nav-links { display: flex; align-items: center; gap: 28px; font-weight: 650; color: #33443d; font-size: .95rem; }
.nav-links a:hover { color: var(--green); }
.nav-actions { display: flex; align-items: center; gap: 12px; }
.menu-btn { display:none; border:0; background:transparent; width:44px; height:44px; border-radius:50%; }

/* Hero */
.hero { padding: 64px 0 82px; overflow: hidden; }
.hero-grid { display: grid; grid-template-columns: 1.02fr .98fr; gap: 62px; align-items: center; }
.hero-copy .lead { max-width: 720px; margin-top: 24px; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 30px; }
.hero-note { margin-top: 24px; display:flex; align-items:flex-start; gap:10px; color:#52635c; font-size:.93rem; max-width: 620px; }
.hero-note .dot { width: 8px; height: 8px; background: var(--green); border-radius:50%; margin-top:8px; flex:none; }
.hero-media { position: relative; }
.hero-media::before { content:""; position:absolute; width:260px; height:260px; border-radius:50%; background:#d7eee5; top:-60px; right:-80px; z-index:-1; }
.hero-photo { border-radius: 34px; min-height: 600px; width:100%; object-fit:cover; object-position: 58% center; box-shadow: var(--shadow); }
.hero-badge {
  position:absolute;
  left:-30px;
  bottom: 34px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:20px;
  padding:18px 20px;
  width: 255px;
  box-shadow: var(--shadow);
}
.hero-badge strong { display:block; color:var(--green-deep); font-size:1.02rem; margin-bottom:4px; }
.hero-badge span { color:var(--muted); font-size:.86rem; }

/* Intro strip */
.trust-strip { border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:#fff; }
.trust-grid { padding:24px 0; display:grid; grid-template-columns: repeat(4,1fr); gap: 20px; }
.trust-item { display:flex; gap:12px; align-items:center; color:#395047; font-weight:680; }
.icon { width:42px; height:42px; border-radius:14px; background:var(--mint); color:var(--green); display:grid; place-items:center; flex:none; }
.icon svg { width:21px; height:21px; }

/* Section headings */
.section-head { display:grid; grid-template-columns: .9fr 1.1fr; gap: 72px; align-items:end; margin-bottom: 52px; }
.section-head .lead { max-width: 700px; }

/* Problem cards */
.problem-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.problem-card { background:#fff; border:1px solid var(--line); border-radius:var(--radius-sm); padding:28px; min-height:190px; transition:.2s ease; }
.problem-card:hover { transform:translateY(-4px); box-shadow:0 16px 38px rgba(4,72,52,.08); border-color:#c5dcd3; }
.problem-card .num { color:var(--green); font-weight:850; font-size:.77rem; letter-spacing:.12em; margin-bottom:28px; }
.problem-card h3 { margin-bottom:10px; }
.problem-card p { color:var(--muted); font-size:.95rem; }

/* Need / solution cards */
.need-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.need-card { position:relative; overflow:hidden; border-radius:22px; min-height:360px; color:#fff; display:flex; align-items:flex-end; isolation:isolate; }
.need-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; transition:transform .5s ease; }
.need-card::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(5,40,32,.04) 20%, rgba(3,43,33,.86) 88%); z-index:-1; }
.need-card:hover img { transform:scale(1.04); }
.need-card .content { padding:28px; }
.need-card .tag { display:inline-flex; font-size:.74rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:#bbefdc; margin-bottom:9px; }
.need-card h3 { font-size:1.45rem; margin-bottom:8px; }
.need-card p { color:rgba(255,255,255,.82); font-size:.93rem; }

/* Journey */
.journey { display:grid; grid-template-columns:repeat(5,1fr); gap:0; margin-top:50px; border-top:1px solid rgba(255,255,255,.2); }
.journey-step { padding:28px 22px 0 0; position:relative; }
.journey-step::before { content:""; position:absolute; width:11px; height:11px; background:#7bd1b2; border-radius:50%; top:-6px; left:0; box-shadow:0 0 0 6px rgba(123,209,178,.15); }
.journey-step span { color:#8bdabf; font-weight:850; font-size:.8rem; letter-spacing:.08em; }
.journey-step h3 { margin:12px 0 8px; color:#fff; }
.journey-step p { color:rgba(255,255,255,.67); font-size:.9rem; }

/* Service cards */
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.service-card { border:1px solid var(--line); border-radius:20px; padding:28px; background:#fff; display:flex; min-height:245px; flex-direction:column; }
.service-card .service-icon { width:48px;height:48px;border-radius:15px;background:var(--mint);color:var(--green);display:grid;place-items:center;margin-bottom:38px;font-weight:900; }
.service-card h3 { margin-bottom:10px; font-size:1.33rem; }
.service-card p { color:var(--muted); font-size:.94rem; margin-bottom:24px; }
.service-card .link-arrow { margin-top:auto; }

/* NR1 */
.nr-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:62px; align-items:center; }
.nr-photo-wrap { position:relative; }
.nr-photo { border-radius:28px; height:540px; width:100%; object-fit:cover; box-shadow:var(--shadow); }
.nr-label { position:absolute; right:-20px; bottom:28px; width:225px; border-radius:18px; background:var(--green); color:white; padding:20px; box-shadow:var(--shadow); }
.nr-label strong { display:block; margin-bottom:4px; }
.nr-copy .lead { margin:20px 0 26px; }
.check-list { display:grid; gap:12px; margin:0 0 30px; padding:0; list-style:none; }
.check-list li { display:flex; gap:10px; align-items:flex-start; color:#40534a; }
.check { width:22px; height:22px; border-radius:50%; background:var(--mint); color:var(--green); display:grid; place-items:center; font-weight:900; flex:none; margin-top:2px; }

/* Why make */
.diff-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:14px; margin-top:44px; }
.diff-card { background:#fff; border:1px solid var(--line); border-radius:18px; padding:24px 20px; }
.diff-card strong { display:block; color:var(--green-deep); margin-bottom:8px; }
.diff-card p { color:var(--muted); font-size:.9rem; }

/* About */
.about-grid { display:grid; grid-template-columns: .95fr 1.05fr; gap:70px; align-items:center; }
.founders { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.founder-card { background:#fff; border:1px solid var(--line); border-radius:22px; padding:28px; min-height:245px; display:flex; flex-direction:column; }
.initial { width:54px; height:54px; border-radius:50%; background:var(--green-deep); color:#fff; display:grid; place-items:center; font-weight:850; margin-bottom:42px; }
.founder-card span { color:var(--muted); margin-top:8px; font-size:.9rem; }
.about-copy .lead { margin:20px 0 24px; }

/* Gallery */
.gallery-grid { display:grid; grid-template-columns:1.15fr .85fr; grid-template-rows:290px 290px; gap:16px; margin-top:44px; }
.gallery-grid img { width:100%; height:100%; object-fit:cover; border-radius:20px; }
.gallery-grid .main { grid-row:1/3; }

/* Content */
.article-grid { display:grid; grid-template-columns: 1.15fr .85fr .85fr; gap:20px; }
.article-card { border:1px solid var(--line); border-radius:20px; overflow:hidden; background:#fff; display:flex; flex-direction:column; }
.article-card img { width:100%; aspect-ratio:16/9; object-fit:cover; }
.article-card .body { padding:24px; display:flex; flex-direction:column; flex:1; }
.article-card .meta { color:var(--green); text-transform:uppercase; font-size:.72rem; font-weight:850; letter-spacing:.08em; margin-bottom:10px; }
.article-card h3 { font-size:1.2rem; margin-bottom:12px; }
.article-card p { color:var(--muted); font-size:.9rem; margin-bottom:22px; }
.article-card .link-arrow { margin-top:auto; }

/* CTA */
.final-cta { background:linear-gradient(135deg, var(--green-deep), #006c51); border-radius:32px; color:#fff; padding:62px; display:grid; grid-template-columns:1.2fr .8fr; gap:48px; align-items:center; overflow:hidden; position:relative; }
.final-cta::after { content:""; position:absolute; width:360px;height:360px;border-radius:50%; background:rgba(255,255,255,.06); right:-130px; top:-150px; }
.final-cta h2 { max-width:760px; }
.final-cta p { color:rgba(255,255,255,.72); margin-top:18px; max-width:740px; }
.final-cta .actions { display:flex; justify-content:flex-end; position:relative; z-index:1; }

/* Footer */
.footer { margin-top:104px; background:#081a15; color:#dce9e4; padding:70px 0 32px; }
.footer-grid { display:grid; grid-template-columns:1.25fr repeat(3,.75fr); gap:48px; }
.footer-brand img { filter:none; opacity:.96; width:230px; }
.footer-brand p { color:#91a69d; margin-top:20px; max-width:360px; }
.footer h4 { color:#fff; margin:0 0 18px; }
.footer ul { list-style:none; padding:0; margin:0; display:grid; gap:10px; }
.footer a { color:#a9bbb4; font-size:.93rem; }
.footer a:hover { color:#fff; }
.footer-bottom { margin-top:50px; padding-top:24px; border-top:1px solid rgba(255,255,255,.09); color:#71877d; font-size:.85rem; display:flex; justify-content:space-between; gap:18px; }

@media (max-width: 1020px) {
  .nav-links { display:none; }
  .menu-btn { display:grid; place-items:center; }
  .nav-actions .btn { display:none; }
  .hero-grid, .nr-grid, .about-grid, .section-head { grid-template-columns:1fr; gap:34px; }
  .hero-photo { min-height:500px; }
  .hero-badge { left:20px; }
  .trust-grid { grid-template-columns:1fr 1fr; }
  .problem-grid, .need-grid, .service-grid { grid-template-columns:1fr 1fr; }
  .journey { grid-template-columns:1fr; border-top:0; gap:18px; }
  .journey-step { padding:0 0 0 30px; }
  .journey-step::before { top:7px; }
  .diff-grid { grid-template-columns:1fr 1fr; }
  .article-grid { grid-template-columns:1fr 1fr; }
  .article-card:first-child { grid-column:1/3; }
  .final-cta { grid-template-columns:1fr; }
  .final-cta .actions { justify-content:flex-start; }
  .footer-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width: 680px) {
  .container { width:min(calc(100% - 28px), var(--container)); }
  .section { padding:74px 0; }
  .nav { min-height:74px; }
  .brand img { width:192px; }
  .hero { padding:42px 0 62px; }
  .hero-grid { gap:38px; }
  h1 { font-size:clamp(2.55rem, 13vw, 3.8rem); }
  .hero-actions { flex-direction:column; align-items:stretch; }
  .hero-actions .btn { width:100%; }
  .hero-photo { min-height:390px; border-radius:24px; }
  .hero-badge { position:static; margin-top:14px; width:auto; }
  .trust-grid, .problem-grid, .need-grid, .service-grid, .diff-grid, .founders, .article-grid, .footer-grid { grid-template-columns:1fr; }
  .article-card:first-child { grid-column:auto; }
  .gallery-grid { grid-template-columns:1fr; grid-template-rows:250px 250px 250px; }
  .gallery-grid .main { grid-row:auto; }
  .nr-photo { height:400px; }
  .nr-label { right:12px; bottom:12px; }
  .final-cta { padding:38px 28px; border-radius:24px; }
  .footer-bottom { flex-direction:column; }
}


/* Mobile navigation for the cPanel staging build */
@media (max-width: 1020px) {
  .nav { position: relative; }
  .menu-btn { cursor: pointer; color: var(--green-deep); font-size: 1.65rem; line-height: 1; }
  .nav-links.mobile-open {
    display: flex;
    position: absolute;
    top: calc(100% + 1px);
    left: 0;
    right: 0;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 10px 20px 18px;
    background: rgba(255,255,255,.98);
    border: 1px solid var(--line);
    border-top: 0;
    border-radius: 0 0 18px 18px;
    box-shadow: 0 18px 45px rgba(8,49,38,.12);
  }
  .nav-links.mobile-open a { padding: 13px 0; border-bottom: 1px solid #edf2ef; }
  .nav-links.mobile-open a:last-child { border-bottom: 0; }
}

/* Home v2 — imagem única por ocorrência */
.need-card.graphic {
  min-height: 310px;
  color: var(--ink);
  background: linear-gradient(145deg, #f7fbf9 0%, #edf7f3 100%);
  border: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: space-between;
  padding: 28px;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.need-card.graphic::after { display: none; }
.need-card.graphic:hover { transform: translateY(-4px); box-shadow: 0 18px 42px rgba(4,72,52,.08); border-color: #bed9cf; }
.need-card.graphic .need-icon {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  background: var(--green-deep);
  color: #fff;
  font-weight: 900;
  font-size: .82rem;
  letter-spacing: .08em;
}
.need-card.graphic .content { padding: 34px 0 0; }
.need-card.graphic .tag { color: var(--green); }
.need-card.graphic h3 { color: var(--green-deep); font-size: 1.5rem; }
.need-card.graphic p { color: var(--muted); margin-top: 10px; }
.need-card.graphic .card-arrow { display: inline-block; margin-top: 24px; color: var(--green-dark); font-size: .9rem; font-weight: 800; }

.founder-card { padding: 0; overflow: hidden; min-height: 390px; }
.founder-photo { width: 100%; aspect-ratio: 5/4; object-fit: cover; object-position: center 28%; }
.founder-card:nth-child(2) .founder-photo { object-position: center 18%; }
.founder-body { padding: 22px 24px 26px; display: flex; flex-direction: column; flex: 1; }
.founder-kicker { display: block; color: var(--green); text-transform: uppercase; font-size: .74rem; font-weight: 850; letter-spacing: .09em; margin-bottom: 8px; }
.founder-body h3 { font-size: 1.14rem; line-height: 1.25; margin-bottom: 20px; }
.founder-body .link-arrow { margin-top: auto; }

.article-grid.editorial { grid-template-columns: 1.15fr .85fr .85fr; }
.editorial-card { position: relative; min-height: 360px; overflow: hidden; }
.editorial-card::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 5px; background: var(--green); }
.editorial-card:nth-child(2)::before { background: var(--green-deep); }
.editorial-card:nth-child(3)::before { background: #8eb9a9; }
.article-index { padding: 26px 24px 0; color: #b9cbc4; font-size: 3.3rem; line-height: 1; font-weight: 900; letter-spacing: -.06em; }
.editorial-card .body { padding-top: 18px; }

@media (max-width: 1020px) {
  .article-grid.editorial { grid-template-columns: 1fr 1fr; }
  .article-grid.editorial .editorial-card:first-child { grid-column: 1/3; min-height: 300px; }
}
@media (max-width: 680px) {
  .article-grid.editorial { grid-template-columns: 1fr; }
  .article-grid.editorial .editorial-card:first-child { grid-column: auto; }
  .founder-photo { aspect-ratio: 4/3; }
}

/* Solutions page */
.nav-links a.active { color: var(--green); }
.solutions-hero { padding: 88px 0 96px; overflow: hidden; background: linear-gradient(180deg,#fff 0%,#f8fbf9 100%); }
.solutions-hero-grid { display:grid; grid-template-columns: 1.03fr .97fr; gap:70px; align-items:center; }
.solutions-hero .lead { margin-top:24px; max-width:760px; }
.solutions-map { min-height:560px; position:relative; border-radius:36px; background: radial-gradient(circle at 50% 50%,#dff1ea 0 18%,transparent 18.5%), linear-gradient(145deg,#edf7f3,#f9fbfa); border:1px solid var(--line); box-shadow:var(--shadow); }
.solutions-map::before, .solutions-map::after { content:""; position:absolute; inset:50% auto auto 50%; transform:translate(-50%,-50%); border:1px dashed #b7d7ca; border-radius:50%; width:360px; height:360px; }
.solutions-map::after { width:470px; height:470px; opacity:.55; }
.map-center { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:210px; min-height:210px; border-radius:50%; background:var(--green-deep); color:#fff; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:30px; z-index:3; box-shadow:0 18px 46px rgba(7,63,52,.22); }
.map-center span { color:#82d4b6; font-size:.75rem; font-weight:900; letter-spacing:.16em; margin-bottom:9px; }
.map-center strong { font-size:1.05rem; line-height:1.3; }
.map-node { position:absolute; width:130px; min-height:82px; border-radius:18px; padding:15px 16px; background:#fff; border:1px solid var(--line); box-shadow:0 12px 30px rgba(8,49,38,.08); z-index:4; display:flex; flex-direction:column; justify-content:center; }
.map-node b { color:var(--green); font-size:.7rem; letter-spacing:.1em; margin-bottom:2px; }
.map-node span { color:var(--green-deep); font-weight:800; font-size:.9rem; }
.map-node.n1 { top:52px; left:70px; } .map-node.n2 { top:58px; right:62px; } .map-node.n3 { top:240px; left:24px; } .map-node.n4 { top:240px; right:24px; } .map-node.n5 { bottom:52px; left:76px; } .map-node.n6 { bottom:48px; right:66px; }
.solutions-principle { padding:100px 0; }
.principle-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:72px; align-items:end; }
.principle-grid .lead { margin-bottom:24px; }
.objectives-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:54px; }
.objectives-grid article { min-height:210px; border:1px solid var(--line); border-radius:20px; padding:26px; background:#fff; }
.objectives-grid article > span { color:var(--green); font-size:.72rem; font-weight:900; letter-spacing:.12em; }
.objectives-grid h3 { margin:28px 0 10px; font-size:1.28rem; }
.objectives-grid p { color:var(--muted); font-size:.93rem; }
.depth-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.depth-card { border-radius:26px; padding:32px; min-height:430px; display:flex; flex-direction:column; border:1px solid var(--line); background:#fff; }
.depth-card.entry { background:#fbfdfc; } .depth-card.develop { background:#edf7f3; } .depth-card.continuity { background:var(--green-deep); color:#fff; border-color:transparent; }
.depth-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:70px; }
.depth-top span { text-transform:uppercase; font-size:.72rem; letter-spacing:.12em; font-weight:850; color:var(--green); }
.depth-top strong { color:#b7ccc4; font-size:2.2rem; line-height:1; }
.depth-card.continuity .depth-top span { color:#8bdabf; } .depth-card.continuity .depth-top strong { color:rgba(255,255,255,.24); }
.depth-card h3 { font-size:1.52rem; margin-bottom:14px; }
.depth-card p { color:var(--muted); font-size:.94rem; }
.depth-card.continuity p { color:rgba(255,255,255,.7); }
.depth-card ul { list-style:none; padding:0; margin:auto 0 0; display:grid; gap:10px; }
.depth-card li { position:relative; padding-left:21px; font-size:.91rem; color:#42564d; }
.depth-card li::before { content:""; width:7px; height:7px; border-radius:50%; background:var(--green); position:absolute; left:0; top:.57em; }
.depth-card.continuity li { color:rgba(255,255,255,.82); } .depth-card.continuity li::before { background:#83d6b8; }
.solutions-catalog { display:grid; gap:18px; }
.solution-detail { display:grid; grid-template-columns:92px 1.02fr .98fr; gap:34px; align-items:start; border:1px solid var(--line); border-radius:24px; padding:34px; background:#fff; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.solution-detail:hover { transform:translateY(-3px); box-shadow:0 18px 44px rgba(8,49,38,.07); border-color:#c5dcd3; }
.solution-detail.featured { background:linear-gradient(135deg,#edf7f3,#fff); border-color:#bddbce; }
.solution-number { width:64px; height:64px; border-radius:19px; display:grid; place-items:center; background:var(--mint); color:var(--green); font-size:1rem; font-weight:900; letter-spacing:.08em; }
.solution-tag { display:block; text-transform:uppercase; color:var(--green); font-weight:850; font-size:.7rem; letter-spacing:.11em; margin-bottom:9px; }
.solution-main h3 { font-size:1.75rem; margin-bottom:12px; }
.solution-main p { color:var(--muted); }
.solution-side { border-left:1px solid var(--line); padding-left:30px; }
.solution-side strong { display:block; color:var(--green-deep); font-size:.92rem; margin-bottom:12px; }
.solution-side ul { padding:0; margin:0 0 20px; list-style:none; display:grid; gap:7px; }
.solution-side li { color:var(--muted); font-size:.9rem; padding-left:19px; position:relative; }
.solution-side li::before { content:"✓"; color:var(--green); font-weight:900; position:absolute; left:0; }
.combination-head { display:grid; grid-template-columns:1fr .8fr; gap:70px; align-items:end; }
.combination-flow { display:grid; grid-template-columns:repeat(6,1fr); gap:0; margin-top:60px; border-top:1px solid rgba(255,255,255,.18); }
.combination-flow > div { padding:30px 22px 8px 0; position:relative; }
.combination-flow > div::before { content:""; position:absolute; top:-6px; left:0; width:11px; height:11px; border-radius:50%; background:#7bd1b2; box-shadow:0 0 0 6px rgba(123,209,178,.13); }
.combination-flow span { color:#89dbc0; font-size:.72rem; font-weight:900; letter-spacing:.1em; }
.combination-flow strong { display:block; color:#fff; margin:12px 0 4px; font-size:1rem; }
.combination-flow small { color:rgba(255,255,255,.58); font-size:.8rem; line-height:1.35; }
.nr-cross-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:72px; align-items:start; }
.nr-cross .lead { margin-bottom:16px; }
.nr-note { color:#4f6259; font-size:.88rem; border-left:3px solid #8ccbb5; padding-left:16px; margin:0 0 26px; }
.decision-table { border:1px solid var(--line); border-radius:24px; overflow:hidden; background:#fff; }
.decision-row { display:grid; grid-template-columns:1.1fr .9fr; gap:30px; padding:22px 28px; border-bottom:1px solid var(--line); align-items:center; }
.decision-row:last-child { border-bottom:0; }
.decision-row.header { background:var(--green-deep); color:#fff; font-weight:850; }
.decision-row:not(.header) > div:first-child { font-weight:720; color:#2c4037; }
.decision-row:not(.header) > div:last-child { color:var(--muted); }
.decision-row a { color:var(--green-dark); font-weight:780; }

@media (max-width:1020px) {
  .solutions-hero-grid, .principle-grid, .nr-cross-grid, .combination-head { grid-template-columns:1fr; gap:40px; }
  .solutions-map { min-height:520px; max-width:680px; width:100%; margin:0 auto; }
  .objectives-grid { grid-template-columns:1fr 1fr; }
  .depth-grid { grid-template-columns:1fr; }
  .depth-card { min-height:auto; }
  .depth-top { margin-bottom:38px; }
  .solution-detail { grid-template-columns:76px 1fr; }
  .solution-side { grid-column:2; border-left:0; border-top:1px solid var(--line); padding:22px 0 0; }
  .combination-flow { grid-template-columns:repeat(3,1fr); row-gap:28px; border-top:0; }
  .combination-flow > div { border-top:1px solid rgba(255,255,255,.18); }
}
@media (max-width:680px) {
  .solutions-hero { padding:54px 0 68px; }
  .solutions-map { min-height:auto; padding:22px; display:grid; grid-template-columns:1fr 1fr; gap:10px; border-radius:24px; }
  .solutions-map::before,.solutions-map::after { display:none; }
  .map-center { position:static; transform:none; grid-column:1/3; width:auto; min-height:150px; border-radius:22px; }
  .map-node { position:static; width:auto; min-height:82px; }
  .objectives-grid { grid-template-columns:1fr; }
  .solution-detail { grid-template-columns:1fr; padding:26px; gap:20px; }
  .solution-number { width:54px; height:54px; }
  .solution-side { grid-column:auto; }
  .combination-flow { grid-template-columns:1fr 1fr; }
  .decision-row, .decision-row.header { grid-template-columns:1fr; gap:8px; padding:20px; }
}

/* NR-1 and psychosocial risks page */
.nr1-hero { padding: 88px 0 100px; background: linear-gradient(180deg,#ffffff 0%,#f3f8f6 100%); overflow:hidden; }
.nr1-hero-grid { display:grid; grid-template-columns: 1.04fr .96fr; gap:72px; align-items:center; }
.nr1-hero-copy .lead { margin-top:24px; max-width:800px; }
.nr1-legal-kicker { margin-top:24px; padding-left:16px; border-left:3px solid #9fc9b9; color:var(--muted); font-size:.86rem; max-width:760px; }

.risk-landscape { min-height:590px; border-radius:38px; position:relative; overflow:hidden; background:radial-gradient(circle at 50% 47%,#dff2ea 0 18%,transparent 18.5%), linear-gradient(145deg,#0b493b,#062f28); box-shadow:0 30px 70px rgba(5,55,43,.20); }
.risk-landscape::before { content:""; position:absolute; width:250px; height:250px; border-radius:50%; background:rgba(116,224,183,.13); right:-80px; top:-65px; }
.risk-landscape::after { content:""; position:absolute; width:180px; height:180px; border-radius:50%; background:rgba(255,255,255,.05); left:-60px; bottom:-40px; }
.risk-orbit { position:absolute; left:50%; top:47%; transform:translate(-50%,-50%); border:1px dashed rgba(214,244,233,.28); border-radius:50%; }
.orbit-one { width:350px; height:350px; }
.orbit-two { width:510px; height:510px; }
.risk-center { position:absolute; left:50%; top:47%; transform:translate(-50%,-50%); width:180px; height:180px; border-radius:50%; background:#e8f4ef; color:var(--green-deep); display:flex; flex-direction:column; justify-content:center; text-align:center; padding:24px; z-index:2; box-shadow:0 16px 50px rgba(0,0,0,.18); }
.risk-center small { text-transform:uppercase; letter-spacing:.09em; font-size:.66rem; font-weight:850; color:var(--green); }
.risk-center strong { font-size:1.15rem; line-height:1.2; margin-top:7px; }
.risk-node { position:absolute; width:168px; background:#fff; border-radius:18px; padding:18px 18px 16px; box-shadow:0 14px 38px rgba(0,0,0,.16); z-index:3; }
.risk-node span { display:block; color:var(--green); font-size:.66rem; font-weight:900; letter-spacing:.09em; margin-bottom:8px; }
.risk-node strong { display:block; color:var(--green-deep); font-size:.98rem; line-height:1.2; }
.risk-node small { display:block; color:var(--muted); margin-top:5px; font-size:.75rem; }
.risk-a { left:7%; top:13%; }
.risk-b { right:6%; top:22%; }
.risk-c { right:14%; bottom:11%; }
.risk-note { position:absolute; left:26px; bottom:22px; color:rgba(255,255,255,.62); text-transform:uppercase; font-size:.66rem; letter-spacing:.12em; font-weight:850; }

.nr1-update { background:#fff; }
.nr1-facts { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:44px; }
.nr1-facts article { border:1px solid var(--line); border-radius:22px; padding:30px; background:#fff; min-height:270px; }
.fact-number { width:42px; height:42px; display:grid; place-items:center; border-radius:13px; background:var(--mint); color:var(--green); font-weight:900; font-size:.75rem; margin-bottom:36px; }
.nr1-facts h3 { font-size:1.25rem; margin-bottom:12px; }
.nr1-facts p { color:var(--muted); }

.meaning-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:72px; align-items:start; }
.nr1-meaning .lead { margin-top:22px; }
.meaning-contrast { display:grid; gap:16px; }
.contrast-card { border-radius:24px; padding:30px; border:1px solid var(--line); background:#fff; }
.contrast-card span { display:inline-block; text-transform:uppercase; letter-spacing:.08em; font-size:.7rem; font-weight:850; margin-bottom:14px; }
.contrast-card h3 { font-size:1.35rem; margin-bottom:12px; }
.contrast-card p { color:var(--muted); }
.contrast-card.avoid { background:#fff8f2; border-color:#eadfd5; }
.contrast-card.avoid span { color:#8b5c3e; }
.contrast-card.focus { background:#eef8f4; border-color:#d2e7de; }
.contrast-card.focus span { color:var(--green); }

.risk-example-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:42px; }
.risk-example-card { min-height:300px; border:1px solid var(--line); border-radius:24px; padding:30px; background:linear-gradient(180deg,#fff 0%,#fafcfb 100%); }
.risk-icon { width:58px; height:58px; border-radius:18px; background:var(--green-deep); color:#fff; display:grid; place-items:center; font-size:.8rem; font-weight:900; margin-bottom:50px; }
.risk-example-card h3 { font-size:1.35rem; margin-bottom:12px; }
.risk-example-card p { color:var(--muted); }

.nr1-integration { background:var(--green-deep); color:#fff; }
.nr1-integration .lead { color:rgba(255,255,255,.72); }
.integration-board { display:grid; grid-template-columns:1fr 72px 1fr; align-items:stretch; margin-top:46px; }
.integration-lane { border-radius:26px; padding:34px; min-height:360px; }
.integration-lane.technical { background:#fff; color:var(--ink); }
.integration-lane.human { background:#0d5d4b; border:1px solid rgba(255,255,255,.13); }
.lane-label { display:inline-block; font-size:.72rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; margin-bottom:22px; }
.technical .lane-label { color:var(--green); }
.human .lane-label { color:#9de2c8; }
.integration-lane h3 { font-size:1.45rem; margin-bottom:24px; }
.integration-lane ul { margin:0; padding:0; list-style:none; display:grid; gap:13px; }
.integration-lane li { position:relative; padding-left:24px; color:var(--muted); }
.integration-lane.human li { color:rgba(255,255,255,.78); }
.integration-lane li::before { content:""; position:absolute; left:0; top:.65em; width:8px; height:8px; border-radius:50%; background:var(--green); }
.integration-lane.human li::before { background:#8bd5b8; }
.integration-bridge { display:grid; place-items:center; }
.integration-bridge span { width:48px; height:48px; border-radius:50%; display:grid; place-items:center; background:#e8f4ef; color:var(--green-deep); font-size:1.5rem; font-weight:900; }
.scope-note { margin-top:20px; border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.05); border-radius:18px; padding:20px 24px; display:flex; gap:10px; color:rgba(255,255,255,.72); font-size:.88rem; }
.scope-note strong { color:#fff; flex:none; }

.support-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:44px; }
.support-grid article { border:1px solid var(--line); border-radius:22px; padding:28px; min-height:310px; display:flex; flex-direction:column; background:#fff; }
.support-grid article > span { color:#b9cbc4; font-size:2.7rem; line-height:1; font-weight:900; letter-spacing:-.06em; margin-bottom:30px; }
.support-grid h3 { font-size:1.28rem; margin-bottom:12px; }
.support-grid p { color:var(--muted); margin-bottom:24px; }
.support-grid .link-arrow { margin-top:auto; }
.support-grid .support-featured { background:var(--mint); border-color:#cfe5db; }
.support-grid .support-featured > span { color:var(--green); }

.audience-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:42px; }
.audience-grid article { background:#fff; border:1px solid #d7e8e0; border-radius:20px; padding:28px; min-height:200px; }
.audience-grid strong { display:block; color:var(--green-deep); font-size:1.05rem; margin-bottom:12px; }
.audience-grid p { color:var(--muted); font-size:.92rem; }

.when-list { display:grid; margin-top:40px; border-top:1px solid var(--line); }
.when-list > div { display:grid; grid-template-columns:70px 1fr; gap:20px; padding:24px 0; border-bottom:1px solid var(--line); align-items:start; }
.when-list span { color:var(--green); font-weight:900; font-size:.78rem; letter-spacing:.08em; }
.when-list p { font-size:1.08rem; max-width:900px; }
.when-list strong { color:var(--green-deep); }

.faq-layout { display:grid; grid-template-columns:.82fr 1.18fr; gap:70px; align-items:start; }
.faq-layout .lead { margin-top:20px; }
.faq-list { display:grid; gap:12px; }
.faq-list details { background:#fff; border:1px solid var(--line); border-radius:16px; padding:0 22px; }
.faq-list summary { cursor:pointer; list-style:none; padding:20px 32px 20px 0; font-weight:800; color:var(--green-deep); position:relative; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:"+"; position:absolute; right:0; top:19px; color:var(--green); font-size:1.25rem; }
.faq-list details[open] summary::after { content:"−"; }
.faq-list details p { color:var(--muted); padding:0 0 20px; max-width:780px; }

.sources-box { border:1px solid var(--line); border-radius:26px; padding:38px; display:grid; grid-template-columns:.85fr 1.15fr; gap:50px; align-items:center; background:#fff; }
.sources-box h2 { font-size:1.75rem; }
.source-links { display:grid; gap:12px; }
.source-links a { border:1px solid var(--line); border-radius:14px; padding:16px 18px; display:flex; justify-content:space-between; gap:18px; align-items:center; color:var(--green-deep); font-weight:750; transition:.2s ease; }
.source-links a:hover { border-color:#a8cec0; background:var(--mint-2); }
.source-links span { color:var(--green); }

@media (max-width:1020px) {
  .nr1-hero-grid, .meaning-grid, .faq-layout, .sources-box { grid-template-columns:1fr; gap:38px; }
  .risk-landscape { min-height:540px; }
  .nr1-facts, .risk-example-grid, .support-grid { grid-template-columns:1fr 1fr; }
  .nr1-facts article:last-child, .risk-example-grid article:last-child { grid-column:1/3; }
  .integration-board { grid-template-columns:1fr; gap:14px; }
  .integration-bridge { min-height:54px; }
  .audience-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width:680px) {
  .nr1-hero { padding:46px 0 70px; }
  .risk-landscape { min-height:520px; border-radius:26px; }
  .orbit-one { width:280px; height:280px; }
  .orbit-two { width:420px; height:420px; }
  .risk-center { width:150px; height:150px; padding:18px; }
  .risk-node { width:145px; padding:14px; }
  .risk-a { left:4%; top:10%; }
  .risk-b { right:4%; top:24%; }
  .risk-c { right:9%; bottom:10%; }
  .nr1-facts, .risk-example-grid, .support-grid, .audience-grid { grid-template-columns:1fr; }
  .nr1-facts article:last-child, .risk-example-grid article:last-child { grid-column:auto; }
  .scope-note { flex-direction:column; }
  .when-list > div { grid-template-columns:44px 1fr; gap:10px; }
  .sources-box { padding:28px 22px; }
}

/* Para empresas page */
.companies-hero { padding: 88px 0 98px; background: linear-gradient(180deg,#ffffff 0%,#f5f9f7 100%); overflow:hidden; }
.companies-hero-grid { display:grid; grid-template-columns:1.03fr .97fr; gap:72px; align-items:center; }
.companies-hero-copy .lead { margin-top:24px; max-width:760px; }
.companies-hero-note { margin-top:24px; color:var(--muted); max-width:760px; font-size:.92rem; padding-left:16px; border-left:3px solid #b9d8cc; }

.company-needs-map { min-height:590px; position:relative; border-radius:38px; overflow:hidden; background:linear-gradient(145deg,#0a493b 0%,#08352c 100%); box-shadow:0 30px 70px rgba(5,55,43,.18); }
.company-needs-map::before { content:""; position:absolute; inset:42px; border:1px dashed rgba(210,240,229,.20); border-radius:34px; }
.company-needs-map::after { content:""; position:absolute; width:280px; height:280px; border-radius:50%; background:rgba(122,217,180,.10); right:-90px; top:-70px; }
.company-map-center { position:absolute; left:50%; top:48%; transform:translate(-50%,-50%); width:215px; min-height:215px; border-radius:50%; padding:30px; background:#edf7f3; color:var(--green-deep); display:flex; flex-direction:column; justify-content:center; text-align:center; z-index:3; box-shadow:0 16px 50px rgba(0,0,0,.20); }
.company-map-center small { color:var(--green); font-size:.67rem; text-transform:uppercase; letter-spacing:.11em; font-weight:900; margin-bottom:10px; }
.company-map-center strong { font-size:1.08rem; line-height:1.28; }
.company-need-node { position:absolute; width:175px; min-height:94px; padding:16px 18px; border-radius:19px; background:#fff; border:1px solid rgba(255,255,255,.45); box-shadow:0 14px 36px rgba(0,0,0,.17); z-index:4; display:flex; flex-direction:column; justify-content:center; }
.company-need-node span { color:var(--green); font-size:.66rem; font-weight:900; letter-spacing:.1em; }
.company-need-node strong { color:var(--green-deep); font-size:.96rem; line-height:1.2; margin-top:3px; }
.company-need-node small { color:var(--muted); font-size:.74rem; margin-top:4px; }
.cn1 { left:34px; top:52px; }
.cn2 { right:34px; top:68px; }
.cn3 { left:22px; top:242px; }
.cn4 { right:22px; top:236px; }
.cn5 { left:62px; bottom:44px; }
.cn6 { right:52px; bottom:44px; }

.companies-needs { background:#fff; }
.company-challenge-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.company-challenge-card { position:relative; border:1px solid var(--line); border-radius:26px; padding:32px; background:#fff; min-height:420px; display:flex; flex-direction:column; overflow:hidden; }
.company-challenge-card::after { content:""; position:absolute; right:-46px; top:-46px; width:140px; height:140px; border-radius:50%; background:#f0f7f4; z-index:0; }
.company-challenge-card > * { position:relative; z-index:1; }
.company-challenge-card.featured { background:linear-gradient(145deg,#0a4a3c,#0b5a49); color:#fff; border-color:transparent; }
.company-challenge-card.featured::after { background:rgba(255,255,255,.06); width:190px; height:190px; }
.challenge-index { color:#c6d7d1; font-size:3.2rem; font-weight:900; line-height:1; letter-spacing:-.06em; margin-bottom:34px; }
.company-challenge-card.featured .challenge-index { color:rgba(255,255,255,.20); }
.challenge-tag { color:var(--green); text-transform:uppercase; letter-spacing:.09em; font-size:.72rem; font-weight:900; margin-bottom:10px; }
.company-challenge-card.featured .challenge-tag { color:#a2e2ca; }
.company-challenge-card h3 { font-size:1.55rem; max-width:560px; margin-bottom:14px; }
.company-challenge-card p { color:var(--muted); max-width:650px; }
.company-challenge-card.featured p { color:rgba(255,255,255,.76); }
.challenge-solutions { margin-top:auto; padding-top:28px; display:grid; gap:6px; }
.challenge-solutions strong { color:var(--green-deep); font-size:.76rem; text-transform:uppercase; letter-spacing:.08em; }
.challenge-solutions span { color:var(--muted); font-size:.9rem; }
.company-challenge-card.featured .challenge-solutions strong { color:#dff6ed; }
.company-challenge-card.featured .challenge-solutions span { color:rgba(255,255,255,.72); }
.company-challenge-card .link-arrow { margin-top:22px; }
.company-challenge-card.featured .link-arrow { color:#fff; }

.decision-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.decision-grid article { background:#fff; border:1px solid var(--line); border-radius:22px; padding:28px; min-height:250px; }
.decision-grid span { display:inline-flex; border-radius:999px; padding:7px 11px; background:var(--mint); color:var(--green); text-transform:uppercase; letter-spacing:.08em; font-size:.67rem; font-weight:900; margin-bottom:34px; }
.decision-grid h3 { font-size:1.22rem; margin-bottom:12px; }
.decision-grid p { color:var(--muted); font-size:.92rem; }

.maturity-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.maturity-card { border-radius:26px; padding:32px; min-height:450px; border:1px solid var(--line); background:#fbfdfc; display:flex; flex-direction:column; }
.maturity-card.medium { background:#edf7f3; border-color:#d3e7df; }
.maturity-card.advanced { background:var(--green-deep); color:#fff; border-color:transparent; }
.maturity-top { display:flex; flex-direction:column; gap:8px; margin-bottom:62px; }
.maturity-top span { color:var(--green); font-weight:900; font-size:.72rem; letter-spacing:.1em; }
.maturity-top strong { color:var(--green-deep); text-transform:uppercase; letter-spacing:.08em; font-size:.76rem; }
.maturity-card.advanced .maturity-top span { color:#9fdfc7; }
.maturity-card.advanced .maturity-top strong { color:#fff; }
.maturity-card h3 { font-size:1.45rem; margin-bottom:14px; }
.maturity-card p { color:var(--muted); }
.maturity-card.advanced p { color:rgba(255,255,255,.72); }
.maturity-card ul { list-style:none; padding:24px 0 0; margin:auto 0 0; display:grid; gap:10px; }
.maturity-card li { position:relative; padding-left:18px; color:#52655c; font-size:.92rem; }
.maturity-card li::before { content:""; position:absolute; left:0; top:.62em; width:7px; height:7px; border-radius:50%; background:var(--green); }
.maturity-card.advanced li { color:rgba(255,255,255,.78); }
.maturity-card.advanced li::before { background:#8bd5b8; }

.process-section .section-head h2 { color:#fff; }
.process-section .section-head .lead { color:rgba(255,255,255,.72); }
.light-eyebrow { color:#a5e3cd !important; }
.company-process { display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid rgba(255,255,255,.22); margin-top:48px; }
.company-process article { position:relative; padding:32px 24px 0 0; }
.company-process article::before { content:""; position:absolute; width:11px; height:11px; border-radius:50%; top:-6px; left:0; background:#8ad7bb; box-shadow:0 0 0 6px rgba(138,215,187,.14); }
.company-process span { color:#8ad7bb; font-size:.72rem; font-weight:900; letter-spacing:.09em; }
.company-process h3 { color:#fff; margin:11px 0 8px; font-size:1.18rem; }
.company-process p { color:rgba(255,255,255,.67); font-size:.9rem; }

.pathways-board { margin-top:44px; border:1px solid var(--line); border-radius:26px; overflow:hidden; background:#fff; }
.pathway-row { display:grid; grid-template-columns:.38fr .62fr; gap:30px; padding:28px 30px; border-bottom:1px solid var(--line); align-items:center; }
.pathway-row:last-child { border-bottom:0; }
.pathway-need { display:flex; flex-direction:column; gap:4px; }
.pathway-need span { color:var(--green); text-transform:uppercase; letter-spacing:.08em; font-size:.68rem; font-weight:900; }
.pathway-need strong { color:var(--green-deep); font-size:1.08rem; }
.pathway-flow { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.pathway-flow b { border-radius:999px; padding:9px 13px; background:#eef7f3; color:var(--green-deep); font-size:.84rem; }
.pathway-flow i { color:#9ab5aa; font-style:normal; font-weight:900; }
.pathways-actions { margin-top:28px; }

.company-nr1-box { border-radius:30px; background:linear-gradient(135deg,#0a493b,#006a50); color:#fff; padding:50px 54px; display:grid; grid-template-columns:1.25fr .75fr; gap:50px; align-items:center; position:relative; overflow:hidden; }
.company-nr1-box::after { content:""; position:absolute; width:330px; height:330px; border-radius:50%; background:rgba(255,255,255,.06); right:-130px; top:-150px; }
.company-nr1-box h2 { color:#fff; max-width:840px; }
.company-nr1-box p { color:rgba(255,255,255,.72); margin-top:18px; max-width:820px; }
.company-nr1-action { display:flex; justify-content:flex-end; position:relative; z-index:1; }

@media (max-width:1020px) {
  .companies-hero-grid { grid-template-columns:1fr; gap:42px; }
  .company-needs-map { min-height:540px; }
  .company-challenge-grid, .decision-grid { grid-template-columns:1fr 1fr; }
  .maturity-grid { grid-template-columns:1fr; }
  .company-process { grid-template-columns:1fr; border-top:0; gap:18px; }
  .company-process article { padding:0 0 0 30px; }
  .company-process article::before { top:8px; }
  .pathway-row { grid-template-columns:1fr; gap:16px; }
  .company-nr1-box { grid-template-columns:1fr; gap:28px; }
  .company-nr1-action { justify-content:flex-start; }
}

@media (max-width:680px) {
  .companies-hero { padding:46px 0 70px; }
  .company-needs-map { min-height:560px; border-radius:26px; }
  .company-needs-map::before { inset:24px; }
  .company-map-center { width:165px; min-height:165px; padding:20px; }
  .company-map-center strong { font-size:.95rem; }
  .company-need-node { width:145px; min-height:84px; padding:13px 14px; }
  .cn1 { left:10px; top:42px; }
  .cn2 { right:10px; top:58px; }
  .cn3 { left:4px; top:224px; }
  .cn4 { right:4px; top:224px; }
  .cn5 { left:18px; bottom:34px; }
  .cn6 { right:16px; bottom:34px; }
  .company-challenge-grid, .decision-grid { grid-template-columns:1fr; }
  .company-challenge-card { min-height:auto; padding:26px; }
  .decision-grid article { min-height:auto; }
  .maturity-card { min-height:auto; }
  .pathway-row { padding:22px; }
  .pathway-flow i { display:none; }
  .company-nr1-box { padding:36px 28px; border-radius:24px; }
}

/* =========================================================
   Sobre v1
   ========================================================= */
.aboutpage-hero { padding:88px 0 98px; background:linear-gradient(180deg,#fff 0%,#f4f8f6 100%); overflow:hidden; }
.aboutpage-hero-grid { display:grid; grid-template-columns:1.03fr .97fr; gap:72px; align-items:center; }
.aboutpage-hero-copy .lead { margin-top:24px; max-width:780px; }
.aboutpage-hero-note { margin-top:24px; padding-left:16px; border-left:3px solid #b9d8cc; color:var(--muted); max-width:760px; font-size:.92rem; }
.aboutpage-map { min-height:560px; position:relative; border-radius:36px; background:radial-gradient(circle at 50% 50%,#d9eee6 0 17%,transparent 17.5%),linear-gradient(145deg,#eef7f3,#fbfcfb); border:1px solid var(--line); box-shadow:var(--shadow); }
.aboutpage-map::before,.aboutpage-map::after { content:""; position:absolute; inset:50% auto auto 50%; transform:translate(-50%,-50%); width:355px; height:355px; border:1px dashed #b8d7cb; border-radius:50%; }
.aboutpage-map::after { width:465px; height:465px; opacity:.55; }
.aboutpage-map-center { position:absolute; z-index:3; left:50%; top:50%; transform:translate(-50%,-50%); width:170px; height:170px; border-radius:50%; background:var(--green-deep); color:#fff; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:24px; box-shadow:0 20px 48px rgba(6,66,51,.2); }
.aboutpage-map-center small { text-transform:uppercase; letter-spacing:.13em; color:#91d8bf; font-weight:800; margin-bottom:6px; }
.aboutpage-map-center strong { font-size:1.12rem; line-height:1.22; }
.aboutpage-orbit { position:absolute; z-index:4; width:175px; min-height:112px; border-radius:18px; padding:17px; background:#fff; border:1px solid var(--line); box-shadow:0 13px 32px rgba(4,72,52,.09); }
.aboutpage-orbit span { display:block; color:var(--green); font-size:.72rem; font-weight:900; letter-spacing:.1em; margin-bottom:6px; }
.aboutpage-orbit strong { display:block; color:var(--green-deep); font-size:1rem; margin-bottom:3px; }
.aboutpage-orbit small { display:block; color:var(--muted); line-height:1.35; }
.orbit-1 { top:48px; left:48px; }
.orbit-2 { top:58px; right:42px; }
.orbit-3 { bottom:54px; left:42px; }
.orbit-4 { bottom:46px; right:48px; }

.aboutpage-purpose-grid { display:grid; grid-template-columns:.88fr 1.12fr; gap:78px; align-items:start; }
.aboutpage-purpose-copy { display:grid; gap:18px; color:var(--muted); }
.aboutpage-purpose-copy .lead { color:var(--ink); }

.aboutpage-pillar-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:44px; }
.aboutpage-pillar { min-height:290px; background:#fff; border:1px solid var(--line); border-radius:22px; padding:28px; display:flex; flex-direction:column; }
.aboutpage-pillar > span { color:var(--green); font-weight:900; font-size:.78rem; letter-spacing:.1em; margin-bottom:auto; }
.aboutpage-pillar h3 { margin:38px 0 10px; }
.aboutpage-pillar p { color:var(--muted); font-size:.92rem; }

.founders-page-head { margin-bottom:48px; }
.founders-page-grid { display:grid; gap:26px; }
.founder-profile { display:grid; grid-template-columns:.72fr 1.28fr; min-height:520px; border-radius:28px; overflow:hidden; background:#f6f8f7; border:1px solid var(--line); }
.founder-profile.reverse { grid-template-columns:1.28fr .72fr; }
.founder-profile.reverse .founder-profile-photo { order:2; }
.founder-profile-photo { min-height:520px; background:#e6eee9; }
.founder-profile-photo img { width:100%; height:100%; object-fit:cover; object-position:center 24%; }
.founder-profile.reverse .founder-profile-photo img { object-position:center 16%; }
.founder-profile-body { padding:52px 56px; display:flex; flex-direction:column; justify-content:center; }
.founder-profile-body .founder-kicker { margin-bottom:12px; }
.founder-profile-body h3 { font-size:clamp(1.55rem,2.2vw,2.3rem); margin-bottom:22px; max-width:700px; }
.founder-profile-body p { color:var(--muted); max-width:760px; }
.founder-profile-body p + p { margin-top:16px; }

.aboutpage-integration { padding:100px 0; }
.integration-grid { display:grid; grid-template-columns:.92fr 1.08fr; gap:80px; align-items:start; }
.integration-copy { display:grid; gap:18px; }
.integration-copy p:not(.lead) { color:rgba(255,255,255,.7); }
.integration-copy .btn { width:max-content; margin-top:12px; }

.principles-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:14px; margin-top:44px; }
.principles-grid article { min-height:225px; padding:26px 22px; border-radius:19px; border:1px solid var(--line); background:#fff; }
.principles-grid span { display:block; color:var(--green-deep); font-weight:850; margin-bottom:18px; }
.principles-grid p { color:var(--muted); font-size:.91rem; }

.aboutpage-journey { display:grid; grid-template-columns:repeat(5,1fr); gap:0; margin-top:50px; border-top:1px solid #bcd6cc; }
.aboutpage-journey article { position:relative; padding:30px 28px 0 0; }
.aboutpage-journey article::before { content:""; width:11px; height:11px; border-radius:50%; background:var(--green); position:absolute; top:-6px; left:0; box-shadow:0 0 0 6px rgba(0,140,100,.1); }
.aboutpage-journey span { color:var(--green); font-weight:900; font-size:.75rem; letter-spacing:.1em; }
.aboutpage-journey h3 { margin:12px 0 8px; }
.aboutpage-journey p { color:var(--muted); font-size:.9rem; }

.aboutpage-quote { display:grid; grid-template-columns:1.2fr .8fr; gap:0; border:1px solid var(--line); border-radius:28px; overflow:hidden; background:#fff; }
.aboutpage-quote > div:first-child { padding:52px 56px; }
.aboutpage-quote blockquote { margin:10px 0 16px; font-size:clamp(2rem,3.5vw,3.7rem); line-height:1.08; letter-spacing:-.04em; color:var(--green-deep); font-weight:780; }
.aboutpage-quote > div:first-child > p { color:var(--muted); }
.aboutpage-quote-note { padding:52px; background:var(--green-deep); color:#fff; display:flex; flex-direction:column; justify-content:center; }
.aboutpage-quote-note strong { font-size:1.22rem; margin-bottom:12px; }
.aboutpage-quote-note p { color:rgba(255,255,255,.72); }

@media (max-width:1020px) {
  .aboutpage-hero-grid,.aboutpage-purpose-grid,.integration-grid { grid-template-columns:1fr; gap:42px; }
  .aboutpage-map { max-width:720px; width:100%; margin:0 auto; }
  .aboutpage-pillar-grid { grid-template-columns:1fr 1fr; }
  .founder-profile,.founder-profile.reverse { grid-template-columns:.85fr 1.15fr; }
  .founder-profile.reverse .founder-profile-photo { order:0; }
  .founder-profile-body { padding:42px; }
  .principles-grid { grid-template-columns:1fr 1fr; }
  .principles-grid article:last-child { grid-column:1/3; }
  .aboutpage-journey { grid-template-columns:1fr; border-top:0; gap:18px; }
  .aboutpage-journey article { padding:0 0 0 30px; }
  .aboutpage-journey article::before { top:7px; }
  .aboutpage-quote { grid-template-columns:1fr; }
}

@media (max-width:680px) {
  .aboutpage-hero { padding:46px 0 70px; }
  .aboutpage-map { min-height:auto; padding:22px; display:grid; grid-template-columns:1fr 1fr; gap:10px; border-radius:24px; }
  .aboutpage-map::before,.aboutpage-map::after { display:none; }
  .aboutpage-map-center { position:static; transform:none; width:auto; height:auto; border-radius:18px; grid-column:1/3; padding:24px; }
  .aboutpage-orbit { position:static; width:auto; min-height:120px; box-shadow:none; }
  .aboutpage-pillar-grid,.principles-grid { grid-template-columns:1fr; }
  .principles-grid article:last-child { grid-column:auto; }
  .founder-profile,.founder-profile.reverse { grid-template-columns:1fr; min-height:auto; }
  .founder-profile.reverse .founder-profile-photo { order:0; }
  .founder-profile-photo { min-height:380px; }
  .founder-profile-body { padding:30px 26px 34px; }
  .aboutpage-quote > div:first-child,.aboutpage-quote-note { padding:36px 28px; }
}

/* =========================================================
   Conteúdos / Blog v1
   ========================================================= */
.contenthub-hero { padding:82px 0 90px; background:linear-gradient(180deg,#fff 0%,#f4f8f6 100%); overflow:hidden; }
.contenthub-hero-grid { display:grid; grid-template-columns:1.02fr .98fr; gap:64px; align-items:center; }
.contenthub-hero-copy .lead { margin-top:24px; max-width:760px; }
.contenthub-statline { margin-top:28px; display:flex; flex-wrap:wrap; gap:12px; }
.contenthub-statline span { display:inline-flex; align-items:center; gap:8px; border:1px solid var(--line); border-radius:999px; padding:9px 14px; background:rgba(255,255,255,.75); color:var(--muted); font-size:.84rem; }
.contenthub-statline strong { color:var(--green-deep); }
.contenthub-hero-media { position:relative; margin:0; }
.contenthub-hero-media::before { content:""; position:absolute; width:260px; height:260px; background:#d7eee5; border-radius:50%; right:-70px; top:-58px; z-index:0; }
.contenthub-hero-media img { position:relative; z-index:1; width:100%; min-height:560px; object-fit:cover; border-radius:32px; box-shadow:var(--shadow); }
.contenthub-hero-media figcaption { position:absolute; z-index:2; left:24px; bottom:24px; background:#fff; border:1px solid var(--line); border-radius:999px; padding:11px 15px; font-size:.76rem; font-weight:800; color:var(--green-deep); box-shadow:0 10px 28px rgba(7,63,52,.12); }

.contenthub-featured { background:#fff; }
.featured-story { border:1px solid var(--line); border-radius:30px; overflow:hidden; background:linear-gradient(135deg,#f4f8f6 0%,#fff 68%); }
.featured-story-meta { display:flex; justify-content:space-between; gap:20px; padding:22px 30px; border-bottom:1px solid var(--line); color:var(--muted); font-size:.82rem; }
.featured-story-main { display:grid; grid-template-columns:1.12fr .88fr; gap:62px; padding:48px 50px 52px; align-items:end; }
.featured-story-main h2 { max-width:780px; }
.featured-story-copy { display:flex; flex-direction:column; gap:24px; align-items:flex-start; }
.featured-story-copy p { color:var(--muted); font-size:1rem; }
.article-category { display:inline-flex; align-items:center; width:max-content; padding:7px 10px; border-radius:999px; background:var(--mint); color:var(--green-dark); text-transform:uppercase; letter-spacing:.09em; font-size:.66rem; font-weight:900; }

.topic-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.topic-card { appearance:none; text-align:left; border:1px solid var(--line); border-radius:20px; background:#fff; padding:22px; min-height:190px; cursor:pointer; display:flex; flex-direction:column; transition:.2s ease; color:var(--ink); }
.topic-card:hover { transform:translateY(-3px); border-color:#bdd8cd; box-shadow:0 12px 32px rgba(5,65,51,.07); }
.topic-card.is-active { background:var(--green-deep); border-color:var(--green-deep); color:#fff; }
.topic-card > span { color:var(--green); font-weight:900; letter-spacing:.11em; font-size:.7rem; margin-bottom:auto; }
.topic-card.is-active > span { color:#8ad7bb; }
.topic-card strong { font-size:1.03rem; line-height:1.24; margin-top:28px; }
.topic-card small { color:var(--muted); margin-top:7px; }
.topic-card.is-active small { color:rgba(255,255,255,.65); }

.contenthub-toolbar { display:flex; justify-content:space-between; align-items:flex-end; gap:34px; margin-bottom:22px; }
.content-search { width:min(100%,420px); height:54px; border:1px solid var(--line); border-radius:999px; background:#fff; padding:0 18px 0 20px; display:flex; align-items:center; gap:12px; }
.content-search input { width:100%; border:0; outline:0; background:transparent; color:var(--ink); }
.content-search span:last-child { color:var(--green); font-size:1.2rem; }
.contenthub-results { min-height:28px; color:var(--muted); font-size:.86rem; margin-bottom:18px; }
.contenthub-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.contenthub-card { position:relative; min-height:325px; border:1px solid var(--line); border-radius:22px; padding:26px; background:#fff; display:flex; flex-direction:column; overflow:hidden; }
.contenthub-card::before { content:""; position:absolute; width:110px; height:110px; border-radius:50%; background:#f1f7f4; top:-44px; right:-36px; }
.contenthub-card[hidden] { display:none !important; }
.contenthub-card-top { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:34px; }
.contenthub-card-top time { color:#839089; font-size:.76rem; white-space:nowrap; }
.contenthub-card h3 { position:relative; z-index:1; font-size:1.3rem; margin-bottom:14px; }
.contenthub-card p { position:relative; z-index:1; color:var(--muted); font-size:.92rem; margin-bottom:24px; }
.contenthub-card .link-arrow { margin-top:auto; position:relative; z-index:1; }
.contenthub-empty { padding:50px; text-align:center; border:1px dashed #bcd1c9; border-radius:22px; background:#f7faf8; }
.contenthub-empty strong { display:block; color:var(--green-deep); margin-bottom:6px; }
.contenthub-empty p { color:var(--muted); }
.contenthub-pagination { margin-top:40px; display:flex; justify-content:center; align-items:center; gap:8px; }
.contenthub-pagination span,.contenthub-pagination button { min-width:38px; height:38px; border-radius:10px; border:1px solid var(--line); background:#fff; display:grid; place-items:center; padding:0 10px; color:#54655e; }
.contenthub-pagination button { cursor:pointer; min-width:auto; }
.contenthub-pagination button:disabled { opacity:.45; cursor:default; }
.contenthub-pagination .is-current { background:var(--green); color:#fff; border-color:var(--green); }
.contenthub-paths { display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:start; }
.contenthub-paths-copy h2 { color:#fff; max-width:760px; }
.contenthub-paths-copy .lead { margin-top:20px; max-width:690px; }
.contenthub-path-list { display:grid; border-top:1px solid rgba(255,255,255,.18); }
.contenthub-path-list a { display:grid; grid-template-columns:44px 1fr; gap:3px 16px; padding:23px 0; border-bottom:1px solid rgba(255,255,255,.18); }
.contenthub-path-list span { grid-row:1/3; color:#83d5b8; font-size:.72rem; font-weight:900; letter-spacing:.08em; }
.contenthub-path-list strong { color:#fff; font-size:1.03rem; }
.contenthub-path-list small { color:rgba(255,255,255,.62); }
.sr-only { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0,0,0,0) !important; white-space:nowrap !important; border:0 !important; }

/* =========================================================
   Artigo individual v1
   ========================================================= */
.articlepage-header { padding:72px 0 52px; background:linear-gradient(180deg,#fff 0%,#f6f9f7 100%); }
.articlepage-header-inner { width:min(calc(100% - 40px), 1050px); }
.article-breadcrumb { display:flex; flex-wrap:wrap; gap:8px; align-items:center; color:var(--muted); font-size:.82rem; margin-bottom:34px; }
.article-breadcrumb a:hover { color:var(--green); }
.articlepage-meta-top { display:flex; flex-wrap:wrap; gap:10px 16px; align-items:center; color:var(--muted); font-size:.82rem; margin-bottom:22px; }
.articlepage-header h1 { font-size:clamp(2.75rem,5.2vw,5.05rem); max-width:1040px; }
.articlepage-dek { margin-top:24px; max-width:900px; color:var(--muted); font-size:clamp(1.12rem,1.6vw,1.35rem); line-height:1.65; }
.articlepage-byline { margin-top:28px; display:flex; justify-content:space-between; align-items:center; gap:20px; border-top:1px solid var(--line); padding-top:20px; color:#52645c; font-size:.88rem; }
.article-copy-link { border:0; background:transparent; color:var(--green); font-weight:800; cursor:pointer; }
.articlepage-featured { margin-top:42px; }
.articlepage-featured img { width:100%; max-height:660px; object-fit:cover; border-radius:30px; box-shadow:var(--shadow); }
.articlepage-layout { display:grid; grid-template-columns:260px minmax(0,760px); gap:72px; justify-content:center; align-items:start; padding-top:78px; padding-bottom:94px; }
.articlepage-aside { position:sticky; top:112px; display:grid; gap:18px; }
.article-toc { border:1px solid var(--line); border-radius:20px; padding:22px; background:#fff; display:grid; gap:10px; }
.article-toc strong { color:var(--green-deep); margin-bottom:6px; }
.article-toc a { color:var(--muted); font-size:.86rem; line-height:1.35; }
.article-toc a:hover { color:var(--green); }
.article-aside-cta { border-radius:20px; padding:22px; background:var(--green-deep); color:#fff; display:grid; gap:8px; }
.article-aside-cta span { color:#91dac1; text-transform:uppercase; letter-spacing:.09em; font-weight:900; font-size:.65rem; }
.article-aside-cta strong { line-height:1.3; }
.article-aside-cta a { color:#fff; font-size:.84rem; font-weight:800; margin-top:6px; }
.articlepage-body { font-size:1.04rem; line-height:1.82; color:#34463e; }
.articlepage-body > * { max-width:760px; }
.articlepage-body p + p { margin-top:20px; }
.articlepage-body h2 { font-size:clamp(1.8rem,2.8vw,2.65rem); color:var(--ink); margin-top:62px; margin-bottom:20px; scroll-margin-top:120px; }
.articlepage-body h3 { color:var(--ink); }
.article-intro { font-size:1.2rem; color:#30433b; }
.article-callout { margin:42px 0; padding:28px 30px; border-left:4px solid var(--green); background:#f1f7f4; border-radius:0 18px 18px 0; color:var(--green-deep); font-size:1.34rem; line-height:1.55; font-weight:700; }
.article-inline-box { margin:48px 0; padding:34px; border-radius:24px; border:1px solid #cfe3da; background:linear-gradient(135deg,#eef7f3,#fff); }
.article-inline-box h3 { font-size:1.5rem; line-height:1.25; max-width:680px; }
.article-inline-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.article-steps { list-style:none; counter-reset:steps; padding:0; margin:30px 0 0; display:grid; gap:14px; }
.article-steps li { counter-increment:steps; position:relative; padding:22px 24px 22px 68px; border:1px solid var(--line); border-radius:18px; background:#fff; }
.article-steps li::before { content:counter(steps, decimal-leading-zero); position:absolute; left:22px; top:22px; color:var(--green); font-weight:900; font-size:.76rem; letter-spacing:.08em; }
.article-steps strong { display:block; color:var(--green-deep); margin-bottom:3px; }
.article-steps span { color:var(--muted); font-size:.92rem; }
.article-faq { display:grid; gap:12px; margin-top:28px; }
.article-faq details { border:1px solid var(--line); border-radius:18px; background:#fff; padding:0 22px; }
.article-faq summary { cursor:pointer; padding:20px 26px 20px 0; color:var(--green-deep); font-weight:800; }
.article-faq details p { color:var(--muted); padding:0 0 20px; font-size:.94rem; }
.article-endnote { margin-top:60px; padding:42px; border-radius:26px; background:var(--green-deep); color:#fff; }
.article-endnote h2 { color:#fff; margin:0; font-size:clamp(1.8rem,2.7vw,2.55rem); }
.article-endnote p { margin-top:16px; color:rgba(255,255,255,.72); }
.article-endnote .btn { margin-top:24px; }
.article-related { margin-top:0; }
.related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.related-grid a { min-height:245px; border:1px solid var(--line); border-radius:20px; padding:26px; background:#fff; display:flex; flex-direction:column; }
.related-grid span { color:var(--green); text-transform:uppercase; letter-spacing:.08em; font-size:.68rem; font-weight:900; margin-bottom:auto; }
.related-grid strong { margin:36px 0 16px; color:var(--green-deep); line-height:1.28; font-size:1.1rem; }
.related-grid small { color:var(--muted); }

@media (max-width:1020px) {
  .contenthub-hero-grid,.featured-story-main,.contenthub-paths { grid-template-columns:1fr; gap:42px; }
  .contenthub-hero-media img { min-height:440px; }
  .topic-grid { grid-template-columns:repeat(2,1fr); }
  .contenthub-grid { grid-template-columns:1fr 1fr; }
  .articlepage-layout { grid-template-columns:1fr; gap:42px; }
  .articlepage-aside { position:static; grid-template-columns:1fr 1fr; }
  .article-toc { order:1; }
  .related-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width:680px) {
  .contenthub-hero { padding:46px 0 70px; }
  .contenthub-hero-media img { min-height:320px; border-radius:24px; }
  .contenthub-hero-media figcaption { left:14px; bottom:14px; right:14px; text-align:center; }
  .featured-story-main { padding:32px 26px 36px; }
  .featured-story-meta { padding:18px 22px; }
  .topic-grid,.contenthub-grid,.related-grid { grid-template-columns:1fr; }
  .contenthub-toolbar { align-items:stretch; flex-direction:column; }
  .content-search { width:100%; }
  .contenthub-card { min-height:auto; }
  .contenthub-pagination span:nth-of-type(3),.contenthub-pagination span:nth-of-type(4) { display:none; }
  .articlepage-header { padding:48px 0 34px; }
  .articlepage-header h1 { font-size:clamp(2.35rem,11vw,3.7rem); }
  .articlepage-byline { align-items:flex-start; flex-direction:column; }
  .articlepage-featured { margin-top:26px; }
  .articlepage-featured img { border-radius:22px; min-height:260px; }
  .articlepage-layout { padding-top:46px; padding-bottom:70px; }
  .articlepage-aside { grid-template-columns:1fr; }
  .articlepage-body { font-size:1rem; }
  .article-callout { margin:34px 0; padding:24px 24px; font-size:1.18rem; }
  .article-inline-box,.article-endnote { padding:28px 24px; }
}

/* =========================================================
   SOBRE V2 — design refinement
   ========================================================= */
.about-v2 .section { padding: 92px 0; }
.about2-hero { padding: 78px 0 92px; background:linear-gradient(180deg,#fff 0%,#f3f8f5 100%); overflow:hidden; }
.about2-hero-grid { display:grid; grid-template-columns:1.02fr .98fr; gap:72px; align-items:center; }
.about2-hero-copy .lead { margin:24px 0 0; max-width:720px; }
.about2-hero-visual { min-height:520px; border-radius:32px; background:linear-gradient(145deg,#073f31 0%,#075b45 100%); padding:34px; color:#fff; box-shadow:0 24px 60px rgba(4,72,52,.16); display:flex; flex-direction:column; justify-content:space-between; position:relative; overflow:hidden; }
.about2-hero-visual::after { content:""; position:absolute; width:330px; height:330px; border:1px solid rgba(255,255,255,.12); border-radius:50%; right:-110px; top:-90px; box-shadow:0 0 0 68px rgba(255,255,255,.025),0 0 0 136px rgba(255,255,255,.02); }
.about2-hero-label { position:relative; z-index:1; max-width:360px; }
.about2-hero-label span { display:block; color:#8ed8bf; text-transform:uppercase; letter-spacing:.13em; font-size:.72rem; font-weight:850; margin-bottom:8px; }
.about2-hero-label strong { display:block; font-size:clamp(1.55rem,2.3vw,2.45rem); line-height:1.05; letter-spacing:-.035em; }
.about2-dimension-grid { position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:42px; }
.about2-dimension-grid article { min-height:150px; border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.07); backdrop-filter:blur(3px); border-radius:18px; padding:20px; display:flex; flex-direction:column; }
.about2-dimension-grid article span { color:#88d6ba; font-size:.7rem; font-weight:900; letter-spacing:.12em; }
.about2-dimension-grid article strong { font-size:1.3rem; margin-top:auto; }
.about2-dimension-grid article small { color:rgba(255,255,255,.67); margin-top:4px; line-height:1.35; }

.about2-purpose-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:84px; align-items:start; }
.about2-statement { position:sticky; top:118px; }
.about2-purpose-content { display:grid; gap:18px; }
.about2-purpose-content > p { color:var(--muted); }
.about2-purpose-content > .lead { color:var(--ink); }
.about2-purpose-points { display:grid; gap:10px; margin-top:12px; }
.about2-purpose-points article { display:grid; grid-template-columns:190px 1fr; gap:18px; align-items:start; border-top:1px solid var(--line); padding:18px 0; }
.about2-purpose-points article:last-child { border-bottom:1px solid var(--line); }
.about2-purpose-points strong { color:var(--green-deep); }
.about2-purpose-points span { color:var(--muted); font-size:.93rem; }

.about2-section-head { margin-bottom:40px; }
.about2-pillar-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.about2-pillar-grid article { min-height:250px; border-radius:22px; background:#fff; border:1px solid var(--line); padding:28px; position:relative; overflow:hidden; }
.about2-pillar-grid article::after { content:""; position:absolute; width:120px; height:120px; border-radius:50%; background:#edf7f3; right:-42px; bottom:-48px; }
.about2-num { color:var(--green); font-weight:900; font-size:.72rem; letter-spacing:.12em; }
.about2-pillar-icon { width:46px; height:46px; border-radius:14px; background:var(--mint); color:var(--green); display:grid; place-items:center; font-size:1.4rem; font-weight:900; margin:34px 0 24px; }
.about2-pillar-grid h3 { margin:0 0 9px; }
.about2-pillar-grid p { color:var(--muted); max-width:500px; font-size:.93rem; position:relative; z-index:1; }

.about2-founders-section { background:#fff; }
.about2-founders-head { margin-bottom:42px; }
.about2-founders-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.about2-founder-card { border:1px solid var(--line); background:#f8faf9; border-radius:26px; overflow:hidden; display:grid; grid-template-columns:.82fr 1.18fr; min-height:430px; }
.about2-founder-photo { min-height:430px; background:#e9efec; overflow:hidden; }
.about2-founder-photo img { width:100%; height:100%; object-fit:cover; object-position:center 18%; }
.about2-founder-card:nth-child(2) .about2-founder-photo img { object-position:center 11%; }
.about2-founder-body { padding:34px 34px 36px; display:flex; flex-direction:column; justify-content:center; }
.about2-founder-body .founder-kicker { margin-bottom:10px; }
.about2-founder-body h3 { font-size:clamp(1.25rem,1.65vw,1.7rem); line-height:1.12; margin-bottom:18px; }
.about2-founder-body p { color:var(--muted); font-size:.91rem; }
.about2-founder-body p + p { margin-top:12px; }

.about2-integration { padding:90px 0; }
.about2-integration-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:70px; align-items:center; }
.about2-integration-copy .lead { margin:22px 0 28px; color:rgba(255,255,255,.72); }
.about2-integration-visual { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; gap:10px; align-items:center; }
.about2-flow-item { min-height:155px; border:1px solid rgba(255,255,255,.15); border-radius:18px; padding:20px; display:flex; flex-direction:column; background:rgba(255,255,255,.055); }
.about2-flow-item span { color:#88d6ba; font-size:.7rem; font-weight:900; letter-spacing:.12em; }
.about2-flow-item strong { margin-top:auto; color:#fff; font-size:1.18rem; }
.about2-flow-item small { color:rgba(255,255,255,.62); margin-top:4px; line-height:1.3; }
.about2-flow-plus,.about2-flow-arrow { color:#83cfb4; font-size:1.35rem; font-weight:800; }
.about2-flow-result { grid-column:1/-1; margin-top:10px; padding:20px 24px; background:#fff; color:var(--green-deep); border-radius:16px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.about2-flow-result span { text-transform:uppercase; letter-spacing:.12em; font-size:.68rem; color:var(--green); font-weight:850; }
.about2-flow-result strong { font-size:1.25rem; }

.about2-principles-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; }
.about2-principles-grid article { border-top:3px solid var(--green); background:#fff; border-radius:0 0 16px 16px; padding:22px 18px; min-height:150px; }
.about2-principles-grid span { display:block; color:var(--green-deep); font-weight:850; margin-bottom:12px; }
.about2-principles-grid p { color:var(--muted); font-size:.88rem; }

.about2-journey { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; margin-top:12px; }
.about2-journey article { background:#fff; border:1px solid #cee1da; border-radius:18px; padding:22px; min-height:185px; }
.about2-journey span { display:grid; place-items:center; width:36px; height:36px; border-radius:50%; background:var(--green); color:#fff; font-size:.72rem; font-weight:900; margin-bottom:28px; }
.about2-journey h3 { margin-bottom:8px; font-size:1.05rem; }
.about2-journey p { color:var(--muted); font-size:.88rem; }

.about2-proof-card { display:grid; grid-template-columns:1.25fr .75fr; border:1px solid var(--line); border-radius:24px; overflow:hidden; background:#fff; }
.about2-proof-quote { padding:38px 42px; }
.about2-proof-quote blockquote { margin:12px 0 14px; color:var(--green-deep); font-weight:780; font-size:clamp(1.7rem,2.8vw,3rem); line-height:1.08; letter-spacing:-.035em; }
.about2-proof-quote p { color:var(--muted); }
.about2-proof-note { background:#eef7f3; padding:38px; display:flex; flex-direction:column; justify-content:center; }
.about2-proof-note span { color:var(--green-deep); font-weight:850; margin-bottom:10px; }
.about2-proof-note p { color:var(--muted); font-size:.92rem; }

@media (max-width:1180px) {
  .about2-founders-grid { grid-template-columns:1fr; }
  .about2-founder-card { grid-template-columns:340px 1fr; }
  .about2-principles-grid { grid-template-columns:repeat(3,1fr); }
  .about2-journey { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:1020px) {
  .about2-hero-grid,.about2-purpose-grid,.about2-integration-grid { grid-template-columns:1fr; gap:42px; }
  .about2-statement { position:static; }
  .about2-hero-visual { min-height:auto; }
  .about2-founder-card { grid-template-columns:300px 1fr; }
  .about2-integration-visual { max-width:780px; }
}
@media (max-width:760px) {
  .about-v2 .section { padding:72px 0; }
  .about2-hero { padding:42px 0 64px; }
  .about2-hero-visual { padding:22px; border-radius:24px; }
  .about2-dimension-grid { grid-template-columns:1fr; }
  .about2-dimension-grid article { min-height:112px; }
  .about2-purpose-points article { grid-template-columns:1fr; gap:6px; }
  .about2-pillar-grid { grid-template-columns:1fr; }
  .about2-founders-grid { gap:16px; }
  .about2-founder-card { grid-template-columns:1fr; min-height:0; }
  .about2-founder-photo { min-height:330px; max-height:330px; }
  .about2-founder-body { padding:28px 24px 30px; }
  .about2-integration-visual { grid-template-columns:1fr; }
  .about2-flow-plus,.about2-flow-arrow { transform:rotate(90deg); text-align:center; }
  .about2-flow-result { grid-column:auto; flex-direction:column; align-items:flex-start; }
  .about2-principles-grid,.about2-journey { grid-template-columns:1fr; }
  .about2-proof-card { grid-template-columns:1fr; }
  .about2-proof-quote,.about2-proof-note { padding:30px 24px; }
}


/* Sobre v3 */
.about2-hero-visual { gap:22px; }
.about2-hero-photo { position:relative; z-index:1; border-radius:24px; overflow:hidden; min-height:240px; box-shadow:0 18px 40px rgba(0,0,0,.18); }
.about2-hero-photo img { width:100%; height:100%; min-height:240px; object-fit:cover; }
.about2-hero-badge { position:absolute; left:18px; bottom:18px; display:inline-flex; align-items:center; gap:8px; background:#fff; color:var(--green-deep); border-radius:999px; padding:10px 14px; font-size:.82rem; font-weight:800; box-shadow:0 12px 30px rgba(0,0,0,.14); }
.about2-statement-card { margin-top:26px; border-radius:24px; overflow:hidden; background:#fff; border:1px solid var(--line); box-shadow:var(--shadow-soft); }
.about2-statement-card img { width:100%; aspect-ratio:4/4.25; object-fit:cover; }
.about2-statement-card-caption { padding:16px 18px 18px; color:var(--green-deep); font-weight:700; font-size:.92rem; }
.about2-purpose-points article { grid-template-columns:56px 190px 1fr; }
.about2-purpose-icon { width:44px; height:44px; border-radius:14px; background:var(--mint); color:var(--green); display:grid; place-items:center; }
.about2-purpose-icon svg,.about2-pillar-icon svg { width:22px; height:22px; }
.about2-pillar-icon { font-size:0; }
.about2-mini-icon { width:34px; height:34px; border-radius:12px; background:#edf7f3; color:var(--green); display:grid; place-items:center; font-size:1rem; font-weight:900; margin-bottom:14px; }
.about2-journey-icon { width:42px; height:42px; border-radius:14px; background:var(--mint); color:var(--green); display:grid; place-items:center; font-size:1.05rem; font-weight:900; margin-bottom:18px; }
@media (max-width:1020px) {
  .about2-purpose-points article { grid-template-columns:56px 1fr; }
  .about2-purpose-points span { grid-column:2; }
}
@media (max-width:760px) {
  .about2-hero-photo { min-height:210px; }
  .about2-hero-photo img { min-height:210px; }
  .about2-purpose-points article { grid-template-columns:44px 1fr; }
  .about2-purpose-icon { width:38px; height:38px; border-radius:12px; }
  .about2-purpose-icon svg,.about2-pillar-icon svg { width:19px; height:19px; }
  .about2-journey span { margin-bottom:14px; }
}


/* =========================================================
   SOBRE v4 — editorial B2B
   ========================================================= */
.about-v4 .section { padding:104px 0; }
.about4-hero { position:relative; min-height:700px; display:flex; align-items:center; overflow:hidden; background:#eef4f1; }
.about4-hero-image { position:absolute; inset:0; background-image:linear-gradient(90deg,rgba(250,252,251,.98) 0%,rgba(250,252,251,.95) 35%,rgba(250,252,251,.45) 58%,rgba(250,252,251,.02) 76%),url('/assets/images/sobre-hero-editorial.webp'); background-size:cover; background-position:center; }
.about4-hero-inner { position:relative; z-index:1; width:100%; }
.about4-hero-copy { max-width:660px; padding:70px 0; }
.about4-hero-copy h1 { font-size:clamp(3rem,5.1vw,5rem); max-width:650px; }
.about4-hero-copy .lead { margin-top:24px; max-width:610px; color:#475a52; }
.about4-hero-meta { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:34px; color:#51675e; font-size:.82rem; font-weight:700; }
.about4-hero-meta i { width:4px; height:4px; border-radius:50%; background:var(--green); }

.about4-manifesto-grid { display:grid; grid-template-columns:1.08fr .92fr; gap:110px; align-items:start; }
.about4-manifesto h2 { max-width:760px; }
.about4-manifesto-copy { padding-top:44px; display:grid; gap:20px; max-width:560px; }
.about4-manifesto-copy > p:not(.lead) { color:var(--muted); }
.about4-manifesto-copy .link-arrow { margin-top:8px; }

.about4-section-head { margin-bottom:62px; }
.about4-approach-list { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #cfdad5; border-bottom:1px solid #cfdad5; }
.about4-approach-list article { padding:34px 28px 38px 0; border-right:1px solid #cfdad5; position:relative; }
.about4-approach-list article:not(:first-child) { padding-left:28px; }
.about4-approach-list article:last-child { border-right:0; }
.about4-icon { width:54px; height:54px; border-radius:50%; border:1px solid #b8d0c6; color:var(--green); display:grid; place-items:center; margin-bottom:44px; }
.about4-icon svg { width:24px; height:24px; }
.about4-index { display:block; color:var(--green); font-size:.7rem; letter-spacing:.14em; font-weight:900; margin-bottom:12px; }
.about4-approach-list h3 { margin-bottom:12px; font-size:1.2rem; }
.about4-approach-list p { color:var(--muted); font-size:.91rem; line-height:1.58; }

.about4-founders { background:#fff; }
.about4-founders-head { display:grid; grid-template-columns:1.05fr .95fr; gap:80px; align-items:end; margin-bottom:54px; }
.about4-founders-grid { display:grid; grid-template-columns:1fr 1fr; gap:28px; }
.about4-founder { background:#f7f9f8; border:1px solid #dce5e0; border-radius:28px; overflow:hidden; }
.about4-founder-image { aspect-ratio:16/10; background:#ece7df; overflow:hidden; }
.about4-founder-image img { width:100%; height:100%; object-fit:cover; object-position:center 22%; }
.about4-founder:nth-child(2) .about4-founder-image img { object-position:center 15%; }
.about4-founder-content { padding:34px 36px 38px; }
.about4-founder-content h3 { margin:8px 0 18px; font-size:1.42rem; }
.about4-founder-content p { color:var(--muted); font-size:.92rem; }
.about4-founder-content p + p { margin-top:12px; }

.about4-integration { padding:108px 0; }
.about4-integration-grid { display:grid; grid-template-columns:.92fr 1.08fr; gap:96px; align-items:center; }
.about4-integration-copy h2 { max-width:560px; }
.about4-integration-copy .lead { max-width:520px; margin-top:24px; }
.about4-integration-list { border-top:1px solid rgba(255,255,255,.16); }
.about4-integration-list article { display:grid; grid-template-columns:54px 1fr; gap:18px; align-items:center; padding:24px 0; border-bottom:1px solid rgba(255,255,255,.16); }
.about4-dark-icon { width:44px; height:44px; border:1px solid rgba(140,221,192,.45); color:#92dfc3; border-radius:50%; display:grid; place-items:center; }
.about4-dark-icon svg { width:22px; height:22px; }
.about4-integration-list strong { display:block; font-size:1.1rem; }
.about4-integration-list span { color:rgba(255,255,255,.62); font-size:.9rem; }
.about4-integration-result { margin-top:28px; padding:22px 24px; border-radius:18px; background:#fff; color:var(--green-deep); display:flex; justify-content:space-between; gap:20px; align-items:center; }
.about4-integration-result span { color:var(--green); text-transform:uppercase; letter-spacing:.13em; font-size:.67rem; font-weight:900; }
.about4-integration-result strong { font-size:1.15rem; }

.about4-principles-row { display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--line); }
.about4-principles-row article { padding:28px 20px 12px 0; border-right:1px solid var(--line); }
.about4-principles-row article:not(:first-child) { padding-left:20px; }
.about4-principles-row article:last-child { border-right:0; }
.about4-small-icon { width:36px; height:36px; border-radius:12px; background:#edf6f2; color:var(--green); display:grid; place-items:center; font-size:1rem; font-weight:900; margin-bottom:28px; }
.about4-principles-row strong { display:block; color:var(--green-deep); margin-bottom:9px; }
.about4-principles-row p { color:var(--muted); font-size:.87rem; line-height:1.5; }

.about4-timeline { position:relative; display:grid; grid-template-columns:repeat(5,1fr); gap:0; padding-top:30px; }
.about4-timeline::before { content:""; position:absolute; top:47px; left:8%; right:8%; height:1px; background:#b9d3c8; }
.about4-timeline article { position:relative; padding:0 24px 0 0; }
.about4-timeline article:not(:first-child) { padding-left:24px; }
.about4-timeline span { position:relative; z-index:1; display:grid; place-items:center; width:36px; height:36px; border-radius:50%; background:#fff; color:var(--green); border:1px solid #a9cabc; font-size:.7rem; font-weight:900; margin-bottom:28px; }
.about4-timeline h3 { margin-bottom:8px; font-size:1.05rem; }
.about4-timeline p { color:var(--muted); font-size:.86rem; }

.about4-quote-section { background:#fff; }
.about4-quote { max-width:900px; text-align:center; padding:20px 0; }
.about4-quote-mark { color:#b6d9cc; font-size:6rem; line-height:.7; font-family:Georgia,serif; }
.about4-quote blockquote { margin:12px auto 18px; font-size:clamp(2rem,3.6vw,3.5rem); line-height:1.12; letter-spacing:-.035em; color:var(--green-deep); font-weight:760; max-width:800px; }
.about4-quote p { color:var(--muted); font-size:.9rem; }

@media (max-width:1100px) {
  .about4-approach-list { grid-template-columns:repeat(2,1fr); }
  .about4-approach-list article:nth-child(2) { border-right:0; }
  .about4-approach-list article:nth-child(3),.about4-approach-list article:nth-child(4) { border-top:1px solid #cfdad5; }
  .about4-principles-row { grid-template-columns:repeat(3,1fr); }
  .about4-principles-row article:nth-child(3) { border-right:0; }
  .about4-principles-row article:nth-child(n+4) { border-top:1px solid var(--line); }
}
@media (max-width:900px) {
  .about4-hero { min-height:650px; align-items:flex-end; }
  .about4-hero-image { background-image:linear-gradient(180deg,rgba(250,252,251,.15) 0%,rgba(250,252,251,.40) 38%,rgba(250,252,251,.98) 72%),url('/assets/images/sobre-hero-editorial.webp'); background-position:66% center; }
  .about4-hero-copy { padding:310px 0 60px; max-width:none; }
  .about4-manifesto-grid,.about4-founders-head,.about4-integration-grid { grid-template-columns:1fr; gap:42px; }
  .about4-manifesto-copy { padding-top:0; }
  .about4-founders-grid { grid-template-columns:1fr; }
  .about4-principles-row { grid-template-columns:repeat(2,1fr); }
  .about4-principles-row article { border-top:1px solid var(--line); }
  .about4-principles-row article:nth-child(odd) { border-right:1px solid var(--line); }
  .about4-principles-row article:nth-child(even) { border-right:0; }
  .about4-timeline { grid-template-columns:1fr; gap:0; padding-top:0; }
  .about4-timeline::before { top:0; bottom:0; left:17px; right:auto; width:1px; height:auto; }
  .about4-timeline article,.about4-timeline article:not(:first-child) { padding:0 0 28px 64px; }
  .about4-timeline span { position:absolute; left:0; top:0; }
}
@media (max-width:650px) {
  .about-v4 .section { padding:76px 0; }
  .about4-hero { min-height:620px; }
  .about4-hero-copy { padding:285px 0 48px; }
  .about4-hero-copy h1 { font-size:clamp(2.65rem,12vw,3.7rem); }
  .about4-hero-meta { display:none; }
  .about4-approach-list { grid-template-columns:1fr; border-bottom:0; }
  .about4-approach-list article,.about4-approach-list article:not(:first-child) { padding:28px 0; border-right:0; border-bottom:1px solid #cfdad5; }
  .about4-icon { margin-bottom:24px; }
  .about4-founder-content { padding:28px 24px 30px; }
  .about4-principles-row { grid-template-columns:1fr; border-top:0; }
  .about4-principles-row article,.about4-principles-row article:not(:first-child) { padding:24px 0; border-right:0!important; border-top:1px solid var(--line); }
  .about4-integration-result { flex-direction:column; align-items:flex-start; }
}


/* ===== Sobre v5: clean editorial layout ===== */
.about5 { background:#fff; }
.about5 .section { padding:96px 0; }
.about5-hero { padding:64px 0 88px; background:linear-gradient(180deg,#ffffff 0%,#f5f8f6 100%); }
.about5-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(420px,.92fr); gap:72px; align-items:center; }
.about5-hero-copy { max-width:720px; }
.about5-hero-copy h1 { font-size:clamp(3.1rem,5.1vw,5.25rem); line-height:.98; letter-spacing:-.055em; max-width:760px; margin:12px 0 24px; }
.about5-hero-copy .lead { max-width:650px; color:#51635b; font-size:1.08rem; line-height:1.65; }
.about5-hero-media { position:relative; }
.about5-hero-media img { width:100%; aspect-ratio:4/5; object-fit:cover; border-radius:32px; box-shadow:0 28px 68px rgba(12,62,47,.14); }
.about5-hero-note { position:absolute; left:-34px; bottom:34px; max-width:280px; background:#fff; border:1px solid #dce7e2; border-radius:18px; padding:18px 20px; box-shadow:0 18px 38px rgba(12,62,47,.12); }
.about5-hero-note strong { display:block; color:var(--green-deep); margin-bottom:4px; font-size:.98rem; }
.about5-hero-note span { color:var(--muted); font-size:.82rem; line-height:1.45; }

.about5-intro-grid { display:grid; grid-template-columns:.92fr 1.08fr; gap:96px; align-items:start; }
.about5-intro-title { max-width:620px; }
.about5-intro-copy { display:grid; gap:18px; max-width:650px; }
.about5-intro-copy p { color:var(--muted); line-height:1.72; }
.about5-intro-copy .lead { color:var(--ink); font-size:1.12rem; }
.about5-intro-lines { margin-top:16px; border-top:1px solid var(--line); }
.about5-intro-line { display:grid; grid-template-columns:40px 190px 1fr; gap:16px; align-items:center; padding:18px 0; border-bottom:1px solid var(--line); }
.about5-intro-line b { color:var(--green); font-size:.72rem; letter-spacing:.12em; }
.about5-intro-line strong { color:var(--green-deep); }
.about5-intro-line span { color:var(--muted); font-size:.92rem; }

.about5-approach { background:#f4f7f5; }
.about5-head { display:grid; grid-template-columns:1fr .9fr; gap:72px; align-items:end; margin-bottom:48px; }
.about5-head p { color:var(--muted); max-width:620px; }
.about5-approach-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #ccd9d3; border-bottom:1px solid #ccd9d3; }
.about5-approach-item { padding:30px 28px 34px 0; border-right:1px solid #ccd9d3; }
.about5-approach-item:not(:first-child) { padding-left:28px; }
.about5-approach-item:last-child { border-right:0; }
.about5-icon { width:46px; height:46px; border-radius:14px; background:#e7f3ee; color:var(--green); display:grid; place-items:center; margin-bottom:28px; }
.about5-icon svg { width:22px; height:22px; display:block; }
.about5-approach-item h3 { font-size:1.1rem; margin:0 0 10px; }
.about5-approach-item p { color:var(--muted); font-size:.9rem; line-height:1.55; }

.about5-founders-head { max-width:820px; margin-bottom:44px; }
.about5-founders-grid { display:grid; grid-template-columns:1fr 1fr; gap:28px; }
.about5-founder { display:grid; grid-template-columns:minmax(230px,.78fr) 1.22fr; min-height:440px; background:#fff; border:1px solid #dce5e0; border-radius:28px; overflow:hidden; }
.about5-founder-media { overflow:hidden; background:#eee8e0; }
.about5-founder-media img { width:100%; height:100%; object-fit:cover; object-position:center 20%; }
.about5-founder:nth-child(2) .about5-founder-media img { object-position:center 14%; }
.about5-founder-content { padding:34px; display:flex; flex-direction:column; justify-content:center; }
.about5-founder-content .founder-kicker { margin-bottom:8px; }
.about5-founder-content h3 { margin:0 0 18px; font-size:1.36rem; line-height:1.12; }
.about5-founder-content p { color:var(--muted); font-size:.91rem; line-height:1.6; }
.about5-founder-content p+p { margin-top:12px; }

.about5-integration { background:#073f31; color:#fff; padding:92px 0; }
.about5-integration-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:88px; align-items:center; }
.about5-integration-copy h2 { color:#fff; max-width:600px; }
.about5-integration-copy p { color:rgba(255,255,255,.7); max-width:580px; margin-top:20px; }
.about5-integration-steps { border-top:1px solid rgba(255,255,255,.16); }
.about5-integration-step { display:grid; grid-template-columns:48px 170px 1fr; gap:16px; align-items:center; padding:20px 0; border-bottom:1px solid rgba(255,255,255,.16); }
.about5-integration-step b { color:#8ed8bf; font-size:.72rem; letter-spacing:.12em; }
.about5-integration-step strong { color:#fff; }
.about5-integration-step span { color:rgba(255,255,255,.62); font-size:.9rem; }
.about5-integration-result { margin-top:22px; background:#fff; color:var(--green-deep); border-radius:16px; padding:18px 20px; display:flex; justify-content:space-between; gap:18px; align-items:center; }
.about5-integration-result small { color:var(--green); text-transform:uppercase; letter-spacing:.12em; font-weight:850; }

.about5-principles-row { display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--line); }
.about5-principle { padding:24px 20px 10px 0; border-right:1px solid var(--line); }
.about5-principle:not(:first-child) { padding-left:20px; }
.about5-principle:last-child { border-right:0; }
.about5-principle strong { display:block; color:var(--green-deep); margin-bottom:8px; }
.about5-principle p { color:var(--muted); font-size:.88rem; line-height:1.5; }

.about5-journey { background:#eef6f2; }
.about5-journey-track { position:relative; display:grid; grid-template-columns:repeat(5,1fr); margin-top:38px; }
.about5-journey-track::before { content:""; position:absolute; left:7%; right:7%; top:18px; height:1px; background:#b8d1c6; }
.about5-journey-item { position:relative; padding-right:22px; }
.about5-journey-item:not(:first-child) { padding-left:22px; }
.about5-journey-dot { position:relative; z-index:1; width:36px; height:36px; border-radius:50%; display:grid; place-items:center; background:#fff; border:1px solid #a8c8ba; color:var(--green); font-size:.7rem; font-weight:900; margin-bottom:24px; }
.about5-journey-item h3 { font-size:1.02rem; margin-bottom:7px; }
.about5-journey-item p { color:var(--muted); font-size:.86rem; line-height:1.5; }

.about5-quote { text-align:center; max-width:900px; margin:0 auto; }
.about5-quote-mark { color:#b5d8cb; font-family:Georgia,serif; font-size:5.5rem; line-height:.65; }
.about5-quote blockquote { margin:14px auto 16px; font-size:clamp(2rem,3.5vw,3.3rem); line-height:1.12; letter-spacing:-.035em; color:var(--green-deep); font-weight:760; }
.about5-quote p { color:var(--muted); }

@media (max-width:1180px) {
  .about5-hero-grid { grid-template-columns:1fr .9fr; gap:46px; }
  .about5-founders-grid { grid-template-columns:1fr; }
  .about5-founder { grid-template-columns:300px 1fr; }
  .about5-principles-row { grid-template-columns:repeat(3,1fr); }
  .about5-principle:nth-child(3) { border-right:0; }
}
@media (max-width:1020px) {
  .about5-hero-grid,.about5-intro-grid,.about5-head,.about5-integration-grid { grid-template-columns:1fr; gap:42px; }
  .about5-hero-media { max-width:720px; }
  .about5-hero-media img { aspect-ratio:16/10; }
  .about5-hero-note { left:22px; }
  .about5-approach-grid { grid-template-columns:repeat(2,1fr); }
  .about5-approach-item:nth-child(2) { border-right:0; }
  .about5-approach-item:nth-child(n+3) { border-top:1px solid #ccd9d3; }
  .about5-journey-track { grid-template-columns:1fr; gap:0; }
  .about5-journey-track::before { left:18px; right:auto; top:0; bottom:0; width:1px; height:auto; }
  .about5-journey-item,.about5-journey-item:not(:first-child) { padding:0 0 28px 62px; }
  .about5-journey-dot { position:absolute; left:0; top:0; }
}
@media (max-width:760px) {
  .about5 .section { padding:72px 0; }
  .about5-hero { padding:36px 0 64px; }
  .about5-hero-copy h1 { font-size:clamp(2.55rem,12vw,3.55rem); }
  .about5-hero-media img { border-radius:22px; aspect-ratio:4/5; }
  .about5-hero-note { position:static; margin-top:12px; max-width:none; }
  .about5-intro-line { grid-template-columns:36px 1fr; gap:10px; }
  .about5-intro-line span { grid-column:2; }
  .about5-approach-grid { grid-template-columns:1fr; border-bottom:0; }
  .about5-approach-item,.about5-approach-item:not(:first-child) { padding:24px 0; border-right:0; border-bottom:1px solid #ccd9d3; }
  .about5-founder { grid-template-columns:1fr; }
  .about5-founder-media { height:340px; }
  .about5-founder-content { padding:26px 24px 30px; }
  .about5-integration-step { grid-template-columns:38px 1fr; gap:10px; }
  .about5-integration-step span { grid-column:2; }
  .about5-integration-result { flex-direction:column; align-items:flex-start; }
  .about5-principles-row { grid-template-columns:1fr; border-top:0; }
  .about5-principle,.about5-principle:not(:first-child) { padding:20px 0; border-right:0!important; border-top:1px solid var(--line); }
}


/* =========================\n   Para Empresas v17\n   ========================= */
.para17 { background:#fff; }
.para17 .section { padding:96px 0; }
.para17-hero { padding:72px 0 88px; background:linear-gradient(180deg,#fff 0%,#f5f9f7 100%); }
.para17-hero-grid { display:grid; grid-template-columns:1.02fr .98fr; gap:72px; align-items:center; }
.para17-hero-copy h1 { max-width:770px; }
.para17-hero-copy .lead { margin-top:24px; max-width:700px; }
.para17-hero-media { position:relative; }
.para17-hero-media img { width:100%; aspect-ratio:4/4.35; object-fit:cover; object-position:center 20%; border-radius:30px; box-shadow:0 24px 64px rgba(5,65,50,.18); }
.para17-hero-note { position:absolute; left:-34px; bottom:34px; width:min(285px,70%); background:#fff; border-radius:18px; padding:18px 20px; box-shadow:0 18px 44px rgba(4,61,47,.16); border:1px solid rgba(8,95,72,.08); }
.para17-hero-note span { display:block; color:var(--green); text-transform:uppercase; letter-spacing:.12em; font-size:.66rem; font-weight:900; margin-bottom:6px; }
.para17-hero-note strong { display:block; color:var(--green-deep); font-size:1rem; line-height:1.3; }
.para17-tags { display:flex; gap:8px; flex-wrap:wrap; margin-top:28px; }
.para17-tags span { border:1px solid #d6e4de; background:#fff; border-radius:999px; padding:8px 12px; color:#486158; font-size:.78rem; font-weight:700; }

.para17-signal-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:84px; align-items:start; }
.para17-sticky { position:sticky; top:118px; }
.para17-sticky .lead { margin-top:20px; color:var(--muted); max-width:560px; }
.para17-signals { border-top:1px solid var(--line); }
.para17-signal { display:grid; grid-template-columns:52px 1fr; gap:18px; padding:24px 0; border-bottom:1px solid var(--line); align-items:start; }
.para17-icon { width:42px; height:42px; border-radius:13px; background:var(--mint); color:var(--green); display:grid; place-items:center; flex:none; }
.para17-icon svg { width:21px; height:21px; }
.para17-signal h3 { font-size:1.05rem; margin:0 0 5px; color:var(--ink); }
.para17-signal p { margin:0; color:var(--muted); font-size:.92rem; max-width:680px; }

.para17-areas { background:#f2f7f4; }
.para17-areas-head { display:grid; grid-template-columns:.95fr 1.05fr; gap:72px; align-items:end; margin-bottom:44px; }
.para17-areas-head p { color:var(--muted); max-width:620px; }
.para17-area-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #cfded8; border-bottom:1px solid #cfded8; }
.para17-area { padding:30px 24px 32px; border-right:1px solid #cfded8; min-height:250px; }
.para17-area:last-child { border-right:0; }
.para17-area .para17-icon { margin-bottom:36px; background:#fff; }
.para17-area h3 { font-size:1.13rem; margin-bottom:10px; }
.para17-area p { color:var(--muted); font-size:.9rem; }

.para17-process { background:linear-gradient(135deg,#073f31,#075d46); color:#fff; }
.para17-process-head { display:grid; grid-template-columns:.9fr 1.1fr; gap:72px; align-items:end; }
.para17-process h2 { color:#fff; }
.para17-process .lead { color:rgba(255,255,255,.72); }
.para17-timeline { display:grid; grid-template-columns:repeat(5,1fr); margin-top:48px; border-top:1px solid rgba(255,255,255,.2); }
.para17-step { position:relative; padding:30px 26px 0 0; }
.para17-step::before { content:""; position:absolute; width:12px; height:12px; border-radius:50%; top:-6px; left:0; background:#9fe1ca; box-shadow:0 0 0 7px rgba(159,225,202,.13); }
.para17-step span { color:#9fe1ca; font-size:.7rem; font-weight:900; letter-spacing:.12em; }
.para17-step h3 { color:#fff; font-size:1.08rem; margin:10px 0 7px; }
.para17-step p { color:rgba(255,255,255,.64); font-size:.88rem; }

.para17-solutions-grid { display:grid; grid-template-columns:.92fr 1.08fr; gap:76px; align-items:start; }
.para17-solutions-copy .lead { margin:20px 0 28px; color:var(--muted); }
.para17-solution-list { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.para17-solution { padding:26px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); min-height:180px; }
.para17-solution .para17-icon { margin-bottom:28px; }
.para17-solution h3 { font-size:1.05rem; margin-bottom:7px; }
.para17-solution p { color:var(--muted); font-size:.88rem; }

.para17-nr1 { background:#f7faf8; }
.para17-nr1-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:72px; align-items:center; }
.para17-nr1-copy .lead { color:var(--muted); margin:20px 0 28px; }
.para17-nr1-panel { background:#fff; border:1px solid var(--line); border-radius:24px; overflow:hidden; }
.para17-nr1-row { display:grid; grid-template-columns:46px 1fr; gap:14px; padding:22px 24px; border-bottom:1px solid var(--line); align-items:center; }
.para17-nr1-row:last-child { border-bottom:0; }
.para17-nr1-row strong { display:block; font-size:.95rem; color:var(--green-deep); }
.para17-nr1-row span { display:block; margin-top:3px; color:var(--muted); font-size:.84rem; }

.para17-faq-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:76px; align-items:start; }
.para17-faq-copy .lead { color:var(--muted); margin-top:18px; }
.para17-faq { border-top:1px solid var(--line); }
.para17-faq details { border-bottom:1px solid var(--line); padding:0; }
.para17-faq summary { list-style:none; cursor:pointer; padding:22px 42px 22px 0; font-weight:780; color:var(--green-deep); position:relative; }
.para17-faq summary::-webkit-details-marker { display:none; }
.para17-faq summary::after { content:"+"; position:absolute; right:4px; top:18px; width:28px; height:28px; border-radius:50%; background:#eef7f3; color:var(--green); display:grid; place-items:center; font-size:1.1rem; }
.para17-faq details[open] summary::after { content:"–"; }
.para17-faq details p { padding:0 42px 22px 0; color:var(--muted); font-size:.92rem; max-width:780px; }

.para17 .final-cta { box-shadow:0 24px 60px rgba(5,70,53,.10); }

@media(max-width:1100px){
  .para17-hero-grid,.para17-signal-grid,.para17-process-head,.para17-solutions-grid,.para17-nr1-grid,.para17-faq-grid { grid-template-columns:1fr; gap:46px; }
  .para17-sticky { position:static; }
  .para17-hero-media { max-width:720px; }
  .para17-area-grid { grid-template-columns:1fr 1fr; }
  .para17-area:nth-child(2) { border-right:0; }
  .para17-area:nth-child(-n+2) { border-bottom:1px solid #cfded8; }
  .para17-timeline { grid-template-columns:1fr; border-top:0; gap:12px; }
  .para17-step { padding:0 0 0 34px; }
  .para17-step::before { top:5px; }
}
@media(max-width:760px){
  .para17 .section { padding:72px 0; }
  .para17-hero { padding:42px 0 64px; }
  .para17-hero-grid { gap:34px; }
  .para17-hero-media img { border-radius:22px; aspect-ratio:4/5; }
  .para17-hero-note { left:16px; right:16px; bottom:16px; width:auto; }
  .para17-areas-head { grid-template-columns:1fr; gap:20px; margin-bottom:30px; }
  .para17-area-grid { grid-template-columns:1fr; }
  .para17-area { border-right:0; border-bottom:1px solid #cfded8; min-height:0; }
  .para17-area:last-child { border-bottom:0; }
  .para17-solution-list { grid-template-columns:1fr; }
  .para17-nr1-row { grid-template-columns:40px 1fr; padding:19px 18px; }
}


/* NR-1 v18 */
.nr18 .section{padding:92px 0}.nr18-hero{padding:72px 0 86px;background:linear-gradient(180deg,#fff 0%,#f5f9f7 100%)}
.nr18-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}.nr18-hero-copy h1{font-size:clamp(3rem,5.1vw,5.9rem);line-height:.96;letter-spacing:-.065em;max-width:880px}.nr18-hero-copy .lead{margin:24px 0 0;max-width:760px}.nr18-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.nr18-scope{margin-top:22px;padding-top:20px;border-top:1px solid var(--line);display:flex;gap:12px;align-items:flex-start;color:var(--muted);font-size:.86rem}.nr18-scope strong{color:var(--green-deep)}
.nr18-hero-media{position:relative}.nr18-hero-media img{width:100%;min-height:590px;object-fit:cover;border-radius:32px;box-shadow:0 24px 60px rgba(5,65,48,.16)}.nr18-hero-card{position:absolute;left:-32px;bottom:30px;width:min(320px,72%);background:#fff;border-radius:18px;padding:20px 22px;box-shadow:0 16px 42px rgba(0,0,0,.13);border:1px solid rgba(7,63,52,.08)}.nr18-hero-card span{display:block;color:var(--green);text-transform:uppercase;letter-spacing:.11em;font-size:.68rem;font-weight:850;margin-bottom:7px}.nr18-hero-card strong{display:block;color:var(--green-deep);font-size:1.15rem;line-height:1.15}
.nr18-facts{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.nr18-fact{padding:28px 30px;border-right:1px solid var(--line)}.nr18-fact:last-child{border-right:0}.nr18-fact .num{display:inline-flex;width:36px;height:36px;border-radius:50%;background:var(--mint);color:var(--green);align-items:center;justify-content:center;font-size:.72rem;font-weight:900;margin-bottom:20px}.nr18-fact h3{font-size:1.18rem;margin-bottom:8px}.nr18-fact p{color:var(--muted);font-size:.92rem}.nr18-fact strong{color:var(--green-deep)}
.nr18-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:76px;align-items:start}.nr18-intro h2{font-size:clamp(2.5rem,4vw,4.6rem);line-height:.98;letter-spacing:-.05em}.nr18-intro-copy{display:grid;gap:16px}.nr18-intro-copy p{color:var(--muted)}.nr18-intro-copy .lead{color:var(--ink)}
.nr18-factor-list{margin-top:30px;border-top:1px solid var(--line)}.nr18-factor{display:grid;grid-template-columns:54px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}.nr18-factor-icon{width:42px;height:42px;border-radius:13px;background:var(--mint);color:var(--green);display:grid;place-items:center}.nr18-factor-icon svg{width:21px;height:21px}.nr18-factor h3{font-size:1rem;margin-bottom:4px}.nr18-factor p{color:var(--muted);font-size:.9rem}
.nr18-lens{background:#f0f6f3}.nr18-lens-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:68px;align-items:center}.nr18-lens h2{font-size:clamp(2.45rem,3.8vw,4.4rem);line-height:.98;letter-spacing:-.05em}.nr18-question{background:#fff;border:1px solid var(--line);border-radius:26px;padding:34px;box-shadow:var(--shadow-soft)}.nr18-question .label{color:var(--green);font-weight:850;text-transform:uppercase;letter-spacing:.1em;font-size:.68rem}.nr18-question blockquote{margin:16px 0 20px;font-size:clamp(1.7rem,2.5vw,2.7rem);line-height:1.08;color:var(--green-deep);font-weight:780;letter-spacing:-.035em}.nr18-question p{color:var(--muted)}
.nr18-dark{background:#073f34;color:#fff}.nr18-split-head{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:end;margin-bottom:42px}.nr18-dark h2{color:#fff;font-size:clamp(2.5rem,4vw,4.8rem);line-height:.98;letter-spacing:-.05em}.nr18-dark .lead{color:rgba(255,255,255,.72)}.nr18-roles{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.nr18-role{padding:34px 34px 38px}.nr18-role:first-child{border-right:1px solid rgba(255,255,255,.18)}.nr18-role-kicker{color:#8ed8bf;text-transform:uppercase;letter-spacing:.11em;font-size:.69rem;font-weight:850}.nr18-role h3{color:#fff;font-size:1.45rem;margin:10px 0 18px}.nr18-role ul{list-style:none;padding:0;margin:0;display:grid;gap:10px;color:rgba(255,255,255,.72)}.nr18-role li{position:relative;padding-left:18px}.nr18-role li:before{content:'•';position:absolute;left:0;color:#8ed8bf}.nr18-boundary{margin-top:24px;color:rgba(255,255,255,.68);font-size:.88rem}.nr18-boundary strong{color:#fff}
.nr18-support-head{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:end;margin-bottom:36px}.nr18-support-head h2{font-size:clamp(2.4rem,3.7vw,4.4rem);line-height:.98;letter-spacing:-.05em}.nr18-support-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.nr18-support-item{padding:28px 24px;border-right:1px solid var(--line)}.nr18-support-item:last-child{border-right:0}.nr18-support-icon{width:44px;height:44px;border-radius:14px;background:var(--mint);color:var(--green);display:grid;place-items:center;margin-bottom:24px}.nr18-support-icon svg{width:22px;height:22px}.nr18-support-item h3{font-size:1.08rem;margin-bottom:8px}.nr18-support-item p{color:var(--muted);font-size:.9rem}.nr18-support-item a{display:inline-flex;margin-top:16px;color:var(--green-deep);font-weight:800;font-size:.86rem}
.nr18-audience{background:#f8faf9}.nr18-audience-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}.nr18-audience h2{font-size:clamp(2.3rem,3.7vw,4.2rem);line-height:.99;letter-spacing:-.05em}.nr18-audience-list{border-top:1px solid var(--line)}.nr18-audience-row{display:grid;grid-template-columns:180px 1fr;gap:24px;padding:19px 0;border-bottom:1px solid var(--line)}.nr18-audience-row strong{color:var(--green-deep)}.nr18-audience-row span{color:var(--muted);font-size:.91rem}
.nr18-faq{display:grid;grid-template-columns:.78fr 1.22fr;gap:70px}.nr18-faq h2{font-size:clamp(2.3rem,3.6vw,4.2rem);line-height:.99;letter-spacing:-.05em}.nr18-faq-list details{border-top:1px solid var(--line);padding:18px 0}.nr18-faq-list details:last-child{border-bottom:1px solid var(--line)}.nr18-faq-list summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-weight:800;color:var(--green-deep)}.nr18-faq-list summary::-webkit-details-marker{display:none}.nr18-faq-list summary:after{content:'+';font-size:1.35rem;color:var(--green)}.nr18-faq-list details[open] summary:after{content:'−'}.nr18-faq-list p{padding-top:12px;color:var(--muted);max-width:780px}
.nr18-source{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.nr18-source strong{color:var(--green-deep)}.nr18-source-links{display:flex;gap:18px;flex-wrap:wrap}.nr18-source a{color:var(--green);font-weight:800;font-size:.86rem}
@media(max-width:1180px){.nr18-support-grid{grid-template-columns:repeat(2,1fr)}.nr18-support-item:nth-child(2){border-right:0}.nr18-support-item:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:1020px){.nr18-hero-grid,.nr18-intro,.nr18-lens-grid,.nr18-split-head,.nr18-support-head,.nr18-audience-grid,.nr18-faq{grid-template-columns:1fr;gap:42px}.nr18-hero-media img{min-height:460px}.nr18-hero-card{left:20px}.nr18-facts{grid-template-columns:1fr}.nr18-fact{border-right:0;border-bottom:1px solid var(--line)}.nr18-fact:last-child{border-bottom:0}.nr18-roles{grid-template-columns:1fr}.nr18-role:first-child{border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}}
@media(max-width:760px){.nr18 .section{padding:72px 0}.nr18-hero{padding:40px 0 62px}.nr18-hero-copy h1{font-size:clamp(2.75rem,12vw,4.1rem)}.nr18-hero-media img{min-height:340px;border-radius:24px}.nr18-hero-card{position:relative;left:auto;bottom:auto;width:100%;margin-top:-28px}.nr18-support-grid{grid-template-columns:1fr}.nr18-support-item{border-right:0;border-bottom:1px solid var(--line)}.nr18-audience-row{grid-template-columns:1fr;gap:6px}.nr18-source{align-items:flex-start;flex-direction:column}}


/* Solucoes v19 */
.sol2-hero{padding:76px 0 92px;background:linear-gradient(180deg,#fff 0%,#f5faf7 100%)}
.sol2-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}.sol2-hero-copy .lead{margin-top:24px;max-width:690px}.sol2-hero-note{margin-top:24px;color:var(--muted);font-size:.94rem}.sol2-hero-note span{font-weight:800;color:var(--green-deep)}
.sol2-hero-media{position:relative}.sol2-hero-media img{width:100%;height:590px;object-fit:cover;object-position:center top;border-radius:32px;box-shadow:var(--shadow)}.sol2-photo-label{position:absolute;left:-28px;bottom:28px;width:270px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px 20px;box-shadow:var(--shadow)}.sol2-photo-label strong{display:block;color:var(--green-deep);margin-bottom:5px}.sol2-photo-label span{font-size:.86rem;color:var(--muted)}
.sol2-head{align-items:start}.sol2-objective-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.sol2-objective-grid article{padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:235px;background:#fff}.sol2-objective-grid h3{margin:24px 0 10px;font-size:1.18rem}.sol2-objective-grid p{color:var(--muted);font-size:.93rem}.sol2-icon{width:48px;height:48px;border-radius:15px;background:var(--mint);color:var(--green);display:grid;place-items:center}.sol2-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sol2-format-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.sol2-format-grid article{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;min-height:285px;display:flex;flex-direction:column;position:relative;transition:.2s ease}.sol2-format-grid article:hover{transform:translateY(-4px);box-shadow:0 16px 38px rgba(4,72,52,.08)}.sol2-format-grid article.featured{background:var(--green-deep);color:#fff;border-color:var(--green-deep)}.sol2-format-grid article.featured p{color:rgba(255,255,255,.7)}.sol2-format-grid article.featured .sol2-chip{background:rgba(255,255,255,.12);color:#c9f3e3}.sol2-format-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:48px}.sol2-format-top>span{font-size:.72rem;letter-spacing:.12em;font-weight:900;color:var(--green)}.featured .sol2-format-top>span{color:#8ed8bf}.sol2-format-icon{width:46px;height:46px;border-radius:14px;background:var(--mint);color:var(--green);display:grid;place-items:center;font-weight:900;font-size:1.2rem}.featured .sol2-format-icon{background:rgba(255,255,255,.1);color:#fff}.sol2-format-grid h3{font-size:1.35rem;margin-bottom:10px}.sol2-format-grid p{color:var(--muted);font-size:.94rem;margin-bottom:26px}.sol2-chip{margin-top:auto;align-self:flex-start;padding:7px 11px;border-radius:999px;background:#eef7f3;color:var(--green-deep);font-size:.74rem;font-weight:800}
.sol2-journey-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:78px;align-items:center}.sol2-journey-copy .lead{margin-top:22px}.sol2-journey{display:grid;gap:0}.sol2-journey>div{display:grid;grid-template-columns:58px 160px 1fr;align-items:center;gap:14px;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.12)}.sol2-journey>div:last-child{border-bottom:0}.sol2-journey span{width:38px;height:38px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:grid;place-items:center;color:#8ed8bf;font-size:.74rem;font-weight:900}.sol2-journey strong{color:#fff}.sol2-journey small{color:rgba(255,255,255,.65);font-size:.9rem}
.sol2-nr1-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:74px;align-items:start}.sol2-nr1-body .lead{margin-bottom:26px}.sol2-nr1-tags{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:28px}.sol2-nr1-tags span{padding:14px 16px;border:1px solid var(--line);border-radius:14px;color:var(--green-deep);font-weight:700;background:#fff}
.sol2-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.sol2-accordion{border-top:1px solid var(--line)}.sol2-accordion details{border-bottom:1px solid var(--line);padding:0}.sol2-accordion summary{list-style:none;cursor:pointer;padding:20px 0;font-weight:760;display:flex;justify-content:space-between;gap:20px}.sol2-accordion summary::-webkit-details-marker{display:none}.sol2-accordion summary::after{content:'+';font-size:1.2rem;color:var(--green)}.sol2-accordion details[open] summary::after{content:'−'}.sol2-accordion p{padding:0 0 20px;color:var(--muted);max-width:720px}
@media(max-width:1020px){.sol2-hero-grid,.sol2-journey-grid,.sol2-nr1-grid,.sol2-faq-grid{grid-template-columns:1fr;gap:40px}.sol2-hero-media img{height:520px}.sol2-photo-label{left:18px}.sol2-objective-grid,.sol2-format-grid{grid-template-columns:1fr 1fr}.sol2-journey>div{grid-template-columns:58px 140px 1fr}}
@media(max-width:680px){.sol2-hero{padding:42px 0 64px}.sol2-hero-media img{height:430px;border-radius:24px}.sol2-photo-label{position:static;width:auto;margin-top:12px}.sol2-objective-grid,.sol2-format-grid,.sol2-nr1-tags{grid-template-columns:1fr}.sol2-objective-grid{border-left:0}.sol2-objective-grid article{border-left:1px solid var(--line)}.sol2-format-grid article{min-height:240px}.sol2-journey>div{grid-template-columns:48px 1fr}.sol2-journey small{grid-column:2}.sol2-faq-grid{gap:34px}}


/* =========================================================
   Make v20 — unified refinements
   ========================================================= */

/* Global media discipline: preserve faces and avoid unnecessary crop. */
img { height:auto; }
.hero-photo { min-height:0; aspect-ratio:8/5; object-fit:cover; object-position:center center; }
.nr-photo { height:auto; aspect-ratio:4/3; object-fit:cover; object-position:center 32%; }
.gallery-grid img { object-position:center 28%; }

/* About — the source is 16:9, so keep the full scene visible. */
.about5-hero-media img { aspect-ratio:16/9; object-fit:cover; object-position:center center; }
.about5-founder-media img { object-position:center 18%; }
.about5-founder:nth-child(2) .about5-founder-media img { object-position:center 13%; }

/* Para empresas — source is portrait-oriented; preserve its full framing. */
.para17-hero-media img { aspect-ratio:auto; height:auto; object-fit:contain; object-position:center top; background:#eef5f1; }

/* NR-1 — source is wide; match its native proportions. */
.nr18-hero-media img { min-height:0; aspect-ratio:8/5; height:auto; object-fit:cover; object-position:center center; }

/* Soluções — source is portrait-oriented; avoid forced 590px crop. */
.sol2-hero-media img { height:auto; aspect-ratio:auto; object-fit:contain; object-position:center top; background:#eef5f1; }

/* Smooth anchor targets below sticky header. */
[id] { scroll-margin-top:110px; }

/* -------------------------
   Conteúdos v20
   ------------------------- */
.content20 { background:#fff; }
.content20-hero { padding:72px 0 86px; background:linear-gradient(180deg,#fff 0%,#f5f9f7 100%); }
.content20-hero-grid { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.content20-hero-copy h1 { font-size:clamp(3.1rem,5vw,5.3rem); line-height:.98; letter-spacing:-.055em; max-width:760px; margin:12px 0 24px; }
.content20-hero-copy .lead { max-width:690px; color:var(--muted); }
.content20-hero-media { margin:0; position:relative; }
.content20-hero-media img { width:100%; aspect-ratio:3/2; object-fit:cover; object-position:center 42%; border-radius:30px; box-shadow:var(--shadow); }
.content20-hero-note { position:absolute; right:18px; bottom:18px; background:#fff; border:1px solid var(--line); border-radius:16px; padding:14px 16px; color:var(--green-deep); font-size:.82rem; font-weight:800; box-shadow:0 12px 32px rgba(6,65,50,.12); }
.content20-search { margin-top:28px; display:flex; align-items:center; gap:10px; border:1px solid #cfe0d8; background:#fff; border-radius:999px; padding:12px 16px; max-width:610px; }
.content20-search input { border:0; outline:0; width:100%; font:inherit; color:var(--ink); background:transparent; }
.content20-search svg { width:20px; height:20px; color:var(--green); flex:none; }

.content20-featured { padding:82px 0; }
.content20-featured-card { display:grid; grid-template-columns:.88fr 1.12fr; min-height:430px; border:1px solid var(--line); border-radius:28px; overflow:hidden; background:#fff; }
.content20-featured-visual { background:linear-gradient(145deg,#edf7f3,#d9eee5); padding:36px; display:flex; align-items:center; justify-content:center; }
.content20-calendar { width:min(100%,430px); aspect-ratio:1/1; border-radius:26px; background:#fff; border:1px solid #cfe0d8; box-shadow:0 18px 44px rgba(5,69,52,.10); padding:28px; display:grid; grid-template-rows:auto 1fr; gap:24px; }
.content20-calendar-head { display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--line); padding-bottom:16px; }
.content20-calendar-head strong { color:var(--green-deep); font-size:1.15rem; }
.content20-calendar-head span { color:var(--green); font-weight:800; font-size:.78rem; }
.content20-calendar-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.content20-calendar-grid span { min-height:66px; border-radius:14px; background:#f4f8f6; border:1px solid #e0ebe6; display:grid; place-items:center; color:var(--green-deep); font-weight:800; font-size:.78rem; }
.content20-calendar-grid span:nth-child(3n) { background:#e7f3ee; color:var(--green); }
.content20-featured-copy { padding:48px 52px; display:flex; flex-direction:column; justify-content:center; }
.content20-featured-meta { display:flex; gap:14px; flex-wrap:wrap; align-items:center; color:var(--muted); font-size:.83rem; margin-bottom:18px; }
.content20-featured-copy h2 { font-size:clamp(2.35rem,3.6vw,4rem); line-height:1.01; letter-spacing:-.045em; max-width:800px; }
.content20-featured-copy p { color:var(--muted); margin:22px 0 28px; max-width:680px; }

.content20-filter-wrap { padding:0 0 26px; }
.content20-filters { display:flex; gap:9px; flex-wrap:wrap; align-items:center; }
.content20-filter { border:1px solid #cfded8; border-radius:999px; padding:10px 15px; background:#fff; color:var(--green-deep); font-weight:760; font-size:.82rem; cursor:pointer; transition:.18s ease; }
.content20-filter:hover,.content20-filter.is-active { background:var(--green); color:#fff; border-color:var(--green); }

.content20-library { padding:70px 0 96px; }
.content20-library-head { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:36px; }
.content20-library-head .lead { max-width:560px; color:var(--muted); }
.content20-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.content20-card { border:1px solid var(--line); border-radius:22px; overflow:hidden; background:#fff; display:flex; flex-direction:column; min-height:390px; transition:.18s ease; }
.content20-card:hover { transform:translateY(-3px); box-shadow:0 18px 38px rgba(7,65,50,.08); }
.content20-card-thumb { height:132px; background:#eef7f3; position:relative; overflow:hidden; display:flex; align-items:flex-end; padding:20px; }
.content20-card-thumb::after { content:''; position:absolute; width:150px; height:150px; border-radius:50%; border:1px solid rgba(0,140,100,.16); right:-45px; top:-55px; box-shadow:0 0 0 32px rgba(0,140,100,.035),0 0 0 64px rgba(0,140,100,.025); }
.content20-card-thumb svg { width:34px; height:34px; color:var(--green); position:relative; z-index:1; }
.content20-card-body { padding:24px; display:flex; flex-direction:column; flex:1; }
.content20-card-top { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:15px; color:var(--muted); font-size:.74rem; }
.content20-card-top span { color:var(--green); font-weight:850; text-transform:uppercase; letter-spacing:.08em; }
.content20-card h3 { font-size:1.22rem; line-height:1.12; margin-bottom:12px; }
.content20-card p { color:var(--muted); font-size:.91rem; line-height:1.55; margin-bottom:22px; }
.content20-card a { margin-top:auto; color:var(--green-deep); font-weight:820; font-size:.88rem; }
.content20-empty { display:none; padding:30px; border:1px dashed #bfd4ca; border-radius:18px; color:var(--muted); text-align:center; }
.content20-paths { padding:86px 0; background:#073f31; color:#fff; }
.content20-paths-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:70px; align-items:center; }
.content20-paths h2 { color:#fff; }
.content20-paths p { color:rgba(255,255,255,.72); max-width:600px; margin-top:20px; }
.content20-path-list { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.content20-path-list a { border:1px solid rgba(255,255,255,.16); border-radius:18px; padding:22px; color:#fff; min-height:150px; display:flex; flex-direction:column; justify-content:flex-end; background:rgba(255,255,255,.045); }
.content20-path-list span { color:#8ed8bf; font-size:.7rem; text-transform:uppercase; letter-spacing:.1em; font-weight:850; margin-bottom:8px; }
.content20-path-list strong { font-size:1.08rem; }

/* -------------------------
   Article v20
   ------------------------- */
.article20 { background:#fff; }
.article20-header { padding:64px 0 48px; }
.article20-header-inner { max-width:1040px; margin:0 auto; }
.article20-breadcrumb { display:flex; gap:9px; flex-wrap:wrap; align-items:center; color:var(--muted); font-size:.8rem; margin-bottom:24px; }
.article20-breadcrumb a { color:var(--muted); }
.article20-meta { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:18px; color:var(--muted); font-size:.8rem; }
.article20-meta strong { color:var(--green); text-transform:uppercase; letter-spacing:.09em; }
.article20-header h1 { font-size:clamp(3rem,5.2vw,5.5rem); line-height:.98; letter-spacing:-.055em; max-width:1000px; }
.article20-dek { font-size:1.16rem; color:var(--muted); max-width:860px; margin-top:22px; line-height:1.62; }
.article20-byline { display:flex; align-items:center; justify-content:space-between; gap:18px; padding-top:24px; margin-top:26px; border-top:1px solid var(--line); color:var(--muted); font-size:.85rem; }
.article20-copy { border:0; background:transparent; color:var(--green-deep); font-weight:800; cursor:pointer; }
.article20-featured { max-width:1180px; margin:0 auto; padding:0 24px; }
.article20-featured img { width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; object-position:center center; border-radius:28px; box-shadow:var(--shadow); }
.article20-mobile-toc { display:none; max-width:860px; margin:24px auto 0; padding:0 24px; }
.article20-mobile-toc details { border:1px solid var(--line); border-radius:16px; background:#fff; padding:0 18px; }
.article20-mobile-toc summary { padding:16px 0; font-weight:820; cursor:pointer; }
.article20-mobile-toc nav { display:grid; gap:9px; padding:0 0 16px; }
.article20-mobile-toc a { color:var(--green-deep); font-size:.9rem; }
.article20-layout { display:grid; grid-template-columns:250px minmax(0,760px); gap:68px; align-items:start; justify-content:center; padding-top:72px; padding-bottom:96px; }
.article20-aside { position:sticky; top:110px; display:grid; gap:18px; }
.article20-toc { border-top:2px solid var(--green); padding-top:16px; display:grid; gap:10px; }
.article20-toc strong { margin-bottom:4px; color:var(--green-deep); }
.article20-toc a { color:var(--muted); font-size:.86rem; line-height:1.4; }
.article20-aside-cta { background:#eef7f3; border-radius:18px; padding:20px; }
.article20-aside-cta span { color:var(--green); font-size:.7rem; text-transform:uppercase; letter-spacing:.09em; font-weight:850; }
.article20-aside-cta strong { display:block; margin:8px 0 14px; color:var(--green-deep); }
.article20-aside-cta a { color:var(--green-deep); font-weight:800; font-size:.85rem; }
.article20-body { font-size:1.08rem; line-height:1.75; color:#24332d; }
.article20-body > p { margin:0 0 24px; }
.article20-intro { font-size:1.25rem; line-height:1.68; color:var(--green-deep); }
.article20-body h2 { font-size:clamp(2rem,3.1vw,2.8rem); line-height:1.08; letter-spacing:-.035em; margin:58px 0 20px; }
.article20-callout { margin:42px 0; padding:28px 32px; border-left:4px solid var(--green); background:#f1f7f4; color:var(--green-deep); font-weight:760; font-size:1.32rem; line-height:1.45; border-radius:0 18px 18px 0; }
.article20-inline { margin:44px 0; padding:30px; border-radius:22px; background:#073f31; color:#fff; }
.article20-inline h3 { color:#fff; font-size:1.55rem; line-height:1.2; margin:8px 0 20px; }
.article20-inline .eyebrow { color:#8ed8bf; }
.article20-inline-actions { display:flex; gap:10px; flex-wrap:wrap; }
.article20-steps { list-style:none; padding:0; margin:30px 0 46px; counter-reset:steps; border-top:1px solid var(--line); }
.article20-steps li { counter-increment:steps; display:grid; grid-template-columns:46px 190px 1fr; gap:16px; align-items:start; padding:18px 0; border-bottom:1px solid var(--line); }
.article20-steps li::before { content:counter(steps,decimal-leading-zero); color:var(--green); font-size:.72rem; font-weight:900; letter-spacing:.08em; }
.article20-steps strong { color:var(--green-deep); }
.article20-steps span { color:var(--muted); font-size:.95rem; }
.article20-faq details { border-top:1px solid var(--line); padding:18px 0; }
.article20-faq details:last-child { border-bottom:1px solid var(--line); }
.article20-faq summary { cursor:pointer; font-weight:800; color:var(--green-deep); }
.article20-faq p { color:var(--muted); padding-top:12px; }
.article20-sources { margin:48px 0 0; padding:26px 28px; border-radius:18px; background:#f7faf8; border:1px solid var(--line); }
.article20-sources h3 { margin:0 0 8px; font-size:1.2rem; }
.article20-sources p { color:var(--muted); font-size:.92rem; margin:0; }
.article20-end { margin-top:54px; padding:34px; border-radius:22px; background:#eef7f3; }
.article20-end h2 { margin:8px 0 14px; }
.article20-related { background:#f4f8f6; padding:78px 0; }
.article20-related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.article20-related-grid a { background:#fff; border:1px solid var(--line); border-radius:18px; padding:24px; min-height:190px; display:flex; flex-direction:column; }
.article20-related-grid span { color:var(--green); font-size:.72rem; font-weight:850; text-transform:uppercase; letter-spacing:.08em; }
.article20-related-grid strong { margin:12px 0 20px; color:var(--green-deep); font-size:1.08rem; line-height:1.25; }
.article20-related-grid small { margin-top:auto; color:var(--muted); }

@media(max-width:1020px){
  .content20-hero-grid,.content20-featured-card,.content20-paths-grid { grid-template-columns:1fr; gap:42px; }
  .content20-grid { grid-template-columns:repeat(2,1fr); }
  .content20-path-list { grid-template-columns:1fr 1fr; }
  .article20-layout { grid-template-columns:minmax(0,760px); }
  .article20-aside { display:none; }
  .article20-mobile-toc { display:block; }
  .about5-hero-media img { aspect-ratio:16/9; }
  .nr18-hero-media img { aspect-ratio:8/5; }
}
@media(max-width:760px){
  .content20-hero { padding:42px 0 64px; }
  .content20-hero-copy h1 { font-size:clamp(2.6rem,12vw,3.75rem); }
  .content20-hero-media img { border-radius:22px; aspect-ratio:4/3; object-position:center 45%; }
  .content20-hero-note { position:static; margin-top:10px; display:inline-block; }
  .content20-featured { padding:64px 0; }
  .content20-featured-copy { padding:28px 24px 32px; }
  .content20-featured-visual { padding:24px; }
  .content20-calendar { padding:20px; }
  .content20-calendar-grid span { min-height:52px; }
  .content20-library-head { flex-direction:column; align-items:flex-start; }
  .content20-grid { grid-template-columns:1fr; }
  .content20-path-list { grid-template-columns:1fr; }
  .article20-header { padding:42px 0 34px; }
  .article20-header h1 { font-size:clamp(2.55rem,12vw,3.7rem); }
  .article20-byline { align-items:flex-start; flex-direction:column; }
  .article20-featured { padding:0 16px; }
  .article20-featured img { border-radius:20px; aspect-ratio:4/3; object-position:center center; }
  .article20-layout { padding:48px 20px 72px; }
  .article20-body { font-size:1.02rem; }
  .article20-intro { font-size:1.14rem; }
  .article20-steps li { grid-template-columns:38px 1fr; }
  .article20-steps span { grid-column:2; }
  .article20-related-grid { grid-template-columns:1fr; }
  .about5-hero-media img { aspect-ratio:16/10; object-position:center center; }
  .para17-hero-media img,.sol2-hero-media img { max-height:none; }
  .nr18-hero-media img { aspect-ratio:4/3; object-position:62% center; }
  .hero-photo { aspect-ratio:4/3; object-position:58% center; }
}
