:root{--cj-crema: #FAF6F0;--cj-arena: #F1E9DC;--cj-sage: #9CAF88;--cj-sage-dark: #5E7350;--cj-blush: #E8C4B8;--cj-blush-dark: #C97A63;--cj-dorado: #D4A857;--cj-tinta: #2A2520;--cj-tinta-soft: #7A6F60;--cj-papel: #FFFEFB;--cj-sage-tint: #E4EADC;--cj-blush-tint: #F6E6E0;--cj-dorado-tint: #F2E4C6;--cj-sage-darker: #46583A;--cj-blush-darker: #A85F49;--cj-line: #E3D8C7;--cj-line-soft: #EFE7DA;--surface-page: var(--cj-crema);--surface-sunken: var(--cj-arena);--surface-card: var(--cj-papel);--surface-invert: var(--cj-sage-dark);--text-body: var(--cj-tinta);--text-muted: var(--cj-tinta-soft);--text-on-sage: var(--cj-papel);--text-link: var(--cj-sage-dark);--border-soft: var(--cj-line);--border-divider: var(--cj-line-soft);--accent-primary: var(--cj-sage-dark);--accent-primary-hover: var(--cj-sage-darker);--accent-warm: var(--cj-blush-dark);--accent-warm-hover: var(--cj-blush-darker);--accent-gold: var(--cj-dorado);--color-success: #5E7350;--color-danger: #B6543C;--color-info: #7A8FAF;--font-display: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;--font-body: "Figtree", system-ui, -apple-system, sans-serif;--text-display-xl: clamp(2.75rem, calc(1.6rem + 4.6vw) , 4.75rem);--text-display-lg: clamp(2.25rem, calc(1.5rem + 3vw) , 3.25rem);--text-display-md: clamp(1.75rem, calc(1.3rem + 1.8vw) , 2.25rem);--text-display-sm: 1.5rem;--text-lead: 1.25rem;--text-base: 1.0625rem;--text-sm: .9375rem;--text-xs: .8125rem;--text-eyebrow: .8125rem;--leading-tight: 1.08;--leading-relaxed: 1.65;--tracking-snug: -.01em;--tracking-eyebrow: .12em;--container-max: 1160px;--container-narrow: 720px;--section-pad-y: clamp(3.5rem, 2rem + 6vw, 7rem);--gutter: clamp(1.25rem, .5rem + 3vw, 2.5rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--radius-xs: 6px;--radius-sm: 10px;--radius-md: 16px;--radius-lg: 22px;--radius-xl: 30px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgba(42, 37, 32, .05);--shadow-sm: 0 2px 8px rgba(42, 37, 32, .06);--shadow-md: 0 8px 24px rgba(42, 37, 32, .08);--shadow-lg: 0 18px 48px rgba(42, 37, 32, .1);--shadow-focus: 0 0 0 3px rgba(94, 115, 80, .3);--ease-soft: cubic-bezier(.22, .61, .36, 1);--dur-fast: .14s;--dur-base: .22s;--fondo: var(--cj-crema);--fondo-2: var(--cj-arena);--sage: var(--cj-sage);--sage-osc: var(--cj-sage-dark);--blush: var(--cj-blush);--blush-osc: var(--cj-blush-dark);--dorado: var(--cj-dorado);--tinta: var(--cj-tinta);--texto-suave: var(--cj-tinta-soft);--papel: var(--cj-papel);--fuente-titulos: var(--font-display);--fuente-cuerpo: var(--font-body);--radio: var(--radius-md);--sombra: var(--shadow-sm)}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:600;line-height:var(--leading-tight);letter-spacing:var(--tracking-snug);color:var(--text-body);margin:0;text-wrap:balance}p{margin:0;text-wrap:pretty}a{color:var(--text-link);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;display:block}::selection{background:var(--cj-sage);color:var(--cj-papel)}.contenedor{max-width:var(--container-max);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}.contenedor--angosto{max-width:var(--container-narrow)}.cj-eyebrow{font-family:var(--font-body);font-size:var(--text-eyebrow);font-weight:600;letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--accent-warm)}.boton{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 22px;font-family:var(--font-body);font-size:15px;font-weight:600;line-height:1;border-radius:12px;cursor:pointer;text-decoration:none!important;transition:background var(--dur-fast) var(--ease-soft),transform var(--dur-fast) var(--ease-soft),box-shadow var(--dur-fast) var(--ease-soft)}.boton:active{transform:translateY(1px)}.boton:disabled{opacity:.5;cursor:not-allowed}.boton--primario{background:var(--accent-primary);color:var(--text-on-sage);border:1px solid var(--accent-primary)}.boton--primario:hover:not(:disabled){background:var(--accent-primary-hover)}.boton--calido{background:var(--accent-warm);color:var(--cj-papel);border:1px solid var(--accent-warm)}.boton--calido:hover:not(:disabled){background:var(--accent-warm-hover)}.boton--secundario{background:var(--cj-papel);color:var(--cj-tinta);border:1px solid var(--border-soft)}.boton--secundario:hover:not(:disabled){background:var(--cj-arena)}.boton--ghost{background:transparent;color:var(--accent-primary);border:1px solid transparent}.boton--ghost:hover:not(:disabled){background:var(--cj-sage-tint)}.boton--sm{padding:8px 16px;font-size:14px;border-radius:10px}.boton--lg{padding:16px 30px;font-size:17px;border-radius:14px}.boton--full{display:flex;width:100%}.campo{margin-bottom:var(--space-4);display:flex;flex-direction:column;gap:6px}.campo label{font-size:14px;font-weight:600;color:var(--cj-tinta)}.campo input,.campo textarea,.campo select{width:100%;font-family:var(--font-body);font-size:15px;padding:12px 14px;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--cj-papel);color:var(--cj-tinta);transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}.campo input:focus,.campo textarea:focus,.campo select:focus{outline:none;border-color:var(--accent-primary);box-shadow:var(--shadow-focus)}.campo input:disabled{background:var(--cj-arena);color:var(--cj-tinta-soft)}.tarjeta{background:var(--surface-card);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5);transition:transform var(--dur-base) var(--ease-soft),box-shadow var(--dur-base) var(--ease-soft)}.tarjeta--interactiva:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.tarjeta--sage{background:var(--cj-sage-tint)}.tarjeta--blush{background:var(--cj-blush-tint)}.tarjeta--arena{background:var(--cj-arena)}.tarjeta--sin-padding{padding:0;overflow:hidden}.insignia{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;font-family:var(--font-body);font-size:12.5px;font-weight:600;line-height:1.3;border-radius:var(--radius-pill);letter-spacing:.01em}.insignia--sage{background:var(--cj-sage-tint);color:var(--cj-sage-darker)}.insignia--blush{background:var(--cj-blush-tint);color:var(--cj-blush-darker)}.insignia--dorado{background:var(--cj-dorado-tint);color:#8a6a24}.insignia--tinta{background:var(--cj-tinta);color:var(--cj-papel)}.insignia--neutral{background:var(--cj-arena);color:var(--cj-tinta-soft)}.error-mensaje{background:var(--cj-blush-tint);border:1px solid var(--cj-blush);color:var(--cj-blush-darker);border-radius:var(--radius-sm);padding:10px 14px;margin-bottom:var(--space-4);font-size:var(--text-sm)}.texto-suave{color:var(--text-muted)}.grid-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(2rem,1rem + 4vw,5rem);align-items:center}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.grid-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(2rem,1rem + 3vw,4rem);align-items:center}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:32px}.editor-grid{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:24px;align-items:start}.editor-tabs{display:none}@media (max-width: 960px){.editor-grid{grid-template-columns:1fr}.editor-tabs{display:flex;gap:8px;margin-bottom:14px}.editor-tabs button{flex:1;padding:10px;font-family:var(--font-body);font-weight:600;font-size:15px;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--cj-papel);color:var(--cj-tinta-soft);cursor:pointer}.editor-tabs button.editor-tab-activa{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--cj-papel)}.editor-grid.modo-editar .editor-preview-col,.editor-grid.modo-preview .editor-panel-col{display:none}}.marquesina-pista{display:inline-flex;animation-name:marquesina;animation-timing-function:linear;animation-iteration-count:infinite;will-change:transform}@keyframes marquesina{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (max-width: 640px){.sec-productos-grid,.sec-columnas-grid{grid-template-columns:1fr!important}}@media (max-width: 960px){.grid-hero,.grid-2{grid-template-columns:1fr}.grid-4,.footer-grid{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:1fr}}@media (max-width: 560px){.grid-4{grid-template-columns:1fr}}@media (max-width: 640px){.campo input,.campo textarea,.campo select{font-size:16px}.boton{min-height:44px}}.app-nav-escritorio{display:flex;gap:22px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.app-nav-hamburguesa{display:none;border:none;background:transparent;cursor:pointer;color:var(--cj-tinta);padding:6px}.app-nav-movil{display:flex;flex-direction:column;gap:4px;padding:4px var(--gutter) 16px;border-top:1px solid var(--border-divider)}.app-nav-movil a{font-size:17px;font-weight:500;color:var(--cj-tinta);padding:10px 4px;border-bottom:1px solid var(--border-divider);text-decoration:none}@media (max-width: 760px){.app-nav-escritorio{display:none}.app-nav-hamburguesa{display:inline-flex}}@media (max-width: 760px){.aula-grid{grid-template-columns:1fr!important}}.legal{max-width:760px;margin:0 auto;padding:0 var(--gutter)}.legal h1{font-size:2rem;margin-bottom:4px}.legal .legal-fecha{color:var(--cj-tinta-soft);font-size:14px;margin-bottom:28px}.legal .legal-intro{font-size:16px;line-height:1.7;margin-bottom:28px}.legal h2{font-size:1.2rem;margin:32px 0 10px;scroll-margin-top:80px}.legal h3{font-size:1.02rem;margin:20px 0 8px}.legal p{line-height:1.7;margin-bottom:12px;color:var(--cj-tinta)}.legal ul{padding-left:1.3rem;margin:0 0 12px;display:grid;gap:6px}.legal li{line-height:1.6}.legal .legal-nota{background:var(--fondo-2);border-radius:12px;padding:14px 16px;font-size:14.5px;line-height:1.6;margin:16px 0}.legal .legal-indice{background:var(--cj-papel);border:1px solid var(--border-soft);border-radius:12px;padding:16px 20px;margin-bottom:32px}.legal .legal-indice ol{margin:0;padding-left:1.2rem;columns:2;column-gap:28px}.legal .legal-indice li{margin-bottom:4px}.legal .legal-indice a{font-size:14px}@media (max-width: 560px){.legal .legal-indice ol{columns:1}}
