/*
 * NTI Clarity — three-page visual repair V1
 * Scope: Privacy, Enterprise IT Consulting, Professional Collaboration.
 * Loaded after the existing visual layers so the fixes remain page-specific.
 */

:root {
  --v3-ink: #0d1b2b;
  --v3-muted: #526170;
  --v3-navy: #07192c;
  --v3-navy-2: #0a223b;
  --v3-blue: #1764d8;
  --v3-teal: #0c9fa6;
  --v3-gold: #c99543;
  --v3-line: rgba(7, 25, 44, .15);
  --v3-paper: #f7f5f1;
  --v3-panel: #fff;
  --v3-icon-person: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='7' r='4' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='M4 21c.8-5 3.4-7.5 8-7.5S19.2 16 20 21' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");
  --v3-icon-layers: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 3 9 5-9 5-9-5 9-5Zm-9 10 9 5 9-5M3 18l9 5 9-5' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E");
  --v3-icon-chart: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 20V10m6 10V4m6 16v-7m5 7H2' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");
  --v3-icon-shield: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 13c0 5-3.5 7.5-8 9-4.5-1.5-8-4-8-9V5l8-3 8 3v8Z' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='m9 12 2 2 4-4' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");
  --v3-icon-compass: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='m15.5 8.5-2 5-5 2 2-5 5-2Z' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E");
  --v3-icon-network: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='5' r='3' fill='none' stroke='black' stroke-width='1.8'/%3E%3Ccircle cx='5' cy='18' r='3' fill='none' stroke='black' stroke-width='1.8'/%3E%3Ccircle cx='19' cy='18' r='3' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='m10.5 7.5-4 7m7-7 4 7M8 18h8' fill='none' stroke='black' stroke-width='1.8'/%3E%3C/svg%3E");
  --v3-icon-server: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='3' width='18' height='7' rx='2' fill='none' stroke='black' stroke-width='1.8'/%3E%3Crect x='3' y='14' width='18' height='7' rx='2' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='M7 7h.01M7 18h.01' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");
  --v3-icon-cloud: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 19h11a4 4 0 0 0 .7-7.9A7 7 0 0 0 5.2 9.3 5 5 0 0 0 7 19Z' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");
  --v3-icon-lock: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='4' y='10' width='16' height='11' rx='2' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3m-4 4v3' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");
  --v3-icon-document: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 2h8l4 4v16H6V2Z' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'/%3E%3Cpath d='M14 2v5h5M9 12h6m-6 4h6' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");
  --v3-icon-route: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='6' cy='19' r='3' fill='none' stroke='black' stroke-width='1.8'/%3E%3Ccircle cx='18' cy='5' r='3' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='M9 19h3.5a3.5 3.5 0 0 0 0-7h-1a3.5 3.5 0 0 1 0-7H15' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");
  --v3-icon-briefcase: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='7' width='18' height='13' rx='2' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='M8 7V5a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2M3 12h18' fill='none' stroke='black' stroke-width='1.8'/%3E%3C/svg%3E");
  --v3-icon-eye: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 12s3.5-6 10-6 10 6 10 6-3.5 6-10 6S2 12 2 12Z' fill='none' stroke='black' stroke-width='1.8'/%3E%3Ccircle cx='12' cy='12' r='2.5' fill='none' stroke='black' stroke-width='1.8'/%3E%3C/svg%3E");
  --v3-icon-edit: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 20h4L20 8l-4-4L4 16v4Zm10-14 4 4' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E");
  --v3-icon-pause: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='M9.5 8v8m5-8v8' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
  --v3-icon-trash: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 7h16m-10 4v6m4-6v6M7 7l1 14h8l1-14M9 7l1-4h4l1 4' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Large blocks: one purpose-built background for each requested page. */
.page-it-consulting .hero,
.page-partners .hero,
.page-privacy .hero {
  position: relative;
  background-color: var(--v3-navy);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.page-it-consulting .hero { background-image: url("nti-it-consulting-hero.webp"); }
.page-partners .hero { background-image: url("nti-partners-hero.webp"); }
.page-privacy .hero { background-image: url("nti-privacy-hero.webp"); }

.page-it-consulting .hero::before,
.page-partners .hero::before,
.page-privacy .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: 1;
  background: linear-gradient(90deg, rgba(4,17,35,.97) 0%, rgba(4,17,35,.90) 36%, rgba(4,17,35,.53) 58%, rgba(4,17,35,.12) 100%);
  pointer-events: none;
}

.page-it-consulting .hero-grid,
.page-partners .hero-grid,
.page-privacy .hero > .container {
  position: relative;
  z-index: 2;
}

.page-it-consulting .consult-visual,
.page-partners .network {
  visibility: hidden;
}

.page-privacy .hero {
  min-height: 620px;
  display: flex;
  align-items: center;
  padding: 88px 0;
}

.page-privacy .hero h1,
.page-privacy .hero p,
.page-privacy .hero .notice {
  color: #fff !important;
  opacity: 1 !important;
  text-shadow: 0 2px 22px rgba(0,0,0,.28);
}

.page-privacy .hero h1 {
  max-width: 790px;
  font-size: clamp(46px, 5.2vw, 68px);
  line-height: 1.08;
}

.page-privacy .hero p { max-width: 750px; color: #d7e1ea !important; }
.page-privacy .hero .notice {
  max-width: 720px;
  color: #e8eef4 !important;
  background: rgba(7,25,44,.64) !important;
  border: 1px solid rgba(121,215,220,.30) !important;
  border-left: 4px solid var(--v3-gold) !important;
}

/* Medium blocks: editorial illustration + explanation. */
.v3-medium-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(360px, .96fr);
  gap: 46px;
  align-items: stretch;
}

.v3-medium-copy,
.v3-medium-figure,
.v3-medium-copy > *,
.v3-point-card,
.v3-point-card > * {
  min-width: 0;
}

.v3-medium-figure {
  margin: 0;
  min-height: 520px;
  overflow: hidden;
  border: 1px solid rgba(121,215,220,.22);
  border-radius: 14px;
  background: #dce8f0;
  position: relative;
}

.v3-medium-figure img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
}

.v3-medium-figure figcaption {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 18px;
  padding: 12px 14px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 8px;
  color: #f3f7fb;
  background: rgba(4,18,40,.76);
  backdrop-filter: blur(10px);
  font-size: 12px;
  letter-spacing: .03em;
}

.v3-point-list {
  display: grid;
  gap: 10px;
  margin-top: 30px;
}

.v3-point-card {
  --card-icon: var(--v3-icon-compass);
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 15px;
  align-items: start;
  padding: 18px;
  border: 1px solid var(--v3-line);
  border-radius: 10px;
  background: rgba(255,255,255,.92);
}

.v3-point-card::before {
  content: "";
  width: 30px;
  height: 30px;
  margin: 3px 0 0 4px;
  background: var(--v3-blue);
  -webkit-mask: var(--card-icon) center / contain no-repeat;
  mask: var(--card-icon) center / contain no-repeat;
}

.v3-point-card h3 { margin: 0 0 4px; font-size: 18px; line-height: 1.4; }
.v3-point-card p { margin: 0; color: var(--v3-muted); font-size: 14px; line-height: 1.7; }

.page-it-consulting .pov .v3-medium-grid { color: #fff; }
.page-it-consulting .pov .v3-medium-copy .section-title { color: #fff !important; }
.page-it-consulting .pov .v3-medium-copy .section-lead { color: #bdcad7 !important; }
.page-it-consulting .pov .v3-point-card {
  color: #fff;
  background: rgba(11,37,64,.90);
  border-color: rgba(121,215,220,.20);
}
.page-it-consulting .pov .v3-point-card p { color: #b8c6d4; }
.page-it-consulting .pov .v3-point-card:nth-child(1) { --card-icon: var(--v3-icon-eye); }
.page-it-consulting .pov .v3-point-card:nth-child(2) { --card-icon: var(--v3-icon-chart); }
.page-it-consulting .pov .v3-point-card:nth-child(3) { --card-icon: var(--v3-icon-route); }
.page-it-consulting .pov .v3-point-card::before { background: #79d7dc; }

.page-partners .expertise-medium .v3-medium-grid {
  grid-template-columns: minmax(0, 1.18fr) minmax(340px, .82fr);
  margin-top: 42px;
}
.page-partners .expertise-medium .expertise-grid {
  grid-template-columns: repeat(2, minmax(0,1fr));
  margin: 0;
}

.page-privacy .privacy-overview {
  padding: 88px 0;
  color: var(--v3-ink);
  background: linear-gradient(135deg, #f9fbfd, #eef4f8);
}
.page-privacy .privacy-overview .section-title {
  max-width: 690px;
  margin: 12px 0 18px;
  font-size: clamp(36px,4.1vw,56px);
}
.page-privacy .privacy-overview .section-lead { color: var(--v3-muted); }
.page-privacy .privacy-overview .v3-point-card:nth-child(1) { --card-icon: var(--v3-icon-document); }
.page-privacy .privacy-overview .v3-point-card:nth-child(2) { --card-icon: var(--v3-icon-lock); }
.page-privacy .privacy-overview .v3-point-card:nth-child(3) { --card-icon: var(--v3-icon-person); }

/* Small blocks: representative icons, without injecting extra grid columns. */
.page-it-consulting .fit-item::before,
.page-partners .fit-item::before {
  content: none !important;
  display: none !important;
}

.page-it-consulting .fit-item,
.page-partners .fit-item {
  grid-template-columns: 48px minmax(0,1fr) !important;
  align-items: start;
}

.page-it-consulting .fit-icon,
.page-partners .fit-icon {
  --card-icon: var(--v3-icon-briefcase);
  width: 46px;
  height: 46px;
  font-size: 0;
  background: #edf3f8;
  border-color: #cbd7e2;
}

.page-it-consulting .fit-icon::before,
.page-partners .fit-icon::before {
  content: "";
  display: block;
  width: 25px;
  height: 25px;
  background: var(--v3-blue);
  -webkit-mask: var(--card-icon) center / contain no-repeat;
  mask: var(--card-icon) center / contain no-repeat;
}

.page-it-consulting .fit-item:nth-child(1) .fit-icon { --card-icon: var(--v3-icon-chart); }
.page-it-consulting .fit-item:nth-child(2) .fit-icon { --card-icon: var(--v3-icon-layers); }
.page-it-consulting .fit-item:nth-child(3) .fit-icon { --card-icon: var(--v3-icon-compass); }
.page-it-consulting .fit-item:nth-child(4) .fit-icon { --card-icon: var(--v3-icon-route); }
.page-partners .fit-item:nth-child(1) .fit-icon { --card-icon: var(--v3-icon-briefcase); }
.page-partners .fit-item:nth-child(2) .fit-icon { --card-icon: var(--v3-icon-shield); }
.page-partners .fit-item:nth-child(3) .fit-icon { --card-icon: var(--v3-icon-network); }
.page-partners .fit-item:nth-child(4) .fit-icon { --card-icon: var(--v3-icon-route); }

.page-it-consulting .pain,
.page-partners .skill,
.page-partners .why-item {
  --card-icon: var(--v3-icon-compass);
}

.page-it-consulting .pain::before,
.page-partners .skill::before,
.page-partners .why-item::before {
  content: "";
  display: block;
  width: 31px;
  height: 31px;
  margin-bottom: 16px;
  background: var(--v3-blue);
  -webkit-mask: var(--card-icon) center / contain no-repeat;
  mask: var(--card-icon) center / contain no-repeat;
}

.page-it-consulting .pain:nth-child(1) { --card-icon: var(--v3-icon-person); }
.page-it-consulting .pain:nth-child(2) { --card-icon: var(--v3-icon-network); }
.page-it-consulting .pain:nth-child(3) { --card-icon: var(--v3-icon-layers); }
.page-it-consulting .pain:nth-child(4) { --card-icon: var(--v3-icon-shield); }
.page-it-consulting .pain:nth-child(5) { --card-icon: var(--v3-icon-compass); }
.page-it-consulting .pain:nth-child(6) { --card-icon: var(--v3-icon-route); }

.page-partners .skill:nth-child(1) { --card-icon: var(--v3-icon-server); }
.page-partners .skill:nth-child(2) { --card-icon: var(--v3-icon-layers); }
.page-partners .skill:nth-child(3) { --card-icon: var(--v3-icon-cloud); }
.page-partners .skill:nth-child(4) { --card-icon: var(--v3-icon-network); }
.page-partners .skill:nth-child(5) { --card-icon: var(--v3-icon-shield); }
.page-partners .skill:nth-child(6) { --card-icon: var(--v3-icon-briefcase); }
.page-partners .skill::before { background: var(--v3-teal); }
.page-partners .why-item:nth-child(1) { --card-icon: var(--v3-icon-compass); }
.page-partners .why-item:nth-child(2) { --card-icon: var(--v3-icon-network); }
.page-partners .why-item:nth-child(3) { --card-icon: var(--v3-icon-shield); }
.page-partners .why-item::before { background: var(--v3-navy); }

.page-it-consulting .pain,
.page-partners .skill {
  min-height: 0;
  overflow-wrap: anywhere;
}

.page-it-consulting .pain h3,
.page-partners .skill h3,
.page-it-consulting .fit-item h4,
.page-partners .fit-item h4 {
  word-break: normal;
  overflow-wrap: anywhere;
}

/* Privacy document hierarchy and icon-led rights cards. */
.page-privacy .content {
  color: var(--v3-ink);
  background: #fff;
}
.page-privacy .content .container { max-width: 1100px; }
.page-privacy .toc,
.page-privacy .policy,
.page-privacy .table,
.page-privacy .right {
  color: var(--v3-ink) !important;
  background-color: #fff !important;
}
.page-privacy .toc { background: #f3f7fa !important; }
.page-privacy .policy {
  padding: 30px 0 42px !important;
  box-shadow: none !important;
  border: 0 !important;
  border-bottom: 1px solid var(--v3-line) !important;
}
.page-privacy .policy h2 {
  --card-icon: var(--v3-icon-document);
  display: grid;
  grid-template-columns: 42px minmax(0,1fr);
  gap: 12px;
  align-items: center;
  color: var(--v3-ink) !important;
  font-size: clamp(24px,2.4vw,31px) !important;
}
.page-privacy .policy h2::before,
.page-privacy .right::before {
  content: "";
  display: block;
  width: 27px;
  height: 27px;
  background: var(--v3-teal);
  -webkit-mask: var(--card-icon) center / contain no-repeat;
  mask: var(--card-icon) center / contain no-repeat;
}
.page-privacy .policy:nth-of-type(1) h2 { --card-icon: var(--v3-icon-person); }
.page-privacy .policy:nth-of-type(2) h2 { --card-icon: var(--v3-icon-document); }
.page-privacy .policy:nth-of-type(3) h2 { --card-icon: var(--v3-icon-route); }
.page-privacy .policy:nth-of-type(4) h2 { --card-icon: var(--v3-icon-eye); }
.page-privacy .policy:nth-of-type(5) h2 { --card-icon: var(--v3-icon-lock); }
.page-privacy .policy:nth-of-type(6) h2 { --card-icon: var(--v3-icon-network); }
.page-privacy .policy:nth-of-type(7) h2 { --card-icon: var(--v3-icon-shield); }
.page-privacy .policy:nth-of-type(8) h2 { --card-icon: var(--v3-icon-briefcase); }

.page-privacy p,
.page-privacy li,
.page-privacy .cell,
.page-privacy .toc a {
  color: #445362 !important;
  font-size: max(14px, 1rem);
}
.page-privacy .label { color: var(--v3-ink) !important; background: #eef3f7 !important; }
.page-privacy .rights { grid-template-columns: repeat(5,minmax(0,1fr)); gap: 10px; }
.page-privacy .right {
  --card-icon: var(--v3-icon-eye);
  display: grid;
  justify-items: center;
  gap: 10px;
  min-width: 0;
  padding: 18px 10px;
  font-size: 13px;
  font-weight: 700;
}
.page-privacy .right:nth-child(2) { --card-icon: var(--v3-icon-document); }
.page-privacy .right:nth-child(3) { --card-icon: var(--v3-icon-edit); }
.page-privacy .right:nth-child(4) { --card-icon: var(--v3-icon-pause); }
.page-privacy .right:nth-child(5) { --card-icon: var(--v3-icon-trash); }

@media (max-width: 980px) {
  .page-it-consulting .hero-grid,
  .page-partners .hero-grid { grid-template-columns: 1fr; }
  .page-it-consulting .consult-visual,
  .page-partners .network { display: none; }
  .page-it-consulting .hero,
  .page-partners .hero,
  .page-privacy .hero { background-position: 66% center; }
  .v3-medium-grid,
  .page-partners .expertise-medium .v3-medium-grid { grid-template-columns: 1fr; }
  .v3-medium-figure,
  .v3-medium-figure img { min-height: 410px; max-height: 600px; }
  .page-privacy .rights { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 620px) {
  .page-it-consulting .hero,
  .page-partners .hero,
  .page-privacy .hero { background-position: 72% center; }
  .page-it-consulting .hero::before,
  .page-partners .hero::before,
  .page-privacy .hero::before { background: rgba(4,17,35,.84); }
  .page-privacy .hero { min-height: 570px; padding: 68px 0; }
  .page-privacy .hero h1 { font-size: clamp(38px,11vw,50px); }
  .page-privacy .privacy-overview { padding: 64px 0; }
  .v3-medium-figure,
  .v3-medium-figure img { min-height: 320px; }
  .v3-medium-figure figcaption { position: static; border-radius: 0; }
  .page-partners .expertise-medium .expertise-grid { grid-template-columns: 1fr; }
  .page-privacy .rights { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .page-privacy .policy h2 { grid-template-columns: 36px minmax(0,1fr); }
}
