/* About recommendations doctor photo redesign v19 */
body.about-page .recommendations-section{
  background: linear-gradient(180deg, rgba(6,15,30,.90), rgba(3,8,16,.96));
}
body.about-page .recommendation-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  margin-top:34px;
}
body.about-page .rec-modern{
  position:relative;
  display:grid;
  grid-template-columns:112px minmax(0,1fr);
  gap:22px;
  align-items:start;
  padding:26px;
  border-radius:28px;
  background:linear-gradient(145deg, rgba(7,21,42,.78), rgba(5,16,34,.92));
  border:1px solid rgba(74,143,212,.22);
  box-shadow:0 22px 70px rgba(0,0,0,.23);
  overflow:hidden;
}
body.about-page .rec-modern::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top right, rgba(201,168,76,.10), transparent 35%), radial-gradient(circle at bottom left, rgba(74,143,212,.10), transparent 38%);
  pointer-events:none;
}
body.about-page .rec-modern.featured{
  grid-column:1 / -1;
  grid-template-columns:132px minmax(0,1fr);
  border-color:rgba(201,168,76,.34);
  background:linear-gradient(135deg, rgba(16,28,47,.84), rgba(7,19,39,.80));
}
body.about-page .rec-photo,
body.about-page .rec-body{
  position:relative;
  z-index:1;
}
body.about-page .rec-photo{
  width:112px;
  aspect-ratio:1 / 1;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(201,168,76,.22);
  box-shadow:0 14px 34px rgba(0,0,0,.28);
  background:rgba(255,255,255,.04);
}
body.about-page .rec-modern.featured .rec-photo{
  width:132px;
  border-radius:28px;
}
body.about-page .rec-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
}
body.about-page .rec-badge{
  position:absolute;
  left:10px;
  bottom:10px;
  width:34px;
  height:34px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--about-gold);
  font-size:15px;
  font-family:'Noto Serif JP','Yu Mincho',serif;
  background:rgba(3,8,16,.76);
  border:1px solid rgba(201,168,76,.36);
  backdrop-filter:blur(8px);
  box-shadow:0 8px 16px rgba(0,0,0,.24);
}
body.about-page .rec-modern.featured .rec-badge{
  width:38px;
  height:38px;
  font-size:17px;
}
body.about-page .rec-body span{
  display:block;
  color:var(--about-muted);
  font-size:12px;
  line-height:1.7;
  margin-bottom:8px;
}
body.about-page .rec-body h3{
  font-size:30px;
  line-height:1.35;
  margin:0 0 12px;
  font-family:'Noto Serif JP', 'Yu Mincho', serif;
  letter-spacing:.02em;
}
body.about-page .rec-modern:not(.featured) .rec-body h3{font-size:22px;}
body.about-page .rec-body p{
  font-size:14px;
  line-height:2.0;
  margin:0;
  color:rgba(222,239,255,.82);
}

@media (max-width: 1080px){
  body.about-page .recommendation-grid{grid-template-columns:1fr;}
  body.about-page .rec-modern,
  body.about-page .rec-modern.featured{grid-column:auto;}
}

@media (max-width: 820px){
  body.about-page .recommendation-grid{gap:16px;margin-top:26px;}
  body.about-page .rec-modern,
  body.about-page .rec-modern.featured{
    grid-template-columns:88px minmax(0,1fr);
    gap:16px;
    padding:20px;
    border-radius:22px;
  }
  body.about-page .rec-photo,
  body.about-page .rec-modern.featured .rec-photo{
    width:88px;
    border-radius:18px;
  }
  body.about-page .rec-body h3,
  body.about-page .rec-modern:not(.featured) .rec-body h3{font-size:19px;}
  body.about-page .rec-body span{font-size:11.5px;}
  body.about-page .rec-body p{font-size:13px;line-height:1.85;}
}

@media (max-width: 520px){
  body.about-page .rec-modern,
  body.about-page .rec-modern.featured{
    grid-template-columns:1fr;
    gap:14px;
    padding:18px;
  }
  body.about-page .rec-photo,
  body.about-page .rec-modern.featured .rec-photo{
    width:100px;
    border-radius:20px;
  }
  body.about-page .rec-body h3,
  body.about-page .rec-modern:not(.featured) .rec-body h3{font-size:20px;}
  body.about-page .rec-body p{font-size:13px;line-height:1.82;}
}
