/* TruHue editorial layer — facelift part 5 (Nov 2026): the generated SEO pages (~200).
   Body classes: te-g te-seo + one of
     te-best      /best-<category>-for-<season>/            te-bestpost /best-blush-for-warm|cool-skin-tone/
     te-pdp       /dupes/<product>/ and /product/<brand>/<shade>/   te-dupepost /dupes-<product>-dupes/
     te-dupehub   /dupes/
   Loads after /css/truhue-editorial.css + /css/guides-editorial.css (+ article-editorial.css on post templates).
   ONLY presentation: no markup, text, links, titles, meta, schema or URLs change, so search signals stay identical.
   Product swatches and YAY / OKAY / NAY verdict colors are deliberately untouched. */

.te-seo h1 { font-style: normal !important; }
.te-seo .page-header { padding-top: 2.6rem !important; }
.te-seo .page-subtitle { max-width: 40rem !important; }
.te-seo .page-updated { color: var(--te-muted) !important; }

/* Product cards (best-of lists) */
.te-best .product-grid { gap: 1.2rem !important; }
.te-best .product-card, .te-bestpost .product-card, .te-pdp .dupe-card, .te-dupepost .source-card, .te-dupepost .dupe-row, .te-dupehub .card {
  background: var(--te-paper) !important; border: 1px solid var(--te-rule) !important; border-radius: var(--te-radius) !important; box-shadow: none !important; transform: none !important; }
.te-dupehub .card:hover, .te-dupepost .dupe-row:hover { border-color: var(--te-ink) !important; }
.te-best .product-brand, .te-bestpost .card-brand, .te-pdp .dupe-brand, .te-dupepost .brand, .te-dupehub .card .info .brand { color: var(--te-rose) !important; font-family: var(--te-sans) !important; letter-spacing: 0.12em !important; }
.te-best .product-name, .te-dupepost .source-card h2 { font-family: var(--te-serif) !important; font-weight: 500 !important; color: var(--te-ink) !important; }
.te-bestpost .card-name, .te-pdp .dupe-name, .te-dupepost .dupe-row .info .name, .te-dupehub .card .info .title { color: var(--te-ink) !important; }
.te-best .product-price, .te-best .product-note, .te-bestpost .card-price { color: var(--te-body) !important; }
.te-best .product-img { background: var(--te-ivory-2) !important; border-radius: var(--te-radius) !important; }
.te-best .product-cta, .te-pdp .dupe-cta { color: var(--te-ink) !important; border: 1px solid var(--te-ink) !important; border-radius: var(--te-radius) !important; background: transparent !important; font-family: var(--te-sans) !important; }
.te-best .product-cta:hover, .te-pdp .dupe-cta:hover { background: var(--te-ink) !important; color: var(--te-ivory) !important; }
.te-bestpost .card-link, .te-bestpost .season-more a, .te-dupepost .dupe-row a { color: var(--te-ink) !important; text-decoration: underline; text-decoration-color: var(--te-rose); text-underline-offset: 3px; }
.te-pdp .dupe-price { font-family: var(--te-serif) !important; font-style: normal !important; color: var(--te-ink) !important; }
.te-dupepost .source-card .shade { color: var(--te-body) !important; }
.te-dupepost .source-card .tier { background: transparent !important; border: 1px solid var(--te-rule); color: var(--te-ink) !important; border-radius: var(--te-radius) !important; }

/* Related links: keep them as a wrapping row of quiet chips */
.te-seo .related-grid { border-top: 0 !important; gap: 0.5rem !important; }
.te-seo .related-grid a { background: transparent !important; border: 1px solid var(--te-rule) !important; border-radius: var(--te-radius) !important; color: var(--te-ink) !important; }
.te-seo .related-grid a:hover { border-color: var(--te-ink) !important; background: transparent !important; color: var(--te-ink) !important; }
.te-seo .related-section h3, .te-seo .content-section h2, .te-seo .faq-section h2 { font-family: var(--te-serif) !important; font-weight: 500 !important; font-style: normal !important; color: var(--te-ink) !important; }

/* /dupes/<product>/ + /product/ pages */
.te-pdp header { padding-left: 24px !important; padding-right: 24px !important; }
.te-pdp .logo { font-style: normal !important; }
.te-pdp nav a { color: var(--te-ink) !important; }
.te-pdp nav a:hover { color: var(--te-rose) !important; }
.te-pdp .subhead { color: var(--te-body) !important; }
.te-pdp .swatch-meta { color: var(--te-muted) !important; }
.te-pdp .swatch-hex { font-family: var(--te-serif) !important; font-style: normal !important; color: var(--te-ink) !important; }
.te-pdp .swatch-block, .te-pdp .dupe-swatch { border-radius: var(--te-radius) !important; }
.te-pdp .key-takeaway { background: transparent !important; border-left: 2px solid var(--te-rose) !important; }
.te-pdp .key-takeaway strong { color: var(--te-rose) !important; }
.te-pdp .season-table th { background: var(--te-ivory-2) !important; color: var(--te-ink) !important; border-bottom: 1px solid var(--te-ink); }
.te-pdp .season-table td { border-bottom-color: var(--te-rule) !important; }
.te-pdp .season-table tr:hover { background: var(--te-ivory-2) !important; }
.te-pdp .quiz-cta { background: var(--te-night) !important; border: 0 !important; color: var(--te-ivory) !important; }
.te-pdp .quiz-cta p { color: var(--te-ivory) !important; }
.te-pdp .quiz-cta .btn-primary, .te-pdp .quiz-cta a { background: var(--te-ivory) !important; color: var(--te-ink) !important; border-color: var(--te-ivory) !important; }
.te-pdp .quiz-cta .btn-primary:hover, .te-pdp .quiz-cta a:hover { background: #fff !important; color: var(--te-ink) !important; }
.te-pdp .faq-item summary { font-size: 1.1rem !important; }

/* /dupes/ hub search box */
.te-dupehub .hero { text-align: left !important; }
.te-dupehub .hero p { margin-left: 0 !important; }
.te-dupehub .search-widget { background: var(--te-paper) !important; border: 1px solid var(--te-rule) !important; border-radius: var(--te-radius) !important; box-shadow: none !important; margin-left: 0 !important; }
.te-dupehub .search-widget-label, .te-dupehub .beta-tag { background: transparent !important; border: 1px solid var(--te-rose); border-radius: var(--te-radius) !important; color: var(--te-rose) !important; }
.te-dupehub .search-widget h2 { font-family: var(--te-serif) !important; font-weight: 500 !important; color: var(--te-ink) !important; }
.te-dupehub .search-form input { border-radius: var(--te-radius) !important; border: 1px solid var(--te-rule) !important; font-family: var(--te-sans) !important; }
.te-dupehub .search-form button { background: var(--te-ink) !important; border-radius: var(--te-radius) !important; font-family: var(--te-sans) !important; }
.te-dupehub .search-form button:hover { background: var(--te-rose) !important; }

/* Quick-answer / key-takeaway / definitions boxes (inline-styled by an older script) → quiet pull-out */
.te-seo .quick-answer, .te-seo .key-takeaway { background: transparent !important; border: 0 !important; border-left: 2px solid var(--te-rose) !important; border-radius: 0 !important; box-shadow: none !important; }
.te-seo .quick-answer-label { color: var(--te-rose) !important; font-family: var(--te-sans) !important; }
.te-seo .quick-answer p, .te-seo .key-takeaway p { color: var(--te-ink) !important; }

/* Quick Answer + definitions, now above the product grid on the "best X for season" pages */
.te-seo .seo-intro { max-width: 680px; margin: 0.5rem 0 2rem; }
.te-seo .seo-intro h2 { margin: 2rem 0 0.8rem; }
.te-seo .seo-intro > div[style*="border-left"]:not(.quick-answer) { background: transparent !important; border-left: 2px solid var(--te-rule) !important; }
