.pricing-page { --pricing-peach:#fdefdf; --pricing-line:#e5e7eb; }
.pricing-page h1,.pricing-page h2,.pricing-page h3 { text-wrap:pretty; }
.pricing-page h1 { font-size:clamp(42px,4.7vw,64px); line-height:1.1; letter-spacing:-.045em; margin:23px 0; }
.pricing-page h2 { font-size:clamp(32px,3.3vw,46px); line-height:1.16; letter-spacing:-.035em; margin:17px 0 22px; }
.pricing-page p { font-size:17px; line-height:1.8; color:#334155; }
.pricing-page .eyebrow { font-size:10px; line-height:1.7; letter-spacing:.1em; }
.pricing-page .eyebrow::before { flex:0 0 6px; height:6px; }
.pricing-page .btn { line-height:1.6; white-space:normal; }
.pricing-page a:focus-visible,.pricing-page summary:focus-visible { outline:3px solid #334155; outline-offset:5px; }
.pricing-hero { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:75px; align-items:center; padding-top:60px; padding-bottom:60px; }
.pricing-deck { max-width:600px; margin-bottom:27px; }
.pricing-selector { background:var(--pricing-peach); border:1px solid #f3d7b6; border-top:4px solid #ff9933; padding:30px; border-radius:7px; }
.pricing-selector > .eyebrow { margin-bottom:20px; }
.pricing-selector > a { display:flex; gap:15px; align-items:start; padding:22px 0; border-bottom:1px solid #eddbc7; }
.pricing-selector > a:hover strong { text-decoration:underline; text-decoration-color:#ff9933; text-underline-offset:5px; }
.pricing-selector-tag { flex:0 0 46px; font-size:12px; font-weight:600; line-height:1.6; color:#1c2022; }
.pricing-selector strong { display:block; font-size:19px; font-weight:500; line-height:1.4; color:#1c2022; margin-bottom:8px; }
.pricing-selector div > span { display:block; font-size:14px; line-height:1.7; }
.pricing-selector b { margin-left:auto; font-size:18px; font-weight:400; }
.pricing-selector > p { font-size:13px; line-height:1.8; margin:21px 0 0; }
.pricing-jump-wrap { border-block:1px solid var(--pricing-line); background:#fafafa; }
.pricing-page .pricing-jumps { display:flex; position:static; gap:28px; flex-wrap:wrap; box-shadow:none; background:transparent; margin:0 auto; padding-top:18px; padding-bottom:18px; font-size:13px; font-weight:500; }
.pricing-jumps a:hover { text-decoration:underline; text-decoration-color:#ff9933; text-underline-offset:5px; }
.pricing-section { padding:76px 0; border-bottom:1px solid var(--pricing-line); scroll-margin-top:100px; }
.pricing-section-head { display:flex; align-items:end; justify-content:space-between; gap:50px; margin-bottom:32px; }
.pricing-section-head h2 { margin-bottom:0; }
.pricing-section-head > p { max-width:390px; font-size:16px; margin:0; }
.pricing-plans-section { background:#fafafa; }
.pricing-plan-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.pricing-plan { display:flex; flex-direction:column; min-width:0; padding:34px; border:1px solid var(--pricing-line); background:#fff; border-radius:8px; scroll-margin-top:110px; }
.pricing-plan-basic { background:var(--pricing-peach); border-color:#f3d7b6; }
.pricing-plan-top { display:flex; gap:12px; justify-content:space-between; align-items:center; flex-wrap:wrap; }
.pricing-plan-top > span { padding:4px 12px; font-size:14px; font-weight:600; background:var(--pricing-peach); color:#1c2022; border-radius:4px; }
.pricing-plan-basic .pricing-plan-top > span { background:#ff9933; }
.pricing-plan-top small { font-size:12px; line-height:1.7; }
.pricing-plan h3 { font-size:29px; font-weight:500; line-height:1.25; letter-spacing:-.03em; margin:26px 0 22px; }
.pricing-rate { display:flex; gap:20px; align-items:center; min-height:77px; margin:4px 0 16px; color:#1c2022; }
.pricing-rate > strong { font-size:68px; line-height:1; font-weight:500; letter-spacing:-.05em; }
.pricing-rate > span { font-size:13px; line-height:1.8; }.pricing-rate b { font-weight:500; }
.pricing-plan p { font-size:16px; }
.pricing-plan .pricing-fee-explanation { margin-bottom:23px; padding-bottom:22px; border-bottom:1px solid var(--pricing-line); min-height:81px; }
.pricing-plan-basic .pricing-fee-explanation { border-color:#eddbc7; }
.pricing-plan h4 { font-size:13px; font-weight:600; margin:10px 0 15px; }
.pricing-plan ul { padding:0; margin:0 0 24px; list-style:none; }
.pricing-plan li { position:relative; padding:10px 0 10px 22px; border-bottom:1px solid var(--pricing-line); font-size:15px; line-height:1.75; }
.pricing-plan-basic li { border-color:#eddbc7; }
.pricing-plan li::before { content:'\2713'; position:absolute; left:0; font-size:13px; color:#334155; }
.pricing-plan .pricing-deliverable { font-size:14px; line-height:1.85; margin:0 0 26px; }
.pricing-plan .btn { margin-top:auto; }
.pricing-page .pricing-plan-note { font-size:14px; line-height:1.8; margin:23px 0 0; }
.pricing-table-scroll { border:1px solid var(--pricing-line); border-radius:5px; overflow-x:auto; }
.pricing-comparison { width:100%; min-width:650px; border-collapse:collapse; font-size:15px; line-height:1.75; }
.pricing-comparison caption { text-align:left; padding:18px 21px; background:#fafafa; font-size:13px; border-bottom:1px solid var(--pricing-line); }
.pricing-comparison th,.pricing-comparison td { text-align:left; vertical-align:top; padding:18px 21px; border-bottom:1px solid var(--pricing-line); }
.pricing-comparison thead th { color:#1c2022; background:#ff9933; font-weight:600; }
.pricing-comparison tbody th { width:25%; font-weight:500; color:#1c2022; }
.pricing-comparison td { width:37.5%; }
.pricing-comparison tbody tr:nth-child(even) { background:#fff8f1; }
.pricing-comparison tr:last-child th,.pricing-comparison tr:last-child td { border-bottom:0; }
.pricing-cost-section { background:#fafafa; }
.pricing-cost-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.pricing-cost-card { background:#fff; padding:30px; border:1px solid var(--pricing-line); border-radius:6px; }
.pricing-cost-card h3 { font-size:25px; line-height:1.3; font-weight:500; margin:17px 0; letter-spacing:-.025em; }
.pricing-cost-card p { font-size:16px; }
.pricing-cost-formula { display:block; padding:18px; margin-top:24px; font-size:16px; font-weight:500; background:var(--pricing-peach); color:#1c2022; }
.pricing-examples { margin:20px 0 0; }
.pricing-examples > div { display:flex; align-items:start; justify-content:space-between; gap:20px; border-top:1px solid var(--pricing-line); padding:16px 0; font-size:15px; }
.pricing-examples dd { margin:0; text-align:right; color:#1c2022; font-weight:500; }
.pricing-examples small { display:block; font-size:11px; font-weight:400; }
.pricing-extra-costs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:48px; padding-top:30px; margin-top:30px; border-top:1px solid var(--pricing-line); }
.pricing-extra-costs h3 { font-size:21px; line-height:1.4; font-weight:500; margin-bottom:15px; }
.pricing-extra-costs p { font-size:15px; margin-bottom:15px; }
.pricing-extra-costs a { font-size:14px; text-decoration:underline; text-decoration-color:#ff9933; text-underline-offset:4px; }
.pricing-process { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; padding:0; margin:0; list-style:none; }
.pricing-process li { padding-top:20px; border-top:2px solid var(--pricing-line); }
.pricing-process li > span { font-size:16px; font-weight:500; }
.pricing-process h3 { font-size:22px; font-weight:500; line-height:1.3; letter-spacing:-.02em; margin:18px 0 15px; }
.pricing-process p { font-size:15px; margin:0; }
.pricing-quality-section,.pricing-contact-section { background:var(--pricing-peach); }
.pricing-quality-grid,.pricing-faq-grid,.pricing-contact-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:80px; }
.pricing-quality-grid > ul { list-style:none; padding:5px 28px; margin:0; border:1px solid #f3d7b6; border-radius:6px; background:#fff; }
.pricing-quality-grid li { padding:23px 0; border-bottom:1px solid var(--pricing-line); }
.pricing-quality-grid li:last-child { border-bottom:0; }
.pricing-quality-grid strong { display:block; font-weight:500; font-size:17px; color:#1c2022; margin-bottom:9px; }
.pricing-quality-grid li > span { display:block; font-size:15px; line-height:1.85; }
.pricing-faq-grid > div:first-child > p { font-size:16px; }
.pricing-faq-grid .btn { margin-top:10px; }
.pricing-faq-list details { padding:21px 0; border-bottom:1px solid var(--pricing-line); }
.pricing-faq-list details:first-child { padding-top:0; }
.pricing-faq-list summary { font-size:17px; line-height:1.65; font-weight:500; }
.pricing-faq-list p { font-size:16px; margin:15px 0 0; }
.pricing-contact-grid { align-items:center; }
.pricing-contact-card { min-width:0; border:1px solid #f3d7b6; border-radius:6px; background:#fff; padding:30px; }
.pricing-contact-card > span { font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
.pricing-contact-email { display:block; font-size:clamp(19px,2.1vw,29px); line-height:1.5; overflow-wrap:anywhere; font-weight:500; color:#1c2022; margin:21px 0; }
.pricing-contact-email:hover { text-decoration:underline; text-decoration-color:#ff9933; }
.pricing-contact-card p { font-size:15px; }
.pricing-contact-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:24px; }
.pricing-contact-actions .btn { flex:1 1 170px; }
.nav nav a[aria-current=page] { text-decoration:underline; text-decoration-color:#ff9933; text-underline-offset:6px; }
@media(max-width:1050px){
 .pricing-hero { gap:36px; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 .pricing-selector { padding:25px; }
 .pricing-plan { padding:27px; }
 .pricing-plan h3 { font-size:26px; }
 .pricing-quality-grid,.pricing-faq-grid,.pricing-contact-grid { gap:40px; }
 .pricing-process { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
}
@media(max-width:800px){
 .pricing-hero { grid-template-columns:minmax(0,1fr); }
 .pricing-hero h1 { font-size:48px; }
 .pricing-page .pricing-jumps { gap:12px 23px; }
 .pricing-plan-grid,.pricing-cost-grid { grid-template-columns:minmax(0,1fr); }
 .pricing-plan .pricing-fee-explanation { min-height:0; }
}
@media(max-width:720px){
 .pricing-page > .wrap,.pricing-page .pricing-section > .wrap,.pricing-page .pricing-jumps { width:calc(100% - 40px); padding-left:0; padding-right:0; }
 .pricing-hero { padding-top:37px; padding-bottom:38px; gap:30px; }
 .pricing-page h1 { font-size:clamp(36px,9.6vw,46px); }
 .pricing-page h2 { font-size:32px; }
 .pricing-page p { font-size:16px; }
 .pricing-page .eyebrow { font-size:9px; }
 .pricing-selector { padding:24px; }
 .pricing-selector > a { gap:12px; }
 .pricing-selector-tag { flex-basis:35px; }
 .pricing-selector strong { font-size:18px; }
 .pricing-selector div > span { font-size:13px; }
 .pricing-selector > p { font-size:12px; }
 .pricing-page .pricing-jumps { gap:12px 20px; font-size:12px; }
 .pricing-section { padding:50px 0; scroll-margin-top:85px; }
 .pricing-section-head { display:block; margin-bottom:26px; }
 .pricing-section-head > p { margin-top:19px; font-size:16px; }
 .pricing-plan { padding:24px; }
 .pricing-plan h3 { font-size:26px; }
 .pricing-rate > strong { font-size:60px; }.pricing-rate { gap:16px; }
 .pricing-rate > span { font-size:12px; }
 .pricing-comparison { font-size:14px; }.pricing-comparison th,.pricing-comparison td { padding:14px 17px; }
 .pricing-cost-card { padding:24px; }.pricing-cost-card h3 { font-size:23px; }
 .pricing-cost-formula { font-size:14px; }
 .pricing-examples > div { font-size:14px; gap:16px; }
 .pricing-extra-costs { grid-template-columns:1fr; gap:25px; }
 .pricing-process { grid-template-columns:1fr; gap:24px; }
 .pricing-process li { position:relative; padding:17px 0 0 42px; }
 .pricing-process li > span { position:absolute; top:18px; left:0; }
 .pricing-process h3 { margin:0 0 12px; }
 .pricing-quality-grid,.pricing-faq-grid,.pricing-contact-grid { grid-template-columns:minmax(0,1fr); gap:25px; }
 .pricing-quality-grid > ul { padding:0 23px; }
 .pricing-faq-list summary { font-size:16px; }
 .pricing-contact-card { padding:24px; }
 .pricing-contact-email { font-size:clamp(17px,5.2vw,25px); }
}
@media(prefers-reduced-motion:reduce){.pricing-page *{scroll-behavior:auto!important}}
