/*
Theme Name: Terruño Campestre
Theme URI: https://terruncampestre.co
Author: Eventos Gourmet Colombia
Author URI: https://terruncampestre.co
Description: Landing page premium para Terruño Campestre — Eventos Gourmet. Diseño campestre, elegante y completamente responsive.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: terrunio
Tags: one-page, landing-page, responsive, custom-colors, events
*/

/* ================================================================
   DESIGN TOKENS — Material Design 3 (paleta verde campestre)
   ================================================================ */
:root {
  /* Primarios */
  --primary:               #154212;
  --on-primary:            #ffffff;
  --primary-container:     #2d5a27;
  --on-primary-container:  #9dd090;
  --primary-fixed:         #bcf0ae;
  --primary-fixed-dim:     #a1d494;
  --on-primary-fixed:      #002201;
  --on-primary-fixed-variant: #23501e;

  /* Secundarios */
  --secondary:             #77574d;
  --on-secondary:          #ffffff;
  --secondary-container:   #fed3c7;
  --on-secondary-container:#795950;
  --secondary-fixed:       #ffdbd0;
  --secondary-fixed-dim:   #e7bdb1;
  --on-secondary-fixed:    #2c160e;
  --on-secondary-fixed-variant: #5d4037;

  /* Terciarios */
  --tertiary:              #5d2c00;
  --on-tertiary:           #ffffff;
  --tertiary-container:    #7f3f00;
  --on-tertiary-container: #ffb27a;
  --tertiary-fixed:        #ffdcc5;
  --tertiary-fixed-dim:    #ffb783;
  --on-tertiary-fixed:     #301400;
  --on-tertiary-fixed-variant: #713700;

  /* Superficie */
  --background:                  #fcf9f2;
  --on-background:               #1c1c18;
  --surface:                     #fcf9f2;
  --on-surface:                  #1c1c18;
  --surface-variant:             #e5e2db;
  --on-surface-variant:          #42493e;
  --surface-bright:              #fcf9f2;
  --surface-dim:                 #dcdad3;
  --surface-container-lowest:    #ffffff;
  --surface-container-low:       #f6f3ec;
  --surface-container:           #f1eee7;
  --surface-container-high:      #ebe8e1;
  --surface-container-highest:   #e5e2db;

  /* Otros */
  --outline:               #72796e;
  --outline-variant:       #c2c9bb;
  --inverse-primary:       #a1d494;
  --inverse-surface:       #31312c;
  --inverse-on-surface:    #f3f0e9;
  --error:                 #ba1a1a;
  --on-error:              #ffffff;
  --error-container:       #ffdad6;
  --on-error-container:    #93000a;
  --surface-tint:          #3b6934;

  /* Tipografía */
  --font: 'Plus Jakarta Sans', sans-serif;

  /* Radios */
  --r-sm:   0.25rem;
  --r-md:   0.5rem;
  --r-lg:   0.75rem;
  --r-xl:   1.5rem;
  --r-2xl:  2rem;
  --r-3xl:  3rem;
  --r-full: 9999px;

  /* Sombras */
  --shadow-sm: 0 1px 4px rgba(28,28,24,.07);
  --shadow-md: 0 4px 20px rgba(28,28,24,.10);
  --shadow-lg: 0 10px 40px rgba(28,28,24,.14);
  --shadow-xl: 0 20px 60px rgba(28,28,24,.16);

  --transition: all 0.3s ease;
}

/* ================================================================
   RESET & BASE
   ================================================================ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; font-size: 16px; overflow-x: hidden; }
html.menu-open { overflow: hidden; }
body {
  font-family: var(--font);
  background-color: var(--background);
  color: var(--on-background);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
html.menu-open body { overflow: hidden; }
img { max-width: 100%; height: auto; display: block; }
a { text-decoration: none; color: inherit; transition: var(--transition); }
button { cursor: pointer; border: none; outline: none; font-family: var(--font); }
input, select, textarea { font-family: var(--font); font-size: 1rem; outline: none; }
::selection { background: var(--primary-fixed); color: var(--on-primary-fixed); }

/* ================================================================
   MATERIAL SYMBOLS
   ================================================================ */
.material-symbols-outlined {
  font-family: 'Material Symbols Outlined';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
  vertical-align: middle;
}

/* ================================================================
   HELPERS
   ================================================================ */
.tc-container { max-width: 1280px; margin: 0 auto; padding: 0 2rem; }
.tc-section    { padding: 6rem 2rem; }
