:root {
  --tj-color-theme-primary: #1689b5;
  --tj-color-theme-secondary: #ffd75a;
  --tj-color-heading-primary: #082f49;
  --tj-color-text-body: #61717f;
  --hp-navy: #082f49;
  --hp-deep: #052536;
  --hp-blue: #1689b5;
  --hp-aqua: #35bfc3;
  --hp-yellow: #ffd75a;
  --hp-cream: #f7f5ee;
  --hp-paper: #fffefa;
  --hp-line: rgba(8, 47, 73, .13);
  --hp-shadow: 0 24px 70px rgba(6, 43, 63, .14);
}

html { scroll-behavior: smooth; }
body { background: var(--hp-paper); color: var(--tj-color-text-body); -webkit-font-smoothing: antialiased; }
.container { max-width: 1180px; }
.loader-wrapper,
.search_popup,
.search-popup-overlay,
.cartmini__area,
.cartmini-overlay { display: none !important; }

/* A calmer, more useful two-tier header */
.tj-header-area { z-index: 50; }
.tj-header-top { padding: 9px 0; border-radius: 0; background: rgba(5, 37, 54, .96); backdrop-filter: blur(15px); }
.tj-header-top-wrapper { min-height: 58px; }
.tj-header-top-logo { max-width: 92px; }
.tj-header-top-logo img { max-height: 58px; width: auto; }
.tj-header-top-information { gap: clamp(24px, 4vw, 58px); }
.tj-header-top-information-item { margin-right: 0; align-items: center; }
.tj-header-top-information-item::before { display: none; }
.tj-header-top-information-icon { margin-right: 9px; color: var(--hp-yellow); }
.tj-header-top-information-icon i { font-size: 26px; }
.tj-header-top-information-title { margin-bottom: 0; font-size: 11px; letter-spacing: .09em; text-transform: uppercase; color: rgba(255,255,255,.58); }
.tj-header-top-information-call,
.tj-header-top-information-address { color: #fff; font-size: 13px; }
.tj-header-top-social ul li a { width: 32px; height: 32px; border-color: rgba(255,255,255,.24); }
.tj-header-bottom { padding: 10px 0 0; }
.tj-header-bottom-row { min-height: 68px; padding: 0 18px 0 28px; border: 1px solid rgba(255,255,255,.7); border-radius: 16px; background: rgba(255,255,255,.94); box-shadow: 0 18px 50px rgba(4,32,48,.14); backdrop-filter: blur(18px); }
.tj-header-bottom-left ul { gap: 3px; }
.tj-header-bottom-left ul li { margin-right: 0; }
.tj-header-bottom-left ul li a { padding: 23px 13px; font-size: 13px; font-weight: 700; color: var(--hp-navy); }
.tj-header-bottom-left ul li a:hover { color: var(--hp-blue); }
.tj-header-btn,
.tj-header-sticky-button .tj-primary-btn { min-height: 48px; display: inline-flex; align-items: center; padding: 0 19px; border-radius: 999px; background: var(--hp-yellow); color: var(--hp-navy); box-shadow: none; }
.tj-header-btn:hover,
.tj-header-sticky-button .tj-primary-btn:hover { background: #ffe27c; color: var(--hp-navy); }
.tj-header-sticky { background: rgba(255,255,255,.97); box-shadow: 0 12px 40px rgba(6,43,63,.12); }
.tj-header-sticky .tj-header-bottom-wrapper { min-height: 72px; }
.tj-header-sticky-mobile-logo img { max-height: 58px; width: auto; }

/* Homepage hero */
.tj-slider-area { min-height: 790px; background-position: center; }
.tj-slider-bg { background-position: 68% center !important; }
.tj-slider-bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,39,58,.94) 0%, rgba(5,52,76,.82) 38%, rgba(5,52,76,.18) 72%, rgba(5,52,76,.04) 100%); }
.tj-slider-bg-shape-1 { width: 53%; background: linear-gradient(90deg, rgba(19,139,181,.5), rgba(10,94,126,.08)); opacity: .72; }
.tj-slider-bg-shape-2 { display: none; }
.tj-slider-bg-shape-3 { height: 55px; }
.tj-slider-content { max-width: 720px; padding: 250px 0 155px; }
.tj-slider-sub-title { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 18px; color: var(--hp-yellow); font-size: 12px; font-weight: 700; letter-spacing: .14em; }
.tj-slider-title { max-width: 680px; margin-bottom: 22px; font-size: clamp(50px, 5.5vw, 76px); font-weight: 650; line-height: 1.01; letter-spacing: -.055em; }
.tj-slider-paragraph { max-width: 620px; color: rgba(255,255,255,.77); font-size: 19px; line-height: 1.6; }
.tj-slider-title-box { margin-bottom: 34px; }
.tj-primary-btn { border-radius: 999px; box-shadow: 0 14px 35px rgba(22,137,181,.2); }
.tj-slider-btn-box .tj-primary-btn { margin-right: 20px; background: var(--hp-yellow); color: var(--hp-navy); }
.tj-slider-call-icon { width: 50px; height: 50px; border: 1px solid rgba(255,255,255,.24); }
.tj-slider-call-text a { font-size: 20px; }

/* Shared section language */
.tj-section-subtitle { color: var(--hp-blue); font-size: 12px; font-weight: 750; letter-spacing: .11em; text-transform: uppercase; }
.tj-section-title { color: var(--hp-navy); font-weight: 650; letter-spacing: -.045em; line-height: 1.08; }
.tj-section-paragraph { color: var(--tj-color-text-body); line-height: 1.75; }
.tj-about-area { padding: 110px 0 120px; background: var(--hp-paper); }
.tj-about-bg-shape { opacity: .18; }
.tj-about-thumb-shape > img:first-child { width: 100%; height: 590px; object-fit: cover; border-radius: 26px; box-shadow: var(--hp-shadow); }
.tj-about-thumb-shape-1 { display: none; }
.tj-about-wrapper { padding-left: clamp(20px, 5vw, 65px); }
.tj-about-box { margin-top: 27px; padding: 22px; border: 1px solid var(--hp-line); border-radius: 18px; background: #fff; box-shadow: 0 16px 45px rgba(6,43,63,.07); }
.tj-about-box-thumb img { border-radius: 12px; }
.tj-about-box-thumb-list ul li { margin-bottom: 8px; color: var(--hp-navy); font-size: 13px; }

.tj-service-area { padding: 105px 0 115px; background: #edf7f8 !important; }
.tj-service-bg-top-shape { opacity: .15; }
.service__tab { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; margin: 44px 0 24px; }
.service__tab li { margin: 0 !important; }
.service__tab .tj-service-wrapper { min-height: 132px; padding: 20px 10px; border: 1px solid var(--hp-line); border-radius: 16px; background: rgba(255,255,255,.88); transition: transform .25s, background .25s, box-shadow .25s; }
.service__tab li:hover .tj-service-wrapper { transform: translateY(-4px); box-shadow: 0 15px 35px rgba(6,43,63,.1); }
.service__tab li.active .tj-service-wrapper { border-color: var(--hp-navy); background: var(--hp-navy); }
.service__tab li.active .tj-service-title,
.service__tab li.active .tj-service-icon { color: #fff; }
.tj-service-icon { color: var(--hp-blue); }
.tj-service-title { color: var(--hp-navy); font-size: 14px; line-height: 1.25; }
.tj-service-bottom-item { overflow: hidden; border-radius: 25px; background: var(--hp-navy); box-shadow: var(--hp-shadow); }
.tj-service-bottom-thumb img { object-fit: cover; }

.tj-choose-us-area { padding-top: 105px !important; background: var(--hp-blue); }
.tj-choose-us-bottom { overflow: hidden; border-radius: 24px; }
.tj-process-3-area { padding: 110px 0; background: var(--hp-cream) !important; }
.tj-process-3-thumb img { aspect-ratio: 1; object-fit: cover; border-radius: 50%; box-shadow: 0 18px 45px rgba(6,43,63,.14); }
.tj-process-3-icon { background: var(--hp-yellow); color: var(--hp-navy); }
.tj-process-3-title { color: var(--hp-navy); }

/* Preserve and elevate the interactive before/after slider */
.tj-before-after-area { padding: 110px 0 120px; background: var(--hp-deep); }
.tj-before-after-bg { opacity: .22; }
.tj-before-after-area .tj-section-title { color: #fff; }
.tj-before-after-area .tj-section-subtitle { color: var(--hp-yellow); }
.tj-before-after-area .tj-section-wrapper > p { max-width: 640px; margin: 16px auto 40px; color: rgba(255,255,255,.65); font-size: 16px; }
.tj-before-after-wrapper { overflow: hidden; border: 8px solid rgba(255,255,255,.1); border-radius: 24px; box-shadow: 0 28px 80px rgba(0,0,0,.28); }
.tj-before-after-wrapper::before,
.tj-before-after-wrapper::after { top: 22px; border-radius: 999px; background: rgba(5,37,54,.86); color: #fff; backdrop-filter: blur(8px); }
.tj-before-after-wrapper div:nth-of-type(3) div div span { border-color: var(--hp-yellow); background: var(--hp-yellow); }

.tj-cta-3-area { background: var(--hp-blue); }
.tj-faq-2-area { padding: 110px 0; background: var(--hp-paper); }
.tj-faq-2-area .accordion-item { margin-bottom: 10px; overflow: hidden; border: 1px solid var(--hp-line); border-radius: 14px; background: #fff; }
.tj-faq-2-area .accordion-button { color: var(--hp-navy); font-weight: 700; box-shadow: none; }
.tj-pricing-area { padding-top: 105px !important; padding-bottom: 110px; background: var(--hp-cream); }

/* Inner pages */
.tj-header-2-top { padding: 9px 0; background: rgba(5,37,54,.97); }
.tj-header-2-top-information ul li,
.tj-header-2-top-information ul li a { color: rgba(255,255,255,.78); }
.tj-header-2-bottom { padding: 9px 0 0; background: transparent; }
.tj-header-2-bottom-row { min-height: 68px; padding: 0 18px 0 24px; border: 1px solid rgba(255,255,255,.7); border-radius: 16px; background: rgba(255,255,255,.96); box-shadow: 0 18px 50px rgba(4,32,48,.14); }
.tj-header-2-bottom-logo img { max-height: 62px; width: auto; }
.tj-header-2-button .tj-primary-btn { border-radius: 999px; background: var(--hp-yellow); color: var(--hp-navy); }
.tj-breadcrumb-area { min-height: 480px; background-position: center !important; }
.tj-breadcrumb-area::before { background: linear-gradient(90deg, rgba(4,39,58,.92), rgba(4,39,58,.28)); }
.tj-breadcrumb-title { color: #fff; font-size: clamp(46px, 6vw, 72px); letter-spacing: -.05em; }
.tj-breadcrumb-content { padding-top: 45px; }
.tj-about-2-area { padding: 105px 0; background: var(--hp-paper); }
.tj-about-2-image img { width: 100%; min-height: 460px; object-fit: cover; border-radius: 24px; box-shadow: var(--hp-shadow); }
.tj-service-details-area,
.tj-about-area,
.tj-contact-area,
.tj-portfolio-area { background-color: var(--hp-paper); }

/* Footer */
.tj-footer-area { background: var(--hp-deep); }
.tj-footer-top { border-color: rgba(255,255,255,.12); }
.tj-footer-widget-logo img { max-height: 92px; width: auto; padding: 8px; border-radius: 12px; background: #fff; }
.tj-footer-widget-title { color: #fff; }
.tj-footer-widget-menu ul li a { color: rgba(255,255,255,.68); }
.tj-footer-widget-menu ul li a:hover { color: var(--hp-yellow); }
.tj-footer-widget-paragraph { color: rgba(255,255,255,.6); }

@media (max-width: 1199px) {
  .tj-header-bottom { padding-top: 8px; }
  .tj-header-bottom-row { min-height: 68px; padding: 8px 20px; }
  .tj-slider-area { min-height: 720px; }
  .tj-slider-content { padding: 205px 0 115px; }
  .service__tab { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 767px) {
  .container { width: min(100% - 28px, 1180px); }
  .tj-header-area { position: absolute; }
  .tj-header-bottom { padding: 8px 0; }
  .tj-header-bottom-row { min-height: 62px; margin: 0; padding: 6px 14px; border-radius: 13px; }
  .tj-header-bottom-mobile-logo img { max-width: 125px; max-height: 54px; }
  .tj-header-bottom-mobile-btn { margin-left: 12px; color: var(--hp-navy); }
  .tj-slider-area { min-height: 700px; }
  .tj-slider-bg { background-position: 66% center !important; }
  .tj-slider-bg::after { background: linear-gradient(90deg, rgba(4,39,58,.94), rgba(4,39,58,.68)); }
  .tj-slider-bg-shape-1 { width: 100%; opacity: .5; }
  .tj-slider-content { padding: 145px 0 75px; }
  .tj-slider-sub-title { font-size: 10px; line-height: 1.5; }
  .tj-slider-title { font-size: clamp(43px, 13.2vw, 58px); }
  .tj-slider-paragraph { font-size: 16px; }
  .tj-slider-btn-box { display: grid; gap: 16px; }
  .tj-slider-btn-box .tj-primary-btn { width: 100%; margin: 0; justify-content: center; }
  .tj-slider-call-btn { justify-content: center; }
  .tj-slider-bg-shape-3 { height: 26px; }
  .tj-about-area,
  .tj-service-area,
  .tj-process-3-area,
  .tj-before-after-area,
  .tj-faq-2-area { padding: 76px 0; }
  .tj-about-thumb-shape > img:first-child { height: 430px; }
  .tj-about-wrapper { padding: 45px 0 0; }
  .tj-section-title { font-size: 38px; }
  .service__tab { grid-template-columns: repeat(2, 1fr); gap: 8px; }
  .service__tab .tj-service-wrapper { min-height: 118px; }
  .tj-choose-us-area { padding-top: 76px !important; }
  .tj-before-after-wrapper { border-width: 4px; border-radius: 15px; }
  .tj-header-2-bottom { padding: 8px 0; }
  .tj-header-2-bottom-row { min-height: 62px; margin: 0; padding: 6px 14px; border-radius: 13px; }
  .tj-header-2-bottom-logo img { max-height: 54px; }
  .tj-breadcrumb-area { min-height: 390px; }
  .tj-breadcrumb-title { font-size: 42px; }
  .tj-about-2-area { padding: 76px 0; }
}
