/* Page Wrapper */
.hp-profile-page {
background: #fafaf7;
padding: 80px 20px;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* Card */
.hp-profile-card {
max-width: 1140px;
margin: 0 auto;
background: #ffffff;
border-radius: 16px;
display: grid;
grid-template-columns: 320px 1fr;
gap: 48px;
padding: 48px;
box-shadow: 0 10px 30px rgba(0,0,0,0.06);
}

/* LEFT COLUMN */
.hp-profile-left {
position: sticky;
top: 120px;
text-align: center;
}

.hp-profile-photo {
width: 160px;
height: 160px;
border-radius: 50%;
object-fit: cover;
margin-bottom: 20px;
}

.hp-name {
font-size: 26px;
margin-bottom: 8px;
color: #1f3d2b;
}

.hp-availability {
font-size: 14px;
color: #5f6f66;
margin-bottom: 24px;
}

.hp-book-btn {
display: inline-block;
background: #1f3d2b;
color: #fff;
padding: 14px 28px;
border-radius: 12px;
text-decoration: none;
font-weight: 600;
}

.hp-book-btn:hover {
background: #173021;
}

/* RIGHT COLUMN */
.hp-profile-right {
font-size: 16px;
color: #2e2e2e;
line-height: 1.6;
}

.hp-tagline {
font-size: 22px;
margin-bottom: 24px;
color: #1f3d2b;
}

/* Best For */
.hp-best-for {
background: #f4f8f5;
padding: 20px 24px;
border-radius: 12px;
margin-bottom: 40px;
}

.hp-best-for h3 {
font-size: 16px;
margin-bottom: 12px;
}

.hp-best-for ul {
padding-left: 18px;
}

.hp-best-for li {
margin-bottom: 6px;
}

/* Sections */
.hp-section {
margin-bottom: 48px;
}

.hp-section h3 {
font-size: 20px;
margin-bottom: 16px;
color: #1f3d2b;
}

/* About */
.hp-about p {
margin-bottom: 16px;
}

/* Tags */
.hp-tags {
display: flex;
flex-wrap: wrap;
gap: 10px;
}

.hp-tag {
background: #eef5f0;
padding: 8px 14px;
border-radius: 999px;
font-size: 13px;
color: #1f3d2b;
}

/* Testimonials */
.hp-testimonials {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
gap: 24px;
}

.hp-testimonial {
background: #ffffff;
padding: 20px;
border-radius: 14px;
box-shadow: 0 6px 18px rgba(0,0,0,0.05);
}

.hp-quote {
font-style: italic;
margin-bottom: 12px;
}

.hp-author {
font-size: 13px;
color: #6b6b6b;
}

/* Steps */
.hp-steps {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 24px;
}

.hp-step strong {
display: block;
margin-bottom: 8px;
color: #1f3d2b;
}

/* Final CTA */
.hp-final-cta {
background: #f4f8f5;
padding: 40px;
border-radius: 16px;
text-align: center;
}

.hp-final-cta h3 {
margin-bottom: 20px;
}

/* Mobile */
@media (max-width: 900px) {
.hp-profile-card {
grid-template-columns: 1fr;
padding: 32px 24px;
}

.hp-profile-left {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;

  /* critical */
  min-height: 240px;
  width: 100%;
}

/* Profile photo */
.hp-profile-photo {
  display: block;
  width: 160px;
  height: 160px;
  object-fit: cover;
  border-radius: 50%;
  margin: 0 auto 20px;

  /* force visibility */
  position: static;
  opacity: 1;
  visibility: visible;
}
