:root {
  --ink: #1f302b;
  --muted: #596a62;
  --line: #dce4df;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 15px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3 { font-weight: 600; line-height: 1.35; }
h2 { font-size: 30px; }
h3 { font-size: 19px; }
p { line-height: 1.7; }
.container { width: min(1160px, calc(100% - 80px)); }
.section { padding: 72px 0; }
.section-head { margin-bottom: 30px; }
.section-head h2 { max-width: 780px; }
.section-head p { font-size: 14px; }
.eyebrow { font: 600 12px/1.4 Manrope, sans-serif; margin-bottom: 13px; }
.text-link, .button { font-size: 14px; }
.navigation a { font-size: 14px; }
.header { height: 78px; padding: 0; }
.header-inner { width: min(1160px, calc(100% - 80px)); height: 100%; margin: 0 auto; display: flex; align-items: center; gap: 38px; }
.header .brand { width: 154px; }
.header .navigation { margin-left: auto; height: 100%; gap: 34px; }
.header .navigation a { font-size: 14px; }
.header .navigation a.active { color: var(--green); }
.header .navigation a.active::after { height: 2px; }
.header .header-actions { gap: 0; }
.header .header-actions .button { min-height: 39px; padding: 8px 16px; }

.trade-hero h1 { font: 700 56px/1.1 Manrope, sans-serif; margin-bottom: 12px; color: white; }
.trade-offer { font-size: 19px; margin-bottom: 20px; }
.trade-hero-tagline { font-size: 30px; line-height: 1.42; margin-bottom: 19px; }
.trade-summary { font-size: 15px; line-height: 1.65; max-width: 430px; }
.trade-hero { position: relative; isolation: isolate; height: calc(100vh - 173px); height: calc(100svh - 173px); min-height: 500px; overflow: hidden; background: #07516c; color: white; }
.trade-hero-sea, .trade-hero-shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.trade-hero-sea { z-index: -2; object-fit: cover; object-position: center 55%; }
.trade-hero-shade { z-index: -1; background: rgba(5, 29, 53, .38); }
.trade-hero-inner { position: relative; display: flex; justify-content: flex-start; align-items: center; height: 100%; padding-top: 30px; padding-bottom: 30px; }
.trade-hero-copy { position: relative; z-index: 1; width: 48%; padding: 0; color: white; text-shadow: 0 1px 8px rgba(0, 20, 34, .35); }
.trade-hero .trade-offer, .trade-hero .trade-hero-tagline { color: white; }
.trade-hero .trade-summary { color: #e2edf0; }
.trade-hero .hero-outline { color: white; border-color: #c6d5d6; text-shadow: none; }
.trade-hero .hero-outline:hover { background: #ffffff18; }
.trade-chain .container { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.trade-chain a { padding: 24px 16px; }
.trade-chain a:first-child { padding-left: 0; }
.trade-chain a:last-child { padding-right: 0; }
.trade-chain strong { font-size: 15px; }
.trade-chain span { font-size: 11px; }
.trade-product { display: flex; flex-direction: column; }
.trade-product > img { margin-bottom: 20px; }
.trade-product h3 { font-size: 19px; margin-bottom: 10px; }
.trade-product p { min-height: 0; font-size: 14px; line-height: 1.7; }
.trade-product .stage-apps { min-height: 0; margin: auto 0 0; padding-top: 18px; }
.trade-product .text-link { margin-top: 19px; }
.stage-apps span { font-size: 11px; }
.feedback-note { font-size: 13px; }
.home-value-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; align-items: start; }
.home-value-layout h2 { max-width: 430px; margin-bottom: 18px; }
.home-value-layout p { max-width: 400px; font-size: 15px; }
.home-value-layout .text-link { margin-top: 24px; }
.home-value-list { border-top: 1px solid var(--line); }
.home-value-list > div { display: flex; justify-content: space-between; gap: 28px; border-bottom: 1px solid var(--line); padding: 21px 0; }
.home-value-list strong { font-size: 16px; font-weight: 600; white-space: nowrap; }
.home-value-list span { font-size: 14px; color: var(--muted); text-align: right; }
.home-story-layout { display: grid; grid-template-columns: 1.15fr 1fr; gap: 70px; align-items: center; }
.home-story-layout > img { width: 100%; aspect-ratio: 1.7; object-fit: cover; border-radius: 4px; }
.home-story-layout h2 { max-width: 420px; margin-bottom: 18px; }
.home-story-layout p { max-width: 410px; font-size: 15px; }
.home-story-layout .text-link { margin-top: 24px; }

.page-intro { padding: 42px 0 38px; }
.page-intro h1 { font-size: 39px; max-width: 860px; margin-bottom: 14px; }
.page-intro p { max-width: 690px; font-size: 15px; }
.trade-feature-tabs { margin-bottom: 32px; }
.trade-feature-tabs button { font-size: 14px; }
.feature-detail h2 { font-size: 28px; margin-bottom: 16px; }
.feature-detail { align-items: start; }
.feature-detail p { font-size: 15px; }
.feature-subhead { font-size: 14px; }
.check-list { font-size: 14px; margin: 18px 0 25px; }
.feature-note { font-size: 12px; line-height: 1.6; }
.workflow-tool-header, .workflow-lines span { font-size: 14px; }
.workflow-lines > div { padding: 19px 0; }
.workflow-concept { position: relative; width: 100%; aspect-ratio: 1.82; overflow: hidden; background: #f2f7f4; }
.workflow-concept.brand-concept { aspect-ratio: 948 / 835; }
.workflow-concept.acquisition-concept { aspect-ratio: 901 / 740; }
.workflow-concept.inquiry-concept { aspect-ratio: 956 / 735; }
.workflow-concept.customer-concept { aspect-ratio: 1482 / 840; }
.workflow-concept img { width: 100%; height: 100%; object-fit: cover; }
.workflow-signal { position: absolute; width: 8px; height: 8px; border-radius: 50%; background: #167657; box-shadow: 0 0 0 4px #16765730; animation: market-signal-pulse 3.2s ease-out infinite; }
.signal-one { left: 51%; top: 35%; }
.signal-two { left: 61%; top: 44%; animation-delay: 1.6s; }
@keyframes market-signal-pulse {
  0% { opacity: .9; transform: scale(.7); box-shadow: 0 0 0 0 #16765760; }
  70%, 100% { opacity: 0; transform: scale(1.1); box-shadow: 0 0 0 12px #16765700; }
}
.workflow-lines > .workflow-step { border-radius: 3px; animation: workflow-step-cycle 7.2s ease-in-out infinite; animation-delay: calc(var(--step-index) * 2.4s); }
.workflow-step b { animation: workflow-step-number 7.2s ease-in-out infinite; animation-delay: calc(var(--step-index) * 2.4s); }
.workflow-step img { animation: workflow-step-arrow 7.2s ease-in-out infinite; animation-delay: calc(var(--step-index) * 2.4s); }
@keyframes workflow-step-cycle {
  0%, 29% { background: #e3efe8; box-shadow: inset 3px 0 #167657; }
  33%, 100% { background: transparent; box-shadow: inset 3px 0 transparent; }
}
@keyframes workflow-step-number {
  0%, 29% { color: #167657; }
  33%, 100% { color: #7b9789; }
}
@keyframes workflow-step-arrow {
  0%, 29% { transform: translateX(3px); }
  33%, 100% { transform: translateX(0); }
}
.workflow-tool-end { font-size: 12px; }
.trade-workflow h3 { font-size: 18px; }
.trade-workflow p { font-size: 12px; }

.trade-case .case-content { display: flex; flex-direction: column; }
.trade-case h3 { font-size: 19px; line-height: 1.5; margin: 9px 0 12px; }
.trade-case .case-content p { min-height: 0; font-size: 14px; line-height: 1.7; }
.case-focus { margin-top: auto; padding-top: 16px; font-size: 12px; }
.trade-case .text-link { margin-top: 15px; }
.case-summary-band { padding: 35px 0 0; background: var(--light); }
.case-detail-section { padding-top: 35px; }
.case-detail-layout > .editorial > .article-image { margin-top: 0; }
.case-summary-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 22px; }
.case-summary-heading .eyebrow { margin-bottom: 8px; }
.case-summary-heading h2 { font-size: 25px; }
.case-summary-heading small { color: var(--muted); font-size: 11px; }
.case-summary-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.case-summary-metrics > div { display: flex; align-items: baseline; gap: 12px; padding: 16px 18px; border-right: 1px solid var(--line); }
.case-summary-metrics > div:first-child { padding-left: 0; }
.case-summary-metrics > div:last-child { border-right: 0; }
.case-summary-metrics strong { color: var(--green); font-size: 22px; font-weight: 600; font-variant-numeric: tabular-nums; }
.case-summary-metrics span { color: var(--muted); font-size: 12px; }
.case-summary-band .container > p { padding: 12px 0 22px; font-size: 12px; }
.case-summary-band .container > p span { padding: 0 8px; color: #aab7b0; }
.case-data-panel { margin: 38px 0 42px; padding: 22px; background: #f3f7f4; border: 1px solid var(--line); border-radius: 5px; }
.case-data-heading { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.case-data-heading .eyebrow { margin-bottom: 5px; }
.case-data-heading h2 { margin: 0; font-size: 19px; }
.case-data-heading > small { color: var(--muted); font-size: 10px; text-align: right; }
.case-funnel { border-top: 1px solid var(--line); }
.case-funnel-step { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto 145px; align-items: center; gap: 12px; min-height: 64px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.case-funnel-index { color: var(--green); font-size: 11px; font-weight: 600; }
.case-funnel-copy { display: flex; flex-direction: column; gap: 3px; }
.case-funnel-copy strong { font-size: 12px; font-weight: 600; }
.case-funnel-copy span { color: var(--muted); font-size: 10px; }
.case-funnel-value { color: var(--ink); font-size: 17px; font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; }
.case-funnel-rate { color: var(--muted); font-size: 10px; text-align: right; }
.case-effect-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin: 20px 0 12px; }
.case-effect-heading h3 { font-size: 13px; }
.case-effect-heading small { color: var(--muted); font-size: 10px; text-align: right; }
.case-effect-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.case-effect-grid > div { display: flex; min-height: 64px; flex-direction: column; justify-content: center; gap: 5px; padding: 10px 12px; background: white; border: 1px solid #e0e8e3; border-radius: 3px; }
.case-effect-grid strong { color: var(--green); font-size: 14px; font-weight: 600; }
.case-effect-grid span { color: var(--muted); font-size: 10px; line-height: 1.5; }
.case-effect-note { margin-top: 12px; color: var(--muted); font-size: 11px; line-height: 1.6; }
.case-service-intro { margin: -5px 0 18px; color: var(--muted); font-size: 12px; }
.case-service-flow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 18px 0 30px; }
.case-service-step { display: grid; grid-template-columns: 28px minmax(0,1fr); align-content: start; gap: 0 8px; padding: 14px 10px 0 0; border-top: 2px solid #cbd9d1; }
.case-service-number { grid-row: 1 / span 2; color: var(--green); font: 600 11px/1.5 Manrope, sans-serif; }
.case-service-step h3 { margin: 0 0 8px; font-size: 13px; line-height: 1.5; }
.case-service-step p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.7; }
.news-meta { font-size: 12px; }
.news-card h3 { font-size: 19px; line-height: 1.5; }
.news-card > p { font-size: 14px; }
.news-card .text-link { font-size: 14px; }
.filter-tabs button { font-size: 14px; }
.editorial h2 { font-size: 25px; }
.editorial p, .editorial li { font-size: 15px; }
.article-byline, .evidence-note { font-size: 12px; }

.info-layout h2, .contact-layout h2, .about-trade h2 { font-size: 27px; }
.info-layout p, .about-trade p, .contact-layout p, .trust-fact p { font-size: 14px; }
.info-table > div { font-size: 14px; }
.info-table dd small { font-size: 12px; }
.qualification-table { font-size: 13px; }
.qualification-table th { font-size: 12px; }
#trust-identity .eyebrow, #data .eyebrow, #qualifications .eyebrow, #delivery .eyebrow { display: none; }
.contact-form { padding: 28px; }
.contact-layout > div > .text-link { margin-top: 24px; }
.contact-form h3 { font-size: 19px; margin-bottom: 20px; }
.field, .field input, .field select, .field textarea { font-size: 14px; }
.footer-top { padding: 55px 0 36px; }
.footer-top h3 { font-size: 14px; }
.footer-top a, .footer-top p { font-size: 13px; }
.footer-top small { font-size: 12px; }
.cta-band { background: #175b49; color: white; padding: 36px 0; }
.cta-band h2 { font-size: 25px; margin-bottom: 5px; color: white; }
.cta-band p { font-size: 14px; color: #d8e9df; }
.cta-band .button { background: #e6f2da; border-color: #e6f2da; color: #194634; min-width: 150px; }
.cta-band .button:hover { background: white; border-color: white; }
footer { background: var(--light); border-top: 1px solid var(--line); }
.footer-top { grid-template-columns: minmax(250px, 1.45fr) repeat(2, minmax(150px, .8fr)); gap: 56px; padding: 48px 0 52px; }
.footer-logo { width: 154px; margin-bottom: 18px; }
.footer-top h3 { margin-bottom: 16px; color: var(--ink); font-size: 13px; font-weight: 600; }
.footer-top p { margin-bottom: 10px; color: var(--ink); font-size: 14px; }
.footer-top a { width: fit-content; margin-bottom: 9px; line-height: 1.6; }
.footer-top small { display: block; line-height: 1.6; }
.contact-float { position: fixed; z-index: 12; right: 24px; bottom: 24px; width: 154px; padding: 18px 16px 14px; border: 1px solid var(--line); border-radius: 8px; background: #fff; box-shadow: 0 8px 30px #183b2c1c; text-align: center; }
.contact-float a { display: flex; flex-direction: column; align-items: center; gap: 8px; color: var(--muted); font-size: 11px; line-height: 1.4; }
.contact-float strong { color: var(--ink); font-size: 13px; font-weight: 600; }
.contact-float img { width: 104px; height: 104px; padding: 4px; border: 1px solid var(--line); background: white; }
.contact-float-close { position: absolute; top: 5px; right: 7px; display: grid; width: 24px; height: 24px; place-items: center; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--muted); font-size: 19px; line-height: 1; }
.contact-float-close:hover { background: var(--light); color: var(--ink); }

@media (max-width: 1100px) {
  .header-inner { width: calc(100% - 60px); gap: 26px; }
  .header .navigation { gap: 22px; }
}

@media (max-width: 1000px) {
  .header .navigation { top: 78px; }
  .header .navigation.open { display: flex; }
}

@media (max-width: 760px) {
  body { font-size: 14px; }
  .container { width: calc(100% - 40px); }
  .header { height: 68px; padding: 0; }
  .header-inner { width: calc(100% - 40px); gap: 14px; }
  .header .brand { width: 137px; }
  .header .header-actions { margin-left: auto; gap: 10px; }
  .header .header-actions .button { min-height: 35px; padding: 7px 10px; }
  .header .navigation { top: 68px; padding: 10px 20px; }
  .section { padding: 48px 0; }
  .section-head { margin-bottom: 25px; }
  h2 { font-size: 25px; }
  .trade-hero { height: calc(100vh - 358px); height: calc(100svh - 358px); min-height: 350px; }
  .trade-hero-inner { display: block; padding-top: 46px; padding-bottom: 30px; }
  .trade-hero-copy { width: 100%; padding: 0; }
  .trade-hero-sea { object-position: 80% center; }
  .trade-hero h1 { font-size: 46px; }
  .trade-offer { font-size: 17px; margin-bottom: 15px; }
  .trade-hero-tagline { font-size: 25px; margin-bottom: 15px; }
  .trade-summary { font-size: 14px; max-width: 330px; }
  .trade-hero .trade-summary { color: #e2edf0; }
  .trade-hero .hero-outline { color: white; border-color: #c6d5d6; }
  .trade-chain strong { font-size: 14px; }
  .trade-chain span { font-size: 11px; }
  .home-value-layout, .home-story-layout { grid-template-columns: 1fr; gap: 28px; }
  .home-value-layout h2, .home-story-layout h2 { margin-bottom: 12px; }
  .home-value-layout p, .home-story-layout p { font-size: 14px; }
  .home-value-layout .text-link, .home-story-layout .text-link { margin-top: 18px; }
  .home-value-list > div { padding: 17px 0; gap: 16px; }
  .home-value-list strong { font-size: 14px; }
  .home-value-list span { font-size: 13px; }
  .home-story-layout > img { aspect-ratio: 1.8; }
  .trade-product h3, .trade-case h3, .news-card h3 { font-size: 19px; }
  .trade-product p, .trade-case .case-content p, .news-card > p { font-size: 14px; }
  .page-intro { padding: 30px 0 34px; }
  .page-intro h1 { font-size: 30px; }
  .page-intro p { font-size: 14px; }
  .case-summary-band { padding-top: 26px; }
  .case-detail-section { padding-top: 26px; }
  .case-summary-heading { display: block; margin-bottom: 16px; }
  .case-summary-heading h2 { font-size: 22px; }
  .case-summary-heading > small { display: block; margin-top: 8px; text-align: left; }
  .case-summary-metrics { grid-template-columns: 1fr 1fr; }
  .case-summary-metrics > div { gap: 8px; padding: 12px 8px; }
  .case-summary-metrics > div:first-child { padding-left: 8px; }
  .case-summary-metrics > div:nth-child(2) { border-right: 0; }
  .case-summary-metrics strong { font-size: 19px; }
  .case-summary-metrics span { font-size: 10px; }
  .case-data-panel { margin: 26px 0 32px; padding: 15px 12px; }
  .case-data-heading { display: block; }
  .case-data-heading > small { display: block; margin-top: 7px; text-align: left; }
  .case-funnel-step { grid-template-columns: 24px minmax(0,1fr) auto; gap: 8px; padding: 11px 0; }
  .case-funnel-copy strong { font-size: 11px; }
  .case-funnel-copy span { font-size: 9px; }
  .case-funnel-value { font-size: 14px; }
  .case-funnel-rate { grid-column: 2 / -1; text-align: left; margin-top: -5px; }
  .case-effect-grid { gap: 6px; }
  .case-effect-grid > div { min-height: 68px; padding: 8px; }
  .case-effect-grid strong { font-size: 11px; overflow-wrap: anywhere; }
  .case-effect-grid span { font-size: 9px; }
  .case-service-flow { grid-template-columns: 1fr; gap: 0; margin-top: 12px; }
  .case-service-step { padding: 14px 0; border-top: 1px solid var(--line); }
  .feature-detail h2, .info-layout h2, .contact-layout h2, .about-trade h2 { font-size: 24px; }
  .feature-detail p, .editorial p, .editorial li { font-size: 14px; }
  .trade-feature-tabs button { font-size: 13px; }
  .trade-workflow h3 { font-size: 17px; }
  .footer-top { padding: 38px 0 28px; }
  .footer-top a { font-size: 12px; }
  .cta-band { padding: 29px 0; }
  .cta-band .container { align-items: flex-start; gap: 18px; }
  .cta-band h2 { font-size: 22px; }
  .cta-band p { font-size: 13px; }
  .footer-top { grid-template-columns: 1fr 1fr; gap: 24px; padding: 32px 0 34px; }
  .footer-top > div:first-child { grid-column: 1 / -1; }
  .footer-logo { margin-bottom: 12px; }
  .contact-float { right: 12px; bottom: 12px; width: 126px; padding: 16px 11px 11px; }
  .contact-float img { width: 88px; height: 88px; }
  .contact-float strong { font-size: 12px; }
}

@media (max-width: 350px) {
  .trade-hero h1 { font-size: 41px; }
  .trade-hero-tagline { font-size: 23px; }
  .page-intro h1 { font-size: 28px; }
}

@media (prefers-reduced-motion: reduce) {
  .trade-hero-sea { visibility: hidden; }
  .trade-hero { background-image: url("/static/public-site/assets/importgenius-hero-poster.webp"); background-position: center; background-size: cover; }
  .workflow-step, .workflow-step b, .workflow-step img { animation: none; }
  .workflow-signal { animation: none; }
}

@media (prefers-reduced-motion: reduce) and (max-width: 760px) {
  .trade-hero { background-position: 80% center; }
}
