/* Custodia Serena cemetery template catalog and demos */
.cemetery-template-catalog-hero {
background: #f8f7f1;
border-bottom: 1px solid #e3e0d7;
padding: clamp(28px, 4vw, 52px) 0 clamp(28px, 4vw, 48px);
}
.cemetery-template-catalog-hero__inner {
max-width: 960px;
}
.cemetery-template-catalog-hero .container {
padding-top: 0;
padding-bottom: 0;
}
.cemetery-template-catalog-hero h1 {
max-width: 780px;
font-size: clamp(1.9rem, 3.75vw, 3.25rem);
line-height: 1.03;
letter-spacing: 0;
color: #172334;
margin: 14px 0 18px;
}
.cemetery-template-catalog-hero p {
max-width: 790px;
font-size: clamp(1.05rem, 1.7vw, 1.28rem);
line-height: 1.72;
color: #46515b;
}
.cemetery-template-catalog-actions,
.cemetery-template-filter-band {
display: flex;
flex-wrap: wrap;
gap: 12px;
margin-top: 26px;
}
.cemetery-template-audit-strip {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 1px;
background: #ddd8ca;
border: 1px solid #ddd8ca;
margin-top: 28px;
margin-bottom: 24px;
}
.cemetery-template-audit-strip span {
display: grid;
gap: 5px;
background: #fffefa;
padding: 18px;
color: #1d2935;
}
.cemetery-template-audit-strip strong {
font-size: .95rem;
}
.cemetery-template-audit-strip small {
color: #55616a;
line-height: 1.45;
}
.cemetery-template-filter-band {
margin-bottom: 12px;
}
.cemetery-template-filter-band .button {
min-height: 44px;
}
.cemetery-template-catalog-list {
width: min(100% - 32px, 1600px);
margin: 0 auto 70px;
}
.cemetery-template-row {
display: grid;
grid-template-columns: minmax(520px, 1.18fr) minmax(340px, .82fr);
gap: clamp(28px, 4vw, 58px);
align-items: center;
padding: clamp(32px, 5vw, 62px) 0;
border-top: 1px solid #e2ded3;
color: #172334;
}
.cemetery-template-row:nth-child(even) {
grid-template-columns: minmax(340px, .82fr) minmax(520px, 1.18fr);
}
.cemetery-template-row:nth-child(even) .cemetery-template-row__preview {
order: 2;
}
.cemetery-template-row:nth-child(even) .cemetery-template-row__content {
order: 1;
}
.cemetery-template-row[hidden] {
display: none;
}
.cemetery-template-row__content {
max-width: 650px;
}
.cemetery-template-row__meta {
display: flex;
flex-wrap: wrap;
gap: 10px 18px;
padding-bottom: 16px;
border-bottom: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 70%);
color: #594a2f;
font-weight: 850;
}
.cemetery-template-row__meta span + span::before {
content: "";
display: inline-block;
width: 6px;
height: 6px;
border-radius: 50%;
background: var(--cemetery-accent);
margin-right: 14px;
vertical-align: middle;
}
.cemetery-template-row h2 {
font-size: clamp(1.85rem, 3.4vw, 2.85rem);
line-height: 1.03;
letter-spacing: 0;
margin: 22px 0 14px;
color: #151a20;
}
.cemetery-template-row__summary {
font-size: clamp(1.02rem, 1.8vw, 1.3rem);
line-height: 1.65;
color: #4d535b;
}
.cemetery-template-row__details {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 26px;
margin-top: 24px;
padding-top: 22px;
border-top: 1px solid #e6e1d8;
}
.cemetery-template-row__details span {
display: grid;
gap: 8px;
color: #4a5159;
line-height: 1.45;
}
.cemetery-template-row__details strong {
font-size: 1rem;
color: #253246;
}
.cemetery-template-browser-frame {
position: relative;
height: clamp(340px, 31vw, 490px);
overflow: hidden;
border: 1px solid #cfd6dc;
border-radius: 10px;
background: #fff;
box-shadow: 0 26px 70px rgba(28, 39, 51, .12);
}
.cemetery-template-browser-bar {
height: 36px;
display: flex;
align-items: center;
gap: 10px;
padding: 0 16px;
border-bottom: 1px solid #dce1e5;
background: #fff;
}
.cemetery-template-browser-bar span {
width: 12px;
height: 12px;
border-radius: 50%;
background: #cf7e6f;
}
.cemetery-template-browser-bar span:nth-child(2) {
background: #d7b86d;
}
.cemetery-template-browser-bar span:nth-child(3) {
background: #7ea37f;
}
.cemetery-template-browser-frame iframe,
.cemetery-template-screenshot {
display: block;
width: 100%;
height: 100%;
border: 0;
object-fit: cover;
object-position: top center;
background: #fff;
}
.cemetery-template-preview-link {
display: block;
height: calc(100% - 36px);
color: inherit;
text-decoration: none;
}
.cemetery-template-preview-link:hover .cemetery-template-screenshot,
.cemetery-template-preview-link:focus-visible .cemetery-template-screenshot {
filter: saturate(1.05) contrast(1.02);
}
.cemetery-template-preview-cta {
position: absolute;
right: 24px;
bottom: 22px;
z-index: 2;
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 46px;
padding: 0 24px;
border-radius: 999px;
background: #d6b66d;
color: #142033;
font-weight: 900;
text-decoration: none;
box-shadow: 0 14px 30px rgba(20, 32, 51, .18);
}
.cemetery-template-preview-cta:hover,
.cemetery-template-preview-cta:focus-visible {
background: #c49d48;
color: #111827;
}
.cemetery-theme {
margin: 0;
background: var(--cemetery-background);
color: var(--cemetery-text);
font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.cemetery-theme *,
.cemetery-theme *::before,
.cemetery-theme *::after {
box-sizing: border-box;
}
.cemetery-theme h1,
.cemetery-theme h2,
.cemetery-theme h3,
.cemetery-demo-logo-text strong {
font-family: Georgia, "Times New Roman", serif;
letter-spacing: 0;
}
.cemetery-demo-header {
position: sticky;
top: 0;
z-index: 20;
background: color-mix(in srgb, var(--cemetery-surface), transparent 4%);
border-bottom: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 70%);
backdrop-filter: blur(12px);
}
.cemetery-demo-nav {
width: min(100% - 32px, 1180px);
min-height: 78px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
gap: clamp(34px, 4.5vw, 68px);
}
.cemetery-demo-logo {
display: inline-grid;
grid-template-columns: 52px auto;
align-items: center;
gap: 12px;
color: var(--cemetery-text);
text-decoration: none;
min-width: min(230px, 100%);
}
.cemetery-demo-logo-mark {
width: 52px;
height: 52px;
border: 3px solid var(--cemetery-accent);
border-radius: 12px;
position: relative;
display: inline-block;
background: color-mix(in srgb, var(--cemetery-accent), #fff 88%);
}
.cemetery-demo-logo-mark::before,
.cemetery-demo-logo-mark::after {
content: "";
position: absolute;
background: var(--cemetery-text);
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
}
.cemetery-demo-logo-mark::before {
width: 4px;
height: 30px;
}
.cemetery-demo-logo-mark::after {
width: 22px;
height: 4px;
}
.cemetery-demo-logo-mark--leaf-chapel,
.cemetery-demo-logo-mark--memorial-path,
.cemetery-demo-logo-mark--grove-circle {
border-radius: 50%;
}
.cemetery-demo-logo-mark--leaf-chapel::before,
.cemetery-demo-logo-mark--arch-star::before {
width: 30px;
height: 34px;
border-radius: 50% 50% 4px 4px;
background: transparent;
border: 4px solid var(--cemetery-text);
}
.cemetery-demo-logo-mark--leaf-chapel::after,
.cemetery-demo-logo-mark--arch-star::after {
width: 30px;
height: 4px;
top: 72%;
}
.cemetery-demo-logo-mark--memorial-path::before {
width: 34px;
height: 4px;
top: 38%;
box-shadow: 0 12px 0 var(--cemetery-text), 0 24px 0 var(--cemetery-text);
}
.cemetery-demo-logo-mark--memorial-path::after {
width: 4px;
height: 34px;
left: 58%;
transform: translate(-50%, -50%) rotate(26deg);
}
.cemetery-demo-logo-mark--columns::before {
width: 30px;
height: 4px;
top: 34%;
box-shadow: 0 12px 0 var(--cemetery-text), 0 24px 0 var(--cemetery-text);
}
.cemetery-demo-logo-mark--columns::after {
width: 4px;
height: 30px;
box-shadow: -11px 0 0 var(--cemetery-text), 11px 0 0 var(--cemetery-text);
}
.cemetery-demo-logo-mark--sun-arch::before,
.cemetery-demo-logo-mark--church-tree::before,
.cemetery-demo-logo-mark--civic-building::before,
.cemetery-demo-logo-mark--grove-circle::before {
width: 30px;
height: 30px;
border-radius: 50% 50% 3px 3px;
background: transparent;
border: 4px solid var(--cemetery-text);
}
.cemetery-demo-logo-mark--sun-arch::after,
.cemetery-demo-logo-mark--church-tree::after,
.cemetery-demo-logo-mark--civic-building::after,
.cemetery-demo-logo-mark--grove-circle::after {
width: 30px;
height: 4px;
top: 70%;
}
.cemetery-demo-logo-text {
display: grid;
gap: 3px;
line-height: 1.05;
}
.cemetery-demo-logo-text strong {
font-size: clamp(1.08rem, 1.6vw, 1.42rem);
color: var(--cemetery-text);
}
.cemetery-demo-logo-text small {
font-size: .72rem;
font-weight: 850;
letter-spacing: .08em;
text-transform: uppercase;
color: var(--cemetery-muted);
}
.cemetery-demo-links {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: flex-end;
gap: 8px 20px;
margin-left: clamp(18px, 3vw, 46px);
}
.cemetery-demo-links a {
color: var(--cemetery-text);
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 44px;
min-height: 44px;
font-weight: 850;
font-size: 1.08rem;
line-height: 1.05;
text-decoration: none;
padding: 10px 0;
border-bottom: 3px solid transparent;
}
.cemetery-demo-links a[aria-current="page"],
.cemetery-demo-links a:hover,
.cemetery-demo-links a:focus-visible {
border-color: var(--cemetery-accent);
}
.cemetery-demo-hero {
position: relative;
display: grid;
grid-template-columns: minmax(0, 1fr);
min-height: clamp(300px, 40vh, 420px);
overflow: hidden;
background: #172334;
}
.cemetery-demo-hero__media {
position: absolute;
inset: 0;
}
.cemetery-demo-hero__media::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(90deg, rgba(8, 13, 22, .88), rgba(8, 13, 22, .64) 52%, rgba(8, 13, 22, .36));
}
.cemetery-demo-hero__media img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
}
.cemetery-demo-hero__content {
position: relative;
z-index: 1;
width: min(100% - 32px, 1180px);
margin: 0 auto;
align-self: center;
padding: clamp(34px, 5vw, 58px) 0;
color: var(--cemetery-on-dark);
}
.cemetery-demo-kicker {
font-size: .82rem;
font-weight: 900;
letter-spacing: .08em;
text-transform: uppercase;
color: #f1d18a;
margin: 0 0 14px;
text-shadow: 0 1px 12px rgba(8, 13, 22, .42);
}
.cemetery-demo-hero h1 {
max-width: 810px;
font-size: clamp(1.6rem, 3.4vw, 3.05rem);
line-height: 1.02;
margin: 0;
color: #fff;
}
.cemetery-demo-hero p:not(.cemetery-demo-kicker) {
max-width: 660px;
font-size: clamp(.98rem, 1.45vw, 1.16rem);
line-height: 1.62;
margin: 16px 0 0;
color: rgba(255, 255, 255, .92);
}
.cemetery-demo-hero__actions {
display: flex;
flex-wrap: wrap;
gap: 12px;
margin-top: 22px;
}
.cemetery-demo-primary,
.cemetery-demo-secondary,
.cemetery-demo-form button,
.cemetery-demo-search-panel button {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 48px;
padding: 0 22px;
border-radius: 999px;
font-weight: 900;
text-decoration: none;
border: 2px solid transparent;
}
.cemetery-demo-primary,
.cemetery-demo-form button,
.cemetery-demo-search-panel button {
background: #d8b86e;
color: #111a27;
}
.cemetery-demo-secondary {
border-color: rgba(255, 255, 255, .76);
color: #fff;
}
.cemetery-demo-content {
width: min(100% - 32px, 1180px);
margin: 0 auto;
padding: clamp(34px, 5vw, 62px) 0;
}
.cemetery-demo-section-heading {
display: grid;
gap: 10px;
max-width: 760px;
margin-bottom: 34px;
}
.cemetery-demo-section-heading h2,
.cemetery-demo-split h2,
.cemetery-demo-map-panel h2,
.cemetery-demo-readable h2,
.cemetery-demo-news-list h2,
.cemetery-demo-contact-grid h2 {
font-size: clamp(1.75rem, 3.05vw, 2.9rem);
line-height: 1.08;
color: var(--cemetery-text);
margin: 0;
}
.cemetery-demo-section-heading p:not(.cemetery-demo-kicker),
.cemetery-demo-split p,
.cemetery-demo-map-panel p,
.cemetery-demo-readable p,
.cemetery-demo-news-list p,
.cemetery-demo-contact-grid p,
.cemetery-demo-feature-grid p {
color: var(--cemetery-muted);
line-height: 1.7;
}
.cemetery-demo-feature-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 18px;
}
.cemetery-demo-feature-grid--three {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
.cemetery-demo-feature-grid article {
display: flex;
flex-direction: column;
background: var(--cemetery-surface);
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 72%);
padding: 0 0 22px;
min-height: 0;
overflow: hidden;
}
.cemetery-demo-feature-grid article > span,
.cemetery-demo-feature-grid article > h3,
.cemetery-demo-feature-grid article > p {
display: block;
margin-left: 22px;
margin-right: 22px;
}
.cemetery-demo-feature-grid article:not(:has(.cemetery-demo-card-media)) {
padding: 24px;
}
.cemetery-demo-feature-grid article:not(:has(.cemetery-demo-card-media)) > span,
.cemetery-demo-feature-grid article:not(:has(.cemetery-demo-card-media)) > h3,
.cemetery-demo-feature-grid article:not(:has(.cemetery-demo-card-media)) > p,
.cemetery-demo-text-grid article > span,
.cemetery-demo-text-grid article > h3,
.cemetery-demo-text-grid article > p {
margin-left: 0;
margin-right: 0;
}
.cemetery-demo-card-media,
.cemetery-demo-news-media {
margin: 0 0 18px;
overflow: hidden;
background: color-mix(in srgb, var(--cemetery-accent), #fff 86%);
}
.cemetery-demo-card-media img,
.cemetery-demo-news-media img {
display: block;
width: 100%;
aspect-ratio: 16 / 10;
object-fit: cover;
object-position: center;
}
.cemetery-demo-feature-grid span {
margin-bottom: 18px;
font-weight: 900;
color: var(--cemetery-accent);
}
.cemetery-demo-feature-grid h3 {
font-size: 1.3rem;
line-height: 1.15;
margin: 0 0 10px;
color: var(--cemetery-text);
}
.cemetery-demo-feature-grid p {
margin-bottom: 0;
}
.cemetery-demo-split {
display: grid;
grid-template-columns: .82fr 1.18fr;
gap: clamp(28px, 5vw, 70px);
align-items: center;
margin-top: clamp(48px, 7vw, 86px);
}
.cemetery-demo-split figure {
margin: 0;
}
.cemetery-demo-split img {
display: block;
width: 100%;
aspect-ratio: 16 / 9;
object-fit: cover;
border-radius: 4px;
}
.cemetery-demo-home-layout {
display: grid;
gap: clamp(34px, 5vw, 76px);
}
.cemetery-demo-home-services,
.cemetery-demo-home-updates {
display: grid;
gap: 24px;
padding-top: clamp(12px, 3vw, 34px);
}
.cemetery-demo-site-facts {
display: grid;
grid-template-columns: .75fr .55fr 1fr;
gap: 1px;
overflow: hidden;
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 66%);
background: color-mix(in srgb, var(--cemetery-accent), #fff 66%);
}
.cemetery-demo-site-facts span {
display: grid;
gap: 6px;
padding: 18px 20px;
background: var(--cemetery-surface);
color: var(--cemetery-muted);
line-height: 1.45;
}
.cemetery-demo-site-facts strong {
font-size: .85rem;
letter-spacing: .06em;
text-transform: uppercase;
color: var(--cemetery-accent);
}
.cemetery-demo-centered-heading {
text-align: center;
margin-left: auto;
margin-right: auto;
}
.cemetery-demo-home-layout h2,
.cemetery-demo-home-layout h3 {
color: var(--cemetery-text);
margin: 0;
}
.cemetery-demo-home-layout p {
color: var(--cemetery-muted);
line-height: 1.7;
}
.cemetery-demo-processional {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
border-top: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 60%);
border-bottom: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 60%);
}
.cemetery-demo-processional article {
display: grid;
grid-template-columns: 56px minmax(0, 1fr);
gap: 18px;
padding: clamp(24px, 4vw, 42px);
border-right: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 70%);
}
.cemetery-demo-processional article:last-child {
border-right: 0;
}
.cemetery-demo-processional span,
.cemetery-demo-wide-rows span,
.cemetery-demo-modern-asym span,
.cemetery-demo-heritage-mosaic span,
.cemetery-demo-minimal-lines span,
.cemetery-demo-step-board span {
font-weight: 900;
color: var(--cemetery-accent);
}
.cemetery-demo-chapel-feature {
display: grid;
grid-template-columns: .86fr 1.14fr;
gap: clamp(28px, 5vw, 72px);
align-items: center;
padding: clamp(24px, 4vw, 46px);
background: linear-gradient(135deg, var(--cemetery-surface), color-mix(in srgb, var(--cemetery-accent), #fff 91%));
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 64%);
}
.cemetery-demo-chapel-feature .cemetery-demo-card-media img {
aspect-ratio: 4 / 5;
}
.cemetery-demo-garden-panel {
display: grid;
grid-template-columns: .9fr 1.1fr;
gap: clamp(28px, 5vw, 72px);
align-items: center;
}
.cemetery-demo-garden-panel > .cemetery-demo-card-media {
border-radius: 8px;
box-shadow: 0 24px 60px rgba(20, 42, 28, .12);
}
.cemetery-demo-garden-panel > .cemetery-demo-card-media img {
aspect-ratio: 4 / 5;
}
.cemetery-demo-garden-paths {
display: grid;
gap: 14px;
margin-top: 24px;
}
.cemetery-demo-garden-paths article {
padding: 18px 20px;
background: color-mix(in srgb, var(--cemetery-accent), #fff 91%);
border-left: 5px solid var(--cemetery-accent);
}
.cemetery-demo-hours-ribbon {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 1px;
overflow: hidden;
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 68%);
border-radius: 8px;
background: color-mix(in srgb, var(--cemetery-accent), #fff 68%);
}
.cemetery-demo-hours-ribbon span {
padding: 18px 20px;
background: var(--cemetery-surface);
font-weight: 900;
color: var(--cemetery-text);
}
.cemetery-demo-institutional-layout {
display: grid;
grid-template-columns: minmax(260px, .42fr) minmax(0, 1fr);
gap: clamp(30px, 5vw, 72px);
align-items: start;
}
.cemetery-demo-institutional-layout aside {
padding: 22px;
background: var(--cemetery-surface);
border-top: 6px solid var(--cemetery-accent);
box-shadow: 0 16px 42px rgba(18, 32, 43, .08);
}
.cemetery-demo-ledger-table {
display: grid;
border-top: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 58%);
}
.cemetery-demo-ledger-table article {
display: grid;
grid-template-columns: 120px minmax(0, 1fr) 92px;
gap: 18px;
align-items: start;
padding: 24px 0;
border-bottom: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 68%);
}
.cemetery-demo-ledger-table h3,
.cemetery-demo-ledger-table p {
grid-column: 2;
}
.cemetery-demo-ledger-table span {
font-weight: 900;
color: var(--cemetery-accent);
}
.cemetery-demo-ledger-table strong {
justify-self: end;
padding: 6px 10px;
background: color-mix(in srgb, var(--cemetery-accent), #fff 86%);
color: var(--cemetery-text);
}
.cemetery-demo-light-orbit {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: clamp(18px, 3vw, 30px);
align-items: stretch;
}
.cemetery-demo-light-orbit article {
display: grid;
align-content: start;
gap: 14px;
padding: 18px;
background: rgba(255, 255, 255, .88);
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 76%);
border-radius: 8px;
}
.cemetery-demo-light-orbit article:nth-child(2) {
transform: translateY(34px);
}
.cemetery-demo-light-orbit .cemetery-demo-card-media {
border-radius: 999px 999px 8px 8px;
}
.cemetery-demo-light-orbit .cemetery-demo-card-media img {
aspect-ratio: 1 / 1.05;
}
.cemetery-demo-search-callout {
max-width: 820px;
margin: 20px auto 0;
padding: clamp(24px, 4vw, 40px);
text-align: center;
background: color-mix(in srgb, var(--cemetery-accent), #fff 92%);
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 70%);
}
.cemetery-demo-heritage-mosaic {
display: grid;
grid-template-columns: 1.25fr .78fr .78fr;
grid-auto-rows: minmax(172px, auto);
gap: 18px;
}
.cemetery-demo-heritage-mosaic article {
padding: 24px;
background: color-mix(in srgb, var(--cemetery-accent), #fff 90%);
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 58%);
}
.cemetery-demo-heritage-feature {
grid-row: span 2;
background: var(--cemetery-surface) !important;
}
.cemetery-demo-heritage-feature .cemetery-demo-card-media img {
aspect-ratio: 16 / 12;
}
.cemetery-demo-wide-rows {
display: grid;
gap: 24px;
}
.cemetery-demo-wide-rows article {
display: grid;
grid-template-columns: minmax(230px, .42fr) minmax(0, 1fr);
gap: clamp(22px, 4vw, 48px);
align-items: center;
padding: 18px;
background: var(--cemetery-surface);
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 72%);
border-radius: 8px;
}
.cemetery-demo-wide-rows article:nth-child(even) .cemetery-demo-card-media {
order: 2;
}
.cemetery-demo-wide-rows .cemetery-demo-card-media img {
aspect-ratio: 16 / 7;
}
.cemetery-demo-community-story {
display: grid;
grid-template-columns: minmax(0, .9fr) minmax(280px, 1.1fr);
gap: clamp(24px, 5vw, 70px);
align-items: center;
}
.cemetery-demo-community-story .cemetery-demo-card-media {
border-radius: 8px;
}
.cemetery-demo-community-story .cemetery-demo-card-media img {
aspect-ratio: 16 / 10;
}
.cemetery-demo-step-board {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 18px;
}
.cemetery-demo-step-board article {
padding: 24px;
background: var(--cemetery-surface);
border-bottom: 5px solid var(--cemetery-accent);
box-shadow: 0 14px 34px rgba(25, 31, 24, .08);
}
.cemetery-demo-civic-dashboard {
display: grid;
grid-template-columns: minmax(300px, .8fr) minmax(0, 1.2fr);
gap: 28px;
align-items: stretch;
}
.cemetery-demo-civic-search,
.cemetery-demo-civic-panels {
background: var(--cemetery-surface);
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 62%);
}
.cemetery-demo-civic-search {
display: grid;
gap: 16px;
padding: clamp(24px, 4vw, 42px);
align-content: center;
border-top: 6px solid var(--cemetery-accent);
}
.cemetery-demo-civic-search label {
display: grid;
gap: 8px;
font-weight: 900;
color: var(--cemetery-text);
}
.cemetery-demo-civic-search input {
min-height: 50px;
border: 1px solid #c9d1d8;
padding: 10px 12px;
font: inherit;
color: var(--cemetery-text);
background: #fff;
}
.cemetery-demo-civic-search button {
min-height: 50px;
border: 0;
background: var(--cemetery-accent);
color: #fff;
font-weight: 900;
}
.cemetery-demo-civic-panels {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 1px;
background: color-mix(in srgb, var(--cemetery-accent), #fff 72%);
}
.cemetery-demo-civic-panels article,
.cemetery-demo-civic-panels figure {
margin: 0;
padding: 22px;
background: var(--cemetery-surface);
}
.cemetery-demo-civic-panels figure {
padding: 0;
}
.cemetery-demo-civic-panels figure img {
height: 100%;
min-height: 260px;
}
.cemetery-demo-modern-asym {
display: grid;
grid-template-columns: minmax(0, 1.15fr) minmax(260px, .55fr);
grid-template-areas:
"media side"
"copy side";
gap: clamp(20px, 4vw, 42px);
align-items: start;
}
.cemetery-demo-modern-asym > .cemetery-demo-card-media {
grid-area: media;
box-shadow: 0 26px 70px rgba(16, 31, 36, .14);
}
.cemetery-demo-modern-asym > .cemetery-demo-card-media img {
aspect-ratio: 16 / 8;
}
.cemetery-demo-modern-copy {
grid-area: copy;
max-width: 780px;
}
.cemetery-demo-modern-asym aside {
grid-area: side;
display: grid;
gap: 16px;
}
.cemetery-demo-modern-asym aside article {
padding: 22px;
background: transparent;
border-top: 2px solid var(--cemetery-accent);
}
.cemetery-demo-minimal-lines {
display: grid;
grid-template-columns: minmax(0, .78fr) minmax(280px, 1.02fr);
gap: 0 clamp(28px, 5vw, 74px);
align-items: start;
}
.cemetery-demo-minimal-lines > div,
.cemetery-demo-minimal-lines > figure {
grid-row: span 3;
}
.cemetery-demo-minimal-lines > article {
padding: 22px 0;
border-top: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 62%);
}
.cemetery-demo-minimal-lines > article:last-child {
border-bottom: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 62%);
}
.cemetery-demo-minimal-lines .cemetery-demo-card-media {
margin-top: 22px;
}
.cemetery-demo-minimal-lines .cemetery-demo-card-media img {
aspect-ratio: 4 / 5;
}
.cemetery-demo-interfaith-dashboard {
display: grid;
grid-template-columns: minmax(0, .95fr) minmax(300px, .9fr);
grid-template-areas:
"intro media"
"care media"
"actions actions";
gap: clamp(22px, 4vw, 42px);
align-items: stretch;
}
.cemetery-demo-interfaith-intro {
grid-area: intro;
align-self: center;
padding: clamp(18px, 3vw, 34px) 0;
}
.cemetery-demo-interfaith-intro h2 {
max-width: 720px;
font-size: clamp(2.2rem, 4.8vw, 4.1rem);
line-height: .98;
}
.cemetery-demo-interfaith-intro p:not(.cemetery-demo-kicker) {
max-width: 680px;
font-size: clamp(1rem, 1.5vw, 1.18rem);
}
.cemetery-demo-interfaith-media {
grid-area: media;
align-self: stretch;
box-shadow: 0 24px 70px rgba(23, 33, 32, .13);
}
.cemetery-demo-interfaith-media img {
height: 100%;
min-height: 460px;
aspect-ratio: 4 / 5;
object-fit: cover;
}
.cemetery-demo-interfaith-care {
grid-area: care;
display: grid;
gap: 10px;
padding: clamp(20px, 3vw, 30px);
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 68%);
border-left: 6px solid var(--cemetery-accent);
background: color-mix(in srgb, var(--cemetery-surface), var(--cemetery-background) 24%);
}
.cemetery-demo-interfaith-care span,
.cemetery-demo-interfaith-actions span {
font-weight: 900;
color: var(--cemetery-accent);
}
.cemetery-demo-interfaith-care strong {
font-size: clamp(1.24rem, 2vw, 1.7rem);
line-height: 1.16;
color: var(--cemetery-text);
}
.cemetery-demo-interfaith-actions {
grid-area: actions;
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 1px;
background: color-mix(in srgb, var(--cemetery-accent), #fff 68%);
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 68%);
}
.cemetery-demo-interfaith-actions article {
display: grid;
gap: 10px;
min-height: 220px;
padding: clamp(22px, 3vw, 34px);
background: var(--cemetery-surface);
}
.cemetery-demo-interfaith-actions h3 {
margin: 0;
font-size: clamp(1.28rem, 1.8vw, 1.72rem);
line-height: 1.12;
}
.cemetery-demo-interfaith-actions p {
margin: 0;
}
.cemetery-demo-map-panel,
.cemetery-demo-contact-grid {
display: grid;
grid-template-columns: .9fr 1.1fr;
gap: clamp(24px, 4vw, 42px);
align-items: stretch;
}
.cemetery-demo-map-panel > *,
.cemetery-demo-contact-grid > *,
.cemetery-demo-office-panel,
.cemetery-demo-form {
min-width: 0;
}
.cemetery-demo-contact-grid {
margin-top: clamp(28px, 4vw, 44px);
}
.cemetery-demo-map-copy,
.cemetery-demo-office-panel {
display: grid;
align-content: center;
gap: 14px;
padding: clamp(24px, 4vw, 38px);
background: color-mix(in srgb, var(--cemetery-surface), var(--cemetery-background) 20%);
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 68%);
border-left: 6px solid var(--cemetery-accent);
}
.cemetery-demo-map-copy .cemetery-demo-kicker,
.cemetery-demo-office-panel .cemetery-demo-kicker {
margin-bottom: 0;
}
.cemetery-demo-map-lines,
.cemetery-demo-form,
.cemetery-demo-search-panel,
.cemetery-demo-faq-list details,
.cemetery-demo-news-list article {
background: var(--cemetery-surface);
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 70%);
}
.cemetery-demo-map-lines {
min-height: 340px;
position: relative;
overflow: hidden;
background:
linear-gradient(90deg, transparent 48%, color-mix(in srgb, var(--cemetery-accent), transparent 35%) 49%, transparent 51%),
linear-gradient(color-mix(in srgb, var(--cemetery-accent), #fff 80%) 1px, transparent 1px),
linear-gradient(90deg, color-mix(in srgb, var(--cemetery-accent), #fff 80%) 1px, transparent 1px);
background-size: auto, 52px 52px, 52px 52px;
}
.cemetery-demo-map-lines span {
position: absolute;
width: 18px;
height: 18px;
border-radius: 50%;
background: var(--cemetery-accent);
}
.cemetery-demo-map-lines span:nth-child(1) { left: 24%; top: 34%; }
.cemetery-demo-map-lines span:nth-child(2) { left: 58%; top: 52%; }
.cemetery-demo-map-lines span:nth-child(3) { left: 74%; top: 28%; }
.cemetery-demo-map-card {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(220px, .62fr);
gap: 16px;
align-items: stretch;
}
.cemetery-demo-map-card .cemetery-demo-map-lines {
min-height: 360px;
}
.cemetery-demo-map-legend {
display: grid;
align-content: stretch;
gap: 1px;
list-style: none;
margin: 0;
padding: 0;
background: color-mix(in srgb, var(--cemetery-accent), #fff 70%);
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 70%);
}
.cemetery-demo-map-legend li {
display: grid;
align-content: center;
gap: 6px;
padding: 18px;
background: var(--cemetery-surface);
}
.cemetery-demo-map-legend strong {
color: var(--cemetery-text);
}
.cemetery-demo-map-legend span {
color: var(--cemetery-muted);
line-height: 1.45;
}
.cemetery-demo-contact-list {
display: grid;
margin: 6px 0 0;
}
.cemetery-demo-contact-list div {
display: grid;
grid-template-columns: 128px minmax(0, 1fr);
gap: 16px;
padding: 14px 0;
border-top: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 70%);
}
.cemetery-demo-contact-list dt {
font-weight: 900;
color: var(--cemetery-accent);
}
.cemetery-demo-contact-list dd {
margin: 0;
color: var(--cemetery-muted);
line-height: 1.55;
overflow-wrap: anywhere;
}
.cemetery-demo-contact-note {
margin: 4px 0 0;
padding: 14px 16px;
background: color-mix(in srgb, var(--cemetery-accent), #fff 90%);
color: var(--cemetery-text);
line-height: 1.55;
}
.cemetery-demo-news-list {
display: grid;
gap: 22px;
}
.cemetery-demo-news-list article {
display: grid;
grid-template-columns: minmax(220px, .42fr) minmax(0, 1fr);
gap: 24px;
align-items: center;
padding: 18px;
}
.cemetery-demo-news-list h2 {
font-size: clamp(1.55rem, 2.4vw, 2.35rem);
}
.cemetery-demo-followup-grid {
margin-top: 28px;
}
.cemetery-demo-form,
.cemetery-demo-search-panel {
display: grid;
gap: 16px;
padding: 26px;
}
.cemetery-demo-form label,
.cemetery-demo-search-panel label {
display: grid;
gap: 7px;
font-weight: 850;
color: var(--cemetery-text);
}
.cemetery-demo-form input,
.cemetery-demo-form textarea,
.cemetery-demo-search-panel input {
width: 100%;
min-height: 48px;
border: 1px solid #cfd6dc;
border-radius: 6px;
padding: 10px 12px;
font: inherit;
background: #fff;
color: #172334;
}
.cemetery-demo-form textarea {
min-height: 130px;
resize: vertical;
}
.cemetery-demo-faq-list {
display: grid;
gap: 14px;
max-width: 820px;
}
.cemetery-demo-faq-list details {
padding: 18px 22px;
}
.cemetery-demo-faq-list summary {
font-weight: 900;
cursor: pointer;
color: var(--cemetery-text);
}
.cemetery-demo-legal-layout {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(230px, 320px);
gap: clamp(24px, 4vw, 46px);
align-items: start;
}
.cemetery-demo-legal-copy {
display: grid;
gap: 22px;
max-width: 820px;
}
.cemetery-demo-legal-copy h2 {
margin: 0;
color: var(--cemetery-text);
font-size: clamp(2rem, 3.6vw, 3.3rem);
line-height: 1.08;
}
.cemetery-demo-legal-copy > p:not(.cemetery-demo-kicker),
.cemetery-demo-legal-copy section p {
color: var(--cemetery-muted);
line-height: 1.75;
}
.cemetery-demo-legal-copy section {
padding-top: 20px;
border-top: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 70%);
}
.cemetery-demo-legal-copy h3 {
margin: 0 0 8px;
color: var(--cemetery-text);
font-size: 1.22rem;
}
.cemetery-demo-legal-aside {
display: grid;
gap: 14px;
padding: 24px;
border-left: 5px solid var(--cemetery-accent);
background: color-mix(in srgb, var(--cemetery-surface), var(--cemetery-background) 28%);
color: var(--cemetery-text);
}
.cemetery-demo-legal-aside strong {
font-size: 1.25rem;
}
.cemetery-demo-legal-aside span {
color: var(--cemetery-muted);
line-height: 1.55;
}
.cemetery-demo-search-panel {
max-width: 820px;
grid-template-columns: 1fr 1fr auto;
align-items: end;
}
.cemetery-demo-search-results {
display: grid;
gap: 14px;
max-width: 900px;
margin-top: 24px;
}
.cemetery-demo-search-results article {
padding: 22px 24px;
background: var(--cemetery-surface);
border: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 68%);
border-left: 5px solid var(--cemetery-accent);
}
.cemetery-demo-search-results span {
display: block;
font-weight: 900;
color: var(--cemetery-accent);
margin-bottom: 8px;
}
.cemetery-demo-search-results h2 {
font-size: clamp(1.35rem, 2vw, 1.9rem);
line-height: 1.15;
margin: 0 0 8px;
color: var(--cemetery-text);
}
.cemetery-demo-search-results p {
margin: 0;
color: var(--cemetery-muted);
line-height: 1.65;
}
.cemetery-demo-footer {
display: flex;
justify-content: space-between;
gap: 24px;
align-items: center;
padding: 34px max(24px, calc((100vw - 1180px) / 2));
background: #172334;
color: #fff;
}
.cemetery-demo-footer p {
margin: 6px 0 0;
color: rgba(255, 255, 255, .74);
}
.cemetery-demo-footer nav {
display: flex;
gap: 18px;
}
.cemetery-demo-footer a {
color: #fff;
display: inline-flex;
align-items: center;
min-height: 44px;
font-weight: 800;
}
.cemetery-demo-powered {
margin: 0;
font-size: .92rem;
color: rgba(255, 255, 255, .76);
}
.cemetery-demo-powered a {
color: inherit;
display: inline-flex;
align-items: center;
min-height: 44px;
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 4px;
}
.cemetery-header--formal .cemetery-demo-nav,
.cemetery-header--institutional .cemetery-demo-nav {
min-height: 90px;
}
.cemetery-header--formal .cemetery-demo-nav {
display: grid;
justify-items: center;
}
.cemetery-header--formal .cemetery-demo-links {
justify-content: center;
margin-left: 0;
}
.cemetery-header--split .cemetery-demo-nav,
.cemetery-header--neighbor .cemetery-demo-nav {
align-items: stretch;
}
.cemetery-header--split .cemetery-demo-links,
.cemetery-header--neighbor .cemetery-demo-links {
background: color-mix(in srgb, var(--cemetery-accent), #fff 88%);
align-self: center;
padding: 8px 18px;
border-radius: 999px;
}
.cemetery-header--airy .cemetery-demo-header,
.cemetery-header--calm .cemetery-demo-header {
background: rgba(255, 255, 255, .88);
}
.cemetery-header--heritage .cemetery-demo-nav {
border-left: 5px solid var(--cemetery-accent);
padding-left: 18px;
}
.cemetery-header--open .cemetery-demo-links a,
.cemetery-header--minimal .cemetery-demo-links a,
.cemetery-header--calm .cemetery-demo-links a {
font-weight: 760;
}
.cemetery-header--civic .cemetery-demo-header {
border-bottom: 4px solid color-mix(in srgb, var(--cemetery-accent), #fff 25%);
}
.cemetery-hero--garden_split .cemetery-demo-hero,
.cemetery-hero--editorial_panel .cemetery-demo-hero,
.cemetery-hero--quiet .cemetery-demo-hero {
grid-template-columns: 1fr 1fr;
background: var(--cemetery-background);
}
.cemetery-hero--garden_split .cemetery-demo-hero__media,
.cemetery-hero--editorial_panel .cemetery-demo-hero__media,
.cemetery-hero--quiet .cemetery-demo-hero__media {
position: relative;
order: 2;
height: auto;
min-height: clamp(300px, 38vh, 380px);
align-self: stretch;
overflow: hidden;
}
.cemetery-hero--garden_split .cemetery-demo-hero__media::after,
.cemetery-hero--editorial_panel .cemetery-demo-hero__media::after,
.cemetery-hero--quiet .cemetery-demo-hero__media::after {
background: linear-gradient(0deg, rgba(18, 28, 40, .12), rgba(18, 28, 40, .12));
}
.cemetery-hero--garden_split .cemetery-demo-hero__content,
.cemetery-hero--editorial_panel .cemetery-demo-hero__content,
.cemetery-hero--quiet .cemetery-demo-hero__content {
width: auto;
max-width: none;
padding-left: max(32px, calc((100vw - 1180px) / 2));
padding-right: 42px;
color: var(--cemetery-text);
}
.cemetery-hero--garden_split .cemetery-demo-hero h1,
.cemetery-hero--editorial_panel .cemetery-demo-hero h1,
.cemetery-hero--quiet .cemetery-demo-hero h1 {
color: var(--cemetery-text);
font-size: clamp(1.6rem, 3.05vw, 2.9rem);
}
.cemetery-hero--garden_split .cemetery-demo-hero p:not(.cemetery-demo-kicker),
.cemetery-hero--editorial_panel .cemetery-demo-hero p:not(.cemetery-demo-kicker),
.cemetery-hero--quiet .cemetery-demo-hero p:not(.cemetery-demo-kicker) {
color: var(--cemetery-muted);
}
.cemetery-hero--garden_split .cemetery-demo-hero .cemetery-demo-kicker,
.cemetery-hero--editorial_panel .cemetery-demo-hero .cemetery-demo-kicker,
.cemetery-hero--quiet .cemetery-demo-hero .cemetery-demo-kicker,
.cemetery-theme--interfaith_minimal .cemetery-demo-hero .cemetery-demo-kicker {
color: color-mix(in srgb, var(--cemetery-text), var(--cemetery-accent) 24%);
text-shadow: none;
}
.cemetery-hero--garden_split .cemetery-demo-secondary,
.cemetery-hero--editorial_panel .cemetery-demo-secondary,
.cemetery-hero--quiet .cemetery-demo-secondary {
border-color: var(--cemetery-text);
color: var(--cemetery-text);
}
.cemetery-hero--editorial_panel .cemetery-demo-hero__media {
order: 1;
}
.cemetery-hero--editorial_panel .cemetery-demo-hero__content {
order: 2;
padding-left: 42px;
padding-right: max(32px, calc((100vw - 1180px) / 2));
}
.cemetery-theme--catholic_diocesan_classic .cemetery-demo-hero {
min-height: 0;
align-items: stretch;
}
.cemetery-theme--catholic_diocesan_classic .cemetery-demo-hero__media {
height: auto;
min-height: clamp(340px, 40vh, 460px);
align-self: stretch;
}
.cemetery-theme--catholic_diocesan_classic .cemetery-demo-hero__content {
align-self: stretch;
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: center;
padding-top: clamp(38px, 4.4vw, 62px);
padding-bottom: clamp(38px, 4.4vw, 62px);
}
.cemetery-theme--catholic_diocesan_classic .cemetery-demo-hero h1 {
max-width: 680px;
font-size: clamp(1.72rem, 2.68vw, 2.75rem);
line-height: 1.04;
}
.cemetery-theme--catholic_diocesan_classic .cemetery-demo-hero p:not(.cemetery-demo-kicker) {
max-width: 620px;
}
.cemetery-hero--floating_chapel .cemetery-demo-hero__content {
text-align: center;
}
.cemetery-hero--floating_chapel .cemetery-demo-hero h1,
.cemetery-hero--floating_chapel .cemetery-demo-hero p {
margin-left: auto;
margin-right: auto;
}
.cemetery-hero--floating_chapel .cemetery-demo-hero__actions,
.cemetery-hero--meadow .cemetery-demo-hero__actions {
justify-content: center;
}
.cemetery-hero--courtyard .cemetery-demo-hero {
min-height: clamp(320px, 42vh, 450px);
}
.cemetery-hero--courtyard .cemetery-demo-hero__media::after {
background: linear-gradient(180deg, rgba(8, 13, 22, .42), rgba(8, 13, 22, .84));
}
.cemetery-hero--courtyard .cemetery-demo-hero__content,
.cemetery-hero--panoramic .cemetery-demo-hero__content {
align-self: end;
padding-bottom: clamp(40px, 6vw, 64px);
}
.cemetery-hero--meadow .cemetery-demo-hero__media::after {
background: linear-gradient(90deg, rgba(8, 24, 16, .82), rgba(8, 24, 16, .54), rgba(8, 24, 16, .72));
}
.cemetery-hero--meadow .cemetery-demo-hero__content {
text-align: center;
}
.cemetery-hero--meadow .cemetery-demo-hero h1,
.cemetery-hero--meadow .cemetery-demo-hero p {
margin-left: auto;
margin-right: auto;
}
.cemetery-hero--story_band .cemetery-demo-hero {
min-height: clamp(300px, 38vh, 420px);
}
.cemetery-hero--records .cemetery-demo-hero {
min-height: clamp(300px, 38vh, 420px);
}
.cemetery-hero--records .cemetery-demo-hero__media::after,
.cemetery-hero--panoramic .cemetery-demo-hero__media::after {
background: linear-gradient(90deg, rgba(8, 13, 22, .9), rgba(8, 13, 22, .66), rgba(8, 13, 22, .4));
}
.cemetery-theme--interfaith_minimal .cemetery-demo-header {
position: static;
border-bottom: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 70%);
}
.cemetery-theme--interfaith_minimal .cemetery-demo-nav {
min-height: 74px;
}
.cemetery-theme--interfaith_minimal .cemetery-demo-hero {
grid-template-columns: minmax(0, .96fr) minmax(360px, .74fr);
min-height: clamp(330px, 44vh, 460px);
background:
linear-gradient(135deg, color-mix(in srgb, var(--cemetery-background), #fff 34%), var(--cemetery-background));
border-bottom: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 72%);
}
.cemetery-theme--interfaith_minimal .cemetery-demo-hero__media {
position: relative;
order: 2;
height: clamp(310px, 40vh, 390px);
margin: clamp(20px, 3vw, 34px) max(24px, calc((100vw - 1180px) / 2)) clamp(20px, 3vw, 34px) 0;
overflow: hidden;
box-shadow: 0 22px 70px rgba(23, 33, 32, .14);
}
.cemetery-theme--interfaith_minimal .cemetery-demo-hero__media::after {
background: linear-gradient(0deg, rgba(23, 33, 32, .18), rgba(23, 33, 32, .04));
}
.cemetery-theme--interfaith_minimal .cemetery-demo-hero__content {
width: auto;
max-width: 760px;
padding: clamp(38px, 5vw, 58px) clamp(30px, 4vw, 54px) clamp(38px, 5vw, 58px) max(32px, calc((100vw - 1180px) / 2));
color: var(--cemetery-text);
}
.cemetery-theme--interfaith_minimal .cemetery-demo-hero h1 {
max-width: 720px;
color: var(--cemetery-text);
font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
font-size: clamp(1.88rem, 3.55vw, 3.35rem);
line-height: .98;
}
.cemetery-theme--interfaith_minimal .cemetery-demo-hero p:not(.cemetery-demo-kicker) {
max-width: 620px;
color: var(--cemetery-muted);
}
.cemetery-theme--interfaith_minimal .cemetery-demo-secondary {
border-color: var(--cemetery-text);
color: var(--cemetery-text);
}
.cemetery-sections--meadow .cemetery-demo-feature-grid,
.cemetery-sections--wide_rows .cemetery-demo-feature-grid {
grid-template-columns: 1fr 1fr;
}
.cemetery-sections--ledger .cemetery-demo-feature-grid article {
display: grid;
grid-template-columns: 54px 1fr;
gap: 8px 18px;
align-items: start;
}
.cemetery-sections--ledger .cemetery-demo-feature-grid article p {
grid-column: 2;
}
.cemetery-sections--tiles .cemetery-demo-feature-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.cemetery-sections--tiles .cemetery-demo-feature-grid article:nth-child(1) {
grid-row: span 2;
}
.cemetery-sections--community_steps .cemetery-demo-feature-grid article {
border-left: 5px solid var(--cemetery-accent);
}
.cemetery-sections--civic_grid .cemetery-demo-feature-grid article {
border-radius: 0;
border-top: 4px solid var(--cemetery-accent);
}
.cemetery-sections--asymmetric .cemetery-demo-feature-grid {
grid-template-columns: 1.2fr .8fr;
}
.cemetery-sections--asymmetric .cemetery-demo-feature-grid article:first-child {
grid-row: span 2;
}
.cemetery-sections--gallery_text .cemetery-demo-feature-grid {
grid-template-columns: 1fr;
max-width: 780px;
}
.cemetery-demo-content--services .cemetery-demo-services-grid {
grid-template-columns: repeat(4, minmax(0, 1fr));
}
.cemetery-demo-content--about .cemetery-demo-about-grid,
.cemetery-demo-home-service-grid,
.cemetery-demo-text-grid {
align-items: stretch;
}
.cemetery-shell--classic .cemetery-demo-services-grid,
.cemetery-shell--pastoral .cemetery-demo-services-grid,
.cemetery-shell--minimal .cemetery-demo-services-grid {
grid-template-columns: 1fr;
}
.cemetery-shell--classic .cemetery-demo-services-grid article,
.cemetery-shell--pastoral .cemetery-demo-services-grid article,
.cemetery-shell--minimal .cemetery-demo-services-grid article {
display: grid;
grid-template-columns: minmax(190px, .34fr) minmax(0, 1fr);
gap: clamp(18px, 3vw, 32px);
align-items: center;
padding: 18px;
}
.cemetery-shell--classic .cemetery-demo-services-grid .cemetery-demo-card-media,
.cemetery-shell--pastoral .cemetery-demo-services-grid .cemetery-demo-card-media,
.cemetery-shell--minimal .cemetery-demo-services-grid .cemetery-demo-card-media {
grid-row: 1 / span 3;
margin: 0;
height: 100%;
}
.cemetery-shell--classic .cemetery-demo-services-grid .cemetery-demo-card-media img,
.cemetery-shell--pastoral .cemetery-demo-services-grid .cemetery-demo-card-media img,
.cemetery-shell--minimal .cemetery-demo-services-grid .cemetery-demo-card-media img {
height: 100%;
aspect-ratio: 16 / 9;
}
.cemetery-shell--classic .cemetery-demo-services-grid article > span,
.cemetery-shell--classic .cemetery-demo-services-grid article > h3,
.cemetery-shell--classic .cemetery-demo-services-grid article > p,
.cemetery-shell--pastoral .cemetery-demo-services-grid article > span,
.cemetery-shell--pastoral .cemetery-demo-services-grid article > h3,
.cemetery-shell--pastoral .cemetery-demo-services-grid article > p,
.cemetery-shell--minimal .cemetery-demo-services-grid article > span,
.cemetery-shell--minimal .cemetery-demo-services-grid article > h3,
.cemetery-shell--minimal .cemetery-demo-services-grid article > p {
grid-column: 2;
margin-left: 0;
margin-right: 0;
}
.cemetery-shell--classic .cemetery-demo-services-grid article {
border-left: 5px solid var(--cemetery-accent);
box-shadow: none;
}
.cemetery-shell--pastoral .cemetery-demo-services-grid article {
border-radius: 18px;
background: color-mix(in srgb, var(--cemetery-surface), var(--cemetery-background) 22%);
}
.cemetery-shell--minimal .cemetery-demo-services-grid {
max-width: 920px;
}
.cemetery-shell--minimal .cemetery-demo-services-grid article {
background: transparent;
border-left: 0;
border-right: 0;
border-top: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 62%);
}
.cemetery-shell--municipal .cemetery-demo-services-grid,
.cemetery-theme--neutral_modern_memorial .cemetery-demo-services-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.cemetery-theme--neutral_modern_memorial .cemetery-demo-section-heading {
max-width: 980px;
}
.cemetery-theme--neutral_modern_memorial .cemetery-demo-section-heading h2 {
max-width: 980px;
font-size: clamp(1.62rem, 2.8vw, 2.64rem);
line-height: 1.08;
}
.cemetery-theme--neutral_modern_memorial .cemetery-demo-section-heading p:not(.cemetery-demo-kicker) {
max-width: 850px;
}
.cemetery-theme--neutral_modern_memorial.cemetery-sections--asymmetric .cemetery-demo-home-service-grid,
.cemetery-theme--neutral_modern_memorial.cemetery-sections--asymmetric .cemetery-demo-about-grid,
.cemetery-theme--neutral_modern_memorial.cemetery-sections--asymmetric .cemetery-demo-text-grid {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
.cemetery-theme--neutral_modern_memorial.cemetery-sections--asymmetric .cemetery-demo-feature-grid article:first-child {
grid-row: auto;
}
.cemetery-theme--neutral_modern_memorial .cemetery-demo-services-grid article {
border-left: 0;
border-right: 0;
background: color-mix(in srgb, var(--cemetery-surface), var(--cemetery-background) 12%);
}
.cemetery-theme--neutral_modern_memorial .cemetery-demo-services-grid .cemetery-demo-card-media img,
.cemetery-theme--neutral_modern_memorial .cemetery-demo-home-service-grid .cemetery-demo-card-media img,
.cemetery-theme--neutral_modern_memorial .cemetery-demo-about-grid .cemetery-demo-card-media img {
aspect-ratio: 16 / 8.8;
}
.cemetery-shell--garden .cemetery-demo-contact-grid,
.cemetery-shell--light .cemetery-demo-contact-grid {
grid-template-columns: 1.05fr .95fr;
}
.cemetery-shell--municipal .cemetery-demo-contact-grid,
.cemetery-shell--modern .cemetery-demo-contact-grid {
grid-template-columns: .78fr 1.22fr;
}
.cemetery-shell--minimal .cemetery-demo-contact-grid {
max-width: 960px;
grid-template-columns: 1fr;
}
.cemetery-cards--stone .cemetery-demo-feature-grid article {
box-shadow: inset 0 0 0 6px color-mix(in srgb, var(--cemetery-accent), #fff 88%);
}
.cemetery-cards--soft_panel .cemetery-demo-feature-grid article,
.cemetery-cards--pasture .cemetery-demo-feature-grid article,
.cemetery-cards--warm_outline .cemetery-demo-feature-grid article {
border-radius: 16px;
}
.cemetery-cards--ruled .cemetery-demo-feature-grid article {
border-left: 0;
border-right: 0;
}
.cemetery-cards--linen .cemetery-demo-feature-grid article {
background: linear-gradient(135deg, #fff, color-mix(in srgb, var(--cemetery-accent), #fff 94%));
}
.cemetery-cards--terracotta .cemetery-demo-feature-grid article {
background: color-mix(in srgb, var(--cemetery-accent), #fff 88%);
}
.cemetery-cards--terracotta .cemetery-demo-feature-grid h3,
.cemetery-cards--terracotta .cemetery-demo-feature-grid p {
color: #241b16;
}
.cemetery-cards--utility .cemetery-demo-feature-grid article {
background: #f9fbfb;
}
.cemetery-cards--minimal_line .cemetery-demo-feature-grid article,
.cemetery-cards--plain .cemetery-demo-feature-grid article {
background: transparent;
border-left: 0;
border-right: 0;
}
.cemetery-footer--garden.cemetery-theme .cemetery-demo-footer,
.cemetery-footer--open.cemetery-theme .cemetery-demo-footer,
.cemetery-footer--quiet.cemetery-theme .cemetery-demo-footer {
background: color-mix(in srgb, var(--cemetery-accent), #1b2a2a 72%);
}
@media (max-width: 1100px) {
.cemetery-template-row,
.cemetery-template-row:nth-child(even) {
grid-template-columns: 1fr;
}
.cemetery-template-row:nth-child(even) .cemetery-template-row__preview,
.cemetery-template-row:nth-child(even) .cemetery-template-row__content {
order: initial;
}
.cemetery-template-browser-frame {
height: 400px;
}
.cemetery-demo-feature-grid,
.cemetery-demo-feature-grid--three,
.cemetery-sections--meadow .cemetery-demo-feature-grid,
.cemetery-sections--wide_rows .cemetery-demo-feature-grid,
.cemetery-sections--tiles .cemetery-demo-feature-grid,
.cemetery-sections--asymmetric .cemetery-demo-feature-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.cemetery-demo-processional,
.cemetery-demo-light-orbit,
.cemetery-demo-step-board,
.cemetery-demo-heritage-mosaic,
.cemetery-demo-site-facts,
.cemetery-demo-hours-ribbon {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.cemetery-demo-heritage-feature {
grid-row: auto;
grid-column: 1 / -1;
}
.cemetery-theme--neutral_modern_memorial.cemetery-sections--asymmetric .cemetery-demo-home-service-grid,
.cemetery-theme--neutral_modern_memorial.cemetery-sections--asymmetric .cemetery-demo-about-grid,
.cemetery-theme--neutral_modern_memorial.cemetery-sections--asymmetric .cemetery-demo-text-grid,
.cemetery-theme--neutral_modern_memorial .cemetery-demo-services-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
@media (max-width: 820px) {
.cemetery-template-audit-strip,
.cemetery-template-row__details,
.cemetery-demo-split,
.cemetery-demo-chapel-feature,
.cemetery-demo-garden-panel,
.cemetery-demo-institutional-layout,
.cemetery-demo-ledger-table article,
.cemetery-demo-wide-rows article,
.cemetery-demo-community-story,
.cemetery-demo-civic-dashboard,
.cemetery-demo-civic-panels,
.cemetery-demo-modern-asym,
.cemetery-demo-minimal-lines,
.cemetery-demo-interfaith-dashboard,
.cemetery-demo-interfaith-actions,
.cemetery-demo-map-panel,
.cemetery-demo-map-card,
.cemetery-demo-contact-grid,
.cemetery-demo-legal-layout,
.cemetery-demo-search-panel,
.cemetery-hero--garden_split .cemetery-demo-hero,
.cemetery-hero--editorial_panel .cemetery-demo-hero,
.cemetery-hero--quiet .cemetery-demo-hero {
grid-template-columns: 1fr;
}
.cemetery-template-browser-frame {
height: 340px;
}
.cemetery-demo-nav {
min-height: 0;
padding: 16px 0;
display: grid;
}
.cemetery-demo-logo {
min-width: 0;
}
.cemetery-demo-links {
justify-content: flex-start;
gap: 4px 14px;
margin-left: 0;
}
.cemetery-demo-links a {
font-size: 1rem;
}
.cemetery-demo-hero,
.cemetery-hero--garden_split .cemetery-demo-hero,
.cemetery-hero--editorial_panel .cemetery-demo-hero,
.cemetery-hero--quiet .cemetery-demo-hero {
min-height: auto;
}
.cemetery-demo-hero__media::after {
background: linear-gradient(180deg, rgba(8, 13, 22, .74), rgba(8, 13, 22, .72));
}
.cemetery-hero--garden_split .cemetery-demo-hero__media,
.cemetery-hero--editorial_panel .cemetery-demo-hero__media,
.cemetery-hero--quiet .cemetery-demo-hero__media {
height: auto;
min-height: 180px;
}
.cemetery-hero--garden_split .cemetery-demo-hero__content,
.cemetery-hero--editorial_panel .cemetery-demo-hero__content,
.cemetery-hero--quiet .cemetery-demo-hero__content {
padding: 28px 20px;
max-width: none;
}
.cemetery-demo-hero h1,
.cemetery-hero--garden_split .cemetery-demo-hero h1,
.cemetery-hero--editorial_panel .cemetery-demo-hero h1,
.cemetery-hero--quiet .cemetery-demo-hero h1,
.cemetery-theme--interfaith_minimal .cemetery-demo-hero h1 {
font-size: clamp(1.48rem, 7.2vw, 2.18rem);
line-height: 1.05;
}
.cemetery-demo-hero p:not(.cemetery-demo-kicker),
.cemetery-theme--interfaith_minimal .cemetery-demo-hero p:not(.cemetery-demo-kicker) {
font-size: .92rem;
line-height: 1.48;
margin-top: 12px;
}
.cemetery-demo-kicker {
font-size: .72rem;
margin-bottom: 8px;
}
.cemetery-demo-hero__actions {
gap: 8px;
margin-top: 14px;
}
.cemetery-demo-primary,
.cemetery-demo-secondary {
min-height: 44px;
padding: 0 16px;
font-size: .92rem;
}
.cemetery-demo-feature-grid,
.cemetery-demo-feature-grid--three,
.cemetery-sections--meadow .cemetery-demo-feature-grid,
.cemetery-sections--wide_rows .cemetery-demo-feature-grid,
.cemetery-sections--tiles .cemetery-demo-feature-grid,
.cemetery-sections--asymmetric .cemetery-demo-feature-grid {
grid-template-columns: 1fr;
}
.cemetery-theme--neutral_modern_memorial.cemetery-sections--asymmetric .cemetery-demo-home-service-grid,
.cemetery-theme--neutral_modern_memorial.cemetery-sections--asymmetric .cemetery-demo-about-grid,
.cemetery-theme--neutral_modern_memorial.cemetery-sections--asymmetric .cemetery-demo-text-grid,
.cemetery-theme--neutral_modern_memorial .cemetery-demo-services-grid {
grid-template-columns: 1fr;
}
.cemetery-demo-processional,
.cemetery-demo-light-orbit,
.cemetery-demo-step-board,
.cemetery-demo-heritage-mosaic,
.cemetery-demo-site-facts,
.cemetery-demo-hours-ribbon {
grid-template-columns: 1fr;
}
.cemetery-demo-processional article {
border-right: 0;
border-bottom: 1px solid color-mix(in srgb, var(--cemetery-accent), #fff 70%);
}
.cemetery-demo-processional article:last-child {
border-bottom: 0;
}
.cemetery-demo-light-orbit article:nth-child(2) {
transform: none;
}
.cemetery-demo-wide-rows article:nth-child(even) .cemetery-demo-card-media {
order: initial;
}
.cemetery-demo-ledger-table h3,
.cemetery-demo-ledger-table p {
grid-column: auto;
}
.cemetery-demo-ledger-table strong {
justify-self: start;
}
.cemetery-shell--classic .cemetery-demo-services-grid article,
.cemetery-shell--pastoral .cemetery-demo-services-grid article,
.cemetery-shell--minimal .cemetery-demo-services-grid article {
grid-template-columns: 1fr;
}
.cemetery-shell--classic .cemetery-demo-services-grid .cemetery-demo-card-media,
.cemetery-shell--pastoral .cemetery-demo-services-grid .cemetery-demo-card-media,
.cemetery-shell--minimal .cemetery-demo-services-grid .cemetery-demo-card-media {
grid-row: auto;
}
.cemetery-shell--classic .cemetery-demo-services-grid article > span,
.cemetery-shell--classic .cemetery-demo-services-grid article > h3,
.cemetery-shell--classic .cemetery-demo-services-grid article > p,
.cemetery-shell--pastoral .cemetery-demo-services-grid article > span,
.cemetery-shell--pastoral .cemetery-demo-services-grid article > h3,
.cemetery-shell--pastoral .cemetery-demo-services-grid article > p,
.cemetery-shell--minimal .cemetery-demo-services-grid article > span,
.cemetery-shell--minimal .cemetery-demo-services-grid article > h3,
.cemetery-shell--minimal .cemetery-demo-services-grid article > p {
grid-column: auto;
}
.cemetery-demo-contact-list div {
grid-template-columns: 1fr;
gap: 5px;
}
.cemetery-shell--garden .cemetery-demo-contact-grid,
.cemetery-shell--light .cemetery-demo-contact-grid,
.cemetery-shell--municipal .cemetery-demo-contact-grid,
.cemetery-shell--modern .cemetery-demo-contact-grid,
.cemetery-shell--minimal .cemetery-demo-contact-grid {
grid-template-columns: minmax(0, 1fr);
max-width: none;
}
.cemetery-demo-modern-asym {
grid-template-areas: none;
}
.cemetery-demo-modern-asym > .cemetery-demo-card-media,
.cemetery-demo-modern-copy,
.cemetery-demo-modern-asym aside {
grid-area: auto;
}
.cemetery-demo-interfaith-intro,
.cemetery-demo-interfaith-media,
.cemetery-demo-interfaith-care,
.cemetery-demo-interfaith-actions {
grid-area: auto;
}
.cemetery-demo-interfaith-dashboard,
.cemetery-demo-interfaith-dashboard > *,
.cemetery-demo-interfaith-actions,
.cemetery-demo-interfaith-actions article {
min-width: 0;
width: 100%;
}
.cemetery-demo-interfaith-dashboard {
grid-template-areas: none;
}
.cemetery-demo-interfaith-actions {
grid-template-columns: 1fr;
}
.cemetery-demo-interfaith-actions article {
min-height: 0;
}
.cemetery-demo-interfaith-media img {
min-height: 190px;
aspect-ratio: 16 / 10;
}
.cemetery-theme--interfaith_minimal .cemetery-demo-hero {
grid-template-columns: 1fr;
}
.cemetery-theme--interfaith_minimal .cemetery-demo-hero__content {
padding: 28px 20px 24px;
max-width: none;
}
.cemetery-theme--interfaith_minimal .cemetery-demo-hero__media {
height: 190px;
margin: 0 20px 24px;
}
.cemetery-demo-minimal-lines > div,
.cemetery-demo-minimal-lines > figure {
grid-row: auto;
}
.cemetery-demo-footer {
display: grid;
}
.cemetery-demo-news-list article,
.custodia-product-layout,
.custodia-operations-section,
.custodia-preview-grid,
.custodia-site-preview,
.custodia-audience-list article {
grid-template-columns: 1fr;
}
.custodia-audience-list article {
gap: 10px;
}
}
@media (max-width: 560px) {
.cemetery-template-catalog-list {
width: min(100% - 22px, 1600px);
}
.cemetery-template-row {
padding: 34px 0;
}
.cemetery-template-browser-frame {
height: 280px;
border-radius: 7px;
}
.cemetery-template-preview-cta {
right: 14px;
bottom: 14px;
min-height: 44px;
padding: 0 18px;
font-size: .92rem;
}
.cemetery-demo-logo {
grid-template-columns: 46px auto;
}
.cemetery-demo-logo-mark {
width: 46px;
height: 46px;
}
.cemetery-demo-logo-text strong {
font-size: 1.08rem;
}
.cemetery-demo-links {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 5px 6px;
width: 100%;
}
.cemetery-demo-links a {
min-width: 0;
min-height: 44px;
padding: 7px 2px;
font-size: .9rem;
text-align: center;
}
.cemetery-demo-hero__content {
padding: 24px 0;
}
.cemetery-demo-hero h1 {
font-size: clamp(1.42rem, 8.2vw, 2.05rem);
}
.cemetery-demo-hero p:not(.cemetery-demo-kicker) {
font-size: .9rem;
line-height: 1.46;
}
.cemetery-demo-primary,
.cemetery-demo-secondary {
width: auto;
flex: 1 1 124px;
padding: 0 12px;
font-size: .88rem;
}
.cemetery-theme--interfaith_minimal .cemetery-demo-hero__content {
padding: 24px 16px 22px;
}
.cemetery-theme--interfaith_minimal .cemetery-demo-hero__media {
height: 160px;
margin: 0 16px 20px;
}
.cemetery-theme--catholic_diocesan_classic .cemetery-demo-hero__media {
min-height: 210px;
}
}
