:root{--ivory:#f1ede6;--paper:#faf8f5;--blush:#eed9df;--rose:#c7547b;--rose-text:#a83e62;--olive:#698140;--deep:#4f632f;--ink:#242424;--muted:#64645a;--line:#d9d4c9;--serif:"DM Serif Display",Georgia,serif;--sans:"Poppins",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid var(--rose-text);outline-offset:6px}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);line-height:1.07;letter-spacing:-.035em}em{font-family:var(--serif);font-weight:400}h2{font-size:clamp(2.25rem,4vw,3.65rem)}h2 em{color:var(--rose-text)}.wrap{width:min(1224px,calc(100% - 112px));margin-inline:auto}.section{padding:110px 0}.eyebrow{font-size:.75rem;font-weight:500;letter-spacing:.17em;line-height:1.5;margin-bottom:24px}.small-line{display:inline-block;vertical-align:middle;width:30px;height:1px;background:var(--rose);margin-right:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:58px;padding:15px 26px;border-radius:5px;background:var(--deep);color:#fff;font-size:.9375rem;line-height:1.5;font-weight:500;transition:background .2s,transform .2s}.button:hover{background:#3e5023;transform:translateY(-2px)}.button span,.text-link span,.header-contact span{font-size:1.4em;line-height:1}.text-link{display:inline-flex;align-items:center;gap:25px;min-height:44px;font-size:.9rem;font-weight:500;border-bottom:1px solid var(--deep);padding:10px 0;color:var(--deep)}.text-link:hover{color:var(--rose-text);border-color:var(--rose-text)}.skip{position:fixed;z-index:20;left:16px;top:-100px;padding:12px;background:#fff}.skip:focus{top:16px}
.header{background:var(--ivory);border-bottom:1px solid var(--line)}.header-inner{height:106px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;flex-direction:column;line-height:1.05;color:var(--deep);flex-shrink:0}.brand span{font-family:var(--serif);font-size:1.9rem;letter-spacing:-.025em}.brand small{font-family:var(--sans);font-size:.625rem;letter-spacing:.35em;margin-top:9px}.header nav{display:flex;gap:30px;font-size:.8125rem}.header nav a{padding:10px 0}.header nav a:hover{color:var(--rose-text)}.header-contact{display:flex;align-items:center;gap:18px;font-size:.8125rem;border:1px solid #9ba486;border-radius:4px;padding:11px 17px;color:var(--deep)}.header-contact:hover{background:#e2e6d8}
.hero{background:var(--ivory);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;min-height:720px;gap:18px}.hero-copy{position:relative;z-index:2;padding:61px 0 56px}.hero .eyebrow{color:var(--deep);font-size:.6875rem;margin-bottom:24px}.hero h1{font-size:clamp(3.25rem,5.25vw,4.75rem);line-height:1.04;letter-spacing:-.045em}.hero h1 em{color:var(--rose-text)}.hero-description{max-width:430px;font-size:1rem;line-height:1.85;margin:25px 0;color:#4e5048}.cta-caption{font-size:.75rem;margin-top:11px;color:var(--muted)}.hero-image{position:relative;margin-top:30px;min-width:0;isolation:isolate}.hero-image>img{position:absolute;height:calc(100% - 54px);width:calc(100% + 95px);max-width:none;object-fit:cover;object-position:78% center;border-radius:190px 0 0 0}.hero-image:after{position:absolute;content:"";inset:40% -95px 50px 0;z-index:1;background:linear-gradient(0deg,var(--ivory),transparent 50%);pointer-events:none}.photo-caption{position:absolute;left:-22px;bottom:91px;z-index:2;display:flex;align-items:center;gap:18px;padding:21px 25px;background:rgba(250,248,245,.95);border:1px solid rgba(217,212,201,.8);border-radius:3px}.caption-number{color:var(--rose);font-size:.75rem;align-self:flex-start}.photo-caption p{font-family:var(--serif);font-size:1.5rem;line-height:1.2}.photo-caption em{color:var(--rose-text)}.photo-label{position:absolute;left:0;right:0;bottom:27px;text-align:center;font-size:.625rem;letter-spacing:.18em;color:var(--muted)}.facts{background:#e5e7dc;border-top:1px solid #d8decd;border-bottom:1px solid #d8decd}.facts-inner{display:flex;justify-content:space-around;align-items:center;min-height:86px;gap:26px}.facts p{font-size:.8125rem;color:#424c35}.facts strong{font-weight:500}.fact-icon{margin-right:10px;color:var(--deep)}.fact-divider{width:1px;height:26px;background:#c6cdba}
.section-intro{text-align:center;max-width:780px;margin:auto}.section-intro .eyebrow{color:var(--deep)}.section-intro>p:last-child{color:var(--muted);max-width:630px;margin:25px auto 0}.recognition-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:61px;gap:46px}.recognition-grid article{border-top:1px solid var(--line);padding-top:25px}.item-index{font-size:.75rem;letter-spacing:.1em;color:var(--rose-text)}.recognition-grid h3{font-family:var(--serif);font-size:1.85rem;line-height:1.25;letter-spacing:-.02em;margin:24px 0 18px}.recognition-grid p{color:var(--muted);font-size:.9375rem;line-height:1.9}.recognition-note{border-top:1px solid var(--line);margin-top:45px;padding-top:25px;text-align:center;font-size:.875rem}.recognition-note span{color:var(--deep)}
.method{background:var(--ivory)}.method-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:90px}.method-heading>p:not(.eyebrow){max-width:370px;margin:25px 0 17px;color:var(--muted);font-size:.9375rem}.method-statement{display:flex;gap:18px;align-items:center;margin-top:44px;color:var(--deep)}.method-statement>span{font-family:var(--serif);font-size:5rem;height:65px;line-height:1}.method-statement p{font-family:var(--serif);font-size:1.6rem;line-height:1.25}.steps{padding-top:10px}details{border-bottom:1px solid #cfcbbf}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.steps details:first-child{border-top:1px solid #cfcbbf}.steps summary{display:flex;align-items:center;gap:20px;padding:28px 0}.step-number{font-family:var(--serif);font-size:2rem;color:var(--olive);width:44px;flex-shrink:0}.step-title{flex:1;min-width:0}.step-title strong{display:block;font-size:1.025rem;font-weight:500;line-height:1.5}.step-title small{display:block;font-size:.8125rem;color:var(--muted);margin-top:5px;line-height:1.6}.plus{width:18px;height:18px;position:relative;flex:0 0 18px;color:var(--deep)}.plus:before,.plus:after{content:"";position:absolute;top:8px;left:2px;width:14px;height:1px;background:currentColor}.plus:after{transform:rotate(90deg);transition:transform .2s}details[open] .plus:after{transform:rotate(0)}.step-body{padding:0 30px 28px 64px;color:var(--muted);font-size:.9375rem;line-height:1.9}.steps summary:hover .step-title strong{color:var(--deep)}
.about-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:100px;align-items:center}.about-photo{position:relative}.portrait-window{position:relative;aspect-ratio:1/1.03;overflow:hidden;border-radius:180px 180px 4px 4px;background:var(--blush)}.portrait-window img{position:absolute;width:596%;max-width:none;height:auto;left:-350%;top:-7.2%}.about-photo-caption{display:block;text-align:center;font-size:.6875rem;letter-spacing:.2em;margin-top:20px;color:var(--deep)}.about-copy .eyebrow{color:var(--deep)}.about-copy h2{font-size:clamp(2.5rem,4.3vw,4rem)}.about-copy .lead{font-family:var(--serif);font-size:1.5rem;line-height:1.4;color:#4e5048;margin:28px 0 20px}.about-copy>p:not(.eyebrow):not(.lead){color:var(--muted);font-size:.9375rem;margin-top:17px;max-width:460px}.signature{font-family:var(--serif);font-size:2rem;color:var(--rose-text);margin-top:26px;line-height:1}.signature small{font-family:var(--sans);font-size:.625rem;letter-spacing:.3em;display:block;margin-top:9px;color:var(--muted)}
.care{background:var(--blush);padding:80px 0}.care-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.care h2{font-size:clamp(2.4rem,3.7vw,3.35rem)}.care h2 em{color:#8c3654}.care-options article{display:flex;gap:24px;border-bottom:1px solid #cfb7bf;padding:23px 0}.care-options article:first-child{padding-top:0}.care-options article>span{font-size:.75rem;color:#8c3654;padding-top:4px}.care-options h3{font-weight:500;font-size:1rem}.care-options p{font-size:.875rem;color:#5e5357;margin-top:8px;line-height:1.9}.care-options .care-note{font-size:.75rem;margin-top:20px}
.faq-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.faq .eyebrow{color:var(--deep)}.faq h2{font-size:clamp(2.3rem,3.7vw,3.5rem)}.faq-grid>div>p:not(.eyebrow){margin:25px 0 16px;font-size:.9375rem;color:var(--muted)}.questions details:first-child{border-top:1px solid var(--line)}.questions summary{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:.9375rem;font-weight:500;line-height:1.65;padding:22px 0}.questions details>p{font-size:.875rem;color:var(--muted);line-height:1.9;padding:0 26px 23px 0}
.closing{background:var(--deep);color:var(--paper);padding:90px 0 95px;border-radius:100px 100px 0 0}.closing-inner{text-align:center}.closing .eyebrow{font-size:.6875rem;color:#e4e7dc}.closing h2{font-size:clamp(2.65rem,4.7vw,4.3rem)}.closing h2 em{color:#ecd1da}.closing-inner>p:not(.eyebrow){font-size:.9375rem;line-height:1.9;color:#e2e7d9;margin:25px 0 28px}.button-light{background:var(--ivory);color:var(--deep)}.button-light:hover{background:#fff}.closing-caption{display:block;font-size:.75rem;color:#d9dfcf;margin-top:14px}
.footer{background:var(--ivory)}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:47px}.footer-inner p{font-size:.8125rem;color:var(--muted)}.footer-inner>a:last-child{font-size:.875rem;display:flex;gap:15px;align-items:center}.footer-bottom{border-top:1px solid var(--line);padding-block:22px;display:flex;justify-content:space-between;gap:25px;font-size:.6875rem;color:var(--muted)}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header nav{gap:18px;font-size:.75rem}.hero-grid{min-height:665px}.hero h1{font-size:3.8rem}.hero-description{max-width:340px}.hero-image>img{object-position:77% center}.method-grid,.about-grid,.care-grid,.faq-grid{gap:50px}.recognition-grid{gap:30px}.recognition-grid h3{font-size:1.65rem}.photo-caption{left:0;padding:17px}.photo-caption p{font-size:1.3rem}}
@media(max-width:800px){.header nav{display:none}.header-inner{height:86px}.wrap{width:calc(100% - 44px)}.brand span{font-size:1.65rem}.brand small{font-size:.56rem}.header-contact{font-size:.75rem;padding:9px 12px;gap:9px}.hero-grid{gap:0;min-height:590px}.hero-copy{padding-top:40px}.hero h1{font-size:3rem}.hero .eyebrow{font-size:.625rem;max-width:200px}.hero-description{font-size:.9375rem;max-width:300px}.hero-image>img{width:calc(100% + 50px);object-position:77% center}.photo-caption{display:none}.photo-label{font-size:.55rem;bottom:29px}.button{font-size:.875rem;padding:15px 19px;gap:17px}.facts-inner{gap:15px}.facts p{font-size:.75rem}.section{padding:80px 0}.recognition-grid{gap:22px}.recognition-grid h3{font-size:1.5rem}.recognition-grid p{font-size:.875rem}.method-grid,.about-grid,.care-grid,.faq-grid{gap:35px}.step-title strong{font-size:.9375rem}.steps summary{gap:10px}.step-number{width:34px;font-size:1.6rem}.step-body{padding-left:44px;padding-right:0}.about-copy .lead{font-size:1.25rem}.closing{border-radius:65px 65px 0 0}.footer-bottom{flex-direction:column;gap:8px}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.header-inner{height:78px;gap:12px}.brand span{font-size:1.55rem}.brand small{font-size:.5rem;letter-spacing:.3em}.header-contact{font-size:.6875rem;min-height:42px;padding:9px 11px}.hero-grid{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:35px 0 0}.hero .eyebrow{max-width:none;font-size:.625rem;margin-bottom:19px}.hero h1{font-size:clamp(2.75rem,10.8vw,3.8rem);line-height:1.05;letter-spacing:-.04em}.hero h1 br:first-of-type{display:none}.desktop-break{display:none}.hero-description{font-size:.9375rem;line-height:1.8;max-width:400px;margin:21px 0}.hero .button{min-height:54px}.cta-caption{font-size:.6875rem;margin-top:9px}.hero-image{height:320px;margin-top:23px}.hero-image>img{width:calc(100% + 40px);height:320px;left:-20px;object-position:80% center;border-radius:90px 0 0 0}.hero-image:after{inset:40% -20px 0;background:linear-gradient(0deg,var(--ivory),transparent 60%)}.photo-label{z-index:2;bottom:11px;color:#55584f;font-size:.5625rem}.facts-inner{justify-content:center;gap:8px 23px;flex-wrap:wrap;padding:19px 0;min-height:0}.facts p{font-size:.6875rem}.facts p:last-child{flex-basis:100%;text-align:center}.fact-icon{margin-right:5px}.fact-divider{display:none}.section{padding:65px 0}.eyebrow{font-size:.6875rem;margin-bottom:18px}.section-intro{text-align:left}.section-intro h2 br{display:none}h2{font-size:2.45rem}.section-intro>p:last-child{font-size:.9375rem;margin-top:21px}.recognition-grid{display:block;margin-top:33px}.recognition-grid article{padding:22px 0}.item-index{font-size:.6875rem}.recognition-grid h3{font-size:1.7rem;line-height:1.2;margin:14px 0}.recognition-grid h3 br{display:none}.recognition-grid p{font-size:.9375rem;line-height:1.8}.recognition-note{text-align:left;margin-top:8px;padding-top:22px;font-size:.8125rem}.recognition-note span{display:block}.method-grid,.about-grid,.care-grid,.faq-grid{grid-template-columns:1fr;gap:35px}.method-heading>p:not(.eyebrow){font-size:.9375rem;max-width:none}.method-heading h2 br:last-of-type{display:none}.method-statement{display:none}.steps{padding-top:0}.steps summary{padding:22px 0;gap:13px}.step-number{width:32px;font-size:1.8rem}.step-title strong{font-size:.9375rem}.step-title small{font-size:.75rem}.step-body{padding:0 0 24px 45px;font-size:.875rem}.about-grid{gap:35px}.about-photo{max-width:380px;width:100%;margin:auto}.portrait-window{border-radius:130px 130px 3px 3px}.about-copy h2{font-size:3rem}.about-copy .lead{font-size:1.4rem}.about-copy .lead br{display:none}.about-photo-caption{font-size:.625rem;margin-top:14px}.about-copy>p:not(.eyebrow):not(.lead){font-size:.9375rem}.care-grid{gap:30px}.care h2{font-size:2.7rem}.care-options article{gap:18px}.care-options p{font-size:.875rem}.care-options .care-note{font-size:.75rem}.faq-grid{gap:35px}.faq h2{font-size:2.5rem}.faq-grid>div>p:not(.eyebrow){margin-top:20px}.questions summary{font-size:.875rem;gap:15px}.closing{padding:65px 0 60px;border-radius:45px 45px 0 0}.closing h2{font-size:clamp(2.25rem,9vw,3rem)}.closing .eyebrow{font-size:.625rem;max-width:240px;margin-inline:auto}.closing-inner>p:not(.eyebrow){font-size:.875rem}.closing-inner>p br{display:none}.button-light{font-size:.8125rem;width:100%;gap:12px;padding-inline:14px}.closing-caption{font-size:.6875rem}.footer-inner{align-items:flex-start;flex-wrap:wrap;padding-block:35px;gap:24px}.footer-inner .brand{flex-basis:100%}.footer-inner p{font-size:.75rem}.footer-inner>a:last-child{font-size:.8125rem}.footer-bottom{font-size:.625rem;line-height:1.7;padding-block:19px}.text-link{font-size:.8125rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Main reading text and controls retain comfortable sizes at every breakpoint. */
.hero-description,.recognition-grid p,.section-intro>p:last-child,.method-heading>p:not(.eyebrow),.step-body,.about-copy>p:not(.eyebrow):not(.lead),.care-options article p,.questions details>p,.faq-grid>div>p:not(.eyebrow),.closing-inner>p:not(.eyebrow){font-size:1rem}
.header nav,.header-contact,.text-link,.facts p,.step-title small,.recognition-note,.care-options .care-note{font-size:.875rem}
.step-title strong,.questions summary{font-size:1rem}
.portrait-window{aspect-ratio:1/.97}

/* Testimonials — scoped addition, approved layout retained. */
.testimonials{background:var(--paper);border-bottom:1px solid var(--line)}
.testimonials-heading{display:grid;grid-template-columns:1.4fr 1fr;align-items:end;gap:65px}
.testimonials-heading .eyebrow{color:var(--deep)}
.testimonials-heading>p{font-size:1rem;color:var(--muted);max-width:360px;padding-bottom:5px}
.testimonials-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:38px 0 20px;min-height:44px}
.testimonials-toolbar>p{font-size:.875rem;color:var(--muted)}
.testimonials-controls{display:flex;gap:15px;align-items:center}.testimonials-controls[hidden]{display:none}
.testimonials-controls button{width:44px;height:44px;border:1px solid #9ba486;border-radius:50%;background:transparent;color:var(--deep);font:1.3rem var(--sans);cursor:pointer;transition:background .2s}
.testimonials-controls button:hover:not(:disabled){background:#e5e7dc}.testimonials-controls button:disabled{opacity:.35;cursor:default}
.testimonials-controls button:focus-visible,.testimonials-track:focus-visible{outline:3px solid var(--rose-text);outline-offset:5px}
.testimonials-position{font-size:.875rem;color:var(--deep);min-width:48px;text-align:center;font-variant-numeric:tabular-nums}
.testimonials-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);gap:24px;list-style:none;padding:5px 0 20px;margin:0;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#9ba486 #e9e5dc}
.testimonial-card{min-width:0;scroll-snap-align:start;border:1px solid var(--line);border-radius:6px;background:#fff;overflow:hidden}
.testimonial-card>a{display:block}.testimonial-card>a:focus-visible{outline-offset:-4px}
.testimonial-image{aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;padding:12px;background:#fff}
.testimonial-image img{width:100%;height:100%;object-fit:contain}
.testimonial-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e6e1d9;background:var(--ivory);padding:16px 18px;color:var(--deep);font-size:.875rem}
.testimonial-caption>span:first-child{font-size:.75rem;letter-spacing:.12em}
.testimonial-card>a:hover .testimonial-caption{background:#e5e7dc}
.testimonials-note{font-size:.875rem;color:var(--muted);margin-top:17px}
@media(max-width:900px){.testimonials-heading{grid-template-columns:1fr;gap:22px}.testimonials-heading>p{max-width:560px}.testimonials-track{grid-auto-columns:calc((100% - 20px)/2);gap:20px}.testimonials-heading h2 br{display:none}}
@media(max-width:600px){.testimonials-heading{gap:20px}.testimonials-heading h2{font-size:2.35rem}.testimonials-toolbar{margin-top:25px;align-items:flex-start;gap:12px}.testimonials-toolbar>p{max-width:155px;font-size:.875rem}.testimonials-controls{gap:8px}.testimonials-position{min-width:40px}.testimonials-track{grid-auto-columns:88%;gap:16px}.testimonial-image{padding:10px}.testimonial-caption{padding:14px}.testimonials-note{font-size:.8125rem}}
