/* A quiet, personal close with a usable navigation hierarchy. */
footer.ysm-footer{background:#182a23;color:#eef2e9;padding:64px 0 24px;border-top:0;font-family:'DM Sans',sans-serif}
.ysm-footer .ysm-footer-inner{width:min(1160px,calc(100% - 80px));margin:auto}
.ysm-footer .ysm-footer-top{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;padding-bottom:42px;border-bottom:1px solid #405249}
.ysm-footer a{color:inherit;text-decoration:none;display:inline-block;margin:0;max-width:100%;overflow-wrap:anywhere}
.ysm-footer .ysm-footer-logo{font-family:Manrope,sans-serif;font-size:clamp(23px,3vw,33px);font-weight:750;letter-spacing:-1.2px;line-height:1.25}
.ysm-footer-logo span{color:#b8e873}
.ysm-footer .ysm-footer-brand>p{font-size:15px;line-height:1.65;color:#c9d4c9;margin:12px 0 24px;max-width:35ch}
.ysm-footer-person{display:flex;gap:12px;align-items:center}
.ysm-footer-person>span{display:grid;place-items:center;width:42px;height:42px;border:1px solid #607362;border-radius:50%;font-size:11px;letter-spacing:1px;color:#cfe3bd}
.ysm-footer-person strong{font-size:14px;font-weight:500;display:block}.ysm-footer-person small{display:block;font-size:12px;color:#b4c3b8;margin-top:5px;line-height:1.6}
.ysm-footer .ysm-footer-contact{justify-self:end;max-width:360px;width:100%}
.ysm-footer-contact>p{font:500 clamp(21px,2.4vw,28px)/1.35 Manrope,sans-serif;letter-spacing:-.6px;margin:0 0 22px;color:#eef2e9}
.ysm-footer .ysm-footer-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#c8eaa0;color:#182a23;padding:15px 20px;min-height:54px;border-radius:5px;font-size:14px;font-weight:650;transition:background .18s ease}
.ysm-footer .ysm-footer-cta:hover{background:#dcf4bd}.ysm-footer-cta span{font-size:22px;line-height:1}
.ysm-footer .ysm-footer-email{color:#c9d4c9;font-size:13px;min-height:44px;padding-top:17px;line-height:1.5}
.ysm-footer .ysm-footer-nav{display:grid;grid-template-columns:1fr 1fr 1fr;gap:48px;padding:36px 0 38px;background:none;position:static;box-shadow:none;border:0}
.ysm-footer .ysm-footer-group h2{font:650 12px/1.5 'DM Sans',sans-serif;letter-spacing:.09em;text-transform:uppercase;color:#aecaad;margin:0 0 12px;max-width:none}
.ysm-footer ul{padding:0;margin:0;list-style:none}.ysm-footer li{padding:0;margin:0;border:0}
.ysm-footer .ysm-footer-group a{font-size:14px;line-height:1.5;min-height:44px;padding:10px 0;color:#e2e9df;transition:color .18s ease}
.ysm-footer .ysm-footer-group a:hover,.ysm-footer .ysm-footer-email:hover{color:#c8eaa0;text-decoration:underline;text-underline-offset:5px}
.ysm-footer-bottom{border-top:1px solid #405249;padding-top:18px;display:flex;justify-content:space-between;align-items:center;gap:16px;color:#b4c3b8}
.ysm-footer-bottom small{font-size:12px}.ysm-footer .ysm-footer-bottom a{font-size:12px;min-height:44px;display:flex;align-items:center}
.ysm-footer a:focus-visible{outline:2px solid #c8eaa0;outline-offset:5px;border-radius:3px}
@media(max-width:800px){.ysm-footer .ysm-footer-inner{width:calc(100% - 48px)}.ysm-footer .ysm-footer-top{gap:32px}.ysm-footer .ysm-footer-nav{gap:24px}}
@media(max-width:600px){footer.ysm-footer{padding:40px 0 20px}.ysm-footer .ysm-footer-inner{width:calc(100% - 40px)}.ysm-footer .ysm-footer-top{grid-template-columns:1fr;gap:30px;padding-bottom:30px}.ysm-footer .ysm-footer-contact{justify-self:start;max-width:none}.ysm-footer .ysm-footer-nav{grid-template-columns:1fr 1fr;gap:28px 18px;padding:28px 0}.ysm-footer-group:last-child{grid-column:1/-1}.ysm-footer-group:last-child ul{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.ysm-footer .ysm-footer-group a{font-size:13px;line-height:1.6}.ysm-footer-bottom{align-items:flex-start;flex-direction:column;gap:4px}.ysm-footer-logo{letter-spacing:-.8px}}
@media(prefers-reduced-motion:reduce){.ysm-footer a{transition:none}}

.ysm-footer .ysm-footer-contact{align-self:center}.ysm-footer .ysm-footer-contact-label{font:650 12px/1.5 'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.09em;color:#aecaad;margin:0}.ysm-footer .ysm-footer-email{padding-top:12px;font-size:15px}
