/* Premium polish and visibility fixes */
:root{
  --premium-blue:#0f5fb8;
  --premium-blue-2:#247fda;
  --premium-blue-deep:#164c86;
  --premium-gold:#c99a35;
  --premium-gold-light:#f4dda0;
  --premium-line:#c9def2;
}

h1,h2,h3,h4{
  font-weight:700;
  text-wrap:balance;
  overflow-wrap:normal
}
h1,h2{padding-block:.04em .08em}
.lead,.subtitle{font-weight:500}

/* Blue-background display text must use white and gold, never blue-on-blue. */
.hero .gt,.treatment-hero .gt,.treatment-hub-hero .gt,.cta-band .gt{
  background:linear-gradient(110deg,#ffffff 0%,#fff8dc 48%,#f4dda0 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  filter:drop-shadow(0 3px 12px rgba(22,76,134,.22))
}
.treatment-hub-hero h1{
  max-width:15ch;
  line-height:1.02;
  overflow:visible
}
.treatment-hub-hero h1 .gt{display:inline-block}
.treatment-hub-hero .lead{max-width:68ch;font-size:1.08rem;line-height:1.65}

/* The malformed homepage card block is now a strict, equal-height grid. */
.treatment-card-grid{align-items:stretch}
.treatment-card-grid>.card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-width:0;
  min-height:270px;
  height:100%;
  padding:32px;
  overflow:hidden;
  isolation:isolate;
  border:1px solid var(--premium-line);
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 38px rgba(22,76,134,.1)
}
.treatment-card-grid>.card::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:linear-gradient(90deg,var(--premium-blue),var(--premium-blue-2),var(--premium-gold));
  border-radius:0;
  opacity:1
}
.treatment-card-grid>.card:hover{
  transform:translateY(-7px);
  border-color:#8ebbe5;
  box-shadow:0 24px 60px rgba(22,76,134,.17)
}
.treatment-card-grid .icon{flex:0 0 auto}
.treatment-card-grid h3{
  width:100%;
  margin:.2rem 0 .55rem;
  color:var(--premium-blue-deep);
  font-size:1.34rem;
  line-height:1.2
}
.treatment-card-grid p{
  width:100%;
  margin:0;
  color:#506f8c;
  font-size:.95rem;
  line-height:1.65
}
.treatment-card-grid .card-link{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  margin-top:auto;
  padding-top:22px;
  color:var(--premium-blue);
  font-size:.8rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase
}
.treatment-card-grid .card-link b{color:var(--premium-gold);font-size:1rem}

/* Keep clipped serif characters and focus outlines fully visible. */
.section .center,.procedure-heading,.treatment-hub-hero .container{overflow:visible}
.faq-q,.hub-card h2,.related-card b{line-height:1.35}
.language-control select{font-weight:700}

@media(max-width:920px){
  .treatment-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .treatment-card-grid>.card{min-height:250px}
}
@media(max-width:620px){
  h1,h2{word-break:normal;hyphens:none}
  .treatment-hub-hero h1{font-size:clamp(2.7rem,14vw,4rem);max-width:10ch}
  .treatment-hub-hero h1 .gt{display:block}
  .treatment-card-grid{grid-template-columns:1fr}
  .treatment-card-grid>.card{min-height:0;padding:27px}
}
