/* Piloto visual — Legal Tech Premium. Carregado apenas na home. */
.tech-pilot {
  --tech-navy: #07182c;
  --tech-blue: #0d2948;
  --tech-cyan: #66d9e8;
  --tech-gold: #d9b75f;
  --tech-line: rgba(121, 190, 210, .18);
  font-family: 'Manrope', sans-serif;
}

.tech-pilot h1,
.tech-pilot h2,
.tech-pilot h3,
.tech-pilot h4 {
  font-family: 'Newsreader', serif;
}

.scroll-progress {
  position: fixed;
  inset: 0 auto auto 0;
  width: var(--scroll-progress, 0%);
  height: 2px;
  z-index: 2000;
  pointer-events: none;
  background: linear-gradient(90deg, var(--tech-gold), var(--tech-cyan));
}

.tech-pilot header {
  padding: 8px 0;
  border-bottom: 1px solid rgba(7, 24, 44, .10);
  box-shadow: none;
  background: rgba(255, 255, 255, .92);
  backdrop-filter: blur(18px) saturate(150%);
  -webkit-backdrop-filter: blur(18px) saturate(150%);
}

.tech-pilot header.scrolled {
  box-shadow: 0 18px 45px rgba(7, 24, 44, .08);
}

.tech-pilot .logo {
  height: 56px;
  filter: none;
}

.tech-pilot .menu {
  gap: 36px;
}

.tech-pilot .menu a {
  font-size: .82rem;
  font-weight: 650;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.tech-pilot .menu a::after {
  bottom: -10px;
  height: 1px;
  background: linear-gradient(90deg, var(--tech-gold), var(--tech-cyan));
}

.tech-pilot .btn-header {
  position: relative;
  overflow: hidden;
  padding: 11px 21px;
  border: 1px solid var(--primary);
  border-radius: 2px;
  background: var(--primary);
  color: #fff;
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.tech-pilot .btn-header:hover {
  background: var(--tech-blue);
  transform: translateY(-1px);
}

.tech-pilot .home-hero {
  min-height: 690px;
  padding: 118px 0 72px;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 84% 46%, rgba(55, 148, 179, .17), transparent 28%),
    radial-gradient(circle at 18% 10%, rgba(217, 183, 95, .08), transparent 25%),
    linear-gradient(130deg, #061426 0%, #0a213b 58%, #07182c 100%);
}

.tech-pilot .hero-grid {
  position: absolute;
  inset: 0;
  z-index: -2;
  opacity: .8;
  background-image:
    linear-gradient(var(--tech-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--tech-line) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.78), transparent 92%);
}

.tech-pilot .hero-grid::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(6,20,38,.82) 0%, transparent 56%);
}

.tech-pilot .hero-glow {
  position: absolute;
  z-index: -1;
  width: 380px;
  aspect-ratio: 1;
  border-radius: 50%;
  filter: blur(100px);
  opacity: .13;
}

.tech-pilot .hero-glow-one { top: 10%; right: 6%; background: var(--tech-cyan); }
.tech-pilot .hero-glow-two { bottom: -35%; left: 24%; background: var(--tech-gold); }

.tech-pilot .home-hero-watermark {
  display: none;
}

.tech-pilot .home-hero-content {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(390px, .75fr);
  align-items: center;
  gap: clamp(50px, 8vw, 110px);
  width: 100%;
  max-width: 1200px;
  text-align: left;
}

.tech-pilot .hero-copy {
  max-width: 690px;
}

.tech-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 26px;
  color: rgba(255,255,255,.66);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .2em;
}

.tech-eyebrow span {
  width: 32px;
  height: 1px;
  background: var(--tech-gold);
  box-shadow: 0 0 10px rgba(217,183,95,.45);
}

.tech-pilot .home-hero-title {
  max-width: 680px;
  margin-bottom: 25px;
  color: #fff;
  font-size: clamp(3.25rem, 5.6vw, 5.6rem);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -.045em;
}

.tech-pilot .home-hero-title em {
  color: var(--tech-gold);
  font-weight: 400;
}

.tech-pilot .home-hero-lead {
  max-width: 595px;
  margin: 0 0 37px;
  color: rgba(235, 243, 251, .72);
  font-size: 1.03rem;
  line-height: 1.85;
}

.tech-pilot .home-hero-actions {
  justify-content: flex-start;
  gap: 13px;
}

.tech-pilot .home-hero-actions .btn {
  min-height: 50px;
  padding: 14px 21px;
  border-radius: 2px;
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .065em;
  text-transform: uppercase;
}

.tech-pilot .home-hero-actions .btn-whatsapp {
  border: 1px solid #38bb72;
  background: #2fa966;
  box-shadow: 0 12px 30px rgba(47,169,102,.18);
}

.tech-pilot .home-hero-actions .btn-secondary {
  border-color: rgba(255,255,255,.22);
  background: rgba(255,255,255,.035);
  backdrop-filter: blur(8px);
}

.tech-pilot .home-hero-actions .btn-secondary i {
  margin-left: 7px;
  font-size: .68rem;
  transition: transform .25s ease;
}

.tech-pilot .home-hero-actions .btn-secondary:hover i { transform: translateY(3px); }

.hero-system {
  display: grid;
  place-items: center;
}

.system-frame {
  position: relative;
  width: min(100%, 430px);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border: 1px solid rgba(132, 204, 222, .18);
  background: radial-gradient(circle, rgba(38, 111, 139, .13), transparent 58%);
  box-shadow: inset 0 0 80px rgba(56, 155, 180, .045), 0 35px 90px rgba(0,0,0,.18);
}

.system-frame::before,
.system-frame::after {
  content: '';
  position: absolute;
  inset: 7%;
  border: 1px solid rgba(217,183,95,.16);
  transform: rotate(45deg);
}

.system-frame::after {
  inset: 20%;
  border-color: rgba(102,217,232,.13);
  transform: rotate(15deg);
}

.frame-corner {
  position: absolute;
  width: 22px;
  height: 22px;
  border-color: var(--tech-cyan);
  opacity: .72;
}

.frame-corner-tl { top: -1px; left: -1px; border-top: 2px solid; border-left: 2px solid; }
.frame-corner-tr { top: -1px; right: -1px; border-top: 2px solid; border-right: 2px solid; }
.frame-corner-bl { bottom: -1px; left: -1px; border-bottom: 2px solid; border-left: 2px solid; }
.frame-corner-br { bottom: -1px; right: -1px; border-bottom: 2px solid; border-right: 2px solid; }

.system-orbit {
  position: absolute;
  border: 1px solid rgba(102,217,232,.22);
  border-radius: 50%;
}

.orbit-one { width: 74%; height: 74%; animation: tech-spin 22s linear infinite; }
.orbit-two { width: 50%; height: 50%; border-style: dashed; animation: tech-spin 15s linear infinite reverse; }
.orbit-one::after,
.orbit-two::after {
  content: '';
  position: absolute;
  top: 50%;
  right: -4px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--tech-gold);
  box-shadow: 0 0 16px rgba(217,183,95,.85);
}

.system-axis { position: absolute; background: rgba(102,217,232,.12); }
.axis-x { width: 88%; height: 1px; }
.axis-y { width: 1px; height: 88%; }

.system-monogram {
  position: relative;
  z-index: 2;
  width: 47%;
  opacity: .92;
  filter: drop-shadow(0 0 28px rgba(102,217,232,.13));
}

.system-code {
  position: absolute;
  z-index: 3;
  color: rgba(255,255,255,.42);
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: .58rem;
  letter-spacing: .15em;
}

.code-top { top: 17px; left: 20px; }
.code-bottom { right: 18px; bottom: 16px; }

@keyframes tech-spin { to { transform: rotate(360deg); } }

.tech-pilot .trust-bar {
  position: relative;
  border-top: 1px solid rgba(102,217,232,.08);
  border-bottom: 1px solid rgba(7,24,44,.08);
  background: #fff;
}

.tech-pilot .trust-icon {
  color: var(--primary);
  stroke-width: 1.3;
}

.tech-pilot #areas {
  position: relative;
  padding: 108px 0 112px;
  background:
    linear-gradient(90deg, rgba(7,24,44,.035) 1px, transparent 1px),
    linear-gradient(#f6f8fa 1px, transparent 1px),
    #f9fafb;
  background-size: 88px 88px;
}

.tech-pilot #areas h2 {
  font-size: clamp(2.7rem, 5vw, 4.15rem);
  font-weight: 400;
  letter-spacing: -.035em;
}

.tech-pilot .areas-container {
  counter-reset: area-card;
  gap: 14px;
  padding: 0;
  border: 0;
  background: transparent;
}

.tech-pilot .area-item {
  counter-increment: area-card;
  min-height: 338px;
  padding: 35px 31px 29px;
  border: 1px solid rgba(7,24,44,.11);
  background: rgba(255,255,255,.86);
  backdrop-filter: blur(10px);
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease, background-color .35s ease;
}

.tech-pilot .area-item::before {
  content: '0' counter(area-card);
  position: absolute;
  top: 20px;
  right: 21px;
  color: rgba(7,24,44,.28);
  font: 600 .62rem/1 ui-monospace, SFMono-Regular, Consolas, monospace;
  letter-spacing: .1em;
}

.tech-pilot .area-item::after {
  height: 1px;
  background: linear-gradient(90deg, var(--tech-gold), var(--tech-cyan));
}

.tech-pilot .area-item:hover,
.tech-pilot .area-item:focus-within {
  z-index: 2;
  border-color: rgba(27,103,135,.32);
  background: #fff;
  transform: translateY(-7px);
  box-shadow: 0 28px 65px rgba(7,24,44,.11);
}

.tech-pilot #areas .area-icon-container {
  border-radius: 2px;
  border-color: rgba(13,41,72,.19);
  background: linear-gradient(135deg, rgba(13,41,72,.055), transparent);
}

.tech-pilot .area-item h3 {
  font-size: 1.58rem;
}

.tech-pilot .card-link {
  position: relative;
  padding-bottom: 5px;
}

.tech-pilot .card-link::after {
  content: '';
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 1px;
  background: linear-gradient(90deg, var(--tech-gold), var(--tech-cyan));
  transform: scaleX(.18);
  transform-origin: left;
  transition: transform .3s ease;
}

.tech-pilot .card-link:hover::after { transform: scaleX(1); }

.tech-pilot .cta-section {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(7,24,44,.99), rgba(13,41,72,.96)),
    var(--tech-navy);
}

.tech-pilot .cta-section::before {
  content: '';
  position: absolute;
  inset: 0;
  opacity: .45;
  background-image: linear-gradient(rgba(102,217,232,.11) 1px, transparent 1px), linear-gradient(90deg, rgba(102,217,232,.11) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: radial-gradient(circle at 50% 50%, black, transparent 78%);
}

.tech-pilot .cta-section .container { position: relative; z-index: 1; }
.tech-pilot .cta-section h2 { color: #fff; font-size: clamp(2.4rem, 5vw, 3.8rem); font-weight: 400; }

.tech-pilot footer {
  border-top: 1px solid rgba(102,217,232,.13);
  background: #051322;
}

@media (max-width: 900px) {
  .tech-pilot .home-hero { min-height: auto; padding-top: 130px; }
  .tech-pilot .home-hero-content { grid-template-columns: 1fr; gap: 62px; }
  .tech-pilot .hero-copy { max-width: 760px; }
  .tech-pilot .hero-system { max-width: 440px; margin: 0 auto; width: 100%; }
}

@media (max-width: 640px) {
  .tech-pilot .home-hero { padding: 104px 0 46px; }
  .tech-pilot .home-hero-content { gap: 34px; }
  .tech-pilot .home-hero-title {
    margin-bottom: 20px;
    font-size: clamp(2.55rem, 12.5vw, 3.35rem);
    line-height: 1;
  }
  .tech-pilot .home-hero-lead {
    margin-bottom: 27px;
    font-size: .95rem;
    line-height: 1.7;
  }
  .tech-pilot .home-hero-actions { align-items: stretch; gap: 10px; }
  .tech-pilot .home-hero-actions .btn {
    width: 100%;
    min-height: 46px;
    padding: 12px 18px;
    justify-content: center;
  }
  .tech-pilot .hero-system { max-width: 235px; }
  .tech-pilot .system-code { font-size: .47rem; }
  .tech-pilot .trust-bar::before { display: none; }
  .tech-pilot #areas { padding: 82px 0; background-size: 64px 64px; }
  .tech-pilot .areas-container { gap: 10px; }
}

/* Equipe v3 — retratos compactos e conteúdo em primeiro plano */
.team-tech .sobre-advogado,
.team-tech .sobre-advogado:nth-child(even) {
  grid-template-columns: 220px minmax(0, 1fr);
  align-items: center;
  gap: 38px;
  min-height: 0;
  padding: 32px 38px 32px 32px;
  overflow: hidden;
}

.team-tech .sobre-advogado:nth-child(even) {
  grid-template-columns: minmax(0, 1fr) 220px;
  padding: 32px 32px 32px 38px;
}

.team-tech .foto-container {
  width: 190px;
  height: 230px;
  min-height: 0;
  justify-self: center;
  overflow: visible;
  background: transparent;
}

.team-tech .foto-container::before {
  content: '';
  position: absolute;
  inset: -9px;
  z-index: 2;
  border: 1px solid rgba(13,41,72,.18);
  pointer-events: none;
}

.team-tech .foto-container::after {
  inset: -9px;
  z-index: 3;
  border: 0;
  background:
    linear-gradient(var(--tech-cyan), var(--tech-cyan)) left top / 18px 1px no-repeat,
    linear-gradient(var(--tech-cyan), var(--tech-cyan)) left top / 1px 18px no-repeat,
    linear-gradient(var(--tech-gold), var(--tech-gold)) right bottom / 18px 1px no-repeat,
    linear-gradient(var(--tech-gold), var(--tech-gold)) right bottom / 1px 18px no-repeat;
}

.team-tech .foto-container img {
  width: 190px;
  height: 230px;
  min-height: 0;
  object-fit: cover;
  object-position: center top;
  box-shadow: 0 18px 38px rgba(7,24,44,.15);
}

.team-tech .sobre-advogado:hover img {
  transform: scale(1.01);
}

.team-tech .portrait-index {
  top: -20px;
  left: -20px;
  padding: 6px 8px;
  border-color: rgba(7,24,44,.14);
  color: var(--primary);
  background: #fff;
  box-shadow: 0 8px 20px rgba(7,24,44,.08);
}

.team-tech .lawyer-content {
  padding: 14px 8px;
}

.team-tech .sobre-advogado h3 {
  font-size: clamp(1.9rem, 3.2vw, 2.55rem);
}

@media (max-width: 760px) {
  .team-tech .sobre-advogado,
  .team-tech .sobre-advogado:nth-child(even) {
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 40px 27px 31px;
  }

  .team-tech .sobre-advogado:nth-child(even) .foto-container,
  .team-tech .sobre-advogado:nth-child(even) .lawyer-content {
    order: initial;
  }

  .team-tech .foto-container,
  .team-tech .foto-container img {
    width: 165px;
    height: 200px;
    min-height: 0;
  }

  .team-tech .lawyer-content {
    padding: 0;
    text-align: center;
  }

  .team-tech .redes-sociais {
    justify-content: center;
  }

  .team-tech .socio-descricao p {
    text-align: left;
  }
}

/* Consolidação visual — códigos decorativos removidos */
.team-tech .portrait-index,
.practice-tech .tech-eyebrow,
.practice-tech .card-code,
.practice-tech .section-code,
.practice-tech .detail-index {
  display: none;
}

.practice-tech .services-card ol {
  list-style: none;
  counter-reset: none;
}

.practice-tech .services-card li {
  counter-increment: none;
  grid-template-columns: 22px 1fr;
}

.practice-tech .services-card li::before {
  content: '';
  width: 7px;
  height: 7px;
  margin-top: .55rem;
  border: 1px solid var(--tech-gold);
  border-radius: 50%;
  background: rgba(217,183,95,.12);
}

/* Padrão das demais áreas */
.standard-practice-tech .area-hero {
  min-height: 520px;
  padding: 142px 0 72px;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  text-align: left;
  background:
    radial-gradient(circle at 82% 45%, rgba(55,148,179,.16), transparent 27%),
    linear-gradient(130deg, #061426 0%, #0a213b 62%, #07182c 100%);
}

.standard-practice-tech .area-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .72;
  background-image:
    linear-gradient(rgba(121,190,210,.16) 1px, transparent 1px),
    linear-gradient(90deg, rgba(121,190,210,.16) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.8), transparent 96%);
}

.standard-practice-tech .area-hero .hero-watermark { display: none; }
.standard-practice-tech .area-hero .container { position: relative; padding-right: min(34vw, 390px); }
.standard-practice-tech .area-hero .breadcrumb { margin-bottom: 31px; color: rgba(255,255,255,.45); font: 600 .65rem/1.4 'Manrope', sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.standard-practice-tech .area-hero .breadcrumb a { color: rgba(255,255,255,.68); }
.standard-practice-tech .area-hero h1 { max-width: 790px; margin: 0 0 21px; color: #fff; font-size: clamp(3.3rem, 6vw, 5.3rem); font-weight: 400; line-height: 1; letter-spacing: -.045em; }
.standard-practice-tech .area-hero p { max-width: 710px; margin: 0; color: rgba(235,243,251,.72); font-size: 1.01rem; line-height: 1.8; }
.standard-practice-tech .area-hero .area-icon {
  position: absolute;
  top: 50%;
  right: 56px;
  width: 250px;
  height: 250px;
  display: grid;
  place-items: center;
  margin: 0;
  border: 1px solid rgba(102,217,232,.18);
  color: rgba(255,255,255,.88);
  background: radial-gradient(circle, rgba(38,111,139,.12), transparent 62%);
  font-size: 4.1rem;
  transform: translateY(-50%);
  filter: drop-shadow(0 0 22px rgba(102,217,232,.15));
}

.standard-practice-tech .area-hero .area-icon::after {
  content: '';
  position: absolute;
  inset: 17%;
  border: 1px solid rgba(217,183,95,.16);
  transform: rotate(45deg);
}

.standard-practice-tech .area-hero .hero-actions { justify-content: flex-start; margin-top: 29px; }
.standard-practice-tech .area-hero .btn-secondary { border-color: rgba(255,255,255,.23); border-radius: 2px; background: rgba(255,255,255,.035); }

.standard-practice-tech .area-page-content { padding: 106px 0 112px; background: #fff; }
.standard-practice-tech .area-page-content h2,
.standard-practice-tech .expertise-light h2 { color: var(--primary); font-size: clamp(2.6rem, 5vw, 4rem); font-weight: 400; letter-spacing: -.035em; }
.standard-practice-tech .area-page-content .lead-text { max-width: 690px; color: #667085; }
.standard-practice-tech .area-page-content .content-grid { grid-template-columns: minmax(0, 1.38fr) minmax(300px, .62fr); gap: 16px; align-items: stretch; }
.standard-practice-tech .area-page-content .content-card { position: relative; padding: 42px; border: 1px solid rgba(7,24,44,.11); border-radius: 0; box-shadow: none; }
.standard-practice-tech .area-page-content .content-card > i { display: none; }
.standard-practice-tech .area-page-content .content-card h3 { margin-bottom: 25px; color: var(--primary); font-size: 1.7rem; font-weight: 400; }
.standard-practice-tech .area-page-content .content-card ul { list-style: none; }
.standard-practice-tech .area-page-content .content-card li { position: relative; padding: 15px 0 15px 24px; border-top: 1px solid rgba(7,24,44,.09); color: #536071; }
.standard-practice-tech .area-page-content .content-card li::before { content: ''; position: absolute; top: 23px; left: 1px; width: 7px; height: 7px; border: 1px solid var(--tech-gold); border-radius: 50%; background: rgba(217,183,95,.12); }
.standard-practice-tech .area-page-content .content-card:nth-child(2) { color: #fff; background: linear-gradient(145deg, #0b2745, #07182c); }
.standard-practice-tech .area-page-content .content-card:nth-child(2) h3 { color: #fff; }
.standard-practice-tech .area-page-content .content-card:nth-child(2) li { border-color: rgba(255,255,255,.12); color: rgba(255,255,255,.72); }
.standard-practice-tech .area-page-content .content-card:nth-child(2) li::before { border-radius: 0; border-color: var(--tech-cyan); background: transparent; transform: rotate(45deg); }

.standard-practice-tech .expertise-light {
  padding: 106px 0 112px;
  background:
    linear-gradient(90deg, rgba(7,24,44,.032) 1px, transparent 1px),
    linear-gradient(rgba(7,24,44,.032) 1px, transparent 1px),
    #f8fafb;
  background-size: 84px 84px;
}
.standard-practice-tech .expertise-light .service-detail-grid { gap: 14px; }
.standard-practice-tech .expertise-light .service-detail { min-height: 300px; position: relative; padding: 39px 32px 33px; border: 1px solid rgba(7,24,44,.11); border-radius: 0; box-shadow: none; background: rgba(255,255,255,.88); }
.standard-practice-tech .expertise-light .service-detail:hover { transform: translateY(-7px); box-shadow: 0 26px 60px rgba(7,24,44,.10); }
.standard-practice-tech .expertise-light .service-detail i { width: 48px; height: 48px; display: grid; place-items: center; margin-bottom: 28px; border: 1px solid rgba(7,24,44,.16); color: var(--primary); font-size: 1.1rem; }
.standard-practice-tech .expertise-light .service-detail h3 { color: var(--primary); font-size: 1.52rem; font-weight: 400; }
.standard-practice-tech .expertise-light .service-detail p { color: #667085; line-height: 1.72; }

.standard-practice-tech .area-contact { position: relative; overflow: hidden; padding: 90px 0; background: linear-gradient(135deg, #07182c, #0d2948); }
.standard-practice-tech .area-contact::before { content: ''; position: absolute; inset: 0; opacity: .4; background-image: linear-gradient(rgba(102,217,232,.10) 1px, transparent 1px), linear-gradient(90deg, rgba(102,217,232,.10) 1px, transparent 1px); background-size: 72px 72px; mask-image: radial-gradient(circle at 50% 50%, black, transparent 78%); }
.standard-practice-tech .area-contact .container { position: relative; z-index: 1; }
.standard-practice-tech .area-contact h2 { color: #fff; font-size: clamp(2.45rem, 5vw, 3.8rem); font-weight: 400; }
.practice-tech .area-contact { text-align: center; }
.practice-tech .area-contact h2 {
  max-width: 1050px;
  margin-right: auto;
  margin-left: auto;
  color: #fff;
}
.practice-tech .area-contact p {
  max-width: 700px;
  margin: 0 auto 30px;
  color: rgba(235, 243, 251, .72);
  font-size: 1.05rem;
  line-height: 1.75;
}

/* Política de Privacidade — leitura limpa */
.privacy-tech .area-hero {
  min-height: 390px;
  padding: 134px 0 66px;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  text-align: left;
  background: linear-gradient(130deg, #061426 0%, #0a213b 62%, #07182c 100%);
}
.privacy-tech .area-hero::before { content: ''; position: absolute; inset: 0; z-index: -1; opacity: .65; background-image: linear-gradient(rgba(121,190,210,.14) 1px, transparent 1px), linear-gradient(90deg, rgba(121,190,210,.14) 1px, transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(to bottom, black, transparent 96%); }
.privacy-tech .area-hero .hero-watermark { opacity: .08; }
.privacy-tech .area-hero .breadcrumb { margin-bottom: 28px; color: rgba(255,255,255,.45); font: 600 .65rem/1.4 'Manrope', sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.privacy-tech .area-hero .breadcrumb a { color: rgba(255,255,255,.68); }
.privacy-tech .area-hero .area-icon { display: none; }
.privacy-tech .area-hero h1 { margin-bottom: 18px; color: #fff; font-size: clamp(3rem, 6vw, 4.8rem); font-weight: 400; letter-spacing: -.04em; }
.privacy-tech .area-hero p { max-width: 760px; margin: 0; color: rgba(235,243,251,.72); font-size: 1rem; line-height: 1.8; }
.privacy-tech .area-page-content { padding: 92px 0 104px; background: #f9fafb; }
.privacy-tech .area-page-content > .container { max-width: 940px; }
.privacy-tech .content-grid { display: grid; grid-template-columns: 1fr; gap: 14px; }
.privacy-tech .content-card { padding: 32px 34px 31px; border: 1px solid rgba(7,24,44,.10); border-radius: 0; box-shadow: none; background: rgba(255,255,255,.92); }
.privacy-tech .content-card:hover { transform: none; box-shadow: 0 18px 45px rgba(7,24,44,.07); }
.privacy-tech .content-card h3 { margin-bottom: 14px; color: var(--primary); font-size: 1.45rem; font-weight: 400; }
.privacy-tech .content-card p { color: #536071; font-size: .96rem; line-height: 1.8; }
.privacy-tech .content-card a { color: var(--primary); text-decoration-color: var(--tech-gold); text-underline-offset: 3px; }

@media (max-width: 900px) {
  .standard-practice-tech .area-hero .container { padding-right: 20px; }
  .standard-practice-tech .area-hero .area-icon { display: none; }
  .standard-practice-tech .area-page-content .content-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .standard-practice-tech .area-hero { min-height: auto; padding: 122px 0 66px; }
  .standard-practice-tech .area-hero h1 { font-size: clamp(3rem, 15vw, 4.4rem); }
  .standard-practice-tech .area-page-content,
  .standard-practice-tech .expertise-light { padding: 78px 0 86px; }
  .standard-practice-tech .area-page-content .content-card { padding: 31px 24px; }
  .privacy-tech .area-hero { min-height: auto; padding: 122px 0 62px; }
  .privacy-tech .area-page-content { padding: 72px 0 82px; }
  .privacy-tech .content-card { padding: 27px 23px; }
}

@media (prefers-reduced-motion: reduce) {
  .tech-pilot .system-orbit { animation: none; }
  .tech-pilot .area-item { transition: none; }
}

/* Páginas internas do segundo piloto */
.inner-tech .inner-tech-hero {
  min-height: 520px;
  padding: 142px 0 72px;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  text-align: left;
  background:
    radial-gradient(circle at 82% 45%, rgba(55,148,179,.16), transparent 27%),
    linear-gradient(130deg, #061426 0%, #0a213b 62%, #07182c 100%);
}

.inner-tech .inner-tech-hero .hero-grid {
  z-index: -1;
}

.inner-hero-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, .55fr);
  align-items: center;
  gap: clamp(48px, 8vw, 110px);
}

.inner-hero-copy { max-width: 760px; }

.inner-tech .breadcrumb {
  margin-bottom: 28px;
  color: rgba(255,255,255,.45);
  font: 600 .65rem/1.4 'Manrope', sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.inner-tech .breadcrumb a { color: rgba(255,255,255,.68); }
.inner-tech .inner-tech-hero .tech-eyebrow { margin-bottom: 23px; }

.inner-tech .inner-tech-hero h1 {
  max-width: 780px;
  margin: 0 0 21px;
  color: #fff;
  font-size: clamp(3.3rem, 6vw, 5.3rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -.045em;
}

.inner-tech .inner-tech-hero p {
  max-width: 690px;
  margin: 0;
  color: rgba(235,243,251,.72);
  font-size: 1.01rem;
  line-height: 1.8;
}

.inner-tech .inner-tech-hero .hero-actions { justify-content: flex-start; margin-top: 29px; }
.inner-tech .inner-tech-hero .btn-secondary { border-color: rgba(255,255,255,.23); border-radius: 2px; background: rgba(255,255,255,.035); }
.inner-tech .inner-tech-hero .btn-secondary i { margin-left: 9px; font-size: .65rem; }

.inner-hero-symbol { display: grid; place-items: center; }
.symbol-frame {
  width: min(100%, 300px);
  aspect-ratio: 1;
  position: relative;
  display: grid;
  place-items: center;
  border: 1px solid rgba(102,217,232,.18);
  background: radial-gradient(circle, rgba(38,111,139,.12), transparent 62%);
}

.symbol-frame::before,
.symbol-frame::after {
  content: '';
  position: absolute;
  inset: 14%;
  border: 1px solid rgba(217,183,95,.15);
  transform: rotate(45deg);
}

.symbol-frame::after { inset: 29%; border-color: rgba(102,217,232,.14); transform: rotate(15deg); }
.symbol-frame img { width: 52%; position: relative; z-index: 2; filter: drop-shadow(0 0 25px rgba(102,217,232,.12)); }
.symbol-frame > i { position: relative; z-index: 2; color: rgba(255,255,255,.9); font-size: 4.4rem; filter: drop-shadow(0 0 22px rgba(102,217,232,.2)); }
.symbol-line { position: absolute; z-index: 1; background: rgba(102,217,232,.14); }
.symbol-line-one { width: 86%; height: 1px; }
.symbol-line-two { width: 1px; height: 86%; }

.inner-tech footer { background: #051322; border-top: 1px solid rgba(102,217,232,.13); }

/* Equipe */
.team-section {
  padding: 108px 0 118px;
  background:
    linear-gradient(90deg, rgba(7,24,44,.028) 1px, transparent 1px),
    #f9fafb;
  background-size: 88px 88px;
}

.team-tech .equipe-socios-wrapper {
  max-width: 1120px;
  flex-direction: column;
  gap: 74px;
}

.team-tech .sobre-advogado {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(270px, .78fr) minmax(0, 1.22fr);
  align-items: stretch;
  gap: 0;
  padding: 0;
  overflow: visible;
  border: 1px solid rgba(7,24,44,.11);
  border-radius: 0;
  box-shadow: 0 26px 70px rgba(7,24,44,.08);
  text-align: left;
  background: rgba(255,255,255,.94);
}

.team-tech .sobre-advogado:hover { transform: none; box-shadow: 0 30px 80px rgba(7,24,44,.11); }
.team-tech .sobre-advogado:nth-child(even) { grid-template-columns: minmax(0, 1.22fr) minmax(270px, .78fr); }
.team-tech .sobre-advogado:nth-child(even) .foto-container { order: 2; }
.team-tech .sobre-advogado:nth-child(even) .lawyer-content { order: 1; }

.team-tech .foto-container {
  min-height: 510px;
  position: relative;
  overflow: hidden;
  background: var(--tech-navy);
}

.team-tech .foto-container::after {
  content: '';
  position: absolute;
  inset: 0;
  border: 1px solid rgba(102,217,232,.22);
  pointer-events: none;
}

.team-tech .foto-container img {
  width: 100%;
  height: 100%;
  min-height: 510px;
  margin: 0;
  border: 0;
  border-radius: 0;
  object-fit: cover;
  object-position: center top;
  filter: saturate(.82) contrast(1.03);
}

.team-tech .sobre-advogado:hover img { border: 0; transform: scale(1.015); }
.portrait-index {
  position: absolute;
  z-index: 2;
  top: 17px;
  left: 18px;
  padding: 7px 9px;
  border: 1px solid rgba(255,255,255,.25);
  color: #fff;
  background: rgba(7,24,44,.45);
  backdrop-filter: blur(10px);
  font: 600 .62rem/1 ui-monospace, SFMono-Regular, Consolas, monospace;
  letter-spacing: .1em;
}

.lawyer-content { padding: 48px 48px 42px; display: flex; flex-direction: column; }
.profile-kicker { margin-bottom: 14px; color: #9a7921; font-size: .62rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.team-tech .sobre-advogado h3 { margin-bottom: 7px; color: var(--primary); font-size: clamp(2rem, 4vw, 2.8rem); font-weight: 400; line-height: 1.06; }
.team-tech .oab { margin-bottom: 27px; color: #667085; font: 600 .68rem/1.4 'Manrope', sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.team-tech .socio-descricao p { margin-bottom: 15px; color: #536071; font-size: .93rem; line-height: 1.75; text-align: left; }
.team-tech .redes-sociais { justify-content: flex-start; gap: 8px; margin-top: auto; padding-top: 13px; }
.team-tech .redes-sociais a { width: 40px; height: 40px; border: 1px solid rgba(7,24,44,.14); font-size: 1rem; }
.team-tech .redes-sociais a:hover { color: #fff; border-color: var(--primary); background: var(--primary); }

/* Direito Contratual */
.tech-help { padding: 106px 0 112px; background: #fff; }
.tech-help h2,
.tech-expertise h2 { color: var(--primary); font-size: clamp(2.6rem, 5vw, 4rem); font-weight: 400; letter-spacing: -.035em; }
.tech-help .lead-text { max-width: 690px; color: #667085; }
.practice-tech .tech-help .content-grid { grid-template-columns: minmax(0, 1.38fr) minmax(300px, .62fr); gap: 16px; align-items: stretch; }
.practice-tech .tech-help .content-card { position: relative; padding: 42px; border: 1px solid rgba(7,24,44,.11); border-radius: 0; box-shadow: none; }
.practice-tech .tech-help .content-card > i { display: none; }
.card-code,
.section-code { display: block; margin-bottom: 20px; color: #9a7921; font: 700 .62rem/1 'Manrope', sans-serif; letter-spacing: .17em; }
.practice-tech .tech-help .content-card h3 { margin-bottom: 25px; color: var(--primary); font-size: 1.7rem; font-weight: 400; }
.practice-tech .services-card ol { list-style: none; counter-reset: service-list; }
.practice-tech .services-card li { counter-increment: service-list; display: grid; grid-template-columns: 42px 1fr; gap: 13px; padding: 15px 0; border-top: 1px solid rgba(7,24,44,.09); color: #536071; }
.practice-tech .services-card li::before { content: '0' counter(service-list); color: #9a7921; font: 600 .62rem/1.7 ui-monospace, SFMono-Regular, Consolas, monospace; }
.practice-tech .audience-card { color: #fff; background: linear-gradient(145deg, #0b2745, #07182c); }
.practice-tech .audience-card .card-code { color: var(--tech-cyan); }
.practice-tech .audience-card h3 { color: #fff !important; }
.practice-tech .audience-card ul { list-style: none; }
.practice-tech .audience-card li { position: relative; padding: 16px 0 16px 25px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.72); }
.practice-tech .audience-card li::before { content: ''; position: absolute; top: 23px; left: 1px; width: 6px; height: 6px; border: 1px solid var(--tech-cyan); transform: rotate(45deg); }

.tech-expertise {
  padding: 106px 0 112px;
  background:
    linear-gradient(90deg, rgba(7,24,44,.032) 1px, transparent 1px),
    linear-gradient(rgba(7,24,44,.032) 1px, transparent 1px),
    #f8fafb;
  background-size: 84px 84px;
}

.tech-expertise .section-code { text-align: center; }
.tech-expertise .service-detail-grid { gap: 14px; }
.tech-expertise .service-detail { min-height: 315px; position: relative; padding: 39px 32px 33px; border: 1px solid rgba(7,24,44,.11); border-radius: 0; box-shadow: none; background: rgba(255,255,255,.88); }
.tech-expertise .service-detail:hover { transform: translateY(-7px); box-shadow: 0 26px 60px rgba(7,24,44,.10); }
.tech-expertise .detail-index { position: absolute; top: 21px; right: 22px; color: rgba(7,24,44,.28); font: 600 .62rem/1 ui-monospace, SFMono-Regular, Consolas, monospace; }
.tech-expertise .service-detail i { width: 48px; height: 48px; display: grid; place-items: center; margin-bottom: 28px; border: 1px solid rgba(7,24,44,.16); color: var(--primary); font-size: 1.1rem; }
.tech-expertise .service-detail h3 { color: var(--primary); font-size: 1.52rem; font-weight: 400; }
.tech-expertise .service-detail p { color: #667085; line-height: 1.72; }

.practice-tech .area-contact {
  position: relative;
  overflow: hidden;
  padding: 90px 0;
  background: linear-gradient(135deg, #07182c, #0d2948);
}
.practice-tech .area-contact::before { content: ''; position: absolute; inset: 0; opacity: .4; background-image: linear-gradient(rgba(102,217,232,.10) 1px, transparent 1px), linear-gradient(90deg, rgba(102,217,232,.10) 1px, transparent 1px); background-size: 72px 72px; mask-image: radial-gradient(circle at 50% 50%, black, transparent 78%); }
.practice-tech .area-contact .container { position: relative; z-index: 1; }
.practice-tech .area-contact h2 { color: #fff; font-size: clamp(2.45rem, 5vw, 3.8rem); font-weight: 400; }

@media (max-width: 900px) {
  .inner-hero-layout { grid-template-columns: 1fr; }
  .inner-hero-symbol { display: none; }
  .team-tech .sobre-advogado,
  .team-tech .sobre-advogado:nth-child(even) { grid-template-columns: 1fr; }
  .team-tech .sobre-advogado:nth-child(even) .foto-container,
  .team-tech .sobre-advogado:nth-child(even) .lawyer-content { order: initial; }
  .practice-tech .tech-help .content-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .inner-tech .inner-tech-hero { min-height: auto; padding: 122px 0 66px; }
  .inner-tech .inner-tech-hero h1 { font-size: clamp(3rem, 15vw, 4.4rem); }
  .team-section { padding: 76px 0 86px; background-size: 64px 64px; }
  .team-tech .equipe-socios-wrapper { gap: 34px; }
  .team-tech .foto-container,
  .team-tech .foto-container img { min-height: 430px; }
  .lawyer-content { padding: 34px 25px 30px; }
  .practice-tech .tech-help .content-card { padding: 31px 24px; }
  .tech-help,
  .tech-expertise { padding: 78px 0 86px; }
}

/* Ajuste final da equipe: prevalece sobre o protótipo editorial anterior. */
.team-tech .sobre-advogado,
.team-tech .sobre-advogado:nth-child(even) {
  grid-template-columns: 220px minmax(0, 1fr);
  align-items: center;
  gap: 38px;
  min-height: 0;
  padding: 32px 38px 32px 32px;
  overflow: hidden;
}
.team-tech .sobre-advogado:nth-child(even) { grid-template-columns: minmax(0, 1fr) 220px; padding: 32px 32px 32px 38px; }
.team-tech .foto-container { width: 190px; height: 230px; min-height: 0; justify-self: center; overflow: visible; background: transparent; }
.team-tech .foto-container::before { content: ''; position: absolute; inset: -9px; z-index: 2; border: 1px solid rgba(13,41,72,.18); pointer-events: none; }
.team-tech .foto-container::after {
  inset: -9px;
  z-index: 3;
  border: 0;
  background:
    linear-gradient(var(--tech-cyan), var(--tech-cyan)) left top / 18px 1px no-repeat,
    linear-gradient(var(--tech-cyan), var(--tech-cyan)) left top / 1px 18px no-repeat,
    linear-gradient(var(--tech-gold), var(--tech-gold)) right bottom / 18px 1px no-repeat,
    linear-gradient(var(--tech-gold), var(--tech-gold)) right bottom / 1px 18px no-repeat;
}
.team-tech .foto-container img { width: 190px; height: 230px; min-height: 0; object-fit: cover; object-position: center top; box-shadow: 0 18px 38px rgba(7,24,44,.15); }
.team-tech .sobre-advogado:hover img { transform: scale(1.01); }
.team-tech .portrait-index { top: -20px; left: -20px; padding: 6px 8px; border-color: rgba(7,24,44,.14); color: var(--primary); background: #fff; box-shadow: 0 8px 20px rgba(7,24,44,.08); }
.team-tech .lawyer-content { padding: 14px 8px; }
.team-tech .sobre-advogado h3 { font-size: clamp(1.9rem, 3.2vw, 2.55rem); }

@media (max-width: 760px) {
  .team-tech .sobre-advogado,
  .team-tech .sobre-advogado:nth-child(even) { grid-template-columns: 1fr; gap: 30px; padding: 40px 27px 31px; }
  .team-tech .sobre-advogado:nth-child(even) .foto-container,
  .team-tech .sobre-advogado:nth-child(even) .lawyer-content { order: initial; }
  .team-tech .foto-container,
  .team-tech .foto-container img { width: 165px; height: 200px; min-height: 0; }
  .team-tech .lawyer-content { padding: 0; text-align: center; }
  .team-tech .redes-sociais { justify-content: center; }
  .team-tech .socio-descricao p { text-align: left; }
}

/* Preferências finais do conceito: sem códigos numéricos decorativos. */
.team-tech .portrait-index,
.practice-tech .tech-eyebrow,
.practice-tech .card-code,
.practice-tech .section-code,
.practice-tech .detail-index { display: none; }

.practice-tech .services-card ol { list-style: none; counter-reset: none; }
.practice-tech .services-card li { counter-increment: none; grid-template-columns: 22px 1fr; }
.practice-tech .services-card li::before {
  content: '';
  width: 7px;
  height: 7px;
  margin-top: .55rem;
  border: 1px solid var(--tech-gold);
  border-radius: 50%;
  background: rgba(217,183,95,.12);
}
