/*
Theme Name: COTUÍ.net Child
Theme URI: https://cotui.net
Description: Child theme of GeneratePress for COTUÍ.net — the digital home of Cotuí and Sánchez Ramírez. Holds brand design tokens and template overrides. Most functional custom code lives in Code Snippets Pro (see docs/DEV_WORKFLOW.md).
Author: COTUÍ.net
Author URI: https://cotui.net
Template: generatepress
Version: 0.68.1
Text Domain: cotui-child
*/

/* =========================================================================
   COTUÍ.net — Design Tokens
   Source of truth: docs/Cotui_net_Style_Guide.md (section 6).
   Deep green primary, restrained gold accent, warm ivory canvas.
   ========================================================================= */
:root {
  /* Verdes de la marca — la escala nace de los dos verdes de la guia:
     #0F5B2E (principal) y #2E7D32 (medio). Los demas tonos se derivan
     de esos dos para que todo el sitio suene a lo mismo. */
  --cotui-green-950: #08381C;
  --cotui-green-900: #0F5B2E;   /* principal de la guia */
  --cotui-green-800: #17703A;
  --cotui-green-700: #2E7D32;   /* medio de la guia */
  --cotui-green-600: #479350;
  --cotui-green-500: #6BAE6F;
  --cotui-green-300: #A8CFA8;
  --cotui-green-100: #E4F0E4;
  --cotui-green-50:  #F5F7F3;   /* fondo claro de la guia */

  /* Dorado de la marca — #D4AF37 es el de la guia; el resto lo acompana. */
  --cotui-gold-700: #8F7118;
  --cotui-gold-600: #B8942A;
  --cotui-gold-400: #D4AF37;    /* dorado de la guia */
  --cotui-gold-200: #E8CE7E;
  --cotui-gold-100: #F6EBC7;
  --cotui-gold-50:  #FDF8EA;

  /* Warm neutrals */
  --cotui-ivory: #FFFFFF;
  --cotui-cream: #F5F7F3;
  --cotui-white: #FFFFFF;
  --cotui-neutral-50:  #FAFBFA;
  --cotui-neutral-100: #F5F7F3;   /* claro de la guia */
  --cotui-neutral-200: #E6EAE5;
  --cotui-neutral-300: #D2D9D0;
  --cotui-neutral-500: #7E8B84;
  --cotui-neutral-600: #566068;
  --cotui-neutral-700: #374151;
  --cotui-neutral-900: #1F2937;   /* texto de la guia */

  /* Semantic */
  --success: #167746;   --success-bg: #E7F6ED;
  --warning: #A86500;   --warning-bg: #FFF4D6;
  --error:   #B42318;   --error-bg:   #FDECEA;
  --info:    #1769AA;   --info-bg:    #E8F3FC;
  --emergency: #9F1712; --emergency-bg: #FFF0EF;

  /* Applied interface tokens */
  --background:    var(--cotui-ivory);
  --surface:       var(--cotui-white);
  --surface-soft:  var(--cotui-neutral-50);
  --surface-warm:  var(--cotui-cream);
  --text-primary:  var(--cotui-neutral-900);
  --text-secondary:var(--cotui-neutral-600);
  --text-inverse:  var(--cotui-white);
  --border:        var(--cotui-neutral-300);
  --border-soft:   var(--cotui-neutral-200);
  --link:          var(--cotui-green-800);
  --link-hover:    var(--cotui-green-700);
  --focus-ring:    #F2BD32;

  /* Shadows */
  --shadow-xs: 0 1px 2px rgba(4, 53, 23, 0.06);
  --shadow-sm: 0 2px 8px rgba(4, 53, 23, 0.08);
  --shadow-md: 0 8px 24px rgba(4, 53, 23, 0.10);
  --shadow-lg: 0 18px 48px rgba(4, 53, 23, 0.14);

  /* Radius */
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 18px;
  --radius-xl: 24px;
  --radius-pill: 999px;

  /* Spacing */
  --space-1: 4px;   --space-2: 8px;   --space-3: 12px;  --space-4: 16px;
  --space-5: 20px;  --space-6: 24px;  --space-8: 32px;  --space-10: 40px;
  --space-12: 48px; --space-16: 64px; --space-20: 80px;

  /* Layout */
  --container-sm: 640px;  --container-md: 768px;  --container-lg: 1024px;
  --container-xl: 1200px; --container-2xl: 1360px;

  /* Type scale */
  --text-xs: 0.75rem;  --text-sm: 0.875rem; --text-base: 1rem;  --text-lg: 1.125rem;
  --text-xl: 1.25rem;  --text-2xl: 1.5rem;  --text-3xl: 1.875rem;
  --text-4xl: 2.25rem; --text-5xl: 3rem;    --text-6xl: 3.75rem;

  /* Motion */
  --duration-fast: 120ms;
  --duration-normal: 200ms;
  --duration-slow: 320ms;
  --ease-standard: cubic-bezier(0.2, 0, 0, 1);
}

/* =========================================================================
   Base
   ========================================================================= */
body {
  background: var(--background);
  color: var(--text-primary);
  font-family: "Poppins", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  text-rendering: optimizeLegibility;
}

h1, h2, h3 {
  font-family: "Poppins", sans-serif;
  color: var(--cotui-green-900);
  letter-spacing: -0.02em;
}

a { color: var(--link); text-underline-offset: 3px; }
a:hover { color: var(--link-hover); }

::selection { background: var(--cotui-gold-200); color: var(--cotui-green-950); }

/* Accessible focus — gold ring per style guide §41 */
:focus-visible {
  outline: 3px solid var(--focus-ring);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  * { animation-duration: 0.001ms !important; transition-duration: 0.001ms !important; }
}
