/* Global Reset & Box Sizing */
html, body {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  box-sizing: border-box;
  font-family: Arial, sans-serif;
  line-height: 1.6;
}

*, *::before, *::after {
  box-sizing: inherit;
}

/* Headings */
h1, h2 {
  margin-bottom: 0.5em;
  font-weight: bold;
}

/* Form Layout */
form {
  width: 100%;
}

form > div {
  margin-bottom: 1em;
}

label {
  display: block;
  margin-bottom: 0.25em;
  font-weight: bold;
}

input[type="text"],
input[type="email"],
input[type="number"],
input[type="tel"],
select,
textarea {
  width: 100%;
  padding: 8px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 1rem;
}

textarea {
  resize: vertical;
}

/* Inline Small Inputs */
.inline {
  display: inline-block;
  vertical-align: top;
  margin-right: 1em;
}

.inline input,
.inline textarea {
  width: auto;
  min-width: 80px;
}

/* E-signature Pad */
.signature-pad {
  position: relative;
  border: 1px solid #ccc;
  border-radius: 4px;
  width: 100%;
  height: 150px;
  margin-bottom: 8px;
}
.signature-pad canvas {
  width: 100%;
  height: 100%;
}
.signature-pad button {
  position: absolute;
  top: 8px;
  right: 8px;
  background: #e74c3c;
  color: #fff;
  border: none;
  padding: 4px 8px;
  border-radius: 3px;
  cursor: pointer;
  font-size: 12px;
}

/* Submit Button */
button[type="submit"],
input[type="submit"] {
  display: inline-block;
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  background: #006837;
  color: #fff;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  margin-top: 0.5rem;
}
button[type="submit"]:hover,
input[type="submit"]:hover {
  background: #00542e;
}

/* Indemnity List Styling */
.indemnity {
  width: 100%;
  margin: 2rem 0;
  padding: 0;
}
.indemnity ol {
/*   counter-reset: item; */
  margin-left: 1.5rem;
  padding: 0;
}
.indemnity li {
  position: relative;
  margin-bottom: 1em;
  padding-left: 1.5em;
}
  /* .indemnity li::before {
 counter-increment: item; 
  content: counter(item) ".";
  position: absolute;
  left: 0;
  font-weight: bold;
}*/
.indemnity strong {
  font-weight: bold;
}

/* Policies Two-Column Grid */
.policies {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2rem;
  width: 100%;
  margin: 2rem 0;
}
.policies ol {
  list-style: none;
  counter-reset: section;
  margin: 0;
  padding: 0;
}
.policies li {
  position: relative;
  padding-left: 2.5rem;
  margin-bottom: 1.5rem;
}
/* .policies li::before {
  counter-increment: section;
  content: counter(section, upper-alpha) ".";
  position: absolute;
  left: 0;
  top: 0;
  font-weight: bold; */
}
.policies li > strong {
  display: block;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
  font-weight: bold;
}
.policies li ul {
  margin: 0.5rem 0 0.5rem 1.5rem;
  padding: 0;
  list-style: disc;
}
.policies li ul li {
  margin: 0.3rem 0;
}
.policies li p {
  margin: 0.5rem 0;
}

/* Responsive Adjustments */
@media (max-width: 480px) {
  .inline { display: block; width: 100%; margin-right: 0; }
  .signature-pad { height: 120px; }
}