.payroll-section{padding:90px max(6vw,24px);background:#edf3e6;color:#123f33;scroll-margin-top:100px}.pay-intro{max-width:720px;margin-bottom:32px}.pay-eyebrow{font-size:11px;letter-spacing:.15em}.pay-intro h2{font-size:clamp(30px,4vw,48px);line-height:1.15;letter-spacing:-.04em;margin:14px 0}.pay-intro p{line-height:1.7;font-size:16px}.pay-layout{display:grid;grid-template-columns:1fr 1fr;gap:28px}.pay-form,.pay-output{background:#fff;border:1px solid #d0ddc7;padding:28px;border-radius:12px;min-width:0}.pay-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pay-field{display:flex;flex-direction:column;gap:7px;font-size:12px}.pay-field input,.pay-field select{width:100%;min-width:0;height:46px;font:inherit;font-size:16px;border:1px solid #b8cbb0;border-radius:5px;padding:9px;background:#fafcf7;color:#123f33}.pay-field select:disabled{opacity:.5}.pay-options,.pay-scope,.pay-breakdown{margin-top:20px;font-size:13px}.pay-options summary,.pay-scope summary,.pay-breakdown summary{cursor:pointer;font-weight:600;padding:7px 0}.pay-options .pay-grid{margin:14px 0}.pay-check{display:flex;gap:9px;align-items:center;margin:12px 0;font-size:12px}.pay-check input{width:17px;height:17px;accent-color:#123f33}.pay-submit{margin:16px 0 9px;display:flex;justify-content:space-between;align-items:center;background:#123f33;color:white;border:0;border-radius:5px;font:inherit;padding:14px 20px;width:100%;cursor:pointer}.pay-form small{font-size:11px;color:#54664c}.pay-error{font-size:12px;line-height:1.6;color:#8d421b;margin-bottom:0}.pay-totals{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:#123f33;color:#e6f2d9;padding:22px;border-radius:7px}.pay-totals span{font-size:12px;display:block}.pay-totals strong{font-size:clamp(20px,2.2vw,30px);display:block;margin-top:8px}.pay-output dl{margin:14px 0}.pay-output dl>div{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid #e2eadc;font-size:13px}.pay-output dd{margin:0;white-space:nowrap;font-weight:600}.pay-output dl>div:last-child{font-weight:700}.pay-cta{display:inline-block;margin-top:14px;text-decoration:underline;font-size:13px}.pay-breakdown p,.pay-scope p{font-size:12px;line-height:1.7}.pay-scope a{text-decoration:underline}.pay-always{font-size:11px;line-height:1.7;max-width:1100px;margin:20px 0 0;color:#53644e}.payroll-section input:focus-visible,.payroll-section select:focus-visible,.payroll-section button:focus-visible{outline:3px solid #96b86a;outline-offset:2px}.pay-hours[hidden]{display:none}@media(max-width:760px){.payroll-section{padding:55px 20px}.pay-layout{grid-template-columns:1fr;gap:16px}.pay-form,.pay-output{padding:20px}.pay-totals{padding:17px}.pay-grid{gap:12px}.pay-output dl>div{font-size:12px}.pay-totals strong{font-size:22px}}

.pay-direction{border:0;padding:0;margin:0 0 22px;display:flex;flex-wrap:wrap;gap:9px;min-width:0}.pay-direction legend{font-size:12px;font-weight:600;padding:0;margin-bottom:9px}.pay-direction label{display:flex;align-items:center;gap:8px;border:1px solid #adbf9f;border-radius:6px;padding:11px 13px;font-size:13px;cursor:pointer;flex:1;white-space:nowrap}.pay-direction input{accent-color:#123f33;width:16px;height:16px;margin:0}.pay-direction label:has(:checked){background:#d9ebc4;border-color:#315b3c}.pay-direction label:focus-within{outline:3px solid #96b86a;outline-offset:2px}
