/* Font Imports */
@import url('https://fonts.googleapis.com/css2?family=PT+Serif&family=Open+Sans+Condensed:wght@700&display=swap');

/* Colors */
:root {
  --primary-color: #D71920; /* Red from ENR guide */
  --link-color: #0072B4; /* Secondary blue */
  --background-color: #FFFFFF;
  --gray-color: #8F9194; /* Grey */
}

/* Typography */
body {
f ont-family: 'Helvetica Neue Light', sans-serif !important;
  font-size: var(--base-font-size);
}

h1, h2, h3, h4, h5 {
  font-family: 'Helvetica Neue Condensed Bold', sans-serif; /* Headline font */
  font-weight: bold;
}

/* Font Sizes */
:root {
  --base-font-size: 16px;
  --small-font-size: 0.875rem;
  --medium-font-size: 1rem;
  --large-font-size: 1.45rem;
  --icon-size: 1rem;
}

/* Link Styles */
a,
a:link,
a:visited {
  color: var(--link-color);
  text-decoration: none;
}
a:hover,
a:focus {
  color: var(--primary-color);
  text-decoration: underline;
}
::selection {
  background-color: var(--primary-color);
  color: #fff;
}

/* Input Focus Styles */
input:focus, select:focus, 
.drg-element-type-standard-field.drg-element:focus {
  border-bottom: 2px solid var(--primary-color) !important;
  outline: none;
}

/* Container Styling */
.container {
  top: 20px;
}

/* Media Queries */
@media (max-width: 768px) {
  article[class^="content"] {
    padding: 0;
  }
}

@media (max-width: 767px) {
  input[type="text"], input[type="password"], input[type="email"], 
  textarea, select {
    font-size: var(--base-font-size) !important;
  }
  h1, h2, h3, h4, h5 {
    font-size: var(--medium-font-size) !important;
  }
}

@media (max-width: 480px) {
  input[type="text"], input[type="password"], input[type="email"], 
  textarea, select {
    font-size: var(--base-font-size) !important;
  }
  h1 {
    font-size: 1.05rem !important;
  }
  h2 {
    font-size: 1rem !important;
  }
  h3 {
    font-size: 0.875rem !important;
  }
  h4 {
    font-size: 0.75rem !important;
  }
  h5 {
    font-size: 0.625rem !important;
  }
}
/* Checkbox Styling */
input[type="checkbox"] {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    width: 20px !important;
    height: 20px !important;
    margin-right: 10px !important;
    background-color: #FFFFFF !important;
    border: 2px solid #8F9194 !important; /* ENR gray */
    border-radius: 4px !important;
    outline: none !important;
    cursor: pointer !important;
    vertical-align: middle !important;
}

/* Checkbox Checked State */
input[type="checkbox"]:checked {
    background-color: #D71920 !important; /* ENR red */
    border-color: #D71920 !important; /* ENR red */
}

/* Checkbox Checkmark */
input[type="checkbox"]::before {
    content: "\2713" !important;
    display: inline-block !important;
    width: 20px !important;
    height: 20px !important;
    line-height: 1 !important;
    color: #FFFFFF !important;
    font-size: 15px !important;
    font-family: 'Open Sans Condensed', sans-serif !important; /* Matching ENR font */
    font-weight: bold !important;
    text-align: center !important;
}
