/* Shared visual tokens for the Planeta Digital theme. */
:root {
  --pd-color-brand: #40a947;
  --pd-color-brand-light: #7ddf7d;
  --pd-color-mint: #b4e3d6;
  --pd-color-ink: #151515;
  --pd-color-white: #ffffff;
  --pd-color-surface: #f6f5f3;
  --pd-color-muted: #686b68;
  --pd-color-border: rgba(21, 21, 21, 0.12);
  --pd-font-body: "Sora", sans-serif;
  --pd-font-display: "Archivo Black", sans-serif;
  --pd-radius-button: 15px 0 15px 15px;
  --pd-radius-card: 12px;
  --pd-control-height: 52px;
  --pd-focus-ring: 0 0 0 4px rgba(64, 169, 71, 0.3);
  --pd-motion-fast: 180ms ease-out;
  --pd-motion-standard: 280ms ease-out;

  /* Keep established theme utilities attached to the shared palette. */
  --color-green-1: var(--pd-color-brand);
  --color-green-2: var(--pd-color-brand-light);
  --color-green-3: var(--pd-color-mint);
  --color-dark-1: var(--pd-color-ink);
  --color-white: var(--pd-color-white);
  --color-white-1: var(--pd-color-surface);
}

html,
.font-type-1 {
  font-family: var(--pd-font-body);
}

.font-type-2 {
  font-family: var(--pd-font-display);
}

.btn-custom,
.btn-custom::after {
  border-radius: var(--pd-radius-button);
}

.btn-custom:focus-visible {
  outline: 0;
  box-shadow: var(--pd-focus-ring);
}

/* A mesma textura subtil nos cabeçalhos principais das várias páginas. */
:where(
  .pd-home-cinematic-hero,
  .pd-cimahi-blog-archive > .blog_two > .container-fluid:first-child,
  .pd-cimahi-single-blog > .pd-blog-hero,
  .pd-service-detail-hero,
  .pd-legal-page .pd-legal-inner article > header,
  .pd-launch-not-found > section,
  .pd-ds-hero,
  .hero-cinema,
  .hero-visual,
  .pd-refresh-hero,
  .page .site-main > article > .entry-header,
  .search .site-main > .page-header
) {
  position: relative;
  isolation: isolate;
}

:where(
  .pd-home-cinematic-hero,
  .pd-cimahi-blog-archive > .blog_two > .container-fluid:first-child,
  .pd-cimahi-single-blog > .pd-blog-hero,
  .pd-service-detail-hero,
  .pd-legal-page .pd-legal-inner article > header,
  .pd-launch-not-found > section,
  .pd-ds-hero,
  .hero-cinema,
  .hero-visual,
  .pd-refresh-hero,
  .page .site-main > article > .entry-header,
  .search .site-main > .page-header
)::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='matrix' values='-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
  background-size: 150px 150px;
  background-repeat: repeat;
  content: "";
  opacity: 0.16;
  pointer-events: none;
}
