/* ==========================================================
   MALLORCA LAW — capa de Tweaks
   Overrides que aplica el panel de ajustes (js/tweaks-app.jsx).
   Sin ninguna clase tw-* en <html>, el sitio se ve exactamente
   igual que sin este archivo.
   ========================================================== */

/* Superficie clara tematizable (por defecto, la de siempre) */
.section-alt { background: var(--tw-surface-light, #f7f5f1); }

/* Velo del hero: mismo degradado, pero con el tono oscuro de la paleta activa */
.hero-media::after {
  background:
    radial-gradient(ellipse 65% 65% at 50% 48%,
      rgba(var(--tw-dark-rgb, 29,43,38), 0.68) 0%,
      rgba(var(--tw-dark-rgb, 29,43,38), 0.32) 55%,
      rgba(var(--tw-dark-rgb, 29,43,38), 0.05) 100%),
    linear-gradient(180deg,
      rgba(var(--tw-dark-rgb, 29,43,38), 0.42) 0%,
      rgba(var(--tw-dark-rgb, 29,43,38), 0.06) 22%,
      rgba(var(--tw-dark-rgb, 29,43,38), 0.10) 68%,
      rgba(var(--tw-dark-rgb, 29,43,38), 0.52) 100%);
}

/* ==========================================================
   Densidad editorial
   ========================================================== */
html.tw-density-compact { --container-width: 1290px; }
html.tw-density-compact .section { padding: 3.6rem 0; }
html.tw-density-compact .hammer-section { padding: 4rem 0; }
html.tw-density-compact .site-footer { padding: 3rem 0 1.5rem; }
html.tw-density-compact .page-header { padding: 6rem 0 2.4rem; }
html.tw-density-compact .hero-inner { padding: 3.5rem 0; }
html.tw-density-compact h2 { font-size: clamp(1.6rem, 2.6vw, 2.05rem); }
html.tw-density-compact .section-head { margin-bottom: 1.7rem; }
html.tw-density-compact .eyebrow { letter-spacing: 0.11em; margin-bottom: 0.6em; }
html.tw-density-compact p { line-height: 1.55; }
html.tw-density-compact .hero-tagline { font-size: clamp(1.05rem, 1.8vw, 1.25rem); }

html.tw-density-editorial { --container-width: 1040px; }
html.tw-density-editorial .section { padding: 9.5rem 0; }
html.tw-density-editorial .hammer-section { padding: 10rem 0; }
html.tw-density-editorial .site-footer { padding: 6rem 0 2.5rem; }
html.tw-density-editorial .page-header { padding: 9rem 0 5rem; }
html.tw-density-editorial h2 { font-size: clamp(2.3rem, 4.6vw, 3.5rem); line-height: 1.08; }
html.tw-density-editorial .section-head { margin-bottom: 3.6rem; }
html.tw-density-editorial .eyebrow { letter-spacing: 0.3em; margin-bottom: 1.7em; }
html.tw-density-editorial p { line-height: 1.9; }
html.tw-density-editorial .hero-tagline { font-size: clamp(1.3rem, 2.6vw, 1.8rem); }
html.tw-density-editorial .practice-card { padding: 2.5rem 2rem; }
html.tw-density-editorial .testimonial { padding: 2.4rem; }

/* ==========================================================
   Nivel de movimiento
   ========================================================== */
/* Sin recorrido cinematográfico: el hero vuelve a ser una sección normal */
html.tw-motion-still .hero,
html.tw-motion-sober .hero { height: auto !important; }
html.tw-motion-still .hero-pin,
html.tw-motion-sober .hero-pin { position: relative !important; height: auto !important; min-height: 88vh !important; }
html.tw-motion-still .hero-media-visual,
html.tw-motion-sober .hero-media-visual { clip-path: none !important; transform: none !important; }
html.tw-motion-sober .hero-eyebrow,
html.tw-motion-sober .hero-brand,
html.tw-motion-sober .hero-tagline,
html.tw-motion-sober .hero-lede,
html.tw-motion-sober .hero-actions-el { opacity: 1 !important; filter: none !important; transform: none !important; }

/* Sin vídeos de fondo: se queda el fotograma fijo */
html.tw-motion-still .hero-media video,
html.tw-motion-still .bg-video,
html.tw-motion-sober .hero-media video,
html.tw-motion-sober .bg-video { display: none !important; }

/* Quieto: nada se mueve — reveals resueltos, 3D fuera, sin hover con desplazamiento */
html.tw-motion-still .reveal,
html.tw-motion-still .hero-cascade {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  animation: none !important;
  transition: none !important;
}
html.tw-motion-still .hammer-canvas { display: none !important; }
html.tw-motion-still .hammer-fallback-img { display: block !important; }
html.tw-motion-still .hammer-stage picture,
html.tw-motion-still .hammer-fallback-img { animation: none !important; }
html.tw-motion-still .scroll-progress { display: none !important; }
html.tw-motion-still .btn:hover,
html.tw-motion-still .practice-card:hover,
html.tw-motion-still .team-card:hover,
html.tw-motion-still .testimonial:hover,
html.tw-motion-still .testimonial-full:hover,
html.tw-motion-still .team-photo,
html.tw-motion-still .call-float:hover,
html.tw-motion-still .social-link:hover { transform: none !important; }
html.tw-motion-still .testimonial:hover .quote-mark { transform: none !important; }
