/* ===================================================================
   Resume — print / Save as PDF
   Loaded with media="print". The screen styles are built for a dark,
   animated page; on paper they leave fixed-position chrome (the nav,
   the mobile tab bar, the particle canvas) stamped over every page.
   This strips the page back to the resume itself: dark ink on white.
   =================================================================== */

@page {
  size: letter;
  margin: 0.55in 0.6in;
}

/* ---- remove everything that isn't the resume ---- */
#mainNav,
.mobile-bottom-nav,
#particleCanvas,
canvas,
.footer,
#chatWidget,
.resume-download .hero-badge,
.resume-download button {
  display: none !important;
}

/* ---- plain paper ---- */
html,
body {
  background: #fff !important;
  color: #1a1f2e !important;
}

body::before,
body::after {
  display: none !important;
}

*,
*::before,
*::after {
  box-shadow: none !important;
  text-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  animation: none !important;
  transition: none !important;
}

/* Scroll-reveal effects must not leave anything invisible on paper */
.resume-section,
.resume-item,
.education-item {
  opacity: 1 !important;
  transform: none !important;
}

/* ---- tighter layout for the page ---- */
/* Bootstrap rows pull left/right with negative margins that the column
   padding normally cancels; zero both or the text gets clipped */
.container,
.row,
.row > [class*="col"] {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* The header sits on a dark card on screen; on paper it's just text */
.resume-header,
.resume-header *,
.resume-section,
.resume-item {
  background: none !important;
  border-radius: 0 !important;
}

.resume-download {
  border: none !important;
  padding: 0 !important;
}

.resume-header {
  padding: 0 0 18px !important;
  text-align: center;
}

.resume-download {
  margin-bottom: 0 !important;
}

/* Tighter vertical gap between the skill groups */
.row.g-4 {
  --bs-gutter-y: 10px;
}

.resume-download h1 {
  color: #0b1020 !important;
  font-size: 30px !important;
  margin-bottom: 2px !important;
}

.resume-download .lead {
  color: #1565c0 !important;
  font-size: 15px !important;
  margin-bottom: 8px !important;
}

.resume-download .d-flex {
  margin-bottom: 0 !important;
  font-size: 12.5px !important;
}

/* The contact line is inline-styled light grey for the dark screen */
.resume-download .d-flex span,
.resume-download .d-flex a {
  color: #3a4256 !important;
}

.section-padding {
  padding: 0 !important;
}

.resume-section {
  margin-bottom: 18px !important;
}

.resume-section-title {
  color: #0b1020 !important;
  font-size: 16px !important;
  margin-bottom: 10px !important;
  padding-bottom: 4px !important;
  border-bottom: 1.5px solid #1565c0 !important;
  break-after: avoid;
}

.resume-item {
  margin-bottom: 12px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid #d9dee8 !important;
  break-inside: avoid;
}

.resume-item:last-child {
  border-bottom: none !important;
}

.resume-item-title,
.education-degree {
  color: #0b1020 !important;
  font-size: 15px !important;
}

.resume-item-subtitle,
.education-school {
  color: #1565c0 !important;
  font-size: 13.5px !important;
  margin-bottom: 2px !important;
}

.resume-item-meta,
.education-meta {
  color: #4a5368 !important;
  font-size: 12px !important;
  margin-bottom: 6px !important;
}

.resume-item-description,
.resume-item-description p,
.resume-item-description li,
p,
li {
  color: #262c3a !important;
  font-size: 12.5px !important;
  line-height: 1.5 !important;
}

.education-item {
  break-inside: avoid;
}

/* Skill chips: outlined, so they read without background colour */
.skill-chip {
  background: none !important;
  border: 1px solid #c4cbd8 !important;
  color: #262c3a !important;
  font-size: 11px !important;
  padding: 2px 8px !important;
}

/* Icons in the brand blue; links print as plain text */
i,
.fas,
.far,
.fab {
  color: #1565c0 !important;
}

a {
  color: inherit !important;
  text-decoration: none !important;
}
