/*
Theme Name: Divi 5 Noomo Photographers
Theme URI: https://tuweb.com
Description: Child Theme inmersivo y premium estilo Noomo Agency para Divi 5. Diseñado para colectivos de fotógrafos.
Author: Prompt Engineer Pro
Template: Divi
Version: 1.0.0
*/

:root {
  --primary-color: #2059aa;
  --bg-dark: #0b0c0e;
  --text-light: #fafafa;
  --text-muted: #8a8d93;
  --header-height-init: 100px;
  --header-height-scroll: 70px;
}

body {
  background-color: var(--bg-dark) !important;
  color: var(--text-light) !important;
  overflow-x: hidden;
}

html.lenis {
  height: auto;
}
.lenis-smooth {
  scroll-behavior: auto !important;
}

.immersive-header {
  position: fixed !important;
  top: 0;
  left: 0;
  width: 100%;
  height: var(--header-height-init);
  z-index: 9999;
  background-color: transparent !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.0);
  backdrop-filter: blur(0px);
  -webkit-backdrop-filter: blur(0px);
  transition: height 0.4s cubic-bezier(0.25, 1, 0.5, 1), 
              background-color 0.4s cubic-bezier(0.25, 1, 0.5, 1), 
              border-color 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

.immersive-header.scrolled {
  height: var(--header-height-scroll);
  background-color: rgba(11, 12, 14, 0.75) !important;
  border-color: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

.immersive-header a {
  color: var(--text-light) !important;
  text-transform: uppercase;
  font-size: 13px !important;
  letter-spacing: 0.15em;
  transition: color 0.3s ease;
  position: relative;
}

.immersive-header a::after {
  content: '';
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 0;
  height: 1px;
  background-color: var(--primary-color);
  transition: width 0.3s ease;
}

.immersive-header a:hover {
  color: var(--primary-color) !important;
}

.immersive-header a:hover::after {
  width: 100%;
}

.custom-cursor {
  width: 10px;
  height: 10px;
  background-color: #ffffff;
  border-radius: 50%;
  position: fixed;
  transform: translate(-50%, -50%);
  pointer-events: none;
  z-index: 99999;
  mix-blend-mode: difference;
  transition: transform 0.2s cubic-bezier(0.25, 1, 0.5, 1), background-color 0.2s;
}

.custom-cursor.hovered {
  transform: translate(-50%, -50%) scale(5);
}

.member-card {
  position: relative;
  overflow: hidden;
  transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}

.member-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; width: 100%; height: 100%;
  background-color: rgba(32, 89, 170, 0.4);
  z-index: 2;
  opacity: 0;
  transition: opacity 0.4s ease;
  pointer-events: none;
}

.member-card:hover::before {
  opacity: 1;
}

.et-b-contact-form input, .et-b-contact-form textarea {
  background-color: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
  color: var(--text-light) !important;
  border-radius: 0px !important;
  padding-left: 0px !important;
  transition: border-color 0.3s ease !important;
}

.et-b-contact-form input:focus, .et-b-contact-form textarea:focus {
  border-bottom: 1px solid var(--primary-color) !important;
}