/* ========================================================================
   Elevate Support Carer Pty Ltd — Brand Override
   ABN: 52 688 157 413 | North Melbourne VIC 3051
   Registered NDIS Provider
   
   Brand Colours:
   Primary Blue:    #003366
   Secondary Teal:  #80CBC4
   Accent Purple:   #9575CD
   ======================================================================== */

/* ----------------------------------------
   1. ROOT VARIABLE OVERRIDES
   ---------------------------------------- */
:root {
  /* Primary / Headings / Buttons / Nav */
  --tp-heading-primary: #003366;
  --tp-theme-primary: #003366;
  --tp-blue-1: #003366;

  /* Replace all red with brand blue */
  --tp-red-1: #003366;

  /* Secondary backgrounds */
  --tp-theme-secondary: #ffffff;
  --tp-grey-1: #F5F7FA;

  /* Brand-specific tokens */
  --tp-teal: #80CBC4;
  --tp-teal-light: #E0F2F1;
  --tp-purple: #9575CD;

  /* Improved body text contrast (WCAG AA) */
  --tp-text-body: #444444;

  /* Softer border */
  --tp-border-primary: #E2E8F0;
}

/* ----------------------------------------
   2. TYPOGRAPHY & ACCESSIBILITY
   ---------------------------------------- */
body {
  color: #444444;
  line-height: 1.75;
}

p {
  color: #444444;
  line-height: 1.75;
  margin-bottom: 18px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #003366;
}

/* Focus outline for keyboard navigation */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid #80CBC4;
  outline-offset: 2px;
}

/* ----------------------------------------
   3. BUTTONS — Larger, Blue, Accessible
   ---------------------------------------- */
.tp-btn {
  background-color: #003366;
  border-color: #003366;
  color: #ffffff;
  padding: 19px 48px;
  font-size: 16px;
  font-weight: 600;
  border-radius: 4px;
  letter-spacing: 0.3px;
}

.tp-btn:hover {
  background-color: transparent;
  color: #003366;
  border-color: #003366;
}

.tp-btn-2 {
  background-color: #003366;
  color: #ffffff;
  padding: 22px 48px;
  font-weight: 600;
  border-radius: 4px;
}

.tp-btn-2:hover {
  background-color: #002244;
  color: #ffffff;
}

.tp-btn-3 {
  background-color: #003366;
  border-color: #003366;
  color: #ffffff;
  padding: 20px 48px;
  border-radius: 4px;
}

.tp-btn-3:hover {
  background-color: transparent;
  color: #003366;
}

/* CTA section button */
.tp-cta-2-btn .tp-btn {
  background-color: #ffffff;
  color: #003366;
  border-color: #ffffff;
}

.tp-cta-2-btn .tp-btn:hover {
  background-color: transparent;
  color: #ffffff;
  border-color: #ffffff;
}

/* Register / contact CTA button */
.tp-register-content a {
  color: #003366;
  font-weight: 600;
}

.tp-register-content a:hover {
  color: #80CBC4;
}

/* ----------------------------------------
   4. HEADER — Clean, Stable, Professional
   ---------------------------------------- */

/* Top bar: dark blue background */
.theme-bg {
  background-color: #003366;
}

/* Main nav bar: clean white background */
.theme-bg-2 {
  background-color: #ffffff;
}

/* Nav bar bottom border for definition */
.tp-header-bottom.theme-bg-2 {
  border-bottom: 2px solid #E0F2F1;
}

/* Sticky header */
.tp-header-sticky.theme-bg-2 {
  background-color: #ffffff;
  box-shadow: 0 2px 12px rgba(0, 51, 102, 0.08);
}

/* Nav links: dark blue text on white */
.tp-header-2 .main-menu .tp-main-menu-content ul li>a {
  color: #003366;
}

.tp-header-2 .main-menu .tp-main-menu-content ul li>a:hover {
  color: #80CBC4;
}

.tp-header-sticky .main-menu .tp-main-menu-content ul li>a {
  color: #003366;
}

.tp-header-sticky .main-menu .tp-main-menu-content ul li>a:hover {
  color: #80CBC4;
}

/* Header phone call area */
.tp-header-call-content span {
  color: #666666;
}

.tp-header-call-content a {
  color: #003366;
  font-weight: 600;
}

/* Header search icon */
.tp-header-search-btn {
  color: #003366;
}

.tp-header-search-btn:hover {
  color: #80CBC4;
}

/* Mobile hamburger */
.offcanvas-open-btn {
  color: #003366;
}

/* Header top bar text */
.tp-header-top-content span {
  color: rgba(255, 255, 255, 0.9);
}

.tp-header-top-content span a {
  color: #ffffff;
}

.tp-header-top-content span a:hover {
  color: #80CBC4;
}

/* Header top menu links */
.tp-header-top-menu a {
  color: rgba(255, 255, 255, 0.85);
}

.tp-header-top-menu a:hover {
  color: #80CBC4;
}

/* Header top social */
.tp-header-top-social span {
  color: rgba(255, 255, 255, 0.7);
}

.tp-header-top-social a {
  color: rgba(255, 255, 255, 0.7);
}

.tp-header-top-social a:hover {
  color: #80CBC4;
}

/* ----------------------------------------
   5. BREADCRUMB
   ---------------------------------------- */
.tp-breadcrumb-bg {
  position: relative;
}

.tp-breadcrumb-bg::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, rgba(0, 51, 102, 0.85) 0%, rgba(0, 51, 102, 0.7) 100%);
  z-index: 0;
}

.tp-breadcrumb {
  position: relative;
  z-index: 1;
}

/* ----------------------------------------
   6. SECTION SUBTITLES & DECORATIONS
   ---------------------------------------- */
.tp-section-subtitle {
  color: #80CBC4;
  font-weight: 700;
  letter-spacing: 2px;
}

/* Purple accent for eligible/special badges */
.tp-eligible-item {
  border-color: #80CBC4;
}

.tp-eligible-item-2 .tp-section-subtitle {
  color: #9575CD;
}

.tp-eligible-btn a {
  background-color: #003366;
  color: #ffffff;
}

.tp-eligible-btn a:hover {
  background-color: #002244;
}

/* ----------------------------------------
   7. SERVICES CARDS
   ---------------------------------------- */
.tp-services-2-icon span {
  color: #80CBC4;
}

.tp-services-2-title a:hover {
  color: #80CBC4;
}

.tp-services-2-btn a:hover {
  color: #003366;
}

/* Services sidebar */
.tp-services-sidebar-list a.active,
.tp-services-sidebar-list a:hover {
  background-color: #003366;
  color: #ffffff;
}

/* Feature icons */
.tp-feature-2-icon span {
  color: #80CBC4;
}

.tp-feature-2-title a:hover {
  color: #80CBC4;
}

/* Processing/steps section */
.tp-processing-2-count-number span {
  color: #80CBC4;
}

/* ----------------------------------------
   8. CTA SECTION
   ---------------------------------------- */
.tp-cta-2-bg {
  position: relative;
}

.tp-cta-2-bg::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 51, 102, 0.88);
  z-index: 0;
}

.tp-cta-2-wrapper {
  position: relative;
  z-index: 1;
}

.tp-cta-2-wrapper .tp-section-subtitle {
  color: #80CBC4;
}

.tp-cta-2-wrapper .tp-section-title {
  color: #ffffff;
}

/* ----------------------------------------
   9. TESTIMONIAL
   ---------------------------------------- */
.tp-testimonial-rating span i {
  color: #80CBC4;
}

/* ----------------------------------------
   10. BACK TO TOP
   ---------------------------------------- */
.back-to-top-btn {
  background: #003366;
  box-shadow: 0px 8px 16px rgba(0, 51, 102, 0.3);
}

.back-to-top-btn:hover {
  background-color: #002244;
}

/* ----------------------------------------
   11. PRELOADER
   ---------------------------------------- */
.tp-preloader-circle svg circle:last-child {
  stroke: #003366;
}

/* ----------------------------------------
   12. FOOTER
   ---------------------------------------- */
.footr-area {
  background-color: #003366 !important;
}

/* Footer eligible section background fix */
.tp-footer-eligible {
  background-color: transparent;
}

/* Footer link hovers */
.tp-footer-widget-content-list-item a:hover {
  color: #80CBC4;
}

.tp-footer-widget-link ul li a:hover {
  color: #80CBC4;
  opacity: 1;
}

/* Footer social icons */
.tp-footer-social a:hover {
  color: #80CBC4;
}

/* Footer copyright */
.tp-footer-copyright p a:hover {
  color: #80CBC4;
}

/* Footer bottom border */
.tp-footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.15);
}

/* Newsletter button */
.tp-footer-widget-newsletter-submit button {
  background-color: #80CBC4;
  color: #003366;
  font-weight: 600;
}

.tp-footer-widget-newsletter-submit button:hover {
  background-color: #ffffff;
  color: #003366;
}

/* ----------------------------------------
   13. CONTACT PAGE
   ---------------------------------------- */
.tp-contact-info-icon {
  color: #80CBC4;
}

.tp-contact-form-input input:focus,
.tp-contact-form-input textarea:focus {
  border-color: #80CBC4;
}

/* ----------------------------------------
   14. FAQ / ACCORDION
   ---------------------------------------- */
.accordion-button:not(.collapsed) {
  background-color: #E0F2F1;
  color: #003366;
}

.accordion-button::after {
  color: #003366;
}

.tp-faq-call a {
  color: #003366;
}

.tp-faq-call a:hover {
  color: #80CBC4;
}

/* ----------------------------------------
   15. OFFCANVAS / MOBILE MENU
   ---------------------------------------- */
.offcanvas__content .offcanvas__btn .tp-btn {
  background-color: #003366;
  border-color: #003366;
}

/* ----------------------------------------
   16. ABOUT COUNTER
   ---------------------------------------- */
.tp-about-2-counter {
  background-color: #003366;
}

.tp-about-2-counter-count {
  color: #ffffff;
}

/* Selection color */
*::-moz-selection {
  background: #003366;
  color: #ffffff;
}

::selection {
  background: #003366;
  color: #ffffff;
}

/* ----------------------------------------
   17. INCREASED WHITESPACE
   ---------------------------------------- */
/* NOTE: Do NOT apply generic padding overrides to breadcrumb sections
   because .tp-breadcrumb-bg needs padding-top: 265px to clear the
   position:absolute header. */
section:not(.breadcrumb-area):not(.breadcrumb-wrap) {
  padding-top: 10px;
  padding-bottom: 10px;
}

/* Ensure breadcrumb always clears the header */
.breadcrumb-area,
.breadcrumb-wrap {
  padding-top: 265px;
  padding-bottom: 168px;
}

/* ----------------------------------------
   18. SLIDER OVERLAY — Professional look
   ---------------------------------------- */
.tp-slider-item-2 .tp-slider-bg::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, rgba(0, 51, 102, 0.75) 0%, rgba(0, 51, 102, 0.45) 100%);
  z-index: 0;
}

.tp-slider-item-2 .container {
  position: relative;
  z-index: 1;
}

/* Slider button */
.tp-slider-item-2 .tp-btn-2 {
  background-color: #003366;
  border: 2px solid #ffffff;
}

.tp-slider-item-2 .tp-btn-2:hover {
  background-color: #ffffff;
  color: #003366;
}

/* ----------------------------------------
   19. REGISTER AREA (Banner CTA)  
   ---------------------------------------- */
.register-area.theme-bg-2 {
  background-color: #E0F2F1 !important;
  border-top: 3px solid #80CBC4;
}

/* ----------------------------------------
   20. PROJECT CARDS
   ---------------------------------------- */
.tp-project-2-content {
  background-color: #003366;
}

.tp-project-2-title a {
  color: #ffffff;
}

.tp-project-2-title a:hover {
  color: #80CBC4;
}

.tp-project-2-icon a span {
  color: #80CBC4;
}

/* ----------------------------------------
   21. ERROR PAGE
   ---------------------------------------- */
.tp-error-btn .tp-btn {
  background-color: #003366;
  border-color: #003366;
}

/* ----------------------------------------
   22. SEARCH OVERLAY
   ---------------------------------------- */
.tpsearchbar {
  background-color: #003366;
}

.tpsearchbar__close {
  color: #ffffff;
}

.tpsearchbar__title {
  color: #ffffff;
}

.tpsearchbar__search-btn {
  background-color: #80CBC4;
  color: #003366;
}

/* ----------------------------------------
   23. CIRCLE CHECK ICON (About lists)
   ---------------------------------------- */
.tp-about-list ul li i {
  color: #80CBC4;
}