.navbar{background-color:#242526;height:80px;display:flex;justify-content:space-between;align-items:center;padding:0 5%;box-shadow:0 2px 10px #00000026;position:sticky;top:0;z-index:1000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.navbar-logo{color:#fff;font-size:1.5rem;font-weight:700;text-decoration:none;transition:color .3s ease}.navbar-logo:hover{color:#e0e0e0}.navbar-links{display:flex;align-items:center;gap:2rem}.navbar-links a{color:#e0e0e0;text-decoration:none;font-size:1rem;font-weight:500;padding:.5rem 0;position:relative;transition:color .3s ease}.navbar-links a:hover{color:#fff}.navbar-links a.active{color:#fff;font-weight:700}.navbar-links a.active:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background-color:#1877f2}.navbar-user{color:#e0e0e0;font-size:1rem;margin-right:1rem;font-weight:500}.navbar-user-actions{display:flex;align-items:center;text-decoration:none;padding:.5rem;border-radius:50px;transition:background-color .3s ease;gap:.5rem}.navbar-user-actions:hover{background-color:#ffffff1a}.logout-button{background-color:#1877f2;color:#fff;border:none;border-radius:8px;padding:.5rem 1rem;font-size:1rem;font-weight:700;cursor:pointer;transition:background-color .3s ease}.logout-button:hover{background-color:#166fe5}.menu-icon{display:none;font-size:2rem;color:#fff;cursor:pointer}@media screen and (max-width: 768px){.navbar-links{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;gap:2.5rem;background-color:#2c2d2e;width:100%;height:calc(100vh - 80px);position:absolute;top:80px;left:-100%;opacity:0;transition:left .5s ease,opacity .3s ease;padding-top:3rem;z-index:1001}.navbar-links.active{left:0;opacity:1;align-items:center}.navbar-user{margin-right:0;margin-bottom:1rem;font-size:1.2rem}.navbar-links a{font-size:1.2rem}.karma-points-display{font-weight:700;font-size:1.1rem;display:inline-flex;align-items:center;gap:.35rem;margin-top:-.9rem}.menu-icon{display:block}}.home{position:relative;color:#e9e7ee;overflow:hidden}.corner-img{position:absolute;width:140px;height:140px;border-radius:30px;filter:drop-shadow(0 6px 18px rgba(0,0,0,.25));pointer-events:none}.corner-img.tl{top:24px;left:24px;transform:rotate(-6deg)}.corner-img.tr{top:24px;right:24px;transform:rotate(6deg)}.corner-img.bl{bottom:24px;left:24px;transform:rotate(4deg)}.corner-img.br{bottom:24px;right:24px;transform:rotate(-4deg)}.hero{max-width:1100px;margin:0 auto;padding:120px 24px 56px;text-align:center}.hero-eyebrow{display:inline-block;letter-spacing:.12em;font-size:.9rem;color:#a8a4b8;background:#ffffff0f;padding:8px 12px;border-radius:999px;margin-bottom:16px}.hero-title{font-size:clamp(2.4rem,5vw,4rem);line-height:1.15;font-weight:800;margin:0 0 16px;font-family:playfair display,serif;font-style:italic;font-weight:300}.hero-gradient{background:linear-gradient(90deg,#9b87f5,#22e1ff,#ff8a8a);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-subtitle{max-width:800px;margin:0 auto 28px;color:#c8c5d4;font-size:1.1rem;line-height:1.6}.hero-actions{display:flex;gap:12px;justify-content:center;margin-top:8px}.hero-cta{text-decoration:none;border-radius:999px;padding:12px 20px;font-weight:700;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.hero-cta.primary{background:linear-gradient(135deg,#9b87f5,#22e1ff);color:#0b0b12;box-shadow:0 10px 24px #22e1ff2e}.hero-cta.primary:hover{transform:translateY(-2px)}.hero-cta.ghost{background:#ffffff0f;color:#e9e7ee;border:1px solid rgba(255,255,255,.1)}.hero-cta.ghost:hover{transform:translateY(-2px)}.hero-stats{display:grid;grid-template-columns:auto 1px auto 1px auto;gap:16px;align-items:center;justify-content:center;margin-top:36px;opacity:.95}.stat span{font-weight:800;font-size:1.4rem;color:#fff}.stat small{display:block;font-size:.9rem;color:#bdbad0}.hero-stats .divider{width:1px;height:36px;background:linear-gradient(to bottom,transparent,rgba(255,255,255,.2),transparent)}.how{max-width:1100px;margin:48px auto 8px;padding:24px;text-align:center}.how h2{font-size:clamp(1.8rem,3.5vw,2.6rem);margin-bottom:8px}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}.step-card{background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:18px;text-align:left;min-height:160px}.step-icon{font-size:1.6rem;margin-bottom:6px}.step-card h3{margin:0 0 6px;font-size:1.2rem}.step-card p{color:#bdbad0;font-size:.98rem;line-height:1.5}.gallery{max-width:1200px;margin:24px auto 8px;padding:24px;display:grid;grid-template-columns:1.1fr 1.4fr;gap:20px;align-items:center}.gallery-left h2{font-size:clamp(1.8rem,3.5vw,2.6rem);margin:0 0 8px}.gallery-left p{color:#c8c5d4;margin:0 0 16px}.gallery-ctas{display:flex;gap:12px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gallery-card{position:relative;overflow:hidden;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a}.gallery-card img{width:100%;height:100%;display:block;object-fit:cover;transform:scale(1.02);filter:saturate(1.05) contrast(1.02)}.gallery-card.tall{grid-row:span 2}.gallery-card.wide{grid-column:span 2}.gallery-card .badge{position:absolute;left:10px;bottom:10px;background:#00000073;color:#fff;font-size:.9rem;padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.18)}.partners{max-width:1100px;margin:18px auto 8px;padding:24px;text-align:center}.partners h2{margin-bottom:6px}.partners-sub{color:#bdbad0;margin-bottom:16px}.partners-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;align-items:center;justify-items:center}.partner-logo{width:130px;opacity:.35;filter:brightness(.6) grayscale(.2);transition:transform .25s ease,filter .25s ease,opacity .25s ease}.partner-logo:hover{transform:translateY(-4px);filter:none;opacity:1}.cta-banner{max-width:1100px;margin:22px auto 32px;padding:24px;border-radius:18px;text-align:center;background:linear-gradient(135deg,#9b87f533,#22e1ff2e);border:1px solid rgba(255,255,255,.12)}.cta-banner h3{margin:0 0 10px}.cta-actions{display:flex;gap:12px;justify-content:center}.mini-footer{text-align:center;padding:18px 12px 36px;color:#a8a4b8;font-size:.95rem}.reveal{will-change:transform,opacity}@media (max-width: 980px){.steps,.gallery{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-card.wide{grid-column:span 2}}@media (max-width: 540px){.partners-strip{grid-template-columns:repeat(3,1fr)}.corner-img{width:96px}}.deeds-page-container{padding:4rem 2rem;min-height:100vh}.deeds-header{text-align:center;margin-bottom:3.5rem}.deeds-title{font-size:3rem;color:#e9e6e6;font-weight:700;margin-bottom:.5rem}.deeds-subtitle{font-size:1.2rem;color:#555;max-width:650px;margin:0 auto}.deeds-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2.75rem;max-width:1400px;margin:0 auto}.deed-card{background:#0e0e0e42;border-radius:18px;box-shadow:0 12px 30px #00000012;display:flex;flex-direction:column;overflow:hidden;transition:transform .4s cubic-bezier(.25,.8,.25,1),box-shadow .4s cubic-bezier(.25,.8,.25,1);cursor:pointer}.deed-card:hover{transform:scale(1.04);box-shadow:0 20px 45px #00000026}.deed-card-content{padding:2rem;display:flex;flex-direction:column;flex-grow:1}.deed-name{font-size:1.65rem;font-weight:700;color:#e6e1e1;margin-bottom:1rem;line-height:1.3}.deed-description{font-size:1rem;color:#e6e1e1;line-height:1.6;flex-grow:1;margin-bottom:2rem}.points-badge{background:linear-gradient(135deg,#3f4041,#323132);color:#f9f9f9;padding:.6rem 1.2rem;border-radius:50px;font-weight:600;font-size:1rem;align-self:flex-start;margin-bottom:1.5rem;-webkit-user-select:none;user-select:none;letter-spacing:.03em}.complete-deed-button{width:100%;background:linear-gradient(90deg,#515152,#6b6a6c);color:#f9f9f9;border:none;border-radius:12px;padding:.85rem;font-size:1.1rem;font-weight:700;cursor:pointer;transition:box-shadow .3s ease,transform .3s ease;margin-top:auto}.complete-deed-button:hover,.complete-deed-button:focus{transform:translateY(-3px);outline:none}.profile-header{background:#fff;padding:1.5rem 2rem;border-radius:12px;box-shadow:0 4px 20px #00000014;max-width:800px;margin:-2rem auto 3rem;text-align:center;position:relative}.profile-header h2{margin:0 0 .5rem;font-size:1.8rem;color:#1c1e21}.profile-level{background:linear-gradient(135deg,gold,#ffac27);color:#333;display:inline-block;padding:.4rem 1.2rem;border-radius:50px;font-weight:700;font-size:1rem}.deed-card.on-cooldown{opacity:.6;cursor:not-allowed}.deed-card.on-cooldown .complete-deed-button{background:#6c757d;cursor:not-allowed}.deed-card.on-cooldown:hover{transform:none;box-shadow:0 12px 30px #00000012}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:2000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-content{background:#fff;padding:2rem 2.5rem;border-radius:16px;width:90%;max-width:500px;text-align:center;box-shadow:0 10px 40px #0003;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-content h2{margin-top:0;font-size:1.8rem}.modal-points{font-size:1.2rem;color:#667eea;font-weight:700;margin:1rem 0}.modal-actions{display:flex;justify-content:center;gap:1rem;margin-top:2rem}.modal-button-cancel,.modal-button-confirm{padding:.8rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:transform .2s ease}.modal-button-cancel{background-color:#e4e6eb;color:#1c1e21}.modal-button-confirm{background:#1877f2;color:#fff}.modal-button-cancel:hover,.modal-button-confirm:hover{transform:translateY(-2px)}@media screen and (max-width: 768px){.deeds-title{font-size:2.4rem}.deeds-page-container{padding:3rem 1.5rem}}@media screen and (max-width: 480px){.deeds-grid{grid-template-columns:1fr}.deeds-title{font-size:2rem}}.auth-container{display:flex;justify-content:center;align-items:center;min-height:90vh;padding:1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.auth-card{padding:2.5rem 2rem;border-radius:12px;box-shadow:0 4px 20px #00000014;width:100%;max-width:450px;text-align:center;box-sizing:border-box}.auth-title{font-size:3rem;color:#dbdcdd;margin-bottom:.5rem}.auth-subtitle{font-size:1rem;color:#8492a3;margin-bottom:2rem}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.input-group{text-align:left}.input-group label{display:block;font-size:.9rem;color:#ccdbf1;margin-bottom:.5rem;font-weight:500}.input-group input{width:100%;padding:.9rem 1rem;border:1px solid #dddfe2;border-radius:8px;font-size:1rem;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}.input-group input:focus{outline:none;border-color:#1877f2;box-shadow:0 0 0 2px #1877f233}.name-group{display:flex;gap:1rem}.name-group .input-group{flex:1}.auth-button{width:100%;padding:.9rem;background-color:#1877f2;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:background-color .2s;margin-top:1rem}.auth-button:hover{background-color:#166fe5}.auth-error{color:#fa383e;font-size:.9rem;margin-top:-.5rem;margin-bottom:0}.auth-switch{margin-top:1.5rem;font-size:.9rem;color:#606770}.auth-switch a{color:#1877f2;text-decoration:none;font-weight:500}.auth-switch a:hover{text-decoration:underline}@media (max-width: 480px){.auth-card{padding:2rem 1.5rem}.auth-title{font-size:1.75rem}.name-group{flex-direction:column}}.profile-page-container{padding:4rem 2rem;max-width:900px;margin:0 auto;font-family:Segoe UI,sans-serif}.profile-summary-card{background:linear-gradient(135deg,#7a7c84,#312d35);color:#fff;padding:2.5rem;border-radius:16px;text-align:center;margin-bottom:3rem}.profile-summary-card h1{margin:0 0 1.5rem;font-size:2.5rem}.stats-container{display:flex;justify-content:space-around;align-items:center}.stat-item{display:flex;flex-direction:column}.stat-value{font-size:2rem;font-weight:700}.stat-label{font-size:.9rem;opacity:.8}.deed-history h2{font-size:2rem;margin-bottom:1.5rem;color:#b5b2b2;border-bottom:2px solid #eee;padding-bottom:.5rem}.deed-history-list{list-style:none;padding:0;margin:0}.history-item{background:#fff;padding:1rem 1.5rem;border-radius:10px;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 15px #0000000f;transition:transform .2s ease}.history-item:hover{transform:translate(5px)}.history-item-info{display:flex;flex-direction:column}.history-deed-name{font-weight:600;font-size:1.1rem;color:#333}.history-deed-date{font-size:.85rem;color:#777;margin-top:.25rem}.history-deed-points{font-size:1.5rem;font-weight:700;color:#2ecc71}.modal-backdrop{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:50}.modal-card{background:#fff;color:#222;width:min(520px,92vw);border-radius:12px;padding:20px;box-shadow:0 12px 40px #00000040}.primary-button{padding:10px 14px;border-radius:8px;background:#4f46e5;color:#fff;border:none;cursor:pointer}.secondary-button{padding:10px 14px;border-radius:8px;background:#e5e7eb;color:#111;border:none;cursor:pointer}.text-button{padding:10px 12px;border:none;background:transparent;color:#4f46e5;cursor:pointer}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;background-color:#000;background-image:radial-gradient(ellipse at center,rgba(255,255,255,.1) 0%,transparent 70%),radial-gradient(ellipse at center,rgba(118,75,162,.4) 0%,transparent 50%);background-size:100% 100%;font-family:BR sonoma}.testing-bar{position:fixed;left:16px;right:16px;bottom:16px;background:#111827;color:#e5e7eb;border:1px solid rgba(255,255,255,.08);padding:12px 16px;border-radius:12px;box-shadow:0 10px 30px #00000059;z-index:2000;font-size:.95rem;text-align:center}.testing-bar a{color:#93c5fd;text-decoration:underline}@media (max-width: 480px){.testing-bar{left:12px;right:12px;bottom:12px;font-size:.92rem}}.footer{background:#2726266a;color:#fff;margin-top:3.75rem}.footer-container{max-width:87.5rem;margin:0 auto;padding:3.75rem 1.25rem 2.5rem;display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:2.5rem}.footer-section{display:flex;flex-direction:column}.footer-title{font-size:1.5rem;font-weight:600;margin-bottom:1.25rem;color:#fff}.footer-description{color:#bdc3c7;line-height:1.6;margin-bottom:.9375rem;font-size:.95rem}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:.75rem}.footer-links a{color:#bdc3c7;text-decoration:none;font-size:.95rem;transition:color .3s ease}.footer-links a:hover{color:#3498db}.contact-info{color:#bdc3c7}.contact-subtitle{font-size:1.1rem;font-weight:600;margin-bottom:.625rem;color:#fff}.contact-text{margin-bottom:.625rem;line-height:1.5;font-size:.95rem}.contact-text strong{color:#fff}.footer-contact-btn{display:inline-block;padding:.3125rem .625rem;background:#3498db;color:#fff;border-radius:.625rem;text-decoration:none;font-size:.95rem;transition:background-color .3s ease}.footer-contact-btn:hover{scale:.95}.social-icon{margin-top:1.25rem}.instagram-icon{display:inline-flex;align-items:center;justify-content:center;width:3.125rem;height:3.125rem;background:linear-gradient(135deg,#e91e63,#9c27b0);border-radius:.9375rem;color:#fff;font-size:1.5rem;text-decoration:none;transition:transform .3s ease}.instagram-icon:hover{transform:translateY(-.1875rem)}.footer-bottom{background:#0003;border-top:.0625rem solid rgba(255,255,255,.1)}.footer-bottom-container{max-width:87.5rem;margin:0 auto;padding:1.25rem;display:flex;justify-content:space-between;align-items:center}.copyright{color:#bdc3c7;font-size:.9rem;margin:0}.social-links{display:flex;gap:.9375rem}.social-link{display:inline-flex;align-items:center;justify-content:center;width:2.1875rem;height:2.1875rem;background:#ffffff1a;border-radius:.5rem;color:#bdc3c7;text-decoration:none;font-size:1.1rem;transition:all .3s ease}.social-link:hover{background:#3498db;color:#fff;transform:translateY(-.125rem)}@media (max-width: 64rem){.footer-container{grid-template-columns:1fr 1fr;gap:1.875rem}}@media (max-width: 48rem){.footer-container{grid-template-columns:1fr;gap:1.875rem;padding:2.5rem 1.25rem 1.875rem}.footer-bottom-container{flex-direction:column;gap:.9375rem;text-align:center}}@media (max-width: 30rem){.footer-container{padding:1.875rem .9375rem 1.25rem}}
