/* ==========================================================================
   AI BRAND AMBASSADORS - LUXURY THEME STYLESHEET
   ========================================================================== */

/* 1. ROOT VARIABLES & PALETTE */
:root{--gold:#D4AF37;--gold-dark:#B89B4D;--silver:#C0C0C0;--black:#0D0D0D;--charcoal:#1A1A1A;--text-light:#F5F5F7;--text-gray:#A8A8B2;--border-color:#333333;--primary:var(--gold);--primary-dark:var(--gold-dark);--primary-light:#E0C56E;--secondary:var(--silver);--accent:var(--gold-dark);--dark:var(--charcoal);--darker:var(--black);--light:var(--text-light);--lighter:#FFFFFF;--gray:var(--text-gray);--purple:var(--primary-dark);}

/* 2. ESTILOS GLOBALES Y BASE */
*{margin:1px;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Poppins',sans-serif;color:var(--light);line-height:1.6;background-color:var(--darker);background-image:linear-gradient(to bottom,var(--darker) 0%,var(--dark) 100%);overflow-x:hidden;}
h1,h2,h3,h4,h5,h6{font-family:'Montserrat',sans-serif;font-weight:800;line-height:1.3;color:var(--lighter);}
.container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px;}

/* 3. HEADER Y NAVEGACIÓN */
header{background-color:rgba(13,13,13,0.85);backdrop-filter:blur(1px);box-shadow:0 2px 30px rgba(0,0,0,0.2);position:fixed;width:100%;top:.3px;z-index:1000;transition:background-color .3s ease,box-shadow .3s ease;border-bottom:.8px solid var(--border-color);}
header.scrolled{background-color:rgba(13,13,13,0.95);box-shadow:0 4px 30px rgba(0,0,0,0.3);}
.header-container{display:flex;justify-content:space-between;align-items:center;padding-bottom:.5px;}
.header-actions{display:flex;align-items:center;gap:20px;}
.menu-toggle{display:none;}
.logo{font-size:14px;font-weight:800;color:var(--primary);text-decoration:none;display:flex;align-items:center;}
.logo-img{width:25px;height:25px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border-radius:10px;margin-right:2px;display:flex;align-items:center;justify-content:center;color:var(--darker);}
.nav-menu{display:flex;max-height:.5px;list-style:none;}
.nav-menu li{margin-left:30px;}
.nav-menu a{text-decoration:none;color:var(--gray);font-weight:600;transition:color .3s;position:relative;padding-bottom:5px;}
.nav-menu a:after{content:'';position:absolute;width:0;height:3px;bottom:-5px;left:50%;transform:translateX(-50%);background:linear-gradient(to right,var(--primary),var(--primary-dark));transition:width .3s;border-radius:2px;}
.nav-menu a:hover{color:var(--lighter);}
.nav-menu a:hover:after{width:100%;}

/* 4. BOTONES Y ELEMENTOS DE UI */
.btn{display:inline-block;padding:12px 28px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:var(--darker);border-radius:5px;text-decoration:none;font-weight:600;transition:all .3s ease;border:none;cursor:pointer;box-shadow:0 5px 20px rgba(212,175,55,0.2);position:relative;overflow:hidden;text-transform:uppercase;letter-spacing:.8px;font-size:14px;}
.btn:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(212,175,55,0.3);}
.btn:before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.3),transparent);transition:.5s;}
.btn:hover:before{left:100%;}
.btn-whatsapp{background:linear-gradient(135deg,#25D366 0%,#128C7E 100%);box-shadow:0 5px 20px rgba(37,211,102,0.3);color:white;}
.btn-whatsapp:hover{box-shadow:0 10px 30px rgba(37,211,102,0.4);}

/* 5. SECCIONES PRINCIPALES (HERO, COUNTER, CTA) */
.hero.video-hero{height:100vh;min-height:700px;padding:0;position:relative;display:flex;align-items:center;overflow:hidden;}
.hero-video{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);min-width:100%;min-height:100%;width:auto;height:auto;z-index:1;}
.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,0.6);z-index:2;}
.hero-content-container{position:relative;z-index:3;width:100%;}
.hero-grid{display:grid;padding-top:240px;grid-template-columns:1fr;grid-template-rows:1fr 1fr;gap:5px;align-items:center;text-align:center;}
.hero-image{grid-row:2;padding-top:5px;}
.hero-content{padding-top:5px;grid-row:1;}
.hero h1{font-size:clamp(2.5rem,5vw,3.8rem);margin-bottom:20px;line-height:1.2;}
.hero p{font-size:clamp(1rem,2.5vw,1.2rem);margin-bottom:80px;color:var(--gray);max-width:600px;margin-left:auto;margin-right:auto;}
.hero-buttons{display:flex;flex-wrap:wrap;gap:20px;margin-top:30px;justify-content:center;}
.hero-ambassador-img{max-width:100%;width:auto;max-height:450px;height:auto;border-radius:15px;box-shadow:0 10px 40px rgba(0,0,0,0.4);object-fit:cover;}
#video-showcase{padding:100px 0;border-radius:20px;background:linear-gradient(165deg,var(--darker) 70%,var(--primary-dark) 100%);}
.phone-mockup{width:100%;max-width:320px;margin:2rem auto;position:relative;}
.video-container{aspect-ratio:9/16;width:100%;background:#000;border-radius:40px;overflow:hidden;position:relative;box-shadow:0 20px 50px rgba(0,0,0,0.6);border:14px solid #111;}
.video-container::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:180px;height:30px;background:#000;border-bottom-left-radius:20px;border-bottom-right-radius:20px;z-index:10;}
.video-container::after{content:'';position:absolute;bottom:-12px;left:50%;transform:translateX(-50%);width:120px;height:8px;background:#333;border-radius:10px;z-index:10;}
.video-container video{width:100%;height:100%;object-fit:cover;display:block;}
.lazy-load-img{opacity:0;transform:translateY(20px);transition:opacity .8s ease-out,transform .8s ease-out;}
.lazy-load-img.is-visible{opacity:1;transform:translateY(0);}
.counter{padding:20px 0;background:var(--dark);text-align:center;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);}
.counter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px;}
.counter-number{font-size:3rem;font-weight:800;margin-bottom:10px;color:var(--primary);}
.counter-text{font-size:1.1rem;color:var(--gray);}
.cta { padding: 100px 0; background-color: var(--dark); color: white; text-align: center; }
.cta h2{font-size:2.8rem;margin-bottom:20px;}
.cta p{max-width:700px;margin:0 auto 40px;font-size:1.3rem;color:var(--gray);}

/* 6. ESTRUCTURA DE SECCIONES Y TÍTULOS */
.problem-solution,.avatars,.pricing,.faq{padding:50px 0;}
.sectors,.possibilities{padding:70px 0;background-color:var(--dark);}
.section-title{text-align:center;margin-bottom:60px;}
.section-title h2{font-size:2.8rem;margin-bottom:20px;position:relative;display:inline-block;}
.section-title h2:after{content:'';position:absolute;width:80px;height:4px;background:linear-gradient(to right,var(--primary),var(--primary-dark));bottom:-15px;left:50%;transform:translateX(-50%);border-radius:2px;}
.section-title p{color:var(--gray);max-width:700px;margin:30px auto 0;font-size:1.2rem;}
.hero-image,.avatar-card{transform-style:preserve-3d;perspective:1500px;}
.hero-ambassador-img{max-width:100%;height:auto;border-radius:15px;box-shadow:0 10px 40px rgba(0,0,0,0.4);object-fit:cover;max-height:450px;transition:transform .4s ease,box-shadow .4s ease;}
.hero-image:hover .hero-ambassador-img{transform:perspective(1000px) rotateY(10deg) scale(1.05);box-shadow:-10px 10px 40px rgba(0,0,0,0.6);}
.avatars-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;}
@keyframes popular-glow{from{box-shadow:0 0 15px rgba(212,175,55,0.4),0 0 30px rgba(212,175,55,0.2);}to{box-shadow:0 0 25px rgba(212,175,55,0.6),0 0 50px rgba(212,175,55,0.4);}}

/* 7. ESTILOS DE TARJETAS (CARDS) */
.ps-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:50px;align-items:flex-start;}
.problem,.solution{padding:40px;border-radius:15px;background-color:var(--dark);border:1px solid var(--border-color);}
.problem{border-left:4px solid #c84141;}
.solution{border-left:4px solid var(--primary);}
.problem h2 i{color:#c84141;margin-right:15px;}
.solution h2 i{color:var(--primary);margin-right:15px;}
.problem-list li i{color:#c84141;}
.solution-list li i{color:var(--primary);}
.problem-list,.solution-list{list-style:none;}
.problem-list li,.solution-list li{margin-bottom:15px;display:flex;align-items:flex-start;}
.problem-list li i,.solution-list li i{margin-right:10px;margin-top:5px;}
.sectors-grid,.avatars-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;}
.sector-card{background:var(--darker);border:1px solid var(--border-color);border-radius:15px;padding:30px;text-align:center;transition:all .3s ease;}
.sector-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px rgba(0,0,0,0.2);border-color:var(--primary);}
.sector-icon{width:70px;height:70px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 25px;color:var(--darker);font-size:28px;}
.avatar-card{background-color:var(--dark);border-radius:15px;text-align:center;border:1px solid var(--border-color);height:100%;display:flex;flex-direction:column;transition:transform .2s ease-out,box-shadow .4s ease;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,0.1);}
.avatar-card:hover{box-shadow:0 20px 50px rgba(0,0,0,0.5);transform:translateY(-10px);}
.avatar-image{min-height:400px;width:100%;overflow:hidden;display:flex;justify-content:center;align-items:flex-end;max-height:550px;background-color:#000;}
.avatar-image img{width:100%;height:100%;object-fit:contain;object-position:center bottom;transition:transform .4s ease;}
.avatar-card:hover .avatar-image img{transform:translateZ(40px) scale(1.05);}
.avatar-info{padding:25px;flex-grow:1;display:flex;flex-direction:column;justify-content:space-between;}
.avatar-info h3{color:var(--primary-light);font-size:1.5rem;margin-bottom:10px;}
.avatar-info p{color:var(--gray);}

/* 8. PRECIOS */
.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;align-items:center;}
.pricing-card{background-color:var(--dark);border-radius:15px;padding:40px 30px;box-shadow:0 10px 30px rgba(0,0,0,0.1);text-align:center;transition:transform .3s ease;position:relative;overflow:hidden;display:flex;flex-direction:column;border:2px solid var(--border-color);}
.pricing-card.popular{border:2px solid var(--primary);transform:scale(1.05);box-shadow:0 0 15px rgba(212,175,55,0.4),0 0 30px rgba(212,175,55,0.2);animation:popular-glow 2.5s infinite alternate;}
.pricing-card.popular::before{content:'MÁS POPULAR';position:absolute;top:18px;right:-45px;background-color:var(--primary);color:var(--darker);padding:5px 50px;font-size:12px;font-weight:700;transform:rotate(45deg);letter-spacing:.5px;}
.price{font-size:3rem;font-weight:700;color:var(--primary);margin:20px 0;}
.price span{font-size:1rem;color:var(--gray);}
.pricing-features{list-style:none;margin:30px 0;text-align:left;flex-grow:1;}
.pricing-features li{margin-bottom:15px;display:flex;align-items:center;}
.pricing-features li i{color:var(--primary);margin-right:10px;}
pricing-card .plan-description{color:var(--gray);min-height:40px;margin-bottom:15px;}
.pricing-features .fa-star{color:var(--primary);}
.pricing-features em{color:var(--gray);font-style:italic;}
.pricing-note{text-align:center;margin-top:40px;color:var(--gray);font-size:.9rem;font-style:italic;}

/* 9. FAQ */
.faq-container{max-width:800px;margin:0 auto;}
.faq-item{margin-bottom:15px;border-radius:10px;overflow:hidden;border:1px solid var(--border-color);background-color:var(--dark);}
.faq-question{padding:20px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-weight:600;color:var(--light);transition:background-color .3s;}
.faq-question:hover{background-color:rgba(212,175,55,0.1);}
.faq-question i{transition:transform .3s ease;}
.faq-item.active .faq-question{color:var(--primary);}
.faq-item.active .faq-question i{transform:rotate(180deg);}
.faq-answer{padding:0 20px;max-height:0;overflow:hidden;transition:max-height .4s ease,padding .4s ease;color:var(--gray);}
.faq-item.active .faq-answer{padding:0 20px 20px;max-height:300px;}

/* 10. FOOTER */
footer{background-color:var(--black);color:var(--gray);padding:60px 0 30px;border-top:1px solid var(--border-color);}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px;margin-bottom:40px;}
.footer-column h3{font-size:1.5rem;margin-bottom:20px;color:var(--primary-light);}
.footer-links{list-style:none;}
.footer-links li{margin-bottom:15px;}
.footer-links a{color:var(--gray);text-decoration:none;transition:color .3s;}
.footer-links a:hover{color:var(--lighter);}
.footer-legal{margin-top:40px;padding-top:40px;border-top:1px solid var(--border-color);}
.legal-content{max-height:300px;overflow-y:auto;padding-right:15px;text-align:left;color:var(--gray);font-size:.9rem;line-height:1.7;}
.legal-content h4{color:var(--primary-light);margin-top:20px;margin-bottom:10px;}
.legal-content p{margin-bottom:15px;}
.social-links{display:flex;gap:15px;margin-top:20px;}
.social-links a{width:40px;height:40px;border-radius:50%;background-color:var(--dark);display:flex;align-items:center;justify-content:center;color:var(--light);text-decoration:none;transition:all .3s;}
.social-links a:hover{background-color:var(--primary);color:var(--darker);}
.footer-bottom{text-align:center;padding-top:30px;border-top:1px solid var(--border-color);font-size:.9rem;}

/* 11. ELEMENTOS FLOTANTES Y MODALES */
.whatsapp-float{position:fixed;bottom:30px;right:30px;width:60px;height:60px;background-color:#25D366;color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;box-shadow:0 4px 20px rgba(37,211,102,0.4);z-index:999;transition:all .3s;text-decoration:none;animation:pulse 2s infinite;}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,0.7);}70%{box-shadow:0 0 0 15px rgba(37,211,102,0);}100%{box-shadow:0 0 0 0 rgba(37,211,102,0);}}
.whatsapp-float:hover{transform:scale(1.1);animation:none;}
.modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,0.85);z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;visibility:hidden;opacity:0;transition:visibility 0s .3s,opacity .3s ease;}
.modal.active{visibility:visible;opacity:1;transition:opacity .3s ease;}
.modal-content{background-color:var(--dark);color:var(--light);border-radius:15px;padding:40px;width:100%;max-width:500px;border:1px solid var(--border-color);box-shadow:0 20px 60px rgba(0,0,0,0.5);position:relative;transform:translateY(-20px);transition:transform .3s ease;}
.modal.active .modal-content{transform:translateY(0);}
.close-modal{position:absolute;top:15px;right:20px;font-size:28px;cursor:pointer;color:var(--gray);transition:color .3s;}
.close-modal:hover{color:var(--lighter);}
.modal-title{color:var(--primary-light);text-align:center;margin-bottom:10px;}
.modal-subtitle{text-align:center;color:var(--gray);margin-bottom:30px;}
.form-group{margin-bottom:20px;}
.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--gray);font-size:.9rem;}
.form-group input,.form-group select{width:100%;padding:14px 15px;border:1px solid var(--border-color);border-radius:8px;font-family:'Poppins',sans-serif;font-size:1rem;background-color:var(--darker);color:var(--light);transition:all .3s ease;}
.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(212,175,55,0.2);}
.form-group input[readonly]{background-color:var(--dark);cursor:default;font-weight:bold;}
.form-submit{text-align:center;margin-top:30px;}
.slots-container{display:flex;flex-direction:column;gap:10px;max-height:250px;overflow-y:auto;padding-right:10px;}
.time-slot{display:block;width:100%;padding:15px;background-color:var(--darker);border:1px solid var(--border-color);border-radius:8px;color:var(--light);text-align:center;cursor:pointer;transition:all .3s ease;}
.time-slot:hover{background-color:var(--primary);color:var(--darker);border-color:var(--primary);}
.slot-loading{text-align:center;color:var(--gray);padding:20px;}

/* 12. PORTAL DE PAGOS DE CLIENTES */
.payment-portal-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:40px 20px;}
.payment-portal{width:100%;max-width:500px;background-color:var(--dark);padding:40px;border-radius:15px;border:1px solid var(--border-color);box-shadow:0 20px 60px rgba(0,0,0,0.5);}
.portal-title,.portal-subtitle{text-align:center;}
.portal-subtitle{color:var(--gray);margin-bottom:40px;}
.payment-tabs{display:flex;margin-bottom:20px;border-radius:8px;overflow:hidden;border:1px solid var(--border-color);}
.tab-button{flex:1;padding:15px;background-color:var(--darker);color:var(--gray);text-align:center;cursor:pointer;transition:all .3s ease;border:none;font-weight:600;}
.tab-button.active,.tab-button:hover{background-color:var(--primary);color:var(--darker);}
.payment-content{display:none;}
.payment-content.active{display:block;}
.payment-description{font-size:.9rem;color:var(--gray);margin-bottom:20px;text-align:center;}
.bank-details{background-color:var(--darker);padding:20px;border-radius:8px;margin-bottom:20px;border:1px solid var(--border-color);}
.bank-details p{margin-bottom:10px;}
.bank-details strong{color:var(--primary-light);}
.file-input{width:100%;padding:10px;background-color:var(--darker);border:1px solid var(--border-color);border-radius:8px;color:var(--gray);}
.counter-subtext{font-family:'Poppins',sans-serif;color:var(--gray);font-size:.9rem;max-width:300px;margin:10px auto 0;font-weight:400;line-height:1.5;}
.problem-section{padding:60px 0;background-color:var(--light-bg);}
.problem-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-top:40px;}
.problem-card{background:white;padding:25px;border-radius:16px;box-shadow:0 4px 20px rgba(0,0,0,0.08);text-align:center;transition:transform .3s ease;}
.problem-card:hover{transform:translateY(-5px);}
.problem-icon{width:60px;height:60px;background:var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:white;font-size:24px;}
.problem-card h3{margin-bottom:12px;font-size:1.25rem;color:var(--darker);}
.problem-card p{color:var(--text-gray);line-height:1.6;}