.footer { position: relative; background: #211c18; color: #342112; font-family: Inter, ui-sans-serif, system-ui, sans-serif; border: 0; }
.footer__wave { display: block; width: 100%; height: clamp(76px, 9vw, 130px); overflow: hidden; margin-bottom: -1px; }
.footer__surface { background: #ff9525; }
.footer-container { max-width: 1400px; margin: auto; padding: 30px 48px 24px; }
.footer-content { display: grid; grid-template-columns: 1.5fr 1fr; gap: 80px; padding-bottom: 70px; }
.footer__eyebrow, .footer-title { font-size: 11px; letter-spacing: .13em; font-weight: 600; text-transform: uppercase; }
.footer__eyebrow { margin-bottom: 24px; }
.footer__headline-stage { perspective: 1000px; }
.footer__headline { font-size: clamp(40px, 6vw, 86px); line-height: 1.03; letter-spacing: -.055em; font-weight: 800; }
.footer__line { display: block; overflow: hidden; padding-block: .08em; margin-block: -.08em; perspective: 800px; }
.footer__line-text { display: block; transform-origin: 50% 100%; }
.footer__line--accent { color: #fff8ec; }
.footer-email { display: inline-flex; align-items: center; gap: 28px; margin-top: 30px; color: #342112; text-decoration: none; font-size: clamp(16px, 1.5vw, 22px); border-bottom: 1px solid #34211270; padding-bottom: 12px; }
.footer-email span { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: #342112; color: #fff8ec; transition: transform 180ms ease-out; }
.footer-email:hover span { transform: rotate(45deg); }
.footer-socials { padding-top: 40px; max-width: 360px; justify-self: end; width: 100%; }
.footer__note { font-size: clamp(22px, 2.3vw, 32px); font-weight: 600; line-height: 1.3; letter-spacing: -.025em; margin-bottom: 36px; }
.footer-title { margin-bottom: 14px; opacity: .7; }
.social-icons { display: grid; grid-template-columns: 1fr 1fr; column-gap: 26px; }
.social-icon { display: flex; align-items: center; justify-content: space-between; min-height: 46px; border-bottom: 1px solid #34211230; color: #342112; text-decoration: none; font-size: 14px; }
.social-icon span { transition: transform 180ms ease-out; }
.social-icon:hover span { transform: translate(3px, -3px); }
.footer__bottom { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-top: 24px; border-top: 1px solid #34211240; }
.footer__brand { font-size: 42px; font-weight: 900; letter-spacing: -.065em; text-decoration: none; color: inherit; line-height: 1; }
.footer__brand span { font-size: 14px; display: inline-block; vertical-align: top; margin-left: 6px; }
.footer__bottom p { font-size: 11px; opacity: .7; }
.footer__top { display: inline-flex; align-items: center; gap: 16px; min-height: 44px; color: inherit; font-size: 12px; font-weight: 600; text-decoration: none; }
.footer a:focus-visible { outline: 2px solid #342112; outline-offset: 5px; border-radius: 2px; }
@media (max-width: 767px) {
    .footer-container { padding: 16px 24px 24px; }
    .footer-content { grid-template-columns: 1fr; gap: 36px; padding-bottom: 36px; }
    .footer__headline { font-size: clamp(40px, 11vw, 72px); }
    .footer-socials { padding-top: 0; max-width: none; justify-self: start; }
    .footer__note { font-size: 22px; margin-bottom: 24px; }
    .footer__bottom { flex-wrap: wrap; gap: 12px 20px; }
    .footer__bottom p { order: 3; width: 100%; }
    .footer__brand { font-size: 36px; }
    .footer__top { margin-left: auto; }
}
@media (prefers-reduced-motion: reduce) { .footer a span { transition: none; } }
