/* Exact layout rules from the approved social service page. */
.wrap{width:95%;max-width:1500px;margin-inline:auto}
header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 2.5%;background:#ffffffeb;backdrop-filter:blur(10px);min-height:74px}
header nav{display:flex;gap:32px;font-size:15px}
.logo{width:106px;height:auto}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;background:var(--accent);color:var(--ink);padding:19px 24px;border-radius:var(--radius);font-size:16px;transition:background .2s,color .2s}
.button:hover{background:var(--ink);color:white}
.button span{font-size:23px;line-height:1}
.button.small{padding:13px 18px;font-size:15px}
.dark{background:var(--ink);color:white}
.dark:hover{background:var(--accent);color:var(--ink)}
.hero{padding-top:58px}
.eyebrow{display:flex;gap:14px;font-size:14px;color:var(--muted)}
.hero-title{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin:35px 0 45px}
h1{font-size:clamp(46px,5.7vw,84px);line-height:1.04;letter-spacing:-.045em}
.hero-title>p{font-size:18px;line-height:1.35;flex-shrink:0;padding-bottom:6px}
.hero-bottom{display:grid;grid-template-columns:1fr 1.03fr;gap:7vw;align-items:center}
.hero-copy{max-width:505px;padding:30px 0}
.hero-copy .lead{font-size:clamp(24px,2.25vw,34px);line-height:1.25;letter-spacing:-.02em}
.hero-copy>p+p{font-size:18px;line-height:1.5;color:var(--muted);margin-top:24px;max-width:460px}
.hero-copy .button{margin-top:32px}
.section{padding-top:112px;padding-bottom:20px}
.section-head{display:grid;grid-template-columns:27% 1fr;gap:20px;align-items:start}
.section-label{font-size:15px;color:var(--accent);line-height:1.45;padding-top:7px}
@media(max-width:1000px){header nav{gap:18px}
.hero-title{display:block}
.hero-title>p{margin-top:25px}
.hero-bottom{gap:35px}
.section-head{grid-template-columns:1fr}
.section-label{margin-bottom:15px}}
@media(max-width:650px){.wrap{width:calc(100% - 36px)}
header{padding:13px 18px;min-height:68px;gap:12px}
header nav{display:none}
.logo{width:92px}
.button.small{font-size:14px;padding:12px;gap:14px}
.hero{padding-top:30px}
.eyebrow{font-size:13px}
.hero-title{margin-top:26px;margin-bottom:20px}
h1{font-size:clamp(39px,10vw,62px);line-height:1.06}
.hero-title>p{font-size:16px;margin-top:20px}
.hero-bottom{grid-template-columns:1fr;gap:25px}
.hero-copy{padding:0}
.hero-copy .lead{font-size:24px}
.hero-copy>p+p{font-size:16px;margin-top:18px}
.hero-copy .button{margin-top:23px}
.section{padding-top:70px}
.contact-bottom .button{margin-top:28px;width:100%;gap:10px}}
.wrap{max-width:1440px;width:92%}
.section{padding-top:140px}
.hero{padding-top:62px}
.hero-title{margin-bottom:64px}
.hero-bottom{grid-template-columns:1fr 1.16fr;gap:7vw;min-height:570px}
.hero-copy{padding:0}
.hero-art{position:relative;padding:0 0 48px 10%;min-width:0}
.hero-main{width:100%;display:block}
.hero-main img{width:100%;height:auto;object-fit:contain}
.section-head{grid-template-columns:23% minmax(0,1fr);gap:24px}
@media(max-width:1000px){.wrap{width:92%}
.hero-title{margin-bottom:42px}
.hero-bottom{gap:4vw;min-height:0}
.hero-art{padding-left:5%}
.section{padding-top:100px}}
@media(max-width:650px){.wrap{width:calc(100% - 36px)}
.hero{padding-top:35px}
.hero-title{margin-bottom:26px}
.hero-bottom{grid-template-columns:1fr;gap:35px}
.hero-art{padding:0 0 35px 11%;margin-top:10px}
.section{padding-top:80px}
.section-head{gap:12px}}
.eyebrow{flex-wrap:wrap;row-gap:8px}