/* =====================================================================
   SourcingIndia.biz brand layer for the Geexmo theme
   Logo palette: navy #0A1B3D · teal #1DBFAE → blue #0A6FD6 · gold accent #C9A24A
   ===================================================================== */
:root {
  --si-navy: #0A1B3D;
  --si-navy-2: #06112A;
  --si-teal: #1DBFAE;
  --si-teal-dark: #0E8F82;
  --si-blue: #0A6FD6;
  --si-sky: #4FB3FF;
  --si-gold: #C9A24A;
  --si-soft: #F2F6FB;
  --si-line: #DCE6F0;
  --si-text: #2B3A5A;
  --si-grad: linear-gradient(100deg, #12B8A6 0%, #0A8FC9 55%, #0A6FD6 100%);
  --si-radius: 18px;
}

body { color: var(--si-text); }
p { color: var(--si-text); }
.bg-dark-1 p, .white-content p, .footer-section p { color: rgba(255,255,255,.78); }
a { color: var(--si-blue); }
::selection { background: var(--si-teal); color: #fff; }

.skip-link { position: absolute; left: -9999px; top: 0; z-index: 10000; background: #fff; color: var(--si-navy); padding: 10px 18px; border-radius: 0 0 8px 0; font-weight: 600; }
.skip-link:focus { left: 0; }
:focus-visible { outline: 3px solid var(--si-teal); outline-offset: 2px; }

/* ------------------------------------------------ buttons */
.cp-primary-btn { background: var(--si-grad); color: #fff; box-shadow: 0 10px 24px -12px rgba(10,111,214,.7); }
.cp-primary-btn .btn-text .btn-text-1, .cp-primary-btn:hover, .cp-primary-btn:focus { color: #fff; }
.cp-primary-btn:before, .cp-primary-btn:hover:before { background-color: var(--si-navy); }
.bg-dark-1 .cp-primary-btn:before, .bg-dark-1 .cp-primary-btn:hover:before,
.cta-band .cp-primary-btn:before, .footer-section .cp-primary-btn:hover:before,
.content-section .cp-primary-btn:hover:before, .service-section.bg-dark-1 .cp-primary-btn:hover:before { background-color: #fff; }
.bg-dark-1 .cp-primary-btn:hover .btn-text .btn-text-2, .cta-band .cp-primary-btn:hover .btn-text .btn-text-2,
.content-section .cp-primary-btn:hover .btn-text .btn-text-2 { color: var(--si-navy); }
.cp-primary-btn i { margin-left: 8px; }
.cp-primary-btn.btn-outline { background: transparent; color: var(--si-navy); box-shadow: inset 0 0 0 1.5px var(--si-navy); }
.cp-primary-btn.btn-outline .btn-text .btn-text-1 { color: var(--si-navy); }
.service-btn.cp-primary-btn { padding: 15px 26px; }

/* ------------------------------------------------ header */
.header .primary-header-inner .header-logo img { max-width: 250px; width: 250px; height: auto; }
@media (max-width: 1399px) { .header .primary-header-inner .header-logo img { max-width: 210px; } }
@media (max-width: 767px) { .header .primary-header-inner .header-logo img { max-width: 190px; } }
.header-phone { align-items: center; gap: 8px; color: #fff; font-weight: 600; font-size: 15px; margin-right: 18px; white-space: nowrap; }
.header-phone i { width: 34px; height: 34px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: rgba(255,255,255,.1); color: var(--si-teal); font-size: 13px; }
.header-phone:hover { color: var(--si-teal); }
.header .mobile-menu-items ul li a.active { color: var(--si-teal) !important; }
.header .mobile-menu-items > ul > li > a { font-size: 15px; }
@media (min-width: 992px) {
  .header .mobile-menu-items ul li.mega-funding > ul.sub-2col { width: 560px; display: grid; grid-template-columns: 1fr 1fr; column-gap: 10px; padding: 18px 16px; }
  .header .mobile-menu-items ul li.mega-funding > ul.sub-2col li:first-child { grid-column: 1 / -1; border-bottom: 1px solid var(--si-line); margin-bottom: 6px; }
}
@media (max-width: 1399px) and (min-width: 992px) {
  .header .mobile-menu-items > ul > li { margin: 0 10px !important; }
  .header .header-btn-wrap .header-btn { padding: 16px 20px; }
}
.side-menu-logo img, .side-menu-head img { max-width: 220px; height: auto; }

/* ------------------------------------------------ headings */
.section-heading .sub-heading { display: inline-flex; align-items: center; gap: 8px; text-transform: uppercase; letter-spacing: .08em; font-weight: 600; font-size: 14px; margin-bottom: 18px; color: var(--si-blue); }
.section-heading .sub-heading img { width: 16px; height: 16px; margin: 0 !important; }
.white-content .sub-heading, .bg-dark-1 .sub-heading { color: var(--si-teal) !important; }
.section-heading .section-title span { background: var(--si-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.white-content .section-title span, .bg-dark-1 .section-title span, .cta-band .section-title span { background: linear-gradient(100deg, #5FE3D3, #7CC4FF); -webkit-background-clip: text; background-clip: text; color: transparent; }
.section-heading .section-title .char, .section-heading .section-title .word, .section-heading .section-title .line { background: inherit; -webkit-background-clip: inherit; }
.section-heading .section-title span .char, .section-heading .section-title span .word, .section-heading .section-title span .line { background: inherit; -webkit-background-clip: text; background-clip: text; color: transparent; }
.section-lead { max-width: 720px; font-size: 18px; margin-top: 18px; }
.mx-auto.section-lead { margin-left: auto; margin-right: auto; }
.bg-soft { background-color: var(--si-soft) !important; }

/* ------------------------------------------------ hero */
.hero-section .hero-content .hero-right-content .title span { color: var(--si-teal); }
.hero-icon-list li { display: inline-flex !important; align-items: center; justify-content: center; background: #fff; color: var(--si-navy); font-size: 18px; }
.hero-icon-list li i { line-height: 1; }
.hero-icon-list li.icon { background: var(--si-grad) !important; color: #fff !important; }
.hero-icon-list.dark li:not(.icon) { background: var(--si-navy); color: #fff; }
.hero-client-wrap .desc strong, .promo-left-inner .desc strong { color: var(--si-teal); font-size: 1.15em; }
.hero-btns { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; margin-top: 28px; }
.hero-link { color: #fff; font-weight: 600; display: inline-flex; align-items: center; gap: 8px; border-bottom: 1px solid rgba(255,255,255,.35); padding-bottom: 3px; }
.hero-link:hover { color: var(--si-teal); border-color: var(--si-teal); }
.hero-link.light { color: #fff; }
.hero-img-box { position: relative; }
.hero-img-box img { width: 100%; height: 100%; object-fit: cover; display: block; }
.hero-img-caption { position: absolute; left: 0; right: 0; bottom: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; padding: 26px 15px; background: linear-gradient(0deg, rgba(6,17,42,.85), rgba(6,17,42,0)); }
.hero-img-caption span { color: #fff; border: 1px solid rgba(255,255,255,.4); border-radius: 100px; padding: 8px 18px; font-size: 14px; font-weight: 600; letter-spacing: .04em; backdrop-filter: blur(6px); background: rgba(255,255,255,.06); }

/* ------------------------------------------------ about (home) */
.about-counter .title { font-family: "NewYork", serif; font-size: 120px; line-height: 1; color: var(--si-navy); margin-bottom: 6px; }
.about-counter .title .icon { color: var(--si-teal); }
.about-feature-row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin: 28px 0 40px; }
.about-feature-row > div { background: var(--si-soft); border-radius: var(--si-radius); padding: 22px; display: flex; flex-direction: column; gap: 6px; }
.about-feature-row i { font-size: 26px; color: var(--si-blue); margin-bottom: 6px; }
.about-feature-row strong { color: var(--si-navy); font-size: 18px; }
.about-feature-row span { font-size: 15px; line-height: 1.55; }
@media (max-width: 575px) { .about-feature-row { grid-template-columns: 1fr; } .about-counter .title { font-size: 80px; } }
.about-img-wrap img, .about-img-2 img, .about-img-3 img, .about-thumb img, .promo-img-2 img, .skill-img img, .content-img img, .rounded-img img, .service-details-img img, .service-details-img-2 img, .promo-video-box img { width: 100%; height: auto; object-fit: cover; border-radius: var(--si-radius); }
.rounded-img { border-radius: var(--si-radius); overflow: hidden; position: relative; }

/* ------------------------------------------------ service cards */
.service-item .icon i, .service-item-3 .icon i { font-size: 34px; line-height: 1; background: var(--si-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.service-section.bg-dark-1 .service-item .icon { width: 70px; height: 70px; display: inline-flex; align-items: center; justify-content: center; border-radius: 16px; background: var(--si-soft); }
.service-item .service-content .title a { color: inherit; }
.service-section.bg-dark-1 .service-item .service-content p { color: var(--si-text); min-height: 78px; }
.service-item-3 .icon { width: 70px; height: 70px; border-radius: 16px; background: var(--si-soft) !important; display: inline-flex !important; align-items: center; justify-content: center; }
.service-inner-item-wrap .service-item-3 { height: 100%; }
.service-item-3 .service-content p { font-size: 16px; line-height: 1.6; }
.service-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 14px; font-weight: 600; font-size: 15px; color: var(--si-blue); }
.service-link:hover { color: var(--si-teal-dark); gap: 12px; }
.bg-dark-1 .service-item-3 .service-link { color: var(--si-teal); }
.service-carousel .swiper-slide { height: auto; }
.service-carousel .service-item { height: 100%; }

/* ------------------------------------------------ steps / counters */
.step-section .section-heading { margin-bottom: 60px; }
.step-5 .step-details-item .title { font-size: 22px; }
.step-5 .step-details-item p { font-size: 16px; }
.counter-item .title { font-family: "NewYork", serif; }
.counter-item .counter-text { font-size: 64px; line-height: 1.1; }
.counter-item .title .icon { color: var(--si-teal); }
.home-counters { padding-top: 90px; padding-bottom: 90px; }

/* ------------------------------------------------ lists & cards */
.check-list { list-style: none; padding: 0; margin: 24px 0; display: grid; gap: 12px; }
.check-list li { position: relative; padding-left: 34px; line-height: 1.6; }
.check-list li:before { content: "\f00c"; font-family: "Font Awesome 6 Pro"; font-weight: 900; position: absolute; left: 0; top: 2px; width: 22px; height: 22px; border-radius: 50%; background: var(--si-grad); color: #fff; font-size: 11px; display: flex; align-items: center; justify-content: center; }
.check-list.two-col { grid-template-columns: 1fr 1fr; column-gap: 26px; }
@media (max-width: 767px) { .check-list.two-col { grid-template-columns: 1fr; } }
.check-list.light li { color: rgba(255,255,255,.85); }
.readiness-list li { background: #fff; border: 1px solid var(--si-line); border-radius: 14px; padding: 18px 20px 18px 56px; }
.readiness-list li:before { left: 20px; top: 20px; }
.bg-soft .readiness-list li { background: #fff; }

.feature-card { background: #fff; border: 1px solid var(--si-line); border-radius: var(--si-radius); padding: 28px; height: 100%; transition: transform .3s, box-shadow .3s; position: relative; }
.feature-card:hover { transform: translateY(-4px); box-shadow: 0 24px 44px -28px rgba(10,27,61,.45); }
.feature-card .num { font-family: "NewYork", serif; font-size: 34px; line-height: 1; background: var(--si-grad); -webkit-background-clip: text; background-clip: text; color: transparent; display: block; margin-bottom: 14px; }
.feature-card h3 { font-size: 20px; margin-bottom: 10px; color: var(--si-navy); }
.feature-card p { font-size: 16px; line-height: 1.6; margin: 0; }
.feature-card.icon-card i, .feature-card.platform-card i { font-size: 34px; margin-bottom: 16px; display: inline-block; background: var(--si-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.platform-card h3 { font-size: 26px; }
.context-cards { display: grid; gap: 16px; }

.consider-item { display: flex; gap: 14px; padding: 20px; border-radius: 14px; background: var(--si-soft); height: 100%; }
.consider-item i { font-size: 22px; color: var(--si-blue); margin-top: 3px; }
.consider-item h3 { font-size: 18px; margin-bottom: 6px; color: var(--si-navy); }
.consider-item p { font-size: 15px; line-height: 1.55; margin: 0; }
.consider-item.card-style { background: #fff; border: 1px solid var(--si-line); }

.process-list { list-style: none; padding: 0; margin: 24px 0 40px; counter-reset: none; }
.process-list li { display: flex; gap: 20px; padding: 20px 0; border-bottom: 1px solid var(--si-line); }
.process-list li:last-child { border-bottom: 0; }
.process-list .step-no { flex: 0 0 52px; height: 52px; border-radius: 50%; background: var(--si-grad); color: #fff; font-weight: 700; display: flex; align-items: center; justify-content: center; font-size: 16px; }
.process-list h3 { font-size: 20px; margin-bottom: 6px; color: var(--si-navy); }
.process-list p { margin: 0; font-size: 16px; line-height: 1.6; }
.process-list.light li { border-color: rgba(255,255,255,.14); }
.process-list.light h3 { color: #fff; }
.process-list.light p { color: rgba(255,255,255,.75); }

.step-card { background: #fff; border: 1px solid var(--si-line); border-radius: var(--si-radius); padding: 30px; height: 100%; position: relative; overflow: hidden; }
.step-card:after { content: ""; position: absolute; left: 0; top: 0; height: 4px; width: 100%; background: var(--si-grad); }
.step-card .number { display: inline-block; font-weight: 700; color: var(--si-blue); letter-spacing: .06em; text-transform: uppercase; font-size: 14px; margin-bottom: 14px; }
.step-card h3 { font-size: 21px; color: var(--si-navy); margin-bottom: 10px; }
.step-card p { margin: 0; font-size: 16px; line-height: 1.6; }

.suits-box { background: var(--si-soft); border-radius: var(--si-radius); padding: 32px; margin: 10px 0 40px; }
.suits-box .details-title-2 { margin-bottom: 4px !important; }
.note-box { background: #EEF6FF; border-left: 4px solid var(--si-blue); padding: 16px 20px; border-radius: 10px; font-size: 15px; line-height: 1.6; color: var(--si-text); }
.note-box i { color: var(--si-blue); margin-right: 6px; }
.bg-dark-1 .note-box { background: rgba(255,255,255,.06); color: rgba(255,255,255,.8); }
.small-note { font-size: 14px; line-height: 1.6; opacity: .85; margin-top: 16px; }
.brand-quote { margin: 30px 0 40px; padding: 30px 32px 30px 76px; border-radius: var(--si-radius); background: var(--si-navy); position: relative; }
.brand-quote i { position: absolute; left: 28px; top: 30px; font-size: 30px; color: var(--si-teal); }
.brand-quote p { color: #fff !important; font-size: 20px; line-height: 1.55; margin: 0; font-weight: 500; }
.brand-quote cite { display: block; margin-top: 12px; color: var(--si-teal); font-style: normal; font-size: 15px; }
.brand-quote.light { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.15); }

.service-details-content .details-title, .service-details-content .details-title-2 { text-transform: none; }
.service-details-content .details-title-2 { margin: 50px 0 22px; font-size: 32px; }
.service-details-content .details-title-2 span, .service-details-content .details-title span, .details-title span, .details-title-2 span { font-family: "NewYork", serif; font-weight: 400; background: var(--si-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.service-details .service-sidebar-list a.active { background: var(--si-grad); color: #fff; }
.service-details .service-sidebar-list a.active i { color: #fff; }
.sidebar-cta .content { display: flex; flex-direction: column; gap: 8px; }
.sidebar-cta .content a { color: #fff; font-weight: 500; word-break: break-word; }
.sidebar-cta .content .service-cta-title { color: #fff; font-size: 24px; font-weight: 600; margin-bottom: 6px; font-family: var(--cp-ff-heading); }
.sidebar-cta .content .cp-primary-btn:before { background-color: #fff; }
.sidebar-cta .content .cp-primary-btn:hover .btn-text .btn-text-2 { color: var(--si-navy); }

/* ------------------------------------------------ CTA band */
.cta-band { position: relative; padding: 140px 0; overflow: hidden; text-align: center; }
.cta-band-bg { position: absolute; inset: 0; background-size: cover; background-position: center; transform: scale(1.04); }
.cta-band-overlay { position: absolute; inset: 0; background: linear-gradient(110deg, rgba(6,17,42,.94) 0%, rgba(10,27,61,.86) 55%, rgba(10,111,214,.62) 100%); }
.cta-band .container { position: relative; z-index: 2; }
.cta-band-inner { max-width: 860px; margin: 0 auto; }
.cta-band p { color: rgba(255,255,255,.85); font-size: 19px; line-height: 1.6; }
.cta-band .section-title { color: #fff; }
.cta-band-btns { display: flex; flex-wrap: wrap; gap: 24px; align-items: center; justify-content: center; margin-top: 34px; }
.cta-phone { color: #fff; font-weight: 600; font-size: 18px; display: inline-flex; align-items: center; gap: 10px; }
.cta-phone i { width: 44px; height: 44px; border-radius: 50%; border: 1px solid rgba(255,255,255,.4); display: inline-flex; align-items: center; justify-content: center; font-size: 15px; }
.cta-phone:hover { color: var(--si-teal); }

/* ------------------------------------------------ testimonials / countries */
.country-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 26px; }
.country-chips span { background: var(--si-soft); border: 1px solid var(--si-line); color: var(--si-navy); border-radius: 100px; padding: 6px 14px; font-size: 14px; font-weight: 500; }
.testi-client-wrap .desc strong { color: var(--si-blue); }
.testi-title { font-size: 22px !important; font-weight: 600; color: var(--si-navy) !important; margin-bottom: 10px; font-family: var(--cp-ff-heading); }
.testi-author .content .name { display: block; font-weight: 600; color: var(--si-navy); font-family: var(--cp-ff-heading); font-size: 18px; }
.testi-author .content span:not(.name) { font-size: 14px; }
.testi-author-img img { width: 100%; height: auto; border-radius: var(--si-radius); object-fit: cover; }
.country-list { list-style: none; padding: 0; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; margin-top: 24px; }
.country-list li { background: var(--si-soft); border-radius: 12px; padding: 12px 14px; font-weight: 600; color: var(--si-navy); font-size: 15px; }
.country-list i { color: var(--si-teal); margin-right: 8px; }
@media (max-width: 575px) { .country-list { grid-template-columns: 1fr 1fr; } }

.ecosystem-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.ecosystem-grid > div { border: 1px solid rgba(255,255,255,.15); border-radius: var(--si-radius); padding: 28px; background: rgba(255,255,255,.04); }
.ecosystem-grid .big { font-family: "NewYork", serif; font-size: 54px; line-height: 1; color: #fff !important; margin-bottom: 10px; background: linear-gradient(100deg, #5FE3D3, #7CC4FF); -webkit-background-clip: text; background-clip: text; color: transparent !important; }
.ecosystem-grid p:not(.big) { font-size: 15px; margin: 0; }

/* ------------------------------------------------ readiness tool */
.readiness-tool { background: #fff; border-radius: 24px; padding: 40px; box-shadow: 0 30px 60px -40px rgba(10,27,61,.5); border: 1px solid var(--si-line); }
.rt-progress { height: 6px; background: var(--si-soft); border-radius: 10px; overflow: hidden; margin-bottom: 30px; }
.rt-progress span { display: block; height: 100%; width: 0; background: var(--si-grad); transition: width .35s; }
.rt-q { display: none; border: 0; padding: 0; margin: 0; }
.rt-q.active { display: block; animation: rtIn .35s ease; }
.rt-q legend { font-family: var(--cp-ff-heading); font-size: 24px; font-weight: 600; color: var(--si-navy); margin-bottom: 22px; float: none; line-height: 1.35; }
.rt-count { display: block; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--si-blue); font-weight: 600; margin-bottom: 8px; font-family: var(--cp-ff-body); }
.rt-opts { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 575px) { .rt-opts { grid-template-columns: 1fr; } .readiness-tool { padding: 26px 20px; } }
.rt-opt { position: relative; cursor: pointer; margin: 0; }
.rt-opt input { position: absolute; opacity: 0; }
.rt-opt span { display: block; border: 1.5px solid var(--si-line); border-radius: 14px; padding: 16px 18px; font-size: 16px; color: var(--si-navy); transition: all .2s; height: 100%; }
.rt-opt:hover span { border-color: var(--si-blue); }
.rt-opt input:checked + span { border-color: transparent; background: var(--si-grad); color: #fff; box-shadow: 0 12px 24px -14px rgba(10,111,214,.8); }
.rt-opt input:focus-visible + span { outline: 3px solid var(--si-teal); outline-offset: 2px; }
.rt-nav { display: flex; justify-content: space-between; align-items: center; margin-top: 30px; }
.rt-back, .rt-restart { background: none; border: 0; color: var(--si-navy); font-weight: 600; padding: 10px 0; }
.rt-back:disabled { opacity: .35; }
.rt-result-title { font-size: 26px; color: var(--si-navy); margin: 6px 0 14px; }
.rt-result-flags { list-style: none; padding: 0; margin: 18px 0; display: grid; gap: 10px; }
.rt-result-flags li { background: #FFF7E6; border-left: 4px solid var(--si-gold); border-radius: 8px; padding: 12px 16px; font-size: 15px; color: var(--si-text); }
.rt-shake { animation: rtShake .35s; }
@keyframes rtIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@keyframes rtShake { 25% { transform: translateX(-6px); } 75% { transform: translateX(6px); } }

/* ------------------------------------------------ industries */
.industry-block { padding: 70px 0; border-bottom: 1px solid var(--si-line); scroll-margin-top: 100px; }
.industry-block:last-child { border-bottom: 0; }
.industry-icon { width: 64px; height: 64px; border-radius: 16px; background: var(--si-grad); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 26px; margin-bottom: 18px; }
.industry-content .details-title-2 { font-size: 34px; margin-bottom: 16px; }
.tag-links { display: flex; flex-wrap: wrap; gap: 10px; }
.tag-link { border: 1.5px solid var(--si-line); border-radius: 100px; padding: 8px 18px; font-size: 14px; font-weight: 600; color: var(--si-navy); }
.tag-link:hover { background: var(--si-navy); border-color: var(--si-navy); color: #fff; }

/* ------------------------------------------------ blog */
.post-card .post-thumb img { width: 100%; height: auto; aspect-ratio: 10 / 7; object-fit: cover; }
.post-card .post-excerpt { font-size: 16px; line-height: 1.6; margin: 10px 0 14px; }
.post-card .title a { color: var(--si-navy); }
.post-card .title a:hover { color: var(--si-blue); }
.article-body h3 { font-size: 26px; margin: 38px 0 14px; color: var(--si-navy); }
.article-body p { font-size: 18px; line-height: 1.75; margin-bottom: 18px; }
.article-body ul, .article-body ol { padding-left: 22px; margin-bottom: 22px; }
.article-body li { font-size: 18px; line-height: 1.7; margin-bottom: 10px; color: var(--si-text); }
.article-body blockquote { margin: 30px 0; padding: 26px 30px; border-radius: var(--si-radius); background: var(--si-navy); }
.article-body blockquote p { color: #fff; font-size: 21px; margin: 0; }
.article-body a { text-decoration: underline; text-underline-offset: 3px; }
.blog-details-img img { width: 100%; height: auto; border-radius: var(--si-radius); }
.article-cta { margin-top: 40px; padding: 30px; border-radius: var(--si-radius); background: var(--si-soft); display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 18px; }
.article-cta p { margin: 0; font-size: 20px; font-weight: 600; color: var(--si-navy); }
.sidebar-post img { width: 90px; height: 76px; object-fit: cover; border-radius: 10px; flex: 0 0 90px; }
.sidebar-cta-box { display: flex; flex-direction: column; gap: 8px; }
.sidebar-cta-box a { color: var(--si-navy); font-weight: 500; }

/* ------------------------------------------------ page header */
.page-header .page-lead { color: rgba(255,255,255,.8); max-width: 760px; margin: 0 auto 18px; font-size: 19px; line-height: 1.55; }
.page-header .breadcrumb-nav { display: inline-flex; flex-wrap: wrap; justify-content: center; align-items: center; }
.page-header .title { text-transform: none; }

/* ------------------------------------------------ contact */
.form-intro { margin-bottom: 26px; }
.contact-form .form-item .form-control, .contact-form .nice-select { width: 100%; }
.contact-form .nice-select { height: 60px; line-height: 58px; border-radius: 10px; }
.contact-form .nice-select .list { width: 100%; max-height: 280px; overflow-y: auto; }
.hp-field { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }
.consent .form-check-label { font-size: 15px; line-height: 1.55; }
.contact-cards { list-style: none; padding: 0; margin: 28px 0; display: grid; gap: 14px; }
.contact-cards li { display: flex; gap: 16px; align-items: flex-start; background: var(--si-soft); border-radius: 14px; padding: 18px 20px; }
.contact-cards i { width: 46px; height: 46px; flex: 0 0 46px; border-radius: 12px; background: var(--si-grad); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 18px; }
.contact-cards strong { display: block; color: var(--si-navy); margin-bottom: 2px; }
.contact-cards a { display: block; color: var(--si-text); word-break: break-word; }
.contact-cards a:hover { color: var(--si-blue); }
.helpful-box { border: 1px solid var(--si-line); border-radius: var(--si-radius); padding: 26px; }
.helpful-box h3 { font-size: 20px; color: var(--si-navy); }
.map-section iframe { width: 100%; height: 420px; border: 0; display: block; filter: saturate(.8); }
#form-messages:empty { display: none; }

/* ------------------------------------------------ legal & 404 */
.legal-body h2 { font-size: 26px; margin: 36px 0 12px; color: var(--si-navy); text-transform: none; }
.legal-body p { font-size: 17px; line-height: 1.75; }
.legal-updated { font-weight: 600; color: var(--si-blue) !important; }
.error-code { font-family: "NewYork", serif; font-size: 160px; line-height: 1; margin-bottom: 10px; background: var(--si-grad); -webkit-background-clip: text; background-clip: text; color: transparent !important; }
.error-links { list-style: none; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 20px; }
.error-links a { border: 1.5px solid var(--si-line); border-radius: 100px; padding: 8px 18px; font-weight: 600; color: var(--si-navy); }

/* ------------------------------------------------ footer */
.footer-section .footer-text .footer-header { font-family: var(--cp-ff-heading); font-size: 140px; font-weight: 700; text-transform: uppercase; color: #fff; line-height: 1; margin: 0; display: inline-flex; align-items: center; gap: 30px; }
@media (max-width: 1199px) { .footer-section .footer-text .footer-header { font-size: 90px; } }
@media (max-width: 767px) { .footer-section .footer-text .footer-header { font-size: 46px; gap: 14px; flex-wrap: wrap; justify-content: center; } }
.footer-section .contact-btn { background: var(--si-grad) !important; color: #fff !important; }
.footer-logo img { max-width: 250px; height: auto; }
.footer-section .widget-title { font-size: 20px; color: #fff; text-transform: none; }
.footer-contact-mini { list-style: none; padding: 0; margin: 0; display: grid; gap: 12px; }
.footer-contact-mini li { display: flex; gap: 12px; align-items: flex-start; }
.footer-contact-mini i { color: var(--si-teal); margin-top: 5px; width: 16px; }
.footer-contact-mini a { color: rgba(255,255,255,.85); font-size: 16px; line-height: 1.5; }
.footer-contact-mini a:hover, .footer-list a:hover { color: var(--si-teal) !important; }
.footer-disclaimer { border-top: 1px solid rgba(255,255,255,.12); margin-top: 40px; padding-top: 26px; }
.footer-disclaimer p { font-size: 13px; line-height: 1.7; color: rgba(255,255,255,.55) !important; margin: 0; }
.footer-disclaimer strong { color: rgba(255,255,255,.8); }

/* ------------------------------------------------ mobile CTA bar */
.mobile-cta-bar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 998; display: flex; background: var(--si-navy); box-shadow: 0 -8px 24px rgba(0,0,0,.2); }
.mobile-cta-bar a { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 10px 4px; color: #fff; font-size: 12px; font-weight: 600; }
.mobile-cta-bar a i { font-size: 16px; color: var(--si-teal); }
.mobile-cta-bar a.primary { background: var(--si-grad); }
.mobile-cta-bar a.primary i { color: #fff; }
@media (max-width: 991px) { body { padding-bottom: 62px; } #scroll-percentage { bottom: 80px !important; } }

/* ------------------------------------------------ responsive helpers */
@media (max-width: 991px) {
  .step-5 .line { display: none; }
  .service-details-content .details-title-2 { font-size: 26px; }
  .brand-quote { padding: 26px 22px 26px 64px; }
  .brand-quote p { font-size: 18px; }
  .cta-band { padding: 100px 0; }
}

/* ------------------------------------------------ header fit fixes */
.header .primary-header-inner { flex-wrap: nowrap; align-items: center; gap: 24px; }
.header .primary-header-inner .header-menu-wrap { flex: 1 1 auto; justify-content: center; }
.header .mobile-menu-items > ul { display: flex; flex-wrap: nowrap; align-items: center; justify-content: center; }
.header .mobile-menu-items > ul > li { margin: 0 13px !important; white-space: nowrap; }
.header .primary-header-inner .header-right-wrap .header-right .header-btn { background: var(--si-grad); padding: 18px 26px; }
.header .primary-header-inner .header-right-wrap .header-right .header-btn .btn-text .btn-text-1 { color: #fff; }
.header .primary-header-inner .header-right-wrap .header-right .header-btn:before { background-color: #fff; }
.header .primary-header-inner .header-right-wrap .header-right .header-btn:hover .btn-text .btn-text-2 { color: var(--si-navy); }
.header-phone { display: none !important; }
@media (min-width: 1600px) { .header-phone { display: inline-flex !important; } }
@media (max-width: 1599px) { .header .primary-header-inner .header-logo img { width: 215px; max-width: 215px; } }
@media (max-width: 1399px) {
  .header .header-btn-wrap { display: none; }
  .header .mobile-menu-items > ul > li { margin: 0 10px !important; }
  .header .mobile-menu-items > ul > li > a { font-size: 14px; }
}
@media (max-width: 1199px) {
  .header .primary-header-inner .header-logo img { width: 180px; max-width: 180px; }
  .header .mobile-menu-items > ul > li { margin: 0 7px !important; }
  .header .mobile-menu-items > ul > li > a { font-size: 13px; }
}
@media (max-width: 991px) { .header .primary-header-inner .header-logo img { width: 190px; max-width: 190px; } }

/* hero eyebrow inside the H1 */
.hero-section .hero-right-content .title small { display: block; font-family: var(--cp-ff-body); font-size: 15px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--si-teal); margin-bottom: 22px; line-height: 1.5; }

/* solid accent colours for split-animated title spans (more robust than gradient text) */
.section-heading .section-title span, .section-heading .section-title span .char, .section-heading .section-title span .word, .section-heading .section-title span .line { background: none !important; -webkit-background-clip: initial !important; background-clip: initial !important; color: var(--si-blue) !important; }
.white-content .section-title span, .bg-dark-1 .section-title span, .cta-band .section-title span,
.white-content .section-title span .char, .bg-dark-1 .section-title span .char, .cta-band .section-title span .char,
.white-content .section-title span .line, .bg-dark-1 .section-title span .line, .cta-band .section-title span .line { color: #5FE3D3 !important; }
.hero-content .hero-right-content .title span.hero-main { font-family: var(--cp-ff-heading); font-weight: 700; display: block; color: #fff; }
.hero-content .hero-right-content .title span.hero-main .char { font-family: inherit; display: inline-block; }
.hero-content .hero-right-content .title em { font-style: normal; font-family: "NewYork", serif; font-weight: 400; color: var(--si-teal); }
.hero-content .hero-right-content .title em .char { font-family: "NewYork", serif; color: var(--si-teal); }
@media (min-width: 1600px) and (max-width: 1749px) { .header-phone { display: none !important; } }
@media (min-width: 1400px) and (max-width: 1599px) { .header .mobile-menu-items > ul > li { margin: 0 8px !important; } .header .mobile-menu-items > ul > li > a { font-size: 14.5px; } }
@media (max-width: 1199px) {
  .header .primary-header-inner .header-menu-wrap { display: none; }
  .header .primary-header-inner .header-right-wrap .header-right .header-right-item { display: block !important; }
  .header .primary-header-inner { justify-content: space-between; }
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .header .header-wrap { padding-left: 30px !important; padding-right: 30px !important; }
  .header .primary-header-inner .header-logo img { width: 190px; max-width: 190px; }
  .header .mobile-menu-items > ul > li { margin: 0 8px !important; }
}
.header-btn .btn-text span, .cp-primary-btn .btn-text span { white-space: nowrap; }
.step-section .section-heading { margin-bottom: 110px !important; }
@media (max-width: 991px) { .step-section .section-heading { margin-bottom: 60px !important; } }

/* ------------------------------------------------ review fixes */
blockquote.brand-quote, .article-body blockquote { display: block !important; }
.brand-quote p, .article-body blockquote p { width: auto !important; max-width: none !important; }
.about-inner-right p, .about-content-3 p { text-transform: none !important; }
.testi-author { width: 100%; }
.testi-author .content { flex: 1 1 auto; width: auto !important; max-width: none !important; }
.testi-author .content span { display: block; white-space: normal; }
.service-details .service-sidebar-list a { color: var(--si-navy); }
.service-details .service-sidebar-list a.active { color: #fff; }
.sidebar-widget .category-list a { color: var(--si-navy); }
.sidebar-post { display: flex !important; gap: 14px; align-items: flex-start; }
.sidebar-post .post-content .title { font-size: 16px; line-height: 1.4; text-transform: none; }
.sidebar-post .post-content .title a { color: var(--si-navy); }
.contact-form .nice-select { display: flex; align-items: center; line-height: 1.2; padding-top: 0; padding-bottom: 0; font-size: 16px; }
.contact-form .nice-select .current { line-height: 1.2; }
.contact-cards a { font-weight: 400 !important; font-size: 16px !important; line-height: 1.5; }
.contact-list.contact-cards li { margin: 0 !important; }
.post-card .title { text-transform: none; }
.testi-carousel-2, .testi-carousel { overflow: hidden; }
@media (max-width: 767px) {
  .copyright-content { text-align: center; row-gap: 10px; }
  .copyright-list { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 8px 18px; padding-right: 0; }
  .copyright-list li { margin: 0 !important; }
  .copyright-area { padding-bottom: 10px; }
}

/* ------------------------------------------------ image slots never look empty */
.img-reveal, .project-thumb, .post-thumb, .hero-img-box, .testi-author-img, .promo-video-box, .sidebar-img,
.blog-details-img, .rounded-img, .about-thumb, .skill-img, .content-img, .service-details-img, .service-details-img-2, .sidebar-post img {
  background: linear-gradient(135deg, #0A1B3D 0%, #0A4F9E 100%);
}
.img-reveal, .post-thumb, .project-thumb, .testi-author-img, .promo-video-box, .blog-details-img { border-radius: var(--si-radius); overflow: hidden; }
.img-reveal .img-overlay { background: linear-gradient(135deg, #0A1B3D, #0A4F9E) !important; }
img[data-fallback] { object-fit: cover; }

/* ------------------------------------------------ creative: Business Funding & Growth Solutions */
.growth-section { background: linear-gradient(180deg, #fff 0%, var(--si-soft) 100%); }
.growth-tags { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.growth-tags li { font-family: var(--cp-ff-heading); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; font-size: 15px; color: var(--si-navy); background: #fff; border: 1.5px solid var(--si-line); border-left: 4px solid var(--si-gold); border-radius: 10px; padding: 10px 18px; }
@media (max-width: 991px) { .growth-tags { justify-content: flex-start; } }
.growth-benefits { display: grid; grid-template-columns: repeat(4, 1fr); background: var(--si-navy); border-radius: var(--si-radius); margin-bottom: 30px; overflow: hidden; }
.growth-benefits > div { display: flex; align-items: center; gap: 16px; padding: 28px 26px; color: #fff; border-right: 1px solid rgba(255,255,255,.12); }
.growth-benefits > div:last-child { border-right: 0; }
.growth-benefits i { font-size: 34px; color: var(--si-gold); }
.growth-benefits span { font-family: var(--cp-ff-heading); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; font-size: 16px; line-height: 1.3; color: #fff; }
@media (max-width: 991px) { .growth-benefits { grid-template-columns: repeat(2, 1fr); } .growth-benefits > div:nth-child(2) { border-right: 0; } .growth-benefits > div:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.12); } }
@media (max-width: 575px) { .growth-benefits > div { padding: 20px 16px; gap: 10px; } .growth-benefits i { font-size: 26px; } .growth-benefits span { font-size: 13px; } }
.growth-card { display: flex; flex-direction: column; height: 100%; background: #fff; border: 1px solid var(--si-line); border-radius: var(--si-radius); padding: 30px; text-align: center; align-items: center; transition: transform .3s, box-shadow .3s, border-color .3s; }
.growth-card:hover { transform: translateY(-5px); box-shadow: 0 26px 46px -30px rgba(10,27,61,.55); border-color: transparent; }
.gc-icon { width: 76px; height: 76px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: linear-gradient(135deg, rgba(201,162,74,.16), rgba(201,162,74,.04)); margin-bottom: 18px; }
.gc-icon i { font-size: 34px; color: var(--si-gold); }
.growth-card h3 { font-size: 22px; color: var(--si-navy); margin-bottom: 10px; }
.growth-card p { font-size: 16px; line-height: 1.55; margin-bottom: 16px; flex: 1; }
.gc-link { font-weight: 600; font-size: 15px; color: var(--si-blue); display: inline-flex; gap: 8px; align-items: center; }
.growth-card:hover .gc-link { color: var(--si-teal-dark); }
.additional-support { margin-top: 50px; background: var(--si-navy); border-radius: 24px; padding: 40px 34px 34px; position: relative; overflow: hidden; }
.additional-support:after { content: ""; position: absolute; right: -120px; top: -120px; width: 320px; height: 320px; border-radius: 50%; background: radial-gradient(circle, rgba(29,191,174,.35), transparent 70%); }
.additional-title { text-align: center; margin-bottom: 30px; position: relative; z-index: 1; display: flex; align-items: center; gap: 18px; }
.additional-title:before, .additional-title:after { content: ""; flex: 1; height: 1px; background: linear-gradient(90deg, transparent, var(--si-gold)); }
.additional-title:after { background: linear-gradient(90deg, var(--si-gold), transparent); }
.additional-title span { color: var(--si-gold); font-size: 20px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.support-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; position: relative; z-index: 1; }
.support-grid a { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 14px; padding: 10px 14px; color: #fff; border-right: 1px solid rgba(255,255,255,.14); }
.support-grid a:last-child { border-right: 0; }
.support-grid i { width: 68px; height: 68px; border-radius: 50%; border: 2px solid var(--si-gold); color: var(--si-gold); display: inline-flex; align-items: center; justify-content: center; font-size: 26px; transition: background .3s, color .3s; }
.support-grid a:hover i { background: var(--si-gold); color: var(--si-navy); }
.support-grid span { font-weight: 600; font-size: 16px; line-height: 1.35; }
.support-grid small { display: block; font-weight: 400; font-size: 13px; opacity: .8; margin-top: 2px; }
.grow-together { position: relative; z-index: 1; text-align: right; margin: 22px 6px 0; font-family: "NewYork", serif; font-style: italic; font-size: 34px; color: var(--si-gold) !important; }
@media (max-width: 991px) {
  .support-grid { grid-template-columns: repeat(3, 1fr); row-gap: 24px; }
  .support-grid a:nth-child(3) { border-right: 0; }
}
@media (max-width: 575px) {
  .additional-support { padding: 30px 16px 24px; }
  .additional-title span { font-size: 15px; white-space: normal; }
  .support-grid { grid-template-columns: repeat(2, 1fr); }
  .support-grid a { border-right: 0 !important; }
  .support-grid a:last-child { grid-column: 1 / -1; }
  .grow-together { text-align: center; font-size: 28px; }
}

/* footer credit */
.site-credit { margin-top: 4px; font-size: 14px; color: rgba(255,255,255,.6) !important; }
.site-credit a { color: var(--si-teal); font-weight: 600; text-decoration: none; border-bottom: 1px solid rgba(29,191,174,.4); }
.site-credit a:hover { color: #fff; border-color: #fff; }
.footer-contact-mini li span a { display: block; }
.ecosystem-grid > div { min-width: 0; }
@media (max-width: 575px) { .ecosystem-grid { gap: 12px; } .ecosystem-grid > div { padding: 20px 16px; } .ecosystem-grid .big { font-size: 38px; } }
@media (min-width: 768px) { .copyright-area .copyright-list { padding-right: 90px; } }
@media (max-width: 767px) { .copyright-area { padding-bottom: 70px; } }
@media (max-width: 767px) { #scroll-percentage { display: none !important; } .copyright-area { padding-bottom: 20px; } }
