/*
1031Fidelis.com — Zoho Sites Custom CSS
Paste into Zoho Sites → Customization → Code → Custom CSS Editor.
*/

:root {
  --fidelis-navy: #122236;
  --fidelis-charcoal: #26313d;
  --fidelis-gold: #b28a44;
  --fidelis-gold-dark: #8c6b2f;
  --fidelis-cream: #f7f4ec;
  --fidelis-border: #ded8c8;
  --fidelis-white: #ffffff;
  --fidelis-muted: #6b7280;
  --fidelis-shadow: 0 14px 34px rgba(18, 34, 54, 0.10);
  --fidelis-radius: 14px;
  --fidelis-max-width: 1120px;
}

body {
  color: var(--fidelis-charcoal);
  background: var(--fidelis-white);
  font-family: Georgia, "Times New Roman", serif;
  line-height: 1.6;
}

p, li {
  font-size: 17px;
  line-height: 1.65;
  color: var(--fidelis-charcoal);
}

h1, h2, h3, h4 {
  color: var(--fidelis-navy);
  font-family: Georgia, "Times New Roman", serif;
  letter-spacing: -0.02em;
}

h1 {
  font-size: clamp(38px, 5vw, 58px);
  line-height: 1.05;
  margin-bottom: 18px;
}

h2 {
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.15;
  margin-top: 32px;
  margin-bottom: 14px;
}

a {
  color: var(--fidelis-navy);
  text-decoration-color: var(--fidelis-gold);
  text-underline-offset: 4px;
}

a:hover {
  color: var(--fidelis-gold-dark);
}

.fidelis-section,
.fidelis-section-alt,
.fidelis-hero,
.fidelis-cta-band {
  max-width: var(--fidelis-max-width);
  margin-left: auto;
  margin-right: auto;
}

.fidelis-section {
  padding: 58px 24px;
}

.fidelis-section-alt {
  padding: 58px 24px;
  background: var(--fidelis-cream);
  border-top: 1px solid var(--fidelis-border);
  border-bottom: 1px solid var(--fidelis-border);
}

.fidelis-hero {
  padding: 76px 24px 68px;
  background: linear-gradient(110deg, rgba(18,34,54,.94), rgba(18,34,54,.82));
  color: var(--fidelis-white);
  border-radius: 0 0 28px 28px;
}

.fidelis-hero h1,
.fidelis-hero h2,
.fidelis-hero p {
  color: var(--fidelis-white);
}

.fidelis-card {
  background: var(--fidelis-white);
  border: 1px solid var(--fidelis-border);
  border-radius: var(--fidelis-radius);
  box-shadow: var(--fidelis-shadow);
  padding: 28px;
}

.fidelis-button,
.fidelis-cta,
button,
input[type="submit"],
.zpbutton,
.zpbutton-wrapper a,
.zpbutton a,
a[class*="button"],
a[class*="Button"] {
  display: inline-block;
  background: var(--fidelis-gold) !important;
  color: var(--fidelis-white) !important;
  border: 1px solid var(--fidelis-gold) !important;
  border-radius: 999px !important;
  padding: 12px 22px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  line-height: 1.25 !important;
}

.fidelis-button:hover,
.fidelis-cta:hover,
button:hover,
input[type="submit"]:hover,
.zpbutton:hover,
.zpbutton-wrapper a:hover,
.zpbutton a:hover,
a[class*="button"]:hover,
a[class*="Button"]:hover {
  background: var(--fidelis-gold-dark) !important;
  border-color: var(--fidelis-gold-dark) !important;
}

header a,
nav a {
  color: var(--fidelis-navy) !important;
  font-weight: 700;
  text-decoration: none !important;
}

.fidelis-footer,
footer {
  background: var(--fidelis-navy);
  color: var(--fidelis-white);
}

.fidelis-footer p,
.fidelis-footer li,
footer p,
footer li {
  color: rgba(255,255,255,.88);
}

.fidelis-footer a,
footer a {
  color: var(--fidelis-white) !important;
  text-decoration-color: var(--fidelis-gold) !important;
}

.fidelis-cta-band {
  background: var(--fidelis-cream);
  border: 1px solid var(--fidelis-border);
  border-radius: 22px;
  padding: 36px 30px;
  margin-top: 34px;
  margin-bottom: 34px;
}

.fidelis-form input,
.fidelis-form textarea,
.fidelis-form select,
form input,
form textarea,
form select {
  border: 1px solid var(--fidelis-border) !important;
  border-radius: 10px !important;
  padding: 12px 14px !important;
  font-size: 16px !important;
  color: var(--fidelis-charcoal) !important;
  background: var(--fidelis-white) !important;
}

.fidelis-form label,
form label {
  color: var(--fidelis-navy) !important;
  font-weight: 700 !important;
}

.fidelis-legal {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  padding: 52px 24px;
}

.fidelis-disclaimer {
  font-size: 14px;
  color: var(--fidelis-muted);
  border-top: 1px solid var(--fidelis-border);
  padding-top: 18px;
  margin-top: 28px;
}

@media (max-width: 768px) {
  .fidelis-hero {
    padding: 54px 20px 48px;
    border-radius: 0 0 20px 20px;
  }

  .fidelis-section,
  .fidelis-section-alt {
    padding: 42px 18px;
  }

  p, li {
    font-size: 16px;
  }
}
