:root{--color-bg:#f7f2ea;--color-surface:#fcfaf7;--color-text:#241a15;--color-muted:#6e5f52;--color-accent:#8c5a2f;--color-accent-hover:#6f4724;--color-champagne:#c8aa86;--color-line:#241a0f24;--color-dark:#1c130e;--color-dark-text:#f4ece1;--color-dark-line:#f4ece129;--color-border:var(--color-line);--color-accent-soft:var(--color-muted);--font-display:"Instrument Serif", Georgia, "Times New Roman", serif;--font-body:"Manrope", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-heading:var(--font-body);--max-width:1180px;--space-section:clamp(4.5rem, 11vw, 9rem);--reveal-duration:.6s;--reveal-ease:cubic-bezier(.16, 1, .3, 1);--bg-primary:var(--color-bg);--bg-secondary:var(--color-surface);--surface:var(--color-surface);--text-primary:var(--color-text);--text-secondary:var(--color-muted);--accent:var(--color-accent);--accent-subtle:#b98a5c;--border:var(--color-line);--inverse-surface:var(--color-dark);--inverse-text:var(--color-dark-text);--decorative:var(--color-champagne);--color-success:#3f6b3f;--color-error:#8c3a22;--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:clamp(2.5rem, 5vw, 3.5rem);--space-2xl:clamp(3rem, 6vw, 4.5rem);--space-3xl:var(--space-section);--space-4xl:clamp(6rem, 14vw, 11rem)}.sitio{--color-bg:#f6efe6;--color-surface:#fffaf3;--color-text:#2b1a12;--color-muted:#2b1a12;--color-terracotta:#d9572b;--color-mustard:#e8b04a;--color-cta:#c24520;--color-cta-hover:#a3381a;--color-accent:var(--color-cta);--color-accent-hover:var(--color-cta-hover);--color-champagne:var(--color-mustard);--color-line:#2b1a121f;--color-dark:#2b1a12;--color-dark-text:#fffaf3;--color-dark-line:#fffaf32e;--color-border:var(--color-line);--color-accent-soft:var(--color-muted);--font-display:"Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;--font-body:"Inter", ui-sans-serif, system-ui, sans-serif;--radius:1.35rem;--radius-pill:999px;--bg-primary:var(--color-bg);--bg-secondary:var(--color-surface);--surface:var(--color-surface);--text-primary:var(--color-text);--text-secondary:var(--color-muted);--accent:var(--color-accent);--accent-subtle:var(--color-terracotta);--border:var(--color-line);--inverse-surface:var(--color-dark);--inverse-text:var(--color-dark-text);--decorative:var(--color-mustard);--color-image-fallback:#ead9c6;--space-section:clamp(3.5rem, 8vw, 6.5rem);--space-3xl:var(--space-section);--max-width:1200px}body.sitio{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);background-image:none;overflow-x:clip}.sitio p,.sitio li{color:var(--color-text)}.sitio .section--dark p,.sitio .section--dark li{color:var(--color-dark-text)}.sitio h1,.sitio h2{font-family:var(--font-display);letter-spacing:-.045em;font-style:normal;font-weight:800;line-height:.95}.sitio .section-title{font-size:clamp(2rem,5.5vw,3.5rem)}.sitio .btn,.sitio .btn-outline{border-radius:var(--radius-pill);letter-spacing:.02em;text-transform:none;border:none;padding:.85rem 1.45rem;font-size:.9375rem;font-weight:600;box-shadow:0 8px 20px #c245202e}.sitio .btn{background-color:var(--color-cta);color:#fff}.sitio .btn:hover{background-color:var(--color-cta-hover);color:#fff}.sitio .btn-outline{background-color:var(--color-surface);color:var(--color-text);border:1.5px solid var(--color-text);box-shadow:none}.sitio .btn-outline:hover{background-color:var(--color-text);color:var(--color-surface);border-color:var(--color-text)}.sitio .btn-on-dark{background-color:var(--color-mustard);color:var(--color-text);box-shadow:none;border:none}.sitio .btn-on-dark:hover{color:var(--color-text);background-color:#f0c56a}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1rem;font-weight:400;line-height:1.65}h1,h2{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-weight:400;line-height:.98}h3{font-family:var(--font-body);letter-spacing:-.005em;margin:0;font-weight:600;line-height:1.3}p{margin:0}img{max-width:100%;display:block}a{color:inherit}.container{max-width:var(--max-width);margin:0 auto;padding-inline:clamp(1rem,4.2vw,3rem)}.section{padding-block:var(--space-section)}.section--surface{background-color:var(--color-surface)}.section--dark{background-color:var(--color-dark);color:var(--color-dark-text)}.section-title{font-size:clamp(2.1rem,4.4vw,3.4rem)}.skip-link{z-index:100;background-color:var(--color-dark);color:var(--color-dark-text);padding:.85rem 1.25rem;font-size:.9375rem;font-weight:600;text-decoration:none;transition:top .2s;position:absolute;top:-100%;left:1rem}.skip-link:focus-visible{top:1rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn,.btn-outline{box-sizing:border-box;min-height:44px;font-family:var(--font-body);letter-spacing:.09em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;border-bottom:1px solid;align-items:center;gap:.5rem;padding-block:.6rem;font-size:.8125rem;font-weight:600;text-decoration:none;transition:color .22s,border-color .22s;display:inline-flex}.btn{color:var(--color-accent)}.btn:after{content:"→";transition:transform .22s;display:inline-block}.btn:hover{color:var(--color-accent-hover)}.btn:hover:after{transform:translate(3px)}.btn-outline{color:var(--color-muted);border-bottom-color:var(--color-line)}.btn-outline:after{content:"↗";display:inline-block}.btn-outline:hover{color:var(--color-text);border-bottom-color:var(--color-text)}.btn-on-dark{color:var(--color-dark-text);border-bottom-color:var(--color-dark-line)}.btn-on-dark:hover{color:var(--color-champagne);border-bottom-color:var(--color-champagne)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:no-preference){[data-reveal]{opacity:0;transition:opacity var(--reveal-duration) var(--reveal-ease), transform var(--reveal-duration) var(--reveal-ease);transform:translateY(12px)}[data-reveal].is-visible{opacity:1;transform:none}}
