/* FindInMoz v7.50.8.37 — perfil público do Profissional.
   Fonte canónica única para o layout profissional público. */

:root {
  --fim-pro-bg: #f4f7f8;
  --fim-pro-surface: #ffffff;
  --fim-pro-border: #dfe7ea;
  --fim-pro-text: #12202f;
  --fim-pro-muted: #627487;
  --fim-pro-brand: #20c4a8;
  --fim-pro-brand-dark: #08796e;
  --fim-pro-blue: #315fce;
  --fim-pro-amber: #d68b11;
  --fim-pro-shadow: 0 16px 42px rgba(15, 35, 52, .08);
}

.fim-profy-hero {
  position: relative;
  padding: 32px 0 18px;
  background:
    radial-gradient(circle at 88% 12%, rgba(32,196,168,.14), transparent 24%),
    linear-gradient(180deg, #edf5f5 0%, #f4f7f8 100%);
}

.fim-profy-main-card {
  overflow: hidden;
  border: 1px solid var(--fim-pro-border);
  border-radius: 24px;
  background: var(--fim-pro-surface);
  box-shadow: var(--fim-pro-shadow);
}

.fim-profy-cover {
  position: relative;
  min-height: 156px;
  padding: 20px 24px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  color: #fff;
  background:
    radial-gradient(circle at 78% 16%, rgba(32,196,168,.48), transparent 26%),
    radial-gradient(circle at 20% 0%, rgba(65,111,215,.28), transparent 30%),
    linear-gradient(118deg, #071d2e 0%, #0a3341 54%, #08796e 100%);
}

.fim-profy-cover::after {
  content: "";
  position: absolute;
  inset: auto -80px -112px auto;
  width: 330px;
  height: 220px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 50%;
  transform: rotate(-11deg);
  box-shadow:
    -55px -18px 0 -1px rgba(255,255,255,.045),
    -110px -36px 0 -1px rgba(255,255,255,.035);
  pointer-events: none;
}

.fim-profy-cover-brand,
.fim-profy-cover-status {
  position: relative;
  z-index: 1;
  min-height: 34px;
  padding: 0 13px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(4,24,39,.28);
  backdrop-filter: blur(10px);
  color: rgba(255,255,255,.94);
  font-size: 12px;
  font-weight: 760;
}

.fim-profy-cover-brand i { color: #9ff8eb; }
.fim-profy-cover-status i { color: #cbd5e1; font-size: 8px; }
.fim-profy-cover-status.is-available i {
  color: #60e7ba;
  box-shadow: 0 0 0 5px rgba(96,231,186,.12);
  border-radius: 50%;
}

.fim-profy-profile-intro {
  position: relative;
  display: grid;
  grid-template-columns: 156px minmax(0,1fr) auto;
  gap: 22px;
  align-items: end;
  padding: 0 26px 24px;
}

.fim-profy-photo-zone {
  position: relative;
  align-self: start;
  margin-top: -74px;
}

.fim-profy-photo-wrap {
  position: relative;
  width: 156px;
  height: 156px;
  padding: 5px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid rgba(17,94,89,.16);
  box-shadow: 0 14px 34px rgba(15,35,52,.16);
}

.fim-profy-photo-wrap img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border-radius: 50%;
  background: #eef3f5;
}

.fim-profy-verified-photo,
.fim-profy-medal {
  position: absolute;
  right: 5px;
  bottom: 8px;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 3px solid #fff;
  background: var(--fim-pro-brand);
  color: #fff;
  box-shadow: 0 8px 18px rgba(15,35,52,.16);
  font-size: 15px;
}

.fim-profy-medal { background: linear-gradient(135deg, #f8d365, #d79a21); }

.fim-profy-title {
  min-width: 0;
  padding-top: 18px;
}

.fim-profy-kicker {
  min-height: 30px;
  padding: 0 11px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(32,196,168,.18);
  border-radius: 999px;
  background: rgba(32,196,168,.08);
  color: var(--fim-pro-brand-dark);
  font-size: 11px;
  font-weight: 780;
  letter-spacing: .025em;
}

.fim-profy-title h1 {
  margin: 12px 0 9px;
  color: var(--fim-pro-text);
  font-size: clamp(22px, 3.35vw, 30px);
  line-height: 1.04;
  font-weight: 720;
  letter-spacing: -.025em;
}

.fim-profy-title h1 .fim-name-verified-icon {
  margin-left: 7px;
  vertical-align: .08em;
}

.fim-profy-headline {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  color: #33475b;
  font-size: 14px;
  line-height: 1.55;
  font-weight: 650;
}

.fim-profy-headline span { color: #9aa8b5; }

.fim-profy-profile-meta {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
}

.fim-profy-profile-meta span,
.fim-profy-profile-meta a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--fim-pro-muted);
  text-decoration: none;
  font-size: 12.5px;
  font-weight: 620;
}

.fim-profy-profile-meta i { color: var(--fim-pro-brand-dark); }
.fim-profy-profile-meta a:hover { color: var(--fim-pro-brand-dark); }

.fim-profy-title .fim-rank-mini {
  margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
}

/* Canais digitais no hero — alinhados ao padrão público das Entidades. */
.fim-profy-hero-socials {
  margin-top: 12px;
}

.fim-profy-hero-socials > div {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
}

.fim-profy-hero-socials a {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border: 1px solid #dfe7ea;
  border-radius: 9px;
  background: #fff;
  color: #4d6072;
  box-shadow: 0 5px 14px rgba(15,35,52,.05);
  text-decoration: none;
  transition: transform .2s ease, border-color .2s ease, color .2s ease, background .2s ease;
}

.fim-profy-hero-socials a:hover {
  transform: translateY(-2px);
  border-color: rgba(32,196,168,.35);
  color: var(--fim-pro-brand-dark);
  background: #f7fffd;
}

.fim-profy-hero-socials a.facebook:hover { color: #1877f2; border-color: rgba(24,119,242,.28); }
.fim-profy-hero-socials a.instagram:hover { color: #c13584; border-color: rgba(193,53,132,.28); }
.fim-profy-hero-socials a.linkedin:hover { color: #0a66c2; border-color: rgba(10,102,194,.28); }
.fim-profy-hero-socials a.youtube:hover { color: #ff0000; border-color: rgba(255,0,0,.24); }
.fim-profy-hero-socials a.whatsapp:hover { color: #128c7e; border-color: rgba(18,140,126,.28); }
.fim-profy-hero-socials a.website:hover { color: #315fce; border-color: rgba(49,95,206,.28); }

.fim-profy-unavailable-note {
  margin: 12px 0 0;
  color: #9a5213;
  font-size: 12.5px;
  font-weight: 650;
}

.fim-profy-actions.fim-professional-profile-actions {
  align-self: end;
  padding-bottom: 1px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  max-width: 360px;
}

.fim-profy-actions.fim-professional-profile-actions .fim-btn,
.fim-profy-actions.fim-professional-profile-actions a,
.fim-profy-actions.fim-professional-profile-actions button {
  min-height: 38px;
  padding: 0 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border-radius: 999px;
  border: 1px solid #dbe5e8;
  background: #fff;
  color: #24384a;
  box-shadow: none;
  text-decoration: none;
  font-size: 12px;
  font-weight: 760;
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.fim-profy-actions.fim-professional-profile-actions .fim-btn:hover,
.fim-profy-actions.fim-professional-profile-actions a:hover,
.fim-profy-actions.fim-professional-profile-actions button:hover {
  transform: translateY(-1px);
  border-color: rgba(32,196,168,.38);
  box-shadow: 0 8px 18px rgba(15,35,52,.08);
}

.fim-profy-actions.fim-professional-profile-actions .fim-btn-primary {
  color: #fff;
  border-color: transparent;
  background: linear-gradient(135deg, #20c4a8, #109a83);
  box-shadow: 0 9px 20px rgba(32,196,168,.18);
}

.fim-profy-actions.fim-professional-profile-actions .fim-professional-action-btn.is-favorite {
  color: #b4235a;
  border-color: #f1d6e1;
  background: #fff8fb;
}

.fim-profy-actions.fim-professional-profile-actions .fim-premium-locked {
  color: #7a6b22;
  background: #fffdf5;
  border-color: #eee3b8;
}

.fim-profy-inline-metrics {
  margin: 0 26px 24px;
  padding-top: 18px;
  display: grid;
  grid-template-columns: repeat(6, minmax(0,1fr));
  border-top: 1px solid #e9eff1;
}

.fim-profy-inline-metrics article {
  min-width: 0;
  min-height: 64px;
  padding: 7px 16px;
  display: flex;
  align-items: center;
  gap: 11px;
  border-right: 1px solid #e9eff1;
}

.fim-profy-inline-metrics article:last-child { border-right: 0; }

.fim-profy-inline-metrics article > i {
  width: 34px;
  height: 34px;
  min-width: 34px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  background: #eefaf8;
  color: var(--fim-pro-brand-dark);
  font-size: 14px;
}

.fim-profy-inline-metrics article:nth-child(2) > i { background: #fff8e9; color: var(--fim-pro-amber); }
.fim-profy-inline-metrics article:nth-child(3) > i { background: #edf3ff; color: var(--fim-pro-blue); }
.fim-profy-inline-metrics article:nth-child(4) > i { background: #f1f9f3; color: #418556; }
.fim-profy-inline-metrics article:nth-child(5) > i { background: #f7f2ff; color: #7b55b4; }
.fim-profy-inline-metrics article:nth-child(6) > i { background: #fff2f5; color: #ba4968; }

.fim-profy-inline-metrics article div { min-width: 0; }
.fim-profy-inline-metrics article strong {
  display: block;
  overflow: hidden;
  color: var(--fim-pro-text);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 17px;
  line-height: 1.1;
  font-weight: 790;
}
.fim-profy-inline-metrics article span {
  display: block;
  margin-top: 4px;
  color: #768697;
  font-size: 10.5px;
  line-height: 1.2;
  font-weight: 660;
}
.fim-profy-inline-metrics.is-standard-locked { opacity: .7; }

.fim-profy-premium-section {
  padding: 18px 0 64px;
  background: var(--fim-pro-bg);
}

.fim-profy-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.68fr) minmax(300px, .78fr);
  gap: 20px;
  align-items: start;
}

.fim-profy-content,
.fim-profy-sidebar {
  min-width: 0;
  display: grid;
  gap: 16px;
}

.fim-profy-panel {
  position: relative;
  padding: 22px;
  border: 1px solid var(--fim-pro-border);
  border-radius: 18px;
  background: var(--fim-pro-surface);
  box-shadow: 0 7px 22px rgba(15,35,52,.045);
}

.fim-profy-panel-head {
  margin-bottom: 16px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.fim-profy-panel-head > div { min-width: 0; }
.fim-profy-panel-kicker {
  display: block;
  margin-bottom: 5px;
  color: var(--fim-pro-brand-dark);
  font-size: 10px;
  line-height: 1.2;
  font-weight: 820;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.fim-profy-panel h2,
.fim-profy-panel-head h2 {
  margin: 0;
  color: var(--fim-pro-text);
  font-size: 19px;
  line-height: 1.2;
  font-weight: 730;
  letter-spacing: -.018em;
}

.fim-profy-panel-head > span:not(.fim-profy-strength-badge) {
  color: #7a8998;
  font-size: 11px;
  font-weight: 650;
}

.fim-profy-panel p,
.fim-profy-panel li {
  color: #435669;
  font-size: 13.5px;
  line-height: 1.72;
}

.fim-profy-description-panel > p { margin: 0; }

.fim-profy-specialties-list {
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px;
  list-style: none;
}

.fim-profy-specialties-list li {
  min-width: 0;
  padding: 12px 13px;
  display: flex;
  align-items: flex-start;
  gap: 9px;
  border: 1px solid #e7edef;
  border-radius: 13px;
  background: #fbfdfd;
}

.fim-profy-specialties-list li > i {
  margin-top: 4px;
  color: var(--fim-pro-brand);
  font-size: 12px;
}

.fim-profy-specialties-list li > span { min-width: 0; }

.fim-profy-feature-grid {
  margin-top: 14px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 8px;
}

.fim-profy-feature-grid span {
  min-height: 42px;
  padding: 0 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  border-radius: 11px;
  background: #f5f9fa;
  color: #4b6073;
  font-size: 11.5px;
  font-weight: 650;
}

.fim-profy-feature-grid i { color: var(--fim-pro-brand-dark); }

.fim-profy-work-grid,
.fim-profy-review-list {
  display: grid;
  gap: 10px;
}

.fim-profy-work-grid article,
.fim-profy-review-list article {
  position: relative;
  padding: 15px 16px;
  border: 1px solid #e7edef;
  border-radius: 14px;
  background: #fcfefe;
}

.fim-profy-work-grid article::before {
  content: "";
  position: absolute;
  left: -1px;
  top: 14px;
  bottom: 14px;
  width: 3px;
  border-radius: 0 4px 4px 0;
  background: var(--fim-pro-brand);
}

.fim-profy-work-grid strong {
  display: block;
  color: var(--fim-pro-text);
  font-size: 13.5px;
  font-weight: 760;
}

.fim-profy-work-grid p,
.fim-profy-review-list p { margin: 6px 0 0; }
.fim-profy-work-grid small,
.fim-profy-review-list small {
  display: block;
  margin-top: 8px;
  color: #7b8b9a;
  font-size: 10.5px;
  font-weight: 620;
}

.fim-profy-review-list .stars {
  color: #f2a823;
  font-size: 12px;
  letter-spacing: 1px;
}

.fim-profy-insight-card {
  overflow: hidden;
  background:
    radial-gradient(circle at 100% 0%, rgba(32,196,168,.11), transparent 28%),
    #fff;
}

.fim-profy-strength-badge {
  min-height: 28px;
  padding: 0 9px;
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  background: #eefaf8;
  color: var(--fim-pro-brand-dark);
  font-size: 10px;
  font-weight: 780;
}

.fim-profy-index-score {
  padding: 14px;
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  gap: 12px;
  align-items: center;
  border: 1px solid #e5edee;
  border-radius: 14px;
  background: #f8fbfb;
}

.fim-profy-index-score > div {
  min-width: 76px;
  text-align: center;
}
.fim-profy-index-score strong {
  color: var(--fim-pro-text);
  font-size: 27px;
  line-height: 1;
  font-weight: 820;
  letter-spacing: -.04em;
}
.fim-profy-index-score small {
  margin-left: 3px;
  color: #7b8b98;
  font-size: 9px;
  font-weight: 700;
}
.fim-profy-index-score p {
  margin: 0;
  color: #667888;
  font-size: 10.8px;
  line-height: 1.55;
}

.fim-profy-progress-group {
  margin-top: 15px;
  display: grid;
  gap: 12px;
}

.fim-profy-progress-row > span {
  margin-bottom: 6px;
  display: flex;
  justify-content: space-between;
  gap: 10px;
  color: #5c6f80;
  font-size: 10.5px;
  font-weight: 690;
}
.fim-profy-progress-row > span b { color: var(--fim-pro-text); }
.fim-profy-progress-row > div {
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #e9eff1;
}
.fim-profy-progress-row > div i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #315fce, #20c4a8);
}
.fim-profy-progress-row.is-profile > div i {
  background: linear-gradient(90deg, #20c4a8, #79dfbd);
}

.fim-profy-signal-grid {
  margin-top: 15px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 8px;
}

.fim-profy-signal-grid > span {
  min-width: 0;
  padding: 11px;
  display: grid;
  grid-template-columns: 25px minmax(0,1fr);
  grid-template-areas: "icon value" "icon label";
  column-gap: 8px;
  align-items: center;
  border: 1px solid #e7edef;
  border-radius: 12px;
  background: #fff;
}
.fim-profy-signal-grid i {
  grid-area: icon;
  width: 25px;
  height: 25px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: #eefaf8;
  color: var(--fim-pro-brand-dark);
  font-size: 10px;
}
.fim-profy-signal-grid b {
  grid-area: value;
  overflow: hidden;
  color: #23384a;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10.5px;
  font-weight: 730;
}
.fim-profy-signal-grid small {
  grid-area: label;
  color: #8a98a6;
  font-size: 9px;
  font-weight: 620;
}

.fim-profy-sidebar .sticky-panel {
  position: sticky;
  top: 92px;
}

.fim-profy-contact-card > h2 { margin-bottom: 16px; }

.fim-profy-form {
  display: grid;
  gap: 8px;
}
.fim-profy-form label {
  color: #405365;
  font-size: 10.5px;
  font-weight: 720;
}
.fim-profy-form input,
.fim-profy-form textarea {
  width: 100%;
  border: 1px solid #dbe5e8;
  border-radius: 11px;
  background: #fbfdfd;
  color: #203345;
  outline: 0;
  font: inherit;
  font-size: 12px;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.fim-profy-form input { min-height: 40px; padding: 0 12px; }
.fim-profy-form textarea { min-height: 94px; padding: 10px 12px; resize: vertical; }
.fim-profy-form input:focus,
.fim-profy-form textarea:focus {
  border-color: rgba(32,196,168,.62);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(32,196,168,.10);
}
.fim-profy-form .fim-btn {
  min-height: 42px;
  margin-top: 4px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 760;
}
.fim-profy-form-note {
  margin: 4px 0 0 !important;
  color: #718190 !important;
  font-size: 10px !important;
  line-height: 1.45 !important;
}

.fim-profy-budget-gate-v107 {
  position: relative;
  overflow: hidden;
  padding: 17px;
  border: 1px solid rgba(32,196,168,.2);
  border-radius: 15px;
  background: linear-gradient(145deg, #f8fffd, #f3f9fb);
}
.fim-profy-budget-gate-v107 .budget-gate-icon {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: linear-gradient(135deg, #20c4a8, #109a83);
  color: #fff;
  box-shadow: 0 9px 20px rgba(32,196,168,.18);
}
.fim-profy-budget-gate-v107 .budget-gate-kicker {
  margin-top: 12px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--fim-pro-brand-dark);
  font-size: 9.5px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.fim-profy-budget-gate-v107 h3 {
  margin: 7px 0 5px;
  color: var(--fim-pro-text);
  font-size: 15px;
  line-height: 1.25;
  font-weight: 750;
}
.fim-profy-budget-gate-v107 p { margin: 0; font-size: 11px; line-height: 1.55; }
.fim-profy-budget-gate-v107 .budget-gate-benefits {
  margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.fim-profy-budget-gate-v107 .budget-gate-benefits span {
  min-height: 29px;
  padding: 0 9px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid #e0e9eb;
  border-radius: 999px;
  background: #fff;
  color: #566a7c;
  font-size: 9.5px;
  font-weight: 670;
}
.fim-profy-budget-gate-v107 .budget-gate-benefits i { color: var(--fim-pro-brand-dark); }
.fim-profy-budget-gate-v107 .actions {
  margin-top: 13px;
  display: flex;
  gap: 7px;
}
.fim-profy-budget-gate-v107 .actions a {
  flex: 1 1 0;
  min-height: 37px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border-radius: 999px;
  text-decoration: none;
  font-size: 10.5px;
  font-weight: 740;
}
.fim-profy-budget-gate-v107 .actions .primary { color:#fff; background:linear-gradient(135deg,#20c4a8,#109a83); }
.fim-profy-budget-gate-v107 .actions .soft { color:var(--fim-pro-brand-dark); border:1px solid rgba(32,196,168,.24); background:#fff; }

.fim-profy-alert {
  margin-top: 12px;
  padding: 10px 11px;
  display: flex;
  gap: 8px;
  border-radius: 11px;
  background: #fff7ed;
  color: #9a5213;
  font-size: 10.5px;
  font-weight: 650;
}
.fim-profy-alert.success { background: #eefaf8; color: #08796e; }

.fim-profy-sidebar .fim-mkt-zone { margin-top: 14px; }

.fim-profy-sidebar .fim-social-links,
.fim-profy-sidebar [class*="social"] { max-width: 100%; }

.fim-profy-premium-section .fim-mkt-in-container,
.fim-profy-hero + .fim-mkt-in-container { margin-top: 12px; }

@media (max-width: 1180px) {
  .fim-profy-profile-intro { grid-template-columns: 142px minmax(0,1fr); }
  .fim-profy-photo-wrap { width: 142px; height: 142px; }
  .fim-profy-actions.fim-professional-profile-actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
    max-width: none;
    padding-left: 164px;
  }
  .fim-profy-inline-metrics { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .fim-profy-inline-metrics article:nth-child(3) { border-right: 0; }
  .fim-profy-inline-metrics article:nth-child(-n+3) { border-bottom: 1px solid #e9eff1; }
}

@media (max-width: 980px) {
  .fim-profy-layout { grid-template-columns: 1fr; }
  .fim-profy-sidebar .sticky-panel { position: static; }
}

@media (max-width: 760px) {
  .fim-profy-hero { padding-top: 16px; }
  .fim-profy-main-card { border-radius: 18px; }
  .fim-profy-cover { min-height: 124px; padding: 14px; }
  .fim-profy-cover-brand { display: none; }
  .fim-profy-cover-status { margin-left: auto; min-height: 30px; font-size: 10px; }
  .fim-profy-profile-intro {
    grid-template-columns: 1fr;
    gap: 0;
    padding: 0 17px 18px;
  }
  .fim-profy-photo-zone { margin-top: -58px; }
  .fim-profy-photo-wrap { width: 118px; height: 118px; }
  .fim-profy-verified-photo,
  .fim-profy-medal { width: 31px; height: 31px; right: 3px; bottom: 4px; font-size: 12px; }
  .fim-profy-title { padding-top: 11px; }
  .fim-profy-headline { font-size: 12.5px; }
  .fim-profy-profile-meta { gap: 7px 12px; }
  .fim-profy-profile-meta span,
  .fim-profy-profile-meta a { font-size: 11.5px; }
  .fim-profy-hero-socials { margin-top: 10px; overflow: hidden; }
  .fim-profy-hero-socials > div { flex-wrap: nowrap; overflow-x: auto; padding: 1px 2px 5px; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .fim-profy-hero-socials > div::-webkit-scrollbar { display: none; }
  .fim-profy-hero-socials a { width: 32px; height: 32px; border-radius: 8px; }
  .fim-profy-actions.fim-professional-profile-actions {
    grid-column: auto;
    padding-left: 0;
    margin-top: 15px;
    justify-content: flex-start;
  }
  .fim-profy-actions.fim-professional-profile-actions .fim-btn,
  .fim-profy-actions.fim-professional-profile-actions a,
  .fim-profy-actions.fim-professional-profile-actions button { min-height: 36px; padding: 0 12px; font-size: 10.5px; }
  .fim-profy-inline-metrics { margin: 0 17px 18px; grid-template-columns: repeat(2, minmax(0,1fr)); }
  .fim-profy-inline-metrics article,
  .fim-profy-inline-metrics article:nth-child(3) { border-right: 1px solid #e9eff1; border-bottom: 1px solid #e9eff1; }
  .fim-profy-inline-metrics article:nth-child(2n) { border-right: 0; }
  .fim-profy-inline-metrics article:nth-last-child(-n+2) { border-bottom: 0; }
  .fim-profy-premium-section { padding-top: 10px; }
  .fim-profy-panel { padding: 17px; border-radius: 15px; }
  .fim-profy-specialties-list,
  .fim-profy-feature-grid { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
  .fim-profy-inline-metrics article { padding: 8px 7px; gap: 8px; }
  .fim-profy-inline-metrics article > i { width: 30px; height: 30px; min-width: 30px; border-radius: 9px; font-size: 12px; }
  .fim-profy-inline-metrics article strong { font-size: 15px; }
  .fim-profy-inline-metrics article span { font-size: 9px; }
  .fim-profy-signal-grid { grid-template-columns: 1fr; }
  .fim-profy-budget-gate-v107 .actions { flex-direction: column; }
}

@media (prefers-reduced-motion: no-preference) {
  .fim-profy-main-card,
  .fim-profy-panel { animation: fimProProfileIn .36s ease both; }
  .fim-profy-panel:nth-child(2) { animation-delay: .04s; }
  .fim-profy-panel:nth-child(3) { animation-delay: .08s; }
  .fim-profy-panel:nth-child(4) { animation-delay: .12s; }
}

@keyframes fimProProfileIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

/* =========================================================
   FindInMoz v7.50.8.40 — Portfólio e Referências Públicas
========================================================= */
.fim-profy-portfolio-panel {
  overflow: hidden;
  background:
    radial-gradient(circle at 100% 0%, rgba(32,196,168,.075), transparent 30%),
    #fff;
}

.fim-profy-portfolio-subhead {
  margin: 2px 0 12px;
}

.fim-profy-portfolio-subhead > div {
  display: flex;
  align-items: center;
  gap: 10px;
}

.fim-profy-portfolio-subhead > div > i {
  width: 34px;
  height: 34px;
  min-width: 34px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  color: var(--fim-pro-brand-dark);
  background: #edf9f7;
}

.fim-profy-portfolio-subhead strong,
.fim-profy-portfolio-subhead small {
  display: block;
}

.fim-profy-portfolio-subhead strong {
  color: var(--fim-pro-text);
  font-size: 12.5px;
  font-weight: 790;
}

.fim-profy-portfolio-subhead small {
  margin-top: 2px;
  color: #7d8c99;
  font-size: 10.5px;
  line-height: 1.35;
  font-weight: 610;
}

.fim-profy-work-grid.is-portfolio {
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}

.fim-profy-work-grid.is-portfolio .fim-profy-work-card {
  min-width: 0;
  padding: 0;
  overflow: hidden;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(15,35,52,.045);
}

.fim-profy-work-grid.is-portfolio .fim-profy-work-card::before {
  display: none;
}

.fim-profy-work-media {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: linear-gradient(135deg,#edf9f7,#f7fbfc);
  border-bottom: 1px solid #e7edef;
}

.fim-profy-work-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .28s ease;
}

.fim-profy-work-card:hover .fim-profy-work-media img {
  transform: scale(1.025);
}

.fim-profy-work-media.is-placeholder {
  display: grid;
  place-items: center;
  color: #7cb8ad;
  font-size: 24px;
  background:
    radial-gradient(circle at 75% 20%, rgba(32,196,168,.14), transparent 28%),
    linear-gradient(135deg,#f0faf8,#f7fafb);
}

.fim-profy-work-copy {
  padding: 14px 15px 15px;
}

.fim-profy-work-grid.is-portfolio .fim-profy-work-copy strong {
  font-size: 13.5px;
  line-height: 1.35;
}

.fim-profy-work-grid.is-portfolio .fim-profy-work-copy p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  margin: 7px 0 0;
  color: #607184;
  font-size: 11.5px;
  line-height: 1.55;
}

.fim-profy-work-meta {
  display: flex;
  gap: 7px 12px;
  flex-wrap: wrap;
  margin-top: 11px;
}

.fim-profy-work-meta span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #7b8b9a;
  font-size: 9.8px;
  font-weight: 680;
}

.fim-profy-work-meta i {
  color: var(--fim-pro-brand-dark);
}

.fim-profy-reference-zone.has-work-separator {
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid #edf1f2;
}

.fim-profy-reference-notes {
  display: grid;
  gap: 8px;
}

.fim-profy-reference-notes p {
  margin: 0;
  padding: 11px 12px;
  display: flex;
  align-items: flex-start;
  gap: 9px;
  border: 1px solid #e8edef;
  border-radius: 11px;
  color: #526579;
  background: #fbfdfd;
  font-size: 11.5px;
  line-height: 1.55;
}

.fim-profy-reference-notes p > i {
  margin-top: 3px;
  color: var(--fim-pro-brand-dark);
  font-size: 10px;
}

.fim-profy-reference-links {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 9px;
  margin-top: 10px;
}

.fim-profy-reference-notes:empty + .fim-profy-reference-links {
  margin-top: 0;
}

.fim-profy-reference-links a {
  min-width: 0;
  padding: 11px 12px;
  display: grid;
  grid-template-columns: 34px minmax(0,1fr) auto;
  align-items: center;
  gap: 9px;
  border: 1px solid #e3eaec;
  border-radius: 12px;
  color: #2b4053;
  background: #fff;
  text-decoration: none;
  transition: transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.fim-profy-reference-links a:hover {
  transform: translateY(-1px);
  border-color: rgba(32,196,168,.4);
  box-shadow: 0 8px 20px rgba(15,35,52,.06);
}

.fim-profy-reference-links .icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  color: var(--fim-pro-brand-dark);
  background: #edf9f7;
}

.fim-profy-reference-links a > span:nth-child(2) {
  min-width: 0;
}

.fim-profy-reference-links strong,
.fim-profy-reference-links small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fim-profy-reference-links strong {
  color: #2b4053;
  font-size: 11.5px;
  font-weight: 770;
}

.fim-profy-reference-links small {
  margin-top: 3px;
  color: #8b98a5;
  font-size: 9.5px;
}

.fim-profy-reference-links a > i:last-child {
  color: #a1adb8;
  font-size: 9px;
}

@media (max-width: 720px) {
  .fim-profy-work-grid.is-portfolio,
  .fim-profy-reference-links {
    grid-template-columns: 1fr;
  }
  .fim-profy-work-media {
    aspect-ratio: 16 / 8.8;
  }
}

/* v7.50.8.77 — capa personalizada opcional do Profissional */
.fim-profy-cover-image{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;z-index:0}
.fim-profy-cover.has-custom-cover::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(4,24,39,.70),rgba(4,24,39,.42) 56%,rgba(4,24,39,.58));pointer-events:none}
.fim-profy-cover.has-custom-cover::after{z-index:1}
.fim-profy-cover.has-custom-cover .fim-profy-cover-brand,.fim-profy-cover.has-custom-cover .fim-profy-cover-status{z-index:2}

/* v7.50.8.78 — a capa é sempre fundo; fotografia/identidade ficam acima. */
.fim-profy-main-card{isolation:isolate}
.fim-profy-cover{z-index:0}
.fim-profy-profile-intro{z-index:2}
.fim-profy-photo-zone{z-index:3}


/* v7.50.8.86 — refinamento visual do Perfil Profissional */
.fim-profy-photo-wrap .fim-profy-verified-photo,
.fim-profy-photo-wrap .fim-profy-medal{
  left:auto!important;
  right:-2px!important;
  bottom:10px!important;
  z-index:5;
}
.fim-profy-title .fim-rank-mini{
  margin-top:10px;
  gap:8px;
}
.fim-profy-title .fim-rank-mini > .fim-rank-badge{
  box-shadow:0 7px 18px rgba(15,35,52,.07);
}
.fim-profy-title .fim-rank-mini .fim-advanced-badges{
  margin-top:0;
  gap:7px;
}
.fim-profy-title .fim-rank-mini .fim-advanced-badge{
  min-height:29px;
  padding:0 11px;
  box-shadow:0 6px 18px rgba(15,35,52,.055);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.fim-profy-title .fim-rank-mini .fim-advanced-badge:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(15,35,52,.09);
}
.fim-profy-specialties-list li,
.fim-profy-feature-grid span,
.fim-profy-signal-grid > span,
.fim-profy-inline-metrics article{
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.fim-profy-specialties-list li:hover,
.fim-profy-feature-grid span:hover,
.fim-profy-signal-grid > span:hover{
  transform:translateY(-2px);
  border-color:rgba(32,196,168,.28);
  background:#fbfffe;
  box-shadow:0 9px 22px rgba(15,35,52,.06);
}
.fim-profy-inline-metrics article:hover{
  transform:translateY(-2px);
  background:#fbfffe;
  box-shadow:0 8px 20px rgba(15,35,52,.045);
}
.fim-profy-work-grid.is-portfolio .fim-profy-work-card{
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.fim-profy-work-grid.is-portfolio .fim-profy-work-card:hover{
  transform:translateY(-3px);
  border-color:rgba(32,196,168,.25);
  box-shadow:0 14px 30px rgba(15,35,52,.08);
}
.fim-profy-work-card.is-compact .fim-profy-work-copy{
  position:relative;
  min-height:142px;
  padding:18px 18px 16px 58px;
}
.fim-profy-work-compact-icon{
  position:absolute;
  left:17px;
  top:17px;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#edf9f7;
  color:var(--fim-pro-brand-dark);
  font-size:12px;
}
.fim-profy-work-card.is-compact .fim-profy-work-copy p{
  -webkit-line-clamp:3;
}
@media(max-width:720px){
  .fim-profy-photo-wrap .fim-profy-verified-photo,
  .fim-profy-photo-wrap .fim-profy-medal{
    right:-1px!important;
    bottom:7px!important;
  }
  .fim-profy-work-card.is-compact .fim-profy-work-copy{
    min-height:auto;
  }
}
