/* Graphite Cherry / refinement v1 — LOCAL, opt-in, loaded after current layers.
 * Geometry, assets, legacy copy and previous CSS remain untouched.
 * Scope all selectors to the opt-in body class. See scripts/restyle.sh.
 */
body.panda-restyle-v1 {
  --card-shadow: 0 1px 2px rgba(29, 36, 48, 0.03), 0 12px 32px -20px rgba(29, 36, 48, 0.18);
  --st-card-shadow: var(--card-shadow);
  --panda-muted: #5c6572;
  --text-muted: var(--panda-muted);
  --st-text-muted: var(--panda-muted);
  --panda-restyle-hover-shadow: 0 1px 2px rgba(29, 36, 48, 0.04), 0 14px 34px -20px rgba(29, 36, 48, 0.22);
}

/* One light direction, one diffuse cherry aura. No moving or stacked glows.
 * Middle of the field stays calm for white type; lower stop is not pure black. */
.panda-restyle-v1 :is(.hero, .standard-page__hero, .hero--events) {
  background:
    radial-gradient(ellipse 58% 85% at 100% 30%, rgba(199, 53, 87, 0.20), transparent 75%),
    linear-gradient(158deg, #3f4858 0%, #283242 48%, #1d2430 100%);
}
.panda-restyle-v1 :is(.hero, .standard-page__hero, .hero--events)::before {
  background: radial-gradient(ellipse 70% 70% at 12% 0%, rgba(244, 245, 247, 0.10), transparent 70%);
}
.panda-restyle-v1 :is(.cta-section, .stats, .adeco-contact-panel),
.panda-restyle-v1 .standard-page__content .cta-section {
  background:
    radial-gradient(ellipse 58% 95% at 100% 50%, rgba(199, 53, 87, 0.24), transparent 75%),
    linear-gradient(158deg, #3f4858 0%, #283242 48%, #1d2430 100%);
}
.panda-restyle-v1 .cta-section::before,
.panda-restyle-v1 .standard-page__content .cta-section::before {
  background: radial-gradient(ellipse 70% 70% at 12% 0%, rgba(244, 245, 247, 0.10), transparent 70%);
}
.panda-restyle-v1 .footer {
  background:
    linear-gradient(90deg, transparent 0, #c73557 22%, #f2ad3f 50%, transparent 78%) top / 100% 1px no-repeat,
    var(--panda-night);
}

/* White is the content surface; haze is a quiet separator, not every band. */
.panda-restyle-v1 :is(.pillars, .blog, .standard-page .blog, .blog-listing) {
  background: var(--panda-paper);
}
.panda-restyle-v1 :is(.about, .faq, .panda-editorial-page, .panda-site-index) {
  background: var(--panda-haze);
}
.panda-restyle-v1 .panda-about-mark {
  background: linear-gradient(145deg, var(--panda-paper), var(--panda-haze-deep));
}
.panda-restyle-v1 .panda-about-mark::after { background: none; }
.panda-restyle-v1 :is(.nav.scrolled, .nav.mobile-open) {
  background: color-mix(in srgb, var(--panda-paper) 94%, transparent);
}

/* Typography now comes from the native Supertree components. Keep only
   the approved Panda label/colour treatment, not extra headline weights. */
.panda-restyle-v1 .section-label {
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.025em;
  text-transform: none;
  color: var(--panda-green-700);
}
.panda-restyle-v1 .section-label::before { display: none; }
.panda-restyle-v1 :is(.section-label--light, .cta-section .section-label--light, .adeco-contact-panel .section-label) { color: #fff; }
/* A single amber punctuation at the final contact invitation, not every label. */
.panda-restyle-v1 .cta-section .section-label--light::before {
  display: inline-block;
  width: 4px;
  height: 4px;
  margin-right: 0.65em;
  box-shadow: none;
}
.panda-restyle-v1 :is(.hero .hero-badge, .standard-page__hero-eyebrow) {
  text-transform: none;
  letter-spacing: 0.025em;
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.25);
}
.panda-restyle-v1 :is(.panda-page-nav__title, .panda-index-group__heading p, .panda-index-card__type, .cta-card h3) {
  text-transform: none;
  letter-spacing: 0.025em;
}

/* Neutral paper depth everywhere, including new corporate reading pages. */
.panda-restyle-v1 :is(.pillar-card, .blog-card, .cta-card, .form-card,
  .adeco-resource-card, .adeco-value-card, .adeco-policy-card,
  .panda-page-aside__visual, .panda-index-card) {
  box-shadow: var(--card-shadow);
}
.panda-restyle-v1 :is(.pillar-card, .blog-card, .adeco-resource-card,
  .adeco-value-card, .panda-index-card):hover {
  border-color: var(--panda-hairline);
  box-shadow: var(--panda-restyle-hover-shadow);
  transform: none;
}
.panda-restyle-v1 :is(.pillar-card, .blog-card, .panda-index-card) {
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

/* Real product imagery keeps its own colour: no cherry wash or hover zoom. */
.panda-restyle-v1 :is(.pillar-card-image img, .blog-card-image img,
  .about-image img, .article-featured-min img, .panda-page-aside__visual img) {
  filter: none;
  transition: none;
}
.panda-restyle-v1 :is(.pillar-card:hover .pillar-card-image img,
  .blog-card:hover .blog-card-image img, .about-image:hover img) {
  filter: none;
  transform: none;
}
.panda-restyle-v1 :is(.pillar-card-image, .blog-card-image, .about-image)::after {
  background: none;
  transition: none;
}
.panda-restyle-v1 .panda-diagram {
  background: var(--panda-haze);
}
.panda-restyle-v1 .panda-diagram > span { color: var(--panda-green-700); }
/* White actions on dark fields; deep cherry for small links on light fields. */
.panda-restyle-v1 .standard-page__hero-button--primary,
.panda-restyle-v1 :is(.cta-section, .blog-newsletter) :is(a.btn-primary, .btn-primary > .wp-block-button__link) {
  background: var(--panda-paper);
  color: var(--panda-ink) !important;
}
.panda-restyle-v1 .standard-page__hero-button--primary:hover,
.panda-restyle-v1 :is(.cta-section, .blog-newsletter) :is(a.btn-primary, .btn-primary > .wp-block-button__link):hover {
  background: var(--panda-haze-deep);
  color: var(--panda-ink) !important;
}
.panda-restyle-v1 :is(a.btn-primary, .btn-primary > .wp-block-button__link,
  a.btn-outline, .btn-outline > .wp-block-button__link):hover {
  transform: none;
  box-shadow: none;
}
.panda-restyle-v1 :is(a.btn-text, .btn-text > .wp-block-button__link,
  .blog-card-meta .btn-text, .adeco-resource-card__link) {
  color: var(--panda-green-700) !important;
}
.panda-restyle-v1 :is(a.btn-text, .btn-text > .wp-block-button__link):hover {
  text-decoration: underline !important;
  text-underline-offset: 4px;
}
.panda-restyle-v1 .panda-page-nav a { color: var(--panda-body); }
.panda-restyle-v1 .panda-page-nav a:hover { color: var(--panda-green-700); }
.panda-restyle-v1 .panda-page-nav--related a span:last-child { color: var(--panda-green-700); }

/* Focus contrast depends on the adjacent surface, not the decorative amber. */
.panda-restyle-v1 :focus-visible {
  outline: 2px solid var(--panda-green-700);
  outline-offset: 4px;
}
.panda-restyle-v1 :is(.hero, .standard-page__hero, .hero--events, .cta-section,
  .adeco-contact-panel, .blog-newsletter, .footer) :focus-visible,
.panda-restyle-v1 .nav:not(.scrolled):not(.mobile-open) :focus-visible {
  outline-color: #fff;
}
.panda-restyle-v1 :is(.cta-card, .form-card, .nav.scrolled, .nav.mobile-open) :focus-visible {
  outline-color: var(--panda-green-700);
}
.panda-restyle-v1 :is(.request-form .field input, .request-form .field textarea,
  .cta-form input, .cta-form select, .cta-form textarea,
  .cta-card input, .cta-card select, .cta-card textarea) {
  border-color: var(--panda-muted) !important;
}
.panda-restyle-v1 :is(.request-form .field input, .request-form .field textarea,
  .cta-form input, .cta-form select, .cta-form textarea,
  .cta-card input, .cta-card select, .cta-card textarea):focus {
  border-color: var(--panda-green-700) !important;
  box-shadow: none !important;
}

@media (prefers-reduced-motion: reduce) {
  .panda-restyle-v1 *, .panda-restyle-v1 *::before, .panda-restyle-v1 *::after {
    scroll-behavior: auto !important;
    animation: none !important;
    transition: none !important;
  }
}
