/* Homepage composition. Scoped so service and case pages retain their layouts. */
.clinic-home { --section-pad: clamp(64px, 7vw, 104px); }
.clinic-home .container { width: min(1200px, calc(100% - 64px)); }
.clinic-home .section { background: #fff; }
.clinic-home .section.soft { background: var(--soft); }
.clinic-home .site-header { background: #fff; border-bottom: 1px solid #e1e9e4; box-shadow: none; }
.clinic-home .nav-inner { min-height: 84px; }
.clinic-home .nav-cta { background: var(--green2); box-shadow: none; border-radius: 6px; }
.clinic-home .hero {
  min-height: 0; padding: 64px 0 56px; background: var(--soft); contain: none;
}
.clinic-home .hero::before, .clinic-home .hero::after { display: none; }
.clinic-home .hero-inner { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); gap: clamp(32px,5vw,72px); align-items: center; }
.clinic-home .hero-copy { color: var(--green2); min-width: 0; }
.clinic-home .hero .eyebrow { color: var(--green); font-size: .7rem; letter-spacing: .12em; line-height: 1.7; margin-bottom: 22px; }
.clinic-home .brand-heading { font-size: clamp(2.75rem,4.6vw,4.4rem); line-height: 1.05; letter-spacing: -.035em; color: var(--green2); font-weight: 600; }
.clinic-home .brand-heading em { color: var(--green); }
.clinic-home .hero .lead { color: #52645c; font-size: 1rem; line-height: 1.8; margin-top: 24px; max-width: 52ch; }
.clinic-home .hero .cta-row { gap: 12px; margin-top: 28px; }
.clinic-home .btn { border-radius: 6px; letter-spacing: 0; white-space: normal; text-align: center; box-shadow: none; padding: 14px 20px; }
.clinic-home .btn-gold { background: var(--green2); color: #fff; }
.clinic-home .btn-gold:hover { background: var(--green); }
.clinic-home .hero .btn-ghost { background: transparent; border: 1px solid #b5c7bc; color: var(--green2); }
.clinic-home .hero .btn-subtext { color: var(--muted); font-size: .72rem; }
.clinic-home .hero-semantic { font-family: inherit; font-size: .75rem; color: var(--muted); border-top: 1px solid #d8e4dc; padding-top: 18px; margin-top: 24px; line-height: 1.7; }
.clinic-home .hero-semantic em { font-style: normal; }
.clinic-home .hero-clinic { min-width: 0; margin: 0; position: relative; border-radius: 8px; overflow: hidden; background: var(--green2); }
.clinic-home .hero-clinic img { width: 100%; height: 440px; object-fit: cover; object-position: 52% center; }
.clinic-home .hero-clinic figcaption { padding: 18px 22px; display: flex; flex-direction: column; gap: 3px; color: #fff; font-size: .88rem; }
.clinic-home .hero-clinic figcaption span:last-child { color: #d4c28d; font-size: .73rem; }
.clinic-home .stats-strip { background: #fff; padding: 0; border-bottom: 1px solid #e1e9e4; }
.clinic-home .stats-inner { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; padding: 24px 0; }
.clinic-home .stat-divider { display: none; }
.clinic-home .stat-item { padding: 12px 24px; border-inline-end: 1px solid #e1e9e4; text-align: start; }
.clinic-home .stat-item:last-child { border: 0; }
.clinic-home .stat-number { font-size: clamp(1.5rem,2.4vw,2rem); }
.clinic-home .stat-label { font-size: .68rem; letter-spacing: .07em; }
.clinic-home .stats-caption { max-width: 850px; margin: 0 auto; padding: 0 24px 20px; font-size: .75rem; }
.clinic-home .section-head { max-width: 760px; margin: 0 0 36px; text-align: start; }
.clinic-home .section-head .kicker { justify-content: flex-start; }
.clinic-home .section-head h2, .clinic-home .split-content h2 { font-size: clamp(2rem,3.5vw,3.1rem); line-height: 1.12; font-weight: 600; letter-spacing: -.02em; }
.clinic-home .section-head .sub { max-width: 62ch; font-size: .98rem; margin-top: 16px; }
.clinic-home .kicker { color: var(--green); font-size: .68rem; letter-spacing: .15em; }
.clinic-home .split { grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: clamp(32px,7vw,88px); }
.clinic-home .portrait { border-radius: 8px; max-height: 490px; width: 100%; box-shadow: none; object-fit: cover; }
.clinic-home .portrait-wrap::before, .clinic-home .accent-line { display: none; }
.clinic-home .credentials-block { box-shadow: none; border-radius: 6px; }
.clinic-home .why-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; }
.clinic-home .why-card { border: 0; border-inline-end: 1px solid #dce6df; border-radius: 0; box-shadow: none; background: transparent; padding: 8px 28px; }
.clinic-home .why-card:first-child { padding-inline-start: 0; }
.clinic-home .why-card:last-child { border: 0; }
.clinic-home .why-card:hover { transform: none; box-shadow: none; }
.clinic-home .why-card::before { display: none; }
.clinic-home .why-icon { width: 38px; height: 38px; border-radius: 6px; }
.clinic-home .why-num { font-size: 1.25rem; color: var(--gold2); }
.clinic-home .service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; margin-top: 32px; }
.clinic-home .service-grid .service-card { grid-column: auto; display: grid; grid-template-columns: minmax(0,.7fr) minmax(0,1fr); border-radius: 8px; box-shadow: none; border: 1px solid #dce6df; }
.clinic-home .service-grid .service-card:first-child { grid-column: 1 / -1; grid-template-columns: minmax(0,1fr) minmax(0,1.35fr); background: var(--green2); border-color: var(--green2); }
.clinic-home .service-card-media { height: auto; min-height: 100%; }
.clinic-home .service-card-media img { position: absolute; inset: 0; height: 100%; }
.clinic-home .service-card-body { padding: 26px; min-width: 0; }
.clinic-home .service-card h3 { font-size: 1.5rem; line-height: 1.15; }
.clinic-home .service-card-list { margin-bottom: 18px; }
.clinic-home .service-card-list li { font-size: .78rem; }
.clinic-home .service-card-desc { -webkit-line-clamp: 3; font-size: .86rem; }
.clinic-home .service-card:first-child .service-card-body { padding: clamp(28px,4vw,48px); }
.clinic-home .service-card:first-child h3 { color: #fff; font-size: clamp(2rem,3vw,2.75rem); }
.clinic-home .service-card:first-child .service-card-desc { display: block; color: #dce8e0; }
.clinic-home .service-card:first-child .service-card-list li { color: #e3ece6; opacity: 1; }
.clinic-home .service-card:first-child .btn-gold { background: var(--gold); color: var(--green2); }
.clinic-home .service-card:hover { transform: translateY(-3px); box-shadow: 0 10px 26px #1248360c; }
.clinic-home .thin-banner { background: transparent; border-width: 0 0 1px; border-color: #dce6df; border-radius: 0; text-align: start; padding: 0 0 20px; margin-bottom: 0; }
.clinic-home .triage-box { border-radius: 8px; box-shadow: none; background: var(--green2); padding: clamp(24px,4vw,44px); gap: 36px; }
.clinic-home .triage-left h2 { font-size: clamp(2rem,3.3vw,3rem); line-height: 1.12; }
.clinic-home .triage-right { border-radius: 6px; box-shadow: none; }
.clinic-home .triage-btn { border-radius: 6px; }
.clinic-home .triage-left .kicker { color: #e3cc8c; }
.clinic-home .card { border-radius: 8px; box-shadow: none; padding: 28px; border: 1px solid #dce6df; }
.clinic-home #smile-transformations { background: var(--green2); }
.clinic-home #smile-transformations .kicker, .clinic-home .section.dark .kicker { color: #e3cc8c; }
.clinic-home .section.dark { background: var(--soft); color: var(--text); }
.clinic-home .section.dark .section-head h2 { color: var(--green2); }
.clinic-home .section.dark .sub { color: var(--muted); }
.clinic-home .section.dark .kicker { color: var(--green); }
.clinic-home .shot { border-radius: 8px; box-shadow: none; }
.clinic-home .info-grid { gap: 16px; }
.clinic-home .info-card { padding: 24px; border-radius: 6px; box-shadow: none; }
.clinic-home .cta-final { background: var(--green2); }
.clinic-home .cta-final .btn-gold { background: var(--gold); color: var(--green2); }
.clinic-home .cta-final::before { display: none; }
.clinic-home .faq-list { max-width: 900px; }
.clinic-home .faq-item { border-radius: 6px; box-shadow: none; }
html[lang="ar"] .clinic-home .brand-heading { font-size: clamp(2.1rem,3.6vw,3.3rem); line-height: 1.45; letter-spacing: 0; }
html[lang="ar"] .clinic-home .brand-heading em { font-style: normal; }
html[lang="ar"] .clinic-home .section-head h2, html[lang="ar"] .clinic-home .split-content h2 { letter-spacing: 0; line-height: 1.5; }
@media (max-width: 1100px) {
  .clinic-home .service-grid .service-card { grid-template-columns: 1fr; }
  .clinic-home .service-grid .service-card:first-child { grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); }
  .clinic-home .service-card-media { min-height: 200px; }
}
@media (max-width: 899px) {
  .clinic-home .hero-inner { grid-template-columns: 1fr; gap: 32px; }
  .clinic-home .hero { padding: 40px 0; }
  .clinic-home .hero-copy { max-width: 680px; }
  .clinic-home .hero-clinic img { height: 320px; }
  .clinic-home .split { grid-template-columns: 1fr; }
  .clinic-home .split-media { max-width: 430px; }
  .clinic-home .why-grid { grid-template-columns: 1fr; gap: 24px; }
  .clinic-home .why-card, .clinic-home .why-card:first-child { border: 0; border-bottom: 1px solid #dce6df; padding: 0 0 24px; }
  .clinic-home .why-card:last-child { border: 0; padding-bottom: 0; }
  .clinic-home .triage-box { grid-template-columns: 1fr; }
}
@media (max-width: 599px) {
  .clinic-home .container { width: calc(100% - 40px); }
  .clinic-home .brand-heading { font-size: 2.8rem; }
  .clinic-home .hero .eyebrow { font-size: .62rem; }
  .clinic-home .hero .lead { font-size: .95rem; }
  .clinic-home .hero-clinic img { height: 270px; }
  .clinic-home .stats-inner { grid-template-columns: repeat(2,minmax(0,1fr)); padding: 12px 0; }
  .clinic-home .stat-item { padding: 16px 12px; }
  .clinic-home .stat-item:nth-of-type(3) { border-inline-end: 0; }
  .clinic-home .service-grid, .clinic-home .service-grid .service-card:first-child { grid-template-columns: 1fr; }
  .clinic-home .service-card:first-child .service-card-body { padding: 24px; }
  .clinic-home .info-grid { grid-template-columns: 1fr; }
  .clinic-home .triage-options { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .clinic-home .service-card, .clinic-home .btn, .clinic-home .triage-btn { transition: none; }
  .clinic-home .service-card:hover, .clinic-home .triage-btn:hover { transform: none; }
}
