@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#100f12;--text:#faf8f5;--muted:#b7b1b8;--wine:#6e233d;--pink:#ebacbb;--gold:#e5ba7e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}header{height:100px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff16;background:var(--bg)}.brand{font-family:Georgia,serif;font-size:33px;letter-spacing:3px;display:inline-flex;align-items:center;gap:10px}.brand span{font:12px 'DM Sans',sans-serif;letter-spacing:1px;border-left:1px solid #777;padding-left:10px}nav{display:flex;gap:38px;align-items:center;font-size:14px}nav a:hover{color:var(--pink)}.nav-contact{border:1px solid #ffffff40;border-radius:30px;padding:10px 22px}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:680px;max-width:1600px;margin:auto}.hero-copy{padding:65px 0 25px 12%}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2px;margin:0 0 30px;color:var(--gold)}h1,h2,h3{font-family:'Manrope',sans-serif;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(48px,5.7vw,86px);font-weight:600;margin:0 0 28px}em{font-family:Georgia,serif;font-weight:400;color:var(--pink);letter-spacing:-.04em}p{margin:0 0 24px}.intro{max-width:430px;color:var(--muted);font-size:17px}.button{background:var(--gold);color:#171015;font:600 14px 'DM Sans',sans-serif;display:inline-block;border:0;border-radius:4px;padding:17px 25px;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#f2cfa3;transform:translateY(-2px)}.hero-bottom{margin-top:58px;padding-top:22px;border-top:1px solid #ffffff22;display:flex;justify-content:space-between;font-size:11px;letter-spacing:1.5px;color:var(--muted)}.hero-art{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:25px 5% 30px;position:relative}.hero-art img{width:100%;max-width:700px;object-fit:contain;border-radius:2px}.hero-art p{text-align:center;font-size:16px;letter-spacing:.04em;margin:12px 0 0}.hero-art p span{color:var(--muted)}.ticker{display:flex;gap:55px;justify-content:center;align-items:center;overflow:hidden;white-space:nowrap;padding:22px 0;background:var(--wine);font-size:13px;letter-spacing:2px}.ticker i{font-style:normal;color:var(--gold);font-size:23px}.section{padding:105px 7%;max-width:1600px;margin:auto}h2{font-size:clamp(38px,4.5vw,65px);font-weight:500;margin:0 0 28px}.origin{background:#f6f5f2;color:#252027;display:grid;grid-template-columns:1fr 1.12fr;gap:8%;max-width:none}.origin .eyebrow{color:var(--wine)}.origin em{color:var(--wine)}.origin-aside{color:#6b626a;margin-top:40px}.story{padding-top:10px}.quote-mark{font:80px Georgia,serif;color:var(--wine);height:60px}.story-lead{font-size:25px;line-height:1.6;font-weight:500;letter-spacing:-.025em}.story>p:not(.story-lead){font-size:17px;color:#655e64}.signature{width:220px;height:95px;object-fit:contain;object-position:left center;display:block}.signature-caption{font-size:11px;letter-spacing:1.5px;color:#655e64}.section-top{display:flex;justify-content:space-between;align-items:end;gap:60px}.section-top>p{max-width:340px;color:var(--muted)}.cause-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:40px}.cause-grid article{border-top:1px solid #80636b;padding:35px;background:#1b171c}.cause-grid article:nth-child(2){background:#261820}.number{font:40px Georgia,serif;color:var(--gold)}h3{font-size:32px;font-weight:500;margin:32px 0 18px}.cause-grid p{color:var(--muted);max-width:430px}.tag{font-size:11px;letter-spacing:1.7px;display:inline-block;border:1px solid #ffffff30;border-radius:25px;padding:8px 14px;margin-top:25px}.community{background:#641e36;max-width:none}.community h2{max-width:900px}.community em{color:#f8d7ba}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:60px}.steps>div{border-top:1px solid #ffffff40;padding-top:22px}.steps span{font-size:12px;letter-spacing:1.2px;color:#f5d4af}.steps p{margin-top:18px;max-width:300px;color:#f1dfe5}.contact{display:grid;grid-template-columns:1fr 1fr;gap:9%}.contact>div>p:last-child{max-width:400px;color:var(--muted)}form{padding-top:7px}label{display:block;font-size:14px;margin-bottom:9px}input,textarea,select{font:16px 'DM Sans',sans-serif;width:100%;padding:14px 0;margin-bottom:25px;border:0;border-bottom:1px solid #635760;background:transparent;color:var(--text);border-radius:0}select option{background:var(--bg)}textarea{resize:vertical;min-height:100px}input:focus,textarea:focus,select:focus{outline:0;border-bottom:2px solid var(--gold)}.form-note{font-size:13px;color:var(--muted);margin:18px 0 0;max-width:410px}#form-status{font-size:14px;color:var(--gold);margin-top:15px}footer{border-top:1px solid #ffffff25;padding:40px 7%;display:flex;gap:30px;align-items:center;justify-content:space-between}footer p{margin:0;color:var(--muted);font-size:14px}footer>span,footer>a:last-child{font-size:12px;color:var(--muted)}@media(min-width:1600px){.origin,.community{padding-left:calc((100vw - 1376px)/2);padding-right:calc((100vw - 1376px)/2)}}@media(max-width:800px){header{padding:0 6%;height:85px}.brand{font-size:26px}nav{gap:16px}nav>a:not(.nav-contact){display:none}.nav-contact{padding:9px 16px}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 7% 0}h1{font-size:clamp(47px,10vw,75px)}.hero-bottom{margin-top:35px}.hero-art{padding:10px 7% 40px}.hero-art img{max-width:550px}.ticker{justify-content:flex-start;gap:30px}.section{padding:70px 7%}.origin,.contact{grid-template-columns:1fr;gap:35px}.origin-aside{margin-top:25px}.story-lead{font-size:22px}.section-top{display:block}.cause-grid{grid-template-columns:1fr;gap:20px}.cause-grid article{padding:28px}.steps{grid-template-columns:1fr;gap:25px;margin-top:40px}.steps p{max-width:100%;margin-bottom:0}footer{display:grid;grid-template-columns:1fr 1fr;gap:20px}footer p{text-align:right}footer>a:last-child{text-align:right}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

:root{--pink:#ad3f60}.brand-signature{width:115px;height:50px;object-fit:contain;filter:invert(1)}footer .brand-signature{width:140px}.ticker{display:block;padding:22px 0}.ticker-track{display:flex;width:max-content;animation:slide 24s linear infinite}.ticker-group{display:flex;align-items:center;gap:55px;padding-right:55px;flex-shrink:0}.ticker:hover .ticker-track{animation-play-state:paused}@keyframes slide{to{transform:translateX(-50%)}}.contact-actions{display:flex;flex-wrap:wrap;gap:12px}.whatsapp{background:transparent;border:1px solid #ffffff40;color:var(--text)}.whatsapp:disabled{opacity:.65;cursor:not-allowed;transform:none}.optional{color:var(--muted)}.admin-link{font-size:12px;color:var(--muted)}@media(prefers-reduced-motion:reduce){.ticker-track{animation:none}}

.cause-icon{display:block;width:46px;height:46px;color:var(--gold)}.story-attribution{display:block;font-size:16px;letter-spacing:0;color:var(--wine);margin-top:20px}.generation-statement{margin:48px 0 0;max-width:850px;font-family:Manrope,sans-serif;font-size:clamp(18px,2vw,25px);line-height:1.5;letter-spacing:-.025em;color:var(--gold);padding-top:30px;border-top:1px solid #ffffff25}

header .brand-motto{font-size:12px;letter-spacing:.4px;max-width:95px;line-height:1.5;white-space:normal}header .brand{flex-shrink:0}@media(max-width:380px){header .brand-signature{width:85px}header .brand-motto{font-size:11px;max-width:70px}header .nav-contact{padding:9px 11px;font-size:13px}}

header .brand-motto{max-width:none;white-space:nowrap} .hero-art .hero-purpose{max-width:440px;font-size:16px;line-height:1.65;letter-spacing:0;color:var(--muted)}@media(max-width:380px){header{padding-left:4%;padding-right:4%}header .brand{gap:6px}header .brand-signature{width:70px}header .brand-motto{max-width:none;white-space:nowrap;font-size:11px;letter-spacing:0;padding-left:6px}header .nav-contact{font-size:12px;padding:8px}}

.emblem-shine{position:relative;width:100%;max-width:700px;isolation:isolate}.hero-art .emblem-shine img{display:block;width:100%;height:auto}.emblem-shine::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(110deg,transparent 43%,rgba(229,186,126,.08) 47%,rgba(255,226,168,.75) 50%,rgba(229,186,126,.08) 53%,transparent 57%);background-size:300% 100%;background-position:100% 0;-webkit-mask:url("assets/emblema-transparente.png") center/100% 100% no-repeat;mask:url("assets/emblema-transparente.png") center/100% 100% no-repeat;mix-blend-mode:screen;opacity:0;animation:emblem-glint 9s ease-in-out infinite}@keyframes emblem-glint{0%,65%{background-position:100% 0;opacity:0}68%{opacity:.5}90%{background-position:0% 0;opacity:.5}94%,100%{background-position:0% 0;opacity:0}}@media(max-width:800px){.emblem-shine{max-width:550px}}@media(prefers-reduced-motion:reduce){.emblem-shine::after{animation:none;display:none}}

.emblem-shine::before{content:"";position:absolute;inset:7% 4%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center,rgba(126,29,65,.38) 0%,rgba(100,25,52,.19) 36%,transparent 70%);filter:blur(22px);opacity:.7;transform:translate(-5%,2%) scale(.96);animation:burgundy-light 16s ease-in-out infinite alternate}
@keyframes burgundy-light{0%{transform:translate(-5%,2%) scale(.96);opacity:.6}50%{transform:translate(3%,-3%) scale(1.04);opacity:.85}100%{transform:translate(5%,3%) scale(1);opacity:.7}}
@media(prefers-reduced-motion:reduce){.emblem-shine::before{animation:none;transform:none;opacity:.6}}

footer{flex-wrap:wrap}footer .copyright{flex-basis:100%;width:100%;text-align:center;margin-top:16px;grid-column:1 / -1}

.origin-photo{margin:32px 0 0;max-width:370px}.origin-photo img{display:block;width:100%;height:auto;border-radius:4px}@media(max-width:800px){.origin-photo{max-width:420px}}

.origin-photo{width:80%;max-width:296px;margin:32px auto 0}.origin-photo img{width:100%;height:auto}@media(max-width:800px){.origin-photo{max-width:336px}}

/* Slower motion and softer transitions. */
.ticker-track{animation-duration:36s;will-change:transform;backface-visibility:hidden}
.button{transition:background-color .35s ease,transform .4s cubic-bezier(.22,1,.36,1)}
.button:hover{transform:translateY(-1px)}
nav a,footer a{transition:color .35s ease,border-color .35s ease}
.emblem-shine::after{animation:emblem-glint-smooth 12s linear infinite}
@keyframes emblem-glint-smooth{0%,62%{background-position:100% 0;opacity:0}67%{background-position:85% 0;opacity:.12}72%{background-position:70% 0;opacity:.3}82%{background-position:40% 0;opacity:.3}90%{background-position:16% 0;opacity:.12}96%,100%{background-position:0% 0;opacity:0}}
.emblem-shine::before{animation:burgundy-light-smooth 24s ease-in-out infinite;will-change:transform,opacity}
@keyframes burgundy-light-smooth{0%,100%{transform:translate(-3%,1%) scale(.98);opacity:.58}50%{transform:translate(3%,-2%) scale(1.03);opacity:.75}}
@media(prefers-reduced-motion:reduce){.ticker-track,.emblem-shine::before,.emblem-shine::after{animation:none;will-change:auto}.button,nav a,footer a{transition:none}.button:hover{transform:none}}

.carousel-stage{position:relative}.carousel-viewport{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;aspect-ratio:2 / 3;border-radius:4px;background:#eae7e5;overscroll-behavior-x:contain}.carousel-viewport::-webkit-scrollbar{display:none}.origin-slide{flex:0 0 100%;min-width:0;height:100%;scroll-snap-align:center;scroll-snap-stop:always;display:flex;align-items:center;justify-content:center}.origin-carousel .origin-slide img{width:100%;height:100%;object-fit:contain;border-radius:0}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;display:grid;place-items:center;background:#641e36;color:#f6dfbc;border:1px solid #f6f5f2;border-radius:50%;cursor:pointer;box-shadow:0 3px 12px #0002;transition:background-color .3s ease}.carousel-arrow:hover{background:#84304d}.carousel-arrow:focus-visible,.carousel-dot:focus-visible,.carousel-viewport:focus-visible{outline:3px solid #9a3b5d;outline-offset:4px}.carousel-arrow svg{width:22px;height:22px}.carousel-prev{left:-22px}.carousel-next{right:-22px}.carousel-next svg{transform:rotate(180deg)}.carousel-dots{display:flex;justify-content:center;gap:0;margin-top:12px}.carousel-dot{width:32px;height:32px;padding:0;border:0;background:transparent;display:grid;place-items:center;cursor:pointer}.carousel-dot::before{content:"";width:7px;height:7px;border-radius:50%;background:#b9aeb3;transition:background-color .3s ease,transform .3s ease}.carousel-dot[aria-pressed="true"]::before{background:#641e36;transform:scale(1.35)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){.carousel-arrow,.carousel-dot::before{transition:none}}

.carousel-viewport{background:transparent}

header .nav-contact{position:relative;isolation:isolate;transition:color .4s ease,border-color .4s ease,background-color .4s ease,transform .4s cubic-bezier(.22,1,.36,1)}
header .nav-contact::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:0 0 0 0 rgba(229,186,126,0);animation:contact-glow 5s ease-in-out infinite}
@keyframes contact-glow{0%,100%{opacity:.35;box-shadow:0 0 0 0 rgba(229,186,126,0)}50%{opacity:1;box-shadow:0 0 17px 2px rgba(229,186,126,.18),inset 0 0 10px rgba(229,186,126,.06)}}
header .nav-contact:hover,header .nav-contact:focus-visible{transform:translateY(-2px);border-color:var(--gold);background-color:rgba(229,186,126,.08);color:var(--gold)}
header .nav-contact:active{transform:translateY(0) scale(.98)}
@media(prefers-reduced-motion:reduce){header .nav-contact::before{animation:none}header .nav-contact{transition:none}header .nav-contact:hover,header .nav-contact:focus-visible,header .nav-contact:active{transform:none}}

#origen h2 em{text-shadow:0 0 12px rgba(110,35,61,.16),0 0 24px rgba(110,35,61,.08)}
#causas h2 em,#contacto h2 em{text-shadow:0 0 12px rgba(173,63,96,.3),0 0 24px rgba(173,63,96,.14)}
.community h2 em{text-shadow:0 0 12px rgba(248,215,186,.22),0 0 24px rgba(248,215,186,.1)}

header{position:sticky;top:0;z-index:30;background:rgba(16,15,18,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.reveal{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,1,.36,1)}.reveal.revealed{opacity:1;transform:none}
.cause-grid article{border:1px solid transparent;border-top-color:#80636b;transition:transform .4s cubic-bezier(.22,1,.36,1),border-color .4s ease,box-shadow .4s ease}
@media(hover:hover){.cause-grid article:hover{transform:translateY(-4px);border-color:rgba(229,186,126,.5);box-shadow:0 8px 24px #0002}}
.cause-grid article.reveal{transition:opacity .7s ease,transform .7s cubic-bezier(.22,1,.36,1),border-color .4s ease,box-shadow .4s ease}
.carousel-counter{text-align:center;font-size:14px;line-height:1.5;color:#6b626a;margin:14px 0 0}.carousel-dots{margin-top:2px}
.photo-open{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border:0;padding:0;background:transparent;cursor:zoom-in}.photo-open:focus-visible{outline:3px solid var(--wine);outline-offset:-4px}
.photo-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:60px 24px 24px;border:0;background:rgba(16,15,18,.96);color:white;overflow:hidden}.photo-dialog::backdrop{background:#100f12e8}.photo-dialog>img{display:block;width:100%;height:100%;object-fit:contain}.photo-close{position:absolute;right:16px;top:12px;width:44px;height:44px;border:1px solid #ffffff70;border-radius:50%;background:#100f12;color:white;font-size:28px;line-height:1;cursor:pointer}.photo-expanded{overflow:hidden}.photo-dialog[open]{animation:photo-appear .25s ease}@keyframes photo-appear{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.cause-grid article,.cause-grid article.reveal{transition:none}.cause-grid article:hover{transform:none}.photo-dialog[open]{animation:none}}

.menu-toggle{display:none}.mobile-menu[hidden],.back-top[hidden]{display:none}.mobile-menu{position:absolute;top:100%;left:0;right:0;background:#171318f5;border-bottom:1px solid #ffffff25;padding:20px 7%;backdrop-filter:blur(14px);flex-direction:column;align-items:stretch;gap:0}.mobile-menu a{padding:12px 0;font-size:16px}.back-top{position:fixed;bottom:22px;right:22px;z-index:35;width:44px;height:44px;border:1px solid #e5ba7e70;border-radius:50%;background:#21151e;color:var(--gold);font-size:22px;cursor:pointer;box-shadow:0 4px 18px #0003}.form-success{border:1px solid #e5ba7e55;border-radius:6px;background:#e5ba7e0c;padding:16px;color:var(--gold)}.form-error{border-left:2px solid #e5ba7e;padding:10px 14px}.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:1px solid #ffffff60;border-radius:50%;background:#21151eee;color:var(--gold);font-size:35px;line-height:1;cursor:pointer}.lightbox-prev{left:12px}.lightbox-next{right:12px}.lightbox-count{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);font-size:14px;background:#100f12bc;padding:3px 10px;border-radius:12px}.photo-dialog{padding:60px 64px 45px}
@media(max-width:800px){header>nav:first-of-type{margin-left:auto;margin-right:12px}.menu-toggle{display:block;flex-shrink:0;border:1px solid #ffffff40;background:transparent;color:var(--text);width:40px;height:40px;border-radius:8px;font-size:23px;cursor:pointer}.mobile-menu a:not(.nav-contact){display:block}.photo-dialog{padding:65px 12px 45px}.lightbox-prev{left:8px}.lightbox-next{right:8px}}
@media(max-width:420px){header>nav:first-of-type{display:none}header .menu-toggle{margin-left:auto}}

.form-success{animation:confirmation-enter .6s cubic-bezier(.22,1,.36,1) both;transform-origin:top center}
@keyframes confirmation-enter{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.form-success{animation:none}}

.hero-events-mobile{display:none}
@media(max-width:800px){.hero-events-mobile{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:14px 17px;margin:8px 0 0 10px;border:1px solid #e5ba7e70;border-radius:4px;color:var(--gold);font-size:14px;font-weight:600;transition:border-color .35s,color .35s,transform .35s}.hero-events-mobile:hover{border-color:var(--gold);color:#f2cfa3;transform:translateY(-1px)}}
@media(max-width:430px){.hero-events-mobile{margin:10px 0 0;display:flex;width:max-content}}
@media(prefers-reduced-motion:reduce){.hero-events-mobile{transition:none}.hero-events-mobile:hover{transform:none}}
