/* Funeral-only additions. Shared layout, washi/teal palette and gold karma
   boundaries are the actual approved about/teaching components. */
.page-funeral .about-jumps{grid-template-columns:repeat(5,minmax(0,1fr))}
.page-funeral .about-jumps a{min-height:56px;border-bottom:0}
.page-funeral .funeral-art-note{position:absolute;z-index:3;right:7%;bottom:15px;max-width:86%;margin:0;color:#f3eee3;font:10px/1.8 sans-serif;letter-spacing:.03em;text-align:right}
.page-funeral .funeral-flow{list-style:none;padding:0;margin:30px 0 0}
.page-funeral .funeral-flow li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:18px;border-top:1px solid var(--about-line);padding:26px 0}
.page-funeral .funeral-step{font:24px/1.6 Georgia,serif;color:var(--about-muted)}
.page-funeral .funeral-flow h3{font-size:20px;margin:0 0 12px}
.page-funeral .funeral-flow p{margin-bottom:0}
.page-funeral .funeral-faq details{border-top:1px solid var(--about-line)}
.page-funeral .funeral-faq details:last-child{border-bottom:1px solid var(--about-line)}
.page-funeral .funeral-faq summary{cursor:pointer;min-height:44px;padding:21px 10px;font-size:16px;line-height:1.9;overflow-wrap:anywhere}
.page-funeral .funeral-faq summary::marker{color:var(--about-muted)}
.page-funeral .funeral-faq details>div{padding:0 10px 5px}
.page-funeral .funeral-phone{display:flex;flex-direction:column;gap:9px;min-height:44px;padding:25px 0;border-top:1px solid var(--about-line);border-bottom:1px solid var(--about-line);margin-top:28px;color:#163f43}
.page-funeral .funeral-phone>span{font-size:14px;letter-spacing:.08em}
.page-funeral .funeral-phone strong{font:clamp(25px,3.4vw,38px)/1.4 Georgia,serif;letter-spacing:.03em}
.page-funeral .funeral-phone small{font-size:12px;line-height:1.8;color:var(--about-muted)}
.page-funeral :focus-visible{outline:2px solid #795631;outline-offset:5px}
.page-funeral .about-hero :focus-visible{outline-color:#eee2b5}
@media(max-width:700px){
.page-funeral .about-jumps{grid-template-columns:repeat(2,minmax(0,1fr))}
.page-funeral .about-jumps a:nth-child(-n+4){border-bottom:1px solid var(--about-line)}
.page-funeral .funeral-art-note{left:7%;right:7%;bottom:14px;text-align:left;font-size:9px}
.page-funeral .funeral-flow li{grid-template-columns:32px minmax(0,1fr);gap:12px;padding:23px 0}
.page-funeral .funeral-flow h3{font-size:18px}
.page-funeral .funeral-faq summary{font-size:15px;padding:20px 5px}
.page-funeral .funeral-faq details>div{padding-inline:5px}
}
@media(prefers-reduced-motion:reduce){.page-funeral a{transition:none}}

/* E108: calm editorial price table and a distinctly separate cremation format. */
.page-funeral .funeral-plans-content{grid-column:1/-1;min-width:0;margin-top:34px}
.page-funeral .funeral-price-table{width:100%;border-collapse:collapse;color:#163f43;text-align:left;table-layout:fixed}
.page-funeral .funeral-price-table caption{text-align:left;font-size:18px;line-height:1.8;margin-bottom:20px}
.page-funeral .funeral-price-table th,.page-funeral .funeral-price-table td{padding:22px 20px;border-bottom:1px solid var(--about-line);font-size:16px;line-height:1.8;overflow-wrap:anywhere}
.page-funeral .funeral-price-table thead th{font-size:12px;color:var(--about-muted);font-weight:400;border-top:1px solid var(--about-line)}
.page-funeral .funeral-price-table tbody th{font-weight:400;font-size:22px}
.page-funeral .funeral-price-table strong,.page-funeral .funeral-cremation-price strong{font:38px/1.3 Georgia,serif;margin-right:5px;font-weight:400}
.page-funeral .funeral-price-table a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;text-decoration:underline;text-underline-offset:5px;gap:9px}
.page-funeral .funeral-included{padding:30px 0}
.page-funeral .funeral-included h3,.page-funeral .funeral-extra h3{font-size:20px}
.page-funeral .funeral-included .about-small-note{margin-top:15px}
.page-funeral .funeral-cremation{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8%;padding:30px;border:1px solid var(--about-line);background:#e9e7dc}
.page-funeral .funeral-cremation .funeral-cremation-price{margin:0}
.page-funeral .funeral-extra{padding-top:34px}
.page-funeral .funeral-extra ul{margin:0 0 23px;padding-left:1.3em;font-size:14px;line-height:2.1}
.page-funeral .funeral-extra li{padding:5px 0}
.page-funeral .about-copy .funeral-company-intro{margin:32px 0 0}
.page-funeral .funeral-company-phone{margin-top:18px}
@media(max-width:700px){
.page-funeral .funeral-plans-content{margin-top:12px}
.page-funeral .funeral-price-table th,.page-funeral .funeral-price-table td{padding:16px 5px;font-size:13px}
.page-funeral .funeral-price-table thead th{font-size:10px}
.page-funeral .funeral-price-table tbody th{font-size:17px}
.page-funeral .funeral-price-table strong{font-size:29px;margin-right:2px}
.page-funeral .funeral-price-table a{font-size:11px;gap:4px}
.page-funeral .funeral-cremation{grid-template-columns:minmax(0,1fr);gap:22px;padding:24px 19px}
.page-funeral .funeral-included h3,.page-funeral .funeral-extra h3{font-size:18px}
}

/* E109 owner-confirmed net prices; gross amount leads, net price follows. */
.page-funeral .funeral-tax-price{display:block;font-size:14px;line-height:1.6}
.page-funeral .funeral-price-table .funeral-tax-price strong,.page-funeral .funeral-cremation-price .funeral-tax-price strong{font-size:clamp(22px,2.4vw,32px);white-space:nowrap;margin-right:2px}
.page-funeral .funeral-tax-kind{font-size:11px;white-space:nowrap}
.page-funeral .funeral-net-price{display:block;margin-top:5px;font-size:12px;line-height:1.6;color:var(--about-muted)}
@media(max-width:700px){
.page-funeral .funeral-price-table th:first-child{width:24%}
.page-funeral .funeral-price-table th:nth-child(2){width:45%}
.page-funeral .funeral-price-table th:nth-child(3){width:31%}
.page-funeral .funeral-price-table .funeral-tax-price strong{font-size:20px}
.page-funeral .funeral-tax-price{font-size:11px}
.page-funeral .funeral-tax-kind,.page-funeral .funeral-net-price{font-size:10px}
}

/* E111 photo-based floral farewell artwork, scoped to this page. */
.page-funeral .about-hall-art{inset:0;opacity:1;mask-image:linear-gradient(90deg,transparent 0%,#000 25%,#000 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 25%,#000 100%)}
.page-funeral .about-hall-art img{object-fit:cover;object-position:70% center;filter:none}
.page-funeral .about-hero-copy{position:relative;max-width:44%;text-shadow:0 2px 12px #082a2e}
@media(max-width:700px){
.page-funeral .about-hall-art{inset:22% 0 0;mask-image:linear-gradient(180deg,transparent,#000 45%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 45%);opacity:.77}
.page-funeral .about-hall-art img{object-position:75% center}
.page-funeral .about-hero-copy{max-width:100%}
.page-funeral .about-hero-location{width:fit-content;background:#153c3fd9;padding:12px;border-color:#c0aa73}
}

/* Funeral only: karma without the section rule; retain all content rules. */
.page-funeral .about-chapter{border-top:0}
.page-funeral #funeral-hall>header{grid-column:1;grid-row:1}
.page-funeral #funeral-hall>.about-copy{grid-column:2;grid-row:1 / span 2}
.page-funeral .funeral-lotus-art{grid-column:1;grid-row:2;width:min(100%,300px);margin:14px 0 0;align-self:start;mask-image:radial-gradient(ellipse at 50% 54%,#000 43%,#000d 54%,transparent 74%);-webkit-mask-image:radial-gradient(ellipse at 50% 54%,#000 43%,#000d 54%,transparent 74%)}
.page-funeral .funeral-lotus-art img{display:block;width:100%;height:auto}
/* Additional lower-left watermarks at the two marked locations. */
.page-funeral :is(#funeral-flow,#funeral-contact)::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('assets/floral-line-fill.webp') no-repeat;opacity:.032}
.page-funeral #funeral-flow::after{background-size:650px;background-position:-305px calc(100% + 40px)}
.page-funeral #funeral-contact::after{background-size:620px;background-position:-320px calc(100% + 110px);opacity:.03}
@media(max-width:700px){
 .page-funeral .funeral-lotus-art{width:min(85%,280px);margin:4px auto 26px}
 .page-funeral #funeral-flow::after{background-size:440px;background-position:-290px calc(100% + 10px);opacity:.028}
 .page-funeral #funeral-contact::after{background-size:430px;background-position:-285px calc(100% + 65px);opacity:.028}
}
