/* ============================================================
   Theme: LUXE — Boutique / Luxury (light editorial, alto contraste)
   Fitness boutique · indoor cycling · premium
   Neutro + editable: CTA negro sobre blanco + acento teal (theme.accent)
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@500;600;700;800&display=swap');

[data-template="luxe"] {
  --bg:          #FFFFFF;
  --surface:     #F6F6F5;
  --surface-2:   #ECECEA;
  --ink:         #111111;
  --ink-soft:    #575755;
  --primary:     #111111;   /* CTA: negro editorial */
  --primary-600: #000000;
  --accent:      #0E7C8B;   /* teal sobrio, editable (theme.accent) */
  --on-primary:  #FFFFFF;
  --focus:       #0E7C8B;

  --border:        rgba(17,17,17,.12);
  --border-strong: rgba(17,17,17,.30);
  --shadow-md:     0 14px 34px rgba(17,17,17,.12);

  --font-body:     'Inter', system-ui, sans-serif;
  --font-display:  'Archivo', 'Inter', sans-serif;
  --display-weight: 800;
  --display-tracking: -.01em;
  --display-case:  uppercase;

  --r-md: 6px; --r-lg: 8px; --r-xl: 10px; --r-full: 9999px;
  --maxw: 1200px;
}

[data-template="luxe"] .eyebrow { color: var(--accent); letter-spacing: .2em; }
[data-template="luxe"] .hero-scrim { background: linear-gradient(180deg, rgba(0,0,0,.18) 0%, rgba(0,0,0,.42) 55%, rgba(0,0,0,.85) 100%); }
[data-template="luxe"] .pillar-ic { background: color-mix(in srgb, var(--accent) 12%, transparent); color: var(--accent); border-radius: 4px; }
[data-template="luxe"] .card:hover { border-color: var(--ink); }
[data-template="luxe"] .services, [data-template="luxe"] .testi { background: var(--surface); }
/* Cierre editorial: banda negra */
[data-template="luxe"] .cta-band { background: #111111; color: #fff; }
[data-template="luxe"] .cta-band .btn-primary { background: #fff; color: #111; }
[data-template="luxe"] .cta-band .btn-primary:hover { background: var(--surface-2); }
[data-template="luxe"] .footer { background: #111111; color: #fff; }
[data-template="luxe"] .footer .xf-light { display: inline-block; }
[data-template="luxe"] .footer .xf-dark { display: none; }
[data-template="luxe"] .footer .ink-soft, [data-template="luxe"] .footer-brand p, [data-template="luxe"] .footer-col a, [data-template="luxe"] .footer-legal { color: rgba(255,255,255,.72); }
[data-template="luxe"] .footer-col a:hover { color: #fff; }
[data-template="luxe"] .footer .socials a { background: rgba(255,255,255,.1); color: #fff; }
