/* ============ Additions for multi-page site ============ */

/* Brand mark uses a <p>, not <h1>, so every page keeps exactly one true H1 */
.brand-text .brand-name{ font-family:var(--display); font-size:1.35rem; margin:0; line-height:1; color:var(--maroon); }

/* ---------- Marathi language toggle (floating button) ---------- */
.goog-hidden{ display:none !important; }
/* Suppress Google Translate's default top banner/toolbar and page shift */
.goog-te-banner-frame, .goog-te-gadget-icon{ display:none !important; }
.goog-te-gadget{ height:0; overflow:hidden; font-size:0 !important; }
body{ top:0 !important; position:static !important; }
.skiptranslate{ display:none !important; }
html.translated-ltr body, html.translated-rtl body{ top:0 !important; }

.lang-fab{
  position:fixed; left:22px; bottom:26px; z-index:70;
  width:52px; height:52px; border-radius:50%; border:none; cursor:pointer;
  background:var(--green-deep); color:#fff;
  font-family:var(--display); font-weight:700; font-size:1.25rem;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 12px 26px -10px rgba(31,74,46,.6);
  transition:transform .2s ease, background .2s ease;
}
.lang-fab:hover, .lang-fab:focus-visible{ transform:translateY(-3px); background:var(--green-mid); }
.lang-fab .lang-fab-tooltip{
  position:absolute; left:64px; bottom:12px; white-space:nowrap;
  background:var(--ink); color:#fff; font-family:var(--ui); font-size:.76rem;
  padding:7px 12px; border-radius:8px; opacity:0; pointer-events:none;
  transition:opacity .18s ease, transform .18s ease; transform:translateX(-6px);
}
.lang-fab:hover .lang-fab-tooltip, .lang-fab:focus-visible .lang-fab-tooltip{
  opacity:1; transform:translateX(0);
}
@media (max-width:1050px){
  .lang-fab{ bottom:92px; left:16px; width:46px; height:46px; font-size:1.1rem; }
}

/* Dropdown-free simple nav active state */
nav.links a.active{ color:var(--maroon); }
nav.links a.active::after{ width:100%; }

/* Breadcrumb */
.breadcrumb{
  font-family:var(--ui); font-size:.8rem; color:var(--ink-soft);
  padding:18px 0 0; display:flex; gap:8px; flex-wrap:wrap; align-items:center;
}
.breadcrumb a{ color:var(--green-mid); }
.breadcrumb span.sep{ color:rgba(31,74,46,.35); }
.breadcrumb span.current{ color:var(--maroon); font-weight:600; }

/* Inner page hero (treatment / about / gallery / etc) */
.page-hero{ position:relative; overflow:hidden; padding:28px 0 0; }
.page-hero .container{
  display:grid; grid-template-columns:1.1fr .9fr; gap:44px; align-items:center; padding-top:20px; padding-bottom:52px;
  position:relative; z-index:1;
}
.page-hero h1{ font-size:clamp(2.1rem,4.4vw,3.1rem); margin-bottom:.3em; }
.page-hero .sub-en{ font-family:var(--ui); font-size:.85rem; letter-spacing:.03em; color:var(--green-mid); text-transform:uppercase; font-weight:700; margin-bottom:12px; }
.page-hero p.desc{ color:var(--ink-soft); font-size:1.05rem; max-width:520px; margin-bottom:26px; }
.page-hero .hero-photo{ border-radius:24px; overflow:hidden; height:340px; box-shadow:0 30px 60px -24px rgba(31,74,46,.5); }
.page-hero .hero-photo img{ width:100%; height:100%; object-fit:cover; display:block; }

/* Content block layout used on treatment pages */
.content-wrap{ display:grid; grid-template-columns:2fr 1fr; gap:48px; align-items:start; }
.content-main h2{ font-size:1.5rem; margin-top:1.4em; }
.content-main h2:first-child{ margin-top:0; }
.content-main p{ color:var(--ink-soft); font-size:1.02rem; margin-bottom:1em; }
.content-main ul.tick-list{ list-style:none; margin:0 0 1.4em; padding:0; display:flex; flex-direction:column; gap:10px; }
.content-main ul.tick-list li{ display:flex; gap:10px; align-items:flex-start; color:var(--ink-soft); font-size:.98rem; }
.content-main ul.tick-list li svg{ width:20px; height:20px; color:var(--green-mid); flex-shrink:0; margin-top:2px; }

/* Sidebar card */
.side-card{
  background:var(--white); border:1px solid rgba(31,74,46,.12); border-radius:var(--radius);
  padding:24px; box-shadow:var(--shadow); position:sticky; top:96px;
}
.side-card h3{ font-size:1.1rem; }
.side-card .btn{ width:100%; justify-content:center; margin-top:10px; }
.side-list{ list-style:none; margin:18px 0 0; padding:0; display:flex; flex-direction:column; gap:2px; }
.side-list a{
  display:block; padding:10px 12px; border-radius:10px; font-size:.92rem; color:var(--ink);
  border:1px solid transparent;
}
.side-list a:hover{ background:var(--sage); border-color:rgba(31,74,46,.1); }
.side-list a.active{ background:var(--sage); color:var(--maroon); font-weight:600; border-color:rgba(31,74,46,.14); }

/* Treatment hub grid (treatments.html) */
.hub-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
.hub-card{
  background:var(--white); border-radius:var(--radius); overflow:hidden;
  border:1px solid rgba(31,74,46,.10); transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  display:flex; flex-direction:column; cursor:pointer;
}
.hub-card:hover{ transform:translateY(-6px); box-shadow:var(--shadow); border-color:var(--gold); }
.hub-card:focus-visible{ outline:2px solid var(--gold); outline-offset:3px; transform:translateY(-6px); box-shadow:var(--shadow); border-color:var(--gold); }
.hub-card .hub-img{ height:170px; overflow:hidden; }
.hub-card .hub-img img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s ease; }
.hub-card:hover .hub-img img{ transform:scale(1.06); }
.hub-card .hub-body{ padding:20px 20px 24px; flex:1; display:flex; flex-direction:column; }
.hub-card h3{ font-size:1.08rem; margin-bottom:6px; }
.hub-card p{ font-size:.9rem; color:var(--ink-soft); flex:1; margin-bottom:14px; }
.hub-card .btn{ align-self:flex-start; padding:9px 16px; font-size:.82rem; }

/* Gallery grid */
.gallery-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.gallery-grid figure{ margin:0; border-radius:16px; overflow:hidden; box-shadow:var(--shadow); position:relative; height:230px; }
.gallery-grid img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s ease; }
.gallery-grid figure:hover img{ transform:scale(1.07); }
.gallery-grid figcaption{
  position:absolute; left:0; right:0; bottom:0; padding:10px 14px;
  background:linear-gradient(0deg, rgba(0,0,0,.65), transparent);
  color:#fff; font-family:var(--ui); font-size:.78rem;
}

/* Testimonials */
.testi-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.testi-card{
  background:var(--white); border-radius:var(--radius); padding:26px 24px;
  border:1px solid rgba(31,74,46,.1); box-shadow:var(--shadow);
}
.testi-card .stars{ color:var(--gold); letter-spacing:2px; margin-bottom:10px; font-size:1rem; }
.testi-card p.quote{ color:var(--ink); font-size:.98rem; margin-bottom:16px; font-style:italic; }
.testi-card .who{ display:flex; align-items:center; gap:12px; }
.testi-card .avatar{
  width:42px; height:42px; border-radius:50%; background:var(--sage); color:var(--green-deep);
  display:flex; align-items:center; justify-content:center; font-family:var(--display); font-weight:700; flex-shrink:0;
}
.testi-card .who h4{ margin:0; font-size:.92rem; color:var(--ink); }
.testi-card .who span{ font-size:.78rem; color:var(--ink-soft); }

/* About page timeline / values */
.about-grid{ display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; }
.value-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:12px; }

/* Stat strip */
.stat-strip{ display:flex; flex-wrap:wrap; gap:28px; margin-top:26px; }
.stat-strip .stat{ min-width:110px; }
.stat-strip .stat b{ display:block; font-family:var(--display); font-size:1.9rem; color:var(--maroon); }
.stat-strip .stat span{ font-family:var(--ui); font-size:.78rem; color:var(--ink-soft); text-transform:uppercase; letter-spacing:.04em; }

@media (max-width:1050px){
  .page-hero .container{ grid-template-columns:1fr; }
  .content-wrap{ grid-template-columns:1fr; }
  .side-card{ position:static; }
  .hub-grid{ grid-template-columns:repeat(2,1fr); }
  .gallery-grid{ grid-template-columns:repeat(2,1fr); }
  .testi-grid{ grid-template-columns:1fr; }
  .about-grid{ grid-template-columns:1fr; }
  .value-grid{ grid-template-columns:1fr; }
}
@media (max-width:560px){
  .hub-grid{ grid-template-columns:1fr; }
  .gallery-grid{ grid-template-columns:1fr; }
}
