/* ===== Experience Section ===== */
.experience-section{
  position:relative;
  padding:70px 0; 
  color:var(--light-text);
  background:rgba(0,0,0,0.72);
  overflow:hidden;
}

.experience-video-bg{
  position:absolute; 
  inset:0;
  width:100%; 
  height:100%;
  object-fit:cover; 
  z-index:-1; 
  opacity:.82;
}

.experience-container{ 
    max-width:1100px; 
    margin:0 auto; 
    position:relative; 
}

.section-header{
  text-align:center;
  margin-bottom:48px; 
}
.section-header h2{
  font-size:2.4rem;
  color:#fff;
  position:relative;
  display:inline-block;
  letter-spacing:-.02em;
}
.section-header h2::after{
  content:'';
  position:absolute; 
  bottom:-12px; 
  left:50%; 
  transform:translateX(-50%);
  width:80px; 
  height:4px; 
  background-color:var(--accent-color); 
  border-radius:2px;
}

.experience-card{
  background:rgba(255,255,255,.10);
  border-radius:16px;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 16px 40px rgba(0,0,0,.25);
  overflow:hidden;
  transition:var(--transition);
  margin-bottom:24px; 
  backdrop-filter:blur(10px);
  animation:fadeUp .6s ease both;
}

.experience-card:hover{ 
    transform:translateY(-6px); 
    background:rgba(255,255,255,.14) 
}

.experience-card:nth-child(1){ animation-delay:.05s }
.experience-card:nth-child(2){ animation-delay:.12s }

@media (prefers-reduced-motion: reduce){
  .experience-card{ animation:none }
}

.experience-header{
  padding:32px 28px;
  background:linear-gradient(135deg,var(--primary-dark) 0%, var(--primary-color) 100%);
  color:#fff;
}
.experience-header h3{
  margin:0; 
  font-size:1.6rem; 
  line-height:1.35; 
  letter-spacing:.2px; 
  color:#fff;
}

.experience-meta{
  display:flex; 
  justify-content:space-between; 
  gap:16px; 
  flex-wrap:wrap;
  margin-top:10px; 
  font-size:1.02rem; 
  opacity:.95; 
  color:#fff;
}

.company{ 
    font-weight:600 
}

.duration{ 
    font-style:italic 
}

.experience-content{ 
    padding:28px 28px 24px 
}

.key-responsibilities h4,
.additional-responsibilities h4{
  color:var(--accent-color); 
  font-size:1.22rem; 
  margin-bottom:14px;
  display:flex; 
  align-items:center; 
  gap:12px; 
  font-weight:700;
}

.key-responsibilities ul,
.additional-responsibilities ul{ 
    padding-left:0; 
    margin-bottom:0 
}

.key-responsibilities li,
.additional-responsibilities li{
  margin-bottom:10px; 
  position:relative; 
  list-style:none; 
  padding-left:28px;
  line-height:1.8; 
  font-size:1.02rem; 
  color:#fff;
}
.key-responsibilities li::before,
.additional-responsibilities li::before{
  content:'▹'; 
  color:var(--accent-color);
  position:absolute; 
  left:0; 
  top:.15rem; 
  font-size:1.15rem;
}

.toggle-responsibilities{
  background:rgba(255,255,255,.16); 
  border:none; 
  color:#fff;
  font-weight:800; 
  cursor:pointer; 
  padding:12px 22px; 
  border-radius:999px;
  transition:var(--transition); 
  display:inline-flex; 
  align-items:center; 
  gap:10px;
  margin-top:14px; 
  font-size:1rem; 
  text-transform:uppercase; 
  letter-spacing:.5px;
}

.toggle-responsibilities:hover{ 
    background:rgba(255,255,255,.24); 
    transform:translateY(-2px) 
}

.toggle-responsibilities i{ 
    transition:transform .3s ease 
}

/* Collapsible panel */
.additional-responsibilities{
  max-height:0; 
  overflow:hidden;
  transition:max-height .6s cubic-bezier(.65,0,.35,1), padding .3s ease;
  padding:0 8px;
}

.additional-responsibilities.show{
  max-height:3000px; 
  padding:18px 8px 6px; 
  animation:fadeIn .6s ease-out;
}

@media (prefers-reduced-motion: reduce){
  .additional-responsibilities.show{ animation:none }
}

/* ===== Education & Certifications ===== */
.education-certifications{
  background:var(--neutral-50);
  padding:70px 0; 
}
.education-certifications .section-header h2{ 
    color:var(--primary-dark) 
}

.edu-cert-grid{
  display:grid; 
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  gap:24px; 
  max-width:1100px; 
  margin:0 auto;
}

.edu-card,.cert-card{
  background:var(--card-bg);
  border:1px solid var(--neutral-150);
  border-left:5px solid var(--primary-color);
  border-radius:12px;
  padding:24px;
  box-shadow:var(--card-shadow);
  transition:var(--transition);
  animation:fadeUp .6s ease both;
}

.edu-card{ animation-delay:.06s }
.cert-card{ animation-delay:.12s }

.edu-card:hover,.cert-card:hover{ 
transform:translateY(-4px); 
box-shadow:0 12px 24px rgba(0,0,0,.10) 
}

@media (prefers-reduced-motion: reduce){
  .edu-card,.cert-card{ animation:none }
}

.edu-card h3,.cert-card h3{
  font-size:1.35rem; 
  color:var(--primary-dark); 
  margin:0 0 10px 0;
}

.edu-list,.cert-list{ 
    padding-left:0; 
    margin:0 }

.edu-list li,.cert-list li{
  list-style:none; 
  position:relative; 
  padding-left:22px; 
  line-height:1.8; 
  font-size:1.05rem; 
  color:var(--text-color);
}

.edu-list li::before,.cert-list li::before{
  content:'•'; 
  position:absolute; 
  left:0; 
  top:0; 
  color:var(--primary-color); 
  font-weight:700; 
  font-size:1.2rem;
}

/* ===== Testimonials ===== */
.full-testimonials{
  background-color:var(--neutral-100);
  padding:70px 0; 
  color:var(--text-color);
}

.testimonials-section-header{
  text-align:center; 
  margin-bottom:48px;
}

.testimonials-section-header h2{
  font-size:2.4rem; 
  color:var(--primary-dark);
  position:relative; 
  display:inline-block; 
  letter-spacing:-.02em;
}

.testimonials-section-header h2::after{
  content:''; 
  position:absolute; 
  bottom:-12px; 
  left:50%; 
  transform:translateX(-50%);
  width:80px; 
  height:4px; 
  background-color:var(--accent-color);
}

/* Responsive grid (true 1-col on small screens) */
.testimonial-grid{
  display:grid; 
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
  gap:28px; 
  max-width:1100px; 
  margin:0 auto;
}

.testimonial-card{
  background:var(--card-bg);
  border-radius:16px; 
  overflow:hidden; 
  color:var(--text-color);
  transition:var(--transition); 
  display:flex; 
  flex-direction:column; 
  height:100%;
  box-shadow:var(--card-shadow);
  animation:fadeUp .55s ease both;
}

.testimonial-card:hover{ 
    transform:translateY(-6px); 
    box-shadow:0 18px 36px rgba(0,0,0,.12) 
}

@media (prefers-reduced-motion: reduce){
  .testimonial-card{ animation:none }
}

.testimonial-header{
  padding:26px;
  background:linear-gradient(135deg,var(--primary-dark),var(--primary-color));
  color:#fff;
}

.client-info h3{ 
    margin:0; 
    font-size:1.35rem 
}

.client-title,.client-date{ 
    font-size:1rem; 
    margin:.5rem 0 0; 
    opacity:.95 
}

.client-date i{ 
    margin-right:6px 
}

.testimonial-content{
  padding:26px; 
  flex-grow:1; 
  display:flex; 
  flex-direction:column;
}

.rating{ 
    color:#FFC107; 
    margin-bottom:18px; 
    font-size:1.05rem 
}

.testimonial-excerpt,.testimonial-full{ 
    font-style:italic; 
    margin-bottom:18px; 
    line-height:1.7 
}

.read-more-btn{
  background:none; 
  border:none; 
  color:var(--primary-color); 
  font-weight:700; 
  cursor:pointer; 
  padding:6px 0;
  transition:var(--transition); 
  align-self:flex-start; 
  font-size:1.02rem; 
  display:flex; 
  align-items:center; 
  gap:10px;
}

.read-more-btn:hover{ 
    color:var(--primary-dark) 
}

.experience-card.reveal,
.edu-card.reveal,
.cert-card.reveal,
.testimonial-card.reveal{
  opacity:0; 
  transform:translateY(18px);
}

.experience-card.reveal.reveal-in,
.edu-card.reveal.reveal-in,
.cert-card.reveal.reveal-in,
.testimonial-card.reveal.reveal-in{
  opacity:1; 
  transform:translateY(0); 
  transition:opacity .7s ease, transform .7s ease;
}

/* ===== Animations (fallback for first paint) ===== */
@keyframes fadeIn{ from{opacity:0} to{opacity:1} }
@keyframes fadeUp{ from{opacity:0; transform:translateY(14px)} to{opacity:1; transform:translateY(0)} }

/* ===== Responsive ===== */
@media (max-width:992px){
  .testimonial-grid{ 
    grid-template-columns:repeat(2,minmax(0,1fr)); 
    gap:22px }

  .section-header, .testimonials-section-header{ 
    margin-bottom:36px }
}

@media (max-width:768px){
  .experience-header{ 
    padding:24px 22px }

  .experience-content{ 
    padding:22px }

  .experience-meta{ 
    flex-direction:column; 
    align-items:flex-start; 
    gap:6px }

  .edu-cert-grid{ 
    grid-template-columns:1fr }

  .edu-card, .cert-card{ 
    padding:22px }

  .testimonials-section-header{ 
    margin-bottom:36px }

  .testimonial-grid{ 
    grid-template-columns:1fr; 
    gap:20px; 
    max-width:700px }

  .testimonial-header{ 
    padding:20px }

  .testimonial-content{ 
    padding:20px }

  .client-info h3{ 
    font-size:1.2rem }

  .client-title,.client-date{ 
    font-size:.95rem }

  .rating{ 
    font-size:1rem; 
    margin-bottom:12px }

  .read-more-btn{ 
    font-size:1rem }
}

@media (max-width:576px){
  .testimonial-grid{ 
    gap:16px; 
    max-width:560px }

  .testimonial-header{ 
    padding:18px }

  .testimonial-content{ 
    padding:18px }

  .client-info h3{ 
    font-size:1.1rem }

  .client-title,.client-date{ 
    font-size:.9rem }

  .testimonial-excerpt,.testimonial-full{ 
    line-height:1.65 }
}