/* ================== Footer Styles ================== */

/* Footer row layout */
.uv-footer-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

/* Footer navigation */
.uv-footer-nav {
  display: flex;
  gap: 16px;
  align-items: center;
  flex-wrap: wrap;
}

.uv-footer-nav a {
  color: var(--uv-text);
  text-decoration: none;
  padding: 4px 8px;
  border-radius: 6px;
  transition: background 0.2s ease, color 0.2s ease;
}

.uv-footer-nav a:hover {
  background: rgba(124, 58, 237, 0.1);
  color: var(--uv-primary);
}

/* Footer right section */
.uv-footer-right {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}

.uv-footer-socials {
  display: flex;
  gap: 10px;
}

.uv-footer-social-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  transition: transform 0.2s ease;
}

.uv-footer-social-icon:hover {
  transform: translateY(-2px);
}

.uv-footer-social-icon img {
  width: 20px;
  height: 20px;
  object-fit: contain;
}

/* ================== Footer Styles ================== */

/* Footer variables (inherited from header) */
:root {
  --uv-header-bg-light: linear-gradient(180deg, rgba(255,255,255,0.62), rgba(250,250,250,0.40));
  --uv-header-border-light: rgba(255,255,255,0.35);
  --uv-header-radius: 14px;
  --uv-header-padding-x: 24px;
}

:root.uv-dark {
  --uv-header-bg-dark: linear-gradient(180deg, rgba(12,16,22,0.62), rgba(8,12,18,0.38));
  --uv-header-border-dark: rgba(255,255,255,0.08);
}

/* Footer anchor */
#contacts.contacts-anchor {
  position: relative;
  scroll-margin-top: calc(var(--uv-header-height) + var(--uv-header-margin) * 2);
  height: 20px;
  margin: 20px 0;
  padding: 0;
  display: block;
  background: transparent;
}

/* единый зазор от краёв */
:root{ --uv-edge-gap: clamp(12px, 2vw, 1cm); }

/* футер как полноширинный «стеклянный» блок */
.uv-footer,
.wp-block-group.alignfull.uv-footer,
.wp-block-group.alignfull.uv-footer.uv-glass {
  position: relative;

  /* центрирование — не зависит от .wp-site-blocks */
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%);

  /* ширина = окно минус зазоры */
  width: calc(100vw - (2 * var(--uv-edge-gap))) !important;
  max-width: none !important;

  /* внешние отступы только по вертикали */
  margin: 40px 0 18px !important;

  /* внутренние поля симметрично */
  padding: 0 var(--uv-header-padding-x) !important;

  /* оформление */
  background: var(--uv-header-bg-light) !important;
  border: 1px solid var(--uv-header-border-light) !important;
  border-radius: var(--uv-header-radius) !important;
  backdrop-filter: blur(25px) saturate(200%) !important;
  -webkit-backdrop-filter: blur(25px) saturate(200%) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.08), inset 0 1px rgba(255,255,255,.25) !important;
  color: var(--uv-text);
  box-sizing: border-box;
}

/* точнее в современных браузерах (без влияния скроллбара) */
@supports (width: 1dvw){
  .uv-footer,
  .wp-block-group.alignfull.uv-footer,
  .wp-block-group.alignfull.uv-footer.uv-glass {
    width: calc(100dvw - (2 * var(--uv-edge-gap))) !important;
  }
}

/* не допускаем auto-margins/alignfull-хаков от WP */
.wp-site-blocks > .uv-footer.alignfull,
.wp-site-blocks > .wp-block-group.alignfull.uv-footer,
.wp-site-blocks > .wp-block-group.alignfull.uv-footer.uv-glass {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: auto !important;
  max-width: none !important;
}

/* тёмная тема */
:root.uv-dark .uv-footer,
:root.uv-dark .wp-block-group.alignfull.uv-footer,
:root.uv-dark .wp-block-group.alignfull.uv-footer.uv-glass {
  background: var(--uv-header-bg-dark) !important;
  border-color: var(--uv-header-border-dark) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.45), inset 0 1px rgba(255,255,255,.06) !important;
}

/* Footer row */
.uv-footer-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 60px !important;
  padding: 20px 24px !important;
  height: auto !important;
  min-height: 60px !important;
  box-sizing: border-box !important;
  flex-wrap: wrap !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  width: 100% !important;
}

/* Footer sections */
.uv-footer-left,
.uv-footer-nav,
.uv-footer-right {
  display: flex;
  align-items: center;
  gap: 16px;
}

/* Footer navigation */
.uv-footer-nav {
  gap: 20px;
}

.uv-footer-nav a {
  text-decoration: none;
  font-weight: 500;
}

/* Footer right section */
.uv-footer-right {
  gap: 24px;
  margin-left: auto !important;
}

/* Footer socials */
.uv-footer-socials {
  display: flex;
  gap: 12px;
  align-items: center;
}

.uv-footer-social-icon {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Footer responsive styles */
@media (min-width: 1200px) {
  .uv-footer-row {
    gap: 60px !important;
    padding: 20px 32px !important;
  }
  
  .uv-footer-nav {
    gap: 20px !important;
  }
  
  .uv-footer-right {
    gap: 24px !important;
  }
}

@media (min-width: 769px) and (max-width: 1199px) {
  .uv-footer-row {
    gap: 16px !important;
    padding: 20px 24px !important;
    flex-direction: column !important;
  }
  
  .uv-footer-nav {
    gap: 12px !important;
    order: 2 !important;
    justify-content: center !important;
  }
  
  .uv-footer-nav a {
    font-size: 12px !important;
  }
  
  .uv-footer-left {
    order: 3 !important;
    align-items: center !important;
    text-align: center !important;
  }
  
  .uv-footer-right {
    gap: 8px !important;
    order: 1 !important;
    justify-content: center !important;
  }
}

/* Mobile footer styles moved to footer-mobile.css */

/* Small mobile footer styles moved to footer-mobile.css */

/* ================== Additional Footer Responsive Styles ================== */

/* Very small screens footer styles moved to footer-mobile.css */

/* Landscape orientation footer styles moved to footer-mobile.css */

/* Large screens optimization */
@media (min-width: 1400px) {
  .uv-footer,
  .wp-block-group.alignfull.uv-footer,
  .wp-block-group.alignfull.uv-footer.uv-glass {
    width: calc(100vw - 4cm) !important;
  }
  
  .uv-footer-row {
    gap: 80px !important;
    padding: 24px 40px !important;
  }
  
  .uv-footer-nav {
    gap: 24px !important;
  }
  
  .uv-footer-nav a {
    font-size: 15px !important;
  }
  
  .uv-footer-right {
    gap: 32px !important;
  }
  
  .uv-footer-socials {
    gap: 16px !important;
  }
  
  .uv-footer-social-icon {
    width: 28px;
    height: 28px;
  }
  
  .uv-footer-social-icon img {
    width: 22px;
    height: 22px;
  }
}

/* Экстремально маленькие экраны footer styles moved to footer-mobile.css */

/* ================== ТОЧНЫЕ РАЗРЕШЕНИЯ ЭКРАНОВ ДЛЯ FOOTER ================== */

/* 1280x800 - компактные ноутбуки */
@media (min-width: 1280px) and (max-width: 1280px) and (min-height: 800px) and (max-height: 800px) {
  .uv-footer,
  .wp-block-group.alignfull.uv-footer,
  .wp-block-group.alignfull.uv-footer.uv-glass {
    width: calc(100vw - 60px) !important;
    padding: 0 16px !important;
    margin: 30px 0 16px !important;
  }
  
  .uv-footer-row {
    gap: 30px !important;
    padding: 14px 16px !important;
    min-height: 48px !important;
  }
  
  .uv-footer-nav {
    gap: 10px !important;
  }
  
  .uv-footer-nav a {
    font-size: 11px !important;
    padding: 3px 6px !important;
  }
  
  .uv-footer-left {
    font-size: 10px !important;
  }
  
  .uv-footer-right {
    gap: 12px !important;
  }
  
  .uv-footer-socials {
    gap: 8px !important;
  }
  
  .uv-footer-social-icon {
    width: 20px !important;
    height: 20px !important;
  }
  
  .uv-footer-social-icon img {
    width: 16px !important;
    height: 16px !important;
  }
  
  .uv-footer .wp-block-button__link {
    font-size: 11px !important;
    padding: 0 12px !important;
    min-height: 32px !important;
  }
}

/* 1280x1024 - квадратные мониторы */
@media (min-width: 1280px) and (max-width: 1280px) and (min-height: 1024px) and (max-height: 1024px) {
  .uv-footer,
  .wp-block-group.alignfull.uv-footer,
  .wp-block-group.alignfull.uv-footer.uv-glass {
    width: calc(100vw - 50px) !important;
    padding: 0 14px !important;
    margin: 32px 0 16px !important;
  }
  
  .uv-footer-row {
    gap: 28px !important;
    padding: 14px 14px !important;
    min-height: 46px !important;
  }
  
  .uv-footer-nav {
    gap: 8px !important;
  }
  
  .uv-footer-nav a {
    font-size: 10px !important;
    padding: 3px 5px !important;
  }
  
  .uv-footer-left {
    font-size: 9px !important;
  }
  
  .uv-footer-right {
    gap: 10px !important;
  }
  
  .uv-footer-socials {
    gap: 6px !important;
  }
  
  .uv-footer-social-icon {
    width: 18px !important;
    height: 18px !important;
  }
  
  .uv-footer-social-icon img {
    width: 14px !important;
    height: 14px !important;
  }
  
  .uv-footer .wp-block-button__link {
    font-size: 10px !important;
    padding: 0 10px !important;
    min-height: 30px !important;
  }
}

/* 1366x768 - БАЗОВОЕ разрешение */
@media (min-width: 1366px) and (max-width: 1366px) and (min-height: 768px) and (max-height: 768px) {
  .uv-footer,
  .wp-block-group.alignfull.uv-footer,
  .wp-block-group.alignfull.uv-footer.uv-glass {
    width: calc(100vw - 80px) !important;
    padding: 0 20px !important;
    margin: 36px 0 18px !important;
  }
  
  .uv-footer-row {
    gap: 40px !important;
    padding: 16px 20px !important;
    min-height: 54px !important;
  }
  
  .uv-footer-nav {
    gap: 12px !important;
  }
  
  .uv-footer-nav a {
    font-size: 12px !important;
    padding: 4px 8px !important;
  }
  
  .uv-footer-left {
    font-size: 11px !important;
  }
  
  .uv-footer-right {
    gap: 16px !important;
  }
  
  .uv-footer-socials {
    gap: 10px !important;
  }
  
  .uv-footer-social-icon {
    width: 22px !important;
    height: 22px !important;
  }
  
  .uv-footer-social-icon img {
    width: 18px !important;
    height: 18px !important;
  }
  
  .uv-footer .wp-block-button__link {
    font-size: 12px !important;
    padding: 0 14px !important;
    min-height: 36px !important;
  }
}

/* 1440x900 - MacBook Air, популярные ноутбуки */
@media (min-width: 1440px) and (max-width: 1440px) and (min-height: 900px) and (max-height: 900px) {
  .uv-footer,
  .wp-block-group.alignfull.uv-footer,
  .wp-block-group.alignfull.uv-footer.uv-glass {
    width: calc(100vw - 100px) !important;
    padding: 0 24px !important;
    margin: 38px 0 18px !important;
  }
  
  .uv-footer-row {
    gap: 50px !important;
    padding: 18px 24px !important;
    min-height: 58px !important;
  }
  
  .uv-footer-nav {
    gap: 14px !important;
  }
  
  .uv-footer-nav a {
    font-size: 13px !important;
    padding: 5px 10px !important;
  }
  
  .uv-footer-left {
    font-size: 12px !important;
  }
  
  .uv-footer-right {
    gap: 18px !important;
  }
  
  .uv-footer-socials {
    gap: 12px !important;
  }
  
  .uv-footer-social-icon {
    width: 24px !important;
    height: 24px !important;
  }
  
  .uv-footer-social-icon img {
    width: 20px !important;
    height: 20px !important;
  }
  
  .uv-footer .wp-block-button__link {
    font-size: 13px !important;
    padding: 0 16px !important;
    min-height: 38px !important;
  }
}

/* 1536x864 - современные ноутбуки */
@media (min-width: 1536px) and (max-width: 1536px) and (min-height: 864px) and (max-height: 864px) {
  .uv-footer,
  .wp-block-group.alignfull.uv-footer,
  .wp-block-group.alignfull.uv-footer.uv-glass {
    width: calc(100vw - 100px) !important;
    padding: 0 24px !important;
    margin: 38px 0 18px !important;
  }
  
  .uv-footer-row {
    gap: 50px !important;
    padding: 18px 24px !important;
    min-height: 58px !important;
  }
  
  .uv-footer-nav {
    gap: 14px !important;
  }
  
  .uv-footer-nav a {
    font-size: 13px !important;
    padding: 5px 10px !important;
  }
  
  .uv-footer-left {
    font-size: 12px !important;
  }
  
  .uv-footer-right {
    gap: 18px !important;
  }
  
  .uv-footer-socials {
    gap: 12px !important;
  }
  
  .uv-footer-social-icon {
    width: 24px !important;
    height: 24px !important;
  }
  
  .uv-footer-social-icon img {
    width: 20px !important;
    height: 20px !important;
  }
  
  .uv-footer .wp-block-button__link {
    font-size: 13px !important;
    padding: 0 16px !important;
    min-height: 38px !important;
  }
}

/* 1600x900 - широкие мониторы */
@media (min-width: 1600px) and (max-width: 1600px) and (min-height: 900px) and (max-height: 900px) {
  .uv-footer,
  .wp-block-group.alignfull.uv-footer,
  .wp-block-group.alignfull.uv-footer.uv-glass {
    width: calc(100vw - 120px) !important;
    padding: 0 28px !important;
    margin: 40px 0 20px !important;
  }
  
  .uv-footer-row {
    gap: 60px !important;
    padding: 20px 28px !important;
    min-height: 62px !important;
  }
  
  .uv-footer-nav {
    gap: 16px !important;
  }
  
  .uv-footer-nav a {
    font-size: 14px !important;
    padding: 6px 12px !important;
  }
  
  .uv-footer-left {
    font-size: 13px !important;
  }
  
  .uv-footer-right {
    gap: 20px !important;
  }
  
  .uv-footer-socials {
    gap: 14px !important;
  }
  
  .uv-footer-social-icon {
    width: 26px !important;
    height: 26px !important;
  }
  
  .uv-footer-social-icon img {
    width: 21px !important;
    height: 21px !important;
  }
  
  .uv-footer .wp-block-button__link {
    font-size: 14px !important;
    padding: 0 18px !important;
    min-height: 40px !important;
  }
}

/* 1920x1080 - Full HD мониторы */
@media (min-width: 1920px) and (max-width: 1920px) and (min-height: 1080px) and (max-height: 1080px) {
  .uv-footer,
  .wp-block-group.alignfull.uv-footer,
  .wp-block-group.alignfull.uv-footer.uv-glass {
    width: calc(100vw - 140px) !important;
    padding: 0 32px !important;
    margin: 44px 0 20px !important;
  }
  
  .uv-footer-row {
    gap: 70px !important;
    padding: 22px 32px !important;
    min-height: 66px !important;
  }
  
  .uv-footer-nav {
    gap: 18px !important;
  }
  
  .uv-footer-nav a {
    font-size: 15px !important;
    padding: 7px 14px !important;
  }
  
  .uv-footer-left {
    font-size: 14px !important;
  }
  
  .uv-footer-right {
    gap: 24px !important;
  }
  
  .uv-footer-socials {
    gap: 16px !important;
  }
  
  .uv-footer-social-icon {
    width: 28px !important;
    height: 28px !important;
  }
  
  .uv-footer-social-icon img {
    width: 22px !important;
    height: 22px !important;
  }
  
  .uv-footer .wp-block-button__link {
    font-size: 15px !important;
    padding: 0 20px !important;
    min-height: 42px !important;
  }
}
