/* WSI brand treatment. Shared layout is in css/public/parts/part-02.css. */
.site-testimonials-section {
  background: var(--site-bg-warm);
}
.site-testimonial {
  background: var(--site-bg-card);
  border: 1px solid var(--site-border);
}
.site-testimonial p {
  color: var(--site-text);
}
.site-testimonial footer strong {
  color: var(--site-heading);
}
.site-testimonial footer span {
  color: var(--site-text-muted);
}
.site-pricing-section {
  background: var(--site-bg);
}
.site-price-card {
  background: var(--site-bg-card);
  border: 1px solid var(--site-border);
}
.site-price-card:hover {
  box-shadow: var(--site-shadow-lg);
}
.site-price-card.popular {
  border-color: var(--site-primary);
}
.site-price-badge {
  background: var(--site-primary);
  color: #fff;
}
.site-price-amount .currency {
  font-family: var(--font-heading);
  color: var(--site-primary);
}
.site-price-amount .value {
  color: var(--site-text-muted);
}
.site-price-features li {
  border-bottom: 1px solid var(--site-border-light);
  color: var(--site-text);
}
.site-price-features li:last-child {
  border-bottom: none;
}
.site-faq-section {
  background: var(--site-bg-warm);
}
.site-faq-item {
  background: var(--site-bg-card);
  border: 1px solid var(--site-border);
}
.site-faq-item summary {
  font-family: var(--font-heading);
  color: var(--site-heading);
}
.site-faq-item summary::after {
  color: var(--site-primary);
}
.site-faq-item[open] summary {
  color: var(--site-primary);
  border-bottom: 1px solid var(--site-border-light);
}
.site-faq-item p {
  color: var(--site-text-secondary);
}
.site-cta-section {
  background: linear-gradient(180deg, var(--site-bg-warm) 0%, var(--site-bg) 100%);
}
.site-cta-inner > p {
  color: var(--site-text-secondary);
}
.site-disclaimer {
  background: var(--site-bg-accent);
  border-top: 1px solid var(--site-border);
}
.site-disclaimer p {
  color: var(--site-text-muted);
}
.site-disclaimer-links a {
  color: var(--site-primary);
}
.site-footer {
  background: var(--site-heading);
  color: rgba(255, 255, 255, 0.7);
}
.site-footer a {
  color: rgba(255, 255, 255, 0.9);
}
.site-footer a:hover {
  color: #fff;
}
.site-auth-page {
  background: var(--site-bg);
}
.site-auth-branding {
  background: linear-gradient(135deg, var(--site-bg-warm) 0%, var(--site-bg-accent) 100%);
  border-right: 1px solid var(--site-border);
}
.site-auth-logo-icon {
  background: var(--site-primary);
}
.site-auth-logo-icon svg {
  color: #fff;
}
.site-auth-brand-title {
  font-family: var(--font-heading);
  color: var(--site-heading);
}
.site-auth-brand-tagline {
  color: var(--site-text-secondary);
}
.site-auth-feature {
  color: var(--site-text-secondary);
}
.site-auth-feature-icon {
  background: var(--site-primary-soft);
}
.site-auth-feature-icon svg {
  color: var(--site-primary);
}
.site-auth-quote {
  background: var(--site-bg-card);
  border-left: 3px solid var(--site-primary);
}
.site-auth-quote blockquote {
  color: var(--site-text);
}
.site-auth-quote cite {
  color: var(--site-text-muted);
}
.site-auth-benefits h3 {
  color: var(--site-primary);
}
.site-benefit-list li {
  color: var(--site-text-secondary);
}
.site-benefit-list li svg {
  color: var(--site-sage);
}
.site-auth-form-panel {
  background: var(--site-bg-card);
}
.site-auth-form-header p {
  color: var(--site-text-muted);
}
.site-auth-error {
  background: rgba(220, 38, 38, 0.08);
  border: 1px solid rgba(220, 38, 38, 0.2);
  color: #b91c1c;
}
.site-form-group label {
  color: var(--site-text-secondary);
}
.site-input-wrapper > svg:first-child {
  color: var(--site-text-muted);
}
.site-input {
  background: var(--site-bg);
  border: 1px solid var(--site-border);
  color: var(--site-text);
}
.site-input:focus {
  border-color: var(--site-primary);
  background: var(--site-bg-card);
  box-shadow: 0 0 0 3px var(--site-primary-soft);
}
.site-input.error {
  border-color: #dc2626;
}
.site-input--locked,
.site-input[readonly] {
  background: var(--site-bg-muted, #f3f0ec);
  color: var(--site-text-muted, #6b6361);
}
.site-input--locked:focus,
.site-input[readonly]:focus {
  border-color: var(--site-border);
  box-shadow: none;
  background: var(--site-bg-muted, #f3f0ec);
}
.site-input::placeholder {
  color: var(--site-text-muted);
}
.site-password-toggle {
  background: none;
  border: none;
}
.site-password-toggle svg {
  color: var(--site-text-muted);
}
.site-password-toggle:hover svg {
  color: var(--site-text);
}
.site-field-error {
  color: #dc2626;
}
.site-field-hint {
  color: var(--site-v2-copy, #aaa);
}
.site-checkbox {
  color: var(--site-text-secondary);
}
.site-checkbox-mark {
  border: 2px solid var(--site-border-dark);
}
.site-checkbox input:checked + .site-checkbox-mark {
  background: var(--site-primary);
  border-color: var(--site-primary);
}
.site-checkbox input:checked + .site-checkbox-mark::after {
  border: solid #fff;
}
.site-forgot-link {
  color: var(--site-primary);
}
.site-terms {
  color: var(--site-text-muted);
}
.site-terms a {
  color: var(--site-primary);
}
.site-btn-auth {
  border: none;
}
.site-btn-auth.site-btn-primary {
  background: var(--site-primary);
  color: #fff;
}
.site-btn-auth.site-btn-primary:hover {
  background: var(--site-primary-dark);
}
.site-btn-auth.site-btn-secondary {
  background: transparent;
  color: var(--site-primary);
  border: 1.5px solid var(--site-primary);
}
.site-btn-auth.site-btn-secondary:hover {
  background: var(--site-primary-soft);
}
.site-auth-divider::before,
.site-auth-divider::after {
  background: var(--site-border);
}
.site-auth-divider span {
  color: var(--site-text-muted);
}
.site-auth-alt-actions p {
  color: var(--site-text-muted);
}
.site-auth-back {
  color: var(--site-text-muted);
}
.site-auth-back:hover {
  color: var(--site-text);
}
.site-auth-message-card {
  background: var(--site-bg-card);
  border: 1px solid var(--site-border);
  box-shadow: var(--site-shadow-lg);
}
.site-auth-message-icon {
  background: var(--site-primary-soft);
}
.site-auth-message-icon svg {
  color: var(--site-primary);
}
.site-auth-message-card h1 {
  color: #8f2743;
}
.site-auth-message-text {
  color: var(--site-text-secondary);
}
.site-auth-step-number {
  background: var(--site-primary-soft);
  color: var(--site-primary);
}
.site-auth-step-text {
  color: var(--site-text);
}
.site-auth-message-note {
  background: var(--site-bg-warm);
  color: var(--site-text-muted);
}
.site-auth-message-note svg,
.site-auth-message-note i {
  color: #5C2428;
}
.site-auth-message-note span {
  color: #5C2428;
}
