/* =========================================================
   PDF Resume Layout Override
   Safe clean override for resume-public.html
   ========================================================= */

body.resume-pdf { background:#f3f3f3; }

/* Container sizing */
body.resume-pdf #container{
  width:auto;
  max-width:1200px;
  margin:0 auto;
  padding:140px 16px 40px;
}

/* Resume card */
body.resume-pdf .resume{
  background:#fff;
  max-width:1100px;
  margin:0 auto;
  padding:0;
  box-shadow:0 10px 30px rgba(0,0,0,.12);
  font-family: Arial, Helvetica, sans-serif;
  color:#111;
}

/* Two-column grid */
body.resume-pdf .resume__wrap{
  display:grid;
  grid-template-columns:320px 1fr;
  align-items:start;
}

/* Left column */
body.resume-pdf .resume__side{
  background:#efefef;
  padding:28px 26px;
  border-right:3px solid #e0191d;
}

/* Right column */
body.resume-pdf .resume__main{
  background:#ffffff;
  padding:34px 40px;
}

/* Section headers */
body.resume-pdf .resume__h{
  font-size:18px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.5px;
  margin:0 0 6px;
}

body.resume-pdf .resume__h::after{
  content:"";
  display:block;
  height:2px;
  background:#e0191d;
  margin:8px 0 14px;
}

/* Text */
body.resume-pdf .resume__p,
body.resume-pdf .resume li{
  font-size:14px;
  line-height:1.55;
  color:#111;
}

/* Name block */
body.resume-pdf .resume__name{
  font-size:22px;
  font-weight:800;
  letter-spacing:1px;
  margin-bottom:10px;
}

body.resume-pdf .resume__meta span{
  display:inline-block;
  width:60px;
  font-weight:700;
  color:#e0191d;
}

/* Top title */
body.resume-pdf .resume__title{
  font-size:26px;
  font-weight:800;
  letter-spacing:1px;
  text-transform:uppercase;
  color:#e0191d;
}

body.resume-pdf .resume__sub{
  margin-top:8px;
  font-size:20px;
  font-weight:800;
  text-transform:uppercase;
  position:relative;
  padding-bottom:10px;
}

body.resume-pdf .resume__sub::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  background:#e0191d;
}

/* Jobs */
body.resume-pdf .job__head{
  display:grid;
  grid-template-columns:220px 1fr;
  gap:22px;
}

body.resume-pdf .job__company{
  color:#e0191d;
  font-weight:800;
  text-transform:uppercase;
}

body.resume-pdf .job__role{
  font-style:italic;
  margin-top:4px;
}

body.resume-pdf .job__dates{
  font-weight:700;
}

/* Bullets */
body.resume-pdf .resume__bullets ul,
body.resume-pdf .resume__small ul{
  margin:8px 0 0;
  padding-left:18px;
}

/* Mobile */
@media (max-width:900px){
  body.resume-pdf .resume__wrap{
    grid-template-columns:1fr;
  }
  body.resume-pdf .resume__side{
    border-right:none;
    border-bottom:3px solid #e0191d;
  }
}
/* FORCE top nav to one line */
body.resume-pdf nav{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:center !important;
  white-space:nowrap !important;
  gap:10px !important;
}

body.resume-pdf nav a,
body.resume-pdf nav span{
  display:inline-block !important;
}
body.resume-pdf nav{
  width:100% !important;
}

body.resume-pdf #apDiv1{
  max-width:100% !important;
}
/* Align job dates flush right */
body.resume-pdf .job__head{
  grid-template-columns: 1fr 120px !important;
}

body.resume-pdf .job__dates{
  text-align: right !important;
  justify-self: end !important;
  white-space: nowrap;
}
/* Add space between job entries */
body.resume-pdf .job{
  margin-bottom: 26px !important;
}

body.resume-pdf .resume__bullets,
body.resume-pdf .resume__small{
  margin-bottom: 32px !important;
}
/* Align bullets closer to PDF margins */
body.resume-pdf .resume__bullets ul,
body.resume-pdf .resume__small ul{
  padding-left: 14px !important;   /* was ~18–20px */
  margin-left: 0 !important;
}

body.resume-pdf .resume__bullets li,
body.resume-pdf .resume__small li{
  margin-left: 0 !important;
}
/* Indent bullets to match PDF paragraph blocks */
body.resume-pdf .resume__bullets ul,
body.resume-pdf .resume__small ul{
  padding-left: 28px !important;   /* controls indent */
  margin-left: 0 !important;
}

body.resume-pdf .resume__bullets li,
body.resume-pdf .resume__small li{
  margin-left: 0 !important;
}
/* Indent bullets to match PDF paragraph blocks */
body.resume-pdf .resume__bullets ul,
body.resume-pdf .resume__small ul{
  padding-left: 28px !important;   /* controls indent */
  margin-left: 0 !important;
}

body.resume-pdf .resume__bullets li,
body.resume-pdf .resume__small li{
  margin-left: 0 !important;
}
/* Tighten space between job header and its bullets */
body.resume-pdf .job{
  margin-bottom: 12px !important;
}

body.resume-pdf .job + .resume__bullets,
body.resume-pdf .job + .resume__small{
  margin-top: 6px !important;
}
/* Slightly tighter spacing for Additional Tools */
body.resume-pdf .resume__block .resume__list{
  margin-top: 2px;
}
/* Force Select Client Experience into two columns */
body.resume-pdf .resume__block:last-of-type .resume__list--twoCol{
  column-count: 2 !important;
  column-gap: 18px !important;
}
/* Left sidebar title under name */
body.resume-pdf .resume__title-left{
  font-size:14px;
  font-weight:700;
  letter-spacing:.5px;
  margin:4px 0 14px;
  color:#111;
}
/* Left sidebar title under name */
body.resume-pdf .resume__title-left{
  font-size:20px;          /* larger but still smaller than name */
  font-style:italic;
  font-weight:600;
  letter-spacing:.4px;
  margin:2px 0 18px;       /* pulls it closer to name */
  color:#e0191d;
}
/* Add extra space above Core Skills */
body.resume-pdf .resume__contact + .resume__block{
  margin-top: 28px !important;
}
  color:#e0191d;
  color:#e0191d;
/* Add breathing room above Contact Information heading */
body.resume-pdf .resume__contact .resume__h{
  margin-top: 24px !important;
}
/* Remove extra space under name so title sits closer */
body.resume-pdf .resume__name{
  margin-bottom: 2px !important;
  line-height: 1.05;
}
/* Restore 2-column layout for Select Client Experience */
body.resume-pdf .resume__side 
.resume__block:nth-of-type(4) 
.resume__list--twoCol{
  column-count: 2 !important;
  column-gap: 18px !important;
}
/* Print button (screen) */
.printbar{
  max-width: 1000px;
  margin: 10px auto 16px;
  padding: 0 12px;
  text-align: center;
}

.printbtn{
  display: inline-block;
  padding: 10px 14px;
  border: 1px solid #ddd;
  border-radius: 999px;
  background: #fff;
  color: #111;
  text-decoration: none;
  font-weight: 700;
  font-family: inherit;
}

.printbtn:hover{
  border-color: #e0191d;
}

/* Don't print nav/logo/button */
@media print{
  nav, #apDiv1, .printbar{ display:none !important; }
  #container{ width: 100% !important; margin: 0 !important; padding: 0 !important; }
}
/* =========================
   Resume: Print button positioning
   ========================= */

.printbar{
  clear: both;                 /* prevents floating conflicts */
  position: relative;
  z-index: 5;

  max-width: 1000px;
  margin: 8px auto 18px;       /* spacing under nav */
  padding: 0 12px;
  text-align: center;
}

/* Optional: visually associate with nav */
nav + .printbar{
  margin-top: 6px;
}
/* Ensure nav establishes flow above print button */
nav{
  position: relative;
  z-index: 10;
}
/* Keep header elements in normal flow (desktop) */
.sitehead{
  position: relative;
  z-index: 50;
  padding-top: 10px;
}

/* Make sure logo/nav aren't using weird template offsets */
.sitehead #apDiv1{
  position: relative !important;
  top: auto !important;
  left: auto !important;
  margin: 18px auto 8px !important;
}

.sitehead nav{
  position: relative !important;
  top: auto !important;
  left: auto !important;
  margin: 0 auto 10px !important;
  z-index: 60;
}

.sitehead .printbar{
  margin: 0 auto 16px !important;
  text-align: center;
}
/* Tighten spacing under print button */
.sitehead .printbar{
  margin-bottom: 6px !important;
}

/* Slightly pull resume content upward */
#container{
  margin-top: 0 !important;
  padding-top: 4px !important;
}
