:root{
  --jm-card: rgba(29,33,42,.85);
  --jm-border: rgba(42,48,64,.9);
  --jm-text:#f6f7f9;
  --jm-muted:#b7bfcc;
  --jm-gold:#c9a24d;
  --jm-gold2:#b98d33;
  --jm-radius:20px;
}
.jmconsult-wrap{max-width:1120px;margin:0 auto}
.jmconsult-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}
.jmconsult-card{
  background:linear-gradient(180deg, rgba(29,33,42,.92), rgba(29,33,42,.65));
  border:1px solid var(--jm-border);
  border-radius:var(--jm-radius);
  padding:20px;
  box-shadow:0 14px 30px rgba(0,0,0,.22);
}
.jmconsult-card h3{margin:0 0 8px;font-size:16px;font-weight:800;color:var(--jm-text)}
.jmconsult-card p{margin:0 0 14px;color:var(--jm-muted);font-size:14px;line-height:1.6}
.jmconsult-btn{
  display:inline-block;padding:10px 16px;border-radius:14px;background:transparent;
  border:1px solid var(--jm-gold);color:var(--jm-gold);text-decoration:none !important;font-weight:750;
}
.jmconsult-btn:hover{background:linear-gradient(180deg,var(--jm-gold),var(--jm-gold2));color:#111;border-color:transparent}
.jmconsult-form-card{
  background:rgba(29,33,42,.85);border:1px solid var(--jm-border);border-radius:var(--jm-radius);
  padding:22px;max-width:760px;box-shadow:0 14px 30px rgba(0,0,0,.22);margin-top:18px;
}
.jmconsult-h2{margin:0 0 10px;font-size:22px;font-weight:900;color:var(--jm-text)}
.jmconsult-muted{margin:0 0 14px;color:var(--jm-muted)}
.jmconsult-note{margin:14px 0 0;color:var(--jm-muted);font-size:13px}
.jmconsult-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.jmconsult-full{grid-column:1/-1}
.jmconsult-form-grid label{display:block;font-size:12px;color:var(--jm-muted);text-transform:uppercase;letter-spacing:1.2px;margin:0 0 6px}
.jmconsult-form-grid input{
  width:100%;padding:12px 14px;border-radius:14px;border:1px solid var(--jm-border);
  background:rgba(18,21,26,.7);color:var(--jm-text);outline:none;
}
.jmconsult-form-grid input:focus{border-color:rgba(201,162,77,.65);box-shadow:0 0 0 3px rgba(201,162,77,.12)}
.jmconsult-actions{margin-top:16px}
.jmconsult-btn-solid{
  cursor:pointer;padding:12px 18px;border-radius:14px;border:1px solid rgba(0,0,0,.15);
  background:linear-gradient(180deg,var(--jm-gold),var(--jm-gold2));color:#111;font-size:14px;font-weight:900;
}
.jmconsult-btn-solid:hover{filter:brightness(1.03)}
@media (max-width:980px){.jmconsult-grid{grid-template-columns:1fr}}

.jmconsult-phone-row{
  display:grid;
  grid-template-columns: 180px 1fr;
  gap:12px;
}
.jmconsult-phone-main input{width:100%}

.jmconsult-calendar{
  margin-top: 12px;
}
.jmconsult-days{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}
.jmconsult-day{
  border:1px solid rgba(42,48,64,.95);
  background: rgba(18,21,26,.55);
  border-radius: 18px;
  padding: 12px;
}
.jmconsult-day-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:10px;
}
.jmconsult-day-label{
  color:#f6f7f9;
  font-weight:900;
}
.jmconsult-day-date{
  color:#b7bfcc;
  font-size:12px;
}
.jmconsult-times{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.jmconsult-time{
  border:1px solid rgba(255,255,255,.10);
  background: rgba(10,12,16,.60);
  color:#f6f7f9;
  border-radius: 14px;
  padding: 8px 10px;
  font-weight:900;
  cursor:pointer;
}
.jmconsult-time:hover{
  border-color: rgba(201,162,77,.55);
  box-shadow: 0 0 0 3px rgba(201,162,77,.12);
}
.jmconsult-time--taken{
  opacity:.45;
  cursor:not-allowed;
}
.jmconsult-actions-schedule{
  margin-top: 14px;
}

@media (max-width: 820px){
  .jmconsult-days{grid-template-columns: 1fr;}
  .jmconsult-phone-row{grid-template-columns: 1fr;}
}
