/* Services: clear choices, a visible budget, and supporting detail at the right depth. */
.services-page{--price-ink:#142a46;--price-blue:#1b4db0;--price-muted:#526078;--price-border:#ccd7e6}
.services-page .services-hero{padding-block:3rem 2.5rem}
.services-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:center}
.services-page .services-hero h1{margin:.3rem 0;max-width:19ch;font-size:clamp(2.3rem,4vw,3.5rem);line-height:1.15}
.services-hero-grid>div>p{max-width:48ch;color:#43516a}
.services-hero .reduce-links{gap:.4rem 1.25rem;margin-top:1.25rem}
.services-page .services-jump{padding-block:.5rem;gap:0 2rem;border-bottom:0}
.services-jump a{font-size:.875rem;font-weight:600;color:#43516a;min-height:44px;display:inline-flex;align-items:center}
.services-jump a:hover{color:#1b4db0;text-decoration:underline;text-underline-offset:5px}
.services-page .pricing-section{background:#f3f6fb;padding-block:2.75rem 3rem}
.pricing-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:1.5rem}
.pricing-heading .eyebrow{margin:0 0 .5rem}.pricing-heading h2{margin:0!important;max-width:25ch}
.pricing-heading>p{font-size:.9375rem;color:var(--price-muted);line-height:1.6;flex-shrink:0}
.pricing-paths{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin-bottom:1.5rem}
.pricing-paths button{display:flex;flex-direction:column;gap:.25rem;align-items:flex-start;text-align:left;border:1px solid var(--price-border);border-radius:.65rem;background:#fff;padding:1rem 1.1rem;min-height:86px;color:var(--price-ink);transition:background .15s,border-color .15s}
.pricing-paths strong{font-size:1rem;font-weight:600;line-height:1.4}.pricing-paths span{font-size:.875rem;line-height:1.4;color:var(--price-muted)}
.pricing-paths button[aria-pressed=true]{background:var(--price-blue);border-color:var(--price-blue);color:#fff;box-shadow:inset 0 -3px 0 #e8b18a}.pricing-paths button[aria-pressed=true] span{color:#e4edff}
.pricing-paths button:hover:not([aria-pressed=true]){border-color:var(--price-blue);background:#eaf0fb}
.pricing-calculator{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem;align-items:start}
.pricing-calculator [hidden],[data-pricing-calculator][hidden]{display:none!important}
.pricing-controls{padding:1.25rem .25rem}
.pricing-control-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.75rem}
.pricing-control-heading h3{margin:0;font-size:1.125rem}.pricing-rate{font-size:.875rem;color:var(--price-blue);font-weight:600;white-space:nowrap}
.pricing-field{margin-bottom:1.75rem}
.pricing-hour-label{display:flex;align-items:center;justify-content:space-between;gap:1rem}.pricing-hour-label>label{font-weight:600;font-size:.9375rem;color:var(--price-ink)}
.pricing-stepper{display:flex;gap:.6rem;align-items:center}.pricing-stepper button{width:44px;height:44px;display:grid;place-items:center;font-size:1.4rem;line-height:1;border:1px solid #bbc9dc;background:white;border-radius:.45rem;color:var(--price-blue)}
.pricing-stepper button:hover:not(:disabled){background:#e7eefb;border-color:#1b4db0}.pricing-stepper button:disabled{opacity:.4;cursor:default}.pricing-stepper output{font-weight:600;color:var(--price-ink);min-width:4.7rem;text-align:center;white-space:nowrap}
.pricing-field input[type=range]{--range-fill:0%;appearance:none;display:block;width:100%;height:44px;margin:.25rem 0;padding:0;background:transparent;cursor:pointer}
.pricing-field input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(to right,#1b4db0 var(--range-fill),#ccd7e6 var(--range-fill))}
.pricing-field input[type=range]::-webkit-slider-thumb{appearance:none;margin-top:-8px;width:22px;height:22px;border:3px solid white;box-shadow:0 0 0 1px #1b4db0;border-radius:50%;background:#1b4db0}
.pricing-field input[type=range]::-moz-range-track{height:6px;border-radius:3px;background:#ccd7e6}.pricing-field input[type=range]::-moz-range-progress{height:6px;background:#1b4db0}.pricing-field input[type=range]::-moz-range-thumb{width:18px;height:18px;border:3px solid white;box-shadow:0 0 0 1px #1b4db0;border-radius:50%;background:#1b4db0}
.pricing-range-ends{display:flex;justify-content:space-between;gap:1rem;font-size:.875rem;color:var(--price-muted);margin-bottom:.7rem}
.services-page .pricing-note{font-size:.875rem;line-height:1.6;color:var(--price-muted);margin-bottom:.8rem}
.pricing-onboarding{border:0;padding:0;margin:0;min-width:0}.pricing-onboarding legend{font-size:.9375rem;font-weight:600;margin-bottom:.7rem;color:var(--price-ink)}
.pricing-client-options{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-bottom:.7rem}
.pricing-client-options label{display:flex;align-items:center;gap:.6rem;border:1px solid var(--price-border);border-radius:.5rem;padding:.85rem .75rem;background:white;cursor:pointer;min-height:76px}
.pricing-client-options label:has(input:checked){border-color:#1b4db0;box-shadow:0 0 0 1px #1b4db0;background:#eaf0fb}
.pricing-client-options input{appearance:auto;width:18px;height:18px;flex-shrink:0;accent-color:#1b4db0}
.pricing-client-options strong{font-size:.875rem;font-weight:600;line-height:1.4;display:block;color:var(--price-ink)}.pricing-client-options small{font-size:.875rem;line-height:1.4;color:var(--price-muted);display:block;margin-top:.2rem}
.pricing-controls .pricing-footnote{font-size:.875rem;color:var(--price-muted);line-height:1.6;margin:1.25rem 0 0;padding-top:1rem;border-top:1px solid var(--price-border)}
.pricing-summary{background:#142f53;color:#fff;border:1px solid #142f53;border-radius:.8rem;padding:1.75rem;box-shadow:0 12px 28px #142f530d}
.pricing-summary-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.2rem;font-size:.875rem;color:#d2def0}.pricing-summary-top>span:first-child{padding:.25rem .6rem;border:1px solid #516b8d;border-radius:2rem}
.services-page .pricing-summary h3{color:#fff;margin:0;font-size:1.2rem}
.services-page .pricing-summary .pricing-total{font:600 clamp(2.4rem,4.5vw,3.3rem)/1.15 var(--font-heading);letter-spacing:-.035em;color:#fff;margin:.65rem 0 .25rem}
.services-page .pricing-summary .pricing-unit{font-size:.875rem;color:#d2def0;margin-bottom:1.25rem}
.pricing-breakdown{margin:0 0 1.25rem;padding:.25rem 0;border-block:1px solid #49617f}.pricing-breakdown>div{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.55rem 0}
.pricing-breakdown dt{font-size:.9375rem;line-height:1.5;color:#e6eefb}.pricing-breakdown dd{font-weight:600;margin:0;white-space:nowrap;color:#fff}
.pricing-summary>p:not(.pricing-total):not(.pricing-unit){color:#e6eefb;line-height:1.6}
.services-page .pricing-summary .pricing-caption{font-size:.875rem;color:#fff;font-weight:600;margin:1.1rem 0 .3rem}
.services-page .pricing-summary .pricing-note{color:#d2def0;font-size:.875rem;line-height:1.6}
.pricing-next-step{margin-top:1.4rem}.pricing-next-step .rg-button{display:flex;width:100%;background:#fff;color:#142f53;border-radius:.5rem;box-shadow:none;font-size:1rem;padding:.75rem 1rem;min-height:48px}
.pricing-next-step .rg-button:hover{background:#eaf0fb;transform:none}.services-page .pricing-next-step p{font-size:.875rem;text-align:center;color:#d2def0;margin:.5rem 0 1.25rem;line-height:1.5}
.pricing-summary .pricing-boundary{padding-top:1rem;border-top:1px solid #49617f}
.pricing-summary .rg-text-link{display:inline-flex;align-items:center;min-height:44px;color:white;font-size:.875rem;text-decoration:underline;text-underline-offset:4px;margin:0}
.pricing-mobile-total{display:none}
.pricing-options{display:grid;gap:.6rem;margin-top:1rem}.pricing-option{width:100%;text-align:left;background:#fff;border:1px solid var(--price-border);border-radius:.55rem;padding:.9rem 1rem;color:var(--price-ink)}
.pricing-option-top{display:flex;flex-wrap:wrap;gap:.25rem .75rem;justify-content:space-between;align-items:baseline}.pricing-option-top strong{font-size:.9375rem;font-weight:600}.pricing-option-price{font-size:.9375rem;font-weight:600;color:var(--price-blue);white-space:nowrap}
.pricing-option-description{display:block;font-size:.875rem;line-height:1.5;color:var(--price-muted);margin-top:.4rem}
.pricing-option[aria-pressed=true]{border-color:#1b4db0;box-shadow:inset 3px 0 #1b4db0;background:#eaf0fb}.pricing-option:hover{border-color:#1b4db0}
[data-pricing-calculator] :is(button,input,a):focus-visible{outline:3px solid #1b4db0;outline-offset:4px}.pricing-summary a:focus-visible{outline-color:#fff}
.pricing-sr-only{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}
.services-detail-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:4rem}.services-detail-grid>div:first-child>p:not(.eyebrow){color:#43516a;max-width:46ch}.services-faq{border-bottom:1px solid var(--price-border)}
.services-page .services-faq .rg-details summary{padding:1.2rem 0;font-size:1rem}.services-faq .rg-detail-body p{font-size:.9375rem;line-height:1.65}
.services-page #what-i-take-on{padding-top:1rem}.services-page #what-i-take-on .rg-card{border:0;border-top:2px solid #b8c9e4;border-radius:0;padding:1.25rem 0;background:transparent}
.services-page .services-projects .reduce-price-table{background:#fff;border:1px solid #d4deeb;border-radius:.75rem;overflow:hidden;margin-top:1.5rem;margin-bottom:1.5rem}.services-projects .reduce-price-table table{margin:0}.services-projects .reduce-price-table th,.services-projects .reduce-price-table td{padding:1.1rem 1.25rem}.services-projects .reduce-price-table tr:last-child>*{border-bottom:0}.services-projects .reduce-price{font-weight:600;color:#1b4db0}
.services-page .pricing-capabilities{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--price-border)}.pricing-capabilities h3{font-size:1.5rem;line-height:1.4;color:var(--price-ink)}
.services-page #responsibility .rg-card{box-shadow:none;border-color:#d5dfed}.services-page #responsibility .rg-card p{margin-top:0}
.services-offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-top:1.5rem}.services-offer-card{background:#fff;border:1px solid #d2ddec;border-radius:.7rem;padding:1.75rem;display:flex;flex-direction:column;align-items:flex-start}
.services-page .services-offer-price{font:600 1.8rem/1.3 var(--font-heading);letter-spacing:-.025em;color:#1b4db0;margin:.25rem 0 1rem}.services-offer-price span{display:block;font:400 .875rem/1.5 var(--font-sans);letter-spacing:0;color:var(--price-muted);margin-top:.3rem}
.services-offer-card .rg-text-link{display:inline-flex;align-items:center;min-height:44px;margin-top:auto;padding-top:.75rem}.services-page .services-section-intro{max-width:65ch}.services-page .services-section-note{font-size:.9375rem;line-height:1.65;color:var(--price-muted);margin-top:1.5rem;max-width:90ch}
@media(max-width:1000px){.pricing-heading{display:block}.pricing-heading>p{margin:.8rem 0 0}.pricing-heading>p br{display:none}.pricing-calculator{gap:1.25rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.pricing-control-heading{display:block}.pricing-rate{display:block;margin-top:.3rem}.pricing-client-options{grid-template-columns:1fr}.pricing-client-options label{min-height:62px}.services-hero-grid{gap:2rem}.services-detail-grid{gap:2.5rem}.pricing-summary{padding:1.5rem}.pricing-hour-label{flex-wrap:wrap;gap:.25rem}.services-page .pricing-capabilities{gap:2rem}}
@media(max-width:760px){.services-hero-grid{grid-template-columns:1fr;gap:1rem}.services-page .services-hero{padding-block:2rem}.services-page .services-hero h1{font-size:2.5rem}.services-page .services-jump{gap:0 1.25rem;padding-block:.5rem}.services-jump a{font-size:.875rem}.services-page .pricing-section{padding-block:2rem}.pricing-heading h2{font-size:1.8rem}.pricing-paths{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-bottom:1rem}.pricing-paths button{padding:.85rem;min-height:80px}.pricing-paths strong{font-size:.9375rem}.pricing-paths span{font-size:.875rem}.pricing-calculator{grid-template-columns:minmax(0,1fr);gap:1.25rem}.pricing-controls{padding:.75rem 0 0}.pricing-control-heading{display:flex;flex-wrap:wrap;gap:.4rem 1rem;margin-bottom:1.25rem}.pricing-rate{margin:0}.pricing-hour-label{flex-wrap:nowrap}.pricing-stepper{gap:.35rem}.pricing-stepper output{min-width:4.1rem;font-size:.9375rem}.pricing-stepper button{width:44px;height:44px}.pricing-field{margin-bottom:1.25rem}.pricing-client-options{grid-template-columns:1fr 1fr}.pricing-client-options label{padding:.75rem .6rem;gap:.45rem}.pricing-client-options strong{font-size:.875rem}.pricing-summary{padding:1.5rem}.services-page .pricing-mobile-total{display:flex;align-items:baseline;gap:.5rem;padding:.9rem 0;border-block:1px solid #c7d4e6;margin:1rem 0 0;color:var(--price-ink);font-size:.9375rem}.pricing-mobile-total strong{margin-left:auto;font-size:1.5rem;color:#1b4db0}.pricing-mobile-total>span{font-size:.875rem;color:var(--price-muted)}.pricing-controls .pricing-footnote{border:0;padding:0;margin-top:.75rem}.services-detail-grid,.services-page .pricing-capabilities,.services-offer-grid{grid-template-columns:1fr;gap:1.5rem}.services-page .pricing-capabilities h3 br{display:none}.services-offer-card{padding:1.5rem}.services-page #responsibility h2{max-width:25ch}.services-projects .reduce-price-table th,.services-projects .reduce-price-table td{padding:1rem .75rem}}
@media(max-width:430px){.services-page .rg-container{padding-inline:1.25rem}.services-page .services-hero h1{font-size:2.15rem}.services-hero .reduce-links{gap:.25rem 1rem}.services-hero .rg-button{width:100%}.services-page .services-jump{padding-inline:1.25rem;gap:0 1rem}.services-jump a{font-size:.875rem}.pricing-hour-label{flex-wrap:wrap}.pricing-hour-label>label{font-size:.9375rem}.pricing-client-options{grid-template-columns:1fr}.pricing-client-options label{min-height:64px;padding:.65rem .8rem}.pricing-client-options label>span{display:flex;flex:1;align-items:center;justify-content:space-between;gap:.65rem}.pricing-client-options small{margin:0;white-space:nowrap}.pricing-summary{padding:1.25rem}.pricing-paths button{padding:.75rem}.pricing-paths span{line-height:1.4}.services-page .services-projects .reduce-price-table{padding:0 1.1rem}.services-projects .reduce-price-table th,.services-projects .reduce-price-table td{padding:.3rem 0}.services-projects .reduce-price-table tr:last-child{border-bottom:0}.services-page .services-offer-price{font-size:1.65rem}}
@media(prefers-reduced-motion:reduce){.pricing-paths button{transition:none}}

/* Keep price and action together; the hourly scope is already beside the controls. */
.services-page section[id]{scroll-margin-top:0}
.pricing-summary-top{margin-bottom:.75rem}.pricing-summary-top>span:first-child{padding:0;border:0;border-radius:0}
.services-page .pricing-summary-top h3{font-size:1.125rem;max-width:85%;line-height:1.4}
.pricing-summary [data-price-scope]>p:not(.pricing-caption){color:#e6eefb;line-height:1.6}
@media(max-width:760px){.services-page .pricing-mobile-total{margin:0 0 1rem;padding:.7rem 0}.pricing-controls .pricing-footnote{border-top:1px solid #c7d4e6;padding-top:1rem}}

.services-page .rg-card:hover{transform:none}
@media(hover:none){.pricing-paths button:hover:not([aria-pressed=true]){border-color:var(--price-border);background:#fff}}

@media(max-width:760px){.services-page .pricing-mobile-total{position:sticky;top:72px;z-index:2;background:#f3f6fb;min-height:62px;margin:0 0 1.25rem;padding:.75rem 0;box-shadow:0 5px 8px #f3f6fb}.pricing-mobile-total>span{max-width:45%;line-height:1.4}.pricing-mobile-total strong{white-space:nowrap}.pricing-controls :is(button,input){scroll-margin-block:150px 20px}}
@media(max-width:350px){.pricing-mobile-total strong{font-size:1.3rem}}
