/*
Theme Name: Tantawy System UI
Theme URI: https://tantawy.net/
Author: Tantawy Educational Platform
Description: Mobile-first semantic front-end interface for نظام منصة الطنطاوي التعليمية, prepared for future plugin integration.
Version: 2.7.1
Text Domain: tantawy-system-ui
*/

:root {
  --primary: #2B7F9D;
  --primary-light: #3594B4;
  --primary-dark: #1F6D84;
  --gold: #DBA426;
  --gold-soft: #D0A332;
  --white: #FFFFFF;
  --background: #F5F7FB;
  --ink: #12263A;
  --text: #304157;
  --muted: #6D7C90;
  --line: rgba(43, 127, 157, .14);
  --soft-blue: #EAF6FB;
  --soft-gold: #FFF6DE;
  --shadow: 0 24px 70px rgba(31, 109, 132, .13);
  --shadow-soft: 0 14px 36px rgba(31, 109, 132, .10);
  --radius: 24px;
  --radius-lg: 42px;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
html { direction: rtl; scroll-behavior: smooth; scroll-padding-top: 108px; }
body {
  direction: rtl;
  text-align: right;
  font-family: "Tajawal", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: var(--background);
  color: var(--text);
  line-height: 1.85;
  overflow-x: hidden;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -5;
  background: url('assets/images/bg-pattern.png') center top / cover no-repeat;
  opacity: .20;
  pointer-events: none;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; height: auto; }
ul { list-style: none; }
button, input, textarea { font-family: inherit; }

.tnt-container { width: min(1200px, calc(100% - 34px)); margin-inline: auto; }
.tnt-main { overflow: hidden; }

.tnt-preloader {
  position: fixed;
  inset: 0;
  z-index: 100001;
  display: grid;
  place-items: center;
  background: radial-gradient(circle at center, rgba(255,255,255,.96), rgba(245,247,251,.98));
  transition: opacity .45s ease, visibility .45s ease;
}
.tnt-preloader.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }
.tnt-preloader-card {
  display: grid;
  place-items: center;
  gap: 12px;
  padding: 26px 34px;
  border-radius: 28px;
  background: #fff;
  border: 1px solid rgba(43,127,157,.12);
  box-shadow: var(--shadow);
  color: var(--primary-dark);
  font-family: "Cairo", sans-serif;
  font-weight: 900;
}
.tnt-preloader-card i { color: var(--gold); font-size: 42px; animation: tntPulse 1.2s infinite ease-in-out; }

.tnt-reading-progress {
  position: fixed;
  inset: 0 0 auto 0;
  height: 4px;
  background: rgba(255, 255, 255, .45);
  z-index: 100000;
}
.admin-bar .tnt-reading-progress { top: 32px; }
.tnt-reading-progress-bar {
  display: block;
  width: 0;
  height: 100%;
  background: linear-gradient(90deg, var(--gold), #F4CF72, var(--primary-light));
  box-shadow: 0 0 18px rgba(219, 164, 38, .42);
}

.tnt-header {
  position: sticky;
  top: 0;
  z-index: 9999;
  background: rgba(255, 255, 255, .90);
  backdrop-filter: blur(18px);
  border-bottom: 1px solid rgba(43, 127, 157, .12);
  box-shadow: 0 12px 34px rgba(31, 109, 132, .07);
  transform: translateY(0);
  transition: transform .28s ease, box-shadow .28s ease, background .28s ease;
}
.tnt-header.is-hidden { transform: translateY(calc(-100% - 10px)); }
.tnt-header.is-scrolled { background: rgba(255,255,255,.96); box-shadow: 0 18px 45px rgba(31,109,132,.11); }
.admin-bar .tnt-header { top: 32px; }
.tnt-navbar {
  min-height: 84px;
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
}
.tnt-brand { display: inline-flex; align-items: center; gap: 12px; min-width: 0; }
.tnt-logo {
  width: 62px;
  height: 62px;
  object-fit: contain;
  background: var(--white);
  border-radius: 18px;
  padding: 6px;
  box-shadow: 0 12px 28px rgba(31, 109, 132, .10);
  flex: 0 0 auto;
}
.tnt-brand-text { min-width: 0; }
.tnt-brand-text b {
  display: block;
  font-family: "Cairo", sans-serif;
  color: var(--primary-dark);
  font-size: 15px;
  line-height: 1.25;
  font-weight: 900;
  white-space: nowrap;
}
.tnt-brand-text small {
  display: block;
  color: var(--gold);
  font-size: 12px;
  font-weight: 800;
  margin-top: 1px;
  white-space: nowrap;
}
.tnt-menu { display: flex; align-items: center; justify-content: center; gap: 3px; flex-wrap: wrap; }
.tnt-menu a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 39px;
  padding: 8px 10px;
  border-radius: 999px;
  color: var(--ink);
  font-family: "Cairo", sans-serif;
  font-size: 12.5px;
  font-weight: 800;
  transition: .22s ease;
  white-space: nowrap;
}
.tnt-menu a:hover,
.tnt-menu a:focus-visible { color: var(--primary-dark); background: rgba(43, 127, 157, .09); transform: translateY(-1px); }
.tnt-login-btn {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 17px;
  border-radius: 999px;
  font-family: "Cairo", sans-serif;
  font-weight: 900;
  color: #fff;
  background: linear-gradient(135deg, var(--gold), #F1C766);
  box-shadow: 0 14px 28px rgba(219, 164, 38, .28);
  white-space: nowrap;
}
.tnt-mobile-toggle {
  display: none;
  width: 46px;
  height: 46px;
  border: 0;
  border-radius: 15px;
  background: var(--primary);
  color: var(--white);
  font-size: 18px;
}

.tnt-btn {
  min-height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border-radius: 16px;
  padding: 14px 24px;
  border: 1px solid transparent;
  font-family: "Cairo", sans-serif;
  font-weight: 900;
  font-size: 15px;
  cursor: pointer;
  transition: .24s ease;
  white-space: nowrap;
}
.tnt-btn-lg { min-height: 62px; padding: 16px 26px; font-size: 16px; border-radius: 18px; }
.tnt-btn:hover { transform: translateY(-3px); }
.tnt-btn-gold { color: #fff; background: linear-gradient(135deg, var(--gold), #F2C766); box-shadow: 0 18px 34px rgba(219, 164, 38, .30); }
.tnt-btn-blue { color: #fff; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); box-shadow: 0 18px 34px rgba(43, 127, 157, .26); }
.tnt-btn-outline { color: var(--primary-dark); background: rgba(255, 255, 255, .72); border-color: rgba(43, 127, 157, .30); box-shadow: 0 12px 28px rgba(31, 109, 132, .08); }

.tnt-hero {
  position: relative;
  isolation: isolate;
  min-height: calc(100svh - 84px);
  padding: 62px 0 46px;
  display: flex;
  align-items: center;
}
.tnt-hero-bg {
  position: absolute;
  inset: 0;
  z-index: -3;
  background:
    linear-gradient(90deg, rgba(255,255,255,.92) 0%, rgba(255,255,255,.72) 44%, rgba(255,255,255,.80) 100%),
    url('assets/images/islamic-bg-desktop.png') center / cover no-repeat,
    linear-gradient(135deg, #F6FBFE 0%, #E9F6FB 45%, #F8FBFC 100%);
}
.tnt-hero-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 18% 18%, rgba(219, 164, 38, .18), transparent 24%),
    radial-gradient(circle at 86% 18%, rgba(43, 127, 157, .18), transparent 26%);
  pointer-events: none;
}
.tnt-hero-bg::after {
  content: "";
  position: absolute;
  inset: auto -10% -1px -10%;
  height: 140px;
  background: radial-gradient(65% 90% at 50% 100%, #fff 0%, #fff 48%, rgba(255,255,255,0) 49%);
}
.tnt-hero-layout {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: clamp(28px, 4vw, 64px);
  align-items: center;
}
.tnt-hero-art { position: relative; min-height: 540px; display: grid; place-items: center; }
.tnt-arch-frame {
  position: relative;
  width: min(100%, 520px);
  min-height: 505px;
  display: grid;
  place-items: end center;
  padding: 34px 34px 0;
  border-radius: 48% 48% 40px 40px / 30% 30% 40px 40px;
  background:
    radial-gradient(circle at 50% 30%, rgba(255,255,255,.95), rgba(255,255,255,.64) 56%, rgba(255,255,255,.30)),
    linear-gradient(160deg, rgba(43,127,157,.12), rgba(219,164,38,.08));
  border: 1px solid rgba(43, 127, 157, .16);
  box-shadow: var(--shadow);
  overflow: hidden;
}
.tnt-arch-frame::before {
  content: "";
  position: absolute;
  inset: 18px 18px auto 18px;
  height: 346px;
  border: 7px solid rgba(219, 164, 38, .72);
  border-bottom: 0;
  border-radius: 48% 48% 0 0 / 36% 36% 0 0;
  opacity: .72;
}
.tnt-arch-frame::after {
  content: "";
  position: absolute;
  left: -50px;
  right: -50px;
  bottom: -64px;
  height: 160px;
  border-radius: 50%;
  background: rgba(43, 127, 157, .10);
}
.tnt-arch-frame img {
  position: relative;
  z-index: 2;
  width: min(92%, 415px);
  max-height: 490px;
  object-fit: contain;
  filter: drop-shadow(0 30px 28px rgba(31, 109, 132, .18));
}
.tnt-float {
  position: absolute;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 12px 16px;
  background: rgba(255,255,255,.90);
  color: var(--primary-dark);
  border: 1px solid rgba(43,127,157,.13);
  border-radius: 18px;
  box-shadow: var(--shadow-soft);
  font-family: "Cairo", sans-serif;
  font-weight: 900;
  font-size: 13px;
}
.tnt-float i { color: var(--gold); }
.tnt-float-1 { top: 86px; right: 0; }
.tnt-float-2 { bottom: 90px; left: 0; }
.tnt-hero-copy { max-width: 680px; }
.tnt-eyebrow,
.tnt-section-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 15px;
  border-radius: 999px;
  color: #9A711B;
  background: rgba(219, 164, 38, .12);
  border: 1px solid rgba(219, 164, 38, .22);
  font-family: "Cairo", sans-serif;
  font-size: 13px;
  font-weight: 900;
}
.tnt-hero h1 {
  margin: 16px 0 14px;
  font-family: "Cairo", sans-serif;
  font-size: clamp(44px, 6vw, 86px);
  line-height: 1.08;
  letter-spacing: -1.6px;
  color: var(--primary-dark);
}
.tnt-hero h1 span { color: var(--gold); }
.tnt-hero-text {
  max-width: 660px;
  font-size: clamp(17px, 1.55vw, 20px);
  color: #485B72;
  line-height: 1.9;
}
.tnt-stat-row {
  max-width: 560px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 24px 0 24px;
}
.tnt-stat-row div {
  min-height: 86px;
  display: grid;
  place-items: center;
  text-align: center;
  padding: 12px;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(43,127,157,.14);
  border-radius: 20px;
  box-shadow: 0 12px 28px rgba(31,109,132,.07);
}
.tnt-stat-row b { color: var(--gold); font-family: "Cairo", sans-serif; font-size: 25px; line-height: 1; }
.tnt-stat-row span { color: var(--muted); font-size: 13px; font-weight: 800; }
.tnt-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }

.tnt-feature-strip { padding: 0 0 36px; background: #fff; }
.tnt-strip-grid {
  margin-top: -25px;
  position: relative;
  z-index: 5;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  padding: 18px;
  border-radius: 28px;
  background: rgba(255,255,255,.90);
  box-shadow: var(--shadow-soft);
  border: 1px solid rgba(43,127,157,.12);
}
.tnt-strip-grid article {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 15px 10px;
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(245,247,251,.7), rgba(255,255,255,.9));
}
.tnt-strip-grid i { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 15px; background: rgba(43,127,157,.10); color: var(--primary); font-size: 20px; margin-bottom: 8px; }
.tnt-strip-grid b { font-family: "Cairo", sans-serif; color: var(--primary-dark); font-size: 15px; }
.tnt-strip-grid span { color: var(--muted); font-size: 13px; }

.tnt-section { position: relative; padding: 86px 0; }
.tnt-section:nth-of-type(odd) { background: #fff; }
.tnt-section-head { max-width: 760px; margin: 0 auto 34px; text-align: center; }
.tnt-section-head h2,
.tnt-about-copy h2,
.tnt-teacher-layout h2,
.tnt-contact-card h2 {
  font-family: "Cairo", sans-serif;
  color: var(--primary-dark);
  font-size: clamp(28px, 4vw, 46px);
  line-height: 1.25;
  margin: 12px 0 12px;
  letter-spacing: -1px;
}
.tnt-section-head p,
.tnt-about-copy p,
.tnt-teacher-layout p,
.tnt-contact-card p { color: var(--muted); font-size: 17px; line-height: 2; }

.tnt-about-layout { display: grid; grid-template-columns: 1.05fr .95fr; gap: 44px; align-items: center; }
.tnt-about-points { display: flex; flex-wrap: wrap; gap: 10px; margin: 18px 0 0; }
.tnt-about-points span { display: inline-flex; align-items: center; gap: 8px; padding: 10px 13px; border-radius: 999px; background: rgba(43,127,157,.08); color: var(--primary-dark); font-weight: 800; }
.tnt-about-points i { color: var(--gold); }
.tnt-about-copy blockquote {
  margin-top: 22px;
  border: 1px solid rgba(219,164,38,.22);
  background: linear-gradient(135deg, rgba(255,246,222,.88), rgba(255,255,255,.88));
  border-radius: 24px;
  padding: 22px;
  color: #72561b;
  box-shadow: var(--shadow-soft);
}
.tnt-about-copy blockquote i { color: var(--gold); margin-left: 7px; }
.tnt-about-visual {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 480px;
  border-radius: 34px;
  background: radial-gradient(circle at 50% 35%, rgba(219,164,38,.11), transparent 34%), linear-gradient(180deg, rgba(234,246,251,.85), rgba(255,255,255,.95));
  border: 1px solid rgba(43,127,157,.12);
  box-shadow: var(--shadow-soft);
  overflow: hidden;
}
.tnt-about-visual::before {
  content: "";
  position: absolute;
  inset: 22px;
  border-radius: 50% 50% 26px 26px / 36% 36% 26px 26px;
  border: 4px solid rgba(219,164,38,.32);
  border-bottom: 0;
}
.tnt-about-visual img { position: relative; z-index: 2; width: min(88%, 430px); filter: drop-shadow(0 28px 30px rgba(31,109,132,.15)); }
.tnt-service-grid { margin-top: 38px; display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; }
.tnt-service-grid article {
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(43,127,157,.12);
  border-radius: 24px;
  padding: 20px 14px;
  text-align: center;
  box-shadow: 0 12px 30px rgba(31,109,132,.07);
  transition: .25s ease;
}
.tnt-service-grid article:hover { transform: translateY(-5px); box-shadow: var(--shadow-soft); }
.tnt-service-grid img { width: 78px; height: 78px; object-fit: contain; margin: 0 auto 12px; }
.tnt-service-grid h3 { color: var(--primary-dark); font-family: "Cairo", sans-serif; font-size: 16px; margin-bottom: 5px; }
.tnt-service-grid p { color: var(--muted); font-size: 13px; line-height: 1.7; }

.tnt-best-packages { background: linear-gradient(180deg, #fff, #F7FBFE); }
.tnt-best-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; align-items: stretch; }
.tnt-best-card {
  position: relative;
  overflow: hidden;
  min-height: 330px;
  padding: 30px;
  border-radius: 30px;
  border: 1px solid rgba(43,127,157,.14);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,251,254,.96));
  box-shadow: var(--shadow-soft);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.tnt-best-card:hover { transform: translateY(-8px); box-shadow: var(--shadow); }
.tnt-best-card.is-featured { border-color: rgba(219,164,38,.55); box-shadow: 0 26px 70px rgba(219,164,38,.16); }
.tnt-best-card::after { content: ""; position: absolute; width: 160px; height: 160px; border-radius: 50%; background: rgba(43,127,157,.07); left: -60px; bottom: -60px; }
.tnt-mini-badge { display: inline-flex; padding: 8px 13px; border-radius: 999px; background: rgba(43,127,157,.09); color: var(--primary-dark); font-family: "Cairo", sans-serif; font-weight: 900; font-size: 13px; }
.tnt-best-card h3 { font-family: "Cairo", sans-serif; color: var(--primary-dark); font-size: 25px; margin: 18px 0 5px; }
.tnt-best-card strong { display: block; color: var(--gold); font-family: "Cairo", sans-serif; font-size: 44px; line-height: 1.1; margin-bottom: 12px; }
.tnt-best-card p { color: var(--muted); line-height: 1.9; margin-bottom: 20px; }
.tnt-best-card a { position: relative; z-index: 1; display: inline-flex; width: 100%; min-height: 52px; align-items: center; justify-content: center; gap: 8px; color: #fff; border-radius: 16px; font-family: "Cairo", sans-serif; font-weight: 900; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); }
.tnt-best-card.is-featured a { background: linear-gradient(135deg, var(--gold), #F1C766); }

.tnt-verse-section { padding: 0 0 28px; background: #F7FBFE; }
.tnt-verse-card { display: grid; grid-template-columns: auto 1fr; gap: 16px; align-items: center; padding: 22px 24px; border-radius: 28px; border: 1px solid rgba(219,164,38,.22); background: linear-gradient(135deg, rgba(255,246,222,.88), rgba(255,255,255,.96)); box-shadow: var(--shadow-soft); }
.tnt-verse-icon { width: 62px; height: 62px; display: grid; place-items: center; border-radius: 22px; color: #fff; background: linear-gradient(135deg, var(--gold), #F0C56A); font-size: 25px; }
.tnt-verse-card span { font-family: "Cairo", sans-serif; color: #9A711B; font-weight: 900; }
.tnt-verse-card p { font-family: "Cairo", sans-serif; color: var(--primary-dark); font-weight: 900; font-size: clamp(20px, 3vw, 30px); line-height: 1.8; margin: 2px 0; }
.tnt-verse-card small { color: var(--muted); font-weight: 800; }

.tnt-pricing { background: linear-gradient(180deg, #F7FBFE, #FFFFFF); }
.tnt-tabs { display: flex; justify-content: center; gap: 10px; flex-wrap: wrap; margin-bottom: 26px; }
.tnt-tab {
  border: 1px solid rgba(43,127,157,.16);
  background: rgba(255,255,255,.82);
  color: var(--primary-dark);
  border-radius: 999px;
  padding: 12px 20px;
  font-family: "Cairo", sans-serif;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 8px 22px rgba(31,109,132,.06);
  transition: .24s ease;
}
.tnt-tab:hover, .tnt-tab.is-active { color: #fff; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); border-color: transparent; }
.tnt-tab-panel { display: none; }
.tnt-tab-panel.is-active { display: block; animation: tntFadeUp .35s ease; }
.tnt-price-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; align-items: stretch; }
.tnt-price-card {
  position: relative;
  overflow: hidden;
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(43,127,157,.14);
  border-radius: 28px;
  padding: 26px;
  box-shadow: 0 14px 36px rgba(31,109,132,.08);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
  min-height: 390px;
  display: flex;
  flex-direction: column;
}
.tnt-price-card::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 10% 0, rgba(219,164,38,.10), transparent 36%); pointer-events: none; }
.tnt-price-card:hover { transform: translateY(-8px); box-shadow: var(--shadow); }
.tnt-price-card.is-featured { border-color: rgba(219,164,38,.55); transform: translateY(-6px); box-shadow: 0 24px 60px rgba(219,164,38,.16); }
.tnt-ribbon { position: absolute; top: 14px; left: 18px; z-index: 2; display: inline-flex; align-items: center; justify-content: center; min-width: 118px; padding: 6px 12px; border-radius: 999px; background: linear-gradient(135deg, var(--gold), #F1C766); color: #fff; font-family: "Cairo", sans-serif; font-size: 12px; font-weight: 900; box-shadow: 0 10px 20px rgba(219,164,38,.22); }
.tnt-plan-icon { width: 58px; height: 58px; border-radius: 20px; display: grid; place-items: center; margin-bottom: 16px; color: var(--primary); background: rgba(43,127,157,.09); font-size: 24px; }
.tnt-price-card h3 { color: var(--primary-dark); font-family: "Cairo", sans-serif; font-size: 23px; }
.tnt-price-card strong { display: block; color: var(--primary-dark); font-family: "Cairo", sans-serif; font-size: 42px; line-height: 1.2; margin: 10px 0 4px; }
.tnt-price-card p { color: var(--gold); font-weight: 800; margin-bottom: 14px; }
.tnt-price-card ul { flex: 1; }
.tnt-price-card li { display: flex; align-items: start; gap: 9px; color: var(--muted); margin: 8px 0; font-size: 14px; }
.tnt-price-card li i { color: var(--gold); margin-top: 8px; }
.tnt-price-card a { margin-top: 18px; display: inline-flex; width: 100%; min-height: 48px; align-items: center; justify-content: center; border-radius: 14px; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: #fff; font-family: "Cairo", sans-serif; font-weight: 900; }
.tnt-price-card.is-featured a { background: linear-gradient(135deg, var(--gold), #F2C766); }

.tnt-student-guide { background: #fff; }
.tnt-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; position: relative; }
.tnt-steps article { position: relative; background: rgba(255,255,255,.94); border: 1px solid rgba(43,127,157,.12); border-radius: 26px; padding: 28px 18px; text-align: center; box-shadow: var(--shadow-soft); }
.tnt-steps span { position: absolute; top: 14px; right: 14px; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: var(--gold); color: #fff; font-family: "Cairo", sans-serif; font-weight: 900; }
.tnt-steps i { width: 70px; height: 70px; display: grid; place-items: center; margin: 0 auto 14px; border-radius: 24px; color: var(--primary); background: rgba(43,127,157,.10); font-size: 28px; }
.tnt-steps h3,
.tnt-guide-cards h3,
.tnt-teacher-list h3 { color: var(--primary-dark); font-family: "Cairo", sans-serif; font-size: 19px; margin-bottom: 6px; }
.tnt-steps p,
.tnt-guide-cards p,
.tnt-teacher-list p { color: var(--muted); font-size: 15px; line-height: 1.9; }
.tnt-guide-cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; margin-top: 20px; }
.tnt-guide-cards article { padding: 24px; border-radius: 26px; background: linear-gradient(135deg, rgba(234,246,251,.95), rgba(255,255,255,.96)); border: 1px solid rgba(43,127,157,.12); box-shadow: 0 12px 30px rgba(31,109,132,.07); }
.tnt-guide-cards i { color: var(--gold); margin-left: 6px; }

.tnt-teacher-guide { background: linear-gradient(135deg, rgba(31,109,132,.95), rgba(43,127,157,.92)), url('assets/images/islamic-bg-desktop.png') center / cover no-repeat; color: #fff; }
.tnt-teacher-guide .tnt-section-label { background: rgba(255,255,255,.15); color: #fff; border-color: rgba(255,255,255,.22); }
.tnt-teacher-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 28px; align-items: center; }
.tnt-teacher-layout h2 { color: #fff; }
.tnt-teacher-layout p { color: rgba(255,255,255,.86); margin-bottom: 22px; }
.tnt-teacher-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.tnt-teacher-list article { padding: 24px; border-radius: 26px; background: rgba(255,255,255,.10); border: 1px solid rgba(255,255,255,.18); backdrop-filter: blur(8px); }
.tnt-teacher-list i { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 18px; background: rgba(219,164,38,.20); color: #FFD679; font-size: 23px; margin-bottom: 12px; }
.tnt-teacher-list h3 { color: #fff; }
.tnt-teacher-list p { color: rgba(255,255,255,.78); margin: 0; }

.tnt-carousel-section { background: linear-gradient(180deg, #fff, #F7FBFE); }
.tnt-carousel { position: relative; max-width: 940px; margin: 0 auto; padding: 0 62px; }
.tnt-carousel-track { position: relative; min-height: 230px; }
.tnt-slide { position: absolute; inset: 0; opacity: 0; transform: translateY(12px) scale(.98); pointer-events: none; transition: .34s ease; padding: 34px; border-radius: 32px; border: 1px solid rgba(43,127,157,.14); background: rgba(255,255,255,.96); box-shadow: var(--shadow-soft); text-align: center; }
.tnt-slide.is-active { opacity: 1; transform: none; pointer-events: auto; }
.tnt-slide i { width: 62px; height: 62px; display: grid; place-items: center; margin: 0 auto 18px; border-radius: 22px; color: #fff; background: linear-gradient(135deg, var(--primary), var(--primary-light)); font-size: 24px; }
.tnt-slide p { color: var(--text); font-size: 20px; line-height: 2; margin-bottom: 12px; }
.tnt-slide b { font-family: "Cairo", sans-serif; color: var(--gold); }
.tnt-carousel-btn { position: absolute; top: 50%; transform: translateY(-50%); z-index: 3; width: 48px; height: 48px; border: 0; border-radius: 17px; display: grid; place-items: center; color: #fff; background: var(--primary); box-shadow: var(--shadow-soft); cursor: pointer; }
.tnt-carousel-prev { right: 0; }
.tnt-carousel-next { left: 0; }
.tnt-carousel-dots { display: flex; justify-content: center; gap: 8px; margin-top: 16px; }
.tnt-carousel-dots button { width: 10px; height: 10px; border: 0; border-radius: 99px; background: rgba(43,127,157,.25); cursor: pointer; transition: .2s ease; }
.tnt-carousel-dots button.is-active { width: 28px; background: var(--gold); }

.tnt-faq { background: #fff; }
.tnt-faq-list { max-width: 920px; margin: 0 auto; display: grid; gap: 12px; }
.tnt-faq-item { border: 1px solid rgba(43,127,157,.14); border-radius: 20px; overflow: hidden; background: rgba(255,255,255,.94); box-shadow: 0 10px 24px rgba(31,109,132,.06); }
.tnt-faq-item button { width: 100%; border: 0; background: transparent; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 20px; cursor: pointer; color: var(--primary-dark); font-family: "Cairo", sans-serif; font-size: 17px; font-weight: 900; text-align: right; }
.tnt-faq-item button i { transition: .25s ease; color: var(--gold); flex: 0 0 auto; }
.tnt-faq-item.is-open button i { transform: rotate(180deg); }
.tnt-faq-content { max-height: 0; overflow: hidden; transition: max-height .35s ease; }
.tnt-faq-content p { padding: 0 20px 18px; color: var(--muted); }
.tnt-faq-item.is-open .tnt-faq-content { max-height: 240px; }

.tnt-contact { background: linear-gradient(180deg, #F7FBFE, #FFFFFF); }
.tnt-contact-card {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 22px;
  padding: 34px;
  border-radius: 34px;
  border: 1px solid rgba(43,127,157,.14);
  background: linear-gradient(90deg, rgba(255,255,255,.94), rgba(255,255,255,.78)), url('assets/images/islamic-bg-desktop.png') center / cover no-repeat;
  box-shadow: var(--shadow);
}
.tnt-contact-actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: flex-start; }

.tnt-footer { background: #0E3341; color: rgba(255,255,255,.84); padding: 54px 0 24px; }
.tnt-footer-grid { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 28px; }
.tnt-footer-logo { width: 76px; height: 76px; object-fit: contain; background: #fff; border-radius: 20px; padding: 7px; margin-bottom: 14px; }
.tnt-footer h2 { color: #fff; font-family: "Cairo", sans-serif; font-size: 22px; }
.tnt-footer p { color: rgba(255,255,255,.72); }
.tnt-footer nav { display: grid; gap: 10px; }
.tnt-footer nav a:hover { color: #fff; }
.tnt-socials { display: flex; gap: 10px; margin-top: 16px; }
.tnt-socials a { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 14px; color: #fff; background: rgba(255,255,255,.10); }
.tnt-footer-bottom { margin-top: 32px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.12); display: flex; align-items: center; justify-content: space-between; gap: 15px; flex-wrap: wrap; font-size: 14px; }
.tnt-footer-bottom a { color: #FFD679; }

.tnt-floating-whatsapp { position: fixed; left: 18px; bottom: 22px; width: 62px; height: 62px; border-radius: 50%; display: grid; place-items: center; color: #fff; background: #25D366; font-size: 31px; box-shadow: 0 18px 36px rgba(37,211,102,.34); z-index: 9997; }
.tnt-floating-whatsapp::before { content: ""; position: absolute; inset: -8px; border-radius: inherit; border: 2px solid rgba(37,211,102,.45); animation: tntWhatsPulse 1.65s infinite ease-out; }
.tnt-back-to-top { position: fixed; left: 26px; bottom: 96px; width: 48px; height: 48px; border: 0; border-radius: 18px; color: #fff; background: var(--primary); box-shadow: var(--shadow-soft); opacity: 0; pointer-events: none; transform: translateY(12px); transition: .25s ease; z-index: 9996; }
.tnt-back-to-top.is-visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
[data-reveal] { opacity: 0; transform: translateY(22px); transition: opacity .65s ease, transform .65s ease; }
[data-reveal].is-visible { opacity: 1; transform: none; }

@keyframes tntFadeUp { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@keyframes tntPulse { 0%, 100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.08); opacity: .78; } }
@keyframes tntWhatsPulse { 0% { transform: scale(.78); opacity: .85; } 100% { transform: scale(1.35); opacity: 0; } }

@media (max-width: 1180px) {
  .tnt-navbar { grid-template-columns: 250px minmax(0, 1fr) auto; }
  .tnt-menu a { padding-inline: 8px; font-size: 12px; }
}

@media (max-width: 1100px) {
  .tnt-header-actions { display: none; }
  .tnt-navbar { grid-template-columns: 245px 1fr auto; }
  .tnt-hero-layout { grid-template-columns: 1fr; text-align: center; }
  .tnt-hero-copy { max-width: 820px; margin: 0 auto; order: 1; }
  .tnt-hero-art { order: 2; min-height: 455px; }
  .tnt-hero-actions, .tnt-stat-row, .tnt-about-points { margin-inline: auto; justify-content: center; }
  .tnt-arch-frame { min-height: 430px; }
  .tnt-arch-frame img { width: min(80%, 350px); }
  .tnt-about-layout, .tnt-teacher-layout { grid-template-columns: 1fr; }
  .tnt-service-grid { grid-template-columns: repeat(3, 1fr); }
  .tnt-best-grid { grid-template-columns: 1fr 1fr; }
  .tnt-price-grid { grid-template-columns: repeat(2, 1fr); }
  .tnt-steps { grid-template-columns: repeat(2, 1fr); }
  .tnt-teacher-list { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
  html { scroll-padding-top: 90px; }
  .admin-bar .tnt-header { top: 46px; }
  .admin-bar .tnt-reading-progress { top: 46px; }
  .tnt-navbar { min-height: 76px; grid-template-columns: 1fr auto; }
  .tnt-brand { gap: 9px; }
  .tnt-logo { width: 52px; height: 52px; border-radius: 15px; }
  .tnt-brand-text b { font-size: 13px; }
  .tnt-brand-text small { font-size: 11px; }
  .tnt-mobile-toggle { display: grid; place-items: center; }
  .tnt-menu-wrap { position: fixed; top: 77px; right: 16px; left: 16px; opacity: 0; transform: translateY(-10px); pointer-events: none; transition: .24s ease; }
  .admin-bar .tnt-menu-wrap { top: 123px; }
  .tnt-menu-wrap.is-open { opacity: 1; transform: none; pointer-events: auto; }
  .tnt-menu { display: grid; gap: 7px; padding: 14px; background: rgba(255,255,255,.98); border: 1px solid rgba(43,127,157,.12); border-radius: 24px; box-shadow: var(--shadow); }
  .tnt-menu a { justify-content: flex-start; padding: 11px 14px; font-size: 14px; }
  .tnt-hero { min-height: auto; padding: 44px 0 36px; }
  .tnt-hero-bg { background: linear-gradient(180deg, rgba(255,255,255,.86), rgba(255,255,255,.80)), url('assets/images/islamic-bg-mobile.png') center top / cover no-repeat; }
  .tnt-hero h1 { font-size: clamp(38px, 14vw, 56px); }
  .tnt-hero-text { font-size: 16px; }
  .tnt-hero-actions { display: grid; grid-template-columns: 1fr; width: min(100%, 410px); }
  .tnt-btn { width: 100%; border-radius: 14px; white-space: normal; text-align: center; }
  .tnt-stat-row { grid-template-columns: repeat(3, 1fr); width: 100%; }
  .tnt-stat-row div { min-height: 76px; padding: 10px 6px; }
  .tnt-stat-row b { font-size: 20px; }
  .tnt-stat-row span { font-size: 11px; }
  .tnt-hero-art { min-height: 370px; }
  .tnt-arch-frame { width: min(100%, 390px); min-height: 370px; padding: 22px 20px 0; border-radius: 46% 46% 30px 30px / 26% 26% 30px 30px; }
  .tnt-arch-frame::before { height: 255px; border-width: 5px; }
  .tnt-float { display: none; }
  .tnt-strip-grid { grid-template-columns: repeat(2, 1fr); margin-top: 0; }
  .tnt-section { padding: 62px 0; }
  .tnt-about-visual { min-height: 380px; }
  .tnt-about-visual img { width: min(88%, 330px); }
  .tnt-service-grid { grid-template-columns: repeat(2, 1fr); }
  .tnt-best-grid { grid-template-columns: 1fr; }
  .tnt-price-grid { grid-template-columns: 1fr; }
  .tnt-price-card.is-featured { transform: none; }
  .tnt-guide-cards { grid-template-columns: 1fr; }
  .tnt-contact-card { grid-template-columns: 1fr; text-align: center; padding: 25px 18px; }
  .tnt-contact-actions { justify-content: center; }
  .tnt-footer-grid { grid-template-columns: 1fr; }
  .tnt-carousel { padding: 0 0 58px; }
  .tnt-carousel-track { min-height: 300px; }
  .tnt-carousel-btn { top: auto; bottom: 0; transform: none; }
  .tnt-carousel-prev { right: calc(50% - 58px); }
  .tnt-carousel-next { left: calc(50% - 58px); }
  .tnt-slide { padding: 26px 20px; }
  .tnt-slide p { font-size: 17px; }
}

@media (max-width: 540px) {
  .tnt-container { width: min(100% - 24px, 1200px); }
  .tnt-hero h1 { letter-spacing: -.5px; }
  .tnt-hero-art { min-height: 315px; }
  .tnt-arch-frame { min-height: 315px; }
  .tnt-arch-frame img { width: min(88%, 280px); }
  .tnt-strip-grid, .tnt-service-grid, .tnt-steps { grid-template-columns: 1fr; }
  .tnt-section-head h2, .tnt-about-copy h2, .tnt-teacher-layout h2, .tnt-contact-card h2 { font-size: 28px; }
  .tnt-price-card, .tnt-best-card { padding: 22px; }
  .tnt-footer-bottom { justify-content: center; text-align: center; }
.tnt-floating-whatsapp { left: 14px; bottom: 16px; width: 58px; height: 58px; }
  .tnt-back-to-top { left: 19px; bottom: 88px; }
  .tnt-brand-text b { max-width: 210px; overflow: hidden; text-overflow: ellipsis; }
  .tnt-verse-card { grid-template-columns: 1fr; text-align: center; }
  .tnt-verse-icon { margin: 0 auto; }
}

.tnt-page-main { padding: 70px 0; background: #fff; min-height: 55vh; }
.tnt-page-card { padding: 32px; border-radius: 28px; background: rgba(255,255,255,.94); border: 1px solid rgba(43,127,157,.12); box-shadow: var(--shadow-soft); }
.tnt-page-card h1 { font-family: "Cairo", sans-serif; color: var(--primary-dark); margin-bottom: 16px; }
.tnt-page-content { color: var(--text); }


/* === Tantawy System UI v1 Additions === */
.tantawy-preloader {
  position: fixed;
  inset: 0;
  z-index: 100001;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at top right, rgba(53,148,180,.16), transparent 34%),
    radial-gradient(circle at bottom left, rgba(219,164,38,.13), transparent 36%),
    var(--background);
  transition: opacity .55s ease, visibility .55s ease;
}
.tantawy-preloader.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }
.tantawy-preloader__card {
  width: min(360px, calc(100% - 32px));
  padding: 34px 26px;
  border-radius: 32px;
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(43,127,157,.13);
  box-shadow: 0 26px 70px rgba(31,109,132,.16);
  text-align: center;
  position: relative;
  overflow: hidden;
}
.tantawy-preloader__card::before {
  content: "";
  position: absolute;
  inset: -40%;
  background: conic-gradient(from 180deg, transparent, rgba(219,164,38,.12), transparent, rgba(43,127,157,.12), transparent);
  animation: tantawyRotate 4s linear infinite;
}
.tantawy-preloader__logo-wrap,
.tantawy-preloader__text,
.tantawy-preloader__bar { position: relative; z-index: 2; }
.tantawy-preloader__logo-wrap {
  width: 118px;
  height: 118px;
  margin: 0 auto 18px;
  border-radius: 50%;
  background: var(--white);
  display: grid;
  place-items: center;
  padding: 13px;
  border: 3px solid rgba(219,164,38,.32);
  box-shadow: 0 18px 36px rgba(43,127,157,.18);
  animation: tntPulse 1.6s ease-in-out infinite;
}
.tantawy-preloader__logo { width: 100%; height: 100%; object-fit: contain; }
.tantawy-preloader__text strong {
  display: block;
  font-family: "Cairo", sans-serif;
  font-size: 22px;
  font-weight: 900;
  color: var(--primary-dark);
  margin-bottom: 6px;
}
.tantawy-preloader__text span {
  display: block;
  font-family: "Tajawal", sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: var(--muted);
}
.tantawy-preloader__bar {
  width: 100%;
  height: 7px;
  margin-top: 22px;
  border-radius: 999px;
  background: rgba(43,127,157,.12);
  overflow: hidden;
}
.tantawy-preloader__bar span {
  display: block;
  width: 42%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--primary), var(--gold));
  animation: tantawyLoadingBar 1.25s ease-in-out infinite;
}
@keyframes tantawyLoadingBar { 0% { transform: translateX(150%); } 100% { transform: translateX(-260%); } }
@keyframes tantawyRotate { to { transform: rotate(360deg); } }

.tnt-system-hero .tnt-hero-bg {
  background:
    linear-gradient(90deg, rgba(255,255,255,.88), rgba(255,255,255,.72)),
    url('assets/images/islamic-bg-desktop.png') center / cover no-repeat;
}
.tnt-mission-grid,
.tnt-admin-grid {
  display: grid;
  gap: 18px;
  margin-top: 28px;
}
.tnt-mission-grid { grid-template-columns: repeat(3, 1fr); }
.tnt-admin-grid { grid-template-columns: repeat(4, 1fr); }
.tnt-mission-grid article,
.tnt-admin-grid article {
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(43,127,157,.12);
  border-radius: 28px;
  padding: 25px 22px;
  box-shadow: var(--shadow-soft);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.tnt-mission-grid article:hover,
.tnt-admin-grid article:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow);
  border-color: rgba(219,164,38,.32);
}
.tnt-mission-grid i,
.tnt-admin-grid i {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 20px;
  color: var(--primary);
  background: rgba(43,127,157,.09);
  font-size: 24px;
  margin-bottom: 14px;
}
.tnt-mission-grid h3,
.tnt-admin-grid h3 {
  font-family: "Cairo", sans-serif;
  color: var(--primary-dark);
  font-size: 20px;
  margin-bottom: 8px;
}
.tnt-mission-grid p,
.tnt-admin-grid p { color: var(--muted); margin: 0; font-size: 15px; line-height: 1.9; }
.tnt-admin-panel {
  margin-top: 45px;
  padding: 32px;
  border-radius: 34px;
  background: linear-gradient(135deg, rgba(234,246,251,.86), rgba(255,255,255,.96));
  border: 1px solid rgba(43,127,157,.12);
  box-shadow: var(--shadow-soft);
}
.tnt-section-head.compact { margin-bottom: 20px; }
.tnt-section-head.compact h2 { font-size: clamp(26px, 4vw, 38px); }
.tnt-teacher-guide {
  background:
    radial-gradient(circle at top right, rgba(219,164,38,.13), transparent 28%),
    linear-gradient(135deg, var(--primary-dark), var(--primary));
  color: #fff;
}
.tnt-teacher-guide .tnt-section-label { background: rgba(255,255,255,.12); color: #fff; border-color: rgba(255,255,255,.24); }
.tnt-teacher-guide h2, .tnt-teacher-guide p { color: #fff; }
.tnt-teacher-guide > * { position: relative; z-index: 1; }
.tnt-price-card:hover,
.tnt-best-card:hover { transform: translateY(-8px); }
.tnt-price-card.is-featured:hover { transform: translateY(-12px) scale(1.01); }
.tnt-service-grid article, .tnt-price-card, .tnt-best-card { will-change: transform; }

@media (max-width: 1100px) {
  .tnt-mission-grid { grid-template-columns: 1fr; }
  .tnt-admin-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 900px) {
  .tnt-system-hero .tnt-hero-bg {
    background:
      linear-gradient(180deg, rgba(255,255,255,.90), rgba(255,255,255,.82)),
      url('assets/images/islamic-bg-mobile.png') center top / cover no-repeat;
  }
  .tnt-admin-panel { padding: 22px 16px; border-radius: 26px; }
}
@media (max-width: 620px) {
  .tnt-admin-grid { grid-template-columns: 1fr; }
  .tantawy-preloader__card { padding: 28px 20px; border-radius: 26px; }
  .tantawy-preloader__logo-wrap { width: 96px; height: 96px; }
  .tantawy-preloader__text strong { font-size: 19px; }
  .tantawy-preloader__text span { font-size: 15px; }
}


/* === v1.1 Bug Fixes + CRO Refinements === */
.tnt-main,
.tnt-section,
.tnt-feature-strip,
.tnt-pricing,
.tnt-student-guide,
.tnt-teacher-guide { overflow: hidden; }

.tnt-container,
.tnt-section-head,
.tnt-price-card,
.tnt-steps article,
.tnt-service-grid article,
.tnt-mission-grid article,
.tnt-teacher-list article,
.tnt-strip-grid article {
  min-width: 0;
}

.tnt-strip-grid,
.tnt-mission-grid,
.tnt-service-grid,
.tnt-price-grid,
.tnt-steps,
.tnt-teacher-list {
  align-items: stretch;
}

.tnt-strip-grid article,
.tnt-mission-grid article,
.tnt-service-grid article,
.tnt-price-card,
.tnt-steps article,
.tnt-teacher-list article {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  overflow: hidden;
}

.tnt-strip-grid i,
.tnt-mission-grid i,
.tnt-steps i,
.tnt-teacher-list i,
.tnt-plan-icon {
  flex: 0 0 auto;
}

.tnt-service-grid img {
  flex: 0 0 auto;
  display: block;
}

.tnt-price-card {
  isolation: isolate;
  gap: 0;
}

.tnt-price-card h3,
.tnt-price-card strong,
.tnt-price-card p,
.tnt-price-card ul,
.tnt-price-card a,
.tnt-price-card .tnt-plan-icon,
.tnt-price-card .tnt-ribbon {
  position: relative;
  z-index: 2;
}

.tnt-plan-icon {
  width: 60px;
  height: 60px;
  display: grid;
  place-items: center;
  border-radius: 20px;
  background: rgba(43,127,157,.10);
  color: var(--primary);
  font-size: 24px;
  margin-bottom: 14px;
}

.tnt-price-card ul {
  margin-top: 6px;
}

.tnt-price-card a {
  gap: 8px;
  min-height: 52px;
  box-shadow: 0 12px 26px rgba(31,109,132,.16);
}

.tnt-price-card a i {
  font-size: 18px;
}

.tnt-price-card.is-featured:hover,
.tnt-price-card:hover {
  transform: translateY(-10px);
}

.tnt-founder-quote {
  display: grid;
  gap: 8px;
}

.tnt-founder-signature {
  display: block;
  font-family: "Cairo", sans-serif;
  font-style: normal;
  font-weight: 900;
  color: var(--primary-dark);
  margin-top: 4px;
}

.tnt-student-guide-cta {
  margin: 26px auto 0;
  max-width: 780px;
  display: grid;
  place-items: center;
  gap: 16px;
  padding: 26px;
  text-align: center;
  border-radius: 30px;
  background: linear-gradient(135deg, rgba(234,246,251,.96), rgba(255,255,255,.98));
  border: 1px solid rgba(43,127,157,.14);
  box-shadow: var(--shadow-soft);
}

.tnt-student-guide-cta p {
  margin: 0;
  color: var(--muted);
  font-weight: 700;
}

.tnt-student-guide-cta .tnt-btn {
  width: auto;
  min-height: 54px;
  padding-inline: 24px;
}
.tnt-floating-whatsapp {
  left: 18px;
  bottom: 22px;
}

.tnt-back-to-top {
  left: 25px;
  bottom: 96px;
}

/* Safety: these sections were intentionally removed; keep them hidden if old cache injects them. */
.tnt-verse-section,
.tnt-carousel-section {
  display: none !important;
}

/* Rights & Duties standalone page */
.tnt-rights-page {
  min-height: 100vh;
  background:
    radial-gradient(circle at 15% 15%, rgba(219,164,38,.12), transparent 28%),
    radial-gradient(circle at 84% 4%, rgba(43,127,157,.14), transparent 30%),
    var(--background);
}

.tnt-rights-hero {
  padding: 120px 0 52px;
  text-align: center;
  background:
    linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,255,255,.74)),
    url('assets/images/islamic-bg-desktop.png') center / cover no-repeat;
}

.tnt-rights-hero h1 {
  font-family: "Cairo", sans-serif;
  color: var(--primary-dark);
  font-size: clamp(32px, 5vw, 58px);
  line-height: 1.25;
  margin: 14px 0;
}

.tnt-rights-hero p {
  max-width: 760px;
  margin: 0 auto;
  color: var(--muted);
  font-size: 18px;
}

.tnt-rights-content {
  padding: 58px 0 80px;
}

.tnt-rights-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px;
  align-items: start;
}

.tnt-rights-card {
  padding: clamp(24px, 3vw, 34px);
  border-radius: 32px;
  background: rgba(255,255,255,.95);
  border: 1px solid rgba(43,127,157,.13);
  box-shadow: var(--shadow-soft);
}

.tnt-rights-card h2 {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: "Cairo", sans-serif;
  color: var(--primary-dark);
  font-size: clamp(24px, 3vw, 34px);
  margin-bottom: 18px;
}

.tnt-rights-card h2 i {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  background: rgba(219,164,38,.14);
  color: var(--gold);
}

.tnt-rights-list {
  display: grid;
  gap: 12px;
}

.tnt-rights-list li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
  align-items: start;
  padding: 14px 15px;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(234,246,251,.72), rgba(255,255,255,.95));
  color: var(--text);
  font-weight: 700;
}

.tnt-rights-list li i {
  color: var(--gold);
  margin-top: 7px;
}

.tnt-rights-note {
  margin-top: 24px;
  padding: 22px;
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(255,246,222,.9), rgba(255,255,255,.95));
  border: 1px solid rgba(219,164,38,.22);
  color: #735719;
  font-weight: 800;
}

.tnt-rights-actions {
  margin-top: 28px;
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}

@media (max-width: 1100px) {
  .tnt-service-grid { grid-template-columns: repeat(2, 1fr); }
  .tnt-mission-grid { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
  .tnt-price-card.is-featured,
  .tnt-price-card.is-featured:hover,
  .tnt-price-card:hover { transform: none; }
.tnt-floating-whatsapp { left: 14px; bottom: 15px; }
  .tnt-back-to-top { left: 19px; bottom: 86px; }
  .tnt-student-guide-cta .tnt-btn { width: 100%; }
  .tnt-rights-grid { grid-template-columns: 1fr; }
}

@media (max-width: 540px) {
  .tnt-strip-grid,
  .tnt-service-grid,
  .tnt-price-grid,
  .tnt-steps,
  .tnt-teacher-list { grid-template-columns: 1fr !important; }
  .tnt-service-grid article,
  .tnt-steps article,
  .tnt-price-card,
  .tnt-teacher-list article { padding: 22px 18px; }
.tnt-rights-hero { padding-top: 94px; background-image: linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,255,255,.78)), url('assets/images/islamic-bg-mobile.png'); }
  .tnt-rights-card { border-radius: 24px; }
}


/* === v1.2 Premium Pricing Redesign + Mobile-First Polish === */
:root {
  --pricing-card-radius: 15px;
  --pricing-card-shadow: 0 18px 48px rgba(31, 109, 132, .10);
  --pricing-card-shadow-hover: 0 28px 78px rgba(31, 109, 132, .18);
}

.tnt-pricing {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 5%, rgba(219,164,38,.13), transparent 27%),
    radial-gradient(circle at 93% 12%, rgba(43,127,157,.13), transparent 30%),
    linear-gradient(180deg, #F8FCFE 0%, #FFFFFF 42%, #F5F7FB 100%);
}

.tnt-pricing::before,
.tnt-pricing::after {
  content: "";
  position: absolute;
  width: 290px;
  height: 290px;
  border-radius: 999px;
  pointer-events: none;
  opacity: .45;
  filter: blur(1px);
}
.tnt-pricing::before { right: -120px; top: 120px; background: rgba(43,127,157,.08); }
.tnt-pricing::after { left: -130px; bottom: 110px; background: rgba(219,164,38,.10); }
.tnt-pricing > .tnt-container { position: relative; z-index: 1; }

.tnt-pricing .tnt-section-head {
  max-width: 820px;
  margin-bottom: 34px;
}

.tnt-pricing .tnt-section-head h2 {
  letter-spacing: -.5px;
}

.tnt-tabs {
  width: min(850px, 100%);
  margin-inline: auto;
  margin-bottom: 34px;
  padding: 8px;
  border-radius: 999px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(43,127,157,.12);
  box-shadow: 0 14px 40px rgba(31,109,132,.08);
  backdrop-filter: blur(12px);
}

.tnt-tab {
  flex: 1 1 170px;
  min-height: 48px;
  border-radius: 999px;
  box-shadow: none;
  border-color: transparent;
  background: transparent;
}

.tnt-tab:hover,
.tnt-tab.is-active {
  transform: translateY(-1px);
  box-shadow: 0 12px 28px rgba(31,109,132,.16);
}

.tnt-tab-panel.is-active {
  animation: tntFadeUp .42s ease both;
}

.tnt-price-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2vw, 26px) !important;
  align-items: stretch !important;
}

.tnt-price-card {
  position: relative;
  isolation: isolate;
  display: flex !important;
  flex-direction: column !important;
  min-width: 0;
  min-height: 430px;
  overflow: hidden;
  padding: 30px 26px 24px !important;
  border-radius: var(--pricing-card-radius) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,.96) 100%) !important;
  border: 1px solid rgba(43,127,157,.10) !important;
  box-shadow: var(--pricing-card-shadow) !important;
  transition:
    transform .28s ease,
    box-shadow .28s ease,
    border-color .28s ease,
    background .28s ease !important;
}

.tnt-price-card::before {
  content: "";
  position: absolute;
  inset: auto -42px -54px auto;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: rgba(43,127,157,.065);
  z-index: -1;
  pointer-events: none;
}

.tnt-price-card::after {
  content: "";
  position: absolute;
  top: -56px;
  left: -60px;
  width: 158px;
  height: 158px;
  border-radius: 50%;
  background: rgba(219,164,38,.075);
  z-index: -1;
  pointer-events: none;
}

.tnt-price-card:hover {
  transform: translateY(-12px) !important;
  box-shadow: var(--pricing-card-shadow-hover) !important;
  border-color: rgba(43,127,157,.22) !important;
}

.tnt-price-card.is-featured {
  z-index: 2;
  transform: scale(1.035) !important;
  border: 1.5px solid rgba(219,164,38,.55) !important;
  background:
    linear-gradient(#fff, #fff) padding-box,
    linear-gradient(145deg, rgba(219,164,38,.85), rgba(43,127,157,.38)) border-box !important;
  box-shadow: 0 28px 82px rgba(219,164,38,.18), 0 18px 46px rgba(31,109,132,.12) !important;
}

.tnt-price-card.is-featured:hover {
  transform: translateY(-14px) scale(1.045) !important;
  box-shadow: 0 34px 98px rgba(219,164,38,.23), 0 22px 58px rgba(31,109,132,.16) !important;
}

.tnt-ribbon {
  position: absolute !important;
  top: 15px !important;
  left: 15px !important;
  z-index: 4 !important;
  min-width: auto !important;
  height: auto !important;
  padding: 7px 14px !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--gold), #F3C96B) !important;
  box-shadow: 0 12px 24px rgba(219,164,38,.30) !important;
  font-family: "Cairo", sans-serif !important;
  font-weight: 900 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

.tnt-plan-icon {
  width: 66px !important;
  height: 66px !important;
  border-radius: 20px !important;
  margin-bottom: 18px !important;
  color: var(--primary) !important;
  background: linear-gradient(135deg, rgba(43,127,157,.12), rgba(43,127,157,.05)) !important;
  box-shadow: inset 0 0 0 1px rgba(43,127,157,.08) !important;
  font-size: 27px !important;
}

.tnt-price-card.is-featured .tnt-plan-icon {
  color: #fff !important;
  background: linear-gradient(135deg, var(--primary), var(--primary-dark)) !important;
}

.tnt-price-card h3 {
  font-family: "Cairo", sans-serif !important;
  color: var(--primary-dark) !important;
  font-size: clamp(24px, 2.4vw, 30px) !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  margin: 0 !important;
}

.tnt-price-card strong {
  display: flex !important;
  align-items: baseline !important;
  gap: 4px !important;
  color: var(--primary) !important;
  font-family: "Cairo", sans-serif !important;
  font-size: clamp(42px, 4vw, 56px) !important;
  font-weight: 900 !important;
  line-height: 1.05 !important;
  margin: 12px 0 6px !important;
  letter-spacing: -1px !important;
}

.tnt-price-card.is-featured strong { color: var(--gold) !important; }

.tnt-price-card p {
  margin: 0 0 18px !important;
  color: #7B8898 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
}

.tnt-price-card ul {
  display: grid !important;
  gap: 10px !important;
  flex: 1 1 auto !important;
  margin: 8px 0 22px !important;
  padding: 0 !important;
}

.tnt-price-card li {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin: 0 !important;
  color: var(--text) !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  font-weight: 700 !important;
}

.tnt-price-card li i {
  width: 22px !important;
  height: 22px !important;
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 22px !important;
  margin-top: 4px !important;
  border-radius: 50% !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--gold), #F0C56A) !important;
  font-size: 11px !important;
}

.tnt-price-card a {
  width: 100% !important;
  min-height: 56px !important;
  margin-top: auto !important;
  border-radius: 15px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--primary), var(--primary-dark)) !important;
  box-shadow: 0 14px 28px rgba(31,109,132,.20) !important;
  font-family: "Cairo", sans-serif !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease !important;
}

.tnt-price-card a:hover {
  transform: translateY(-2px) !important;
  filter: saturate(1.07) !important;
  box-shadow: 0 18px 36px rgba(31,109,132,.26) !important;
}

.tnt-price-card.is-featured a {
  color: #fff !important;
  background: linear-gradient(135deg, var(--gold), #C99012) !important;
  box-shadow: 0 15px 30px rgba(219,164,38,.30) !important;
}

/* Mobile-first typography and pricing stacking */
@media (max-width: 980px) {
  .tnt-price-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .tnt-price-card.is-featured,
  .tnt-price-card.is-featured:hover {
    transform: none !important;
  }
}

@media (max-width: 760px) {
  html { scroll-padding-top: 82px; }
  .tnt-container { width: min(100% - 28px, 1200px); }
  .tnt-section { padding-block: 58px; }
  .tnt-section-head { margin-bottom: 28px; }
  .tnt-section-head h2,
  .tnt-about-copy h2,
  .tnt-teacher-layout h2,
  .tnt-contact-card h2 {
    font-size: clamp(25px, 8vw, 34px) !important;
    line-height: 1.35 !important;
  }
  .tnt-hero-copy h1 {
    font-size: clamp(36px, 11vw, 48px) !important;
    line-height: 1.14 !important;
  }
  .tnt-hero-text,
  .tnt-section-head p,
  .tnt-about-copy p,
  .tnt-teacher-layout p,
  .tnt-contact-card p,
  .tnt-rights-hero p,
  .tnt-rights-list li {
    font-size: 16px !important;
  }
  .tnt-tabs {
    border-radius: 22px;
    padding: 7px;
    gap: 7px;
  }
  .tnt-tab {
    flex-basis: 100%;
    width: 100%;
  }
  .tnt-price-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
  .tnt-price-card {
    min-height: auto !important;
    padding: 26px 22px 22px !important;
    margin-inline: 0 !important;
  }
  .tnt-price-card:hover,
  .tnt-price-card.is-featured,
  .tnt-price-card.is-featured:hover {
    transform: none !important;
  }
  .tnt-price-card strong { font-size: 42px !important; }
  .tnt-price-card a { min-height: 58px !important; font-size: 16px !important; }
}

@media (max-width: 420px) {
  .tnt-container { width: min(100% - 22px, 1200px); }
  .tnt-price-card { padding: 24px 18px 20px !important; }
  .tnt-plan-icon { width: 58px !important; height: 58px !important; font-size: 24px !important; }
  .tnt-price-card h3 { font-size: 24px !important; }
  .tnt-price-card strong { font-size: 38px !important; }
  .tnt-ribbon { top: 12px !important; left: 12px !important; font-size: 11px !important; }
}

/* Rights page readability polish */
.tnt-rights-page .tnt-header {
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(14px);
}

.tnt-rights-page .tnt-container {
  width: min(100% - 34px, 1100px);
}

.tnt-rights-hero {
  padding: 132px 0 58px !important;
}

.tnt-rights-hero .tnt-container,
.tnt-rights-content > .tnt-container {
  max-width: 800px !important;
}

.tnt-rights-hero h1 {
  font-size: clamp(31px, 5vw, 48px) !important;
  line-height: 1.35 !important;
  letter-spacing: -.4px;
}

.tnt-rights-content {
  padding: 60px 0 86px !important;
}

.tnt-rights-grid {
  grid-template-columns: 1fr !important;
  gap: 22px !important;
}

.tnt-rights-card {
  border-radius: 26px !important;
  padding: clamp(24px, 4vw, 36px) !important;
  background: rgba(255,255,255,.97) !important;
  box-shadow: 0 18px 48px rgba(31,109,132,.10) !important;
}

.tnt-rights-card h2 {
  font-size: clamp(24px, 4vw, 32px) !important;
  line-height: 1.35 !important;
}

.tnt-rights-list {
  gap: 11px !important;
}

.tnt-rights-list li {
  border-radius: 16px !important;
  padding: 14px 15px !important;
  line-height: 1.9 !important;
}

.tnt-rights-note {
  line-height: 1.9 !important;
}

@media (max-width: 620px) {
  .tnt-rights-page .tnt-container { width: min(100% - 24px, 800px); }
  .tnt-rights-hero { padding-top: 104px !important; padding-bottom: 42px !important; }
  .tnt-rights-content { padding: 42px 0 72px !important; }
  .tnt-rights-card h2 { flex-direction: column; align-items: flex-start; gap: 8px; }
  .tnt-rights-actions .tnt-btn { width: 100%; }
}


/* ===== Teacher Guide Update v1.3.0 ===== */
.tnt-teacher-home-cta {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 20%, rgba(219,164,38,.18), transparent 32%),
    linear-gradient(135deg, rgba(31,109,132,.96), rgba(43,127,157,.92)),
    url('assets/images/islamic-bg-desktop.png') center / cover no-repeat;
}
.tnt-teacher-cta-shell {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: 26px;
  align-items: center;
}
.tnt-teacher-cta-copy h2 { color: #fff; }
.tnt-teacher-cta-copy p { color: rgba(255,255,255,.86); margin-bottom: 22px; max-width: 640px; }
.tnt-teacher-cta-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.tnt-teacher-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.tnt-teacher-summary-card {
  min-width: 0;
  padding: 24px 20px;
  border-radius: 26px;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.20);
  color: #fff;
  backdrop-filter: blur(10px);
  box-shadow: 0 18px 44px rgba(0,0,0,.08);
  transition: transform .28s ease, background .28s ease, border-color .28s ease;
}
.tnt-teacher-summary-card:hover { transform: translateY(-6px); background: rgba(255,255,255,.18); border-color: rgba(255,255,255,.34); }
.tnt-teacher-summary-card i {
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  background: rgba(219,164,38,.22);
  color: #FFD77A;
  font-size: 24px;
  margin-bottom: 13px;
}
.tnt-teacher-summary-card h3 { color: #fff; font-family: "Cairo", sans-serif; font-size: 18px; margin-bottom: 6px; }
.tnt-teacher-summary-card p { color: rgba(255,255,255,.80); font-size: 15px; line-height: 1.9; margin: 0; }
.tnt-menu a[aria-current="page"] { color: var(--primary-dark); background: rgba(219,164,38,.16); }
.tnt-readable-container { width: min(800px, calc(100% - 34px)); margin-inline: auto; }
.tnt-teacher-page .tnt-navbar { grid-template-columns: 280px minmax(0, 1fr) auto; }
.tnt-teacher-hero {
  position: relative;
  background:
    radial-gradient(circle at 16% 12%, rgba(219,164,38,.16), transparent 32%),
    radial-gradient(circle at 82% 28%, rgba(53,148,180,.14), transparent 34%),
    linear-gradient(180deg, #ffffff 0%, #f5f7fb 100%);
}
.tnt-teacher-hero .tnt-readable-container { text-align: center; }
.tnt-teacher-content { padding-top: 64px; }
.tnt-guide-intro,
.tnt-guide-block,
.tnt-teacher-agreement-card {
  background: #fff;
  border: 1px solid rgba(43,127,157,.12);
  border-radius: 28px;
  box-shadow: 0 20px 58px rgba(31,109,132,.10);
}
.tnt-guide-intro {
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 18px;
  align-items: start;
  padding: 28px;
  margin-bottom: 22px;
}
.tnt-guide-intro > i {
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(43,127,157,.12), rgba(219,164,38,.16));
  color: var(--primary-dark);
  font-size: 31px;
}
.tnt-guide-intro h2,
.tnt-guide-block h2 {
  font-family: "Cairo", sans-serif;
  color: var(--primary-dark);
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1.35;
  margin-bottom: 10px;
}
.tnt-guide-intro p,
.tnt-guide-block p { color: var(--text); font-size: 17px; line-height: 2; margin: 0; }
.tnt-guide-block { padding: 30px; margin-bottom: 22px; }
.tnt-guide-block h2 { display: flex; gap: 10px; align-items: center; font-size: clamp(22px, 2.6vw, 30px); }
.tnt-guide-block h2 i { color: var(--gold); }
.tnt-guide-block .tnt-rights-list li { align-items: flex-start; }
.tnt-guide-note { background: linear-gradient(135deg, rgba(43,127,157,.08), rgba(219,164,38,.10)), #fff; }
.tnt-teacher-agreement-card {
  padding: 28px;
  margin: 30px 0 10px;
  border-color: rgba(219,164,38,.30);
  background:
    linear-gradient(135deg, rgba(255,246,222,.72), rgba(255,255,255,.96));
}
.tnt-teacher-check {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 13px;
  align-items: start;
  cursor: pointer;
  margin-bottom: 20px;
}
.tnt-teacher-check input { position: absolute; opacity: 0; pointer-events: none; }
.tnt-check-box {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: #fff;
  border: 2px solid rgba(43,127,157,.26);
  color: transparent;
  box-shadow: inset 0 0 0 3px rgba(255,255,255,.9);
  transition: .22s ease;
}
.tnt-teacher-check input:checked + .tnt-check-box {
  background: linear-gradient(135deg, var(--primary), var(--primary-dark));
  border-color: var(--primary);
  color: #fff;
}
.tnt-teacher-check strong {
  color: var(--primary-dark);
  font-family: "Cairo", sans-serif;
  font-size: 17px;
  line-height: 1.9;
}
.tnt-btn-telegram {
  width: 100%;
  color: #fff;
  background: linear-gradient(135deg, #229ED9, #1877AE);
  box-shadow: 0 18px 38px rgba(34,158,217,.24);
  font-size: 17px;
}
.tnt-btn-telegram.is-disabled,
.tnt-btn-telegram[aria-disabled="true"] {
  opacity: .52;
  filter: grayscale(.25);
  cursor: not-allowed;
  pointer-events: none;
  transform: none !important;
  box-shadow: none;
}
.tnt-agreement-help { color: var(--muted); margin: 12px 0 0; text-align: center; font-size: 14px; }
.tnt-scroll-reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
.tnt-scroll-reveal.is-visible { opacity: 1; transform: none; }
@media (max-width: 980px) {
  .tnt-teacher-cta-shell { grid-template-columns: 1fr; }
  .tnt-teacher-summary-grid { grid-template-columns: 1fr; }
  .tnt-teacher-cta-actions .tnt-btn { width: 100%; }
  .tnt-teacher-page .tnt-navbar { grid-template-columns: 1fr auto; }
}
@media (max-width: 620px) {
  .tnt-readable-container { width: min(100% - 28px, 800px); }
  .tnt-guide-intro { grid-template-columns: 1fr; padding: 24px 20px; }
  .tnt-guide-intro > i { width: 62px; height: 62px; font-size: 27px; }
  .tnt-guide-block, .tnt-teacher-agreement-card { padding: 23px 18px; border-radius: 22px; }
  .tnt-teacher-check { grid-template-columns: 30px 1fr; gap: 11px; }
  .tnt-check-box { width: 30px; height: 30px; }
  .tnt-teacher-check strong { font-size: 16px; line-height: 1.85; }
  .tnt-teacher-content { padding-top: 42px; }
}


/* === Tantawy System UI v1.4.0 Artistic Polish === */
:root {
  --inner-card-shadow: 0 28px 80px rgba(18, 38, 58, .13);
  --islamic-pattern:
    linear-gradient(30deg, rgba(31,109,132,.045) 12%, transparent 12.5%, transparent 87%, rgba(31,109,132,.045) 87.5%, rgba(31,109,132,.045)),
    linear-gradient(150deg, rgba(31,109,132,.045) 12%, transparent 12.5%, transparent 87%, rgba(31,109,132,.045) 87.5%, rgba(31,109,132,.045)),
    linear-gradient(30deg, rgba(219,164,38,.040) 12%, transparent 12.5%, transparent 87%, rgba(219,164,38,.040) 87.5%, rgba(219,164,38,.040)),
    linear-gradient(150deg, rgba(219,164,38,.040) 12%, transparent 12.5%, transparent 87%, rgba(219,164,38,.040) 87.5%, rgba(219,164,38,.040));
}

html { scroll-behavior: smooth; }
body {
  background-color: var(--background) !important;
  background-image:
    radial-gradient(circle at 12% 18%, rgba(43,127,157,.065), transparent 25%),
    radial-gradient(circle at 86% 14%, rgba(219,164,38,.06), transparent 24%),
    var(--islamic-pattern) !important;
  background-size: auto, auto, 88px 50px, 88px 50px, 88px 50px, 88px 50px !important;
  background-position: center, center, 0 0, 0 0, 44px 25px, 44px 25px !important;
}
body::before {
  background: none !important;
  opacity: 0 !important;
}

.tnt-section,
.tnt-feature-strip,
.tnt-best-packages,
.tnt-pricing,
.tnt-student-guide,
.tnt-faq,
.tnt-contact,
.tnt-carousel-section {
  background-color: rgba(255,255,255,.72) !important;
  background-image: var(--islamic-pattern) !important;
  background-size: 92px 52px !important;
  background-position: center !important;
}
.tnt-pricing,
.tnt-contact,
.tnt-best-packages {
  background-color: rgba(245,247,251,.82) !important;
}
.tnt-hero-bg {
  background:
    linear-gradient(90deg, rgba(255,255,255,.94) 0%, rgba(255,255,255,.80) 48%, rgba(255,255,255,.90) 100%),
    var(--islamic-pattern),
    linear-gradient(135deg, #F7FBFE 0%, #E9F6FB 45%, #FFFDF7 100%) !important;
  background-size: auto, 96px 56px, auto !important;
}

/* Clean image containers: no arches, masks, or pseudo wrappers that crop the illustrations */
.tnt-arch-frame,
.tnt-about-visual {
  width: min(100%, 520px) !important;
  min-height: auto !important;
  aspect-ratio: 1 / 1 !important;
  display: block !important;
  padding: 12px !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid rgba(43,127,157,.13) !important;
  box-shadow: 0 24px 60px rgba(31,109,132,.15) !important;
}
.tnt-arch-frame::before,
.tnt-arch-frame::after,
.tnt-about-visual::before,
.tnt-about-visual::after {
  display: none !important;
  content: none !important;
}
.tnt-arch-frame img,
.tnt-about-visual img {
  position: static !important;
  z-index: auto !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 14px !important;
  filter: none !important;
  box-shadow: none !important;
}
.tnt-hero-art {
  min-height: auto !important;
  align-items: center !important;
}
.tnt-about-visual {
  margin-inline: auto !important;
}

/* Luxurious inner pages */
.tnt-rights-page {
  background-color: var(--background) !important;
  background-image:
    radial-gradient(circle at 14% 10%, rgba(43,127,157,.08), transparent 26%),
    radial-gradient(circle at 86% 14%, rgba(219,164,38,.08), transparent 24%),
    var(--islamic-pattern) !important;
  background-size: auto, auto, 90px 52px, 90px 52px, 90px 52px, 90px 52px !important;
}
.tnt-rights-page .tnt-rights-hero,
.tnt-rights-page .tnt-teacher-hero {
  position: relative !important;
  overflow: hidden !important;
  text-align: center !important;
  padding: clamp(118px, 13vw, 160px) 0 clamp(76px, 8vw, 106px) !important;
  color: #fff !important;
  background:
    linear-gradient(135deg, rgba(31,109,132,.98), rgba(43,127,157,.92)),
    var(--islamic-pattern) !important;
  background-size: auto, 82px 48px !important;
}
.tnt-rights-page .tnt-rights-hero::before,
.tnt-rights-page .tnt-teacher-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 26%, rgba(219,164,38,.22), transparent 22%),
    radial-gradient(circle at 82% 22%, rgba(255,255,255,.10), transparent 24%),
    linear-gradient(30deg, rgba(255,255,255,.045) 12%, transparent 12.5%, transparent 87%, rgba(255,255,255,.045) 87.5%);
  background-size: auto, auto, 78px 46px;
  opacity: .98;
}
.tnt-rights-page .tnt-rights-hero .tnt-container,
.tnt-rights-page .tnt-teacher-hero .tnt-container {
  position: relative;
  z-index: 1;
  max-width: 900px !important;
}
.tnt-rights-page .tnt-section-label {
  background: rgba(255,255,255,.14) !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.25) !important;
}
.tnt-rights-page .tnt-rights-hero h1,
.tnt-rights-page .tnt-teacher-hero h1 {
  margin: 16px auto 12px !important;
  max-width: 840px !important;
  color: var(--gold) !important;
  font-family: "Cairo", sans-serif !important;
  font-weight: 900 !important;
  font-size: clamp(31px, 5.2vw, 56px) !important;
  line-height: 1.28 !important;
}
.tnt-rights-page .tnt-rights-hero p,
.tnt-rights-page .tnt-teacher-hero p {
  max-width: 760px !important;
  margin: 0 auto !important;
  color: rgba(255,255,255,.88) !important;
  font-size: clamp(16px, 2vw, 20px) !important;
  line-height: 1.95 !important;
}
.tnt-rights-page .tnt-rights-content,
.tnt-rights-page .tnt-teacher-content {
  padding: 0 0 clamp(70px, 9vw, 110px) !important;
  margin-top: -54px !important;
  background: transparent !important;
}
.tnt-rights-content > .tnt-container,
.tnt-teacher-content > .tnt-readable-container {
  position: relative !important;
  z-index: 3 !important;
  max-width: 900px !important;
  padding: clamp(24px, 4vw, 46px) !important;
  background: rgba(255,255,255,.96) !important;
  border: 1px solid rgba(43,127,157,.12) !important;
  border-radius: 15px !important;
  box-shadow: var(--inner-card-shadow) !important;
}
.tnt-rights-grid {
  grid-template-columns: 1fr !important;
  gap: 22px !important;
}
.tnt-rights-card,
.tnt-guide-block,
.tnt-guide-intro,
.tnt-teacher-agreement-card,
.tnt-rights-note {
  border-radius: 18px !important;
  border: 1px solid rgba(43,127,157,.12) !important;
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(247,251,254,.96)) !important;
  box-shadow: 0 14px 34px rgba(31,109,132,.075) !important;
}
.tnt-rights-card h2,
.tnt-guide-block h2,
.tnt-guide-intro h2,
.tnt-teacher-agreement-card h2 {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  color: var(--primary-dark) !important;
  font-family: "Cairo", sans-serif !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
}
.tnt-rights-card h2 i,
.tnt-guide-block h2 i,
.tnt-guide-intro > i,
.tnt-rights-note i {
  flex: 0 0 auto !important;
  width: 42px !important;
  height: 42px !important;
  display: inline-grid !important;
  place-items: center !important;
  border-radius: 14px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--gold), #F2C766) !important;
  box-shadow: 0 10px 22px rgba(219,164,38,.18) !important;
}
.tnt-rights-list li {
  align-items: flex-start !important;
  gap: 12px !important;
  padding: 13px 14px !important;
  border-radius: 14px !important;
  background: rgba(43,127,157,.055) !important;
}
.tnt-rights-list li i {
  margin-top: 5px !important;
  color: var(--gold) !important;
}

@media (max-width: 900px) {
  .tnt-arch-frame,
  .tnt-about-visual {
    width: min(100%, 390px) !important;
    aspect-ratio: 1 / 1 !important;
    padding: 10px !important;
  }
  .tnt-rights-page .tnt-rights-hero,
  .tnt-rights-page .tnt-teacher-hero {
    padding: 116px 0 78px !important;
  }
  .tnt-rights-content > .tnt-container,
  .tnt-teacher-content > .tnt-readable-container {
    max-width: calc(100% - 24px) !important;
    padding: 24px 16px !important;
  }
}

@media (max-width: 540px) {
  .tnt-rights-page .tnt-rights-hero h1,
  .tnt-rights-page .tnt-teacher-hero h1 {
    font-size: 30px !important;
  }
  .tnt-rights-card h2,
  .tnt-guide-block h2,
  .tnt-guide-intro h2 {
    font-size: 22px !important;
  }
}

/* Final image ratio correction: illustrations were generated in portrait ratio, so this prevents cropping while keeping object-fit: cover. */
.tnt-arch-frame,
.tnt-about-visual { aspect-ratio: 4 / 5 !important; }
@media (max-width: 900px) {
  .tnt-arch-frame,
  .tnt-about-visual { aspect-ratio: 4 / 5 !important; }
}


/* === Tantawy System UI v1.5.0 Premium UI Fixes === */
:root {
  --premium-page-bg: #F9FAFC;
  --premium-card-shadow: 0 18px 46px rgba(18, 38, 58, .09);
  --premium-card-shadow-hover: 0 28px 70px rgba(18, 38, 58, .15);
}

/* Background strategy: remove generated CSS pattern completely and keep a clean off-white fallback. */
html { scroll-behavior: smooth; }
body,
body.islamic-bg,
body.tnt-rights-page {
  background-color: var(--premium-page-bg) !important;
  background-image: none !important;
  background-size: auto !important;
  background-position: center !important;
}
body::before { display: none !important; content: none !important; }
body.islamic-bg::after,
body.tnt-rights-page::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -5;
  pointer-events: none;
  background-image: url('assets/img/islamic-bg.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: .05;
}
.tnt-section,
.tnt-feature-strip,
.tnt-best-packages,
.tnt-pricing,
.tnt-student-guide,
.tnt-faq,
.tnt-contact,
.tnt-carousel-section,
.tnt-rights-page .tnt-rights-content,
.tnt-rights-page .tnt-teacher-content {
  background-image: none !important;
}
.tnt-section:nth-of-type(odd),
.tnt-feature-strip,
.tnt-best-packages,
.tnt-pricing,
.tnt-student-guide,
.tnt-faq,
.tnt-contact {
  background-color: rgba(255,255,255,.74) !important;
}
.tnt-hero-bg,
.tnt-system-hero .tnt-hero-bg {
  background:
    radial-gradient(circle at 14% 18%, rgba(219,164,38,.11), transparent 27%),
    radial-gradient(circle at 85% 16%, rgba(43,127,157,.12), transparent 28%),
    linear-gradient(135deg, #F9FCFE 0%, #EAF6FB 46%, #FFFCF4 100%) !important;
  background-size: auto !important;
}
.tnt-hero-bg::before { opacity: .55 !important; }
.tnt-hero-bg::after { background: linear-gradient(180deg, rgba(255,255,255,0), rgba(249,250,252,.92)) !important; height: 100px !important; }

/* Premium hero spacing, typography, and button consistency. */
.tnt-hero { padding-block: clamp(46px, 6vw, 76px) 52px !important; }
.tnt-hero-layout { gap: clamp(26px, 5vw, 76px) !important; }
.tnt-hero-copy { max-width: 690px !important; }
.tnt-hero h1,
.tnt-hero-copy h1 {
  font-size: clamp(40px, 5.9vw, 82px) !important;
  line-height: 1.12 !important;
  letter-spacing: -1.1px !important;
  margin: 18px 0 16px !important;
}
.tnt-hero-text {
  max-width: 650px !important;
  font-size: clamp(16px, 1.45vw, 20px) !important;
  line-height: 2 !important;
  color: #3E5167 !important;
  background: transparent !important;
}
.tnt-hero-actions,
.tnt-teacher-cta-actions,
.tnt-contact-actions,
.tnt-rights-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  gap: 14px !important;
}
.tnt-hero-actions .tnt-btn,
.tnt-teacher-cta-actions .tnt-btn,
.tnt-contact-actions .tnt-btn,
.tnt-rights-actions .tnt-btn {
  min-height: 62px !important;
  height: 62px !important;
  border-radius: 999px !important;
  padding: 0 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  line-height: 1.2 !important;
  box-shadow: 0 16px 34px rgba(31,109,132,.12) !important;
}
.tnt-hero-actions .tnt-btn:hover,
.tnt-teacher-cta-actions .tnt-btn:hover,
.tnt-contact-actions .tnt-btn:hover,
.tnt-rights-actions .tnt-btn:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 24px 52px rgba(31,109,132,.18) !important;
}
.tnt-btn-gold:hover { box-shadow: 0 24px 52px rgba(219,164,38,.27) !important; }
.tnt-btn-blue:hover { box-shadow: 0 24px 52px rgba(43,127,157,.28) !important; }

/* Premium image containers: clean, no masks, no crop bugs. */
.tnt-arch-frame,
.tnt-about-visual {
  border-radius: 24px !important;
  background: #fff !important;
  padding: 12px !important;
  border: 1px solid rgba(43,127,157,.11) !important;
  box-shadow: 0 24px 64px rgba(31,109,132,.14) !important;
  overflow: hidden !important;
}
.tnt-arch-frame img,
.tnt-about-visual img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 18px !important;
}

/* Fix flying icons/cards and remove any ugly text background inside cards. */
.tnt-service-grid,
.tnt-best-grid,
.tnt-price-grid,
.tnt-steps,
.tnt-admin-grid,
.tnt-teacher-summary-grid,
.tnt-strip-grid {
  align-items: stretch !important;
}
.tnt-service-grid article,
.tnt-best-card,
.tnt-price-card,
.tnt-steps article,
.tnt-admin-grid article,
.tnt-strip-grid article,
.tnt-rights-card,
.tnt-guide-block,
.tnt-guide-intro,
.tnt-teacher-agreement-card,
.tnt-rights-note {
  background: #ffffff !important;
  color: var(--primary-dark) !important;
  border: 1px solid rgba(43,127,157,.10) !important;
  box-shadow: var(--premium-card-shadow) !important;
}
.tnt-service-grid article *,
.tnt-best-card p,
.tnt-best-card span:not(.tnt-mini-badge),
.tnt-price-card p,
.tnt-price-card span:not(.tnt-ribbon),
.tnt-price-card li,
.tnt-price-card strong,
.tnt-steps article p,
.tnt-steps article span,
.tnt-admin-grid article p,
.tnt-strip-grid span,
.tnt-rights-card p,
.tnt-rights-card span:not(.tnt-section-label),
.tnt-rights-list li,
.tnt-guide-block p,
.tnt-guide-block li,
.tnt-guide-intro p,
.tnt-teacher-agreement-card p {
  background-color: transparent !important;
  background-image: none !important;
}
.tnt-price-card,
.tnt-best-card,
.tnt-service-grid article,
.tnt-steps article,
.tnt-admin-grid article {
  padding: clamp(22px, 2.2vw, 32px) !important;
  border-radius: 26px !important;
  overflow: hidden !important;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease !important;
}
.tnt-price-card:hover,
.tnt-best-card:hover,
.tnt-service-grid article:hover,
.tnt-steps article:hover,
.tnt-admin-grid article:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--premium-card-shadow-hover) !important;
}
.tnt-price-card h3,
.tnt-best-card h3,
.tnt-service-grid h3,
.tnt-steps h3,
.tnt-admin-grid h3 {
  color: var(--primary-dark) !important;
  background: transparent !important;
}
.tnt-price-card p,
.tnt-best-card p,
.tnt-service-grid p,
.tnt-steps p,
.tnt-admin-grid p,
.tnt-price-card li {
  color: #41536A !important;
  line-height: 1.9 !important;
}
.tnt-price-card strong,
.tnt-best-card strong {
  color: var(--primary-dark) !important;
}
.tnt-price-card.is-featured strong,
.tnt-best-card.is-featured strong { color: var(--gold) !important; }
.tnt-price-card ul { background: transparent !important; }
.tnt-price-card li {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  padding: 0 !important;
  border: 0 !important;
}
.tnt-price-card li i {
  flex: 0 0 auto !important;
  margin-top: 8px !important;
  width: 20px !important;
  height: 20px !important;
  display: inline-grid !important;
  place-items: center !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: var(--gold) !important;
  font-size: 11px !important;
}
.tnt-price-card a,
.tnt-best-card a {
  border-radius: 999px !important;
  min-height: 58px !important;
  width: 100% !important;
  box-shadow: 0 15px 34px rgba(43,127,157,.18) !important;
}

/* Teacher dark summary cards keep their premium dark-glass identity but no text bugs. */
.tnt-teacher-summary-card {
  background: rgba(255,255,255,.12) !important;
  color: #fff !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.08) !important;
}
.tnt-teacher-summary-card h3,
.tnt-teacher-summary-card p { background: transparent !important; }
.tnt-teacher-summary-card h3 { color: #fff !important; }
.tnt-teacher-summary-card p { color: rgba(255,255,255,.84) !important; }

/* Inner pages readability after background cleanup. */
.tnt-rights-page .tnt-rights-hero,
.tnt-rights-page .tnt-teacher-hero {
  background:
    radial-gradient(circle at 18% 24%, rgba(219,164,38,.19), transparent 25%),
    linear-gradient(135deg, #1F6D84, #2B7F9D) !important;
}
.tnt-rights-page .tnt-rights-hero::before,
.tnt-rights-page .tnt-teacher-hero::before { display: none !important; content: none !important; }
.tnt-rights-content > .tnt-container,
.tnt-teacher-content > .tnt-readable-container {
  background: rgba(255,255,255,.97) !important;
  border-radius: 22px !important;
  box-shadow: 0 30px 86px rgba(18,38,58,.14) !important;
}

@media (max-width: 980px) {
  .tnt-hero-layout { grid-template-columns: 1fr !important; text-align: center !important; }
  .tnt-hero-copy { margin-inline: auto !important; }
  .tnt-hero-text { margin-inline: auto !important; }
  .tnt-hero-actions { justify-content: center !important; }
  .tnt-stat-row { margin-inline: auto !important; }
}
@media (max-width: 760px) {
  .tnt-container { width: min(100% - 28px, 1200px) !important; }
  .tnt-hero { padding-top: 38px !important; }
  .tnt-hero h1,
  .tnt-hero-copy h1 { font-size: clamp(34px, 11vw, 52px) !important; line-height: 1.18 !important; }
  .tnt-hero-text { font-size: 16px !important; line-height: 1.9 !important; }
  .tnt-hero-actions,
  .tnt-teacher-cta-actions,
  .tnt-contact-actions,
  .tnt-rights-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: min(100%, 430px) !important;
    margin-inline: auto !important;
  }
  .tnt-hero-actions .tnt-btn,
  .tnt-teacher-cta-actions .tnt-btn,
  .tnt-contact-actions .tnt-btn,
  .tnt-rights-actions .tnt-btn {
    width: 100% !important;
    min-height: 58px !important;
    height: 58px !important;
    padding-inline: 18px !important;
    font-size: 15px !important;
  }
  .tnt-price-grid,
  .tnt-best-grid,
  .tnt-service-grid,
  .tnt-steps,
  .tnt-admin-grid,
  .tnt-strip-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .tnt-price-card,
  .tnt-best-card,
  .tnt-service-grid article,
  .tnt-steps article,
  .tnt-admin-grid article {
    transform: none !important;
  }
  .tnt-price-card:hover,
  .tnt-best-card:hover,
  .tnt-service-grid article:hover,
  .tnt-steps article:hover,
  .tnt-admin-grid article:hover {
    transform: translateY(-4px) !important;
  }
.tnt-floating-whatsapp { left: 14px !important; bottom: 16px !important; }
  .tnt-back-to-top { left: 19px !important; bottom: 88px !important; }
}
@media (max-width: 420px) {
}

/* === Tantawy v1.5.0 final CSS/logic hotfix === */
/* 1) Kill ugly text-background bug inside all card-like components without breaking CTA buttons or badges. */
:is(
  .tnt-price-card,
  .tnt-best-card,
  .tnt-service-grid article,
  .tnt-steps article,
  .tnt-admin-grid article,
  .tnt-guide-cards article,
  .tnt-rights-card,
  .tnt-guide-block,
  .tnt-guide-intro,
  .tnt-teacher-agreement-card,
  .tnt-page-card,
  .tnt-contact-card,
  .tnt-feature-strip article,
  .tnt-strip-grid article,
  .tnt-faq-item,
  .tnt-about-copy,
  .tnt-about-card
) :where(p, li, strong, em, b, h1, h2, h3, h4, h5, h6),
:is(
  .tnt-price-card,
  .tnt-best-card,
  .tnt-service-grid article,
  .tnt-steps article,
  .tnt-admin-grid article,
  .tnt-guide-cards article,
  .tnt-rights-card,
  .tnt-guide-block,
  .tnt-guide-intro,
  .tnt-teacher-agreement-card,
  .tnt-page-card,
  .tnt-contact-card,
  .tnt-feature-strip article,
  .tnt-strip-grid article,
  .tnt-faq-item,
  .tnt-about-copy,
  .tnt-about-card
) span:not(.tnt-ribbon):not(.tnt-mini-badge):not(.tnt-section-label):not(.tnt-check-box):not(.tnt-live-title):not(.tnt-live-countries):not(.tnt-country-num),
:is(
  .tnt-price-card,
  .tnt-best-card,
  .tnt-service-grid article,
  .tnt-steps article,
  .tnt-admin-grid article,
  .tnt-guide-cards article,
  .tnt-rights-card,
  .tnt-guide-block,
  .tnt-guide-intro,
  .tnt-teacher-agreement-card,
  .tnt-page-card,
  .tnt-contact-card,
  .tnt-feature-strip article,
  .tnt-strip-grid article,
  .tnt-faq-item,
  .tnt-about-copy,
  .tnt-about-card
) a:not(.tnt-btn):not(.tnt-login-btn) {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-decoration-break: slice !important;
  -webkit-box-decoration-break: slice !important;
}

/* Preserve clean white containers and readable dark text. */
:is(.tnt-price-card,.tnt-best-card,.tnt-service-grid article,.tnt-steps article,.tnt-admin-grid article,.tnt-guide-cards article,.tnt-rights-card,.tnt-guide-block,.tnt-guide-intro,.tnt-teacher-agreement-card,.tnt-page-card,.tnt-contact-card,.tnt-feature-strip article,.tnt-strip-grid article,.tnt-faq-item) {
  background-color: #ffffff !important;
  color: var(--primary-dark) !important;
}
.tnt-price-card :where(p,li),
.tnt-best-card :where(p,li),
.tnt-service-grid article p,
.tnt-steps article p,
.tnt-admin-grid article p,
.tnt-guide-block :where(p,li),
.tnt-guide-intro p,
.tnt-rights-card :where(p,li) {
  color: #334155 !important;
}

/* 2) Hero CTA overhaul: unified heights, flex layout, premium hover. */
.tnt-hero-copy .tnt-eyebrow {
  background: rgba(255,255,255,.78) !important;
  color: var(--primary-dark) !important;
  border: 1px solid rgba(43,127,157,.16) !important;
}
.tnt-hero-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 15px !important;
  width: 100% !important;
  margin-top: 28px !important;
}
.tnt-hero-actions .tnt-btn {
  min-height: 56px !important;
  height: 56px !important;
  padding: 12px 30px !important;
  border-radius: 50px !important;
  font-family: "Cairo", sans-serif !important;
  font-weight: 900 !important;
  font-size: 16px !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  white-space: nowrap !important;
  transition: transform .3s ease, box-shadow .3s ease, filter .3s ease, background .3s ease !important;
}
.tnt-hero-actions .tnt-btn:hover,
.tnt-hero-actions .tnt-btn:focus-visible {
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 20px rgba(0,0,0,.10), 0 18px 38px rgba(31,109,132,.14) !important;
  filter: saturate(108%) !important;
}
.tnt-hero-actions .tnt-btn-gold:hover { box-shadow: 0 10px 20px rgba(0,0,0,.10), 0 18px 38px rgba(219,164,38,.22) !important; }
.tnt-hero-actions .tnt-btn-blue:hover { box-shadow: 0 10px 20px rgba(0,0,0,.10), 0 18px 38px rgba(43,127,157,.24) !important; }

/* Better hero typography rhythm. */
.tnt-hero-copy h1 {
  line-height: 1.12 !important;
  margin: 16px 0 16px !important;
}
.tnt-hero-text {
  line-height: 1.95 !important;
  margin-bottom: 22px !important;
}

/* 3) Teacher guide: button stays visible, disabled only until checkbox is checked. */
#teacherApplyButton.tnt-btn-telegram {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  width: 100% !important;
  min-height: 58px !important;
  border-radius: 50px !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  filter: none !important;
  transition: opacity .25s ease, transform .25s ease, box-shadow .25s ease, filter .25s ease !important;
}
#teacherApplyButton.tnt-btn-telegram.is-disabled,
#teacherApplyButton.tnt-btn-telegram[aria-disabled="true"] {
  opacity: .5 !important;
  pointer-events: none !important;
  cursor: not-allowed !important;
  filter: grayscale(.25) !important;
  transform: none !important;
  box-shadow: none !important;
}
#teacherApplyButton.tnt-btn-telegram:not(.is-disabled):not([aria-disabled="true"]):hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 16px 34px rgba(34,158,217,.28) !important;
}

@media (max-width: 760px) {
  .tnt-hero-actions {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    width: min(100%, 430px) !important;
    margin-inline: auto !important;
    gap: 12px !important;
  }
  .tnt-hero-actions .tnt-btn {
    width: 100% !important;
    min-height: 56px !important;
    height: auto !important;
    white-space: normal !important;
    text-align: center !important;
    padding: 13px 22px !important;
  }
}
/* === End Tantawy v1.5.0 final CSS/logic hotfix === */

/* === Tantawy System UI v1.6.0 Contrast & Cards Emergency Fix === */
html,
body {
  max-width: 100% !important;
  overflow-x: hidden !important;
}

/* Keep the teacher home section dark and readable; previous generic section rules could wash it out. */
.tnt-teacher-guide,
.tnt-teacher-home-cta {
  position: relative !important;
  background:
    radial-gradient(circle at 16% 18%, rgba(219,164,38,.20), transparent 26%),
    radial-gradient(circle at 90% 8%, rgba(255,255,255,.10), transparent 28%),
    linear-gradient(135deg, #1F6D84 0%, #2B7F9D 100%) !important;
  color: #ffffff !important;
  overflow: hidden !important;
}
.tnt-teacher-guide::before,
.tnt-teacher-home-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,0));
  opacity: .8;
}
.tnt-teacher-guide > .tnt-container,
.tnt-teacher-home-cta > .tnt-container,
.tnt-teacher-cta-shell {
  position: relative !important;
  z-index: 1 !important;
}
.tnt-teacher-cta-copy,
.tnt-teacher-cta-copy h1,
.tnt-teacher-cta-copy h2,
.tnt-teacher-cta-copy h3,
.tnt-teacher-cta-copy p,
.tnt-teacher-guide > .tnt-container > h2,
.tnt-teacher-guide > .tnt-container > p {
  color: #ffffff !important;
  background: transparent !important;
}
.tnt-teacher-cta-copy p {
  color: rgba(255,255,255,.88) !important;
}
.tnt-teacher-guide .tnt-section-label,
.tnt-teacher-cta-copy .tnt-section-label {
  color: #ffffff !important;
  background: rgba(255,255,255,.14) !important;
  border-color: rgba(255,255,255,.26) !important;
}
.tnt-teacher-cta-actions .tnt-btn-outline {
  color: #ffffff !important;
  background: rgba(255,255,255,.12) !important;
  border-color: rgba(255,255,255,.34) !important;
}
.tnt-teacher-cta-actions .tnt-btn-outline:hover {
  background: rgba(255,255,255,.20) !important;
}

/* Global contrast rescue: any white/light card must use dark readable text, never white-on-white. */
:is(
  .tnt-service-grid article,
  .tnt-steps article,
  .tnt-teacher-summary-card,
  .tnt-admin-grid article,
  .tnt-strip-grid article,
  .tnt-feature-strip article,
  .tnt-guide-cards article,
  .tnt-price-card,
  .tnt-best-card,
  .tnt-about-card,
  .tnt-contact-card,
  .tnt-faq-item,
  .tnt-page-card,
  .tnt-rights-card,
  .tnt-guide-block,
  .tnt-guide-intro,
  .tnt-teacher-agreement-card,
  .tnt-student-guide-cta,
  .tnt-admin-panel
) {
  background: #ffffff !important;
  color: #1F6D84 !important;
  border: 1px solid rgba(43,127,157,.12) !important;
  box-shadow: 0 18px 48px rgba(18,38,58,.09) !important;
}

:is(
  .tnt-service-grid article,
  .tnt-steps article,
  .tnt-teacher-summary-card,
  .tnt-admin-grid article,
  .tnt-strip-grid article,
  .tnt-feature-strip article,
  .tnt-guide-cards article,
  .tnt-price-card,
  .tnt-best-card,
  .tnt-about-card,
  .tnt-contact-card,
  .tnt-faq-item,
  .tnt-page-card,
  .tnt-rights-card,
  .tnt-guide-block,
  .tnt-guide-intro,
  .tnt-teacher-agreement-card,
  .tnt-student-guide-cta,
  .tnt-admin-panel
) :where(h1,h2,h3,h4,h5,h6) {
  color: #1F6D84 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

:is(
  .tnt-service-grid article,
  .tnt-steps article,
  .tnt-teacher-summary-card,
  .tnt-admin-grid article,
  .tnt-strip-grid article,
  .tnt-feature-strip article,
  .tnt-guide-cards article,
  .tnt-price-card,
  .tnt-best-card,
  .tnt-about-card,
  .tnt-contact-card,
  .tnt-faq-item,
  .tnt-page-card,
  .tnt-rights-card,
  .tnt-guide-block,
  .tnt-guide-intro,
  .tnt-teacher-agreement-card,
  .tnt-student-guide-cta,
  .tnt-admin-panel
) :where(p,li,small,strong,em,b,label) {
  color: #4B5563 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

:is(
  .tnt-service-grid article,
  .tnt-steps article,
  .tnt-teacher-summary-card,
  .tnt-admin-grid article,
  .tnt-strip-grid article,
  .tnt-feature-strip article,
  .tnt-guide-cards article,
  .tnt-price-card,
  .tnt-best-card,
  .tnt-about-card,
  .tnt-contact-card,
  .tnt-faq-item,
  .tnt-page-card,
  .tnt-rights-card,
  .tnt-guide-block,
  .tnt-guide-intro,
  .tnt-teacher-agreement-card,
  .tnt-student-guide-cta,
  .tnt-admin-panel
) span:not(.tnt-ribbon):not(.tnt-mini-badge):not(.tnt-section-label):not(.tnt-check-box):not(.tnt-live-title):not(.tnt-live-countries):not(.tnt-country-num) {
  color: #4B5563 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

/* Links inside cards keep their inherited colors unless explicitly styled as CTAs. */


/* Teacher/student card polish: structured vertical layout, centered icons, consistent spacing. */
.tnt-steps article,
.tnt-teacher-summary-card,
.tnt-service-grid article,
.tnt-admin-grid article,
.tnt-strip-grid article,
.tnt-guide-cards article {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  text-align: center !important;
  min-width: 0 !important;
  min-height: 100% !important;
  padding: 25px !important;
  border-radius: 26px !important;
  overflow: hidden !important;
}
.tnt-steps article > i,
.tnt-teacher-summary-card > i,
.tnt-admin-grid article > i,
.tnt-strip-grid article > i,
.tnt-guide-cards article > i,
.tnt-mission-grid article > i {
  width: 68px !important;
  height: 68px !important;
  flex: 0 0 68px !important;
  display: grid !important;
  place-items: center !important;
  margin: 0 auto 2px !important;
  border-radius: 22px !important;
  color: #DBA426 !important;
  background: rgba(219,164,38,.13) !important;
  box-shadow: inset 0 0 0 1px rgba(219,164,38,.11) !important;
  font-size: 27px !important;
}
.tnt-service-grid article img {
  width: 82px !important;
  height: 82px !important;
  flex: 0 0 auto !important;
  object-fit: contain !important;
  margin: 0 auto 4px !important;
}
.tnt-steps article span {
  position: static !important;
  width: 34px !important;
  height: 34px !important;
  flex: 0 0 auto !important;
  display: grid !important;
  place-items: center !important;
  margin: 0 auto -4px !important;
  border-radius: 50% !important;
  color: #ffffff !important;
  background: linear-gradient(135deg, #DBA426, #F1C766) !important;
  font-family: "Cairo", sans-serif !important;
  font-weight: 900 !important;
}
.tnt-steps article h3,
.tnt-teacher-summary-card h3,
.tnt-service-grid article h3,
.tnt-admin-grid article h3,
.tnt-strip-grid article h3,
.tnt-guide-cards article h3 {
  margin: 2px 0 0 !important;
  color: #1F6D84 !important;
  font-family: "Cairo", sans-serif !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
}
.tnt-steps article p,
.tnt-teacher-summary-card p,
.tnt-service-grid article p,
.tnt-admin-grid article p,
.tnt-strip-grid article p,
.tnt-guide-cards article p {
  margin: 0 !important;
  color: #4B5563 !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
}
.tnt-teacher-summary-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  align-items: stretch !important;
}
.tnt-teacher-summary-card:hover,
.tnt-steps article:hover,
.tnt-service-grid article:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 26px 68px rgba(18,38,58,.14) !important;
}

/* Keep CTA buttons readable and do not allow the contrast reset to affect button colors. */
.tnt-btn,
.tnt-price-card a,
.tnt-best-card a,
.tnt-login-btn,
.tnt-floating-whatsapp,
.tnt-btn :where(span,i),
.tnt-price-card a :where(span,i),
.tnt-best-card a :where(span,i) {
  color: #ffffff !important;
}
.tnt-btn-outline,
.tnt-btn-outline :where(span,i) {
  color: #1F6D84 !important;
}
.tnt-teacher-cta-actions .tnt-btn-outline,
.tnt-teacher-cta-actions .tnt-btn-outline :where(span,i) {
  color: #ffffff !important;
}

/* Hero action final spacing and mobile no-horizontal-scroll safety. */
.tnt-hero-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 15px !important;
  max-width: 100% !important;
}
.tnt-hero-actions .tnt-btn {
  flex: 0 1 auto !important;
  max-width: 100% !important;
}
.tnt-hero-copy,
.tnt-hero-layout,
.tnt-container,
.tnt-section,
.tnt-main {
  min-width: 0 !important;
}

@media (max-width: 980px) {
  .tnt-teacher-summary-grid {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 760px) {
  .tnt-hero-actions {
    flex-direction: column !important;
    width: min(100%, 430px) !important;
    margin-inline: auto !important;
  }
  .tnt-hero-actions .tnt-btn {
    width: 100% !important;
  }
  .tnt-steps article,
  .tnt-teacher-summary-card,
  .tnt-service-grid article,
  .tnt-admin-grid article,
  .tnt-strip-grid article,
  .tnt-guide-cards article {
    padding: 23px 18px !important;
  }
}
/* === End Tantawy System UI v1.6.0 Contrast & Cards Emergency Fix === */


/* === v1.6.0 final CTA/price contrast guard === */
.tnt-price-card strong,
.tnt-best-card strong {
  color: #2B7F9D !important;
  background: transparent !important;
}
.tnt-price-card.is-featured strong,
.tnt-best-card.is-featured strong {
  color: #DBA426 !important;
}
.tnt-price-card a,
.tnt-best-card a {
  color: #ffffff !important;
  background: linear-gradient(135deg, #2B7F9D, #1F6D84) !important;
  border: 0 !important;
}
.tnt-price-card.is-featured a,
.tnt-best-card.is-featured a {
  color: #ffffff !important;
  background: linear-gradient(135deg, #DBA426, #F1C766) !important;
}
.tnt-price-card a i,
.tnt-best-card a i {
  color: #ffffff !important;
  background: transparent !important;
}
/* === End v1.6.0 final CTA/price contrast guard === */


/* =========================================================
   Tantawy System UI v1.7.0 — Same-tab navigation + final UX safety
   ========================================================= */
html, body {
  overflow-x: hidden !important;
}

/* Prevent invisible text on light cards after previous background fixes. */
.tnt-price-card,
.tnt-steps article,
.tnt-student-guide-cta,
.tnt-teacher-summary-card,
.tnt-guide-block,
.tnt-guide-intro,
.tnt-teacher-agreement-card,
.tnt-rights-card,
.tnt-contact-card,
.tnt-best-card,
.tnt-admin-grid article,
.tnt-service-grid article,
.tnt-faq-item,
.tnt-readable-container,
.tnt-inner-card {
  color: #4B5563 !important;
}

.tnt-price-card h1,
.tnt-price-card h2,
.tnt-price-card h3,
.tnt-price-card h4,
.tnt-steps article h1,
.tnt-steps article h2,
.tnt-steps article h3,
.tnt-steps article h4,
.tnt-student-guide-cta h1,
.tnt-student-guide-cta h2,
.tnt-student-guide-cta h3,
.tnt-teacher-summary-card h1,
.tnt-teacher-summary-card h2,
.tnt-teacher-summary-card h3,
.tnt-guide-block h1,
.tnt-guide-block h2,
.tnt-guide-block h3,
.tnt-guide-intro h1,
.tnt-guide-intro h2,
.tnt-guide-intro h3,
.tnt-teacher-agreement-card h1,
.tnt-teacher-agreement-card h2,
.tnt-teacher-agreement-card h3,
.tnt-rights-card h1,
.tnt-rights-card h2,
.tnt-rights-card h3,
.tnt-contact-card h1,
.tnt-contact-card h2,
.tnt-contact-card h3,
.tnt-best-card h1,
.tnt-best-card h2,
.tnt-best-card h3,
.tnt-admin-grid article h1,
.tnt-admin-grid article h2,
.tnt-admin-grid article h3,
.tnt-service-grid article h1,
.tnt-service-grid article h2,
.tnt-service-grid article h3,
.tnt-faq-item h1,
.tnt-faq-item h2,
.tnt-faq-item h3,
.tnt-readable-container h1,
.tnt-readable-container h2,
.tnt-readable-container h3 {
  color: #1F6D84 !important;
  background: transparent !important;
}

.tnt-price-card p,
.tnt-price-card span:not(.tnt-ribbon),
.tnt-price-card li,
.tnt-steps article p,
.tnt-steps article li,
.tnt-student-guide-cta p,
.tnt-teacher-summary-card p,
.tnt-guide-block p,
.tnt-guide-block span,
.tnt-guide-block li,
.tnt-guide-intro p,
.tnt-teacher-agreement-card p,
.tnt-teacher-agreement-card strong,
.tnt-rights-card p,
.tnt-rights-card span,
.tnt-rights-card li,
.tnt-contact-card p,
.tnt-best-card p,
.tnt-admin-grid article p,
.tnt-service-grid article p,
.tnt-faq-content p,
.tnt-readable-container p,
.tnt-readable-container li,
.tnt-readable-container span:not(.tnt-section-label):not(.tnt-ribbon) {
  color: #4B5563 !important;
  background: transparent !important;
}

/* Keep intentional white text only on colored controls/overlays. */
.tnt-btn-gold,
.tnt-btn-blue,
.tnt-btn-telegram,
.tnt-price-card a,
.tnt-best-card a,
.tnt-floating-whatsapp,
.tnt-back-to-top,
.tnt-tab.is-active,
.tnt-tab:hover,
.tnt-plan-icon,
.tnt-ribbon,
.tnt-steps article > span {
  color: #ffffff !important;
}

/* Hero actions: final same-height mobile-friendly rhythm. */
.tnt-hero-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 15px !important;
  flex-wrap: wrap !important;
}
.tnt-hero-actions .tnt-btn {
  min-height: 54px !important;
  padding: 12px 30px !important;
  border-radius: 50px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  transition: transform .3s ease, box-shadow .3s ease, background .3s ease, color .3s ease !important;
}
.tnt-hero-actions .tnt-btn:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 20px rgba(0,0,0,.10) !important;
}

/* Teacher application button: visible but strictly locked until checkbox approval. */
#teacherApplyButton.tnt-btn-telegram {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 58px !important;
  border-radius: 50px !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  color: #ffffff !important;
}
#teacherApplyButton.tnt-btn-telegram.is-disabled,
#teacherApplyButton.tnt-btn-telegram[aria-disabled="true"] {
  opacity: .5 !important;
  pointer-events: none !important;
  cursor: not-allowed !important;
  filter: grayscale(.25) !important;
  box-shadow: none !important;
  transform: none !important;
}

@media (max-width: 720px) {
  .tnt-hero-actions {
    flex-direction: column !important;
    align-items: stretch !important;
    width: min(100%, 430px) !important;
    margin-inline: auto !important;
    gap: 12px !important;
  }
  .tnt-hero-actions .tnt-btn {
    width: 100% !important;
    justify-content: center !important;
    white-space: normal !important;
    text-align: center !important;
    padding-inline: 18px !important;
  }
}


/* ================================
   v1.8.0 Social & Contact Polish
   ================================ */
.tnt-social-contact {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 92% 12%, rgba(219, 164, 38, .13), transparent 28%),
    radial-gradient(circle at 8% 82%, rgba(43, 127, 157, .12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(249,250,252,.96));
}
.tnt-social-contact::before {
  content: "";
  position: absolute;
  inset: 22px;
  border: 1px solid rgba(43,127,157,.08);
  border-radius: 42px;
  pointer-events: none;
}
.tnt-social-contact > .tnt-container { position: relative; z-index: 1; }
.tnt-social-head { max-width: 880px; margin-inline: auto; }
.tnt-social-head h2 {
  color: var(--primary-dark);
  font-size: clamp(25px, 3vw, 42px);
}
.tnt-social-head p { color: #4B5563; }
.tnt-social-contact-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  align-items: stretch;
  margin-top: 34px;
}
.tnt-social-card {
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(43,127,157,.12);
  border-radius: 26px;
  padding: 24px;
  box-shadow: 0 20px 55px rgba(31,109,132,.10);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
  min-width: 0;
}
.tnt-social-card:hover {
  transform: translateY(-7px);
  box-shadow: 0 28px 70px rgba(31,109,132,.16);
  border-color: rgba(219,164,38,.32);
}
.tnt-social-card-title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
}
.tnt-social-card-title > i {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  color: var(--gold);
  background: rgba(219,164,38,.12);
  box-shadow: inset 0 0 0 1px rgba(219,164,38,.18);
  flex: 0 0 auto;
}
.tnt-social-card-title h3 {
  margin: 0;
  color: var(--primary-dark);
  font-size: 19px;
  font-weight: 900;
}
.tnt-social-link-list {
  display: grid;
  gap: 10px;
}
.tnt-social-link {
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 48px;
  padding: 10px 12px;
  border-radius: 16px;
  color: #1F6D84;
  background: rgba(43,127,157,.055);
  border: 1px solid rgba(43,127,157,.10);
  text-decoration: none;
  font-family: "Cairo", sans-serif;
  font-weight: 800;
  transition: transform .25s ease, color .25s ease, background .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.tnt-social-link i {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: #fff;
  color: var(--primary);
  box-shadow: 0 8px 18px rgba(31,109,132,.08);
  transition: color .25s ease, transform .25s ease;
  flex: 0 0 auto;
}
.tnt-social-link span {
  overflow-wrap: anywhere;
  color: inherit !important;
  background: transparent !important;
}
.tnt-social-link:hover {
  transform: translateY(-3px) translateX(-3px);
  background: #fff;
  box-shadow: 0 16px 34px rgba(31,109,132,.12);
  border-color: rgba(219,164,38,.30);
}
.tnt-social-link:hover i { transform: scale(1.08); }
.tnt-social-link.social-tiktok:hover i { color: #111111; }
.tnt-social-link.social-x:hover i { color: #111111; }
.tnt-social-link.social-instagram:hover i { color: #E4405F; }
.tnt-social-link.social-linkedin:hover i { color: #0A66C2; }
.tnt-social-link.social-pinterest:hover i { color: #BD081C; }
.tnt-social-link.social-youtube:hover i { color: #FF0000; }
.tnt-social-link.social-facebook:hover i { color: #1877F2; }
.tnt-social-link.social-telegram:hover i { color: #229ED9; }
.tnt-social-link.social-messenger:hover i { color: #006AFF; }
.tnt-social-link.social-whatsapp:hover i { color: #25D366; }

/* v1.8.0: Teacher apply must remain genuinely inactive until agreement is checked. */
#teacherApplyButton.is-disabled,
#teacherApplyButton[aria-disabled="true"] {
  opacity: .5 !important;
  pointer-events: none !important;
  cursor: not-allowed !important;
  filter: grayscale(.2);
}

/* v1.8.0: keep FAQ unlinked from navigation while preserving section styling if kept on page. */
.tnt-menu a[href="#faq"],
.tnt-footer a[href="#faq"] { display: none !important; }

@media (max-width: 1180px) {
  .tnt-social-contact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .tnt-social-contact { padding-block: 56px; }
  .tnt-social-contact::before { inset: 12px; border-radius: 28px; }
  .tnt-social-contact-grid { grid-template-columns: 1fr; gap: 14px; }
  .tnt-social-card { padding: 18px; border-radius: 22px; }
  .tnt-social-card-title h3 { font-size: 18px; }
  .tnt-social-link { min-height: 46px; font-size: 15px; }
}

/* =========================================================
   Tantawy System UI v2.0.0 — Pixel Perfect Social/Cards Fix
   ========================================================= */

/* 1) Social links: prevent ugly wrapping and keep icon + label on one elegant line. */
.tnt-social-contact-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
  gap: 20px !important;
  align-items: stretch !important;
}

.tnt-social-card {
  min-width: 0 !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

.tnt-social-link-list {
  display: grid !important;
  gap: 10px !important;
  min-width: 0 !important;
}

.tnt-social-link,
.tnt-social-link:visited {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 48px !important;
  padding: 10px 12px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  line-height: 1.2 !important;
}

.tnt-social-link i {
  flex: 0 0 30px !important;
  width: 30px !important;
  height: 30px !important;
  margin: 0 !important;
}

.tnt-social-link span {
  display: inline-block !important;
  min-width: 0 !important;
  max-width: 100% !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  overflow-wrap: normal !important;
  word-break: keep-all !important;
  color: inherit !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

/* 2) Teacher/student checkmarks: clean golden glyphs, no accidental highlight box. */
.tnt-rights-list li > i,
.tnt-guide-block .tnt-rights-list li > i,
.tnt-rights-card .tnt-rights-list li > i,
.tnt-price-card li > i,
.tnt-best-card li > i,
.tnt-guide-intro li > i,
.tnt-teacher-agreement-card li > i {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  width: auto !important;
  height: auto !important;
  min-width: 1.15em !important;
  margin: .25em 0 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  color: #DBA426 !important;
  line-height: 1 !important;
  font-size: 1.05em !important;
}

.tnt-rights-list li > span,
.tnt-guide-block .tnt-rights-list li > span,
.tnt-rights-card .tnt-rights-list li > span {
  color: #4B5563 !important;
  background: transparent !important;
  line-height: 1.9 !important;
}

/* Keep checkbox icon behavior separate from list checkmarks. */
.tnt-check-box,
.tnt-check-box i {
  border-radius: 10px !important;
}
.tnt-check-box i {
  color: #fff !important;
}

/* 3) Equal-height cards: student journey and similar card grids stay aligned. */
.tnt-steps,
.tnt-service-grid,
.tnt-strip-grid,
.tnt-admin-grid,
.tnt-guide-cards,
.tnt-teacher-summary-grid,
.tnt-mission-grid,
.tnt-price-grid {
  align-items: stretch !important;
}

.tnt-steps {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
  gap: 18px !important;
}

.tnt-steps article,
.tnt-service-grid article,
.tnt-strip-grid article,
.tnt-admin-grid article,
.tnt-guide-cards article,
.tnt-teacher-summary-card,
.tnt-mission-grid article,
.tnt-price-card,
.tnt-best-card {
  height: 100% !important;
  min-height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

.tnt-steps article,
.tnt-service-grid article,
.tnt-strip-grid article,
.tnt-admin-grid article,
.tnt-guide-cards article,
.tnt-mission-grid article {
  justify-content: flex-start !important;
  padding: 25px !important;
}

.tnt-steps article p,
.tnt-service-grid article p,
.tnt-strip-grid article span,
.tnt-admin-grid article p,
.tnt-guide-cards article p,
.tnt-teacher-summary-card p,
.tnt-mission-grid article p,
.tnt-price-card p,
.tnt-best-card p {
  flex-grow: 1 !important;
}

.tnt-price-card a,
.tnt-best-card a {
  margin-top: auto !important;
}

/* 4) Button/link final no-wrap audit; CTA buttons stay clean, social labels ellipsize if space is tiny. */
.tnt-btn,
.tnt-login-btn,
.tnt-price-card a,
.tnt-best-card a,
.tnt-floating-whatsapp,
#teacherApplyButton {
  white-space: nowrap !important;
}

/* Keep hero buttons stacked and readable on phones instead of compressed. */
@media (max-width: 720px) {
  .tnt-hero-actions {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
  }

  .tnt-hero-actions .tnt-btn {
    width: 100% !important;
    white-space: normal !important;
    min-height: 54px !important;
  }

  .tnt-social-contact-grid,
  .tnt-steps {
    grid-template-columns: 1fr !important;
  }

  .tnt-social-card {
    padding: 18px !important;
  }
}

@media (max-width: 380px) {
  .tnt-social-link {
    padding-inline: 10px !important;
    gap: 8px !important;
  }

  .tnt-social-link i {
    flex-basis: 28px !important;
    width: 28px !important;
    height: 28px !important;
  }
}

/* =========================================================
   v2.0.0 — Final QA approval audit: mobile, contrast, SEO UI
   ========================================================= */
html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden !important;
  scroll-behavior: smooth;
}

body {
  background: #F9FAFC !important;
}

/* Disable the previous heavy pattern. The real Islamic background can be placed here later. */
body::before {
  content: none !important;
  display: none !important;
}

body.islamic-bg {
  position: relative;
  background-color: #F9FAFC !important;
}

body.islamic-bg::before {
  content: "" !important;
  display: block !important;
  position: fixed;
  inset: 0;
  z-index: -5;
  pointer-events: none;
  background-image: url('assets/img/islamic-bg.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 0.03;
}

/* Keep all grids inside the viewport and make cards truly equal-height. */
.tnt-price-grid,
.tnt-steps,
.tnt-social-contact-grid,
.tnt-service-grid,
.tnt-admin-grid,
.tnt-strip-grid,
.tnt-guide-cards,
.tnt-mission-grid,
.tnt-best-grid {
  align-items: stretch !important;
  min-width: 0 !important;
}

.tnt-price-card,
.tnt-steps article,
.tnt-social-card,
.tnt-service-grid article,
.tnt-admin-grid article,
.tnt-strip-grid article,
.tnt-guide-cards article,
.tnt-mission-grid article,
.tnt-best-card {
  height: 100% !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}

.tnt-price-card ul,
.tnt-steps article p,
.tnt-social-link-list,
.tnt-service-grid article p,
.tnt-admin-grid article p,
.tnt-strip-grid article span,
.tnt-guide-cards article p,
.tnt-mission-grid article p,
.tnt-best-card p {
  flex-grow: 1 !important;
}

/* Final readable contrast pass: no light text on light cards. */
.tnt-price-card,
.tnt-steps article,
.tnt-social-card,
.tnt-service-grid article,
.tnt-admin-grid article,
.tnt-guide-cards article,
.tnt-rights-card,
.tnt-guide-block,
.tnt-guide-intro,
.tnt-teacher-agreement-card,
.tnt-page-card,
.tnt-contact-card,
.tnt-feature-strip article,
.tnt-strip-grid article,
.tnt-faq-item,
.tnt-mission-grid article,
.tnt-best-card {
  background: rgba(255, 255, 255, 0.96) !important;
  color: #4B5563 !important;
}

:is(.tnt-price-card,.tnt-steps article,.tnt-social-card,.tnt-service-grid article,.tnt-admin-grid article,.tnt-guide-cards article,.tnt-rights-card,.tnt-guide-block,.tnt-guide-intro,.tnt-teacher-agreement-card,.tnt-page-card,.tnt-contact-card,.tnt-feature-strip article,.tnt-strip-grid article,.tnt-faq-item,.tnt-mission-grid article,.tnt-best-card) :where(h1,h2,h3,h4,h5,h6) {
  color: #1F6D84 !important;
  background: transparent !important;
}

:is(.tnt-price-card,.tnt-steps article,.tnt-social-card,.tnt-service-grid article,.tnt-admin-grid article,.tnt-guide-cards article,.tnt-rights-card,.tnt-guide-block,.tnt-guide-intro,.tnt-teacher-agreement-card,.tnt-page-card,.tnt-contact-card,.tnt-feature-strip article,.tnt-strip-grid article,.tnt-faq-item,.tnt-mission-grid article,.tnt-best-card) :where(p,span,li,small,strong,em,cite) {
  background: transparent !important;
}

:is(.tnt-steps article,.tnt-price-card,.tnt-social-card,.tnt-best-card) :where(p,li,span:not(.tnt-ribbon)) {
  color: #4B5563 !important;
}

/* Pricing cards: mobile-safe premium layout. */
.tnt-price-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
  gap: 22px !important;
}

.tnt-price-card {
  padding: 28px 24px !important;
  border-radius: 20px !important;
}

.tnt-price-card a {
  margin-top: auto !important;
  width: 100% !important;
  min-height: 52px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  white-space: nowrap !important;
}

.tnt-price-card.is-featured {
  transform: scale(1.025);
}

.tnt-price-card.is-featured:hover {
  transform: translateY(-8px) scale(1.025) !important;
}

/* Student journey cards stay aligned and readable. */
.tnt-steps {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
}

.tnt-steps article {
  padding: 28px 22px !important;
  align-items: center !important;
  text-align: center !important;
  gap: 12px !important;
}

.tnt-steps article > i {
  flex: 0 0 auto !important;
}

.tnt-steps article p {
  margin-bottom: 0 !important;
}

/* Social/contact grid: no cramped cards and no random wrapping. */
.tnt-social-contact-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
  gap: 20px !important;
}

.tnt-social-link {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-width: 0 !important;
}

.tnt-social-link span {
  min-width: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Floating widgets: never overlap, never block mobile reading. */
.tnt-floating-whatsapp {
  left: 18px !important;
  right: auto !important;
  bottom: 22px !important;
  z-index: 9998 !important;
}
/* Hero final mobile-safe sizing and button spacing. */
.tnt-hero-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 15px !important;
}

.tnt-hero-actions .tnt-btn,
.tnt-btn-lg {
  min-height: 54px !important;
  padding: 13px 30px !important;
  border-radius: 999px !important;
  font-weight: 900 !important;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease !important;
}

.tnt-hero-actions .tnt-btn:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 14px 28px rgba(0,0,0,.12) !important;
}

/* Teacher apply button hard-lock until approval checkbox is checked. */
#teacherApplyButton.is-disabled,
#teacherApplyButton[aria-disabled="true"] {
  opacity: .5 !important;
  pointer-events: none !important;
  cursor: not-allowed !important;
  filter: grayscale(.16) !important;
}

#teacherApplyButton:not(.is-disabled):not([aria-disabled="true"]) {
  opacity: 1 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}

@media (max-width: 1024px) {
  .tnt-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .tnt-container {
    width: min(100% - 24px, 100%) !important;
  }

  .tnt-hero h1 {
    font-size: clamp(34px, 10vw, 46px) !important;
    line-height: 1.16 !important;
  }

  .tnt-section-head h2,
  .tnt-about-copy h2,
  .tnt-rights-hero h1 {
    font-size: clamp(26px, 7.4vw, 36px) !important;
    line-height: 1.28 !important;
  }

  body,
  p,
  li,
  .tnt-hero-text,
  .tnt-section-head p {
    font-size: 16px !important;
  }

  .tnt-price-grid,
  .tnt-steps,
  .tnt-social-contact-grid,
  .tnt-service-grid,
  .tnt-admin-grid,
  .tnt-strip-grid,
  .tnt-guide-cards,
  .tnt-mission-grid,
  .tnt-best-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .tnt-price-card,
  .tnt-steps article,
  .tnt-social-card {
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
  }

  .tnt-price-card.is-featured,
  .tnt-price-card.is-featured:hover {
    transform: none !important;
  }

  .tnt-hero-actions {
    width: 100% !important;
    align-items: stretch !important;
  }

  .tnt-hero-actions .tnt-btn {
    width: 100% !important;
    justify-content: center !important;
    white-space: normal !important;
  }

  .tnt-floating-whatsapp {
    left: 14px !important;
    right: auto !important;
    bottom: 15px !important;
    width: 56px !important;
    height: 56px !important;
    font-size: 28px !important;
  }
}

@media (max-width: 390px) {
.tnt-social-link span {
    white-space: normal !important;
  }
}


/* =========================================================
   Tantawy System UI v2.1.0 — Critical visual bug squash
   Contrast, pricing CTA visibility, social spacing, equal cards
   ========================================================= */

/* 0) Version marker: this block intentionally sits last to override older emergency rules. */
html,
body {
  overflow-x: hidden !important;
  max-width: 100% !important;
}

/* 1) Pricing CTA buttons: never white-on-white, even after global text/background resets. */
.tnt-price-card > a,
.tnt-price-card a[href*="wa.me"],
.tnt-best-card > a,
.tnt-best-card a[href*="wa.me"] {
  position: relative !important;
  z-index: 5 !important;
  width: 100% !important;
  min-height: 56px !important;
  margin-top: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  padding: 13px 20px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #ffffff !important;
  background: linear-gradient(135deg, #2B7F9D 0%, #1F6D84 100%) !important;
  background-color: #2B7F9D !important;
  background-image: linear-gradient(135deg, #2B7F9D 0%, #1F6D84 100%) !important;
  box-shadow: 0 16px 34px rgba(43, 127, 157, .26) !important;
  font-family: "Cairo", sans-serif !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: transform .25s ease, box-shadow .25s ease, filter .25s ease !important;
}

.tnt-price-card > a :where(i, span),
.tnt-price-card a[href*="wa.me"] :where(i, span),
.tnt-best-card > a :where(i, span),
.tnt-best-card a[href*="wa.me"] :where(i, span) {
  color: #ffffff !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

.tnt-price-card.is-featured > a,
.tnt-price-card.is-featured a[href*="wa.me"],
.tnt-best-card.is-featured > a,
.tnt-best-card.is-featured a[href*="wa.me"] {
  color: #ffffff !important;
  background: linear-gradient(135deg, #DBA426 0%, #B8840D 100%) !important;
  background-color: #DBA426 !important;
  background-image: linear-gradient(135deg, #DBA426 0%, #B8840D 100%) !important;
  box-shadow: 0 18px 38px rgba(219, 164, 38, .32) !important;
}

.tnt-price-card > a:hover,
.tnt-price-card a[href*="wa.me"]:hover,
.tnt-best-card > a:hover,
.tnt-best-card a[href*="wa.me"]:hover {
  transform: translateY(-3px) !important;
  filter: saturate(1.06) !important;
  box-shadow: 0 22px 48px rgba(31, 109, 132, .30) !important;
}

/* 1-b) Featured ribbon: readable gold badge, not transparent and not white-on-light. */
.tnt-price-card .tnt-ribbon,
.tnt-best-card .tnt-ribbon {
  position: absolute !important;
  top: 15px !important;
  left: 15px !important;
  z-index: 10 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 8px 15px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(31, 109, 132, .12) !important;
  color: #1F6D84 !important;
  background: linear-gradient(135deg, #FBE7A8 0%, #DBA426 100%) !important;
  background-color: #DBA426 !important;
  background-image: linear-gradient(135deg, #FBE7A8 0%, #DBA426 100%) !important;
  box-shadow: 0 12px 26px rgba(219, 164, 38, .30) !important;
  font-family: "Cairo", sans-serif !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

/* 2) Social/contact section: no cutting, no footer overlap, no link wrapping. */
.tnt-social-contact {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  padding-top: clamp(56px, 7vw, 92px) !important;
  padding-bottom: clamp(76px, 9vw, 120px) !important;
  margin-bottom: 28px !important;
}

.tnt-social-contact-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
  gap: 20px !important;
  align-items: stretch !important;
  overflow: visible !important;
}

.tnt-social-card {
  min-width: 0 !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

.tnt-social-link-list {
  display: grid !important;
  gap: 10px !important;
  align-content: start !important;
}

.tnt-social-link,
.tnt-social-link:visited {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  min-width: 0 !important;
  width: 100% !important;
  white-space: nowrap !important;
}

.tnt-social-link i {
  flex: 0 0 32px !important;
  width: 32px !important;
  height: 32px !important;
}

.tnt-social-link span {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

/* 3) Student journey and similar cards: equal-height, forced alignment. */
.tnt-steps {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  align-items: stretch !important;
}

.tnt-steps article {
  height: auto !important;
  min-height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  padding: 28px 22px !important;
  text-align: center !important;
}

.tnt-steps article > span,
.tnt-steps article > i,
.tnt-steps article > h3 {
  flex: 0 0 auto !important;
}

.tnt-steps article > p {
  flex: 1 1 auto !important;
  margin: 0 !important;
  color: #4B5563 !important;
  background: transparent !important;
}

/* 4) Hero tags / small chips: tidy alignment instead of scattered pills. */
.tnt-hero-tags,
.tnt-about-points,
.tnt-feature-tags {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 12px 15px !important;
}

.tnt-hero-tags > *,
.tnt-about-points > *,
.tnt-feature-tags > * {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  white-space: nowrap !important;
  background: rgba(255,255,255,.86) !important;
  color: #1F6D84 !important;
  border: 1px solid rgba(43,127,157,.14) !important;
  box-shadow: 0 10px 26px rgba(31,109,132,.08) !important;
}

/* 5) Final sanity contrast guard for light cards. */
:is(.tnt-price-card, .tnt-steps article, .tnt-social-card, .tnt-best-card) :where(h1,h2,h3,h4,h5,h6) {
  color: #1F6D84 !important;
}
:is(.tnt-price-card, .tnt-steps article, .tnt-social-card, .tnt-best-card) :where(p,li,small,em,cite) {
  color: #4B5563 !important;
}

@media (max-width: 1024px) {
  .tnt-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .tnt-price-grid,
  .tnt-steps,
  .tnt-social-contact-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .tnt-price-card,
  .tnt-steps article,
  .tnt-social-card {
    min-height: 0 !important;
    height: auto !important;
  }

  .tnt-social-contact {
    padding-bottom: 104px !important;
    margin-bottom: 18px !important;
  }

  .tnt-hero-tags,
  .tnt-about-points,
  .tnt-feature-tags {
    justify-content: center !important;
  }

  .tnt-price-card > a,
  .tnt-price-card a[href*="wa.me"],
  .tnt-best-card > a,
  .tnt-best-card a[href*="wa.me"] {
    min-height: 54px !important;
    font-size: 15px !important;
  }
}

@media (max-width: 390px) {
  .tnt-social-link span {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}


/* =========================================================
   v2.2.0 quality cleanup: pricing sync, readability, SEO UX
   ========================================================= */
html, body { overflow-x: hidden !important; scroll-behavior: smooth; }
body { background-color: #F9FAFC; }
.islamic-bg::before { opacity: .03 !important; }
.tnt-section-actions { display: flex; justify-content: center; margin-top: 28px; }
.tnt-pricing-page-main .tnt-pricing { padding-top: 42px !important; }
.tnt-pricing-hero { padding-bottom: 52px; }
.tnt-pricing-full .tnt-price-grid,
.tnt-pricing .tnt-price-grid { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important; align-items: stretch !important; }
.tnt-price-card, .tnt-best-card { background: #fff !important; color: #4B5563 !important; height: 100% !important; min-height: 0 !important; display: flex !important; flex-direction: column !important; }
.tnt-price-card :where(h3,h4), .tnt-best-card :where(h3,h4) { color: #1F6D84 !important; background: transparent !important; }
.tnt-price-card :where(p,span:not(.tnt-ribbon),li,small), .tnt-best-card :where(p,span:not(.tnt-ribbon),li,small) { color: #4B5563 !important; background: transparent !important; }
.tnt-price-card strong, .tnt-best-card strong { color: #2B7F9D !important; background: transparent !important; }
.tnt-price-card ul, .tnt-best-card ul { flex: 1 1 auto !important; }
.tnt-price-card a[href*="wa.me"], .tnt-best-card a[href*="wa.me"] { margin-top: auto !important; background: linear-gradient(135deg, #2B7F9D, #1F6D84) !important; color: #fff !important; border: 0 !important; box-shadow: 0 14px 30px rgba(43,127,157,.18) !important; }
.tnt-price-card.is-featured a[href*="wa.me"], .tnt-best-card.is-featured a[href*="wa.me"] { background: linear-gradient(135deg, #DBA426, #B98715) !important; color: #fff !important; }
.tnt-ribbon { background: linear-gradient(135deg, #DBA426, #F2C766) !important; color: #1F6D84 !important; font-weight: 900 !important; }
.tnt-plan-note { display: flex; align-items: center; gap: 10px; margin: 18px 0; padding: 14px 16px; border-radius: 18px; color: #1F6D84; background: rgba(43,127,157,.08); border: 1px solid rgba(43,127,157,.12); font-weight: 800; }
.tnt-best-packages { padding-block: clamp(58px, 8vw, 96px) !important; }
.tnt-best-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 20px !important; align-items: stretch !important; }
.tnt-hero-actions { display: flex !important; flex-wrap: wrap !important; gap: 15px !important; align-items: center !important; }
.tnt-hero-tags, .tnt-about-points, .tnt-feature-tags { display: flex !important; flex-wrap: wrap !important; gap: 12px !important; }
.tnt-service-grid img { max-width: 74px; height: auto; object-fit: contain; }
.tnt-footer a[href*="pricing"] { font-weight: 800; }
@media (max-width: 991px) {
  .tnt-best-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 767px) {
  .tnt-main > section { padding-inline: 0 !important; }
  .tnt-hero-copy h1 { font-size: clamp(34px, 11vw, 46px) !important; line-height: 1.18 !important; }
  .tnt-hero-text { font-size: 16px !important; line-height: 1.9 !important; }
  .tnt-hero-actions { justify-content: stretch !important; }
  .tnt-hero-actions .tnt-btn { width: 100% !important; min-height: 54px !important; }
  .tnt-price-grid, .tnt-best-grid, .tnt-steps, .tnt-social-contact-grid { grid-template-columns: 1fr !important; gap: 18px !important; }
  .tnt-price-card, .tnt-best-card, .tnt-steps article, .tnt-social-card { height: auto !important; min-height: 0 !important; }
.tnt-floating-whatsapp { left: 16px !important; right: auto !important; bottom: 18px !important; }
}


/* =========================================================
   Tantawy UI Polish v2.5.0 — Visual QA / Responsive Fix
   This final layer intentionally overrides earlier experimental rules.
   ========================================================= */
:root {
  --primary: #2B7F9D;
  --primary-dark: #1F6D84;
  --primary-light: #3594B4;
  --gold: #DBA426;
  --bg: #F5F7FB;
  --text: #1F2937;
  --muted: #64748B;
  --radius-lg: 28px;
  --shadow-soft: 0 18px 45px rgba(31, 109, 132, .10);
  --shadow-hover: 0 28px 70px rgba(31, 109, 132, .16);
}
html, body { width: 100%; max-width: 100%; overflow-x: hidden !important; scroll-behavior: smooth; }
body {
  color: var(--text) !important;
  background:
    radial-gradient(circle at 90% 4%, rgba(53,148,180,.13), transparent 34%),
    radial-gradient(circle at 8% 30%, rgba(219,164,38,.10), transparent 31%),
    linear-gradient(180deg, #F9FCFE 0%, #F5F7FB 42%, #FFFFFF 100%) !important;
}
body::before,
.islamic-bg::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -10;
  background-image: url('assets/img/islamic-bg.jpg'), url('assets/images/bg-pattern.png');
  background-size: cover, 680px auto;
  background-position: center, center top;
  background-repeat: no-repeat, repeat;
  opacity: .035 !important;
}
.tnt-section { position: relative; padding-block: clamp(62px, 8vw, 112px) !important; }
.tnt-section::before {
  content: "";
  position: absolute;
  inset-inline: 0;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(43,127,157,.12), rgba(219,164,38,.12), transparent);
  pointer-events: none;
}
.tnt-section-head { max-width: 840px; margin-inline: auto; text-align: center; margin-bottom: 32px !important; }
.tnt-section-head h2, .tnt-about-copy h2, .tnt-contact-card h2 {
  font-size: clamp(30px, 4.4vw, 44px) !important;
  line-height: 1.28 !important;
  letter-spacing: -.6px;
  color: var(--primary-dark) !important;
}
.tnt-section-head p, .tnt-contact-card p, .tnt-hero-text { color: var(--muted) !important; line-height: 1.95 !important; font-size: clamp(16px, 1.7vw, 18px) !important; }
.tnt-system-hero { padding-top: clamp(104px, 10vw, 142px) !important; padding-bottom: clamp(66px, 8vw, 110px) !important; overflow: hidden; }
.tnt-hero-copy h1 { font-size: clamp(42px, 5.7vw, 64px) !important; line-height: 1.12 !important; letter-spacing: -1.1px; color: var(--primary-dark) !important; }
.tnt-hero-copy h1 span { color: var(--gold) !important; }
.tnt-hero-actions, .tnt-about-points {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
}
.tnt-hero-actions .tnt-btn { min-height: 54px !important; border-radius: 999px !important; padding: 13px 25px !important; font-weight: 900 !important; box-shadow: var(--shadow-soft); white-space: nowrap; }
.tnt-hero-actions .tnt-btn:hover { transform: translateY(-3px); box-shadow: var(--shadow-hover); }
.tnt-about-points span { white-space: nowrap; background: rgba(255,255,255,.80) !important; border: 1px solid rgba(43,127,157,.14); box-shadow: 0 10px 25px rgba(31,109,132,.07); }
.tnt-arch-frame, .tnt-about-visual {
  border-radius: var(--radius-lg) !important;
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(245,247,251,.82)) !important;
  border: 1px solid rgba(43,127,157,.12) !important;
  box-shadow: var(--shadow-soft) !important;
  overflow: hidden !important;
  aspect-ratio: 1 / 1 !important;
  min-height: 0 !important;
  display: grid !important;
  place-items: center !important;
  padding: clamp(18px, 3vw, 34px) !important;
}
.tnt-arch-frame::before, .tnt-arch-frame::after, .tnt-about-visual::before, .tnt-about-visual::after { display: none !important; }
.tnt-arch-frame img, .tnt-about-visual img {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
  filter: drop-shadow(0 16px 26px rgba(31,109,132,.12));
}
/* Pricing page: conversion-focused tabbed selling layout */
.tnt-pricing-page-main, .tnt-pricing-full { background: transparent !important; }
.tnt-pricing-hero {
  background: linear-gradient(135deg, rgba(31,109,132,.98), rgba(43,127,157,.94)) !important;
  color: #fff !important;
  padding-block: clamp(76px, 10vw, 118px) !important;
  border-bottom-left-radius: 46px;
  border-bottom-right-radius: 46px;
  box-shadow: 0 24px 70px rgba(31,109,132,.18);
}
.tnt-pricing-hero h1 { font-size: clamp(38px, 5vw, 56px) !important; color: #fff !important; line-height: 1.22 !important; }
.tnt-pricing-hero p { color: rgba(255,255,255,.86) !important; max-width: 720px; margin-inline: auto; }
.tnt-pricing .tnt-tabs {
  width: fit-content;
  max-width: 100%;
  margin: 0 auto 34px !important;
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  padding: 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.78) !important;
  border: 1px solid rgba(43,127,157,.12);
  box-shadow: 0 18px 45px rgba(31,109,132,.08);
}
.tnt-tab {
  min-height: 46px;
  padding: 10px 22px !important;
  border-radius: 999px !important;
  color: var(--primary-dark) !important;
  background: transparent !important;
  border: 0 !important;
  font-family: "Cairo", sans-serif;
  font-weight: 900 !important;
}
.tnt-tab.is-active { color: #fff !important; background: linear-gradient(135deg, var(--primary), var(--primary-dark)) !important; box-shadow: 0 12px 26px rgba(43,127,157,.22); }
.tnt-tab-panel { animation: tntSoftUp .32s ease both; }
.tnt-plan-note {
  width: min(760px, 100%);
  margin: 0 auto 24px !important;
  padding: 14px 18px !important;
  border-radius: 20px !important;
  background: rgba(255,255,255,.86) !important;
  border: 1px solid rgba(43,127,157,.12) !important;
  color: var(--primary-dark) !important;
  box-shadow: 0 12px 28px rgba(31,109,132,.07);
  text-align: center;
  font-weight: 800;
}
.tnt-price-grid, .pricing-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
  max-width: 1120px;
  margin: 0 auto;
}
.tnt-price-card {
  height: 100% !important;
  min-height: 430px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  gap: 14px !important;
  padding: 28px 24px 22px !important;
  border-radius: 28px !important;
  background: #fff !important;
  border: 1px solid rgba(43,127,157,.12) !important;
  box-shadow: var(--shadow-soft) !important;
  text-align: center !important;
  position: relative;
  overflow: hidden;
  transform: none !important;
}
.tnt-price-card:hover { transform: translateY(-5px) !important; box-shadow: var(--shadow-hover) !important; border-color: rgba(43,127,157,.22) !important; }
.tnt-price-card.is-featured,
.tnt-price-card.is-featured:hover { transform: none !important; border: 2px solid rgba(219,164,38,.72) !important; box-shadow: 0 22px 58px rgba(219,164,38,.14) !important; }
.tnt-price-card::before { opacity: .55 !important; }
.tnt-plan-icon {
  width: 60px !important;
  height: 60px !important;
  min-height: 60px !important;
  margin: 0 auto 4px !important;
  border-radius: 20px !important;
  display: grid !important;
  place-items: center !important;
  color: var(--gold) !important;
  background: rgba(219,164,38,.10) !important;
  border: 1px solid rgba(219,164,38,.22) !important;
  font-size: 25px !important;
}
.tnt-price-card h3 { color: var(--primary-dark) !important; font-size: clamp(21px, 2vw, 25px) !important; line-height: 1.35 !important; margin: 0 !important; font-weight: 900 !important; }
.tnt-price-card strong { color: var(--primary-dark) !important; font-size: clamp(38px, 4vw, 50px) !important; line-height: 1.05 !important; margin: 2px 0 0 !important; font-weight: 900 !important; background: transparent !important; }
.tnt-price-card p { color: var(--muted) !important; font-size: 16px !important; line-height: 1.7 !important; margin: 0 !important; font-weight: 700 !important; background: transparent !important; }
.tnt-price-card ul { flex: 1 1 auto !important; display: grid !important; align-content: start !important; gap: 9px !important; margin: 4px 0 8px !important; padding: 0 !important; background: transparent !important; }
.tnt-price-card li { display: flex !important; align-items: flex-start !important; justify-content: flex-start !important; gap: 9px !important; color: #4B5563 !important; text-align: right !important; font-size: 15px !important; line-height: 1.8 !important; margin: 0 !important; background: transparent !important; }
.tnt-price-card li i { color: var(--gold) !important; background: transparent !important; box-shadow: none !important; margin-top: 7px !important; }
.tnt-price-card a {
  margin-top: auto !important;
  height: 52px !important;
  min-height: 52px !important;
  width: 100% !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, var(--primary), var(--primary-dark)) !important;
  color: #fff !important;
  font-weight: 900 !important;
  font-size: 16px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  box-shadow: 0 14px 30px rgba(43,127,157,.22) !important;
}
.tnt-price-card a:hover { background: linear-gradient(135deg, var(--primary-dark), var(--primary)) !important; transform: translateY(-2px); }
.tnt-price-card.is-featured a { background: linear-gradient(135deg, var(--gold), #C88E18) !important; color: #fff !important; box-shadow: 0 14px 30px rgba(219,164,38,.24) !important; }
.tnt-ribbon {
  top: 16px !important;
  left: 16px !important;
  right: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 7px 13px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #FFF4C7, #DBA426) !important;
  color: var(--primary-dark) !important;
  border: 1px solid rgba(219,164,38,.45) !important;
  font-family: "Cairo", sans-serif !important;
  font-weight: 900 !important;
  box-shadow: 0 10px 20px rgba(219,164,38,.17) !important;
  transform: none !important;
  white-space: nowrap !important;
  z-index: 3;
}
/* Equal height grids for journey cards and similar blocks */
.tnt-steps, .tnt-guide-cards, .tnt-admin-grid, .tnt-service-grid, .tnt-best-grid, .tnt-mission-grid {
  align-items: stretch !important;
}
.tnt-steps article, .tnt-guide-cards article, .tnt-admin-grid article, .tnt-service-grid article, .tnt-best-card, .tnt-mission-grid article {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}
.tnt-steps article p, .tnt-guide-cards article p, .tnt-admin-grid article p, .tnt-service-grid article p, .tnt-best-card p, .tnt-mission-grid article p { flex-grow: 1 !important; }
/* Premium official contact grid */
.tnt-contact { padding-bottom: 34px !important; }
.tnt-contact-card-lite { grid-template-columns: 1.05fr auto !important; border-radius: 32px !important; background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(245,251,253,.94)) !important; }
.tnt-premium-contact { padding-top: 54px !important; padding-bottom: 72px !important; background: linear-gradient(180deg, rgba(245,247,251,.22), rgba(255,255,255,.92)) !important; }
.tnt-contact-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
  margin-top: 26px !important;
}
.tnt-channel-card {
  min-height: 255px;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 11px;
  padding: 24px 22px;
  border-radius: 28px;
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(43,127,157,.12);
  box-shadow: var(--shadow-soft);
  transition: .25s ease;
}
.tnt-channel-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-hover); border-color: rgba(43,127,157,.23); }
.tnt-channel-icon {
  width: 58px;
  height: 58px;
  border-radius: 20px;
  display: grid;
  place-items: center;
  color: var(--primary-dark);
  background: rgba(43,127,157,.08);
  border: 1px solid rgba(43,127,157,.12);
  font-size: 26px;
}
.tnt-channel-card h3 { color: var(--primary-dark) !important; font-size: 22px !important; line-height: 1.35 !important; margin: 0 !important; }
.tnt-channel-card p { color: var(--muted) !important; font-size: 15.5px !important; line-height: 1.8 !important; margin: 0 !important; flex: 1; }
.tnt-channel-btn {
  margin-top: auto;
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  white-space: nowrap;
  border-radius: 16px;
  color: #fff !important;
  background: linear-gradient(135deg, var(--primary), var(--primary-dark));
  font-family: "Cairo", sans-serif;
  font-weight: 900;
  padding: 10px 16px;
  box-shadow: 0 12px 26px rgba(43,127,157,.18);
}
.tnt-channel-whatsapp .tnt-channel-icon { color: #128C7E; background: rgba(37,211,102,.10); }
.tnt-channel-telegram .tnt-channel-icon { color: #229ED9; background: rgba(34,158,217,.10); }
.tnt-channel-messenger .tnt-channel-icon, .tnt-channel-facebook .tnt-channel-icon { color: #1877F2; background: rgba(24,119,242,.10); }
.tnt-channel-youtube .tnt-channel-icon { color: #FF0000; background: rgba(255,0,0,.09); }
.tnt-channel-instagram .tnt-channel-icon { color: #C13584; background: rgba(193,53,132,.10); }
.tnt-channel-tiktok .tnt-channel-icon { color: #111827; background: rgba(17,24,39,.08); }
.tnt-channel-school .tnt-channel-icon { color: var(--gold); background: rgba(219,164,38,.11); }
.tnt-final-cta {
  margin-top: 34px;
  padding: clamp(26px, 5vw, 44px);
  border-radius: 34px;
  background: linear-gradient(135deg, rgba(31,109,132,.97), rgba(43,127,157,.92));
  color: #fff;
  text-align: center;
  box-shadow: 0 26px 70px rgba(31,109,132,.18);
  position: relative;
  overflow: hidden;
}
.tnt-final-cta::before { content:""; position:absolute; inset:0; background: radial-gradient(circle at 20% 0, rgba(219,164,38,.22), transparent 32%); pointer-events:none; }
.tnt-final-cta > * { position: relative; z-index: 1; }
.tnt-final-cta span { color: #FFE5A3; font-weight: 900; font-family: "Cairo", sans-serif; }
.tnt-final-cta h2 { color: #fff !important; font-size: clamp(28px, 4vw, 42px) !important; margin: 6px 0 8px; }
.tnt-final-cta p { color: rgba(255,255,255,.84) !important; margin: 0 auto 20px; max-width: 620px; }
.tnt-final-cta-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; }
.tnt-floating-whatsapp { left: 18px !important; right: auto !important; bottom: 22px !important; z-index: 9997 !important; }
.tnt-back-to-top { right: 18px !important; bottom: 86px !important; left: auto !important; }
/* Footer polish */
.tnt-footer {
  margin-top: 0 !important;
  padding: 40px 0 22px !important;
  background: linear-gradient(135deg, #0E3341, #123F50) !important;
}
.tnt-footer-grid { grid-template-columns: 1.15fr 1fr 1fr !important; align-items: start !important; gap: 24px !important; }
.tnt-footer p, .tnt-footer nav a { color: rgba(255,255,255,.78) !important; }
.tnt-footer nav a { padding: 4px 0; transition: .2s ease; }
.tnt-footer nav a:hover { color: #FFE5A3 !important; transform: translateX(-3px); }
.tnt-footer-bottom { margin-top: 24px !important; padding-top: 16px !important; }
/* Contrast hardening */
:is(.tnt-price-card,.tnt-channel-card,.tnt-best-card,.tnt-steps article,.tnt-guide-cards article,.tnt-service-grid article,.tnt-mission-grid article) :where(h1,h2,h3,h4,h5,h6) { color: var(--primary-dark) !important; background: transparent !important; }
:is(.tnt-price-card,.tnt-channel-card,.tnt-best-card,.tnt-steps article,.tnt-guide-cards article,.tnt-service-grid article,.tnt-mission-grid article) :where(p,span,li) { background: transparent !important; }
@keyframes tntSoftUp { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@media (max-width: 1024px) {
  .tnt-price-grid, .pricing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .tnt-footer-grid { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 760px) {
  .tnt-container { width: min(100% - 28px, 1200px) !important; }
  .tnt-section { padding-block: 58px !important; }
  .tnt-hero-copy h1 { font-size: clamp(34px, 10vw, 42px) !important; line-height: 1.18 !important; }
  .tnt-hero-copy, .tnt-section-head { text-align: center !important; }
  .tnt-hero-actions, .tnt-about-points, .tnt-final-cta-actions { justify-content: center !important; }
  .tnt-hero-actions .tnt-btn, .tnt-final-cta-actions .tnt-btn, .tnt-contact-actions .tnt-btn { width: 100%; max-width: 330px; }
  .tnt-price-grid, .pricing-grid, .tnt-contact-grid { grid-template-columns: 1fr !important; gap: 18px !important; }
  .tnt-price-card { min-height: auto !important; padding: 25px 19px 20px !important; }
  .tnt-tabs { border-radius: 24px !important; width: 100% !important; }
  .tnt-tab { flex: 1 1 100% !important; }
  .tnt-contact-card-lite { grid-template-columns: 1fr !important; text-align: center !important; padding: 24px 18px !important; }
  .tnt-contact-actions { justify-content: center !important; }
  .tnt-footer-grid { grid-template-columns: 1fr !important; text-align: center !important; }
  .tnt-footer-logo { margin-inline: auto; }
  .tnt-footer nav { justify-items: center; }
  .tnt-footer-bottom { justify-content: center !important; text-align: center !important; }
.tnt-floating-whatsapp { left: 12px !important; bottom: 14px !important; width: 58px !important; height: 58px !important; }
  .tnt-back-to-top { right: 12px !important; bottom: 76px !important; width: 42px !important; height: 42px !important; }
}
@media (max-width: 420px) {
.tnt-channel-card { min-height: 232px; padding: 22px 18px; }
}

/* v2.5.0 final contrast override: price CTAs must beat older global card-link reset. */
.tnt-price-card > a:not(.tnt-btn):not(.tnt-login-btn),
.tnt-price-card a[href*="wa.me"]:not(.tnt-btn):not(.tnt-login-btn),
.tnt-best-card > a:not(.tnt-btn):not(.tnt-login-btn),
.tnt-best-card a[href*="wa.me"]:not(.tnt-btn):not(.tnt-login-btn) {
  background: linear-gradient(135deg, var(--primary), var(--primary-dark)) !important;
  background-color: var(--primary) !important;
  background-image: linear-gradient(135deg, var(--primary), var(--primary-dark)) !important;
  color: #ffffff !important;
  border: 0 !important;
  box-shadow: 0 14px 30px rgba(43,127,157,.22) !important;
}
.tnt-price-card.is-featured > a:not(.tnt-btn):not(.tnt-login-btn),
.tnt-price-card.is-featured a[href*="wa.me"]:not(.tnt-btn):not(.tnt-login-btn),
.tnt-best-card.is-featured > a:not(.tnt-btn):not(.tnt-login-btn),
.tnt-best-card.is-featured a[href*="wa.me"]:not(.tnt-btn):not(.tnt-login-btn) {
  background: linear-gradient(135deg, var(--gold), #B8840D) !important;
  background-color: var(--gold) !important;
  background-image: linear-gradient(135deg, var(--gold), #B8840D) !important;
  color: #ffffff !important;
}
.tnt-price-card > a:not(.tnt-btn):not(.tnt-login-btn) :where(i,span),
.tnt-price-card a[href*="wa.me"]:not(.tnt-btn):not(.tnt-login-btn) :where(i,span) {
  color: #ffffff !important;
  background: transparent !important;
}

/* =========================================================
   v2.5.0 Final WordPress Sync & SEO Cleanup
   Visual QA only — no rebuild, no identity change.
   ========================================================= */
html, body {
  overflow-x: hidden !important;
  scroll-behavior: smooth;
}
body {
  background-color: #F9FAFC !important;
}
body.islamic-bg::after {
  opacity: .03 !important;
  pointer-events: none !important;
}

/* WordPress and static footer final sync */
.tnt-footer {
  padding: 44px 0 20px !important;
  margin-top: 0 !important;
}
.tnt-footer-grid {
  align-items: start !important;
  gap: 24px !important;
}
.tnt-footer-logo {
  display: block !important;
  width: 72px !important;
  height: 72px !important;
  min-width: 72px !important;
  object-fit: contain !important;
  background: #fff !important;
  border: 1px solid rgba(219,164,38,.22) !important;
}
.tnt-footer p,
.tnt-footer nav a,
.tnt-footer-bottom {
  color: rgba(255,255,255,.78) !important;
}
.tnt-footer nav a:hover,
.tnt-footer-bottom a:hover { color: #fff !important; }

/* Header mobile sync: visible logo + clear menu button */
.tnt-navbar {
  min-width: 0 !important;
}
.tnt-brand {
  min-width: 0 !important;
  flex: 1 1 auto !important;
}
.tnt-logo {
  flex: 0 0 auto !important;
}
.tnt-mobile-toggle {
  flex: 0 0 46px !important;
  width: 46px !important;
  height: 46px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(43,127,157,.18) !important;
  background: #fff !important;
  color: var(--primary-dark) !important;
  box-shadow: 0 12px 28px rgba(31,109,132,.10) !important;
}

/* Pricing page: compact hero and clearer tabs, especially mobile */
.tnt-pricing-page .tnt-pricing-hero,
.tnt-rights-page.tnt-pricing-page .tnt-pricing-hero {
  padding-top: clamp(112px, 12vw, 144px) !important;
  padding-bottom: clamp(34px, 5vw, 54px) !important;
  min-height: auto !important;
}
.tnt-pricing-page .tnt-pricing-hero h1 {
  font-size: clamp(36px, 4.4vw, 54px) !important;
  line-height: 1.18 !important;
  margin-bottom: 10px !important;
}
.tnt-pricing-page .tnt-pricing-hero p {
  font-size: 17px !important;
  line-height: 1.8 !important;
  margin-bottom: 0 !important;
}
.tnt-pricing .tnt-tabs {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  max-width: 820px !important;
  margin-inline: auto !important;
  padding: 8px !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.82) !important;
  border: 1px solid rgba(43,127,157,.14) !important;
  box-shadow: 0 16px 40px rgba(31,109,132,.08) !important;
}
.tnt-pricing .tnt-tab {
  min-height: 48px !important;
  border-radius: 18px !important;
  white-space: nowrap !important;
  font-weight: 900 !important;
}

/* Pricing exact grid: desktop 3, tablet 2, mobile 1 */
.tnt-pricing .tnt-price-grid,
.tnt-pricing-full .tnt-price-grid,
.pricing-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
}
.tnt-price-card {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  border-radius: 28px !important;
}
.tnt-price-card ul { flex: 1 1 auto !important; }
.tnt-price-card a[href*="wa.me"] { margin-top: auto !important; }
.tnt-price-card.is-featured,
.tnt-price-card.is-featured:hover {
  transform: none !important;
}

/* Social cards are the only approved contact design */
.tnt-social-contact {
  padding-bottom: clamp(46px, 7vw, 78px) !important;
  margin-bottom: 0 !important;
}
.tnt-contact-grid {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
}
.tnt-channel-card {
  height: 100% !important;
  min-height: 250px !important;
}
.tnt-channel-btn {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.tnt-floating-whatsapp {
  left: 18px !important;
  right: auto !important;
  bottom: 22px !important;
  z-index: 9997 !important;
}

@media (max-width: 1024px) {
  .tnt-pricing .tnt-price-grid,
  .tnt-pricing-full .tnt-price-grid,
  .pricing-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .tnt-brand-text small { display: none !important; }
  .tnt-brand-text b { font-size: 14px !important; line-height: 1.4 !important; }
  .tnt-logo { width: 46px !important; height: 46px !important; }

  .tnt-pricing-page .tnt-pricing-hero,
  .tnt-rights-page.tnt-pricing-page .tnt-pricing-hero {
    padding-top: 90px !important;
    padding-bottom: 24px !important;
  }
  .tnt-pricing-page .tnt-pricing-hero h1 {
    font-size: clamp(30px, 9vw, 38px) !important;
    line-height: 1.22 !important;
  }
  .tnt-pricing-page .tnt-pricing-hero p {
    font-size: 15.5px !important;
  }
  .tnt-pricing .tnt-tabs {
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
    gap: 8px !important;
    padding: 7px !important;
    margin-bottom: 20px !important;
  }
  .tnt-pricing .tnt-tab {
    min-height: 46px !important;
    font-size: 14px !important;
  }
  .tnt-pricing .tnt-price-grid,
  .tnt-pricing-full .tnt-price-grid,
  .pricing-grid,
  .tnt-contact-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
  .tnt-price-card {
    min-height: auto !important;
    padding: 24px 18px 20px !important;
  }
  .tnt-social-contact { padding-bottom: 54px !important; }
  .tnt-channel-card { min-height: auto !important; }
.tnt-floating-whatsapp {
    left: 12px !important;
    bottom: 14px !important;
    width: 58px !important;
    height: 58px !important;
  }
  .tnt-footer { padding-bottom: 92px !important; }
}


/* =========================================================
   v2.5.0 — Real Visitor Counter + Production Sync polish
   ========================================================= */
.tnt-real-counter {
  position: fixed;
  right: max(18px, env(safe-area-inset-right));
  bottom: max(18px, env(safe-area-inset-bottom));
  z-index: 860;
  width: min(360px, calc(100vw - 112px));
  color: var(--text, #1F2937);
  pointer-events: none;
}
.tnt-real-counter[hidden] { display: none !important; }
.tnt-real-counter-card {
  direction: rtl;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(43,127,157,.14);
  box-shadow: 0 18px 45px rgba(31,109,132,.13);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-radius: 22px;
  padding: 13px 14px;
  display: grid;
  grid-template-columns: 40px 1fr;
  gap: 11px;
  align-items: center;
}
.tnt-real-counter-icon {
  width: 40px;
  height: 40px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, rgba(43,127,157,.12), rgba(219,164,38,.16));
  color: var(--primary-dark, #1F6D84);
  font-size: 18px;
}
.tnt-real-counter-trust {
  margin: 0 0 6px;
  font-family: "Cairo", sans-serif;
  font-weight: 800;
  font-size: 13px;
  color: var(--primary-dark, #1F6D84);
  line-height: 1.55;
}
.tnt-real-counter-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}
.tnt-real-counter-stats span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 24px;
  padding: 4px 9px;
  border-radius: 999px;
  background: rgba(43,127,157,.08) !important;
  color: #334155 !important;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.tnt-real-counter-stats b {
  color: var(--primary-dark, #1F6D84);
  font-weight: 900;
}
.tnt-floating-whatsapp { z-index: 900; }
@media (max-width: 680px) {
  .tnt-real-counter {
    right: max(12px, env(safe-area-inset-right));
    left: auto;
    bottom: calc(max(12px, env(safe-area-inset-bottom)) + 68px);
    width: min(320px, calc(100vw - 24px));
  }
  .tnt-real-counter-card {
    border-radius: 18px;
    padding: 10px 11px;
    grid-template-columns: 34px 1fr;
  }
  .tnt-real-counter-icon { width: 34px; height: 34px; border-radius: 13px; font-size: 15px; }
  .tnt-real-counter-trust { font-size: 12px; margin-bottom: 5px; }
  .tnt-real-counter-stats { gap: 5px; }
  .tnt-real-counter-stats span { font-size: 11px; min-height: 22px; padding: 3px 7px; }
}
@media (max-width: 420px) {
  .tnt-real-counter { width: calc(100vw - 22px); }
  .tnt-real-counter-stats span[data-stat="interest"] { flex-basis: 100%; justify-content: center; }
}


/* =========================================================
   v2.7.1 — Dynamic WordPress Content + Mobile UX Upgrade
   ========================================================= */
:root{--tnt-card-border:rgba(43,127,157,.12)}
.tnt-system-hero{padding-block:clamp(42px,6vw,84px)}
.tnt-hero-layout{gap:clamp(22px,4vw,48px)}
.tnt-hero-art .tnt-arch-frame{max-width:440px;margin-inline:auto;aspect-ratio:1/1;display:grid;place-items:center;padding:18px;background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(234,246,251,.72));border-radius:32px;box-shadow:0 22px 55px rgba(31,109,132,.12)}
.tnt-hero-art .tnt-arch-frame img{width:100%;height:100%;object-fit:contain;object-position:center;border-radius:24px}
.tnt-hero-actions{align-items:stretch}.tnt-hero-actions .tnt-btn{min-height:52px}.tnt-stat-row{grid-template-columns:repeat(3,minmax(0,1fr))}.tnt-stat-row div{min-height:84px}
.tnt-news-ticker{position:relative;z-index:2;margin-top:-18px;padding:0 0 10px}.tnt-news-ticker-inner{display:flex;align-items:center;gap:16px;background:rgba(255,255,255,.9);border:1px solid var(--tnt-card-border);box-shadow:var(--shadow-soft);border-radius:999px;padding:10px 18px;overflow:hidden}.tnt-news-ticker strong{font-family:Cairo,sans-serif;color:var(--primary-dark);white-space:nowrap}.tnt-news-ticker-track{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none;white-space:nowrap}.tnt-news-ticker-track::-webkit-scrollbar{display:none}.tnt-news-ticker-track a{display:inline-flex;align-items:center;color:var(--text);font-weight:800;text-decoration:none;background:rgba(43,127,157,.06);border-radius:999px;padding:7px 12px;transition:.25s}.tnt-news-ticker-track a:hover{background:rgba(219,164,38,.16);color:var(--primary-dark)}
.tnt-latest-posts,.tnt-article-slider-section,.tnt-blog-archive{background:linear-gradient(180deg,rgba(255,255,255,.52),rgba(245,247,251,.88))}.tnt-articles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}.tnt-article-card{display:flex;flex-direction:column;min-height:100%;background:#fff;border:1px solid var(--tnt-card-border);border-radius:28px;overflow:hidden;box-shadow:0 16px 42px rgba(31,109,132,.09);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.tnt-article-card:hover{transform:translateY(-5px);box-shadow:0 24px 58px rgba(31,109,132,.14);border-color:rgba(219,164,38,.38)}.tnt-article-thumb{display:block;aspect-ratio:16/10;background:#eef7fb;overflow:hidden}.tnt-article-thumb img{width:100%;height:100%;object-fit:cover;display:block}.tnt-article-body{display:flex;flex-direction:column;gap:12px;flex:1;padding:20px}.tnt-article-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:13px;font-weight:800}.tnt-article-meta i{color:var(--gold)}.tnt-article-card h3{font-size:clamp(20px,2vw,24px);line-height:1.45;margin:0}.tnt-article-card h3 a{color:var(--primary-dark);text-decoration:none}.tnt-article-card p{color:#4b5563;line-height:1.85;margin:0;flex-grow:1}.tnt-read-more{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border-radius:16px;background:var(--primary);color:#fff!important;text-decoration:none;font-family:Cairo,sans-serif;font-weight:900}.tnt-read-more:hover{background:var(--primary-dark);transform:translateY(-2px)}
.tnt-slider-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.tnt-slider-controls{display:flex;gap:10px}.tnt-slider-controls button{width:46px;height:46px;border-radius:16px;border:1px solid rgba(43,127,157,.18);background:#fff;color:var(--primary-dark);box-shadow:0 10px 22px rgba(31,109,132,.08);cursor:pointer;transition:.25s}.tnt-slider-controls button:hover{background:var(--gold);color:#fff;transform:translateY(-2px)}.tnt-article-slider{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 2px 22px;scrollbar-width:thin}.tnt-article-slider .tnt-article-card{scroll-snap-align:start}
.tnt-inner-hero{padding:clamp(42px,7vw,92px) 0;background:linear-gradient(135deg,var(--primary-dark),var(--primary));color:#fff;text-align:center;position:relative;overflow:hidden}.tnt-inner-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(219,164,38,.22),transparent 28%),radial-gradient(circle at 80% 10%,rgba(255,255,255,.12),transparent 30%);pointer-events:none}.tnt-inner-hero .tnt-container{position:relative}.tnt-inner-hero .tnt-section-label{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.22)}.tnt-inner-hero h1{font-size:clamp(34px,5vw,58px);color:#fff;margin:12px 0}.tnt-inner-hero p{max-width:760px;margin:0 auto;color:rgba(255,255,255,.86);font-size:18px;line-height:1.9}.tnt-blog-filter{display:grid;grid-template-columns:1fr 260px auto;gap:14px;align-items:end;background:#fff;border:1px solid var(--tnt-card-border);border-radius:26px;padding:18px;box-shadow:var(--shadow-soft);margin-bottom:20px}.tnt-blog-filter label{display:flex;flex-direction:column;gap:7px;color:var(--primary-dark);font-weight:900}.tnt-blog-filter input,.tnt-blog-filter select{height:50px;border:1px solid rgba(43,127,157,.18);border-radius:16px;padding:0 14px;font-family:Tajawal,sans-serif;font-size:16px;background:#f9fafc;color:var(--text)}.tnt-category-chips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}.tnt-category-chips a{border-radius:999px;padding:8px 14px;background:rgba(43,127,157,.08);color:var(--primary-dark);font-weight:900;text-decoration:none}.tnt-pagination{margin-top:26px;text-align:center}.tnt-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;margin:4px;border-radius:13px;background:#fff;color:var(--primary-dark);border:1px solid rgba(43,127,157,.14);text-decoration:none;font-weight:900}.tnt-pagination .current{background:var(--primary);color:#fff}.tnt-empty-archive,.tnt-empty-posts .tnt-section-head{background:#fff;border:1px solid var(--tnt-card-border);border-radius:28px;box-shadow:var(--shadow-soft);padding:30px}
.tnt-single-post-main{padding-block:50px}.tnt-single-post-card{max-width:920px;margin:0 auto;background:#fff;border-radius:30px;border:1px solid var(--tnt-card-border);box-shadow:var(--shadow-soft);padding:clamp(22px,4vw,44px)}.tnt-single-header{text-align:center;margin-bottom:24px}.tnt-single-header h1{font-size:clamp(32px,4.5vw,54px);line-height:1.35;color:var(--primary-dark);margin:12px 0}.tnt-single-meta{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;color:var(--muted);font-weight:800}.tnt-single-thumb{margin:0 0 26px;border-radius:26px;overflow:hidden;background:#eef7fb}.tnt-single-thumb img{width:100%;height:auto;display:block}.tnt-single-content{font-size:18px;line-height:2.05;color:#334155}.tnt-single-content h2,.tnt-single-content h3{color:var(--primary-dark);font-family:Cairo,sans-serif}
@media (max-width:1024px){.tnt-articles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tnt-article-slider{grid-auto-columns:calc((100% - 24px)/2)}.tnt-blog-filter{grid-template-columns:1fr 1fr}.tnt-blog-filter button{grid-column:1/-1}.tnt-system-hero{padding-block:40px}.tnt-hero-art .tnt-arch-frame{max-width:360px}}
@media (max-width:700px){.tnt-system-hero{padding-block:24px 30px}.tnt-hero-layout{gap:16px}.tnt-hero-copy h1{font-size:clamp(34px,10vw,42px);line-height:1.18}.tnt-hero-text{font-size:16px;line-height:1.75}.tnt-hero-art{order:2}.tnt-hero-copy{order:1}.tnt-hero-art .tnt-arch-frame{max-width:240px;padding:10px;border-radius:24px}.tnt-float{display:none}.tnt-hero-actions{display:grid;grid-template-columns:1fr;gap:10px}.tnt-hero-actions .tnt-btn{min-height:48px}.tnt-hero-actions .tnt-btn-outline{min-height:42px;font-size:14px}.tnt-stat-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tnt-stat-row div{min-height:72px;padding:10px 6px}.tnt-stat-row b{font-size:18px}.tnt-stat-row span{font-size:12px}.tnt-news-ticker{margin-top:0}.tnt-news-ticker-inner{border-radius:20px;align-items:flex-start;flex-direction:column;padding:12px}.tnt-news-ticker-track{width:100%}.tnt-articles-grid,.tnt-blog-grid{grid-template-columns:1fr}.tnt-article-slider{grid-auto-columns:88%;gap:14px}.tnt-slider-head{align-items:flex-start;flex-direction:column}.tnt-slider-controls{align-self:flex-start}.tnt-blog-filter{grid-template-columns:1fr;padding:14px}.tnt-inner-hero{padding:34px 0}.tnt-inner-hero h1{font-size:32px}.tnt-inner-hero p{font-size:16px}.tnt-single-post-card{border-radius:22px;padding:18px}.tnt-single-content{font-size:16px}.tnt-floating-whatsapp{bottom:max(18px,env(safe-area-inset-bottom));inset-inline-start:16px}.tnt-real-counter{display:none!important}.tnt-pricing-page .tnt-inner-hero,.tnt-pricing-hero{padding-block:28px!important}.tnt-price-tabs{position:sticky;top:72px;z-index:5;background:rgba(245,247,251,.92);backdrop-filter:blur(10px);padding:8px;border-radius:18px}.tnt-contact-grid{grid-template-columns:1fr!important}.tnt-channel-card{min-height:auto;padding:18px}.tnt-final-cta{padding:24px 18px}.tnt-footer{padding-top:34px}.tnt-footer-grid{gap:18px}.tnt-footer-logo{max-width:86px}}


/* =========================================================
   v2.7.1 — Fixed Visitor Stats + News Slider + Mobile Final Polish
   ========================================================= */
html, body { overflow-x: hidden; }
.tnt-menu li a[href*="articles"], .tnt-menu li a[href*="blog"] { display: none !important; }
.tnt-system-hero { padding-block: clamp(34px, 5vw, 66px) !important; }
.tnt-hero-layout { align-items: center; }
.tnt-hero-copy { display: flex; flex-direction: column; gap: 16px; }
.tnt-hero-copy h1 { margin-block: 4px 0; }
.tnt-hero-text { margin: 0; max-width: 720px; color: #334155; }
.tnt-hero-art .tnt-arch-frame { max-width: 390px !important; }
.tnt-hero-actions { display: flex !important; flex-wrap: wrap; gap: 12px !important; margin-top: 2px; }
.tnt-hero-actions .tnt-btn { flex: 0 1 auto; min-height: 50px; }

.tnt-hero-counter.tnt-real-counter,
.tnt-real-counter:not(.tnt-floating-counter) {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  max-width: 720px;
  margin: 0;
  z-index: 1;
  display: block;
}
.tnt-hero-counter .tnt-real-counter-card {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 13px;
  align-items: center;
  width: 100%;
  border-radius: 24px;
  padding: 14px 16px;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(43,127,157,.14);
  box-shadow: 0 14px 34px rgba(31,109,132,.09);
  backdrop-filter: blur(10px);
}
.tnt-hero-counter .tnt-real-counter-icon { width: 48px; height: 48px; border-radius: 17px; display: grid; place-items: center; color: #fff; background: linear-gradient(135deg,var(--primary),var(--primary-dark)); }
.tnt-hero-counter .tnt-real-counter-trust { margin: 0 0 8px; color: var(--primary-dark); font-family: Cairo,sans-serif; font-weight: 900; font-size: 14px; }
.tnt-hero-counter .tnt-real-counter-stats { display: flex; flex-wrap: wrap; gap: 8px; }
.tnt-hero-counter .tnt-real-counter-stats span { display: inline-flex; align-items: center; gap: 5px; background: rgba(43,127,157,.07); color: #334155; border-radius: 999px; padding: 6px 10px; font-size: 12px; font-weight: 800; }
.tnt-hero-counter .tnt-real-counter-stats b { color: var(--primary-dark); font-family: Cairo,sans-serif; }

.tnt-news-ticker { margin: -6px 0 0 !important; padding: 0 !important; }
.tnt-news-ticker-inner { min-height: 48px; padding: 8px 14px !important; border-radius: 18px !important; box-shadow: 0 10px 24px rgba(31,109,132,.07) !important; }
.tnt-news-ticker strong { font-size: 14px; }
.tnt-news-ticker-track a { padding: 6px 11px !important; font-size: 13px; }

.tnt-latest-news-slider { padding-top: clamp(42px, 6vw, 70px); }
.tnt-latest-news-slider .tnt-section-head { margin-bottom: 18px; }
.tnt-article-slider { cursor: grab; user-select: none; scroll-behavior: smooth; }
.tnt-article-slider.is-dragging { cursor: grabbing; scroll-behavior: auto; }
.tnt-article-slider .tnt-article-card { height: 100%; }
.tnt-article-card { min-width: 0; }
.tnt-article-card h3 { min-height: 68px; }
.tnt-article-body { min-height: 252px; }
.tnt-article-card p { min-height: 72px; }

.tnt-pricing-page .tnt-pricing-hero,
.tnt-pricing-page .tnt-inner-hero,
.tnt-rights-page.tnt-pricing-page .tnt-pricing-hero { padding-block: clamp(34px, 5vw, 58px) !important; }
.tnt-pricing-page .tnt-pricing-hero h1 { font-size: clamp(32px, 4.6vw, 48px) !important; margin: 8px 0 8px !important; }
.tnt-pricing-page .tnt-pricing-hero p { font-size: 16px !important; line-height: 1.75 !important; }
.tnt-price-tabs { gap: 10px; margin-bottom: 16px !important; }
.tnt-price-tabs .tnt-tab { min-height: 48px; }
.tnt-price-card { scroll-margin-top: 110px; }

.tnt-floating-whatsapp { z-index: 50; bottom: max(22px, env(safe-area-inset-bottom)); }
.tnt-footer { padding-top: 36px !important; padding-bottom: 18px; }
.tnt-footer-grid { align-items: start; }
.tnt-footer-logo { background: #fff; border-radius: 18px; padding: 4px; }

@media (max-width: 1024px) {
  .tnt-article-slider { grid-auto-columns: calc((100% - 18px)/2) !important; gap: 18px !important; }
  .tnt-hero-art .tnt-arch-frame { max-width: 310px !important; }
}
@media (max-width: 700px) {
  .tnt-system-hero { padding-block: 18px 24px !important; }
  .tnt-hero-layout { gap: 12px !important; }
  .tnt-hero-copy { gap: 10px; }
  .tnt-eyebrow { font-size: 12px; padding: 6px 11px; }
  .tnt-hero-copy h1 { font-size: clamp(30px, 9vw, 38px) !important; line-height: 1.12 !important; }
  .tnt-hero-text { font-size: 15px !important; line-height: 1.65 !important; }
  .tnt-hero-art .tnt-arch-frame { max-width: 184px !important; padding: 8px !important; border-radius: 22px !important; }
  .tnt-hero-actions { display: grid !important; grid-template-columns: 1fr; gap: 8px !important; }
  .tnt-hero-actions .tnt-btn { min-height: 46px !important; padding: 10px 15px !important; font-size: 14px !important; }
  .tnt-hero-actions .tnt-btn-outline { min-height: 40px !important; font-size: 13px !important; }
  .tnt-stat-row { gap: 7px !important; }
  .tnt-stat-row div { min-height: 62px !important; padding: 8px 5px !important; border-radius: 16px !important; }
  .tnt-stat-row b { font-size: 16px !important; }
  .tnt-stat-row span { font-size: 11px !important; line-height: 1.35; }
  .tnt-hero-counter.tnt-real-counter { display: block !important; max-width: none; }
  .tnt-hero-counter .tnt-real-counter-card { grid-template-columns: 36px 1fr; gap: 9px; padding: 10px 11px; border-radius: 18px; }
  .tnt-hero-counter .tnt-real-counter-icon { width: 36px; height: 36px; border-radius: 13px; font-size: 14px; }
  .tnt-hero-counter .tnt-real-counter-trust { font-size: 12px; margin-bottom: 6px; }
  .tnt-hero-counter .tnt-real-counter-stats { gap: 5px; }
  .tnt-hero-counter .tnt-real-counter-stats span { font-size: 11px; padding: 4px 7px; }
  .tnt-news-ticker-inner { border-radius: 16px !important; padding: 9px !important; }
  .tnt-news-ticker strong { font-size: 13px; }
  .tnt-news-ticker-track a { font-size: 12px; }
  .tnt-article-slider { grid-auto-columns: 92% !important; gap: 12px !important; padding-bottom: 14px !important; }
  .tnt-article-body { min-height: 230px; padding: 16px; }
  .tnt-article-card h3 { min-height: auto; font-size: 19px; }
  .tnt-article-card p { min-height: 62px; font-size: 14px; }
  .tnt-slider-controls button { width: 40px; height: 40px; border-radius: 14px; }
  .tnt-section { padding-block: 42px; }
  .tnt-pricing-page .tnt-inner-hero,
  .tnt-pricing-page .tnt-pricing-hero { padding-block: 22px 24px !important; }
  .tnt-pricing-page .tnt-pricing-hero h1 { font-size: 30px !important; }
  .tnt-pricing-page .tnt-pricing-hero p { font-size: 14px !important; line-height: 1.6 !important; }
  .tnt-price-tabs { top: 64px !important; padding: 6px !important; border-radius: 16px !important; gap: 6px; }
  .tnt-price-tabs .tnt-tab { min-height: 40px !important; padding: 7px 10px !important; font-size: 12px !important; }
  .tnt-tab-panel.is-active { padding-top: 8px; }
  .tnt-floating-whatsapp { bottom: max(14px, env(safe-area-inset-bottom)); inset-inline-start: 12px; width: 50px; height: 50px; }
  .tnt-contact-grid { gap: 12px !important; }
  .tnt-channel-card { padding: 15px !important; border-radius: 20px !important; }
  .tnt-channel-icon { width: 44px !important; height: 44px !important; font-size: 18px !important; }
  .tnt-final-cta { padding: 20px 14px !important; }
  .tnt-footer { padding-top: 28px !important; }
  .tnt-footer-grid { gap: 14px !important; }
  .tnt-footer-bottom { gap: 8px !important; font-size: 12px !important; }
}
