/* ============================================
   Code Infinity Nepal - Brand Color Overrides
   Non-destructive: loaded AFTER all other CSS
   ============================================ */

:root {
  /* Primary Brand Colors (from logo) */
  --base-skin: #000000; /* Primary: Pure black (logo main) */
  --base-skin-navy: #000003; /* Navy edge highlight (from logo) */
  --base-skin-steel: #cfcfcf; /* Steel gray (logo metallic) */
  --base-skin-steel-light: #d4d4d4; /* Lighter steel for hover */
  --base-skin-steel-dark: #bfbfbf; /* Darker steel for borders */

  /* Dark Scale */
  --base-dark: #0a0a0a; /* Near-black for dark backgrounds */
  --base-black: #000000; /* Pure black */

  /* Light/Gray Scale (for backgrounds, cards, borders) */
  --base-grey: #f8f8f8; /* Light gray background (main) */
  --base-grey-light: #f0f0f0; /* Card backgrounds */
  --base-grey-medium: #d4d4d4; /* Steel gray (from logo) - borders, dividers */
  --base-grey-dark: #bfbfbf; /* Darker steel - subtle borders */

  /* White */
  --base-white: #ffffff;

  /* Text Colors - HIGH CONTRAST for accessibility */
  --base-bodyfont-color: #333333; /* Dark gray for body text (WCAG AA on white) */
  --base-bodyfont-color-muted: #555555; /* Muted body text */
  --base-headingfont-color: #000000; /* Pure black for headings (WCAG AAA) */
  --base-text-on-dark: #ffffff; /* White text on dark backgrounds */
  --base-text-on-dark-muted: #cccccc; /* Muted text on dark */

  /* Gradient (matching logo metallic effect) */
  --base-first-gradientcolor: #000000; /* Black start */
  --base-second-gradientcolor: #333333; /* Dark gray end */

  /* Borders */
  --base-bordercolor: rgba(0, 0, 0, 0.15);
  --base-border-color-white: #ffffff;
  --base-border-color-steel: #d4d4d4;

  /* Hover/Active/Focus States (steel highlight effect) */
  --base-hover-color: #d4d4d4; /* Steel highlight on hover (light bg) */
  --base-hover-color-dark: #bfbfbf; /* Steel highlight on hover (dark bg) */
  --base-active-color: #000000; /* Black on active */
  --base-focus-ring: #000000; /* Focus indicator */

  /* Button Variants */
  --btn-primary-bg: #000000; /* Primary button: black */
  --btn-primary-text: #ffffff; /* Primary button text: white */
  --btn-primary-hover-bg: #333333; /* Primary button hover: dark gray */
  --btn-primary-hover-text: #ffffff;
  --btn-secondary-bg: #ffffff; /* Secondary button: white */
  --btn-secondary-text: #000000; /* Secondary button text: black */
  --btn-secondary-border: #d4d4d4; /* Secondary button border: steel */
  --btn-secondary-hover-bg: #f0f0f0; /* Secondary button hover: light gray */
  --btn-secondary-hover-text: #000000;
  --btn-outline-bg: transparent; /* Outline button: transparent */
  --btn-outline-text: #000000; /* Outline button text: black */
  --btn-outline-border: #d4d4d4; /* Outline button border: steel */
  --btn-outline-hover-bg: #d4d4d4; /* Outline button hover: steel */
  --btn-outline-hover-text: #000000;

  /* Link Colors */
  --link-color: #000000; /* Default link: black */
  --link-hover-color: #d4d4d4; /* Link hover: steel */
  --link-active-color: #333333; /* Link active: dark gray */

  /* Form Elements */
  --input-bg: #ffffff; /* Input background: white */
  --input-border: #d4d4d4; /* Input border: steel */
  --input-focus-border: #000000; /* Input focus border: black */
  --input-placeholder: #999999; /* Input placeholder: medium gray */
  --input-text: #333333; /* Input text: dark gray */

  /* Card/Section Backgrounds */
  --card-bg: #ffffff; /* Card background: white */
  --card-border: #e8e8e8; /* Card border: light gray */
  --card-hover-border: #d4d4d4; /* Card hover border: steel */
  --section-bg-light: #f8f8f8; /* Light section background */
  --section-bg-white: #ffffff; /* White section background */
  --section-bg-dark: #0a0a0a; /* Dark section background */

  /* Navigation */
  --nav-bg: #ffffff; /* Nav background: white */
  --nav-border: #e8e8e8; /* Nav border: light gray */
  --nav-link-color: #333333; /* Nav link: dark gray */
  --nav-link-hover: #000000; /* Nav link hover: black */
  --nav-link-active: #000000; /* Nav link active: black */
  --nav-dropdown-bg: #ffffff; /* Dropdown background: white */
  --nav-dropdown-border: #e8e8e8; /* Dropdown border: light gray */

  /* Footer */
  --footer-bg: #f8f8f8; /* Footer background: light gray */
  --footer-text: #333333; /* Footer text: dark gray */
  --footer-link: #555555; /* Footer link: medium gray */
  --footer-link-hover: #000000; /* Footer link hover: black */
  --footer-border: #e8e8e8; /* Footer border: light gray */

  /* Hero/Banner */
  --hero-overlay: rgba(0, 0, 0, 0.6); /* Hero overlay for text readability */
  --hero-text: #ffffff; /* Hero text: white */
  --hero-text-muted: #e0e0e0; /* Hero muted text: light gray */

  /* Badge/Tag */
  --badge-bg: #f0f0f0; /* Badge background: light gray */
  --badge-text: #333333; /* Badge text: dark gray */
  --badge-primary-bg: #000000; /* Primary badge: black */
  --badge-primary-text: #ffffff; /* Primary badge text: white */

  /* Social Icons */
  --social-bg: #f0f0f0; /* Social icon background */
  --social-color: #333333; /* Social icon color */
  --social-hover-bg: #000000; /* Social icon hover bg */
  --social-hover-color: #ffffff; /* Social icon hover color */
}

/* ============================================
   Component-Specific Overrides
   ============================================ */

/* Button hover effects - ensure text stays visible */
.prt-btn {
  transition: all 0.3s ease;
}

.prt-btn:hover {
  /* Primary button on hover */
  background-color: var(--btn-primary-hover-bg, #333333) !important;
  color: var(--btn-primary-hover-text, #ffffff) !important;
}

.prt-btn.prt-btn-style-fill.prt-btn-color-darkcolor:hover,
.prt-btn.prt-btn-style-fill.prt-btn-color-whitecolor:hover {
  background-color: var(--btn-primary-hover-bg, #333333) !important;
  color: var(--btn-primary-hover-text, #ffffff) !important;
}

/* Link hover - ensure visibility */
a {
  color: var(--link-color, #000000);
  text-decoration: none;
}

a:hover {
  color: var(--link-hover-color, #d4d4d4) !important;
  /* text-decoration: underline; */
}

/* Active menu items */
.mega-menu-item.active .mega-menu-link,
.menu > li.active > a {
  /* color: var(--base-skin, #000000) !important; */
}

/* Section backgrounds */
.section-bg-light {
  background-color: var(--section-bg-light, #f8f8f8) !important;
}

.section-bg-white {
  background-color: var(--section-bg-white, #ffffff) !important;
}

.section-bg-dark {
  background-color: var(--section-bg-dark, #0a0a0a) !important;
  color: var(--base-text-on-dark, #ffffff) !important;
}

/* Card hover effects */
.card {
  border: 1px solid var(--card-border, #e8e8e8);
  transition: all 0.3s ease;
}

.card:hover {
  border-color: var(--card-hover-border, #d4d4d4);
}

/* Form input focus */
input:focus,
textarea:focus,
select:focus {
  border-color: var(--input-focus-border, #000000) !important;
  outline: none;
}

/* Footer link hover */
.footer a:hover,
#contact-us a:hover {
  color: var(--footer-link-hover, #000000) !important;
}

/* Navigation link hover */
.nav-link:hover,
.mega-menu-link:hover {
  color: var(--nav-link-hover, #000000) !important;
}

/* Badge hover */
.badge:hover {
  background-color: var(--badge-primary-bg, #000000) !important;
  color: var(--badge-primary-text, #ffffff) !important;
}

/* Social icon hover */
.social-icons a:hover,
.footer-social-icons a:hover {
  background-color: var(--social-hover-bg, #000000) !important;
  color: var(--social-hover-color, #ffffff) !important;
}

/* Gradient backgrounds */
.bg-base-skin,
.bg-base-gradient {
  background: linear-gradient(
    135deg,
    var(--base-first-gradientcolor) 0%,
    var(--base-second-gradientcolor) 100%
  ) !important;
}

/* Text color utilities */
.text-base-skin {
  color: var(--base-skin, #000000) !important;
}

.text-base-steel {
  color: var(--base-skin-steel, #cfcfcf) !important;
}

.text-base-white {
  color: var(--base-white, #ffffff) !important;
}

.text-base-dark {
  color: var(--base-dark, #0a0a0a) !important;
}

/* Border utilities */
.border-base-steel {
  border-color: var(--base-border-color-steel, #d4d4d4) !important;
}

/* Background utilities */
.bg-base-light {
  background-color: var(--base-grey-light, #f0f0f0) !important;
}

.bg-base-medium {
  background-color: var(--base-grey-medium, #d4d4d4) !important;
}

.prt-stickable-header.fixed-header nav.main-menu a {
  color: #333333 !important;
  text-decoration: none !important;
}

.prt-stickable-header.fixed-header nav.main-menu a {
  color: #333333 !important;
  text-decoration: none !important;
}

.prt-stickable-header.fixed-header .prt-btn {
  color: #333333 !important;
  border-color: #333333 !important;
}

.prt-stickable-header.fixed-header .header_extra span {
  color: #333333 !important;
}

.prt-stickable-header.fixed-header .prt-btn:hover {
  color: #fff !important;
}

nav.main-menu {
  height: 80px !important;
}
.menu > li > a:hover {
  color: #fff !important;
}

.prt-stepbox.style1 .prt-left-content-box .process-num .number {
}

.prt-stepbox.style1 .prt-left-content-box .process-num .number {
  background: #00bdfd !important;
}

.prt-stepbox.style1 .prt-step-content-btn a {
  background: linear-gradient(to right, #002b5b 0, #00a8ff 50%, #002b5b 100%);
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  display: inline-block;
  padding: 5px 20px;
  font-size: 14px;
  border-radius: 50px;
  cursor: pointer;
  z-index: 10;
  margin: auto;
  color: var(--base-white);
}

.prt-stepbox.style1 .prt-step-content-btn a:hover {
  background-position: right center;
  box-shadow: 0 5px 15px rgba(0, 168, 255, 0.4);
  background: linear-gradient(to right, #002b5b 0, #00a8ff 50%, #002b5b 100%);
  transform: translateY(-2px);
}

.prt-tabs.prt-tab-style-02 ul.tabs li.active a {
  text-transform: capitalize;
  background: linear-gradient(to right, #002b5b 0, #00a8ff 50%, #002b5b 100%);
  background-size: 200% auto;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  border-color: transparent !important;
  color: var(--base-white);
}

.prt-tabs.prt-tab-style-02 ul.tabs li.active a:hover {
  background-position: right center;
  box-shadow: 0 5px 15px rgba(0, 168, 255, 0.4);
  transform: translateY(-2px);
}

.prt-tabs.prt-tab-style-02 ul.tabs li.active a:hover {
  background: linear-gradient(to right, #002b5b 0, #00a8ff 50%, #002b5b 100%);
  background-position: right center;
}

.featured-imagebox-team.style1 .prt-btn-waprre .prt-team-btn {
  width: 50px;
  height: 50px;
  line-height: 50px;
  display: inline-block;
  background: linear-gradient(to right, #002b5b 0, #00a8ff 50%, #002b5b 100%);
  background-size: 200% auto;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  border-radius: var(--base-border-radius-50);
  color: var(--base-white);
  text-align: center;
}

.featured-imagebox-team.style1 .prt-btn-waprre .prt-team-btn:hover {
  background-position: right center;
  box-shadow: 0 5px 15px rgba(0, 168, 255, 0.4);
  transform: translateY(-2px);
}

#totop.top-visible {
 background: linear-gradient(to right, #fe741c 0%, #00a8ff 50%, #fd6a1a 100%);
  background-size: 200% auto;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

#totop.top-visible:hover {
  background-position: right center;
  box-shadow: 0 5px 15px rgba(0, 168, 255, 0.4);
  transform: translateY(-3px);
}

.prt-btn.prt-btn-style-fill.prt-btn-color-darkcolor {
  background: linear-gradient(to right, #002b5b 0, #00a8ff 50%, #002b5b 100%);
  background-size: 200% auto;
  border-color: transparent !important;
  color: var(--base-white);
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.prt-btn.prt-btn-style-fill.prt-btn-color-darkcolor:hover {
  background-position: right center;
  box-shadow: 0 5px 15px rgba(0, 168, 255, 0.4);
  background: linear-gradient(225deg, #00a8ff 0%, #002b5b 100%);
  transform: translateY(-2px);
  color: var(--base-white);
}

.hero-section
  .hero-slide.slide-2
  .hero-content-block
  .hero-content
  .prt-banner-input
  .prt-banner {
  color: var(--base-white);
  border-style: none;
  border-color: #fff;
  background: linear-gradient(225deg, #00a8ff 0%, #002b5b 100%);
}

.hero-section
  .hero-slide.slide-2
  .hero-content-block
  .hero-content
  .prt-banner-input
  .prt-banner:hover {
  background-position: right center;
  background: linear-gradient(225deg, #00a8ff 0%, #002b5b 100%);
  box-shadow: 0 5px 15px rgba(0, 168, 255, 0.4);
  transform: translateY(-2px);
}
.wrap-form.query_form-1 .prt-btn {
  background: linear-gradient(to right, #002b5b 0, #00a8ff 50%, #002b5b 100%);
  background-size: 200% auto;
}

.wrap-form.query_form-1 .prt-btn:hover {
  background-position: right center;
  box-shadow: 0 5px 15px rgba(0, 168, 255, 0.4);
  background: linear-gradient(to right, #002b5b 0, #00a8ff 50%, #002b5b 100%);
  transform: translateY(-2px);
  color: var(--base-white);
}

.featured-imagebox-post.style2 .featured-content-post .prt-postbox-btn a {
  padding: 16px 25px;
  display: inline-block;
  vertical-align: top;
  background: linear-gradient(to right, #002b5b 0%, #00a8ff 50%, #002b5b 100%);
  background-size: 200% auto;
  color: var(--base-white);
  border-radius: 50px;
  font-size: 14px;
  line-height: 14px;
  margin: 0;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.featured-imagebox-post.style2 .featured-content-post .prt-postbox-btn a:hover {
  background-position: right center;
  background: linear-gradient(to right, #002b5b 0%, #00a8ff 50%, #002b5b 100%);
  box-shadow: 0 5px 15px rgba(0, 168, 255, 0.4);
  transform: translateY(-2px);
  color: var(--base-white);
}

.pagination-block .page-numbers.current {
  background: linear-gradient(to right, #002b5b 0%, #1c62b2 50%, #00a8ff 100%);
}

.prt-btn.prt-btn-style-fill.prt-btn-color-whitecolor {
    background: linear-gradient(to right, #002b5b 0, #00a8ff 50%, #002b5b 100%);
    background-size: 200% auto;
    border-color: transparent !important;
    color: var(--base-white);
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.prt-btn.prt-btn-style-fill.prt-btn-color-whitecolor:hover {
    background-position: right center;
    box-shadow: 0 5px 15px rgba(0, 168, 255, 0.4);
    transform: translateY(-2px);
    color: var(--base-white);
}