/* pricing — merged from the static build's app.css, source order preserved. */

.pricing-section .section-intro h2 { max-width: 636px; }
.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; }
.pricing-section { min-height: 1207px; padding-top: 100px; border-block: 1px solid rgba(0,0,0,.1); background: #fff url("../../assets/img/work-background.png") center top / 100% 1207px no-repeat; }
.pricing-section .section-intro h2 { font-size: 60px; line-height: 60px; }
.pricing-section .section-intro > p:last-of-type:not(.eyebrow) { max-width: 720px; }
.pricing-frame { position: absolute; z-index: 3; top: 0; bottom: 0; left: 50%; width: 1185px; transform: translateX(-50%); pointer-events: none; }
.pricing-frame i { position: absolute; display: block; }
.pricing-frame .pf-c { width: 8px; height: 8px; background: url("../../assets/img/corner-frame.svg") 0 0 / 8px 8px no-repeat; }
.pricing-frame .pf-tl { top: -1px; left: -1px; }
.pricing-frame .pf-tr { top: -1px; right: -1px; transform: scaleX(-1); }
.pricing-frame .pf-bl { bottom: -1px; left: -1px; transform: scaleY(-1); }
.pricing-frame .pf-br { bottom: -1px; right: -1px; transform: scale(-1); }
.pricing-frame .pf-t { width: 11px; height: 11px; background: url("../../assets/img/label-mark.svg") 0 0 / 11px 11px no-repeat; }
.pricing-frame .pf-t1, .pricing-frame .pf-t2 { top: -5px; transform: rotate(-90deg); }
.pricing-frame .pf-b1, .pricing-frame .pf-b2 { bottom: -5px; transform: rotate(90deg); }
.pricing-frame .pf-t1, .pricing-frame .pf-b1 { left: calc(33.3333% - 5.5px); }
.pricing-frame .pf-t2, .pricing-frame .pf-b2 { left: calc(66.6667% - 5.5px); }
.pricing-grid { position: relative; display: grid; grid-template-columns: repeat(3, 395px); gap: 0; justify-content: center; margin-top: 41px; }
.pricing-card { position: relative; min-height: 715px; padding: 31px 32px 88px; border: 1px solid rgba(0,0,0,.1); background: rgba(255,255,255,.05); }
.pricing-card--featured { border-block: 1px solid rgba(0,0,0,.1); border-inline: 0; background: #fff; box-shadow: none; }
.popular-label { position: absolute; top: 31px; right: 32px; display: inline-flex; height: 25px; align-items: center; padding: 0 10px; border: 1px solid rgba(232,71,59,.2); border-radius: 4px; color: var(--coral); background: rgba(232,71,59,.1); backdrop-filter: blur(10px); font-size: 14px; font-weight: 500; line-height: 18px; text-transform: uppercase; }
.pricing-card h3 { margin: 0; color: var(--wine); font-size: 32px; font-weight: 500; line-height: 32px; text-transform: capitalize; }
.pricing-price { display: flex; align-items: baseline; gap: 7px; margin: 28px 0 0; }
.pricing-price strong { color: var(--coral); font-size: 60px; font-weight: 600; line-height: 60px; }
.pricing-price span { color: rgba(0,0,0,.6); font-size: 16px; line-height: 18px; }
.pricing-card > p:not(.pricing-price) { margin: 20px 0 0; color: rgba(0,0,0,.6); font-size: 18px; line-height: 26px; }
.pricing-card > .button { width: 331px; min-width: 331px; min-height: 50px; margin-top: 24px; }
.pricing-card:not(.pricing-card--featured) > .button { color: var(--wine); background: #fff; border-color: transparent; }
.pricing-card h4 { margin: 28px 0 12px; color: rgba(0,0,0,.6); font-size: 16px; font-weight: 400; line-height: 16px; }
.pricing-card ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.pricing-card li { position: relative; padding-left: 36px; color: #000; font-size: 16px; line-height: 24px; }
.pricing-card li::before { position: absolute; top: 0; left: 0; width: 24px; height: 24px; content: ""; background: url("../../assets/img/check.svg") center/contain no-repeat; }
.pricing-card footer { position: absolute; bottom: 33px; left: 32px; display: flex; width: 331px; height: 67px; align-items: center; gap: 8px; padding: 0 20px; background: #fff; color: rgba(0,0,0,.6); font-size: 16px; line-height: 24px; text-align: left; }
.pricing-card--featured footer { background: #f9f6f6; }
.pricing-card footer strong { color: var(--wine); font-size: 40px; font-weight: 600; line-height: 40px; }
.pricing-card ul:nth-of-type(2) li::before { top: 8px; left: 8px; width: 8px; height: 8px; border-radius: 50%; background: rgba(0,0,0,.8); box-shadow: none; }
