/* PAGE HERO */
.page-hero {
  display: grid; grid-template-columns: 1fr 1fr; gap: var(--gap);
  border-bottom: var(--gap) solid var(--dark);
  background: var(--dark);
}
.page-hero-left {
  background: var(--dark); color: var(--cream);
  padding: 80px 60px;
}
.page-hero-label {
  font-size: 11px; font-weight: 700; letter-spacing: 0.2em;
  text-transform: uppercase; color: var(--red); margin-bottom: 24px;
}
.page-hero-title {
  font-size: clamp(48px, 5vw, 72px); font-weight: 900;
  line-height: 0.92; letter-spacing: -0.03em;
  color: var(--cream); margin-bottom: 32px;
}
.page-hero-sub {
  font-size: 15px; line-height: 1.75; opacity: 0.55; color: var(--cream);
}
.page-hero-right {
  background: var(--yellow);
  display: grid; grid-template-rows: 1fr 1fr; gap: var(--gap);
}
.page-hero-stat {
  background: var(--yellow); display: flex;
  flex-direction: column; align-items: center; justify-content: center;
  text-align: center; padding: 40px;
}
.page-hero-stat-2 { background: var(--blue); color: var(--cream); }
.page-hero-stat-2 .stat-label { color: var(--cream); }
.page-hero-stat-2 .stat-num { font-size: 40px; }

/* IZEW */
.izew-section {
  background: var(--darkalt); color: var(--cream);
  border-bottom: var(--gap) solid var(--dark);
  padding: 52px 60px;
}
.izew-label {
  font-size: 10px; font-weight: 700; letter-spacing: 0.2em;
  text-transform: uppercase; color: var(--yellow); margin-bottom: 16px;
}
.izew-quote {
  font-size: 36px; font-weight: 900; line-height: 1;
  letter-spacing: -0.02em; margin-bottom: 16px;
}
.izew-desc { font-size: 14px; line-height: 1.7; opacity: 0.55; }

/* TIMELINE */
.timeline-section {
  background: var(--cream);
  border-bottom: var(--gap) solid var(--dark);
}
.timeline-inner {
  display: grid; grid-template-columns: 260px 1fr; gap: var(--gap);
  background: var(--dark);
}
.timeline-sidebar {
  background: var(--dark); padding: 56px 36px;
}
.timeline-sidebar h2 {
  font-size: 24px; font-weight: 900; color: var(--cream);
  margin-bottom: 24px; line-height: 1;
}
.sidebar-rule { width: 40px; height: 4px; background: var(--red); margin-bottom: 24px; }
.timeline-sidebar p { font-size: 13px; color: var(--cream); opacity: 0.45; line-height: 1.7; }
.timeline-entries { background: var(--cream); padding: 0 52px 52px; }

.role-entry {
  padding: 40px 0;
  border-bottom: 1px solid rgba(61,55,48,0.1);
}
.role-entry:first-child { padding-top: 40px; }
.role-entry:last-child { border-bottom: none; }

.role-header { display: grid; grid-template-columns: 140px 1fr; gap: 24px; margin-bottom: 16px; }
.role-dates { font-size: 11px; font-weight: 700; color: var(--mid); padding-top: 4px; letter-spacing: 0.05em; }
.role-title-wrap {}
.role-title { font-size: 20px; font-weight: 900; margin-bottom: 4px; }
.role-company {
  font-size: 11px; font-weight: 700; text-transform: uppercase;
  letter-spacing: 0.1em; color: var(--red);
}
.role-type {
  font-size: 10px; font-weight: 700; letter-spacing: 0.15em;
  text-transform: uppercase; background: var(--yellow); color: var(--dark);
  padding: 3px 10px; display: inline-block; margin-top: 6px;
}
.role-summary { padding-left: 164px; font-size: 14px; line-height: 1.65; color: var(--dark); opacity: 0.65; margin: 0; }

/* SKILLS */
.skills-section {
  background: var(--dark); color: var(--cream);
  border-bottom: var(--gap) solid var(--dark);
}
.skills-inner { padding: 64px 60px; }
.skills-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 48px 60px;
}
.skill-name {
  font-size: 16px; font-weight: 900; margin-bottom: 8px;
  border-left: 4px solid var(--red); padding-left: 12px;
}
.skill-detail { font-size: 13px; line-height: 1.65; opacity: 0.5; padding-left: 16px; }

/* EDUCATION */
.education-section {
  background: var(--cream);
  border-bottom: var(--gap) solid var(--dark);
}
.education-inner {
  display: grid; grid-template-columns: 260px 1fr; gap: var(--gap);
  background: var(--dark);
}
.ed-sidebar {
  background: var(--dark); padding: 48px 36px;
}
.ed-label {
  font-size: 11px; font-weight: 700; letter-spacing: 0.2em;
  text-transform: uppercase; color: var(--mid);
}
.ed-content { background: var(--cream); padding: 48px 52px; }
.ed-school { font-size: 24px; font-weight: 900; margin-bottom: 8px; }
.ed-degree { font-size: 16px; font-weight: 700; color: var(--red); margin-bottom: 6px; }
.ed-dates { font-size: 12px; color: var(--mid); letter-spacing: 0.05em; margin-bottom: 12px; }
.ed-note { font-size: 14px; line-height: 1.65; opacity: 0.6; }

/* MOBILE */
@media (max-width: 768px) {
  .page-hero { grid-template-columns: 1fr; }
  .page-hero-left { padding: 48px 24px; }
  .page-hero-right { grid-template-rows: auto auto; }
  .page-hero-stat { padding: 32px 24px; }

  .izew-section { padding: 36px 24px; }
  .izew-quote { font-size: 26px; }

  .timeline-inner { grid-template-columns: 1fr; }
  .timeline-sidebar { padding: 32px 24px; }
  .timeline-entries { padding: 0 24px 32px; }
  .role-header { grid-template-columns: 1fr; gap: 6px; }
  .role-summary { padding-left: 0; }

  .skills-inner { padding: 40px 24px; }
  .skills-grid { grid-template-columns: 1fr 1fr; gap: 32px 24px; }

  .education-inner { grid-template-columns: 1fr; }
  .ed-sidebar { padding: 24px 24px 0; }
  .ed-content { padding: 24px; }
}

@media (max-width: 480px) {
  .skills-grid { grid-template-columns: 1fr; }
}
