*{margin:0;padding:0;box-sizing:border-box;}:root{--primary-dark:#020617;--accent-blue:#0038ff;--accent-cyan:#00d4ff;--accent-bright:#38bdf8;--text-light:#ffffff;--card-bg:rgba(2,6,23,0.6);}html{scroll-behavior:smooth;overflow-y:scroll;}html.lang-loading{visibility:hidden;opacity:0;}body{font-family:'Manrope',sans-serif;background-color:var(--primary-dark);color:var(--text-light);line-height:1.6;overflow-x:hidden;position:relative;min-height:100vh;display:flex;flex-direction:column;}body::before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;z-index:-2;background:radial-gradient(circle at 15% 50%,var(--accent-blue) 0%,transparent 50%),radial-gradient(circle at 85% 30%,var(--accent-cyan) 0%,transparent 45%),radial-gradient(circle at 50% 90%,#0f172a 0%,transparent 50%);background-size:160% 160%;filter:blur(80px);animation:auroraMove 15s ease infinite alternate;}body::after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;opacity:0.07;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");}@keyframes auroraMove{0%{background-position:0% 50%;}100%{background-position:100% 50%;}}@keyframes focusIn{to{opacity:1;filter:blur(0);transform:translateY(0);}}nav{position:fixed;top:0;width:100%;background:transparent;backdrop-filter:none;padding:1.5rem 5%;z-index:1000;display:flex;justify-content:space-between;align-items:center;transition:all 0.4s ease;border-bottom:none;}nav.scrolled{padding:0.8rem 5%;background:rgba(2,6,23,0.8);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,0.05);}.logo-container{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;line-height:1.2;text-decoration:none;cursor:pointer;}.logo{font-size:1.8rem;color:#fff;font-family:'Red Hat Display',sans-serif;text-transform:uppercase;font-weight:400;letter-spacing:1px;margin-bottom:2px;}.logo span{font-weight:700;color:#fff;}.tagline{font-family:'Manrope',sans-serif;font-size:0.8rem;font-weight:400;color:rgba(255,255,255,0.6);letter-spacing:0.3px;white-space:nowrap;}.nav-right{display:flex;gap:2rem;align-items:center;}.nav-links{display:flex;gap:2.5rem;list-style:none;padding:0;margin:0;}.nav-links a{color:transparent !important;text-decoration:none;font-weight:500;font-size:0.95rem;text-transform:uppercase;letter-spacing:0.5px;position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;padding:2px 0;}.nav-links a::before,.nav-links a::after{content:attr(data-active-text);position:absolute;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;transition:transform 0.4s cubic-bezier(0.19,1,0.22,1);}.nav-links a::before{top:0;color:var(--text-light);transform:translateY(0);}.nav-links a::after{top:100%;color:var(--accent-cyan);transform:translateY(0);text-shadow:0 0 10px rgba(0,212,255,0.4);}.nav-links a:hover::before{transform:translateY(-100%);}.nav-links a:hover::after{transform:translateY(-100%);}.nav-links a.active::before{color:var(--accent-cyan);text-shadow:0 0 10px rgba(0,212,255,0.4);}.lang-switch{background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);color:white;padding:5px 12px;border-radius:20px;cursor:pointer;font-size:0.85rem;transition:0.3s;font-weight:600;}.lang-switch:hover{background:var(--accent-cyan);color:var(--primary-dark);border-color:var(--accent-cyan);}.menu-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;z-index:1500;}.menu-toggle span{width:25px;height:3px;background:white;}.mobile-close{display:none;width:100%;justify-content:flex-end;padding-bottom:20px;}.close-btn{background:none;border:none;color:#fff;font-size:2.5rem;cursor:pointer;line-height:1;transition:color 0.3s;}.close-btn:hover{color:var(--accent-cyan);}footer{background:rgba(2,6,23,0.95);backdrop-filter:blur(10px);padding:4rem 5% 2rem 5%;text-align:center;border-top:1px solid rgba(255,255,255,0.1);margin-top:auto;position:relative;z-index:10;}.footer-contacts{display:flex;justify-content:center;flex-wrap:wrap;gap:3rem;margin-bottom:3rem;}.contact-item{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:1.1rem;transition:0.3s;}.contact-item:hover{color:var(--accent-cyan);text-shadow:0 0 10px rgba(0,212,255,0.4);}.contact-icon{width:24px;height:24px;fill:var(--accent-cyan);}.copyright{color:rgba(255,255,255,0.5);font-size:0.9rem;font-weight:400;border-top:1px solid rgba(255,255,255,0.05);padding-top:2rem;}.whatsapp-float{position:fixed;bottom:30px;right:30px;width:60px;height:60px;background:linear-gradient(135deg,#25D366,#128C7E);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1500;transition:0.3s;box-shadow:0 10px 20px rgba(0,0,0,0.3);}.whatsapp-float:hover{transform:scale(1.1);}.whatsapp-float svg{width:32px;height:32px;fill:white;}.chat-notification{position:absolute;top:0;right:0;background:#ef4444;width:20px;height:20px;border-radius:50%;font-size:11px;display:flex;align-items:center;justify-content:center;font-weight:bold;border:2px solid #020617;}.chat-widget{position:fixed;bottom:100px;right:30px;width:350px;height:500px;background:rgba(15,23,42,0.95);backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,0.1);border-radius:20px;display:flex;flex-direction:column;z-index:1400;box-shadow:0 20px 50px rgba(0,0,0,0.5);transform:translateY(20px);opacity:0;pointer-events:none;transition:all 0.4s cubic-bezier(0.165,0.84,0.44,1);}.chat-widget.active{transform:translateY(0);opacity:1;pointer-events:all;}.chat-header{padding:15px 20px;background:rgba(2,6,23,0.9);border-bottom:1px solid rgba(255,255,255,0.1);border-radius:20px 20px 0 0;display:flex;justify-content:space-between;align-items:center;}.chat-title{display:flex;align-items:center;gap:12px;}.chat-avatar{width:40px;height:40px;background:var(--accent-cyan);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;color:#000;font-size:0.9rem;}.operator-name{font-weight:700;font-size:1rem;color:#fff;}.operator-status{font-size:0.75rem;color:#4ade80;display:flex;align-items:center;gap:5px;}.operator-status::before{content:'';width:6px;height:6px;background:#4ade80;border-radius:50%;}.chat-close{background:none;border:none;color:rgba(255,255,255,0.5);font-size:1.5rem;cursor:pointer;transition:0.3s;}.chat-close:hover{color:#fff;}.chat-body{flex:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:15px;}.chat-body::-webkit-scrollbar{width:5px;}.chat-body::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.1);border-radius:10px;}.msg{max-width:85%;padding:12px 16px;border-radius:12px;font-size:0.95rem;line-height:1.5;animation:msgFade 0.3s ease;}.msg.bot{background:rgba(255,255,255,0.08);color:#fff;border-radius:12px 12px 12px 2px;align-self:flex-start;border:1px solid rgba(255,255,255,0.05);white-space:pre-line;}.msg.user{background:var(--accent-cyan);color:#020617;border-radius:12px 12px 2px 12px;align-self:flex-end;font-weight:600;}.chat-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px;}.chat-btn{background:transparent;border:1px solid var(--accent-cyan);color:var(--accent-cyan);padding:8px 14px;border-radius:20px;font-size:0.85rem;cursor:pointer;transition:0.3s;font-family:inherit;font-weight:500;}.chat-btn:hover{background:rgba(0,212,255,0.1);transform:translateY(-2px);}.chat-footer{padding:10px;display:flex;gap:8px;align-items:center;border-top:1px solid rgba(255,255,255,0.05);}.chat-input{flex:1;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.15);border-radius:20px;padding:10px 16px;color:#fff;font-size:0.9rem;font-family:inherit;outline:none;transition:border-color 0.3s;}.chat-input::placeholder{color:rgba(255,255,255,0.35);}.chat-input:focus{border-color:var(--accent-cyan);}.chat-send-btn{width:38px;height:38px;min-width:38px;background:var(--accent-cyan);border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:0.3s;}.chat-send-btn:hover{transform:scale(1.1);box-shadow:0 0 15px rgba(0,212,255,0.4);}.chat-send-btn svg{width:18px;height:18px;color:#020617;}@keyframes msgFade{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}@media (max-width:768px){section{padding:3rem 5%;}footer{padding:3rem 5% 1.5rem 5%;}.nav-links{position:fixed;top:0;right:-100%;height:100vh;width:80%;background:var(--primary-dark);flex-direction:column;padding:2rem;transition:0.3s cubic-bezier(0.4,0,0.2,1);border-left:1px solid rgba(255,255,255,0.1);box-shadow:-10px 0 30px rgba(0,0,0,0.5);z-index:2000;}.nav-links.active{right:0;}.mobile-close,.menu-toggle{display:flex;}.footer-contacts{flex-direction:column;gap:1.5rem;}.chat-widget{width:90%;right:5%;bottom:100px;height:60vh;}}


/* --- REQUEST INFO BUTTON (9bureau-style rotating border beam) --- */
.ri-nav-item{list-style:none;}
.request-info-btn{position:relative;background:transparent;border:none;color:#fff;padding:5px 16px;border-radius:50px;cursor:pointer;font-size:0.95rem;font-family:inherit;font-weight:500;letter-spacing:0.5px;z-index:1;transition:all 0.3s ease;isolation:isolate;display:inline-flex;align-items:center;}
.request-info-btn::before{content:'';position:absolute;inset:-2px;border-radius:50px;padding:2px;background:conic-gradient(from var(--beam-angle,0deg),transparent 0%,transparent 70%,#fff 78%,var(--accent-cyan) 85%,transparent 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:borderBeamRotate 3s linear infinite;pointer-events:none;}
.request-info-btn::after{content:'';position:absolute;inset:0;border-radius:50px;border:1px solid rgba(255,255,255,0.12);pointer-events:none;}
.request-info-btn:hover{color:var(--accent-cyan);box-shadow:0 0 25px rgba(0,212,255,0.15);}
@keyframes borderBeamRotate{0%{--beam-angle:0deg;}100%{--beam-angle:360deg;}}
@property --beam-angle{syntax:'<angle>';initial-value:0deg;inherits:false;}

/* --- REQUEST INFO MODAL --- */
.ri-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);backdrop-filter:blur(8px);z-index:5000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity 0.4s ease;}
.ri-overlay.active{opacity:1;pointer-events:all;}
.ri-modal{background:rgba(15,23,42,0.92);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,0.1);border-radius:20px;width:90%;max-width:580px;padding:40px;position:relative;transform:translateY(30px) scale(0.95);transition:transform 0.4s cubic-bezier(0.165,0.84,0.44,1);box-shadow:0 30px 80px rgba(0,0,0,0.6);}
.ri-overlay.active .ri-modal{transform:translateY(0) scale(1);}
.ri-close{position:absolute;top:15px;right:20px;background:none;border:none;color:rgba(255,255,255,0.5);font-size:1.8rem;cursor:pointer;transition:0.3s;z-index:10;}.ri-close:hover{color:#fff;}
.ri-progress{display:flex;justify-content:center;gap:8px;margin-bottom:25px;}
.ri-progress-dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,0.15);transition:0.3s;}
.ri-progress-dot.active{background:var(--accent-cyan);box-shadow:0 0 10px var(--accent-cyan);}
.ri-title{text-align:center;font-size:1.5rem;font-weight:700;margin-bottom:8px;color:#fff;}
.ri-subtitle{text-align:center;font-size:0.95rem;color:rgba(255,255,255,0.6);margin-bottom:30px;}
.ri-step{display:none;}.ri-step.active{display:block;}

/* Step 1: Service Cards */
.ri-services{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.ri-card-full{grid-column:1 / -1;}
.ri-service-card{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);border-radius:12px;padding:18px;cursor:pointer;transition:all 0.3s;display:flex;align-items:flex-start;gap:12px;position:relative;}
.ri-service-card:hover{border-color:rgba(0,212,255,0.3);background:rgba(0,212,255,0.05);}
.ri-service-card.selected{border-color:var(--accent-cyan);background:rgba(0,212,255,0.08);}
.ri-card-icon{width:36px;height:36px;border-radius:8px;background:rgba(0,212,255,0.1);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.ri-card-title{font-weight:600;font-size:0.95rem;color:#fff;margin-bottom:3px;}
.ri-card-desc{font-size:0.8rem;color:rgba(255,255,255,0.5);line-height:1.4;}
.ri-check{position:absolute;top:10px;right:10px;width:22px;height:22px;border-radius:50%;background:var(--accent-cyan);color:#000;display:none;align-items:center;justify-content:center;font-size:0.75rem;font-weight:800;}
.ri-service-card.selected .ri-check{display:flex;}

/* Step 2: Timeline */
.ri-timeline-options{display:flex;flex-direction:column;gap:12px;}
.ri-timeline-btn{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);color:#fff;padding:16px;border-radius:12px;font-size:0.95rem;font-family:inherit;font-weight:500;cursor:pointer;transition:all 0.3s;text-align:left;position:relative;}
.ri-timeline-btn:hover{border-color:rgba(0,212,255,0.3);background:rgba(0,212,255,0.05);}
.ri-timeline-btn.selected{border-color:var(--accent-cyan);background:rgba(0,212,255,0.08);}
.ri-timeline-btn::after{content:'';position:absolute;right:16px;top:50%;transform:translateY(-50%);width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,0.2);transition:all 0.3s;}
.ri-timeline-btn.selected::after{border-color:var(--accent-cyan);background:var(--accent-cyan);box-shadow:inset 0 0 0 4px rgba(15,23,42,0.92);}

/* Step 3: Contact Form */
.ri-form{display:flex;flex-direction:column;gap:16px;}
.ri-form-row{display:flex;gap:16px;}
.ri-form-row .ri-input{flex:1;}
.ri-input{width:100%;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);border-radius:10px;padding:14px 16px;color:#fff;font-size:0.95rem;font-family:inherit;outline:none;transition:0.3s;}
.ri-input::placeholder{color:rgba(255,255,255,0.4);}
.ri-input:focus{border-color:var(--accent-cyan);box-shadow:0 0 0 3px rgba(0,212,255,0.1);}

/* Step 3: Success */
.ri-success{text-align:center;padding:30px 0;}
.ri-success-icon{font-size:3.5rem;margin-bottom:15px;}
.ri-success-text{font-size:1.1rem;color:rgba(255,255,255,0.8);line-height:1.6;}

/* Buttons */
.ri-btn-row{display:flex;justify-content:space-between;margin-top:25px;gap:12px;}
.ri-btn{flex:1;padding:14px;border-radius:12px;font-size:0.95rem;font-family:inherit;font-weight:600;cursor:pointer;transition:0.3s;border:none;}
.ri-btn-next{background:var(--accent-cyan);color:#020617;}.ri-btn-next:hover{box-shadow:0 0 25px rgba(0,212,255,0.3);}
.ri-btn-back{background:rgba(255,255,255,0.08);color:#fff;border:1px solid rgba(255,255,255,0.15);}.ri-btn-back:hover{background:rgba(255,255,255,0.12);}
.ri-btn:disabled{opacity:0.4;cursor:not-allowed;}

@media (max-width:768px){.ri-services{grid-template-columns:1fr;}.ri-modal{padding:25px;}.request-info-btn{display:none;}}
/* --- CAREER APPLICATION MODAL --- */
.car-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.8);backdrop-filter:blur(8px);z-index:5000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity 0.4s ease;}
.car-overlay.active{opacity:1;pointer-events:all;}
.car-modal{background:rgba(15,23,42,0.95);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,0.1);border-radius:20px;width:95%;max-width:700px;max-height:90vh;overflow-y:auto;padding:40px;position:relative;transform:translateY(30px) scale(0.95);transition:all 0.4s cubic-bezier(0.165,0.84,0.44,1);box-shadow:0 30px 80px rgba(0,0,0,0.6);}
.car-overlay.active .car-modal{transform:translateY(0) scale(1);}
.car-modal::-webkit-scrollbar{width:6px;}.car-modal::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.1);border-radius:10px;}
.car-title{font-size:1.8rem;font-weight:700;color:#fff;margin-bottom:5px;font-family:'Gilroy-Bold',sans-serif;}
.car-subtitle{font-size:1rem;color:var(--accent-cyan);margin-bottom:30px;font-weight:600;}
.car-form-row{display:flex;gap:20px;margin-bottom:0;}
.car-input-group{display:flex;flex-direction:column;gap:8px;flex:1;margin-bottom:20px;}
.car-form-row .car-input-group{margin-bottom:20px;}
.car-input-group label{font-size:0.8rem;font-weight:600;color:rgba(255,255,255,0.7);text-transform:uppercase;letter-spacing:1px;}
.car-input{width:100%;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);padding:14px 16px;border-radius:10px;color:#fff;font-size:1rem;font-family:inherit;transition:0.3s;outline:none;}
.car-input::placeholder{color:rgba(255,255,255,0.3);}
.car-input:focus{background:rgba(255,255,255,0.08);border-color:var(--accent-cyan);box-shadow:0 0 0 3px rgba(0,212,255,0.1);}
.car-textarea{resize:vertical;min-height:100px;}
.car-file-upload{position:relative;width:100%;background:rgba(255,255,255,0.05);border:1px dashed rgba(255,255,255,0.3);border-radius:10px;padding:20px;text-align:center;cursor:pointer;transition:0.3s;}
.car-file-upload.has-file{border-color:var(--accent-cyan);background:rgba(0,212,255,0.05);}
.car-file-upload:hover{background:rgba(255,255,255,0.08);border-color:var(--accent-cyan);}
.car-file-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;}
.car-file-label{color:#fff;font-size:0.95rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.car-btn-submit{width:100%;padding:16px;background:var(--accent-cyan);color:#020617;font-size:1rem;font-weight:700;font-family:inherit;border:none;border-radius:12px;cursor:pointer;transition:0.3s;margin-top:10px;text-transform:uppercase;letter-spacing:1px;}
.car-btn-submit:hover{box-shadow:0 0 25px rgba(0,212,255,0.4);transform:translateY(-2px);}
.car-btn-submit:disabled{background:grey;box-shadow:none;transform:none;cursor:not-allowed;}
@media (max-width:768px){.car-form-row{flex-direction:column;gap:0;}.car-modal{padding:25px;}}

/* --- UTILITIES & FIXES --- */
.ri-spinner { display: inline-block; width: 16px; height: 16px; border: 2px solid rgba(255,255,255,0.3); border-top-color: #fff; border-radius: 50%; animation: spin 1s linear infinite; margin-right: 8px; vertical-align: middle; }
@keyframes spin { 100% { transform: rotate(360deg); } }
.gallery-item img { aspect-ratio: 4/3; object-fit: cover; }

/* Accessibility */
:focus-visible {
    outline: 2px solid var(--accent-cyan) !important;
    outline-offset: 3px !important;
}