/* SOON V39 — Public typography polish + managed About image */

/* Tajawal spacing/readability */
.hero-copy h1{
  line-height:1.17 !important;
}
.section-title p,
.dubai-copy p,
.about-copy-restored p,
.panel-copy p,
.country small,
.service-card p,
.blog-card-restored p{
  line-height:1.8;
}
.section-title p{
  font-size:15px;
}
.service-card p{
  font-size:14px;
}
.blog-card-restored{
  display:flex;
  flex-direction:column;
  height:100%;
}
.blog-card-restored h3{
  min-height:3.1em;
}
.blog-card-restored p{
  font-size:14px;
  flex:1;
}
.blog-card-restored a{
  margin-top:auto;
}

/* Managed About image on home */
.about-visual-restored{
  position:relative;
  overflow:hidden;
  padding:0 !important;
  min-height:310px;
  background:#111315;
}
.about-home-image{
  display:block;
  width:100%;
  height:100%;
  min-height:310px;
  object-fit:cover;
  object-position:center;
}
.about-home-fallback{
  min-height:310px;
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-end;
  gap:6px;
  padding:28px;
  color:#fff;
}
.about-home-fallback small{
  color:#a8adb4;
  font-size:13px;
}

/* Managed About image on the About page */
.about-hero-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:34px;
  align-items:center;
}
.about-hero-layout.has-image{
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
}
.about-page-image-wrap{
  margin:0;
  border-radius:20px;
  overflow:hidden;
  aspect-ratio:4/3;
  background:#111315;
  box-shadow:0 18px 50px rgba(17,19,21,.12);
}
.about-page-image{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.about-hero-layout.has-image .about-intro{
  max-width:760px;
}

/* Footer density/readability */
.footer-grid a,
.footer-grid p,
.footer-grid .footer-contact{
  line-height:1.75;
}
.footer-grid > div > strong{
  margin-bottom:10px;
}

/* Mobile */
@media(max-width:980px){
  .about-hero-layout.has-image{
    grid-template-columns:1fr;
  }
  .about-page-image-wrap{
    max-width:760px;
    width:100%;
  }
}
@media(max-width:640px){
  .hero-copy h1{
    line-height:1.23 !important;
  }
  .hero-copy p,
  .section-title p,
  .service-card p,
  .panel-copy p,
  .country small,
  .blog-card-restored p{
    font-size:14px !important;
    line-height:1.85 !important;
  }
  .service-card{
    min-height:0;
  }
  .service-card .btn,
  .hero-actions .btn,
  .panel-btn,
  .cta-restored-actions .btn{
    min-height:46px;
  }
  .about-visual-restored,
  .about-home-image,
  .about-home-fallback{
    min-height:220px;
  }
  .about-home-fallback{
    padding:20px;
  }
  .about-page-image-wrap{
    border-radius:14px;
    aspect-ratio:16/11;
  }
  .blog-card-restored h3{
    min-height:0;
  }
  .footer-grid{
    row-gap:28px !important;
  }
  .footer-grid > div{
    text-align:center;
  }
  .footer-grid > div > a{
    display:block;
    padding:4px 0;
  }
}
