/* Accessible scroll-linked depth. All content remains available without JS. */
.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:150;pointer-events:none}.reading-progress span{display:block;height:100%;background:linear-gradient(90deg,#7f9873,#d8bc7d);transform:scaleX(var(--reading-progress,0));transform-origin:left}
.motion-ready .hero-portrait img,.motion-ready .care-photo img{transform:scale(1.07) translateY(var(--photo-y,0px));transition:none}.hero-portrait,.care-photo{overflow:hidden}
@media(prefers-reduced-motion:reduce){.motion-ready .hero-portrait img,.motion-ready .care-photo img{transform:none}.reading-progress{display:none}}
.reviews-section{background:linear-gradient(130deg,#f7f5ed,#fffefa);border-bottom:1px solid #e0e7d9}.reviews-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center;margin-bottom:42px}.reviews-heading h2{margin-bottom:0}.reviews-heading h2 em{color:#567148}.reviews-heading>p{max-width:410px;color:#6f7b6c;font-size:16px;line-height:1.8}.reviews-layout{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start}.reviews-empty{position:relative;padding:35px 36px 45px;background:#eaf0e2;border:1px solid #dce5d1;border-radius:25px;overflow:hidden}.review-quote{position:absolute;top:-8px;right:28px;font-family:Georgia,serif;font-size:180px;line-height:1;color:#c3d2b46b;pointer-events:none}.empty-stars{position:relative;display:block;font-size:27px;letter-spacing:4px;color:#71825d;margin-bottom:28px}.reviews-empty h3{position:relative;font-family:var(--serif);font-weight:500;font-size:32px;line-height:1.25;margin:0 0 20px}.reviews-empty p{color:#64715a;max-width:350px;font-size:15px;margin:0 0 24px;line-height:1.8}.reviews-note{color:#77816d;font-size:11px;line-height:1.7;margin:18px 10px}.review-form{background:#fff;padding:34px;border:1px solid #e0e6db;border-radius:25px;box-shadow:0 18px 50px #24351c09;display:grid;gap:18px}.review-form h3{font-family:var(--serif);font-size:28px;line-height:1.2;margin:0}.review-form .eyebrow{font-size:9px}.review-rating{margin:0;padding:0;border:0}.review-rating legend{font-size:12px;font-weight:700;margin-bottom:8px}.review-rating legend>span{font-weight:400;color:#6f7b6c}.rating-choices{display:flex;gap:7px}.rating-choices label{position:relative;cursor:pointer;display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid #e3e7dc;background:#f8f9f4;border-radius:9px;transition:background .2s,transform .2s,border-color .2s}.rating-choices input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.rating-choices label>span[aria-hidden]{font-size:28px;color:#cbd3c1;transition:color .2s}.rating-choices label:has(input:checked){outline:2px solid #607c42;outline-offset:2px}.rating-choices label:has(input:focus-visible){outline:3px solid #304b25;outline-offset:3px}.rating-choices label.selected{background:#fbf3df;border-color:#e2c889}.rating-choices label.selected>span[aria-hidden]{color:#b38b35}.rating-choices label:hover{transform:translateY(-2px)}.rating-caption{display:block;font-size:11px;color:#6f7b6c;margin-top:9px;min-height:18px}.rating-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.review-field{display:grid;gap:7px;font-size:12px;font-weight:700;color:#445043}.review-field input,.review-field textarea{width:100%;border:1px solid #dce4d6;border-radius:10px;background:#fafbf7;padding:12px 14px;color:#263820;font:inherit;font-size:14px;font-weight:400;resize:vertical}.review-field input:focus,.review-field textarea:focus{outline:2px solid #7f9873;outline-offset:2px}.review-consent{display:flex;align-items:flex-start;gap:9px;font-size:11px;line-height:1.6;color:#6f7b6c}.review-consent input{margin-top:3px;accent-color:#42603b;width:16px;height:16px;flex-shrink:0}.review-submit{line-height:1.4;padding:15px 18px;cursor:pointer}.review-form-note{font-size:11px;color:#6f7b6c;line-height:1.7;margin:0}.review-form #review-status{font-size:12px;margin:0;color:#42603b}.review-form #review-status:empty{display:none}.client-review{padding:28px;border:1px solid #dce5d1;border-radius:22px;background:#fff;margin-bottom:18px}.client-review .client-stars{color:#a98127;font-size:22px;letter-spacing:3px}.client-review blockquote{margin:15px 0 20px;font-size:16px;line-height:1.8;color:#445043}.client-review strong{font-size:13px;color:#30452b}.client-review small{display:block;color:#6f7b6c;font-size:11px;margin-top:4px}
@media(max-width:860px){.reviews-heading{gap:30px}.reviews-layout{gap:25px}.review-form{padding:26px}.reviews-empty{padding:28px}.reviews-empty h3{font-size:28px}}
@media(max-width:620px){.reviews-heading,.reviews-layout{grid-template-columns:1fr;gap:24px}.reviews-heading{margin-bottom:30px}.reviews-heading>p{margin:0}.review-form{padding:25px 21px}.rating-choices{gap:6px}.rating-choices label{min-width:42px}.review-form h3{font-size:27px}.reviews-empty{padding:28px 25px}.reviews-empty h3{font-size:29px}}
