/* ═══════════════════════════════════════════════════════════════
   LEGION COIN — styles.css  v3.0  Premium Evolution
   ═══════════════════════════════════════════════════════════════ */

/* ── COOKIE BANNER — toast esquina inferior derecha ─────────── */
#cookie-overlay{display:none;position:fixed;bottom:0;left:0;right:0;top:0;z-index:99998;pointer-events:none;}
#cookie-overlay.show{display:block;}
#cookie-banner{
  position:fixed;right:24px;bottom:24px;left:auto;
  width:min(420px,calc(100vw - 48px));
  padding:16px 20px;border-radius:12px;
  box-shadow:0 12px 40px rgba(0,0,0,.5);
  background:#111;color:var(--wh);
  border:1px solid rgba(201,168,76,0.2);
  z-index:99999;pointer-events:all;
  animation:ckSlide .35s ease;
}
@keyframes ckSlide{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
#cookie-banner h4{font-family:'Cinzel',sans-serif;font-size:0.62rem;font-weight:700;color:var(--g1);text-transform:uppercase;letter-spacing:1px;margin:0 0 6px;}
#cookie-banner p{font-size:0.7rem;color:rgba(245,240,232,0.6);margin:0 0 12px;line-height:1.5;}
.cookie-actions{display:flex;gap:8px;flex-wrap:wrap;}
#cookie-accept,#cookie-reject{padding:8px 18px;font-size:0.55rem;white-space:nowrap;}
@media(max-width:640px){
  #cookie-banner{right:12px;bottom:12px;width:calc(100vw - 24px);font-size:13px;}
  #cookie-accept,#cookie-reject{padding:6px 12px;font-size:0.5rem;}
}

/* ── VARIABLES ──────────────────────────────────────────────── */
:root{
  --g1:#C9A84C;--g2:#E8C97A;--g3:#8B6914;
  --dk:#0C0C0C;--dk2:#080808;--dk3:#141414;--dk4:#1C1C1C;
  --bg2:#0F0F0F;--bg3:#111111;
  --wh:#F5F0E8;--gr:#8A8580;--border:rgba(201,168,76,0.12);
  --max-w:1640px;
  --gold-grd:linear-gradient(135deg,var(--g2),var(--g1),var(--g3));
}

/* ── RESET ──────────────────────────────────────────────────── */
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{background:var(--dk);color:var(--wh);font-family:'Raleway',sans-serif;font-weight:300;overflow-x:hidden;}
a{text-decoration:none;color:inherit;}
.gold{background:var(--gold-grd);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}

/* ── LANG TOGGLE ────────────────────────────────────────────── */
body.en .es{display:none;}
body:not(.en) .en{display:none;}

/* ── SKIP LINK ──────────────────────────────────────────────── */
.skip-link{position:absolute;top:-100px;left:0;background:var(--g1);color:var(--dk);font-family:'Cinzel',sans-serif;font-size:0.75rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:10px 20px;z-index:9999;transition:top 0.2s;}
.skip-link:focus{top:0;}

/* ── NAV ────────────────────────────────────────────────────── */
#nav{position:fixed;top:0;left:0;right:0;z-index:900;background:rgba(6,6,6,0.96);border-bottom:1px solid var(--border);backdrop-filter:blur(20px);height:88px;display:flex;align-items:center;padding:0 48px;gap:0;transition:all 0.3s;}
#nav.scrolled{height:72px;background:rgba(4,4,4,0.98);}
#nav.scrolled .nav-more-btn{height:72px;}
#nav.scrolled .nav-links a{height:72px;}
#nav.scrolled .nav-dropdown{top:71px;}
.nav-logo-group{display:flex;align-items:center;gap:12px;flex-shrink:0;}
.nav-logo{display:flex;align-items:center;text-decoration:none;}
.nav-logo img{height:80px;filter:drop-shadow(0 0 14px rgba(201,168,76,0.5));transition:all 0.3s;}
.nav-logo:hover img{filter:drop-shadow(0 0 26px rgba(201,168,76,0.9));transform:scale(1.04);}
.nav-links{flex:1;display:flex;list-style:none;gap:0;justify-content:center;}
.nav-links a{padding:0 14px;height:88px;display:flex;align-items:center;font-family:'Raleway',sans-serif;font-size:0.62rem;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:rgba(245,240,232,0.75);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all 0.25s;white-space:nowrap;}
.nav-links a:hover,.nav-links a.active{color:var(--g1);border-bottom-color:var(--g1);}
.nav-right{flex-shrink:0;display:flex;align-items:center;gap:12px;}
.nav-pay{background:transparent;color:var(--g1);border:1px solid rgba(201,168,76,0.35);font-family:'Cinzel',sans-serif;font-weight:700;font-size:0.6rem;letter-spacing:2px;text-transform:uppercase;padding:9px 16px;cursor:pointer;transition:all 0.25s;}
.nav-pay:hover{background:rgba(201,168,76,0.08);border-color:var(--g1);}
.nav-cta{background:var(--g1);color:var(--dk);font-family:'Cinzel',sans-serif;font-weight:700;font-size:0.6rem;letter-spacing:2px;text-transform:uppercase;padding:10px 22px;text-decoration:none;transition:all 0.25s;box-shadow:0 4px 20px rgba(201,168,76,0.3);}
.nav-cta:hover{background:var(--g2);transform:translateY(-1px);box-shadow:0 8px 28px rgba(201,168,76,0.4);}
.nav-lang{display:flex;gap:5px;}
.lbtn{background:none;border:1px solid rgba(255,255,255,0.18);padding:4px 8px;cursor:pointer;transition:all 0.2s;display:flex;align-items:center;justify-content:center;font-family:'Cinzel',sans-serif;font-size:0.58rem;font-weight:700;letter-spacing:1px;color:rgba(245,240,232,0.55);}
.lbtn.on{border-color:var(--g1);color:var(--g1);}
.lbtn:hover{border-color:rgba(201,168,76,0.5);color:var(--wh);}
/* Dropdown Más */
.nav-more-wrap{position:relative;list-style:none;}
.nav-more-btn{background:none;border:none;cursor:pointer;padding:0 14px;height:88px;display:flex;align-items:center;font-family:'Raleway',sans-serif;font-size:0.62rem;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:rgba(245,240,232,0.75);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all 0.25s;white-space:nowrap;gap:4px;}
.nav-more-btn:hover,.nav-more-btn.open{color:var(--g1);border-bottom-color:var(--g1);}
.nav-dropdown{visibility:hidden;opacity:0;pointer-events:none;position:absolute;top:87px;left:50%;transform:translateX(-50%);background:#060606;border:1px solid rgba(201,168,76,0.25);border-top:2px solid var(--g1);min-width:190px;z-index:9999;transition:opacity .18s ease,visibility .18s ease;display:flex;flex-direction:column;}
.nav-dropdown.open{visibility:visible;opacity:1;pointer-events:auto;}
.nav-dropdown a{display:block;padding:14px 22px;font-family:'Raleway',sans-serif;font-size:0.6rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:rgba(245,240,232,0.8)!important;border-bottom:1px solid rgba(255,255,255,0.06);transition:color .2s,padding-left .2s;white-space:nowrap;text-decoration:none;}
.nav-dropdown a:last-child{border-bottom:none;}
.nav-dropdown a:hover{color:var(--g1)!important;padding-left:28px;}
.nav-ham{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:6px;margin-left:auto;}
.nav-ham span{display:block;width:22px;height:1.5px;background:var(--g1);border-radius:1px;transition:all 0.3s;}
.nav-ham.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}
.nav-ham.open span:nth-child(2){opacity:0;}
.nav-ham.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);}
#mob-drawer{display:none;position:fixed;top:88px;left:0;right:0;width:100%;z-index:899;background:rgba(4,4,4,0.99);border-bottom:1px solid var(--border);flex-direction:column;padding:8px 20px 20px;}
#mob-drawer.open{display:flex;}
#mob-drawer a{padding:13px 10px;font-family:'Raleway',sans-serif;font-size:0.7rem;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:#ffffff;border-bottom:1px solid rgba(255,255,255,0.04);transition:color 0.2s;}
#mob-drawer a:hover{color:var(--g1);}
#mob-drawer .mob-cta{margin-top:10px;background:var(--g1);color:var(--dk)!important;text-align:center;padding:13px!important;font-family:'Cinzel',sans-serif;font-size:0.65rem;font-weight:700;letter-spacing:2px;border-bottom:none!important;}

/* ── HERO ───────────────────────────────────────────────────── */
#inicio{position:relative;min-height:auto;display:flex;align-items:center;overflow:hidden;padding:96px 0 64px;}
.h-bg{
  position:absolute;inset:0;
  background:
    radial-gradient(ellipse 55% 70% at 75% 50%,rgba(201,168,76,0.08) 0%,transparent 60%),
    radial-gradient(ellipse 30% 50% at 20% 80%,rgba(139,105,20,0.05) 0%,transparent 55%),
    radial-gradient(ellipse 60% 40% at 50% 0%,rgba(20,14,0,0.6) 0%,transparent 70%),
    linear-gradient(160deg,#050503 0%,#0A0805 40%,#050503 100%);
}
.h-grid{position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 100px,rgba(201,168,76,0.008) 100px,rgba(201,168,76,0.008) 101px),repeating-linear-gradient(90deg,transparent,transparent 100px,rgba(201,168,76,0.005) 100px,rgba(201,168,76,0.005) 101px);pointer-events:none;}
.h-content{position:relative;z-index:2;display:grid;grid-template-columns:5fr 7fr;align-items:center;max-width:var(--max-w);margin:0 auto;padding:60px 56px;gap:0;}
.h-eyebrow{font-size:0.56rem;letter-spacing:7px;text-transform:uppercase;color:var(--g1);font-weight:600;margin-bottom:22px;display:flex;align-items:center;gap:14px;}
.h-eyebrow::before{content:'';flex:0 0 32px;height:1px;background:var(--g1);opacity:0.45;}
h1.h-title{font-family:'Cinzel',sans-serif;font-size:clamp(3rem,5.5vw,5.5rem);font-weight:900;line-height:0.95;letter-spacing:2px;text-transform:uppercase;color:var(--wh);margin-bottom:10px;}
.h-tag{font-family:'Cinzel',sans-serif;font-size:0.65rem;letter-spacing:6px;text-transform:uppercase;color:var(--g1);margin-bottom:28px;opacity:0.85;}
.h-line{width:56px;height:1px;background:linear-gradient(to right,var(--g1),transparent);margin-bottom:24px;}
.h-sub{font-size:0.92rem;color:rgba(245,240,232,0.78);line-height:1.9;margin-bottom:36px;max-width:420px;}
.h-sub em{color:var(--g2);font-style:normal;}
.h-btns{display:flex;gap:14px;flex-wrap:wrap;}
.btn-g{display:inline-flex;align-items:center;gap:8px;background:var(--gold-grd);color:var(--dk);font-family:'Cinzel',sans-serif;font-weight:700;font-size:0.63rem;letter-spacing:2px;text-transform:uppercase;padding:14px 30px;border:none;cursor:pointer;transition:all 0.3s;box-shadow:0 6px 24px rgba(201,168,76,0.32);}
.btn-g:hover{background:linear-gradient(135deg,var(--g2),var(--g1));transform:translateY(-2px);box-shadow:0 12px 32px rgba(201,168,76,0.45);}
.btn-o{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--wh);border:1px solid rgba(245,240,232,0.2);font-family:'Cinzel',sans-serif;font-weight:600;font-size:0.63rem;letter-spacing:2px;text-transform:uppercase;padding:13px 24px;cursor:pointer;transition:all 0.25s;}
.btn-o:hover{border-color:var(--g1);color:var(--g1);}

/* Hero derecha — imagen inmersiva */
.h-right{display:flex;align-items:center;justify-content:center;position:relative;height:100%;}
.coin-wrap{position:relative;animation:cFloat 6s ease-in-out infinite;}
@keyframes cFloat{0%,100%{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-22px) rotate(1.5deg)}}
.coin-wrap img{
  width:min(520px,50vw);max-width:100%;
  filter:
    drop-shadow(0 24px 80px rgba(201,168,76,0.4))
    drop-shadow(0 0 60px rgba(201,168,76,0.15))
    drop-shadow(0 60px 120px rgba(0,0,0,0.8));
}
.c-ring{position:absolute;border-radius:50%;border:1px solid rgba(201,168,76,0.07);top:50%;left:50%;transform:translate(-50%,-50%);animation:rRot 40s linear infinite;pointer-events:none;}
.c-ring2{position:absolute;border-radius:50%;border:1px dashed rgba(201,168,76,0.03);top:50%;left:50%;transform:translate(-50%,-50%);animation:rRot 60s linear infinite reverse;pointer-events:none;}
@keyframes rRot{to{transform:translate(-50%,-50%) rotate(360deg)}}

/* Brillo ambiental detrás de la moneda */
.h-right::before{
  content:'';position:absolute;
  width:500px;height:500px;
  background:radial-gradient(circle,rgba(201,168,76,0.08) 0%,transparent 70%);
  top:50%;left:50%;transform:translate(-50%,-50%);
  pointer-events:none;
}

/* ── FADE-IN ON SCROLL ──────────────────────────────────────── */
.fade-up{opacity:0;transform:translateY(32px);transition:opacity 0.7s ease,transform 0.7s ease;}
.fade-up.vis{opacity:1;transform:none;}
.fade-up.delay-1{transition-delay:0.15s;}
.fade-up.delay-2{transition-delay:0.3s;}
.fade-up.delay-3{transition-delay:0.45s;}
.fade-left{opacity:0;transform:translateX(-32px);transition:opacity 0.7s ease,transform 0.7s ease;}
.fade-left.vis{opacity:1;transform:none;}
.fade-right{opacity:0;transform:translateX(32px);transition:opacity 0.7s ease,transform 0.7s ease;}
.fade-right.vis{opacity:1;transform:none;}

/* ── SECTIONS ───────────────────────────────────────────────── */
.sec{padding:100px 0;}
.wrap{max-width:var(--max-w);margin:0 auto;padding:0 56px;}
.sec-hdr{text-align:center;margin-bottom:64px;}
.s-ey{font-size:0.54rem;letter-spacing:7px;text-transform:uppercase;color:var(--g1);font-weight:600;margin-bottom:14px;display:flex;align-items:center;justify-content:center;gap:14px;}
.s-ey::before,.s-ey::after{content:'';width:40px;height:1px;background:var(--g1);opacity:0.3;}
h2.sh{font-family:'Cinzel',sans-serif;font-size:clamp(1.9rem,3vw,2.8rem);font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--wh);line-height:1.1;}
.s-sub{font-size:0.85rem;color:rgba(245,240,232,0.65);line-height:1.85;max-width:540px;margin:14px auto 0;}

/* ── PANELS — variación de fondos ───────────────────────────── */
.panel{background:var(--dk);padding-top:0;scroll-margin-top:88px;}
#sec-home{scroll-margin-top:88px;}
.panel.alt{background:var(--bg2);}
.panel.alt2{background:var(--bg3);}

/* ── GALLERY ────────────────────────────────────────────────── */
.gal-filters{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:36px;}
.gal-pill{background:transparent;border:1px solid rgba(201,168,76,0.2);color:var(--gr);font-family:'Cinzel',sans-serif;font-size:0.6rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;padding:9px 20px;cursor:pointer;transition:all 0.25s;}
.gal-pill:hover{border-color:var(--g1);color:var(--g1);}
.gal-pill.active{background:var(--g1);color:var(--dk);border-color:var(--g1);}
.gal{display:grid;grid-template-columns:repeat(5,1fr);grid-auto-rows:280px;gap:6px;}
.gi.gal-hidden{display:none;}
.gi{overflow:hidden;position:relative;cursor:pointer;background:var(--dk3);}
.gi img{width:100%;height:100%;object-fit:cover;object-position:center;transition:opacity 0.5s,transform 0.7s cubic-bezier(0.25,0.46,0.45,0.94);display:block;opacity:0;position:relative;z-index:2;}
.gi img.loaded{opacity:1;}
.gi:hover img{transform:scale(1.1);}
.gi-skel{position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,var(--dk3) 30%,var(--dk4) 50%,var(--dk3) 70%);background-size:200% 100%;animation:skelMove 1.4s ease-in-out infinite;}
.gi-skel.hide{display:none;}
@keyframes skelMove{0%{background-position:200% 0}100%{background-position:-200% 0}}
.gi-ov{
  position:absolute;inset:0;z-index:3;
  background:linear-gradient(to top,rgba(4,4,4,0.92) 0%,rgba(4,4,4,0.3) 50%,transparent 100%);
  opacity:0;transition:opacity 0.4s;
  display:flex;flex-direction:column;justify-content:flex-end;padding:20px 18px;
}
.gi:hover .gi-ov{opacity:1;}
.gi-name{font-family:'Cinzel',sans-serif;font-size:0.68rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--g1);margin-bottom:4px;}
.gi-sub{font-size:0.62rem;color:rgba(245,240,232,0.65);letter-spacing:1px;margin-bottom:10px;}
.gi-btn{
  display:inline-block;background:transparent;border:1px solid rgba(201,168,76,0.5);
  color:var(--g1);font-family:'Cinzel',sans-serif;font-size:0.55rem;font-weight:700;
  letter-spacing:2px;text-transform:uppercase;padding:5px 12px;
  transition:all 0.2s;
}
.gi:hover .gi-btn{background:var(--g1);color:var(--dk);}
.gi.tall{grid-row:span 2;}
.gi.wide{grid-column:span 2;}
.gal-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--dk3);color:var(--gr);font-size:0.7rem;letter-spacing:2px;text-transform:uppercase;gap:10px;}
.gal-placeholder span{font-size:2rem;}

/* ── SERVICES — tarjetas con más respiración ────────────────── */
.spc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(201,168,76,0.06);}
.spc{background:var(--dk);padding:40px 34px;position:relative;overflow:hidden;transition:all 0.4s;}
.spc::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:var(--gold-grd);transform:scaleX(0);transform-origin:left;transition:transform 0.4s;}
.spc:hover{background:var(--dk3);transform:translateY(-4px);box-shadow:0 20px 60px rgba(0,0,0,0.5);}
.spc:hover::before{transform:scaleX(1);}
.spc-img{width:100%;height:180px;object-fit:cover;margin-bottom:22px;filter:brightness(0.85);transition:filter 0.4s;}
.spc:hover .spc-img{filter:brightness(1);}
.spc-ico{font-size:1.8rem;margin-bottom:14px;display:block;}
.spc-title{font-family:'Cinzel',sans-serif;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--wh);margin-bottom:10px;line-height:1.15;}
.spc-title em{color:var(--g1);font-style:normal;display:block;font-size:0.85rem;}
.spc-desc{font-size:0.8rem;color:rgba(245,240,232,0.65);line-height:1.85;margin-bottom:14px;}
.spc-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;}
.stag{font-size:0.54rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--g1);border:1px solid rgba(201,168,76,0.18);padding:4px 10px;}

/* ── ABOUT — composición equilibrada ───────────────────────── */
.ab-grid{display:grid;grid-template-columns:5fr 7fr;gap:100px;align-items:center;}
.ab-visual{display:flex;flex-direction:column;align-items:center;gap:32px;position:relative;}
.ab-visual::before{
  content:'';position:absolute;inset:-40px;
  background:radial-gradient(ellipse at center,rgba(201,168,76,0.04) 0%,transparent 70%);
  pointer-events:none;
}
.ab-logo img{width:260px;max-width:100%;filter:drop-shadow(0 0 32px rgba(201,168,76,0.35));position:relative;z-index:1;}
.ab-kpis{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(201,168,76,0.08);width:100%;position:relative;z-index:1;}
.akp{background:var(--dk2);padding:22px 18px;text-align:center;transition:background 0.3s;}
.akp:hover{background:var(--dk4);}
.akp-n{font-family:'Cinzel',sans-serif;font-size:2rem;font-weight:900;background:var(--gold-grd);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;}
.akp-l{font-size:0.56rem;letter-spacing:2px;text-transform:uppercase;color:rgba(245,240,232,0.65);margin-top:6px;}
.ab-text h3{font-family:'Cinzel',sans-serif;font-size:2rem;font-weight:700;text-transform:uppercase;color:var(--wh);margin:10px 0 18px;line-height:1.05;}
.ab-text h3 em{color:var(--g1);font-style:normal;}
.ab-text p{font-size:0.84rem;color:rgba(245,240,232,0.7);line-height:1.9;margin-bottom:14px;}
.vals{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px;}
.val{background:var(--dk3);border:1px solid rgba(255,255,255,0.03);padding:20px;transition:all 0.3s;position:relative;overflow:hidden;}
.val::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--gold-grd);transform:scaleX(0);transition:transform 0.3s;}
.val:hover{border-color:rgba(201,168,76,0.15);transform:translateY(-2px);}
.val:hover::after{transform:scaleX(1);}
.vi-img{width:100%;height:100px;object-fit:cover;margin-bottom:10px;filter:brightness(0.8);transition:filter 0.3s;}
.val:hover .vi-img{filter:brightness(1);}
.vt{font-family:'Cinzel',sans-serif;font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--g1);margin-bottom:5px;}
.vd{font-size:0.7rem;color:rgba(245,240,232,0.6);line-height:1.6;}

/* ── BANDA SEPARADORA FULL-WIDTH ─────────────────────────────── */
.band-cta{
  background:linear-gradient(135deg,#090706,#0F0C04,#090706);
  border-top:1px solid rgba(201,168,76,0.1);
  border-bottom:1px solid rgba(201,168,76,0.1);
  padding:64px 56px;text-align:center;
}
.band-cta .bc-title{font-family:'Cinzel',sans-serif;font-size:clamp(1.3rem,2.5vw,2rem);font-weight:700;text-transform:uppercase;color:var(--wh);margin-bottom:10px;letter-spacing:2px;}
.band-cta .bc-sub{font-size:0.84rem;color:rgba(245,240,232,0.5);margin-bottom:28px;}

/* ── PROCESO TIMELINE ───────────────────────────────────────── */
/* ── MODAL 16 PASOS ─────────────────────────────────────────── */
.modal-16{position:fixed;inset:0;z-index:9990;display:flex;align-items:center;justify-content:center;}
.modal-16[hidden]{display:none;}
.modal-16__overlay{position:absolute;inset:0;background:rgba(0,0,0,.88);backdrop-filter:blur(4px);cursor:pointer;}
.modal-16__content{position:relative;background:#0a0a0a;border:1px solid rgba(212,175,55,.3);border-radius:8px;max-width:1280px;width:calc(100vw - 32px);max-height:calc(100vh - 40px);overflow-y:auto;padding:40px 36px 36px;z-index:1;animation:m16In .25s ease;}
@keyframes m16In{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.modal-16__close{position:absolute;top:14px;right:14px;background:transparent;color:var(--g1);border:1px solid rgba(212,175,55,.4);width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:background .2s;}
.modal-16__close:hover{background:rgba(212,175,55,.1);}
.pasos-grid-16{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
@media(max-width:960px){.pasos-grid-16{grid-template-columns:repeat(2,1fr);}}
@media(max-width:520px){.pasos-grid-16{grid-template-columns:1fr;}}
.paso-16{background:#111;border:1px solid rgba(212,175,55,.18);border-radius:6px;padding:0 0 14px;position:relative;overflow:hidden;transition:border-color .25s;}
.paso-16:hover{border-color:rgba(212,175,55,.45);}
.paso-16__img{position:relative;aspect-ratio:4/3;background:linear-gradient(135deg,#141414,#0a0a0a);overflow:hidden;}
.paso-16__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s;}
.paso-16:hover .paso-16__img img{transform:scale(1.06);}
.paso-16__ico{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2.4rem;pointer-events:none;}
.paso-16__badge{position:absolute;top:8px;left:8px;background:rgba(8,8,8,.85);color:var(--g1);border:1px solid rgba(212,175,55,.6);width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:'Cinzel',sans-serif;font-size:0.58rem;font-weight:700;}
.paso-16__badge--gold{background:var(--g1);color:#080808;border-color:var(--g1);}
.paso-16 h4{font-family:'Cinzel',sans-serif;font-size:0.65rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#d4af37;margin:12px 14px 6px;}
.paso-16 p{font-size:0.72rem;color:rgba(245,240,232,0.6);margin:0 14px 6px;line-height:1.5;}
.paso-16 small{font-size:0.6rem;color:var(--g1);margin:0 14px;display:block;opacity:.8;}
@media(max-width:640px){.modal-16__content{padding:28px 16px 24px;}}

/* grid de tarjetas */
.proceso-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(201,168,76,0.1);}
.proceso-timeline::before{display:none;}
@media(max-width:900px){.proceso-timeline{grid-template-columns:repeat(2,1fr);}}
@media(max-width:500px){.proceso-timeline{grid-template-columns:1fr;}}

/* tarjeta */
.pt-item{display:flex;flex-direction:column;background:var(--dk3);transition:background .3s;}
.pt-item:hover{background:rgba(201,168,76,0.05);}

/* imagen del paso */
.pt-img{position:relative;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,var(--dk4),var(--dk3));}
.pt-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.pt-item:hover .pt-img img{transform:scale(1.06);}
.pt-img-ico{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2.2rem;pointer-events:none;}
.pt-num{position:absolute;top:8px;left:8px;width:28px;height:28px;border-radius:50%;background:rgba(8,8,8,0.85);border:1px solid rgba(201,168,76,0.6);color:var(--g1);font-family:'Cinzel',sans-serif;font-size:0.6rem;font-weight:700;display:flex;align-items:center;justify-content:center;}

/* texto */
.pt-body{padding:14px 16px;flex:1;display:flex;flex-direction:column;gap:4px;}
.pt-title{font-family:'Cinzel',sans-serif;font-size:0.65rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#fff;}
.pt-title small{font-weight:400;font-size:0.75em;color:rgba(245,240,232,0.5);letter-spacing:0;}
.pt-desc{font-size:0.72rem;color:rgba(245,240,232,0.6);line-height:1.55;flex:1;}
.pt-time{font-size:0.6rem;color:var(--g1);font-weight:600;margin-top:4px;}

/* ── CONTACT ────────────────────────────────────────────────── */
.con-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;}
.con-info h3{font-family:'Cinzel',sans-serif;font-size:1.9rem;font-weight:700;text-transform:uppercase;color:var(--wh);margin:10px 0 14px;line-height:1.05;}
.con-info h3 em{color:var(--g1);font-style:normal;}
.con-info p{font-size:0.84rem;color:rgba(245,240,232,0.65);line-height:1.85;margin-bottom:24px;}
.c-row{display:flex;align-items:flex-start;gap:14px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,0.04);}
.c-ico{width:40px;height:40px;background:rgba(201,168,76,0.06);border:1px solid rgba(201,168,76,0.15);display:flex;align-items:center;justify-content:center;font-size:0.9rem;flex-shrink:0;}
.c-lbl{font-size:0.53rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:rgba(245,240,232,0.4);margin-bottom:3px;}
.c-val{font-size:0.84rem;color:var(--wh);font-weight:500;}
.c-val a{color:var(--g1);transition:opacity 0.2s;}
.c-val a:hover{opacity:0.8;}
.con-form{background:rgba(12,12,12,0.8);border:1px solid rgba(201,168,76,0.1);padding:40px;}
.con-form h4{font-family:'Cinzel',sans-serif;font-size:1.1rem;font-weight:700;text-transform:uppercase;color:var(--wh);margin-bottom:24px;letter-spacing:1px;}
.con-form h4 em{color:var(--g1);font-style:normal;}
.flds{display:flex;flex-direction:column;gap:10px;}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.flds input,.flds textarea,.flds select{background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.06);color:var(--wh);padding:13px 15px;font-family:'Raleway',sans-serif;font-size:0.81rem;outline:none;transition:border-color 0.25s;resize:none;width:100%;}
.flds input::placeholder,.flds textarea::placeholder{color:rgba(245,240,232,0.18);}
.flds input:focus,.flds textarea:focus,.flds select:focus{border-color:rgba(201,168,76,0.5);}
.flds select option{background:var(--dk2);}
.cot-extra{border:1px solid rgba(201,168,76,0.12);padding:10px 14px;}
.cot-extra summary{cursor:pointer;font-size:0.7rem;letter-spacing:1px;color:var(--g1);font-weight:600;list-style:none;}
.cot-extra summary::-webkit-details-marker{display:none;}
.cot-extra[open] summary{margin-bottom:4px;}

/* ── FOOTER — cierre premium ────────────────────────────────── */
footer{
  background:#030303;
  border-top:1px solid rgba(201,168,76,0.1);
  position:relative;overflow:hidden;
}
footer::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 80% 60% at 50% 100%,rgba(201,168,76,0.025) 0%,transparent 65%);
  pointer-events:none;
}
.f-top{max-width:var(--max-w);margin:0 auto;display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:60px;padding:72px 56px 52px;border-bottom:1px solid rgba(255,255,255,0.03);position:relative;}
.f-logo img{height:70px;filter:drop-shadow(0 0 16px rgba(201,168,76,0.35));margin-bottom:18px;}
.f-desc{font-size:0.78rem;color:rgba(245,240,232,0.5);line-height:1.8;max-width:260px;}
.f-tagline{font-family:'Cinzel',sans-serif;font-size:0.56rem;letter-spacing:4px;text-transform:uppercase;color:rgba(201,168,76,0.5);margin-top:10px;}
.fc-t{font-family:'Cinzel',sans-serif;font-size:0.56rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--g1);margin-bottom:18px;}
.fc-l{list-style:none;}
.fc-l li{margin-bottom:10px;}
.fc-l a{font-size:0.76rem;color:rgba(245,240,232,0.5);transition:color 0.2s;display:flex;align-items:center;gap:7px;}
.fc-icon{width:15px;height:15px;flex-shrink:0;}
.fc-l a:hover{color:var(--g1);}
.f-btm{max-width:var(--max-w);margin:0 auto;padding:24px 56px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;position:relative;}
.f-copy{font-size:0.64rem;color:rgba(245,240,232,0.2);}
.f-copy a{color:var(--g1);}

/* ── WA FLOAT ───────────────────────────────────────────────── */
.wa-float{position:fixed;bottom:28px;right:26px;z-index:8900;width:54px;height:54px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 24px rgba(37,211,102,0.5);text-decoration:none;transition:transform 0.25s;}
.wa-float:hover{transform:scale(1.1);}

/* ── LEGIONARIO CHATBOT ─────────────────────────────────────── */
.leg-wrap{position:fixed;bottom:96px;right:26px;z-index:9800;}
.leg-btn{display:block;cursor:pointer;animation:lFloat 4s ease-in-out infinite;transition:transform 0.2s;}
.leg-btn:hover{animation:none;transform:scale(1.07);}
@keyframes lFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.leg-btn img{width:74px;height:74px;filter:drop-shadow(0 4px 18px rgba(201,168,76,0.5));object-fit:contain;}
.leg-tip{position:absolute;bottom:84px;right:0;background:var(--dk2);color:var(--g1);border:1px solid rgba(201,168,76,0.28);font-family:'Cinzel',sans-serif;font-size:0.61rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;padding:7px 13px;white-space:nowrap;pointer-events:none;animation:tInOut 8s 2s ease both;box-shadow:0 4px 16px rgba(0,0,0,0.5);}
@keyframes tInOut{0%{opacity:0;transform:translateY(6px)}12%{opacity:1;transform:translateY(0)}88%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(0);visibility:hidden}}
.leg-tip::after{content:'';position:absolute;bottom:-5px;right:16px;border:5px solid transparent;border-top-color:rgba(201,168,76,0.28);border-bottom:none;}
.leg-chat{display:none;flex-direction:column;position:absolute;bottom:90px;right:0;width:326px;max-height:490px;background:var(--dk2);border:1px solid rgba(201,168,76,0.2);box-shadow:0 24px 70px rgba(0,0,0,0.8);animation:cIn 0.3s ease;}
@keyframes cIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.leg-chat.open{display:flex;}
.leg-hdr{background:linear-gradient(135deg,rgba(201,168,76,0.1),rgba(139,105,20,0.06));border-bottom:1px solid rgba(201,168,76,0.12);padding:11px 13px;display:flex;align-items:center;gap:10px;flex-shrink:0;}
.leg-av{width:36px;height:36px;border-radius:50%;background:var(--gold-grd);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;}
.leg-av img{width:100%;height:100%;object-fit:cover;object-position:top center;}
.leg-nm{font-family:'Cinzel',sans-serif;font-size:0.72rem;font-weight:700;color:var(--g1);letter-spacing:1px;}
.leg-st{font-size:0.54rem;color:var(--gr);letter-spacing:1px;text-transform:uppercase;display:flex;align-items:center;gap:5px;}
.leg-st::before{content:'';width:6px;height:6px;border-radius:50%;background:#25D366;display:inline-block;}
.leg-close{margin-left:auto;background:none;border:none;color:rgba(245,240,232,0.25);font-size:1rem;cursor:pointer;padding:0 3px;transition:color 0.2s;}
.leg-close:hover{color:var(--g1);}
.leg-msgs{flex:1;overflow-y:auto;padding:11px;display:flex;flex-direction:column;gap:8px;min-height:160px;max-height:290px;scrollbar-width:thin;scrollbar-color:rgba(201,168,76,0.15) transparent;}
.lmsg,.umsg{display:flex;max-width:100%;}
.umsg{justify-content:flex-end;}
.lbbl{max-width:78%;padding:9px 12px;font-size:0.78rem;line-height:1.55;}
.lmsg .lbbl{background:rgba(255,255,255,0.04);color:var(--wh);border:1px solid rgba(255,255,255,0.05);border-bottom-left-radius:3px;}
.umsg .lbbl{background:var(--gold-grd);color:var(--dk);font-weight:500;border-bottom-right-radius:3px;}
.ltime{font-size:0.54rem;color:rgba(245,240,232,0.15);margin-top:2px;text-align:right;}
.ltyp{display:flex;gap:3px;align-items:center;padding:4px 0;}
.ltyp span{width:5px;height:5px;background:var(--g1);border-radius:50%;animation:tp 1s ease-in-out infinite;}
.ltyp span:nth-child(2){animation-delay:0.15s;}
.ltyp span:nth-child(3){animation-delay:0.3s;}
@keyframes tp{0%,100%{opacity:0.2;transform:scale(0.8)}50%{opacity:1;transform:scale(1)}}
.leg-quick{display:flex;flex-wrap:wrap;gap:5px;padding:6px 9px;border-top:1px solid rgba(255,255,255,0.04);flex-shrink:0;}
.lqb{background:rgba(201,168,76,0.06);border:1px solid rgba(201,168,76,0.15);color:rgba(201,168,76,0.75);font-family:'Raleway',sans-serif;font-size:0.61rem;font-weight:500;padding:4px 9px;cursor:pointer;transition:all 0.2s;white-space:nowrap;}
.lqb:hover{background:rgba(201,168,76,0.14);}
.leg-inp-row{display:flex;align-items:center;gap:7px;padding:7px 9px;border-top:1px solid rgba(255,255,255,0.04);flex-shrink:0;}
.leg-inp{flex:1;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);color:var(--wh);padding:8px 12px;font-family:'Raleway',sans-serif;font-size:0.78rem;outline:none;transition:border-color 0.25s;}
.leg-inp::placeholder{color:rgba(245,240,232,0.18);}
.leg-inp:focus{border-color:rgba(201,168,76,0.35);}
.leg-send{background:var(--gold-grd);color:var(--dk);border:none;width:33px;height:33px;font-size:0.88rem;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all 0.2s;}
.leg-send:hover{transform:scale(1.08);}
.leg-send:disabled{opacity:0.45;cursor:not-allowed;transform:none;}

/* ── MODAL GALERÍA ──────────────────────────────────────────── */
.mgal{display:none;position:fixed;inset:0;z-index:9000;background:rgba(0,0,0,0.96);align-items:center;justify-content:center;}
.mgal.open{display:flex;animation:fIn 0.25s ease;}
@keyframes fIn{from{opacity:0}to{opacity:1}}
.mgal img{max-width:88vw;max-height:86vh;object-fit:contain;box-shadow:0 0 80px rgba(201,168,76,0.15);}
.mgal-x{position:fixed;top:18px;right:22px;background:none;border:none;color:rgba(245,240,232,0.3);font-size:1.8rem;cursor:pointer;z-index:10;transition:color 0.2s;}
.mgal-x:hover{color:var(--g1);}

/* ── BOTTOM BAR (móvil) ─────────────────────────────────────── */
.bb-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:850;background:rgba(6,6,6,0.97);border-top:1px solid var(--border);padding:6px 4px;backdrop-filter:blur(14px);}
.bb-inner{display:flex;justify-content:space-around;align-items:stretch;width:100%;}
.bbi{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:7px 4px;text-decoration:none;color:rgba(245,240,232,0.28);border-radius:6px;transition:all 0.2s;flex:1;min-width:0;background:none;border:none;cursor:pointer;font-family:'Raleway',sans-serif;}
.bbi:hover,.bbi.on{color:var(--g1);}
.bbi.on{background:rgba(201,168,76,0.05);}
.bbi-ico{width:20px;height:20px;flex-shrink:0;}
.bbi-lbl{font-size:0.42rem;font-weight:600;letter-spacing:0.3px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;}
.bbi-cta{background:var(--gold-grd);color:var(--dk)!important;flex:1.3;margin:0 2px;box-shadow:0 4px 14px rgba(201,168,76,0.24);border-radius:6px;}

/* ── LAZY LOADING ───────────────────────────────────────────── */
img.lazy{opacity:0;transition:opacity 0.5s ease;}
img.lazy.loaded{opacity:1;}
.skeleton{background:linear-gradient(90deg,var(--dk3) 25%,var(--dk4) 50%,var(--dk3) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;}
@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}

/* ── RESPONSIVE ─────────────────────────────────────────────── */
@media(max-width:1400px){
  .gal{grid-template-columns:repeat(4,1fr);}
  .h-content{padding:50px 40px;}
}
@media(max-width:1200px){
  .spc-grid{grid-template-columns:1fr 1fr;}
  .ab-grid,.con-grid{grid-template-columns:1fr;gap:50px;}
  .f-top{grid-template-columns:1fr 1fr;gap:40px;}
  .h-content{grid-template-columns:1fr 1fr;}
  .wrap{padding:0 40px;}
}
@media(max-width:1024px){
  #nav{height:78px;padding:0 20px;}
  .nav-links,.nav-right{display:none;}
  .nav-ham{display:flex;}
  .nav-logo img{height:64px;}
  #mob-drawer{top:78px;}
  .panel,#sec-home{scroll-margin-top:78px;}
  #inicio{padding-top:78px;}
  .bb-bar{display:flex;}
  body{padding-bottom:72px;}
  .wa-float{bottom:84px;}
  .leg-wrap{bottom:150px;right:18px;}
  .leg-btn img{width:60px;height:60px;}
}
@media(max-width:768px){
  .h-content{grid-template-columns:1fr;gap:40px;text-align:center;padding:40px 24px 56px;}
  .h-eyebrow{justify-content:center;}
  .h-eyebrow::before{display:none;}
  .h-line{margin:0 auto 24px;}
  .h-sub{margin-left:auto;margin-right:auto;}
  .h-btns{justify-content:center;}
  .gal{grid-template-columns:repeat(2,1fr);grid-auto-rows:200px;}
  .gi.tall{grid-row:span 1;}
  .gi.wide{grid-column:span 1;}
  .spc-grid{grid-template-columns:1fr 1fr;}
  .ab-grid,.con-grid{grid-template-columns:1fr;gap:40px;}
  .f-top{grid-template-columns:1fr;padding:40px 24px 32px;}
  .f-btm{padding:18px 24px;}
  .coin-wrap img{width:240px;}
  .con-form{padding:24px 18px;}
  .leg-chat{width:290px;}
  .wrap{padding:0 24px;}
  .sec{padding:72px 0;}
}
@media(max-width:480px){
  .spc-grid{grid-template-columns:1fr;}
  .frow{grid-template-columns:1fr;}
  .vals{grid-template-columns:1fr;}
  .gal{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px;}
  /* Evitar overflow horizontal en pantallas pequeñas */
  #nav{padding:0 14px;}
  .wrap{padding:0 16px;}
  .h-content{padding:30px 16px 40px;}
  .f-top{padding:40px 16px 32px;}
  .f-btm{padding:18px 16px;}
  .sec{padding:56px 0;}
  .con-form{padding:20px 14px;}
  /* WhatsApp y asistente: asegurar que no se salgan */
  .wa-float{right:14px;}
  .leg-wrap{right:14px;}
  /* bb-bar siempre visible sin interferencia */
  .bb-bar{position:fixed !important;bottom:0 !important;left:0 !important;right:0 !important;width:100% !important;}
}
@media(max-width:400px){
  h1.h-title{font-size:2.4rem;}
  .coin-wrap img{width:200px;}
}

/* ── GALERÍA MUSEO ──────────────────────────────────────────── */

/* Grid */
.g-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0;width:100%;}
@media(max-width:380px){.g-grid{grid-template-columns:1fr;}}
@media(min-width:640px){.g-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;}}
@media(min-width:1024px){.g-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(min-width:1280px){.g-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}

/* Filtros */
.g-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2.5rem;margin-bottom:2rem;}
.g-filter{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.28em;border:1px solid rgba(255,255,255,0.1);border-radius:2px;color:rgba(255,255,255,0.45);background:transparent;cursor:pointer;transition:all .3s;font-family:'Cinzel',sans-serif;}
.g-filter:hover{border-color:rgba(201,168,76,0.6);color:var(--g2);}
.g-filter.active{border-color:var(--g1);background:var(--g1);color:#0a0a0f;}
.g-filter span{font-size:9px;opacity:.7;}

/* Tarjeta */
.coin-card{position:relative;padding:1.5rem;text-align:left;background:transparent;border:none;cursor:pointer;width:100%;min-width:0;box-sizing:border-box;overflow:hidden;transition:background .3s;}
.coin-card:hover{background:rgba(201,168,76,0.03);}

/* Visual cuadrado */
.coin-card-visual{position:relative;aspect-ratio:1/1;overflow:hidden;border-radius:2px;background:#000;}
.coin-card-visual .gi-skel{position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,var(--dk3) 30%,var(--dk4) 50%,var(--dk3) 70%);background-size:200% 100%;animation:skelMove 1.4s ease-in-out infinite;}
.coin-card-visual .gi-skel.hide{display:none;}
.coin-card-visual img{width:100%;height:100%;object-fit:contain;transition:transform .7s ease;display:block;opacity:0;position:relative;z-index:2;}
.coin-card-visual img[src$=".jpg"],.coin-card-visual img[src$=".jpeg"]{object-fit:cover;}
.coin-card-visual img.loaded{opacity:1;}
.coin-card:hover .coin-card-visual img{transform:scale(1.05);}

/* Overlay hover */
.coin-card-overlay{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:space-between;padding:1rem;background:linear-gradient(to top,rgba(10,10,15,0.95),rgba(10,10,15,0.4),transparent);opacity:0;transition:opacity .5s ease;pointer-events:none;z-index:3;}
.coin-card:hover .coin-card-overlay{opacity:1;}
.coin-card-overlay span{font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--g1);}
.cc-arrow{font-size:1.1rem !important;color:var(--g2) !important;letter-spacing:0 !important;}

/* Shine sweep */
.coin-card-shine{position:absolute;inset:0;z-index:4;transform:translateX(-120%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.10),transparent);transition:transform 1s ease;pointer-events:none;}
.coin-card:hover .coin-card-shine{transform:translateX(120%);}

/* Metadata */
.coin-card-meta{margin-top:1.5rem;}
.meta-row{display:flex;justify-content:space-between;font-size:10px;text-transform:uppercase;letter-spacing:.28em;color:rgba(255,255,255,.45);}
.cc-unit{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:70%;}
.cc-year{color:var(--g1);flex-shrink:0;}
.coin-card-meta h3{margin-top:.75rem;font-family:'Cinzel',sans-serif;font-size:clamp(.85rem,1.2vw,1.05rem);font-weight:700;color:#fff;transition:color .3s;text-align:left;line-height:1.3;}
.coin-card:hover h3{color:var(--g2);}
.cc-sub{display:block;margin-top:.5rem;font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:rgba(255,255,255,.35);line-height:1.4;}

/* Modal backdrop */
.g-modal-backdrop{display:none;position:fixed;inset:0;z-index:9000;align-items:center;justify-content:center;padding:1rem;background:rgba(10,10,15,.88);backdrop-filter:blur(12px);}
.g-modal-backdrop.open{display:flex;animation:fIn .25s ease;}

/* Modal panel */
.g-modal{position:relative;display:grid;width:100%;max-width:1024px;max-height:90vh;overflow:hidden;border:1px solid rgba(201,168,76,.3);border-radius:2px;background:var(--dk2);box-shadow:0 40px 120px rgba(0,0,0,.9);}
@media(min-width:768px){.g-modal{grid-template-columns:1fr 1fr;}}

/* Modal imagen */
.g-modal-visual{position:relative;aspect-ratio:1/1;overflow:hidden;background:#000;}
@media(min-width:768px){.g-modal-visual{aspect-ratio:auto;min-height:400px;}}
.g-modal-visual img{width:100%;height:100%;object-fit:contain;display:block;}
.g-modal-visual img[src$=".jpg"],.g-modal-visual img[src$=".jpeg"]{object-fit:cover;}

/* Modal info */
.g-modal-info{display:flex;flex-direction:column;padding:2rem;overflow-y:auto;gap:.75rem;}
@media(min-width:1024px){.g-modal-info{padding:2.5rem;}}
.gm-eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.3em;color:var(--g2);font-weight:700;}
.gm-title{font-family:'Cinzel',sans-serif;font-size:clamp(1rem,2vw,1.35rem);font-weight:900;color:#fff;text-transform:uppercase;line-height:1.15;margin:0;}
.gm-meta{font-size:.72rem;color:rgba(245,240,232,.45);margin:0;}
.gm-hairline{width:40px;height:1px;background:var(--g1);border:none;margin:.5rem 0;}
.gm-story{font-size:.82rem;line-height:1.75;color:rgba(255,255,255,.65);margin:0;}
.gm-specs{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.5rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.06);font-size:12px;}
.gm-specs dt{color:rgba(255,255,255,.4);margin-bottom:.25rem;font-size:9px;text-transform:uppercase;letter-spacing:.2em;}
.gm-specs dd{color:#fff;font-weight:600;margin:0;}
.gm-cta{display:inline-flex;align-items:center;justify-content:center;margin-top:auto;padding-top:1.5rem;background:linear-gradient(135deg,var(--g1),var(--g3));color:#080808;font-family:'Cinzel',sans-serif;font-size:.55rem;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding:12px 20px;text-decoration:none;cursor:pointer;border:none;transition:opacity .2s;}
.gm-cta:hover{opacity:.88;}

/* Botón cerrar modal */
.g-modal-close{position:absolute;top:1rem;right:1rem;z-index:20;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.1);border-radius:50%;background:rgba(10,10,15,.7);color:var(--g2);font-size:14px;cursor:pointer;transition:all .3s;}
.g-modal-close:hover{border-color:var(--g1);background:var(--dk);}

/* ── GALLERY SHIMMER SWEEP ─────────────────────────────────── */
.gi::after{content:'';position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(105deg,transparent 20%,rgba(255,255,255,0.22) 50%,transparent 80%);transform:skewX(-15deg);pointer-events:none;opacity:0;}
.gi:hover::after{animation:gi-sweep .65s ease forwards;opacity:1;}
@keyframes gi-sweep{0%{left:-80%}100%{left:140%}}
.gi-sub{display:block;font-size:0.58rem;color:rgba(245,240,232,0.65);margin-top:3px;letter-spacing:.5px;line-height:1.3;}
.gi-hist-badge{display:inline-block;margin-top:8px;background:rgba(201,168,76,0.92);color:#080808;font-size:0.5rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:4px 12px;opacity:0;transform:translateY(6px);transition:opacity .25s,transform .25s;}
.gi:hover .gi-hist-badge{opacity:1;transform:translateY(0);}

/* ── RICH MODAL ─────────────────────────────────────────────── */
.mgal-body{display:grid;grid-template-columns:1fr 1fr;max-width:960px;width:90vw;max-height:88vh;overflow:hidden;background:var(--dk2);border:1px solid rgba(201,168,76,0.18);position:relative;}
.mgal-img-col{position:relative;overflow:hidden;background:#000;}
.mgal-img-col img{width:100%;height:100%;object-fit:cover;display:block;max-width:unset;max-height:unset;}
.mgal-info-col{padding:36px 32px;overflow-y:auto;display:flex;flex-direction:column;gap:14px;}
.mgal-eyebrow{font-size:0.52rem;letter-spacing:4px;text-transform:uppercase;color:var(--g1);font-weight:700;}
.mgal-title{font-family:'Cinzel',sans-serif;font-size:clamp(1rem,2.5vw,1.4rem);font-weight:900;color:var(--wh);text-transform:uppercase;line-height:1.15;margin:0;}
.mgal-sub{font-size:0.72rem;color:rgba(245,240,232,0.5);margin:0;font-style:italic;}
.mgal-story{font-size:0.78rem;color:rgba(245,240,232,0.78);line-height:1.75;margin:0;border-left:2px solid rgba(201,168,76,0.3);padding-left:14px;}
.mgal-specs{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid rgba(201,168,76,0.12);padding-top:14px;}
.mgal-spec{display:flex;flex-direction:column;gap:2px;}
.mgal-spec-k{font-size:0.5rem;letter-spacing:2px;text-transform:uppercase;color:var(--g1);}
.mgal-spec-v{font-size:0.75rem;color:var(--wh);font-weight:600;}
.mgal-cta{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--g1),var(--g3));color:#080808;font-family:'Cinzel',sans-serif;font-size:0.55rem;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding:12px 20px;text-decoration:none;cursor:pointer;border:none;margin-top:auto;transition:opacity .2s;}
.mgal-cta:hover{opacity:.88;}
@media(max-width:640px){
  .mgal-body{grid-template-columns:1fr;width:95vw;max-height:90vh;overflow-y:auto;}
  .mgal-img-col{height:200px;}
  .mgal-img-col img{object-position:top;}
  .mgal-info-col{padding:22px 18px;}
}

/* ── "DEL CONCEPTO AL METAL" 4-step strip ───────────────────── */
.ctm-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-bottom:52px;border:1px solid rgba(201,168,76,0.18);overflow:hidden;}
.ctm-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:28px 16px;position:relative;background:rgba(201,168,76,0.03);transition:background .25s;}
.ctm-item:not(:last-child)::after{content:'';position:absolute;right:0;top:20%;height:60%;width:1px;background:rgba(201,168,76,0.15);}
.ctm-item:hover{background:rgba(201,168,76,0.07);}
.ctm-num{font-family:'Cinzel',sans-serif;font-size:0.55rem;letter-spacing:3px;color:var(--g1);margin-bottom:10px;}
.ctm-icon{font-size:2rem;margin-bottom:10px;line-height:1;}
.ctm-title{font-family:'Cinzel',sans-serif;font-size:0.7rem;font-weight:900;text-transform:uppercase;color:var(--wh);letter-spacing:1.5px;margin-bottom:6px;}
.ctm-desc{font-size:0.65rem;color:rgba(245,240,232,0.55);line-height:1.5;}
@media(max-width:700px){
  .ctm-strip{grid-template-columns:repeat(2,1fr);}
  .ctm-item:nth-child(2)::after{display:none;}
  .ctm-item:nth-child(odd)::after{right:0;top:20%;height:60%;display:block;}
}
@media(max-width:380px){
  .ctm-strip{grid-template-columns:1fr;}
  .ctm-item::after{display:none!important;}
}

/* ── ACABADOS SECTION ───────────────────────────────────────── */
.acabados-sec{padding:80px 0;}
.acabados-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px;}
.ac-card{background:rgba(201,168,76,0.04);border:1px solid rgba(201,168,76,0.12);padding:28px 22px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;transition:border-color .25s,background .25s;cursor:default;}
.ac-card:hover{border-color:rgba(201,168,76,0.4);background:rgba(201,168,76,0.09);}
.ac-swatch{width:140px;height:140px;border-radius:50%;overflow:hidden;flex-shrink:0;box-shadow:0 0 32px rgba(0,0,0,0.7);margin-bottom:4px;cursor:zoom-in;}
.ac-swatch img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .4s ease;}
.ac-card:hover .ac-swatch img{transform:scale(1.08);}

/* lightbox acabados */
#ac-lightbox{position:fixed;inset:0;z-index:9995;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.92);backdrop-filter:blur(6px);cursor:zoom-out;animation:m16In .2s ease;}
#ac-lightbox[hidden]{display:none;}
#ac-lightbox img{width:min(520px,80vw);height:min(520px,80vw);border-radius:50%;object-fit:cover;box-shadow:0 0 80px rgba(201,168,76,0.3);pointer-events:none;}
#ac-lightbox-label{position:absolute;bottom:10%;left:50%;transform:translateX(-50%);font-family:'Cinzel',sans-serif;font-size:0.75rem;letter-spacing:4px;text-transform:uppercase;color:var(--g1);text-align:center;pointer-events:none;}
.ac-name{font-family:'Cinzel',sans-serif;font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--wh);}
.ac-desc{font-size:0.65rem;color:rgba(245,240,232,0.55);line-height:1.55;}
.ac-tag{display:inline-block;font-size:0.48rem;letter-spacing:2px;text-transform:uppercase;padding:3px 9px;border:1px solid rgba(201,168,76,0.3);color:var(--g1);}
@media(max-width:800px){.acabados-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.acabados-grid{grid-template-columns:1fr;}}

/* ── "CONFÍAN EN NOSOTROS" ──────────────────────────────────── */
.confian-sec{padding:60px 0;border-top:1px solid rgba(201,168,76,0.1);}
.confian-grid{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:36px;}
.confian-badge{display:flex;align-items:center;gap:10px;padding:14px 22px;border:1px solid rgba(201,168,76,0.15);background:rgba(201,168,76,0.03);transition:border-color .2s;}
.confian-badge:hover{border-color:rgba(201,168,76,0.35);}
.confian-ico{width:36px;height:36px;flex-shrink:0;color:var(--g1);}
.confian-name{font-family:'Cinzel',sans-serif;font-size:0.58rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--wh);}

/* ── "FORJEMOS TU PIEZA" CTA ────────────────────────────────── */
.forjemos-cta{padding:80px 0;background:linear-gradient(135deg,rgba(8,8,8,0.95) 0%,rgba(20,15,5,0.98) 100%);border-top:1px solid rgba(201,168,76,0.15);border-bottom:1px solid rgba(201,168,76,0.15);text-align:center;}
.forjemos-cta .f-eyebrow{font-size:0.52rem;letter-spacing:5px;text-transform:uppercase;color:var(--g1);margin-bottom:18px;}
.forjemos-cta .f-title{font-family:'Cinzel',sans-serif;font-size:clamp(1.6rem,4vw,2.8rem);font-weight:900;text-transform:uppercase;color:var(--wh);line-height:1.05;margin-bottom:20px;}
.forjemos-cta .f-title span{color:var(--g1);}
.forjemos-cta .f-sub{font-size:0.78rem;color:rgba(245,240,232,0.55);max-width:560px;margin:0 auto 32px;line-height:1.7;}
.forjemos-cta .f-tiempo{display:inline-flex;align-items:center;gap:8px;background:rgba(201,168,76,0.08);border:1px solid rgba(201,168,76,0.25);padding:10px 20px;font-size:0.62rem;color:var(--g1);letter-spacing:2px;text-transform:uppercase;margin-bottom:32px;}
.forjemos-cta .f-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

/* ── HERO COIN ──────────────────────────────────────────────── */
.lc-hero-coin{
  position:relative;
  width:min(520px,80vw);
  aspect-ratio:1/1;
  margin:0 auto;
  border-radius:50%;
  background:radial-gradient(circle,rgba(212,175,55,.25) 0%,rgba(212,175,55,0) 70%);
  box-shadow:
    0 0 0 2px rgba(212,175,55,.9),
    0 0 40px 6px rgba(212,175,55,.45),
    inset 0 0 60px rgba(212,175,55,.15);
  display:grid;
  place-items:center;
  animation:lc-float 7s ease-in-out infinite;
}
.lc-coin-ring{position:absolute;border-radius:50%;pointer-events:none;}
.lc-coin-ring--outer{inset:-12%;border:1px dashed rgba(212,175,55,0.45);animation:lc-spin 60s linear infinite;}
.lc-coin-ring--inner{inset:-4%;border:1px solid rgba(212,175,55,0.22);animation:lc-spin 40s linear infinite reverse;}
@media(max-width:1024px){
  .lc-hero-coin{width:min(400px,75vw);}
}
@keyframes lc-spin{to{transform:rotate(360deg)}}
.lc-coin-img{
  width:78%;
  height:78%;
  object-fit:contain;
  object-position:center center;
  display:block;
  filter:drop-shadow(0 10px 30px rgba(0,0,0,.45));
  position:relative;z-index:2;
}
@keyframes lc-float{0%,100%{translate:0 0}50%{translate:0 -14px}}
@media(max-width:640px){
  html,body{overflow-x:hidden;}
  /* hero */
  #inicio{padding:72px 0 40px!important;min-height:auto!important;}
  h1.h-title{font-size:clamp(1.8rem,8vw,2.4rem);line-height:1.15;}
  .h-btns{justify-content:center;flex-wrap:wrap;}
  /* coin — más pequeña, no tapa el halo */
  .lc-hero-coin{width:min(260px,65vw)!important;margin:16px auto 0!important;}
}
@media(prefers-reduced-motion:reduce){.lc-hero-coin{animation:none!important}}

/* ── PRINT ──────────────────────────────────────────────────── */
@media print{
  #nav,.wa-float,.leg-wrap,.bb-bar,.mgal{display:none!important;}
  .panel{display:block!important;}
  body{background:#fff;color:#000;}
  .h-title,.sh{color:#000!important;-webkit-text-fill-color:#000!important;}
  a{color:#C9A84C;}
}
