/* Shared product/company hierarchy and optically centred walkthrough labels. */
body.home-page a.button.walkthrough-cta,body.inner-page a.button.walkthrough-cta{display:inline-flex;align-items:center;justify-content:center;gap:0;padding:14px 24px;min-height:48px;font-family:var(--df-ui-font);font-size:14px;font-weight:600;line-height:1.2;letter-spacing:0;word-spacing:0;text-align:center;white-space:nowrap}
body .walkthrough-cta .walkthrough-label{display:block;margin:0;padding:0;line-height:1.2;letter-spacing:0;word-spacing:0}
.home-page .closing>img{filter:brightness(.95)}
.home-page .closing:after{background:linear-gradient(90deg,#09151ad6 0%,#09151a99 34%,#09151a2e 60%,#09151a0d 100%)}
/* Keep the closing invitation prominent over the photograph in every link state. */
body.home-page .closing a.button.walkthrough-cta,body.home-page .closing a.button.walkthrough-cta:visited{background:var(--lime,#e4f48b);color:var(--ink,#16232c)}
body.home-page .closing a.button.walkthrough-cta:hover{background:#d6e579;color:var(--ink,#16232c)}
body.home-page .closing a.button.walkthrough-cta:focus-visible{outline:2px solid #fff;outline-offset:4px}
body.home-page .nav-links>a.button.walkthrough-cta,body.inner-page .navlinks>a.button.walkthrough-cta{min-height:44px;padding:12px 19px;font-size:13px}
.footer.footer-v28{background:#f5f4ee;color:#16232c;padding:64px 0 24px;font-family:var(--df-ui-font);max-width:none;width:100%;margin:0}
.footer.footer-v28>.footer-shell{width:calc(100% - 128px);max-width:1360px;margin:0 auto}
.footer.footer-v28 .footer-grid{display:grid;grid-template-columns:minmax(300px,1fr) auto;gap:64px;align-items:start}
.footer.footer-v28 .footer-brand{min-width:0}
.footer.footer-v28 .footer-product{display:inline-flex;align-items:center;min-height:44px;line-height:0}
.footer.footer-v28 .footer-product-mark{display:block;width:110px;height:auto;max-width:100%;object-fit:contain}
.footer.footer-v28 .footer-tagline{font-size:16px;font-weight:450;line-height:1.5;color:#657078;max-width:330px;margin:12px 0 0}
.footer.footer-v28 .footer-company-lockup{display:flex;align-items:center;gap:12px;max-width:360px;margin-top:26px}
.footer.footer-v28 .footer-company-lockup>span{flex:none;color:#657078;font-size:13px;line-height:1.4}
.footer.footer-v28 .footer-company{display:block;flex:0 1 288px;min-width:0;line-height:0}
.footer.footer-v28 .footer-company-mark{display:block;width:288px;max-width:100%;height:auto;object-fit:contain}
.footer.footer-v28 .footer-navigation{display:grid;grid-template-columns:auto auto;gap:60px}
.footer.footer-v28 .footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0}
.footer.footer-v28 .footer-column h2{margin:0 0 11px;font-family:var(--df-ui-font);font-size:12px;font-weight:650;line-height:1.5;letter-spacing:.1em;text-transform:uppercase;color:#718076}
.footer.footer-v28 .footer-column a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:500;line-height:1.5;padding:7px 0}
.footer.footer-v28 .footer-column a:hover{color:#4b46c8}
.footer.footer-v28 .footer-legal{border-top:1px solid #d3d9d1;margin-top:42px;padding-top:22px}
.footer.footer-v28 .footer-legal p{font-size:12px;line-height:1.6;color:#657078;margin:0}
@media(max-width:1100px){
 .footer.footer-v28>.footer-shell{width:calc(100% - 70px)}
 .footer.footer-v28 .footer-grid{gap:40px;grid-template-columns:minmax(260px,1fr) auto}
 .footer.footer-v28 .footer-navigation{gap:34px}
}
@media(max-width:760px){
 .home-page .closing>img{object-position:30% center}
 body.home-page .nav-links>a.button.walkthrough-cta,body.inner-page .navlinks>a.button.walkthrough-cta{font-size:12px;min-height:44px;padding:11px 12px}
 .footer.footer-v28{padding:44px 0 24px}
 .footer.footer-v28>.footer-shell{width:calc(100% - 40px)}
 .footer.footer-v28 .footer-grid{grid-template-columns:minmax(0,1fr);gap:36px}
 .footer.footer-v28 .footer-navigation{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px}
 .footer.footer-v28 .footer-company-lockup{margin-top:24px}
 .footer.footer-v28 .footer-company{flex-basis:264px}
 .footer.footer-v28 .footer-company-mark{width:264px}
 .footer.footer-v28 .footer-legal{margin-top:30px;padding-top:20px}
}
@media(max-width:379px){
 body.home-page .nav-links>a.button.walkthrough-cta,body.inner-page .navlinks>a.button.walkthrough-cta{padding-inline:7px}
 .footer.footer-v28 .footer-navigation{gap:16px}
}
