/* ---- Tedaviler: sayfa scope'lu stiller (tx-) ---- */
.tx-hero{
  position:relative; overflow:hidden;
  /* padding-top ana sayfa .hero ile eşit (eskiden 140–196px → çok aşağıdaydı) */
  padding:clamp(40px,6vw,72px) 0 clamp(64px,8vw,104px);
  background:
    radial-gradient(120% 90% at 88% -10%, rgba(70,198,255,.16), transparent 55%),
    radial-gradient(90% 80% at 8% 0%, rgba(43,134,255,.14), transparent 60%),
    linear-gradient(180deg,#fff 0%, var(--paper) 100%);
}
.tx-hero-bg{ position:absolute; inset:0; pointer-events:none; }
.tx-hero-bg .tx-grid{
  position:absolute; inset:-2px;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:46px 46px;
  -webkit-mask-image:radial-gradient(120% 80% at 60% 0%,#000,transparent 72%);
          mask-image:radial-gradient(120% 80% at 60% 0%,#000,transparent 72%);
  opacity:.6;
}
.tx-hero-bg .tx-glow{ position:absolute; border-radius:50%; filter:blur(60px); opacity:.5; }
.tx-hero-bg .g1{ width:420px;height:420px; top:-120px;right:-60px; background:radial-gradient(circle,var(--cyan),transparent 70%); }
.tx-hero-bg .g2{ width:380px;height:380px; bottom:-160px;left:-80px;  background:radial-gradient(circle,var(--brand-bright),transparent 70%); }

.tx-hero-inner{
  position:relative; z-index:2;
  display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(24px,4vw,56px);
  align-items:center;
}
.tx-hero-copy{ max-width:620px; }
.tx-badge{
  display:inline-flex; align-items:center; gap:9px;
  padding:8px 15px; border-radius:999px;
  background:rgba(12,92,224,.08); border:1px solid rgba(12,92,224,.16);
  color:var(--brand); font-weight:600; font-size:.82rem; letter-spacing:.01em;
}
.tx-badge svg{ width:16px;height:16px; }
.tx-hero h1{
  margin:20px 0 0; font-family:var(--display); font-weight:700;
  font-size:clamp(2.1rem,5vw,3.5rem); line-height:1.06; letter-spacing:-.02em;
}
.tx-hero h1 em{ font-style:normal; color:var(--brand); position:relative; white-space:nowrap; }
.tx-hero h1 em::after{
  content:""; position:absolute; left:0; right:0; bottom:.06em; height:.32em;
  background:linear-gradient(90deg,var(--cyan),var(--brand-bright)); opacity:.22; border-radius:4px; z-index:-1;
}
.tx-hero .lead{ margin-top:20px; font-size:clamp(1rem,1.4vw,1.12rem); color:var(--muted); max-width:560px; }
.tx-hero-actions{ display:flex; flex-wrap:wrap; gap:14px; margin-top:30px; }
.tx-hero-meta{
  display:flex; flex-wrap:wrap; align-items:center; gap:8px 18px; margin-top:26px;
  color:var(--muted); font-size:.86rem; font-weight:500;
}
.tx-hero-meta b{ color:var(--ink); }
.tx-hero-meta .sep{ width:5px;height:5px;border-radius:50%;background:var(--line-strong); }

/* ---- 3D diş görseli ---- */
.tx-hero-visual{ position:relative; display:grid; place-items:center; min-height:clamp(320px,40vw,460px); }
.tx-orbit{ position:absolute; border-radius:50%; border:1px dashed rgba(12,92,224,.18); }
.tx-orbit.o1{ width:clamp(280px,32vw,400px); aspect-ratio:1; animation:txspin 36s linear infinite; }
.tx-orbit.o2{ width:clamp(210px,24vw,300px); aspect-ratio:1; border-style:solid; border-color:rgba(70,198,255,.16); animation:txspin 26s linear infinite reverse; }
.tx-cast{
  position:absolute; bottom:13%; width:46%; height:30px; border-radius:50%;
  background:radial-gradient(ellipse,rgba(8,28,72,.28),transparent 70%); filter:blur(8px);
}
.tooth3d{
  position:relative; z-index:2; width:clamp(190px,24vw,290px);
  filter:drop-shadow(0 26px 40px rgba(12,92,224,.30));
  animation:txfloat 6.5s ease-in-out infinite;
}
.tooth3d svg{ width:100%; height:auto; display:block; }
.tx-spark{ position:absolute; z-index:3; color:var(--cyan); animation:txtwinkle 3.4s ease-in-out infinite; }
.tx-spark svg{ width:100%;height:100%; }
.tx-spark.s1{ width:30px;height:30px; top:8%; left:16%; color:var(--brand-bright); }
.tx-spark.s2{ width:20px;height:20px; top:24%; right:13%; animation-delay:.8s; }
.tx-spark.s3{ width:16px;height:16px; bottom:20%; left:22%; animation-delay:1.6s; }

/* yüzen kategori rozetleri */
.tx-chip{
  position:absolute; z-index:4; display:inline-flex; align-items:center; gap:9px;
  padding:9px 14px 9px 10px; border-radius:14px; text-decoration:none;
  background:rgba(255,255,255,.78); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.85); box-shadow:var(--shadow-md);
  color:var(--ink); font-weight:600; font-size:.84rem; white-space:nowrap;
  transition:transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s;
  animation:txfloat 7s ease-in-out infinite;
}
.tx-chip:hover{ transform:translateY(-3px) scale(1.03); box-shadow:var(--shadow-lg); }
.tx-chip .ci{ display:grid;place-items:center; width:30px;height:30px;border-radius:9px; background:linear-gradient(140deg,var(--brand-bright),var(--brand)); color:#fff; flex:0 0 auto; }
.tx-chip .ci svg{ width:17px;height:17px; }
.tx-chip.k1{ top:6%;  left:-4%;  animation-delay:.2s; }
.tx-chip.k2{ top:40%; right:-8%; animation-delay:1.1s; }
.tx-chip.k3{ bottom:10%; right:2%; animation-delay:.6s; }

/* hero altı hızlı kategori şeridi */
.tx-quicknav{
  position:relative; z-index:2; margin-top:clamp(40px,6vw,64px);
  display:flex; flex-wrap:wrap; gap:10px;
}
.tx-qn{
  display:inline-flex; align-items:center; gap:9px; text-decoration:none;
  padding:10px 16px; border-radius:999px; background:var(--white); border:1px solid var(--line);
  color:var(--ink); font-weight:600; font-size:.88rem; box-shadow:var(--shadow-sm);
  transition:border-color .2s, transform .2s, color .2s;
}
.tx-qn:hover{ transform:translateY(-2px); border-color:var(--brand); color:var(--brand); }
.tx-qn .qd{ width:8px;height:8px;border-radius:50%;background:linear-gradient(140deg,var(--brand-bright),var(--cyan)); }

/* ---- Genel bakış ---- */
.tx-intro .head{ margin-bottom:34px; }
.tx-pills{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.tx-pill{
  background:var(--white); border:1px solid var(--line); border-radius:var(--r-md);
  padding:22px 20px; box-shadow:var(--shadow-sm);
}
.tx-pill .pi{ display:grid;place-items:center; width:46px;height:46px;border-radius:13px; margin-bottom:14px;
  background:linear-gradient(140deg,rgba(43,134,255,.14),rgba(70,198,255,.14)); color:var(--brand); }
.tx-pill .pi svg{ width:24px;height:24px; }
.tx-pill h4{ font-family:var(--display); font-weight:600; font-size:1.02rem; margin-bottom:5px; }
.tx-pill p{ color:var(--muted); font-size:.9rem; line-height:1.5; }

/* ---- Tedavi grupları ---- */
.tx-group{ padding-block:clamp(46px,6vw,72px); scroll-margin-top:96px; }
.tx-group:nth-of-type(even){ background:linear-gradient(180deg,#fff,var(--paper)); }
.tx-ghead{ display:flex; align-items:flex-start; gap:18px; margin-bottom:30px; }
.tx-ghead .gi{ display:grid;place-items:center; flex:0 0 auto; width:58px;height:58px;border-radius:16px;
  background:linear-gradient(140deg,var(--brand-bright),var(--brand)); color:#fff; box-shadow:var(--glow); }
.tx-ghead .gi svg{ width:30px;height:30px; }
.tx-ghead .gt{ flex:1; }
.tx-ghead .gt .gno{ font-size:.78rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--brand); }
.tx-ghead .gt h2{ font-family:var(--display); font-weight:600; font-size:clamp(1.5rem,2.6vw,2rem); line-height:1.1; margin:4px 0 6px; }
.tx-ghead .gt p{ color:var(--muted); max-width:620px; font-size:.96rem; }

.tx-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:14px; }
.tx-item{
  display:flex; align-items:center; gap:15px; text-decoration:none; color:inherit;
  background:var(--white); border:1px solid var(--line); border-radius:var(--r-md);
  padding:18px 18px; box-shadow:var(--shadow-sm); position:relative; overflow:hidden;
  transition:transform .24s cubic-bezier(.2,.8,.2,1), box-shadow .24s, border-color .24s;
}
.tx-item::before{ content:""; position:absolute; left:0;top:0;bottom:0; width:3px; background:linear-gradient(180deg,var(--brand-bright),var(--cyan)); transform:scaleY(0); transform-origin:top; transition:transform .24s; }
.tx-item:hover{ transform:translateY(-4px); box-shadow:var(--shadow-md); border-color:transparent; }
.tx-item:hover::before{ transform:scaleY(1); }
.tx-item .ii{ display:grid;place-items:center; flex:0 0 auto; width:46px;height:46px;border-radius:12px;
  background:linear-gradient(140deg,rgba(43,134,255,.12),rgba(70,198,255,.12)); color:var(--brand); transition:background .24s,color .24s; }
.tx-item:hover .ii{ background:linear-gradient(140deg,var(--brand-bright),var(--brand)); color:#fff; }
.tx-item .ii svg{ width:24px;height:24px; }
.tx-item .it{ flex:1; min-width:0; }
.tx-item .it b{ display:block; font-family:var(--display); font-weight:600; font-size:1rem; }
.tx-item .it small{ display:block; color:var(--muted); font-size:.85rem; line-height:1.4; margin-top:2px; }
.tx-item .ia{ flex:0 0 auto; color:var(--muted); transition:transform .24s, color .24s; }
.tx-item:hover .ia{ color:var(--brand); transform:translateX(4px); }
.tx-item .ia svg{ width:20px;height:20px; }

.tx-grp-cta{ margin-top:22px; }
.tx-grp-cta a{ display:inline-flex; align-items:center; gap:9px; text-decoration:none; color:var(--brand); font-weight:600; font-size:.95rem; }
.tx-grp-cta a svg{ width:18px;height:18px; transition:transform .2s; }
.tx-grp-cta a:hover svg{ transform:translateX(4px); }

/* ---- Kapanış CTA ---- */
.tx-final{
  position:relative; overflow:hidden; color:#fff;
  /* Footer'a HİÇ dokunmadan bitişik dur: footer'ın üst boşluğunu (margin-top) banda
     negatif margin ile içeri al. Footer her sayfada birebir aynı kalır. */
  margin-bottom:calc(-1 * clamp(40px,6vw,90px));
  background:
    radial-gradient(circle 520px at 50% 100%, rgba(43,134,255,.16), transparent 65%), /* footer'ın üst mavi parıltısını seam'de devam ettir */
    linear-gradient(180deg, transparent 48%, var(--navy-deep) 100%),
    radial-gradient(120% 140% at 100% 0%, var(--brand) 0%, var(--navy) 45%, var(--navy-deep) 100%);
  padding:clamp(56px,8vw,92px) 0;
}
.tx-final::after{ content:""; position:absolute; inset:0;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:42px 42px; -webkit-mask-image:radial-gradient(80% 120% at 80% 0%,#000,transparent 70%); mask-image:radial-gradient(80% 120% at 80% 0%,#000,transparent 70%); }
.tx-final .wrap{ position:relative; z-index:2; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:28px; }
.tx-final h2{ font-family:var(--display); font-weight:700; font-size:clamp(1.6rem,3.2vw,2.4rem); line-height:1.12; max-width:560px; color:#fff; }
.tx-final p{ color:rgba(255,255,255,.78); margin-top:12px; max-width:520px; }
.tx-final-actions{ display:flex; flex-wrap:wrap; gap:14px; }
.tx-final .btn-light{ background:#fff; color:var(--brand); }
.tx-final .btn-light:hover{ transform:translateY(-2px); box-shadow:0 18px 40px rgba(0,0,0,.25); }
.tx-final .btn-outline{ background:transparent; color:#fff; border:1.5px solid rgba(255,255,255,.4); }
.tx-final .btn-outline:hover{ border-color:#fff; background:rgba(255,255,255,.08); }

@keyframes txfloat{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-12px); } }
@keyframes txspin{ to{ transform:rotate(360deg); } }
@keyframes txtwinkle{ 0%,100%{ opacity:.35; transform:scale(.85); } 50%{ opacity:1; transform:scale(1.1); } }

@media (max-width:960px){
  .tx-hero-inner{ grid-template-columns:1fr; }
  .tx-hero-copy{ max-width:none; }
  .tx-hero-visual{ order:-1; min-height:300px; }
  .tx-pills{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
  .tx-chip.k1{ left:-2%; } .tx-chip.k2{ right:-2%; }
  .tx-pills{ grid-template-columns:1fr; }
  .tx-ghead{ flex-direction:column; gap:14px; }
  .tx-final .wrap{ flex-direction:column; align-items:flex-start; }
}
@media (prefers-reduced-motion:reduce){
  .tooth3d,.tx-chip,.tx-spark,.tx-orbit{ animation:none !important; }
}
