@import"https://fonts.googleapis.com/css2?family=Crimson+Text:wght@400;600;700&family=Public+Sans:wght@300;400;500;600&display=swap";.site-header{background:linear-gradient(135deg,#2b5aa61f,#2b5aa60d);border-bottom:1px solid var(--color-border);padding:1.25rem 0;position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.brand{display:flex;flex-direction:column;gap:.25rem}.brand-link{display:flex;flex-direction:column;text-decoration:none}.brand-kicker{font-size:.85rem;letter-spacing:.26em;text-transform:uppercase;color:var(--color-accent);font-weight:600}.brand-title{font-family:Crimson Text,serif;font-size:clamp(1.4rem,3vw,2.1rem);color:var(--color-text)}.brand-mission{margin:0;font-size:.95rem;color:var(--color-muted)}.nav ul{list-style:none;display:flex;gap:1rem;margin:0;padding:0}.nav-link{padding:.5rem .75rem;border-radius:999px;color:var(--color-text);font-weight:500;transition:background var(--transition-base),color var(--transition-base)}.nav-link:hover,.nav-link:focus-visible{background:#2b5aa61f;color:var(--color-accent)}.nav-link.active{background:var(--color-accent);color:#fff}.skip-link{position:absolute;top:-100px;left:1rem;background:var(--color-accent);color:#fff;padding:.5rem 1rem;border-radius:.75rem;transition:top var(--transition-base);z-index:200}.skip-link:focus{top:1rem}@media (max-width: 840px){.header-inner{flex-direction:column;align-items:flex-start}.nav ul{flex-wrap:wrap}}.site-footer{background:#0f1a32;color:#ffffffd1;padding:2.5rem 0;margin-top:auto}.footer-inner{display:flex;flex-direction:column;gap:1rem}.footer-title{margin:0;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.footer-copy{margin:0;max-width:520px;font-size:.95rem}.footer-meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;font-size:.9rem}.footer-meta a{color:#fffffff2}.footer-credit{margin:0;font-size:.85rem;color:#fff9}.main-content{flex:1}.search-bar{display:flex;gap:.75rem;align-items:center;background:var(--color-surface);padding:.75rem;border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:0 12px 30px -30px #2b5aa673}.search-bar input[type=search]{flex:1;border:none;padding:.75rem 1rem;border-radius:var(--radius-md);font-size:1rem;background:#2b5aa60f;color:var(--color-text)}.search-bar input[type=search]:focus{outline:2px solid rgba(43,90,166,.5);background:#fff}.search-bar .btn{white-space:nowrap}@media (max-width: 600px){.search-bar{flex-direction:column;align-items:stretch}.search-bar .btn{width:100%}}.obituary-card{overflow:hidden;display:flex;flex-direction:column;min-height:100%}.obituary-card__image{width:100%;height:220px;object-fit:cover}.obituary-card__body{padding:1.5rem;display:flex;flex-direction:column;gap:.75rem}.obituary-card__location{font-size:.85rem;color:var(--color-muted);letter-spacing:.05em;text-transform:uppercase;margin:0}.obituary-card__name{margin:0;font-size:clamp(1.4rem,2.2vw,1.75rem)}.obituary-card__lifespan{margin:0;font-weight:500;color:var(--color-accent)}.obituary-card__tribute{margin:0;color:var(--color-muted)}.obituary-card__link{align-self:flex-start;margin-top:auto}.home-page h1{font-size:clamp(2.25rem,4vw,3.25rem);margin-bottom:1rem}.hero{padding-top:clamp(2rem,8vw,5rem);padding-bottom:clamp(2rem,8vw,5rem)}.hero-inner{display:grid;gap:clamp(2rem,5vw,4rem)}.hero-copy p{margin:0 0 1rem;max-width:60ch;color:var(--color-muted)}.hero-label{font-size:.95rem;text-transform:uppercase;letter-spacing:.32em;margin:0 0 .75rem;color:var(--color-accent)}.hero-ctas{display:flex;gap:.75rem;flex-wrap:wrap}.hero-search{padding:clamp(1.5rem,3vw,2.5rem);display:flex;flex-direction:column;gap:1rem}.hero-search h2{margin:0}.hero-search__intro{margin:0;color:var(--color-muted)}.hero-search__meta{margin:0;font-size:.9rem;color:var(--color-muted)}.section-header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:2rem}.section-header p{margin:0;max-width:60ch;color:var(--color-muted)}.recent-grid{display:grid;gap:1.5rem}.community-card{padding:clamp(1.5rem,3vw,2.5rem);display:flex;flex-direction:column;gap:1rem}.community-card ul{margin:0;padding-left:1.25rem;color:var(--color-muted)}@media (min-width: 960px){.hero-inner{grid-template-columns:1.2fr 1fr}.recent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1240px){.recent-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.index-hero__inner{display:grid;gap:1.75rem}.index-hero__inner p{margin:0;max-width:70ch;color:var(--color-muted)}.filters{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;margin-bottom:1.5rem}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:200px}.filter-group label{font-weight:600}.filter-group input,.filter-group select{border-radius:var(--radius-md);border:1px solid var(--color-border);background:#2b5aa60d;padding:.6rem .75rem;font-size:1rem}.reset-button{margin-left:auto}.results-meta{margin:0 0 1.5rem;color:var(--color-muted)}.results-grid{display:grid;gap:1.5rem}.no-results{margin-top:2rem;padding:2rem;display:flex;flex-direction:column;gap:1rem;text-align:center}.no-results__links{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}@media (min-width: 990px){.index-hero__inner{grid-template-columns:1.05fr 1fr;align-items:center}.results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1240px){.results-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.detail-hero{padding:clamp(2rem,6vw,4rem) 0;background:linear-gradient(160deg,#2b5aa61a,#f8f9fc99)}.detail-hero__content{padding:clamp(1.8rem,3vw,2.8rem);display:flex;flex-direction:column;gap:.8rem}.detail-location{margin:0;letter-spacing:.24em;text-transform:uppercase;color:var(--color-accent);font-size:.85rem}.detail-dates{margin:0;font-weight:600;color:var(--color-muted)}.detail-tribute{margin:0 0 .5rem;color:var(--color-muted)}.detail-meta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.75rem}.detail-panel{padding:clamp(1.6rem,3vw,2.4rem);display:flex;flex-direction:column;gap:1rem}.biography-section p{margin:0;color:var(--color-muted)}.service-list{margin:0;display:grid;gap:.75rem}.service-list div{display:flex;flex-direction:column;gap:.35rem}.service-list dt{font-weight:600;color:var(--color-muted)}.service-list dd{margin:0;display:flex;flex-direction:column;gap:.25rem}.family-section ul{margin:0;padding-left:1.2rem;color:var(--color-muted)}.support-links{display:flex;flex-direction:column;gap:.5rem}.guestbook-panel{gap:1.2rem}.guestbook-list{list-style:none;display:grid;gap:1rem;margin:0;padding:0}.guestbook-entry{padding:1rem 1.25rem;border-radius:var(--radius-md);background:#2b5aa60f;display:flex;flex-direction:column;gap:.35rem}.guestbook-message{margin:0;font-style:italic}.guestbook-meta{margin:0;font-size:.9rem;color:var(--color-muted);display:flex;justify-content:space-between;flex-wrap:wrap;gap:.25rem}.guestbook-form-card form{display:grid;gap:1rem}.form-field input,.form-field textarea{border-radius:var(--radius-md);border:1px solid var(--color-border);padding:.65rem .75rem;font-size:1rem;background:#fff}.form-field input:focus,.form-field textarea:focus{outline:2px solid rgba(43,90,166,.4)}.captcha{display:flex;align-items:center;gap:.5rem}.captcha input{width:70px}.related-section .results-grid{display:grid;gap:1.5rem}@media (min-width: 960px){.related-section .results-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.simple-page{background:linear-gradient(150deg,#2b5aa614,#f6f7fbe6)}.simple-card{padding:clamp(1.8rem,3vw,2.6rem);display:grid;gap:1.5rem}.simple-card h1{margin:0;font-size:clamp(2rem,4vw,2.6rem)}.simple-card p{margin:0;color:var(--color-muted);max-width:70ch}.simple-grid{display:grid;gap:1.5rem}.simple-grid ul{margin:0;padding-left:1.25rem;color:var(--color-muted)}.stacked-form{display:grid;gap:1rem}.form-hint{margin:0;font-size:.85rem;color:var(--color-muted)}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-field input,.form-field textarea,.form-field select{border-radius:var(--radius-md);border:1px solid var(--color-border);padding:.65rem .75rem;font-size:1rem;background:#fff}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:2px solid rgba(43,90,166,.4)}.form-error{margin:0;color:#b42318;font-size:.9rem}.form-disclaimer{font-size:.85rem;color:var(--color-muted);margin:0}.form-confirmation{margin:0;color:#22643b;font-weight:600}@media (min-width: 900px){.simple-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}:root{color-scheme:light;--color-bg: #f6f7fb;--color-surface: #ffffff;--color-text: #1b1f30;--color-muted: #5a6378;--color-accent: #2b5aa6;--color-accent-soft: #e1e8f7;--color-border: rgba(33, 41, 66, .15);--radius-lg: 18px;--radius-md: 12px;--transition-base: .2s ease-in-out}*{box-sizing:border-box}body{margin:0;font-family:Public Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--color-bg);color:var(--color-text);line-height:1.65}h1,h2,h3,h4,h5,h6{font-family:Crimson Text,Times New Roman,serif;font-weight:600;color:var(--color-text);line-height:1.25}a{color:var(--color-accent);text-decoration:none}a:hover,a:focus-visible{text-decoration:underline}img{max-width:100%;display:block}main{flex:1}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-wrapper{min-height:100vh;display:flex;flex-direction:column}.container{width:min(1100px,92vw);margin:0 auto}.section{padding:clamp(2rem,4vw,3.5rem) 0}.card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:0 24px 40px -35px #22305e59}button,input,textarea,select{font-family:inherit}button{cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.75rem 1.35rem;border-radius:999px;border:none;font-weight:600;transition:transform var(--transition-base),box-shadow var(--transition-base)}.btn-primary{background:var(--color-accent);color:#fff;box-shadow:0 12px 20px -15px #2352a6cc}.btn-primary:hover,.btn-primary:focus-visible{transform:translateY(-1px);box-shadow:0 18px 26px -18px #2352a6e6}.btn-secondary{background:var(--color-accent-soft);color:var(--color-accent)}.grid{display:grid;gap:clamp(1.5rem,3vw,2.5rem)}@media (min-width: 768px){.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{body{background:#fff;color:#000;font-size:12pt}a:after{content:" (" attr(href) ")";font-size:10pt}.no-print{display:none!important}.print-friendly{box-shadow:none;border:1px solid #ccc}}
