/* ============================================================================
   Lista de espera Madrid — abogadamercantil.com/madrid
   Usa los tokens de site.css. Solo añade lo propio de esta página.
   ========================================================================= */
.md-hero{position:relative;min-height:100svh;padding-top:calc(var(--nav-h) + clamp(28px,5vw,64px));padding-bottom:clamp(56px,8vw,110px);overflow:hidden;
  background:
    radial-gradient(60% 50% at 78% 22%,rgba(201,169,97,.13),transparent 70%),
    radial-gradient(70% 70% at 15% 85%,rgba(60,107,72,.32),transparent 70%),
    var(--v-950)}
.md-hero::after{content:'';position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(90deg,rgba(245,241,233,.025) 0 1px,transparent 1px 120px)}
.md-grid{position:relative;z-index:2;display:grid;gap:clamp(40px,6vw,88px);align-items:start;grid-template-columns:1fr}
@media (min-width:1000px){.md-grid{grid-template-columns:1.02fr .98fr}}

.md-sello{display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 10px;border-radius:100px;margin-bottom:28px;
  border:1px solid rgba(201,169,97,.35);background:rgba(201,169,97,.07);
  font-family:var(--caps);text-transform:uppercase;letter-spacing:.18em;font-size:.7rem;color:var(--oro-alto)}
.md-sello i{width:8px;height:8px;border-radius:50%;background:var(--oro);box-shadow:0 0 0 0 var(--oro-glow);animation:md-pulso 2.4s infinite}
@keyframes md-pulso{0%{box-shadow:0 0 0 0 rgba(201,169,97,.55)}70%{box-shadow:0 0 0 12px rgba(201,169,97,0)}100%{box-shadow:0 0 0 0 rgba(201,169,97,0)}}

.md-titulo{font-family:var(--serif);font-weight:500;font-size:clamp(2.6rem,6.4vw,5.4rem);line-height:.98;letter-spacing:-.02em;margin-bottom:26px}
.md-titulo em{font-style:italic;font-weight:400;color:var(--oro-alto)}
.md-lead{margin-bottom:38px}

.md-pasos{list-style:none;display:grid;gap:2px;margin-bottom:38px;border-radius:var(--r);overflow:hidden;border:1px solid var(--mf-08)}
.md-pasos li{display:grid;grid-template-columns:46px 1fr;gap:16px;align-items:start;padding:18px 20px;background:rgba(245,241,233,.025)}
.md-pasos b{font-family:var(--serif);font-style:italic;font-weight:500;font-size:1.7rem;line-height:1;color:var(--oro)}
.md-pasos strong{display:block;font-weight:600;margin-bottom:3px}
.md-pasos span{color:var(--mf-64);font-size:.93rem;line-height:1.5}

.md-dir{display:flex;gap:14px;align-items:center;color:var(--mf-64);font-size:.9rem}
.md-dir svg{width:20px;height:20px;color:var(--oro);flex:none}
.md-dir a{color:var(--mf);text-decoration:none;border-bottom:1px solid var(--mf-28)}

/* Tarjeta del formulario */
.md-card{position:relative;border-radius:calc(var(--r) + 6px);padding:clamp(24px,3.4vw,40px);
  background:linear-gradient(170deg,rgba(24,48,31,.92),rgba(11,23,16,.96));
  border:1px solid rgba(201,169,97,.26);
  box-shadow:0 40px 90px -30px rgba(0,0,0,.85),0 0 0 1px rgba(0,0,0,.4) inset}
.md-card::before{content:'';position:absolute;inset:-1px;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(140deg,rgba(232,214,168,.7),transparent 30%,transparent 70%,rgba(201,169,97,.45));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.md-card h2{font-family:var(--serif);font-weight:500;font-size:clamp(1.6rem,2.4vw,2.05rem);line-height:1.1;margin-bottom:8px}
.md-form-wrap > p{color:var(--mf-64);font-size:.92rem;margin-bottom:26px}

.md-f{display:grid;gap:16px;grid-template-columns:1fr 1fr}
.md-f .full{grid-column:1/-1}
@media (max-width:560px){.md-f{grid-template-columns:1fr}}
.md-c label{display:block;font-family:var(--caps);text-transform:uppercase;letter-spacing:.14em;font-size:.66rem;color:var(--mf-64);margin-bottom:8px}
.md-c label small{text-transform:none;letter-spacing:0;font-size:.72rem;color:var(--mf-46)}
.md-c input,.md-c select,.md-c textarea{width:100%;font:inherit;font-size:1rem;color:var(--mf);
  background:rgba(5,10,7,.55);border:1px solid var(--mf-14);border-radius:12px;padding:14px 15px;outline:none;
  transition:border-color .25s,box-shadow .25s,background .25s;-webkit-appearance:none;appearance:none}
.md-c select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C9A961' stroke-width='2.4'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;background-size:14px;padding-right:40px}
.md-c select option{background:var(--v-900);color:var(--mf)}
.md-c textarea{min-height:104px;resize:vertical;line-height:1.5}
.md-c input:focus,.md-c select:focus,.md-c textarea:focus{border-color:var(--oro);box-shadow:0 0 0 4px rgba(201,169,97,.14);background:rgba(5,10,7,.75)}
.md-c input::placeholder,.md-c textarea::placeholder{color:var(--mf-28)}
.md-c.err input,.md-c.err select{border-color:#E07A6A}
.md-c .msg{display:none;color:#F0A496;font-size:.78rem;margin-top:6px}
.md-c.err .msg{display:block}

.md-seg{display:flex;flex-wrap:wrap;gap:8px}
.md-seg input{position:absolute;opacity:0;pointer-events:none}
.md-seg label{margin:0;cursor:pointer;padding:11px 16px;border-radius:100px;border:1px solid var(--mf-14);background:rgba(5,10,7,.45);
  font-family:var(--sans);text-transform:none;letter-spacing:0;font-size:.9rem;color:var(--mf-80);transition:all .25s}
.md-seg input:checked + label{border-color:var(--oro);background:rgba(201,169,97,.16);color:var(--oro-alto)}
.md-seg input:focus-visible + label{box-shadow:0 0 0 3px rgba(201,169,97,.35)}

.md-ok{display:flex;gap:12px;align-items:flex-start;font-size:.84rem;color:var(--mf-64);line-height:1.5;cursor:pointer}
.md-ok input{width:20px;height:20px;flex:none;margin-top:1px;accent-color:var(--oro)}
.md-ok a{color:var(--oro-alto)}
.md-ok.err{color:#F0A496}
.md-trampa{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

.md-enviar{width:100%;justify-content:center;margin-top:6px}
.md-enviar[disabled]{opacity:.6;pointer-events:none}
.md-legal{font-size:.72rem;color:var(--mf-46);line-height:1.5;margin-top:14px}
.md-error{display:none;margin-top:14px;padding:12px 14px;border-radius:12px;background:rgba(224,122,106,.12);border:1px solid rgba(224,122,106,.4);color:#F5C2B8;font-size:.86rem}
.md-error.on{display:block}

/* Confirmación */
.md-hecho{display:none;text-align:center;padding:clamp(16px,3vw,30px) 0}
.md-card.listo .md-hecho{display:block}
.md-card.listo .md-form-wrap{display:none}
.md-check{width:84px;height:84px;margin:0 auto 22px;border-radius:50%;display:grid;place-items:center;
  background:radial-gradient(circle at 35% 30%,#FFF4D6,var(--oro) 55%,var(--oro-bajo));box-shadow:0 0 0 10px rgba(201,169,97,.14),0 0 60px rgba(232,214,168,.45)}
.md-check svg{width:40px;height:40px;stroke:var(--v-900)}
.md-check path{stroke-dasharray:30;stroke-dashoffset:30}
.md-card.listo .md-check path{animation:md-trazo .7s .25s var(--ease) forwards}
@keyframes md-trazo{to{stroke-dashoffset:0}}
.md-hecho h2{margin-bottom:12px}
.md-hecho p{color:var(--mf-80);max-width:40ch;margin:0 auto 24px;line-height:1.6}

/* Franja de confianza */
.md-confianza{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.md-confianza div{padding:22px;border-radius:var(--r);border:1px solid var(--mf-08);background:rgba(245,241,233,.02)}
.md-confianza b{display:block;font-family:var(--serif);font-weight:500;font-size:2.2rem;line-height:1;color:var(--oro-alto);margin-bottom:8px}
.md-confianza span{color:var(--mf-64);font-size:.9rem;line-height:1.5}

@media (prefers-reduced-motion:reduce){.md-sello i{animation:none}.md-card.listo .md-check path{animation:none;stroke-dashoffset:0}}
.md-grid > *{min-width:0}
@media (max-width:560px){.md-sello{letter-spacing:.12em;font-size:.62rem;line-height:1.4}.md-pasos li{grid-template-columns:34px 1fr;padding:16px}}
