/* ═════════ Vaya shared theme ═════════ */
:root{
  --ink:#1F1A14;--ink-2:#2A231B;--ink-3:#3A2F24;
  --paper:#F7F2EA;--paper-2:#EFE8DC;--paper-3:#E6DCC9;
  --white:#FFFFFF;
  --cyan:#5E8B6E;--cyan-2:#7BA888;--cyan-soft:#E8F0E7;
  --blush:#E8B89A;--blush-2:#D99B78;--blush-deep:#B86E4A;--blush-soft:#F5E6D8;
  --lav:#D4A762;--lav-soft:#F3E8D0;
  --text:#1F1A14;--text-2:#4A3F32;--text-3:#7A6A58;--text-4:#A89884;
  --border:rgba(31,26,20,0.1);--border-2:rgba(31,26,20,0.18);
  --r:12px;--r-lg:18px;--r-xl:28px;
  --shadow-sm:0 1px 2px rgba(31,26,20,0.05);
  --shadow:0 2px 8px rgba(31,26,20,0.05), 0 8px 24px rgba(31,26,20,0.06);
  --shadow-lg:0 12px 48px rgba(31,26,20,0.1);
  --glow-cyan:0 0 0 1px rgba(94,139,110,0.25), 0 8px 32px rgba(94,139,110,0.2);
  --glow-blush:0 0 0 1px rgba(184,110,74,0.25), 0 8px 32px rgba(232,184,154,0.35);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:72px}
body{font-family:'Geist',-apple-system,BlinkMacSystemFont,sans-serif;background:var(--paper);color:var(--text);overflow-x:hidden;-webkit-font-smoothing:antialiased;line-height:1.5;font-feature-settings:"ss01","cv01"}
.mono{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.04em;text-transform:uppercase;font-weight:500}
.serif{font-family:'Instrument Serif',serif;font-weight:400;letter-spacing:-0.02em}
.serif-i{font-family:'Instrument Serif',serif;font-style:italic;font-weight:400;letter-spacing:-0.02em}

/* NAV */
nav.site-nav{position:sticky;top:0;z-index:200;background:rgba(247,242,234,0.82);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border-bottom:1px solid var(--border);padding:0 32px;height:72px;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-family:'Instrument Serif',serif;font-size:28px;letter-spacing:-0.02em}
.logo-mark{width:30px;height:30px;border-radius:50%;background:conic-gradient(from 180deg at 50% 50%, var(--blush-deep) 0deg, var(--cyan) 130deg, var(--lav) 250deg, var(--blush-deep) 360deg);position:relative}
.logo-mark::after{content:'';position:absolute;inset:5px;border-radius:50%;background:var(--paper)}
.logo-mark::before{content:'';position:absolute;inset:11px;border-radius:50%;background:var(--ink);z-index:1}
.nav-links{display:flex;align-items:center;gap:32px}
.nav-links a{font-size:14px;color:var(--text-2);text-decoration:none;font-weight:500;transition:color 0.2s;white-space:nowrap}
.nav-links a:hover,.nav-links a.active{color:var(--ink)}
.nav-btn{background:var(--ink);color:var(--paper);padding:11px 22px;border-radius:100px;font-size:13px;font-weight:500;text-decoration:none;border:none;cursor:pointer;white-space:nowrap;font-family:inherit;display:inline-flex;align-items:center;gap:8px;transition:all 0.2s}
.nav-btn::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);animation:pulse 2s infinite}
.nav-btn:hover{background:var(--ink-2);transform:translateY(-1px)}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.4}}

/* SHARED SECTION */
section{padding:96px 32px}
.inner{max-width:1240px;margin:0 auto}
.inner-narrow{max-width:880px;margin:0 auto}
.sec-eye{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:0.14em;color:var(--text-3);margin-bottom:16px;display:inline-flex;align-items:center;gap:8px}
.sec-eye::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--cyan)}
.sec-h{font-family:'Instrument Serif',serif;font-size:clamp(36px,4.5vw,60px);font-weight:400;letter-spacing:-0.03em;line-height:1.02;color:var(--ink);margin-bottom:16px}
.sec-h em{font-style:italic}
.sec-h .blush{background:linear-gradient(135deg,var(--blush-deep),var(--blush-2));-webkit-background-clip:text;background-clip:text;color:transparent}
.sec-sub{font-size:17px;color:var(--text-2);line-height:1.55;max-width:560px;margin-bottom:16px}

/* FOOTER */
footer.site-footer{background:var(--ink);padding:72px 32px 40px;color:var(--paper);position:relative;overflow:hidden}
footer.site-footer::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 15% 0%, rgba(244,200,212,0.1), transparent 50%)}
.ft-inner{max-width:1240px;margin:0 auto;position:relative}
.ft-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,0.08);margin-bottom:32px}
.ft-logo{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.ft-logo-text{font-family:'Instrument Serif',serif;font-size:28px;letter-spacing:-0.02em}
.ft-logo .logo-mark::after{background:var(--ink)}
.ft-tag{font-size:14px;color:rgba(255,255,255,0.55);line-height:1.7;margin-bottom:20px;max-width:300px}
.ft-mono{font-family:'JetBrains Mono',monospace;font-size:10px;color:rgba(255,255,255,0.35);letter-spacing:0.08em;text-transform:uppercase;display:flex;align-items:center;gap:8px}
.ft-mono::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan)}
.ft-col h4{font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-bottom:20px}
.ft-col ul{list-style:none;display:flex;flex-direction:column;gap:12px}
.ft-col a{font-size:14px;color:rgba(255,255,255,0.65);text-decoration:none;transition:color 0.2s;cursor:pointer}
.ft-col a:hover{color:var(--paper)}
.legal-strip{background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);border-radius:var(--r);padding:16px 20px;font-size:11px;color:rgba(255,255,255,0.35);line-height:1.7;margin-bottom:24px}
.ft-bottom{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:rgba(255,255,255,0.4);font-family:'JetBrains Mono',monospace;letter-spacing:0.06em}

/* WHATSAPP */
.wa-float{position:fixed;bottom:28px;right:28px;z-index:400;display:flex;align-items:center;gap:10px;background:#25D366;color:white;border-radius:100px;padding:14px 20px 14px 16px;box-shadow:0 8px 24px rgba(37,211,102,0.35);text-decoration:none;font-size:14px;font-weight:500;font-family:inherit;transition:all 0.25s;white-space:nowrap}
.wa-float:hover{background:#20bc5a;transform:translateY(-2px)}
.wa-float svg{width:22px;height:22px;flex-shrink:0}
.wa-float-text{display:none}
@media(min-width:500px){.wa-float-text{display:inline}}

/* UTILS */
.reveal{opacity:0;transform:translateY(24px);transition:opacity 0.7s cubic-bezier(0.22,0.61,0.36,1),transform 0.7s cubic-bezier(0.22,0.61,0.36,1)}
.reveal.vis{opacity:1;transform:translateY(0)}

/* Generic chip */
.chip{display:inline-flex;align-items:center;gap:8px;background:var(--white);border:1px solid var(--border);padding:7px 14px 7px 10px;border-radius:100px;font-size:12px;font-weight:500;color:var(--text-2);box-shadow:var(--shadow-sm)}
.chip-dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);animation:pulse 2s infinite}
.chip.blush .chip-dot{background:var(--blush-deep);box-shadow:0 0 8px var(--blush-deep)}
.chip.lav .chip-dot{background:var(--lav);box-shadow:0 0 8px var(--lav)}

/* Buttons */
.cta-primary{position:relative;display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:var(--paper);padding:18px 32px;border-radius:100px;font-size:16px;font-weight:500;text-decoration:none;border:none;cursor:pointer;font-family:inherit;transition:all 0.25s;overflow:hidden}
.cta-primary span{position:relative;z-index:1;display:inline-flex;align-items:center;gap:10px}
.cta-primary:hover{transform:translateY(-2px);box-shadow:var(--glow-cyan)}
.cta-primary .arrow{width:22px;height:22px;border-radius:50%;background:var(--cyan);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;transition:transform 0.2s}
.cta-primary:hover .arrow{transform:translateX(3px) rotate(-45deg);background:var(--paper)}
.cta-secondary{display:inline-flex;align-items:center;gap:10px;background:transparent;color:var(--ink);padding:17px 24px;border-radius:100px;font-size:15px;font-weight:500;text-decoration:none;border:1px solid var(--border-2);cursor:pointer;font-family:inherit;transition:all 0.2s}
.cta-secondary:hover{border-color:var(--ink);background:var(--white)}

/* Responsive base */
@media(max-width:720px){
  section{padding:64px 24px}
  nav.site-nav{padding:0 20px}
  .nav-links{display:none}
  .ft-top{grid-template-columns:1fr;gap:32px}
  footer.site-footer{padding:56px 24px 32px}
  .wa-float{bottom:20px;right:16px;padding:12px 16px}
}
