.memorial-hero{background:linear-gradient(135deg,rgba(168,85,247,.95),rgba(59,130,246,.95)),url('/assets/images/memorial-bg.jpg');background-size:cover;background-position:center;color:#fff;padding:var(--space-16) 0;text-align:center}
.memorial-hero h1{font-size:var(--text-4xl);margin-bottom:var(--space-4)}
.memorial-container{display:grid;grid-template-columns:1fr 350px;gap:var(--space-8);padding:var(--space-12) 0}
.memorial-main{display:flex;flex-direction:column;gap:var(--space-12)}
.candle-lighting-section{background:#fff;padding:var(--space-8);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}
.candle-lighting-section h2{font-size:var(--text-2xl);margin-bottom:var(--space-6);text-align:center}
.candle-display{display:flex;justify-content:center;margin-bottom:var(--space-6);padding:var(--space-6);background:linear-gradient(180deg,#1f2937,#111827);border-radius:var(--radius-lg)}
.candle-form .form-group{margin-bottom:var(--space-4)}
.candle-form label{display:block;margin-bottom:var(--space-2);font-weight:600}
.candle-form input,.candle-form select,.candle-form textarea{width:100%;padding:var(--space-3);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md)}
.char-count{text-align:right;font-size:var(--text-sm);color:var(--color-neutral-500);margin-top:var(--space-1)}
.color-picker{display:flex;gap:var(--space-3)}
.color-option{cursor:pointer}
.color-option input{display:none}
.color-swatch{display:block;width:40px;height:40px;border-radius:50%;transition:transform .2s,box-shadow .2s}
.color-option:hover .color-swatch{transform:scale(1.1)}
.color-option input:checked+.color-swatch{transform:scale(1.2);box-shadow:0 0 0 3px var(--color-primary-500)}
.checkbox-label{display:flex;align-items:start;cursor:pointer}
.checkbox-label input{margin-right:var(--space-3);margin-top:4px}
.memorial-wall-section{background:#fff;padding:var(--space-8);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.memorial-wall-section h2{font-size:var(--text-2xl);margin-bottom:var(--space-6)}
.wall-filters{display:flex;gap:var(--space-4);margin-bottom:var(--space-6)}
.search-input{flex:1;padding:var(--space-3);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md)}
.sort-select{padding:var(--space-3);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff}
.memorial-grid{display:grid;gap:var(--space-6)}
.memorial-card{display:flex;gap:var(--space-4);padding:var(--space-6);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);transition:box-shadow .2s}
.memorial-card:hover{box-shadow:var(--shadow-md)}
.memorial-candle{flex-shrink:0}
.candle-icon{font-size:var(--text-4xl)}
.memorial-content{flex:1}
.memorial-name{font-size:var(--text-xl);margin-bottom:var(--space-2);color:var(--color-neutral-900)}
.memorial-by{font-size:var(--text-sm);color:var(--color-neutral-600);margin-bottom:var(--space-1)}
.memorial-relationship{font-size:var(--text-sm);color:var(--color-secondary-600);font-style:italic;margin-bottom:var(--space-3)}
.memorial-message{color:var(--color-neutral-700);line-height:1.6;margin-bottom:var(--space-3)}
.memorial-date{font-size:var(--text-xs);color:var(--color-neutral-500)}
.memorial-sidebar{display:flex;flex-direction:column;gap:var(--space-6)}
.sidebar-card{background:#fff;padding:var(--space-6);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.sidebar-card h3{font-size:var(--text-xl);margin-bottom:var(--space-4)}
.stats-card{background:linear-gradient(135deg,var(--color-secondary-500),var(--color-primary-500));color:#fff;text-align:center}
.stats-card h3{color:#fff}
.stat-item{margin-bottom:var(--space-4)}
.stat-item:last-child{margin-bottom:0}
.stat-value{font-size:var(--text-3xl);font-weight:700;margin-bottom:var(--space-1)}
.stat-label{font-size:var(--text-sm);opacity:.9}
.info-card p{color:var(--color-neutral-700);line-height:1.6;margin-bottom:var(--space-3)}
.info-card p:last-child{margin-bottom:0}
.donate-card{background:var(--color-accent-50);border:2px solid var(--color-accent-200)}
.load-more{text-align:center;margin-top:var(--space-6)}
@media(max-width:768px){.memorial-container{grid-template-columns:1fr}.memorial-sidebar{order:-1}.wall-filters{flex-direction:column}}
.site-footer{background:var(--color-neutral-900);color:#fff;padding:var(--space-8) 0;margin-top:var(--space-16);text-align:center}#cookie-consent-banner{display:none !important}
