/* AuthorSection.css */

*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.author-section{
  position: relative;

  width: 100%;

  background:
    linear-gradient(
      to bottom,
      #050505,
      #0d0d0d,
      #111111
    );

  overflow: hidden;

  padding: 120px 7%;
}

/* =========================
   BACKGROUND GLOW
========================= */

.author-glow{
  position: absolute;

  border-radius: 50%;

  filter: blur(120px);

  z-index: 1;
}

.glow-one{
  width: 450px;
  height: 450px;

  background: rgba(249,115,22,0.08);

  top: -120px;
  left: -120px;
}

.glow-two{
  width: 400px;
  height: 400px;

  background: rgba(59,130,246,0.06);

  bottom: -120px;
  right: -120px;
}

/* =========================
   CONTAINER
========================= */

.author-container{
  position: relative;
  z-index: 2;

  width: 100%;
  max-width: 1400px;

  margin: auto;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 80px;
}

/* =========================
   LEFT SIDE
========================= */

.author-image-wrapper{
  flex: 1;

  display: flex;
  justify-content: center;
  align-items: center;
}

.author-image{
  position: relative;

  width: 100%;
  max-width: 450px;

  border-radius: 30px;

  overflow: hidden;

  box-shadow:
    0 25px 60px rgba(0,0,0,0.45);

  animation: floatAuthor 5s ease-in-out infinite;
}

.author-image img{
  width: 100%;
  height: 100%;

  object-fit: cover;

  display: block;
}

/* FLOAT */

@keyframes floatAuthor{

  0%{
    transform: translateY(0px);
  }

  50%{
    transform: translateY(-15px);
  }

  100%{
    transform: translateY(0px);
  }
}

/* =========================
   RIGHT SIDE
========================= */

.author-content{
  flex: 1;
}

.author-tag{
  display: inline-block;

  padding: 10px 22px;

  border-radius: 50px;

  border: 1px solid rgba(249,115,22,0.25);

  background: rgba(249,115,22,0.08);

  color: #f59e0b;

  font-size: 12px;
  letter-spacing: 2px;

  margin-bottom: 24px;
}

.author-content h2{
  font-size: clamp(2.8rem, 6vw, 5rem);

  line-height: 1.05;

  color: white;

  margin-bottom: 28px;

  font-weight: 800;

  max-width: 650px;
}

.author-content h2 span{
  color: #f59e0b;
}

.author-description{
  color: #d1d5db;

  font-size: 1.08rem;

  line-height: 1.9;

  margin-bottom: 40px;

  max-width: 650px;
}

/* =========================
   INFO CARDS
========================= */

.author-cards{
  display: grid;

  grid-template-columns:
    repeat(2, minmax(140px, 1fr));

  gap: 20px;

  margin-bottom: 40px;
}

.author-card{
  background: rgba(255,255,255,0.03);

  border: 1px solid rgba(255,255,255,0.06);

  border-radius: 22px;

  padding: 24px;

  transition: 0.4s ease;

  backdrop-filter: blur(10px);
}

.author-card:hover{
  transform: translateY(-6px);

  border-color: rgba(249,115,22,0.25);
}

.author-card h3{
  color: white;

  margin-bottom: 10px;

  font-size: 1.2rem;
}

.author-card p{
  color: #cfcfcf;

  line-height: 1.7;

  font-size: 0.95rem;
}

/* =========================
   QUOTE
========================= */

.author-quote{
  border-left: 3px solid #f59e0b;

  padding-left: 20px;

  margin-bottom: 40px;
}

.author-quote p{
  color: #f5f5f5;

  font-size: 1.05rem;

  line-height: 1.8;

  font-style: italic;
}

/* =========================
   BUTTON
========================= */

.author-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 16px 34px;

  border-radius: 50px;

  text-decoration: none;

  background:
    linear-gradient(
      135deg,
      #f59e0b,
      #f97316
    );

  color: white;

  font-weight: 700;

  transition: 0.4s ease;

  box-shadow:
    0 10px 30px rgba(249,115,22,0.25);
}

.author-btn:hover{
  transform: translateY(-5px);
}

/* =========================
   LAPTOP
========================= */

@media(max-width:1100px){

  .author-container{
    flex-direction: column;

    text-align: center;

    gap: 60px;
  }

  .author-description{
    margin-inline: auto;
  }

  .author-cards{
    max-width: 700px;

    margin-inline: auto;
  }

  .author-quote{
    border-left: none;

    border-top: 3px solid #f59e0b;

    padding-left: 0;
    padding-top: 20px;

    max-width: 700px;

    margin-inline: auto auto 40px;
  }
}

/* =========================
   TABLET
========================= */

@media(max-width:768px){

  .author-section{
    padding: 100px 20px;
  }

  .author-content h2{
    font-size: 3rem;
  }

  .author-description{
    font-size: 1rem;
  }

  .author-image{
    max-width: 320px;
  }

  .author-cards{
    grid-template-columns: 1fr 1fr;
  }

  .author-btn{
    width: 100%;
    max-width: 320px;
  }
}

/* =========================
   MOBILE
========================= */

@media(max-width:480px){

  .author-section{
    padding: 80px 16px;
  }

  .author-tag{
    font-size: 11px;
  }

  .author-content h2{
    font-size: 2.2rem;
  }

  .author-description{
    font-size: 0.95rem;
  }

  .author-image{
    max-width: 240px;
  }

  .author-cards{
    grid-template-columns: 1fr;
  }

  .author-card{
    padding: 20px;
  }

  .author-quote p{
    font-size: 1rem;
  }

  .author-btn{
    width: 100%;
  }
}