/* ===========================================================
   Saanavi Engineers — About Page
   Font   : Saira Semi Condensed
   Colors : #0C0E12 (ink)  #E40514 (red)  #FFFFFF (white)
=========================================================== */

:root{
  --ink:    #0C0E12;
  --red:    #E40514;
  --white:  #FFFFFF;
  --gray:   #6b6f76;
  --line:   #ececec;
  --panel:  #F4F5F6;
}

body{
  margin:0;
  font-family:'Saira Semi Condensed', sans-serif;
  color:var(--ink);
}
*{ box-sizing:border-box; }

.section-pill{
  display:inline-block;
  background:rgba(228,5,20,.08);
  color:var(--red);
  font-size:14px;
  font-weight:600;
  padding:7px 20px;
  border-radius:24px;
  margin-bottom:20px;
}

/* ===========================================================
   HERO
=========================================================== */
.about-hero{
  position:relative;
  min-height:420px;
  display:flex;
  align-items:center;
  justify-content:center;
  background-color:var(--ink);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  isolation:isolate;
}

.about-hero__overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(12, 14, 18, 0.849) 0%, rgba(12,14,18,.88) 100%);
  z-index:0;
}

.about-hero__inner{
  position:relative;
  z-index:1;
  text-align:center;
  color:var(--white);
  padding:0 24px;
}

.about-hero__eyebrow{
  display:inline-block;
  background:rgba(228,5,20,.18);
  color:#ff6a72;
  font-size:14px;
  font-weight:600;
  padding:7px 20px;
  border-radius:24px;
  margin-bottom:18px;
  text-transform:uppercase;
  letter-spacing:1px;
}

.about-hero__title{
  font-size:56px;
  font-weight:600;
  text-transform:uppercase;
  margin:0 0 16px;
  line-height:1.1;
}

.about-hero__crumbs{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-size:15px;
  font-weight:600;
  color:rgba(255,255,255,.7);
}
.about-hero__crumbs a{
  color:rgba(255,255,255,.7);
  text-decoration:none;
  transition:color .2s ease;
}
.about-hero__crumbs a:hover{ color:var(--white); }
.about-hero__crumbs span:last-child{ color:var(--red); }

/* ===========================================================
   MAIN ABOUT
=========================================================== */
.about-main{
  background:var(--white);
  padding:100px 0;
}

.about-main__inner{
  max-width:1320px;
  margin:0 auto;
  padding:0 24px;
  display:grid;
  grid-template-columns:0.95fr 1.15fr;
  gap:70px;
  align-items:center;
}

.about-main__media{
  position:relative;
}

.about-main__frame{
  position:relative;
  border-bottom:8px solid var(--red);
  background:var(--panel);
}
.about-main__frame img{
  display:block;
  width:100%;
  height:520px;
  object-fit:cover;
}

.about-main__badge{
  position:absolute;
  left:-20px;
  bottom:-20px;
  background:var(--ink);
  color:var(--white);
  padding:20px 28px;
  display:flex;
  flex-direction:column;
  line-height:1.15;
  box-shadow:0 20px 45px rgba(12,14,18,.24);
}
.about-main__badge-label{
  font-size:14px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.5px;
  color:rgba(255,255,255,.7);
}
.about-main__badge-year{
  font-size:32px;
  font-weight:600;
  color:var(--red);
}

.about-main__heading{
  font-size:40px;
  font-weight:600;
  text-transform:uppercase;
  line-height:1.2;
  margin:0 0 24px;
}

.about-main__text{
  font-size:16px;
  line-height:1.85;
  color:var(--gray);
  margin:0 0 20px;
}

.about-main__proprietor{
  display:flex;
  align-items:center;
  gap:18px;
  margin-top:30px;
}
.about-main__proprietor-line{
  width:3px;
  height:44px;
  background:var(--red);
  flex-shrink:0;
}
.about-main__proprietor-name{
  display:block;
  font-size:18px;
  font-weight:600;
}
.about-main__proprietor-role{
  display:block;
  font-size:14px;
  color:var(--gray);
  font-weight:500;
}

/* ===========================================================
   CONTENT BLOCKS — TEAM / INFRASTRUCTURE
=========================================================== */
.about-block{
  background:var(--white);
  padding:70px 0;
}
.about-block--alt{
  background:var(--panel);
}

.about-block__inner{
  max-width:1320px;
  margin:0 auto;
  padding:0 24px;
  display:grid;
  grid-template-columns:220px 1fr;
  gap:60px;
  align-items:center;
}
.about-block__inner--reverse{
  grid-template-columns:1fr 220px;
}
.about-block__inner--reverse .about-block__content{ order:1; }
.about-block__inner--reverse .about-block__icon-wrap{ order:2; }

.about-block__icon-wrap{
  display:flex;
  align-items:center;
  justify-content:center;
}
.about-block__icon{
  width:150px;
  height:150px;
  border-radius:50%;
  background:var(--white);
  border:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--red);
  box-shadow:0 20px 45px rgba(12,14,18,.08);
  transition:transform .3s ease, background .3s ease, color .3s ease;
}
.about-block__inner:hover .about-block__icon{
  background:var(--red);
  color:var(--white);
  transform:scale(1.05) rotate(6deg);
}
.about-block__icon svg{ width:60px; height:60px; fill:currentColor; }

.about-block__heading{
  font-size:30px;
  font-weight:600;
  text-transform:uppercase;
  margin:0 0 16px;
}

.about-block__text{
  font-size:15.5px;
  line-height:1.85;
  color:var(--gray);
  margin:0 0 14px;
  max-width:760px;
}
.about-block__text:last-child{ margin-bottom:0; }

/* ===========================================================
   RESPONSIVE
=========================================================== */
@media (max-width:1199px){
  .about-main__heading{ font-size:34px; }
  .about-hero__title{ font-size:46px; }
}

@media (max-width:991px){
  .about-main__inner{
    grid-template-columns:1fr;
    gap:50px;
  }
  .about-main__media{ max-width:520px; margin:0 auto; }
  .about-main__content{ text-align:center; }
  .about-main__proprietor{ justify-content:center; }

  .about-block__inner,
  .about-block__inner--reverse{
    grid-template-columns:1fr;
    text-align:center;
    gap:26px;
  }
  .about-block__inner--reverse .about-block__content{ order:2; }
  .about-block__inner--reverse .about-block__icon-wrap{ order:1; }
  .about-block__text{ margin-left:auto; margin-right:auto; }
}

@media (max-width:767px){
  .about-hero{ min-height:320px; }
  .about-hero__title{ font-size:36px; }
  .about-main{ padding:70px 0; }
  .about-main__heading{ font-size:28px; }
  .about-main__frame img{ height:380px; }
  .about-block{ padding:54px 0; }
  .about-block__heading{ font-size:25px; }
  .about-block__icon{ width:110px; height:110px; }
  .about-block__icon svg{ width:44px; height:44px; }
}

@media (max-width:480px){
  .about-hero__title{ font-size:28px; }
  .about-main__frame img{ height:300px; }
  .about-main__badge{ left:0; padding:14px 18px; }
  .about-main__badge-year{ font-size:24px; }
}