.th-plans { font-family: "Quicksand", sans-serif; background: #fbfaff; }

.th-plans-section-heading { font-size: 2rem; font-weight: 700; text-align: center; color: #333333; margin-bottom: 2.5rem; }

.th-plans-section-heading--white { color: #fff; }

.th-plans-hero-comparison-wrap { background: linear-gradient(180deg, #fbfcfd 0%, #f1f5f9 100%); }

.th-plans-hero { padding: 5rem 1.5rem; }

.th-plans-hero-intro { max-width: 48rem; margin: 0 auto 3rem; text-align: center; }

.th-plans-hero-heading { font-size: 3rem; font-weight: 700; color: #333333; margin-bottom: 1.5rem; }

.th-plans-hero-subheading { font-size: 1.5rem; font-weight: 600; color: #333333; margin-bottom: 1rem; }

.th-plans-hero-text { font-size: 1.15rem; color: #64748b; }

.th-plans-cards { max-width: 72rem; margin: 0 auto; display: grid; gap: 2rem; grid-template-columns: 1fr; }

@media (min-width: 768px) { .th-plans-cards { grid-template-columns: repeat(3, 1fr); } }

.th-plans-card { position: relative; background: #fff; border-radius: 1.5rem; box-shadow: 0 20px 40px -20px rgba(0, 0, 0, 0.2); padding: 3rem 1.75rem 2rem; text-align: center; display: flex; flex-direction: column; }

.th-plans-card--featured { background: #33468a; border: 4px solid #c14e96; transform: scale(1.05); z-index: 1; }

.th-plans-card-badge { position: absolute; top: -0.75rem; left: 50%; transform: translateX(-50%); font-size: 0.7rem; font-weight: 700; letter-spacing: 0.03em; padding: 0.5rem 1rem; border-radius: 999px; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15); color: #fff; }

.th-plans-card-badge--primary { background: #33468a; }

.th-plans-card-badge--tertiary { background: #c14e96; }

.th-plans-card-badge--secondary { background: #39aca1; }

.th-plans-card-icon { width: 4rem; height: 4rem; border-radius: 999px; display: flex; align-items: center; justify-content: center; margin: 0 auto 1rem; }

.th-plans-card-icon--primary { background: rgba(51, 70, 138, 0.1); color: #33468a; }

.th-plans-card-icon--secondary { background: rgba(57, 172, 161, 0.1); color: #39aca1; }

.th-plans-card-icon--white { background: #fff; color: #c14e96; }

.th-plans-card-icon-svg { width: 2rem; height: 2rem; }

.th-plans-card-title { font-size: 1.5rem; font-weight: 700; margin-bottom: 0.25rem; }

.th-plans-card-title--primary { color: #33468a; }

.th-plans-card-title--secondary { color: #39aca1; }

.th-plans-card-title--white { color: #fff; }

.th-plans-card-subtitle { font-size: 0.9rem; color: #64748b; }

.th-plans-card-subtitle--white { color: rgba(255, 255, 255, 0.8); margin-bottom: 10px; }

.th-plans-card-body { flex: 1; }

.th-plans-card-price { margin: 1.25rem 0 0.25rem; }

.th-plans-card-price--white { color: #fff; margin-top: 0.25rem; }

.th-plans-card-price-amount { font-size: 2.25rem; font-weight: 800; }

.th-plans-card-price-period { font-size: 1.1rem; color: #64748b; }

.th-plans-card-price--white .th-plans-card-price-period { color: rgba(255, 255, 255, 0.7); }

.th-plans-card-price-annual--white { color: #ffffffb3; }

.th-plans-card-price-annual { font-size: 0.85rem; color: #64748b; margin-bottom: 0.25rem; }

.th-plans-card-price-savings { font-size: 0.85rem; font-weight: 600; color: #c14e96; margin-bottom: 1.5rem; }

.th-plans-card-price-savings--tertiary { display: inline-block; background: rgba(193, 78, 150, 0.9); color: #fff; padding: 0.15rem 0.5rem; border-radius: 0.25rem; }

.th-plans-card-features { list-style: none; padding: 0; margin: 0 0 1rem; text-align: left; font-size: 0.8rem; color: #64748b; display: flex; flex-direction: column; gap: 0.4rem; }

.th-plans-card-features--white { color: rgba(255, 255, 255, 0.9); }

.th-plans-card-features li { display: flex; align-items: center; gap: 0.5rem; }

.th-plans-card-features li::before { content: ""; flex-shrink: 0; width: 0.9rem; height: 0.9rem; background-color: #c14e96; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") no-repeat center/contain; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") no-repeat center/contain; }

.th-plans-card-features--white li::before { background-color: white; }

.th-plans-card-footer { margin-top: auto; }

.th-plans-card-cta { display: block; width: 100%; padding: 0.75rem 1rem; border-radius: 0.5rem; font-weight: 600; text-decoration: none; text-align: center; transition: opacity 0.15s ease; }

.th-plans-card-cta:hover { color: #fff; opacity: 0.9; }

.th-plans-card-cta--primary { background: #33468a; color: white; }

.th-plans-card-cta--tertiary { background: #c14e96; color: white; }

.th-plans-card-cta--secondary { background: #39aca1; color: white; }

.th-plans-comparison { padding: 4rem 1.5rem; }

.th-plans-comparison-table-wrap { max-width: 64rem; margin: 0 auto; overflow-x: auto; border-radius: 1rem; background: #fff; border: 1px solid #e2e8f0; box-shadow: 0 14px 36px rgba(15, 23, 42, 0.18); }

.th-plans-comparison-table { width: 100%; border-collapse: collapse; min-width: 640px; }

.th-plans-comparison-table thead th { text-align: left; padding: 0.75rem; background: #f1f5f9; border-bottom: 1px solid #e2e8f0; font-weight: 600; }

.th-plans-comparison-table tfoot th { padding: 1rem 0.5rem 1.25rem; text-align: center; }

.th-plans-comparison-table .th-plans-comparison-plan-col { text-align: center; }

.th-plans-comparison-table .th-plans-comparison-plan-col--primary { color: #33468a; }

.th-plans-comparison-table .th-plans-comparison-plan-col--tertiary { color: #c14e96; }

.th-plans-comparison-table .th-plans-comparison-plan-col--secondary { color: #39aca1; }

.th-plans-comparison-group-row td { background: #fafbfc; font-weight: 700; padding: 0.9rem 0.75rem; }

.th-plans-comparison-row { border-bottom: 1px solid #e2e8f0; }

.th-plans-comparison-row:hover { background: rgba(241, 245, 249, 0.7); }

.th-plans-comparison-label { padding: 0.8rem 0.75rem; font-size: 0.9rem; color: #64748b; }

.th-plans-comparison-cell { text-align: center; padding: 0.8rem 0.5rem; }

.th-plans-comparison-cta { display: inline-block; padding: 0.75rem 1.5rem; border-radius: 0.5rem; font-weight: 600; font-size: 1rem; text-decoration: none; }

.th-plans-comparison-cta:hover { color: #fff; }

.th-plans-comparison-cta--primary { background: #33468a; color: #fff; }

.th-plans-comparison-cta--tertiary { background: #c14e96; color: #fff; }

.th-plans-comparison-cta--secondary { background: #39aca1; color: #fff; }

.th-plans-companies { padding: 3rem 1.5rem; background: #fff; text-align: center; }

.th-plans-companies-heading { font-size: 0.85rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; color: #64748b; margin-bottom: 1.5rem; }

.th-plans-companies-logos { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 2.5rem; }

.th-plans-company-logo { height: 60px; width: auto; object-fit: contain; opacity: 0.7; transition: opacity 0.15s ease; }

.th-plans-company-logo:hover { opacity: 1; }

.th-plans-testimonials { padding: 4rem 1.5rem; background: linear-gradient(135deg, #4a4290 0%, #804197 56%, #d44c66 100%); position: relative; }

.th-plans-testimonials-swiper { max-width: 72rem; margin: 0 auto; padding: 0 3rem 1rem; }

.th-plans-testimonial-card { background: #fff; border-radius: 0.75rem; padding: 2rem; text-align: center; box-shadow: 0 15px 30px -20px rgba(0, 0, 0, 0.3); height: auto; display: flex; flex-direction: column; align-items: center; }

.th-plans-testimonial-avatar { width: 5rem; height: 5rem; border-radius: 999px; object-fit: cover; box-shadow: 0 10px 20px -10px rgba(0, 0, 0, 0.3); outline: 4px solid rgba(51, 70, 138, 0.1); margin-bottom: 1.5rem; }

.th-plans-testimonial-quote { font-style: italic; color: #64748b; margin-bottom: 1rem; }

.th-plans-testimonial-link { color: #33468a; font-weight: 600; text-decoration: none; }

.th-plans-testimonial-link:hover { color: #33468a; text-decoration: underline; }

.th-plans-testimonial-author { font-weight: 600; color: #33468a; }

.th-plans-testimonials-prev, .th-plans-testimonials-next { top: 50%; width: 2.75rem; height: 2.75rem; margin-top: -1.375rem; background: #fff; border-radius: 999px; box-shadow: 0 10px 25px -8px rgba(0, 0, 0, 0.4); color: #33468a; transition: background-color 0.15s ease, transform 0.15s ease; }

.th-plans-testimonials-prev::after, .th-plans-testimonials-next::after { font-size: 1rem; font-weight: 700; }

.th-plans-testimonials-prev:hover, .th-plans-testimonials-next:hover { background: #f1f5f9; transform: scale(1.05); }

.th-plans-testimonials-prev.swiper-button-disabled, .th-plans-testimonials-next.swiper-button-disabled { opacity: 0.4; cursor: default; }

.th-plans-testimonials-prev { left: 0; }

.th-plans-testimonials-next { right: 0; }

@media (max-width: 400px) { .th-plans-testimonials { padding: 4rem 1rem; }
  .th-plans-testimonials-swiper { padding: 0 1rem 1rem; }
  .th-plans-testimonials-prev, .th-plans-testimonials-next { width: 2rem; height: 2rem; margin-top: -1rem; border: 1px solid rgba(0, 0, 0, 0.1); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15); } }

.th-plans-final-cta { padding: 4rem 1.5rem; text-align: center; color: #fff; background: linear-gradient(135deg, #384047 0%, #004e61 100%); }

.th-plans-final-cta-heading { font-size: 2.25rem; font-weight: 800; color: #fff; margin-bottom: 1rem; }

.th-plans-final-cta-text { font-size: 1.1rem; color: #fff; opacity: 0.9; max-width: 40rem; margin: 0 auto 2rem; }

.th-plans-final-cta-button { display: inline-block; background: #fff; color: #33468a; font-weight: 700; font-size: 1.1rem; padding: 1rem 2rem; border-radius: 0.5rem; text-decoration: none; box-shadow: 0 15px 30px -15px rgba(0, 0, 0, 0.4); transition: opacity 0.15s ease; }

.th-plans-final-cta-button:hover { color: #33468a; opacity: 0.9; }

.th-plans-icon { width: 1rem; height: 1rem; display: inline-block; }

.th-plans-icon--check { color: #21c45d; }

.th-plans-icon--x { color: #ef4444; }
