/* ============================================================
   JSW International Tradecorp — Theme styles
   ============================================================ */

:root {
  --jsw-primary: #0A2C6B;
  --jsw-primary-2: #123A8A;
  --jsw-accent: #C9A227;
  --jsw-accent-2: #E6C34A;
  --jsw-dark: #0B1220;
  --jsw-steel: #4A5568;
  --jsw-light: #F5F7FA;
  --jsw-radius: 14px;
  --jsw-shadow: 0 10px 30px rgba(10, 44, 107, 0.08);
  --jsw-shadow-lg: 0 20px 40px rgba(10, 44, 107, 0.15);
}

body {
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  color: #0B1220;
  background: #ffffff;
  scroll-behavior: smooth;
  overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Inter', system-ui, sans-serif;
  letter-spacing: -0.01em;
}

/* Utility tokens */
.bg-primary-navy { background-color: var(--jsw-primary) !important; }
.bg-accent       { background-color: var(--jsw-accent)  !important; }
.bg-dark         { background-color: var(--jsw-dark)    !important; }
.text-primary-navy { color: var(--jsw-primary) !important; }
.text-accent       { color: var(--jsw-accent)  !important; }

/* Buttons */
.btn { transition: all .25s ease; font-weight: 500; }
.btn-primary-navy {
  background: var(--jsw-primary);
  color: #fff;
  border: 1px solid var(--jsw-primary);
}
.btn-primary-navy:hover, .btn-primary-navy:focus {
  background: var(--jsw-primary-2);
  color: #fff;
  border-color: var(--jsw-primary-2);
  transform: translateY(-2px);
  box-shadow: var(--jsw-shadow);
}
.btn-outline-primary-navy {
  color: var(--jsw-primary);
  border: 1px solid var(--jsw-primary);
  background: transparent;
}
.btn-outline-primary-navy:hover {
  background: var(--jsw-primary);
  color: #fff;
}
.btn-accent {
  background: var(--jsw-accent);
  color: var(--jsw-primary);
  border: 1px solid var(--jsw-accent);
  font-weight: 600;
}
.btn-accent:hover, .btn-accent:focus {
  background: var(--jsw-accent-2);
  color: var(--jsw-primary);
  border-color: var(--jsw-accent-2);
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(201, 162, 39, 0.35);
}

/* Header */
.jsw-topbar a:hover { color: var(--jsw-accent) !important; }
.site-header .navbar-brand { font-size: 1.35rem; }
.site-header .nav-link {
  color: var(--jsw-dark);
  position: relative;
  padding: .5rem .9rem !important;
}
.site-header .nav-link:hover,
.site-header .nav-item.active > .nav-link { color: var(--jsw-primary); }
.site-header .nav-link::after {
  content: "";
  position: absolute;
  left: 50%; bottom: 6px;
  width: 0; height: 2px;
  background: var(--jsw-accent);
  transition: all .3s ease;
  transform: translateX(-50%);
}
.site-header .nav-link:hover::after { width: 60%; }
.dropdown-menu { border-radius: var(--jsw-radius); padding: .5rem; }
.dropdown-item { border-radius: 8px; }
.dropdown-item:hover { background: var(--jsw-light); color: var(--jsw-primary); }

/* Hero */
.glass-card {
  background: rgba(255,255,255,0.08);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(255,255,255,0.15);
}

/* Cards */
.jsw-card, .card.rounded-4 { transition: transform .3s ease, box-shadow .3s ease; }
.jsw-card:hover, .card.rounded-4:hover { transform: translateY(-6px); box-shadow: var(--jsw-shadow-lg); }
.jsw-industry:hover i { color: var(--jsw-accent) !important; transition: color .3s ease; }

/* Sections */
.py-md-6 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
@media (max-width: 768px) { .py-md-6 { padding-top: 3rem !important; padding-bottom: 3rem !important; } }

/* Breadcrumbs */
.jsw-breadcrumbs .breadcrumb-item a { color: var(--jsw-primary); text-decoration: none; }
.jsw-breadcrumbs .breadcrumb-item.active { color: var(--jsw-steel); }

/* Accordion */
.accordion-button:not(.collapsed) {
  color: var(--jsw-primary);
  background: rgba(10, 44, 107, .05);
  box-shadow: none;
}
.accordion-button:focus { box-shadow: none; border-color: var(--jsw-accent); }

/* Forms */
.form-control:focus {
  border-color: var(--jsw-primary);
  box-shadow: 0 0 0 .2rem rgba(10, 44, 107, .15);
}

/* Pagination */
.jsw-pagination .page-numbers {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 40px; height: 40px; margin: 0 4px; border-radius: 50%;
  background: #fff; color: var(--jsw-primary); text-decoration: none;
  border: 1px solid #e5e7eb; transition: all .2s ease;
}
.jsw-pagination .page-numbers:hover,
.jsw-pagination .page-numbers.current {
  background: var(--jsw-primary); color: #fff; border-color: var(--jsw-primary);
}

/* Footer */
.site-footer { background: var(--jsw-dark); }
.site-footer a:hover { color: var(--jsw-accent) !important; }
.footer-menu li { display: inline-block; margin-left: 1rem; }
.footer-menu li a { color: rgba(255,255,255,.65); text-decoration: none; }
.footer-menu li a:hover { color: var(--jsw-accent); }

/* Timeline */
.jsw-timeline { position: relative; }

/* WordPress required */
.alignwide  { max-width: 1200px; margin-left: auto; margin-right: auto; }
.alignfull  { width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
.wp-caption { max-width: 100%; }
.wp-caption-text, .gallery-caption { font-size: .875rem; color: var(--jsw-steel); }
.screen-reader-text { border: 0; clip: rect(1px,1px,1px,1px); height: 1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; }
.sticky { display: block; }
.bypostauthor { display: block; }

/* Comments */
.comment-list { padding-left: 0; }
.comment-list .comment { list-style: none; padding: 1rem; border: 1px solid #eee; border-radius: 12px; margin-bottom: 1rem; }
.comment-list .comment .comment { margin-top: 1rem; margin-left: 1rem; background: #fafbfc; }

/* Print */
@media print {
  .site-header, .site-footer, .jsw-cta, .jsw-topbar { display: none; }
}
