/* cost-comparison — merged from the static build's app.css, source order preserved. */

.cost-comparison .section-intro h2 { max-width: 454px; }
.cost-comparison { position: relative; padding: 120px 0 127px; background-color: var(--paper); background-image: var(--noise); }
.cost-comparison .section-intro > p:last-of-type:not(.eyebrow):not(.eyebrow) { max-width: 631px; margin-top: 15px; font-size: 18px; line-height: 26px; }
.comparison-grid { display: grid; max-width: 1210px; grid-template-columns: 1fr 1fr; margin-top: 55px; padding-inline: 40px; }
.comparison-card { position: relative; min-width: 0; height: 695px; padding: 40px 40px 28px; border: 1px solid rgba(0,0,0,.1); background: transparent; }
.comparison-card--idris { background: #fff; }
.comparison-card h3 { margin: 0; font-size: 32px; font-weight: 600; line-height: 32px; text-transform: uppercase; }
.comparison-card__brand-row { display: flex; min-height: 36px; align-items: center; justify-content: space-between; }
.comparison-card__brand-row img { width: 182px; height: 26px; object-fit: contain; }
.comparison-card__brand-row span { padding: 6px 9px; border: 1px solid rgba(232,71,59,.25); border-radius: 4px; color: var(--coral); background: rgba(232,71,59,.08); font-size: 14px; font-weight: 500; text-transform: uppercase; }
.comparison-price { display: flex; align-items: baseline; gap: 8px; margin: 43px 0 0; }
.comparison-price strong { color: rgba(0,0,0,.6); font-size: 60px; font-weight: 600; line-height: 60px; }
.comparison-price span { color: rgba(0,0,0,.6); font-size: 16px; line-height: 18px; }
.comparison-price--idris { margin-top: 36px; gap: 7px; }
.comparison-price--idris b { color: var(--wine); font-size: 24px; font-weight: 500; line-height: 18px; }
.comparison-price--idris strong { color: var(--coral); }
.comparison-price--idris span { font-size: 16px; }
.comparison-note { margin: 22px 0 0; color: rgba(0,0,0,.58); font-size: 18px; line-height: 26px; }
.cost-list { margin: 22px 0 0; }
.cost-list div { display: flex; min-height: 76px; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(0,0,0,.16); }
.cost-list div:last-child { border-bottom: 0; }
.cost-list dt { color: rgba(0,0,0,.58); font-size: 18px; }
.cost-list dd { margin: 0; font-size: 18px; font-weight: 500; }
.cost-list small { color: rgba(0,0,0,.55); font-size: 14px; font-weight: 400; }
.saving-callout { display: flex; min-height: 83px; align-items: center; gap: 24px; margin-top: 53px; padding: 15px 20px; background: #f9f6f6; }
.saving-callout strong { flex: none; font-size: 40px; font-weight: 500; line-height: 40px; }
.saving-callout p { margin: 0; color: rgba(0,0,0,.58); font-size: 16px; line-height: 24px; }
.comparison-card__cta { position: absolute; right: 40px; bottom: 44px; left: 40px; width: auto; }
.confirmed-cost { display: flex; align-items: center; justify-content: space-between; margin-top: 19px; padding: 17px 17px 13px; border: 1px solid rgba(0,0,0,.07); border-radius: 8px; }
.confirmed-cost p { margin: 0; }
.confirmed-cost span { display: block; color: rgba(0,0,0,.42); font: 400 11px/1 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; }
.confirmed-cost strong { display: flex; align-items: baseline; gap: 9px; margin-top: 10px; color: #211e29; font-size: 28px; font-weight: 600; line-height: 1; }
.confirmed-cost small { color: rgba(0,0,0,.42); font: 400 13px/1 var(--font-mono); }
.inclusion-list { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 28px; margin: 45px 0 0; padding: 0; list-style: none; }
.inclusion-list li { position: relative; padding-left: 32px; font-size: 18px; line-height: 26px; }
.inclusion-list li::before { position: absolute; top: 1px; left: 0; width: 24px; height: 24px; content: ""; background: url("../../assets/img/check.svg") center / contain no-repeat; }
