@charset "UTF-8";
@font-face{font-family:'BreePeru';src:url('fonts/BreePeru_Bold.otf') format('opentype');font-weight:700;font-style:normal;font-display:swap;}@font-face{font-family:'BreePeru';src:url('fonts/BreePeru_Regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap;}@font-face{font-family:'FF Clan OT';src:url('fonts/FF-Clan-OT-Bold.woff') format('woff'),url('fonts/FF_Clan_OT_Bold.otf') format('opentype');font-weight:700;font-style:normal;font-display:swap;}@font-face{font-family:'FF Clan OT';src:url('fonts/FF-Clan-OT-News.woff') format('woff'),url('fonts/FF_Clan_OT_News.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap;}:root{--c-graphite:#0F172A;--c-graphite-light:#1E293B;--c-orange:#FF5A00;--c-orange-hover:#D94E00;--c-yellow:#F59E0B;--c-light:#F8FAFC;--c-white:#FFFFFF;--c-gray:#64748B;--c-success:#059669;--c-danger:#DC2626;--font-main:'FF Clan OT',sans-serif;--font-heading:'BreePeru',sans-serif;--transition:all 0.3s cubic-bezier(0.4,0,0.2,1);}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}*{margin:0;padding:0;box-sizing:border-box;}body{font-family:var(--font-main);background-color:var(--c-light);color:var(--c-graphite);line-height:1.6;overflow-x:hidden;}h1,h2,h3,h4,h5,h6,.brand,.hero-content h1,.section-title,.catalog-header h1,.cat-name,.prod-title{font-family:var(--font-heading);font-weight:700;}a{text-decoration:none;color:inherit;}ul{list-style:none;}img{max-width:100%;height:auto;display:block;}.container{width:100%;max-width:1280px;padding:0 25px;margin:0 auto;}.section{padding-top:80px;padding-bottom:80px;}@media (max-width:768px){.section{padding-top:60px;padding-bottom:60px;}.container{padding:0 20px;}}.section-header{margin-bottom:40px;display:flex;justify-content:space-between;align-items:flex-end;}.section-title{font-size:2.2rem;font-weight:700;color:var(--c-graphite);text-transform:uppercase;letter-spacing:-1px;}.navbar{background:#0a0a0a;border-bottom:3px solid var(--c-orange);box-shadow:0 10px 30px rgba(0,0,0,0.5);position:sticky;top:0;z-index:1000;transition:var(--transition);}.nav-container{display:flex;align-items:center;justify-content:space-between;min-height:80px;padding:10px 25px;gap:20px;position:relative;max-width:1280px !important;width:100% !important;margin:0 auto;}.brand{display:inline-block;font-family:var(--font-heading);font-weight:900;font-size:1.6rem;color:var(--c-white);letter-spacing:-0.5px;}.brand span{color:var(--c-orange);}.brand-icon{background:var(--c-orange);color:var(--c-white);width:35px;height:35px;display:flex;justify-content:center;align-items:center;border-radius:8px;font-size:1.2rem;box-shadow:0 4px 10px rgba(255,107,53,0.3);}.nav-menu-wrapper{display:flex;align-items:center;gap:20px;flex-grow:0;}.nav-menu{display:flex;gap:16px;align-items:center;flex-wrap:wrap;justify-content:flex-start;margin:0;padding:0;}.nav-menu > li{display:flex;align-items:center;}.nav-menu > li:not(:last-child)::after{content:'';display:block;width:1px;height:14px;background-color:rgba(255,255,255,0.2);margin-left:16px;}.nav-menu a{color:#e2e8f0;font-weight:700;font-size:0.85rem;text-transform:uppercase;letter-spacing:0.5px;transition:var(--transition);display:flex;align-items:center;gap:5px;padding:10px 0;white-space:nowrap;}.nav-menu a:hover{color:var(--c-orange);}.user-profile-btn{position:relative;display:inline-block;}.btn-user-profile{display:flex;align-items:center;gap:10px;padding:6px 14px;background:rgba(255,107,53,0.08);border:1px solid rgba(255,107,53,0.2);border-radius:50px;color:var(--c-white);font-weight:800;font-size:0.8rem;text-transform:uppercase;transition:var(--transition);cursor:pointer;outline:none;}.btn-user-profile:hover{background:rgba(255,107,53,0.15);border-color:var(--c-orange);box-shadow:0 4px 12px rgba(255,107,53,0.1);}.btn-user-profile .avatar-circle{width:24px;height:24px;background:var(--c-orange);color:var(--c-white);font-weight:900;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.75rem;box-shadow:0 2px 5px rgba(255,107,53,0.3);}.user-dropdown-menu{position:absolute;top:calc(100% + 10px);right:0;width:220px;background:#0f172a;border-radius:12px;box-shadow:0 15px 35px rgba(0,0,0,0.5);border:1px solid rgba(255,255,255,0.08);border-top:3px solid var(--c-orange);z-index:1002;opacity:0;visibility:hidden;transform:translateY(10px);transition:var(--transition);overflow:hidden;padding:8px 0;list-style:none;margin:0;}.user-profile-btn:hover .user-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0);}.user-dropdown-menu li{width:100%;border:none !important;background:transparent !important;}.user-dropdown-menu a{display:flex;align-items:center;gap:12px;padding:12px 18px;color:#94a3b8 !important;font-size:0.85rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;transition:var(--transition);border-radius:0 !important;}.user-dropdown-menu a:hover{background:rgba(255,255,255,0.04) !important;color:var(--c-orange) !important;padding-left:22px !important;}.user-dropdown-menu a.logout-item{color:var(--c-danger) !important;border-top:1px solid rgba(255,255,255,0.05) !important;}.user-dropdown-menu a.logout-item:hover{background:rgba(239,68,68,0.05) !important;color:#f87171 !important;}.has-dropdown{position:static;}.submenu{position:absolute;top:100%;left:20px;width:calc(100% - 40px);background:rgba(5,5,5,0.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 20px 40px rgba(0,0,0,0.8);padding:15px;border-radius:0 0 16px 16px;opacity:0;visibility:hidden;transition:var(--transition);transform:translateY(15px);border:1px solid rgba(255,255,255,0.05);border-top:2px solid var(--c-orange);display:grid;grid-template-columns:repeat(4,1fr);gap:4px 15px;}.has-dropdown:hover .submenu{opacity:1;visibility:visible;transform:translateY(0);}.submenu li{border-bottom:1px solid rgba(255,255,255,0.03);transition:var(--transition);border-radius:6px;}.submenu li:hover{border-bottom-color:transparent;background:rgba(255,255,255,0.03);}.submenu a{display:flex;align-items:center;gap:8px;padding:6px 10px;text-transform:none;font-weight:600;color:#94a3b8;font-size:0.82rem;transition:var(--transition);border-radius:6px;overflow:hidden;min-width:0;}.submenu a svg{flex-shrink:0;}.submenu a span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-grow:1;min-width:0;}.submenu a::after{content:'â†’';font-size:1rem;color:var(--c-orange);opacity:0;transform:translateX(-6px);transition:var(--transition);margin-left:auto;flex-shrink:0;}.submenu a:hover{color:var(--c-orange);padding-left:12px;}.submenu a:hover::after{opacity:1;transform:translateX(0);}.nav-search{position:relative;display:none;flex-grow:1;max-width:550px;margin:0 30px;}@media (min-width:1024px){.nav-search{display:block;}}.nav-search input{width:100%;height:42px;padding:0 45px 0 22px;border-radius:50px;border:1px solid rgba(255,255,255,0.25);background:rgba(255,255,255,0.04);color:white;font-size:0.85rem;font-weight:600;outline:none;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);letter-spacing:0.3px;backdrop-filter:blur(5px);}.nav-search input::placeholder{color:#64748b;font-weight:500;}.nav-search input:focus{border-color:var(--c-orange);background:rgba(10,10,10,0.85);box-shadow:0 0 0 4px rgba(255,107,53,0.15),0 10px 25px -5px rgba(0,0,0,0.3);}.nav-search button{position:absolute;right:15px;top:50%;transform:translateY(-50%);background:none;border:none;color:#64748b;cursor:pointer;transition:var(--transition);z-index:2;display:flex;align-items:center;justify-content:center;}.nav-search button:hover{color:var(--c-orange) !important;transform:translateY(-50%) scale(1.1);}.search-suggestions{position:absolute;top:calc(100% + 8px);left:0;width:100%;background:rgba(15,23,42,0.96);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-radius:14px;box-shadow:0 20px 40px rgba(0,0,0,0.6);border:1px solid rgba(255,255,255,0.08);border-top:3px solid var(--c-orange);z-index:1001;display:none;overflow-y:auto;flex-direction:column;max-height:350px;}.search-suggestions::-webkit-scrollbar{width:6px;}.search-suggestions::-webkit-scrollbar-track{background:rgba(255,255,255,0.02);border-radius:0 14px 14px 0;}.search-suggestions::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.1);border-radius:10px;}.search-suggestions::-webkit-scrollbar-thumb:hover{background:var(--c-orange);}.search-suggestion-item{padding:14px 18px;display:flex;align-items:center;gap:14px;color:#e2e8f0;font-size:0.85rem;font-weight:700;border-bottom:1px solid rgba(255,255,255,0.04);transition:var(--transition);text-transform:uppercase;}.search-suggestion-item:last-child{border-bottom:none;}.search-suggestion-item:hover{background:rgba(255,255,255,0.04);color:var(--c-orange);padding-left:24px;}.search-suggestion-img{width:40px;height:40px;object-fit:contain;border-radius:8px;background:#fff;padding:3px;border:1px solid rgba(255,255,255,0.1);flex-shrink:0;}.nav-actions-right{display:flex;align-items:center;gap:20px;}.cart-btn{background:none;border:none;color:var(--c-white);cursor:pointer;position:relative;transition:var(--transition);display:flex;align-items:center;padding:5px;}.cart-btn:hover{color:var(--c-orange);transform:scale(1.05);}.cart-badge{position:absolute;top:-5px;right:-5px;background:var(--c-orange);color:var(--c-white);font-size:0.7rem;font-weight:900;width:20px;height:20px;display:flex;justify-content:center;align-items:center;border-radius:50%;border:2px solid #0a0a0a;}.btn-login-nav{background:rgba(255,255,255,0.05);color:var(--c-white);padding:10px 20px;border-radius:50px;font-weight:800;font-size:0.85rem;text-transform:uppercase;transition:var(--transition);align-items:center;gap:6px;border:1px solid rgba(255,255,255,0.1);letter-spacing:0.5px;}.desktop-only-btn{display:none;}@media (min-width:1024px){.desktop-only-btn{display:inline-flex;}.mobile-only-btn{display:none;}}.btn-login-nav:hover{background:var(--c-orange);border-color:var(--c-orange);box-shadow:0 8px 15px rgba(255,107,53,0.3);color:white;}.mobile-toggle{display:none;background:none;border:none;color:var(--c-white);cursor:pointer;padding:5px;}.close-icon{display:none;}@media (max-width:1024px){.nav-container{padding:12px 15px;flex-wrap:wrap;gap:10px;min-height:auto;}.brand{order:1;}.nav-actions-right{order:2;}.nav-search{display:block !important;order:3;width:100%;margin:5px 0;max-width:none;}.nav-search input{width:100%;height:42px;padding:0 45px 0 20px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.25);color:white;cursor:text;border-radius:50px;}.nav-search input::placeholder{color:#64748b;}.nav-search button{pointer-events:auto;color:#64748b;right:15px;}.mobile-toggle{display:block;margin-right:0;}.nav-menu-wrapper{position:fixed;top:135px;left:0;width:100%;height:calc(100vh - 135px);background:#0a0a0a;flex-direction:column;padding:30px 20px;display:none;overflow-y:auto;justify-content:flex-start;border-top:1px solid rgba(255,255,255,0.1);z-index:999;order:4;}.nav-menu-wrapper.active{display:flex;}.nav-menu{flex-direction:column;width:100%;gap:15px;}.nav-menu > li{width:100%;display:block;}.nav-menu > li:not(:last-child)::after{display:none;}.nav-menu a{font-size:1.1rem;padding:15px;border-radius:12px;background:rgba(255,255,255,0.02);}.has-dropdown{padding:0;margin:0;position:relative;}.submenu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:none;border-left:2px solid var(--c-orange);margin-left:15px;margin-top:10px;padding:0;display:none;background:transparent;width:100%;grid-template-columns:1fr;gap:0;}.has-dropdown.active .submenu{display:block;}.submenu li{border-bottom:1px solid rgba(255,255,255,0.05);}.submenu li:hover{border-bottom-color:transparent;}.submenu a{font-size:1rem;padding:12px 20px;background:transparent;color:#cbd5e1;display:flex;align-items:center;gap:12px;}.submenu a:hover{background:transparent;color:var(--c-orange);padding-left:25px;}.btn-login-nav.mobile-only-btn{display:inline-flex;width:100%;justify-content:center;margin-top:20px;padding:15px;}.mobile-user-card{background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);border-radius:10px;padding:20px;margin-top:25px;display:flex;flex-direction:column;gap:15px;width:100%;}.mobile-user-info{display:flex;align-items:center;gap:12px;}.mobile-user-info .avatar-circle{width:38px;height:38px;background:var(--c-orange);color:var(--c-white);font-weight:900;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;box-shadow:0 4px 10px rgba(255,107,53,0.3);}.user-details{display:flex;flex-direction:column;text-align:left;}.user-details .user-name{color:var(--c-white);font-weight:800;font-size:1rem;}.user-details .user-role{color:var(--c-orange);font-size:0.7rem;font-weight:900;text-transform:uppercase;letter-spacing:1px;margin-top:2px;}.mobile-user-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-top:1px solid rgba(255,255,255,0.06);padding-top:15px;}.btn-mobile-link{display:flex;align-items:center;justify-content:center;gap:8px;background:rgba(255,255,255,0.05);color:var(--c-white) !important;font-size:0.8rem;font-weight:800;padding:10px;border-radius:8px;text-align:center;border:1px solid rgba(255,255,255,0.08);}.btn-mobile-logout{display:flex;align-items:center;justify-content:center;gap:8px;background:rgba(239,68,68,0.1);color:#f87171 !important;font-size:0.8rem;font-weight:800;padding:10px;border-radius:8px;text-align:center;border:1px solid rgba(239,68,68,0.2);}.btn-mobile-logout:hover{background:rgba(239,68,68,0.2);}.mobile-toggle.active .hamburger-icon{display:none;}.mobile-toggle.active .close-icon{display:block !important;}}.hero-section{position:relative;min-height:80vh;background:#050505;overflow:hidden;width:100%;display:block;border-bottom:4px solid var(--c-orange);}.slide{position:absolute;top:0;left:0;width:100% !important;height:100% !important;opacity:0;visibility:hidden;transition:opacity 1s ease-in-out,visibility 1s ease-in-out;display:flex !important;align-items:center !important;justify-content:center !important;z-index:1;}.slide.active{opacity:1 !important;visibility:visible !important;z-index:2;}.slide picture{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0.75;transition:transform 6s ease-out;transform:scale(1.06);z-index:0;}.slide.active .hero-bg{transform:scale(1);}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(5,5,5,0.7) 0%,rgba(5,5,5,0.4) 60%,rgba(5,5,5,0.9) 100%);z-index:1;}.hero-content{width:100% !important;max-width:800px !important;margin:0 auto !important;padding:0 20px !important;position:relative !important;z-index:10 !important;text-align:center !important;display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;box-sizing:border-box !important;}.hero-badge{display:inline-flex;align-items:center;justify-content:center;background:rgba(255,107,53,0.15);border:1px solid rgba(255,107,53,0.4);color:var(--c-orange);font-weight:800;font-size:0.75rem;padding:6px 16px;border-radius:50px;margin-bottom:20px;text-transform:uppercase;letter-spacing:1.5px;backdrop-filter:blur(4px);text-align:center;}.hero-content h1{font-size:clamp(2.2rem,5vw,4.5rem);font-weight:700;color:var(--c-white) !important;line-height:1.15;margin-bottom:20px;text-transform:uppercase;letter-spacing:-0.5px;text-shadow:0 10px 30px rgba(0,0,0,0.8);text-align:center !important;width:100%;}.hero-content h1 span{color:var(--c-orange);}.hero-content p{font-size:1.1rem;color:#f8fafc;line-height:1.6;margin:0 auto 30px auto;text-shadow:0 4px 10px rgba(0,0,0,0.8);max-width:700px;text-align:center !important;width:100%;}.btn-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--c-orange);color:var(--c-white);padding:16px 32px;font-weight:700;font-size:1rem;text-transform:uppercase;border-radius:10px;transition:var(--transition);border:none;cursor:pointer;letter-spacing:0.5px;}.btn-cta:hover{background:var(--c-orange-hover);transform:translateY(-2px);box-shadow:0 10px 25px rgba(255,107,53,0.35);}.slider-btn{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,0.1);backdrop-filter:blur(4px);color:var(--c-white);border:none;width:50px;height:50px;cursor:pointer;font-size:1.2rem;z-index:10;border-radius:50%;transition:var(--transition);display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,0.2);}.slider-btn:hover{background:var(--c-orange);border-color:var(--c-orange);}.slider-btn.prev{left:30px;}.slider-btn.next{right:30px;}.slider-dots{position:absolute;bottom:50px;width:100%;text-align:center;z-index:10;}.dot{cursor:pointer;height:12px;width:12px;margin:0 6px;background-color:rgba(255,255,255,0.3);border-radius:50%;display:inline-block;transition:var(--transition);}.dot.active,.dot:hover{background-color:var(--c-orange);width:30px;border-radius:6px;}.about-hero{background:linear-gradient(135deg,rgba(10,10,10,0.9) 0%,rgba(10,10,10,0.4) 100%),url('https://images.unsplash.com/photo-1581091226825-a6a2a5aee158?auto=format&fit=crop&q=80&w=2000') center/cover fixed;padding:150px 0 120px 0;text-align:center;border-bottom:4px solid var(--c-orange);position:relative;}.about-hero h1{font-size:clamp(3rem,6vw,5rem);color:var(--c-white);text-transform:uppercase;letter-spacing:-2px;margin-bottom:20px;text-shadow:0 10px 30px rgba(0,0,0,0.5);}.about-hero p{color:var(--c-orange);font-size:clamp(1.2rem,2vw,1.5rem);font-weight:800;text-transform:uppercase;letter-spacing:4px;}.nosotros-wrapper{background:var(--c-white);border-radius:30px;padding:60px;box-shadow:0 20px 50px rgba(0,0,0,0.05);margin-top:-80px;position:relative;z-index:10;border:1px solid #E5E7EB;}.nosotros-grid{display:grid;grid-template-columns:1fr;gap:50px;align-items:center;}@media (min-width:1024px){.nosotros-grid{grid-template-columns:1fr 1fr;gap:80px;}}.nosotros-text .badge-tag{background:rgba(255,107,53,0.1);color:var(--c-orange);padding:8px 20px;border-radius:50px;font-size:0.85rem;font-weight:900;text-transform:uppercase;letter-spacing:2px;margin-bottom:20px;display:inline-block;}.nosotros-text h2{font-size:clamp(2rem,3vw,2.8rem);color:var(--c-graphite);line-height:1.1;margin-bottom:30px;text-transform:uppercase;letter-spacing:-1px;}.nosotros-text p{font-size:1.15rem;color:#475569;line-height:1.8;margin-bottom:20px;text-align:justify;}.nosotros-img{position:relative;z-index:1;}.nosotros-img img{border-radius:12px;box-shadow:0 25px 50px -12px rgba(0,0,0,0.25);width:100%;height:auto;object-fit:cover;border:4px solid var(--c-white);position:relative;z-index:2;}.nosotros-img::after{content:'';position:absolute;bottom:-20px;right:-20px;width:150px;height:150px;background:radial-gradient(circle,rgba(255,107,53,0.3) 0%,transparent 70%);z-index:0;border-radius:50%;}.mv-grid{display:grid;grid-template-columns:1fr;gap:30px;margin-top:60px;}@media (min-width:768px){.mv-grid{grid-template-columns:1fr 1fr;}}.mv-card{background:#f8fafc;padding:40px;border-radius:12px;border:1px solid #e2e8f0;transition:var(--transition);height:100%;}.mv-card:hover{transform:translateY(-5px);background:var(--c-white);box-shadow:0 20px 40px rgba(0,0,0,0.06);border-color:var(--c-orange);}.mv-card h3{font-size:1.15rem;color:var(--c-graphite);margin-bottom:20px;display:flex;align-items:center;gap:15px;text-transform:uppercase;}.mv-card h3 span{background:var(--c-orange);color:var(--c-white);width:50px;height:50px;display:flex;align-items:center;justify-content:center;border-radius:14px;font-size:1.5rem;box-shadow:0 10px 20px rgba(255,107,53,0.3);flex-shrink:0;}.mv-card p{color:#475569;font-size:1.1rem;line-height:1.7;text-align:justify;}.timeline-section{background:#0a0a0a;padding:100px 0;margin-top:80px;border-top:4px solid var(--c-orange);position:relative;overflow:hidden;}.timeline-section::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at center,rgba(255,107,53,0.1) 0%,transparent 70%);pointer-events:none;}.timeline-title{text-align:center;font-size:clamp(2rem,4vw,3rem);margin-bottom:60px;color:var(--c-white);text-transform:uppercase;letter-spacing:-1px;position:relative;z-index:2;}.timeline-title span{color:var(--c-orange);}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px;text-align:center;position:relative;z-index:2;}.stat-item{background:rgba(255,255,255,0.03);padding:40px 20px;border-radius:12px;border:1px solid rgba(255,255,255,0.05);transition:var(--transition);}.stat-item:hover{background:rgba(255,255,255,0.05);border-color:var(--c-orange);transform:translateY(-5px);}.stat-item h4{font-family:var(--font-heading);font-size:4.5rem;font-weight:900;color:var(--c-orange);line-height:1;margin-bottom:10px;text-shadow:0 10px 20px rgba(255,107,53,0.2);}.stat-item p{font-size:1rem;font-weight:800;text-transform:uppercase;color:#cbd5e1;letter-spacing:2px;}@media (max-width:768px){.nosotros-wrapper{padding:30px 20px;margin-top:-40px;border-radius:12px;}.nosotros-text h2{font-size:1.8rem;}.stat-item{padding:30px 20px;}.stat-item h4{font-size:3.5rem;}}.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;}.cat-card{background:var(--c-white);padding:20px;border-radius:10px;border:1px solid #E5E7EB;display:flex;align-items:center;gap:15px;cursor:pointer;transition:var(--transition);}.cat-card:hover{border-color:var(--c-orange);box-shadow:0 15px 30px rgba(255,107,53,0.1);transform:translateY(-5px);}.cat-icon-wrapper{width:55px;height:55px;background:rgba(255,107,53,0.08);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--c-orange);transition:var(--transition);flex-shrink:0;}.cat-card:hover .cat-icon-wrapper{background:var(--c-orange);color:var(--c-white);transform:scale(1.1);}.cat-name{font-weight:800;font-size:0.95rem;color:var(--c-graphite);text-transform:uppercase;line-height:1.3;font-family:var(--font-main);}.cat-arrow{margin-left:auto;color:#cbd5e1;font-size:1.2rem;transition:var(--transition);font-weight:900;}.cat-card:hover .cat-arrow{color:var(--c-orange);transform:translateX(5px);}picture{display:flex;width:100%;height:100%;align-items:center;justify-content:center;}.prod-img a{display:flex;width:100%;height:100%;align-items:center;justify-content:center;}.gallery-cat-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:20px;}.gallery-cat-card{background:var(--soft-black,#121212);border:none;border-radius:12px;padding:30px;display:flex;flex-direction:column;justify-content:flex-end;transition:all 0.4s cubic-bezier(0.4,0,0.2,1);cursor:pointer;position:relative;overflow:hidden;text-decoration:none;color:var(--pure-white,#ffffff);box-shadow:0 10px 30px rgba(0,0,0,0.5);}.gallery-cat-card::before{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(5,5,5,0.95) 0%,rgba(5,5,5,0.4) 50%,rgba(5,5,5,0.1) 100%);z-index:1;transition:all 0.5s cubic-bezier(0.4,0,0.2,1);}.gallery-cat-card:hover{transform:translateY(-5px);border-color:var(--primary-orange,#ff6b00);box-shadow:0 15px 40px rgba(255,107,0,0.15);}.gallery-cat-card:hover::before{background:linear-gradient(to top,rgba(10,10,10,0.95) 0%,rgba(255,107,0,0.3) 60%,transparent 100%);}.gallery-cat-card .cat-icon-wrapper{font-size:2.5rem;margin-bottom:15px;background:rgba(255,107,0,0.15);backdrop-filter:blur(4px);width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:10px;color:var(--primary-orange,#ff6b00);transition:all 0.4s cubic-bezier(0.4,0,0.2,1);}.gallery-cat-card:hover .cat-icon-wrapper{background:var(--primary-orange,#ff6b00);color:var(--deep-black,#0a0a0a);transform:scale(1.1);}.gallery-cat-card .cat-name{color:#ffffff !important;font-family:var(--font-heading,'BreePeru',sans-serif);font-size:1.15rem;font-weight:700;line-height:1.2;z-index:2;text-shadow:0 4px 15px rgba(0,0,0,0.9);padding-right:25px;}.gallery-cat-card .cat-arrow{position:absolute;bottom:30px;right:30px;font-size:1.8rem;color:var(--primary-orange,#ff6b00);opacity:0;transform:translateX(-15px);transition:all 0.4s cubic-bezier(0.4,0,0.2,1);z-index:3;}.gallery-cat-card .cat-arrow::after { content: '\2192';}.gallery-cat-card:hover .cat-arrow{opacity:1;transform:translateX(0);}.gallery-cat-card .cat-bg-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:0.9;transition:all 0.7s cubic-bezier(0.4,0,0.2,1);}.gallery-cat-card:hover .cat-bg-img{transform:scale(1.1);opacity:1;}.gallery-cat-card:nth-child(1){grid-column:span 2;grid-row:span 2;background:linear-gradient(145deg,rgba(255,107,0,0.1) 0%,rgba(18,18,18,1) 100%);}.gallery-cat-card:nth-child(1) .cat-icon-wrapper{width:70px;height:70px;font-size:3rem;margin-bottom:20px;}.gallery-cat-card:nth-child(1) .cat-name{font-size:2.4rem;}.gallery-cat-card:nth-child(2){grid-column:span 2;grid-row:span 1;}.gallery-cat-card:nth-child(2) .cat-name{font-size:2rem;}@media (max-width:1024px){.gallery-cat-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:200px;}.gallery-cat-card:nth-child(1){grid-column:span 2;grid-row:span 1;}.gallery-cat-card:nth-child(1) .cat-icon-wrapper{width:60px;height:60px;font-size:2.5rem;margin-bottom:15px;}.gallery-cat-card:nth-child(1) .cat-name{font-size:1.8rem;}.gallery-cat-card:nth-child(2){grid-column:span 2;}}@media (max-width:640px){.gallery-cat-grid{grid-template-columns:1fr;grid-auto-rows:160px;gap:15px;}.gallery-cat-card:nth-child(1),.gallery-cat-card:nth-child(2){grid-column:span 1;}.gallery-cat-card{padding:20px;}.gallery-cat-card .cat-name{font-size:0.95rem !important;}.gallery-cat-card .cat-icon-wrapper{width:50px;height:50px;font-size:1.8rem !important;margin-bottom:10px;}.gallery-cat-card .cat-arrow{bottom:20px;right:20px;}}.prod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));column-gap:24px;row-gap:48px;}@media (min-width:768px){.prod-grid{grid-template-columns:repeat(4,1fr) !important;}}.prod-card{background:#ffffff;border:none;overflow:hidden;display:flex;flex-direction:column;position:relative;box-shadow:none;border-radius:0;}.badge-nuevo{position:absolute;top:12px;right:12px;background:var(--c-success);color:var(--c-white);padding:4px 10px;border-radius:6px;font-size:0.7rem;font-weight:800;text-transform:uppercase;z-index:10;letter-spacing:0.5px;box-shadow:0 4px 10px rgba(16,185,129,0.2);}.badge-oferta{position:absolute;top:12px;right:12px;background:var(--c-danger);color:var(--c-white);padding:4px 10px;border-radius:6px;font-size:0.7rem;font-weight:800;text-transform:uppercase;z-index:10;letter-spacing:0.5px;box-shadow:0 4px 10px rgba(239,68,68,0.2);}.prod-img-wrapper{position:relative;width:100%;aspect-ratio:1 / 1;background:#fbfbfb;overflow:hidden;border-radius:12px;}.prod-img{margin:0;padding:0;width:100%;height:100%;display:block;border:none;border-radius:12px;overflow:hidden;}.prod-img picture{display:block;width:100%;height:100%;margin:0;padding:0;border-radius:12px;overflow:hidden;}.prod-img img{width:100%;height:100%;object-fit:cover;mix-blend-mode:normal;transition:transform 0.6s cubic-bezier(0.25,1,0.5,1);display:block;border-radius:12px;}.prod-card:hover .prod-img img{transform:scale(1.04);}.btn-add-float{position:absolute;bottom:12px;right:12px;width:38px;height:38px;background:#ffffff;color:#0f172a;border:1px solid #e2e8f0;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 6px -1px rgba(0,0,0,0.05),0 2px 4px -1px rgba(0,0,0,0.03);opacity:0;transition:opacity 0.3s ease,background-color 0.2s ease,border-color 0.2s ease,color 0.2s ease;z-index:20;padding:0;box-sizing:border-box;}.prod-card:hover .btn-add-float{opacity:1;}@media (max-width:1024px){.btn-add-float{opacity:1 !important;}}.btn-add-float:hover{background:#0f172a;color:#ffffff;border-color:#0f172a;}.btn-add-float.added{background:#10b981;border-color:#10b981;color:#ffffff;}.btn-add-float svg{transition:transform 0.3s ease;}.btn-add-float:hover svg{transform:rotate(90deg);}.prod-info-editorial{padding:16px 8px 8px 8px;text-align:center;display:flex;flex-direction:column;align-items:center;width:100%;box-sizing:border-box;}.prod-brand-overline{font-family:var(--font-main);color:#94a3b8;font-size:0.65rem;font-weight:600;text-transform:uppercase;letter-spacing:2.5px;margin-bottom:8px;display:block;text-align:center;}.prod-title-editorial{font-family:var(--font-main);font-size:0.95rem;color:#0f172a;font-weight:600;line-height:1.4;margin:0 0 8px 0;text-align:center;text-decoration:none;transition:var(--transition);text-transform:none;height:2.8em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;box-sizing:border-box;}.prod-title-editorial:hover{color:#0284c7;}.prod-title-link{text-decoration:none;width:100%;}.prod-rating-stars{display:flex;align-items:center;justify-content:center;gap:4px;font-size:0.85rem;margin-bottom:8px;}.star-filled{color:#f59e0b;}.star-empty{color:#cbd5e1;}.rating-number{color:#64748b;font-size:0.75rem;font-weight:600;margin-left:2px;}.prod-price-editorial{display:flex;align-items:center;justify-content:center;gap:12px;font-size:1rem;margin-top:4px;font-family:'JetBrains Mono','Fira Code','Courier New',Courier,monospace;}.price-old{text-decoration:line-through;color:#94a3b8;font-size:0.85rem;}.price-current{font-weight:800;color:#0f172a;font-size:1.05rem;}.btn-cotizar-card{width:100%;background:#0f172a;color:#ffffff;border:1px solid #0f172a;padding:10px 16px;border-radius:6px;font-size:0.75rem;font-weight:700;text-transform:uppercase;cursor:pointer;transition:all 0.25s ease;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;text-decoration:none;box-sizing:border-box;}.btn-cotizar-card:hover{background:#0284c7;border-color:#0284c7;box-shadow:0 4px 12px rgba(2,132,199,0.15);}.btn-cotizar-card.added{background:#10b981;border-color:#10b981;}.btn-login-cotizar{background:#f1f5f9;color:#475569;border-color:#e2e8f0;}.btn-login-cotizar:hover{background:#e2e8f0;color:#0f172a;border-color:#cbd5e1;box-shadow:none;}@media (max-width:600px){.prod-grid{grid-template-columns:repeat(2,1fr);gap:12px;}.prod-card{border-radius:0;overflow:hidden;}.prod-img{width:100%;aspect-ratio:1 / 1;height:auto;padding:0 !important;display:block;box-sizing:border-box;}.prod-img picture{display:block;width:100%;height:100%;margin:0;padding:0;}.prod-img img{width:100% !important;height:100% !important;object-fit:cover !important;padding:0 !important;margin:0 !important;}.prod-info{padding:12px 10px;}.prod-meta{flex-direction:row;justify-content:space-between;align-items:center;gap:4px;margin-bottom:8px;}.prod-brand{font-size:0.65rem;}.prod-category-tag{font-size:0.55rem;padding:2px 5px;}.prod-title{font-size:0.78rem;line-height:1.2;height:2.4em;padding-bottom:0px;margin-bottom:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}.prod-price{font-size:1rem;padding:6px 10px;margin-bottom:12px;justify-content:flex-end;border-radius:6px;}.prod-price::before{font-size:0.75rem;}.btn-add{font-size:0.7rem;padding:8px 10px;gap:6px;line-height:1;text-align:center;flex-direction:row;}.btn-add svg{width:16px;height:16px;margin:0;}}.catalog-header{background:var(--c-graphite);color:var(--c-white);padding:50px 0;text-align:center;}.catalog-header h1{font-size:clamp(2rem,4vw,3rem);font-weight:700;text-transform:uppercase;color:var(--c-orange);margin-bottom:10px;}.catalog-header p{color:var(--c-gray);font-size:1.1rem;font-weight:500;}.filter-bar{background:var(--c-white);padding:20px;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,0.05);display:flex;flex-wrap:wrap;gap:15px;margin:-35px auto 50px auto;align-items:center;justify-content:space-between;border:1px solid #E5E7EB;position:relative;z-index:10;}.filter-form{display:flex;gap:15px;flex-grow:1;max-width:700px;flex-wrap:wrap;}.filter-input,.filter-select{flex-grow:1;padding:14px 20px;border-radius:10px;border:2px solid #E5E7EB;font-family:inherit;font-size:0.95rem;font-weight:600;outline:none;transition:var(--transition);}.filter-input:focus,.filter-select:focus{border-color:var(--c-orange);}.btn-filter{background:var(--c-orange);color:var(--c-white);border:none;padding:14px 25px;border-radius:10px;font-weight:800;cursor:pointer;transition:var(--transition);text-transform:uppercase;}.btn-filter:hover{background:var(--c-orange-hover);}.back-nav{display:inline-flex;align-items:center;gap:8px;padding:14px 25px;font-weight:800;color:var(--c-graphite);background:var(--c-light);border-radius:10px;border:1px solid #E5E7EB;transition:var(--transition);}.back-nav:hover{background:var(--c-graphite);color:var(--c-white);border-color:var(--c-graphite);}.pagination{display:flex;justify-content:center;gap:10px;margin-top:60px;margin-bottom:60px;flex-wrap:wrap;}.page-link{padding:12px 20px;border-radius:10px;border:2px solid #E5E7EB;background:var(--c-white);font-weight:800;color:var(--c-graphite);transition:var(--transition);}.page-link:hover{background:#f1f5f9;border-color:var(--c-gray);}.page-link.active{background:var(--c-orange);color:var(--c-white);border-color:var(--c-orange);}.breadcrumb-pro{padding:20px 0;margin-bottom:20px;font-size:0.85rem;font-weight:700;color:#64748b;}.breadcrumb-pro ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;align-items:center;}.breadcrumb-pro li{display:flex;align-items:center;gap:8px;}.breadcrumb-pro li:not(:last-child)::after{content:'/';color:#cbd5e1;font-weight:900;}.breadcrumb-pro a{color:var(--c-orange);transition:var(--transition);text-decoration:none;}.breadcrumb-pro a:hover{color:var(--c-graphite);text-decoration:underline;}.breadcrumb-pro li[aria-current="page"]{color:var(--c-graphite);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px;}.product-layout{display:grid;grid-template-columns:1fr;gap:50px;background:var(--c-white);padding:50px;border-radius:12px;border:1px solid #E5E7EB;box-shadow:0 20px 50px rgba(0,0,0,0.05);margin-bottom:50px;align-items:start;}.prod-gallery-sticky{position:relative;}@media (min-width:1024px){.product-layout{grid-template-columns:1fr 1fr;gap:60px;}.prod-gallery-sticky{position:sticky;top:120px;}}.product-layout > div{min-width:0;max-width:100%;}.prod-gallery{background:#fff;border-radius:12px;padding:0;display:block;border:1px solid #E5E7EB;position:relative;overflow:hidden;aspect-ratio:1 / 1;width:100%;height:auto;}.prod-gallery picture{display:block;width:100%;height:100%;margin:0;padding:0;}.prod-gallery img{width:100%;height:100%;object-fit:contain;background:#fff;padding:15px;mix-blend-mode:normal;transition:var(--transition);display:block;box-sizing:border-box;}.badge-cat-detail{position:absolute;top:20px;left:20px;background:var(--c-graphite);color:var(--c-white);padding:8px 18px;border-radius:10px;font-weight:800;font-size:0.8rem;text-transform:uppercase;}.prod-thumbnails{display:flex;gap:15px;margin-top:20px;overflow-x:auto;padding-bottom:10px;}.prod-thumbnails::-webkit-scrollbar{height:6px;}.prod-thumbnails::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px;}.thumb-item{width:80px;height:80px;flex-shrink:0;border-radius:12px;border:2px solid transparent;cursor:pointer;overflow:hidden;transition:var(--transition);background:#fff;box-shadow:0 2px 5px rgba(0,0,0,0.05);}.thumb-item img{width:100%;height:100%;object-fit:contain;padding:4px;mix-blend-mode:multiply;opacity:0.6;transition:var(--transition);}.thumb-item:hover img,.thumb-item.active img{opacity:1;}.thumb-item.active{border-color:var(--c-orange);box-shadow:0 5px 15px rgba(255,107,53,0.3);}.prod-share{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:25px;padding-top:20px;border-top:1px dashed #E5E7EB;}.prod-brand-container{margin-bottom:20px;width:100%;}.prod-brand-box{display:flex;width:100%;border-radius:8px;border:1px solid #cbd5e1;overflow:hidden;}.brand-lbl-left{background:#f1f5f9;color:#64748b;font-size:0.8rem;font-weight:800;padding:8px 12px;text-align:center;width:35%;display:flex;align-items:center;justify-content:center;}.brand-lbl-right{background:#ffffff;color:var(--c-orange);font-size:0.85rem;font-weight:900;padding:8px 12px;text-align:center;width:65%;border-left:1px solid #cbd5e1;word-wrap:break-word;overflow-wrap:break-word;}.prod-info-panel{padding:35px;background:#ffffff;border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 10px 30px rgba(15,23,42,0.02);transition:all 0.3s ease;}.prod-info-panel h1{font-family:var(--font-heading,'Plus Jakarta Sans',sans-serif);font-size:clamp(1.8rem,3.5vw,2.4rem);font-weight:900;line-height:1.25;color:#0f172a;margin:0 0 10px 0;text-transform:none !important;}.rating-interactive-section{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:25px;background:#f8fafc;padding:16px 20px;border-radius:12px;border:1px solid #e2e8f0;width:100%;box-sizing:border-box;}.rating-interactive-section .rating-title{font-size:0.72rem;font-weight:900;color:#475569;text-transform:uppercase;letter-spacing:0.5px;}.rating-interactive-section .interactive-stars{display:inline-flex;align-items:center;gap:4px;cursor:pointer;}.rating-interactive-section .rating-stats{font-size:0.8rem;font-weight:800;color:#64748b;}.prod-desc{font-family:var(--font-main,sans-serif);color:#475569;font-size:1rem;line-height:1.8;margin-bottom:25px;border-left:4px solid var(--c-orange);padding-left:16px;font-weight:400;text-align:justify;}.price-section{background:linear-gradient(180deg,#f8fafc 0%,#ffffff 100%);border:1px solid #e2e8f0;padding:24px 30px;border-radius:16px;margin-bottom:25px;box-sizing:border-box;width:100%;text-align:center;box-shadow:0 4px 12px rgba(0,0,0,0.01);}.price-section .price-label{font-size:0.72rem;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:0.8px;display:block;margin-bottom:8px;}.price-section .price-amount-wrapper{display:flex;align-items:baseline;justify-content:center;gap:6px;color:#0f172a;}.price-section .price-currency{font-size:1.5rem;font-weight:800;color:#475569;}.price-section .price-value{font-size:2.75rem;font-weight:900;letter-spacing:-1px;line-height:1;}.price-section .price-badge{font-size:0.75rem;color:#10b981;font-weight:750;margin-top:10px;display:flex;align-items:center;justify-content:center;gap:6px;}.prod-actions-grid{display:flex !important;flex-wrap:nowrap !important;gap:12px !important;margin-bottom:25px !important;width:100% !important;align-items:stretch !important;}.btn-quote{flex:1.6 !important;background:#0f172a !important;color:#ffffff !important;border:none !important;padding:14px 24px !important;border-radius:10px !important;font-weight:800 !important;font-size:0.85rem !important;text-transform:uppercase !important;letter-spacing:0.5px;cursor:pointer;transition:all 0.3s cubic-bezier(0.4,0,0.2,1) !important;display:flex !important;align-items:center;justify-content:center;gap:8px;}.btn-quote:hover{background:var(--c-orange) !important;transform:translateY(-2px);box-shadow:0 10px 20px rgba(255,107,53,0.25) !important;}.prod-trust-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:30px;}.trust-feat{display:flex;align-items:center;gap:12px;background:#F8FAFC;padding:14px 16px;border-radius:12px;border:1px solid #E2E8F0;font-size:0.75rem;font-weight:800;color:#334155;transition:all 0.25s cubic-bezier(0.4,0,0.2,1);text-transform:uppercase !important;}.trust-feat:hover{transform:translateY(-3px);border-color:var(--c-orange);box-shadow:0 8px 20px rgba(15,23,42,0.04);background:#ffffff;}.trust-feat svg{color:var(--c-orange);flex-shrink:0;transition:transform 0.3s ease;}.trust-feat:hover svg{transform:scale(1.15);}.specs-section{background:#ffffff;padding:40px;border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 10px 30px rgba(15,23,42,0.01);margin-bottom:60px;}.specs-section-title{font-family:var(--font-heading);font-size:1.5rem;font-weight:900;color:var(--c-graphite);text-transform:uppercase;margin-bottom:20px;border-bottom:3px solid var(--c-orange);padding-bottom:10px;display:inline-block;letter-spacing:0.5px;margin-top:0;}.specs-table{width:100%;border-collapse:collapse;}.specs-table th,.specs-table td{padding:18px 20px;border-bottom:1px solid #E5E7EB;text-align:left;transition:var(--transition);}.specs-table tr:hover th,.specs-table tr:hover td{background-color:#f8fafc;}.specs-table th{width:35%;background:#f8fafc;font-weight:800;color:#475569;text-transform:uppercase;font-size:0.9rem;}.specs-table td{font-weight:600;color:var(--c-graphite);font-size:1.05rem;}.specs-list{list-style:none;padding:0;margin:0;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#ffffff;box-shadow:0 4px 12px rgba(0,0,0,0.01);}.specs-list li{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e2e8f0;background-color:#ffffff;transition:all 0.25s cubic-bezier(0.4,0,0.2,1);position:relative;}.specs-list li:last-child{border-bottom:none;}.specs-list li:nth-child(odd){background-color:#f8fafc;}.specs-list li::before{content:'';position:absolute;left:0;top:0;bottom:0;width:0;background-color:var(--c-orange);transition:width 0.2s ease;}.specs-list li:hover{background-color:rgba(255,107,53,0.03) !important;padding-left:28px;}.specs-list li:hover::before{width:4px;}.specs-list li .spec-label{width:35%;font-weight:750;color:#475569;text-transform:uppercase;font-size:0.8rem;letter-spacing:0.8px;transition:color 0.2s ease;}.specs-list li:hover .spec-label{color:var(--c-orange);}.specs-list li .spec-value{width:65%;font-weight:600;color:#0f172a;font-size:0.95rem;text-align:left;}.prod-detailed-desc{color:#475569;line-height:1.8;font-size:1.05rem;margin-bottom:30px;font-weight:400;word-wrap:break-word;overflow-wrap:break-word;}@media (max-width:768px){.breadcrumb-pro{display:none;}.product-layout{padding:0;gap:0;border-radius:0;border-left:none;border-right:none;margin-left:-20px;margin-right:-20px;width:calc(100% + 40px);overflow:hidden;background:transparent;}.prod-gallery-sticky{width:100%;margin:0;padding:0;}.prod-gallery{height:380px;padding:0 !important;margin:0 !important;border-radius:0 !important;border:none !important;background:#fff;width:100%;display:block;}.prod-gallery picture{width:100%;height:100%;display:block;margin:0;padding:0;}.prod-gallery img{width:100% !important;height:100% !important;object-fit:cover !important;padding:0 !important;margin:0 !important;}.prod-thumbnails{padding:15px 20px;margin-top:0;background:#fff;border-bottom:none;}.prod-share{margin-top:0;padding:0 20px 20px 20px;background:#fff;border-top:none;border-bottom:1px solid #E5E7EB;}.prod-info-panel{padding:25px 20px;background:#fff;}.prod-brand-box{flex-direction:column;}.brand-lbl-left,.brand-lbl-right{width:100%;border-left:none;text-align:left;padding:10px 15px;}.brand-lbl-right{border-top:1px solid #cbd5e1;}.prod-info-panel h1{font-size:1.15rem;}.price-val{font-size:2rem;flex-wrap:wrap;line-height:1.1;margin-top:5px;}.specs-section{padding:25px 20px;border-radius:0;border-left:none;border-right:none;margin-bottom:40px;margin-left:-20px;margin-right:-20px;width:calc(100% + 40px);}.specs-table,.specs-table tbody,.specs-table tr,.specs-table th,.specs-table td{display:block;width:100%;text-align:left;}.specs-table tr{margin-bottom:15px;border:1px solid #E5E7EB;border-radius:12px;overflow:hidden;background:#fff;}.specs-table th{border-bottom:1px solid #E5E7EB;padding:12px 15px;background:#f8fafc;font-size:0.85rem;}.specs-table td{border-bottom:none;padding:12px 15px;font-size:1rem;word-wrap:break-word;overflow-wrap:break-word;}.specs-list li{flex-direction:column;align-items:flex-start;gap:4px;padding:14px 20px;}.specs-list li:hover{padding-left:24px;}.specs-list li .spec-label{width:100%;font-size:0.72rem;letter-spacing:0.5px;border-bottom:none;padding-bottom:0;margin-bottom:0;}.specs-list li .spec-value{width:100%;font-size:0.92rem;}}.clients-marquee-container{width:100%;overflow:hidden;position:relative;padding:20px 0;}.clients-marquee-container::before,.clients-marquee-container::after{content:'';position:absolute;top:0;width:100px;height:100%;z-index:2;pointer-events:none;}.clients-marquee-container::before{left:0;background:linear-gradient(to right,var(--c-light) 0%,transparent 100%);}.clients-marquee-container::after{right:0;background:linear-gradient(to left,var(--c-light) 0%,transparent 100%);}.clients-marquee-track{display:flex;gap:30px;width:max-content;animation:scrollClients 40s linear infinite;}.clients-marquee-track:hover{animation-play-state:paused;}.client-card-pro{background:var(--c-white);padding:20px 25px;border-radius:10px;border:1px solid #E5E7EB;display:flex;align-items:center;gap:20px;min-width:320px;max-width:400px;box-shadow:0 10px 30px rgba(0,0,0,0.03);transition:var(--transition);}.client-card-pro:hover{transform:translateY(-5px);border-color:var(--c-orange);box-shadow:0 15px 35px rgba(255,107,53,0.1);}.client-avatar{width:50px;height:50px;background:linear-gradient(135deg,var(--c-graphite) 0%,var(--c-graphite-light) 100%);color:var(--c-orange);border-radius:12px;display:flex;justify-content:center;align-items:center;font-size:1.5rem;font-family:var(--font-heading);font-weight:700;flex-shrink:0;}.client-info{display:flex;flex-direction:column;gap:4px;overflow:hidden;}.client-name{font-size:0.95rem;font-weight:800;color:var(--c-graphite);line-height:1.3;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.client-type{font-size:0.7rem;color:#64748b;font-weight:600;text-transform:uppercase;letter-spacing:1px;}@keyframes scrollClients{0%{transform:translateX(0);}100%{transform:translateX(calc(-50% - 15px));}}.contact-wrap{display:grid;grid-template-columns:1fr;gap:0;background:var(--c-white);border-radius:12px;overflow:hidden;border:1px solid #E5E7EB;box-shadow:0 15px 40px rgba(0,0,0,0.05);}@media (min-width:900px){.contact-wrap{grid-template-columns:1fr 1fr;}}.contact-info{background:var(--c-graphite);color:var(--c-white);padding:50px;}.contact-info h3{font-size:2.2rem;font-weight:900;margin-bottom:15px;color:var(--c-white) !important;text-transform:uppercase;}.contact-info h3 span{color:var(--c-orange);}.contact-info p{color:#cbd5e1;margin-bottom:40px;font-size:1.1rem;}.info-item{display:flex;align-items:center;gap:20px;margin-bottom:25px;}.info-icon{width:50px;height:50px;background:rgba(255,255,255,0.1);border-radius:12px;display:flex;justify-content:center;align-items:center;color:var(--c-orange);flex-shrink:0;font-size:1.2rem;}.info-text h4{font-size:0.85rem;font-weight:800;color:var(--c-gray);text-transform:uppercase;margin-bottom:4px;}.info-text span{font-size:1.1rem;font-weight:700;}.contact-form{padding:50px;}.form-group{margin-bottom:20px;}.form-control{width:100%;padding:15px 20px;border:2px solid #E5E7EB;border-radius:12px;font-family:inherit;font-size:1rem;font-weight:600;transition:var(--transition);outline:none;background:#f8fafc;}.form-control:focus{border-color:var(--c-orange);background:var(--c-white);box-shadow:0 0 0 4px rgba(255,105,53,0.1);}textarea.form-control{resize:vertical;min-height:120px;}.contact-success-card{padding:60px 40px;text-align:center;background:var(--c-white);border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,0.05);border:1px solid #e2e8f0;max-width:100%;animation:fadeInSuccess 0.5s cubic-bezier(0.4,0,0.2,1);}@keyframes fadeInSuccess{from{opacity:0;transform:scale(0.95);}to{opacity:1;transform:scale(1);}}.success-icon{display:inline-flex;align-items:center;justify-content:center;width:90px;height:90px;background:rgba(255,107,0,0.08);border-radius:50%;margin-bottom:25px;}.contact-success-card h3{font-size:1.8rem;font-weight:800;color:var(--c-graphite);margin-bottom:15px;text-transform:uppercase;letter-spacing:-0.5px;}.contact-success-card p{color:var(--c-gray);font-size:1.05rem;line-height:1.6;max-width:480px;margin:0 auto 25px auto;}.file-upload-group{transition:var(--transition);}.file-upload-group:hover{border-color:var(--c-orange) !important;background:#f8fafc !important;}.footer{background:#0a0a0a;color:#94a3b8;padding:80px 0 30px 0;margin-top:0;border-top:4px solid var(--c-orange);position:relative;}.footer-grid{display:grid;grid-template-columns:1fr;gap:40px 30px;margin-bottom:50px;}@media (min-width:640px){.footer-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));}}@media (min-width:1024px){.footer-grid{grid-template-columns:2.2fr minmax(max-content,1.2fr) 1.5fr 1.5fr;}}.footer-col h4{color:var(--c-white);font-size:1.1rem;font-weight:800;margin-bottom:25px;text-transform:uppercase;letter-spacing:1px;display:flex;align-items:center;gap:10px;}.footer-brand{color:var(--c-white);font-size:2rem;font-weight:900;margin-bottom:20px;display:inline-flex;align-items:center;gap:10px;letter-spacing:-0.5px;}.footer-brand span{color:var(--c-orange);}.footer-desc{line-height:1.7;margin-bottom:25px;font-size:0.95rem;}.footer-links ul{display:flex;flex-direction:column;gap:15px;font-weight:500;}.footer-links a{display:inline-flex;align-items:center;gap:8px;transition:var(--transition);color:#cbd5e1;white-space:nowrap;}.footer-links a::before{content:'â€º';font-size:1.2rem;color:var(--c-orange);font-weight:bold;transition:var(--transition);}.footer-links a:hover{color:var(--c-orange);transform:translateX(5px);}.footer-links a:hover::before{transform:translateX(3px);}.footer-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px;}.badge-icon{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);padding:8px 15px;border-radius:8px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:0.85rem;font-weight:700;color:var(--c-white);transition:var(--transition);height:45px;}.badge-icon:hover{background:rgba(255,255,255,0.1);border-color:var(--c-orange);transform:translateY(-3px);}.badge-icon img{max-height:24px;object-fit:contain;}.cert-badges-container{display:flex;flex-direction:column;gap:12px;margin-top:15px;}.cert-badge{background:rgba(255,184,0,0.05);border:1px solid rgba(255,184,0,0.3);color:var(--c-yellow);padding:12px 15px;border-radius:10px;display:flex;align-items:center;gap:15px;font-size:0.85rem;font-weight:800;text-transform:uppercase;transition:var(--transition);line-height:1.3;}.cert-badge:hover{background:rgba(255,184,0,0.1);border-color:var(--c-yellow);transform:translateX(5px);box-shadow:0 5px 15px rgba(255,184,0,0.15);}.cert-badge span{display:block;font-size:0.7rem;color:#94a3b8;font-weight:600;margin-top:3px;text-transform:none;}.newsletter-form{display:flex;flex-direction:column;gap:12px;margin-top:15px;}.newsletter-form input{width:100%;padding:15px 20px;border:1px solid rgba(255,255,255,0.1);border-radius:10px;background:rgba(255,255,255,0.03);color:white;outline:none;font-weight:500;font-size:0.95rem;transition:var(--transition);}.newsletter-form input:focus{background:rgba(0,0,0,0.5);border-color:var(--c-orange);box-shadow:0 0 0 3px rgba(255,107,53,0.15);}.newsletter-form button{background:var(--c-orange);color:white;border:none;padding:15px 25px;border-radius:10px;font-weight:800;cursor:pointer;transition:0.3s;width:100%;text-transform:uppercase;letter-spacing:1px;display:flex;align-items:center;justify-content:center;gap:8px;}.newsletter-form button:hover{background:var(--c-orange-hover);box-shadow:0 10px 20px rgba(255,107,53,0.3);transform:translateY(-2px);}.newsletter-note{font-size:0.8rem;color:#64748b;margin-top:10px;display:block;}.footer-seo-network{background:#060606;border-top:1px solid rgba(255,255,255,0.05);border-bottom:1px solid rgba(255,255,255,0.03);padding:20px 0;margin-top:40px;width:100%;}.footer-seo-network .container{text-align:center;}.seo-network-links{color:#475569;font-size:0.85rem;font-weight:700;line-height:1.8;}.seo-network-links a{color:#94a3b8;text-decoration:none;transition:var(--transition);}.seo-network-links a:hover{color:var(--c-orange);text-decoration:underline;}.footer-seo-text-full{background:#040404;border-bottom:1px solid rgba(255,255,255,0.05);padding:25px 0;width:100%;color:#64748b;font-size:0.85rem;line-height:1.6;text-align:center;}.footer-seo-text-full .container{max-width:900px;margin:0 auto;}.footer-seo-text-full a{color:#cbd5e1;text-decoration:underline;transition:var(--transition);}.footer-seo-text-full a:hover{color:var(--c-orange);}.footer-bottom{padding:30px 0;display:flex;flex-direction:column;gap:20px;align-items:center;justify-content:space-between;font-size:0.9rem;font-weight:500;color:#64748b;}@media (min-width:768px){.footer-bottom{flex-direction:row;}}.footer-bottom-links{display:flex;gap:15px;flex-wrap:wrap;justify-content:center;}.footer-bottom-links a{transition:var(--transition);}.footer-bottom-links a:hover{color:var(--c-orange);}.footer-social{display:flex;gap:15px;}.social-link{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,0.05);display:flex;align-items:center;justify-content:center;color:var(--c-white);transition:var(--transition);border:1px solid rgba(255,255,255,0.1);font-size:1.1rem;}.social-link:hover{background:var(--c-orange);border-color:var(--c-orange);color:var(--c-white);transform:translateY(-3px);box-shadow:0 5px 15px rgba(255,107,53,0.3);}.social-facebook:hover{background:#1877F2;border-color:#1877F2;box-shadow:0 5px 15px rgba(24,119,242,0.3);}.social-instagram:hover{background:#E1306C;border-color:#E1306C;box-shadow:0 5px 15px rgba(225,48,108,0.3);}.social-linkedin:hover{background:#0A66C2;border-color:#0A66C2;box-shadow:0 5px 15px rgba(10,102,194,0.3);}.social-whatsapp:hover{background:#25D366;border-color:#25D366;box-shadow:0 5px 15px rgba(37,211,102,0.3);}.cart-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.6);backdrop-filter:blur(4px);z-index:2000;opacity:0;visibility:hidden;transition:0.3s;}.cart-overlay.active{opacity:1;visibility:visible;}.cart-sidebar{position:fixed;top:0;right:-500px;width:100%;max-width:460px;height:100%;background:#f8fafc;z-index:2001;transition:0.4s cubic-bezier(0.4,0,0.2,1);box-shadow:-10px 0 40px rgba(0,0,0,0.2);display:flex;flex-direction:column;}.cart-sidebar.active{right:0;}.cart-header{padding:18px 24px;border-bottom:1px solid #E5E7EB;display:flex;justify-content:space-between;align-items:center;background:var(--c-white);}.cart-header h3{font-size:1.4rem;font-weight:900;text-transform:uppercase;color:var(--c-graphite);display:flex;align-items:center;gap:10px;}.btn-close-cart{background:#fee2e2;border:1px solid #fecaca;width:32px;height:32px;border-radius:8px;font-size:1.25rem;font-size:1.5rem;cursor:pointer;color:#ef4444;transition:0.2s;display:flex;align-items:center;justify-content:center;}.btn-close-cart:hover{background:#ef4444;color:white;}.cart-body{flex-grow:1;overflow-y:auto;padding:16px 20px;}.cart-empty{text-align:center;color:var(--c-gray);font-weight:700;margin-top:50px;font-size:1.1rem;}.cart-item{border:1px solid #E2E8F0;border-radius:8px;padding:10px 12px;display:flex;gap:12px;align-items:center;margin-bottom:10px;background:var(--c-white);position:relative;box-shadow:0 4px 10px rgba(0,0,0,0.02);}.cart-item-img{width:60px;height:60px;background:var(--c-light);border-radius:10px;display:flex;align-items:center;justify-content:center;padding:5px;flex-shrink:0;}.cart-item-img img{max-width:100%;max-height:100%;object-fit:contain;mix-blend-mode:multiply;}.cart-item-info{flex-grow:1;min-width:0;}.cart-item-brand{font-size:0.7rem;color:var(--c-orange);font-weight:900;text-transform:uppercase;letter-spacing:1px;}.cart-item-title{font-size:0.82rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--c-graphite);margin-bottom:4px;text-transform:uppercase;}.qty-controls{display:flex;align-items:center;border:2px solid #E5E7EB;border-radius:8px;width:fit-content;overflow:hidden;}.qty-btn{background:#f8fafc;border:none;width:28px;height:28px;font-weight:900;font-size:1.2rem;color:var(--c-graphite);cursor:pointer;transition:0.2s;}.qty-btn:hover{background:#e2e8f0;}.qty-input{width:35px;height:28px;border:none;border-left:2px solid #E5E7EB;border-right:2px solid #E5E7EB;text-align:center;font-weight:800;font-family:inherit;font-size:0.95rem;outline:none;background:#fff;}.qty-input::-webkit-outer-spin-button,.qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}.qty-input[type=number]{-moz-appearance:textfield;}.cart-item-price-box{text-align:right;}.price-web{text-decoration:line-through;color:var(--c-gray);font-size:0.75rem;font-weight:700;display:block;}.price-cot{color:var(--c-orange);font-size:0.95rem;font-weight:900;}.btn-remove-item{position:absolute;top:-10px;right:-10px;background:var(--c-white);color:var(--c-danger);border:1px solid #fecaca;width:28px;height:28px;border-radius:50%;cursor:pointer;font-weight:900;transition:0.2s;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px rgba(0,0,0,0.1);}.btn-remove-item:hover{background:var(--c-danger);color:white;}.btn-submit-cart{background:var(--c-orange);color:white;padding:10px 14px;border:none;border-radius:6px;font-size:0.88rem;font-weight:900;font-size:1.1rem;text-transform:uppercase;cursor:pointer;transition:0.3s;width:100%;letter-spacing:1px;}.btn-submit-cart:hover{background:var(--c-orange-hover);box-shadow:0 10px 20px rgba(255,107,53,0.3);}.btn-empty-cart{background:transparent;color:var(--c-gray);border:none;font-size:0.85rem;font-weight:800;cursor:pointer;text-decoration:underline;margin-top:15px;display:block;width:100%;text-align:center;transition:0.2s;text-transform:uppercase;}.btn-empty-cart:hover{color:var(--c-danger);}.trust-bar{background:transparent;position:relative;z-index:20;margin-top:-50px;margin-bottom:40px;}.trust-grid{background:var(--c-white);padding:25px 30px;border-radius:12px;box-shadow:0 15px 35px rgba(0,0,0,0.06);border:1px solid #E2E8F0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;align-items:center;}.trust-item{display:flex;flex-direction:row;align-items:center;gap:15px;color:var(--c-graphite);position:relative;width:100%;padding:10px 15px;border-radius:8px;transition:var(--transition);}.trust-item:hover{background:#f8fafc;}@media (min-width:1200px){.trust-item:not(:last-child)::after{content:'';position:absolute;right:-10px;top:15%;height:70%;width:1px;background:#E2E8F0;}}.trust-icon{width:50px;height:50px;background:rgba(255,107,53,0.06);color:var(--c-orange);border-radius:8px;display:flex;justify-content:center;align-items:center;font-size:1.4rem;transition:var(--transition);flex-shrink:0;}.trust-item:hover .trust-icon{background:var(--c-orange);color:var(--c-white);transform:scale(1.05);box-shadow:0 6px 12px rgba(255,107,53,0.25);}.trust-text{font-size:0.85rem;font-weight:800;text-transform:uppercase;letter-spacing:0.5px;line-height:1.3;text-align:left;}.trust-text span{display:block;font-size:0.75rem;color:#64748b;font-weight:500;text-transform:none;margin-top:3px;}.brands-section{padding:40px 0;background:var(--c-white);border-bottom:1px solid #E5E7EB;overflow:hidden;}.brands-title{text-align:center;font-size:0.9rem;font-weight:800;color:var(--c-gray);text-transform:uppercase;letter-spacing:2px;margin-bottom:20px;}.brands-track-container{width:100%;overflow:hidden;position:relative;}.brands-track-container::before,.brands-track-container::after{content:'';position:absolute;top:0;width:100px;height:100%;z-index:2;pointer-events:none;}.brands-track-container::before{left:0;background:linear-gradient(to right,var(--c-white) 0%,transparent 100%);}.brands-track-container::after{right:0;background:linear-gradient(to left,var(--c-white) 0%,transparent 100%);}.brands-track{display:flex;gap:60px;align-items:center;width:max-content;animation:scrollBrands 35s linear infinite;}.brands-track:hover{animation-play-state:paused;}.brand-logo-item{height:40px;filter:grayscale(100%) opacity(0.5);transition:var(--transition);}.brand-logo-item:hover{filter:grayscale(0%) opacity(1);}@keyframes scrollBrands{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}.back-to-top{position:fixed;bottom:30px;left:30px;width:50px;height:50px;background:var(--c-graphite);color:var(--c-white);border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:var(--transition);z-index:1400;box-shadow:0 10px 20px rgba(0,0,0,0.2);}.back-to-top.show{opacity:1;visibility:visible;}.back-to-top:hover{background:var(--c-orange);transform:translateY(-5px);box-shadow:0 15px 25px rgba(255,107,53,0.4);}.whatsapp-float{position:fixed;bottom:30px;right:30px;width:60px;height:60px;background:#25D366;color:white;border-radius:50%;display:flex;justify-content:center;align-items:center;box-shadow:0 10px 25px rgba(37,211,102,0.4);z-index:1500;transition:var(--transition);text-decoration:none;animation:floatWA 3s ease-in-out infinite;}.whatsapp-float:hover{background:#1da851;transform:scale(1.1);box-shadow:0 15px 30px rgba(37,211,102,0.5);animation-play-state:paused;color:white;}@keyframes floatWA{0%{transform:translateY(0);}50%{transform:translateY(-10px);}100%{transform:translateY(0);}}.cta-banner{background:linear-gradient(135deg,var(--c-graphite) 0%,var(--c-graphite-light) 100%);padding:60px 0;position:relative;overflow:hidden;margin-top:60px;text-align:center;}.cta-banner::before{content:'';position:absolute;top:-50px;right:-50px;width:200px;height:200px;background:rgba(255,107,53,0.1);border-radius:50%;filter:blur(40px);pointer-events:none;}.cta-banner h2{font-size:clamp(1.8rem,3vw,2.5rem);color:var(--c-white) !important;margin-bottom:15px;text-transform:uppercase;}.cta-banner h2 span{color:var(--c-orange);}.cta-banner p{color:#cbd5e1;font-size:1.1rem;margin-bottom:30px;max-width:600px;margin-left:auto;margin-right:auto;}.service-media{display:flex;flex-direction:column;gap:15px;width:100%;}.service-main-media{width:100%;position:relative;border-radius:12px;overflow:hidden;box-shadow:0 20px 40px rgba(0,0,0,0.1);background:#000;}.service-main-media img{width:100%;height:450px;object-fit:cover;display:block;opacity:0.95;transition:var(--transition);}.service-main-media iframe{width:100%;height:450px;border:none;display:block;}.service-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px;margin-top:5px;}.service-gallery img{width:100%;height:90px;object-fit:cover;border-radius:12px;border:2px solid transparent;transition:var(--transition);cursor:pointer;}.service-gallery img:hover{border-color:var(--c-orange);transform:translateY(-3px);box-shadow:0 10px 20px rgba(0,0,0,0.1);}.service-tag{display:inline-block;background:rgba(255,107,53,0.1);color:var(--c-orange);padding:6px 15px;border-radius:50px;font-size:0.8rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;margin-bottom:15px;}@media (max-width:600px){.service-main-media img,.service-main-media iframe{height:300px;}}.services-hero{background:linear-gradient(135deg,rgba(15,23,42,0.95) 0%,rgba(15,23,42,0.6) 100%),url('https://images.unsplash.com/photo-1517048676732-d65bc937f952?auto=format&fit=crop&q=80&w=2070') center/cover no-repeat;padding:100px 0;text-align:center;border-bottom:4px solid var(--c-orange);}.services-hero h1{font-size:clamp(2.5rem,5vw,4rem);color:var(--c-white);text-transform:uppercase;letter-spacing:-1px;margin-bottom:10px;text-shadow:0 5px 20px rgba(0,0,0,0.5);}.services-hero p{font-size:1.2rem;color:var(--c-orange);font-weight:700;text-transform:uppercase;letter-spacing:2px;}.services-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;}.service-card{background:var(--c-white);border-radius:12px;border:1px solid #e2e8f0;overflow:hidden;display:flex;flex-direction:column;transition:all 0.4s cubic-bezier(0.4,0,0.2,1);text-decoration:none;position:relative;}.service-card:hover{transform:translateY(-8px);box-shadow:0 25px 50px rgba(0,0,0,0.1);border-color:var(--c-orange);}.service-card-img{height:260px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#f8fafc;}.service-card-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s cubic-bezier(0.4,0,0.2,1);}.service-card:hover .service-card-img img{transform:scale(1.1);}.service-icon-floating{position:absolute;bottom:-25px;right:30px;width:60px;height:60px;background:var(--c-graphite);color:var(--c-orange);border-radius:10px;display:flex;align-items:center;justify-content:center;z-index:20;box-shadow:0 10px 20px rgba(0,0,0,0.15);transition:0.4s;font-size:1.5rem;}.service-card:hover .service-icon-floating{background:var(--c-orange);color:var(--c-white);transform:scale(1.1) rotate(5deg);}.service-card-body{padding:30px;display:flex;flex-direction:column;flex-grow:1;position:relative;z-index:10;background:var(--c-white);}.service-card-tag{font-size:0.75rem;font-weight:800;color:var(--c-orange);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;display:block;}.service-card-title{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:var(--c-graphite);margin-bottom:12px;line-height:1.2;text-transform:uppercase;transition:var(--transition);}.service-card:hover .service-card-title{color:var(--c-orange);}.service-card-desc{font-size:0.95rem;color:#64748b;line-height:1.6;margin-bottom:0;flex-grow:1;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;}.service-card-footer{margin-top:auto;padding-top:20px;border-top:1px dashed #e2e8f0;}.btn-service-details{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:#f8fafc;color:var(--c-graphite);padding:15px;border-radius:12px;font-weight:800;font-size:0.9rem;text-transform:uppercase;transition:var(--transition);border:1px solid #e2e8f0;}.service-card:hover .btn-service-details{background:var(--c-graphite);color:var(--c-white);border-color:var(--c-graphite);}.service-card-features{list-style:none;padding:0;margin:0 0 25px 0;display:flex;flex-direction:column;gap:10px;}.service-card-features li{display:flex;align-items:flex-start;gap:10px;font-size:0.9rem;font-weight:700;color:var(--c-graphite);line-height:1.4;}.service-card-features li::before{content:'âœ“';color:var(--c-success);font-weight:900;font-size:1rem;flex-shrink:0;background:rgba(16,185,129,0.1);width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;}.panel-services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-bottom:30px;}.panel-serv-card{background:var(--p-surface);border-radius:10px;border:1px solid var(--p-border);box-shadow:var(--p-shadow-sm);overflow:hidden;display:flex;flex-direction:column;transition:0.3s;height:100%;}.panel-serv-card:hover{transform:translateY(-4px);box-shadow:var(--p-shadow-md);border-color:#cbd5e1;}.panel-serv-img{height:200px;position:relative;background:#e2e8f0;}.panel-serv-img img{width:100%;height:100%;object-fit:cover;}.panel-serv-badge{position:absolute;top:12px;left:12px;background:rgba(0,0,0,0.7);color:#fff;padding:4px 10px;border-radius:6px;font-size:0.75rem;font-weight:800;text-transform:uppercase;}.panel-serv-status{position:absolute;top:12px;right:12px;padding:4px 10px;border-radius:6px;font-size:0.7rem;font-weight:800;text-transform:uppercase;}.status-active{background:var(--p-success);color:#fff;}.status-hidden{background:var(--p-muted);color:#fff;}.panel-serv-body{padding:20px;display:flex;flex-direction:column;flex-grow:1;}.panel-serv-tag{font-size:0.75rem;color:var(--p-primary);font-weight:800;background:rgba(255,107,0,0.1);padding:4px 10px;border-radius:6px;align-self:flex-start;margin-bottom:12px;text-transform:uppercase;letter-spacing:0.5px;}.panel-serv-title{font-size:1.1rem;font-weight:900;color:var(--p-text);margin-bottom:8px;line-height:1.3;text-transform:uppercase;}.panel-serv-meta{display:flex;gap:15px;font-size:0.8rem;color:var(--p-muted);font-weight:700;margin-top:auto;padding-top:15px;border-top:1px dashed var(--p-border);}.panel-serv-meta span{display:flex;align-items:center;gap:6px;}.panel-serv-footer{display:flex;padding:15px 20px;border-top:1px solid var(--p-border);background:#f8fafc;gap:10px;}@media (max-width:1024px){.panel-services-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));}}@media (max-width:640px){.panel-services-grid{grid-template-columns:1fr;}}.ck-editor__editable_inline{min-height:250px;font-family:'Plus Jakarta Sans',sans-serif;font-size:0.95rem;border-radius:0 0 12px 12px !important;}.ck-toolbar{border-radius:12px 12px 0 0 !important;background:#f8fafc !important;border-color:var(--p-border) !important;}.auth-section{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;background:var(--c-light);padding:60px 20px;}.auth-card{background:var(--c-white);padding:50px;border-radius:12px;box-shadow:0 20px 50px rgba(0,0,0,0.05);width:100%;max-width:480px;border:1px solid #E5E7EB;}.auth-card.wide{max-width:800px;}.auth-header{text-align:center;margin-bottom:35px;}.auth-header h1{font-size:2.2rem;color:var(--c-graphite);margin-bottom:10px;text-transform:uppercase;line-height:1.2;letter-spacing:-0.5px;}.auth-header p{color:var(--c-gray);font-size:1rem;font-weight:500;}.auth-card .form-group label{display:block;font-size:0.85rem;font-weight:800;color:var(--c-graphite);margin-bottom:8px;text-transform:uppercase;letter-spacing:0.5px;}.auth-form-grid{display:grid;grid-template-columns:1fr;gap:0 20px;}@media (min-width:768px){.auth-form-grid{grid-template-columns:1fr 1fr;}}.auth-form-grid .form-group.full{grid-column:1 / -1;}.btn-auth{width:100%;padding:16px;background:var(--c-orange);color:var(--c-white);border:none;border-radius:12px;font-size:1rem;font-weight:800;text-transform:uppercase;cursor:pointer;transition:var(--transition);margin-top:10px;letter-spacing:1px;display:flex;justify-content:center;align-items:center;gap:8px;}.btn-auth:hover{background:var(--c-orange-hover);box-shadow:0 10px 25px rgba(255,107,53,0.3);transform:translateY(-2px);}.auth-footer{margin-top:30px;text-align:center;font-size:0.95rem;color:#64748b;font-weight:500;padding-top:20px;border-top:1px solid #E5E7EB;}.auth-footer a{color:var(--c-orange);font-weight:800;transition:var(--transition);}.auth-footer a:hover{color:var(--c-orange-hover);text-decoration:underline;}.error-box{background:#fef2f2;color:#dc2626;border:1px solid #fecaca;padding:15px;border-radius:12px;margin-bottom:25px;font-size:0.9rem;font-weight:700;text-align:center;}.success-box{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0;padding:15px;border-radius:12px;margin-bottom:25px;font-size:0.9rem;font-weight:700;text-align:center;}.auth-links{display:flex;justify-content:flex-end;align-items:center;margin-top:-10px;margin-bottom:20px;}.auth-link{color:var(--c-gray);font-size:0.85rem;font-weight:700;text-decoration:none;transition:var(--transition);}.auth-link:hover{color:var(--c-orange);}@media (max-width:600px){.auth-card{padding:40px 25px;}.auth-header h1{font-size:1.8rem;}}:root{--p-primary:#ff6b00;--p-bg:#f8fafc;--p-surface:#ffffff;--p-text:#0f172a;--p-muted:#64748b;--p-border:#e2e8f0;--p-success:#10b981;--p-warning:#f59e0b;--p-danger:#ef4444;--p-info:#3b82f6;--p-wa:#25D366;--p-shadow-sm:0 4px 6px -1px rgba(0,0,0,0.05);--p-shadow-md:0 10px 15px -3px rgba(0,0,0,0.1);--menu-bg:#050505;--menu-hover:#171717;--menu-border:rgba(255,255,255,0.08);}body.panel-layout{font-family:'Plus Jakarta Sans',sans-serif;background:var(--p-bg);color:var(--p-text);display:flex;min-height:100vh;overflow-x:hidden;margin:0;}body.panel-layout .sidebar{background:var(--menu-bg);width:250px;height:100vh;position:fixed;left:0;top:0;display:flex;flex-direction:column;z-index:10000;border-right:1px solid var(--menu-border);transition:transform 0.3s cubic-bezier(0.4,0,0.2,1);}body.panel-layout .sidebar-brand{display:flex;align-items:center;gap:12px;padding:25px 20px;border-bottom:1px solid var(--menu-border);}body.panel-layout .brand-box{background:var(--c-white);color:var(--menu-bg);width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.1rem;}body.panel-layout .brand-text{color:var(--c-white);font-weight:900;font-size:1.2rem;letter-spacing:-0.5px;margin:0;}body.panel-layout .brand-text span{color:var(--p-primary);}body.panel-layout .nav-list{list-style:none;flex-grow:1;overflow-y:auto;padding-top:15px;margin:0;}body.panel-layout .nav-list::-webkit-scrollbar{width:4px;}body.panel-layout .nav-list::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.2);border-radius:4px;}body.panel-layout .nav-group-title{color:rgba(255,255,255,0.4);font-size:0.65rem;font-weight:800;text-transform:uppercase;padding:20px 20px 8px 20px;margin-top:10px;letter-spacing:1px;border-top:1px solid rgba(255,255,255,0.08);}body.panel-layout .nav-group-title:first-child{border-top:none;margin-top:0;padding-top:10px;}body.panel-layout .nav-link{display:flex;align-items:center;gap:12px;padding:12px 20px;color:#94a3b8;text-decoration:none;font-weight:600;font-size:0.85rem;transition:all 0.2s ease;margin:0 10px;border-radius:8px;border-bottom:1px solid rgba(255,255,255,0.05);}body.panel-layout .nav-link:hover{background:rgba(255,255,255,0.05);color:var(--c-white);border-bottom-color:transparent;}body.panel-layout .nav-link.active{background:var(--p-primary);color:var(--c-white);font-weight:800;box-shadow:0 4px 10px rgba(255,107,0,0.3);border-bottom-color:transparent;}body.panel-layout .nav-link svg{flex-shrink:0;display:block;}body.panel-layout .user-info-card{padding:20px;border-top:1px solid var(--menu-border);background:rgba(0,0,0,0.2);display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;}body.panel-layout .user-info-card h4{font-size:0.95rem;color:var(--c-white);margin:0;font-weight:800;}body.panel-layout .logout-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:rgba(239,68,68,0.1);color:var(--p-danger);border:1px solid rgba(239,68,68,0.2);padding:10px 16px;border-radius:8px;text-decoration:none;font-size:0.75rem;font-weight:800;transition:all 0.2s;text-transform:uppercase;letter-spacing:0.5px;width:100%;box-sizing:border-box;}body.panel-layout .logout-btn:hover{background:var(--p-danger);color:#fff;box-shadow:0 4px 12px rgba(239,68,68,0.3);}body.panel-layout .mobile-header,body.panel-layout .close-sidebar,body.panel-layout .sidebar-overlay{display:none;}body.panel-layout .content-area{margin-left:260px;width:calc(100% - 260px);padding:30px;box-sizing:border-box;display:flex;flex-direction:column;min-height:100vh;}body.panel-layout .page-wrapper{width:100%;max-width:100%;margin:0;}body.panel-layout .header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:15px;flex-wrap:nowrap;}body.panel-layout .header-info{min-width:0;flex-grow:1;}body.panel-layout .header-info h1{font-size:clamp(1.5rem,2vw,2.2rem);font-weight:900;color:var(--p-text);text-transform:uppercase;letter-spacing:-1px;margin:0;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}body.panel-layout .header-info p{color:var(--p-muted);font-size:0.9rem;font-weight:600;text-transform:uppercase;margin-top:4px;margin-bottom:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}body.panel-layout .header-actions{display:flex;gap:10px;flex-wrap:nowrap;flex-shrink:0;}body.panel-layout .btn-action{background:var(--p-text);color:#fff;padding:10px 20px;border-radius:10px;font-weight:800;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:var(--p-shadow-sm);transition:0.3s;text-transform:uppercase;font-size:0.8rem;text-decoration:none;}body.panel-layout .btn-action:hover{background:var(--p-primary);transform:translateY(-2px);box-shadow:0 8px 15px -3px rgba(255,107,0,0.3);color:#fff;}body.panel-layout .btn-action.btn-dark{background:#0f172a;}body.panel-layout .btn-action.btn-dark:hover{background:#1e293b;}body.panel-layout .btn-action.btn-outline{background:#fff;color:var(--p-text);border:2px solid var(--p-border);box-shadow:none;}body.panel-layout .btn-action.btn-outline:hover{background:var(--p-bg);border-color:var(--p-muted);color:var(--p-text);}body.panel-layout .btn-action.btn-pdf{background:#dc2626;color:#fff;}body.panel-layout .btn-action.btn-pdf:hover{background:#b91c1c;}body.panel-layout .alert-success{background:#dcfce7;color:#166534;padding:15px;border-radius:10px;font-weight:700;margin-bottom:20px;border-left:5px solid #16a34a;font-size:0.9rem;}body.panel-layout .alert-error{background:#fee2e2;color:#991b1b;padding:15px;border-radius:10px;font-weight:700;margin-bottom:20px;border-left:5px solid #dc2626;font-size:0.9rem;}body.panel-layout .filter-section{background:var(--p-surface);padding:20px;border-radius:10px;border:1px solid var(--p-border);box-shadow:var(--p-shadow-sm);margin-bottom:25px;display:flex;flex-wrap:nowrap;gap:15px;align-items:center;}body.panel-layout .filter-group{display:flex;flex-direction:column;gap:6px;flex:1;min-width:200px;}body.panel-layout .filter-group.search-group{flex:2;min-width:250px;}body.panel-layout .filter-label{font-size:0.75rem;font-weight:800;color:var(--p-muted);text-transform:uppercase;}body.panel-layout .filter-control{padding:10px 14px;height:42px;border:2px solid var(--p-border);border-radius:10px;font-family:inherit;font-size:0.9rem;font-weight:600;color:var(--p-text);background:var(--p-bg);transition:all 0.2s;outline:none;width:100%;box-sizing:border-box;}body.panel-layout .filter-control:focus{border-color:var(--p-primary);background:#fff;box-shadow:0 0 0 3px rgba(255,107,0,0.1);}body.panel-layout .filter-actions{display:flex;gap:10px;flex-shrink:0;align-items:center;}body.panel-layout .filter-actions .btn-action{height:42px;margin:0;box-sizing:border-box;}body.panel-layout .data-grid-container{background:var(--p-surface);border-radius:10px;border:1px solid var(--p-border);box-shadow:var(--p-shadow-sm);overflow-x:auto;margin-bottom:25px;}body.panel-layout .data-table{width:100%;border-collapse:collapse;text-transform:uppercase;font-size:0.85rem;}body.panel-layout .data-table th{background:var(--p-bg);padding:15px;font-size:0.7rem;font-weight:800;color:var(--p-muted);letter-spacing:0.5px;border-bottom:2px solid var(--p-border);text-align:left;white-space:nowrap;}body.panel-layout .data-table td{padding:15px;border-bottom:1px solid var(--p-border);vertical-align:middle;}body.panel-layout .data-table tbody tr{transition:background 0.2s;}body.panel-layout .data-table tbody tr:nth-child(even){background-color:var(--p-bg);}body.panel-layout .data-table tbody tr:hover{background-color:#f1f5f9;}body.panel-layout .data-table tr:last-child td{border-bottom:none;}body.panel-layout .th-center,body.panel-layout .td-center{text-align:center !important;}body.panel-layout .th-right,body.panel-layout .td-right{text-align:right !important;}body.panel-layout .empresa-logo{width:40px;height:40px;border-radius:8px;object-fit:contain;border:1px solid #cbd5e1;background:#fff;padding:2px;}body.panel-layout .empresa-logo-placeholder{width:40px;height:40px;border-radius:8px;background:var(--p-text);color:var(--p-primary);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.2rem;border:1px solid #cbd5e1;}body.panel-layout .td-logo-wrapper{display:flex;align-items:center;gap:10px;}body.panel-layout .empresa-text{font-weight:900;color:var(--p-text);margin-bottom:4px;font-size:0.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:350px;display:block;}body.panel-layout .cliente-text{font-size:0.65rem;font-weight:800;color:var(--p-primary);background:#e0e7ff;padding:2px 8px;border-radius:4px;display:inline-flex;align-items:center;gap:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:350px;}body.panel-layout .dt-main{font-weight:800;color:#334155;margin-bottom:4px;font-size:0.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px;display:block;}body.panel-layout .dt-sub{font-size:0.65rem;color:var(--p-muted);font-weight:700;background:var(--p-bg);padding:2px 6px;border-radius:4px;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px;}body.panel-layout .dt-ruc{font-family:monospace;font-size:0.85rem;font-weight:800;color:#4338ca;background:#e0e7ff;padding:3px 8px;border-radius:6px;display:inline-block;letter-spacing:1px;}body.panel-layout .dt-icon{width:40px;height:40px;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0;display:inline-flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:900;color:var(--p-primary);}body.panel-layout .monto-rit{font-size:1rem;font-weight:900;color:var(--p-text);background:var(--p-bg);padding:6px 10px;border-radius:8px;border:1px solid var(--p-border);display:inline-block;white-space:nowrap;}body.panel-layout .monto-simbolo{color:var(--p-primary);margin-right:2px;}body.panel-layout .status-badge{padding:4px 10px;border-radius:6px;font-size:0.65rem;font-weight:900;letter-spacing:0.5px;display:inline-flex;justify-content:center;align-items:center;text-align:center;min-width:90px;}body.panel-layout .badge-deuda,body.panel-layout .badge-pendiente,body.panel-layout .st-pendiente{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;}body.panel-layout .badge-devengado,body.panel-layout .badge-ejecucion,body.panel-layout .st-contactado{background:#fffbeb;color:#d97706;border:1px solid #fde68a;}body.panel-layout .badge-cancelado,body.panel-layout .badge-finalizado,body.panel-layout .badge-entregado,body.panel-layout .st-atendido{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0;}body.panel-layout .badge-comprar{background:var(--p-bg);color:var(--p-muted);border:1px solid var(--p-border);}body.panel-layout .badge-ruta{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;}body.panel-layout .badge-almacen{background:#faf5ff;color:#7e22ce;border:1px solid #e9d5ff;}body.panel-layout .st-rechazado{background:var(--p-bg);color:var(--p-muted);border:1px solid var(--p-border);}body.panel-layout .date-green{color:#0d9488;font-weight:900;font-size:0.75rem;background:#f0fdfa;padding:3px 8px;border-radius:4px;border:1px dashed #99f6e4;white-space:nowrap;}body.panel-layout .date-vencimiento{font-weight:900;font-size:0.75rem;padding:3px 8px;border-radius:4px;border:1px dashed var(--p-border);display:inline-block;white-space:nowrap;}body.panel-layout .date-subtext{font-size:0.6rem;color:var(--p-muted);font-weight:800;margin-top:4px;letter-spacing:0.5px;}body.panel-layout .action-icons,body.panel-layout .doc-icons{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;}body.panel-layout .btn-icon,body.panel-layout .doc-btn{width:32px;height:32px;border-radius:8px;background:#ffffff;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:1rem;border:1px solid #cbd5e1;transition:all 0.2s;cursor:pointer;color:var(--p-muted);}body.panel-layout .btn-icon:hover,body.panel-layout .doc-btn:hover{transform:translateY(-2px);}body.panel-layout .doc-btn{color:var(--p-text);}body.panel-layout .doc-btn:hover{background:#fff7ed;border-color:var(--p-primary);}body.panel-layout .btn-wa:hover{background:#f0fdf4;border-color:var(--p-wa);color:var(--p-wa);}body.panel-layout .btn-edit:hover{background:#fffbeb;border-color:var(--p-warning);color:var(--p-warning);}body.panel-layout .btn-delete:hover{background:#fef2f2;border-color:var(--p-danger);color:var(--p-danger);}body.panel-layout .btn-view:hover{background:#eff6ff;border-color:var(--p-info);color:var(--p-info);}body.panel-layout .obs-box{font-size:0.7rem;color:#475569;font-weight:600;min-width:150px;background:var(--p-bg);padding:10px;border-radius:8px;border:1px solid var(--p-border);border-left:3px solid var(--p-primary);position:relative;width:100%;box-sizing:border-box;text-transform:none;}body.panel-layout .obs-box::before{content:'';position:absolute;top:-6px;left:15px;width:10px;height:10px;background:var(--p-bg);border-top:1px solid var(--p-border);border-left:1px solid var(--p-border);transform:rotate(45deg);}body.panel-layout .email-text{font-size:0.9rem;font-weight:800;color:var(--p-text);text-transform:lowercase;}body.panel-layout .pagination-container{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-top:1px solid var(--p-border);background:#fff;border-radius:0 0 16px 16px;flex-wrap:wrap;gap:10px;}body.panel-layout .pagination-info{font-size:0.8rem;font-weight:700;color:var(--p-muted);}body.panel-layout .pagination-links{display:flex;gap:5px;flex-wrap:wrap;}body.panel-layout .page-link{padding:6px 12px;border-radius:8px;font-size:0.8rem;font-weight:800;color:var(--p-text);background:var(--p-bg);border:1px solid var(--p-border);text-decoration:none;transition:0.2s;}body.panel-layout .page-link:hover{background:#e2e8f0;}body.panel-layout .page-link.active{background:var(--p-primary);color:#fff;border-color:var(--p-primary);}body.panel-layout .modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(15,23,42,0.75);backdrop-filter:blur(4px);z-index:2000;display:none;align-items:flex-start;justify-content:center;opacity:0;transition:opacity 0.3s;overflow-y:auto;padding:40px 15px;box-sizing:border-box;}body.panel-layout .modal-overlay.active{display:flex;opacity:1;}body.panel-layout .modal-box{background:#fff;width:100%;max-width:800px;border-radius:12px;box-shadow:0 25px 50px -12px rgba(0,0,0,0.5);transform:scale(0.95);transition:transform 0.3s;margin:auto;display:flex;flex-direction:column;position:relative;}body.panel-layout .modal-overlay.active .modal-box{transform:scale(1);}body.panel-layout .modal-box.small{max-width:450px;}body.panel-layout .modal-box form{display:flex;flex-direction:column;flex-grow:1;margin:0;}body.panel-layout .modal-header{padding:20px 25px;border-bottom:1px solid var(--p-border);display:flex;justify-content:space-between;align-items:center;background:#fafaf9;border-radius:20px 20px 0 0;}body.panel-layout .modal-header h2{font-size:1.2rem;font-weight:900;color:var(--p-text);margin:0;text-transform:uppercase;}body.panel-layout .btn-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--p-muted);transition:0.2s;line-height:1;}body.panel-layout .btn-close:hover{color:var(--p-danger);transform:scale(1.1);}body.panel-layout .modal-body{padding:25px;}body.panel-layout .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;width:100%;box-sizing:border-box;}body.panel-layout .form-group{display:flex;flex-direction:column;gap:6px;min-width:0;width:100%;box-sizing:border-box;}body.panel-layout .form-group.full{grid-column:1 / -1;}body.panel-layout .form-label{font-size:0.75rem;font-weight:800;color:var(--p-muted);text-transform:uppercase;letter-spacing:0.5px;}body.panel-layout .form-control{padding:12px 14px;border:2px solid var(--p-border);border-radius:10px;font-family:inherit;font-size:0.9rem;font-weight:600;color:var(--p-text);background:var(--p-bg);transition:all 0.2s;outline:none;width:100%;max-width:100%;box-sizing:border-box;}body.panel-layout .form-control:focus{border-color:var(--p-primary);background:#fff;box-shadow:0 0 0 3px rgba(255,107,0,0.1);}body.panel-layout select.form-control{text-overflow:ellipsis;padding-right:15px;overflow:hidden;white-space:nowrap;}body.panel-layout input[type="file"]{padding:8px;font-size:0.8rem;background:#fff;}body.panel-layout input[type="file"]::file-selector-button{background:var(--p-text);color:#fff;padding:6px 12px;border-radius:6px;border:none;font-weight:800;cursor:pointer;margin-right:10px;transition:0.2s;}body.panel-layout textarea.form-control{resize:vertical;min-height:80px;}body.panel-layout .section-divider{grid-column:1 / -1;border-bottom:2px dashed var(--p-border);margin:10px 0;padding-bottom:8px;font-size:0.85rem;font-weight:900;color:var(--p-text);text-transform:uppercase;display:flex;align-items:center;gap:8px;}body.panel-layout .section-divider svg{color:var(--p-primary);width:18px;height:18px;}body.panel-layout .modal-footer{padding:20px 25px;border-top:1px solid var(--p-border);background:#fafaf9;display:flex;justify-content:flex-end;gap:10px;border-radius:0 0 20px 20px;}body.panel-layout .btn-cancel{background:var(--p-border);color:var(--p-text);padding:10px 20px;border-radius:10px;font-weight:800;font-size:0.8rem;border:none;cursor:pointer;text-transform:uppercase;transition:0.3s;text-decoration:none;}body.panel-layout .btn-cancel:hover{background:#cbd5e1;}body.panel-layout .btn-save{padding:10px 20px;background:var(--p-text);border:none;border-radius:10px;font-weight:800;color:white;cursor:pointer;transition:0.2s;text-transform:uppercase;font-size:0.8rem;white-space:nowrap;}body.panel-layout .btn-save:hover{background:var(--p-primary);color:#fff;}body.panel-layout .dashboard-kpi-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:12px;margin-bottom:30px;}@media (max-width:1400px){body.panel-layout .dashboard-kpi-grid{grid-template-columns:repeat(4,1fr);}}@media (max-width:768px){body.panel-layout .dashboard-kpi-grid{grid-template-columns:repeat(2,1fr);}}body.panel-layout .kpi-card{background:var(--p-surface);padding:15px;border-radius:10px;border:1px solid var(--p-border);box-shadow:var(--p-shadow-sm);display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;transition:all 0.3s ease;}body.panel-layout .kpi-card:hover{transform:translateY(-5px);box-shadow:var(--p-shadow-md);border-color:#cbd5e1;}body.panel-layout .kpi-card::before{content:'';position:absolute;top:0;left:0;width:4px;height:100%;background:var(--p-muted);border-radius:10px 0 0 16px;}body.panel-layout .kpi-card.kpi-blue::before{background:#3b82f6;}body.panel-layout .kpi-card.kpi-green::before{background:var(--p-success);}body.panel-layout .kpi-card.kpi-orange::before{background:var(--p-warning);}body.panel-layout .kpi-card.kpi-red::before{background:var(--p-danger);}body.panel-layout .kpi-card.kpi-dark::before{background:var(--p-text);}body.panel-layout .kpi-title{font-size:0.65rem;font-weight:800;color:var(--p-muted);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:6px;display:flex;align-items:center;gap:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}body.panel-layout .kpi-title svg{color:var(--p-text);opacity:0.5;flex-shrink:0;}body.panel-layout .kpi-value{font-size:1.25rem;font-weight:900;color:var(--p-text);line-height:1.1;letter-spacing:-0.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}body.panel-layout .dashboard-row-2{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:30px;align-items:stretch;}@media (max-width:1024px){body.panel-layout .dashboard-row-2{grid-template-columns:1fr;}}body.panel-layout .dash-panel{background:var(--p-surface);border-radius:12px;border:1px solid var(--p-border);box-shadow:var(--p-shadow-sm);padding:25px;display:flex;flex-direction:column;overflow:hidden;}body.panel-layout .dash-panel-title{font-size:1.1rem;font-weight:900;color:var(--p-text);text-transform:uppercase;margin-bottom:25px;display:flex;align-items:center;justify-content:space-between;border-bottom:2px dashed var(--p-border);padding-bottom:15px;}body.panel-layout .dash-panel-title a{text-decoration:none;}body.panel-layout .report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:15px;margin-bottom:25px;}body.panel-layout .report-card{background:#fff;padding:20px 15px;border-radius:10px;text-align:center;border:1px solid var(--p-border);box-shadow:var(--p-shadow-sm);transition:transform 0.2s;display:flex;flex-direction:column;justify-content:center;}body.panel-layout .report-card:hover{transform:translateY(-3px);box-shadow:var(--p-shadow-md);}body.panel-layout .report-title{font-size:0.7rem;font-weight:800;color:var(--p-muted);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:8px;}body.panel-layout .report-value{font-size:1.4rem;font-weight:900;color:var(--p-text);letter-spacing:-0.5px;}body.panel-layout .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:1.5rem;margin-bottom:2.5rem;}body.panel-layout .stat-card{background:var(--p-surface);padding:1.5rem 1rem;border-radius:1.5rem;border:1px solid var(--p-border);box-shadow:var(--p-shadow-sm);text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;min-width:0;overflow:hidden;}body.panel-layout .stat-card span{font-size:0.75rem;font-weight:800;color:var(--p-muted);text-transform:uppercase;letter-spacing:0.5px;display:block;margin-bottom:0.5rem;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}body.panel-layout .stat-card h2{font-size:clamp(1.1rem,1.5vw + 0.5rem,1.7rem);font-weight:900;color:var(--p-text);line-height:1.2;word-break:break-word;width:100%;margin:0;}body.panel-layout .card-green h2{color:var(--p-success);}body.panel-layout .card-red h2{color:var(--p-danger);}body.panel-layout .card-orange h2{color:var(--p-warning);}body.panel-layout .card-total{border:2px solid var(--p-text);border-left:6px solid var(--p-primary);}body.panel-layout .analytics-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:1.5rem;margin-bottom:2rem;}body.panel-layout .progress-card{background:var(--p-surface);padding:1.8rem;border-radius:1.5rem;box-shadow:var(--p-shadow-sm);border:1px solid var(--p-border);}body.panel-layout .progress-header{text-align:center;margin-bottom:1.25rem;}body.panel-layout .progress-header h3{font-size:1.1rem;font-weight:800;color:var(--p-text);text-transform:uppercase;letter-spacing:1px;margin:0;}body.panel-layout .progress-header span{font-size:0.85rem;font-weight:600;color:var(--p-muted);display:block;margin-top:0.3rem;}body.panel-layout .stacked-bar{display:flex;height:1.1rem;border-radius:1rem;overflow:hidden;background:#f1f5f9;gap:0.2rem;}body.panel-layout .segment{display:flex;justify-content:center;align-items:center;}body.panel-layout .seg-success{background:var(--p-success);}body.panel-layout .seg-warning{background:var(--p-warning);}body.panel-layout .seg-danger{background:var(--p-danger);}body.panel-layout .progress-legend{display:flex;justify-content:center;gap:1.25rem;margin-top:1.25rem;font-size:0.8rem;font-weight:700;flex-wrap:wrap;text-transform:uppercase;}body.panel-layout .legend-item{display:flex;align-items:center;gap:0.5rem;}body.panel-layout .dot{width:0.6rem;height:0.6rem;border-radius:50%;}body.panel-layout .products-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:12px;margin-bottom:30px;}body.panel-layout .prod-card{background:var(--p-surface);border-radius:10px;border:1px solid var(--p-border);box-shadow:var(--p-shadow-sm);overflow:hidden;display:flex;flex-direction:column;transition:0.3s;height:100%;}body.panel-layout .prod-card:hover{transform:translateY(-4px);box-shadow:var(--p-shadow-md);border-color:#cbd5e1;}body.panel-layout .prod-img-wrap{aspect-ratio:1 / 1;height:auto;background:#fff;display:flex;align-items:center;justify-content:center;position:relative;border-bottom:1px solid var(--p-border);padding:10px;}body.panel-layout .prod-img-wrap img{width:100%;height:100%;object-fit:contain;}body.panel-layout .prod-img-icon{font-size:3rem;opacity:0.2;}body.panel-layout .prod-content{padding:15px;flex-grow:1;display:flex;flex-direction:column;}body.panel-layout .prod-marca{font-size:clamp(0.55rem,0.8vw,0.65rem);font-weight:800;color:var(--p-primary);background:rgba(255,107,0,0.1);padding:6px 8px;border-radius:6px;display:block;width:100%;text-align:center;box-sizing:border-box;margin-bottom:8px;text-transform:uppercase;letter-spacing:0.5px;}body.panel-layout .prod-title{font-size:clamp(0.75rem,1vw,0.95rem);font-weight:800;color:var(--p-text);text-transform:uppercase;margin-bottom:10px;line-height:1.3;flex-grow:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:3.9em;}body.panel-layout .prod-category-wrap{margin-bottom:10px;width:100%;}body.panel-layout .badge-cat{font-size:clamp(0.55rem,0.8vw,0.65rem);font-weight:800;color:#4338ca;background:#e0e7ff;padding:6px 8px;border-radius:6px;text-transform:uppercase;display:block;width:100%;text-align:center;box-sizing:border-box;letter-spacing:0.5px;}body.panel-layout .prod-price-wrap{display:flex;justify-content:space-between;align-items:center;background:#f8fafc;padding:10px;border-radius:8px;border:1px solid #e2e8f0;margin-bottom:15px;}body.panel-layout .price-label{font-size:clamp(0.6rem,0.8vw,0.7rem);font-weight:800;color:var(--p-muted);text-transform:uppercase;}body.panel-layout .price-value{font-size:clamp(0.95rem,1.2vw,1.1rem);font-weight:900;color:var(--p-text);}body.panel-layout .prod-actions{display:flex;gap:8px;margin-top:auto;}body.panel-layout .user-profile{display:flex;align-items:center;gap:12px;}body.panel-layout .dt-avatar{width:36px;height:36px;border-radius:8px;background:linear-gradient(135deg,#0f172a 0%,#334155 100%);display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:900;color:#fff;flex-shrink:0;}body.panel-layout .avatar-super{background:linear-gradient(135deg,#b91c1c 0%,#ef4444 100%);}body.panel-layout .avatar-admin{background:linear-gradient(135deg,#4338ca 0%,#6366f1 100%);}body.panel-layout .user-name{font-size:0.85rem;font-weight:800;color:var(--p-text);text-transform:uppercase;}body.panel-layout .role-badge{padding:4px 10px;border-radius:6px;font-size:0.7rem;font-weight:900;letter-spacing:0.5px;display:inline-flex;justify-content:center;min-width:100px;text-transform:uppercase;}body.panel-layout .role-super{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca;}body.panel-layout .role-admin{background:#e0e7ff;color:#4338ca;border:1px solid #c7d2fe;}body.panel-layout .role-editor{background:#fef9c3;color:#b45309;border:1px solid #fef08a;}body.panel-layout .role-user{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0;}body.panel-layout .role-cotizador{background:#f3e8ff;color:#7e22ce;border:1px solid #e9d5ff;}body.panel-layout .slider-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px;margin-bottom:30px;}body.panel-layout .slider-card{background:var(--p-surface);border-radius:10px;border:1px solid var(--p-border);box-shadow:var(--p-shadow-sm);overflow:hidden;display:flex;flex-direction:column;transition:0.3s;height:100%;}body.panel-layout .slider-card:hover{transform:translateY(-4px);box-shadow:var(--p-shadow-md);border-color:#cbd5e1;}body.panel-layout .slider-img{height:160px;background:#e2e8f0;position:relative;}body.panel-layout .slider-img img{width:100%;height:100%;object-fit:cover;}body.panel-layout .slider-badge{position:absolute;top:10px;right:10px;background:rgba(0,0,0,0.75);color:#fff;padding:4px 8px;border-radius:6px;font-size:0.7rem;font-weight:800;}body.panel-layout .slider-body{padding:15px;flex-grow:1;display:flex;flex-direction:column;}body.panel-layout .slider-title{font-size:1.1rem;font-weight:900;margin-bottom:5px;color:var(--p-text);text-transform:uppercase;}body.panel-layout .slider-desc{font-size:0.8rem;color:var(--p-muted);margin-bottom:10px;line-height:1.5;flex-grow:1;}body.panel-layout .slider-footer{display:flex;padding:15px;border-top:1px solid var(--p-border);background:#f8fafc;gap:8px;margin-top:auto;}body.panel-layout .btn-card-action{flex:1;padding:10px;border-radius:8px;border:1px solid var(--p-border);background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:0.2s;font-size:1rem;}body.panel-layout .btn-card-action.edit:hover{background:#fffbeb;border-color:var(--p-warning);color:#d97706;}body.panel-layout .btn-card-action.delete:hover{background:#fef2f2;border-color:var(--p-danger);color:#b91c1c;}body.panel-layout .empresas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-bottom:30px;}body.panel-layout .emp-card{background:var(--p-surface);border-radius:10px;border:1px solid var(--p-border);box-shadow:var(--p-shadow-sm);overflow:hidden;display:flex;flex-direction:column;height:100%;}body.panel-layout .emp-header{padding:20px;border-bottom:1px solid var(--p-border);display:flex;gap:15px;align-items:center;min-width:0;background:#fafaf9;}body.panel-layout .emp-title{min-width:0;flex-grow:1;}body.panel-layout .emp-title h3{font-size:1.1rem;font-weight:900;color:var(--p-text);line-height:1.2;margin-bottom:4px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}body.panel-layout .emp-logo-box{width:55px;height:55px;border-radius:12px;background:#fff;border:1px solid var(--p-border);display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:900;color:var(--p-primary);overflow:hidden;flex-shrink:0;box-shadow:var(--p-shadow-sm);}body.panel-layout .emp-logo-box img{width:100%;height:100%;object-fit:contain;padding:5px;}body.panel-layout .badge-ruc{display:inline-block;background:#e0e7ff;color:#4338ca;padding:4px 10px;border-radius:6px;font-size:0.75rem;font-weight:800;border:1px solid #c7d2fe;letter-spacing:0.5px;}body.panel-layout .comp-body{padding:20px;display:flex;flex-direction:column;gap:12px;flex-grow:1;}body.panel-layout .prof-row{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid #f1f5f9;}body.panel-layout .prof-row:last-of-type{border-bottom:none;padding-bottom:0;}body.panel-layout .prof-icon-box{width:36px;height:36px;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;color:var(--p-primary);flex-shrink:0;border:1px solid var(--p-border);font-size:1rem;}body.panel-layout .prof-info{flex-grow:1;min-width:0;}body.panel-layout .prof-label{font-size:0.65rem;color:var(--p-muted);font-weight:800;text-transform:uppercase;margin-bottom:2px;}body.panel-layout .prof-val{font-size:0.85rem;color:var(--p-text);font-weight:700;line-height:1.3;display:flex;align-items:center;gap:8px;width:100%;}body.panel-layout .prof-val-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;flex-grow:1;}body.panel-layout .prof-badge-dni{background:#e0e7ff;color:#4338ca;padding:2px 6px;border-radius:4px;font-size:0.65rem;font-weight:800;flex-shrink:0;}body.panel-layout .emp-actions{display:flex;padding:15px 20px;border-top:1px solid var(--p-border);background:#f8fafc;gap:10px;margin-top:auto;align-items:center;}body.panel-layout .btn-wa{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0;padding:8px 15px;border-radius:8px;font-weight:800;font-size:0.75rem;cursor:pointer;transition:0.3s;display:flex;align-items:center;justify-content:center;gap:6px;text-transform:uppercase;flex-grow:1;white-space:nowrap;}body.panel-layout .btn-wa:hover{background:#dcfce7;border-color:#4ade80;color:#15803d;}body.panel-layout .fin-card-pro{background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);border-radius:12px;padding:15px;color:white;position:relative;overflow:hidden;border:1px solid #334155;box-shadow:0 10px 15px -3px rgba(0,0,0,0.1);}body.panel-layout .fin-bank-header{font-size:0.75rem;font-weight:900;color:var(--p-primary);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;}body.panel-layout .fin-chip{width:30px;height:20px;background:rgba(255,255,255,0.2);border-radius:4px;border:1px solid rgba(255,255,255,0.1);}body.panel-layout .fin-data-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,0.1);flex-wrap:nowrap;}body.panel-layout .fin-data-row:last-child{border-bottom:none;padding-bottom:0;}body.panel-layout .fin-data-label{font-size:0.65rem;color:#94a3b8;font-weight:800;text-transform:uppercase;flex-shrink:0;}body.panel-layout .fin-data-val{font-family:'Courier New',Courier,monospace;font-size:0.9rem;font-weight:700;letter-spacing:1px;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:65%;text-align:right;}body.panel-layout .btn-view-details{width:100%;background:#f1f5f9;color:var(--p-text);border:1px solid #cbd5e1;padding:10px;border-radius:10px;font-size:0.75rem;font-weight:800;text-transform:uppercase;cursor:pointer;transition:0.2s;display:flex;align-items:center;justify-content:center;gap:6px;margin-top:15px;}body.panel-layout .btn-view-details:hover{background:var(--p-text);color:#fff;border-color:var(--p-text);}body.panel-layout .det-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px;}body.panel-layout .det-logo-wrap{display:flex;justify-content:center;align-items:center;background:#f1f5f9;border-radius:12px;padding:20px;border:1px solid #e2e8f0;height:120px;}body.panel-layout .det-box{background:#f8fafc;padding:15px;border-radius:12px;border:1px solid #e2e8f0;margin-bottom:15px;}body.panel-layout .det-box-title{font-size:0.75rem;font-weight:900;color:var(--p-primary);text-transform:uppercase;margin-bottom:10px;border-bottom:1px solid #e2e8f0;padding-bottom:5px;}body.panel-layout .det-item{margin-bottom:8px;}body.panel-layout .det-label{font-size:0.7rem;color:#64748b;font-weight:800;text-transform:uppercase;display:block;}body.panel-layout .det-value{font-size:0.9rem;color:#0f172a;font-weight:700;word-break:break-word;}body.panel-layout .form-section-title{margin-top:10px;padding-top:15px;border-top:1px dashed var(--p-border);}body.panel-layout .form-group-title{font-weight:900;color:var(--p-primary);margin-bottom:5px;text-transform:uppercase;margin-top:0;}body.panel-layout .custom-confirm-box{max-width:400px;text-align:center;padding:30px;}body.panel-layout .custom-confirm-title{font-size:1.2rem;font-weight:900;color:var(--p-text);margin-bottom:10px;text-transform:uppercase;}body.panel-layout .custom-confirm-desc{font-size:0.9rem;color:var(--p-muted);font-weight:600;margin-bottom:25px;}body.panel-layout .custom-confirm-actions{display:flex;gap:10px;justify-content:center;}body.panel-layout .btn-danger-override{background:var(--p-danger);border-color:var(--p-danger);}body.panel-layout .btn-danger-override:hover{background:#dc2626;color:#fff;}body.panel-layout .emp-det-col{display:flex;flex-direction:column;gap:15px;}body.panel-layout .emp-det-text-center{text-align:center;}body.panel-layout .emp-det-title{font-size:1.4rem;font-weight:900;color:var(--p-text);margin-bottom:5px;text-transform:uppercase;}body.panel-layout .emp-det-ruc{display:inline-block;background:#e0e7ff;color:#4338ca;padding:4px 10px;border-radius:6px;font-size:0.85rem;font-weight:800;text-align:center;}body.panel-layout .emp-det-mono{font-family:monospace;font-size:1.1rem;color:var(--p-text);font-weight:700;}body.panel-layout .emp-det-hint{color:var(--p-muted);font-size:0.8rem;}body.panel-layout .emp-logo-img{width:100%;height:100%;object-fit:contain;padding:5px;}body.panel-layout .emp-logo-text{font-size:3rem;font-weight:900;color:var(--p-border);}body.panel-layout .inst-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-bottom:30px;}body.panel-layout .inst-card{background:var(--p-surface);border-radius:10px;border:1px solid var(--p-border);box-shadow:var(--p-shadow-sm);overflow:hidden;display:flex;flex-direction:column;transition:0.3s;height:100%;}body.panel-layout .inst-card:hover{transform:translateY(-3px);box-shadow:var(--p-shadow-md);border-color:#cbd5e1;}body.panel-layout .inst-header{padding:20px;border-bottom:1px solid var(--p-border);background:#fafaf9;display:flex;align-items:flex-start;gap:15px;}body.panel-layout .inst-icon{width:40px;height:40px;border-radius:10px;background:#e0e7ff;color:#4338ca;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;border:1px solid #c7d2fe;}body.panel-layout .inst-title{font-size:1.05rem;font-weight:900;color:var(--p-text);text-transform:uppercase;line-height:1.3;margin-bottom:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:3.9em;}body.panel-layout .badge-siaf{display:inline-block;background:var(--p-text);color:#fff;padding:3px 8px;border-radius:4px;font-size:0.65rem;font-weight:800;letter-spacing:0.5px;}body.panel-layout .inst-body{padding:20px;flex-grow:1;display:flex;flex-direction:column;gap:12px;justify-content:center;}body.panel-layout .inst-info-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px dashed var(--p-border);}body.panel-layout .inst-info-row:last-child{border-bottom:none;padding-bottom:0;}body.panel-layout .inst-info-label{font-size:0.7rem;color:var(--p-muted);font-weight:800;text-transform:uppercase;}body.panel-layout .inst-info-val{font-family:monospace;font-size:1rem;color:var(--p-primary);font-weight:900;letter-spacing:1px;}body.panel-layout .inst-footer{display:flex;padding:15px;border-top:1px solid var(--p-border);background:#f8fafc;gap:8px;margin-top:auto;}body.panel-layout .prov-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-bottom:30px;}body.panel-layout .prov-card{background:var(--p-surface);border-radius:10px;border:1px solid var(--p-border);box-shadow:var(--p-shadow-sm);overflow:hidden;display:flex;flex-direction:column;height:100%;transition:0.3s;}body.panel-layout .prov-card:hover{transform:translateY(-4px);box-shadow:var(--p-shadow-md);border-color:#cbd5e1;}body.panel-layout .prov-header{padding:20px;border-bottom:1px solid var(--p-border);background:#fafaf9;display:flex;gap:15px;align-items:center;}body.panel-layout .prov-icon{width:50px;height:50px;border-radius:12px;background:#fff;border:1px solid var(--p-border);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:900;color:var(--p-primary);box-shadow:var(--p-shadow-sm);flex-shrink:0;}body.panel-layout .prov-title{min-width:0;flex-grow:1;}body.panel-layout .prov-title h3{font-size:1.05rem;font-weight:900;color:var(--p-text);line-height:1.2;margin-bottom:4px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0;}body.panel-layout .prov-body{padding:20px;display:flex;flex-direction:column;gap:12px;flex-grow:1;}body.panel-layout .prov-docs{display:flex;gap:8px;margin-top:15px;padding-top:15px;border-top:1px dashed var(--p-border);flex-wrap:wrap;}body.panel-layout .doc-badge{display:inline-flex;align-items:center;gap:5px;background:#fef2f2;color:#dc2626;padding:6px 10px;border-radius:6px;font-size:0.75rem;font-weight:800;border:1px solid #fecaca;text-decoration:none;transition:0.2s;}body.panel-layout .doc-badge:hover{background:#fee2e2;border-color:#ef4444;transform:translateY(-2px);}body.panel-layout .doc-badge.none{background:#f8fafc;color:#94a3b8;border-color:#e2e8f0;pointer-events:none;}body.panel-layout .cart-item{display:flex;gap:15px;padding:15px;border:1px solid var(--p-border);border-radius:12px;margin-bottom:15px;align-items:center;background:#f8fafc;}body.panel-layout .cart-img{width:60px;height:60px;border-radius:8px;background:#fff;border:1px solid #e2e8f0;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;}body.panel-layout .cart-img img{max-width:100%;max-height:100%;object-fit:contain;}body.panel-layout .cart-info{flex-grow:1;min-width:0;}body.panel-layout .cart-title{font-size:0.85rem;font-weight:800;color:var(--p-text);margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;}body.panel-layout .cart-meta{font-size:0.8rem;color:#64748b;font-weight:700;display:flex;gap:15px;}body.panel-layout .cart-total{font-size:1rem;font-weight:900;color:var(--p-primary);text-align:right;}body.panel-layout .status-update-box{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}body.panel-layout .cfg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;align-items:stretch;width:100%;margin-bottom:30px;}@media (max-width:1400px){body.panel-layout .cfg-grid{grid-template-columns:repeat(2,1fr);}}@media (max-width:900px){body.panel-layout .cfg-grid{grid-template-columns:1fr;}}body.panel-layout .cfg-card{background:var(--p-surface);border-radius:10px;border:1px solid var(--p-border);box-shadow:var(--p-shadow-sm);display:flex;flex-direction:column;overflow:hidden;transition:transform 0.3s ease,box-shadow 0.3s ease;}body.panel-layout .cfg-card:hover{transform:translateY(-4px);box-shadow:var(--p-shadow-md);border-color:#cbd5e1;}body.panel-layout .cfg-header{padding:18px 25px;border-bottom:1px solid var(--p-border);display:flex;align-items:center;background:#f8fafc;margin:0;}body.panel-layout .cfg-header h3{font-size:1.1rem;font-weight:900;text-transform:uppercase;margin:0;letter-spacing:0.5px;}body.panel-layout .cfg-body{padding:25px;flex-grow:1;display:flex;flex-direction:column;gap:15px;}body.panel-layout .cfg-body .form-grid{gap:15px;}body.panel-layout .cfg-body .form-control{padding:10px 14px;font-size:0.9rem;height:42px;border-radius:10px;}body.panel-layout .cfg-body textarea.form-control{min-height:80px;height:auto;}body.panel-layout .cfg-body .form-label{font-size:0.75rem;margin-bottom:6px;}body.panel-layout .dynamic-row{display:flex;gap:10px;margin-bottom:0.5rem;align-items:center;background:#fff;padding:10px;border-radius:8px;border:1px solid #e2e8f0;box-shadow:0 2px 4px rgba(0,0,0,0.02);}body.panel-layout .cfg-footer{padding:15px 25px;background:#f8fafc;border-top:1px solid var(--p-border);display:flex;justify-content:flex-end;margin-top:auto;}body.panel-layout .cfg-theme-blue{border-top:4px solid #3b82f6;}body.panel-layout .cfg-theme-blue .cfg-header h3{color:#2563eb;}body.panel-layout .cfg-theme-green{border-top:4px solid #10b981;}body.panel-layout .cfg-theme-green .cfg-header h3{color:#059669;}body.panel-layout .cfg-theme-orange{border-top:4px solid #f97316;}body.panel-layout .cfg-theme-orange .cfg-header h3{color:#ea580c;}body.panel-layout .cfg-theme-purple{border-top:4px solid #8b5cf6;}body.panel-layout .cfg-theme-purple .cfg-header h3{color:#7c3aed;}body.panel-layout .cfg-theme-teal{border-top:4px solid #14b8a6;}body.panel-layout .cfg-theme-teal .cfg-header h3{color:#0d9488;}body.panel-layout .cfg-theme-red{border-top:4px solid #ef4444;}body.panel-layout .cfg-theme-red .cfg-header h3{color:#dc2626;}body.panel-layout .maintenance-panel{background:#0f172a;color:#fff;border-radius:12px;padding:clamp(20px,3vw,30px);position:relative;overflow:hidden;}body.panel-layout .maintenance-panel::before{content:'';position:absolute;top:-50px;right:-50px;width:150px;height:150px;background:radial-gradient(circle,rgba(255,107,0,0.2) 0%,transparent 70%);border-radius:50%;}body.panel-layout .m-title{font-size:clamp(1.1rem,1.5vw,1.25rem);font-weight:900;text-transform:uppercase;margin-bottom:10px;display:flex;align-items:center;gap:8px;position:relative;z-index:2;}body.panel-layout .m-desc{font-size:clamp(0.8rem,1vw,0.85rem);color:#94a3b8;line-height:1.6;margin-bottom:25px;position:relative;z-index:2;}body.panel-layout .system-info{margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,0.1);position:relative;z-index:2;}body.panel-layout .info-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:clamp(0.75rem,1vw,0.8rem);align-items:center;}body.panel-layout .info-label{color:#64748b;font-weight:800;text-transform:uppercase;}body.panel-layout .info-val{color:#f8fafc;font-weight:600;font-family:monospace;text-align:right;}@media print{body.panel-layout{display:block;background:#fff;}body.panel-layout .sidebar,body.panel-layout .mobile-nav,body.panel-layout .header-top,body.panel-layout .filter-section,body.panel-layout .pagination-container,body.panel-layout .modal-overlay,body.panel-layout th:last-child,body.panel-layout td:last-child,body.panel-layout .alert-success,body.panel-layout .alert-error{display:none !important;}body.panel-layout .content-area{margin:0 !important;padding:0 !important;width:100% !important;}body.panel-layout .data-grid-container{box-shadow:none !important;border:none !important;}body.panel-layout .data-table th{background:#f1f5f9 !important;color:#000 !important;border:1px solid #000;}body.panel-layout .data-table td{border:1px solid #cbd5e1;color:#000 !important;}body.panel-layout .data-table tr{page-break-inside:avoid;}body.panel-layout .report-card{border:1px solid #000;break-inside:avoid;}}@media (max-width:1400px){body.panel-layout .empresa-text,body.panel-layout .cliente-text{max-width:180px;}}@media (max-width:1800px){body.panel-layout .products-grid{grid-template-columns:repeat(7,1fr);}}@media (max-width:1600px){body.panel-layout .products-grid{grid-template-columns:repeat(6,1fr);}}@media (max-width:1400px){body.panel-layout .products-grid{grid-template-columns:repeat(5,1fr);}}@media (max-width:1200px){body.panel-layout .products-grid{grid-template-columns:repeat(4,1fr);}}@media (max-width:1100px){body.panel-layout .products-grid{grid-template-columns:repeat(3,1fr);}}@media (max-width:1024px){body.panel-layout .settings-card.full-width{grid-column:1;}}@media (max-width:768px){body.panel-layout .dynamic-row{flex-direction:column;align-items:stretch;}body.panel-layout .dynamic-row button{align-self:flex-end;}}@media (max-width:1024px){body.panel-layout{padding-top:60px;padding-bottom:0;}body.panel-layout .mobile-header{display:flex;position:fixed;top:0;left:0;width:100%;height:60px;background:var(--menu-bg);z-index:9990;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:2px solid var(--p-primary);box-shadow:0 4px 10px rgba(0,0,0,0.3);}body.panel-layout .mobile-brand{display:flex;align-items:center;gap:10px;}body.panel-layout .hamburger-btn{background:none;border:none;color:#fff;display:flex;align-items:center;justify-content:center;padding:5px;cursor:pointer;}body.panel-layout .sidebar{transform:translateX(-100%);width:280px;box-shadow:10px 0 30px rgba(0,0,0,0.5);}body.panel-layout .sidebar.open{transform:translateX(0);}body.panel-layout .sidebar-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.6);z-index:9999;display:none;backdrop-filter:blur(3px);}body.panel-layout .sidebar.open ~ .sidebar-overlay{display:block;}body.panel-layout .close-sidebar{display:block;position:absolute;top:15px;right:15px;background:none;border:none;color:rgba(255,255,255,0.5);font-size:2rem;cursor:pointer;line-height:1;}body.panel-layout .close-sidebar:hover{color:#fff;}body.panel-layout .content-area{margin-left:0;width:100%;padding:20px;}body.panel-layout .header-top{position:sticky;top:60px;background:#050505;padding:15px 20px;margin:-20px -20px 20px -20px;z-index:900;border-bottom:3px solid var(--p-primary);border-radius:0 0 15px 15px;align-items:center;}body.panel-layout .header-info h1{color:#fff;font-size:1.2rem;}body.panel-layout .header-info p{display:none;}body.panel-layout .header-actions{flex-direction:row;gap:8px;flex-wrap:nowrap;}body.panel-layout .header-actions .btn-action{width:40px;height:40px;padding:0;justify-content:center;border-radius:10px;}body.panel-layout .header-actions .btn-action .btn-text{display:none;}body.panel-layout .header-actions .btn-action svg{margin:0;width:20px;height:20px;}body.panel-layout .empresas-grid,body.panel-layout .inst-grid,body.panel-layout .slider-grid{grid-template-columns:1fr;gap:15px;}body.panel-layout .products-grid{grid-template-columns:repeat(2,1fr) !important;gap:10px !important;}body.panel-layout .prod-img-wrap{height:auto !important;aspect-ratio:1 / 1 !important;padding:10px !important;}body.panel-layout .prod-content{padding:10px !important;}body.panel-layout .prod-title{font-size:0.75rem !important;min-height:3.9em !important;margin-bottom:6px !important;line-height:1.3 !important;}body.panel-layout .price-label{font-size:0.6rem !important;}body.panel-layout .price-value{font-size:0.95rem !important;}body.panel-layout .prod-price-wrap{padding:8px !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;gap:4px !important;text-align:center !important;}body.panel-layout .filter-section{flex-wrap:wrap;flex-direction:column;align-items:stretch;padding:15px;margin-bottom:20px;}body.panel-layout .filter-group{min-width:100%;}body.panel-layout .filter-group.search-group{min-width:100%;margin:0;}body.panel-layout .filter-actions{width:100%;justify-content:space-between;}body.panel-layout .filter-actions .btn-action{flex:1;justify-content:center;}body.panel-layout .report-grid{grid-template-columns:1fr 1fr;gap:15px;margin-bottom:20px;}body.panel-layout .empresas-grid,body.panel-layout .inst-grid,body.panel-layout .products-grid,body.panel-layout .slider-grid{grid-template-columns:1fr;gap:15px;}body.panel-layout .data-grid-container{background:transparent;border:none;box-shadow:none;margin-bottom:15px;}body.panel-layout .data-table thead{display:none;}body.panel-layout .data-table,body.panel-layout .data-table tbody,body.panel-layout .data-table tr,body.panel-layout .data-table td{display:block;width:100%;}body.panel-layout .data-table tr{background:#fff !important;border:1px solid var(--p-border);border-top:4px solid var(--p-primary);border-radius:12px;margin-bottom:15px;padding:5px;box-shadow:var(--p-shadow-sm);}body.panel-layout .data-table td{display:flex;justify-content:flex-start;align-items:center;text-align:left !important;padding:10px 15px !important;border-bottom:1px dashed var(--p-border);gap:0;}body.panel-layout .data-table td:last-child{border-bottom:none;flex-direction:row;justify-content:flex-start;background:#f8fafc;border-radius:0 0 12px 12px;margin-top:0;}body.panel-layout .data-table td::before{content:attr(data-label);flex:0 0 100px;font-size:0.65rem;font-weight:900;color:var(--p-muted);text-transform:uppercase;border-right:2px solid var(--p-border);margin-right:12px;padding-right:8px;}body.panel-layout .td-content{display:flex;flex-direction:column;align-items:flex-start !important;text-align:left !important;width:100%;justify-content:center;}body.panel-layout .td-logo-wrapper{flex-direction:row !important;align-items:center !important;justify-content:flex-start !important;}body.panel-layout .empresa-logo,body.panel-layout .empresa-logo-placeholder{height:36px;width:36px;font-size:1rem;}body.panel-layout .empresa-text,body.panel-layout .cliente-text{max-width:100%;white-space:normal;line-height:1.2;}body.panel-layout .doc-icons,body.panel-layout .action-icons{justify-content:flex-start !important;width:100%;gap:8px;flex-direction:row !important;}body.panel-layout .doc-btn,body.panel-layout .btn-icon{width:36px;height:36px;font-size:1.1rem;}body.panel-layout .modal-overlay{padding:15px;}body.panel-layout .modal-box{border-radius:10px;}body.panel-layout .modal-header{padding:15px 20px;border-radius:10px 16px 0 0;}body.panel-layout .modal-header h2{font-size:1.1rem;}body.panel-layout .modal-body{padding:15px 20px;}body.panel-layout .form-grid,body.panel-layout .det-layout{grid-template-columns:1fr;gap:12px;}body.panel-layout .modal-footer{padding:15px 20px;flex-direction:row !important;justify-content:space-between !important;gap:10px !important;border-radius:0 0 16px 16px;}body.panel-layout .modal-footer .btn-cancel,body.panel-layout .modal-footer .btn-action,body.panel-layout .modal-footer .btn-save{flex:1;width:50%;padding:12px 10px !important;font-size:0.8rem;justify-content:center;text-align:center;border-radius:10px;margin:0;white-space:nowrap;}body.panel-layout .pagination-container{flex-direction:column;gap:10px;padding:15px;border-radius:12px;border:1px solid var(--p-border);}body.panel-layout .pagination-links{justify-content:center;}}@media (max-width:768px){body.panel-layout .settings-card,body.panel-layout .maintenance-panel{padding:20px;border-radius:12px;}}.service-detail-hero{position:relative;padding:120px 20px 220px 20px;background-size:cover;background-position:center;background-repeat:no-repeat;border-bottom:5px solid var(--c-orange);}.service-detail-hero::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom,rgba(15,23,42,0.6) 0%,rgba(15,23,42,0.95) 100%);z-index:1;}.service-hero-content{position:relative;z-index:2;text-align:center;max-width:1150px;margin:0 auto;}.service-hero-content h1{font-family:var(--font-heading);font-size:clamp(2.2rem,4.5vw,3.8rem);color:white;text-transform:uppercase;line-height:1.1;margin-bottom:0;text-shadow:0 10px 30px rgba(0,0,0,0.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.service-hero-content .service-tag{display:inline-flex;align-items:center;gap:8px;background:rgba(255,107,53,0.2);backdrop-filter:blur(8px);border:1px solid rgba(255,107,53,0.4);color:var(--c-orange);padding:8px 24px;border-radius:50px;font-size:0.85rem;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:25px;box-shadow:0 10px 20px rgba(0,0,0,0.3);}.premium-back{color:white !important;border-color:rgba(255,255,255,0.15) !important;background:rgba(0,0,0,0.4) !important;backdrop-filter:blur(8px);border-radius:50px !important;padding:10px 25px !important;}.service-article-wrapper{max-width:1150px;margin:40px auto 60px auto;background:var(--c-white);border-radius:12px;box-shadow:0 25px 60px rgba(0,0,0,0.15);border:1px solid #e2e8f0;position:relative;z-index:10;}.service-article-content{padding:clamp(30px,5vw,60px);}.service-features-box{background:transparent;padding:0;margin:60px 0;}.service-features-box h3{font-family:var(--font-heading);font-size:1.5rem;color:var(--c-graphite);margin-bottom:25px;text-transform:uppercase;display:flex;align-items:center;gap:12px;}.service-features-box h3::before{content:'';display:block;width:6px;height:24px;background:var(--c-orange);border-radius:4px;}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:25px;}.feature-item{display:flex;flex-direction:column;align-items:flex-start;gap:15px;background:#fff;padding:30px;border-radius:10px;border:1px solid #e2e8f0;border-top:4px solid var(--c-orange);box-shadow:0 4px 10px rgba(0,0,0,0.02);transition:var(--transition);}.feature-item:hover{transform:translateY(-5px);box-shadow:0 15px 35px rgba(0,0,0,0.06);border-color:#cbd5e1;}.feature-text{font-weight:800;color:var(--c-graphite);font-size:1.05rem;line-height:1.4;}.feature-icon{width:45px;height:45px;background:rgba(16,185,129,0.1);color:var(--c-success);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}.rich-text-content{font-size:1.1rem;line-height:1.8;color:#475569;}.rich-text-content h2{color:var(--c-orange);margin-top:60px;margin-bottom:25px;font-size:2.2rem;border-bottom:3px solid var(--c-orange);display:inline-block;padding-bottom:8px;text-transform:uppercase;}.rich-text-content h3{color:var(--c-graphite);margin-top:40px;margin-bottom:20px;font-size:1.15rem;border-left:5px solid var(--c-orange);padding-left:15px;}.rich-text-content p{margin-bottom:25px;text-align:justify;font-size:1.1rem;}.rich-text-content img{max-width:100%;height:auto;border-radius:10px;margin:30px 0;box-shadow:0 10px 30px rgba(0,0,0,0.08);border:1px solid #e2e8f0;}.rich-text-content ul,.rich-text-content ol{margin-left:20px;margin-bottom:25px;}.rich-text-content li{margin-bottom:10px;padding-left:10px;}.rich-text-content li::marker{color:var(--c-orange);font-weight:bold;}.rich-text-content a{color:var(--c-orange);text-decoration:none;font-weight:700;transition:0.2s;border-bottom:1px solid transparent;}.rich-text-content a:hover{color:var(--c-orange-hover);border-bottom-color:var(--c-orange-hover);}.rich-text-content blockquote{border-left:5px solid var(--c-orange);margin:30px 0;font-style:italic;color:#334155;background:#f8fafc;padding:25px 30px;border-radius:0 16px 16px 0;font-size:1.15rem;font-weight:600;}.service-video-section{margin:60px 0;}.service-video-section h3{font-family:var(--font-heading);font-size:2rem;margin-bottom:20px;text-transform:uppercase;color:var(--c-graphite);border-bottom:2px solid #e2e8f0;padding-bottom:10px;}.video-container{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:12px;box-shadow:0 20px 40px rgba(0,0,0,0.1);border:1px solid #e2e8f0;background:#0f172a;}.video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none;}.service-gallery-section{margin:50px 0;}.service-gallery-section h3{font-family:var(--font-heading);font-size:1.8rem;margin-bottom:20px;text-transform:uppercase;color:var(--c-graphite);display:flex;align-items:center;gap:12px;}.service-gallery-section h3::before{content:'';display:block;width:6px;height:24px;background:var(--c-orange);border-radius:4px;}.service-detailed-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:15px;}.gallery-item{display:block;position:relative;overflow:hidden;border-radius:12px;aspect-ratio:1 / 1;cursor:pointer;box-shadow:0 4px 10px rgba(0,0,0,0.05);}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s cubic-bezier(0.4,0,0.2,1);}.gallery-item::after{content:'ðŸ”';position:absolute;inset:0;background:rgba(15,23,42,0.6);display:flex;align-items:center;justify-content:center;font-size:24px;color:white;opacity:0;transition:0.3s;pointer-events:none;}.gallery-item:hover img{transform:scale(1.1);}.gallery-item:hover::after{opacity:1;}.service-share{display:flex;align-items:center;gap:15px;margin-top:50px;padding-top:30px;border-top:1px dashed #cbd5e1;flex-wrap:wrap;}.share-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:white;transition:var(--transition);}.share-btn:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(0,0,0,0.15);color:white;}.share-btn.facebook{background:#1877F2;}.share-btn.whatsapp{background:#25D366;}.share-btn.linkedin{background:#0A66C2;}.share-btn.link-copy{background:var(--c-graphite);}.service-cta-box{background:linear-gradient(135deg,var(--c-graphite) 0%,var(--c-graphite-light) 100%);border-radius:12px;padding:40px;text-align:center;margin-top:40px;color:white;box-shadow:0 15px 30px rgba(0,0,0,0.1);}.service-cta-box h3{font-family:var(--font-heading);font-size:1.8rem;margin-bottom:15px;color:var(--c-orange);text-transform:uppercase;}.service-cta-box p{font-size:1.1rem;color:#cbd5e1;margin-bottom:25px;line-height:1.6;}.service-cta-box .btn-cta{box-shadow:0 10px 20px rgba(255,107,53,0.2);}.btn-cta.btn-wa{background:#25D366;color:white;}.btn-cta.btn-wa:hover{background:#1da851;box-shadow:0 10px 20px rgba(37,211,102,0.3);border-color:#1da851;}.image-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.85);backdrop-filter:blur(8px);z-index:9999;display:none;align-items:center;justify-content:center;opacity:0;transition:opacity 0.3s;}.image-modal-overlay.active{display:flex;opacity:1;}.image-modal-content{position:relative;max-width:90%;max-height:90%;}.image-modal-content img{width:100%;height:100%;object-fit:contain;}.image-modal-close{position:absolute;top:-40px;right:0;background:none;border:none;color:white;font-size:2.5rem;cursor:pointer;}.comments-section{margin-top:60px;padding-top:60px;border-top:2px dashed #e2e8f0;}.comments-header{display:flex;align-items:baseline;gap:15px;margin-bottom:30px;border-bottom:3px solid #e2e8f0;padding-bottom:15px;}.comments-header h2{font-family:var(--font-heading);font-size:2rem;color:var(--c-graphite);margin:0;text-transform:uppercase;position:relative;}.comments-header h2::after{content:'';position:absolute;bottom:-18px;left:0;width:100%;height:3px;background:var(--c-orange);}.comments-badge{background:rgba(255,107,53,0.1);color:var(--c-orange);padding:6px 12px;border-radius:8px;font-size:0.85rem;font-weight:800;text-transform:uppercase;border:1px solid rgba(255,107,53,0.3);}.comments-layout{display:flex;flex-direction:column;gap:50px;}.comment-list{display:flex;flex-direction:column;gap:20px;}.comment-item{background:#fff;border:1px solid #e2e8f0;border-left:4px solid var(--c-orange);border-radius:10px;padding:25px;display:flex;gap:20px;transition:var(--transition);box-shadow:0 10px 30px rgba(0,0,0,0.04);position:relative;overflow:hidden;}.comment-item::before{content:'â€';position:absolute;top:-10px;right:20px;font-size:8rem;color:#f1f5f9;font-family:Georgia,serif;line-height:1;pointer-events:none;}.comment-item:hover{border-color:#cbd5e1;box-shadow:0 10px 25px rgba(0,0,0,0.05);transform:translateY(-3px);}.comment-avatar{width:55px;height:55px;border-radius:50%;background:linear-gradient(135deg,var(--c-graphite) 0%,var(--c-graphite-light) 100%);color:white;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.5rem;flex-shrink:0;box-shadow:0 4px 10px rgba(0,0,0,0.1);}.comment-body{flex-grow:1;}.comment-author{font-weight:900;font-size:1.1rem;color:var(--c-graphite);display:block;margin-bottom:4px;text-transform:uppercase;}.comment-date{font-size:0.8rem;color:#94a3b8;font-weight:700;margin-bottom:12px;display:block;}.comment-text{color:#334155;line-height:1.7;font-size:1.05rem;}.comment-form-container{background:#fff;padding:40px;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 15px 40px rgba(0,0,0,0.04);width:100%;}.comment-form-container h3{font-family:var(--font-heading);font-size:1.15rem;margin-bottom:25px;color:var(--c-graphite);text-transform:uppercase;}.comment-form-grid{display:grid;grid-template-columns:1fr;gap:15px;margin-bottom:15px;}@media (min-width:600px){.comment-form-grid{grid-template-columns:1fr 1fr;}}.comment-form .form-control{width:100%;padding:16px 20px;border:2px solid #e2e8f0;border-radius:12px;font-family:inherit;font-size:0.95rem;font-weight:600;outline:none;transition:var(--transition);background:#f8fafc;color:var(--c-graphite);}.comment-form .form-control::placeholder{color:#94a3b8;font-weight:500;}.comment-form .form-control:focus{border-color:var(--c-orange);background:#fff;box-shadow:0 0 0 4px rgba(255,107,53,0.1);}.comment-form textarea.form-control{resize:vertical;min-height:140px;margin-bottom:20px;}.comment-form button{width:100%;padding:18px;font-size:1.05rem;font-weight:800;border-radius:12px;text-transform:uppercase;letter-spacing:1px;display:flex;align-items:center;justify-content:center;gap:10px;}.comment-disclaimer{font-size:0.8rem;color:#94a3b8;font-weight:600;text-align:center;margin-top:20px;display:block;}.feature-text{font-weight:800;color:var(--c-graphite);font-size:1.05rem;line-height:1.4;}.feature-icon{width:45px;height:45px;background:rgba(16,185,129,0.1);color:var(--c-success);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}.rich-text-content{font-size:1.1rem;line-height:1.8;color:#475569;}.rich-text-content h2{color:var(--c-orange);margin-top:60px;margin-bottom:25px;font-size:2.2rem;border-bottom:3px solid var(--c-orange);display:inline-block;padding-bottom:8px;text-transform:uppercase;}.rich-text-content h3{color:var(--c-graphite);margin-top:40px;margin-bottom:20px;font-size:1.15rem;border-left:5px solid var(--c-orange);padding-left:15px;}.rich-text-content p{margin-bottom:25px;text-align:justify;font-size:1.1rem;}.rich-text-content img{max-width:100%;height:auto;border-radius:10px;margin:30px 0;box-shadow:0 10px 30px rgba(0,0,0,0.08);border:1px solid #e2e8f0;}.rich-text-content ul,.rich-text-content ol{margin-left:20px;margin-bottom:25px;}.rich-text-content li{margin-bottom:10px;padding-left:10px;}.rich-text-content li::marker{color:var(--c-orange);font-weight:bold;}.rich-text-content a{color:var(--c-orange);text-decoration:none;font-weight:700;transition:0.2s;border-bottom:1px solid transparent;}.rich-text-content a:hover{color:var(--c-orange-hover);border-bottom-color:var(--c-orange-hover);}.rich-text-content blockquote{border-left:5px solid var(--c-orange);margin:30px 0;font-style:italic;color:#334155;background:#f8fafc;padding:25px 30px;border-radius:0 16px 16px 0;font-size:1.15rem;font-weight:600;}.service-video-section{margin:60px 0;}.service-video-section h3{font-family:var(--font-heading);font-size:2rem;margin-bottom:20px;text-transform:uppercase;color:var(--c-graphite);border-bottom:2px solid #e2e8f0;padding-bottom:10px;}.video-container{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:12px;box-shadow:0 20px 40px rgba(0,0,0,0.1);border:1px solid #e2e8f0;background:#0f172a;}.video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none;}.service-gallery-section{margin:50px 0;}.service-gallery-section h3{font-family:var(--font-heading);font-size:1.8rem;margin-bottom:20px;text-transform:uppercase;color:var(--c-graphite);display:flex;align-items:center;gap:12px;}.service-gallery-section h3::before{content:'';display:block;width:6px;height:24px;background:var(--c-orange);border-radius:4px;}.service-detailed-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:15px;}.gallery-item{display:block;position:relative;overflow:hidden;border-radius:12px;aspect-ratio:1 / 1;cursor:pointer;box-shadow:0 4px 10px rgba(0,0,0,0.05);}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s cubic-bezier(0.4,0,0.2,1);}.gallery-item::after{content:'ðŸ”';position:absolute;inset:0;background:rgba(15,23,42,0.6);display:flex;align-items:center;justify-content:center;font-size:24px;color:white;opacity:0;transition:0.3s;pointer-events:none;}.gallery-item:hover img{transform:scale(1.1);}.gallery-item:hover::after{opacity:1;}.service-share{display:flex;align-items:center;gap:15px;margin-top:50px;padding-top:30px;border-top:1px dashed #cbd5e1;flex-wrap:wrap;}.share-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:white;transition:var(--transition);}.share-btn:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(0,0,0,0.15);color:white;}.share-btn.facebook{background:#1877F2;}.share-btn.whatsapp{background:#25D366;}.share-btn.linkedin{background:#0A66C2;}.share-btn.link-copy{background:var(--c-graphite);}.service-cta-box{background:linear-gradient(135deg,var(--c-graphite) 0%,var(--c-graphite-light) 100%);border-radius:12px;padding:40px;text-align:center;margin-top:40px;color:white;box-shadow:0 15px 30px rgba(0,0,0,0.1);}.service-cta-box h3{font-family:var(--font-heading);font-size:1.8rem;margin-bottom:15px;color:var(--c-orange);text-transform:uppercase;}.service-cta-box p{font-size:1.1rem;color:#cbd5e1;margin-bottom:25px;line-height:1.6;}.service-cta-box .btn-cta{box-shadow:0 10px 20px rgba(255,107,53,0.2);}.btn-cta.btn-wa{background:#25D366;color:white;}.btn-cta.btn-wa:hover{background:#1da851;box-shadow:0 10px 20px rgba(37,211,102,0.3);border-color:#1da851;}.image-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.85);backdrop-filter:blur(8px);z-index:9999;display:none;align-items:center;justify-content:center;opacity:0;transition:opacity 0.3s;}.image-modal-overlay.active{display:flex;opacity:1;}.image-modal-content{position:relative;max-width:90%;max-height:90%;}.image-modal-content img{width:100%;height:100%;object-fit:contain;}.image-modal-close{position:absolute;top:-40px;right:0;background:none;border:none;color:white;font-size:2.5rem;cursor:pointer;}.comments-section{margin-top:60px;padding-top:60px;border-top:2px dashed #e2e8f0;}.comments-header{display:flex;align-items:baseline;gap:15px;margin-bottom:30px;border-bottom:3px solid #e2e8f0;padding-bottom:15px;}.comments-header h2{font-family:var(--font-heading);font-size:2rem;color:var(--c-graphite);margin:0;text-transform:uppercase;position:relative;}.comments-header h2::after{content:'';position:absolute;bottom:-18px;left:0;width:100%;height:3px;background:var(--c-orange);}.comments-badge{background:rgba(255,107,53,0.1);color:var(--c-orange);padding:6px 12px;border-radius:8px;font-size:0.85rem;font-weight:800;text-transform:uppercase;border:1px solid rgba(255,107,53,0.3);}.comments-layout{display:flex;flex-direction:column;gap:50px;}.comment-list{display:flex;flex-direction:column;gap:20px;}.comment-item{background:#fff;border:1px solid #e2e8f0;border-left:4px solid var(--c-orange);border-radius:10px;padding:25px;display:flex;gap:20px;transition:var(--transition);box-shadow:0 10px 30px rgba(0,0,0,0.04);position:relative;overflow:hidden;}.comment-item::before{content:'â€';position:absolute;top:-10px;right:20px;font-size:8rem;color:#f1f5f9;font-family:Georgia,serif;line-height:1;pointer-events:none;}.comment-item:hover{border-color:#cbd5e1;box-shadow:0 10px 25px rgba(0,0,0,0.05);transform:translateY(-3px);}.comment-avatar{width:55px;height:55px;border-radius:50%;background:linear-gradient(135deg,var(--c-graphite) 0%,var(--c-graphite-light) 100%);color:white;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.5rem;flex-shrink:0;box-shadow:0 4px 10px rgba(0,0,0,0.1);}.comment-body{flex-grow:1;}.comment-author{font-weight:900;font-size:1.1rem;color:var(--c-graphite);display:block;margin-bottom:4px;text-transform:uppercase;}.comment-date{font-size:0.8rem;color:#94a3b8;font-weight:700;margin-bottom:12px;display:block;}.comment-text{color:#334155;line-height:1.7;font-size:1.05rem;}.comment-form-container{background:#fff;padding:40px;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 15px 40px rgba(0,0,0,0.04);width:100%;}.comment-form-container h3{font-family:var(--font-heading);font-size:1.15rem;margin-bottom:25px;color:var(--c-graphite);text-transform:uppercase;}.comment-form-grid{display:grid;grid-template-columns:1fr;gap:15px;margin-bottom:15px;}@media (min-width:600px){.comment-form-grid{grid-template-columns:1fr 1fr;}}.comment-form .form-control{width:100%;padding:16px 20px;border:2px solid #e2e8f0;border-radius:12px;font-family:inherit;font-size:0.95rem;font-weight:600;outline:none;transition:var(--transition);background:#f8fafc;color:var(--c-graphite);}.comment-form .form-control::placeholder{color:#94a3b8;font-weight:500;}.comment-form .form-control:focus{border-color:var(--c-orange);background:#fff;box-shadow:0 0 0 4px rgba(255,107,53,0.1);}.comment-form textarea.form-control{resize:vertical;min-height:140px;margin-bottom:20px;}.comment-form button{width:100%;padding:18px;font-size:1.05rem;font-weight:800;border-radius:12px;text-transform:uppercase;letter-spacing:1px;display:flex;align-items:center;justify-content:center;gap:10px;}.comment-disclaimer{font-size:0.8rem;color:#94a3b8;font-weight:600;text-align:center;margin-top:20px;display:block;}.faq-hero{background:linear-gradient(135deg,rgba(15,23,42,0.98) 0%,rgba(30,41,59,0.9) 100%),url('https://images.unsplash.com/photo-1556761175-4b46a572b786?auto=format&fit=crop&q=80&w=2000') center/cover no-repeat;padding:100px 0 80px 0;text-align:center;border-bottom:5px solid var(--c-orange);}.faq-hero h1{font-size:clamp(2.5rem,5vw,4rem) !important;background:linear-gradient(135deg,#ffffff 40%,var(--c-orange) 100%) !important;-webkit-background-clip:text !important;-webkit-text-fill-color:transparent !important;text-transform:uppercase !important;letter-spacing:-1px !important;margin-bottom:15px !important;font-weight:900 !important;text-shadow:0 5px 20px rgba(0,0,0,0.3) !important;color:transparent !important;}.faq-hero p{font-size:1.2rem !important;color:#cbd5e1 !important;font-weight:600 !important;text-transform:uppercase !important;letter-spacing:2px !important;}.faq-container{max-width:100% !important;margin:0 auto;display:flex;flex-direction:column;gap:20px;}.faq-item{background:var(--c-white);border-radius:10px;border:1px solid #E5E7EB;box-shadow:0 10px 30px rgba(0,0,0,0.03);overflow:hidden;transition:var(--transition);}.faq-item:hover{border-color:var(--c-orange);box-shadow:0 15px 40px rgba(255,107,53,0.08);}.faq-item details{width:100%;}.faq-item summary{list-style:none;padding:25px 30px;font-size:1.1rem;font-weight:800;color:var(--c-graphite);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:var(--transition);}.faq-item summary::-webkit-details-marker{display:none;}.faq-item summary::after{content:'+';font-size:1.8rem;font-weight:400;color:var(--c-orange);transition:transform 0.3s ease,background 0.3s ease,color 0.3s ease;display:flex;align-items:center;justify-content:center;width:35px;height:35px;background:rgba(255,107,53,0.1);border-radius:50%;line-height:1;}.faq-item details[open] summary{border-bottom:1px dashed #E5E7EB;color:var(--c-orange);}.faq-item details[open] summary::after{content:'âˆ’';transform:rotate(180deg);background:var(--c-orange);color:var(--c-white);font-size:2rem;}.faq-content{padding:25px 30px;color:#475569;font-size:1.05rem;line-height:1.8;background:#f8fafc;}.faq-content p{margin-bottom:10px;}.faq-content p:last-child{margin-bottom:0;}.faq-content ul{list-style:disc;margin-left:20px;margin-top:15px;display:flex;flex-direction:column;gap:8px;color:#334155;font-weight:500;}.faq-cta-box{background:linear-gradient(135deg,var(--c-graphite) 0%,var(--c-graphite-light) 100%);border-radius:12px;padding:60px 40px;text-align:center;margin-top:60px;position:relative;overflow:hidden;border:1px solid #334155;}.faq-cta-box::before{content:'';position:absolute;top:-50px;left:-50px;width:200px;height:200px;background:radial-gradient(circle,rgba(255,107,53,0.15) 0%,transparent 70%);border-radius:50%;pointer-events:none;}.faq-cta-box h3{color:var(--c-orange) !important;font-size:clamp(1.8rem,3vw,2.5rem) !important;margin-bottom:15px !important;text-transform:uppercase !important;font-family:var(--font-heading) !important;font-weight:900 !important;}.faq-cta-box p{color:#cbd5e1;font-size:1.1rem;margin-bottom:35px;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.6;}.faq-cta-box .btn-cta{box-shadow:0 10px 20px rgba(255,107,53,0.2);border:2px solid var(--c-orange);}.faq-cta-box .btn-cta:hover{border-color:var(--c-orange-hover);}body.panel-layout .det-box-label{font-size:0.65rem;font-weight:800;color:#94a3b8;text-transform:uppercase;display:block;margin-bottom:2px;}body.panel-layout .det-box-value{font-size:0.85rem;font-weight:700;color:#0f172a;display:block;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}body.panel-layout .det-finance-card{background:#0f172a;color:#f8fafc;border-radius:12px;padding:16px;margin-bottom:16px;box-shadow:0 4px 12px rgba(15,23,42,0.15);}body.panel-layout .det-finance-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 24px;}body.panel-layout .det-fin-item{border-bottom:1px dashed #334155;padding-bottom:8px;}body.panel-layout .det-finance-grid > div:nth-last-child(-n+2){border-bottom:none;padding-bottom:0;}body.panel-layout .det-fin-label{font-size:0.65rem;font-weight:800;color:#94a3b8;text-transform:uppercase;display:block;}body.panel-layout .det-fin-value{font-size:0.95rem;font-weight:900;color:#ffffff;font-family:monospace;display:block;margin-top:2px;}body.panel-layout .det-fin-value.primary{color:#ff6b00;font-size:1.15rem;}body.panel-layout .det-desc-section{background:#f8fafc;border:1px dashed #cbd5e1;padding:14px;border-radius:10px;margin-bottom:16px;}body.panel-layout .det-section-title{font-size:0.8rem;font-weight:900;color:#0f172a;text-transform:uppercase;margin-bottom:8px;border-bottom:2px solid #ff6b00;display:inline-block;padding-bottom:2px;}body.panel-layout .det-meta-pill{display:flex;flex-direction:column;padding:10px 14px;border-radius:10px;border:1px solid #cbd5e1;border-left-width:4px;box-shadow:0 1px 3px rgba(0,0,0,0.02);transition:all 0.2s ease;}body.panel-layout .det-meta-pill:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px rgba(0,0,0,0.05);}body.panel-layout .det-meta-pill.brand{border-left-color:#ff6b00;background:#fffbeb;}body.panel-layout .det-meta-pill.category{border-left-color:#4338ca;background:#eef2ff;}body.panel-layout .det-meta-pill.provider{border-left-color:#8b5cf6;background:#f5f3ff;}body.panel-layout .det-meta-pill.creator{border-left-color:#0d9488;background:#f0fdfa;}body.panel-layout .det-finance-card-gradient{background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);color:#f8fafc;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 10px 25px -5px rgba(15,23,42,0.25);border:1px solid #334155;}body.panel-layout .det-finance-grid-premium{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}body.panel-layout .det-fin-box{background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);padding:10px 14px;border-radius:8px;transition:all 0.2s ease;}body.panel-layout .det-fin-box:hover{background:rgba(255,255,255,0.05);border-color:rgba(255,255,255,0.1);}body.panel-layout .det-fin-box.highlight{background:rgba(255,107,0,0.05);border-color:rgba(255,107,0,0.2);}body.panel-layout .det-specs-table-premium{width:100%;border-collapse:collapse;text-transform:uppercase;font-size:0.8rem;margin-top:8px;}body.panel-layout .det-specs-table-premium td{padding:12px 16px;border-bottom:1px solid #f1f5f9;color:#334155;font-weight:600;}body.panel-layout .det-specs-table-premium tr:nth-child(even) td{background:#f8fafc;}body.panel-layout .det-specs-table-premium tr:hover td{background:#eef2ff;}body.panel-layout .det-specs-table-premium td.spec-key{font-weight:800;color:#64748b;width:35%;border-right:1px solid #e2e8f0;}body.panel-layout .det-specs-table-premium td.spec-val{color:#0f172a;font-weight:700;padding-left:20px;}.star-btn{transition:transform 0.2s cubic-bezier(0.4,0,0.2,1),color 0.2s ease !important;}transform:scale(1.25);}.policy-hero{background:#f8fafc;position:relative;margin-top:0;padding:50px 0 45px 0;text-align:center;margin-bottom:40px;border-bottom:1.5px solid #e2e8f0;overflow:hidden;}@media (min-width:769px){.policy-hero{margin-top:82px !important;}}.policy-hero::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(15,23,42,0.03) 1px,transparent 1px);background-size:20px 20px;opacity:0.8;}.policy-hero .container{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:15px;}.policy-hero h1{font-size:2.8rem;font-weight:900;letter-spacing:-1.5px;text-transform:uppercase !important;color:#000000 !important;margin:0 auto;display:block;width:100%;line-height:1.2;}.policy-tag{display:inline-block;background:#fff3eb;border:1.5px solid #ffeedc;color:var(--c-orange);padding:8px 24px;border-radius:9999px;font-size:0.78rem;font-weight:900;text-transform:uppercase;letter-spacing:3px;box-shadow:0 4px 12px rgba(255,107,53,0.08);}.policy-wrapper{background:var(--c-white);border:1.5px solid #f1f5f9;border-radius:16px;padding:45px 50px;margin-bottom:80px;box-shadow:0 15px 40px -15px rgba(15,23,42,0.06);position:relative;overflow:hidden;margin-top:30px;}.policy-wrapper::before{content:'';position:absolute;top:0;left:0;width:6px;height:100%;background:var(--c-orange);}.last-update{display:inline-flex;align-items:center;gap:8px;background:#f8fafc;border:1px solid #e2e8f0;color:#64748b;padding:6px 16px;border-radius:9999px;font-size:0.78rem;font-weight:750;margin-bottom:35px;text-transform:uppercase;}.policy-content h2{color:#0f172a;font-size:1.35rem;font-weight:850;margin-top:40px;margin-bottom:18px;text-transform:uppercase !important;letter-spacing:0.5px;display:flex;align-items:center;border-bottom:1px solid #f1f5f9;padding-bottom:8px;}.policy-content h2::before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--c-orange);margin-right:12px;}.policy-content p{font-size:0.96rem;line-height:1.8;color:#475569;margin-bottom:20px;text-align:justify;}.policy-content ul{list-style:none;padding-left:0;margin-bottom:25px;}.policy-content ul li{position:relative;padding-left:24px;font-size:0.94rem;line-height:1.7;color:#475569;margin-bottom:12px;}.policy-content ul li::before{content:'â†’';position:absolute;left:0;color:var(--c-orange);font-weight:bold;font-size:1.1rem;line-height:1;top:1px;}.policy-content strong{color:#0f172a;font-weight:750;}@media (max-width:768px){.policy-hero{margin-top:0 !important;padding:30px 0 25px 0 !important;margin-bottom:20px !important;}.policy-hero h1{font-size:1.6rem;}.policy-tag{padding:5px 14px;font-size:0.68rem;letter-spacing:2px;}.policy-wrapper{padding:25px 18px !important;margin-top:15px !important;margin-bottom:40px !important;}}.breadcrumb-pro{margin-bottom:28px;padding:14px 0;}.breadcrumb-pro ol{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:0;margin:0;list-style:none;}.breadcrumb-pro li{font-size:0.72rem;font-weight:700;color:#94a3b8;display:flex;align-items:center;gap:6px;text-transform:uppercase;letter-spacing:0.5px;}.breadcrumb-pro li:last-child{color:#0f172a;}.breadcrumb-pro li:not(:last-child)::after{content:'/';font-size:0.9rem;color:#cbd5e1;font-weight:300;}.breadcrumb-pro a{color:#94a3b8;transition:color 0.2s ease;text-decoration:none;}.breadcrumb-pro a:hover{color:var(--c-orange);}.product-layout{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;margin-bottom:60px;}@media (max-width:900px){.product-layout{grid-template-columns:1fr;gap:32px;}}.prod-gallery-sticky{position:sticky;top:100px;}.prod-gallery{position:relative;border:1px solid #E8EDF5;border-radius:20px;background:linear-gradient(145deg,#ffffff 0%,#f8fafc 100%);padding:16px;display:flex;justify-content:center;align-items:center;box-shadow:0 4px 6px -1px rgba(0,0,0,0.04),0 2px 4px -1px rgba(0,0,0,0.02),inset 0 1px 0 rgba(255,255,255,0.8);overflow:hidden;transition:box-shadow 0.3s ease;}.prod-gallery::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 70% 20%,rgba(255,107,53,0.04) 0%,transparent 60%);pointer-events:none;}.prod-gallery:hover{box-shadow:0 20px 50px -15px rgba(0,0,0,0.08),inset 0 1px 0 rgba(255,255,255,0.8);}.prod-gallery img{max-width:100%;height:auto;max-height:460px;object-fit:contain;transition:transform 0.6s cubic-bezier(0.25,0.46,0.45,0.94);position:relative;z-index:1;}.prod-gallery:hover img{transform:scale(1.04);}.gallery-zoom-hint{position:absolute;bottom:16px;right:16px;background:rgba(15,23,42,0.7);color:#ffffff;font-size:0.65rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;padding:5px 10px;border-radius:20px;opacity:0;transition:opacity 0.3s ease;pointer-events:none;backdrop-filter:blur(4px);}.prod-gallery:hover .gallery-zoom-hint{opacity:1;}.prod-thumbnails{display:grid !important;grid-template-columns:repeat(5,1fr) !important;gap:8px !important;margin-top:14px !important;}.prod-thumbnails .thumb-item{aspect-ratio:1 / 1 !important;border:2px solid #E8EDF5;border-radius:12px !important;overflow:hidden !important;cursor:pointer;transition:all 0.25s cubic-bezier(0.4,0,0.2,1);background:#ffffff;width:100% !important;height:auto !important;margin:0 !important;position:relative;}.prod-thumbnails .thumb-item::after{content:'';position:absolute;inset:0;border-radius:10px;background:rgba(255,107,53,0);transition:background 0.2s ease;}.prod-thumbnails .thumb-item:hover{border-color:var(--c-orange);transform:translateY(-3px);box-shadow:0 8px 16px rgba(255,107,53,0.15);}.prod-thumbnails .thumb-item:hover::after{background:rgba(255,107,53,0.04);}.prod-thumbnails .thumb-item.active{border-color:var(--c-orange);box-shadow:0 0 0 3px rgba(255,107,53,0.2);}.prod-thumbnails .thumb-item img{width:100%;height:100%;object-fit:contain;padding:4px;box-sizing:border-box;}.prod-info-panel{display:flex;flex-direction:column;}.brand-cat-wrapper{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px;}.pills-group{display:flex;gap:6px;align-items:center;flex-wrap:wrap;}.brand-pill{background:rgba(255,107,53,0.08);color:var(--c-orange) !important;padding:4px 12px;border-radius:50px;font-weight:800;font-size:0.65rem;text-transform:uppercase !important;letter-spacing:1px;border:1.5px solid rgba(255,107,53,0.2);display:inline-flex;align-items:center;gap:4px;transition:all 0.2s ease;}.brand-pill::before{content:'â—†';font-size:0.4rem;}.cat-pill{background:#F1F5F9;color:#64748b;padding:4px 12px;border-radius:50px;font-weight:700;font-size:0.65rem;text-transform:uppercase !important;letter-spacing:0.8px;border:1.5px solid #E2E8F0;display:inline-block;transition:all 0.2s ease;text-decoration:none;}.cat-pill:hover{border-color:var(--c-orange);color:var(--c-orange);background:rgba(255,107,53,0.04);}.share-strip{display:flex;align-items:center;gap:5px;flex-shrink:0;}.share-label{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:0.8px;color:#94a3b8;margin-right:2px;}.share-icon-btn{width:28px;height:28px;border-radius:8px !important;border:1.5px solid #E2E8F0;background:#F8FAFC;color:#94a3b8;display:flex;align-items:center;justify-content:center;font-size:0.85rem;transition:all 0.2s ease;cursor:pointer;text-decoration:none;flex-shrink:0;}.share-icon-btn:hover{transform:translateY(-2px);box-shadow:0 4px 10px rgba(0,0,0,0.1);}.share-fb{border-color:rgba(24,119,242,0.3);color:#1877F2;background:rgba(24,119,242,0.06);}.share-fb:hover{background:#1877F2;color:#ffffff;border-color:#1877F2;box-shadow:0 4px 12px rgba(24,119,242,0.3) !important;}.share-wa{border-color:rgba(37,211,102,0.3);color:#25D366;background:rgba(37,211,102,0.06);}.share-wa:hover{background:#25D366;color:#ffffff;border-color:#25D366;box-shadow:0 4px 12px rgba(37,211,102,0.3) !important;}.share-copy{border-color:#E2E8F0;color:#64748b;background:#F8FAFC;}.share-copy:hover{background:#0f172a;color:#ffffff;border-color:#0f172a;}.prod-info-panel h1{font-family:var(--font-heading);font-size:clamp(1.3rem,2.5vw,1.8rem);font-weight:900;color:#0F172A;line-height:1.2;letter-spacing:-0.5px;text-transform:uppercase !important;margin:0 0 12px 0;}.meta-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px;flex-wrap:wrap;}.sku-label{display:inline-flex;align-items:center;gap:6px;font-size:0.7rem;color:#94a3b8;font-family:'Courier New',monospace;font-weight:700;margin-bottom:22px;text-transform:uppercase;letter-spacing:0.5px;background:#F8FAFC;padding:5px 12px;border-radius:6px;border:1px solid #E2E8F0;width:fit-content;}.sku-label::before{content:'âŠž';color:var(--c-orange);font-size:0.8rem;}.rating-interactive-section{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px;background:linear-gradient(135deg,#F8FAFC 0%,#ffffff 100%);padding:14px 18px;border-radius:12px;border:1px solid #E8EDF5;width:100%;box-sizing:border-box;box-shadow:0 1px 3px rgba(0,0,0,0.02);}.rating-title{font-size:0.7rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:#94a3b8;}.interactive-stars{display:flex;gap:3px;}.star-btn{transition:transform 0.2s cubic-bezier(0.34,1.56,0.64,1),color 0.15s ease !important;cursor:pointer;}.star-btn:hover{transform:scale(1.3) !important;}.rating-stats{font-size:0.72rem;color:#64748b;font-weight:700;white-space:nowrap;}.prod-desc{font-size:0.93rem;color:#64748b;line-height:1.75;text-align:justify;margin-bottom:24px;font-weight:400;border-left:3px solid #E8EDF5;padding-left:16px;}.price-section{background:linear-gradient(135deg,#0F172A 0%,#1E293B 100%);border-radius:16px;padding:22px 24px;margin-bottom:22px;position:relative;overflow:hidden;box-shadow:0 10px 30px rgba(15,23,42,0.18);}.price-section::before{content:'';position:absolute;top:-30px;right:-30px;width:120px;height:120px;background:radial-gradient(circle,rgba(255,107,53,0.15) 0%,transparent 70%);pointer-events:none;}.price-section::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--c-orange) 0%,rgba(255,107,53,0.3) 100%);}.price-label{display:block;font-size:0.65rem;font-weight:800;text-transform:uppercase;letter-spacing:2px;color:rgba(255,255,255,0.5);margin-bottom:8px;}.price-amount-wrapper{display:flex;align-items:baseline;gap:6px;margin-bottom:8px;}.price-currency{font-size:1.1rem;font-weight:900;color:rgba(255,255,255,0.7);font-family:var(--font-heading);}.price-value{font-size:2.4rem;font-weight:900;color:#ffffff;font-family:var(--font-heading);letter-spacing:-1px;line-height:1;}.price-badge{display:inline-flex;align-items:center;gap:6px;font-size:0.65rem;color:rgba(255,255,255,0.55);font-weight:600;text-transform:uppercase;letter-spacing:0.5px;}.price-badge svg{color:#4ade80;flex-shrink:0;}.prod-actions-grid{display:flex !important;flex-wrap:nowrap !important;gap:10px !important;margin-bottom:28px !important;width:100% !important;align-items:stretch !important;}.btn-action{white-space:nowrap !important;overflow:hidden;text-overflow:ellipsis;display:flex !important;align-items:center;justify-content:center;gap:8px;font-weight:800 !important;font-size:0.82rem !important;text-transform:uppercase !important;letter-spacing:0.5px !important;border-radius:12px !important;padding:14px 18px !important;cursor:pointer;text-decoration:none !important;transition:all 0.25s cubic-bezier(0.4,0,0.2,1) !important;}.btn-quote{flex:1.6 !important;background:linear-gradient(135deg,var(--c-orange) 0%,#ff8c42 100%) !important;color:#ffffff !important;border:none !important;box-shadow:0 8px 24px rgba(255,107,53,0.3),0 2px 4px rgba(255,107,53,0.2) !important;position:relative;overflow:hidden;}.btn-quote::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,0.15) 0%,transparent 60%);pointer-events:none;}.btn-quote:hover{transform:translateY(-3px) !important;box-shadow:0 16px 40px rgba(255,107,53,0.4),0 4px 8px rgba(255,107,53,0.25) !important;filter:brightness(1.05);}.btn-quote:active{transform:translateY(-1px) !important;}.btn-pdf-sys{flex:1 !important;background:rgba(255,107,53,0.05) !important;color:var(--c-orange) !important;border:1.5px solid rgba(255,107,53,0.25) !important;}.btn-pdf-sys:hover{background:var(--c-orange) !important;color:#ffffff !important;border-color:var(--c-orange) !important;box-shadow:0 8px 20px rgba(255,107,53,0.3) !important;transform:translateY(-2px) !important;}.btn-pdf-fab{flex:1 !important;background:rgba(239,68,68,0.05) !important;color:var(--c-danger) !important;border:1.5px solid rgba(239,68,68,0.25) !important;}.btn-pdf-fab:hover{background:var(--c-danger) !important;color:#ffffff !important;border-color:var(--c-danger) !important;box-shadow:0 8px 20px rgba(239,68,68,0.3) !important;transform:translateY(-2px) !important;}.prod-trust-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:4px;}.trust-feat{display:flex;align-items:center;gap:10px;background:#F8FAFC;padding:12px 14px;border-radius:12px;border:1px solid #E8EDF5;font-size:0.72rem;font-weight:800;color:#334155;transition:all 0.25s cubic-bezier(0.4,0,0.2,1);text-transform:uppercase;letter-spacing:0.3px;cursor:default;}.trust-feat:hover{transform:translateY(-3px);border-color:rgba(255,107,53,0.3);box-shadow:0 10px 24px rgba(0,0,0,0.04);background:#ffffff;}.trust-feat-icon{width:36px;height:36px;border-radius:10px;background:rgba(255,107,53,0.08);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform 0.3s cubic-bezier(0.34,1.56,0.64,1);}.trust-feat:hover .trust-feat-icon{transform:scale(1.15) rotate(-5deg);}.trust-feat svg{color:var(--c-orange);}.minimal-share-bar{display:flex;align-items:center;gap:6px;}.ads-block-wrapper{text-align:center;margin-bottom:50px;width:100%;overflow:hidden;}.ads-label{font-size:10px;color:#cbd5e1;text-transform:uppercase;margin-bottom:5px;letter-spacing:2px;}.unified-details-section{margin-top:0;margin-bottom:60px;}.desc-block{background:#ffffff;border-radius:12px;border:1px solid #E8EDF5;padding:24px 28px;margin-bottom:20px;box-shadow:0 1px 4px rgba(0,0,0,0.03);}.desc-block-title{font-family:var(--font-heading) !important;font-size:0.8rem !important;font-weight:900 !important;color:#94a3b8 !important;text-transform:uppercase !important;letter-spacing:2px !important;margin:0 0 14px 0 !important;display:flex;align-items:center;gap:8px;}.desc-block-title::before{content:'';display:inline-block;width:3px;height:1em;background:var(--c-orange);border-radius:2px;flex-shrink:0;}.prod-detailed-desc{font-size:0.93rem;color:#475569;line-height:1.8;text-align:justify;}.prod-detailed-desc h1,.prod-detailed-desc h2,.prod-detailed-desc h3{color:#0f172a;font-weight:800;margin-top:1.2em;margin-bottom:0.4em;}.prod-detailed-desc p{margin-bottom:0.8em;}.prod-detailed-desc ul,.prod-detailed-desc ol{padding-left:1.5em;margin-bottom:0.8em;}.prod-detailed-desc li{margin-bottom:0.3em;}.prod-detailed-desc strong{color:#0f172a;font-weight:700;}.specs-block{background:#ffffff;border-radius:12px;border:1px solid #E8EDF5;overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,0.03);}.specs-block-header{background:linear-gradient(135deg,#0F172A 0%,#1E293B 100%);padding:16px 24px;display:flex;align-items:center;gap:12px;}.specs-block-header-icon{width:34px;height:34px;border-radius:8px;background:rgba(255,107,53,0.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;}.specs-block-header-icon svg{color:var(--c-orange);}.specs-block-header-text h2{font-family:var(--font-heading);font-size:0.82rem;font-weight:900;color:#ffffff;text-transform:uppercase;letter-spacing:2px;margin:0 0 1px 0;}.specs-block-header-text p{font-size:0.62rem;color:rgba(255,255,255,0.35);margin:0;text-transform:uppercase;letter-spacing:0.8px;}.specs-list{list-style:none;padding:0;margin:0;}.specs-list li{display:grid;grid-template-columns:45% 55%;align-items:stretch;border-bottom:1px solid #F4F6F9;transition:background 0.15s ease;position:relative;}.specs-list li:last-child{border-bottom:none;}.specs-list li::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--c-orange);transform:scaleY(0);transition:transform 0.18s ease;border-radius:0 2px 2px 0;}.specs-list li:hover{background:rgba(255,107,53,0.025) !important;}.specs-list li:hover::before{transform:scaleY(1);}.specs-list li:nth-child(even){background:#F8FAFC;}.spec-label{padding:9px 12px 9px 18px;font-size:0.68rem;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:0.6px;display:flex;align-items:center;background:transparent;}.spec-value{padding:9px 16px;font-size:0.82rem;font-weight:600;color:#0F172A;display:flex;align-items:center;word-break:break-word;border-left:1px solid #F0F2F5;}.specs-section-header{display:flex;align-items:center;gap:16px;margin-bottom:32px;}.specs-section-header::after{content:'';flex:1;height:1px;background:linear-gradient(90deg,#E2E8F0 0%,transparent 100%);}.specs-section-title{font-family:var(--font-heading) !important;font-size:1.1rem !important;font-weight:900 !important;color:#0F172A !important;text-transform:uppercase !important;letter-spacing:1.5px !important;margin:0 !important;padding:0 !important;border:none !important;white-space:nowrap;display:flex;align-items:center;gap:10px;}.specs-section-title::before{content:'';display:inline-block;width:4px;height:1.2em;background:var(--c-orange);border-radius:2px;flex-shrink:0;}.desc-block{background:#ffffff;border-radius:16px;border:1px solid #E8EDF5;padding:36px 40px;margin-bottom:24px;box-shadow:0 2px 8px rgba(0,0,0,0.03);}.prod-detailed-desc{font-size:0.95rem;color:#475569;line-height:1.85;text-align:justify;}.prod-detailed-desc h1,.prod-detailed-desc h2,.prod-detailed-desc h3{color:#0f172a;font-weight:800;margin-top:1.5em;margin-bottom:0.5em;}.prod-detailed-desc p{margin-bottom:1em;}.prod-detailed-desc ul,.prod-detailed-desc ol{padding-left:1.5em;margin-bottom:1em;}.prod-detailed-desc li{margin-bottom:0.4em;}.prod-detailed-desc strong{color:#0f172a;font-weight:700;}.specs-block{background:#ffffff;border-radius:16px;border:1px solid #E8EDF5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.03);}.specs-block-header{background:linear-gradient(135deg,#0F172A 0%,#1E293B 100%);padding:20px 32px;display:flex;align-items:center;gap:14px;}.specs-block-header-icon{width:40px;height:40px;border-radius:10px;background:rgba(255,107,53,0.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;}.specs-block-header-icon svg{color:var(--c-orange);}.specs-block-header-text h2{font-family:var(--font-heading);font-size:0.95rem;font-weight:900;color:#ffffff;text-transform:uppercase;letter-spacing:2px;margin:0 0 2px 0;}.specs-block-header-text p{font-size:0.68rem;color:rgba(255,255,255,0.4);margin:0;text-transform:uppercase;letter-spacing:1px;}.specs-list{list-style:none;padding:0;margin:0;counter-reset:spec-counter;}.specs-list li{display:grid;grid-template-columns:1fr 1.2fr;align-items:stretch;border-bottom:1px solid #F1F5F9;transition:all 0.2s ease;position:relative;counter-increment:spec-counter;}.specs-list li:last-child{border-bottom:none;}.specs-list li::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--c-orange);transform:scaleY(0);transition:transform 0.2s ease;border-radius:0 2px 2px 0;}.specs-list li:hover{background:linear-gradient(90deg,rgba(255,107,53,0.03) 0%,rgba(248,250,252,0.8) 100%);}.specs-list li:hover::before{transform:scaleY(1);}.specs-list li:nth-child(even){background:#FAFBFC;}.specs-list li:nth-child(even):hover{background:linear-gradient(90deg,rgba(255,107,53,0.04) 0%,rgba(248,250,252,0.9) 100%);}.spec-label{padding:14px 16px 14px 24px;font-size:0.72rem;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:0.8px;display:flex;align-items:center;border-right:1px solid #F1F5F9;background:transparent;}.spec-value{padding:14px 20px;font-size:0.85rem;font-weight:600;color:#0F172A;display:flex;align-items:center;word-break:break-word;}.specs-count-badge{display:inline-flex;align-items:center;justify-content:center;background:rgba(255,107,53,0.15);color:var(--c-orange);border-radius:20px;font-size:0.6rem;font-weight:900;padding:3px 8px;letter-spacing:0.5px;text-transform:uppercase;margin-left:8px;}.related-products-section{margin-bottom:60px;}.related-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;flex-wrap:wrap;gap:12px;}.related-header h2{font-family:var(--font-heading);font-size:1.5rem;font-weight:900;color:#0F172A;text-transform:uppercase;margin:0;letter-spacing:-0.3px;display:flex;align-items:center;gap:10px;}.related-header h2::before{content:'';display:inline-block;width:4px;height:1.4em;background:var(--c-orange);border-radius:2px;}.related-view-more{font-size:0.78rem;font-weight:800;color:var(--c-orange);text-transform:uppercase;text-decoration:none;letter-spacing:0.5px;display:flex;align-items:center;gap:4px;transition:gap 0.2s ease;}.related-view-more:hover{gap:8px;text-decoration:none;color:var(--c-orange);}.prod-card-brand-bar{display:flex;width:100%;border-bottom:1px solid #f1f5f9;font-size:0.62rem;font-weight:900;text-transform:uppercase;letter-spacing:0.8px;box-sizing:border-box;align-items:stretch;}.prod-card-brand-bar .brand-lbl{flex:1;background:#f8fafc;color:#64748b;padding:7px 10px;text-align:center;border-right:1px solid #f1f5f9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;justify-content:center;}.prod-card-brand-bar .rating-lbl{flex:0.85;background:rgba(255,107,53,0.04);padding:5px 8px;display:flex;align-items:center;justify-content:center;white-space:nowrap;}.prod-card .prod-price{color:#0f172a;font-size:1.3rem;font-weight:900;margin-bottom:10px;display:flex;justify-content:flex-end !important;}.prod-card-actions{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:10px;}.prod-card-actions .btn-add{background:#0f172a;color:#ffffff;border:1px solid #0f172a;width:100%;justify-content:center;box-shadow:none;transition:all 0.25s cubic-bezier(0.4,0,0.2,1);display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:10px;font-weight:800;font-size:0.78rem;text-transform:uppercase;cursor:pointer;letter-spacing:0.3px;}.prod-card-actions .btn-add:hover{background:var(--c-orange);border-color:var(--c-orange);transform:translateY(-2px);box-shadow:0 8px 20px rgba(255,107,53,0.25);}@media (max-width:768px){.brand-cat-wrapper{flex-wrap:wrap;gap:10px;}.prod-info-panel h1{font-size:1.35rem;}.price-value{font-size:1.9rem;}.price-section{padding:18px;}.prod-actions-grid{flex-wrap:wrap !important;}.btn-quote{flex:1 0 100% !important;}.btn-pdf-sys,.btn-pdf-fab{flex:1 !important;}.prod-trust-grid{grid-template-columns:1fr 1fr;gap:8px;}.trust-feat{padding:10px 12px;font-size:0.68rem;}.desc-block{padding:24px 20px;}.specs-block-header{padding:16px 20px;}.spec-label{padding:12px 10px 12px 16px;font-size:0.68rem;}.spec-value{padding:12px 14px;font-size:0.82rem;}.related-header h2{font-size:1.2rem;}}.brand-cat-wrapper{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;border-bottom:2px solid #F1F5F9;padding-bottom:16px;}.brand-pill{background:rgba(255,107,53,0.08);color:var(--c-orange) !important;padding:6px 16px;border-radius:50px;font-weight:800;font-size:0.72rem;text-transform:uppercase !important;letter-spacing:0.8px;border:1px solid rgba(255,107,53,0.15);display:inline-block;}.cat-pill{background:#F1F5F9;color:#475569;padding:6px 16px;border-radius:50px;font-weight:800;font-size:0.72rem;text-transform:uppercase !important;letter-spacing:0.8px;border:1px solid #E2E8F0;display:inline-block;}.sku-label{font-size:0.75rem;color:#94a3b8;font-family:monospace;font-weight:700;margin-bottom:20px;text-transform:uppercase;letter-spacing:0.5px;display:inline-block;}.breadcrumb-pro{margin-bottom:24px;padding:12px 0;}.breadcrumb-pro ol{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:0;margin:0;list-style:none;}.breadcrumb-pro li{font-size:0.75rem;font-weight:700;color:#64748b;display:flex;align-items:center;gap:8px;text-transform:uppercase !important;}.breadcrumb-pro li:not(:last-child)::after{content:'â€º';font-size:1.1rem;color:#94a3b8;font-weight:400;}.breadcrumb-pro a{color:#475569;transition:var(--transition);text-transform:uppercase !important;}.breadcrumb-pro a:hover{color:var(--c-orange);}.prod-gallery-sticky{position:sticky;top:100px;}.prod-gallery{border:1px solid #E2E8F0;border-radius:16px;background:#ffffff;padding:20px;display:flex;justify-content:center;align-items:center;box-shadow:0 10px 30px rgba(0,0,0,0.03);transition:var(--transition);}.prod-gallery img{max-width:100%;height:auto;max-height:480px;object-fit:contain;transition:transform 0.5s ease;}.prod-gallery:hover img{transform:scale(1.03);}.prod-thumbnails{display:grid !important;grid-template-columns:repeat(5,1fr) !important;gap:10px !important;margin-top:15px !important;}.prod-thumbnails .thumb-item{aspect-ratio:1 / 1 !important;border:2px solid #E2E8F0;border-radius:10px !important;overflow:hidden !important;cursor:pointer;transition:var(--transition);background:#ffffff;width:100% !important;height:auto !important;margin:0 !important;}.prod-thumbnails .thumb-item:hover{border-color:var(--c-orange);transform:translateY(-2px);}.prod-thumbnails .thumb-item.active{border-color:var(--c-orange);box-shadow:0 4px 12px rgba(255,107,53,0.2);}.prod-thumbnails .thumb-item img{width:100%;height:100%;object-fit:contain;}.rating-interactive-section{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:25px;background:#F8FAFC;padding:16px 20px;border-radius:10px;border:1px solid #E2E8F0;width:100%;box-sizing:border-box;}.prod-trust-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:30px;}.trust-feat{display:flex;align-items:center;gap:12px;background:#F8FAFC;padding:14px 16px;border-radius:10px;border:1px solid #E2E8F0;font-size:0.75rem;font-weight:800;color:#334155;transition:var(--transition);text-transform:uppercase !important;}.trust-feat:hover{transform:translateY(-3px);border-color:var(--c-orange);box-shadow:0 10px 20px rgba(0,0,0,0.04);background:#ffffff;}.trust-feat svg{color:var(--c-orange);flex-shrink:0;transition:transform 0.3s ease;}.trust-feat:hover svg{transform:scale(1.15);}.specs-section{margin-top:50px;background:#ffffff;padding:40px;border-radius:16px;border:1px solid #E2E8F0;box-shadow:0 10px 30px rgba(0,0,0,0.02);}.specs-title{font-family:var(--font-heading);font-size:1.8rem;font-weight:900;color:#0F172A;border-bottom:3px solid var(--c-orange);padding-bottom:14px;margin-bottom:30px;letter-spacing:0.5px;text-transform:uppercase !important;}.specs-table{width:100%;border-collapse:separate;border-spacing:0;margin-top:20px;border:1px solid #E2E8F0;border-radius:12px;overflow:hidden;}.specs-table tr{transition:var(--transition);}.specs-table tr:hover{background-color:#F8FAFC;}.specs-table tr:not(:last-child){border-bottom:1px solid #E2E8F0;}.specs-table th{padding:16px 20px;text-align:left;background:#F8FAFC;color:#0F172A;font-weight:800;font-size:0.8rem;letter-spacing:0.5px;width:35%;border-right:1px solid #E2E8F0;border-bottom:1px solid #E2E8F0;text-transform:uppercase !important;}.specs-table td{padding:16px 20px;text-align:left;color:#475569;font-weight:400;font-size:0.88rem;border-bottom:1px solid #E2E8F0;}.specs-table tr:last-child th,.specs-table tr:last-child td{border-bottom:none;}.prod-detailed-desc{font-size:1rem;color:#475569;line-height:1.8;margin-bottom:35px;text-align:justify;}.btn-pdf-sys{background:rgba(255,107,53,0.06) !important;color:var(--c-orange) !important;border:1.5px solid rgba(255,107,53,0.4) !important;padding:12px 20px !important;border-radius:8px !important;font-weight:800 !important;font-size:0.82rem !important;text-transform:uppercase !important;cursor:pointer;transition:var(--transition) !important;display:flex !important;align-items:center;justify-content:center;gap:8px;text-decoration:none !important;}.btn-pdf-sys:hover{background:var(--c-orange) !important;color:#ffffff !important;border-color:var(--c-orange) !important;box-shadow:0 8px 20px rgba(255,107,53,0.3) !important;transform:translateY(-2px);}.btn-pdf-fab{background:rgba(239,68,68,0.06) !important;color:var(--c-danger) !important;border:1.5px solid rgba(239,68,68,0.4) !important;padding:12px 20px !important;border-radius:8px !important;font-weight:800 !important;font-size:0.82rem !important;text-transform:uppercase !important;cursor:pointer;transition:var(--transition) !important;display:flex !important;align-items:center;justify-content:center;gap:8px;text-decoration:none !important;}.btn-pdf-fab:hover{background:var(--c-danger) !important;color:#ffffff !important;border-color:var(--c-danger) !important;box-shadow:0 8px 20px rgba(239,68,68,0.3) !important;transform:translateY(-2px);}.prod-actions-grid{display:flex !important;flex-wrap:nowrap !important;gap:10px !important;margin-bottom:25px !important;width:100% !important;align-items:stretch !important;}.btn-action{white-space:nowrap !important;text-overflow:ellipsis;overflow:hidden;}.btn-quote{flex:1.5 !important;}.btn-pdf-sys,.btn-pdf-fab{flex:1 !important;}.minimal-share-bar{display:flex;align-items:center;gap:8px;}.share-icon-btn{width:32px;height:32px;border-radius:50% !important;border:1px solid #CBD5E1;background:#ffffff;color:#64748b;display:flex;align-items:center;justify-content:center;font-size:0.85rem;transition:var(--transition);cursor:pointer;text-decoration:none;box-shadow:0 2px 4px rgba(0,0,0,0.02);}.share-icon-btn:hover{color:var(--c-orange);border-color:var(--c-orange);background:rgba(255,107,53,0.04);transform:translateY(-2px);box-shadow:0 4px 10px rgba(255,107,53,0.12);}.prod-card-brand-bar{display:flex;width:100%;border-bottom:1px solid #e2e8f0;font-size:0.65rem;font-weight:900;text-transform:uppercase;letter-spacing:0.5px;box-sizing:border-box;align-items:center;}.prod-card-brand-bar .brand-lbl{flex:1.1;background:#f1f5f9;color:#475569;padding:8px 12px;text-align:center;border-right:1px solid #e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:0 !important;}.prod-card-brand-bar .rating-lbl{flex:0.9;background:rgba(255,107,53,0.06);padding:6px 8px;display:flex;align-items:center;justify-content:center;white-space:nowrap;}.prod-card .prod-price{color:#0f172a;font-size:1.4rem;font-weight:900;margin-bottom:10px;display:flex;justify-content:flex-end !important;}.prod-card-actions{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:10px;}.prod-card-actions .btn-add{background:#0f172a;color:#ffffff;border:1px solid #0f172a;width:100%;justify-content:center;box-shadow:none;transition:all 0.25s cubic-bezier(0.4,0,0.2,1);display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:8px;font-weight:800;font-size:0.8rem;text-transform:uppercase;cursor:pointer;}.prod-card-actions .btn-add:hover{background:var(--c-orange);border-color:var(--c-orange);transform:translateY(-2px);box-shadow:0 4px 12px rgba(255,107,53,0.2);}.breadcrumb-pro{padding:15px 0;margin-bottom:10px;}.product-header-title-row h1{font-family:var(--font-heading,'Plus Jakarta Sans',sans-serif);font-size:clamp(2rem,4vw,2.6rem);font-weight:900;line-height:1.15;color:#0f172a;margin:0 0 5px 0 !important;text-transform:none !important;letter-spacing:-0.8px;width:100%;}.product-header-meta-row{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;width:100%;padding-bottom:24px;margin-bottom:35px;border-bottom:1px solid #e2e8f0;}.product-header-meta-left{display:flex;align-items:center;gap:20px;flex-wrap:wrap;}.meta-link-cat,.meta-label-brand{display:inline-flex;align-items:center;gap:6px;font-size:0.82rem;font-weight:600;color:#475569;text-decoration:none;transition:color 0.2s ease;}.meta-link-cat svg,.meta-label-brand svg{color:#94a3b8;flex-shrink:0;}.meta-link-cat:hover{color:var(--c-orange);}.meta-link-cat:hover svg{color:var(--c-orange);}.meta-label-brand strong{color:#0f172a;font-weight:700;}.product-header-sub{display:flex;align-items:center;gap:8px;border-left:1px solid #e2e8f0;padding-left:20px;}.product-header-sub .interactive-stars{display:flex;gap:4px;}.product-header-sub .rating-stats{font-size:0.8rem;font-weight:700;color:#64748b;}.product-header-meta-right{display:flex;align-items:center;}.share-box-premium{display:flex;align-items:center;gap:12px;}.share-title-text{font-size:0.72rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:#94a3b8;}.share-buttons-premium{display:flex;gap:8px;}.share-btn-premium{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:0.75rem;font-weight:700;border-radius:8px;text-decoration:none;border:1px solid #e2e8f0;background:#ffffff;cursor:pointer;transition:all 0.2s ease;color:#475569;position:relative;}.share-btn-premium svg{flex-shrink:0;}.share-btn-premium:hover{transform:translateY(-2.5px);box-shadow:0 6px 15px rgba(15,23,42,0.06);}.share-btn-premium.fb{border-color:rgba(24,119,242,0.2);color:#1877F2;background:rgba(24,119,242,0.02);}.share-btn-premium.fb:hover{background:#1877F2;color:#ffffff;border-color:#1877F2;box-shadow:0 6px 15px rgba(24,119,242,0.2) !important;}.share-btn-premium.wa{border-color:rgba(37,211,102,0.2);color:#25D366;background:rgba(37,211,102,0.02);}.share-btn-premium.wa:hover{background:#25D366;color:#ffffff;border-color:#25D366;box-shadow:0 6px 15px rgba(37,211,102,0.2) !important;}.share-btn-premium.copy{border-color:#e2e8f0;color:#475569;background:#f8fafc;}.share-btn-premium.copy:hover{background:#0f172a;color:#ffffff;border-color:#0f172a;box-shadow:0 6px 15px rgba(15,23,42,0.2) !important;}.share-copy-tooltip-premium{display:none;position:absolute;bottom:125%;left:50%;transform:translateX(-50%);background:#0f172a;color:#fff;font-size:0.65rem;padding:4px 8px;border-radius:4px;white-space:nowrap;z-index:10;box-shadow:0 4px 10px rgba(0,0,0,0.1);}.share-btn-premium.copy:hover .share-copy-tooltip-premium{display:block;}.product-layout{display:grid;grid-template-columns:1fr;gap:40px;background:transparent !important;padding:0 !important;border:none !important;box-shadow:none !important;margin-bottom:40px;}@media (min-width:1024px){.product-layout{grid-template-columns:1.15fr 0.85fr;gap:50px;}.product-header-title-row{grid-column:1 / -1;grid-row:1;}.product-header-meta-row{grid-column:1 / -1;grid-row:2;}.prod-gallery-sticky{grid-column:1;grid-row:3;}.prod-info-panel{grid-column:2;grid-row:3;}}.prod-gallery-sticky{position:relative;}.prod-gallery{background:#ffffff;border-radius:16px;border:1px solid #e2e8f0;position:relative;overflow:hidden;aspect-ratio:1 / 1;width:100%;cursor:zoom-in;box-shadow:0 4px 20px rgba(15,23,42,0.02);display:flex;align-items:center;justify-content:center;}.prod-gallery picture{display:block;width:100%;height:100%;}.prod-gallery img{width:100%;height:100%;object-fit:cover;background:#ffffff;padding:0 !important;transition:transform 0.1s ease;box-sizing:border-box;}.gallery-zoom-hint{position:absolute;bottom:15px;right:15px;background:rgba(15,23,42,0.75);color:#fff;padding:6px 12px;border-radius:20px;font-size:0.7rem;font-weight:700;backdrop-filter:blur(4px);pointer-events:none;transition:opacity 0.2s ease;z-index:5;}.prod-gallery:hover .gallery-zoom-hint{opacity:0;}.prod-thumbnails{display:flex;gap:12px;margin-top:15px;overflow-x:auto;padding-bottom:8px;}.thumb-item{width:72px;height:72px;border-radius:10px;border:1.5px solid #e2e8f0;cursor:pointer;overflow:hidden;transition:all 0.2s ease;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,0.02);}.thumb-item img{width:100%;height:100%;object-fit:contain;padding:6px;opacity:0.7;transition:all 0.2s ease;mix-blend-mode:multiply;}.thumb-item:hover{border-color:#cbd5e1;}.thumb-item:hover img{opacity:1;}.thumb-item.active{border-color:var(--c-orange);box-shadow:0 4px 12px rgba(255,107,53,0.15);}.thumb-item.active img{opacity:1;}.prod-info-panel{padding:30px;background:#ffffff;border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 10px 30px rgba(15,23,42,0.02);}.prod-desc{font-size:0.95rem;color:#475569;line-height:1.7;margin-bottom:25px;border-left:3px solid var(--c-orange);padding-left:15px;font-weight:400;}.product-features-highlights{margin-bottom:25px;padding-top:10px;border-top:1px dashed #e2e8f0;}.product-features-highlights h3{font-size:0.75rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:#64748b;margin-bottom:12px;}.features-highlight-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;}.features-highlight-list li{display:flex;align-items:flex-start;gap:8px;font-size:0.85rem;color:#334155;font-weight:600;}.features-highlight-list li svg{color:#10b981;margin-top:2px;flex-shrink:0;}.price-section{background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);border-radius:14px;padding:20px 24px;margin-bottom:25px;box-shadow:0 8px 24px rgba(15,23,42,0.12);}.prod-actions-grid{display:flex !important;gap:12px !important;margin-bottom:25px !important;}.btn-action{border-radius:10px !important;padding:12px 18px !important;font-size:0.8rem !important;}.specs-block{background:#ffffff;border-radius:16px;border:1px solid #e8edf5;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,0.02);}.specs-block-header{background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);padding:20px 24px;}.specs-block-header-text h2{font-size:0.9rem;letter-spacing:1.5px;}.specs-list{display:grid;grid-template-columns:1fr;gap:1px;background:#e2e8f0;list-style:none;padding:0;margin:0;}@media (min-width:768px){.specs-list{grid-template-columns:1fr 1fr;}}.specs-list li{display:flex;justify-content:space-between;align-items:center;background:#ffffff;padding:12px 20px;transition:background-color 0.2s ease;border:none !important;}.specs-list li::before{display:none !important;}.specs-list li:nth-child(even){background:#ffffff;}.specs-list li:nth-child(odd){background:#f8fafc;}.specs-list li:hover{background:rgba(255,107,53,0.04) !important;}.specs-list li .spec-label{width:45%;font-size:0.72rem;font-weight:800 !important;color:#334155;text-transform:uppercase;letter-spacing:0.5px;background:transparent;padding:0 !important;margin:0 !important;}.specs-list li .spec-value{width:55%;font-size:0.85rem;font-weight:400 !important;color:#0f172a;text-align:right;border:none !important;padding:0 !important;margin:0 !important;}.lightbox-modal{display:none;position:fixed;z-index:100000;left:0;top:0;width:100%;height:100%;background-color:rgba(15,23,42,0.95);backdrop-filter:blur(10px);align-items:center;justify-content:center;opacity:0;transition:opacity 0.3s ease;}.lightbox-modal.active{display:flex;opacity:1;}.lightbox-content-wrapper{position:relative;display:flex;align-items:center;justify-content:center;max-width:80%;max-height:80%;}.lightbox-modal img{max-width:100%;max-height:80vh;object-fit:contain;border-radius:12px;box-shadow:0 25px 50px -12px rgba(0,0,0,0.5);background:#fff;padding:10px;}.lightbox-close{position:absolute;top:30px;right:40px;color:#fff;font-size:40px;font-weight:bold;cursor:pointer;transition:color 0.2s;user-select:none;}.lightbox-close:hover{color:var(--c-orange);}.lightbox-prev,.lightbox-next{background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);color:white;font-size:24px;padding:16px;cursor:pointer;border-radius:50%;transition:all 0.2s;user-select:none;position:absolute;top:50%;transform:translateY(-50%);width:56px;height:56px;display:flex;align-items:center;justify-content:center;}.lightbox-prev:hover,.lightbox-next:hover{background:var(--c-orange);border-color:var(--c-orange);}.lightbox-prev{left:-80px;}.lightbox-next{right:-80px;}@media (max-width:1023px){.product-layout{display:flex;flex-direction:column;gap:20px;padding:0 15px !important;margin-left:0 !important;margin-right:0 !important;width:100% !important;box-sizing:border-box;}.prod-gallery-sticky{order:1;margin-bottom:15px;}.product-header-title-row{order:2;margin-bottom:5px;}.product-header-meta-row{order:3;display:flex;flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:25px;width:100%;padding-bottom:20px;border-bottom:1px solid #e2e8f0;}.product-header-meta-right{order:1;width:100%;}.product-header-meta-left{order:2;width:100%;}.product-header-sub{border-left:none;padding-left:0;margin-top:5px;}.prod-info-panel{order:4;padding:20px !important;margin-top:5px;}.prod-gallery{border-radius:12px !important;border:1px solid #e2e8f0 !important;height:auto !important;aspect-ratio:1 / 1 !important;}.prod-gallery img{object-fit:cover !important;padding:0 !important;}.specs-list{grid-template-columns:1fr;}.specs-list li{padding:12px 16px !important;}.specs-list li .spec-label{width:45% !important;}.specs-list li .spec-value{width:55% !important;}.lightbox-prev{left:10px;}.lightbox-next{right:10px;}.lightbox-prev,.lightbox-next{width:44px;height:44px;font-size:18px;}}.pp-main{padding:20px 0 60px;min-height:60vh;}.pp-container{width:100%;max-width:1280px;margin:0 auto;padding:0 15px;box-sizing:border-box;}.pp-breadcrumb{margin-bottom:20px;}.pp-breadcrumb ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:0;font-size:0.8rem;color:#64748b;}.pp-breadcrumb li + li::before{content:'/';opacity:0.4;margin-right:6px;}.pp-breadcrumb a{color:#64748b;text-decoration:none;transition:color 0.2s;}.pp-breadcrumb a:hover{color:var(--c-orange);}.pp-breadcrumb [aria-current="page"]{color:#0f172a;font-weight:600;}:root{--pro-bg:#f8fafc;--pro-card:#ffffff;--pro-text:#0f172a;--pro-text-light:#475569;--pro-border:#e2e8f0;--pro-orange:#ff6a00;}.pp-main{background-color:var(--pro-bg);color:var(--pro-text);padding:40px 0;min-height:100vh;}.pp-container{max-width:1280px;margin:0 auto;padding:0 20px;}.pp-breadcrumb{margin-bottom:24px;font-size:0.85rem;color:var(--pro-text-light);}.pp-breadcrumb ol{list-style:none;padding:0;margin:0;display:flex;gap:8px;flex-wrap:wrap;}.pp-breadcrumb li{display:flex;align-items:center;}.pp-breadcrumb li + li::before{content:'/';margin-right:8px;opacity:0.5;font-size:0.8rem;}.pp-breadcrumb a{color:#64748b;text-decoration:none;transition:color 0.2s;}.pp-breadcrumb a:hover{color:var(--pro-orange);}.pp-breadcrumb [aria-current="page"]{font-weight:600;color:var(--pro-text);}.pp-product-layout{display:flex;flex-direction:column;gap:32px;}@media (min-width:1024px){.pp-product-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:start;}}.pp-gallery-wrapper{position:sticky;top:90px;}.pp-gallery-main{background:var(--pro-card);border:1px solid var(--pro-border);border-radius:20px;padding:24px;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 4px 6px rgba(0,0,0,0.02);}.pp-gallery-main img{width:100%;height:100%;object-fit:contain;}.pp-gallery-thumbs{display:flex;gap:12px;margin-top:16px;overflow-x:auto;padding-bottom:8px;}.pp-thumb{width:80px;height:80px;border-radius:12px;border:2px solid var(--pro-border);background:var(--pro-card);padding:4px;cursor:pointer;transition:all 0.2s ease;flex-shrink:0;}.pp-thumb img{width:100%;height:100%;object-fit:contain;}.pp-thumb:hover{border-color:#cbd5e1;}.pp-thumb.active{border-color:var(--pro-orange);box-shadow:0 4px 12px rgba(255,106,0,0.15);}.pp-info-wrapper{display:flex;flex-direction:column;gap:24px;}.pp-header-box{padding-bottom:24px;border-bottom:1px solid var(--pro-border);}.pp-tags{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap;}.pp-tag{padding:4px 12px;border-radius:6px;font-size:0.75rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;}.pp-tag-brand{background:var(--pro-text);color:#fff;}.pp-tag-cat{background:#e2e8f0;color:var(--pro-text-light);}.pp-title{font-family:var(--font-heading);font-size:clamp(2rem,4vw,2.8rem);font-weight:900;line-height:1.1;color:var(--pro-text);margin-bottom:16px;letter-spacing:-0.5px;}.pp-desc{font-size:1.1rem;color:var(--pro-text-light);line-height:1.6;}.pp-price-card{background:var(--pro-card);border:2px solid var(--pro-border);border-radius:16px;padding:24px;box-shadow:0 10px 25px rgba(0,0,0,0.03);position:relative;overflow:hidden;}.pp-price-card::before{content:'';position:absolute;top:0;left:0;width:6px;height:100%;background:var(--pro-orange);}.pp-price-card-inner{display:flex;justify-content:space-between;align-items:center;}.pp-price-title{font-size:0.85rem;font-weight:800;color:#64748b;text-transform:uppercase;margin-bottom:8px;display:block;letter-spacing:1px;}.pp-price-amount{display:flex;align-items:flex-start;gap:8px;margin-bottom:0;}.pp-currency{font-size:1.5rem;font-weight:700;color:var(--pro-orange);margin-top:6px;}.pp-value{font-size:4rem;font-weight:900;color:var(--pro-text);line-height:1;letter-spacing:-2px;}.pp-price-badge{background:#ecfdf5;color:#059669;padding:8px 16px;border-radius:30px;font-weight:800;font-size:0.9rem;display:flex;align-items:center;gap:6px;}.pp-actions-row{display:flex;flex-wrap:wrap;gap:16px;margin-top:8px;}.pp-flex-btn{flex:1;min-width:200px;}.pp-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;border-radius:12px;font-size:1.05rem;font-weight:800;cursor:pointer;transition:all 0.3s ease;border:none;text-decoration:none;}.pp-btn-primary{background:var(--pro-orange);color:#fff;box-shadow:0 8px 20px rgba(255,106,0,0.2);}.pp-btn-primary:hover{transform:translateY(-3px);box-shadow:0 12px 25px rgba(255,106,0,0.3);}.pp-btn-secondary{background:var(--pro-text);color:#fff;}.pp-btn-secondary:hover{background:#1e293b;transform:translateY(-3px);box-shadow:0 8px 20px rgba(15,23,42,0.2);}.pp-btn-outline{background:transparent;color:var(--pro-text);border:2px solid var(--pro-text);}.pp-btn-outline:hover{background:var(--pro-text);color:#fff;transform:translateY(-3px);}.pp-section-card{background:var(--pro-card);border:1px solid var(--pro-border);border-radius:16px;padding:24px;margin-top:16px;}.pp-section-title{font-size:1.25rem;font-weight:800;color:var(--pro-text);margin-bottom:20px;display:flex;align-items:center;gap:10px;font-family:var(--font-heading);}.pp-section-title svg{color:var(--pro-orange);}.pp-features-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px;}.pp-features-list li{display:flex;gap:12px;color:var(--pro-text-light);font-size:1.05rem;line-height:1.5;align-items:flex-start;}.pp-features-list .feat-icon{color:var(--pro-orange);margin-top:2px;}.pp-features-list .feat-text{font-weight:500;}.pp-desc-full-card,.pp-specs-full-card{background:#ffffff !important;border:1px solid #e2e8f0 !important;border-radius:16px !important;padding:32px !important;box-shadow:0 10px 30px rgba(15,23,42,0.03) !important;margin-top:30px !important;box-sizing:border-box !important;overflow:visible !important;}.desc-header,.specs-header{background:transparent !important;padding:0 0 16px 0 !important;border-bottom:2px solid #f1f5f9 !important;display:flex !important;align-items:center !important;gap:12px !important;margin-bottom:24px !important;position:relative !important;width:100% !important;box-sizing:border-box !important;}.desc-header::after,.specs-header::after{content:'' !important;position:absolute !important;left:0 !important;bottom:-2px !important;width:60px !important;height:3px !important;background:var(--c-orange) !important;border-radius:2px !important;}.desc-header svg,.specs-header svg{color:var(--c-orange) !important;width:24px !important;height:24px !important;}.desc-header h2,.specs-header h2{font-size:1.4rem !important;font-weight:800 !important;color:#0f2942 !important;margin:0 !important;font-family:var(--font-heading) !important;text-transform:uppercase !important;border:none !important;padding:0 !important;}.desc-content{padding:0 !important;color:var(--pro-text-light);line-height:1.8;font-size:1.1rem;}.desc-content h1,.desc-content h2,.desc-content h3{color:var(--pro-text);font-family:var(--font-heading);margin-top:32px;margin-bottom:16px;font-weight:800;}.specs-header svg{color:var(--pro-text);}.specs-header h2{font-size:1.5rem;font-weight:900;color:var(--pro-text);margin:0;font-family:var(--font-heading);}.specs-table-wrapper{padding:0;}.pp-specs-table{width:100%;border-collapse:collapse;}.pp-specs-table tr{border-bottom:1px solid var(--pro-border);}.pp-specs-table tr:last-child{border-bottom:none;}.pp-specs-table th{background:#f8fafc;width:35%;padding:20px 32px;text-align:left;font-weight:800;color:var(--pro-text);text-transform:uppercase;font-size:0.9rem;letter-spacing:0.5px;border-right:1px solid var(--pro-border);}.pp-specs-table td{padding:20px 32px;font-weight:400;color:var(--pro-text-light);font-size:1.05rem;line-height:1.5;}.pp-specs-table tr:hover td{background:#fdfdfd;}.pp-related-section{margin-top:60px !important;border-top:1px solid #cbd5e1 !important;padding-top:50px !important;}.pp-related-header{font-family:var(--font-heading) !important;font-size:2rem !important;font-weight:800 !important;margin-bottom:40px !important;color:#0f2942 !important;text-align:center !important;position:relative !important;padding-bottom:12px !important;text-transform:uppercase !important;letter-spacing:-0.5px !important;}.pp-related-header::after{content:'' !important;position:absolute !important;left:50% !important;bottom:0 !important;transform:translateX(-50%) !important;width:60px !important;height:4px !important;background:var(--c-orange) !important;border-radius:2px !important;}.pp-related-section .prod-card{background:#ffffff !important;border:1px solid #e2e8f0 !important;border-radius:12px !important;padding:16px !important;transition:all 0.3s cubic-bezier(0.4,0,0.2,1) !important;box-shadow:0 4px 15px rgba(15,23,42,0.02) !important;box-sizing:border-box !important;display:flex !important;flex-direction:column !important;height:100% !important;}.pp-related-section .prod-card:hover{transform:translateY(-5px) !important;box-shadow:0 12px 30px rgba(15,23,42,0.08) !important;border-color:var(--c-orange) !important;}.pp-related-section .prod-img-wrapper{background:#f8fafc !important;border-radius:8px !important;padding:16px !important;aspect-ratio:1/1 !important;display:flex !important;align-items:center !important;justify-content:center !important;overflow:hidden !important;width:100% !important;box-sizing:border-box !important;}.pp-related-section .prod-img img{transition:transform 0.3s ease !important;object-fit:contain !important;max-height:100% !important;max-width:100% !important;}.pp-related-section .prod-card:hover .prod-img img{transform:scale(1.06) !important;}.pp-related-section .btn-view-detail{background:#f1f5f9 !important;color:#475569 !important;border:1px solid #cbd5e1 !important;margin-top:12px !important;transition:all 0.2s ease !important;}.pp-related-section .btn-view-detail:hover{background:#0f2942 !important;color:#ffffff !important;border-color:#0f2942 !important;}.pp-breadcrumb{display:flex;align-items:center;justify-content:flex-start;padding:12px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-weight:500;font-size:0.8rem;text-transform:uppercase;letter-spacing:0.5px;}.pp-breadcrumb ol{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0;padding:0;list-style:none;}.pp-breadcrumb li + li::before{content:'/';opacity:0.4;margin-right:8px;}.pp-breadcrumb a{color:#64748b;text-decoration:none;transition:color 0.2s;}.pp-breadcrumb a:hover{color:var(--pro-orange);}.pp-breadcrumb [aria-current="page"]{color:var(--pro-text);font-weight:700;}@media (max-width:768px){.pp-breadcrumb{display:none !important;}.pp-gallery-main{border:none !important;border-radius:0 !important;padding:0 !important;width:100vw;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);box-shadow:none !important;}.pp-gallery-main img{width:100%;height:auto;object-fit:contain;}.pp-gallery-thumbs{justify-content:center;}}.desc-content{text-align:justify;}.desc-content a{color:#0ea5e9;text-decoration:none;font-weight:700;}.desc-content a:hover{text-decoration:underline;color:#0284c7;}.desc-header h2{text-transform:uppercase;}@media (min-width:1024px){.pp-related-section .prod-grid{grid-template-columns:repeat(4,1fr) !important;gap:24px;}}.desc-content p{margin-bottom:1.5em;line-height:1.8;}.desc-content ul{list-style:disc;padding-left:24px;margin-bottom:1.5em;}.desc-content li{margin-bottom:0.5em;line-height:1.6;}.pp-gallery-main img{object-fit:cover !important;width:100% !important;height:100% !important;border-radius:20px;}@media (max-width:768px){.pp-gallery-main img{border-radius:0;}}.pp-gallery-main,.pp-gallery-main img{border-radius:0 !important;border:none !important;}.specs-list-wrapper{padding:0;}.pp-specs-list{list-style:none;padding:0;margin:0;}.pp-spec-item{display:flex;border-bottom:1px solid var(--pro-border);transition:background 0.2s;}.pp-spec-item:hover{background:#fdfdfd;}.pp-spec-item:last-child{border-bottom:none;}.pp-spec-key{width:35%;padding:20px 32px;font-weight:800;color:var(--pro-text);text-transform:uppercase;font-size:0.9rem;letter-spacing:0.5px;background:#f8fafc;border-right:1px solid var(--pro-border);flex-shrink:0;}.pp-spec-val{padding:20px 32px;font-weight:400;color:var(--pro-text-light);font-size:1.05rem;line-height:1.5;flex-grow:1;}.pp-spec-item-full{padding:32px;color:var(--pro-text);border-bottom:1px solid var(--pro-border);width:100%;box-sizing:border-box;}.pp-spec-item-full:last-child{border-bottom:none;}@media (max-width:768px){.pp-spec-item{flex-direction:column;}.pp-spec-key{width:100%;border-right:none;border-bottom:1px solid var(--pro-border);padding:16px;}.pp-spec-val,.pp-spec-item-full{padding:16px;}}.specs-list-wrapper{padding:0;}.pp-specs-list-modern{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;}.pp-specs-list-modern li{display:grid;grid-template-columns:35% 1fr;border-bottom:1px solid var(--pro-border);background:#fff;}.pp-specs-list-modern li:last-child{border-bottom:none;}.spec-label{padding:20px 32px;font-weight:800;color:var(--pro-text);background:#f8fafc;border-right:1px solid var(--pro-border);text-transform:uppercase;font-size:0.9rem;letter-spacing:0.5px;}.spec-value{padding:20px 32px;font-weight:400;color:var(--pro-text-light);font-size:1.05rem;line-height:1.5;}.spec-full-width{display:block !important;padding:32px;color:var(--pro-text);box-sizing:border-box;width:100%;}@media (max-width:768px){.pp-specs-list-modern li:not(.spec-full-width){grid-template-columns:1fr;}.spec-label{border-right:none;border-bottom:1px solid var(--pro-border);padding:16px;}.spec-value,.spec-full-width{padding:16px;}}@media (max-width:1024px){.pp-gallery-wrapper,.prod-gallery-sticky{position:static !important;}}@media (max-width:768px){.pp-main{padding-top:0 !important;}}@media (max-width:768px){.pp-main{padding-top:0 !important;}.pp-product-layout,.pp-gallery-wrapper,.pp-gallery-main{margin-top:0 !important;padding-top:0 !important;top:0 !important;}}:root{--pro-text:#0f172a;--pro-text-light:#334155;}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;}.pp-main p,.pp-main li,.pp-main span{color:var(--pro-text-light);}.pp-title,.section-title,h1,h2,h3,.spec-label{color:var(--pro-text) !important;letter-spacing:-0.02em;}.services-hero{background:linear-gradient(135deg,rgba(15,23,42,0.98) 0%,rgba(30,41,59,0.9) 100%),url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&q=80&w=2070') center/cover no-repeat;padding:80px 0 60px 0;text-align:center;border-bottom:5px solid var(--c-orange);position:relative;}.services-title{background:linear-gradient(135deg,#ffffff 40%,var(--c-orange) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-size:clamp(2.2rem,5vw,3.5rem);font-weight:800;text-transform:uppercase;margin-bottom:12px;line-height:1.2;}.services-subtitle{font-size:1.15rem;color:#94a3b8;max-width:650px;margin:0 auto 45px auto;line-height:1.6;font-weight:500;}.services-filter-wrapper{max-width:100%;margin:0 auto;width:100%;}.services-filter-bar{background:rgba(255,255,255,0.05) !important;backdrop-filter:blur(10px) !important;-webkit-backdrop-filter:blur(10px) !important;padding:6px !important;border-radius:14px !important;border:1px solid rgba(255,255,255,0.08) !important;display:grid !important;grid-template-columns:repeat(5,1fr) !important;gap:5px !important;width:100% !important;margin:0 !important;box-shadow:none !important;}.filter-btn{border:none;background:transparent;color:#cbd5e1;font-size:0.8rem;font-weight:800;text-transform:uppercase;padding:12px 6px;border-radius:10px;cursor:pointer;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);text-align:center;letter-spacing:0.5px;}.filter-btn:hover{color:var(--c-orange);background:rgba(255,255,255,0.03);}.filter-btn.active{background:var(--c-orange);color:var(--c-white);box-shadow:0 4px 15px rgba(255,107,53,0.3);}.desktop-only-filter{display:grid !important;}.mobile-only-filter{display:none !important;}@media (max-width:768px){.desktop-only-filter{display:none !important;}.mobile-only-filter{display:block !important;}}.services-grid-wrapper{margin-top:60px;margin-bottom:80px;}.services-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;}@media(max-width:1400px){.services-grid{grid-template-columns:repeat(3,1fr);gap:24px;}}@media(max-width:900px){.services-grid{grid-template-columns:repeat(2,1fr);gap:20px;}}@media(max-width:600px){.services-grid{grid-template-columns:1fr;gap:20px;}}.service-icon-floating{position:absolute;bottom:20px;right:25px;width:55px;height:55px;background:var(--c-graphite);color:var(--c-orange);border-radius:12px;display:flex;align-items:center;justify-content:center;z-index:20;box-shadow:0 8px 25px rgba(0,0,0,0.2);transition:all 0.4s ease;border:2px solid rgba(255,255,255,0.1);}.prod-card:hover .service-icon-floating{background:var(--c-orange);color:var(--c-white);transform:scale(1.1) rotate(5deg);border-color:var(--c-white);}.service-icon-floating svg{width:26px;height:26px;stroke-width:2;}.service-card-tag{font-size:0.68rem;font-weight:900;color:var(--c-white);padding:5px 12px;border-radius:4px;text-transform:uppercase;letter-spacing:1px;align-self:flex-start;margin-bottom:12px;}.tag-logistica{background:#d97706;}.tag-grass{background:#16a34a;}.tag-estructuras{background:#ea580c;}.tag-ingenieria{background:#2563eb;}.btn-service-details{display:flex;align-items:center;justify-content:center;gap:8px;background:#f8fafc;color:var(--c-graphite);padding:14px;border-radius:10px;font-weight:800;font-size:0.82rem;text-transform:uppercase;border:1px solid #e2e8f0;transition:all 0.3s ease;}.prod-card:hover .btn-service-details{background:var(--c-graphite);color:var(--c-white);border-color:var(--c-graphite);}.why-us-section{background:#f8fafc;padding:80px 0;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;margin-bottom:80px;}.why-us-header{text-align:center;margin-bottom:50px;}.why-us-header h2{font-family:var(--font-heading);font-size:2.2rem;color:#0f172a;text-transform:uppercase;margin-bottom:10px;}.why-us-header p{color:#64748b;font-size:1.1rem;}.why-us-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;}.why-us-card{background:var(--c-white);padding:40px 30px;border-radius:16px;text-align:center;border:1px solid #e2e8f0;box-shadow:0 4px 10px rgba(0,0,0,0.02);transition:all 0.3s ease;}.why-us-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px rgba(0,0,0,0.05);border-color:var(--c-orange);}.why-us-icon{width:60px;height:60px;background:rgba(255,107,53,0.08);color:var(--c-orange);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px auto;}.why-us-card h3{font-size:1.25rem;font-weight:800;color:#0f172a;margin-bottom:10px;text-transform:uppercase;}.why-us-card p{font-size:0.95rem;color:#64748b;line-height:1.6;margin-bottom:0;}.floating-cta{background:linear-gradient(135deg,var(--c-graphite) 0%,#1e293b 100%);border-radius:24px;padding:60px;text-align:center;color:var(--c-white);margin-bottom:80px;box-shadow:0 20px 40px rgba(15,23,42,0.15);border:1px solid rgba(255,255,255,0.05);position:relative;overflow:hidden;}.floating-cta::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,107,53,0.05) 0%,rgba(0,0,0,0) 60%);}.floating-cta h2{font-family:var(--font-heading);font-size:2.5rem;color:#ffffff !important;text-transform:uppercase;margin-bottom:15px;position:relative;z-index:10;}.floating-cta p{font-size:1.15rem;color:#cbd5e1;margin-bottom:30px;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.6;position:relative;z-index:10;}.floating-cta .btn-cta-orange{background:var(--c-orange);color:var(--c-white);font-weight:800;font-size:0.95rem;text-transform:uppercase;padding:18px 40px;border-radius:50px;border:none;cursor:pointer;box-shadow:0 10px 25px rgba(255,107,53,0.35);transition:all 0.3s ease;display:inline-flex;align-items:center;gap:10px;text-decoration:none;position:relative;z-index:10;}.floating-cta .btn-cta-orange:hover{transform:scale(1.05);background:#e65f2b;box-shadow:0 15px 30px rgba(255,107,53,0.5);}@media (max-width:768px){.services-hero{padding:60px 0 40px 0;}.services-subtitle{font-size:1rem;margin-bottom:25px;}.filter-wrapper{overflow-x:auto;padding-bottom:5px;scrollbar-width:none;}.filter-wrapper::-webkit-scrollbar{display:none;}.filter-bar{display:flex;width:max-content;border-radius:10px;padding:4px;}.filter-btn{padding:10px 20px;font-size:0.75rem;white-space:nowrap;}.floating-cta{padding:40px 20px;}.floating-cta h2{font-size:2rem;}}.service-detail-hero{background-size:cover !important;background-position:center !important;background-attachment:scroll;}.rich-text-content{font-size:1.05rem;line-height:1.8;color:#334155;}.rich-text-content h2{font-size:1.75rem;font-weight:800;color:#0f172a;margin-top:40px;margin-bottom:18px;border-left:5px solid var(--c-orange);padding-left:15px;text-transform:uppercase;}.rich-text-content h3{font-size:1.4rem;font-weight:800;color:#1e293b;margin-top:30px;margin-bottom:15px;}.rich-text-content p{margin-bottom:20px;text-align:justify;}.rich-text-content img{max-width:100%;height:auto;border-radius:20px;margin:30px 0;box-shadow:0 20px 40px rgba(0,0,0,0.08);border:1px solid #e2e8f0;}.rich-text-content ul{list-style-type:none;padding-left:5px;margin-bottom:25px;}.rich-text-content ul li{position:relative;padding-left:28px;margin-bottom:12px;line-height:1.6;}.rich-text-content ul li::before{content:"âœ“";position:absolute;left:0;top:2px;color:var(--c-orange);font-weight:900;font-size:1.1rem;}.rich-text-content a{color:var(--c-orange);text-decoration:none;border-bottom:2px dashed var(--c-orange);font-weight:700;transition:all 0.2s ease;}.rich-text-content a:hover{color:var(--c-orange-hover);border-bottom-style:solid;}.rich-text-content blockquote{border-left:4px solid var(--c-orange);background:#f8fafc;padding:24px 30px;margin:30px 0;font-style:italic;color:#475569;border-radius:0 16px 16px 0;box-shadow:inset 2px 0 8px rgba(0,0,0,0.01);}.service-title-icon svg{width:42px;height:42px;display:inline-block;vertical-align:middle;}@media (max-width:768px){.service-hero-content h1{white-space:normal;overflow:visible;text-overflow:clip;font-size:2rem;}.service-title-icon svg{width:32px;height:32px;}}body.service-detail-page::before{content:'';position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(248,250,252,0.4);z-index:-1;pointer-events:none;}.service-article-wrapper{background:rgba(255,255,255,0.92) !important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,0.5) !important;box-shadow:0 30px 60px rgba(15,23,42,0.15) !important;max-width:1280px !important;margin:40px auto 60px auto !important;}.service-layout-grid{display:grid;grid-template-columns:2fr 1.1fr;gap:40px;align-items:start;}.service-main-col{display:flex;flex-direction:column;}.service-sidebar-col{position:sticky;top:100px;display:flex;flex-direction:column;gap:30px;}.service-main-image-wrapper{margin-bottom:35px;border-radius:14px;overflow:hidden;box-shadow:0 15px 35px rgba(0,0,0,0.06);border:1px solid #e2e8f0;}.service-main-image{width:100%;height:auto;max-height:480px;object-fit:cover;display:block;transition:transform 0.5s ease;}.service-main-image:hover{transform:scale(1.02);}.sticky-cta{margin:0 !important;}@media (max-width:991px){.service-layout-grid{grid-template-columns:1fr;gap:30px;}.service-sidebar-col{position:static;}}.service-detail-hero{position:relative;padding:100px 20px 140px 20px !important;background:transparent !important;border-bottom:none !important;}.service-detail-hero::before{display:none !important;}.service-hero-content h1{color:#0f172a !important;text-shadow:none !important;white-space:normal !important;overflow:visible !important;text-overflow:clip !important;font-weight:900 !important;}.premium-back{color:#0f172a !important;border:1px solid rgba(15,23,42,0.1) !important;background:rgba(255,255,255,0.7) !important;backdrop-filter:blur(12px) !important;-webkit-backdrop-filter:blur(12px) !important;border-radius:50px !important;padding:10px 25px !important;transition:all 0.3s ease !important;}.premium-back:hover{background:#0f172a !important;color:#ffffff !important;border-color:#0f172a !important;}.service-hero-content .service-tag{background:rgba(255,107,53,0.1) !important;border:1px solid rgba(255,107,53,0.25) !important;color:var(--c-orange) !important;box-shadow:0 4px 10px rgba(255,107,53,0.05) !important;text-shadow:none !important;}.service-hero-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:45px;flex-wrap:wrap;position:relative;z-index:10;}.service-breadcrumbs ol{display:flex;align-items:center;flex-wrap:wrap;list-style:none;padding:0;margin:0;font-size:0.88rem;font-weight:600;}.service-breadcrumbs li{display:flex;align-items:center;color:#475569;}.service-breadcrumbs li a{color:var(--c-orange);text-decoration:none;transition:color 0.2s ease;}.service-breadcrumbs li a:hover{color:var(--c-orange-hover);}.service-breadcrumbs li:not(:last-child)::after{content:"/";margin:0 10px;color:#cbd5e1;font-weight:400;}.service-breadcrumbs li.active{color:#0f172a;font-weight:700;}.service-title-icon{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;color:var(--c-orange);margin-right:12px;}.service-title-icon svg{width:clamp(24px,4vw,38px);height:clamp(24px,4vw,38px);display:block;}@media (max-width:768px){.service-hero-top{flex-direction:column-reverse;align-items:flex-start;gap:15px;margin-bottom:25px;}.service-breadcrumbs ol{font-size:0.8rem;}.service-detail-hero{padding:60px 15px 100px 15px !important;}.service-hero-content{text-align:left !important;}.service-hero-content h1{font-size:1.85rem !important;text-align:left !important;line-height:1.2 !important;}}.service-contact-banner{display:flex;justify-content:space-between;align-items:center;gap:30px;background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);padding:40px 50px;border-radius:16px;margin-top:50px;margin-bottom:20px;border:1px solid rgba(255,255,255,0.05);box-shadow:0 15px 35px rgba(15,23,42,0.15);position:relative;overflow:hidden;}.service-contact-banner::before{content:'';position:absolute;top:-50%;right:-20%;width:300px;height:300px;background:radial-gradient(circle,rgba(255,107,53,0.08) 0%,rgba(0,0,0,0) 70%);pointer-events:none;}.contact-banner-content{flex:1;position:relative;z-index:2;}.contact-banner-content h3{font-family:var(--font-heading);font-size:1.6rem;color:#ffffff !important;margin-top:0 !important;margin-bottom:10px !important;text-transform:uppercase;letter-spacing:0.5px;}.contact-banner-content p{color:#94a3b8 !important;font-size:1.05rem;line-height:1.6;margin:0 !important;}.btn-contact-whatsapp{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:#25D366 !important;color:#ffffff !important;padding:18px 35px;border-radius:50px;font-weight:900;font-size:0.95rem;text-decoration:none !important;letter-spacing:1px;border:none;cursor:pointer;box-shadow:0 8px 25px rgba(37,211,102,0.3);transition:all 0.3s ease;flex-shrink:0;position:relative;z-index:2;}.btn-contact-whatsapp:hover{transform:translateY(-3px) scale(1.03);background:#20ba5a !important;box-shadow:0 12px 30px rgba(37,211,102,0.45);}.btn-contact-whatsapp svg{width:22px;height:22px;}.service-layout-full{width:100%;display:block;}@media (max-width:991px){.service-contact-banner{flex-direction:column;align-items:stretch;padding:35px;text-align:center;gap:25px;}.btn-contact-whatsapp{width:100%;}}@media (max-width:768px){.contact-banner-content h3{font-size:1.3rem;}.contact-banner-content p{font-size:0.95rem;}.btn-contact-whatsapp{padding:15px 25px;font-size:0.85rem;}.service-detail-page .container,.service-layout-full .container{padding:0 !important;}.service-article-wrapper{margin:0 !important;border-radius:0 !important;border:none !important;box-shadow:none !important;width:100% !important;max-width:100% !important;background:var(--c-white);}.service-article-content{padding:0 !important;display:flex;flex-direction:column;}.service-hero-top{display:none !important;}.service-main-image-wrapper{order:1 !important;margin:0 !important;border-radius:0 !important;border:none !important;box-shadow:none !important;}.service-main-image{border-radius:0 !important;max-height:320px !important;}.service-hero-content{order:2 !important;margin-top:20px !important;margin-bottom:25px !important;border-bottom:1px solid #e2e8f0;padding:0 20px 15px 20px !important;}.service-layout-full{order:3 !important;padding:0 20px !important;}.comments-section{order:4 !important;margin-top:35px !important;padding:30px 20px !important;}.service-video-section{margin-left:-20px;margin-right:-20px;}.video-container{border-radius:0 !important;border-left:none !important;border-right:none !important;}}.product-detail-page .pp-main{background:#f8fafc !important;}.product-detail-page h2{font-family:var(--font-heading);font-size:clamp(1.4rem,3vw,1.8rem) !important;color:#0f172a !important;font-weight:800 !important;margin-bottom:20px !important;position:relative;padding-bottom:8px !important;text-transform:uppercase;}.product-detail-page h2::after{content:'';position:absolute;bottom:0;left:0;width:50px;height:3px;background:var(--c-orange);border-radius:4px;}.product-detail-page .pp-main a:not(.pp-btn):not(.pp-tag){color:var(--c-orange) !important;text-decoration:none !important;font-weight:700 !important;transition:all 0.2s ease;}.product-detail-page .pp-main a:not(.pp-btn):not(.pp-tag):hover{color:var(--c-orange-hover) !important;text-decoration:underline !important;}.product-detail-page .desc-content h2,.product-detail-page .desc-content h2 *,.product-detail-page .desc-content h2 span,.product-detail-page .desc-content h3,.product-detail-page .desc-content h3 *,.product-detail-page .desc-content h3 span,.product-detail-page .desc-content h4,.product-detail-page .desc-content h4 *,.product-detail-page .desc-content h4 span{font-family:var(--font-heading) !important;color:#0f2942 !important;font-weight:800 !important;text-transform:uppercase !important;letter-spacing:-0.5px !important;}.product-detail-page .desc-content h2{font-size:1.8rem !important;margin-top:40px !important;margin-bottom:20px !important;border-left:5px solid var(--c-orange) !important;padding-left:15px !important;display:block !important;}.product-detail-page .desc-content h2 *{font-size:1.8rem !important;}.product-detail-page .desc-content h2::after{display:none !important;}.product-detail-page .desc-content h3{font-size:1.45rem !important;margin-top:36px !important;margin-bottom:16px !important;position:relative !important;padding-bottom:10px !important;border-bottom:2px solid #e2e8f0 !important;display:block !important;}.product-detail-page .desc-content h3::after{content:'' !important;position:absolute !important;left:0 !important;bottom:-2px !important;width:60px !important;height:3px !important;background:var(--c-orange) !important;border-radius:2px !important;}.product-detail-page .desc-content h3 *{font-size:1.45rem !important;}.product-detail-page .desc-content h4{font-size:1.2rem !important;margin-top:30px !important;margin-bottom:12px !important;position:relative !important;padding-bottom:8px !important;border-bottom:1px solid #f1f5f9 !important;display:block !important;}.product-detail-page .desc-content h4::after{content:'' !important;position:absolute !important;left:0 !important;bottom:-1px !important;width:40px !important;height:2px !important;background:#94a3b8 !important;border-radius:1px !important;}.product-detail-page .desc-content h4 *{font-size:1.2rem !important;}.product-detail-page .pp-main strong{color:#0f172a !important;font-weight:800 !important;}.product-detail-page .pp-main span{color:#475569 !important;}.product-detail-page .desc-content ul,.product-detail-page .desc-content ol{margin-top:15px !important;margin-bottom:15px !important;padding-left:25px !important;}.product-detail-page .desc-content li{margin-bottom:8px !important;font-size:1rem !important;line-height:1.6 !important;color:#334155 !important;}.product-detail-page .desc-content ul li{list-style-type:none !important;position:relative !important;padding-left:5px !important;}.product-detail-page .desc-content ul li::before{content:"âœ“" !important;position:absolute !important;left:-20px !important;top:0 !important;color:var(--c-orange) !important;font-weight:900 !important;font-size:1.1rem !important;}.pp-specs-full-card{background:#ffffff !important;border-radius:12px !important;padding:24px !important;box-shadow:0 4px 20px rgba(0,0,0,0.02) !important;border:1px solid #e2e8f0 !important;margin-top:30px !important;}.specs-header{display:flex !important;align-items:center !important;gap:12px !important;margin-bottom:20px !important;border-bottom:2px solid var(--c-orange) !important;padding-bottom:10px !important;}.specs-header h2{margin-bottom:0 !important;padding-bottom:0 !important;font-size:1.25rem !important;}.specs-header h2::after{display:none !important;}.specs-grid{display:grid !important;grid-template-columns:1fr !important;gap:0 !important;border-radius:0 !important;overflow:visible !important;border:none !important;width:100% !important;}.specs-grid .spec-row{display:grid !important;grid-template-columns:1.2fr 2.8fr !important;padding:14px 18px !important;border-bottom:1px solid #f1f5f9 !important;border-left:4px solid transparent !important;align-items:center !important;transition:all 0.25s cubic-bezier(0.4,0,0.2,1) !important;}.specs-grid .spec-row:last-child,.specs-grid li:last-child{border-bottom:none !important;}.specs-grid .spec-row:nth-child(odd),.specs-grid li:nth-child(odd){background-color:#f8fafc !important;}.specs-grid .spec-row:nth-child(even),.specs-grid li:nth-child(even){background-color:#ffffff !important;}.specs-grid .spec-row:hover,.specs-grid li:hover{background-color:#f8fafc !important;border-left-color:var(--c-orange) !important;padding-left:24px !important;box-shadow:inset 4px 0 0 0 var(--c-orange) !important;}.specs-grid .spec-lbl,.specs-grid .spec-label{font-size:0.85rem !important;font-weight:700 !important;color:#475569 !important;text-transform:uppercase !important;letter-spacing:0.8px !important;}.specs-grid .spec-val,.specs-grid .spec-value{font-size:0.95rem !important;font-weight:600 !important;color:#0f172a !important;text-align:left !important;}.specs-grid .spec-row-full{padding:14px 18px !important;font-size:0.95rem !important;color:#475569 !important;line-height:1.6 !important;border-bottom:1px solid #f1f5f9 !important;transition:all 0.25s cubic-bezier(0.4,0,0.2,1) !important;}.specs-grid .spec-row-full:last-child{border-bottom:none !important;}.specs-grid .spec-row-full:nth-child(odd){background-color:#f8fafc !important;}.specs-grid .spec-row-full:nth-child(even){background-color:#ffffff !important;}.pp-ads{display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;text-align:center !important;margin:40px auto !important;width:100% !important;}.pp-ads *{margin-left:auto !important;margin-right:auto !important;text-align:center !important;display:block !important;}.specs-grid li{display:grid !important;grid-template-columns:1fr 2fr !important;gap:20px !important;align-items:center !important;padding:14px 18px !important;border-bottom:1px solid #e2e8f0 !important;list-style:none !important;margin:0 !important;box-sizing:border-box !important;transition:background-color 0.2s ease !important;}@media (max-width:768px){.product-detail-page .pp-container{padding:0 10px !important;}.pp-breadcrumb{margin-top:15px !important;padding:0 10px !important;}.pp-specs-full-card,.pp-desc-full-card{padding:15px !important;margin-top:20px !important;}.specs-grid .spec-row,.specs-grid li{grid-template-columns:1fr !important;gap:4px !important;padding:10px 0 !important;}.specs-grid .spec-lbl,.specs-grid .spec-label{font-size:0.75rem !important;}.specs-grid .spec-val,.specs-grid .spec-value{font-size:0.9rem !important;}.nav-container{padding:12px 20px !important;}.footer{padding:40px 20px 20px 20px !important;}.footer-bottom{padding-left:0 !important;padding-right:0 !important;gap:15px !important;}.mobile-hide{display:none !important;}}.pp-gallery-thumbs{display:flex !important;gap:12px !important;margin-top:16px !important;justify-content:center !important;flex-wrap:wrap !important;}.pp-thumb{flex:1 !important;min-width:70px !important;max-width:105px !important;height:auto !important;aspect-ratio:1/1 !important;}.pp-guest-card{background:#f8fafc !important;border:1px dashed #cbd5e1 !important;border-radius:12px !important;padding:24px !important;display:flex !important;flex-direction:column !important;gap:16px !important;margin-top:16px !important;box-sizing:border-box !important;}@media (min-width:640px){.pp-guest-card{flex-direction:row !important;align-items:center !important;justify-content:space-between !important;gap:24px !important;}}.pp-guest-card-content{display:flex !important;gap:16px !important;align-items:flex-start !important;}.pp-guest-card-content svg{flex-shrink:0 !important;margin-top:2px !important;}.pp-guest-card-content h3{margin:0 0 6px 0 !important;font-size:1.1rem !important;font-weight:800 !important;color:#0f2942 !important;text-transform:none !important;border:none !important;padding:0 !important;}.pp-guest-card-content p{margin:0 !important;font-size:0.9rem !important;color:#475569 !important;line-height:1.5 !important;}.services-filter-select-mobile{width:100% !important;padding:14px 20px !important;border-radius:10px !important;border:2px solid rgba(255,255,255,0.15) !important;background:rgba(15,23,42,0.9) !important;color:#ffffff !important;font-family:inherit !important;font-size:0.95rem !important;font-weight:700 !important;outline:none !important;box-sizing:border-box !important;cursor:pointer !important;margin:15px 0 0 0 !important;text-transform:uppercase !important;}@media (max-width:768px){.filter-form{width:100% !important;flex-direction:column !important;gap:0 !important;}.filter-form .filter-input,.filter-form .btn-filter,.back-nav,.btn-cta-pdf{display:none !important;}.filter-form .filter-select{width:100% !important;margin:0 !important;flex-grow:1 !important;}.filter-bar{gap:10px !important;padding:15px !important;margin-bottom:25px !important;}}

/* OVERRIDES DE RESPONSIVIDAD PARA LA CABECERA Y EL LOGOTIPO */
.brand {
    font-size: 1.35rem !important;
    transition: font-size 0.2s ease, letter-spacing 0.2s ease;
}

@media (max-width: 1024px) {
    .brand {
        font-size: 1.2rem !important;
        letter-spacing: -0.8px;
    }
}

/* Ocultar enlaces de navegaciÃ³n de forma gradual al reducirse la pantalla */
@media (min-width: 768px) and (max-width: 1240px) {
    .nav-item-contacto {
        display: none !important;
    }
}

@media (min-width: 768px) and (max-width: 1120px) {
    .nav-item-faqs {
        display: none !important;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .nav-item-inicio {
        display: none !important;
    }
}

/* Ajustes adicionales en contenedores flex para evitar desalineaciÃ³n */
@media (min-width: 768px) and (max-width: 1024px) {
    .nav-container {
        gap: 12px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
    .nav-menu-wrapper {
        gap: 12px !important;
    }
    .nav-menu {
        gap: 10px !important;
    }
    .nav-search {
        margin: 0 10px !important;
    }
}


/* AJUSTES DE RESPONSIVIDAD PARA EL SUBMENÃš DESPLEGABLE */
@media (min-width: 768px) {
    .submenu {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 8px 20px !important;
        transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease !important;
    }
}

@media (min-width: 992px) and (max-width: 1200px) {
    .submenu {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 8px 15px !important;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .submenu {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 6px 12px !important;
    }
}

/* Permitir que los textos largos en los submenÃºs se lean correctamente */
.submenu a span {
    white-space: normal !important; /* Permitir salto de lÃ­nea para textos largos */
    word-break: break-word !important;
    line-height: 1.2 !important;
}


/* AJUSTES PARA EL SUBMENÃš EN TODOS LOS TAMAÃ‘OS DE PANTALLA (MÃ“VIL RESPONSIVO) */
@media (max-width: 767px) {
    .submenu {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important; /* Por defecto 2 columnas en mÃ³viles */
        gap: 8px 12px !important;
        background: rgba(255, 255, 255, 0.02) !important;
        border-radius: 10px !important;
        padding: 12px !important;
        margin-top: 10px !important;
        border-left: 2px solid var(--c-orange) !important;
        width: calc(100% - 20px) !important;
    }
}

@media (max-width: 480px) {
    .submenu {
        grid-template-columns: 1fr !important; /* 1 columna en celulares muy pequeÃ±os */
    }
}

@media (min-width: 481px) and (max-width: 767px) {
    .submenu {
        grid-template-columns: repeat(3, 1fr) !important; /* 3 columnas en celulares horizontales / tablets pequeÃ±as */
    }
}


/* ESQUELETO DE CARGA CON SHIMMER (SKELETON LOADER) PARA IMÃGENES LAZY */
.prod-img-wrapper, .slider-img, .service-main-image, .hero-section {
    background: #f1f5f9 !important;
    position: relative;
    overflow: hidden;
}

.prod-img-wrapper::before, .slider-img::before, .service-main-image::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
    transform: translateX(-100%);
    animation: loadingShimmer 1.6s infinite ease-in-out;
    z-index: 1;
}

@keyframes loadingShimmer {
    100% {
        transform: translateX(100%);
    }
}

img[loading="lazy"] {
    position: relative;
    z-index: 2; /* Asegurar que la imagen cargada cubra el shimmer del contenedor */
    background-color: #f8fafc;
}


/* MEJORAS DE DISEÃ‘O DE TITULO PRINCIPAL DE PRODUCTO */
.pp-title {
    font-size: 2.2rem !important;
    font-weight: 850 !important;
    color: #0f172a !important; /* Dark slate */
    line-height: 1.2 !important;
    border-left: 5px solid var(--c-orange) !important;
    padding-left: 18px !important;
    margin-bottom: 24px !important;
    letter-spacing: -0.8px !important;
}

/* MEJORAS DE DISEÃ‘O DE DESCRIPCIÃ“N COMPLETA */
.pp-desc-full-card {
    background: rgba(255, 255, 255, 0.75) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    border: 1px solid rgba(226, 232, 240, 0.8) !important;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.02) !important;
    padding: 35px !important;
    border-radius: 16px !important;
    position: relative !important;
}

.desc-content {
    font-size: 1.05rem !important;
    line-height: 1.85 !important;
    color: #334155 !important; /* Slate 700 - legible */
}

.desc-content p {
    margin-bottom: 1.2rem !important;
}

.desc-content h2, .desc-content h3 {
    font-family: var(--font-heading) !important;
    color: #0f172a !important;
    font-weight: 800 !important;
    margin-top: 1.6rem !important;
    margin-bottom: 0.8rem !important;
    font-size: 1.35rem !important;
}

.desc-content ul {
    list-style-type: none !important;
    padding-left: 0 !important;
    margin: 1rem 0 !important;
}

.desc-content li {
    position: relative !important;
    padding-left: 24px !important;
    margin-bottom: 10px !important;
    font-size: 1rem !important;
    color: #334155 !important;
}

.desc-content li::before {
    content: "âœ“" !important;
    color: var(--c-orange) !important;
    font-weight: 900 !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
}

/* --- CARRITO LATERAL (PREMIUM COMPACT) OVERRIDE --- */
.cart-overlay { background: rgba(15,23,42,0.8) !important; backdrop-filter: blur(8px) !important; }
.cart-sidebar { max-width: 400px !important; box-shadow: -15px 0 50px rgba(0,0,0,0.15) !important; border-left: 1px solid rgba(255,255,255,0.5) !important; }
.cart-header { padding: 15px 20px !important; border-bottom: 1px solid #f1f5f9 !important; }
.cart-header h3 { font-size: 1.1rem !important; gap: 8px !important; letter-spacing: 0.5px !important; }
.btn-close-cart { background: #f8fafc !important; border: 1px solid #e2e8f0 !important; width: 28px !important; height: 28px !important; border-radius: 50% !important; font-size: 1.2rem !important; color: #64748b !important; }
.btn-close-cart:hover { background: #ef4444 !important; color: white !important; border-color: #ef4444 !important; transform: rotate(90deg) !important; }
.cart-body { padding: 15px !important; background: #f8fafc !important; }
.cart-item { border-radius: 12px !important; padding: 12px !important; margin-bottom: 10px !important; box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important; border: 1px solid #f1f5f9 !important; transition: 0.2s !important; }
.cart-item:hover { box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important; border-color: #e2e8f0 !important; transform: translateY(-1px) !important; }
.cart-item-img { width: 50px !important; height: 50px !important; background: #f8fafc !important; padding: 4px !important; }
.cart-item-brand { font-size: 0.65rem !important; margin-bottom: 2px !important; }
.cart-item-title { font-size: 0.8rem !important; margin-bottom: 6px !important; }
.qty-controls { background: #f1f5f9 !important; border: none !important; }
.qty-btn { width: 24px !important; height: 24px !important; font-size: 1rem !important; color: #64748b !important; background: transparent !important; }
.qty-btn:hover { background: #e2e8f0 !important; color: #0f172a !important; }
.qty-input { width: 30px !important; height: 24px !important; font-size: 0.85rem !important; color: #0f172a !important; border: none !important; }
.price-web { font-size: 0.7rem !important; color: #94a3b8 !important; }
.price-cot { font-size: 0.9rem !important; color: #0f172a !important; }
.btn-remove-item { top: -8px !important; right: -8px !important; width: 24px !important; height: 24px !important; font-size: 0.9rem !important; box-shadow: 0 2px 5px rgba(0,0,0,0.1) !important; }
.btn-remove-item:hover { transform: scale(1.1) !important; }
.cart-footer { padding: 15px 20px !important; border-top: 1px solid #f1f5f9 !important; box-shadow: 0 -5px 15px rgba(0,0,0,0.02) !important; }
.cart-flex-row { font-size: 0.8rem !important; margin-bottom: 5px !important; }
.cart-total-row { font-size: 1rem !important; margin-top: 10px !important; padding-top: 10px !important; border-top: 1px dashed #e2e8f0 !important; }
.btn-submit-cart { background: linear-gradient(135deg, #ff6b00 0%, #e65c00 100%) !important; padding: 12px !important; border-radius: 8px !important; font-size: 0.9rem !important; letter-spacing: 0.5px !important; box-shadow: 0 4px 10px rgba(255,107,0,0.2) !important; }
.btn-submit-cart:hover { transform: translateY(-2px) !important; box-shadow: 0 6px 15px rgba(255,107,0,0.3) !important; }
.btn-empty-cart { font-size: 0.75rem !important; padding: 4px 8px !important; background: transparent !important; color: #94a3b8 !important; border: none !important; text-decoration: none !important; border-radius: 4px !important; width: auto !important; margin-top: 0 !important; }
.btn-empty-cart:hover { background: #fee2e2 !important; color: #ef4444 !important; }


/* --- AJUSTES PREMIUM EXTRAS PARA EL CARRITO --- */
.cart-header { padding: 20px 24px !important; border-bottom: 1px solid rgba(226, 232, 240, 0.8) !important; background: rgba(255, 255, 255, 0.95) !important; backdrop-filter: blur(10px) !important; }
.btn-empty-cart { background: #f1f5f9 !important; color: #64748b !important; padding: 6px 12px !important; border-radius: 20px !important; font-size: 0.75rem !important; font-weight: 700 !important; letter-spacing: 0.5px !important; transition: all 0.3s ease !important; display: flex !important; align-items: center !important; gap: 4px !important; box-shadow: 0 2px 4px rgba(0,0,0,0.02) !important; }
.btn-empty-cart:hover { background: #fee2e2 !important; color: #ef4444 !important; transform: translateY(-1px) !important; box-shadow: 0 4px 6px rgba(239, 68, 68, 0.1) !important; }
.btn-close-cart { background: #ffffff !important; border: 1px solid #e2e8f0 !important; width: 34px !important; height: 34px !important; border-radius: 50% !important; font-size: 1.4rem !important; color: #94a3b8 !important; transition: all 0.3s ease !important; box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important; display: flex !important; justify-content: center !important; align-items: center !important; margin-left: 10px !important; }
.btn-close-cart:hover { background: #0f172a !important; color: #ffffff !important; border-color: #0f172a !important; transform: rotate(90deg) scale(1.1) !important; box-shadow: 0 4px 12px rgba(15, 23, 42, 0.2) !important; }

.cart-login-box { padding: 30px 20px !important; background: linear-gradient(145deg, #ffffff 0%, #f8fafc 100%) !important; border-radius: 16px !important; border: 1px solid rgba(226, 232, 240, 0.6) !important; box-shadow: 0 10px 30px rgba(0,0,0,0.03) !important; margin: 15px 0 !important; }
.cart-login-desc { font-size: 0.9rem !important; color: #475569 !important; font-weight: 500 !important; line-height: 1.5 !important; margin-bottom: 20px !important; }
.cart-login-desc::before { content: '\f023'; font-family: 'Font Awesome 6 Free'; font-weight: 900; display: block; font-size: 1.8rem; color: #cbd5e1; margin-bottom: 12px; }
.cart-btn-login { background: #0f172a !important; color: #ffffff !important; font-size: 0.9rem !important; text-transform: uppercase !important; letter-spacing: 1px !important; border-radius: 10px !important; padding: 14px 20px !important; font-weight: 800 !important; box-shadow: 0 4px 15px rgba(15, 23, 42, 0.15) !important; transition: all 0.3s ease !important; display: block !important; }
.cart-btn-login:hover { background: #1e293b !important; transform: translateY(-3px) !important; box-shadow: 0 8px 25px rgba(15, 23, 42, 0.25) !important; }


/* --- AJUSTES MOBILE HEADER (EXPAND SEARCH & PREMIUM SUBMENU) --- */
@media (max-width: 1024px) {
    /* 1. Logo, Buscador y Carrito en una sola linea */
    .nav-container {
        flex-wrap: nowrap !important;
        padding: 12px 15px !important;
        gap: 12px !important;
        align-items: center !important;
    }
    .brand { font-size: 1.3rem !important; flex-shrink: 0 !important; margin: 0 !important; }
    
    .nav-search {
        order: unset !important;
        margin: 0 !important;
        flex-grow: 1 !important;
        display: flex !important;
        justify-content: flex-end !important;
        position: relative !important;
        height: 40px !important;
    }
    .nav-search form { width: 100%; display: flex; justify-content: flex-end; }
    .nav-search input {
        width: 40px !important;
        height: 40px !important;
        border-radius: 20px !important;
        padding: 0 !important;
        cursor: pointer !important;
        background: rgba(255, 255, 255, 0.08) !important;
        color: transparent !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
    }
    .nav-search input::placeholder { color: transparent !important; }
    .nav-search button {
        right: 12px !important;
        color: #fff !important;
        pointer-events: none !important;
        width: auto !important; height: auto !important;
        top: 50% !important; transform: translateY(-50%) !important;
    }
    
    /* Estado expandido */
    .nav-search:focus-within input,
    .nav-search input:focus,
    .nav-search input:not(:placeholder-shown) {
        width: 100% !important;
        cursor: text !important;
        color: #fff !important;
        background: #0a0a0a !important;
        border-color: var(--c-orange) !important;
        padding: 0 40px 0 15px !important;
        box-shadow: 0 5px 15px rgba(0,0,0,0.5) !important;
    }
    .nav-search:focus-within button {
        color: var(--c-orange) !important;
        pointer-events: auto !important;
    }
    .nav-search input:focus::placeholder {
        color: #64748b !important;
    }

    .nav-actions-right { flex-shrink: 0 !important; gap: 10px !important; margin: 0 !important; }
    .cart-btn { padding: 8px !important; }
    .mobile-toggle { margin: 0 !important; }

    /* 2. Diseno del Submenu Premium */
    .submenu {
        background: linear-gradient(145deg, rgba(30,41,59,0.5), rgba(15,23,42,0.8)) !important;
        border-radius: 12px !important;
        border: 1px solid rgba(255,255,255,0.05) !important;
        margin-left: 0 !important;
        margin-top: 8px !important;
        padding: 12px !important;
        box-shadow: inset 0 2px 10px rgba(0,0,0,0.2) !important;
        display: none !important; 
    }
    .has-dropdown.open-sub .submenu,
    .has-dropdown.active .submenu {
        display: grid !important;
        animation: fadeInDown 0.3s ease !important;
    }
    .submenu li { border-bottom: none !important; }
    .submenu a {
        padding: 12px 15px !important;
        background: rgba(0,0,0,0.2) !important;
        border-radius: 8px !important;
        margin-bottom: 6px !important;
        color: #cbd5e1 !important;
        font-size: 0.95rem !important;
        transition: all 0.3s ease !important;
        border: 1px solid rgba(255,255,255,0.02) !important;
    }
    .submenu a:hover, .submenu a:active {
        background: rgba(255,107,53,0.15) !important;
        color: var(--c-orange) !important;
        border-color: rgba(255,107,53,0.3) !important;
        transform: scale(1.02) !important;
    }
}
@keyframes fadeInDown {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}


/* --- AJUSTES EXTRA HEADER MOBILE (LOGO + MENU PEGADO) --- */
@media (max-width: 1024px) {
    /* 1. Solo SISSA en el logo */
    .desktop-only-logo { display: none !important; }
    
    /* 2. Menu pegado arriba (corrigiendo el hueco de 135px) */
    .nav-menu-wrapper {
        top: 65px !important; /* Ajustado a la altura de 1 sola linea del header */
        height: calc(100vh - 65px) !important;
        margin-top: 0 !important;
        border-top: 1px solid rgba(255,255,255,0.05) !important;
    }
}


/* --- AJUSTE DEFINITIVO DE ORDEN Y TAMAÑO DE BUSCADOR --- */
@media (max-width: 1024px) {
    /* Orden correcto: Logo (1) -> Buscador (2) -> Carrito y Menu (3) */
    .brand { order: 1 !important; }
    .nav-search { 
        order: 2 !important; 
        flex-grow: 1 !important; /* Que ocupe casi todo el espacio */
        display: flex !important;
        position: relative !important;
        margin: 0 10px !important; /* Separacion de los lados */
    }
    .nav-actions-right { order: 3 !important; }

    /* El buscador siempre abierto y ocupando el 100% del centro */
    .nav-search input {
        width: 100% !important; /* Siempre todo el ancho */
        height: 38px !important;
        border-radius: 20px !important;
        padding: 0 35px 0 15px !important;
        background: rgba(255, 255, 255, 0.08) !important;
        color: #fff !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        cursor: text !important; /* Input normal */
        box-shadow: none !important;
    }
    .nav-search input::placeholder {
        color: rgba(255,255,255,0.5) !important; /* Mostrar texto siempre */
    }
    .nav-search button {
        right: 10px !important;
        color: rgba(255,255,255,0.7) !important;
        pointer-events: auto !important; /* Clickable siempre */
    }
    
    /* Al escribir o clickear que cambie de color sutilmente */
    .nav-search:focus-within input,
    .nav-search input:focus {
        background: rgba(10,10,10,0.9) !important;
        border-color: var(--c-orange) !important;
        box-shadow: 0 4px 15px rgba(0,0,0,0.4) !important;
    }
    .nav-search:focus-within button {
        color: var(--c-orange) !important;
    }
}


/* --- AJUSTES ICONO DE USUARIO EN MOBILE --- */
/* Escritorio: ocultar icono de login por defecto */
.mobile-login-icon { display: none; margin-right: 8px; }

@media (max-width: 1024px) {
    /* Ocultar textos de login/usuario en movil */
    .desktop-user-name { display: none !important; }
    
    /* Mostrar icono de login si no esta logueado */
    .mobile-login-icon { display: block !important; margin: 0 !important; color: #cbd5e1; }
    
    /* Estilizar contenedor del boton perfil/login en movil para encajar */
    .user-profile-btn { margin-left: 5px; }
    .btn-user-profile, .btn-login-nav {
        padding: 5px !important;
        background: transparent !important;
        border: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    
    /* Ajustar tamano del avatar (circulo con inicial) */
    .btn-user-profile .avatar-circle {
        width: 32px !important;
        height: 32px !important;
        font-size: 0.9rem !important;
        margin: 0 !important;
    }
    
    /* Ajuste de orden final incluyendo usuario: Logo(1), Buscar(2), User(3), Carrito(4), Menu(5) */
    .nav-actions-right {
        order: 3 !important;
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
    }
    
    /* El menu dropdown del perfil debe posicionarse bien en movil */
    .user-dropdown-menu {
        right: 0 !important;
        left: auto !important;
        top: 50px !important;
    }
}


/* --- AJUSTE UNIFORME DE ALTURAS Y BUSCADOR FULL-WIDTH (OVERLAY) --- */
@media (max-width: 1024px) {
    /* Contenedor estricto de 60px de alto */
    .nav-container {
        height: 60px !important;
        min-height: 60px !important;
        padding: 0 15px !important;
        align-items: center !important;
        position: relative !important;
    }
    
    /* Uniformizar todas las alturas a 40px exactos para alineacion perfecta */
    .brand {
        height: 40px !important;
        display: flex !important;
        align-items: center !important;
        font-size: 1.3rem !important;
    }
    
    .nav-search {
        height: 40px !important;
        margin: 0 5px !important;
    }
    
    .nav-search input {
        height: 40px !important;
        border-radius: 20px !important;
        padding-left: 15px !important;
    }
    
    .nav-actions-right {
        height: 40px !important;
        gap: 5px !important;
    }

    .btn-user-profile, .btn-login-nav, .cart-btn, .mobile-toggle {
        height: 40px !important;
        width: 40px !important;
        padding: 0 !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        background: transparent !important;
        border: none !important;
    }
    
    /* Ajuste del badge del carrito para que no rompa el ancho/alto */
    .cart-btn .cart-badge {
        top: 2px !important;
        right: 2px !important;
    }

    /* EL EFECTO: BUSCADOR OCUPA TODA LA PANTALLA AL HACER CLICK */
    .nav-search:focus-within {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        margin: 0 !important;
        z-index: 2000 !important;
        background: #0a0a0a !important; /* Mismo fondo de la cabecera */
        padding: 10px 15px !important;
        display: flex !important;
        align-items: center !important;
    }
    
    .nav-search:focus-within input {
        border-radius: 8px !important; /* Diseño mas cuadrado para el overlay */
        background: rgba(255,255,255,0.1) !important;
        border-color: var(--c-orange) !important;
        padding: 0 45px 0 15px !important;
    }
    
    /* Las sugerencias caen justo debajo del header de 60px */
    #searchSuggestions {
        top: 60px !important;
        width: 100vw !important;
        left: 0 !important;
        position: fixed !important;
        max-height: calc(100vh - 60px) !important;
    }
}


/* --- AJUSTE VISUAL DEL ICONO DEL TOGGLE --- */
@media (max-width: 1024px) {
    /* Hacer el icono de las barras de menu visualmente mas grande para que empate con el peso visual del carrito y usuario */
    .mobile-toggle svg, .hamburger-icon svg, .close-icon svg {
        width: 28px !important;
        height: 28px !important;
    }
}


/* --- REDISEÑO DEL MENÚ MÓVIL (TEMA CLARO PROFESIONAL) --- */
@media (max-width: 1024px) {
    /* Fondo del menu movil blanco/claro */
    .nav-menu-wrapper {
        background: #ffffff !important;
        border-top: 1px solid #e2e8f0 !important;
        box-shadow: 0 10px 30px rgba(0,0,0,0.1) !important;
    }
    
    /* Enlaces principales del menu */
    .nav-menu a {
        color: #0f172a !important;
        font-size: 1.15rem !important;
        font-weight: 800 !important;
        border-bottom: 1px solid #f1f5f9 !important;
        border-radius: 0 !important;
        padding: 16px 5px !important;
        background: transparent !important;
    }
    .nav-menu a:hover {
        color: var(--c-orange) !important;
    }
    
    /* Diseno del Submenu Profesional (limpio, sin iconos, 1 por linea) */
    .submenu {
        background: #f8fafc !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: inset 0 2px 10px rgba(0,0,0,0.02) !important;
        margin: 0 -20px !important; /* Estirar a los bordes del contenedor */
        padding: 0 !important;
        display: none !important; 
    }
    
    .has-dropdown.open-sub .submenu,
    .has-dropdown.active .submenu {
        display: block !important;
    }
    
    .submenu li {
        border-bottom: 1px solid #e2e8f0 !important;
        display: block !important;
        width: 100% !important;
    }
    .submenu li:last-child {
        border-bottom: none !important;
    }
    
    .submenu a {
        padding: 14px 25px !important;
        background: transparent !important;
        border: none !important;
        color: #475569 !important;
        font-size: 0.95rem !important;
        font-weight: 600 !important;
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 0 !important;
        border-radius: 0 !important;
    }
    
    /* Ocultar iconos SVG viejos en submenu */
    .submenu a svg { display: none !important; }
    
    /* Flecha a la derecha profesional */
    .submenu a::after {
        content: '\f105' !important; /* angle-right de FontAwesome */
        font-family: 'Font Awesome 6 Free' !important;
        font-weight: 900 !important;
        color: #94a3b8 !important;
        font-size: 1.1rem !important;
        opacity: 1 !important;
        transform: none !important;
        margin-left: auto !important;
        transition: 0.2s !important;
    }
    
    .submenu a:hover, .submenu a:active {
        background: #f1f5f9 !important;
        color: var(--c-orange) !important;
        transform: none !important; /* Anular hover viejo */
        padding-left: 25px !important; /* Mantener fijo */
    }
    .submenu a:hover::after {
        color: var(--c-orange) !important;
        transform: translateX(5px) !important;
    }

    /* Ajustar tarjeta de usuario al tema claro */
    .mobile-user-card {
        background: #f8fafc !important;
        border: 1px solid #e2e8f0 !important;
        color: #0f172a !important;
    }
    .mobile-user-card .user-name { color: #0f172a !important; }
    .btn-mobile-link, .btn-mobile-logout { color: #475569 !important; border-top: 1px solid #e2e8f0 !important; }
    .btn-mobile-link:hover, .btn-mobile-logout:hover { background: #f1f5f9 !important; color: var(--c-orange) !important; }
}


/* --- REDISEÑO DEL MENÚ MÓVIL (TEMA OSCURO PREMIUM - COMBINA CON CABECERA) --- */
@media (max-width: 1024px) {
    /* Fondo del menu principal identico a la cabecera */
    .nav-menu-wrapper {
        background: #0a0a0a !important;
        border-top: 1px solid rgba(255,255,255,0.05) !important;
        box-shadow: none !important;
    }
    
    /* Enlaces principales del menu */
    .nav-menu a {
        color: #e2e8f0 !important;
        font-size: 1.1rem !important;
        font-weight: 700 !important;
        border-bottom: 1px solid rgba(255,255,255,0.05) !important;
        padding: 18px 5px !important;
        background: transparent !important;
    }
    .nav-menu a:hover {
        color: var(--c-orange) !important;
    }
    
    /* Submenu Integrado sin cajas, lineas limpias */
    .submenu {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        margin: 0 !important; 
        padding: 0 !important;
    }
    
    .submenu li {
        border-bottom: 1px solid rgba(255,255,255,0.03) !important;
    }
    .submenu li:last-child {
        border-bottom: none !important;
    }
    
    /* 1 link por linea, flecha a la derecha, sin padding exagerado */
    .submenu a {
        padding: 16px 15px 16px 20px !important;
        background: transparent !important;
        border: none !important;
        color: #94a3b8 !important; /* Gris intermedio para diferenciar del menu principal */
        font-size: 0.95rem !important;
        font-weight: 500 !important;
    }
    
    /* Flecha a la derecha siempre blanca/gris */
    .submenu a::after {
        content: '\f105' !important; 
        font-family: 'Font Awesome 6 Free' !important;
        font-weight: 900 !important;
        color: rgba(255,255,255,0.2) !important;
        font-size: 1.1rem !important;
    }
    
    .submenu a:hover, .submenu a:active {
        background: rgba(255,255,255,0.02) !important;
        color: #fff !important;
        padding-left: 20px !important; /* Mantiene la posicion */
    }
    .submenu a:hover::after {
        color: var(--c-orange) !important;
    }

    /* Regresar tarjeta de usuario al tema oscuro */
    .mobile-user-card {
        background: rgba(255,255,255,0.02) !important;
        border: 1px solid rgba(255,255,255,0.05) !important;
        color: #e2e8f0 !important;
    }
    .mobile-user-card .user-name { color: #fff !important; }
    .btn-mobile-link, .btn-mobile-logout { color: #94a3b8 !important; border-top: 1px solid rgba(255,255,255,0.05) !important; }
    .btn-mobile-link:hover, .btn-mobile-logout:hover { background: rgba(255,255,255,0.05) !important; color: #fff !important; }
}


/* --- REDISEÑO BASADO EN LA IMAGEN (COLORES GRIS OSCURO/AZULADO) --- */
@media (max-width: 1024px) {
    /* Fondo del menu principal con el degradado de la imagen */
    .nav-menu-wrapper {
        background: linear-gradient(to bottom, #4b4b4b, #1a1a1a) !important;
        border-top: none !important;
    }
    
    /* Enlaces principales del menu */
    .nav-menu a {
        color: #9fb1bc !important; /* Gris azulado de la imagen */
        font-size: 1.1rem !important;
        font-weight: 500 !important;
        border-bottom: 1px solid #484848 !important;
    }
    .nav-menu a:hover, .nav-menu a.active {
        color: #ffffff !important;
    }
    
    /* Submenu (Fondo gris solido) */
    .submenu {
        background: #323232 !important; 
        position: relative !important;
    }
    
    /* Triangulito superior del submenu imitando la imagen */
    .has-dropdown.active .submenu::before {
        content: '' !important;
        position: absolute !important;
        top: -8px !important;
        left: 25px !important;
        border-left: 8px solid transparent !important;
        border-right: 8px solid transparent !important;
        border-bottom: 8px solid #323232 !important;
    }
    
    .submenu li {
        border-bottom: 1px solid #484848 !important; /* Linea separadora clara */
    }
    
    .submenu a {
        color: #9fb1bc !important; /* Color de los items */
        padding: 16px 15px 16px 20px !important;
    }
    
    /* Flecha a la derecha en el color adecuado */
    .submenu a::after {
        color: #6a7c87 !important;
    }
    
    .submenu a:hover, .submenu a:active {
        background: #1a1a1a !important; /* Fondo negro al hacer hover */
        color: #ffffff !important;
    }
    .submenu a:hover::after {
        color: #ffffff !important;
    }

    /* Tarjeta de usuario adaptada a estos colores */
    .mobile-user-card {
        background: #323232 !important;
        border: 1px solid #484848 !important;
        color: #9fb1bc !important;
    }
    .mobile-user-card .user-name { color: #ffffff !important; }
    .btn-mobile-link, .btn-mobile-logout { color: #9fb1bc !important; border-top: 1px solid #484848 !important; }
    .btn-mobile-link:hover, .btn-mobile-logout:hover { background: #1a1a1a !important; color: #ffffff !important; }
}

/* Y si el cliente queria esto para ESCRITORIO tambien, lo aplicamos al submenu general */
@media (min-width: 1025px) {
    .submenu {
        background: #323232 !important;
        border: 1px solid #1a1a1a !important;
        box-shadow: 0 5px 15px rgba(0,0,0,0.5) !important;
    }
    .has-dropdown:hover .submenu::before {
        content: '' !important;
        position: absolute !important;
        top: -8px !important;
        left: 30px !important;
        border-left: 8px solid transparent !important;
        border-right: 8px solid transparent !important;
        border-bottom: 8px solid #323232 !important;
    }
    .submenu li { border-bottom: 1px solid #484848 !important; }
    .submenu li:last-child { border-bottom: none !important; }
    .submenu a { color: #9fb1bc !important; font-weight: 500 !important; }
    .submenu a:hover { background: #1a1a1a !important; color: #ffffff !important; }
}


/* --- CORRECCION: FONDO DE CABECERA PRINCIPAL --- */
.navbar {
    background: linear-gradient(to bottom, #4b4b4b, #1a1a1a) !important;
    border-bottom: none !important;
}


/* --- AJUSTE PRECISO DEL DEGRADADO MAIN HEADER --- */
.navbar, .nav-menu-wrapper {
    background: linear-gradient(to top, #111111, #424242) !important;
}


/* --- CORRECCION: FONDO SOLO PARA CABECERA, ENLACES TRANSPARENTES --- */
.navbar {
    background: linear-gradient(to top, #111111, #424242) !important;
}
/* Limpiar cualquier fondo de los contenedores de links y de los links mismos */
.nav-menu-wrapper {
    background: transparent !important;
}
@media (max-width: 1024px) {
    .nav-menu-wrapper {
        background: #0a0a0a !important; /* En movil debe ser solido oscuro */
    }
}


/* --- AJUSTE: BUSCADOR CON FONDO BLANCO --- */
.nav-search input {
    background: #ffffff !important;
    color: #0f172a !important; /* Texto oscuro para que se lea sobre blanco */
    border: 1px solid #cbd5e1 !important;
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.05) !important;
}
.nav-search input::placeholder {
    color: #64748b !important;
}
.nav-search button {
    color: #475569 !important; /* Icono de la lupa gris oscuro */
}

/* En movil, al hacer focus, mantenerlo blanco */
@media (max-width: 1024px) {
    .nav-search:focus-within input,
    .nav-search input:focus {
        background: #ffffff !important;
        border-color: var(--c-orange) !important;
        color: #0f172a !important;
    }
}


/* --- AJUSTE ESTÉTICO: LÍNEAS DOBLES 3D (VERTICALES Y HORIZONTALES) --- */

/* 1. Líneas verticales dobles en el menú principal (Escritorio) */
@media (min-width: 1025px) {
    /* Ocultar el separador ::after antiguo si existe */
    .nav-menu > li:not(:last-child)::after {
        display: none !important;
    }
    
    .nav-menu > li {
        border-right: 1px solid #111111 !important;
        box-shadow: 1px 0 0 #777777 !important;
    }
    
    /* El último elemento no debe tener separador derecho para que no sobre */
    .nav-menu > li:last-child {
        border-right: none !important;
        box-shadow: none !important;
    }
    
    /* Para que la linea ocupe bien la altura del menu, ajustamos el li */
    .nav-menu > li {
        display: flex !important;
        align-items: center !important;
    }
    .nav-menu a {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

/* 2. Líneas horizontales dobles en el submenu (Todos los dispositivos) */
.submenu li {
    /* Eliminamos el borde antiguo */
    border-bottom: 1px solid #111111 !important;
    box-shadow: 0 1px 0 #777777 !important;
}

/* El último elemento del submenu no debe tener la linea que sale por debajo */
.submenu li:last-child {
    border-bottom: none !important;
    box-shadow: none !important;
}


/* --- AJUSTES DE UNA SOLA LÍNEA Y OCULTAMIENTO PROGRESIVO --- */

/* 1. Forzar una sola línea para el menú principal en todo momento (no wrap) */
.nav-menu {
    flex-wrap: nowrap !important;
}
.nav-menu > li {
    white-space: nowrap !important;
}

/* 2. Ocultar enlaces progresivamente en pantallas medianas (tablets/laptops chicas) 
      antes de que cambie a menú hamburguesa (1024px) */
@media (max-width: 1350px) {
    /* Primero desaparece contacto */
    .nav-item-contacto { display: none !important; }
}
@media (max-width: 1250px) {
    /* Luego desaparece faqs */
    .nav-item-faqs { display: none !important; }
}
@media (max-width: 1150px) {
    /* Finalmente desaparece inicio (dejando solo Catálogo y Servicios) */
    .nav-item-inicio { display: none !important; }
}

/* --- QUITAR BORDER RADIUS DEL SUBMENU EN MOVIL --- */
@media (max-width: 1024px) {
    .submenu, .submenu li, .submenu a, .has-dropdown, .has-dropdown > a {
        border-radius: 0 !important;
    }
    
    /* Asegurarnos de que en móvil el texto de los links tampoco baje de linea */
    .nav-menu > li {
        white-space: normal !important; /* En movil (vertical) si pueden envolver si son largos */
    }
    .submenu a {
        white-space: normal !important;
    }
}


/* --- AJUSTE: ALTURA DE LÍNEAS VERTICALES Y ESPACIADO EN MENÚ PRINCIPAL --- */
@media (min-width: 1025px) {
    /* Reducir los espacios a los lados de los enlaces */
    .nav-menu a {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
    
    /* Quitar la linea de borde completo que ocupaba toda la altura */
    .nav-menu > li {
        border-right: none !important;
        box-shadow: none !important;
        position: relative !important; /* Necesario para posicionar la linea corta */
    }
    
    /* Recrear el efecto de doble linea (3D) pero más corta usando ::after */
    .nav-menu > li:not(:last-child)::after {
        content: '' !important;
        display: block !important;
        position: absolute !important;
        right: 0 !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        height: 18px !important; /* Altura de linea reducida */
        width: 1px !important;
        background: #111111 !important;
        box-shadow: 1px 0 0 #777777 !important; /* La linea clara al lado */
    }
}


/* --- CORRECCION: RESTAURAR EL DISPLAY ORIGINAL DEL LI PARA NO ROMPER EL SUBMENU --- */
@media (min-width: 1025px) {
    /* Quitar el flex que rompia la posicion del submenu */
    .nav-menu > li {
        display: block !important; /* Restauramos a block o inline-block */
        height: 100% !important; /* Para mantener la altura si es necesario */
    }
    .nav-menu > li > a {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
    }
}


/* --- RESTAURAR EL DISEÑO DEL SUBMENU (QUITAR LINEAS DOBLES HORIZONTALES Y ALTURAS RARAS) --- */
.submenu li {
    border-bottom: 1px solid #484848 !important; /* Regresamos a la linea simple sutil */
    box-shadow: none !important; /* Quitamos el efecto 3D del submenu */
    display: block !important;
    height: auto !important;
}
.submenu li:last-child {
    border-bottom: none !important;
}
.submenu a {
    height: auto !important; /* El submenu no debe tener alturas forzadas */
    display: flex !important;
    align-items: center !important;
    padding: 16px 15px 16px 20px !important; /* Padding normal */
}

/* Para el menu principal, quitamos el height: 100% que estaba rompiendo las proporciones */
@media (min-width: 1025px) {
    .nav-menu > li {
        height: auto !important;
        padding: 5px 0 !important; /* Margen para centrar la linea vertical */
    }
    .nav-menu > li > a {
        height: auto !important;
    }
}


/* --- CORRECCION: SUBMENU HORIZONTAL EN DESKTOP --- */
@media (min-width: 1025px) {
    /* Forzar que el submenu se muestre de izquierda a derecha (horizontal) */
    .has-dropdown:hover .submenu,
    .has-dropdown.active .submenu {
        display: flex !important;
        flex-direction: row !important;
        width: max-content !important; /* Para que se estire según el contenido */
    }
    
    .submenu li {
        display: block !important;
        border-bottom: none !important; /* Quitamos la linea de abajo porque ahora estan lado a lado */
        border-right: 1px solid #484848 !important; /* Ponemos un separador a la derecha */
    }
    
    .submenu li:last-child {
        border-right: none !important;
    }
    
    .submenu a {
        padding: 16px 25px !important;
        white-space: nowrap !important; /* Evitar que el texto se parta en varias lineas */
    }
}


/* --- MEGA MENU: FULL WIDTH, SIN PARPADEO, DOBLE LINEA HORIZONTAL --- */
@media (min-width: 1025px) {
    /* El nav-menu debe ser static para que el absolute del submenu se base en la cabecera completa, no en el <li> */
    .nav-menu > li.has-dropdown {
        position: static !important;
    }
    
    /* Prevenir parpadeo: el <li> debe tener padding-bottom invisible si es necesario, o el submenu debe nacer sin huecos */
    .has-dropdown:hover .submenu,
    .has-dropdown.active .submenu {
        display: block !important; /* Lo hacemos block para apilar los links full-width, o grid. El cliente pidio lineas horizontales, asi que es apilado vertical. */
    }
    
    .submenu {
        position: absolute !important;
        top: 100% !important; /* Nace justo debajo de la cabecera */
        left: 0 !important;
        width: 100% !important; /* Mismo ancho de todo el menu principal */
        background: #323232 !important;
        border: none !important;
        border-top: 1px solid #111111 !important;
        box-shadow: 0 10px 30px rgba(0,0,0,0.8) !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Quitamos el triangulito porque en un full-width no se usa o queda descentrado */
    .has-dropdown:hover .submenu::before {
        display: none !important;
    }
    
    /* El cliente pidio separacion de doble linea horizontal entre los links */
    .submenu li {
        display: block !important;
        width: 100% !important;
        border-bottom: 1px solid #111111 !important;
        box-shadow: 0 1px 0 #777777 !important;
        border-right: none !important; /* Quitamos la linea vertical que pusimos antes */
    }
    
    .submenu li:last-child {
        border-bottom: none !important;
        box-shadow: none !important;
    }
    
    /* Diseno del texto en cada link (bien alineado y horizontal natural) */
    .submenu a {
        display: block !important;
        padding: 15px 40px !important;
        white-space: normal !important; /* Si es texto largo que baje normal */
        color: #9fb1bc !important;
        text-align: left !important;
    }
    .submenu a:hover {
        background: #1a1a1a !important;
        padding-left: 50px !important; /* Animacion de movimiento */
    }
}


/* --- MEGA MENU: ANCHO TOTAL DEL CONTENEDOR PRINCIPAL (LOGO A ICONOS) --- */
@media (min-width: 1025px) {
    /* 1. El contenedor principal (nav-container) será el ancla de posición */
    .nav-container {
        position: relative !important;
    }
    
    /* 2. Quitamos cualquier 'position: relative' de los elementos intermedios */
    .nav-menu, 
    .nav-menu > li,
    .nav-menu > li.has-dropdown {
        position: static !important;
    }
    
    /* 3. El submenu ahora tomará el 100% del ancho del .nav-container (desde el logo hasta el usuario) */
    .submenu {
        position: absolute !important;
        top: 100% !important; /* Justo debajo de la cabecera */
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
        /* Estilos del submenu */
        background: #323232 !important;
        border: none !important;
        border-top: 1px solid #111111 !important;
        box-shadow: 0 10px 30px rgba(0,0,0,0.8) !important;
        padding: 0 !important;
        margin: 0 !important;
        z-index: 1000 !important;
    }
}


/* --- REPLICA EXACTA DEL MEGA MENU GRID (BASADO EN LA IMAGEN) --- */
@media (min-width: 1025px) {
    /* Contenedor principal relativo para ancho total */
    .nav-container { position: relative !important; }
    .nav-menu, .nav-menu > li, .has-dropdown { position: static !important; }

    /* Ocultar por defecto */
    .submenu { display: none !important; }
    
    /* Mostrar como GRID de 4 columnas al hacer hover */
    .has-dropdown:hover .submenu,
    .has-dropdown.active .submenu {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 15px !important; /* Espacio entre botones */
    }

    /* Caja principal del submenu (Fondo oscuro) */
    .submenu {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        
        background: #12141c !important; /* Color oscuro igual a la imagen */
        border: none !important;
        border-bottom: 2px solid var(--c-orange) !important; /* Detalle de color al fondo opcional, o sin borde */
        box-shadow: 0 20px 40px rgba(0,0,0,0.7) !important;
        
        padding: 30px !important; /* Margen interior generoso */
        margin: 0 !important;
        border-radius: 0 0 8px 8px !important;
    }
    
    .has-dropdown:hover .submenu::before { display: none !important; }

    /* Estilo de los BOTONES individuales en la cuadrícula */
    .submenu li {
        display: block !important;
        width: 100% !important;
        background: #1a1d27 !important; /* Fondo de cada boton */
        border: 1px solid #232838 !important; /* Borde sutil del boton */
        border-radius: 6px !important; /* Bordes redondeados de la imagen */
        box-shadow: none !important; /* Quitamos cualquier efecto 3D viejo */
    }
    
    /* El enlace dentro del boton */
    .submenu a {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 16px 20px !important;
        color: #cbd5e1 !important; /* Texto claro gris/azulado */
        font-weight: 600 !important;
        font-size: 0.95rem !important;
        white-space: nowrap !important;
    }
    
    /* Hover sobre los botones (Se ilumina) */
    .submenu li:hover {
        background: #232735 !important;
        border-color: #31374a !important;
        cursor: pointer !important;
    }
    .submenu li:hover a {
        color: #ffffff !important;
        background: transparent !important;
        padding-left: 20px !important; /* Evitar desplazamientos raros */
    }
    
    /* Flecha (Chevron) a la derecha */
    .submenu a::after {
        content: '\203A' !important; /* Codigo para flecha simple > */
        font-size: 1.4rem !important;
        color: #475569 !important;
        line-height: 0 !important;
        font-family: Arial, sans-serif !important; /* Para asegurar el simbolo */
    }
    .submenu li:hover a::after {
        color: #ffffff !important;
    }
}


/* --- AJUSTE: MEGA MENU FULL WIDTH PERO CON LINKS APILADOS Y PEGADOS --- */
@media (min-width: 1025px) {
    /* El submenu sigue siendo ancho total, pero quitamos el grid de botones */
    .has-dropdown:hover .submenu,
    .has-dropdown.active .submenu {
        display: block !important; /* Apilados verticalmente (como filas) */
    }

    .submenu {
        padding: 0 !important; /* Sin espacio alrededor, pegados al borde */
        background: #323232 !important; /* Fondo gris original */
    }
    
    .submenu li {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        background: transparent !important;
        border: none !important;
        border-radius: 0 !important;
        
        /* La doble linea horizontal separando cada link */
        border-bottom: 1px solid #111111 !important;
        box-shadow: 0 1px 0 #777777 !important;
    }
    
    /* El ultimo sin linea abajo para no sobresalir */
    .submenu li:last-child {
        border-bottom: none !important;
        box-shadow: none !important;
    }
    
    /* Diseno del enlace (A lo largo de toda la pantalla) */
    .submenu a {
        display: block !important;
        width: 100% !important;
        padding: 16px 30px !important; /* Espacio para respirar el texto */
        color: #9fb1bc !important;
    }
    
    .submenu li:hover {
        background: #1a1a1a !important; /* Hover cambia fondo de la fila entera */
    }
    
    .submenu li:hover a {
        padding-left: 30px !important; /* Sin saltos raros */
        color: #ffffff !important;
    }
    
    /* Quitamos la flechita que agregue antes para que quede limpio */
    .submenu a::after {
        display: none !important;
    }
}


/* --- MEGA MENU: 4 COLUMNAS, PEGADOS Y CON LINEA DOBLE HORIZONTAL --- */
@media (min-width: 1025px) {
    /* El submenu sigue anclado al contenedor general para ocupar todo su ancho */
    .has-dropdown:hover .submenu,
    .has-dropdown.active .submenu {
        display: grid !important; 
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 0 !important; /* Totalmente pegados, sin espacios entre columnas ni filas */
    }

    .submenu {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important; /* Todo el ancho del contenido (nav-container) */
        background: #323232 !important; 
        padding: 0 !important; 
        margin: 0 !important;
    }
    
    .submenu li {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        background: transparent !important;
        border: none !important;
        border-radius: 0 !important;
        
        /* La doble linea horizontal. 
           Al estar en grid con gap 0, la linea de cada item se fusiona visualmente 
           formando una linea continua a lo largo de toda la fila. */
        border-bottom: 1px solid #111111 !important;
        box-shadow: 0 1px 0 #777777 !important;
    }
    
    /* Diseno del enlace */
    .submenu a {
        display: block !important;
        width: 100% !important;
        padding: 16px 20px !important; 
        color: #9fb1bc !important;
        text-align: left !important;
    }
    
    .submenu li:hover {
        background: #1a1a1a !important; 
    }
    .submenu li:hover a {
        color: #ffffff !important;
    }
}


/* --- CORRECCION DEL GAP (EVITAR QUE DESAPAREZCA AL BAJAR EL MOUSE) --- */
@media (min-width: 1025px) {
    /* Creamos un 'puente' invisible entre el link del menu y el submenu */
    .submenu::after {
        content: '' !important;
        position: absolute !important;
        top: -40px !important; /* Sube para tocar el boton del menu */
        left: 0 !important;
        width: 100% !important;
        height: 40px !important; /* Cubre el espacio vacio */
        background: transparent !important;
        z-index: -1 !important;
    }
}

/* --- BORDE NARANJA EN LA PARTE INFERIOR DEL MENU PRINCIPAL --- */
.navbar {
    border-bottom: 3px solid var(--c-orange) !important; /* Si la variable no funciona, usamos #ff6b00 */
}
/* Por si acaso la variable no esta definida en la raiz */
:root {
    --c-orange-fallback: #f37021;
}
.navbar {
    border-bottom: 3px solid #f37021 !important;
    border-bottom: 3px solid var(--c-orange, #f37021) !important;
}


/* --- AJUSTE: LINEAS DOBLES VERTICALES EN SUBMENU Y ESTILO EN MOVIL --- */
@media (min-width: 1025px) {
    /* Lineas dobles tanto horizontales como verticales para la cuadricula */
    .submenu li {
        border-bottom: 1px solid #111111 !important;
        border-right: 1px solid #111111 !important;
        box-shadow: 1px 0 0 #777777, 0 1px 0 #777777 !important;
    }
    
    /* A los elementos que estan al extremo derecho de la cuadricula (multiplos de 4) 
       les quitamos la linea vertical derecha para que no choque con el borde */
    .submenu li:nth-child(4n) {
        border-right: none !important;
        box-shadow: 0 1px 0 #777777 !important; /* Solo conserva la sombra horizontal */
    }
    
    /* Si el ultimo elemento es parte de la ultima fila y coincide, le quitamos todo */
    .submenu li:last-child {
        border-bottom: none !important;
        /* Si ademas era el ultimo de la fila 4, no debe tener sombras */
    }
}

/* --- MANTENER ESTE MISMO DISEÑO PREMIUM PARA EL SUBMENU EN MOVIL --- */
@media (max-width: 1024px) {
    /* El submenu en movil usara una cuadricula de 1 o 2 columnas (1 para legibilidad) */
    .submenu {
        display: none !important;
        background: #323232 !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    .has-dropdown.open-sub .submenu,
    .has-dropdown.active .submenu {
        display: grid !important;
        grid-template-columns: 1fr !important; /* En movil 1 columna es mas seguro para textos largos */
        gap: 0 !important;
    }
    
    .submenu li {
        border-bottom: 1px solid #111111 !important;
        box-shadow: 0 1px 0 #777777 !important;
        border-radius: 0 !important;
        width: 100% !important;
    }
    
    .submenu li:last-child {
        border-bottom: none !important;
        box-shadow: none !important;
    }
    
    .submenu a {
        display: block !important;
        padding: 15px 20px !important;
        color: #9fb1bc !important;
    }
    .submenu li:hover {
        background: #1a1a1a !important;
    }
    .submenu li:hover a {
        color: #ffffff !important;
    }
}


/* --- CORRECCION DEFINITIVA: ANCHO UNIFORME Y BORDES INFERIORES --- */
@media (min-width: 1025px) {
    /* Destruir cualquier regla antigua de 'max-content' que estuviera haciendo variar el ancho */
    .nav-menu > li.has-dropdown:hover .submenu,
    .nav-menu > li.has-dropdown.active .submenu,
    .submenu {
        width: 100% !important; /* Estricto: el 100% del nav-container */
        max-width: 100% !important; /* Ni un pixel mas */
        left: 0 !important;
        right: 0 !important;
        box-sizing: border-box !important;
        
        /* Borde redondeado inferior exacto e igual para ambos cantos */
        border-radius: 0 0 12px 12px !important;
        overflow: hidden !important; /* Vital: asegura que los links de adentro no sobresalgan y respeten la curva */
    }
}


/* --- AJUSTES FINALES: ANCHO EXTREMO, ICONOS Y SUBMENU GAP --- */

/* 1. Logo y usuario pegados a los bordes de la pantalla */
@media (min-width: 1025px) {
    .navbar .nav-container {
        max-width: 100% !important; /* Quita el limite de ancho central */
        padding-left: 30px !important;
        padding-right: 30px !important;
    }
}

/* 2. Quitar linea vertical derecha del icono del usuario y mejorar su diseño */
.user-profile-btn, .btn-login-nav {
    border-right: none !important;
    box-shadow: none !important;
}
.btn-user-profile, .btn-login-nav {
    background: #1e2433 !important;
    border: 1px solid #334155 !important;
    border-radius: 30px !important;
    padding: 8px 16px !important;
    transition: all 0.3s ease !important;
}
.btn-user-profile:hover, .btn-login-nav:hover {
    background: #273045 !important;
    border-color: var(--c-orange, #f37021) !important;
}

/* 3. Solucion definitiva al parpadeo del submenu (Gap) */
@media (min-width: 1025px) {
    /* El area de hover del boton principal (Catálogo/Servicios) baja hasta tocar el submenu */
    .nav-menu > li {
        padding-bottom: 25px !important;
        margin-bottom: -25px !important; /* Compensa visualmente pero mantiene la caja conectada al submenu */
    }
    
    /* Por si acaso, un puente invisible desde el submenu hacia arriba */
    .has-dropdown .submenu::before {
        content: '' !important;
        position: absolute !important;
        top: -30px !important; 
        left: 0 !important;
        width: 100% !important;
        height: 30px !important;
        background: transparent !important;
        z-index: 9999 !important; /* Nada podra bloquear el hover en esa area */
    }
}

/* 4. Submenu: Textos en una linea, icono general y flecha */
.submenu a {
    white-space: nowrap !important; /* El texto JAMAS baja de linea */
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    
    /* Flex para mantener alineados icono izquierdo, texto y flecha derecha */
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

/* Ocultar iconos originales (si existen) */
.submenu a svg {
    display: none !important;
}

/* Icono generico a la izquierda del texto */
.submenu a span::before {
    content: '¦' !important; /* Un cuadrito moderno generico */
    color: var(--c-orange, #f37021) !important;
    font-size: 0.6rem !important;
    margin-right: 12px !important;
    display: inline-block !important;
    vertical-align: middle !important;
}

/* Flechita a la derecha del texto */
.submenu a::after {
    content: '\203A' !important; /* Chevron simple > */
    font-size: 1.4rem !important;
    color: #475569 !important;
    margin-left: 10px !important;
    font-family: Arial, sans-serif !important;
}
.submenu li:hover a::after {
    color: #ffffff !important;
}


/* --- CORRECCION: RESTAURAR EL ANCHO GENERAL DEL CONTENEDOR (ALINEADO AL CONTENIDO) --- */
@media (min-width: 1025px) {
    /* Quitamos el ancho infinito para que respete el max-width (ej. 1200px) del resto de la pagina */
    .navbar .nav-container {
        max-width: 1200px !important; /* Ancho estandar del contenido, se ajusta al contenedor original */
        width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
        justify-content: space-between !important; /* Separa los elementos a izquierda y derecha dentro del limite */
    }
}


/* --- ALINEACION PERFECTA CON EL CONTENIDO (VERTICAL RECTA) --- */
@media (min-width: 1025px) {
    /* Devolver el padding estandar para que se alinee con los productos de abajo */
    .navbar .nav-container {
        padding-left: 15px !important; 
        padding-right: 15px !important;
    }
    
    /* El submenu debe alinearse con el logo (ignorando el padding) */
    .submenu {
        left: 15px !important; /* Empieza exactamente donde empieza el logo */
        width: calc(100% - 30px) !important; /* Termina exactamente donde termina el icono del usuario */
        max-width: calc(100% - 30px) !important;
    }
}


/* --- AJUSTE ESTRICTO: LOGO E ICONO PEGADOS A LOS BORDES DEL CONTENIDO --- */
@media (min-width: 1025px) {
    /* Quitamos el padding del contenedor para que el logo y el icono toquen el limite exacto del max-width */
    .navbar .nav-container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    
    /* Como ya no hay padding, el submenu vuelve a ser 100% simple desde left 0 */
    .submenu {
        left: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* --- DESTRUIR CUALQUIER LINEA VERTICAL A LA DERECHA DEL USUARIO --- */
.user-profile-btn, 
.btn-login-nav,
.user-profile-btn::after,
.btn-login-nav::after,
.nav-container::after {
    border-right: none !important;
    box-shadow: none !important;
    background-image: none !important; /* A veces usan gradientes para simular lineas */
}

/* Y si el contenedor padre tenia una linea */
.nav-container {
    border-right: none !important;
}


/* --- AJUSTE: ELIMINAR CUALQUIER LINEA DOBLE CERCA DEL USUARIO Y ESPACIOS --- */
@media (min-width: 1025px) {
    /* Quitar margenes a la derecha del usuario para que se pegue totalmente */
    .user-profile-btn, 
    .btn-login-nav, 
    .btn-user-profile {
        margin-right: 0 !important;
        margin-left: 0 !important;
        border: none !important; /* Si el pildora tenia borde feo, lo quitamos */
    }
    
    /* El pildora del usuario rediseñado mas limpio (Sin linea doble ni nada) */
    .btn-user-profile, .btn-login-nav {
        background: #1a1d27 !important; /* Fondo moderno limpio */
        border: 1px solid #334155 !important;
        box-shadow: none !important;
    }
    
    /* Destruccion masiva de lineas dobles perdidas en elementos de la derecha */
    .nav-search::after, .nav-search::before,
    .user-profile-btn::after, .user-profile-btn::before,
    .btn-user-profile::after, .btn-user-profile::before,
    .nav-container::after, .nav-container::before,
    .navbar::after, .navbar::before {
        display: none !important;
        box-shadow: none !important;
        border: none !important;
        background: transparent !important;
    }
    
    /* Por si la linea esta en el contenedor de busqueda */
    .nav-search {
        border-right: none !important;
        box-shadow: none !important;
    }
}


/* --- AJUSTE EXTREMO: QUITAR ESPACIOS INTERNOS Y LINEAS FANTASMAS --- */
@media (min-width: 1025px) {
    /* El contenedor debe tener EXACTAMENTE el mismo limite original de los productos (1280px) pero SIN padding interior */
    .navbar .nav-container {
        max-width: 1280px !important; 
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    
    /* Aseguramos que el logo (Sissa) no tenga margen a la izquierda */
    .brand {
        margin-left: 0 !important;
        padding-left: 0 !important;
    }
    
    /* Aseguramos que el usuario no tenga margen a la derecha */
    .user-profile-btn, 
    .btn-login-nav {
        margin-right: 0 !important;
        padding-right: 0 !important;
        border-right: none !important;
        box-shadow: none !important;
    }
    
    .btn-user-profile {
        margin-right: 0 !important;
        border-right: none !important;
    }
    
    /* Destruir DEFINITIVAMENTE cualquier ::after o ::before a la derecha del menu que genere una doble linea */
    .nav-search::after, .nav-search::before,
    .nav-menu::after, .nav-menu::before,
    .user-profile-btn::after, .user-profile-btn::before,
    .btn-user-profile::after, .btn-user-profile::before,
    .btn-login-nav::after, .btn-login-nav::before,
    .nav-container::after, .nav-container::before {
        display: none !important;
        content: none !important;
        width: 0 !important;
        height: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        border: none !important;
    }
    
    /* Por si aca, a la caja del login tampoco se le pone linea */
    .btn-login-nav {
        border: none !important;
    }
}


/* --- ELIMINACIÓN TOTAL DE TODAS LAS LÍNEAS VERTICALES --- */
@media (min-width: 1025px) {
    /* 1. Menú Principal (Barra superior) */
    .nav-menu > li {
        border-right: none !important;
        border-left: none !important;
        box-shadow: none !important;
    }
    
    /* Destruir el pseudo-elemento que creaba las líneas verticales cortas de 18px */
    .nav-menu > li::after,
    .nav-menu > li::before {
        display: none !important;
        content: none !important;
        width: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        border: none !important;
    }

    /* 2. Submenú (Mega menú desplegable) */
    .submenu li {
        border-right: none !important;
        border-left: none !important;
        /* IMPORTANTE: Le quitamos la sombra lateral (1px 0 0), y solo le dejamos la horizontal (0 1px 0) para que siga teniendo su doble línea abajo */
        box-shadow: 0 1px 0 #777777 !important; 
    }
}

/* Aplicar limpieza profunda por si alguna otra clase las tenía */
.navbar *, .nav-container * {
    border-right-color: transparent !important; /* Si hay algun borde derecho escondido, que sea transparente */
}
/* Excepciones donde SI queremos bordes */
.nav-search input {
    border: 1px solid #cbd5e1 !important;
}
.btn-user-profile, .btn-login-nav {
    border: 1px solid #334155 !important;
}


/* --- ANIQUILACION DE LINEA VERTICAL CON MAXIMA ESPECIFICIDAD --- */
@media (min-width: 1025px) {
    /* Al usar :not(:last-child) igualamos la especificidad de las reglas anteriores que tenian !important */
    .nav-menu > li:not(:last-child)::after,
    .nav-menu > li:not(:last-child)::before,
    .nav-menu > li::after,
    .nav-menu > li::before {
        display: none !important;
        content: none !important;
        background: transparent !important;
        width: 0 !important;
        height: 0 !important;
        border: none !important;
        box-shadow: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}


/* --- AJUSTE MAESTRO: MENU 'BOXED' (SOLO DEL ANCHO DEL CONTENIDO) --- */
@media (min-width: 1025px) {
    /* Hacemos que la franja gigante de fondo desaparezca a los lados de la pantalla */
    .navbar {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
    }
    
    /* Le pasamos el color oscuro y la linea naranja SOLO a la caja central (nav-container) */
    /* Así, el fondo oscuro medirá exactamente 1280px, igual que los productos */
    .navbar .nav-container {
        background: linear-gradient(to top, #111111, #424242) !important;
        border-bottom: 3px solid var(--c-orange, #f37021) !important;
        box-shadow: 0 10px 30px rgba(0,0,0,0.5) !important;
    }
    
    /* Como el nav-container ahora es la caja oscura, el submenu se ancla a el perfectamente */
    .submenu {
        width: 100% !important; /* Toma el 100% de los 1280px */
        left: 0 !important;
        max-width: 100% !important;
    }
}


/* --- DESHACER EL FORMATO 'CAJA' Y RECUPERAR EL DISEÑO FULL-WIDTH DE LA CABECERA --- */
@media (min-width: 1025px) {
    /* La barra principal vuelve a tener el fondo de lado a lado */
    .navbar {
        background: linear-gradient(to top, #111111, #424242) !important;
        border-bottom: 3px solid var(--c-orange, #f37021) !important;
        box-shadow: 0 10px 30px rgba(0,0,0,0.5) !important;
    }
    
    /* El nav-container vuelve a ser transparente */
    .navbar .nav-container {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        
        /* RESTAURAR NATURALIDAD DEL CONTENEDOR */
        /* Dejamos que el nav-container herede los paddings y margenes naturales del sitio 
           para que se alinee perfectamente con la cuadricula de productos por defecto */
        padding-left: 15px !important; /* Padding estandar de Bootstrap */
        padding-right: 15px !important;
        max-width: 1280px !important;
    }
    
    /* ALINEACION MILIMETRICA DEL CONTENIDO DEL SUBMENU CON EL CONTENIDO GENERAL */
    .submenu {
        position: absolute !important;
        /* El submenu empieza despues del padding (para alinear con el logo y las fotos) */
        left: 15px !important; 
        /* El submenu mide el contenedor MENOS los 30px de padding (15 izq, 15 der) */
        width: calc(100% - 30px) !important; 
        max-width: calc(100% - 30px) !important;
    }
}


/* --- RESTAURAR EL DISEÑO ORIGINAL DEL SUBMENU EXCLUSIVAMENTE EN MOVIL --- */
@media (max-width: 1024px) {
    /* Devolvemos el fondo transparente y la linea naranja a la izquierda (diseno original) */
    .submenu {
        background: transparent !important;
        border-left: 2px solid var(--c-orange, #f37021) !important;
        margin-left: 15px !important;
        margin-top: 10px !important;
        padding: 0 !important;
        box-shadow: none !important;
        display: none !important;
    }
    
    .has-dropdown.active .submenu, 
    .has-dropdown.open-sub .submenu {
        display: block !important;
    }
    
    .submenu li {
        border-bottom: 1px solid rgba(255,255,255,0.05) !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        border-right: none !important;
    }
    
    .submenu a {
        white-space: normal !important; /* Permitir que el texto baje si es muy largo en celular */
        font-size: 1rem !important;
        padding: 12px 20px !important;
        background: transparent !important;
        color: #cbd5e1 !important;
    }
    
    .submenu li:hover {
        background: transparent !important;
    }
    
    .submenu li:hover a {
        color: var(--c-orange, #f37021) !important;
        padding-left: 25px !important; /* Desplazamiento original al hacer tap */
    }
    
    /* Mostrar de nuevo los iconos SVG originales en movil */
    .submenu a svg {
        display: inline-block !important;
    }
    
    /* Apagar los cuadros y flechas que habia agregado para la version de computadora */
    .submenu a span::before,
    .submenu a::after {
        display: none !important;
    }
}


/* --- HOMOLOGAR EL MENU PRINCIPAL CON EL SUBMENU EN MOVIL --- */
@media (max-width: 1024px) {
    /* Los elementos de la lista principal tendran la linea separadora sutil, igual que el submenu */
    .nav-menu > li {
        width: 100% !important;
        border-bottom: 1px solid rgba(255,255,255,0.05) !important;
        display: block !important;
    }
    
    .nav-menu > li:last-child {
        border-bottom: none !important;
    }
    
    /* Los enlaces principales (Inicio, Servicios...) tendran la misma letra, color y margen que los enlaces del submenu */
    .nav-menu a {
        font-size: 1rem !important;
        padding: 12px 20px !important;
        background: transparent !important;
        color: #cbd5e1 !important; /* Gris claro original */
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        border-radius: 0 !important; /* Quitamos bordes curvos para que se vea igual de plano */
        transition: all 0.3s ease !important;
        justify-content: space-between !important;
    }
    
    /* El mismo efecto de 'hover' y 'activo' donde el texto se desplaza a la derecha y se pone naranja */
    .nav-menu a:hover, 
    .nav-menu > li.active > a,
    .nav-menu a.active {
        background: transparent !important;
        color: var(--c-orange, #f37021) !important;
        padding-left: 25px !important; /* Desplazamiento animado */
    }
}


/* --- APLICACION TOTAL DEL DISEÑO PREMIUM A TODO EL MENU MOVIL --- */
@media (max-width: 1024px) {
    /* 1. Fondo Oscuro General para el Menu */
    .nav-menu-wrapper {
        background: #252525 !important;
    }

    /* 2. Todos los bloques de la lista (Principales y Submenu) */
    .nav-menu > li,
    .submenu li {
        width: 100% !important;
        margin: 0 !important;
        border-radius: 0 !important;
        border-left: none !important;
        border-right: none !important;
        
        /* LA FAMOSA DOBLE LÍNEA HORIZONTAL 3D */
        border-bottom: 1px solid #111111 !important;
        box-shadow: 0 1px 0 #777777 !important;
        
        display: block !important;
    }
    
    /* Quitar línea al último elemento de cualquier lista */
    .nav-menu > li:last-child,
    .submenu li:last-child {
        border-bottom: none !important;
        box-shadow: none !important;
    }
    
    /* 3. Textos y Enlaces de TODOS (Principales y Submenu) */
    .nav-menu a,
    .submenu a {
        font-size: 1.05rem !important;
        padding: 16px 22px !important;
        background: transparent !important;
        color: #9fb1bc !important; /* El color profesional que definimos */
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        border-radius: 0 !important;
        white-space: normal !important; /* En celular es mejor que el texto fluya hacia abajo si no entra */
    }
    
    /* 4. Efecto de Toque (Hover) */
    .nav-menu > li:hover,
    .submenu li:hover {
        background: #1a1a1a !important; /* Fondo negro elegante al presionar */
    }
    
    .nav-menu a:hover,
    .nav-menu > li.active > a,
    .nav-menu a.active,
    .submenu a:hover {
        color: #ffffff !important;
        background: transparent !important;
        padding-left: 22px !important; /* Le quitamos el deslizamiento a la derecha para que se sienta solido */
    }
    
    /* 5. Submenu (Fondo un poco mas claro para distinguir que esta abierto) */
    .submenu {
        background: #323232 !important; 
        border: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}


/* --- AJUSTE MAESTRO: ICONOS, FLECHAS Y PUNTOS SUSPENSIVOS EN SUBMENU (TODAS LAS PANTALLAS) --- */

/* 1. Ocultar los SVGs viejos para siempre */
.submenu a svg {
    display: none !important;
}

/* 2. Estructura Flex para alinear Icono + Texto + Flecha */
.submenu a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    overflow: hidden !important; /* Previene desbordes en el contenedor flex */
    white-space: nowrap !important; /* Garantia de que no bajara de linea */
}

/* 3. El texto (dentro de <span>) con puntos suspensivos si no cabe */
.submenu a span {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    flex-grow: 1 !important;
    display: flex !important;
    align-items: center !important;
}

/* 4. Icono genérico (¦) a la izquierda del texto, resucitado para todas las vistas */
.submenu a span::before {
    content: '¦' !important;
    color: var(--c-orange, #f37021) !important;
    font-size: 0.6rem !important;
    margin-right: 12px !important;
    display: inline-block !important;
    flex-shrink: 0 !important;
}

/* 5. Flechita (Chevron >) a la derecha, resucitada para todas las vistas */
.submenu a::after {
    content: '\203A' !important;
    font-size: 1.4rem !important;
    color: #475569 !important;
    margin-left: 10px !important;
    font-family: Arial, sans-serif !important;
    display: inline-block !important;
    flex-shrink: 0 !important;
}

/* Hover de la flecha */
.submenu li:hover a::after {
    color: #ffffff !important;
}


/* --- SISTEMA GRID INTELIGENTE PARA LOS ENLACES (ICONO + TEXTO + FLECHA) --- */

/* 1. Ocultar SVGs viejos en todos los menús para evitar que rompan el Grid */
.submenu a svg, 
.nav-menu a svg {
    display: none !important;
}

/* 2. Regla Grid Universal para Submenu (y Menu Principal en Movil) */
/* El texto anonimo o el <span> se convertira magicamente en la columna central (1fr) */
.submenu a {
    display: grid !important;
    grid-template-columns: 20px 1fr 20px !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 15px 20px !important;
    white-space: nowrap !important;
}

@media (max-width: 1024px) {
    /* En movil, el menu principal tambien adopta esta inteligencia */
    .nav-menu a {
        display: grid !important;
        grid-template-columns: 20px 1fr 20px !important;
        align-items: center !important;
        gap: 12px !important;
        width: 100% !important;
        box-sizing: border-box !important;
        padding: 15px 20px !important;
        white-space: nowrap !important;
    }
}

/* 3. Comportamiento Inteligente del Texto Central (Columna 2) */
.submenu a span, 
.nav-menu a span {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: block !important;
}
/* Si el texto no tiene span (texto suelto), el grid lo recorta en el <a> directamente */
.submenu a, .nav-menu a {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* 4. Columna 1: Icono General (Circulo/Bullet) */
.submenu a::before,
.nav-menu a::before {
    content: '\25CF' !important; /* Círculo sólido ? */
    color: var(--c-orange, #f37021) !important;
    font-size: 0.55rem !important;
    justify-self: center !important;
    display: block !important;
}

/* 5. Columna 3: Flecha a la Derecha */
.submenu a::after,
.nav-menu a::after {
    content: '\203A' !important; /* Chevron > */
    font-size: 1.5rem !important;
    color: #475569 !important;
    justify-self: center !important;
    display: block !important;
    line-height: 1 !important;
}

.submenu li:hover a::after,
.nav-menu > li:hover > a::after {
    color: #ffffff !important;
}

/* EXCEPCION: El Menu Principal de Computadora NO debe tener iconos ni flechas ni grid */
@media (min-width: 1025px) {
    .nav-menu > li > a {
        display: flex !important; /* Regresa a su comportamiento normal horizontal */
        padding: 10px 0 !important;
    }
    .nav-menu > li > a::before,
    .nav-menu > li > a::after {
        display: none !important;
        content: none !important;
    }
}


/* --- CORRECCION DE ENCODING PARA LOS ICONOS (ELIMINAR EL SIGNO DE INTERROGACION) --- */
.submenu a::before,
.nav-menu a::before {
    content: "\2022" !important; /* Codigo CSS puro para un punto/bullet sin caracteres especiales */
    color: #f37021 !important;
    font-size: 1.2rem !important;
}

.submenu a::after,
.nav-menu a::after {
    content: "\203A" !important; /* Codigo CSS puro para un chevron/flecha */
    color: #475569 !important;
}


/* --- ICONOS A PRUEBA DE FALLOS (GEOMETRIA CSS PURA) --- */
/* Reemplazamos los caracteres de texto por formas dibujadas con CSS para evitar cualquier error de lectura */

/* El Circulo (Izquierda) */
.submenu a::before,
.nav-menu a::before {
    content: '' !important; 
    width: 6px !important;
    height: 6px !important;
    background-color: var(--c-orange, #f37021) !important;
    display: block !important;
    border-radius: 50% !important; /* Lo hace un circulo perfecto */
    justify-self: center !important;
}

/* El Chevron/Flecha (Derecha) */
.submenu a::after,
.nav-menu a::after {
    content: '' !important; 
    width: 8px !important;
    height: 8px !important;
    background: transparent !important;
    border-top: 2px solid #475569 !important;
    border-right: 2px solid #475569 !important;
    transform: rotate(45deg) !important; /* Rota el cuadrado para que parezca un > */
    display: block !important;
    justify-self: center !important;
    margin-right: 5px !important; /* Ajuste visual */
}

/* Hover de la flecha */
.submenu li:hover a::after,
.nav-menu > li:hover > a::after {
    border-color: #ffffff !important;
}

/* Destruir cualquier rastro de texto en los pseudo-elementos (adiós al ':') */
.submenu a::before, .nav-menu a::before,
.submenu a::after, .nav-menu a::after {
    font-size: 0 !important;
    line-height: 0 !important;
    color: transparent !important;
}


/* --- ANIQUILACION DEL SIGNO DE INTERROGACION RESTANTE --- */
/* El signo de interrogacion venia del 'span::before' antiguo que habia quedado huerfano */
.submenu a span::before,
.nav-menu a span::before,
.submenu a span::after,
.nav-menu a span::after {
    display: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    font-size: 0 !important;
}


/* --- MEGA ACTUALIZACION PREMIUM DEL CARRITO DE COMPRAS --- */

/* 1. Contenedor Principal (Panel Lateral) */
.cart-sidebar {
    background: rgba(15, 15, 18, 0.95) !important;
    backdrop-filter: blur(25px) !important;
    -webkit-backdrop-filter: blur(25px) !important;
    border-left: 1px solid rgba(255,255,255,0.05) !important;
    box-shadow: -20px 0 50px rgba(0,0,0,0.8) !important;
    color: #e2e8f0 !important;
    font-family: 'Inter', sans-serif !important;
}

/* 2. Cabecera del Carrito */
.cart-header {
    background: linear-gradient(to right, #111111, #1a1a1a) !important;
    border-bottom: 2px solid var(--c-orange, #f37021) !important;
    padding: 25px 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    box-shadow: 0 10px 20px rgba(0,0,0,0.3) !important;
    z-index: 10 !important;
}

.cart-title {
    color: #ffffff !important;
    font-size: 1.25rem !important;
    font-weight: 800 !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    margin: 0 !important;
}

.cart-title svg {
    color: var(--c-orange, #f37021) !important;
    filter: drop-shadow(0 0 5px rgba(243, 112, 33, 0.5)) !important;
}

/* Botones Cabecera */
.btn-empty-cart {
    background: rgba(239, 68, 68, 0.1) !important;
    color: #ef4444 !important;
    border: 1px solid rgba(239, 68, 68, 0.3) !important;
    padding: 6px 12px !important;
    border-radius: 6px !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    transition: all 0.3s ease !important;
}
.btn-empty-cart:hover {
    background: #ef4444 !important;
    color: #ffffff !important;
    box-shadow: 0 5px 15px rgba(239, 68, 68, 0.4) !important;
}

.btn-close-cart-ui {
    color: #94a3b8 !important;
    background: rgba(255,255,255,0.05) !important;
    border-radius: 50% !important;
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s ease !important;
}
.btn-close-cart-ui:hover {
    background: var(--c-orange, #f37021) !important;
    color: #ffffff !important;
    transform: rotate(90deg) !important;
}

/* 3. Cuerpo del Carrito y Tarjetas de Producto */
.cart-body {
    padding: 20px !important;
}

.cart-item {
    background: rgba(255, 255, 255, 0.02) !important;
    border: 1px solid rgba(255,255,255,0.05) !important;
    border-radius: 12px !important;
    padding: 15px !important;
    margin-bottom: 15px !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    gap: 15px !important;
    position: relative !important;
}
.cart-item:hover {
    background: rgba(255, 255, 255, 0.05) !important;
    border-color: rgba(243, 112, 33, 0.3) !important;
    box-shadow: 0 10px 20px rgba(0,0,0,0.2) !important;
    transform: translateY(-2px) !important;
}

.cart-item-img {
    width: 70px !important;
    height: 70px !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    padding: 5px !important;
    box-shadow: 0 5px 15px rgba(0,0,0,0.5) !important;
}

.cart-item-info {
    flex-grow: 1 !important;
}

.cart-item-brand {
    font-size: 0.65rem !important;
    color: var(--c-orange, #f37021) !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    font-weight: 800 !important;
    margin-bottom: 4px !important;
}

.cart-item-title {
    color: #f8fafc !important;
    font-size: 0.85rem !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    margin-bottom: 8px !important;
}

/* Botones Cantidad */
.qty-controls {
    background: rgba(0,0,0,0.3) !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    border-radius: 6px !important;
    overflow: hidden !important;
}
.qty-btn {
    background: rgba(255,255,255,0.05) !important;
    color: #ffffff !important;
    border: none !important;
    transition: background 0.3s !important;
}
.qty-btn:hover {
    background: var(--c-orange, #f37021) !important;
}
.qty-input {
    background: transparent !important;
    color: #ffffff !important;
    border: none !important;
    border-left: 1px solid rgba(255,255,255,0.1) !important;
    border-right: 1px solid rgba(255,255,255,0.1) !important;
}

.btn-remove-item {
    background: rgba(239, 68, 68, 0.1) !important;
    color: #ef4444 !important;
    border-radius: 50% !important;
    width: 25px !important;
    height: 25px !important;
    border: 1px solid rgba(239, 68, 68, 0.2) !important;
    transition: all 0.3s ease !important;
}
.btn-remove-item:hover {
    background: #ef4444 !important;
    color: #fff !important;
    box-shadow: 0 0 10px rgba(239, 68, 68, 0.5) !important;
}

/* 4. Footer del Carrito (Totales y Checkout) */
.cart-footer {
    background: rgba(10, 10, 12, 0.95) !important;
    border-top: 1px solid rgba(255,255,255,0.05) !important;
    padding: 25px 20px !important;
    box-shadow: 0 -10px 30px rgba(0,0,0,0.5) !important;
}

.cart-totals-box {
    background: rgba(255,255,255,0.02) !important;
    border: 1px solid rgba(255,255,255,0.05) !important;
    border-radius: 12px !important;
    padding: 20px !important;
    margin-bottom: 20px !important;
}

.cart-flex-row {
    color: #94a3b8 !important;
    font-size: 0.85rem !important;
    margin-bottom: 10px !important;
}

.cart-total-row {
    border-top: 1px dashed rgba(255,255,255,0.1) !important;
    padding-top: 15px !important;
    margin-top: 15px !important;
    color: #ffffff !important;
    font-size: 1.1rem !important;
    font-weight: 800 !important;
}

.cart-price-bold {
    color: #ffffff !important;
}

.cart-total-row .cart-price-bold {
    color: var(--c-orange, #f37021) !important;
    font-size: 1.3rem !important;
    text-shadow: 0 0 10px rgba(243, 112, 33, 0.4) !important;
}

.btn-checkout {
    background: linear-gradient(135deg, #f37021 0%, #ff9800 100%) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 16px !important;
    font-size: 1.1rem !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    box-shadow: 0 10px 25px rgba(243, 112, 33, 0.4) !important;
    transition: all 0.3s ease !important;
}
.btn-checkout:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 15px 35px rgba(243, 112, 33, 0.6) !important;
    background: linear-gradient(135deg, #ff9800 0%, #f37021 100%) !important;
}


/* --- COLOR DE FONDO ESPECIFICO (#121212) PARA SUBMENU Y MENU DE USUARIO --- */
.submenu,
.user-dropdown-menu {
    background: #121212 !important;
}

/* Solo para movil: Asegurarnos de que el fondo #121212 se aplique al contenedor oscuro */
@media (max-width: 1024px) {
    .nav-menu-wrapper {
        background: #121212 !important;
    }
    .submenu {
        background: #121212 !important;
    }
}


/* --- CAMBIO DE TONO DE FONDO (#2e2e2e) PARA SUBMENU Y MENU DE USUARIO --- */
.submenu,
.user-dropdown-menu {
    background: #2e2e2e !important;
}

/* Aplicar tambien al contenedor principal en movil para uniformidad */
@media (max-width: 1024px) {
    .nav-menu-wrapper {
        background: #2e2e2e !important;
    }
    .submenu {
        background: #2e2e2e !important;
    }
}


/* --- AJUSTE FINO DE COLOR DE FONDO (#292929) PARA SUBMENU Y MENU DE USUARIO --- */
.submenu,
.user-dropdown-menu {
    background: #292929 !important;
}

@media (max-width: 1024px) {
    .nav-menu-wrapper {
        background: #292929 !important;
    }
    .submenu {
        background: #292929 !important;
    }
}


/* --- ACTUALIZACION VISUAL: FLECHAS NARANJAS E ICONOS DE HEADER PREMIUM --- */

/* 1. Flechas del Submenu en Naranja */
.submenu a::after,
.nav-menu a::after {
    border-top: 2px solid var(--c-orange, #f37021) !important;
    border-right: 2px solid var(--c-orange, #f37021) !important;
}

/* 2. Diseno Uniforme y Premium para los Botones (Carrito y Usuario) */
.nav-actions-right {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important; /* Espacio elegante entre carrito y usuario */
}

.cart-btn,
.btn-user-profile,
.btn-login-header {
    background: #1e1e1e !important; /* Fondo gris oscuro */
    border: 2px solid #000000 !important; /* Borde negro grueso solicitado */
    border-radius: 30px !important; /* Forma de pildora redondeada */
    padding: 6px 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.5), inset 0 1px 1px rgba(255, 255, 255, 0.05) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    height: 42px !important;
    cursor: pointer !important;
}

/* Hover: Se encienden en Naranja */
.cart-btn:hover,
.btn-user-profile:hover,
.btn-login-header:hover {
    background: #000000 !important;
    border-color: var(--c-orange, #f37021) !important;
    box-shadow: 0 8px 25px rgba(243, 112, 33, 0.3) !important;
    transform: translateY(-2px) !important;
}

/* 3. Ajustes especificos: Carrito */
.cart-btn svg {
    width: 20px !important;
    height: 20px !important;
    stroke: var(--c-orange, #f37021) !important; /* El carrito es naranja */
}
.cart-badge {
    background: var(--c-orange, #f37021) !important;
    color: #ffffff !important;
    font-size: 0.75rem !important;
    font-weight: 800 !important;
    padding: 2px 8px !important;
    border-radius: 20px !important;
    border: 1px solid #000000 !important;
}

/* 4. Ajustes especificos: Usuario */
.avatar-circle {
    width: 28px !important;
    height: 28px !important;
    background: var(--c-orange, #f37021) !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 800 !important;
    font-size: 0.9rem !important;
    border: 1px solid #000000 !important; /* Borde interno negro para destacar */
}
.desktop-user-name {
    font-weight: 700 !important;
    font-size: 0.9rem !important;
    color: #cbd5e1 !important;
}
.btn-user-profile:hover .desktop-user-name {
    color: #ffffff !important;
}


/* --- DISEÑO DE 'BURBUJA DE COMENTARIO' PARA LOS MENUS Y REDISEÑO DEL USUARIO --- */

/* 1. Borde Naranja en la parte superior del Submenu y Menu de Usuario */
.submenu {
    border-top: 3px solid var(--c-orange, #f37021) !important;
}
.user-dropdown-menu {
    border-top: 3px solid var(--c-orange, #f37021) !important;
}

/* 2. Triangulo apuntador (Burbuja de comentario) para el Menu Principal (Escritorio) */
@media (min-width: 1025px) {
    /* Hacemos que el enlace sea el punto de referencia */
    .nav-menu > li.has-dropdown > a {
        position: relative !important;
    }
    
    /* Dibujamos el triangulo naranja apuntando hacia arriba */
    .nav-menu > li.has-dropdown:hover > a::before,
    .nav-menu > li.has-dropdown.active > a::before {
        content: '' !important;
        display: block !important;
        position: absolute !important;
        /* Lo empujamos hacia abajo para que toque el borde naranja del submenu */
        bottom: -22px !important; 
        left: 50% !important;
        transform: translateX(-50%) !important;
        border-left: 12px solid transparent !important;
        border-right: 12px solid transparent !important;
        border-bottom: 12px solid var(--c-orange, #f37021) !important;
        width: 0 !important;
        height: 0 !important;
        background: transparent !important;
        z-index: 9999 !important;
        pointer-events: none !important;
    }
}

/* 3. Triangulo apuntador para el Menu de Usuario */
.user-profile-btn {
    position: relative !important;
}
.user-profile-btn:hover::before {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    bottom: -15px !important; /* Toca la cajita desplegable del usuario */
    left: 50% !important;
    transform: translateX(-50%) !important;
    border-left: 10px solid transparent !important;
    border-right: 10px solid transparent !important;
    border-bottom: 10px solid var(--c-orange, #f37021) !important;
    width: 0 !important;
    height: 0 !important;
    background: transparent !important;
    z-index: 9999 !important;
    pointer-events: none !important;
}

/* 4. Rediseño agresivo del boton de Usuario (Borde Naranja y Fondo Negro Puro) */
.btn-user-profile {
    background: #000000 !important; /* Fondo negro */
    border: 2px solid var(--c-orange, #f37021) !important; /* Borde Naranja */
}

/* Hover de Usuario: Invertimos los colores o aumentamos brillo */
.btn-user-profile:hover {
    background: #111111 !important;
    box-shadow: 0 0 20px rgba(243, 112, 33, 0.4) !important;
}


/* --- CORRECCION DE TRIANGULOS APUNTADORES Y FLICKERING --- */

/* 1. Evitar que el menu de usuario 'juegue' o parpadee */
/* Quitamos la animacion de salto que alejaba el boton del menu desplegable */
.btn-user-profile:hover {
    transform: none !important; 
}

/* 2. Puente invisible para el usuario (Garantiza que el mouse no caiga al vacio) */
.user-profile-btn::after {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    width: 100% !important;
    height: 25px !important; /* Puente de 25px hacia abajo */
    background: transparent !important;
}

/* Triangulo apuntador del Usuario (ahora es muy estable) */
.user-profile-btn {
    position: relative !important;
}
.user-profile-btn:hover::before {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    bottom: -15px !important; /* Toca milimetricamente el borde del menu desplegable */
    left: 50% !important;
    transform: translateX(-50%) !important;
    border-left: 12px solid transparent !important;
    border-right: 12px solid transparent !important;
    border-bottom: 12px solid var(--c-orange, #f37021) !important;
    border-top: none !important;
    z-index: 10001 !important;
    pointer-events: none !important;
}

/* 3. Correccion del Triangulo del Menu Principal (Que apunte exactamente a la categoria) */
@media (min-width: 1025px) {
    .nav-menu > li.has-dropdown > a {
        position: relative !important; /* El ancla vital para el triangulo */
    }
    
    /* Usamos el ::after del A exclusivamente para dibujar el triangulo en escritorio */
    .nav-menu > li.has-dropdown:hover > a::after,
    .nav-menu > li.has-dropdown.active > a::after {
        content: '' !important;
        display: block !important;
        position: absolute !important;
        bottom: -18px !important; /* Distancia calibrada para tocar el borde del submenu */
        left: 50% !important;
        transform: translateX(-50%) !important;
        border-left: 12px solid transparent !important;
        border-right: 12px solid transparent !important;
        border-bottom: 12px solid var(--c-orange, #f37021) !important;
        border-top: none !important;
        width: 0 !important;
        height: 0 !important;
        background: transparent !important;
        z-index: 10001 !important;
        pointer-events: none !important;
    }
}


/* --- ELIMINACION DEFINITIVA DE LAS FLECHAS APUNTADORAS (BURBUJAS) --- */
/* A peticion, desactivamos permanentemente los triangulos naranjas superiores para asegurar estabilidad total */

.nav-menu > li.has-dropdown:hover > a::after,
.nav-menu > li.has-dropdown.active > a::after,
.nav-menu > li.has-dropdown:hover::before,
.user-profile-btn:hover::before {
    display: none !important;
    content: none !important;
    border: none !important;
    width: 0 !important;
    height: 0 !important;
}


/* --- AJUSTES MOVILES (CARRITO Y OCULTAMIENTO) --- */
@media (max-width: 1024px) {
    /* 1. Arreglar el Carrito de Compras en Movil */
    .cart-sidebar {
        width: 90% !important; /* No ocupar el 100% para mantener estilo de panel lateral */
        max-width: 400px !important;
        right: -100% !important;
    }
    .cart-sidebar.open {
        right: 0 !important;
    }
    .cart-item {
        flex-direction: column !important;
        align-items: flex-start !important;
    }
    .cart-item-img {
        width: 100% !important;
        height: auto !important;
        max-height: 100px !important;
        object-fit: contain !important;
    }
    .btn-remove-item {
        position: absolute !important;
        top: 10px !important;
        right: 10px !important;
    }

    /* 2. Ocultar icono de usuario de la barra y ocultar TODOS los submenus permanentemente */
    .nav-actions-right .user-profile-btn {
        display: none !important;
    }
    .submenu {
        display: none !important;
    }
    
    /* Remover la flecha del ::after de los enlaces principales en movil (ya que no hay submenu) */
    .nav-menu > li > a::after {
        display: none !important;
    }
}


/* --- INTEGRACION DE ICONOS Y MENU DE USUARIO EN MOVIL --- */

/* Ocultar iconos de movil y el menu de usuario extra en Escritorio */
@media (min-width: 1025px) {
    .mobile-menu-icon { display: none !important; }
    .mobile-only-menu { display: none !important; }
}

/* Estilos para el menu en Movil */
@media (max-width: 1024px) {
    .nav-menu > li > a,
    .mobile-only-menu > li > a {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 15px 20px !important;
        width: 100% !important;
    }
    .mobile-menu-icon {
        display: block !important;
        stroke: var(--c-orange, #f37021) !important;
        flex-shrink: 0 !important;
    }
    /* Separador visual para las opciones de usuario en movil */
    .mobile-only-menu {
        margin-top: 10px !important;
        padding-top: 10px !important;
        border-top: 1px solid rgba(255,255,255,0.1) !important;
        list-style: none !important;
        padding-left: 0 !important;
    }
    /* Quitar comportamientos de dropdown en movil ya que ocultamos submenus */
    .has-dropdown {
        pointer-events: auto !important; /* Asegurar que el click en Servicios/Catalogo nos lleve a su pagina */
    }
}


/* --- LIMPIEZA DEFINITIVA DEL MENU MOVIL (ARREGLO DE DESCUADRE) --- */
@media (max-width: 1024px) {
    /* 1. Matar el circulo naranja generico y la flecha derecha (::before y ::after) */
    .nav-menu > li > a::before,
    .nav-menu > li > a::after,
    .mobile-only-menu > li > a::before,
    .mobile-only-menu > li > a::after {
        display: none !important;
        content: none !important;
        width: 0 !important;
        height: 0 !important;
        border: none !important;
    }

    /* 2. Forzar layout Flex y limpiar cualquier rastro de Grid antiguo */
    .nav-menu > li > a,
    .mobile-only-menu > li > a {
        display: flex !important;
        grid-template-columns: none !important; /* Anular el grid de 3 columnas */
        align-items: center !important;
        justify-content: flex-start !important; /* Alinear a la izquierda */
        gap: 15px !important;
        padding: 16px 25px !important;
        width: 100% !important;
        text-align: left !important;
    }

    /* 3. Asegurar que los SVG iconos se vean perfectos */
    .mobile-menu-icon {
        display: block !important;
        width: 22px !important;
        height: 22px !important;
        stroke: var(--c-orange, #f37021) !important;
        flex-shrink: 0 !important;
        margin: 0 !important;
        stroke-width: 2px !important;
    }

    /* 4. Textos alineados y limpios */
    .nav-menu > li > a span,
    .mobile-only-menu > li > a span {
        font-size: 1.05rem !important;
        font-weight: 700 !important;
        color: #f8fafc !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}


/* --- ANIQUILACION DE FLECHAS Y RE-ALINEACION PERFECTA EN MOVIL --- */
@media (max-width: 1024px) {
    /* 1. Muerte absoluta a TODO pseudo-elemento (flechas/puntos) en TODOS los links moviles */
    .nav-menu a::before,
    .nav-menu a::after,
    .mobile-only-menu a::before,
    .mobile-only-menu a::after {
        display: none !important;
        content: none !important;
        border: none !important;
        width: 0 !important;
        height: 0 !important;
        opacity: 0 !important;
        visibility: hidden !important;
        position: absolute !important;
        left: -9999px !important;
    }

    /* 2. Alineacion Vertical Centrada Perfecta y Espaciado Reducido */
    .nav-menu > li > a,
    .mobile-only-menu > li > a {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important; /* Centrado vertical estricto */
        justify-content: flex-start !important;
        gap: 10px !important; /* Icono y texto mucho mas juntos */
        padding: 15px 20px !important;
        height: auto !important;
        min-height: 50px !important;
        background: transparent !important;
        border: none !important;
        border-bottom: 1px solid rgba(255,255,255,0.05) !important; /* Mantenemos las lineas separadoras tenues */
    }

    /* 3. Estabilidad del Icono */
    .mobile-menu-icon {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 22px !important;
        height: 22px !important;
        margin: 0 !important;
        padding: 0 !important;
        flex-shrink: 0 !important;
        stroke: var(--c-orange, #f37021) !important;
    }

    /* 4. Estabilidad del Texto */
    .nav-menu > li > a span,
    .mobile-only-menu > li > a span {
        display: block !important;
        line-height: 1.2 !important; /* Evita que el texto flote hacia arriba */
        margin: 0 !important;
        padding: 0 !important;
        font-size: 1.05rem !important;
        color: #f8fafc !important;
        font-weight: 700 !important;
        transform: translateY(1px) !important; /* Ajuste micrometrico optico */
    }
}


/* ==========================================================================
   APP NATIVA: REDISEÑO PREMIUM DEL MENU MOVIL (ULTRA PULIDO)
   ========================================================================== */
@media (max-width: 1024px) {
    /* 1. Reset estricto para limpiar los bloqueos anteriores en ::after */
    .nav-menu > li > a::after,
    .mobile-only-menu > li > a::after {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        position: static !important; /* Devuelve el control a Flexbox */
    }

    /* 2. Arquitectura Flexbox Pura (Tight Layout) */
    .nav-menu > li > a,
    .mobile-only-menu > li > a {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        
        /* Reduccion de espacios muertos (padding lateral y vertical mas compacto) */
        padding: 14px 18px !important; 
        gap: 12px !important; 
        
        background: transparent !important;
        border: none !important;
        border-bottom: 1px solid rgba(255,255,255,0.05) !important; 
        transition: background 0.2s ease !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* Feedback visual al tocar (estilo app) */
    .nav-menu > li > a:hover,
    .mobile-only-menu > li > a:hover,
    .nav-menu > li > a:active,
    .mobile-only-menu > li > a:active {
        background: rgba(255, 255, 255, 0.03) !important;
    }

    /* 3. Icono Principal (Izquierda) */
    .mobile-menu-icon {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 20px !important;
        height: 20px !important;
        stroke: var(--c-orange, #f37021) !important;
        flex-shrink: 0 !important;
        margin: 0 !important;
    }

    /* 4. Texto (Centro) */
    .nav-menu > li > a span,
    .mobile-only-menu > li > a span {
        font-size: 1rem !important;
        font-weight: 600 !important;
        color: #f1f5f9 !important;
        letter-spacing: 0.3px !important;
        line-height: 1 !important;
        flex-grow: 1 !important; /* Empuja a la flecha hacia el extremo derecho */
        margin: 0 !important;
    }

    /* 5. Chevron / Flecha (Extremo Derecho) */
    .nav-menu > li > a::after,
    .mobile-only-menu > li > a::after {
        content: '\203A' !important; /* Caracter Hexadecimal para chevron › */
        font-size: 1.5rem !important;
        color: #64748b !important; /* Color gris apagado sutil */
        margin-left: auto !important; /* Clave de Flexbox: Empuja el elemento al final */
        line-height: 0 !important; /* Evita que rompa la altura de la fila */
        font-family: Arial, sans-serif !important; /* Asegurar renderizado correcto del chevron */
        font-weight: 300 !important;
        transform: translateY(-2px) !important; /* Ajuste visual optico */
    }

    /* Quitar lineas del ultimo elemento para limpieza visual */
    .mobile-only-menu > li:last-child > a {
        border-bottom: none !important;
    }
}


/* --- DISEÑO INDUSTRIAL/CUADRADO PARA EL CARRITO Y BOTONES --- */

/* 1. Quitar el borde redondo (pildora) de los botones superiores de la cabecera */
.cart-btn,
.btn-user-profile,
.btn-login-header {
    border-radius: 0 !important; /* Esquinas 100% cuadradas y afiladas */
}

/* 2. Quitar bordes redondos del interior del Panel del Carrito de Compras */
.cart-sidebar,
.cart-item,
.cart-item-img,
.qty-controls,
.cart-totals-box,
.btn-checkout {
    border-radius: 0 !important; /* Todo el carrito adquiere un look afilado y serio */
}

/* 3. Ajuste sutil del badge (contador naranja del carrito) para que haga juego con el estilo cuadrado */
.cart-badge {
    border-radius: 0 !important;
}


/* --- DISEÑO MINIMALISTA Y PROFESIONAL PARA BOTONES CABECERA --- */

/* 1. Eliminar completamente los bordes toscos y fondos pesados */
.cart-btn,
.btn-user-profile,
.btn-login-header {
    border: none !important; 
    background: transparent !important;
    box-shadow: none !important;
    padding: 8px !important; /* Espaciado mas limpio */
    border-radius: 4px !important; /* Leve suavidad si llega a tener fondo en hover */
}

/* 2. Hover Sutil (Estilo Minimalista) */
.cart-btn:hover,
.btn-user-profile:hover,
.btn-login-header:hover {
    background: rgba(255, 255, 255, 0.05) !important; /* Solo un toque de luz */
    border: none !important; 
    box-shadow: none !important;
    transform: none !important; /* Cero saltos */
}

/* 3. Ajuste de Iconos y Textos para brillar por si solos */
.cart-btn svg {
    width: 24px !important;
    height: 24px !important;
    stroke: var(--c-orange, #f37021) !important;
}
.cart-badge {
    background: var(--c-orange, #f37021) !important;
    color: #ffffff !important;
    border: none !important; /* Sin bordes en el badge */
    font-size: 0.75rem !important;
    padding: 2px 6px !important;
    border-radius: 12px !important; /* El badge si debe ser redondeado por legibilidad */
    margin-left: 2px !important;
}

.avatar-circle {
    border: none !important; /* Sin borde negro interno */
    width: 28px !important;
    height: 28px !important;
    font-size: 0.9rem !important;
}


/* --- DISEÑO ESPECIFICO PARA EL BOTON DE USUARIO EN ESCRITORIO --- */
@media (min-width: 1025px) {
    .btn-user-profile {
        background: #000000 !important; /* Fondo negro puro */
        border: 2px solid var(--c-orange, #f37021) !important; /* Borde Naranja */
        border-radius: 4px !important; /* Ligeramente cuadrado/afilado */
        padding: 8px 16px !important; 
    }
    
    /* Efecto hover vibrante para el usuario */
    .btn-user-profile:hover {
        background: #111111 !important;
        box-shadow: 0 0 15px rgba(243, 112, 33, 0.4) !important;
    }
}


/* --- AJUSTE FINO DEL BOTON DE USUARIO (ESCRITORIO) SEGUN INDICACIONES --- */
@media (min-width: 1025px) {
    .btn-user-profile {
        background: #000000 !important; /* Fondo negro */
        border: 2px solid var(--c-orange, #f37021) !important; /* Borde naranja */
        border-radius: 30px !important; /* Mas redondeado (forma de pildora) */
        padding: 5px 15px !important;
        
        display: flex !important;
        flex-direction: row-reverse !important; /* INVIERTE EL ORDEN: Nombre/Flecha a la izq, Icono a la der */
        align-items: center !important;
        gap: 12px !important;
        
        transition: none !important; /* Cero saltos */
        box-shadow: none !important;
    }

    /* HOVER ESTATICO: No cambia de color, no brilla, no salta */
    .btn-user-profile:hover,
    .btn-user-profile:active {
        background: #000000 !important;
        border: 2px solid var(--c-orange, #f37021) !important;
        box-shadow: none !important;
        transform: none !important;
    }
}


/* --- CORRECCION DEL BUSCADOR EN MOVIL (EVITAR SALTO/DESCUADRE) --- */
@media (max-width: 1024px) {
    /* Anular el comportamiento de pantalla completa absoluta al hacer click */
    .nav-search:focus-within {
        position: relative !important; /* Mantiene su lugar en el Flexbox */
        top: auto !important;
        left: auto !important;
        width: auto !important; /* Se rige por el flex-grow del contenedor */
        height: 40px !important;
        margin: 0 !important;
        z-index: 10 !important;
        background: transparent !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        flex-grow: 1 !important; /* Sigue ocupando el espacio disponible */
    }
    
    /* El input no necesita padding enorme de overlay */
    .nav-search:focus-within input,
    .nav-search input:focus {
        padding: 0 45px 0 15px !important; /* Mantener padding normal para el texto y la lupa */
        border-radius: 20px !important; /* Mantener la pildora original en lugar de cambiar a cuadrado */
    }
}


/* --- ANIQUILAR SUBMENUS EN MOVIL DEFINITIVAMENTE --- */
@media (max-width: 1024px) {
    /* 1. Ocultar todos los submenus sin excepcion */
    .nav-menu .submenu {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        height: 0 !important;
        overflow: hidden !important;
        position: absolute !important;
        left: -9999px !important;
    }

    /* 2. Asegurar que JS no bloquee los enlaces principales */
    /* Si algun script usa event.preventDefault(), no podemos anularlo con CSS, 
       pero podemos asegurar que el enlace en si sea interactivo */
    .has-dropdown > a {
        pointer-events: auto !important;
    }
}


/* --- EL BUSCADOR EXPANDIBLE PERFECTO PARA MOVIL --- */
@media (max-width: 1024px) {
    /* Estado Normal (Icono Lupa) */
    .nav-search {
        position: static !important; /* Para que su hijo absoluto pueda guiarse por la cabecera */
        width: 40px !important;
        height: 40px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-grow: 0 !important;
    }
    
    .nav-search input {
        width: 0 !important;
        opacity: 0 !important;
        padding: 0 !important;
        border: none !important;
        transition: all 0.3s ease !important;
    }

    /* Estado Expandido (Al hacer click) */
    .nav-search:focus-within {
        /* No rompemos el contenedor flex, mantenemos el width de 40px de la base */
        width: 40px !important;
    }

    .nav-search:focus-within input {
        /* El INPUT es el que se vuelve absoluto y flota por encima del logo */
        position: absolute !important;
        left: 60px !important; /* Respeta el boton hamburguesa */
        right: 100px !important; /* Respeta los botones de carrito y usuario */
        width: calc(100vw - 160px) !important;
        height: 40px !important;
        opacity: 1 !important;
        padding: 0 40px 0 15px !important;
        background: #ffffff !important;
        border: 2px solid var(--c-orange, #f37021) !important;
        border-radius: 20px !important;
        z-index: 100 !important;
        color: #000 !important;
    }

    .nav-search:focus-within button {
        /* El boton de lupa se mueve a la derecha del input absoluto */
        position: absolute !important;
        right: 110px !important; /* Justo dentro del input expandido */
        z-index: 101 !important;
        color: var(--c-orange, #f37021) !important;
    }
}


/* --- ANIQUILACION DEL ERROR Y SOLUCION DEFINITIVA DEL BUSCADOR (FLEXBOX PURO) --- */
@media (max-width: 1024px) {
    /* 1. Reset absoluto: Matar todo el codigo defectuoso anterior */
    .nav-search,
    .nav-search:focus-within,
    .nav-search input,
    .nav-search:focus-within input,
    .nav-search button,
    .nav-search:focus-within button {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        z-index: 10 !important;
        transform: none !important;
    }

    /* 2. Comportamiento natural del contenedor (Lupa contraida) */
    .nav-search {
        display: flex !important;
        align-items: center !important;
        width: 40px !important;
        height: 40px !important;
        flex-grow: 0 !important; /* No crece hasta que se le haga clic */
        transition: flex-grow 0.3s ease !important;
        overflow: hidden !important;
        background: transparent !important;
    }

    /* 3. La magia: Ocultar el Logo cuando se hace clic en la lupa */
    /* Al usar :has(), si la cabecera detecta que el buscador esta activo, apaga el logo */
    .nav-actions-center:has(.nav-search:focus-within) .brand-logo,
    .nav-container:has(.nav-search:focus-within) .brand-logo {
        display: none !important;
    }

    /* 4. Expansión natural y fluida al hacer clic */
    .nav-search:focus-within {
        flex-grow: 1 !important; /* Ahora que el logo no esta, toma todo el espacio central libre */
        width: auto !important; /* Permite crecer */
        overflow: visible !important;
    }

    .nav-search:focus-within input {
        width: 100% !important; /* Llena su contenedor flex-grow */
        opacity: 1 !important;
        padding: 0 40px 0 15px !important;
        background: #ffffff !important;
        border: 2px solid var(--c-orange, #f37021) !important;
        border-radius: 20px !important;
        color: #000 !important;
    }

    /* 5. Posicionar la lupa correctamente a la derecha dentro de la barra expandida */
    .nav-search button {
        position: absolute !important;
        right: 0 !important;
        top: 0 !important;
        height: 40px !important;
        width: 40px !important;
        background: transparent !important;
        color: var(--c-orange, #f37021) !important;
        border: none !important;
    }
}


/* --- RESTAURACION Y EFECTO DE EXPANSION SIMPLE PARA EL BUSCADOR (MOVIL) --- */
@media (max-width: 1024px) {
    /* Deshacer todo ocultamiento del logo o posiciones absolutas */
    .nav-container .brand-logo,
    .nav-actions-center .brand-logo {
        display: flex !important;
    }

    /* Contenedor del buscador normal */
    .nav-search {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        width: auto !important;
        overflow: visible !important;
        background: transparent !important;
    }

    /* El Input SIEMPRE visible, pero pequeno al inicio */
    .nav-search input {
        display: block !important;
        opacity: 1 !important;
        position: relative !important;
        top: auto !important;
        left: auto !important;
        width: 120px !important; /* Siempre se muestra pequenito */
        height: 36px !important;
        padding: 0 35px 0 15px !important; /* Espacio para la lupa */
        background: #ffffff !important;
        border: 2px solid var(--c-orange, #f37021) !important;
        border-radius: 20px !important;
        color: #000 !important;
        transition: width 0.3s ease !important; /* La clave: animacion suave */
        z-index: 10 !important;
    }

    /* Al hacerle clic, se vuelve ancho (animado) */
    .nav-search:focus-within input,
    .nav-search input:focus {
        width: 200px !important; /* Se agranda a lo ancho */
    }

    /* La lupa dentro de la barra siempre visible */
    .nav-search button {
        position: absolute !important;
        right: 0 !important;
        top: 0 !important;
        height: 36px !important;
        width: 36px !important;
        background: transparent !important;
        border: none !important;
        color: var(--c-orange, #f37021) !important;
        z-index: 11 !important;
    }
}


/* --- BUSCADOR COMPLETAMENTE NORMAL (OCUPA TODO EL ESPACIO SIEMPRE) --- */
@media (max-width: 1024px) {
    /* Destruir TODA animacion de estados focus-within */
    .nav-search:focus-within input,
    .nav-search input:focus {
        width: 100% !important; /* Igual que el estado normal */
        position: relative !important;
    }

    .nav-actions-center:has(.nav-search:focus-within) .brand-logo,
    .nav-container:has(.nav-search:focus-within) .brand-logo {
        display: flex !important; /* Dejar al logo en paz */
    }

    /* Comportamiento Basico Normal */
    .nav-search {
        display: flex !important;
        position: relative !important;
        flex-grow: 1 !important; /* Ocupa todo el espacio normal disponible */
        align-items: center !important;
        width: 100% !important;
        margin: 0 10px !important; /* Un poco de margen para respirar de los iconos */
    }

    .nav-search input {
        display: block !important;
        width: 100% !important; /* Se estira a todo el contenedor siempre */
        opacity: 1 !important;
        position: relative !important;
        height: 38px !important;
        padding: 0 35px 0 15px !important; 
        background: #ffffff !important;
        border: 2px solid var(--c-orange, #f37021) !important;
        border-radius: 20px !important;
        color: #000 !important;
        transition: none !important; /* Sin animaciones raras */
        box-sizing: border-box !important;
    }

    .nav-search button {
        position: absolute !important;
        right: 2px !important;
        top: 1px !important;
        height: 36px !important;
        width: 36px !important;
        background: transparent !important;
        border: none !important;
        color: var(--c-orange, #f37021) !important;
    }
}


/* --- ARREGLO FINAL DEL BUSCADOR MOVIL (LUPA ADENTRO Y EXPANSION SUAVE) --- */
@media (max-width: 1024px) {
    /* Destruir cualquier regla antigua de :focus-within que mueva el boton */
    .nav-search button,
    .nav-search:focus-within button {
        position: absolute !important;
        right: 0 !important;
        top: 0 !important;
        left: auto !important;
        height: 100% !important; /* Mismo alto que el input */
        width: 40px !important;
        background: transparent !important;
        border: none !important;
        color: var(--c-orange, #f37021) !important;
        z-index: 20 !important;
        transform: none !important; /* Cero movimientos raros */
    }

    /* Contenedor del buscador */
    .nav-search {
        position: relative !important;
        display: flex !important;
        flex-grow: 1 !important; /* Ocupa el espacio disponible */
        align-items: center !important;
        margin: 0 5px !important; /* Margen ligero para no chocar con el logo */
        max-width: 100% !important;
        height: 40px !important; /* Alto fijo del contenedor */
        overflow: visible !important;
    }

    /* El Input */
    .nav-search input {
        position: absolute !important; /* Flota dentro de su contenedor para no empujar nada al estirarse */
        right: 0 !important; /* Anclado a la derecha */
        width: 120px !important; /* Pequeno por defecto */
        height: 100% !important;
        padding: 0 40px 0 15px !important; /* Espacio exacto para la lupa a la derecha */
        background: #ffffff !important;
        border: 2px solid var(--c-orange, #f37021) !important;
        border-radius: 20px !important;
        color: #000 !important;
        transition: width 0.3s ease-out !important; /* Animacion de expansion */
        z-index: 10 !important;
        box-sizing: border-box !important;
    }

    /* Expansion al hacer click */
    .nav-search:focus-within input,
    .nav-search input:focus {
        width: 100% !important; /* Se estira a todo el contenedor */
    }
}


/* --- REESCRITURA ROBUSTA DEL BUSCADOR MOVIL (CONTENEDOR DINAMICO) --- */
@media (max-width: 1024px) {
    /* 1. Limpieza de cualquier regla absoluta previa en el input */
    .nav-search input {
        position: static !important;
        width: 100% !important;
        height: 100% !important;
        background: transparent !important; /* El fondo blanco lo tendra el contenedor */
        border: none !important; /* El borde naranja lo tendra el contenedor */
        box-shadow: none !important;
        padding: 0 35px 0 12px !important;
        opacity: 1 !important;
        display: block !important;
        color: #000000 !important;
    }

    /* 2. El Contenedor ahora tiene el diseño fisico (Borde y Fondo) */
    .nav-search {
        display: flex !important;
        position: relative !important;
        align-items: center !important;
        
        /* Ancho inicial de 120px */
        width: 120px !important; 
        height: 38px !important;
        background: #ffffff !important;
        border: 2px solid var(--c-orange, #f37021) !important;
        border-radius: 20px !important;
        
        /* Transicion de ancho en el contenedor completo */
        transition: width 0.3s ease !important; 
        box-sizing: border-box !important;
        margin: 0 5px !important;
        overflow: hidden !important; /* Evita que el input sobresalga en la transicion */
    }

    /* 3. Expansion del contenedor al hacer click */
    .nav-search:focus-within {
        width: 100% !important; /* Se expande ocupando todo el espacio disponible */
        flex-grow: 1 !important;
    }

    /* 4. La Lupa fija al borde derecho del contenedor */
    .nav-search button,
    .nav-search:focus-within button {
        position: absolute !important;
        right: 4px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        height: 30px !important;
        width: 30px !important;
        background: transparent !important;
        border: none !important;
        color: var(--c-orange, #f37021) !important;
        z-index: 5 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
}



/* --- REQUERIMIENTO: MENU COLOR NEGRO COMPLETO --- */
.navbar, .navbar-wrapper, .nav-menu-wrapper, .nav-menu, .submenu, .user-dropdown-menu { background: #000000 !important; background-color: #000000 !important; background-image: none !important; }
@media (max-width: 1024px) { .nav-menu-wrapper, .nav-menu-wrapper.active, .nav-menu, .submenu, .user-dropdown-menu { background: #000000 !important; background-color: #000000 !important; background-image: none !important; } }


/* --- REQUERIMIENTO: FONDO DE LA PAGINA BLANCO --- */
body { background-color: #ffffff !important; background: #ffffff !important; }


/* --- REQUERIMIENTO: FONDO DEL SUBMENU 1a1a1a Y BORDES HORIZONTALES 0a0a0a --- */
.submenu { background: #1a1a1a !important; background-color: #1a1a1a !important; }
@media (max-width: 1024px) { .submenu { background: #1a1a1a !important; background-color: #1a1a1a !important; } }
.submenu li { border-bottom: 1px solid #0a0a0a !important; }
.submenu li:last-child { border-bottom: none !important; }


/* --- AJUSTE ADICIONAL: LINEAS HORIZONTALES GENERALES DEL MENU EN 0a0a0a Y ADAPTACION DE TRIANGULO SUBMENU --- */
.submenu li, .nav-menu a, .nav-menu li, .user-dropdown-menu li, .user-dropdown-menu a { border-bottom-color: #0a0a0a !important; border-top-color: #0a0a0a !important; }
@media (max-width: 1024px) { .nav-menu a, .submenu li, .submenu a, .user-dropdown-menu li, .user-dropdown-menu a { border-bottom: 1px solid #0a0a0a !important; } .submenu li:last-child, .user-dropdown-menu li:last-child { border-bottom: none !important; } }
@media (min-width: 1025px) { .submenu li, .user-dropdown-menu li { border-bottom: 1px solid #0a0a0a !important; } .submenu li:last-child, .user-dropdown-menu li:last-child { border-bottom: none !important; } }
.has-dropdown:hover .submenu::before, .has-dropdown.active .submenu::before { border-bottom-color: #1a1a1a !important; }


/* --- REQUERIMIENTO: SEPARADORES HORIZONTALES DEL SUBMENU EN COLOR 0a0a0a EN VEZ DE 777777 --- */
.submenu li, .has-dropdown .submenu li, .nav-menu-wrapper .submenu li { border-bottom: 1px solid #0a0a0a !important; box-shadow: 0 1px 0 #0a0a0a !important; }
.submenu li:last-child, .has-dropdown .submenu li:last-child, .nav-menu-wrapper .submenu li:last-child { border-bottom: none !important; box-shadow: none !important; }
@media (max-width: 1024px) { .submenu li { border-bottom: 1px solid #0a0a0a !important; box-shadow: 0 1px 0 #0a0a0a !important; } .submenu li:last-child { border-bottom: none !important; box-shadow: none !important; } }
@media (min-width: 1025px) { .submenu li { border-bottom: 1px solid #0a0a0a !important; box-shadow: 0 1px 0 #0a0a0a !important; } .submenu li:last-child { border-bottom: none !important; box-shadow: none !important; } }


/* --- REQUERIMIENTO: DOBLE LINEA EN EL SUBMENU CON COLOR NEGRO (#000000) MAS #0a0a0a --- */
.submenu li, .has-dropdown .submenu li, .nav-menu-wrapper .submenu li { border-bottom: 1px solid #000000 !important; box-shadow: 0 1px 0 #0a0a0a !important; }
.submenu li:last-child, .has-dropdown .submenu li:last-child, .nav-menu-wrapper .submenu li:last-child { border-bottom: none !important; box-shadow: none !important; }
@media (max-width: 1024px) { .submenu li { border-bottom: 1px solid #000000 !important; box-shadow: 0 1px 0 #0a0a0a !important; } .submenu li:last-child { border-bottom: none !important; box-shadow: none !important; } }
@media (min-width: 1025px) { .submenu li { border-bottom: 1px solid #000000 !important; box-shadow: 0 1px 0 #0a0a0a !important; } .submenu li:last-child { border-bottom: none !important; box-shadow: none !important; } }


/* --- REQUERIMIENTO: ANULAR CAMBIO DE COLOR DE LINEA EN HOVER/ACTIVE DEL SUBMENU --- */
.submenu li:hover, .submenu a:hover, .submenu li:active, .submenu a:active, .has-dropdown .submenu li:hover, .has-dropdown .submenu a:hover, .nav-menu-wrapper .submenu li:hover, .nav-menu-wrapper .submenu a:hover { border-color: #000000 !important; border-bottom-color: #000000 !important; box-shadow: 0 1px 0 #0a0a0a !important; }
@media (max-width: 1024px) { .submenu a:hover, .submenu a:active { border-color: #000000 !important; border-bottom-color: #000000 !important; box-shadow: 0 1px 0 #0a0a0a !important; } }


/* --- REQUERIMIENTO: COPIAR DISEÑO COMPLETO DEL SUBMENU AL MENU MOVIL RESPONSIVO --- */
@media (max-width: 1024px) { .nav-menu-wrapper, .nav-menu-wrapper.active, .nav-menu { background: #1a1a1a !important; background-color: #1a1a1a !important; background-image: none !important; } .nav-menu li { border-bottom: 1px solid #000000 !important; box-shadow: 0 1px 0 #0a0a0a !important; background: transparent !important; } .nav-menu li:last-child { border-bottom: none !important; box-shadow: none !important; } .nav-menu a { color: #9fb1bc !important; font-weight: 500 !important; padding: 16px 15px 16px 20px !important; border-bottom: none !important; box-shadow: none !important; background: transparent !important; transition: all 0.3s ease !important; } .nav-menu a:hover, .nav-menu a:active, .nav-menu a.active { background: #1a1a1a !important; color: #ffffff !important; } }


/* --- REQUERIMIENTO: QUITAR ESPACIOS SUPERIORES EN LOS ENLACES DE MENÚ MÓVIL --- */
@media (max-width: 1024px) { .nav-menu { margin-top: 0 !important; padding-top: 0 !important; } .nav-menu > li { margin-top: 0 !important; padding-top: 0 !important; margin-bottom: 0 !important; padding-bottom: 0 !important; } .nav-menu-wrapper { padding-top: 0 !important; } }


/* --- REQUERIMIENTO: AJUSTE DE ESPACIADOS, COLORES E ICONOS DE USUARIO EN MENÚ MÓVIL --- */
@media (max-width: 1024px) { .mobile-only-menu { margin-top: 0 !important; padding-top: 0 !important; border-top: none !important; } .mobile-only-menu > li > a span { color: #ff9f43 !important; font-weight: 700 !important; } .mobile-only-menu > li > a svg { stroke: #ff9f43 !important; color: #ff9f43 !important; } .mobile-only-menu a[href*=" logout\] span { color: #ff4d4d !important; } .mobile-only-menu a[href*=\logout\] svg { stroke: #ff4d4d !important; color: #ff4d4d !important; } }


/* --- REQUERIMIENTO: FORZAR MOSTRAR ICONOS SVG Y ELIMINAR GAP/ESPACIADOS ENTRE ENLACES MÓVILES --- */
.submenu a svg, .nav-menu a svg, .mobile-menu-icon { display: inline-flex !important; display: flex !important; visibility: visible !important; opacity: 1 !important; }
@media (max-width: 1024px) { .nav-menu, .mobile-only-menu { gap: 0 !important; margin: 0 !important; padding: 0 !important; } .nav-menu > li, .mobile-only-menu > li { margin: 0 !important; padding: 0 !important; } .nav-menu a, .mobile-only-menu a, .submenu li { margin: 0 !important; } }


/* --- ACTUALIZACION DEFINITIVA: MOSTRAR ICONOS, QUITAR GAP MÓVIL Y BORDE NEGRO EN SECCIÓN USUARIO --- */
.submenu a svg, .nav-menu a svg, .mobile-only-menu a svg, .mobile-menu-icon, svg.mobile-menu-icon { display: inline-flex !important; display: flex !important; visibility: visible !important; opacity: 1 !important; width: 20px !important; height: 20px !important; margin-right: 10px !important; flex-shrink: 0 !important; }
.submenu a svg, .nav-menu a svg { stroke: currentColor !important; }
@media (max-width: 1024px) { .nav-menu, .mobile-only-menu { gap: 0px !important; margin: 0px !important; padding: 0px !important; } .nav-menu > li, .mobile-only-menu > li { margin: 0px !important; padding: 0px !important; border-bottom: 1px solid #000000 !important; box-shadow: 0 1px 0 #0a0a0a !important; display: block !important; } .nav-menu > li:last-child, .mobile-only-menu > li:last-child { border-bottom: none !important; box-shadow: none !important; } .nav-menu a, .mobile-only-menu a { margin: 0px !important; padding: 16px 20px !important; border: none !important; box-shadow: none !important; display: flex !important; align-items: center !important; width: 100% !important; box-sizing: border-box !important; } .mobile-only-menu { border: 2px solid #000000 !important; border-radius: 8px !important; margin-top: 15px !important; margin-bottom: 15px !important; background: #1a1a1a !important; overflow: hidden !important; } .mobile-only-menu a span { color: #ff9f43 !important; font-weight: 700 !important; } .mobile-only-menu a svg { stroke: #ff9f43 !important; color: #ff9f43 !important; } .mobile-only-menu a[href*=" logout\] span { color: #ff4d4d !important; } .mobile-only-menu a[href*=\logout\] svg { stroke: #ff4d4d !important; color: #ff4d4d !important; } }


/* --- CORRECCION DEFINITIVA: OCULTAR ICONOS EN COMPUTADORA Y MOSTRAR SOLO EN MÓVIL --- */
@media (min-width: 1025px) { .submenu a svg, .nav-menu a svg, .mobile-menu-icon, svg.mobile-menu-icon { display: none !important; } }


/* --- RESTAURACIÓN BUSCADOR MÓVIL ORIGINAL --- */
@media (max-width: 1024px) { .nav-search { width: 100% !important; flex-grow: 1 !important; max-width: 100% !important; background: transparent !important; border: none !important; border-radius: 0 !important; overflow: visible !important; margin: 0 10px !important; } .nav-search input { position: static !important; width: 100% !important; height: 38px !important; border-radius: 20px !important; padding: 0 35px 0 15px !important; background: rgba(255, 255, 255, 0.08) !important; color: #ffffff !important; border: 1px solid rgba(255, 255, 255, 0.2) !important; cursor: text !important; box-shadow: none !important; opacity: 1 !important; display: block !important; } .nav-search input::placeholder { color: rgba(255, 255, 255, 0.5) !important; } .nav-search button, .nav-search:focus-within button { position: absolute !important; right: 10px !important; top: 50% !important; transform: translateY(-50%) !important; height: 30px !important; width: 30px !important; background: transparent !important; border: none !important; color: rgba(255, 255, 255, 0.7) !important; z-index: 5 !important; display: flex !important; align-items: center !important; justify-content: center !important; pointer-events: auto !important; } .nav-search:focus-within input, .nav-search input:focus { width: 100% !important; background: rgba(255, 255, 255, 0.12) !important; border-color: rgba(255, 255, 255, 0.3) !important; box-shadow: none !important; } .nav-search:focus-within button { color: #ffffff !important; } }


/* --- UNIFICACIÓN BUSCADOR ESCRITORIO Y MOVIL --- */
@media (max-width: 1024px) { .nav-search { position: relative !important; display: flex !important; flex-grow: 1 !important; align-items: center !important; margin: 0 10px !important; max-width: 100% !important; height: 38px !important; overflow: visible !important; background: transparent !important; border: none !important; border-radius: 0 !important; } .nav-search input { position: absolute !important; right: 0 !important; width: 120px !important; height: 100% !important; padding: 0 35px 0 15px !important; background: #ffffff !important; border: 2px solid var(--c-orange, #f37021) !important; border-radius: 20px !important; color: #000000 !important; transition: width 0.3s ease !important; z-index: 10 !important; box-sizing: border-box !important; opacity: 1 !important; display: block !important; } .nav-search input::placeholder { color: #777777 !important; } .nav-search button, .nav-search:focus-within button { position: absolute !important; right: 8px !important; top: 50% !important; transform: translateY(-50%) !important; height: 30px !important; width: 30px !important; background: transparent !important; border: none !important; color: var(--c-orange, #f37021) !important; z-index: 20 !important; display: flex !important; align-items: center !important; justify-content: center !important; pointer-events: auto !important; } .nav-search:focus-within input, .nav-search input:focus { width: 100% !important; background: #ffffff !important; border-color: var(--c-orange, #f37021) !important; box-shadow: 0 4px 15px rgba(0,0,0,0.2) !important; } .nav-search:focus-within button { color: var(--c-orange, #f37021) !important; } }


/* --- BUSCADOR UNIFICADO GLOBAL (NO ABSOLUTO, RESPETA FLEX/GRID) --- */
.nav-search { position: relative !important; display: flex !important; align-items: center !important; height: 38px !important; background: transparent !important; border: none !important; border-radius: 0 !important; overflow: visible !important; margin: 0 10px !important; max-width: 250px !important; flex-grow: 1 !important; }
.nav-search input { position: static !important; width: 100% !important; height: 100% !important; padding: 0 35px 0 15px !important; background: #ffffff !important; border: 2px solid var(--c-orange, #f37021) !important; border-radius: 20px !important; color: #000000 !important; box-sizing: border-box !important; opacity: 1 !important; display: block !important; transition: border-color 0.2s ease, box-shadow 0.2s ease !important; }
.nav-search input::placeholder { color: #777777 !important; }
.nav-search button, .nav-search:focus-within button { position: absolute !important; right: 8px !important; top: 50% !important; transform: translateY(-50%) !important; height: 30px !important; width: 30px !important; background: transparent !important; border: none !important; color: var(--c-orange, #f37021) !important; z-index: 20 !important; display: flex !important; align-items: center !important; justify-content: center !important; pointer-events: auto !important; }
.nav-search:focus-within input, .nav-search input:focus { border-color: var(--c-orange, #f37021) !important; box-shadow: 0 4px 15px rgba(0,0,0,0.15) !important; }


/* --- DISTRIBUCIÓN COHESIVA Y QUITAR BORDE NARANJA --- */
.nav-container { display: flex !important; align-items: center !important; gap: 30px !important; width: 100% !important; }
.brand { margin-right: 0 !important; flex-shrink: 0 !important; }
.nav-menu-wrapper { margin: 0 !important; }
.nav-actions-right { margin-left: auto !important; display: flex !important; align-items: center !important; gap: 15px !important; flex-shrink: 0 !important; }
@media (max-width: 1024px) { .nav-container { gap: 10px !important; } .nav-actions-right { margin-left: 0 !important; } }
.nav-search { position: relative !important; display: flex !important; align-items: center !important; height: 38px !important; background: transparent !important; border: none !important; border-radius: 0 !important; overflow: visible !important; margin: 0 !important; max-width: 250px !important; flex-grow: 1 !important; }
.nav-search input { position: static !important; width: 100% !important; height: 100% !important; padding: 0 35px 0 15px !important; background: #ffffff !important; border: none !important; border-radius: 20px !important; color: #000000 !important; box-sizing: border-box !important; opacity: 1 !important; display: block !important; transition: box-shadow 0.2s ease !important; }
.nav-search input::placeholder { color: #777777 !important; }
.nav-search button, .nav-search:focus-within button { position: absolute !important; right: 8px !important; top: 50% !important; transform: translateY(-50%) !important; height: 30px !important; width: 30px !important; background: transparent !important; border: none !important; color: var(--c-orange, #f37021) !important; z-index: 20 !important; display: flex !important; align-items: center !important; justify-content: center !important; pointer-events: auto !important; }
.nav-search:focus-within input, .nav-search input:focus { outline: none !important; box-shadow: 0 4px 15px rgba(255,255,255,0.2) !important; }
/* --- ESTIRADO DE BUSCADOR COMPLETO --- */.nav-search { max-width: 100% !important; flex-grow: 1 !important; }

/* --- ICONOS SIN FONDO Y HOVER NARANJA --- */.cat-icon-wrapper, .gallery-cat-card .cat-icon-wrapper { background: transparent !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; color: #ff6b00 !important; border: none !important; }.cat-card:hover .cat-icon-wrapper, .gallery-cat-card:hover .cat-icon-wrapper { background: #ff6b00 !important; color: #ffffff !important; }

/* --- HERO SLIDER PREMIUM DESIGN --- */
.hero-section { min-height: 80vh !important; border-bottom: none !important; background: #050505 !important; box-shadow: inset 0 -100px 100px -100px rgba(0,0,0,0.9); }
.slide .hero-bg { transform: scale(1.02); opacity: 0.7; transition: transform 9s cubic-bezier(0.16, 1, 0.3, 1) !important; filter: brightness(0.85); }
.slide.active .hero-bg { transform: scale(1.09) !important; }
.hero-overlay { background: linear-gradient(to bottom, rgba(5, 5, 5, 0.4) 0%, rgba(5, 5, 5, 0.65) 60%, rgba(5, 5, 5, 0.92) 100%) !important; }
.hero-overlay::after { content: ''; position: absolute; inset: 0; background-image: radial-gradient(rgba(255, 107, 53, 0.08) 1.5px, transparent 1.5px); background-size: 24px 24px; opacity: 0.3; pointer-events: none; z-index: 2; }
.slide .hero-badge, .slide h1, .slide p, .slide .hero-actions-row { opacity: 0; transform: translateY(28px); transition: opacity 0.9s cubic-bezier(0.16, 1, 0.3, 1), transform 0.9s cubic-bezier(0.16, 1, 0.3, 1) !important; }
.slide.active .hero-badge { opacity: 1; transform: translateY(0); transition-delay: 0.15s !important; }
.slide.active h1 { opacity: 1; transform: translateY(0); transition-delay: 0.35s !important; }
.slide.active p { opacity: 1; transform: translateY(0); transition-delay: 0.55s !important; }
.slide.active .hero-actions-row { opacity: 1; transform: translateY(0); transition-delay: 0.75s !important; }
.hero-content h1 span { color: var(--c-orange, #ff5a00) !important; background: linear-gradient(135deg, #ff8a00 0%, #ff5a00 100%) !important; -webkit-background-clip: text !important; -webkit-text-fill-color: transparent !important; display: inline-block; filter: drop-shadow(0 2px 10px rgba(255,90,0,0.25)); }
.hero-badge { display: inline-flex; align-items: center; justify-content: center; background: rgba(255, 107, 53, 0.08) !important; border: 1px solid rgba(255, 107, 53, 0.35) !important; color: var(--c-orange, #ff5a00) !important; font-weight: 800 !important; font-size: 0.72rem !important; padding: 8px 22px !important; border-radius: 50px !important; margin-bottom: 24px !important; text-transform: uppercase; letter-spacing: 2px; backdrop-filter: blur(8px) !important; -webkit-backdrop-filter: blur(8px) !important; box-shadow: 0 0 20px rgba(255, 107, 53, 0.04) !important; animation: badgePulse 3.5s infinite ease-in-out; }
@keyframes badgePulse { 0%, 100% { box-shadow: 0 0 15px rgba(255, 107, 53, 0.04); border-color: rgba(255, 107, 53, 0.3); } 50% { box-shadow: 0 0 25px rgba(255, 107, 53, 0.18); border-color: rgba(255, 107, 53, 0.6); } }
.hero-actions-row { display: flex; gap: 16px; flex-wrap: wrap; margin-top: 32px; justify-content: center; width: 100%; }
.btn-cta { display: inline-flex; align-items: center; justify-content: center; gap: 10px; background: var(--c-orange, #ff5a00) !important; color: var(--c-white, #ffffff) !important; padding: 16px 36px !important; font-weight: 700 !important; font-size: 0.95rem !important; text-transform: uppercase; border-radius: 50px !important; transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important; border: none; cursor: pointer; letter-spacing: 0.5px; box-shadow: 0 10px 25px rgba(255, 90, 0, 0.25) !important; }
.btn-cta:hover { background: #ff7020 !important; transform: translateY(-3px) scale(1.02); box-shadow: 0 12px 30px rgba(255, 90, 0, 0.4) !important; }
.btn-slider-secondary { display: inline-flex; align-items: center; gap: 10px; background: rgba(255, 255, 255, 0.06) !important; border: 2px solid rgba(255, 255, 255, 0.18) !important; color: #ffffff !important; padding: 15px 36px !important; border-radius: 50px !important; font-weight: 700 !important; font-size: 0.95rem !important; text-transform: uppercase; letter-spacing: 0.5px; cursor: pointer; transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important; backdrop-filter: blur(8px) !important; -webkit-backdrop-filter: blur(8px) !important; }
.btn-slider-secondary:hover { background: var(--c-orange, #ff5a00) !important; border-color: var(--c-orange, #ff5a00) !important; box-shadow: 0 12px 30px rgba(255, 90, 0, 0.3) !important; transform: translateY(-3px) scale(1.02); }
@media (max-width: 600px) { .hero-actions-row { flex-direction: column; align-items: stretch; gap: 12px; padding: 0 10px; } }
.slider-btn { background: rgba(255, 255, 255, 0.03) !important; backdrop-filter: blur(12px) !important; -webkit-backdrop-filter: blur(12px) !important; color: #ffffff !important; border: 1px solid rgba(255, 255, 255, 0.12) !important; width: 56px !important; height: 56px !important; font-size: 1.3rem !important; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25) !important; transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important; }
.slider-btn:hover { background: var(--c-orange, #ff5a00) !important; border-color: var(--c-orange, #ff5a00) !important; box-shadow: 0 0 25px rgba(255, 90, 0, 0.5) !important; transform: translateY(-50%) scale(1.1) !important; }
.slider-dots { bottom: 35px !important; display: flex !important; justify-content: center !important; gap: 8px !important; }
.dot { height: 8px !important; width: 8px !important; background-color: rgba(255, 255, 255, 0.22) !important; border-radius: 50% !important; transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important; }
.dot.active { background-color: var(--c-orange, #ff5a00) !important; width: 30px !important; border-radius: 4px !important; box-shadow: 0 0 12px rgba(255, 90, 0, 0.45) !important; }
.dot:hover:not(.active) { background-color: rgba(255, 255, 255, 0.55) !important; }

