@import"https://fonts.googleapis.com/css2?family=Pacifico&family=Dancing+Script:wght@400;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Smooch+Sans:wght@100..900&display=swap";.main-header{position:fixed;top:0;left:0;width:100%;background:transparent;z-index:1000;padding:1rem 0;box-shadow:0 2px 20px #0000004d}.header-container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 2rem}.menu-hamburger{background:transparent;border:2px solid #fff;border-radius:8px;width:50px;height:50px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;cursor:pointer;transition:all .3s ease;z-index:1002}.menu-hamburger:hover{background:#666;transform:scale(1.05)}.hamburger-line{width:20px;height:2px;background:#fff;transition:all .3s ease}.menu-hamburger.active .hamburger-line:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.menu-hamburger.active .hamburger-line:nth-child(2){opacity:0}.menu-hamburger.active .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.logo-wrapper{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;z-index:1001}.logo-link{display:flex;align-items:center}.brand-logo{height:180px;width:auto;object-fit:contain}.session-buttons{display:flex;gap:1rem;z-index:1002}.btn-login,.btn-register{padding:.7rem 1.5rem;border:2px solid #fff;border-radius:25px;background:#ffffff1a;color:#fff;text-shadow:#3d3d3d 2px 2px 2px;font-size:.9rem;cursor:pointer;transition:all .3s ease}.btn-login:hover,.btn-register:hover{background:#fff3;transform:translateY(-2px)}.side-menu{position:fixed;top:0;left:-320px;width:280px;max-width:80%;height:100vh;background:linear-gradient(135deg,#2d2d2d,#3d3d3d);border-right:2px solid #555555;z-index:1001;transition:left .3s ease}.side-menu.open{left:0}.menu-content{padding:2rem 1.5rem;height:100%;display:flex;flex-direction:column}.close-menu{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer}.menu-header{text-align:center;margin:3rem 0 2rem}.menu-title{font-size:1.8rem;color:#fff;margin-bottom:1rem}.menu-divider{height:1px;background:#555}.menu-items{display:flex;flex-direction:column;gap:1rem;flex:1}.menu-item{padding:1rem;background:#ffffff0d;border-radius:10px;text-decoration:none;color:#fff;transition:all .3s ease;text-align:center}.menu-item:hover{background:#ffffff1a;transform:translate(5px)}.menu-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:999;opacity:0;visibility:hidden;transition:all .3s ease}.menu-overlay.active{opacity:1;visibility:visible}@media(max-width:768px){.header-container{padding:0 1rem}.menu-hamburger{width:40px;height:40px}.hamburger-line{width:18px;height:2px}.brand-logo{height:84px}.session-buttons{gap:.5rem;flex-wrap:wrap}.btn-login,.btn-register{padding:.5rem 1rem;font-size:.4rem}.side-menu{width:260px;left:-260px}.side-menu.open{left:0}.menu-content{padding:2rem 1rem}}.footer{background:#406d94;background:linear-gradient(135deg,#557ea1,#4f65bc);color:#e0e0e0;margin-top:auto;border-top:3px solid #ff6b35;font-family:Smooch Sans,sans-serif}.footer-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:3rem;padding:3rem 2rem}.footer-section h3,.footer-section h4{color:#fff;margin-bottom:1rem;text-shadow:1px 1px 3px rgba(0,0,0,.4)}.footer-section h3{font-size:1.8rem}.footer-section h4{font-size:1.2rem}.footer-section p{color:#d0d0d0;text-shadow:1px 1px 2px rgba(0,0,0,.2);margin-bottom:.5rem;line-height:1.6}.footer-links{display:flex;flex-direction:column;gap:.5rem}.footer-link{color:#f0f0f0;text-decoration:none;transition:all .3s ease;position:relative;text-shadow:1px 1px 2px rgba(0,0,0,.2)}.footer-link:after{content:"";display:block;height:2px;width:0%;background:#ff6b35;transition:.3s ease;position:absolute;bottom:-3px;left:0}.footer-link:hover:after{width:100%}.footer-link:hover{color:#ff6b35}.footer-bottom{background:#565aa6;padding:1.5rem 2rem;text-align:center}.footer-bottom p{color:#cfcfcf;font-size:.9rem;text-shadow:1px 1px 2px rgba(0,0,0,.2)}.dev-link{color:#ff6b35;text-decoration:underline}@media(max-width:768px){.footer-content{grid-template-columns:1fr;text-align:center;gap:2rem}}.carousel{position:relative;width:100%;height:70vh;min-height:500px;overflow:hidden;background:linear-gradient(135deg,#0a0a2a,#1a1a4a)}.carousel-inner{position:relative;width:100%;height:100%}.carousel-item{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .8s ease-in-out}.carousel-item.active{opacity:1}.carousel-image{width:100%;height:100%;object-fit:cover;filter:brightness(.6) contrast(1.1)}.carousel-caption{position:absolute;bottom:20%;left:10%;text-align:left;color:#fff;z-index:2}.carousel-title{font-family:Arial Black,Helvetica Bold,sans-serif;font-size:4rem;font-weight:900;text-transform:uppercase;letter-spacing:3px;margin-bottom:1rem;text-shadow:3px 3px 0px #ff6b35,0 0 30px rgba(255,107,53,.7);line-height:1.1}.carousel-subtitle{font-family:Arial,sans-serif;font-size:1.5rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;text-shadow:2px 2px 0px #1e90ff,0 0 20px rgba(30,144,255,.7)}.carousel-indicators{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;gap:1rem;z-index:3}.carousel-indicator{width:12px;height:12px;border-radius:50%;border:2px solid #fff;background:transparent;cursor:pointer;transition:all .3s ease}.carousel-indicator.active{background:linear-gradient(135deg,#ff6b35,#1e90ff);transform:scale(1.2);box-shadow:0 0 15px #ff6b35}.carousel-indicator:hover{background:#ff6b3580}.carousel-control{position:absolute;top:50%;transform:translateY(-50%);background:#ff6b3533;border:2px solid #fff;color:#fff;width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;cursor:pointer;z-index:3;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.carousel-control:hover{background:linear-gradient(135deg,#ff6b35,#1e90ff);transform:translateY(-50%) scale(1.1);box-shadow:0 0 25px #ff6b35}.carousel-control.prev{left:2rem}.carousel-control.next{right:2rem}.carousel-control span{line-height:1}@media(max-width:768px){.carousel{height:50vh;min-height:400px}.carousel-title{font-size:2.5rem;letter-spacing:2px}.carousel-subtitle{font-size:1.1rem;letter-spacing:1px}.carousel-control{width:45px;height:45px;font-size:1.5rem}.carousel-control.prev{left:1rem}.carousel-control.next{right:1rem}.carousel-caption{left:5%;bottom:15%}}.video-hero{width:100%;height:40vh;max-height:450px;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}.video-hero__video{width:100%;height:100%;object-fit:contain}.carousel-video{width:100%;height:100%;object-fit:cover}.carousel-caption{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;text-align:center}.carousel-title{font-size:clamp(2rem,5vw,4rem);letter-spacing:.1em}.carousel-subtitle{margin-top:1rem;font-size:clamp(1rem,2vw,1.5rem);opacity:.85}.lazy-load-image-background.blur{filter:blur(15px)}.lazy-load-image-background.blur.lazy-load-image-loaded{filter:blur(0);transition:filter .3s}.lazy-load-image-background.blur>img{opacity:0}.lazy-load-image-background.blur.lazy-load-image-loaded>img{opacity:1;transition:opacity .3s}.galeria-fotografos{padding:2rem;width:100%}.galeria-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1.5rem}.fotografo-card{position:relative;aspect-ratio:1 / 1;border-radius:8px;overflow:hidden;transition:transform .3s ease}.fotografo-card:hover{transform:translateY(-10px)}.card-link{display:block;width:100%;height:100%}.image-container{width:100%;height:100%}.card-image{width:100%;height:100%;object-fit:cover;filter:grayscale(100%);transition:transform .5s ease,filter .5s ease}.fotografo-card:hover .card-image{filter:grayscale(0%);transform:scale(1.05)}.overlay{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 0%,rgba(107,82,62,.7) 70%,rgba(119,113,63,.9) 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:2rem;opacity:0;transition:opacity .3s ease}.fotografo-card:hover .overlay{opacity:1}.fotografo-nombre{font-size:1.6rem;font-weight:900;text-transform:uppercase}.fotografo-especialidad{font-size:.9rem;color:#ccc}@media(max-width:1200px){.galeria-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:900px){.galeria-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.galeria-grid{grid-template-columns:1fr}}.cliente-dashboard{padding:2rem 0}.search-section{margin-bottom:3rem}.search-bar{display:flex;gap:1rem;max-width:600px;margin:0 auto}.search-input{flex:1;padding:1rem 1.5rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:25px;color:#fff;font-size:1rem}.search-input::placeholder{color:#ccc}.search-btn{background:linear-gradient(135deg,#666,#888);border:none;padding:1rem 2rem;border-radius:25px;color:#fff;cursor:pointer;transition:all .3s ease}.search-btn:hover{background:linear-gradient(135deg,#777,#999);transform:translateY(-2px)}.categorias-section{margin-bottom:3rem}.categorias-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.5rem}.categoria-card{background:#ffffff0d;padding:2rem 1rem;border-radius:15px;text-align:center;transition:all .3s ease;border:1px solid rgba(255,255,255,.1);cursor:pointer}.categoria-card:hover{background:#ffffff14;transform:translateY(-5px)}.categoria-icon{font-size:2.5rem;display:block;margin-bottom:1rem}.categoria-nombre{color:#fff;font-size:1.1rem;margin-bottom:.5rem}.categoria-count{color:#ccc;font-size:.9rem}.fotografos-section{margin-bottom:3rem}.fotografos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.fotografo-card{background:#97734d0d;padding:2rem;border-radius:15px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.fotografo-card:hover{background:#ffffff14;transform:translateY(-5px)}.fotografo-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.fotografo-foto{font-size:3rem}.fotografo-info{flex:1}.fotografo-nombre{color:#fff;font-size:1.3rem;margin-bottom:.3rem}.fotografo-especialidad{color:#ccc;font-size:.9rem}.fotografo-stats{display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:1rem 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}.stat{text-align:center}.stat-value{display:block;color:#fff;font-size:1.2rem;font-weight:700;margin-bottom:.3rem}.stat-label{color:#ccc;font-size:.8rem}.fotografo-actions{display:flex;gap:1rem}.btn-ver-portfolio,.btn-contactar{flex:1;padding:.8rem 1rem;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;font-size:.9rem}.btn-ver-portfolio{background:#ffffff1a;color:#fff}.btn-contactar{background:linear-gradient(135deg,#666,#888);color:#fff}.btn-ver-portfolio:hover{background:#fff3}.btn-contactar:hover{background:linear-gradient(135deg,#777,#999)}.proyectos-section{margin-top:3rem}.proyectos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.proyecto-item{background:#ffffff0d;border-radius:10px;overflow:hidden;transition:all .3s ease}.proyecto-item:hover{background:#ffffff14;transform:translateY(-3px)}.proyecto-image{height:120px;background:#ffffff1a;display:flex;align-items:center;justify-content:center;font-size:2rem}.proyecto-info{padding:1rem}.proyecto-info h4{color:#fff;margin-bottom:.5rem}.proyecto-info p{color:#ccc;font-size:.9rem}@media(max-width:768px){.search-bar{flex-direction:column}.categorias-grid{grid-template-columns:repeat(2,1fr)}.fotografos-grid{grid-template-columns:1fr}.fotografo-actions{flex-direction:column}}:root{font-family:Smooch Sans,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{width:100%;min-height:100%;margin:0;padding:0;overflow-x:hidden;background-color:#f0f8ff;color:#fff}*{box-sizing:border-box}#root{width:100%;min-height:100vh;margin:0 auto;background-color:inherit}.hero-title{margin-left:100px;text-shadow:#000 2px 2px 2px}.hero-subtitle{margin-left:100px;text-shadow:#000 2px 2px 2px;font-size:20px}.cursive-font,.brand-logo{font-family:Smooch Sans,sans-serif;font-style:italic}@media(max-width:768px){.hero-title,.hero-subtitle{margin-left:70px}}
