.hcpb-quote{
  --quote-navy:#0a1f44;
  font-family:Inter,system-ui,sans-serif;
  max-width:420px;
  margin:0 auto;
}
.hcpb-quote-card{
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 24px 60px rgba(0,0,0,.4);
  background:linear-gradient(165deg,rgba(10,31,68,.97),rgba(12,40,80,.92));
  backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.1);
}
.hcpb-quote-promo{
  background:#fff;
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 18px;color:var(--quote-navy);font-weight:700;font-size:14px;
}
.hcpb-quote-promo-default{
  justify-content:center;text-align:center;
}
.hcpb-quote-promo-default #hq-default-heading{
  font-size:15px;font-weight:800;letter-spacing:-.01em;
}
.hcpb-quote-promo-coupon{gap:12px;flex-wrap:wrap}
.hcpb-quote-code{
  display:flex;align-items:center;gap:8px;
  border:2px dashed #cbd5e1;border-radius:999px;
  padding:7px 14px;font-weight:800;font-size:13px;
}
.hcpb-quote-copy{background:none;border:none;cursor:pointer;font-size:14px;opacity:.7;padding:0}
.hcpb-quote-body{padding:28px 22px 32px;color:#fff}
.hcpb-quote-title{font-size:28px;font-weight:800;margin:0;letter-spacing:-.02em}
.hcpb-quote-sub{margin:10px 0 22px;opacity:.88;font-size:14px;line-height:1.5}
.hcpb-quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hcpb-quote-field label{display:block;font-size:12px;font-weight:600;margin-bottom:7px;opacity:.92}
.hcpb-quote-input-wrap{position:relative}
.hcpb-quote-input{
  width:100%;box-sizing:border-box;
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);
  border-radius:999px;padding:13px 42px 13px 18px;color:#fff;font-size:16px;
  color-scheme:dark;
  touch-action:manipulation;
}
.hcpb-quote-date-text{
  appearance:none;
  -webkit-appearance:none;
  padding-right:48px;
  cursor:text;
  position:relative;
  z-index:1;
}
.hcpb-quote-date-icon-hit{
  position:absolute;
  right:8px;
  top:50%;
  transform:translateY(-50%);
  width:40px;
  height:40px;
  z-index:10;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  pointer-events:auto;
  cursor:pointer;
  border-radius:999px;
}
.hcpb-quote-date-svg{
  display:block;
  flex-shrink:0;
  pointer-events:none;
  opacity:.92;
}
.hcpb-quote-date-native{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  opacity:0;
  cursor:pointer;
  z-index:2;
  font-size:16px;
  color-scheme:dark;
  touch-action:manipulation;
  pointer-events:auto;
}
.hcpb-quote-date-icon-hit:focus-visible{
  outline:2px solid rgba(255,255,255,.45);
  outline-offset:2px;
}
.hcpb-quote-promo-hint{
  display:block;margin-top:6px;font-size:11px;font-weight:500;opacity:.85;line-height:1.35;
}
.hcpb-quote-promo-hint strong{letter-spacing:.04em}
.hcpb-quote-input-full{padding-right:18px}
.hcpb-quote-time-wrap .hcpb-quote-time{
  width:100%;box-sizing:border-box;
  display:grid;grid-template-columns:1fr auto 1fr;gap:4px;align-items:center;
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);
  border-radius:999px;padding:10px 42px 10px 14px;color:#fff;
}
.hcpb-quote-time-h,.hcpb-quote-time-m{
  width:100%;min-width:0;appearance:auto;cursor:pointer;
  background:transparent;border:none;color:#fff;font-size:14px;font-weight:600;
  text-align:center;padding:4px 2px;
}
.hcpb-quote-time-h:focus,.hcpb-quote-time-m:focus{outline:2px solid rgba(255,255,255,.35);border-radius:6px}
.hcpb-quote-time-h option,.hcpb-quote-time-m option{background:#0a1f44;color:#fff}
.hcpb-quote-time-sep{font-weight:800;opacity:.85;line-height:1}
.hcpb-quote-time-hint{
  display:block;margin-top:6px;font-size:11px;font-weight:500;opacity:.78;line-height:1.35;
}
.hcpb-quote-ico{
  position:absolute;right:14px;top:50%;transform:translateY(-50%);
  font-size:15px;opacity:.85;
}
.hcpb-quote-time-ico{pointer-events:none}
.hcpb-quote-full{grid-column:1/-1;margin-top:2px}
.hcpb-quote-btn{
  width:100%;margin-top:20px;padding:15px;
  background:#fff;color:var(--quote-navy);border:none;border-radius:999px;
  font-size:16px;font-weight:800;cursor:pointer;
  transition:transform .15s,box-shadow .15s;
}
.hcpb-quote-btn:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(0,0,0,.25)}
