/* ════════════════════════════════════
   TOKENS
════════════════════════════════════ */
:root {
  --black: #080808;
  --black2: #0f0f0f;
  --black3: #161616;
  --black4: #1e1e1e;
  --black5: #252525;
  --red: #ff2d55;
  --red2: #e8213d;
  --red3: #ff5577;
  --red-glow: rgba(255, 45, 85, 0.18);
  --red-glow2: rgba(255, 45, 85, 0.08);
  --white: #ffffff;
  --white2: rgba(255, 255, 255, 0.85);
  --white3: rgba(255, 255, 255, 0.5);
  --white4: rgba(255, 255, 255, 0.2);
  --white5: rgba(255, 255, 255, 0.07);
  --border: rgba(255, 255, 255, 0.08);
  --border2: rgba(255, 45, 85, 0.25);
  --glass: rgba(255, 255, 255, 0.04);
  --shadow-red: 0 0 60px rgba(255, 45, 85, 0.25);
  --shadow-card: 0 20px 60px rgba(0, 0, 0, 0.6);
  --radius: 18px;
  --radius-sm: 10px;
  --trans: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  --trans-fast: all 0.18s ease;
}

/* ════════════════════════════════════
   BASE
════════════════════════════════════ */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  font-family: "Outfit", sans-serif;
  background: var(--black);
  color: var(--white);
  overflow-x: hidden;
  cursor: default;
}
::-webkit-scrollbar {
  width: 5px;
}
::-webkit-scrollbar-track {
  background: var(--black2);
}
::-webkit-scrollbar-thumb {
  background: var(--red2);
  border-radius: 3px;
}

/* Custom cursor */
.cursor {
  position: fixed;
  width: 10px;
  height: 10px;
  background: var(--red);
  border-radius: 50%;
  pointer-events: none;
  z-index: 9999;
  transform: translate(-50%, -50%);
  transition:
    transform 0.1s,
    width 0.3s,
    height 0.3s,
    opacity 0.3s;
  mix-blend-mode: screen;
}
.cursor-ring {
  position: fixed;
  width: 36px;
  height: 36px;
  border: 1.5px solid rgba(255, 45, 85, 0.5);
  border-radius: 50%;
  pointer-events: none;
  z-index: 9998;
  transform: translate(-50%, -50%);
  transition:
    transform 0.08s,
    width 0.4s,
    height 0.4s;
}

/* ════════════════════════════════════
   NOISE OVERLAY
════════════════════════════════════ */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");
  pointer-events: none;
  z-index: 1;
  opacity: 0.4;
}

/* ════════════════════════════════════
   ANIMATED BG GRID
════════════════════════════════════ */
.bg-grid {
  position: fixed;
  inset: 0;
  z-index: 0;
  background-image:
    linear-gradient(rgba(255, 45, 85, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 45, 85, 0.03) 1px, transparent 1px);
  background-size: 60px 60px;
  animation: gridShift 20s linear infinite;
}
@keyframes gridShift {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(60px);
  }
}

/* ════════════════════════════════════
   HEADER
════════════════════════════════════ */
header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 6%;
  background: rgba(8, 8, 8, 0.7);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--border);
  transition: var(--trans);
}
header.scrolled {
  background: rgba(8, 8, 8, 0.95);
  box-shadow: 0 4px 40px rgba(0, 0, 0, 0.6);
}

.logo {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}
.logo-icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: var(--red);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  box-shadow: 0 0 20px rgba(255, 45, 85, 0.5);
  position: relative;
  overflow: hidden;
}
.logo-icon::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.2), transparent);
}
.logo-text {
  font-family: "Bebas Neue", sans-serif;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  color: var(--white);
}
.logo-text span {
  color: var(--red);
}

.logo-img {
  width: 140px;
}

nav {
  display: flex;
  align-items: center;
  gap: 2rem;
}
nav a {
  font-size: 0.85rem;
  font-weight: 500;
  color: var(--white3);
  text-decoration: none;
  letter-spacing: 0.04em;
  transition: color 0.25s;
}
nav a:hover {
  color: var(--white);
}

.header-cta {
  display: flex;
  align-items: center;
  gap: 12px;
}

.btn-red {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 22px;
  background: var(--red);
  color: white;
  border: none;
  border-radius: 50px;
  font-family: "Outfit", sans-serif;
  font-size: 0.85rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  cursor: pointer;
  transition: var(--trans);
  box-shadow: 0 4px 20px rgba(255, 45, 85, 0.4);
  position: relative;
  overflow: hidden;
}
.btn-red::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.15), transparent);
  opacity: 0;
  transition: opacity 0.3s;
}
.btn-red:hover {
  background: var(--red2);
  transform: translateY(-2px);
  box-shadow: 0 8px 30px rgba(255, 45, 85, 0.5);
}
.btn-red:hover::before {
  opacity: 1;
}
.btn-red:active {
  transform: translateY(0);
}

.hamburger {
  display: none;
  flex-direction: column;
  gap: 5px;
  cursor: pointer;
  padding: 4px;
}
.hamburger span {
  display: block;
  width: 22px;
  height: 2px;
  background: var(--white);
  border-radius: 2px;
  transition: var(--trans);
}

/* ════════════════════════════════════
   HERO
════════════════════════════════════ */
.hero {
  min-height: 100vh;
  padding: 140px 6% 80px;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 2;
  overflow: hidden;
}

/* Red orb glow */
.hero::before {
  content: "";
  position: absolute;
  width: 700px;
  height: 700px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    rgba(255, 45, 85, 0.12) 0%,
    transparent 70%
  );
  top: -200px;
  right: -100px;
  animation: orbFloat 8s ease-in-out infinite;
  pointer-events: none;
}
.hero::after {
  content: "";
  position: absolute;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    rgba(255, 45, 85, 0.06) 0%,
    transparent 70%
  );
  bottom: -100px;
  left: -100px;
  animation: orbFloat 10s ease-in-out infinite reverse;
  pointer-events: none;
}
@keyframes orbFloat {
  0%,
  100% {
    transform: translate(0, 0) scale(1);
  }
  33% {
    transform: translate(30px, -20px) scale(1.05);
  }
  66% {
    transform: translate(-20px, 30px) scale(0.97);
  }
}

.hero-inner {
  max-width: 1200px;
  margin: 0 auto;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
}

.hero-content {
  /* animation removed: causes CLS via opacity fill-mode */
}
@keyframes heroIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255, 45, 85, 0.1);
  border: 1px solid rgba(255, 45, 85, 0.3);
  border-radius: 50px;
  padding: 6px 16px;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--red3);
  margin-bottom: 1.5rem;
}
.badge-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--red);
  box-shadow: 0 0 6px var(--red);
  animation: pulse 2s infinite;
}
@keyframes pulse {
  0%,
  100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.5;
    transform: scale(1.5);
  }
}

.hero-title {
  font-family: "Bebas Neue", sans-serif;
  font-size: clamp(3rem, 7vw, 6rem);
  line-height: 0.95;
  letter-spacing: 0.02em;
  margin-bottom: 1.5rem;
}
.hero-title .red {
  color: var(--red);
  text-shadow: 0 0 40px rgba(255, 45, 85, 0.5);
}
.hero-title .outline {
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.3);
  color: transparent;
}

.hero-desc {
  font-size: 1.05rem;
  font-weight: 300;
  color: var(--white3);
  line-height: 1.7;
  max-width: 480px;
  margin-bottom: 2.5rem;
}

/* Download input */
.download-form {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 6px;
  display: flex;
  gap: 8px;
  transition: var(--trans);
  box-shadow: 0 0 0 0 rgba(255, 45, 85, 0);
}
.download-form:focus-within {
  border-color: rgba(255, 45, 85, 0.4);
  box-shadow:
    0 0 0 4px rgba(255, 45, 85, 0.08),
    0 0 40px rgba(255, 45, 85, 0.15);
  background: rgba(255, 255, 255, 0.06);
}

.url-input {
  flex: 1;
  background: none;
  border: none;
  outline: none;
  padding: 14px 18px;
  font-family: "Outfit", sans-serif;
  font-size: 0.9rem;
  font-weight: 400;
  color: var(--white);
  min-width: 0;
}
.url-input::placeholder {
  color: var(--white4);
}

.paste-btn {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  border-radius: 12px;
  background: var(--white5);
  border: none;
  color: var(--white3);
  cursor: pointer;
  font-family: "Outfit", sans-serif;
  font-size: 0.78rem;
  font-weight: 500;
  transition: var(--trans-fast);
  flex-shrink: 0;
  white-space: nowrap;
}
.paste-btn:hover {
  background: rgba(255, 255, 255, 0.1);
  color: var(--white);
}

.download-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 14px 26px;
  border-radius: 14px;
  background: var(--red);
  border: none;
  color: white;
  cursor: pointer;
  font-family: "Outfit", sans-serif;
  font-size: 0.9rem;
  font-weight: 600;
  transition: var(--trans);
  flex-shrink: 0;
  white-space: nowrap;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(255, 45, 85, 0.4);
}
.download-btn::after {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.15),
    transparent
  );
  transition: left 0.5s;
}
.download-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 30px rgba(255, 45, 85, 0.5);
}
.download-btn:hover::after {
  left: 100%;
}

.hero-sub {
  margin-top: 1.2rem;
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.hero-sub-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 0.78rem;
  color: var(--white3);
  font-weight: 500;
}
.check-icon {
  color: var(--red);
  font-size: 0.85rem;
}

/* ════════════════════════════════════
   HERO VISUAL (phone mockup)
════════════════════════════════════ */
.hero-visual {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  /* animation removed: causes CLS via opacity fill-mode */
}

.phone-mockup {
  width: 260px;
  background: var(--black3);
  border-radius: 40px;
  border: 1.5px solid rgba(255, 255, 255, 0.1);
  padding: 12px;
  box-shadow:
    0 40px 80px rgba(0, 0, 0, 0.8),
    0 0 0 1px rgba(255, 255, 255, 0.04),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
  position: relative;
  animation: phoneFloat 6s ease-in-out infinite;
}
@keyframes phoneFloat {
  0%,
  100% {
    transform: translateY(0) rotate(-2deg);
  }
  50% {
    transform: translateY(-18px) rotate(1deg);
  }
}
.phone-notch {
  width: 90px;
  height: 24px;
  border-radius: 0 0 16px 16px;
  background: var(--black3);
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  margin: 0 auto 8px;
}
.phone-screen {
  aspect-ratio: 9/16;
  border-radius: 28px;
  overflow: hidden;
  background: linear-gradient(160deg, #1a1a2e 0%, #16213e 40%, #0f3460 100%);
  position: relative;
}
.tiktok-video-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 16px;
  background: linear-gradient(
    to bottom,
    transparent 40%,
    rgba(0, 0, 0, 0.9) 100%
  );
  position: relative;
}
.tiktok-video-placeholder::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    45deg,
    rgba(255, 45, 85, 0.1),
    rgba(0, 122, 255, 0.05)
  );
}
.phone-tiktok-ui {
  position: relative;
  z-index: 1;
}
.phone-username {
  font-size: 0.6rem;
  font-weight: 600;
  color: white;
  margin-bottom: 4px;
}
.phone-desc {
  font-size: 0.52rem;
  color: rgba(255, 255, 255, 0.7);
  margin-bottom: 8px;
  line-height: 1.4;
}
.phone-progress {
  height: 2px;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 2px;
  overflow: hidden;
}
.phone-progress-bar {
  width: 60%;
  height: 100%;
  background: var(--red);
  border-radius: 2px;
  animation: progress 3s ease infinite;
}
@keyframes progress {
  0% {
    width: 20%;
  }
  100% {
    width: 100%;
  }
}

.phone-actions {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: center;
}
.phone-action-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  font-size: 0.45rem;
  color: rgba(255, 255, 255, 0.8);
}
.phone-action-icon {
  font-size: 1rem;
}

/* Floating orbs around phone */
.orb {
  position: absolute;
  border-radius: 50%;
  background: radial-gradient(circle, var(--red) 0%, transparent 70%);
  opacity: 0.4;
  pointer-events: none;
}
.orb-1 {
  width: 140px;
  height: 140px;
  top: -30px;
  right: -30px;
  animation: orbFloat 6s ease-in-out infinite;
}
.orb-2 {
  width: 80px;
  height: 80px;
  bottom: 40px;
  left: -20px;
  animation: orbFloat 8s ease-in-out infinite reverse;
}

/* Floating download badges */
.float-badge {
  position: absolute;
  background: rgba(30, 30, 30, 0.95);
  border: 1px solid var(--border2);
  border-radius: 12px;
  padding: 8px 14px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.72rem;
  font-weight: 600;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(10px);
  animation: badgeFloat 4s ease-in-out infinite;
  white-space: nowrap;
}
.float-badge-1 {
  top: 10%;
  left: -20px;
  animation-delay: 0s;
}
.float-badge-2 {
  bottom: 20%;
  right: -15px;
  animation-delay: 1.5s;
}
@keyframes badgeFloat {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-8px);
  }
}
.float-badge-icon {
  font-size: 1rem;
}
.float-badge-text {
  color: var(--white);
}
.float-badge-sub {
  color: var(--red);
  font-size: 0.62rem;
  display: block;
}

/* ════════════════════════════════════
   RESULT CARD
════════════════════════════════════ */
.result-section {
  padding: 0 6% 80px;
  position: relative;
  z-index: 2;
  display: none;
}
.result-section.visible {
  display: block;
}

.result-wrap {
  max-width: 860px;
  margin: 0 auto;
}

.skeleton-loader {
  background: linear-gradient(
    90deg,
    var(--black3) 25%,
    var(--black4) 50%,
    var(--black3) 75%
  );
  background-size: 200% 100%;
  animation: skeleton 1.5s infinite;
  border-radius: var(--radius);
}
@keyframes skeleton {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}

.result-card {
  background: var(--black3);
  border: 1px solid var(--border);
  border-radius: 24px;
  overflow: hidden;
  box-shadow: var(--shadow-card);
  animation: resultIn 0.5s ease;
}
@keyframes resultIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.result-video-area {
  display: grid;
  grid-template-columns: 180px 1fr;
}
.result-thumb {
  aspect-ratio: 9/16;
  background: var(--black4);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  position: relative;
  overflow: hidden;
}
.result-thumb::after {
  content: "▶";
  position: absolute;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  color: white;
  backdrop-filter: blur(4px);
  cursor: pointer;
  transition: var(--trans-fast);
}
.result-thumb:hover::after {
  transform: scale(1.1);
}

.result-info {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.result-title {
  font-size: 1.05rem;
  font-weight: 600;
  line-height: 1.4;
  color: var(--white);
}
.result-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.result-meta-item {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 0.78rem;
  color: var(--white3);
  background: var(--white5);
  padding: 4px 12px;
  border-radius: 50px;
}

.download-options {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.dl-option {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 12px 16px;
  transition: var(--trans-fast);
  cursor: pointer;
}
.dl-option:hover {
  background: rgba(255, 255, 255, 0.07);
  border-color: var(--border2);
}
.dl-option-info {
  display: flex;
  align-items: center;
  gap: 10px;
}
.dl-option-icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.9rem;
  flex-shrink: 0;
}
.dl-label {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--white);
}
.dl-sub {
  font-size: 0.72rem;
  color: var(--white3);
}
.dl-btn {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 18px;
  border-radius: 8px;
  font-family: "Outfit", sans-serif;
  font-size: 0.78rem;
  font-weight: 600;
  border: none;
  cursor: pointer;
  transition: var(--trans-fast);
  white-space: nowrap;
}
.dl-btn-red {
  background: var(--red);
  color: white;
  box-shadow: 0 2px 12px rgba(255, 45, 85, 0.3);
}
.dl-btn-red:hover {
  background: var(--red2);
  transform: translateY(-1px);
}
.dl-btn-ghost {
  background: var(--white5);
  color: var(--white2);
  border: 1px solid var(--border);
}
.dl-btn-ghost:hover {
  background: rgba(255, 255, 255, 0.1);
  color: white;
}

/* ════════════════════════════════════
   SECTION COMMONS
════════════════════════════════════ */
section {
  padding: 100px 6%;
  position: relative;
  z-index: 2;
}
.section-wrap {
  max-width: 1200px;
  margin: 0 auto;
}
.section-label {
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--red);
  margin-bottom: 12px;
}
.section-title {
  font-family: "Bebas Neue", sans-serif;
  font-size: clamp(2.2rem, 5vw, 4rem);
  line-height: 1;
  letter-spacing: 0.03em;
  margin-bottom: 1rem;
}
.section-sub {
  font-size: 1rem;
  font-weight: 300;
  color: var(--white3);
  max-width: 600px;
  line-height: 1.7;
}

/* ════════════════════════════════════
   FEATURES
════════════════════════════════════ */
.features-bg {
  background: linear-gradient(180deg, var(--black) 0%, var(--black2) 100%);
}
.features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 1.5rem;
  margin-top: 3rem;
}
.feature-card {
  background: var(--glass);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 28px 24px;
  position: relative;
  overflow: hidden;
  transition: var(--trans);
}
.feature-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255, 45, 85, 0.06), transparent);
  opacity: 0;
  transition: opacity 0.4s;
}
.feature-card::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 45, 85, 0.5),
    transparent
  );
  opacity: 0;
  transition: opacity 0.4s;
}
.feature-card:hover {
  transform: translateY(-6px);
  border-color: rgba(255, 45, 85, 0.2);
  box-shadow:
    0 20px 60px rgba(0, 0, 0, 0.5),
    0 0 40px rgba(255, 45, 85, 0.08);
}
.feature-card:hover::before,
.feature-card:hover::after {
  opacity: 1;
}

.feature-icon {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  margin-bottom: 18px;
  background: rgba(255, 45, 85, 0.1);
  border: 1px solid rgba(255, 45, 85, 0.15);
  position: relative;
  box-shadow: 0 0 20px rgba(255, 45, 85, 0.1);
}
.feature-title {
  font-size: 1rem;
  font-weight: 600;
  color: var(--white);
  margin-bottom: 8px;
}
.feature-desc {
  font-size: 0.85rem;
  color: var(--white3);
  line-height: 1.6;
}

/* ════════════════════════════════════
   STATS
════════════════════════════════════ */
.stats-section {
  background: var(--black2);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}
.stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 0;
}
.stat-item {
  padding: 50px 40px;
  text-align: center;
  border-right: 1px solid var(--border);
  position: relative;
  overflow: hidden;
  transition: var(--trans);
}
.stat-item:last-child {
  border: none;
}
.stat-item::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(
    ellipse at center,
    rgba(255, 45, 85, 0.06) 0%,
    transparent 70%
  );
  opacity: 0;
  transition: opacity 0.4s;
}
.stat-item:hover::before {
  opacity: 1;
}
.stat-num {
  font-family: "Bebas Neue", sans-serif;
  font-size: 3.5rem;
  color: var(--white);
  line-height: 1;
  margin-bottom: 8px;
  text-shadow: 0 0 40px rgba(255, 45, 85, 0.3);
}
.stat-unit {
  color: var(--red);
  font-size: 2rem;
}
.stat-label {
  font-size: 0.82rem;
  color: var(--white3);
  font-weight: 500;
  letter-spacing: 0.04em;
}

/* ════════════════════════════════════
   FAQ
════════════════════════════════════ */
.faq-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 3rem;
  max-width: 760px;
}

.restylefaq {
  max-width: none !important;
}

.restylefaq .faq-item {
  max-height: 240px;
}

.articledescx {
  display: -webkit-box;
  -webkit-line-clamp: 5;
  line-clamp: 5; /* Nombre de lignes */
  -webkit-box-orient: vertical;
  /* height: 100px; */
  overflow: hidden;
  text-overflow: ellipsis;

  line-height: 1.5;
}

.articlephoto {
  display: block;
  width: 200px;
  height: 180px;
  overflow: hidden;
  border-radius: 8px;
  background: #444;
  /* border: 1px solid var(--border); */
  transition: 0.3s;
}

.articlephoto img {
  width: 100%;
  height: 180px;
  object-fit: cover;
}

.faq-item {
  background: var(--glass);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  overflow: hidden;
  transition: border-color 0.3s;
}
.faq-item.open {
  border-color: rgba(255, 45, 85, 0.25);
}

.faq-q {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 24px;
  cursor: pointer;
  font-size: 0.95rem;
  font-weight: 500;
  color: var(--white2);
  gap: 16px;
  transition: color 0.25s;
}
.faq-q:hover {
  color: var(--white);
}
.faq-item.open .faq-q {
  color: var(--white);
}

.restylefaq-item {
  align-items: flex-start;
  justify-content: flex-start;
}

.articleinfos {
  margin-left: 30px;
  margin-top: 10px;
}

.articletitlex {
  display: block;
  font-weight: bold;
  font-size: 22px;
  margin-bottom: 10px;
}

.faq-arrow {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--white5);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 0.75rem;
  transition:
    transform 0.35s,
    background 0.3s;
}
.faq-item.open .faq-arrow {
  transform: rotate(180deg);
  background: rgba(255, 45, 85, 0.15);
  color: var(--red);
}

.thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.faq-a {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.faq-item.open .faq-a {
  max-height: 200px;
}
.faq-a-inner {
  padding: 0 24px 20px;
  font-size: 0.875rem;
  color: var(--white3);
  line-height: 1.75;
  border-top: 1px solid var(--border);
  padding-top: 16px;
}

/* ════════════════════════════════════
   HOW IT WORKS
════════════════════════════════════ */
.steps-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 0;
  margin-top: 3rem;
  position: relative;
}
.steps-grid::before {
  content: "";
  position: absolute;
  top: 36px;
  left: 15%;
  right: 15%;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 45, 85, 0.3),
    rgba(255, 45, 85, 0.3),
    transparent
  );
}
.step {
  text-align: center;
  padding: 0 24px;
  position: relative;
}
.step-num {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: var(--black3);
  border: 2px solid rgba(255, 45, 85, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
  font-family: "Bebas Neue", sans-serif;
  font-size: 1.6rem;
  color: var(--red);
  position: relative;
  transition: var(--trans);
  box-shadow: 0 0 20px rgba(255, 45, 85, 0.1);
}
.step:hover .step-num {
  background: rgba(255, 45, 85, 0.1);
  border-color: var(--red);
  box-shadow: 0 0 30px rgba(255, 45, 85, 0.25);
}
.step-icon {
  font-size: 1.6rem;
}
.step-title {
  font-weight: 600;
  margin-bottom: 8px;
  font-size: 0.95rem;
}
.step-desc {
  font-size: 0.82rem;
  color: var(--white3);
  line-height: 1.6;
}

/* ════════════════════════════════════
   FOOTER
════════════════════════════════════ */
footer {
  background: var(--black2);
  border-top: 1px solid var(--border);
  padding: 60px 6% 30px;
  position: relative;
  z-index: 2;
}
.footer-top {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 3rem;
  margin-bottom: 50px;
}
.footer-brand .logo {
  margin-bottom: 14px;
  display: inline-flex;
}
.footer-desc {
  font-size: 0.85rem;
  color: var(--white3);
  line-height: 1.7;
  max-width: 280px;
  margin-bottom: 18px;
}
.social-links {
  display: flex;
  gap: 10px;
}
.social-btn {
  width: 36px;
  height: 36px;
  border-radius: 9px;
  background: var(--white5);
  border: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.85rem;
  cursor: pointer;
  text-decoration: none;
  color: var(--white3);
  transition: var(--trans-fast);
}
.social-btn:hover {
  background: rgba(255, 45, 85, 0.15);
  border-color: rgba(255, 45, 85, 0.3);
  color: var(--red);
}

.footer-col-title {
  font-weight: 600;
  font-size: 0.82rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--white);
  margin-bottom: 16px;
}
.footer-links {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.footer-links a {
  font-size: 0.84rem;
  color: var(--white3);
  text-decoration: none;
  transition: color 0.25s;
}
.footer-links a:hover {
  color: var(--red);
}

.footer-bottom {
  max-width: 1200px;
  margin: 0 auto;
  padding-top: 24px;
  border-top: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.78rem;
  color: var(--white3);
  flex-wrap: wrap;
  gap: 10px;
}
.footer-bottom a {
  color: var(--white3);
  text-decoration: none;
  transition: color 0.2s;
}
.footer-bottom a:hover {
  color: var(--red);
}
.footer-bottom-links {
  display: flex;
  gap: 16px;
}

.detailbloc {
  display: block;
  position: fixed;
  top: 0;
  right: -500px;
  width: 480px;
  height: 100%;
  background: var(--black3);
  z-index: 110;
  overflow: auto;
  color: #fff;
  transition: 0.4s;
  border-left: 1px solid var(--border);
  padding: 0px 20px 0px 20px;
}

.detailbloc.right {
  right: 0;
}

.boddetail {
  margin: 80px 20px 20px 20px;
}

.boddetail .articlephoto {
  width: 100%;
  height: auto !important;
}

.boddetail .articlephoto img {
  width: 100%;
  transform: scale(1.1);
  height: auto !important;
}

.articleinfosy {
  margin-top: 20px;
}

.btn-closed {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50px;
  border: 1px solid var(--border);
  background: var(--black5);
  color: #fff;
  font-size: 22px;
  position: fixed;
  right: 30px;
  top: 10px;
  cursor: pointer;
  outline: none;
  transition: 0.3s;
  z-index: 3;
}

.btn-closed:hover {
  background: #444;
}

.soustitlex {
  font-size: 14px;
  margin: 10px;
  text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
}

.titlex {
  font-size: 30px;
  font-weight: bold;
  text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
}

.ombremodal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 100;
  display: none;
  backdrop-filter: blur(4px);
}

.loaderbloc {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  position: absolute;
  height: 100%;
  overflow: hidden;
}

.loaderarticle {
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50px;
  border: 3px solid transparent;
  border-right: 3px solid var(--red);
  border-top: 3px solid var(--red);
  border-bottom: 3px solid var(--red);
  animation: rotate 0.6s linear infinite;
}

.boddetail .articletitlex {
  text-align: justify;
}

.boddetail .articledesc {
  text-align: justify;
  line-height: 24px;
}

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.violetcolor {
  background: #9a2ffbcf !important;
}

.violetcolor:hover {
  background: #ac53ffcf !important;
}

.vdesc {
  font-size: 13px;
  color: #999;
  margin-top: 5px;
}

/* ════════════════════════════════════
   MOBILE NAV
════════════════════════════════════ */
.mobile-nav {
  position: fixed;
  inset: 0;
  z-index: 99;
  background: rgba(8, 8, 8, 0.97);
  backdrop-filter: blur(20px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  transform: translateX(-100%);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.mobile-nav.open {
  transform: translateX(0);
}
.mobile-nav a {
  font-family: "Bebas Neue", sans-serif;
  font-size: 2.5rem;
  letter-spacing: 0.1em;
  color: var(--white3);
  text-decoration: none;
  transition: color 0.25s;
}
.mobile-nav a:hover {
  color: var(--red);
}

/* ════════════════════════════════════
   SCROLL REVEAL
════════════════════════════════════ */
.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition:
    opacity 0.7s ease,
    transform 0.7s ease;
}
.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

/* ════════════════════════════════════
   RESPONSIVE
════════════════════════════════════ */
@media (max-width: 900px) {
  nav {
    display: none;
  }
  .hamburger {
    display: flex;
  }
  .hero-inner {
    grid-template-columns: 1fr;
  }
  .hero-visual {
    order: -1;
  }
  .phone-mockup {
    width: 200px;
  }
  .result-video-area {
    grid-template-columns: 140px 1fr;
  }
  .steps-grid::before {
    display: none;
  }
  .footer-top {
    grid-template-columns: 1fr 1fr;
  }
  .footer-brand {
    grid-column: span 2;
  }
}
@media (max-width: 600px) {
  section {
    padding: 70px 5%;
  }
  .hero {
    padding: 120px 5% 60px;
  }
  .stats-grid {
    grid-template-columns: 1fr 1fr;
  }
  .stat-item {
    border-right: none;
    border-bottom: 1px solid var(--border);
  }
  .stat-item:last-child {
    border: none;
  }
  .result-video-area {
    grid-template-columns: 1fr;
  }
  .result-thumb {
    aspect-ratio: 16/9;
  }
  .footer-top {
    grid-template-columns: 1fr;
  }
  .footer-brand {
    grid-column: span 1;
  }
  .download-form {
    flex-direction: column;
    gap: 8px;
  }
  .download-btn {
    width: 100%;
    justify-content: center;
  }
  .paste-btn {
    width: fit-content;
  }

  .step {
    margin-bottom: 20px;
  }

  .nogrid {
    grid-template-columns: none !important;
    gap: 0 !important;
  }

  .restylefaq .faq-item {
    max-height: 480px;
  }

  .restylefaq-item {
    flex-wrap: wrap;
  }

  .articleinfos {
    margin-left: 0px;
  }

  .articletitlex {
    text-align: justify;
  }

  .articledescx {
    text-align: justify;
  }

  .detailbloc {
    right: -110%;
    width: 100%;
    padding: 0px 10px 0px 10px;
  }
}

/* =========================================================
   TOKSAVE HOME HERO V3 ACTIVE - fichier réellement chargé
   ========================================================= */

.toksave-download-helper {
    width: min(820px, 94vw) !important;
    margin: 26px 0 10px 0 !important;
    text-align: left !important;
    position: relative !important;
    z-index: 30 !important;
}

.toksave-download-helper-title {
    color: #ffffff !important;
    font-size: clamp(18px, 2vw, 24px) !important;
    font-weight: 950 !important;
    line-height: 1.2 !important;
}

.toksave-download-helper-sub {
    margin-top: 4px !important;
    color: rgba(255,255,255,.72) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

body .formline {
    width: min(820px, 94vw) !important;
    min-height: 78px !important;
    margin-top: 12px !important;
    padding: 10px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    border-radius: 22px !important;
    background: #ffffff !important;
    border: 1px solid rgba(255,255,255,.25) !important;
    box-shadow: 0 24px 65px rgba(0,0,0,.35), 0 18px 45px rgba(255,0,80,.28) !important;
    position: relative !important;
    z-index: 30 !important;
    overflow: visible !important;
}

body .formline .formlink,
body .formline input.formlink,
body #link.formlink {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: 58px !important;
    padding: 0 18px !important;
    border: 0 !important;
    outline: none !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    color: #111111 !important;
    font-size: 16px !important;
    font-weight: 800 !important;
}

body .formline .formlink::placeholder,
body #link.formlink::placeholder {
    color: #555555 !important;
    font-weight: 700 !important;
}

body .formline .flexliney {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex: 0 0 auto !important;
}

body .formline .pasteBtn,
body .formline .btn-paste {
    height: 58px !important;
    min-width: 112px !important;
    padding: 0 18px !important;
    border-radius: 16px !important;
    border: 0 !important;
    background: #f1f5f9 !important;
    color: #111827 !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
}

body .formline #btn-get {
    height: 58px !important;
    min-width: 180px !important;
    padding: 0 24px !important;
    border-radius: 16px !important;
    border: 0 !important;
    background: #ff0050 !important;
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 950 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    box-shadow: 0 16px 36px rgba(255,0,80,.45) !important;
}

body .formline::after {
    content: "Sans watermark • Gratuit • HD 1080p • MP3 audio";
    position: absolute !important;
    left: 0 !important;
    bottom: -34px !important;
    color: rgba(255,255,255,.78) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}

@media (max-width: 760px) {
    .toksave-download-helper {
        width: calc(100% - 28px) !important;
        margin: 22px auto 10px auto !important;
        text-align: center !important;
    }

    .toksave-download-helper-title {
        font-size: 18px !important;
    }

    .toksave-download-helper-sub {
        font-size: 13px !important;
    }

    body .formline {
        width: calc(100% - 28px) !important;
        margin: 10px auto 0 auto !important;
        padding: 0 !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    body .formline .formlink,
    body .formline input.formlink,
    body #link.formlink {
        width: 100% !important;
        height: 60px !important;
        border-radius: 18px !important;
        background: #ffffff !important;
        box-shadow: 0 14px 38px rgba(0,0,0,.28) !important;
        font-size: 15px !important;
        text-align: center !important;
    }

    body .formline .flexliney {
        width: 100% !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    body .formline .pasteBtn,
    body .formline .btn-paste,
    body .formline #btn-get {
        width: 100% !important;
        height: 58px !important;
        min-width: 0 !important;
        border-radius: 18px !important;
        font-size: 16px !important;
    }

    body .formline::after {
        position: static !important;
        display: block !important;
        text-align: center !important;
        white-space: normal !important;
        font-size: 13px !important;
        margin-top: 4px !important;
    }
}

/* TOKSAVE V42 CLEAN FINAL START */

/* =========================
   1. Nettoyage général
   ========================= */

.stats,
.stats-section,
.statistics,
.statistiques,
.counter-section,
.numbers-section,
.home-stats,
.hero-stats,
.kpi-section,
.kpi-grid,
.metrics,
.metrics-section {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.toksave-legal-note-v42 {
  max-width: 920px;
  margin: 34px auto 0 auto;
  padding: 16px 20px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  background: rgba(255,255,255,.045);
  color: rgba(255,255,255,.72);
  font-size: 14px;
  line-height: 1.6;
  text-align: center;
}

/* =========================
   2. Mobile hero final
   ========================= */

@media (max-width: 768px) {

  html,
  body {
    overflow-x: hidden !important;
  }

  .hero {
    padding-top: 74px !important;
    padding-bottom: 22px !important;
    min-height: auto !important;
  }

  .hero-inner {
    padding: 0 18px !important;
  }

  .hero-content {
    gap: 0 !important;
  }

  .download-form#downloadForm,
  #downloadForm.download-form {
    margin: 0 auto 10px auto !important;
    padding: 7px !important;

    display: grid !important;
    grid-template-columns: 68px minmax(0, 1fr) 108px !important;
    gap: 6px !important;
    align-items: center !important;

    width: 100% !important;
    max-width: 100% !important;

    border-radius: 20px !important;
    background: rgba(255,255,255,.085) !important;
    border: 1px solid rgba(255,255,255,.15) !important;

    box-shadow:
      0 18px 42px rgba(0,0,0,.35),
      0 10px 32px rgba(255,0,80,.20) !important;
  }

  .download-form#downloadForm .paste-btn,
  #downloadForm.download-form .paste-btn,
  .download-form#downloadForm .url-input,
  #downloadForm.download-form .url-input,
  .download-form#downloadForm #urlInput,
  #downloadForm.download-form #urlInput,
  .download-form#downloadForm .download-btn,
  #downloadForm.download-form .download-btn {
    height: 51px !important;
  }

  .download-form#downloadForm .paste-btn,
  #downloadForm.download-form .paste-btn,
  .download-form#downloadForm .url-input,
  #downloadForm.download-form .url-input,
  .download-form#downloadForm #urlInput,
  #downloadForm.download-form #urlInput,
  .download-form#downloadForm .download-btn,
  #downloadForm.download-form .download-btn {
    font-size: 12px !important;
  }

  .hero-sub {
    display: block !important;
    width: 100% !important;
    margin: 0 auto 28px auto !important;
    padding: 0 !important;
    text-align: center !important;
  }

  .hero-sub::before {
    content: "Sans watermark • Gratuit • HD 1080p • MP3 audio" !important;
    display: block !important;
    color: rgba(255,255,255,.78) !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    line-height: 1.45 !important;
    text-align: center !important;
  }

  .hero-sub-item {
    display: none !important;
  }

  .hero-badge,
  .hero-title .outline,
  .hero-title span.outline {
    display: none !important;
  }

  .hero-title {
    margin: 0 !important;
    max-width: 100% !important;

    font-size: clamp(35px, 10vw, 45px) !important;
    line-height: 1.01 !important;
    letter-spacing: -0.035em !important;
    text-align: left !important;
  }

  .hero-desc {
    max-width: 100% !important;
    margin-top: 18px !important;
    margin-bottom: 0 !important;

    font-size: 15px !important;
    line-height: 1.52 !important;
    color: rgba(255,255,255,.68) !important;
  }

  .hero [class*="phone"],
  .hero [class*="mock"],
  .hero [class*="device"],
  .hero [class*="visual"],
  .hero-right,
  .hero-visual,
  .phone,
  .mockup,
  .device {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }
}

/* =========================
   3. Comment ça marche mobile
   ========================= */

@media (max-width: 768px) {

  #how,
  .how,
  .how-section,
  section[id="how"] {
    padding-top: 28px !important;
    padding-bottom: 34px !important;
    margin-top: 0 !important;
  }

  #how .section-label,
  .how .section-label,
  .how-section .section-label {
    margin-bottom: 7px !important;
    font-size: 10.5px !important;
    letter-spacing: .16em !important;
    text-align: center !important;
  }

  #how h2,
  .how h2,
  .how-section h2,
  section[id="how"] h2,
  #how .section-title,
  .how .section-title,
  .how-section .section-title {
    margin: 0 auto 20px auto !important;
    max-width: 340px !important;

    font-size: clamp(27px, 7.2vw, 34px) !important;
    line-height: 1.02 !important;
    text-align: center !important;
  }

  #how .steps,
  .how .steps,
  .how-section .steps,
  #how .steps-grid,
  .how .steps-grid,
  .how-section .steps-grid,
  #how .how-grid,
  .how .how-grid,
  .how-section .how-grid {
    display: block !important;
    padding: 0 18px !important;
    margin: 0 auto !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .toksave-v42-step {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 0 10px 0 !important;
    padding: 12px 13px !important;

    border-radius: 16px !important;
    border: 1px solid rgba(255,255,255,.09) !important;
    background: rgba(255,255,255,.04) !important;

    box-shadow: none !important;
    text-align: left !important;
    overflow: hidden !important;
  }

  .toksave-v42-step-icon {
    flex: 0 0 36px !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    border-radius: 11px !important;
    background: rgba(255,0,80,.10) !important;
    border: 1px solid rgba(255,0,80,.28) !important;

    color: #ffffff !important;
    font-size: 16px !important;
    line-height: 1 !important;
  }

  .toksave-v42-step-body {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    padding-top: 0 !important;
  }

  .toksave-v42-step-title {
    margin: 0 0 3px 0 !important;
    padding: 0 !important;

    color: #ffffff !important;
    font-size: 15.5px !important;
    line-height: 1.15 !important;
    font-weight: 950 !important;

    text-align: left !important;
  }

  .toksave-v42-step-desc {
    margin: 0 !important;
    padding: 0 !important;

    color: rgba(255,255,255,.62) !important;
    font-size: 12.8px !important;
    line-height: 1.38 !important;
    font-weight: 500 !important;

    text-align: left !important;
  }
}

/* =========================
   4. Articles home propres
   ========================= */

.toksave-v42-card {
  overflow: hidden !important;
  text-align: left !important;
}

.toksave-v42-card a {
  display: block !important;
  text-decoration: none !important;
  color: inherit !important;
}

.toksave-v42-card img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 170px !important;
  max-height: 170px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 16px !important;
  margin: 0 0 20px 0 !important;
}

.toksave-v42-card-title {
  display: block !important;
  margin: 0 0 12px 0 !important;
  padding: 0 !important;

  font-size: clamp(22px, 5.5vw, 30px) !important;
  line-height: 1.22 !important;
  font-weight: 950 !important;

  color: #ffffff !important;
  text-align: left !important;
}

.toksave-v42-card-excerpt {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;

  font-size: 14px !important;
  line-height: 1.55 !important;
  font-weight: 600 !important;

  color: rgba(255,255,255,.68) !important;
  text-align: left !important;
}

@media (max-width: 768px) {
  .toksave-v42-card {
    padding: 22px !important;
    border-radius: 22px !important;
  }

  .toksave-v42-card img {
    height: 165px !important;
    max-height: 165px !important;
  }

  .toksave-v42-card-title {
    font-size: 22px !important;
    line-height: 1.24 !important;
  }

  .toksave-v42-card-excerpt {
    font-size: 14px !important;
    line-height: 1.55 !important;
  }

  .toksave-legal-note-v42 {
    margin: 26px 14px 0 14px;
    padding: 14px 16px;
    font-size: 12px;
    text-align: left;
  }
}

@media (max-width: 390px) {
  .download-form#downloadForm,
  #downloadForm.download-form {
    grid-template-columns: 62px minmax(0, 1fr) 100px !important;
    gap: 5px !important;
  }

  .hero-inner {
    padding: 0 16px !important;
  }

  .hero-sub::before {
    font-size: 11px !important;
  }

  .toksave-v42-card img {
    height: 150px !important;
    max-height: 150px !important;
  }

  .toksave-v42-card-title {
    font-size: 21px !important;
  }

  #how .steps,
  .how .steps,
  .how-section .steps,
  #how .steps-grid,
  .how .steps-grid,
  .how-section .steps-grid,
  #how .how-grid,
  .how .how-grid,
  .how-section .how-grid {
    padding: 0 16px !important;
  }

  .toksave-v42-step {
    padding: 11px 12px !important;
    gap: 11px !important;
  }

  .toksave-v42-step-icon {
    flex-basis: 34px !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    font-size: 15px !important;
  }

  .toksave-v42-step-title {
    font-size: 15px !important;
  }

  .toksave-v42-step-desc {
    font-size: 12.5px !important;
  }
}

@media (max-width: 345px) {
  .download-form#downloadForm,
  #downloadForm.download-form {
    grid-template-columns: 54px minmax(0, 1fr) 86px !important;
    gap: 4px !important;
  }

  .download-form#downloadForm .paste-btn,
  #downloadForm.download-form .paste-btn,
  .download-form#downloadForm .url-input,
  #downloadForm.download-form .url-input,
  .download-form#downloadForm #urlInput,
  #downloadForm.download-form #urlInput,
  .download-form#downloadForm .download-btn,
  #downloadForm.download-form .download-btn {
    font-size: 10px !important;
  }

  .hero-sub::before {
    font-size: 10.5px !important;
  }
}

/* TOKSAVE V42 CLEAN FINAL END */



/* TOKSAVE MOBILE V43 RESTORE VALID ORDER START */
@media (max-width: 768px) {

  /* 1. Enlever le bouton rose du header sur mobile */
  header .header-cta,
  header #btn-red,
  header .btn-red,
  .header-cta,
  #btn-red {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  header,
  #header {
    height: auto !important;
  }

  header .hamburger,
  #hamburger {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  /* 2. Replacer les éléments du hero dans le bon ordre */
  .hero-content {
    display: flex !important;
    flex-direction: column !important;
  }

  .hero-badge {
    display: none !important;
  }

  .download-form#downloadForm,
  #downloadForm.download-form {
    order: 1 !important;
    margin: 0 auto 10px auto !important;
  }

  .hero-sub {
    order: 2 !important;
    margin: 0 auto 28px auto !important;
  }

  .hero-title {
    order: 3 !important;
  }

  .hero-desc {
    order: 4 !important;
  }

  /* 3. Revenir à un haut mobile propre */
  .hero {
    padding-top: 74px !important;
    padding-bottom: 22px !important;
    min-height: auto !important;
  }

  .hero-inner {
    padding: 0 18px !important;
  }

  .download-form#downloadForm,
  #downloadForm.download-form {
    display: grid !important;
    grid-template-columns: 68px minmax(0, 1fr) 108px !important;
    gap: 6px !important;
    align-items: center !important;

    width: 100% !important;
    max-width: 100% !important;

    padding: 7px !important;
    border-radius: 20px !important;

    background: rgba(255,255,255,.085) !important;
    border: 1px solid rgba(255,255,255,.15) !important;

    box-shadow:
      0 18px 42px rgba(0,0,0,.35),
      0 10px 32px rgba(255,0,80,.20) !important;
  }

  .download-form#downloadForm .paste-btn,
  #downloadForm.download-form .paste-btn,
  .download-form#downloadForm .url-input,
  #downloadForm.download-form .url-input,
  .download-form#downloadForm #urlInput,
  #downloadForm.download-form #urlInput,
  .download-form#downloadForm .download-btn,
  #downloadForm.download-form .download-btn {
    height: 51px !important;
    font-size: 12px !important;
  }

  .hero-sub {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    text-align: center !important;
  }

  .hero-sub::before {
    content: "Sans watermark • Gratuit • HD 1080p • MP3 audio" !important;
    display: block !important;
    color: rgba(255,255,255,.78) !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    line-height: 1.45 !important;
    text-align: center !important;
  }

  .hero-sub-item {
    display: none !important;
  }

  .hero-title {
    margin: 0 !important;
    max-width: 100% !important;

    font-size: clamp(35px, 10vw, 45px) !important;
    line-height: 1.01 !important;
    letter-spacing: -0.035em !important;
    text-align: left !important;
  }

  .hero-title .outline,
  .hero-title span.outline {
    display: none !important;
  }

  .hero-desc {
    max-width: 100% !important;
    margin-top: 18px !important;
    margin-bottom: 0 !important;

    font-size: 15px !important;
    line-height: 1.52 !important;
    color: rgba(255,255,255,.68) !important;
  }

  /* 4. Garder le téléphone caché sur mobile */
  .hero [class*="phone"],
  .hero [class*="mock"],
  .hero [class*="device"],
  .hero [class*="visual"],
  .hero-right,
  .hero-visual,
  .phone,
  .mockup,
  .device {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }
}

@media (max-width: 390px) {
  .hero-inner {
    padding: 0 16px !important;
  }

  .download-form#downloadForm,
  #downloadForm.download-form {
    grid-template-columns: 62px minmax(0, 1fr) 100px !important;
    gap: 5px !important;
  }

  .hero-sub::before {
    font-size: 11px !important;
  }
}

@media (max-width: 345px) {
  .download-form#downloadForm,
  #downloadForm.download-form {
    grid-template-columns: 54px minmax(0, 1fr) 86px !important;
    gap: 4px !important;
  }

  .download-form#downloadForm .paste-btn,
  #downloadForm.download-form .paste-btn,
  .download-form#downloadForm .url-input,
  #downloadForm.download-form .url-input,
  .download-form#downloadForm #urlInput,
  #downloadForm.download-form #urlInput,
  .download-form#downloadForm .download-btn,
  #downloadForm.download-form .download-btn {
    font-size: 10px !important;
  }
}
/* TOKSAVE MOBILE V43 RESTORE VALID ORDER END */


/* TOKSAVE MOBILE V44 TOP SPACING START */
@media (max-width: 768px) {

  /* Réduire l'espace inutile entre le header et la barre */
  .hero {
    padding-top: 18px !important;
    padding-bottom: 22px !important;
    min-height: auto !important;
  }

  .hero-inner {
    padding: 0 18px !important;
  }

  .hero-content {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }

  /* La barre reste le premier élément visible après le header */
  .download-form#downloadForm,
  #downloadForm.download-form {
    order: 1 !important;
    margin: 0 auto 10px auto !important;
  }

  .hero-sub {
    order: 2 !important;
    margin: 0 auto 28px auto !important;
  }

  .hero-title {
    order: 3 !important;
  }

  .hero-desc {
    order: 4 !important;
  }

  /* Header mobile propre */
  header,
  #header {
    min-height: 74px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  header .logo,
  #header .logo {
    display: flex !important;
    align-items: center !important;
  }

  header .logo img,
  #header .logo img,
  .logo-img {
    max-height: 42px !important;
    width: auto !important;
    object-fit: contain !important;
  }

  header .header-cta,
  header #btn-red,
  header .btn-red,
  .header-cta,
  #btn-red {
    display: none !important;
  }

  header .hamburger,
  #hamburger {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  /* Garder la barre mobile compacte */
  .download-form#downloadForm,
  #downloadForm.download-form {
    display: grid !important;
    grid-template-columns: 68px minmax(0, 1fr) 108px !important;
    gap: 6px !important;
    align-items: center !important;

    width: 100% !important;
    max-width: 100% !important;

    padding: 7px !important;
    border-radius: 20px !important;

    background: rgba(255,255,255,.085) !important;
    border: 1px solid rgba(255,255,255,.15) !important;

    box-shadow:
      0 18px 42px rgba(0,0,0,.35),
      0 10px 32px rgba(255,0,80,.20) !important;
  }

  .download-form#downloadForm .paste-btn,
  #downloadForm.download-form .paste-btn,
  .download-form#downloadForm .url-input,
  #downloadForm.download-form .url-input,
  .download-form#downloadForm #urlInput,
  #downloadForm.download-form #urlInput,
  .download-form#downloadForm .download-btn,
  #downloadForm.download-form .download-btn {
    height: 51px !important;
    font-size: 12px !important;
  }
}

@media (max-width: 390px) {
  .hero {
    padding-top: 16px !important;
  }

  .hero-inner {
    padding: 0 16px !important;
  }

  .download-form#downloadForm,
  #downloadForm.download-form {
    grid-template-columns: 62px minmax(0, 1fr) 100px !important;
    gap: 5px !important;
  }
}

@media (max-width: 345px) {
  .download-form#downloadForm,
  #downloadForm.download-form {
    grid-template-columns: 54px minmax(0, 1fr) 86px !important;
    gap: 4px !important;
  }

  .download-form#downloadForm .paste-btn,
  #downloadForm.download-form .paste-btn,
  .download-form#downloadForm .url-input,
  #downloadForm.download-form .url-input,
  .download-form#downloadForm #urlInput,
  #downloadForm.download-form #urlInput,
  .download-form#downloadForm .download-btn,
  #downloadForm.download-form .download-btn {
    font-size: 10px !important;
  }
}
/* TOKSAVE MOBILE V44 TOP SPACING END */


/* TOKSAVE MOBILE V45 HEADER FORM FIX START */
@media (max-width: 768px) {

  /* Header mobile stabilisé */
  header,
  #header {
    height: 74px !important;
    min-height: 74px !important;
    max-height: 74px !important;

    padding: 0 18px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    background: rgba(8,6,8,.96) !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;

    z-index: 9999 !important;
    overflow: hidden !important;
  }

  /* Logo corrigé : ne doit plus devenir énorme */
  header .logo,
  #header .logo,
  .logo {
    display: flex !important;
    align-items: center !important;

    width: auto !important;
    max-width: 172px !important;
    height: 74px !important;
    max-height: 74px !important;

    overflow: hidden !important;
  }

  header .logo img,
  #header .logo img,
  .logo img,
  img.logo-img,
  .logo-img {
    display: block !important;

    width: auto !important;
    max-width: 170px !important;

    height: auto !important;
    max-height: 42px !important;

    object-fit: contain !important;
  }

  /* Supprimer le bouton Télécharger du header sur mobile */
  header .header-cta,
  header #btn-red,
  header .btn-red,
  header button[id="btn-red"],
  .header-cta,
  #btn-red {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }

  /* Menu hamburger visible */
  header .hamburger,
  #hamburger,
  .hamburger {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;

    width: 34px !important;
    height: 34px !important;

    align-items: center !important;
    justify-content: center !important;
  }

  /* Hero : laisser la place au header fixe */
  .hero {
    padding-top: 88px !important;
    padding-bottom: 22px !important;
    min-height: auto !important;
  }

  .hero-inner {
    padding: 0 18px !important;
  }

  .hero-content {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }

  /* Barre juste sous le header */
  .download-form#downloadForm,
  #downloadForm.download-form {
    order: 1 !important;

    display: grid !important;
    grid-template-columns: 68px minmax(0, 1fr) 108px !important;
    gap: 6px !important;
    align-items: center !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 auto 10px auto !important;
    padding: 7px !important;

    border-radius: 20px !important;
    background: rgba(255,255,255,.085) !important;
    border: 1px solid rgba(255,255,255,.15) !important;

    box-shadow:
      0 18px 42px rgba(0,0,0,.35),
      0 10px 32px rgba(255,0,80,.20) !important;

    transform: none !important;
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    z-index: 2 !important;
  }

  .download-form#downloadForm .paste-btn,
  #downloadForm.download-form .paste-btn,
  .download-form#downloadForm .url-input,
  #downloadForm.download-form .url-input,
  .download-form#downloadForm #urlInput,
  #downloadForm.download-form #urlInput,
  .download-form#downloadForm .download-btn,
  #downloadForm.download-form .download-btn {
    height: 51px !important;
    font-size: 12px !important;
  }

  .hero-sub {
    order: 2 !important;
    display: block !important;
    width: 100% !important;
    margin: 0 auto 28px auto !important;
    padding: 0 !important;
    text-align: center !important;
  }

  .hero-sub::before {
    content: "Sans watermark • Gratuit • HD 1080p • MP3 audio" !important;
    display: block !important;
    color: rgba(255,255,255,.78) !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    line-height: 1.45 !important;
    text-align: center !important;
  }

  .hero-sub-item {
    display: none !important;
  }

  .hero-title {
    order: 3 !important;
    margin: 0 !important;
    max-width: 100% !important;

    font-size: clamp(35px, 10vw, 45px) !important;
    line-height: 1.01 !important;
    letter-spacing: -0.035em !important;
    text-align: left !important;
  }

  .hero-title .outline,
  .hero-title span.outline,
  .hero-badge {
    display: none !important;
  }

  .hero-desc {
    order: 4 !important;
    max-width: 100% !important;
    margin-top: 18px !important;
    margin-bottom: 0 !important;

    font-size: 15px !important;
    line-height: 1.52 !important;
    color: rgba(255,255,255,.68) !important;
  }

  .hero [class*="phone"],
  .hero [class*="mock"],
  .hero [class*="device"],
  .hero [class*="visual"],
  .hero-right,
  .hero-visual,
  .phone,
  .mockup,
  .device {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }
}

@media (max-width: 390px) {
  header,
  #header {
    padding: 0 16px !important;
  }

  header .logo,
  #header .logo,
  .logo {
    max-width: 160px !important;
  }

  header .logo img,
  #header .logo img,
  .logo img,
  img.logo-img,
  .logo-img {
    max-width: 158px !important;
    max-height: 40px !important;
  }

  .hero {
    padding-top: 86px !important;
  }

  .hero-inner {
    padding: 0 16px !important;
  }

  .download-form#downloadForm,
  #downloadForm.download-form {
    grid-template-columns: 62px minmax(0, 1fr) 100px !important;
    gap: 5px !important;
  }

  .hero-sub::before {
    font-size: 11px !important;
  }
}

@media (max-width: 345px) {
  .download-form#downloadForm,
  #downloadForm.download-form {
    grid-template-columns: 54px minmax(0, 1fr) 86px !important;
    gap: 4px !important;
  }

  .download-form#downloadForm .paste-btn,
  #downloadForm.download-form .paste-btn,
  .download-form#downloadForm .url-input,
  #downloadForm.download-form .url-input,
  .download-form#downloadForm #urlInput,
  #downloadForm.download-form #urlInput,
  .download-form#downloadForm .download-btn,
  #downloadForm.download-form .download-btn {
    font-size: 10px !important;
  }
}
/* TOKSAVE MOBILE V45 HEADER FORM FIX END */


/* TOKSAVE MOBILE V46 HEADER INPUT FINAL START */
@media (max-width: 768px) {

  /* Header mobile final */
  header,
  #header {
    height: 74px !important;
    min-height: 74px !important;
    max-height: 74px !important;

    padding: 0 18px !important;
    position: relative !important;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    background: rgba(8,6,8,.98) !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;

    overflow: hidden !important;
    z-index: 9999 !important;
  }

  /* Logo stable */
  header .logo,
  #header .logo,
  .logo {
    max-width: 175px !important;
    height: 74px !important;

    display: flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
  }

  header .logo img,
  #header .logo img,
  .logo img,
  img.logo-img,
  .logo-img {
    max-width: 172px !important;
    max-height: 42px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
  }

  /* Bouton Télécharger du header supprimé */
  header .header-cta,
  header #btn-red,
  header .btn-red,
  header button[id="btn-red"],
  .header-cta,
  #btn-red {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }

  /* Hamburger forcé visible */
  header .hamburger,
  #hamburger,
  .hamburger,
  header [onclick*="toggleMenu"],
  #header [onclick*="toggleMenu"] {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;

    position: absolute !important;
    right: 18px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;

    width: 36px !important;
    height: 36px !important;

    align-items: center !important;
    justify-content: center !important;

    z-index: 10000 !important;
  }

  header .hamburger span,
  #hamburger span,
  .hamburger span,
  header [onclick*="toggleMenu"] span,
  #header [onclick*="toggleMenu"] span {
    display: block !important;
    width: 26px !important;
    height: 3px !important;
    margin: 3px 0 !important;

    background: #ffffff !important;
    border-radius: 99px !important;
    opacity: 1 !important;
  }

  /* Masquer le nav desktop sur mobile */
  header nav,
  #header nav {
    display: none !important;
  }

  /* Hero toujours sous le header */
  .hero {
    padding-top: 88px !important;
    padding-bottom: 22px !important;
    min-height: auto !important;
  }

  .hero-inner {
    padding: 0 18px !important;
  }

  .hero-content {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }

  /* Barre téléchargement visible et plus lisible */
  .download-form#downloadForm,
  #downloadForm.download-form {
    order: 1 !important;

    display: grid !important;
    grid-template-columns: 68px minmax(0, 1fr) 108px !important;
    gap: 6px !important;
    align-items: center !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 auto 10px auto !important;
    padding: 7px !important;

    border-radius: 20px !important;
    background: rgba(255,255,255,.105) !important;
    border: 1px solid rgba(255,255,255,.18) !important;

    box-shadow:
      0 18px 42px rgba(0,0,0,.35),
      0 10px 32px rgba(255,0,80,.20) !important;

    position: relative !important;
    z-index: 2 !important;
  }

  .download-form#downloadForm .paste-btn,
  #downloadForm.download-form .paste-btn {
    height: 51px !important;
    font-size: 12px !important;
    color: #ffffff !important;
    opacity: 1 !important;
    background: rgba(255,255,255,.12) !important;
  }

  .download-form#downloadForm .url-input,
  #downloadForm.download-form .url-input,
  .download-form#downloadForm #urlInput,
  #downloadForm.download-form #urlInput {
    height: 51px !important;
    font-size: 12px !important;

    color: rgba(255,255,255,.95) !important;
    opacity: 1 !important;
    background: transparent !important;
  }

  .download-form#downloadForm .url-input::placeholder,
  #downloadForm.download-form .url-input::placeholder,
  .download-form#downloadForm #urlInput::placeholder,
  #downloadForm.download-form #urlInput::placeholder {
    color: rgba(255,255,255,.72) !important;
    opacity: 1 !important;
  }

  .download-form#downloadForm .download-btn,
  #downloadForm.download-form .download-btn {
    height: 51px !important;
    font-size: 12px !important;
    color: #ffffff !important;
    opacity: 1 !important;
  }

  .hero-sub {
    order: 2 !important;
    margin: 0 auto 28px auto !important;
  }

  .hero-title {
    order: 3 !important;
  }

  .hero-desc {
    order: 4 !important;
  }
}

@media (max-width: 390px) {
  header,
  #header {
    padding: 0 16px !important;
  }

  header .hamburger,
  #hamburger,
  .hamburger,
  header [onclick*="toggleMenu"],
  #header [onclick*="toggleMenu"] {
    right: 16px !important;
  }

  header .logo,
  #header .logo,
  .logo {
    max-width: 164px !important;
  }

  header .logo img,
  #header .logo img,
  .logo img,
  img.logo-img,
  .logo-img {
    max-width: 160px !important;
    max-height: 40px !important;
  }

  .download-form#downloadForm,
  #downloadForm.download-form {
    grid-template-columns: 62px minmax(0, 1fr) 100px !important;
    gap: 5px !important;
  }
}
/* TOKSAVE MOBILE V46 HEADER INPUT FINAL END */


/* TOKSAVE MOBILE V47 MENU ONLY START */
@media (max-width: 768px) {

  /* On ne touche PAS à la barre de téléchargement ni au hero */

  /* On garde le bouton Télécharger du header caché */
  header .header-cta,
  header #btn-red,
  header .btn-red,
  header button[id="btn-red"],
  .header-cta,
  #btn-red {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }

  /* On cache l'ancien hamburger s'il est cassé */
  header .hamburger,
  #header .hamburger,
  .hamburger,
  #hamburger {
    display: none !important;
  }

  /* Nouveau hamburger propre */
  #toksave-v47-menu-only {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;

    position: absolute !important;
    right: 18px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;

    width: 38px !important;
    height: 38px !important;

    padding: 0 !important;
    margin: 0 !important;

    border: 0 !important;
    background: transparent !important;

    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;

    z-index: 100000 !important;
    cursor: pointer !important;
  }

  #toksave-v47-menu-only span {
    display: block !important;
    width: 27px !important;
    height: 3px !important;
    margin: 3px 0 !important;

    background: #ffffff !important;
    border-radius: 999px !important;
    opacity: 1 !important;
  }

  header,
  #header {
    position: relative !important;
    overflow: visible !important;
  }
}

@media (max-width: 390px) {
  #toksave-v47-menu-only {
    right: 16px !important;
  }
}
/* TOKSAVE MOBILE V47 MENU ONLY END */


/* TOKSAVE V48 FOOTER CLEAN START */

/* Note légale mieux intégrée */
.toksave-legal-note-v42,
.toksave-legal-note-v48 {
  width: min(1120px, calc(100% - 40px)) !important;
  margin: 42px auto 0 auto !important;
  padding: 18px 24px !important;

  border-radius: 18px !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,0,80,.08), transparent 42%),
    rgba(255,255,255,.045) !important;

  color: rgba(255,255,255,.74) !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  text-align: center !important;
}

/* Footer général */
footer {
  margin-top: 0 !important;
  padding: 54px 20px 26px 20px !important;

  background:
    linear-gradient(180deg, rgba(10,10,12,.96), rgba(7,7,8,1)) !important;

  border-top: 1px solid rgba(255,255,255,.06) !important;
}

/* Conteneur principal du footer */
footer .footer-content,
footer .footer-grid,
footer .footer-container,
footer .container,
footer > .container {
  width: min(1120px, 100%) !important;
  margin: 0 auto !important;

  display: grid !important;
  grid-template-columns: 1.45fr .75fr .75fr .75fr !important;
  gap: 54px !important;
  align-items: start !important;
}

/* Bloc marque */
footer .footer-brand,
footer .brand,
footer .footer-logo,
footer .logo-block {
  max-width: 330px !important;
}

footer img,
footer .logo-img {
  max-width: 170px !important;
  height: auto !important;
  margin-bottom: 18px !important;
}

footer p {
  max-width: 340px !important;
  margin: 0 0 20px 0 !important;

  color: rgba(255,255,255,.62) !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}

/* Titres colonnes */
footer h3,
footer h4,
footer .footer-title {
  margin: 0 0 18px 0 !important;

  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
}

/* Liens footer */
footer a,
footer li,
footer .footer-link {
  color: rgba(255,255,255,.58) !important;
  font-size: 14px !important;
  line-height: 1.9 !important;
  text-decoration: none !important;
  transition: color .2s ease, opacity .2s ease !important;
}

footer a:hover {
  color: #ffffff !important;
}

/* Listes */
footer ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Icônes sociales */
footer .socials,
footer .social-links,
footer .footer-socials {
  display: flex !important;
  gap: 12px !important;
  margin-top: 18px !important;
}

footer .socials a,
footer .social-links a,
footer .footer-socials a {
  width: 42px !important;
  height: 42px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  border-radius: 12px !important;
  background: rgba(255,255,255,.065) !important;
  border: 1px solid rgba(255,255,255,.08) !important;

  color: rgba(255,255,255,.75) !important;
  line-height: 1 !important;
}

/* Bas du footer */
footer .footer-bottom,
footer .copyright,
footer .bottom-bar {
  width: min(1120px, 100%) !important;
  margin: 42px auto 0 auto !important;
  padding-top: 22px !important;

  border-top: 1px solid rgba(255,255,255,.08) !important;

  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 20px !important;

  color: rgba(255,255,255,.50) !important;
  font-size: 13px !important;
}

footer .footer-bottom a,
footer .copyright a,
footer .bottom-bar a {
  font-size: 13px !important;
  color: rgba(255,255,255,.55) !important;
}

/* Mobile footer */
@media (max-width: 768px) {

  .toksave-legal-note-v42,
  .toksave-legal-note-v48 {
    width: calc(100% - 32px) !important;
    margin: 32px auto 0 auto !important;
    padding: 15px 16px !important;

    font-size: 12.5px !important;
    line-height: 1.6 !important;
    text-align: left !important;
  }

  footer {
    padding: 42px 18px 24px 18px !important;
  }

  footer .footer-content,
  footer .footer-grid,
  footer .footer-container,
  footer .container,
  footer > .container {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }

  footer .footer-brand,
  footer .brand,
  footer .footer-logo,
  footer .logo-block {
    max-width: 100% !important;
  }

  footer img,
  footer .logo-img {
    max-width: 155px !important;
    margin-bottom: 16px !important;
  }

  footer p {
    max-width: 100% !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
  }

  footer h3,
  footer h4,
  footer .footer-title {
    margin-bottom: 12px !important;
  }

  footer .footer-bottom,
  footer .copyright,
  footer .bottom-bar {
    margin-top: 30px !important;
    padding-top: 18px !important;

    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;

    font-size: 12.5px !important;
  }
}

/* TOKSAVE V48 FOOTER CLEAN END */

/* TOKSAVE V49 PLATFORM PAGES START */

.platform-page {
  background: #070708;
  color: #fff;
  overflow-x: hidden;
}

.platform-page .platform-container {
  width: min(1120px, calc(100% - 40px));
  margin: 0 auto;
}

.platform-page header {
  background: rgba(8,6,8,.98);
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.platform-page #toksave-v47-menu-only {
  display: none;
}

.platform-hero {
  padding: 72px 0 70px 0;
  background:
    radial-gradient(circle at 18% 18%, rgba(255,0,80,.18), transparent 30%),
    radial-gradient(circle at 80% 12%, rgba(255,0,80,.12), transparent 32%),
    linear-gradient(180deg, rgba(255,0,80,.06), rgba(0,0,0,0));
}

.platform-download {
  max-width: 760px !important;
  margin: 0 auto 14px auto !important;
}

.platform-benefits {
  margin: 0 auto 38px auto;
  text-align: center;
  color: rgba(255,255,255,.78);
  font-size: 14px;
  font-weight: 850;
}

.platform-kicker,
.platform-page .section-label {
  color: #ff2d63;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: 12px;
  font-weight: 950;
  text-align: center;
}

.platform-hero h1 {
  max-width: 780px;
  margin: 18px auto 18px auto;

  font-size: clamp(42px, 7vw, 82px);
  line-height: .98;
  letter-spacing: -0.045em;
  font-weight: 950;
  text-align: center;
}

.platform-intro {
  max-width: 660px;
  margin: 0 auto;

  color: rgba(255,255,255,.68);
  font-size: 18px;
  line-height: 1.65;
  text-align: center;
}

.platform-how,
.platform-features,
.platform-faq,
.platform-links {
  padding: 64px 0;
}

.platform-how h2,
.platform-features h2,
.platform-faq h2,
.platform-links h2 {
  max-width: 760px;
  margin: 12px auto 34px auto;

  font-size: clamp(34px, 5vw, 56px);
  line-height: 1.05;
  letter-spacing: -0.03em;
  text-align: center;
}

.platform-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

.platform-step,
.platform-feature-card,
.platform-faq details,
.platform-link-grid a {
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.045);
  border-radius: 22px;
}

.platform-step {
  padding: 20px;
}

.platform-step-icon {
  width: 46px;
  height: 46px;
  margin-bottom: 16px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;
  border: 1px solid rgba(255,0,80,.28);
  background: rgba(255,0,80,.10);
  font-size: 20px;
}

.platform-step h3,
.platform-feature-card h3 {
  margin: 0 0 10px 0;
  color: #fff;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 950;
}

.platform-step p,
.platform-feature-card p,
.platform-faq p {
  margin: 0;
  color: rgba(255,255,255,.64);
  font-size: 14px;
  line-height: 1.6;
}

.platform-feature-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.platform-feature-card {
  padding: 24px;
}

.platform-faq-list {
  max-width: 860px;
  margin: 0 auto;
}

.platform-faq details {
  padding: 18px 20px;
  margin-bottom: 12px;
}

.platform-faq summary {
  cursor: pointer;
  color: #fff;
  font-size: 17px;
  font-weight: 900;
}

.platform-faq p {
  margin-top: 12px;
}

.platform-link-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.platform-link-grid a {
  display: block;
  padding: 16px;
  color: rgba(255,255,255,.78);
  text-decoration: none;
  font-size: 14px;
  line-height: 1.4;
  font-weight: 800;
}

.platform-link-grid a:hover {
  color: #fff;
  border-color: rgba(255,0,80,.35);
}

@media (max-width: 768px) {
  .platform-page .platform-container {
    width: calc(100% - 32px);
  }

  .platform-page header {
    height: 74px;
    padding: 0 18px;
    position: sticky;
    top: 0;
    z-index: 9999;

    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .platform-page header nav {
    display: none;
  }

  .platform-page .logo-img {
    max-width: 170px;
    max-height: 42px;
  }

  .platform-page #toksave-v47-menu-only {
    display: flex !important;
    width: 38px;
    height: 38px;
    border: 0;
    background: transparent;
    align-items: center;
    justify-content: center;
    flex-direction: column;
  }

  .platform-page #toksave-v47-menu-only span {
    display: block;
    width: 27px;
    height: 3px;
    margin: 3px 0;
    background: #fff;
    border-radius: 999px;
  }

  .platform-page .mobile-nav {
    display: none;
    position: fixed;
    top: 74px;
    left: 0;
    right: 0;
    z-index: 9998;
    padding: 18px;
    background: rgba(8,6,8,.98);
    border-bottom: 1px solid rgba(255,255,255,.08);
  }

  .platform-page .mobile-nav.active,
  .platform-page .mobile-nav.open {
    display: grid;
    gap: 12px;
  }

  .platform-page .mobile-nav a {
    color: #fff;
    text-decoration: none;
    font-weight: 850;
    padding: 12px;
    border-radius: 12px;
    background: rgba(255,255,255,.05);
  }

  .platform-hero {
    padding: 26px 0 44px 0;
  }

  .platform-download {
    margin-bottom: 10px !important;
  }

  .platform-benefits {
    margin-bottom: 30px;
    font-size: 12px;
  }

  .platform-kicker {
    font-size: 10.5px;
  }

  .platform-hero h1 {
    margin: 14px auto 16px auto;
    font-size: clamp(34px, 10vw, 46px);
    line-height: 1.02;
    text-align: left;
  }

  .platform-intro {
    font-size: 15px;
    line-height: 1.55;
    text-align: left;
  }

  .platform-how,
  .platform-features,
  .platform-faq,
  .platform-links {
    padding: 40px 0;
  }

  .platform-how h2,
  .platform-features h2,
  .platform-faq h2,
  .platform-links h2 {
    margin-bottom: 24px;
    font-size: clamp(27px, 7.5vw, 36px);
  }

  .platform-steps,
  .platform-feature-grid,
  .platform-link-grid {
    grid-template-columns: 1fr;
  }

  .platform-step {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 13px;
    border-radius: 16px;
  }

  .platform-step-icon {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    margin-bottom: 0;
    border-radius: 11px;
    font-size: 16px;
  }

  .platform-step h3 {
    margin-bottom: 3px;
    font-size: 15.5px;
  }

  .platform-step p {
    font-size: 12.8px;
    line-height: 1.38;
  }

  .platform-feature-card,
  .platform-faq details,
  .platform-link-grid a {
    border-radius: 16px;
  }
}
/* TOKSAVE V49 PLATFORM PAGES END */



/* TOKSAVE V53 PLATFORM DESKTOP POLISH START */

/* Ne concerne que les pages plateformes */
.platform-page .platform-hero {
  padding: 58px 0 54px 0 !important;
}

.platform-page .platform-download {
  width: min(820px, 100%) !important;
  max-width: 820px !important;
  margin: 0 auto 18px auto !important;
}

.platform-page .platform-benefits {
  margin-bottom: 34px !important;
  font-size: 14px !important;
  letter-spacing: .01em !important;
}

.platform-page .platform-kicker {
  margin-bottom: 16px !important;
}

.platform-page .platform-hero h1 {
  max-width: 820px !important;
  margin: 0 auto 18px auto !important;

  font-size: clamp(48px, 5.5vw, 74px) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.045em !important;
}

.platform-page .platform-intro {
  max-width: 700px !important;
  font-size: 17px !important;
  line-height: 1.6 !important;
}

.platform-page .platform-how,
.platform-page .platform-features,
.platform-page .platform-faq,
.platform-page .platform-links {
  padding: 54px 0 !important;
}

.platform-page .platform-how h2,
.platform-page .platform-features h2,
.platform-page .platform-faq h2,
.platform-page .platform-links h2 {
  margin: 10px auto 30px auto !important;
  font-size: clamp(34px, 4vw, 50px) !important;
}

.platform-page .platform-steps {
  max-width: 980px !important;
  margin: 0 auto !important;
  gap: 18px !important;
}

.platform-page .platform-step {
  min-height: 190px !important;
  padding: 22px !important;
}

.platform-page .platform-step h3 {
  font-size: 18px !important;
  line-height: 1.22 !important;
}

.platform-page .platform-step p {
  font-size: 14px !important;
  line-height: 1.55 !important;
}

.platform-page .platform-feature-grid {
  max-width: 980px !important;
  margin: 0 auto !important;
}

.platform-page .platform-faq-list {
  max-width: 820px !important;
}

.platform-page .platform-link-grid {
  max-width: 980px !important;
  margin: 0 auto !important;
}

/* Desktop large : éviter que le titre devienne trop massif */
@media (min-width: 1200px) {
  .platform-page .platform-hero h1 {
    font-size: 72px !important;
  }
}

/* On conserve le comportement mobile existant */
@media (max-width: 768px) {
  .platform-page .platform-hero {
    padding: 26px 0 44px 0 !important;
  }

  .platform-page .platform-hero h1 {
    font-size: clamp(34px, 10vw, 46px) !important;
    text-align: left !important;
  }

  .platform-page .platform-intro {
    font-size: 15px !important;
    text-align: left !important;
  }

  .platform-page .platform-step {
    min-height: auto !important;
  }
}

/* TOKSAVE V53 PLATFORM DESKTOP POLISH END */


/* TOKSAVE V54 PLATFORM DESKTOP ORDER START */

/* Desktop uniquement : meilleur ordre visuel sur les pages plateformes */
@media (min-width: 769px) {

  .platform-page .platform-hero {
    padding: 72px 0 64px 0 !important;
  }

  .platform-page .platform-hero .platform-container {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  .platform-page .platform-kicker {
    order: 1 !important;
    margin: 0 0 16px 0 !important;
  }

  .platform-page .platform-hero h1 {
    order: 2 !important;
    max-width: 860px !important;
    margin: 0 auto 18px auto !important;

    font-size: clamp(48px, 5.2vw, 70px) !important;
    line-height: 1.03 !important;
    letter-spacing: -0.045em !important;
    text-align: center !important;
  }

  .platform-page .platform-intro {
    order: 3 !important;
    max-width: 700px !important;
    margin: 0 auto 30px auto !important;

    font-size: 17px !important;
    line-height: 1.6 !important;
    text-align: center !important;
  }

  .platform-page .platform-download {
    order: 4 !important;

    width: min(760px, 100%) !important;
    max-width: 760px !important;

    margin: 0 auto 14px auto !important;
    padding: 8px !important;

    transform: none !important;
    position: relative !important;
    top: auto !important;
  }

  .platform-page .platform-benefits {
    order: 5 !important;
    margin: 0 auto !important;

    font-size: 14px !important;
    line-height: 1.5 !important;
    text-align: center !important;
  }

  .platform-page .platform-how {
    padding-top: 52px !important;
  }

  .platform-page .platform-how h2 {
    margin-bottom: 30px !important;
  }

  .platform-page .platform-steps {
    max-width: 980px !important;
    margin: 0 auto !important;
  }
}

/* Mobile : on conserve l’ordre mobile déjà validé */
@media (max-width: 768px) {

  .platform-page .platform-hero .platform-container {
    display: flex !important;
    flex-direction: column !important;
  }

  .platform-page .platform-download {
    order: 1 !important;
  }

  .platform-page .platform-benefits {
    order: 2 !important;
  }

  .platform-page .platform-kicker {
    order: 3 !important;
  }

  .platform-page .platform-hero h1 {
    order: 4 !important;
  }

  .platform-page .platform-intro {
    order: 5 !important;
  }
}

/* TOKSAVE V54 PLATFORM DESKTOP ORDER END */


/* TOKSAVE V55 PLATFORM CONVERSION POLISH START */

/* Pages plateformes uniquement */
@media (min-width: 769px) {

  .platform-page .platform-download {
    background: rgba(255,255,255,.075) !important;
    border: 1px solid rgba(255,255,255,.16) !important;

    box-shadow:
      0 18px 48px rgba(0,0,0,.38),
      0 12px 36px rgba(255,0,80,.16) !important;
  }

  .platform-page .platform-download .paste-btn {
    background: rgba(255,255,255,.10) !important;
    color: rgba(255,255,255,.92) !important;
    opacity: 1 !important;
  }

  .platform-page .platform-download .url-input,
  .platform-page .platform-download #urlInput {
    color: rgba(255,255,255,.96) !important;
    opacity: 1 !important;
  }

  .platform-page .platform-download .url-input::placeholder,
  .platform-page .platform-download #urlInput::placeholder {
    color: rgba(255,255,255,.62) !important;
    opacity: 1 !important;
  }

  .platform-page .platform-download .download-btn {
    color: #ffffff !important;
    opacity: 1 !important;
    box-shadow:
      0 10px 30px rgba(255,0,80,.28),
      inset 0 1px 0 rgba(255,255,255,.18) !important;
  }

  .platform-page .platform-benefits {
    color: rgba(255,255,255,.82) !important;
    font-weight: 900 !important;
  }

  .platform-page .platform-how {
    padding-top: 38px !important;
  }

  .platform-page .platform-how h2 {
    margin-bottom: 28px !important;
  }

  .platform-page .platform-step {
    background:
      radial-gradient(circle at 20% 0%, rgba(255,255,255,.055), transparent 38%),
      rgba(255,255,255,.045) !important;
  }
}

/* Mobile : uniquement lisibilité, pas de changement de structure */
@media (max-width: 768px) {

  .platform-page .platform-download .url-input::placeholder,
  .platform-page .platform-download #urlInput::placeholder {
    color: rgba(255,255,255,.70) !important;
    opacity: 1 !important;
  }
}

/* TOKSAVE V55 PLATFORM CONVERSION POLISH END */


/* TOKSAVE V56 PLATFORM MOBILE POLISH START */

/* Pages plateformes uniquement */
@media (max-width: 768px) {

  .platform-page .platform-hero {
    padding: 24px 0 34px 0 !important;
  }

  .platform-page .platform-container {
    width: calc(100% - 32px) !important;
  }

  /* Barre de téléchargement : on garde la position, mais on ajuste la lisibilité */
  .platform-page .platform-download {
    margin: 0 auto 12px auto !important;
    padding: 7px !important;
    border-radius: 20px !important;

    grid-template-columns: 100px minmax(0, 1fr) 132px !important;
    gap: 6px !important;
  }

  .platform-page .platform-download .paste-btn,
  .platform-page .platform-download .download-btn,
  .platform-page .platform-download .url-input,
  .platform-page .platform-download #urlInput {
    height: 58px !important;
    font-size: 14px !important;
  }

  .platform-page .platform-download .paste-btn {
    font-size: 14px !important;
  }

  .platform-page .platform-download .download-btn {
    font-size: 14px !important;
    font-weight: 900 !important;
  }

  .platform-page .platform-download .url-input,
  .platform-page .platform-download #urlInput {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  /* Avantages : plus compact */
  .platform-page .platform-benefits {
    margin: 0 auto 32px auto !important;

    max-width: 100% !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 850 !important;
    text-align: center !important;

    color: rgba(255,255,255,.78) !important;
  }

  /* Petit label */
  .platform-page .platform-kicker {
    margin-bottom: 14px !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    letter-spacing: .18em !important;
    text-align: center !important;
  }

  /* Titre mobile : moins massif */
  .platform-page .platform-hero h1 {
    margin: 0 0 18px 0 !important;

    font-size: clamp(34px, 8.4vw, 42px) !important;
    line-height: 1.06 !important;
    letter-spacing: -0.045em !important;

    text-align: left !important;
  }

  .platform-page .platform-intro {
    margin: 0 !important;

    font-size: 16px !important;
    line-height: 1.55 !important;
    color: rgba(255,255,255,.72) !important;
    text-align: left !important;
  }

  /* Réduire l’espace avant Comment ça marche */
  .platform-page .platform-how {
    padding: 34px 0 36px 0 !important;
  }

  .platform-page .section-label {
    font-size: 11px !important;
    line-height: 1.35 !important;
    letter-spacing: .18em !important;
  }

  .platform-page .platform-how h2,
  .platform-page .platform-features h2,
  .platform-page .platform-faq h2,
  .platform-page .platform-links h2 {
    margin: 10px auto 22px auto !important;

    font-size: clamp(30px, 7.2vw, 36px) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.035em !important;
  }

  /* Cartes plus compactes */
  .platform-page .platform-steps {
    gap: 14px !important;
  }

  .platform-page .platform-step {
    padding: 18px !important;
    border-radius: 18px !important;

    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
  }

  .platform-page .platform-step-icon {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;

    margin: 0 !important;
    border-radius: 13px !important;
    font-size: 18px !important;
  }

  .platform-page .platform-step h3 {
    margin: 0 0 5px 0 !important;

    font-size: 20px !important;
    line-height: 1.15 !important;
    letter-spacing: -0.02em !important;
  }

  .platform-page .platform-step p {
    margin: 0 !important;

    font-size: 15px !important;
    line-height: 1.45 !important;
    color: rgba(255,255,255,.68) !important;
  }

  .platform-page .platform-features,
  .platform-page .platform-faq,
  .platform-page .platform-links {
    padding: 38px 0 !important;
  }
}

/* Petits écrans */
@media (max-width: 390px) {

  .platform-page .platform-container {
    width: calc(100% - 28px) !important;
  }

  .platform-page .platform-download {
    grid-template-columns: 88px minmax(0, 1fr) 116px !important;
    gap: 5px !important;
  }

  .platform-page .platform-download .paste-btn,
  .platform-page .platform-download .download-btn,
  .platform-page .platform-download .url-input,
  .platform-page .platform-download #urlInput {
    height: 54px !important;
    font-size: 12px !important;
  }

  .platform-page .platform-benefits {
    font-size: 12px !important;
  }

  .platform-page .platform-hero h1 {
    font-size: clamp(31px, 8.5vw, 38px) !important;
  }

  .platform-page .platform-intro {
    font-size: 15px !important;
  }

  .platform-page .platform-step h3 {
    font-size: 18px !important;
  }

  .platform-page .platform-step p {
    font-size: 14px !important;
  }
}

/* TOKSAVE V56 PLATFORM MOBILE POLISH END */


/* TOKSAVE V57 PLATFORM MOBILE FINAL START */

/* Pages plateformes uniquement */
@media (max-width: 768px) {

  .platform-page .platform-hero {
    padding: 22px 0 30px 0 !important;
  }

  .platform-page .platform-container {
    width: calc(100% - 34px) !important;
  }

  /* Barre : garder la position, améliorer la lisibilité */
  .platform-page .platform-download {
    grid-template-columns: 96px minmax(0, 1fr) 128px !important;
    gap: 6px !important;

    margin: 0 auto 10px auto !important;
    padding: 7px !important;
    border-radius: 19px !important;
  }

  .platform-page .platform-download .paste-btn,
  .platform-page .platform-download .download-btn,
  .platform-page .platform-download .url-input,
  .platform-page .platform-download #urlInput {
    height: 56px !important;
    font-size: 13px !important;
  }

  .platform-page .platform-download .download-btn {
    font-weight: 950 !important;
  }

  .platform-page .platform-download .url-input::placeholder,
  .platform-page .platform-download #urlInput::placeholder {
    color: transparent !important;
  }

  .platform-page .platform-download .url-input,
  .platform-page .platform-download #urlInput {
    color: rgba(255,255,255,.88) !important;
  }

  /* Avantages : une ligne plus propre */
  .platform-page .platform-benefits {
    margin: 0 auto 28px auto !important;
    font-size: 12.5px !important;
    line-height: 1.35 !important;
    font-weight: 850 !important;
    color: rgba(255,255,255,.76) !important;
    text-align: center !important;
  }

  .platform-page .platform-kicker {
    margin-bottom: 12px !important;
    font-size: 10.5px !important;
    letter-spacing: .17em !important;
  }

  /* Titre mobile moins lourd */
  .platform-page .platform-hero h1 {
    margin: 0 0 16px 0 !important;

    font-size: clamp(30px, 7.4vw, 37px) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.04em !important;

    max-width: 100% !important;
    text-align: left !important;
  }

  .platform-page .platform-intro {
    font-size: 15px !important;
    line-height: 1.5 !important;
    color: rgba(255,255,255,.70) !important;
  }

  .platform-page .platform-how {
    padding: 30px 0 34px 0 !important;
  }

  .platform-page .section-label {
    font-size: 10.5px !important;
    letter-spacing: .17em !important;
  }

  .platform-page .platform-how h2,
  .platform-page .platform-features h2,
  .platform-page .platform-faq h2,
  .platform-page .platform-links h2 {
    margin: 9px auto 20px auto !important;
    font-size: clamp(28px, 6.8vw, 34px) !important;
    line-height: 1.08 !important;
  }

  /* Cartes plus compactes */
  .platform-page .platform-steps {
    gap: 12px !important;
  }

  .platform-page .platform-step {
    padding: 15px !important;
    border-radius: 17px !important;
    gap: 13px !important;
  }

  .platform-page .platform-step-icon {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    border-radius: 12px !important;
    font-size: 17px !important;
  }

  .platform-page .platform-step h3 {
    font-size: 18px !important;
    line-height: 1.15 !important;
    margin-bottom: 4px !important;
  }

  .platform-page .platform-step p {
    font-size: 13.8px !important;
    line-height: 1.4 !important;
  }

  .platform-page .platform-features,
  .platform-page .platform-faq,
  .platform-page .platform-links {
    padding: 34px 0 !important;
  }
}

/* Petits téléphones */
@media (max-width: 390px) {

  .platform-page .platform-container {
    width: calc(100% - 30px) !important;
  }

  .platform-page .platform-download {
    grid-template-columns: 82px minmax(0, 1fr) 112px !important;
    gap: 5px !important;
  }

  .platform-page .platform-download .paste-btn,
  .platform-page .platform-download .download-btn,
  .platform-page .platform-download .url-input,
  .platform-page .platform-download #urlInput {
    height: 52px !important;
    font-size: 12px !important;
  }

  .platform-page .platform-benefits {
    font-size: 11.5px !important;
  }

  .platform-page .platform-hero h1 {
    font-size: clamp(28px, 7.2vw, 34px) !important;
  }

  .platform-page .platform-intro {
    font-size: 14.5px !important;
  }

  .platform-page .platform-step h3 {
    font-size: 17px !important;
  }

  .platform-page .platform-step p {
    font-size: 13.2px !important;
  }
}

/* TOKSAVE V57 PLATFORM MOBILE FINAL END */


/* TOKSAVE V58 PLATFORM MOBILE MICROCOPY START */

@media (max-width: 768px) {

  /* Rendre la ligne bénéfices plus courte sur mobile */
  .platform-page .platform-benefits {
    font-size: 0 !important;
    line-height: 1 !important;
    margin-bottom: 28px !important;
  }

  .platform-page .platform-benefits::before {
    content: "Sans watermark • Gratuit • HD • MP3" !important;
    display: block !important;

    font-size: 12.5px !important;
    line-height: 1.35 !important;
    font-weight: 900 !important;
    color: rgba(255,255,255,.78) !important;
    text-align: center !important;
    white-space: nowrap !important;
  }

  /* Placeholder plus lisible, sans forcer un texte trop long */
  .platform-page .platform-download .url-input,
  .platform-page .platform-download #urlInput {
    font-size: 13px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .platform-page .platform-download .url-input::placeholder,
  .platform-page .platform-download #urlInput::placeholder {
    color: rgba(255,255,255,.66) !important;
    opacity: 1 !important;
  }
}

@media (max-width: 390px) {
  .platform-page .platform-benefits::before {
    font-size: 11.5px !important;
  }

  .platform-page .platform-download .url-input,
  .platform-page .platform-download #urlInput {
    font-size: 12px !important;
  }
}

/* TOKSAVE V58 PLATFORM MOBILE MICROCOPY END */


/* TOKSAVE V64 PLATFORM SEO ENRICHMENT CSS START */

.platform-page .platform-seo-content {
  padding: 72px 0 78px 0;
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 0, 80, .10), transparent 34%),
    linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.42));
}

.platform-page .platform-seo-content h2 {
  max-width: 900px;
  margin: 10px auto 18px auto;
  text-align: center;
  font-size: clamp(34px, 4vw, 54px);
  line-height: 1.05;
  letter-spacing: -.04em;
}

.platform-page .platform-seo-lead {
  max-width: 820px;
  margin: 0 auto 32px auto;
  color: rgba(255,255,255,.72);
  text-align: center;
  font-size: 17px;
  line-height: 1.7;
}

.platform-page .platform-seo-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  max-width: 980px;
  margin: 0 auto 42px auto;
}

.platform-page .platform-seo-card {
  padding: 26px;
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(circle at 15% 0%, rgba(255,255,255,.06), transparent 34%),
    rgba(255,255,255,.045);
  box-shadow: 0 20px 50px rgba(0,0,0,.28);
}

.platform-page .platform-seo-card h3 {
  margin: 0 0 14px 0;
  color: #fff;
  font-size: 22px;
  line-height: 1.2;
  letter-spacing: -.02em;
}

.platform-page .platform-seo-card ul {
  margin: 0;
  padding-left: 18px;
}

.platform-page .platform-seo-card li {
  margin: 9px 0;
  color: rgba(255,255,255,.70);
  font-size: 15px;
  line-height: 1.55;
}

.platform-page .platform-seo-faq {
  max-width: 860px;
  margin: 0 auto;
}

.platform-page .platform-seo-faq details {
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.045);
  border-radius: 18px;
  padding: 18px 20px;
  margin: 12px 0;
}

.platform-page .platform-seo-faq summary {
  cursor: pointer;
  color: #fff;
  font-weight: 900;
  font-size: 17px;
  line-height: 1.35;
}

.platform-page .platform-seo-faq p {
  margin: 12px 0 0 0;
  color: rgba(255,255,255,.70);
  font-size: 15px;
  line-height: 1.65;
}

@media (max-width: 768px) {
  .platform-page .platform-seo-content {
    padding: 42px 0 48px 0;
  }

  .platform-page .platform-seo-content h2 {
    text-align: left;
    font-size: clamp(27px, 7vw, 34px);
    line-height: 1.08;
    margin-bottom: 14px;
  }

  .platform-page .platform-seo-lead {
    text-align: left;
    font-size: 15px;
    line-height: 1.58;
    margin-bottom: 22px;
  }

  .platform-page .platform-seo-grid {
    grid-template-columns: 1fr;
    gap: 14px;
    margin-bottom: 30px;
  }

  .platform-page .platform-seo-card {
    padding: 18px;
    border-radius: 18px;
  }

  .platform-page .platform-seo-card h3 {
    font-size: 20px;
  }

  .platform-page .platform-seo-card li {
    font-size: 14px;
    line-height: 1.48;
  }

  .platform-page .platform-seo-faq details {
    padding: 16px;
    border-radius: 16px;
  }

  .platform-page .platform-seo-faq summary {
    font-size: 16px;
  }

  .platform-page .platform-seo-faq p {
    font-size: 14px;
    line-height: 1.55;
  }
}

/* TOKSAVE V64 PLATFORM SEO ENRICHMENT CSS END */


/* TOKSAVE V65 SEO SECTION POLISH START */

/* Desktop : section SEO plus compacte */
@media (min-width: 769px) {

  .platform-page .platform-seo-content {
    padding: 54px 0 58px 0 !important;
  }

  .platform-page .platform-seo-content h2 {
    max-width: 820px !important;
    margin: 8px auto 14px auto !important;
    font-size: clamp(30px, 3.4vw, 46px) !important;
    line-height: 1.06 !important;
  }

  .platform-page .platform-seo-lead {
    max-width: 760px !important;
    margin: 0 auto 26px auto !important;
    font-size: 15.5px !important;
    line-height: 1.62 !important;
  }

  .platform-page .platform-seo-grid {
    max-width: 900px !important;
    gap: 16px !important;
    margin-bottom: 34px !important;
  }

  .platform-page .platform-seo-card {
    padding: 22px 24px !important;
    border-radius: 22px !important;
  }

  .platform-page .platform-seo-card h3 {
    font-size: 20px !important;
    margin-bottom: 12px !important;
  }

  .platform-page .platform-seo-card li {
    font-size: 14.5px !important;
    line-height: 1.5 !important;
    margin: 7px 0 !important;
  }

  .platform-page .platform-seo-faq {
    max-width: 820px !important;
  }

  .platform-page .platform-seo-faq details {
    padding: 15px 18px !important;
    border-radius: 16px !important;
    margin: 10px 0 !important;
  }

  .platform-page .platform-seo-faq summary {
    font-size: 15.5px !important;
  }
}

/* Mobile : garder le SEO utile, mais plus léger */
@media (max-width: 768px) {

  .platform-page .platform-seo-content {
    padding: 34px 0 40px 0 !important;
  }

  .platform-page .platform-seo-content .section-label {
    text-align: center !important;
    margin-bottom: 12px !important;
  }

  .platform-page .platform-seo-content h2 {
    font-size: clamp(25px, 6.3vw, 31px) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.035em !important;
    margin: 0 0 12px 0 !important;
  }

  .platform-page .platform-seo-lead {
    font-size: 14.5px !important;
    line-height: 1.55 !important;
    margin-bottom: 20px !important;
  }

  .platform-page .platform-seo-grid {
    gap: 12px !important;
    margin-bottom: 26px !important;
  }

  .platform-page .platform-seo-card {
    padding: 16px 17px !important;
    border-radius: 17px !important;
  }

  .platform-page .platform-seo-card h3 {
    font-size: 19px !important;
    line-height: 1.18 !important;
    margin-bottom: 10px !important;
  }

  .platform-page .platform-seo-card ul {
    padding-left: 16px !important;
  }

  .platform-page .platform-seo-card li {
    font-size: 13.8px !important;
    line-height: 1.46 !important;
    margin: 7px 0 !important;
  }

  .platform-page .platform-seo-faq .section-label {
    margin-bottom: 12px !important;
  }

  .platform-page .platform-seo-faq details {
    padding: 14px 15px !important;
    border-radius: 15px !important;
    margin: 10px 0 !important;
  }

  .platform-page .platform-seo-faq summary {
    font-size: 15.2px !important;
    line-height: 1.35 !important;
  }

  .platform-page .platform-seo-faq p {
    font-size: 13.8px !important;
    line-height: 1.5 !important;
  }
}

/* Très petits écrans */
@media (max-width: 390px) {

  .platform-page .platform-seo-content h2 {
    font-size: clamp(23px, 6vw, 29px) !important;
  }

  .platform-page .platform-seo-lead {
    font-size: 14px !important;
  }

  .platform-page .platform-seo-card h3 {
    font-size: 18px !important;
  }

  .platform-page .platform-seo-card li {
    font-size: 13.2px !important;
  }

  .platform-page .platform-seo-faq summary {
    font-size: 14.5px !important;
  }
}

/* TOKSAVE V65 SEO SECTION POLISH END */

/* TOKSAVE CROSS-LINKS SECTION START */
.platform-cross-links {
  background: #0e1117;
  padding: 36px 0 44px 0;
  border-top: 1px solid rgba(255,255,255,0.07);
}

.platform-cross-links .section-label {
  display: block;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.45);
  margin: 0 0 16px 0;
}

.ts-cross-links-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.ts-cross-link {
  display: inline-flex;
  align-items: center;
  padding: 9px 18px;
  border-radius: 30px;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.12);
  color: rgba(255,255,255,0.80);
  font-size: 13.5px;
  font-weight: 500;
  text-decoration: none;
  transition: background 0.18s, border-color 0.18s, color 0.18s;
  white-space: nowrap;
}

.ts-cross-link:hover {
  background: rgba(255,255,255,0.14);
  border-color: rgba(255,255,255,0.25);
  color: #fff;
  text-decoration: none;
}

@media (max-width: 768px) {
  .platform-cross-links {
    padding: 28px 0 34px 0;
  }

  .ts-cross-links-grid {
    gap: 8px;
  }

  .ts-cross-link {
    font-size: 13px;
    padding: 8px 15px;
  }
}

@media (max-width: 390px) {
  .ts-cross-link {
    font-size: 12.5px;
    padding: 7px 13px;
  }
}
/* TOKSAVE CROSS-LINKS SECTION END */
/* ══════════════════════════════════════════════════════════
   TOKSAVE V65 — SEO GUIDE REDESIGN
   ══════════════════════════════════════════════════════════ */

/* ── Guide section ───────────────────────────────────────── */
.ts-guide {
  background: #0a0a0f;
  padding: 72px 0 64px;
  border-top: 1px solid rgba(255,255,255,0.06);
}

.ts-guide__eyebrow {
  display: block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #ff2d55;
  text-align: center;
  margin: 0 0 20px;
}

.ts-guide__h2 {
  font-size: clamp(26px, 3.6vw, 44px) !important;
  font-weight: 800 !important;
  line-height: 1.07 !important;
  letter-spacing: -0.03em !important;
  color: #fff !important;
  text-align: center !important;
  margin: 0 auto 18px !important;
  max-width: 820px;
}

.ts-guide__lead {
  font-size: 16px;
  line-height: 1.7;
  color: rgba(255,255,255,0.5);
  text-align: center;
  max-width: 620px;
  margin: 0 auto 56px;
}

/* ── Feature cards — 3 equal columns ────────────────────── */
.ts-guide__feats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-bottom: 52px;
}

.ts-feat {
  position: relative;
  background: rgba(255,255,255,0.028);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 22px;
  padding: 30px 26px 26px;
  overflow: hidden;
  transition: border-color 0.2s, background 0.2s;
}

.ts-feat:hover {
  background: rgba(255,255,255,0.045);
  border-color: rgba(255,255,255,0.12);
}

.ts-feat__num {
  display: block;
  font-size: 54px;
  font-weight: 900;
  line-height: 1;
  color: rgba(255,255,255,0.045);
  margin-bottom: 18px;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.03em;
}

.ts-feat__title {
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: rgba(255,255,255,0.9);
  margin-bottom: 10px;
  line-height: 1.35;
}

.ts-feat__body {
  font-size: 13.5px;
  line-height: 1.65;
  color: rgba(255,255,255,0.48);
  margin: 0;
}

/* ── FAQ ─────────────────────────────────────────────────── */
.ts-guide__faq {
  border-top: 1px solid rgba(255,255,255,0.07);
  padding-top: 40px;
}

.ts-faq-item {
  border-bottom: 1px solid rgba(255,255,255,0.07);
}

.ts-faq-item summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 18px 0;
  font-size: 15px;
  font-weight: 600;
  color: rgba(255,255,255,0.78);
  cursor: pointer;
  list-style: none;
  gap: 20px;
  transition: color 0.15s;
  user-select: none;
}

.ts-faq-item summary::-webkit-details-marker { display: none; }
.ts-faq-item summary::marker { display: none; }

.ts-faq-item summary::after {
  content: '+';
  font-size: 22px;
  font-weight: 300;
  color: rgba(255,255,255,0.25);
  flex-shrink: 0;
  line-height: 1;
  transition: transform 0.2s, color 0.2s;
}

.ts-faq-item[open] > summary::after {
  transform: rotate(45deg);
  color: #ff2d55;
}

.ts-faq-item[open] > summary {
  color: #fff;
}

.ts-faq-item > p {
  font-size: 14px;
  line-height: 1.7;
  color: rgba(255,255,255,0.5);
  padding: 0 32px 22px 0;
  margin: 0;
}

/* ── Cross-links — Platform nav ──────────────────────────── */
.ts-platforms {
  background: #060609;
  padding: 44px 0 52px;
  border-top: 1px solid rgba(255,255,255,0.05);
}

.ts-platforms__label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.28);
  text-align: center;
  margin: 0 0 24px;
}

.ts-platforms__row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.ts-pl {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 20px;
  border-radius: 100px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.09);
  color: rgba(255,255,255,0.72);
  font-size: 13.5px;
  font-weight: 500;
  text-decoration: none !important;
  transition: background 0.18s, border-color 0.18s, color 0.18s;
  white-space: nowrap;
}

.ts-pl:hover {
  background: rgba(255,255,255,0.09);
  border-color: rgba(255,255,255,0.2);
  color: #fff;
  text-decoration: none !important;
}

.ts-pl__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
  display: inline-block;
}

.ts-pl--tiktok .ts-pl__dot    { background: #ffffff; }
.ts-pl--instagram .ts-pl__dot { background: linear-gradient(135deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }
.ts-pl--reels .ts-pl__dot     { background: linear-gradient(135deg, #f09433 0%, #dc2743 50%, #bc1888 100%); }
.ts-pl--facebook .ts-pl__dot  { background: #1877f2; }
.ts-pl--youtube .ts-pl__dot   { background: #ff0000; }
.ts-pl--shorts .ts-pl__dot    { background: #ff0000; }
.ts-pl--x .ts-pl__dot         { background: #e7e7e7; }
.ts-pl--mp3 .ts-pl__dot       { background: #ff2d55; }
.ts-pl--watermark .ts-pl__dot { background: #10b981; }
.ts-pl--pinterest .ts-pl__dot { background: #e60023; }
.ts-pl--douyin .ts-pl__dot    { background: linear-gradient(135deg, #69c9d0, #ee1d52); }

/* ── Responsive ──────────────────────────────────────────── */
@media (max-width: 900px) {
  .ts-guide__feats { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
  .ts-guide { padding: 48px 0 40px; }
  .ts-guide__lead { font-size: 15px; margin-bottom: 36px; }
  .ts-guide__feats { grid-template-columns: 1fr; gap: 12px; margin-bottom: 36px; }
  .ts-feat { padding: 22px 20px 20px; border-radius: 18px; }
  .ts-feat__num { font-size: 42px; margin-bottom: 14px; }
  .ts-feat__title { font-size: 14.5px; }
  .ts-guide__faq { padding-top: 32px; }
  .ts-faq-item summary { font-size: 14.5px; padding: 16px 0; }
  .ts-platforms { padding: 32px 0 40px; }
  .ts-platforms__row { gap: 8px; }
  .ts-pl { font-size: 13px; padding: 9px 16px; }
}

@media (max-width: 390px) {
  .ts-feat { padding: 18px 16px 16px; border-radius: 16px; }
  .ts-feat__num { font-size: 36px; }
  .ts-pl { font-size: 12.5px; padding: 8px 14px; gap: 7px; }
  .ts-pl__dot { width: 7px; height: 7px; }
}

/* ══════════════════════════════════════════════════════════
   END TOKSAVE V65 SEO GUIDE REDESIGN
   ══════════════════════════════════════════════════════════ */




/* TOKSAVE V66 PLATFORM INTERNAL LINKS CSS START */

.platform-links {
  padding: 62px 0 72px 0;
  background:
    radial-gradient(circle at 50% 10%, rgba(255, 0, 80, .10), transparent 35%),
    linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.55));
}

.platform-links h2 {
  max-width: 820px;
  margin: 10px auto 14px auto;
  text-align: center;
  font-size: clamp(32px, 3.4vw, 48px);
  line-height: 1.05;
  letter-spacing: -.04em;
}

.platform-links-lead {
  max-width: 760px;
  margin: 0 auto 28px auto;
  text-align: center;
  color: rgba(255,255,255,.70);
  font-size: 16px;
  line-height: 1.65;
}

.platform-links-grid {
  max-width: 980px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.platform-links-grid a {
  display: flex;
  align-items: center;
  justify-content: center;

  min-height: 58px;
  padding: 14px 16px;
  border-radius: 18px;

  text-decoration: none;
  color: #fff;
  font-weight: 900;
  font-size: 15px;
  line-height: 1.2;
  text-align: center;

  border: 1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(circle at 20% 0%, rgba(255,255,255,.08), transparent 32%),
    rgba(255,255,255,.045);
  box-shadow: 0 18px 45px rgba(0,0,0,.22);

  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.platform-links-grid a:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 0, 80, .45);
  background: rgba(255, 0, 80, .10);
}

.footer-platforms-v66 {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.footer-platforms-v66 h4 {
  margin: 0 0 8px 0;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 13px;
}

.footer-platforms-v66 a {
  color: rgba(255,255,255,.62);
  text-decoration: none;
  font-size: 14px;
  line-height: 1.35;
}

.footer-platforms-v66 a:hover {
  color: #fff;
}

@media (max-width: 900px) {
  .platform-links-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .platform-links {
    padding: 42px 0 48px 0;
  }

  .platform-links h2 {
    text-align: left;
    font-size: clamp(26px, 6.6vw, 34px);
    margin-bottom: 12px;
  }

  .platform-links-lead {
    text-align: left;
    font-size: 14.5px;
    line-height: 1.55;
    margin-bottom: 22px;
  }

  .platform-links-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .platform-links-grid a {
    min-height: 52px;
    border-radius: 16px;
    justify-content: flex-start;
    font-size: 15px;
  }

  .footer-platforms-v66 {
    margin-top: 24px;
  }
}

/* TOKSAVE V66 PLATFORM INTERNAL LINKS CSS END */


/* TOKSAVE V67 FOOTER PLATFORMS FIX START */

/* Corrige l'ancien bloc V66 mal placé s'il reste dans une page */
.footer-platforms-v66 {
  display: none !important;
}

/* Colonne plateformes intégrée proprement au footer */
.footer-platforms-v67 {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.footer-platforms-v67 h4 {
  margin: 0 0 8px 0 !important;
  color: #fff !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

.footer-platforms-v67 a {
  color: rgba(255,255,255,.62) !important;
  text-decoration: none !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

.footer-platforms-v67 a:hover {
  color: #fff !important;
}

/* Si le footer utilise une grille, permettre 4 colonnes propres */
.footer-grid,
.footer-content,
.footer-inner,
.footer-main {
  column-gap: 70px;
}

@media (min-width: 900px) {
  .footer-grid,
  .footer-content,
  .footer-inner,
  .footer-main {
    grid-template-columns: 1.4fr repeat(4, minmax(130px, 1fr)) !important;
  }
}

@media (max-width: 768px) {
  .footer-platforms-v67 {
    margin-top: 22px !important;
  }
}

/* TOKSAVE V67 FOOTER PLATFORMS FIX END */


/* TOKSAVE V68 FOOTER + PLATFORM LABEL FIX START */

/* Corrige le label PLATEFORMES qui part à gauche */
.platform-links > .platform-container,
.platform-page .platform-links > .platform-container {
  max-width: 980px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.platform-links .section-label,
.platform-page .platform-links .section-label {
  display: block !important;
  position: static !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: 100% !important;
  max-width: 980px !important;
  margin: 0 auto 12px auto !important;
  text-align: center !important;
}

/* Masquer les anciennes injections footer ratées */
.footer-platforms-v66,
.footer-platforms-v67 {
  display: none !important;
}

/* Colonne Plateformes réelle dans le footer */
.footer-platforms-v68 {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.footer-platforms-v68 h4,
.footer-platforms-v68 h3 {
  margin: 0 0 8px 0 !important;
  color: #fff !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

.footer-platforms-v68 a {
  color: rgba(255,255,255,.62) !important;
  text-decoration: none !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

.footer-platforms-v68 a:hover {
  color: #fff !important;
}

/* Footer desktop : autoriser 4 colonnes de liens + bloc marque */
@media (min-width: 900px) {
  footer .footer-content,
  footer .footer-grid,
  footer .footer-inner,
  footer .footer-main {
    display: grid !important;
    grid-template-columns: minmax(260px, 1.45fr) repeat(4, minmax(130px, .7fr)) !important;
    gap: 52px !important;
    align-items: start !important;
  }
}

@media (max-width: 768px) {
  .platform-links .section-label,
  .platform-page .platform-links .section-label {
    text-align: left !important;
  }

  .footer-platforms-v68 {
    margin-top: 22px !important;
  }
}

/* TOKSAVE V68 FOOTER + PLATFORM LABEL FIX END */


/* TOKSAVE V69 REAL FOOTER PLATFORM COLUMN START */

.footer-platforms-v66,
.footer-platforms-v67,
.footer-platforms-v68 {
  display: none !important;
}

.footer-platforms-v69 {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.footer-platforms-v69 h4 {
  margin: 0 0 8px 0 !important;
  color: #fff !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

.footer-platforms-v69 a {
  color: rgba(255,255,255,.62) !important;
  text-decoration: none !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

.footer-platforms-v69 a:hover {
  color: #fff !important;
}

@media (min-width: 900px) {
  footer .footer-content,
  footer .footer-grid,
  footer .footer-inner,
  footer .footer-main {
    display: grid !important;
    grid-template-columns: minmax(280px, 1.4fr) repeat(4, minmax(120px, .7fr)) !important;
    gap: 46px !important;
    align-items: start !important;
  }
}

@media (max-width: 768px) {
  .footer-platforms-v69 {
    margin-top: 22px !important;
  }
}

/* TOKSAVE V69 REAL FOOTER PLATFORM COLUMN END */


/* TOKSAVE V70 FOOTER PLATFORM COLUMN CSS START */

.footer-platforms-v66,
.footer-platforms-v67,
.footer-platforms-v68,
.footer-platforms-v69 {
  display: none !important;
}

.footer-platforms-v70 {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.footer-platforms-v70 h4 {
  margin: 0 0 8px 0 !important;
  color: #fff !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

.footer-platforms-v70 a {
  color: rgba(255,255,255,.62) !important;
  text-decoration: none !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

.footer-platforms-v70 a:hover {
  color: #fff !important;
}

@media (min-width: 900px) {
  footer .footer-content,
  footer .footer-grid,
  footer .footer-inner,
  footer .footer-main {
    display: grid !important;
    grid-template-columns: minmax(260px, 1.35fr) repeat(4, minmax(120px, .75fr)) !important;
    gap: 42px !important;
    align-items: start !important;
  }
}

@media (max-width: 768px) {
  .footer-platforms-v70 {
    margin-top: 22px !important;
  }
}

/* TOKSAVE V70 FOOTER PLATFORM COLUMN CSS END */


/* TOKSAVE V71 CLEAN FOOTER CSS START */

.footer-platforms-v66,
.footer-platforms-v67,
.footer-platforms-v68,
.footer-platforms-v69,
.footer-platforms-v70 {
  display: none !important;
}

.toksave-footer-v71 {
  width: 100%;
  padding: 58px 0 32px 0;
  border-top: 1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at 50% 0%, rgba(255,0,80,.05), transparent 34%),
    rgba(0,0,0,.62);
}

.toksave-footer-v71-inner {
  width: min(1180px, calc(100% - 44px));
  margin: 0 auto;
}

.toksave-footer-v71-main {
  display: grid;
  grid-template-columns: minmax(260px, 1.35fr) repeat(4, minmax(120px, .7fr));
  gap: 46px;
  align-items: start;
}

.toksave-footer-v71-brand {
  max-width: 330px;
}

.toksave-footer-v71-logo {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  margin-bottom: 22px;
}

.toksave-footer-v71-logo img {
  display: block;
  width: 150px;
  height: auto;
}

.toksave-footer-v71-brand p {
  margin: 0 0 22px 0;
  color: rgba(255,255,255,.62);
  font-size: 14.5px;
  line-height: 1.65;
}

.toksave-footer-v71-socials {
  display: flex;
  align-items: center;
  gap: 10px;
}

.toksave-footer-v71-socials a {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  color: rgba(255,255,255,.72);
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.09);
  font-size: 13px;
  font-weight: 800;
}

.toksave-footer-v71-col {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.toksave-footer-v71-col h4 {
  margin: 0 0 8px 0;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 13px;
  line-height: 1.2;
  font-weight: 900;
}

.toksave-footer-v71-col a {
  color: rgba(255,255,255,.62);
  text-decoration: none;
  font-size: 14px;
  line-height: 1.35;
}

.toksave-footer-v71-col a:hover {
  color: #fff;
}

.toksave-footer-v71-bottom {
  margin-top: 46px;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,.08);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  color: rgba(255,255,255,.58);
  font-size: 13.5px;
}

.toksave-footer-v71-bottom div {
  display: flex;
  align-items: center;
  gap: 20px;
}

.toksave-footer-v71-bottom a {
  color: rgba(255,255,255,.62);
  text-decoration: none;
}

.toksave-footer-v71-bottom a:hover {
  color: #fff;
}

@media (max-width: 980px) {
  .toksave-footer-v71-main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .toksave-footer-v71-brand {
    max-width: none;
  }
}

@media (max-width: 768px) {
  .toksave-footer-v71 {
    padding: 42px 0 28px 0;
  }

  .toksave-footer-v71-inner {
    width: min(100% - 40px, 1180px);
  }

  .toksave-footer-v71-main {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .toksave-footer-v71-logo img {
    width: 140px;
  }

  .toksave-footer-v71-bottom {
    margin-top: 34px;
    flex-direction: column;
    align-items: flex-start;
  }
}

/* TOKSAVE V71 CLEAN FOOTER CSS END */


/* TOKSAVE V75 PLATFORM DOWNLOAD BRIDGE CSS START */

.toksave-v75-status {
  width: min(640px, calc(100% - 40px));
  margin: 14px auto 0 auto;
  padding: 12px 16px;
  border-radius: 14px;
  display: none;
  text-align: center;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.35;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.055);
  color: rgba(255,255,255,.82);
}

.toksave-v75-status[data-type="loading"] {
  border-color: rgba(255,0,80,.35);
  color: #fff;
}

.toksave-v75-status[data-type="success"] {
  border-color: rgba(20,200,120,.35);
  color: #fff;
}

.toksave-v75-status[data-type="error"] {
  border-color: rgba(255,60,60,.45);
  color: #fff;
}

.toksave-v75-result {
  width: min(760px, calc(100% - 40px));
  margin: 18px auto 0 auto;
  display: none;
}

@media (max-width: 768px) {
  .toksave-v75-status,
  .toksave-v75-result {
    width: calc(100% - 32px);
  }
}

/* TOKSAVE V75 PLATFORM DOWNLOAD BRIDGE CSS END */


/* TOKSAVE V76 PLATFORM DOWNLOAD OPTIONS CSS START */

.toksave-v76-status {
  width: min(640px, calc(100% - 40px));
  margin: 16px auto 0 auto;
  padding: 12px 16px;
  border-radius: 14px;
  display: none;
  text-align: center;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.35;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.055);
  color: rgba(255,255,255,.82);
}

.toksave-v76-status[data-type="loading"] {
  border-color: rgba(255,0,80,.35);
  color: #fff;
}

.toksave-v76-status[data-type="success"] {
  border-color: rgba(20,200,120,.35);
  color: #fff;
}

.toksave-v76-status[data-type="error"] {
  border-color: rgba(255,60,60,.45);
  color: #fff;
}

.toksave-v76-result {
  width: min(720px, calc(100% - 40px));
  margin: 18px auto 0 auto;
  display: none;
}

.toksave-v76-card {
  border-radius: 22px;
  padding: 22px;
  background:
    radial-gradient(circle at 30% 0%, rgba(255,0,80,.12), transparent 38%),
    rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 22px 60px rgba(0,0,0,.28);
  text-align: center;
}

.toksave-v76-card h3 {
  margin: 0 0 8px 0;
  color: #fff;
  font-size: 24px;
  line-height: 1.15;
}

.toksave-v76-card p {
  margin: 0 0 18px 0;
  color: rgba(255,255,255,.68);
  font-size: 14.5px;
}

.toksave-v76-actions {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}

.toksave-v76-btn {
  border: 0;
  cursor: pointer;
  min-height: 48px;
  padding: 0 22px;
  border-radius: 999px;
  color: #fff;
  background: #ff0b55;
  font-weight: 900;
  font-size: 14px;
  box-shadow: 0 12px 34px rgba(255, 0, 80, .32);
}

.toksave-v76-btn.secondary {
  background: rgba(255,255,255,.09);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: none;
}

.toksave-v76-warning {
  color: rgba(255,255,255,.75);
  font-size: 14px;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .toksave-v76-status,
  .toksave-v76-result {
    width: calc(100% - 32px);
  }

  .toksave-v76-actions {
    flex-direction: column;
  }

  .toksave-v76-btn {
    width: 100%;
  }
}

/* TOKSAVE V76 PLATFORM DOWNLOAD OPTIONS CSS END */


/* TOKSAVE V77 REAL GETVIDEO RESPONSE CSS START */

.toksave-v77-status {
  width: min(640px, calc(100% - 40px));
  margin: 16px auto 0 auto;
  padding: 12px 16px;
  border-radius: 14px;
  display: none;
  text-align: center;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.35;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.055);
  color: rgba(255,255,255,.82);
}

.toksave-v77-status[data-type="loading"] {
  border-color: rgba(255,0,80,.35);
  color: #fff;
}

.toksave-v77-status[data-type="success"] {
  border-color: rgba(20,200,120,.35);
  color: #fff;
}

.toksave-v77-status[data-type="error"] {
  border-color: rgba(255,60,60,.45);
  color: #fff;
}

.toksave-v77-result {
  width: min(720px, calc(100% - 40px));
  margin: 18px auto 0 auto;
  display: none;
}

.toksave-v77-card {
  border-radius: 22px;
  padding: 22px;
  background:
    radial-gradient(circle at 30% 0%, rgba(255,0,80,.12), transparent 38%),
    rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 22px 60px rgba(0,0,0,.28);
  text-align: center;
}

.toksave-v77-card h3 {
  margin: 0 0 8px 0;
  color: #fff;
  font-size: 24px;
  line-height: 1.15;
}

.toksave-v77-card p {
  margin: 0 0 18px 0;
  color: rgba(255,255,255,.68);
  font-size: 14.5px;
}

.toksave-v77-actions {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}

.toksave-v77-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 22px;
  border-radius: 999px;
  color: #fff;
  background: #ff0b55;
  font-weight: 900;
  font-size: 14px;
  text-decoration: none;
  box-shadow: 0 12px 34px rgba(255, 0, 80, .32);
}

.toksave-v77-btn:nth-child(2) {
  background: rgba(255,255,255,.09);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: none;
}

.toksave-v77-debug {
  max-height: 260px;
  overflow: auto;
  text-align: left;
  white-space: pre-wrap;
  background: rgba(0,0,0,.35);
  border-radius: 14px;
  padding: 14px;
  color: rgba(255,255,255,.72);
  font-size: 12px;
}

@media (max-width: 768px) {
  .toksave-v77-status,
  .toksave-v77-result {
    width: calc(100% - 32px);
  }

  .toksave-v77-actions {
    flex-direction: column;
  }

  .toksave-v77-btn {
    width: 100%;
  }
}

/* TOKSAVE V77 REAL GETVIDEO RESPONSE CSS END */


/* TOKSAVE V78 HOME ENGINE CONTRACT CSS START */

.toksave-v78-download-options,
.download-options {
  width: min(760px, calc(100% - 40px));
  margin: 18px auto 0 auto;
  display: none;
  gap: 12px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

.download-options[style*="block"],
.download-options.active,
.download-options.show {
  display: flex !important;
}

.download-options .btn,
.download-options button,
.downloadBtn,
.downloadBtnHD,
.downloadBtnmp3 {
  min-height: 48px;
  padding: 0 20px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.08);
  color: #fff;
  font-weight: 900;
  cursor: pointer;
}

.download-options #downloadBtn,
.download-options .downloadBtn {
  background: #ff0b55;
  border-color: #ff0b55;
  box-shadow: 0 12px 34px rgba(255,0,80,.28);
}

.download-options #downloadBtnmp3,
.download-options .downloadBtnmp3 {
  background: rgba(255,255,255,.10);
}

.toksave-download-error {
  width: min(640px, calc(100% - 40px));
  margin: 14px auto 0 auto;
  padding: 12px 16px;
  border-radius: 14px;
  border: 1px solid rgba(255,60,60,.45);
  background: rgba(255,60,60,.08);
  color: #fff;
  text-align: center;
  font-weight: 800;
}

@media (max-width: 768px) {
  .toksave-v78-download-options,
  .download-options {
    width: calc(100% - 32px);
    flex-direction: column;
  }

  .download-options .btn,
  .download-options button,
  .downloadBtn,
  .downloadBtnHD,
  .downloadBtnmp3 {
    width: 100%;
  }
}

/* TOKSAVE V78 HOME ENGINE CONTRACT CSS END */


/* TOKSAVE V80 DOWNLOAD PANEL START */
.toksave-v80-result {
  max-width: 720px;
  margin: 26px auto 0;
  padding: 0 16px;
  display: none;
}

.toksave-v80-result.visible {
  display: block;
}

.toksave-v80-loader,
.toksave-v80-content,
.toksave-v80-error {
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(18,18,18,.72);
  backdrop-filter: blur(14px);
  border-radius: 22px;
  padding: 18px;
  color: #fff;
  text-align: center;
  box-shadow: 0 18px 50px rgba(0,0,0,.22);
}

.toksave-v80-status {
  font-weight: 800;
  margin-bottom: 14px;
}

.toksave-v80-options {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}

.toksave-v80-btn {
  border: 0;
  border-radius: 16px;
  padding: 14px 18px;
  min-width: 190px;
  background: #ff0750;
  color: #fff;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(255,7,80,.28);
}

.toksave-v80-btn-secondary {
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: none;
}

.toksave-v80-error {
  color: #fff;
  border-color: rgba(255,7,80,.35);
  background: rgba(255,7,80,.12);
}

@media (max-width: 640px) {
  .toksave-v80-result {
    margin-top: 20px;
    padding: 0 18px;
  }

  .toksave-v80-options {
    flex-direction: column;
  }

  .toksave-v80-btn {
    width: 100%;
    min-width: 0;
  }
}
/* TOKSAVE V80 DOWNLOAD PANEL END */


/* TOKSAVE V81 PLATFORM DOWNLOAD CSS START */
.toksave-v81-panel {
  max-width: 720px;
  margin: 26px auto 0;
  padding: 0 16px;
  display: none;
  position: relative;
  z-index: 20;
}

.toksave-v81-card {
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(18,18,18,.76);
  backdrop-filter: blur(14px);
  border-radius: 22px;
  padding: 18px;
  color: #fff;
  text-align: center;
  box-shadow: 0 18px 50px rgba(0,0,0,.24);
}

.toksave-v81-status {
  font-weight: 900;
  font-size: 15px;
  line-height: 1.45;
  color: rgba(255,255,255,.92);
}

.toksave-v81-status.is-loading::after {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 9px;
  border: 2px solid rgba(255,255,255,.3);
  border-top-color: #ff0750;
  border-radius: 50%;
  vertical-align: -2px;
  animation: toksaveV81Spin .8s linear infinite;
}

.toksave-v81-status.is-error {
  color: #fff;
}

.toksave-v81-actions {
  margin-top: 16px;
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}

.toksave-v81-btn {
  border: 0;
  border-radius: 16px;
  padding: 14px 18px;
  min-width: 210px;
  background: #ff0750;
  color: #fff;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(255,7,80,.28);
}

.toksave-v81-btn-dark {
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: none;
}

@keyframes toksaveV81Spin {
  to {
    transform: rotate(360deg);
  }
}

@media (max-width: 640px) {
  .toksave-v81-panel {
    margin-top: 20px;
    padding: 0 18px;
  }

  .toksave-v81-actions {
    flex-direction: column;
  }

  .toksave-v81-btn {
    width: 100%;
    min-width: 0;
  }
}
/* TOKSAVE V81 PLATFORM DOWNLOAD CSS END */


/* TOKSAVE V82 PLATFORM DOWNLOAD CSS START */
.toksave-v82-panel {
  max-width: 720px;
  margin: 24px auto 0;
  padding: 0 16px;
  display: none;
  position: relative;
  z-index: 30;
}

.toksave-v82-card {
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(18,18,18,.78);
  backdrop-filter: blur(14px);
  border-radius: 22px;
  padding: 18px;
  color: #fff;
  text-align: center;
  box-shadow: 0 18px 50px rgba(0,0,0,.24);
}

.toksave-v82-status {
  font-weight: 900;
  font-size: 15px;
  line-height: 1.45;
  color: rgba(255,255,255,.92);
}

.toksave-v82-status.is-loading::after {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 9px;
  border: 2px solid rgba(255,255,255,.3);
  border-top-color: #ff0750;
  border-radius: 50%;
  vertical-align: -2px;
  animation: toksaveV82Spin .8s linear infinite;
}

.toksave-v82-status.is-error {
  color: #fff;
}

.toksave-v82-actions {
  margin-top: 16px;
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}

.toksave-v82-btn {
  border: 0;
  border-radius: 16px;
  padding: 14px 18px;
  min-width: 210px;
  background: #ff0750;
  color: #fff;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(255,7,80,.28);
}

.toksave-v82-btn-dark {
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: none;
}

.toksave-v82-direct {
  margin-top: 14px;
  display: inline-flex;
  color: #fff;
  font-weight: 900;
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,.45);
}

@keyframes toksaveV82Spin {
  to {
    transform: rotate(360deg);
  }
}

@media (max-width: 640px) {
  .toksave-v82-panel {
    margin-top: 18px;
    padding: 0 18px;
  }

  .toksave-v82-actions {
    flex-direction: column;
  }

  .toksave-v82-btn {
    width: 100%;
    min-width: 0;
  }
}
/* TOKSAVE V82 PLATFORM DOWNLOAD CSS END */


/* TOKSAVE V83 HOME RESULT CLONE CSS START */
#toksaveV82Panel {
  display: none !important;
}

.toksave-home-result-clone {
  max-width: 900px;
  margin: 40px auto 70px;
  padding: 0 18px;
  position: relative;
  z-index: 20;
}

.toksave-home-result-clone .result-card {
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 210px 1fr;
  gap: 24px;
  align-items: stretch;
  background: rgba(18, 18, 18, .86);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 22px;
  padding: 18px;
  box-shadow: 0 20px 55px rgba(0,0,0,.35);
  backdrop-filter: blur(14px);
}

.toksave-home-result-clone .video-cover-wrap {
  position: relative;
  min-height: 260px;
  border-radius: 18px;
  overflow: hidden;
  background: rgba(255,255,255,.06);
}

.toksave-home-result-clone .cover-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.toksave-home-result-clone .preview-play {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 0;
  background: rgba(0,0,0,.65);
  color: #fff;
  font-size: 20px;
  cursor: pointer;
}

.toksave-home-result-clone .video-info {
  min-width: 0;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.toksave-home-result-clone .author-name {
  color: rgba(255,255,255,.65);
  font-size: 13px;
  font-weight: 800;
  margin-bottom: 8px;
}

.toksave-home-result-clone .video-title {
  font-size: 22px;
  line-height: 1.25;
  margin: 0 0 14px;
  color: #fff;
}

.toksave-home-result-clone .video-meta {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 16px;
}

.toksave-home-result-clone .video-meta span {
  display: inline-flex;
  align-items: center;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.76);
  font-size: 12px;
  font-weight: 800;
}

.toksave-home-result-clone .download-options {
  display: grid;
  gap: 12px;
}

.toksave-home-result-clone .dl-option {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 16px;
  align-items: center;
  padding: 14px;
  border-radius: 16px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.08);
}

.toksave-home-result-clone .dl-option strong {
  display: block;
  color: #fff;
  font-size: 15px;
  margin-bottom: 3px;
}

.toksave-home-result-clone .dl-option span {
  color: rgba(255,255,255,.62);
  font-size: 12px;
  font-weight: 700;
}

.toksave-home-result-clone .btn,
.toksave-home-result-clone button[id^="downloadBtn"] {
  border: 0;
  border-radius: 12px;
  padding: 12px 16px;
  background: #ff0750;
  color: #fff;
  font-weight: 900;
  cursor: pointer;
  white-space: nowrap;
}

.toksave-home-result-clone #downloadBtnmp3 {
  background: #7c3aed;
}

@media (max-width: 760px) {
  .toksave-home-result-clone {
    margin: 28px auto 50px;
  }

  .toksave-home-result-clone .result-card {
    grid-template-columns: 1fr;
    max-width: 520px;
  }

  .toksave-home-result-clone .video-cover-wrap {
    min-height: 280px;
  }

  .toksave-home-result-clone .dl-option {
    grid-template-columns: 1fr;
  }

  .toksave-home-result-clone .btn,
  .toksave-home-result-clone button[id^="downloadBtn"] {
    width: 100%;
  }
}
/* TOKSAVE V83 HOME RESULT CLONE CSS END */

/* TOKSAVE V84 EXACT HOME RESULT CSS START */
#toksaveV82Panel {
  display: none !important;
}

.platform-home-result-v84 {
  position: relative;
  z-index: 30;
  margin-top: 36px !important;
  margin-bottom: 70px !important;
}

.platform-home-result-v84 .result-card,
.platform-home-result-v84 .download-options,
.platform-home-result-v84 .dl-option {
  visibility: visible !important;
}

@media (max-width: 768px) {
  .platform-home-result-v84 {
    margin-top: 26px !important;
    margin-bottom: 52px !important;
  }
}
/* TOKSAVE V84 EXACT HOME RESULT CSS END */

/* TOKSAVE V85 PLATFORM RESULT BUTTONS CSS START */
.platform-home-result-v84,
.toksave-home-result-clone,
#toksaveV82Panel {
  display: none !important;
}

.platform-result-v85 {
  width: min(860px, calc(100% - 32px));
  margin: 28px auto 64px !important;
  position: relative;
  z-index: 20;
}

.platform-result-v85 .toksave-v85-loading {
  padding: 22px;
  border-radius: 20px;
  background: rgba(20, 20, 24, .88);
  border: 1px solid rgba(255,255,255,.12);
  color: #fff;
  text-align: center;
  font-weight: 800;
}

.platform-result-v85 .toksave-v85-card,
.platform-result-v85 .result-card {
  width: 100%;
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 22px;
  padding: 18px;
  border-radius: 24px;
  background: rgba(20, 20, 24, .92);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 18px 60px rgba(0,0,0,.35);
}

.platform-result-v85 .toksave-v85-thumb img,
.platform-result-v85 .coverImage,
.platform-result-v85 .cover-image,
.platform-result-v85 .thumbnail {
  width: 180px;
  height: 260px;
  object-fit: cover;
  border-radius: 16px;
  display: block;
}

.platform-result-v85 .toksave-v85-info,
.platform-result-v85 .video-info {
  color: #fff;
}

.platform-result-v85 .author-name {
  color: rgba(255,255,255,.65);
  font-weight: 700;
  margin-bottom: 10px;
}

.platform-result-v85 .video-title,
.platform-result-v85 #videoTitle {
  color: #fff;
  font-size: 22px;
  line-height: 1.25;
  margin: 0 0 14px;
  font-weight: 900;
}

.platform-result-v85 .toksave-v85-meta,
.platform-result-v85 .video-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  color: rgba(255,255,255,.74);
  font-weight: 700;
}

.platform-result-actions-v85 {
  margin-top: 16px;
  display: none;
  gap: 14px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

.platform-result-actions-v85 button {
  border: 0;
  cursor: pointer;
  min-height: 54px;
  padding: 0 28px;
  border-radius: 16px;
  color: #fff;
  font-weight: 900;
  font-size: 15px;
  transition: transform .15s ease, opacity .15s ease;
}

.platform-result-actions-v85 button:hover {
  transform: translateY(-1px);
}

.platform-result-download-video-v85 {
  background: #ff1654;
  box-shadow: 0 10px 35px rgba(255,22,84,.30);
}

.platform-result-download-mp3-v85 {
  background: #7c3aed;
  box-shadow: 0 10px 35px rgba(124,58,237,.30);
}

@media (max-width: 768px) {
  .platform-result-v85 {
    width: calc(100% - 32px);
    margin: 22px auto 46px !important;
  }

  .platform-result-v85 .toksave-v85-card,
  .platform-result-v85 .result-card {
    grid-template-columns: 110px 1fr;
    gap: 14px;
    padding: 14px;
    border-radius: 20px;
  }

  .platform-result-v85 .toksave-v85-thumb img,
  .platform-result-v85 .coverImage,
  .platform-result-v85 .cover-image,
  .platform-result-v85 .thumbnail {
    width: 110px;
    height: 160px;
    border-radius: 14px;
  }

  .platform-result-v85 .video-title,
  .platform-result-v85 #videoTitle {
    font-size: 17px;
  }

  .platform-result-actions-v85 {
    flex-direction: column;
    align-items: stretch;
  }

  .platform-result-actions-v85 button {
    width: 100%;
  }
}
/* TOKSAVE V85 PLATFORM RESULT BUTTONS CSS END */

/* TOKSAVE V90 PLATFORM HOME RESULT COMPAT START */
.platform-home-result-v90 {
    max-width: 980px;
    margin: 46px auto 70px;
    padding: 0 18px;
}

.platform-home-result-v90 .result-card {
    display: flex;
    gap: 22px;
    align-items: stretch;
    background: rgba(18,18,18,.92);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 22px;
    padding: 18px;
    box-shadow: 0 24px 60px rgba(0,0,0,.35);
}

.platform-home-result-v90 .result-thumb-wrap {
    width: 170px;
    min-width: 170px;
    border-radius: 18px;
    overflow: hidden;
    position: relative;
    background: rgba(255,255,255,.06);
}

.platform-home-result-v90 .thumbnail {
    width: 100%;
    height: 100%;
    min-height: 230px;
    object-fit: cover;
    display: block;
}

.platform-home-result-v90 .play-btn {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 54px;
    height: 54px;
    border-radius: 999px;
    border: 0;
    background: rgba(0,0,0,.65);
    color: white;
    cursor: pointer;
}

.platform-home-result-v90 .result-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 14px;
}

.platform-home-result-v90 .author-name {
    color: rgba(255,255,255,.72);
    font-size: 14px;
    font-weight: 600;
}

.platform-home-result-v90 .video-title {
    color: #fff;
    font-size: 20px;
    line-height: 1.35;
    margin: 0;
}

.platform-home-result-v90 .video-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.platform-home-result-v90 .video-stats span:not(:empty) {
    display: inline-flex;
    align-items: center;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(255,255,255,.08);
    color: rgba(255,255,255,.78);
    font-size: 13px;
}

.platform-home-result-v90 .download-options {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-top: 4px;
}

.platform-home-result-v90 #downloadBtnHD,
.platform-home-result-v90 #downloadBtnmp3 {
    width: 100%;
    min-height: 52px;
    border-radius: 14px;
    border: 0;
    cursor: pointer;
    font-weight: 800;
}

@media (max-width: 700px) {
    .platform-home-result-v90 {
        margin: 32px auto 48px;
        padding: 0 16px;
    }

    .platform-home-result-v90 .result-card {
        flex-direction: column;
    }

    .platform-home-result-v90 .result-thumb-wrap {
        width: 100%;
        min-width: 0;
        max-height: 360px;
    }

    .platform-home-result-v90 .download-options {
        grid-template-columns: 1fr;
    }
}
/* TOKSAVE V90 PLATFORM HOME RESULT COMPAT END */






/* TOKSAVE PLATFORM HOME RESULT V92 START */

.platform-home-download-v92 {
    width: min(760px, calc(100% - 32px));
    margin: 28px auto 16px auto;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px;
    border-radius: 22px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 0 34px rgba(255,45,93,.22);
    backdrop-filter: blur(12px);
    position: relative;
    z-index: 10;
}

.platform-home-download-v92 .paste-btn {
    flex: 0 0 auto;
    height: 52px;
    padding: 0 22px;
    border: 0;
    border-radius: 16px;
    background: rgba(255,255,255,.13);
    color: #fff;
    font-weight: 800;
    cursor: pointer;
}

.platform-home-download-v92 #urlInput {
    flex: 1 1 auto;
    min-width: 0;
    height: 52px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #fff;
    font-weight: 700;
}

.platform-home-download-v92 #urlInput::placeholder {
    color: rgba(255,255,255,.58);
}

.platform-home-download-v92 .download-btn {
    flex: 0 0 auto;
    height: 52px;
    padding: 0 28px;
    border: 0;
    border-radius: 16px;
    background: #ff2d5d;
    color: #fff;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 0 24px rgba(255,45,93,.45);
}

.platform-home-result-v92 {
    width: min(860px, calc(100% - 32px));
    margin: 28px auto 42px auto;
    position: relative;
    z-index: 20;
}

.platform-home-result-card-v92 {
    display: grid;
    grid-template-columns: 180px 1fr;
    gap: 22px;
    align-items: stretch;
    border-radius: 22px;
    background: rgba(20,20,20,.94);
    border: 1px solid rgba(255,255,255,.10);
    box-shadow: 0 20px 60px rgba(0,0,0,.35);
    overflow: hidden;
}

.platform-home-result-card-v92 .result-thumb-wrap {
    position: relative;
    min-height: 230px;
    background: rgba(255,255,255,.04);
}

.platform-home-result-card-v92 .thumbnail {
    width: 100%;
    height: 100%;
    min-height: 230px;
    object-fit: cover;
    display: block;
}

.platform-home-result-card-v92 .play-btn {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 54px;
    height: 54px;
    border: 0;
    border-radius: 999px;
    background: rgba(0,0,0,.72);
    color: #fff;
}

.platform-home-result-card-v92 .result-info {
    padding: 24px 24px 24px 0;
}

.platform-home-result-card-v92 .author-name {
    color: rgba(255,255,255,.62);
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 8px;
}

.platform-home-result-card-v92 .video-title {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
    font-weight: 900;
    margin-bottom: 14px;
}

.platform-home-result-card-v92 .meta-row {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 18px;
}

.platform-home-result-card-v92 .meta-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,.08);
    color: rgba(255,255,255,.75);
    font-weight: 700;
    font-size: 13px;
}

.platform-home-result-card-v92 .download-options {
    display: grid;
    gap: 12px;
}

.platform-home-result-card-v92 .dl-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px;
    border-radius: 14px;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.08);
}

.platform-home-result-card-v92 .dl-title {
    color: #fff;
    font-weight: 900;
}

.platform-home-result-card-v92 .dl-sub {
    color: rgba(255,255,255,.58);
    font-size: 13px;
    margin-top: 2px;
}

.platform-home-result-card-v92 .btn {
    min-width: 178px;
    border: 0;
    border-radius: 12px;
    padding: 13px 16px;
    color: #fff;
    font-weight: 900;
    cursor: pointer;
}

.platform-home-result-card-v92 #downloadBtnHD {
    background: #ff2d5d;
}

.platform-home-result-card-v92 #downloadBtnmp3 {
    background: #7b3ff2;
}

@media (max-width: 700px) {
    .platform-home-download-v92 {
        width: calc(100% - 28px);
        margin-top: 22px;
        border-radius: 20px;
        gap: 8px;
    }

    .platform-home-download-v92 .paste-btn {
        height: 50px;
        padding: 0 16px;
    }

    .platform-home-download-v92 .download-btn {
        height: 50px;
        padding: 0 18px;
    }

    .platform-home-result-v92 {
        width: calc(100% - 28px);
    }

    .platform-home-result-card-v92 {
        grid-template-columns: 1fr;
    }

    .platform-home-result-card-v92 .result-thumb-wrap {
        min-height: 260px;
    }

    .platform-home-result-card-v92 .result-info {
        padding: 20px;
    }

    .platform-home-result-card-v92 .dl-option {
        flex-direction: column;
        align-items: stretch;
    }

    .platform-home-result-card-v92 .btn {
        width: 100%;
    }
}

/* TOKSAVE PLATFORM HOME RESULT V92 END */


/* TOKSAVE PLATFORM RESULT V93 START */

.platform-result-v93 {
    width: min(860px, calc(100% - 32px));
    margin: 28px auto 44px auto;
    position: relative;
    z-index: 50;
}

.platform-v93-loading,
.platform-v93-error {
    width: min(760px, 100%);
    margin: 0 auto;
    padding: 18px 22px;
    border-radius: 18px;
    background: rgba(20,20,20,.94);
    border: 1px solid rgba(255,255,255,.12);
    color: #fff;
    font-weight: 800;
    text-align: center;
    box-shadow: 0 18px 50px rgba(0,0,0,.35);
}

.platform-v93-error {
    background: rgba(255,45,93,.14);
    border-color: rgba(255,45,93,.35);
}

.platform-v93-card {
    display: grid;
    grid-template-columns: 190px 1fr;
    gap: 22px;
    width: min(860px, 100%);
    margin: 0 auto;
    border-radius: 24px;
    overflow: hidden;
    background: rgba(18,18,18,.96);
    border: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 24px 70px rgba(0,0,0,.42);
}

.platform-v93-thumb-wrap {
    position: relative;
    min-height: 250px;
    background: rgba(255,255,255,.05);
}

.platform-v93-thumb {
    width: 100%;
    height: 100%;
    min-height: 250px;
    object-fit: cover;
    display: block;
}

.platform-v93-play {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 58px;
    height: 58px;
    border: 0;
    border-radius: 999px;
    background: rgba(0,0,0,.72);
    color: #fff;
    font-size: 20px;
    cursor: pointer;
}

.platform-v93-info {
    padding: 24px 24px 24px 0;
}

.platform-v93-author {
    color: rgba(255,255,255,.62);
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 8px;
}

.platform-v93-title {
    color: #fff;
    font-size: 19px;
    line-height: 1.35;
    font-weight: 900;
    margin-bottom: 14px;
}

.platform-v93-meta {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 18px;
}

.platform-v93-meta span {
    display: inline-flex;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,.08);
    color: rgba(255,255,255,.75);
    font-size: 13px;
    font-weight: 700;
}

.platform-v93-options {
    display: grid;
    gap: 12px;
}

.platform-v93-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px;
    border-radius: 16px;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.08);
}

.platform-v93-option strong {
    display: block;
    color: #fff;
    font-weight: 900;
    font-size: 15px;
}

.platform-v93-option small {
    display: block;
    color: rgba(255,255,255,.58);
    font-size: 13px;
    margin-top: 3px;
}

.platform-v93-btn {
    min-width: 180px;
    border: 0;
    border-radius: 13px;
    padding: 13px 16px;
    color: #fff;
    font-weight: 900;
    cursor: pointer;
}

.platform-v93-btn-video {
    background: #ff2d5d;
    box-shadow: 0 0 22px rgba(255,45,93,.34);
}

.platform-v93-btn-audio {
    background: #7b3ff2;
    box-shadow: 0 0 22px rgba(123,63,242,.30);
}

@media (max-width: 700px) {
    .platform-result-v93 {
        width: calc(100% - 28px);
        margin-top: 22px;
    }

    .platform-v93-card {
        grid-template-columns: 1fr;
    }

    .platform-v93-thumb-wrap,
    .platform-v93-thumb {
        min-height: 280px;
    }

    .platform-v93-info {
        padding: 20px;
    }

    .platform-v93-option {
        flex-direction: column;
        align-items: stretch;
    }

    .platform-v93-btn {
        width: 100%;
    }
}

/* TOKSAVE PLATFORM RESULT V93 END */


/* TOKSAVE PLATFORM DOWNLOAD PARITY V94 */
.platform-home-result-v94,
#resultSection.platform-home-result-v94,
#resultSection {
  max-width: 920px;
  margin: 30px auto 70px;
  padding: 0 22px;
}

.platform-home-result-card-v94 {
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr);
  gap: 0;
  overflow: hidden;
  border-radius: 24px;
  background: rgba(18, 18, 18, 0.94);
  border: 1px solid rgba(255,255,255,0.10);
  box-shadow: 0 28px 80px rgba(0,0,0,0.35);
}

.platform-result-thumb-v94 {
  position: relative;
  min-height: 300px;
  background: rgba(255,255,255,0.04);
}

.platform-result-thumb-v94 img {
  width: 100%;
  height: 100%;
  min-height: 300px;
  object-fit: cover;
  display: block;
}

.platform-no-thumb-v94 {
  height: 100%;
  min-height: 300px;
  display: grid;
  place-items: center;
  font-weight: 900;
  font-size: 34px;
  color: #fff;
}

.platform-play-v94 {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 64px;
  height: 64px;
  border-radius: 999px;
  border: 0;
  transform: translate(-50%, -50%);
  background: rgba(0,0,0,0.65);
  color: #fff;
  font-size: 24px;
  cursor: pointer;
}

.platform-result-info-v94 {
  padding: 26px 26px 24px;
  color: #fff;
}

.platform-result-author-v94 {
  color: rgba(255,255,255,0.72);
  font-weight: 800;
  margin-bottom: 8px;
}

.platform-result-info-v94 .video-title {
  margin: 0 0 16px;
  font-size: 22px;
  line-height: 1.2;
  color: #fff;
}

.platform-result-meta-v94 {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 18px;
}

.platform-result-meta-v94 span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.78);
  font-size: 13px;
  font-weight: 800;
}

.platform-download-options-v94 {
  display: grid;
  gap: 12px;
}

.platform-download-option-v94 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 16px;
  border-radius: 16px;
  background: rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.08);
}

.platform-download-option-v94 strong {
  display: block;
  color: #fff;
  font-size: 17px;
  line-height: 1.2;
}

.platform-download-option-v94 span {
  display: block;
  margin-top: 4px;
  color: rgba(255,255,255,0.65);
  font-size: 13px;
}

.platform-download-option-v94 button {
  min-width: 185px;
  min-height: 48px;
  border-radius: 13px;
  border: 0;
  background: #ff2f63;
  color: #fff;
  font-weight: 900;
  cursor: pointer;
  padding: 0 18px;
  box-shadow: 0 12px 30px rgba(255,47,99,0.26);
}

.platform-download-option-v94 #downloadBtnmp3 {
  background: #7c3cff;
  box-shadow: 0 12px 30px rgba(124,60,255,0.24);
}

.platform-download-option-v94 button:disabled {
  opacity: 0.65;
  cursor: wait;
}

.platform-loading-card-v94 {
  display: block;
  padding: 28px;
  text-align: center;
}

.platform-loading-title-v94 {
  color: #fff;
  font-weight: 900;
  font-size: 20px;
}

.platform-loading-text-v94 {
  margin-top: 8px;
  color: rgba(255,255,255,0.66);
  font-weight: 600;
}

.toksave-download-error-v94 {
  position: fixed;
  left: 50%;
  bottom: 26px;
  z-index: 999999;
  transform: translateX(-50%);
  max-width: 92%;
  padding: 14px 18px;
  border-radius: 14px;
  background: #ff2f63;
  color: #fff;
  font-weight: 800;
  box-shadow: 0 18px 50px rgba(0,0,0,0.45);
}

@media (max-width: 768px) {
  .platform-home-result-card-v94 {
    grid-template-columns: 1fr;
    max-width: 430px;
    border-radius: 22px;
  }

  .platform-result-thumb-v94,
  .platform-result-thumb-v94 img,
  .platform-no-thumb-v94 {
    min-height: 360px;
  }

  .platform-result-info-v94 {
    padding: 22px;
  }

  .platform-download-option-v94 {
    grid-template-columns: 1fr;
  }

  .platform-download-option-v94 button {
    width: 100%;
  }
}

/* TOKSAVE FIX MOBILE PLATFORM FORM 20260623 START */
@media (max-width: 700px) {
  .platform-home-download-v92 {
    flex-direction: column;
    align-items: stretch;
  }

  .platform-home-download-v92 #urlInput,
  .platform-home-download-v92 .download-btn {
    width: 100%;
  }

  .platform-home-download-v92 .download-btn {
    justify-content: center;
  }
}
/* TOKSAVE FIX MOBILE PLATFORM FORM 20260623 END */

/* TOKSAVE FIX MOBILE HOME FORM PARITY 20260623 START */
@media (max-width: 700px) {
  .download-form#downloadForm,
  #downloadForm.download-form {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    grid-template-columns: none !important;
    gap: 8px !important;
  }

  .download-form#downloadForm .url-input,
  #downloadForm.download-form .url-input,
  .download-form#downloadForm #urlInput,
  #downloadForm.download-form #urlInput,
  .download-form#downloadForm .download-btn,
  #downloadForm.download-form .download-btn {
    width: 100% !important;
  }

  .download-form#downloadForm .download-btn,
  #downloadForm.download-form .download-btn {
    justify-content: center !important;
  }

  .download-form#downloadForm .paste-btn,
  #downloadForm.download-form .paste-btn {
    width: fit-content !important;
  }
}
/* TOKSAVE FIX MOBILE HOME FORM PARITY 20260623 END */

/* TOKSAVE FIX MOBILE RESULT COMPACT 20260623 START */
@media (max-width: 768px) {
  #resultSection .result-card,
  #resultContent .result-card {
    max-width: calc(100% - 24px);
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
  }

  #resultContent .result-title,
  #resultContent .vtitle {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.25;
    max-height: 2.6em;
  }

  #resultContent .result-description,
  #resultContent .vdesc {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.35;
    max-height: 2.8em;
  }

  #resultContent .result-meta {
    margin-bottom: 10px;
  }

  #resultContent .download-options,
  #resultContent .download-options.show,
  #resultContent .download-options.active {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    margin-top: 12px;
  }

  #resultContent .dl-option {
    width: 100%;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 12px;
    overflow: hidden;
  }

  #resultContent .dl-option-info {
    min-width: 0;
  }

  #resultContent .dl-label,
  #resultContent .dl-sub {
    overflow: hidden;
    text-overflow: ellipsis;
  }

  #resultContent .dl-btn {
    min-width: 150px;
    justify-content: center;
    white-space: nowrap;
  }
}
/* TOKSAVE FIX MOBILE RESULT COMPACT 20260623 END */

/* TOKSAVE FIX RESULT MOBILE CARD NO OVERFLOW 20260623 START */

/* Résultat desktop */
#resultContent .download-options,
#resultContent .download-options.show,
#resultContent .download-options.active {
  width: 420px !important;
  max-width: 420px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  margin: 18px auto 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

#resultContent .dl-option {
  width: 100% !important;
  height: 64px !important;
  min-height: 64px !important;
  max-height: 64px !important;
  box-sizing: border-box !important;
  border-radius: 18px !important;
  padding: 0 18px !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 14px !important;
  overflow: hidden !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  cursor: pointer !important;
  margin: 0 !important;
}

#resultContent .downloadBtn {
  background: linear-gradient(135deg, #ff2d5d, #ff0750) !important;
  box-shadow: 0 14px 36px rgba(255,45,93,.35) !important;
}

#resultContent .downloadBtnmp3 {
  background: linear-gradient(135deg, #3f3f46, #8b2cff) !important;
  box-shadow: 0 14px 36px rgba(139,44,255,.28) !important;
}

#resultContent .dl-option-icon {
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  max-width: 38px !important;
  border-radius: 12px !important;
  background: rgba(0,0,0,.22) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: none !important;
}

#resultContent .dl-option-info {
  min-width: 0 !important;
  width: auto !important;
  max-width: 100% !important;
}

#resultContent .dl-label {
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

#resultContent .downloadBtn .dl-label,
#resultContent .downloadBtnmp3 .dl-label {
  font-size: 0 !important;
}

#resultContent .downloadBtn .dl-label::after {
  content: "Télécharger en MP4";
  font-size: 16px !important;
}

#resultContent .downloadBtnmp3 .dl-label::after {
  content: "Télécharger en MP3";
  font-size: 16px !important;
}

#resultContent .dl-sub,
#resultContent .dl-btn {
  display: none !important;
}

/* Résultat mobile : verrouillage complet dans l'écran */
@media (max-width: 768px) {
  html,
  body {
    overflow-x: hidden !important;
  }

  #resultSection {
    width: 100% !important;
    max-width: 100vw !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  #resultContent {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  #resultContent .result-wrap,
  #resultContent .result-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  #resultContent .result-info {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  #resultContent .result-title,
  #resultContent .vtitle,
  #resultContent .result-description,
  #resultContent .vdesc {
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  #resultContent .download-options,
  #resultContent .download-options.show,
  #resultContent .download-options.active {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    margin: 16px 0 0 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  #resultContent .dl-option {
    width: 100% !important;
    max-width: 100% !important;
    height: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
    padding: 0 14px !important;
    grid-template-columns: 36px minmax(0, 1fr) !important;
    gap: 10px !important;
    border-radius: 18px !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  #resultContent .dl-option-icon {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    max-width: 34px !important;
  }

  #resultContent .downloadBtn .dl-label::after,
  #resultContent .downloadBtnmp3 .dl-label::after {
    font-size: 14px !important;
  }
}

/* TOKSAVE FIX RESULT MOBILE CARD NO OVERFLOW 20260623 END */

/* TOKSAVE PHOTO BUTTONS NO ZIP CSS 20260623 START */
.toksave-photo-result-v1 {
  width: min(980px, calc(100% - 32px));
  margin: 42px auto 70px auto;
  box-sizing: border-box;
}

.toksave-photo-card-v1 {
  width: 100%;
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 0;
  align-items: stretch;
  overflow: hidden;
  border-radius: 24px;
  background: rgba(18,18,18,.9);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 22px 60px rgba(0,0,0,.38);
}

.toksave-photo-thumb-v1 {
  min-height: 320px;
  background: rgba(255,255,255,.04);
  overflow: hidden;
}

.toksave-photo-thumb-v1 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.toksave-photo-info-v1 {
  padding: 30px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}

.toksave-photo-info-v1 .video-title {
  color: #fff;
  font-size: 24px;
  line-height: 1.25;
  margin: 8px 0 16px 0;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

.toksave-photo-options-v1 {
  width: min(520px, 100%);
  display: flex !important;
  flex-direction: column;
  gap: 14px;
  margin-top: 24px;
}

.toksave-photo-options-v1 .dl-option {
  width: 100%;
  min-height: 66px;
  border: 0;
  border-radius: 18px;
  padding: 0 22px;
  cursor: pointer;
  color: #fff;
  font-weight: 900;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  overflow: hidden;
}

.toksave-photo-options-v1 .downloadBtn {
  background: linear-gradient(135deg, #ff2d5d, #ff0750) !important;
  box-shadow: 0 14px 36px rgba(255,45,93,.34) !important;
}

.toksave-photo-options-v1 .downloadBtnmp3 {
  background: linear-gradient(135deg, #4b3f5f, #8b2cff) !important;
  box-shadow: 0 14px 36px rgba(139,44,255,.28) !important;
}

.toksave-photo-options-v1 .dl-option-info {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  width: 100%;
  min-width: 0;
}

.toksave-photo-options-v1 .dl-option-icon {
  width: 40px;
  height: 40px;
  border-radius: 13px;
  background: rgba(0,0,0,.22);
  display: flex;
  align-items: center;
  justify-content: center;
}

.toksave-photo-options-v1 .dl-label {
  color: #fff;
  font-size: 17px;
  font-weight: 900;
  line-height: 1.1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.toksave-photo-options-v1 .dl-sub {
  color: rgba(255,255,255,.72);
  font-size: 12px;
  font-weight: 700;
  margin-top: 4px;
}

@media (max-width: 768px) {
  .toksave-photo-result-v1 {
    width: calc(100% - 24px);
    margin: 28px auto 50px auto;
  }

  .toksave-photo-card-v1 {
    grid-template-columns: 1fr;
    border-radius: 22px;
  }

  .toksave-photo-thumb-v1 {
    min-height: 260px;
  }

  .toksave-photo-info-v1 {
    padding: 22px;
  }

  .toksave-photo-info-v1 .video-title {
    font-size: 19px;
  }

  .toksave-photo-options-v1 {
    width: 100%;
  }

  .toksave-photo-options-v1 .dl-option {
    min-height: 62px;
    padding: 0 16px;
    border-radius: 17px;
  }

  .toksave-photo-options-v1 .dl-label {
    font-size: 15px;
  }
}
/* TOKSAVE PHOTO BUTTONS NO ZIP CSS 20260623 END */

.toksave-youtube-disabled-notice {
  width: min(760px, calc(100% - 32px));
  margin: 28px auto 36px auto;
  padding: 20px 22px;
  border-radius: 20px;
  border: 1px solid rgba(255, 45, 93, .42);
  background:
    radial-gradient(circle at top right, rgba(255, 45, 93, .16), transparent 35%),
    rgba(18, 18, 18, .94);
  box-shadow: 0 18px 48px rgba(0, 0, 0, .35);
  color: #fff;
  text-align: center;
  box-sizing: border-box;
  position: relative;
  z-index: 20;
}

.toksave-youtube-disabled-notice strong {
  display: block;
  font-size: 18px;
  line-height: 1.35;
  margin-bottom: 8px;
}

.toksave-youtube-disabled-notice span {
  display: block;
  color: rgba(255, 255, 255, .72);
  font-size: 14px;
  line-height: 1.55;
  font-weight: 700;
}

@media (max-width: 768px) {
  .toksave-youtube-disabled-notice {
    width: calc(100% - 24px);
    margin: 22px auto 30px auto;
    padding: 18px 16px;
    border-radius: 18px;
  }

  .toksave-youtube-disabled-notice strong {
    font-size: 16px;
  }

  .toksave-youtube-disabled-notice span {
    font-size: 13px;
  }
}
.toksave-photo-router-result {
  width: min(1040px, calc(100vw - 32px));
  max-width: 1040px;
  margin: 42px auto 70px auto;
  box-sizing: border-box;
  grid-column: 1 / -1;
  clear: both;
  position: relative;
  z-index: 5;
}

.toksave-photo-router-card {
  width: 100%;
  display: grid;
  grid-template-columns: 380px minmax(0, 1fr);
  overflow: hidden;
  border-radius: 26px;
  background: rgba(18,18,18,.94);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 22px 60px rgba(0,0,0,.38);
}

.toksave-photo-router-loading {
  display: block;
  padding: 28px;
  text-align: center;
  color: #fff;
}

.toksave-photo-router-loading div {
  margin-top: 8px;
  color: rgba(255,255,255,.65);
  font-size: 14px;
}

.toksave-photo-router-thumb {
  min-height: 470px;
  background: rgba(255,255,255,.04);
  overflow: hidden;
}

.toksave-photo-router-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.toksave-photo-router-info {
  padding: 38px 38px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}

.toksave-photo-router-info .author-name {
  color: rgba(255,255,255,.72);
  font-weight: 800;
  margin-bottom: 10px;
}

.toksave-photo-router-info .video-title {
  color: #fff;
  font-size: 28px;
  line-height: 1.2;
  margin: 8px 0 18px 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.toksave-photo-router-info .result-meta span {
  display: inline-flex;
  align-items: center;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.82);
  font-weight: 800;
}

.toksave-photo-gallery-title {
  color: rgba(255,255,255,.72);
  font-size: 13px;
  font-weight: 800;
  margin: 18px 0 10px 0;
}

.toksave-photo-gallery {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding: 2px 0 12px 0;
  max-width: 100%;
  scrollbar-width: thin;
}

.toksave-photo-thumb-btn {
  position: relative;
  flex: 0 0 64px;
  width: 64px;
  height: 80px;
  border: 2px solid rgba(255,255,255,.12);
  border-radius: 14px;
  overflow: hidden;
  padding: 0;
  cursor: pointer;
  background: rgba(255,255,255,.06);
}

.toksave-photo-thumb-btn.active {
  border-color: #ff0750;
  box-shadow: 0 0 0 3px rgba(255,7,80,.18);
}

.toksave-photo-thumb-btn img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: .82;
}

.toksave-photo-thumb-btn.active img {
  opacity: 1;
}

.toksave-photo-thumb-btn span {
  position: absolute;
  right: 5px;
  bottom: 5px;
  min-width: 20px;
  height: 20px;
  padding: 0 5px;
  border-radius: 999px;
  background: rgba(0,0,0,.72);
  color: #fff;
  font-size: 11px;
  font-weight: 900;
  display: flex;
  align-items: center;
  justify-content: center;
}

.toksave-photo-router-buttons {
  width: min(520px, 100%);
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-top: 18px;
}

.toksave-photo-router-buttons button {
  width: 100%;
  min-height: 56px;
  border: 0;
  border-radius: 18px;
  padding: 0 18px;
  color: #fff;
  font-weight: 900;
  font-size: 16px;
  white-space: nowrap;
  cursor: pointer;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.toksave-photo-router-one {
  background: linear-gradient(135deg, #ff2d5d, #ff0750);
  box-shadow: 0 14px 36px rgba(255,45,93,.34);
}

.toksave-photo-router-all {
  background: linear-gradient(135deg, #4b3f5f, #8b2cff);
  box-shadow: 0 14px 36px rgba(139,44,255,.28);
}

@media (max-width: 768px) {
  .toksave-photo-router-result {
    width: calc(100vw - 24px);
    margin: 28px auto 50px auto;
  }

  .toksave-photo-router-card {
    grid-template-columns: 1fr;
    border-radius: 22px;
  }

  .toksave-photo-router-thumb {
    min-height: 330px;
  }

  .toksave-photo-router-info {
    padding: 24px;
  }

  .toksave-photo-router-info .video-title {
    font-size: 22px;
  }

  .toksave-photo-gallery {
    gap: 8px;
  }

  .toksave-photo-thumb-btn {
    flex-basis: 58px;
    width: 58px;
    height: 72px;
  }

  .toksave-photo-router-buttons {
    width: 100%;
  }

  .toksave-photo-router-buttons button {
    min-height: 64px;
    font-size: 16px;
    justify-content: center;
    text-align: center;
  }
}

/* TOKSAVE SINGLE PHOTO LAYOUT FIX 20260623 START */
.toksave-photo-router-result.toksave-photo-single {
  width: min(760px, calc(100vw - 32px)) !important;
  max-width: 760px !important;
  margin: 42px auto 70px auto !important;
  display: flex !important;
  justify-content: center !important;
}

.toksave-photo-single .toksave-photo-router-card {
  width: 100% !important;
  grid-template-columns: minmax(260px, 42%) minmax(260px, 1fr) !important;
}

.toksave-photo-single .toksave-photo-router-thumb {
  min-height: 420px !important;
}

.toksave-photo-single .toksave-photo-router-info {
  padding: 34px 32px !important;
}

.toksave-photo-single .toksave-photo-router-buttons {
  width: 100% !important;
  max-width: 360px !important;
}

.toksave-photo-single .toksave-photo-router-buttons button {
  width: 100% !important;
  min-height: 66px !important;
  white-space: normal !important;
}

@media (max-width: 980px) {
  .toksave-photo-router-result.toksave-photo-single {
    width: min(520px, calc(100vw - 24px)) !important;
  }

  .toksave-photo-single .toksave-photo-router-card {
    grid-template-columns: 1fr !important;
  }

  .toksave-photo-single .toksave-photo-router-thumb {
    min-height: 330px !important;
  }

  .toksave-photo-single .toksave-photo-router-info {
    padding: 24px !important;
  }

  .toksave-photo-single .toksave-photo-router-buttons {
    max-width: 100% !important;
  }

  .toksave-photo-single .toksave-photo-router-buttons button {
    justify-content: center !important;
    text-align: center !important;
  }
}
/* TOKSAVE SINGLE PHOTO LAYOUT FIX 20260623 END */

/* TOKSAVE MOBILE PHOTO COMPACT 20260623 START */
@media (max-width: 768px) {
  .toksave-photo-router-result {
    width: calc(100vw - 20px) !important;
    margin: 18px auto 36px auto !important;
  }

  .toksave-photo-router-card {
    width: 100% !important;
    grid-template-columns: 1fr !important;
    border-radius: 20px !important;
    overflow: hidden !important;
  }

  .toksave-photo-router-thumb {
    height: min(42vh, 310px) !important;
    min-height: 210px !important;
    max-height: 310px !important;
    background: #000 !important;
  }

  .toksave-photo-router-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    background: #000 !important;
  }

  .toksave-photo-router-info {
    padding: 18px 18px 20px 18px !important;
  }

  .toksave-photo-router-info .author-name {
    font-size: 14px !important;
    margin-bottom: 6px !important;
  }

  .toksave-photo-router-info .video-title {
    font-size: 21px !important;
    line-height: 1.18 !important;
    margin: 6px 0 12px 0 !important;
  }

  .toksave-photo-router-info .result-meta span {
    padding: 7px 12px !important;
    font-size: 13px !important;
  }

  .toksave-photo-gallery-title {
    margin: 14px 0 8px 0 !important;
    font-size: 13px !important;
  }

  .toksave-photo-gallery {
    gap: 7px !important;
    padding: 0 0 10px 0 !important;
    margin-bottom: 2px !important;
  }

  .toksave-photo-thumb-btn {
    flex: 0 0 52px !important;
    width: 52px !important;
    height: 64px !important;
    border-radius: 12px !important;
  }

  .toksave-photo-thumb-btn span {
    min-width: 18px !important;
    height: 18px !important;
    font-size: 10px !important;
    right: 4px !important;
    bottom: 4px !important;
  }

  .toksave-photo-router-buttons {
    width: 100% !important;
    gap: 10px !important;
    margin-top: 10px !important;
  }

  .toksave-photo-router-buttons button {
    min-height: 56px !important;
    border-radius: 16px !important;
    font-size: 15px !important;
    padding: 0 14px !important;
    justify-content: center !important;
    text-align: center !important;
  }
}

@media (max-width: 420px) {
  .toksave-photo-router-thumb {
    height: min(38vh, 280px) !important;
    min-height: 200px !important;
    max-height: 280px !important;
  }

  .toksave-photo-router-info {
    padding: 16px !important;
  }

  .toksave-photo-router-info .video-title {
    font-size: 20px !important;
  }

  .toksave-photo-thumb-btn {
    flex-basis: 48px !important;
    width: 48px !important;
    height: 60px !important;
  }

  .toksave-photo-router-buttons button {
    min-height: 54px !important;
    font-size: 14.5px !important;
  }
}
/* TOKSAVE MOBILE PHOTO COMPACT 20260623 END */



/* TOKSAVE PHOTO CARD READABILITY FIX 20260626 START */
.toksave-photo-router-info .video-title {
  font-size: 16px;
  line-height: 1.4;
  font-weight: 600;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 6px 0 14px 0;
}
.toksave-photo-router-thumb img { object-fit: contain; background: #000; }
.toksave-photo-router-result.toksave-photo-single { width: min(900px, calc(100vw - 32px)) !important; max-width: 900px !important; }
.toksave-photo-single .toksave-photo-router-card { grid-template-columns: minmax(300px, 46%) minmax(280px, 1fr) !important; }
.toksave-photo-single .toksave-photo-router-thumb { min-height: 360px; max-height: 540px; }
/* TOKSAVE PHOTO CARD READABILITY FIX 20260626 END */

/* Bouton retour haut */
.toksave-photo-router-new {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: none !important;
}


/* PHOTO CARD COMPACT MOBILE 20260626 */
@media (max-width: 768px) {
  .toksave-photo-router-thumb { height: 160px !important; min-height: 160px !important; max-height: 160px !important; }
  .toksave-photo-router-buttons { gap: 7px !important; margin-top: 7px !important; }
  .toksave-photo-router-buttons button { min-height: 46px !important; font-size: 13.5px !important; }
  .toksave-photo-router-info { padding-top: 14px !important; padding-bottom: 16px !important; }
  .toksave-photo-gallery { padding-bottom: 6px !important; margin-bottom: 0 !important; }
}

/* Marge pour que l en-tete ne masque pas le haut de la carte */
.toksave-photo-router-result { scroll-margin-top: 90px; }
.toksave-loading-safety-message {
  width: min(760px, calc(100% - 32px));
  margin: 24px auto 36px auto;
  padding: 18px 20px;
  border-radius: 18px;
  border: 1px solid rgba(255, 45, 93, .42);
  background: rgba(18,18,18,.94);
  color: #fff;
  text-align: center;
  box-shadow: 0 18px 48px rgba(0,0,0,.35);
  position: relative;
  z-index: 20;
}

.toksave-loading-safety-message strong {
  display: block;
  font-size: 17px;
  margin-bottom: 6px;
}

.toksave-loading-safety-message span {
  display: block;
  color: rgba(255,255,255,.72);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .toksave-loading-safety-message {
    width: calc(100% - 24px);
    padding: 16px;
  }

  .toksave-loading-safety-message strong {
    font-size: 16px;
  }

  .toksave-loading-safety-message span {
    font-size: 13px;
  }
}
.toksave-paste-safe-message {
  width: min(720px, calc(100% - 32px));
  margin: 18px auto 28px auto;
  padding: 16px 18px;
  border-radius: 18px;
  background: rgba(18,18,18,.94);
  color: #fff;
  text-align: center;
  box-shadow: 0 16px 42px rgba(0,0,0,.34);
  position: relative;
  z-index: 30;
}

.toksave-paste-safe-message strong {
  display: block;
  font-size: 16px;
  margin-bottom: 5px;
}

.toksave-paste-safe-message span {
  display: block;
  font-size: 13px;
  line-height: 1.45;
  color: rgba(255,255,255,.74);
  font-weight: 700;
}

.toksave-paste-safe-success {
  border: 1px solid rgba(46, 213, 115, .42);
}

.toksave-paste-safe-error {
  border: 1px solid rgba(255, 45, 93, .48);
}

@media (max-width: 768px) {
  .toksave-paste-safe-message {
    width: calc(100% - 24px);
    padding: 15px;
    border-radius: 16px;
  }

  .toksave-paste-safe-message strong {
    font-size: 15px;
  }

  .toksave-paste-safe-message span {
    font-size: 12.5px;
  }
}
.toksave-tiktok-video-direct-result {
  width: min(1040px, calc(100vw - 32px));
  margin: 42px auto 70px auto;
  box-sizing: border-box;
  clear: both;
  position: relative;
  z-index: 8;
}

.toksave-tiktok-video-direct-card {
  width: 100%;
  display: grid;
  grid-template-columns: 330px minmax(0, 1fr);
  overflow: hidden;
  border-radius: 26px;
  background: rgba(18,18,18,.94);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 22px 60px rgba(0,0,0,.38);
}

.toksave-tiktok-video-loading {
  display: block;
  padding: 28px;
  text-align: center;
  color: #fff;
}

.toksave-tiktok-video-loading strong {
  display: block;
  font-size: 18px;
  margin-bottom: 8px;
}

.toksave-tiktok-video-loading span {
  display: block;
  color: rgba(255,255,255,.68);
  font-weight: 700;
}

.toksave-tiktok-video-preview {
  min-height: 390px;
  background: #000;
  overflow: hidden;
}

.toksave-tiktok-video-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.toksave-tiktok-video-placeholder {
  height: 100%;
  min-height: 390px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 48px;
}

.toksave-tiktok-video-info {
  padding: 38px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}

.toksave-tiktok-video-platform {
  color: rgba(255,255,255,.72);
  font-weight: 900;
  margin-bottom: 10px;
}

.toksave-tiktok-video-info h3 {
  color: #fff;
  font-size: clamp(22px, 2.4vw, 30px);
  line-height: 1.18;
  margin: 8px 0 16px 0;
  overflow-wrap: anywhere;
}

.toksave-tiktok-video-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 22px;
}

.toksave-tiktok-video-meta span {
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.82);
  font-weight: 800;
}

.toksave-tiktok-video-buttons {
  width: min(520px, 100%);
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.toksave-tiktok-video-buttons button {
  width: 100%;
  min-height: 56px;
  border: 0;
  border-radius: 18px;
  padding: 0 18px;
  color: #fff;
  font-weight: 900;
  font-size: 16px;
  white-space: nowrap;
  cursor: pointer;
  text-align: left;
}

.toksave-tiktok-video-buttons button:disabled {
  opacity: .65;
  cursor: wait;
}

.toksave-tiktok-video-mp4 {
  background: linear-gradient(135deg, #ff2d5d, #ff0750);
  box-shadow: 0 14px 36px rgba(255,45,93,.34);
}

.toksave-tiktok-video-mp3 {
  background: linear-gradient(135deg, #4b3f5f, #8b2cff);
  box-shadow: 0 14px 36px rgba(139,44,255,.28);
}

@media (max-width: 768px) {
  .toksave-tiktok-video-direct-result {
    width: calc(100vw - 24px);
    margin: 28px auto 50px auto;
  }

  .toksave-tiktok-video-direct-card {
    grid-template-columns: 1fr;
    border-radius: 22px;
  }

  .toksave-tiktok-video-preview {
    min-height: 300px;
    max-height: 360px;
  }

  .toksave-tiktok-video-preview img {
    object-fit: cover;
  }

  .toksave-tiktok-video-info {
    padding: 24px;
  }

  .toksave-tiktok-video-info h3 {
    font-size: 22px;
  }

  .toksave-tiktok-video-buttons {
    width: 100%;
  }

  .toksave-tiktok-video-buttons button {
    min-height: 64px;
    font-size: 16px;
    text-align: center;
  }
}

/* TOKSAVE TIKTOK VIDEO MOBILE COMPACT FINAL 20260623 START */
@media (max-width: 768px) {
  .toksave-tiktok-video-direct-result {
    width: calc(100vw - 22px) !important;
    max-width: calc(100vw - 22px) !important;
    margin: 22px auto 44px auto !important;
    overflow: visible !important;
  }

  .toksave-tiktok-video-direct-card {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .toksave-tiktok-video-preview {
    width: 100% !important;
    min-height: 0 !important;
    height: min(32vh, 200px) !important;
    max-height: 200px !important;
    background: #000 !important;
  }

  .toksave-tiktok-video-preview img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  .toksave-tiktok-video-info {
    width: 100% !important;
    max-width: 100% !important;
    padding: 18px 18px 20px 18px !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
  }

  .toksave-tiktok-video-platform {
    font-size: 14px !important;
    margin-bottom: 6px !important;
  }

  .toksave-tiktok-video-info h3 {
    font-size: 22px !important;
    line-height: 1.18 !important;
    margin: 6px 0 12px 0 !important;
    max-height: 5.7em !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 4 !important;
    -webkit-box-orient: vertical !important;
    word-break: break-word !important;
  }

  .toksave-tiktok-video-meta {
    margin: 6px 0 14px 0 !important;
    gap: 8px !important;
  }

  .toksave-tiktok-video-meta span {
    padding: 7px 11px !important;
    font-size: 13px !important;
  }

  .toksave-tiktok-video-buttons {
    width: 100% !important;
    max-width: 100% !important;
    gap: 10px !important;
  }

  .toksave-tiktok-video-buttons button {
    width: 100% !important;
    min-height: 50px !important;
    border-radius: 16px !important;
    font-size: 15.5px !important;
    padding: 0 14px !important;
    text-align: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 420px) {
  .toksave-tiktok-video-direct-result {
    width: calc(100vw - 18px) !important;
    max-width: calc(100vw - 18px) !important;
  }

  .toksave-tiktok-video-preview {
    height: min(34vh, 250px) !important;
    max-height: 250px !important;
  }

  .toksave-tiktok-video-info {
    padding: 16px !important;
  }

  .toksave-tiktok-video-info h3 {
    font-size: 20px !important;
    -webkit-line-clamp: 3 !important;
    max-height: 4.2em !important;
  }

  .toksave-tiktok-video-buttons button {
    min-height: 56px !important;
    font-size: 15px !important;
  }
}
/* TOKSAVE TIKTOK VIDEO MOBILE COMPACT FINAL 20260623 END */


/* Bouton retour haut (video) */
.toksave-tiktok-video-new {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  box-shadow: none !important;
}
/* TOKSAVE MOBILE VIEWPORT FIX 20260623 */

html,
body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
  scroll-behavior: auto !important;
}

/* iPhone/Safari zoome automatiquement si input < 16px */
@media (max-width: 768px) {
  input,
  textarea,
  select {
    font-size: 16px !important;
    line-height: 1.35 !important;
  }

  button,
  a {
    -webkit-tap-highlight-color: transparent !important;
  }

  body {
    position: relative !important;
    min-width: 0 !important;
  }

  section,
  main,
  header,
  footer,
  .container,
  .wrapper,
  .hero,
  .hero-section,
  .platform-hero,
  .home-hero,
  .bod,
  .largebod {
    max-width: 100vw !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  #downloadForm,
  .download-form,
  .platform-home-download-v92,
  .platform-download-form {
    max-width: calc(100vw - 24px) !important;
    box-sizing: border-box !important;
  }

  #urlInput,
  input[name="url"],
  input.url-input,
  input[type="text"] {
    max-width: 100% !important;
    box-sizing: border-box !important;
    transform: none !important;
  }

  .toksave-photo-router-result,
  .toksave-tiktok-video-direct-result,
  .toksave-loading-safety-message,
  .toksave-paste-safe-message,
  .toksave-youtube-disabled-notice {
    max-width: calc(100vw - 24px) !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  .toksave-tiktok-video-loading,
  .toksave-photo-router-card,
  .toksave-tiktok-video-direct-card {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* Très petits écrans */
@media (max-width: 420px) {
  #downloadForm,
  .download-form,
  .platform-home-download-v92,
  .platform-download-form,
  .toksave-photo-router-result,
  .toksave-tiktok-video-direct-result,
  .toksave-loading-safety-message,
  .toksave-paste-safe-message,
  .toksave-youtube-disabled-notice {
    max-width: calc(100vw - 18px) !important;
  }
}
/* TOKSAVE MOBILE ANTI ZOOM 20260623 */

/* Empêche Safari/iPhone de zoomer sur les champs */
@media (max-width: 768px) {
  input,
  textarea,
  select {
    font-size: 16px !important;
    line-height: 1.4 !important;
    transform: none !important;
  }

  button,
  a,
  input,
  textarea {
    -webkit-tap-highlight-color: transparent !important;
    touch-action: manipulation !important;
  }

  html,
  body {
    overflow-x: hidden !important;
    max-width: 100% !important;
  }
}
/* TOKSAVE FORM STABILITY FIX 20260623 */

html,
body {
  overflow-x: hidden !important;
  max-width: 100% !important;
}

@media (max-width: 768px) {
  #downloadForm,
  .download-form,
  .platform-home-download-v92,
  .platform-download-form {
    width: calc(100vw - 56px) !important;
    max-width: calc(100vw - 56px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    box-sizing: border-box !important;
    contain: layout paint !important;
    overflow: hidden !important;
  }

  #downloadForm *,
  .download-form *,
  .platform-home-download-v92 *,
  .platform-download-form * {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  #urlInput,
  input[name="url"],
  input.url-input,
  input[type="text"] {
    min-width: 0 !important;
    max-width: 100% !important;
    font-size: 16px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .toksave-photo-router-result,
  .toksave-tiktok-video-direct-result,
  .toksave-loading-safety-message,
  .toksave-youtube-disabled-notice {
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 420px) {
  #downloadForm,
  .download-form,
  .platform-home-download-v92,
  .platform-download-form {
    width: calc(100vw - 44px) !important;
    max-width: calc(100vw - 44px) !important;
  }
}
/* TOKSAVE VIDEO LOADING CARD VISUAL 20260623 */

.toksave-video-loading-card {
  opacity: .98;
}

.toksave-video-loading-preview {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background:
    radial-gradient(circle at center, rgba(255, 45, 93, .18), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.06), rgba(255,255,255,.015)),
    #050505 !important;
  position: relative;
  overflow: hidden;
}

.toksave-video-loading-preview::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.08), transparent);
  transform: translateX(-100%);
  animation: toksaveVideoLoadingShimmer 1.25s infinite;
}

.toksave-video-loading-play {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 45, 93, .18);
  border: 1px solid rgba(255, 45, 93, .45);
  color: #fff;
  font-size: 26px;
  padding-left: 4px;
  box-shadow: 0 0 30px rgba(255, 45, 93, .24);
  animation: toksaveVideoLoadingPulse 1.1s infinite;
  z-index: 2;
}

.toksave-video-loading-card .toksave-tiktok-video-info h3 {
  color: #fff;
}

.toksave-video-loading-buttons button {
  opacity: .72 !important;
  cursor: wait !important;
}

@keyframes toksaveVideoLoadingShimmer {
  100% {
    transform: translateX(100%);
  }
}

@keyframes toksaveVideoLoadingPulse {
  0%, 100% {
    transform: scale(1);
    opacity: .78;
  }

  50% {
    transform: scale(1.08);
    opacity: 1;
  }
}

@media (max-width: 768px) {
  .toksave-video-loading-play {
    width: 58px;
    height: 58px;
    font-size: 22px;
  }

  .toksave-video-loading-card .toksave-tiktok-video-info h3 {
    font-size: 21px !important;
    line-height: 1.18 !important;
    margin-bottom: 12px !important;
    -webkit-line-clamp: 2 !important;
    max-height: 2.8em !important;
  }
}

/* TOKSAVE DESKTOP VIDEO LOADING CARD 20260623 START */
@media (min-width: 769px) {
  .toksave-video-loading-card-ready {
    width: min(1040px, calc(100vw - 80px)) !important;
    margin: 48px auto 80px auto !important;
  }

  .toksave-video-loading-card {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 360px minmax(0, 1fr) !important;
    min-height: 420px !important;
    border-radius: 28px !important;
    overflow: hidden !important;
    background: rgba(18,18,18,.96) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    box-shadow: 0 24px 70px rgba(0,0,0,.42) !important;
  }

  .toksave-video-loading-card .toksave-tiktok-video-preview {
    min-height: 420px !important;
    height: 420px !important;
  }

  .toksave-video-loading-card .toksave-tiktok-video-info {
    padding: 46px 52px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
  }

  .toksave-video-loading-card .toksave-tiktok-video-platform {
    font-size: 17px !important;
    margin-bottom: 12px !important;
  }

  .toksave-video-loading-card .toksave-tiktok-video-info h3 {
    font-size: 34px !important;
    line-height: 1.16 !important;
    margin: 8px 0 22px 0 !important;
  }

  .toksave-video-loading-card .toksave-tiktok-video-meta {
    margin-bottom: 26px !important;
  }

  .toksave-video-loading-card .toksave-tiktok-video-buttons {
    width: min(540px, 100%) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
  }

  .toksave-video-loading-card .toksave-tiktok-video-buttons button {
    width: 100% !important;
    min-height: 72px !important;
    border-radius: 20px !important;
    font-size: 18px !important;
    font-weight: 900 !important;
  }

  .toksave-video-loading-play {
    width: 78px !important;
    height: 78px !important;
    font-size: 30px !important;
  }
}
/* TOKSAVE DESKTOP VIDEO LOADING CARD 20260623 END */
/* TOKSAVE CLEAN FAQ FINAL */

.toksave-seo-faq {
  padding: 72px 0;
  position: relative;
}

.toksave-seo-faq .section-header {
  text-align: center;
  max-width: 840px;
  margin: 0 auto 36px auto;
}

.toksave-seo-faq .section-header h2 {
  font-size: clamp(30px, 4vw, 52px);
  line-height: 1.05;
  margin-bottom: 14px;
  color: #fff;
}

.toksave-seo-faq .section-header p {
  color: rgba(255,255,255,.74);
  font-size: 17px;
  line-height: 1.65;
}

.toksave-seo-faq .faq-list {
  max-width: 980px;
  margin: 0 auto;
  display: grid;
  gap: 16px;
}

.toksave-seo-faq .faq-item {
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 22px;
  padding: 24px 26px;
  box-shadow: 0 18px 50px rgba(0,0,0,.18);
}

.toksave-seo-faq .faq-item h3 {
  color: #fff;
  font-size: 20px;
  line-height: 1.35;
  margin: 0 0 10px 0;
}

.toksave-seo-faq .faq-item p {
  color: rgba(255,255,255,.76);
  font-size: 16px;
  line-height: 1.65;
  margin: 0;
}

@media (max-width: 768px) {
  .toksave-seo-faq {
    padding: 46px 18px;
  }

  .toksave-seo-faq .section-header {
    text-align: left;
    margin-bottom: 24px;
  }

  .toksave-seo-faq .faq-list {
    gap: 13px;
  }

  .toksave-seo-faq .faq-item {
    padding: 20px 18px;
    border-radius: 18px;
  }

  .toksave-seo-faq .faq-item h3 {
    font-size: 18px;
  }

  .toksave-seo-faq .faq-item p {
    font-size: 15px;
  }
}
/* Hide empty platform cards left by removed platforms */
a:empty,
button:empty,
.platform-card:empty,
.platform-link:empty,
.platform-item:empty,
.feature-card:empty {
  display: none !important;
}
/* TOKSAVE PLATFORMS ALIGN FIX */

.toksave-platforms-fixed-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(220px, 280px)) !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 22px !important;
  width: 100% !important;
  max-width: 960px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.toksave-platforms-fixed-grid > a,
.toksave-platforms-fixed-grid > button,
.toksave-platforms-fixed-grid > .platform-card,
.toksave-platforms-fixed-grid > .platform-link,
.toksave-platforms-fixed-grid > .platform-item,
.toksave-platforms-fixed-grid > .feature-card,
.toksave-platform-fixed-item {
  width: 100% !important;
  min-height: 78px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

@media (max-width: 900px) {
  .toksave-platforms-fixed-grid {
    grid-template-columns: repeat(2, minmax(150px, 1fr)) !important;
    max-width: 620px !important;
    gap: 16px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

@media (max-width: 480px) {
  .toksave-platforms-fixed-grid {
    grid-template-columns: 1fr !important;
    max-width: 360px !important;
  }
}
﻿
/* === MOBILE CHIPS FIX 20260628 === */
@media(max-width:500px){
  .platform-chips{
    max-width:calc(100vw - 40px)!important;
    box-sizing:border-box!important;
    flex-wrap:wrap!important;
    overflow:hidden!important;
  }
  .platform-chip{
    padding:7px 8px!important;
    flex-shrink:0!important;
  }
  .platform-chip i{
    font-size:17px!important;
  }
}

/* === MOBILE CHIPS FIX V2 20260628 === */
@media(max-width:768px){
  .platform-chips{
    width:calc(100vw - 40px)!important;
    max-width:calc(100vw - 40px)!important;
    box-sizing:border-box!important;
    flex-wrap:wrap!important;
    overflow-x:hidden!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .platform-page .platform-container{
    overflow-x:hidden!important;
    box-sizing:border-box!important;
  }
}

/* === HOMEPAGE HERO CENTERING FIX 20260628 === */
@media(max-width:768px){
  .hero-inner{
    display:block!important;
    padding:0 18px!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  .hero-content{
    width:100%!important;
    box-sizing:border-box!important;
  }
}
