.cost-section{margin:16px 0;padding:18px;border:1px solid #d9d0bf;border-radius:10px;background:#fff;text-align:left}
.cost-section h3{margin:0 0 12px;color:#54412e;font-size:17px;line-height:1.5}
.cost-section-venue{background:#faf8f3;border-color:#c7bba7}
.cost-price-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:7px 0;font-size:14px;line-height:1.6}
.cost-price-row strong{white-space:nowrap;font-variant-numeric:tabular-nums}
.cost-price-row.cost-subtotal{margin-top:12px;padding-top:10px;border-top:1px solid #d8cebb;font-weight:700;font-size:16px}
.cost-subtotal strong{font-size:22px;color:#6b4b28}
.cost-note-title{margin:14px 0 6px;font-size:13px;font-weight:700;color:#564b3b}
.cost-section .simple-estimate-notice{margin:8px 0 0;padding:0;border:0;background:transparent}
.cost-section .simple-estimate-notice>div{margin:6px 0}
.cost-section .simple-estimate-included{margin:14px 0}
.cost-facility-description{margin:6px 0 12px;font-size:13px;line-height:1.7}
.cost-total-formula{margin:20px 0 4px;font-weight:700;text-align:center;line-height:1.7;color:#55432c}
.cost-total-formula span{display:inline-block}
.cost-summary-breakdown{padding:12px 0;margin-bottom:10px;border-bottom:1px solid #d9d0bf}
.cost-summary-breakdown .cost-price-row{font-size:12px}
.cost-summary-breakdown .cost-price-row strong{font-size:15px}
.cost-summary-breakdown p{font-size:11px;line-height:1.65;margin:9px 0 0;color:#655d50}
.estimate-detail-row.estimate-cost-heading{display:block!important;padding:3px 4px!important;background:#e7e1d5!important;font-weight:700;line-height:1.25!important;break-after:avoid}
.estimate-detail-row.estimate-cost-subtotal{display:flex!important;justify-content:space-between;gap:8px;padding:3px 4px!important;background:#f1ece3!important;font-weight:700;line-height:1.3!important;border-top:1px solid #988a74;break-before:avoid}
.estimate-cost-subtotal strong{white-space:nowrap}
.customer-cost-sections .estimate-detail-row:not(.estimate-simple-info-row)>span{line-height:1.3!important}
.customer-cost-sections .estimate-detail-row.estimate-cost-heading,.customer-cost-sections .estimate-detail-row.estimate-cost-subtotal{padding:2px 4px!important}
.customer-cost-sections.customer-simple-estimate .estimate-template-sheet .estimate-detail-row.estimate-simple-info-row{padding:1px 3px 2px!important;line-height:1.25!important}
.customer-cost-sections.customer-simple-estimate .estimate-template-sheet .estimate-simple-info-row .estimate-simple-info-text{line-height:1.25!important}
.estimate-detail-total-row.cost-total-formula-row{display:block!important;text-align:right;font-size:7pt;line-height:1.4}
@media(max-width:600px){.cost-section{padding:14px 12px;margin:12px 0}.cost-section h3{font-size:16px}.cost-price-row{font-size:13px;gap:8px}.cost-price-row.cost-subtotal{font-size:14px}.cost-subtotal strong{font-size:20px}.cost-total-formula{font-size:14px}}
@media print{.estimate-cost-heading,.estimate-cost-subtotal{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* Funeral type stays prominent in the document, PDF and printed pages. */
.estimate-funeral-type{position:absolute;left:23%;top:17.1%;width:54%;text-align:center;color:#543310;font-family:"Noto Serif JP",serif;font-size:18pt;font-weight:700;line-height:1.25;white-space:nowrap;z-index:3}
