


:root {
  --gold: #B8960C;
  --gold-light: #D4AC0D;
  --gold-pale: #FDF6E3;
  --dark: #0D0D0D;
  --dark-2: #161616;
  --dark-3: #1E1E1E;
  --text: #F0EDE8;
  --text-muted: #9A9590;
  --accent: #C9A84C;
  --surface: rgba(255,255,255,0.04);
  --glass: rgba(255,255,255,0.07);
  --border-glass: rgba(255,255,255,0.10);
}

* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Inter', sans-serif;
  background: var(--dark);
  color: var(--text);
  overflow-x: hidden;
}

/* NAV */
.site-nav {
  position: fixed; top: 20px; left: 50%;
  transform: translateX(-50%);
  z-index: 1000;
  background: rgba(13,13,13,0.72);
  backdrop-filter: blur(24px) saturate(180%);
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  border: 1px solid var(--border-glass);
  border-radius: 60px;
  padding: 12px 32px;
  display: flex; align-items: center; gap: 40px;
  box-shadow: 0 8px 40px rgba(0,0,0,0.5), inset 0 1px 0 rgba(255,255,255,0.08);
  transition: all 0.3s ease;
  max-width: calc(100% - 32px);
}
.site-nav.scrolled { background: rgba(13,13,13,0.92); box-shadow: 0 12px 60px rgba(0,0,0,0.7); }
.nav-logo {
  font-family: 'Playfair Display', serif;
  font-size: 18px; font-weight: 900;
  color: var(--gold-light);
  letter-spacing: 0.04em;
  text-decoration: none; white-space: nowrap;
}
.nav-logo span { color: var(--text); }
.nav-links { display: flex; align-items: center; gap: 28px; list-style: none; }
.nav-links a {
  color: var(--text-muted); text-decoration: none;
  font-size: 13.5px; font-weight: 400;
  letter-spacing: 0.02em; transition: color 0.2s;
  cursor: pointer;
}
.nav-links a:hover, .nav-links a[data-status="active"] { color: var(--text); }
.nav-cta {
  background: var(--gold);
  color: #0D0D0D !important;
  font-weight: 600 !important;
  padding: 8px 20px; border-radius: 40px;
  font-size: 13px !important;
  transition: background 0.2s, transform 0.15s !important;
}
.nav-cta:hover { background: var(--gold-light) !important; transform: scale(1.03); color: #0D0D0D !important; }

/* HERO */
#hero {
  min-height: 100vh; display: flex; align-items: center; justify-content: center;
  position: relative; overflow: hidden;
  background: radial-gradient(ellipse 80% 60% at 60% 40%, #1a1400 0%, #0D0D0D 70%);
}
.hero-grid {
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(184,150,12,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(184,150,12,0.04) 1px, transparent 1px);
  background-size: 60px 60px;
  mask-image: radial-gradient(ellipse 70% 70% at 60% 40%, black, transparent);
}
.hero-orb { position: absolute; border-radius: 50%; filter: blur(80px); animation: float 8s ease-in-out infinite; }
.hero-orb-1 { width: 500px; height: 500px; background: radial-gradient(circle, rgba(184,150,12,0.18), transparent 70%); top: 10%; right: 5%; }
.hero-orb-2 { width: 300px; height: 300px; background: radial-gradient(circle, rgba(201,168,76,0.12), transparent 70%); bottom: 20%; left: 10%; animation-delay: -4s; }
@keyframes float { 0%,100% { transform: translateY(0) scale(1);} 50% { transform: translateY(-30px) scale(1.05);} }

.hero-content { position: relative; z-index: 2; text-align: center; max-width: 860px; padding: 100px 24px 0; }
.hero-badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(184,150,12,0.12);
  border: 1px solid rgba(184,150,12,0.3);
  border-radius: 40px; padding: 6px 16px;
  font-size: 12px; color: var(--gold-light);
  letter-spacing: 0.1em; text-transform: uppercase;
  margin-bottom: 32px;
  animation: fadeInDown 0.8s ease both;
}
.hero-badge::before { content:''; width: 6px; height: 6px; background: var(--gold-light); border-radius: 50%; animation: pulse-dot 2s infinite; }
@keyframes pulse-dot { 0%,100%{opacity:1;transform:scale(1);} 50%{opacity:0.4;transform:scale(0.6);} }

.hero-title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(44px, 7vw, 80px);
  font-weight: 900; line-height: 1.1;
  color: var(--text); margin-bottom: 24px;
  animation: fadeInUp 0.9s ease 0.15s both;
}
.hero-title em {
  font-style: normal;
  background: linear-gradient(135deg, #D4AC0D, #F0D060, #B8960C);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text;
}
.hero-sub { font-size: 18px; color: var(--text-muted); line-height: 1.7; max-width: 560px; margin: 0 auto 44px; animation: fadeInUp 0.9s ease 0.3s both; }
.hero-actions { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; animation: fadeInUp 0.9s ease 0.45s both; }

.btn-primary {
  background: linear-gradient(135deg, #B8960C, #D4AC0D);
  color: #0D0D0D; font-weight: 600; font-size: 15px;
  padding: 14px 32px; border-radius: 50px;
  border: none; cursor: pointer; text-decoration: none;
  display: inline-flex; align-items: center; gap: 8px;
  transition: all 0.25s;
  box-shadow: 0 4px 24px rgba(184,150,12,0.35);
}
.btn-primary:hover { transform: translateY(-2px); box-shadow: 0 8px 40px rgba(184,150,12,0.5); }
.btn-secondary {
  background: var(--glass); color: var(--text);
  font-weight: 500; font-size: 15px;
  padding: 14px 32px; border-radius: 50px;
  border: 1px solid var(--border-glass);
  cursor: pointer; text-decoration: none;
  display: inline-flex; align-items: center; gap: 8px;
  transition: all 0.25s; backdrop-filter: blur(8px);
}
.btn-secondary:hover { border-color: rgba(184,150,12,0.4); background: rgba(184,150,12,0.08); }

.hero-stats { display: flex; justify-content: center; gap: 48px; margin-top: 72px; padding-top: 40px; border-top: 1px solid rgba(255,255,255,0.06); animation: fadeInUp 0.9s ease 0.6s both; }
.stat-item { text-align: center; }
.stat-num { font-family: 'Playfair Display', serif; font-size: 36px; font-weight: 700; color: var(--gold-light); display: block; }
.stat-label { font-size: 12px; color: var(--text-muted); letter-spacing: 0.08em; text-transform: uppercase; margin-top: 4px; }

@keyframes fadeInDown { from{opacity:0;transform:translateY(-20px);} to{opacity:1;transform:translateY(0);} }
@keyframes fadeInUp { from{opacity:0;transform:translateY(30px);} to{opacity:1;transform:translateY(0);} }

section { padding: 96px 24px; }
.container { max-width: 1140px; margin: 0 auto; }

.section-label { display: inline-flex; align-items: center; gap: 8px; font-size: 11px; letter-spacing: 0.15em; text-transform: uppercase; color: var(--gold); margin-bottom: 16px; }
.section-label::before { content:''; width: 24px; height: 1px; background: var(--gold); }
.section-title { font-family: 'Playfair Display', serif; font-size: clamp(32px, 4vw, 48px); font-weight: 700; line-height: 1.2; color: var(--text); margin-bottom: 16px; }
.section-sub { font-size: 16px; color: var(--text-muted); line-height: 1.7; max-width: 540px; }

/* SERVICES */
#servicios { background: var(--dark-2); position: relative; overflow: hidden; }
#servicios::before { content:''; position: absolute; top:-200px; right:-200px; width: 600px; height: 600px; background: radial-gradient(circle, rgba(184,150,12,0.06), transparent 70%); border-radius: 50%; }
.services-header { max-width: 560px; margin-bottom: 64px; }
.services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
@media (max-width: 768px) { .services-grid { grid-template-columns: 1fr; } .site-nav { padding: 10px 20px; gap: 20px; } .nav-links { display: none; } .hero-stats { gap: 24px; } }
.service-card {
  background: var(--glass); border: 1px solid var(--border-glass);
  border-radius: 20px; padding: 36px 32px;
  position: relative; overflow: hidden;
  transition: all 0.35s; cursor: default;
}
.service-card::before { content:''; position: absolute; top:0; left:0; right:0; height: 2px; background: linear-gradient(90deg, transparent, var(--gold), transparent); opacity: 0; transition: opacity 0.35s; }
.service-card:hover { border-color: rgba(184,150,12,0.25); transform: translateY(-6px); box-shadow: 0 20px 60px rgba(0,0,0,0.4); }
.service-card:hover::before { opacity: 1; }
.service-icon { width: 52px; height: 52px; background: rgba(184,150,12,0.12); border-radius: 14px; display: flex; align-items: center; justify-content: center; margin-bottom: 24px; font-size: 24px; }
.service-title { font-family: 'Playfair Display', serif; font-size: 22px; font-weight: 700; color: var(--text); margin-bottom: 12px; }
.service-desc { font-size: 14px; color: var(--text-muted); line-height: 1.7; margin-bottom: 24px; }
.service-price { font-size: 28px; font-weight: 600; color: var(--gold-light); font-family: 'Playfair Display', serif; }
.service-price span { font-size: 13px; font-weight: 400; color: var(--text-muted); font-family: 'Inter', sans-serif; }
.service-list { list-style: none; margin-top: 20px; }
.service-list li { font-size: 13px; color: var(--text-muted); padding: 7px 0; border-bottom: 1px solid rgba(255,255,255,0.04); display: flex; align-items: center; gap: 8px; }
.service-list li::before { content: '✓'; color: var(--gold); font-size: 11px; flex-shrink: 0; }

/* PROCESS */
#proceso { background: var(--dark); }
.process-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; margin-top: 64px; }
@media (max-width: 768px) { .process-grid { grid-template-columns: 1fr; } }
.process-step { position: relative; padding: 32px; background: var(--glass); border: 1px solid var(--border-glass); border-radius: 20px; overflow: hidden; }
.process-num { font-family: 'Playfair Display', serif; font-size: 72px; font-weight: 900; color: rgba(184,150,12,0.08); position: absolute; top:-10px; right: 16px; line-height: 1; user-select: none; }
.process-step h3 { font-family: 'Playfair Display', serif; font-size: 20px; color: var(--text); margin-bottom: 10px; }
.process-step p { font-size: 14px; color: var(--text-muted); line-height: 1.7; }

/* BLOG */
.blog-section { background: var(--dark-2); min-height: 100vh; }
.blog-header { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 48px; flex-wrap: wrap; gap: 20px; }
.blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
@media (max-width: 768px) { .blog-grid { grid-template-columns: 1fr; } .blog-header { flex-direction: column; align-items: flex-start; } }
.blog-card { background: var(--glass); border: 1px solid var(--border-glass); border-radius: 20px; overflow: hidden; cursor: pointer; transition: all 0.3s; text-align: left; width: 100%; font-family: inherit; color: inherit; padding: 0; }
.blog-card:hover { border-color: rgba(184,150,12,0.25); transform: translateY(-4px); box-shadow: 0 16px 48px rgba(0,0,0,0.4); }
.blog-img { height: 190px; background: linear-gradient(135deg, #1a1400, #2a2000); display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; }
.blog-img-placeholder { font-size: 48px; opacity: 0.3; }
.blog-body { padding: 24px; }
.blog-date { font-size: 11px; color: var(--gold); letter-spacing: 0.08em; text-transform: uppercase; margin-bottom: 10px; }
.blog-title { font-family: 'Playfair Display', serif; font-size: 19px; font-weight: 700; color: var(--text); line-height: 1.35; margin-bottom: 12px; }
.blog-excerpt { font-size: 13px; color: var(--text-muted); line-height: 1.65; }

/* CONTACT */
#contacto { background: var(--dark); position: relative; overflow: hidden; }
#contacto::before { content:''; position: absolute; bottom:-300px; left:-300px; width: 700px; height: 700px; background: radial-gradient(circle, rgba(184,150,12,0.05), transparent 70%); border-radius: 50%; }
.contact-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
@media (max-width: 768px) { .contact-layout { grid-template-columns: 1fr; gap: 40px; } }
.contact-info h2 { font-family: 'Playfair Display', serif; font-size: 40px; font-weight: 700; margin-bottom: 20px; }
.contact-info p { color: var(--text-muted); line-height: 1.7; margin-bottom: 32px; }
.contact-detail { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; color: var(--text-muted); font-size: 14px; }
.contact-detail-icon { width: 36px; height: 36px; background: rgba(184,150,12,0.1); border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 16px; flex-shrink: 0; }
.contact-form { background: var(--glass); border: 1px solid var(--border-glass); border-radius: 24px; padding: 40px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 600px) { .form-row { grid-template-columns: 1fr; } }
.form-group { margin-bottom: 20px; }
.form-group label { display: block; font-size: 12px; color: var(--text-muted); letter-spacing: 0.06em; text-transform: uppercase; margin-bottom: 8px; }
.form-group input, .form-group select, .form-group textarea {
  width: 100%; background: rgba(255,255,255,0.04);
  border: 1px solid var(--border-glass); border-radius: 12px;
  padding: 12px 16px; color: var(--text); font-size: 14px;
  font-family: 'Inter', sans-serif; outline: none;
  transition: border-color 0.2s; -webkit-appearance: none;
}
.form-group select option { background: #1E1E1E; }
.form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: rgba(184,150,12,0.5); }
.form-group textarea { resize: vertical; min-height: 100px; }

/* FOOTER */
.site-footer { background: var(--dark-2); border-top: 1px solid var(--border-glass); padding: 48px 24px 32px; }
.footer-inner { max-width: 1140px; margin: 0 auto; display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 48px; }
@media (max-width: 768px) { .footer-inner { grid-template-columns: 1fr; gap: 32px; } }
.footer-brand p { font-size: 13px; color: var(--text-muted); line-height: 1.7; margin-top: 14px; max-width: 300px; }
.footer-col h4 { font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--text-muted); margin-bottom: 16px; }
.footer-col ul { list-style: none; }
.footer-col ul li { margin-bottom: 10px; }
.footer-col ul li a { color: var(--text-muted); text-decoration: none; font-size: 14px; transition: color 0.2s; }
.footer-col ul li a:hover { color: var(--gold-light); }
.footer-bottom { max-width: 1140px; margin: 32px auto 0; padding-top: 24px; border-top: 1px solid var(--border-glass); display: flex; justify-content: space-between; align-items: center; font-size: 12px; color: var(--text-muted); flex-wrap: wrap; gap: 12px; }

/* MODAL */
.modal-overlay { position: fixed; inset: 0; background: rgba(0,0,0,0.85); backdrop-filter: blur(8px); z-index: 2000; display: flex; align-items: center; justify-content: center; padding: 24px; }
.modal { background: var(--dark-3); border: 1px solid var(--border-glass); border-radius: 24px; padding: 48px; max-width: 440px; width: 100%; position: relative; animation: modalIn 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); }
@keyframes modalIn { from{opacity:0; transform: scale(0.9) translateY(20px);} to{opacity:1; transform: scale(1) translateY(0);} }
.modal-close { position: absolute; top: 16px; right: 16px; background: var(--glass); border: 1px solid var(--border-glass); border-radius: 50%; width: 32px; height: 32px; cursor: pointer; color: var(--text-muted); font-size: 18px; display: flex; align-items: center; justify-content: center; transition: all 0.2s; }
.modal-close:hover { color: var(--text); border-color: rgba(255,255,255,0.2); }
.modal h2 { font-family: 'Playfair Display', serif; font-size: 28px; font-weight: 700; color: var(--text); margin-bottom: 8px; }
.modal p { font-size: 14px; color: var(--text-muted); margin-bottom: 32px; }
.modal-logo { font-family: 'Playfair Display', serif; font-size: 22px; color: var(--gold-light); margin-bottom: 28px; }
.modal-logo span { color: var(--text); }
.alert { padding: 12px 16px; border-radius: 10px; font-size: 13px; margin-bottom: 16px; }
.alert-error { background: rgba(226,75,74,0.12); border: 1px solid rgba(226,75,74,0.3); color: #F09595; }
.alert-success { background: rgba(99,153,34,0.12); border: 1px solid rgba(99,153,34,0.3); color: #97C459; }

/* REVEAL */
.reveal { opacity: 0; transform: translateY(24px); transition: opacity 0.7s ease, transform 0.7s ease; }
.reveal.visible { opacity: 1; transform: translateY(0); }

/* BLOG FULL VIEW */
.blog-full-view { min-height: 100vh; background: var(--dark); padding: 140px 24px 80px; }
.blog-full-inner { max-width: 760px; margin: 0 auto; }
.blog-full-back { display: inline-flex; align-items: center; gap: 8px; color: var(--text-muted); text-decoration: none; font-size: 14px; margin-bottom: 32px; transition: gap 0.2s, color 0.2s; cursor: pointer; }
.blog-full-back:hover { gap: 12px; color: var(--gold-light); }
.blog-full-date { font-size: 12px; color: var(--gold); letter-spacing: 0.1em; text-transform: uppercase; margin-bottom: 16px; }
.blog-full-inner h1 { font-family: 'Playfair Display', serif; font-size: clamp(32px, 4vw, 48px); font-weight: 900; line-height: 1.2; margin-bottom: 32px; color: var(--text); }
.blog-full-body { font-size: 17px; line-height: 1.8; color: var(--text-muted); }
.blog-full-body p { margin-bottom: 20px; }
.divider { height: 1px; background: var(--border-glass); margin: 40px 0; }

/* ADMIN PANEL */
.admin-shell { min-height: 100vh; background: var(--dark); display: grid; grid-template-columns: 240px 1fr; }
@media (max-width: 768px) { .admin-shell { grid-template-columns: 1fr; } }
.admin-sidebar { background: var(--dark-2); border-right: 1px solid var(--border-glass); padding: 28px 20px; }
.admin-logo { font-family: 'Playfair Display', serif; font-size: 18px; color: var(--gold-light); margin-bottom: 4px; }
.admin-logo span { color: var(--text); }
.admin-role { font-size: 11px; color: var(--text-muted); letter-spacing: 0.06em; text-transform: uppercase; margin-bottom: 36px; }
.admin-nav { list-style: none; display: flex; flex-direction: column; gap: 4px; }
.admin-nav button {
  width: 100%; text-align: left;
  display: flex; align-items: center; gap: 10px;
  padding: 10px 14px; border-radius: 10px;
  color: var(--text-muted); background: transparent;
  border: none; font-family: inherit;
  font-size: 14px; cursor: pointer; transition: all 0.2s;
}
.admin-nav button:hover, .admin-nav button.active { background: rgba(184,150,12,0.1); color: var(--gold-light); }
.admin-nav button.danger { color: #F09595; margin-top: auto; }
.admin-main { padding: 40px 48px; min-height: 100vh; }
@media (max-width: 768px) { .admin-main { padding: 24px; } }
.admin-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 40px; flex-wrap: wrap; gap: 16px; }
.admin-header h1 { font-family: 'Playfair Display', serif; font-size: 28px; font-weight: 700; }
.admin-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-bottom: 40px; }
@media (max-width: 768px) { .admin-stats { grid-template-columns: 1fr; } }
.admin-stat-card { background: var(--glass); border: 1px solid var(--border-glass); border-radius: 16px; padding: 24px; }
.admin-stat-card .label { font-size: 12px; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: 8px; }
.admin-stat-card .value { font-family: 'Playfair Display', serif; font-size: 32px; font-weight: 700; color: var(--gold-light); }
.admin-section { background: var(--glass); border: 1px solid var(--border-glass); border-radius: 20px; padding: 32px; margin-bottom: 28px; }
.admin-section-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 24px; }
.admin-section-header h2 { font-family: 'Playfair Display', serif; font-size: 20px; }
.post-list { list-style: none; }
.post-item { display: flex; justify-content: space-between; align-items: center; padding: 14px 0; border-bottom: 1px solid rgba(255,255,255,0.05); gap: 16px; flex-wrap: wrap; }
.post-item:last-child { border-bottom: none; }
.post-item-title { font-size: 14px; color: var(--text); flex: 1; min-width: 200px; }
.post-item-date { font-size: 12px; color: var(--text-muted); }
.post-item-actions { display: flex; gap: 8px; }
.btn-sm { padding: 6px 14px; border-radius: 8px; font-size: 12px; font-weight: 500; cursor: pointer; border: 1px solid var(--border-glass); transition: all 0.2s; font-family: inherit; }
.btn-edit { background: rgba(184,150,12,0.12); color: var(--gold); border-color: rgba(184,150,12,0.25); }
.btn-edit:hover { background: rgba(184,150,12,0.22); }
.btn-del { background: rgba(226,75,74,0.08); color: #F09595; border-color: rgba(226,75,74,0.2); }
.btn-del:hover { background: rgba(226,75,74,0.16); }
.post-form-grid { display: grid; gap: 20px; margin-top: 24px; }
.rich-editor { width: 100%; min-height: 220px; background: rgba(255,255,255,0.04); border: 1px solid var(--border-glass); border-radius: 12px; padding: 16px; color: var(--text); font-size: 14px; font-family: 'Inter', sans-serif; resize: vertical; outline: none; line-height: 1.7; transition: border-color 0.2s; }
.rich-editor:focus { border-color: rgba(184,150,12,0.5); }
.tag-group { display: flex; gap: 10px; flex-wrap: wrap; }
.tag { padding: 6px 14px; border-radius: 40px; background: rgba(184,150,12,0.1); border: 1px solid rgba(184,150,12,0.25); color: var(--gold); font-size: 12px; cursor: pointer; transition: all 0.2s; user-select: none; }
.tag.selected { background: var(--gold); color: #0D0D0D; border-color: var(--gold); }

/* Small access link — discreet button on blog page */
.access-link { display: inline-flex; align-items: center; gap: 6px; padding: 8px 16px; border-radius: 40px; background: transparent; border: 1px solid var(--border-glass); color: var(--text-muted); font-size: 12px; text-decoration: none; transition: all 0.2s; cursor: pointer; font-family: inherit; }
.access-link:hover { border-color: var(--gold); color: var(--gold); }

/* SCROLL INDICATOR */
.scroll-line { position: fixed; top: 0; left: 0; height: 2px; background: linear-gradient(90deg, var(--gold), var(--gold-light)); z-index: 9999; transition: width 0.1s; width: 0%; }

/* WHATSAPP FLOAT */
.wa-float { position: fixed; bottom: 28px; right: 28px; width: 52px; height: 52px; background: #25D366; border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 20px rgba(37,211,102,0.4); cursor: pointer; z-index: 900; text-decoration: none; }

/* RICH EDITOR */
.rich-wrap { border: 1px solid var(--border-glass); border-radius: 12px; overflow: hidden; background: rgba(255,255,255,0.04); }
.rich-toolbar { display: flex; flex-wrap: wrap; gap: 4px; padding: 8px; background: rgba(0,0,0,0.25); border-bottom: 1px solid var(--border-glass); }
.rich-toolbar button, .rich-toolbar select { background: rgba(255,255,255,0.05); color: var(--text); border: 1px solid var(--border-glass); border-radius: 6px; padding: 5px 9px; font-size: 12px; cursor: pointer; font-family: inherit; transition: all 0.15s; }
.rich-toolbar button:hover, .rich-toolbar select:hover { background: rgba(184,150,12,0.15); border-color: rgba(184,150,12,0.4); }
.rich-toolbar select { padding: 4px 6px; }
.rich-toolbar select option { background: #1E1E1E; color: var(--text); }
.rich-color { display: inline-flex; align-items: center; gap: 4px; padding: 4px 8px; background: rgba(255,255,255,0.05); border: 1px solid var(--border-glass); border-radius: 6px; cursor: pointer; font-size: 12px; }
.rich-color input[type="color"] { width: 18px; height: 18px; border: none; background: none; cursor: pointer; padding: 0; }
.rich-editable { min-height: 260px; padding: 16px 18px; color: var(--text); font-size: 14px; line-height: 1.7; outline: none; }
.rich-editable:empty::before { content: 'Escribe el contenido del artículo...'; color: var(--text-muted); }
.rich-editable p { margin-bottom: 12px; }
.rich-editable h2 { font-family: 'Playfair Display', serif; font-size: 22px; margin: 16px 0 10px; color: var(--text); }
.rich-editable h3 { font-family: 'Playfair Display', serif; font-size: 18px; margin: 14px 0 8px; color: var(--text); }
.rich-editable blockquote { border-left: 3px solid var(--gold); padding-left: 14px; color: var(--text-muted); margin: 12px 0; font-style: italic; }
.rich-editable a { color: var(--gold-light); text-decoration: underline; }
.rich-editable ul, .rich-editable ol { padding-left: 24px; margin-bottom: 12px; }
.rich-editable img, .rich-editable video { max-width: 100%; border-radius: 12px; margin: 12px 0; }

/* COVER UPLOADER */
.cover-uploader { display: flex; flex-direction: column; gap: 10px; }
.cover-preview { position: relative; width: 100%; height: 200px; border-radius: 12px; border: 1px dashed var(--border-glass); background: rgba(255,255,255,0.03); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.cover-preview img { width: 100%; height: 100%; object-fit: cover; }
.cover-preview .placeholder { color: var(--text-muted); font-size: 13px; }
.cover-actions { display: flex; gap: 8px; flex-wrap: wrap; }

/* TAGS MANAGER */
.tag-manager { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin-top: 10px; padding-top: 12px; border-top: 1px dashed var(--border-glass); }
.tag-manager input { flex: 1; min-width: 160px; background: rgba(255,255,255,0.05); border: 1px solid var(--border-glass); border-radius: 8px; padding: 8px 12px; color: var(--text); font-size: 13px; font-family: inherit; outline: none; }
.tag-chip { display: inline-flex; align-items: center; gap: 6px; }
.tag-chip .x { cursor: pointer; opacity: 0.6; }
.tag-chip .x:hover { opacity: 1; color: #F09595; }

/* BLOG CARD extras */
.blog-card .blog-img img { width: 100%; height: 100%; object-fit: cover; }
.blog-tags { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 12px; }
.blog-tag-mini { font-size: 10px; padding: 3px 8px; border-radius: 20px; background: rgba(184,150,12,0.12); color: var(--gold); letter-spacing: 0.04em; text-transform: uppercase; }

/* BLOG FULL cover + whatsapp box */
.blog-full-cover { width: 100%; max-height: 420px; object-fit: cover; border-radius: 20px; margin-bottom: 32px; }
.blog-full-body img, .blog-full-body video { max-width: 100%; border-radius: 12px; margin: 16px 0; }
.blog-full-body a { color: var(--gold-light); }
.blog-full-body h2 { font-family: 'Playfair Display', serif; color: var(--text); font-size: 26px; margin: 24px 0 12px; }
.blog-full-body h3 { font-family: 'Playfair Display', serif; color: var(--text); font-size: 20px; margin: 20px 0 10px; }
.blog-full-body blockquote { border-left: 3px solid var(--gold); padding-left: 16px; color: var(--text); font-style: italic; margin: 16px 0; }

.wa-contact-box { margin-top: 48px; padding: 32px; background: linear-gradient(135deg, rgba(37,211,102,0.08), rgba(184,150,12,0.05)); border: 1px solid rgba(37,211,102,0.25); border-radius: 20px; }
.wa-contact-box h3 { font-family: 'Playfair Display', serif; color: var(--text); font-size: 22px; margin-bottom: 8px; }
.wa-contact-box p { color: var(--text-muted); font-size: 14px; margin-bottom: 16px; line-height: 1.6; }
.wa-contact-box textarea { width: 100%; min-height: 90px; background: rgba(0,0,0,0.25); border: 1px solid var(--border-glass); border-radius: 10px; padding: 12px 14px; color: var(--text); font-family: inherit; font-size: 14px; resize: vertical; outline: none; margin-bottom: 14px; }
.wa-contact-box textarea:focus { border-color: rgba(37,211,102,0.5); }
.btn-whatsapp { display: inline-flex; align-items: center; gap: 10px; background: #25D366; color: #0D0D0D !important; font-weight: 600; padding: 12px 24px; border-radius: 40px; text-decoration: none; font-size: 14px; transition: all 0.2s; border: none; cursor: pointer; font-family: inherit; }
.btn-whatsapp:hover { background: #1ebe57; transform: translateY(-1px); box-shadow: 0 6px 20px rgba(37,211,102,0.35); }
/* ===== Ajustes PHP/MySQL blog ===== */
.page-loader { min-height: 70vh; display: grid; place-items: center; align-content: center; gap: 16px; color: var(--text-muted); background: var(--dark); }
.page-loader span { width: 38px; height: 38px; border-radius: 50%; border: 3px solid rgba(255,255,255,.12); border-top-color: var(--gold); animation: spin 0.8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
.share-actions { display: flex; gap: 10px; flex-wrap: wrap; margin: 20px 0 24px; }
.share-btn { border: 1px solid var(--border-glass); border-radius: 999px; padding: 9px 15px; font-size: 13px; font-weight: 700; text-decoration: none; color: var(--text); background: rgba(255,255,255,.05); transition: all .2s; }
.share-btn:hover { transform: translateY(-2px); border-color: rgba(184,150,12,.4); }
.share-wa { background: rgba(37,211,102,.12); }
.share-fb { background: rgba(24,119,242,.12); }
.admin-stats-4 { grid-template-columns: repeat(4, 1fr); }
.admin-columns { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr); gap: 24px; align-items: start; }
.admin-table { width: 100%; border-collapse: collapse; font-size: 13px; color: var(--text-muted); }
.admin-table th, .admin-table td { text-align: left; padding: 11px 8px; border-bottom: 1px solid rgba(255,255,255,.06); }
.admin-table th { color: var(--text); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.status-badge { display: inline-flex; align-items: center; padding: 3px 8px; border-radius: 999px; font-size: 10px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; margin-right: 6px; }
.status-badge.ok { background: rgba(37,211,102,.12); color: #86efac; }
.status-badge.draft { background: rgba(250,204,21,.12); color: #fde68a; }
.post-meta-mini { color: var(--text-muted); font-size: 11px; margin-top: 6px; line-height: 1.5; }
.btn-view { background: rgba(255,255,255,.07); color: var(--text); text-decoration: none; display: inline-flex; align-items: center; }
.admin-input { flex: 1; min-width: 220px; background: rgba(255,255,255,0.05); border: 1px solid var(--border-glass); border-radius: 8px; padding: 10px 14px; color: var(--text); font-size: 14px; outline: none; }
.slug-row { display: flex; align-items: center; gap: 0; background: rgba(255,255,255,0.04); border: 1px solid var(--border-glass); border-radius: 12px; overflow: hidden; }
.slug-row span { max-width: 45%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--text-muted); font-size: 12px; padding: 12px 0 12px 14px; }
.slug-row input { border: 0 !important; background: transparent !important; padding-left: 2px !important; }
.help-text { display: block; color: var(--text-muted); font-size: 12px; margin-top: 8px; line-height: 1.5; }
.tag-mini-btn { background: none; border: none; color: inherit; cursor: pointer; font-size: 12px; margin-left: 5px; }
.wa-contact-box .btn-whatsapp { display: inline-flex; align-items: center; justify-content: center; border: none; border-radius: 999px; padding: 12px 20px; background: #25D366; color: #0D0D0D; font-weight: 800; cursor: pointer; margin-top: 12px; }
@media (max-width: 980px) { .admin-stats-4 { grid-template-columns: repeat(2, 1fr); } .admin-columns { grid-template-columns: 1fr; } }
@media (max-width: 640px) { .admin-stats-4 { grid-template-columns: 1fr; } .slug-row { display:block; padding-top: 10px; } .slug-row span { display:block; max-width:100%; padding: 0 14px 4px; } }

/* =========================================================
   IMAGENiOS — Tema corporativo blanco, azul marino y negro
   Capa visual 2026. Mantiene intacta la estructura existente.
   ========================================================= */
:root {
  --gold: #00AEEB;
  --gold-light: #24C8FF;
  --gold-pale: #EAF8FF;
  --dark: #F7FAFC;
  --dark-2: #061426;
  --dark-3: #0B1F38;
  --text: #091A31;
  --text-muted: #5F6F82;
  --accent: #00B8F0;
  --surface: rgba(255,255,255,.82);
  --glass: rgba(255,255,255,.76);
  --border-glass: rgba(7,31,58,.12);
  --navy: #061426;
  --navy-2: #0B2340;
  --black: #05080D;
  --white: #FFFFFF;
  --cyan: #00B8F0;
  --cyan-2: #38D6FF;
}

body {
  background: #F6F9FC;
  color: var(--text);
}

/* Navegación liquid glass */
.site-nav {
  top: 14px;
  width: min(1180px, calc(100% - 32px));
  justify-content: space-between;
  padding: 10px 18px 10px 24px;
  gap: 28px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.04)),
    rgba(5,18,35,.78);
  border: 1px solid rgba(255,255,255,.34);
  box-shadow:
    0 14px 40px rgba(0,8,20,.32),
    inset 0 1px 0 rgba(255,255,255,.55),
    inset 0 -1px 0 rgba(0,184,240,.18);
  backdrop-filter: blur(22px) saturate(170%);
  -webkit-backdrop-filter: blur(22px) saturate(170%);
  overflow: hidden;
}
.site-nav::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(110deg, transparent 10%, rgba(255,255,255,.18) 38%, transparent 62%);
  transform: translateX(-70%);
  animation: liquidSheen 8s ease-in-out infinite;
}
@keyframes liquidSheen { 0%,65%,100% { transform: translateX(-75%); } 82% { transform: translateX(75%); } }
.site-nav.scrolled {
  background: rgba(5,18,35,.92);
  box-shadow: 0 16px 48px rgba(0,8,20,.44), inset 0 1px 0 rgba(255,255,255,.32);
}
.nav-logo { display:flex; align-items:center; flex:0 0 auto; position:relative; z-index:1; }
.nav-logo img { width: 156px; height: 48px; object-fit: contain; display:block; }
.nav-links { position:relative; z-index:1; }
.nav-links a { color: rgba(255,255,255,.78); font-weight: 600; }
.nav-links a:hover, .nav-links a[data-status="active"] { color:#fff; }
.nav-cta {
  background: linear-gradient(135deg, var(--cyan), #0399E0);
  color:#fff !important;
  box-shadow: 0 8px 24px rgba(0,184,240,.34), inset 0 1px 0 rgba(255,255,255,.34);
}
.nav-cta:hover { background: linear-gradient(135deg, var(--cyan-2), var(--cyan)) !important; color:#001421 !important; }

/* Hero claro, corporativo */
#hero {
  background:
    radial-gradient(circle at 78% 30%, rgba(0,184,240,.16), transparent 30%),
    linear-gradient(135deg, #FFFFFF 0%, #F5FAFE 58%, #EDF6FC 100%);
}
.hero-grid {
  background-image:
    linear-gradient(rgba(6,20,38,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(6,20,38,.035) 1px, transparent 1px);
}
.hero-orb-1 { background: radial-gradient(circle, rgba(0,184,240,.18), transparent 70%); }
.hero-orb-2 { background: radial-gradient(circle, rgba(6,20,38,.08), transparent 70%); }
.hero-badge { background:rgba(0,184,240,.1); border-color:rgba(0,184,240,.28); color:#047EAC; font-weight:700; }
.hero-badge::before { background:var(--cyan); }
.hero-title { color:var(--navy); }
.hero-title em {
  background: linear-gradient(135deg, #00AEEB, #007EBC);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.hero-sub { color:#526174; }
.btn-primary {
  background: linear-gradient(135deg, var(--cyan), #008FD2);
  color:#fff;
  box-shadow: 0 10px 28px rgba(0,174,235,.28);
}
.btn-primary:hover { box-shadow:0 14px 36px rgba(0,174,235,.4); }
.btn-secondary { background:#fff; color:var(--navy); border-color:rgba(0,174,235,.42); box-shadow:0 8px 22px rgba(6,20,38,.08); }
.btn-secondary:hover { background:#EAF8FF; border-color:var(--cyan); }
.hero-stats { border-top-color:rgba(6,20,38,.1); }
.stat-num { color:#008FC9; }
.stat-label { color:#657487; }

section { background:#fff; }
#servicios { background:#F5F8FB; }
#proceso { background:linear-gradient(135deg, #061426, #0B2340); }
#proceso .section-title, #proceso .process-step h3 { color:#fff; }
#proceso .section-sub, #proceso .process-step p { color:rgba(255,255,255,.68); }
#contacto { background:#F5F8FB; }
.section-label { color:#008FC9; font-weight:800; }
.section-label::before { background:var(--cyan); }
.section-title { color:var(--navy); }
.section-sub { color:var(--text-muted); }

.service-card, .blog-card, .contact-form, .admin-stat-card, .admin-section {
  background:#fff;
  border-color:rgba(6,20,38,.1);
  box-shadow:0 12px 32px rgba(6,20,38,.07);
}
.service-card::before { background:linear-gradient(90deg, transparent, var(--cyan), transparent); }
.service-card:hover, .blog-card:hover { border-color:rgba(0,184,240,.36); box-shadow:0 20px 46px rgba(6,20,38,.12); }
.service-icon { background:#071B32; color:#fff; }
.service-title, .contact-info h2, .blog-card h3 { color:var(--navy); }
.service-desc, .service-list li, .contact-info p { color:var(--text-muted); }
.service-price { color:#008FC9; }
.service-list li { border-bottom-color:rgba(6,20,38,.07); }
.service-list li::before { color:var(--cyan); }
.process-step { background:rgba(255,255,255,.07); border-color:rgba(255,255,255,.13); }
.process-num { color:rgba(0,200,255,.16); }

/* Formularios y blog */
.form-group input, .form-group select, .form-group textarea, .admin-input, .rich-editor, .tag-manager input {
  background:#fff;
  color:var(--navy);
  border-color:rgba(6,20,38,.14);
}
.form-group label { color:#32445A; }
.form-group input:focus, .form-group select:focus, .form-group textarea:focus, .admin-input:focus { border-color:var(--cyan); box-shadow:0 0 0 3px rgba(0,184,240,.10); }
.blog-section { background:#F6F9FC; color:var(--text); min-height:100vh; }
.blog-card { color:var(--text); }
.blog-card .blog-date, .blog-full-date { color:#6B7788; }
.blog-card .blog-excerpt, .blog-full-body { color:#4D5C6F; }
.blog-tag, .blog-tag-mini { background:rgba(0,184,240,.11); color:#007EA9; }
.blog-full h1, .blog-full-body h2, .blog-full-body h3 { color:var(--navy); }
.divider { background:rgba(6,20,38,.1); }
.share-btn { color:var(--navy); background:#fff; border-color:rgba(6,20,38,.12); }

/* Footer con logo oficial */
.site-footer {
  background:linear-gradient(135deg, #030912 0%, #061426 58%, #0A2039 100%);
  border-top:1px solid rgba(0,184,240,.22);
  color:#fff;
  position:relative;
  overflow:hidden;
}
.site-footer::before { content:''; position:absolute; inset:0; pointer-events:none; background:radial-gradient(circle at 80% 10%, rgba(0,184,240,.13), transparent 34%); }
.footer-inner, .footer-bottom { position:relative; z-index:1; }
.footer-logo { display:inline-flex; text-decoration:none; }
.footer-logo img { width:230px; max-width:100%; height:auto; display:block; }
.footer-brand p, .footer-col ul li a, .footer-bottom { color:rgba(255,255,255,.68); }
.footer-col h4 { color:#fff; }
.footer-col ul li a:hover { color:var(--cyan-2); }
.footer-bottom { border-top-color:rgba(255,255,255,.1); }

/* Panel administrativo coherente con la identidad */
.admin-shell { background:#F4F7FA; color:var(--text); }
.admin-sidebar { background:var(--navy); border-right-color:rgba(255,255,255,.08); }
.admin-logo { color:var(--cyan); }
.admin-logo span, .admin-header h1, .admin-section-header h2 { color:var(--navy); }
.admin-sidebar .admin-logo span { color:#fff; }
.admin-role { color:rgba(255,255,255,.55); }
.admin-nav button { color:rgba(255,255,255,.72); }
.admin-nav button:hover, .admin-nav button.active { background:rgba(0,184,240,.14); color:#6DE0FF; }
.admin-stat-card .value { color:#008FC9; }
.post-item { border-bottom-color:rgba(6,20,38,.08); }
.post-item-title, .admin-table th { color:var(--navy); }
.admin-table { color:#647285; }
.admin-table th, .admin-table td { border-bottom-color:rgba(6,20,38,.08); }
.btn-edit { background:rgba(0,184,240,.1); color:#007EAC; border-color:rgba(0,184,240,.24); }
.tag { background:rgba(0,184,240,.09); border-color:rgba(0,184,240,.22); color:#007EA9; }
.tag.selected { background:var(--cyan); color:#002033; border-color:var(--cyan); }
.rich-wrap, .cover-preview, .slug-row { background:#fff; border-color:rgba(6,20,38,.12); }
.rich-toolbar { background:#EEF3F7; border-bottom-color:rgba(6,20,38,.1); }
.rich-toolbar button, .rich-toolbar select { background:#fff; color:var(--navy); border-color:rgba(6,20,38,.12); }
.rich-editable { color:var(--navy); }
.page-loader { background:#F6F9FC; color:var(--text-muted); }
.page-loader span { border-color:rgba(6,20,38,.12); border-top-color:var(--cyan); }
.scroll-line { background:linear-gradient(90deg, var(--cyan), var(--cyan-2)); }

@media (max-width: 900px) {
  .site-nav { width:calc(100% - 20px); padding:8px 14px; }
  .nav-logo img { width:132px; height:42px; }
}
@media (max-width: 768px) {
  .site-nav { justify-content:center; }
  .nav-logo img { width:142px; }
}


/* ===== Ajustes de blog y acceso administrativo ===== */
/* El menú público se oculta únicamente en /blog/admin. */
.site-nav.admin-hidden {
  display: none !important;
}
body.admin-route .scroll-line { display: none; }

/* Formato editorial uniforme 1200 × 840 px (relación 10:7). */
.blog-img {
  height: auto;
  aspect-ratio: 10 / 7;
}
.blog-card .blog-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.blog-full-cover {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  aspect-ratio: 10 / 7;
  object-fit: cover;
  object-position: center;
}
.cover-preview {
  height: auto;
  aspect-ratio: 10 / 7;
}

/* Acceso al administrador: tarjeta blanca, tipografía negra y logotipo oficial. */
.admin-login-overlay {
  background: linear-gradient(135deg, rgba(6,20,38,.94), rgba(0,0,0,.88));
}
.admin-login-modal {
  background: #FFFFFF;
  color: #090D12;
  border: 1px solid rgba(6,20,38,.12);
  box-shadow: 0 28px 80px rgba(0,0,0,.35);
}
.admin-login-modal .modal-logo {
  display: flex;
  justify-content: center;
  margin: 0 40px 26px;
}
.admin-login-modal .modal-logo img {
  display: block;
  width: min(260px, 100%);
  height: auto;
  object-fit: contain;
}
.admin-login-modal h2,
.admin-login-modal p,
.admin-login-modal .form-group label {
  color: #090D12;
}
.admin-login-modal p { color: #4B5563; }
.admin-login-modal .form-group input {
  background: #FFFFFF;
  color: #090D12;
  border-color: rgba(6,20,38,.22);
}
.admin-login-modal .form-group input::placeholder { color: #7B8490; }
.admin-login-modal .modal-close {
  background: #F2F5F8;
  border-color: rgba(6,20,38,.12);
  color: #090D12;
}
.admin-login-modal .modal-close:hover {
  background: #E7EDF2;
  color: #000000;
}

@media (max-width: 640px) {
  .admin-login-modal { padding: 38px 24px 30px; }
  .admin-login-modal .modal-logo { margin-left: 32px; margin-right: 32px; }
}

/* ===== Editor avanzado de imágenes e interlineado ===== */
.image-tool-modal{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;padding:22px;background:rgba(3,14,27,.56);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.image-tool-modal.open{display:flex}
.image-tool-card{width:min(820px,100%);max-height:92vh;overflow:auto;background:#fff;color:#071426;border:1px solid rgba(6,20,38,.12);border-radius:22px;box-shadow:0 32px 90px rgba(0,10,24,.28);padding:22px}
.image-tool-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.image-tool-head h3{margin:0;color:#061426;font-size:24px}.image-tool-head p{margin:5px 0 0;color:#657286;font-size:13px}.image-tool-close{border:0;background:#eef4f8;color:#061426;border-radius:50%;width:36px;height:36px;font-size:26px;line-height:1;cursor:pointer}
.image-tool-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(280px,.9fr);gap:22px}.image-tool-preview{min-height:280px;border:1px dashed rgba(6,20,38,.18);border-radius:16px;background:#f4f8fb;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:14px}.image-tool-preview img{display:block;max-width:100%;max-height:420px;object-fit:contain;border-radius:10px}.image-tool-controls{display:grid;gap:12px}.image-tool-controls label{display:grid;grid-template-columns:1fr auto;gap:6px 10px;align-items:center;color:#111827;font-size:13px;font-weight:700}.image-tool-controls input,.image-tool-controls select{grid-column:1/2;width:100%;border:1px solid rgba(6,20,38,.16);border-radius:9px;background:#fff;color:#071426;padding:10px 11px;font:inherit}.image-tool-controls label span{grid-column:2/3;grid-row:2;color:#6b7788;font-size:11px;font-weight:500}.image-tool-controls .image-check{display:flex;align-items:center;gap:9px;font-weight:600}.image-tool-controls .image-check input{width:auto}.image-tool-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.rich-editable img{cursor:pointer;transition:outline-color .15s,box-shadow .15s}.rich-editable img.is-selected{outline:3px solid rgba(0,184,240,.65);outline-offset:3px;box-shadow:0 0 0 7px rgba(0,184,240,.12)}.rich-editable::after,.blog-full-body::after{content:"";display:block;clear:both}
@media(max-width:720px){.image-tool-grid{grid-template-columns:1fr}.image-tool-card{padding:16px}.image-tool-preview{min-height:210px}}

/* Menú público: cristal claro y transparente con desenfoque */
.site-nav,
.site-nav.scrolled{
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(244,249,253,.48));
  border-color:rgba(255,255,255,.82);
  box-shadow:0 14px 38px rgba(6,20,38,.16),inset 0 1px 0 rgba(255,255,255,.96),inset 0 -1px 0 rgba(0,184,240,.12);
  backdrop-filter:blur(24px) saturate(155%);
  -webkit-backdrop-filter:blur(24px) saturate(155%);
}
.site-nav::before{background:linear-gradient(110deg,transparent 8%,rgba(255,255,255,.72) 38%,transparent 66%)}
.nav-links a{color:rgba(6,20,38,.76)}
.nav-links a:hover,.nav-links a[data-status="active"]{color:#061426}

/* ===== Mejora editorial: redimensionado visual, pie de foto y toolbar flotante ===== */
.admin-sidebar .admin-logo{
  display:flex;
  align-items:center;
  margin:0 0 8px;
}
.admin-sidebar .admin-logo img{
  display:block;
  width:190px;
  max-width:100%;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 8px 20px rgba(0,0,0,.18));
}

/* La barra de herramientas permanece al alcance durante la edición. */
.rich-wrap{
  position:relative;
  overflow:visible;
}
.rich-toolbar{
  position:sticky;
  top:14px;
  z-index:120;
  border:1px solid rgba(6,20,38,.10);
  border-radius:12px 12px 10px 10px;
  box-shadow:0 12px 30px rgba(6,20,38,.12);
  backdrop-filter:blur(18px) saturate(145%);
  -webkit-backdrop-filter:blur(18px) saturate(145%);
}
.rich-toolbar::after{
  content:"Herramientas de edición";
  margin-left:auto;
  align-self:center;
  padding:0 8px;
  color:#687588;
  font-size:10px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  pointer-events:none;
}

/* Figuras editoriales con nota al pie. */
.rich-editable figure.blog-media,
.blog-full-body figure.blog-media{
  box-sizing:border-box;
  max-width:100%;
  padding:0;
}
.rich-editable figure.blog-media img,
.blog-full-body figure.blog-media img{
  display:block;
  max-width:100%;
  margin:0;
}
.rich-editable figure.blog-media figcaption,
.blog-full-body figure.blog-media figcaption{
  margin:8px 2px 0;
  color:#687588;
  font-size:12px;
  line-height:1.45;
  font-style:italic;
  text-align:left;
}
.blog-full-body figure.blog-media figcaption{
  font-size:13px;
  color:#6B7480;
}

/* Selector con anclas de esquina para redimensionar dentro del editor. */
.image-resize-overlay{
  position:absolute;
  z-index:110;
  display:none;
  box-sizing:border-box;
  border:2px solid #00B8F0;
  border-radius:12px;
  pointer-events:none;
  box-shadow:0 0 0 3px rgba(0,184,240,.12);
}
.image-resize-overlay.show{display:block}
.image-resize-overlay .resize-handle{
  position:absolute;
  width:14px;
  height:14px;
  border:2px solid #fff;
  border-radius:50%;
  background:#00B8F0;
  box-shadow:0 2px 8px rgba(6,20,38,.28);
  pointer-events:auto;
  touch-action:none;
}
.image-resize-overlay .resize-handle.nw{left:-8px;top:-8px;cursor:nwse-resize}
.image-resize-overlay .resize-handle.ne{right:-8px;top:-8px;cursor:nesw-resize}
.image-resize-overlay .resize-handle.sw{left:-8px;bottom:-8px;cursor:nesw-resize}
.image-resize-overlay .resize-handle.se{right:-8px;bottom:-8px;cursor:nwse-resize}
.image-resize-overlay .resize-size{
  position:absolute;
  left:50%;
  bottom:-32px;
  transform:translateX(-50%);
  white-space:nowrap;
  border-radius:999px;
  background:#061426;
  color:#fff;
  padding:5px 9px;
  font-size:10px;
  font-weight:700;
  box-shadow:0 5px 16px rgba(6,20,38,.24);
  pointer-events:none;
}
.rich-editable img.is-selected{
  outline:none;
  box-shadow:none;
}

@media(max-width:900px){
  .rich-toolbar{top:8px}
  .rich-toolbar::after{display:none}
  .admin-sidebar .admin-logo img{width:155px}
}

/* ===== Responsive móvil, menú hamburguesa y WhatsApp por servicio ===== */
.nav-toggle{
  display:none;
  position:relative;
  z-index:4;
  width:46px;
  height:46px;
  padding:0;
  border:1px solid rgba(6,20,38,.10);
  border-radius:15px;
  background:rgba(255,255,255,.52);
  color:var(--navy);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 8px 20px rgba(6,20,38,.10);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  cursor:pointer;
}
.nav-toggle span{
  position:absolute;
  left:12px;
  width:21px;
  height:2px;
  border-radius:999px;
  background:currentColor;
  transform-origin:center;
  transition:transform .38s cubic-bezier(.68,-.55,.27,1.55),top .32s ease,opacity .2s ease,width .3s ease;
}
.nav-toggle span:nth-child(1){top:15px}.nav-toggle span:nth-child(2){top:22px}.nav-toggle span:nth-child(3){top:29px;width:15px;left:18px}
.site-nav.menu-open .nav-toggle span:nth-child(1){top:22px;transform:rotate(45deg)}
.site-nav.menu-open .nav-toggle span:nth-child(2){opacity:0;transform:scaleX(.2)}
.site-nav.menu-open .nav-toggle span:nth-child(3){top:22px;left:12px;width:21px;transform:rotate(-45deg)}

.service-card{display:flex;flex-direction:column}
.service-list{flex:1}
.service-hire-btn{
  width:100%;
  margin-top:22px;
  padding:13px 18px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,var(--cyan),var(--cyan-2));
  color:#03111f;
  font:700 13px/1 'Inter',sans-serif;
  cursor:pointer;
  box-shadow:0 9px 24px rgba(0,184,240,.24);
  transition:transform .22s ease,box-shadow .22s ease,filter .22s ease;
}
.service-hire-btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,184,240,.33);filter:saturate(1.08)}

.wa-widget{position:fixed;right:28px;bottom:28px;z-index:950;display:flex;flex-direction:column;align-items:flex-end;gap:12px;pointer-events:none}
.wa-float{position:relative;right:auto;bottom:auto;overflow:visible;border:0;padding:0;pointer-events:auto;touch-action:manipulation}
.wa-float svg{position:relative;z-index:3}
.wa-wave{position:absolute;inset:0;border:2px solid rgba(37,211,102,.55);border-radius:50%;z-index:1;animation:waPulse 2.4s ease-out infinite;pointer-events:none}
.wa-wave-two{animation-delay:1.2s}
@keyframes waPulse{0%{transform:scale(.9);opacity:.85}80%,100%{transform:scale(1.9);opacity:0}}
.wa-service-menu{
  width:min(320px,calc(100vw - 32px));
  padding:14px;
  border:1px solid rgba(255,255,255,.78);
  border-radius:20px;
  background:linear-gradient(145deg,rgba(255,255,255,.90),rgba(241,248,252,.78));
  box-shadow:0 22px 60px rgba(6,20,38,.22);
  backdrop-filter:blur(24px) saturate(150%);
  -webkit-backdrop-filter:blur(24px) saturate(150%);
  opacity:0;
  visibility:hidden;
  transform:translateY(14px) scale(.94);
  transform-origin:bottom right;
  transition:opacity .25s ease,transform .35s cubic-bezier(.2,.85,.25,1.2),visibility .25s;
  pointer-events:none;
}

.wa-widget.open .wa-service-menu{opacity:1;visibility:visible;transform:translateY(0) scale(1);pointer-events:auto}
.wa-service-title{padding:5px 7px 11px;color:#061426;font-size:13px;font-weight:800}
.wa-service-menu button{display:flex;width:100%;padding:12px 13px;margin:4px 0;border:0;border-radius:12px;background:rgba(255,255,255,.68);color:#10243a;font:600 13px/1.3 'Inter',sans-serif;text-align:left;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.wa-service-menu button::after{content:'→';margin-left:auto;color:#0aa7d5}
.wa-service-menu button:hover{background:#061426;color:#fff;transform:translateX(-3px)}

@media(max-width:768px){
  body.mobile-nav-open{overflow:hidden}
  .site-nav{
    width:calc(100% - 24px);
    min-height:64px;
    padding:8px 10px 8px 16px;
    justify-content:space-between;
    overflow:visible;
  }
  .nav-logo{position:relative;z-index:4}
  .nav-logo img{width:132px;height:auto;max-height:46px}
  .nav-toggle{display:block}
  .nav-links{
    display:flex;
    position:absolute;
    top:calc(100% + 10px);
    left:0;
    right:0;
    padding:14px;
    flex-direction:column;
    align-items:stretch;
    gap:4px;
    border:1px solid rgba(255,255,255,.82);
    border-radius:22px;
    background:linear-gradient(155deg,rgba(255,255,255,.92),rgba(236,246,252,.80));
    box-shadow:0 28px 65px rgba(6,20,38,.22);
    backdrop-filter:blur(28px) saturate(160%);
    -webkit-backdrop-filter:blur(28px) saturate(160%);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-14px) scale(.96);
    transform-origin:top right;
    transition:opacity .25s ease,transform .4s cubic-bezier(.2,.9,.25,1.15),visibility .25s;
  }
  .site-nav.menu-open .nav-links{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
  .nav-links li{width:100%;opacity:0;transform:translateY(-7px);transition:opacity .25s ease,transform .32s ease}
  .site-nav.menu-open .nav-links li{opacity:1;transform:translateY(0)}
  .site-nav.menu-open .nav-links li:nth-child(1){transition-delay:.04s}.site-nav.menu-open .nav-links li:nth-child(2){transition-delay:.08s}.site-nav.menu-open .nav-links li:nth-child(3){transition-delay:.12s}.site-nav.menu-open .nav-links li:nth-child(4){transition-delay:.16s}.site-nav.menu-open .nav-links li:nth-child(5){transition-delay:.20s}.site-nav.menu-open .nav-links li:nth-child(6){transition-delay:.24s}
  .nav-links a{display:flex;width:100%;padding:13px 15px;border-radius:13px;color:#061426}
  .nav-links a:hover,.nav-links a[data-status="active"]{background:rgba(0,184,240,.09)}
  .nav-links .nav-cta{justify-content:center;margin-top:4px;background:linear-gradient(135deg,var(--cyan),var(--cyan-2));color:#041321}

  /* Separación lateral segura para el índice del blog y sus tarjetas. */
  .blog-section>.container{width:100%;max-width:100%;padding-left:18px !important;padding-right:18px !important;box-sizing:border-box}
  .blog-grid{width:100%;min-width:0;gap:18px}
  .blog-card{width:100%;min-width:0;max-width:100%;overflow:hidden;box-sizing:border-box}
  .blog-card .blog-img{width:100%;max-width:100%;aspect-ratio:10/7;overflow:hidden}
  .blog-card .blog-img img{display:block;width:100%;height:100%;object-fit:cover}
  .blog-card .blog-body{min-width:0;padding-left:18px;padding-right:18px}

  .wa-widget{right:18px;bottom:20px}
  .wa-float{width:54px;height:54px}
  .wa-service-menu{width:min(310px,calc(100vw - 36px))}
}

@media(max-width:420px){
  .blog-section>.container{padding-left:14px !important;padding-right:14px !important}
  .service-hire-btn{padding:14px 16px}
}

/* ===== Marcas creadas: galería liquid glass ===== */
.brands-page{
  min-height:100vh;
  padding:0 0 90px;
  background:
    radial-gradient(circle at 12% 14%,rgba(0,184,240,.10),transparent 26%),
    radial-gradient(circle at 86% 28%,rgba(12,38,72,.10),transparent 28%),
    linear-gradient(180deg,#f7fbfe 0%,#eef5f9 100%);
}
.brands-container{padding-top:145px}
.brands-header{max-width:760px;margin-bottom:46px}
.brands-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.brand-card{
  appearance:none;
  width:100%;
  padding:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.76);
  border-radius:26px;
  background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(239,247,252,.56));
  box-shadow:0 18px 48px rgba(6,20,38,.12),inset 0 1px 0 rgba(255,255,255,.94);
  backdrop-filter:blur(24px) saturate(150%);
  -webkit-backdrop-filter:blur(24px) saturate(150%);
  color:var(--navy);
  text-align:left;
  cursor:pointer;
  transform:translateY(0) scale(1);
  transition:transform .45s cubic-bezier(.2,.85,.25,1.12),box-shadow .35s ease,border-color .35s ease;
}
.brand-card:hover,
.brand-card:focus-visible{
  transform:translateY(-10px) scale(1.035);
  border-color:rgba(0,184,240,.38);
  box-shadow:0 30px 76px rgba(6,20,38,.20),0 0 0 1px rgba(0,184,240,.12),inset 0 1px 0 rgba(255,255,255,.96);
  outline:none;
  z-index:3;
}
.brand-logo-stage{
  aspect-ratio:4/3;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:34px;
  background:rgba(255,255,255,.64);
  overflow:hidden;
}
.brand-logo-stage img{
  width:100%;
  height:100%;
  object-fit:contain;
  filter:grayscale(1) saturate(0) contrast(.92);
  opacity:.76;
  transform:scale(.92);
  transition:filter .45s ease,opacity .35s ease,transform .55s cubic-bezier(.2,.85,.25,1.12);
}
.brand-card:hover .brand-logo-stage img,
.brand-card:focus-visible .brand-logo-stage img{
  filter:grayscale(0) saturate(1);
  opacity:1;
  transform:scale(1.06);
}
.brand-card-info{padding:21px 22px 23px;border-top:1px solid rgba(6,20,38,.06)}
.brand-card-info h3{margin:0 0 14px;font-size:20px;line-height:1.2;color:#061426}
.brand-tags{display:flex;flex-wrap:wrap;gap:8px}
.brand-process-tag{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:6px 10px;
  border:1px solid rgba(6,20,38,.08);
  border-radius:999px;
  background:rgba(255,255,255,.60);
  color:#18334d;
  font-size:11px;
  font-weight:700;
  letter-spacing:.01em;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.brand-process-tag.creation{box-shadow:inset 3px 0 0 #00b8f0}
.brand-process-tag.design{box-shadow:inset 3px 0 0 #223f72}
.brand-process-tag.registration{box-shadow:inset 3px 0 0 #080f19}
.brands-empty{
  grid-column:1/-1;
  padding:46px;
  border:1px solid rgba(255,255,255,.8);
  border-radius:24px;
  background:rgba(255,255,255,.58);
  text-align:center;
  color:var(--text-muted);
  backdrop-filter:blur(20px);
}
body.brand-modal-open{overflow:hidden}
.brand-lightbox{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:28px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,visibility .25s}
.brand-lightbox.open{opacity:1;visibility:visible;pointer-events:auto}
.brand-lightbox-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(2,10,20,.52);backdrop-filter:blur(22px) saturate(130%);-webkit-backdrop-filter:blur(22px) saturate(130%);cursor:pointer}
.brand-lightbox-card{
  position:relative;
  width:min(920px,92vw);
  max-height:88vh;
  overflow:auto;
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);
  border:1px solid rgba(255,255,255,.76);
  border-radius:32px;
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(231,242,248,.80));
  box-shadow:0 42px 120px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.96);
  backdrop-filter:blur(32px) saturate(160%);
  -webkit-backdrop-filter:blur(32px) saturate(160%);
  transform:translateY(30px) scale(.84);
  opacity:0;
  transition:transform .5s cubic-bezier(.2,.9,.25,1.2),opacity .3s ease;
  z-index:1;
}
.brand-lightbox.open .brand-lightbox-card{transform:translateY(0) scale(1);opacity:1}
.brand-lightbox-image{min-height:520px;padding:54px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.62);border-radius:32px 0 0 32px}
.brand-lightbox-image img{display:block;width:100%;height:100%;max-height:560px;object-fit:contain;filter:grayscale(0) saturate(1);animation:brandColorIn .6s ease both}
@keyframes brandColorIn{from{filter:grayscale(1);transform:scale(.92);opacity:.7}to{filter:grayscale(0);transform:scale(1);opacity:1}}
.brand-lightbox-info{display:flex;flex-direction:column;justify-content:center;padding:48px 38px;background:linear-gradient(155deg,rgba(255,255,255,.58),rgba(213,232,243,.46));border-left:1px solid rgba(255,255,255,.72);border-radius:0 32px 32px 0}
.brand-lightbox-info h2{margin:10px 0 18px;font-size:clamp(30px,4vw,52px);line-height:1.02;color:#061426}
.brand-lightbox-info p{margin:24px 0 0;color:#42566b;font-size:15px;line-height:1.75}
.brand-lightbox-close{position:absolute;right:18px;top:18px;z-index:4;width:42px;height:42px;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:rgba(255,255,255,.68);color:#061426;box-shadow:0 10px 24px rgba(6,20,38,.14);backdrop-filter:blur(16px);cursor:pointer;transition:transform .25s ease,background .25s ease}
.brand-lightbox-close:hover{transform:rotate(90deg);background:#fff}

/* Administrador de marcas */
.brand-admin-layout{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.35fr);gap:28px;align-items:start}
.brand-upload-form,.admin-brands-list{padding:24px;border:1px solid rgba(6,20,38,.08);border-radius:20px;background:#fff;box-shadow:0 12px 32px rgba(6,20,38,.06)}
.brand-upload-form h2,.admin-brands-list h2{margin:0 0 22px;color:#061426;font-size:20px}
.brand-upload-form input[type="file"]{width:100%;padding:13px;border:1px dashed rgba(6,20,38,.22);border-radius:12px;background:#f8fbfd;color:#061426}
.brand-admin-tags{display:flex;flex-wrap:wrap;gap:9px}
.brand-admin-tags label{cursor:pointer}
.brand-admin-tags input{position:absolute;opacity:0;pointer-events:none}
.brand-admin-tags span{display:inline-flex;padding:9px 12px;border:1px solid rgba(6,20,38,.12);border-radius:999px;background:#f7fafc;color:#31465b;font-size:12px;font-weight:700;transition:.2s ease}
.brand-admin-tags input:checked+span{background:#061426;color:#fff;border-color:#061426;box-shadow:0 7px 18px rgba(6,20,38,.16)}
.admin-brand-item{display:grid;grid-template-columns:88px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(6,20,38,.07)}
.admin-brand-item:last-child{border-bottom:0}
.admin-brand-thumb{height:68px;padding:8px;border-radius:12px;background:#f3f7fa;display:flex;align-items:center;justify-content:center;overflow:hidden}
.admin-brand-thumb img{width:100%;height:100%;object-fit:contain}
.admin-brand-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
.admin-brand-copy strong{color:#061426;font-size:14px}
.admin-brand-copy span{color:#6b7a89;font-size:11px;line-height:1.4}

@media(max-width:1050px){
  .brands-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .brand-admin-layout{grid-template-columns:1fr}
}
@media(max-width:768px){
  .brands-container{padding-top:112px;padding-left:18px!important;padding-right:18px!important}
  .brands-grid{grid-template-columns:1fr;gap:18px}
  .brand-card:hover{transform:translateY(-4px) scale(1.01)}
  .brand-logo-stage{aspect-ratio:4/3;padding:26px}
  .brand-lightbox{padding:16px}
  .brand-lightbox-card{width:100%;grid-template-columns:1fr;border-radius:24px}
  .brand-lightbox-image{min-height:330px;padding:38px;border-radius:24px 24px 0 0}
  .brand-lightbox-info{padding:28px 24px 32px;border-left:0;border-top:1px solid rgba(255,255,255,.76);border-radius:0 0 24px 24px}
  .brand-lightbox-info h2{font-size:34px}
  .admin-brand-item{grid-template-columns:72px minmax(0,1fr);align-items:center}
  .admin-brand-item .btn-del{grid-column:2;justify-self:start}
}

/* ===== 2026: Banner editable + carruseles corporativos de Galería ===== */
.hero-editable{padding:0;min-height:760px;display:flex;align-items:center;background:linear-gradient(135deg,#f9fcff 0%,#edf5fa 55%,#e6f0f6 100%)}
.hero-editable .hero-split{position:relative;z-index:2;width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:54px;align-items:center;padding-top:130px;padding-bottom:92px}
.hero-editable .hero-media{min-height:520px;border:1px solid rgba(255,255,255,.85);border-radius:34px;overflow:hidden;background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(218,232,241,.62));box-shadow:0 34px 90px rgba(6,20,38,.16),inset 0 1px 0 rgba(255,255,255,.98);backdrop-filter:blur(28px) saturate(145%);-webkit-backdrop-filter:blur(28px) saturate(145%)}
.hero-editable .hero-media>img{display:block;width:100%;height:100%;min-height:520px;object-fit:cover}
.hero-media-placeholder{min-height:520px;display:flex;align-items:center;justify-content:center;padding:70px;background:radial-gradient(circle at 50% 45%,rgba(0,184,240,.13),transparent 38%)}
.hero-media-placeholder img{width:min(340px,82%);height:auto;object-fit:contain}
.hero-editable .hero-content{max-width:none;padding:0;text-align:left}
.hero-editable .hero-title{font-size:clamp(44px,5.3vw,76px);color:var(--navy);margin-bottom:24px}
.hero-editable .hero-sub{margin:0 0 38px;max-width:620px;color:#516273}
.hero-editable .hero-actions{justify-content:flex-start}
.hero-editable .hero-stats{justify-content:flex-start;margin-top:56px;padding-top:30px;border-top-color:rgba(6,20,38,.1)}

.home-brand-carousel{padding:28px 24px;background:linear-gradient(180deg,#f5f9fc,#eef5f8);overflow:hidden}
.brand-carousel-glass{max-width:1320px;margin:0 auto;padding:18px 0 20px;border:1px solid rgba(255,255,255,.86);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(230,240,246,.50));box-shadow:0 20px 56px rgba(6,20,38,.10),inset 0 1px 0 rgba(255,255,255,.98);backdrop-filter:blur(26px) saturate(145%);-webkit-backdrop-filter:blur(26px) saturate(145%);overflow:hidden;position:relative}
.brand-carousel-glass::before,.brand-carousel-glass::after{content:"";position:absolute;top:0;bottom:0;width:110px;z-index:3;pointer-events:none}
.brand-carousel-glass::before{left:0;background:linear-gradient(90deg,rgba(244,249,252,.98),transparent)}
.brand-carousel-glass::after{right:0;background:linear-gradient(270deg,rgba(238,246,249,.98),transparent)}
.brand-carousel-kicker{text-align:center;color:#718193;font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin:0 0 12px}
.brand-carousel-viewport{overflow:hidden;width:100%}
.brand-carousel-track{width:max-content;display:flex;align-items:center;gap:20px;animation:imageniosBrandLoop var(--carousel-brand-speed,46s) linear infinite;will-change:transform}
.home-brand-carousel.is-reverse .brand-carousel-track{animation-name:imageniosBrandLoopReverse;animation-duration:var(--carousel-reverse-speed,52s)}
.brand-carousel-track:hover{animation-play-state:paused}
.home-brand-logo{width:150px;height:72px;flex:0 0 150px;display:flex;align-items:center;justify-content:center;padding:14px 20px;border:1px solid rgba(255,255,255,.72);border-radius:18px;background:rgba(255,255,255,.48);box-shadow:inset 0 1px 0 rgba(255,255,255,.92);transition:transform .3s ease,background .3s ease,box-shadow .3s ease}
.home-brand-logo img{width:100%;height:100%;object-fit:contain;filter:grayscale(1) saturate(0);opacity:.58;transition:filter .35s ease,opacity .35s ease,transform .35s ease}
.home-brand-logo:hover{transform:translateY(-4px) scale(1.04);background:rgba(255,255,255,.88);box-shadow:0 14px 34px rgba(6,20,38,.12)}
.home-brand-logo:hover img{filter:grayscale(1) saturate(0);opacity:.9;transform:scale(1.04)}
.home-brand-empty{min-width:520px;text-align:center;padding:24px;color:#18334d;text-decoration:none;font-weight:700}
@keyframes imageniosBrandLoop{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes imageniosBrandLoopReverse{from{transform:translate3d(-50%,0,0)}to{transform:translate3d(0,0,0)}}

.hero-admin-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:28px;align-items:start}
.hero-admin-form,.hero-admin-preview{padding:26px;border:1px solid rgba(6,20,38,.08);border-radius:22px;background:#fff;box-shadow:0 14px 38px rgba(6,20,38,.06)}
.hero-admin-form h2,.hero-admin-preview h2{margin:0 0 10px;color:#061426;font-size:22px}
.admin-help{margin:0 0 24px;color:#68798a;font-size:13px;line-height:1.65}
.hero-admin-form input[type="file"]{width:100%;padding:14px;border:1px dashed rgba(6,20,38,.22);border-radius:14px;background:#f8fbfd;color:#061426}
.hero-current-image{margin-top:12px;display:flex;align-items:center;gap:12px;padding:10px;border-radius:14px;background:#f4f8fb}
.hero-current-image img{width:96px;height:68px;object-fit:cover;border-radius:10px}
.hero-current-image span{font-size:12px;color:#657587}
.hero-admin-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.hero-preview-card{margin-top:20px;border:1px solid rgba(6,20,38,.08);border-radius:20px;overflow:hidden;background:#f7fafc}
.hero-preview-media{height:240px;display:flex;align-items:center;justify-content:center;background:#eaf2f7;overflow:hidden}
.hero-preview-media img{width:100%;height:100%;object-fit:cover}
.hero-preview-copy{padding:22px}
.hero-preview-copy span{display:block;color:#00a9df;font-size:10px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px}
.hero-preview-copy strong{display:block;color:#061426;font-size:23px;line-height:1.12}
.hero-preview-copy p{color:#647586;font-size:13px;line-height:1.6;margin:12px 0 0}

@media(max-width:960px){
  .hero-editable .hero-split{grid-template-columns:1fr;gap:34px;padding-top:118px}
  .hero-editable .hero-media{min-height:390px;order:1}.hero-editable .hero-content{order:2}
  .hero-editable .hero-media>img,.hero-media-placeholder{min-height:390px}
  .hero-admin-grid{grid-template-columns:1fr}
}
@media(max-width:768px){
  .hero-editable{min-height:auto}
  .hero-editable .hero-split{padding:105px 18px 64px;gap:28px}
  .hero-editable .hero-media{min-height:310px;border-radius:24px}.hero-editable .hero-media>img,.hero-media-placeholder{min-height:310px}
  .hero-editable .hero-title{font-size:clamp(38px,12vw,54px)}
  .hero-editable .hero-stats{gap:20px;margin-top:42px}
  .home-brand-carousel{padding:18px 14px}
  .brand-carousel-glass{border-radius:22px;padding-top:15px}
  .brand-carousel-glass::before,.brand-carousel-glass::after{width:48px}
  .home-brand-logo{width:116px;height:62px;flex-basis:116px;padding:12px 15px;border-radius:15px}
  .brand-carousel-track{gap:13px}
  .hero-admin-actions-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.brand-carousel-track,.home-brand-carousel.is-reverse .brand-carousel-track{animation-play-state:paused}}

/* ===== Ajustes 2026: carruseles, banner, galería y panel de contenido ===== */
.home-brand-logo{width:190px;height:92px;flex-basis:190px;padding:16px 24px}
.home-brand-logo img{opacity:.68}
.brand-carousel-track{gap:24px}

/* La imagen del banner se presenta limpia, sin cristal ni desenfoque. */
.hero-editable .hero-media{
  border:0;
  border-radius:22px;
  background:transparent;
  box-shadow:0 24px 65px rgba(6,20,38,.14);
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.hero-editable .hero-media>img{border-radius:22px}
.hero-editable .hero-badge{font-size:var(--hero-badge-size,12px)}
.hero-editable .hero-title{font-size:clamp(36px,var(--hero-title-size,72px),var(--hero-title-size,72px))}
.hero-editable .hero-sub{font-size:var(--hero-text-size,18px)}
.hero-editable .hero-actions .btn-primary,.hero-editable .hero-actions .btn-secondary{font-size:var(--hero-button-size,15px)}

/* Cuatro tarjetas por fila en escritorio. */
.brands-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.brand-logo-stage{padding:28px}

.hero-text-size-grid,.settings-row,.package-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.settings-form{max-width:980px}
.settings-form h2{color:#061426;margin:0 0 10px}
.package-admin-card{border:1px solid rgba(6,20,38,.10);border-radius:20px;padding:22px;margin:0 0 22px;background:#f9fbfd}
.package-admin-card legend{padding:0 10px;color:#061426;font-weight:800}
.favicon-preview{display:flex;align-items:center;gap:14px;margin-top:12px;padding:12px 14px;border-radius:14px;background:#f4f8fb;color:#657587;font-size:12px}
.favicon-preview img{width:48px;height:48px;object-fit:contain;border-radius:10px;background:white;padding:5px;border:1px solid rgba(6,20,38,.08)}
.field-hint{display:block;margin-top:7px;color:#718193;font-size:12px}

@media(max-width:1180px){.brands-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){
  .brands-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-brand-logo{width:164px;height:82px;flex-basis:164px}
}
@media(max-width:768px){
  .home-brand-logo{width:142px;height:72px;flex-basis:142px;padding:12px 17px}
  .hero-editable .hero-title{font-size:clamp(34px,10vw,var(--hero-title-size,54px))}
  .hero-text-size-grid,.settings-row,.package-admin-grid{grid-template-columns:1fr}
}
@media(max-width:560px){.brands-grid{grid-template-columns:1fr}}

/* ===== Suite administrativa: analítica, contacto, carruseles y paleta ===== */
:root{
  --carousel-logo-width:170px;
  --carousel-logo-height:92px;
  --carousel-brand-speed:46s;
  --carousel-reverse-speed:52s;
  --carousel-reviews-speed:52s;
  --page-bg:#F6F9FC;
  --site-surface:#FFFFFF;
  --site-text:#091A31;
  --site-muted:#5F6F82;
  --site-footer:#061426;
}
body{background:var(--page-bg);color:var(--site-text)}
.site-footer{background:var(--site-footer)}
.btn-primary,.nav-cta{background:var(--cyan)!important}
.btn-primary:hover,.nav-cta:hover{background:var(--cyan-2)!important}
.home-brand-logo{
  width:var(--carousel-logo-width)!important;
  height:var(--carousel-logo-height)!important;
  flex-basis:var(--carousel-logo-width)!important;
  min-width:var(--carousel-logo-width)!important;
}
.home-brand-logo img{max-width:100%;max-height:100%;object-fit:contain}
.dashboard-filter{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;margin:0 0 24px;padding:18px 20px;border:1px solid rgba(6,20,38,.1);border-radius:18px;background:#fff}
.dashboard-filter .form-group{margin:0;min-width:180px}.dashboard-filter .btn-primary{height:44px}
.settings-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
.code-input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.55;white-space:pre}
.footer-socials{display:flex;gap:10px;margin-top:18px}.footer-socials a{text-decoration:none}
.social-icon{width:31px;height:31px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(0,184,240,.14);border:1px solid rgba(0,184,240,.35);color:var(--cyan);font-size:12px;font-weight:800;vertical-align:middle;margin-right:7px}
.footer-socials .social-icon{margin:0;color:#fff;background:rgba(255,255,255,.08)}
.contact-mini-icon{display:inline-flex;width:22px;color:var(--cyan);font-weight:800}
.carousel-admin-preview{min-height:180px;margin:16px 0 24px;border:1px dashed rgba(6,20,38,.2);border-radius:20px;background:linear-gradient(145deg,#fff,#edf4f8);display:flex;align-items:center;justify-content:center;overflow:auto;padding:24px}
.carousel-admin-preview img{max-width:var(--carousel-logo-width);max-height:var(--carousel-logo-height);object-fit:contain;filter:grayscale(1)}
.palette-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0 28px}
.palette-control{display:block;padding:16px;border:1px solid rgba(6,20,38,.1);border-radius:16px;background:#f8fbfd;color:#061426;font-weight:700;font-size:13px}
.palette-control>span{display:block;margin-bottom:10px}.palette-control>div{display:flex;align-items:center;gap:9px}
.palette-control input[type=color]{width:48px;height:42px;border:0;border-radius:10px;background:transparent;padding:0;cursor:pointer}
.palette-control .palette-hex{min-width:0;width:120px}
@media(max-width:900px){.palette-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.settings-grid-2,.palette-grid{grid-template-columns:1fr}.dashboard-filter{align-items:stretch}.dashboard-filter .form-group,.dashboard-filter .btn-primary{width:100%}.home-brand-logo{width:min(var(--carousel-logo-width),150px)!important;min-width:min(var(--carousel-logo-width),150px)!important;flex-basis:min(var(--carousel-logo-width),150px)!important;height:min(var(--carousel-logo-height),82px)!important}}

/* Controles visuales avanzados: Galería, Paquetes y Procesos */
:root{
  --gallery-card-title-size:20px;
  --gallery-page-title-size:48px;
  --gallery-title-color:#061426;
  --pkg-title-size:22px;--pkg-title-color:#061426;
  --pkg-desc-size:14px;--pkg-desc-color:#5F6F82;
  --pkg-price-size:30px;--pkg-price-color:#061426;
  --pkg-feature-size:14px;--pkg-feature-color:#5F6F82;
  --pkg-button-size:14px;--pkg-button-text:#fff;
  --pkg-button-bg:#00B8F0;--pkg-button-hover:#38D6FF;
}
.brands-page .section-title{font-size:var(--gallery-page-title-size)!important;color:var(--gallery-title-color)!important}
.brand-card-info h3,.brand-lightbox-info h2{font-size:var(--gallery-card-title-size)!important;color:var(--gallery-title-color)!important}
.service-title{font-size:var(--pkg-title-size)!important;color:var(--pkg-title-color)!important}
.service-desc{font-size:var(--pkg-desc-size)!important;color:var(--pkg-desc-color)!important}
.service-price{font-size:var(--pkg-price-size)!important;color:var(--pkg-price-color)!important}
.service-list,.service-list li{font-size:var(--pkg-feature-size)!important;color:var(--pkg-feature-color)!important}
.service-hire-btn{font-size:var(--pkg-button-size)!important;color:var(--pkg-button-text)!important;background:var(--pkg-button-bg)!important}
.service-hire-btn:hover{background:var(--pkg-button-hover)!important}
#proceso{background:var(--process-bg,#061426)!important}
#proceso .section-title{font-size:var(--process-title-size,48px)!important;color:var(--process-heading,#fff)!important}
#proceso .process-step h3{font-size:var(--process-step-title-size,20px)!important;color:var(--process-step-title-color,#fff)!important}
#proceso .process-step p{font-size:var(--process-step-text-size,14px)!important;color:var(--process-step-text-color,#b7c2d0)!important}
#proceso .process-num{color:color-mix(in srgb,var(--process-number-color,#00B8F0) 25%,transparent)!important}
.brand-drag-handle{font-size:22px;line-height:1;color:#789;cursor:grab;user-select:none;padding:10px 4px}
.admin-brand-item{transition:opacity .18s,transform .18s,box-shadow .18s}
.admin-brand-item.is-dragging{opacity:.45;transform:scale(.985);box-shadow:0 14px 34px rgba(6,20,38,.16)}
#sortableBrands{display:flex;flex-direction:column;gap:10px}
.gallery-style-box{margin-top:28px;padding-top:24px;border-top:1px solid rgba(6,20,38,.1)}
.color-setting{display:flex;gap:10px;align-items:center}.color-setting input[type=color]{width:52px;height:44px;border:0;background:transparent;padding:0;cursor:pointer}.color-setting .admin-input{flex:1}
@media(max-width:680px){.brand-drag-handle{padding:8px 2px}.brands-page .section-title{font-size:min(var(--gallery-page-title-size),48px)!important}}

/* ===== Reseñas Google y ventana emergente publicitaria ===== */
.reviews-section{padding:86px 0 96px;background:linear-gradient(180deg,var(--page-bg,#f6f9fc),#fff);overflow:hidden}
.reviews-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}
.google-rating-badge{display:flex;align-items:center;gap:9px;padding:11px 15px;border:1px solid rgba(6,20,38,.09);border-radius:999px;background:rgba(255,255,255,.72);box-shadow:0 12px 36px rgba(6,20,38,.08);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#24364b}
.google-g,.google-mark{font-family:Arial,sans-serif;font-weight:800;color:#4285f4}.google-g{font-size:21px}.google-mark{margin-left:auto;font-size:20px}
.review-stars{color:#fbbc04;letter-spacing:2px;font-size:17px;white-space:nowrap}
.reviews-slider-shell{width:min(1480px,calc(100% - 32px));margin:0 auto;padding:8px 0;overflow:hidden}
.reviews-slider-viewport{overflow:hidden;padding:16px 8px 24px}
.reviews-slider-track{display:flex;gap:20px;width:max-content}.reviews-slider-track.is-looping{animation:reviewLoop var(--carousel-reviews-speed,52s) linear infinite}.reviews-slider-track:hover{animation-play-state:paused}
.google-review-card{width:calc((min(1480px,100vw - 32px) - 84px)/4);min-width:285px;max-width:350px;min-height:260px;padding:24px;border:1px solid rgba(255,255,255,.76);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(245,249,252,.68));box-shadow:0 22px 52px rgba(6,20,38,.09),inset 0 1px 0 rgba(255,255,255,.95);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:transform .28s ease,box-shadow .28s ease;display:flex;flex-direction:column}
.google-review-card:hover{transform:translateY(-7px);box-shadow:0 30px 65px rgba(6,20,38,.15)}
.review-card-top{display:flex;align-items:center;gap:12px;margin-bottom:15px}.review-avatar{width:48px;height:48px;flex:0 0 48px;border-radius:50%;overflow:hidden;background:linear-gradient(145deg,var(--navy),var(--cyan));color:#fff;display:grid;place-items:center;font-weight:800}.review-avatar img{width:100%;height:100%;object-fit:cover}.review-author{min-width:0;display:flex;flex-direction:column}.review-author strong{color:var(--site-text,#091a31);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-author span{color:var(--site-muted,#5f6f82);font-size:12px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.google-review-card>p{color:var(--site-muted,#5f6f82);font-size:14px;line-height:1.72;margin:14px 0 18px;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.review-website{margin-top:auto;color:var(--cyan);font-size:13px;font-weight:700;text-decoration:none}.review-website:hover{text-decoration:underline}
@keyframes reviewLoop{to{transform:translateX(calc(-50% - 10px))}}

.review-admin-card{border:1px solid rgba(6,20,38,.11);border-radius:20px;padding:22px;margin:0 0 20px;background:#f8fbfd}.review-admin-card legend{padding:0 10px;color:#061426;font-weight:800}.review-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.review-admin-grid .review-wide{grid-column:1/-1}.review-image-preview{height:110px;border:1px dashed rgba(6,20,38,.18);border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;color:#7a8999;margin:8px 0 10px;overflow:hidden}.review-image-preview img{width:100%;height:100%;object-fit:contain}.admin-inline-actions{display:flex;gap:12px;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin-top:24px}
.toggle-setting{display:flex;align-items:center;gap:10px;color:#203348;font-weight:700;font-size:13px;margin:12px 0 22px;cursor:pointer}.toggle-setting input{position:absolute;opacity:0}.toggle-setting span{position:relative;width:48px;height:26px;border-radius:999px;background:#c9d2dc;transition:.2s}.toggle-setting span::after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background:#fff;left:3px;top:3px;box-shadow:0 2px 7px rgba(0,0,0,.2);transition:.2s}.toggle-setting input:checked+span{background:var(--cyan)}.toggle-setting input:checked+span::after{transform:translateX(22px)}.toggle-prominent{padding:15px 17px;border-radius:16px;background:#f3f8fb;border:1px solid rgba(6,20,38,.08);width:max-content;max-width:100%}
.popup-admin-preview{min-height:220px;border:1px dashed rgba(6,20,38,.18);border-radius:18px;background:#f5f8fb;display:grid;place-items:center;color:#758698;overflow:hidden;margin:8px 0 12px}.popup-admin-preview img{width:100%;height:100%;max-height:320px;object-fit:contain;background:#fff}

.promo-popup{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px;animation:promoFade .25s ease both}.promo-popup-backdrop{position:absolute;inset:0;border:0;background:rgba(2,10,20,.58);backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px);cursor:pointer}.promo-popup-card{position:relative;z-index:1;width:min(880px,94vw);max-height:90vh;overflow:auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.8);border-radius:30px;box-shadow:0 36px 110px rgba(0,0,0,.34);animation:promoUp .38s cubic-bezier(.2,.8,.2,1) both}.promo-popup-media{min-height:430px;background:#eef3f7}.promo-popup-media img{width:100%;height:100%;object-fit:cover;display:block}.promo-popup-copy{padding:48px 42px;display:flex;flex-direction:column;justify-content:center}.promo-popup-copy h2{font-family:'Playfair Display',serif;color:var(--navy);font-size:clamp(30px,4vw,48px);line-height:1.05;margin:0 0 18px}.promo-popup-copy p{color:var(--site-muted);font-size:16px;line-height:1.7;margin:0 0 28px}.promo-popup-copy .btn-primary{align-self:flex-start;text-decoration:none}.promo-popup-close{position:absolute;right:16px;top:16px;z-index:3;width:38px;height:38px;border:1px solid rgba(6,20,38,.12);border-radius:50%;background:rgba(255,255,255,.9);color:#061426;font-size:18px;cursor:pointer;box-shadow:0 8px 24px rgba(6,20,38,.12)}
@keyframes promoFade{from{opacity:0}to{opacity:1}}@keyframes promoUp{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}

@media(max-width:1100px){.google-review-card{width:calc((100vw - 80px)/3)}}
@media(max-width:820px){.reviews-heading{align-items:flex-start;flex-direction:column}.google-review-card{width:calc((100vw - 60px)/2);min-width:270px}.review-admin-grid{grid-template-columns:1fr}.review-admin-grid .review-wide{grid-column:auto}.promo-popup-card{grid-template-columns:1fr;max-width:570px}.promo-popup-media{min-height:260px;max-height:42vh}.promo-popup-copy{padding:30px 26px}}
@media(max-width:560px){.reviews-section{padding:62px 0 70px}.reviews-slider-shell{width:100%;padding-left:16px}.google-review-card{width:calc(100vw - 54px);min-width:calc(100vw - 54px);max-width:none}.reviews-slider-track.is-looping{animation-duration:var(--carousel-reviews-speed,52s)}.promo-popup{padding:12px}.promo-popup-card{width:100%;border-radius:24px}.promo-popup-media{min-height:220px}.promo-popup-copy{padding:25px 22px 28px}.promo-popup-copy .btn-primary{width:100%;justify-content:center}.promo-popup-close{right:10px;top:10px}}
@media(prefers-reduced-motion:reduce){.reviews-slider-track.is-looping{animation-play-state:paused}.promo-popup,.promo-popup-card{animation:none}}

/* BrandScore — diagnóstico interactivo */
.brandscore-page{min-height:100vh;padding:130px 20px 70px;background:radial-gradient(circle at 20% 10%,rgba(0,184,240,.22),transparent 34%),radial-gradient(circle at 90% 70%,rgba(56,214,255,.16),transparent 30%),linear-gradient(145deg,#03101f,#071d35 56%,#041322);color:#fff;overflow:hidden;position:relative}.brandscore-orb{position:fixed;border-radius:50%;filter:blur(8px);opacity:.42;pointer-events:none;animation:bsFloat 9s ease-in-out infinite}.brandscore-orb.one{width:240px;height:240px;left:-60px;top:22%;background:linear-gradient(135deg,#00b8f0,transparent)}.brandscore-orb.two{width:300px;height:300px;right:-110px;bottom:8%;background:linear-gradient(135deg,#755cff,transparent);animation-delay:-3s}@keyframes bsFloat{50%{transform:translateY(-25px) scale(1.06)}}.brandscore-shell{width:min(920px,100%);margin:auto;position:relative;z-index:2}.brandscore-glass{background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(255,255,255,.055));border:1px solid rgba(255,255,255,.2);box-shadow:0 30px 80px rgba(0,0,0,.35),inset 0 1px rgba(255,255,255,.22);backdrop-filter:blur(24px);border-radius:32px;padding:clamp(28px,5vw,58px)}.brandscore-badge{display:inline-flex;padding:8px 14px;border-radius:999px;background:rgba(0,184,240,.14);border:1px solid rgba(56,214,255,.35);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.brandscore-page h1{font-size:clamp(44px,8vw,86px);line-height:.96;margin:22px 0 20px;letter-spacing:-.055em}.brandscore-page h2{font-size:clamp(30px,5vw,54px);line-height:1.03;margin:12px 0 18px}.brandscore-lead{font-size:clamp(17px,2vw,21px);line-height:1.65;color:rgba(255,255,255,.76);max-width:680px}.brandscore-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.brandscore-btn{appearance:none;border:0;border-radius:999px;padding:16px 25px;font-weight:850;font-size:15px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.25s}.brandscore-btn.primary{background:linear-gradient(135deg,#00b8f0,#38d6ff);color:#03101f;box-shadow:0 15px 34px rgba(0,184,240,.25)}.brandscore-btn.secondary{color:#fff;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.2)}.brandscore-btn:hover{transform:translateY(-2px)}.brandscore-progress{height:7px;background:rgba(255,255,255,.12);border-radius:99px;overflow:hidden;margin-bottom:34px}.brandscore-progress span{display:block;height:100%;background:linear-gradient(90deg,#00b8f0,#9cecff);transition:width .35s}.brandscore-kicker{color:#73dfff;font-weight:800;font-size:13px;letter-spacing:.1em;text-transform:uppercase}.brandscore-options{display:grid;gap:12px;margin-top:26px}.brandscore-option{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);color:#fff;text-align:left;padding:18px 20px;border-radius:18px;font-size:16px;font-weight:750;cursor:pointer;transition:.22s}.brandscore-option:hover{background:rgba(0,184,240,.16);border-color:rgba(56,214,255,.55);transform:translateX(4px)}.brandscore-feedback{margin-top:20px;padding:14px 16px;border-radius:14px;background:rgba(0,184,240,.1);color:#bcefff;font-size:14px}.brandscore-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:25px}.brandscore-field{display:flex;flex-direction:column;gap:8px}.brandscore-field.full{grid-column:1/-1}.brandscore-field label{font-size:13px;color:rgba(255,255,255,.72);font-weight:750}.brandscore-field input{width:100%;padding:15px 16px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(3,16,31,.5);color:#fff;font:inherit;outline:none}.brandscore-field input:focus{border-color:#38d6ff;box-shadow:0 0 0 3px rgba(56,214,255,.12)}.brandscore-consent{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;color:rgba(255,255,255,.7);font-size:13px;line-height:1.45}.brandscore-result-score{font-size:clamp(70px,14vw,130px);font-weight:950;letter-spacing:-.08em;line-height:.85;background:linear-gradient(180deg,#fff,#6fe5ff);-webkit-background-clip:text;color:transparent}.brandscore-result-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:30px;align-items:center}.brandscore-list{display:grid;gap:10px;margin:22px 0}.brandscore-list div{padding:13px 15px;border-radius:14px;background:rgba(255,255,255,.07);color:rgba(255,255,255,.82)}.brandscore-error{margin-top:14px;color:#ffb6b6;font-weight:700}.brandscore-admin-summary{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.brandscore-admin-pill{background:#e9f9ff;color:#06334a;border-radius:999px;padding:8px 12px;font-weight:800;font-size:13px}.bs-answer-dialog{max-width:700px}.bs-answer-list{display:grid;gap:10px;margin-top:18px}.bs-answer-list div{padding:12px 14px;background:#f5f8fb;border-radius:12px}.popup-brandscore-shortcut{display:flex;gap:10px;align-items:center;margin:10px 0 18px;padding:13px;border-radius:14px;background:#e9f9ff;color:#06334a}.popup-brandscore-shortcut button{border:0;border-radius:999px;background:#00b8f0;color:#042033;font-weight:850;padding:9px 13px;cursor:pointer}@media(max-width:680px){.brandscore-page{padding-top:105px}.brandscore-glass{border-radius:24px;padding:25px}.brandscore-form,.brandscore-result-grid{grid-template-columns:1fr}.brandscore-page h1{font-size:48px}.brandscore-btn{width:100%}}

/* BrandScore integrado a inicio y paleta clara */
.nav-brandscore{display:inline-flex;align-items:center;justify-content:center;padding:8px 17px;border-radius:999px;background:rgba(0,184,240,.1);border:1px solid rgba(0,184,240,.24);color:var(--navy)!important;font-weight:800!important;white-space:nowrap}.nav-brandscore:hover,.nav-brandscore[data-status="active"]{background:rgba(0,184,240,.18);border-color:rgba(0,184,240,.46);color:var(--navy)!important;transform:translateY(-1px)}
.brandscore-home-section{background:linear-gradient(180deg,var(--page-bg),#f2f8fb);position:relative;overflow:hidden}.brandscore-home-section::before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-200px;top:-220px;background:radial-gradient(circle,rgba(0,184,240,.12),transparent 68%)}.brandscore-home-card{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:60px;padding:clamp(34px,6vw,72px);border-radius:32px;background:rgba(255,255,255,.82);border:1px solid rgba(6,20,38,.09);box-shadow:0 28px 80px rgba(6,20,38,.1);backdrop-filter:blur(20px);overflow:hidden}.brandscore-home-copy{position:relative;z-index:2}.brandscore-home-copy .section-sub{max-width:680px;color:var(--site-muted)}.brandscore-home-benefits{display:flex;flex-wrap:wrap;gap:10px 22px;margin:26px 0;color:var(--navy);font-size:14px;font-weight:750}.brandscore-home-benefits span{display:inline-flex;align-items:center}.brandscore-home-cta{margin-top:2px}.brandscore-home-visual{display:grid;place-items:center;min-height:320px;position:relative}.brandscore-home-visual::before,.brandscore-home-visual::after{content:"";position:absolute;border-radius:50%;filter:blur(2px)}.brandscore-home-visual::before{width:290px;height:290px;background:linear-gradient(145deg,rgba(0,184,240,.2),rgba(255,255,255,.3));box-shadow:inset 0 1px 1px rgba(255,255,255,.8),0 28px 70px rgba(0,184,240,.13)}.brandscore-home-visual::after{width:205px;height:205px;border:1px solid rgba(255,255,255,.9);background:rgba(255,255,255,.56);backdrop-filter:blur(18px)}.brandscore-home-score{position:relative;z-index:2;width:220px;text-align:center;color:var(--navy)}.brandscore-home-score strong{font-family:'Playfair Display',serif;font-size:32px;display:block}.brandscore-home-score span{font-size:12px;color:var(--site-muted);display:block;margin-top:5px}.brandscore-home-meter{height:10px;border-radius:99px;background:#e6edf2;overflow:hidden;margin:25px 0 15px}.brandscore-home-meter i{display:block;width:78%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cyan),var(--cyan-2))}.brandscore-home-score b{font-size:13px}

.brandscore-page{min-height:100vh;padding:130px 20px 70px;background:radial-gradient(circle at 15% 16%,rgba(0,184,240,.12),transparent 32%),radial-gradient(circle at 88% 72%,rgba(0,184,240,.08),transparent 28%),linear-gradient(180deg,var(--page-bg),#eef5f8);color:var(--navy)}.brandscore-orb.one{background:linear-gradient(135deg,rgba(0,184,240,.3),transparent)}.brandscore-orb.two{background:linear-gradient(135deg,rgba(104,183,214,.24),transparent)}.brandscore-glass{background:rgba(255,255,255,.84);border:1px solid rgba(6,20,38,.1);box-shadow:0 30px 80px rgba(6,20,38,.12),inset 0 1px rgba(255,255,255,.9);backdrop-filter:blur(24px)}.brandscore-badge{background:rgba(0,184,240,.1);border-color:rgba(0,184,240,.26);color:#08789f}.brandscore-page h1,.brandscore-page h2{font-family:'Playfair Display',serif;color:var(--navy)}.brandscore-lead{color:var(--site-muted)}.brandscore-btn.primary{background:var(--cyan);color:#031824;box-shadow:0 15px 34px rgba(0,184,240,.2)}.brandscore-btn.primary:hover{background:var(--cyan-2)}.brandscore-btn.secondary{color:var(--navy);background:#fff;border-color:rgba(6,20,38,.12);box-shadow:0 8px 24px rgba(6,20,38,.06)}.brandscore-progress{background:#dfe9ee}.brandscore-progress span{background:linear-gradient(90deg,var(--cyan),var(--cyan-2))}.brandscore-kicker{color:#087da6}.brandscore-option{border-color:rgba(6,20,38,.11);background:#fff;color:var(--navy);box-shadow:0 8px 22px rgba(6,20,38,.045)}.brandscore-option:hover{background:#edfaff;border-color:rgba(0,184,240,.48)}.brandscore-feedback{background:#e9f9ff;color:#075f7e;border:1px solid rgba(0,184,240,.14)}.brandscore-field label{color:var(--site-muted)}.brandscore-field input{border-color:rgba(6,20,38,.13);background:#fff;color:var(--navy)}.brandscore-field input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(0,184,240,.1)}.brandscore-consent{color:var(--site-muted)}.brandscore-result-score{background:linear-gradient(180deg,var(--navy),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}.brandscore-list div{background:#f3f8fa;color:var(--navy);border:1px solid rgba(6,20,38,.06)}.brandscore-error{color:#b42318}
@media(max-width:980px){.brandscore-home-card{grid-template-columns:1fr;gap:24px}.brandscore-home-visual{min-height:285px}}
@media(max-width:820px){.nav-links .nav-brandscore{justify-content:center;background:rgba(0,184,240,.12);margin-top:4px}.brandscore-home-section{padding-left:16px;padding-right:16px}.brandscore-home-card{padding:32px 24px;border-radius:25px}}
@media(max-width:560px){.brandscore-home-benefits{display:grid;gap:10px}.brandscore-home-visual{min-height:250px}.brandscore-home-visual::before{width:245px;height:245px}.brandscore-home-visual::after{width:180px;height:180px}.brandscore-home-score{width:190px}.brandscore-home-score strong{font-size:28px}}

/* BrandScore configurable desde el administrador */
:root{--bs-home-badge-size:13px;--bs-home-title-size:48px;--bs-home-text-size:18px;--bs-home-button-size:15px;--bs-tool-badge-size:12px;--bs-tool-title-size:72px;--bs-question-size:48px;--bs-body-size:18px;--bs-option-size:16px;--bs-feedback-size:16px;--bs-button-size:15px;--bs-card-radius:32px;--bs-section-bg:#F2F8FB;--bs-card-bg:#FFFFFF;--bs-title-color:#061426;--bs-text-color:#5F6F82;--bs-accent:#00B8F0;--bs-accent-hover:#38D6FF;--bs-option-bg:#FFFFFF;--bs-option-text:#061426;--bs-feedback-bg:#E9F9FF;--bs-feedback-text:#075F7E;--bs-button-text:#031824}
.brandscore-home-section{background:linear-gradient(180deg,var(--page-bg),var(--bs-section-bg))}.brandscore-home-card{background:color-mix(in srgb,var(--bs-card-bg) 88%,transparent);border-radius:var(--bs-card-radius)}.brandscore-home-copy .section-label{font-size:var(--bs-home-badge-size);color:var(--bs-accent)}.brandscore-home-copy .section-title{font-size:clamp(30px,5vw,var(--bs-home-title-size));color:var(--bs-title-color)}.brandscore-home-copy .section-sub{font-size:var(--bs-home-text-size);color:var(--bs-text-color)}.brandscore-home-cta{font-size:var(--bs-home-button-size);background:var(--bs-accent);color:var(--bs-button-text)}.brandscore-home-cta:hover{background:var(--bs-accent-hover)}
.brandscore-page{background:radial-gradient(circle at 15% 16%,color-mix(in srgb,var(--bs-accent) 13%,transparent),transparent 32%),radial-gradient(circle at 88% 72%,color-mix(in srgb,var(--bs-accent) 9%,transparent),transparent 28%),linear-gradient(180deg,var(--page-bg),var(--bs-section-bg));color:var(--bs-title-color)}.brandscore-glass{background:color-mix(in srgb,var(--bs-card-bg) 88%,transparent);border-radius:var(--bs-card-radius)}.brandscore-badge{font-size:var(--bs-tool-badge-size);color:color-mix(in srgb,var(--bs-accent) 68%,#00354a);background:color-mix(in srgb,var(--bs-accent) 10%,transparent);border-color:color-mix(in srgb,var(--bs-accent) 26%,transparent)}.brandscore-page h1{font-size:clamp(42px,8vw,var(--bs-tool-title-size));color:var(--bs-title-color)}.brandscore-page h2{font-size:clamp(28px,5vw,var(--bs-question-size));color:var(--bs-title-color)}.brandscore-lead{font-size:var(--bs-body-size);color:var(--bs-text-color)}.brandscore-btn{font-size:var(--bs-button-size)}.brandscore-btn.primary{background:var(--bs-accent);color:var(--bs-button-text)}.brandscore-btn.primary:hover{background:var(--bs-accent-hover)}.brandscore-progress span{background:linear-gradient(90deg,var(--bs-accent),var(--bs-accent-hover))}.brandscore-kicker{color:color-mix(in srgb,var(--bs-accent) 72%,#03445d)}.brandscore-option{display:flex;align-items:center;justify-content:space-between;gap:15px;background:var(--bs-option-bg);color:var(--bs-option-text);font-size:var(--bs-option-size);border-color:color-mix(in srgb,var(--bs-title-color) 11%,transparent)}.brandscore-option i{font-style:normal;opacity:.45;transition:.2s}.brandscore-option:hover:not(:disabled){background:color-mix(in srgb,var(--bs-accent) 8%,var(--bs-option-bg));border-color:color-mix(in srgb,var(--bs-accent) 52%,transparent)}.brandscore-option.selected{border-color:var(--bs-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--bs-accent) 12%,transparent),0 12px 30px rgba(6,20,38,.08);transform:translateX(4px)}.brandscore-option.selected i{opacity:1;color:var(--bs-accent)}.brandscore-option.muted{opacity:.42;filter:grayscale(.35)}.brandscore-option:disabled{cursor:default}
.brandscore-feedback-stage{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-top:24px;padding:22px;border-radius:calc(var(--bs-card-radius) * .65);background:var(--bs-feedback-bg);color:var(--bs-feedback-text);border:1px solid color-mix(in srgb,var(--bs-accent) 20%,transparent);box-shadow:0 18px 45px color-mix(in srgb,var(--bs-accent) 10%,transparent);animation:bsFeedbackIn .42s cubic-bezier(.2,.8,.2,1)}.brandscore-feedback-stage::before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at 7% 25%,color-mix(in srgb,var(--bs-accent) 14%,transparent),transparent 33%);pointer-events:none}.brandscore-feedback-icon{position:relative;width:52px;height:52px;border-radius:17px;display:grid;place-items:center;background:var(--bs-card-bg);color:var(--bs-accent);font-size:22px;box-shadow:0 10px 25px rgba(6,20,38,.08)}.brandscore-feedback-copy{position:relative}.brandscore-feedback-copy span{display:block;margin-bottom:5px;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;opacity:.72}.brandscore-feedback-copy p{margin:0;font-size:var(--bs-feedback-size);line-height:1.65;font-weight:650}.brandscore-continue{position:relative;white-space:nowrap}@keyframes bsFeedbackIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
.bs-question-editor{margin:18px 0;padding:20px;border:1px solid #dce5eb;border-radius:18px;background:#f9fbfc}.bs-editor-head,.bs-option-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.bs-options-editor{display:grid;gap:12px;margin:12px 0}.bs-option-editor{padding:15px;border-radius:14px;background:#fff;border:1px solid #e4ebef}.bs-option-top button{border:0;background:#f5e9e9;color:#a12828;width:28px;height:28px;border-radius:50%;font-size:19px;cursor:pointer}.bs-answer-list small{display:block;margin-top:7px;color:#5f6f82;font-style:italic}.color-pair{display:grid;grid-template-columns:48px 1fr;gap:8px}.color-pair input[type=color]{width:48px;height:44px;border:1px solid #d8e1e7;border-radius:10px;background:#fff;padding:3px}.settings-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.settings-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media(max-width:900px){.settings-grid-4,.settings-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.brandscore-feedback-stage{grid-template-columns:auto 1fr}.brandscore-continue{grid-column:1/-1;width:100%}}@media(max-width:560px){.settings-grid-4,.settings-grid-3{grid-template-columns:1fr}.brandscore-feedback-stage{grid-template-columns:1fr;text-align:left}.brandscore-feedback-icon{width:46px;height:46px}}


/* Resultado perfecto BrandScore */
.brandscore-perfect{text-align:center;max-width:820px;margin:0 auto}.brandscore-perfect-icon{width:78px;height:78px;margin:0 auto 18px;border-radius:26px;display:grid;place-items:center;background:linear-gradient(135deg,var(--bs-accent),var(--bs-accent-hover));color:var(--bs-button-text);font-size:38px;font-weight:900;box-shadow:0 20px 45px color-mix(in srgb,var(--bs-accent) 28%,transparent);animation:bsPerfectPop .55s cubic-bezier(.2,.9,.2,1)}.brandscore-perfect .brandscore-result-score{margin-top:14px}.brandscore-perfect h2{max-width:720px;margin:18px auto 12px}.brandscore-perfect>.brandscore-lead{max-width:690px;margin:0 auto 25px}.brandscore-perfect-notes{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:26px 0;text-align:left}.brandscore-perfect-notes>div{padding:22px;border-radius:calc(var(--bs-card-radius) * .62);background:color-mix(in srgb,var(--bs-feedback-bg) 74%,var(--bs-card-bg));border:1px solid color-mix(in srgb,var(--bs-accent) 18%,transparent);box-shadow:0 14px 35px rgba(6,20,38,.055)}.brandscore-perfect-notes strong{display:block;margin-bottom:8px;color:var(--bs-title-color);font-size:16px}.brandscore-perfect-notes p{margin:0;color:var(--bs-feedback-text);font-size:var(--bs-body-size);line-height:1.65}.brandscore-perfect .brandscore-actions{justify-content:center}@keyframes bsPerfectPop{from{opacity:0;transform:scale(.7) rotate(-8deg)}to{opacity:1;transform:none}}@media(max-width:700px){.brandscore-perfect-notes{grid-template-columns:1fr}.brandscore-perfect-icon{width:66px;height:66px;border-radius:22px;font-size:31px}}

/* ===== Blog: filtros laterales y entradas relacionadas ===== */
.blog-index-layout,.blog-article-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:36px;align-items:start}
.blog-index-layout .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.blog-sidebar{min-width:0}
.blog-sidebar-card{position:sticky;top:108px;background:#fff;border:1px solid rgba(6,20,38,.09);border-radius:22px;padding:24px;box-shadow:0 18px 45px rgba(6,20,38,.08)}
.blog-sidebar-eyebrow{display:block;color:#007ea9;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}
.blog-sidebar-card h2{font-family:'Playfair Display',serif;color:var(--navy);font-size:23px;line-height:1.2;margin:0 0 18px}
.blog-sidebar-all,.blog-sidebar-tag{display:flex;align-items:center;justify-content:space-between;gap:12px;text-decoration:none;border-radius:12px;color:#4d5c6f;transition:.2s ease}
.blog-sidebar-all{padding:11px 12px;margin-bottom:8px;font-weight:700;border:1px solid rgba(6,20,38,.08)}
.blog-sidebar-tags{display:grid;gap:7px}
.blog-sidebar-tag{padding:10px 12px;background:#f6f9fc;border:1px solid transparent;font-size:13px}
.blog-sidebar-tag b{display:grid;place-items:center;min-width:25px;height:25px;padding:0 6px;border-radius:999px;background:#fff;color:#007ea9;font-size:11px;box-shadow:0 2px 7px rgba(6,20,38,.08)}
.blog-sidebar-all:hover,.blog-sidebar-tag:hover,.blog-sidebar-all.is-active,.blog-sidebar-tag.is-active{color:var(--navy);border-color:rgba(0,184,240,.3);background:rgba(0,184,240,.09);transform:translateX(2px)}
.blog-empty-filter{grid-column:1/-1;background:#fff;border:1px solid rgba(6,20,38,.08);border-radius:20px;padding:32px;color:#4d5c6f}
.blog-article-layout{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:132px 0 70px;grid-template-columns:minmax(0,820px) 290px}
.blog-article-layout .blog-full-inner{width:100%;max-width:none;margin:0;padding:0}
.blog-article-sidebar .blog-sidebar-card{top:110px}
.blog-post-tags .blog-tag-mini{text-decoration:none;transition:.2s ease}
.blog-post-tags .blog-tag-mini:hover{transform:translateY(-2px);background:rgba(0,184,240,.2)}
.related-posts{margin-top:54px;padding-top:38px;border-top:1px solid rgba(6,20,38,.1)}
.related-posts-head span{color:#007ea9;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.related-posts-head h2{font-family:'Playfair Display',serif;color:var(--navy);font-size:30px;margin:7px 0 22px}
.related-posts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.related-post-card{display:block;overflow:hidden;background:#fff;border:1px solid rgba(6,20,38,.09);border-radius:17px;text-decoration:none;color:inherit;box-shadow:0 12px 30px rgba(6,20,38,.06);transition:.22s ease}
.related-post-card:hover{transform:translateY(-4px);border-color:rgba(0,184,240,.32);box-shadow:0 18px 38px rgba(6,20,38,.11)}
.related-post-card>img,.related-post-placeholder{width:100%;height:128px;object-fit:cover;background:linear-gradient(135deg,#e9f7fc,#edf2f9);display:grid;place-items:center;color:#007ea9;font-weight:800}
.related-post-card>div:last-child{padding:16px}
.related-post-card small{color:#6b7788;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.related-post-card h3{font-family:'Playfair Display',serif;color:var(--navy);font-size:18px;line-height:1.25;margin:8px 0}
.related-post-card p{color:#617084;font-size:12px;line-height:1.5;margin:0 0 11px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.related-post-card span{color:#007ea9;font-size:12px;font-weight:800}
@media(max-width:980px){.blog-index-layout,.blog-article-layout{grid-template-columns:1fr}.blog-index-layout .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-sidebar-card{position:static}.blog-article-layout{width:min(100% - 32px,820px);padding-top:116px}.blog-article-sidebar{order:-1}.blog-sidebar-tags{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.blog-index-layout .blog-grid,.related-posts-grid{grid-template-columns:1fr}.blog-sidebar-tags{grid-template-columns:1fr}.blog-article-layout{width:min(100% - 28px,820px)}.related-post-card{display:grid;grid-template-columns:110px 1fr}.related-post-card>img,.related-post-placeholder{height:100%;min-height:150px}.related-posts-head h2{font-size:26px}}
/* Contenido semántico inicial renderizado por servidor. La SPA lo sustituye al iniciar. */
.ai-server-content{max-width:1180px;margin:0 auto;padding:140px 24px 80px;color:var(--site-text,#091a31)}
.ai-server-content img{max-width:100%;height:auto}.ai-server-content article{margin-bottom:2rem}.ai-server-content figure{margin:1.5rem 0}.ai-server-content a{color:var(--cyan,#00b8f0)}


.blog-full-author{margin:-12px 0 20px;color:var(--site-muted,#5f6f82);font-size:14px;font-weight:600}.blog-full-author::before{content:"✦";margin-right:7px;color:var(--cyan,#00b8f0)}
