/* SEO semantic heading aliases preserve original typography. */
.offer-cost-comparison { background:#f4f4f4; }
.offer-comparison-intro { max-width:880px; margin-bottom:2.5rem; }
.offer-cost-comparison :is(h2:not(:where([data-seo-original-heading])),:where([data-seo-original-heading="h2"])) { max-width:22ch; margin:.8rem 0 1.4rem; }
.offer-comparison-intro .lede { max-width:78ch; color:#555; }
.offer-cost-comparison .offer-grid { align-items:stretch; gap:1.6rem; grid-template-columns:1fr 1fr; }
.offer-cost-comparison .offer-card { display:flex; flex-direction:column; align-items:flex-start; }
.offer-cost-comparison .offer-card .btn { margin-top:auto; }
.offer-cost-comparison .offer-card .offer-fineprint { margin-top:1.4rem; }
.diy-cost-card { padding:clamp(1.6rem,3.4vw,2.6rem); background:#fff; border:1px solid #cfcfcf; border-radius:var(--radius-lg); min-width:0; }
.diy-cost-tag { display:inline-block; background:#e9e9e9; border:1px solid #ccc; color:#333; font-size:.72rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; padding:.45rem .7rem; border-radius:4px; margin-bottom:1.5rem; }
.diy-cost-card :is(h3:not(:where([data-seo-original-heading])),:where([data-seo-original-heading="h3"])) { color:#171717; font-size:clamp(1.6rem,2.6vw,2.1rem); letter-spacing:-.035em; line-height:1.15; margin:0 0 1rem; max-width:22ch; }
.diy-cost-card>p:not(:where([data-seo-original-heading])) { color:#666; font-size:.95rem; line-height:1.7; margin:0 0 1.7rem; }
.diy-cost-list { margin:0; }
.diy-cost-list>div { border-top:1px solid #dedede; padding:1rem 0; }
.diy-cost-list dt { display:flex; align-items:baseline; gap:.7rem; color:#222; font-size:.98rem; font-weight:800; line-height:1.4; }
.diy-cost-list dt span { color:#666; font-size:.65rem; font-weight:700; }
.diy-cost-list dd { margin:.45rem 0 0 1.7rem; color:#626262; font-size:.85rem; line-height:1.65; }
.diy-cost-total { background:#eee; border-radius:8px; margin-top:1rem; padding:1.2rem; }
.diy-cost-total>span { display:block; color:#5b5b5b; text-transform:uppercase; letter-spacing:.08em; font-size:.62rem; font-weight:800; }
.diy-cost-total strong { display:block; color:#222; font-size:1.1rem; line-height:1.45; margin:.65rem 0; }
.diy-cost-total p:not(:where([data-seo-original-heading])) { color:#606060; font-size:.8rem; line-height:1.6; margin:0; }
.offer-comparison-note { color:#666; font-size:.77rem; line-height:1.7; margin:1.5rem 0 0; max-width:100ch; }
.diy-monthly-price { margin:1.5rem 0 1.7rem; padding:1.2rem 0; border-top:1px solid #ccc; border-bottom:1px solid #ccc; }
.diy-monthly-price>strong { display:block; font-family:var(--font-display); color:#171717; font-size:clamp(2.6rem,5vw,3.6rem); line-height:1; letter-spacing:-.05em; }
.diy-monthly-price>strong span { color:#555; font-size:1rem; letter-spacing:-.02em; margin-left:.35rem; }
.diy-monthly-price p:not(:where([data-seo-original-heading])) { color:#555; font-size:.8rem; line-height:1.65; margin:.8rem 0 0; }
.diy-cost-list dt { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:baseline; gap:.65rem; }
.diy-cost-list .diy-cost-name { color:#222; font-size:.94rem; font-weight:800; }
.diy-cost-list .diy-line-price { color:#171717; font-size:1.12rem; font-weight:900; line-height:1.2; white-space:nowrap; text-align:right; }
.diy-line-price small { display:block; color:#626262; font-size:.62rem; font-weight:600; line-height:1.5; margin-top:.2rem; }
.diy-cost-list .diy-line-price-text { max-width:10ch; font-size:.72rem; line-height:1.4; white-space:normal; }
.diy-agency-cost { margin-top:.2rem; background:#f3f3f3; padding:1rem .8rem!important; border-radius:6px; }
.diy-cost-basis { margin-top:1.3rem; padding-top:1rem; border-top:1px solid #ddd; color:#555; font-size:.73rem; line-height:1.7; }
.diy-cost-basis summary { color:#333; cursor:pointer; font-weight:800; }
.diy-cost-basis summary:focus-visible,.diy-cost-basis a:focus-visible { outline:2px solid #333; outline-offset:3px; }
.diy-cost-basis ul { list-style:disc; padding-left:1.2rem; margin:1rem 0; }
.diy-cost-basis li { margin:.6rem 0; }
.diy-cost-basis a { color:#333; text-decoration:underline; text-underline-offset:3px; }
.diy-cost-basis p:not(:where([data-seo-original-heading])) { margin:1rem 0 0; }
@media(max-width:440px) { .diy-cost-list dt { gap:.45rem; } .diy-cost-list .diy-cost-name { font-size:.86rem; } .diy-cost-list .diy-line-price { font-size:1rem; } .diy-cost-list .diy-line-price-text { font-size:.68rem; } }
@media(max-width:960px) { .offer-cost-comparison .offer-grid { grid-template-columns:minmax(0,1fr); } .offer-cost-comparison .offer-card .btn { margin-top:0; } }
