/* =========================================================
   STYLE.CSS · VERSIÓN ORDENADA Y LIMPIA
   ---------------------------------------------------------
   Estructura rápida:
   1. Variables globales y base
   2. Layout general y componentes reutilizables
   3. Páginas públicas
   4. Panel admin
   5. Perfil abogado / CRM
   6. Ajustes de banners, hero y bloques especiales
   7. Overrides responsive

   Nota:
   - Se han quitado duplicados exactos y repetidos claros.
   - Se mantienen los overrides útiles para no romper el diseño.
   - Cuando una regla aparece más abajo, normalmente manda esa.
   ========================================================= */

/* ===== 1. VARIABLES GLOBALES Y BASE ===== */
:root{
  --bg:#ece5d8;
  --paper:#faf7f1;
  --paper-2:#f3ede3;
  --line:#d8cebc;
  --line-strong:#c6b99f;
  --text:#1f2630;
  --muted:#67707d;
  --olive:#819d12;
  --olive-2:#9dbf19;
  --gold:#c59743;
  --gold-2:#edd7a3;
  --dark:#242d37;
  --shadow:0 18px 54px rgba(31,38,48,.12);
  --shadow-soft:0 10px 30px rgba(31,38,48,.07);
  --radius:24px;
  --max:1380px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top right, rgba(197,151,67,.16), transparent 18%),
    radial-gradient(circle at top left, rgba(129,157,18,.10), transparent 20%),
    linear-gradient(180deg, #f4eedf 0%, #ede5d8 38%, #e6ddcf 100%);
}
a{text-decoration:none;color:inherit}
img{max-width:100%}
.shell{width:min(var(--max), calc(100% - 28px));margin:0 auto}
.section{padding:15px 0}
.card{
  background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(250,246,239,.98));
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
/* ===== 2. HEADER / NAVEGACIÓN / BOTONES ===== */
.site-header{
  position:sticky;top:0;z-index:50;
  background:linear-gradient(180deg,#313a46,#1f2831);
  border-bottom:4px solid var(--olive);
  box-shadow:0 14px 36px rgba(0,0,0,.22);
}
.header-shell{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:88px}
.brand{display:flex;align-items:center;gap:12px;color:#fff}
.brand strong{display:block;font-size:1.18rem;font-weight:900}
.brand small{display:block;font-size:.76rem;color:rgba(255,255,255,.72)}
.brand__icon{
  width:46px;height:46px;border-radius:14px;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  color:#231c13;font-size:1.2rem;font-weight:900;
  box-shadow:0 12px 26px rgba(197,151,67,.30);
}
.main-nav{display:flex;gap:10px;flex:1;overflow:auto;scrollbar-width:none}
.main-nav::-webkit-scrollbar{display:none}
.main-nav a{
  white-space:nowrap;color:#fff;padding:10px 14px;border-radius:999px;font-weight:800;font-size:.92rem;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08)
}
.header-actions{display:flex;gap:10px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  border:none;border-radius:999px;padding:13px 18px;font-weight:900;cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
.btn:hover{transform:translateY(-1px)}
.btn--gold{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#241d13;box-shadow:0 12px 24px rgba(197,151,67,.28)}
.btn--olive{background:linear-gradient(135deg,var(--olive),var(--olive-2));color:#1a1f10;box-shadow:0 12px 24px rgba(129,157,18,.28)}
.btn--dark{background:linear-gradient(135deg,#303a46,#1e2630);color:#fff;box-shadow:0 12px 24px rgba(31,38,48,.24)}
.btn--ghost{background:#fff;color:var(--text);border:1px solid var(--line);box-shadow:var(--shadow-soft)}
.btn--full{width:100%}
.eyebrow{
  display:inline-flex;
  align-items:center;
  width:fit-content;
  max-width:fit-content;
  flex:0 0 auto;
  white-space:nowrap;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(129,157,18,.11);
  color:#5b7110;
  font-weight:900;
  font-size:.8rem;
}
.hero-clean__kicker--full{
  width:auto !important;
}
/* ===== 3. HERO / HOME / COMPONENTES PRINCIPALES ===== */
.hero-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.8fr);gap:18px;padding-top:24px}
.hero-main{padding:22px;overflow:hidden}
.hero-strip{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  margin-bottom:18px;
  flex-wrap:wrap;
}
.mini-lawyers{display:flex;gap:10px;overflow:auto;scrollbar-width:none}
.mini-lawyers::-webkit-scrollbar{display:none}
.mini-lawyer{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:76px}
.mini-lawyer .avatar{width:54px;height:54px;border-radius:16px;font-size:1rem}
.mini-lawyer small{font-weight:700;color:var(--muted)}
.avatar--mini{width:54px;height:54px;border-radius:16px;font-size:1rem}
.hero-content{display:grid;grid-template-columns:minmax(0,1.2fr) 250px;gap:18px}
.hero-content--full{
  grid-template-columns:1fr;
  max-width:min(100%, 920px);
}
.hero-content h1{
  font-size:clamp(1.9rem,3.2vw,2.9rem);
  line-height:1.04;
  margin:10px 0 14px;
  max-width:14ch;
  letter-spacing:-0.03em;
  text-wrap:balance;
}
.hero-content p{color:var(--muted);font-size:1.02rem;max-width:72ch}
.ask-box{margin-top:20px;padding:18px;border:1px solid var(--line);border-radius:22px;background:var(--paper)}
.ask-box--expanded{padding:20px 22px 14px}
.ask-box label{display:block;font-weight:800;margin-bottom:10px}
.ask-box textarea,.text-input,input,textarea{
  width:100%;border:1px solid var(--line);background:#fff;border-radius:18px;padding:15px 16px;
  font:inherit;color:var(--text);outline:none
}
.ask-box textarea{min-height:148px;resize:vertical}
.ask-box--expanded textarea{min-height:180px}
.ask-actions{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:10px}
.trust-pills{display:flex;gap:8px;flex-wrap:wrap}
.trust-pills span,.pill{
  display:inline-flex;align-items:center;padding:8px 11px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:800;font-size:.82rem
}
.pill--gold{background:rgba(197,151,67,.12);color:#7d5a16}
.stat-card{
  padding:18px;border-radius:20px;background:linear-gradient(180deg,#fff,#f7f2e9);border:1px solid var(--line);box-shadow:var(--shadow-soft)
}
.stat-card--wide{padding:22px 24px}
.portal-metrics{padding-top:0}
.portal-metrics__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.stat-card strong{display:block;font-size:1.8rem}
.stat-card span{color:var(--muted);font-weight:700}
.hero-sidebar{padding:22px}
.hero-sidebar h3,.section-head h2,.sidebar-box h3,.form-card h1,.panel-card h2,.profile-main h1{margin:0 0 10px}
.check-list{padding-left:18px;color:var(--muted);line-height:1.7}
.section-head{margin-bottom:16px}
.section-head p{color:var(--muted);margin:0}
.chips-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.topic-chip{
  padding:18px;border-radius:22px;border:1px solid var(--line);background:linear-gradient(180deg,#fff,#f7f2e8);box-shadow:var(--shadow-soft)
}
.topic-chip strong{display:block}
.topic-chip small{color:var(--muted);font-weight:700}
.topic-chip--visual{
  position:relative;
  display:flex;
  align-items:center;
  gap:14px;
  min-height:104px;
  padding:16px 18px;
  overflow:hidden;
  isolation:isolate;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.topic-chip--visual::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--topic-glow, #cfdf90) 42%, transparent), transparent 52%),
    linear-gradient(180deg, rgba(255,255,255,.98), color-mix(in srgb, var(--topic-soft, #f3ede3) 74%, #ffffff 26%));
  z-index:-2;
}
.topic-chip--visual::after{
  content:"";
  position:absolute;
  left:0;
  top:14px;
  bottom:14px;
  width:4px;
  border-radius:999px;
  background:linear-gradient(180deg, var(--topic-accent, #819d12), var(--topic-glow, #cfdf90));
  box-shadow:0 0 18px color-mix(in srgb, var(--topic-glow, #cfdf90) 50%, transparent);
  z-index:-1;
}
.topic-chip--visual:hover{
  transform:translateY(-2px);
  border-color:color-mix(in srgb, var(--topic-accent, #819d12) 38%, var(--line));
  box-shadow:0 18px 34px rgba(31,38,48,.10);
}
.topic-chip__iconWrap{
  width:58px;
  height:58px;
  flex:0 0 58px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.92), color-mix(in srgb, var(--topic-soft, #f3ede3) 88%, #ffffff 12%));
  border:1px solid color-mix(in srgb, var(--topic-accent, #819d12) 22%, #d8cebc);
  box-shadow:0 10px 22px rgba(31,38,48,.08);
}
.topic-chip__icon{
  width:32px;
  height:32px;
  object-fit:contain;
  display:block;
}
.topic-chip__content{
  min-width:0;
  display:grid;
  gap:4px;
}
.topic-chip__content strong{
  font-size:1.02rem;
  line-height:1.18;
}
.topic-chip__content small{
  font-size:.92rem;
}
.topic-chip--active{
  outline:none;
  border-color:color-mix(in srgb, var(--topic-accent, #819d12) 52%, var(--line));
  box-shadow:0 0 0 3px color-mix(in srgb, var(--topic-glow, #cfdf90) 34%, transparent), 0 18px 34px rgba(31,38,48,.11);
}
@media (max-width: 760px){
  .topic-chip--visual{
    gap:12px;
    min-height:94px;
    padding:14px 16px;
    border-radius:20px;
  }

  .topic-chip__iconWrap{
    width:52px;
    height:52px;
    flex-basis:52px;
    border-radius:16px;
  }

  .topic-chip__icon{
    width:28px;
    height:28px;
  }

  .topic-chip__content strong{
    font-size:1rem;
  }

  .topic-chip__content small{
    font-size:.88rem;
  }
}
/* ===== 4. LISTADOS / SIDEBARS / TARJETAS ===== */
.two-col{display:grid;grid-template-columns:minmax(0,1.5fr) 340px;gap:18px}
.content-stack,.sidebar-stack{display:grid;gap:16px}
.question-card{padding:18px}
.question-top,.question-bottom,.contact-box__head,.review-item__top,.profile-main__head,.lawyer-card__bottom,.lawyer-card__top,.questionIntro{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.question-card h3{margin:10px 0 10px;font-size:1.2rem}
.question-card p,.lawyer-card p,.sidebar-box p,.answer-body p,.question-full p,.review-item p,.simple-list-card p{color:var(--muted)}
.question-meta{font-size:.86rem;font-weight:800;color:#7b8490}
.sidebar-box{padding:18px}
.live-list{display:grid;gap:12px}
.live-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--olive);box-shadow:0 0 0 6px rgba(129,157,18,.12);margin-right:8px}
.lawyers-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.lawyer-card{padding:18px}
.avatar{
  width:58px;height:58px;border-radius:18px;display:grid;place-items:center;
  background:linear-gradient(135deg,#2f3945,#1f2730);color:#fff;font-weight:900;font-size:1.15rem;
}
.avatar--lg{width:74px;height:74px;border-radius:20px;font-size:1.32rem}
.avatar--xl{width:118px;height:118px;border-radius:28px;font-size:2rem}
.lawyer-stats,.mini-metrics,.pill-row,.footer-grid,.contact-actions,.cta-stack,.panel-list,.form-grid,.profile-hero,.answer-layout,.panel-grid{
  display:grid;gap:12px
}
.lawyer-stats{grid-template-columns:repeat(3,minmax(0,1fr));font-size:.86rem;font-weight:800;color:var(--muted)}
.site-footer{margin-top:36px;padding:26px 0;background:linear-gradient(180deg,#2d3642,#1f2730);color:#fff}
.footer-grid{grid-template-columns:2fr 1fr 1fr}
.footer-grid h4{margin:0 0 8px}
.footer-grid a{display:block;color:rgba(255,255,255,.80);margin:6px 0}
/* ===== 5. FORMULARIOS / PREGUNTA / RESPUESTA ===== */
.form-layout{display:flex;justify-content:center}
.form-card{width:min(980px,100%);padding:24px}
.form-card--narrow{width:min(560px,100%)}
.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.field{display:grid;gap:8px}
.field label{font-weight:800}
.field input,.field textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:16px;padding:14px 15px;font:inherit}
.field textarea{min-height:150px;resize:vertical}
.field--full{grid-column:1/-1}
.notice-card{padding:16px 18px;border-radius:20px;background:#fff9eb;border:1px solid #ecd59c}
.notice-card--success{background:#eef8de;border-color:#bdd37d}
.notice-card--error{background:#fff0f0;border-color:#e6b0b0}
.question-layout{align-items:start}
.question-full,.answer-card,.simple-list-card,.panel-card,.contact-box{padding:18px}
.answer-layout{grid-template-columns:240px minmax(0,1fr)}
.answer-lawyer{padding:16px;border:1px solid var(--line);border-radius:20px;background:var(--paper);display:grid;gap:10px}
.mini-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
.mini-metrics--block{grid-template-columns:1fr}
.contact-box{position:sticky;top:100px}
.phone-big{font-size:2rem;font-weight:900;line-height:1}
.availability,.status-badge{
  display:inline-flex;align-items:center;padding:8px 11px;border-radius:999px;background:rgba(129,157,18,.12);color:#5f7410;font-weight:900;font-size:.8rem
}
.related-link{display:block;padding:12px 0;border-bottom:1px solid var(--line);font-weight:700;color:var(--text)}
/* ===== 6. PERFIL ABOGADO / PANEL PÚBLICO ===== */
.lawyer-profile-layout{display:grid;grid-template-columns:minmax(0,1.45fr) 360px;gap:18px}
.profile-hero{grid-template-columns:220px minmax(0,1fr);padding:20px}
.profile-side{display:grid;justify-items:start;gap:10px;padding-right:18px;border-right:1px solid var(--line)}
.profile-main{padding-left:10px}
.contact-panel{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:22px;background:var(--paper);margin:12px 0 16px}
.bio-lead{font-size:1.02rem}
.review-item{padding:12px 0;border-bottom:1px solid var(--line)}
.panel-grid{grid-template-columns:320px minmax(0,1fr);gap:18px}
.panel-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.panel-row--column{display:grid;justify-content:stretch}
.simple-list-card h3{margin-top:0}
.stars{color:#a17b20;letter-spacing:2px;font-size:1.15rem}

@media (max-width: 1100px){
  .hero-grid,.two-col,.lawyer-profile-layout,.panel-grid,.portal-metrics__grid{grid-template-columns:1fr}
  .hero-content{grid-template-columns:1fr}
  .contact-box{position:static}
  .chips-grid,.lawyers-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 760px){
  .header-shell{flex-wrap:wrap;padding:10px 0}
  .main-nav,.header-actions{width:100%}
  .header-actions .btn{flex:1}
  .chips-grid,.lawyers-grid,.form-grid,.footer-grid,.answer-layout,.profile-hero,.contact-panel,.lawyer-stats,.mini-metrics,.portal-metrics__grid{grid-template-columns:1fr}
  .hero-main,.hero-sidebar,.sidebar-box,.question-card,.lawyer-card,.form-card,.panel-card{padding:16px}
  .hero-strip--top{align-items:flex-start}
  .hero-content h1{
    font-size:clamp(1.7rem,8vw,2.15rem);
    max-width:11ch;
  }
  .ask-actions,.question-top,.question-bottom,.profile-main__head,.lawyer-card__top,.lawyer-card__bottom{flex-direction:column}
  .profile-side{border-right:none;border-bottom:1px solid var(--line);padding-right:0;padding-bottom:14px}
  .profile-main{padding-left:0}
}

select{
  width:100%;border:1px solid var(--line);background:#fff;border-radius:16px;padding:14px 15px;font:inherit;color:var(--text);outline:none
}
.form-grid--compact{margin-top:14px}
.chip-toggle{position:relative;display:inline-flex;align-items:center}
.chip-toggle input{position:absolute;opacity:0;pointer-events:none}
.chip-toggle span{
  display:inline-flex;align-items:center;padding:8px 11px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:800;font-size:.82rem;cursor:pointer
}
.chip-toggle input:checked + span{background:rgba(129,157,18,.14);border-color:rgba(129,157,18,.35);color:#5b7110}
.topic-chip--active{outline:2px solid rgba(129,157,18,.22)}
.answer-layout--wide{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:24px}
.answer-main{display:grid;gap:16px}
.answer-main--premium{padding-top:2px}
.answer-main__head{align-items:flex-start;gap:16px}
.answer-main__header-copy{display:grid;gap:10px}

.answer-layout--dictamen-split{
  grid-template-columns:minmax(0, 260px) minmax(0, 1fr);
  align-items:start;
}
.answer-side-column{
  display:grid;
  gap:14px;
  align-self:start;
  align-content:start;
  min-width:0;
}
.answer-side-column > *{
  width:100%;
  min-width:0;
}
.answer-main--expanded{min-width:0}
.answer-editorial-card--wide{max-width:none;width:100%}
.answer-copy--dictamen{max-width:46em}
.lawyer-cta-card--side{
  position:static;
  top:auto;
}
.eyebrow--dictamen{background:linear-gradient(180deg,rgba(129,157,18,.14),rgba(129,157,18,.08));border:1px solid rgba(129,157,18,.18)}
.answer-main__title-wrap{display:grid;gap:6px}
.answer-kicker{margin:0;font-size:.76rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#8c7a57}
.answer-meta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:2px}
.answer-meta-pill{
  display:inline-flex;align-items:center;gap:8px;
  padding:9px 13px;border-radius:999px;
  background:linear-gradient(180deg,#fffdf8,#f3ecdf);
  border:1px solid rgba(198,185,159,.85);
  color:#465365;font-size:.84rem;font-weight:800;
  box-shadow:0 10px 22px rgba(31,38,48,.05);
}
.answer-editorial-card{
  position:relative;
  max-width:760px;
  padding:24px 28px 26px;
  border-radius:30px;
  border:1px solid rgba(198,185,159,.95);
  background:
    radial-gradient(circle at top right, rgba(197,151,67,.09), transparent 22%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(246,241,233,.98));
  box-shadow:0 24px 54px rgba(31,38,48,.08);
  overflow:hidden;
}
.answer-editorial-card::before{
  content:"";
  position:absolute;left:0;top:20px;bottom:20px;width:5px;
  border-radius:999px;
  background:linear-gradient(180deg,var(--gold),var(--olive-2));
}
.answer-editorial-card::after{
  content:"“";
  position:absolute;right:26px;top:14px;
  font-size:5rem;line-height:1;color:rgba(197,151,67,.12);font-weight:900;
  pointer-events:none;
}
.answer-editorial-card__top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}
.answer-editorial-card__top--dictamen{align-items:flex-start;margin-bottom:10px}
.answer-editorial-card__heading{display:grid;gap:10px}
.answer-editorial-card__heading h4{margin:0;color:#1f2630;font-size:1.34rem;line-height:1.08;letter-spacing:-.02em}
.answer-editorial-card__label{
  display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;
  background:rgba(129,157,18,.11);color:#5c7111;font-size:.78rem;font-weight:900;letter-spacing:.02em;text-transform:uppercase;
}
.answer-editorial-card__stamp{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:128px;padding:12px 14px;border-radius:18px;
  border:1px solid rgba(197,151,67,.28);
  background:linear-gradient(180deg,rgba(255,253,248,.98),rgba(242,233,216,.95));
  box-shadow:0 12px 24px rgba(31,38,48,.05);
}
.answer-editorial-card__stamp span{font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#8b7446}
.answer-editorial-card__divider{height:1px;background:linear-gradient(90deg,rgba(197,151,67,.48),rgba(197,151,67,.12),transparent);margin:12px 0 18px}
.answer-copy{color:var(--muted);line-height:1.8;margin:0}
.answer-copy--premium{
  position:relative;z-index:1;
  color:#415064;
  font-size:1.12rem;
  line-height:1.9;
  max-width:37em;
}
.answer-copy--premium p{margin:0 0 1.1em}
.answer-copy--premium p:last-child{margin-bottom:0}
.answer-copy--premium strong{color:#1f2630}
.answer-copy--premium ul,.answer-copy--premium ol{margin:1em 0 1.15em 1.2em;padding:0}
.answer-copy--premium li{margin:.45em 0}
.answer-copy--premium blockquote{
  margin:1.2em 0;padding:14px 18px;border-left:4px solid rgba(197,151,67,.55);
  background:rgba(255,255,255,.6);border-radius:16px;color:#304055;
}
.answer-copy--dictamen > p:first-child{font-size:1em;color:inherit}
.answer-copy--dictamen p + p{margin-top:1.15em}
.answer-editorial-card__footer{
  margin-top:22px;padding-top:16px;border-top:1px solid rgba(198,185,159,.7);
  display:flex;justify-content:space-between;gap:16px;align-items:flex-end;
}
.answer-editorial-card__footer-kicker{display:block;margin-bottom:6px;font-size:.74rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#8d7a58}
.answer-editorial-card__footer strong{display:block;font-size:1rem;color:#1f2630}
.answer-editorial-card__footer small{display:block;margin-top:4px;color:#6c7887;font-weight:700}
.answer-editorial-card__footer-meta{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.answer-editorial-card__footer-meta span{
  display:inline-flex;align-items:center;padding:9px 12px;border-radius:999px;
  background:rgba(255,255,255,.82);border:1px solid rgba(198,185,159,.78);
  color:#455263;font-size:.82rem;font-weight:800;
}
.contact-actions--inline{display:flex;flex-wrap:wrap;gap:10px}
.contact-actions--stack{display:grid;gap:10px}
.contact-box--inline{position:static;height:100%}
.k{font-size:.82rem;font-weight:900;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
@media (max-width: 1100px){
  .answer-layout--wide,
  .answer-layout--dictamen-split{grid-template-columns:1fr}
  .answer-side-column{gap:16px}
  .lawyer-cta-card--side{position:static;top:auto}
  .answer-editorial-card{max-width:none}
  .answer-copy--dictamen{max-width:none}
}

.avatar-img{object-fit:cover;border:1px solid var(--line);background:#f0ece1}
.section-head--flex{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.section-head--compact h3{margin:0}
.status-badge--closed{background:rgba(185,65,65,.10);color:#8c2f2f}
.status-badge--open{background:rgba(129,157,18,.12);color:#5f7410}
.inline-form-actions{margin-top:18px}
.pill--muted{background:#f2f2f2;color:#6a737c}
.row-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.row-actions form{margin:0}
.panel-profile-head,.profile-editor-head{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.review-form textarea{min-height:120px}
input[type="file"]{width:100%;border:1px dashed var(--line);background:#fff;border-radius:16px;padding:14px 15px;font:inherit;color:var(--muted)}
@media (max-width: 760px){
  .section-head--flex,.panel-profile-head,.profile-editor-head,.row-actions{flex-direction:column;align-items:flex-start}
}

@media (max-width: 760px){
  .answer-main__head{flex-direction:column;align-items:flex-start}
  .answer-layout--wide{gap:16px}
  .answer-meta-row{gap:8px}
  .answer-meta-pill{font-size:.8rem;padding:8px 11px}
  .answer-editorial-card{padding:20px 18px 22px;border-radius:24px}
  .answer-editorial-card::after{right:14px;top:10px;font-size:4rem}
  .answer-copy--premium{font-size:1.01rem;line-height:1.82;max-width:none}
  .answer-editorial-card__top--dictamen{flex-direction:column;align-items:flex-start}
  .answer-editorial-card__heading h4{font-size:1.12rem}
  .answer-editorial-card__stamp{min-width:0;padding:10px 12px}
  .answer-editorial-card__footer{flex-direction:column;align-items:flex-start}
  .answer-editorial-card__footer-meta{justify-content:flex-start}
}

.form-grid--hero{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width: 760px){
  .mini-lawyers{width:100%;justify-content:flex-start}
  .hero-strip--top{flex-direction:column}
  .form-grid--hero{grid-template-columns:1fr}
}

/* ===== ADMIN V4 ===== */
.admin-body{background:#f3efe5;color:#1f2937}
.admin-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}
.admin-sidebar{
  background:linear-gradient(180deg,#182434 0%,#101721 100%);
  color:#fff;
  padding:28px 18px 110px;
  display:flex;
  flex-direction:column;
  gap:24px;
  position:sticky;
  top:0;
  height:100dvh;
  overflow-y:auto;
  overflow-x:hidden;
  -webkit-overflow-scrolling:touch;
}
.admin-brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;padding:8px 10px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.04)}
.admin-brand small{display:block;color:#c8d1db}
.admin-nav{display:flex;flex-direction:column;gap:8px}
.admin-nav a{color:#dbe5f0;text-decoration:none;padding:12px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.03);font-weight:700}
.admin-nav a.is-active,.admin-nav a:hover{background:#d6b25f;color:#1e2430}
.admin-sidebar__footer{margin-top:auto;display:grid;gap:12px;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.04)}
.admin-sidebar__footer small{display:block;color:#c8d1db}
.admin-main{padding:28px;display:grid;gap:20px}
.admin-topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}
.admin-topbar h1{margin:0 0 6px;font-size:clamp(1.6rem,2.3vw,2.4rem)}
.admin-topbar p{margin:0;color:#5e6a7d;max-width:760px}
.admin-topbar__actions{display:flex;gap:10px;flex-wrap:wrap}
.admin-grid-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.admin-metric-card{display:grid;gap:6px;padding:20px;border-radius:22px;background:#fff;border:1px solid #ddd0af;box-shadow:0 18px 40px rgba(37,43,56,.06);text-decoration:none;color:#1f2937}
.admin-metric-card strong{font-size:2rem;line-height:1}.admin-metric-card span{color:#526072;font-weight:700}
.admin-panels-two{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.admin-card{padding:22px;border-radius:24px}
.admin-table-wrap{overflow:auto}
.admin-table{width:100%;border-collapse:collapse;min-width:780px}
.admin-table th,.admin-table td{padding:14px 12px;border-bottom:1px solid #ece4cf;vertical-align:top;text-align:left}
.admin-table th{font-size:.85rem;text-transform:uppercase;letter-spacing:.03em;color:#66758a}
.admin-filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}.admin-filters input,.admin-filters select{min-width:220px}
.admin-actions-wrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.admin-actions-wrap form{margin:0;display:inline-flex;flex:0 0 auto}
.admin-actions-wrap .btn{min-width:90px;text-align:center;white-space:nowrap}
.btn--sm{padding:8px 12px;font-size:.85rem;border-radius:999px}
.status-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:.82rem;font-weight:800;border:1px solid #d8ccb1;background:#f5efe0;color:#4c5870}
.status-badge--approved,.status-badge--visible,.status-badge--open{background:#eef8e8;color:#2f6f2d;border-color:#bfdcae}
.status-badge--pending{background:#fff6df;color:#8a6500;border-color:#e8d08c}
.status-badge--rejected,.status-badge--suspended,.status-badge--hidden,.status-badge--closed{background:#fff0f0;color:#9a3131;border-color:#efb5b5}
.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-form-grid__full{grid-column:1 / -1}
.admin-form-grid label span{display:block;font-weight:700;margin-bottom:8px}.admin-form-grid input,.admin-form-grid select,.admin-form-grid textarea,.admin-filters input,.admin-filters select{width:100%;padding:14px 16px;border:1px solid #d9cfb7;border-radius:16px;background:#fff;font:inherit}
.admin-check{display:flex;align-items:center;gap:10px;font-weight:700;padding-top:30px}
.admin-check input{width:auto}.admin-actions-end{display:flex;justify-content:flex-end}
.admin-stack-list{display:grid;gap:14px}.admin-answer-card{padding:18px;border:1px solid #e6dcc3;border-radius:20px;background:#fff}
.content-copy{padding:16px;border:1px solid #ebe2ca;border-radius:20px;background:#fffdf8;line-height:1.65}
.admin-login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top,#24364d 0%,#111826 50%,#0b1018 100%)}
.admin-login-wrap{width:min(100%,560px);padding:20px}.admin-login-card{background:#fff;border-radius:28px;padding:28px;border:1px solid #ddd0af;box-shadow:0 25px 60px rgba(0,0,0,.2);display:grid;gap:18px}
@media (max-width: 1200px){.admin-grid-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-panels-two{grid-template-columns:1fr}.admin-shell{grid-template-columns:1fr}.admin-sidebar{position:relative;height:auto}}
@media (max-width: 760px){.admin-main{padding:18px}.admin-grid-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-form-grid{grid-template-columns:1fr}.admin-topbar{flex-direction:column}}

/* ===== PERFIL ABOGADO PRO ===== */
.profile-hero{align-items:start;gap:22px;padding:22px 24px}
.profile-side{gap:14px;align-content:start}
.profile-side strong{font-size:1.05rem;line-height:1.15}
.profile-side span{color:var(--muted);font-weight:700}
.profile-main__head{align-items:flex-start;margin-bottom:18px}
.profile-main__head h1{font-size:clamp(2rem,3.2vw,3.1rem);line-height:.96;margin:10px 0 12px}
.profile-main__head p{max-width:68ch;font-size:1.02rem}
.contact-panel--pro{grid-template-columns:minmax(0,.95fr) minmax(0,1.2fr);gap:22px;padding:22px;border-radius:26px;background:linear-gradient(180deg,#fff,#f6f0e5);border:1px solid var(--line);box-shadow:0 18px 40px rgba(0,0,0,.08)}
.contact-left{display:flex;flex-direction:column;gap:14px;justify-content:center}
.meta-row{display:flex;gap:10px;flex-wrap:wrap}
.contact-actions--pro{display:flex;flex-direction:column;gap:12px;align-items:stretch}
.contact-actions--secondary{gap:12px;justify-content:flex-start}
.btn--xl{position:relative;min-height:72px;padding:16px 24px;font-size:1.2rem;justify-content:flex-start;border-radius:24px;box-shadow:0 16px 36px rgba(129,157,18,.28)}
.btn--xl .btn-sub{display:block;font-size:.84rem;font-weight:800;opacity:.8;margin-left:8px}
.profile-bio-card{margin-top:16px;padding:18px 20px;border-radius:22px;border:1px solid var(--line);background:linear-gradient(180deg,#fff,#fbf8f2);box-shadow:var(--shadow-soft)}
.profile-bio-card .k{display:block;margin-bottom:8px}
.profile-bio-card .bio-lead{margin:0;font-size:1.05rem;line-height:1.7;color:#3d4756}
.profile-metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.profile-metric-card{padding:18px;border-radius:22px;border:1px solid var(--line);background:linear-gradient(180deg,#fff,#f7f2e9);box-shadow:var(--shadow-soft)}
.profile-metric-card strong{display:block;font-size:1.55rem;line-height:1.05;margin-bottom:6px}
.profile-metric-card span{color:var(--muted);font-weight:700;font-size:.92rem}
#valoraciones .review-item:last-of-type{border-bottom:none}
@media (max-width: 1100px){.contact-panel--pro,.profile-metrics-grid{grid-template-columns:1fr}}
@media (max-width: 760px){.contact-actions--secondary{flex-direction:column}.btn--xl{min-height:unset;justify-content:center;text-align:center}.btn--xl .btn-sub{margin-left:0;margin-top:4px}.profile-main__head h1{font-size:2rem}}

/* ===== CRM SOLICITUDES: AJUSTE VISUAL ===== */
.crm-actions{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:220px;
}
.crm-actions form{
  width:100%;
  margin:0;
}
.crm-actions select,
.crm-actions input,
.crm-actions textarea{
  width:100%;
  font-size:13px;
  padding:6px 8px;
}
.crm-actions textarea{
  resize:none;
  height:60px;
}
.crm-actions button{
  width:100%;
}
.crm-delete-btn button{
  background:#1f2937;
  color:#fff;
}
.admin-table td:last-child{
  width:260px;
}

/* ===== FIX MOBILE HEADER + HERO ===== */
@media (max-width: 760px){
  .shell{
    width:min(var(--max), calc(100% - 16px));
  }

  .site-header{
    position:static;
  }

  .header-shell{
    flex-wrap:nowrap;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    min-height:auto;
    padding:12px 0;
  }

  .brand{
    min-width:0;
    flex:1 1 auto;
    gap:10px;
  }

  .brand strong{
    font-size:1rem;
    line-height:1.05;
  }

  .brand small{
    font-size:.7rem;
    line-height:1.15;
  }

  .brand__icon{
    width:42px;
    height:42px;
    border-radius:12px;
    flex:0 0 42px;
  }

  .main-nav{
    display:none;
  }

  .header-actions{
    width:auto;
    flex:0 0 auto;
    margin-left:auto;
  }

  .header-actions .btn{
    flex:none;
    width:auto;
    min-height:46px;
    padding:12px 16px;
    font-size:.95rem;
  }

  .header-actions .btn + .btn,
  .header-actions .btn--gold,
  .header-actions .btn--dark,
  .header-actions .btn--ghost:last-child{
    display:none;
  }

  .hero-grid,
  .hero-content,
  .hero-content--full,
  .hero-strip,
  .hero-strip--top{
    display:block;
  }

  .hero-main,
  .hero-sidebar{
    padding:16px;
  }

  .hero-strip{
    margin-bottom:14px;
  }

  .eyebrow{
    margin-bottom:14px;
  }

  .mini-lawyers{
    gap:12px;
    overflow-x:auto;
    padding-bottom:4px;
    margin-bottom:14px;
  }

  .mini-lawyer{
    min-width:64px;
  }

  .mini-lawyer .avatar,
  .avatar--mini{
    width:48px;
    height:48px;
    border-radius:14px;
  }

  .mini-lawyer small{
    font-size:.82rem;
  }

  .hero-content h1{
    font-size:clamp(2rem, 9vw, 2.7rem);
    line-height:1.02;
    letter-spacing:-0.03em;
    margin:8px 0 12px;
    max-width:10ch;
    overflow-wrap:anywhere;
  }

  .hero-content p{
    font-size:.97rem;
  }

  .ask-box,
  .ask-box--expanded{
    padding:16px;
    border-radius:18px;
  }

  .ask-box textarea,
  .ask-box--expanded textarea,
  .text-input,
  input,
  textarea,
  select{
    font-size:16px;
  }

  .ask-box textarea,
  .ask-box--expanded textarea{
    min-height:160px;
  }

  .trust-pills{
    gap:8px;
  }

  .trust-pills span,
  .pill{
    font-size:.8rem;
    line-height:1.2;
    max-width:100%;
  }

  .ask-actions{
    display:grid;
    grid-template-columns:1fr;
    align-items:stretch;
  }

  .ask-actions .btn,
  .btn--full{
    width:100%;
  }
}

/* ===== ADMIN FIX COMPLETO: LAYOUT + TABLAS + DASHBOARD ===== */
html,
body{
  max-width:100%;
  overflow-x:hidden;
}

.admin-body{
  overflow-x:hidden;
}

.admin-shell{
  grid-template-columns:280px minmax(0,1fr);
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}

.admin-main,
.admin-card,
.admin-panels-two,
.admin-table-wrap{
  min-width:0;
}

.admin-main{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}

.admin-topbar{
  align-items:flex-start;
}

.admin-topbar__actions{
  justify-content:flex-end;
}

.admin-grid-metrics{
  grid-template-columns:repeat(6,minmax(0,1fr));
}

.admin-panels-two{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  align-items:start;
}

.admin-card{
  overflow:hidden;
}

.admin-table-wrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

.admin-panels-two .admin-table{
  min-width:0;
  width:100%;
  table-layout:fixed;
}

.admin-panels-two .admin-table th,
.admin-panels-two .admin-table td{
  word-break:break-word;
  overflow-wrap:anywhere;
}

.admin-panels-two .admin-table th:nth-child(1),
.admin-panels-two .admin-table td:nth-child(1){width:42%;}

.admin-panels-two .admin-table th:nth-child(2),
.admin-panels-two .admin-table td:nth-child(2){width:20%;}

.admin-panels-two .admin-table th:nth-child(3),
.admin-panels-two .admin-table td:nth-child(3){width:20%;}

.admin-panels-two .admin-table th:nth-child(4),
.admin-panels-two .admin-table td:nth-child(4){width:18%;}

.admin-panels-two .btn--sm{
  min-width:unset;
  width:auto;
}

@media (max-width: 1500px){
  .admin-grid-metrics{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width: 1200px){
  .admin-shell{
    grid-template-columns:1fr;
  }

  .admin-sidebar{
    position:relative;
    top:auto;
    height:auto;
  }

  .admin-panels-two{
    grid-template-columns:1fr;
  }
}

@media (max-width: 900px){
  .admin-main{
    padding:18px;
  }

  .admin-grid-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .admin-topbar{
    flex-direction:column;
  }

  .admin-topbar__actions{
    width:100%;
    justify-content:flex-start;
  }
}

@media (max-width: 760px){
  .admin-main{
    padding:14px;
    gap:16px;
  }

  .admin-brand{
    padding:10px 12px;
  }

  .admin-nav a{
    padding:11px 12px;
  }

  .admin-grid-metrics{
    grid-template-columns:1fr;
  }

  .admin-card{
    padding:16px;
    border-radius:18px;
  }

  .admin-panels-two .admin-table{
    table-layout:auto;
  }

  .admin-panels-two .admin-table th,
  .admin-panels-two .admin-table td{
    white-space:normal;
  }
}
/* ===== HOME SIDEBAR BANNERS ===== */
.hero-sidebar-banners,
.home-sidebar-banners{
  display:grid;
  gap:14px;
  margin-top:16px;
}

.home-sidebar-banner{
  overflow:hidden;
  border-radius:22px;
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,241,231,.98));
  box-shadow:var(--shadow-soft);
}

.home-sidebar-banner--image a,
.home-sidebar-banner--image img{
  display:block;
  width:100%;
}

.home-sidebar-banner--image img{
  height:auto;
}

.home-sidebar-banner--code{
  padding:12px;
}

.home-sidebar-banner--code iframe,
.home-sidebar-banner--code ins,
.home-sidebar-banner--code img,
.home-sidebar-banner--code div{
  max-width:100% !important;
}

/* ===== ADMIN HOME BANNERS ===== */
.banner-admin-grid{
  display:grid;
  grid-template-columns:minmax(0, 420px) minmax(0, 1fr);
  gap:20px;
  align-items:start;
}

.banner-admin-form,
.banner-admin-list{
  padding:22px;
  border-radius:24px;
}

.banner-admin-form .admin-form-grid{
  grid-template-columns:1fr;
}

.banner-thumb-preview{
  display:block;
  width:100%;
  max-width:220px;
  border-radius:18px;
  border:1px solid #ddd0af;
  box-shadow:0 10px 24px rgba(37,43,56,.08);
}

.banner-type-switch{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.banner-list-table td small{
  color:#66758a;
}

.banner-list-table .code-badge,
.banner-list-table .image-badge{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  font-size:.78rem;
  font-weight:800;
}

.banner-list-table .code-badge{
  background:#eef0ff;
  color:#4650a8;
}

.banner-list-table .image-badge{
  background:#eef8e8;
  color:#2f6f2d;
}

.banner-flags{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

@media (max-width: 1100px){
  .banner-admin-grid{
    grid-template-columns:1fr;
  }
}
/* ===== FIX ALTURA SIDEBAR / HERO / PREGUNTAS ===== */
.hero-grid {
  align-items: start;
}

.hero-sidebar {
  height: auto !important;
  align-self: start;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.hero-sidebar .card {
  height: auto;
}

.two-col {
  align-items: start;
}

.sidebar-stack {
  align-self: start;
  height: auto !important;
}

.sidebar-stack .card,
.sidebar-box,
.visible-lawyers-box {
  height: auto !important;
  align-self: start;
}

/* ===== SIDEBAR BANNERS PREMIUM ===== */
.hero-side-stack{
  display:grid;
  gap:20px;
  align-content:start;
  min-width:0;
}

.sidebar-banners{
  display:grid;
  gap:16px;
  width:100%;
  margin-top:2px;
}

.sidebar-banner{
  position:relative;
  display:block;
  width:100%;
  border-radius:22px;
  overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,244,236,.98));
  border:1px solid rgba(31,38,48,.08);
  box-shadow:0 18px 38px rgba(31,38,48,.12);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  isolation:isolate;
  aspect-ratio:16 / 6;
}

.sidebar-banner::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0));
  pointer-events:none;
  z-index:1;
}

.sidebar-banner:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 46px rgba(31,38,48,.16);
  border-color:rgba(197,151,67,.28);
}

.sidebar-banner img{
  display:block;
  width:100%;
  height:100%;
  max-height:none;
  object-fit:cover;
  object-position:center;
  background:#fff;
  transition:transform .32s ease;
}

.sidebar-banner:hover img{
  transform:scale(1.03);
}

.sidebar-banner--code{
  padding:14px;
}

.sidebar-banner--code > *{
  position:relative;
  z-index:2;
}

.sidebar-banner iframe,
.sidebar-banner ins,
.sidebar-banner .adsbygoogle{
  max-width:100% !important;
}

@media (max-width: 920px){
  .hero-side-stack{gap:16px}
  .sidebar-banner{aspect-ratio:16 / 7}
  .sidebar-banner img{max-height:170px}
}

/* ===== BOTÓN ÁREA ABOGADOS V3 COMPACTO Y LIMPIO ===== */
.header-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-shrink:0;
}

.header-lawyer-link{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  padding:9px 13px;
  border-radius:14px;
  text-decoration:none;
  white-space:nowrap;
  color:#f8fafc;
  font-weight:800;
  font-size:.89rem;
  line-height:1;
  letter-spacing:-0.01em;
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.05));
  border:1px solid rgba(255,255,255,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09), 0 10px 20px rgba(0,0,0,.16);
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
}

.header-lawyer-link::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(135deg, rgba(212,175,55,.12), transparent 55%);
  opacity:.9;
}

.header-lawyer-link:hover{
  transform:translateY(-1px);
  border-color:rgba(212,175,55,.38);
  background:linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.08));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10), 0 14px 26px rgba(0,0,0,.18);
}

.header-lawyer-link__icon,
.header-lawyer-link__text{
  position:relative;
  z-index:1;
}

.header-lawyer-link__icon{
  width:24px;
  height:24px;
  flex:0 0 24px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:8px;
  font-size:.78rem;
  color:#241d13;
  background:linear-gradient(135deg, #d5ad56 0%, #f0dba8 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4), 0 6px 12px rgba(197,151,67,.22);
}

.header-lawyer-link__text{
  display:inline-block;
  transform:translateY(-.5px);
}

@media (max-width: 980px){
  .header-lawyer-link{
    min-height:40px;
    padding:8px 12px;
    font-size:.85rem;
    gap:7px;
  }
}

@media (max-width: 760px){
  .site-header{
    position:static;
  }

  .header-shell{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    min-height:auto;
    padding:12px 0;
  }

  .brand{
    min-width:0;
    gap:10px;
  }

  .brand strong,
  .brand small{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .brand strong{
    font-size:1rem;
    line-height:1.05;
  }

  .brand small{
    font-size:.7rem;
    line-height:1.1;
  }

  .brand__icon{
    width:42px;
    height:42px;
    border-radius:12px;
    flex:0 0 42px;
  }

  .main-nav{
    display:none;
  }

  .header-actions{
    width:auto;
    margin-left:auto;
    gap:8px;
  }

  .header-actions .btn{
    flex:none;
    width:auto;
  }

  .header-lawyer-link{
    min-height:38px;
    padding:8px 10px;
    border-radius:12px;
    font-size:.8rem;
    gap:6px;
  }

  .header-lawyer-link__icon{
    width:22px;
    height:22px;
    flex-basis:22px;
    border-radius:7px;
    font-size:.72rem;
  }

  .btn--secondary{
    display:none !important;
  }
}

@media (max-width: 420px){
  .header-lawyer-link{
    padding:7px 9px;
    font-size:.78rem;
  }

  .header-lawyer-link__text{
    max-width:100px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
}

/* ===== MÓVIL: ocultar icono superior en tarjetas de preguntas recientes ===== */
@media (max-width: 640px){
  #preguntas .question-card--visual .question-visual{
    display:none;
  }

  #preguntas .question-card--visual{
    gap:12px;
  }
}
@media (max-width: 1100px){
  .hero-grid{
    gap: 22px !important;
  }

  .hero-side-stack{
    margin-top: 10px !important;
    gap: 18px !important;
  }

  .hero-sidebar--lawyer{
    margin-top: 0 !important;
  }
}

@media (max-width: 760px){
  .hero-grid{
    gap: 24px !important;
  }

  .hero-side-stack{
    margin-top: 14px !important;
    gap: 18px !important;
  }
}

/* ===== HERO LIMPIO ===== */
.hero-clean-section{
  padding-top: 0px;
}
.hero-clean{
  padding: 24px 24px 26px;
  overflow: hidden;
}
.hero-clean__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  margin-bottom:14px;
}
.hero-clean__kicker--full{
  width:100%;
}
.hero-clean__lawyers{
  justify-content:flex-end;
}
.hero-clean__lawyers--mobile{
  display:none;
  width:100%;
  gap:10px;
  overflow:auto;
  padding-top:4px;
  scrollbar-width:none;
}
.hero-clean__lawyers--mobile::-webkit-scrollbar{
  display:none;
}
.mini-lawyer--hero{
  min-width:68px;
}
.mini-lawyer--hero .avatar{
  width:50px;
  height:50px;
  border-radius:16px;
  box-shadow:0 10px 22px rgba(31,38,48,.10);
}
.hero-clean__kicker{
  display:grid;
  gap:10px;
}
.hero-clean__kickerText{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#6a7280;
  font-size:.92rem;
  font-weight:700;
}
.hero-clean__kickerText::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:999px;
  background:linear-gradient(180deg, #a6c31f 0%, #819d12 100%);
  box-shadow:0 0 0 6px rgba(129,157,18,.12);
}

.hero-mobile-presence{
  display:none;
}
@keyframes heroPresencePulse{
  0%{transform:scale(1); box-shadow:0 0 0 0 rgba(129,157,18,.30);}
  70%{transform:scale(1.06); box-shadow:0 0 0 9px rgba(129,157,18,0);}
  100%{transform:scale(1); box-shadow:0 0 0 0 rgba(129,157,18,0);}
}
@keyframes heroGlowFloat{
  0%{transform:translate3d(0,0,0) scale(1);}
  50%{transform:translate3d(0,-8px,0) scale(1.04);}
  100%{transform:translate3d(0,0,0) scale(1);}
}
@keyframes heroStackDrift{
  0%,100%{transform:translateX(0);}
  50%{transform:translateX(4px);}
}
@keyframes heroPresenceTicker{
  0%{transform:translate3d(0,0,0);}
  100%{transform:translate3d(calc(-50% - 6px),0,0);}
}
.hero-lawyer-showcase{
  position:relative;
  min-width:min(100%, 430px);
  max-width:430px;
  padding:18px;
  border-radius:30px;
  border:1px solid rgba(201,188,160,.76);
  background:
    radial-gradient(circle at top right, rgba(212,175,55,.12), transparent 26%),
    radial-gradient(circle at bottom left, rgba(129,157,18,.08), transparent 24%),
    linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(250,246,239,.98) 56%, rgba(245,239,228,.98) 100%);
  box-shadow:0 26px 60px rgba(31,38,48,.10), inset 0 1px 0 rgba(255,255,255,.82);
  overflow:hidden;
  isolation:isolate;
}
.hero-lawyer-showcase::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(135deg, rgba(255,255,255,.18), transparent 34%, rgba(212,175,55,.06) 100%);
  z-index:0;
}
.hero-lawyer-showcase__glow{
  position:absolute;
  border-radius:999px;
  filter:blur(10px);
  opacity:.72;
  pointer-events:none;
  z-index:0;
  animation:heroGlowFloat 8s ease-in-out infinite;
}
.hero-lawyer-showcase__glow--one{
  width:162px;
  height:162px;
  right:-44px;
  top:-58px;
  background:radial-gradient(circle, rgba(212,175,55,.18) 0%, rgba(212,175,55,0) 72%);
}
.hero-lawyer-showcase__glow--two{
  width:146px;
  height:146px;
  left:-48px;
  bottom:-64px;
  background:radial-gradient(circle, rgba(129,157,18,.12) 0%, rgba(129,157,18,0) 74%);
  animation-delay:-4s;
}
.hero-lawyer-showcase__head,
.hero-lawyer-showcase__stack,
.hero-lawyer-showcase__grid{
  position:relative;
  z-index:1;
}
.hero-lawyer-showcase__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:16px;
}
.hero-lawyer-showcase__badge,
.hero-lawyer-showcase__live{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:8px 13px;
  border-radius:999px;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.hero-lawyer-showcase__badge{
  color:#7a5b1c;
  background:linear-gradient(180deg, rgba(255,248,231,.92), rgba(246,232,193,.84));
  border:1px solid rgba(197,151,67,.20);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}
.hero-lawyer-showcase__live{
  gap:8px;
  color:#566619;
  background:linear-gradient(180deg, rgba(244,249,230,.9), rgba(228,239,194,.86));
  border:1px solid rgba(129,157,18,.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
}
.hero-lawyer-showcase__liveDot{
  width:8px;
  height:8px;
  border-radius:999px;
  background:#8cad12;
  box-shadow:0 0 0 5px rgba(129,157,18,.12);
  animation:heroPresencePulse 2.2s ease-out infinite;
}
.hero-lawyer-showcase__stack{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:16px;
  padding:10px 12px;
  border-radius:18px;
  background:rgba(255,255,255,.58);
  border:1px solid rgba(20,30,48,.05);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6);
  animation:heroStackDrift 7s ease-in-out infinite;
}
.hero-lawyer-showcase__stackAvatar{
  display:flex;
  flex:0 0 auto;
  margin-left:0;
}
.hero-lawyer-showcase__stackAvatar .avatar{
  width:48px;
  height:48px;
  border-radius:16px;
  border:2px solid rgba(255,255,255,.95);
  box-shadow:0 12px 22px rgba(31,38,48,.10);
}
.hero-lawyer-showcase__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:12px;
}
.hero-lawyer-card{
  position:relative;
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
  padding:13px 14px;
  border-radius:22px;
  border:1px solid rgba(31,38,48,.08);
  background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(248,244,238,.84));
  box-shadow:0 10px 24px rgba(31,38,48,.05), inset 0 1px 0 rgba(255,255,255,.85);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.hero-lawyer-card::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(135deg, rgba(255,255,255,.16), transparent 60%);
}
.hero-lawyer-card:hover{
  transform:translateY(-4px) scale(1.01);
  box-shadow:0 18px 34px rgba(31,38,48,.10);
  border-color:rgba(197,151,67,.24);
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(250,246,240,.94));
}
.hero-lawyer-card--featured{
  grid-column:1 / -1;
  padding:15px 16px;
  background:
    radial-gradient(circle at right top, rgba(212,175,55,.16), transparent 28%),
    linear-gradient(135deg, rgba(255,253,245,.98) 0%, rgba(247,241,228,.96) 100%);
  border-color:rgba(197,151,67,.22);
  box-shadow:0 16px 34px rgba(31,38,48,.08), inset 0 1px 0 rgba(255,255,255,.88);
}
.hero-lawyer-card--featured::after{
  content:"Perfil visible";
  position:absolute;
  top:12px;
  right:12px;
  padding:6px 9px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(130,157,18,.14), rgba(130,157,18,.08));
  color:#667615;
  border:1px solid rgba(129,157,18,.14);
  font-size:.63rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.hero-lawyer-card__avatarWrap{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.hero-lawyer-card__avatar{
  width:54px;
  height:54px;
  border-radius:18px;
  box-shadow:0 14px 24px rgba(31,38,48,.10);
}
.hero-lawyer-card--featured .hero-lawyer-card__avatar{
  border:2px solid rgba(255,255,255,.9);
}
.hero-lawyer-card__text{
  position:relative;
  z-index:1;
  min-width:0;
  display:grid;
  gap:3px;
}
.hero-lawyer-card__text strong,
.hero-lawyer-card__text small{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.hero-lawyer-card__text strong{
  color:#1c2430;
  font-size:.98rem;
  line-height:1.15;
}
.hero-lawyer-card__text small{
  color:#66707d;
  font-size:.79rem;
  font-weight:700;
}
.hero-lawyer-card--featured .hero-lawyer-card__text strong{
  color:#182234;
}
.hero-lawyer-card--featured .hero-lawyer-card__text small{
  color:#5f6a78;
}
.hero-clean__body{
  display:grid;
  grid-template-columns:minmax(0, 1.32fr) minmax(320px, .68fr);
  gap:26px;
  align-items:start;
}
.hero-clean__main{
  min-width:0;
}
.hero-clean__title{
  margin:0 0 12px;
  max-width: 14ch;
  font-size: clamp(2.9rem, 4.8vw, 4.45rem);
  line-height: .92;
  letter-spacing: -.05em;
  color: var(--text);
  text-wrap: pretty;
}
.hero-clean__titleLine{
  display:block;
}
.hero-clean__titleAccent{
  position:relative;
  display:inline-block;
  padding-right:.04em;
  color:#6e8810;
  background:linear-gradient(180deg, #a6c31f 0%, #819d12 58%, #60770c 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:0 10px 24px rgba(129,157,18,.14);
}
.hero-clean__titleAccent::after{
  content:"";
  position:absolute;
  left:.06em;
  right:.02em;
  bottom:.1em;
  height:.18em;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(157,191,25,.24), rgba(129,157,18,.10));
  z-index:-1;
  transform:skewX(-10deg);
}
.hero-clean__titleAccent--soft{
  background:linear-gradient(180deg, #90ae16 0%, #6f8a10 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}
.hero-clean__lead{
  margin:0 0 18px;
  max-width: 56ch;
  color: var(--muted);
  font-size: 1.04rem;
  line-height: 1.66;
}
.hero-clean__form{
  margin-top: 0;
}
.hero-clean__side{
  display:grid;
  gap:18px;
  align-content:start;
}
.hero-lawyer-showcase--side{
  min-width:0;
  max-width:none;
  width:100%;
}
.hero-clean__sideCard{
  padding:22px;
  border-radius:26px;
  background:
    radial-gradient(circle at top right, rgba(212,175,55,.18), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,243,235,.98));
  border:1px solid var(--line);
  box-shadow: var(--shadow-soft);
}
.hero-clean__sideEyebrow{
  display:inline-flex;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(28,95,168,.08);
  border:1px solid rgba(28,95,168,.12);
  color:#1c5fa8;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:12px;
}
.hero-clean__sideCard h3{
  margin:0 0 8px;
  font-size:1.7rem;
  line-height:1.02;
  letter-spacing:-.03em;
}
.hero-clean__sideCard p{
  margin:0 0 16px;
  color:var(--muted);
  line-height:1.6;
}
.hero-clean__metrics{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-bottom:16px;
}
.hero-clean__metric{
  padding:12px 14px;
  border-radius:20px;
  background:linear-gradient(180deg, rgba(255,255,255,.9), rgba(248,243,235,.82));
  border:1px solid rgba(20,30,48,.06);
  box-shadow:0 12px 24px rgba(31,38,48,.05);
}
.hero-clean__metric strong,
.hero-clean__metric span{
  display:block;
}
.hero-clean__metric strong{
  font-size:.95rem;
  line-height:1.2;
  color:#182336;
}
.hero-clean__metric span{
  margin-top:4px;
  color:#67707d;
  font-size:.82rem;
}
.hero-clean__cta{
  display:inline-flex;
  width:100%;
  min-height:56px;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 18px;
  border-radius:18px;
  text-decoration:none;
  background:linear-gradient(90deg, #b9852f 0%, #d4af37 52%, #ead18a 100%);
  color:#1a1a1a;
  font-weight:900;
  box-shadow:0 18px 34px rgba(185,133,47,.24);
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.hero-clean__cta:hover{
  transform:translateY(-1px);
  box-shadow:0 22px 38px rgba(185,133,47,.28);
  filter:saturate(1.03);
}
.hero-clean__banners{
  gap:14px;
}
.hero-clean .ask-pro__top{
  align-items:flex-start;
}
.hero-clean .ask-pro__badges{
  justify-content:flex-end;
}
@media (max-width: 1180px){
  .hero-clean__lawyers{
    width:100%;
    justify-content:flex-start;
  }
  .hero-lawyer-showcase{
    min-width:0;
    max-width:none;
    width:100%;
  }
  .hero-clean__body{
    grid-template-columns:minmax(0, 1.2fr) minmax(300px, .8fr);
    gap:22px;
  }
  .hero-clean__title{
    max-width: 13ch;
    font-size: clamp(2.35rem, 4.6vw, 3.5rem);
    line-height:.93;
  }
}
@media (max-width: 760px){
  .hero-clean{
    padding:16px;
  }
  .hero-clean__lawyers--mobile{
    display:none !important;
  }
  .hero-mobile-presence{
    display:block;
    margin:0 0 16px;
  }
  .hero-mobile-presence__viewport{
    position:relative;
    overflow-x:auto;
    overflow-y:hidden;
    margin:0 -1px;
    padding:2px 1px 0;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-x;
    cursor:grab;
    scroll-behavior:auto;
    -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
    mask-image:linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
  }
  .hero-mobile-presence__viewport::-webkit-scrollbar{
    display:none;
  }
  .hero-mobile-presence__viewport.is-dragging{
    cursor:grabbing;
  }
  .hero-mobile-presence__viewport::before,
  .hero-mobile-presence__viewport::after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    width:28px;
    z-index:2;
    pointer-events:none;
  }
  .hero-mobile-presence__viewport::before{
    left:0;
    background:linear-gradient(90deg, rgba(246,241,232,.96) 0%, rgba(246,241,232,0) 100%);
  }
  .hero-mobile-presence__viewport::after{
    right:0;
    background:linear-gradient(270deg, rgba(246,241,232,.96) 0%, rgba(246,241,232,0) 100%);
  }
  .hero-mobile-presence__track{
    display:flex;
    align-items:stretch;
    gap:10px;
    width:max-content;
    padding:2px 1px 0;
    will-change:scroll-position;
    user-select:none;
  }
  .hero-mobile-presence__track.is-paused{
    opacity:1;
  }
  .hero-mobile-presence__item{
    flex:0 0 auto;
    min-width:148px;
    display:flex;
    align-items:center;
    gap:10px;
    padding:7px 12px;
    border-radius:18px;
    background:linear-gradient(180deg, rgba(255,255,255,.97), rgba(247,242,233,.93));
    border:1px solid rgba(31,38,48,.06);
    box-shadow:0 8px 18px rgba(31,38,48,.07);
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  }
  .hero-mobile-presence__item:active{
    transform:scale(.985);
  }
  .hero-mobile-presence__avatarWrap{
    position:relative;
    flex:0 0 auto;
    display:flex;
  }
  .hero-mobile-presence__avatar{
    width:44px;
    height:44px;
    border-radius:14px;
    box-shadow:0 8px 16px rgba(31,38,48,.09);
  }
  .hero-mobile-presence__pulse{
    position:absolute;
    right:-1px;
    bottom:-1px;
    width:10px;
    height:10px;
    border-radius:999px;
    background:#8cad12;
    border:2px solid #fff;
    animation:heroPresencePulse 2.2s ease-out infinite;
  }
  .hero-mobile-presence__meta{
    min-width:0;
    display:grid;
    align-content:center;
    gap:0;
    padding-top:0;
  }
  .hero-mobile-presence__meta strong,
  .hero-mobile-presence__meta small{
    display:block;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .hero-mobile-presence__meta strong{
    font-size:.9rem;
    line-height:1;
    color:#1c2430;
    margin:0;
  }
  .hero-mobile-presence__meta small{
    font-size:.74rem;
    line-height:1;
    color:#66707d;
    font-weight:700;
    margin:0;
  }
  .hero-clean__top{
    gap:12px;
    margin-bottom:12px;
  }
  .hero-clean__body{
    grid-template-columns:1fr;
  }
  .hero-clean__kickerText{
    font-size:.85rem;
    line-height:1.45;
  }
  .hero-clean__lawyers{
    width:100%;
    justify-content:flex-start;
  }
  .hero-clean__lawyers--mobile{
    display:flex;
  }
  .hero-clean__side .hero-lawyer-showcase{
    display:none;
  }
  .hero-clean__side{
    gap:0;
  }
  .hero-lawyer-showcase{
    min-width:0;
    max-width:none;
    width:100%;
    padding:14px;
    border-radius:22px;
  }
  .hero-lawyer-showcase__head{
    flex-wrap:wrap;
    margin-bottom:12px;
  }
  .hero-lawyer-showcase__stack{
    gap:8px;
    margin-bottom:12px;
  }
  .hero-lawyer-showcase__grid{
    grid-template-columns:1fr;
  }
  .hero-lawyer-card,
  .hero-lawyer-card--featured{
    grid-column:auto;
  }
  .hero-lawyer-card--featured::after{
    position:static;
    margin-left:auto;
  }
  .hero-clean__title{
    max-width:none;
    font-size:clamp(2.05rem, 8.7vw, 2.9rem);
    line-height:.94;
    letter-spacing:-.045em;
    text-wrap:balance;
  }
  .hero-clean__titleLine:first-child{
    white-space:nowrap;
  }
  .hero-clean__titleAccent::after{
    bottom:.08em;
    height:.16em;
  }
  .hero-clean__lead{
    font-size:.98rem;
    line-height:1.58;
    margin-bottom:14px;
  }
  .hero-clean__metrics{
    grid-template-columns:1fr;
    gap:9px;
  }
  .hero-clean .ask-pro__top{
    flex-direction:column;
  }
  .hero-clean .ask-pro__badges{
    justify-content:flex-start;
  }
}

/* ===== LOGO HEADER DEFINITIVO ===== */
.brand--logo{
  display:flex;
  align-items:center;
  min-width:0;
  max-width:none;
  padding:0;
  flex-shrink:0;
}

.brand--logo img{
  display:block;
  width:auto;
  height:76px; /* PC más elegante */
  max-width:100%;
  object-fit:contain;
}

/* Tablet */
@media (max-width: 980px){
  .brand--logo img{
    height:66px;
  }
}

/* Móvil */
@media (max-width: 760px){
  .brand--logo{
    flex:1 1 auto;
    min-width:0;
  }

  .brand--logo img{
    width:100%;
    max-width:300px;
    height:auto;
  }
}

/* Móvil pequeño */
@media (max-width: 420px){
  .brand--logo img{
    max-width:280px;
    width:100%;
    height:auto;
  }
}

/* ===== EDITOR RESPUESTA ABOGADO ===== */
.lr-editor-wrap{
  border:1px solid var(--line);
  border-radius:22px;
  overflow:hidden;
  background:linear-gradient(180deg,#fff,#faf7f1);
  box-shadow:0 12px 28px rgba(31,38,48,.08);
}
.lr-editor-toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:12px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,#f7f1e6,#efe6d7);
}
.lr-editor-btn{
  appearance:none;
  border:1px solid rgba(31,38,48,.10);
  background:#fff;
  color:var(--text);
  border-radius:12px;
  padding:10px 12px;
  font:inherit;
  font-weight:800;
  cursor:pointer;
  min-height:42px;
  box-shadow:0 6px 16px rgba(31,38,48,.06);
}
.lr-editor-btn:hover{transform:translateY(-1px)}
.lr-editor-surface{
  min-height:240px;
  padding:18px;
  outline:none;
  color:var(--text);
  font:inherit;
  line-height:1.8;
}
.lr-editor-surface:empty:before{
  content:attr(data-placeholder);
  color:#7b8490;
}
.lr-editor-surface p,
.lr-editor-surface ul,
.lr-editor-surface ol,
.lr-editor-surface blockquote,
.lr-editor-surface h2,
.lr-editor-surface h3{margin:0 0 12px}
.lr-editor-surface blockquote{
  border-left:4px solid var(--gold);
  margin-left:0;
  padding:10px 14px;
  background:rgba(197,151,67,.08);
  border-radius:0 14px 14px 0;
}
.lr-editor-surface a{
  color:#446cbb;
  text-decoration:underline;
}
.lr-editor-hidden{
  display:none !important;
}
.lr-editor-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:12px;
  flex-wrap:wrap;
}
.lr-editor-tip{
  color:var(--muted);
  font-size:.92rem;
  font-weight:700;
}
.lr-editor-counter{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--line);
  font-size:.85rem;
  font-weight:800;
}
@media (max-width:760px){
  .lr-editor-toolbar{gap:6px;padding:10px}
  .lr-editor-btn{padding:9px 10px;min-height:38px;font-size:.92rem}
  .lr-editor-surface{min-height:220px;padding:14px}
}
.section-head--flex{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}

.section-head-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(20,30,48,.08);
  color:#1c5fa8;
  font-size:.92rem;
  font-weight:800;
  text-decoration:none;
  box-shadow:0 10px 18px rgba(20,30,48,.05);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, color .18s ease;
}

.section-head-link:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 24px rgba(20,30,48,.08);
  border-color:rgba(197,151,67,.28);
  color:#173d69;
}

@media (max-width: 640px){
  .section-head-link{
    width:100%;
    justify-content:center;
  }
}

/* ===== SWITCH RECIENTES / ANTIGUAS ===== */
.questions-switch,
.questions-switch--premium{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,255,255,.88), rgba(244,238,226,.96));
  border:1px solid rgba(198,185,159,.55);
  box-shadow:0 14px 28px rgba(31,38,48,.08), inset 0 1px 0 rgba(255,255,255,.9);
}
.questions-tab{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 18px;
  border-radius:999px;
  color:#2b3440;
  font-weight:900;
  font-size:.96rem;
  letter-spacing:-.01em;
  transition:all .18s ease;
}
.questions-tab:hover{
  transform:translateY(-1px);
  color:#1b2430;
}
.questions-tab.is-active{
  background:linear-gradient(135deg, var(--gold), #efd798);
  color:#231c13;
  box-shadow:0 10px 20px rgba(197,151,67,.26);
}
.questions-tab:not(.is-active){
  color:#3d4856;
  opacity:.92;
}
@media (max-width: 760px){
  .questions-switch,
  .questions-switch--premium{
    width:100%;
    justify-content:center;
  }
  .questions-tab{
    flex:1 1 0;
    min-width:0;
    padding:0 14px;
    font-size:.92rem;
  }
}

/* ===== SWITCH REAL HOME: question-switch ===== */
.question-switch{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,255,255,.88), rgba(244,238,226,.96));
  border:1px solid rgba(198,185,159,.55);
  box-shadow:0 14px 28px rgba(31,38,48,.08), inset 0 1px 0 rgba(255,255,255,.92);
}

.question-switch__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 18px;
  border-radius:999px;
  color:#2b3440;
  font-weight:900;
  font-size:.96rem;
  letter-spacing:-.01em;
  text-decoration:none;
  transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease, color .18s ease, opacity .18s ease;
}

.question-switch__btn:hover{
  transform:translateY(-1px);
  color:#1b2430;
}

.question-switch__btn.is-active{
  background:linear-gradient(135deg, var(--gold), #efd798);
  color:#231c13;
  box-shadow:0 10px 20px rgba(197,151,67,.26);
}

.question-switch__btn:not(.is-active){
  color:#3d4856;
  opacity:.92;
}

@media (max-width: 760px){
  .question-switch{
    width:100%;
    justify-content:center;
  }

  .question-switch__btn{
    flex:1 1 0;
    min-width:0;
    padding:0 14px;
    font-size:.92rem;
  }
}

/* ===== SWITCH PREGUNTAS RECIENTES / ANTIGUAS ===== */
.question-switch{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,255,255,.88), rgba(244,238,226,.96));
  border:1px solid rgba(198,185,159,.55);
  box-shadow:0 14px 28px rgba(31,38,48,.08), inset 0 1px 0 rgba(255,255,255,.92);
}

.question-switch__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 16px;
  border-radius:999px;
  font-weight:800;
  font-size:.92rem;
  color:#425267;
  text-decoration:none;
  transition:all .18s ease;
}

.question-switch__btn:hover{
  color:#173d69;
  background:rgba(28,95,168,.06);
}

.question-switch__btn.is-active{
  background:linear-gradient(135deg,#c59743,#edd7a3);
  color:#241d13;
  box-shadow:0 8px 18px rgba(197,151,67,.20);
}

@media (max-width: 760px){
  .question-switch{
    width:100%;
    justify-content:center;
  }

  .question-switch__btn{
    flex:1;
  }
}

/* ===== HOME QUESTIONS SWITCH + AJAX + LOAD MORE ===== */
.questions-head-copy{
  min-width:0;
}

.questions-head-copy__sub{
  margin:6px 0 0;
  color:var(--muted);
  font-size:.95rem;
  line-height:1.55;
}

.questions-list{
  display:grid;
  gap:16px;
  transition:opacity .22s ease, transform .22s ease;
}

.questions-list.is-loading{
  opacity:.55;
  transform:translateY(6px);
  pointer-events:none;
}

.questions-list.is-appending{
  opacity:.92;
}

.questions-list.is-visible .question-card{
  animation:questionsFadeIn .28s ease both;
}

.question-card--append{
  animation:questionsAppendIn .3s ease both;
}

@keyframes questionsFadeIn{
  from{opacity:0; transform:translateY(10px);}
  to{opacity:1; transform:translateY(0);}
}

@keyframes questionsAppendIn{
  from{opacity:0; transform:translateY(12px);}
  to{opacity:1; transform:translateY(0);}
}

.question-switch--ios{
  position:relative;
  gap:0;
  padding:5px;
  overflow:hidden;
  min-width:min(100%, 360px);
}

.question-switch--ios .question-switch__slider{
  position:absolute;
  top:5px;
  bottom:5px;
  left:5px;
  width:calc(50% - 5px);
  border-radius:999px;
  background:linear-gradient(135deg,#c59743,#edd7a3);
  box-shadow:0 10px 20px rgba(197,151,67,.24);
  transition:transform .26s ease;
  pointer-events:none;
}

.question-switch--ios[data-active-order="antiguas"] .question-switch__slider{
  transform:translateX(100%);
}

.question-switch--ios .question-switch__btn{
  position:relative;
  z-index:1;
  flex:1 1 0;
  min-width:0;
  gap:8px;
  padding:10px 16px;
  background:transparent !important;
  box-shadow:none !important;
}

.question-switch--ios .question-switch__btn.is-active{
  color:#241d13;
}

.question-switch__label{
  display:inline-flex;
  align-items:center;
}

.question-switch__count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:26px;
  height:26px;
  padding:0 8px;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  color:#334153;
  font-size:.78rem;
  font-weight:900;
}

.question-switch--ios .question-switch__btn.is-active .question-switch__count{
  background:rgba(255,255,255,.82);
  color:#241d13;
}

.question-load-more-wrap{
  display:flex;
  justify-content:center;
  margin-top:2px;
}

.question-load-more{
  min-width:280px;
}

.question-load-more.is-loading,
.question-load-more:disabled{
  opacity:.72;
  cursor:wait;
}

@media (max-width: 760px){
  .question-switch--ios{
    width:100%;
  }

  .question-switch--ios .question-switch__btn{
    padding:10px 12px;
    font-size:.9rem;
  }

  .question-switch__count{
    min-width:24px;
    height:24px;
    padding:0 7px;
  }

  .question-load-more{
    width:100%;
    min-width:0;
  }
}

.search-highlight{
  background: linear-gradient(180deg, #fff3c4 0%, #ffe08a 100%);
  color:#5a4b00;
  padding:2px 4px;
  border-radius:4px;
  font-weight:700;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

/* ===== FIX FINAL BOTON ABOGADOS DESTACADOS ===== */
@media (max-width: 760px){
  .lawyer-card__bottom--v4{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
    align-items:start;
  }

  .lawyer-card__trust--v4{
    order:1;
  }

  .lawyer-card__cta--v4{
    order:2;
    width:100%;
    min-height:50px;
    justify-content:center;
    border-radius:18px;
  }
}

/* ===== ABOGADOS DESTACADOS · COMPACTOS COMO CATEGORÍAS ===== */
.lawyers-grid--topic-style{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.lawyer-card--topic-style{
  position:relative;
  min-height:0;
  padding:0;
  overflow:hidden;
  isolation:isolate;
  border:1px solid var(--line);
  border-radius:28px;
  background:transparent;
  box-shadow:var(--shadow-soft);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.lawyer-card--topic-style::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--topic-glow, #cfdf90) 42%, transparent), transparent 52%),
    linear-gradient(180deg, rgba(255,255,255,.98), color-mix(in srgb, var(--topic-soft, #f3ede3) 74%, #ffffff 26%));
  z-index:-2;
}
.lawyer-card--topic-style::after{
  content:"";
  position:absolute;
  left:0;
  top:16px;
  bottom:16px;
  width:4px;
  border-radius:999px;
  background:linear-gradient(180deg, var(--topic-accent, #819d12), var(--topic-glow, #cfdf90));
  box-shadow:0 0 18px color-mix(in srgb, var(--topic-glow, #cfdf90) 50%, transparent);
  z-index:-1;
}
.lawyer-card--topic-style:hover{
  transform:translateY(-3px);
  border-color:color-mix(in srgb, var(--topic-accent, #819d12) 38%, var(--line));
  box-shadow:0 20px 40px rgba(31,38,48,.12);
}
.lawyer-card__compactLink{
  display:flex;
  align-items:flex-start;
  gap:14px;
  min-height:118px;
  padding:18px 18px 16px;
}
.lawyer-card__media--topic-style{
  width:58px;
  flex:0 0 58px;
  display:grid;
  align-self:center;
}
.lawyer-card__avatarShell{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.92), color-mix(in srgb, var(--topic-soft, #f3ede3) 88%, #ffffff 12%));
  border:1px solid color-mix(in srgb, var(--topic-accent, #819d12) 22%, #d8cebc);
  box-shadow:0 10px 22px rgba(31,38,48,.08);
  overflow:hidden;
}
.lawyer-card__avatarShell .lawyer-card__avatarImg,
.lawyer-card__avatarShell .avatar,
.lawyer-card__avatarShell .avatar-img{
  width:100%;
  height:100%;
  border-radius:18px;
  object-fit:cover;
  border:2px solid rgba(255,255,255,.6);
}
.lawyer-card__content--topic-style{
  min-width:0;
  flex:1;
  display:grid;
  gap:8px;
}
.lawyer-card__topline--topic-style{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.lawyer-card__eyebrow--topic-style{
  display:inline-flex;
  align-items:center;
  width:fit-content;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.65);
  border:1px solid color-mix(in srgb, var(--topic-accent, #819d12) 18%, var(--line));
  color:#607080;
  font-size:.72rem;
  font-weight:900;
  line-height:1;
}
.lawyer-card__rating--topic-style{
  flex:0 0 auto;
  display:grid;
  gap:1px;
  justify-items:end;
  text-align:right;
  line-height:1;
}
.lawyer-card__ratingStars{
  color:#c59743;
  letter-spacing:1px;
  font-size:.7rem;
}
.lawyer-card__rating--topic-style strong{
  font-size:1rem;
  line-height:1;
  color:#24303c;
}
.lawyer-card__nameblock--topic-style{
  min-width:0;
  display:grid;
  gap:2px;
}
.lawyer-card__nameblock--topic-style h3{
  margin:0;
  font-size:1rem;
  line-height:1.06;
  letter-spacing:-.02em;
}
.lawyer-card__brand--topic-style{
  margin:0;
  color:var(--muted);
  font-weight:700;
  font-size:.9rem;
}
.lawyer-card__meta--topic-style{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.lawyer-card__status--topic-style,
.lawyer-meta-chip{
  display:inline-flex;
  align-items:center;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(198,185,159,.8);
  background:rgba(255,255,255,.82);
  color:#4c5868;
  font-size:.78rem;
  font-weight:800;
  line-height:1;
}
.lawyer-card__status--topic-style{
  background:linear-gradient(135deg,#dff5c7,#c8ec9e);
  border-color:rgba(129,157,18,.24);
  color:#4f6a0f;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.lawyer-meta-chip--city{
  background:linear-gradient(180deg, #313b46, #212a34);
  border-color:rgba(31,38,48,.25);
  color:#fff;
}
.lawyer-meta-chip--specialty{
  background:linear-gradient(180deg, rgba(197,151,67,.18), rgba(237,215,163,.28));
  border-color:rgba(197,151,67,.32);
  color:#745015;
}
@media (max-width: 1100px){
  .lawyers-grid--topic-style{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 760px){
  .lawyers-grid--topic-style{
    grid-template-columns:1fr;
  }
  .lawyer-card--topic-style{
    border-radius:22px;
  }
  .lawyer-card__compactLink{
    min-height:104px;
    padding:14px 16px;
    gap:12px;
  }
  .lawyer-card__media--topic-style{
    width:52px;
    flex-basis:52px;
  }
  .lawyer-card__avatarShell{
    width:52px;
    height:52px;
    border-radius:16px;
  }
  .lawyer-card__avatarShell .lawyer-card__avatarImg,
  .lawyer-card__avatarShell .avatar,
  .lawyer-card__avatarShell .avatar-img{
    border-radius:16px;
  }
  .lawyer-card__topline--topic-style{
    gap:8px;
  }
  .lawyer-card__eyebrow--topic-style{
    font-size:.68rem;
    padding:6px 9px;
  }
  .lawyer-card__nameblock--topic-style h3{
    font-size:.98rem;
  }
  .lawyer-card__brand--topic-style{
    font-size:.87rem;
  }
  .lawyer-card__status--topic-style,
  .lawyer-meta-chip{
    font-size:.75rem;
    padding:7px 9px;
  }
}

/* ===== FIX BOTONES ABOGADOS DESTACADOS MOBILE ===== */

.lawyer-card__bottom--v2{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  flex-wrap:nowrap;
}

.lawyer-card__trust--v2,
.lawyer-card__cta--v2{
  min-width:0;
}

.lawyer-card__trust--v2{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  padding:10px 14px;
  min-height:42px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(198,185,159,.72);
  backdrop-filter:blur(4px);
  font-size:.9rem;
  font-weight:800;
  line-height:1;
  flex:0 1 auto;
}

.lawyer-card__cta--v2{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  white-space:nowrap;
  flex-wrap:nowrap;
  text-align:center;
  background:linear-gradient(135deg, #8aa814, #a6c51e);
  color:#18200c;
  border:none;
  border-radius:999px;
  min-height:42px;
  padding:10px 16px;
  font-weight:900;
  font-size:.9rem;
  line-height:1;
  box-shadow:0 10px 22px rgba(129,157,18,.18);
  flex:1 1 auto;
  max-width:100%;
  overflow:hidden;
}

.lawyer-card__cta--v2 span{
  display:inline-block;
  font-size:1rem;
  line-height:1;
  flex:0 0 auto;
}

@media (max-width: 760px){
  .lawyer-card__bottom--v2{
    flex-direction:row;
    align-items:center;
    gap:10px;
  }

  .lawyer-card__trust--v2{
    flex:0 0 auto;
    max-width:48%;
    font-size:.88rem;
    padding:10px 12px;
  }

  .lawyer-card__cta--v2{
    flex:1 1 auto;
    max-width:52%;
    font-size:.88rem;
    padding:10px 14px;
  }
}

/* ===== CIUDAD EN TARJETA ABOGADO - MÁS PREMIUM ===== */
.visible-lawyer__meta,
.lawyer-card__meta,
.featured-lawyer__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.visible-lawyer__city,
.lawyer-card__city,
.featured-lawyer__city,
.city-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 12px;
  border-radius: 999px;
  background: linear-gradient(180deg, #2f3945 0%, #1f2730 100%);
  color: #ffffff;
  font-size: .92rem;
  font-weight: 800;
  line-height: 1;
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 8px 18px rgba(31,38,48,.14);
  letter-spacing: -.01em;
}

.visible-lawyer__city::before,
.lawyer-card__city::before,
.featured-lawyer__city::before,
.city-badge::before {
  content: "📍";
  font-size: .88rem;
  line-height: 1;
  transform: translateY(-1px);
}

/* ===== AJUSTE REAL CHIP CIUDAD ABOGADOS DESTACADOS ===== */
.lawyer-card__meta--v2 .lawyer-meta-chip--dark{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 12px;
  border-radius:999px;
  background:linear-gradient(180deg,#2f3f56 0%, #3e5878 100%);
  color:#ffffff;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 10px 20px rgba(31,38,48,.14);
  font-weight:800;
  font-size:.94rem;
  letter-spacing:-.01em;
}

.lawyer-card__meta--v2 .lawyer-meta-chip--dark::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:#ff5a6b;
  box-shadow:0 0 0 3px rgba(255,90,107,.16);
  flex:0 0 auto;
}

/* ===== HOME BANNERS ADMIN UX PRO ===== */
.banner-admin-grid--enhanced{
  grid-template-columns:minmax(0, 1.1fr) minmax(0, .9fr);
}
.banner-admin-form--enhanced,
.banner-admin-list--enhanced{
  overflow:visible;
}
.banner-admin-heading{
  display:grid;
  gap:8px;
}
.banner-admin-heading__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(129,157,18,.1);
  border:1px solid rgba(129,157,18,.18);
  color:#5f7410;
  font-weight:900;
  font-size:.77rem;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.banner-admin-form-grid{
  grid-template-columns:minmax(0, 1fr) minmax(0, 1.05fr) !important;
  gap:20px;
  align-items:start;
}
.banner-admin-main-fields,
.banner-admin-side-fields{
  display:grid;
  gap:16px;
}
.banner-admin-split{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.banner-label{
  display:block;
  font-weight:800;
  margin-bottom:8px;
}
.banner-type-switch{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.banner-type-card{
  position:relative;
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:16px;
  border-radius:20px;
  border:1px solid #ddd0af;
  background:linear-gradient(180deg,#fff,#faf6ee);
  box-shadow:0 10px 24px rgba(37,43,56,.05);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.banner-type-card:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(37,43,56,.08);
}
.banner-type-card input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.banner-type-card.is-selected{
  border-color:rgba(129,157,18,.42);
  box-shadow:0 18px 34px rgba(129,157,18,.12);
  background:linear-gradient(180deg,#fff,#f5faeb);
}
.banner-type-card__icon{
  flex:0 0 44px;
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:linear-gradient(135deg,#2f3945,#1f2730);
  color:#fff;
  font-weight:900;
}
.banner-type-card__copy{
  display:grid;
  gap:5px;
}
.banner-type-card__copy strong{
  display:block;
}
.banner-type-card__copy small{
  color:#66758a;
  line-height:1.45;
}
.banner-flags-grid{
  display:grid;
  gap:10px;
}
.banner-flag-card{
  padding:14px 16px 14px 14px;
  border:1px solid #e6dcc3;
  border-radius:18px;
  background:#fff;
}
.banner-flag-card input{
  margin-top:2px;
}
.banner-panel.is-hidden,
.banner-open-new-tab-row.is-hidden,
label.is-hidden[data-banner-image-only]{
  display:none !important;
}
.banner-upload-card{
  display:grid;
  gap:14px;
  padding:18px;
  border-radius:24px;
  border:1px solid #e1d6bc;
  background:linear-gradient(180deg,#fff,#fbf7ef);
  box-shadow:0 18px 36px rgba(37,43,56,.05);
}
.banner-upload-card__top{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.banner-upload-card__top p{
  margin:6px 0 0;
  color:#66758a;
}
.banner-upload-card__badge{
  display:inline-flex;
  align-items:center;
  padding:8px 11px;
  border-radius:999px;
  background:#fff7df;
  color:#8a6500;
  border:1px solid #e8d08c;
  font-size:.78rem;
  font-weight:800;
  white-space:nowrap;
}
.banner-dropzone{
  position:relative;
  display:grid;
  place-items:center;
  gap:6px;
  min-height:170px;
  padding:20px;
  text-align:center;
  border:2px dashed rgba(129,157,18,.28);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(129,157,18,.05),rgba(129,157,18,.02));
  cursor:pointer;
  transition:border-color .18s ease, background .18s ease, transform .18s ease;
}
.banner-dropzone:hover,
.banner-dropzone.is-dragover{
  border-color:rgba(129,157,18,.52);
  background:linear-gradient(180deg,rgba(129,157,18,.10),rgba(129,157,18,.05));
  transform:translateY(-1px);
}
.banner-dropzone input{
  position:absolute;
  inset:0;
  opacity:0;
  cursor:pointer;
}
.banner-dropzone__icon{
  display:grid;
  place-items:center;
  width:52px;
  height:52px;
  border-radius:16px;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  box-shadow:0 12px 24px rgba(197,151,67,.2);
}
.banner-dropzone strong{
  font-size:1rem;
}
.banner-dropzone small{
  color:#66758a;
}
.banner-upload-meta{
  display:flex;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  font-size:.85rem;
  color:#66758a;
  font-weight:700;
}
.banner-preview-shell{
  position:relative;
  overflow:hidden;
  min-height:220px;
  display:grid;
  place-items:center;
  padding:18px;
  border-radius:22px;
  border:1px solid #eadfc8;
  background:linear-gradient(180deg,#ffffff,#f5f0e7);
}
.banner-preview-shell.has-image{
  background:
    linear-gradient(135deg, rgba(129,157,18,.06), transparent 55%),
    linear-gradient(180deg,#ffffff,#f5f0e7);
}
.banner-preview-shell__empty{
  display:grid;
  gap:8px;
  text-align:center;
  color:#66758a;
}
.banner-preview-shell__empty span{
  font-weight:900;
  color:#1f2937;
}
.banner-thumb-preview--large{
  width:100%;
  max-width:none;
  max-height:260px;
  object-fit:contain;
  border-radius:18px;
  background:#fff;
}
.field-help{
  display:block;
  margin-top:8px;
  color:#66758a;
  font-size:.84rem;
  line-height:1.5;
}
.banner-admin-actions{
  margin-top:4px;
}
.banner-settings-inline{
  align-items:flex-end;
}
.banner-settings-inline label{
  min-width:140px;
}
@media (max-width: 1200px){
  .banner-admin-grid--enhanced,
  .banner-admin-form-grid{
    grid-template-columns:1fr !important;
  }
}
@media (max-width: 760px){
  .banner-type-switch,
  .banner-admin-split{
    grid-template-columns:1fr;
  }
  .banner-upload-card__top,
  .banner-upload-meta{
    flex-direction:column;
  }
  .banner-preview-shell{
    min-height:180px;
  }
}

/* ===== CONSULTA COMPLETA PREMIUM ===== */
.question-box-premium{
  position:relative;
  padding:26px 28px;
  border-radius:28px;
  background:
    radial-gradient(circle at top right, rgba(197,151,67,.08), transparent 25%),
    linear-gradient(180deg, #ffffff, #f6f0e5);
  border:1px solid rgba(198,185,159,.9);
  box-shadow:0 24px 60px rgba(31,38,48,.08);
  overflow:hidden;
}

.question-box-premium::before{
  content:"";
  position:absolute;
  inset:18px auto 18px 0;
  width:5px;
  border-radius:999px;
  background:linear-gradient(180deg, var(--gold), var(--olive));
}

.question-box-premium__header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  margin-bottom:18px;
  padding-bottom:14px;
  border-bottom:1px solid rgba(198,185,159,.45);
  flex-wrap:wrap;
}

.question-box-premium__badge{
  display:inline-flex;
  align-items:center;
  padding:9px 14px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(197,151,67,.14), rgba(197,151,67,.08));
  border:1px solid rgba(197,151,67,.28);
  color:#7d5a16;
  font-weight:900;
  font-size:.82rem;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.question-box-premium__meta{
  color:#7b8490;
  font-weight:800;
  font-size:.88rem;
}

.question-box-premium__content{
  color:#445366;
  font-size:1.12rem;
  line-height:2;
  letter-spacing:.01em;
}

.question-box-premium__content br{
  content:"";
  display:block;
  margin-bottom:14px;
}

.question-box-premium__content strong{
  color:#1f2630;
}

@media (max-width: 760px){
  .question-box-premium{
    padding:20px 18px;
    border-radius:22px;
  }

  .question-box-premium__header{
    margin-bottom:14px;
    padding-bottom:12px;
  }

  .question-box-premium__content{
    font-size:1rem;
    line-height:1.9;
  }
}

.question-hero__divider{
  margin:22px 0 20px;
  height:1px;
  background:linear-gradient(90deg, rgba(196,161,91,.22), rgba(196,161,91,.08), transparent);
}
.question-hero__full{display:grid;gap:14px;}
.question-hero__full-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
.question-hero__full-copy h2{margin:0;font-size:1.15rem;color:#1f2d40;line-height:1.15;}
.question-hero__full-copy p{margin:8px 0 0;color:#6b7787;font-size:.97rem;line-height:1.6;}
.question-hero__body{font-size:1.14rem;line-height:1.95;color:#526377;}
.question-hero__body p{margin:0;}
@media (max-width: 760px){
  .question-hero__full-head{flex-direction:column;align-items:flex-start;}
  .question-hero__body{font-size:1.02rem;line-height:1.78;}
}

/* ===== AVISO IA / LEGAL V3 ===== */
.answer-ai-note{
  display:flex;
  align-items:flex-start;
  gap:12px;
  width:100%;
  margin-top:16px;
  padding:16px 18px;
  border-radius:20px;
  background:linear-gradient(180deg,#fff1ef 0%, #f7d8d2 100%);
  border:1px solid rgba(176,72,56,.34);
  color:#8f2f22;
  font-size:.95rem;
  font-weight:800;
  line-height:1.7;
  box-shadow:0 14px 28px rgba(143,47,34,.10);
}

.answer-ai-note::before{
  content:"⚠";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  flex:0 0 30px;
  border-radius:999px;
  background:rgba(143,47,34,.12);
  border:1px solid rgba(143,47,34,.18);
  color:#8f2f22;
  font-size:1rem;
  font-weight:900;
  line-height:1;
  margin-top:1px;
}

@media (max-width:760px){
  .answer-ai-note{
    padding:14px 15px;
    border-radius:18px;
    font-size:.9rem;
    line-height:1.65;
  }
}

/* ===== LIMPIEZA BLOQUE CONSULTA ===== */
.question-hero__full-head--clean{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  min-height:0;
  margin-bottom:0;
}

.question-box-premium__header--simple{
  justify-content:flex-start;
  border-bottom:1px solid rgba(198,185,159,.45);
  padding-bottom:14px;
  margin-bottom:18px;
}

@media (max-width: 760px){
  .question-hero__full-head--clean{
    justify-content:flex-start;
  }

  .question-box-premium__header--simple{
    padding-bottom:12px;
    margin-bottom:14px;
  }
}
\n\n/* ===== LOADING CTA PREGUNTA ===== */\n.ask-pro__actions--single{\n  display:grid;\n  gap:12px;\n}\n\n.ask-pro__cta{\n  position:relative;\n  overflow:hidden;\n}\n\n.ask-pro__ctaLabel{\n  display:inline-flex;\n  align-items:center;\n  justify-content:center;\n  gap:10px;\n}\n\n.ask-pro__ctaLabel--loading{\n  gap:12px;\n}\n\n.ask-pro__ctaDot{\n  width:10px;\n  height:10px;\n  border-radius:999px;\n  background:currentColor;\n  box-shadow:0 0 0 7px rgba(255,255,255,.18);\n}\n\n.ask-pro__ctaSpinner{\n  width:18px;\n  height:18px;\n  border-radius:50%;\n  border:2px solid rgba(26,26,26,.24);\n  border-top-color:#1a1a1a;\n  animation:askSpin .72s linear infinite;\n}\n\n.ask-pro__cta.is-loading{\n  cursor:wait;\n  opacity:.96;\n  transform:none;\n  box-shadow:0 18px 34px rgba(129,157,18,.24);\n}\n\n.ask-pro__cta.is-loading::after{\n  content:"";\n  position:absolute;\n  inset:0;\n  background:linear-gradient(110deg, transparent 0%, rgba(255,255,255,.22) 45%, transparent 100%);\n  animation:askSweep 1.35s ease-in-out infinite;\n}\n\n.ask-pro__loadingNote{\n  display:flex;\n  align-items:center;\n  justify-content:center;\n  gap:12px;\n  padding:12px 16px;\n  border-radius:18px;\n  border:1px solid rgba(129,157,18,.24);\n  background:linear-gradient(180deg, rgba(129,157,18,.10), rgba(129,157,18,.05));\n  color:#5c7111;\n  font-weight:900;\n  font-size:.95rem;\n  letter-spacing:-.01em;\n  box-shadow:0 10px 24px rgba(129,157,18,.08);\n}\n\n.ask-pro__loadingNote.is-visible{\n  animation:askLoadingFade .28s ease;\n}\n\n.ask-pro__loadingPulse{\n  position:relative;\n  width:12px;\n  height:12px;\n  border-radius:50%;\n  background:#8ca81b;\n  box-shadow:0 0 0 0 rgba(140,168,27,.28);\n  animation:askPulse 1.4s ease-out infinite;\n  flex:0 0 auto;\n}\n\n.ask-pro__loadingText{\n  display:inline-flex;\n  align-items:center;\n  gap:6px;\n  text-align:center;\n  flex-wrap:wrap;\n  justify-content:center;\n}\n\n.ask-pro__loadingDots{\n  display:inline-flex;\n  align-items:flex-end;\n  gap:3px;\n  min-width:20px;\n}\n\n.ask-pro__loadingDots span{\n  width:4px;\n  height:4px;\n  border-radius:50%;\n  background:currentColor;\n  opacity:.35;\n  animation:askDots 1s infinite ease-in-out;\n}\n\n.ask-pro__loadingDots span:nth-child(2){animation-delay:.16s;}\n.ask-pro__loadingDots span:nth-child(3){animation-delay:.32s;}\n\n@keyframes askSpin{\n  to{transform:rotate(360deg);}\n}\n\n@keyframes askSweep{\n  from{transform:translateX(-120%);}\n  to{transform:translateX(120%);}\n}\n\n@keyframes askPulse{\n  0%{box-shadow:0 0 0 0 rgba(140,168,27,.30); transform:scale(1);}\n  70%{box-shadow:0 0 0 12px rgba(140,168,27,0); transform:scale(1.08);}\n  100%{box-shadow:0 0 0 0 rgba(140,168,27,0); transform:scale(1);}\n}\n\n@keyframes askDots{\n  0%, 80%, 100%{transform:translateY(0); opacity:.3;}\n  40%{transform:translateY(-4px); opacity:1;}\n}\n\n@keyframes askLoadingFade{\n  from{opacity:0; transform:translateY(6px);}\n  to{opacity:1; transform:translateY(0);}\n}\n\n@media (max-width:760px){\n  .ask-pro__loadingNote{\n    font-size:.88rem;\n    line-height:1.35;\n    padding:11px 12px;\n  }\n}\n

/* ===== MOBILE LAWYERS PREMIUM FINAL TUNE ===== */
@media (max-width: 760px){
  .hero-lawyer-showcase__stack{
    display:none !important;
  }

  .hero-mobile-presence{
    display:block !important;
    position:relative;
    width:100%;
    margin:8px 0 10px;
    padding:0 2px 2px;
  }

  .hero-mobile-presence::before,
  .hero-mobile-presence::after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    width:26px;
    z-index:3;
    pointer-events:none;
  }

  .hero-mobile-presence::before{
    left:0;
    background:linear-gradient(90deg, rgba(250,246,239,.98) 0%, rgba(250,246,239,0) 100%);
  }

  .hero-mobile-presence::after{
    right:0;
    background:linear-gradient(270deg, rgba(250,246,239,.98) 0%, rgba(250,246,239,0) 100%);
  }

  .hero-mobile-presence__viewport{
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
    scroll-padding-inline:18px;
    padding:4px 18px 8px;
    margin:0 -8px;
    scrollbar-width:none;
    touch-action:pan-x;
    cursor:grab;
  }

  .hero-mobile-presence__viewport::-webkit-scrollbar{
    display:none;
  }

  .hero-mobile-presence__viewport.is-dragging{
    cursor:grabbing;
  }

  .js-hero-mobile-presence-track{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:12px !important;
    width:max-content;
    align-items:stretch;
    will-change:transform;
  }

  .hero-mobile-presence .hero-lawyer-card{
    flex:0 0 176px;
    min-width:176px;
    max-width:176px;
    min-height:72px;
    padding:12px 14px;
    border-radius:20px;
    align-items:center;
    scroll-snap-align:start;
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease, opacity .18s ease;
  }

  .hero-mobile-presence .hero-lawyer-card:first-child{margin-left:2px;}
  .hero-mobile-presence .hero-lawyer-card:last-child{margin-right:2px;}

  .hero-mobile-presence .hero-lawyer-card:hover,
  .hero-mobile-presence .hero-lawyer-card:active{
    transform:translateY(-2px) scale(1.015);
    border-color:rgba(197,151,67,.30);
    box-shadow:0 14px 30px rgba(31,38,48,.11);
    background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(249,244,235,.95));
  }

  .hero-mobile-presence__viewport.is-dragging .hero-lawyer-card{
    transform:scale(.992);
  }

  .hero-mobile-presence .hero-lawyer-card__avatar{
    width:48px;
    height:48px;
    border-radius:16px;
    box-shadow:0 10px 18px rgba(31,38,48,.09);
  }

  .hero-mobile-presence .hero-lawyer-card__text{
    gap:2px;
    justify-content:center;
  }

  .hero-mobile-presence .hero-lawyer-card__text strong{
    font-size:1rem;
    line-height:1.08;
  }

  .hero-mobile-presence .hero-lawyer-card__text small{
    font-size:.82rem;
    line-height:1.12;
  }
}

/* ===== FIX REAL: META EN UNA SOLA LÍNEA + MENOS HUECO EN PREGUNTA ===== */
.question-hero__top{
  gap:10px !important;
  margin-bottom:0 !important;
}

.question-hero__content{
  display:grid;
  gap:8px !important;
  min-width:0;
}

.question-hero__meta{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:8px !important;
  font-size:1.02rem !important;
  line-height:1.15 !important;
  white-space:nowrap !important;
  overflow:hidden;
}

.question-hero__meta span{
  white-space:nowrap !important;
  flex:0 0 auto;
}

.question-hero__divider{
  margin:10px 0 8px !important;
}

.question-hero__full{
  margin-top:0 !important;
  padding-top:0 !important;
}

.question-hero__full-head,
.question-hero__full-head--clean{
  margin:0 !important;
  padding:0 !important;
  min-height:0 !important;
}

.question-box-premium--consultation{
  margin-top:0 !important;
}

.question-box-premium__header--simple{
  margin-bottom:8px !important;
}

@media (max-width: 760px){
  .question-hero{
    padding:18px 14px 16px !important;
  }

  .question-hero__content{
    gap:6px !important;
  }

  .question-hero__meta{
    font-size:.78rem !important;
    gap:6px !important;
    letter-spacing:-0.01em;
  }

  .question-hero__status{
    font-size:.74rem !important;
    padding:7px 10px !important;
  }

  .question-hero__divider{
    margin:8px 0 6px !important;
  }

  .question-box-premium__badge{
    font-size:.82rem !important;
  }
}

/* ===== SHARE DENTRO DEL BLOQUE: FIX LIMPIO ===== */
.question-box-premium__content--consultation{
  display:grid;
  gap:18px;
}

.question-box-premium__text{
  min-width:0;
}

.question-share-mini--inside{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:10px;
  margin-top:2px;
}

.question-share-mini--inside .question-share-mini__btn{
  flex:0 0 auto;
}

.question-share-mini--inline{
  display:none !important;
}

@media (max-width: 760px){
  .question-box-premium__content--consultation{
    gap:14px;
  }

  .question-share-mini--inside{
    justify-content:flex-start;
    align-items:flex-start;
    flex-wrap:wrap;
  }

  .question-share-mini--inside .question-share-mini__feedback{
    width:100%;
  }
}

/* ===== HOME SLOT BANNERS ===== */
.home-banner-slot{
  margin:18px 0;
}
.home-banner-slot--after-question-4{
  margin:22px 0 6px;
}
.home-banner-slot--after-seo-block{
  margin-top:18px;
}
.home-banner-card{
  display:block;
  width:100%;
  overflow:hidden;
  border-radius:28px;
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,241,231,.98));
  box-shadow:var(--shadow-soft);
}
.home-banner-card--image img{
  display:block;
  width:100%;
  height:auto;
  max-height:220px;
  object-fit:cover;
  object-position:center;
  background:#fff;
}
.home-banner-card--code{
  padding:14px;
}
.home-banner-card--code iframe,
.home-banner-card--code img,
.home-banner-card--code ins,
.home-banner-card--code div{
  max-width:100% !important;
}
@media (max-width: 760px){
  .home-banner-card{
    border-radius:22px;
  }
  .home-banner-card--image img{
    max-height:160px;
  }
}

/* ===== SOFIA ANSWER HTML RENDER FIX ===== */
.ai-answer-copy{
  font-size:1.02rem;
  line-height:1.85;
  color:#415064;
}

.ai-answer-copy p{
  margin:0 0 1.1rem;
}

.ai-answer-copy p:last-child{
  margin-bottom:0;
}

.ai-answer-copy strong{
  color:#1f2630;
  font-weight:800;
}

.ai-answer-copy h2,
.ai-answer-copy h3,
.ai-answer-copy h4{
  margin:1.6rem 0 .7rem;
  line-height:1.28;
  font-weight:900;
  color:#1f2630;
  letter-spacing:-0.02em;
}

.ai-answer-copy h2{
  font-size:1.34rem;
}

.ai-answer-copy h3{
  font-size:1.18rem;
}

.ai-answer-copy h4{
  font-size:1.06rem;
}

.ai-answer-copy ul,
.ai-answer-copy ol{
  margin:1rem 0 1.15rem 1.25rem;
  padding:0;
}

.ai-answer-copy li{
  margin:.42rem 0;
}

.ai-answer-copy blockquote{
  margin:1.2rem 0;
  padding:14px 18px;
  border-left:4px solid var(--gold);
  background:rgba(255,255,255,.6);
  border-radius:16px;
  color:#304055;
}

.ai-answer-copy a{
  color:#6e8810;
  font-weight:800;
  text-decoration:none;
}

.ai-answer-copy a:hover{
  text-decoration:underline;
}

@media (max-width: 760px){
  .ai-answer-copy{
    font-size:1.01rem;
    line-height:1.82;
  }

  .ai-answer-copy h2{
    font-size:1.22rem;
  }

  .ai-answer-copy h3{
    font-size:1.1rem;
  }
}

.ai-answer-copy blockquote strong{
  display:inline-block;
  margin-bottom:.2rem;
}

.ai-answer-copy blockquote p{
  margin:0;
}

.ai-answer-copy :is(h2, h3, h4) + p{
  margin-top:.1rem;
}

.ai-answer-copy ul li::marker,
.ai-answer-copy ol li::marker{
  color:#8d6d2a;
  font-weight:800;
}

.ai-answer-copy > *:first-child{
  margin-top:0;
}

.ai-answer-copy .ai-answer-copy__summary,
.ai-answer-copy .ai-answer-copy__important{
  margin:1.25rem 0;
}

/* ===== MEJORA TEXTO PREGUNTA ===== */
.question-full{
  position: relative;
  padding-left: 22px;
}
.question-full::before{
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  bottom: 10px;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--gold), var(--olive));
  opacity: .6;
}
.question-full p{
  font-size: 1.05rem;
  line-height: 1.75;
  color: #4a5563;
  margin-bottom: 1.2em;
}
.question-full p:first-of-type{
  font-size: 1.18rem;
  line-height: 1.7;
  color: #1f2630;
  font-weight: 500;
}
.question-full p + p{ margin-top: 1.1em; }
.question-intro{
  font-size: .8rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #8c7a57;
  margin-bottom: 8px;
}
@media (max-width: 760px){
  .question-full{ padding-left: 16px; }
  .question-full p{ font-size: 1rem; line-height: 1.72; }
  .question-full p:first-of-type{ font-size: 1.08rem; }
}

/* ===== FIX REAL: BLOQUE RESPUESTA OCUPA TODO EL ANCHO ===== */
.answer-main--expanded{
  width:100%;
}

.answer-editorial-card.answer-editorial-card--wide{
  display:block;
  width:100% !important;
  max-width:none !important;
  margin-right:0 !important;
}

.answer-editorial-card.answer-editorial-card--wide .answer-editorial-card__body{
  width:100%;
}

.answer-editorial-card.answer-editorial-card--wide .ai-answer-copy,
.answer-editorial-card.answer-editorial-card--wide .answer-copy--dictamen{
  width:100%;
  max-width:none !important;
}

/* ===== FOOTER MOBILE REFINADO FINAL ===== */
@media (max-width: 640px){
  .footer-pro__brand{
    text-align:center;
    justify-items:center;
  }

  .footer-pro__brand > div:last-child{
    width:100%;
    text-align:center;
  }

  .footer-pro__brand strong{
    display:block;
    text-align:center;
  }

  .footer-pro__brand p{
    text-align:center;
    max-width:260px;
    margin:0 auto;
  }

  .footer-pro__social{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    gap:6px !important;
    margin-top:12px;
  }

  .footer-pro__social a{
    min-height:30px;
    padding:5px 6px;
    font-size:.72rem;
    line-height:1;
    border-radius:999px;
    gap:5px;
  }

  .footer-pro__social svg{
    width:11px;
    height:11px;
    flex:0 0 11px;
  }

  .footer-pro__social span{
    font-size:.72rem;
    line-height:1;
  }
}

/* ===== FOOTER MOBILE FIX REAL ===== */
@media (max-width: 640px){
  .footer-pro__brand{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    gap:12px !important;
  }

  .footer-pro__brand > div:last-child{
    width:100% !important;
    text-align:center !important;
  }

  .footer-pro__brand strong{
    display:block !important;
    width:100% !important;
    text-align:center !important;
    margin:0 0 8px !important;
    font-size:1rem !important;
    line-height:1.15 !important;
  }

  .footer-pro__brand p{
    text-align:center !important;
    max-width:260px !important;
    margin:0 auto !important;
    font-size:.95rem !important;
    line-height:1.55 !important;
  }

  .footer-pro__social{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
    gap:6px !important;
    margin-top:12px !important;
    width:100% !important;
  }

  .footer-pro__social a{
    min-height:28px !important;
    height:28px !important;
    padding:4px 6px !important;
    font-size:.68rem !important;
    line-height:1 !important;
    border-radius:999px !important;
    gap:4px !important;
    white-space:nowrap !important;
    overflow:hidden !important;
  }

  .footer-pro__social svg{
    width:10px !important;
    height:10px !important;
    flex:0 0 10px !important;
  }

  .footer-pro__social span{
    font-size:.68rem !important;
    line-height:1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
}
/* ===== OCULTAR SEO + ÚLTIMOS ARTÍCULOS SOLO EN MÓVIL ===== */
@media (max-width: 760px){
  #seo,
  .seo-block,
  .seo-section,
  .home-seo,
  .seo-home,
  .articles-box,
  .articles-home,
  .recent-articles,
  .latest-articles,
  .home-articles,
  .blog-home,
  #articulos,
  #ultimos-articulos{
    display:none !important;
  }
}

/* ===== FIX REAL: ocultar ÚLTIMOS ARTÍCULOS solo en móvil ===== */
@media (max-width: 760px){
  .sidebar-box.articles-box,
  .card.sidebar-box.articles-box,
  .articles-box,
  .articles-box__head,
  .articles-list,
  .article-mini-card,
  .articles-box__empty{
    display:none !important;
  }
}

/* ===== OCULTAR SOLO EN MÓVIL EL BLOQUE "ACCESO PROFESIONAL / ¿ERES ABOGADO?" ===== */
@media (max-width: 760px){
  .hero-clean__sideCard{
    display:none !important;
  }
}

.ask-box--expanded .ask-actions{
  margin-bottom:0;
}
/* ===== AJUSTE REAL BORDE INFERIOR ===== */

.ask-box{
  margin-bottom:0 !important;
}

.ask-box--expanded{
  padding-bottom:4px !important;
}

/* reduce aire del contenedor */
.hero-main{
  padding-bottom:10px !important;
}

/* si sigue habiendo hueco, esto lo remata */
.hero-clean{
  padding-bottom:12px !important;
}

/* ===== FIX CONTRASTE FORMULARIO DUDAS (FORZADO) ===== */
.ask-box,
.ask-box--expanded,
.question-form,
.question-box,
.hero-clean .ask-box,
.hero-clean .ask-box--expanded{
  background: linear-gradient(180deg, #f2ebdf 0%, #e9dfcf 100%) !important;
  border: 1px solid #cdbb9d !important;
  box-shadow: 0 14px 32px rgba(31,38,48,.08) !important;
}

/* zona grande blanca interior */
.ask-box textarea,
.ask-box--expanded textarea,
.ask-box .text-input,
.ask-box textarea.text-input,
.hero-clean textarea,
.hero-clean .text-input,
textarea[name="question"],
textarea[name="consulta"],
textarea[name="duda"]{
  background: #fbf8f2 !important;
  border: 1px solid #d3c3a7 !important;
  box-shadow: inset 0 1px 3px rgba(0,0,0,.04) !important;
}

/* placeholder más visible */
.ask-box textarea::placeholder,
.ask-box--expanded textarea::placeholder,
.hero-clean textarea::placeholder,
textarea[name="question"]::placeholder,
textarea[name="consulta"]::placeholder,
textarea[name="duda"]::placeholder{
  color: #8a93a0 !important;
  opacity: 1 !important;
}

/* chips superiores */
.trust-pills span,
.ask-box .pill,
.ask-box--expanded .pill,
.hero-clean .pill{
  background: #ece7d7 !important;
  border: 1px solid #ccb991 !important;
  color: #5d654f !important;
  box-shadow: 0 3px 10px rgba(0,0,0,.03) !important;
}

/* chips de categorías */
.chip-toggle span,
.topic-chip,
.topic-chip--visual,
.ask-box .category-chip,
.ask-box .tag-chip,
.ask-box .case-chip,
.ask-box button[type="button"]{
  background: linear-gradient(180deg, #ece6da 0%, #e3dac9 100%) !important;
  border: 1px solid #c7b28e !important;
  color: #414b5b !important;
  box-shadow: 0 6px 16px rgba(31,38,48,.05) !important;
}

/* hover / activo */
.chip-toggle input:checked + span,
.topic-chip--active{
  background: linear-gradient(180deg, #f0ecd9 0%, #e3dbc1 100%) !important;
  border-color: #a89a63 !important;
  box-shadow: 0 0 0 2px rgba(197,151,67,.12) !important;
}

/* botón publicar */
.ask-box .btn--olive,
.ask-box--expanded .btn--olive,
.hero-clean .btn--olive{
  box-shadow: 0 12px 24px rgba(129,157,18,.24) !important;
}

/* móvil */
@media (max-width: 760px){
  .ask-box,
  .ask-box--expanded,
  .question-form,
  .question-box,
  .hero-clean .ask-box,
  .hero-clean .ask-box--expanded{
    background: linear-gradient(180deg, #f0e8db 0%, #e7dccb 100%) !important;
  }
}

/* ===== PREGUNTA INDIVIDUAL MÁS LIMPIA ===== */
.question-story-card{
  position:relative;
  overflow:hidden;
  padding:0;
  border:1px solid rgba(198,185,159,.78);
  border-radius:26px;
  background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(246,240,230,.96));
  box-shadow:0 14px 34px rgba(31,38,48,.05);
}

.question-story-card__glow{display:none;}

.question-story-card__text{
  position:relative;
  display:grid;
  gap:16px;
  padding:24px 24px 20px 28px;
}

.question-story-card__text::before{
  content:"";
  position:absolute;
  left:14px;
  top:26px;
  bottom:26px;
  width:4px;
  border-radius:999px;
  background:linear-gradient(180deg, var(--gold), rgba(129,157,18,.82));
}

.question-story-card__eyebrowRow{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.question-story-card__intro{
  margin:0;
  letter-spacing:.11em;
  color:#9a7330;
  font-size:.92rem;
}

.question-story-card__tag{
  display:inline-flex;
  align-items:center;
  padding:7px 12px;
  border-radius:999px;
  border:1px solid rgba(129,157,18,.20);
  background:rgba(129,157,18,.07);
  color:#5f7410;
  font-size:.78rem;
  font-weight:900;
}

.question-story-card__leadWrap{
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.question-story-card__lead,
.question-story-card__body p{
  margin:0;
  font-size:1.05rem;
  line-height:1.95;
  color:#2d3b4d;
  font-weight:400;
}

.question-story-card__body{
  display:grid;
  gap:14px;
}

.question-story-card__footer{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
  padding-top:16px;
  border-top:1px solid rgba(198,185,159,.55);
}

.question-story-card__chips{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.question-story-card__chips span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:9px 12px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(198,185,159,.72);
  color:#495869;
  font-size:.83rem;
  font-weight:800;
}

.question-story-card__chips strong{color:#263243;}
.question-story-card__share{margin-left:auto;}
.question-story-card__share .question-share-mini__btn{
  min-height:42px;
  padding:10px 14px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(198,185,159,.82);
  box-shadow:none;
}

@media (max-width: 760px){
  .question-story-card{border-radius:22px;}
  .question-story-card__text{padding:18px 16px 16px 20px;gap:14px;}
  .question-story-card__text::before{left:10px;top:18px;bottom:18px;width:3px;}
  .question-story-card__eyebrowRow{align-items:flex-start;}
  .question-story-card__tag{order:2;}
  .question-story-card__lead,
  .question-story-card__body p{font-size:1rem;line-height:1.85;}
  .question-story-card__footer{align-items:flex-start;}
  .question-story-card__chips{gap:8px;}
  .question-story-card__chips span{font-size:.79rem;padding:8px 11px;}
  .question-story-card__share{margin-left:0;width:100%;}
  .question-story-card__share .question-share-mini__btn{width:100%;justify-content:center;}
}

/* ===== HERO SOFIA REBUILD ===== */
.hero-sofia{
  padding:22px;
  overflow:visible;
}
.hero-sofia__layout{
  display:grid;
  grid-template-columns:minmax(0,1.38fr) minmax(320px,.72fr);
  gap:24px;
  align-items:start;
}
.hero-sofia__main{
  min-width:0;
  display:grid;
  gap:18px;
}
.hero-sofia__top{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(240px,320px);
  gap:18px;
  align-items:end;
}
.hero-sofia__content{
  min-width:0;
}
.hero-sofia__eyebrow{
  display:inline-flex;
  align-items:center;
  padding:10px 16px;
  border-radius:999px;
  background:rgba(129,157,18,.11);
  color:#617611;
  font-weight:900;
  font-size:.86rem;
  line-height:1;
  margin-bottom:16px;
}
.hero-sofia__title{
  margin:0;
  max-width:10.8ch;
  font-size:clamp(3rem,5.4vw,4.7rem);
  line-height:.93;
  letter-spacing:-.055em;
  color:#1f2630;
}
.hero-sofia__title span{
  display:block;
}
.hero-sofia__title em,
.hero-sofia__title strong{
  font-style:normal;
  color:#94b10f;
}
.hero-sofia__lead{
  margin:16px 0 0;
  color:#647287;
  font-size:1.02rem;
  line-height:1.55;
  max-width:56ch;
}
.hero-sofia__visual{
  position:relative;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  min-height:100%;
}
.hero-sofia__visual::before{
  content:"";
  position:absolute;
  inset:auto 18% 6% 18%;
  height:20px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(31,38,48,.18) 0%, rgba(31,38,48,0) 72%);
  filter:blur(10px);
  z-index:0;
}
.hero-sofia__image{
  position:relative;
  z-index:1;
  display:block;
  width:min(100%, 310px);
  max-height:510px;
  object-fit:contain;
  object-position:center bottom;
  filter:drop-shadow(0 20px 44px rgba(31,38,48,.18));
}
.hero-sofia__steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.hero-sofia-step{
  display:flex;
  align-items:flex-start;
  gap:14px;
  min-height:118px;
  padding:16px 18px;
  border-radius:24px;
  border:1px solid rgba(198,185,159,.9);
  background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(247,242,233,.88));
  box-shadow:0 12px 30px rgba(31,38,48,.05);
}
.hero-sofia-step__num{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  flex:0 0 42px;
  border-radius:999px;
  background:linear-gradient(180deg, #aac617 0%, #87a50f 100%);
  color:#fff;
  font-size:1.3rem;
  font-weight:900;
  box-shadow:0 10px 20px rgba(129,157,18,.22);
}
.hero-sofia-step h3{
  margin:2px 0 6px;
  color:#253145;
  font-size:1.06rem;
  line-height:1.1;
}
.hero-sofia-step p{
  margin:0;
  color:#708095;
  font-size:.95rem;
  line-height:1.45;
}
.hero-sofia__form{
  margin-top:4px;
}
.hero-sofia__form .ask-pro__top{
  align-items:flex-start;
}
.hero-sofia__form .ask-pro__badges{
  justify-content:flex-end;
}
.hero-sofia__side{
  display:grid;
  gap:18px;
  align-content:start;
}

@media (max-width: 1180px){
  .hero-sofia__layout{
    grid-template-columns:minmax(0,1fr) minmax(300px,.66fr);
  }
  .hero-sofia__top{
    grid-template-columns:minmax(0,1fr) 280px;
  }
  .hero-sofia__title{
    font-size:clamp(2.65rem,5vw,4rem);
  }
  .hero-sofia__steps{
    grid-template-columns:1fr;
  }
}

@media (max-width: 760px){
  .hero-sofia{
    padding:10px 12px 0;
    overflow:hidden;
  }
  .hero-sofia__layout{
    grid-template-columns:1fr;
    gap:0;
  }
  .hero-sofia__top{
    grid-template-columns:minmax(0,1fr) 132px;
    gap:4px;
    align-items:end;
    min-height:auto;
    margin-bottom:-24px;
  }
  .hero-sofia__eyebrow{
    margin-bottom:4px;
    font-size:.72rem;
    padding:8px 10px;
  }
  .hero-sofia__title{
    max-width:7.6ch;
    font-size:clamp(1.92rem,8.8vw,2.55rem);
    line-height:.86;
    margin:0;
  }
  .hero-sofia__lead{
    margin-top:6px;
    font-size:.92rem;
    line-height:1.42;
  }
  .hero-sofia__visual{
    align-self:end;
    justify-content:flex-end;
    margin:0 0 -8px;
  }
  .hero-sofia__visual::before{
    inset:auto 14px 6px 14px;
    height:10px;
  }
  .hero-sofia__image{
    width:142px;
    max-width:none;
    max-height:none;
  }
  .hero-sofia__steps{
    grid-template-columns:1fr;
    gap:12px;
  }
  .hero-sofia-step{
    min-height:auto;
    padding:14px 14px;
    border-radius:22px;
  }
  .hero-sofia-step__num{
    width:40px;
    height:40px;
    flex-basis:40px;
    font-size:1.15rem;
  }
  .hero-sofia-step h3{
    font-size:1rem;
  }
  .hero-sofia-step p{
    font-size:.92rem;
  }
  .hero-sofia__form .ask-pro__top{
    flex-direction:column;
  }
  .hero-sofia__form .ask-pro__badges{
    justify-content:flex-start;
  }
}

/* ===== FIX EYEBROW UNA SOLA LÍNEA ===== */
@media (max-width: 760px){
  .hero-sofia__eyebrow{
    display:inline-flex !important;
    align-items:center !important;
    width:auto !important;
    max-width:none !important;
    padding:8px 10px !important;
    font-size:.72rem !important;
    line-height:1 !important;
    white-space:nowrap !important;
    word-break:keep-all !important;
  }
}

@media (max-width: 420px){
  .hero-sofia__eyebrow{
    padding:7px 9px !important;
    font-size:.68rem !important;
    max-width:none !important;
    white-space:nowrap !important;
  }
}

/* ===== FIX DEFINITIVO MÓVIL: TARJETAS PREGUNTAS NO SE CORTAN A LA DERECHA ===== */
@media (max-width: 640px){
  #preguntas,
  #preguntas .shell,
  #preguntas .section,
  #preguntas .questions-list,
  #preguntas .question-card,
  #preguntas .question-card--visual,
  #preguntas .question-card__main,
  #preguntas .question-top,
  #preguntas .question-top__content,
  #preguntas .question-top__meta,
  #preguntas .question-bottom,
  #preguntas .question-bottom__left,
  #preguntas .question-card__heading-row,
  #preguntas .question-card__answer-box,
  #preguntas .question-card__answer-head,
  #preguntas .question-cta,
  #preguntas .pill,
  #preguntas .question-card__label,
  #preguntas .question-card__stamp,
  #preguntas .question-live,
  #preguntas .question-status-pill{
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  #preguntas .questions-list,
  #preguntas .question-card,
  #preguntas .question-card--visual,
  #preguntas .question-card__main{
    width:100% !important;
    overflow:hidden !important;
  }

  #preguntas .question-top__meta,
  #preguntas .question-bottom__left,
  #preguntas .question-card__heading-row,
  #preguntas .question-card__answer-head{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:flex-start !important;
    gap:10px !important;
  }

  #preguntas .question-card__answer-box{
    padding:18px 16px 18px !important;
    border-radius:22px !important;
  }

  #preguntas .question-card__label,
  #preguntas .question-card__stamp,
  #preguntas .pill,
  #preguntas .question-live,
  #preguntas .question-status-pill{
    white-space:normal !important;
    word-break:break-word !important;
    overflow-wrap:anywhere !important;
  }

  #preguntas .question-top h3,
  #preguntas .question-top h3 a,
  #preguntas .question-card__excerpt,
  #preguntas .question-author{
    min-width:0 !important;
    max-width:100% !important;
    overflow-wrap:anywhere !important;
    word-break:break-word !important;
  }

  #preguntas .question-cta{
    width:100% !important;
    justify-content:center !important;
    text-align:center !important;
    padding-left:14px !important;
    padding-right:14px !important;
  }
}

/* ===== FIX REAL MÓVIL PREGUNTAS: evitar ensanche al cargar ===== */
@media (max-width: 640px){
  #preguntas,
  #preguntas .content-stack,
  #preguntas .questions-list{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:clip !important;
  }

  #preguntas .question-card.question-card--visual.question-card--dictamen{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 auto !important;
    overflow:hidden !important;
  }

  #preguntas .question-visual,
  #preguntas .question-visual-side{
    display:none !important;
  }

  #preguntas .question-card__main,
  #preguntas .question-top,
  #preguntas .question-top__content,
  #preguntas .question-top__meta,
  #preguntas .question-card__heading-row,
  #preguntas .question-card__answer-box,
  #preguntas .question-card__answer-head,
  #preguntas .question-bottom,
  #preguntas .question-bottom__left,
  #preguntas .question-cta,
  #preguntas .pill,
  #preguntas .question-card__label,
  #preguntas .question-card__stamp,
  #preguntas .question-live,
  #preguntas .question-status-pill{
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  #preguntas .question-top,
  #preguntas .question-card__main{
    width:100% !important;
  }

  #preguntas .question-top{
    display:grid !important;
    grid-template-columns:1fr !important;
  }

  #preguntas .question-top__meta,
  #preguntas .question-card__heading-row,
  #preguntas .question-card__answer-head,
  #preguntas .question-bottom,
  #preguntas .question-bottom__left{
    display:flex !important;
    flex-wrap:wrap !important;
    width:100% !important;
    gap:10px !important;
    align-items:flex-start !important;
  }

  #preguntas .question-top h3,
  #preguntas .question-top h3 a,
  #preguntas .question-card__excerpt,
  #preguntas .question-author,
  #preguntas .question-live,
  #preguntas .question-card__label,
  #preguntas .question-card__stamp,
  #preguntas .question-status-pill,
  #preguntas .pill{
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    word-break:break-word !important;
  }

  #preguntas .question-cta{
    display:inline-flex !important;
    justify-content:center !important;
    text-align:center !important;
    width:100% !important;
  }
}

/* ===== FIX FINAL REAL MÓVIL TARJETAS PREGUNTAS ===== */
@media (max-width: 640px){
  html,
  body{
    overflow-x:hidden !important;
  }

  .shell,
  .two-col,
  .content-stack,
  .sidebar-stack,
  .questions-list,
  #preguntas,
  #preguntas .content-stack,
  #preguntas .questions-list{
    min-width:0 !important;
    max-width:100% !important;
    width:100% !important;
    overflow-x:hidden !important;
  }

  .question-card.card.question-card--visual.question-card--dictamen,
  #preguntas .question-card.card.question-card--visual.question-card--dictamen{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  .question-visual,
  .question-visual-side,
  #preguntas .question-visual,
  #preguntas .question-visual-side{
    display:none !important;
    width:0 !important;
    min-width:0 !important;
    max-width:0 !important;
    overflow:hidden !important;
  }

  .question-card__main,
  .question-top,
  .question-top__content,
  .question-top__meta,
  .question-card__heading-row,
  .question-card__answer-box,
  .question-card__answer-head,
  .question-bottom,
  .question-bottom__left,
  .question-cta,
  .question-meta,
  .pill,
  .question-card__label,
  .question-card__stamp,
  .question-live,
  .question-status-pill,
  .question-author{
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  .question-card__main,
  .question-top,
  .question-top__content,
  .question-card__answer-box,
  .question-bottom{
    width:100% !important;
  }

  .question-top,
  .question-bottom,
  .question-bottom__left,
  .question-top__meta,
  .question-card__heading-row,
  .question-card__answer-head{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:flex-start !important;
    gap:10px !important;
  }

  .question-meta{
    align-self:flex-start !important;
    white-space:normal !important;
  }

  .question-top h3,
  .question-top h3 a,
  .question-card__excerpt,
  .question-author,
  .question-live,
  .question-status-pill,
  .pill,
  .question-card__stamp,
  .question-card__label,
  .question-cta{
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    word-break:break-word !important;
  }

  .question-cta{
    display:flex !important;
    width:100% !important;
    justify-content:center !important;
    text-align:center !important;
    padding-left:14px !important;
    padding-right:14px !important;
  }
}

/* ===== FIX FINAL MÁRGENES MÓVIL: restaurar contenedor ===== */
@media (max-width: 640px){
  .shell,
  .section.shell,
  main.section.shell,
  .site-header .shell,
  .header-shell,
  .hero-clean-section .shell,
  #preguntas.shell,
  .two-col.shell{
    width:min(var(--max), calc(100% - 28px)) !important;
    max-width:var(--max) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  .two-col{
    width:min(var(--max), calc(100% - 28px)) !important;
    max-width:var(--max) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    min-width:0 !important;
  }

  #preguntas,
  #preguntas .content-stack,
  #preguntas .questions-list,
  .content-stack,
  .sidebar-stack{
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }
}

/* ===== OVERRIDE FINAL SOFIA MÁS GRANDE SOLO EN MÓVIL ===== */
@media (max-width: 760px){
  .hero-sofia__top{
    grid-template-columns:minmax(0,1fr) 132px !important;
  }

  .hero-sofia__visual{
    width:132px !important;
    min-width:132px !important;
    justify-content:flex-end !important;
    align-self:end !important;
    transform:translate(4px, 10px) !important;
    overflow:visible !important;
  }

  .hero-sofia__image{
    width:190px !important;
    max-width:none !important;
    height:auto !important;
  }
}

@media (max-width: 420px){
  .hero-sofia__top{
    grid-template-columns:minmax(0,1fr) 126px !important;
  }

  .hero-sofia__visual{
    width:126px !important;
    min-width:126px !important;
    transform:translate(4px, 8px) !important;
    overflow:visible !important;
  }

  .hero-sofia__image{
    width:164px !important;
    max-width:none !important;
    height:auto !important;
  }
}


/* ===== CAMBIOS LEGALES / BOE ÚTIL ===== */
.lr-impact-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 12px;
  border-radius:999px;
  font-size:.73rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.lr-impact-pill--high{background:rgba(178,52,52,.12);color:#8f2323;border:1px solid rgba(178,52,52,.18)}
.lr-impact-pill--medium{background:rgba(197,151,67,.14);color:#7b5717;border:1px solid rgba(197,151,67,.2)}
.lr-impact-pill--low{background:rgba(82,136,58,.12);color:#3b6f27;border:1px solid rgba(82,136,58,.18)}
.lr-admin-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.lr-admin-actions--end{justify-content:flex-end}
.legal-updates-home{padding-top:4px}
.legal-home-shell{padding:28px;overflow:hidden}
.legal-home-head{gap:18px;align-items:flex-end}
.legal-home-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 12px;border-radius:999px;
  background:rgba(28,95,168,.08);border:1px solid rgba(28,95,168,.14);
  color:#1c5fa8;font-size:.75rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;
}
.legal-home-intro{margin:10px 0 0;color:#5c6979;max-width:760px;line-height:1.7}
.legal-home-grid,.legal-list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px}
.legal-home-card{
  position:relative;display:grid;gap:14px;padding:22px;border-radius:24px;
  border:1px solid rgba(31,38,48,.08);background:linear-gradient(180deg,#fff,#fbf8f2);
  box-shadow:0 16px 34px rgba(31,38,48,.08);
}
.legal-home-card--high{box-shadow:0 18px 38px rgba(143,35,35,.08)}
.legal-home-card__top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.legal-home-card__category{font-size:.82rem;font-weight:800;color:#5f6d7d}
.legal-home-card h2,.legal-home-card h3{margin:0;color:#1d2b3f;line-height:1.28}
.legal-home-card p{margin:0;color:#5c6979;line-height:1.7}
.legal-home-meta{display:grid;gap:8px;margin:0;padding:0;list-style:none;color:#435164;font-size:.92rem}
.legal-home-card__bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:auto}
.legal-home-link{font-weight:900;color:#1c5fa8}
.legal-home-link--soft{color:#6a7586}
.legal-list-page,.legal-detail-page{padding-top:22px;padding-bottom:36px}
.legal-list-hero,.legal-detail-card{padding:28px}
.legal-list-hero p,.legal-detail-excerpt{margin:10px 0 0;color:#5b6879;line-height:1.75}
.legal-list-card__meta,.legal-detail-meta{display:flex;gap:14px;flex-wrap:wrap;color:#5f6d7d;font-size:.92rem;margin-top:12px}
.legal-detail-body{margin-top:18px;color:#324152;line-height:1.9;font-size:1rem}
.legal-detail-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.legal-related{margin-top:24px}
@media (max-width: 980px){
  .legal-home-grid,.legal-list-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 760px){
  .legal-home-shell,.legal-list-hero,.legal-detail-card{padding:20px}
  .legal-home-grid,.legal-list-grid{grid-template-columns:1fr}
}




/* ===== CHIPS PREMIUM CATEGORÍAS ===== */

.ask-pro__chips{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:10px;
}

.ask-pro__chips .chip{
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border-radius:14px;
  background:linear-gradient(180deg,#fff,var(--chip-soft));
  border:1px solid rgba(0,0,0,.08);
  font-size:.85rem;
  font-weight:800;
  color:#2a3442;
  transition:all .18s ease;
}

.chip__icon{
  width:28px;
  height:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:8px;
  background:var(--chip-soft);
  border:1px solid rgba(0,0,0,.05);
}

.chip__img{
  width:18px;
  height:18px;
  object-fit:contain;
}

.chip__text{
  flex:1;
  text-align:left;
}

.ask-pro__chips .chip:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 20px rgba(0,0,0,.08);
  border-color:var(--chip-accent);
}
/* ===== CHIPS ULTRA COMPACTOS MOBILE ===== */

.ask-pro__chips{
  display:grid;
  grid-template-columns:repeat(2, 1fr); /* 👈 2 por fila */
  gap:8px;
}

/* CHIP */
.ask-pro__chips .chip{
  display:flex;
  align-items:center;
  gap:6px;

  padding:8px 10px;          /* 👈 más fino */
  border-radius:12px;

  font-size:.82rem;          /* 👈 más compacto */
  font-weight:800;

  min-height:42px;           /* 👈 altura controlada */

  background:linear-gradient(180deg,#fff,var(--chip-soft));
  border:1px solid rgba(0,0,0,.06);

  transition:all .15s ease;
}

/* ICONO */
.chip__icon{
  width:24px;
  height:24px;
  flex:0 0 24px;

  border-radius:6px;
  background:var(--chip-soft);

  display:flex;
  align-items:center;
  justify-content:center;
}

.chip__img{
  width:14px;
  height:14px;
}

/* TEXTO */
.chip__text{
  font-size:.82rem;
  line-height:1.1;
}

/* HOVER */
.ask-pro__chips .chip:hover{
  transform:translateY(-1px);
  border-color:var(--chip-accent);
}

/* ===== BOE IMPORT TOPICS ===== */
.boe-topic-box{
  padding:20px;
  border:1px solid #e6dcc3;
  border-radius:24px;
  background:linear-gradient(180deg,#fffdf8,#f6f0e4);
  box-shadow:0 14px 28px rgba(31,38,48,.05);
}
.boe-topic-box__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
  flex-wrap:wrap;
}
.boe-topic-box__eyebrow{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(197,151,67,.14);
  color:#8a6b1f;
  font-size:.75rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.boe-topic-box h3{
  margin:10px 0 6px;
  font-size:1.2rem;
}
.boe-topic-box p{
  margin:0;
  color:#687486;
}
.boe-topic-mode{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.boe-mode-pill{
  position:relative;
  display:inline-flex;
}
.boe-mode-pill input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.boe-mode-pill span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:110px;
  padding:12px 16px;
  border-radius:999px;
  background:#fff;
  border:1px solid #d8ccb1;
  font-weight:900;
  color:#243041;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(31,38,48,.05);
  transition:all .18s ease;
}
.boe-mode-pill input:checked + span{
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  border-color:#c59743;
  color:#241d13;
}
.boe-topic-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:14px;
}
.boe-topic-grid{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.boe-topic-grid.is-disabled{
  opacity:.58;
}
.boe-topic-chip{
  position:relative;
  display:inline-flex;
}
.boe-topic-chip input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.boe-topic-chip span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:10px 14px;
  border-radius:999px;
  background:#fff;
  border:1px solid #d8ccb1;
  color:#314056;
  font-weight:800;
  cursor:pointer;
  transition:all .18s ease;
}
.boe-topic-chip input:checked + span{
  background:rgba(129,157,18,.14);
  border-color:rgba(129,157,18,.42);
  color:#50640e;
  box-shadow:0 10px 20px rgba(129,157,18,.12);
}
.boe-topic-chip input:disabled + span{
  cursor:not-allowed;
}
@media (max-width: 760px){
  .boe-topic-box{
    padding:16px;
    border-radius:20px;
  }
  .boe-topic-box__head{
    flex-direction:column;
  }
  .boe-mode-pill span{
    min-width:0;
    padding:11px 14px;
  }
  .boe-topic-actions .btn{
    flex:1;
  }
  .boe-topic-chip{
    flex:1 1 calc(50% - 10px);
  }
  .boe-topic-chip span{
    width:100%;
    text-align:center;
    justify-content:center;
    font-size:.92rem;
    padding:10px 12px;
  }
}


/* ===== BOE IMPORT TOPICS FIX VISUAL + CLICK ===== */
.boe-mode-pill,
.boe-topic-chip{user-select:none;-webkit-user-select:none;}

.boe-mode-pill span{
  border-width:2px;
}

.boe-mode-pill input:checked + span{
  background:linear-gradient(135deg,#c59743,#edd7a3);
  border-color:#b7872d;
  color:#241d13;
  box-shadow:0 12px 24px rgba(197,151,67,.24);
}

.boe-topic-actions .btn:disabled{
  opacity:.45;
  cursor:not-allowed;
  box-shadow:none;
}

.boe-topic-grid.is-disabled .boe-topic-chip span{
  opacity:.72;
}

.boe-topic-chip span{
  position:relative;
  border-width:2px;
  min-height:48px;
  padding:11px 16px;
  background:linear-gradient(180deg,#ffffff,#fbf7ef);
}

.boe-topic-chip input:checked + span{
  background:linear-gradient(180deg,#eef6cf,#dce9a7);
  border-color:#97ad2f;
  color:#42540b;
  box-shadow:0 12px 24px rgba(129,157,18,.18);
}

.boe-topic-chip input:checked + span::after{
  content:"✓";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:20px;
  height:20px;
  margin-left:8px;
  border-radius:999px;
  background:#6d8710;
  color:#fff;
  font-size:.78rem;
  font-weight:900;
  line-height:1;
}

@media (max-width:760px){
  .boe-topic-chip span{min-height:46px;}
}


/* ===== BULK DELETE LEGAL UPDATES ===== */
.lr-bulk-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:14px;
  padding:14px 16px;
  border:1px solid #e5dac0;
  border-radius:18px;
  background:linear-gradient(180deg,#fffdf8,#f6efe2);
}
.lr-bulk-toolbar__left,
.lr-bulk-toolbar__right{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.lr-bulk-toolbar__count{
  font-weight:900;
  color:#526072;
}
.lr-check-col{
  width:52px;
  text-align:center !important;
}
.admin-table--bulk .lr-check-col input[type="checkbox"]{
  width:18px;
  height:18px;
  accent-color:#c59743;
  cursor:pointer;
}
.btn[disabled]{
  opacity:.45;
  cursor:not-allowed;
  transform:none !important;
}
@media (max-width: 760px){
  .lr-bulk-toolbar{
    align-items:flex-start;
  }
  .lr-bulk-toolbar__left,
  .lr-bulk-toolbar__right{
    width:100%;
  }
}

/* ===== DESTACADOS MÓVIL: DISPONIBLE + CIUDAD + CATEGORÍA EN UNA FILA ===== */
.lawyer-card__meta--v2,
.lawyer-card__meta--topic-style{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.lawyer-card__meta--v2 > *,
.lawyer-card__meta--topic-style > *{
  flex:0 0 auto;
  white-space:nowrap;
}

@media (max-width: 760px){
  .lawyer-card__meta--v2,
  .lawyer-card__meta--topic-style{
    flex-wrap:nowrap !important;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    gap:8px;
  }

  .lawyer-card__meta--v2::-webkit-scrollbar,
  .lawyer-card__meta--topic-style::-webkit-scrollbar{
    display:none;
  }

  .lawyer-card__meta--v2 > *,
  .lawyer-card__meta--topic-style > *{
    flex:0 0 auto !important;
    white-space:nowrap !important;
  }

  .lawyer-card__meta--v2 .availability,
  .lawyer-card__meta--v2 .lawyer-meta-chip,
  .lawyer-card__meta--v2 .lawyer-meta-chip--dark,
  .lawyer-card__meta--v2 .lawyer-meta-chip--city,
  .lawyer-card__meta--v2 .lawyer-meta-chip--specialty,
  .lawyer-card__meta--topic-style .lawyer-card__status--topic-style,
  .lawyer-card__meta--topic-style .lawyer-meta-chip,
  .lawyer-card__meta--topic-style .lawyer-meta-chip--city,
  .lawyer-card__meta--topic-style .lawyer-meta-chip--specialty{
    white-space:nowrap !important;
    flex:0 0 auto !important;
  }
}
