/* responsive.css */

/* Large screens down to tablets */
@media screen and (max-width: 1200px) {
  .H-contant {
    flex-direction: column-reverse;
    height: auto;
    margin-top: 0px;
    gap: 15px;
  }
  .Home-l-contant, .Home-r-contant {
    width: 100%;
  }
  .introduction {
    align-items: center;
    text-align: center;
  }
  .introduction .Bio {
    width: 100%;
  }
  
  .img-box {
    margin-top: 50px;
    width: 350px;
    height: 450px;
  }
  .main-pic {
    height: 450px;
  }

  .grid-box {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    height: auto;
    width: 100%;
    margin-top: 30px;
  }

  /* Reset grid areas and constraints */
  .A-Box1, .A-Box2, .A-Box3, .A-Box4, .A-Box5, .A-Box6,
  .S-Box1, .S-Box2, .S-Box3,
  .Ac-Box1, .Ac-Box2, .Ac-Box3, .Ac-Box4, .Ac-Box5, .Ac-Box6,
  .P-Box1, .P-Box2, .P-Box3, .P-Box4, .P-Box5, .P-Box6,
  .B-Box1, .B-Box2, .B-Box3, .B-Box4, .B-Box5 {
    grid-area: auto !important;
    min-width: unset;
    width: 100%;
  }

  .A-Box1 {
    margin-top: 20px;
  }

  .A-Box2 {
    flex-direction: column;
    text-align: center;
    padding: 30px 10px;
  }

  .C-contant {
    flex-direction: column;
    padding-right: 0;
    height: auto;
    margin-bottom: 50px;
  }
  
  .C-contant-l, .C-contant-r {
    width: 100%;
    min-width: unset;
  }
  .C-contant-l figure {
    height: 300px;
  }

  /* Adjust section layout */
  .area {
    padding: 30px;
    height: auto;
    min-height: 100vh;
    flex-direction: column;
    justify-content: center;
  }
  .E-contant {
    flex-direction: column;
    height: auto;
    margin-top: 50px;
  }
  .edu-info {
    width: 100%;
    min-width: unset;
    margin-bottom: 30px;
  }

  .main-container {
    width: 90%;
  }
  
  .navbar {
    left: 10px;
    z-index: 100;
  }
  .navbar a .nav-name {
    display: none !important;
  }
}

/* Tablets down to mobile */
@media screen and (max-width: 768px) {
  .navbar {
    flex-direction: row;
    height: 60px;
    width: 100%;
    left: 0;
    bottom: 0;
    top: auto;
    background: var(--gradient-box-w);
    justify-content: space-around;
    padding: 10px 0;
    z-index: 999;
  }
  
  /* Make main container full width since nav is at bottom now */
  .main-container {
    width: 100%;
  }
  
  .area {
    padding: 80px 20px 80px 20px;
  }
  
  .ptitle {
    position: relative;
    top: 0;
    margin-bottom: 20px;
  }
  
  .img-box {
    width: 100%;
    max-width: 350px;
    height: auto;
  }
  .main-pic {
    width: 100%;
    height: auto;
  }
  
  .d-l-btn {
    top: 20px;
    left: 20px;
  }

  .introduction h1 {
    font-size: var(--h3);
  }
  .introduction h1 span {
    font-size: var(--h2);
    letter-spacing: 1px;
  }

  .A-Box2 span {
    font-size: 80px;
  }
  .exp p {
    font-size: var(--font-size-f1);
  }

  .edu-info {
    flex-direction: column;
  }
  .timeline {
    height: 50px;
    width: 100%;
    flex-direction: row;
    justify-content: center;
    margin-bottom: 20px;
  }
  .timeline .line {
    width: 80%;
    height: 7px;
  }
  .timeline .c1, .timeline .c2, .timeline .l1, .timeline .l2 {
    display: none;
  }
}

/* Small mobile */
@media screen and (max-width: 480px) {
  .area {
    padding: 60px 15px 80px 15px;
  }
  .introduction h1 {
    font-size: var(--h4);
  }
  .introduction h1 span {
    font-size: var(--h3);
  }
  
  .A-Box2 span {
    font-size: 50px;
  }
  .exp h1 {
    font-size: var(--h5);
  }

  .social-icon {
    width: 100%;
    justify-content: center;
  }
  
  /* Stack inputs in contact form */
  .form .input-wrapper {
    flex-direction: column;
  }
  .input-wrapper input {
    width: 100%;
    margin-bottom: 15px;
  }
  
  /* Reset more fixed sizes */
  .ac-box, .pfo, .blog-box-b {
    min-width: unset;
    width: 100%;
  }
  .ac-box {
    min-height: unset;
    padding-bottom: 20px;
  }
  
  .eBox {
    width: 100%;
    padding: 15px;
  }
  
  .social-icon .find-i {
    height: 40px;
    width: 40px;
    line-height: 40px;
    font-size: var(--font-size-f3);
  }

  .btn {
    padding: 15px 30px;
    font-size: var(--font-size-f2);
  }

  .ab-info {
    font-size: 12px;
  }
  .ab-info .ab-p1 {
    font-size: var(--font-size-f2);
  }

  .sf-skils {
    flex-direction: column;
    gap: 10px;
    align-items: center;
  }
}
