@import "https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inter:wght@400;500;600;700&display=swap";:root{--color-bg:#0d0d0d;--color-bg-elevated:#1a1a1a;--color-accent:#1d428a;--color-accent-hover:#2563b8;--color-text:#fff;--color-text-muted:silver;--color-border:#2a2a2a;--font-heading:"Bebas Neue", sans-serif;--font-body:"Inter", system-ui, sans-serif;--max-width:1100px;--header-height:72px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);flex-direction:column;min-height:100vh;margin:0;font-size:1rem;line-height:1.6;display:flex}img{max-width:100%;height:auto}a{color:var(--color-accent-hover);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible{outline:2px solid var(--color-accent-hover);outline-offset:2px}h1,h2,h3{font-family:var(--font-heading);letter-spacing:.04em;text-transform:uppercase;font-weight:400;line-height:1.1}h1{color:var(--color-text);font-size:clamp(2.5rem,6vw,4rem)}h2{color:var(--color-text-muted);margin-top:0;font-size:clamp(1.75rem,4vw,2.5rem)}h3{color:var(--color-text);font-size:1.5rem}p{margin:0 0 1rem}main{flex:1}.container{width:min(100% - 2rem, var(--max-width));margin-inline:auto}.site-header{z-index:100;backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border);background:#0d0d0df2;position:sticky;top:0}.header-inner{min-height:var(--header-height);justify-content:space-between;align-items:center;gap:1rem;display:flex;position:relative}.logo-link{color:var(--color-text);align-items:center;gap:.75rem;text-decoration:none;display:flex}.logo-link:hover{text-decoration:none}.logo-img{filter:invert();width:auto;height:48px}.logo-text{font-family:var(--font-heading);letter-spacing:.06em;font-size:1.25rem;line-height:1.2;display:none}@media (width>=480px){.logo-text{display:block}}.nav-toggle{border:1px solid var(--color-border);cursor:pointer;background:0 0;border-radius:4px;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:0;display:flex}.nav-toggle span{background:var(--color-text);width:22px;height:2px;margin-inline:auto;transition:transform .2s,opacity .2s;display:block}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.site-nav ul{margin:0;padding:0;list-style:none}.site-nav a{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;padding:.75rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .2s,background .2s;display:block}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--color-text);text-decoration:none}.site-nav a[aria-current=page]{border-left:3px solid var(--color-accent);background:#1d428a26}@media (width<=767px){.site-nav{top:var(--header-height);background:var(--color-bg-elevated);border-bottom:1px solid var(--color-border);max-height:0;transition:max-height .3s;position:absolute;left:0;right:0;overflow:hidden}.site-nav.is-open{max-height:400px}}@media (width>=768px){.nav-toggle{display:none}.site-nav ul{gap:.25rem;display:flex}.site-nav a{border-radius:4px;padding:.5rem .875rem}.site-nav a[aria-current=page]{border-left:none;border-bottom:2px solid var(--color-accent);background:#1d428a33}}.hero-banner{background-color:var(--color-bg);border-bottom:3px solid var(--color-accent);justify-content:center;align-items:center;min-height:clamp(340px,52vh,480px);padding:5rem 0 2.5rem;display:flex;position:relative;overflow:hidden}.hero-banner__bg{z-index:0;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.hero-banner--memorial .hero-banner__bg{filter:grayscale()contrast(1.08)}.hero-banner--memorial{align-items:center;min-height:clamp(300px,45vh,420px)}.hero-banner--page{min-height:clamp(240px,38vh,360px);padding:4.5rem 0 2rem}.hero-banner--solid{background:linear-gradient(135deg, #0a1628 0%, var(--color-bg) 45%, #121820 100%);min-height:clamp(240px,38vh,360px);padding:4.5rem 0 2rem}.hero-banner--solid .hero-banner__overlay{background:linear-gradient(#0d0d0d66 0%,#0d0d0dd9 100%)}.hero-banner__overlay{z-index:1;background:linear-gradient(#0d0d0d66 0%,#0d0d0dad 55%,#0d0d0deb 100%);position:absolute;inset:0}.hero-banner--memorial .hero-banner__overlay{background:linear-gradient(#0d0d0d73 0%,#0d0d0db8 50%,#0d0d0df2 100%)}.hero-banner__graphics{z-index:2;pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero-banner__slash{height:100%;position:absolute}.hero-banner__slash--1{width:min(28vw,200px);top:0;right:12%}.hero-banner__slash--2{width:min(16vw,120px);top:0;right:4%}.hero-banner__accent-bar{background:var(--color-accent);opacity:.7;width:min(420px,75%);height:8px;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)skew(-12deg);box-shadow:0 0 24px #1d428a66}.hero-banner__grid{background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;mask-image:linear-gradient(#0000,#000 30% 70%,#0000)}.hero-banner__content{z-index:3;text-align:center;flex-direction:column;align-items:center;width:100%;display:flex;position:relative}.hero-tagline{font-family:var(--font-heading);color:var(--color-text);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.75rem;padding:.35rem 1rem;font-size:clamp(1.125rem,2.5vw,1.5rem);display:inline-block;position:relative}.hero-tagline:before{content:"";background:var(--color-accent);z-index:-1;opacity:.9;width:calc(100% + 1.5rem);position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)skew(-8deg)}.hero-banner h1{text-shadow:0 2px 24px #0009;max-width:none}.hero-banner--memorial h1{max-width:none}.hero-subtitle{color:var(--color-text-muted);margin-top:1rem;text-shadow:0 1px 12px #000c;max-width:42ch;margin-inline:auto;font-size:clamp(1rem,2vw,1.2rem)}.hero-caption{color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase;margin-top:.75rem;font-size:.875rem}.hero-actions{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1.75rem;display:flex}.page-section{padding:3rem 0}.page-section:nth-child(2n){background:var(--color-bg-elevated)}.section-intro{max-width:65ch;margin-bottom:2rem}.page-section--centered{text-align:center}.page-section--centered .section-intro{margin-inline:auto}.card-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;display:grid}.price-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-top:3px solid var(--color-accent);border-radius:4px;padding:1.5rem}.page-section:nth-child(2n) .price-card{background:var(--color-bg)}.price-card h3{margin:0 0 .5rem}.price-card .price{font-family:var(--font-heading);color:var(--color-accent-hover);letter-spacing:.04em;font-size:2rem}.btn{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text);background:var(--color-accent);cursor:pointer;border:none;border-radius:4px;padding:.875rem 1.75rem;font-size:.9375rem;font-weight:600;text-decoration:none;transition:background .2s;display:inline-block}.btn:hover{background:var(--color-accent-hover);color:var(--color-text);text-decoration:none}.btn-outline{border:2px solid var(--color-accent);background:0 0}.btn-outline:hover{background:var(--color-accent)}.hero-banner .btn-outline{border-color:#ffffffb3}.hero-banner .btn-outline:hover{background:#ffffff26;border-color:#fff}.table-wrapper{margin:1.5rem 0;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9375rem}th,td{text-align:left;border-bottom:1px solid var(--color-border);padding:.875rem 1rem}th{background:var(--color-accent);color:var(--color-text);text-transform:uppercase;letter-spacing:.04em;font-size:.8125rem;font-weight:600}tr:hover td{background:#1d428a14}.content-list{margin:0 0 1.5rem;padding-left:1.25rem}.content-list li{margin-bottom:.75rem}.content-list li::marker{color:var(--color-accent)}.contact-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin:1.5rem 0;display:grid}.contact-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:4px;padding:1.25rem}.page-section:nth-child(2n) .contact-card{background:var(--color-bg-elevated)}.contact-card h3{font-size:1.125rem;font-family:var(--font-body);text-transform:none;letter-spacing:normal;margin:0 0 .5rem;font-weight:600}.contact-card a{color:var(--color-text-muted)}.contact-card a:hover{color:var(--color-text)}.notice{border-left:4px solid var(--color-accent);color:var(--color-text-muted);background:#1d428a26;border-radius:0 4px 4px 0;margin:1.5rem 0;padding:1rem 1.25rem;font-size:.9375rem}blockquote{background:var(--color-bg-elevated);border-left:4px solid var(--color-accent);color:var(--color-text-muted);margin:2rem 0;padding:1.5rem 2rem;font-style:italic}blockquote cite{color:var(--color-text);margin-top:1rem;font-style:normal;font-weight:600;display:block}.memorial-layout{align-items:start;gap:2.5rem;margin-top:1.5rem;display:grid}@media (width>=768px){.memorial-layout{grid-template-columns:minmax(200px,280px) 1fr;gap:2.5rem}}.memorial-photo-wrap{max-width:280px;margin-inline:auto;position:relative}@media (width>=768px){.memorial-photo-wrap{margin-inline:0}}.memorial-photo{aspect-ratio:3/4;object-fit:cover;object-position:center 12%;border:3px solid var(--color-border);filter:grayscale()contrast(1.05);border-radius:2px;width:100%;display:block;box-shadow:0 0 0 1px #ffffff14,0 12px 32px #00000080}.memorial-photo-caption{color:var(--color-text-muted);text-align:center;letter-spacing:.02em;margin-top:.75rem;font-size:.8125rem}.memorial-content blockquote{margin-top:0}.site-footer{background:var(--color-bg-elevated);border-top:1px solid var(--color-border);margin-top:auto;padding:2.5rem 0}.footer-inner{gap:2rem;display:grid}@media (width>=640px){.footer-inner{grid-template-columns:1fr 1fr}}.footer-brand{font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;margin:0 0 .5rem;font-size:1.5rem}.footer-text{color:var(--color-text-muted);margin:0;font-size:.9375rem}.footer-links{margin:0;padding:0;list-style:none}.footer-links li{margin-bottom:.5rem}.footer-links a{color:var(--color-text-muted)}.footer-links a:hover{color:var(--color-text)}.footer-copy{border-top:1px solid var(--color-border);color:var(--color-text-muted);grid-column:1/-1;padding-top:1.5rem;font-size:.8125rem}.page-header{background:linear-gradient(180deg, #121820 0%, var(--color-bg) 100%);border-bottom:2px solid var(--color-accent);text-align:center;padding:3rem 0 2rem}.page-header p{color:var(--color-text-muted);max-width:55ch;margin:.5rem auto 0}
