.included-section {
  background: #f5f0e6;
  color: #111;
  border-top: 1px solid #ded5c5;
}

.clean-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.clean-plan {
  position: relative;
  overflow: hidden;
  padding: clamp(28px, 4vw, 46px);
  background: #fff;
  border: 1px solid #e2d9ca;
  border-radius: 20px;
}

.featured-plan {
  background: #111;
  border-color: #977330;
  color: #fff;
}

.popular-label {
  position: absolute;
  top: 20px;
  right: 20px;
  padding: 6px 10px;
  background: #d8ad58;
  border-radius: 999px;
  color: #1a1409;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.plan-top > span {
  color: #a77f30;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.featured-plan .plan-top > span { color: #d8ad58; }
.plan-top h3 { margin: 10px 0 6px; font: 600 clamp(28px, 3vw, 38px) "Playfair Display", serif; }
.plan-top p { margin: 0 0 25px; color: #777168; font-size: 13px; }
.featured-plan .plan-top p { color: #aaa69f; }
.clean-plan ul { display: grid; grid-template-columns: 1fr 1fr; gap: 11px 20px; margin: 0; padding: 24px 0; border-top: 1px solid #ebe4d9; border-bottom: 1px solid #ebe4d9; list-style: none; }
.featured-plan ul { border-color: #302e29; }
.clean-plan li { position: relative; padding-left: 21px; color: #514d47; font-size: 12px; }
.featured-plan li { color: #d2d0ca; }
.clean-plan li::before { content: "✓"; position: absolute; left: 0; color: #aa8132; font-weight: 700; }
.best-for { margin: 22px 0 0; color: #716b62; font-size: 11px; }
.featured-plan .best-for { color: #aaa69f; }
.best-for strong { color: #8b6827; }
.featured-plan .best-for strong { color: #d8ad58; }
.specialty-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 18px; }
.specialty-grid article { padding: 27px 24px; background: #eee7da; border: 1px solid #ddd2c1; border-radius: 15px; }
.specialty-grid span { color: #a77f30; font-size: 9px; font-weight: 700; }
.specialty-grid h3 { margin: 12px 0 8px; font: 600 20px "Playfair Display", serif; }
.specialty-grid p { margin: 0; color: #6b665e; font-size: 12px; line-height: 1.65; }
.addon-strip { display: grid; grid-template-columns: .55fr 1.45fr; gap: 40px; align-items: center; margin-top: 18px; padding: 30px; background: #171716; border-radius: 15px; color: #fff; }
.addon-strip .eyebrow { margin-bottom: 5px; }
.addon-strip h3 { margin: 0; font: 600 25px "Playfair Display", serif; }
.addon-strip > p { margin: 0; color: #c2beb5; font-size: 13px; line-height: 2; }
.faq-section { display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(55px, 9vw, 130px); background: #0d0d0d; }
.faq-heading { position: sticky; top: 40px; align-self: start; }
.faq-heading h2 { max-width: 520px; }
.faq-heading > p:last-child { max-width: 430px; color: #96928a; }
.faq-list { border-top: 1px solid #3b362c; }
.faq-list details { border-bottom: 1px solid #3b362c; }
.faq-list summary { display: flex; justify-content: space-between; gap: 20px; padding: 23px 0; color: #eeeae1; cursor: pointer; font-size: 15px; font-weight: 600; list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { color: #d8ad58; font-size: 20px; font-weight: 400; transition: transform .2s; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details p { margin: -5px 42px 23px 0; color: #9d9991; font-size: 13px; line-height: 1.75; }

@media (max-width: 980px) {
  .specialty-grid { grid-template-columns: 1fr 1fr; }
  .faq-section { grid-template-columns: 1fr; }
  .faq-heading { position: static; }
}

@media (max-width: 700px) {
  .clean-tabs, .specialty-grid, .addon-strip { grid-template-columns: 1fr; }
  .clean-plan ul { grid-template-columns: 1fr; }
  .popular-label { position: static; display: inline-block; margin-bottom: 14px; }
}
