:root{--wine:#4b1119;--wine2:#711d28;--gold:#d9a542;--cream:#fbf5e8;--ink:#211612;--muted:#76655d;--green:#0d6b53;--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.top-strip{padding:9px 5%;background:#24090d;color:#f3d894;text-align:center;text-transform:uppercase;letter-spacing:.2em;font-size:11px}.site-header{height:88px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:rgba(251,245,232,.94);backdrop-filter:blur(14px);position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(75,17,25,.11)}.brand{display:flex;align-items:center;gap:12px}.brand img{width:58px;height:58px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px var(--gold)}.brand span{display:grid;gap:4px}.brand strong{font-family:var(--serif);font-size:18px}.brand small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.12em}.site-header nav{display:flex;align-items:center;gap:27px}.site-header nav a{font-size:13px;font-weight:700}.site-header nav a:not(.nav-give):hover{color:var(--wine2)}.nav-give{background:var(--wine);color:white;padding:12px 18px;border-radius:100px}.menu-toggle{display:none}.hero{min-height:calc(100vh - 120px);position:relative;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;padding:70px 8% 90px;color:white;background:radial-gradient(circle at 75% 45%,rgba(225,169,60,.26),transparent 26%),linear-gradient(125deg,#22090d 0%,#58141d 55%,#2d0c11 100%);overflow:hidden}.hero:before{content:"";position:absolute;inset:0;opacity:.1;background-image:repeating-linear-gradient(45deg,transparent 0 28px,#e5b24f 29px 30px)}.hero-glow{position:absolute;width:420px;height:420px;border:1px solid rgba(244,205,118,.25);border-radius:50%;right:10%;top:50%;transform:translateY(-50%);box-shadow:0 0 110px rgba(244,187,73,.16),inset 0 0 70px rgba(244,187,73,.09)}.hero-copy,.hero-mark{position:relative;z-index:2}.eyebrow{margin:0 0 16px;color:#bd8125;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.23em}.hero .eyebrow,.sponsor .eyebrow{color:#efc36f}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(48px,6vw,88px);line-height:.98;max-width:800px;margin:0}.hero h1 em{display:block;color:#f0c56d;font-weight:400}.intro{font-family:var(--serif);font-size:18px;line-height:1.7;color:#eadfd4;max-width:620px;margin:28px 0}.hero-actions,.sponsor-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:0 22px;border:1px solid transparent;border-radius:100px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;transition:.25s}.button:hover{transform:translateY(-2px)}.button.gold{background:var(--gold);color:#2a1205}.button.ghost{border-color:rgba(255,255,255,.45);color:white}.button.pale{background:white;color:var(--wine)}.hero-verse{margin-top:30px;color:#caab77;font-family:var(--serif);font-style:italic;font-size:13px}.hero-mark{justify-self:center;width:min(32vw,430px);aspect-ratio:1}.hero-mark img{width:100%;height:100%;border-radius:50%;object-fit:cover;box-shadow:0 35px 80px rgba(0,0,0,.45),0 0 0 8px rgba(226,174,72,.16)}.orbit{position:absolute;inset:-28px;border:1px solid rgba(242,197,100,.32);border-radius:50%;animation:spin 18s linear infinite}.orbit:after{content:"◆";color:#edc165;position:absolute;left:50%;top:-8px}.scroll-cue{position:absolute;bottom:24px;left:8%;display:flex;gap:12px;align-items:center;font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:#d9c1aa}.scroll-cue span{font-size:20px}.ceremony{text-align:center;padding:110px 7%;background:#fffaf0;position:relative}.section-heading{max-width:730px;margin:0 auto 50px;text-align:center}.section-heading h2,.about h2,.donate h2,.contact h2{font-family:var(--serif);font-size:clamp(38px,5vw,64px);font-weight:400;margin:0 0 14px;line-height:1.05}.section-heading>p:last-child{color:var(--muted)}.date-lockup{display:flex;align-items:center;justify-content:center;gap:25px;color:var(--wine);margin-bottom:42px}.date-lockup strong{font-family:var(--serif);font-size:clamp(30px,5vw,57px);font-weight:400}.date-lockup span{font-size:11px;text-transform:uppercase;letter-spacing:.2em}.countdown{max-width:850px;margin:auto;background:var(--wine);border-radius:10px;padding:30px 50px;display:flex;align-items:center;justify-content:space-between;color:white;box-shadow:0 22px 50px rgba(75,17,25,.2)}.countdown div{display:grid;gap:7px}.countdown strong{font-family:var(--serif);font-size:clamp(34px,5vw,63px);font-weight:400;font-variant-numeric:tabular-nums}.countdown span{font-size:10px;text-transform:uppercase;letter-spacing:.19em;color:#d9b98c}.countdown i{width:1px;height:50px;background:rgba(255,255,255,.2)}.invitation{max-width:650px;margin:35px auto 0;color:var(--muted);line-height:1.7}.about{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:center;padding:110px 9%;background:#ecdfc5}.about-art{position:relative;max-width:440px}.about-art img{width:100%;max-height:600px;object-fit:cover;object-position:top;border-radius:220px 220px 18px 18px;box-shadow:0 25px 55px rgba(65,41,20,.2)}.about-art span{position:absolute;bottom:24px;right:-45px;background:var(--wine);color:white;padding:18px 22px;font-size:11px;line-height:1.6;text-transform:uppercase;letter-spacing:.1em}.about-copy p:not(.eyebrow){color:#615049;line-height:1.8;max-width:650px}.text-link{display:inline-flex;gap:20px;margin-top:12px;color:var(--wine);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.sponsor{background:var(--wine);padding:110px 7%;color:white}.section-heading.light>p:last-child{color:#d8c6b9}.sponsor-grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.sponsor-card{background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.1);padding:25px;border-radius:7px;transition:.3s}.sponsor-card:hover{background:rgba(255,255,255,.11);transform:translateY(-4px)}.card-top{display:flex;justify-content:space-between;gap:10px;color:#d3bba5;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.card-top strong{color:#efc36f}.sponsor-card h3{font-family:var(--serif);font-size:23px;font-weight:400;min-height:54px}.progress{height:4px;background:rgba(255,255,255,.13);overflow:hidden}.progress span{display:block;height:100%;background:var(--gold)}.sponsor-card>p{margin:12px 0 0;color:#d8c6b9;font-size:12px}.sponsor-actions{justify-content:center;margin-top:40px}.data-note{text-align:center;color:#bca79c;font-size:11px;margin:22px 0 0}.donate{display:grid;grid-template-columns:1.15fr .85fr;gap:9%;align-items:center;padding:110px 9%;background:#f7eddb}.donate-copy>p:not(.eyebrow){color:var(--muted);line-height:1.75;max-width:600px}.account{margin:30px 0;background:white;border-left:5px solid var(--gold);padding:22px 25px;display:grid;gap:8px;max-width:520px;box-shadow:0 14px 35px rgba(64,38,20,.08)}.account span{font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}.account strong{font-family:var(--serif);font-size:clamp(29px,4vw,44px);letter-spacing:.06em;color:var(--wine)}.account button{justify-self:start;border:0;background:none;padding:3px 0;color:#9d681c;font-weight:800;cursor:pointer}.secure-note{font-size:12px}.donate-poster{position:relative;max-width:420px;justify-self:center}.donate-poster img{max-height:650px;object-fit:contain;box-shadow:0 25px 60px rgba(64,35,16,.2)}.donate-poster a{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);white-space:nowrap;background:white;padding:10px 15px;border-radius:50px;font-size:10px;font-weight:800;text-transform:uppercase}.gallery{padding:110px 7%;background:#fffaf1}.poster-grid{max-width:1040px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:center}.poster-grid a{position:relative;transition:.3s}.poster-grid a:hover{transform:translateY(-6px)}.poster-grid img{width:100%;height:500px;object-fit:cover;object-position:top;box-shadow:0 20px 45px rgba(56,31,15,.17)}.poster-grid .featured img{height:580px}.poster-grid span{position:absolute;bottom:12px;left:12px;right:12px;padding:13px;background:rgba(49,11,16,.88);color:white;text-align:center;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.contact{display:grid;grid-template-columns:1.1fr .9fr;gap:10%;padding:110px 9%;background:#241512;color:white}.contact .eyebrow{color:#e0ad50}.contact-copy>p:not(.eyebrow){color:#d3c3b8;line-height:1.8}.contact-links{display:grid;gap:8px;margin:25px 0}.contact-links a{font-family:var(--serif);font-size:22px}.people{border:1px solid rgba(255,255,255,.16);padding:32px}.people h3{font-family:var(--serif);font-weight:400;font-size:26px;margin-top:0}.people a{padding:17px 0;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between}.people span{color:#c7b4a7}.people strong{color:#e6bb68}footer{background:#160b0a;color:#d6c4b8;padding:48px 7%;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center}footer>img{width:65px;height:65px;border-radius:50%}footer strong{font-family:var(--serif);color:white;font-size:18px}footer p{margin:5px 0;font-size:11px}.socials{display:flex;gap:10px}.socials a{width:43px;height:43px;border-radius:50%;overflow:hidden;background:white}.socials img{width:100%;height:100%;object-fit:cover}.copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.1);padding-top:20px;color:#8f7a70}.whatsapp{position:fixed;right:20px;bottom:22px;z-index:60;display:flex;align-items:center;gap:10px;color:white;background:#128c62;padding:8px 8px 8px 17px;border-radius:40px;box-shadow:0 10px 30px rgba(0,0,0,.24);font-size:11px;font-weight:800}.whatsapp b{display:grid;place-items:center;width:38px;height:38px;background:#25d366;border-radius:50%;font-size:20px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,100px);opacity:0;background:#17100e;color:white;padding:13px 20px;border-radius:5px;z-index:80;font-size:12px;transition:.3s}.toast.show{opacity:1;transform:translate(-50%,0)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.site-header{height:74px}.brand img{width:46px;height:46px}.brand strong{font-size:14px}.menu-toggle{display:grid;gap:4px;background:none;border:0;padding:10px;color:var(--wine)}.menu-toggle span{width:25px;height:2px;background:currentColor}.menu-toggle b{font-size:0}.site-header nav{position:absolute;left:0;right:0;top:74px;background:var(--cream);display:none;flex-direction:column;align-items:stretch;padding:22px 6%;gap:0;border-bottom:1px solid #ddcdb8}.site-header nav.open{display:flex}.site-header nav a{padding:13px}.nav-give{text-align:center;margin-top:7px}.hero{grid-template-columns:1fr;padding:75px 7% 100px;text-align:center}.hero-copy{display:grid;justify-items:center}.hero-mark{grid-row:1;width:min(62vw,330px);margin-bottom:40px}.hero h1{font-size:clamp(43px,12vw,68px)}.hero-glow{right:50%;transform:translate(50%,-65%)}.scroll-cue{left:50%;transform:translateX(-50%)}.about,.donate,.contact{grid-template-columns:1fr;gap:55px}.about-art{justify-self:center}.about-art span{right:-15px}.sponsor-grid{grid-template-columns:repeat(2,1fr)}.poster-grid{gap:10px}.poster-grid img,.poster-grid .featured img{height:460px}}
@media(max-width:600px){.brand small{display:none}.top-strip{font-size:9px}.ceremony,.about,.sponsor,.donate,.gallery,.contact{padding:80px 6%}.date-lockup{gap:9px}.date-lockup strong{font-size:31px}.date-lockup span{font-size:8px}.countdown{padding:22px 12px}.countdown strong{font-size:30px}.countdown i{height:38px}.countdown span{font-size:8px}.sponsor-grid{grid-template-columns:1fr}.sponsor-card h3{min-height:auto}.poster-grid{grid-template-columns:1fr}.poster-grid img,.poster-grid .featured img{height:auto;max-height:650px;object-fit:contain}.whatsapp span{display:none}.whatsapp{padding:7px}.contact-links a{font-size:17px}.people{padding:23px}.people a{display:grid;gap:4px}footer{grid-template-columns:auto 1fr}.socials{grid-column:1/-1}.hero-actions{justify-content:center}.button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orbit{animation:none}.reveal{opacity:1;transform:none;transition:none}}

/* Reliable, image-free social icons */
.socials a{display:grid;place-items:center;overflow:visible;color:#fff;transition:transform .2s,box-shadow .2s}
.socials a:hover{transform:translateY(-3px);box-shadow:0 8px 18px rgba(0,0,0,.3)}
.socials span{display:block;line-height:1}
.socials .facebook-icon{background:#1877f2}
.facebook-icon span{font-family:Arial,sans-serif;font-size:32px;font-weight:900;transform:translateY(4px)}
.socials .tiktok-icon{background:#050505;box-shadow:inset 0 0 0 1px #333}
.tiktok-icon span{font-family:Arial,sans-serif;font-size:29px;font-weight:900;text-shadow:-2px 0 #25f4ee,2px 0 #fe2c55}

/* Approval documents */
.documents{display:grid;grid-template-columns:.72fr 1.28fr;gap:7%;align-items:center;padding:110px 9%;background:#e9dcc5}
.document-copy h2{font-family:var(--serif);font-size:clamp(38px,5vw,62px);font-weight:400;line-height:1.05;margin:0 0 20px}
.document-copy>p:not(.eyebrow){color:var(--muted);line-height:1.8}
.document-meta{margin:28px 0;display:flex;justify-content:space-between;gap:18px;padding:17px 0;border-top:1px solid rgba(75,17,25,.18);border-bottom:1px solid rgba(75,17,25,.18);font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.document-meta strong{color:var(--wine)}
.document-actions{display:flex;gap:10px;flex-wrap:wrap}
.document-download{border-color:var(--wine);color:var(--wine);background:transparent}
.pdf-viewer{height:630px;padding:10px;background:#fff;border-radius:8px;box-shadow:0 25px 60px rgba(64,35,16,.18)}
.pdf-viewer object{width:100%;height:100%;border:0}
.pdf-fallback{height:100%;display:grid;place-content:center;text-align:center;gap:16px;color:var(--muted)}
.pdf-fallback a{color:var(--wine);font-weight:800}
.contact-actions{display:flex;gap:11px;flex-wrap:wrap}
.whatsapp-group{background:#128c62;color:#fff;border-color:#25d366}
@media(max-width:900px){.documents{grid-template-columns:1fr;gap:45px}.pdf-viewer{height:600px}}
@media(max-width:600px){.documents{padding:80px 6%}.pdf-viewer{height:480px}.document-actions .button{width:100%}}
