/* Editorial refinement. All directional icons are monochrome SVG. */
:root{--plum:#402336;--ink:#372a32;--muted:#6b5d65;--line:#e0d5d8}
body{font-size:1rem;-webkit-font-smoothing:antialiased}
h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}
.skip-link{position:absolute;top:-100px;left:20px;background:var(--plum);color:#fff;padding:12px;z-index:100}
.skip-link:focus{top:10px}
.preview-bar{background:#efe7e8;color:#5c4552;font-size:.75rem;padding:7px 20px;line-height:1.5}
.preview-bar span{opacity:1}
header{max-width:1600px;margin:auto;height:96px;border-bottom:0;padding:0 5.5%}
.brand{width:180px;flex-shrink:0}
.brand-space{height:8px}
.brand-caption{font-size:.75rem;letter-spacing:.19em}
nav{font-size:.875rem;gap:28px}
.button{min-height:56px;padding:17px 25px;font-size:.9375rem;gap:28px;font-weight:500;box-shadow:0 4px 10px #40233608;transition:background .2s,box-shadow .2s}
.button:hover{transform:none;box-shadow:0 6px 18px #40233617}
.button.small{min-height:46px;font-size:.875rem;gap:20px}
.arrow-icon{display:block;width:21px;height:21px;flex:0 0 21px;vertical-align:middle}
.line-icon{display:block;width:26px;height:26px;flex:0 0 26px}
.button .arrow-icon{width:20px;height:20px;flex-basis:20px}
.hero{max-width:1600px;grid-template-columns:1.06fr 1fr;gap:34px;padding:12px 3% 0}
.hero-copy{padding:62px 6% 28px 5%;min-width:0}
.eyebrow{font-size:.75rem;letter-spacing:.13em;line-height:1.7;font-weight:500}
.hero .eyebrow{margin-bottom:28px}
.hero h1{font-size:clamp(4rem,6.6vw,6.5rem);line-height:1.04;letter-spacing:-.045em;margin-bottom:26px}
.hero h1 em{color:#85596f}
.hero-intro{font-size:1.0625rem;line-height:1.8;max-width:430px;margin-bottom:29px;color:#6b5d65}
.hero-copy>.fine{font-size:.75rem;margin:18px 0 32px;line-height:1.75}
.hero-image{border-radius:160px 5px 5px 5px;min-height:660px}
.hero-image img{object-position:50% 40%}
.image-note{font-size:clamp(2rem,3vw,3.125rem);left:38px;bottom:46px;letter-spacing:-.02em}
.image-note span{font-size:.875rem;font-family:var(--sans);letter-spacing:.02em;margin-bottom:10px}
.photo-label{font-size:.75rem;right:18px;bottom:12px}
.hero-assurance{width:100%;margin-top:auto;padding:22px 0 0;border-top:1px solid var(--line);display:flex;align-items:center;gap:15px}
.hero-assurance>span{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.hero-assurance strong{font-weight:500;font-size:.875rem}
.hero-assurance>span>span{font-size:.75rem;color:var(--muted)}
.hero-assurance>.line-icon{width:30px;height:30px;flex-basis:30px;color:#805d71}
.hero-assurance>.arrow-icon{width:18px;flex-basis:18px}
.principles{max-width:1504px;margin:38px auto 0;padding:30px 4%;justify-content:space-between;gap:35px;border-top:0;border-bottom:1px solid var(--line)}
.principles>div{display:flex;align-items:center;gap:17px}
.principles .line-icon{color:#88677a}
.principles span{font-size:.875rem;font-weight:500;line-height:1.6}
.principles small{font-size:.75rem;font-weight:400;color:var(--muted)}
.section{padding:110px 7.5%;max-width:1504px}
.intro{column-gap:12%;align-items:start}
.intro h2{font-size:clamp(2.8rem,4.3vw,4.25rem);line-height:1.09}
.intro-right{padding-top:3px}
.intro-right p{font-size:1rem;line-height:1.9;margin-bottom:20px}
.text-link{font-size:.875rem;gap:18px;padding-bottom:8px;line-height:1.6;background:none;color:inherit;text-align:left}
.text-link .arrow-icon{width:18px;height:18px;flex-basis:18px}
.care-section{padding:74px 4.5%;max-width:94%;background:#f1e9e7;border-radius:6px}
.section-heading{margin-bottom:44px;gap:45px}
.section-heading h2{font-size:clamp(2.8rem,4.2vw,4.125rem);line-height:1.09}
.outline-label{font-size:.75rem;padding:9px 15px;letter-spacing:.03em}
.care-grid{grid-template-columns:1fr 1fr;gap:24px}
.care-card{padding:39px;border-radius:5px}
.main-card{background:#402336}
.main-card h3{font-size:3.25rem;line-height:1.09;margin-top:6px}
.main-card>p{font-size:1rem;line-height:1.85;opacity:1;color:#eadde3}
.card-top{font-size:.75rem;letter-spacing:.055em;gap:16px;line-height:1.7}
.pill{font-size:.75rem;line-height:1.5;padding:5px 10px;letter-spacing:0}
.card-detail{font-size:.875rem;line-height:1.6}
.card-detail span:last-child{text-align:right;color:#e4d0db}
.main-card .button{margin-top:auto}
.main-card .card-detail:last-of-type{margin-bottom:30px}
.main-card .fine{font-size:.75rem}
.support-cards{gap:24px}
.support-cards h3{font-size:2.625rem;line-height:1.08}
.support-cards p{font-size:.9375rem;line-height:1.85}
.rose{background:#e7cbc9}
.cream{background:#fffcf7}
.section-aside{font-size:.875rem;line-height:1.8}
.steps{gap:34px;margin-top:55px}
.step-number{font-size:2.5rem;color:#825e72}
.steps h3{font-size:1.0625rem;line-height:1.5}
.steps p{font-size:.9375rem;line-height:1.85}
.how-note{font-size:.75rem;line-height:1.8}
.standards{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;background:#eee5e6;max-width:94%;padding:76px 5%;border-radius:6px;margin-bottom:88px}
.standards h2{font-size:clamp(2.8rem,4.2vw,4.125rem);line-height:1.08}
.standards-heading>p:not(.eyebrow){color:var(--muted);font-size:1rem;line-height:1.85;max-width:380px}
.standards-list article{display:flex;gap:22px;padding:27px 0;border-bottom:1px solid #d3bfc8}
.standards-list article:first-child{padding-top:0}
.standards-list article:last-child{border-bottom:0;padding-bottom:0}
.standard-index{font-size:.75rem;letter-spacing:.08em;color:#815e70;padding-top:5px}
.standards-list h3{font-family:var(--sans);font-size:1.125rem;font-weight:500;line-height:1.5;letter-spacing:-.02em;margin-bottom:9px}
.standards-list p{font-size:.9375rem;line-height:1.85;color:var(--muted);margin:0}
.statement{padding:88px 20px 92px}
.statement h2{line-height:1.06;font-size:clamp(3.5rem,6vw,5.5rem)}
.statement p:not(.eyebrow){line-height:1.85;font-size:1rem}
.faq h2{font-size:clamp(2.8rem,4.1vw,4rem);line-height:1.1}
.faq>div>p:not(.eyebrow){font-size:1rem;line-height:1.85}
details{padding:24px 0}
summary{font-size:1rem;line-height:1.6}
summary:after{font-size:1.25rem;flex-shrink:0}
details p{font-size:.9375rem;line-height:1.85}
.closing{padding:84px 20px 80px}
.closing h2{font-size:clamp(2.8rem,4.5vw,4.375rem);line-height:1.1}
footer{padding:55px 6% 25px}
.footer-top{margin-bottom:32px}
.footer-links{gap:22px}
.footer-links button{font-size:.875rem;min-height:44px}
.footer-bottom{font-size:.75rem}
dialog{padding:48px;border-radius:10px}
.dialog-close{width:44px;height:44px;top:8px;right:8px;line-height:1}
dialog p{font-size:1rem;line-height:1.8}
dialog h2{font-size:2.625rem;line-height:1.1}
dialog .eyebrow{font-size:.75rem}
@media(min-width:1600px){.care-section,.standards{max-width:1504px}.hero-image{min-height:690px}}
@media(max-width:1100px){
header{padding:0 4%;gap:20px}header nav{gap:20px}.brand{width:145px}
.hero-copy{padding:45px 4% 25px}.hero h1{font-size:clamp(3.5rem,6.8vw,5.5rem)}
.hero-image{min-height:610px}.hero{gap:22px}.hero-intro{font-size:1rem}
.principles{gap:20px;padding:26px 4%}.principles>div{gap:12px}.principles span{font-size:.8125rem}
.care-card{padding:28px}.main-card h3{font-size:2.75rem}.card-top{flex-wrap:wrap;margin-bottom:28px}
.main-card .button{gap:16px}.section{padding:82px 6%}.care-section{padding:58px 4%}.standards{padding:58px 5%;gap:7%}
}
@media(max-width:850px){
header nav{display:none}.menu-button{display:flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;padding:0}
header .button{margin-left:auto}.mobile-nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:0}
.mobile-nav a{font-size:1rem;padding:13px 0}.principles{gap:20px}.principles .line-icon{display:none}
.standards{gap:6%}.care-card{padding:25px}
}
@media(max-width:760px){
html{scroll-padding-top:24px}.preview-bar{font-size:.75rem;padding:7px 16px}.preview-bar span{display:none}
header{height:78px;padding:0 5%;gap:12px}.brand{width:auto;min-width:0}.brand-caption{font-size:.6875rem;letter-spacing:.1em}
.brand-space{height:0}header .button{min-height:44px;font-size:.8125rem;padding:12px 16px;gap:12px;white-space:nowrap}
header .button .arrow-icon{width:17px;height:17px;flex-basis:17px}
.hero{display:flex;flex-direction:column;gap:0;padding:0}
.hero-copy{padding:37px 7% 27px}
.hero .eyebrow{font-size:.75rem;margin-bottom:20px;letter-spacing:.1em}
.hero h1{font-size:clamp(3.2rem,12.3vw,5.2rem);line-height:1.045;margin-bottom:24px;letter-spacing:-.04em}
.hero-intro{font-size:1rem;line-height:1.8;margin-bottom:25px;max-width:33rem}
.hero-copy>.button{min-width:228px;min-height:54px}
.hero-copy>.fine{font-size:.75rem;line-height:1.65;margin:15px 0 22px}
.hero-assurance{padding-top:18px;gap:12px}.hero-assurance strong{font-size:.875rem}.hero-assurance>span>span{font-size:.75rem}
.hero-image{margin:0 5%;min-height:0;height:auto;aspect-ratio:4/4.5;border-radius:90px 5px 5px 5px}
.hero-image img{object-position:center 35%}
.image-note{left:25px;bottom:40px;font-size:2.25rem}
.image-note span{font-size:.8125rem;margin-bottom:8px}.photo-label{font-size:.75rem;bottom:10px;right:15px}
.principles{display:flex;flex-direction:column;margin:25px 7% 0;padding:0 0 25px;gap:18px}
.principles>div{gap:15px}.principles .line-icon{display:block;width:23px;height:23px;flex-basis:23px}
.principles span{font-size:.875rem}.principles small{font-size:.75rem}
.section{padding:64px 7%}.intro{display:block}.intro h2{font-size:2.875rem;margin-bottom:25px;line-height:1.08}
.intro-right p{line-height:1.85}.intro .eyebrow{margin-bottom:22px}
.text-link{font-size:.875rem;min-height:44px}
.care-section{padding:43px 6%;max-width:94%}.section-heading{margin-bottom:28px}
.section-heading h2{font-size:2.8125rem;line-height:1.08}
.section-heading p:last-child{font-size:.9375rem}
.outline-label{font-size:.75rem;letter-spacing:0;margin-top:22px}
.care-grid{display:flex;flex-direction:column;gap:18px}.support-cards{gap:18px}
.care-card{padding:28px 24px}.card-top{font-size:.75rem;line-height:1.6;margin-bottom:27px;gap:12px}
.main-card h3{font-size:2.625rem;line-height:1.1}.main-card>p{font-size:.9375rem}
.main-card .button{margin-top:10px;font-size:.875rem;padding:16px 20px;gap:15px}
.card-detail{font-size:.8125rem;gap:10px}.card-detail span{min-width:0}
.support-cards h3{font-size:2.375rem}.support-cards p{font-size:.9375rem}
.section-aside{max-width:100%;margin-top:20px!important}
.steps{display:flex;flex-direction:column;gap:0;margin-top:32px}
.steps article{display:grid;grid-template-columns:45px 1fr;column-gap:18px;border-top:1px solid var(--line);padding:25px 0}
.step-number{grid-row:1/3;border:0;margin:0;padding:0;font-size:2rem;line-height:1.25}
.steps h3{margin:0 0 9px;font-size:1.0625rem}.steps p{grid-column:2;margin:0;font-size:.9375rem}
.how-note{margin-top:5px;padding-top:20px}
.standards{display:block;max-width:94%;padding:43px 6%;margin-bottom:60px}
.standards h2{font-size:2.875rem}.standards-heading>p:not(.eyebrow){font-size:.9375rem;max-width:none}
.standards-list{margin-top:34px}.standards-list article{gap:16px;padding:23px 0}
.standards-list h3{font-size:1.0625rem}.standards-list p{font-size:.9375rem}
.statement{padding:65px 7%}.statement h2{font-size:3.5rem;line-height:1.08}.statement .eyebrow{font-size:.75rem}
.statement .button{font-size:.875rem;gap:20px;padding:17px 22px}
.faq{display:block}.faq h2{font-size:2.875rem}.faq>div>p:not(.eyebrow){max-width:100%}
.faq-list{margin-top:32px}summary{font-size:1rem}details{padding:22px 0}details p{margin-right:0;font-size:.9375rem}
.closing{padding:60px 7%}.closing h2{font-size:2.75rem;line-height:1.1}
.closing .eyebrow{font-size:.75rem}.closing>.fine{font-size:.75rem}
footer{padding:42px 7% 25px}.footer-top{gap:22px;margin-bottom:24px}.footer-top .brand-caption{font-size:.75rem}
.footer-links{gap:4px 20px}.footer-links button{font-size:.875rem}
.footer-bottom{font-size:.75rem;flex-direction:column;gap:8px}
dialog{padding:44px 25px 30px;width:calc(100% - 32px);max-height:85dvh}dialog h2{font-size:2.25rem}dialog .button{width:100%;justify-content:center}
}
@media(max-width:370px){
header{gap:5px;padding:0 4%}.brand-caption{font-size:.625rem;letter-spacing:.03em}header .button{font-size:.75rem;padding:11px 12px;gap:7px}.menu-button{min-width:38px;width:38px}
.hero h1{font-size:3.2rem}.hero-copy{padding-left:6%;padding-right:6%}
.care-card{padding:25px 19px}.card-detail{font-size:.75rem}.main-card h3{font-size:2.4rem}.image-note{font-size:2rem}
}
@media(prefers-reduced-motion:reduce){.button{transition:none}html{scroll-behavior:auto}}
