/* ── OVERRIDE TEMPLATE ORANGE THEME COLOR ── */
:root {
  --theme-color:   #CC0000 !important;
  --theme-color-2: #0B1E3D !important;
  --title-color:   #0B1E3D !important;
}

/* Kill any orange background shapes on the nav bar */
.header-layout8 .menu-area::before,
.header-layout8 .menu-area::after,
.header-layout1 .menu-area::before,
.header-layout1 .menu-area::after,
.menu-area::before,
.menu-area::after { background-color: #fff !important; background: #fff !important; }

/* The logo-bg skewed shape that shows orange */
.header-layout8 .header-logo::before,
.header-layout8 .header-logo::after,
.header-layout1 .header-logo::before,
.header-layout1 .header-logo::after { background-color: #CC0000 !important; }

/* Force white nav bg aggressively */
.menu-area,
.sticky-wrapper .menu-area,
.themeholy-header .menu-area { background-color: #ffffff !important; background: #ffffff !important; }

/* ============================================================
   FRIMPS LOGISTICS — CLEAN REDESIGN CSS
   Written once, no duplicates. Applied on top of style.css.
   Brand: Red #CC0000 | Navy #0B1E3D | Gold #F5A623
   Fonts: Montserrat (headings) | Open Sans (body)
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700;800;900&family=Open+Sans:wght@400;500;600;700&display=swap');

/* ── VARIABLES ── */
:root {
  --red:    #CC0000;
  --navy:   #0B1E3D;
  --navy2:  #0F2850;
  --gold:   #F5A623;
  --off:    #F7F9FC;
  --text:   #4D5E70;
  --border: #E2E8F0;
}

/* ── GLOBAL FONTS ── */
body { font-family: 'Open Sans', sans-serif !important; }
h1,h2,h3,h4,h5,h6,
.sec-title,.box-title,.hero-title,.widget_title,
.breadcumb-title,.testi-card_name,.blog-title,
.sub-title { font-family: 'Montserrat', sans-serif !important; }

/* ── BRAND COLOURS ── */
.sub-title      { color: var(--red) !important; }
.text-theme     { color: var(--red) !important; }
.sec-title      { color: var(--navy) !important; }
.line-btn       { color: var(--red) !important; }
.line-btn:hover { color: var(--navy) !important; }
.line-btn::before { background-color: var(--red) !important; }

/* ── BUTTONS ── */
.themeholy-btn {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  background: var(--red) !important;
  border-radius: 4px !important;
  border: none !important;
  box-shadow: 0 4px 16px rgba(204,0,0,.28) !important;
  transition: background .2s, transform .2s !important;
}
.themeholy-btn:hover { background: #aa0000 !important; transform: translateY(-2px) !important; }
.themeholy-btn.blue-btn, .themeholy-btn.blue-btn2 {
  background: var(--navy) !important;
  box-shadow: 0 4px 16px rgba(11,30,61,.28) !important;
}
.themeholy-btn.blue-btn:hover, .themeholy-btn.blue-btn2:hover { background: var(--navy2) !important; }

/* ================================================================
   HEADER — complete rebuild on top of template structure
   ================================================================ */

/* Top info bar */
.header-top { background: var(--navy) !important; padding: 9px 0 !important; }
.header-links li, .header-links span, .header-links a {
  font-family: 'Open Sans', sans-serif !important;
  color: rgba(255,255,255,.72) !important;
  font-size: 13px !important;
}
.header-links a:hover     { color: var(--gold) !important; }
.header-links li > i      { color: var(--gold) !important; }
.header-social a          { color: rgba(255,255,255,.55) !important; transition: color .2s !important; }
.header-social a:hover    { color: var(--gold) !important; }

/* Remove language selector, search and grid buttons */
.langauge         { display: none !important; }
.icon-btn.searchBoxToggler { display: none !important; }
.icon-btn.sideMenuToggler  { display: none !important; }
.popup-search-box { display: none !important; }
.sidemenu-wrapper { display: none !important; }

/* Main nav bar */
.menu-area {
  background: #fff !important;
  border-bottom: 3px solid var(--red) !important;
  box-shadow: 0 3px 20px rgba(0,0,0,.10) !important;
}

/* Logo — left red accent bar */
.header-logo {
  display: flex !important;
  align-items: center !important;
  border-left: 4px solid var(--red) !important;
  padding-left: 18px !important;
  background: transparent !important;
}
.header-logo img {
  max-height: 52px !important;
  width: auto !important;
  background: transparent !important;
  filter: none !important;
}

/* Nav links */
.main-menu > ul > li > a {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  color: var(--navy) !important;
  padding: 24px 14px !important;
  position: relative !important;
  transition: color .2s !important;
}
.main-menu > ul > li > a:hover  { color: var(--red) !important; }
.main-menu > ul > li > a::after { color: var(--navy) !important; }
.main-menu > ul > li > a:hover::after { color: var(--red) !important; }

/* Red underline slide on hover */
.main-menu > ul > li > a::before {
  content: '' !important;
  position: absolute !important;
  bottom: -3px; left: 50%; right: 50% !important;
  height: 3px !important;
  background: var(--red) !important;
  transition: left .3s, right .3s !important;
}
.main-menu > ul > li > a:hover::before { left: 14px !important; right: 14px !important; }

/* Dropdown */
.main-menu ul.sub-menu {
  border-top: 3px solid var(--red) !important;
  border-radius: 0 0 6px 6px !important;
  box-shadow: 0 16px 48px rgba(0,0,0,.14) !important;
}
.main-menu ul.sub-menu li a {
  font-family: 'Open Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--navy) !important;
  padding: 10px 22px !important;
  border-bottom: 1px solid #f0f4f8 !important;
  transition: all .2s !important;
}
.main-menu ul.sub-menu li:last-child a { border-bottom: none !important; }
.main-menu ul.sub-menu li a:hover {
  color: var(--red) !important;
  background: #fff5f5 !important;
  padding-left: 30px !important;
}
.main-menu ul.sub-menu li a::before { display: none !important; }

/* Header CTA button */
.header-button .themeholy-btn { padding: 11px 22px !important; font-size: 12px !important; }

/* Mobile toggle */
.themeholy-menu-toggle {
  background: var(--red) !important;
  border-radius: 4px !important;
  color: #fff !important;
  border: none !important;
  width: 42px !important;
  height: 42px !important;
}

/* ================================================================
   HERO SLIDER — use original heroSlider class, style it properly
   ================================================================ */

.themeholy-hero-wrapper { overflow: hidden; }

/* Overlay for each slide */
.hero-8 .themeholy-hero-slide::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(105deg, rgba(11,30,61,.92) 0%, rgba(11,30,61,.70) 55%, rgba(11,30,61,.25) 100%) !important;
  z-index: 1 !important;
}
.hero-8 .themeholy-hero-slide > .container { position: relative !important; z-index: 2 !important; }

/* Hero text */
.hero-style8 { padding: 160px 0 130px !important; }
@media(max-width:991px) { .hero-style8 { padding: 110px 0 80px !important; } }
@media(max-width:575px) { .hero-style8 { padding: 90px 0 60px !important; } }

.hero-style8 .hero-subtitle {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  color: var(--gold) !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-bottom: 18px !important;
}
.hero-style8 .hero-subtitle img { display: none !important; }
.hero-style8 .hero-subtitle::before {
  content: '' !important;
  display: inline-block !important;
  width: 30px; height: 2px !important;
  background: var(--gold) !important;
}
.hero-style8 .hero-title {
  font-size: 64px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  color: #fff !important;
  line-height: 1.08 !important;
  margin-bottom: 22px !important;
}
@media(max-width:1199px) { .hero-style8 .hero-title { font-size: 50px !important; } }
@media(max-width:767px)  { .hero-style8 .hero-title { font-size: 38px !important; } }
@media(max-width:480px)  { .hero-style8 .hero-title { font-size: 30px !important; } }

.hero-style8 .hero-text {
  font-size: 15px !important;
  line-height: 1.8 !important;
  color: rgba(255,255,255,.78) !important;
  max-width: 540px !important;
  margin-bottom: 36px !important;
}

/* Slick arrows for hero */
.hero-8 .slick-arrow {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 10 !important;
  width: 52px !important; height: 52px !important;
  background: rgba(255,255,255,.12) !important;
  border: 2px solid rgba(255,255,255,.30) !important;
  border-radius: 50% !important;
  color: #fff !important;
  font-size: 0 !important;
  cursor: pointer !important;
  transition: background .25s, border-color .25s !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
}
.hero-8 .slick-arrow:hover { background: var(--red) !important; border-color: var(--red) !important; }
.hero-8 .slick-prev { left: 28px !important; }
.hero-8 .slick-next { right: 28px !important; }
.hero-8 .slick-prev::before { content: '\f104' !important; font-family: 'Font Awesome 6 Free' !important; font-weight: 900 !important; font-size: 18px !important; color: #fff !important; }
.hero-8 .slick-next::before { content: '\f105' !important; font-family: 'Font Awesome 6 Free' !important; font-weight: 900 !important; font-size: 18px !important; color: #fff !important; }

/* Slick dots */
.hero-8 .slick-dots {
  position: absolute !important;
  bottom: 28px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 10 !important;
}
.hero-8 .slick-dots li button {
  width: 10px !important; height: 10px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.40) !important;
  transition: background .2s, transform .2s !important;
}
.hero-8 .slick-dots li.slick-active button { background: var(--red) !important; transform: scale(1.25) !important; }

/* ================================================================
   BREADCRUMB / INNER PAGE BANNER
   ================================================================ */
.breadcumb-wrapper {
  background: var(--navy) !important;
  position: relative;
  overflow: hidden;
}
.breadcumb-wrapper::before {
  content: '';
  position: absolute; inset: 0;
  background: url('assets/img/update_5/hero/hero_bg_1_1.jpg') center/cover no-repeat;
  opacity: .10;
}
.breadcumb-wrapper::after {
  content: '';
  position: absolute; bottom: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--red), var(--gold));
}
.breadcumb-title {
  font-size: 48px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  color: #fff !important;
}
@media(max-width:767px) { .breadcumb-title { font-size: 34px !important; } }
.breadcumb-menu {
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
}
.breadcumb-menu li  { color: rgba(255,255,255,.55) !important; }
.breadcumb-menu li::after { color: var(--gold) !important; }
.breadcumb-menu a, .breadcumb-menu span { color: var(--gold) !important; }

/* ================================================================
   SERVICE CARDS
   ================================================================ */
.service-card_icon  { background: var(--red) !important; box-shadow: 0 4px 16px rgba(204,0,0,.28) !important; }
.service-card:hover .service-card_icon { background: var(--navy) !important; }
.service-card_content { background: #fff !important; border-top: 3px solid var(--red) !important; box-shadow: 0 6px 28px rgba(11,30,61,.12) !important; border-radius: 0 0 6px 6px !important; }
.service-card_content::before { display: none !important; }
.service-card_content::after  { background: var(--red) !important; }
.service-card_title { color: var(--navy) !important; }

/* ================================================================
   COUNTER SECTION — force single row
   ================================================================ */
.counter-sec-wrapper.style2 {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  background: var(--navy) !important;
  padding: 36px 48px !important;
}
.counter-sec-wrapper.style2 .counter-card.style2 {
  flex: 1 1 0 !important;
  border-right: 1px dashed rgba(255,255,255,.15) !important;
  border-bottom: none !important;
  padding: 0 24px !important;
}
.counter-sec-wrapper.style2 .counter-card.style2:last-child { border-right: none !important; }
.counter-card_wrapper { display: flex !important; align-items: center !important; gap: 16px !important; }
.counter-card.style2 .counter-card_icon {
  background: rgba(255,255,255,.08) !important;
  border-radius: 50% !important;
  flex-shrink: 0 !important;
}
.counter-card_number { font-family: 'Montserrat', sans-serif !important; font-size: 46px !important; font-weight: 900 !important; color: #fff !important; line-height: 1 !important; }
.counter-card_text   { color: rgba(255,255,255,.65) !important; font-size: 12px !important; text-transform: uppercase !important; letter-spacing: .08em !important; }

@media(max-width:991px) {
  .counter-sec-wrapper.style2 { flex-wrap: wrap !important; padding: 28px 20px !important; }
  .counter-sec-wrapper.style2 .counter-card.style2 { flex: 1 1 45% !important; border-right: none !important; border-bottom: 1px dashed rgba(255,255,255,.15) !important; padding: 18px 12px !important; }
}

/* ================================================================
   TESTIMONIALS
   ================================================================ */
.testi-card.style4 {
  background: #fff !important;
  border: 1px solid var(--border) !important;
  border-top: 3px solid var(--red) !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 20px rgba(11,30,61,.08) !important;
  padding: 28px !important;
  transition: transform .3s, box-shadow .3s !important;
}
.testi-card.style4:hover { transform: translateY(-4px) !important; box-shadow: 0 12px 40px rgba(11,30,61,.15) !important; }
.testi-card.style4::before { background-color: #fff !important; }
.testi-card_icon   { background: var(--red) !important; }
.testi-card_name   { color: var(--navy) !important; }
.testi-card_desig  { color: var(--red) !important; }
.testi-card_text   { border-color: var(--border) !important; }
.testi-sec5        { background: var(--off) !important; }
.star-icon a, .star-icon i { color: var(--gold) !important; }

/* ================================================================
   WHY-CHOOSE-US CONTACT FORM
   ================================================================ */
.request-form.style2 {
  background: var(--navy) !important;
  border-radius: 8px !important;
  padding: 36px !important;
  box-shadow: 0 12px 48px rgba(11,30,61,.16) !important;
}
.request-form.style2 h3 { color: #fff !important; font-family: 'Montserrat', sans-serif !important; font-weight: 800 !important; }
.request-form.style2 .form-control,
.request-form.style2 input,
.request-form.style2 textarea {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.15) !important;
  color: #fff !important; border-radius: 4px !important; height: 50px !important;
}
.request-form.style2 textarea { height: auto !important; }
.request-form.style2 .form-control::placeholder,
.request-form.style2 input::placeholder,
.request-form.style2 textarea::placeholder { color: rgba(255,255,255,.40) !important; }
.request-form.style2 .form-control:focus,
.request-form.style2 input:focus,
.request-form.style2 textarea:focus {
  border-color: var(--gold) !important;
  box-shadow: 0 0 0 3px rgba(245,166,35,.15) !important;
  outline: none !important;
}
.request-form.style2 .form-group > i { color: var(--gold) !important; }

/* Service sidebar form */
.service-form-wrap  { background: var(--navy) !important; border-radius: 6px !important; padding: 28px !important; }
.service-form h3.text-white { font-family: 'Montserrat', sans-serif !important; font-weight: 700 !important; }
.service-form .form-control, .service-form input, .service-form textarea {
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.15) !important;
  color: #fff !important; border-radius: 4px !important; height: 50px !important;
}
.service-form textarea { height: auto !important; }
.service-form .form-control::placeholder,
.service-form input::placeholder,
.service-form textarea::placeholder { color: rgba(255,255,255,.40) !important; }
.service-form .form-control:focus,
.service-form input:focus,
.service-form textarea:focus { border-color: var(--gold) !important; outline: none !important; }
.service-form .form-group > i { color: var(--gold) !important; }

/* Sidebar nav links */
.widget_nav_menu a:hover { color: var(--red) !important; }
.widget_title::after     { background-color: var(--red) !important; }

/* ================================================================
   BLOG CARDS
   ================================================================ */
.blog-card { border-radius: 6px !important; overflow: hidden !important; box-shadow: 0 4px 20px rgba(11,30,61,.08) !important; border: 1px solid var(--border) !important; transition: box-shadow .3s, transform .3s !important; }
.blog-card:hover { box-shadow: 0 12px 40px rgba(11,30,61,.14) !important; transform: translateY(-4px) !important; }
.blog-card .blog-img img { transition: transform .5s ease !important; }
.blog-card:hover .blog-img img { transform: scale(1.05) !important; }
.blog-card .blog-title a { color: var(--navy) !important; }
.blog-card .blog-title a:hover { color: var(--red) !important; }
.blog-card_date { background: var(--red) !important; }

/* ================================================================
   FOOTER
   ================================================================ */
.footer-wrapper { background: var(--navy) !important; position: relative; }
.footer-wrapper::after { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, var(--red), var(--gold)); }
.copyright-wrap { background: rgba(0,0,0,.35) !important; }
.footer-widget .widget_title { color: #fff !important; }
.footer-widget .widget_title::before { background-color: var(--red) !important; }
.footer-widget a { color: rgba(255,255,255,.60) !important; font-size: 14px !important; transition: color .2s !important; }
.footer-widget a:hover { color: var(--gold) !important; }
.about-text, .info-box_text { color: rgba(255,255,255,.60) !important; }
.info-box_link { color: rgba(255,255,255,.75) !important; }
.info-box_link:hover { color: var(--gold) !important; }
.copyright-text { color: rgba(255,255,255,.45) !important; font-size: 13px !important; }
.copyright-text a { color: var(--gold) !important; }
.themeholy-widget-about .themeholy-social a {
  background: rgba(255,255,255,.06) !important; border: 1px solid rgba(255,255,255,.12) !important;
  color: rgba(255,255,255,.65) !important; border-radius: 50% !important; transition: all .25s !important;
}
.themeholy-widget-about .themeholy-social a:hover { background: var(--red) !important; color: #fff !important; border-color: var(--red) !important; }

/* Footer logo */
.footer-wrapper .about-logo img { filter: none !important; max-height: 70px !important; width: auto !important; background: transparent; padding: 0; border-radius: 0; }

/* Footer info box icons */
.info-box_icon i { color: var(--gold) !important; }

/* ================================================================
   MISC
   ================================================================ */
/* Remove white gap below footer from duplicate scroll-top div */
div.scroll-top { display: none !important; }
a.scroll-top   { display: flex !important; }

/* Play button */
.play-btn > i, .play-btn::before, .play-btn::after { background-color: var(--red) !important; }

/* Slick arrows (general) */
.slick-arrow { background-color: var(--navy) !important; border-color: var(--navy) !important; }
.slick-arrow:hover { background-color: var(--red) !important; border-color: var(--red) !important; }

/* Sub-title shape images hidden */
.sub-title img { display: none !important; }

/* Contact page inputs */
.contact-form .form-control, .contact-form input, .contact-form textarea {
  border: 1.5px solid var(--border) !important; border-radius: 4px !important; background: var(--off) !important; height: 52px !important;
}
.contact-form textarea { height: auto !important; }
.contact-form .form-control:focus, .contact-form input:focus, .contact-form textarea:focus {
  border-color: var(--red) !important; box-shadow: 0 0 0 3px rgba(204,0,0,.10) !important; background: #fff !important; outline: none !important;
}
.contact-form .form-group > i { color: var(--red) !important; }

/* About page about-counter */
.img-box5 .about-counter-5 { background: var(--red) !important; }

/* Accordion */
.accordion-card .accordion-button:not(.collapsed) { color: var(--red) !important; }

/* Mobile: stack counter */
@media(max-width:575px) {
  .counter-sec-wrapper.style2 .counter-card.style2 { flex: 1 1 100% !important; border-bottom: 1px dashed rgba(255,255,255,.15) !important; border-right: none !important; }
}
