.frame-type-plusnetvcheck_availabilitycheck > header {
  width: min(1200px, calc(100% - 48px));
  margin: 0 auto 20px;
}

.frame-type-plusnetvcheck_availabilitycheck > header h1,
.frame-type-plusnetvcheck_availabilitycheck > header h2,
.frame-type-plusnetvcheck_availabilitycheck > header h3 {
  margin: 0;
  color: #0b2850;
  font-size: clamp(26px, 3vw, 40px);
  line-height: 1.15;
}

.plusnet-vcheck {
  --vcheck-navy: #0b2850;
  --vcheck-orange: #f36c21;
  --vcheck-border: #cbd5e1;
  box-sizing: border-box;
  width: min(1200px, calc(100% - 48px));
  margin-inline: auto;
  padding: clamp(24px, 4vw, 48px);
  border: 1px solid #e4e9f0;
  border-radius: 20px;
  background: #f5f7fa;
  box-shadow: 0 16px 40px rgba(11, 40, 80, 0.08);
  color: var(--vcheck-navy);
  font: inherit;
}

.plusnet-vcheck *, .plusnet-vcheck *::before, .plusnet-vcheck *::after { box-sizing: border-box; }

.plusnet-vcheck__form {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 22px 24px;
  align-items: end;
}

.plusnet-vcheck__form > div:nth-child(1), .plusnet-vcheck__form > div:nth-child(4) { grid-column: span 4; }
.plusnet-vcheck__form > div:nth-child(2), .plusnet-vcheck__form > div:nth-child(3) { grid-column: span 8; }

.plusnet-vcheck__form label {
  display: block;
  margin-bottom: 8px;
  color: var(--vcheck-navy);
  font-size: 15px;
  font-weight: 600;
}

.plusnet-vcheck__form input {
  width: 100%;
  min-height: 52px;
  padding: 12px 16px;
  border: 1px solid var(--vcheck-border);
  border-radius: 10px;
  outline: 0;
  background: #fff;
  color: var(--vcheck-navy);
  font: inherit;
  transition: border-color 160ms ease, box-shadow 160ms ease;
}

.plusnet-vcheck__form input:hover { border-color: #94a3b8; }
.plusnet-vcheck__form input:focus { border-color: var(--vcheck-orange); box-shadow: 0 0 0 4px rgba(243, 108, 33, 0.16); }

.plusnet-vcheck__form button {
  grid-column: 1 / -1;
  justify-self: start;
  min-height: 52px;
  padding: 15px 28px;
  border: 0;
  border-radius: 9999px;
  background: var(--vcheck-navy);
  color: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 15px;
  font-weight: 600;
  transition: background-color 160ms ease, transform 160ms ease;
}

.plusnet-vcheck__form button:hover { background: var(--vcheck-orange); transform: translateY(-1px); }
.plusnet-vcheck__form button:focus-visible { outline: 3px solid rgba(243, 108, 33, 0.35); outline-offset: 3px; }

.plusnet-vcheck__result { margin-top: 32px; overflow-x: auto; }
.plusnet-vcheck__result > p { margin: 0; padding: 16px 18px; border-left: 4px solid var(--vcheck-orange); border-radius: 8px; background: #fff; }
.plusnet-vcheck__result h3 { margin: 0 0 18px; color: var(--vcheck-navy); font-size: clamp(20px, 2.5vw, 28px); }

.plusnet-vcheck-table {
  width: 100%;
  overflow: hidden;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid #dbe2ea;
  border-radius: 12px;
  background: #fff;
}

.plusnet-vcheck-table th, .plusnet-vcheck-table td { padding: 15px 18px; border-bottom: 1px solid #e4e9f0; text-align: left; white-space: nowrap; }
.plusnet-vcheck-table th { background: var(--vcheck-navy); color: #fff; font-size: 14px; font-weight: 600; }
.plusnet-vcheck-table tbody tr:last-child td { border-bottom: 0; }
.plusnet-vcheck-table tbody tr:nth-child(even) { background: #f7f9fb; }

@media (max-width: 760px) {
  .frame-type-plusnetvcheck_availabilitycheck > header { width: min(100% - 24px, 1200px); }
  .plusnet-vcheck { width: min(100% - 24px, 1200px); padding: 24px 18px; border-radius: 14px; }
  .plusnet-vcheck__form { grid-template-columns: 1fr; gap: 18px; }
  .plusnet-vcheck__form > div:nth-child(n), .plusnet-vcheck__form button { grid-column: 1; }
  .plusnet-vcheck__form button { width: 100%; justify-self: stretch; }
  .plusnet-vcheck-table th, .plusnet-vcheck-table td { padding: 12px 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .plusnet-vcheck__form input, .plusnet-vcheck__form button { transition: none; }
}
