/* Pricing extends the existing Embercrest editorial design system. */
#quote-form .optional{color:var(--slate)}
.pricing-section{background:var(--ivory);color:var(--navy)}
.pricing-heading{display:flex;justify-content:space-between;align-items:end;gap:48px;margin:64px 0 48px}
.pricing-heading h2{font-size:clamp(2.8rem,4.5vw,5rem)}
.pricing-heading h2 em,.pricing-philosophy em{color:var(--orange)}
.pricing-heading>p{max-width:390px;color:var(--slate)}
.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.package-card{border:1px solid #c5c5be;padding:30px 26px;display:flex;flex-direction:column;scroll-margin-top:25px}
.package-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;min-height:30px;margin-bottom:26px}
.package-top .eyebrow{font-size:.65rem;letter-spacing:.06em}
.pricing-badge{display:inline-block;background:var(--orange);color:#fff;padding:7px 10px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;width:fit-content}
.package-card.growth{border-color:var(--orange);box-shadow:inset 0 4px var(--orange);background:#fffaf3}
.package-card.advanced{background:var(--navy);color:var(--ivory);border-color:var(--navy)}
.package-card h3{font-size:1.7rem;font-weight:500;letter-spacing:-.04em}
.package-price{font-size:clamp(2.65rem,3.5vw,4rem);line-height:1.15;letter-spacing:-.05em;margin:30px 0 20px;position:relative}
.price-prefix{display:block;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;position:absolute;bottom:100%;margin-bottom:4px}
.package-summary{min-height:52px;font-size:1rem;line-height:1.5}
.package-card ul,.care-card ul{list-style:none;padding:0;margin:25px 0 32px;border-top:1px solid #bfc6c5}
.package-card li,.care-card li{font-size:.9rem;line-height:1.55;padding:12px 0;border-bottom:1px solid #d7dad5}
.package-card.advanced ul,.package-card.advanced li{border-color:var(--line)}
.package-position{font-size:.85rem;color:var(--slate);margin-bottom:25px}
.advanced .package-position{color:#c1ced0}
.package-actions{margin-top:auto;display:grid;gap:16px}
.pricing-detail{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid currentColor;padding:12px 0;font-size:.85rem;min-height:44px}
.pricing-quote{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--navy);color:var(--ivory);padding:17px 18px;font-size:.875rem;min-height:52px;transition:background .25s}
.pricing-quote:hover{background:var(--orange);color:white}
.advanced .pricing-quote{background:var(--ivory);color:var(--navy)}
.advanced .pricing-quote:hover{background:#f2b196}
.pricing-context{font-size:.9rem;line-height:1.7;max-width:960px;margin-top:28px}
.pricing-philosophy{display:grid;grid-template-columns:1fr 1.4fr;gap:60px;border-top:1px solid #b8c0c0;margin-top:55px;padding-top:35px;align-items:start}
.pricing-philosophy h3{font-size:2rem;font-weight:400;letter-spacing:-.04em;line-height:1.2}
.pricing-philosophy p{color:var(--slate);font-size:1rem}
.all-pricing{max-width:490px;margin-top:30px}
.pricing-page .masthead{position:relative}
.pricing-page .desktop-nav [aria-current]{color:#f6a280;border-bottom-color:currentColor}
.pricing-intro{padding-top:80px;padding-bottom:75px}
.pricing-intro h1{font-size:clamp(3.6rem,7vw,7.2rem);line-height:1.02;margin:25px 0}
.pricing-intro h1 em{color:#f6a280}
.pricing-intro>p:not(.eyebrow){max-width:620px;color:#c1ced0}
.pricing-intro .pricing-lead{font-size:1.4rem;color:var(--ivory)!important;margin-bottom:15px}
.pricing-jump{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:32px}
.pricing-jump a{font-size:.875rem;border-bottom:1px solid var(--line);padding:13px 0;min-height:44px}
.pricing-comparison{background:#e8e5de;color:var(--navy)}
.comparison-table table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:.875rem;line-height:1.55}
.comparison-table caption{text-align:left;font-size:1rem;margin-bottom:20px}
.comparison-table th,.comparison-table td{padding:22px 20px;text-align:left;vertical-align:top;border-bottom:1px solid #bbc2bf}
.comparison-table thead th{background:var(--navy);color:var(--ivory);font-weight:500;font-size:1.1rem}
.comparison-table thead th:nth-child(3){background:#994024}
.comparison-table thead span{display:block;font-size:.85rem;margin-top:10px}
.comparison-table th:first-child{padding-left:16px}
.comparison-label{display:none}
.pricing-care .pricing-heading h2 em,.pricing-process .pricing-heading h2 em{color:#f6a280}
.pricing-care .pricing-heading>p,.pricing-process .pricing-heading>p{color:#c1ced0}
.care-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
.care-card{border-top:1px solid #89969b;position:relative;padding:30px 0 0}
.care-card.popular{border-color:#f6a280}
.care-card .pricing-badge{margin-top:-30px;margin-bottom:18px;position:relative;top:-1px}
.care-card:not(.popular){padding-top:75px}
.care-card h3{font-size:1.25rem;font-weight:500;min-height:48px}
.care-card .package-price{font-size:2.6rem;margin:35px 0 20px;white-space:nowrap}
.price-period{font-size:.8rem;letter-spacing:0;white-space:nowrap}
.care-intro{font-size:.9rem;color:#c1ced0;min-height:66px}
.care-card ul{border-color:var(--line);margin-bottom:18px}
.care-card li{border-color:var(--line)}
.care-note{font-size:.85rem;color:#f6a280}
.care-boundaries{margin-top:50px;border:1px solid var(--line);padding:28px 32px;display:grid;grid-template-columns:1fr 2fr;gap:35px}
.care-boundaries h3{font-weight:400;font-size:1.4rem}
.care-boundaries ul{padding-left:18px;margin:0;color:#c1ced0;font-size:.9rem;line-height:1.7}
.care-boundaries li+li{margin-top:10px}
.support-options{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:50px}
.support-options article{border-top:1px solid var(--line);padding-top:25px}
.support-options h3{font-size:1.7rem;font-weight:400;line-height:1.3;margin:16px 0}
.support-options h3 span{font-size:1rem}
.support-options p:not(.eyebrow){font-size:.95rem;margin-top:12px;max-width:440px}
.pricing-costs,.pricing-payment{background:var(--ivory);color:var(--navy)}
.vendor-costs{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:start}
.vendor-costs ul{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;padding:0;list-style:none;margin:0}
.vendor-costs li{padding:15px 0;border-top:1px solid #bbc2bf;font-size:.95rem}
.vendor-costs>p{border-left:2px solid var(--orange);padding-left:25px;color:var(--slate)}
.pricing-process{background:var(--navy2)}
.quote-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.quote-steps li{border-top:1px solid var(--line);padding-top:25px}
.step-number{color:#f6a280;font-size:2.7rem;font-family:Georgia,serif}
.quote-steps h3{font-size:1.2rem;font-weight:400;line-height:1.45;margin:22px 0 15px}
.quote-steps p{color:#c1ced0;font-size:.95rem}
.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.payment-grid article{border-top:1px solid #bbc2bf;padding-top:25px}
.payment-number{font-size:clamp(3.5rem,6vw,6rem);letter-spacing:-.07em;color:var(--orange)}
.payment-grid h3{text-transform:uppercase;font-size:.85rem;letter-spacing:.08em;margin:18px 0 12px}
.revision-note{border-top:1px solid #bbc2bf;padding-top:25px;margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:70px}
.revision-note p{font-size:.95rem;color:var(--slate)}
.pricing-final{background:var(--navy);padding-top:75px}
.pricing-final h2{margin:25px 0;font-size:clamp(3rem,6vw,6rem)}
.pricing-final h2 em{color:#f6a280}
.pricing-final>p:not(.eyebrow){max-width:520px;color:#c1ced0}
.pricing-final .pricing-quote{max-width:320px;background:var(--ivory);color:var(--navy);margin-top:30px}
.pricing-final .pricing-quote:hover{background:#f2b196}
.pricing-page h1,.pricing-page h2,.pricing-page h3{overflow-wrap:anywhere}
@media(max-width:500px){.pricing-page .masthead{flex-wrap:wrap}.pricing-page .header-right{margin-left:auto}.pricing-page .wordmark{max-width:100%}}
@media(min-width:801px) and (max-width:1000px){.desktop-nav{gap:14px;margin-right:0}.masthead{gap:12px}.header-right{gap:10px}.quote-link{padding:14px 10px}.quote-link .quote-arrow{margin-left:10px}}
@media(max-width:1100px){.care-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}.package-card{padding:25px 20px}.package-top{min-height:60px;align-content:start}.pricing-heading{gap:30px}.pricing-heading>p{max-width:320px}.package-summary{min-height:72px}}
@media(max-width:800px){.package-grid{grid-template-columns:1fr}.package-top{min-height:30px}.package-summary{min-height:0}.package-card{padding:30px}.package-price{font-size:3.4rem}.pricing-heading{display:block}.pricing-heading>p{max-width:560px;margin-top:25px}.pricing-philosophy{gap:30px;grid-template-columns:1fr}.comparison-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.comparison-table table,.comparison-table tbody,.comparison-table tr,.comparison-table th,.comparison-table td{display:block;width:100%}.comparison-table tr{margin-bottom:28px;border-top:2px solid var(--navy)}.comparison-table tbody th{font-size:1.1rem;padding:20px 0 14px;border:0}.comparison-table td{display:grid;grid-template-columns:100px minmax(0,1fr);gap:20px;padding:15px 0}.comparison-label{display:block;font-weight:700;color:var(--slate)}.care-boundaries{grid-template-columns:1fr;gap:20px}.vendor-costs{grid-template-columns:1fr;gap:30px}.quote-steps{grid-template-columns:1fr;gap:30px}.quote-steps h3{margin-top:15px}.pricing-intro{padding-top:45px}}
@media(max-width:500px){.pricing-heading{margin:40px 0 30px}.pricing-heading h2{font-size:2.65rem}.pricing-intro h1{font-size:3.5rem}.pricing-intro .pricing-lead{font-size:1.2rem}.pricing-section .section-meta{flex-wrap:wrap;gap:8px}.pricing-section .section-meta>span{text-align:left;max-width:none}.package-card{padding:25px}.care-grid,.support-options,.payment-grid,.revision-note{grid-template-columns:1fr;gap:35px}.care-card:not(.popular){padding-top:28px}.care-card.popular{padding-top:30px}.care-card h3,.care-intro{min-height:0}.care-card h3{font-size:1.5rem}.care-boundaries{padding:25px}.vendor-costs ul{grid-template-columns:1fr}.pricing-philosophy{margin-top:40px;padding-top:28px}.pricing-jump{gap:5px 24px}.pricing-page .menu nav a{font-size:2.3rem}.all-pricing{align-items:start;line-height:1.6}}
