.help-hero .container {
  min-height: 440px;
  padding-top: 74px;
  padding-bottom: 74px;
}

.hero-copy {
  position: relative;
  padding-left: 28px;
}

.hero-copy:before {
  content: "";
  position: absolute;
  left: 0;
  top: 58px;
  width: 4px;
  height: 132px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--red), var(--gold));
}

.help-tags {
  display: flex;
  gap: 12px;
  margin-top: 28px;
  flex-wrap: wrap;
}

.help-tags span {
  padding: 10px 14px;
  border: 1px solid rgba(224, 211, 189, .78);
  border-radius: 999px;
  color: #6d766f;
  background: rgba(255,253,248,.74);
  box-shadow: 0 14px 32px rgba(72, 57, 38, .06);
  font-weight: 800;
  transition: transform .22s ease, color .22s ease, background .22s ease;
}

.help-tags span:hover {
  color: #fff;
  background: var(--green);
  transform: translateY(-3px);
}

.help-card {
  position: relative;
  overflow: hidden;
  display: grid;
  align-content: center;
  gap: 14px;
}

.help-card:before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(rgba(196,146,69,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(196,146,69,.06) 1px, transparent 1px);
  background-size: 34px 34px;
  opacity: .72;
}

.help-card h3,
.help-card p,
.help-card .btn,
.help-icon {
  position: relative;
  z-index: 2;
}

.help-orb {
  position: absolute;
  right: -70px;
  top: -80px;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(200, 59, 50, .13), transparent 62%);
  animation: helpPulse 4s ease-in-out infinite;
}

.help-icon {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  color: #fff;
  background: var(--green);
  font-size: 26px;
  font-weight: 900;
  box-shadow: 0 14px 32px rgba(71, 111, 99, .2);
  transition: transform .26s ease, background .26s ease;
}

.help-card:hover .help-icon {
  background: var(--red);
  transform: rotate(-8deg) scale(1.08);
}

.faq-section {
  position: relative;
  overflow: hidden;
}

.faq-section:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 58px;
  width: 520px;
  height: 180px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(196, 146, 69, .09), transparent 68%);
  transform: translateX(-50%);
}

.faq-list {
  position: relative;
  max-width: 880px;
  margin: 0 auto;
  display: grid;
  gap: 14px;
}

.faq-list details {
  padding: 22px 24px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fffdf8;
  box-shadow: 0 12px 34px rgba(57, 48, 36, .06);
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease, background .24s ease;
}

.faq-list details:hover,
.faq-list details[open] {
  border-color: rgba(196, 146, 69, .42);
  box-shadow: 0 22px 54px rgba(57, 48, 36, .1);
}

.faq-list summary {
  position: relative;
  cursor: pointer;
  color: var(--ink);
  font-size: 20px;
  font-weight: 800;
  list-style: none;
  padding-left: 34px;
}

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

.faq-list summary:before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 10px solid var(--green-dark);
  transition: transform .24s ease, border-left-color .24s ease;
}

.faq-list details[open] summary:before {
  border-left-color: var(--red);
  transform: rotate(90deg);
}

.faq-list p {
  margin: 14px 0 0;
  padding-left: 34px;
  color: var(--muted);
  line-height: 1.8;
  animation: faqReveal .24s ease both;
}

.tilt-card {
  transform: perspective(900px) rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg)) translateY(var(--lift, 0));
  transition: transform .18s ease, box-shadow .24s ease, border-color .24s ease;
}

.tilt-card:hover {
  --lift: -6px;
}

@keyframes helpPulse {
  0%, 100% { opacity: .5; transform: scale(.92); }
  50% { opacity: 1; transform: scale(1.08); }
}

@keyframes faqReveal {
  from { opacity: 0; transform: translateY(-4px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 720px) {
  .hero-copy { padding-left: 0; }
  .hero-copy:before { display: none; }
}
