@import url('https://fonts.googleapis.com/css2?family=Exo+2:wght@300;400;600;700;800;900&family=Nunito+Sans:wght@300;400;600;700&display=swap');
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css');

/* ── Variables ── */
:root {
    --amja-teal:    #12595D;
    --amja-teal2:   #1a7a80;
    --amja-teal3:   #0d4548;
    --amja-green:   #2db87a;
    --amja-gold:    #f5b800;
    --amja-orange:  #ff6b1a;
    --amja-navy:    #0a1628;
    --amja-dark2:   #0d1e35;
    --amja-white:   #ffffff;
    --amja-light:   #f0f9f9;
}

/* ── Full-width breakout ── */
.amja-fullwidth-wrap {
    width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    max-width: 100vw !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
}
.amja-header-outer {
    z-index: 9999 !important;
    overflow: visible !important;
}

/* NOTA: Todos los estilos del header viven en assets/amja-header.css.
   Este archivo (amja-solar.css) ya no contiene reglas de header para
   evitar conflictos de especificidad entre ambas hojas de estilo. */

/* ── Global reset ── */
.amja-section, .amja-section * { box-sizing: border-box !important; -webkit-font-smoothing: antialiased !important; }
.amja-section h1,.amja-section h2,.amja-section h3,.amja-section h4,
.amja-section p,.amja-section ul,.amja-section li {
    font-family: 'Nunito Sans', sans-serif !important;
    margin: 0 !important; padding: 0 !important; border: none !important;
    background: none !important; color: inherit !important; list-style: none !important;
}
.amja-section { position: relative !important; overflow: hidden !important; width: 100% !important; display: block !important; }
.amja-gold { color: #f5b800 !important; -webkit-text-fill-color: #f5b800 !important; }
.amja-center { text-align: center !important; }
.amja-particles-bg { position: absolute !important; inset: 0 !important; z-index: 1 !important; pointer-events: none !important; }

/* ── BG con imagen + overlay ── */
.amja-section-bg-img {
    position: absolute !important; inset: 0 !important; z-index: 0 !important;
    background-size: cover !important; background-position: center !important;
    background-repeat: no-repeat !important;
}
.amja-section-bg-overlay {
    position: absolute !important; inset: 0 !important; z-index: 0 !important;
    background: #000 !important;
    pointer-events: none !important;
}
/* Asegura que el contenido quede sobre la imagen */
.amja-section > *:not(.amja-section-bg-img):not(.amja-section-bg-overlay):not(.amja-particles-bg) {
    position: relative !important;
    z-index: 2 !important;
}
.amja-home-hero-inner, .amja-hero-wrap, .amja-home-content,
.amja-content-section, .amja-home-cta-mid-inner {
    position: relative !important;
    z-index: 3 !important;
}

/* ── Section header ── */
.amja-section-header-padded {
    text-align: center !important;
    margin: 0 auto 52px auto !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}
.amja-section-label {
    display: inline-block !important;
    background: linear-gradient(135deg, #f5b800, #ff6b1a) !important;
    color: #0a1628 !important; -webkit-text-fill-color: #0a1628 !important;
    font-family: 'Exo 2', sans-serif !important; font-weight: 800 !important;
    font-size: 14px !important; letter-spacing: 2px !important; text-transform: uppercase !important;
    padding: 8px 22px !important; border-radius: 30px !important; margin: 0 0 16px 0 !important; line-height: 1.6 !important;
}
.amja-section-title {
    font-family: 'Exo 2', sans-serif !important; font-size: clamp(1.8rem,4vw,3rem) !important;
    font-weight: 900 !important; color: #fff !important; -webkit-text-fill-color: #fff !important;
    line-height: 1.15 !important; margin: 0 0 12px 0 !important; text-align: center !important; width: 100% !important;
}
.amja-section-title .amja-gold { color: #f5b800 !important; -webkit-text-fill-color: #f5b800 !important; }
.amja-section-intro {
    font-size: 1.05rem !important; color: #ffffff !important; -webkit-text-fill-color: #ffffff !important;
    max-width: 640px !important; margin: 0 auto !important; text-align: center !important;
    line-height: 1.7 !important; width: 100% !important; align-self: center !important;
}
.amja-content-section {
    position: relative !important; z-index: 2 !important;
    max-width: 1200px !important; margin: 0 auto !important; padding: 80px 32px !important; width: 100% !important;
}

/* ── BUTTONS ── */
.amja-btn {
    display: inline-block !important; font-family: 'Exo 2', sans-serif !important;
    font-weight: 700 !important; font-size: 15px !important; padding: 14px 32px !important;
    border-radius: 50px !important; text-decoration: none !important; cursor: pointer !important;
    border: 2px solid transparent !important; transition: all 0.3s ease !important;
    letter-spacing: 0.5px !important; line-height: 1.4 !important;
    -webkit-appearance: none !important; appearance: none !important; background-image: none !important;
}
.amja-btn-primary {
    background: linear-gradient(135deg, #12595D, #1a7a80) !important;
    background-image: linear-gradient(135deg, #12595D, #1a7a80) !important;
    color: #fff !important; -webkit-text-fill-color: #fff !important;
    box-shadow: 0 8px 28px rgba(18,89,93,0.4) !important;
}
.amja-btn-primary:hover { transform: translateY(-3px) !important; box-shadow: 0 16px 40px rgba(18,89,93,0.55) !important; color: #fff !important; -webkit-text-fill-color: #fff !important; text-decoration: none !important; }
.amja-btn-outline { background: transparent !important; color: #fff !important; -webkit-text-fill-color: #fff !important; border-color: rgba(255,255,255,0.5) !important; }
.amja-btn-outline:hover { border-color: #12595D !important; color: #12595D !important; -webkit-text-fill-color: #12595D !important; transform: translateY(-3px) !important; text-decoration: none !important; }
.amja-btn-full { width: 100% !important; text-align: center !important; }

/* ── HOME HERO ── */
.amja-home-hero {
    background: linear-gradient(135deg,#0a2818 0%,#0d3d20 50%,#0a2818 100%) !important;
    min-height: 93vh !important; position: relative !important;
}
.amja-home-hero-inner {
    position: relative !important; z-index: 3 !important;
    max-width: 1200px !important; margin: 0 auto !important; padding: 110px 32px 80px !important;
    display: flex !important; align-items: center !important; gap: 60px !important; min-height: 93vh !important;
}
.amja-home-hero-text { flex: 1 !important; }
.amja-home-badge {
    display: inline-block !important; background: rgba(45,184,122,.15) !important;
    border: 1px solid rgba(45,184,122,.5) !important; color: #ffffff !important; -webkit-text-fill-color: #ffffff !important;
    font-family: 'Exo 2',sans-serif !important; font-weight: 700 !important; font-size: 13px !important;
    letter-spacing: 2px !important; text-transform: uppercase !important; padding: 7px 20px !important;
    border-radius: 30px !important; margin-bottom: 24px !important; line-height: 1.6 !important;
}
.amja-home-title {
    font-family: 'Exo 2',sans-serif !important; font-size: clamp(2.4rem,5vw,4.2rem) !important;
    font-weight: 900 !important; color: #fff !important; -webkit-text-fill-color: #fff !important;
    line-height: 1.1 !important; margin: 0 0 20px !important; display: block !important;
}
.amja-home-accent { color: #f5b800 !important; -webkit-text-fill-color: #f5b800 !important; }
.amja-home-sub {
    font-size: 1.05rem !important; color: #ffffff !important; -webkit-text-fill-color: #ffffff !important;
    font-weight: 700 !important; line-height: 1.8 !important; margin: 0 0 36px !important; max-width: 520px !important; display: block !important;
}
.amja-home-ctas { display: flex !important; gap: 14px !important; flex-wrap: wrap !important; margin-bottom: 32px !important; }
.amja-home-btn-primary {
    display: inline-block !important; font-family: 'Exo 2',sans-serif !important; font-weight: 700 !important;
    font-size: 15px !important; padding: 14px 32px !important; border-radius: 50px !important;
    text-decoration: none !important; transition: all .3s !important; border: 2px solid transparent !important; line-height: 1.4 !important;
    background: linear-gradient(135deg,#2db87a,#1a9960) !important;
    background-image: linear-gradient(135deg,#2db87a,#1a9960) !important;
    color: #fff !important; -webkit-text-fill-color: #fff !important;
    box-shadow: 0 8px 28px rgba(45,184,122,.4) !important;
}
.amja-home-btn-primary:hover { transform: translateY(-3px) !important; box-shadow: 0 16px 40px rgba(45,184,122,.55) !important; color: #fff !important; -webkit-text-fill-color: #fff !important; text-decoration: none !important; }
.amja-home-btn-secondary {
    display: inline-block !important; font-family: 'Exo 2',sans-serif !important; font-weight: 700 !important;
    font-size: 15px !important; padding: 14px 32px !important; border-radius: 50px !important;
    text-decoration: none !important; transition: all .3s !important; line-height: 1.4 !important;
    background: rgba(255,255,255,.08) !important; color: #fff !important; -webkit-text-fill-color: #fff !important;
    border: 2px solid rgba(255,255,255,.35) !important;
}
.amja-home-btn-secondary:hover { background: rgba(255,255,255,.15) !important; transform: translateY(-3px) !important; text-decoration: none !important; }
.amja-home-sellos { display: flex !important; gap: 20px !important; flex-wrap: wrap !important; }
.amja-sello { display: flex !important; align-items: center !important; gap: 8px !important; color: #8bc8a8 !important; -webkit-text-fill-color: #8bc8a8 !important; font-size: .88rem !important; }
.amja-sello-ico { color: #2db87a !important; -webkit-text-fill-color: #2db87a !important; }
/* Sol animado */
.amja-home-hero-visual { flex: 0 0 360px !important; position: relative !important; display: flex !important; align-items: center !important; justify-content: center !important; height: 360px !important; }
@media(max-width:900px){ .amja-home-hero-visual{ display:none !important; } .amja-home-hero-inner{ gap:0 !important; } }
.amja-sun-orb { position: relative !important; display: flex !important; align-items: center !important; justify-content: center !important; width: 160px !important; height: 160px !important; }
.amja-sun-core { font-size: 5rem !important; z-index: 2 !important; position: relative !important; animation: amjaSpin 20s linear infinite !important; filter: drop-shadow(0 0 20px rgba(245,184,0,.6)) !important; }
@keyframes amjaSpin { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }
.amja-sun-ring { position: absolute !important; border-radius: 50% !important; border: 1.5px solid rgba(245,184,0,.25) !important; animation: amjaPulseRing 3s ease-in-out infinite !important; }
.amja-sun-ring-1 { width: 200px !important; height: 200px !important; }
.amja-sun-ring-2 { width: 270px !important; height: 270px !important; animation-delay: .8s !important; opacity: .6 !important; }
.amja-sun-ring-3 { width: 340px !important; height: 340px !important; animation-delay: 1.6s !important; opacity: .3 !important; }
@keyframes amjaPulseRing { 0%,100%{transform:scale(1);opacity:.3} 50%{transform:scale(1.05);opacity:.6} }
.amja-hero-floating-cards { position: absolute !important; inset: 0 !important; }
.amja-float-card { position: absolute !important; background: rgba(255,255,255,.08) !important; backdrop-filter: blur(8px) !important; border: 1px solid rgba(255,255,255,.15) !important; border-radius: 14px !important; padding: 14px 18px !important; text-align: center !important; min-width: 90px !important; }
.amja-float-card span { font-size: 1.6rem !important; display: block !important; margin-bottom: 4px !important; }
.amja-float-card p { color: rgba(255,255,255,.85) !important; -webkit-text-fill-color: rgba(255,255,255,.85) !important; font-size: .75rem !important; line-height: 1.3 !important; font-weight: 600 !important; display: block !important; }
.amja-float-1 { top: -6% !important; left: 50% !important; margin-left: -55px !important; animation: amjaFloat1 4s ease-in-out infinite !important; }
.amja-float-2 { bottom: 2% !important; left: -6% !important; animation: amjaFloat2 5s ease-in-out infinite !important; }
.amja-float-3 { bottom: 2% !important; right: -6% !important; animation: amjaFloat3 3.5s ease-in-out infinite !important; }
@keyframes amjaFloat1{ 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} }
@keyframes amjaFloat2{ 0%,100%{transform:translateY(0)} 50%{transform:translateY(-16px)} }
@keyframes amjaFloat3{ 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} }

/* ── HOME SECCIONES claras ── */
.amja-home-carrusel { background: #f5fafa !important; }
.amja-home-proceso  { background: #ffffff !important; }
.amja-home-cobertura{ background: #edf6f6 !important; }
.amja-home-blog     { background: #f5fafa !important; }
.amja-home-cta-mid  { background: linear-gradient(135deg,#0d4548,#1a7a80) !important; }

.amja-home-content {
    max-width: 1200px !important; margin: 0 auto !important; padding: 80px 32px !important;
    position: relative !important; z-index: 2 !important; width: 100% !important;
}
.amja-home-section-header {
    text-align: center !important;
    margin: 0 auto 52px auto !important;
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}
.amja-home-label {
    display: inline-block !important; background: linear-gradient(135deg,#12595D,#2db87a) !important;
    color: #fff !important; -webkit-text-fill-color: #fff !important;
    font-family: 'Exo 2',sans-serif !important; font-weight: 800 !important; font-size: 14px !important;
    letter-spacing: 2px !important; text-transform: uppercase !important;
    padding: 8px 22px !important; border-radius: 30px !important; margin: 0 0 14px 0 !important; line-height: 1.6 !important;
}
.amja-home-h2 {
    font-family: 'Exo 2',sans-serif !important; font-size: clamp(1.8rem,4vw,2.8rem) !important;
    font-weight: 900 !important; color: #1a2638 !important; -webkit-text-fill-color: #1a2638 !important;
    margin: 0 0 12px 0 !important; line-height: 1.2 !important;
    text-align: center !important; width: 100% !important;
}
.amja-home-h2 .amja-home-accent { color: #12595D !important; -webkit-text-fill-color: #12595D !important; }
.amja-home-intro {
    font-size: 1.05rem !important; color: #4a6880 !important; -webkit-text-fill-color: #4a6880 !important;
    max-width: 620px !important; margin: 0 auto !important; line-height: 1.75 !important;
    text-align: center !important; width: 100% !important; align-self: center !important;
}

/* ── CARRUSEL ── */
.amja-carousel-wrap { position: relative !important; overflow: hidden !important; padding: 8px 0 52px !important; }
.amja-carousel-track { display: flex !important; transition: transform .5s cubic-bezier(.23,1,.32,1) !important; will-change: transform !important; }
.amja-carousel-card {
    flex-shrink: 0 !important;
    width: 25% !important;
    padding: 0 10px !important;
    box-sizing: border-box !important;
    background: #fff !important; border: 1px solid #d4ebec !important; border-radius: 20px !important;
    transition: all .35s ease !important; box-shadow: 0 4px 20px rgba(18,89,93,.07) !important;
    position: relative !important; overflow: hidden !important;
}
.amja-carousel-card::before { content:'' !important; position:absolute !important; top:0 !important; left:0 !important; right:0 !important; height:3px !important; background:linear-gradient(90deg,#12595D,#2db87a) !important; }
.amja-carousel-card:hover { transform:translateY(-6px) !important; box-shadow:0 16px 48px rgba(18,89,93,.15) !important; border-color:#12595D !important; }
.amja-cc-icon { font-size: 2.2rem !important; display: block !important; margin-bottom: 14px !important; padding: 24px 22px 0 !important; }
.amja-cc-tag {
    display: inline-block !important; font-family:'Exo 2',sans-serif !important; font-weight:800 !important;
    font-size:10px !important; letter-spacing:1.5px !important; text-transform:uppercase !important;
    color: #12595D !important; -webkit-text-fill-color: #12595D !important;
    background: #d4ebec !important; padding: 3px 10px !important; border-radius: 20px !important;
    margin: 0 22px 12px !important; line-height: 1.6 !important; display: block !important; width: fit-content !important;
}
.amja-carousel-card h3 {
    font-family: 'Exo 2',sans-serif !important; font-weight: 800 !important;
    color: #1a2638 !important; -webkit-text-fill-color: #1a2638 !important;
    font-size: 1rem !important; margin: 0 0 10px !important; padding: 0 22px !important; display: block !important; line-height: 1.3 !important;
}
.amja-carousel-card p {
    color: #5a7a90 !important; -webkit-text-fill-color: #5a7a90 !important;
    font-size: .85rem !important; line-height: 1.65 !important; margin: 0 !important; padding: 0 22px 24px !important; display: block !important;
}
.amja-carousel-dots { position:absolute !important; bottom:8px !important; left:0 !important; right:0 !important; display:flex !important; justify-content:center !important; gap:8px !important; }
.amja-dot { width:10px !important; height:10px !important; border-radius:50% !important; background:#c8dae8 !important; border:none !important; cursor:pointer !important; transition:all .3s !important; padding:0 !important; }
.amja-dot-active { background:#12595D !important; width:28px !important; border-radius:5px !important; }
.amja-carousel-btn {
    position:absolute !important; top:40% !important; transform:translateY(-50%) !important;
    background:#fff !important; border:2px solid #d4ebec !important; border-radius:50% !important;
    width:44px !important; height:44px !important; font-size:1.4rem !important; cursor:pointer !important;
    color:#12595D !important; -webkit-text-fill-color:#12595D !important;
    display:flex !important; align-items:center !important; justify-content:center !important;
    transition:all .3s !important; z-index:10 !important; box-shadow:0 4px 16px rgba(0,0,0,.1) !important; padding:0 !important;
}
.amja-carousel-btn:hover { background:#12595D !important; color:#fff !important; -webkit-text-fill-color:#fff !important; border-color:#12595D !important; }
.amja-carousel-prev { left:-22px !important; }
.amja-carousel-next { right:-22px !important; }
@media(max-width:1200px){ .amja-carousel-card{ width:33.333% !important; } }
@media(max-width:900px) { .amja-carousel-card{ width:50% !important; } }
@media(max-width:600px) { .amja-carousel-card{ width:100% !important; } .amja-carousel-prev{ left:0 !important; } .amja-carousel-next{ right:0 !important; } }

/* ── PROCESO ── */
.amja-pasos-grid { display:grid !important; grid-template-columns:repeat(4,1fr) !important; gap:24px !important; }
@media(max-width:900px){ .amja-pasos-grid{ grid-template-columns:repeat(2,1fr) !important; } }
@media(max-width:500px){ .amja-pasos-grid{ grid-template-columns:1fr !important; } }
.amja-paso { background:#fff !important; border:1px solid #d4ebec !important; border-radius:20px !important; padding:36px 24px !important; text-align:center !important; transition:all .35s !important; box-shadow:0 4px 20px rgba(18,89,93,.05) !important; }
.amja-paso:hover { transform:translateY(-6px) !important; border-color:#12595D !important; box-shadow:0 16px 48px rgba(18,89,93,.12) !important; }
.amja-paso-num { font-family:'Exo 2',sans-serif !important; font-size:2rem !important; font-weight:900 !important; color:#12595D !important; -webkit-text-fill-color:#12595D !important; background:#d4ebec !important; width:64px !important; height:64px !important; border-radius:50% !important; display:flex !important; align-items:center !important; justify-content:center !important; margin:0 auto 18px !important; }
.amja-paso h3 { font-family:'Exo 2',sans-serif !important; font-weight:800 !important; color:#1a2638 !important; -webkit-text-fill-color:#1a2638 !important; font-size:1rem !important; margin:0 0 10px !important; display:block !important; }
.amja-paso p { color:#5a7a90 !important; -webkit-text-fill-color:#5a7a90 !important; font-size:.88rem !important; line-height:1.65 !important; margin:0 !important; display:block !important; }

/* ── CTA MID ── */
.amja-home-cta-mid-inner { max-width:800px !important; margin:0 auto !important; padding:80px 32px !important; text-align:center !important; position:relative !important; z-index:3 !important; }
.amja-home-cta-mid-inner h2 { font-family:'Exo 2',sans-serif !important; font-size:clamp(1.6rem,3vw,2.5rem) !important; font-weight:900 !important; color:#fff !important; -webkit-text-fill-color:#fff !important; margin:0 0 16px !important; display:block !important; }
.amja-home-cta-mid-inner p { color:rgba(255,255,255,.8) !important; -webkit-text-fill-color:rgba(255,255,255,.8) !important; font-size:1.05rem !important; margin:0 0 32px !important; display:block !important; }

/* ── COBERTURA ── */
.amja-cobertura-layout { display:grid !important; grid-template-columns:1fr 1fr !important; gap:60px !important; align-items:center !important; }
@media(max-width:800px){ .amja-cobertura-layout{ grid-template-columns:1fr !important; } }
.amja-mapa-wrap { display:block !important; }
.amja-rd-map-container {
    background: #e8f4f0 !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: 0 8px 32px rgba(18,89,93,.15) !important;
    border: 2px solid #d4ebec !important;
    padding: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    aspect-ratio: 600 / 340 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
.amja-rd-svg {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
}
.amja-rd-map-img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 12px !important;
}
@supports not (aspect-ratio: 1/1) {
    .amja-rd-map-container { height: 0; padding-bottom: 56.6%; position: relative; }
    .amja-rd-svg, .amja-rd-map-img { position: absolute; inset: 16px; width: calc(100% - 32px); height: calc(100% - 32px); }
}
.amja-cob-item { display:flex !important; gap:16px !important; align-items:flex-start !important; padding:14px 0 !important; border-bottom:1px solid rgba(0,0,0,.06) !important; }
.amja-cob-item:last-of-type { border-bottom:none !important; }
.amja-cob-item.amja-cob-main { background:rgba(18,89,93,.06) !important; border-radius:12px !important; padding:16px !important; margin-bottom:8px !important; border:1px solid rgba(18,89,93,.2) !important; border-bottom:1px solid rgba(18,89,93,.2) !important; }
.amja-cob-dot { width:14px !important; height:14px !important; border-radius:50% !important; flex-shrink:0 !important; margin-top:4px !important; display:block !important; }
.amja-dot-gold  { background:#f5b800 !important; box-shadow:0 0 0 4px rgba(245,184,0,.2) !important; }
.amja-dot-blue  { background:#12595D !important; box-shadow:0 0 0 4px rgba(18,89,93,.2) !important; }
.amja-dot-green { background:#2db87a !important; box-shadow:0 0 0 4px rgba(45,184,122,.2) !important; }
.amja-dot-gray  { background:#8a9aaa !important; }
.amja-cob-item strong { font-family:'Exo 2',sans-serif !important; font-weight:800 !important; color:#1a2638 !important; -webkit-text-fill-color:#1a2638 !important; font-size:.95rem !important; display:block !important; }
.amja-cob-item p { color:#5a7a90 !important; -webkit-text-fill-color:#5a7a90 !important; font-size:.85rem !important; line-height:1.5 !important; margin-top:4px !important; display:block !important; }
.amja-cob-item em { color:#12595D !important; -webkit-text-fill-color:#12595D !important; font-style:normal !important; font-size:.8rem !important; }

/* ── BLOG ── */
.amja-blog-grid { display:grid !important; grid-template-columns:repeat(3,1fr) !important; gap:28px !important; }
@media(max-width:900px){ .amja-blog-grid{ grid-template-columns:repeat(2,1fr) !important; } }
@media(max-width:600px){ .amja-blog-grid{ grid-template-columns:1fr !important; } }
.amja-blog-card { background:#fff !important; border-radius:20px !important; overflow:hidden !important; box-shadow:0 4px 20px rgba(18,89,93,.07) !important; border:1px solid #d4ebec !important; transition:all .35s !important; }
.amja-blog-card:hover { transform:translateY(-6px) !important; box-shadow:0 20px 56px rgba(18,89,93,.14) !important; }
.amja-blog-img-wrap { display:block !important; position:relative !important; height:200px !important; overflow:hidden !important; text-decoration:none !important; }
.amja-blog-img-wrap img { width:100% !important; height:100% !important; object-fit:cover !important; transition:transform .5s !important; }
.amja-blog-card:hover .amja-blog-img-wrap img { transform:scale(1.05) !important; }
.amja-blog-no-img { width:100% !important; height:100% !important; background:linear-gradient(135deg,#0d3d20,#12595D) !important; display:flex !important; align-items:center !important; justify-content:center !important; }
.amja-blog-no-img span { font-size:3.5rem !important; opacity:.4 !important; }
.amja-blog-cat { position:absolute !important; top:14px !important; left:14px !important; background:linear-gradient(135deg,#12595D,#2db87a) !important; color:#fff !important; -webkit-text-fill-color:#fff !important; font-family:'Exo 2',sans-serif !important; font-weight:800 !important; font-size:10px !important; letter-spacing:1.5px !important; text-transform:uppercase !important; padding:4px 12px !important; border-radius:20px !important; }
.amja-blog-body { padding:24px !important; }
.amja-blog-date { color:#8a9aaa !important; -webkit-text-fill-color:#8a9aaa !important; font-size:.82rem !important; margin:0 0 10px !important; display:block !important; }
.amja-blog-body h3 { font-family:'Exo 2',sans-serif !important; font-weight:800 !important; font-size:1.05rem !important; line-height:1.35 !important; margin:0 0 10px !important; display:block !important; }
.amja-blog-body h3 a { color:#1a2638 !important; -webkit-text-fill-color:#1a2638 !important; text-decoration:none !important; transition:color .3s !important; }
.amja-blog-body h3 a:hover { color:#12595D !important; -webkit-text-fill-color:#12595D !important; }
.amja-blog-exc { color:#5a7a90 !important; -webkit-text-fill-color:#5a7a90 !important; font-size:.88rem !important; line-height:1.65 !important; margin:0 0 18px !important; display:block !important; }
.amja-blog-more { color:#12595D !important; -webkit-text-fill-color:#12595D !important; font-family:'Exo 2',sans-serif !important; font-weight:700 !important; font-size:.88rem !important; text-decoration:none !important; transition:all .3s !important; display:inline-block !important; }
.amja-blog-more:hover { color:#2db87a !important; -webkit-text-fill-color:#2db87a !important; transform:translateX(4px) !important; }

/* ── SECCIONES INTERIORES (oscuras) — color #12595D ── */
.amja-sobre    { background: #0a1a1b !important; }
.amja-servicios{ background: #0d2224 !important; }
.amja-cotizacion{ background: #0a1a1b !important; }
.amja-contacto { background: #070f10 !important; }

.amja-hero-wrap {
    position:relative !important; z-index:2 !important; min-height:94vh !important;
    display:flex !important; flex-direction:column !important; align-items:center !important;
    justify-content:center !important; text-align:center !important; padding:120px 32px 80px !important;
    background:linear-gradient(180deg,rgba(10,26,27,.15) 0%,rgba(10,26,27,.9) 100%) !important;
}
.amja-hero-badge {
    position: relative !important; z-index: 5 !important;
    display:inline-block !important; background:rgba(245,184,0,.15) !important;
    border:1px solid #f5b800 !important; color:#f5b800 !important; -webkit-text-fill-color:#f5b800 !important;
    font-family:'Exo 2',sans-serif !important; font-weight:700 !important; font-size:12px !important;
    letter-spacing:2px !important; text-transform:uppercase !important; padding:8px 24px !important;
    border-radius:30px !important; margin-bottom:28px !important;
    animation:amjaPulse 3s ease-in-out infinite !important; line-height:1.6 !important;
}
@keyframes amjaPulse { 0%,100%{box-shadow:0 0 0 0 rgba(245,184,0,.3)} 50%{box-shadow:0 0 0 14px rgba(245,184,0,0)} }
.amja-hero-title { position:relative !important; z-index:5 !important; font-family:'Exo 2',sans-serif !important; font-size:clamp(2rem,6vw,5.5rem) !important; font-weight:900 !important; color:#fff !important; -webkit-text-fill-color:#fff !important; line-height:1.15 !important; margin:0 0 24px !important; display:block !important; animation:amjaFadeUp .9s ease both !important; word-break:keep-all !important; overflow-wrap:normal !important; hyphens:none !important; -webkit-hyphens:none !important; max-width:100% !important; padding:0 8px !important; box-sizing:border-box !important; }
.amja-hero-title .amja-gold { color:#f5b800 !important; -webkit-text-fill-color:#f5b800 !important; white-space:normal !important; }
@media (max-width: 480px) {
    .amja-hero-title { font-size:clamp(1.7rem,8vw,2.6rem) !important; padding:0 16px !important; }
}
@keyframes amjaFadeUp { from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} }
.amja-hero-sub { position:relative !important; z-index:5 !important; font-size:clamp(1rem,2vw,1.25rem) !important; color:#c8dae8 !important; -webkit-text-fill-color:#c8dae8 !important; max-width:680px !important; line-height:1.75 !important; margin:0 0 40px !important; display:block !important; animation:amjaFadeUp .9s .2s ease both !important; }
.amja-hero-ctas { position:relative !important; z-index:5 !important; display:flex !important; gap:16px !important; flex-wrap:wrap !important; justify-content:center !important; margin-bottom:60px !important; animation:amjaFadeUp .9s .4s ease both !important; pointer-events:auto !important; }
.amja-hero-ctas a { position:relative !important; z-index:6 !important; pointer-events:auto !important; }
.amja-hero-stats { position:relative !important; z-index:5 !important; display:flex !important; gap:40px !important; flex-wrap:wrap !important; justify-content:center !important; padding:32px 48px !important; background:rgba(255,255,255,.05) !important; backdrop-filter:blur(10px) !important; border-radius:20px !important; border:1px solid rgba(255,255,255,.1) !important; animation:amjaFadeUp .9s .6s ease both !important; }
.amja-stat { text-align:center !important; display:block !important; }
.amja-stat-num { font-family:'Exo 2',sans-serif !important; font-size:3rem !important; font-weight:900 !important; color:#f5b800 !important; -webkit-text-fill-color:#f5b800 !important; line-height:1 !important; display:inline !important; }
.amja-stat-plus { font-family:'Exo 2',sans-serif !important; font-size:1.8rem !important; font-weight:900 !important; color:#f5b800 !important; -webkit-text-fill-color:#f5b800 !important; display:inline !important; }
.amja-stat p { color:#9bb5cc !important; -webkit-text-fill-color:#9bb5cc !important; font-size:.82rem !important; margin:6px 0 0 !important; text-transform:uppercase !important; letter-spacing:1px !important; display:block !important; }

/* NOSOTROS GRID */
.amja-sn-grid { display:grid !important; grid-template-columns:1.2fr .8fr !important; gap:60px !important; align-items:start !important; }
@media(max-width:800px){ .amja-sn-grid{ grid-template-columns:1fr !important; } }
.amja-lead { font-size:1.15rem !important; color:#ffffff !important; -webkit-text-fill-color:#ffffff !important; line-height:1.8 !important; margin-bottom:18px !important; font-weight:700 !important; display:block !important; }
.amja-sn-text p { color:#e8f0f8 !important; -webkit-text-fill-color:#e8f0f8 !important; line-height:1.8 !important; margin-bottom:16px !important; display:block !important; font-size:1rem !important; }
.amja-sn-text strong { color:#fff !important; -webkit-text-fill-color:#fff !important; font-weight:700 !important; }
.amja-mision-vision { display:grid !important; grid-template-columns:1fr 1fr !important; gap:20px !important; margin-top:32px !important; }
@media(max-width:600px){ .amja-mision-vision{ grid-template-columns:1fr !important; } }
.amja-mv-card { background:linear-gradient(135deg,rgba(18,89,93,.35),rgba(13,69,72,.25)) !important; border:1px solid rgba(245,184,0,.35) !important; border-radius:16px !important; padding:28px !important; transition:all .3s !important; display:block !important; }
.amja-mv-card:hover { border-color:#f5b800 !important; background:linear-gradient(135deg,rgba(18,89,93,.5),rgba(13,69,72,.4)) !important; transform:translateY(-3px) !important; box-shadow:0 12px 32px rgba(0,0,0,.3) !important; }
.amja-mv-icon { font-size:2.4rem !important; margin-bottom:14px !important; display:block !important; }
.amja-mv-card h4 { font-family:'Exo 2',sans-serif !important; font-weight:800 !important; color:#f5b800 !important; -webkit-text-fill-color:#f5b800 !important; margin:0 0 10px !important; font-size:1.15rem !important; display:block !important; }
.amja-mv-card p { color:#ffffff !important; -webkit-text-fill-color:#ffffff !important; font-size:.97rem !important; line-height:1.7 !important; margin:0 !important; display:block !important; }
.amja-sn-values h3 { font-family:'Exo 2',sans-serif !important; font-weight:800 !important; color:#f5b800 !important; -webkit-text-fill-color:#f5b800 !important; margin:0 0 20px !important; font-size:1.4rem !important; display:block !important; letter-spacing:.5px !important; }
.amja-values-list { display:flex !important; flex-direction:column !important; gap:8px !important; padding:0 !important; margin:0 !important; list-style:none !important; }
.amja-value-item { display:flex !important; gap:14px !important; align-items:flex-start !important; background:rgba(255,255,255,.06) !important; border-radius:12px !important; padding:14px 18px !important; border:1px solid rgba(18,89,93,.3) !important; transition:all .3s !important; list-style:none !important; }
.amja-value-item:hover { background:rgba(18,89,93,.3) !important; border-color:rgba(245,184,0,.5) !important; transform:translateX(6px) !important; }
.amja-value-icon { font-size:1.5rem !important; flex-shrink:0 !important; display:block !important; }
.amja-value-item strong { font-family:'Exo 2',sans-serif !important; color:#ffffff !important; -webkit-text-fill-color:#ffffff !important; font-size:1rem !important; display:block !important; font-weight:700 !important; }
.amja-value-item p { color:#c8dae8 !important; -webkit-text-fill-color:#c8dae8 !important; font-size:.88rem !important; margin:3px 0 0 !important; display:block !important; }

/* SERVICIOS GRID interior */
.amja-services-grid { display:grid !important; grid-template-columns:repeat(4,1fr) !important; gap:22px !important; margin-bottom:48px !important; }
@media(max-width:1000px){ .amja-services-grid{ grid-template-columns:repeat(2,1fr) !important; } }
@media(max-width:600px){ .amja-services-grid{ grid-template-columns:1fr !important; } }
.amja-service-card { background:rgba(255,255,255,.04) !important; border:1px solid rgba(255,255,255,.08) !important; border-radius:20px !important; padding:28px 22px !important; position:relative !important; transition:all .4s !important; overflow:hidden !important; display:block !important; }
.amja-service-card::before { content:'' !important; position:absolute !important; top:0 !important; left:0 !important; right:0 !important; height:3px !important; background:linear-gradient(90deg,#12595D,#2db87a) !important; transform:scaleX(0) !important; transition:transform .4s ease !important; transform-origin:left !important; }
.amja-service-card:hover::before { transform:scaleX(1) !important; }
.amja-service-card:hover { transform:translateY(-8px) !important; border-color:rgba(18,89,93,.4) !important; background:rgba(18,89,93,.15) !important; box-shadow:0 24px 64px rgba(0,0,0,.4) !important; }
.amja-service-tag { position:absolute !important; top:14px !important; right:14px !important; font-size:10px !important; font-weight:800 !important; letter-spacing:1.5px !important; text-transform:uppercase !important; color:#f5b800 !important; -webkit-text-fill-color:#f5b800 !important; background:transparent !important; border:1.5px solid #f5b800 !important; padding:3px 10px !important; border-radius:20px !important; font-family:'Exo 2',sans-serif !important; line-height:1.6 !important; }
.amja-service-icon { font-size:2.2rem !important; margin-bottom:16px !important; display:block !important; }
.amja-service-card h3 { font-family:'Exo 2',sans-serif !important; font-weight:900 !important; color:#ffffff !important; -webkit-text-fill-color:#ffffff !important; font-size:1.08rem !important; margin:0 0 10px !important; display:block !important; line-height:1.3 !important; letter-spacing:.3px !important; text-shadow:0 1px 8px rgba(0,0,0,.4) !important; }
.amja-service-card p { color:#e0eaf2 !important; -webkit-text-fill-color:#e0eaf2 !important; font-size:.88rem !important; line-height:1.7 !important; margin:0 !important; display:block !important; }
.amja-service-line { height:2px !important; background:linear-gradient(90deg,#12595D,transparent) !important; margin-top:20px !important; border-radius:2px !important; display:block !important; }
.amja-cta-banner { background:linear-gradient(135deg,#12595D 0%,#0a3d40 100%) !important; border-radius:24px !important; padding:48px !important; display:flex !important; align-items:center !important; justify-content:space-between !important; gap:32px !important; flex-wrap:wrap !important; }
.amja-cta-text h3 { font-family:'Exo 2',sans-serif !important; font-size:1.7rem !important; font-weight:900 !important; color:#fff !important; -webkit-text-fill-color:#fff !important; margin:0 0 8px !important; display:block !important; }
.amja-cta-text p { color:rgba(255,255,255,.8) !important; -webkit-text-fill-color:rgba(255,255,255,.8) !important; margin:0 !important; font-size:1rem !important; display:block !important; }

/* COTIZACIÓN FORM */
.amja-cotiz-wrap { display:grid !important; grid-template-columns:320px 1fr !important; gap:56px !important; align-items:start !important; }
@media(max-width:900px){ .amja-cotiz-wrap{ grid-template-columns:1fr !important; } }
.amja-cotiz-info h3 { font-family:'Exo 2',sans-serif !important; font-weight:900 !important; font-size:1.6rem !important; color:#fff !important; -webkit-text-fill-color:#fff !important; margin:0 0 28px !important; line-height:1.2 !important; display:block !important; }
.amja-cotiz-list { list-style:none !important; padding:0 !important; margin:0 0 32px !important; }
.amja-cotiz-list li { display:flex !important; gap:12px !important; align-items:flex-start !important; color:#c8dae8 !important; -webkit-text-fill-color:#c8dae8 !important; padding:9px 0 !important; border-bottom:1px solid rgba(255,255,255,.06) !important; font-size:.93rem !important; list-style:none !important; }
.amja-cotiz-list li span { color:#12595D !important; -webkit-text-fill-color:#12595D !important; font-weight:700 !important; flex-shrink:0 !important; }
.amja-cotiz-contact-quick p { color:#6b7a8d !important; -webkit-text-fill-color:#6b7a8d !important; font-size:.82rem !important; margin-bottom:12px !important; text-transform:uppercase !important; letter-spacing:1px !important; display:block !important; }
.amja-cotiz-form-wrap { background:rgba(255,255,255,.04) !important; border:1px solid rgba(255,255,255,.08) !important; border-radius:24px !important; padding:36px !important; }
.amja-cotiz-form { display:flex !important; flex-direction:column !important; gap:18px !important; }
.amja-form-row { display:grid !important; grid-template-columns:1fr 1fr !important; gap:18px !important; }
@media(max-width:600px){ .amja-form-row{ grid-template-columns:1fr !important; } }
.amja-form-group { display:flex !important; flex-direction:column !important; gap:7px !important; }
.amja-form-group label { font-family:'Exo 2',sans-serif !important; font-weight:700 !important; font-size:11px !important; letter-spacing:1.5px !important; text-transform:uppercase !important; color:#ffffff !important; -webkit-text-fill-color:#ffffff !important; display:block !important; margin:0 !important; }
.amja-form-group .req { color:#ff6b1a !important; -webkit-text-fill-color:#ff6b1a !important; }
.amja-form-group input,.amja-form-group select,.amja-form-group textarea { background:rgba(255,255,255,.07) !important; border:1px solid rgba(255,255,255,.13) !important; border-radius:10px !important; padding:13px 16px !important; color:#fff !important; -webkit-text-fill-color:#fff !important; font-family:'Nunito Sans',sans-serif !important; font-size:.93rem !important; transition:border-color .3s,box-shadow .3s !important; outline:none !important; -webkit-appearance:none !important; appearance:none !important; width:100% !important; box-shadow:none !important; line-height:1.5 !important; background-image:none !important; }
.amja-form-group input::placeholder,.amja-form-group textarea::placeholder { color:#4a607a !important; -webkit-text-fill-color:#4a607a !important; }
.amja-form-group input:focus,.amja-form-group select:focus,.amja-form-group textarea:focus { border-color:#12595D !important; box-shadow:0 0 0 3px rgba(18,89,93,.25) !important; outline:none !important; }
.amja-form-group select option { background:#0a1a1b !important; color:#fff !important; }
/* Corrige el autocompletado del navegador (Chrome/Edge/Safari) que impone fondo blanco */
.amja-form-group input:-webkit-autofill,
.amja-form-group input:-webkit-autofill:hover,
.amja-form-group input:-webkit-autofill:focus,
.amja-form-group input:-webkit-autofill:active,
.amja-form-group textarea:-webkit-autofill,
.amja-form-group select:-webkit-autofill {
    -webkit-text-fill-color: #fff !important;
    -webkit-box-shadow: 0 0 0 1000px rgba(18,89,93,.25) inset !important;
    box-shadow: 0 0 0 1000px rgba(18,89,93,.25) inset !important;
    background-color: rgba(18,89,93,.25) !important;
    caret-color: #fff !important;
    transition: background-color 5000s ease-in-out 0s !important;
}
.amja-form-group input:autofill {
    -webkit-text-fill-color: #fff !important;
    background-color: rgba(18,89,93,.25) !important;
    color: #fff !important;
}
.amja-form-msg { margin-top:12px !important; padding:14px 18px !important; border-radius:10px !important; font-weight:600 !important; font-size:.93rem !important; }

/* CONTACTO */
.amja-contact-form-wrap { background:rgba(255,255,255,.04) !important; border:1px solid rgba(255,255,255,.08) !important; border-radius:24px !important; padding:40px !important; margin:48px 0 !important; }
.amja-contact-form-title { font-family:'Exo 2',sans-serif !important; font-size:1.4rem !important; font-weight:800 !important; color:#fff !important; -webkit-text-fill-color:#fff !important; margin:0 0 28px !important; display:block !important; }
.amja-cf-icon { filter:sepia(1) saturate(8) hue-rotate(5deg) brightness(1.1) !important; display:inline-block !important; }
.amja-contact-grid { display:grid !important; grid-template-columns:repeat(4,1fr) !important; gap:22px !important; margin-bottom:48px !important; }
@media(max-width:900px){ .amja-contact-grid{ grid-template-columns:repeat(2,1fr) !important; } }
@media(max-width:500px){ .amja-contact-grid{ grid-template-columns:1fr !important; } }
.amja-contact-card { display:block !important; background:rgba(255,255,255,.04) !important; border:1px solid rgba(255,255,255,.08) !important; border-radius:20px !important; padding:36px 22px !important; text-align:center !important; text-decoration:none !important; transition:all .4s ease !important; }
.amja-contact-card:hover { transform:translateY(-8px) !important; text-decoration:none !important; }
.amja-contact-phone:hover { border-color:#12595D !important; background:rgba(18,89,93,.15) !important; }
.amja-contact-phone .amja-contact-icon { filter:grayscale(1) brightness(10) !important; }
.amja-contact-wa:hover   { border-color:#25d366 !important; background:rgba(37,211,102,.1) !important; }
.amja-contact-email:hover{ border-color:#f5b800 !important; background:rgba(245,184,0,.08) !important; }
.amja-contact-loc:hover  { border-color:#2db87a !important; background:rgba(45,184,122,.1) !important; }
.amja-contact-icon { font-size:2.8rem !important; margin-bottom:16px !important; display:block !important; }
.amja-contact-card h4 { font-family:'Exo 2',sans-serif !important; font-weight:800 !important; color:#fff !important; -webkit-text-fill-color:#fff !important; margin:0 0 10px !important; font-size:1.15rem !important; display:block !important; }
.amja-contact-card p { color:#ffffff !important; -webkit-text-fill-color:#ffffff !important; font-size:.97rem !important; margin:0 0 16px !important; word-break:break-word !important; display:block !important; }
.amja-contact-cta { font-family:'Exo 2',sans-serif !important; font-weight:700 !important; font-size:11px !important; letter-spacing:2px !important; text-transform:uppercase !important; color:#f5b800 !important; -webkit-text-fill-color:#f5b800 !important; display:block !important; }
.amja-map-wrap { border-radius:20px !important; overflow:hidden !important; margin-bottom:48px !important; box-shadow:0 24px 64px rgba(0,0,0,.5) !important; display:block !important; }
.amja-footer-strip { border-top:1px solid rgba(255,255,255,.08) !important; padding-top:28px !important; display:flex !important; justify-content:space-between !important; flex-wrap:wrap !important; gap:12px !important; margin:0 !important; }
.amja-footer-strip p { color:#4a607a !important; -webkit-text-fill-color:#4a607a !important; font-size:.83rem !important; margin:0 !important; display:block !important; }
.amja-footer-strip a { color:#12595D !important; -webkit-text-fill-color:#12595D !important; text-decoration:none !important; }
.amja-footer-strip a:hover { color:#f5b800 !important; -webkit-text-fill-color:#f5b800 !important; }

@media(max-width:640px){
    .amja-hero-stats{ padding:24px !important; gap:24px !important; }
    .amja-stat-num{ font-size:2.2rem !important; }
    .amja-cta-banner{ padding:32px 24px !important; }
    .amja-cotiz-form-wrap{ padding:24px !important; }
    .amja-contact-form-wrap{ padding:24px !important; }
    .amja-home-hero-inner{ flex-direction:column !important; padding:100px 24px 60px !important; }
}

/* ══════════════════════════════════════════════════
   GALERÍA DE PROYECTOS
══════════════════════════════════════════════════ */
.amja-galeria-sec {
    background: linear-gradient(160deg, #071212 0%, #0a1e1f 50%, #071212 100%) !important;
    position: relative !important;
}
.amja-galeria-particles {
    position: absolute !important; inset: 0 !important; z-index: 1 !important; pointer-events: none !important;
}
/* Cuadrícula */
.amja-galeria-grid {
    display: grid !important;
    gap: 28px !important;
    position: relative !important; z-index: 2 !important;
}
.amja-galeria-cols-2 { grid-template-columns: repeat(2, 1fr) !important; }
.amja-galeria-cols-3 { grid-template-columns: repeat(3, 1fr) !important; }
.amja-galeria-cols-4 { grid-template-columns: repeat(4, 1fr) !important; }
@media (max-width: 960px) {
    .amja-galeria-cols-3, .amja-galeria-cols-4 { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 560px) {
    .amja-galeria-cols-2, .amja-galeria-cols-3, .amja-galeria-cols-4 { grid-template-columns: 1fr !important; }
}
/* Tarjeta */
.amja-galeria-item {
    background: rgba(255,255,255,.04) !important;
    border: 1px solid rgba(18,89,93,.3) !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    cursor: pointer !important;
    transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease !important;
}
.amja-galeria-item:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 24px 60px rgba(0,0,0,.5) !important;
    border-color: rgba(245,184,0,.5) !important;
}
/* Thumbnail */
.amja-galeria-thumb {
    position: relative !important;
    overflow: hidden !important;
    aspect-ratio: 4/3 !important;
}
.amja-galeria-thumb img {
    width: 100% !important; height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform .5s ease !important;
}
.amja-galeria-item:hover .amja-galeria-thumb img { transform: scale(1.07) !important; }
/* Overlay */
.amja-galeria-overlay {
    position: absolute !important; inset: 0 !important;
    background: linear-gradient(to top, rgba(18,89,93,.85) 0%, rgba(0,0,0,.3) 60%, transparent 100%) !important;
    opacity: 0 !important;
    transition: opacity .35s ease !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
}
.amja-galeria-item:hover .amja-galeria-overlay { opacity: 1 !important; }
.amja-galeria-overlay-inner {
    display: flex !important; flex-direction: column !important;
    align-items: center !important; gap: 8px !important;
}
.amja-galeria-zoom {
    font-size: 2rem !important;
    display: block !important;
    filter: drop-shadow(0 2px 8px rgba(0,0,0,.6)) !important;
    animation: amjaGalZoom .3s ease !important;
}
@keyframes amjaGalZoom { from { transform: scale(.7); opacity: 0; } to { transform: scale(1); opacity: 1; } }
.amja-galeria-count {
    background: rgba(245,184,0,.9) !important;
    color: #0a1628 !important; -webkit-text-fill-color: #0a1628 !important;
    font-family: 'Exo 2', sans-serif !important;
    font-weight: 800 !important; font-size: 11px !important;
    padding: 3px 12px !important; border-radius: 20px !important;
    letter-spacing: 1px !important;
}
/* Info */
.amja-galeria-info {
    padding: 18px 20px 22px !important;
}
.amja-galeria-info h3 {
    font-family: 'Exo 2', sans-serif !important;
    font-size: 1.02rem !important; font-weight: 800 !important;
    color: #ffffff !important; -webkit-text-fill-color: #ffffff !important;
    margin: 0 0 8px !important; line-height: 1.3 !important; display: block !important;
}
.amja-galeria-info p {
    font-size: .85rem !important;
    color: #a0c4c8 !important; -webkit-text-fill-color: #a0c4c8 !important;
    line-height: 1.6 !important; margin: 0 !important; display: block !important;
}

/* ══════════════════════════════════════════════════
   LIGHTBOX
══════════════════════════════════════════════════ */
.amja-lightbox {
    position: fixed !important; inset: 0 !important;
    z-index: 999999 !important;
    display: none !important; align-items: center !important; justify-content: center !important;
}
.amja-lightbox.amja-lb-open {
    display: flex !important;
}
.amja-lb-backdrop {
    position: absolute !important; inset: 0 !important;
    background: rgba(4,10,14,.95) !important;
    backdrop-filter: blur(6px) !important;
}
.amja-lb-container {
    position: relative !important; z-index: 2 !important;
    width: 92% !important; max-width: 960px !important;
    max-height: 92vh !important;
    background: #0d2224 !important;
    border: 1px solid rgba(18,89,93,.5) !important;
    border-radius: 20px !important;
    padding: 32px 32px 24px !important;
    display: flex !important; flex-direction: column !important; gap: 16px !important;
    box-shadow: 0 40px 100px rgba(0,0,0,.7) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}
/* Cerrar */
.amja-lb-close {
    position: absolute !important; top: 14px !important; right: 18px !important;
    background: rgba(255,255,255,.1) !important; border: 1px solid rgba(255,255,255,.15) !important;
    color: #fff !important; -webkit-text-fill-color: #fff !important;
    width: 36px !important; height: 36px !important; border-radius: 50% !important;
    font-size: 20px !important; cursor: pointer !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    transition: background .2s !important; padding: 0 !important; line-height: 1 !important;
}
.amja-lb-close:hover { background: rgba(245,184,0,.3) !important; border-color: #f5b800 !important; }
/* Header */
.amja-lb-header { padding-right: 40px !important; }
.amja-lb-titulo {
    font-family: 'Exo 2', sans-serif !important; font-size: 1.25rem !important;
    font-weight: 900 !important; color: #f5b800 !important; -webkit-text-fill-color: #f5b800 !important;
    margin: 0 0 4px !important; display: block !important;
}
.amja-lb-desc {
    font-size: .88rem !important; color: #a0c4c8 !important; -webkit-text-fill-color: #a0c4c8 !important;
    margin: 0 !important; display: block !important;
}
/* Stage */
.amja-lb-stage {
    display: flex !important; align-items: center !important; gap: 12px !important;
    flex: 1 !important; min-height: 0 !important;
}
.amja-lb-img-wrap {
    flex: 1 !important; position: relative !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    max-height: 52vh !important;
    background: rgba(0,0,0,.3) !important; border-radius: 12px !important; overflow: hidden !important;
}
.amja-lb-img {
    max-width: 100% !important; max-height: 52vh !important;
    object-fit: contain !important; display: block !important;
    transition: opacity .3s ease !important;
    border-radius: 10px !important;
}
/* Spinner */
.amja-lb-spinner {
    position: absolute !important; inset: 0 !important;
    display: none !important; align-items: center !important; justify-content: center !important;
}
.amja-lb-spinner div {
    width: 36px !important; height: 36px !important;
    border: 3px solid rgba(255,255,255,.15) !important;
    border-top-color: #f5b800 !important; border-radius: 50% !important;
    animation: amjaLbSpin .7s linear infinite !important;
}
@keyframes amjaLbSpin { to { transform: rotate(360deg); } }
/* Prev / Next */
.amja-lb-prev, .amja-lb-next {
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    color: #fff !important; -webkit-text-fill-color: #fff !important;
    width: 48px !important; height: 48px !important; border-radius: 50% !important;
    font-size: 1.8rem !important; cursor: pointer !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    transition: all .25s !important; flex-shrink: 0 !important; padding: 0 !important;
    line-height: 1 !important;
}
.amja-lb-prev:hover, .amja-lb-next:hover {
    background: rgba(245,184,0,.25) !important; border-color: #f5b800 !important;
    transform: scale(1.1) !important;
}
/* Thumbnails */
.amja-lb-thumbnails {
    display: flex !important; gap: 8px !important; flex-wrap: wrap !important;
    justify-content: center !important; max-height: 80px !important; overflow-y: auto !important;
}
.amja-lb-thumb {
    width: 64px !important; height: 48px !important;
    object-fit: cover !important; border-radius: 6px !important; cursor: pointer !important;
    border: 2px solid transparent !important; opacity: .6 !important;
    transition: all .25s !important; display: block !important;
}
.amja-lb-thumb:hover { opacity: 1 !important; }
.amja-lb-thumb-active { border-color: #f5b800 !important; opacity: 1 !important; }
/* Counter */
.amja-lb-counter {
    text-align: center !important; font-size: .8rem !important;
    color: #6a8a90 !important; -webkit-text-fill-color: #6a8a90 !important;
    margin: 0 !important; display: block !important; font-family: 'Exo 2', sans-serif !important;
}
@media (max-width: 600px) {
    .amja-lb-container { padding: 20px 16px 16px !important; }
    .amja-lb-prev, .amja-lb-next { width: 38px !important; height: 38px !important; font-size: 1.4rem !important; }
}
