body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; background-color: #ffffff; color: #0f2744; line-height: 1.6; } .container { max-width: 1200px; } .navbar-brand:hover, .nav-link:hover { opacity: 0.8; } .btn-primary { background-color: #2563eb; border-color: #2563eb; color: #ffffff; transition: background-color 0.2s, transform 0.2s; } .btn-primary:hover { background-color: #1e3a8a; border-color: #1e3a8a; color: #ffffff; transform: translateY(-1px); } .btn-primary:focus { box-shadow: 0 0 0 0.2rem rgba(37, 99, 235, 0.5); } .btn-outline-light { border-color: #ffffff; color: #ffffff; } .btn-outline-light:hover { background-color: #ffffff; color: #0f2744; } .btn-outline-light:focus { box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.5); } .hero-section { background-color: #e8f4fc; padding: 80px 0; } .hero-section h1 { color: #0f2744; font-weight: 800; font-size: 2.5rem; margin-bottom: 1.5rem; } .hero-section p { color: #1e3a8a; font-size: 1.25rem; max-width: 600px; } .section-alt { background-color: #ffffff; padding: 60px 0; } .section-dark { background-color: #0f2744; color: #e8f4fc; padding: 60px 0; } .section-dark h2 { color: #e8f4fc; } .section-dark p { color: #b0c4de; } .bg-terracotta { background-color: #1e3a8a; } .text-terracotta { color: #e8f4fc; } .card { border: 1px solid #e8f4fc; transition: transform 0.2s, box-shadow 0.2s; margin-bottom: 1.5rem; } .card:hover { transform: translateY(-3px); box-shadow: 0 4px 12px rgba(15, 39, 68, 0.1); } .card-title { color: #0f2744; font-weight: 700; } .card-text { color: #0f2744; } .bg-dark-brown { background-color: #0f2744; } h2 { color: #1e3a8a; font-weight: 700; margin-bottom: 2rem; } h3 { color: #1e3a8a; font-weight: 600; } .process-step { display: flex; align-items: flex-start; margin-bottom: 1.5rem; } .step-number { background-color: #2563eb; color: #ffffff; width: 40px; height: 40px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: bold; margin-right: 15px; flex-shrink: 0; } .faq-item { border-bottom: 1px solid #e8f4fc; padding: 15px 0; } .faq-item:last-child { border-bottom: none; } .faq-question { font-weight: 600; color: #0f2744; cursor: pointer; } .faq-answer { display: none; color: #1e3a8a; margin-top: 10px; } .faq-item.active .faq-answer { display: block; } a { color: #2563eb; text-decoration: none; } a:hover { color: #1e3a8a; text-decoration: underline; } .navbar-toggler-icon { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(15, 39, 68, 1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); } .u-unique-pattern { opacity: 0.05; } .uniq-placeholder { border: 2px dashed #1e3a8a; background: #e8f4fc; height: 200px; display: flex; align-items: center; justify-content: center; color: #0f2744; } .form-control { border-color: #1e3a8a; } .form-control:focus { border-color: #2563eb; box-shadow: 0 0 0 0.2rem rgba(37, 99, 235, 0.25); } .form-label { color: #0f2744; font-weight: 500; } .btn-dark { background-color: #0f2744; border-color: #0f2744; } .btn-dark:hover { background-color: #1e3a8a; border-color: #1e3a8a; } .btn-light { background-color: #e8f4fc; border-color: #e8f4fc; color: #0f2744; } .btn-light:hover { background-color: #d0e8fc; border-color: #d0e8fc; color: #0f2744; } .badge { background-color: #2563eb; color: #ffffff; } .alert-info { background-color: #e8f4fc; border-color: #1e3a8a; color: #0f2744; } .list-group-item { border-color: #e8f4fc; } .list-group-item-action:hover { background-color: #e8f4fc; } .text-white { color: #ffffff !important; } .text-light { color: #f8f9fa !important; } .bg-light { background-color: #f8f9fa !important; } .bg-white { background-color: #ffffff !important; } .bg-dark { background-color: #0f2744 !important; } .bg-primary { background-color: #2563eb !important; } .text-primary { color: #2563eb !important; } .text-dark { color: #0f2744 !important; } .border-light { border-color: #e8f4fc !important; } .border-dark { border-color: #0f2744 !important; } .shadow-sm { box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; } .shadow-lg { box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; } .rounded { border-radius: 0.25rem !important; } .rounded-pill { border-radius: 50rem !important; } .img-fluid { max-width: 100%; height: auto; } .opacity-100 { opacity: 1 !important; } .opacity-75 { opacity: 0.75 !important; } .opacity-50 { opacity: 0.5 !important; } .opacity-25 { opacity: 0.25 !important; } .fw-bold { font-weight: 700 !important; } .fw-normal { font-weight: 400 !important; } .fs-1 { font-size: calc(1.3rem + 0.6vw) !important; } .fs-2 { font-size: calc(1.325rem + 0.9vw) !important; } .fs-3 { font-size: calc(1.3rem + 0.6vw) !important; } .fs-4 { font-size: calc(1.275rem + 0.3vw) !important; } .lead { font-size: 1.25rem; font-weight: 300; } .text-center { text-align: center !important; } .text-start { text-align: left !important; } .text-end { text-align: right !important; } .mb-0 { margin-bottom: 0 !important; } .mb-1 { margin-bottom: 0.25rem !important; } .mb-2 { margin-bottom: 0.5rem !important; } .mb-3 { margin-bottom: 1rem !important; } .mb-4 { margin-bottom: 1.5rem !important; } .mb-5 { margin-bottom: 3rem !important; } .mt-0 { margin-top: 0 !important; } .mt-1 { margin-top: 0.25rem !important; } .mt-2 { margin-top: 0.5rem !important; } .mt-3 { margin-top: 1rem !important; } .mt-4 { margin-top: 1.5rem !important; } .mt-5 { margin-top: 3rem !important; } .p-0 { padding: 0 !important; } .p-1 { padding: 0.25rem !important; } .p-2 { padding: 0.5rem !important; } .p-3 { padding: 1rem !important; } .p-4 { padding: 1.5rem !important; } .p-5 { padding: 3rem !important; } .px-0 { padding-left: 0 !important; padding-right: 0 !important; } .px-1 { padding-left: 0.25rem !important; padding-right: 0.25rem !important; } .px-2 { padding-left: 0.5rem !important; padding-right: 0.5rem !important; } .px-3 { padding-left: 1rem !important; padding-right: 1rem !important; } .px-4 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; } .px-5 { padding-left: 3rem !important; padding-right: 3rem !important; } .py-0 { padding-top: 0 !important; padding-bottom: 0 !important; } .py-1 { padding-top: 0.25rem !important; padding-bottom: 0.25rem !important; } .py-2 { padding-top: 0.5rem !important; padding-bottom: 0.5rem !important; } .py-3 { padding-top: 1rem !important; padding-bottom: 1rem !important; } .py-4 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; } .py-5 { padding-top: 3rem !important; padding-bottom: 3rem !important; } .d-flex { display: flex !important; } .d-inline-flex { display: inline-flex !important; } .d-block { display: block !important; } .d-inline { display: inline !important; } .d-none { display: none !important; } .justify-content-start { justify-content: flex-start !important; } .justify-content-center { justify-content: center !important; } .justify-content-end { justify-content: flex-end !important; } .justify-content-between { justify-content: space-between !important; } .justify-content-around { justify-content: space-around !important; } .align-items-start { align-items: flex-start !important; } .align-items-center { align-items: center !important; } .align-items-end { align-items: flex-end !important; } .gap-1 { gap: 0.25rem !important; } .gap-2 { gap: 0.5rem !important; } .gap-3 { gap: 1rem !important; } .gap-4 { gap: 1.5rem !important; } .gap-5 { gap: 3rem !important; } .row { display: flex; flex-wrap: wrap; margin-left: -0.5rem; margin-right: -0.5rem; } .col { flex: 1 0 0%; padding-left: 0.5rem; padding-right: 0.5rem; } .col-12 { flex: 0 0 100%; max-width: 100%; padding-left: 0.5rem; padding-right: 0.5rem; } .col-md-4 { flex: 0 0 33.333333%; max-width: 33.333333%; padding-left: 0.5rem; padding-right: 0.5rem; } .col-md-6 { flex: 0 0 50%; max-width: 50%; padding-left: 0.5rem; padding-right: 0.5rem; } .col-md-8 { flex: 0 0 66.666667%; max-width: 66.666667%; padding-left: 0.5rem; padding-right: 0.5rem; } .col-md-12 { flex: 0 0 100%; max-width: 100%; padding-left: 0.5rem; padding-right: 0.5rem; } @media (max-width: 768px) { .col-md-4, .col-md-6, .col-md-8, .col-md-12 { flex: 0 0 100%; max-width: 100%; } .hero-section h1 { font-size: 2rem; } .navbar-collapse { background-color: #e8f4fc; padding: 1rem; border-top: 1px solid #1e3a8a; } } @media (min-width: 769px) { .container { padding-left: 15px; padding-right: 15px; } }
.card img,
.bg-light img,
.container img {
  display: block;
  width: 100%;
  height: auto;
}
/* Font safety overrides */
:root {
  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
}
body,
h1,
h2,
h3,
h4,
h5,
h6,
.navbar,
.btn,
input,
textarea,
select {
  font-family: var(--font-sans);
}
/* WP Generator feature helpers */
.reading-progress {
  position: fixed;
  top: 0;
  left: 0;
  height: 4px;
  width: 0%;
  background: linear-gradient(90deg, #0ea5e9, #22c55e);
  z-index: 9999;
  transition: width 120ms ease-out;
}
.scroll-top {
  position: fixed;
  right: 20px;
  bottom: 24px;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: none;
  background: #111827;
  color: #ffffff;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.2);
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 200ms ease, transform 200ms ease;
  z-index: 9998;
}
.scroll-top.is-visible {
  opacity: 0.95;
  transform: translateY(0);
}
.reveal-on-scroll {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 600ms ease, transform 600ms ease;
}
.reveal-on-scroll.is-visible {
  opacity: 1;
  transform: translateY(0);
}

