/* Homepage hero only. Preserve shared navigation, content and service pages. */
#main-content #home-samples {
 --hero-ink:#304c40; --hero-warm:#886754; --hero-muted:#57675c;
 padding:32px 28px 36px;
 background:radial-gradient(ellipse at 86% 12%,#e9eee366,transparent 60%),linear-gradient(145deg,#fcfaf5,#f5f6f0);
}
#home-samples .service-hero__layout { max-width:1120px; }
#home-samples .service-hero__intro { margin-bottom:28px; }
#home-samples .service-hero__intro > div { display:flex;align-items:flex-end;justify-content:space-between;gap:48px;width:100%; }
#main-content #home-samples h1 { font-size:clamp(30px,3.1vw,40px);line-height:1.42;font-weight:700;letter-spacing:-.045em; }
#home-samples h1 span:last-child { color:var(--hero-warm); }
#main-content #home-samples .service-hero__lead { margin:0 0 5px;font-size:15px;line-height:1.85;color:var(--hero-muted); }
#main-content #home-samples .service-hero__navigation { margin:0 0 28px; }
#main-content #home-samples .service-hero__tabs { padding:5px;gap:4px;background:#eaf0e6b3;border-color:#dce4d8;border-radius:22px; }
#main-content #home-samples .service-hero__navigation button { min-height:68px;padding:10px 7px;border-radius:17px;gap:2px; }
#main-content #home-samples .service-hero__navigation button span { font-size:15px; }
#main-content #home-samples .service-hero__navigation button small { font-size:11px; }
#main-content #home-samples .service-hero__navigation button[aria-selected="true"] { background:#fffdf8;box-shadow:0 2px 7px #304a350c,inset 0 -2px 0 #5b7b60; }
#home-samples .service-preview { grid-template-columns:minmax(0,.92fr) minmax(0,1.18fr);grid-template-areas:"copy visual";gap:48px;align-items:center; }
#home-samples .service-preview[hidden] { display:none; }
#home-samples .service-hero__details { display:flex;flex-direction:column;align-items:stretch;padding:12px 0; }
#home-samples .service-hero__moment { margin:0 0 12px;font-size:12px;line-height:1.7;color:#7c6b58; }
#home-samples .service-hero__details h2 { margin:0;font-size:clamp(25px,2.35vw,30px);line-height:1.55;letter-spacing:-.04em;color:var(--hero-ink); }
#main-content #home-samples .service-hero__description { min-height:0;margin:14px 0 20px;font-size:15px;line-height:1.85;color:var(--hero-muted); }
#home-samples .home-price--hero { min-height:0;padding:0;margin:0; }
#home-samples .home-price__amount { margin:2px 0; }
#home-samples .home-price__amount strong { font-size:20px;font-weight:650;letter-spacing:-.035em; }
#home-samples .home-price__note { font-size:12px;line-height:1.75;color:#5a695d; }
#home-samples .service-hero__actions { margin-top:18px;gap:10px; }
#main-content #home-samples :is(.service-hero__primary,.service-hero__secondary) { min-height:50px;padding:12px 14px;font-size:14px;border-radius:17px;box-shadow:0 3px 10px #24433108; }
#home-samples .service-hero__foot { order:0;padding-top:2px; }
#home-samples .service-hero__foot a { font-size:12px;color:#52664f; }
#home-samples .service-hero__value { order:0;margin:6px 0 0;font-size:12px;line-height:1.8;color:#63725c; }
#home-samples .service-hero__support { margin:8px 0 0;color:#63725c;font-size:12px;line-height:1.8;word-break:keep-all; }
#home-samples .service-hero__visual { border-radius:24px;border-color:#dce2d5;box-shadow:0 12px 32px #344f3d08; }
#home-samples .service-evidence { padding:18px 20px; }
#home-samples .service-evidence__copy :is(p,blockquote) { font-size:13px;line-height:1.85; }
#home-samples .template-preview__more { border-top:1px solid #e1e5dc;background:#fafbf6; }
#home-samples .template-preview__more > summary { min-height:48px;padding:12px 16px;font-size:12px; }
#home-samples .service-hero__caption { margin:24px 0 0;padding-top:18px;border-top:1px solid #dce3d5;color:#63715e;font-size:12px;line-height:1.85; }
#home-samples .home-obituary-examples { gap:16px;padding:22px 18px 18px; }
#home-samples .home-obituary-example__replay { font-size:12px; }
@media(max-width:1060px) and (min-width:821px) {
 #home-samples .service-preview { gap:30px;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr); }
 #home-samples .service-hero__details h2 { font-size:25px; }
 #home-samples .home-obituary-examples { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:820px) {
 #main-content #home-samples { padding:20px 20px 28px; }
 #home-samples .service-hero__intro { margin-bottom:20px; }
 #home-samples .service-hero__intro > div { display:block; }
 #main-content #home-samples h1 { font-size:28px;line-height:1.42; }
 #main-content #home-samples .service-hero__lead { margin-top:10px;font-size:14px;line-height:1.8; }
 #main-content #home-samples .service-hero__navigation { margin:0 0 24px; }
 #main-content #home-samples .service-hero__tabs { gap:4px;padding:5px;border-radius:21px; }
 #main-content #home-samples .service-hero__navigation button { min-height:46px;padding:9px 5px;border-radius:16px; }
 #main-content #home-samples .service-hero__navigation button span { font-size:14px; }
 #home-samples .service-preview { grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "visual";gap:22px; }
 #home-samples .service-hero__details { padding:0; }
 #home-samples .service-hero__moment { margin-bottom:7px;font-size:11px; }
 #home-samples .service-hero__details h2 { font-size:25px;line-height:1.5; }
 #main-content #home-samples .service-hero__description { margin:10px 0 14px;font-size:14px;line-height:1.8; }
 #home-samples .home-price__amount strong { font-size:18px; }
 #home-samples .home-price__note { font-size:12px;line-height:1.75; }
 #home-samples .service-hero__actions { margin-top:14px;gap:8px; }
 #main-content #home-samples :is(.service-hero__primary,.service-hero__secondary) { padding:11px 10px;min-height:48px;font-size:14px; }
 #home-samples .service-hero__value { margin-top:4px;font-size:12px; }
 #home-samples .service-hero__visual { border-radius:22px; }
 #home-samples .service-evidence { padding:16px; }
 #home-samples .service-evidence__copy :is(p,blockquote) { font-size:12px; }
 #home-samples .home-obituary-examples { grid-template-columns:minmax(0,1fr);gap:26px;padding:18px 14px; }
 #home-samples .service-hero__caption { margin-top:20px;padding-top:16px;text-align:left;font-size:11px; }
}
@media(max-width:360px) {
 #main-content #home-samples { padding-inline:16px; }
 #main-content #home-samples h1 { font-size:26px; }
 #home-samples .service-hero__details h2 { font-size:22px; }
 #main-content #home-samples :is(.service-hero__primary,.service-hero__secondary) { font-size:13px;padding-inline:8px;gap:6px; }
}


/* Mobile home: choose a service, see its space, then read the details. */
#home-samples .service-hero__mobile-title,
#home-samples .service-hero__mobile-more { display:none; }
@media(max-width:820px) {
 .site-journey { display:none; }
 #main-content #home-samples { padding:14px 20px 28px; }
 #home-samples .service-hero__intro { margin-bottom:14px; }
 #main-content #home-samples h1 { font-size:clamp(17px,4.6vw,22px);line-height:1.6;white-space:nowrap; }
 #home-samples h1 span { display:inline; }
 #main-content #home-samples .service-hero__lead { display:none; }
 #main-content #home-samples .service-hero__navigation { margin-bottom:14px; }
 #main-content #home-samples .service-hero__tabs { grid-template-columns:repeat(3,minmax(0,1fr)); }
 #main-content #home-samples .service-hero__navigation button { min-height:44px;padding:7px 4px; }
 #home-samples .service-preview { grid-template-areas:"visual" "copy";gap:16px; }
 #home-samples .service-hero__desktop-title,
 #home-samples .service-hero__moment,
 #main-content #home-samples .service-hero__details > .service-hero__description,
 #home-samples .service-hero__details > .service-hero__value,
 #home-samples .service-hero__details > .service-hero__support,
 #home-samples .service-hero__details > .service-hero__foot,
 #home-samples .service-hero__visual .service-evidence { display:none; }
 #home-samples .service-hero__mobile-title { display:block; }
 #home-samples .service-hero__details h2 { font-size:clamp(18px,4.8vw,22px);line-height:1.6; }
 #home-samples .service-hero__actions { order:1;margin:10px 0 14px; }
 #home-samples .home-price--hero { order:2; }
 #home-samples .service-hero__mobile-more { display:block;order:3;margin-top:12px;border-top:1px solid #dce3d5;color:var(--hero-muted);font-size:13px;line-height:1.85; }
 #home-samples .service-hero__mobile-more > summary { min-height:44px;padding:10px 0;cursor:pointer;color:var(--hero-ink);font-weight:600; }
 #home-samples .service-hero__mobile-more > summary:focus-visible { outline:2px solid #805f43;outline-offset:3px; }
 #home-samples .service-hero__mobile-more p { margin:8px 0; }
 #home-samples .service-hero__mobile-more a { display:inline-flex;min-height:44px;align-items:center;text-decoration:underline;text-underline-offset:4px; }
 #home-samples .service-hero__mobile-more .service-evidence { padding:12px 0; }
}
@media(max-width:360px) {
 #main-content #home-samples { padding-inline:16px; }
}
