@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:wght@400;500;600;700&display=swap";@import"https://unpkg.com/leaflet@1.9.4/dist/leaflet.css";:root{--primary-50: #f0f9ff;--primary-100: #e0f2fe;--primary-500: #3b82f6;--primary-600: #2563eb;--primary-700: #1d4ed8;--primary-900: #1e3a8a;--slate-50: #f8fafc;--slate-100: #f1f5f9;--slate-200: #e2e8f0;--slate-600: #475569;--slate-700: #334155;--slate-800: #1e293b;--slate-900: #0f172a;--font-serif: "Playfair Display", serif;--font-sans: "Inter", system-ui, sans-serif;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);line-height:1.6;color:var(--slate-700);background:linear-gradient(to bottom right,var(--slate-50),var(--slate-100));min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:600;color:var(--slate-900);line-height:1.2}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;font-weight:500;border-radius:.5rem;text-decoration:none;transition:all .2s ease;cursor:pointer;border:none;font-size:1rem}.btn-primary{background:var(--primary-600);color:#fff}.btn-primary:hover{background:var(--primary-700);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--slate-200);color:var(--slate-800)}.btn-secondary:hover{background:var(--slate-300);transform:translateY(-1px);box-shadow:var(--shadow-md)}.card{background:#fff;border-radius:1rem;box-shadow:var(--shadow-lg);overflow:hidden;transition:all .3s ease}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.section-padding{padding:4rem 1rem}.map-section-padding{padding:4rem .5rem}.grid{display:grid;gap:1.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-12{gap:3rem}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}@media (min-width: 768px){.md\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.md\:grid-cols-3{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.lg\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.lg\:grid-cols-4{grid-template-columns:repeat(4,1fr)}.lg\:justify-end{justify-content:flex-end}.lg\:justify-start{justify-content:flex-start}.lg\:text-left{text-align:left}.lg\:mx-0{margin-left:0;margin-right:0}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.space-x-4>*+*{margin-left:1rem}.space-y-4>*+*{margin-top:1rem}.text-center{text-align:center}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.25rem}.text-5xl{font-size:3rem}@media (min-width: 768px){.md\:text-6xl{font-size:3.75rem}.md\:text-7xl{font-size:4.5rem}}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mt-8{margin-top:2rem}.mt-12{margin-top:3rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.pt-16{padding-top:4rem}.pb-16{padding-bottom:4rem}@media (min-width: 768px){.md\:pt-20{padding-top:5rem}.md\:pb-20{padding-bottom:5rem}}.text-primary{color:var(--primary-600)}.text-slate-600{color:var(--slate-600)}.text-slate-700{color:var(--slate-700)}.text-slate-800{color:var(--slate-800)}.text-slate-900{color:var(--slate-900)}.bg-white{background:#fff}.bg-primary-50{background:var(--primary-50)}.bg-slate-100{background:var(--slate-100)}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.w-full{width:100%}.w-16{width:4rem}.w-24{width:6rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.h-1{height:.25rem}.h-16{height:4rem}.relative{position:relative}.absolute{position:absolute}.sticky{position:sticky}.top-0{top:0}.z-10{z-index:10}.z-50{z-index:50}.min-h-screen{min-height:100vh}@media (min-width: 640px){.sm\:flex-row{flex-direction:row}}@media (min-width: 768px){.md\:hidden{display:none}.md\:flex{display:flex}}.hidden{display:none}.backdrop-blur-sm{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.transition-all{transition:all .3s ease}.transition-colors{transition:color .2s ease,background-color .2s ease}.gradient-bg{background:linear-gradient(135deg,var(--primary-50) 0%,var(--slate-50) 50%,var(--primary-100) 100%)}.gradient-primary{background:linear-gradient(135deg,var(--primary-500),var(--primary-600))}.memorial-hero{background:linear-gradient(135deg,var(--primary-50) 0%,var(--slate-50) 30%,var(--primary-100) 100%);position:relative;overflow:hidden}.memorial-hero:before{content:"";position:absolute;top:-100px;right:-100px;width:400px;height:400px;background:radial-gradient(circle,rgba(59,130,246,.1) 0%,transparent 70%);border-radius:50%}.memorial-hero:after{content:"";position:absolute;bottom:-100px;left:-100px;width:400px;height:400px;background:radial-gradient(circle,rgba(148,163,184,.1) 0%,transparent 70%);border-radius:50%}.map-viewport{position:relative;overflow:hidden;background:#fff}.map-viewport:before,.map-viewport:after{content:"";position:absolute;top:0;bottom:0;width:7.5%;background:#fff;z-index:1000;pointer-events:none}.map-viewport:before{left:0;box-shadow:inset -20px 0 20px -10px #fffc}.map-viewport:after{right:0;box-shadow:inset 20px 0 20px -10px #fffc}.leaflet-container{font-family:var(--font-sans)!important;height:100%!important;width:100%!important;min-height:600px!important}.leaflet-popup-content-wrapper{border-radius:.5rem!important;box-shadow:0 10px 25px -5px #0000001a,0 4px 6px -2px #0000000d!important}.leaflet-popup-tip{background:#fff!important}.custom-marker{border-radius:50%;transition:transform .2s ease}.custom-marker:hover{transform:scale(1.2)}.pending-marker{animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.leaflet-control-zoom a{background-color:#fff!important;color:var(--slate-700)!important;border:1px solid var(--slate-200)!important}.leaflet-control-zoom a:hover{background-color:var(--slate-50)!important}
