/* =========================================================
   SAMPSON V5 — NAVBAR GLOBAL PREMIUM / FIJO / RESPONSIVE
   Este archivo se carga AL FINAL en portada e interiores para
   mantener exactamente la misma geometría en todo el portal.
   ========================================================= */
:root{
  --sp5-red:#b3080b;
  --sp5-red-deep:#720003;
  --sp5-red-bright:#d71920;
  --sp5-gold:#e5aa2d;
  --sp5-ink:#20191a;
  --sp5-nav-h:112px;
  --sp5-nav-compact-h:76px;
  --sp5-google-shadow:0 1px 2px rgba(60,64,67,.18),0 1px 3px 1px rgba(60,64,67,.08);
}

/* ===== NAVBAR GLOBAL: MISMA POSICIÓN EN TODAS LAS PÁGINAS ===== */
html body .premium-nav.sampson-global-navbar{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  height:var(--sp5-nav-h)!important;
  min-height:var(--sp5-nav-h)!important;
  margin:0!important;
  padding:4px 0 0!important;
  background:rgba(255,255,255,.985)!important;
  border:0!important;
  border-bottom:1px solid rgba(60,64,67,.14)!important;
  box-shadow:var(--sp5-google-shadow)!important;
  backdrop-filter:saturate(1.08) blur(14px)!important;
  -webkit-backdrop-filter:saturate(1.08) blur(14px)!important;
  z-index:1090!important;
  transition:height .24s cubic-bezier(.2,.7,.2,1),min-height .24s cubic-bezier(.2,.7,.2,1),box-shadow .24s ease,background .24s ease!important;
}

/* Ribete corporativo superior */
html body .premium-nav.sampson-global-navbar::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:0!important;
  width:100%!important;
  height:4px!important;
  background:linear-gradient(90deg,#5f0002 0%,#8f0004 18%,#d71920 48%,#a90008 72%,#650002 100%)!important;
  box-shadow:0 1px 6px rgba(179,8,11,.24)!important;
  pointer-events:none!important;
  z-index:3!important;
}
html body .premium-nav.sampson-global-navbar::after{display:none!important}

/* El spacer evita que el navbar fijo tape el comienzo de cada página. */
.sampson-navbar-spacer{
  display:block!important;
  width:100%!important;
  height:var(--sp5-nav-h)!important;
  min-height:var(--sp5-nav-h)!important;
  background:transparent!important;
}

/* Contenedor de borde a borde: logo a la izquierda, menú como la portada, teléfono a la derecha. */
html body .premium-nav.sampson-global-navbar > .container-xl{
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0 clamp(26px,2.55vw,50px)!important;
  display:grid!important;
  grid-template-columns:350px minmax(0,1fr)!important;
  align-items:center!important;
  gap:0!important;
}

html body .premium-nav.sampson-global-navbar .brand-wrap.sampson-logo-link{
  width:350px!important;
  min-width:350px!important;
  height:100%!important;
  margin:0!important;
  padding:7px 0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex:none!important;
  overflow:visible!important;
}
html body .premium-nav.sampson-global-navbar .sampson-navbar-logo{
  display:block!important;
  width:auto!important;
  height:94px!important;
  max-width:250px!important;
  object-fit:contain!important;
  object-position:left center!important;
  transform-origin:left center!important;
  transition:height .24s cubic-bezier(.2,.7,.2,1),max-width .24s cubic-bezier(.2,.7,.2,1)!important;
}

html body .premium-nav.sampson-global-navbar #mainNav{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:30px!important;
}
html body .premium-nav.sampson-global-navbar .navbar-nav{
  justify-self:center!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:1px!important;
  margin:0!important;
  padding:0!important;
  white-space:nowrap!important;
}
html body .premium-nav.sampson-global-navbar .navbar-nav .nav-item{
  margin:0!important;
  padding:0!important;
}
html body .premium-nav.sampson-global-navbar .navbar-nav .nav-link{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:62px!important;
  margin:0!important;
  padding:20px 13px!important;
  border-radius:10px!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#211d1e!important;
  font-family:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif!important;
  font-size:16.5px!important;
  line-height:1.15!important;
  font-weight:800!important;
  letter-spacing:-.025em!important;
  text-shadow:none!important;
  transition:color .18s ease,background .18s ease,transform .18s ease!important;
}
html body .premium-nav.sampson-global-navbar .navbar-nav .nav-link:hover{
  color:var(--sp5-red)!important;
  background:linear-gradient(180deg,rgba(179,8,11,.035),rgba(229,170,45,.035))!important;
  transform:translateY(-1px)!important;
}
html body .premium-nav.sampson-global-navbar .navbar-nav .nav-link.active{
  color:var(--sp5-red)!important;
  background:transparent!important;
}
html body .premium-nav.sampson-global-navbar .navbar-nav .nav-link::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:13px!important;
  right:13px!important;
  bottom:7px!important;
  width:auto!important;
  height:3px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#850003 0%,#d71920 62%,#e5aa2d 100%)!important;
  transform:scaleX(0)!important;
  transform-origin:center!important;
  opacity:0!important;
  transition:transform .20s ease,opacity .20s ease!important;
}
html body .premium-nav.sampson-global-navbar .navbar-nav .nav-link:hover::after,
html body .premium-nav.sampson-global-navbar .navbar-nav .nav-link.active::after{
  transform:scaleX(1)!important;
  opacity:1!important;
}

html body .premium-nav.sampson-global-navbar .phone-btn{
  justify-self:end!important;
  flex:none!important;
  min-height:58px!important;
  margin:0!important;
  padding:0 25px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  border:1px solid rgba(111,0,3,.24)!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#cf0d13 0%,#a40006 52%,#760003 100%)!important;
  color:#fff!important;
  font-family:'Manrope',system-ui,sans-serif!important;
  font-size:16.5px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:-.015em!important;
  white-space:nowrap!important;
  box-shadow:0 1px 2px rgba(109,0,3,.20),0 8px 22px rgba(179,8,11,.15),inset 0 1px 0 rgba(255,255,255,.18)!important;
  transition:min-height .24s ease,padding .24s ease,font-size .24s ease,transform .18s ease,box-shadow .18s ease!important;
}
html body .premium-nav.sampson-global-navbar .phone-btn i{font-size:18px!important}
html body .premium-nav.sampson-global-navbar .phone-btn:hover{
  color:#fff!important;
  transform:translateY(-1px)!important;
  box-shadow:0 1px 2px rgba(109,0,3,.20),0 11px 24px rgba(179,8,11,.20),inset 0 1px 0 rgba(255,255,255,.2)!important;
}

/* ===== ESTADO COMPACTO AL BAJAR EL SCROLL ===== */
html body .premium-nav.sampson-global-navbar.is-compact{
  height:var(--sp5-nav-compact-h)!important;
  min-height:var(--sp5-nav-compact-h)!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 1px 2px rgba(60,64,67,.20),0 2px 5px rgba(60,64,67,.08)!important;
}
html body .premium-nav.sampson-global-navbar.is-compact .sampson-navbar-logo{
  height:62px!important;
  max-width:190px!important;
}
html body .premium-nav.sampson-global-navbar.is-compact .navbar-nav .nav-link{
  min-height:48px!important;
  padding:14px 11px!important;
  font-size:14.5px!important;
}
html body .premium-nav.sampson-global-navbar.is-compact .navbar-nav .nav-link::after{
  left:11px!important;
  right:11px!important;
  bottom:3px!important;
  height:2px!important;
}
html body .premium-nav.sampson-global-navbar.is-compact .phone-btn{
  min-height:46px!important;
  padding:0 19px!important;
  border-radius:13px!important;
  font-size:14px!important;
}
html body .premium-nav.sampson-global-navbar.is-compact .phone-btn i{font-size:16px!important}

/* ===== FLECHA FLOTANTE VOLVER ARRIBA ===== */
.sampson-backtop{
  position:fixed!important;
  right:18px!important;
  bottom:150px!important;
  z-index:1085!important;
  width:50px!important;
  height:50px!important;
  padding:0!important;
  border:1px solid rgba(126,0,4,.24)!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(145deg,#fff 0%,#fff8f5 100%)!important;
  color:var(--sp5-red)!important;
  box-shadow:0 1px 2px rgba(60,64,67,.16),0 8px 22px rgba(34,28,29,.15)!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:translateY(10px) scale(.92)!important;
  transition:opacity .2s ease,visibility .2s ease,transform .2s ease,background .2s ease,color .2s ease!important;
  cursor:pointer!important;
}
.sampson-backtop i{font-size:22px!important;font-weight:900!important}
.sampson-backtop.is-visible{
  opacity:1!important;
  visibility:visible!important;
  transform:translateY(0) scale(1)!important;
}
.sampson-backtop:hover{
  background:linear-gradient(135deg,#c90d13,#7c0003)!important;
  color:#fff!important;
  transform:translateY(-2px) scale(1)!important;
}

/* ===== CRÉDITO DE DESARROLLO MÁS VISIBLE ===== */
footer .footer-bottom{
  align-items:center!important;
  gap:18px!important;
}
footer .developer-credit,
footer .footer-bottom > span:last-child{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  min-height:38px!important;
  padding:8px 13px!important;
  border:1px solid rgba(229,170,45,.38)!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,rgba(179,8,11,.26),rgba(229,170,45,.10))!important;
  color:#fff!important;
  font-size:13.5px!important;
  font-weight:700!important;
  line-height:1.25!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;
}
footer .developer-credit::before,
footer .footer-bottom > span:last-child::before{
  content:"</>"!important;
  color:var(--sp5-gold)!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:-.08em!important;
}
footer .developer-credit a,
footer .footer-bottom > span:last-child a{
  color:#f6c859!important;
  font-weight:900!important;
  text-decoration:none!important;
}
footer .developer-credit a:hover,
footer .footer-bottom > span:last-child a:hover{color:#fff!important;text-decoration:underline!important}

/* ===== TABLET / NOTEBOOK ===== */
@media (min-width:1200px) and (max-width:1499.98px){
  html body .premium-nav.sampson-global-navbar > .container-xl{
    grid-template-columns:270px minmax(0,1fr)!important;
    padding-left:22px!important;
    padding-right:22px!important;
  }
  html body .premium-nav.sampson-global-navbar .brand-wrap.sampson-logo-link{width:270px!important;min-width:270px!important}
  html body .premium-nav.sampson-global-navbar .sampson-navbar-logo{height:88px!important;max-width:205px!important}
  html body .premium-nav.sampson-global-navbar #mainNav{column-gap:16px!important}
  html body .premium-nav.sampson-global-navbar .navbar-nav .nav-link{font-size:14px!important;padding-left:9px!important;padding-right:9px!important}
  html body .premium-nav.sampson-global-navbar .phone-btn{font-size:14px!important;padding-left:17px!important;padding-right:17px!important;min-height:52px!important}
  html body .premium-nav.sampson-global-navbar.is-compact .navbar-nav .nav-link{font-size:13.3px!important;padding-left:8px!important;padding-right:8px!important}
}

/* ===== MENÚ MÓVIL / TABLET ===== */
@media (max-width:1199.98px){
  :root{--sp5-nav-h:86px;--sp5-nav-compact-h:72px}
  html body .premium-nav.sampson-global-navbar{
    height:var(--sp5-nav-h)!important;
    min-height:var(--sp5-nav-h)!important;
  }
  html body .premium-nav.sampson-global-navbar > .container-xl{
    position:relative!important;
    max-width:none!important;
    height:100%!important;
    padding:0 18px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
  }
  html body .premium-nav.sampson-global-navbar .brand-wrap.sampson-logo-link{
    width:230px!important;
    min-width:0!important;
    height:100%!important;
    margin:0!important;
    padding:5px 0!important;
  }
  html body .premium-nav.sampson-global-navbar .sampson-navbar-logo{height:70px!important;max-width:215px!important}
  html body .premium-nav.sampson-global-navbar .navbar-toggler{
    width:48px!important;
    height:48px!important;
    margin-left:auto!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border:1px solid #ece6e6!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:0 1px 2px rgba(60,64,67,.12)!important;
  }
  html body .premium-nav.sampson-global-navbar #mainNav{
    position:absolute!important;
    top:100%!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:auto!important;
    max-height:calc(100vh - 86px)!important;
    overflow:auto!important;
    display:none!important;
    padding:14px 18px 20px!important;
    background:rgba(255,255,255,.99)!important;
    border-top:1px solid #eee8e8!important;
    border-bottom:1px solid #e5e5e5!important;
    box-shadow:0 4px 12px rgba(60,64,67,.14)!important;
  }
  html body .premium-nav.sampson-global-navbar #mainNav.show,
  html body .premium-nav.sampson-global-navbar #mainNav.collapsing{display:block!important}
  html body .premium-nav.sampson-global-navbar .navbar-nav{
    width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:3px!important;
  }
  html body .premium-nav.sampson-global-navbar .navbar-nav .nav-link{
    min-height:48px!important;
    justify-content:flex-start!important;
    padding:13px 14px!important;
    border-radius:11px!important;
    font-size:15px!important;
  }
  html body .premium-nav.sampson-global-navbar .navbar-nav .nav-link.active,
  html body .premium-nav.sampson-global-navbar .navbar-nav .nav-link:hover{background:#fff4f2!important}
  html body .premium-nav.sampson-global-navbar .navbar-nav .nav-link::after{display:none!important}
  html body .premium-nav.sampson-global-navbar .phone-btn{
    width:100%!important;
    min-height:50px!important;
    margin-top:10px!important;
    font-size:14.5px!important;
  }
  html body .premium-nav.sampson-global-navbar.is-compact .sampson-navbar-logo{height:58px!important;max-width:190px!important}
  .sampson-navbar-spacer{height:var(--sp5-nav-h)!important;min-height:var(--sp5-nav-h)!important}
}

@media (max-width:575.98px){
  html body .premium-nav.sampson-global-navbar > .container-xl{padding-left:12px!important;padding-right:12px!important}
  html body .premium-nav.sampson-global-navbar .brand-wrap.sampson-logo-link{width:190px!important}
  html body .premium-nav.sampson-global-navbar .sampson-navbar-logo{height:63px!important;max-width:184px!important}
  .sampson-backtop{right:10px!important;bottom:132px!important;width:46px!important;height:46px!important}
  footer .footer-bottom > span:last-child{font-size:12.5px!important;border-radius:12px!important}
}

@media (prefers-reduced-motion:reduce){
  html body .premium-nav.sampson-global-navbar,
  html body .premium-nav.sampson-global-navbar *,
  .sampson-backtop{transition:none!important}
}
