:root { --ink:#0c0d11; --paper:#f6f0e7; --orange:#f47a16; --gold:#ffbd52; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--ink); color:var(--paper); font-family:"DM Sans",sans-serif; overflow-x:hidden; }
.glow { position:fixed; width:34rem; height:34rem; border-radius:50%; filter:blur(110px); opacity:.13; pointer-events:none; }
.glow-one{background:var(--orange);top:-13rem;right:-13rem}.glow-two{background:#7448ff;bottom:-15rem;left:-15rem}
.hero { min-height:82vh; display:flex; justify-content:center; align-items:center; gap:clamp(2rem,7vw,7rem); max-width:1160px; padding:4rem 2rem; margin:auto; position:relative; }
.logo { width:min(37vw,410px); border-radius:50%; box-shadow:0 0 0 4px var(--orange),0 25px 80px #000; animation:float 5s ease-in-out infinite; }
@keyframes float{50%{transform:translateY(-12px) rotate(2deg)}}
.eyebrow,.section-heading p { color:var(--orange); letter-spacing:.16em; font-size:.75rem; font-weight:700; }
h1,h2 { font-family:"Bebas Neue",sans-serif; font-weight:400; letter-spacing:.025em; margin:.3rem 0; line-height:.88; }
h1 { font-size:clamp(4.4rem,10vw,8.5rem); } h1 em { color:var(--orange); font-style:normal; }
.lead { color:#c6c1bb; max-width:25rem; font-size:1.1rem; margin:1.4rem 0 2rem; }
.button { display:inline-flex; gap:1rem; align-items:center; padding:.9rem 1.15rem; color:#111; background:var(--orange); text-decoration:none; font-weight:700; border-radius:2px; transition:.2s; }.button:hover{transform:translateY(-3px);background:var(--gold)}
.hero-actions{display:flex;align-items:center;gap:1rem}.chat-button{color:var(--paper);font-weight:700;text-decoration:none;border:1px solid #555660;padding:.85rem 1rem;border-radius:2px}.chat-button:hover{border-color:var(--orange);color:var(--orange)}
main { max-width:1160px; margin:auto; padding:4.5rem 2rem 7rem; position:relative; }.section-heading { display:flex; align-items:end; justify-content:space-between; margin-bottom:1.5rem; border-bottom:1px solid #303039; }.section-heading p{margin:0 0 .6rem}.section-heading h2{font-size:4rem;}
.event-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }.event { position:relative; min-height:300px; border:1px solid #34343c; background:linear-gradient(145deg,#24242b,#101116); padding:1.5rem; display:flex; flex-direction:column; justify-content:end; overflow:hidden; cursor:pointer; transition:.25s; }.event:hover{transform:translateY(-6px);border-color:var(--orange)}.event::before{content:"";position:absolute;inset:0;background:var(--event-color);opacity:.19}.event>*{position:relative}.event .date{color:var(--gold);font-weight:700;font-size:.8rem}.event h3{font-family:"Bebas Neue";font-size:2.35rem;letter-spacing:.03em;margin:.35rem 0}.event p{margin:0;color:#d6d2cc}.event .open{position:absolute;top:1.15rem;right:1.15rem;color:var(--orange);font-size:1.4rem}
.fun-chat-card{margin-top:1.25rem;border:1px solid #514256;background:linear-gradient(110deg,#201925,#17171c);padding:1.4rem 1.7rem;display:flex;gap:1.25rem;align-items:center;text-decoration:none;color:var(--paper);transition:.2s}.fun-chat-card:hover{transform:translateY(-3px);border-color:#d370ff}.fun-chat-card>span{font-size:3rem}.fun-chat-card p,.fun-chat-card h2,.fun-chat-card small{margin:0}.fun-chat-card p{color:#d370ff;font-size:.73rem;font-weight:700;letter-spacing:.14em}.fun-chat-card h2{font-size:2.5rem;line-height:1}.fun-chat-card small{color:#b5afb9}.bank-link{margin-top:1.25rem;border:1px solid #53634a;background:linear-gradient(110deg,#182019,#17171c);padding:1.2rem 1.7rem;display:flex;gap:1rem;align-items:center;text-decoration:none;color:var(--paper)}.bank-link span{font-size:2.2rem}.bank-link p{margin:0;color:#9bdb70;font-size:.73rem;font-weight:700;letter-spacing:.14em}.bank-link strong{display:block;margin-top:.25rem}.bank-page{min-height:100vh;max-width:740px;margin:auto;padding:4rem 1.5rem}.bank-card{margin-top:2rem;background:linear-gradient(145deg,#26361d,#11150f);border:1px solid #748b60;padding:clamp(2rem,9vw,5rem);text-align:center}.bank-card p{color:#b9e58f;letter-spacing:.2em;font-size:.8rem;font-weight:700}.bank-card h1{font-family:"Bebas Neue";font-size:clamp(4rem,13vw,8rem);margin:.3rem 0;color:#f1df9c}.bank-card small{color:#c0c6b9}.bank-card button{display:block;margin:2rem auto 0;background:transparent;border:1px solid #a1ba84;color:#dce9d1;padding:.7rem 1rem;cursor:pointer}.bank-card button:hover{background:#a1ba84;color:#131713}
.chat-page{min-height:100vh;max-width:820px;margin:auto;padding:3rem 1.5rem}.chat-shell{margin-top:1.5rem;border:1px solid #3c3c45;background:#15161b;box-shadow:0 20px 70px #0008}.chat-header{padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1rem;border-bottom:1px solid #363640}.chat-icon{background:var(--orange);color:#161616;font-family:"Bebas Neue";font-size:1.7rem;padding:.45rem;border-radius:50%}.chat-header h1{font-size:2.5rem;margin:0}.chat-header p{margin:.15rem 0 0;color:#aaa5aa;font-size:.8rem}.chat-header i{display:inline-block;width:.45rem;height:.45rem;border-radius:50%;background:#56dc78}.messages{height:min(54vh,490px);overflow:auto;padding:1.4rem;display:flex;flex-direction:column;gap:.8rem;background:linear-gradient(145deg,#1a1b21,#121317)}.message{max-width:76%;background:#2b2c34;padding:.65rem .9rem;border-radius:4px 14px 14px 14px}.message.mine{align-self:flex-end;background:#e96f15;color:#151515;border-radius:14px 4px 14px 14px}.message b{font-size:.72rem;color:var(--gold)}.message.mine b{color:#542700}.message p{margin:.18rem 0 0}.quick-replies{padding:.9rem 1rem;display:flex;gap:.5rem;overflow:auto;border-top:1px solid #303039}.quick-replies button{white-space:nowrap;background:#252630;color:#ddd;border:1px solid #4a4b55;border-radius:100px;padding:.45rem .75rem;cursor:pointer}#chat-form{display:flex;gap:.5rem;padding:0 1rem 1rem}#chat-form input,#chat-form select{background:#0e0f13;color:var(--paper);border:1px solid #3e3f49;padding:.8rem;border-radius:3px}#chat-form input{flex:1}#chat-form button{background:var(--orange);border:0;padding:.8rem 1rem;font-weight:700;cursor:pointer}.chat-note{display:block;color:#85818a;padding:0 1rem 1rem}
.event-page{max-width:1120px;margin:auto;padding:4rem 2rem 7rem}.event-page h1{margin-top:1rem}.back{color:var(--orange);font-weight:700;text-decoration:none}.photo-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.5rem}.photo-gallery img{width:100%;aspect-ratio:1;object-fit:cover;border:1px solid #46464e;transition:.2s}.photo-gallery img:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:1}.photo-gallery img:hover{transform:scale(1.02);border-color:var(--orange)}
.memory-upload{margin-top:2rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;border:1px dashed #65616c;background:#1b1c22}.memory-upload b{color:var(--orange);font-size:.78rem;letter-spacing:.14em}.memory-upload p{margin:.2rem 0 0;color:#bbb6bd}.memory-upload label{cursor:pointer;color:#111;background:var(--orange);font-weight:700;padding:.75rem 1rem}.memory-upload input{display:none}.memory-item{position:relative;min-width:0}.memory-item img,.memory-item video{width:100%;aspect-ratio:1;object-fit:cover;display:block;border:1px solid #46464e}.memory-item:first-child{grid-column:span 2;grid-row:span 2}.memory-item:first-child img{aspect-ratio:1}.reaction-bar{position:absolute;left:.5rem;right:.5rem;bottom:.5rem;display:flex;gap:.35rem;opacity:0;transition:.2s}.memory-item:hover .reaction-bar{opacity:1}.reaction-bar button,.download-button{border:0;border-radius:100px;background:#111d;color:#fff;padding:.35rem .5rem;cursor:pointer;font-size:.8rem;text-decoration:none}.reaction-bar button:hover,.reaction-bar button.active,.download-button:hover{background:var(--orange)}
dialog { border:1px solid #474751; background:#16171c; color:var(--paper); width:min(920px,92vw); padding:2.5rem; box-shadow:0 30px 90px #000; }.close { position:absolute; right:.75rem; top:.5rem; color:var(--paper); background:none; border:0; font-size:2.3rem; cursor:pointer; }.modal-title{font-family:"Bebas Neue";font-size:3rem;margin:0}.modal-description{color:#c8c4bf}.media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.5rem}.media-item{aspect-ratio:1;background:#292a31;display:flex;align-items:center;justify-content:center;color:#9a9aa5;border:1px dashed #62626c;text-align:center;padding:1rem}.media-item img,.media-item video{width:100%;height:100%;object-fit:cover}dialog::backdrop{background:#000b}
footer { text-align:center; border-top:1px solid #2c2d33; padding:2.5rem 1rem; color:#b8b4ad; }footer img{width:58px;border-radius:50%;vertical-align:middle;margin-right:.8rem}footer p{display:inline-block;font-weight:700;color:var(--paper)}footer small{display:block;margin-top:1rem;color:#827f7a}
@media(max-width:700px){.hero{min-height:auto;flex-direction:column-reverse;text-align:center;padding-top:3rem}.logo{width:min(75vw,360px)}.hero-actions{justify-content:center;flex-wrap:wrap}.event-grid{grid-template-columns:1fr}.media-grid{grid-template-columns:1fr 1fr}.photo-gallery{grid-template-columns:1fr 1fr}.section-heading h2{font-size:3.2rem}#chat-form{flex-wrap:wrap}#chat-form select{width:100%}.message{max-width:90%}}
