/*
 * TCC Web v1.16.0 · Política de Privacidad
 * Scope: /politica-de-privacidad/ only.
 * Extends the approved v1.15.0 legal visual system without changing Terms.
 */

.tcc-privacy-page .tcc-legal-hero::after { content: "DATA"; right: -74px; letter-spacing: -.08em; }
.tcc-privacy-page .tcc-legal-summary-head { max-width: 820px; }

.tcc-privacy-data-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 24px 0 26px;
}
.tcc-privacy-data-grid > div {
  min-height: 150px;
  padding: 20px;
  border: 1px solid #e4e4e4;
  border-radius: 13px;
  background: #fafafa;
}
.tcc-privacy-data-grid strong { display: block; margin-bottom: 8px; font-size: 13px; }
.tcc-privacy-data-grid span { display: block; color: #5e5e5e; font-size: 12px; line-height: 1.62; }

.tcc-privacy-flow {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
  align-items: stretch;
  gap: 10px;
  margin: 26px 0;
}
.tcc-privacy-flow > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 4px;
  padding: 18px 15px;
  border: 1px solid #dfdfdf;
  border-radius: 13px;
  background: #fafafa;
}
.tcc-privacy-flow > div span { color: var(--legal-red); font-size: 9px; font-weight: 850; letter-spacing: .1em; }
.tcc-privacy-flow > div strong { font-size: 13px; }
.tcc-privacy-flow > div small { color: #6d6d6d; font-size: 10px; line-height: 1.4; }
.tcc-privacy-flow > i { align-self: center; color: #a5a5a5; font-size: 15px; font-style: normal; }

.tcc-privacy-cookie-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 25px 0 24px;
}
.tcc-privacy-cookie-list > div {
  padding: 21px;
  border: 1px solid #e2e2e2;
  border-radius: 13px;
  background: #fafafa;
}
.tcc-privacy-cookie-list > div > span { display: block; margin-bottom: 7px; color: var(--legal-red); font-size: 9px; font-weight: 850; letter-spacing: .12em; }
.tcc-privacy-cookie-list strong { display: block; margin-bottom: 7px; font-size: 14px; }
.tcc-privacy-cookie-list p { margin: 0; color: #626262 !important; font-size: 12px; line-height: 1.62; }

.tcc-privacy-rights {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 1px;
  margin: 24px 0;
  border: 1px solid #e0e0e0;
  border-radius: 14px;
  background: #e0e0e0;
  overflow: hidden;
}
.tcc-privacy-rights > div {
  display: grid;
  grid-template-columns: 31px 1fr;
  gap: 11px;
  align-items: start;
  min-height: 112px;
  padding: 19px;
  background: #fff;
}
.tcc-privacy-rights span {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #111;
  color: #fff;
  font-size: 9px;
  font-weight: 850;
}
.tcc-privacy-rights p { margin: 1px 0 0; color: #555 !important; font-size: 12px; line-height: 1.6; }
.tcc-privacy-rights strong { color: #181818; }

.tcc-privacy-related {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
  margin-top: 14px;
}
.tcc-privacy-related a {
  position: relative;
  display: flex;
  min-height: 125px;
  flex-direction: column;
  justify-content: center;
  padding: 20px 22px;
  border: 1px solid #dedede;
  border-radius: 14px;
  background: #fafafa;
  transition: border-color .18s ease, transform .18s ease, background .18s ease;
}
.tcc-privacy-related a:hover { transform: translateY(-2px); border-color: #c8c8c8; background: #fff; }
.tcc-privacy-related small { margin-bottom: 7px; color: #909090; font-size: 9px; font-weight: 850; letter-spacing: .12em; }
.tcc-privacy-related strong { margin-bottom: 12px; color: #161616; font-size: 14px; }
.tcc-privacy-related span { color: var(--legal-red); font-size: 11px; font-weight: 800; }

@media (max-width: 1050px) {
  .tcc-privacy-flow { grid-template-columns: repeat(4, 1fr); }
  .tcc-privacy-flow > i { display: none; }
}

@media (max-width: 640px) {
  .tcc-privacy-data-grid,
  .tcc-privacy-cookie-list,
  .tcc-privacy-rights,
  .tcc-privacy-related { grid-template-columns: 1fr; }
  .tcc-privacy-data-grid > div { min-height: 0; }
  .tcc-privacy-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tcc-privacy-rights > div { min-height: 0; }
}

@media (max-width: 390px) {
  .tcc-privacy-flow { grid-template-columns: 1fr; }
}
