.footer { background: black; border-top: 1px #282828 solid; padding: 64px 0; width: 100%; }
.footer_inner { max-width: 1280px; margin: 0 auto; width: 100%; display: flex; flex-direction: column; gap: 80px; }
.footer_logo { color: white; font-size: 48px; font-family: 'Google Sans Flex', sans-serif; font-weight: 500; }
.footer_content { display: flex; justify-content: flex-start; padding: 0 24px; gap: clamp(100px, 16.5vw, 238px); }
.footer_left { flex: 1; max-width: 432px; }
.footer_right { flex: 1; display: flex; justify-content: space-between; gap: 32px; max-width: 514px; }
.footer_newsletter { display: flex; flex-direction: column; gap: 16px; }
.footer_newsletter_header { display: flex; flex-direction: column; gap: 16px; }
.footer_section_title { color: white; font-size: 14px; font-family: 'Google Sans Flex', sans-serif; font-weight: 600; }
.footer_newsletter_label { color: #979B9F; font-size: 14px; font-family: 'Google Sans Flex', sans-serif; font-weight: 400; }
.footer_newsletter_form { display: flex; flex-direction: column; gap: 8px; }
.footer_input_wrapper { display: flex; flex-direction: column; gap: 4px; }
.footer_email_input { width: 100%; background: transparent; border: none; border-bottom: 1px solid white; padding: 8px 10px 8px 0; color: white; font-size: 14px; font-family: 'Google Sans Flex', sans-serif; outline: none; }
.footer_email_input::placeholder { color: #979B9F; }
.footer_newsletter_submit { display: flex; align-items: center; gap: 16px; }
.footer_checkbox_wrapper { display: flex; align-items: center; gap: 8px; cursor: pointer; flex: 1; }
.footer_checkbox_input { display: none; }
.footer_checkbox_box { width: 24px; height: 24px; background: #000; flex-shrink: 0; transition: background 0.3s; position: relative; border: 1px solid #979B9F; }
.footer_checkbox_input:checked + .footer_checkbox_box { background: black; border-color: white; }
.footer_checkbox_input:checked + .footer_checkbox_box::after { content: ''; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -60%) rotate(45deg); width: 6px; height: 12px; border: solid white; border-width: 0 2px 2px 0; }
.footer_checkbox_label { color: #979B9F; font-size: 14px; font-family: 'Google Sans Flex', sans-serif; font-weight: 400; max-width: 290px; }
.footer_submit_btn { padding: 8px 16px; background: #E2E6EA; border-radius: 6px; border: none; color: black; font-size: 14px; font-family: 'Google Sans Flex', sans-serif; font-weight: 500; cursor: pointer; transition: background 0.3s; white-space: nowrap; }
.footer_submit_btn:hover { background: #fff; }
.footer_links_col { display: flex; flex-direction: column; gap: 16px; }
.footer_links_list { display: flex; flex-direction: column; gap: 8px; }
.footer_link { color: #979B9F; font-size: 14px; font-family: 'Google Sans Flex', sans-serif; font-weight: 400; text-decoration: none; transition: color 0.3s; display: flex; align-items: center; gap: 4px; }
.footer_link:hover { color: white; }
.footer_link_external svg { transition: stroke 0.3s; }
.footer_link_external:hover svg path { stroke: white; }
.footer_copyright { color: #65696D; font-size: 10px; font-family: 'Google Sans Flex', sans-serif; font-weight: 400; }

@media (max-width: 1024px) {
  .footer_content { flex-direction: column; gap: 40px; }
  .footer_left { max-width: 100%; }
  .footer_right { max-width: 100%; flex-wrap: wrap; }
}

@media (max-width: 768px) {
  .footer { padding: 40px 0; }
  .footer_inner { gap: 40px; }
  .footer_content { padding: 0 20px; }
  .footer_newsletter_submit { flex-direction: column; align-items: flex-start; }
  .footer_submit_btn { width: 100%; }
  .footer_right { flex-direction: column; gap: 24px; }
}

@media (max-width: 480px) {
  .footer_logo { font-size: 36px; }
  .footer_checkbox_label { max-width: 100%; }
}