/* ==========================================================================
   Sherpas "Glass/Apple" -- hoja compartida por privacidad.html y
   terminos.html (skill dashboard-glass-style). Copiada tal cual de los
   tokens y patrones de dashboard/mcp-trust/index.html (variables, blobs,
   card, grilla de 8px, hero, stamp, skip link, prefers-reduced-motion) --
   esta hoja NO inventa una identidad visual nueva, reusa la existente.

   DESVIACION DELIBERADA, declarada (identica a la de index.html): estas
   paginas NO llevan la banda "STRICTLY CONFIDENTIAL". Son la politica de
   privacidad y los terminos de servicio publicos del servicio -- pensados
   para que cualquier persona los lea, sin login, antes de decidir
   conectarse o antes de que un directorio (Anthropic/OpenAI/Microsoft) los
   revise. Declarar confidencial una pagina cuyo proposito es que la lea
   cualquiera seria una afirmacion falsa impresa en ella, que es exactamente
   la clase de defecto que este servicio existe para no cometer. La banda
   superior se conserva como elemento de marca con texto verdadero, y la
   propiedad intelectual se declara en el pie de cada pagina.
   ========================================================================== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#F5F6F1;
  --text-primary:#253122;
  --text-secondary:#5B655B;
  --text-tertiary:#7C857B;
  --accent-blue:#501345;
  --hairline:rgba(0,0,0,0.06);
}
html{-webkit-text-size-adjust:100%}
:root:not([data-theme="light"]){--bg:#F5F6F1;--text-primary:#253122;--text-secondary:#5B655B;--text-tertiary:#7C857B;--accent-blue:#501345;--hairline:rgba(37,49,34,0.12)}
:root[data-theme="dark"]{--bg:#F5F6F1;--text-primary:#253122;--text-secondary:#5B655B;--text-tertiary:#7C857B;--accent-blue:#501345;--hairline:rgba(37,49,34,0.12)}
body{
  background:var(--bg);color:var(--text-primary);
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;
  font-size:0.8125rem;line-height:1.55;min-height:100vh;
}
.brandbar{
  position:relative;z-index:10;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:0.5rem 1.5rem;
  background:rgba(255,255,255,0.72);
  backdrop-filter:blur(20px) saturate(180%);
  -webkit-backdrop-filter:blur(20px) saturate(180%);
  border-bottom:1px solid var(--hairline);
  font-size:0.6875rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;
  color:var(--text-secondary);
}
.brand-lockup{display:flex;align-items:center;gap:0.45rem;color:var(--text-primary)}
.brand-logo{display:inline-flex;align-items:center;height:1.5rem}
.brand-logo img{height:1.5rem;width:auto;display:block}
.brand-logo .on-dark{display:none}
.brandbar .mark{color:var(--text-primary)}
.brandbar .alpha{color:var(--accent-blue)}
html[data-theme="dark"] .brand-logo .on-light{display:none}
html[data-theme="dark"] .brand-logo .on-dark{display:block}
.bg-blobs{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.blob{position:absolute;border-radius:50%;filter:blur(100px)}
.blob-1{width:600px;height:600px;opacity:0.45;top:-10%;left:-5%;
  background:radial-gradient(circle at 30% 30%,#C1C494,#5E3357);
  animation:drift1 26s ease-in-out infinite}
.blob-2{width:500px;height:500px;opacity:0.40;top:35%;right:-8%;
  background:radial-gradient(circle at 70% 40%,#C1C494,#C1C494);
  animation:drift2 22s ease-in-out infinite}
.blob-3{width:350px;height:350px;opacity:0.35;bottom:-6%;left:30%;
  background:radial-gradient(circle at 50% 50%,#437742,#C1C494);
  animation:drift3 30s ease-in-out infinite}
@keyframes drift1{0%,100%{transform:translate(0,0)}50%{transform:translate(60px,40px)}}
@keyframes drift2{0%,100%{transform:translate(0,0)}50%{transform:translate(-50px,50px)}}
@keyframes drift3{0%,100%{transform:translate(0,0)}50%{transform:translate(40px,-40px)}}
.page{position:relative;z-index:1;max-width:920px;margin:0 auto;padding:2.5rem 1.5rem 3rem}
.hero{margin-bottom:2.5rem}
.eyebrow{font-size:0.6875rem;font-weight:600;text-transform:uppercase;
  letter-spacing:0.08em;color:var(--text-secondary);margin-bottom:0.5rem}
.eyebrow a{color:var(--accent-blue);text-decoration:none}
.eyebrow a:hover{text-decoration:underline}
.hero h1{
  font-family:Georgia,serif;font-size:2.5rem;font-weight:800;letter-spacing:-0.03em;line-height:1.1;
  background:linear-gradient(135deg,#253122 0%,#5B655B 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  margin-bottom:0.75rem;
}
.hero-sub{font-size:0.9375rem;color:var(--text-secondary);max-width:62ch}
.card{
  position:relative;
  backdrop-filter:blur(40px) saturate(200%);
  -webkit-backdrop-filter:blur(40px) saturate(200%);
  background:rgba(255,255,255,0.65);
  border:1px solid rgba(255,255,255,0.75);
  border-radius:16px;
  box-shadow:0 1px 2px rgba(0,0,0,0.04),0 4px 8px rgba(0,0,0,0.04),0 8px 24px rgba(0,0,0,0.03);
  padding:1.5rem 1.75rem;margin-bottom:1rem;
  transition:transform 0.35s cubic-bezier(0.34,1.56,0.64,1),
             box-shadow 0.35s cubic-bezier(0.34,1.56,0.64,1);
}
.card:hover{transform:translateY(-2px);
  box-shadow:0 2px 4px rgba(0,0,0,0.04),0 8px 16px rgba(0,0,0,0.06),0 16px 48px rgba(0,0,0,0.06)}
.card h2{font-family:Georgia,serif;font-size:1.125rem;font-weight:700;letter-spacing:-0.015em;margin-bottom:0.75rem}
.card h2 .num{color:var(--text-tertiary);font-weight:600;margin-right:0.5rem}
.card h3{font-size:0.9375rem;font-weight:700;letter-spacing:-0.01em;margin:1rem 0 0.5rem}
.card h3:first-child{margin-top:0}
.card p{color:var(--text-secondary);margin-bottom:0.75rem}
.card p:last-child{margin-bottom:0}
.card strong{color:var(--text-primary);font-weight:600}
.card a{color:var(--accent-blue);text-decoration:none}
.card a:hover{text-decoration:underline}
ul,ol{margin:0.5rem 0 0.75rem 1.25rem;color:var(--text-secondary)}
li{margin-bottom:0.25rem}
/* Clausulas numeradas de las paginas legales (1.1, 2.3, ...), enumeraciones
   con letras (a), (b) y linea de vigencia bajo el titulo. */
.card h3 .num,.card p .num{color:var(--text-tertiary);font-weight:600;margin-right:0.5rem}
.card ol.letters{list-style:none;margin-left:0;counter-reset:letra}
.card ol.letters li{counter-increment:letra;position:relative;padding-left:2rem}
.card ol.letters li::before{content:"(" counter(letra,lower-alpha) ")";position:absolute;left:0;
  color:var(--text-tertiary);font-weight:600}
.doc-meta{font-size:0.8125rem;color:var(--text-secondary);margin-top:0.75rem}
/* Resumen al inicio de las paginas legales. */
.summary-box{background:rgba(255,255,255,0.6);border:1px solid var(--hairline);
  border-left:3px solid var(--accent-blue);border-radius:10px;
  padding:1rem 1.25rem;margin:0 0 1.5rem;font-size:0.875rem;color:var(--text-primary)}
.summary-box .summary-label{display:block;font-size:0.6875rem;font-weight:700;
  text-transform:uppercase;letter-spacing:0.08em;color:var(--accent-blue);
  margin-bottom:0.375rem}
.summary-box p:last-child{margin-bottom:0}
.summary-box a{color:var(--accent-blue);text-decoration:none}
.summary-box a:hover{text-decoration:underline}
.legal-nav{margin-bottom:0.75rem}
.legal-nav a{margin-right:1rem;font-weight:600}
.stamp{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--hairline);
  font-size:0.6875rem;color:var(--text-tertiary)}
.stamp p{margin-bottom:0.5rem}
.stamp .owner{font-weight:600;letter-spacing:0.06em;text-transform:uppercase;
  color:var(--text-secondary);margin-bottom:0.75rem}
.skip{position:absolute;left:-9999px;top:auto}
.skip:focus-visible{left:1rem;top:1rem;z-index:20;outline:2px solid var(--accent-blue);padding:0.5rem;background:#FFFFFF}
:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}
@media (max-width:768px){
  .hero h1{font-size:1.875rem}
  .page{padding:1.5rem 1rem 2rem}
  .card{padding:1.25rem 1.25rem}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}
