/* WSI brand treatment. Shared layout is in css/public/parts/part-01.css. */
:root {
  --site-primary: #722F37;
  --site-primary-dark: #5C2428;
  --site-primary-light: #8B4049;
  --site-primary-soft: rgba(114, 47, 55, 0.08);
  --site-primary-soft-15: rgba(114, 47, 55, 0.15);
  --site-bg: #FAF7F2;
  --site-bg-warm: #F5F0E8;
  --site-bg-accent: #EDE6DB;
  --site-bg-card: #FFFFFF;
  --site-bg-card-hover: #FDFCFA;
  --site-sage: #6B8E6B;
  --site-sage-light: #7A9A7A;
  --site-sage-soft: rgba(107, 142, 107, 0.12);
  --site-gold: #C9A962;
  --site-gold-light: #D4B96A;
  --site-gold-soft: rgba(201, 169, 98, 0.15);
  --site-text: #2D2926;
  --site-text-secondary: #4A4543;
  --site-text-muted: #6D6A67;
  --site-heading: #1F1B19;
  --site-border: #E5DED4;
  --site-border-light: #EDE8E0;
  --site-border-dark: #D4CCC0;
  --site-shadow-sm: 0 1px 3px rgba(45, 41, 38, 0.06);
  --site-shadow-md: 0 4px 12px rgba(45, 41, 38, 0.08);
  --site-shadow-lg: 0 8px 24px rgba(45, 41, 38, 0.1);
  --site-shadow-card: 0 2px 8px rgba(45, 41, 38, 0.05);
  --font-heading: "Playfair Display", Georgia, "Times New Roman", serif;
  --font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
body {
  font-family: var(--font-body);
  color: var(--site-text);
  background-color: var(--site-bg);
}
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  color: var(--site-heading);
}
a {
  color: var(--site-primary);
}
a:hover {
  color: var(--site-primary-dark);
}
.site-accent {
  color: var(--site-primary);
}
.site-header {
  background: var(--site-theme-header-bg, rgba(33, 8, 21, 0.9));
  color: #f5e6e6;
  border-bottom: 1px solid rgba(232, 185, 151, 0.22);
  box-shadow: 0 10px 24px rgba(9, 3, 7, 0.2);
}
.site-header.scrolled {
  background: var(--site-theme-header-bg-scrolled, rgba(27, 7, 18, 0.96));
  box-shadow: 0 12px 28px rgba(9, 3, 7, 0.3);
}
.site-header a:not(.nav-cart-link):not(.nav-submission-link) {
  color: inherit;
}
.site-header .site-logo-icon {
  background: linear-gradient(135deg, #8b2942 0%, #5c1a2a 100%);
  color: #ffd4d4;
  box-shadow: 0 4px 12px rgba(139, 41, 66, 0.4);
}
.site-header .site-logo-text {
  font-family: "Manrope", "Inter", sans-serif;
  background: linear-gradient(135deg, #ffd4d4 0%, #e8b4b4 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.site-header .site-logo-initial {
  color: #e4bd69;
  background: linear-gradient(145deg, #fff0b8 0%, #d6a44a 55%, #b9832f 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-shadow: 0 0 18px rgba(228, 189, 105, 0.16);
}
.site-header .site-nav-link {
  color: rgba(243, 228, 212, 0.86);
}
.site-header .site-nav-link:hover {
  background: rgba(141, 48, 74, 0.22);
  color: #fff2e1;
}
.site-header a.site-nav-link.site-nav-link--featured {
  color: #ecd093;
}
.site-header a.site-nav-link.site-nav-link--featured:hover {
  color: #fff4cf;
  background: rgba(214, 164, 74, 0.08);
}
.site-header .site-btn {
  border: 1px solid rgba(139, 69, 69, 0.5);
  color: rgba(243, 228, 212, 0.86);
  background: transparent;
}
.site-header .site-btn:hover {
  border-color: #8b4545;
  background: rgba(139, 69, 69, 0.15);
  color: #ffd4d4;
}
.site-header .site-btn-primary {
  background: linear-gradient(135deg, #8b2942 0%, #6b1a32 100%);
  border-color: #8b2942;
  color: #fff;
  box-shadow: 0 4px 12px rgba(139, 41, 66, 0.3);
}
.site-header .site-btn-primary:hover {
  background: linear-gradient(135deg, #a03350 0%, #8b2942 100%);
  box-shadow: 0 6px 16px rgba(139, 41, 66, 0.4);
}
.site-header .site-burger {
  border: 1px solid rgba(139, 69, 69, 0.5);
  background: rgba(139, 41, 66, 0.2);
  color: #d4a5a5;
}
.site-header .site-burger:hover {
  background: rgba(139, 41, 66, 0.3);
  color: #ffd4d4;
}
@media (max-width: 1024px) {
.site-header .site-nav--mobile {
  background: var(--site-theme-header-bg-scrolled, rgba(27, 7, 18, 0.98));
  border-top: 2px solid #8b2942;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5);
}
.site-header .site-nav--mobile .site-nav-link {
  color: #d4a5a5;
  border-left: 3px solid transparent;
}
.site-header .site-nav--mobile .site-nav-link:hover {
  background: rgba(139, 41, 66, 0.2);
  border-left-color: #8b2942;
  color: #ffd4d4;
}
.site-header .site-nav--mobile a.site-nav-link--featured {
  color: #ecd093;
  background: transparent;
  border-left-color: transparent;
}
.site-header .site-nav--mobile a.site-nav-link--featured:hover {
  color: #fff4cf;
  background: rgba(214, 164, 74, 0.08);
  border-left-color: rgba(242, 207, 130, 0.6);
}
.site-header .site-nav--mobile .site-mobile-buttons {
  border-top: 1px solid rgba(139, 69, 69, 0.3);
}
.site-header .site-nav--mobile .site-btn-primary {
  box-shadow: 0 4px 12px rgba(139, 41, 66, 0.4);
}
}
.site-btn {
  border: none;
}
.site-btn-primary {
  background: var(--site-primary);
  color: #fff;
  box-shadow: var(--site-shadow-sm);
}
.site-btn-primary:hover {
  background: var(--site-primary-dark);
  color: #fff;
  box-shadow: var(--site-shadow-md);
}
.site-btn-secondary {
  background: transparent;
  color: var(--site-primary);
  border: 1.5px solid var(--site-primary);
}
.site-btn-secondary:hover {
  background: var(--site-primary-soft);
  color: var(--site-primary-dark);
}
.site-btn-ghost {
  background: transparent;
  color: var(--site-text-secondary);
  border: 1.5px solid var(--site-border);
}
.site-btn-ghost:hover {
  border-color: var(--site-border-dark);
  background: var(--site-bg-warm);
  color: var(--site-heading);
}
.site-card {
  background: var(--site-bg-card);
  border: 1px solid var(--site-border);
  box-shadow: var(--site-shadow-card);
}
.site-card:hover {
  border-color: var(--site-border-dark);
  box-shadow: var(--site-shadow-md);
}
.site-card-header {
  border-bottom: 1px solid var(--site-border-light);
}
.site-hero {
  background: linear-gradient(180deg, var(--site-bg-warm) 0%, var(--site-bg) 100%);
}
.site-hero::before {
  background: radial-gradient(ellipse, var(--site-primary-soft) 0%, transparent 70%);
}
.site-hero-badge {
  background: var(--site-bg-card);
  border: 1px solid var(--site-border);
  color: var(--site-text-secondary);
}
.site-hero-badge .dot {
  background: var(--site-sage);
}
.site-hero h1 {
  color: var(--site-heading);
}
.site-hero h1 .accent {
  color: var(--site-primary);
}
.site-hero-subtitle {
  color: var(--site-text-secondary);
}
.site-hero-stats {
  border-top: 1px solid var(--site-border);
}
.site-hero-stat-value {
  font-family: var(--font-heading);
  color: var(--site-primary);
}
.site-hero-stat-label {
  color: var(--site-text-muted);
}
.site-hero-card {
  background: var(--site-bg-card);
  border: 1px solid var(--site-border);
  box-shadow: var(--site-shadow-lg);
}
.site-hero-card-icon {
  background: var(--site-primary-soft);
}
.site-hero-card-icon svg {
  color: var(--site-primary);
}
.site-hero-card-score {
  font-family: var(--font-heading);
}
.site-hero-card-score .big {
  color: var(--site-primary);
}
.site-hero-card-score .small {
  color: var(--site-text-muted);
}
.site-hero-card-label {
  color: var(--site-text-muted);
}
.site-section-alt {
  background: var(--site-bg-warm);
}
.site-eyebrow {
  color: var(--site-primary);
}
.site-section-header p {
  color: var(--site-text-secondary);
}
.site-link-arrow {
  color: var(--site-primary);
}
.site-trust-bar {
  background: var(--site-bg-accent);
  border-top: 1px solid var(--site-border);
  border-bottom: 1px solid var(--site-border);
}
.site-trust-item {
  color: var(--site-text-secondary);
}
.site-trust-item::before {
  background: var(--site-primary);
}
.site-features {
  background: var(--site-bg);
}
.site-feature-content h2 .accent {
  color: var(--site-primary);
}
.site-feature-content p {
  color: var(--site-text-secondary);
}
.site-check-list li {
  color: var(--site-text);
}
.site-check-list li svg {
  color: var(--site-sage);
}
.site-feature-card {
  background: var(--site-bg-card);
  border: 1px solid var(--site-border);
  box-shadow: var(--site-shadow-md);
}
.site-step-number {
  background: var(--site-primary);
  color: #fff;
}
.site-step-text strong {
  color: var(--site-heading);
}
.site-step-text span {
  color: var(--site-text-muted);
}
.site-timeline {
  background: var(--site-bg-card);
  border: 1px solid var(--site-border);
}
.site-timeline-item:not(:last-child)::after {
  background: var(--site-border);
}
.site-timeline-item.done::after {
  background: var(--site-sage);
}
.site-timeline-dot {
  border: 2px solid var(--site-border);
  background: var(--site-bg);
}
.site-timeline-item.done .site-timeline-dot {
  border-color: var(--site-sage);
  background: var(--site-sage);
}
.site-timeline-item.active .site-timeline-dot {
  border-color: var(--site-primary);
  background: var(--site-bg);
}
.site-timeline-content strong {
  color: var(--site-heading);
}
.site-timeline-content span {
  color: var(--site-text-muted);
}
.site-score-card {
  background: var(--site-bg-card);
  border: 1px solid var(--site-border);
}
.site-score-card:hover {
  border-color: var(--site-primary);
  box-shadow: var(--site-shadow-md);
}
.site-score-info h3 {
  color: var(--site-heading);
}
.site-score-appellation {
  color: var(--site-text);
}
.site-score-notes {
  color: var(--site-text-muted);
}
